- Name
service- Kind
- parameter
- Type
NavigationMenuService<TContent>- Requirement
- required
Docs/API reference/Headless/navigation-menu
navigation-menu 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.
104 of 104
@grassroot/ui-headless-core/navigation-menu
Core connector and vanilla API
View source
packages/ui-headless/core/src/navigation-menu/index.ts
activateNavigationMenuLayer
functionDeclarationView source
activateNavigationMenuLayerts
declare function activateNavigationMenuLayer<TContent>(service: NavigationMenuService<TContent>, scope: PartScope, doc: Document): () => void;Name
Kind
Type
Requirement
serviceparameter
NavigationMenuService<TContent>required
scopeparameter
PartScoperequired
docparameter
Documentrequired
returnreturn value
() => voidn/a
- Name
scope- Kind
- parameter
- Type
PartScope- Requirement
- required
- Name
doc- Kind
- parameter
- Type
Document- Requirement
- required
- Name
return- Kind
- return value
- Type
() => void- Requirement
- n/a
connectNavigationMenu
functionDeclarationView source
connectNavigationMenuts
declare function connectNavigationMenu<TContent = string>(service: NavigationMenuService<TContent>, scope: PartScope, options?: NavigationMenuConnectOptions): NavigationMenuApi<TContent>;Name
Kind
Type
Requirement
serviceparameter
NavigationMenuService<TContent>required
scopeparameter
PartScoperequired
optionsparameter
NavigationMenuConnectOptionsoptional
returnreturn value
NavigationMenuApi<TContent>n/a
- Name
service- Kind
- parameter
- Type
NavigationMenuService<TContent>- Requirement
- required
- Name
scope- Kind
- parameter
- Type
PartScope- Requirement
- required
- Name
options- Kind
- parameter
- Type
NavigationMenuConnectOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
NavigationMenuApi<TContent>- Requirement
- n/a
mountNavigationMenu
functionDeclarationView source
mountNavigationMenuts
declare function mountNavigationMenu<TContent = string>(container: HTMLElement, options: MountNavigationMenuOptions<TContent>): NavigationMenuMount<TContent>;Name
Kind
Type
Requirement
containerparameter
HTMLElementrequired
optionsparameter
MountNavigationMenuOptions<TContent>required
returnreturn value
NavigationMenuMount<TContent>n/a
- Name
container- Kind
- parameter
- Type
HTMLElement- Requirement
- required
- Name
options- Kind
- parameter
- Type
MountNavigationMenuOptions<TContent>- Requirement
- required
- Name
return- Kind
- return value
- Type
NavigationMenuMount<TContent>- Requirement
- n/a
MountNavigationMenuOptions
interfaceDeclarationView source
MountNavigationMenuOptionsts
interface MountNavigationMenuOptions<TContent = string> extends Omit<NavigationMenuInput$1<TContent>, "items"> { readonly items: readonly NavigationMenuItem<TContent>[]; readonly onOpenChange?: (detail: NavigationMenuOpenChangeDetail) => void; readonly messages?: NavigationMenuConnectOptions["messages"]; readonly scheduler?: Scheduler; readonly renderTrigger?: (element: HTMLButtonElement, item: NavigationMenuItem<TContent>, index: number) => void; readonly renderLink?: (element: HTMLAnchorElement, link: NonNullable<NavigationMenuItem<TContent>["links"]>[number], index: number) => void;}Name
Kind
Type
Requirement
itemsproperty
readonly NavigationMenuItem<TContent>[]required
messagesproperty
NavigationMenuConnectOptions["messages"]optional
onOpenChangeproperty
(detail: NavigationMenuOpenChangeDetail) => voidoptional
renderLinkproperty
(element: HTMLAnchorElement, link: NonNullable<NavigationMenuItem<TContent>["links"]>[number], index: number) => voidoptional
renderTriggerproperty
(element: HTMLButtonElement, item: NavigationMenuItem<TContent>, index: number) => voidoptional
schedulerproperty
Scheduleroptional
- Name
items- Kind
- property
- Type
readonly NavigationMenuItem<TContent>[]- Requirement
- required
- Name
messages- Kind
- property
- Type
NavigationMenuConnectOptions["messages"]- Requirement
- optional
- Name
onOpenChange- Kind
- property
- Type
(detail: NavigationMenuOpenChangeDetail) => void- Requirement
- optional
- Name
renderLink- Kind
- property
- Type
(element: HTMLAnchorElement, link: NonNullable<NavigationMenuItem<TContent>["links"]>[number], index: number) => void- Requirement
- optional
- Name
renderTrigger- Kind
- property
- Type
(element: HTMLButtonElement, item: NavigationMenuItem<TContent>, index: number) => void- Requirement
- optional
- Name
scheduler- Kind
- property
- Type
Scheduler- Requirement
- optional
navigationMenuAnatomy
valueDeclarationView source
navigationMenuAnatomyts
export declare const navigationMenuAnatomy: { readonly scope: "navigation-menu"; readonly parts: readonly ["root", "list", "item", "trigger", "content", "link"];};Name
Kind
Type
Requirement
partsproperty
readonly ["root", "list", "item", "trigger", "content", "link"]required
scopeproperty
"navigation-menu"required
- Name
parts- Kind
- property
- Type
readonly ["root", "list", "item", "trigger", "content", "link"]- Requirement
- required
- Name
scope- Kind
- property
- Type
"navigation-menu"- Requirement
- required
NavigationMenuApi
interfaceDeclarationView source
NavigationMenuApits
interface NavigationMenuApi<TContent = string> { rootProps(): PartProps; listProps(): PartProps; itemProps(index: number): PartProps; triggerProps(index: number): PartProps; contentProps(index: number): PartProps; linkProps(index: number, linkIndex: number): PartProps; readonly open: number | null;}Name
Kind
Type
Requirement
contentPropsmethod
(index: number) => PartPropsrequired
itemPropsmethod
(index: number) => PartPropsrequired
linkPropsmethod
(index: number, linkIndex: number) => PartPropsrequired
listPropsmethod
() => PartPropsrequired
openproperty
number | nullrequired
rootPropsmethod
() => PartPropsrequired
triggerPropsmethod
(index: number) => PartPropsrequired
- Name
contentProps- Kind
- method
- Type
(index: number) => PartProps- Requirement
- required
- Name
itemProps- Kind
- method
- Type
(index: number) => PartProps- Requirement
- required
- Name
linkProps- Kind
- method
- Type
(index: number, linkIndex: number) => PartProps- Requirement
- required
- Name
listProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
open- Kind
- property
- Type
number | null- Requirement
- required
- Name
rootProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
triggerProps- Kind
- method
- Type
(index: number) => PartProps- Requirement
- required
DeclarationView source
NavigationMenuChangeReasonts
type NavigationMenuChangeReason = NavigationMenuOpenReason | NavigationMenuCloseReason;DeclarationView source
NavigationMenuCloseReasonts
type NavigationMenuCloseReason = "leave" | "escape" | "dismiss" | "programmatic" | "trigger" | "intent";DeclarationView source
NavigationMenuCommandts
type NavigationMenuCommand = (CommandObject & { readonly type: "OPEN_CHANGE_REQUEST"; readonly open: number | null; readonly reason: NavigationMenuChangeReason;}) | ScheduleCommand<NavigationMenuEvent> | CancelCommand;NavigationMenuConnectOptions
interfaceDeclarationView source
NavigationMenuConnectOptionsts
interface NavigationMenuConnectOptions { readonly onOpenChange?: (detail: { open: number | null; reason: NavigationMenuChangeReason; }) => void; readonly messages?: Partial<NavigationMenuMessages>;}Name
Kind
Type
Requirement
messagesproperty
Partial<NavigationMenuMessages>optional
onOpenChangeproperty
(detail: {
open: number | null;
reason: NavigationMenuChangeReason;
}) => voidoptional
- Name
messages- Kind
- property
- Type
Partial<NavigationMenuMessages>- Requirement
- optional
- Name
onOpenChange- Kind
- property
- Type
(detail: { open: number | null; reason: NavigationMenuChangeReason; }) => void- Requirement
- optional
DeclarationView source
NavigationMenuContextts
type NavigationMenuContext = { readonly open: number | null; readonly mode: "controlled" | "uncontrolled";};Name
Kind
Type
Requirement
modeproperty
"controlled" | "uncontrolled"required
openproperty
number | nullrequired
- Name
mode- Kind
- property
- Type
"controlled" | "uncontrolled"- Requirement
- required
- Name
open- Kind
- property
- Type
number | null- Requirement
- required
NavigationMenuEvent
typeDeclarationView source
NavigationMenuEventts
type NavigationMenuEvent = { readonly type: "OPEN"; readonly index: number; readonly reason: NavigationMenuOpenReason;} | { readonly type: "TOGGLE"; readonly index: number; readonly reason: "trigger";} | { readonly type: "CLOSE"; readonly reason: NavigationMenuCloseReason;} | { readonly type: "HOVER"; readonly index: number; readonly intent?: NavigationMenuPointerIntent;} | { readonly type: "FOCUS"; readonly index: number;} | { readonly type: "CLICK"; readonly index: number;} | { readonly type: "LEAVE"; readonly intent?: NavigationMenuPointerIntent;} | { readonly type: "ESCAPE";} | { readonly type: "DISMISS";};NavigationMenuInput
typeDeclarationView source
NavigationMenuInputts
type NavigationMenuInput<TContent = string> = Omit<NavigationMenuInput$1, "items"> & { readonly items: readonly NavigationMenuItem<TContent>[];};Name
Kind
Type
Requirement
itemsproperty
readonly NavigationMenuItem<TContent>[]required
- Name
items- Kind
- property
- Type
readonly NavigationMenuItem<TContent>[]- Requirement
- required
NavigationMenuItem
interfaceDeclarationView source
NavigationMenuItemts
interface NavigationMenuItem<TContent = string> { readonly label: TContent; readonly links?: readonly NavigationMenuLink<TContent>[]; readonly href?: string; readonly active?: boolean;}Name
Kind
Type
Requirement
activeproperty
booleanoptional
hrefproperty
stringoptional
labelproperty
TContentrequired
linksproperty
readonly NavigationMenuLink<TContent>[]optional
- Name
active- Kind
- property
- Type
boolean- Requirement
- optional
- Name
href- Kind
- property
- Type
string- Requirement
- optional
- Name
label- Kind
- property
- Type
TContent- Requirement
- required
- Name
links- Kind
- property
- Type
readonly NavigationMenuLink<TContent>[]- Requirement
- optional
NavigationMenuLink
interfaceDeclarationView source
NavigationMenuLinkts
interface NavigationMenuLink<TContent = string> { readonly label: TContent; readonly description?: TContent; readonly href?: string;}Name
Kind
Type
Requirement
descriptionproperty
TContentoptional
hrefproperty
stringoptional
labelproperty
TContentrequired
- Name
description- Kind
- property
- Type
TContent- Requirement
- optional
- Name
href- Kind
- property
- Type
string- Requirement
- optional
- Name
label- Kind
- property
- Type
TContent- Requirement
- required
navigationMenuMachine
valueDeclarationView source
navigationMenuMachinets
export declare const navigationMenuMachine: NavigationMenuMachine;NavigationMenuMachineItem
interfaceDeclarationView source
NavigationMenuMachineItemts
interface NavigationMenuMachineItem<TContent = string> extends NavigationMenuItem<TContent> { readonly hasPanel: boolean;}Name
Kind
Type
Requirement
hasPanelproperty
booleanrequired
- Name
hasPanel- Kind
- property
- Type
boolean- Requirement
- required
navigationMenuMessages
valueDeclarationView source
navigationMenuMessagests
export declare const navigationMenuMessages: NavigationMenuMessages;DeclarationView source
NavigationMenuMessagests
type NavigationMenuMessages = Pick<MessageTable, "root">;NavigationMenuMount
interfaceDeclarationView source
NavigationMenuMountts
interface NavigationMenuMount<TContent = string> { readonly service: NavigationMenuService<TContent>; readonly connector: NavigationMenuApi<TContent>; readonly root: HTMLElement; destroy(): void;}Name
Kind
Type
Requirement
connectorproperty
NavigationMenuApi<TContent>required
destroymethod
() => voidrequired
rootproperty
HTMLElementrequired
serviceproperty
NavigationMenuService<TContent>required
- Name
connector- Kind
- property
- Type
NavigationMenuApi<TContent>- Requirement
- required
- Name
destroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
root- Kind
- property
- Type
HTMLElement- Requirement
- required
- Name
service- Kind
- property
- Type
NavigationMenuService<TContent>- Requirement
- required
NavigationMenuOpenChangeDetail
interfaceDeclarationView source
NavigationMenuOpenChangeDetailts
interface NavigationMenuOpenChangeDetail { readonly open: number | null; readonly reason: NavigationMenuChangeReason;}Name
Kind
Type
Requirement
openproperty
number | nullrequired
reasonproperty
NavigationMenuChangeReasonrequired
- Name
open- Kind
- property
- Type
number | null- Requirement
- required
- Name
reason- Kind
- property
- Type
NavigationMenuChangeReason- Requirement
- required
DeclarationView source
NavigationMenuOpenReasonts
type NavigationMenuOpenReason = "programmatic" | "focus" | "hover" | "intent";NavigationMenuPart
typeDeclarationView source
NavigationMenuPartts
type NavigationMenuPart = (typeof parts)[number];DeclarationView source
NavigationMenuPointerIntentts
type NavigationMenuPointerIntent = "enter" | "preserve" | "leave";navigationMenuSelectors
valueDeclarationView source
navigationMenuSelectorsts
export declare const navigationMenuSelectors: { open: (snapshot: NavigationMenuSnapshot) => number | null; isOpen: (snapshot: NavigationMenuSnapshot, index: number) => boolean;};Name
Kind
Type
Requirement
isOpenproperty
(snapshot: NavigationMenuSnapshot, index: number) => booleanrequired
openproperty
(snapshot: NavigationMenuSnapshot) => number | nullrequired
- Name
isOpen- Kind
- property
- Type
(snapshot: NavigationMenuSnapshot, index: number) => boolean- Requirement
- required
- Name
open- Kind
- property
- Type
(snapshot: NavigationMenuSnapshot) => number | null- Requirement
- required
DeclarationView source
NavigationMenuServicets
type NavigationMenuService<_TContent = string> = Service<NavigationMenuInput$1, NavigationMenuStateValue, NavigationMenuContext, NavigationMenuEvent, NavigationMenuCommand>;DeclarationView source
NavigationMenuSnapshotts
type NavigationMenuSnapshot = Snapshot<NavigationMenuStateValue, NavigationMenuContext>;DeclarationView source
NavigationMenuStateValuets
type NavigationMenuStateValue = "ready";normalizeNavigationMenuInput
functionDeclarationView source
normalizeNavigationMenuInputts
declare function normalizeNavigationMenuInput<TContent>(input: NavigationMenuInput<TContent>): NavigationMenuMachineInput<TContent>;Name
Kind
Type
Requirement
inputparameter
NavigationMenuInput<TContent>required
returnreturn value
NavigationMenuMachineInput<TContent>n/a
- Name
input- Kind
- parameter
- Type
NavigationMenuInput<TContent>- Requirement
- required
- Name
return- Kind
- return value
- Type
NavigationMenuMachineInput<TContent>- Requirement
- n/a
runNavigationMenuCommand
functionDeclarationView source
runNavigationMenuCommandts
declare function runNavigationMenuCommand<TContent>(command: NavigationMenuCommand, _scope: PartScope, options?: NavigationMenuConnectOptions): void;Name
Kind
Type
Requirement
commandparameter
NavigationMenuCommandrequired
_scopeparameter
PartScoperequired
optionsparameter
NavigationMenuConnectOptionsoptional
returnreturn value
voidn/a
- Name
command- Kind
- parameter
- Type
NavigationMenuCommand- Requirement
- required
- Name
_scope- Kind
- parameter
- Type
PartScope- Requirement
- required
- Name
options- Kind
- parameter
- Type
NavigationMenuConnectOptions- 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 example follows below.
Vue example follows below.
Angular example follows below.
Svelte example follows below.
Solid example follows below.
React imports
@grassroot/ui-headless-react/navigation-menuts
1
import { Content, Item, Link, List, NavigationMenu, Root, Trigger } from "@grassroot/ui-headless-react/navigation-menu";Vue imports
@grassroot/ui-headless-vue/navigation-menuts
1
2
3
<script setup lang="ts">import { Content, Item, Link, List, NavigationMenu, Root, Trigger } from "@grassroot/ui-headless-vue/navigation-menu";</script>Angular imports
@grassroot/ui-headless-angular/navigation-menuts
1
2
3
4
5
import { Component } from "@angular/core";import { GR_NAVIGATION_MENU_DECLARATIONS } from "@grassroot/ui-headless-angular/navigation-menu"; @Component({ standalone: true, imports: [GR_NAVIGATION_MENU_DECLARATIONS], template: `<!-- compose the navigation-menu parts here -->` })export class Example {}Svelte imports
@grassroot/ui-headless-svelte/navigation-menuts
1
2
3
<script lang="ts"> import { Content, Item, Link, List, NavigationMenu, Root, Trigger } from "@grassroot/ui-headless-svelte/navigation-menu";</script>Solid imports
@grassroot/ui-headless-solid/navigation-menuts
1
import { Content, Item, Link, List, NavigationMenu, Root, Trigger } from "@grassroot/ui-headless-solid/navigation-menu";@grassroot/ui-headless-react/navigation-menu
React adapter
View source
packages/ui-headless/react/src/navigation-menu/index.ts
Content
valueDeclarationView source
Contentts
export declare const Content: import("react").ForwardRefExoticComponent<NavigationMenuContentProps & import("react").RefAttributes<HTMLDivElement>>;Name
Kind
Type
Requirement
propsparameter
Prequired
returnreturn value
ReactNoden/a
- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
Item
valueDeclarationView source
Itemts
export declare const Item: import("react").ForwardRefExoticComponent<NavigationMenuItemProps & import("react").RefAttributes<HTMLLIElement>>;Name
Kind
Type
Requirement
propsparameter
Prequired
returnreturn value
ReactNoden/a
- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
Link
valueDeclarationView source
Linkts
export declare const Link: import("react").ForwardRefExoticComponent<NavigationMenuLinkProps & import("react").RefAttributes<HTMLAnchorElement>>;Name
Kind
Type
Requirement
propsparameter
Prequired
returnreturn value
ReactNoden/a
- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
List
valueDeclarationView source
Listts
export declare const List: import("react").ForwardRefExoticComponent<NavigationMenuListProps & import("react").RefAttributes<HTMLUListElement>>;Name
Kind
Type
Requirement
propsparameter
Prequired
returnreturn value
ReactNoden/a
- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
NavigationMenu
valueDeclarationView source
NavigationMenuts
export declare const NavigationMenu: { Root: typeof Root; List: import("react").ForwardRefExoticComponent<NavigationMenuListProps & import("react").RefAttributes<HTMLUListElement>>; Item: import("react").ForwardRefExoticComponent<NavigationMenuItemProps & import("react").RefAttributes<HTMLLIElement>>; Trigger: import("react").ForwardRefExoticComponent<NavigationMenuTriggerProps & import("react").RefAttributes<HTMLButtonElement>>; Content: import("react").ForwardRefExoticComponent<NavigationMenuContentProps & import("react").RefAttributes<HTMLDivElement>>; Link: import("react").ForwardRefExoticComponent<NavigationMenuLinkProps & import("react").RefAttributes<HTMLAnchorElement>>;};Name
Kind
Type
Requirement
Contentproperty
import("react").ForwardRefExoticComponent<NavigationMenuContentProps & import("react").RefAttributes<HTMLDivElement>>required
Itemproperty
import("react").ForwardRefExoticComponent<NavigationMenuItemProps & import("react").RefAttributes<HTMLLIElement>>required
Linkproperty
import("react").ForwardRefExoticComponent<NavigationMenuLinkProps & import("react").RefAttributes<HTMLAnchorElement>>required
Listproperty
import("react").ForwardRefExoticComponent<NavigationMenuListProps & import("react").RefAttributes<HTMLUListElement>>required
Rootproperty
typeof Rootrequired
Triggerproperty
import("react").ForwardRefExoticComponent<NavigationMenuTriggerProps & import("react").RefAttributes<HTMLButtonElement>>required
- Name
Content- Kind
- property
- Type
import("react").ForwardRefExoticComponent<NavigationMenuContentProps & import("react").RefAttributes<HTMLDivElement>>- Requirement
- required
- Name
Item- Kind
- property
- Type
import("react").ForwardRefExoticComponent<NavigationMenuItemProps & import("react").RefAttributes<HTMLLIElement>>- Requirement
- required
- Name
Link- Kind
- property
- Type
import("react").ForwardRefExoticComponent<NavigationMenuLinkProps & import("react").RefAttributes<HTMLAnchorElement>>- Requirement
- required
- Name
List- Kind
- property
- Type
import("react").ForwardRefExoticComponent<NavigationMenuListProps & import("react").RefAttributes<HTMLUListElement>>- Requirement
- required
- Name
Root- Kind
- property
- Type
typeof Root- Requirement
- required
- Name
Trigger- Kind
- property
- Type
import("react").ForwardRefExoticComponent<NavigationMenuTriggerProps & import("react").RefAttributes<HTMLButtonElement>>- Requirement
- required
NavigationMenuContentProps
interfaceDeclarationView source
NavigationMenuContentPropsts
interface NavigationMenuContentProps extends ComponentPropsWithoutRef<"div"> { readonly asChild?: boolean; readonly index: number; readonly item: NavigationMenuItem;}Name
Kind
Type
Requirement
asChildproperty
booleanoptional
indexproperty
numberrequired
itemproperty
NavigationMenuItemrequired
- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
- Name
index- Kind
- property
- Type
number- Requirement
- required
- Name
item- Kind
- property
- Type
NavigationMenuItem- Requirement
- required
NavigationMenuContext
valueDeclarationView source
NavigationMenuContextts
export declare const NavigationMenuContext: import("react").Context<NavigationMenuContextValue | null>;Name
Kind
Type
Requirement
propsparameter
Prequired
returnreturn value
ReactNoden/a
- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
NavigationMenuContextValue
interfaceDeclarationView source
NavigationMenuContextValuets
interface NavigationMenuContextValue { readonly service: NavigationMenuService; readonly connector: NavigationMenuApi; readonly scope: PartScope;}Name
Kind
Type
Requirement
connectorproperty
NavigationMenuApirequired
scopeproperty
PartScoperequired
serviceproperty
NavigationMenuServicerequired
- Name
connector- Kind
- property
- Type
NavigationMenuApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
NavigationMenuService- Requirement
- required
NavigationMenuItemProps
interfaceDeclarationView source
NavigationMenuItemPropsts
interface NavigationMenuItemProps extends ComponentPropsWithoutRef<"li"> { readonly asChild?: boolean; readonly index: number; readonly item: NavigationMenuItem;}Name
Kind
Type
Requirement
asChildproperty
booleanoptional
indexproperty
numberrequired
itemproperty
NavigationMenuItemrequired
- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
- Name
index- Kind
- property
- Type
number- Requirement
- required
- Name
item- Kind
- property
- Type
NavigationMenuItem- Requirement
- required
NavigationMenuLinkProps
interfaceDeclarationView source
NavigationMenuLinkPropsts
interface NavigationMenuLinkProps extends ComponentPropsWithoutRef<"a"> { readonly asChild?: boolean; readonly index: number; readonly linkIndex: number; readonly link: NavigationMenuLink;}Name
Kind
Type
Requirement
asChildproperty
booleanoptional
indexproperty
numberrequired
linkproperty
NavigationMenuLinkrequired
linkIndexproperty
numberrequired
- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
- Name
index- Kind
- property
- Type
number- Requirement
- required
- Name
link- Kind
- property
- Type
NavigationMenuLink- Requirement
- required
- Name
linkIndex- Kind
- property
- Type
number- Requirement
- required
NavigationMenuListProps
interfaceDeclarationView source
NavigationMenuListPropsts
interface NavigationMenuListProps extends ComponentPropsWithoutRef<"ul"> { readonly asChild?: boolean;}Name
Kind
Type
Requirement
asChildproperty
booleanoptional
- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
NavigationMenuOpenChangeDetail
interfaceDeclarationView source
NavigationMenuOpenChangeDetailts
interface NavigationMenuOpenChangeDetail { readonly open: number | null; readonly reason: NavigationMenuChangeReason;}Name
Kind
Type
Requirement
openproperty
number | nullrequired
reasonproperty
NavigationMenuChangeReasonrequired
- Name
open- Kind
- property
- Type
number | null- Requirement
- required
- Name
reason- Kind
- property
- Type
NavigationMenuChangeReason- Requirement
- required
NavigationMenuRootProps
interfaceDeclarationView source
NavigationMenuRootPropsts
interface NavigationMenuRootProps { readonly open?: NavigationMenuInput["open"]; readonly defaultOpen?: NavigationMenuInput["defaultOpen"]; readonly items: readonly NavigationMenuItem[]; readonly intentDelayMs?: NavigationMenuInput["intentDelayMs"]; readonly onOpenChange?: (detail: NavigationMenuOpenChangeDetail) => void; readonly scheduler?: UseNavigationMenuOptions["scheduler"]; readonly asChild?: boolean; readonly children?: ReactNode;}Name
Kind
Type
Requirement
asChildproperty
booleanoptional
childrenproperty
ReactNodeoptional
defaultOpenproperty
NavigationMenuInput["defaultOpen"]optional
intentDelayMsproperty
NavigationMenuInput["intentDelayMs"]optional
itemsproperty
readonly NavigationMenuItem[]required
onOpenChangeproperty
(detail: NavigationMenuOpenChangeDetail) => voidoptional
openproperty
NavigationMenuInput["open"]optional
schedulerproperty
UseNavigationMenuOptions["scheduler"]optional
- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
- Name
children- Kind
- property
- Type
ReactNode- Requirement
- optional
- Name
defaultOpen- Kind
- property
- Type
NavigationMenuInput["defaultOpen"]- Requirement
- optional
- Name
intentDelayMs- Kind
- property
- Type
NavigationMenuInput["intentDelayMs"]- Requirement
- optional
- Name
items- Kind
- property
- Type
readonly NavigationMenuItem[]- Requirement
- required
- Name
onOpenChange- Kind
- property
- Type
(detail: NavigationMenuOpenChangeDetail) => void- Requirement
- optional
- Name
open- Kind
- property
- Type
NavigationMenuInput["open"]- Requirement
- optional
- Name
scheduler- Kind
- property
- Type
UseNavigationMenuOptions["scheduler"]- Requirement
- optional
NavigationMenuTriggerProps
interfaceDeclarationView source
NavigationMenuTriggerPropsts
interface NavigationMenuTriggerProps extends ComponentPropsWithoutRef<"button"> { readonly asChild?: boolean; readonly index: number; readonly item: NavigationMenuItem;}Name
Kind
Type
Requirement
asChildproperty
booleanoptional
indexproperty
numberrequired
itemproperty
NavigationMenuItemrequired
- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
- Name
index- Kind
- property
- Type
number- Requirement
- required
- Name
item- Kind
- property
- Type
NavigationMenuItem- Requirement
- required
Root
functionDeclarationView source
Rootts
declare function Root(props: NavigationMenuRootProps): import("react").JSX.Element;Name
Kind
Type
Requirement
propsparameter
NavigationMenuRootPropsrequired
returnreturn value
import("react").JSX.Elementn/a
- Name
props- Kind
- parameter
- Type
NavigationMenuRootProps- Requirement
- required
- Name
return- Kind
- return value
- Type
import("react").JSX.Element- Requirement
- n/a
Trigger
valueDeclarationView source
Triggerts
export declare const Trigger: import("react").ForwardRefExoticComponent<NavigationMenuTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;Name
Kind
Type
Requirement
propsparameter
Prequired
returnreturn value
ReactNoden/a
- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
useNavigationMenu
functionDeclarationView source
useNavigationMenuts
declare function useNavigationMenu(input: Omit<NavigationMenuInput, "items"> & { readonly items: readonly NavigationMenuItem[];}, options?: UseNavigationMenuOptions): UseNavigationMenuResult;Name
Kind
Type
Requirement
inputparameter
Omit<NavigationMenuInput, "items"> & {
readonly items: readonly NavigationMenuItem[];
}required
optionsparameter
UseNavigationMenuOptionsoptional
returnreturn value
UseNavigationMenuResultn/a
- Name
input- Kind
- parameter
- Type
Omit<NavigationMenuInput, "items"> & { readonly items: readonly NavigationMenuItem[]; }- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseNavigationMenuOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseNavigationMenuResult- Requirement
- n/a
useNavigationMenuContext
functionDeclarationView source
useNavigationMenuContextts
declare function useNavigationMenuContext(partName: string): NavigationMenuContextValue;Name
Kind
Type
Requirement
partNameparameter
stringrequired
returnreturn value
NavigationMenuContextValuen/a
- Name
partName- Kind
- parameter
- Type
string- Requirement
- required
- Name
return- Kind
- return value
- Type
NavigationMenuContextValue- Requirement
- n/a
UseNavigationMenuOptions
interfaceDeclarationView source
UseNavigationMenuOptionsts
interface UseNavigationMenuOptions { readonly onOpenChange?: (detail: NavigationMenuOpenChangeDetail) => void; readonly scheduler?: Scheduler;}Name
Kind
Type
Requirement
onOpenChangeproperty
(detail: NavigationMenuOpenChangeDetail) => voidoptional
schedulerproperty
Scheduleroptional
- Name
onOpenChange- Kind
- property
- Type
(detail: NavigationMenuOpenChangeDetail) => void- Requirement
- optional
- Name
scheduler- Kind
- property
- Type
Scheduler- Requirement
- optional
UseNavigationMenuResult
interfaceDeclarationView source
UseNavigationMenuResultts
interface UseNavigationMenuResult { readonly service: NavigationMenuService; readonly connector: NavigationMenuApi; readonly scope: PartScope; readonly snapshot: NavigationMenuSnapshot;}Name
Kind
Type
Requirement
connectorproperty
NavigationMenuApirequired
scopeproperty
PartScoperequired
serviceproperty
NavigationMenuServicerequired
snapshotproperty
NavigationMenuSnapshotrequired
- Name
connector- Kind
- property
- Type
NavigationMenuApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
NavigationMenuService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
NavigationMenuSnapshot- Requirement
- required
useServiceVersion
functionSubscribes a component to a service's committed-snapshot version.
DeclarationView source
useServiceVersionts
declare function useServiceVersion<S extends Service<any, any, any, any, any, any>>(service: S): ReturnType<S["getSnapshot"]>;Name
Kind
Type
Requirement
serviceparameter
Srequired
returnreturn value
ReturnType<S["getSnapshot"]>n/a
- Name
service- Kind
- parameter
- Type
S- Requirement
- required
- Name
return- Kind
- return value
- Type
ReturnType<S["getSnapshot"]>- Requirement
- n/a
@grassroot/ui-headless-vue/navigation-menu
Vue adapter
View source
packages/ui-headless/vue/src/navigation-menu/index.ts
Content
valueDeclarationView source
Contentts
export declare const Content: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; }; item: { type: PropType<NavigationMenuItem$1>; 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; }; index: { type: NumberConstructor; required: true; }; item: { type: PropType<NavigationMenuItem$1>; required: true; };}>> & Readonly<{}>, { asChild: boolean;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;Item
valueDeclarationView source
Itemts
export declare const Item: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; }; item: { type: PropType<NavigationMenuItem$1>; 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; }; index: { type: NumberConstructor; required: true; }; item: { type: PropType<NavigationMenuItem$1>; required: true; };}>> & Readonly<{}>, { asChild: boolean;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;Link
valueDeclarationView source
Linkts
export declare const Link: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; }; linkIndex: { type: NumberConstructor; required: true; }; link: { type: PropType<NavigationMenuLink$1>; 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; }; index: { type: NumberConstructor; required: true; }; linkIndex: { type: NumberConstructor; required: true; }; link: { type: PropType<NavigationMenuLink$1>; required: true; };}>> & Readonly<{}>, { asChild: boolean;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;List
valueDeclarationView source
Listts
export declare const List: 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>;NavigationMenu
valueDeclarationView source
NavigationMenuts
export declare const NavigationMenu: { Root: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; open: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["open"]>; default: undefined; }; defaultOpen: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["defaultOpen"]>; default: undefined; }; items: { type: import("vue").PropType<readonly import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem[]>; required: true; }; intentDelayMs: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["intentDelayMs"]>; default: undefined; }; scheduler: { type: import("vue").PropType<UseNavigationMenuOptions["scheduler"]>; default: undefined; }; }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any; }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { openChange: (_detail: NavigationMenuOpenChangeDetail) => true; }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; open: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["open"]>; default: undefined; }; defaultOpen: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["defaultOpen"]>; default: undefined; }; items: { type: import("vue").PropType<readonly import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem[]>; required: true; }; intentDelayMs: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["intentDelayMs"]>; default: undefined; }; scheduler: { type: import("vue").PropType<UseNavigationMenuOptions["scheduler"]>; default: undefined; }; }>> & Readonly<{ onOpenChange?: ((_detail: NavigationMenuOpenChangeDetail) => any) | undefined; }>, { asChild: boolean; open: number | null | undefined; defaultOpen: number | null | undefined; intentDelayMs: number | undefined; scheduler: import("@grassroot/statechart/scheduler").Scheduler | undefined; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; List: 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>; Item: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; }; item: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>; 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; }; index: { type: NumberConstructor; required: true; }; item: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>; required: true; }; }>> & Readonly<{}>, { asChild: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; Trigger: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; }; item: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>; 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; }; index: { type: NumberConstructor; required: true; }; item: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>; required: true; }; }>> & Readonly<{}>, { asChild: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; Content: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; }; item: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>; 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; }; index: { type: NumberConstructor; required: true; }; item: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>; required: true; }; }>> & Readonly<{}>, { asChild: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; Link: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; }; linkIndex: { type: NumberConstructor; required: true; }; link: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuLink>; 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; }; index: { type: NumberConstructor; required: true; }; linkIndex: { type: NumberConstructor; required: true; }; link: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuLink>; required: true; }; }>> & Readonly<{}>, { asChild: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;};Name
Kind
Type
Requirement
Contentproperty
import("vue").DefineComponent<import("vue").ExtractPropTypes<{
asChild: {
type: BooleanConstructor;
default: boolean;
};
index: {
type: NumberConstructor;
required: true;
};
item: {
type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>;
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;
};
index: {
type: NumberConstructor;
required: true;
};
item: {
type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>;
required: true;
};
}>> & Readonly<{}>, {
asChild: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>required
Itemproperty
import("vue").DefineComponent<import("vue").ExtractPropTypes<{
asChild: {
type: BooleanConstructor;
default: boolean;
};
index: {
type: NumberConstructor;
required: true;
};
item: {
type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>;
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;
};
index: {
type: NumberConstructor;
required: true;
};
item: {
type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>;
required: true;
};
}>> & Readonly<{}>, {
asChild: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>required
Linkproperty
import("vue").DefineComponent<import("vue").ExtractPropTypes<{
asChild: {
type: BooleanConstructor;
default: boolean;
};
index: {
type: NumberConstructor;
required: true;
};
linkIndex: {
type: NumberConstructor;
required: true;
};
link: {
type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuLink>;
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;
};
index: {
type: NumberConstructor;
required: true;
};
linkIndex: {
type: NumberConstructor;
required: true;
};
link: {
type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuLink>;
required: true;
};
}>> & Readonly<{}>, {
asChild: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>required
Listproperty
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>required
Rootproperty
import("vue").DefineComponent<import("vue").ExtractPropTypes<{
asChild: {
type: BooleanConstructor;
default: boolean;
};
open: {
type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["open"]>;
default: undefined;
};
defaultOpen: {
type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["defaultOpen"]>;
default: undefined;
};
items: {
type: import("vue").PropType<readonly import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem[]>;
required: true;
};
intentDelayMs: {
type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["intentDelayMs"]>;
default: undefined;
};
scheduler: {
type: import("vue").PropType<UseNavigationMenuOptions["scheduler"]>;
default: undefined;
};
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
openChange: (_detail: NavigationMenuOpenChangeDetail) => true;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
asChild: {
type: BooleanConstructor;
default: boolean;
};
open: {
type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["open"]>;
default: undefined;
};
defaultOpen: {
type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["defaultOpen"]>;
default: undefined;
};
items: {
type: import("vue").PropType<readonly import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem[]>;
required: true;
};
intentDelayMs: {
type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["intentDelayMs"]>;
default: undefined;
};
scheduler: {
type: import("vue").PropType<UseNavigationMenuOptions["scheduler"]>;
default: undefined;
};
}>> & Readonly<{
onOpenChange?: ((_detail: NavigationMenuOpenChangeDetail) => any) | undefined;
}>, {
asChild: boolean;
open: number | null | undefined;
defaultOpen: number | null | undefined;
intentDelayMs: number | undefined;
scheduler: import("@grassroot/statechart/scheduler").Scheduler | undefined;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>required
Triggerproperty
import("vue").DefineComponent<import("vue").ExtractPropTypes<{
asChild: {
type: BooleanConstructor;
default: boolean;
};
index: {
type: NumberConstructor;
required: true;
};
item: {
type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>;
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;
};
index: {
type: NumberConstructor;
required: true;
};
item: {
type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>;
required: true;
};
}>> & Readonly<{}>, {
asChild: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>required
- Name
Content- Kind
- property
- Type
import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; }; item: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>; 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; }; index: { type: NumberConstructor; required: true; }; item: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>; required: true; }; }>> & Readonly<{}>, { asChild: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>- Requirement
- required
- Name
Item- Kind
- property
- Type
import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; }; item: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>; 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; }; index: { type: NumberConstructor; required: true; }; item: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>; required: true; }; }>> & Readonly<{}>, { asChild: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>- Requirement
- required
- Name
Link- Kind
- property
- Type
import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; }; linkIndex: { type: NumberConstructor; required: true; }; link: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuLink>; 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; }; index: { type: NumberConstructor; required: true; }; linkIndex: { type: NumberConstructor; required: true; }; link: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuLink>; required: true; }; }>> & Readonly<{}>, { asChild: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>- Requirement
- required
- Name
List- Kind
- property
- Type
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>- Requirement
- required
- Name
Root- Kind
- property
- Type
import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; open: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["open"]>; default: undefined; }; defaultOpen: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["defaultOpen"]>; default: undefined; }; items: { type: import("vue").PropType<readonly import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem[]>; required: true; }; intentDelayMs: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["intentDelayMs"]>; default: undefined; }; scheduler: { type: import("vue").PropType<UseNavigationMenuOptions["scheduler"]>; default: undefined; }; }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any; }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { openChange: (_detail: NavigationMenuOpenChangeDetail) => true; }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; open: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["open"]>; default: undefined; }; defaultOpen: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["defaultOpen"]>; default: undefined; }; items: { type: import("vue").PropType<readonly import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem[]>; required: true; }; intentDelayMs: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuInput["intentDelayMs"]>; default: undefined; }; scheduler: { type: import("vue").PropType<UseNavigationMenuOptions["scheduler"]>; default: undefined; }; }>> & Readonly<{ onOpenChange?: ((_detail: NavigationMenuOpenChangeDetail) => any) | undefined; }>, { asChild: boolean; open: number | null | undefined; defaultOpen: number | null | undefined; intentDelayMs: number | undefined; scheduler: import("@grassroot/statechart/scheduler").Scheduler | undefined; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>- Requirement
- required
- Name
Trigger- Kind
- property
- Type
import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; }; item: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>; 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; }; index: { type: NumberConstructor; required: true; }; item: { type: import("vue").PropType<import("@grassroot/ui-headless-core/navigation-menu").NavigationMenuItem>; required: true; }; }>> & Readonly<{}>, { asChild: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>- Requirement
- required
NavigationMenuContextKey
valueDeclarationView source
NavigationMenuContextKeyts
export declare const NavigationMenuContextKey: InjectionKey<NavigationMenuContextValue>;NavigationMenuContextValue
interfaceDeclarationView source
NavigationMenuContextValuets
interface NavigationMenuContextValue { readonly service: NavigationMenuService; readonly connector: NavigationMenuApi; readonly scope: PartScope; readonly snapshot: ShallowRef<NavigationMenuSnapshot>;}Name
Kind
Type
Requirement
connectorproperty
NavigationMenuApirequired
scopeproperty
PartScoperequired
serviceproperty
NavigationMenuServicerequired
snapshotproperty
ShallowRef<NavigationMenuSnapshot>required
- Name
connector- Kind
- property
- Type
NavigationMenuApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
NavigationMenuService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
ShallowRef<NavigationMenuSnapshot>- Requirement
- required
NavigationMenuOpenChangeDetail
interfaceDeclarationView source
NavigationMenuOpenChangeDetailts
interface NavigationMenuOpenChangeDetail { readonly open: number | null; readonly reason: NavigationMenuChangeReason;}Name
Kind
Type
Requirement
openproperty
number | nullrequired
reasonproperty
NavigationMenuChangeReasonrequired
- Name
open- Kind
- property
- Type
number | null- Requirement
- required
- Name
reason- Kind
- property
- Type
NavigationMenuChangeReason- Requirement
- required
Root
valueDeclarationView source
Rootts
export declare const Root: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; open: { type: PropType<NavigationMenuInput["open"]>; default: undefined; }; defaultOpen: { type: PropType<NavigationMenuInput["defaultOpen"]>; default: undefined; }; items: { type: PropType<readonly NavigationMenuItem[]>; required: true; }; intentDelayMs: { type: PropType<NavigationMenuInput["intentDelayMs"]>; default: undefined; }; scheduler: { type: PropType<UseNavigationMenuOptions["scheduler"]>; default: undefined; };}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any;}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { openChange: (_detail: NavigationMenuOpenChangeDetail) => true;}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; open: { type: PropType<NavigationMenuInput["open"]>; default: undefined; }; defaultOpen: { type: PropType<NavigationMenuInput["defaultOpen"]>; default: undefined; }; items: { type: PropType<readonly NavigationMenuItem[]>; required: true; }; intentDelayMs: { type: PropType<NavigationMenuInput["intentDelayMs"]>; default: undefined; }; scheduler: { type: PropType<UseNavigationMenuOptions["scheduler"]>; default: undefined; };}>> & Readonly<{ onOpenChange?: ((_detail: NavigationMenuOpenChangeDetail) => any) | undefined;}>, { asChild: boolean; open: number | null | undefined; defaultOpen: number | null | undefined; intentDelayMs: number | undefined; scheduler: import("@grassroot/statechart/scheduler").Scheduler | undefined;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;Trigger
valueDeclarationView source
Triggerts
export declare const Trigger: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; }; item: { type: PropType<NavigationMenuItem$1>; 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; }; index: { type: NumberConstructor; required: true; }; item: { type: PropType<NavigationMenuItem$1>; required: true; };}>> & Readonly<{}>, { asChild: boolean;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;useNavigationMenu
functionDeclarationView source
useNavigationMenuts
declare function useNavigationMenu(input: NavigationMenuInput | (() => NavigationMenuInput), options?: UseNavigationMenuOptions): UseNavigationMenuResult;Name
Kind
Type
Requirement
inputparameter
NavigationMenuInput | (() => NavigationMenuInput)required
optionsparameter
UseNavigationMenuOptionsoptional
returnreturn value
UseNavigationMenuResultn/a
- Name
input- Kind
- parameter
- Type
NavigationMenuInput | (() => NavigationMenuInput)- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseNavigationMenuOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseNavigationMenuResult- Requirement
- n/a
useNavigationMenuContext
functionDeclarationView source
useNavigationMenuContextts
declare function useNavigationMenuContext(partName: string): NavigationMenuContextValue;Name
Kind
Type
Requirement
partNameparameter
stringrequired
returnreturn value
NavigationMenuContextValuen/a
- Name
partName- Kind
- parameter
- Type
string- Requirement
- required
- Name
return- Kind
- return value
- Type
NavigationMenuContextValue- Requirement
- n/a
UseNavigationMenuOptions
interfaceDeclarationView source
UseNavigationMenuOptionsts
interface UseNavigationMenuOptions { readonly onOpenChange?: (detail: NavigationMenuOpenChangeDetail) => void; readonly scheduler?: Scheduler;}Name
Kind
Type
Requirement
onOpenChangeproperty
(detail: NavigationMenuOpenChangeDetail) => voidoptional
schedulerproperty
Scheduleroptional
- Name
onOpenChange- Kind
- property
- Type
(detail: NavigationMenuOpenChangeDetail) => void- Requirement
- optional
- Name
scheduler- Kind
- property
- Type
Scheduler- Requirement
- optional
UseNavigationMenuResult
interfaceDeclarationView source
UseNavigationMenuResultts
interface UseNavigationMenuResult { readonly service: NavigationMenuService; readonly connector: NavigationMenuApi; readonly scope: PartScope; readonly snapshot: ShallowRef<NavigationMenuSnapshot>;}Name
Kind
Type
Requirement
connectorproperty
NavigationMenuApirequired
scopeproperty
PartScoperequired
serviceproperty
NavigationMenuServicerequired
snapshotproperty
ShallowRef<NavigationMenuSnapshot>required
- Name
connector- Kind
- property
- Type
NavigationMenuApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
NavigationMenuService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
ShallowRef<NavigationMenuSnapshot>- Requirement
- required
@grassroot/ui-headless-angular/navigation-menu
Angular adapter
View source
packages/ui-headless/angular/src/navigation-menu/index.ts
createNavigationMenuStore
functionDeclarationView source
createNavigationMenuStorets
export declare function createNavigationMenuStore(initialInput: NavigationMenuInput, options?: CreateNavigationMenuStoreOptions): NavigationMenuStore;Name
Kind
Type
Requirement
initialInputparameter
NavigationMenuInputrequired
optionsparameter
CreateNavigationMenuStoreOptionsoptional
returnreturn value
NavigationMenuStoren/a
- Name
initialInput- Kind
- parameter
- Type
NavigationMenuInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
CreateNavigationMenuStoreOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
NavigationMenuStore- Requirement
- n/a
CreateNavigationMenuStoreOptions
interfaceDeclarationView source
CreateNavigationMenuStoreOptionsts
export interface CreateNavigationMenuStoreOptions { readonly onOpenChange?: (detail: NavigationMenuOpenChangeDetail) => void; readonly onCommit?: () => void; readonly scheduler?: Scheduler;}Name
Kind
Type
Requirement
onCommitproperty
() => voidoptional
onOpenChangeproperty
(detail: NavigationMenuOpenChangeDetail) => voidoptional
schedulerproperty
Scheduleroptional
- Name
onCommit- Kind
- property
- Type
() => void- Requirement
- optional
- Name
onOpenChange- Kind
- property
- Type
(detail: NavigationMenuOpenChangeDetail) => void- Requirement
- optional
- Name
scheduler- Kind
- property
- Type
Scheduler- Requirement
- optional
DeclarationView source
GR_NAVIGATION_MENU_DECLARATIONSts
export declare const GR_NAVIGATION_MENU_DECLARATIONS: readonly [typeof GrNavigationMenuRoot, typeof GrNavigationMenuList, typeof GrNavigationMenuItem, typeof GrNavigationMenuTrigger, typeof GrNavigationMenuContent, typeof GrNavigationMenuLink];GrNavigationMenuContent
classDeclarationView source
GrNavigationMenuContentts
export declare class GrNavigationMenuContent extends NavigationMenuPart { readonly index: import("@angular/core").InputSignal<number>; readonly item: import("@angular/core").InputSignal<NavigationMenuItem<string>>; private registered; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrNavigationMenuContent, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrNavigationMenuContent, "[grNavigationMenuContent]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; "item": { "alias": "item"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;}Name
Kind
Type
Requirement
indexproperty
import("@angular/core").InputSignal<number>required
itemproperty
import("@angular/core").InputSignal<NavigationMenuItem<string>>required
ngOnDestroymethod
() => voidrequired
ɵdirproperty
i0.ɵɵDirectiveDeclaration<GrNavigationMenuContent, "[grNavigationMenuContent]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; "item": { "alias": "item"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>required
ɵfacproperty
i0.ɵɵFactoryDeclaration<GrNavigationMenuContent, never>required
registeredproperty
anyrequired
- Name
index- Kind
- property
- Type
import("@angular/core").InputSignal<number>- Requirement
- required
- Name
item- Kind
- property
- Type
import("@angular/core").InputSignal<NavigationMenuItem<string>>- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrNavigationMenuContent, "[grNavigationMenuContent]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; "item": { "alias": "item"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrNavigationMenuContent, never>- Requirement
- required
- Name
registered- Kind
- property
- Type
any- Requirement
- required
GrNavigationMenuItem
classDeclarationView source
GrNavigationMenuItemts
export declare class GrNavigationMenuItem extends NavigationMenuPart { readonly index: import("@angular/core").InputSignal<number>; readonly item: import("@angular/core").InputSignal<NavigationMenuItem<string>>; private registered; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrNavigationMenuItem, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrNavigationMenuItem, "[grNavigationMenuItem]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; "item": { "alias": "item"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;}Name
Kind
Type
Requirement
indexproperty
import("@angular/core").InputSignal<number>required
itemproperty
import("@angular/core").InputSignal<NavigationMenuItem<string>>required
ngOnDestroymethod
() => voidrequired
ɵdirproperty
i0.ɵɵDirectiveDeclaration<GrNavigationMenuItem, "[grNavigationMenuItem]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; "item": { "alias": "item"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>required
ɵfacproperty
i0.ɵɵFactoryDeclaration<GrNavigationMenuItem, never>required
registeredproperty
anyrequired
- Name
index- Kind
- property
- Type
import("@angular/core").InputSignal<number>- Requirement
- required
- Name
item- Kind
- property
- Type
import("@angular/core").InputSignal<NavigationMenuItem<string>>- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrNavigationMenuItem, "[grNavigationMenuItem]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; "item": { "alias": "item"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrNavigationMenuItem, never>- Requirement
- required
- Name
registered- Kind
- property
- Type
any- Requirement
- required
GrNavigationMenuLink
classDeclarationView source
GrNavigationMenuLinkts
export declare class GrNavigationMenuLink extends NavigationMenuPart { readonly index: import("@angular/core").InputSignal<number>; readonly linkIndex: import("@angular/core").InputSignal<number>; readonly link: import("@angular/core").InputSignal<NavigationMenuLink<string>>; private registered; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrNavigationMenuLink, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrNavigationMenuLink, "[grNavigationMenuLink]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; "linkIndex": { "alias": "linkIndex"; "required": true; "isSignal": true; }; "link": { "alias": "link"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;}Name
Kind
Type
Requirement
indexproperty
import("@angular/core").InputSignal<number>required
linkproperty
import("@angular/core").InputSignal<NavigationMenuLink<string>>required
linkIndexproperty
import("@angular/core").InputSignal<number>required
ngOnDestroymethod
() => voidrequired
ɵdirproperty
i0.ɵɵDirectiveDeclaration<GrNavigationMenuLink, "[grNavigationMenuLink]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; "linkIndex": { "alias": "linkIndex"; "required": true; "isSignal": true; }; "link": { "alias": "link"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>required
ɵfacproperty
i0.ɵɵFactoryDeclaration<GrNavigationMenuLink, never>required
registeredproperty
anyrequired
- Name
index- Kind
- property
- Type
import("@angular/core").InputSignal<number>- Requirement
- required
- Name
link- Kind
- property
- Type
import("@angular/core").InputSignal<NavigationMenuLink<string>>- Requirement
- required
- Name
linkIndex- Kind
- property
- Type
import("@angular/core").InputSignal<number>- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrNavigationMenuLink, "[grNavigationMenuLink]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; "linkIndex": { "alias": "linkIndex"; "required": true; "isSignal": true; }; "link": { "alias": "link"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrNavigationMenuLink, never>- Requirement
- required
- Name
registered- Kind
- property
- Type
any- Requirement
- required
GrNavigationMenuList
classDeclarationView source
GrNavigationMenuListts
export declare class GrNavigationMenuList extends NavigationMenuPart { constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrNavigationMenuList, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrNavigationMenuList, "[grNavigationMenuList]", never, {}, {}, never, never, true, never>;}Name
Kind
Type
Requirement
ngOnDestroymethod
() => voidrequired
ɵdirproperty
i0.ɵɵDirectiveDeclaration<GrNavigationMenuList, "[grNavigationMenuList]", never, {}, {}, never, never, true, never>required
ɵfacproperty
i0.ɵɵFactoryDeclaration<GrNavigationMenuList, never>required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrNavigationMenuList, "[grNavigationMenuList]", never, {}, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrNavigationMenuList, never>- Requirement
- required
GrNavigationMenuRoot
classDeclarationView source
GrNavigationMenuRootts
export declare class GrNavigationMenuRoot implements OnDestroy { readonly open: import("@angular/core").InputSignal<number | null | undefined>; readonly defaultOpen: import("@angular/core").InputSignal<number | null | undefined>; readonly items: import("@angular/core").InputSignal<readonly NavigationMenuItem<string>[]>; readonly intentDelayMs: import("@angular/core").InputSignal<number | undefined>; readonly openChange: import("@angular/core").OutputEmitterRef<NavigationMenuOpenChangeDetail>; readonly store: NavigationMenuStore; private readonly injector; private readonly element; private readonly listeners; private readonly consumerProps; private lastInput; private release; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrNavigationMenuRoot, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrNavigationMenuRoot, "[grNavigationMenuRoot]", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "defaultOpen": { "alias": "defaultOpen"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "intentDelayMs": { "alias": "intentDelayMs"; "required": false; "isSignal": true; }; }, { "openChange": "openChange"; }, never, never, true, never>;}Name
Kind
Type
Requirement
consumerPropsproperty
anyrequired
defaultOpenproperty
import("@angular/core").InputSignal<number | null | undefined>required
elementproperty
anyrequired
injectorproperty
anyrequired
intentDelayMsproperty
import("@angular/core").InputSignal<number | undefined>required
itemsproperty
import("@angular/core").InputSignal<readonly NavigationMenuItem<string>[]>required
lastInputproperty
anyrequired
listenersproperty
anyrequired
ngOnDestroymethod
() => voidrequired
openproperty
import("@angular/core").InputSignal<number | null | undefined>required
openChangeproperty
import("@angular/core").OutputEmitterRef<NavigationMenuOpenChangeDetail>required
ɵdirproperty
i0.ɵɵDirectiveDeclaration<GrNavigationMenuRoot, "[grNavigationMenuRoot]", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "defaultOpen": { "alias": "defaultOpen"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "intentDelayMs": { "alias": "intentDelayMs"; "required": false; "isSignal": true; }; }, { "openChange": "openChange"; }, never, never, true, never>required
ɵfacproperty
i0.ɵɵFactoryDeclaration<GrNavigationMenuRoot, never>required
releaseproperty
anyrequired
- Name
consumerProps- Kind
- property
- Type
any- Requirement
- required
- Name
defaultOpen- Kind
- property
- Type
import("@angular/core").InputSignal<number | null | undefined>- Requirement
- required
- Name
element- Kind
- property
- Type
any- Requirement
- required
- Name
injector- Kind
- property
- Type
any- Requirement
- required
- Name
intentDelayMs- Kind
- property
- Type
import("@angular/core").InputSignal<number | undefined>- Requirement
- required
- Name
items- Kind
- property
- Type
import("@angular/core").InputSignal<readonly NavigationMenuItem<string>[]>- Requirement
- required
- Name
lastInput- Kind
- property
- Type
any- Requirement
- required
- Name
listeners- Kind
- property
- Type
any- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
open- Kind
- property
- Type
import("@angular/core").InputSignal<number | null | undefined>- Requirement
- required
- Name
openChange- Kind
- property
- Type
import("@angular/core").OutputEmitterRef<NavigationMenuOpenChangeDetail>- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrNavigationMenuRoot, "[grNavigationMenuRoot]", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "defaultOpen": { "alias": "defaultOpen"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "intentDelayMs": { "alias": "intentDelayMs"; "required": false; "isSignal": true; }; }, { "openChange": "openChange"; }, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrNavigationMenuRoot, never>- Requirement
- required
- Name
release- Kind
- property
- Type
any- Requirement
- required
- Name
store- Kind
- property
- Type
NavigationMenuStore- Requirement
- required
GrNavigationMenuTrigger
classDeclarationView source
GrNavigationMenuTriggerts
export declare class GrNavigationMenuTrigger extends NavigationMenuPart { readonly index: import("@angular/core").InputSignal<number>; readonly item: import("@angular/core").InputSignal<NavigationMenuItem<string>>; private registered; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrNavigationMenuTrigger, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrNavigationMenuTrigger, "[grNavigationMenuTrigger]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; "item": { "alias": "item"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;}Name
Kind
Type
Requirement
indexproperty
import("@angular/core").InputSignal<number>required
itemproperty
import("@angular/core").InputSignal<NavigationMenuItem<string>>required
ngOnDestroymethod
() => voidrequired
ɵdirproperty
i0.ɵɵDirectiveDeclaration<GrNavigationMenuTrigger, "[grNavigationMenuTrigger]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; "item": { "alias": "item"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>required
ɵfacproperty
i0.ɵɵFactoryDeclaration<GrNavigationMenuTrigger, never>required
registeredproperty
anyrequired
- Name
index- Kind
- property
- Type
import("@angular/core").InputSignal<number>- Requirement
- required
- Name
item- Kind
- property
- Type
import("@angular/core").InputSignal<NavigationMenuItem<string>>- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrNavigationMenuTrigger, "[grNavigationMenuTrigger]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; "item": { "alias": "item"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrNavigationMenuTrigger, never>- Requirement
- required
- Name
registered- Kind
- property
- Type
any- Requirement
- required
NAVIGATION_MENU_STORE
valueDeclarationView source
NAVIGATION_MENU_STOREts
export declare const NAVIGATION_MENU_STORE: InjectionToken<NavigationMenuStore>;NavigationMenuOpenChangeDetail
interfaceDeclarationView source
NavigationMenuOpenChangeDetailts
export interface NavigationMenuOpenChangeDetail { readonly open: number | null; readonly reason: NavigationMenuChangeReason;}Name
Kind
Type
Requirement
openproperty
number | nullrequired
reasonproperty
NavigationMenuChangeReasonrequired
- Name
open- Kind
- property
- Type
number | null- Requirement
- required
- Name
reason- Kind
- property
- Type
NavigationMenuChangeReason- Requirement
- required
NavigationMenuStore
interfaceDeclarationView source
NavigationMenuStorets
export interface NavigationMenuStore { readonly service: NavigationMenuService; readonly connector: NavigationMenuApi; readonly scope: PartScope; readonly version: WritableSignal<number>; start(): void; stop(): void; sync(input: NavigationMenuInput): void;}Name
Kind
Type
Requirement
connectorproperty
NavigationMenuApirequired
scopeproperty
PartScoperequired
serviceproperty
NavigationMenuServicerequired
startmethod
() => voidrequired
stopmethod
() => voidrequired
syncmethod
(input: NavigationMenuInput) => voidrequired
versionproperty
WritableSignal<number>required
- Name
connector- Kind
- property
- Type
NavigationMenuApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
NavigationMenuService- Requirement
- required
- Name
start- Kind
- method
- Type
() => void- Requirement
- required
- Name
stop- Kind
- method
- Type
() => void- Requirement
- required
- Name
sync- Kind
- method
- Type
(input: NavigationMenuInput) => void- Requirement
- required
- Name
version- Kind
- property
- Type
WritableSignal<number>- Requirement
- required
@grassroot/ui-headless-svelte/navigation-menu
Svelte adapter
View source
packages/ui-headless/svelte/src/navigation-menu/index.ts
Content
valueDeclarationView source
Contentts
export declare const Content: LegacyComponentType;Name
Kind
Type
Requirement
argsparameter
Parameters<Component<Record<string, any>>>optional
returnreturn 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
createNavigationMenu
functionDeclarationView source
createNavigationMenuts
export declare function createNavigationMenu(inputGetter: () => NavigationMenuInput, options?: UseNavigationMenuOptions): UseNavigationMenuResult;Name
Kind
Type
Requirement
inputGetterparameter
() => NavigationMenuInputrequired
optionsparameter
UseNavigationMenuOptionsoptional
returnreturn value
UseNavigationMenuResultn/a
- Name
inputGetter- Kind
- parameter
- Type
() => NavigationMenuInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseNavigationMenuOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseNavigationMenuResult- Requirement
- n/a
Item
valueDeclarationView source
Itemts
export declare const Item: LegacyComponentType;Name
Kind
Type
Requirement
argsparameter
Parameters<Component<Record<string, any>>>optional
returnreturn 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
Link
valueDeclarationView source
Linkts
export declare const Link: LegacyComponentType;Name
Kind
Type
Requirement
argsparameter
Parameters<Component<Record<string, any>>>optional
returnreturn 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
List
valueDeclarationView source
Listts
export declare const List: LegacyComponentType;Name
Kind
Type
Requirement
argsparameter
Parameters<Component<Record<string, any>>>optional
returnreturn 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
NavigationMenu
valueDeclarationView source
NavigationMenuts
export declare const NavigationMenu: { Root: import("svelte/legacy").LegacyComponentType; List: import("svelte/legacy").LegacyComponentType; Item: import("svelte/legacy").LegacyComponentType; Trigger: import("svelte/legacy").LegacyComponentType; Content: import("svelte/legacy").LegacyComponentType; Link: import("svelte/legacy").LegacyComponentType;};Name
Kind
Type
Requirement
Contentproperty
import("svelte/legacy").LegacyComponentTyperequired
Itemproperty
import("svelte/legacy").LegacyComponentTyperequired
Linkproperty
import("svelte/legacy").LegacyComponentTyperequired
Listproperty
import("svelte/legacy").LegacyComponentTyperequired
Rootproperty
import("svelte/legacy").LegacyComponentTyperequired
Triggerproperty
import("svelte/legacy").LegacyComponentTyperequired
- Name
Content- Kind
- property
- Type
import("svelte/legacy").LegacyComponentType- Requirement
- required
- Name
Item- Kind
- property
- Type
import("svelte/legacy").LegacyComponentType- Requirement
- required
- Name
Link- Kind
- property
- Type
import("svelte/legacy").LegacyComponentType- Requirement
- required
- Name
List- Kind
- property
- Type
import("svelte/legacy").LegacyComponentType- Requirement
- required
- Name
Root- Kind
- property
- Type
import("svelte/legacy").LegacyComponentType- Requirement
- required
- Name
Trigger- Kind
- property
- Type
import("svelte/legacy").LegacyComponentType- Requirement
- required
NavigationMenuContextValue
interfaceDeclarationView source
NavigationMenuContextValuets
export interface NavigationMenuContextValue { readonly service: NavigationMenuService; readonly connector: NavigationMenuApi; readonly scope: PartScope; readonly version: () => number;}Name
Kind
Type
Requirement
connectorproperty
NavigationMenuApirequired
scopeproperty
PartScoperequired
serviceproperty
NavigationMenuServicerequired
versionproperty
() => numberrequired
- Name
connector- Kind
- property
- Type
NavigationMenuApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
NavigationMenuService- Requirement
- required
- Name
version- Kind
- property
- Type
() => number- Requirement
- required
NavigationMenuOpenChangeDetail
interfaceDeclarationView source
NavigationMenuOpenChangeDetailts
export interface NavigationMenuOpenChangeDetail { readonly open: number | null; readonly reason: NavigationMenuChangeReason;}Name
Kind
Type
Requirement
openproperty
number | nullrequired
reasonproperty
NavigationMenuChangeReasonrequired
- Name
open- Kind
- property
- Type
number | null- Requirement
- required
- Name
reason- Kind
- property
- Type
NavigationMenuChangeReason- Requirement
- required
Root
valueDeclarationView source
Rootts
export declare const Root: LegacyComponentType;Name
Kind
Type
Requirement
argsparameter
Parameters<Component<Record<string, any>>>optional
returnreturn 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
Trigger
valueDeclarationView source
Triggerts
export declare const Trigger: LegacyComponentType;Name
Kind
Type
Requirement
argsparameter
Parameters<Component<Record<string, any>>>optional
returnreturn 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
useNavigationMenuContext
functionDeclarationView source
useNavigationMenuContextts
export declare function useNavigationMenuContext(partName: string): NavigationMenuContextValue;Name
Kind
Type
Requirement
partNameparameter
stringrequired
returnreturn value
NavigationMenuContextValuen/a
- Name
partName- Kind
- parameter
- Type
string- Requirement
- required
- Name
return- Kind
- return value
- Type
NavigationMenuContextValue- Requirement
- n/a
UseNavigationMenuOptions
interfaceDeclarationView source
UseNavigationMenuOptionsts
export interface UseNavigationMenuOptions { readonly onOpenChange?: (detail: NavigationMenuOpenChangeDetail) => void; readonly scheduler?: Scheduler;}Name
Kind
Type
Requirement
onOpenChangeproperty
(detail: NavigationMenuOpenChangeDetail) => voidoptional
schedulerproperty
Scheduleroptional
- Name
onOpenChange- Kind
- property
- Type
(detail: NavigationMenuOpenChangeDetail) => void- Requirement
- optional
- Name
scheduler- Kind
- property
- Type
Scheduler- Requirement
- optional
UseNavigationMenuResult
interfaceDeclarationView source
UseNavigationMenuResultts
export interface UseNavigationMenuResult { readonly service: NavigationMenuService; readonly connector: NavigationMenuApi; readonly scope: PartScope; readonly version: Readable<number>; readonly syncInput: (input: NavigationMenuInput) => void; readonly refresh: () => void;}Name
Kind
Type
Requirement
connectorproperty
NavigationMenuApirequired
refreshproperty
() => voidrequired
scopeproperty
PartScoperequired
serviceproperty
NavigationMenuServicerequired
syncInputproperty
(input: NavigationMenuInput) => voidrequired
versionproperty
Readable<number>required
- Name
connector- Kind
- property
- Type
NavigationMenuApi- Requirement
- required
- Name
refresh- Kind
- property
- Type
() => void- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
NavigationMenuService- Requirement
- required
- Name
syncInput- Kind
- property
- Type
(input: NavigationMenuInput) => void- Requirement
- required
- Name
version- Kind
- property
- Type
Readable<number>- Requirement
- required
@grassroot/ui-headless-solid/navigation-menu
Solid adapter
View source
packages/ui-headless/solid/src/navigation-menu/index.ts
Content
functionDeclarationView source
Contentts
export declare function Content(props: NavigationMenuContentProps): JSX.Element;Name
Kind
Type
Requirement
propsparameter
NavigationMenuContentPropsrequired
returnreturn value
JSX.Elementn/a
- Name
props- Kind
- parameter
- Type
NavigationMenuContentProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
Item
functionDeclarationView source
Itemts
export declare function Item(props: NavigationMenuItemProps): JSX.Element;Name
Kind
Type
Requirement
propsparameter
NavigationMenuItemPropsrequired
returnreturn value
JSX.Elementn/a
- Name
props- Kind
- parameter
- Type
NavigationMenuItemProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
Link
functionDeclarationView source
Linkts
export declare function Link(props: NavigationMenuLinkProps): JSX.Element;Name
Kind
Type
Requirement
propsparameter
NavigationMenuLinkPropsrequired
returnreturn value
JSX.Elementn/a
- Name
props- Kind
- parameter
- Type
NavigationMenuLinkProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
List
functionDeclarationView source
Listts
export declare function List(props: NavigationMenuListProps): JSX.Element;Name
Kind
Type
Requirement
propsparameter
NavigationMenuListPropsrequired
returnreturn value
JSX.Elementn/a
- Name
props- Kind
- parameter
- Type
NavigationMenuListProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
NavigationMenu
valueDeclarationView source
NavigationMenuts
export declare const NavigationMenu: { Root: typeof NavigationMenuRoot; List: typeof List; Item: typeof Item; Trigger: typeof Trigger; Content: typeof Content; Link: typeof Link;};Name
Kind
Type
Requirement
Contentproperty
typeof Contentrequired
Itemproperty
typeof Itemrequired
Linkproperty
typeof Linkrequired
Listproperty
typeof Listrequired
Rootproperty
typeof NavigationMenuRootrequired
Triggerproperty
typeof Triggerrequired
- Name
Content- Kind
- property
- Type
typeof Content- Requirement
- required
- Name
Item- Kind
- property
- Type
typeof Item- Requirement
- required
- Name
Link- Kind
- property
- Type
typeof Link- Requirement
- required
- Name
List- Kind
- property
- Type
typeof List- Requirement
- required
- Name
Root- Kind
- property
- Type
typeof NavigationMenuRoot- Requirement
- required
- Name
Trigger- Kind
- property
- Type
typeof Trigger- Requirement
- required
NavigationMenuContext
valueDeclarationView source
NavigationMenuContextts
export declare const NavigationMenuContext: import("solid-js").Context<NavigationMenuContextValue | undefined>;NavigationMenuContextValue
interfaceDeclarationView source
NavigationMenuContextValuets
export interface NavigationMenuContextValue { readonly service: NavigationMenuService; readonly connector: NavigationMenuApi; readonly scope: PartScope; readonly snapshot: Accessor<NavigationMenuSnapshot>;}Name
Kind
Type
Requirement
connectorproperty
NavigationMenuApirequired
scopeproperty
PartScoperequired
serviceproperty
NavigationMenuServicerequired
snapshotproperty
Accessor<NavigationMenuSnapshot>required
- Name
connector- Kind
- property
- Type
NavigationMenuApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
NavigationMenuService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
Accessor<NavigationMenuSnapshot>- Requirement
- required
NavigationMenuOpenChangeDetail
interfaceDeclarationView source
NavigationMenuOpenChangeDetailts
export interface NavigationMenuOpenChangeDetail { readonly open: number | null; readonly reason: NavigationMenuChangeReason;}Name
Kind
Type
Requirement
openproperty
number | nullrequired
reasonproperty
NavigationMenuChangeReasonrequired
- Name
open- Kind
- property
- Type
number | null- Requirement
- required
- Name
reason- Kind
- property
- Type
NavigationMenuChangeReason- Requirement
- required
Root
functionDeclarationView source
Rootts
export declare function NavigationMenuRoot(props: NavigationMenuRootProps): JSX.Element;Name
Kind
Type
Requirement
propsparameter
NavigationMenuRootPropsrequired
returnreturn value
JSX.Elementn/a
- Name
props- Kind
- parameter
- Type
NavigationMenuRootProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
Trigger
functionDeclarationView source
Triggerts
export declare function Trigger(props: NavigationMenuTriggerProps): JSX.Element;Name
Kind
Type
Requirement
propsparameter
NavigationMenuTriggerPropsrequired
returnreturn value
JSX.Elementn/a
- Name
props- Kind
- parameter
- Type
NavigationMenuTriggerProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
useNavigationMenu
functionDeclarationView source
useNavigationMenuts
export declare function useNavigationMenu(input: Accessor<CoreNavigationMenuInput>, options?: UseNavigationMenuOptions): UseNavigationMenuResult;Name
Kind
Type
Requirement
inputparameter
Accessor<CoreNavigationMenuInput>required
optionsparameter
UseNavigationMenuOptionsoptional
returnreturn value
UseNavigationMenuResultn/a
- Name
input- Kind
- parameter
- Type
Accessor<CoreNavigationMenuInput>- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseNavigationMenuOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseNavigationMenuResult- Requirement
- n/a
useNavigationMenuContext
functionDeclarationView source
useNavigationMenuContextts
export declare function useNavigationMenuContext(partName: string): NavigationMenuContextValue;Name
Kind
Type
Requirement
partNameparameter
stringrequired
returnreturn value
NavigationMenuContextValuen/a
- Name
partName- Kind
- parameter
- Type
string- Requirement
- required
- Name
return- Kind
- return value
- Type
NavigationMenuContextValue- Requirement
- n/a
UseNavigationMenuOptions
interfaceDeclarationView source
UseNavigationMenuOptionsts
export interface UseNavigationMenuOptions { readonly onOpenChange?: (detail: NavigationMenuOpenChangeDetail) => void; readonly scheduler?: Scheduler;}Name
Kind
Type
Requirement
onOpenChangeproperty
(detail: NavigationMenuOpenChangeDetail) => voidoptional
schedulerproperty
Scheduleroptional
- Name
onOpenChange- Kind
- property
- Type
(detail: NavigationMenuOpenChangeDetail) => void- Requirement
- optional
- Name
scheduler- Kind
- property
- Type
Scheduler- Requirement
- optional
UseNavigationMenuResult
interfaceDeclarationView source
UseNavigationMenuResultts
export interface UseNavigationMenuResult { readonly service: NavigationMenuService; readonly connector: NavigationMenuApi; readonly scope: PartScope; readonly snapshot: Accessor<NavigationMenuSnapshot>;}Name
Kind
Type
Requirement
connectorproperty
NavigationMenuApirequired
scopeproperty
PartScoperequired
serviceproperty
NavigationMenuServicerequired
snapshotproperty
Accessor<NavigationMenuSnapshot>required
- Name
connector- Kind
- property
- Type
NavigationMenuApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
NavigationMenuService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
Accessor<NavigationMenuSnapshot>- Requirement
- required