DocsAPI referenceHeadlesstoggle-button

toggle-button 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/toggle-button

Core connector and vanilla API

19 exports
View source packages/ui-headless/core/src/toggle-button/index.ts
DeclarationView source
connectToggleButtonts
declare function connectToggleButton(service: ToggleButtonService, scope: PartScope, options?: ToggleButtonConnectOptions): ToggleButtonApi;
Name
Kind
Type
Requirement
service
parameter
ToggleButtonService
required
scope
parameter
PartScope
required
options
parameter
ToggleButtonConnectOptions
optional
return
return value
ToggleButtonApi
n/a
Name
service
Kind
parameter
Type
ToggleButtonService
Requirement
required
Name
scope
Kind
parameter
Type
PartScope
Requirement
required
Name
options
Kind
parameter
Type
ToggleButtonConnectOptions
Requirement
optional
Name
return
Kind
return value
Type
ToggleButtonApi
Requirement
n/a
DeclarationView source
mountToggleButtonts
declare function mountToggleButton(container: HTMLElement, options?: MountToggleButtonOptions): ToggleButtonMount;
Name
Kind
Type
Requirement
container
parameter
HTMLElement
required
options
parameter
MountToggleButtonOptions
optional
return
return value
ToggleButtonMount
n/a
Name
container
Kind
parameter
Type
HTMLElement
Requirement
required
Name
options
Kind
parameter
Type
MountToggleButtonOptions
Requirement
optional
Name
return
Kind
return value
Type
ToggleButtonMount
Requirement
n/a
DeclarationView source
MountToggleButtonOptionsts
interface MountToggleButtonOptions extends ToggleButtonInput, ToggleButtonConnectOptions {}
DeclarationView source
runToggleButtonCommandts
declare function runToggleButtonCommand(command: ToggleButtonCommand, options?: Pick<ToggleButtonConnectOptions, "onPressedChange">): void;
Name
Kind
Type
Requirement
command
parameter
ToggleButtonCommand
required
options
parameter
Pick<ToggleButtonConnectOptions, "onPressedChange">
optional
return
return value
void
n/a
Name
command
Kind
parameter
Type
ToggleButtonCommand
Requirement
required
Name
options
Kind
parameter
Type
Pick<ToggleButtonConnectOptions, "onPressedChange">
Requirement
optional
Name
return
Kind
return value
Type
void
Requirement
n/a
DeclarationView source
toggleButtonAnatomyts
export declare const toggleButtonAnatomy: {
readonly scope: "toggle-button";
readonly parts: readonly ["root"];
};
Name
Kind
Type
Requirement
parts
property
readonly ["root"]
required
scope
property
"toggle-button"
required
Name
parts
Kind
property
Type
readonly ["root"]
Requirement
required
Name
scope
Kind
property
Type
"toggle-button"
Requirement
required

ToggleButtonApi

interface
DeclarationView source
ToggleButtonApits
interface ToggleButtonApi {
rootProps(): PartProps;
readonly pressed: boolean;
readonly disabled: boolean;
}
Name
Kind
Type
Requirement
disabled
property
boolean
required
pressed
property
boolean
required
rootProps
method
() => PartProps
required
Name
disabled
Kind
property
Type
boolean
Requirement
required
Name
pressed
Kind
property
Type
boolean
Requirement
required
Name
rootProps
Kind
method
Type
() => PartProps
Requirement
required
DeclarationView source
ToggleButtonChangeDetailts
interface ToggleButtonChangeDetail {
readonly pressed: boolean;
readonly reason: "pointer" | "keyboard" | "programmatic";
}
Name
Kind
Type
Requirement
pressed
property
boolean
required
reason
property
"pointer" | "keyboard" | "programmatic"
required
Name
pressed
Kind
property
Type
boolean
Requirement
required
Name
reason
Kind
property
Type
"pointer" | "keyboard" | "programmatic"
Requirement
required
DeclarationView source
ToggleButtonCommandts
type ToggleButtonCommand = CommandObject & {
readonly type: "PRESSED_CHANGE_REQUEST";
readonly pressed: boolean;
readonly reason: ToggleButtonReason;
};
Name
Kind
Type
Requirement
pressed
property
boolean
required
reason
property
ToggleButtonReason
required
type
property
string
required
Name
pressed
Kind
property
Type
boolean
Requirement
required
Name
reason
Kind
property
Type
ToggleButtonReason
Requirement
required
Name
type
Kind
property
Type
string
Requirement
required
DeclarationView source
ToggleButtonConnectOptionsts
interface ToggleButtonConnectOptions {
readonly ariaLabel?: string;
readonly onPressedChange?: (detail: ToggleButtonChangeDetail) => void;
}
Name
Kind
Type
Requirement
ariaLabel
property
string
optional
onPressedChange
property
(detail: ToggleButtonChangeDetail) => void
optional
Name
ariaLabel
Kind
property
Type
string
Requirement
optional
Name
onPressedChange
Kind
property
Type
(detail: ToggleButtonChangeDetail) => void
Requirement
optional
DeclarationView source
ToggleButtonContextts
type ToggleButtonContext = {
readonly mode: BindingMode;
readonly pressed: boolean;
};
Name
Kind
Type
Requirement
mode
property
BindingMode
required
pressed
property
boolean
required
Name
mode
Kind
property
Type
BindingMode
Requirement
required
Name
pressed
Kind
property
Type
boolean
Requirement
required
DeclarationView source
ToggleButtonEventts
type ToggleButtonEvent = {
readonly type: "PRESS";
readonly reason: ToggleButtonReason;
} | {
readonly type: "RESET";
};
DeclarationView source
ToggleButtonInputts
type ToggleButtonInput = {
readonly pressed?: boolean;
readonly defaultPressed?: boolean;
readonly disabled?: boolean;
};
Name
Kind
Type
Requirement
defaultPressed
property
boolean
optional
disabled
property
boolean
optional
pressed
property
boolean
optional
Name
defaultPressed
Kind
property
Type
boolean
Requirement
optional
Name
disabled
Kind
property
Type
boolean
Requirement
optional
Name
pressed
Kind
property
Type
boolean
Requirement
optional
DeclarationView source
toggleButtonMachinets
export declare const toggleButtonMachine: Machine<ToggleButtonInput, "ready", ToggleButtonContext, ToggleButtonEvent, ToggleButtonCommand>;

