@wirekyt/angular 0.0.31 → 0.0.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/fesm2022/wirekyt-angular-field.mjs +1 -1
- package/dist/fesm2022/wirekyt-angular-field.mjs.map +1 -1
- package/dist/fesm2022/wirekyt-angular-image-cropper.mjs +336 -0
- package/dist/fesm2022/wirekyt-angular-image-cropper.mjs.map +1 -0
- package/dist/fesm2022/wirekyt-angular-json-tree-view.mjs +768 -0
- package/dist/fesm2022/wirekyt-angular-json-tree-view.mjs.map +1 -0
- package/dist/fesm2022/wirekyt-angular-menu.mjs +1041 -0
- package/dist/fesm2022/wirekyt-angular-menu.mjs.map +1 -0
- package/dist/fesm2022/wirekyt-angular-select.mjs +0 -38
- package/dist/fesm2022/wirekyt-angular-select.mjs.map +1 -1
- package/dist/fesm2022/wirekyt-angular-tooltip.mjs +0 -1
- package/dist/fesm2022/wirekyt-angular-tooltip.mjs.map +1 -1
- package/dist/fesm2022/wirekyt-angular-tree-view.mjs +858 -0
- package/dist/fesm2022/wirekyt-angular-tree-view.mjs.map +1 -0
- package/dist/package.json +17 -1
- package/dist/types/wirekyt-angular-checkbox.d.ts +1 -1
- package/dist/types/wirekyt-angular-color-picker.d.ts +1 -1
- package/dist/types/wirekyt-angular-combobox.d.ts +1 -1
- package/dist/types/wirekyt-angular-date-picker.d.ts +1 -1
- package/dist/types/wirekyt-angular-image-cropper.d.ts +122 -0
- package/dist/types/wirekyt-angular-image-cropper.d.ts.map +1 -0
- package/dist/types/wirekyt-angular-json-tree-view.d.ts +173 -0
- package/dist/types/wirekyt-angular-json-tree-view.d.ts.map +1 -0
- package/dist/types/wirekyt-angular-menu.d.ts +340 -0
- package/dist/types/wirekyt-angular-menu.d.ts.map +1 -0
- package/dist/types/wirekyt-angular-select.d.ts +0 -38
- package/dist/types/wirekyt-angular-select.d.ts.map +1 -1
- package/dist/types/wirekyt-angular-tooltip.d.ts +0 -1
- package/dist/types/wirekyt-angular-tooltip.d.ts.map +1 -1
- package/dist/types/wirekyt-angular-tree-view.d.ts +278 -0
- package/dist/types/wirekyt-angular-tree-view.d.ts.map +1 -0
- package/package.json +18 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wirekyt-angular-menu.mjs","sources":["../../src/components/menu/use-context.ts","../../src/components/menu/use.ts","../../src/components/menu/use-trigger-item-context.ts","../../src/components/menu/root.ts","../../src/components/menu/root-provider.ts","../../src/components/menu/trigger.ts","../../src/components/menu/context-trigger.ts","../../src/components/menu/positioner.ts","../../src/components/menu/content.ts","../../src/components/menu/use-item-context.ts","../../src/components/menu/use-option-item-props-context.ts","../../src/components/menu/item.ts","../../src/components/menu/context.ts","../../src/components/menu/item-context.ts","../../src/components/menu/item-text.ts","../../src/components/menu/separator.ts","../../src/components/menu/indicator.ts","../../src/components/menu/arrow.ts","../../src/components/menu/arrow-tip.ts","../../src/components/menu/checkbox-item.ts","../../src/components/menu/use-radio-item-group-context.ts","../../src/components/menu/radio-item.ts","../../src/components/menu/radio-item-group.ts","../../src/components/menu/use-item-group-context.ts","../../src/components/menu/item-group.ts","../../src/components/menu/item-group-label.ts","../../src/components/menu/trigger-item.ts","../../src/components/menu/item-indicator.ts","../../src/components/menu/wirekyt-angular-menu.ts"],"sourcesContent":["import type { ContextCarrier } from \"@wirekyt/angular\";\n\nimport { InjectionToken, inject } from \"@angular/core\";\n\nimport type { UseMenuReturn } from \"./use\";\n\nexport const MENU_CONTEXT = new InjectionToken<UseMenuReturn>(\"WIREKYT.MENU_CONTEXT\");\n\nexport function injectMenuContext(): UseMenuReturn {\n return inject(MENU_CONTEXT);\n}\n\nexport const MENU_CONTEXT_CARRIER = new InjectionToken<ContextCarrier<UseMenuReturn>>(\n \"WIREKYT.MENU_CONTEXT_CARRIER\",\n);\n\nexport function injectMenuContextCarrier(): ContextCarrier<UseMenuReturn> {\n return inject(MENU_CONTEXT_CARRIER);\n}\n","import type { Machine } from \"@wirekyt/dom\";\n\nimport {\n createId,\n injectEnvironment,\n injectLocale,\n useMachine,\n type UseMachineReturn,\n} from \"@wirekyt/angular\";\nimport * as menu from \"@wirekyt/dom/machines/menu\";\n\ntype OptionalId<T extends { id: string }> = Omit<T, \"id\"> & { id?: string };\n\nexport interface UseMenuProps extends OptionalId<Omit<menu.Props, \"dir\" | \"getRootNode\">> {}\n\nexport type UseMenuReturn = UseMachineReturn<menu.Service[\"state\"], menu.Api, menu.Service>;\n\nexport interface UseMenuOptions {\n context: () => UseMenuProps;\n}\n\ntype MenuContext = Record<string, unknown>;\ntype MenuSchema = menu.Machine extends Machine<infer TSchema> ? TSchema : never;\n\nexport function useMenu(options: UseMenuOptions): UseMenuReturn {\n const locale = injectLocale();\n const environment = injectEnvironment();\n const fallbackId = createId();\n\n return useMachine<MenuSchema, menu.Api>({\n machine: menu.machine,\n context: () => {\n const props = options.context();\n return {\n ...props,\n dir: locale.dir,\n getRootNode: environment.getRootNode,\n id: props.id ?? fallbackId,\n } as MenuContext;\n },\n connect: (service, normalize) => menu.connect(service, normalize),\n });\n}\n","import { InjectionToken, inject, type Signal } from \"@angular/core\";\n\nimport type { UseMenuReturn } from \"./use\";\n\nexport type MenuTriggerItemProps = ReturnType<\n ReturnType<UseMenuReturn[\"api\"]>[\"getTriggerItemProps\"]\n>;\nexport type MenuTriggerItemContext = Signal<MenuTriggerItemProps | undefined>;\n\nexport const MENU_TRIGGER_ITEM_CONTEXT = new InjectionToken<MenuTriggerItemContext>(\n \"WIREKYT.MENU_TRIGGER_ITEM_CONTEXT\",\n);\n\nexport function injectMenuTriggerItemContext(): MenuTriggerItemContext {\n return inject(MENU_TRIGGER_ITEM_CONTEXT);\n}\n","import type { ContextCarrier } from \"@wirekyt/angular\";\nimport type * as menu from \"@wirekyt/dom/machines/menu\";\n\nimport {\n Directive,\n DestroyRef,\n EnvironmentInjector,\n Injector,\n afterNextRender,\n type OutputEmitterRef,\n type ProviderToken,\n booleanAttribute,\n computed,\n forwardRef,\n inject,\n input,\n model,\n output,\n type InputSignal,\n type InputSignalWithTransform,\n type ModelSignal,\n type Signal,\n} from \"@angular/core\";\nimport { buildRootCarrier } from \"@wirekyt/angular\";\nimport { PRESENCE_CONTEXT, PresenceBase } from \"@wirekyt/angular/presence\";\n\nimport type {\n MenuElementIds,\n MenuFocusOutsideEvent,\n MenuHighlightChangeDetails,\n MenuInteractOutsideEvent,\n MenuOpenChangeDetails,\n MenuPointerDownOutsideEvent,\n MenuPositioningOptions,\n MenuSelectionDetails,\n MenuTriggerValueChangeDetails,\n} from \"./types\";\n\nimport { useMenu, type UseMenuReturn } from \"./use\";\nimport { MENU_CONTEXT, MENU_CONTEXT_CARRIER } from \"./use-context\";\nimport { MENU_TRIGGER_ITEM_CONTEXT } from \"./use-trigger-item-context\";\n\n@Directive({\n selector: \"[menu-root]\",\n standalone: true,\n exportAs: \"menuRoot\",\n providers: [\n {\n provide: PRESENCE_CONTEXT,\n useFactory: (root: MenuRoot) => root.presence,\n deps: [forwardRef(() => MenuRoot)],\n },\n { provide: MENU_CONTEXT, useExisting: forwardRef(() => MenuRoot) },\n {\n provide: MENU_TRIGGER_ITEM_CONTEXT,\n useFactory: (root: MenuRoot) => root.triggerItemProps,\n deps: [forwardRef(() => MenuRoot)],\n },\n {\n provide: MENU_CONTEXT_CARRIER,\n useFactory: (root: MenuRoot) => root.getContextCarrier(),\n deps: [forwardRef(() => MenuRoot)],\n },\n ],\n})\nexport class MenuRoot extends PresenceBase implements UseMenuReturn {\n readonly id: InputSignal<string | undefined> = input<string | undefined>(undefined);\n readonly ids: InputSignal<Partial<MenuElementIds> | undefined> = input<\n Partial<MenuElementIds> | undefined\n >(undefined);\n readonly open: ModelSignal<boolean | undefined> = model<boolean | undefined>(undefined);\n readonly defaultOpen: InputSignalWithTransform<boolean, unknown> = input(false, {\n transform: booleanAttribute,\n });\n readonly highlightedValue: ModelSignal<string | null | undefined> = model<\n string | null | undefined\n >(undefined);\n readonly defaultHighlightedValue: InputSignal<string | null | undefined> = input<\n string | null | undefined\n >(undefined);\n readonly loopFocus: InputSignalWithTransform<boolean, unknown> = input(false, {\n transform: booleanAttribute,\n });\n readonly closeOnSelect: InputSignalWithTransform<boolean | undefined, unknown> = input<\n boolean | undefined,\n unknown\n >(undefined, {\n transform: optionalBooleanAttribute,\n });\n readonly typeahead: InputSignalWithTransform<boolean | undefined, unknown> = input<\n boolean | undefined,\n unknown\n >(undefined, {\n transform: optionalBooleanAttribute,\n });\n readonly composite: InputSignalWithTransform<boolean | undefined, unknown> = input<\n boolean | undefined,\n unknown\n >(undefined, {\n transform: optionalBooleanAttribute,\n });\n readonly positioning: InputSignal<MenuPositioningOptions | undefined> = input<\n MenuPositioningOptions | undefined\n >(undefined);\n readonly ariaLabel: InputSignal<string | undefined> = input<string | undefined>(undefined, {\n alias: \"aria-label\",\n });\n readonly anchorPoint: InputSignal<menu.Props[\"anchorPoint\"]> =\n input<menu.Props[\"anchorPoint\"]>(undefined);\n readonly navigate: InputSignal<menu.Props[\"navigate\"]> = input<menu.Props[\"navigate\"]>(undefined);\n readonly triggerValue: ModelSignal<string | null | undefined> = model<string | null | undefined>(\n undefined,\n );\n readonly defaultTriggerValue: InputSignal<string | null | undefined> = input<\n string | null | undefined\n >(undefined);\n\n readonly select: OutputEmitterRef<MenuSelectionDetails> = output<MenuSelectionDetails>();\n readonly escapeKeyDown: OutputEmitterRef<KeyboardEvent> = output<KeyboardEvent>();\n readonly focusOutside: OutputEmitterRef<MenuFocusOutsideEvent> = output<MenuFocusOutsideEvent>();\n readonly highlightChange: OutputEmitterRef<MenuHighlightChangeDetails> =\n output<MenuHighlightChangeDetails>();\n readonly interactOutside: OutputEmitterRef<MenuInteractOutsideEvent> =\n output<MenuInteractOutsideEvent>();\n readonly openChangeDetails: OutputEmitterRef<MenuOpenChangeDetails> =\n output<MenuOpenChangeDetails>();\n readonly pointerDownOutside: OutputEmitterRef<MenuPointerDownOutsideEvent> =\n output<MenuPointerDownOutsideEvent>();\n readonly requestDismiss: OutputEmitterRef<\n Parameters<NonNullable<menu.Props[\"onRequestDismiss\"]>>[0]\n > = output<Parameters<NonNullable<menu.Props[\"onRequestDismiss\"]>>[0]>();\n readonly triggerValueChangeDetails: OutputEmitterRef<MenuTriggerValueChangeDetails> =\n output<MenuTriggerValueChangeDetails>();\n\n private readonly machine = useMenu({\n context: () => ({\n id: this.id(),\n ids: this.ids(),\n open: this.open(),\n defaultOpen: this.defaultOpen(),\n highlightedValue: this.highlightedValue(),\n defaultHighlightedValue: this.defaultHighlightedValue(),\n loopFocus: this.loopFocus(),\n closeOnSelect: this.closeOnSelect(),\n typeahead: this.typeahead(),\n composite: this.composite(),\n positioning: this.positioning(),\n \"aria-label\": this.ariaLabel(),\n anchorPoint: this.anchorPoint(),\n navigate: this.navigate(),\n triggerValue: this.triggerValue(),\n defaultTriggerValue: this.defaultTriggerValue(),\n onOpenChange: (details) => {\n if (this.open() !== details.open) this.open.set(details.open);\n this.openChangeDetails.emit(details);\n },\n onHighlightChange: (details) => {\n if (this.highlightedValue() !== details.highlightedValue) {\n this.highlightedValue.set(details.highlightedValue);\n }\n this.highlightChange.emit(details);\n },\n onSelect: (details) => {\n this.select.emit(details);\n },\n onTriggerValueChange: (details: MenuTriggerValueChangeDetails) => {\n if (this.triggerValue() !== details.value) this.triggerValue.set(details.value);\n this.triggerValueChangeDetails.emit(details);\n },\n onEscapeKeyDown: (event) => this.escapeKeyDown.emit(event),\n onFocusOutside: (event) => this.focusOutside.emit(event),\n onInteractOutside: (event) => this.interactOutside.emit(event),\n onPointerDownOutside: (event) => this.pointerDownOutside.emit(event),\n onRequestDismiss: (event) => this.requestDismiss.emit(event),\n }),\n });\n\n readonly state: Signal<menu.Service[\"state\"]> = this.machine.state;\n readonly api: Signal<menu.Api> = this.machine.api;\n readonly service: menu.Service = this.machine.service;\n readonly send: menu.Service[\"send\"] = this.machine.send;\n readonly presence = this.createPresence(() => this.api().open);\n\n protected readonly contextCarrier: ContextCarrier<MenuRoot> = buildRootCarrier<MenuRoot>({\n providers: [{ provide: PRESENCE_CONTEXT, useValue: this.presence }],\n root: this,\n rootToken: MENU_CONTEXT as ProviderToken<MenuRoot>,\n originInjector: inject(Injector),\n environmentInjector: inject(EnvironmentInjector),\n });\n\n protected readonly parentMenu: UseMenuReturn | null = inject(MENU_CONTEXT, {\n optional: true,\n skipSelf: true,\n });\n readonly triggerItemProps = computed(() =>\n this.parentMenu?.api().getTriggerItemProps(this.api()),\n );\n\n constructor() {\n super();\n const parent = this.parentMenu;\n if (parent) {\n const destroyRef = inject(DestroyRef);\n let connected = false;\n let destroyed = false;\n\n destroyRef.onDestroy(() => {\n destroyed = true;\n if (!connected) return;\n const childId = this.machine.service.prop(\"id\");\n if (!childId) return;\n const children = parent.service.refs.get(\"children\");\n const nextChildren = { ...children };\n delete nextChildren[childId];\n parent.service.refs.set(\"children\", nextChildren);\n this.machine.service.refs.set(\"parent\", null);\n this.machine.service.context.set(\"isSubmenu\", false);\n });\n\n afterNextRender(() => {\n if (destroyed) return;\n parent.api().setChild(this.machine.service);\n this.machine.api().setParent(parent.service);\n connected = true;\n });\n }\n }\n\n getContextCarrier(): ContextCarrier<MenuRoot> {\n return this.contextCarrier;\n }\n}\n\nfunction optionalBooleanAttribute(value: unknown): boolean | undefined {\n return value === undefined || value === null ? undefined : booleanAttribute(value);\n}\n","import type { ContextCarrier } from \"@wirekyt/angular\";\nimport type * as menu from \"@wirekyt/dom/machines/menu\";\n\nimport {\n Directive,\n DestroyRef,\n EnvironmentInjector,\n Injector,\n afterNextRender,\n type InputSignal,\n type ProviderToken,\n type Signal,\n computed,\n forwardRef,\n inject,\n input,\n} from \"@angular/core\";\nimport { buildRootCarrier } from \"@wirekyt/angular\";\nimport { PRESENCE_CONTEXT, PresenceBase } from \"@wirekyt/angular/presence\";\n\nimport type { UseMenuReturn } from \"./use\";\n\nimport { MENU_CONTEXT, MENU_CONTEXT_CARRIER } from \"./use-context\";\nimport { MENU_TRIGGER_ITEM_CONTEXT } from \"./use-trigger-item-context\";\n\n@Directive({\n selector: \"[menu-root-provider]\",\n standalone: true,\n exportAs: \"menuRootProvider\",\n providers: [\n {\n provide: PRESENCE_CONTEXT,\n useFactory: (provider: MenuRootProvider) => provider.presence,\n deps: [forwardRef(() => MenuRootProvider)],\n },\n { provide: MENU_CONTEXT, useExisting: forwardRef(() => MenuRootProvider) },\n {\n provide: MENU_TRIGGER_ITEM_CONTEXT,\n useFactory: (provider: MenuRootProvider) => provider.triggerItemProps,\n deps: [forwardRef(() => MenuRootProvider)],\n },\n {\n provide: MENU_CONTEXT_CARRIER,\n useFactory: (provider: MenuRootProvider) => provider.getContextCarrier(),\n deps: [forwardRef(() => MenuRootProvider)],\n },\n ],\n})\nexport class MenuRootProvider extends PresenceBase implements UseMenuReturn {\n readonly value: InputSignal<UseMenuReturn> = input.required<UseMenuReturn>();\n readonly state: Signal<menu.Service[\"state\"]> = computed(() => this.value().state());\n readonly api: Signal<menu.Api> = computed(() => this.value().api());\n readonly send: menu.Service[\"send\"] = (event) => this.value().send(event);\n\n get service(): menu.Service {\n return this.value().service;\n }\n\n readonly presence = this.createPresence(() => {\n try {\n return this.api().open;\n } catch {\n return false;\n }\n });\n\n protected readonly contextCarrier: ContextCarrier<MenuRootProvider> =\n buildRootCarrier<MenuRootProvider>({\n providers: [{ provide: PRESENCE_CONTEXT, useValue: this.presence }],\n root: this,\n rootToken: MENU_CONTEXT as ProviderToken<MenuRootProvider>,\n originInjector: inject(Injector),\n environmentInjector: inject(EnvironmentInjector),\n });\n\n protected readonly parentMenu: UseMenuReturn | null = inject(MENU_CONTEXT, {\n optional: true,\n skipSelf: true,\n });\n readonly triggerItemProps = computed(() =>\n this.parentMenu?.api().getTriggerItemProps(this.api()),\n );\n\n constructor() {\n super();\n const parent = this.parentMenu;\n if (!parent) return;\n\n const destroyRef = inject(DestroyRef);\n let connected = false;\n let destroyed = false;\n\n destroyRef.onDestroy(() => {\n destroyed = true;\n if (!connected) return;\n const childId = this.service.prop(\"id\");\n if (!childId) return;\n const children = parent.service.refs.get(\"children\");\n const nextChildren = { ...children };\n delete nextChildren[childId];\n parent.service.refs.set(\"children\", nextChildren);\n this.service.refs.set(\"parent\", null);\n this.service.context.set(\"isSubmenu\", false);\n });\n\n afterNextRender(() => {\n if (destroyed) return;\n parent.api().setChild(this.service);\n this.api().setParent(parent.service);\n connected = true;\n });\n }\n\n getContextCarrier(): ContextCarrier<MenuRootProvider> {\n return this.contextCarrier;\n }\n}\n","import {\n DestroyRef,\n Directive,\n ElementRef,\n Renderer2,\n inject,\n input,\n type InputSignal,\n} from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\nimport { injectPresenceContext } from \"@wirekyt/angular/presence\";\n\nimport { injectMenuContext } from \"./use-context\";\n\n@Directive({\n selector: \"[menu-trigger]\",\n standalone: true,\n exportAs: \"menuTrigger\",\n})\nexport class MenuTrigger {\n readonly value: InputSignal<string | undefined> = input<string | undefined>(undefined);\n\n constructor() {\n const context = injectMenuContext();\n const presence = injectPresenceContext();\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => {\n const props = context.api().getTriggerProps({ value: this.value() });\n return {\n ...props,\n \"aria-controls\": presence.unmounted() ? undefined : props[\"aria-controls\"],\n };\n },\n });\n }\n}\n","import {\n DestroyRef,\n Directive,\n ElementRef,\n Renderer2,\n inject,\n input,\n type InputSignal,\n} from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { injectMenuContext } from \"./use-context\";\n\n@Directive({\n selector: \"[menu-context-trigger]\",\n standalone: true,\n exportAs: \"menuContextTrigger\",\n})\nexport class MenuContextTrigger {\n readonly value: InputSignal<string | undefined> = input<string | undefined>(undefined);\n\n constructor() {\n const context = injectMenuContext();\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => context.api().getContextTriggerProps({ value: this.value() }),\n });\n }\n}\n","import { DestroyRef, Directive, ElementRef, Renderer2, inject } from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { injectMenuContext } from \"./use-context\";\n\n@Directive({\n selector: \"[menu-positioner]\",\n standalone: true,\n exportAs: \"menuPositioner\",\n})\nexport class MenuPositioner {\n constructor() {\n const context = injectMenuContext();\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => context.api().getPositionerProps(),\n });\n }\n}\n","import {\n DestroyRef,\n Directive,\n ElementRef,\n EmbeddedViewRef,\n Renderer2,\n TemplateRef,\n ViewContainerRef,\n effect,\n inject,\n untracked,\n} from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\nimport { injectPresenceContext } from \"@wirekyt/angular/presence\";\n\nimport { injectMenuContext } from \"./use-context\";\n\n@Directive({\n selector: \"[menu-content]\",\n standalone: true,\n exportAs: \"menuContent\",\n})\nexport class MenuContent {\n constructor() {\n const context = injectMenuContext();\n const presence = injectPresenceContext();\n const template = inject(TemplateRef<unknown>, { optional: true });\n const container = inject(ViewContainerRef);\n const host = inject(ElementRef);\n const elementRef = template ? { nativeElement: null as HTMLElement | null } : host;\n let view: EmbeddedViewRef<unknown> | undefined;\n\n effect(() => {\n const unmounted = presence.unmounted();\n if (template) {\n if (unmounted) {\n elementRef.nativeElement = null;\n container.clear();\n view = undefined;\n } else if (!view) {\n view = container.createEmbeddedView(template);\n elementRef.nativeElement =\n view.rootNodes.find((node: Node) => node.nodeType === 1) ?? null;\n }\n }\n untracked(() => presence.setNode(elementRef.nativeElement));\n });\n\n bindProps({\n elementRef,\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => {\n presence.unmounted();\n return { ...context.api().getContentProps(), ...presence.getPresenceProps() };\n },\n });\n }\n}\n","import type * as menu from \"@wirekyt/dom/machines/menu\";\n\nimport { InjectionToken, type Signal, inject } from \"@angular/core\";\n\n/**\n * Internal DI token carrying a menu item's own value/checked/api so descendant\n * indicators can apply Zag's `getItemIndicatorProps`. Not exported from the\n * public entry point.\n *\n * When `checked` is `undefined`, the parent item is a non-option item and\n * indicator descendants should not render a checked/unchecked state.\n */\nexport interface MenuItemContext {\n readonly state: Signal<menu.ItemState | menu.OptionItemState>;\n readonly value: Signal<string>;\n readonly disabled: Signal<boolean | undefined>;\n readonly valueText: Signal<string | undefined>;\n readonly checked: Signal<boolean | undefined>;\n readonly api: Signal<menu.Api>;\n}\n\nexport const MENU_ITEM_CONTEXT = new InjectionToken<MenuItemContext>(\"WIREKYT.MENU_ITEM_CONTEXT\");\n\nexport function injectMenuItemContext(): MenuItemContext {\n return inject(MENU_ITEM_CONTEXT);\n}\n","import type * as menu from \"@wirekyt/dom/machines/menu\";\n\nimport { InjectionToken, inject, type Signal } from \"@angular/core\";\n\nexport type MenuItemPropsContext = Signal<menu.ItemBaseProps>;\n\nexport const MENU_ITEM_PROPS_CONTEXT = new InjectionToken<MenuItemPropsContext>(\n \"WIREKYT.MENU_ITEM_PROPS_CONTEXT\",\n);\n\nexport function injectMenuItemPropsContext(): MenuItemPropsContext {\n return inject(MENU_ITEM_PROPS_CONTEXT);\n}\n","import type * as menu from \"@wirekyt/dom/machines/menu\";\n\nimport {\n DestroyRef,\n Directive,\n ElementRef,\n Renderer2,\n afterNextRender,\n booleanAttribute,\n computed,\n forwardRef,\n inject,\n input,\n output,\n type InputSignal,\n type InputSignalWithTransform,\n type OutputEmitterRef,\n type Signal,\n} from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { injectMenuContext } from \"./use-context\";\nimport { MENU_ITEM_CONTEXT, type MenuItemContext } from \"./use-item-context\";\nimport { MENU_ITEM_PROPS_CONTEXT } from \"./use-option-item-props-context\";\n\n@Directive({\n selector: \"[menu-item]\",\n standalone: true,\n exportAs: \"menuItem\",\n providers: [\n { provide: MENU_ITEM_CONTEXT, useExisting: forwardRef(() => MenuItem) },\n {\n provide: MENU_ITEM_PROPS_CONTEXT,\n useFactory: (item: MenuItem) => item.itemProps,\n deps: [forwardRef(() => MenuItem)],\n },\n ],\n})\nexport class MenuItem implements MenuItemContext {\n readonly value: InputSignal<string> = input.required<string>();\n readonly disabled: InputSignalWithTransform<boolean, unknown> = input(false, {\n transform: booleanAttribute,\n });\n readonly valueText: InputSignal<string | undefined> = input<string | undefined>(undefined);\n readonly closeOnSelect: InputSignal<boolean | undefined> = input<boolean | undefined>(undefined);\n readonly select: OutputEmitterRef<void> = output<void>();\n\n private readonly context = injectMenuContext();\n readonly api: Signal<menu.Api> = computed(() => this.context.api());\n readonly checked: Signal<boolean | undefined> = computed(() => undefined);\n\n readonly itemProps = computed(() => ({\n value: this.value(),\n disabled: this.disabled(),\n valueText: this.valueText(),\n closeOnSelect: this.closeOnSelect(),\n }));\n\n readonly state = computed(() => this.context.api().getItemState(this.itemProps()));\n readonly highlighted: Signal<boolean> = computed(() => this.state().highlighted);\n readonly itemId: Signal<string> = computed(() => this.state().id);\n\n constructor() {\n const destroyRef = inject(DestroyRef);\n const elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n const renderer = inject(Renderer2);\n bindProps({\n elementRef,\n renderer,\n destroyRef,\n props: () => this.context.api().getItemProps(this.itemProps()),\n });\n\n let dispose: VoidFunction | undefined;\n let destroyed = false;\n destroyRef.onDestroy(() => {\n destroyed = true;\n dispose?.();\n });\n afterNextRender(() => {\n if (destroyed) return;\n dispose = this.context\n .api()\n .addItemListener({ id: this.state().id, onSelect: () => this.select.emit() });\n });\n }\n}\n","import {\n DestroyRef,\n Directive,\n TemplateRef,\n ViewContainerRef,\n effect,\n inject,\n} from \"@angular/core\";\n\nimport type { UseMenuReturn } from \"./use\";\n\nimport { injectMenuContext } from \"./use-context\";\n\nexport interface MenuContextTemplate {\n $implicit: UseMenuReturn[\"api\"];\n api: UseMenuReturn[\"api\"];\n}\n\n@Directive({\n selector: \"[menu-context]\",\n standalone: true,\n exportAs: \"menuContext\",\n})\nexport class MenuContext {\n static ngTemplateContextGuard(\n _directive: MenuContext,\n context: unknown,\n ): context is MenuContextTemplate {\n void context;\n return true;\n }\n\n private readonly menu = injectMenuContext();\n private readonly templateRef = inject<TemplateRef<MenuContextTemplate>>(TemplateRef);\n private readonly viewContainer = inject(ViewContainerRef);\n\n constructor() {\n const view = this.viewContainer.createEmbeddedView(this.templateRef, {\n $implicit: this.menu.api,\n api: this.menu.api,\n });\n\n effect(() => {\n this.menu.api();\n view.detectChanges();\n });\n\n inject(DestroyRef).onDestroy(() => view.destroy());\n }\n}\n","import {\n DestroyRef,\n Directive,\n TemplateRef,\n ViewContainerRef,\n effect,\n inject,\n} from \"@angular/core\";\n\nimport type { MenuItemContext as UseMenuItemContext } from \"./use-item-context\";\n\nimport { injectMenuItemContext } from \"./use-item-context\";\n\nexport interface MenuItemContextTemplate {\n $implicit: UseMenuItemContext;\n item: UseMenuItemContext;\n}\n\n@Directive({\n selector: \"[menu-item-context]\",\n standalone: true,\n exportAs: \"menuItemContext\",\n})\nexport class MenuItemContextDirective {\n static ngTemplateContextGuard(\n _directive: MenuItemContextDirective,\n context: unknown,\n ): context is MenuItemContextTemplate {\n void context;\n return true;\n }\n\n private readonly item = injectMenuItemContext();\n private readonly templateRef = inject<TemplateRef<MenuItemContextTemplate>>(TemplateRef);\n private readonly viewContainer = inject(ViewContainerRef);\n\n constructor() {\n const view = this.viewContainer.createEmbeddedView(this.templateRef, {\n $implicit: this.item,\n item: this.item,\n });\n\n effect(() => {\n this.item.state();\n view.detectChanges();\n });\n\n inject(DestroyRef).onDestroy(() => view.destroy());\n }\n}\n","import {\n DestroyRef,\n Directive,\n ElementRef,\n Renderer2,\n booleanAttribute,\n inject,\n input,\n type InputSignal,\n type InputSignalWithTransform,\n} from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { injectMenuContext } from \"./use-context\";\nimport { MENU_ITEM_CONTEXT } from \"./use-item-context\";\nimport { MENU_ITEM_PROPS_CONTEXT } from \"./use-option-item-props-context\";\n\n@Directive({\n selector: \"[menu-item-text]\",\n standalone: true,\n exportAs: \"menuItemText\",\n})\nexport class MenuItemText {\n readonly value: InputSignal<string | undefined> = input<string | undefined>(undefined);\n readonly disabled: InputSignalWithTransform<boolean, unknown> = input(false, {\n transform: booleanAttribute,\n });\n readonly valueText: InputSignal<string | undefined> = input<string | undefined>(undefined);\n\n constructor() {\n const context = injectMenuContext();\n const item = inject(MENU_ITEM_CONTEXT, { optional: true });\n const itemProps = inject(MENU_ITEM_PROPS_CONTEXT, { optional: true });\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () =>\n context.api().getItemTextProps(\n itemProps?.() ?? {\n value: item?.value() ?? this.value() ?? \"\",\n disabled: item?.disabled() ?? this.disabled(),\n valueText: item?.valueText() ?? this.valueText(),\n ...(item?.checked() !== undefined ? { checked: item.checked() } : {}),\n },\n ),\n });\n }\n}\n","import { DestroyRef, Directive, ElementRef, Renderer2, inject } from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { injectMenuContext } from \"./use-context\";\n\n@Directive({\n selector: \"[menu-separator]\",\n standalone: true,\n exportAs: \"menuSeparator\",\n})\nexport class MenuSeparator {\n constructor() {\n const context = injectMenuContext();\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => context.api().getSeparatorProps(),\n });\n }\n}\n","import { DestroyRef, Directive, ElementRef, Renderer2, inject } from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { injectMenuContext } from \"./use-context\";\n\n@Directive({\n selector: \"[menu-indicator]\",\n standalone: true,\n exportAs: \"menuIndicator\",\n})\nexport class MenuIndicator {\n constructor() {\n const context = injectMenuContext();\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => context.api().getIndicatorProps(),\n });\n }\n}\n","import { DestroyRef, Directive, ElementRef, Renderer2, inject } from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { injectMenuContext } from \"./use-context\";\n\n@Directive({\n selector: \"[menu-arrow]\",\n standalone: true,\n exportAs: \"menuArrow\",\n})\nexport class MenuArrow {\n constructor() {\n const context = injectMenuContext();\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => context.api().getArrowProps(),\n });\n }\n}\n","import { DestroyRef, Directive, ElementRef, Renderer2, inject } from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { injectMenuContext } from \"./use-context\";\n\n@Directive({\n selector: \"[menu-arrow-tip]\",\n standalone: true,\n exportAs: \"menuArrowTip\",\n})\nexport class MenuArrowTip {\n constructor() {\n const context = injectMenuContext();\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => context.api().getArrowTipProps(),\n });\n }\n}\n","import type * as menu from \"@wirekyt/dom/machines/menu\";\n\nimport {\n DestroyRef,\n Directive,\n ElementRef,\n Renderer2,\n booleanAttribute,\n computed,\n forwardRef,\n inject,\n input,\n model,\n type InputSignal,\n type InputSignalWithTransform,\n type ModelSignal,\n type Signal,\n} from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { injectMenuContext } from \"./use-context\";\nimport { MENU_ITEM_CONTEXT, type MenuItemContext } from \"./use-item-context\";\nimport { MENU_ITEM_PROPS_CONTEXT } from \"./use-option-item-props-context\";\n\n@Directive({\n selector: \"[menu-checkbox-item]\",\n standalone: true,\n exportAs: \"menuCheckboxItem\",\n providers: [\n { provide: MENU_ITEM_CONTEXT, useExisting: forwardRef(() => MenuCheckboxItem) },\n {\n provide: MENU_ITEM_PROPS_CONTEXT,\n useFactory: (item: MenuCheckboxItem) => item.optionItemProps,\n deps: [forwardRef(() => MenuCheckboxItem)],\n },\n ],\n})\nexport class MenuCheckboxItem implements MenuItemContext {\n readonly value: InputSignal<string> = input.required<string>();\n readonly checked: ModelSignal<boolean | undefined> = model<boolean | undefined>(undefined);\n readonly disabledInput: InputSignalWithTransform<boolean, unknown> = input(false, {\n alias: \"disabled\",\n transform: booleanAttribute,\n });\n readonly valueText: InputSignal<string | undefined> = input<string | undefined>(undefined);\n readonly closeOnSelect: InputSignal<boolean | undefined> = input<boolean | undefined>(undefined);\n\n readonly disabled: Signal<boolean | undefined> = computed(() => this.disabledInput());\n\n private readonly context = injectMenuContext();\n readonly api: Signal<menu.Api> = computed(() => this.context.api());\n readonly optionItemProps = computed(() => ({\n type: \"checkbox\" as const,\n value: this.value(),\n checked: this.checked() ?? false,\n disabled: this.disabledInput(),\n valueText: this.valueText(),\n closeOnSelect: this.closeOnSelect(),\n onCheckedChange: (next: boolean) => {\n if (this.checked() !== next) this.checked.set(next);\n },\n }));\n readonly state = computed(() => this.context.api().getOptionItemState(this.optionItemProps()));\n\n constructor() {\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => this.context.api().getOptionItemProps(this.optionItemProps()),\n });\n }\n}\n","import { InjectionToken, type Signal, inject } from \"@angular/core\";\n\nexport interface MenuValueChangeDetails {\n value: string;\n}\n\n/**\n * Internal DI token carrying a radio item-group's id and current selected value\n * so radio items inside the group can mark themselves checked and emit\n * value-change events through the parent group's model channel.\n */\nexport interface MenuRadioItemGroupContext {\n readonly id: Signal<string>;\n readonly value: Signal<string | null | undefined>;\n setValue(next: string): void;\n}\n\nexport const MENU_RADIO_ITEM_GROUP_CONTEXT = new InjectionToken<MenuRadioItemGroupContext>(\n \"WIREKYT.MENU_RADIO_ITEM_GROUP_CONTEXT\",\n);\n\nexport function injectMenuRadioItemGroupContext(): MenuRadioItemGroupContext {\n return inject(MENU_RADIO_ITEM_GROUP_CONTEXT);\n}\n","import type * as menu from \"@wirekyt/dom/machines/menu\";\n\nimport {\n DestroyRef,\n Directive,\n ElementRef,\n Renderer2,\n booleanAttribute,\n computed,\n forwardRef,\n inject,\n input,\n type InputSignal,\n type InputSignalWithTransform,\n type Signal,\n} from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { injectMenuContext } from \"./use-context\";\nimport { MENU_ITEM_CONTEXT, type MenuItemContext } from \"./use-item-context\";\nimport { MENU_ITEM_PROPS_CONTEXT } from \"./use-option-item-props-context\";\nimport { injectMenuRadioItemGroupContext } from \"./use-radio-item-group-context\";\n\n@Directive({\n selector: \"[menu-radio-item]\",\n standalone: true,\n exportAs: \"menuRadioItem\",\n providers: [\n { provide: MENU_ITEM_CONTEXT, useExisting: forwardRef(() => MenuRadioItem) },\n {\n provide: MENU_ITEM_PROPS_CONTEXT,\n useFactory: (item: MenuRadioItem) => item.optionItemProps,\n deps: [forwardRef(() => MenuRadioItem)],\n },\n ],\n})\nexport class MenuRadioItem implements MenuItemContext {\n readonly value: InputSignal<string> = input.required<string>();\n readonly disabledInput: InputSignalWithTransform<boolean, unknown> = input(false, {\n alias: \"disabled\",\n transform: booleanAttribute,\n });\n readonly valueText: InputSignal<string | undefined> = input<string | undefined>(undefined);\n readonly closeOnSelect: InputSignal<boolean | undefined> = input<boolean | undefined>(undefined);\n\n readonly disabled: Signal<boolean | undefined> = computed(() => this.disabledInput());\n\n private readonly context = injectMenuContext();\n private readonly radioGroup = injectMenuRadioItemGroupContext();\n readonly api: Signal<menu.Api> = computed(() => this.context.api());\n readonly checked: Signal<boolean> = computed(() => this.radioGroup.value() === this.value());\n readonly optionItemProps = computed(() => ({\n type: \"radio\" as const,\n value: this.value(),\n checked: this.checked(),\n disabled: this.disabledInput(),\n valueText: this.valueText(),\n closeOnSelect: this.closeOnSelect(),\n onCheckedChange: () => this.radioGroup.setValue(this.value()),\n }));\n readonly state = computed(() => this.context.api().getOptionItemState(this.optionItemProps()));\n\n constructor() {\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => this.context.api().getOptionItemProps(this.optionItemProps()),\n });\n }\n}\n","import {\n DestroyRef,\n Directive,\n ElementRef,\n Renderer2,\n computed,\n forwardRef,\n inject,\n input,\n model,\n output,\n type InputSignal,\n type ModelSignal,\n type OutputEmitterRef,\n type Signal,\n} from \"@angular/core\";\nimport { bindProps, createId } from \"@wirekyt/angular\";\n\nimport { injectMenuContext } from \"./use-context\";\nimport {\n MENU_RADIO_ITEM_GROUP_CONTEXT,\n type MenuRadioItemGroupContext,\n type MenuValueChangeDetails,\n} from \"./use-radio-item-group-context\";\n\n@Directive({\n selector: \"[menu-radio-item-group]\",\n standalone: true,\n exportAs: \"menuRadioItemGroup\",\n providers: [\n { provide: MENU_RADIO_ITEM_GROUP_CONTEXT, useExisting: forwardRef(() => MenuRadioItemGroup) },\n ],\n})\nexport class MenuRadioItemGroup implements MenuRadioItemGroupContext {\n readonly idInput: InputSignal<string | undefined> = input<string | undefined>(undefined, {\n alias: \"id\",\n });\n readonly value: ModelSignal<string | null | undefined> = model<string | null | undefined>(\n undefined,\n );\n readonly valueChangeDetails: OutputEmitterRef<MenuValueChangeDetails> =\n output<MenuValueChangeDetails>();\n\n private readonly fallbackId = createId();\n\n readonly id: Signal<string> = computed(() => this.idInput() ?? this.fallbackId);\n\n setValue(next: string): void {\n if (this.value() === next) return;\n this.value.set(next);\n this.valueChangeDetails.emit({ value: next });\n }\n\n constructor() {\n const context = injectMenuContext();\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => context.api().getItemGroupProps({ id: this.id() }),\n });\n }\n}\n","import { InjectionToken, type Signal, inject } from \"@angular/core\";\n\n/**\n * Internal DI token carrying a non-radio item-group's id so the corresponding\n * `menuItemGroupLabel` can apply Zag's `getItemGroupLabelProps`.\n */\nexport interface MenuItemGroupContext {\n readonly id: Signal<string>;\n}\n\nexport const MENU_ITEM_GROUP_CONTEXT = new InjectionToken<MenuItemGroupContext>(\n \"WIREKYT.MENU_ITEM_GROUP_CONTEXT\",\n);\n\nexport function injectMenuItemGroupContext(): MenuItemGroupContext {\n return inject(MENU_ITEM_GROUP_CONTEXT);\n}\n","import {\n DestroyRef,\n Directive,\n ElementRef,\n Renderer2,\n computed,\n forwardRef,\n inject,\n input,\n type InputSignal,\n type Signal,\n} from \"@angular/core\";\nimport { bindProps, createId } from \"@wirekyt/angular\";\n\nimport { injectMenuContext } from \"./use-context\";\nimport { MENU_ITEM_GROUP_CONTEXT, type MenuItemGroupContext } from \"./use-item-group-context\";\n\n@Directive({\n selector: \"[menu-item-group]\",\n standalone: true,\n exportAs: \"menuItemGroup\",\n providers: [{ provide: MENU_ITEM_GROUP_CONTEXT, useExisting: forwardRef(() => MenuItemGroup) }],\n})\nexport class MenuItemGroup implements MenuItemGroupContext {\n readonly idInput: InputSignal<string | undefined> = input<string | undefined>(undefined, {\n alias: \"id\",\n });\n\n private readonly fallbackId = createId();\n\n readonly id: Signal<string> = computed(() => this.idInput() ?? this.fallbackId);\n\n constructor() {\n const context = injectMenuContext();\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => context.api().getItemGroupProps({ id: this.id() }),\n });\n }\n}\n","import { DestroyRef, Directive, ElementRef, Renderer2, inject } from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { injectMenuContext } from \"./use-context\";\nimport { MENU_ITEM_GROUP_CONTEXT } from \"./use-item-group-context\";\nimport { MENU_RADIO_ITEM_GROUP_CONTEXT } from \"./use-radio-item-group-context\";\n\n@Directive({\n selector: \"[menu-item-group-label]\",\n standalone: true,\n exportAs: \"menuItemGroupLabel\",\n})\nexport class MenuItemGroupLabel {\n constructor() {\n const context = injectMenuContext();\n const itemGroup = inject(MENU_ITEM_GROUP_CONTEXT, { optional: true });\n const radioGroup = inject(MENU_RADIO_ITEM_GROUP_CONTEXT, { optional: true });\n\n const groupId = itemGroup?.id ?? radioGroup?.id;\n\n if (!groupId) {\n throw new Error(\n \"[menu-item-group-label] requires a parent [menu-item-group] or [menu-radio-item-group] in the injection tree.\",\n );\n }\n\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => context.api().getItemGroupLabelProps({ htmlFor: groupId() }),\n });\n }\n}\n","import {\n DestroyRef,\n Directive,\n ElementRef,\n Renderer2,\n computed,\n forwardRef,\n inject,\n} from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { MENU_ITEM_PROPS_CONTEXT } from \"./use-option-item-props-context\";\nimport { injectMenuTriggerItemContext } from \"./use-trigger-item-context\";\n\n/**\n * Nested-submenu trigger item. The directive must live inside a child menu's\n * `[menu-root]` root that is itself a descendant of a parent `[menu-root]` root.\n * The parent menu's `getTriggerItemProps(childApi)` is applied so clicking or\n * hovering this element opens the child submenu while leaving the parent open.\n */\n@Directive({\n selector: \"[menu-trigger-item]\",\n standalone: true,\n exportAs: \"menuTriggerItem\",\n providers: [\n {\n provide: MENU_ITEM_PROPS_CONTEXT,\n useFactory: (item: MenuTriggerItem) => item.itemProps,\n deps: [forwardRef(() => MenuTriggerItem)],\n },\n ],\n})\nexport class MenuTriggerItem {\n private readonly triggerItemProps = injectMenuTriggerItemContext();\n readonly itemProps = computed(() => ({\n value: String(this.triggerItemProps()?.[\"data-value\"] ?? \"\"),\n }));\n\n constructor() {\n if (!this.triggerItemProps()) {\n throw new Error(\n \"[menu-trigger-item] must live inside a nested [menu-root] under a parent [menu-root] root.\",\n );\n }\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => this.triggerItemProps() ?? {},\n });\n }\n}\n","import { DestroyRef, Directive, ElementRef, Renderer2, inject } from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { injectMenuContext } from \"./use-context\";\nimport { injectMenuItemPropsContext } from \"./use-option-item-props-context\";\n\n@Directive({\n selector: \"[menu-item-indicator]\",\n standalone: true,\n exportAs: \"menuItemIndicator\",\n})\nexport class MenuItemIndicator {\n constructor() {\n const context = injectMenuContext();\n const itemProps = injectMenuItemPropsContext();\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => context.api().getItemIndicatorProps(itemProps()),\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAMa,YAAY,GAAG,IAAI,cAAc,CAAgB,sBAAsB;SAEpE,iBAAiB,GAAA;AAC/B,IAAA,OAAO,MAAM,CAAC,YAAY,CAAC;AAC7B;MAEa,oBAAoB,GAAG,IAAI,cAAc,CACpD,8BAA8B;SAGhB,wBAAwB,GAAA;AACtC,IAAA,OAAO,MAAM,CAAC,oBAAoB,CAAC;AACrC;;ACMM,SAAU,OAAO,CAAC,OAAuB,EAAA;AAC7C,IAAA,MAAM,MAAM,GAAG,YAAY,EAAE;AAC7B,IAAA,MAAM,WAAW,GAAG,iBAAiB,EAAE;AACvC,IAAA,MAAM,UAAU,GAAG,QAAQ,EAAE;AAE7B,IAAA,OAAO,UAAU,CAAuB;QACtC,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,OAAO,EAAE,MAAK;AACZ,YAAA,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE;YAC/B,OAAO;AACL,gBAAA,GAAG,KAAK;gBACR,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,WAAW,EAAE,WAAW,CAAC,WAAW;AACpC,gBAAA,EAAE,EAAE,KAAK,CAAC,EAAE,IAAI,UAAU;aACZ;QAClB,CAAC;AACD,QAAA,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC;AAClE,KAAA,CAAC;AACJ;;ACjCO,MAAM,yBAAyB,GAAG,IAAI,cAAc,CACzD,mCAAmC,CACpC;SAEe,4BAA4B,GAAA;AAC1C,IAAA,OAAO,MAAM,CAAC,yBAAyB,CAAC;AAC1C;;ACkDM,MAAO,QAAS,SAAQ,YAAY,CAAA;IAC/B,EAAE,GAAoC,KAAK,CAAqB,SAAS;2EAAC;IAC1E,GAAG,GAAqD,KAAK,CAEpE,SAAS;4EAAC;IACH,IAAI,GAAqC,KAAK,CAAsB,SAAS;6EAAC;IAC9E,WAAW,GAA+C,KAAK,CAAC,KAAK,mFAC5E,SAAS,EAAE,gBAAgB,EAAA,CAC3B;IACO,gBAAgB,GAA2C,KAAK,CAEvE,SAAS;yFAAC;IACH,uBAAuB,GAA2C,KAAK,CAE9E,SAAS;gGAAC;IACH,SAAS,GAA+C,KAAK,CAAC,KAAK,iFAC1E,SAAS,EAAE,gBAAgB,EAAA,CAC3B;IACO,aAAa,GAA2D,KAAK,CAGpF,SAAS,qFACT,SAAS,EAAE,wBAAwB,EAAA,CACnC;IACO,SAAS,GAA2D,KAAK,CAGhF,SAAS,iFACT,SAAS,EAAE,wBAAwB,EAAA,CACnC;IACO,SAAS,GAA2D,KAAK,CAGhF,SAAS,iFACT,SAAS,EAAE,wBAAwB,EAAA,CACnC;IACO,WAAW,GAAoD,KAAK,CAE3E,SAAS;oFAAC;IACH,SAAS,GAAoC,KAAK,CAAqB,SAAS,iFACvF,KAAK,EAAE,YAAY,EAAA,CACnB;IACO,WAAW,GAClB,KAAK,CAA4B,SAAS;oFAAC;IACpC,QAAQ,GAAwC,KAAK,CAAyB,SAAS;iFAAC;IACxF,YAAY,GAA2C,KAAK,CACnE,SAAS;qFACV;IACQ,mBAAmB,GAA2C,KAAK,CAE1E,SAAS;4FAAC;IAEH,MAAM,GAA2C,MAAM,EAAwB;IAC/E,aAAa,GAAoC,MAAM,EAAiB;IACxE,YAAY,GAA4C,MAAM,EAAyB;IACvF,eAAe,GACtB,MAAM,EAA8B;IAC7B,eAAe,GACtB,MAAM,EAA4B;IAC3B,iBAAiB,GACxB,MAAM,EAAyB;IACxB,kBAAkB,GACzB,MAAM,EAA+B;IAC9B,cAAc,GAEnB,MAAM,EAA8D;IAC/D,yBAAyB,GAChC,MAAM,EAAiC;IAExB,OAAO,GAAG,OAAO,CAAC;AACjC,QAAA,OAAO,EAAE,OAAO;AACd,YAAA,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;AACb,YAAA,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;AACf,YAAA,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;AACjB,YAAA,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;AAC/B,YAAA,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE;AACzC,YAAA,uBAAuB,EAAE,IAAI,CAAC,uBAAuB,EAAE;AACvD,YAAA,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;AAC3B,YAAA,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE;AACnC,YAAA,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;AAC3B,YAAA,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;AAC3B,YAAA,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;AAC/B,YAAA,YAAY,EAAE,IAAI,CAAC,SAAS,EAAE;AAC9B,YAAA,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;AAC/B,YAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;AACzB,YAAA,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE;AACjC,YAAA,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAAE;AAC/C,YAAA,YAAY,EAAE,CAAC,OAAO,KAAI;AACxB,gBAAA,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,OAAO,CAAC,IAAI;oBAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC;AAC7D,gBAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC;YACtC,CAAC;AACD,YAAA,iBAAiB,EAAE,CAAC,OAAO,KAAI;gBAC7B,IAAI,IAAI,CAAC,gBAAgB,EAAE,KAAK,OAAO,CAAC,gBAAgB,EAAE;oBACxD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC;gBACrD;AACA,gBAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;YACpC,CAAC;AACD,YAAA,QAAQ,EAAE,CAAC,OAAO,KAAI;AACpB,gBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;YAC3B,CAAC;AACD,YAAA,oBAAoB,EAAE,CAAC,OAAsC,KAAI;AAC/D,gBAAA,IAAI,IAAI,CAAC,YAAY,EAAE,KAAK,OAAO,CAAC,KAAK;oBAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC;AAC/E,gBAAA,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,OAAO,CAAC;YAC9C,CAAC;AACD,YAAA,eAAe,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC;AAC1D,YAAA,cAAc,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;AACxD,YAAA,iBAAiB,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;AAC9D,YAAA,oBAAoB,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC;AACpE,YAAA,gBAAgB,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC;SAC7D,CAAC;AACH,KAAA,CAAC;AAEO,IAAA,KAAK,GAAkC,IAAI,CAAC,OAAO,CAAC,KAAK;AACzD,IAAA,GAAG,GAAqB,IAAI,CAAC,OAAO,CAAC,GAAG;AACxC,IAAA,OAAO,GAAiB,IAAI,CAAC,OAAO,CAAC,OAAO;AAC5C,IAAA,IAAI,GAAyB,IAAI,CAAC,OAAO,CAAC,IAAI;AAC9C,IAAA,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;IAE3C,cAAc,GAA6B,gBAAgB,CAAW;AACvF,QAAA,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;AACnE,QAAA,IAAI,EAAE,IAAI;AACV,QAAA,SAAS,EAAE,YAAuC;AAClD,QAAA,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC;AAChC,QAAA,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,CAAC;AACjD,KAAA,CAAC;AAEiB,IAAA,UAAU,GAAyB,MAAM,CAAC,YAAY,EAAE;AACzE,QAAA,QAAQ,EAAE,IAAI;AACd,QAAA,QAAQ,EAAE,IAAI;AACf,KAAA,CAAC;AACO,IAAA,gBAAgB,GAAG,QAAQ,CAAC,MACnC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;yFACvD;AAED,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;AACP,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU;QAC9B,IAAI,MAAM,EAAE;AACV,YAAA,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;YACrC,IAAI,SAAS,GAAG,KAAK;YACrB,IAAI,SAAS,GAAG,KAAK;AAErB,YAAA,UAAU,CAAC,SAAS,CAAC,MAAK;gBACxB,SAAS,GAAG,IAAI;AAChB,gBAAA,IAAI,CAAC,SAAS;oBAAE;AAChB,gBAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;AAC/C,gBAAA,IAAI,CAAC,OAAO;oBAAE;AACd,gBAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;AACpD,gBAAA,MAAM,YAAY,GAAG,EAAE,GAAG,QAAQ,EAAE;AACpC,gBAAA,OAAO,YAAY,CAAC,OAAO,CAAC;gBAC5B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC;AACjD,gBAAA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC;AAC7C,gBAAA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC;AACtD,YAAA,CAAC,CAAC;YAEF,eAAe,CAAC,MAAK;AACnB,gBAAA,IAAI,SAAS;oBAAE;AACf,gBAAA,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;AAC3C,gBAAA,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;gBAC5C,SAAS,GAAG,IAAI;AAClB,YAAA,CAAC,CAAC;QACJ;IACF;IAEA,iBAAiB,GAAA;QACf,OAAO,IAAI,CAAC,cAAc;IAC5B;uGAtKW,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAR,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,QAAQ,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,GAAA,EAAA,EAAA,iBAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,gBAAA,EAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,uBAAA,EAAA,EAAA,iBAAA,EAAA,yBAAA,EAAA,UAAA,EAAA,yBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,mBAAA,EAAA,EAAA,iBAAA,EAAA,qBAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,wBAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,QAAA,EAAA,aAAA,EAAA,eAAA,EAAA,YAAA,EAAA,cAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,yBAAA,EAAA,2BAAA,EAAA,EAAA,SAAA,EAnBR;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,gBAAgB;gBACzB,UAAU,EAAE,CAAC,IAAc,KAAK,IAAI,CAAC,QAAQ;gBAC7C,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,QAAQ,CAAC,CAAC;AACnC,aAAA;AACD,YAAA,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,CAAC,MAAM,QAAQ,CAAC,EAAE;AAClE,YAAA;AACE,gBAAA,OAAO,EAAE,yBAAyB;gBAClC,UAAU,EAAE,CAAC,IAAc,KAAK,IAAI,CAAC,gBAAgB;gBACrD,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,QAAQ,CAAC,CAAC;AACnC,aAAA;AACD,YAAA;AACE,gBAAA,OAAO,EAAE,oBAAoB;gBAC7B,UAAU,EAAE,CAAC,IAAc,KAAK,IAAI,CAAC,iBAAiB,EAAE;gBACxD,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,QAAQ,CAAC,CAAC;AACnC,aAAA;AACF,SAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAEU,QAAQ,EAAA,UAAA,EAAA,CAAA;kBAvBpB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;AACvB,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,gBAAgB;4BACzB,UAAU,EAAE,CAAC,IAAc,KAAK,IAAI,CAAC,QAAQ;4BAC7C,IAAI,EAAE,CAAC,UAAU,CAAC,MAAK,QAAS,CAAC,CAAC;AACnC,yBAAA;AACD,wBAAA,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,CAAC,MAAK,QAAS,CAAC,EAAE;AAClE,wBAAA;AACE,4BAAA,OAAO,EAAE,yBAAyB;4BAClC,UAAU,EAAE,CAAC,IAAc,KAAK,IAAI,CAAC,gBAAgB;4BACrD,IAAI,EAAE,CAAC,UAAU,CAAC,MAAK,QAAS,CAAC,CAAC;AACnC,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,oBAAoB;4BAC7B,UAAU,EAAE,CAAC,IAAc,KAAK,IAAI,CAAC,iBAAiB,EAAE;4BACxD,IAAI,EAAE,CAAC,UAAU,CAAC,MAAK,QAAS,CAAC,CAAC;AACnC,yBAAA;AACF,qBAAA;AACF,iBAAA;;AA0KD,SAAS,wBAAwB,CAAC,KAAc,EAAA;AAC9C,IAAA,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,GAAG,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC;AACpF;;AC5LM,MAAO,gBAAiB,SAAQ,YAAY,CAAA;IACvC,KAAK,GAA+B,KAAK,CAAC,QAAQ;8EAAiB;AACnE,IAAA,KAAK,GAAkC,QAAQ,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE;8EAAC;AAC3E,IAAA,GAAG,GAAqB,QAAQ,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE;4EAAC;AAC1D,IAAA,IAAI,GAAyB,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;AAEzE,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO;IAC7B;AAES,IAAA,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,MAAK;AAC3C,QAAA,IAAI;AACF,YAAA,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI;QACxB;AAAE,QAAA,MAAM;AACN,YAAA,OAAO,KAAK;QACd;AACF,IAAA,CAAC,CAAC;IAEiB,cAAc,GAC/B,gBAAgB,CAAmB;AACjC,QAAA,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;AACnE,QAAA,IAAI,EAAE,IAAI;AACV,QAAA,SAAS,EAAE,YAA+C;AAC1D,QAAA,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC;AAChC,QAAA,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,CAAC;AACjD,KAAA,CAAC;AAEe,IAAA,UAAU,GAAyB,MAAM,CAAC,YAAY,EAAE;AACzE,QAAA,QAAQ,EAAE,IAAI;AACd,QAAA,QAAQ,EAAE,IAAI;AACf,KAAA,CAAC;AACO,IAAA,gBAAgB,GAAG,QAAQ,CAAC,MACnC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;yFACvD;AAED,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;AACP,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU;AAC9B,QAAA,IAAI,CAAC,MAAM;YAAE;AAEb,QAAA,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACrC,IAAI,SAAS,GAAG,KAAK;QACrB,IAAI,SAAS,GAAG,KAAK;AAErB,QAAA,UAAU,CAAC,SAAS,CAAC,MAAK;YACxB,SAAS,GAAG,IAAI;AAChB,YAAA,IAAI,CAAC,SAAS;gBAAE;YAChB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;AACvC,YAAA,IAAI,CAAC,OAAO;gBAAE;AACd,YAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;AACpD,YAAA,MAAM,YAAY,GAAG,EAAE,GAAG,QAAQ,EAAE;AACpC,YAAA,OAAO,YAAY,CAAC,OAAO,CAAC;YAC5B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC;YACjD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC;AAC9C,QAAA,CAAC,CAAC;QAEF,eAAe,CAAC,MAAK;AACnB,YAAA,IAAI,SAAS;gBAAE;YACf,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;YACnC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;YACpC,SAAS,GAAG,IAAI;AAClB,QAAA,CAAC,CAAC;IACJ;IAEA,iBAAiB,GAAA;QACf,OAAO,IAAI,CAAC,cAAc;IAC5B;uGAnEW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAhB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,SAAA,EAnBhB;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,gBAAgB;gBACzB,UAAU,EAAE,CAAC,QAA0B,KAAK,QAAQ,CAAC,QAAQ;gBAC7D,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,gBAAgB,CAAC,CAAC;AAC3C,aAAA;AACD,YAAA,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,CAAC,MAAM,gBAAgB,CAAC,EAAE;AAC1E,YAAA;AACE,gBAAA,OAAO,EAAE,yBAAyB;gBAClC,UAAU,EAAE,CAAC,QAA0B,KAAK,QAAQ,CAAC,gBAAgB;gBACrE,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,gBAAgB,CAAC,CAAC;AAC3C,aAAA;AACD,YAAA;AACE,gBAAA,OAAO,EAAE,oBAAoB;gBAC7B,UAAU,EAAE,CAAC,QAA0B,KAAK,QAAQ,CAAC,iBAAiB,EAAE;gBACxE,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,gBAAgB,CAAC,CAAC;AAC3C,aAAA;AACF,SAAA,EAAA,QAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAEU,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAvB5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,sBAAsB;AAChC,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,gBAAgB;4BACzB,UAAU,EAAE,CAAC,QAA0B,KAAK,QAAQ,CAAC,QAAQ;4BAC7D,IAAI,EAAE,CAAC,UAAU,CAAC,MAAK,gBAAiB,CAAC,CAAC;AAC3C,yBAAA;AACD,wBAAA,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,CAAC,MAAK,gBAAiB,CAAC,EAAE;AAC1E,wBAAA;AACE,4BAAA,OAAO,EAAE,yBAAyB;4BAClC,UAAU,EAAE,CAAC,QAA0B,KAAK,QAAQ,CAAC,gBAAgB;4BACrE,IAAI,EAAE,CAAC,UAAU,CAAC,MAAK,gBAAiB,CAAC,CAAC;AAC3C,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,oBAAoB;4BAC7B,UAAU,EAAE,CAAC,QAA0B,KAAK,QAAQ,CAAC,iBAAiB,EAAE;4BACxE,IAAI,EAAE,CAAC,UAAU,CAAC,MAAK,gBAAiB,CAAC,CAAC;AAC3C,yBAAA;AACF,qBAAA;AACF,iBAAA;;;MC5BY,WAAW,CAAA;IACb,KAAK,GAAoC,KAAK,CAAqB,SAAS;8EAAC;AAEtF,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,iBAAiB,EAAE;AACnC,QAAA,MAAM,QAAQ,GAAG,qBAAqB,EAAE;AACxC,QAAA,SAAS,CAAC;AACR,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;YAC9B,KAAK,EAAE,MAAK;AACV,gBAAA,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;gBACpE,OAAO;AACL,oBAAA,GAAG,KAAK;AACR,oBAAA,eAAe,EAAE,QAAQ,CAAC,SAAS,EAAE,GAAG,SAAS,GAAG,KAAK,CAAC,eAAe,CAAC;iBAC3E;YACH,CAAC;AACF,SAAA,CAAC;IACJ;uGAlBW,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAX,WAAW,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBALvB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,aAAa;AACxB,iBAAA;;;MCAY,kBAAkB,CAAA;IACpB,KAAK,GAAoC,KAAK,CAAqB,SAAS;8EAAC;AAEtF,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,iBAAiB,EAAE;AACnC,QAAA,SAAS,CAAC;AACR,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,KAAK,EAAE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;AAC3E,SAAA,CAAC;IACJ;uGAXW,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAL9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,wBAAwB;AAClC,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,oBAAoB;AAC/B,iBAAA;;;MCPY,cAAc,CAAA;AACzB,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,iBAAiB,EAAE;AACnC,QAAA,SAAS,CAAC;AACR,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;YAC9B,KAAK,EAAE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,kBAAkB,EAAE;AAChD,SAAA,CAAC;IACJ;uGATW,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAL1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,gBAAgB;AAC3B,iBAAA;;;MCaY,WAAW,CAAA;AACtB,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,iBAAiB,EAAE;AACnC,QAAA,MAAM,QAAQ,GAAG,qBAAqB,EAAE;AACxC,QAAA,MAAM,QAAQ,GAAG,MAAM,EAAC,WAAoB,GAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACjE,QAAA,MAAM,SAAS,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAC1C,QAAA,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC;AAC/B,QAAA,MAAM,UAAU,GAAG,QAAQ,GAAG,EAAE,aAAa,EAAE,IAA0B,EAAE,GAAG,IAAI;AAClF,QAAA,IAAI,IAA0C;QAE9C,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,EAAE;YACtC,IAAI,QAAQ,EAAE;gBACZ,IAAI,SAAS,EAAE;AACb,oBAAA,UAAU,CAAC,aAAa,GAAG,IAAI;oBAC/B,SAAS,CAAC,KAAK,EAAE;oBACjB,IAAI,GAAG,SAAS;gBAClB;qBAAO,IAAI,CAAC,IAAI,EAAE;AAChB,oBAAA,IAAI,GAAG,SAAS,CAAC,kBAAkB,CAAC,QAAQ,CAAC;AAC7C,oBAAA,UAAU,CAAC,aAAa;AACtB,wBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAU,KAAK,IAAI,CAAC,QAAQ,KAAK,CAAC,CAAC,IAAI,IAAI;gBACpE;YACF;AACA,YAAA,SAAS,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAC7D,QAAA,CAAC,CAAC;AAEF,QAAA,SAAS,CAAC;YACR,UAAU;AACV,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;YAC9B,KAAK,EAAE,MAAK;gBACV,QAAQ,CAAC,SAAS,EAAE;AACpB,gBAAA,OAAO,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,eAAe,EAAE,EAAE,GAAG,QAAQ,CAAC,gBAAgB,EAAE,EAAE;YAC/E,CAAC;AACF,SAAA,CAAC;IACJ;uGAnCW,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAX,WAAW,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBALvB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,aAAa;AACxB,iBAAA;;;MCAY,iBAAiB,GAAG,IAAI,cAAc,CAAkB,2BAA2B;SAEhF,qBAAqB,GAAA;AACnC,IAAA,OAAO,MAAM,CAAC,iBAAiB,CAAC;AAClC;;ACnBO,MAAM,uBAAuB,GAAG,IAAI,cAAc,CACvD,iCAAiC,CAClC;SAEe,0BAA0B,GAAA;AACxC,IAAA,OAAO,MAAM,CAAC,uBAAuB,CAAC;AACxC;;MC0Ba,QAAQ,CAAA;IACV,KAAK,GAAwB,KAAK,CAAC,QAAQ;8EAAU;IACrD,QAAQ,GAA+C,KAAK,CAAC,KAAK,gFACzE,SAAS,EAAE,gBAAgB,EAAA,CAC3B;IACO,SAAS,GAAoC,KAAK,CAAqB,SAAS;kFAAC;IACjF,aAAa,GAAqC,KAAK,CAAsB,SAAS;sFAAC;IACvF,MAAM,GAA2B,MAAM,EAAQ;IAEvC,OAAO,GAAG,iBAAiB,EAAE;IACrC,GAAG,GAAqB,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;4EAAC;AAC1D,IAAA,OAAO,GAAgC,QAAQ,CAAC,MAAM,SAAS;gFAAC;AAEhE,IAAA,SAAS,GAAG,QAAQ,CAAC,OAAO;AACnC,QAAA,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;AACnB,QAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;AACzB,QAAA,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;AAC3B,QAAA,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE;KACpC,CAAC;kFAAC;AAEM,IAAA,KAAK,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;8EAAC;IACzE,WAAW,GAAoB,QAAQ,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,WAAW;oFAAC;IACvE,MAAM,GAAmB,QAAQ,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE;+EAAC;AAEjE,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AACrC,QAAA,MAAM,UAAU,GAAG,MAAM,CAA0B,UAAU,CAAC;AAC9D,QAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC;AAClC,QAAA,SAAS,CAAC;YACR,UAAU;YACV,QAAQ;YACR,UAAU;AACV,YAAA,KAAK,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;AAC/D,SAAA,CAAC;AAEF,QAAA,IAAI,OAAiC;QACrC,IAAI,SAAS,GAAG,KAAK;AACrB,QAAA,UAAU,CAAC,SAAS,CAAC,MAAK;YACxB,SAAS,GAAG,IAAI;YAChB,OAAO,IAAI;AACb,QAAA,CAAC,CAAC;QACF,eAAe,CAAC,MAAK;AACnB,YAAA,IAAI,SAAS;gBAAE;YACf,OAAO,GAAG,IAAI,CAAC;AACZ,iBAAA,GAAG;iBACH,eAAe,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;AACjF,QAAA,CAAC,CAAC;IACJ;uGA/CW,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAR,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,QAAQ,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,SAAA,EATR;AACT,YAAA,EAAE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,CAAC,MAAM,QAAQ,CAAC,EAAE;AACvE,YAAA;AACE,gBAAA,OAAO,EAAE,uBAAuB;gBAChC,UAAU,EAAE,CAAC,IAAc,KAAK,IAAI,CAAC,SAAS;gBAC9C,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,QAAQ,CAAC,CAAC;AACnC,aAAA;AACF,SAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAEU,QAAQ,EAAA,UAAA,EAAA,CAAA;kBAbpB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;AACvB,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,CAAC,MAAK,QAAS,CAAC,EAAE;AACvE,wBAAA;AACE,4BAAA,OAAO,EAAE,uBAAuB;4BAChC,UAAU,EAAE,CAAC,IAAc,KAAK,IAAI,CAAC,SAAS;4BAC9C,IAAI,EAAE,CAAC,UAAU,CAAC,MAAK,QAAS,CAAC,CAAC;AACnC,yBAAA;AACF,qBAAA;AACF,iBAAA;;;MCdY,WAAW,CAAA;AACtB,IAAA,OAAO,sBAAsB,CAC3B,UAAuB,EACvB,OAAgB,EAAA;AAEhB,QAAA,KAAK,OAAO;AACZ,QAAA,OAAO,IAAI;IACb;IAEiB,IAAI,GAAG,iBAAiB,EAAE;AAC1B,IAAA,WAAW,GAAG,MAAM,CAAmC,WAAW,CAAC;AACnE,IAAA,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAEzD,IAAA,WAAA,GAAA;QACE,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE;AACnE,YAAA,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG;AACxB,YAAA,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG;AACnB,SAAA,CAAC;QAEF,MAAM,CAAC,MAAK;AACV,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACf,IAAI,CAAC,aAAa,EAAE;AACtB,QAAA,CAAC,CAAC;AAEF,QAAA,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;IACpD;uGAzBW,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAX,WAAW,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBALvB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,aAAa;AACxB,iBAAA;;;MCCY,wBAAwB,CAAA;AACnC,IAAA,OAAO,sBAAsB,CAC3B,UAAoC,EACpC,OAAgB,EAAA;AAEhB,QAAA,KAAK,OAAO;AACZ,QAAA,OAAO,IAAI;IACb;IAEiB,IAAI,GAAG,qBAAqB,EAAE;AAC9B,IAAA,WAAW,GAAG,MAAM,CAAuC,WAAW,CAAC;AACvE,IAAA,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAEzD,IAAA,WAAA,GAAA;QACE,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE;YACnE,SAAS,EAAE,IAAI,CAAC,IAAI;YACpB,IAAI,EAAE,IAAI,CAAC,IAAI;AAChB,SAAA,CAAC;QAEF,MAAM,CAAC,MAAK;AACV,YAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACjB,IAAI,CAAC,aAAa,EAAE;AACtB,QAAA,CAAC,CAAC;AAEF,QAAA,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;IACpD;uGAzBW,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAxB,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBALpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,iBAAiB;AAC5B,iBAAA;;;MCAY,YAAY,CAAA;IACd,KAAK,GAAoC,KAAK,CAAqB,SAAS;8EAAC;IAC7E,QAAQ,GAA+C,KAAK,CAAC,KAAK,gFACzE,SAAS,EAAE,gBAAgB,EAAA,CAC3B;IACO,SAAS,GAAoC,KAAK,CAAqB,SAAS;kFAAC;AAE1F,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,iBAAiB,EAAE;AACnC,QAAA,MAAM,IAAI,GAAG,MAAM,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC1D,QAAA,MAAM,SAAS,GAAG,MAAM,CAAC,uBAAuB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACrE,QAAA,SAAS,CAAC;AACR,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,KAAK,EAAE,MACL,OAAO,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAC5B,SAAS,IAAI,IAAI;gBACf,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE;gBAC1C,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAC7C,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE;gBAChD,IAAI,IAAI,EAAE,OAAO,EAAE,KAAK,SAAS,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,CAAC;aACtE,CACF;AACJ,SAAA,CAAC;IACJ;uGAzBW,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAZ,YAAY,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBALxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,cAAc;AACzB,iBAAA;;;MCXY,aAAa,CAAA;AACxB,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,iBAAiB,EAAE;AACnC,QAAA,SAAS,CAAC;AACR,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;YAC9B,KAAK,EAAE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,iBAAiB,EAAE;AAC/C,SAAA,CAAC;IACJ;uGATW,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBALzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,eAAe;AAC1B,iBAAA;;;MCCY,aAAa,CAAA;AACxB,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,iBAAiB,EAAE;AACnC,QAAA,SAAS,CAAC;AACR,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;YAC9B,KAAK,EAAE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,iBAAiB,EAAE;AAC/C,SAAA,CAAC;IACJ;uGATW,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBALzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,eAAe;AAC1B,iBAAA;;;MCCY,SAAS,CAAA;AACpB,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,iBAAiB,EAAE;AACnC,QAAA,SAAS,CAAC;AACR,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;YAC9B,KAAK,EAAE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,aAAa,EAAE;AAC3C,SAAA,CAAC;IACJ;uGATW,SAAS,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAT,SAAS,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAT,SAAS,EAAA,UAAA,EAAA,CAAA;kBALrB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,WAAW;AACtB,iBAAA;;;MCCY,YAAY,CAAA;AACvB,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,iBAAiB,EAAE;AACnC,QAAA,SAAS,CAAC;AACR,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;YAC9B,KAAK,EAAE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,gBAAgB,EAAE;AAC9C,SAAA,CAAC;IACJ;uGATW,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAZ,YAAY,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBALxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,cAAc;AACzB,iBAAA;;;MC4BY,gBAAgB,CAAA;IAClB,KAAK,GAAwB,KAAK,CAAC,QAAQ;8EAAU;IACrD,OAAO,GAAqC,KAAK,CAAsB,SAAS;gFAAC;AACjF,IAAA,aAAa,GAA+C,KAAK,CAAC,KAAK,EAAA,EAAA,IAAA,SAAA,GAAA,EAAA,SAAA,EAAA,eAAA,EAAA,8BAAA,EAAA,CAAA,EAC9E,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,gBAAgB,EAAA,CAC3B;IACO,SAAS,GAAoC,KAAK,CAAqB,SAAS;kFAAC;IACjF,aAAa,GAAqC,KAAK,CAAsB,SAAS;sFAAC;IAEvF,QAAQ,GAAgC,QAAQ,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE;iFAAC;IAEpE,OAAO,GAAG,iBAAiB,EAAE;IACrC,GAAG,GAAqB,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;4EAAC;AAC1D,IAAA,eAAe,GAAG,QAAQ,CAAC,OAAO;AACzC,QAAA,IAAI,EAAE,UAAmB;AACzB,QAAA,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;AACnB,QAAA,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,KAAK;AAChC,QAAA,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE;AAC9B,QAAA,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;AAC3B,QAAA,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE;AACnC,QAAA,eAAe,EAAE,CAAC,IAAa,KAAI;AACjC,YAAA,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI;AAAE,gBAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;QACrD,CAAC;KACF,CAAC;wFAAC;AACM,IAAA,KAAK,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;8EAAC;AAE9F,IAAA,WAAA,GAAA;AACE,QAAA,SAAS,CAAC;AACR,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,KAAK,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;AAC3E,SAAA,CAAC;IACJ;uGAlCW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAhB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,eAAA,EAAA,EAAA,SAAA,EAThB;AACT,YAAA,EAAE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,CAAC,MAAM,gBAAgB,CAAC,EAAE;AAC/E,YAAA;AACE,gBAAA,OAAO,EAAE,uBAAuB;gBAChC,UAAU,EAAE,CAAC,IAAsB,KAAK,IAAI,CAAC,eAAe;gBAC5D,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,gBAAgB,CAAC,CAAC;AAC3C,aAAA;AACF,SAAA,EAAA,QAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAEU,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAb5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,sBAAsB;AAChC,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,CAAC,MAAK,gBAAiB,CAAC,EAAE;AAC/E,wBAAA;AACE,4BAAA,OAAO,EAAE,uBAAuB;4BAChC,UAAU,EAAE,CAAC,IAAsB,KAAK,IAAI,CAAC,eAAe;4BAC5D,IAAI,EAAE,CAAC,UAAU,CAAC,MAAK,gBAAiB,CAAC,CAAC;AAC3C,yBAAA;AACF,qBAAA;AACF,iBAAA;;;ACnBM,MAAM,6BAA6B,GAAG,IAAI,cAAc,CAC7D,uCAAuC,CACxC;SAEe,+BAA+B,GAAA;AAC7C,IAAA,OAAO,MAAM,CAAC,6BAA6B,CAAC;AAC9C;;MCaa,aAAa,CAAA;IACf,KAAK,GAAwB,KAAK,CAAC,QAAQ;8EAAU;AACrD,IAAA,aAAa,GAA+C,KAAK,CAAC,KAAK,EAAA,EAAA,IAAA,SAAA,GAAA,EAAA,SAAA,EAAA,eAAA,EAAA,8BAAA,EAAA,CAAA,EAC9E,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,gBAAgB,EAAA,CAC3B;IACO,SAAS,GAAoC,KAAK,CAAqB,SAAS;kFAAC;IACjF,aAAa,GAAqC,KAAK,CAAsB,SAAS;sFAAC;IAEvF,QAAQ,GAAgC,QAAQ,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE;iFAAC;IAEpE,OAAO,GAAG,iBAAiB,EAAE;IAC7B,UAAU,GAAG,+BAA+B,EAAE;IACtD,GAAG,GAAqB,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;4EAAC;AAC1D,IAAA,OAAO,GAAoB,QAAQ,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,KAAK,EAAE;gFAAC;AACnF,IAAA,eAAe,GAAG,QAAQ,CAAC,OAAO;AACzC,QAAA,IAAI,EAAE,OAAgB;AACtB,QAAA,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;AACnB,QAAA,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;AACvB,QAAA,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE;AAC9B,QAAA,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;AAC3B,QAAA,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE;AACnC,QAAA,eAAe,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;KAC9D,CAAC;wFAAC;AACM,IAAA,KAAK,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;8EAAC;AAE9F,IAAA,WAAA,GAAA;AACE,QAAA,SAAS,CAAC;AACR,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,KAAK,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;AAC3E,SAAA,CAAC;IACJ;uGAjCW,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAb,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,SAAA,EATb;AACT,YAAA,EAAE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,CAAC,MAAM,aAAa,CAAC,EAAE;AAC5E,YAAA;AACE,gBAAA,OAAO,EAAE,uBAAuB;gBAChC,UAAU,EAAE,CAAC,IAAmB,KAAK,IAAI,CAAC,eAAe;gBACzD,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,aAAa,CAAC,CAAC;AACxC,aAAA;AACF,SAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAEU,aAAa,EAAA,UAAA,EAAA,CAAA;kBAbzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,CAAC,MAAK,aAAc,CAAC,EAAE;AAC5E,wBAAA;AACE,4BAAA,OAAO,EAAE,uBAAuB;4BAChC,UAAU,EAAE,CAAC,IAAmB,KAAK,IAAI,CAAC,eAAe;4BACzD,IAAI,EAAE,CAAC,UAAU,CAAC,MAAK,aAAc,CAAC,CAAC;AACxC,yBAAA;AACF,qBAAA;AACF,iBAAA;;;MCFY,kBAAkB,CAAA;IACpB,OAAO,GAAoC,KAAK,CAAqB,SAAS,+EACrF,KAAK,EAAE,IAAI,EAAA,CACX;IACO,KAAK,GAA2C,KAAK,CAC5D,SAAS;8EACV;IACQ,kBAAkB,GACzB,MAAM,EAA0B;IAEjB,UAAU,GAAG,QAAQ,EAAE;AAE/B,IAAA,EAAE,GAAmB,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,UAAU;2EAAC;AAE/E,IAAA,QAAQ,CAAC,IAAY,EAAA;AACnB,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK,IAAI;YAAE;AAC3B,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;QACpB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC/C;AAEA,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,iBAAiB,EAAE;AACnC,QAAA,SAAS,CAAC;AACR,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,KAAK,EAAE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC;AAChE,SAAA,CAAC;IACJ;uGA5BW,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,EAAA,SAAA,EAJlB;AACT,YAAA,EAAE,OAAO,EAAE,6BAA6B,EAAE,WAAW,EAAE,UAAU,CAAC,MAAM,kBAAkB,CAAC,EAAE;AAC9F,SAAA,EAAA,QAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAEU,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAR9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,yBAAyB;AACnC,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAE,OAAO,EAAE,6BAA6B,EAAE,WAAW,EAAE,UAAU,CAAC,MAAK,kBAAmB,CAAC,EAAE;AAC9F,qBAAA;AACF,iBAAA;;;ACtBM,MAAM,uBAAuB,GAAG,IAAI,cAAc,CACvD,iCAAiC,CAClC;SAEe,0BAA0B,GAAA;AACxC,IAAA,OAAO,MAAM,CAAC,uBAAuB,CAAC;AACxC;;MCOa,aAAa,CAAA;IACf,OAAO,GAAoC,KAAK,CAAqB,SAAS,+EACrF,KAAK,EAAE,IAAI,EAAA,CACX;IAEe,UAAU,GAAG,QAAQ,EAAE;AAE/B,IAAA,EAAE,GAAmB,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,UAAU;2EAAC;AAE/E,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,iBAAiB,EAAE;AACnC,QAAA,SAAS,CAAC;AACR,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,KAAK,EAAE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC;AAChE,SAAA,CAAC;IACJ;uGAjBW,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAb,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAa,qMAFb,CAAC,EAAE,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,UAAU,CAAC,MAAM,aAAa,CAAC,EAAE,CAAC,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAEpF,aAAa,EAAA,UAAA,EAAA,CAAA;kBANzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,UAAU,CAAC,MAAK,aAAc,CAAC,EAAE,CAAC;AAChG,iBAAA;;;MCVY,kBAAkB,CAAA;AAC7B,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,iBAAiB,EAAE;AACnC,QAAA,MAAM,SAAS,GAAG,MAAM,CAAC,uBAAuB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACrE,QAAA,MAAM,UAAU,GAAG,MAAM,CAAC,6BAA6B,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAE5E,MAAM,OAAO,GAAG,SAAS,EAAE,EAAE,IAAI,UAAU,EAAE,EAAE;QAE/C,IAAI,CAAC,OAAO,EAAE;AACZ,YAAA,MAAM,IAAI,KAAK,CACb,+GAA+G,CAChH;QACH;AAEA,QAAA,SAAS,CAAC;AACR,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,KAAK,EAAE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC;AAC1E,SAAA,CAAC;IACJ;uGApBW,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,QAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAL9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,yBAAyB;AACnC,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,oBAAoB;AAC/B,iBAAA;;;ACGD;;;;;AAKG;MAaU,eAAe,CAAA;IACT,gBAAgB,GAAG,4BAA4B,EAAE;AACzD,IAAA,SAAS,GAAG,QAAQ,CAAC,OAAO;AACnC,QAAA,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC;KAC7D,CAAC;kFAAC;AAEH,IAAA,WAAA,GAAA;AACE,QAAA,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE;AAC5B,YAAA,MAAM,IAAI,KAAK,CACb,4FAA4F,CAC7F;QACH;AACA,QAAA,SAAS,CAAC;AACR,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;YAC9B,KAAK,EAAE,MAAM,IAAI,CAAC,gBAAgB,EAAE,IAAI,EAAE;AAC3C,SAAA,CAAC;IACJ;uGAlBW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,SAAA,EARf;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,uBAAuB;gBAChC,UAAU,EAAE,CAAC,IAAqB,KAAK,IAAI,CAAC,SAAS;gBACrD,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,eAAe,CAAC,CAAC;AAC1C,aAAA;AACF,SAAA,EAAA,QAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAEU,eAAe,EAAA,UAAA,EAAA,CAAA;kBAZ3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,uBAAuB;4BAChC,UAAU,EAAE,CAAC,IAAqB,KAAK,IAAI,CAAC,SAAS;4BACrD,IAAI,EAAE,CAAC,UAAU,CAAC,MAAK,eAAgB,CAAC,CAAC;AAC1C,yBAAA;AACF,qBAAA;AACF,iBAAA;;;MCpBY,iBAAiB,CAAA;AAC5B,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,OAAO,GAAG,iBAAiB,EAAE;AACnC,QAAA,MAAM,SAAS,GAAG,0BAA0B,EAAE;AAC9C,QAAA,SAAS,CAAC;AACR,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;AAC3B,YAAA,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;AAC9B,YAAA,KAAK,EAAE,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,SAAS,EAAE,CAAC;AAC9D,SAAA,CAAC;IACJ;uGAVW,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAL7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,uBAAuB;AACjC,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,mBAAmB;AAC9B,iBAAA;;;ACVD;;AAEG;;;;"}
|
|
@@ -68,80 +68,49 @@ function useSelect(options) {
|
|
|
68
68
|
}
|
|
69
69
|
|
|
70
70
|
class SelectRoot extends PresenceBase {
|
|
71
|
-
/** The unique identifier of the select. */
|
|
72
71
|
id = input(undefined, /* @ts-ignore */
|
|
73
72
|
...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
|
|
74
|
-
/** The element ids for the select parts. */
|
|
75
73
|
elementIds = input(undefined, { ...(ngDevMode ? { debugName: "elementIds" } : /* istanbul ignore next */ {}), alias: "ids" });
|
|
76
|
-
/** The item collection. */
|
|
77
74
|
collection = input.required(/* @ts-ignore */
|
|
78
75
|
...(ngDevMode ? [{ debugName: "collection" }] : /* istanbul ignore next */ []));
|
|
79
|
-
/** The controlled value of the select (array of selected keys). */
|
|
80
76
|
value = model(undefined, /* @ts-ignore */
|
|
81
77
|
...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
|
|
82
|
-
/** The initial value of the select when uncontrolled. */
|
|
83
78
|
defaultValue = input(undefined, /* @ts-ignore */
|
|
84
79
|
...(ngDevMode ? [{ debugName: "defaultValue" }] : /* istanbul ignore next */ []));
|
|
85
|
-
/** The controlled open state of the select menu. */
|
|
86
80
|
open = model(undefined, /* @ts-ignore */
|
|
87
81
|
...(ngDevMode ? [{ debugName: "open" }] : /* istanbul ignore next */ []));
|
|
88
|
-
/** The initial open state of the select when uncontrolled. */
|
|
89
82
|
defaultOpen = input(false, { ...(ngDevMode ? { debugName: "defaultOpen" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
90
|
-
/** The controlled highlighted value of the select. */
|
|
91
83
|
highlightedValue = model(undefined, /* @ts-ignore */
|
|
92
84
|
...(ngDevMode ? [{ debugName: "highlightedValue" }] : /* istanbul ignore next */ []));
|
|
93
|
-
/** The initial highlighted value when uncontrolled. */
|
|
94
85
|
defaultHighlightedValue = input(undefined, /* @ts-ignore */
|
|
95
86
|
...(ngDevMode ? [{ debugName: "defaultHighlightedValue" }] : /* istanbul ignore next */ []));
|
|
96
|
-
/** Whether the select is disabled. */
|
|
97
87
|
disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
98
|
-
/** Whether the select is invalid. */
|
|
99
88
|
invalid = input(false, { ...(ngDevMode ? { debugName: "invalid" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
100
|
-
/** Whether the select is read-only. */
|
|
101
89
|
readOnly = input(false, { ...(ngDevMode ? { debugName: "readOnly" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
102
|
-
/** Whether the select is required. */
|
|
103
90
|
required = input(false, { ...(ngDevMode ? { debugName: "required" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
104
|
-
/** Whether multiple values can be selected. */
|
|
105
91
|
multiple = input(false, { ...(ngDevMode ? { debugName: "multiple" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
106
|
-
/** Whether the select should close after an item is selected. */
|
|
107
92
|
closeOnSelect = input(undefined, { ...(ngDevMode ? { debugName: "closeOnSelect" } : /* istanbul ignore next */ {}), transform: (value) => value === undefined || value === null ? undefined : booleanAttribute(value) });
|
|
108
|
-
/** Whether to loop keyboard navigation through the items. */
|
|
109
93
|
loopFocus = input(false, { ...(ngDevMode ? { debugName: "loopFocus" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
110
|
-
/** Whether the value can be cleared by clicking the selected item. */
|
|
111
94
|
deselectable = input(false, { ...(ngDevMode ? { debugName: "deselectable" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
112
|
-
/** Whether the select is composed with other composite widgets. */
|
|
113
95
|
composite = input(undefined, { ...(ngDevMode ? { debugName: "composite" } : /* istanbul ignore next */ {}), transform: (value) => value === undefined || value === null ? undefined : booleanAttribute(value) });
|
|
114
|
-
/** The name attribute of the underlying hidden select. */
|
|
115
96
|
name = input(undefined, /* @ts-ignore */
|
|
116
97
|
...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
|
|
117
|
-
/** The associated form of the underlying hidden select. */
|
|
118
98
|
form = input(undefined, /* @ts-ignore */
|
|
119
99
|
...(ngDevMode ? [{ debugName: "form" }] : /* istanbul ignore next */ []));
|
|
120
|
-
/** The autocomplete attribute for the hidden select. */
|
|
121
100
|
autoComplete = input(undefined, /* @ts-ignore */
|
|
122
101
|
...(ngDevMode ? [{ debugName: "autoComplete" }] : /* istanbul ignore next */ []));
|
|
123
|
-
/** The positioning options of the menu. */
|
|
124
102
|
positioning = input(undefined, /* @ts-ignore */
|
|
125
103
|
...(ngDevMode ? [{ debugName: "positioning" }] : /* istanbul ignore next */ []));
|
|
126
|
-
/** Function to scroll to a specific index. */
|
|
127
104
|
scrollToIndexFn = input(undefined, /* @ts-ignore */
|
|
128
105
|
...(ngDevMode ? [{ debugName: "scrollToIndexFn" }] : /* istanbul ignore next */ []));
|
|
129
|
-
/** Localized strings for accessibility. */
|
|
130
106
|
translations = input(undefined, /* @ts-ignore */
|
|
131
107
|
...(ngDevMode ? [{ debugName: "translations" }] : /* istanbul ignore next */ []));
|
|
132
|
-
/** Emits when the selected value changes. */
|
|
133
108
|
valueChangeDetails = output();
|
|
134
|
-
/** Emits when the highlighted value changes. */
|
|
135
109
|
highlightChange = output();
|
|
136
|
-
/** Emits when the open state changes. */
|
|
137
110
|
openChangeDetails = output();
|
|
138
|
-
/** Emits when an item is selected. */
|
|
139
111
|
select = output();
|
|
140
|
-
/** Emits when focus moves outside the select content. */
|
|
141
112
|
focusOutside = output();
|
|
142
|
-
/** Emits when pointer down occurs outside the select content. */
|
|
143
113
|
pointerDownOutside = output();
|
|
144
|
-
/** Emits when interaction occurs outside the select content. */
|
|
145
114
|
interactOutside = output();
|
|
146
115
|
_disabledFromForm = signal(false, /* @ts-ignore */
|
|
147
116
|
...(ngDevMode ? [{ debugName: "_disabledFromForm" }] : /* istanbul ignore next */ []));
|
|
@@ -239,7 +208,6 @@ class SelectRoot extends PresenceBase {
|
|
|
239
208
|
originInjector: inject(Injector),
|
|
240
209
|
environmentInjector: inject(EnvironmentInjector),
|
|
241
210
|
});
|
|
242
|
-
/** @internal Exposed for select part directives to consume via SELECT_CONTEXT_CARRIER. */
|
|
243
211
|
getContextCarrier() {
|
|
244
212
|
return this.contextCarrier;
|
|
245
213
|
}
|
|
@@ -340,7 +308,6 @@ function arraysShallowEqual(a, b) {
|
|
|
340
308
|
}
|
|
341
309
|
|
|
342
310
|
class SelectRootProvider extends PresenceBase {
|
|
343
|
-
/** The select primitive returned by useSelect(). */
|
|
344
311
|
value = input.required(/* @ts-ignore */
|
|
345
312
|
...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
|
|
346
313
|
get state() {
|
|
@@ -373,7 +340,6 @@ class SelectRootProvider extends PresenceBase {
|
|
|
373
340
|
originInjector: inject(Injector),
|
|
374
341
|
environmentInjector: inject(EnvironmentInjector),
|
|
375
342
|
});
|
|
376
|
-
/** @internal Exposed for select part directives to consume via SELECT_CONTEXT_CARRIER. */
|
|
377
343
|
getContextCarrier() {
|
|
378
344
|
return this.contextCarrier;
|
|
379
345
|
}
|
|
@@ -534,7 +500,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImpor
|
|
|
534
500
|
}], ctorParameters: () => [] });
|
|
535
501
|
|
|
536
502
|
class SelectValueText {
|
|
537
|
-
/** Text to display when no value is selected. */
|
|
538
503
|
placeholder = input(undefined, /* @ts-ignore */
|
|
539
504
|
...(ngDevMode ? [{ debugName: "placeholder" }] : /* istanbul ignore next */ []));
|
|
540
505
|
elementRef = inject(ElementRef);
|
|
@@ -738,7 +703,6 @@ function injectSelectItemGroupContext() {
|
|
|
738
703
|
return context;
|
|
739
704
|
}
|
|
740
705
|
class SelectItemGroup {
|
|
741
|
-
/** The id of the item group. */
|
|
742
706
|
groupId = input(undefined, { ...(ngDevMode ? { debugName: "groupId" } : /* istanbul ignore next */ {}), alias: "id" });
|
|
743
707
|
fallbackId = createId();
|
|
744
708
|
id = computed(() => this.groupId() ?? this.fallbackId, /* @ts-ignore */
|
|
@@ -793,10 +757,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImpor
|
|
|
793
757
|
}], ctorParameters: () => [] });
|
|
794
758
|
|
|
795
759
|
class SelectItem {
|
|
796
|
-
/** The item to render. */
|
|
797
760
|
item = input.required(/* @ts-ignore */
|
|
798
761
|
...(ngDevMode ? [{ debugName: "item" }] : /* istanbul ignore next */ []));
|
|
799
|
-
/** Whether hovering outside should clear the highlighted state. */
|
|
800
762
|
persistFocus = input(undefined, { ...(ngDevMode ? { debugName: "persistFocus" } : /* istanbul ignore next */ {}), transform: (value) => value === undefined || value === null ? undefined : booleanAttribute(value) });
|
|
801
763
|
context = injectSelectContext();
|
|
802
764
|
state = computed(() => this.context.api().getItemState({ item: this.item(), persistFocus: this.persistFocus() }), /* @ts-ignore */
|