- Name
service- Kind
- parameter
- Type
HoverCardService- Requirement
- required
DocsAPI referenceHeadlesshover-card
hover-card headless API
The core connector and vanilla mount are always visible. Use the framework choice to inspect native composition, props, outputs, context and hooks for the selected adapter.
@grassroot/ui-headless-core/hover-card
Core connector and vanilla API
activateHoverCardLayer
functionReuses Popover's non-modal activation exactly. The cast is limited to the service boundary because both machines expose the same open/closed snapshot, and Popover's layer sends only the shared CLOSE escape and outside-click reasons.
declare function activateHoverCardLayer(service: HoverCardService, scope: PartScope, document: Document): () => void;serviceHoverCardServicescopePartScopedocumentDocumentreturn() => void- Name
scope- Kind
- parameter
- Type
PartScope- Requirement
- required
- Name
document- Kind
- parameter
- Type
Document- Requirement
- required
- Name
return- Kind
- return value
- Type
() => void- Requirement
- n/a
connectHoverCard
functiondeclare function connectHoverCard(service: HoverCardService, scope: PartScope, _options?: HoverCardConnectOptions): HoverCardApi;serviceHoverCardServicescopePartScope_optionsHoverCardConnectOptionsreturnHoverCardApi- Name
service- Kind
- parameter
- Type
HoverCardService- Requirement
- required
- Name
scope- Kind
- parameter
- Type
PartScope- Requirement
- required
- Name
_options- Kind
- parameter
- Type
HoverCardConnectOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
HoverCardApi- Requirement
- n/a
hoverCardAnatomy
valueexport declare const hoverCardAnatomy: { readonly scope: "hover-card"; readonly parts: readonly ["root", "trigger", "content"];};partsreadonly ["root", "trigger", "content"]scope"hover-card"- Name
parts- Kind
- property
- Type
readonly ["root", "trigger", "content"]- Requirement
- required
- Name
scope- Kind
- property
- Type
"hover-card"- Requirement
- required
HoverCardApi
interfaceinterface HoverCardApi { rootProps(): PartProps; triggerProps(): PartProps; contentProps(): PartProps; readonly open: boolean;}contentProps() => PartPropsopenbooleanrootProps() => PartPropstriggerProps() => PartProps- Name
contentProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
open- Kind
- property
- Type
boolean- Requirement
- required
- Name
rootProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
triggerProps- Kind
- method
- Type
() => PartProps- Requirement
- required
HoverCardConnectOptions
interfaceinterface HoverCardConnectOptions {}HoverCardMount
interfaceinterface HoverCardMount { readonly service: HoverCardService; readonly connector: HoverCardApi; readonly root: HTMLElement; readonly trigger: HTMLElement; readonly content: HTMLElement | null; destroy(): void;}connectorHoverCardApicontentHTMLElement | nulldestroy() => voidrootHTMLElementserviceHoverCardServicetriggerHTMLElement- Name
connector- Kind
- property
- Type
HoverCardApi- Requirement
- required
- Name
content- Kind
- property
- Type
HTMLElement | null- Requirement
- required
- Name
destroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
root- Kind
- property
- Type
HTMLElement- Requirement
- required
- Name
service- Kind
- property
- Type
HoverCardService- Requirement
- required
- Name
trigger- Kind
- property
- Type
HTMLElement- Requirement
- required
HoverCardOpenChangeDetail
interfaceinterface HoverCardOpenChangeDetail { readonly open: boolean; readonly reason: HoverCardChangeReason;}openbooleanreasonHoverCardChangeReason- Name
open- Kind
- property
- Type
boolean- Requirement
- required
- Name
reason- Kind
- property
- Type
HoverCardChangeReason- Requirement
- required
HoverCardPart
typetype HoverCardPart = (typeof hoverCardAnatomy.parts)[number];HoverCardService
typetype HoverCardService = Service<HoverCardInput, HoverCardStateValue, HoverCardContext, HoverCardEvent, HoverCardCommand>;mountHoverCard
functiondeclare function mountHoverCard(container: HTMLElement, options?: MountHoverCardOptions): HoverCardMount;containerHTMLElementoptionsMountHoverCardOptionsreturnHoverCardMount- Name
container- Kind
- parameter
- Type
HTMLElement- Requirement
- required
- Name
options- Kind
- parameter
- Type
MountHoverCardOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
HoverCardMount- Requirement
- n/a
MountHoverCardOptions
interfaceinterface MountHoverCardOptions extends HoverCardInput { readonly onOpenChange?: (detail: HoverCardOpenChangeDetail) => void; readonly scheduler?: Scheduler; readonly renderTrigger?: (button: HTMLElement) => void; readonly renderContent?: (panel: HTMLElement) => void;}onOpenChange(detail: HoverCardOpenChangeDetail) => voidrenderContent(panel: HTMLElement) => voidrenderTrigger(button: HTMLElement) => voidschedulerScheduler- Name
onOpenChange- Kind
- property
- Type
(detail: HoverCardOpenChangeDetail) => void- Requirement
- optional
- Name
renderContent- Kind
- property
- Type
(panel: HTMLElement) => void- Requirement
- optional
- Name
renderTrigger- Kind
- property
- Type
(button: HTMLElement) => void- Requirement
- optional
- Name
scheduler- Kind
- property
- Type
Scheduler- Requirement
- optional
runHoverCardCommand
functionPopover's command resolver is the one command-resolution seam.
declare function runHoverCardCommand(command: HoverCardCommand, scope: PartScope, options?: { readonly onOpenChange?: (detail: { open: boolean; reason: HoverCardChangeReason; }) => void;}): void;commandHoverCardCommandscopePartScopeoptions{
readonly onOpenChange?: (detail: {
open: boolean;
reason: HoverCardChangeReason;
}) => void;
}returnvoid- Name
command- Kind
- parameter
- Type
HoverCardCommand- Requirement
- required
- Name
scope- Kind
- parameter
- Type
PartScope- Requirement
- required
- Name
options- Kind
- parameter
- Type
{ readonly onOpenChange?: (detail: { open: boolean; reason: HoverCardChangeReason; }) => void; }- Requirement
- optional
- Name
return- Kind
- return value
- Type
void- Requirement
- n/a
Framework adapters
Each panel keeps its adapter's public vocabulary. React compound exports, Vue composables, standalone Angular declarations, Svelte components, and Solid hooks stay native to their framework.
React imports
import { Content, HoverCard, Root, Trigger } from "@grassroot/ui-headless-react/hover-card";Vue imports
<script setup lang="ts">import { HoverCardContent, HoverCardRoot, HoverCardTrigger } from "@grassroot/ui-headless-vue/hover-card";</script>Angular imports
import { Component } from "@angular/core";import { GR_HOVER_CARD_DECLARATIONS } from "@grassroot/ui-headless-angular/hover-card"; @Component({ standalone: true, imports: [GR_HOVER_CARD_DECLARATIONS], template: `<!-- compose the hover-card parts here -->` })export class Example {}Svelte imports
<script lang="ts"> import { HoverCardContent, HoverCardRoot, HoverCardTrigger } from "@grassroot/ui-headless-svelte/hover-card";</script>Solid imports
import { HoverCardContent, HoverCardRoot, HoverCardTrigger } from "@grassroot/ui-headless-solid/hover-card";@grassroot/ui-headless-react/hover-card
React adapter
Content
valueexport declare const Content: import("react").ForwardRefExoticComponent<HoverCardContentProps & import("react").RefAttributes<HTMLDivElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
HoverCard
valueexport declare const HoverCard: { Root: import("react").ForwardRefExoticComponent<HoverCardRootProps & import("react").RefAttributes<HTMLDivElement>>; Trigger: import("react").ForwardRefExoticComponent<HoverCardTriggerProps & import("react").RefAttributes<HTMLButtonElement>>; Content: import("react").ForwardRefExoticComponent<HoverCardContentProps & import("react").RefAttributes<HTMLDivElement>>;};Contentimport("react").ForwardRefExoticComponent<HoverCardContentProps & import("react").RefAttributes<HTMLDivElement>>Rootimport("react").ForwardRefExoticComponent<HoverCardRootProps & import("react").RefAttributes<HTMLDivElement>>Triggerimport("react").ForwardRefExoticComponent<HoverCardTriggerProps & import("react").RefAttributes<HTMLButtonElement>>- Name
Content- Kind
- property
- Type
import("react").ForwardRefExoticComponent<HoverCardContentProps & import("react").RefAttributes<HTMLDivElement>>- Requirement
- required
- Name
Root- Kind
- property
- Type
import("react").ForwardRefExoticComponent<HoverCardRootProps & import("react").RefAttributes<HTMLDivElement>>- Requirement
- required
- Name
Trigger- Kind
- property
- Type
import("react").ForwardRefExoticComponent<HoverCardTriggerProps & import("react").RefAttributes<HTMLButtonElement>>- Requirement
- required
HoverCardContentProps
interfaceinterface HoverCardContentProps extends ComponentPropsWithoutRef<"div"> { readonly asChild?: boolean;}asChildboolean- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
HoverCardContext
valueexport declare const HoverCardContext: import("react").Context<HoverCardContextValue | null>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
HoverCardContextValue
interfaceinterface HoverCardContextValue { readonly service: HoverCardService; readonly connector: HoverCardApi; readonly scope: PartScope;}connectorHoverCardApiscopePartScopeserviceHoverCardService- Name
connector- Kind
- property
- Type
HoverCardApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
HoverCardService- Requirement
- required
HoverCardOpenChangeDetail
interfaceinterface HoverCardOpenChangeDetail { readonly open: boolean; readonly reason: HoverCardChangeReason;}openbooleanreasonHoverCardChangeReason- Name
open- Kind
- property
- Type
boolean- Requirement
- required
- Name
reason- Kind
- property
- Type
HoverCardChangeReason- Requirement
- required
HoverCardRootProps
interfaceinterface HoverCardRootProps extends Omit<ComponentPropsWithoutRef<"div">, "open" | "defaultValue"> { readonly asChild?: boolean; readonly open?: HoverCardInput["open"]; readonly defaultOpen?: HoverCardInput["defaultOpen"]; readonly openDelayMs?: HoverCardInput["openDelayMs"]; readonly closeDelayMs?: HoverCardInput["closeDelayMs"]; readonly side?: HoverCardInput["side"]; readonly onOpenChange?: (detail: HoverCardOpenChangeDetail) => void; readonly scheduler?: UseHoverCardOptions["scheduler"]; readonly children?: ReactNode;}asChildbooleanchildrenReactNodecloseDelayMsHoverCardInput["closeDelayMs"]defaultOpenHoverCardInput["defaultOpen"]onOpenChange(detail: HoverCardOpenChangeDetail) => voidopenHoverCardInput["open"]openDelayMsHoverCardInput["openDelayMs"]schedulerUseHoverCardOptions["scheduler"]sideHoverCardInput["side"]- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
- Name
children- Kind
- property
- Type
ReactNode- Requirement
- optional
- Name
closeDelayMs- Kind
- property
- Type
HoverCardInput["closeDelayMs"]- Requirement
- optional
- Name
defaultOpen- Kind
- property
- Type
HoverCardInput["defaultOpen"]- Requirement
- optional
- Name
onOpenChange- Kind
- property
- Type
(detail: HoverCardOpenChangeDetail) => void- Requirement
- optional
- Name
open- Kind
- property
- Type
HoverCardInput["open"]- Requirement
- optional
- Name
openDelayMs- Kind
- property
- Type
HoverCardInput["openDelayMs"]- Requirement
- optional
- Name
scheduler- Kind
- property
- Type
UseHoverCardOptions["scheduler"]- Requirement
- optional
- Name
side- Kind
- property
- Type
HoverCardInput["side"]- Requirement
- optional
HoverCardTriggerProps
interfaceinterface HoverCardTriggerProps extends Omit<ComponentPropsWithoutRef<"button">, "type"> { readonly asChild?: boolean;}asChildboolean- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
Root
valueexport declare const Root: import("react").ForwardRefExoticComponent<HoverCardRootProps & import("react").RefAttributes<HTMLDivElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
Trigger
valueexport declare const Trigger: import("react").ForwardRefExoticComponent<HoverCardTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
useHoverCard
functiondeclare function useHoverCard(input: HoverCardInput, options?: UseHoverCardOptions): UseHoverCardResult;inputHoverCardInputoptionsUseHoverCardOptionsreturnUseHoverCardResult- Name
input- Kind
- parameter
- Type
HoverCardInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseHoverCardOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseHoverCardResult- Requirement
- n/a
useHoverCardContext
functiondeclare function useHoverCardContext(partName: string): HoverCardContextValue;partNamestringreturnHoverCardContextValue- Name
partName- Kind
- parameter
- Type
string- Requirement
- required
- Name
return- Kind
- return value
- Type
HoverCardContextValue- Requirement
- n/a
UseHoverCardOptions
interfaceinterface UseHoverCardOptions { readonly onOpenChange?: (detail: HoverCardOpenChangeDetail) => void; readonly scheduler?: Scheduler;}onOpenChange(detail: HoverCardOpenChangeDetail) => voidschedulerScheduler- Name
onOpenChange- Kind
- property
- Type
(detail: HoverCardOpenChangeDetail) => void- Requirement
- optional
- Name
scheduler- Kind
- property
- Type
Scheduler- Requirement
- optional
UseHoverCardResult
interfaceinterface UseHoverCardResult { readonly service: HoverCardService; readonly connector: HoverCardApi; readonly scope: PartScope; readonly snapshot: HoverCardSnapshot;}connectorHoverCardApiscopePartScopeserviceHoverCardServicesnapshotHoverCardSnapshot- Name
connector- Kind
- property
- Type
HoverCardApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
HoverCardService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
HoverCardSnapshot- Requirement
- required
useServiceVersion
functionSubscribes a component to a service's committed-snapshot version.
declare function useServiceVersion<S extends Service<any, any, any, any, any, any>>(service: S): ReturnType<S["getSnapshot"]>;serviceSreturnReturnType<S["getSnapshot"]>- Name
service- Kind
- parameter
- Type
S- Requirement
- required
- Name
return- Kind
- return value
- Type
ReturnType<S["getSnapshot"]>- Requirement
- n/a
@grassroot/ui-headless-vue/hover-card
Vue adapter
HoverCardContent
valueexport declare const HoverCardContent: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; };}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any;}> | null, {}, {}, {}, 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>;HoverCardContextKey
valueexport declare const HoverCardContextKey: InjectionKey<HoverCardContextValue>;HoverCardOpenChangeDetail
interfaceinterface HoverCardOpenChangeDetail { readonly open: boolean; readonly reason: HoverCardChangeReason;}openbooleanreasonHoverCardChangeReason- Name
open- Kind
- property
- Type
boolean- Requirement
- required
- Name
reason- Kind
- property
- Type
HoverCardChangeReason- Requirement
- required
HoverCardRoot
valueexport declare const HoverCardRoot: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; open: { type: PropType<HoverCardInput["open"]>; default: undefined; }; defaultOpen: { type: PropType<HoverCardInput["defaultOpen"]>; default: undefined; }; openDelayMs: { type: PropType<HoverCardInput["openDelayMs"]>; default: undefined; }; closeDelayMs: { type: PropType<HoverCardInput["closeDelayMs"]>; default: undefined; }; side: { type: PropType<HoverCardInput["side"]>; default: undefined; }; scheduler: { type: PropType<UseHoverCardOptions["scheduler"]>; default: undefined; };}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any;}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { openChange: (_detail: HoverCardOpenChangeDetail) => true;}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; open: { type: PropType<HoverCardInput["open"]>; default: undefined; }; defaultOpen: { type: PropType<HoverCardInput["defaultOpen"]>; default: undefined; }; openDelayMs: { type: PropType<HoverCardInput["openDelayMs"]>; default: undefined; }; closeDelayMs: { type: PropType<HoverCardInput["closeDelayMs"]>; default: undefined; }; side: { type: PropType<HoverCardInput["side"]>; default: undefined; }; scheduler: { type: PropType<UseHoverCardOptions["scheduler"]>; default: undefined; };}>> & Readonly<{ onOpenChange?: ((_detail: HoverCardOpenChangeDetail) => any) | undefined;}>, { asChild: boolean; open: boolean | undefined; defaultOpen: boolean | undefined; openDelayMs: number | undefined; closeDelayMs: number | undefined; side: "bottom" | "top" | undefined; scheduler: import("@grassroot/statechart/scheduler").Scheduler | undefined;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;HoverCardTrigger
valueexport declare const HoverCardTrigger: 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>;useHoverCard
functiondeclare function useHoverCard(input: HoverCardInput | (() => HoverCardInput), options?: UseHoverCardOptions): UseHoverCardResult;inputHoverCardInput | (() => HoverCardInput)optionsUseHoverCardOptionsreturnUseHoverCardResult- Name
input- Kind
- parameter
- Type
HoverCardInput | (() => HoverCardInput)- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseHoverCardOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseHoverCardResult- Requirement
- n/a
useHoverCardContext
functiondeclare function useHoverCardContext(partName: string): HoverCardContextValue;partNamestringreturnHoverCardContextValue- Name
partName- Kind
- parameter
- Type
string- Requirement
- required
- Name
return- Kind
- return value
- Type
HoverCardContextValue- Requirement
- n/a
UseHoverCardOptions
interfaceinterface UseHoverCardOptions { readonly onOpenChange?: (detail: HoverCardOpenChangeDetail) => void; readonly scheduler?: Scheduler;}onOpenChange(detail: HoverCardOpenChangeDetail) => voidschedulerScheduler- Name
onOpenChange- Kind
- property
- Type
(detail: HoverCardOpenChangeDetail) => void- Requirement
- optional
- Name
scheduler- Kind
- property
- Type
Scheduler- Requirement
- optional
UseHoverCardResult
interfaceinterface UseHoverCardResult { readonly service: HoverCardService; readonly connector: HoverCardApi; readonly scope: PartScope; readonly snapshot: ShallowRef<HoverCardSnapshot>;}connectorHoverCardApiscopePartScopeserviceHoverCardServicesnapshotShallowRef<HoverCardSnapshot>- Name
connector- Kind
- property
- Type
HoverCardApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
HoverCardService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
ShallowRef<HoverCardSnapshot>- Requirement
- required
@grassroot/ui-headless-angular/hover-card
Angular adapter
createHoverCardStore
functionexport declare function createHoverCardStore(initialInput: HoverCardInput, options?: CreateHoverCardStoreOptions): HoverCardStore;initialInputHoverCardInputoptionsCreateHoverCardStoreOptionsreturnHoverCardStore- Name
initialInput- Kind
- parameter
- Type
HoverCardInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
CreateHoverCardStoreOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
HoverCardStore- Requirement
- n/a
CreateHoverCardStoreOptions
interfaceexport interface CreateHoverCardStoreOptions { readonly onOpenChange?: (detail: HoverCardOpenChangeDetail) => void; readonly onCommit?: () => void; readonly scheduler?: Scheduler;}onCommit() => voidonOpenChange(detail: HoverCardOpenChangeDetail) => voidschedulerScheduler- Name
onCommit- Kind
- property
- Type
() => void- Requirement
- optional
- Name
onOpenChange- Kind
- property
- Type
(detail: HoverCardOpenChangeDetail) => void- Requirement
- optional
- Name
scheduler- Kind
- property
- Type
Scheduler- Requirement
- optional
createReentrantSafeTick
functionOne re-entrancy policy for every Angular store's zoneless commit nudge.
export declare function createReentrantSafeTick(appRef: ApplicationRef): () => void;appRefApplicationRefreturn() => void- Name
appRef- Kind
- parameter
- Type
ApplicationRef- Requirement
- required
- Name
return- Kind
- return value
- Type
() => void- Requirement
- n/a
export declare const GR_HOVER_CARD_DECLARATIONS: readonly [];GrHoverCardContent
classexport declare class GrHoverCardContent implements OnDestroy { private readonly store; private readonly element; private readonly listeners; private readonly consumer; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrHoverCardContent, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrHoverCardContent, "[grHoverCardContent]", never, {}, {}, never, never, true, never>;}consumeranyelementanylistenersanyngOnDestroy() => voidɵdiri0.ɵɵDirectiveDeclaration<GrHoverCardContent, "[grHoverCardContent]", never, {}, {}, never, never, true, never>ɵfaci0.ɵɵFactoryDeclaration<GrHoverCardContent, never>storeany- Name
consumer- Kind
- property
- Type
any- Requirement
- required
- Name
element- Kind
- property
- Type
any- Requirement
- required
- Name
listeners- Kind
- property
- Type
any- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrHoverCardContent, "[grHoverCardContent]", never, {}, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrHoverCardContent, never>- Requirement
- required
- Name
store- Kind
- property
- Type
any- Requirement
- required
GrHoverCardOpen
classexport declare class GrHoverCardOpen implements OnDestroy { private readonly store; private readonly template; private readonly view; private rendered; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrHoverCardOpen, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrHoverCardOpen, "[grHoverCardOpen]", never, {}, {}, never, never, true, never>;}ngOnDestroy() => voidɵdiri0.ɵɵDirectiveDeclaration<GrHoverCardOpen, "[grHoverCardOpen]", never, {}, {}, never, never, true, never>ɵfaci0.ɵɵFactoryDeclaration<GrHoverCardOpen, never>renderedanystoreanytemplateanyviewany- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrHoverCardOpen, "[grHoverCardOpen]", never, {}, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrHoverCardOpen, never>- Requirement
- required
- Name
rendered- Kind
- property
- Type
any- Requirement
- required
- Name
store- Kind
- property
- Type
any- Requirement
- required
- Name
template- Kind
- property
- Type
any- Requirement
- required
- Name
view- Kind
- property
- Type
any- Requirement
- required
GrHoverCardRoot
classexport declare class GrHoverCardRoot implements OnDestroy { readonly open: import("@angular/core").InputSignal<boolean | undefined>; readonly defaultOpen: import("@angular/core").InputSignal<boolean | undefined>; readonly openDelayMs: import("@angular/core").InputSignal<number | undefined>; readonly closeDelayMs: import("@angular/core").InputSignal<number | undefined>; readonly side: import("@angular/core").InputSignal<"bottom" | "top" | undefined>; readonly openChange: import("@angular/core").OutputEmitterRef<HoverCardOpenChangeDetail>; private readonly element; private readonly injector; private readonly appRef; private readonly listeners; private last; readonly store: HoverCardStore; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrHoverCardRoot, never>; static ɵcmp: i0.ɵɵComponentDeclaration<GrHoverCardRoot, "gr-hover-card-root", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "defaultOpen": { "alias": "defaultOpen"; "required": false; "isSignal": true; }; "openDelayMs": { "alias": "openDelayMs"; "required": false; "isSignal": true; }; "closeDelayMs": { "alias": "closeDelayMs"; "required": false; "isSignal": true; }; "side": { "alias": "side"; "required": false; "isSignal": true; }; }, { "openChange": "openChange"; }, never, ["*"], true, never>;}appRefanycloseDelayMsimport("@angular/core").InputSignal<number | undefined>defaultOpenimport("@angular/core").InputSignal<boolean | undefined>elementanyinjectoranylastanylistenersanyngOnDestroy() => voidopenimport("@angular/core").InputSignal<boolean | undefined>openChangeimport("@angular/core").OutputEmitterRef<HoverCardOpenChangeDetail>openDelayMsimport("@angular/core").InputSignal<number | undefined>ɵcmpi0.ɵɵComponentDeclaration<GrHoverCardRoot, "gr-hover-card-root", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "defaultOpen": { "alias": "defaultOpen"; "required": false; "isSignal": true; }; "openDelayMs": { "alias": "openDelayMs"; "required": false; "isSignal": true; }; "closeDelayMs": { "alias": "closeDelayMs"; "required": false; "isSignal": true; }; "side": { "alias": "side"; "required": false; "isSignal": true; }; }, { "openChange": "openChange"; }, never, ["*"], true, never>ɵfaci0.ɵɵFactoryDeclaration<GrHoverCardRoot, never>sideimport("@angular/core").InputSignal<"bottom" | "top" | undefined>- Name
appRef- Kind
- property
- Type
any- Requirement
- required
- Name
closeDelayMs- Kind
- property
- Type
import("@angular/core").InputSignal<number | undefined>- Requirement
- required
- Name
defaultOpen- Kind
- property
- Type
import("@angular/core").InputSignal<boolean | undefined>- Requirement
- required
- Name
element- Kind
- property
- Type
any- Requirement
- required
- Name
injector- Kind
- property
- Type
any- Requirement
- required
- Name
last- Kind
- property
- Type
any- Requirement
- required
- Name
listeners- Kind
- property
- Type
any- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
open- Kind
- property
- Type
import("@angular/core").InputSignal<boolean | undefined>- Requirement
- required
- Name
openChange- Kind
- property
- Type
import("@angular/core").OutputEmitterRef<HoverCardOpenChangeDetail>- Requirement
- required
- Name
openDelayMs- Kind
- property
- Type
import("@angular/core").InputSignal<number | undefined>- Requirement
- required
- Name
ɵcmp- Kind
- property
- Type
i0.ɵɵComponentDeclaration<GrHoverCardRoot, "gr-hover-card-root", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "defaultOpen": { "alias": "defaultOpen"; "required": false; "isSignal": true; }; "openDelayMs": { "alias": "openDelayMs"; "required": false; "isSignal": true; }; "closeDelayMs": { "alias": "closeDelayMs"; "required": false; "isSignal": true; }; "side": { "alias": "side"; "required": false; "isSignal": true; }; }, { "openChange": "openChange"; }, never, ["*"], true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrHoverCardRoot, never>- Requirement
- required
- Name
side- Kind
- property
- Type
import("@angular/core").InputSignal<"bottom" | "top" | undefined>- Requirement
- required
- Name
store- Kind
- property
- Type
HoverCardStore- Requirement
- required
GrHoverCardTrigger
classexport declare class GrHoverCardTrigger implements OnDestroy { private readonly store; private readonly element; private readonly listeners; private readonly consumer; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrHoverCardTrigger, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrHoverCardTrigger, "[grHoverCardTrigger]", never, {}, {}, never, never, true, never>;}consumeranyelementanylistenersanyngOnDestroy() => voidɵdiri0.ɵɵDirectiveDeclaration<GrHoverCardTrigger, "[grHoverCardTrigger]", never, {}, {}, never, never, true, never>ɵfaci0.ɵɵFactoryDeclaration<GrHoverCardTrigger, never>storeany- Name
consumer- Kind
- property
- Type
any- Requirement
- required
- Name
element- Kind
- property
- Type
any- Requirement
- required
- Name
listeners- Kind
- property
- Type
any- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrHoverCardTrigger, "[grHoverCardTrigger]", never, {}, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrHoverCardTrigger, never>- Requirement
- required
- Name
store- Kind
- property
- Type
any- Requirement
- required
HOVER_CARD_STORE
valueexport declare const HOVER_CARD_STORE: InjectionToken<HoverCardStore>;HoverCardOpenChangeDetail
interfaceexport interface HoverCardOpenChangeDetail { readonly open: boolean; readonly reason: HoverCardChangeReason;}openbooleanreasonHoverCardChangeReason- Name
open- Kind
- property
- Type
boolean- Requirement
- required
- Name
reason- Kind
- property
- Type
HoverCardChangeReason- Requirement
- required
HoverCardStore
interfaceexport interface HoverCardStore { readonly service: HoverCardService; readonly connector: HoverCardApi; readonly scope: PartScope; readonly version: WritableSignal<number>; start(): void; stop(): void; sync(input: HoverCardInput): void; bindOpenChange(handler: (detail: import("./use-hover-card.js").HoverCardOpenChangeDetail) => void): void;}bindOpenChange(handler: (detail: import("./use-hover-card.js").HoverCardOpenChangeDetail) => void) => voidconnectorHoverCardApiscopePartScopeserviceHoverCardServicestart() => voidstop() => voidsync(input: HoverCardInput) => voidversionWritableSignal<number>- Name
bindOpenChange- Kind
- method
- Type
(handler: (detail: import("./use-hover-card.js").HoverCardOpenChangeDetail) => void) => void- Requirement
- required
- Name
connector- Kind
- property
- Type
HoverCardApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
HoverCardService- Requirement
- required
- Name
start- Kind
- method
- Type
() => void- Requirement
- required
- Name
stop- Kind
- method
- Type
() => void- Requirement
- required
- Name
sync- Kind
- method
- Type
(input: HoverCardInput) => void- Requirement
- required
- Name
version- Kind
- property
- Type
WritableSignal<number>- Requirement
- required
provideHoverCardStore
functionexport declare function provideHoverCardStore(): Provider;returnProvider- Name
return- Kind
- return value
- Type
Provider- Requirement
- n/a
@grassroot/ui-headless-svelte/hover-card
Svelte adapter
createHoverCard
functionexport declare function createHoverCard(inputGetter: () => HoverCardInput, options?: UseHoverCardOptions): UseHoverCardResult;inputGetter() => HoverCardInputoptionsUseHoverCardOptionsreturnUseHoverCardResult- Name
inputGetter- Kind
- parameter
- Type
() => HoverCardInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseHoverCardOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseHoverCardResult- Requirement
- n/a
HoverCardContent
valueexport declare const HoverCardContent: LegacyComponentType;argsParameters<Component<Record<string, any>>>returnReturnType<Component<Record<string, any>, Record<string, any>>>- Name
args- Kind
- parameter
- Type
Parameters<Component<Record<string, any>>>- Requirement
- optional
- Name
return- Kind
- return value
- Type
ReturnType<Component<Record<string, any>, Record<string, any>>>- Requirement
- n/a
HoverCardOpenChangeDetail
interfaceexport interface HoverCardOpenChangeDetail { readonly open: boolean; readonly reason: HoverCardChangeReason;}openbooleanreasonHoverCardChangeReason- Name
open- Kind
- property
- Type
boolean- Requirement
- required
- Name
reason- Kind
- property
- Type
HoverCardChangeReason- Requirement
- required
HoverCardRoot
valueexport declare const HoverCardRoot: LegacyComponentType;argsParameters<Component<Record<string, any>>>returnReturnType<Component<Record<string, any>, Record<string, any>>>- Name
args- Kind
- parameter
- Type
Parameters<Component<Record<string, any>>>- Requirement
- optional
- Name
return- Kind
- return value
- Type
ReturnType<Component<Record<string, any>, Record<string, any>>>- Requirement
- n/a
HoverCardTrigger
valueexport declare const HoverCardTrigger: LegacyComponentType;argsParameters<Component<Record<string, any>>>returnReturnType<Component<Record<string, any>, Record<string, any>>>- Name
args- Kind
- parameter
- Type
Parameters<Component<Record<string, any>>>- Requirement
- optional
- Name
return- Kind
- return value
- Type
ReturnType<Component<Record<string, any>, Record<string, any>>>- Requirement
- n/a
provideHoverCardContext
functionexport declare function provideHoverCardContext(value: HoverCardContextValue): void;valueHoverCardContextValuereturnvoid- Name
value- Kind
- parameter
- Type
HoverCardContextValue- Requirement
- required
- Name
return- Kind
- return value
- Type
void- Requirement
- n/a
useHoverCardContext
functionexport declare function useHoverCardContext(partName: string): HoverCardContextValue;partNamestringreturnHoverCardContextValue- Name
partName- Kind
- parameter
- Type
string- Requirement
- required
- Name
return- Kind
- return value
- Type
HoverCardContextValue- Requirement
- n/a
UseHoverCardOptions
interfaceexport interface UseHoverCardOptions { readonly onOpenChange?: (detail: HoverCardOpenChangeDetail) => void; readonly scheduler?: Scheduler;}onOpenChange(detail: HoverCardOpenChangeDetail) => voidschedulerScheduler- Name
onOpenChange- Kind
- property
- Type
(detail: HoverCardOpenChangeDetail) => void- Requirement
- optional
- Name
scheduler- Kind
- property
- Type
Scheduler- Requirement
- optional
UseHoverCardResult
interfaceexport interface UseHoverCardResult { readonly service: HoverCardService; readonly connector: HoverCardApi; readonly scope: PartScope; readonly version: () => number;}connectorHoverCardApiscopePartScopeserviceHoverCardServiceversion() => number- Name
connector- Kind
- property
- Type
HoverCardApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
HoverCardService- Requirement
- required
- Name
version- Kind
- property
- Type
() => number- Requirement
- required
@grassroot/ui-headless-solid/hover-card
Solid adapter
HoverCardContent
functionexport declare function HoverCardContent(props: HoverCardContentProps): JSX.Element;propsHoverCardContentPropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
HoverCardContentProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
HoverCardContentProps
interfaceexport interface HoverCardContentProps extends JSX.HTMLAttributes<HTMLDivElement> { readonly as?: AsProp;}asAsProp- Name
as- Kind
- property
- Type
AsProp- Requirement
- optional
HoverCardContext
valueexport declare const HoverCardContext: import("solid-js").Context<HoverCardContextValue | undefined>;HoverCardContextValue
interfaceexport interface HoverCardContextValue { readonly service: HoverCardService; readonly connector: HoverCardApi; readonly scope: PartScope; readonly snapshot: Accessor<HoverCardSnapshot>;}connectorHoverCardApiscopePartScopeserviceHoverCardServicesnapshotAccessor<HoverCardSnapshot>- Name
connector- Kind
- property
- Type
HoverCardApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
HoverCardService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
Accessor<HoverCardSnapshot>- Requirement
- required
HoverCardOpenChangeDetail
interfaceexport interface HoverCardOpenChangeDetail { readonly open: boolean; readonly reason: HoverCardChangeReason;}openbooleanreasonHoverCardChangeReason- Name
open- Kind
- property
- Type
boolean- Requirement
- required
- Name
reason- Kind
- property
- Type
HoverCardChangeReason- Requirement
- required
HoverCardRoot
functionexport declare function HoverCardRoot(props: HoverCardRootProps): JSX.Element;propsHoverCardRootPropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
HoverCardRootProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
HoverCardRootProps
interfaceexport interface HoverCardRootProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, "onChange"> { readonly as?: AsProp; readonly open?: HoverCardInput["open"]; readonly defaultOpen?: HoverCardInput["defaultOpen"]; readonly openDelayMs?: HoverCardInput["openDelayMs"]; readonly closeDelayMs?: HoverCardInput["closeDelayMs"]; readonly side?: HoverCardInput["side"]; readonly onOpenChange?: (detail: HoverCardOpenChangeDetail) => void; readonly scheduler?: UseHoverCardOptions["scheduler"];}asAsPropcloseDelayMsHoverCardInput["closeDelayMs"]defaultOpenHoverCardInput["defaultOpen"]onOpenChange(detail: HoverCardOpenChangeDetail) => voidopenHoverCardInput["open"]openDelayMsHoverCardInput["openDelayMs"]schedulerUseHoverCardOptions["scheduler"]sideHoverCardInput["side"]- Name
as- Kind
- property
- Type
AsProp- Requirement
- optional
- Name
closeDelayMs- Kind
- property
- Type
HoverCardInput["closeDelayMs"]- Requirement
- optional
- Name
defaultOpen- Kind
- property
- Type
HoverCardInput["defaultOpen"]- Requirement
- optional
- Name
onOpenChange- Kind
- property
- Type
(detail: HoverCardOpenChangeDetail) => void- Requirement
- optional
- Name
open- Kind
- property
- Type
HoverCardInput["open"]- Requirement
- optional
- Name
openDelayMs- Kind
- property
- Type
HoverCardInput["openDelayMs"]- Requirement
- optional
- Name
scheduler- Kind
- property
- Type
UseHoverCardOptions["scheduler"]- Requirement
- optional
- Name
side- Kind
- property
- Type
HoverCardInput["side"]- Requirement
- optional
HoverCardTrigger
functionexport declare function HoverCardTrigger(props: HoverCardTriggerProps): JSX.Element;propsHoverCardTriggerPropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
HoverCardTriggerProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
HoverCardTriggerProps
interfaceexport interface HoverCardTriggerProps extends Omit<JSX.ButtonHTMLAttributes<HTMLButtonElement>, "type"> { readonly as?: AsProp;}asAsProp- Name
as- Kind
- property
- Type
AsProp- Requirement
- optional
useHoverCard
functionexport declare function useHoverCard(input: Accessor<HoverCardInput>, options?: UseHoverCardOptions): UseHoverCardResult;inputAccessor<HoverCardInput>optionsUseHoverCardOptionsreturnUseHoverCardResult- Name
input- Kind
- parameter
- Type
Accessor<HoverCardInput>- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseHoverCardOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseHoverCardResult- Requirement
- n/a
useHoverCardContext
functionexport declare function useHoverCardContext(partName: string): HoverCardContextValue;partNamestringreturnHoverCardContextValue- Name
partName- Kind
- parameter
- Type
string- Requirement
- required
- Name
return- Kind
- return value
- Type
HoverCardContextValue- Requirement
- n/a
UseHoverCardOptions
interfaceexport interface UseHoverCardOptions { readonly onOpenChange?: (detail: HoverCardOpenChangeDetail) => void; readonly scheduler?: Scheduler;}onOpenChange(detail: HoverCardOpenChangeDetail) => voidschedulerScheduler- Name
onOpenChange- Kind
- property
- Type
(detail: HoverCardOpenChangeDetail) => void- Requirement
- optional
- Name
scheduler- Kind
- property
- Type
Scheduler- Requirement
- optional
UseHoverCardResult
interfaceexport interface UseHoverCardResult { readonly service: HoverCardService; readonly connector: HoverCardApi; readonly scope: PartScope; readonly snapshot: Accessor<HoverCardSnapshot>;}connectorHoverCardApiscopePartScopeserviceHoverCardServicesnapshotAccessor<HoverCardSnapshot>- Name
connector- Kind
- property
- Type
HoverCardApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
HoverCardService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
Accessor<HoverCardSnapshot>- Requirement
- required