ToggleButtonMount

interface
DeclarationView source
ToggleButtonMountts
interface ToggleButtonMount {
readonly service: ToggleButtonService;
readonly connector: ToggleButtonApi;
readonly root: HTMLButtonElement;
destroy(): void;
}
Name
Kind
Type
Requirement
connector
property
ToggleButtonApi
required
destroy
method
() => void
required
root
property
HTMLButtonElement
required
service
property
ToggleButtonService
required
Name
connector
Kind
property
Type
ToggleButtonApi
Requirement
required
Name
destroy
Kind
method
Type
() => void
Requirement
required
Name
root
Kind
property
Type
HTMLButtonElement
Requirement
required
Name
service
Kind
property
Type
ToggleButtonService
Requirement
required
DeclarationView source
ToggleButtonPartts
type ToggleButtonPart = (typeof toggleButtonAnatomy.parts)[number];
DeclarationView source
ToggleButtonReasonts
type ToggleButtonReason = "pointer" | "keyboard" | "programmatic";
DeclarationView source
toggleButtonSelectorsts
export declare const toggleButtonSelectors: {
pressed: (snapshot: ToggleButtonSnapshot) => boolean;
};
Name
Kind
Type
Requirement
pressed
property
(snapshot: ToggleButtonSnapshot) => boolean
required
Name
pressed
Kind
property
Type
(snapshot: ToggleButtonSnapshot) => boolean
Requirement
required
DeclarationView source
ToggleButtonServicets
type ToggleButtonService = Service<ToggleButtonInput, "ready", ToggleButtonContext, ToggleButtonEvent, ToggleButtonCommand>;
DeclarationView source
ToggleButtonSnapshotts
type ToggleButtonSnapshot = Snapshot<"ready", ToggleButtonContext>;

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 example follows below.

React imports

@grassroot/ui-headless-react/toggle-buttonts
import { Root, RootProvider, ToggleButtonRoot, ToggleButtonRootProvider } from "@grassroot/ui-headless-react/toggle-button";

Vue imports

@grassroot/ui-headless-vue/toggle-buttonts
<script setup lang="ts">
import { Root, RootProvider, ToggleButtonRoot, ToggleButtonRootProvider } from "@grassroot/ui-headless-vue/toggle-button";
</script>

Angular imports

@grassroot/ui-headless-angular/toggle-buttonts
import { GrToggleButtonRoot, GrToggleButtonRootProvider, Root, RootProvider } from "@grassroot/ui-headless-angular/toggle-button";

Svelte imports

@grassroot/ui-headless-svelte/toggle-buttonts
<script lang="ts">
import { Root, RootProvider, ToggleButtonRoot, ToggleButtonRootProvider } from "@grassroot/ui-headless-svelte/toggle-button";
</script>

Solid imports

@grassroot/ui-headless-solid/toggle-buttonts
import { Root, RootProvider, ToggleButtonRoot, ToggleButtonRootProvider } from "@grassroot/ui-headless-solid/toggle-button";

@grassroot/ui-headless-react/toggle-button

React adapter

9 exports
View source packages/ui-headless/react/src/toggle-button/index.ts

Root

