@raystack/apsara 0.56.5 → 1.0.0-rc.0
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/README.md +3 -3
- package/dist/components/accordion/accordion-content.cjs +3 -3
- package/dist/components/accordion/accordion-content.cjs.map +1 -1
- package/dist/components/accordion/accordion-content.d.ts +1 -7
- package/dist/components/accordion/accordion-content.d.ts.map +1 -1
- package/dist/components/accordion/accordion-content.js +3 -3
- package/dist/components/accordion/accordion-content.js.map +1 -1
- package/dist/components/accordion/accordion-item.cjs +3 -3
- package/dist/components/accordion/accordion-item.cjs.map +1 -1
- package/dist/components/accordion/accordion-item.d.ts +1 -7
- package/dist/components/accordion/accordion-item.d.ts.map +1 -1
- package/dist/components/accordion/accordion-item.js +2 -2
- package/dist/components/accordion/accordion-item.js.map +1 -1
- package/dist/components/accordion/accordion-root.cjs +24 -13
- package/dist/components/accordion/accordion-root.cjs.map +1 -1
- package/dist/components/accordion/accordion-root.d.ts +12 -6
- package/dist/components/accordion/accordion-root.d.ts.map +1 -1
- package/dist/components/accordion/accordion-root.js +24 -13
- package/dist/components/accordion/accordion-root.js.map +1 -1
- package/dist/components/accordion/accordion-trigger.cjs +3 -3
- package/dist/components/accordion/accordion-trigger.cjs.map +1 -1
- package/dist/components/accordion/accordion-trigger.d.ts +1 -7
- package/dist/components/accordion/accordion-trigger.d.ts.map +1 -1
- package/dist/components/accordion/accordion-trigger.js +2 -2
- package/dist/components/accordion/accordion-trigger.js.map +1 -1
- package/dist/components/accordion/accordion.d.ts +14 -4
- package/dist/components/accordion/accordion.d.ts.map +1 -1
- package/dist/components/accordion/accordion.module.css.cjs +1 -1
- package/dist/components/accordion/accordion.module.css.js +1 -1
- package/dist/components/avatar/avatar.cjs +4 -5
- package/dist/components/avatar/avatar.cjs.map +1 -1
- package/dist/components/avatar/avatar.d.ts +4 -5
- package/dist/components/avatar/avatar.d.ts.map +1 -1
- package/dist/components/avatar/avatar.js +4 -5
- package/dist/components/avatar/avatar.js.map +1 -1
- package/dist/components/avatar/index.d.ts +2 -2
- package/dist/components/breadcrumb/breadcrumb-item.cjs +2 -2
- package/dist/components/breadcrumb/breadcrumb-item.cjs.map +1 -1
- package/dist/components/breadcrumb/breadcrumb-item.d.ts +3 -3
- package/dist/components/breadcrumb/breadcrumb-item.d.ts.map +1 -1
- package/dist/components/breadcrumb/breadcrumb-item.js +2 -2
- package/dist/components/breadcrumb/breadcrumb-item.js.map +1 -1
- package/dist/components/button/button.cjs +3 -4
- package/dist/components/button/button.cjs.map +1 -1
- package/dist/components/button/button.d.ts +12 -11
- package/dist/components/button/button.d.ts.map +1 -1
- package/dist/components/button/button.js +3 -4
- package/dist/components/button/button.js.map +1 -1
- package/dist/components/calendar/calendar.cjs +1 -2
- package/dist/components/calendar/calendar.cjs.map +1 -1
- package/dist/components/calendar/calendar.d.ts.map +1 -1
- package/dist/components/calendar/calendar.js +2 -3
- package/dist/components/calendar/calendar.js.map +1 -1
- package/dist/components/checkbox/__tests__/checkbox-group.test.d.ts +2 -0
- package/dist/components/checkbox/__tests__/checkbox-group.test.d.ts.map +1 -0
- package/dist/components/checkbox/checkbox.cjs +10 -21
- package/dist/components/checkbox/checkbox.cjs.map +1 -1
- package/dist/components/checkbox/checkbox.d.ts +3 -13
- package/dist/components/checkbox/checkbox.d.ts.map +1 -1
- package/dist/components/checkbox/checkbox.js +11 -22
- package/dist/components/checkbox/checkbox.js.map +1 -1
- package/dist/components/checkbox/checkbox.module.css.cjs +1 -1
- package/dist/components/checkbox/checkbox.module.css.js +1 -1
- package/dist/components/checkbox/index.d.ts +1 -1
- package/dist/components/chip/chip.d.ts +1 -1
- package/dist/components/code-block/code-block-misc.d.ts +15 -15
- package/dist/components/code-block/code-block-misc.d.ts.map +1 -1
- package/dist/components/code-block/code-block.d.ts +100 -0
- package/dist/components/code-block/code-block.d.ts.map +1 -0
- package/dist/components/collapsible/__tests__/collapsible.test.d.ts +2 -0
- package/dist/components/collapsible/__tests__/collapsible.test.d.ts.map +1 -0
- package/dist/components/collapsible/collapsible.cjs +22 -0
- package/dist/components/collapsible/collapsible.cjs.map +1 -0
- package/dist/components/collapsible/collapsible.d.ts +5 -0
- package/dist/components/collapsible/collapsible.d.ts.map +1 -0
- package/dist/components/collapsible/collapsible.js +20 -0
- package/dist/components/collapsible/collapsible.js.map +1 -0
- package/dist/components/collapsible/collapsible.module.css.cjs +8 -0
- package/dist/components/collapsible/collapsible.module.css.cjs.map +1 -0
- package/dist/components/collapsible/collapsible.module.css.js +4 -0
- package/dist/components/collapsible/collapsible.module.css.js.map +1 -0
- package/dist/components/collapsible/index.d.ts +2 -0
- package/dist/components/collapsible/index.d.ts.map +1 -0
- package/dist/components/color-picker/color-picker-alpha.cjs +3 -3
- package/dist/components/color-picker/color-picker-alpha.cjs.map +1 -1
- package/dist/components/color-picker/color-picker-alpha.d.ts +2 -3
- package/dist/components/color-picker/color-picker-alpha.d.ts.map +1 -1
- package/dist/components/color-picker/color-picker-alpha.js +4 -4
- package/dist/components/color-picker/color-picker-alpha.js.map +1 -1
- package/dist/components/color-picker/color-picker-hue.cjs +3 -3
- package/dist/components/color-picker/color-picker-hue.cjs.map +1 -1
- package/dist/components/color-picker/color-picker-hue.d.ts +2 -3
- package/dist/components/color-picker/color-picker-hue.d.ts.map +1 -1
- package/dist/components/color-picker/color-picker-hue.js +4 -4
- package/dist/components/color-picker/color-picker-hue.js.map +1 -1
- package/dist/components/color-picker/color-picker.d.ts +8 -0
- package/dist/components/color-picker/color-picker.d.ts.map +1 -0
- package/dist/components/color-picker/color-picker.module.css.cjs +1 -1
- package/dist/components/color-picker/color-picker.module.css.js +1 -1
- package/dist/components/combobox/combobox-content.cjs +5 -26
- package/dist/components/combobox/combobox-content.cjs.map +1 -1
- package/dist/components/combobox/combobox-content.d.ts +3 -4
- package/dist/components/combobox/combobox-content.d.ts.map +1 -1
- package/dist/components/combobox/combobox-content.js +6 -27
- package/dist/components/combobox/combobox-content.js.map +1 -1
- package/dist/components/combobox/combobox-input.cjs +10 -33
- package/dist/components/combobox/combobox-input.cjs.map +1 -1
- package/dist/components/combobox/combobox-input.d.ts.map +1 -1
- package/dist/components/combobox/combobox-input.js +11 -34
- package/dist/components/combobox/combobox-input.js.map +1 -1
- package/dist/components/combobox/combobox-item.cjs +15 -15
- package/dist/components/combobox/combobox-item.cjs.map +1 -1
- package/dist/components/combobox/combobox-item.d.ts +5 -5
- package/dist/components/combobox/combobox-item.d.ts.map +1 -1
- package/dist/components/combobox/combobox-item.js +15 -15
- package/dist/components/combobox/combobox-item.js.map +1 -1
- package/dist/components/combobox/combobox-misc.cjs +13 -13
- package/dist/components/combobox/combobox-misc.cjs.map +1 -1
- package/dist/components/combobox/combobox-misc.d.ts +3 -9
- package/dist/components/combobox/combobox-misc.d.ts.map +1 -1
- package/dist/components/combobox/combobox-misc.js +13 -13
- package/dist/components/combobox/combobox-misc.js.map +1 -1
- package/dist/components/combobox/combobox-root.cjs +23 -42
- package/dist/components/combobox/combobox-root.cjs.map +1 -1
- package/dist/components/combobox/combobox-root.d.ts +19 -26
- package/dist/components/combobox/combobox-root.d.ts.map +1 -1
- package/dist/components/combobox/combobox-root.js +24 -43
- package/dist/components/combobox/combobox-root.js.map +1 -1
- package/dist/components/combobox/combobox.d.ts +6 -12
- package/dist/components/combobox/combobox.d.ts.map +1 -1
- package/dist/components/combobox/combobox.module.css.cjs +1 -1
- package/dist/components/combobox/combobox.module.css.js +1 -1
- package/dist/components/data-table/components/content.cjs +30 -22
- package/dist/components/data-table/components/content.cjs.map +1 -1
- package/dist/components/data-table/components/content.d.ts.map +1 -1
- package/dist/components/data-table/components/content.js +30 -22
- package/dist/components/data-table/components/content.js.map +1 -1
- package/dist/components/data-table/components/filters.cjs +3 -3
- package/dist/components/data-table/components/filters.cjs.map +1 -1
- package/dist/components/data-table/components/filters.d.ts.map +1 -1
- package/dist/components/data-table/components/filters.js +4 -4
- package/dist/components/data-table/components/filters.js.map +1 -1
- package/dist/components/data-table/components/virtualized-content.cjs +56 -9
- package/dist/components/data-table/components/virtualized-content.cjs.map +1 -1
- package/dist/components/data-table/components/virtualized-content.d.ts.map +1 -1
- package/dist/components/data-table/components/virtualized-content.js +57 -10
- package/dist/components/data-table/components/virtualized-content.js.map +1 -1
- package/dist/components/data-table/data-table.cjs +30 -21
- package/dist/components/data-table/data-table.cjs.map +1 -1
- package/dist/components/data-table/data-table.d.ts +7 -7
- package/dist/components/data-table/data-table.d.ts.map +1 -1
- package/dist/components/data-table/data-table.js +31 -22
- package/dist/components/data-table/data-table.js.map +1 -1
- package/dist/components/data-table/data-table.module.css.cjs +1 -1
- package/dist/components/data-table/data-table.module.css.js +1 -1
- package/dist/components/data-table/data-table.types.cjs.map +1 -1
- package/dist/components/data-table/data-table.types.d.ts +5 -0
- package/dist/components/data-table/data-table.types.d.ts.map +1 -1
- package/dist/components/data-table/data-table.types.js.map +1 -1
- package/dist/components/data-table/utils/filter-operations.cjs +6 -6
- package/dist/components/data-table/utils/filter-operations.cjs.map +1 -1
- package/dist/components/data-table/utils/filter-operations.d.ts +1 -1
- package/dist/components/data-table/utils/filter-operations.js +6 -6
- package/dist/components/data-table/utils/filter-operations.js.map +1 -1
- package/dist/components/data-table/utils/index.cjs +12 -0
- package/dist/components/data-table/utils/index.cjs.map +1 -1
- package/dist/components/data-table/utils/index.d.ts +5 -0
- package/dist/components/data-table/utils/index.d.ts.map +1 -1
- package/dist/components/data-table/utils/index.js +12 -1
- package/dist/components/data-table/utils/index.js.map +1 -1
- package/dist/components/dialog/dialog-content.cjs +17 -0
- package/dist/components/dialog/dialog-content.cjs.map +1 -0
- package/dist/components/dialog/dialog-content.d.ts +15 -0
- package/dist/components/dialog/dialog-content.d.ts.map +1 -0
- package/dist/components/dialog/dialog-content.js +15 -0
- package/dist/components/dialog/dialog-content.js.map +1 -0
- package/dist/components/dialog/dialog-misc.cjs +37 -0
- package/dist/components/dialog/dialog-misc.cjs.map +1 -0
- package/dist/components/dialog/dialog-misc.d.ts +34 -0
- package/dist/components/dialog/dialog-misc.d.ts.map +1 -0
- package/dist/components/dialog/dialog-misc.js +30 -0
- package/dist/components/dialog/dialog-misc.js.map +1 -0
- package/dist/components/dialog/dialog.cjs +13 -44
- package/dist/components/dialog/dialog.cjs.map +1 -1
- package/dist/components/dialog/dialog.d.ts +38 -44
- package/dist/components/dialog/dialog.d.ts.map +1 -1
- package/dist/components/dialog/dialog.js +6 -34
- package/dist/components/dialog/dialog.js.map +1 -1
- package/dist/components/dialog/dialog.module.css.cjs +1 -1
- package/dist/components/dialog/dialog.module.css.js +1 -1
- package/dist/components/drawer/__tests__/drawer.test.d.ts +2 -0
- package/dist/components/drawer/__tests__/drawer.test.d.ts.map +1 -0
- package/dist/components/drawer/drawer-content.cjs +30 -0
- package/dist/components/drawer/drawer-content.cjs.map +1 -0
- package/dist/components/drawer/drawer-content.d.ts +13 -0
- package/dist/components/drawer/drawer-content.d.ts.map +1 -0
- package/dist/components/drawer/drawer-content.js +28 -0
- package/dist/components/drawer/drawer-content.js.map +1 -0
- package/dist/components/drawer/drawer-misc.cjs +26 -0
- package/dist/components/drawer/drawer-misc.cjs.map +1 -0
- package/dist/components/drawer/drawer-misc.d.ts +13 -0
- package/dist/components/drawer/drawer-misc.d.ts.map +1 -0
- package/dist/components/drawer/drawer-misc.js +20 -0
- package/dist/components/drawer/drawer-misc.js.map +1 -0
- package/dist/components/drawer/drawer-root.cjs +19 -0
- package/dist/components/drawer/drawer-root.cjs.map +1 -0
- package/dist/components/drawer/drawer-root.d.ts +12 -0
- package/dist/components/drawer/drawer-root.d.ts.map +1 -0
- package/dist/components/drawer/drawer-root.js +17 -0
- package/dist/components/drawer/drawer-root.js.map +1 -0
- package/dist/components/drawer/drawer.cjs +20 -0
- package/dist/components/drawer/drawer.cjs.map +1 -0
- package/dist/components/drawer/drawer.d.ts +21 -0
- package/dist/components/drawer/drawer.d.ts.map +1 -0
- package/dist/components/drawer/drawer.js +18 -0
- package/dist/components/drawer/drawer.js.map +1 -0
- package/dist/components/drawer/drawer.module.css.cjs +8 -0
- package/dist/components/drawer/drawer.module.css.cjs.map +1 -0
- package/dist/components/drawer/drawer.module.css.js +4 -0
- package/dist/components/drawer/drawer.module.css.js.map +1 -0
- package/dist/components/drawer/index.d.ts +2 -0
- package/dist/components/drawer/index.d.ts.map +1 -0
- package/dist/components/flex/flex.cjs +13 -4
- package/dist/components/flex/flex.cjs.map +1 -1
- package/dist/components/flex/flex.d.ts +7 -6
- package/dist/components/flex/flex.d.ts.map +1 -1
- package/dist/components/flex/flex.js +13 -4
- package/dist/components/flex/flex.js.map +1 -1
- package/dist/components/grid/grid-item.cjs +21 -16
- package/dist/components/grid/grid-item.cjs.map +1 -1
- package/dist/components/grid/grid-item.d.ts +14 -13
- package/dist/components/grid/grid-item.d.ts.map +1 -1
- package/dist/components/grid/grid-item.js +21 -16
- package/dist/components/grid/grid-item.js.map +1 -1
- package/dist/components/grid/grid.cjs +26 -21
- package/dist/components/grid/grid.cjs.map +1 -1
- package/dist/components/grid/grid.d.ts +27 -18
- package/dist/components/grid/grid.d.ts.map +1 -1
- package/dist/components/grid/grid.js +26 -21
- package/dist/components/grid/grid.js.map +1 -1
- package/dist/components/grid/index.d.ts +8 -6
- package/dist/components/grid/index.d.ts.map +1 -1
- package/dist/components/headline/headline.d.ts +1 -1
- package/dist/components/input-field/input-field.cjs +2 -2
- package/dist/components/input-field/input-field.cjs.map +1 -1
- package/dist/components/input-field/input-field.d.ts +2 -1
- package/dist/components/input-field/input-field.d.ts.map +1 -1
- package/dist/components/input-field/input-field.js +2 -2
- package/dist/components/input-field/input-field.js.map +1 -1
- package/dist/components/menu/__tests__/menu.test.d.ts +2 -0
- package/dist/components/menu/__tests__/menu.test.d.ts.map +1 -0
- package/dist/components/menu/cell.cjs +12 -0
- package/dist/components/menu/cell.cjs.map +1 -0
- package/dist/components/{dropdown-menu → menu}/cell.d.ts +2 -2
- package/dist/components/menu/cell.d.ts.map +1 -0
- package/dist/components/menu/cell.js +10 -0
- package/dist/components/menu/cell.js.map +1 -0
- package/dist/components/{dropdown-menu → menu}/cell.module.css.cjs +1 -1
- package/dist/components/menu/cell.module.css.js +4 -0
- package/dist/components/menu/index.d.ts +2 -0
- package/dist/components/menu/index.d.ts.map +1 -0
- package/dist/components/menu/menu-content.cjs +95 -0
- package/dist/components/menu/menu-content.cjs.map +1 -0
- package/dist/components/menu/menu-content.d.ts +7 -0
- package/dist/components/menu/menu-content.d.ts.map +1 -0
- package/dist/components/menu/menu-content.js +92 -0
- package/dist/components/menu/menu-content.js.map +1 -0
- package/dist/components/menu/menu-item.cjs +30 -0
- package/dist/components/menu/menu-item.cjs.map +1 -0
- package/dist/components/menu/menu-item.d.ts +7 -0
- package/dist/components/menu/menu-item.d.ts.map +1 -0
- package/dist/components/menu/menu-item.js +28 -0
- package/dist/components/menu/menu-item.js.map +1 -0
- package/dist/components/menu/menu-misc.cjs +42 -0
- package/dist/components/menu/menu-misc.cjs.map +1 -0
- package/dist/components/menu/menu-misc.d.ts +8 -0
- package/dist/components/menu/menu-misc.d.ts.map +1 -0
- package/dist/components/menu/menu-misc.js +37 -0
- package/dist/components/menu/menu-misc.js.map +1 -0
- package/dist/components/menu/menu-root.cjs +103 -0
- package/dist/components/menu/menu-root.cjs.map +1 -0
- package/dist/components/menu/menu-root.d.ts +71 -0
- package/dist/components/menu/menu-root.d.ts.map +1 -0
- package/dist/components/menu/menu-root.js +98 -0
- package/dist/components/menu/menu-root.js.map +1 -0
- package/dist/components/menu/menu-trigger.cjs +43 -0
- package/dist/components/menu/menu-trigger.cjs.map +1 -0
- package/dist/components/menu/menu-trigger.d.ts +11 -0
- package/dist/components/menu/menu-trigger.d.ts.map +1 -0
- package/dist/components/menu/menu-trigger.js +40 -0
- package/dist/components/menu/menu-trigger.js.map +1 -0
- package/dist/components/menu/menu.cjs +23 -0
- package/dist/components/menu/menu.cjs.map +1 -0
- package/dist/components/menu/menu.d.ts +21 -0
- package/dist/components/menu/menu.d.ts.map +1 -0
- package/dist/components/menu/menu.js +21 -0
- package/dist/components/menu/menu.js.map +1 -0
- package/dist/components/menu/menu.module.css.cjs +8 -0
- package/dist/components/menu/menu.module.css.cjs.map +1 -0
- package/dist/components/menu/menu.module.css.js +4 -0
- package/dist/components/menu/menu.module.css.js.map +1 -0
- package/dist/components/menu/utils.cjs +53 -0
- package/dist/components/menu/utils.cjs.map +1 -0
- package/dist/components/menu/utils.d.ts +8 -0
- package/dist/components/menu/utils.d.ts.map +1 -0
- package/dist/components/menu/utils.js +46 -0
- package/dist/components/menu/utils.js.map +1 -0
- package/dist/components/popover/popover.cjs +8 -7
- package/dist/components/popover/popover.cjs.map +1 -1
- package/dist/components/popover/popover.d.ts +6 -8
- package/dist/components/popover/popover.d.ts.map +1 -1
- package/dist/components/popover/popover.js +7 -6
- package/dist/components/popover/popover.js.map +1 -1
- package/dist/components/popover/popover.module.css.cjs +1 -1
- package/dist/components/popover/popover.module.css.js +1 -1
- package/dist/components/preview-card/__tests__/preview-card.test.d.ts +2 -0
- package/dist/components/preview-card/__tests__/preview-card.test.d.ts.map +1 -0
- package/dist/components/preview-card/index.d.ts +2 -0
- package/dist/components/preview-card/index.d.ts.map +1 -0
- package/dist/components/preview-card/preview-card.cjs +24 -0
- package/dist/components/preview-card/preview-card.cjs.map +1 -0
- package/dist/components/preview-card/preview-card.d.ts +15 -0
- package/dist/components/preview-card/preview-card.d.ts.map +1 -0
- package/dist/components/preview-card/preview-card.js +22 -0
- package/dist/components/preview-card/preview-card.js.map +1 -0
- package/dist/components/preview-card/preview-card.module.css.cjs +8 -0
- package/dist/components/preview-card/preview-card.module.css.cjs.map +1 -0
- package/dist/components/preview-card/preview-card.module.css.js +4 -0
- package/dist/components/preview-card/preview-card.module.css.js.map +1 -0
- package/dist/components/radio/index.d.ts +1 -1
- package/dist/components/radio/radio.cjs +8 -11
- package/dist/components/radio/radio.cjs.map +1 -1
- package/dist/components/radio/radio.d.ts +4 -13
- package/dist/components/radio/radio.d.ts.map +1 -1
- package/dist/components/radio/radio.js +10 -12
- package/dist/components/radio/radio.js.map +1 -1
- package/dist/components/scroll-area/index.d.ts +2 -1
- package/dist/components/scroll-area/index.d.ts.map +1 -1
- package/dist/components/scroll-area/scroll-area-scrollbar.cjs +4 -4
- package/dist/components/scroll-area/scroll-area-scrollbar.cjs.map +1 -1
- package/dist/components/scroll-area/scroll-area-scrollbar.d.ts +5 -6
- package/dist/components/scroll-area/scroll-area-scrollbar.d.ts.map +1 -1
- package/dist/components/scroll-area/scroll-area-scrollbar.js +4 -4
- package/dist/components/scroll-area/scroll-area-scrollbar.js.map +1 -1
- package/dist/components/scroll-area/scroll-area.cjs +11 -2
- package/dist/components/scroll-area/scroll-area.cjs.map +1 -1
- package/dist/components/scroll-area/scroll-area.d.ts +6 -1
- package/dist/components/scroll-area/scroll-area.d.ts.map +1 -1
- package/dist/components/scroll-area/scroll-area.js +11 -2
- package/dist/components/scroll-area/scroll-area.js.map +1 -1
- package/dist/components/scroll-area/scroll-area.module.css.cjs +1 -1
- package/dist/components/scroll-area/scroll-area.module.css.js +1 -1
- package/dist/components/select/select-content.cjs +9 -18
- package/dist/components/select/select-content.cjs.map +1 -1
- package/dist/components/select/select-content.d.ts +6 -2
- package/dist/components/select/select-content.d.ts.map +1 -1
- package/dist/components/select/select-content.js +11 -20
- package/dist/components/select/select-content.js.map +1 -1
- package/dist/components/select/select-item.cjs +10 -11
- package/dist/components/select/select-item.cjs.map +1 -1
- package/dist/components/select/select-item.d.ts +9 -4
- package/dist/components/select/select-item.d.ts.map +1 -1
- package/dist/components/select/select-item.js +10 -11
- package/dist/components/select/select-item.js.map +1 -1
- package/dist/components/select/select-misc.cjs +19 -10
- package/dist/components/select/select-misc.cjs.map +1 -1
- package/dist/components/select/select-misc.d.ts +15 -4
- package/dist/components/select/select-misc.d.ts.map +1 -1
- package/dist/components/select/select-misc.js +19 -10
- package/dist/components/select/select-misc.js.map +1 -1
- package/dist/components/select/select-multiple-value.cjs +3 -7
- package/dist/components/select/select-multiple-value.cjs.map +1 -1
- package/dist/components/select/select-multiple-value.d.ts +2 -3
- package/dist/components/select/select-multiple-value.d.ts.map +1 -1
- package/dist/components/select/select-multiple-value.js +5 -9
- package/dist/components/select/select-multiple-value.js.map +1 -1
- package/dist/components/select/select-root.cjs +51 -66
- package/dist/components/select/select-root.cjs.map +1 -1
- package/dist/components/select/select-root.d.ts +11 -15
- package/dist/components/select/select-root.d.ts.map +1 -1
- package/dist/components/select/select-root.js +52 -67
- package/dist/components/select/select-root.js.map +1 -1
- package/dist/components/select/select-trigger.cjs +7 -4
- package/dist/components/select/select-trigger.cjs.map +1 -1
- package/dist/components/select/select-trigger.d.ts +2 -3
- package/dist/components/select/select-trigger.d.ts.map +1 -1
- package/dist/components/select/select-trigger.js +7 -4
- package/dist/components/select/select-trigger.js.map +1 -1
- package/dist/components/select/select-value.cjs +17 -8
- package/dist/components/select/select-value.cjs.map +1 -1
- package/dist/components/select/select-value.d.ts +6 -4
- package/dist/components/select/select-value.d.ts.map +1 -1
- package/dist/components/select/select-value.js +17 -8
- package/dist/components/select/select-value.js.map +1 -1
- package/dist/components/select/select.cjs +4 -4
- package/dist/components/select/select.cjs.map +1 -1
- package/dist/components/select/select.d.ts +10 -11
- package/dist/components/select/select.d.ts.map +1 -1
- package/dist/components/select/select.js +4 -4
- package/dist/components/select/select.js.map +1 -1
- package/dist/components/select/select.module.css.cjs +1 -1
- package/dist/components/select/select.module.css.js +1 -1
- package/dist/components/separator/separator.cjs +3 -3
- package/dist/components/separator/separator.cjs.map +1 -1
- package/dist/components/separator/separator.d.ts +3 -5
- package/dist/components/separator/separator.d.ts.map +1 -1
- package/dist/components/separator/separator.js +3 -3
- package/dist/components/separator/separator.js.map +1 -1
- package/dist/components/sidebar/sidebar-item.cjs +7 -4
- package/dist/components/sidebar/sidebar-item.cjs.map +1 -1
- package/dist/components/sidebar/sidebar-item.d.ts.map +1 -1
- package/dist/components/sidebar/sidebar-item.js +7 -4
- package/dist/components/sidebar/sidebar-item.js.map +1 -1
- package/dist/components/sidebar/sidebar-misc.cjs +1 -1
- package/dist/components/sidebar/sidebar-misc.cjs.map +1 -1
- package/dist/components/sidebar/sidebar-misc.js +1 -1
- package/dist/components/sidebar/sidebar-misc.js.map +1 -1
- package/dist/components/sidebar/sidebar-root.cjs +4 -5
- package/dist/components/sidebar/sidebar-root.cjs.map +1 -1
- package/dist/components/sidebar/sidebar-root.d.ts +5 -3
- package/dist/components/sidebar/sidebar-root.d.ts.map +1 -1
- package/dist/components/sidebar/sidebar-root.js +4 -5
- package/dist/components/sidebar/sidebar-root.js.map +1 -1
- package/dist/components/sidebar/sidebar.d.ts +1 -1
- package/dist/components/sidebar/sidebar.module.css.cjs +1 -1
- package/dist/components/sidebar/sidebar.module.css.js +1 -1
- package/dist/components/slider/index.d.ts +1 -1
- package/dist/components/slider/slider.cjs +10 -22
- package/dist/components/slider/slider.cjs.map +1 -1
- package/dist/components/slider/slider.d.ts +6 -13
- package/dist/components/slider/slider.d.ts.map +1 -1
- package/dist/components/slider/slider.js +12 -24
- package/dist/components/slider/slider.js.map +1 -1
- package/dist/components/slider/slider.module.css.cjs +1 -1
- package/dist/components/slider/slider.module.css.js +1 -1
- package/dist/components/switch/switch.cjs +2 -3
- package/dist/components/switch/switch.cjs.map +1 -1
- package/dist/components/switch/switch.d.ts +4 -5
- package/dist/components/switch/switch.d.ts.map +1 -1
- package/dist/components/switch/switch.js +4 -5
- package/dist/components/switch/switch.js.map +1 -1
- package/dist/components/tabs/index.d.ts +1 -1
- package/dist/components/tabs/tabs.cjs +10 -14
- package/dist/components/tabs/tabs.cjs.map +1 -1
- package/dist/components/tabs/tabs.d.ts +7 -14
- package/dist/components/tabs/tabs.d.ts.map +1 -1
- package/dist/components/tabs/tabs.js +11 -15
- package/dist/components/tabs/tabs.js.map +1 -1
- package/dist/components/tabs/tabs.module.css.cjs +1 -1
- package/dist/components/tabs/tabs.module.css.js +1 -1
- package/dist/components/text/text.d.ts +1 -1
- package/dist/components/toast/index.d.ts +3 -1
- package/dist/components/toast/index.d.ts.map +1 -1
- package/dist/components/toast/toast-manager.cjs +9 -0
- package/dist/components/toast/toast-manager.cjs.map +1 -0
- package/dist/components/toast/toast-manager.d.ts +2 -0
- package/dist/components/toast/toast-manager.d.ts.map +1 -0
- package/dist/components/toast/toast-manager.js +7 -0
- package/dist/components/toast/toast-manager.js.map +1 -0
- package/dist/components/toast/toast-provider.cjs +22 -0
- package/dist/components/toast/toast-provider.cjs.map +1 -0
- package/dist/components/toast/toast-provider.d.ts +11 -0
- package/dist/components/toast/toast-provider.d.ts.map +1 -0
- package/dist/components/toast/toast-provider.js +20 -0
- package/dist/components/toast/toast-provider.js.map +1 -0
- package/dist/components/toast/toast-root.cjs +34 -0
- package/dist/components/toast/toast-root.cjs.map +1 -0
- package/dist/components/toast/toast-root.d.ts +8 -0
- package/dist/components/toast/toast-root.d.ts.map +1 -0
- package/dist/components/toast/toast-root.js +32 -0
- package/dist/components/toast/toast-root.js.map +1 -0
- package/dist/components/toast/toast.cjs +11 -25
- package/dist/components/toast/toast.cjs.map +1 -1
- package/dist/components/toast/toast.d.ts +6 -8
- package/dist/components/toast/toast.d.ts.map +1 -1
- package/dist/components/toast/toast.js +10 -24
- package/dist/components/toast/toast.js.map +1 -1
- package/dist/components/toast/toast.module.css.cjs +1 -1
- package/dist/components/toast/toast.module.css.js +1 -1
- package/dist/components/tooltip/tooltip-content.cjs +17 -0
- package/dist/components/tooltip/tooltip-content.cjs.map +1 -0
- package/dist/components/tooltip/tooltip-content.d.ts +10 -0
- package/dist/components/tooltip/tooltip-content.d.ts.map +1 -0
- package/dist/components/tooltip/tooltip-content.js +15 -0
- package/dist/components/tooltip/tooltip-content.js.map +1 -0
- package/dist/components/tooltip/tooltip-misc.cjs +19 -0
- package/dist/components/tooltip/tooltip-misc.cjs.map +1 -0
- package/dist/components/tooltip/tooltip-misc.d.ts +9 -0
- package/dist/components/tooltip/tooltip-misc.d.ts.map +1 -0
- package/dist/components/tooltip/tooltip-misc.js +16 -0
- package/dist/components/tooltip/tooltip-misc.js.map +1 -0
- package/dist/components/tooltip/tooltip.cjs +7 -4
- package/dist/components/tooltip/tooltip.cjs.map +1 -1
- package/dist/components/tooltip/tooltip.d.ts +8 -5
- package/dist/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/components/tooltip/tooltip.js +7 -4
- package/dist/components/tooltip/tooltip.js.map +1 -1
- package/dist/components/tooltip/tooltip.module.css.cjs +1 -1
- package/dist/components/tooltip/tooltip.module.css.js +1 -1
- package/dist/index.cjs +14 -8
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +6 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -4
- package/dist/index.js.map +1 -1
- package/dist/style.css +1 -1
- package/package.json +5 -7
- package/dist/components/dropdown-menu/__tests__/dropdown-menu.test.d.ts +0 -2
- package/dist/components/dropdown-menu/__tests__/dropdown-menu.test.d.ts.map +0 -1
- package/dist/components/dropdown-menu/cell.cjs +0 -12
- package/dist/components/dropdown-menu/cell.cjs.map +0 -1
- package/dist/components/dropdown-menu/cell.d.ts.map +0 -1
- package/dist/components/dropdown-menu/cell.js +0 -10
- package/dist/components/dropdown-menu/cell.js.map +0 -1
- package/dist/components/dropdown-menu/cell.module.css.js +0 -4
- package/dist/components/dropdown-menu/dropdown-menu-content.cjs +0 -36
- package/dist/components/dropdown-menu/dropdown-menu-content.cjs.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu-content.d.ts +0 -7
- package/dist/components/dropdown-menu/dropdown-menu-content.d.ts.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu-content.js +0 -34
- package/dist/components/dropdown-menu/dropdown-menu-content.js.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu-item.cjs +0 -45
- package/dist/components/dropdown-menu/dropdown-menu-item.cjs.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu-item.d.ts +0 -9
- package/dist/components/dropdown-menu/dropdown-menu-item.d.ts.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu-item.js +0 -43
- package/dist/components/dropdown-menu/dropdown-menu-item.js.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu-misc.cjs +0 -36
- package/dist/components/dropdown-menu/dropdown-menu-misc.cjs.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu-misc.d.ts +0 -10
- package/dist/components/dropdown-menu/dropdown-menu-misc.d.ts.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu-misc.js +0 -31
- package/dist/components/dropdown-menu/dropdown-menu-misc.js.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu-root.cjs +0 -52
- package/dist/components/dropdown-menu/dropdown-menu-root.cjs.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu-root.d.ts +0 -40
- package/dist/components/dropdown-menu/dropdown-menu-root.d.ts.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu-root.js +0 -48
- package/dist/components/dropdown-menu/dropdown-menu-root.js.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu-trigger.cjs +0 -34
- package/dist/components/dropdown-menu/dropdown-menu-trigger.cjs.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu-trigger.d.ts +0 -14
- package/dist/components/dropdown-menu/dropdown-menu-trigger.d.ts.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu-trigger.js +0 -31
- package/dist/components/dropdown-menu/dropdown-menu-trigger.js.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu.cjs +0 -24
- package/dist/components/dropdown-menu/dropdown-menu.cjs.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu.d.ts +0 -16
- package/dist/components/dropdown-menu/dropdown-menu.d.ts.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu.js +0 -22
- package/dist/components/dropdown-menu/dropdown-menu.js.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu.module.css.cjs +0 -8
- package/dist/components/dropdown-menu/dropdown-menu.module.css.cjs.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu.module.css.js +0 -4
- package/dist/components/dropdown-menu/dropdown-menu.module.css.js.map +0 -1
- package/dist/components/dropdown-menu/index.d.ts +0 -2
- package/dist/components/dropdown-menu/index.d.ts.map +0 -1
- package/dist/components/dropdown-menu/types.d.ts +0 -4
- package/dist/components/dropdown-menu/types.d.ts.map +0 -1
- package/dist/components/dropdown-menu/utils.cjs +0 -21
- package/dist/components/dropdown-menu/utils.cjs.map +0 -1
- package/dist/components/dropdown-menu/utils.d.ts +0 -4
- package/dist/components/dropdown-menu/utils.d.ts.map +0 -1
- package/dist/components/dropdown-menu/utils.js +0 -18
- package/dist/components/dropdown-menu/utils.js.map +0 -1
- package/dist/components/scroll-area/scroll-area-root.cjs +0 -17
- package/dist/components/scroll-area/scroll-area-root.cjs.map +0 -1
- package/dist/components/scroll-area/scroll-area-root.d.ts +0 -9
- package/dist/components/scroll-area/scroll-area-root.d.ts.map +0 -1
- package/dist/components/scroll-area/scroll-area-root.js +0 -15
- package/dist/components/scroll-area/scroll-area-root.js.map +0 -1
- package/dist/components/sheet/__tests__/sheet.test.d.ts +0 -2
- package/dist/components/sheet/__tests__/sheet.test.d.ts.map +0 -1
- package/dist/components/sheet/index.d.ts +0 -2
- package/dist/components/sheet/index.d.ts.map +0 -1
- package/dist/components/sheet/sheet.cjs +0 -50
- package/dist/components/sheet/sheet.cjs.map +0 -1
- package/dist/components/sheet/sheet.d.ts +0 -36
- package/dist/components/sheet/sheet.d.ts.map +0 -1
- package/dist/components/sheet/sheet.js +0 -45
- package/dist/components/sheet/sheet.js.map +0 -1
- package/dist/components/sheet/sheet.module.css.cjs +0 -8
- package/dist/components/sheet/sheet.module.css.cjs.map +0 -1
- package/dist/components/sheet/sheet.module.css.js +0 -4
- package/dist/components/sheet/sheet.module.css.js.map +0 -1
- package/dist/components/slider/thumb.cjs +0 -8
- package/dist/components/slider/thumb.cjs.map +0 -1
- package/dist/components/slider/thumb.d.ts +0 -2
- package/dist/components/slider/thumb.d.ts.map +0 -1
- package/dist/components/slider/thumb.js +0 -6
- package/dist/components/slider/thumb.js.map +0 -1
- package/dist/components/tooltip/tooltip-provider.cjs +0 -18
- package/dist/components/tooltip/tooltip-provider.cjs.map +0 -1
- package/dist/components/tooltip/tooltip-provider.d.ts +0 -9
- package/dist/components/tooltip/tooltip-provider.d.ts.map +0 -1
- package/dist/components/tooltip/tooltip-provider.js +0 -15
- package/dist/components/tooltip/tooltip-provider.js.map +0 -1
- package/dist/components/tooltip/tooltip-root.cjs +0 -66
- package/dist/components/tooltip/tooltip-root.cjs.map +0 -1
- package/dist/components/tooltip/tooltip-root.d.ts +0 -29
- package/dist/components/tooltip/tooltip-root.d.ts.map +0 -1
- package/dist/components/tooltip/tooltip-root.js +0 -63
- package/dist/components/tooltip/tooltip-root.js.map +0 -1
- package/dist/components/tooltip/utils.cjs +0 -30
- package/dist/components/tooltip/utils.cjs.map +0 -1
- package/dist/components/tooltip/utils.d.ts +0 -10
- package/dist/components/tooltip/utils.d.ts.map +0 -1
- package/dist/components/tooltip/utils.js +0 -28
- package/dist/components/tooltip/utils.js.map +0 -1
- /package/dist/components/{dropdown-menu → menu}/cell.module.css.cjs.map +0 -0
- /package/dist/components/{dropdown-menu → menu}/cell.module.css.js.map +0 -0
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
4
|
var jsxRuntime = require('react/jsx-runtime');
|
|
5
|
-
var react = require('@
|
|
6
|
-
var radixUi = require('radix-ui');
|
|
5
|
+
var react = require('@base-ui/react');
|
|
7
6
|
var React = require('react');
|
|
8
7
|
|
|
9
8
|
/*
|
|
@@ -24,91 +23,77 @@ const useSelectContext = () => {
|
|
|
24
23
|
shouldFilter
|
|
25
24
|
};
|
|
26
25
|
};
|
|
27
|
-
const SELECT_INTERNAL_VALUE = 'SELECT_INTERNAL_VALUE';
|
|
28
26
|
const SelectRoot = (props) => {
|
|
29
|
-
const { children, value: providedValue, onValueChange, defaultValue, autocomplete, autocompleteMode = 'auto', searchValue: providedSearchValue, onSearch, defaultSearchValue = '', open: providedOpen, defaultOpen = false, onOpenChange,
|
|
27
|
+
const { children, value: providedValue, onValueChange, defaultValue, autocomplete, autocompleteMode = 'auto', searchValue: providedSearchValue, onSearch, defaultSearchValue = '', open: providedOpen, defaultOpen = false, onOpenChange, multiple = false, disabled, required, name, items: itemsProp, ...rest } = props;
|
|
30
28
|
const [internalValue, setInternalValue] = React.useState(defaultValue);
|
|
31
29
|
const [internalSearchValue, setInternalSearchValue] = React.useState(defaultSearchValue);
|
|
32
|
-
const [
|
|
33
|
-
const [items, setItems] = React.useState({});
|
|
34
|
-
const id = React.useId();
|
|
35
|
-
const isSelectionInProgress = React.useRef(false);
|
|
30
|
+
const [registeredItems, setRegisteredItems] = React.useState({});
|
|
36
31
|
const computedValue = providedValue ?? internalValue;
|
|
37
32
|
const searchValue = providedSearchValue ?? internalSearchValue;
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
isSelectionInProgress.current = value;
|
|
41
|
-
}, []);
|
|
42
|
-
const setValue = React.useCallback((value) => {
|
|
43
|
-
/*
|
|
44
|
-
* If the select is placed inside a form, onChange is called with an empty value
|
|
45
|
-
* WORKAROUND FOR ISSUE https://github.com/radix-ui/primitives/issues/3135
|
|
46
|
-
*/
|
|
47
|
-
if (value === '')
|
|
48
|
-
return;
|
|
33
|
+
const handleValueChange = React.useCallback((value, _eventDetails) => {
|
|
34
|
+
setInternalValue(value);
|
|
49
35
|
if (multiple) {
|
|
50
|
-
|
|
51
|
-
const set = new Set(Array.isArray(computedValue)
|
|
52
|
-
? computedValue
|
|
53
|
-
: [computedValue ?? ''].filter(Boolean));
|
|
54
|
-
if (set.has(value))
|
|
55
|
-
set.delete(value);
|
|
56
|
-
else
|
|
57
|
-
set.add(value);
|
|
58
|
-
const newValue = Array.from(set);
|
|
59
|
-
setInternalValue(newValue);
|
|
60
|
-
onValueChange?.(newValue);
|
|
36
|
+
onValueChange?.(value);
|
|
61
37
|
}
|
|
62
38
|
else {
|
|
63
|
-
setInternalValue(value);
|
|
64
39
|
onValueChange?.(value);
|
|
65
40
|
}
|
|
66
|
-
}, [multiple, onValueChange
|
|
67
|
-
const
|
|
41
|
+
}, [multiple, onValueChange]);
|
|
42
|
+
const handleSearchValueChange = React.useCallback((value, _eventDetails) => {
|
|
68
43
|
setInternalSearchValue(value);
|
|
69
44
|
onSearch?.(value);
|
|
70
45
|
}, [onSearch]);
|
|
71
|
-
const handleOpenChange = React.useCallback((
|
|
72
|
-
|
|
73
|
-
return;
|
|
74
|
-
setInternalOpen(value);
|
|
75
|
-
onOpenChange?.(value);
|
|
46
|
+
const handleOpenChange = React.useCallback((open, _eventDetails) => {
|
|
47
|
+
onOpenChange?.(open);
|
|
76
48
|
}, [onOpenChange]);
|
|
77
49
|
const registerItem = React.useCallback(item => {
|
|
78
|
-
|
|
50
|
+
setRegisteredItems(prev => ({ ...prev, [item.value]: item }));
|
|
79
51
|
}, []);
|
|
80
52
|
const unregisterItem = React.useCallback(value => {
|
|
81
|
-
|
|
53
|
+
setRegisteredItems(prev => {
|
|
82
54
|
const { [value]: _, ...rest } = prev;
|
|
83
55
|
return rest;
|
|
84
56
|
});
|
|
85
57
|
}, []);
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
58
|
+
const contextValue = React.useMemo(() => ({
|
|
59
|
+
value: computedValue,
|
|
60
|
+
registerItem,
|
|
61
|
+
unregisterItem,
|
|
62
|
+
autocomplete,
|
|
63
|
+
autocompleteMode,
|
|
64
|
+
searchValue,
|
|
65
|
+
multiple,
|
|
66
|
+
items: registeredItems,
|
|
67
|
+
hasItems: !!itemsProp
|
|
68
|
+
}), [
|
|
69
|
+
computedValue,
|
|
70
|
+
registerItem,
|
|
71
|
+
unregisterItem,
|
|
72
|
+
autocomplete,
|
|
73
|
+
autocompleteMode,
|
|
74
|
+
searchValue,
|
|
75
|
+
multiple,
|
|
76
|
+
registeredItems,
|
|
77
|
+
itemsProp
|
|
78
|
+
]);
|
|
79
|
+
const commonProps = {
|
|
80
|
+
value: providedValue,
|
|
81
|
+
defaultValue: defaultValue,
|
|
82
|
+
onValueChange: handleValueChange,
|
|
83
|
+
open: providedOpen,
|
|
84
|
+
defaultOpen,
|
|
85
|
+
onOpenChange: handleOpenChange,
|
|
86
|
+
multiple: multiple,
|
|
87
|
+
disabled,
|
|
88
|
+
modal: true,
|
|
89
|
+
...rest
|
|
90
|
+
};
|
|
91
|
+
if (autocomplete) {
|
|
92
|
+
return (jsxRuntime.jsx(SelectContext.Provider, { value: contextValue, children: jsxRuntime.jsx(react.Combobox.Root, { ...commonProps, onInputValueChange: handleSearchValueChange, filter: itemsProp ? undefined : null, items: itemsProp, loopFocus: false,
|
|
93
|
+
// @ts-ignore BaseUI types are not up to date
|
|
94
|
+
autoHighlight: 'always', children: children }) }));
|
|
95
|
+
}
|
|
96
|
+
return (jsxRuntime.jsx(SelectContext.Provider, { value: contextValue, children: jsxRuntime.jsx(react.Select.Root, { ...commonProps, required: required, name: name, children: children }) }));
|
|
112
97
|
};
|
|
113
98
|
|
|
114
99
|
exports.SelectRoot = SelectRoot;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-root.cjs","sources":["../../../components/select/select-root.tsx"],"sourcesContent":["'use client';\n\nimport {
|
|
1
|
+
{"version":3,"file":"select-root.cjs","sources":["../../../components/select/select-root.tsx"],"sourcesContent":["'use client';\n\nimport {\n Combobox as ComboboxPrimitive,\n Select as SelectPrimitive\n} from '@base-ui/react';\nimport {\n createContext,\n ReactNode,\n useCallback,\n useContext,\n useMemo,\n useState\n} from 'react';\nimport { ItemType } from './types';\n\ninterface CommonProps {\n autocomplete?: boolean;\n autocompleteMode?: 'auto' | 'manual';\n searchValue?: string;\n onSearch?: (value: string) => void;\n defaultSearchValue?: string;\n}\n\ninterface SelectContextValue extends CommonProps {\n value?: string | string[];\n registerItem: (item: ItemType) => void;\n unregisterItem: (value: string) => void;\n multiple: boolean;\n items: Record<string, ItemType>;\n hasItems?: boolean;\n}\n\ninterface UseSelectContext extends SelectContextValue {\n shouldFilter?: boolean;\n}\n\n/*\nRoot context to manage the Select control\n@remarks Only for internal usage.\n*/\nconst SelectContext = createContext<SelectContextValue | undefined>(undefined);\n\nexport const useSelectContext = (): UseSelectContext => {\n const context = useContext(SelectContext);\n if (!context) {\n throw new Error('useSelectContext must be used within a SelectProvider');\n }\n const shouldFilter = !!(\n context?.autocomplete &&\n context?.autocompleteMode === 'auto' &&\n context?.searchValue?.length\n );\n return {\n ...context,\n shouldFilter\n };\n};\n\ninterface BaseSelectProps extends CommonProps {\n children?: ReactNode;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n disabled?: boolean;\n required?: boolean;\n name?: string;\n items?: string[];\n}\n\nexport interface SingleSelectProps extends BaseSelectProps {\n multiple?: false;\n value?: string;\n onValueChange?: (value: string) => void;\n defaultValue?: string;\n}\n\nexport interface MultipleSelectProps extends BaseSelectProps {\n multiple: true;\n value?: string[];\n onValueChange?: (value: string[]) => void;\n defaultValue?: string[];\n}\n\nexport type SelectRootProps = SingleSelectProps | MultipleSelectProps;\n\nexport const SelectRoot = (props: SelectRootProps) => {\n const {\n children,\n value: providedValue,\n onValueChange,\n defaultValue,\n autocomplete,\n autocompleteMode = 'auto',\n searchValue: providedSearchValue,\n onSearch,\n defaultSearchValue = '',\n open: providedOpen,\n defaultOpen = false,\n onOpenChange,\n multiple = false,\n disabled,\n required,\n name,\n items: itemsProp,\n ...rest\n } = props;\n\n const [internalValue, setInternalValue] = useState<\n string | string[] | undefined\n >(defaultValue);\n const [internalSearchValue, setInternalSearchValue] =\n useState(defaultSearchValue);\n const [registeredItems, setRegisteredItems] = useState<\n SelectContextValue['items']\n >({});\n\n const computedValue = providedValue ?? internalValue;\n const searchValue = providedSearchValue ?? internalSearchValue;\n\n const handleValueChange = useCallback(\n (value: any, _eventDetails?: any) => {\n setInternalValue(value);\n if (multiple) {\n (onValueChange as MultipleSelectProps['onValueChange'])?.(\n value as string[]\n );\n } else {\n (onValueChange as SingleSelectProps['onValueChange'])?.(\n value as string\n );\n }\n },\n [multiple, onValueChange]\n );\n\n const handleSearchValueChange = useCallback(\n (value: string, _eventDetails?: any) => {\n setInternalSearchValue(value);\n onSearch?.(value);\n },\n [onSearch]\n );\n\n const handleOpenChange = useCallback(\n (open: boolean, _eventDetails?: any) => {\n onOpenChange?.(open);\n },\n [onOpenChange]\n );\n\n const registerItem = useCallback<SelectContextValue['registerItem']>(item => {\n setRegisteredItems(prev => ({ ...prev, [item.value]: item }));\n }, []);\n\n const unregisterItem = useCallback<SelectContextValue['unregisterItem']>(\n value => {\n setRegisteredItems(prev => {\n const { [value]: _, ...rest } = prev;\n return rest;\n });\n },\n []\n );\n\n const contextValue = useMemo(\n () => ({\n value: computedValue,\n registerItem,\n unregisterItem,\n autocomplete,\n autocompleteMode,\n searchValue,\n multiple,\n items: registeredItems,\n hasItems: !!itemsProp\n }),\n [\n computedValue,\n registerItem,\n unregisterItem,\n autocomplete,\n autocompleteMode,\n searchValue,\n multiple,\n registeredItems,\n itemsProp\n ]\n );\n\n const commonProps = {\n value: providedValue as any,\n defaultValue: defaultValue as any,\n onValueChange: handleValueChange,\n open: providedOpen,\n defaultOpen,\n onOpenChange: handleOpenChange,\n multiple: multiple as any,\n disabled,\n modal: true as const,\n ...rest\n };\n\n if (autocomplete) {\n return (\n <SelectContext.Provider value={contextValue}>\n <ComboboxPrimitive.Root\n {...commonProps}\n onInputValueChange={handleSearchValueChange}\n filter={itemsProp ? undefined : null}\n items={itemsProp}\n loopFocus={false}\n // @ts-ignore BaseUI types are not up to date\n autoHighlight='always'\n >\n {children}\n </ComboboxPrimitive.Root>\n </SelectContext.Provider>\n );\n }\n\n return (\n <SelectContext.Provider value={contextValue}>\n <SelectPrimitive.Root {...commonProps} required={required} name={name}>\n {children}\n </SelectPrimitive.Root>\n </SelectContext.Provider>\n );\n};\n"],"names":[],"mappings":";;;;;;;AAqCA;;;AAGE;AACF;AAEO;AACL;;AAEE;;AAEF;;AAGE;;AAGA;;;AAGJ;AA6Ba;;;;;AA+BX;AACA;;;;AAMO;;;AAIA;;AAIL;;;AAOE;AACF;;AAME;AACF;AAIF;;;AAIA;;AAGM;AACA;AACF;;AAKJ;AAEI;;;;;;;AAOA;;AAED;;;;;;;;;;AAWA;AAGH;AACE;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;;AAIA;;AASM;;AAQR;AAOF;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
2
|
import { ItemType } from './types';
|
|
3
3
|
interface CommonProps {
|
|
4
4
|
autocomplete?: boolean;
|
|
@@ -13,26 +13,22 @@ interface SelectContextValue extends CommonProps {
|
|
|
13
13
|
unregisterItem: (value: string) => void;
|
|
14
14
|
multiple: boolean;
|
|
15
15
|
items: Record<string, ItemType>;
|
|
16
|
-
|
|
17
|
-
setValue: (value: string) => void;
|
|
16
|
+
hasItems?: boolean;
|
|
18
17
|
}
|
|
19
18
|
interface UseSelectContext extends SelectContextValue {
|
|
20
19
|
shouldFilter?: boolean;
|
|
21
20
|
}
|
|
22
21
|
export declare const useSelectContext: () => UseSelectContext;
|
|
23
|
-
interface
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
22
|
+
interface BaseSelectProps extends CommonProps {
|
|
23
|
+
children?: ReactNode;
|
|
24
|
+
open?: boolean;
|
|
25
|
+
defaultOpen?: boolean;
|
|
26
|
+
onOpenChange?: (open: boolean) => void;
|
|
27
|
+
disabled?: boolean;
|
|
28
|
+
required?: boolean;
|
|
29
|
+
name?: string;
|
|
30
|
+
items?: string[];
|
|
29
31
|
}
|
|
30
|
-
interface AutocompleteSelectRootProps extends SelectPrimitive.SelectProps, CommonProps {
|
|
31
|
-
autocomplete: true;
|
|
32
|
-
}
|
|
33
|
-
export type BaseSelectProps = Omit<NormalSelectRootProps | AutocompleteSelectRootProps, 'autoComplete' | 'value' | 'onValueChange' | 'defaultValue'> & {
|
|
34
|
-
htmlAutoComplete?: string;
|
|
35
|
-
};
|
|
36
32
|
export interface SingleSelectProps extends BaseSelectProps {
|
|
37
33
|
multiple?: false;
|
|
38
34
|
value?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-root.d.ts","sourceRoot":"","sources":["../../../components/select/select-root.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"select-root.d.ts","sourceRoot":"","sources":["../../../components/select/select-root.tsx"],"names":[],"mappings":"AAMA,OAAO,EAEL,SAAS,EAKV,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,UAAU,WAAW;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,UAAU,kBAAmB,SAAQ,WAAW;IAC9C,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC1B,YAAY,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACvC,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,gBAAiB,SAAQ,kBAAkB;IACnD,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAQD,eAAO,MAAM,gBAAgB,QAAO,gBAcnC,CAAC;AAEF,UAAU,eAAgB,SAAQ,WAAW;IAC3C,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IACxD,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC1D,QAAQ,EAAE,IAAI,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC1C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,MAAM,eAAe,GAAG,iBAAiB,GAAG,mBAAmB,CAAC;AAEtE,eAAO,MAAM,UAAU,UAAW,eAAe,4CA8IhD,CAAC"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx } from 'react/jsx-runtime';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { createContext, useContext, useState, useId, useRef, useCallback, useMemo } from 'react';
|
|
3
|
+
import { Combobox, Select } from '@base-ui/react';
|
|
4
|
+
import { createContext, useContext, useState, useCallback, useMemo } from 'react';
|
|
6
5
|
|
|
7
6
|
/*
|
|
8
7
|
Root context to manage the Select control
|
|
@@ -22,91 +21,77 @@ const useSelectContext = () => {
|
|
|
22
21
|
shouldFilter
|
|
23
22
|
};
|
|
24
23
|
};
|
|
25
|
-
const SELECT_INTERNAL_VALUE = 'SELECT_INTERNAL_VALUE';
|
|
26
24
|
const SelectRoot = (props) => {
|
|
27
|
-
const { children, value: providedValue, onValueChange, defaultValue, autocomplete, autocompleteMode = 'auto', searchValue: providedSearchValue, onSearch, defaultSearchValue = '', open: providedOpen, defaultOpen = false, onOpenChange,
|
|
25
|
+
const { children, value: providedValue, onValueChange, defaultValue, autocomplete, autocompleteMode = 'auto', searchValue: providedSearchValue, onSearch, defaultSearchValue = '', open: providedOpen, defaultOpen = false, onOpenChange, multiple = false, disabled, required, name, items: itemsProp, ...rest } = props;
|
|
28
26
|
const [internalValue, setInternalValue] = useState(defaultValue);
|
|
29
27
|
const [internalSearchValue, setInternalSearchValue] = useState(defaultSearchValue);
|
|
30
|
-
const [
|
|
31
|
-
const [items, setItems] = useState({});
|
|
32
|
-
const id = useId();
|
|
33
|
-
const isSelectionInProgress = useRef(false);
|
|
28
|
+
const [registeredItems, setRegisteredItems] = useState({});
|
|
34
29
|
const computedValue = providedValue ?? internalValue;
|
|
35
30
|
const searchValue = providedSearchValue ?? internalSearchValue;
|
|
36
|
-
const
|
|
37
|
-
|
|
38
|
-
isSelectionInProgress.current = value;
|
|
39
|
-
}, []);
|
|
40
|
-
const setValue = useCallback((value) => {
|
|
41
|
-
/*
|
|
42
|
-
* If the select is placed inside a form, onChange is called with an empty value
|
|
43
|
-
* WORKAROUND FOR ISSUE https://github.com/radix-ui/primitives/issues/3135
|
|
44
|
-
*/
|
|
45
|
-
if (value === '')
|
|
46
|
-
return;
|
|
31
|
+
const handleValueChange = useCallback((value, _eventDetails) => {
|
|
32
|
+
setInternalValue(value);
|
|
47
33
|
if (multiple) {
|
|
48
|
-
|
|
49
|
-
const set = new Set(Array.isArray(computedValue)
|
|
50
|
-
? computedValue
|
|
51
|
-
: [computedValue ?? ''].filter(Boolean));
|
|
52
|
-
if (set.has(value))
|
|
53
|
-
set.delete(value);
|
|
54
|
-
else
|
|
55
|
-
set.add(value);
|
|
56
|
-
const newValue = Array.from(set);
|
|
57
|
-
setInternalValue(newValue);
|
|
58
|
-
onValueChange?.(newValue);
|
|
34
|
+
onValueChange?.(value);
|
|
59
35
|
}
|
|
60
36
|
else {
|
|
61
|
-
setInternalValue(value);
|
|
62
37
|
onValueChange?.(value);
|
|
63
38
|
}
|
|
64
|
-
}, [multiple, onValueChange
|
|
65
|
-
const
|
|
39
|
+
}, [multiple, onValueChange]);
|
|
40
|
+
const handleSearchValueChange = useCallback((value, _eventDetails) => {
|
|
66
41
|
setInternalSearchValue(value);
|
|
67
42
|
onSearch?.(value);
|
|
68
43
|
}, [onSearch]);
|
|
69
|
-
const handleOpenChange = useCallback((
|
|
70
|
-
|
|
71
|
-
return;
|
|
72
|
-
setInternalOpen(value);
|
|
73
|
-
onOpenChange?.(value);
|
|
44
|
+
const handleOpenChange = useCallback((open, _eventDetails) => {
|
|
45
|
+
onOpenChange?.(open);
|
|
74
46
|
}, [onOpenChange]);
|
|
75
47
|
const registerItem = useCallback(item => {
|
|
76
|
-
|
|
48
|
+
setRegisteredItems(prev => ({ ...prev, [item.value]: item }));
|
|
77
49
|
}, []);
|
|
78
50
|
const unregisterItem = useCallback(value => {
|
|
79
|
-
|
|
51
|
+
setRegisteredItems(prev => {
|
|
80
52
|
const { [value]: _, ...rest } = prev;
|
|
81
53
|
return rest;
|
|
82
54
|
});
|
|
83
55
|
}, []);
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
56
|
+
const contextValue = useMemo(() => ({
|
|
57
|
+
value: computedValue,
|
|
58
|
+
registerItem,
|
|
59
|
+
unregisterItem,
|
|
60
|
+
autocomplete,
|
|
61
|
+
autocompleteMode,
|
|
62
|
+
searchValue,
|
|
63
|
+
multiple,
|
|
64
|
+
items: registeredItems,
|
|
65
|
+
hasItems: !!itemsProp
|
|
66
|
+
}), [
|
|
67
|
+
computedValue,
|
|
68
|
+
registerItem,
|
|
69
|
+
unregisterItem,
|
|
70
|
+
autocomplete,
|
|
71
|
+
autocompleteMode,
|
|
72
|
+
searchValue,
|
|
73
|
+
multiple,
|
|
74
|
+
registeredItems,
|
|
75
|
+
itemsProp
|
|
76
|
+
]);
|
|
77
|
+
const commonProps = {
|
|
78
|
+
value: providedValue,
|
|
79
|
+
defaultValue: defaultValue,
|
|
80
|
+
onValueChange: handleValueChange,
|
|
81
|
+
open: providedOpen,
|
|
82
|
+
defaultOpen,
|
|
83
|
+
onOpenChange: handleOpenChange,
|
|
84
|
+
multiple: multiple,
|
|
85
|
+
disabled,
|
|
86
|
+
modal: true,
|
|
87
|
+
...rest
|
|
88
|
+
};
|
|
89
|
+
if (autocomplete) {
|
|
90
|
+
return (jsx(SelectContext.Provider, { value: contextValue, children: jsx(Combobox.Root, { ...commonProps, onInputValueChange: handleSearchValueChange, filter: itemsProp ? undefined : null, items: itemsProp, loopFocus: false,
|
|
91
|
+
// @ts-ignore BaseUI types are not up to date
|
|
92
|
+
autoHighlight: 'always', children: children }) }));
|
|
93
|
+
}
|
|
94
|
+
return (jsx(SelectContext.Provider, { value: contextValue, children: jsx(Select.Root, { ...commonProps, required: required, name: name, children: children }) }));
|
|
110
95
|
};
|
|
111
96
|
|
|
112
97
|
export { SelectRoot, useSelectContext };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-root.js","sources":["../../../components/select/select-root.tsx"],"sourcesContent":["'use client';\n\nimport {
|
|
1
|
+
{"version":3,"file":"select-root.js","sources":["../../../components/select/select-root.tsx"],"sourcesContent":["'use client';\n\nimport {\n Combobox as ComboboxPrimitive,\n Select as SelectPrimitive\n} from '@base-ui/react';\nimport {\n createContext,\n ReactNode,\n useCallback,\n useContext,\n useMemo,\n useState\n} from 'react';\nimport { ItemType } from './types';\n\ninterface CommonProps {\n autocomplete?: boolean;\n autocompleteMode?: 'auto' | 'manual';\n searchValue?: string;\n onSearch?: (value: string) => void;\n defaultSearchValue?: string;\n}\n\ninterface SelectContextValue extends CommonProps {\n value?: string | string[];\n registerItem: (item: ItemType) => void;\n unregisterItem: (value: string) => void;\n multiple: boolean;\n items: Record<string, ItemType>;\n hasItems?: boolean;\n}\n\ninterface UseSelectContext extends SelectContextValue {\n shouldFilter?: boolean;\n}\n\n/*\nRoot context to manage the Select control\n@remarks Only for internal usage.\n*/\nconst SelectContext = createContext<SelectContextValue | undefined>(undefined);\n\nexport const useSelectContext = (): UseSelectContext => {\n const context = useContext(SelectContext);\n if (!context) {\n throw new Error('useSelectContext must be used within a SelectProvider');\n }\n const shouldFilter = !!(\n context?.autocomplete &&\n context?.autocompleteMode === 'auto' &&\n context?.searchValue?.length\n );\n return {\n ...context,\n shouldFilter\n };\n};\n\ninterface BaseSelectProps extends CommonProps {\n children?: ReactNode;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n disabled?: boolean;\n required?: boolean;\n name?: string;\n items?: string[];\n}\n\nexport interface SingleSelectProps extends BaseSelectProps {\n multiple?: false;\n value?: string;\n onValueChange?: (value: string) => void;\n defaultValue?: string;\n}\n\nexport interface MultipleSelectProps extends BaseSelectProps {\n multiple: true;\n value?: string[];\n onValueChange?: (value: string[]) => void;\n defaultValue?: string[];\n}\n\nexport type SelectRootProps = SingleSelectProps | MultipleSelectProps;\n\nexport const SelectRoot = (props: SelectRootProps) => {\n const {\n children,\n value: providedValue,\n onValueChange,\n defaultValue,\n autocomplete,\n autocompleteMode = 'auto',\n searchValue: providedSearchValue,\n onSearch,\n defaultSearchValue = '',\n open: providedOpen,\n defaultOpen = false,\n onOpenChange,\n multiple = false,\n disabled,\n required,\n name,\n items: itemsProp,\n ...rest\n } = props;\n\n const [internalValue, setInternalValue] = useState<\n string | string[] | undefined\n >(defaultValue);\n const [internalSearchValue, setInternalSearchValue] =\n useState(defaultSearchValue);\n const [registeredItems, setRegisteredItems] = useState<\n SelectContextValue['items']\n >({});\n\n const computedValue = providedValue ?? internalValue;\n const searchValue = providedSearchValue ?? internalSearchValue;\n\n const handleValueChange = useCallback(\n (value: any, _eventDetails?: any) => {\n setInternalValue(value);\n if (multiple) {\n (onValueChange as MultipleSelectProps['onValueChange'])?.(\n value as string[]\n );\n } else {\n (onValueChange as SingleSelectProps['onValueChange'])?.(\n value as string\n );\n }\n },\n [multiple, onValueChange]\n );\n\n const handleSearchValueChange = useCallback(\n (value: string, _eventDetails?: any) => {\n setInternalSearchValue(value);\n onSearch?.(value);\n },\n [onSearch]\n );\n\n const handleOpenChange = useCallback(\n (open: boolean, _eventDetails?: any) => {\n onOpenChange?.(open);\n },\n [onOpenChange]\n );\n\n const registerItem = useCallback<SelectContextValue['registerItem']>(item => {\n setRegisteredItems(prev => ({ ...prev, [item.value]: item }));\n }, []);\n\n const unregisterItem = useCallback<SelectContextValue['unregisterItem']>(\n value => {\n setRegisteredItems(prev => {\n const { [value]: _, ...rest } = prev;\n return rest;\n });\n },\n []\n );\n\n const contextValue = useMemo(\n () => ({\n value: computedValue,\n registerItem,\n unregisterItem,\n autocomplete,\n autocompleteMode,\n searchValue,\n multiple,\n items: registeredItems,\n hasItems: !!itemsProp\n }),\n [\n computedValue,\n registerItem,\n unregisterItem,\n autocomplete,\n autocompleteMode,\n searchValue,\n multiple,\n registeredItems,\n itemsProp\n ]\n );\n\n const commonProps = {\n value: providedValue as any,\n defaultValue: defaultValue as any,\n onValueChange: handleValueChange,\n open: providedOpen,\n defaultOpen,\n onOpenChange: handleOpenChange,\n multiple: multiple as any,\n disabled,\n modal: true as const,\n ...rest\n };\n\n if (autocomplete) {\n return (\n <SelectContext.Provider value={contextValue}>\n <ComboboxPrimitive.Root\n {...commonProps}\n onInputValueChange={handleSearchValueChange}\n filter={itemsProp ? undefined : null}\n items={itemsProp}\n loopFocus={false}\n // @ts-ignore BaseUI types are not up to date\n autoHighlight='always'\n >\n {children}\n </ComboboxPrimitive.Root>\n </SelectContext.Provider>\n );\n }\n\n return (\n <SelectContext.Provider value={contextValue}>\n <SelectPrimitive.Root {...commonProps} required={required} name={name}>\n {children}\n </SelectPrimitive.Root>\n </SelectContext.Provider>\n );\n};\n"],"names":[],"mappings":";;;;;AAqCA;;;AAGE;AACF;AAEO;AACL;;AAEE;;AAEF;;AAGE;;AAGA;;;AAGJ;AA6Ba;;;;;AA+BX;AACA;;;;AAMO;;;AAIA;;AAIL;;;AAOE;AACF;;AAME;AACF;AAIF;;;AAIA;;AAGM;AACA;AACF;;AAKJ;AAEI;;;;;;;AAOA;;AAED;;;;;;;;;;AAWA;AAGH;AACE;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;;AAIA;;AASM;;AAQR;AAOF;;"}
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
4
|
var jsxRuntime = require('react/jsx-runtime');
|
|
5
|
+
var react = require('@base-ui/react');
|
|
5
6
|
var reactIcons = require('@radix-ui/react-icons');
|
|
6
7
|
var classVarianceAuthority = require('class-variance-authority');
|
|
7
|
-
var radixUi = require('radix-ui');
|
|
8
8
|
var React = require('react');
|
|
9
9
|
var flex = require('../flex/flex.cjs');
|
|
10
10
|
var select_module = require('./select.module.css.cjs');
|
|
@@ -26,11 +26,14 @@ const trigger = classVarianceAuthority.cva(select_module.default.trigger, {
|
|
|
26
26
|
variant: 'outline'
|
|
27
27
|
}
|
|
28
28
|
});
|
|
29
|
-
const SelectTrigger = React.forwardRef(({ size, variant, className, children, iconProps = {},
|
|
29
|
+
const SelectTrigger = React.forwardRef(({ size, variant, className, children, iconProps = {}, 'aria-label': ariaLabel, ...props }, ref) => {
|
|
30
30
|
const { multiple, autocomplete } = selectRoot.useSelectContext();
|
|
31
|
-
|
|
31
|
+
const TriggerPrimitive = autocomplete
|
|
32
|
+
? react.Combobox.Trigger
|
|
33
|
+
: react.Select.Trigger;
|
|
34
|
+
return (jsxRuntime.jsxs(TriggerPrimitive, { "data-multiselectable": multiple ? true : undefined, ref: ref, className: trigger({ size, variant, className }), "aria-label": ariaLabel || 'Select option', ...props, children: [jsxRuntime.jsx(flex.Flex, { className: select_module.default.triggerContent, align: 'center', gap: 2, children: children }), jsxRuntime.jsx(reactIcons.ChevronDownIcon, { className: select_module.default.triggerIcon, "aria-hidden": 'true', ...iconProps })] }));
|
|
32
35
|
});
|
|
33
|
-
SelectTrigger.displayName =
|
|
36
|
+
SelectTrigger.displayName = 'Select.Trigger';
|
|
34
37
|
|
|
35
38
|
exports.SelectTrigger = SelectTrigger;
|
|
36
39
|
//# sourceMappingURL=select-trigger.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-trigger.cjs","sources":["../../../components/select/select-trigger.tsx"],"sourcesContent":["'use client';\n\nimport {
|
|
1
|
+
{"version":3,"file":"select-trigger.cjs","sources":["../../../components/select/select-trigger.tsx"],"sourcesContent":["'use client';\n\nimport {\n Combobox as ComboboxPrimitive,\n Select as SelectPrimitive\n} from '@base-ui/react';\nimport { ChevronDownIcon } from '@radix-ui/react-icons';\nimport { cva, VariantProps } from 'class-variance-authority';\nimport { ComponentPropsWithoutRef, forwardRef, SVGAttributes } from 'react';\nimport { Flex } from '../flex';\nimport styles from './select.module.css';\nimport { useSelectContext } from './select-root';\n\nexport interface IconProps extends SVGAttributes<SVGElement> {\n children?: never;\n color?: string;\n}\n\nconst trigger = cva(styles.trigger, {\n variants: {\n size: {\n small: styles['trigger-small'],\n medium: styles['trigger-medium']\n },\n variant: {\n outline: styles['trigger-outline'],\n text: styles['trigger-text']\n }\n },\n defaultVariants: {\n size: 'medium',\n variant: 'outline'\n }\n});\n\nexport interface SelectTriggerProps\n extends ComponentPropsWithoutRef<'button'>,\n VariantProps<typeof trigger> {\n iconProps?: IconProps;\n}\n\nexport const SelectTrigger = forwardRef<HTMLButtonElement, SelectTriggerProps>(\n (\n {\n size,\n variant,\n className,\n children,\n iconProps = {},\n 'aria-label': ariaLabel,\n ...props\n },\n ref\n ) => {\n const { multiple, autocomplete } = useSelectContext();\n\n const TriggerPrimitive = autocomplete\n ? ComboboxPrimitive.Trigger\n : SelectPrimitive.Trigger;\n\n return (\n <TriggerPrimitive\n data-multiselectable={multiple ? true : undefined}\n ref={ref}\n className={trigger({ size, variant, className })}\n aria-label={ariaLabel || 'Select option'}\n {...props}\n >\n <Flex className={styles.triggerContent} align='center' gap={2}>\n {children}\n </Flex>\n <ChevronDownIcon\n className={styles.triggerIcon}\n aria-hidden='true'\n {...iconProps}\n />\n </TriggerPrimitive>\n );\n }\n);\nSelectTrigger.displayName = 'Select.Trigger';\n"],"names":[],"mappings":";;;;;;;;;;;;AAkBA;AACE;AACE;AACE;AACA;AACD;AACD;AACE;AACA;AACD;AACF;AACD;AACE;AACA;AACD;AACF;AAQM;;;;AAiBD;AAEF;AAkBF;AAEF;;"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { VariantProps } from 'class-variance-authority';
|
|
2
|
-
import {
|
|
3
|
-
import { SVGAttributes } from 'react';
|
|
2
|
+
import { ComponentPropsWithoutRef, SVGAttributes } from 'react';
|
|
4
3
|
export interface IconProps extends SVGAttributes<SVGElement> {
|
|
5
4
|
children?: never;
|
|
6
5
|
color?: string;
|
|
@@ -9,7 +8,7 @@ declare const trigger: (props?: ({
|
|
|
9
8
|
size?: "small" | "medium" | null | undefined;
|
|
10
9
|
variant?: "text" | "outline" | null | undefined;
|
|
11
10
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
12
|
-
export interface SelectTriggerProps extends
|
|
11
|
+
export interface SelectTriggerProps extends ComponentPropsWithoutRef<'button'>, VariantProps<typeof trigger> {
|
|
13
12
|
iconProps?: IconProps;
|
|
14
13
|
}
|
|
15
14
|
export declare const SelectTrigger: import("react").ForwardRefExoticComponent<SelectTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-trigger.d.ts","sourceRoot":"","sources":["../../../components/select/select-trigger.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"select-trigger.d.ts","sourceRoot":"","sources":["../../../components/select/select-trigger.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAO,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAc,aAAa,EAAE,MAAM,OAAO,CAAC;AAK5E,MAAM,WAAW,SAAU,SAAQ,aAAa,CAAC,UAAU,CAAC;IAC1D,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,QAAA,MAAM,OAAO;;;8EAeX,CAAC;AAEH,MAAM,WAAW,kBACf,SAAQ,wBAAwB,CAAC,QAAQ,CAAC,EACxC,YAAY,CAAC,OAAO,OAAO,CAAC;IAC9B,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED,eAAO,MAAM,aAAa,kHAsCzB,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { Combobox, Select } from '@base-ui/react';
|
|
3
4
|
import { ChevronDownIcon } from '@radix-ui/react-icons';
|
|
4
5
|
import { cva } from 'class-variance-authority';
|
|
5
|
-
import { Select, Slot } from 'radix-ui';
|
|
6
6
|
import { forwardRef } from 'react';
|
|
7
7
|
import { Flex } from '../flex/flex.js';
|
|
8
8
|
import styles from './select.module.css.js';
|
|
@@ -24,11 +24,14 @@ const trigger = cva(styles.trigger, {
|
|
|
24
24
|
variant: 'outline'
|
|
25
25
|
}
|
|
26
26
|
});
|
|
27
|
-
const SelectTrigger = forwardRef(({ size, variant, className, children, iconProps = {},
|
|
27
|
+
const SelectTrigger = forwardRef(({ size, variant, className, children, iconProps = {}, 'aria-label': ariaLabel, ...props }, ref) => {
|
|
28
28
|
const { multiple, autocomplete } = useSelectContext();
|
|
29
|
-
|
|
29
|
+
const TriggerPrimitive = autocomplete
|
|
30
|
+
? Combobox.Trigger
|
|
31
|
+
: Select.Trigger;
|
|
32
|
+
return (jsxs(TriggerPrimitive, { "data-multiselectable": multiple ? true : undefined, ref: ref, className: trigger({ size, variant, className }), "aria-label": ariaLabel || 'Select option', ...props, children: [jsx(Flex, { className: styles.triggerContent, align: 'center', gap: 2, children: children }), jsx(ChevronDownIcon, { className: styles.triggerIcon, "aria-hidden": 'true', ...iconProps })] }));
|
|
30
33
|
});
|
|
31
|
-
SelectTrigger.displayName = Select.Trigger
|
|
34
|
+
SelectTrigger.displayName = 'Select.Trigger';
|
|
32
35
|
|
|
33
36
|
export { SelectTrigger };
|
|
34
37
|
//# sourceMappingURL=select-trigger.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-trigger.js","sources":["../../../components/select/select-trigger.tsx"],"sourcesContent":["'use client';\n\nimport {
|
|
1
|
+
{"version":3,"file":"select-trigger.js","sources":["../../../components/select/select-trigger.tsx"],"sourcesContent":["'use client';\n\nimport {\n Combobox as ComboboxPrimitive,\n Select as SelectPrimitive\n} from '@base-ui/react';\nimport { ChevronDownIcon } from '@radix-ui/react-icons';\nimport { cva, VariantProps } from 'class-variance-authority';\nimport { ComponentPropsWithoutRef, forwardRef, SVGAttributes } from 'react';\nimport { Flex } from '../flex';\nimport styles from './select.module.css';\nimport { useSelectContext } from './select-root';\n\nexport interface IconProps extends SVGAttributes<SVGElement> {\n children?: never;\n color?: string;\n}\n\nconst trigger = cva(styles.trigger, {\n variants: {\n size: {\n small: styles['trigger-small'],\n medium: styles['trigger-medium']\n },\n variant: {\n outline: styles['trigger-outline'],\n text: styles['trigger-text']\n }\n },\n defaultVariants: {\n size: 'medium',\n variant: 'outline'\n }\n});\n\nexport interface SelectTriggerProps\n extends ComponentPropsWithoutRef<'button'>,\n VariantProps<typeof trigger> {\n iconProps?: IconProps;\n}\n\nexport const SelectTrigger = forwardRef<HTMLButtonElement, SelectTriggerProps>(\n (\n {\n size,\n variant,\n className,\n children,\n iconProps = {},\n 'aria-label': ariaLabel,\n ...props\n },\n ref\n ) => {\n const { multiple, autocomplete } = useSelectContext();\n\n const TriggerPrimitive = autocomplete\n ? ComboboxPrimitive.Trigger\n : SelectPrimitive.Trigger;\n\n return (\n <TriggerPrimitive\n data-multiselectable={multiple ? true : undefined}\n ref={ref}\n className={trigger({ size, variant, className })}\n aria-label={ariaLabel || 'Select option'}\n {...props}\n >\n <Flex className={styles.triggerContent} align='center' gap={2}>\n {children}\n </Flex>\n <ChevronDownIcon\n className={styles.triggerIcon}\n aria-hidden='true'\n {...iconProps}\n />\n </TriggerPrimitive>\n );\n }\n);\nSelectTrigger.displayName = 'Select.Trigger';\n"],"names":[],"mappings":";;;;;;;;;;AAkBA;AACE;AACE;AACE;AACA;AACD;AACD;AACE;AACA;AACD;AACF;AACD;AACE;AACA;AACD;AACF;AAQM;;;;AAiBD;AAEF;AAkBF;AAEF;;"}
|
|
@@ -3,14 +3,16 @@
|
|
|
3
3
|
|
|
4
4
|
var jsxRuntime = require('react/jsx-runtime');
|
|
5
5
|
var classVarianceAuthority = require('class-variance-authority');
|
|
6
|
-
var radixUi = require('radix-ui');
|
|
7
6
|
var React = require('react');
|
|
7
|
+
var select_module = require('./select.module.css.cjs');
|
|
8
8
|
var selectMultipleValue = require('./select-multiple-value.cjs');
|
|
9
9
|
var selectRoot = require('./select-root.cjs');
|
|
10
|
-
var select_module = require('./select.module.css.cjs');
|
|
11
10
|
|
|
12
|
-
const SelectValue = React.forwardRef(({ children, ...props }, ref) => {
|
|
11
|
+
const SelectValue = React.forwardRef(({ children, placeholder, className, ...props }, ref) => {
|
|
13
12
|
const { value, items, multiple } = selectRoot.useSelectContext();
|
|
13
|
+
const hasValue = multiple
|
|
14
|
+
? Array.isArray(value) && value.length > 0
|
|
15
|
+
: !!value;
|
|
14
16
|
const item = React.useMemo(() => {
|
|
15
17
|
if (!value)
|
|
16
18
|
return undefined;
|
|
@@ -22,14 +24,21 @@ const SelectValue = React.forwardRef(({ children, ...props }, ref) => {
|
|
|
22
24
|
}
|
|
23
25
|
return items[value];
|
|
24
26
|
}, [value, items, multiple]);
|
|
27
|
+
if (!hasValue) {
|
|
28
|
+
return (jsxRuntime.jsx("span", { ref: ref, "data-placeholder": '', className: classVarianceAuthority.cx(select_module.default.placeholder, className), ...props, children: placeholder }));
|
|
29
|
+
}
|
|
30
|
+
if (typeof children === 'function') {
|
|
31
|
+
return (jsxRuntime.jsx("span", { ref: ref, className: className, ...props, children: children(item) }));
|
|
32
|
+
}
|
|
25
33
|
if (children) {
|
|
26
|
-
return (jsxRuntime.jsx(
|
|
34
|
+
return (jsxRuntime.jsx("span", { ref: ref, className: className, ...props, children: children }));
|
|
35
|
+
}
|
|
36
|
+
if (Array.isArray(item)) {
|
|
37
|
+
return jsxRuntime.jsx(selectMultipleValue.SelectMultipleValue, { data: item });
|
|
27
38
|
}
|
|
28
|
-
|
|
29
|
-
return jsxRuntime.jsx(selectMultipleValue.SelectMultipleValue, { data: item, ref: ref, ...props });
|
|
30
|
-
return (jsxRuntime.jsx(radixUi.Select.Value, { ref: ref, ...props, children: jsxRuntime.jsxs("div", { className: classVarianceAuthority.cx(select_module.default.valueContent), children: [typeof item?.children === 'string' && item?.leadingIcon && (jsxRuntime.jsx("div", { className: select_module.default.itemIcon, children: item.leadingIcon })), item?.children ?? value] }) }));
|
|
39
|
+
return (jsxRuntime.jsx("span", { ref: ref, className: className, ...props, children: jsxRuntime.jsxs("div", { className: classVarianceAuthority.cx(select_module.default.valueContent), children: [typeof item?.children === 'string' && item?.leadingIcon && (jsxRuntime.jsx("div", { className: select_module.default.itemIcon, children: item.leadingIcon })), item?.children ?? value] }) }));
|
|
31
40
|
});
|
|
32
|
-
SelectValue.displayName =
|
|
41
|
+
SelectValue.displayName = 'Select.Value';
|
|
33
42
|
|
|
34
43
|
exports.SelectValue = SelectValue;
|
|
35
44
|
//# sourceMappingURL=select-value.cjs.map
|