- Name
service- Kind
- parameter
- Type
RangeSliderService- Requirement
- required
DocsAPI referenceHeadlessrange-slider
range-slider headless API
The core connector and vanilla mount are always visible. Use the framework choice to inspect native composition, props, outputs, context and hooks for the selected adapter.
@grassroot/ui-headless-core/range-slider
Core connector and vanilla API
connectRangeSlider
functiondeclare function connectRangeSlider(service: RangeSliderService, scope: PartScope, options?: RangeSliderConnectOptions): RangeSliderApi;serviceRangeSliderServicescopePartScopeoptionsRangeSliderConnectOptionsreturnRangeSliderApi- Name
scope- Kind
- parameter
- Type
PartScope- Requirement
- required
- Name
options- Kind
- parameter
- Type
RangeSliderConnectOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
RangeSliderApi- Requirement
- n/a
mountRangeSlider
functiondeclare function mountRangeSlider(container: HTMLElement, options?: MountRangeSliderOptions): RangeSliderMount;containerHTMLElementoptionsMountRangeSliderOptionsreturnRangeSliderMount- Name
container- Kind
- parameter
- Type
HTMLElement- Requirement
- required
- Name
options- Kind
- parameter
- Type
MountRangeSliderOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
RangeSliderMount- Requirement
- n/a
MountRangeSliderOptions
interfaceinterface MountRangeSliderOptions extends RangeSliderInput, Omit<RangeSliderConnectOptions, "histogram"> { readonly histogram?: readonly number[];}histogramreadonly number[]- Name
histogram- Kind
- property
- Type
readonly number[]- Requirement
- optional
rangeSliderAnatomy
valueexport declare const rangeSliderAnatomy: { readonly scope: "range-slider"; readonly parts: readonly ["root", "histogram", "bar", "track", "fill", "handle", "readout", "value", "separator", "caption"];};partsreadonly ["root", "histogram", "bar", "track", "fill", "handle", "readout", "value", "separator", "caption"]scope"range-slider"- Name
parts- Kind
- property
- Type
readonly ["root", "histogram", "bar", "track", "fill", "handle", "readout", "value", "separator", "caption"]- Requirement
- required
- Name
scope- Kind
- property
- Type
"range-slider"- Requirement
- required
RangeSliderApi
interfaceinterface RangeSliderApi { rootProps(): PartProps; histogramProps(): PartProps; barProps(index: number): PartProps; trackProps(): PartProps; fillProps(): PartProps; handleProps(handle: 0 | 1): PartProps; readoutProps(): PartProps; valueProps(): PartProps; separatorProps(): PartProps; captionProps(): PartProps; readonly value: RangeSliderPair; readonly min: number; readonly max: number; readonly step: number; readonly disabled: boolean; destroy(): void;}barProps(index: number) => PartPropscaptionProps() => PartPropsdestroy() => voiddisabledbooleanfillProps() => PartPropshandleProps(handle: 0 | 1) => PartPropshistogramProps() => PartPropsmaxnumberminnumberreadoutProps() => PartPropsrootProps() => PartPropsseparatorProps() => PartPropsstepnumbertrackProps() => PartProps- Name
barProps- Kind
- method
- Type
(index: number) => PartProps- Requirement
- required
- Name
captionProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
destroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
disabled- Kind
- property
- Type
boolean- Requirement
- required
- Name
fillProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
handleProps- Kind
- method
- Type
(handle: 0 | 1) => PartProps- Requirement
- required
- Name
histogramProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
max- Kind
- property
- Type
number- Requirement
- required
- Name
min- Kind
- property
- Type
number- Requirement
- required
- Name
readoutProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
rootProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
separatorProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
step- Kind
- property
- Type
number- Requirement
- required
- Name
trackProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
value- Kind
- property
- Type
RangeSliderPair- Requirement
- required
- Name
valueProps- Kind
- method
- Type
() => PartProps- Requirement
- required
RangeSliderChangeDetail
interfaceinterface RangeSliderChangeDetail { readonly value: RangeSliderPair; readonly reason: RangeSliderReason;}reasonRangeSliderReasonvalueRangeSliderPair- Name
reason- Kind
- property
- Type
RangeSliderReason- Requirement
- required
- Name
value- Kind
- property
- Type
RangeSliderPair- Requirement
- required
RangeSliderConnectOptions
interfaceinterface RangeSliderConnectOptions { readonly ariaLabel?: string; readonly messages?: Partial<RangeSliderMessages>; readonly histogram?: readonly number[]; readonly format?: (value: number) => string; readonly caption?: string; readonly onValueChange?: (detail: RangeSliderChangeDetail) => void;}ariaLabelstringcaptionstringformat(value: number) => stringhistogramreadonly number[]messagesPartial<RangeSliderMessages>onValueChange(detail: RangeSliderChangeDetail) => void- Name
ariaLabel- Kind
- property
- Type
string- Requirement
- optional
- Name
caption- Kind
- property
- Type
string- Requirement
- optional
- Name
format- Kind
- property
- Type
(value: number) => string- Requirement
- optional
- Name
histogram- Kind
- property
- Type
readonly number[]- Requirement
- optional
- Name
messages- Kind
- property
- Type
Partial<RangeSliderMessages>- Requirement
- optional
- Name
onValueChange- Kind
- property
- Type
(detail: RangeSliderChangeDetail) => void- Requirement
- optional
rangeSliderMessages
valueexport declare const rangeSliderMessages: RangeSliderMessages;RangeSliderMessages
typetype RangeSliderMessages = Pick<MessageTable, "rootLabel" | "minimumHandleLabel" | "maximumHandleLabel">;RangeSliderMount
interfaceinterface RangeSliderMount { readonly service: RangeSliderService; readonly connector: RangeSliderApi; readonly root: HTMLElement; destroy(): void;}connectorRangeSliderApidestroy() => voidrootHTMLElementserviceRangeSliderService- Name
connector- Kind
- property
- Type
RangeSliderApi- Requirement
- required
- Name
destroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
root- Kind
- property
- Type
HTMLElement- Requirement
- required
- Name
service- Kind
- property
- Type
RangeSliderService- Requirement
- required
RangeSliderPart
typetype RangeSliderPart = (typeof rangeSliderAnatomy.parts)[number];RangeSliderService
typetype RangeSliderService = Service<RangeSliderInput, "ready", RangeSliderContext, RangeSliderEvent, RangeSliderCommand>;runRangeSliderCommand
functiondeclare function runRangeSliderCommand(command: RangeSliderCommand, options?: RangeSliderConnectOptions): void;commandRangeSliderCommandoptionsRangeSliderConnectOptionsreturnvoid- Name
command- Kind
- parameter
- Type
RangeSliderCommand- Requirement
- required
- Name
options- Kind
- parameter
- Type
RangeSliderConnectOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
void- Requirement
- n/a
Framework adapters
Each panel keeps its adapter's public vocabulary. React compound exports, Vue composables, standalone Angular declarations, Svelte components, and Solid hooks stay native to their framework.
React imports
import { Root, RootProvider } from "@grassroot/ui-headless-react/range-slider";Vue imports
<script setup lang="ts">import { Root, RootProvider } from "@grassroot/ui-headless-vue/range-slider";</script>Angular imports
import { GrRangeSliderRoot, GrRangeSliderRootProvider } from "@grassroot/ui-headless-angular/range-slider";Svelte imports
<script lang="ts"> import { Root } from "@grassroot/ui-headless-svelte/range-slider";</script>Solid imports
import { Root, RootProvider } from "@grassroot/ui-headless-solid/range-slider";@grassroot/ui-headless-react/range-slider
React adapter
RangeSliderRootProps
interfaceinterface RangeSliderRootProps extends Omit<HTMLAttributes<HTMLDivElement>, "defaultValue" | "onChange">, RangeSliderInput { readonly id?: string; readonly ariaLabel?: string; readonly histogram?: readonly number[]; readonly format?: (value: number) => string; readonly caption?: string; readonly onValueChange?: (detail: { value: readonly [number, number]; reason: string; }) => void; readonly children?: ReactNode;}ariaLabelstringcaptionstringchildrenReactNodeformat(value: number) => stringhistogramreadonly number[]idstringonValueChange(detail: {
value: readonly [number, number];
reason: string;
}) => void- Name
ariaLabel- Kind
- property
- Type
string- Requirement
- optional
- Name
caption- Kind
- property
- Type
string- Requirement
- optional
- Name
children- Kind
- property
- Type
ReactNode- Requirement
- optional
- Name
format- Kind
- property
- Type
(value: number) => string- Requirement
- optional
- Name
histogram- Kind
- property
- Type
readonly number[]- Requirement
- optional
- Name
id- Kind
- property
- Type
string- Requirement
- optional
- Name
onValueChange- Kind
- property
- Type
(detail: { value: readonly [number, number]; reason: string; }) => void- Requirement
- optional
RangeSliderRootProviderProps
interfaceinterface RangeSliderRootProviderProps extends HTMLAttributes<HTMLDivElement> { readonly value: UseRangeSliderResult; readonly histogram?: readonly number[]; readonly format?: (value: number) => string; readonly caption?: string; readonly children?: ReactNode;}captionstringchildrenReactNodeformat(value: number) => stringhistogramreadonly number[]valueUseRangeSliderResult- Name
caption- Kind
- property
- Type
string- Requirement
- optional
- Name
children- Kind
- property
- Type
ReactNode- Requirement
- optional
- Name
format- Kind
- property
- Type
(value: number) => string- Requirement
- optional
- Name
histogram- Kind
- property
- Type
readonly number[]- Requirement
- optional
- Name
value- Kind
- property
- Type
UseRangeSliderResult- Requirement
- required
Root
valueexport declare const Root: import("react").ForwardRefExoticComponent<RangeSliderRootProps & import("react").RefAttributes<HTMLDivElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
RootProvider
valueexport declare const RootProvider: import("react").ForwardRefExoticComponent<RangeSliderRootProviderProps & import("react").RefAttributes<HTMLDivElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
useRangeSlider
functiondeclare function useRangeSlider(input: RangeSliderInput, options?: UseRangeSliderOptions): UseRangeSliderResult;inputRangeSliderInputoptionsUseRangeSliderOptionsreturnUseRangeSliderResult- Name
input- Kind
- parameter
- Type
RangeSliderInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseRangeSliderOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseRangeSliderResult- Requirement
- n/a
UseRangeSliderOptions
interfaceinterface UseRangeSliderOptions { readonly id?: string; readonly ariaLabel?: string; readonly histogram?: readonly number[]; readonly format?: (value: number) => string; readonly caption?: string; readonly onValueChange?: (detail: RangeSliderChangeDetail) => void;}ariaLabelstringcaptionstringformat(value: number) => stringhistogramreadonly number[]idstringonValueChange(detail: RangeSliderChangeDetail) => void- Name
ariaLabel- Kind
- property
- Type
string- Requirement
- optional
- Name
caption- Kind
- property
- Type
string- Requirement
- optional
- Name
format- Kind
- property
- Type
(value: number) => string- Requirement
- optional
- Name
histogram- Kind
- property
- Type
readonly number[]- Requirement
- optional
- Name
id- Kind
- property
- Type
string- Requirement
- optional
- Name
onValueChange- Kind
- property
- Type
(detail: RangeSliderChangeDetail) => void- Requirement
- optional
UseRangeSliderResult
interfaceinterface UseRangeSliderResult { readonly service: RangeSliderService; readonly connector: RangeSliderApi; readonly scope: ReturnType<typeof import("@grassroot/ui-headless-core").createPartScope>; readonly snapshot: RangeSliderSnapshot;}connectorRangeSliderApiscopeReturnType<typeof import("@grassroot/ui-headless-core").createPartScope>serviceRangeSliderServicesnapshotRangeSliderSnapshot- Name
connector- Kind
- property
- Type
RangeSliderApi- Requirement
- required
- Name
scope- Kind
- property
- Type
ReturnType<typeof import("@grassroot/ui-headless-core").createPartScope>- Requirement
- required
- Name
service- Kind
- property
- Type
RangeSliderService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
RangeSliderSnapshot- Requirement
- required
@grassroot/ui-headless-vue/range-slider
Vue adapter
Root
valueexport declare const Root: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ min: NumberConstructor; max: NumberConstructor; step: NumberConstructor; value: { type: PropType<RangeSliderInput["value"]>; default: undefined; }; defaultValue: { type: PropType<RangeSliderInput["defaultValue"]>; default: undefined; }; disabled: BooleanConstructor; ariaLabel: StringConstructor; id: StringConstructor; histogram: { type: PropType<readonly number[]>; default: () => never[]; }; format: { type: PropType<(value: number) => string>; default: StringConstructor; }; caption: StringConstructor;}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any;}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { valueChange: (_detail: unknown) => true;}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ min: NumberConstructor; max: NumberConstructor; step: NumberConstructor; value: { type: PropType<RangeSliderInput["value"]>; default: undefined; }; defaultValue: { type: PropType<RangeSliderInput["defaultValue"]>; default: undefined; }; disabled: BooleanConstructor; ariaLabel: StringConstructor; id: StringConstructor; histogram: { type: PropType<readonly number[]>; default: () => never[]; }; format: { type: PropType<(value: number) => string>; default: StringConstructor; }; caption: StringConstructor;}>> & Readonly<{ onValueChange?: ((_detail: unknown) => any) | undefined;}>, { value: import("@grassroot/ui-machines/range-slider").RangeSliderPair | undefined; defaultValue: import("@grassroot/ui-machines/range-slider").RangeSliderPair | undefined; disabled: boolean; histogram: readonly number[]; format: (value: number) => string;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;RootProvider
valueexport declare const RootProvider: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ value: { type: PropType<UseRangeSliderResult>; required: true; }; histogram: { type: PropType<readonly number[]>; default: () => never[]; }; format: { type: PropType<(value: number) => string>; default: StringConstructor; }; caption: StringConstructor;}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any;}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ value: { type: PropType<UseRangeSliderResult>; required: true; }; histogram: { type: PropType<readonly number[]>; default: () => never[]; }; format: { type: PropType<(value: number) => string>; default: StringConstructor; }; caption: StringConstructor;}>> & Readonly<{}>, { histogram: readonly number[]; format: (value: number) => string;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;useRangeSlider
functiondeclare function useRangeSlider(input: () => RangeSliderInput, options?: UseRangeSliderOptions): UseRangeSliderResult;input() => RangeSliderInputoptionsUseRangeSliderOptionsreturnUseRangeSliderResult- Name
input- Kind
- parameter
- Type
() => RangeSliderInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseRangeSliderOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseRangeSliderResult- Requirement
- n/a
UseRangeSliderOptions
interfaceinterface UseRangeSliderOptions { readonly id?: string; readonly ariaLabel?: string; readonly histogram?: readonly number[]; readonly format?: (value: number) => string; readonly caption?: string; readonly onValueChange?: (detail: RangeSliderChangeDetail) => void;}ariaLabelstringcaptionstringformat(value: number) => stringhistogramreadonly number[]idstringonValueChange(detail: RangeSliderChangeDetail) => void- Name
ariaLabel- Kind
- property
- Type
string- Requirement
- optional
- Name
caption- Kind
- property
- Type
string- Requirement
- optional
- Name
format- Kind
- property
- Type
(value: number) => string- Requirement
- optional
- Name
histogram- Kind
- property
- Type
readonly number[]- Requirement
- optional
- Name
id- Kind
- property
- Type
string- Requirement
- optional
- Name
onValueChange- Kind
- property
- Type
(detail: RangeSliderChangeDetail) => void- Requirement
- optional
UseRangeSliderResult
interfaceinterface UseRangeSliderResult { readonly service: RangeSliderService; readonly connector: RangeSliderApi; readonly scope: PartScope; readonly snapshot: ShallowRef<RangeSliderSnapshot>;}connectorRangeSliderApiscopePartScopeserviceRangeSliderServicesnapshotShallowRef<RangeSliderSnapshot>- Name
connector- Kind
- property
- Type
RangeSliderApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
RangeSliderService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
ShallowRef<RangeSliderSnapshot>- Requirement
- required
@grassroot/ui-headless-angular/range-slider
Angular adapter
createRangeSliderStore
functionexport declare function createRangeSliderStore(initial: RangeSliderInput, options?: RangeSliderOptions): RangeSliderStore;initialRangeSliderInputoptionsRangeSliderOptionsreturnRangeSliderStore- Name
initial- Kind
- parameter
- Type
RangeSliderInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
RangeSliderOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
RangeSliderStore- Requirement
- n/a
GrRangeSliderRoot
classexport declare class GrRangeSliderRoot implements OnDestroy { readonly min: import("@angular/core").InputSignal<number | undefined>; readonly max: import("@angular/core").InputSignal<number | undefined>; readonly step: import("@angular/core").InputSignal<number | undefined>; readonly value: import("@angular/core").InputSignal<import("@grassroot/ui-machines/range-slider").RangeSliderPair | undefined>; readonly defaultValue: import("@angular/core").InputSignal<import("@grassroot/ui-machines/range-slider").RangeSliderPair | undefined>; readonly disabled: import("@angular/core").InputSignal<boolean>; readonly ariaLabel: import("@angular/core").InputSignal<string | undefined>; readonly histogram: import("@angular/core").InputSignal<readonly number[]>; readonly format: import("@angular/core").InputSignal<(value: number) => string>; readonly caption: import("@angular/core").InputSignal<string | undefined>; readonly valueChange: import("@angular/core").OutputEmitterRef<RangeSliderChangeDetail>; readonly store: RangeSliderStore; private readonly host; private readonly consumer; private readonly parts; private last; constructor(); private applyParts; private apply; ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrRangeSliderRoot, never>; static ɵcmp: i0.ɵɵComponentDeclaration<GrRangeSliderRoot, "gr-range-slider-root", never, { "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "defaultValue": { "alias": "defaultValue"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "histogram": { "alias": "histogram"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; "caption": { "alias": "caption"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;}applyanyapplyPartsanyariaLabelimport("@angular/core").InputSignal<string | undefined>captionimport("@angular/core").InputSignal<string | undefined>consumeranydefaultValueimport("@angular/core").InputSignal<import("@grassroot/ui-machines/range-slider").RangeSliderPair | undefined>disabledimport("@angular/core").InputSignal<boolean>formatimport("@angular/core").InputSignal<(value: number) => string>histogramimport("@angular/core").InputSignal<readonly number[]>hostanylastanymaximport("@angular/core").InputSignal<number | undefined>minimport("@angular/core").InputSignal<number | undefined>ngOnDestroy() => void- Name
apply- Kind
- property
- Type
any- Requirement
- required
- Name
applyParts- Kind
- property
- Type
any- Requirement
- required
- Name
ariaLabel- Kind
- property
- Type
import("@angular/core").InputSignal<string | undefined>- Requirement
- required
- Name
caption- Kind
- property
- Type
import("@angular/core").InputSignal<string | undefined>- Requirement
- required
- Name
consumer- Kind
- property
- Type
any- Requirement
- required
- Name
defaultValue- Kind
- property
- Type
import("@angular/core").InputSignal<import("@grassroot/ui-machines/range-slider").RangeSliderPair | undefined>- Requirement
- required
- Name
disabled- Kind
- property
- Type
import("@angular/core").InputSignal<boolean>- Requirement
- required
- Name
format- Kind
- property
- Type
import("@angular/core").InputSignal<(value: number) => string>- Requirement
- required
- Name
histogram- Kind
- property
- Type
import("@angular/core").InputSignal<readonly number[]>- Requirement
- required
- Name
host- Kind
- property
- Type
any- Requirement
- required
- Name
last- Kind
- property
- Type
any- Requirement
- required
- Name
max- Kind
- property
- Type
import("@angular/core").InputSignal<number | undefined>- Requirement
- required
- Name
min- Kind
- property
- Type
import("@angular/core").InputSignal<number | undefined>- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵcmp- Kind
- property
- Type
i0.ɵɵComponentDeclaration<GrRangeSliderRoot, "gr-range-slider-root", never, { "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "defaultValue": { "alias": "defaultValue"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "histogram": { "alias": "histogram"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; "caption": { "alias": "caption"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrRangeSliderRoot, never>- Requirement
- required
- Name
parts- Kind
- property
- Type
any- Requirement
- required
- Name
step- Kind
- property
- Type
import("@angular/core").InputSignal<number | undefined>- Requirement
- required
- Name
store- Kind
- property
- Type
RangeSliderStore- Requirement
- required
- Name
value- Kind
- property
- Type
import("@angular/core").InputSignal<import("@grassroot/ui-machines/range-slider").RangeSliderPair | undefined>- Requirement
- required
- Name
valueChange- Kind
- property
- Type
import("@angular/core").OutputEmitterRef<RangeSliderChangeDetail>- Requirement
- required
export declare class GrRangeSliderRootProvider implements OnDestroy { ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrRangeSliderRootProvider, never>; static ɵcmp: i0.ɵɵComponentDeclaration<GrRangeSliderRootProvider, "gr-range-slider-root-provider", never, {}, {}, never, ["*"], true, never>;}ngOnDestroy() => voidɵcmpi0.ɵɵComponentDeclaration<GrRangeSliderRootProvider, "gr-range-slider-root-provider", never, {}, {}, never, ["*"], true, never>ɵfaci0.ɵɵFactoryDeclaration<GrRangeSliderRootProvider, never>- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵcmp- Kind
- property
- Type
i0.ɵɵComponentDeclaration<GrRangeSliderRootProvider, "gr-range-slider-root-provider", never, {}, {}, never, ["*"], true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrRangeSliderRootProvider, never>- Requirement
- required
RangeSliderStore
interfaceexport interface RangeSliderStore { readonly service: RangeSliderService; readonly connector: RangeSliderApi; readonly scope: PartScope; readonly version: WritableSignal<number>; start(): void; stop(): void; sync(input: RangeSliderInput): void; syncOptions(options: Record<string, unknown>): void;}connectorRangeSliderApiscopePartScopeserviceRangeSliderServicestart() => voidstop() => voidsync(input: RangeSliderInput) => voidsyncOptions(options: Record<string, unknown>) => voidversionWritableSignal<number>- Name
connector- Kind
- property
- Type
RangeSliderApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
RangeSliderService- Requirement
- required
- Name
start- Kind
- method
- Type
() => void- Requirement
- required
- Name
stop- Kind
- method
- Type
() => void- Requirement
- required
- Name
sync- Kind
- method
- Type
(input: RangeSliderInput) => void- Requirement
- required
- Name
syncOptions- Kind
- method
- Type
(options: Record<string, unknown>) => void- Requirement
- required
- Name
version- Kind
- property
- Type
WritableSignal<number>- Requirement
- required
@grassroot/ui-headless-svelte/range-slider
Svelte adapter
createRangeSlider
functionexport declare function createRangeSlider(input: () => RangeSliderInput, options?: UseRangeSliderOptions): UseRangeSliderResult;input() => RangeSliderInputoptionsUseRangeSliderOptionsreturnUseRangeSliderResult- Name
input- Kind
- parameter
- Type
() => RangeSliderInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseRangeSliderOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseRangeSliderResult- Requirement
- n/a
Root
valueexport declare const Root: LegacyComponentType;argsParameters<Component<Record<string, any>>>returnReturnType<Component<Record<string, any>, Record<string, any>>>- Name
args- Kind
- parameter
- Type
Parameters<Component<Record<string, any>>>- Requirement
- optional
- Name
return- Kind
- return value
- Type
ReturnType<Component<Record<string, any>, Record<string, any>>>- Requirement
- n/a
UseRangeSliderOptions
interfaceexport interface UseRangeSliderOptions { readonly id?: string; readonly ariaLabel?: string; readonly histogram?: readonly number[]; readonly format?: (value: number) => string; readonly caption?: string; readonly onValueChange?: (detail: import("@grassroot/ui-headless-core/range-slider").RangeSliderChangeDetail) => void;}ariaLabelstringcaptionstringformat(value: number) => stringhistogramreadonly number[]idstringonValueChange(detail: import("@grassroot/ui-headless-core/range-slider").RangeSliderChangeDetail) => void- Name
ariaLabel- Kind
- property
- Type
string- Requirement
- optional
- Name
caption- Kind
- property
- Type
string- Requirement
- optional
- Name
format- Kind
- property
- Type
(value: number) => string- Requirement
- optional
- Name
histogram- Kind
- property
- Type
readonly number[]- Requirement
- optional
- Name
id- Kind
- property
- Type
string- Requirement
- optional
- Name
onValueChange- Kind
- property
- Type
(detail: import("@grassroot/ui-headless-core/range-slider").RangeSliderChangeDetail) => void- Requirement
- optional
UseRangeSliderResult
interfaceexport interface UseRangeSliderResult { readonly service: RangeSliderService; readonly connector: RangeSliderApi; readonly scope: ReturnType<typeof import("@grassroot/ui-headless-core").createPartScope>; readonly version: () => number;}connectorRangeSliderApiscopeReturnType<typeof import("@grassroot/ui-headless-core").createPartScope>serviceRangeSliderServiceversion() => number- Name
connector- Kind
- property
- Type
RangeSliderApi- Requirement
- required
- Name
scope- Kind
- property
- Type
ReturnType<typeof import("@grassroot/ui-headless-core").createPartScope>- Requirement
- required
- Name
service- Kind
- property
- Type
RangeSliderService- Requirement
- required
- Name
version- Kind
- property
- Type
() => number- Requirement
- required
@grassroot/ui-headless-solid/range-slider
Solid adapter
RangeSliderRootProps
interfaceexport interface RangeSliderRootProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, "onChange" | "value" | "defaultValue">, RangeSliderInput { readonly ariaLabel?: string; readonly id?: string; readonly histogram?: readonly number[]; readonly format?: (value: number) => string; readonly caption?: string; readonly onValueChange?: (detail: RangeSliderChangeDetail) => void; readonly children?: JSX.Element;}ariaLabelstringcaptionstringchildrenJSX.Elementformat(value: number) => stringhistogramreadonly number[]idstringonValueChange(detail: RangeSliderChangeDetail) => void- Name
ariaLabel- Kind
- property
- Type
string- Requirement
- optional
- Name
caption- Kind
- property
- Type
string- Requirement
- optional
- Name
children- Kind
- property
- Type
JSX.Element- Requirement
- optional
- Name
format- Kind
- property
- Type
(value: number) => string- Requirement
- optional
- Name
histogram- Kind
- property
- Type
readonly number[]- Requirement
- optional
- Name
id- Kind
- property
- Type
string- Requirement
- optional
- Name
onValueChange- Kind
- property
- Type
(detail: RangeSliderChangeDetail) => void- Requirement
- optional
RangeSliderRootProviderProps
interfaceexport interface RangeSliderRootProviderProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, "onChange"> { readonly value: UseRangeSliderResult; readonly histogram?: readonly number[]; readonly format?: (value: number) => string; readonly caption?: string; readonly children?: JSX.Element;}captionstringchildrenJSX.Elementformat(value: number) => stringhistogramreadonly number[]valueUseRangeSliderResult- Name
caption- Kind
- property
- Type
string- Requirement
- optional
- Name
children- Kind
- property
- Type
JSX.Element- Requirement
- optional
- Name
format- Kind
- property
- Type
(value: number) => string- Requirement
- optional
- Name
histogram- Kind
- property
- Type
readonly number[]- Requirement
- optional
- Name
value- Kind
- property
- Type
UseRangeSliderResult- Requirement
- required
Root
functionexport declare function Root(props: RangeSliderRootProps): JSX.Element;propsRangeSliderRootPropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
RangeSliderRootProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
RootProvider
functionexport declare function RootProvider(props: RangeSliderRootProviderProps): JSX.Element;propsRangeSliderRootProviderPropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
RangeSliderRootProviderProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
useRangeSlider
functionexport declare function useRangeSlider(input: Accessor<RangeSliderInput>, options?: UseRangeSliderOptions): UseRangeSliderResult;inputAccessor<RangeSliderInput>optionsUseRangeSliderOptionsreturnUseRangeSliderResult- Name
input- Kind
- parameter
- Type
Accessor<RangeSliderInput>- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseRangeSliderOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseRangeSliderResult- Requirement
- n/a
UseRangeSliderOptions
interfaceexport interface UseRangeSliderOptions { readonly id?: string; readonly ariaLabel?: string; readonly histogram?: readonly number[]; readonly format?: (value: number) => string; readonly caption?: string; readonly onValueChange?: (detail: RangeSliderChangeDetail) => void;}ariaLabelstringcaptionstringformat(value: number) => stringhistogramreadonly number[]idstringonValueChange(detail: RangeSliderChangeDetail) => void- Name
ariaLabel- Kind
- property
- Type
string- Requirement
- optional
- Name
caption- Kind
- property
- Type
string- Requirement
- optional
- Name
format- Kind
- property
- Type
(value: number) => string- Requirement
- optional
- Name
histogram- Kind
- property
- Type
readonly number[]- Requirement
- optional
- Name
id- Kind
- property
- Type
string- Requirement
- optional
- Name
onValueChange- Kind
- property
- Type
(detail: RangeSliderChangeDetail) => void- Requirement
- optional
UseRangeSliderResult
interfaceexport interface UseRangeSliderResult { readonly service: RangeSliderService; readonly connector: RangeSliderApi; readonly scope: PartScope; readonly snapshot: Accessor<RangeSliderSnapshot>;}connectorRangeSliderApiscopePartScopeserviceRangeSliderServicesnapshotAccessor<RangeSliderSnapshot>- Name
connector- Kind
- property
- Type
RangeSliderApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
RangeSliderService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
Accessor<RangeSliderSnapshot>- Requirement
- required