value
DeclarationView source
Rootts
export declare const Root: import("react").ForwardRefExoticComponent<ToggleButtonRootProps & import("react").RefAttributes<HTMLButtonElement>>;
Name
Kind
Type
Requirement
props
parameter
P
required
return
return value
ReactNode
n/a
Name
props
Kind
parameter
Type
P
Requirement
required
Name
return
Kind
return value
Type
ReactNode
Requirement
n/a

RootProvider

value
DeclarationView source
RootProviderts
export declare const RootProvider: import("react").ForwardRefExoticComponent<ToggleButtonRootProviderProps & import("react").RefAttributes<HTMLButtonElement>>;
Name
Kind
Type
Requirement
props
parameter
P
required
return
return value
ReactNode
n/a
Name
props
Kind
parameter
Type
P
Requirement
required
Name
return
Kind
return value
Type
ReactNode
Requirement
n/a
DeclarationView source
ToggleButtonRootts
export declare const ToggleButtonRoot: import("react").ForwardRefExoticComponent<ToggleButtonRootProps & import("react").RefAttributes<HTMLButtonElement>>;
Name
Kind
Type
Requirement
props
parameter
P
required
return
return value
ReactNode
n/a
Name
props
Kind
parameter
Type
P
Requirement
required
Name
return
Kind
return value
Type
ReactNode
Requirement
n/a
DeclarationView source
ToggleButtonRootPropsts
interface ToggleButtonRootProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, "defaultValue" | "onChange" | "disabled">, ToggleButtonInput {
readonly ariaLabel?: string;
readonly id?: string;
readonly onPressedChange?: (detail: ToggleButtonChangeDetail) => void;
readonly children?: ReactNode;
}
Name
Kind
Type
Requirement
ariaLabel
property
string
optional
children
property
ReactNode
optional
id
property
string
optional
onPressedChange
property
(detail: ToggleButtonChangeDetail) => void
optional
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
onPressedChange
Kind
property
Type
(detail: ToggleButtonChangeDetail) => void
Requirement
optional
DeclarationView source
ToggleButtonRootProviderts
export declare const ToggleButtonRootProvider: import("react").ForwardRefExoticComponent<ToggleButtonRootProviderProps & import("react").RefAttributes<HTMLButtonElement>>;
Name
Kind
Type
Requirement
props
parameter
P
required
return
return value
ReactNode
n/a
Name
props
Kind
parameter
Type
P
Requirement
required
Name
return
Kind
return value
Type
ReactNode
Requirement
n/a
DeclarationView source
ToggleButtonRootProviderPropsts
interface ToggleButtonRootProviderProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, "defaultValue" | "onChange" | "value"> {
readonly value: UseToggleButtonResult;
readonly children?: ReactNode;
}
Name
Kind
Type
Requirement
children
property
ReactNode
optional
value
property
UseToggleButtonResult
required
Name
children
Kind
property
Type
ReactNode
Requirement
optional
Name
value
Kind
property
Type
UseToggleButtonResult
Requirement
required

useToggleButton

function
DeclarationView source
useToggleButtonts
declare function useToggleButton(input: ToggleButtonInput, options?: UseToggleButtonOptions): UseToggleButtonResult;
Name
Kind
Type
Requirement
input
parameter
ToggleButtonInput
required
options
parameter
UseToggleButtonOptions
optional
return
return value
UseToggleButtonResult
n/a
Name
input
Kind
parameter
Type
ToggleButtonInput
Requirement
required
Name
options
Kind
parameter
Type
UseToggleButtonOptions
Requirement
optional
Name
return
Kind
return value
Type
UseToggleButtonResult
Requirement
n/a
DeclarationView source
UseToggleButtonOptionsts
interface UseToggleButtonOptions extends ToggleButtonConnectOptions {
readonly id?: string;
}
Name
Kind
Type
Requirement
id
property
string
optional
Name
id
Kind
property
Type
string
Requirement
optional
DeclarationView source
UseToggleButtonResultts
interface UseToggleButtonResult {
readonly service: ToggleButtonService;
readonly connector: ToggleButtonApi;
readonly scope: PartScope;
readonly snapshot: ToggleButtonSnapshot;
}
Name
Kind
Type
Requirement
connector
property
ToggleButtonApi
required
scope
property
PartScope
required
service
property
ToggleButtonService
required
snapshot
property
ToggleButtonSnapshot
required
Name
connector
Kind
property
Type
ToggleButtonApi
Requirement
required
Name
scope
Kind
property
Type
PartScope
Requirement
required
Name
service
Kind
property
Type
ToggleButtonService
Requirement
required
Name
snapshot
Kind
property
Type
ToggleButtonSnapshot
Requirement
required

@grassroot/ui-headless-vue/toggle-button

Vue adapter

7 exports
View source packages/ui-headless/vue/src/toggle-button/index.ts

