@commercetools/nimbus 2.0.1-rc2 → 2.0.1-rc4
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/chunks/{DateField-B-4ymU5i.es.js → DateField-DmPAxSnT.es.js} +8 -8
- package/dist/chunks/{DateField-B-4ymU5i.es.js.map → DateField-DmPAxSnT.es.js.map} +1 -1
- package/dist/chunks/{DatePicker-ByxT1sNF.es.js → DatePicker-D8m8YbnD.es.js} +6 -6
- package/dist/chunks/{DatePicker-ByxT1sNF.es.js.map → DatePicker-D8m8YbnD.es.js.map} +1 -1
- package/dist/chunks/{Heading-DFiVmZUR.es.js → Heading-lYSFVV4F.es.js} +2 -2
- package/dist/chunks/{Heading-DFiVmZUR.es.js.map → Heading-lYSFVV4F.es.js.map} +1 -1
- package/dist/chunks/accordion-B2FLWAh5.cjs.js.map +1 -1
- package/dist/chunks/accordion-CKDnNkVv.es.js.map +1 -1
- package/dist/chunks/{calendar-lD6G93R9.es.js → calendar-BkGJAIae.es.js} +3 -3
- package/dist/chunks/calendar-BkGJAIae.es.js.map +1 -0
- package/dist/chunks/calendar-V0KeNCQ3.cjs.js.map +1 -1
- package/dist/chunks/collapsible-motion-C7M_CLNI.cjs.js.map +1 -1
- package/dist/chunks/collapsible-motion-CSrKjF8X.es.js.map +1 -1
- package/dist/chunks/combobox-B5UxZWSX.cjs.js.map +1 -1
- package/dist/chunks/combobox-D_7gr3DY.es.js.map +1 -1
- package/dist/chunks/{date-input-Do1wXp3t.es.js → date-input-B_EuP5sc.es.js} +2 -2
- package/dist/chunks/{date-input-Do1wXp3t.es.js.map → date-input-B_EuP5sc.es.js.map} +1 -1
- package/dist/chunks/{date-picker-ClYge74a.es.js → date-picker-DFpgLG1U.es.js} +6 -6
- package/dist/chunks/{date-picker-ClYge74a.es.js.map → date-picker-DFpgLG1U.es.js.map} +1 -1
- package/dist/chunks/{date-range-picker-KRcGUZW-.es.js → date-range-picker-DVuIeQQd.es.js} +6 -6
- package/dist/chunks/{date-range-picker-KRcGUZW-.es.js.map → date-range-picker-DVuIeQQd.es.js.map} +1 -1
- package/dist/chunks/group-BqUFlw5R.cjs.js.map +1 -1
- package/dist/chunks/group-CWADf2vF.es.js.map +1 -1
- package/dist/chunks/icon-CenxuChf.es.js.map +1 -1
- package/dist/chunks/icon-D39U--jA.cjs.js.map +1 -1
- package/dist/chunks/kbd-BaeV_DL-.cjs.js.map +1 -1
- package/dist/chunks/kbd-CH9rYghB.es.js.map +1 -1
- package/dist/chunks/menu-D-vE6ZpM.es.js.map +1 -1
- package/dist/chunks/menu-DIepV2KZ.cjs.js.map +1 -1
- package/dist/chunks/popover-CfEq5G5-.cjs.js.map +1 -1
- package/dist/chunks/popover-DNaC7CwB.es.js.map +1 -1
- package/dist/chunks/{range-calendar-DBpl6y5i.es.js → range-calendar-D55DTDbA.es.js} +3 -3
- package/dist/chunks/range-calendar-D55DTDbA.es.js.map +1 -0
- package/dist/chunks/range-calendar-_dZfAsdG.cjs.js.map +1 -1
- package/dist/chunks/rich-text-input-BC8CBVio.es.js.map +1 -1
- package/dist/chunks/rich-text-input-Da5WFZ3l.cjs.js.map +1 -1
- package/dist/chunks/separator-CvRn_J0r.cjs.js.map +1 -1
- package/dist/chunks/separator-DJGUFG-o.es.js.map +1 -1
- package/dist/chunks/split-button-BO52sL7h.cjs.js.map +1 -1
- package/dist/chunks/split-button-BxyZmuNi.es.js.map +1 -1
- package/dist/chunks/switch-01hEhL9A.es.js.map +1 -1
- package/dist/chunks/switch-CdLhBEPq.cjs.js.map +1 -1
- package/dist/chunks/tabs-CJ0OAUSR.cjs.js.map +1 -1
- package/dist/chunks/tabs-Dhte-RCe.es.js.map +1 -1
- package/dist/chunks/tag-group-Btt0egzG.cjs.js.map +1 -1
- package/dist/chunks/tag-group-D2dgXSsV.es.js.map +1 -1
- package/dist/chunks/{time-input-DDrB_c0M.es.js → time-input-CUEnTp-4.es.js} +2 -2
- package/dist/chunks/{time-input-DDrB_c0M.es.js.map → time-input-CUEnTp-4.es.js.map} +1 -1
- package/dist/chunks/tooltip-BPTOkK7W.cjs.js.map +1 -1
- package/dist/chunks/tooltip-sgakxhiy.es.js.map +1 -1
- package/dist/chunks/{useDateFormatter-C4zVAL_K.es.js → useDateFormatter-4Wq50fMI.es.js} +3 -3
- package/dist/chunks/{useDateFormatter-C4zVAL_K.es.js.map → useDateFormatter-4Wq50fMI.es.js.map} +1 -1
- package/dist/components/accordion/accordion.d.ts +13 -0
- package/dist/components/accordion/accordion.recipe.d.ts +36 -0
- package/dist/components/accordion/accordion.slots.d.ts +8 -0
- package/dist/components/accordion/accordion.types.d.ts +48 -0
- package/dist/components/accordion/components/accordion-content.d.ts +2 -0
- package/dist/components/accordion/components/accordion-header.d.ts +2 -0
- package/dist/components/accordion/components/accordion-item.d.ts +2 -0
- package/dist/components/accordion/components/accordion-root.d.ts +9 -0
- package/dist/components/accordion/index.d.ts +2 -0
- package/dist/components/alert/alert.d.ts +30 -0
- package/dist/components/alert/alert.i18n.d.ts +7 -0
- package/dist/components/alert/alert.recipe.d.ts +40 -0
- package/dist/components/alert/alert.slots.d.ts +16 -0
- package/dist/components/alert/alert.types.d.ts +48 -0
- package/dist/components/alert/components/alert.actions.d.ts +5 -0
- package/dist/components/alert/components/alert.description.d.ts +5 -0
- package/dist/components/alert/components/alert.dismiss-button.d.ts +5 -0
- package/dist/components/alert/components/alert.root.d.ts +18 -0
- package/dist/components/alert/components/alert.title.d.ts +5 -0
- package/dist/components/alert/index.d.ts +2 -0
- package/dist/components/avatar/avatar.d.ts +5 -0
- package/dist/components/avatar/avatar.recipe.d.ts +19 -0
- package/dist/components/avatar/avatar.slots.d.ts +3 -0
- package/dist/{avatar.d.ts → components/avatar/avatar.types.d.ts} +42 -63
- package/dist/components/avatar/index.d.ts +2 -0
- package/dist/components/badge/badge.d.ts +12 -0
- package/dist/components/badge/badge.recipe.d.ts +41 -0
- package/dist/components/badge/badge.slots.d.ts +3 -0
- package/dist/components/badge/badge.types.d.ts +24 -0
- package/dist/components/badge/index.d.ts +2 -0
- package/dist/{box.d.ts → components/box/box.d.ts} +16 -30
- package/dist/components/box/index.d.ts +1 -0
- package/dist/components/button/button.d.ts +12 -0
- package/dist/components/button/button.recipe.d.ts +107 -0
- package/dist/components/button/button.slots.d.ts +11 -0
- package/dist/components/button/button.types.d.ts +36 -0
- package/dist/components/button/index.d.ts +2 -0
- package/dist/components/calendar/calendar.d.ts +10 -0
- package/dist/components/calendar/calendar.recipe.d.ts +1 -0
- package/dist/components/calendar/calendar.slots.d.ts +11 -0
- package/dist/components/calendar/calendar.types.d.ts +16 -0
- package/dist/components/calendar/components/calendar.custom-context.d.ts +3 -0
- package/dist/components/calendar/components/calendar.grids.d.ts +1 -0
- package/dist/components/calendar/components/calendar.header.d.ts +1 -0
- package/dist/components/calendar/index.d.ts +2 -0
- package/dist/components/calendar.es.js +1 -1
- package/dist/components/card/card.d.ts +18 -0
- package/dist/components/card/card.recipe.d.ts +52 -0
- package/dist/components/card/card.slots.d.ts +12 -0
- package/dist/components/card/card.types.d.ts +28 -0
- package/dist/components/card/components/card.content.d.ts +5 -0
- package/dist/components/card/components/card.header.d.ts +5 -0
- package/dist/components/card/components/card.root.d.ts +18 -0
- package/dist/components/card/index.d.ts +2 -0
- package/dist/components/checkbox/checkbox.d.ts +12 -0
- package/dist/components/checkbox/checkbox.recipe.d.ts +27 -0
- package/dist/components/checkbox/checkbox.slots.d.ts +5 -0
- package/dist/components/checkbox/checkbox.types.d.ts +24 -0
- package/dist/components/checkbox/index.d.ts +2 -0
- package/dist/components/code/code.d.ts +10 -0
- package/dist/components/code/code.recipe.d.ts +48 -0
- package/dist/components/code/index.d.ts +1 -0
- package/dist/components/collapsible-motion/collapsible-motion.d.ts +10 -0
- package/dist/components/collapsible-motion/collapsible-motion.recipe.d.ts +1 -0
- package/dist/components/collapsible-motion/collapsible-motion.slots.d.ts +5 -0
- package/dist/components/collapsible-motion/collapsible-motion.types.d.ts +59 -0
- package/dist/components/collapsible-motion/components/collapsible-motion-content.d.ts +9 -0
- package/dist/components/collapsible-motion/components/collapsible-motion-context.d.ts +9 -0
- package/dist/components/collapsible-motion/components/collapsible-motion-root.d.ts +8 -0
- package/dist/components/collapsible-motion/components/collapsible-motion-trigger.d.ts +10 -0
- package/dist/components/collapsible-motion/index.d.ts +2 -0
- package/dist/components/combobox/combobox.d.ts +18 -0
- package/dist/components/combobox/combobox.recipe.d.ts +96 -0
- package/dist/components/combobox/combobox.slots.d.ts +27 -0
- package/dist/components/combobox/combobox.types.d.ts +152 -0
- package/dist/components/combobox/components/combobox.leading-element.d.ts +11 -0
- package/dist/components/combobox/components/combobox.multi-select-button-group.d.ts +2 -0
- package/dist/components/combobox/components/combobox.multi-select-root.d.ts +2 -0
- package/dist/components/combobox/components/combobox.multi-select-tag-group.d.ts +2 -0
- package/dist/components/combobox/components/combobox.option-group.d.ts +6 -0
- package/dist/components/combobox/components/combobox.option.d.ts +5 -0
- package/dist/components/combobox/components/combobox.options.d.ts +5 -0
- package/dist/components/combobox/components/combobox.root.d.ts +12 -0
- package/dist/components/combobox/components/combobox.single-select-button-group.d.ts +2 -0
- package/dist/components/combobox/components/combobox.single-select-input.d.ts +2 -0
- package/dist/components/combobox/components/combobox.single-select-root.d.ts +2 -0
- package/dist/components/combobox/index.d.ts +2 -0
- package/dist/components/data-table/components/data-table.body.d.ts +5 -0
- package/dist/components/data-table/components/data-table.cell.d.ts +2 -0
- package/dist/components/data-table/components/data-table.column.d.ts +2 -0
- package/dist/components/data-table/components/data-table.context.d.ts +3 -0
- package/dist/components/data-table/components/data-table.footer.d.ts +11 -0
- package/dist/components/data-table/components/data-table.header.d.ts +5 -0
- package/dist/components/data-table/components/data-table.root.d.ts +5 -0
- package/dist/components/data-table/components/data-table.row.d.ts +5 -0
- package/dist/components/data-table/components/data-table.table.d.ts +5 -0
- package/dist/components/data-table/data-table.d.ts +52 -0
- package/dist/components/data-table/data-table.recipe.d.ts +32 -0
- package/dist/components/data-table/data-table.slots.d.ts +21 -0
- package/dist/components/data-table/data-table.types.d.ts +154 -0
- package/dist/components/data-table/index.d.ts +2 -0
- package/dist/components/data-table/test-data.d.ts +58 -0
- package/dist/components/data-table/utils/rows.utils.d.ts +4 -0
- package/dist/components/date-input/date-input.d.ts +12 -0
- package/dist/components/date-input/date-input.recipe.d.ts +71 -0
- package/dist/components/date-input/date-input.slots.d.ts +18 -0
- package/dist/components/date-input/date-input.types.d.ts +20 -0
- package/dist/components/date-input/index.d.ts +2 -0
- package/dist/components/date-input.es.js +1 -1
- package/dist/components/date-picker/components/date-picker.custom-context.d.ts +3 -0
- package/dist/components/date-picker/components/date-picker.time-input.d.ts +2 -0
- package/dist/components/date-picker/date-picker.d.ts +12 -0
- package/dist/components/date-picker/date-picker.i18n.d.ts +33 -0
- package/dist/components/date-picker/date-picker.recipe.d.ts +14 -0
- package/dist/components/date-picker/date-picker.slots.d.ts +30 -0
- package/dist/components/date-picker/date-picker.types.d.ts +43 -0
- package/dist/components/date-picker/index.d.ts +2 -0
- package/dist/components/date-picker.es.js +1 -1
- package/dist/components/date-range-picker/components/date-range-picker.custom-context.d.ts +4 -0
- package/dist/components/date-range-picker/components/date-range-picker.time-input.d.ts +2 -0
- package/dist/components/date-range-picker/date-range-picker.d.ts +11 -0
- package/dist/components/date-range-picker/date-range-picker.recipe.d.ts +34 -0
- package/dist/components/date-range-picker/date-range-picker.slots.d.ts +36 -0
- package/dist/components/date-range-picker/date-range-picker.types.d.ts +44 -0
- package/dist/components/date-range-picker/index.d.ts +2 -0
- package/dist/components/date-range-picker.es.js +1 -1
- package/dist/components/dialog/components/dialog.body.d.ts +5 -0
- package/dist/components/dialog/components/dialog.close-trigger.d.ts +5 -0
- package/dist/components/dialog/components/dialog.content.d.ts +5 -0
- package/dist/components/dialog/components/dialog.context.d.ts +19 -0
- package/dist/components/dialog/components/dialog.footer.d.ts +5 -0
- package/dist/components/dialog/components/dialog.header.d.ts +5 -0
- package/dist/components/dialog/components/dialog.root.d.ts +5 -0
- package/dist/components/dialog/components/dialog.title.d.ts +5 -0
- package/dist/components/dialog/components/dialog.trigger.d.ts +5 -0
- package/dist/components/dialog/components/index.d.ts +8 -0
- package/dist/components/dialog/dialog.d.ts +229 -0
- package/dist/components/dialog/dialog.i18n.d.ts +7 -0
- package/dist/components/dialog/dialog.recipe.d.ts +54 -0
- package/dist/components/dialog/dialog.slots.d.ts +28 -0
- package/dist/components/dialog/dialog.types.d.ts +189 -0
- package/dist/components/dialog/index.d.ts +2 -0
- package/dist/components/draggable-list/components/draggable-list.field.d.ts +2 -0
- package/dist/components/draggable-list/components/draggable-list.item.d.ts +2 -0
- package/dist/components/draggable-list/components/draggable-list.root.d.ts +2 -0
- package/dist/components/draggable-list/draggable-list.d.ts +107 -0
- package/dist/components/draggable-list/draggable-list.i18n.d.ts +12 -0
- package/dist/components/draggable-list/draggable-list.recipe.d.ts +14 -0
- package/dist/components/draggable-list/draggable-list.slots.d.ts +6 -0
- package/dist/components/draggable-list/draggable-list.types.d.ts +141 -0
- package/dist/components/draggable-list/index.d.ts +2 -0
- package/dist/components/draggable-list/utils/draggable-list.test-data.d.ts +3 -0
- package/dist/components/draggable-list/utils/draggable-list.test-utils.d.ts +1 -0
- package/dist/components/drawer/components/drawer.body.d.ts +5 -0
- package/dist/components/drawer/components/drawer.close-trigger.d.ts +5 -0
- package/dist/components/drawer/components/drawer.content.d.ts +5 -0
- package/dist/components/drawer/components/drawer.context.d.ts +19 -0
- package/dist/components/drawer/components/drawer.footer.d.ts +5 -0
- package/dist/components/drawer/components/drawer.header.d.ts +5 -0
- package/dist/components/drawer/components/drawer.root.d.ts +5 -0
- package/dist/components/drawer/components/drawer.title.d.ts +5 -0
- package/dist/components/drawer/components/drawer.trigger.d.ts +5 -0
- package/dist/components/drawer/components/index.d.ts +8 -0
- package/dist/components/drawer/drawer.d.ts +228 -0
- package/dist/components/drawer/drawer.i18n.d.ts +7 -0
- package/dist/components/drawer/drawer.recipe.d.ts +98 -0
- package/dist/components/drawer/drawer.slots.d.ts +21 -0
- package/dist/components/drawer/drawer.types.d.ts +175 -0
- package/dist/components/drawer/index.d.ts +3 -0
- package/dist/components/field-errors/field-errors.d.ts +34 -0
- package/dist/components/field-errors/field-errors.i18n.d.ts +77 -0
- package/dist/components/field-errors/field-errors.recipe.d.ts +1 -0
- package/dist/components/field-errors/field-errors.slots.d.ts +6 -0
- package/dist/{field-errors.d.ts → components/field-errors/field-errors.types.d.ts} +95 -144
- package/dist/components/field-errors/index.d.ts +3 -0
- package/dist/components/flex/flex.d.ts +8 -0
- package/dist/components/flex/index.d.ts +1 -0
- package/dist/components/form-field/components/form-field.context.d.ts +22 -0
- package/dist/components/form-field/components/form-field.description.d.ts +2 -0
- package/dist/components/form-field/components/form-field.error.d.ts +2 -0
- package/dist/components/form-field/components/form-field.info-box.d.ts +9 -0
- package/dist/components/form-field/components/form-field.input.d.ts +2 -0
- package/dist/components/form-field/components/form-field.label.d.ts +2 -0
- package/dist/components/form-field/components/form-field.root.d.ts +9 -0
- package/dist/components/form-field/form-field.d.ts +17 -0
- package/dist/components/form-field/form-field.recipe.d.ts +49 -0
- package/dist/components/form-field/form-field.slots.d.ts +15 -0
- package/dist/components/form-field/form-field.types.d.ts +54 -0
- package/dist/components/form-field/index.d.ts +2 -0
- package/dist/components/grid/grid.d.ts +18 -0
- package/dist/components/grid/index.d.ts +1 -0
- package/dist/components/group/group.d.ts +2 -0
- package/dist/components/group/group.recipe.d.ts +5 -0
- package/dist/components/group/group.slots.d.ts +8 -0
- package/dist/components/group/group.types.d.ts +17 -0
- package/dist/components/group/index.d.ts +2 -0
- package/dist/{heading.d.ts → components/heading/heading.d.ts} +41 -55
- package/dist/components/heading/heading.recipe.d.ts +37 -0
- package/dist/components/heading/index.d.ts +1 -0
- package/dist/components/icon/icon.d.ts +12 -0
- package/dist/components/icon/icon.recipe.d.ts +29 -0
- package/dist/components/icon/icon.slots.d.ts +7 -0
- package/dist/components/icon/icon.types.d.ts +29 -0
- package/dist/components/icon/index.d.ts +2 -0
- package/dist/components/icon-button/icon-button.d.ts +12 -0
- package/dist/components/icon-button/icon-button.types.d.ts +11 -0
- package/dist/components/icon-button/index.d.ts +2 -0
- package/dist/components/icon-toggle-button/icon-toggle-button.d.ts +12 -0
- package/dist/components/icon-toggle-button/icon-toggle-button.types.d.ts +11 -0
- package/dist/components/icon-toggle-button/index.d.ts +2 -0
- package/dist/components/image/image.d.ts +13 -0
- package/dist/components/image/index.d.ts +1 -0
- package/dist/components/index.d.ts +65 -0
- package/dist/components/inline-svg/constants/index.d.ts +1 -0
- package/dist/{constants.d.ts → components/inline-svg/constants/sanitization.constants.d.ts} +8 -20
- package/dist/components/inline-svg/hooks/index.d.ts +1 -0
- package/dist/{hooks.d.ts → components/inline-svg/hooks/use-inline-svg.d.ts} +10 -21
- package/dist/components/inline-svg/index.d.ts +2 -0
- package/dist/components/inline-svg/inline-svg.d.ts +23 -0
- package/dist/components/inline-svg/inline-svg.slots.d.ts +22 -0
- package/dist/components/inline-svg/inline-svg.types.d.ts +12 -0
- package/dist/components/inline-svg/utils/index.d.ts +1 -0
- package/dist/{utils.d.ts → components/inline-svg/utils/sanitize-svg.d.ts} +32 -44
- package/dist/components/kbd/index.d.ts +1 -0
- package/dist/components/kbd/kbd.d.ts +15 -0
- package/dist/components/kbd/kbd.recipe.d.ts +1 -0
- package/dist/components/kbd/kbd.slots.d.ts +19 -0
- package/dist/components/link/index.d.ts +2 -0
- package/dist/components/link/link.d.ts +12 -0
- package/dist/components/link/link.recipe.d.ts +28 -0
- package/dist/components/link/link.slots.d.ts +8 -0
- package/dist/components/link/link.types.d.ts +27 -0
- package/dist/components/list/index.d.ts +1 -0
- package/dist/components/list/list.d.ts +18 -0
- package/dist/components/list/list.recipe.d.ts +38 -0
- package/dist/components/loading-spinner/index.d.ts +2 -0
- package/dist/components/loading-spinner/loading-spinner.d.ts +12 -0
- package/dist/components/loading-spinner/loading-spinner.i18n.d.ts +8 -0
- package/dist/components/loading-spinner/loading-spinner.recipe.d.ts +36 -0
- package/dist/components/loading-spinner/loading-spinner.slots.d.ts +6 -0
- package/dist/components/loading-spinner/loading-spinner.types.d.ts +24 -0
- package/dist/components/localized-field/components/localized-field.locale-field.d.ts +2 -0
- package/dist/components/localized-field/components/localized-field.root.d.ts +2 -0
- package/dist/components/localized-field/index.d.ts +2 -0
- package/dist/components/localized-field/localized-field.d.ts +17 -0
- package/dist/components/localized-field/localized-field.i18n.d.ts +33 -0
- package/dist/components/localized-field/localized-field.recipe.d.ts +22 -0
- package/dist/components/localized-field/localized-field.slots.d.ts +19 -0
- package/dist/components/localized-field/localized-field.types.d.ts +188 -0
- package/dist/components/localized-field/utils/localized-field.story-component.d.ts +39 -0
- package/dist/components/localized-field/utils/localized-field.utils.d.ts +34 -0
- package/dist/components/localized-field/utils/test-data.d.ts +340 -0
- package/dist/components/localized-field/utils/test-utils.d.ts +22 -0
- package/dist/components/menu/components/menu.content.d.ts +5 -0
- package/dist/components/menu/components/menu.context.d.ts +5 -0
- package/dist/components/menu/components/menu.item.d.ts +5 -0
- package/dist/components/menu/components/menu.root.d.ts +5 -0
- package/dist/components/menu/components/menu.section-context.d.ts +5 -0
- package/dist/components/menu/components/menu.section-label.d.ts +8 -0
- package/dist/components/menu/components/menu.section.d.ts +5 -0
- package/dist/components/menu/components/menu.submenu-trigger.d.ts +5 -0
- package/dist/components/menu/components/menu.submenu.d.ts +5 -0
- package/dist/components/menu/components/menu.trigger.d.ts +5 -0
- package/dist/components/menu/index.d.ts +2 -0
- package/dist/components/menu/menu.d.ts +39 -0
- package/dist/components/menu/menu.recipe.d.ts +5 -0
- package/dist/components/menu/menu.slots.d.ts +10 -0
- package/dist/components/menu/menu.types.d.ts +62 -0
- package/dist/components/money-input/index.d.ts +2 -0
- package/dist/components/money-input/money-input.d.ts +77 -0
- package/dist/components/money-input/money-input.i18n.d.ts +18 -0
- package/dist/components/money-input/money-input.recipe.d.ts +40 -0
- package/dist/components/money-input/money-input.slots.d.ts +8 -0
- package/dist/components/money-input/money-input.types.d.ts +102 -0
- package/dist/{money-input.d.ts → components/money-input/utils/currencies.d.ts} +666 -879
- package/dist/components/money-input/utils/index.d.ts +2 -0
- package/dist/components/money-input/utils/parsing-utilities.d.ts +22 -0
- package/dist/components/money-input/utils/static-methods.d.ts +6 -0
- package/dist/components/multiline-text-input/hooks/index.d.ts +1 -0
- package/dist/components/multiline-text-input/hooks/use-autogrow.d.ts +16 -0
- package/dist/components/multiline-text-input/index.d.ts +2 -0
- package/dist/components/multiline-text-input/multiline-text-input.d.ts +12 -0
- package/dist/components/multiline-text-input/multiline-text-input.recipe.d.ts +64 -0
- package/dist/components/multiline-text-input/multiline-text-input.slots.d.ts +16 -0
- package/dist/components/multiline-text-input/multiline-text-input.types.d.ts +42 -0
- package/dist/components/nimbus-provider/components/nimbus-provider.color-mode-provider.d.ts +2 -0
- package/dist/components/nimbus-provider/index.d.ts +2 -0
- package/dist/components/nimbus-provider/nimbus-provider.d.ts +9 -0
- package/dist/{nimbus-provider.d.ts → components/nimbus-provider/nimbus-provider.types.d.ts} +92 -119
- package/dist/components/number-input/index.d.ts +2 -0
- package/dist/components/number-input/number-input.d.ts +11 -0
- package/dist/components/number-input/number-input.i18n.d.ts +13 -0
- package/dist/components/number-input/number-input.recipe.d.ts +113 -0
- package/dist/components/number-input/number-input.slots.d.ts +42 -0
- package/dist/components/number-input/number-input.types.d.ts +40 -0
- package/dist/components/pagination/hooks/use-pagination.d.ts +72 -0
- package/dist/components/pagination/index.d.ts +2 -0
- package/dist/components/pagination/pagination.d.ts +13 -0
- package/dist/{pagination.d.ts → components/pagination/pagination.types.d.ts} +44 -70
- package/dist/components/password-input/index.d.ts +2 -0
- package/dist/components/password-input/password-input.d.ts +12 -0
- package/dist/components/password-input/password-input.i18n.d.ts +13 -0
- package/dist/components/password-input/password-input.types.d.ts +2 -0
- package/dist/components/popover/index.d.ts +2 -0
- package/dist/components/popover/popover.d.ts +12 -0
- package/dist/components/popover/popover.recipe.d.ts +5 -0
- package/dist/components/popover/popover.slots.d.ts +4 -0
- package/dist/components/popover/popover.types.d.ts +6 -0
- package/dist/components/progress-bar/index.d.ts +2 -0
- package/dist/components/progress-bar/progress-bar.d.ts +22 -0
- package/dist/components/progress-bar/progress-bar.recipe.d.ts +91 -0
- package/dist/components/progress-bar/progress-bar.slots.d.ts +20 -0
- package/dist/components/progress-bar/progress-bar.types.d.ts +53 -0
- package/dist/components/radio-input/components/radio-input.option.d.ts +5 -0
- package/dist/components/radio-input/components/radio-input.root.d.ts +12 -0
- package/dist/components/radio-input/index.d.ts +2 -0
- package/dist/components/radio-input/radio-input.d.ts +13 -0
- package/dist/components/radio-input/radio-input.recipe.d.ts +21 -0
- package/dist/components/radio-input/radio-input.slots.d.ts +6 -0
- package/dist/components/radio-input/radio-input.types.d.ts +18 -0
- package/dist/components/range-calendar/components/range-calendar.custom-context.d.ts +3 -0
- package/dist/components/range-calendar/components/range-calendar.grids.d.ts +1 -0
- package/dist/components/range-calendar/components/range-calendar.header.d.ts +1 -0
- package/dist/components/range-calendar/index.d.ts +2 -0
- package/dist/components/range-calendar/range-calendar.d.ts +3 -0
- package/dist/components/range-calendar/range-calendar.recipe.d.ts +1 -0
- package/dist/components/range-calendar/range-calendar.slots.d.ts +11 -0
- package/dist/components/range-calendar/range-calendar.types.d.ts +20 -0
- package/dist/components/range-calendar.es.js +1 -1
- package/dist/components/rich-text-input/components/formatting-menu.d.ts +4 -0
- package/dist/components/rich-text-input/components/rich-text-editor.d.ts +25 -0
- package/dist/components/rich-text-input/components/rich-text-toolbar.d.ts +7 -0
- package/dist/components/rich-text-input/constants/editor-constants.d.ts +65 -0
- package/dist/components/rich-text-input/constants/index.d.ts +2 -0
- package/dist/components/rich-text-input/constants/text-styles.d.ts +32 -0
- package/dist/components/rich-text-input/hooks/index.d.ts +4 -0
- package/dist/components/rich-text-input/hooks/use-formatting-state.d.ts +10 -0
- package/dist/components/rich-text-input/hooks/use-keyboard-shortcuts.d.ts +7 -0
- package/dist/components/rich-text-input/hooks/use-preserved-selection.d.ts +11 -0
- package/dist/components/rich-text-input/hooks/use-toolbar-state.d.ts +15 -0
- package/dist/components/rich-text-input/index.d.ts +2 -0
- package/dist/components/rich-text-input/rich-text-input.d.ts +8 -0
- package/dist/components/rich-text-input/rich-text-input.recipe.d.ts +1 -0
- package/dist/components/rich-text-input/rich-text-input.slots.d.ts +5 -0
- package/dist/components/rich-text-input/rich-text-input.types.d.ts +54 -0
- package/dist/components/rich-text-input/utils/html-serialization.d.ts +4 -0
- package/dist/components/rich-text-input/utils/index.d.ts +5 -0
- package/dist/components/rich-text-input/utils/is-empty.d.ts +4 -0
- package/dist/components/rich-text-input/utils/slate-helpers.d.ts +19 -0
- package/dist/components/rich-text-input/utils/text-style-utils.d.ts +33 -0
- package/dist/components/rich-text-input/utils/types.d.ts +28 -0
- package/dist/components/scoped-search-input/index.d.ts +2 -0
- package/dist/components/scoped-search-input/scoped-search-input.d.ts +6 -0
- package/dist/components/scoped-search-input/scoped-search-input.i18n.d.ts +23 -0
- package/dist/components/scoped-search-input/scoped-search-input.recipe.d.ts +6 -0
- package/dist/components/scoped-search-input/scoped-search-input.slots.d.ts +6 -0
- package/dist/{scoped-search-input.d.ts → components/scoped-search-input/scoped-search-input.types.d.ts} +72 -94
- package/dist/components/scoped-search-input/utils/helpers.d.ts +5 -0
- package/dist/components/search-input/index.d.ts +2 -0
- package/dist/components/search-input/search-input.d.ts +11 -0
- package/dist/components/search-input/search-input.i18n.d.ts +8 -0
- package/dist/components/search-input/search-input.recipe.d.ts +44 -0
- package/dist/components/search-input/search-input.slots.d.ts +12 -0
- package/dist/components/search-input/search-input.types.d.ts +28 -0
- package/dist/components/select/components/select.clear-button.d.ts +4 -0
- package/dist/components/select/components/select.option-group.d.ts +7 -0
- package/dist/components/select/components/select.option.d.ts +5 -0
- package/dist/components/select/components/select.options.d.ts +7 -0
- package/dist/components/select/components/select.root.d.ts +12 -0
- package/dist/components/select/index.d.ts +2 -0
- package/dist/components/select/select.d.ts +135 -0
- package/dist/components/select/select.i18n.d.ts +8 -0
- package/dist/components/select/select.recipe.d.ts +69 -0
- package/dist/components/select/select.slots.d.ts +16 -0
- package/dist/components/select/select.types.d.ts +59 -0
- package/dist/components/separator/index.d.ts +2 -0
- package/dist/components/separator/separator.d.ts +19 -0
- package/dist/components/separator/separator.recipe.d.ts +16 -0
- package/dist/components/separator/separator.slots.d.ts +3 -0
- package/dist/components/separator/separator.types.d.ts +14 -0
- package/dist/components/simple-grid/index.d.ts +1 -0
- package/dist/components/simple-grid/simple-grid.d.ts +18 -0
- package/dist/components/spacer/index.d.ts +2 -0
- package/dist/components/spacer/spacer.d.ts +17 -0
- package/dist/components/spacer/spacer.types.d.ts +11 -0
- package/dist/components/split-button/index.d.ts +2 -0
- package/dist/components/split-button/split-button.d.ts +18 -0
- package/dist/components/split-button/split-button.recipe.d.ts +21 -0
- package/dist/components/split-button/split-button.slots.d.ts +6 -0
- package/dist/components/split-button/split-button.types.d.ts +26 -0
- package/dist/components/stack/index.d.ts +1 -0
- package/dist/components/stack/stack.d.ts +16 -0
- package/dist/components/switch/index.d.ts +2 -0
- package/dist/components/switch/switch.d.ts +12 -0
- package/dist/components/switch/switch.recipe.d.ts +32 -0
- package/dist/components/switch/switch.slots.d.ts +6 -0
- package/dist/components/switch/switch.types.d.ts +19 -0
- package/dist/components/table/index.d.ts +1 -0
- package/dist/components/table/table.d.ts +8 -0
- package/dist/components/table/table.recipe.d.ts +121 -0
- package/dist/components/tabs/components/tabs.list.d.ts +10 -0
- package/dist/components/tabs/components/tabs.panel.d.ts +7 -0
- package/dist/components/tabs/components/tabs.panels.d.ts +10 -0
- package/dist/components/tabs/components/tabs.root.d.ts +12 -0
- package/dist/components/tabs/components/tabs.tab.d.ts +10 -0
- package/dist/components/tabs/index.d.ts +2 -0
- package/dist/components/tabs/tabs.d.ts +31 -0
- package/dist/components/tabs/tabs.recipe.d.ts +67 -0
- package/dist/components/tabs/tabs.slots.d.ts +58 -0
- package/dist/components/tabs/tabs.types.d.ts +112 -0
- package/dist/components/tag-group/components/tag-group.root.d.ts +9 -0
- package/dist/components/tag-group/components/tag-group.tag-list.d.ts +6 -0
- package/dist/components/tag-group/components/tag-group.tag.d.ts +2 -0
- package/dist/components/tag-group/index.d.ts +2 -0
- package/dist/components/tag-group/tag-group.d.ts +14 -0
- package/dist/components/tag-group/tag-group.recipe.d.ts +29 -0
- package/dist/components/tag-group/tag-group.slots.d.ts +7 -0
- package/dist/components/tag-group/tag-group.types.d.ts +27 -0
- package/dist/components/text/index.d.ts +1 -0
- package/dist/components/text/text.d.ts +16 -0
- package/dist/components/text-input/index.d.ts +2 -0
- package/dist/components/text-input/text-input.d.ts +12 -0
- package/dist/components/text-input/text-input.recipe.d.ts +54 -0
- package/dist/components/text-input/text-input.slots.d.ts +13 -0
- package/dist/components/text-input/text-input.types.d.ts +39 -0
- package/dist/components/time-input/index.d.ts +2 -0
- package/dist/components/time-input/time-input.d.ts +10 -0
- package/dist/components/time-input/time-input.recipe.d.ts +67 -0
- package/dist/components/time-input/time-input.slots.d.ts +24 -0
- package/dist/components/time-input/time-input.types.d.ts +21 -0
- package/dist/components/time-input.es.js +1 -1
- package/dist/components/toggle-button/index.d.ts +2 -0
- package/dist/components/toggle-button/toggle-button.d.ts +13 -0
- package/dist/components/toggle-button/toggle-button.recipe.d.ts +95 -0
- package/dist/components/toggle-button/toggle-button.slots.d.ts +17 -0
- package/dist/components/toggle-button/toggle-button.types.d.ts +28 -0
- package/dist/components/toggle-button-group/components/toggle-button-group.button.d.ts +2 -0
- package/dist/components/toggle-button-group/components/toggle-button-group.root.d.ts +9 -0
- package/dist/components/toggle-button-group/index.d.ts +2 -0
- package/dist/components/toggle-button-group/toggle-button-group.d.ts +12 -0
- package/dist/components/toggle-button-group/toggle-button-group.recipe.d.ts +54 -0
- package/dist/components/toggle-button-group/toggle-button-group.slots.d.ts +3 -0
- package/dist/components/toggle-button-group/toggle-button-group.types.d.ts +32 -0
- package/dist/components/toolbar/index.d.ts +2 -0
- package/dist/components/toolbar/toolbar.d.ts +2 -0
- package/dist/components/toolbar/toolbar.recipe.d.ts +34 -0
- package/dist/components/toolbar/toolbar.slots.d.ts +11 -0
- package/dist/components/toolbar/toolbar.types.d.ts +20 -0
- package/dist/components/tooltip/components/tooltip.content.d.ts +21 -0
- package/dist/components/tooltip/components/tooltip.root.d.ts +12 -0
- package/dist/components/tooltip/index.d.ts +3 -0
- package/dist/components/tooltip/make-element-focusable.d.ts +32 -0
- package/dist/components/tooltip/tooltip.d.ts +7 -0
- package/dist/components/tooltip/tooltip.recipe.d.ts +5 -0
- package/dist/components/tooltip/tooltip.slots.d.ts +7 -0
- package/dist/components/tooltip/tooltip.types.d.ts +9 -0
- package/dist/components/visually-hidden/index.d.ts +1 -0
- package/dist/components/visually-hidden/visually-hidden.d.ts +17 -0
- package/dist/hooks/index.d.ts +5 -0
- package/dist/hooks/use-color-mode/index.d.ts +1 -0
- package/dist/hooks/use-color-mode/use-color-mode.d.ts +31 -0
- package/dist/hooks/use-color-mode-value/index.d.ts +1 -0
- package/dist/hooks/use-color-mode-value/use-color-mode-value.d.ts +10 -0
- package/dist/hooks/use-color-scheme/index.d.ts +1 -0
- package/dist/hooks/use-color-scheme/use-color-scheme.d.ts +15 -0
- package/dist/hooks/use-copy-to-clipboard/index.d.ts +1 -0
- package/dist/hooks/use-copy-to-clipboard/use-copy-to-clipboard.d.ts +1 -0
- package/dist/hooks/use-hotkeys/index.d.ts +1 -0
- package/dist/hooks/use-hotkeys/use-hotkeys.d.ts +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +4 -347
- package/dist/index.es.js +196 -201
- package/dist/index.es.js.map +1 -1
- package/dist/theme/animation-styles.d.ts +4 -0
- package/dist/theme/breakpoints.d.ts +5 -0
- package/dist/theme/conditions.d.ts +16 -0
- package/dist/theme/global-css.d.ts +1 -0
- package/dist/theme/index.d.ts +1 -0
- package/dist/theme/keyframes.d.ts +207 -0
- package/dist/theme/layer-styles.d.ts +4 -0
- package/dist/theme/recipes/index.d.ts +490 -0
- package/dist/theme/semantic-tokens/colors.d.ts +12478 -0
- package/dist/theme/semantic-tokens/index.d.ts +6262 -0
- package/dist/theme/semantic-tokens/radii.d.ts +1 -0
- package/dist/theme/semantic-tokens/shadows.d.ts +20 -0
- package/dist/theme/slot-recipes/index.d.ts +1489 -0
- package/dist/theme/text-styles.d.ts +4 -0
- package/dist/theme/tokens/animations.d.ts +14 -0
- package/dist/theme/tokens/aspect-ratios.d.ts +20 -0
- package/dist/theme/tokens/blurs.d.ts +26 -0
- package/dist/theme/tokens/borders.d.ts +14 -0
- package/dist/theme/tokens/colors.d.ts +168 -0
- package/dist/theme/tokens/cursor.d.ts +26 -0
- package/dist/theme/tokens/durations.d.ts +29 -0
- package/dist/theme/tokens/easings.d.ts +17 -0
- package/dist/theme/tokens/font-sizes.d.ts +44 -0
- package/dist/theme/tokens/font-weights.d.ts +29 -0
- package/dist/theme/tokens/fonts.d.ts +11 -0
- package/dist/theme/tokens/index.d.ts +1642 -0
- package/dist/theme/tokens/letter-spacings.d.ts +3 -0
- package/dist/theme/tokens/line-heights.d.ts +80 -0
- package/dist/theme/tokens/radii.d.ts +29 -0
- package/dist/theme/tokens/sizes.d.ts +278 -0
- package/dist/theme/tokens/spacing.d.ts +74 -0
- package/dist/theme/tokens/z-index.d.ts +41 -0
- package/dist/type-utils/index.d.ts +2 -0
- package/dist/type-utils/omit-props.d.ts +29 -0
- package/dist/type-utils/slot-types.d.ts +22 -0
- package/dist/utils/extractStyleProps.d.ts +6 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/noop.d.ts +12 -0
- package/package.json +1 -1
- package/dist/accordion.d.ts +0 -135
- package/dist/alert.d.ts +0 -172
- package/dist/badge.d.ts +0 -52
- package/dist/button.d.ts +0 -64
- package/dist/calendar.d.ts +0 -50
- package/dist/card.d.ts +0 -88
- package/dist/checkbox.d.ts +0 -54
- package/dist/chunks/calendar-lD6G93R9.es.js.map +0 -1
- package/dist/chunks/range-calendar-DBpl6y5i.es.js.map +0 -1
- package/dist/code.d.ts +0 -25
- package/dist/collapsible-motion.d.ts +0 -125
- package/dist/combobox.d.ts +0 -236
- package/dist/components.d.ts +0 -299
- package/dist/data-table.d.ts +0 -302
- package/dist/date-input.d.ts +0 -51
- package/dist/date-picker.d.ts +0 -92
- package/dist/date-range-picker.d.ts +0 -73
- package/dist/dialog.d.ts +0 -499
- package/dist/draggable-list.d.ts +0 -331
- package/dist/drawer.d.ts +0 -590
- package/dist/flex.d.ts +0 -14
- package/dist/form-field.d.ts +0 -118
- package/dist/grid.d.ts +0 -35
- package/dist/group.d.ts +0 -38
- package/dist/icon-button.d.ts +0 -75
- package/dist/icon-toggle-button.d.ts +0 -67
- package/dist/icon.d.ts +0 -58
- package/dist/image.d.ts +0 -28
- package/dist/inline-svg.d.ts +0 -81
- package/dist/kbd.d.ts +0 -29
- package/dist/link.d.ts +0 -56
- package/dist/list.d.ts +0 -35
- package/dist/loading-spinner.d.ts +0 -53
- package/dist/localized-field.d.ts +0 -935
- package/dist/multiline-text-input.d.ts +0 -73
- package/dist/number-input.d.ts +0 -63
- package/dist/password-input.d.ts +0 -65
- package/dist/popover.d.ts +0 -34
- package/dist/progress-bar.d.ts +0 -96
- package/dist/radio-input.d.ts +0 -67
- package/dist/range-calendar.d.ts +0 -47
- package/dist/rich-text-input.d.ts +0 -82
- package/dist/search-input.d.ts +0 -56
- package/dist/select.d.ts +0 -246
- package/dist/separator.d.ts +0 -49
- package/dist/setup-jsdom-polyfills.d.ts +0 -10
- package/dist/simple-grid.d.ts +0 -35
- package/dist/spacer.d.ts +0 -41
- package/dist/split-button.d.ts +0 -99
- package/dist/stack.d.ts +0 -30
- package/dist/switch.d.ts +0 -44
- package/dist/table.d.ts +0 -14
- package/dist/tabs.d.ts +0 -213
- package/dist/tag-group.d.ts +0 -75
- package/dist/text-input.d.ts +0 -69
- package/dist/text.d.ts +0 -31
- package/dist/time-input.d.ts +0 -51
- package/dist/toggle-button-group.d.ts +0 -76
- package/dist/toggle-button.d.ts +0 -57
- package/dist/toolbar.d.ts +0 -40
- package/dist/tooltip.d.ts +0 -131
- package/dist/visually-hidden.d.ts +0 -31
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"separator-CvRn_J0r.cjs.js","sources":["../../src/components/separator/separator.slots.tsx","../../src/components/separator/separator.tsx"],"sourcesContent":["import { createRecipeContext } from \"@chakra-ui/react\";\nimport type {
|
|
1
|
+
{"version":3,"file":"separator-CvRn_J0r.cjs.js","sources":["../../src/components/separator/separator.slots.tsx","../../src/components/separator/separator.tsx"],"sourcesContent":["import { createRecipeContext } from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type { SeparatorRootSlotProps } from \"./separator.types\";\n\nconst { withContext } = createRecipeContext({ key: \"separator\" });\n\nexport const SeparatorRoot: SlotComponent<\n HTMLDivElement,\n SeparatorRootSlotProps\n> = withContext<HTMLDivElement, SeparatorRootSlotProps>(\"div\");\n","import { Separator as RaSeparator } from \"react-aria-components\";\nimport { useRecipe } from \"@chakra-ui/react\";\nimport { SeparatorRoot } from \"./separator.slots\";\nimport type { SeparatorProps } from \"./separator.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport { separatorRecipe } from \"./separator.recipe\";\n\n/**\n * Separator\n * ============================================================\n * A visual separator that divides content sections\n *\n * Features:\n *\n * - allows forwarding refs to the underlying DOM element\n * - accepts all native html 'HTMLDivElement' attributes (including aria- & data-attributes)\n * - supports 'variants', 'orientation', etc. configured in the recipe\n * - allows overriding styles by using style-props\n * - supports 'asChild' and 'as' to modify the underlying html-element (polymorphic)\n * - built with React Aria for accessibility\n */\n\nexport const Separator = ({\n ref: forwardedRef,\n orientation = \"horizontal\",\n ...props\n}: SeparatorProps) => {\n const recipe = useRecipe({ recipe: separatorRecipe });\n const [recipeProps, variantFreeProps] = recipe.splitVariantProps({\n orientation,\n ...props,\n });\n const [styleProps, functionalProps] = extractStyleProps({\n orientation,\n ...variantFreeProps,\n });\n\n return (\n <SeparatorRoot asChild {...recipeProps} {...styleProps}>\n <RaSeparator ref={forwardedRef} {...functionalProps} />\n </SeparatorRoot>\n );\n};\n\nSeparator.displayName = \"Separator\";\n"],"names":["withContext","createRecipeContext","SeparatorRoot","Separator","forwardedRef","orientation","props","recipe","useRecipe","separatorRecipe","recipeProps","variantFreeProps","styleProps","functionalProps","extractStyleProps","jsx","RaSeparator"],"mappings":"+MAIM,CAAE,YAAAA,CAAA,EAAgBC,EAAAA,oBAAoB,CAAE,IAAK,YAAa,EAEnDC,EAGTF,EAAoD,KAAK,ECahDG,EAAY,CAAC,CACxB,IAAKC,EACL,YAAAC,EAAc,aACd,GAAGC,CACL,IAAsB,CACpB,MAAMC,EAASC,EAAAA,UAAU,CAAE,OAAQC,EAAAA,gBAAiB,EAC9C,CAACC,EAAaC,CAAgB,EAAIJ,EAAO,kBAAkB,CAC/D,YAAAF,EACA,GAAGC,CAAA,CACJ,EACK,CAACM,EAAYC,CAAe,EAAIC,oBAAkB,CACtD,YAAAT,EACA,GAAGM,CAAA,CACJ,EAED,OACEI,EAAAA,IAACb,EAAA,CAAc,QAAO,GAAE,GAAGQ,EAAc,GAAGE,EAC1C,SAAAG,EAAAA,IAACC,EAAAA,0CAAA,CAAY,IAAKZ,EAAe,GAAGS,EAAiB,EACvD,CAEJ,EAEAV,EAAU,YAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"separator-DJGUFG-o.es.js","sources":["../../src/components/separator/separator.slots.tsx","../../src/components/separator/separator.tsx"],"sourcesContent":["import { createRecipeContext } from \"@chakra-ui/react\";\nimport type {
|
|
1
|
+
{"version":3,"file":"separator-DJGUFG-o.es.js","sources":["../../src/components/separator/separator.slots.tsx","../../src/components/separator/separator.tsx"],"sourcesContent":["import { createRecipeContext } from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type { SeparatorRootSlotProps } from \"./separator.types\";\n\nconst { withContext } = createRecipeContext({ key: \"separator\" });\n\nexport const SeparatorRoot: SlotComponent<\n HTMLDivElement,\n SeparatorRootSlotProps\n> = withContext<HTMLDivElement, SeparatorRootSlotProps>(\"div\");\n","import { Separator as RaSeparator } from \"react-aria-components\";\nimport { useRecipe } from \"@chakra-ui/react\";\nimport { SeparatorRoot } from \"./separator.slots\";\nimport type { SeparatorProps } from \"./separator.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport { separatorRecipe } from \"./separator.recipe\";\n\n/**\n * Separator\n * ============================================================\n * A visual separator that divides content sections\n *\n * Features:\n *\n * - allows forwarding refs to the underlying DOM element\n * - accepts all native html 'HTMLDivElement' attributes (including aria- & data-attributes)\n * - supports 'variants', 'orientation', etc. configured in the recipe\n * - allows overriding styles by using style-props\n * - supports 'asChild' and 'as' to modify the underlying html-element (polymorphic)\n * - built with React Aria for accessibility\n */\n\nexport const Separator = ({\n ref: forwardedRef,\n orientation = \"horizontal\",\n ...props\n}: SeparatorProps) => {\n const recipe = useRecipe({ recipe: separatorRecipe });\n const [recipeProps, variantFreeProps] = recipe.splitVariantProps({\n orientation,\n ...props,\n });\n const [styleProps, functionalProps] = extractStyleProps({\n orientation,\n ...variantFreeProps,\n });\n\n return (\n <SeparatorRoot asChild {...recipeProps} {...styleProps}>\n <RaSeparator ref={forwardedRef} {...functionalProps} />\n </SeparatorRoot>\n );\n};\n\nSeparator.displayName = \"Separator\";\n"],"names":["withContext","createRecipeContext","SeparatorRoot","Separator","forwardedRef","orientation","props","recipe","useRecipe","separatorRecipe","recipeProps","variantFreeProps","styleProps","functionalProps","extractStyleProps","jsx","RaSeparator"],"mappings":";;;;;AAIA,MAAM,EAAE,aAAAA,EAAA,IAAgB,gBAAAC,EAAoB,EAAE,KAAK,aAAa,GAEnDC,IAGT,gBAAAF,EAAoD,KAAK,GCahDG,IAAY,CAAC;AAAA,EACxB,KAAKC;AAAA,EACL,aAAAC,IAAc;AAAA,EACd,GAAGC;AACL,MAAsB;AACpB,QAAMC,IAASC,EAAU,EAAE,QAAQC,GAAiB,GAC9C,CAACC,GAAaC,CAAgB,IAAIJ,EAAO,kBAAkB;AAAA,IAC/D,aAAAF;AAAA,IACA,GAAGC;AAAA,EAAA,CACJ,GACK,CAACM,GAAYC,CAAe,IAAIC,EAAkB;AAAA,IACtD,aAAAT;AAAA,IACA,GAAGM;AAAA,EAAA,CACJ;AAED,SACE,gBAAAI,EAACb,GAAA,EAAc,SAAO,IAAE,GAAGQ,GAAc,GAAGE,GAC1C,UAAA,gBAAAG,EAACC,GAAA,EAAY,KAAKZ,GAAe,GAAGS,GAAiB,GACvD;AAEJ;AAEAV,EAAU,cAAc;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"split-button-BO52sL7h.cjs.js","sources":["../../src/components/split-button/split-button.slots.tsx","../../src/components/split-button/split-button.tsx"],"sourcesContent":["import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type {\n SplitButtonRootSlotProps,\n SplitButtonButtonGroupSlotProps,\n SplitButtonPrimaryButtonSlotProps,\n SplitButtonTriggerSlotProps,\n} from \"./split-button.types\";\nimport type { SlotComponent } from \"@/utils/slot-types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"splitButton\",\n});\n\n// Root Container\nexport const SplitButtonRootSlot: SlotComponent<\n HTMLDivElement,\n SplitButtonRootSlotProps\n> = withProvider<HTMLDivElement, SplitButtonRootSlotProps>(\"div\", \"root\");\n\n// Button Group Container\nexport const SplitButtonButtonGroupSlot = withContext<\n HTMLDivElement,\n SplitButtonButtonGroupSlotProps\n>(\"div\", \"buttonGroup\");\n\n// Primary Action Button\nexport const SplitButtonPrimaryButtonSlot = withContext<\n HTMLButtonElement,\n SplitButtonPrimaryButtonSlotProps\n>(\"button\", \"primaryButton\");\n\n// Dropdown Trigger Button\nexport const SplitButtonTriggerSlot = withContext<\n HTMLButtonElement,\n SplitButtonTriggerSlotProps\n>(\"button\", \"dropdownTrigger\");\n","import React from \"react\";\nimport { Button } from \"@/components/button\";\nimport { IconButton } from \"@/components/icon-button\";\nimport { Menu } from \"@/components/menu\";\nimport { Icon } from \"@/components/icon\";\nimport type { SplitButtonProps } from \"./split-button.types\";\nimport {\n SplitButtonRootSlot,\n SplitButtonButtonGroupSlot,\n SplitButtonPrimaryButtonSlot,\n SplitButtonTriggerSlot,\n} from \"./split-button.slots\";\nimport { KeyboardArrowDown } from \"@commercetools/nimbus-icons\";\n\n// Re-export types\nexport type * from \"./split-button.types\";\n\n/**\n * # SplitButton\n *\n * A split-button component that combines a primary action button with a dropdown menu.\n *\n * Shows a primary action button + dropdown trigger. The primary button automatically\n * executes the first enabled Menu.Item action, while the dropdown trigger opens a menu\n * with all available options.\n *\n * Use with Menu.Item, Menu.Section, and Separator components for content.\n */\nexport const SplitButton = (props: SplitButtonProps) => {\n const {\n size = \"md\",\n variant = \"solid\",\n tone,\n isDisabled = false,\n \"aria-label\": ariaLabel,\n onAction,\n isOpen,\n defaultOpen,\n onOpenChange,\n icon,\n } = props;\n\n const buttonProps = { size, variant, tone };\n\n /**\n * CORE CONCEPT: In split button mode, we need to populate the primary button\n * with content from a Menu.Item (specified by defaultAction prop).\n *\n * Why this complexity exists:\n * - Users define actions as <Menu.Item id=\"save\">Save Document</Menu.Item>\n * - We need to extract \"Save Document\" text to show on the primary button\n * - Menu.Items can be nested inside Menu.Section components\n * - We need to handle disabled states and fallbacks\n */\n\n // Type guards for safe prop access\n type MenuItemProps = {\n id: string;\n children: React.ReactNode;\n isDisabled?: boolean;\n isCritical?: boolean;\n };\n\n type ComponentWithChildren = {\n children: React.ReactNode;\n };\n\n // Check if element is a Menu.Item with required props\n const isMenuItemWithId = (\n element: React.ReactNode\n ): element is React.ReactElement<MenuItemProps> => {\n if (!React.isValidElement(element) || !element.props) return false;\n const props = element.props as Record<string, unknown>;\n return \"id\" in props && typeof props.id === \"string\";\n };\n\n // Check if element has children prop\n const hasChildren = (\n element: React.ReactNode\n ): element is React.ReactElement<ComponentWithChildren> => {\n if (!React.isValidElement(element) || !element.props) return false;\n const props = element.props as Record<string, unknown>;\n return \"children\" in props;\n };\n\n // All children are menu items\n const menuItems = props.children;\n\n /**\n * Check if there are any actionable (enabled) Menu.Items in the children.\n * This is used to determine if the dropdown trigger should be disabled.\n */\n const hasActionableMenuItems = (children: React.ReactNode): boolean => {\n let hasActionable = false;\n\n React.Children.forEach(children, (child) => {\n if (hasActionable) return;\n\n // Check if this is an enabled Menu.Item\n if (isMenuItemWithId(child) && !child.props.isDisabled) {\n hasActionable = true;\n return;\n }\n\n // Recurse into Menu.Section or any component with children\n if (hasChildren(child)) {\n hasActionable = hasActionableMenuItems(child.props.children);\n }\n });\n\n return hasActionable;\n };\n\n /**\n * Find the primary Menu.Item using the same logic as the original PrimaryActionDropdown.\n * Selects the first enabled Menu.Item, or falls back to the first Menu.Item if all are disabled.\n */\n const findPrimaryMenuItem = () => {\n const allMenuItems: Array<{\n content: React.ReactNode;\n isDisabled: boolean;\n actionId: string | null;\n }> = [];\n\n // Recursively collect all Menu.Items from children (including nested ones)\n const collectMenuItems = (children: React.ReactNode): void => {\n React.Children.forEach(children, (child) => {\n if (isMenuItemWithId(child)) {\n allMenuItems.push({\n content: child.props.children,\n isDisabled: child.props.isDisabled || false,\n actionId: child.props.id,\n });\n }\n\n // Recurse into Menu.Section or any component with children\n if (hasChildren(child)) {\n collectMenuItems(child.props.children);\n }\n });\n };\n\n collectMenuItems(menuItems);\n\n // Find first enabled Menu.Item, or fallback to first Menu.Item\n const primaryMenuItem =\n allMenuItems.find((item) => !item.isDisabled) || allMenuItems[0];\n\n return (\n primaryMenuItem || {\n // TODO: Localize this\n content: \"No actions available\",\n isDisabled: true,\n actionId: null,\n }\n );\n };\n\n // Check if there are any actionable menu items for dropdown functionality\n const hasActionableItems = hasActionableMenuItems(menuItems);\n\n // Get the primary button content using smart selection\n const buttonContent = findPrimaryMenuItem();\n\n const executePrimaryAction = () => {\n if (!buttonContent.isDisabled && buttonContent.actionId && onAction) {\n onAction(buttonContent.actionId);\n }\n };\n\n const isPrimaryDisabled = isDisabled || buttonContent.isDisabled;\n const isDropdownTriggerDisabled = isDisabled || !hasActionableItems;\n\n return (\n <SplitButtonRootSlot variant={variant} data-mode=\"split\">\n <SplitButtonButtonGroupSlot>\n {/* Primary Action Button */}\n <SplitButtonPrimaryButtonSlot asChild>\n <Button\n {...buttonProps}\n isDisabled={isPrimaryDisabled}\n onPress={executePrimaryAction}\n >\n {icon && <Icon>{icon}</Icon>}\n {buttonContent.content}\n </Button>\n </SplitButtonPrimaryButtonSlot>\n\n {/* Menu Trigger and Dropdown */}\n <Menu.Root\n trigger=\"press\"\n isOpen={isOpen}\n defaultOpen={defaultOpen}\n onOpenChange={onOpenChange}\n placement=\"bottom end\"\n selectionMode=\"none\"\n onAction={onAction ? (key) => onAction(String(key)) : undefined}\n >\n <Menu.Trigger asChild>\n <SplitButtonTriggerSlot asChild>\n <IconButton\n {...buttonProps}\n aria-label={ariaLabel}\n isDisabled={isDropdownTriggerDisabled}\n >\n <KeyboardArrowDown />\n </IconButton>\n </SplitButtonTriggerSlot>\n </Menu.Trigger>\n\n <Menu.Content>{menuItems}</Menu.Content>\n </Menu.Root>\n </SplitButtonButtonGroupSlot>\n </SplitButtonRootSlot>\n );\n};\n\nSplitButton.displayName = \"SplitButton\";\n\n// Export for internal use by react-docgen\nexport { SplitButton as _SplitButton };\n"],"names":["withProvider","withContext","createSlotRecipeContext","SplitButtonRootSlot","SplitButtonButtonGroupSlot","SplitButtonPrimaryButtonSlot","SplitButtonTriggerSlot","SplitButton","props","size","variant","tone","isDisabled","ariaLabel","onAction","isOpen","defaultOpen","onOpenChange","icon","buttonProps","isMenuItemWithId","element","React","hasChildren","menuItems","hasActionableMenuItems","children","hasActionable","child","findPrimaryMenuItem","allMenuItems","collectMenuItems","item","hasActionableItems","buttonContent","executePrimaryAction","isPrimaryDisabled","isDropdownTriggerDisabled","jsx","jsxs","Button","Icon","Menu","key","IconButton","KeyboardArrowDown"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"split-button-BO52sL7h.cjs.js","sources":["../../src/components/split-button/split-button.slots.tsx","../../src/components/split-button/split-button.tsx"],"sourcesContent":["import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type {\n SplitButtonRootSlotProps,\n SplitButtonButtonGroupSlotProps,\n SplitButtonPrimaryButtonSlotProps,\n SplitButtonTriggerSlotProps,\n} from \"./split-button.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"splitButton\",\n});\n\n// Root Container\nexport const SplitButtonRootSlot: SlotComponent<\n HTMLDivElement,\n SplitButtonRootSlotProps\n> = withProvider<HTMLDivElement, SplitButtonRootSlotProps>(\"div\", \"root\");\n\n// Button Group Container\nexport const SplitButtonButtonGroupSlot = withContext<\n HTMLDivElement,\n SplitButtonButtonGroupSlotProps\n>(\"div\", \"buttonGroup\");\n\n// Primary Action Button\nexport const SplitButtonPrimaryButtonSlot = withContext<\n HTMLButtonElement,\n SplitButtonPrimaryButtonSlotProps\n>(\"button\", \"primaryButton\");\n\n// Dropdown Trigger Button\nexport const SplitButtonTriggerSlot = withContext<\n HTMLButtonElement,\n SplitButtonTriggerSlotProps\n>(\"button\", \"dropdownTrigger\");\n","import React from \"react\";\nimport { Button } from \"@/components/button\";\nimport { IconButton } from \"@/components/icon-button\";\nimport { Menu } from \"@/components/menu\";\nimport { Icon } from \"@/components/icon\";\nimport type { SplitButtonProps } from \"./split-button.types\";\nimport {\n SplitButtonRootSlot,\n SplitButtonButtonGroupSlot,\n SplitButtonPrimaryButtonSlot,\n SplitButtonTriggerSlot,\n} from \"./split-button.slots\";\nimport { KeyboardArrowDown } from \"@commercetools/nimbus-icons\";\n\n// Re-export types\nexport type * from \"./split-button.types\";\n\n/**\n * # SplitButton\n *\n * A split-button component that combines a primary action button with a dropdown menu.\n *\n * Shows a primary action button + dropdown trigger. The primary button automatically\n * executes the first enabled Menu.Item action, while the dropdown trigger opens a menu\n * with all available options.\n *\n * Use with Menu.Item, Menu.Section, and Separator components for content.\n */\nexport const SplitButton = (props: SplitButtonProps) => {\n const {\n size = \"md\",\n variant = \"solid\",\n tone,\n isDisabled = false,\n \"aria-label\": ariaLabel,\n onAction,\n isOpen,\n defaultOpen,\n onOpenChange,\n icon,\n } = props;\n\n const buttonProps = { size, variant, tone };\n\n /**\n * CORE CONCEPT: In split button mode, we need to populate the primary button\n * with content from a Menu.Item (specified by defaultAction prop).\n *\n * Why this complexity exists:\n * - Users define actions as <Menu.Item id=\"save\">Save Document</Menu.Item>\n * - We need to extract \"Save Document\" text to show on the primary button\n * - Menu.Items can be nested inside Menu.Section components\n * - We need to handle disabled states and fallbacks\n */\n\n // Type guards for safe prop access\n type MenuItemProps = {\n id: string;\n children: React.ReactNode;\n isDisabled?: boolean;\n isCritical?: boolean;\n };\n\n type ComponentWithChildren = {\n children: React.ReactNode;\n };\n\n // Check if element is a Menu.Item with required props\n const isMenuItemWithId = (\n element: React.ReactNode\n ): element is React.ReactElement<MenuItemProps> => {\n if (!React.isValidElement(element) || !element.props) return false;\n const props = element.props as Record<string, unknown>;\n return \"id\" in props && typeof props.id === \"string\";\n };\n\n // Check if element has children prop\n const hasChildren = (\n element: React.ReactNode\n ): element is React.ReactElement<ComponentWithChildren> => {\n if (!React.isValidElement(element) || !element.props) return false;\n const props = element.props as Record<string, unknown>;\n return \"children\" in props;\n };\n\n // All children are menu items\n const menuItems = props.children;\n\n /**\n * Check if there are any actionable (enabled) Menu.Items in the children.\n * This is used to determine if the dropdown trigger should be disabled.\n */\n const hasActionableMenuItems = (children: React.ReactNode): boolean => {\n let hasActionable = false;\n\n React.Children.forEach(children, (child) => {\n if (hasActionable) return;\n\n // Check if this is an enabled Menu.Item\n if (isMenuItemWithId(child) && !child.props.isDisabled) {\n hasActionable = true;\n return;\n }\n\n // Recurse into Menu.Section or any component with children\n if (hasChildren(child)) {\n hasActionable = hasActionableMenuItems(child.props.children);\n }\n });\n\n return hasActionable;\n };\n\n /**\n * Find the primary Menu.Item using the same logic as the original PrimaryActionDropdown.\n * Selects the first enabled Menu.Item, or falls back to the first Menu.Item if all are disabled.\n */\n const findPrimaryMenuItem = () => {\n const allMenuItems: Array<{\n content: React.ReactNode;\n isDisabled: boolean;\n actionId: string | null;\n }> = [];\n\n // Recursively collect all Menu.Items from children (including nested ones)\n const collectMenuItems = (children: React.ReactNode): void => {\n React.Children.forEach(children, (child) => {\n if (isMenuItemWithId(child)) {\n allMenuItems.push({\n content: child.props.children,\n isDisabled: child.props.isDisabled || false,\n actionId: child.props.id,\n });\n }\n\n // Recurse into Menu.Section or any component with children\n if (hasChildren(child)) {\n collectMenuItems(child.props.children);\n }\n });\n };\n\n collectMenuItems(menuItems);\n\n // Find first enabled Menu.Item, or fallback to first Menu.Item\n const primaryMenuItem =\n allMenuItems.find((item) => !item.isDisabled) || allMenuItems[0];\n\n return (\n primaryMenuItem || {\n // TODO: Localize this\n content: \"No actions available\",\n isDisabled: true,\n actionId: null,\n }\n );\n };\n\n // Check if there are any actionable menu items for dropdown functionality\n const hasActionableItems = hasActionableMenuItems(menuItems);\n\n // Get the primary button content using smart selection\n const buttonContent = findPrimaryMenuItem();\n\n const executePrimaryAction = () => {\n if (!buttonContent.isDisabled && buttonContent.actionId && onAction) {\n onAction(buttonContent.actionId);\n }\n };\n\n const isPrimaryDisabled = isDisabled || buttonContent.isDisabled;\n const isDropdownTriggerDisabled = isDisabled || !hasActionableItems;\n\n return (\n <SplitButtonRootSlot variant={variant} data-mode=\"split\">\n <SplitButtonButtonGroupSlot>\n {/* Primary Action Button */}\n <SplitButtonPrimaryButtonSlot asChild>\n <Button\n {...buttonProps}\n isDisabled={isPrimaryDisabled}\n onPress={executePrimaryAction}\n >\n {icon && <Icon>{icon}</Icon>}\n {buttonContent.content}\n </Button>\n </SplitButtonPrimaryButtonSlot>\n\n {/* Menu Trigger and Dropdown */}\n <Menu.Root\n trigger=\"press\"\n isOpen={isOpen}\n defaultOpen={defaultOpen}\n onOpenChange={onOpenChange}\n placement=\"bottom end\"\n selectionMode=\"none\"\n onAction={onAction ? (key) => onAction(String(key)) : undefined}\n >\n <Menu.Trigger asChild>\n <SplitButtonTriggerSlot asChild>\n <IconButton\n {...buttonProps}\n aria-label={ariaLabel}\n isDisabled={isDropdownTriggerDisabled}\n >\n <KeyboardArrowDown />\n </IconButton>\n </SplitButtonTriggerSlot>\n </Menu.Trigger>\n\n <Menu.Content>{menuItems}</Menu.Content>\n </Menu.Root>\n </SplitButtonButtonGroupSlot>\n </SplitButtonRootSlot>\n );\n};\n\nSplitButton.displayName = \"SplitButton\";\n\n// Export for internal use by react-docgen\nexport { SplitButton as _SplitButton };\n"],"names":["withProvider","withContext","createSlotRecipeContext","SplitButtonRootSlot","SplitButtonButtonGroupSlot","SplitButtonPrimaryButtonSlot","SplitButtonTriggerSlot","SplitButton","props","size","variant","tone","isDisabled","ariaLabel","onAction","isOpen","defaultOpen","onOpenChange","icon","buttonProps","isMenuItemWithId","element","React","hasChildren","menuItems","hasActionableMenuItems","children","hasActionable","child","findPrimaryMenuItem","allMenuItems","collectMenuItems","item","hasActionableItems","buttonContent","executePrimaryAction","isPrimaryDisabled","isDropdownTriggerDisabled","jsx","jsxs","Button","Icon","Menu","key","IconButton","KeyboardArrowDown"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"split-button-BxyZmuNi.es.js","sources":["../../src/components/split-button/split-button.slots.tsx","../../src/components/split-button/split-button.tsx"],"sourcesContent":["import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type {\n SplitButtonRootSlotProps,\n SplitButtonButtonGroupSlotProps,\n SplitButtonPrimaryButtonSlotProps,\n SplitButtonTriggerSlotProps,\n} from \"./split-button.types\";\nimport type { SlotComponent } from \"@/utils/slot-types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"splitButton\",\n});\n\n// Root Container\nexport const SplitButtonRootSlot: SlotComponent<\n HTMLDivElement,\n SplitButtonRootSlotProps\n> = withProvider<HTMLDivElement, SplitButtonRootSlotProps>(\"div\", \"root\");\n\n// Button Group Container\nexport const SplitButtonButtonGroupSlot = withContext<\n HTMLDivElement,\n SplitButtonButtonGroupSlotProps\n>(\"div\", \"buttonGroup\");\n\n// Primary Action Button\nexport const SplitButtonPrimaryButtonSlot = withContext<\n HTMLButtonElement,\n SplitButtonPrimaryButtonSlotProps\n>(\"button\", \"primaryButton\");\n\n// Dropdown Trigger Button\nexport const SplitButtonTriggerSlot = withContext<\n HTMLButtonElement,\n SplitButtonTriggerSlotProps\n>(\"button\", \"dropdownTrigger\");\n","import React from \"react\";\nimport { Button } from \"@/components/button\";\nimport { IconButton } from \"@/components/icon-button\";\nimport { Menu } from \"@/components/menu\";\nimport { Icon } from \"@/components/icon\";\nimport type { SplitButtonProps } from \"./split-button.types\";\nimport {\n SplitButtonRootSlot,\n SplitButtonButtonGroupSlot,\n SplitButtonPrimaryButtonSlot,\n SplitButtonTriggerSlot,\n} from \"./split-button.slots\";\nimport { KeyboardArrowDown } from \"@commercetools/nimbus-icons\";\n\n// Re-export types\nexport type * from \"./split-button.types\";\n\n/**\n * # SplitButton\n *\n * A split-button component that combines a primary action button with a dropdown menu.\n *\n * Shows a primary action button + dropdown trigger. The primary button automatically\n * executes the first enabled Menu.Item action, while the dropdown trigger opens a menu\n * with all available options.\n *\n * Use with Menu.Item, Menu.Section, and Separator components for content.\n */\nexport const SplitButton = (props: SplitButtonProps) => {\n const {\n size = \"md\",\n variant = \"solid\",\n tone,\n isDisabled = false,\n \"aria-label\": ariaLabel,\n onAction,\n isOpen,\n defaultOpen,\n onOpenChange,\n icon,\n } = props;\n\n const buttonProps = { size, variant, tone };\n\n /**\n * CORE CONCEPT: In split button mode, we need to populate the primary button\n * with content from a Menu.Item (specified by defaultAction prop).\n *\n * Why this complexity exists:\n * - Users define actions as <Menu.Item id=\"save\">Save Document</Menu.Item>\n * - We need to extract \"Save Document\" text to show on the primary button\n * - Menu.Items can be nested inside Menu.Section components\n * - We need to handle disabled states and fallbacks\n */\n\n // Type guards for safe prop access\n type MenuItemProps = {\n id: string;\n children: React.ReactNode;\n isDisabled?: boolean;\n isCritical?: boolean;\n };\n\n type ComponentWithChildren = {\n children: React.ReactNode;\n };\n\n // Check if element is a Menu.Item with required props\n const isMenuItemWithId = (\n element: React.ReactNode\n ): element is React.ReactElement<MenuItemProps> => {\n if (!React.isValidElement(element) || !element.props) return false;\n const props = element.props as Record<string, unknown>;\n return \"id\" in props && typeof props.id === \"string\";\n };\n\n // Check if element has children prop\n const hasChildren = (\n element: React.ReactNode\n ): element is React.ReactElement<ComponentWithChildren> => {\n if (!React.isValidElement(element) || !element.props) return false;\n const props = element.props as Record<string, unknown>;\n return \"children\" in props;\n };\n\n // All children are menu items\n const menuItems = props.children;\n\n /**\n * Check if there are any actionable (enabled) Menu.Items in the children.\n * This is used to determine if the dropdown trigger should be disabled.\n */\n const hasActionableMenuItems = (children: React.ReactNode): boolean => {\n let hasActionable = false;\n\n React.Children.forEach(children, (child) => {\n if (hasActionable) return;\n\n // Check if this is an enabled Menu.Item\n if (isMenuItemWithId(child) && !child.props.isDisabled) {\n hasActionable = true;\n return;\n }\n\n // Recurse into Menu.Section or any component with children\n if (hasChildren(child)) {\n hasActionable = hasActionableMenuItems(child.props.children);\n }\n });\n\n return hasActionable;\n };\n\n /**\n * Find the primary Menu.Item using the same logic as the original PrimaryActionDropdown.\n * Selects the first enabled Menu.Item, or falls back to the first Menu.Item if all are disabled.\n */\n const findPrimaryMenuItem = () => {\n const allMenuItems: Array<{\n content: React.ReactNode;\n isDisabled: boolean;\n actionId: string | null;\n }> = [];\n\n // Recursively collect all Menu.Items from children (including nested ones)\n const collectMenuItems = (children: React.ReactNode): void => {\n React.Children.forEach(children, (child) => {\n if (isMenuItemWithId(child)) {\n allMenuItems.push({\n content: child.props.children,\n isDisabled: child.props.isDisabled || false,\n actionId: child.props.id,\n });\n }\n\n // Recurse into Menu.Section or any component with children\n if (hasChildren(child)) {\n collectMenuItems(child.props.children);\n }\n });\n };\n\n collectMenuItems(menuItems);\n\n // Find first enabled Menu.Item, or fallback to first Menu.Item\n const primaryMenuItem =\n allMenuItems.find((item) => !item.isDisabled) || allMenuItems[0];\n\n return (\n primaryMenuItem || {\n // TODO: Localize this\n content: \"No actions available\",\n isDisabled: true,\n actionId: null,\n }\n );\n };\n\n // Check if there are any actionable menu items for dropdown functionality\n const hasActionableItems = hasActionableMenuItems(menuItems);\n\n // Get the primary button content using smart selection\n const buttonContent = findPrimaryMenuItem();\n\n const executePrimaryAction = () => {\n if (!buttonContent.isDisabled && buttonContent.actionId && onAction) {\n onAction(buttonContent.actionId);\n }\n };\n\n const isPrimaryDisabled = isDisabled || buttonContent.isDisabled;\n const isDropdownTriggerDisabled = isDisabled || !hasActionableItems;\n\n return (\n <SplitButtonRootSlot variant={variant} data-mode=\"split\">\n <SplitButtonButtonGroupSlot>\n {/* Primary Action Button */}\n <SplitButtonPrimaryButtonSlot asChild>\n <Button\n {...buttonProps}\n isDisabled={isPrimaryDisabled}\n onPress={executePrimaryAction}\n >\n {icon && <Icon>{icon}</Icon>}\n {buttonContent.content}\n </Button>\n </SplitButtonPrimaryButtonSlot>\n\n {/* Menu Trigger and Dropdown */}\n <Menu.Root\n trigger=\"press\"\n isOpen={isOpen}\n defaultOpen={defaultOpen}\n onOpenChange={onOpenChange}\n placement=\"bottom end\"\n selectionMode=\"none\"\n onAction={onAction ? (key) => onAction(String(key)) : undefined}\n >\n <Menu.Trigger asChild>\n <SplitButtonTriggerSlot asChild>\n <IconButton\n {...buttonProps}\n aria-label={ariaLabel}\n isDisabled={isDropdownTriggerDisabled}\n >\n <KeyboardArrowDown />\n </IconButton>\n </SplitButtonTriggerSlot>\n </Menu.Trigger>\n\n <Menu.Content>{menuItems}</Menu.Content>\n </Menu.Root>\n </SplitButtonButtonGroupSlot>\n </SplitButtonRootSlot>\n );\n};\n\nSplitButton.displayName = \"SplitButton\";\n\n// Export for internal use by react-docgen\nexport { SplitButton as _SplitButton };\n"],"names":["withProvider","withContext","createSlotRecipeContext","SplitButtonRootSlot","SplitButtonButtonGroupSlot","SplitButtonPrimaryButtonSlot","SplitButtonTriggerSlot","SplitButton","props","size","variant","tone","isDisabled","ariaLabel","onAction","isOpen","defaultOpen","onOpenChange","icon","buttonProps","isMenuItemWithId","element","React","hasChildren","menuItems","hasActionableMenuItems","children","hasActionable","child","findPrimaryMenuItem","allMenuItems","collectMenuItems","item","hasActionableItems","buttonContent","executePrimaryAction","isPrimaryDisabled","isDropdownTriggerDisabled","jsx","jsxs","Button","Icon","Menu","key","IconButton","KeyboardArrowDown"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"split-button-BxyZmuNi.es.js","sources":["../../src/components/split-button/split-button.slots.tsx","../../src/components/split-button/split-button.tsx"],"sourcesContent":["import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type {\n SplitButtonRootSlotProps,\n SplitButtonButtonGroupSlotProps,\n SplitButtonPrimaryButtonSlotProps,\n SplitButtonTriggerSlotProps,\n} from \"./split-button.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"splitButton\",\n});\n\n// Root Container\nexport const SplitButtonRootSlot: SlotComponent<\n HTMLDivElement,\n SplitButtonRootSlotProps\n> = withProvider<HTMLDivElement, SplitButtonRootSlotProps>(\"div\", \"root\");\n\n// Button Group Container\nexport const SplitButtonButtonGroupSlot = withContext<\n HTMLDivElement,\n SplitButtonButtonGroupSlotProps\n>(\"div\", \"buttonGroup\");\n\n// Primary Action Button\nexport const SplitButtonPrimaryButtonSlot = withContext<\n HTMLButtonElement,\n SplitButtonPrimaryButtonSlotProps\n>(\"button\", \"primaryButton\");\n\n// Dropdown Trigger Button\nexport const SplitButtonTriggerSlot = withContext<\n HTMLButtonElement,\n SplitButtonTriggerSlotProps\n>(\"button\", \"dropdownTrigger\");\n","import React from \"react\";\nimport { Button } from \"@/components/button\";\nimport { IconButton } from \"@/components/icon-button\";\nimport { Menu } from \"@/components/menu\";\nimport { Icon } from \"@/components/icon\";\nimport type { SplitButtonProps } from \"./split-button.types\";\nimport {\n SplitButtonRootSlot,\n SplitButtonButtonGroupSlot,\n SplitButtonPrimaryButtonSlot,\n SplitButtonTriggerSlot,\n} from \"./split-button.slots\";\nimport { KeyboardArrowDown } from \"@commercetools/nimbus-icons\";\n\n// Re-export types\nexport type * from \"./split-button.types\";\n\n/**\n * # SplitButton\n *\n * A split-button component that combines a primary action button with a dropdown menu.\n *\n * Shows a primary action button + dropdown trigger. The primary button automatically\n * executes the first enabled Menu.Item action, while the dropdown trigger opens a menu\n * with all available options.\n *\n * Use with Menu.Item, Menu.Section, and Separator components for content.\n */\nexport const SplitButton = (props: SplitButtonProps) => {\n const {\n size = \"md\",\n variant = \"solid\",\n tone,\n isDisabled = false,\n \"aria-label\": ariaLabel,\n onAction,\n isOpen,\n defaultOpen,\n onOpenChange,\n icon,\n } = props;\n\n const buttonProps = { size, variant, tone };\n\n /**\n * CORE CONCEPT: In split button mode, we need to populate the primary button\n * with content from a Menu.Item (specified by defaultAction prop).\n *\n * Why this complexity exists:\n * - Users define actions as <Menu.Item id=\"save\">Save Document</Menu.Item>\n * - We need to extract \"Save Document\" text to show on the primary button\n * - Menu.Items can be nested inside Menu.Section components\n * - We need to handle disabled states and fallbacks\n */\n\n // Type guards for safe prop access\n type MenuItemProps = {\n id: string;\n children: React.ReactNode;\n isDisabled?: boolean;\n isCritical?: boolean;\n };\n\n type ComponentWithChildren = {\n children: React.ReactNode;\n };\n\n // Check if element is a Menu.Item with required props\n const isMenuItemWithId = (\n element: React.ReactNode\n ): element is React.ReactElement<MenuItemProps> => {\n if (!React.isValidElement(element) || !element.props) return false;\n const props = element.props as Record<string, unknown>;\n return \"id\" in props && typeof props.id === \"string\";\n };\n\n // Check if element has children prop\n const hasChildren = (\n element: React.ReactNode\n ): element is React.ReactElement<ComponentWithChildren> => {\n if (!React.isValidElement(element) || !element.props) return false;\n const props = element.props as Record<string, unknown>;\n return \"children\" in props;\n };\n\n // All children are menu items\n const menuItems = props.children;\n\n /**\n * Check if there are any actionable (enabled) Menu.Items in the children.\n * This is used to determine if the dropdown trigger should be disabled.\n */\n const hasActionableMenuItems = (children: React.ReactNode): boolean => {\n let hasActionable = false;\n\n React.Children.forEach(children, (child) => {\n if (hasActionable) return;\n\n // Check if this is an enabled Menu.Item\n if (isMenuItemWithId(child) && !child.props.isDisabled) {\n hasActionable = true;\n return;\n }\n\n // Recurse into Menu.Section or any component with children\n if (hasChildren(child)) {\n hasActionable = hasActionableMenuItems(child.props.children);\n }\n });\n\n return hasActionable;\n };\n\n /**\n * Find the primary Menu.Item using the same logic as the original PrimaryActionDropdown.\n * Selects the first enabled Menu.Item, or falls back to the first Menu.Item if all are disabled.\n */\n const findPrimaryMenuItem = () => {\n const allMenuItems: Array<{\n content: React.ReactNode;\n isDisabled: boolean;\n actionId: string | null;\n }> = [];\n\n // Recursively collect all Menu.Items from children (including nested ones)\n const collectMenuItems = (children: React.ReactNode): void => {\n React.Children.forEach(children, (child) => {\n if (isMenuItemWithId(child)) {\n allMenuItems.push({\n content: child.props.children,\n isDisabled: child.props.isDisabled || false,\n actionId: child.props.id,\n });\n }\n\n // Recurse into Menu.Section or any component with children\n if (hasChildren(child)) {\n collectMenuItems(child.props.children);\n }\n });\n };\n\n collectMenuItems(menuItems);\n\n // Find first enabled Menu.Item, or fallback to first Menu.Item\n const primaryMenuItem =\n allMenuItems.find((item) => !item.isDisabled) || allMenuItems[0];\n\n return (\n primaryMenuItem || {\n // TODO: Localize this\n content: \"No actions available\",\n isDisabled: true,\n actionId: null,\n }\n );\n };\n\n // Check if there are any actionable menu items for dropdown functionality\n const hasActionableItems = hasActionableMenuItems(menuItems);\n\n // Get the primary button content using smart selection\n const buttonContent = findPrimaryMenuItem();\n\n const executePrimaryAction = () => {\n if (!buttonContent.isDisabled && buttonContent.actionId && onAction) {\n onAction(buttonContent.actionId);\n }\n };\n\n const isPrimaryDisabled = isDisabled || buttonContent.isDisabled;\n const isDropdownTriggerDisabled = isDisabled || !hasActionableItems;\n\n return (\n <SplitButtonRootSlot variant={variant} data-mode=\"split\">\n <SplitButtonButtonGroupSlot>\n {/* Primary Action Button */}\n <SplitButtonPrimaryButtonSlot asChild>\n <Button\n {...buttonProps}\n isDisabled={isPrimaryDisabled}\n onPress={executePrimaryAction}\n >\n {icon && <Icon>{icon}</Icon>}\n {buttonContent.content}\n </Button>\n </SplitButtonPrimaryButtonSlot>\n\n {/* Menu Trigger and Dropdown */}\n <Menu.Root\n trigger=\"press\"\n isOpen={isOpen}\n defaultOpen={defaultOpen}\n onOpenChange={onOpenChange}\n placement=\"bottom end\"\n selectionMode=\"none\"\n onAction={onAction ? (key) => onAction(String(key)) : undefined}\n >\n <Menu.Trigger asChild>\n <SplitButtonTriggerSlot asChild>\n <IconButton\n {...buttonProps}\n aria-label={ariaLabel}\n isDisabled={isDropdownTriggerDisabled}\n >\n <KeyboardArrowDown />\n </IconButton>\n </SplitButtonTriggerSlot>\n </Menu.Trigger>\n\n <Menu.Content>{menuItems}</Menu.Content>\n </Menu.Root>\n </SplitButtonButtonGroupSlot>\n </SplitButtonRootSlot>\n );\n};\n\nSplitButton.displayName = \"SplitButton\";\n\n// Export for internal use by react-docgen\nexport { SplitButton as _SplitButton };\n"],"names":["withProvider","withContext","createSlotRecipeContext","SplitButtonRootSlot","SplitButtonButtonGroupSlot","SplitButtonPrimaryButtonSlot","SplitButtonTriggerSlot","SplitButton","props","size","variant","tone","isDisabled","ariaLabel","onAction","isOpen","defaultOpen","onOpenChange","icon","buttonProps","isMenuItemWithId","element","React","hasChildren","menuItems","hasActionableMenuItems","children","hasActionable","child","findPrimaryMenuItem","allMenuItems","collectMenuItems","item","hasActionableItems","buttonContent","executePrimaryAction","isPrimaryDisabled","isDropdownTriggerDisabled","jsx","jsxs","Button","Icon","Menu","key","IconButton","KeyboardArrowDown"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switch-01hEhL9A.es.js","sources":["../../../../node_modules/.pnpm/@react-aria+switch@3.7.8_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@react-aria/switch/dist/useSwitch.mjs","../../src/components/switch/switch.slots.tsx","../../src/components/switch/switch.tsx"],"sourcesContent":["import {useToggle as $ifSyJ$useToggle} from \"@react-aria/toggle\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $b418ec0c85c52f27$export$d853f7095ae95f88(props, state, ref) {\n let { labelProps: labelProps, inputProps: inputProps, isSelected: isSelected, isPressed: isPressed, isDisabled: isDisabled, isReadOnly: isReadOnly } = (0, $ifSyJ$useToggle)(props, state, ref);\n return {\n labelProps: labelProps,\n inputProps: {\n ...inputProps,\n role: 'switch',\n checked: isSelected\n },\n isSelected: isSelected,\n isPressed: isPressed,\n isDisabled: isDisabled,\n isReadOnly: isReadOnly\n };\n}\n\n\nexport {$b418ec0c85c52f27$export$d853f7095ae95f88 as useSwitch};\n//# sourceMappingURL=useSwitch.module.js.map\n","import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type {\n SwitchRootSlotProps,\n SwitchLabelSlotProps,\n SwitchTrackSlotProps,\n SwitchThumbSlotProps,\n} from \"./switch.types\";\
|
|
1
|
+
{"version":3,"file":"switch-01hEhL9A.es.js","sources":["../../../../node_modules/.pnpm/@react-aria+switch@3.7.8_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@react-aria/switch/dist/useSwitch.mjs","../../src/components/switch/switch.slots.tsx","../../src/components/switch/switch.tsx"],"sourcesContent":["import {useToggle as $ifSyJ$useToggle} from \"@react-aria/toggle\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $b418ec0c85c52f27$export$d853f7095ae95f88(props, state, ref) {\n let { labelProps: labelProps, inputProps: inputProps, isSelected: isSelected, isPressed: isPressed, isDisabled: isDisabled, isReadOnly: isReadOnly } = (0, $ifSyJ$useToggle)(props, state, ref);\n return {\n labelProps: labelProps,\n inputProps: {\n ...inputProps,\n role: 'switch',\n checked: isSelected\n },\n isSelected: isSelected,\n isPressed: isPressed,\n isDisabled: isDisabled,\n isReadOnly: isReadOnly\n };\n}\n\n\nexport {$b418ec0c85c52f27$export$d853f7095ae95f88 as useSwitch};\n//# sourceMappingURL=useSwitch.module.js.map\n","import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type {\n SwitchRootSlotProps,\n SwitchLabelSlotProps,\n SwitchTrackSlotProps,\n SwitchThumbSlotProps,\n} from \"./switch.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"switch\",\n});\n\nexport const SwitchRootSlot: SlotComponent<\n HTMLLabelElement,\n SwitchRootSlotProps\n> = withProvider<HTMLLabelElement, SwitchRootSlotProps>(\"label\", \"root\");\n\nexport const SwitchLabelSlot = withContext<\n HTMLSpanElement,\n SwitchLabelSlotProps\n>(\"span\", \"label\");\n\nexport const SwitchTrackSlot = withContext<\n HTMLSpanElement,\n SwitchTrackSlotProps\n>(\"span\", \"track\");\n\nexport const SwitchThumbSlot = withContext<\n HTMLSpanElement,\n SwitchThumbSlotProps\n>(\"span\", \"thumb\");\n","import { useRef } from \"react\";\nimport { useToggleState } from \"react-stately\";\nimport { useFocusRing, useSwitch, useObjectRef, mergeProps } from \"react-aria\";\nimport { mergeRefs } from \"@chakra-ui/react\";\nimport { useSlotRecipe } from \"@chakra-ui/react/styled-system\";\nimport { VisuallyHidden } from \"@/components\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport type { SwitchProps } from \"./switch.types\";\nimport {\n SwitchRootSlot,\n SwitchTrackSlot,\n SwitchThumbSlot,\n SwitchLabelSlot,\n} from \"./switch.slots\";\nimport { switchSlotRecipe } from \"./switch.recipe\";\n\n/**\n * # Switch\n *\n * A clear, visual toggle, allowing users to activate or deactivate a setting quickly.\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/inputs/switch}\n */\nexport const Switch = ({ ref: externalRef, ...props }: SwitchProps) => {\n const localRef = useRef<HTMLInputElement>(null);\n const ref = useObjectRef(\n externalRef ? mergeRefs(localRef, externalRef) : localRef\n );\n\n const recipe = useSlotRecipe({ recipe: switchSlotRecipe });\n\n const [recipeProps, recipeLessProps] = recipe.splitVariantProps(props);\n const [styleProps, functionalProps] = extractStyleProps(recipeLessProps);\n\n const state = useToggleState(props);\n const { inputProps } = useSwitch(functionalProps, state, ref);\n\n const { isFocused, focusProps } = useFocusRing();\n\n const stateProps = {\n \"data-selected\": state.isSelected,\n \"data-invalid\": props.isInvalid,\n \"data-disabled\": props.isDisabled,\n \"data-focus\": isFocused || undefined,\n };\n return (\n <SwitchRootSlot\n data-slot=\"root\"\n {...recipeProps}\n {...stateProps}\n {...styleProps}\n >\n <SwitchTrackSlot data-slot=\"track\" {...stateProps}>\n <SwitchThumbSlot data-slot=\"thumb\" {...stateProps} />\n <VisuallyHidden as=\"span\">\n <input\n data-slot=\"input\"\n {...mergeProps(inputProps, focusProps)}\n ref={ref}\n />\n </VisuallyHidden>\n </SwitchTrackSlot>\n\n {props.children && (\n <SwitchLabelSlot data-slot=\"label\" {...stateProps}>\n {props.children}\n </SwitchLabelSlot>\n )}\n </SwitchRootSlot>\n );\n};\nSwitch.displayName = \"Switch\";\n"],"names":["$b418ec0c85c52f27$export$d853f7095ae95f88","props","state","ref","labelProps","inputProps","isSelected","isPressed","isDisabled","isReadOnly","$ifSyJ$useToggle","withProvider","withContext","createSlotRecipeContext","SwitchRootSlot","SwitchLabelSlot","SwitchTrackSlot","SwitchThumbSlot","Switch","externalRef","localRef","useRef","useObjectRef","mergeRefs","recipe","useSlotRecipe","switchSlotRecipe","recipeProps","recipeLessProps","styleProps","functionalProps","extractStyleProps","useToggleState","useSwitch","isFocused","focusProps","useFocusRing","stateProps","jsxs","jsx","VisuallyHidden","mergeProps"],"mappings":";;;;;;;;;;;;AAaA,SAASA,EAA0CC,GAAOC,GAAOC,GAAK;AAClE,MAAI,EAAE,YAAYC,GAAY,YAAYC,GAAY,YAAYC,GAAY,WAAWC,GAAW,YAAYC,GAAY,YAAYC,EAAU,IAASC,EAAkBT,GAAOC,GAAOC,CAAG;AAC9L,SAAO;AAAA,IACH,YAAYC;AAAA,IACZ,YAAY;AAAA,MACR,GAAGC;AAAA,MACH,MAAM;AAAA,MACN,SAASC;AAAA,IACrB;AAAA,IACQ,YAAYA;AAAA,IACZ,WAAWC;AAAA,IACX,YAAYC;AAAA,IACZ,YAAYC;AAAA,EACpB;AACA;AClBA,MAAM,EAAE,cAAAE,GAAc,aAAAC,EAAA,IAAgB,gBAAAC,EAAwB;AAAA,EAC5D,KAAK;AACP,CAAC,GAEYC,IAGT,gBAAAH,EAAoD,SAAS,MAAM,GAE1DI,IAAkB,gBAAAH,EAG7B,QAAQ,OAAO,GAEJI,IAAkB,gBAAAJ,EAG7B,QAAQ,OAAO,GAEJK,IAAkB,gBAAAL,EAG7B,QAAQ,OAAO,GCRJM,IAAS,CAAC,EAAE,KAAKC,GAAa,GAAGlB,QAAyB;AACrE,QAAMmB,IAAWC,EAAyB,IAAI,GACxClB,IAAMmB;AAAAA,IACVH,IAAcI,EAAUH,GAAUD,CAAW,IAAIC;AAAA,EAAA,GAG7CI,IAASC,EAAc,EAAE,QAAQC,GAAkB,GAEnD,CAACC,GAAaC,CAAe,IAAIJ,EAAO,kBAAkBvB,CAAK,GAC/D,CAAC4B,GAAYC,CAAe,IAAIC,EAAkBH,CAAe,GAEjE1B,IAAQ8B,EAAe/B,CAAK,GAC5B,EAAE,YAAAI,EAAA,IAAe4B,EAAUH,GAAiB5B,GAAOC,CAAG,GAEtD,EAAE,WAAA+B,GAAW,YAAAC,EAAA,IAAeC,EAAA,GAE5BC,IAAa;AAAA,IACjB,iBAAiBnC,EAAM;AAAA,IACvB,gBAAgBD,EAAM;AAAA,IACtB,iBAAiBA,EAAM;AAAA,IACvB,cAAciC,KAAa;AAAA,EAAA;AAE7B,SACE,gBAAAI;AAAA,IAACxB;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACT,GAAGa;AAAA,MACH,GAAGU;AAAA,MACH,GAAGR;AAAA,MAEJ,UAAA;AAAA,QAAA,gBAAAS,EAACtB,GAAA,EAAgB,aAAU,SAAS,GAAGqB,GACrC,UAAA;AAAA,UAAA,gBAAAE,EAACtB,GAAA,EAAgB,aAAU,SAAS,GAAGoB,EAAA,CAAY;AAAA,UACnD,gBAAAE,EAACC,GAAA,EAAe,IAAG,QACjB,UAAA,gBAAAD;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,aAAU;AAAA,cACT,GAAGE,EAAWpC,GAAY8B,CAAU;AAAA,cACrC,KAAAhC;AAAA,YAAA;AAAA,UAAA,EACF,CACF;AAAA,QAAA,GACF;AAAA,QAECF,EAAM,YACL,gBAAAsC,EAACxB,GAAA,EAAgB,aAAU,SAAS,GAAGsB,GACpC,UAAApC,EAAM,SAAA,CACT;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAIR;AACAiB,EAAO,cAAc;","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switch-CdLhBEPq.cjs.js","sources":["../../../../node_modules/.pnpm/@react-aria+switch@3.7.8_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@react-aria/switch/dist/useSwitch.mjs","../../src/components/switch/switch.slots.tsx","../../src/components/switch/switch.tsx"],"sourcesContent":["import {useToggle as $ifSyJ$useToggle} from \"@react-aria/toggle\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $b418ec0c85c52f27$export$d853f7095ae95f88(props, state, ref) {\n let { labelProps: labelProps, inputProps: inputProps, isSelected: isSelected, isPressed: isPressed, isDisabled: isDisabled, isReadOnly: isReadOnly } = (0, $ifSyJ$useToggle)(props, state, ref);\n return {\n labelProps: labelProps,\n inputProps: {\n ...inputProps,\n role: 'switch',\n checked: isSelected\n },\n isSelected: isSelected,\n isPressed: isPressed,\n isDisabled: isDisabled,\n isReadOnly: isReadOnly\n };\n}\n\n\nexport {$b418ec0c85c52f27$export$d853f7095ae95f88 as useSwitch};\n//# sourceMappingURL=useSwitch.module.js.map\n","import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type {\n SwitchRootSlotProps,\n SwitchLabelSlotProps,\n SwitchTrackSlotProps,\n SwitchThumbSlotProps,\n} from \"./switch.types\";\
|
|
1
|
+
{"version":3,"file":"switch-CdLhBEPq.cjs.js","sources":["../../../../node_modules/.pnpm/@react-aria+switch@3.7.8_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@react-aria/switch/dist/useSwitch.mjs","../../src/components/switch/switch.slots.tsx","../../src/components/switch/switch.tsx"],"sourcesContent":["import {useToggle as $ifSyJ$useToggle} from \"@react-aria/toggle\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $b418ec0c85c52f27$export$d853f7095ae95f88(props, state, ref) {\n let { labelProps: labelProps, inputProps: inputProps, isSelected: isSelected, isPressed: isPressed, isDisabled: isDisabled, isReadOnly: isReadOnly } = (0, $ifSyJ$useToggle)(props, state, ref);\n return {\n labelProps: labelProps,\n inputProps: {\n ...inputProps,\n role: 'switch',\n checked: isSelected\n },\n isSelected: isSelected,\n isPressed: isPressed,\n isDisabled: isDisabled,\n isReadOnly: isReadOnly\n };\n}\n\n\nexport {$b418ec0c85c52f27$export$d853f7095ae95f88 as useSwitch};\n//# sourceMappingURL=useSwitch.module.js.map\n","import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type {\n SwitchRootSlotProps,\n SwitchLabelSlotProps,\n SwitchTrackSlotProps,\n SwitchThumbSlotProps,\n} from \"./switch.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"switch\",\n});\n\nexport const SwitchRootSlot: SlotComponent<\n HTMLLabelElement,\n SwitchRootSlotProps\n> = withProvider<HTMLLabelElement, SwitchRootSlotProps>(\"label\", \"root\");\n\nexport const SwitchLabelSlot = withContext<\n HTMLSpanElement,\n SwitchLabelSlotProps\n>(\"span\", \"label\");\n\nexport const SwitchTrackSlot = withContext<\n HTMLSpanElement,\n SwitchTrackSlotProps\n>(\"span\", \"track\");\n\nexport const SwitchThumbSlot = withContext<\n HTMLSpanElement,\n SwitchThumbSlotProps\n>(\"span\", \"thumb\");\n","import { useRef } from \"react\";\nimport { useToggleState } from \"react-stately\";\nimport { useFocusRing, useSwitch, useObjectRef, mergeProps } from \"react-aria\";\nimport { mergeRefs } from \"@chakra-ui/react\";\nimport { useSlotRecipe } from \"@chakra-ui/react/styled-system\";\nimport { VisuallyHidden } from \"@/components\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport type { SwitchProps } from \"./switch.types\";\nimport {\n SwitchRootSlot,\n SwitchTrackSlot,\n SwitchThumbSlot,\n SwitchLabelSlot,\n} from \"./switch.slots\";\nimport { switchSlotRecipe } from \"./switch.recipe\";\n\n/**\n * # Switch\n *\n * A clear, visual toggle, allowing users to activate or deactivate a setting quickly.\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/inputs/switch}\n */\nexport const Switch = ({ ref: externalRef, ...props }: SwitchProps) => {\n const localRef = useRef<HTMLInputElement>(null);\n const ref = useObjectRef(\n externalRef ? mergeRefs(localRef, externalRef) : localRef\n );\n\n const recipe = useSlotRecipe({ recipe: switchSlotRecipe });\n\n const [recipeProps, recipeLessProps] = recipe.splitVariantProps(props);\n const [styleProps, functionalProps] = extractStyleProps(recipeLessProps);\n\n const state = useToggleState(props);\n const { inputProps } = useSwitch(functionalProps, state, ref);\n\n const { isFocused, focusProps } = useFocusRing();\n\n const stateProps = {\n \"data-selected\": state.isSelected,\n \"data-invalid\": props.isInvalid,\n \"data-disabled\": props.isDisabled,\n \"data-focus\": isFocused || undefined,\n };\n return (\n <SwitchRootSlot\n data-slot=\"root\"\n {...recipeProps}\n {...stateProps}\n {...styleProps}\n >\n <SwitchTrackSlot data-slot=\"track\" {...stateProps}>\n <SwitchThumbSlot data-slot=\"thumb\" {...stateProps} />\n <VisuallyHidden as=\"span\">\n <input\n data-slot=\"input\"\n {...mergeProps(inputProps, focusProps)}\n ref={ref}\n />\n </VisuallyHidden>\n </SwitchTrackSlot>\n\n {props.children && (\n <SwitchLabelSlot data-slot=\"label\" {...stateProps}>\n {props.children}\n </SwitchLabelSlot>\n )}\n </SwitchRootSlot>\n );\n};\nSwitch.displayName = \"Switch\";\n"],"names":["$b418ec0c85c52f27$export$d853f7095ae95f88","props","state","ref","labelProps","inputProps","isSelected","isPressed","isDisabled","isReadOnly","$ifSyJ$useToggle","withProvider","withContext","createSlotRecipeContext","SwitchRootSlot","SwitchLabelSlot","SwitchTrackSlot","SwitchThumbSlot","Switch","externalRef","localRef","useRef","useObjectRef","mergeRefs","recipe","useSlotRecipe","switchSlotRecipe","recipeProps","recipeLessProps","styleProps","functionalProps","extractStyleProps","useToggleState","useSwitch","isFocused","focusProps","useFocusRing","stateProps","jsxs","jsx","VisuallyHidden","mergeProps"],"mappings":"6eAaA,SAASA,EAA0CC,EAAOC,EAAOC,EAAK,CAClE,GAAI,CAAE,WAAYC,EAAY,WAAYC,EAAY,WAAYC,EAAY,UAAWC,EAAW,WAAYC,EAAY,WAAYC,CAAU,EAASC,EAAAA,0CAAkBT,EAAOC,EAAOC,CAAG,EAC9L,MAAO,CACH,WAAYC,EACZ,WAAY,CACR,GAAGC,EACH,KAAM,SACN,QAASC,CACrB,EACQ,WAAYA,EACZ,UAAWC,EACX,WAAYC,EACZ,WAAYC,CACpB,CACA,CClBA,KAAM,CAAE,aAAAE,EAAc,YAAAC,CAAA,EAAgBC,0BAAwB,CAC5D,IAAK,QACP,CAAC,EAEYC,EAGTH,EAAoD,QAAS,MAAM,EAE1DI,EAAkBH,EAG7B,OAAQ,OAAO,EAEJI,EAAkBJ,EAG7B,OAAQ,OAAO,EAEJK,EAAkBL,EAG7B,OAAQ,OAAO,ECRJM,EAAS,CAAC,CAAE,IAAKC,EAAa,GAAGlB,KAAyB,CACrE,MAAMmB,EAAWC,EAAAA,OAAyB,IAAI,EACxClB,EAAMmB,EAAAA,0CACVH,EAAcI,EAAAA,UAAUH,EAAUD,CAAW,EAAIC,CAAA,EAG7CI,EAASC,EAAAA,cAAc,CAAE,OAAQC,EAAAA,iBAAkB,EAEnD,CAACC,EAAaC,CAAe,EAAIJ,EAAO,kBAAkBvB,CAAK,EAC/D,CAAC4B,EAAYC,CAAe,EAAIC,EAAAA,kBAAkBH,CAAe,EAEjE1B,EAAQ8B,EAAAA,0CAAe/B,CAAK,EAC5B,CAAE,WAAAI,CAAA,EAAe4B,EAAUH,EAAiB5B,EAAOC,CAAG,EAEtD,CAAE,UAAA+B,EAAW,WAAAC,CAAA,EAAeC,4CAAA,EAE5BC,EAAa,CACjB,gBAAiBnC,EAAM,WACvB,eAAgBD,EAAM,UACtB,gBAAiBA,EAAM,WACvB,aAAciC,GAAa,MAAA,EAE7B,OACEI,EAAAA,KAACxB,EAAA,CACC,YAAU,OACT,GAAGa,EACH,GAAGU,EACH,GAAGR,EAEJ,SAAA,CAAAS,EAAAA,KAACtB,EAAA,CAAgB,YAAU,QAAS,GAAGqB,EACrC,SAAA,CAAAE,EAAAA,IAACtB,EAAA,CAAgB,YAAU,QAAS,GAAGoB,CAAA,CAAY,EACnDE,EAAAA,IAACC,EAAAA,eAAA,CAAe,GAAG,OACjB,SAAAD,EAAAA,IAAC,QAAA,CACC,YAAU,QACT,GAAGE,EAAAA,0CAAWpC,EAAY8B,CAAU,EACrC,IAAAhC,CAAA,CAAA,CACF,CACF,CAAA,EACF,EAECF,EAAM,UACLsC,MAACxB,EAAA,CAAgB,YAAU,QAAS,GAAGsB,EACpC,SAAApC,EAAM,QAAA,CACT,CAAA,CAAA,CAAA,CAIR,EACAiB,EAAO,YAAc","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs-CJ0OAUSR.cjs.js","sources":["../../../../node_modules/.pnpm/@react-aria+tabs@3.10.8_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@react-aria/tabs/dist/utils.mjs","../../../../node_modules/.pnpm/@react-aria+tabs@3.10.8_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@react-aria/tabs/dist/useTab.mjs","../../../../node_modules/.pnpm/@react-aria+tabs@3.10.8_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@react-aria/tabs/dist/useTabPanel.mjs","../../../../node_modules/.pnpm/@react-aria+tabs@3.10.8_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@react-aria/tabs/dist/TabsKeyboardDelegate.mjs","../../../../node_modules/.pnpm/@react-aria+tabs@3.10.8_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@react-aria/tabs/dist/useTabList.mjs","../../../../node_modules/.pnpm/@react-stately+tabs@3.8.6_react@19.1.0/node_modules/@react-stately/tabs/dist/useTabListState.mjs","../../../../node_modules/.pnpm/react-aria-components@1.13.0_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/react-aria-components/dist/Tabs.mjs","../../src/components/tabs/tabs.slots.tsx","../../src/components/tabs/components/tabs.tab.tsx","../../src/components/tabs/components/tabs.list.tsx","../../src/components/tabs/components/tabs.panel.tsx","../../src/components/tabs/components/tabs.panels.tsx","../../src/components/tabs/components/tabs.root.tsx","../../src/components/tabs/tabs.tsx"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ const $99b62ae3ff97ec45$export$c5f62239608282b6 = new WeakMap();\nfunction $99b62ae3ff97ec45$export$567fc7097e064344(state, key, role) {\n if (!state) // this case should only happen in the first render before the tabs are registered\n return '';\n if (typeof key === 'string') key = key.replace(/\\s+/g, '');\n let baseId = $99b62ae3ff97ec45$export$c5f62239608282b6.get(state);\n if (process.env.NODE_ENV !== 'production' && !baseId) console.error('There is no tab id, please check if you have rendered the tab panel before the tab list.');\n return `${baseId}-${role}-${key}`;\n}\n\n\nexport {$99b62ae3ff97ec45$export$c5f62239608282b6 as tabsIds, $99b62ae3ff97ec45$export$567fc7097e064344 as generateId};\n//# sourceMappingURL=utils.module.js.map\n","import {generateId as $99b62ae3ff97ec45$export$567fc7097e064344} from \"./utils.mjs\";\nimport {filterDOMProps as $dObGJ$filterDOMProps, useLinkProps as $dObGJ$useLinkProps, mergeProps as $dObGJ$mergeProps} from \"@react-aria/utils\";\nimport {useFocusable as $dObGJ$useFocusable} from \"@react-aria/focus\";\nimport {useSelectableItem as $dObGJ$useSelectableItem} from \"@react-aria/selection\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\nfunction $0175d55c2a017ebc$export$fdf4756d5b8ef90a(props, state, ref) {\n let { key: key, isDisabled: propsDisabled, shouldSelectOnPressUp: shouldSelectOnPressUp } = props;\n let { selectionManager: manager, selectedKey: selectedKey } = state;\n let isSelected = key === selectedKey;\n let isDisabled = propsDisabled || state.isDisabled || state.selectionManager.isDisabled(key);\n let { itemProps: itemProps, isPressed: isPressed } = (0, $dObGJ$useSelectableItem)({\n selectionManager: manager,\n key: key,\n ref: ref,\n isDisabled: isDisabled,\n shouldSelectOnPressUp: shouldSelectOnPressUp,\n linkBehavior: 'selection'\n });\n let tabId = (0, $99b62ae3ff97ec45$export$567fc7097e064344)(state, key, 'tab');\n let tabPanelId = (0, $99b62ae3ff97ec45$export$567fc7097e064344)(state, key, 'tabpanel');\n let { tabIndex: tabIndex } = itemProps;\n let item = state.collection.getItem(key);\n let domProps = (0, $dObGJ$filterDOMProps)(item === null || item === void 0 ? void 0 : item.props, {\n labelable: true\n });\n delete domProps.id;\n let linkProps = (0, $dObGJ$useLinkProps)(item === null || item === void 0 ? void 0 : item.props);\n let { focusableProps: focusableProps } = (0, $dObGJ$useFocusable)({\n isDisabled: isDisabled\n }, ref);\n return {\n tabProps: (0, $dObGJ$mergeProps)(domProps, focusableProps, linkProps, itemProps, {\n id: tabId,\n 'aria-selected': isSelected,\n 'aria-disabled': isDisabled || undefined,\n 'aria-controls': isSelected ? tabPanelId : undefined,\n tabIndex: isDisabled ? undefined : tabIndex,\n role: 'tab'\n }),\n isSelected: isSelected,\n isDisabled: isDisabled,\n isPressed: isPressed\n };\n}\n\n\nexport {$0175d55c2a017ebc$export$fdf4756d5b8ef90a as useTab};\n//# sourceMappingURL=useTab.module.js.map\n","import {generateId as $99b62ae3ff97ec45$export$567fc7097e064344} from \"./utils.mjs\";\nimport {useLabels as $jik2T$useLabels, mergeProps as $jik2T$mergeProps} from \"@react-aria/utils\";\nimport {useHasTabbableChild as $jik2T$useHasTabbableChild} from \"@react-aria/focus\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $34bce698202e07cb$export$fae0121b5afe572d(props, state, ref) {\n // The tabpanel should have tabIndex=0 when there are no tabbable elements within it.\n // Otherwise, tabbing from the focused tab should go directly to the first tabbable element\n // within the tabpanel.\n let tabIndex = (0, $jik2T$useHasTabbableChild)(ref) ? undefined : 0;\n var _props_id;\n const id = (0, $99b62ae3ff97ec45$export$567fc7097e064344)(state, (_props_id = props.id) !== null && _props_id !== void 0 ? _props_id : state === null || state === void 0 ? void 0 : state.selectedKey, 'tabpanel');\n const tabPanelProps = (0, $jik2T$useLabels)({\n ...props,\n id: id,\n 'aria-labelledby': (0, $99b62ae3ff97ec45$export$567fc7097e064344)(state, state === null || state === void 0 ? void 0 : state.selectedKey, 'tab')\n });\n return {\n tabPanelProps: (0, $jik2T$mergeProps)(tabPanelProps, {\n tabIndex: tabIndex,\n role: 'tabpanel',\n 'aria-describedby': props['aria-describedby'],\n 'aria-details': props['aria-details']\n })\n };\n}\n\n\nexport {$34bce698202e07cb$export$fae0121b5afe572d as useTabPanel};\n//# sourceMappingURL=useTabPanel.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ class $bfc6f2d60b8a4c40$export$15010ca3c1abe90b {\n getKeyLeftOf(key) {\n if (this.flipDirection) return this.getNextKey(key);\n return this.getPreviousKey(key);\n }\n getKeyRightOf(key) {\n if (this.flipDirection) return this.getPreviousKey(key);\n return this.getNextKey(key);\n }\n isDisabled(key) {\n var _this_collection_getItem_props, _this_collection_getItem;\n return this.disabledKeys.has(key) || !!((_this_collection_getItem = this.collection.getItem(key)) === null || _this_collection_getItem === void 0 ? void 0 : (_this_collection_getItem_props = _this_collection_getItem.props) === null || _this_collection_getItem_props === void 0 ? void 0 : _this_collection_getItem_props.isDisabled);\n }\n getFirstKey() {\n let key = this.collection.getFirstKey();\n if (key != null && this.isDisabled(key)) key = this.getNextKey(key);\n return key;\n }\n getLastKey() {\n let key = this.collection.getLastKey();\n if (key != null && this.isDisabled(key)) key = this.getPreviousKey(key);\n return key;\n }\n getKeyAbove(key) {\n if (this.tabDirection) return null;\n return this.getPreviousKey(key);\n }\n getKeyBelow(key) {\n if (this.tabDirection) return null;\n return this.getNextKey(key);\n }\n getNextKey(startKey) {\n let key = startKey;\n do {\n key = this.collection.getKeyAfter(key);\n if (key == null) key = this.collection.getFirstKey();\n }while (key != null && this.isDisabled(key));\n return key;\n }\n getPreviousKey(startKey) {\n let key = startKey;\n do {\n key = this.collection.getKeyBefore(key);\n if (key == null) key = this.collection.getLastKey();\n }while (key != null && this.isDisabled(key));\n return key;\n }\n constructor(collection, direction, orientation, disabledKeys = new Set()){\n this.collection = collection;\n this.flipDirection = direction === 'rtl' && orientation === 'horizontal';\n this.disabledKeys = disabledKeys;\n this.tabDirection = orientation === 'horizontal';\n }\n}\n\n\nexport {$bfc6f2d60b8a4c40$export$15010ca3c1abe90b as TabsKeyboardDelegate};\n//# sourceMappingURL=TabsKeyboardDelegate.module.js.map\n","import {tabsIds as $99b62ae3ff97ec45$export$c5f62239608282b6} from \"./utils.mjs\";\nimport {TabsKeyboardDelegate as $bfc6f2d60b8a4c40$export$15010ca3c1abe90b} from \"./TabsKeyboardDelegate.mjs\";\nimport {useId as $bQNZs$useId, useLabels as $bQNZs$useLabels, mergeProps as $bQNZs$mergeProps} from \"@react-aria/utils\";\nimport {useLocale as $bQNZs$useLocale} from \"@react-aria/i18n\";\nimport {useMemo as $bQNZs$useMemo} from \"react\";\nimport {useSelectableCollection as $bQNZs$useSelectableCollection} from \"@react-aria/selection\";\n\n/*\n* Copyright 2020 Adobe. All rights reserved.\n* This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License. You may obtain a copy\n* of the License at http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software distributed under\n* the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n* OF ANY KIND, either express or implied. See the License for the specific language\n* governing permissions and limitations under the License.\n*/ \n\n\n\n\n\nfunction $58d314389b21fa3f$export$773e389e644c5874(props, state, ref) {\n let { orientation: orientation = 'horizontal', keyboardActivation: keyboardActivation = 'automatic' } = props;\n let { collection: collection, selectionManager: manager, disabledKeys: disabledKeys } = state;\n let { direction: direction } = (0, $bQNZs$useLocale)();\n let delegate = (0, $bQNZs$useMemo)(()=>new (0, $bfc6f2d60b8a4c40$export$15010ca3c1abe90b)(collection, direction, orientation, disabledKeys), [\n collection,\n disabledKeys,\n orientation,\n direction\n ]);\n let { collectionProps: collectionProps } = (0, $bQNZs$useSelectableCollection)({\n ref: ref,\n selectionManager: manager,\n keyboardDelegate: delegate,\n selectOnFocus: keyboardActivation === 'automatic',\n disallowEmptySelection: true,\n scrollRef: ref,\n linkBehavior: 'selection'\n });\n // Compute base id for all tabs\n let tabsId = (0, $bQNZs$useId)();\n (0, $99b62ae3ff97ec45$export$c5f62239608282b6).set(state, tabsId);\n let tabListLabelProps = (0, $bQNZs$useLabels)({\n ...props,\n id: tabsId\n });\n return {\n tabListProps: {\n ...(0, $bQNZs$mergeProps)(collectionProps, tabListLabelProps),\n role: 'tablist',\n 'aria-orientation': orientation,\n tabIndex: undefined\n }\n };\n}\n\n\nexport {$58d314389b21fa3f$export$773e389e644c5874 as useTabList};\n//# sourceMappingURL=useTabList.module.js.map\n","import {useSingleSelectListState as $fgY1A$useSingleSelectListState} from \"@react-stately/list\";\nimport {useRef as $fgY1A$useRef, useEffect as $fgY1A$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $76f919a04c5a7d14$export$4ba071daf4e486(props) {\n var _props_defaultSelectedKey, _ref;\n let state = (0, $fgY1A$useSingleSelectListState)({\n ...props,\n onSelectionChange: props.onSelectionChange ? (key)=>{\n var _props_onSelectionChange;\n if (key != null) (_props_onSelectionChange = props.onSelectionChange) === null || _props_onSelectionChange === void 0 ? void 0 : _props_onSelectionChange.call(props, key);\n } : undefined,\n suppressTextValueWarning: true,\n defaultSelectedKey: (_ref = (_props_defaultSelectedKey = props.defaultSelectedKey) !== null && _props_defaultSelectedKey !== void 0 ? _props_defaultSelectedKey : $76f919a04c5a7d14$var$findDefaultSelectedKey(props.collection, props.disabledKeys ? new Set(props.disabledKeys) : new Set())) !== null && _ref !== void 0 ? _ref : undefined\n });\n let { selectionManager: selectionManager, collection: collection, selectedKey: currentSelectedKey } = state;\n let lastSelectedKey = (0, $fgY1A$useRef)(currentSelectedKey);\n (0, $fgY1A$useEffect)(()=>{\n // Ensure a tab is always selected (in case no selected key was specified or if selected item was deleted from collection)\n let selectedKey = currentSelectedKey;\n if (props.selectedKey == null && (selectionManager.isEmpty || selectedKey == null || !collection.getItem(selectedKey))) {\n selectedKey = $76f919a04c5a7d14$var$findDefaultSelectedKey(collection, state.disabledKeys);\n if (selectedKey != null) // directly set selection because replace/toggle selection won't consider disabled keys\n selectionManager.setSelectedKeys([\n selectedKey\n ]);\n }\n // If the tablist doesn't have focus and the selected key changes or if there isn't a focused key yet, change focused key to the selected key if it exists.\n if (selectedKey != null && selectionManager.focusedKey == null || !selectionManager.isFocused && selectedKey !== lastSelectedKey.current) selectionManager.setFocusedKey(selectedKey);\n lastSelectedKey.current = selectedKey;\n });\n return {\n ...state,\n isDisabled: props.isDisabled || false\n };\n}\nfunction $76f919a04c5a7d14$var$findDefaultSelectedKey(collection, disabledKeys) {\n let selectedKey = null;\n if (collection) {\n var _collection_getItem_props, _collection_getItem, _collection_getItem_props1, _collection_getItem1;\n selectedKey = collection.getFirstKey();\n // loop over tabs until we find one that isn't disabled and select that\n while(selectedKey != null && (disabledKeys.has(selectedKey) || ((_collection_getItem = collection.getItem(selectedKey)) === null || _collection_getItem === void 0 ? void 0 : (_collection_getItem_props = _collection_getItem.props) === null || _collection_getItem_props === void 0 ? void 0 : _collection_getItem_props.isDisabled)) && selectedKey !== collection.getLastKey())selectedKey = collection.getKeyAfter(selectedKey);\n // if this check is true, then every item is disabled, it makes more sense to default to the first key than the last\n if (selectedKey != null && (disabledKeys.has(selectedKey) || ((_collection_getItem1 = collection.getItem(selectedKey)) === null || _collection_getItem1 === void 0 ? void 0 : (_collection_getItem_props1 = _collection_getItem1.props) === null || _collection_getItem_props1 === void 0 ? void 0 : _collection_getItem_props1.isDisabled)) && selectedKey === collection.getLastKey()) selectedKey = collection.getFirstKey();\n }\n return selectedKey;\n}\n\n\nexport {$76f919a04c5a7d14$export$4ba071daf4e486 as useTabListState};\n//# sourceMappingURL=useTabListState.module.js.map\n","import {CollectionRendererContext as $7135fc7d473fd974$export$4feb769f8ddf26c5, DefaultCollectionRenderer as $7135fc7d473fd974$export$a164736487e3f0ae, usePersistedKeys as $7135fc7d473fd974$export$90e00781bc59d8f9} from \"./Collection.mjs\";\nimport {Provider as $64fa3d84918910a7$export$2881499e37b75b9a, useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415, useRenderProps as $64fa3d84918910a7$export$4d86445c2cf5e3, useSlottedContext as $64fa3d84918910a7$export$fabf2dc03a41866e} from \"./utils.mjs\";\nimport {SelectionIndicatorContext as $1d5b8b8664671ef2$export$c9549807523555e0} from \"./SelectionIndicator.mjs\";\nimport {SharedElementTransition as $c8a5a149f625efcf$export$758399f318e6385a} from \"./SharedElementTransition.mjs\";\nimport {useFocusRing as $7aSLZ$useFocusRing, mergeProps as $7aSLZ$mergeProps, useTabList as $7aSLZ$useTabList, useTab as $7aSLZ$useTab, useHover as $7aSLZ$useHover, useTabPanel as $7aSLZ$useTabPanel} from \"react-aria\";\nimport {CollectionBuilder as $7aSLZ$CollectionBuilder, Collection as $7aSLZ$Collection, CollectionNode as $7aSLZ$CollectionNode, createLeafComponent as $7aSLZ$createLeafComponent, createHideableComponent as $7aSLZ$createHideableComponent} from \"@react-aria/collections\";\nimport {filterDOMProps as $7aSLZ$filterDOMProps, useObjectRef as $7aSLZ$useObjectRef, inertValue as $7aSLZ$inertValue} from \"@react-aria/utils\";\nimport {useTabListState as $7aSLZ$useTabListState} from \"react-stately\";\nimport $7aSLZ$react, {createContext as $7aSLZ$createContext, forwardRef as $7aSLZ$forwardRef, useMemo as $7aSLZ$useMemo, useContext as $7aSLZ$useContext} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\n\n\nconst $5e8ad37a45e1c704$export$cfa7aa87c26e7d1f = /*#__PURE__*/ (0, $7aSLZ$createContext)(null);\nconst $5e8ad37a45e1c704$export$364712098d2aa57c = /*#__PURE__*/ (0, $7aSLZ$createContext)(null);\nconst $5e8ad37a45e1c704$export$b2539bed5023c21c = /*#__PURE__*/ (0, $7aSLZ$forwardRef)(function Tabs(props, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $5e8ad37a45e1c704$export$cfa7aa87c26e7d1f);\n let { children: children, orientation: orientation = 'horizontal' } = props;\n children = (0, $7aSLZ$useMemo)(()=>typeof children === 'function' ? children({\n orientation: orientation,\n defaultChildren: null\n }) : children, [\n children,\n orientation\n ]);\n return /*#__PURE__*/ (0, $7aSLZ$react).createElement((0, $7aSLZ$CollectionBuilder), {\n content: children\n }, (collection)=>/*#__PURE__*/ (0, $7aSLZ$react).createElement($5e8ad37a45e1c704$var$TabsInner, {\n props: props,\n collection: collection,\n tabsRef: ref\n }));\n});\nfunction $5e8ad37a45e1c704$var$TabsInner({ props: props, tabsRef: ref, collection: collection }) {\n let { orientation: orientation = 'horizontal' } = props;\n let state = (0, $7aSLZ$useTabListState)({\n ...props,\n collection: collection,\n children: undefined\n });\n let { focusProps: focusProps, isFocused: isFocused, isFocusVisible: isFocusVisible } = (0, $7aSLZ$useFocusRing)({\n within: true\n });\n let values = (0, $7aSLZ$useMemo)(()=>({\n orientation: orientation,\n isFocusWithin: isFocused,\n isFocusVisible: isFocusVisible\n }), [\n orientation,\n isFocused,\n isFocusVisible\n ]);\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-Tabs',\n values: values\n });\n let DOMProps = (0, $7aSLZ$filterDOMProps)(props, {\n global: true\n });\n return /*#__PURE__*/ (0, $7aSLZ$react).createElement(\"div\", {\n ...(0, $7aSLZ$mergeProps)(DOMProps, renderProps, focusProps),\n ref: ref,\n slot: props.slot || undefined,\n \"data-focused\": isFocused || undefined,\n \"data-orientation\": orientation,\n \"data-focus-visible\": isFocusVisible || undefined,\n \"data-disabled\": state.isDisabled || undefined\n }, /*#__PURE__*/ (0, $7aSLZ$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n $5e8ad37a45e1c704$export$cfa7aa87c26e7d1f,\n props\n ],\n [\n $5e8ad37a45e1c704$export$364712098d2aa57c,\n state\n ]\n ]\n }, renderProps.children));\n}\nconst $5e8ad37a45e1c704$export$e51a686c67fdaa2d = /*#__PURE__*/ (0, $7aSLZ$forwardRef)(function TabList(props, ref) {\n let state = (0, $7aSLZ$useContext)($5e8ad37a45e1c704$export$364712098d2aa57c);\n return state ? /*#__PURE__*/ (0, $7aSLZ$react).createElement($5e8ad37a45e1c704$var$TabListInner, {\n props: props,\n forwardedRef: ref\n }) : /*#__PURE__*/ (0, $7aSLZ$react).createElement((0, $7aSLZ$Collection), props);\n});\nfunction $5e8ad37a45e1c704$var$TabListInner({ props: props, forwardedRef: ref }) {\n let state = (0, $7aSLZ$useContext)($5e8ad37a45e1c704$export$364712098d2aa57c);\n let { CollectionRoot: CollectionRoot } = (0, $7aSLZ$useContext)((0, $7135fc7d473fd974$export$4feb769f8ddf26c5));\n let { orientation: orientation = 'horizontal', keyboardActivation: keyboardActivation = 'automatic' } = (0, $64fa3d84918910a7$export$fabf2dc03a41866e)($5e8ad37a45e1c704$export$cfa7aa87c26e7d1f);\n let objectRef = (0, $7aSLZ$useObjectRef)(ref);\n let { tabListProps: tabListProps } = (0, $7aSLZ$useTabList)({\n ...props,\n orientation: orientation,\n keyboardActivation: keyboardActivation\n }, state, objectRef);\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n children: null,\n defaultClassName: 'react-aria-TabList',\n values: {\n orientation: orientation,\n state: state\n }\n });\n let DOMProps = (0, $7aSLZ$filterDOMProps)(props, {\n global: true\n });\n delete DOMProps.id;\n return /*#__PURE__*/ (0, $7aSLZ$react).createElement(\"div\", {\n ...(0, $7aSLZ$mergeProps)(DOMProps, renderProps, tabListProps),\n ref: objectRef,\n \"data-orientation\": orientation || undefined\n }, /*#__PURE__*/ (0, $7aSLZ$react).createElement((0, $c8a5a149f625efcf$export$758399f318e6385a), null, /*#__PURE__*/ (0, $7aSLZ$react).createElement(CollectionRoot, {\n collection: state.collection,\n persistedKeys: (0, $7135fc7d473fd974$export$90e00781bc59d8f9)(state.selectionManager.focusedKey)\n })));\n}\nclass $5e8ad37a45e1c704$var$TabItemNode extends (0, $7aSLZ$CollectionNode) {\n}\n$5e8ad37a45e1c704$var$TabItemNode.type = 'item';\nconst $5e8ad37a45e1c704$export$3e41faf802a29e71 = /*#__PURE__*/ (0, $7aSLZ$createLeafComponent)($5e8ad37a45e1c704$var$TabItemNode, (props, forwardedRef, item)=>{\n let state = (0, $7aSLZ$useContext)($5e8ad37a45e1c704$export$364712098d2aa57c);\n let ref = (0, $7aSLZ$useObjectRef)(forwardedRef);\n let { tabProps: tabProps, isSelected: isSelected, isDisabled: isDisabled, isPressed: isPressed } = (0, $7aSLZ$useTab)({\n key: item.key,\n ...props\n }, state, ref);\n let { focusProps: focusProps, isFocused: isFocused, isFocusVisible: isFocusVisible } = (0, $7aSLZ$useFocusRing)();\n let { hoverProps: hoverProps, isHovered: isHovered } = (0, $7aSLZ$useHover)({\n isDisabled: isDisabled,\n onHoverStart: props.onHoverStart,\n onHoverEnd: props.onHoverEnd,\n onHoverChange: props.onHoverChange\n });\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n id: undefined,\n children: item.rendered,\n defaultClassName: 'react-aria-Tab',\n values: {\n isSelected: isSelected,\n isDisabled: isDisabled,\n isFocused: isFocused,\n isFocusVisible: isFocusVisible,\n isPressed: isPressed,\n isHovered: isHovered\n }\n });\n let ElementType = item.props.href ? 'a' : 'div';\n let DOMProps = (0, $7aSLZ$filterDOMProps)(props, {\n global: true\n });\n delete DOMProps.id;\n delete DOMProps.onClick;\n return /*#__PURE__*/ (0, $7aSLZ$react).createElement(ElementType, {\n ...(0, $7aSLZ$mergeProps)(DOMProps, renderProps, tabProps, focusProps, hoverProps),\n ref: ref,\n \"data-selected\": isSelected || undefined,\n \"data-disabled\": isDisabled || undefined,\n \"data-focused\": isFocused || undefined,\n \"data-focus-visible\": isFocusVisible || undefined,\n \"data-pressed\": isPressed || undefined,\n \"data-hovered\": isHovered || undefined\n }, /*#__PURE__*/ (0, $7aSLZ$react).createElement((0, $1d5b8b8664671ef2$export$c9549807523555e0).Provider, {\n value: {\n isSelected: isSelected\n }\n }, renderProps.children));\n});\nconst $5e8ad37a45e1c704$export$3d96ec278d3efce4 = /*#__PURE__*/ (0, $7aSLZ$createHideableComponent)(function TabPanel(props, forwardedRef) {\n const state = (0, $7aSLZ$useContext)($5e8ad37a45e1c704$export$364712098d2aa57c);\n let ref = (0, $7aSLZ$useObjectRef)(forwardedRef);\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n let { id: id, ...otherProps } = props;\n let { tabPanelProps: tabPanelProps } = (0, $7aSLZ$useTabPanel)(props, state, ref);\n let { focusProps: focusProps, isFocused: isFocused, isFocusVisible: isFocusVisible } = (0, $7aSLZ$useFocusRing)();\n let isSelected = state.selectedKey === props.id;\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-TabPanel',\n values: {\n isFocused: isFocused,\n isFocusVisible: isFocusVisible,\n // @ts-ignore - compatibility with React < 19\n isInert: (0, $7aSLZ$inertValue)(!isSelected),\n state: state\n }\n });\n if (!isSelected && !props.shouldForceMount) return null;\n let DOMProps = (0, $7aSLZ$filterDOMProps)(otherProps, {\n global: true\n });\n delete DOMProps.id;\n let domProps = isSelected ? (0, $7aSLZ$mergeProps)(DOMProps, tabPanelProps, focusProps, renderProps) : renderProps;\n return /*#__PURE__*/ (0, $7aSLZ$react).createElement(\"div\", {\n ...domProps,\n ref: ref,\n \"data-focused\": isFocused || undefined,\n \"data-focus-visible\": isFocusVisible || undefined,\n // @ts-ignore\n inert: (0, $7aSLZ$inertValue)(!isSelected || props.inert),\n \"data-inert\": !isSelected ? 'true' : undefined\n }, /*#__PURE__*/ (0, $7aSLZ$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n $5e8ad37a45e1c704$export$cfa7aa87c26e7d1f,\n null\n ],\n [\n $5e8ad37a45e1c704$export$364712098d2aa57c,\n null\n ]\n ]\n }, /*#__PURE__*/ (0, $7aSLZ$react).createElement((0, $7135fc7d473fd974$export$4feb769f8ddf26c5).Provider, {\n value: (0, $7135fc7d473fd974$export$a164736487e3f0ae)\n }, renderProps.children)));\n});\n\n\nexport {$5e8ad37a45e1c704$export$cfa7aa87c26e7d1f as TabsContext, $5e8ad37a45e1c704$export$364712098d2aa57c as TabListStateContext, $5e8ad37a45e1c704$export$b2539bed5023c21c as Tabs, $5e8ad37a45e1c704$export$e51a686c67fdaa2d as TabList, $5e8ad37a45e1c704$export$3e41faf802a29e71 as Tab, $5e8ad37a45e1c704$export$3d96ec278d3efce4 as TabPanel};\n//# sourceMappingURL=Tabs.module.js.map\n","import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type {\n TabsRootSlotProps,\n TabsListSlotProps,\n TabsTabSlotProps,\n TabsPanelsSlotProps,\n TabsPanelSlotProps,\n} from \"./tabs.types\";\nimport type { SlotComponent } from \"@/utils/slot-types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"tabs\",\n});\n\n/**\n * Root component that provides the styling context for the Tabs component.\n * Uses Chakra UI's recipe context system for consistent styling across instances.\n */\nexport const TabsRootSlot = withProvider<HTMLDivElement, TabsRootSlotProps>(\n \"div\",\n \"root\"\n);\n\nexport const TabsListSlot = withContext<HTMLDivElement, TabsListSlotProps>(\n \"div\",\n \"list\"\n);\n\nexport const TabsTabSlot = withContext<HTMLButtonElement, TabsTabSlotProps>(\n \"button\",\n \"tab\"\n);\n\nexport const TabsPanelsSlot: SlotComponent<\n HTMLDivElement,\n TabsPanelsSlotProps\n> = withContext<HTMLDivElement, TabsPanelsSlotProps>(\"div\", \"panels\");\n\nexport const TabsPanelSlot: SlotComponent<HTMLDivElement, TabsPanelSlotProps> =\n withContext<HTMLDivElement, TabsPanelSlotProps>(\"div\", \"panel\");\n","import { Tab as RATab } from \"react-aria-components\";\nimport { TabsTabSlot } from \"../tabs.slots\";\nimport type { TabProps } from \"../tabs.types\";\n\n/**\n * # Tab\n *\n * An individual tab button that allows users to switch to a specific panel.\n */\nexport const Tab = ({ children, isDisabled, ...props }: TabProps) => {\n return (\n <TabsTabSlot asChild {...props}>\n <RATab isDisabled={isDisabled}>{children}</RATab>\n </TabsTabSlot>\n );\n};\n\nTab.displayName = \"Tabs.Tab\";\n","import { TabList as RATabList } from \"react-aria-components\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport { TabsListSlot } from \"../tabs.slots\";\nimport { Tab } from \"./tabs.tab\";\nimport type { TabListProps, TabItemProps } from \"../tabs.types\";\n\n/**\n * # TabList\n *\n * A container for the tab buttons that allows users to switch between different panels.\n */\nexport const TabList = ({ tabs, children, ...props }: TabListProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n\n // Ensure RATabList always has children - either from tabs or provided children\n if (!tabs && !children) {\n throw new Error(\n 'Tabs.List: Either provide \"tabs\" prop or \"children\" must be provided'\n );\n }\n\n return (\n <TabsListSlot {...styleProps} asChild>\n <RATabList items={tabs as TabItemProps[]} {...restProps}>\n {tabs\n ? (tab: TabItemProps) => (\n <Tab key={tab.id} id={tab.id} isDisabled={tab.isDisabled}>\n {tab.tabLabel}\n </Tab>\n )\n : children}\n </RATabList>\n </TabsListSlot>\n );\n};\n\nTabList.displayName = \"Tabs.List\";\n","import { forwardRef } from \"react\";\nimport { TabPanel as RATabPanel } from \"react-aria-components\";\nimport { TabsPanelSlot } from \"../tabs.slots\";\nimport type { TabPanelProps } from \"../tabs.types\";\n\n/**\n * # TabPanel\n *\n * An individual tab panel that displays panelContent when its corresponding tab is selected.\n */\nexport const TabPanel = forwardRef<HTMLDivElement, TabPanelProps>(\n ({ children, ...props }, ref) => {\n // Ensure TabPanel always has children\n if (!children) {\n throw new Error(\"Tabs.Panel: children prop is required\");\n }\n\n return (\n <TabsPanelSlot asChild ref={ref} {...props}>\n <RATabPanel>{children}</RATabPanel>\n </TabsPanelSlot>\n );\n }\n);\n\nTabPanel.displayName = \"Tabs.Panel\";\n","import { Collection as RaCollection } from \"react-aria-components\";\nimport { TabsPanelsSlot } from \"../tabs.slots\";\nimport { TabPanel } from \"./tabs.panel\";\nimport type { TabItemProps, TabPanelsProps } from \"../tabs.types\";\n\n/**\n * # TabPanels\n *\n * A container for the tab panels that displays panelContent based on the selected tab.\n */\nexport const TabPanels = ({ tabs, children, ...props }: TabPanelsProps) => {\n // Ensure TabPanels always has children - either from tabs or provided children\n if (!tabs && !children) {\n throw new Error(\n 'Tabs.Panels: Either provide \"items\" prop or \"children\" must be provided'\n );\n }\n\n return (\n <TabsPanelsSlot {...props}>\n {tabs ? (\n <RaCollection items={tabs as TabItemProps[]}>\n {(tab: TabItemProps) => (\n <TabPanel key={tab.id} id={tab.id}>\n {tab.panelContent}\n </TabPanel>\n )}\n </RaCollection>\n ) : (\n children\n )}\n </TabsPanelsSlot>\n );\n};\n\nTabPanels.displayName = \"Tabs.Panels\";\n","import { Tabs as RATabs } from \"react-aria-components\";\nimport { TabsRootSlot } from \"../tabs.slots\";\nimport type { TabsProps } from \"../tabs.types\";\nimport { TabList } from \"./tabs.list\";\nimport { TabPanels } from \"./tabs.panels\";\n\n/**\n * # Tabs\n *\n * A tabs component built on React Aria Components that allows users to switch between different views.\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/navigation/tabs}\n */\nexport const TabsRoot = ({\n children,\n orientation = \"horizontal\",\n disabledKeys,\n placement = \"start\",\n size = \"md\",\n tabs,\n ...props\n}: TabsProps) => {\n return (\n <TabsRootSlot\n asChild\n orientation={orientation}\n placement={placement}\n size={size}\n {...props}\n >\n <RATabs disabledKeys={disabledKeys} {...tabs}>\n {children || (\n <>\n <TabList tabs={tabs} />\n <TabPanels tabs={tabs} />\n </>\n )}\n </RATabs>\n </TabsRootSlot>\n );\n};\n\nTabsRoot.displayName = \"Tabs.Root\";\n","import { TabsRoot } from \"./components/tabs.root\";\nimport { TabList } from \"./components/tabs.list\";\nimport { Tab } from \"./components/tabs.tab\";\nimport { TabPanels } from \"./components/tabs.panels\";\nimport { TabPanel } from \"./components/tabs.panel\";\n\nexport const Tabs = {\n Root: TabsRoot,\n List: TabList,\n Tab: Tab,\n Panels: TabPanels,\n Panel: TabPanel,\n};\n\nexport type { TabsProps, TabListProps, TabItemProps } from \"./tabs.types\";\n\n/**\n * todo: get rid of this, this is needed for the react-docgen-typescript script\n * that is parsing the typescript types for our documentation. The _ underscores\n * serve as a reminder that this exports are awkward and should not be used.\n */\nexport {\n TabsRoot as _TabsRoot,\n TabList as _TabList,\n Tab as _Tab,\n TabPanels as _TabPanels,\n TabPanel as _TabPanel,\n};\n"],"names":["$99b62ae3ff97ec45$export$c5f62239608282b6","$99b62ae3ff97ec45$export$567fc7097e064344","state","key","role","baseId","$0175d55c2a017ebc$export$fdf4756d5b8ef90a","props","ref","propsDisabled","shouldSelectOnPressUp","manager","selectedKey","isSelected","isDisabled","itemProps","isPressed","$dObGJ$useSelectableItem","tabId","tabPanelId","tabIndex","item","domProps","$dObGJ$filterDOMProps","linkProps","$dObGJ$useLinkProps","focusableProps","$dObGJ$useFocusable","$dObGJ$mergeProps","$34bce698202e07cb$export$fae0121b5afe572d","$jik2T$useHasTabbableChild","_props_id","id","tabPanelProps","$jik2T$useLabels","$jik2T$mergeProps","$bfc6f2d60b8a4c40$export$15010ca3c1abe90b","_this_collection_getItem_props","_this_collection_getItem","startKey","collection","direction","orientation","disabledKeys","$58d314389b21fa3f$export$773e389e644c5874","keyboardActivation","$bQNZs$useLocale","delegate","$bQNZs$useMemo","collectionProps","$bQNZs$useSelectableCollection","tabsId","$bQNZs$useId","tabListLabelProps","$bQNZs$useLabels","$bQNZs$mergeProps","$76f919a04c5a7d14$export$4ba071daf4e486","_props_defaultSelectedKey","_ref","$fgY1A$useSingleSelectListState","_props_onSelectionChange","$76f919a04c5a7d14$var$findDefaultSelectedKey","selectionManager","currentSelectedKey","lastSelectedKey","$fgY1A$useRef","$fgY1A$useEffect","_collection_getItem_props","_collection_getItem","_collection_getItem_props1","_collection_getItem1","$5e8ad37a45e1c704$export$cfa7aa87c26e7d1f","$7aSLZ$createContext","$5e8ad37a45e1c704$export$364712098d2aa57c","$5e8ad37a45e1c704$export$b2539bed5023c21c","$7aSLZ$forwardRef","$64fa3d84918910a7$export$29f1550f4b0d4415","children","$7aSLZ$useMemo","$7aSLZ$react","$7aSLZ$CollectionBuilder","$5e8ad37a45e1c704$var$TabsInner","$7aSLZ$useTabListState","focusProps","isFocused","isFocusVisible","$7aSLZ$useFocusRing","values","renderProps","$64fa3d84918910a7$export$4d86445c2cf5e3","DOMProps","$7aSLZ$filterDOMProps","$7aSLZ$mergeProps","$64fa3d84918910a7$export$2881499e37b75b9a","$5e8ad37a45e1c704$export$e51a686c67fdaa2d","$7aSLZ$useContext","$5e8ad37a45e1c704$var$TabListInner","$7aSLZ$Collection","CollectionRoot","$7135fc7d473fd974$export$4feb769f8ddf26c5","$64fa3d84918910a7$export$fabf2dc03a41866e","objectRef","$7aSLZ$useObjectRef","tabListProps","$7aSLZ$useTabList","$c8a5a149f625efcf$export$758399f318e6385a","$7135fc7d473fd974$export$90e00781bc59d8f9","$5e8ad37a45e1c704$var$TabItemNode","$7aSLZ$CollectionNode","$5e8ad37a45e1c704$export$3e41faf802a29e71","$7aSLZ$createLeafComponent","forwardedRef","tabProps","$7aSLZ$useTab","hoverProps","isHovered","$7aSLZ$useHover","ElementType","$1d5b8b8664671ef2$export$c9549807523555e0","$5e8ad37a45e1c704$export$3d96ec278d3efce4","$7aSLZ$createHideableComponent","otherProps","$7aSLZ$useTabPanel","$7aSLZ$inertValue","$7135fc7d473fd974$export$a164736487e3f0ae","withProvider","withContext","createSlotRecipeContext","TabsRootSlot","TabsListSlot","TabsTabSlot","TabsPanelsSlot","TabsPanelSlot","Tab","jsx","RATab","TabList","tabs","styleProps","restProps","extractStyleProps","RATabList","tab","TabPanel","forwardRef","RATabPanel","TabPanels","RaCollection","TabsRoot","placement","size","RATabs","jsxs","Fragment","Tabs"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6]}
|
|
1
|
+
{"version":3,"file":"tabs-CJ0OAUSR.cjs.js","sources":["../../../../node_modules/.pnpm/@react-aria+tabs@3.10.8_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@react-aria/tabs/dist/utils.mjs","../../../../node_modules/.pnpm/@react-aria+tabs@3.10.8_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@react-aria/tabs/dist/useTab.mjs","../../../../node_modules/.pnpm/@react-aria+tabs@3.10.8_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@react-aria/tabs/dist/useTabPanel.mjs","../../../../node_modules/.pnpm/@react-aria+tabs@3.10.8_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@react-aria/tabs/dist/TabsKeyboardDelegate.mjs","../../../../node_modules/.pnpm/@react-aria+tabs@3.10.8_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@react-aria/tabs/dist/useTabList.mjs","../../../../node_modules/.pnpm/@react-stately+tabs@3.8.6_react@19.1.0/node_modules/@react-stately/tabs/dist/useTabListState.mjs","../../../../node_modules/.pnpm/react-aria-components@1.13.0_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/react-aria-components/dist/Tabs.mjs","../../src/components/tabs/tabs.slots.tsx","../../src/components/tabs/components/tabs.tab.tsx","../../src/components/tabs/components/tabs.list.tsx","../../src/components/tabs/components/tabs.panel.tsx","../../src/components/tabs/components/tabs.panels.tsx","../../src/components/tabs/components/tabs.root.tsx","../../src/components/tabs/tabs.tsx"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ const $99b62ae3ff97ec45$export$c5f62239608282b6 = new WeakMap();\nfunction $99b62ae3ff97ec45$export$567fc7097e064344(state, key, role) {\n if (!state) // this case should only happen in the first render before the tabs are registered\n return '';\n if (typeof key === 'string') key = key.replace(/\\s+/g, '');\n let baseId = $99b62ae3ff97ec45$export$c5f62239608282b6.get(state);\n if (process.env.NODE_ENV !== 'production' && !baseId) console.error('There is no tab id, please check if you have rendered the tab panel before the tab list.');\n return `${baseId}-${role}-${key}`;\n}\n\n\nexport {$99b62ae3ff97ec45$export$c5f62239608282b6 as tabsIds, $99b62ae3ff97ec45$export$567fc7097e064344 as generateId};\n//# sourceMappingURL=utils.module.js.map\n","import {generateId as $99b62ae3ff97ec45$export$567fc7097e064344} from \"./utils.mjs\";\nimport {filterDOMProps as $dObGJ$filterDOMProps, useLinkProps as $dObGJ$useLinkProps, mergeProps as $dObGJ$mergeProps} from \"@react-aria/utils\";\nimport {useFocusable as $dObGJ$useFocusable} from \"@react-aria/focus\";\nimport {useSelectableItem as $dObGJ$useSelectableItem} from \"@react-aria/selection\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\nfunction $0175d55c2a017ebc$export$fdf4756d5b8ef90a(props, state, ref) {\n let { key: key, isDisabled: propsDisabled, shouldSelectOnPressUp: shouldSelectOnPressUp } = props;\n let { selectionManager: manager, selectedKey: selectedKey } = state;\n let isSelected = key === selectedKey;\n let isDisabled = propsDisabled || state.isDisabled || state.selectionManager.isDisabled(key);\n let { itemProps: itemProps, isPressed: isPressed } = (0, $dObGJ$useSelectableItem)({\n selectionManager: manager,\n key: key,\n ref: ref,\n isDisabled: isDisabled,\n shouldSelectOnPressUp: shouldSelectOnPressUp,\n linkBehavior: 'selection'\n });\n let tabId = (0, $99b62ae3ff97ec45$export$567fc7097e064344)(state, key, 'tab');\n let tabPanelId = (0, $99b62ae3ff97ec45$export$567fc7097e064344)(state, key, 'tabpanel');\n let { tabIndex: tabIndex } = itemProps;\n let item = state.collection.getItem(key);\n let domProps = (0, $dObGJ$filterDOMProps)(item === null || item === void 0 ? void 0 : item.props, {\n labelable: true\n });\n delete domProps.id;\n let linkProps = (0, $dObGJ$useLinkProps)(item === null || item === void 0 ? void 0 : item.props);\n let { focusableProps: focusableProps } = (0, $dObGJ$useFocusable)({\n isDisabled: isDisabled\n }, ref);\n return {\n tabProps: (0, $dObGJ$mergeProps)(domProps, focusableProps, linkProps, itemProps, {\n id: tabId,\n 'aria-selected': isSelected,\n 'aria-disabled': isDisabled || undefined,\n 'aria-controls': isSelected ? tabPanelId : undefined,\n tabIndex: isDisabled ? undefined : tabIndex,\n role: 'tab'\n }),\n isSelected: isSelected,\n isDisabled: isDisabled,\n isPressed: isPressed\n };\n}\n\n\nexport {$0175d55c2a017ebc$export$fdf4756d5b8ef90a as useTab};\n//# sourceMappingURL=useTab.module.js.map\n","import {generateId as $99b62ae3ff97ec45$export$567fc7097e064344} from \"./utils.mjs\";\nimport {useLabels as $jik2T$useLabels, mergeProps as $jik2T$mergeProps} from \"@react-aria/utils\";\nimport {useHasTabbableChild as $jik2T$useHasTabbableChild} from \"@react-aria/focus\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $34bce698202e07cb$export$fae0121b5afe572d(props, state, ref) {\n // The tabpanel should have tabIndex=0 when there are no tabbable elements within it.\n // Otherwise, tabbing from the focused tab should go directly to the first tabbable element\n // within the tabpanel.\n let tabIndex = (0, $jik2T$useHasTabbableChild)(ref) ? undefined : 0;\n var _props_id;\n const id = (0, $99b62ae3ff97ec45$export$567fc7097e064344)(state, (_props_id = props.id) !== null && _props_id !== void 0 ? _props_id : state === null || state === void 0 ? void 0 : state.selectedKey, 'tabpanel');\n const tabPanelProps = (0, $jik2T$useLabels)({\n ...props,\n id: id,\n 'aria-labelledby': (0, $99b62ae3ff97ec45$export$567fc7097e064344)(state, state === null || state === void 0 ? void 0 : state.selectedKey, 'tab')\n });\n return {\n tabPanelProps: (0, $jik2T$mergeProps)(tabPanelProps, {\n tabIndex: tabIndex,\n role: 'tabpanel',\n 'aria-describedby': props['aria-describedby'],\n 'aria-details': props['aria-details']\n })\n };\n}\n\n\nexport {$34bce698202e07cb$export$fae0121b5afe572d as useTabPanel};\n//# sourceMappingURL=useTabPanel.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ class $bfc6f2d60b8a4c40$export$15010ca3c1abe90b {\n getKeyLeftOf(key) {\n if (this.flipDirection) return this.getNextKey(key);\n return this.getPreviousKey(key);\n }\n getKeyRightOf(key) {\n if (this.flipDirection) return this.getPreviousKey(key);\n return this.getNextKey(key);\n }\n isDisabled(key) {\n var _this_collection_getItem_props, _this_collection_getItem;\n return this.disabledKeys.has(key) || !!((_this_collection_getItem = this.collection.getItem(key)) === null || _this_collection_getItem === void 0 ? void 0 : (_this_collection_getItem_props = _this_collection_getItem.props) === null || _this_collection_getItem_props === void 0 ? void 0 : _this_collection_getItem_props.isDisabled);\n }\n getFirstKey() {\n let key = this.collection.getFirstKey();\n if (key != null && this.isDisabled(key)) key = this.getNextKey(key);\n return key;\n }\n getLastKey() {\n let key = this.collection.getLastKey();\n if (key != null && this.isDisabled(key)) key = this.getPreviousKey(key);\n return key;\n }\n getKeyAbove(key) {\n if (this.tabDirection) return null;\n return this.getPreviousKey(key);\n }\n getKeyBelow(key) {\n if (this.tabDirection) return null;\n return this.getNextKey(key);\n }\n getNextKey(startKey) {\n let key = startKey;\n do {\n key = this.collection.getKeyAfter(key);\n if (key == null) key = this.collection.getFirstKey();\n }while (key != null && this.isDisabled(key));\n return key;\n }\n getPreviousKey(startKey) {\n let key = startKey;\n do {\n key = this.collection.getKeyBefore(key);\n if (key == null) key = this.collection.getLastKey();\n }while (key != null && this.isDisabled(key));\n return key;\n }\n constructor(collection, direction, orientation, disabledKeys = new Set()){\n this.collection = collection;\n this.flipDirection = direction === 'rtl' && orientation === 'horizontal';\n this.disabledKeys = disabledKeys;\n this.tabDirection = orientation === 'horizontal';\n }\n}\n\n\nexport {$bfc6f2d60b8a4c40$export$15010ca3c1abe90b as TabsKeyboardDelegate};\n//# sourceMappingURL=TabsKeyboardDelegate.module.js.map\n","import {tabsIds as $99b62ae3ff97ec45$export$c5f62239608282b6} from \"./utils.mjs\";\nimport {TabsKeyboardDelegate as $bfc6f2d60b8a4c40$export$15010ca3c1abe90b} from \"./TabsKeyboardDelegate.mjs\";\nimport {useId as $bQNZs$useId, useLabels as $bQNZs$useLabels, mergeProps as $bQNZs$mergeProps} from \"@react-aria/utils\";\nimport {useLocale as $bQNZs$useLocale} from \"@react-aria/i18n\";\nimport {useMemo as $bQNZs$useMemo} from \"react\";\nimport {useSelectableCollection as $bQNZs$useSelectableCollection} from \"@react-aria/selection\";\n\n/*\n* Copyright 2020 Adobe. All rights reserved.\n* This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License. You may obtain a copy\n* of the License at http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software distributed under\n* the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n* OF ANY KIND, either express or implied. See the License for the specific language\n* governing permissions and limitations under the License.\n*/ \n\n\n\n\n\nfunction $58d314389b21fa3f$export$773e389e644c5874(props, state, ref) {\n let { orientation: orientation = 'horizontal', keyboardActivation: keyboardActivation = 'automatic' } = props;\n let { collection: collection, selectionManager: manager, disabledKeys: disabledKeys } = state;\n let { direction: direction } = (0, $bQNZs$useLocale)();\n let delegate = (0, $bQNZs$useMemo)(()=>new (0, $bfc6f2d60b8a4c40$export$15010ca3c1abe90b)(collection, direction, orientation, disabledKeys), [\n collection,\n disabledKeys,\n orientation,\n direction\n ]);\n let { collectionProps: collectionProps } = (0, $bQNZs$useSelectableCollection)({\n ref: ref,\n selectionManager: manager,\n keyboardDelegate: delegate,\n selectOnFocus: keyboardActivation === 'automatic',\n disallowEmptySelection: true,\n scrollRef: ref,\n linkBehavior: 'selection'\n });\n // Compute base id for all tabs\n let tabsId = (0, $bQNZs$useId)();\n (0, $99b62ae3ff97ec45$export$c5f62239608282b6).set(state, tabsId);\n let tabListLabelProps = (0, $bQNZs$useLabels)({\n ...props,\n id: tabsId\n });\n return {\n tabListProps: {\n ...(0, $bQNZs$mergeProps)(collectionProps, tabListLabelProps),\n role: 'tablist',\n 'aria-orientation': orientation,\n tabIndex: undefined\n }\n };\n}\n\n\nexport {$58d314389b21fa3f$export$773e389e644c5874 as useTabList};\n//# sourceMappingURL=useTabList.module.js.map\n","import {useSingleSelectListState as $fgY1A$useSingleSelectListState} from \"@react-stately/list\";\nimport {useRef as $fgY1A$useRef, useEffect as $fgY1A$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $76f919a04c5a7d14$export$4ba071daf4e486(props) {\n var _props_defaultSelectedKey, _ref;\n let state = (0, $fgY1A$useSingleSelectListState)({\n ...props,\n onSelectionChange: props.onSelectionChange ? (key)=>{\n var _props_onSelectionChange;\n if (key != null) (_props_onSelectionChange = props.onSelectionChange) === null || _props_onSelectionChange === void 0 ? void 0 : _props_onSelectionChange.call(props, key);\n } : undefined,\n suppressTextValueWarning: true,\n defaultSelectedKey: (_ref = (_props_defaultSelectedKey = props.defaultSelectedKey) !== null && _props_defaultSelectedKey !== void 0 ? _props_defaultSelectedKey : $76f919a04c5a7d14$var$findDefaultSelectedKey(props.collection, props.disabledKeys ? new Set(props.disabledKeys) : new Set())) !== null && _ref !== void 0 ? _ref : undefined\n });\n let { selectionManager: selectionManager, collection: collection, selectedKey: currentSelectedKey } = state;\n let lastSelectedKey = (0, $fgY1A$useRef)(currentSelectedKey);\n (0, $fgY1A$useEffect)(()=>{\n // Ensure a tab is always selected (in case no selected key was specified or if selected item was deleted from collection)\n let selectedKey = currentSelectedKey;\n if (props.selectedKey == null && (selectionManager.isEmpty || selectedKey == null || !collection.getItem(selectedKey))) {\n selectedKey = $76f919a04c5a7d14$var$findDefaultSelectedKey(collection, state.disabledKeys);\n if (selectedKey != null) // directly set selection because replace/toggle selection won't consider disabled keys\n selectionManager.setSelectedKeys([\n selectedKey\n ]);\n }\n // If the tablist doesn't have focus and the selected key changes or if there isn't a focused key yet, change focused key to the selected key if it exists.\n if (selectedKey != null && selectionManager.focusedKey == null || !selectionManager.isFocused && selectedKey !== lastSelectedKey.current) selectionManager.setFocusedKey(selectedKey);\n lastSelectedKey.current = selectedKey;\n });\n return {\n ...state,\n isDisabled: props.isDisabled || false\n };\n}\nfunction $76f919a04c5a7d14$var$findDefaultSelectedKey(collection, disabledKeys) {\n let selectedKey = null;\n if (collection) {\n var _collection_getItem_props, _collection_getItem, _collection_getItem_props1, _collection_getItem1;\n selectedKey = collection.getFirstKey();\n // loop over tabs until we find one that isn't disabled and select that\n while(selectedKey != null && (disabledKeys.has(selectedKey) || ((_collection_getItem = collection.getItem(selectedKey)) === null || _collection_getItem === void 0 ? void 0 : (_collection_getItem_props = _collection_getItem.props) === null || _collection_getItem_props === void 0 ? void 0 : _collection_getItem_props.isDisabled)) && selectedKey !== collection.getLastKey())selectedKey = collection.getKeyAfter(selectedKey);\n // if this check is true, then every item is disabled, it makes more sense to default to the first key than the last\n if (selectedKey != null && (disabledKeys.has(selectedKey) || ((_collection_getItem1 = collection.getItem(selectedKey)) === null || _collection_getItem1 === void 0 ? void 0 : (_collection_getItem_props1 = _collection_getItem1.props) === null || _collection_getItem_props1 === void 0 ? void 0 : _collection_getItem_props1.isDisabled)) && selectedKey === collection.getLastKey()) selectedKey = collection.getFirstKey();\n }\n return selectedKey;\n}\n\n\nexport {$76f919a04c5a7d14$export$4ba071daf4e486 as useTabListState};\n//# sourceMappingURL=useTabListState.module.js.map\n","import {CollectionRendererContext as $7135fc7d473fd974$export$4feb769f8ddf26c5, DefaultCollectionRenderer as $7135fc7d473fd974$export$a164736487e3f0ae, usePersistedKeys as $7135fc7d473fd974$export$90e00781bc59d8f9} from \"./Collection.mjs\";\nimport {Provider as $64fa3d84918910a7$export$2881499e37b75b9a, useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415, useRenderProps as $64fa3d84918910a7$export$4d86445c2cf5e3, useSlottedContext as $64fa3d84918910a7$export$fabf2dc03a41866e} from \"./utils.mjs\";\nimport {SelectionIndicatorContext as $1d5b8b8664671ef2$export$c9549807523555e0} from \"./SelectionIndicator.mjs\";\nimport {SharedElementTransition as $c8a5a149f625efcf$export$758399f318e6385a} from \"./SharedElementTransition.mjs\";\nimport {useFocusRing as $7aSLZ$useFocusRing, mergeProps as $7aSLZ$mergeProps, useTabList as $7aSLZ$useTabList, useTab as $7aSLZ$useTab, useHover as $7aSLZ$useHover, useTabPanel as $7aSLZ$useTabPanel} from \"react-aria\";\nimport {CollectionBuilder as $7aSLZ$CollectionBuilder, Collection as $7aSLZ$Collection, CollectionNode as $7aSLZ$CollectionNode, createLeafComponent as $7aSLZ$createLeafComponent, createHideableComponent as $7aSLZ$createHideableComponent} from \"@react-aria/collections\";\nimport {filterDOMProps as $7aSLZ$filterDOMProps, useObjectRef as $7aSLZ$useObjectRef, inertValue as $7aSLZ$inertValue} from \"@react-aria/utils\";\nimport {useTabListState as $7aSLZ$useTabListState} from \"react-stately\";\nimport $7aSLZ$react, {createContext as $7aSLZ$createContext, forwardRef as $7aSLZ$forwardRef, useMemo as $7aSLZ$useMemo, useContext as $7aSLZ$useContext} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\n\n\nconst $5e8ad37a45e1c704$export$cfa7aa87c26e7d1f = /*#__PURE__*/ (0, $7aSLZ$createContext)(null);\nconst $5e8ad37a45e1c704$export$364712098d2aa57c = /*#__PURE__*/ (0, $7aSLZ$createContext)(null);\nconst $5e8ad37a45e1c704$export$b2539bed5023c21c = /*#__PURE__*/ (0, $7aSLZ$forwardRef)(function Tabs(props, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $5e8ad37a45e1c704$export$cfa7aa87c26e7d1f);\n let { children: children, orientation: orientation = 'horizontal' } = props;\n children = (0, $7aSLZ$useMemo)(()=>typeof children === 'function' ? children({\n orientation: orientation,\n defaultChildren: null\n }) : children, [\n children,\n orientation\n ]);\n return /*#__PURE__*/ (0, $7aSLZ$react).createElement((0, $7aSLZ$CollectionBuilder), {\n content: children\n }, (collection)=>/*#__PURE__*/ (0, $7aSLZ$react).createElement($5e8ad37a45e1c704$var$TabsInner, {\n props: props,\n collection: collection,\n tabsRef: ref\n }));\n});\nfunction $5e8ad37a45e1c704$var$TabsInner({ props: props, tabsRef: ref, collection: collection }) {\n let { orientation: orientation = 'horizontal' } = props;\n let state = (0, $7aSLZ$useTabListState)({\n ...props,\n collection: collection,\n children: undefined\n });\n let { focusProps: focusProps, isFocused: isFocused, isFocusVisible: isFocusVisible } = (0, $7aSLZ$useFocusRing)({\n within: true\n });\n let values = (0, $7aSLZ$useMemo)(()=>({\n orientation: orientation,\n isFocusWithin: isFocused,\n isFocusVisible: isFocusVisible\n }), [\n orientation,\n isFocused,\n isFocusVisible\n ]);\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-Tabs',\n values: values\n });\n let DOMProps = (0, $7aSLZ$filterDOMProps)(props, {\n global: true\n });\n return /*#__PURE__*/ (0, $7aSLZ$react).createElement(\"div\", {\n ...(0, $7aSLZ$mergeProps)(DOMProps, renderProps, focusProps),\n ref: ref,\n slot: props.slot || undefined,\n \"data-focused\": isFocused || undefined,\n \"data-orientation\": orientation,\n \"data-focus-visible\": isFocusVisible || undefined,\n \"data-disabled\": state.isDisabled || undefined\n }, /*#__PURE__*/ (0, $7aSLZ$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n $5e8ad37a45e1c704$export$cfa7aa87c26e7d1f,\n props\n ],\n [\n $5e8ad37a45e1c704$export$364712098d2aa57c,\n state\n ]\n ]\n }, renderProps.children));\n}\nconst $5e8ad37a45e1c704$export$e51a686c67fdaa2d = /*#__PURE__*/ (0, $7aSLZ$forwardRef)(function TabList(props, ref) {\n let state = (0, $7aSLZ$useContext)($5e8ad37a45e1c704$export$364712098d2aa57c);\n return state ? /*#__PURE__*/ (0, $7aSLZ$react).createElement($5e8ad37a45e1c704$var$TabListInner, {\n props: props,\n forwardedRef: ref\n }) : /*#__PURE__*/ (0, $7aSLZ$react).createElement((0, $7aSLZ$Collection), props);\n});\nfunction $5e8ad37a45e1c704$var$TabListInner({ props: props, forwardedRef: ref }) {\n let state = (0, $7aSLZ$useContext)($5e8ad37a45e1c704$export$364712098d2aa57c);\n let { CollectionRoot: CollectionRoot } = (0, $7aSLZ$useContext)((0, $7135fc7d473fd974$export$4feb769f8ddf26c5));\n let { orientation: orientation = 'horizontal', keyboardActivation: keyboardActivation = 'automatic' } = (0, $64fa3d84918910a7$export$fabf2dc03a41866e)($5e8ad37a45e1c704$export$cfa7aa87c26e7d1f);\n let objectRef = (0, $7aSLZ$useObjectRef)(ref);\n let { tabListProps: tabListProps } = (0, $7aSLZ$useTabList)({\n ...props,\n orientation: orientation,\n keyboardActivation: keyboardActivation\n }, state, objectRef);\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n children: null,\n defaultClassName: 'react-aria-TabList',\n values: {\n orientation: orientation,\n state: state\n }\n });\n let DOMProps = (0, $7aSLZ$filterDOMProps)(props, {\n global: true\n });\n delete DOMProps.id;\n return /*#__PURE__*/ (0, $7aSLZ$react).createElement(\"div\", {\n ...(0, $7aSLZ$mergeProps)(DOMProps, renderProps, tabListProps),\n ref: objectRef,\n \"data-orientation\": orientation || undefined\n }, /*#__PURE__*/ (0, $7aSLZ$react).createElement((0, $c8a5a149f625efcf$export$758399f318e6385a), null, /*#__PURE__*/ (0, $7aSLZ$react).createElement(CollectionRoot, {\n collection: state.collection,\n persistedKeys: (0, $7135fc7d473fd974$export$90e00781bc59d8f9)(state.selectionManager.focusedKey)\n })));\n}\nclass $5e8ad37a45e1c704$var$TabItemNode extends (0, $7aSLZ$CollectionNode) {\n}\n$5e8ad37a45e1c704$var$TabItemNode.type = 'item';\nconst $5e8ad37a45e1c704$export$3e41faf802a29e71 = /*#__PURE__*/ (0, $7aSLZ$createLeafComponent)($5e8ad37a45e1c704$var$TabItemNode, (props, forwardedRef, item)=>{\n let state = (0, $7aSLZ$useContext)($5e8ad37a45e1c704$export$364712098d2aa57c);\n let ref = (0, $7aSLZ$useObjectRef)(forwardedRef);\n let { tabProps: tabProps, isSelected: isSelected, isDisabled: isDisabled, isPressed: isPressed } = (0, $7aSLZ$useTab)({\n key: item.key,\n ...props\n }, state, ref);\n let { focusProps: focusProps, isFocused: isFocused, isFocusVisible: isFocusVisible } = (0, $7aSLZ$useFocusRing)();\n let { hoverProps: hoverProps, isHovered: isHovered } = (0, $7aSLZ$useHover)({\n isDisabled: isDisabled,\n onHoverStart: props.onHoverStart,\n onHoverEnd: props.onHoverEnd,\n onHoverChange: props.onHoverChange\n });\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n id: undefined,\n children: item.rendered,\n defaultClassName: 'react-aria-Tab',\n values: {\n isSelected: isSelected,\n isDisabled: isDisabled,\n isFocused: isFocused,\n isFocusVisible: isFocusVisible,\n isPressed: isPressed,\n isHovered: isHovered\n }\n });\n let ElementType = item.props.href ? 'a' : 'div';\n let DOMProps = (0, $7aSLZ$filterDOMProps)(props, {\n global: true\n });\n delete DOMProps.id;\n delete DOMProps.onClick;\n return /*#__PURE__*/ (0, $7aSLZ$react).createElement(ElementType, {\n ...(0, $7aSLZ$mergeProps)(DOMProps, renderProps, tabProps, focusProps, hoverProps),\n ref: ref,\n \"data-selected\": isSelected || undefined,\n \"data-disabled\": isDisabled || undefined,\n \"data-focused\": isFocused || undefined,\n \"data-focus-visible\": isFocusVisible || undefined,\n \"data-pressed\": isPressed || undefined,\n \"data-hovered\": isHovered || undefined\n }, /*#__PURE__*/ (0, $7aSLZ$react).createElement((0, $1d5b8b8664671ef2$export$c9549807523555e0).Provider, {\n value: {\n isSelected: isSelected\n }\n }, renderProps.children));\n});\nconst $5e8ad37a45e1c704$export$3d96ec278d3efce4 = /*#__PURE__*/ (0, $7aSLZ$createHideableComponent)(function TabPanel(props, forwardedRef) {\n const state = (0, $7aSLZ$useContext)($5e8ad37a45e1c704$export$364712098d2aa57c);\n let ref = (0, $7aSLZ$useObjectRef)(forwardedRef);\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n let { id: id, ...otherProps } = props;\n let { tabPanelProps: tabPanelProps } = (0, $7aSLZ$useTabPanel)(props, state, ref);\n let { focusProps: focusProps, isFocused: isFocused, isFocusVisible: isFocusVisible } = (0, $7aSLZ$useFocusRing)();\n let isSelected = state.selectedKey === props.id;\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-TabPanel',\n values: {\n isFocused: isFocused,\n isFocusVisible: isFocusVisible,\n // @ts-ignore - compatibility with React < 19\n isInert: (0, $7aSLZ$inertValue)(!isSelected),\n state: state\n }\n });\n if (!isSelected && !props.shouldForceMount) return null;\n let DOMProps = (0, $7aSLZ$filterDOMProps)(otherProps, {\n global: true\n });\n delete DOMProps.id;\n let domProps = isSelected ? (0, $7aSLZ$mergeProps)(DOMProps, tabPanelProps, focusProps, renderProps) : renderProps;\n return /*#__PURE__*/ (0, $7aSLZ$react).createElement(\"div\", {\n ...domProps,\n ref: ref,\n \"data-focused\": isFocused || undefined,\n \"data-focus-visible\": isFocusVisible || undefined,\n // @ts-ignore\n inert: (0, $7aSLZ$inertValue)(!isSelected || props.inert),\n \"data-inert\": !isSelected ? 'true' : undefined\n }, /*#__PURE__*/ (0, $7aSLZ$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n $5e8ad37a45e1c704$export$cfa7aa87c26e7d1f,\n null\n ],\n [\n $5e8ad37a45e1c704$export$364712098d2aa57c,\n null\n ]\n ]\n }, /*#__PURE__*/ (0, $7aSLZ$react).createElement((0, $7135fc7d473fd974$export$4feb769f8ddf26c5).Provider, {\n value: (0, $7135fc7d473fd974$export$a164736487e3f0ae)\n }, renderProps.children)));\n});\n\n\nexport {$5e8ad37a45e1c704$export$cfa7aa87c26e7d1f as TabsContext, $5e8ad37a45e1c704$export$364712098d2aa57c as TabListStateContext, $5e8ad37a45e1c704$export$b2539bed5023c21c as Tabs, $5e8ad37a45e1c704$export$e51a686c67fdaa2d as TabList, $5e8ad37a45e1c704$export$3e41faf802a29e71 as Tab, $5e8ad37a45e1c704$export$3d96ec278d3efce4 as TabPanel};\n//# sourceMappingURL=Tabs.module.js.map\n","import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type {\n TabsRootSlotProps,\n TabsListSlotProps,\n TabsTabSlotProps,\n TabsPanelsSlotProps,\n TabsPanelSlotProps,\n} from \"./tabs.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"tabs\",\n});\n\n/**\n * Root component that provides the styling context for the Tabs component.\n * Uses Chakra UI's recipe context system for consistent styling across instances.\n */\nexport const TabsRootSlot = withProvider<HTMLDivElement, TabsRootSlotProps>(\n \"div\",\n \"root\"\n);\n\nexport const TabsListSlot = withContext<HTMLDivElement, TabsListSlotProps>(\n \"div\",\n \"list\"\n);\n\nexport const TabsTabSlot = withContext<HTMLButtonElement, TabsTabSlotProps>(\n \"button\",\n \"tab\"\n);\n\nexport const TabsPanelsSlot: SlotComponent<\n HTMLDivElement,\n TabsPanelsSlotProps\n> = withContext<HTMLDivElement, TabsPanelsSlotProps>(\"div\", \"panels\");\n\nexport const TabsPanelSlot: SlotComponent<HTMLDivElement, TabsPanelSlotProps> =\n withContext<HTMLDivElement, TabsPanelSlotProps>(\"div\", \"panel\");\n","import { Tab as RATab } from \"react-aria-components\";\nimport { TabsTabSlot } from \"../tabs.slots\";\nimport type { TabProps } from \"../tabs.types\";\n\n/**\n * # Tab\n *\n * An individual tab button that allows users to switch to a specific panel.\n */\nexport const Tab = ({ children, isDisabled, ...props }: TabProps) => {\n return (\n <TabsTabSlot asChild {...props}>\n <RATab isDisabled={isDisabled}>{children}</RATab>\n </TabsTabSlot>\n );\n};\n\nTab.displayName = \"Tabs.Tab\";\n","import { TabList as RATabList } from \"react-aria-components\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport { TabsListSlot } from \"../tabs.slots\";\nimport { Tab } from \"./tabs.tab\";\nimport type { TabListProps, TabItemProps } from \"../tabs.types\";\n\n/**\n * # TabList\n *\n * A container for the tab buttons that allows users to switch between different panels.\n */\nexport const TabList = ({ tabs, children, ...props }: TabListProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n\n // Ensure RATabList always has children - either from tabs or provided children\n if (!tabs && !children) {\n throw new Error(\n 'Tabs.List: Either provide \"tabs\" prop or \"children\" must be provided'\n );\n }\n\n return (\n <TabsListSlot {...styleProps} asChild>\n <RATabList items={tabs as TabItemProps[]} {...restProps}>\n {tabs\n ? (tab: TabItemProps) => (\n <Tab key={tab.id} id={tab.id} isDisabled={tab.isDisabled}>\n {tab.tabLabel}\n </Tab>\n )\n : children}\n </RATabList>\n </TabsListSlot>\n );\n};\n\nTabList.displayName = \"Tabs.List\";\n","import { forwardRef } from \"react\";\nimport { TabPanel as RATabPanel } from \"react-aria-components\";\nimport { TabsPanelSlot } from \"../tabs.slots\";\nimport type { TabPanelProps } from \"../tabs.types\";\n\n/**\n * # TabPanel\n *\n * An individual tab panel that displays panelContent when its corresponding tab is selected.\n */\nexport const TabPanel = forwardRef<HTMLDivElement, TabPanelProps>(\n ({ children, ...props }, ref) => {\n // Ensure TabPanel always has children\n if (!children) {\n throw new Error(\"Tabs.Panel: children prop is required\");\n }\n\n return (\n <TabsPanelSlot asChild ref={ref} {...props}>\n <RATabPanel>{children}</RATabPanel>\n </TabsPanelSlot>\n );\n }\n);\n\nTabPanel.displayName = \"Tabs.Panel\";\n","import { Collection as RaCollection } from \"react-aria-components\";\nimport { TabsPanelsSlot } from \"../tabs.slots\";\nimport { TabPanel } from \"./tabs.panel\";\nimport type { TabItemProps, TabPanelsProps } from \"../tabs.types\";\n\n/**\n * # TabPanels\n *\n * A container for the tab panels that displays panelContent based on the selected tab.\n */\nexport const TabPanels = ({ tabs, children, ...props }: TabPanelsProps) => {\n // Ensure TabPanels always has children - either from tabs or provided children\n if (!tabs && !children) {\n throw new Error(\n 'Tabs.Panels: Either provide \"items\" prop or \"children\" must be provided'\n );\n }\n\n return (\n <TabsPanelsSlot {...props}>\n {tabs ? (\n <RaCollection items={tabs as TabItemProps[]}>\n {(tab: TabItemProps) => (\n <TabPanel key={tab.id} id={tab.id}>\n {tab.panelContent}\n </TabPanel>\n )}\n </RaCollection>\n ) : (\n children\n )}\n </TabsPanelsSlot>\n );\n};\n\nTabPanels.displayName = \"Tabs.Panels\";\n","import { Tabs as RATabs } from \"react-aria-components\";\nimport { TabsRootSlot } from \"../tabs.slots\";\nimport type { TabsProps } from \"../tabs.types\";\nimport { TabList } from \"./tabs.list\";\nimport { TabPanels } from \"./tabs.panels\";\n\n/**\n * # Tabs\n *\n * A tabs component built on React Aria Components that allows users to switch between different views.\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/navigation/tabs}\n */\nexport const TabsRoot = ({\n children,\n orientation = \"horizontal\",\n disabledKeys,\n placement = \"start\",\n size = \"md\",\n tabs,\n ...props\n}: TabsProps) => {\n return (\n <TabsRootSlot\n asChild\n orientation={orientation}\n placement={placement}\n size={size}\n {...props}\n >\n <RATabs disabledKeys={disabledKeys} {...tabs}>\n {children || (\n <>\n <TabList tabs={tabs} />\n <TabPanels tabs={tabs} />\n </>\n )}\n </RATabs>\n </TabsRootSlot>\n );\n};\n\nTabsRoot.displayName = \"Tabs.Root\";\n","import { TabsRoot } from \"./components/tabs.root\";\nimport { TabList } from \"./components/tabs.list\";\nimport { Tab } from \"./components/tabs.tab\";\nimport { TabPanels } from \"./components/tabs.panels\";\nimport { TabPanel } from \"./components/tabs.panel\";\n\nexport const Tabs = {\n Root: TabsRoot,\n List: TabList,\n Tab: Tab,\n Panels: TabPanels,\n Panel: TabPanel,\n};\n\nexport type { TabsProps, TabListProps, TabItemProps } from \"./tabs.types\";\n\n/**\n * todo: get rid of this, this is needed for the react-docgen-typescript script\n * that is parsing the typescript types for our documentation. The _ underscores\n * serve as a reminder that this exports are awkward and should not be used.\n */\nexport {\n TabsRoot as _TabsRoot,\n TabList as _TabList,\n Tab as _Tab,\n TabPanels as _TabPanels,\n TabPanel as _TabPanel,\n};\n"],"names":["$99b62ae3ff97ec45$export$c5f62239608282b6","$99b62ae3ff97ec45$export$567fc7097e064344","state","key","role","baseId","$0175d55c2a017ebc$export$fdf4756d5b8ef90a","props","ref","propsDisabled","shouldSelectOnPressUp","manager","selectedKey","isSelected","isDisabled","itemProps","isPressed","$dObGJ$useSelectableItem","tabId","tabPanelId","tabIndex","item","domProps","$dObGJ$filterDOMProps","linkProps","$dObGJ$useLinkProps","focusableProps","$dObGJ$useFocusable","$dObGJ$mergeProps","$34bce698202e07cb$export$fae0121b5afe572d","$jik2T$useHasTabbableChild","_props_id","id","tabPanelProps","$jik2T$useLabels","$jik2T$mergeProps","$bfc6f2d60b8a4c40$export$15010ca3c1abe90b","_this_collection_getItem_props","_this_collection_getItem","startKey","collection","direction","orientation","disabledKeys","$58d314389b21fa3f$export$773e389e644c5874","keyboardActivation","$bQNZs$useLocale","delegate","$bQNZs$useMemo","collectionProps","$bQNZs$useSelectableCollection","tabsId","$bQNZs$useId","tabListLabelProps","$bQNZs$useLabels","$bQNZs$mergeProps","$76f919a04c5a7d14$export$4ba071daf4e486","_props_defaultSelectedKey","_ref","$fgY1A$useSingleSelectListState","_props_onSelectionChange","$76f919a04c5a7d14$var$findDefaultSelectedKey","selectionManager","currentSelectedKey","lastSelectedKey","$fgY1A$useRef","$fgY1A$useEffect","_collection_getItem_props","_collection_getItem","_collection_getItem_props1","_collection_getItem1","$5e8ad37a45e1c704$export$cfa7aa87c26e7d1f","$7aSLZ$createContext","$5e8ad37a45e1c704$export$364712098d2aa57c","$5e8ad37a45e1c704$export$b2539bed5023c21c","$7aSLZ$forwardRef","$64fa3d84918910a7$export$29f1550f4b0d4415","children","$7aSLZ$useMemo","$7aSLZ$react","$7aSLZ$CollectionBuilder","$5e8ad37a45e1c704$var$TabsInner","$7aSLZ$useTabListState","focusProps","isFocused","isFocusVisible","$7aSLZ$useFocusRing","values","renderProps","$64fa3d84918910a7$export$4d86445c2cf5e3","DOMProps","$7aSLZ$filterDOMProps","$7aSLZ$mergeProps","$64fa3d84918910a7$export$2881499e37b75b9a","$5e8ad37a45e1c704$export$e51a686c67fdaa2d","$7aSLZ$useContext","$5e8ad37a45e1c704$var$TabListInner","$7aSLZ$Collection","CollectionRoot","$7135fc7d473fd974$export$4feb769f8ddf26c5","$64fa3d84918910a7$export$fabf2dc03a41866e","objectRef","$7aSLZ$useObjectRef","tabListProps","$7aSLZ$useTabList","$c8a5a149f625efcf$export$758399f318e6385a","$7135fc7d473fd974$export$90e00781bc59d8f9","$5e8ad37a45e1c704$var$TabItemNode","$7aSLZ$CollectionNode","$5e8ad37a45e1c704$export$3e41faf802a29e71","$7aSLZ$createLeafComponent","forwardedRef","tabProps","$7aSLZ$useTab","hoverProps","isHovered","$7aSLZ$useHover","ElementType","$1d5b8b8664671ef2$export$c9549807523555e0","$5e8ad37a45e1c704$export$3d96ec278d3efce4","$7aSLZ$createHideableComponent","otherProps","$7aSLZ$useTabPanel","$7aSLZ$inertValue","$7135fc7d473fd974$export$a164736487e3f0ae","withProvider","withContext","createSlotRecipeContext","TabsRootSlot","TabsListSlot","TabsTabSlot","TabsPanelsSlot","TabsPanelSlot","Tab","jsx","RATab","TabList","tabs","styleProps","restProps","extractStyleProps","RATabList","tab","TabPanel","forwardRef","RATabPanel","TabPanels","RaCollection","TabsRoot","placement","size","RATabs","jsxs","Fragment","Tabs"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6]}
|