@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":"accordion-B2FLWAh5.cjs.js","sources":["../../../../node_modules/.pnpm/@react-stately+disclosure@3.0.8_react@19.1.0/node_modules/@react-stately/disclosure/dist/useDisclosureGroupState.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/Disclosure.mjs","../../src/components/accordion/accordion.slots.tsx","../../src/components/accordion/components/accordion-root.tsx","../../src/components/accordion/components/accordion-header.tsx","../../src/components/accordion/components/accordion-content.tsx","../../src/components/accordion/components/accordion-item.tsx","../../src/components/accordion/accordion.tsx"],"sourcesContent":["import {useControlledState as $j4gLc$useControlledState} from \"@react-stately/utils\";\nimport {useMemo as $j4gLc$useMemo, useEffect as $j4gLc$useEffect} from \"react\";\n\n/*\n * Copyright 2024 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 $9385b3affbdec831$export$f36461af0ef4707d(props) {\n let { allowsMultipleExpanded: allowsMultipleExpanded = false, isDisabled: isDisabled = false } = props;\n let [expandedKeys, setExpandedKeys] = (0, $j4gLc$useControlledState)((0, $j4gLc$useMemo)(()=>props.expandedKeys ? new Set(props.expandedKeys) : undefined, [\n props.expandedKeys\n ]), (0, $j4gLc$useMemo)(()=>props.defaultExpandedKeys ? new Set(props.defaultExpandedKeys) : new Set(), [\n props.defaultExpandedKeys\n ]), props.onExpandedChange);\n (0, $j4gLc$useEffect)(()=>{\n // Ensure only one item is expanded if allowsMultipleExpanded is false.\n if (!allowsMultipleExpanded && expandedKeys.size > 1) {\n let firstKey = expandedKeys.values().next().value;\n if (firstKey != null) setExpandedKeys(new Set([\n firstKey\n ]));\n }\n });\n return {\n allowsMultipleExpanded: allowsMultipleExpanded,\n isDisabled: isDisabled,\n expandedKeys: expandedKeys,\n setExpandedKeys: setExpandedKeys,\n toggleKey (key) {\n let keys;\n if (allowsMultipleExpanded) {\n keys = new Set(expandedKeys);\n if (keys.has(key)) keys.delete(key);\n else keys.add(key);\n } else keys = new Set(expandedKeys.has(key) ? [] : [\n key\n ]);\n setExpandedKeys(keys);\n }\n };\n}\n\n\nexport {$9385b3affbdec831$export$f36461af0ef4707d as useDisclosureGroupState};\n//# sourceMappingURL=useDisclosureGroupState.module.js.map\n","import {ButtonContext as $d2b4bc8c273e7be6$export$24d547caef80ccd1} from \"./Button.mjs\";\nimport {DEFAULT_SLOT as $64fa3d84918910a7$export$c62b8e45d58ddad9, Provider as $64fa3d84918910a7$export$2881499e37b75b9a, useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415, useRenderProps as $64fa3d84918910a7$export$4d86445c2cf5e3} from \"./utils.mjs\";\nimport {useDisclosure as $hI1OT$useDisclosure, useFocusRing as $hI1OT$useFocusRing} from \"react-aria\";\nimport {useDisclosureGroupState as $hI1OT$useDisclosureGroupState, useDisclosureState as $hI1OT$useDisclosureState} from \"react-stately\";\nimport {filterDOMProps as $hI1OT$filterDOMProps, useId as $hI1OT$useId, mergeProps as $hI1OT$mergeProps, mergeRefs as $hI1OT$mergeRefs} from \"@react-aria/utils\";\nimport $hI1OT$react, {createContext as $hI1OT$createContext, forwardRef as $hI1OT$forwardRef, useContext as $hI1OT$useContext} from \"react\";\n\n/*\n * Copyright 2024 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\nconst $28f4fd908f0de97f$export$1d40e3e0cc4d5de = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$export$944aceb4f8c89f10 = /*#__PURE__*/ (0, $hI1OT$forwardRef)(function DisclosureGroup(props, ref) {\n let state = (0, $hI1OT$useDisclosureGroupState)(props);\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-DisclosureGroup',\n values: {\n isDisabled: state.isDisabled,\n state: state\n }\n });\n let domProps = (0, $hI1OT$filterDOMProps)(props, {\n global: true\n });\n return /*#__PURE__*/ (0, $hI1OT$react).createElement(\"div\", {\n ...domProps,\n ...renderProps,\n ref: ref,\n \"data-disabled\": props.isDisabled || undefined\n }, /*#__PURE__*/ (0, $hI1OT$react).createElement($28f4fd908f0de97f$export$1d40e3e0cc4d5de.Provider, {\n value: state\n }, renderProps.children));\n});\nconst $28f4fd908f0de97f$export$d665dd135a51b28a = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$export$dab3ea4a6ef094da = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$var$InternalDisclosureContext = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$export$74a362b31437ec83 = /*#__PURE__*/ (0, $hI1OT$forwardRef)(function Disclosure(props, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $28f4fd908f0de97f$export$d665dd135a51b28a);\n let groupState = (0, $hI1OT$useContext)($28f4fd908f0de97f$export$1d40e3e0cc4d5de);\n let { id: id, ...otherProps } = props;\n // Generate an id if one wasn't provided.\n // (can't pass id into useId since it can also be a number)\n let defaultId = (0, $hI1OT$useId)();\n id || (id = defaultId);\n let isExpanded = groupState ? groupState.expandedKeys.has(id) : props.isExpanded;\n let state = (0, $hI1OT$useDisclosureState)({\n ...props,\n isExpanded: isExpanded,\n onExpandedChange (isExpanded) {\n var _props_onExpandedChange;\n if (groupState) groupState.toggleKey(id);\n (_props_onExpandedChange = props.onExpandedChange) === null || _props_onExpandedChange === void 0 ? void 0 : _props_onExpandedChange.call(props, isExpanded);\n }\n });\n let panelRef = (0, $hI1OT$react).useRef(null);\n let isDisabled = props.isDisabled || (groupState === null || groupState === void 0 ? void 0 : groupState.isDisabled) || false;\n let { buttonProps: buttonProps, panelProps: panelProps } = (0, $hI1OT$useDisclosure)({\n ...props,\n isExpanded: isExpanded,\n isDisabled: isDisabled\n }, state, panelRef);\n let { isFocusVisible: isFocusVisibleWithin, focusProps: focusWithinProps } = (0, $hI1OT$useFocusRing)({\n within: true\n });\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n id: undefined,\n defaultClassName: 'react-aria-Disclosure',\n values: {\n isExpanded: state.isExpanded,\n isDisabled: isDisabled,\n isFocusVisibleWithin: isFocusVisibleWithin,\n state: state\n }\n });\n let domProps = (0, $hI1OT$filterDOMProps)(otherProps, {\n global: true\n });\n return /*#__PURE__*/ (0, $hI1OT$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n (0, $d2b4bc8c273e7be6$export$24d547caef80ccd1),\n {\n slots: {\n [(0, $64fa3d84918910a7$export$c62b8e45d58ddad9)]: {},\n trigger: buttonProps\n }\n }\n ],\n [\n $28f4fd908f0de97f$var$InternalDisclosureContext,\n {\n panelProps: panelProps,\n panelRef: panelRef\n }\n ],\n [\n $28f4fd908f0de97f$export$dab3ea4a6ef094da,\n state\n ]\n ]\n }, /*#__PURE__*/ (0, $hI1OT$react).createElement(\"div\", {\n ...(0, $hI1OT$mergeProps)(domProps, renderProps, focusWithinProps),\n ref: ref,\n \"data-expanded\": state.isExpanded || undefined,\n \"data-disabled\": isDisabled || undefined,\n \"data-focus-visible-within\": isFocusVisibleWithin || undefined\n }, renderProps.children));\n});\nconst $28f4fd908f0de97f$export$feabaa331e1d464c = /*#__PURE__*/ (0, $hI1OT$forwardRef)(function DisclosurePanel(props, ref) {\n let { role: role = 'group' } = props;\n let { panelProps: panelProps, panelRef: panelRef } = (0, $hI1OT$useContext)($28f4fd908f0de97f$var$InternalDisclosureContext);\n let { isFocusVisible: isFocusVisibleWithin, focusProps: focusWithinProps } = (0, $hI1OT$useFocusRing)({\n within: true\n });\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-DisclosurePanel',\n values: {\n isFocusVisibleWithin: isFocusVisibleWithin\n }\n });\n let DOMProps = (0, $hI1OT$filterDOMProps)(props, {\n global: true\n });\n return /*#__PURE__*/ (0, $hI1OT$react).createElement(\"div\", {\n ...(0, $hI1OT$mergeProps)(DOMProps, renderProps, panelProps, focusWithinProps),\n ref: (0, $hI1OT$mergeRefs)(ref, panelRef),\n role: role,\n \"data-focus-visible-within\": isFocusVisibleWithin || undefined\n }, /*#__PURE__*/ (0, $hI1OT$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n (0, $d2b4bc8c273e7be6$export$24d547caef80ccd1),\n null\n ]\n ]\n }, props.children));\n});\n\n\nexport {$28f4fd908f0de97f$export$1d40e3e0cc4d5de as DisclosureGroupStateContext, $28f4fd908f0de97f$export$944aceb4f8c89f10 as DisclosureGroup, $28f4fd908f0de97f$export$d665dd135a51b28a as DisclosureContext, $28f4fd908f0de97f$export$dab3ea4a6ef094da as DisclosureStateContext, $28f4fd908f0de97f$export$74a362b31437ec83 as Disclosure, $28f4fd908f0de97f$export$feabaa331e1d464c as DisclosurePanel};\n//# sourceMappingURL=Disclosure.module.js.map\n","import {\n createSlotRecipeContext,\n type HTMLChakraProps,\n} from \"@chakra-ui/react\";\nimport type { AccordionRootSlotProps } from \"./accordion.types\";\nimport type { SlotComponent } from \"@/utils/slot-types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"accordion\",\n});\n\nexport const AccordionRootSlot: SlotComponent<\n HTMLDivElement,\n AccordionRootSlotProps\n> = withProvider<HTMLDivElement, AccordionRootSlotProps>(\"div\", \"root\");\n\nexport const AccordionDisclosureSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"disclosure\");\n\nexport const AccordionTriggerSlot = withContext<\n HTMLButtonElement,\n HTMLChakraProps<\"button\">\n>(\"button\", \"trigger\");\n\nexport const AccordionPanelSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"panel\");\n\nexport const AccordionTitleSlot = withContext<\n HTMLButtonElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"accordionTitle\");\n\nexport const AccordionHeaderRightContentSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"headerContentRight\");\n","import { AccordionRootSlot } from \"../accordion.slots\";\nimport { useSlotRecipe } from \"@chakra-ui/react/styled-system\";\nimport { DisclosureGroup as RaDisclosureGroup } from \"react-aria-components\";\nimport type { AccordionRootProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\n/**\n * # Accordion\n *\n * Displays an Accordion.\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/navigation/accordion}\n */\nexport const AccordionRoot = (props: AccordionRootProps) => {\n const { ref, ...restProps } = props;\n const recipe = useSlotRecipe({ key: \"accordion\" });\n const [recipeProps, restRecipeProps] = recipe.splitVariantProps(restProps);\n const [styleProps, raProps] = extractStyleProps(restRecipeProps);\n\n return (\n <AccordionRootSlot ref={ref} {...recipeProps} {...styleProps} asChild>\n <RaDisclosureGroup {...raProps} />\n </AccordionRootSlot>\n );\n};\n","import React, { useMemo } from \"react\";\nimport {\n AccordionTriggerSlot,\n AccordionTitleSlot,\n AccordionHeaderRightContentSlot,\n} from \"../accordion.slots\";\nimport { Flex } from \"@/components\";\nimport { KeyboardArrowRight } from \"@commercetools/nimbus-icons\";\nimport { Button as RaButton } from \"react-aria-components\";\nimport type { AccordionHeaderProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\nexport const AccordionHeader = ({\n children,\n ref,\n ...props\n}: AccordionHeaderProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n // Extract HeaderRightContent if present\n const headerContent = useMemo(() => {\n const main: React.ReactNode[] = [];\n const rightContent: React.ReactNode[] = [];\n\n React.Children.forEach(children, (child) => {\n if (\n React.isValidElement(child) &&\n child.type === AccordionHeaderRightContentSlot\n ) {\n rightContent.push(child);\n } else {\n main.push(child);\n }\n });\n\n return { main, rightContent };\n }, [children]);\n\n return (\n <Flex\n justifyContent=\"space-between\"\n alignItems=\"center\"\n borderBottom=\"solid-25\"\n borderColor=\"neutral.4\"\n {...styleProps}\n >\n <AccordionTriggerSlot ref={ref} slot=\"trigger\" asChild>\n <RaButton {...restProps}>\n <KeyboardArrowRight />\n <AccordionTitleSlot>{headerContent.main}</AccordionTitleSlot>\n </RaButton>\n </AccordionTriggerSlot>\n {headerContent.rightContent.length > 0 && (\n <AccordionHeaderRightContentSlot>\n {headerContent.rightContent}\n </AccordionHeaderRightContentSlot>\n )}\n </Flex>\n );\n};\n","import { AccordionPanelSlot } from \"../accordion.slots\";\nimport { DisclosurePanel as RaDisclosurePanel } from \"react-aria-components\";\nimport type { AccordionContentProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\n// Create Content component\nexport const AccordionContent = ({\n children,\n ref,\n ...props\n}: AccordionContentProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n\n return (\n <AccordionPanelSlot ref={ref} {...styleProps} asChild>\n <RaDisclosurePanel {...restProps}>{children}</RaDisclosurePanel>\n </AccordionPanelSlot>\n );\n};\n","import { AccordionDisclosureSlot } from \"../accordion.slots\";\nimport { Disclosure as RaDisclosure } from \"react-aria-components\";\nimport type { AccordionItemProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\nexport const AccordionItem = ({\n children,\n value,\n ref,\n ...props\n}: AccordionItemProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n const disclosureProps = {\n ...restProps,\n id: value, // React Aria uses id for the key\n };\n\n return (\n <AccordionDisclosureSlot\n data-value={value}\n ref={ref}\n {...styleProps}\n asChild\n >\n <RaDisclosure {...disclosureProps}>{children}</RaDisclosure>\n </AccordionDisclosureSlot>\n );\n};\n","import { AccordionHeaderRightContentSlot } from \"./accordion.slots\";\nimport { AccordionRoot } from \"./components/accordion-root\";\nimport { AccordionHeader } from \"./components/accordion-header\";\nimport { AccordionContent } from \"./components/accordion-content\";\nimport { AccordionItem } from \"./components/accordion-item\";\n\n// Create the Accordion namespace object as an object literal\nexport const Accordion = {\n Root: AccordionRoot,\n Item: AccordionItem,\n Header: AccordionHeader,\n Content: AccordionContent,\n HeaderRightContent: AccordionHeaderRightContentSlot,\n};\n\nexport {\n AccordionRoot as _AccordionRoot,\n AccordionItem as _AccordionItem,\n AccordionHeader as _AccordionHeader,\n AccordionContent as _AccordionContent,\n AccordionHeaderRightContentSlot as _AccordionHeaderRightContent,\n};\n"],"names":["$9385b3affbdec831$export$f36461af0ef4707d","props","allowsMultipleExpanded","isDisabled","expandedKeys","setExpandedKeys","$j4gLc$useControlledState","$j4gLc$useMemo","$j4gLc$useEffect","firstKey","key","keys","$28f4fd908f0de97f$export$1d40e3e0cc4d5de","$hI1OT$createContext","$28f4fd908f0de97f$export$944aceb4f8c89f10","$hI1OT$forwardRef","ref","state","$hI1OT$useDisclosureGroupState","renderProps","$64fa3d84918910a7$export$4d86445c2cf5e3","domProps","$hI1OT$filterDOMProps","$hI1OT$react","$28f4fd908f0de97f$export$d665dd135a51b28a","$28f4fd908f0de97f$export$dab3ea4a6ef094da","$28f4fd908f0de97f$var$InternalDisclosureContext","$28f4fd908f0de97f$export$74a362b31437ec83","$64fa3d84918910a7$export$29f1550f4b0d4415","groupState","$hI1OT$useContext","id","otherProps","defaultId","$hI1OT$useId","isExpanded","$hI1OT$useDisclosureState","_props_onExpandedChange","panelRef","buttonProps","panelProps","$hI1OT$useDisclosure","isFocusVisibleWithin","focusWithinProps","$hI1OT$useFocusRing","$64fa3d84918910a7$export$2881499e37b75b9a","$d2b4bc8c273e7be6$export$24d547caef80ccd1","$64fa3d84918910a7$export$c62b8e45d58ddad9","$hI1OT$mergeProps","$28f4fd908f0de97f$export$feabaa331e1d464c","role","DOMProps","$hI1OT$mergeRefs","withProvider","withContext","createSlotRecipeContext","AccordionRootSlot","AccordionDisclosureSlot","AccordionTriggerSlot","AccordionPanelSlot","AccordionTitleSlot","AccordionHeaderRightContentSlot","AccordionRoot","restProps","recipe","useSlotRecipe","recipeProps","restRecipeProps","styleProps","raProps","extractStyleProps","jsx","RaDisclosureGroup","AccordionHeader","children","headerContent","useMemo","main","rightContent","React","child","jsxs","Flex","RaButton","KeyboardArrowRight","AccordionContent","RaDisclosurePanel","AccordionItem","value","disclosureProps","RaDisclosure","Accordion"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
1
|
+
{"version":3,"file":"accordion-B2FLWAh5.cjs.js","sources":["../../../../node_modules/.pnpm/@react-stately+disclosure@3.0.8_react@19.1.0/node_modules/@react-stately/disclosure/dist/useDisclosureGroupState.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/Disclosure.mjs","../../src/components/accordion/accordion.slots.tsx","../../src/components/accordion/components/accordion-root.tsx","../../src/components/accordion/components/accordion-header.tsx","../../src/components/accordion/components/accordion-content.tsx","../../src/components/accordion/components/accordion-item.tsx","../../src/components/accordion/accordion.tsx"],"sourcesContent":["import {useControlledState as $j4gLc$useControlledState} from \"@react-stately/utils\";\nimport {useMemo as $j4gLc$useMemo, useEffect as $j4gLc$useEffect} from \"react\";\n\n/*\n * Copyright 2024 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 $9385b3affbdec831$export$f36461af0ef4707d(props) {\n let { allowsMultipleExpanded: allowsMultipleExpanded = false, isDisabled: isDisabled = false } = props;\n let [expandedKeys, setExpandedKeys] = (0, $j4gLc$useControlledState)((0, $j4gLc$useMemo)(()=>props.expandedKeys ? new Set(props.expandedKeys) : undefined, [\n props.expandedKeys\n ]), (0, $j4gLc$useMemo)(()=>props.defaultExpandedKeys ? new Set(props.defaultExpandedKeys) : new Set(), [\n props.defaultExpandedKeys\n ]), props.onExpandedChange);\n (0, $j4gLc$useEffect)(()=>{\n // Ensure only one item is expanded if allowsMultipleExpanded is false.\n if (!allowsMultipleExpanded && expandedKeys.size > 1) {\n let firstKey = expandedKeys.values().next().value;\n if (firstKey != null) setExpandedKeys(new Set([\n firstKey\n ]));\n }\n });\n return {\n allowsMultipleExpanded: allowsMultipleExpanded,\n isDisabled: isDisabled,\n expandedKeys: expandedKeys,\n setExpandedKeys: setExpandedKeys,\n toggleKey (key) {\n let keys;\n if (allowsMultipleExpanded) {\n keys = new Set(expandedKeys);\n if (keys.has(key)) keys.delete(key);\n else keys.add(key);\n } else keys = new Set(expandedKeys.has(key) ? [] : [\n key\n ]);\n setExpandedKeys(keys);\n }\n };\n}\n\n\nexport {$9385b3affbdec831$export$f36461af0ef4707d as useDisclosureGroupState};\n//# sourceMappingURL=useDisclosureGroupState.module.js.map\n","import {ButtonContext as $d2b4bc8c273e7be6$export$24d547caef80ccd1} from \"./Button.mjs\";\nimport {DEFAULT_SLOT as $64fa3d84918910a7$export$c62b8e45d58ddad9, Provider as $64fa3d84918910a7$export$2881499e37b75b9a, useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415, useRenderProps as $64fa3d84918910a7$export$4d86445c2cf5e3} from \"./utils.mjs\";\nimport {useDisclosure as $hI1OT$useDisclosure, useFocusRing as $hI1OT$useFocusRing} from \"react-aria\";\nimport {useDisclosureGroupState as $hI1OT$useDisclosureGroupState, useDisclosureState as $hI1OT$useDisclosureState} from \"react-stately\";\nimport {filterDOMProps as $hI1OT$filterDOMProps, useId as $hI1OT$useId, mergeProps as $hI1OT$mergeProps, mergeRefs as $hI1OT$mergeRefs} from \"@react-aria/utils\";\nimport $hI1OT$react, {createContext as $hI1OT$createContext, forwardRef as $hI1OT$forwardRef, useContext as $hI1OT$useContext} from \"react\";\n\n/*\n * Copyright 2024 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\nconst $28f4fd908f0de97f$export$1d40e3e0cc4d5de = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$export$944aceb4f8c89f10 = /*#__PURE__*/ (0, $hI1OT$forwardRef)(function DisclosureGroup(props, ref) {\n let state = (0, $hI1OT$useDisclosureGroupState)(props);\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-DisclosureGroup',\n values: {\n isDisabled: state.isDisabled,\n state: state\n }\n });\n let domProps = (0, $hI1OT$filterDOMProps)(props, {\n global: true\n });\n return /*#__PURE__*/ (0, $hI1OT$react).createElement(\"div\", {\n ...domProps,\n ...renderProps,\n ref: ref,\n \"data-disabled\": props.isDisabled || undefined\n }, /*#__PURE__*/ (0, $hI1OT$react).createElement($28f4fd908f0de97f$export$1d40e3e0cc4d5de.Provider, {\n value: state\n }, renderProps.children));\n});\nconst $28f4fd908f0de97f$export$d665dd135a51b28a = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$export$dab3ea4a6ef094da = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$var$InternalDisclosureContext = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$export$74a362b31437ec83 = /*#__PURE__*/ (0, $hI1OT$forwardRef)(function Disclosure(props, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $28f4fd908f0de97f$export$d665dd135a51b28a);\n let groupState = (0, $hI1OT$useContext)($28f4fd908f0de97f$export$1d40e3e0cc4d5de);\n let { id: id, ...otherProps } = props;\n // Generate an id if one wasn't provided.\n // (can't pass id into useId since it can also be a number)\n let defaultId = (0, $hI1OT$useId)();\n id || (id = defaultId);\n let isExpanded = groupState ? groupState.expandedKeys.has(id) : props.isExpanded;\n let state = (0, $hI1OT$useDisclosureState)({\n ...props,\n isExpanded: isExpanded,\n onExpandedChange (isExpanded) {\n var _props_onExpandedChange;\n if (groupState) groupState.toggleKey(id);\n (_props_onExpandedChange = props.onExpandedChange) === null || _props_onExpandedChange === void 0 ? void 0 : _props_onExpandedChange.call(props, isExpanded);\n }\n });\n let panelRef = (0, $hI1OT$react).useRef(null);\n let isDisabled = props.isDisabled || (groupState === null || groupState === void 0 ? void 0 : groupState.isDisabled) || false;\n let { buttonProps: buttonProps, panelProps: panelProps } = (0, $hI1OT$useDisclosure)({\n ...props,\n isExpanded: isExpanded,\n isDisabled: isDisabled\n }, state, panelRef);\n let { isFocusVisible: isFocusVisibleWithin, focusProps: focusWithinProps } = (0, $hI1OT$useFocusRing)({\n within: true\n });\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n id: undefined,\n defaultClassName: 'react-aria-Disclosure',\n values: {\n isExpanded: state.isExpanded,\n isDisabled: isDisabled,\n isFocusVisibleWithin: isFocusVisibleWithin,\n state: state\n }\n });\n let domProps = (0, $hI1OT$filterDOMProps)(otherProps, {\n global: true\n });\n return /*#__PURE__*/ (0, $hI1OT$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n (0, $d2b4bc8c273e7be6$export$24d547caef80ccd1),\n {\n slots: {\n [(0, $64fa3d84918910a7$export$c62b8e45d58ddad9)]: {},\n trigger: buttonProps\n }\n }\n ],\n [\n $28f4fd908f0de97f$var$InternalDisclosureContext,\n {\n panelProps: panelProps,\n panelRef: panelRef\n }\n ],\n [\n $28f4fd908f0de97f$export$dab3ea4a6ef094da,\n state\n ]\n ]\n }, /*#__PURE__*/ (0, $hI1OT$react).createElement(\"div\", {\n ...(0, $hI1OT$mergeProps)(domProps, renderProps, focusWithinProps),\n ref: ref,\n \"data-expanded\": state.isExpanded || undefined,\n \"data-disabled\": isDisabled || undefined,\n \"data-focus-visible-within\": isFocusVisibleWithin || undefined\n }, renderProps.children));\n});\nconst $28f4fd908f0de97f$export$feabaa331e1d464c = /*#__PURE__*/ (0, $hI1OT$forwardRef)(function DisclosurePanel(props, ref) {\n let { role: role = 'group' } = props;\n let { panelProps: panelProps, panelRef: panelRef } = (0, $hI1OT$useContext)($28f4fd908f0de97f$var$InternalDisclosureContext);\n let { isFocusVisible: isFocusVisibleWithin, focusProps: focusWithinProps } = (0, $hI1OT$useFocusRing)({\n within: true\n });\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-DisclosurePanel',\n values: {\n isFocusVisibleWithin: isFocusVisibleWithin\n }\n });\n let DOMProps = (0, $hI1OT$filterDOMProps)(props, {\n global: true\n });\n return /*#__PURE__*/ (0, $hI1OT$react).createElement(\"div\", {\n ...(0, $hI1OT$mergeProps)(DOMProps, renderProps, panelProps, focusWithinProps),\n ref: (0, $hI1OT$mergeRefs)(ref, panelRef),\n role: role,\n \"data-focus-visible-within\": isFocusVisibleWithin || undefined\n }, /*#__PURE__*/ (0, $hI1OT$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n (0, $d2b4bc8c273e7be6$export$24d547caef80ccd1),\n null\n ]\n ]\n }, props.children));\n});\n\n\nexport {$28f4fd908f0de97f$export$1d40e3e0cc4d5de as DisclosureGroupStateContext, $28f4fd908f0de97f$export$944aceb4f8c89f10 as DisclosureGroup, $28f4fd908f0de97f$export$d665dd135a51b28a as DisclosureContext, $28f4fd908f0de97f$export$dab3ea4a6ef094da as DisclosureStateContext, $28f4fd908f0de97f$export$74a362b31437ec83 as Disclosure, $28f4fd908f0de97f$export$feabaa331e1d464c as DisclosurePanel};\n//# sourceMappingURL=Disclosure.module.js.map\n","import {\n createSlotRecipeContext,\n type HTMLChakraProps,\n} from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type { AccordionRootSlotProps } from \"./accordion.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"accordion\",\n});\n\nexport const AccordionRootSlot: SlotComponent<\n HTMLDivElement,\n AccordionRootSlotProps\n> = withProvider<HTMLDivElement, AccordionRootSlotProps>(\"div\", \"root\");\n\nexport const AccordionDisclosureSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"disclosure\");\n\nexport const AccordionTriggerSlot = withContext<\n HTMLButtonElement,\n HTMLChakraProps<\"button\">\n>(\"button\", \"trigger\");\n\nexport const AccordionPanelSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"panel\");\n\nexport const AccordionTitleSlot = withContext<\n HTMLButtonElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"accordionTitle\");\n\nexport const AccordionHeaderRightContentSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"headerContentRight\");\n","import { AccordionRootSlot } from \"../accordion.slots\";\nimport { useSlotRecipe } from \"@chakra-ui/react/styled-system\";\nimport { DisclosureGroup as RaDisclosureGroup } from \"react-aria-components\";\nimport type { AccordionRootProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\n/**\n * # Accordion\n *\n * Displays an Accordion.\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/navigation/accordion}\n */\nexport const AccordionRoot = (props: AccordionRootProps) => {\n const { ref, ...restProps } = props;\n const recipe = useSlotRecipe({ key: \"accordion\" });\n const [recipeProps, restRecipeProps] = recipe.splitVariantProps(restProps);\n const [styleProps, raProps] = extractStyleProps(restRecipeProps);\n\n return (\n <AccordionRootSlot ref={ref} {...recipeProps} {...styleProps} asChild>\n <RaDisclosureGroup {...raProps} />\n </AccordionRootSlot>\n );\n};\n","import React, { useMemo } from \"react\";\nimport {\n AccordionTriggerSlot,\n AccordionTitleSlot,\n AccordionHeaderRightContentSlot,\n} from \"../accordion.slots\";\nimport { Flex } from \"@/components\";\nimport { KeyboardArrowRight } from \"@commercetools/nimbus-icons\";\nimport { Button as RaButton } from \"react-aria-components\";\nimport type { AccordionHeaderProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\nexport const AccordionHeader = ({\n children,\n ref,\n ...props\n}: AccordionHeaderProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n // Extract HeaderRightContent if present\n const headerContent = useMemo(() => {\n const main: React.ReactNode[] = [];\n const rightContent: React.ReactNode[] = [];\n\n React.Children.forEach(children, (child) => {\n if (\n React.isValidElement(child) &&\n child.type === AccordionHeaderRightContentSlot\n ) {\n rightContent.push(child);\n } else {\n main.push(child);\n }\n });\n\n return { main, rightContent };\n }, [children]);\n\n return (\n <Flex\n justifyContent=\"space-between\"\n alignItems=\"center\"\n borderBottom=\"solid-25\"\n borderColor=\"neutral.4\"\n {...styleProps}\n >\n <AccordionTriggerSlot ref={ref} slot=\"trigger\" asChild>\n <RaButton {...restProps}>\n <KeyboardArrowRight />\n <AccordionTitleSlot>{headerContent.main}</AccordionTitleSlot>\n </RaButton>\n </AccordionTriggerSlot>\n {headerContent.rightContent.length > 0 && (\n <AccordionHeaderRightContentSlot>\n {headerContent.rightContent}\n </AccordionHeaderRightContentSlot>\n )}\n </Flex>\n );\n};\n","import { AccordionPanelSlot } from \"../accordion.slots\";\nimport { DisclosurePanel as RaDisclosurePanel } from \"react-aria-components\";\nimport type { AccordionContentProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\n// Create Content component\nexport const AccordionContent = ({\n children,\n ref,\n ...props\n}: AccordionContentProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n\n return (\n <AccordionPanelSlot ref={ref} {...styleProps} asChild>\n <RaDisclosurePanel {...restProps}>{children}</RaDisclosurePanel>\n </AccordionPanelSlot>\n );\n};\n","import { AccordionDisclosureSlot } from \"../accordion.slots\";\nimport { Disclosure as RaDisclosure } from \"react-aria-components\";\nimport type { AccordionItemProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\nexport const AccordionItem = ({\n children,\n value,\n ref,\n ...props\n}: AccordionItemProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n const disclosureProps = {\n ...restProps,\n id: value, // React Aria uses id for the key\n };\n\n return (\n <AccordionDisclosureSlot\n data-value={value}\n ref={ref}\n {...styleProps}\n asChild\n >\n <RaDisclosure {...disclosureProps}>{children}</RaDisclosure>\n </AccordionDisclosureSlot>\n );\n};\n","import { AccordionHeaderRightContentSlot } from \"./accordion.slots\";\nimport { AccordionRoot } from \"./components/accordion-root\";\nimport { AccordionHeader } from \"./components/accordion-header\";\nimport { AccordionContent } from \"./components/accordion-content\";\nimport { AccordionItem } from \"./components/accordion-item\";\n\n// Create the Accordion namespace object as an object literal\nexport const Accordion = {\n Root: AccordionRoot,\n Item: AccordionItem,\n Header: AccordionHeader,\n Content: AccordionContent,\n HeaderRightContent: AccordionHeaderRightContentSlot,\n};\n\nexport {\n AccordionRoot as _AccordionRoot,\n AccordionItem as _AccordionItem,\n AccordionHeader as _AccordionHeader,\n AccordionContent as _AccordionContent,\n AccordionHeaderRightContentSlot as _AccordionHeaderRightContent,\n};\n"],"names":["$9385b3affbdec831$export$f36461af0ef4707d","props","allowsMultipleExpanded","isDisabled","expandedKeys","setExpandedKeys","$j4gLc$useControlledState","$j4gLc$useMemo","$j4gLc$useEffect","firstKey","key","keys","$28f4fd908f0de97f$export$1d40e3e0cc4d5de","$hI1OT$createContext","$28f4fd908f0de97f$export$944aceb4f8c89f10","$hI1OT$forwardRef","ref","state","$hI1OT$useDisclosureGroupState","renderProps","$64fa3d84918910a7$export$4d86445c2cf5e3","domProps","$hI1OT$filterDOMProps","$hI1OT$react","$28f4fd908f0de97f$export$d665dd135a51b28a","$28f4fd908f0de97f$export$dab3ea4a6ef094da","$28f4fd908f0de97f$var$InternalDisclosureContext","$28f4fd908f0de97f$export$74a362b31437ec83","$64fa3d84918910a7$export$29f1550f4b0d4415","groupState","$hI1OT$useContext","id","otherProps","defaultId","$hI1OT$useId","isExpanded","$hI1OT$useDisclosureState","_props_onExpandedChange","panelRef","buttonProps","panelProps","$hI1OT$useDisclosure","isFocusVisibleWithin","focusWithinProps","$hI1OT$useFocusRing","$64fa3d84918910a7$export$2881499e37b75b9a","$d2b4bc8c273e7be6$export$24d547caef80ccd1","$64fa3d84918910a7$export$c62b8e45d58ddad9","$hI1OT$mergeProps","$28f4fd908f0de97f$export$feabaa331e1d464c","role","DOMProps","$hI1OT$mergeRefs","withProvider","withContext","createSlotRecipeContext","AccordionRootSlot","AccordionDisclosureSlot","AccordionTriggerSlot","AccordionPanelSlot","AccordionTitleSlot","AccordionHeaderRightContentSlot","AccordionRoot","restProps","recipe","useSlotRecipe","recipeProps","restRecipeProps","styleProps","raProps","extractStyleProps","jsx","RaDisclosureGroup","AccordionHeader","children","headerContent","useMemo","main","rightContent","React","child","jsxs","Flex","RaButton","KeyboardArrowRight","AccordionContent","RaDisclosurePanel","AccordionItem","value","disclosureProps","RaDisclosure","Accordion"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accordion-CKDnNkVv.es.js","sources":["../../../../node_modules/.pnpm/@react-stately+disclosure@3.0.8_react@19.1.0/node_modules/@react-stately/disclosure/dist/useDisclosureGroupState.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/Disclosure.mjs","../../src/components/accordion/accordion.slots.tsx","../../src/components/accordion/components/accordion-root.tsx","../../src/components/accordion/components/accordion-header.tsx","../../src/components/accordion/components/accordion-content.tsx","../../src/components/accordion/components/accordion-item.tsx","../../src/components/accordion/accordion.tsx"],"sourcesContent":["import {useControlledState as $j4gLc$useControlledState} from \"@react-stately/utils\";\nimport {useMemo as $j4gLc$useMemo, useEffect as $j4gLc$useEffect} from \"react\";\n\n/*\n * Copyright 2024 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 $9385b3affbdec831$export$f36461af0ef4707d(props) {\n let { allowsMultipleExpanded: allowsMultipleExpanded = false, isDisabled: isDisabled = false } = props;\n let [expandedKeys, setExpandedKeys] = (0, $j4gLc$useControlledState)((0, $j4gLc$useMemo)(()=>props.expandedKeys ? new Set(props.expandedKeys) : undefined, [\n props.expandedKeys\n ]), (0, $j4gLc$useMemo)(()=>props.defaultExpandedKeys ? new Set(props.defaultExpandedKeys) : new Set(), [\n props.defaultExpandedKeys\n ]), props.onExpandedChange);\n (0, $j4gLc$useEffect)(()=>{\n // Ensure only one item is expanded if allowsMultipleExpanded is false.\n if (!allowsMultipleExpanded && expandedKeys.size > 1) {\n let firstKey = expandedKeys.values().next().value;\n if (firstKey != null) setExpandedKeys(new Set([\n firstKey\n ]));\n }\n });\n return {\n allowsMultipleExpanded: allowsMultipleExpanded,\n isDisabled: isDisabled,\n expandedKeys: expandedKeys,\n setExpandedKeys: setExpandedKeys,\n toggleKey (key) {\n let keys;\n if (allowsMultipleExpanded) {\n keys = new Set(expandedKeys);\n if (keys.has(key)) keys.delete(key);\n else keys.add(key);\n } else keys = new Set(expandedKeys.has(key) ? [] : [\n key\n ]);\n setExpandedKeys(keys);\n }\n };\n}\n\n\nexport {$9385b3affbdec831$export$f36461af0ef4707d as useDisclosureGroupState};\n//# sourceMappingURL=useDisclosureGroupState.module.js.map\n","import {ButtonContext as $d2b4bc8c273e7be6$export$24d547caef80ccd1} from \"./Button.mjs\";\nimport {DEFAULT_SLOT as $64fa3d84918910a7$export$c62b8e45d58ddad9, Provider as $64fa3d84918910a7$export$2881499e37b75b9a, useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415, useRenderProps as $64fa3d84918910a7$export$4d86445c2cf5e3} from \"./utils.mjs\";\nimport {useDisclosure as $hI1OT$useDisclosure, useFocusRing as $hI1OT$useFocusRing} from \"react-aria\";\nimport {useDisclosureGroupState as $hI1OT$useDisclosureGroupState, useDisclosureState as $hI1OT$useDisclosureState} from \"react-stately\";\nimport {filterDOMProps as $hI1OT$filterDOMProps, useId as $hI1OT$useId, mergeProps as $hI1OT$mergeProps, mergeRefs as $hI1OT$mergeRefs} from \"@react-aria/utils\";\nimport $hI1OT$react, {createContext as $hI1OT$createContext, forwardRef as $hI1OT$forwardRef, useContext as $hI1OT$useContext} from \"react\";\n\n/*\n * Copyright 2024 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\nconst $28f4fd908f0de97f$export$1d40e3e0cc4d5de = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$export$944aceb4f8c89f10 = /*#__PURE__*/ (0, $hI1OT$forwardRef)(function DisclosureGroup(props, ref) {\n let state = (0, $hI1OT$useDisclosureGroupState)(props);\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-DisclosureGroup',\n values: {\n isDisabled: state.isDisabled,\n state: state\n }\n });\n let domProps = (0, $hI1OT$filterDOMProps)(props, {\n global: true\n });\n return /*#__PURE__*/ (0, $hI1OT$react).createElement(\"div\", {\n ...domProps,\n ...renderProps,\n ref: ref,\n \"data-disabled\": props.isDisabled || undefined\n }, /*#__PURE__*/ (0, $hI1OT$react).createElement($28f4fd908f0de97f$export$1d40e3e0cc4d5de.Provider, {\n value: state\n }, renderProps.children));\n});\nconst $28f4fd908f0de97f$export$d665dd135a51b28a = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$export$dab3ea4a6ef094da = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$var$InternalDisclosureContext = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$export$74a362b31437ec83 = /*#__PURE__*/ (0, $hI1OT$forwardRef)(function Disclosure(props, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $28f4fd908f0de97f$export$d665dd135a51b28a);\n let groupState = (0, $hI1OT$useContext)($28f4fd908f0de97f$export$1d40e3e0cc4d5de);\n let { id: id, ...otherProps } = props;\n // Generate an id if one wasn't provided.\n // (can't pass id into useId since it can also be a number)\n let defaultId = (0, $hI1OT$useId)();\n id || (id = defaultId);\n let isExpanded = groupState ? groupState.expandedKeys.has(id) : props.isExpanded;\n let state = (0, $hI1OT$useDisclosureState)({\n ...props,\n isExpanded: isExpanded,\n onExpandedChange (isExpanded) {\n var _props_onExpandedChange;\n if (groupState) groupState.toggleKey(id);\n (_props_onExpandedChange = props.onExpandedChange) === null || _props_onExpandedChange === void 0 ? void 0 : _props_onExpandedChange.call(props, isExpanded);\n }\n });\n let panelRef = (0, $hI1OT$react).useRef(null);\n let isDisabled = props.isDisabled || (groupState === null || groupState === void 0 ? void 0 : groupState.isDisabled) || false;\n let { buttonProps: buttonProps, panelProps: panelProps } = (0, $hI1OT$useDisclosure)({\n ...props,\n isExpanded: isExpanded,\n isDisabled: isDisabled\n }, state, panelRef);\n let { isFocusVisible: isFocusVisibleWithin, focusProps: focusWithinProps } = (0, $hI1OT$useFocusRing)({\n within: true\n });\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n id: undefined,\n defaultClassName: 'react-aria-Disclosure',\n values: {\n isExpanded: state.isExpanded,\n isDisabled: isDisabled,\n isFocusVisibleWithin: isFocusVisibleWithin,\n state: state\n }\n });\n let domProps = (0, $hI1OT$filterDOMProps)(otherProps, {\n global: true\n });\n return /*#__PURE__*/ (0, $hI1OT$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n (0, $d2b4bc8c273e7be6$export$24d547caef80ccd1),\n {\n slots: {\n [(0, $64fa3d84918910a7$export$c62b8e45d58ddad9)]: {},\n trigger: buttonProps\n }\n }\n ],\n [\n $28f4fd908f0de97f$var$InternalDisclosureContext,\n {\n panelProps: panelProps,\n panelRef: panelRef\n }\n ],\n [\n $28f4fd908f0de97f$export$dab3ea4a6ef094da,\n state\n ]\n ]\n }, /*#__PURE__*/ (0, $hI1OT$react).createElement(\"div\", {\n ...(0, $hI1OT$mergeProps)(domProps, renderProps, focusWithinProps),\n ref: ref,\n \"data-expanded\": state.isExpanded || undefined,\n \"data-disabled\": isDisabled || undefined,\n \"data-focus-visible-within\": isFocusVisibleWithin || undefined\n }, renderProps.children));\n});\nconst $28f4fd908f0de97f$export$feabaa331e1d464c = /*#__PURE__*/ (0, $hI1OT$forwardRef)(function DisclosurePanel(props, ref) {\n let { role: role = 'group' } = props;\n let { panelProps: panelProps, panelRef: panelRef } = (0, $hI1OT$useContext)($28f4fd908f0de97f$var$InternalDisclosureContext);\n let { isFocusVisible: isFocusVisibleWithin, focusProps: focusWithinProps } = (0, $hI1OT$useFocusRing)({\n within: true\n });\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-DisclosurePanel',\n values: {\n isFocusVisibleWithin: isFocusVisibleWithin\n }\n });\n let DOMProps = (0, $hI1OT$filterDOMProps)(props, {\n global: true\n });\n return /*#__PURE__*/ (0, $hI1OT$react).createElement(\"div\", {\n ...(0, $hI1OT$mergeProps)(DOMProps, renderProps, panelProps, focusWithinProps),\n ref: (0, $hI1OT$mergeRefs)(ref, panelRef),\n role: role,\n \"data-focus-visible-within\": isFocusVisibleWithin || undefined\n }, /*#__PURE__*/ (0, $hI1OT$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n (0, $d2b4bc8c273e7be6$export$24d547caef80ccd1),\n null\n ]\n ]\n }, props.children));\n});\n\n\nexport {$28f4fd908f0de97f$export$1d40e3e0cc4d5de as DisclosureGroupStateContext, $28f4fd908f0de97f$export$944aceb4f8c89f10 as DisclosureGroup, $28f4fd908f0de97f$export$d665dd135a51b28a as DisclosureContext, $28f4fd908f0de97f$export$dab3ea4a6ef094da as DisclosureStateContext, $28f4fd908f0de97f$export$74a362b31437ec83 as Disclosure, $28f4fd908f0de97f$export$feabaa331e1d464c as DisclosurePanel};\n//# sourceMappingURL=Disclosure.module.js.map\n","import {\n createSlotRecipeContext,\n type HTMLChakraProps,\n} from \"@chakra-ui/react\";\nimport type { AccordionRootSlotProps } from \"./accordion.types\";\nimport type { SlotComponent } from \"@/utils/slot-types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"accordion\",\n});\n\nexport const AccordionRootSlot: SlotComponent<\n HTMLDivElement,\n AccordionRootSlotProps\n> = withProvider<HTMLDivElement, AccordionRootSlotProps>(\"div\", \"root\");\n\nexport const AccordionDisclosureSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"disclosure\");\n\nexport const AccordionTriggerSlot = withContext<\n HTMLButtonElement,\n HTMLChakraProps<\"button\">\n>(\"button\", \"trigger\");\n\nexport const AccordionPanelSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"panel\");\n\nexport const AccordionTitleSlot = withContext<\n HTMLButtonElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"accordionTitle\");\n\nexport const AccordionHeaderRightContentSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"headerContentRight\");\n","import { AccordionRootSlot } from \"../accordion.slots\";\nimport { useSlotRecipe } from \"@chakra-ui/react/styled-system\";\nimport { DisclosureGroup as RaDisclosureGroup } from \"react-aria-components\";\nimport type { AccordionRootProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\n/**\n * # Accordion\n *\n * Displays an Accordion.\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/navigation/accordion}\n */\nexport const AccordionRoot = (props: AccordionRootProps) => {\n const { ref, ...restProps } = props;\n const recipe = useSlotRecipe({ key: \"accordion\" });\n const [recipeProps, restRecipeProps] = recipe.splitVariantProps(restProps);\n const [styleProps, raProps] = extractStyleProps(restRecipeProps);\n\n return (\n <AccordionRootSlot ref={ref} {...recipeProps} {...styleProps} asChild>\n <RaDisclosureGroup {...raProps} />\n </AccordionRootSlot>\n );\n};\n","import React, { useMemo } from \"react\";\nimport {\n AccordionTriggerSlot,\n AccordionTitleSlot,\n AccordionHeaderRightContentSlot,\n} from \"../accordion.slots\";\nimport { Flex } from \"@/components\";\nimport { KeyboardArrowRight } from \"@commercetools/nimbus-icons\";\nimport { Button as RaButton } from \"react-aria-components\";\nimport type { AccordionHeaderProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\nexport const AccordionHeader = ({\n children,\n ref,\n ...props\n}: AccordionHeaderProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n // Extract HeaderRightContent if present\n const headerContent = useMemo(() => {\n const main: React.ReactNode[] = [];\n const rightContent: React.ReactNode[] = [];\n\n React.Children.forEach(children, (child) => {\n if (\n React.isValidElement(child) &&\n child.type === AccordionHeaderRightContentSlot\n ) {\n rightContent.push(child);\n } else {\n main.push(child);\n }\n });\n\n return { main, rightContent };\n }, [children]);\n\n return (\n <Flex\n justifyContent=\"space-between\"\n alignItems=\"center\"\n borderBottom=\"solid-25\"\n borderColor=\"neutral.4\"\n {...styleProps}\n >\n <AccordionTriggerSlot ref={ref} slot=\"trigger\" asChild>\n <RaButton {...restProps}>\n <KeyboardArrowRight />\n <AccordionTitleSlot>{headerContent.main}</AccordionTitleSlot>\n </RaButton>\n </AccordionTriggerSlot>\n {headerContent.rightContent.length > 0 && (\n <AccordionHeaderRightContentSlot>\n {headerContent.rightContent}\n </AccordionHeaderRightContentSlot>\n )}\n </Flex>\n );\n};\n","import { AccordionPanelSlot } from \"../accordion.slots\";\nimport { DisclosurePanel as RaDisclosurePanel } from \"react-aria-components\";\nimport type { AccordionContentProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\n// Create Content component\nexport const AccordionContent = ({\n children,\n ref,\n ...props\n}: AccordionContentProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n\n return (\n <AccordionPanelSlot ref={ref} {...styleProps} asChild>\n <RaDisclosurePanel {...restProps}>{children}</RaDisclosurePanel>\n </AccordionPanelSlot>\n );\n};\n","import { AccordionDisclosureSlot } from \"../accordion.slots\";\nimport { Disclosure as RaDisclosure } from \"react-aria-components\";\nimport type { AccordionItemProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\nexport const AccordionItem = ({\n children,\n value,\n ref,\n ...props\n}: AccordionItemProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n const disclosureProps = {\n ...restProps,\n id: value, // React Aria uses id for the key\n };\n\n return (\n <AccordionDisclosureSlot\n data-value={value}\n ref={ref}\n {...styleProps}\n asChild\n >\n <RaDisclosure {...disclosureProps}>{children}</RaDisclosure>\n </AccordionDisclosureSlot>\n );\n};\n","import { AccordionHeaderRightContentSlot } from \"./accordion.slots\";\nimport { AccordionRoot } from \"./components/accordion-root\";\nimport { AccordionHeader } from \"./components/accordion-header\";\nimport { AccordionContent } from \"./components/accordion-content\";\nimport { AccordionItem } from \"./components/accordion-item\";\n\n// Create the Accordion namespace object as an object literal\nexport const Accordion = {\n Root: AccordionRoot,\n Item: AccordionItem,\n Header: AccordionHeader,\n Content: AccordionContent,\n HeaderRightContent: AccordionHeaderRightContentSlot,\n};\n\nexport {\n AccordionRoot as _AccordionRoot,\n AccordionItem as _AccordionItem,\n AccordionHeader as _AccordionHeader,\n AccordionContent as _AccordionContent,\n AccordionHeaderRightContentSlot as _AccordionHeaderRightContent,\n};\n"],"names":["$9385b3affbdec831$export$f36461af0ef4707d","props","allowsMultipleExpanded","isDisabled","expandedKeys","setExpandedKeys","$j4gLc$useControlledState","$j4gLc$useMemo","$j4gLc$useEffect","firstKey","key","keys","$28f4fd908f0de97f$export$1d40e3e0cc4d5de","$hI1OT$createContext","$28f4fd908f0de97f$export$944aceb4f8c89f10","$hI1OT$forwardRef","ref","state","$hI1OT$useDisclosureGroupState","renderProps","$64fa3d84918910a7$export$4d86445c2cf5e3","domProps","$hI1OT$filterDOMProps","$hI1OT$react","$28f4fd908f0de97f$export$d665dd135a51b28a","$28f4fd908f0de97f$export$dab3ea4a6ef094da","$28f4fd908f0de97f$var$InternalDisclosureContext","$28f4fd908f0de97f$export$74a362b31437ec83","$64fa3d84918910a7$export$29f1550f4b0d4415","groupState","$hI1OT$useContext","id","otherProps","defaultId","$hI1OT$useId","isExpanded","$hI1OT$useDisclosureState","_props_onExpandedChange","panelRef","buttonProps","panelProps","$hI1OT$useDisclosure","isFocusVisibleWithin","focusWithinProps","$hI1OT$useFocusRing","$64fa3d84918910a7$export$2881499e37b75b9a","$d2b4bc8c273e7be6$export$24d547caef80ccd1","$64fa3d84918910a7$export$c62b8e45d58ddad9","$hI1OT$mergeProps","$28f4fd908f0de97f$export$feabaa331e1d464c","role","DOMProps","$hI1OT$mergeRefs","withProvider","withContext","createSlotRecipeContext","AccordionRootSlot","AccordionDisclosureSlot","AccordionTriggerSlot","AccordionPanelSlot","AccordionTitleSlot","AccordionHeaderRightContentSlot","AccordionRoot","restProps","recipe","useSlotRecipe","recipeProps","restRecipeProps","styleProps","raProps","extractStyleProps","jsx","RaDisclosureGroup","AccordionHeader","children","headerContent","useMemo","main","rightContent","React","child","jsxs","Flex","RaButton","KeyboardArrowRight","AccordionContent","RaDisclosurePanel","AccordionItem","value","disclosureProps","RaDisclosure","Accordion"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
1
|
+
{"version":3,"file":"accordion-CKDnNkVv.es.js","sources":["../../../../node_modules/.pnpm/@react-stately+disclosure@3.0.8_react@19.1.0/node_modules/@react-stately/disclosure/dist/useDisclosureGroupState.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/Disclosure.mjs","../../src/components/accordion/accordion.slots.tsx","../../src/components/accordion/components/accordion-root.tsx","../../src/components/accordion/components/accordion-header.tsx","../../src/components/accordion/components/accordion-content.tsx","../../src/components/accordion/components/accordion-item.tsx","../../src/components/accordion/accordion.tsx"],"sourcesContent":["import {useControlledState as $j4gLc$useControlledState} from \"@react-stately/utils\";\nimport {useMemo as $j4gLc$useMemo, useEffect as $j4gLc$useEffect} from \"react\";\n\n/*\n * Copyright 2024 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 $9385b3affbdec831$export$f36461af0ef4707d(props) {\n let { allowsMultipleExpanded: allowsMultipleExpanded = false, isDisabled: isDisabled = false } = props;\n let [expandedKeys, setExpandedKeys] = (0, $j4gLc$useControlledState)((0, $j4gLc$useMemo)(()=>props.expandedKeys ? new Set(props.expandedKeys) : undefined, [\n props.expandedKeys\n ]), (0, $j4gLc$useMemo)(()=>props.defaultExpandedKeys ? new Set(props.defaultExpandedKeys) : new Set(), [\n props.defaultExpandedKeys\n ]), props.onExpandedChange);\n (0, $j4gLc$useEffect)(()=>{\n // Ensure only one item is expanded if allowsMultipleExpanded is false.\n if (!allowsMultipleExpanded && expandedKeys.size > 1) {\n let firstKey = expandedKeys.values().next().value;\n if (firstKey != null) setExpandedKeys(new Set([\n firstKey\n ]));\n }\n });\n return {\n allowsMultipleExpanded: allowsMultipleExpanded,\n isDisabled: isDisabled,\n expandedKeys: expandedKeys,\n setExpandedKeys: setExpandedKeys,\n toggleKey (key) {\n let keys;\n if (allowsMultipleExpanded) {\n keys = new Set(expandedKeys);\n if (keys.has(key)) keys.delete(key);\n else keys.add(key);\n } else keys = new Set(expandedKeys.has(key) ? [] : [\n key\n ]);\n setExpandedKeys(keys);\n }\n };\n}\n\n\nexport {$9385b3affbdec831$export$f36461af0ef4707d as useDisclosureGroupState};\n//# sourceMappingURL=useDisclosureGroupState.module.js.map\n","import {ButtonContext as $d2b4bc8c273e7be6$export$24d547caef80ccd1} from \"./Button.mjs\";\nimport {DEFAULT_SLOT as $64fa3d84918910a7$export$c62b8e45d58ddad9, Provider as $64fa3d84918910a7$export$2881499e37b75b9a, useContextProps as $64fa3d84918910a7$export$29f1550f4b0d4415, useRenderProps as $64fa3d84918910a7$export$4d86445c2cf5e3} from \"./utils.mjs\";\nimport {useDisclosure as $hI1OT$useDisclosure, useFocusRing as $hI1OT$useFocusRing} from \"react-aria\";\nimport {useDisclosureGroupState as $hI1OT$useDisclosureGroupState, useDisclosureState as $hI1OT$useDisclosureState} from \"react-stately\";\nimport {filterDOMProps as $hI1OT$filterDOMProps, useId as $hI1OT$useId, mergeProps as $hI1OT$mergeProps, mergeRefs as $hI1OT$mergeRefs} from \"@react-aria/utils\";\nimport $hI1OT$react, {createContext as $hI1OT$createContext, forwardRef as $hI1OT$forwardRef, useContext as $hI1OT$useContext} from \"react\";\n\n/*\n * Copyright 2024 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\nconst $28f4fd908f0de97f$export$1d40e3e0cc4d5de = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$export$944aceb4f8c89f10 = /*#__PURE__*/ (0, $hI1OT$forwardRef)(function DisclosureGroup(props, ref) {\n let state = (0, $hI1OT$useDisclosureGroupState)(props);\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-DisclosureGroup',\n values: {\n isDisabled: state.isDisabled,\n state: state\n }\n });\n let domProps = (0, $hI1OT$filterDOMProps)(props, {\n global: true\n });\n return /*#__PURE__*/ (0, $hI1OT$react).createElement(\"div\", {\n ...domProps,\n ...renderProps,\n ref: ref,\n \"data-disabled\": props.isDisabled || undefined\n }, /*#__PURE__*/ (0, $hI1OT$react).createElement($28f4fd908f0de97f$export$1d40e3e0cc4d5de.Provider, {\n value: state\n }, renderProps.children));\n});\nconst $28f4fd908f0de97f$export$d665dd135a51b28a = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$export$dab3ea4a6ef094da = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$var$InternalDisclosureContext = /*#__PURE__*/ (0, $hI1OT$createContext)(null);\nconst $28f4fd908f0de97f$export$74a362b31437ec83 = /*#__PURE__*/ (0, $hI1OT$forwardRef)(function Disclosure(props, ref) {\n [props, ref] = (0, $64fa3d84918910a7$export$29f1550f4b0d4415)(props, ref, $28f4fd908f0de97f$export$d665dd135a51b28a);\n let groupState = (0, $hI1OT$useContext)($28f4fd908f0de97f$export$1d40e3e0cc4d5de);\n let { id: id, ...otherProps } = props;\n // Generate an id if one wasn't provided.\n // (can't pass id into useId since it can also be a number)\n let defaultId = (0, $hI1OT$useId)();\n id || (id = defaultId);\n let isExpanded = groupState ? groupState.expandedKeys.has(id) : props.isExpanded;\n let state = (0, $hI1OT$useDisclosureState)({\n ...props,\n isExpanded: isExpanded,\n onExpandedChange (isExpanded) {\n var _props_onExpandedChange;\n if (groupState) groupState.toggleKey(id);\n (_props_onExpandedChange = props.onExpandedChange) === null || _props_onExpandedChange === void 0 ? void 0 : _props_onExpandedChange.call(props, isExpanded);\n }\n });\n let panelRef = (0, $hI1OT$react).useRef(null);\n let isDisabled = props.isDisabled || (groupState === null || groupState === void 0 ? void 0 : groupState.isDisabled) || false;\n let { buttonProps: buttonProps, panelProps: panelProps } = (0, $hI1OT$useDisclosure)({\n ...props,\n isExpanded: isExpanded,\n isDisabled: isDisabled\n }, state, panelRef);\n let { isFocusVisible: isFocusVisibleWithin, focusProps: focusWithinProps } = (0, $hI1OT$useFocusRing)({\n within: true\n });\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n id: undefined,\n defaultClassName: 'react-aria-Disclosure',\n values: {\n isExpanded: state.isExpanded,\n isDisabled: isDisabled,\n isFocusVisibleWithin: isFocusVisibleWithin,\n state: state\n }\n });\n let domProps = (0, $hI1OT$filterDOMProps)(otherProps, {\n global: true\n });\n return /*#__PURE__*/ (0, $hI1OT$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n (0, $d2b4bc8c273e7be6$export$24d547caef80ccd1),\n {\n slots: {\n [(0, $64fa3d84918910a7$export$c62b8e45d58ddad9)]: {},\n trigger: buttonProps\n }\n }\n ],\n [\n $28f4fd908f0de97f$var$InternalDisclosureContext,\n {\n panelProps: panelProps,\n panelRef: panelRef\n }\n ],\n [\n $28f4fd908f0de97f$export$dab3ea4a6ef094da,\n state\n ]\n ]\n }, /*#__PURE__*/ (0, $hI1OT$react).createElement(\"div\", {\n ...(0, $hI1OT$mergeProps)(domProps, renderProps, focusWithinProps),\n ref: ref,\n \"data-expanded\": state.isExpanded || undefined,\n \"data-disabled\": isDisabled || undefined,\n \"data-focus-visible-within\": isFocusVisibleWithin || undefined\n }, renderProps.children));\n});\nconst $28f4fd908f0de97f$export$feabaa331e1d464c = /*#__PURE__*/ (0, $hI1OT$forwardRef)(function DisclosurePanel(props, ref) {\n let { role: role = 'group' } = props;\n let { panelProps: panelProps, panelRef: panelRef } = (0, $hI1OT$useContext)($28f4fd908f0de97f$var$InternalDisclosureContext);\n let { isFocusVisible: isFocusVisibleWithin, focusProps: focusWithinProps } = (0, $hI1OT$useFocusRing)({\n within: true\n });\n let renderProps = (0, $64fa3d84918910a7$export$4d86445c2cf5e3)({\n ...props,\n defaultClassName: 'react-aria-DisclosurePanel',\n values: {\n isFocusVisibleWithin: isFocusVisibleWithin\n }\n });\n let DOMProps = (0, $hI1OT$filterDOMProps)(props, {\n global: true\n });\n return /*#__PURE__*/ (0, $hI1OT$react).createElement(\"div\", {\n ...(0, $hI1OT$mergeProps)(DOMProps, renderProps, panelProps, focusWithinProps),\n ref: (0, $hI1OT$mergeRefs)(ref, panelRef),\n role: role,\n \"data-focus-visible-within\": isFocusVisibleWithin || undefined\n }, /*#__PURE__*/ (0, $hI1OT$react).createElement((0, $64fa3d84918910a7$export$2881499e37b75b9a), {\n values: [\n [\n (0, $d2b4bc8c273e7be6$export$24d547caef80ccd1),\n null\n ]\n ]\n }, props.children));\n});\n\n\nexport {$28f4fd908f0de97f$export$1d40e3e0cc4d5de as DisclosureGroupStateContext, $28f4fd908f0de97f$export$944aceb4f8c89f10 as DisclosureGroup, $28f4fd908f0de97f$export$d665dd135a51b28a as DisclosureContext, $28f4fd908f0de97f$export$dab3ea4a6ef094da as DisclosureStateContext, $28f4fd908f0de97f$export$74a362b31437ec83 as Disclosure, $28f4fd908f0de97f$export$feabaa331e1d464c as DisclosurePanel};\n//# sourceMappingURL=Disclosure.module.js.map\n","import {\n createSlotRecipeContext,\n type HTMLChakraProps,\n} from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type { AccordionRootSlotProps } from \"./accordion.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"accordion\",\n});\n\nexport const AccordionRootSlot: SlotComponent<\n HTMLDivElement,\n AccordionRootSlotProps\n> = withProvider<HTMLDivElement, AccordionRootSlotProps>(\"div\", \"root\");\n\nexport const AccordionDisclosureSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"disclosure\");\n\nexport const AccordionTriggerSlot = withContext<\n HTMLButtonElement,\n HTMLChakraProps<\"button\">\n>(\"button\", \"trigger\");\n\nexport const AccordionPanelSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"panel\");\n\nexport const AccordionTitleSlot = withContext<\n HTMLButtonElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"accordionTitle\");\n\nexport const AccordionHeaderRightContentSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"headerContentRight\");\n","import { AccordionRootSlot } from \"../accordion.slots\";\nimport { useSlotRecipe } from \"@chakra-ui/react/styled-system\";\nimport { DisclosureGroup as RaDisclosureGroup } from \"react-aria-components\";\nimport type { AccordionRootProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\n/**\n * # Accordion\n *\n * Displays an Accordion.\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/navigation/accordion}\n */\nexport const AccordionRoot = (props: AccordionRootProps) => {\n const { ref, ...restProps } = props;\n const recipe = useSlotRecipe({ key: \"accordion\" });\n const [recipeProps, restRecipeProps] = recipe.splitVariantProps(restProps);\n const [styleProps, raProps] = extractStyleProps(restRecipeProps);\n\n return (\n <AccordionRootSlot ref={ref} {...recipeProps} {...styleProps} asChild>\n <RaDisclosureGroup {...raProps} />\n </AccordionRootSlot>\n );\n};\n","import React, { useMemo } from \"react\";\nimport {\n AccordionTriggerSlot,\n AccordionTitleSlot,\n AccordionHeaderRightContentSlot,\n} from \"../accordion.slots\";\nimport { Flex } from \"@/components\";\nimport { KeyboardArrowRight } from \"@commercetools/nimbus-icons\";\nimport { Button as RaButton } from \"react-aria-components\";\nimport type { AccordionHeaderProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\nexport const AccordionHeader = ({\n children,\n ref,\n ...props\n}: AccordionHeaderProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n // Extract HeaderRightContent if present\n const headerContent = useMemo(() => {\n const main: React.ReactNode[] = [];\n const rightContent: React.ReactNode[] = [];\n\n React.Children.forEach(children, (child) => {\n if (\n React.isValidElement(child) &&\n child.type === AccordionHeaderRightContentSlot\n ) {\n rightContent.push(child);\n } else {\n main.push(child);\n }\n });\n\n return { main, rightContent };\n }, [children]);\n\n return (\n <Flex\n justifyContent=\"space-between\"\n alignItems=\"center\"\n borderBottom=\"solid-25\"\n borderColor=\"neutral.4\"\n {...styleProps}\n >\n <AccordionTriggerSlot ref={ref} slot=\"trigger\" asChild>\n <RaButton {...restProps}>\n <KeyboardArrowRight />\n <AccordionTitleSlot>{headerContent.main}</AccordionTitleSlot>\n </RaButton>\n </AccordionTriggerSlot>\n {headerContent.rightContent.length > 0 && (\n <AccordionHeaderRightContentSlot>\n {headerContent.rightContent}\n </AccordionHeaderRightContentSlot>\n )}\n </Flex>\n );\n};\n","import { AccordionPanelSlot } from \"../accordion.slots\";\nimport { DisclosurePanel as RaDisclosurePanel } from \"react-aria-components\";\nimport type { AccordionContentProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\n// Create Content component\nexport const AccordionContent = ({\n children,\n ref,\n ...props\n}: AccordionContentProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n\n return (\n <AccordionPanelSlot ref={ref} {...styleProps} asChild>\n <RaDisclosurePanel {...restProps}>{children}</RaDisclosurePanel>\n </AccordionPanelSlot>\n );\n};\n","import { AccordionDisclosureSlot } from \"../accordion.slots\";\nimport { Disclosure as RaDisclosure } from \"react-aria-components\";\nimport type { AccordionItemProps } from \"../accordion.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\nexport const AccordionItem = ({\n children,\n value,\n ref,\n ...props\n}: AccordionItemProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n const disclosureProps = {\n ...restProps,\n id: value, // React Aria uses id for the key\n };\n\n return (\n <AccordionDisclosureSlot\n data-value={value}\n ref={ref}\n {...styleProps}\n asChild\n >\n <RaDisclosure {...disclosureProps}>{children}</RaDisclosure>\n </AccordionDisclosureSlot>\n );\n};\n","import { AccordionHeaderRightContentSlot } from \"./accordion.slots\";\nimport { AccordionRoot } from \"./components/accordion-root\";\nimport { AccordionHeader } from \"./components/accordion-header\";\nimport { AccordionContent } from \"./components/accordion-content\";\nimport { AccordionItem } from \"./components/accordion-item\";\n\n// Create the Accordion namespace object as an object literal\nexport const Accordion = {\n Root: AccordionRoot,\n Item: AccordionItem,\n Header: AccordionHeader,\n Content: AccordionContent,\n HeaderRightContent: AccordionHeaderRightContentSlot,\n};\n\nexport {\n AccordionRoot as _AccordionRoot,\n AccordionItem as _AccordionItem,\n AccordionHeader as _AccordionHeader,\n AccordionContent as _AccordionContent,\n AccordionHeaderRightContentSlot as _AccordionHeaderRightContent,\n};\n"],"names":["$9385b3affbdec831$export$f36461af0ef4707d","props","allowsMultipleExpanded","isDisabled","expandedKeys","setExpandedKeys","$j4gLc$useControlledState","$j4gLc$useMemo","$j4gLc$useEffect","firstKey","key","keys","$28f4fd908f0de97f$export$1d40e3e0cc4d5de","$hI1OT$createContext","$28f4fd908f0de97f$export$944aceb4f8c89f10","$hI1OT$forwardRef","ref","state","$hI1OT$useDisclosureGroupState","renderProps","$64fa3d84918910a7$export$4d86445c2cf5e3","domProps","$hI1OT$filterDOMProps","$hI1OT$react","$28f4fd908f0de97f$export$d665dd135a51b28a","$28f4fd908f0de97f$export$dab3ea4a6ef094da","$28f4fd908f0de97f$var$InternalDisclosureContext","$28f4fd908f0de97f$export$74a362b31437ec83","$64fa3d84918910a7$export$29f1550f4b0d4415","groupState","$hI1OT$useContext","id","otherProps","defaultId","$hI1OT$useId","isExpanded","$hI1OT$useDisclosureState","_props_onExpandedChange","panelRef","buttonProps","panelProps","$hI1OT$useDisclosure","isFocusVisibleWithin","focusWithinProps","$hI1OT$useFocusRing","$64fa3d84918910a7$export$2881499e37b75b9a","$d2b4bc8c273e7be6$export$24d547caef80ccd1","$64fa3d84918910a7$export$c62b8e45d58ddad9","$hI1OT$mergeProps","$28f4fd908f0de97f$export$feabaa331e1d464c","role","DOMProps","$hI1OT$mergeRefs","withProvider","withContext","createSlotRecipeContext","AccordionRootSlot","AccordionDisclosureSlot","AccordionTriggerSlot","AccordionPanelSlot","AccordionTitleSlot","AccordionHeaderRightContentSlot","AccordionRoot","restProps","recipe","useSlotRecipe","recipeProps","restRecipeProps","styleProps","raProps","extractStyleProps","jsx","RaDisclosureGroup","AccordionHeader","children","headerContent","useMemo","main","rightContent","React","child","jsxs","Flex","RaButton","KeyboardArrowRight","AccordionContent","RaDisclosurePanel","AccordionItem","value","disclosureProps","RaDisclosure","Accordion"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx as e, jsxs as d } from "react/jsx-runtime";
|
|
2
|
-
import { j as S, a as I, b as j, c as F, d as G, e as H, i as w, g as A, k as B } from "./Heading-
|
|
2
|
+
import { j as S, a as I, b as j, c as F, d as G, e as H, i as w, g as A, k as B } from "./Heading-lYSFVV4F.es.js";
|
|
3
3
|
import { createSlotRecipeContext as L } from "@chakra-ui/react";
|
|
4
4
|
import { useContext as p } from "react";
|
|
5
|
-
import { $ as M, a as i } from "./useDateFormatter-
|
|
5
|
+
import { $ as M, a as i } from "./useDateFormatter-4Wq50fMI.es.js";
|
|
6
6
|
import { e as D, d as N } from "./utils-Cyja2WdR.es.js";
|
|
7
7
|
import { $ as P } from "./context-R4YUlO9Y.es.js";
|
|
8
8
|
import { B as R } from "./box-DuBoAZvq.es.js";
|
|
@@ -184,4 +184,4 @@ const { withProvider: _, withContext: n } = /* @__PURE__ */ L({
|
|
|
184
184
|
export {
|
|
185
185
|
ve as C
|
|
186
186
|
};
|
|
187
|
-
//# sourceMappingURL=calendar-
|
|
187
|
+
//# sourceMappingURL=calendar-BkGJAIae.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calendar-BkGJAIae.es.js","sources":["../../src/components/calendar/calendar.slots.tsx","../../src/components/calendar/components/calendar.grids.tsx","../../src/components/calendar/components/calendar.header.tsx","../../src/components/calendar/components/calendar.custom-context.tsx","../../src/components/calendar/calendar.tsx"],"sourcesContent":["import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type {\n CalendarCellSlotProps,\n CalendarGridBodySlotProps,\n CalendarGridHeaderSlotProps,\n CalendarGridSlotProps,\n CalendarGridsSlotProps,\n CalendarHeaderCellSlotProps,\n CalendarHeaderSlotProps,\n CalendarMonthTitleSlotProps,\n CalendarRootSlotProps,\n} from \"./calendar.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"calendar\",\n});\n\nexport const CalendarRootSlot: SlotComponent<\n HTMLDivElement,\n CalendarRootSlotProps\n> = withProvider<HTMLDivElement, CalendarRootSlotProps>(\"div\", \"root\");\n\nexport const CalendarHeaderSlot = withContext<\n HTMLDivElement,\n CalendarHeaderSlotProps\n>(\"div\", \"header\");\n\nexport const CalendarGridsSlot = withContext<\n HTMLDivElement,\n CalendarGridsSlotProps\n>(\"div\", \"grids\");\n\nexport const CalendarMonthTitleSlot = withContext<\n HTMLDivElement,\n CalendarMonthTitleSlotProps\n>(\"div\", \"monthTitle\");\n\nexport const CalendarGridSlot = withContext<\n HTMLTableElement,\n CalendarGridSlotProps\n>(\"table\", \"grid\");\n\nexport const CalendarGridHeaderSlot = withContext<\n HTMLTableSectionElement,\n CalendarGridHeaderSlotProps\n>(\"thead\", \"gridHeader\");\n\nexport const CalendarHeaderCellSlot = withContext<\n HTMLTableCellElement,\n CalendarHeaderCellSlotProps\n>(\"th\", \"headerCell\");\n\nexport const CalendarGridBodySlot = withContext<\n HTMLTableSectionElement,\n CalendarGridBodySlotProps\n>(\"tbody\", \"gridBody\");\n\nexport const CalendarCellSlot = withContext<\n HTMLTableCellElement,\n CalendarCellSlotProps\n>(\"td\", \"bodyCell\");\n","import { useContext } from \"react\";\nimport { today, getLocalTimeZone } from \"@internationalized/date\";\nimport {\n CalendarGrid as RaCalendarGrid,\n CalendarGridBody as RaCalendarGridBody,\n CalendarGridHeader as RaCalendarGridHeader,\n CalendarHeaderCell as RaCalendarHeaderCell,\n CalendarCell as RaCalendarCell,\n useSlottedContext,\n CalendarContext,\n CalendarStateContext,\n useLocale,\n} from \"react-aria-components\";\n\nimport { Box } from \"@/components\";\n\nimport {\n CalendarCellSlot,\n CalendarGridBodySlot,\n CalendarGridHeaderSlot,\n CalendarGridSlot,\n CalendarGridsSlot,\n CalendarHeaderCellSlot,\n CalendarMonthTitleSlot,\n} from \"../calendar.slots\";\n\nexport const CalendarGrids = () => {\n const { locale } = useLocale();\n const context = useSlottedContext(CalendarContext);\n const calendarState = useContext(CalendarStateContext)!;\n const visibleMonthsCount = context?.visibleDuration?.months || 1;\n const todayDate = today(getLocalTimeZone());\n const showMonthTitles = visibleMonthsCount > 1;\n\n return (\n <CalendarGridsSlot>\n {Array.from({ length: visibleMonthsCount }, (_, index) => {\n const gridDate = calendarState.visibleRange.start.add({\n months: index,\n });\n const monthName = new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(gridDate.toDate(getLocalTimeZone()));\n\n return (\n <Box\n key={monthName}\n width={visibleMonthsCount == 1 ? \"full\" : \"auto\"}\n >\n {showMonthTitles && (\n <CalendarMonthTitleSlot>{monthName}</CalendarMonthTitleSlot>\n )}\n <CalendarGridSlot asChild>\n <RaCalendarGrid offset={{ months: index }} weekdayStyle=\"short\">\n <CalendarGridHeaderSlot asChild>\n <RaCalendarGridHeader>\n {(day) => (\n <CalendarHeaderCellSlot asChild>\n <RaCalendarHeaderCell>{day}</RaCalendarHeaderCell>\n </CalendarHeaderCellSlot>\n )}\n </RaCalendarGridHeader>\n </CalendarGridHeaderSlot>\n <CalendarGridBodySlot asChild>\n <RaCalendarGridBody>\n {(date) => {\n const isToday = date.compare(todayDate) === 0;\n return (\n <CalendarCellSlot asChild data-today={isToday}>\n <RaCalendarCell date={date} />\n </CalendarCellSlot>\n );\n }}\n </RaCalendarGridBody>\n </CalendarGridBodySlot>\n </RaCalendarGrid>\n </CalendarGridSlot>\n </Box>\n );\n })}\n </CalendarGridsSlot>\n );\n};\n","import {\n CalendarContext,\n Heading,\n useSlottedContext,\n} from \"react-aria-components\";\nimport {\n Box,\n Flex,\n IconButton,\n Stack,\n Text,\n VisuallyHidden,\n} from \"@/components\";\nimport {\n KeyboardArrowLeft,\n KeyboardArrowRight,\n} from \"@commercetools/nimbus-icons\";\nimport { CalendarHeaderSlot } from \"../calendar.slots\";\n\nexport const CalendarHeader = () => {\n const calendarProps = useSlottedContext(CalendarContext);\n\n // Needed to decide wether to show a single month or a range\n const visibleDurationMonths = calendarProps?.visibleDuration?.months || 1;\n const showRangeLabel = visibleDurationMonths > 1;\n\n return (\n <CalendarHeaderSlot>\n <Flex>\n <Stack direction=\"row\" alignItems=\"center\">\n {/** solely for screen readers, if not present, a11y issues are raised */}\n <VisuallyHidden>\n <Heading />\n </VisuallyHidden>\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton\n slot={showRangeLabel ? \"previous\" : \"previous-month\"}\n size=\"xs\"\n variant=\"ghost\"\n tone=\"primary\"\n >\n <KeyboardArrowLeft />\n </IconButton>\n <Text\n textStyle=\"sm\"\n fontWeight=\"500\"\n color=\"neutral.11\"\n width={showRangeLabel ? \"4000\" : \"2000\"}\n textAlign=\"center\"\n aria-hidden=\"true\"\n slot={showRangeLabel ? \"monthRange\" : \"month\"}\n />\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton\n slot={showRangeLabel ? \"next\" : \"next-month\"}\n size=\"xs\"\n variant=\"ghost\"\n tone=\"primary\"\n >\n <KeyboardArrowRight />\n </IconButton>\n </Stack>\n <Box flexGrow=\"1\" />\n <Stack direction=\"row\" alignItems=\"center\">\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton\n slot=\"previous-year\"\n size=\"xs\"\n variant=\"ghost\"\n tone=\"primary\"\n >\n <KeyboardArrowLeft />\n </IconButton>\n <Text\n textStyle=\"sm\"\n fontWeight=\"500\"\n color=\"neutral.11\"\n width=\"1400\"\n textAlign=\"center\"\n aria-hidden=\"true\"\n slot=\"year\"\n />\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton slot=\"next-year\" size=\"xs\" variant=\"ghost\" tone=\"primary\">\n <KeyboardArrowRight />\n </IconButton>\n </Stack>\n </Flex>\n </CalendarHeaderSlot>\n );\n};\n","import { getLocalTimeZone } from \"@internationalized/date\";\nimport { useContext } from \"react\";\nimport {\n Provider,\n ButtonContext,\n CalendarStateContext,\n TextContext,\n useLocale,\n} from \"react-aria-components\";\n\nexport const CalendarCustomContext = ({\n children,\n}: {\n children: React.ReactNode;\n}) => {\n const { locale } = useLocale();\n const buttonContext = useContext(ButtonContext)!;\n const textContext = useContext(TextContext)!;\n const calendarState = useContext(CalendarStateContext)!;\n\n /**\n * Button slots\n * ================================\n */\n const buttonSlots = {\n \"next-month\": {\n onPress: () => calendarState.focusNextSection(),\n \"aria-label\": \"Next month\",\n },\n \"previous-month\": {\n onPress: () => calendarState.focusPreviousSection(),\n \"aria-label\": \"Previous month\",\n },\n \"next-year\": {\n onPress: () => calendarState.focusNextSection(true),\n \"aria-label\": \"Next year\",\n },\n \"previous-year\": {\n onPress: () => calendarState.focusPreviousSection(true),\n \"aria-label\": \"Previous year\",\n },\n };\n\n /**\n * Text slots\n * ================================\n */\n const monthLabel = new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(calendarState.focusedDate.toDate(getLocalTimeZone()));\n\n const monthRangeLabel = [\n new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(calendarState.visibleRange.start.toDate(getLocalTimeZone())),\n new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(calendarState.visibleRange.end.toDate(getLocalTimeZone())),\n ].join(\" - \");\n\n const yearLabel = new Intl.DateTimeFormat(locale, {\n year: \"numeric\",\n }).format(calendarState.focusedDate.toDate(getLocalTimeZone()));\n\n const textSlots = {\n month: { children: monthLabel },\n monthRange: { children: monthRangeLabel },\n year: { children: yearLabel },\n };\n\n return (\n <Provider\n values={[\n [\n ButtonContext,\n {\n ...buttonContext,\n slots: {\n ...(buttonContext &&\n typeof buttonContext === \"object\" &&\n \"slots\" in buttonContext\n ? buttonContext.slots\n : {}),\n ...buttonSlots,\n },\n },\n ],\n [\n TextContext,\n {\n ...textContext,\n slots: {\n ...(textContext &&\n typeof textContext === \"object\" &&\n \"slots\" in textContext\n ? textContext.slots\n : {}),\n ...textSlots,\n },\n },\n ],\n ]}\n >\n {children}\n </Provider>\n );\n};\n","import type { CalendarProps } from \"./calendar.types\";\nimport type { DateValue } from \"react-aria\";\n\nimport { Calendar as RaCalendar } from \"react-aria-components\";\n\nimport { CalendarRootSlot } from \"./calendar.slots\";\nimport { CalendarGrids } from \"./components/calendar.grids\";\nimport { CalendarHeader } from \"./components/calendar.header\";\nimport { calendarSlotRecipe } from \"./calendar.recipe\";\nimport { useRecipe } from \"@chakra-ui/react/styled-system\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport { CalendarCustomContext } from \"./components/calendar.custom-context\";\n\n/**\n * # Calendar\n *\n * Calendars display a grid of days in one or more months and allow users to select a single date.\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/inputs/calendar}\n */\nexport const Calendar = (props: CalendarProps<DateValue>) => {\n const recipe = useRecipe({ recipe: calendarSlotRecipe });\n const [recipeProps, remainingProps] = recipe.splitVariantProps(props);\n const [styleProps, otherProps] = extractStyleProps(remainingProps);\n\n return (\n <CalendarRootSlot {...recipeProps} {...styleProps} asChild>\n <RaCalendar {...otherProps}>\n <CalendarCustomContext>\n <CalendarHeader />\n <CalendarGrids />\n </CalendarCustomContext>\n </RaCalendar>\n </CalendarRootSlot>\n );\n};\n"],"names":["withProvider","withContext","createSlotRecipeContext","CalendarRootSlot","CalendarHeaderSlot","CalendarGridsSlot","CalendarMonthTitleSlot","CalendarGridSlot","CalendarGridHeaderSlot","CalendarHeaderCellSlot","CalendarGridBodySlot","CalendarCellSlot","CalendarGrids","locale","useLocale","context","useSlottedContext","CalendarContext","calendarState","useContext","CalendarStateContext","visibleMonthsCount","todayDate","today","getLocalTimeZone","showMonthTitles","jsx","_","index","gridDate","monthName","jsxs","Box","RaCalendarGrid","RaCalendarGridHeader","day","RaCalendarHeaderCell","RaCalendarGridBody","date","isToday","RaCalendarCell","CalendarHeader","showRangeLabel","Flex","Stack","VisuallyHidden","Heading","IconButton","KeyboardArrowLeft","Text","KeyboardArrowRight","CalendarCustomContext","children","buttonContext","ButtonContext","textContext","TextContext","buttonSlots","monthLabel","monthRangeLabel","yearLabel","textSlots","Provider","Calendar","props","recipe","useRecipe","calendarSlotRecipe","recipeProps","remainingProps","styleProps","otherProps","extractStyleProps","RaCalendar"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendar-V0KeNCQ3.cjs.js","sources":["../../src/components/calendar/calendar.slots.tsx","../../src/components/calendar/components/calendar.grids.tsx","../../src/components/calendar/components/calendar.header.tsx","../../src/components/calendar/components/calendar.custom-context.tsx","../../src/components/calendar/calendar.tsx"],"sourcesContent":["import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type {\n CalendarCellSlotProps,\n CalendarGridBodySlotProps,\n CalendarGridHeaderSlotProps,\n CalendarGridSlotProps,\n CalendarGridsSlotProps,\n CalendarHeaderCellSlotProps,\n CalendarHeaderSlotProps,\n CalendarMonthTitleSlotProps,\n CalendarRootSlotProps,\n} from \"./calendar.types\";\nimport type { SlotComponent } from \"@/utils/slot-types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"calendar\",\n});\n\nexport const CalendarRootSlot: SlotComponent<\n HTMLDivElement,\n CalendarRootSlotProps\n> = withProvider<HTMLDivElement, CalendarRootSlotProps>(\"div\", \"root\");\n\nexport const CalendarHeaderSlot = withContext<\n HTMLDivElement,\n CalendarHeaderSlotProps\n>(\"div\", \"header\");\n\nexport const CalendarGridsSlot = withContext<\n HTMLDivElement,\n CalendarGridsSlotProps\n>(\"div\", \"grids\");\n\nexport const CalendarMonthTitleSlot = withContext<\n HTMLDivElement,\n CalendarMonthTitleSlotProps\n>(\"div\", \"monthTitle\");\n\nexport const CalendarGridSlot = withContext<\n HTMLTableElement,\n CalendarGridSlotProps\n>(\"table\", \"grid\");\n\nexport const CalendarGridHeaderSlot = withContext<\n HTMLTableSectionElement,\n CalendarGridHeaderSlotProps\n>(\"thead\", \"gridHeader\");\n\nexport const CalendarHeaderCellSlot = withContext<\n HTMLTableCellElement,\n CalendarHeaderCellSlotProps\n>(\"th\", \"headerCell\");\n\nexport const CalendarGridBodySlot = withContext<\n HTMLTableSectionElement,\n CalendarGridBodySlotProps\n>(\"tbody\", \"gridBody\");\n\nexport const CalendarCellSlot = withContext<\n HTMLTableCellElement,\n CalendarCellSlotProps\n>(\"td\", \"bodyCell\");\n","import { useContext } from \"react\";\nimport { today, getLocalTimeZone } from \"@internationalized/date\";\nimport {\n CalendarGrid as RaCalendarGrid,\n CalendarGridBody as RaCalendarGridBody,\n CalendarGridHeader as RaCalendarGridHeader,\n CalendarHeaderCell as RaCalendarHeaderCell,\n CalendarCell as RaCalendarCell,\n useSlottedContext,\n CalendarContext,\n CalendarStateContext,\n useLocale,\n} from \"react-aria-components\";\n\nimport { Box } from \"@/components\";\n\nimport {\n CalendarCellSlot,\n CalendarGridBodySlot,\n CalendarGridHeaderSlot,\n CalendarGridSlot,\n CalendarGridsSlot,\n CalendarHeaderCellSlot,\n CalendarMonthTitleSlot,\n} from \"../calendar.slots\";\n\nexport const CalendarGrids = () => {\n const { locale } = useLocale();\n const context = useSlottedContext(CalendarContext);\n const calendarState = useContext(CalendarStateContext)!;\n const visibleMonthsCount = context?.visibleDuration?.months || 1;\n const todayDate = today(getLocalTimeZone());\n const showMonthTitles = visibleMonthsCount > 1;\n\n return (\n <CalendarGridsSlot>\n {Array.from({ length: visibleMonthsCount }, (_, index) => {\n const gridDate = calendarState.visibleRange.start.add({\n months: index,\n });\n const monthName = new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(gridDate.toDate(getLocalTimeZone()));\n\n return (\n <Box\n key={monthName}\n width={visibleMonthsCount == 1 ? \"full\" : \"auto\"}\n >\n {showMonthTitles && (\n <CalendarMonthTitleSlot>{monthName}</CalendarMonthTitleSlot>\n )}\n <CalendarGridSlot asChild>\n <RaCalendarGrid offset={{ months: index }} weekdayStyle=\"short\">\n <CalendarGridHeaderSlot asChild>\n <RaCalendarGridHeader>\n {(day) => (\n <CalendarHeaderCellSlot asChild>\n <RaCalendarHeaderCell>{day}</RaCalendarHeaderCell>\n </CalendarHeaderCellSlot>\n )}\n </RaCalendarGridHeader>\n </CalendarGridHeaderSlot>\n <CalendarGridBodySlot asChild>\n <RaCalendarGridBody>\n {(date) => {\n const isToday = date.compare(todayDate) === 0;\n return (\n <CalendarCellSlot asChild data-today={isToday}>\n <RaCalendarCell date={date} />\n </CalendarCellSlot>\n );\n }}\n </RaCalendarGridBody>\n </CalendarGridBodySlot>\n </RaCalendarGrid>\n </CalendarGridSlot>\n </Box>\n );\n })}\n </CalendarGridsSlot>\n );\n};\n","import {\n CalendarContext,\n Heading,\n useSlottedContext,\n} from \"react-aria-components\";\nimport {\n Box,\n Flex,\n IconButton,\n Stack,\n Text,\n VisuallyHidden,\n} from \"@/components\";\nimport {\n KeyboardArrowLeft,\n KeyboardArrowRight,\n} from \"@commercetools/nimbus-icons\";\nimport { CalendarHeaderSlot } from \"../calendar.slots\";\n\nexport const CalendarHeader = () => {\n const calendarProps = useSlottedContext(CalendarContext);\n\n // Needed to decide wether to show a single month or a range\n const visibleDurationMonths = calendarProps?.visibleDuration?.months || 1;\n const showRangeLabel = visibleDurationMonths > 1;\n\n return (\n <CalendarHeaderSlot>\n <Flex>\n <Stack direction=\"row\" alignItems=\"center\">\n {/** solely for screen readers, if not present, a11y issues are raised */}\n <VisuallyHidden>\n <Heading />\n </VisuallyHidden>\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton\n slot={showRangeLabel ? \"previous\" : \"previous-month\"}\n size=\"xs\"\n variant=\"ghost\"\n tone=\"primary\"\n >\n <KeyboardArrowLeft />\n </IconButton>\n <Text\n textStyle=\"sm\"\n fontWeight=\"500\"\n color=\"neutral.11\"\n width={showRangeLabel ? \"4000\" : \"2000\"}\n textAlign=\"center\"\n aria-hidden=\"true\"\n slot={showRangeLabel ? \"monthRange\" : \"month\"}\n />\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton\n slot={showRangeLabel ? \"next\" : \"next-month\"}\n size=\"xs\"\n variant=\"ghost\"\n tone=\"primary\"\n >\n <KeyboardArrowRight />\n </IconButton>\n </Stack>\n <Box flexGrow=\"1\" />\n <Stack direction=\"row\" alignItems=\"center\">\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton\n slot=\"previous-year\"\n size=\"xs\"\n variant=\"ghost\"\n tone=\"primary\"\n >\n <KeyboardArrowLeft />\n </IconButton>\n <Text\n textStyle=\"sm\"\n fontWeight=\"500\"\n color=\"neutral.11\"\n width=\"1400\"\n textAlign=\"center\"\n aria-hidden=\"true\"\n slot=\"year\"\n />\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton slot=\"next-year\" size=\"xs\" variant=\"ghost\" tone=\"primary\">\n <KeyboardArrowRight />\n </IconButton>\n </Stack>\n </Flex>\n </CalendarHeaderSlot>\n );\n};\n","import { getLocalTimeZone } from \"@internationalized/date\";\nimport { useContext } from \"react\";\nimport {\n Provider,\n ButtonContext,\n CalendarStateContext,\n TextContext,\n useLocale,\n} from \"react-aria-components\";\n\nexport const CalendarCustomContext = ({\n children,\n}: {\n children: React.ReactNode;\n}) => {\n const { locale } = useLocale();\n const buttonContext = useContext(ButtonContext)!;\n const textContext = useContext(TextContext)!;\n const calendarState = useContext(CalendarStateContext)!;\n\n /**\n * Button slots\n * ================================\n */\n const buttonSlots = {\n \"next-month\": {\n onPress: () => calendarState.focusNextSection(),\n \"aria-label\": \"Next month\",\n },\n \"previous-month\": {\n onPress: () => calendarState.focusPreviousSection(),\n \"aria-label\": \"Previous month\",\n },\n \"next-year\": {\n onPress: () => calendarState.focusNextSection(true),\n \"aria-label\": \"Next year\",\n },\n \"previous-year\": {\n onPress: () => calendarState.focusPreviousSection(true),\n \"aria-label\": \"Previous year\",\n },\n };\n\n /**\n * Text slots\n * ================================\n */\n const monthLabel = new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(calendarState.focusedDate.toDate(getLocalTimeZone()));\n\n const monthRangeLabel = [\n new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(calendarState.visibleRange.start.toDate(getLocalTimeZone())),\n new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(calendarState.visibleRange.end.toDate(getLocalTimeZone())),\n ].join(\" - \");\n\n const yearLabel = new Intl.DateTimeFormat(locale, {\n year: \"numeric\",\n }).format(calendarState.focusedDate.toDate(getLocalTimeZone()));\n\n const textSlots = {\n month: { children: monthLabel },\n monthRange: { children: monthRangeLabel },\n year: { children: yearLabel },\n };\n\n return (\n <Provider\n values={[\n [\n ButtonContext,\n {\n ...buttonContext,\n slots: {\n ...(buttonContext &&\n typeof buttonContext === \"object\" &&\n \"slots\" in buttonContext\n ? buttonContext.slots\n : {}),\n ...buttonSlots,\n },\n },\n ],\n [\n TextContext,\n {\n ...textContext,\n slots: {\n ...(textContext &&\n typeof textContext === \"object\" &&\n \"slots\" in textContext\n ? textContext.slots\n : {}),\n ...textSlots,\n },\n },\n ],\n ]}\n >\n {children}\n </Provider>\n );\n};\n","import type { CalendarProps } from \"./calendar.types\";\nimport type { DateValue } from \"react-aria\";\n\nimport { Calendar as RaCalendar } from \"react-aria-components\";\n\nimport { CalendarRootSlot } from \"./calendar.slots\";\nimport { CalendarGrids } from \"./components/calendar.grids\";\nimport { CalendarHeader } from \"./components/calendar.header\";\nimport { calendarSlotRecipe } from \"./calendar.recipe\";\nimport { useRecipe } from \"@chakra-ui/react/styled-system\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport { CalendarCustomContext } from \"./components/calendar.custom-context\";\n\n/**\n * # Calendar\n *\n * Calendars display a grid of days in one or more months and allow users to select a single date.\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/inputs/calendar}\n */\nexport const Calendar = (props: CalendarProps<DateValue>) => {\n const recipe = useRecipe({ recipe: calendarSlotRecipe });\n const [recipeProps, remainingProps] = recipe.splitVariantProps(props);\n const [styleProps, otherProps] = extractStyleProps(remainingProps);\n\n return (\n <CalendarRootSlot {...recipeProps} {...styleProps} asChild>\n <RaCalendar {...otherProps}>\n <CalendarCustomContext>\n <CalendarHeader />\n <CalendarGrids />\n </CalendarCustomContext>\n </RaCalendar>\n </CalendarRootSlot>\n );\n};\n"],"names":["withProvider","withContext","createSlotRecipeContext","CalendarRootSlot","CalendarHeaderSlot","CalendarGridsSlot","CalendarMonthTitleSlot","CalendarGridSlot","CalendarGridHeaderSlot","CalendarHeaderCellSlot","CalendarGridBodySlot","CalendarCellSlot","CalendarGrids","locale","useLocale","context","useSlottedContext","CalendarContext","calendarState","useContext","CalendarStateContext","visibleMonthsCount","todayDate","today","getLocalTimeZone","showMonthTitles","jsx","_","index","gridDate","monthName","jsxs","Box","RaCalendarGrid","RaCalendarGridHeader","day","RaCalendarHeaderCell","RaCalendarGridBody","date","isToday","RaCalendarCell","CalendarHeader","showRangeLabel","Flex","Stack","VisuallyHidden","Heading","IconButton","KeyboardArrowLeft","Text","KeyboardArrowRight","CalendarCustomContext","children","buttonContext","ButtonContext","textContext","TextContext","buttonSlots","monthLabel","monthRangeLabel","yearLabel","textSlots","Provider","Calendar","props","recipe","useRecipe","calendarSlotRecipe","recipeProps","remainingProps","styleProps","otherProps","extractStyleProps","RaCalendar"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"calendar-V0KeNCQ3.cjs.js","sources":["../../src/components/calendar/calendar.slots.tsx","../../src/components/calendar/components/calendar.grids.tsx","../../src/components/calendar/components/calendar.header.tsx","../../src/components/calendar/components/calendar.custom-context.tsx","../../src/components/calendar/calendar.tsx"],"sourcesContent":["import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type {\n CalendarCellSlotProps,\n CalendarGridBodySlotProps,\n CalendarGridHeaderSlotProps,\n CalendarGridSlotProps,\n CalendarGridsSlotProps,\n CalendarHeaderCellSlotProps,\n CalendarHeaderSlotProps,\n CalendarMonthTitleSlotProps,\n CalendarRootSlotProps,\n} from \"./calendar.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"calendar\",\n});\n\nexport const CalendarRootSlot: SlotComponent<\n HTMLDivElement,\n CalendarRootSlotProps\n> = withProvider<HTMLDivElement, CalendarRootSlotProps>(\"div\", \"root\");\n\nexport const CalendarHeaderSlot = withContext<\n HTMLDivElement,\n CalendarHeaderSlotProps\n>(\"div\", \"header\");\n\nexport const CalendarGridsSlot = withContext<\n HTMLDivElement,\n CalendarGridsSlotProps\n>(\"div\", \"grids\");\n\nexport const CalendarMonthTitleSlot = withContext<\n HTMLDivElement,\n CalendarMonthTitleSlotProps\n>(\"div\", \"monthTitle\");\n\nexport const CalendarGridSlot = withContext<\n HTMLTableElement,\n CalendarGridSlotProps\n>(\"table\", \"grid\");\n\nexport const CalendarGridHeaderSlot = withContext<\n HTMLTableSectionElement,\n CalendarGridHeaderSlotProps\n>(\"thead\", \"gridHeader\");\n\nexport const CalendarHeaderCellSlot = withContext<\n HTMLTableCellElement,\n CalendarHeaderCellSlotProps\n>(\"th\", \"headerCell\");\n\nexport const CalendarGridBodySlot = withContext<\n HTMLTableSectionElement,\n CalendarGridBodySlotProps\n>(\"tbody\", \"gridBody\");\n\nexport const CalendarCellSlot = withContext<\n HTMLTableCellElement,\n CalendarCellSlotProps\n>(\"td\", \"bodyCell\");\n","import { useContext } from \"react\";\nimport { today, getLocalTimeZone } from \"@internationalized/date\";\nimport {\n CalendarGrid as RaCalendarGrid,\n CalendarGridBody as RaCalendarGridBody,\n CalendarGridHeader as RaCalendarGridHeader,\n CalendarHeaderCell as RaCalendarHeaderCell,\n CalendarCell as RaCalendarCell,\n useSlottedContext,\n CalendarContext,\n CalendarStateContext,\n useLocale,\n} from \"react-aria-components\";\n\nimport { Box } from \"@/components\";\n\nimport {\n CalendarCellSlot,\n CalendarGridBodySlot,\n CalendarGridHeaderSlot,\n CalendarGridSlot,\n CalendarGridsSlot,\n CalendarHeaderCellSlot,\n CalendarMonthTitleSlot,\n} from \"../calendar.slots\";\n\nexport const CalendarGrids = () => {\n const { locale } = useLocale();\n const context = useSlottedContext(CalendarContext);\n const calendarState = useContext(CalendarStateContext)!;\n const visibleMonthsCount = context?.visibleDuration?.months || 1;\n const todayDate = today(getLocalTimeZone());\n const showMonthTitles = visibleMonthsCount > 1;\n\n return (\n <CalendarGridsSlot>\n {Array.from({ length: visibleMonthsCount }, (_, index) => {\n const gridDate = calendarState.visibleRange.start.add({\n months: index,\n });\n const monthName = new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(gridDate.toDate(getLocalTimeZone()));\n\n return (\n <Box\n key={monthName}\n width={visibleMonthsCount == 1 ? \"full\" : \"auto\"}\n >\n {showMonthTitles && (\n <CalendarMonthTitleSlot>{monthName}</CalendarMonthTitleSlot>\n )}\n <CalendarGridSlot asChild>\n <RaCalendarGrid offset={{ months: index }} weekdayStyle=\"short\">\n <CalendarGridHeaderSlot asChild>\n <RaCalendarGridHeader>\n {(day) => (\n <CalendarHeaderCellSlot asChild>\n <RaCalendarHeaderCell>{day}</RaCalendarHeaderCell>\n </CalendarHeaderCellSlot>\n )}\n </RaCalendarGridHeader>\n </CalendarGridHeaderSlot>\n <CalendarGridBodySlot asChild>\n <RaCalendarGridBody>\n {(date) => {\n const isToday = date.compare(todayDate) === 0;\n return (\n <CalendarCellSlot asChild data-today={isToday}>\n <RaCalendarCell date={date} />\n </CalendarCellSlot>\n );\n }}\n </RaCalendarGridBody>\n </CalendarGridBodySlot>\n </RaCalendarGrid>\n </CalendarGridSlot>\n </Box>\n );\n })}\n </CalendarGridsSlot>\n );\n};\n","import {\n CalendarContext,\n Heading,\n useSlottedContext,\n} from \"react-aria-components\";\nimport {\n Box,\n Flex,\n IconButton,\n Stack,\n Text,\n VisuallyHidden,\n} from \"@/components\";\nimport {\n KeyboardArrowLeft,\n KeyboardArrowRight,\n} from \"@commercetools/nimbus-icons\";\nimport { CalendarHeaderSlot } from \"../calendar.slots\";\n\nexport const CalendarHeader = () => {\n const calendarProps = useSlottedContext(CalendarContext);\n\n // Needed to decide wether to show a single month or a range\n const visibleDurationMonths = calendarProps?.visibleDuration?.months || 1;\n const showRangeLabel = visibleDurationMonths > 1;\n\n return (\n <CalendarHeaderSlot>\n <Flex>\n <Stack direction=\"row\" alignItems=\"center\">\n {/** solely for screen readers, if not present, a11y issues are raised */}\n <VisuallyHidden>\n <Heading />\n </VisuallyHidden>\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton\n slot={showRangeLabel ? \"previous\" : \"previous-month\"}\n size=\"xs\"\n variant=\"ghost\"\n tone=\"primary\"\n >\n <KeyboardArrowLeft />\n </IconButton>\n <Text\n textStyle=\"sm\"\n fontWeight=\"500\"\n color=\"neutral.11\"\n width={showRangeLabel ? \"4000\" : \"2000\"}\n textAlign=\"center\"\n aria-hidden=\"true\"\n slot={showRangeLabel ? \"monthRange\" : \"month\"}\n />\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton\n slot={showRangeLabel ? \"next\" : \"next-month\"}\n size=\"xs\"\n variant=\"ghost\"\n tone=\"primary\"\n >\n <KeyboardArrowRight />\n </IconButton>\n </Stack>\n <Box flexGrow=\"1\" />\n <Stack direction=\"row\" alignItems=\"center\">\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton\n slot=\"previous-year\"\n size=\"xs\"\n variant=\"ghost\"\n tone=\"primary\"\n >\n <KeyboardArrowLeft />\n </IconButton>\n <Text\n textStyle=\"sm\"\n fontWeight=\"500\"\n color=\"neutral.11\"\n width=\"1400\"\n textAlign=\"center\"\n aria-hidden=\"true\"\n slot=\"year\"\n />\n {/* @ts-expect-error - custom-context will add aria-label via the \"slot\" prop */}\n <IconButton slot=\"next-year\" size=\"xs\" variant=\"ghost\" tone=\"primary\">\n <KeyboardArrowRight />\n </IconButton>\n </Stack>\n </Flex>\n </CalendarHeaderSlot>\n );\n};\n","import { getLocalTimeZone } from \"@internationalized/date\";\nimport { useContext } from \"react\";\nimport {\n Provider,\n ButtonContext,\n CalendarStateContext,\n TextContext,\n useLocale,\n} from \"react-aria-components\";\n\nexport const CalendarCustomContext = ({\n children,\n}: {\n children: React.ReactNode;\n}) => {\n const { locale } = useLocale();\n const buttonContext = useContext(ButtonContext)!;\n const textContext = useContext(TextContext)!;\n const calendarState = useContext(CalendarStateContext)!;\n\n /**\n * Button slots\n * ================================\n */\n const buttonSlots = {\n \"next-month\": {\n onPress: () => calendarState.focusNextSection(),\n \"aria-label\": \"Next month\",\n },\n \"previous-month\": {\n onPress: () => calendarState.focusPreviousSection(),\n \"aria-label\": \"Previous month\",\n },\n \"next-year\": {\n onPress: () => calendarState.focusNextSection(true),\n \"aria-label\": \"Next year\",\n },\n \"previous-year\": {\n onPress: () => calendarState.focusPreviousSection(true),\n \"aria-label\": \"Previous year\",\n },\n };\n\n /**\n * Text slots\n * ================================\n */\n const monthLabel = new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(calendarState.focusedDate.toDate(getLocalTimeZone()));\n\n const monthRangeLabel = [\n new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(calendarState.visibleRange.start.toDate(getLocalTimeZone())),\n new Intl.DateTimeFormat(locale, {\n month: \"long\",\n }).format(calendarState.visibleRange.end.toDate(getLocalTimeZone())),\n ].join(\" - \");\n\n const yearLabel = new Intl.DateTimeFormat(locale, {\n year: \"numeric\",\n }).format(calendarState.focusedDate.toDate(getLocalTimeZone()));\n\n const textSlots = {\n month: { children: monthLabel },\n monthRange: { children: monthRangeLabel },\n year: { children: yearLabel },\n };\n\n return (\n <Provider\n values={[\n [\n ButtonContext,\n {\n ...buttonContext,\n slots: {\n ...(buttonContext &&\n typeof buttonContext === \"object\" &&\n \"slots\" in buttonContext\n ? buttonContext.slots\n : {}),\n ...buttonSlots,\n },\n },\n ],\n [\n TextContext,\n {\n ...textContext,\n slots: {\n ...(textContext &&\n typeof textContext === \"object\" &&\n \"slots\" in textContext\n ? textContext.slots\n : {}),\n ...textSlots,\n },\n },\n ],\n ]}\n >\n {children}\n </Provider>\n );\n};\n","import type { CalendarProps } from \"./calendar.types\";\nimport type { DateValue } from \"react-aria\";\n\nimport { Calendar as RaCalendar } from \"react-aria-components\";\n\nimport { CalendarRootSlot } from \"./calendar.slots\";\nimport { CalendarGrids } from \"./components/calendar.grids\";\nimport { CalendarHeader } from \"./components/calendar.header\";\nimport { calendarSlotRecipe } from \"./calendar.recipe\";\nimport { useRecipe } from \"@chakra-ui/react/styled-system\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport { CalendarCustomContext } from \"./components/calendar.custom-context\";\n\n/**\n * # Calendar\n *\n * Calendars display a grid of days in one or more months and allow users to select a single date.\n *\n * @see {@link https://nimbus-documentation.vercel.app/components/inputs/calendar}\n */\nexport const Calendar = (props: CalendarProps<DateValue>) => {\n const recipe = useRecipe({ recipe: calendarSlotRecipe });\n const [recipeProps, remainingProps] = recipe.splitVariantProps(props);\n const [styleProps, otherProps] = extractStyleProps(remainingProps);\n\n return (\n <CalendarRootSlot {...recipeProps} {...styleProps} asChild>\n <RaCalendar {...otherProps}>\n <CalendarCustomContext>\n <CalendarHeader />\n <CalendarGrids />\n </CalendarCustomContext>\n </RaCalendar>\n </CalendarRootSlot>\n );\n};\n"],"names":["withProvider","withContext","createSlotRecipeContext","CalendarRootSlot","CalendarHeaderSlot","CalendarGridsSlot","CalendarMonthTitleSlot","CalendarGridSlot","CalendarGridHeaderSlot","CalendarHeaderCellSlot","CalendarGridBodySlot","CalendarCellSlot","CalendarGrids","locale","useLocale","context","useSlottedContext","CalendarContext","calendarState","useContext","CalendarStateContext","visibleMonthsCount","todayDate","today","getLocalTimeZone","showMonthTitles","jsx","_","index","gridDate","monthName","jsxs","Box","RaCalendarGrid","RaCalendarGridHeader","day","RaCalendarHeaderCell","RaCalendarGridBody","date","isToday","RaCalendarCell","CalendarHeader","showRangeLabel","Flex","Stack","VisuallyHidden","Heading","IconButton","KeyboardArrowLeft","Text","KeyboardArrowRight","CalendarCustomContext","children","buttonContext","ButtonContext","textContext","TextContext","buttonSlots","monthLabel","monthRangeLabel","yearLabel","textSlots","Provider","Calendar","props","recipe","useRecipe","calendarSlotRecipe","recipeProps","remainingProps","styleProps","otherProps","extractStyleProps","RaCalendar"],"mappings":"ouBAcM,CAAE,aAAAA,EAAc,YAAAC,CAAA,EAAgBC,0BAAwB,CAC5D,IAAK,UACP,CAAC,EAEYC,EAGTH,EAAoD,MAAO,MAAM,EAExDI,EAAqBH,EAGhC,MAAO,QAAQ,EAEJI,EAAoBJ,EAG/B,MAAO,OAAO,EAEHK,EAAyBL,EAGpC,MAAO,YAAY,EAERM,EAAmBN,EAG9B,QAAS,MAAM,EAEJO,EAAyBP,EAGpC,QAAS,YAAY,EAEVQ,EAAyBR,EAGpC,KAAM,YAAY,EAEPS,EAAuBT,EAGlC,QAAS,UAAU,EAERU,EAAmBV,EAG9B,KAAM,UAAU,ECnCLW,EAAgB,IAAM,CACjC,KAAM,CAAE,OAAAC,CAAA,EAAWC,4CAAA,EACbC,EAAUC,EAAAA,0CAAkBC,2CAAe,EAC3CC,EAAgBC,EAAAA,WAAWC,2CAAoB,EAC/CC,EAAqBN,GAAS,iBAAiB,QAAU,EACzDO,EAAYC,4CAAMC,EAAAA,2CAAkB,EACpCC,EAAkBJ,EAAqB,EAE7C,OACEK,MAACrB,EAAA,CACE,SAAA,MAAM,KAAK,CAAE,OAAQgB,CAAA,EAAsB,CAACM,EAAGC,IAAU,CACxD,MAAMC,EAAWX,EAAc,aAAa,MAAM,IAAI,CACpD,OAAQU,CAAA,CACT,EACKE,EAAY,IAAI,KAAK,eAAejB,EAAQ,CAChD,MAAO,MAAA,CACR,EAAE,OAAOgB,EAAS,OAAOL,EAAAA,0CAAA,CAAkB,CAAC,EAE7C,OACEO,EAAAA,KAACC,EAAAA,IAAA,CAEC,MAAOX,GAAsB,EAAI,OAAS,OAEzC,SAAA,CAAAI,GACCC,EAAAA,IAACpB,GAAwB,SAAAwB,CAAA,CAAU,EAErCJ,EAAAA,IAACnB,EAAA,CAAiB,QAAO,GACvB,SAAAwB,EAAAA,KAACE,EAAAA,0CAAA,CAAe,OAAQ,CAAE,OAAQL,CAAA,EAAS,aAAa,QACtD,SAAA,CAAAF,EAAAA,IAAClB,GAAuB,QAAO,GAC7B,SAAAkB,EAAAA,IAACQ,4CAAA,CACE,SAACC,GACAT,EAAAA,IAACjB,EAAA,CAAuB,QAAO,GAC7B,SAAAiB,EAAAA,IAACU,EAAAA,0CAAA,CAAsB,SAAAD,CAAA,CAAI,EAC7B,EAEJ,CAAA,CACF,QACCzB,EAAA,CAAqB,QAAO,GAC3B,SAAAgB,EAAAA,IAACW,4CAAA,CACE,SAACC,GAAS,CACT,MAAMC,EAAUD,EAAK,QAAQhB,CAAS,IAAM,EAC5C,OACEI,EAAAA,IAACf,GAAiB,QAAO,GAAC,aAAY4B,EACpC,SAAAb,EAAAA,IAACc,EAAAA,0CAAA,CAAe,KAAAF,CAAA,CAAY,CAAA,CAC9B,CAEJ,EACF,CAAA,CACF,CAAA,CAAA,CACF,CAAA,CACF,CAAA,CAAA,EA9BKR,CAAA,CAiCX,CAAC,CAAA,CACH,CAEJ,EC/DaW,EAAiB,IAAM,CAKlC,MAAMC,GAJgB1B,EAAAA,0CAAkBC,2CAAe,GAGV,iBAAiB,QAAU,GACzB,EAE/C,OACES,EAAAA,IAACtB,EAAA,CACC,SAAA2B,EAAAA,KAACY,EAAAA,KAAA,CACC,SAAA,CAAAZ,EAAAA,KAACa,EAAAA,MAAA,CAAM,UAAU,MAAM,WAAW,SAEhC,SAAA,CAAAlB,EAAAA,IAACmB,EAAAA,eAAA,CACC,SAAAnB,EAAAA,IAACoB,EAAAA,0CAAA,CAAA,CAAQ,EACX,EAEApB,EAAAA,IAACqB,EAAAA,WAAA,CACC,KAAML,EAAiB,WAAa,iBACpC,KAAK,KACL,QAAQ,QACR,KAAK,UAEL,eAACM,EAAAA,kBAAA,CAAA,CAAkB,CAAA,CAAA,EAErBtB,EAAAA,IAACuB,EAAAA,KAAA,CACC,UAAU,KACV,WAAW,MACX,MAAM,aACN,MAAOP,EAAiB,OAAS,OACjC,UAAU,SACV,cAAY,OACZ,KAAMA,EAAiB,aAAe,OAAA,CAAA,EAGxChB,EAAAA,IAACqB,EAAAA,WAAA,CACC,KAAML,EAAiB,OAAS,aAChC,KAAK,KACL,QAAQ,QACR,KAAK,UAEL,eAACQ,EAAAA,mBAAA,CAAA,CAAmB,CAAA,CAAA,CACtB,EACF,EACAxB,EAAAA,IAACM,EAAAA,IAAA,CAAI,SAAS,GAAA,CAAI,EAClBD,EAAAA,KAACa,EAAAA,MAAA,CAAM,UAAU,MAAM,WAAW,SAEhC,SAAA,CAAAlB,EAAAA,IAACqB,EAAAA,WAAA,CACC,KAAK,gBACL,KAAK,KACL,QAAQ,QACR,KAAK,UAEL,eAACC,EAAAA,kBAAA,CAAA,CAAkB,CAAA,CAAA,EAErBtB,EAAAA,IAACuB,EAAAA,KAAA,CACC,UAAU,KACV,WAAW,MACX,MAAM,aACN,MAAM,OACN,UAAU,SACV,cAAY,OACZ,KAAK,MAAA,CAAA,EAGPvB,EAAAA,IAACqB,EAAAA,WAAA,CAAW,KAAK,YAAY,KAAK,KAAK,QAAQ,QAAQ,KAAK,UAC1D,SAAArB,EAAAA,IAACwB,EAAAA,mBAAA,CAAA,CAAmB,CAAA,CACtB,CAAA,CAAA,CACF,CAAA,CAAA,CACF,CAAA,CACF,CAEJ,EChFaC,EAAwB,CAAC,CACpC,SAAAC,CACF,IAEM,CACJ,KAAM,CAAE,OAAAvC,CAAA,EAAWC,4CAAA,EACbuC,EAAgBlC,EAAAA,WAAWmC,2CAAa,EACxCC,EAAcpC,EAAAA,WAAWqC,2CAAW,EACpCtC,EAAgBC,EAAAA,WAAWC,2CAAoB,EAM/CqC,EAAc,CAClB,aAAc,CACZ,QAAS,IAAMvC,EAAc,iBAAA,EAC7B,aAAc,YAAA,EAEhB,iBAAkB,CAChB,QAAS,IAAMA,EAAc,qBAAA,EAC7B,aAAc,gBAAA,EAEhB,YAAa,CACX,QAAS,IAAMA,EAAc,iBAAiB,EAAI,EAClD,aAAc,WAAA,EAEhB,gBAAiB,CACf,QAAS,IAAMA,EAAc,qBAAqB,EAAI,EACtD,aAAc,eAAA,CAChB,EAOIwC,EAAa,IAAI,KAAK,eAAe7C,EAAQ,CACjD,MAAO,MAAA,CACR,EAAE,OAAOK,EAAc,YAAY,OAAOM,EAAAA,0CAAA,CAAkB,CAAC,EAExDmC,EAAkB,CACtB,IAAI,KAAK,eAAe9C,EAAQ,CAC9B,MAAO,MAAA,CACR,EAAE,OAAOK,EAAc,aAAa,MAAM,OAAOM,EAAAA,0CAAA,CAAkB,CAAC,EACrE,IAAI,KAAK,eAAeX,EAAQ,CAC9B,MAAO,MAAA,CACR,EAAE,OAAOK,EAAc,aAAa,IAAI,OAAOM,EAAAA,2CAAkB,CAAC,CAAA,EACnE,KAAK,KAAK,EAENoC,EAAY,IAAI,KAAK,eAAe/C,EAAQ,CAChD,KAAM,SAAA,CACP,EAAE,OAAOK,EAAc,YAAY,OAAOM,EAAAA,0CAAA,CAAkB,CAAC,EAExDqC,EAAY,CAChB,MAAO,CAAE,SAAUH,CAAA,EACnB,WAAY,CAAE,SAAUC,CAAA,EACxB,KAAM,CAAE,SAAUC,CAAA,CAAU,EAG9B,OACElC,EAAAA,IAACoC,EAAAA,0CAAA,CACC,OAAQ,CACN,CACER,EAAAA,0CACA,CACE,GAAGD,EACH,MAAO,CACL,GAAIA,GACJ,OAAOA,GAAkB,UACzB,UAAWA,EACPA,EAAc,MACd,CAAA,EACJ,GAAGI,CAAA,CACL,CACF,EAEF,CACED,EAAAA,0CACA,CACE,GAAGD,EACH,MAAO,CACL,GAAIA,GACJ,OAAOA,GAAgB,UACvB,UAAWA,EACPA,EAAY,MACZ,CAAA,EACJ,GAAGM,CAAA,CACL,CACF,CACF,EAGD,SAAAT,CAAA,CAAA,CAGP,ECtFaW,EAAYC,GAAoC,CAC3D,MAAMC,EAASC,EAAAA,UAAU,CAAE,OAAQC,EAAAA,mBAAoB,EACjD,CAACC,EAAaC,CAAc,EAAIJ,EAAO,kBAAkBD,CAAK,EAC9D,CAACM,EAAYC,CAAU,EAAIC,EAAAA,kBAAkBH,CAAc,EAEjE,OACE3C,EAAAA,IAACvB,EAAA,CAAkB,GAAGiE,EAAc,GAAGE,EAAY,QAAO,GACxD,SAAA5C,EAAAA,IAAC+C,EAAAA,0CAAA,CAAY,GAAGF,EACd,gBAACpB,EAAA,CACC,SAAA,CAAAzB,EAAAA,IAACe,EAAA,EAAe,QACf7B,EAAA,CAAA,CAAc,CAAA,CAAA,CACjB,EACF,EACF,CAEJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collapsible-motion-C7M_CLNI.cjs.js","sources":["../../src/components/collapsible-motion/components/collapsible-motion-context.tsx","../../src/components/collapsible-motion/collapsible-motion.slots.tsx","../../src/components/collapsible-motion/components/collapsible-motion-root.tsx","../../src/components/collapsible-motion/components/collapsible-motion-trigger.tsx","../../src/components/collapsible-motion/components/collapsible-motion-content.tsx","../../src/components/collapsible-motion/collapsible-motion.tsx"],"sourcesContent":["import { createContext, useContext } from \"react\";\nimport type { CollapsibleMotionContextValue } from \"../collapsible-motion.types\";\n\n/**\n * React Context for sharing CollapsibleMotion state between compound components\n */\nexport const CollapsibleMotionContext = createContext<\n CollapsibleMotionContextValue | undefined\n>(undefined);\n\n/**\n * Custom hook to consume CollapsibleMotion context\n */\nexport function useCollapsibleMotionContext(): CollapsibleMotionContextValue {\n const context = useContext(CollapsibleMotionContext);\n\n if (context === undefined) {\n throw new Error(\n \"useCollapsibleMotionContext must be used within a CollapsibleMotion.Root component\"\n );\n }\n\n return context;\n}\n","import {\n createSlotRecipeContext,\n type HTMLChakraProps,\n} from \"@chakra-ui/react\";\nimport type { CollapsibleMotionRootSlotProps } from \"./collapsible-motion.types\";\nimport type { SlotComponent } from \"@/utils/slot-types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"collapsibleMotion\",\n});\n\nexport const CollapsibleMotionRootSlot: SlotComponent<\n HTMLDivElement,\n CollapsibleMotionRootSlotProps\n> = withProvider<HTMLDivElement, CollapsibleMotionRootSlotProps>(\"div\", \"root\");\n\nexport const CollapsibleMotionTriggerSlot = withContext<\n HTMLButtonElement,\n HTMLChakraProps<\"button\">\n>(\"button\", \"trigger\");\n\nexport const CollapsibleMotionContentSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"content\");\n","import { useRef, forwardRef } from \"react\";\nimport { useDisclosure } from \"react-aria\";\nimport { useDisclosureState } from \"react-stately\";\nimport { CollapsibleMotionContext } from \"./collapsible-motion-context\";\nimport { CollapsibleMotionRootSlot } from \"../collapsible-motion.slots\";\nimport type { CollapsibleMotionRootProps } from \"../collapsible-motion.types\";\n\n/**\n * CollapsibleMotion.Root - The root container component that manages state and provides context\n *\n * This component contains all the state management logic and provides context to\n * CollapsibleMotion.Trigger and CollapsibleMotion.Content components.\n */\nexport const CollapsibleMotionRoot: React.ForwardRefExoticComponent<\n CollapsibleMotionRootProps & React.RefAttributes<HTMLDivElement>\n> = forwardRef<HTMLDivElement, CollapsibleMotionRootProps>(\n (\n {\n children,\n defaultExpanded = false,\n isExpanded: controlledExpanded,\n onExpandedChange,\n isDisabled = false,\n ...props\n },\n forwardedRef\n ) => {\n // Use React Aria's disclosure state management\n const disclosureState = useDisclosureState({\n defaultExpanded,\n isExpanded: controlledExpanded,\n onExpandedChange,\n });\n\n const panelRef = useRef<HTMLDivElement>(null);\n\n // Use React Aria's disclosure hook for ARIA props\n const { buttonProps, panelProps } = useDisclosure(\n { isDisabled },\n disclosureState,\n panelRef\n );\n\n // Context value to provide to child components\n const contextValue = {\n isDisabled,\n isExpanded: disclosureState.isExpanded,\n buttonProps,\n panelProps,\n panelRef,\n };\n\n return (\n <CollapsibleMotionContext.Provider value={contextValue}>\n <CollapsibleMotionRootSlot ref={forwardedRef} {...props}>\n {children}\n </CollapsibleMotionRootSlot>\n </CollapsibleMotionContext.Provider>\n );\n }\n);\n\nCollapsibleMotionRoot.displayName = \"CollapsibleMotion.Root\";\n","import { forwardRef } from \"react\";\nimport { mergeProps } from \"react-aria\";\nimport { useCollapsibleMotionContext } from \"./collapsible-motion-context\";\nimport { CollapsibleMotionTriggerSlot } from \"../collapsible-motion.slots\";\nimport type { CollapsibleMotionTriggerProps } from \"../collapsible-motion.types\";\nimport { Button as RaButton } from \"react-aria-components\";\nimport { chakra } from \"@chakra-ui/react/styled-system\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\n/**\n * CollapsibleMotion.Trigger - The trigger button that toggles the collapsible content\n *\n * This component renders a button with proper ARIA attributes for accessibility.\n * It automatically handles the toggle functionality when clicked.\n */\nexport const CollapsibleMotionTrigger = forwardRef<\n HTMLButtonElement,\n CollapsibleMotionTriggerProps\n>(({ children, asChild, ...props }, forwardedRef) => {\n const { buttonProps, isDisabled } = useCollapsibleMotionContext();\n\n // Use mergeProps to properly compose event handlers like React Aria does\n const componentProps = mergeProps(props, buttonProps, {\n disabled: isDisabled,\n });\n\n // If asChild is true, wrap children directly in a button with asChild\n if (asChild) {\n return (\n <chakra.button asChild {...componentProps}>\n {children}\n </chakra.button>\n );\n }\n\n const [styleProps, restProps] = extractStyleProps(componentProps);\n\n // Otherwise, wrap with both CollapsibleMotionTriggerSlot and RaButton\n // Only pass React Aria compatible props to avoid type conflicts\n return (\n <CollapsibleMotionTriggerSlot ref={forwardedRef} {...styleProps} asChild>\n <RaButton {...restProps}>{children}</RaButton>\n </CollapsibleMotionTriggerSlot>\n );\n});\n\nCollapsibleMotionTrigger.displayName = \"CollapsibleMotion.Trigger\";\n","import { forwardRef, useRef } from \"react\";\nimport { useObjectRef } from \"react-aria\";\nimport { mergeRefs, Presence } from \"@chakra-ui/react\";\nimport { useCollapsibleMotionContext } from \"./collapsible-motion-context\";\nimport { CollapsibleMotionContentSlot } from \"../collapsible-motion.slots\";\nimport type { CollapsibleMotionContentProps } from \"../collapsible-motion.types\";\n\n/**\n * CollapsibleMotion.Content - The collapsible content container\n *\n * This component renders the content that will expand and collapse.\n * It handles accessibility attributes through React Aria.\n */\nexport const CollapsibleMotionContent = forwardRef<\n HTMLDivElement,\n CollapsibleMotionContentProps\n>(({ children, ...props }, forwardedRef) => {\n const { panelProps, isExpanded } = useCollapsibleMotionContext();\n\n // Create a local ref and merge with forwardedRef (for user)\n const localRef = useRef<HTMLDivElement>(null);\n const ref = useObjectRef(mergeRefs(localRef, forwardedRef));\n\n return (\n <CollapsibleMotionContentSlot ref={ref} {...props} {...panelProps} asChild>\n <Presence\n present={isExpanded}\n animationName={{\n _open: \"slide-from-top, fade-in\",\n _closed: \"slide-to-top, fade-out\",\n }}\n animationDuration=\"fast\"\n >\n {children}\n </Presence>\n </CollapsibleMotionContentSlot>\n );\n});\n\nCollapsibleMotionContent.displayName = \"CollapsibleMotion.Content\";\n","import { CollapsibleMotionRoot } from \"./components/collapsible-motion-root\";\nimport { CollapsibleMotionTrigger } from \"./components/collapsible-motion-trigger\";\nimport { CollapsibleMotionContent } from \"./components/collapsible-motion-content\";\n\n// Exports for internal use by react-docgen\nexport {\n CollapsibleMotionRoot as _CollapsibleMotionRoot,\n CollapsibleMotionTrigger as _CollapsibleMotionTrigger,\n CollapsibleMotionContent as _CollapsibleMotionContent,\n};\n\ntype CollapsibleMotionNamespace = {\n Root: typeof CollapsibleMotionRoot;\n Trigger: typeof CollapsibleMotionTrigger;\n Content: typeof CollapsibleMotionContent;\n};\n\nexport const CollapsibleMotion: CollapsibleMotionNamespace = {\n Root: CollapsibleMotionRoot,\n Trigger: CollapsibleMotionTrigger,\n Content: CollapsibleMotionContent,\n};\n"],"names":["CollapsibleMotionContext","createContext","useCollapsibleMotionContext","context","useContext","withProvider","withContext","createSlotRecipeContext","CollapsibleMotionRootSlot","CollapsibleMotionTriggerSlot","CollapsibleMotionContentSlot","CollapsibleMotionRoot","forwardRef","children","defaultExpanded","controlledExpanded","onExpandedChange","isDisabled","props","forwardedRef","disclosureState","useDisclosureState","panelRef","useRef","buttonProps","panelProps","useDisclosure","contextValue","jsx","CollapsibleMotionTrigger","asChild","componentProps","mergeProps","chakra","styleProps","restProps","extractStyleProps","RaButton","CollapsibleMotionContent","isExpanded","localRef","ref","useObjectRef","mergeRefs","Presence","CollapsibleMotion"],"mappings":"8WAMaA,EAA2BC,EAAAA,cAEtC,MAAS,EAKJ,SAASC,GAA6D,CAC3E,MAAMC,EAAUC,EAAAA,WAAWJ,CAAwB,EAEnD,GAAIG,IAAY,OACd,MAAM,IAAI,MACR,oFAAA,EAIJ,OAAOA,CACT,CChBA,KAAM,CAAE,aAAAE,EAAc,YAAAC,CAAA,EAAgBC,0BAAwB,CAC5D,IAAK,mBACP,CAAC,EAEYC,EAGTH,EAA6D,MAAO,MAAM,EAEjEI,EAA+BH,EAG1C,SAAU,SAAS,EAERI,EAA+BJ,EAG1C,MAAO,SAAS,ECXLK,EAETC,EAAAA,WACF,CACE,CACE,SAAAC,EACA,gBAAAC,EAAkB,GAClB,WAAYC,EACZ,iBAAAC,EACA,WAAAC,EAAa,GACb,GAAGC,CAAA,EAELC,IACG,CAEH,MAAMC,EAAkBC,EAAAA,0CAAmB,CACzC,gBAAAP,EACA,WAAYC,EACZ,iBAAAC,CAAA,CACD,EAEKM,EAAWC,EAAAA,OAAuB,IAAI,EAGtC,CAAE,YAAAC,EAAa,WAAAC,CAAA,EAAeC,EAAAA,0CAClC,CAAE,WAAAT,CAAA,EACFG,EACAE,CAAA,EAIIK,EAAe,CACnB,WAAAV,EACA,WAAYG,EAAgB,WAC5B,YAAAI,EACA,WAAAC,EACA,SAAAH,CAAA,EAGF,OACEM,EAAAA,IAAC5B,EAAyB,SAAzB,CAAkC,MAAO2B,EACxC,SAAAC,EAAAA,IAACpB,EAAA,CAA0B,IAAKW,EAAe,GAAGD,EAC/C,SAAAL,EACH,EACF,CAEJ,CACF,EAEAF,EAAsB,YAAc,yBC/C7B,MAAMkB,EAA2BjB,EAAAA,WAGtC,CAAC,CAAE,SAAAC,EAAU,QAAAiB,EAAS,GAAGZ,CAAA,EAASC,IAAiB,CACnD,KAAM,CAAE,YAAAK,EAAa,WAAAP,CAAA,EAAef,EAAA,EAG9B6B,EAAiBC,EAAAA,0CAAWd,EAAOM,EAAa,CACpD,SAAUP,CAAA,CACX,EAGD,GAAIa,EACF,OACEF,EAAAA,IAACK,EAAAA,OAAO,OAAP,CAAc,QAAO,GAAE,GAAGF,EACxB,SAAAlB,EACH,EAIJ,KAAM,CAACqB,EAAYC,CAAS,EAAIC,EAAAA,kBAAkBL,CAAc,EAIhE,OACEH,EAAAA,IAACnB,EAAA,CAA6B,IAAKU,EAAe,GAAGe,EAAY,QAAO,GACtE,SAAAN,EAAAA,IAACS,4CAAA,CAAU,GAAGF,EAAY,SAAAtB,EAAS,EACrC,CAEJ,CAAC,EAEDgB,EAAyB,YAAc,4BCjChC,MAAMS,EAA2B1B,EAAAA,WAGtC,CAAC,CAAE,SAAAC,EAAU,GAAGK,CAAA,EAASC,IAAiB,CAC1C,KAAM,CAAE,WAAAM,EAAY,WAAAc,CAAA,EAAerC,EAAA,EAG7BsC,EAAWjB,EAAAA,OAAuB,IAAI,EACtCkB,EAAMC,EAAAA,0CAAaC,EAAAA,UAAUH,EAAUrB,CAAY,CAAC,EAE1D,OACES,MAAClB,GAA6B,IAAA+B,EAAW,GAAGvB,EAAQ,GAAGO,EAAY,QAAO,GACxE,SAAAG,EAAAA,IAACgB,EAAAA,SAAA,CACC,QAASL,EACT,cAAe,CACb,MAAO,0BACP,QAAS,wBAAA,EAEX,kBAAkB,OAEjB,SAAA1B,CAAA,CAAA,EAEL,CAEJ,CAAC,EAEDyB,EAAyB,YAAc,4BCtBhC,MAAMO,EAAgD,CAC3D,KAAMlC,EACN,QAASkB,EACT,QAASS,CACX"}
|
|
1
|
+
{"version":3,"file":"collapsible-motion-C7M_CLNI.cjs.js","sources":["../../src/components/collapsible-motion/components/collapsible-motion-context.tsx","../../src/components/collapsible-motion/collapsible-motion.slots.tsx","../../src/components/collapsible-motion/components/collapsible-motion-root.tsx","../../src/components/collapsible-motion/components/collapsible-motion-trigger.tsx","../../src/components/collapsible-motion/components/collapsible-motion-content.tsx","../../src/components/collapsible-motion/collapsible-motion.tsx"],"sourcesContent":["import { createContext, useContext } from \"react\";\nimport type { CollapsibleMotionContextValue } from \"../collapsible-motion.types\";\n\n/**\n * React Context for sharing CollapsibleMotion state between compound components\n */\nexport const CollapsibleMotionContext = createContext<\n CollapsibleMotionContextValue | undefined\n>(undefined);\n\n/**\n * Custom hook to consume CollapsibleMotion context\n */\nexport function useCollapsibleMotionContext(): CollapsibleMotionContextValue {\n const context = useContext(CollapsibleMotionContext);\n\n if (context === undefined) {\n throw new Error(\n \"useCollapsibleMotionContext must be used within a CollapsibleMotion.Root component\"\n );\n }\n\n return context;\n}\n","import {\n createSlotRecipeContext,\n type HTMLChakraProps,\n} from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type { CollapsibleMotionRootSlotProps } from \"./collapsible-motion.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"collapsibleMotion\",\n});\n\nexport const CollapsibleMotionRootSlot: SlotComponent<\n HTMLDivElement,\n CollapsibleMotionRootSlotProps\n> = withProvider<HTMLDivElement, CollapsibleMotionRootSlotProps>(\"div\", \"root\");\n\nexport const CollapsibleMotionTriggerSlot = withContext<\n HTMLButtonElement,\n HTMLChakraProps<\"button\">\n>(\"button\", \"trigger\");\n\nexport const CollapsibleMotionContentSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"content\");\n","import { useRef, forwardRef } from \"react\";\nimport { useDisclosure } from \"react-aria\";\nimport { useDisclosureState } from \"react-stately\";\nimport { CollapsibleMotionContext } from \"./collapsible-motion-context\";\nimport { CollapsibleMotionRootSlot } from \"../collapsible-motion.slots\";\nimport type { CollapsibleMotionRootProps } from \"../collapsible-motion.types\";\n\n/**\n * CollapsibleMotion.Root - The root container component that manages state and provides context\n *\n * This component contains all the state management logic and provides context to\n * CollapsibleMotion.Trigger and CollapsibleMotion.Content components.\n */\nexport const CollapsibleMotionRoot: React.ForwardRefExoticComponent<\n CollapsibleMotionRootProps & React.RefAttributes<HTMLDivElement>\n> = forwardRef<HTMLDivElement, CollapsibleMotionRootProps>(\n (\n {\n children,\n defaultExpanded = false,\n isExpanded: controlledExpanded,\n onExpandedChange,\n isDisabled = false,\n ...props\n },\n forwardedRef\n ) => {\n // Use React Aria's disclosure state management\n const disclosureState = useDisclosureState({\n defaultExpanded,\n isExpanded: controlledExpanded,\n onExpandedChange,\n });\n\n const panelRef = useRef<HTMLDivElement>(null);\n\n // Use React Aria's disclosure hook for ARIA props\n const { buttonProps, panelProps } = useDisclosure(\n { isDisabled },\n disclosureState,\n panelRef\n );\n\n // Context value to provide to child components\n const contextValue = {\n isDisabled,\n isExpanded: disclosureState.isExpanded,\n buttonProps,\n panelProps,\n panelRef,\n };\n\n return (\n <CollapsibleMotionContext.Provider value={contextValue}>\n <CollapsibleMotionRootSlot ref={forwardedRef} {...props}>\n {children}\n </CollapsibleMotionRootSlot>\n </CollapsibleMotionContext.Provider>\n );\n }\n);\n\nCollapsibleMotionRoot.displayName = \"CollapsibleMotion.Root\";\n","import { forwardRef } from \"react\";\nimport { mergeProps } from \"react-aria\";\nimport { useCollapsibleMotionContext } from \"./collapsible-motion-context\";\nimport { CollapsibleMotionTriggerSlot } from \"../collapsible-motion.slots\";\nimport type { CollapsibleMotionTriggerProps } from \"../collapsible-motion.types\";\nimport { Button as RaButton } from \"react-aria-components\";\nimport { chakra } from \"@chakra-ui/react/styled-system\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\n/**\n * CollapsibleMotion.Trigger - The trigger button that toggles the collapsible content\n *\n * This component renders a button with proper ARIA attributes for accessibility.\n * It automatically handles the toggle functionality when clicked.\n */\nexport const CollapsibleMotionTrigger = forwardRef<\n HTMLButtonElement,\n CollapsibleMotionTriggerProps\n>(({ children, asChild, ...props }, forwardedRef) => {\n const { buttonProps, isDisabled } = useCollapsibleMotionContext();\n\n // Use mergeProps to properly compose event handlers like React Aria does\n const componentProps = mergeProps(props, buttonProps, {\n disabled: isDisabled,\n });\n\n // If asChild is true, wrap children directly in a button with asChild\n if (asChild) {\n return (\n <chakra.button asChild {...componentProps}>\n {children}\n </chakra.button>\n );\n }\n\n const [styleProps, restProps] = extractStyleProps(componentProps);\n\n // Otherwise, wrap with both CollapsibleMotionTriggerSlot and RaButton\n // Only pass React Aria compatible props to avoid type conflicts\n return (\n <CollapsibleMotionTriggerSlot ref={forwardedRef} {...styleProps} asChild>\n <RaButton {...restProps}>{children}</RaButton>\n </CollapsibleMotionTriggerSlot>\n );\n});\n\nCollapsibleMotionTrigger.displayName = \"CollapsibleMotion.Trigger\";\n","import { forwardRef, useRef } from \"react\";\nimport { useObjectRef } from \"react-aria\";\nimport { mergeRefs, Presence } from \"@chakra-ui/react\";\nimport { useCollapsibleMotionContext } from \"./collapsible-motion-context\";\nimport { CollapsibleMotionContentSlot } from \"../collapsible-motion.slots\";\nimport type { CollapsibleMotionContentProps } from \"../collapsible-motion.types\";\n\n/**\n * CollapsibleMotion.Content - The collapsible content container\n *\n * This component renders the content that will expand and collapse.\n * It handles accessibility attributes through React Aria.\n */\nexport const CollapsibleMotionContent = forwardRef<\n HTMLDivElement,\n CollapsibleMotionContentProps\n>(({ children, ...props }, forwardedRef) => {\n const { panelProps, isExpanded } = useCollapsibleMotionContext();\n\n // Create a local ref and merge with forwardedRef (for user)\n const localRef = useRef<HTMLDivElement>(null);\n const ref = useObjectRef(mergeRefs(localRef, forwardedRef));\n\n return (\n <CollapsibleMotionContentSlot ref={ref} {...props} {...panelProps} asChild>\n <Presence\n present={isExpanded}\n animationName={{\n _open: \"slide-from-top, fade-in\",\n _closed: \"slide-to-top, fade-out\",\n }}\n animationDuration=\"fast\"\n >\n {children}\n </Presence>\n </CollapsibleMotionContentSlot>\n );\n});\n\nCollapsibleMotionContent.displayName = \"CollapsibleMotion.Content\";\n","import { CollapsibleMotionRoot } from \"./components/collapsible-motion-root\";\nimport { CollapsibleMotionTrigger } from \"./components/collapsible-motion-trigger\";\nimport { CollapsibleMotionContent } from \"./components/collapsible-motion-content\";\n\n// Exports for internal use by react-docgen\nexport {\n CollapsibleMotionRoot as _CollapsibleMotionRoot,\n CollapsibleMotionTrigger as _CollapsibleMotionTrigger,\n CollapsibleMotionContent as _CollapsibleMotionContent,\n};\n\ntype CollapsibleMotionNamespace = {\n Root: typeof CollapsibleMotionRoot;\n Trigger: typeof CollapsibleMotionTrigger;\n Content: typeof CollapsibleMotionContent;\n};\n\nexport const CollapsibleMotion: CollapsibleMotionNamespace = {\n Root: CollapsibleMotionRoot,\n Trigger: CollapsibleMotionTrigger,\n Content: CollapsibleMotionContent,\n};\n"],"names":["CollapsibleMotionContext","createContext","useCollapsibleMotionContext","context","useContext","withProvider","withContext","createSlotRecipeContext","CollapsibleMotionRootSlot","CollapsibleMotionTriggerSlot","CollapsibleMotionContentSlot","CollapsibleMotionRoot","forwardRef","children","defaultExpanded","controlledExpanded","onExpandedChange","isDisabled","props","forwardedRef","disclosureState","useDisclosureState","panelRef","useRef","buttonProps","panelProps","useDisclosure","contextValue","jsx","CollapsibleMotionTrigger","asChild","componentProps","mergeProps","chakra","styleProps","restProps","extractStyleProps","RaButton","CollapsibleMotionContent","isExpanded","localRef","ref","useObjectRef","mergeRefs","Presence","CollapsibleMotion"],"mappings":"8WAMaA,EAA2BC,EAAAA,cAEtC,MAAS,EAKJ,SAASC,GAA6D,CAC3E,MAAMC,EAAUC,EAAAA,WAAWJ,CAAwB,EAEnD,GAAIG,IAAY,OACd,MAAM,IAAI,MACR,oFAAA,EAIJ,OAAOA,CACT,CChBA,KAAM,CAAE,aAAAE,EAAc,YAAAC,CAAA,EAAgBC,0BAAwB,CAC5D,IAAK,mBACP,CAAC,EAEYC,EAGTH,EAA6D,MAAO,MAAM,EAEjEI,EAA+BH,EAG1C,SAAU,SAAS,EAERI,EAA+BJ,EAG1C,MAAO,SAAS,ECXLK,EAETC,EAAAA,WACF,CACE,CACE,SAAAC,EACA,gBAAAC,EAAkB,GAClB,WAAYC,EACZ,iBAAAC,EACA,WAAAC,EAAa,GACb,GAAGC,CAAA,EAELC,IACG,CAEH,MAAMC,EAAkBC,EAAAA,0CAAmB,CACzC,gBAAAP,EACA,WAAYC,EACZ,iBAAAC,CAAA,CACD,EAEKM,EAAWC,EAAAA,OAAuB,IAAI,EAGtC,CAAE,YAAAC,EAAa,WAAAC,CAAA,EAAeC,EAAAA,0CAClC,CAAE,WAAAT,CAAA,EACFG,EACAE,CAAA,EAIIK,EAAe,CACnB,WAAAV,EACA,WAAYG,EAAgB,WAC5B,YAAAI,EACA,WAAAC,EACA,SAAAH,CAAA,EAGF,OACEM,EAAAA,IAAC5B,EAAyB,SAAzB,CAAkC,MAAO2B,EACxC,SAAAC,EAAAA,IAACpB,EAAA,CAA0B,IAAKW,EAAe,GAAGD,EAC/C,SAAAL,EACH,EACF,CAEJ,CACF,EAEAF,EAAsB,YAAc,yBC/C7B,MAAMkB,EAA2BjB,EAAAA,WAGtC,CAAC,CAAE,SAAAC,EAAU,QAAAiB,EAAS,GAAGZ,CAAA,EAASC,IAAiB,CACnD,KAAM,CAAE,YAAAK,EAAa,WAAAP,CAAA,EAAef,EAAA,EAG9B6B,EAAiBC,EAAAA,0CAAWd,EAAOM,EAAa,CACpD,SAAUP,CAAA,CACX,EAGD,GAAIa,EACF,OACEF,EAAAA,IAACK,EAAAA,OAAO,OAAP,CAAc,QAAO,GAAE,GAAGF,EACxB,SAAAlB,EACH,EAIJ,KAAM,CAACqB,EAAYC,CAAS,EAAIC,EAAAA,kBAAkBL,CAAc,EAIhE,OACEH,EAAAA,IAACnB,EAAA,CAA6B,IAAKU,EAAe,GAAGe,EAAY,QAAO,GACtE,SAAAN,EAAAA,IAACS,4CAAA,CAAU,GAAGF,EAAY,SAAAtB,EAAS,EACrC,CAEJ,CAAC,EAEDgB,EAAyB,YAAc,4BCjChC,MAAMS,EAA2B1B,EAAAA,WAGtC,CAAC,CAAE,SAAAC,EAAU,GAAGK,CAAA,EAASC,IAAiB,CAC1C,KAAM,CAAE,WAAAM,EAAY,WAAAc,CAAA,EAAerC,EAAA,EAG7BsC,EAAWjB,EAAAA,OAAuB,IAAI,EACtCkB,EAAMC,EAAAA,0CAAaC,EAAAA,UAAUH,EAAUrB,CAAY,CAAC,EAE1D,OACES,MAAClB,GAA6B,IAAA+B,EAAW,GAAGvB,EAAQ,GAAGO,EAAY,QAAO,GACxE,SAAAG,EAAAA,IAACgB,EAAAA,SAAA,CACC,QAASL,EACT,cAAe,CACb,MAAO,0BACP,QAAS,wBAAA,EAEX,kBAAkB,OAEjB,SAAA1B,CAAA,CAAA,EAEL,CAEJ,CAAC,EAEDyB,EAAyB,YAAc,4BCtBhC,MAAMO,EAAgD,CAC3D,KAAMlC,EACN,QAASkB,EACT,QAASS,CACX"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collapsible-motion-CSrKjF8X.es.js","sources":["../../src/components/collapsible-motion/components/collapsible-motion-context.tsx","../../src/components/collapsible-motion/collapsible-motion.slots.tsx","../../src/components/collapsible-motion/components/collapsible-motion-root.tsx","../../src/components/collapsible-motion/components/collapsible-motion-trigger.tsx","../../src/components/collapsible-motion/components/collapsible-motion-content.tsx","../../src/components/collapsible-motion/collapsible-motion.tsx"],"sourcesContent":["import { createContext, useContext } from \"react\";\nimport type { CollapsibleMotionContextValue } from \"../collapsible-motion.types\";\n\n/**\n * React Context for sharing CollapsibleMotion state between compound components\n */\nexport const CollapsibleMotionContext = createContext<\n CollapsibleMotionContextValue | undefined\n>(undefined);\n\n/**\n * Custom hook to consume CollapsibleMotion context\n */\nexport function useCollapsibleMotionContext(): CollapsibleMotionContextValue {\n const context = useContext(CollapsibleMotionContext);\n\n if (context === undefined) {\n throw new Error(\n \"useCollapsibleMotionContext must be used within a CollapsibleMotion.Root component\"\n );\n }\n\n return context;\n}\n","import {\n createSlotRecipeContext,\n type HTMLChakraProps,\n} from \"@chakra-ui/react\";\nimport type { CollapsibleMotionRootSlotProps } from \"./collapsible-motion.types\";\nimport type { SlotComponent } from \"@/utils/slot-types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"collapsibleMotion\",\n});\n\nexport const CollapsibleMotionRootSlot: SlotComponent<\n HTMLDivElement,\n CollapsibleMotionRootSlotProps\n> = withProvider<HTMLDivElement, CollapsibleMotionRootSlotProps>(\"div\", \"root\");\n\nexport const CollapsibleMotionTriggerSlot = withContext<\n HTMLButtonElement,\n HTMLChakraProps<\"button\">\n>(\"button\", \"trigger\");\n\nexport const CollapsibleMotionContentSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"content\");\n","import { useRef, forwardRef } from \"react\";\nimport { useDisclosure } from \"react-aria\";\nimport { useDisclosureState } from \"react-stately\";\nimport { CollapsibleMotionContext } from \"./collapsible-motion-context\";\nimport { CollapsibleMotionRootSlot } from \"../collapsible-motion.slots\";\nimport type { CollapsibleMotionRootProps } from \"../collapsible-motion.types\";\n\n/**\n * CollapsibleMotion.Root - The root container component that manages state and provides context\n *\n * This component contains all the state management logic and provides context to\n * CollapsibleMotion.Trigger and CollapsibleMotion.Content components.\n */\nexport const CollapsibleMotionRoot: React.ForwardRefExoticComponent<\n CollapsibleMotionRootProps & React.RefAttributes<HTMLDivElement>\n> = forwardRef<HTMLDivElement, CollapsibleMotionRootProps>(\n (\n {\n children,\n defaultExpanded = false,\n isExpanded: controlledExpanded,\n onExpandedChange,\n isDisabled = false,\n ...props\n },\n forwardedRef\n ) => {\n // Use React Aria's disclosure state management\n const disclosureState = useDisclosureState({\n defaultExpanded,\n isExpanded: controlledExpanded,\n onExpandedChange,\n });\n\n const panelRef = useRef<HTMLDivElement>(null);\n\n // Use React Aria's disclosure hook for ARIA props\n const { buttonProps, panelProps } = useDisclosure(\n { isDisabled },\n disclosureState,\n panelRef\n );\n\n // Context value to provide to child components\n const contextValue = {\n isDisabled,\n isExpanded: disclosureState.isExpanded,\n buttonProps,\n panelProps,\n panelRef,\n };\n\n return (\n <CollapsibleMotionContext.Provider value={contextValue}>\n <CollapsibleMotionRootSlot ref={forwardedRef} {...props}>\n {children}\n </CollapsibleMotionRootSlot>\n </CollapsibleMotionContext.Provider>\n );\n }\n);\n\nCollapsibleMotionRoot.displayName = \"CollapsibleMotion.Root\";\n","import { forwardRef } from \"react\";\nimport { mergeProps } from \"react-aria\";\nimport { useCollapsibleMotionContext } from \"./collapsible-motion-context\";\nimport { CollapsibleMotionTriggerSlot } from \"../collapsible-motion.slots\";\nimport type { CollapsibleMotionTriggerProps } from \"../collapsible-motion.types\";\nimport { Button as RaButton } from \"react-aria-components\";\nimport { chakra } from \"@chakra-ui/react/styled-system\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\n/**\n * CollapsibleMotion.Trigger - The trigger button that toggles the collapsible content\n *\n * This component renders a button with proper ARIA attributes for accessibility.\n * It automatically handles the toggle functionality when clicked.\n */\nexport const CollapsibleMotionTrigger = forwardRef<\n HTMLButtonElement,\n CollapsibleMotionTriggerProps\n>(({ children, asChild, ...props }, forwardedRef) => {\n const { buttonProps, isDisabled } = useCollapsibleMotionContext();\n\n // Use mergeProps to properly compose event handlers like React Aria does\n const componentProps = mergeProps(props, buttonProps, {\n disabled: isDisabled,\n });\n\n // If asChild is true, wrap children directly in a button with asChild\n if (asChild) {\n return (\n <chakra.button asChild {...componentProps}>\n {children}\n </chakra.button>\n );\n }\n\n const [styleProps, restProps] = extractStyleProps(componentProps);\n\n // Otherwise, wrap with both CollapsibleMotionTriggerSlot and RaButton\n // Only pass React Aria compatible props to avoid type conflicts\n return (\n <CollapsibleMotionTriggerSlot ref={forwardedRef} {...styleProps} asChild>\n <RaButton {...restProps}>{children}</RaButton>\n </CollapsibleMotionTriggerSlot>\n );\n});\n\nCollapsibleMotionTrigger.displayName = \"CollapsibleMotion.Trigger\";\n","import { forwardRef, useRef } from \"react\";\nimport { useObjectRef } from \"react-aria\";\nimport { mergeRefs, Presence } from \"@chakra-ui/react\";\nimport { useCollapsibleMotionContext } from \"./collapsible-motion-context\";\nimport { CollapsibleMotionContentSlot } from \"../collapsible-motion.slots\";\nimport type { CollapsibleMotionContentProps } from \"../collapsible-motion.types\";\n\n/**\n * CollapsibleMotion.Content - The collapsible content container\n *\n * This component renders the content that will expand and collapse.\n * It handles accessibility attributes through React Aria.\n */\nexport const CollapsibleMotionContent = forwardRef<\n HTMLDivElement,\n CollapsibleMotionContentProps\n>(({ children, ...props }, forwardedRef) => {\n const { panelProps, isExpanded } = useCollapsibleMotionContext();\n\n // Create a local ref and merge with forwardedRef (for user)\n const localRef = useRef<HTMLDivElement>(null);\n const ref = useObjectRef(mergeRefs(localRef, forwardedRef));\n\n return (\n <CollapsibleMotionContentSlot ref={ref} {...props} {...panelProps} asChild>\n <Presence\n present={isExpanded}\n animationName={{\n _open: \"slide-from-top, fade-in\",\n _closed: \"slide-to-top, fade-out\",\n }}\n animationDuration=\"fast\"\n >\n {children}\n </Presence>\n </CollapsibleMotionContentSlot>\n );\n});\n\nCollapsibleMotionContent.displayName = \"CollapsibleMotion.Content\";\n","import { CollapsibleMotionRoot } from \"./components/collapsible-motion-root\";\nimport { CollapsibleMotionTrigger } from \"./components/collapsible-motion-trigger\";\nimport { CollapsibleMotionContent } from \"./components/collapsible-motion-content\";\n\n// Exports for internal use by react-docgen\nexport {\n CollapsibleMotionRoot as _CollapsibleMotionRoot,\n CollapsibleMotionTrigger as _CollapsibleMotionTrigger,\n CollapsibleMotionContent as _CollapsibleMotionContent,\n};\n\ntype CollapsibleMotionNamespace = {\n Root: typeof CollapsibleMotionRoot;\n Trigger: typeof CollapsibleMotionTrigger;\n Content: typeof CollapsibleMotionContent;\n};\n\nexport const CollapsibleMotion: CollapsibleMotionNamespace = {\n Root: CollapsibleMotionRoot,\n Trigger: CollapsibleMotionTrigger,\n Content: CollapsibleMotionContent,\n};\n"],"names":["CollapsibleMotionContext","createContext","useCollapsibleMotionContext","context","useContext","withProvider","withContext","createSlotRecipeContext","CollapsibleMotionRootSlot","CollapsibleMotionTriggerSlot","CollapsibleMotionContentSlot","CollapsibleMotionRoot","forwardRef","children","defaultExpanded","controlledExpanded","onExpandedChange","isDisabled","props","forwardedRef","disclosureState","useDisclosureState","panelRef","useRef","buttonProps","panelProps","useDisclosure","contextValue","jsx","CollapsibleMotionTrigger","asChild","componentProps","mergeProps","chakra","styleProps","restProps","extractStyleProps","RaButton","CollapsibleMotionContent","isExpanded","localRef","ref","useObjectRef","mergeRefs","Presence","CollapsibleMotion"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"collapsible-motion-CSrKjF8X.es.js","sources":["../../src/components/collapsible-motion/components/collapsible-motion-context.tsx","../../src/components/collapsible-motion/collapsible-motion.slots.tsx","../../src/components/collapsible-motion/components/collapsible-motion-root.tsx","../../src/components/collapsible-motion/components/collapsible-motion-trigger.tsx","../../src/components/collapsible-motion/components/collapsible-motion-content.tsx","../../src/components/collapsible-motion/collapsible-motion.tsx"],"sourcesContent":["import { createContext, useContext } from \"react\";\nimport type { CollapsibleMotionContextValue } from \"../collapsible-motion.types\";\n\n/**\n * React Context for sharing CollapsibleMotion state between compound components\n */\nexport const CollapsibleMotionContext = createContext<\n CollapsibleMotionContextValue | undefined\n>(undefined);\n\n/**\n * Custom hook to consume CollapsibleMotion context\n */\nexport function useCollapsibleMotionContext(): CollapsibleMotionContextValue {\n const context = useContext(CollapsibleMotionContext);\n\n if (context === undefined) {\n throw new Error(\n \"useCollapsibleMotionContext must be used within a CollapsibleMotion.Root component\"\n );\n }\n\n return context;\n}\n","import {\n createSlotRecipeContext,\n type HTMLChakraProps,\n} from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type { CollapsibleMotionRootSlotProps } from \"./collapsible-motion.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"collapsibleMotion\",\n});\n\nexport const CollapsibleMotionRootSlot: SlotComponent<\n HTMLDivElement,\n CollapsibleMotionRootSlotProps\n> = withProvider<HTMLDivElement, CollapsibleMotionRootSlotProps>(\"div\", \"root\");\n\nexport const CollapsibleMotionTriggerSlot = withContext<\n HTMLButtonElement,\n HTMLChakraProps<\"button\">\n>(\"button\", \"trigger\");\n\nexport const CollapsibleMotionContentSlot = withContext<\n HTMLDivElement,\n HTMLChakraProps<\"div\">\n>(\"div\", \"content\");\n","import { useRef, forwardRef } from \"react\";\nimport { useDisclosure } from \"react-aria\";\nimport { useDisclosureState } from \"react-stately\";\nimport { CollapsibleMotionContext } from \"./collapsible-motion-context\";\nimport { CollapsibleMotionRootSlot } from \"../collapsible-motion.slots\";\nimport type { CollapsibleMotionRootProps } from \"../collapsible-motion.types\";\n\n/**\n * CollapsibleMotion.Root - The root container component that manages state and provides context\n *\n * This component contains all the state management logic and provides context to\n * CollapsibleMotion.Trigger and CollapsibleMotion.Content components.\n */\nexport const CollapsibleMotionRoot: React.ForwardRefExoticComponent<\n CollapsibleMotionRootProps & React.RefAttributes<HTMLDivElement>\n> = forwardRef<HTMLDivElement, CollapsibleMotionRootProps>(\n (\n {\n children,\n defaultExpanded = false,\n isExpanded: controlledExpanded,\n onExpandedChange,\n isDisabled = false,\n ...props\n },\n forwardedRef\n ) => {\n // Use React Aria's disclosure state management\n const disclosureState = useDisclosureState({\n defaultExpanded,\n isExpanded: controlledExpanded,\n onExpandedChange,\n });\n\n const panelRef = useRef<HTMLDivElement>(null);\n\n // Use React Aria's disclosure hook for ARIA props\n const { buttonProps, panelProps } = useDisclosure(\n { isDisabled },\n disclosureState,\n panelRef\n );\n\n // Context value to provide to child components\n const contextValue = {\n isDisabled,\n isExpanded: disclosureState.isExpanded,\n buttonProps,\n panelProps,\n panelRef,\n };\n\n return (\n <CollapsibleMotionContext.Provider value={contextValue}>\n <CollapsibleMotionRootSlot ref={forwardedRef} {...props}>\n {children}\n </CollapsibleMotionRootSlot>\n </CollapsibleMotionContext.Provider>\n );\n }\n);\n\nCollapsibleMotionRoot.displayName = \"CollapsibleMotion.Root\";\n","import { forwardRef } from \"react\";\nimport { mergeProps } from \"react-aria\";\nimport { useCollapsibleMotionContext } from \"./collapsible-motion-context\";\nimport { CollapsibleMotionTriggerSlot } from \"../collapsible-motion.slots\";\nimport type { CollapsibleMotionTriggerProps } from \"../collapsible-motion.types\";\nimport { Button as RaButton } from \"react-aria-components\";\nimport { chakra } from \"@chakra-ui/react/styled-system\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\n/**\n * CollapsibleMotion.Trigger - The trigger button that toggles the collapsible content\n *\n * This component renders a button with proper ARIA attributes for accessibility.\n * It automatically handles the toggle functionality when clicked.\n */\nexport const CollapsibleMotionTrigger = forwardRef<\n HTMLButtonElement,\n CollapsibleMotionTriggerProps\n>(({ children, asChild, ...props }, forwardedRef) => {\n const { buttonProps, isDisabled } = useCollapsibleMotionContext();\n\n // Use mergeProps to properly compose event handlers like React Aria does\n const componentProps = mergeProps(props, buttonProps, {\n disabled: isDisabled,\n });\n\n // If asChild is true, wrap children directly in a button with asChild\n if (asChild) {\n return (\n <chakra.button asChild {...componentProps}>\n {children}\n </chakra.button>\n );\n }\n\n const [styleProps, restProps] = extractStyleProps(componentProps);\n\n // Otherwise, wrap with both CollapsibleMotionTriggerSlot and RaButton\n // Only pass React Aria compatible props to avoid type conflicts\n return (\n <CollapsibleMotionTriggerSlot ref={forwardedRef} {...styleProps} asChild>\n <RaButton {...restProps}>{children}</RaButton>\n </CollapsibleMotionTriggerSlot>\n );\n});\n\nCollapsibleMotionTrigger.displayName = \"CollapsibleMotion.Trigger\";\n","import { forwardRef, useRef } from \"react\";\nimport { useObjectRef } from \"react-aria\";\nimport { mergeRefs, Presence } from \"@chakra-ui/react\";\nimport { useCollapsibleMotionContext } from \"./collapsible-motion-context\";\nimport { CollapsibleMotionContentSlot } from \"../collapsible-motion.slots\";\nimport type { CollapsibleMotionContentProps } from \"../collapsible-motion.types\";\n\n/**\n * CollapsibleMotion.Content - The collapsible content container\n *\n * This component renders the content that will expand and collapse.\n * It handles accessibility attributes through React Aria.\n */\nexport const CollapsibleMotionContent = forwardRef<\n HTMLDivElement,\n CollapsibleMotionContentProps\n>(({ children, ...props }, forwardedRef) => {\n const { panelProps, isExpanded } = useCollapsibleMotionContext();\n\n // Create a local ref and merge with forwardedRef (for user)\n const localRef = useRef<HTMLDivElement>(null);\n const ref = useObjectRef(mergeRefs(localRef, forwardedRef));\n\n return (\n <CollapsibleMotionContentSlot ref={ref} {...props} {...panelProps} asChild>\n <Presence\n present={isExpanded}\n animationName={{\n _open: \"slide-from-top, fade-in\",\n _closed: \"slide-to-top, fade-out\",\n }}\n animationDuration=\"fast\"\n >\n {children}\n </Presence>\n </CollapsibleMotionContentSlot>\n );\n});\n\nCollapsibleMotionContent.displayName = \"CollapsibleMotion.Content\";\n","import { CollapsibleMotionRoot } from \"./components/collapsible-motion-root\";\nimport { CollapsibleMotionTrigger } from \"./components/collapsible-motion-trigger\";\nimport { CollapsibleMotionContent } from \"./components/collapsible-motion-content\";\n\n// Exports for internal use by react-docgen\nexport {\n CollapsibleMotionRoot as _CollapsibleMotionRoot,\n CollapsibleMotionTrigger as _CollapsibleMotionTrigger,\n CollapsibleMotionContent as _CollapsibleMotionContent,\n};\n\ntype CollapsibleMotionNamespace = {\n Root: typeof CollapsibleMotionRoot;\n Trigger: typeof CollapsibleMotionTrigger;\n Content: typeof CollapsibleMotionContent;\n};\n\nexport const CollapsibleMotion: CollapsibleMotionNamespace = {\n Root: CollapsibleMotionRoot,\n Trigger: CollapsibleMotionTrigger,\n Content: CollapsibleMotionContent,\n};\n"],"names":["CollapsibleMotionContext","createContext","useCollapsibleMotionContext","context","useContext","withProvider","withContext","createSlotRecipeContext","CollapsibleMotionRootSlot","CollapsibleMotionTriggerSlot","CollapsibleMotionContentSlot","CollapsibleMotionRoot","forwardRef","children","defaultExpanded","controlledExpanded","onExpandedChange","isDisabled","props","forwardedRef","disclosureState","useDisclosureState","panelRef","useRef","buttonProps","panelProps","useDisclosure","contextValue","jsx","CollapsibleMotionTrigger","asChild","componentProps","mergeProps","chakra","styleProps","restProps","extractStyleProps","RaButton","CollapsibleMotionContent","isExpanded","localRef","ref","useObjectRef","mergeRefs","Presence","CollapsibleMotion"],"mappings":"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"}
|