{"version":3,"file":"index.cjs","names":[],"sources":["../../src/tabs/tabs.classes.ts","../../src/tabs/tabs.api.ts"],"sourcesContent":["// Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.\n// SPDX-License-Identifier: BSD-3-Clause-Clear\n\nexport const tabsClasses = {\n  indicator: \"qui-tabs__indicator\",\n  list: \"qui-tabs__list\",\n  panel: \"qui-tabs__panel\",\n  root: \"qui-tabs__root\",\n} as const\n\nexport const tabClasses = {\n  button: \"qui-tab__button\",\n  dismissButton: \"qui-tab__dismiss-button\",\n  icon: \"qui-tab__icon\",\n  root: \"qui-tab__root\",\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 {defined, type Explicit} from \"@qualcomm-ui/utils/guard\"\nimport type {PropNormalizer} from \"@qualcomm-ui/utils/machine\"\n\nimport {tabClasses, tabsClasses} from \"./tabs.classes.js\"\nimport type {\n  QdsTabsApi,\n  QdsTabsApiProps,\n  QdsTabsIndicatorBindings,\n  QdsTabsListBindings,\n  QdsTabsPanelBindings,\n  QdsTabsRootBindings,\n  QdsTabsTabBindings,\n  QdsTabsTabButtonBindings,\n  QdsTabsTabDismissButtonBindings,\n  QdsTabsTabEndIconBindings,\n  QdsTabsTabStartIconBindings,\n} from \"./tabs.types.js\"\n\nexport function createQdsTabsApi(\n  props: Explicit<QdsTabsApiProps>,\n  normalize: PropNormalizer,\n): QdsTabsApi {\n  const size = props.size || \"md\"\n  const variant = props.variant || \"line\"\n\n  return {\n    size,\n    variant,\n\n    // group: bindings\n    getIndicatorBindings(): QdsTabsIndicatorBindings {\n      return normalize.element({\n        className: tabsClasses.indicator,\n        \"data-animate\": booleanDataAttr(\n          defined(props.animateIndicator) ? props.animateIndicator : true,\n        ),\n        \"data-size\": size,\n        \"data-variant\": variant,\n        hidden: variant === \"contained\",\n      })\n    },\n    getListBindings(): QdsTabsListBindings {\n      return normalize.element({\n        className: tabsClasses.list,\n        \"data-size\": size,\n        \"data-variant\": variant,\n      })\n    },\n    getPanelBindings(): QdsTabsPanelBindings {\n      return normalize.element({\n        className: tabsClasses.panel,\n      })\n    },\n    getRootBindings(): QdsTabsRootBindings {\n      return normalize.element({\n        className: tabsClasses.root,\n        \"data-size\": size,\n      })\n    },\n    getTabBindings(): QdsTabsTabBindings {\n      return normalize.element({\n        className: tabClasses.root,\n        \"data-size\": size,\n        \"data-variant\": variant,\n      })\n    },\n    getTabButtonBindings(): QdsTabsTabButtonBindings {\n      return normalize.button({\n        className: tabClasses.button,\n        \"data-size\": size,\n        \"data-variant\": variant,\n      })\n    },\n    getTabDismissButtonBindings(): QdsTabsTabDismissButtonBindings {\n      return normalize.button({\n        className: tabClasses.dismissButton,\n        \"data-size\": size,\n      })\n    },\n    getTabEndIconBindings(): QdsTabsTabEndIconBindings {\n      const iconVariant = props.iconVariant || \"ghost\"\n      return normalize.element({\n        className: tabClasses.icon,\n        \"data-icon-variant\": iconVariant,\n        \"data-placement\": \"end\",\n        \"data-size\": size,\n        \"data-variant\": variant,\n      })\n    },\n    getTabStartIconBindings(): QdsTabsTabStartIconBindings {\n      const iconVariant = props.iconVariant || \"ghost\"\n      return normalize.element({\n        className: tabClasses.icon,\n        \"data-icon-variant\": iconVariant,\n        \"data-placement\": \"start\",\n        \"data-size\": size,\n        \"data-variant\": variant,\n      })\n    },\n  }\n}\n"],"mappings":"wJAGA,IAAa,EAAc,CACzB,UAAW,sBACX,KAAM,iBACN,MAAO,kBACP,KAAM,iBACP,CAEY,EAAa,CACxB,OAAQ,kBACR,cAAe,0BACf,KAAM,gBACN,KAAM,gBACP,CCOD,SAAgB,EACd,EACA,EACY,CACZ,IAAM,EAAO,EAAM,MAAQ,KACrB,EAAU,EAAM,SAAW,OAEjC,MAAO,CACL,OACA,UAGA,sBAAiD,CAC/C,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAY,UACvB,gBAAA,EAAA,EAAA,kBAAA,EAAA,EAAA,SACU,EAAM,iBAAiB,CAAG,EAAM,iBAAmB,GAC5D,CACD,YAAa,EACb,eAAgB,EAChB,OAAQ,IAAY,YACrB,CAAC,EAEJ,iBAAuC,CACrC,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAY,KACvB,YAAa,EACb,eAAgB,EACjB,CAAC,EAEJ,kBAAyC,CACvC,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAY,MACxB,CAAC,EAEJ,iBAAuC,CACrC,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAY,KACvB,YAAa,EACd,CAAC,EAEJ,gBAAqC,CACnC,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAW,KACtB,YAAa,EACb,eAAgB,EACjB,CAAC,EAEJ,sBAAiD,CAC/C,OAAO,EAAU,OAAO,CACtB,UAAW,EAAW,OACtB,YAAa,EACb,eAAgB,EACjB,CAAC,EAEJ,6BAA+D,CAC7D,OAAO,EAAU,OAAO,CACtB,UAAW,EAAW,cACtB,YAAa,EACd,CAAC,EAEJ,uBAAmD,CACjD,IAAM,EAAc,EAAM,aAAe,QACzC,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAW,KACtB,oBAAqB,EACrB,iBAAkB,MAClB,YAAa,EACb,eAAgB,EACjB,CAAC,EAEJ,yBAAuD,CACrD,IAAM,EAAc,EAAM,aAAe,QACzC,OAAO,EAAU,QAAQ,CACvB,UAAW,EAAW,KACtB,oBAAqB,EACrB,iBAAkB,QAClB,YAAa,EACb,eAAgB,EACjB,CAAC,EAEL"}