- Name
service- Kind
- parameter
- Type
QuantityStepperService- Requirement
- required
DocsAPI referenceHeadlessquantity-stepper
quantity-stepper 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/quantity-stepper
Core connector and vanilla API
connectQuantityStepper
functiondeclare function connectQuantityStepper(service: QuantityStepperService, scope: PartScope, options?: QuantityStepperConnectOptions): QuantityStepperApi;serviceQuantityStepperServicescopePartScopeoptionsQuantityStepperConnectOptionsreturnQuantityStepperApi- Name
scope- Kind
- parameter
- Type
PartScope- Requirement
- required
- Name
options- Kind
- parameter
- Type
QuantityStepperConnectOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
QuantityStepperApi- Requirement
- n/a
mountQuantityStepper
functiondeclare function mountQuantityStepper(container: HTMLElement, options?: MountQuantityStepperOptions): QuantityStepperMount;containerHTMLElementoptionsMountQuantityStepperOptionsreturnQuantityStepperMount- Name
container- Kind
- parameter
- Type
HTMLElement- Requirement
- required
- Name
options- Kind
- parameter
- Type
MountQuantityStepperOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
QuantityStepperMount- Requirement
- n/a
MountQuantityStepperOptions
interfaceinterface MountQuantityStepperOptions extends QuantityStepperInput, Pick<QuantityStepperConnectOptions, "ariaLabel" | "messages"> { readonly onValueChange?: (detail: QuantityStepperChangeDetail) => void;}onValueChange(detail: QuantityStepperChangeDetail) => void- Name
onValueChange- Kind
- property
- Type
(detail: QuantityStepperChangeDetail) => void- Requirement
- optional
quantityStepperAnatomy
valueexport declare const quantityStepperAnatomy: { readonly scope: "quantity-stepper"; readonly parts: readonly ["root", "decrement", "value", "increment"];};partsreadonly ["root", "decrement", "value", "increment"]scope"quantity-stepper"- Name
parts- Kind
- property
- Type
readonly ["root", "decrement", "value", "increment"]- Requirement
- required
- Name
scope- Kind
- property
- Type
"quantity-stepper"- Requirement
- required
QuantityStepperApi
interfaceinterface QuantityStepperApi { rootProps(): PartProps; decrementProps(): PartProps; valueProps(): PartProps; incrementProps(): PartProps; readonly value: number; readonly disabled: boolean; readonly canDecrement: boolean; readonly canIncrement: boolean;}canDecrementbooleancanIncrementbooleandecrementProps() => PartPropsdisabledbooleanincrementProps() => PartPropsrootProps() => PartPropsvaluenumbervalueProps() => PartProps- Name
canDecrement- Kind
- property
- Type
boolean- Requirement
- required
- Name
canIncrement- Kind
- property
- Type
boolean- Requirement
- required
- Name
decrementProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
disabled- Kind
- property
- Type
boolean- Requirement
- required
- Name
incrementProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
rootProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
value- Kind
- property
- Type
number- Requirement
- required
- Name
valueProps- Kind
- method
- Type
() => PartProps- Requirement
- required
QuantityStepperChangeDetail
interfaceinterface QuantityStepperChangeDetail { readonly value: number; readonly reason: "pointer" | "keyboard" | "programmatic";}reason"pointer" | "keyboard" | "programmatic"valuenumber- Name
reason- Kind
- property
- Type
"pointer" | "keyboard" | "programmatic"- Requirement
- required
- Name
value- Kind
- property
- Type
number- Requirement
- required
QuantityStepperConnectOptions
interfaceinterface QuantityStepperConnectOptions { readonly ariaLabel?: string; readonly messages?: Partial<QuantityStepperMessages>; readonly onValueChange?: (detail: QuantityStepperChangeDetail) => void;}ariaLabelstringmessagesPartial<QuantityStepperMessages>onValueChange(detail: QuantityStepperChangeDetail) => void- Name
ariaLabel- Kind
- property
- Type
string- Requirement
- optional
- Name
messages- Kind
- property
- Type
Partial<QuantityStepperMessages>- Requirement
- optional
- Name
onValueChange- Kind
- property
- Type
(detail: QuantityStepperChangeDetail) => void- Requirement
- optional
quantityStepperMessages
valueexport declare const quantityStepperMessages: QuantityStepperMessages;type QuantityStepperMessages = Pick<MessageTable, "rootLabel" | "decrementLabel" | "incrementLabel">;QuantityStepperMount
interfaceinterface QuantityStepperMount { readonly service: QuantityStepperService; readonly connector: QuantityStepperApi; readonly root: HTMLDivElement; destroy(): void;}connectorQuantityStepperApidestroy() => voidrootHTMLDivElementserviceQuantityStepperService- Name
connector- Kind
- property
- Type
QuantityStepperApi- Requirement
- required
- Name
destroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
root- Kind
- property
- Type
HTMLDivElement- Requirement
- required
- Name
service- Kind
- property
- Type
QuantityStepperService- Requirement
- required
QuantityStepperPart
typetype QuantityStepperPart = (typeof quantityStepperAnatomy.parts)[number];type QuantityStepperService = Service<QuantityStepperInput, "ready", QuantityStepperContext, QuantityStepperEvent, QuantityStepperCommand>;runQuantityStepperCommand
functiondeclare function runQuantityStepperCommand(command: QuantityStepperCommand, options?: QuantityStepperConnectOptions): void;commandQuantityStepperCommandoptionsQuantityStepperConnectOptionsreturnvoid- Name
command- Kind
- parameter
- Type
QuantityStepperCommand- Requirement
- required
- Name
options- Kind
- parameter
- Type
QuantityStepperConnectOptions- 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 { Decrement, Increment, Root, RootProvider, Value } from "@grassroot/ui-headless-react/quantity-stepper";Vue imports
<script setup lang="ts">import { Decrement, Increment, Root, RootProvider, Value } from "@grassroot/ui-headless-vue/quantity-stepper";</script>Angular imports
import { GrQuantityStepperDecrement, GrQuantityStepperIncrement, GrQuantityStepperRoot, GrQuantityStepperRootProvider, GrQuantityStepperValue } from "@grassroot/ui-headless-angular/quantity-stepper";Svelte imports
<script lang="ts"> import { Decrement, Increment, Parts, Root, RootProvider, Value } from "@grassroot/ui-headless-svelte/quantity-stepper";</script>Solid imports
import { Decrement, Increment, Root, RootProvider, Value } from "@grassroot/ui-headless-solid/quantity-stepper";@grassroot/ui-headless-react/quantity-stepper
React adapter
Decrement
valueexport declare const Decrement: import("react").ForwardRefExoticComponent<QuantityStepperButtonProps & import("react").RefAttributes<HTMLButtonElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
Increment
valueexport declare const Increment: import("react").ForwardRefExoticComponent<QuantityStepperButtonProps & import("react").RefAttributes<HTMLButtonElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
QuantityStepperButtonProps
interfaceinterface QuantityStepperButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> { readonly children?: ReactNode;}childrenReactNode- Name
children- Kind
- property
- Type
ReactNode- Requirement
- optional
QuantityStepperRootProps
interfaceinterface QuantityStepperRootProps extends Omit<HTMLAttributes<HTMLDivElement>, "onChange" | "value" | "defaultValue">, QuantityStepperInput { readonly ariaLabel?: string; readonly id?: string; readonly onValueChange?: (detail: QuantityStepperChangeDetail) => void; readonly children?: ReactNode;}ariaLabelstringchildrenReactNodeidstringonValueChange(detail: QuantityStepperChangeDetail) => void- Name
ariaLabel- Kind
- property
- Type
string- Requirement
- optional
- Name
children- Kind
- property
- Type
ReactNode- Requirement
- optional
- Name
id- Kind
- property
- Type
string- Requirement
- optional
- Name
onValueChange- Kind
- property
- Type
(detail: QuantityStepperChangeDetail) => void- Requirement
- optional
QuantityStepperRootProviderProps
interfaceinterface QuantityStepperRootProviderProps extends Omit<HTMLAttributes<HTMLDivElement>, "onChange"> { readonly value: UseQuantityStepperResult; readonly children?: ReactNode;}childrenReactNodevalueUseQuantityStepperResult- Name
children- Kind
- property
- Type
ReactNode- Requirement
- optional
- Name
value- Kind
- property
- Type
UseQuantityStepperResult- Requirement
- required
QuantityStepperValueProps
interfaceinterface QuantityStepperValueProps extends HTMLAttributes<HTMLSpanElement> { readonly children?: ReactNode;}childrenReactNode- Name
children- Kind
- property
- Type
ReactNode- Requirement
- optional
Root
valueexport declare const Root: import("react").ForwardRefExoticComponent<QuantityStepperRootProps & 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<QuantityStepperRootProviderProps & import("react").RefAttributes<HTMLDivElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
useQuantityStepper
functiondeclare function useQuantityStepper(input: QuantityStepperInput, options?: UseQuantityStepperOptions): UseQuantityStepperResult;inputQuantityStepperInputoptionsUseQuantityStepperOptionsreturnUseQuantityStepperResult- Name
input- Kind
- parameter
- Type
QuantityStepperInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseQuantityStepperOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseQuantityStepperResult- Requirement
- n/a
UseQuantityStepperOptions
interfaceinterface UseQuantityStepperOptions { readonly id?: string; readonly ariaLabel?: string; readonly onValueChange?: (detail: QuantityStepperChangeDetail) => void;}ariaLabelstringidstringonValueChange(detail: QuantityStepperChangeDetail) => void- Name
ariaLabel- Kind
- property
- Type
string- Requirement
- optional
- Name
id- Kind
- property
- Type
string- Requirement
- optional
- Name
onValueChange- Kind
- property
- Type
(detail: QuantityStepperChangeDetail) => void- Requirement
- optional
UseQuantityStepperResult
interfaceinterface UseQuantityStepperResult { readonly service: QuantityStepperService; readonly connector: QuantityStepperApi; readonly scope: PartScope; readonly snapshot: QuantityStepperSnapshot;}connectorQuantityStepperApiscopePartScopeserviceQuantityStepperServicesnapshotQuantityStepperSnapshot- Name
connector- Kind
- property
- Type
QuantityStepperApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
QuantityStepperService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
QuantityStepperSnapshot- Requirement
- required
Value
valueexport declare const Value: import("react").ForwardRefExoticComponent<QuantityStepperValueProps & import("react").RefAttributes<HTMLSpanElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
@grassroot/ui-headless-vue/quantity-stepper
Vue adapter
Decrement
valueexport declare const Decrement: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; };}>, () => 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<{ asChild: { type: BooleanConstructor; default: boolean; };}>> & Readonly<{}>, { asChild: boolean;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;Increment
valueexport declare const Increment: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; };}>, () => 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<{ asChild: { type: BooleanConstructor; default: boolean; };}>> & Readonly<{}>, { asChild: boolean;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;Root
valueexport declare const Root: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; min: NumberConstructor; max: NumberConstructor; step: NumberConstructor; value: { type: PropType<number | undefined>; default: undefined; }; defaultValue: { type: PropType<number | undefined>; default: undefined; }; disabled: BooleanConstructor; ariaLabel: StringConstructor;}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any;}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { valueChange: (_detail: QuantityStepperChangeDetail) => true;}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; min: NumberConstructor; max: NumberConstructor; step: NumberConstructor; value: { type: PropType<number | undefined>; default: undefined; }; defaultValue: { type: PropType<number | undefined>; default: undefined; }; disabled: BooleanConstructor; ariaLabel: StringConstructor;}>> & Readonly<{ onValueChange?: ((_detail: QuantityStepperChangeDetail) => any) | undefined;}>, { asChild: boolean; value: number | undefined; defaultValue: number | undefined; disabled: boolean;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;RootProvider
valueexport declare const RootProvider: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; value: { type: PropType<UseQuantityStepperResult>; required: true; };}>, () => 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<{ asChild: { type: BooleanConstructor; default: boolean; }; value: { type: PropType<UseQuantityStepperResult>; required: true; };}>> & Readonly<{}>, { asChild: boolean;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;useQuantityStepper
functiondeclare function useQuantityStepper(input: () => QuantityStepperInput, options?: () => QuantityStepperOptions): UseQuantityStepperResult;input() => QuantityStepperInputoptions() => QuantityStepperOptionsreturnUseQuantityStepperResult- Name
input- Kind
- parameter
- Type
() => QuantityStepperInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
() => QuantityStepperOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseQuantityStepperResult- Requirement
- n/a
UseQuantityStepperResult
interfaceinterface UseQuantityStepperResult { readonly service: QuantityStepperService; readonly connector: QuantityStepperApi; readonly scope: PartScope; readonly snapshot: ShallowRef<QuantityStepperSnapshot>;}connectorQuantityStepperApiscopePartScopeserviceQuantityStepperServicesnapshotShallowRef<QuantityStepperSnapshot>- Name
connector- Kind
- property
- Type
QuantityStepperApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
QuantityStepperService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
ShallowRef<QuantityStepperSnapshot>- Requirement
- required
Value
valueexport declare const Value: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; };}>, () => 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<{ asChild: { type: BooleanConstructor; default: boolean; };}>> & Readonly<{}>, { asChild: boolean;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;@grassroot/ui-headless-angular/quantity-stepper
Angular adapter
createQuantityStepperStore
functionexport declare function createQuantityStepperStore(initial: QuantityStepperInput, options?: CreateQuantityStepperStoreOptions): QuantityStepperStore;initialQuantityStepperInputoptionsCreateQuantityStepperStoreOptionsreturnQuantityStepperStore- Name
initial- Kind
- parameter
- Type
QuantityStepperInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
CreateQuantityStepperStoreOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
QuantityStepperStore- Requirement
- n/a
CreateQuantityStepperStoreOptions
interfaceexport interface CreateQuantityStepperStoreOptions { readonly ariaLabel?: string; readonly onValueChange?: (detail: QuantityStepperChangeDetail) => void; readonly onCommit?: () => void;}ariaLabelstringonCommit() => voidonValueChange(detail: QuantityStepperChangeDetail) => void- Name
ariaLabel- Kind
- property
- Type
string- Requirement
- optional
- Name
onCommit- Kind
- property
- Type
() => void- Requirement
- optional
- Name
onValueChange- Kind
- property
- Type
(detail: QuantityStepperChangeDetail) => void- Requirement
- optional
export declare class GrQuantityStepperDecrement implements OnDestroy { private readonly store; private readonly element; private readonly listeners; private readonly consumer; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrQuantityStepperDecrement, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrQuantityStepperDecrement, "[grQuantityStepperDecrement]", never, {}, {}, never, never, true, never>;}consumeranyelementanylistenersanyngOnDestroy() => voidɵdiri0.ɵɵDirectiveDeclaration<GrQuantityStepperDecrement, "[grQuantityStepperDecrement]", never, {}, {}, never, never, true, never>ɵfaci0.ɵɵFactoryDeclaration<GrQuantityStepperDecrement, never>storeany- Name
consumer- Kind
- property
- Type
any- Requirement
- required
- Name
element- Kind
- property
- Type
any- Requirement
- required
- Name
listeners- Kind
- property
- Type
any- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrQuantityStepperDecrement, "[grQuantityStepperDecrement]", never, {}, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrQuantityStepperDecrement, never>- Requirement
- required
- Name
store- Kind
- property
- Type
any- Requirement
- required
export declare class GrQuantityStepperIncrement implements OnDestroy { private readonly store; private readonly element; private readonly listeners; private readonly consumer; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrQuantityStepperIncrement, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrQuantityStepperIncrement, "[grQuantityStepperIncrement]", never, {}, {}, never, never, true, never>;}consumeranyelementanylistenersanyngOnDestroy() => voidɵdiri0.ɵɵDirectiveDeclaration<GrQuantityStepperIncrement, "[grQuantityStepperIncrement]", never, {}, {}, never, never, true, never>ɵfaci0.ɵɵFactoryDeclaration<GrQuantityStepperIncrement, never>storeany- Name
consumer- Kind
- property
- Type
any- Requirement
- required
- Name
element- Kind
- property
- Type
any- Requirement
- required
- Name
listeners- Kind
- property
- Type
any- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrQuantityStepperIncrement, "[grQuantityStepperIncrement]", never, {}, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrQuantityStepperIncrement, never>- Requirement
- required
- Name
store- Kind
- property
- Type
any- Requirement
- required
GrQuantityStepperRoot
classOwns the store on the consumer's root element; it does not render a host wrapper. Angular has no runtime `as`/`asChild` primitive, so this attribute directive is the documented divergence: consumers choose the literal root element in the template (`<div grQuantityStepperRoot>`), while the part directives apply connector props to their own consumer-owned elements.
export declare class GrQuantityStepperRoot 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<number | undefined>; readonly defaultValue: import("@angular/core").InputSignal<number | undefined>; readonly disabled: import("@angular/core").InputSignal<boolean | undefined>; readonly ariaLabel: import("@angular/core").InputSignal<string | undefined>; readonly valueChange: import("@angular/core").OutputEmitterRef<QuantityStepperChangeDetail>; readonly store: QuantityStepperStore; private readonly host; private readonly listeners; private last; private readonly consumer; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrQuantityStepperRoot, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrQuantityStepperRoot, "[grQuantityStepperRoot]", 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; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;}ariaLabelimport("@angular/core").InputSignal<string | undefined>consumeranydefaultValueimport("@angular/core").InputSignal<number | undefined>disabledimport("@angular/core").InputSignal<boolean | undefined>hostanylastanylistenersanymaximport("@angular/core").InputSignal<number | undefined>minimport("@angular/core").InputSignal<number | undefined>ngOnDestroy() => voidɵdiri0.ɵɵDirectiveDeclaration<GrQuantityStepperRoot, "[grQuantityStepperRoot]", 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; }; }, { "valueChange": "valueChange"; }, never, never, true, never>ɵfaci0.ɵɵFactoryDeclaration<GrQuantityStepperRoot, never>stepimport("@angular/core").InputSignal<number | undefined>storeQuantityStepperStore- Name
ariaLabel- 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<number | undefined>- Requirement
- required
- Name
disabled- Kind
- property
- Type
import("@angular/core").InputSignal<boolean | undefined>- Requirement
- required
- Name
host- Kind
- property
- Type
any- Requirement
- required
- Name
last- Kind
- property
- Type
any- Requirement
- required
- Name
listeners- 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
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrQuantityStepperRoot, "[grQuantityStepperRoot]", 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; }; }, { "valueChange": "valueChange"; }, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrQuantityStepperRoot, never>- Requirement
- required
- Name
step- Kind
- property
- Type
import("@angular/core").InputSignal<number | undefined>- Requirement
- required
- Name
store- Kind
- property
- Type
QuantityStepperStore- Requirement
- required
- Name
value- Kind
- property
- Type
import("@angular/core").InputSignal<number | undefined>- Requirement
- required
- Name
valueChange- Kind
- property
- Type
import("@angular/core").OutputEmitterRef<QuantityStepperChangeDetail>- Requirement
- required
Advanced composition counterpart; adopts the parent-provided store without adding a DOM node.
export declare class GrQuantityStepperRootProvider implements OnDestroy { private readonly store; private readonly host; private readonly listeners; private readonly consumer; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrQuantityStepperRootProvider, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrQuantityStepperRootProvider, "[grQuantityStepperRootProvider]", never, {}, {}, never, never, true, never>;}consumeranyhostanylistenersanyngOnDestroy() => voidɵdiri0.ɵɵDirectiveDeclaration<GrQuantityStepperRootProvider, "[grQuantityStepperRootProvider]", never, {}, {}, never, never, true, never>ɵfaci0.ɵɵFactoryDeclaration<GrQuantityStepperRootProvider, never>storeany- Name
consumer- Kind
- property
- Type
any- Requirement
- required
- Name
host- Kind
- property
- Type
any- Requirement
- required
- Name
listeners- Kind
- property
- Type
any- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrQuantityStepperRootProvider, "[grQuantityStepperRootProvider]", never, {}, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrQuantityStepperRootProvider, never>- Requirement
- required
- Name
store- Kind
- property
- Type
any- Requirement
- required
GrQuantityStepperValue
classexport declare class GrQuantityStepperValue implements OnDestroy { private readonly store; private readonly element; private readonly listeners; private readonly consumer; private readonly hasChildren; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrQuantityStepperValue, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrQuantityStepperValue, "[grQuantityStepperValue]", never, {}, {}, never, never, true, never>;}consumeranyelementanyhasChildrenanylistenersanyngOnDestroy() => voidɵdiri0.ɵɵDirectiveDeclaration<GrQuantityStepperValue, "[grQuantityStepperValue]", never, {}, {}, never, never, true, never>ɵfaci0.ɵɵFactoryDeclaration<GrQuantityStepperValue, never>storeany- Name
consumer- Kind
- property
- Type
any- Requirement
- required
- Name
element- Kind
- property
- Type
any- Requirement
- required
- Name
hasChildren- Kind
- property
- Type
any- Requirement
- required
- Name
listeners- Kind
- property
- Type
any- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrQuantityStepperValue, "[grQuantityStepperValue]", never, {}, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrQuantityStepperValue, never>- Requirement
- required
- Name
store- Kind
- property
- Type
any- Requirement
- required
QuantityStepperStore
interfaceexport interface QuantityStepperStore { readonly service: QuantityStepperService; readonly connector: QuantityStepperApi; readonly scope: PartScope; readonly version: WritableSignal<number>; start(): void; stop(): void; sync(input: QuantityStepperInput): void; syncOptions(options: Record<string, unknown>): void;}connectorQuantityStepperApiscopePartScopeserviceQuantityStepperServicestart() => voidstop() => voidsync(input: QuantityStepperInput) => voidsyncOptions(options: Record<string, unknown>) => voidversionWritableSignal<number>- Name
connector- Kind
- property
- Type
QuantityStepperApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
QuantityStepperService- Requirement
- required
- Name
start- Kind
- method
- Type
() => void- Requirement
- required
- Name
stop- Kind
- method
- Type
() => void- Requirement
- required
- Name
sync- Kind
- method
- Type
(input: QuantityStepperInput) => 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/quantity-stepper
Svelte adapter
createQuantityStepper
functionexport declare function createQuantityStepper(input: () => QuantityStepperInput, options?: UseQuantityStepperOptions): UseQuantityStepperResult;input() => QuantityStepperInputoptionsUseQuantityStepperOptionsreturnUseQuantityStepperResult- Name
input- Kind
- parameter
- Type
() => QuantityStepperInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseQuantityStepperOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseQuantityStepperResult- Requirement
- n/a
Decrement
valueexport declare const Decrement: 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
Increment
valueexport declare const Increment: 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
Parts
valueexport declare const Parts: 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
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
RootProvider
valueexport declare const RootProvider: 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
UseQuantityStepperOptions
interfaceexport interface UseQuantityStepperOptions { readonly id?: string; readonly ariaLabel?: string; readonly onValueChange?: (detail: import("@grassroot/ui-headless-core/quantity-stepper").QuantityStepperChangeDetail) => void;}ariaLabelstringidstringonValueChange(detail: import("@grassroot/ui-headless-core/quantity-stepper").QuantityStepperChangeDetail) => void- Name
ariaLabel- Kind
- property
- Type
string- Requirement
- optional
- Name
id- Kind
- property
- Type
string- Requirement
- optional
- Name
onValueChange- Kind
- property
- Type
(detail: import("@grassroot/ui-headless-core/quantity-stepper").QuantityStepperChangeDetail) => void- Requirement
- optional
UseQuantityStepperResult
interfaceexport interface UseQuantityStepperResult { readonly service: QuantityStepperService; readonly connector: QuantityStepperApi; readonly scope: ReturnType<typeof import("@grassroot/ui-headless-core").createPartScope>; readonly version: () => number;}connectorQuantityStepperApiscopeReturnType<typeof import("@grassroot/ui-headless-core").createPartScope>serviceQuantityStepperServiceversion() => number- Name
connector- Kind
- property
- Type
QuantityStepperApi- Requirement
- required
- Name
scope- Kind
- property
- Type
ReturnType<typeof import("@grassroot/ui-headless-core").createPartScope>- Requirement
- required
- Name
service- Kind
- property
- Type
QuantityStepperService- Requirement
- required
- Name
version- Kind
- property
- Type
() => number- Requirement
- required
Value
valueexport declare const Value: 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
@grassroot/ui-headless-solid/quantity-stepper
Solid adapter
Decrement
functionexport declare function Decrement(props?: QuantityStepperButtonProps): JSX.Element;propsQuantityStepperButtonPropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
QuantityStepperButtonProps- Requirement
- optional
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
Increment
functionexport declare function Increment(props?: QuantityStepperButtonProps): JSX.Element;propsQuantityStepperButtonPropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
QuantityStepperButtonProps- Requirement
- optional
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
QuantityStepperButtonProps
interfaceexport interface QuantityStepperButtonProps extends JSX.ButtonHTMLAttributes<HTMLButtonElement> { readonly children?: JSX.Element;}childrenJSX.Element- Name
children- Kind
- property
- Type
JSX.Element- Requirement
- optional
QuantityStepperRootProps
interfaceexport interface QuantityStepperRootProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, "onChange" | "value" | "defaultValue">, QuantityStepperInput { readonly ariaLabel?: string; readonly id?: string; readonly onValueChange?: (detail: QuantityStepperChangeDetail) => void; readonly children?: JSX.Element;}ariaLabelstringchildrenJSX.ElementidstringonValueChange(detail: QuantityStepperChangeDetail) => void- Name
ariaLabel- Kind
- property
- Type
string- Requirement
- optional
- Name
children- Kind
- property
- Type
JSX.Element- Requirement
- optional
- Name
id- Kind
- property
- Type
string- Requirement
- optional
- Name
onValueChange- Kind
- property
- Type
(detail: QuantityStepperChangeDetail) => void- Requirement
- optional
QuantityStepperRootProviderProps
interfaceexport interface QuantityStepperRootProviderProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, "onChange"> { readonly value: UseQuantityStepperResult; readonly children?: JSX.Element;}childrenJSX.ElementvalueUseQuantityStepperResult- Name
children- Kind
- property
- Type
JSX.Element- Requirement
- optional
- Name
value- Kind
- property
- Type
UseQuantityStepperResult- Requirement
- required
QuantityStepperValueProps
interfaceexport interface QuantityStepperValueProps extends JSX.HTMLAttributes<HTMLSpanElement> { readonly children?: JSX.Element;}childrenJSX.Element- Name
children- Kind
- property
- Type
JSX.Element- Requirement
- optional
Root
functionexport declare function Root(props: QuantityStepperRootProps): JSX.Element;propsQuantityStepperRootPropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
QuantityStepperRootProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
RootProvider
functionexport declare function RootProvider(props: QuantityStepperRootProviderProps): JSX.Element;propsQuantityStepperRootProviderPropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
QuantityStepperRootProviderProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
useQuantityStepper
functionexport declare function useQuantityStepper(input: Accessor<QuantityStepperInput>, options?: UseQuantityStepperOptions): UseQuantityStepperResult;inputAccessor<QuantityStepperInput>optionsUseQuantityStepperOptionsreturnUseQuantityStepperResult- Name
input- Kind
- parameter
- Type
Accessor<QuantityStepperInput>- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseQuantityStepperOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseQuantityStepperResult- Requirement
- n/a
UseQuantityStepperOptions
interfaceexport interface UseQuantityStepperOptions { readonly id?: string; readonly ariaLabel?: string; readonly onValueChange?: (detail: QuantityStepperChangeDetail) => void;}ariaLabelstringidstringonValueChange(detail: QuantityStepperChangeDetail) => void- Name
ariaLabel- Kind
- property
- Type
string- Requirement
- optional
- Name
id- Kind
- property
- Type
string- Requirement
- optional
- Name
onValueChange- Kind
- property
- Type
(detail: QuantityStepperChangeDetail) => void- Requirement
- optional
UseQuantityStepperResult
interfaceexport interface UseQuantityStepperResult { readonly service: QuantityStepperService; readonly connector: QuantityStepperApi; readonly scope: PartScope; readonly snapshot: Accessor<QuantityStepperSnapshot>;}connectorQuantityStepperApiscopePartScopeserviceQuantityStepperServicesnapshotAccessor<QuantityStepperSnapshot>- Name
connector- Kind
- property
- Type
QuantityStepperApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
QuantityStepperService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
Accessor<QuantityStepperSnapshot>- Requirement
- required
Value
functionexport declare function Value(props?: QuantityStepperValueProps): JSX.Element;propsQuantityStepperValuePropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
QuantityStepperValueProps- Requirement
- optional
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a