{"version":3,"file":"index.cjs","names":[],"sources":["../../src/menu/menu.anatomy.ts","../../src/menu/menu-item.classes.ts","../../src/menu/menu-split-button.anatomy.ts","../../src/menu/menu.classes.ts","../../src/menu/menu-split-button.api.ts","../../src/menu/menu.api.ts"],"sourcesContent":["// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {type Anatomy, createAnatomy} from \"@qualcomm-ui/utils/anatomy\"\n\nconst parts = [\"description\", \"startIcon\"] as const\n\nexport const qdsMenuAnatomy: Anatomy<\"menu\", (typeof parts)[number]> =\n  createAnatomy(\"menu\").parts(...parts)\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nexport const menuItemClasses = {\n  command: \"qui-menu-item__command\",\n  group: \"qui-menu-item__group\",\n  groupLabel: \"qui-menu-item__group-label\",\n  icon: \"qui-menu-item__icon\",\n  itemAccessory: \"qui-menu-item__accessory\",\n  itemDescription: \"qui-menu-item__description\",\n  itemIndicator: \"qui-menu-item__indicator\",\n  itemLabel: \"qui-menu-item__label\",\n  root: \"qui-menu-item__root\",\n  startIcon: \"qui-menu-item__start-icon\",\n} as const\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {type Anatomy, createAnatomy} from \"@qualcomm-ui/utils/anatomy\"\n\nconst parts = [\"root\"] as const\n\nexport const splitButtonAnatomy: Anatomy<\n  \"splitButton\",\n  (typeof parts)[number]\n> = createAnatomy(\"splitButton\").parts(...parts)\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nexport const menuClasses = {\n  button: \"qui-menu__button\",\n  content: \"qui-menu__content\",\n  indicator: \"qui-menu__indicator\",\n  separator: \"qui-menu__separator\",\n  splitButton: \"qui-menu__split-button\",\n} as const\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {booleanDataAttr} from \"@qualcomm-ui/utils/attributes\"\nimport type {Explicit} from \"@qualcomm-ui/utils/guard\"\nimport type {PropNormalizer} from \"@qualcomm-ui/utils/machine\"\n\nimport {splitButtonAnatomy} from \"./menu-split-button.anatomy.js\"\nimport type {\n  QdsSplitButtonApiProps,\n  QdsSplitButtonBindings,\n} from \"./menu-split-button.types.js\"\nimport {menuClasses} from \"./menu.classes.js\"\n\nconst parts = splitButtonAnatomy.parts\n\nexport function getQdsSplitButtonBindings(\n  {\n    \"aria-label\": ariaLabel,\n    \"aria-labelledby\": ariaLabelledby,\n    density,\n    disabled,\n    emphasis,\n    size,\n    variant,\n  }: Explicit<QdsSplitButtonApiProps>,\n  normalize: PropNormalizer,\n): QdsSplitButtonBindings {\n  const hasAriaLabel = !!(ariaLabel || ariaLabelledby)\n\n  return normalize.element({\n    ...parts.root,\n    \"aria-label\": ariaLabel || undefined,\n    \"aria-labelledby\": ariaLabelledby || undefined,\n    className: menuClasses.splitButton,\n    \"data-density\": density || \"default\",\n    \"data-disabled\": booleanDataAttr(disabled),\n    \"data-emphasis\": emphasis || undefined,\n    \"data-size\": size || \"md\",\n    \"data-variant\": variant || undefined,\n    ...(hasAriaLabel && {role: \"group\"}),\n  })\n}\n","// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nimport {checkboxClasses} from \"@qualcomm-ui/qds-core/checkbox\"\nimport {radioClasses} from \"@qualcomm-ui/qds-core/radio\"\nimport type {PropNormalizer} from \"@qualcomm-ui/utils/machine\"\n\nimport {menuItemClasses} from \"./menu-item.classes.js\"\nimport {qdsMenuAnatomy} from \"./menu.anatomy.js\"\nimport {menuClasses} from \"./menu.classes.js\"\nimport type {\n  QdsMenuApi,\n  QdsMenuApiProps,\n  QdsMenuButtonBindings,\n  QdsMenuCheckboxItemControlBindings,\n  QdsMenuContentBindings,\n  QdsMenuDescriptionBindings,\n  QdsMenuIndicatorBindings,\n  QdsMenuItemAccessoryBindings,\n  QdsMenuItemBindings,\n  QdsMenuItemCommandBindings,\n  QdsMenuItemGroupBindings,\n  QdsMenuItemGroupLabelBindings,\n  QdsMenuItemIndicatorBindings,\n  QdsMenuItemLabelBindings,\n  QdsMenuItemStartIconBindings,\n  QdsMenuRadioItemBindings,\n  QdsMenuRadioItemControlBindings,\n  QdsMenuSeparatorBindings,\n  QdsMenuTriggerItemIndicatorBindings,\n} from \"./menu.types.js\"\n\nexport function createQdsMenuApi(\n  props: QdsMenuApiProps,\n  normalize: PropNormalizer,\n): QdsMenuApi {\n  const size = props.size || \"md\"\n  const parts = qdsMenuAnatomy.parts\n  return {\n    size,\n\n    // group: bindings\n    getButtonBindings(): QdsMenuButtonBindings {\n      return normalize.element({\n        className: menuClasses.button,\n      })\n    },\n    getCheckboxItemControlBindings(): QdsMenuCheckboxItemControlBindings {\n      return normalize.element({\n        className: checkboxClasses.control,\n      })\n    },\n    getContentBindings(): QdsMenuContentBindings {\n      return normalize.element({\n        className: menuClasses.content,\n        \"data-size\": size,\n      })\n    },\n    getIndicatorBindings(): QdsMenuIndicatorBindings {\n      return normalize.element({\n        className: menuClasses.indicator,\n      })\n    },\n    getItemBindings(): QdsMenuItemBindings {\n      return normalize.element({\n        className: menuItemClasses.root,\n        \"data-size\": size,\n      })\n    },\n    getItemCommandBindings(): QdsMenuItemCommandBindings {\n      return normalize.element({\n        className: menuItemClasses.command,\n        \"data-size\": size,\n      })\n    },\n    getItemGroupBindings(): QdsMenuItemGroupBindings {\n      return normalize.element({\n        className: menuItemClasses.group,\n      })\n    },\n    getItemGroupLabelBindings(): QdsMenuItemGroupLabelBindings {\n      return normalize.element({\n        className: menuItemClasses.groupLabel,\n        \"data-size\": size,\n      })\n    },\n    getItemIndicatorBindings(): QdsMenuItemIndicatorBindings {\n      return normalize.element({\n        className: menuItemClasses.itemIndicator,\n        \"data-size\": size,\n      })\n    },\n    getItemLabelBindings(): QdsMenuItemLabelBindings {\n      return normalize.element({\n        className: menuItemClasses.itemLabel,\n        \"data-size\": size,\n      })\n    },\n    getItemStartIconBindings(): QdsMenuItemStartIconBindings {\n      return normalize.element({\n        ...parts.startIcon,\n        className: menuItemClasses.startIcon,\n        \"data-size\": size,\n      })\n    },\n    getMenuItemAccessoryBindings(): QdsMenuItemAccessoryBindings {\n      return normalize.element({\n        className: menuItemClasses.itemAccessory,\n      })\n    },\n    getMenuItemDescriptionBindings(): QdsMenuDescriptionBindings {\n      return normalize.element({\n        ...parts.description,\n        className: menuItemClasses.itemDescription,\n        \"data-size\": size,\n      })\n    },\n    getRadioItemBindings(): QdsMenuRadioItemBindings {\n      return normalize.element({\n        className: menuItemClasses.root,\n        \"data-size\": size,\n      })\n    },\n    getRadioItemControlBindings(): QdsMenuRadioItemControlBindings {\n      return normalize.element({\n        className: radioClasses.itemControl,\n      })\n    },\n    getSeparatorBindings(): QdsMenuSeparatorBindings {\n      return normalize.element({\n        className: menuClasses.separator,\n      })\n    },\n    getTriggerItemIndicatorBindings(): QdsMenuTriggerItemIndicatorBindings {\n      return normalize.element({\n        className: menuItemClasses.itemIndicator,\n        \"data-size\": size,\n      })\n    },\n  }\n}\n"],"mappings":"+OAOA,IAAa,GAAA,EAAA,EAAA,eACG,OAAO,CAAC,MAHT,cAAe,YAGS,CCL1B,EAAkB,CAC7B,QAAS,yBACT,MAAO,uBACP,WAAY,6BACZ,KAAM,sBACN,cAAe,2BACf,gBAAiB,6BACjB,cAAe,2BACf,UAAW,uBACX,KAAM,sBACN,UAAW,4BACZ,CCPY,GAAA,EAAA,EAAA,eAGK,cAAc,CAAC,MALlB,OAKiC,CCPnC,EAAc,CACzB,OAAQ,mBACR,QAAS,oBACT,UAAW,sBACX,UAAW,sBACX,YAAa,yBACd,CCKK,EAAQ,EAAmB,MAEjC,SAAgB,EACd,CACE,aAAc,EACd,kBAAmB,EACnB,UACA,WACA,WACA,OACA,WAEF,EACwB,CACxB,IAAM,EAAe,CAAC,EAAE,GAAa,GAErC,OAAO,EAAU,QAAQ,CACvB,GAAG,EAAM,KACT,aAAc,GAAa,IAAA,GAC3B,kBAAmB,GAAkB,IAAA,GACrC,UAAW,EAAY,YACvB,eAAgB,GAAW,UAC3B,iBAAA,EAAA,EAAA,iBAAiC,EAAS,CAC1C,gBAAiB,GAAY,IAAA,GAC7B,YAAa,GAAQ,KACrB,eAAgB,GAAW,IAAA,GAC3B,GAAI,GAAgB,CAAC,KAAM,QAAQ,CACpC,CAAC,CCTJ,SAAgB,EACd,EACA,EACY,CACZ,IAAM,EAAO,EAAM,MAAQ,KACrB,EAAQ,EAAe,MAC7B,MAAO,CACL,OAGA,mBAA2C,CACzC,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAY,OACxB,CAAC,EAEJ,gCAAqE,CACnE,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAA,gBAAgB,QAC5B,CAAC,EAEJ,oBAA6C,CAC3C,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAY,QACvB,YAAa,EACd,CAAC,EAEJ,sBAAiD,CAC/C,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAY,UACxB,CAAC,EAEJ,iBAAuC,CACrC,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAgB,KAC3B,YAAa,EACd,CAAC,EAEJ,wBAAqD,CACnD,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAgB,QAC3B,YAAa,EACd,CAAC,EAEJ,sBAAiD,CAC/C,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAgB,MAC5B,CAAC,EAEJ,2BAA2D,CACzD,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAgB,WAC3B,YAAa,EACd,CAAC,EAEJ,0BAAyD,CACvD,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAgB,cAC3B,YAAa,EACd,CAAC,EAEJ,sBAAiD,CAC/C,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAgB,UAC3B,YAAa,EACd,CAAC,EAEJ,0BAAyD,CACvD,OAAO,EAAU,QAAQ,CACvB,GAAG,EAAM,UACT,UAAW,EAAgB,UAC3B,YAAa,EACd,CAAC,EAEJ,8BAA6D,CAC3D,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAgB,cAC5B,CAAC,EAEJ,gCAA6D,CAC3D,OAAO,EAAU,QAAQ,CACvB,GAAG,EAAM,YACT,UAAW,EAAgB,gBAC3B,YAAa,EACd,CAAC,EAEJ,sBAAiD,CAC/C,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAgB,KAC3B,YAAa,EACd,CAAC,EAEJ,6BAA+D,CAC7D,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAA,aAAa,YACzB,CAAC,EAEJ,sBAAiD,CAC/C,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAY,UACxB,CAAC,EAEJ,iCAAuE,CACrE,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAgB,cAC3B,YAAa,EACd,CAAC,EAEL"}