{"version":3,"file":"qualcomm-ui-angular-core-menu.mjs","sources":["../../src/menu/menu-context.service.ts","../../src/menu/menu-item-context.service.ts","../../src/menu/base-menu-item.directive.ts","../../src/menu/menu-option-item-context.service.ts","../../src/menu/core-menu-checkbox-item.directive.ts","../../src/menu/core-menu-content.directive.ts","../../src/menu/core-menu-context-trigger.directive.ts","../../src/menu/menu-item-group-context.service.ts","../../src/menu/menu-radio-item-group-context.service.ts","../../src/menu/core-menu-item-group-label.directive.ts","../../src/menu/core-menu-item-group.directive.ts","../../src/menu/core-menu-item-indicator.directive.ts","../../src/menu/core-menu-item-label.directive.ts","../../src/menu/core-menu-item-root.directive.ts","../../src/menu/core-menu-option-item-control.directive.ts","../../src/menu/core-menu-positioner.directive.ts","../../src/menu/core-menu-radio-item-group.directive.ts","../../src/menu/core-menu-radio-item.directive.ts","../../src/menu/menu-machine-context.service.ts","../../src/menu/menu-trigger-context.service.ts","../../src/menu/core-menu-root.directive.ts","../../src/menu/core-menu-separator.directive.ts","../../src/menu/core-menu-trigger-item.directive.ts","../../src/menu/core-menu-trigger.directive.ts","../../src/menu/qualcomm-ui-angular-core-menu.ts"],"sourcesContent":["// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Injectable} from \"@angular/core\"\n\nimport {\n  type ApiContext,\n  BaseApiContextService,\n  createApiContext,\n} from \"@qualcomm-ui/angular-core/machine\"\nimport type {MenuApi} from \"@qualcomm-ui/core/menu\"\n\n@Injectable()\nexport class MenuContextService extends BaseApiContextService<MenuApi> {}\n\nexport const [\n  MENU_CONTEXT,\n  useMenuContext,\n  provideMenuContext,\n]: ApiContext<MenuApi> = createApiContext<MenuApi>(\n  \"MenuContext\",\n  MenuContextService,\n)\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Injectable} from \"@angular/core\"\n\nimport {\n  type ApiContext,\n  BaseApiContextService,\n  createApiContext,\n} from \"@qualcomm-ui/angular-core/machine\"\nimport type {ItemProps, ItemState} from \"@qualcomm-ui/core/menu\"\n\ntype MenuItemContext = ItemProps & ItemState\n\n@Injectable()\nexport class MenuItemContextService extends BaseApiContextService<MenuItemContext> {}\n\nexport const [\n  MENU_ITEM_CONTEXT,\n  useMenuItemContext,\n  provideMenuItemContext,\n]: ApiContext<MenuItemContext> = createApiContext<MenuItemContext>(\n  \"MenuItemContext\",\n  MenuItemContextService,\n)\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {\n  booleanAttribute,\n  computed,\n  Directive,\n  inject,\n  input,\n  output,\n} from \"@angular/core\"\n\nimport type {SignalifyInput} from \"@qualcomm-ui/angular-core/signals\"\nimport type {ItemProps} from \"@qualcomm-ui/core/menu\"\nimport type {Booleanish} from \"@qualcomm-ui/utils/coercion\"\nimport type {Explicit} from \"@qualcomm-ui/utils/guard\"\n\nimport {useMenuContext} from \"./menu-context.service\"\nimport {MenuItemContextService} from \"./menu-item-context.service\"\n\n/**\n * Each menu item type shares the same base properties.\n *\n * @public\n */\n@Directive()\nexport class BaseMenuItemDirective implements SignalifyInput<ItemProps> {\n  /**\n   * Whether the menu should be closed when the option is selected.\n   */\n  readonly closeOnSelect = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  /**\n   * Whether the menu item is disabled\n   */\n  readonly disabled = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  /**\n   * The unique value of the menu item option.\n   */\n  readonly value = input.required<string>()\n\n  /**\n   * The textual value of the option. Used in typeahead navigation of the menu.\n   * If not provided, the text content of the menu item will be used.\n   */\n  readonly valueText = input<string>()\n\n  /**\n   * Emitted when the item is selected\n   */\n  readonly selected = output()\n\n  protected readonly menuContext = useMenuContext()\n  protected readonly menuItemService = inject(MenuItemContextService)\n\n  readonly itemProps = computed<Explicit<ItemProps>>(() => ({\n    closeOnSelect: this.closeOnSelect(),\n    disabled: this.disabled(),\n    onSelect: () => this.selected.emit(),\n    value: this.value(),\n    valueText: this.valueText(),\n  }))\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Injectable} from \"@angular/core\"\n\nimport {\n  type ApiContext,\n  BaseApiContextService,\n  createApiContext,\n} from \"@qualcomm-ui/angular-core/machine\"\nimport type {ItemState, OptionItemProps} from \"@qualcomm-ui/core/menu\"\n\ntype MenuOptionItemContext = OptionItemProps & ItemState\n\n@Injectable()\nexport class MenuOptionItemContextService extends BaseApiContextService<MenuOptionItemContext> {}\n\nexport const [\n  MENU_OPTION_ITEM_CONTEXT,\n  useMenuOptionItemContext,\n  provideMenuOptionItemContext,\n]: ApiContext<MenuOptionItemContext> = createApiContext<MenuOptionItemContext>(\n  \"MenuOptionItemContext\",\n  MenuOptionItemContextService,\n)\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {\n  booleanAttribute,\n  computed,\n  Directive,\n  inject,\n  input,\n  type OnInit,\n  output,\n} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport type {SignalifyInput} from \"@qualcomm-ui/angular-core/signals\"\nimport {useControlledState} from \"@qualcomm-ui/angular-core/state\"\nimport type {OptionItemProps} from \"@qualcomm-ui/core/menu\"\nimport type {Booleanish} from \"@qualcomm-ui/utils/coercion\"\n\nimport {BaseMenuItemDirective} from \"./base-menu-item.directive\"\nimport {MenuOptionItemContextService} from \"./menu-option-item-context.service\"\n\n@Directive()\nexport class CoreMenuCheckboxItemDirective\n  extends BaseMenuItemDirective\n  implements SignalifyInput<Omit<OptionItemProps, \"type\">>, OnInit\n{\n  readonly checked = input<boolean>()\n\n  readonly defaultChecked = input<boolean | undefined, Booleanish>(false, {\n    transform: booleanAttribute,\n  })\n\n  readonly checkedChanged = output<boolean | undefined>()\n\n  protected readonly menuOptionItemService = inject(\n    MenuOptionItemContextService,\n  )\n\n  readonly optionItemProps = computed<OptionItemProps>(() => {\n    const props = this.itemProps()\n    return {\n      ...props,\n      checked: this.checkedState().value(),\n      onCheckedChange: (value) => this.checkedState().setValue(value),\n      type: \"checkbox\",\n    }\n  })\n\n  protected readonly trackBindings = useTrackBindings(() => {\n    return this.menuContext().getOptionItemBindings(this.optionItemProps())\n  })\n\n  private readonly checkedState = useControlledState<boolean>({\n    defaultValue: this.defaultChecked,\n    onChange: (value) => this.checkedChanged.emit(value),\n    value: this.checked,\n  })\n\n  readonly optionItemState = computed(() => {\n    const optionItemProps = this.optionItemProps()\n    return {\n      ...this.menuContext().getItemState(optionItemProps),\n      ...optionItemProps,\n    }\n  })\n\n  ngOnInit() {\n    this.menuOptionItemService.init(this.optionItemState)\n    this.menuItemService.init(this.optionItemState)\n\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {\n  computed,\n  Directive,\n  effect,\n  ElementRef,\n  inject,\n  input,\n  type OnInit,\n} from \"@angular/core\"\n\nimport {useId, useOnDestroy} from \"@qualcomm-ui/angular-core/common\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport {\n  PresenceContextService,\n  usePresenceRenderer,\n} from \"@qualcomm-ui/angular-core/presence\"\nimport {mergeProps} from \"@qualcomm-ui/utils/merge-props\"\n\nimport {useMenuContext} from \"./menu-context.service\"\n\n@Directive()\nexport class CoreMenuContentDirective implements OnInit {\n  /**\n   * {@link https://www.w3schools.com/html/html_id.asp id attribute}. If\n   * omitted, a unique identifier will be generated for accessibility.\n   */\n  readonly id = input<string>()\n\n  protected readonly menuContext = useMenuContext()\n  protected readonly presenceService = inject(PresenceContextService)\n\n  readonly elementRef = inject(ElementRef)\n\n  protected readonly trackBindings = useTrackBindings(() => {\n    return mergeProps(\n      this.menuContext().getContentBindings({\n        id: this.hostId(),\n        onDestroy: this.onDestroy,\n      }),\n      this.presenceService.getPresenceBindings(),\n    )\n  })\n\n  protected readonly onDestroy = useOnDestroy()\n\n  protected presenceEffect = usePresenceRenderer()\n\n  private readonly hostId = computed(() => useId(this, this.id()))\n\n  constructor() {\n    // update the ref when the element is mounted or unmounted to keep state in sync.\n    // React does this automatically with its composable refs and data binding, but\n    // with Angular we must do this imperatively.\n    effect(() => {\n      const element = this.elementRef.nativeElement\n      if (this.presenceService.unmounted()) {\n        this.presenceService.setNode(null)\n      } else {\n        this.presenceService.setNode(element)\n      }\n    })\n  }\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {computed, Directive, input, type OnInit} from \"@angular/core\"\n\nimport {useId, useOnDestroy} from \"@qualcomm-ui/angular-core/common\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {useMenuContext} from \"./menu-context.service\"\n\n@Directive()\nexport class CoreMenuContextTriggerDirective implements OnInit {\n  /**\n   * {@link https://www.w3schools.com/html/html_id.asp id attribute}. If\n   * omitted, a unique identifier will be generated for accessibility.\n   */\n  readonly id = input<string>()\n\n  protected readonly menuContext = useMenuContext()\n\n  protected readonly trackBindings = useTrackBindings(() => {\n    return this.menuContext().getContextTriggerBindings({\n      id: this.hostId(),\n      onDestroy: this.onDestroy,\n    })\n  })\n\n  private readonly hostId = computed(() => useId(this, this.id()))\n\n  private readonly onDestroy = useOnDestroy()\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Injectable} from \"@angular/core\"\n\nimport {\n  type ApiContext,\n  BaseApiContextService,\n  createApiContext,\n} from \"@qualcomm-ui/angular-core/machine\"\nimport type {ItemGroupContext} from \"@qualcomm-ui/core/menu\"\n\n@Injectable()\nexport class MenuItemGroupContextService extends BaseApiContextService<ItemGroupContext> {}\n\nexport const [\n  MENU_ITEM_GROUP_CONTEXT,\n  useMenuItemGroupContext,\n  provideMenuItemGroupContext,\n]: ApiContext<ItemGroupContext> = createApiContext<ItemGroupContext>(\n  \"MenuItemGroupContext\",\n  MenuItemGroupContextService,\n)\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Injectable} from \"@angular/core\"\n\nimport {\n  type ApiContext,\n  BaseApiContextService,\n  createApiContext,\n} from \"@qualcomm-ui/angular-core/machine\"\nimport type {RadioItemGroupContext} from \"@qualcomm-ui/core/menu\"\n\n@Injectable()\nexport class MenuRadioItemGroupContextService extends BaseApiContextService<RadioItemGroupContext> {}\n\nexport const [\n  MENU_RADIO_ITEM_GROUP_CONTEXT,\n  useMenuRadioItemGroupContext,\n  provideMenuRadioItemGroupContext,\n]: ApiContext<RadioItemGroupContext> = createApiContext<RadioItemGroupContext>(\n  \"MenuRadioItemGroupContext\",\n  MenuRadioItemGroupContextService,\n)\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {useMenuContext} from \"./menu-context.service\"\nimport {useMenuItemGroupContext} from \"./menu-item-group-context.service\"\nimport {useMenuRadioItemGroupContext} from \"./menu-radio-item-group-context.service\"\n\n@Directive()\nexport class CoreMenuItemGroupLabelDirective implements OnInit {\n  protected readonly menuContext = useMenuContext()\n  protected readonly menuItemGroupContext = useMenuItemGroupContext({\n    optional: true,\n  })\n  protected readonly menuRadioItemGroupContext = useMenuRadioItemGroupContext({\n    optional: true,\n  })\n\n  protected readonly trackBindings = useTrackBindings(() => {\n    return this.menuContext().getItemGroupLabelBindings({\n      htmlFor:\n        this.menuItemGroupContext?.().id ||\n        this.menuRadioItemGroupContext?.().id,\n    })\n  })\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {computed, Directive, inject, input, type OnInit} from \"@angular/core\"\n\nimport {useId} from \"@qualcomm-ui/angular-core/common\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {useMenuContext} from \"./menu-context.service\"\nimport {MenuItemGroupContextService} from \"./menu-item-group-context.service\"\n\n@Directive()\nexport class CoreMenuItemGroupDirective implements OnInit {\n  /**\n   * {@link https://www.w3schools.com/html/html_id.asp id attribute}. If\n   * omitted, a unique identifier will be generated for accessibility.\n   */\n  readonly id = input<string>()\n\n  protected readonly menuContext = useMenuContext()\n  protected readonly menuItemGroupService = inject(MenuItemGroupContextService)\n\n  protected readonly trackBindings = useTrackBindings(() => {\n    return this.menuContext().getItemGroupBindings({\n      id: this.hostId(),\n    })\n  })\n\n  private readonly hostId = computed(() => useId(this, this.id()))\n\n  ngOnInit() {\n    this.menuItemGroupService.init(computed(() => ({id: this.hostId()})))\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {useMenuContext} from \"./menu-context.service\"\nimport {useMenuItemContext} from \"./menu-item-context.service\"\nimport {useMenuOptionItemContext} from \"./menu-option-item-context.service\"\n\n@Directive()\nexport class CoreMenuItemIndicatorDirective implements OnInit {\n  protected readonly menuContext = useMenuContext()\n  protected readonly menuItemContext = useMenuItemContext({optional: true})\n  protected readonly menuOptionItemContext = useMenuOptionItemContext({\n    optional: true,\n  })\n\n  protected readonly trackBindings = useTrackBindings(() => {\n    const context = this.menuOptionItemContext?.() || this.menuItemContext?.()\n    if (!context) {\n      return {}\n    }\n    return this.menuContext().getItemIndicatorBindings(context)\n  })\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {useMenuContext} from \"./menu-context.service\"\nimport {useMenuItemContext} from \"./menu-item-context.service\"\nimport {useMenuOptionItemContext} from \"./menu-option-item-context.service\"\n\n@Directive()\nexport class CoreMenuItemLabelDirective implements OnInit {\n  protected readonly menuContext = useMenuContext()\n  protected readonly menuItemContext = useMenuItemContext({optional: true})\n  protected readonly menuOptionItemContext = useMenuOptionItemContext({\n    optional: true,\n  })\n\n  protected readonly trackBindings = useTrackBindings(() => {\n    const context = this.menuOptionItemContext?.() || this.menuItemContext?.()\n    if (!context) {\n      console.error(\n        \"Missing context. This directive can only be used as a child of the menu item or menu option item directives.\",\n      )\n      return {}\n    }\n    return this.menuContext().getItemLabelBindings(context)\n  })\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {computed, Directive, effect, type OnInit} from \"@angular/core\"\n\nimport {useOnDestroy} from \"@qualcomm-ui/angular-core/common\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {BaseMenuItemDirective} from \"./base-menu-item.directive\"\n\n@Directive()\nexport class CoreMenuItemRootDirective\n  extends BaseMenuItemDirective\n  implements OnInit\n{\n  readonly itemState = computed(() => {\n    return this.menuContext().getItemState(this.itemProps())\n  })\n\n  protected readonly trackBindings = useTrackBindings(() => {\n    return this.menuContext().getItemBindings({\n      ...this.itemProps(),\n    })\n  })\n\n  protected readonly onDestroy = useOnDestroy()\n\n  constructor() {\n    super()\n    let prevId = \"\"\n    effect((onCleanup) => {\n      const id = this.itemState().id\n      if (id !== prevId) {\n        prevId = id\n        const cleanup = this.menuContext().addItemListener({\n          id,\n          onSelect: () => this.selected.emit(),\n        })\n        onCleanup(() => {\n          cleanup?.()\n        })\n      }\n    })\n  }\n\n  ngOnInit() {\n    this.menuItemService.init(\n      computed(() => {\n        return {\n          ...this.itemProps(),\n          ...this.itemState(),\n        }\n      }),\n    )\n\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {useMenuContext} from \"./menu-context.service\"\nimport {useMenuOptionItemContext} from \"./menu-option-item-context.service\"\n\n@Directive()\nexport class CoreMenuOptionItemControlDirective implements OnInit {\n  protected readonly menuContext = useMenuContext()\n  protected readonly menuOptionItemContext = useMenuOptionItemContext()\n\n  protected readonly trackBindings = useTrackBindings(() =>\n    this.menuContext().getOptionItemControlBindings(\n      this.menuOptionItemContext(),\n    ),\n  )\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {computed, Directive, inject, input, type OnInit} from \"@angular/core\"\n\nimport {useId, useOnDestroy} from \"@qualcomm-ui/angular-core/common\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport {PresenceContextService} from \"@qualcomm-ui/angular-core/presence\"\n\nimport {useMenuContext} from \"./menu-context.service\"\n\n@Directive()\nexport class CoreMenuPositionerDirective implements OnInit {\n  /**\n   * {@link https://www.w3schools.com/html/html_id.asp id attribute}. If\n   * omitted, a unique identifier will be generated for accessibility.\n   */\n  readonly id = input<string>()\n\n  protected readonly menuContext = useMenuContext()\n  protected readonly presenceService = inject(PresenceContextService)\n\n  protected readonly trackBindings = useTrackBindings(() => {\n    return this.menuContext().getPositionerBindings({\n      id: this.hostId(),\n      onDestroy: this.onDestroy,\n    })\n  })\n\n  private readonly hostId = computed(() => useId(this, this.id()))\n\n  private readonly onDestroy = useOnDestroy()\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {\n  computed,\n  Directive,\n  inject,\n  input,\n  model,\n  type OnInit,\n} from \"@angular/core\"\n\nimport {useId} from \"@qualcomm-ui/angular-core/common\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport type {SignalifyInput} from \"@qualcomm-ui/angular-core/signals\"\nimport {useControlledState} from \"@qualcomm-ui/angular-core/state\"\nimport type {ItemGroupContext} from \"@qualcomm-ui/core/menu\"\n\nimport {useMenuContext} from \"./menu-context.service\"\nimport {MenuRadioItemGroupContextService} from \"./menu-radio-item-group-context.service\"\n\n@Directive()\nexport class CoreMenuRadioItemGroupDirective\n  implements SignalifyInput<Partial<ItemGroupContext>>, OnInit\n{\n  /**\n   * {@link https://www.w3schools.com/html/html_id.asp id attribute}. If\n   * omitted, a unique identifier will be generated for accessibility.\n   */\n  readonly id = input<string>()\n\n  protected readonly menuContext = useMenuContext()\n  protected readonly radioItemGroupService = inject(\n    MenuRadioItemGroupContextService,\n  )\n\n  /**\n   * The initial value of the radio item group.\n   * Use when you don't need to control the state of the group.\n   */\n  readonly defaultValue = input<string>()\n\n  /**\n   * The controlled value of the radio item group.\n   */\n  readonly value = model<string | undefined>()\n\n  readonly valueState = useControlledState<string | undefined>({\n    defaultValue: this.defaultValue,\n    onChange: (value) => this.value.set(value),\n    value: this.value,\n  })\n\n  protected readonly trackBindings = useTrackBindings(() => {\n    return this.menuContext().getItemGroupBindings({\n      id: this.hostId(),\n    })\n  })\n\n  private readonly hostId = computed(() => useId(this, this.id()))\n\n  ngOnInit() {\n    this.radioItemGroupService.init(\n      computed(() => ({\n        id: this.hostId(),\n        onValueChange: (value) => this.valueState().setValue(value),\n        value: this.valueState().value(),\n      })),\n    )\n\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {computed, Directive, inject, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport type {OptionItemProps} from \"@qualcomm-ui/core/menu\"\n\nimport {BaseMenuItemDirective} from \"./base-menu-item.directive\"\nimport {MenuOptionItemContextService} from \"./menu-option-item-context.service\"\nimport {useMenuRadioItemGroupContext} from \"./menu-radio-item-group-context.service\"\n\n@Directive()\nexport class CoreMenuRadioItemDirective\n  extends BaseMenuItemDirective\n  implements OnInit\n{\n  protected readonly menuOptionItemService = inject(\n    MenuOptionItemContextService,\n  )\n  protected readonly menuRadioItemGroupContext = useMenuRadioItemGroupContext()\n\n  readonly optionItemProps = computed<OptionItemProps>(() => {\n    const props = this.itemProps()\n    const itemGroup = this.menuRadioItemGroupContext()\n    return {\n      ...props,\n      checked: itemGroup.value === props.value,\n      onCheckedChange: () => itemGroup.onValueChange?.(props.value),\n      type: \"radio\",\n    }\n  })\n\n  protected readonly trackBindings = useTrackBindings(() => {\n    return this.menuContext().getOptionItemBindings(this.optionItemProps())\n  })\n\n  ngOnInit() {\n    this.trackBindings()\n\n    this.menuOptionItemService.init(\n      computed(() => {\n        const optionItemProps = this.optionItemProps()\n        return {\n          ...optionItemProps,\n          ...this.menuContext().getItemState(optionItemProps),\n        }\n      }),\n    )\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Injectable} from \"@angular/core\"\n\nimport {\n  type ApiContext,\n  BaseApiContextService,\n  createApiContext,\n} from \"@qualcomm-ui/angular-core/machine\"\nimport type {MenuSchema} from \"@qualcomm-ui/core/menu\"\nimport type {Machine} from \"@qualcomm-ui/utils/machine\"\n\n@Injectable()\nexport class MenuMachineContextService extends BaseApiContextService<\n  Machine<MenuSchema>\n> {}\n\nexport const [\n  MENU_MACHINE_CONTEXT,\n  useMenuMachineContext,\n  provideMenuMachineContext,\n]: ApiContext<Machine<MenuSchema>> = createApiContext<Machine<MenuSchema>>(\n  \"MenuMachineContext\",\n  MenuMachineContextService,\n)\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Injectable} from \"@angular/core\"\n\nimport {\n  type ApiContext,\n  BaseApiContextService,\n  createApiContext,\n} from \"@qualcomm-ui/angular-core/machine\"\nimport type {MenuTriggerContextValue} from \"@qualcomm-ui/core/menu\"\n\n@Injectable()\nexport class MenuTriggerContextService extends BaseApiContextService<MenuTriggerContextValue> {}\n\nexport const [\n  MENU_TRIGGER_CONTEXT,\n  useMenuTriggerContext,\n  provideMenuTriggerContext,\n]: ApiContext<MenuTriggerContextValue> =\n  createApiContext<MenuTriggerContextValue>(\n    \"MenuTriggerContext\",\n    MenuTriggerContextService,\n  )\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {DOCUMENT} from \"@angular/common\"\nimport {\n  booleanAttribute,\n  computed,\n  Directive,\n  inject,\n  Injector,\n  input,\n  type OnInit,\n  output,\n  untracked,\n} from \"@angular/core\"\n\nimport {useId, useIsMounted} from \"@qualcomm-ui/angular-core/common\"\nimport {normalizeProps, useMachine} from \"@qualcomm-ui/angular-core/machine\"\nimport {\n  CorePresenceDirective,\n  PresenceContextService,\n} from \"@qualcomm-ui/angular-core/presence\"\nimport type {SignalifyInput} from \"@qualcomm-ui/angular-core/signals\"\nimport {\n  createMenuApi,\n  type MenuApiProps,\n  menuMachine,\n  type MenuNavigateDetails,\n} from \"@qualcomm-ui/core/menu\"\nimport {\n  createPresenceApi,\n  type PresenceApiProps,\n  presenceMachine,\n} from \"@qualcomm-ui/core/presence\"\nimport type {LayerDismissEvent} from \"@qualcomm-ui/dom/dismissable\"\nimport type {PositioningOptions} from \"@qualcomm-ui/dom/floating-ui\"\nimport type {\n  FocusOutsideEvent,\n  InteractOutsideEvent,\n  PointerDownOutsideEvent,\n} from \"@qualcomm-ui/dom/interact-outside\"\nimport type {Point} from \"@qualcomm-ui/dom/rect-utils\"\nimport type {Booleanish} from \"@qualcomm-ui/utils/coercion\"\nimport type {Direction} from \"@qualcomm-ui/utils/direction\"\nimport {type Explicit, isDefined} from \"@qualcomm-ui/utils/guard\"\n\nimport {MenuContextService, useMenuContext} from \"./menu-context.service\"\nimport {\n  MenuMachineContextService,\n  useMenuMachineContext,\n} from \"./menu-machine-context.service\"\nimport {MenuTriggerContextService} from \"./menu-trigger-context.service\"\n\n@Directive()\nexport class CoreMenuRootDirective\n  extends CorePresenceDirective\n  implements\n    OnInit,\n    SignalifyInput<Omit<MenuApiProps, \"id\" | \"navigate\"> & PresenceApiProps>\n{\n  /**\n   * The positioning point for the menu. Can be set by the context menu trigger or\n   * the button trigger.\n   */\n  readonly anchorPoint = input<Point | null | undefined>()\n\n  /**\n   * Whether to close the menu when an option is selected\n   * @default true\n   */\n  readonly closeOnSelect = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  /**\n   * Whether the menu is composed with other composite widgets like a combobox or tabs\n   * @default true\n   */\n  readonly composite = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  /**\n   * The initial highlighted value of the menu item when rendered.\n   * Use when you don't need to control the highlighted value of the menu item.\n   */\n  readonly defaultHighlightedValue = input<string | null | undefined>()\n\n  /**\n   * The initial open state of the menu when rendered.\n   * Use when you don't need to control the open state of the menu.\n   */\n  readonly defaultOpen = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  /**\n   * The document's text/writing direction.\n   *\n   * @default \"ltr\"\n   */\n  readonly dir = input<Direction | undefined>(undefined)\n\n  /**\n   * A root node to correctly resolve the Document in custom environments. i.e.,\n   * Iframes, Electron.\n   */\n  readonly getRootNode = input<\n    (() => ShadowRoot | Document | Node) | undefined\n  >()\n\n  /**\n   * The controlled highlighted value of the menu item.\n   */\n  readonly highlightedValue = input<string | undefined | null>()\n\n  /**\n   * {@link https://www.w3schools.com/html/html_id.asp id attribute}. If\n   * omitted, a unique identifier will be generated for accessibility.)\n   */\n  readonly id = input<string>()\n\n  /**\n   * Whether to loop the keyboard navigation.\n   * @default false\n   */\n  readonly loopFocus = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  /**\n   * The controlled open state of the menu\n   */\n  readonly open = input<boolean | undefined>()\n\n  /**\n   * The options used to dynamically position the menu\n   * @inheritDoc\n   */\n  readonly positioning = input<PositioningOptions | undefined>()\n\n  /**\n   * Whether the pressing printable characters should trigger typeahead navigation\n   * @default true\n   */\n  readonly typeahead = input<boolean | undefined, Booleanish>(undefined, {\n    transform: booleanAttribute,\n  })\n\n  /**\n   * Function called when the highlighted menu item changes.\n   */\n  highlightChanged = output<string | null>()\n\n  /**\n   * Function to navigate to the selected item if it's an anchor element\n   */\n  readonly navigate = output<MenuNavigateDetails>()\n\n  /**\n   * Function called when the escape key is pressed\n   */\n  readonly escapeKeyDown = output<KeyboardEvent>()\n\n  /**\n   * Function called when the focus is moved outside the component\n   */\n  readonly focusOutside = output<FocusOutsideEvent>()\n\n  /**\n   * Function called when an interaction happens outside the component\n   */\n  readonly interactOutside = output<InteractOutsideEvent>()\n\n  /**\n   * Function called when the open state changes\n   */\n  readonly openChanged = output<boolean>()\n\n  /**\n   * Function called when the pointer is pressed down outside the component\n   */\n  readonly pointerDownOutside = output<PointerDownOutsideEvent>()\n\n  /**\n   * Function called when this layer is closed due to a parent layer being closed\n   */\n  readonly requestDismissed = output<LayerDismissEvent>()\n\n  /**\n   * Function called when a menu item is selected.\n   */\n  readonly selected = output<string>()\n\n  protected readonly document = inject(DOCUMENT)\n  protected readonly isMounted = useIsMounted()\n  protected readonly menuService = inject(MenuContextService)\n  protected readonly menuMachineService = inject(MenuMachineContextService)\n  protected readonly menuTriggerService = inject(MenuTriggerContextService)\n  protected readonly presenceService = inject(PresenceContextService)\n  protected readonly injector = inject(Injector)\n  protected readonly hostId = computed(() => useId(this, this.id()))\n\n  protected readonly parentMachineContext = useMenuMachineContext({\n    optional: true,\n    skipSelf: true,\n  })\n  protected readonly parentMenuContext = useMenuContext({\n    optional: true,\n    skipSelf: true,\n  })\n\n  ngOnInit() {\n    const machine = useMachine(\n      menuMachine,\n      computed<Explicit<MenuApiProps>>(() => ({\n        anchorPoint: this.anchorPoint(),\n        closeOnSelect: this.closeOnSelect(),\n        composite: this.composite(),\n        defaultHighlightedValue: this.defaultHighlightedValue(),\n        defaultOpen: this.defaultOpen(),\n        dir: this.dir(),\n        getRootNode: this.getRootNode() || (() => this.document),\n        highlightedValue: this.highlightedValue(),\n        id: this.hostId(),\n        loopFocus: this.loopFocus(),\n        navigate: (details) => {\n          if (this.isMounted()) {\n            this.navigate.emit(details)\n          }\n        },\n        onEscapeKeyDown: (event) => {\n          if (this.isMounted()) {\n            this.escapeKeyDown.emit(event)\n          }\n        },\n        onFocusOutside: (value) => {\n          if (this.isMounted()) {\n            this.focusOutside.emit(value)\n          }\n        },\n        onHighlightChange: (value) => {\n          if (this.isMounted()) {\n            this.highlightChanged.emit(value)\n          }\n        },\n        onInteractOutside: (value) => {\n          if (this.isMounted()) {\n            this.interactOutside.emit(value)\n          }\n        },\n        onOpenChange: (value) => {\n          if (this.isMounted()) {\n            this.openChanged.emit(value)\n          }\n        },\n        onPointerDownOutside: (value) => {\n          if (this.isMounted()) {\n            this.pointerDownOutside.emit(value)\n          }\n        },\n        onRequestDismiss: (event) => {\n          if (this.isMounted()) {\n            this.requestDismissed.emit(event)\n          }\n        },\n        onSelect: (value) => {\n          this.selected.emit(value)\n        },\n        open: this.open(),\n        positioning: this.positioning(),\n        typeahead: this.typeahead(),\n      })),\n      this.injector,\n    )\n\n    const menuApi = computed(() => createMenuApi(machine, normalizeProps))\n\n    // sub-menu check\n    if (this.parentMenuContext && this.parentMachineContext) {\n      this.parentMenuContext().setChild(machine)\n      menuApi().setParent(this.parentMachineContext())\n    }\n\n    this.menuService.init(menuApi)\n\n    this.menuMachineService.init(computed(() => machine))\n\n    this.menuTriggerService.init(\n      computed(() => {\n        return (params) => {\n          return this.parentMenuContext?.()?.getTriggerItemBindings?.(\n            menuApi(),\n            params,\n          )\n        }\n      }),\n    )\n\n    const presence = useMachine(\n      presenceMachine,\n      computed<Explicit<PresenceApiProps>>(() => {\n        const present = this.present()\n        const api = menuApi()\n        const showing = isDefined(present) ? present : api.open\n        untracked(() => {\n          if (this.presenceService.initialized()) {\n            this.presenceService.immediatePresent = showing\n          }\n        })\n        return {\n          immediate: this.immediate(),\n          lazyMount: this.lazyMount(),\n          onExitComplete: () => {\n            this.exitCompleted.emit()\n          },\n          present: showing,\n          skipAnimationOnMount: this.skipAnimationOnMount(),\n          unmountOnExit: this.unmountOnExit(),\n        }\n      }),\n      this.injector,\n    )\n\n    this.presenceService.init(\n      computed(() => createPresenceApi(presence, normalizeProps)),\n    )\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {Directive, type OnInit} from \"@angular/core\"\n\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {useMenuContext} from \"./menu-context.service\"\n\n@Directive()\nexport class CoreMenuSeparatorDirective implements OnInit {\n  protected readonly menuContext = useMenuContext()\n\n  protected readonly trackBindings = useTrackBindings(() => {\n    return this.menuContext().getSeparatorBindings()\n  })\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {computed, Directive, input, type OnInit} from \"@angular/core\"\n\nimport {useId, useOnDestroy} from \"@qualcomm-ui/angular-core/common\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\n\nimport {BaseMenuItemDirective} from \"./base-menu-item.directive\"\nimport {useMenuTriggerContext} from \"./menu-trigger-context.service\"\n\n@Directive()\nexport class CoreMenuTriggerItemDirective\n  extends BaseMenuItemDirective\n  implements OnInit\n{\n  /**\n   * {@link https://www.w3schools.com/html/html_id.asp id attribute}. If\n   * omitted, a unique identifier will be generated for accessibility.\n   */\n  readonly id = input<string>()\n\n  protected readonly menuTriggerContext = useMenuTriggerContext()\n\n  protected readonly trackBindings = useTrackBindings(() => {\n    return (\n      this.menuTriggerContext()({\n        ...this.itemProps(),\n        id: this.hostId(),\n        onDestroy: this.onDestroy,\n      }) ?? {}\n    )\n  })\n\n  private readonly hostId = computed(() => useId(this, this.id()))\n\n  private readonly onDestroy = useOnDestroy()\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {computed, Directive, inject, input, type OnInit} from \"@angular/core\"\n\nimport {useId, useOnDestroy} from \"@qualcomm-ui/angular-core/common\"\nimport {useTrackBindings} from \"@qualcomm-ui/angular-core/machine\"\nimport {PresenceContextService} from \"@qualcomm-ui/angular-core/presence\"\n\nimport {useMenuContext} from \"./menu-context.service\"\n\n@Directive()\nexport class CoreMenuTriggerDirective implements OnInit {\n  /**\n   * {@link https://www.w3schools.com/html/html_id.asp id attribute}. If\n   * omitted, a unique identifier will be generated for accessibility.\n   */\n  readonly id = input<string>()\n\n  protected readonly menuContext = useMenuContext()\n  protected readonly presenceService = inject(PresenceContextService)\n\n  protected readonly trackBindings = useTrackBindings(() => {\n    return this.menuContext().getTriggerBindings({\n      id: this.hostId(),\n      onDestroy: this.onDestroy,\n    })\n  })\n\n  protected readonly hostId = computed(() => useId(this, this.id()))\n\n  protected readonly onDestroy = useOnDestroy()\n\n  ngOnInit() {\n    this.trackBindings()\n  }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}