@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":"menu-DIepV2KZ.cjs.js","sources":["../../src/components/menu/menu.slots.tsx","../../src/components/menu/components/menu.context.tsx","../../src/components/menu/components/menu.root.tsx","../../src/components/menu/components/menu.trigger.tsx","../../src/components/menu/components/menu.section-context.tsx","../../src/components/menu/components/menu.content.tsx","../../src/components/menu/components/menu.item.tsx","../../src/components/menu/components/menu.section-label.tsx","../../src/components/menu/components/menu.section.tsx","../../src/components/menu/components/menu.submenu-trigger.tsx","../../src/components/menu/components/menu.submenu.tsx","../../src/components/menu/menu.tsx"],"sourcesContent":["import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type {\n MenuRootSlotProps,\n MenuTriggerSlotProps,\n MenuPopoverSlotProps,\n MenuContentSlotProps,\n MenuItemSlotProps,\n MenuSectionSlotProps,\n MenuSectionLabelSlotProps,\n MenuSubmenuSlotProps,\n} from \"./menu.types\";\nimport type { SlotComponent } from \"@/utils/slot-types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"menu\",\n});\n\n// Menu Root\nexport const MenuRootSlot: SlotComponent<HTMLDivElement, MenuRootSlotProps> =\n withProvider<HTMLDivElement, MenuRootSlotProps>(\"div\", \"root\");\n\n// Menu Trigger\nexport const MenuTriggerSlot = withContext<\n HTMLButtonElement,\n MenuTriggerSlotProps\n>(\"button\", \"trigger\");\n\n// Menu Popover\nexport const MenuPopoverSlot = withContext<\n HTMLDivElement,\n MenuPopoverSlotProps\n>(\"div\", \"popover\");\n\n// Menu Content\nexport const MenuContentSlot = withContext<\n HTMLDivElement,\n MenuContentSlotProps\n>(\"div\", \"content\");\n\n// Menu Item\nexport const MenuItemSlot = withContext<HTMLDivElement, MenuItemSlotProps>(\n \"div\",\n \"item\"\n);\n\n// Menu Section\nexport const MenuSectionSlot = withContext<\n HTMLDivElement,\n MenuSectionSlotProps\n>(\"div\", \"section\");\n\n// Menu Section Label\nexport const MenuSectionLabelSlot = withContext<\n HTMLDivElement,\n MenuSectionLabelSlotProps\n>(\"div\", \"sectionLabel\");\n\n// Menu Group Label\nexport const MenuSubmenuSlot = withContext<\n HTMLDivElement,\n MenuSubmenuSlotProps\n>(\"div\", \"submenu\");\n","import { createContext, useContext } from \"react\";\nimport type { MenuRootProps } from \"./../menu.types\";\nimport type { MenuTriggerProps as RaMenuTriggerProps } from \"react-aria-components\";\n\n// Context should contain all Menu props (excluding MenuTrigger-specific props)\nexport type MenuContextValue = Omit<\n MenuRootProps,\n keyof RaMenuTriggerProps | \"children\" | \"trigger\"\n>;\n\nconst MenuContext = createContext<MenuContextValue | undefined>(undefined);\n\nexport const MenuProvider = MenuContext.Provider;\n\nexport const useMenuContext = () => {\n const context = useContext(MenuContext);\n return context;\n};\n","import { useSlotRecipe } from \"@chakra-ui/react/styled-system\";\nimport { MenuTrigger as RaMenuTrigger } from \"react-aria-components\";\nimport type { MenuRootProps } from \"../menu.types\";\nimport { MenuRootSlot } from \"../menu.slots\";\nimport { MenuProvider } from \"./menu.context\";\n\nexport const MenuRoot = (props: MenuRootProps) => {\n const recipe = useSlotRecipe({ key: \"menu\" });\n const [recipeProps, functionalProps] = recipe.splitVariantProps(props);\n\n // Separate MenuTrigger props from Menu props\n const {\n children,\n trigger,\n isOpen,\n defaultOpen,\n onOpenChange,\n ...menuContextProps\n } = functionalProps;\n\n const menuTriggerProps = {\n trigger,\n isOpen,\n defaultOpen,\n onOpenChange,\n };\n\n return (\n <MenuRootSlot {...recipeProps} asChild>\n <RaMenuTrigger {...menuTriggerProps}>\n <MenuProvider value={menuContextProps}>{children}</MenuProvider>\n </RaMenuTrigger>\n </MenuRootSlot>\n );\n};\n\nMenuRoot.displayName = \"Menu.Root\";\n","import { Button } from \"react-aria-components\";\nimport { MenuTriggerSlot } from \"../menu.slots\";\nimport type { MenuTriggerProps } from \"../menu.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport type { ReactNode } from \"react\";\n\nexport const MenuTrigger = ({\n children,\n asChild,\n ref,\n ...props\n}: MenuTriggerProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n\n /**\n * The user supplied a Button as the trigger\n */\n if (asChild) {\n // When asChild is true, apply styles to the child element\n return (\n <MenuTriggerSlot ref={ref} asChild {...styleProps}>\n {children as ReactNode}\n </MenuTriggerSlot>\n );\n }\n\n /**\n * The user did not supply a Button as trigger, use an unstyled button\n * to wrap which ever element the user supplied and make it a trigger\n */\n return (\n <MenuTriggerSlot asChild {...styleProps}>\n <Button ref={ref} {...restProps}>\n {children}\n </Button>\n </MenuTriggerSlot>\n );\n};\n\nMenuTrigger.displayName = \"Menu.Trigger\";\n","import { createContext, useContext } from \"react\";\n\nexport type MenuSectionContextValue = {\n selectionMode?: \"single\" | \"multiple\" | \"none\";\n};\n/**\n * Why is a second context (MenuSectionContext) needed?\n *\n * MenuSectionContext enables section-level config for menu items, such as\n * selection mode, which may differ from the global menu context. This allows\n * advanced menus where each section can have its own selection behavior\n * (e.g., one section is single-select, another is multi-select).\n * By scoping context to a section, menu items inherit settings from their\n * nearest section, falling back to the global menu context if not present.\n * This pattern improves flexibility and composability for complex menus,\n * and avoids prop drilling or awkward prop merging.\n */\n\nconst MenuSectionContext = createContext<MenuSectionContextValue | undefined>(\n undefined\n);\n\nexport const MenuSectionProvider = MenuSectionContext.Provider;\n\nexport const useMenuSectionContext = () => {\n return useContext(MenuSectionContext);\n};\n","import { Menu, Popover } from \"react-aria-components\";\nimport { MenuContentSlot, MenuPopoverSlot } from \"../menu.slots\";\nimport type { MenuContentProps } from \"../menu.types\";\nimport { useMenuContext } from \"./menu.context\";\nimport { MenuSectionProvider } from \"./menu.section-context\";\n\nexport const MenuContent = ({\n children,\n placement: placementOverride,\n ref,\n}: MenuContentProps) => {\n const contextProps = useMenuContext();\n\n if (!contextProps) {\n throw new Error(\"Menu.Content must be used within Menu.Root\");\n }\n\n // Separate placement from other props since it's handled by Popover\n const { placement, ...menuProps } = contextProps;\n const finalPlacement = placementOverride || placement || \"bottom start\";\n\n return (\n <MenuSectionProvider value={{ selectionMode: menuProps.selectionMode }}>\n <MenuPopoverSlot asChild>\n <Popover placement={finalPlacement} offset={4} shouldFlip>\n <MenuContentSlot asChild>\n <Menu ref={ref} shouldFocusWrap autoFocus=\"first\" {...menuProps}>\n {children}\n </Menu>\n </MenuContentSlot>\n </Popover>\n </MenuPopoverSlot>\n </MenuSectionProvider>\n );\n};\n\nMenuContent.displayName = \"Menu.Content\";\n","import { MenuItem as RaMenuItem } from \"react-aria-components\";\nimport { MenuItemSlot } from \"../menu.slots\";\nimport type { MenuItemProps } from \"../menu.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport { ChevronRight } from \"@commercetools/nimbus-icons\";\nimport { Icon } from \"@/components/icon\";\n\nexport const MenuItem = ({\n children,\n isCritical,\n ref,\n ...props\n}: MenuItemProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n\n return (\n <MenuItemSlot\n asChild\n {...styleProps}\n data-critical={isCritical ? \"\" : undefined}\n >\n <RaMenuItem ref={ref} {...restProps}>\n {({ hasSubmenu }) => (\n <>\n {children}\n {hasSubmenu && (\n <Icon slot=\"caretIcon\">\n <ChevronRight />\n </Icon>\n )}\n </>\n )}\n </RaMenuItem>\n </MenuItemSlot>\n );\n};\n\nMenuItem.displayName = \"Menu.Item\";\n","import { Header } from \"react-aria-components\";\nimport { MenuSectionLabelSlot } from \"../menu.slots\";\nimport type { MenuSectionLabelProps } from \"../menu.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\n/**\n * Used in MenuSection for rendering the `label` property.\n */\nexport const MenuSectionLabel = ({\n children,\n ref,\n ...props\n}: MenuSectionLabelProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n\n return (\n <MenuSectionLabelSlot asChild {...styleProps}>\n <Header ref={ref} {...restProps}>\n {children}\n </Header>\n </MenuSectionLabelSlot>\n );\n};\n\nMenuSectionLabel.displayName = \"Menu.SectionLabel\";\n","import {\n MenuSection as RaMenuSection,\n Collection,\n} from \"react-aria-components\";\nimport { MenuSectionSlot } from \"../menu.slots\";\nimport type { MenuSectionProps } from \"../menu.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport { useMenuContext } from \"./menu.context\";\nimport { MenuSectionProvider } from \"./menu.section-context\";\nimport { MenuSectionLabel } from \"./menu.section-label\";\nimport type { ReactNode } from \"react\";\n\nexport const MenuSection = <T extends object = object>({\n children,\n ref,\n label,\n items,\n ...props\n}: MenuSectionProps<T>) => {\n const contextProps = useMenuContext();\n\n // Extract selection-related props before extracting style props\n const {\n selectionMode = contextProps?.selectionMode,\n selectedKeys = contextProps?.selectedKeys,\n defaultSelectedKeys = contextProps?.defaultSelectedKeys,\n onSelectionChange = contextProps?.onSelectionChange,\n disallowEmptySelection = contextProps?.disallowEmptySelection,\n ...restProps\n } = props;\n\n const [styleProps, otherProps] = extractStyleProps(restProps);\n\n return (\n <MenuSectionProvider value={{ selectionMode }}>\n <MenuSectionSlot asChild {...styleProps}>\n <RaMenuSection\n ref={ref}\n selectionMode={selectionMode}\n selectedKeys={selectedKeys}\n defaultSelectedKeys={defaultSelectedKeys}\n onSelectionChange={onSelectionChange}\n disallowEmptySelection={disallowEmptySelection}\n {...otherProps}\n >\n <MenuSectionLabel>{label}</MenuSectionLabel>\n {items ? (\n <Collection items={items}>{children}</Collection>\n ) : (\n (children as ReactNode)\n )}\n </RaMenuSection>\n </MenuSectionSlot>\n </MenuSectionProvider>\n );\n};\n\nMenuSection.displayName = \"Menu.Section\";\n","import { SubmenuTrigger as RaSubmenuTrigger } from \"react-aria-components\";\nimport type { MenuSubmenuTriggerProps } from \"../menu.types\";\n\nexport const MenuSubmenuTrigger = ({\n children,\n ...props\n}: MenuSubmenuTriggerProps) => {\n return <RaSubmenuTrigger {...props}>{children}</RaSubmenuTrigger>;\n};\n\nMenuSubmenuTrigger.displayName = \"Menu.SubmenuTrigger\";\n","import type { MenuSubmenuProps } from \"../menu.types\";\nimport { MenuContent } from \"./menu.content\";\n\nexport const MenuSubmenu = ({ children, ...props }: MenuSubmenuProps) => {\n return (\n <MenuContent {...props} placement=\"end\">\n {children}\n </MenuContent>\n );\n};\n\nMenuSubmenu.displayName = \"Menu.Submenu\";\n","import { MenuRoot } from \"./components/menu.root\";\nimport { MenuTrigger } from \"./components/menu.trigger\";\nimport { MenuContent } from \"./components/menu.content\";\nimport { MenuItem } from \"./components/menu.item\";\nimport { MenuSection } from \"./components/menu.section\";\nimport { MenuSubmenuTrigger } from \"./components/menu.submenu-trigger\";\nimport { MenuSubmenu } from \"./components/menu.submenu\";\n\n// Re-export types\nexport type * from \"./menu.types\";\n\nexport const Menu = {\n Root: MenuRoot,\n Trigger: MenuTrigger,\n Content: MenuContent,\n Item: MenuItem,\n Section: MenuSection,\n Submenu: MenuSubmenu,\n SubmenuTrigger: MenuSubmenuTrigger,\n};\n\n// Exports for internal use by react-docgen\nexport {\n MenuRoot as _MenuRoot,\n MenuTrigger as _MenuTrigger,\n MenuContent as _MenuContent,\n MenuItem as _MenuItem,\n MenuSection as _MenuSection,\n MenuSubmenuTrigger as _MenuSubmenuTrigger,\n MenuSubmenu as _MenuSubmenu,\n};\n"],"names":["withProvider","withContext","createSlotRecipeContext","MenuRootSlot","MenuTriggerSlot","MenuPopoverSlot","MenuContentSlot","MenuItemSlot","MenuSectionSlot","MenuSectionLabelSlot","MenuContext","createContext","MenuProvider","useMenuContext","useContext","MenuRoot","props","recipe","useSlotRecipe","recipeProps","functionalProps","children","trigger","isOpen","defaultOpen","onOpenChange","menuContextProps","menuTriggerProps","jsx","RaMenuTrigger","MenuTrigger","asChild","ref","styleProps","restProps","extractStyleProps","Button","MenuSectionContext","MenuSectionProvider","MenuContent","placementOverride","contextProps","placement","menuProps","finalPlacement","Popover","Menu","MenuItem","isCritical","RaMenuItem","hasSubmenu","jsxs","Fragment","Icon","ChevronRight","MenuSectionLabel","Header","MenuSection","label","items","selectionMode","selectedKeys","defaultSelectedKeys","onSelectionChange","disallowEmptySelection","otherProps","RaMenuSection","Collection","MenuSubmenuTrigger","RaSubmenuTrigger","MenuSubmenu"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"menu-DIepV2KZ.cjs.js","sources":["../../src/components/menu/menu.slots.tsx","../../src/components/menu/components/menu.context.tsx","../../src/components/menu/components/menu.root.tsx","../../src/components/menu/components/menu.trigger.tsx","../../src/components/menu/components/menu.section-context.tsx","../../src/components/menu/components/menu.content.tsx","../../src/components/menu/components/menu.item.tsx","../../src/components/menu/components/menu.section-label.tsx","../../src/components/menu/components/menu.section.tsx","../../src/components/menu/components/menu.submenu-trigger.tsx","../../src/components/menu/components/menu.submenu.tsx","../../src/components/menu/menu.tsx"],"sourcesContent":["import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type {\n MenuRootSlotProps,\n MenuTriggerSlotProps,\n MenuPopoverSlotProps,\n MenuContentSlotProps,\n MenuItemSlotProps,\n MenuSectionSlotProps,\n MenuSectionLabelSlotProps,\n MenuSubmenuSlotProps,\n} from \"./menu.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"menu\",\n});\n\n// Menu Root\nexport const MenuRootSlot: SlotComponent<HTMLDivElement, MenuRootSlotProps> =\n withProvider<HTMLDivElement, MenuRootSlotProps>(\"div\", \"root\");\n\n// Menu Trigger\nexport const MenuTriggerSlot = withContext<\n HTMLButtonElement,\n MenuTriggerSlotProps\n>(\"button\", \"trigger\");\n\n// Menu Popover\nexport const MenuPopoverSlot = withContext<\n HTMLDivElement,\n MenuPopoverSlotProps\n>(\"div\", \"popover\");\n\n// Menu Content\nexport const MenuContentSlot = withContext<\n HTMLDivElement,\n MenuContentSlotProps\n>(\"div\", \"content\");\n\n// Menu Item\nexport const MenuItemSlot = withContext<HTMLDivElement, MenuItemSlotProps>(\n \"div\",\n \"item\"\n);\n\n// Menu Section\nexport const MenuSectionSlot = withContext<\n HTMLDivElement,\n MenuSectionSlotProps\n>(\"div\", \"section\");\n\n// Menu Section Label\nexport const MenuSectionLabelSlot = withContext<\n HTMLDivElement,\n MenuSectionLabelSlotProps\n>(\"div\", \"sectionLabel\");\n\n// Menu Group Label\nexport const MenuSubmenuSlot = withContext<\n HTMLDivElement,\n MenuSubmenuSlotProps\n>(\"div\", \"submenu\");\n","import { createContext, useContext } from \"react\";\nimport type { MenuRootProps } from \"./../menu.types\";\nimport type { MenuTriggerProps as RaMenuTriggerProps } from \"react-aria-components\";\n\n// Context should contain all Menu props (excluding MenuTrigger-specific props)\nexport type MenuContextValue = Omit<\n MenuRootProps,\n keyof RaMenuTriggerProps | \"children\" | \"trigger\"\n>;\n\nconst MenuContext = createContext<MenuContextValue | undefined>(undefined);\n\nexport const MenuProvider = MenuContext.Provider;\n\nexport const useMenuContext = () => {\n const context = useContext(MenuContext);\n return context;\n};\n","import { useSlotRecipe } from \"@chakra-ui/react/styled-system\";\nimport { MenuTrigger as RaMenuTrigger } from \"react-aria-components\";\nimport type { MenuRootProps } from \"../menu.types\";\nimport { MenuRootSlot } from \"../menu.slots\";\nimport { MenuProvider } from \"./menu.context\";\n\nexport const MenuRoot = (props: MenuRootProps) => {\n const recipe = useSlotRecipe({ key: \"menu\" });\n const [recipeProps, functionalProps] = recipe.splitVariantProps(props);\n\n // Separate MenuTrigger props from Menu props\n const {\n children,\n trigger,\n isOpen,\n defaultOpen,\n onOpenChange,\n ...menuContextProps\n } = functionalProps;\n\n const menuTriggerProps = {\n trigger,\n isOpen,\n defaultOpen,\n onOpenChange,\n };\n\n return (\n <MenuRootSlot {...recipeProps} asChild>\n <RaMenuTrigger {...menuTriggerProps}>\n <MenuProvider value={menuContextProps}>{children}</MenuProvider>\n </RaMenuTrigger>\n </MenuRootSlot>\n );\n};\n\nMenuRoot.displayName = \"Menu.Root\";\n","import { Button } from \"react-aria-components\";\nimport { MenuTriggerSlot } from \"../menu.slots\";\nimport type { MenuTriggerProps } from \"../menu.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport type { ReactNode } from \"react\";\n\nexport const MenuTrigger = ({\n children,\n asChild,\n ref,\n ...props\n}: MenuTriggerProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n\n /**\n * The user supplied a Button as the trigger\n */\n if (asChild) {\n // When asChild is true, apply styles to the child element\n return (\n <MenuTriggerSlot ref={ref} asChild {...styleProps}>\n {children as ReactNode}\n </MenuTriggerSlot>\n );\n }\n\n /**\n * The user did not supply a Button as trigger, use an unstyled button\n * to wrap which ever element the user supplied and make it a trigger\n */\n return (\n <MenuTriggerSlot asChild {...styleProps}>\n <Button ref={ref} {...restProps}>\n {children}\n </Button>\n </MenuTriggerSlot>\n );\n};\n\nMenuTrigger.displayName = \"Menu.Trigger\";\n","import { createContext, useContext } from \"react\";\n\nexport type MenuSectionContextValue = {\n selectionMode?: \"single\" | \"multiple\" | \"none\";\n};\n/**\n * Why is a second context (MenuSectionContext) needed?\n *\n * MenuSectionContext enables section-level config for menu items, such as\n * selection mode, which may differ from the global menu context. This allows\n * advanced menus where each section can have its own selection behavior\n * (e.g., one section is single-select, another is multi-select).\n * By scoping context to a section, menu items inherit settings from their\n * nearest section, falling back to the global menu context if not present.\n * This pattern improves flexibility and composability for complex menus,\n * and avoids prop drilling or awkward prop merging.\n */\n\nconst MenuSectionContext = createContext<MenuSectionContextValue | undefined>(\n undefined\n);\n\nexport const MenuSectionProvider = MenuSectionContext.Provider;\n\nexport const useMenuSectionContext = () => {\n return useContext(MenuSectionContext);\n};\n","import { Menu, Popover } from \"react-aria-components\";\nimport { MenuContentSlot, MenuPopoverSlot } from \"../menu.slots\";\nimport type { MenuContentProps } from \"../menu.types\";\nimport { useMenuContext } from \"./menu.context\";\nimport { MenuSectionProvider } from \"./menu.section-context\";\n\nexport const MenuContent = ({\n children,\n placement: placementOverride,\n ref,\n}: MenuContentProps) => {\n const contextProps = useMenuContext();\n\n if (!contextProps) {\n throw new Error(\"Menu.Content must be used within Menu.Root\");\n }\n\n // Separate placement from other props since it's handled by Popover\n const { placement, ...menuProps } = contextProps;\n const finalPlacement = placementOverride || placement || \"bottom start\";\n\n return (\n <MenuSectionProvider value={{ selectionMode: menuProps.selectionMode }}>\n <MenuPopoverSlot asChild>\n <Popover placement={finalPlacement} offset={4} shouldFlip>\n <MenuContentSlot asChild>\n <Menu ref={ref} shouldFocusWrap autoFocus=\"first\" {...menuProps}>\n {children}\n </Menu>\n </MenuContentSlot>\n </Popover>\n </MenuPopoverSlot>\n </MenuSectionProvider>\n );\n};\n\nMenuContent.displayName = \"Menu.Content\";\n","import { MenuItem as RaMenuItem } from \"react-aria-components\";\nimport { MenuItemSlot } from \"../menu.slots\";\nimport type { MenuItemProps } from \"../menu.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport { ChevronRight } from \"@commercetools/nimbus-icons\";\nimport { Icon } from \"@/components/icon\";\n\nexport const MenuItem = ({\n children,\n isCritical,\n ref,\n ...props\n}: MenuItemProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n\n return (\n <MenuItemSlot\n asChild\n {...styleProps}\n data-critical={isCritical ? \"\" : undefined}\n >\n <RaMenuItem ref={ref} {...restProps}>\n {({ hasSubmenu }) => (\n <>\n {children}\n {hasSubmenu && (\n <Icon slot=\"caretIcon\">\n <ChevronRight />\n </Icon>\n )}\n </>\n )}\n </RaMenuItem>\n </MenuItemSlot>\n );\n};\n\nMenuItem.displayName = \"Menu.Item\";\n","import { Header } from \"react-aria-components\";\nimport { MenuSectionLabelSlot } from \"../menu.slots\";\nimport type { MenuSectionLabelProps } from \"../menu.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\n\n/**\n * Used in MenuSection for rendering the `label` property.\n */\nexport const MenuSectionLabel = ({\n children,\n ref,\n ...props\n}: MenuSectionLabelProps) => {\n const [styleProps, restProps] = extractStyleProps(props);\n\n return (\n <MenuSectionLabelSlot asChild {...styleProps}>\n <Header ref={ref} {...restProps}>\n {children}\n </Header>\n </MenuSectionLabelSlot>\n );\n};\n\nMenuSectionLabel.displayName = \"Menu.SectionLabel\";\n","import {\n MenuSection as RaMenuSection,\n Collection,\n} from \"react-aria-components\";\nimport { MenuSectionSlot } from \"../menu.slots\";\nimport type { MenuSectionProps } from \"../menu.types\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport { useMenuContext } from \"./menu.context\";\nimport { MenuSectionProvider } from \"./menu.section-context\";\nimport { MenuSectionLabel } from \"./menu.section-label\";\nimport type { ReactNode } from \"react\";\n\nexport const MenuSection = <T extends object = object>({\n children,\n ref,\n label,\n items,\n ...props\n}: MenuSectionProps<T>) => {\n const contextProps = useMenuContext();\n\n // Extract selection-related props before extracting style props\n const {\n selectionMode = contextProps?.selectionMode,\n selectedKeys = contextProps?.selectedKeys,\n defaultSelectedKeys = contextProps?.defaultSelectedKeys,\n onSelectionChange = contextProps?.onSelectionChange,\n disallowEmptySelection = contextProps?.disallowEmptySelection,\n ...restProps\n } = props;\n\n const [styleProps, otherProps] = extractStyleProps(restProps);\n\n return (\n <MenuSectionProvider value={{ selectionMode }}>\n <MenuSectionSlot asChild {...styleProps}>\n <RaMenuSection\n ref={ref}\n selectionMode={selectionMode}\n selectedKeys={selectedKeys}\n defaultSelectedKeys={defaultSelectedKeys}\n onSelectionChange={onSelectionChange}\n disallowEmptySelection={disallowEmptySelection}\n {...otherProps}\n >\n <MenuSectionLabel>{label}</MenuSectionLabel>\n {items ? (\n <Collection items={items}>{children}</Collection>\n ) : (\n (children as ReactNode)\n )}\n </RaMenuSection>\n </MenuSectionSlot>\n </MenuSectionProvider>\n );\n};\n\nMenuSection.displayName = \"Menu.Section\";\n","import { SubmenuTrigger as RaSubmenuTrigger } from \"react-aria-components\";\nimport type { MenuSubmenuTriggerProps } from \"../menu.types\";\n\nexport const MenuSubmenuTrigger = ({\n children,\n ...props\n}: MenuSubmenuTriggerProps) => {\n return <RaSubmenuTrigger {...props}>{children}</RaSubmenuTrigger>;\n};\n\nMenuSubmenuTrigger.displayName = \"Menu.SubmenuTrigger\";\n","import type { MenuSubmenuProps } from \"../menu.types\";\nimport { MenuContent } from \"./menu.content\";\n\nexport const MenuSubmenu = ({ children, ...props }: MenuSubmenuProps) => {\n return (\n <MenuContent {...props} placement=\"end\">\n {children}\n </MenuContent>\n );\n};\n\nMenuSubmenu.displayName = \"Menu.Submenu\";\n","import { MenuRoot } from \"./components/menu.root\";\nimport { MenuTrigger } from \"./components/menu.trigger\";\nimport { MenuContent } from \"./components/menu.content\";\nimport { MenuItem } from \"./components/menu.item\";\nimport { MenuSection } from \"./components/menu.section\";\nimport { MenuSubmenuTrigger } from \"./components/menu.submenu-trigger\";\nimport { MenuSubmenu } from \"./components/menu.submenu\";\n\n// Re-export types\nexport type * from \"./menu.types\";\n\nexport const Menu = {\n Root: MenuRoot,\n Trigger: MenuTrigger,\n Content: MenuContent,\n Item: MenuItem,\n Section: MenuSection,\n Submenu: MenuSubmenu,\n SubmenuTrigger: MenuSubmenuTrigger,\n};\n\n// Exports for internal use by react-docgen\nexport {\n MenuRoot as _MenuRoot,\n MenuTrigger as _MenuTrigger,\n MenuContent as _MenuContent,\n MenuItem as _MenuItem,\n MenuSection as _MenuSection,\n MenuSubmenuTrigger as _MenuSubmenuTrigger,\n MenuSubmenu as _MenuSubmenu,\n};\n"],"names":["withProvider","withContext","createSlotRecipeContext","MenuRootSlot","MenuTriggerSlot","MenuPopoverSlot","MenuContentSlot","MenuItemSlot","MenuSectionSlot","MenuSectionLabelSlot","MenuContext","createContext","MenuProvider","useMenuContext","useContext","MenuRoot","props","recipe","useSlotRecipe","recipeProps","functionalProps","children","trigger","isOpen","defaultOpen","onOpenChange","menuContextProps","menuTriggerProps","jsx","RaMenuTrigger","MenuTrigger","asChild","ref","styleProps","restProps","extractStyleProps","Button","MenuSectionContext","MenuSectionProvider","MenuContent","placementOverride","contextProps","placement","menuProps","finalPlacement","Popover","Menu","MenuItem","isCritical","RaMenuItem","hasSubmenu","jsxs","Fragment","Icon","ChevronRight","MenuSectionLabel","Header","MenuSection","label","items","selectionMode","selectedKeys","defaultSelectedKeys","onSelectionChange","disallowEmptySelection","otherProps","RaMenuSection","Collection","MenuSubmenuTrigger","RaSubmenuTrigger","MenuSubmenu"],"mappings":"gbAaM,CAAE,aAAAA,EAAc,YAAAC,CAAA,EAAgBC,0BAAwB,CAC5D,IAAK,MACP,CAAC,EAGYC,EACXH,EAAgD,MAAO,MAAM,EAGlDI,EAAkBH,EAG7B,SAAU,SAAS,EAGRI,EAAkBJ,EAG7B,MAAO,SAAS,EAGLK,EAAkBL,EAG7B,MAAO,SAAS,EAGLM,EAAeN,EAC1B,MACA,MACF,EAGaO,EAAkBP,EAG7B,MAAO,SAAS,EAGLQ,EAAuBR,EAGlC,MAAO,cAAc,EC7CjBS,EAAcC,EAAAA,cAA4C,MAAS,EAE5DC,EAAeF,EAAY,SAE3BG,EAAiB,IACZC,EAAAA,WAAWJ,CAAW,ECT3BK,EAAYC,GAAyB,CAChD,MAAMC,EAASC,EAAAA,cAAc,CAAE,IAAK,OAAQ,EACtC,CAACC,EAAaC,CAAe,EAAIH,EAAO,kBAAkBD,CAAK,EAG/D,CACJ,SAAAK,EACA,QAAAC,EACA,OAAAC,EACA,YAAAC,EACA,aAAAC,EACA,GAAGC,CAAA,EACDN,EAEEO,EAAmB,CACvB,QAAAL,EACA,OAAAC,EACA,YAAAC,EACA,aAAAC,CAAA,EAGF,aACGtB,EAAA,CAAc,GAAGgB,EAAa,QAAO,GACpC,SAAAS,EAAAA,IAACC,4CAAA,CAAe,GAAGF,EACjB,eAACf,EAAA,CAAa,MAAOc,EAAmB,SAAAL,CAAA,CAAS,EACnD,EACF,CAEJ,EAEAN,EAAS,YAAc,YC9BhB,MAAMe,EAAc,CAAC,CAC1B,SAAAT,EACA,QAAAU,EACA,IAAAC,EACA,GAAGhB,CACL,IAAwB,CACtB,KAAM,CAACiB,EAAYC,CAAS,EAAIC,EAAAA,kBAAkBnB,CAAK,EAKvD,OAAIe,QAGC3B,EAAA,CAAgB,IAAA4B,EAAU,QAAO,GAAE,GAAGC,EACpC,SAAAZ,EACH,EASFO,EAAAA,IAACxB,EAAA,CAAgB,QAAO,GAAE,GAAG6B,EAC3B,SAAAL,EAAAA,IAACQ,EAAAA,0CAAA,CAAO,IAAAJ,EAAW,GAAGE,EACnB,SAAAb,CAAA,CACH,EACF,CAEJ,EAEAS,EAAY,YAAc,eCrB1B,MAAMO,EAAqB1B,EAAAA,cACzB,MACF,EAEa2B,EAAsBD,EAAmB,SChBzCE,EAAc,CAAC,CAC1B,SAAAlB,EACA,UAAWmB,EACX,IAAAR,CACF,IAAwB,CACtB,MAAMS,EAAe5B,EAAA,EAErB,GAAI,CAAC4B,EACH,MAAM,IAAI,MAAM,4CAA4C,EAI9D,KAAM,CAAE,UAAAC,EAAW,GAAGC,CAAA,EAAcF,EAC9BG,EAAiBJ,GAAqBE,GAAa,eAEzD,aACGJ,EAAA,CAAoB,MAAO,CAAE,cAAeK,EAAU,eACrD,SAAAf,EAAAA,IAACvB,EAAA,CAAgB,QAAO,GACtB,SAAAuB,EAAAA,IAACiB,4CAAA,CAAQ,UAAWD,EAAgB,OAAQ,EAAG,WAAU,GACvD,eAACtC,EAAA,CAAgB,QAAO,GACtB,SAAAsB,EAAAA,IAACkB,EAAAA,2CAAK,IAAAd,EAAU,gBAAe,GAAC,UAAU,QAAS,GAAGW,EACnD,SAAAtB,EACH,EACF,CAAA,CACF,EACF,EACF,CAEJ,EAEAkB,EAAY,YAAc,eC7BnB,MAAMQ,EAAW,CAAC,CACvB,SAAA1B,EACA,WAAA2B,EACA,IAAAhB,EACA,GAAGhB,CACL,IAAqB,CACnB,KAAM,CAACiB,EAAYC,CAAS,EAAIC,EAAAA,kBAAkBnB,CAAK,EAEvD,OACEY,EAAAA,IAACrB,EAAA,CACC,QAAO,GACN,GAAG0B,EACJ,gBAAee,EAAa,GAAK,OAEjC,SAAApB,EAAAA,IAACqB,EAAAA,2CAAW,IAAAjB,EAAW,GAAGE,EACvB,SAAA,CAAC,CAAE,WAAAgB,CAAA,IACFC,EAAAA,KAAAC,EAAAA,SAAA,CACG,SAAA,CAAA/B,EACA6B,GACCtB,EAAAA,IAACyB,EAAAA,KAAA,CAAK,KAAK,YACT,SAAAzB,EAAAA,IAAC0B,iBAAa,CAAA,CAChB,CAAA,CAAA,CAEJ,CAAA,CAEJ,CAAA,CAAA,CAGN,EAEAP,EAAS,YAAc,YC7BhB,MAAMQ,EAAmB,CAAC,CAC/B,SAAAlC,EACA,IAAAW,EACA,GAAGhB,CACL,IAA6B,CAC3B,KAAM,CAACiB,EAAYC,CAAS,EAAIC,EAAAA,kBAAkBnB,CAAK,EAEvD,OACEY,EAAAA,IAACnB,EAAA,CAAqB,QAAO,GAAE,GAAGwB,EAChC,SAAAL,EAAAA,IAAC4B,EAAAA,0CAAA,CAAO,IAAAxB,EAAW,GAAGE,EACnB,SAAAb,CAAA,CACH,EACF,CAEJ,EAEAkC,EAAiB,YAAc,oBCZxB,MAAME,EAAc,CAA4B,CACrD,SAAApC,EACA,IAAAW,EACA,MAAA0B,EACA,MAAAC,EACA,GAAG3C,CACL,IAA2B,CACzB,MAAMyB,EAAe5B,EAAA,EAGf,CACJ,cAAA+C,EAAgBnB,GAAc,cAC9B,aAAAoB,EAAepB,GAAc,aAC7B,oBAAAqB,EAAsBrB,GAAc,oBACpC,kBAAAsB,EAAoBtB,GAAc,kBAClC,uBAAAuB,EAAyBvB,GAAc,uBACvC,GAAGP,CAAA,EACDlB,EAEE,CAACiB,EAAYgC,CAAU,EAAI9B,EAAAA,kBAAkBD,CAAS,EAE5D,OACEN,EAAAA,IAACU,EAAA,CAAoB,MAAO,CAAE,cAAAsB,CAAA,EAC5B,SAAAhC,EAAAA,IAACpB,EAAA,CAAgB,QAAO,GAAE,GAAGyB,EAC3B,SAAAkB,EAAAA,KAACe,EAAAA,0CAAA,CACC,IAAAlC,EACA,cAAA4B,EACA,aAAAC,EACA,oBAAAC,EACA,kBAAAC,EACA,uBAAAC,EACC,GAAGC,EAEJ,SAAA,CAAArC,EAAAA,IAAC2B,GAAkB,SAAAG,CAAA,CAAM,EACxBC,EACC/B,EAAAA,IAACuC,EAAAA,0CAAA,CAAW,MAAAR,EAAe,SAAAtC,EAAS,EAEnCA,CAAA,CAAA,CAAA,EAGP,CAAA,CACF,CAEJ,EAEAoC,EAAY,YAAc,eCtDnB,MAAMW,EAAqB,CAAC,CACjC,SAAA/C,EACA,GAAGL,CACL,IACSY,EAAAA,IAACyC,EAAAA,0CAAA,CAAkB,GAAGrD,EAAQ,SAAAK,CAAA,CAAS,EAGhD+C,EAAmB,YAAc,sBCP1B,MAAME,EAAc,CAAC,CAAE,SAAAjD,EAAU,GAAGL,WAEtCuB,EAAA,CAAa,GAAGvB,EAAO,UAAU,MAC/B,SAAAK,EACH,EAIJiD,EAAY,YAAc,eCAnB,MAAMxB,EAAO,CAClB,KAAM/B,EACN,QAASe,EACT,QAASS,EACT,KAAMQ,EACN,QAASU,EACT,QAASa,EACT,eAAgBF,CAClB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"popover-CfEq5G5-.cjs.js","sources":["../../src/components/popover/popover.slots.tsx","../../src/components/popover/popover.tsx"],"sourcesContent":["import { createRecipeContext } from \"@chakra-ui/react\";\nimport { Popover as RaPopover } from \"react-aria-components\";\nimport type {
|
|
1
|
+
{"version":3,"file":"popover-CfEq5G5-.cjs.js","sources":["../../src/components/popover/popover.slots.tsx","../../src/components/popover/popover.tsx"],"sourcesContent":["import { createRecipeContext } from \"@chakra-ui/react\";\nimport { Popover as RaPopover } from \"react-aria-components\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type { PopoverProps } from \"./popover.types\";\n\nconst { withContext } = createRecipeContext({\n key: \"popover\",\n});\n\nexport const PopoverRootSlot: SlotComponent<typeof RaPopover, PopoverProps> =\n withContext<typeof RaPopover, PopoverProps>(RaPopover);\n","import { PopoverRootSlot } from \"./popover.slots\";\nimport type { PopoverProps } from \"./popover.types\";\n\n/**\n * # Popover\n *\n * A component that displays floating content in relation to a trigger element.\n *\n * Note this component is only used internally.\n */\nexport const Popover = (props: PopoverProps) => {\n const { children, ...rest } = props;\n\n return <PopoverRootSlot {...rest}>{children}</PopoverRootSlot>;\n};\n\nPopover.displayName = \"Popover\";\n"],"names":["withContext","createRecipeContext","PopoverRootSlot","RaPopover","Popover","props","children","rest","jsx"],"mappings":"sHAKM,CAAE,YAAAA,CAAA,EAAgBC,sBAAoB,CAC1C,IAAK,SACP,CAAC,EAEYC,EACXF,EAA4CG,2CAAS,ECA1CC,EAAWC,GAAwB,CAC9C,KAAM,CAAE,SAAAC,EAAU,GAAGC,CAAA,EAASF,EAE9B,OAAOG,EAAAA,IAACN,EAAA,CAAiB,GAAGK,EAAO,SAAAD,CAAA,CAAS,CAC9C,EAEAF,EAAQ,YAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"popover-DNaC7CwB.es.js","sources":["../../src/components/popover/popover.slots.tsx","../../src/components/popover/popover.tsx"],"sourcesContent":["import { createRecipeContext } from \"@chakra-ui/react\";\nimport { Popover as RaPopover } from \"react-aria-components\";\nimport type {
|
|
1
|
+
{"version":3,"file":"popover-DNaC7CwB.es.js","sources":["../../src/components/popover/popover.slots.tsx","../../src/components/popover/popover.tsx"],"sourcesContent":["import { createRecipeContext } from \"@chakra-ui/react\";\nimport { Popover as RaPopover } from \"react-aria-components\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type { PopoverProps } from \"./popover.types\";\n\nconst { withContext } = createRecipeContext({\n key: \"popover\",\n});\n\nexport const PopoverRootSlot: SlotComponent<typeof RaPopover, PopoverProps> =\n withContext<typeof RaPopover, PopoverProps>(RaPopover);\n","import { PopoverRootSlot } from \"./popover.slots\";\nimport type { PopoverProps } from \"./popover.types\";\n\n/**\n * # Popover\n *\n * A component that displays floating content in relation to a trigger element.\n *\n * Note this component is only used internally.\n */\nexport const Popover = (props: PopoverProps) => {\n const { children, ...rest } = props;\n\n return <PopoverRootSlot {...rest}>{children}</PopoverRootSlot>;\n};\n\nPopover.displayName = \"Popover\";\n"],"names":["withContext","createRecipeContext","PopoverRootSlot","RaPopover","Popover","props","children","rest","jsx"],"mappings":";;;AAKA,MAAM,EAAE,aAAAA,EAAA,IAAgB,gBAAAC,EAAoB;AAAA,EAC1C,KAAK;AACP,CAAC,GAEYC,IACX,gBAAAF,EAA4CG,CAAS,GCA1CC,IAAU,CAACC,MAAwB;AAC9C,QAAM,EAAE,UAAAC,GAAU,GAAGC,EAAA,IAASF;AAE9B,SAAO,gBAAAG,EAACN,GAAA,EAAiB,GAAGK,GAAO,UAAAD,EAAA,CAAS;AAC9C;AAEAF,EAAQ,cAAc;"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx as e, jsxs as d } from "react/jsx-runtime";
|
|
2
|
-
import { $ as R, a as I, b as F, c as G, d as H, e as j, f as S, g as A, h as B } from "./Heading-
|
|
2
|
+
import { $ as R, a as I, b as F, c as G, d as H, e as j, f as S, g as A, h 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 w, d as N } from "./utils-Cyja2WdR.es.js";
|
|
7
7
|
import { $ as D } from "./context-R4YUlO9Y.es.js";
|
|
8
8
|
import { B as P } from "./box-DuBoAZvq.es.js";
|
|
@@ -184,4 +184,4 @@ const { withProvider: _, withContext: n } = /* @__PURE__ */ L({
|
|
|
184
184
|
export {
|
|
185
185
|
ve as R
|
|
186
186
|
};
|
|
187
|
-
//# sourceMappingURL=range-calendar-
|
|
187
|
+
//# sourceMappingURL=range-calendar-D55DTDbA.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"range-calendar-D55DTDbA.es.js","sources":["../../src/components/range-calendar/range-calendar.slots.tsx","../../src/components/range-calendar/components/range-calendar.grids.tsx","../../src/components/range-calendar/components/range-calendar.header.tsx","../../src/components/range-calendar/components/range-calendar.custom-context.tsx","../../src/components/range-calendar/range-calendar.tsx"],"sourcesContent":["import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type {\n RangeCalendarRootSlotProps,\n RangeCalendarHeaderSlotProps,\n RangeCalendarGridsSlotProps,\n RangeCalendarMonthTitleSlotProps,\n RangeCalendarGridSlotProps,\n RangeCalendarGridHeaderSlotProps,\n RangeCalendarHeaderCellSlotProps,\n RangeCalendarGridBodySlotProps,\n RangeCalendarCellSlotProps,\n} from \"./range-calendar.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"rangeCalendar\",\n});\n\nexport const RangeCalendarRootSlot: SlotComponent<\n HTMLDivElement,\n RangeCalendarRootSlotProps\n> = withProvider<HTMLDivElement, RangeCalendarRootSlotProps>(\"div\", \"root\");\n\nexport const RangeCalendarHeaderSlot = withContext<\n HTMLDivElement,\n RangeCalendarHeaderSlotProps\n>(\"div\", \"header\");\n\nexport const RangeCalendarGridsSlot = withContext<\n HTMLDivElement,\n RangeCalendarGridsSlotProps\n>(\"div\", \"grids\");\n\nexport const RangeCalendarMonthTitleSlot = withContext<\n HTMLDivElement,\n RangeCalendarMonthTitleSlotProps\n>(\"div\", \"monthTitle\");\n\nexport const RangeCalendarGridSlot = withContext<\n HTMLTableElement,\n RangeCalendarGridSlotProps\n>(\"table\", \"grid\");\n\nexport const RangeCalendarGridHeaderSlot = withContext<\n HTMLTableSectionElement,\n RangeCalendarGridHeaderSlotProps\n>(\"thead\", \"gridHeader\");\n\nexport const RangeCalendarHeaderCellSlot = withContext<\n HTMLTableCellElement,\n RangeCalendarHeaderCellSlotProps\n>(\"th\", \"headerCell\");\n\nexport const RangeCalendarGridBodySlot = withContext<\n HTMLTableSectionElement,\n RangeCalendarGridBodySlotProps\n>(\"tbody\", \"gridBody\");\n\nexport const RangeCalendarCellSlot = withContext<\n HTMLTableCellElement,\n RangeCalendarCellSlotProps\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 RangeCalendarContext,\n RangeCalendarStateContext,\n useLocale,\n} from \"react-aria-components\";\nimport { Box } from \"@/components\";\n\nimport {\n RangeCalendarCellSlot,\n RangeCalendarGridBodySlot,\n RangeCalendarGridHeaderSlot,\n RangeCalendarGridsSlot,\n RangeCalendarGridSlot,\n RangeCalendarHeaderCellSlot,\n RangeCalendarMonthTitleSlot,\n} from \"../range-calendar.slots\";\n\nexport const RangeCalendarGrids = () => {\n const { locale } = useLocale();\n const context = useSlottedContext(RangeCalendarContext);\n\n const calendarState = useContext(RangeCalendarStateContext)!;\n const visibleMonthsCount = context?.visibleDuration?.months || 1;\n const todayDate = today(getLocalTimeZone());\n const showMonthTitles = visibleMonthsCount > 1;\n\n return (\n <RangeCalendarGridsSlot>\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 <RangeCalendarMonthTitleSlot>\n {monthName}\n </RangeCalendarMonthTitleSlot>\n )}\n <RangeCalendarGridSlot asChild>\n <RaCalendarGrid offset={{ months: index }} weekdayStyle=\"short\">\n <RangeCalendarGridHeaderSlot asChild>\n <RaCalendarGridHeader>\n {(day) => (\n <RangeCalendarHeaderCellSlot asChild>\n <RaCalendarHeaderCell>{day}</RaCalendarHeaderCell>\n </RangeCalendarHeaderCellSlot>\n )}\n </RaCalendarGridHeader>\n </RangeCalendarGridHeaderSlot>\n <RangeCalendarGridBodySlot asChild>\n <RaCalendarGridBody>\n {(date) => {\n const isToday = date.compare(todayDate) === 0;\n return (\n <RangeCalendarCellSlot asChild data-today={isToday}>\n <RaCalendarCell date={date} />\n </RangeCalendarCellSlot>\n );\n }}\n </RaCalendarGridBody>\n </RangeCalendarGridBodySlot>\n </RaCalendarGrid>\n </RangeCalendarGridSlot>\n </Box>\n );\n })}\n </RangeCalendarGridsSlot>\n );\n};\n","import {\n RangeCalendarContext,\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 { RangeCalendarHeaderSlot } from \"../range-calendar.slots\";\n\nexport const RangeCalendarHeader = () => {\n const rangeCalendarProps = useSlottedContext(RangeCalendarContext);\n\n // Needed to decide whether to show a single month or a range\n const visibleDurationMonths =\n rangeCalendarProps?.visibleDuration?.months || 1;\n const showRangeLabel = visibleDurationMonths > 1;\n\n return (\n <RangeCalendarHeaderSlot>\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 </RangeCalendarHeaderSlot>\n );\n};\n","import { getLocalTimeZone } from \"@internationalized/date\";\nimport { useContext } from \"react\";\nimport {\n Provider,\n ButtonContext,\n RangeCalendarStateContext,\n TextContext,\n useLocale,\n} from \"react-aria-components\";\n\nexport const RangeCalendarCustomContext = ({\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(RangeCalendarStateContext)!;\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 { RangeCalendarProps } from \"./range-calendar.types\";\nimport type { DateValue } from \"@internationalized/date\";\n\nimport { RangeCalendar as RaRangeCalendar } from \"react-aria-components\";\n\nimport { RangeCalendarRootSlot } from \"./range-calendar.slots\";\nimport { RangeCalendarGrids } from \"./components/range-calendar.grids\";\nimport { RangeCalendarHeader } from \"./components/range-calendar.header\";\nimport { rangeCalendarSlotRecipe } from \"./range-calendar.recipe\";\nimport { useRecipe } from \"@chakra-ui/react/styled-system\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport { RangeCalendarCustomContext } from \"./components/range-calendar.custom-context\";\n\nexport const RangeCalendar = (props: RangeCalendarProps<DateValue>) => {\n const recipe = useRecipe({ recipe: rangeCalendarSlotRecipe });\n const [recipeProps, remainingProps] = recipe.splitVariantProps(props);\n const [styleProps, otherProps] = extractStyleProps(remainingProps);\n\n return (\n <RangeCalendarRootSlot {...recipeProps} {...styleProps} asChild>\n <RaRangeCalendar {...otherProps}>\n <RangeCalendarCustomContext>\n <RangeCalendarHeader />\n <RangeCalendarGrids />\n </RangeCalendarCustomContext>\n </RaRangeCalendar>\n </RangeCalendarRootSlot>\n );\n};\n"],"names":["withProvider","withContext","createSlotRecipeContext","RangeCalendarRootSlot","RangeCalendarHeaderSlot","RangeCalendarGridsSlot","RangeCalendarMonthTitleSlot","RangeCalendarGridSlot","RangeCalendarGridHeaderSlot","RangeCalendarHeaderCellSlot","RangeCalendarGridBodySlot","RangeCalendarCellSlot","RangeCalendarGrids","locale","useLocale","context","useSlottedContext","RangeCalendarContext","calendarState","useContext","RangeCalendarStateContext","visibleMonthsCount","todayDate","today","getLocalTimeZone","showMonthTitles","jsx","_","index","gridDate","monthName","jsxs","Box","RaCalendarGrid","RaCalendarGridHeader","day","RaCalendarHeaderCell","RaCalendarGridBody","date","isToday","RaCalendarCell","RangeCalendarHeader","showRangeLabel","Flex","Stack","VisuallyHidden","Heading","IconButton","KeyboardArrowLeft","Text","KeyboardArrowRight","RangeCalendarCustomContext","children","buttonContext","ButtonContext","textContext","TextContext","buttonSlots","monthLabel","monthRangeLabel","yearLabel","textSlots","Provider","RangeCalendar","props","recipe","useRecipe","rangeCalendarSlotRecipe","recipeProps","remainingProps","styleProps","otherProps","extractStyleProps","RaRangeCalendar"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"range-calendar-_dZfAsdG.cjs.js","sources":["../../src/components/range-calendar/range-calendar.slots.tsx","../../src/components/range-calendar/components/range-calendar.grids.tsx","../../src/components/range-calendar/components/range-calendar.header.tsx","../../src/components/range-calendar/components/range-calendar.custom-context.tsx","../../src/components/range-calendar/range-calendar.tsx"],"sourcesContent":["import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type {\n RangeCalendarRootSlotProps,\n RangeCalendarHeaderSlotProps,\n RangeCalendarGridsSlotProps,\n RangeCalendarMonthTitleSlotProps,\n RangeCalendarGridSlotProps,\n RangeCalendarGridHeaderSlotProps,\n RangeCalendarHeaderCellSlotProps,\n RangeCalendarGridBodySlotProps,\n RangeCalendarCellSlotProps,\n} from \"./range-calendar.types\";\nimport type { SlotComponent } from \"@/utils/slot-types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"rangeCalendar\",\n});\n\nexport const RangeCalendarRootSlot: SlotComponent<\n HTMLDivElement,\n RangeCalendarRootSlotProps\n> = withProvider<HTMLDivElement, RangeCalendarRootSlotProps>(\"div\", \"root\");\n\nexport const RangeCalendarHeaderSlot = withContext<\n HTMLDivElement,\n RangeCalendarHeaderSlotProps\n>(\"div\", \"header\");\n\nexport const RangeCalendarGridsSlot = withContext<\n HTMLDivElement,\n RangeCalendarGridsSlotProps\n>(\"div\", \"grids\");\n\nexport const RangeCalendarMonthTitleSlot = withContext<\n HTMLDivElement,\n RangeCalendarMonthTitleSlotProps\n>(\"div\", \"monthTitle\");\n\nexport const RangeCalendarGridSlot = withContext<\n HTMLTableElement,\n RangeCalendarGridSlotProps\n>(\"table\", \"grid\");\n\nexport const RangeCalendarGridHeaderSlot = withContext<\n HTMLTableSectionElement,\n RangeCalendarGridHeaderSlotProps\n>(\"thead\", \"gridHeader\");\n\nexport const RangeCalendarHeaderCellSlot = withContext<\n HTMLTableCellElement,\n RangeCalendarHeaderCellSlotProps\n>(\"th\", \"headerCell\");\n\nexport const RangeCalendarGridBodySlot = withContext<\n HTMLTableSectionElement,\n RangeCalendarGridBodySlotProps\n>(\"tbody\", \"gridBody\");\n\nexport const RangeCalendarCellSlot = withContext<\n HTMLTableCellElement,\n RangeCalendarCellSlotProps\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 RangeCalendarContext,\n RangeCalendarStateContext,\n useLocale,\n} from \"react-aria-components\";\nimport { Box } from \"@/components\";\n\nimport {\n RangeCalendarCellSlot,\n RangeCalendarGridBodySlot,\n RangeCalendarGridHeaderSlot,\n RangeCalendarGridsSlot,\n RangeCalendarGridSlot,\n RangeCalendarHeaderCellSlot,\n RangeCalendarMonthTitleSlot,\n} from \"../range-calendar.slots\";\n\nexport const RangeCalendarGrids = () => {\n const { locale } = useLocale();\n const context = useSlottedContext(RangeCalendarContext);\n\n const calendarState = useContext(RangeCalendarStateContext)!;\n const visibleMonthsCount = context?.visibleDuration?.months || 1;\n const todayDate = today(getLocalTimeZone());\n const showMonthTitles = visibleMonthsCount > 1;\n\n return (\n <RangeCalendarGridsSlot>\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 <RangeCalendarMonthTitleSlot>\n {monthName}\n </RangeCalendarMonthTitleSlot>\n )}\n <RangeCalendarGridSlot asChild>\n <RaCalendarGrid offset={{ months: index }} weekdayStyle=\"short\">\n <RangeCalendarGridHeaderSlot asChild>\n <RaCalendarGridHeader>\n {(day) => (\n <RangeCalendarHeaderCellSlot asChild>\n <RaCalendarHeaderCell>{day}</RaCalendarHeaderCell>\n </RangeCalendarHeaderCellSlot>\n )}\n </RaCalendarGridHeader>\n </RangeCalendarGridHeaderSlot>\n <RangeCalendarGridBodySlot asChild>\n <RaCalendarGridBody>\n {(date) => {\n const isToday = date.compare(todayDate) === 0;\n return (\n <RangeCalendarCellSlot asChild data-today={isToday}>\n <RaCalendarCell date={date} />\n </RangeCalendarCellSlot>\n );\n }}\n </RaCalendarGridBody>\n </RangeCalendarGridBodySlot>\n </RaCalendarGrid>\n </RangeCalendarGridSlot>\n </Box>\n );\n })}\n </RangeCalendarGridsSlot>\n );\n};\n","import {\n RangeCalendarContext,\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 { RangeCalendarHeaderSlot } from \"../range-calendar.slots\";\n\nexport const RangeCalendarHeader = () => {\n const rangeCalendarProps = useSlottedContext(RangeCalendarContext);\n\n // Needed to decide whether to show a single month or a range\n const visibleDurationMonths =\n rangeCalendarProps?.visibleDuration?.months || 1;\n const showRangeLabel = visibleDurationMonths > 1;\n\n return (\n <RangeCalendarHeaderSlot>\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 </RangeCalendarHeaderSlot>\n );\n};\n","import { getLocalTimeZone } from \"@internationalized/date\";\nimport { useContext } from \"react\";\nimport {\n Provider,\n ButtonContext,\n RangeCalendarStateContext,\n TextContext,\n useLocale,\n} from \"react-aria-components\";\n\nexport const RangeCalendarCustomContext = ({\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(RangeCalendarStateContext)!;\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 { RangeCalendarProps } from \"./range-calendar.types\";\nimport type { DateValue } from \"@internationalized/date\";\n\nimport { RangeCalendar as RaRangeCalendar } from \"react-aria-components\";\n\nimport { RangeCalendarRootSlot } from \"./range-calendar.slots\";\nimport { RangeCalendarGrids } from \"./components/range-calendar.grids\";\nimport { RangeCalendarHeader } from \"./components/range-calendar.header\";\nimport { rangeCalendarSlotRecipe } from \"./range-calendar.recipe\";\nimport { useRecipe } from \"@chakra-ui/react/styled-system\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport { RangeCalendarCustomContext } from \"./components/range-calendar.custom-context\";\n\nexport const RangeCalendar = (props: RangeCalendarProps<DateValue>) => {\n const recipe = useRecipe({ recipe: rangeCalendarSlotRecipe });\n const [recipeProps, remainingProps] = recipe.splitVariantProps(props);\n const [styleProps, otherProps] = extractStyleProps(remainingProps);\n\n return (\n <RangeCalendarRootSlot {...recipeProps} {...styleProps} asChild>\n <RaRangeCalendar {...otherProps}>\n <RangeCalendarCustomContext>\n <RangeCalendarHeader />\n <RangeCalendarGrids />\n </RangeCalendarCustomContext>\n </RaRangeCalendar>\n </RangeCalendarRootSlot>\n );\n};\n"],"names":["withProvider","withContext","createSlotRecipeContext","RangeCalendarRootSlot","RangeCalendarHeaderSlot","RangeCalendarGridsSlot","RangeCalendarMonthTitleSlot","RangeCalendarGridSlot","RangeCalendarGridHeaderSlot","RangeCalendarHeaderCellSlot","RangeCalendarGridBodySlot","RangeCalendarCellSlot","RangeCalendarGrids","locale","useLocale","context","useSlottedContext","RangeCalendarContext","calendarState","useContext","RangeCalendarStateContext","visibleMonthsCount","todayDate","today","getLocalTimeZone","showMonthTitles","jsx","_","index","gridDate","monthName","jsxs","Box","RaCalendarGrid","RaCalendarGridHeader","day","RaCalendarHeaderCell","RaCalendarGridBody","date","isToday","RaCalendarCell","RangeCalendarHeader","showRangeLabel","Flex","Stack","VisuallyHidden","Heading","IconButton","KeyboardArrowLeft","Text","KeyboardArrowRight","RangeCalendarCustomContext","children","buttonContext","ButtonContext","textContext","TextContext","buttonSlots","monthLabel","monthRangeLabel","yearLabel","textSlots","Provider","RangeCalendar","props","recipe","useRecipe","rangeCalendarSlotRecipe","recipeProps","remainingProps","styleProps","otherProps","extractStyleProps","RaRangeCalendar"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"range-calendar-_dZfAsdG.cjs.js","sources":["../../src/components/range-calendar/range-calendar.slots.tsx","../../src/components/range-calendar/components/range-calendar.grids.tsx","../../src/components/range-calendar/components/range-calendar.header.tsx","../../src/components/range-calendar/components/range-calendar.custom-context.tsx","../../src/components/range-calendar/range-calendar.tsx"],"sourcesContent":["import { createSlotRecipeContext } from \"@chakra-ui/react\";\nimport type { SlotComponent } from \"@/type-utils\";\nimport type {\n RangeCalendarRootSlotProps,\n RangeCalendarHeaderSlotProps,\n RangeCalendarGridsSlotProps,\n RangeCalendarMonthTitleSlotProps,\n RangeCalendarGridSlotProps,\n RangeCalendarGridHeaderSlotProps,\n RangeCalendarHeaderCellSlotProps,\n RangeCalendarGridBodySlotProps,\n RangeCalendarCellSlotProps,\n} from \"./range-calendar.types\";\n\nconst { withProvider, withContext } = createSlotRecipeContext({\n key: \"rangeCalendar\",\n});\n\nexport const RangeCalendarRootSlot: SlotComponent<\n HTMLDivElement,\n RangeCalendarRootSlotProps\n> = withProvider<HTMLDivElement, RangeCalendarRootSlotProps>(\"div\", \"root\");\n\nexport const RangeCalendarHeaderSlot = withContext<\n HTMLDivElement,\n RangeCalendarHeaderSlotProps\n>(\"div\", \"header\");\n\nexport const RangeCalendarGridsSlot = withContext<\n HTMLDivElement,\n RangeCalendarGridsSlotProps\n>(\"div\", \"grids\");\n\nexport const RangeCalendarMonthTitleSlot = withContext<\n HTMLDivElement,\n RangeCalendarMonthTitleSlotProps\n>(\"div\", \"monthTitle\");\n\nexport const RangeCalendarGridSlot = withContext<\n HTMLTableElement,\n RangeCalendarGridSlotProps\n>(\"table\", \"grid\");\n\nexport const RangeCalendarGridHeaderSlot = withContext<\n HTMLTableSectionElement,\n RangeCalendarGridHeaderSlotProps\n>(\"thead\", \"gridHeader\");\n\nexport const RangeCalendarHeaderCellSlot = withContext<\n HTMLTableCellElement,\n RangeCalendarHeaderCellSlotProps\n>(\"th\", \"headerCell\");\n\nexport const RangeCalendarGridBodySlot = withContext<\n HTMLTableSectionElement,\n RangeCalendarGridBodySlotProps\n>(\"tbody\", \"gridBody\");\n\nexport const RangeCalendarCellSlot = withContext<\n HTMLTableCellElement,\n RangeCalendarCellSlotProps\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 RangeCalendarContext,\n RangeCalendarStateContext,\n useLocale,\n} from \"react-aria-components\";\nimport { Box } from \"@/components\";\n\nimport {\n RangeCalendarCellSlot,\n RangeCalendarGridBodySlot,\n RangeCalendarGridHeaderSlot,\n RangeCalendarGridsSlot,\n RangeCalendarGridSlot,\n RangeCalendarHeaderCellSlot,\n RangeCalendarMonthTitleSlot,\n} from \"../range-calendar.slots\";\n\nexport const RangeCalendarGrids = () => {\n const { locale } = useLocale();\n const context = useSlottedContext(RangeCalendarContext);\n\n const calendarState = useContext(RangeCalendarStateContext)!;\n const visibleMonthsCount = context?.visibleDuration?.months || 1;\n const todayDate = today(getLocalTimeZone());\n const showMonthTitles = visibleMonthsCount > 1;\n\n return (\n <RangeCalendarGridsSlot>\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 <RangeCalendarMonthTitleSlot>\n {monthName}\n </RangeCalendarMonthTitleSlot>\n )}\n <RangeCalendarGridSlot asChild>\n <RaCalendarGrid offset={{ months: index }} weekdayStyle=\"short\">\n <RangeCalendarGridHeaderSlot asChild>\n <RaCalendarGridHeader>\n {(day) => (\n <RangeCalendarHeaderCellSlot asChild>\n <RaCalendarHeaderCell>{day}</RaCalendarHeaderCell>\n </RangeCalendarHeaderCellSlot>\n )}\n </RaCalendarGridHeader>\n </RangeCalendarGridHeaderSlot>\n <RangeCalendarGridBodySlot asChild>\n <RaCalendarGridBody>\n {(date) => {\n const isToday = date.compare(todayDate) === 0;\n return (\n <RangeCalendarCellSlot asChild data-today={isToday}>\n <RaCalendarCell date={date} />\n </RangeCalendarCellSlot>\n );\n }}\n </RaCalendarGridBody>\n </RangeCalendarGridBodySlot>\n </RaCalendarGrid>\n </RangeCalendarGridSlot>\n </Box>\n );\n })}\n </RangeCalendarGridsSlot>\n );\n};\n","import {\n RangeCalendarContext,\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 { RangeCalendarHeaderSlot } from \"../range-calendar.slots\";\n\nexport const RangeCalendarHeader = () => {\n const rangeCalendarProps = useSlottedContext(RangeCalendarContext);\n\n // Needed to decide whether to show a single month or a range\n const visibleDurationMonths =\n rangeCalendarProps?.visibleDuration?.months || 1;\n const showRangeLabel = visibleDurationMonths > 1;\n\n return (\n <RangeCalendarHeaderSlot>\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 </RangeCalendarHeaderSlot>\n );\n};\n","import { getLocalTimeZone } from \"@internationalized/date\";\nimport { useContext } from \"react\";\nimport {\n Provider,\n ButtonContext,\n RangeCalendarStateContext,\n TextContext,\n useLocale,\n} from \"react-aria-components\";\n\nexport const RangeCalendarCustomContext = ({\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(RangeCalendarStateContext)!;\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 { RangeCalendarProps } from \"./range-calendar.types\";\nimport type { DateValue } from \"@internationalized/date\";\n\nimport { RangeCalendar as RaRangeCalendar } from \"react-aria-components\";\n\nimport { RangeCalendarRootSlot } from \"./range-calendar.slots\";\nimport { RangeCalendarGrids } from \"./components/range-calendar.grids\";\nimport { RangeCalendarHeader } from \"./components/range-calendar.header\";\nimport { rangeCalendarSlotRecipe } from \"./range-calendar.recipe\";\nimport { useRecipe } from \"@chakra-ui/react/styled-system\";\nimport { extractStyleProps } from \"@/utils/extractStyleProps\";\nimport { RangeCalendarCustomContext } from \"./components/range-calendar.custom-context\";\n\nexport const RangeCalendar = (props: RangeCalendarProps<DateValue>) => {\n const recipe = useRecipe({ recipe: rangeCalendarSlotRecipe });\n const [recipeProps, remainingProps] = recipe.splitVariantProps(props);\n const [styleProps, otherProps] = extractStyleProps(remainingProps);\n\n return (\n <RangeCalendarRootSlot {...recipeProps} {...styleProps} asChild>\n <RaRangeCalendar {...otherProps}>\n <RangeCalendarCustomContext>\n <RangeCalendarHeader />\n <RangeCalendarGrids />\n </RangeCalendarCustomContext>\n </RaRangeCalendar>\n </RangeCalendarRootSlot>\n );\n};\n"],"names":["withProvider","withContext","createSlotRecipeContext","RangeCalendarRootSlot","RangeCalendarHeaderSlot","RangeCalendarGridsSlot","RangeCalendarMonthTitleSlot","RangeCalendarGridSlot","RangeCalendarGridHeaderSlot","RangeCalendarHeaderCellSlot","RangeCalendarGridBodySlot","RangeCalendarCellSlot","RangeCalendarGrids","locale","useLocale","context","useSlottedContext","RangeCalendarContext","calendarState","useContext","RangeCalendarStateContext","visibleMonthsCount","todayDate","today","getLocalTimeZone","showMonthTitles","jsx","_","index","gridDate","monthName","jsxs","Box","RaCalendarGrid","RaCalendarGridHeader","day","RaCalendarHeaderCell","RaCalendarGridBody","date","isToday","RaCalendarCell","RangeCalendarHeader","showRangeLabel","Flex","Stack","VisuallyHidden","Heading","IconButton","KeyboardArrowLeft","Text","KeyboardArrowRight","RangeCalendarCustomContext","children","buttonContext","ButtonContext","textContext","TextContext","buttonSlots","monthLabel","monthRangeLabel","yearLabel","textSlots","Provider","RangeCalendar","props","recipe","useRecipe","rangeCalendarSlotRecipe","recipeProps","remainingProps","styleProps","otherProps","extractStyleProps","RaRangeCalendar"],"mappings":"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"}
|