Root

value
DeclarationView source
Rootts
export declare const Root: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
asChild: {
type: BooleanConstructor;
default: boolean;
};
pressed: {
type: PropType<boolean | undefined>;
default: undefined;
};
defaultPressed: {
type: PropType<boolean | undefined>;
default: undefined;
};
disabled: {
type: PropType<boolean | undefined>;
default: undefined;
};
ariaLabel: StringConstructor;
id: StringConstructor;
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
pressedChange: (_detail: ToggleButtonChangeDetail) => true;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
asChild: {
type: BooleanConstructor;
default: boolean;
};
pressed: {
type: PropType<boolean | undefined>;
default: undefined;
};
defaultPressed: {
type: PropType<boolean | undefined>;
default: undefined;
};
disabled: {
type: PropType<boolean | undefined>;
default: undefined;
};
ariaLabel: StringConstructor;
id: StringConstructor;
}>> & Readonly<{
onPressedChange?: ((_detail: ToggleButtonChangeDetail) => any) | undefined;
}>, {
asChild: boolean;
pressed: boolean | undefined;
defaultPressed: boolean | undefined;
disabled: boolean | undefined;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;

RootProvider

value
DeclarationView source
RootProviderts
export declare const RootProvider: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
value: {
type: PropType<UseToggleButtonResult>;
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<{
value: {
type: PropType<UseToggleButtonResult>;
required: true;
};
}>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
DeclarationView source
ToggleButtonOptionsts
type ToggleButtonOptions = ToggleButtonConnectOptions & {
readonly id?: string;
};
Name
Kind
Type
Requirement
id
property
string
optional
Name
id
Kind
property
Type
string
Requirement
optional
DeclarationView source
ToggleButtonRootts
export declare const ToggleButtonRoot: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
asChild: {
type: BooleanConstructor;
default: boolean;
};
pressed: {
type: PropType<boolean | undefined>;
default: undefined;
};
defaultPressed: {
type: PropType<boolean | undefined>;
default: undefined;
};
disabled: {
type: PropType<boolean | undefined>;
default: undefined;
};
ariaLabel: StringConstructor;
id: StringConstructor;
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
pressedChange: (_detail: ToggleButtonChangeDetail) => true;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
asChild: {
type: BooleanConstructor;
default: boolean;
};
pressed: {
type: PropType<boolean | undefined>;
default: undefined;
};
defaultPressed: {
type: PropType<boolean | undefined>;
default: undefined;
};
disabled: {
type: PropType<boolean | undefined>;
default: undefined;
};
ariaLabel: StringConstructor;
id: StringConstructor;
}>> & Readonly<{
onPressedChange?: ((_detail: ToggleButtonChangeDetail) => any) | undefined;
}>, {
asChild: boolean;
pressed: boolean | undefined;
defaultPressed: boolean | undefined;
disabled: boolean | undefined;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
DeclarationView source
ToggleButtonRootProviderts
export declare const ToggleButtonRootProvider: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
value: {
type: PropType<UseToggleButtonResult>;
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<{
value: {
type: PropType<UseToggleButtonResult>;
required: true;
};
}>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;

useToggleButton

function
DeclarationView source
useToggleButtonts
declare function useToggleButton(input: () => ToggleButtonInput, options?: () => ToggleButtonOptions): UseToggleButtonResult;
Name
Kind
Type
Requirement
input
parameter
() => ToggleButtonInput
required
options
parameter
() => ToggleButtonOptions
optional
return
return value
UseToggleButtonResult
n/a
Name
input
Kind
parameter
Type
() => ToggleButtonInput
Requirement
required
Name
options
Kind
parameter
Type
() => ToggleButtonOptions
Requirement
optional
Name
return
Kind
return value
Type
UseToggleButtonResult
Requirement
n/a
DeclarationView source
UseToggleButtonResultts
interface UseToggleButtonResult {
readonly service: ToggleButtonService;
readonly connector: ToggleButtonApi;
readonly scope: PartScope;
readonly snapshot: ShallowRef<ToggleButtonSnapshot>;
}
Name
Kind
Type
Requirement
connector
property
ToggleButtonApi
required
scope
property
PartScope
required
service
property
ToggleButtonService
required
snapshot
property
ShallowRef<ToggleButtonSnapshot>
required
Name
connector
Kind
property
Type
ToggleButtonApi
Requirement
required
Name
scope
Kind
property
Type
PartScope
Requirement
required
Name
service
Kind
property
Type
ToggleButtonService
Requirement
required
Name
snapshot
Kind
property
Type
ShallowRef<ToggleButtonSnapshot>
Requirement
required

@grassroot/ui-headless-angular/toggle-button

Angular adapter

7 exports
View source packages/ui-headless/angular/src/toggle-button/index.ts
DeclarationView source
createToggleButtonStorets
export declare function createToggleButtonStore(initial: ToggleButtonInput, options?: CreateToggleButtonStoreOptions): ToggleButtonStore;
Name
Kind
Type
Requirement
initial
parameter
ToggleButtonInput
required
options
parameter
CreateToggleButtonStoreOptions
optional
return
return value
ToggleButtonStore
n/a
Name
initial
Kind
parameter
Type
ToggleButtonInput
Requirement
required
Name
options
Kind
parameter
Type
CreateToggleButtonStoreOptions
Requirement
optional
Name
return
Kind
return value
Type
ToggleButtonStore
Requirement
n/a
DeclarationView source
CreateToggleButtonStoreOptionsts
export interface CreateToggleButtonStoreOptions extends ToggleButtonConnectOptions {
}
DeclarationView source
GrToggleButtonRootts
export declare class GrToggleButtonRoot implements OnDestroy {
readonly pressed: import("@angular/core").InputSignal<boolean | undefined>;
readonly defaultPressed: import("@angular/core").InputSignal<boolean | undefined>;
readonly disabled: import("@angular/core").InputSignal<boolean | undefined>;
readonly ariaLabel: import("@angular/core").InputSignal<string | undefined>;
readonly pressedChange: import("@angular/core").OutputEmitterRef<ToggleButtonChangeDetail>;
readonly store: ToggleButtonStore;
private readonly host;
private readonly listeners;
private readonly consumer;
private last;
constructor();
ngOnDestroy(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<GrToggleButtonRoot, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<GrToggleButtonRoot, "gr-toggle-button-root", never, { "pressed": { "alias": "pressed"; "required": false; "isSignal": true; }; "defaultPressed": { "alias": "defaultPressed"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "pressedChange": "pressedChange"; }, never, ["*"], true, never>;
}
Name
Kind
Type
Requirement
ariaLabel
property
import("@angular/core").InputSignal<string | undefined>
required
consumer
property
any
required
defaultPressed
property
import("@angular/core").InputSignal<boolean | undefined>
required
disabled
property
import("@angular/core").InputSignal<boolean | undefined>
required
host
property
any
required
last
property
any
required
listeners
property
any
required
ngOnDestroy
method
() => void
required
ɵcmp
property
i0.ɵɵComponentDeclaration<GrToggleButtonRoot, "gr-toggle-button-root", never, { "pressed": { "alias": "pressed"; "required": false; "isSignal": true; }; "defaultPressed": { "alias": "defaultPressed"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "pressedChange": "pressedChange"; }, never, ["*"], true, never>
required
ɵfac
property
i0.ɵɵFactoryDeclaration<GrToggleButtonRoot, never>
required
pressed
property
import("@angular/core").InputSignal<boolean | undefined>
required
pressedChange
property
import("@angular/core").OutputEmitterRef<ToggleButtonChangeDetail>
required
store
property
ToggleButtonStore
required
Name
ariaLabel
Kind
property
Type
import("@angular/core").InputSignal<string | undefined>
Requirement
required
Name
consumer
Kind
property
Type
any
Requirement
required
Name
defaultPressed
Kind
property
Type
import("@angular/core").InputSignal<boolean | 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
ngOnDestroy
Kind
method
Type
() => void
Requirement
required
Name
ɵcmp
Kind
property
Type
i0.ɵɵComponentDeclaration<GrToggleButtonRoot, "gr-toggle-button-root", never, { "pressed": { "alias": "pressed"; "required": false; "isSignal": true; }; "defaultPressed": { "alias": "defaultPressed"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "pressedChange": "pressedChange"; }, never, ["*"], true, never>
Requirement
required
Name
ɵfac
Kind
property
Type
i0.ɵɵFactoryDeclaration<GrToggleButtonRoot, never>
Requirement
required
Name
pressed
Kind
property
Type
import("@angular/core").InputSignal<boolean | undefined>
Requirement
required
Name
pressedChange
Kind
property
Type
import("@angular/core").OutputEmitterRef<ToggleButtonChangeDetail>
Requirement
required
Name
store
Kind
property
Type
ToggleButtonStore
Requirement
required
DeclarationView source
GrToggleButtonRootProviderts
export declare class GrToggleButtonRootProvider implements OnDestroy {
private readonly store;
private readonly host;
private readonly listeners;
constructor();
ngOnDestroy(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<GrToggleButtonRootProvider, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<GrToggleButtonRootProvider, "gr-toggle-button-root-provider", never, {}, {}, never, ["*"], true, never>;
}
Name
Kind
Type
Requirement
host
property
any
required
listeners
property
any
required
ngOnDestroy
method
() => void
required
ɵcmp
property
i0.ɵɵComponentDeclaration<GrToggleButtonRootProvider, "gr-toggle-button-root-provider", never, {}, {}, never, ["*"], true, never>
required
ɵfac
property
i0.ɵɵFactoryDeclaration<GrToggleButtonRootProvider, never>
required
store
property
any
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
ɵcmp
Kind
property
Type
i0.ɵɵComponentDeclaration<GrToggleButtonRootProvider, "gr-toggle-button-root-provider", never, {}, {}, never, ["*"], true, never>
Requirement
required
Name
ɵfac
Kind
property
Type
i0.ɵɵFactoryDeclaration<GrToggleButtonRootProvider, never>
Requirement
required
Name
store
Kind
property
Type
any
Requirement
required

Root

class
DeclarationView source
Rootts
export declare class GrToggleButtonRoot implements OnDestroy {
readonly pressed: import("@angular/core").InputSignal<boolean | undefined>;
readonly defaultPressed: import("@angular/core").InputSignal<boolean | undefined>;
readonly disabled: import("@angular/core").InputSignal<boolean | undefined>;
readonly ariaLabel: import("@angular/core").InputSignal<string | undefined>;
readonly pressedChange: import("@angular/core").OutputEmitterRef<ToggleButtonChangeDetail>;
readonly store: ToggleButtonStore;
private readonly host;
private readonly listeners;
private readonly consumer;
private last;
constructor();
ngOnDestroy(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<GrToggleButtonRoot, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<GrToggleButtonRoot, "gr-toggle-button-root", never, { "pressed": { "alias": "pressed"; "required": false; "isSignal": true; }; "defaultPressed": { "alias": "defaultPressed"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "pressedChange": "pressedChange"; }, never, ["*"], true, never>;
}
Name
Kind
Type
Requirement
ariaLabel
property
import("@angular/core").InputSignal<string | undefined>
required
consumer
property
any
required
defaultPressed
property
import("@angular/core").InputSignal<boolean | undefined>
required
disabled
property
import("@angular/core").InputSignal<boolean | undefined>
required
host
property
any
required
last
property
any
required
listeners
property
any
required
ngOnDestroy
method
() => void
required
ɵcmp
property
i0.ɵɵComponentDeclaration<GrToggleButtonRoot, "gr-toggle-button-root", never, { "pressed": { "alias": "pressed"; "required": false; "isSignal": true; }; "defaultPressed": { "alias": "defaultPressed"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "pressedChange": "pressedChange"; }, never, ["*"], true, never>
required
ɵfac
property
i0.ɵɵFactoryDeclaration<GrToggleButtonRoot, never>
required
pressed
property
import("@angular/core").InputSignal<boolean | undefined>
required
pressedChange
property
import("@angular/core").OutputEmitterRef<ToggleButtonChangeDetail>
required
store
property
ToggleButtonStore
required
Name
ariaLabel
Kind
property
Type
import("@angular/core").InputSignal<string | undefined>
Requirement
required
Name
consumer
Kind
property
Type
any
Requirement
required
Name
defaultPressed
Kind
property
Type
import("@angular/core").InputSignal<boolean | 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
ngOnDestroy
Kind
method
Type
() => void
Requirement
required
Name
ɵcmp
Kind
property
Type
i0.ɵɵComponentDeclaration<GrToggleButtonRoot, "gr-toggle-button-root", never, { "pressed": { "alias": "pressed"; "required": false; "isSignal": true; }; "defaultPressed": { "alias": "defaultPressed"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "pressedChange": "pressedChange"; }, never, ["*"], true, never>
Requirement
required
Name
ɵfac
Kind
property
Type
i0.ɵɵFactoryDeclaration<GrToggleButtonRoot, never>
Requirement
required
Name
pressed
Kind
property
Type
import("@angular/core").InputSignal<boolean | undefined>
Requirement
required
Name
pressedChange
Kind
property
Type
import("@angular/core").OutputEmitterRef<ToggleButtonChangeDetail>
Requirement
required
Name
store
Kind
property
Type
ToggleButtonStore
Requirement
required

RootProvider

class
DeclarationView source
RootProviderts
export declare class GrToggleButtonRootProvider implements OnDestroy {
private readonly store;
private readonly host;
private readonly listeners;
constructor();
ngOnDestroy(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<GrToggleButtonRootProvider, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<GrToggleButtonRootProvider, "gr-toggle-button-root-provider", never, {}, {}, never, ["*"], true, never>;
}
Name
Kind
Type
Requirement
host
property
any
required
listeners
property
any
required
ngOnDestroy
method
() => void
required
ɵcmp
property
i0.ɵɵComponentDeclaration<GrToggleButtonRootProvider, "gr-toggle-button-root-provider", never, {}, {}, never, ["*"], true, never>
required
ɵfac
property
i0.ɵɵFactoryDeclaration<GrToggleButtonRootProvider, never>
required
store
property
any
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
ɵcmp
Kind
property
Type
i0.ɵɵComponentDeclaration<GrToggleButtonRootProvider, "gr-toggle-button-root-provider", never, {}, {}, never, ["*"], true, never>
Requirement
required
Name
ɵfac
Kind
property
Type
i0.ɵɵFactoryDeclaration<GrToggleButtonRootProvider, never>
Requirement
required
Name
store
Kind
property
Type
any
Requirement
required

ToggleButtonStore

interface
DeclarationView source
ToggleButtonStorets
export interface ToggleButtonStore {
readonly service: ToggleButtonService;
readonly connector: ToggleButtonApi;
readonly scope: PartScope;
readonly version: WritableSignal<number>;
start(): void;
stop(): void;
sync(input: Record<string, unknown>): void;
}
Name
Kind
Type
Requirement
connector
property
ToggleButtonApi
required
scope
property
PartScope
required
service
property
ToggleButtonService
required
start
method
() => void
required
stop
method
() => void
required
sync
method
(input: Record<string, unknown>) => void
required
version
property
WritableSignal<number>
required
Name
connector
Kind
property
Type
ToggleButtonApi
Requirement
required
Name
scope
Kind
property
Type
PartScope
Requirement
required
Name
service
Kind
property
Type
ToggleButtonService
Requirement
required
Name
start
Kind
method
Type
() => void
Requirement
required
Name
stop
Kind
method
Type
() => void
Requirement
required
Name
sync
Kind
method
Type
(input: Record<string, unknown>) => void
Requirement
required
Name
version
Kind
property
Type
WritableSignal<number>
Requirement
required

@grassroot/ui-headless-svelte/toggle-button

Svelte adapter

7 exports
View source packages/ui-headless/svelte/src/toggle-button/index.ts
DeclarationView source
createToggleButtonts
export declare function createToggleButton(input: () => ToggleButtonInput, options?: UseToggleButtonOptions): UseToggleButtonResult;
Name
Kind
Type
Requirement
input
parameter
() => ToggleButtonInput
required
options
parameter
UseToggleButtonOptions
optional
return
return value
UseToggleButtonResult
n/a
Name
input
Kind
parameter
Type
() => ToggleButtonInput
Requirement
required
Name
options
Kind
parameter
Type
UseToggleButtonOptions
Requirement
optional
Name
return
Kind
return value
Type
UseToggleButtonResult
Requirement
n/a

Root

value
DeclarationView source
Rootts
export declare const Root: LegacyComponentType;
Name
Kind
Type
Requirement
args
parameter
Parameters<Component<Record<string, any>>>
optional
return
return value
ReturnType<Component<Record<string, any>, Record<string, any>>>
n/a
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

value
DeclarationView source
RootProviderts
export declare const RootProvider: LegacyComponentType;
Name
Kind
Type
Requirement
args
parameter
Parameters<Component<Record<string, any>>>
optional
return
return value
ReturnType<Component<Record<string, any>, Record<string, any>>>
n/a
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
DeclarationView source
ToggleButtonRootts
export declare const ToggleButtonRoot: LegacyComponentType;
Name
Kind
Type
Requirement
args
parameter
Parameters<Component<Record<string, any>>>
optional
return
return value
ReturnType<Component<Record<string, any>, Record<string, any>>>
n/a
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
DeclarationView source
ToggleButtonRootProviderts
export declare const ToggleButtonRootProvider: LegacyComponentType;
Name
Kind
Type
Requirement
args
parameter
Parameters<Component<Record<string, any>>>
optional
return
return value
ReturnType<Component<Record<string, any>, Record<string, any>>>
n/a
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
DeclarationView source
UseToggleButtonOptionsts
export interface UseToggleButtonOptions extends ToggleButtonConnectOptions {
readonly id?: string;
}
Name
Kind
Type
Requirement
id
property
string
optional
Name
id
Kind
property
Type
string
Requirement
optional
DeclarationView source
UseToggleButtonResultts
export interface UseToggleButtonResult {
readonly service: ToggleButtonService;
readonly connector: ToggleButtonApi;
readonly scope: PartScope;
readonly version: () => number;
}
Name
Kind
Type
Requirement
connector
property
ToggleButtonApi
required
scope
property
PartScope
required
service
property
ToggleButtonService
required
version
property
() => number
required
Name
connector
Kind
property
Type
ToggleButtonApi
Requirement
required
Name
scope
Kind
property
Type
PartScope
Requirement
required
Name
service
Kind
property
Type
ToggleButtonService
Requirement
required
Name
version
Kind
property
Type
() => number
Requirement
required

@grassroot/ui-headless-solid/toggle-button

Solid adapter

9 exports
View source packages/ui-headless/solid/src/toggle-button/index.ts

Root

function
DeclarationView source
Rootts
export declare function ToggleButtonRoot(props: ToggleButtonRootProps): JSX.Element;
Name
Kind
Type
Requirement
props
parameter
ToggleButtonRootProps
required
return
return value
JSX.Element
n/a
Name
props
Kind
parameter
Type
ToggleButtonRootProps
Requirement
required
Name
return
Kind
return value
Type
JSX.Element
Requirement
n/a

RootProvider

function
DeclarationView source
RootProviderts
export declare function ToggleButtonRootProvider(props: ToggleButtonRootProviderProps): JSX.Element;
Name
Kind
Type
Requirement
props
parameter
ToggleButtonRootProviderProps
required
return
return value
JSX.Element
n/a
Name
props
Kind
parameter
Type
ToggleButtonRootProviderProps
Requirement
required
Name
return
Kind
return value
Type
JSX.Element
Requirement
n/a

ToggleButtonRoot

function
DeclarationView source
ToggleButtonRootts
export declare function ToggleButtonRoot(props: ToggleButtonRootProps): JSX.Element;
Name
Kind
Type
Requirement
props
parameter
ToggleButtonRootProps
required
return
return value
JSX.Element
n/a
Name
props
Kind
parameter
Type
ToggleButtonRootProps
Requirement
required
Name
return
Kind
return value
Type
JSX.Element
Requirement
n/a
DeclarationView source
ToggleButtonRootPropsts
export interface ToggleButtonRootProps extends Omit<JSX.ButtonHTMLAttributes<HTMLButtonElement>, "disabled" | "onChange">, ToggleButtonInput {
readonly ariaLabel?: string;
readonly id?: string;
readonly onPressedChange?: (detail: ToggleButtonChangeDetail) => void;
readonly children?: JSX.Element;
}
Name
Kind
Type
Requirement
ariaLabel
property
string
optional
children
property
JSX.Element
optional
id
property
string
optional
onPressedChange
property
(detail: ToggleButtonChangeDetail) => void
optional
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
onPressedChange
Kind
property
Type
(detail: ToggleButtonChangeDetail) => void
Requirement
optional
DeclarationView source
ToggleButtonRootProviderts
export declare function ToggleButtonRootProvider(props: ToggleButtonRootProviderProps): JSX.Element;
Name
Kind
Type
Requirement
props
parameter
ToggleButtonRootProviderProps
required
return
return value
JSX.Element
n/a
Name
props
Kind
parameter
Type
ToggleButtonRootProviderProps
Requirement
required
Name
return
Kind
return value
Type
JSX.Element
Requirement
n/a
DeclarationView source
ToggleButtonRootProviderPropsts
export interface ToggleButtonRootProviderProps extends Omit<JSX.ButtonHTMLAttributes<HTMLButtonElement>, "disabled" | "onChange" | "value"> {
readonly value: UseToggleButtonResult;
readonly children?: JSX.Element;
}
Name
Kind
Type
Requirement
children
property
JSX.Element
optional
value
property
UseToggleButtonResult
required
Name
children
Kind
property
Type
JSX.Element
Requirement
optional
Name
value
Kind
property
Type
UseToggleButtonResult
Requirement
required

useToggleButton

function
DeclarationView source
useToggleButtonts
export declare function useToggleButton(input: Accessor<ToggleButtonInput>, options?: UseToggleButtonOptions): UseToggleButtonResult;
Name
Kind
Type
Requirement
input
parameter
Accessor<ToggleButtonInput>
required
options
parameter
UseToggleButtonOptions
optional
return
return value
UseToggleButtonResult
n/a
Name
input
Kind
parameter
Type
Accessor<ToggleButtonInput>
Requirement
required
Name
options
Kind
parameter
Type
UseToggleButtonOptions
Requirement
optional
Name
return
Kind
return value
Type
UseToggleButtonResult
Requirement
n/a
DeclarationView source
UseToggleButtonOptionsts
export interface UseToggleButtonOptions extends ToggleButtonConnectOptions {
readonly id?: string;
}
Name
Kind
Type
Requirement
id
property
string
optional
Name
id
Kind
property
Type
string
Requirement
optional
DeclarationView source
UseToggleButtonResultts
export interface UseToggleButtonResult {
readonly service: ToggleButtonService;
readonly connector: ToggleButtonApi;
readonly scope: PartScope;
readonly snapshot: () => number;
}
Name
Kind
Type
Requirement
connector
property
ToggleButtonApi
required
scope
property
PartScope
required
service
property
ToggleButtonService
required
snapshot
property
() => number
required
Name
connector
Kind
property
Type
ToggleButtonApi
Requirement
required
Name
scope
Kind
property
Type
PartScope
Requirement
required
Name
service
Kind
property
Type
ToggleButtonService
Requirement
required
Name
snapshot
Kind
property
Type
() => number
Requirement
required