h2o-library 1.7.1 → 2.0.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/CHANGELOG.md +74 -0
- package/README.md +149 -13
- package/assets/logo.svg +3 -0
- package/dist/charts/charts/index.d.ts +8 -0
- package/dist/charts/charts/src/bar/chart-bar.d.ts +27 -0
- package/dist/charts/charts/src/chart/chart.d.ts +35 -0
- package/dist/charts/charts/src/chart-tooltip-styles.d.ts +4 -0
- package/dist/charts/charts/src/gantt/chart-gantt.d.ts +25 -0
- package/dist/charts/charts/src/heatmap/chart-heatmap.d.ts +18 -0
- package/dist/charts/charts/src/legend/legend.d.ts +19 -0
- package/dist/charts/charts/src/line/chart-line.d.ts +28 -0
- package/dist/charts/charts/src/pie/chart-pie.d.ts +19 -0
- package/dist/charts/charts/src/recharts-tick-props.d.ts +11 -0
- package/dist/charts/charts/src/stat/chart-stat.d.ts +21 -0
- package/dist/charts/components/index.d.ts +36 -0
- package/dist/charts/components/src/accordion/accordion.d.ts +32 -0
- package/dist/charts/components/src/button/button.d.ts +41 -0
- package/dist/charts/components/src/calendar/calendar.d.ts +43 -0
- package/dist/charts/components/src/checkbox/checkbox.d.ts +58 -0
- package/dist/charts/components/src/chip/chip.d.ts +37 -0
- package/dist/charts/components/src/compact-multi-select/compact-multi-select.d.ts +52 -0
- package/dist/charts/components/src/content-switch/content-switch.d.ts +39 -0
- package/dist/charts/components/src/date-picker/date-picker.d.ts +35 -0
- package/dist/charts/components/src/date-range-picker/date-range-picker.d.ts +39 -0
- package/dist/charts/components/src/dropdown/dropdown.d.ts +53 -0
- package/dist/charts/components/src/expandable-table/expandable-table.d.ts +61 -0
- package/dist/charts/components/src/icon/icon-paths.d.ts +3 -0
- package/dist/charts/components/src/icon/icon.d.ts +28 -0
- package/dist/charts/components/src/input/input.d.ts +29 -0
- package/dist/charts/components/src/loader/loader.d.ts +12 -0
- package/dist/charts/components/src/logo/logo.d.ts +12 -0
- package/dist/charts/components/src/message/message.d.ts +34 -0
- package/dist/charts/components/src/modal/modal.d.ts +35 -0
- package/dist/charts/components/src/month-calendar/month-calendar.d.ts +28 -0
- package/dist/charts/components/src/multi-menu/multi-menu.d.ts +39 -0
- package/dist/charts/components/src/multi-select/multi-select.d.ts +49 -0
- package/dist/charts/components/src/pagination/pagination.d.ts +33 -0
- package/dist/charts/components/src/popover/popover.d.ts +53 -0
- package/dist/charts/components/src/radio/radio.d.ts +31 -0
- package/dist/charts/components/src/radio-group/radio-group.d.ts +42 -0
- package/dist/charts/components/src/segmented-toggle/segmented-toggle.d.ts +50 -0
- package/dist/charts/components/src/side-panel/side-panel.d.ts +36 -0
- package/dist/charts/components/src/skeleton/skeleton.d.ts +15 -0
- package/dist/charts/components/src/slider/slider.d.ts +46 -0
- package/dist/charts/components/src/table/table-utils.d.ts +2 -0
- package/dist/charts/components/src/table/table.d.ts +78 -0
- package/dist/charts/components/src/tabs/tabs.d.ts +35 -0
- package/dist/charts/components/src/tag/tag.d.ts +26 -0
- package/dist/charts/components/src/textarea/textarea.d.ts +33 -0
- package/dist/charts/components/src/time-picker/time-picker.d.ts +31 -0
- package/dist/charts/components/src/toast/toast.d.ts +54 -0
- package/dist/charts/components/src/toggle/toggle.d.ts +35 -0
- package/dist/charts/components/src/tooltip/tooltip.d.ts +38 -0
- package/dist/charts/entries/charts.d.ts +4 -0
- package/dist/charts/entries/hooks.d.ts +4 -0
- package/dist/charts/entries/types.d.ts +9 -0
- package/dist/charts/entries/utils.d.ts +5 -0
- package/dist/charts/hooks/index.d.ts +18 -0
- package/dist/charts/hooks/src/use-click-outside.d.ts +13 -0
- package/dist/charts/hooks/src/use-copy-to-clipboard.d.ts +15 -0
- package/dist/charts/hooks/src/use-debounce.d.ts +9 -0
- package/dist/charts/hooks/src/use-dropdown-position.d.ts +10 -0
- package/dist/charts/hooks/src/use-event-listener.d.ts +15 -0
- package/dist/charts/hooks/src/use-focus-trap.d.ts +8 -0
- package/dist/charts/hooks/src/use-hover.d.ts +10 -0
- package/dist/charts/hooks/src/use-idle.d.ts +15 -0
- package/dist/charts/hooks/src/use-interval.d.ts +7 -0
- package/dist/charts/hooks/src/use-key-press.d.ts +13 -0
- package/dist/charts/hooks/src/use-long-press.d.ts +20 -0
- package/dist/charts/hooks/src/use-media-query.d.ts +7 -0
- package/dist/charts/hooks/src/use-mouse.d.ts +12 -0
- package/dist/charts/hooks/src/use-timeout.d.ts +8 -0
- package/dist/charts/hooks/src/use-toast.d.ts +15 -0
- package/dist/charts/hooks/src/use-window-scroll.d.ts +10 -0
- package/dist/charts/hooks/src/use-window-size.d.ts +10 -0
- package/dist/charts/index.cjs.js +2 -0
- package/dist/charts/index.d.ts +4 -0
- package/dist/charts/index.js +2 -0
- package/dist/charts/src/bar/chart-bar.d.ts +27 -0
- package/dist/charts/src/chart/chart.d.ts +35 -0
- package/dist/charts/src/chart-tooltip-styles.d.ts +4 -0
- package/dist/charts/src/gantt/chart-gantt.d.ts +25 -0
- package/dist/charts/src/heatmap/chart-heatmap.d.ts +18 -0
- package/dist/charts/src/legend/legend.d.ts +19 -0
- package/dist/charts/src/line/chart-line.d.ts +28 -0
- package/dist/charts/src/pie/chart-pie.d.ts +19 -0
- package/dist/charts/src/recharts-tick-props.d.ts +11 -0
- package/dist/charts/src/stat/chart-stat.d.ts +21 -0
- package/dist/charts/types/index.d.ts +2 -0
- package/dist/charts/types/src/icon.d.ts +1 -0
- package/dist/charts/utils/index.d.ts +7 -0
- package/dist/charts/utils/src/array.d.ts +24 -0
- package/dist/charts/utils/src/async.d.ts +32 -0
- package/dist/charts/utils/src/cn.d.ts +9 -0
- package/dist/charts/utils/src/format.d.ts +20 -0
- package/dist/charts/utils/src/math.d.ts +22 -0
- package/dist/charts/utils/src/object.d.ts +36 -0
- package/dist/charts/utils/src/string.d.ts +24 -0
- package/dist/components/index.d.ts +36 -41
- package/dist/components/src/accordion/accordion.d.ts +32 -0
- package/dist/components/src/button/button.d.ts +41 -0
- package/dist/components/src/calendar/calendar.d.ts +43 -0
- package/dist/components/src/checkbox/checkbox.d.ts +58 -0
- package/dist/components/src/chip/chip.d.ts +37 -0
- package/dist/components/src/compact-multi-select/compact-multi-select.d.ts +52 -0
- package/dist/components/src/content-switch/content-switch.d.ts +39 -0
- package/dist/components/src/date-picker/date-picker.d.ts +35 -0
- package/dist/components/src/date-range-picker/date-range-picker.d.ts +39 -0
- package/dist/components/src/dropdown/dropdown.d.ts +53 -0
- package/dist/components/src/expandable-table/expandable-table.d.ts +61 -0
- package/dist/components/src/icon/icon-paths.d.ts +3 -0
- package/dist/components/src/icon/icon.d.ts +28 -0
- package/dist/components/src/input/input.d.ts +29 -0
- package/dist/components/src/loader/loader.d.ts +12 -0
- package/dist/components/src/logo/logo.d.ts +12 -0
- package/dist/components/src/message/message.d.ts +34 -0
- package/dist/components/src/modal/modal.d.ts +35 -0
- package/dist/components/src/month-calendar/month-calendar.d.ts +28 -0
- package/dist/components/src/multi-menu/multi-menu.d.ts +39 -0
- package/dist/components/src/multi-select/multi-select.d.ts +49 -0
- package/dist/components/src/pagination/pagination.d.ts +33 -0
- package/dist/components/src/popover/popover.d.ts +53 -0
- package/dist/components/src/radio/radio.d.ts +31 -0
- package/dist/components/src/radio-group/radio-group.d.ts +42 -0
- package/dist/components/src/segmented-toggle/segmented-toggle.d.ts +50 -0
- package/dist/components/src/side-panel/side-panel.d.ts +36 -0
- package/dist/components/src/skeleton/skeleton.d.ts +15 -0
- package/dist/components/src/slider/slider.d.ts +46 -0
- package/dist/components/src/table/table-utils.d.ts +2 -0
- package/dist/components/src/table/table.d.ts +78 -0
- package/dist/components/src/tabs/tabs.d.ts +35 -0
- package/dist/components/src/tag/tag.d.ts +26 -0
- package/dist/components/src/textarea/textarea.d.ts +33 -0
- package/dist/components/src/time-picker/time-picker.d.ts +31 -0
- package/dist/components/src/toast/toast.d.ts +54 -0
- package/dist/components/src/toggle/toggle.d.ts +35 -0
- package/dist/components/src/tooltip/tooltip.d.ts +38 -0
- package/dist/entries/charts.d.ts +4 -0
- package/dist/entries/hooks.d.ts +4 -0
- package/dist/entries/types.d.ts +9 -0
- package/dist/entries/utils.d.ts +5 -0
- package/dist/esm/charts/charts.css +377 -0
- package/dist/esm/charts/index.d.ts +8 -0
- package/dist/esm/charts/src/bar/chart-bar.d.ts +27 -0
- package/dist/esm/charts/src/chart/chart.d.ts +35 -0
- package/dist/esm/charts/src/chart-tooltip-styles.d.ts +4 -0
- package/dist/esm/charts/src/gantt/chart-gantt.d.ts +25 -0
- package/dist/esm/charts/src/heatmap/chart-heatmap.d.ts +18 -0
- package/dist/{css/src → esm/charts/src/legend}/legend.css +6 -1
- package/dist/esm/charts/src/legend/legend.d.ts +19 -0
- package/dist/esm/charts/src/line/chart-line.d.ts +28 -0
- package/dist/esm/charts/src/pie/chart-pie.d.ts +19 -0
- package/dist/esm/charts/src/recharts-tick-props.d.ts +11 -0
- package/dist/esm/charts/src/stat/chart-stat.d.ts +21 -0
- package/dist/esm/components/index.d.ts +36 -41
- package/dist/{css/src → esm/components/src/accordion}/accordion.css +8 -2
- package/dist/esm/components/src/accordion/accordion.d.ts +32 -0
- package/dist/esm/components/src/accordion/accordion.js +2 -0
- package/dist/{css/src → esm/components/src/button}/button.css +19 -8
- package/dist/esm/components/src/button/button.d.ts +41 -0
- package/dist/esm/components/src/button/button.js +2 -0
- package/dist/{css/src → esm/components/src/calendar}/calendar.css +62 -96
- package/dist/esm/components/src/calendar/calendar.d.ts +43 -0
- package/dist/esm/components/src/calendar/calendar.js +2 -0
- package/dist/{css/src → esm/components/src/checkbox}/checkbox.css +97 -19
- package/dist/esm/components/src/checkbox/checkbox.d.ts +58 -0
- package/dist/esm/components/src/checkbox/checkbox.js +2 -0
- package/dist/esm/components/src/chip/chip.css +123 -0
- package/dist/esm/components/src/chip/chip.d.ts +37 -0
- package/dist/esm/components/src/chip/chip.js +2 -0
- package/dist/{css/src → esm/components/src/compact-multi-select}/compact-multi-select.css +14 -38
- package/dist/esm/components/src/compact-multi-select/compact-multi-select.d.ts +52 -0
- package/dist/esm/components/src/compact-multi-select/compact-multi-select.js +2 -0
- package/dist/{css/src → esm/components/src/content-switch}/content-switch.css +17 -1
- package/dist/esm/components/src/content-switch/content-switch.d.ts +39 -0
- package/dist/esm/components/src/content-switch/content-switch.js +2 -0
- package/dist/esm/components/src/date-picker/date-picker.css +160 -0
- package/dist/esm/components/src/date-picker/date-picker.d.ts +35 -0
- package/dist/esm/components/src/date-picker/date-picker.js +2 -0
- package/dist/{css/src → esm/components/src/date-range-picker}/date-range-picker.css +3 -4
- package/dist/esm/components/src/date-range-picker/date-range-picker.d.ts +39 -0
- package/dist/esm/components/src/date-range-picker/date-range-picker.js +2 -0
- package/dist/{css/src → esm/components/src/dropdown}/dropdown.css +26 -13
- package/dist/esm/components/src/dropdown/dropdown.d.ts +53 -0
- package/dist/esm/components/src/dropdown/dropdown.js +2 -0
- package/dist/{css/src → esm/components/src/expandable-table}/expandable-table.css +27 -10
- package/dist/esm/components/src/expandable-table/expandable-table.d.ts +61 -0
- package/dist/esm/components/src/expandable-table/expandable-table.js +2 -0
- package/dist/esm/components/src/icon/icon-paths.d.ts +3 -0
- package/dist/esm/components/src/icon/icon-paths.js +2 -0
- package/dist/esm/components/src/icon/icon.d.ts +28 -0
- package/dist/esm/components/src/icon/icon.js +2 -0
- package/dist/{css/src → esm/components/src/input}/input.css +11 -12
- package/dist/esm/components/src/input/input.d.ts +29 -0
- package/dist/esm/components/src/input/input.js +2 -0
- package/dist/esm/components/src/loader/loader.css +109 -0
- package/dist/esm/components/src/loader/loader.d.ts +12 -0
- package/dist/esm/components/src/loader/loader.js +2 -0
- package/dist/esm/components/src/logo/logo.d.ts +12 -0
- package/dist/esm/components/src/logo/logo.js +2 -0
- package/dist/{css/src → esm/components/src/message}/message.css +21 -0
- package/dist/esm/components/src/message/message.d.ts +34 -0
- package/dist/esm/components/src/message/message.js +2 -0
- package/dist/{css/src → esm/components/src/modal}/modal.css +36 -2
- package/dist/esm/components/src/modal/modal.d.ts +35 -0
- package/dist/esm/components/src/modal/modal.js +2 -0
- package/dist/{css/src → esm/components/src/month-calendar}/month-calendar.css +1 -2
- package/dist/esm/components/src/month-calendar/month-calendar.d.ts +28 -0
- package/dist/esm/components/src/month-calendar/month-calendar.js +2 -0
- package/dist/{css/src → esm/components/src/multi-menu}/multi-menu.css +40 -54
- package/dist/esm/components/src/multi-menu/multi-menu.d.ts +39 -0
- package/dist/esm/components/src/multi-menu/multi-menu.js +2 -0
- package/dist/{css/src → esm/components/src/multi-select}/multi-select.css +94 -2
- package/dist/esm/components/src/multi-select/multi-select.d.ts +49 -0
- package/dist/esm/components/src/multi-select/multi-select.js +2 -0
- package/dist/{css/src → esm/components/src/pagination}/pagination.css +17 -0
- package/dist/esm/components/src/pagination/pagination.d.ts +33 -0
- package/dist/esm/components/src/pagination/pagination.js +2 -0
- package/dist/{css/src → esm/components/src/popover}/popover.css +11 -2
- package/dist/esm/components/src/popover/popover.d.ts +53 -0
- package/dist/esm/components/src/popover/popover.js +2 -0
- package/dist/esm/components/src/radio/radio.css +196 -0
- package/dist/esm/components/src/radio/radio.d.ts +31 -0
- package/dist/esm/components/src/radio/radio.js +2 -0
- package/dist/esm/components/src/radio-group/radio-group.css +93 -0
- package/dist/esm/components/src/radio-group/radio-group.d.ts +42 -0
- package/dist/esm/components/src/radio-group/radio-group.js +2 -0
- package/dist/{css/src → esm/components/src/segmented-toggle}/segmented-toggle.css +1 -1
- package/dist/esm/components/src/segmented-toggle/segmented-toggle.d.ts +50 -0
- package/dist/esm/components/src/segmented-toggle/segmented-toggle.js +2 -0
- package/dist/{css/src → esm/components/src/side-panel}/side-panel.css +62 -9
- package/dist/esm/components/src/side-panel/side-panel.d.ts +36 -0
- package/dist/esm/components/src/side-panel/side-panel.js +2 -0
- package/dist/esm/components/src/skeleton/skeleton.css +79 -0
- package/dist/esm/components/src/skeleton/skeleton.d.ts +15 -0
- package/dist/esm/components/src/skeleton/skeleton.js +2 -0
- package/dist/esm/components/src/slider/slider.css +211 -0
- package/dist/esm/components/src/slider/slider.d.ts +46 -0
- package/dist/esm/components/src/slider/slider.js +2 -0
- package/dist/esm/components/src/table/table-utils.d.ts +2 -0
- package/dist/esm/components/src/table/table-utils.js +2 -0
- package/dist/{css/src → esm/components/src/table}/table.css +5 -9
- package/dist/esm/components/src/table/table.d.ts +78 -0
- package/dist/esm/components/src/table/table.js +2 -0
- package/dist/{css/src → esm/components/src/tabs}/tabs.css +32 -0
- package/dist/esm/components/src/tabs/tabs.d.ts +35 -0
- package/dist/esm/components/src/tabs/tabs.js +2 -0
- package/dist/{css/src → esm/components/src/tag}/tag.css +17 -2
- package/dist/esm/components/src/tag/tag.d.ts +26 -0
- package/dist/esm/components/src/tag/tag.js +2 -0
- package/dist/{css/src → esm/components/src/textarea}/textarea.css +28 -31
- package/dist/esm/components/src/textarea/textarea.d.ts +33 -0
- package/dist/esm/components/src/textarea/textarea.js +2 -0
- package/dist/esm/components/src/time-picker/time-picker.css +249 -0
- package/dist/esm/components/src/time-picker/time-picker.d.ts +31 -0
- package/dist/esm/components/src/time-picker/time-picker.js +2 -0
- package/dist/{css/src → esm/components/src/toast}/toast.css +50 -12
- package/dist/esm/components/src/toast/toast.d.ts +54 -0
- package/dist/esm/components/src/toast/toast.js +2 -0
- package/dist/{css/src → esm/components/src/toggle}/toggle.css +102 -12
- package/dist/esm/components/src/toggle/toggle.d.ts +35 -0
- package/dist/esm/components/src/toggle/toggle.js +2 -0
- package/dist/{css/src → esm/components/src/tooltip}/tooltip.css +47 -7
- package/dist/esm/components/src/tooltip/tooltip.d.ts +38 -0
- package/dist/esm/components/src/tooltip/tooltip.js +2 -0
- package/dist/esm/entries/charts.d.ts +4 -0
- package/dist/esm/entries/hooks.d.ts +4 -0
- package/dist/esm/entries/types.d.ts +9 -0
- package/dist/esm/entries/utils.d.ts +5 -0
- package/dist/esm/hooks/index.d.ts +16 -0
- package/dist/esm/hooks/src/use-click-outside.d.ts +10 -1
- package/dist/esm/hooks/src/use-click-outside.js +2 -0
- package/dist/esm/hooks/src/use-copy-to-clipboard.d.ts +15 -0
- package/dist/esm/hooks/src/use-debounce.d.ts +9 -0
- package/dist/esm/hooks/src/use-dropdown-position.d.ts +10 -0
- package/dist/esm/hooks/src/use-dropdown-position.js +2 -0
- package/dist/esm/hooks/src/use-event-listener.d.ts +15 -0
- package/dist/esm/hooks/src/use-focus-trap.d.ts +8 -0
- package/dist/esm/hooks/src/use-focus-trap.js +2 -0
- package/dist/esm/hooks/src/use-hover.d.ts +10 -0
- package/dist/esm/hooks/src/use-idle.d.ts +15 -0
- package/dist/esm/hooks/src/use-interval.d.ts +7 -0
- package/dist/esm/hooks/src/use-key-press.d.ts +13 -0
- package/dist/esm/hooks/src/use-long-press.d.ts +20 -0
- package/dist/esm/hooks/src/use-media-query.d.ts +6 -0
- package/dist/esm/hooks/src/use-mouse.d.ts +12 -0
- package/dist/esm/hooks/src/use-timeout.d.ts +8 -0
- package/dist/esm/hooks/src/use-toast.d.ts +15 -0
- package/dist/esm/hooks/src/use-window-scroll.d.ts +10 -0
- package/dist/esm/hooks/src/use-window-size.d.ts +10 -0
- package/dist/esm/index.d.ts +0 -4
- package/dist/esm/index.js +1 -23
- package/dist/esm/node_modules/@dnd-kit/accessibility/dist/accessibility.esm.js +2 -0
- package/dist/esm/node_modules/@dnd-kit/core/dist/core.esm.js +2 -0
- package/dist/esm/node_modules/@dnd-kit/sortable/dist/sortable.esm.js +2 -0
- package/dist/esm/node_modules/@dnd-kit/utilities/dist/utilities.esm.js +2 -0
- package/dist/esm/node_modules/clsx/dist/clsx.mjs.js +2 -0
- package/dist/esm/node_modules/tailwind-merge/dist/bundle-mjs.mjs.js +2 -0
- package/dist/esm/node_modules/tslib/tslib.es6.mjs.js +2 -0
- package/dist/esm/styles/index.css +68 -0
- package/dist/esm/types/src/icon.d.ts +1 -1
- package/dist/esm/utils/index.d.ts +7 -2
- package/dist/esm/utils/src/array.d.ts +24 -0
- package/dist/esm/utils/src/async.d.ts +32 -0
- package/dist/esm/utils/src/cn.d.ts +9 -0
- package/dist/esm/utils/src/cn.js +2 -0
- package/dist/esm/utils/src/format.d.ts +20 -0
- package/dist/esm/utils/src/math.d.ts +22 -0
- package/dist/esm/utils/src/math.js +2 -0
- package/dist/esm/utils/src/object.d.ts +36 -0
- package/dist/esm/utils/src/string.d.ts +24 -0
- package/dist/hooks/charts/index.d.ts +8 -0
- package/dist/hooks/charts/src/bar/chart-bar.d.ts +27 -0
- package/dist/hooks/charts/src/chart/chart.d.ts +35 -0
- package/dist/hooks/charts/src/chart-tooltip-styles.d.ts +4 -0
- package/dist/hooks/charts/src/gantt/chart-gantt.d.ts +25 -0
- package/dist/hooks/charts/src/heatmap/chart-heatmap.d.ts +18 -0
- package/dist/hooks/charts/src/legend/legend.d.ts +19 -0
- package/dist/hooks/charts/src/line/chart-line.d.ts +28 -0
- package/dist/hooks/charts/src/pie/chart-pie.d.ts +19 -0
- package/dist/hooks/charts/src/recharts-tick-props.d.ts +11 -0
- package/dist/hooks/charts/src/stat/chart-stat.d.ts +21 -0
- package/dist/hooks/components/index.d.ts +36 -0
- package/dist/hooks/components/src/accordion/accordion.d.ts +32 -0
- package/dist/hooks/components/src/button/button.d.ts +41 -0
- package/dist/hooks/components/src/calendar/calendar.d.ts +43 -0
- package/dist/hooks/components/src/checkbox/checkbox.d.ts +58 -0
- package/dist/hooks/components/src/chip/chip.d.ts +37 -0
- package/dist/hooks/components/src/compact-multi-select/compact-multi-select.d.ts +52 -0
- package/dist/hooks/components/src/content-switch/content-switch.d.ts +39 -0
- package/dist/hooks/components/src/date-picker/date-picker.d.ts +35 -0
- package/dist/hooks/components/src/date-range-picker/date-range-picker.d.ts +39 -0
- package/dist/hooks/components/src/dropdown/dropdown.d.ts +53 -0
- package/dist/hooks/components/src/expandable-table/expandable-table.d.ts +61 -0
- package/dist/hooks/components/src/icon/icon-paths.d.ts +3 -0
- package/dist/hooks/components/src/icon/icon.d.ts +28 -0
- package/dist/hooks/components/src/input/input.d.ts +29 -0
- package/dist/hooks/components/src/loader/loader.d.ts +12 -0
- package/dist/hooks/components/src/logo/logo.d.ts +12 -0
- package/dist/hooks/components/src/message/message.d.ts +34 -0
- package/dist/hooks/components/src/modal/modal.d.ts +35 -0
- package/dist/hooks/components/src/month-calendar/month-calendar.d.ts +28 -0
- package/dist/hooks/components/src/multi-menu/multi-menu.d.ts +39 -0
- package/dist/hooks/components/src/multi-select/multi-select.d.ts +49 -0
- package/dist/hooks/components/src/pagination/pagination.d.ts +33 -0
- package/dist/hooks/components/src/popover/popover.d.ts +53 -0
- package/dist/hooks/components/src/radio/radio.d.ts +31 -0
- package/dist/hooks/components/src/radio-group/radio-group.d.ts +42 -0
- package/dist/hooks/components/src/segmented-toggle/segmented-toggle.d.ts +50 -0
- package/dist/hooks/components/src/side-panel/side-panel.d.ts +36 -0
- package/dist/hooks/components/src/skeleton/skeleton.d.ts +15 -0
- package/dist/hooks/components/src/slider/slider.d.ts +46 -0
- package/dist/hooks/components/src/table/table-utils.d.ts +2 -0
- package/dist/hooks/components/src/table/table.d.ts +78 -0
- package/dist/hooks/components/src/tabs/tabs.d.ts +35 -0
- package/dist/hooks/components/src/tag/tag.d.ts +26 -0
- package/dist/hooks/components/src/textarea/textarea.d.ts +33 -0
- package/dist/hooks/components/src/time-picker/time-picker.d.ts +31 -0
- package/dist/hooks/components/src/toast/toast.d.ts +54 -0
- package/dist/hooks/components/src/toggle/toggle.d.ts +35 -0
- package/dist/hooks/components/src/tooltip/tooltip.d.ts +38 -0
- package/dist/hooks/entries/charts.d.ts +4 -0
- package/dist/hooks/entries/hooks.d.ts +4 -0
- package/dist/hooks/entries/types.d.ts +9 -0
- package/dist/hooks/entries/utils.d.ts +5 -0
- package/dist/hooks/hooks/index.d.ts +18 -0
- package/dist/hooks/hooks/src/use-click-outside.d.ts +13 -0
- package/dist/hooks/hooks/src/use-copy-to-clipboard.d.ts +15 -0
- package/dist/hooks/hooks/src/use-debounce.d.ts +9 -0
- package/dist/hooks/hooks/src/use-dropdown-position.d.ts +10 -0
- package/dist/hooks/hooks/src/use-event-listener.d.ts +15 -0
- package/dist/hooks/hooks/src/use-focus-trap.d.ts +8 -0
- package/dist/hooks/hooks/src/use-hover.d.ts +10 -0
- package/dist/hooks/hooks/src/use-idle.d.ts +15 -0
- package/dist/hooks/hooks/src/use-interval.d.ts +7 -0
- package/dist/hooks/hooks/src/use-key-press.d.ts +13 -0
- package/dist/hooks/hooks/src/use-long-press.d.ts +20 -0
- package/dist/hooks/hooks/src/use-media-query.d.ts +7 -0
- package/dist/hooks/hooks/src/use-mouse.d.ts +12 -0
- package/dist/hooks/hooks/src/use-timeout.d.ts +8 -0
- package/dist/hooks/hooks/src/use-toast.d.ts +15 -0
- package/dist/hooks/hooks/src/use-window-scroll.d.ts +10 -0
- package/dist/hooks/hooks/src/use-window-size.d.ts +10 -0
- package/dist/hooks/index.cjs.js +2 -0
- package/dist/hooks/index.d.ts +4 -2
- package/dist/hooks/index.js +2 -0
- package/dist/hooks/src/use-click-outside.d.ts +10 -1
- package/dist/hooks/src/use-copy-to-clipboard.d.ts +15 -0
- package/dist/hooks/src/use-debounce.d.ts +9 -0
- package/dist/hooks/src/use-dropdown-position.d.ts +10 -0
- package/dist/hooks/src/use-event-listener.d.ts +15 -0
- package/dist/hooks/src/use-focus-trap.d.ts +8 -0
- package/dist/hooks/src/use-hover.d.ts +10 -0
- package/dist/hooks/src/use-idle.d.ts +15 -0
- package/dist/hooks/src/use-interval.d.ts +7 -0
- package/dist/hooks/src/use-key-press.d.ts +13 -0
- package/dist/hooks/src/use-long-press.d.ts +20 -0
- package/dist/hooks/src/use-media-query.d.ts +6 -0
- package/dist/hooks/src/use-mouse.d.ts +12 -0
- package/dist/hooks/src/use-timeout.d.ts +8 -0
- package/dist/hooks/src/use-toast.d.ts +15 -0
- package/dist/hooks/src/use-window-scroll.d.ts +10 -0
- package/dist/hooks/src/use-window-size.d.ts +10 -0
- package/dist/hooks/types/index.d.ts +2 -0
- package/dist/hooks/types/src/icon.d.ts +1 -0
- package/dist/hooks/utils/index.d.ts +7 -0
- package/dist/hooks/utils/src/array.d.ts +24 -0
- package/dist/hooks/utils/src/async.d.ts +32 -0
- package/dist/hooks/utils/src/cn.d.ts +9 -0
- package/dist/hooks/utils/src/format.d.ts +20 -0
- package/dist/hooks/utils/src/math.d.ts +22 -0
- package/dist/hooks/utils/src/object.d.ts +36 -0
- package/dist/hooks/utils/src/string.d.ts +24 -0
- package/dist/index.cjs.js +1 -23
- package/dist/index.css +2 -0
- package/dist/index.d.ts +4 -4
- package/dist/styles/index.css +68 -0
- package/dist/types/charts/index.d.ts +8 -0
- package/dist/types/charts/src/bar/chart-bar.d.ts +27 -0
- package/dist/types/charts/src/chart/chart.d.ts +35 -0
- package/dist/types/charts/src/chart-tooltip-styles.d.ts +4 -0
- package/dist/types/charts/src/gantt/chart-gantt.d.ts +25 -0
- package/dist/types/charts/src/heatmap/chart-heatmap.d.ts +18 -0
- package/dist/types/charts/src/legend/legend.d.ts +19 -0
- package/dist/types/charts/src/line/chart-line.d.ts +28 -0
- package/dist/types/charts/src/pie/chart-pie.d.ts +19 -0
- package/dist/types/charts/src/recharts-tick-props.d.ts +11 -0
- package/dist/types/charts/src/stat/chart-stat.d.ts +21 -0
- package/dist/types/components/index.d.ts +36 -0
- package/dist/types/components/src/accordion/accordion.d.ts +32 -0
- package/dist/types/components/src/button/button.d.ts +41 -0
- package/dist/types/components/src/calendar/calendar.d.ts +43 -0
- package/dist/types/components/src/checkbox/checkbox.d.ts +58 -0
- package/dist/types/components/src/chip/chip.d.ts +37 -0
- package/dist/types/components/src/compact-multi-select/compact-multi-select.d.ts +52 -0
- package/dist/types/components/src/content-switch/content-switch.d.ts +39 -0
- package/dist/types/components/src/date-picker/date-picker.d.ts +35 -0
- package/dist/types/components/src/date-range-picker/date-range-picker.d.ts +39 -0
- package/dist/types/components/src/dropdown/dropdown.d.ts +53 -0
- package/dist/types/components/src/expandable-table/expandable-table.d.ts +61 -0
- package/dist/types/components/src/icon/icon-paths.d.ts +3 -0
- package/dist/types/components/src/icon/icon.d.ts +28 -0
- package/dist/types/components/src/input/input.d.ts +29 -0
- package/dist/types/components/src/loader/loader.d.ts +12 -0
- package/dist/types/components/src/logo/logo.d.ts +12 -0
- package/dist/types/components/src/message/message.d.ts +34 -0
- package/dist/types/components/src/modal/modal.d.ts +35 -0
- package/dist/types/components/src/month-calendar/month-calendar.d.ts +28 -0
- package/dist/types/components/src/multi-menu/multi-menu.d.ts +39 -0
- package/dist/types/components/src/multi-select/multi-select.d.ts +49 -0
- package/dist/types/components/src/pagination/pagination.d.ts +33 -0
- package/dist/types/components/src/popover/popover.d.ts +53 -0
- package/dist/types/components/src/radio/radio.d.ts +31 -0
- package/dist/types/components/src/radio-group/radio-group.d.ts +42 -0
- package/dist/types/components/src/segmented-toggle/segmented-toggle.d.ts +50 -0
- package/dist/types/components/src/side-panel/side-panel.d.ts +36 -0
- package/dist/types/components/src/skeleton/skeleton.d.ts +15 -0
- package/dist/types/components/src/slider/slider.d.ts +46 -0
- package/dist/types/components/src/table/table-utils.d.ts +2 -0
- package/dist/types/components/src/table/table.d.ts +78 -0
- package/dist/types/components/src/tabs/tabs.d.ts +35 -0
- package/dist/types/components/src/tag/tag.d.ts +26 -0
- package/dist/types/components/src/textarea/textarea.d.ts +33 -0
- package/dist/types/components/src/time-picker/time-picker.d.ts +31 -0
- package/dist/types/components/src/toast/toast.d.ts +54 -0
- package/dist/types/components/src/toggle/toggle.d.ts +35 -0
- package/dist/types/components/src/tooltip/tooltip.d.ts +38 -0
- package/dist/types/entries/charts.d.ts +4 -0
- package/dist/types/entries/hooks.d.ts +4 -0
- package/dist/types/entries/types.d.ts +9 -0
- package/dist/types/entries/utils.d.ts +5 -0
- package/dist/types/hooks/index.d.ts +18 -0
- package/dist/types/hooks/src/use-click-outside.d.ts +13 -0
- package/dist/types/hooks/src/use-copy-to-clipboard.d.ts +15 -0
- package/dist/types/hooks/src/use-debounce.d.ts +9 -0
- package/dist/types/hooks/src/use-dropdown-position.d.ts +10 -0
- package/dist/types/hooks/src/use-event-listener.d.ts +15 -0
- package/dist/types/hooks/src/use-focus-trap.d.ts +8 -0
- package/dist/types/hooks/src/use-hover.d.ts +10 -0
- package/dist/types/hooks/src/use-idle.d.ts +15 -0
- package/dist/types/hooks/src/use-interval.d.ts +7 -0
- package/dist/types/hooks/src/use-key-press.d.ts +13 -0
- package/dist/types/hooks/src/use-long-press.d.ts +20 -0
- package/dist/types/hooks/src/use-media-query.d.ts +7 -0
- package/dist/types/hooks/src/use-mouse.d.ts +12 -0
- package/dist/types/hooks/src/use-timeout.d.ts +8 -0
- package/dist/types/hooks/src/use-toast.d.ts +15 -0
- package/dist/types/hooks/src/use-window-scroll.d.ts +10 -0
- package/dist/types/hooks/src/use-window-size.d.ts +10 -0
- package/dist/types/index.cjs.js +2 -0
- package/dist/types/index.d.ts +9 -2
- package/dist/types/index.js +2 -0
- package/dist/types/src/icon.d.ts +1 -1
- package/dist/types/types/index.d.ts +2 -0
- package/dist/types/types/src/icon.d.ts +1 -0
- package/dist/types/utils/index.d.ts +7 -0
- package/dist/types/utils/src/array.d.ts +24 -0
- package/dist/types/utils/src/async.d.ts +32 -0
- package/dist/types/utils/src/cn.d.ts +9 -0
- package/dist/types/utils/src/format.d.ts +20 -0
- package/dist/types/utils/src/math.d.ts +22 -0
- package/dist/types/utils/src/object.d.ts +36 -0
- package/dist/types/utils/src/string.d.ts +24 -0
- package/dist/utils/charts/index.d.ts +8 -0
- package/dist/utils/charts/src/bar/chart-bar.d.ts +27 -0
- package/dist/utils/charts/src/chart/chart.d.ts +35 -0
- package/dist/utils/charts/src/chart-tooltip-styles.d.ts +4 -0
- package/dist/utils/charts/src/gantt/chart-gantt.d.ts +25 -0
- package/dist/utils/charts/src/heatmap/chart-heatmap.d.ts +18 -0
- package/dist/utils/charts/src/legend/legend.d.ts +19 -0
- package/dist/utils/charts/src/line/chart-line.d.ts +28 -0
- package/dist/utils/charts/src/pie/chart-pie.d.ts +19 -0
- package/dist/utils/charts/src/recharts-tick-props.d.ts +11 -0
- package/dist/utils/charts/src/stat/chart-stat.d.ts +21 -0
- package/dist/utils/components/index.d.ts +36 -0
- package/dist/utils/components/src/accordion/accordion.d.ts +32 -0
- package/dist/utils/components/src/button/button.d.ts +41 -0
- package/dist/utils/components/src/calendar/calendar.d.ts +43 -0
- package/dist/utils/components/src/checkbox/checkbox.d.ts +58 -0
- package/dist/utils/components/src/chip/chip.d.ts +37 -0
- package/dist/utils/components/src/compact-multi-select/compact-multi-select.d.ts +52 -0
- package/dist/utils/components/src/content-switch/content-switch.d.ts +39 -0
- package/dist/utils/components/src/date-picker/date-picker.d.ts +35 -0
- package/dist/utils/components/src/date-range-picker/date-range-picker.d.ts +39 -0
- package/dist/utils/components/src/dropdown/dropdown.d.ts +53 -0
- package/dist/utils/components/src/expandable-table/expandable-table.d.ts +61 -0
- package/dist/utils/components/src/icon/icon-paths.d.ts +3 -0
- package/dist/utils/components/src/icon/icon.d.ts +28 -0
- package/dist/utils/components/src/input/input.d.ts +29 -0
- package/dist/utils/components/src/loader/loader.d.ts +12 -0
- package/dist/utils/components/src/logo/logo.d.ts +12 -0
- package/dist/utils/components/src/message/message.d.ts +34 -0
- package/dist/utils/components/src/modal/modal.d.ts +35 -0
- package/dist/utils/components/src/month-calendar/month-calendar.d.ts +28 -0
- package/dist/utils/components/src/multi-menu/multi-menu.d.ts +39 -0
- package/dist/utils/components/src/multi-select/multi-select.d.ts +49 -0
- package/dist/utils/components/src/pagination/pagination.d.ts +33 -0
- package/dist/utils/components/src/popover/popover.d.ts +53 -0
- package/dist/utils/components/src/radio/radio.d.ts +31 -0
- package/dist/utils/components/src/radio-group/radio-group.d.ts +42 -0
- package/dist/utils/components/src/segmented-toggle/segmented-toggle.d.ts +50 -0
- package/dist/utils/components/src/side-panel/side-panel.d.ts +36 -0
- package/dist/utils/components/src/skeleton/skeleton.d.ts +15 -0
- package/dist/utils/components/src/slider/slider.d.ts +46 -0
- package/dist/utils/components/src/table/table-utils.d.ts +2 -0
- package/dist/utils/components/src/table/table.d.ts +78 -0
- package/dist/utils/components/src/tabs/tabs.d.ts +35 -0
- package/dist/utils/components/src/tag/tag.d.ts +26 -0
- package/dist/utils/components/src/textarea/textarea.d.ts +33 -0
- package/dist/utils/components/src/time-picker/time-picker.d.ts +31 -0
- package/dist/utils/components/src/toast/toast.d.ts +54 -0
- package/dist/utils/components/src/toggle/toggle.d.ts +35 -0
- package/dist/utils/components/src/tooltip/tooltip.d.ts +38 -0
- package/dist/utils/entries/charts.d.ts +4 -0
- package/dist/utils/entries/hooks.d.ts +4 -0
- package/dist/utils/entries/types.d.ts +9 -0
- package/dist/utils/entries/utils.d.ts +5 -0
- package/dist/utils/hooks/index.d.ts +18 -0
- package/dist/utils/hooks/src/use-click-outside.d.ts +13 -0
- package/dist/utils/hooks/src/use-copy-to-clipboard.d.ts +15 -0
- package/dist/utils/hooks/src/use-debounce.d.ts +9 -0
- package/dist/utils/hooks/src/use-dropdown-position.d.ts +10 -0
- package/dist/utils/hooks/src/use-event-listener.d.ts +15 -0
- package/dist/utils/hooks/src/use-focus-trap.d.ts +8 -0
- package/dist/utils/hooks/src/use-hover.d.ts +10 -0
- package/dist/utils/hooks/src/use-idle.d.ts +15 -0
- package/dist/utils/hooks/src/use-interval.d.ts +7 -0
- package/dist/utils/hooks/src/use-key-press.d.ts +13 -0
- package/dist/utils/hooks/src/use-long-press.d.ts +20 -0
- package/dist/utils/hooks/src/use-media-query.d.ts +7 -0
- package/dist/utils/hooks/src/use-mouse.d.ts +12 -0
- package/dist/utils/hooks/src/use-timeout.d.ts +8 -0
- package/dist/utils/hooks/src/use-toast.d.ts +15 -0
- package/dist/utils/hooks/src/use-window-scroll.d.ts +10 -0
- package/dist/utils/hooks/src/use-window-size.d.ts +10 -0
- package/dist/utils/index.cjs.js +2 -0
- package/dist/utils/index.d.ts +5 -2
- package/dist/utils/index.js +2 -0
- package/dist/utils/src/array.d.ts +24 -0
- package/dist/utils/src/async.d.ts +32 -0
- package/dist/utils/src/cn.d.ts +9 -0
- package/dist/utils/src/format.d.ts +20 -0
- package/dist/utils/src/math.d.ts +22 -0
- package/dist/utils/src/object.d.ts +36 -0
- package/dist/utils/src/string.d.ts +24 -0
- package/dist/utils/types/index.d.ts +2 -0
- package/dist/utils/types/src/icon.d.ts +1 -0
- package/dist/utils/utils/index.d.ts +7 -0
- package/dist/utils/utils/src/array.d.ts +24 -0
- package/dist/utils/utils/src/async.d.ts +32 -0
- package/dist/utils/utils/src/cn.d.ts +9 -0
- package/dist/utils/utils/src/format.d.ts +20 -0
- package/dist/utils/utils/src/math.d.ts +22 -0
- package/dist/utils/utils/src/object.d.ts +36 -0
- package/dist/utils/utils/src/string.d.ts +24 -0
- package/package.json +66 -6
- package/dist/components/src/accordion.d.ts +0 -13
- package/dist/components/src/button.d.ts +0 -15
- package/dist/components/src/calendar.d.ts +0 -19
- package/dist/components/src/chart-bar.d.ts +0 -26
- package/dist/components/src/chart-heatmap.d.ts +0 -20
- package/dist/components/src/chart-line.d.ts +0 -25
- package/dist/components/src/chart-pie.d.ts +0 -16
- package/dist/components/src/chart-stat.d.ts +0 -20
- package/dist/components/src/chart.d.ts +0 -36
- package/dist/components/src/checkbox.d.ts +0 -18
- package/dist/components/src/chip.d.ts +0 -13
- package/dist/components/src/compact-multi-select.d.ts +0 -25
- package/dist/components/src/content-switch.d.ts +0 -15
- package/dist/components/src/date-range-picker.d.ts +0 -12
- package/dist/components/src/dropdown.d.ts +0 -22
- package/dist/components/src/expandable-table.d.ts +0 -39
- package/dist/components/src/expandable.d.ts +0 -9
- package/dist/components/src/icon.d.ts +0 -9
- package/dist/components/src/input.d.ts +0 -16
- package/dist/components/src/legend.d.ts +0 -17
- package/dist/components/src/loader.d.ts +0 -5
- package/dist/components/src/logo.d.ts +0 -5
- package/dist/components/src/message.d.ts +0 -12
- package/dist/components/src/modal.d.ts +0 -16
- package/dist/components/src/month-calendar.d.ts +0 -10
- package/dist/components/src/multi-menu.d.ts +0 -18
- package/dist/components/src/multi-select.d.ts +0 -18
- package/dist/components/src/pagination.d.ts +0 -14
- package/dist/components/src/popover.d.ts +0 -16
- package/dist/components/src/radio-group.d.ts +0 -17
- package/dist/components/src/radio.d.ts +0 -6
- package/dist/components/src/segmented-toggle.d.ts +0 -20
- package/dist/components/src/side-panel.d.ts +0 -16
- package/dist/components/src/status.d.ts +0 -8
- package/dist/components/src/table.d.ts +0 -43
- package/dist/components/src/tabs.d.ts +0 -10
- package/dist/components/src/tag.d.ts +0 -9
- package/dist/components/src/textarea.d.ts +0 -15
- package/dist/components/src/toast.d.ts +0 -20
- package/dist/components/src/toggle.d.ts +0 -9
- package/dist/components/src/tooltip.d.ts +0 -18
- package/dist/css/index.css +0 -1
- package/dist/css/src/chart.css +0 -76
- package/dist/css/src/charts.css +0 -136
- package/dist/css/src/chip.css +0 -54
- package/dist/css/src/index.css +0 -70
- package/dist/css/src/loader.css +0 -18
- package/dist/css/src/radio-group.css +0 -44
- package/dist/css/src/radio.css +0 -146
- package/dist/css/src/search.css +0 -148
- package/dist/css/src/status.css +0 -31
- package/dist/esm/components/src/accordion.d.ts +0 -13
- package/dist/esm/components/src/button.d.ts +0 -15
- package/dist/esm/components/src/calendar.d.ts +0 -19
- package/dist/esm/components/src/chart-bar.d.ts +0 -26
- package/dist/esm/components/src/chart-heatmap.d.ts +0 -20
- package/dist/esm/components/src/chart-line.d.ts +0 -25
- package/dist/esm/components/src/chart-pie.d.ts +0 -16
- package/dist/esm/components/src/chart-stat.d.ts +0 -20
- package/dist/esm/components/src/chart.d.ts +0 -36
- package/dist/esm/components/src/checkbox.d.ts +0 -18
- package/dist/esm/components/src/chip.d.ts +0 -13
- package/dist/esm/components/src/compact-multi-select.d.ts +0 -25
- package/dist/esm/components/src/content-switch.d.ts +0 -15
- package/dist/esm/components/src/date-range-picker.d.ts +0 -12
- package/dist/esm/components/src/dropdown.d.ts +0 -22
- package/dist/esm/components/src/expandable-table.d.ts +0 -39
- package/dist/esm/components/src/expandable.d.ts +0 -9
- package/dist/esm/components/src/icon.d.ts +0 -9
- package/dist/esm/components/src/input.d.ts +0 -16
- package/dist/esm/components/src/legend.d.ts +0 -17
- package/dist/esm/components/src/loader.d.ts +0 -5
- package/dist/esm/components/src/logo.d.ts +0 -5
- package/dist/esm/components/src/message.d.ts +0 -12
- package/dist/esm/components/src/modal.d.ts +0 -16
- package/dist/esm/components/src/month-calendar.d.ts +0 -10
- package/dist/esm/components/src/multi-menu.d.ts +0 -18
- package/dist/esm/components/src/multi-select.d.ts +0 -18
- package/dist/esm/components/src/pagination.d.ts +0 -14
- package/dist/esm/components/src/popover.d.ts +0 -16
- package/dist/esm/components/src/radio-group.d.ts +0 -17
- package/dist/esm/components/src/radio.d.ts +0 -6
- package/dist/esm/components/src/segmented-toggle.d.ts +0 -20
- package/dist/esm/components/src/side-panel.d.ts +0 -16
- package/dist/esm/components/src/status.d.ts +0 -8
- package/dist/esm/components/src/table.d.ts +0 -43
- package/dist/esm/components/src/tabs.d.ts +0 -10
- package/dist/esm/components/src/tag.d.ts +0 -9
- package/dist/esm/components/src/textarea.d.ts +0 -15
- package/dist/esm/components/src/toast.d.ts +0 -20
- package/dist/esm/components/src/toggle.d.ts +0 -9
- package/dist/esm/components/src/tooltip.d.ts +0 -18
- package/dist/esm/css/index.css +0 -1
- package/dist/esm/index.js.map +0 -1
- package/dist/index.cjs.js.map +0 -1
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{__rest as i}from"../../../node_modules/tslib/tslib.es6.mjs.js";import{jsxs as o,jsx as t}from"react/jsx-runtime";import"./chip.css";import{Icon as e}from"../icon/icon.js";import{Tooltip as s}from"../tooltip/tooltip.js";const n=n=>{var{label:a,icon:c,variant:l="neutral",size:r="md",iconStrokeWidth:d=1.5,iconClassName:p="",iconSize:m=14,disabled:h=!1,showBorder:b=!1,dot:v=!1,tooltip:k,tooltipPosition:N="top",className:j="",onClick:f}=n,u=i(n,["label","icon","variant","size","iconStrokeWidth","iconClassName","iconSize","disabled","showBorder","dot","tooltip","tooltipPosition","className","onClick"]);const z=!!f,C=v&&!c,x=["chip-base",`chip-${l}`,`chip--${r}`,b?"chip--border":"",C?"chip--dot":"",c?"chip--icon":"",h?"chip--disabled":"",j].filter(Boolean).join(" "),S=o("div",Object.assign({className:x,role:z?"button":void 0,tabIndex:z&&!h?0:void 0,"aria-disabled":h||void 0,onClick:h?void 0:f,onKeyDown:z&&!h?i=>{"Enter"!==i.key&&" "!==i.key||!f||(i.preventDefault(),f(i))}:void 0},u,{children:[C&&t("span",{className:"chip-dot"}),c&&t(e,{icon:c,size:m,strokeWidth:d,className:p}),t("span",{className:"chip-label",children:a})]}));return k?t(s,{text:k,position:N,children:S}):S};export{n as Chip};
|
|
2
|
+
//# sourceMappingURL=chip.js.map
|
|
@@ -40,11 +40,15 @@
|
|
|
40
40
|
width: 100%;
|
|
41
41
|
border-radius: 0.375rem;
|
|
42
42
|
border: 1.5px solid hsl(var(--muted));
|
|
43
|
-
background: hsl(var(--
|
|
44
|
-
transition:
|
|
43
|
+
background: hsl(var(--input));
|
|
44
|
+
transition:
|
|
45
|
+
border-color 0.2s,
|
|
46
|
+
background-color 0.2s;
|
|
45
47
|
}
|
|
46
48
|
|
|
47
|
-
.compact-multi-select-wrapper:not(.compact-multi-select-disabled):not(
|
|
49
|
+
.compact-multi-select-wrapper:not(.compact-multi-select-disabled):not(
|
|
50
|
+
.compact-multi-select-error
|
|
51
|
+
):hover {
|
|
48
52
|
border-color: hsl(var(--primary));
|
|
49
53
|
}
|
|
50
54
|
|
|
@@ -128,44 +132,14 @@
|
|
|
128
132
|
font-size: 1.125rem;
|
|
129
133
|
}
|
|
130
134
|
|
|
131
|
-
/* Tags for selected items */
|
|
132
|
-
.compact-multi-select-tag {
|
|
133
|
-
display: inline-flex;
|
|
134
|
-
align-items: center;
|
|
135
|
-
gap: 0.25rem;
|
|
136
|
-
background-color: hsl(var(--primary-muted));
|
|
137
|
-
color: hsl(var(--primary-400));
|
|
138
|
-
padding: 0.125rem 0.5rem;
|
|
139
|
-
border-radius: var(--radius-sm);
|
|
140
|
-
font-size: 0.875rem;
|
|
141
|
-
font-weight: 500;
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
.compact-multi-select-tag-remove {
|
|
145
|
-
display: flex;
|
|
146
|
-
align-items: center;
|
|
147
|
-
justify-content: center;
|
|
148
|
-
background: none;
|
|
149
|
-
border: none;
|
|
150
|
-
padding: 0;
|
|
151
|
-
cursor: pointer;
|
|
152
|
-
color: hsl(var(--primary-400));
|
|
153
|
-
opacity: 0.7;
|
|
154
|
-
transition: opacity 0.2s;
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
.compact-multi-select-tag-remove:hover {
|
|
158
|
-
opacity: 1;
|
|
159
|
-
}
|
|
160
|
-
|
|
161
135
|
/* Dropdown Menu */
|
|
162
136
|
.compact-multi-select-menu {
|
|
163
137
|
z-index: 50;
|
|
164
138
|
margin-top: 0.25rem;
|
|
165
139
|
margin-bottom: 0.25rem;
|
|
166
140
|
border-radius: 0.375rem;
|
|
167
|
-
background-color: hsl(var(--
|
|
168
|
-
border: 1px solid hsl(var(--
|
|
141
|
+
background-color: hsl(var(--popover));
|
|
142
|
+
border: 1px solid hsl(var(--border));
|
|
169
143
|
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
|
|
170
144
|
max-height: 15rem;
|
|
171
145
|
display: flex;
|
|
@@ -174,7 +148,7 @@
|
|
|
174
148
|
|
|
175
149
|
.compact-multi-select-search-wrapper {
|
|
176
150
|
padding: 0.5rem;
|
|
177
|
-
border-bottom: 1.5px solid hsl(var(--
|
|
151
|
+
border-bottom: 1.5px solid hsl(var(--border));
|
|
178
152
|
}
|
|
179
153
|
|
|
180
154
|
.compact-multi-select-options-wrapper {
|
|
@@ -247,7 +221,9 @@
|
|
|
247
221
|
transition: color 0.2s;
|
|
248
222
|
}
|
|
249
223
|
|
|
250
|
-
.compact-multi-select-wrapper:not(.compact-multi-select-disabled):not(
|
|
224
|
+
.compact-multi-select-wrapper:not(.compact-multi-select-disabled):not(
|
|
225
|
+
.compact-multi-select-error
|
|
226
|
+
):hover
|
|
251
227
|
+ .compact-multi-select-note {
|
|
252
228
|
color: hsl(var(--primary));
|
|
253
229
|
}
|
|
@@ -292,4 +268,4 @@
|
|
|
292
268
|
opacity: 1;
|
|
293
269
|
transform: translateY(0);
|
|
294
270
|
}
|
|
295
|
-
}
|
|
271
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import "./compact-multi-select.css";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import type { TooltipPosition } from "../../../types";
|
|
4
|
+
/**
|
|
5
|
+
* One row in `CompactMultiSelect` `options`.
|
|
6
|
+
* @property {string} label - Visible text.
|
|
7
|
+
* @property {string} value - Stable id in the `onChange` payload.
|
|
8
|
+
* @property {boolean} [disabled] - Excludes or grays out the option. Default `false`.
|
|
9
|
+
*/
|
|
10
|
+
export interface CompactMultiSelectOption {
|
|
11
|
+
label: string;
|
|
12
|
+
value: string;
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Compact multi-select: tag list, optional search, max selections, and dropdown direction.
|
|
17
|
+
* **Controlled** via `value` / `onChange` as an array of {@link CompactMultiSelectOption}.
|
|
18
|
+
*
|
|
19
|
+
* @property {CompactMultiSelectOption[]} options - Full list to pick from.
|
|
20
|
+
* @property {CompactMultiSelectOption[]} [value] - Current selection; default `[]`.
|
|
21
|
+
* @property {(value: CompactMultiSelectOption[]) => void} [onChange] - Emits the new selection array.
|
|
22
|
+
* @property {number} [maxSelections] - Upper bound on selected count, if set.
|
|
23
|
+
*/
|
|
24
|
+
interface CompactMultiSelectProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange" | "value"> {
|
|
25
|
+
size?: "sm" | "md" | "lg";
|
|
26
|
+
label?: string;
|
|
27
|
+
showClear?: boolean;
|
|
28
|
+
note?: string;
|
|
29
|
+
error?: string;
|
|
30
|
+
containerClassName?: string;
|
|
31
|
+
options: CompactMultiSelectOption[];
|
|
32
|
+
placeholder?: string;
|
|
33
|
+
value?: CompactMultiSelectOption[];
|
|
34
|
+
onChange?: (value: CompactMultiSelectOption[]) => void;
|
|
35
|
+
disabled?: boolean;
|
|
36
|
+
enableSearch?: boolean;
|
|
37
|
+
maxSelections?: number;
|
|
38
|
+
tooltip?: string;
|
|
39
|
+
tooltipPosition?: TooltipPosition;
|
|
40
|
+
direction?: "top" | "bottom" | "auto";
|
|
41
|
+
onOpen?: () => void;
|
|
42
|
+
onClose?: () => void;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Multi-value dropdown in a single row of tags; supports search, tooltips, and panel flip.
|
|
46
|
+
*
|
|
47
|
+
* @param {CompactMultiSelectProps} props - Options, selection, and layout props.
|
|
48
|
+
* @param {React.Ref<HTMLDivElement>} ref - Root wrapper ref.
|
|
49
|
+
* @returns {React.ReactElement} The field, tags, and open list.
|
|
50
|
+
*/
|
|
51
|
+
export declare const CompactMultiSelect: React.ForwardRefExoticComponent<CompactMultiSelectProps & React.RefAttributes<HTMLDivElement>>;
|
|
52
|
+
export {};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{__rest as e}from"../../../node_modules/tslib/tslib.es6.mjs.js";import{jsxs as t,jsx as o}from"react/jsx-runtime";import"./compact-multi-select.css";import l,{useId as c,useState as a,useRef as i,useMemo as s,useEffect as n}from"react";import{Icon as r}from"../icon/icon.js";import{Tag as m}from"../tag/tag.js";import{Input as p}from"../input/input.js";import{useDropdownPosition as u}from"../../../hooks/src/use-dropdown-position.js";import{useClickOutside as d}from"../../../hooks/src/use-click-outside.js";const h=[],v=l.forwardRef(((l,v)=>{var{size:b="md",label:f,showClear:N,note:g,error:C="",className:w="",containerClassName:k="",disabled:x,options:$,value:j,onChange:y,placeholder:P="Select options",enableSearch:z=!0,maxSelections:S,tooltip:D,tooltipPosition:E="top",direction:L="auto",onOpen:O,onClose:F}=l,I=e(l,["size","label","showClear","note","error","className","containerClassName","disabled","options","value","onChange","placeholder","enableSearch","maxSelections","tooltip","tooltipPosition","direction","onOpen","onClose"]);const K=c(),R=null!=j?j:h,[B,M]=a(!1),[T,_]=a(!1),[q,A]=a(""),G=i(null),H=i(null),J=u(G,B,L),Q=e=>{void 0!==S&&e.length>S||null==y||y(e)},U=s((()=>z&&q?$.filter((e=>e.label.toLowerCase().includes(q.toLowerCase()))):$),[$,q,z]);d(G,(()=>{B&&(M(!1),A(""),null==F||F())})),n((()=>{if(!B)return;const e=()=>{};return document.addEventListener("scroll",e,!0),()=>document.removeEventListener("scroll",e,!0)}),[B]),n((()=>{B&&z&&H.current&&H.current.focus()}),[B,z]);const V=()=>{x||(M(!0),null==O||O())},W=()=>{M(!1),A(""),null==F||F()};return t("div",{className:`compact-multi-select-container ${k}`,ref:G,children:[(f||N&&R.length>0)&&t("div",{className:"compact-multi-select-header",children:[f&&t("label",{htmlFor:K,className:"compact-multi-select-label",children:[f,D&&o(r,{icon:"info",size:16,tooltip:D,className:"compact-multi-select-info-icon",tooltipPosition:E})]}),N&&R.length>0&&!x&&o("button",{type:"button",onClick:e=>{e.stopPropagation(),null==y||y([])},className:"compact-multi-select-clear","aria-label":"Clear selection",children:"Clear"})]}),t("div",{className:`compact-multi-select-wrapper ${C?"compact-multi-select-error":""} ${x?"compact-multi-select-disabled":""} ${T?"compact-multi-select-focused":""}`,onFocusCapture:()=>_(!0),onBlurCapture:e=>{var t;(null===(t=G.current)||void 0===t?void 0:t.contains(e.relatedTarget))||_(!1)},children:[t("div",Object.assign({id:K,ref:v,tabIndex:x?-1:0,className:`compact-multi-select compact-multi-select-${b} ${w}`,onClick:()=>B?W():V(),onKeyDown:e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),B?W():V()),"Escape"===e.key&&B&&W()},role:"combobox","aria-expanded":B,"aria-haspopup":"listbox","aria-controls":B?`${K}-listbox`:void 0},I,{children:[o("div",{className:"compact-multi-select-content",children:R.length>0?R.map((e=>o("div",{onPointerDown:e=>e.stopPropagation(),onKeyDown:e=>e.stopPropagation(),role:"presentation",children:o(m,{size:"sm",label:e.label,onRemove:()=>{x||Q(R.filter((t=>t.value!==e.value)))}})},e.value))):o("span",{className:"compact-multi-select-placeholder",children:P})}),o(r,{icon:"chevron-down",size:20,className:"compact-multi-select-chevron "+(B?"compact-multi-select-chevron-open":"")})]})),B&&t("div",{id:`${K}-listbox`,role:"listbox","aria-multiselectable":"true",className:`compact-multi-select-menu compact-multi-select-menu-${J}`,style:{position:"absolute",["bottom"===J?"top":"bottom"]:"100%",left:0,right:0},children:[z&&o("div",{className:"compact-multi-select-search-wrapper",children:o(p,{ref:H,placeholder:"Search...",size:"sm",value:q,onChange:e=>A(e.target.value),rightIcon:"search",onClick:e=>e.stopPropagation()})}),o("div",{className:"compact-multi-select-options-wrapper",children:U.length>0?U.map((e=>{const l=R.some((t=>t.value===e.value));return t("button",{type:"button",role:"option","aria-selected":l,className:`compact-multi-select-option ${l?"compact-multi-select-option-selected":""} ${e.disabled?"compact-multi-select-option-disabled":""}`,onClick:()=>(e=>{if(e.disabled)return;const t=R.some((t=>t.value===e.value));Q(t?R.filter((t=>t.value!==e.value)):[...R,e])})(e),disabled:e.disabled,children:[o("span",{children:e.label}),l&&o(r,{icon:"check",size:16})]},e.value)})):o("div",{className:"compact-multi-select-no-options",children:"No options found."})})]})]}),(g||C)&&o("small",{className:C?"compact-multi-select-error-message":"compact-multi-select-note",children:C||g})]})}));v.displayName="CompactMultiSelect";export{v as CompactMultiSelect};
|
|
2
|
+
//# sourceMappingURL=compact-multi-select.js.map
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
padding: 0.5rem;
|
|
46
46
|
border: 1px solid transparent;
|
|
47
47
|
transition: border-color 0.3s ease-in-out;
|
|
48
|
-
background-color: hsl(var(--
|
|
48
|
+
background-color: hsl(var(--input));
|
|
49
49
|
width: fit-content;
|
|
50
50
|
&:hover {
|
|
51
51
|
border-color: hsl(var(--primary-disabled));
|
|
@@ -91,3 +91,19 @@
|
|
|
91
91
|
.content-switch-option-disabled.content-switch-option-selected {
|
|
92
92
|
opacity: 0.7;
|
|
93
93
|
}
|
|
94
|
+
|
|
95
|
+
.content-switch-option-icon {
|
|
96
|
+
flex-shrink: 0;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.content-switch-option {
|
|
100
|
+
display: inline-flex;
|
|
101
|
+
align-items: center;
|
|
102
|
+
justify-content: center;
|
|
103
|
+
gap: 0.375rem;
|
|
104
|
+
background: none;
|
|
105
|
+
border: none;
|
|
106
|
+
cursor: pointer;
|
|
107
|
+
font: inherit;
|
|
108
|
+
color: inherit;
|
|
109
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import "./content-switch.css";
|
|
2
|
+
import type { IconType } from "../../../types";
|
|
3
|
+
/**
|
|
4
|
+
* Tab-like option in a `ContentSwitch` row (`role="tablist"` / `role="tab"`).
|
|
5
|
+
* @property {string} value - Passed to `onChange` when selected.
|
|
6
|
+
* @property {IconType} [icon] - Optional leading icon on the tab.
|
|
7
|
+
*/
|
|
8
|
+
export type ContentSwitchOption = {
|
|
9
|
+
label: string;
|
|
10
|
+
value: string;
|
|
11
|
+
icon?: IconType;
|
|
12
|
+
disabled?: boolean;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* **Controlled** `selected` value string; `variant` picks primary vs secondary surface styles.
|
|
16
|
+
*
|
|
17
|
+
* @property {ContentSwitchOption[]} options - Tab definitions.
|
|
18
|
+
* @property {string} selected - Must match one `option.value` for the active tab.
|
|
19
|
+
* @property {(value: string) => void} onChange - Fires with the chosen `value`.
|
|
20
|
+
* @property {"primary"|"secondary"} [variant] - Style preset. Default `"primary"`.
|
|
21
|
+
*/
|
|
22
|
+
type ContentSwitchProps = {
|
|
23
|
+
options: ContentSwitchOption[];
|
|
24
|
+
variant?: "primary" | "secondary";
|
|
25
|
+
className?: string;
|
|
26
|
+
optionClassName?: string;
|
|
27
|
+
selected: string;
|
|
28
|
+
onChange: (value: string) => void;
|
|
29
|
+
disabled?: boolean;
|
|
30
|
+
ariaLabel?: string;
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Underline / chip style tab strip for switching content; `role="tablist"` with keyboard focus on tabs.
|
|
34
|
+
*
|
|
35
|
+
* @param {ContentSwitchProps} props - `options`, `selected`, `onChange`, and global `disabled` to dim all.
|
|
36
|
+
* @returns {JSX.Element} The tablist container and one `button` tab per option.
|
|
37
|
+
*/
|
|
38
|
+
export declare const ContentSwitch: ({ options, selected, onChange, variant, className, optionClassName, disabled, ariaLabel, }: ContentSwitchProps) => import("react/jsx-runtime").JSX.Element;
|
|
39
|
+
export {};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{jsx as t,jsxs as e}from"react/jsx-runtime";import"./content-switch.css";import{Icon as i}from"../icon/icon.js";import{cn as o}from"../../../utils/src/cn.js";const n=({options:n,selected:a,onChange:c,variant:s="primary",className:l,optionClassName:r,disabled:m=!1,ariaLabel:p})=>t("div",{role:"tablist","aria-label":p,className:o("primary"===s?"content-switch-primary":"content-switch-secondary",l),children:n.map((n=>{const s=m||n.disabled;return e("button",{type:"button",role:"tab","aria-selected":a===n.value,onClick:()=>!s&&c(n.value),disabled:s,className:o("content-switch-option",r,a===n.value&&"content-switch-option-selected",s&&"content-switch-option-disabled"),children:[n.icon&&t(i,{icon:n.icon,size:16,className:"content-switch-option-icon"}),n.label]},n.value)}))});export{n as ContentSwitch};
|
|
2
|
+
//# sourceMappingURL=content-switch.js.map
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
.date-picker-container {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: column;
|
|
4
|
+
gap: 0.5rem;
|
|
5
|
+
font-family: inherit;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
/* ── Header ── */
|
|
9
|
+
|
|
10
|
+
.date-picker-header {
|
|
11
|
+
display: flex;
|
|
12
|
+
align-items: center;
|
|
13
|
+
justify-content: space-between;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.date-picker-labels {
|
|
17
|
+
display: flex;
|
|
18
|
+
flex: 1;
|
|
19
|
+
gap: 0.75rem;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.date-picker-label {
|
|
23
|
+
flex: 1;
|
|
24
|
+
font-size: 0.875rem;
|
|
25
|
+
font-weight: 500;
|
|
26
|
+
color: hsl(var(--foreground));
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.date-picker-clear {
|
|
30
|
+
font-size: 0.875rem;
|
|
31
|
+
color: hsl(var(--muted-200));
|
|
32
|
+
background: none;
|
|
33
|
+
border: none;
|
|
34
|
+
cursor: pointer;
|
|
35
|
+
transition: color 0.2s;
|
|
36
|
+
padding: 0;
|
|
37
|
+
flex-shrink: 0;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.date-picker-clear:hover {
|
|
41
|
+
color: hsl(var(--primary));
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/* ── Single wrapper ── */
|
|
45
|
+
|
|
46
|
+
.date-picker-wrapper {
|
|
47
|
+
position: relative;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/* ── Range wrapper: two fields side by side ── */
|
|
51
|
+
|
|
52
|
+
.date-picker-range-wrapper {
|
|
53
|
+
display: grid;
|
|
54
|
+
grid-template-columns: 1fr 1fr;
|
|
55
|
+
gap: 0.75rem;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.date-picker-field-wrapper {
|
|
59
|
+
position: relative;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/* ── Trigger ── */
|
|
63
|
+
|
|
64
|
+
.date-picker-trigger {
|
|
65
|
+
display: flex;
|
|
66
|
+
align-items: center;
|
|
67
|
+
justify-content: space-between;
|
|
68
|
+
width: 100%;
|
|
69
|
+
height: 2.5rem;
|
|
70
|
+
padding: 0 0.75rem;
|
|
71
|
+
border: 1.5px solid hsl(var(--muted));
|
|
72
|
+
border-radius: 0.5rem;
|
|
73
|
+
background: hsl(var(--input));
|
|
74
|
+
cursor: pointer;
|
|
75
|
+
transition: border-color 0.2s;
|
|
76
|
+
font-family: inherit;
|
|
77
|
+
font-size: 0.875rem;
|
|
78
|
+
text-align: left;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
.date-picker-trigger:hover:not([disabled]) {
|
|
82
|
+
border-color: hsl(var(--primary));
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
.date-picker-trigger:hover:not([disabled]) .date-picker-icon {
|
|
86
|
+
color: hsl(var(--primary));
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.date-picker-trigger--open {
|
|
90
|
+
border-color: hsl(var(--primary));
|
|
91
|
+
border-radius: 0.5rem 0.5rem 0 0;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.date-picker-trigger--error {
|
|
95
|
+
border-color: hsl(var(--destructive));
|
|
96
|
+
background-color: hsl(var(--destructive-bg) / 0.3);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.date-picker-trigger[disabled] {
|
|
100
|
+
opacity: 0.5;
|
|
101
|
+
cursor: not-allowed;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.date-picker-placeholder {
|
|
105
|
+
color: hsl(var(--muted));
|
|
106
|
+
font-size: 0.875rem;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.date-picker-value {
|
|
110
|
+
color: hsl(var(--foreground));
|
|
111
|
+
font-size: 0.875rem;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.date-picker-icon {
|
|
115
|
+
color: hsl(var(--muted-200));
|
|
116
|
+
flex-shrink: 0;
|
|
117
|
+
transition: color 0.2s;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
.date-picker-icon--open {
|
|
121
|
+
color: hsl(var(--primary));
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
/* ── Dropdown panel ── */
|
|
125
|
+
|
|
126
|
+
.date-picker-panel {
|
|
127
|
+
position: absolute;
|
|
128
|
+
top: 100%;
|
|
129
|
+
left: 0;
|
|
130
|
+
z-index: 200;
|
|
131
|
+
background-color: hsl(var(--input));
|
|
132
|
+
border: 1.5px solid hsl(var(--primary));
|
|
133
|
+
border-top: none;
|
|
134
|
+
border-radius: 0 0 0.5rem 0.5rem;
|
|
135
|
+
width: 100%;
|
|
136
|
+
box-sizing: border-box;
|
|
137
|
+
overflow: hidden;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
/* Strip the calendar's own border so it blends into the panel */
|
|
141
|
+
.date-picker-panel .calendar-container {
|
|
142
|
+
border: none;
|
|
143
|
+
background: none;
|
|
144
|
+
max-width: none;
|
|
145
|
+
min-width: 0;
|
|
146
|
+
width: 100%;
|
|
147
|
+
box-sizing: border-box;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
/* ── Messages ── */
|
|
151
|
+
|
|
152
|
+
.date-picker-note {
|
|
153
|
+
font-size: 0.875rem;
|
|
154
|
+
color: hsl(var(--muted-200));
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
.date-picker-error-message {
|
|
158
|
+
font-size: 0.875rem;
|
|
159
|
+
color: hsl(var(--destructive));
|
|
160
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import "./date-picker.css";
|
|
2
|
+
/**
|
|
3
|
+
* Date input with inline `Calendar` popover: single `Date` or start/end `range` tuple.
|
|
4
|
+
*
|
|
5
|
+
* @property {"single"|"range"} [mode] - Field format and `value`/`onChange` shape. Default `"single"`.
|
|
6
|
+
* @property {Date|null|[Date|null,Date|null]} [value] - `null` means cleared; range uses tuple with partial `null` while picking.
|
|
7
|
+
* @property {(v:Date|null|[Date|null,Date|null]) => void} [onChange] - Emits the same shape as `value`.
|
|
8
|
+
* @property {Date} [minDate] - Inclusive lower bound for the calendar. Optional.
|
|
9
|
+
* @property {Date} [maxDate] - Inclusive upper bound. Optional.
|
|
10
|
+
* @property {Date[]} [disabledDates] - Unselectable days. Default `[]`.
|
|
11
|
+
* @property {string} [placeholder] - Empty input text. Default `"MM/DD/YYYY"`.
|
|
12
|
+
*/
|
|
13
|
+
interface DatePickerProps {
|
|
14
|
+
mode?: "single" | "range";
|
|
15
|
+
value?: Date | null | [Date | null, Date | null];
|
|
16
|
+
onChange?: (value: Date | null | [Date | null, Date | null]) => void;
|
|
17
|
+
minDate?: Date;
|
|
18
|
+
maxDate?: Date;
|
|
19
|
+
disabledDates?: Date[];
|
|
20
|
+
placeholder?: string;
|
|
21
|
+
label?: string;
|
|
22
|
+
endLabel?: string;
|
|
23
|
+
disabled?: boolean;
|
|
24
|
+
className?: string;
|
|
25
|
+
error?: string;
|
|
26
|
+
note?: string;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Renders a text field that opens a `Calendar` for one date or a range, with min/max and disabled day rules.
|
|
30
|
+
*
|
|
31
|
+
* @param {DatePickerProps} props - `mode` drives value typing; `label` / `endLabel` for field captions.
|
|
32
|
+
* @returns {JSX.Element} The field group, popover calendar, and optional note/error.
|
|
33
|
+
*/
|
|
34
|
+
export declare const DatePicker: ({ mode, value, onChange, minDate, maxDate, disabledDates, placeholder, label, endLabel, disabled, className, error, note, }: DatePickerProps) => import("react/jsx-runtime").JSX.Element;
|
|
35
|
+
export {};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{jsxs as e,jsx as a,Fragment as r}from"react/jsx-runtime";import"./date-picker.css";import{useState as l,useRef as i,useCallback as n}from"react";import{Calendar as t}from"../calendar/calendar.js";import{Icon as c}from"../icon/icon.js";import{useClickOutside as d}from"../../../hooks/src/use-click-outside.js";const s=e=>`${String(e.getMonth()+1).padStart(2,"0")}/${String(e.getDate()).padStart(2,"0")}/${e.getFullYear()}`,o=({mode:o="single",value:p,onChange:g,minDate:m,maxDate:k,disabledDates:u=[],placeholder:h="MM/DD/YYYY",label:N,endLabel:b="End Date",disabled:v=!1,className:D,error:f,note:j})=>{const[y,C]=l(!1),[A,S]=l("start"),Y=i(null);d(Y,(()=>{y&&C(!1)}));const w=null!=N?N:"range"===o?"Start Date":"Date",x="single"!==o||Array.isArray(p)?null:null!=p?p:null,$="range"===o&&Array.isArray(p)?p:[null,null],B="single"===o?!!x:!(!$[0]&&!$[1]),M=n(((e="start")=>{v||("range"===o?y&&A===e?C(!1):(S(e),C(!0)):C((e=>!e)))}),[v,o,y,A]),O=n((e=>{e instanceof Date&&(null==g||g(e),C(!1))}),[g]),E=n((e=>{Array.isArray(e)&&(null==g||g(e),e[0]&&e[1]&&C(!1))}),[g]),F=n((e=>{e.stopPropagation(),null==g||g("range"===o?[null,null]:null),C(!1)}),[g,o]),L=y&&("single"===o||"start"===A),P=y&&"range"===o&&"end"===A,q={minDate:m,maxDate:k,disabledDates:u};return e("div",{ref:Y,className:"date-picker-container"+(D?` ${D}`:""),children:[e("div",{className:"date-picker-header",children:[a("div",{className:"date-picker-labels",children:"single"===o?a("span",{className:"date-picker-label",children:w}):e(r,{children:[a("span",{className:"date-picker-label",children:w}),a("span",{className:"date-picker-label",children:b})]})}),B&&!v&&a("button",{type:"button",className:"date-picker-clear",onClick:F,children:"Clear"})]}),"single"===o&&e("div",{className:"date-picker-wrapper",children:[e("button",{type:"button",className:["date-picker-trigger",y?"date-picker-trigger--open":"",f?"date-picker-trigger--error":""].filter(Boolean).join(" "),onClick:()=>M(),disabled:v,children:[a("span",{className:x?"date-picker-value":"date-picker-placeholder",children:x?s(x):h}),a(c,{icon:"calendar",className:"date-picker-icon"+(y?" date-picker-icon--open":"")})]}),y&&a("div",{className:"date-picker-panel",children:a(t,Object.assign({mode:"single",value:null!=x?x:void 0,onChange:O},q))})]}),"range"===o&&e("div",{className:"date-picker-range-wrapper",children:[e("div",{className:"date-picker-field-wrapper",children:[e("button",{type:"button",className:["date-picker-trigger",L?"date-picker-trigger--open":"",f?"date-picker-trigger--error":""].filter(Boolean).join(" "),onClick:()=>M("start"),disabled:v,children:[a("span",{className:$[0]?"date-picker-value":"date-picker-placeholder",children:$[0]?s($[0]):h}),a(c,{icon:"calendar",className:"date-picker-icon"+(L?" date-picker-icon--open":"")})]}),L&&a("div",{className:"date-picker-panel",children:a(t,Object.assign({mode:"range",value:$,onChange:E},q))})]}),e("div",{className:"date-picker-field-wrapper",children:[e("button",{type:"button",className:["date-picker-trigger",P?"date-picker-trigger--open":"",f?"date-picker-trigger--error":""].filter(Boolean).join(" "),onClick:()=>M("end"),disabled:v,children:[a("span",{className:$[1]?"date-picker-value":"date-picker-placeholder",children:$[1]?s($[1]):h}),a(c,{icon:"calendar",className:"date-picker-icon"+(P?" date-picker-icon--open":"")})]}),P&&a("div",{className:"date-picker-panel",children:a(t,Object.assign({mode:"range",value:$,onChange:E},q))})]})]}),(j||f)&&a("small",{className:f?"date-picker-error-message":"date-picker-note",children:f||j})]})};export{o as DatePicker};
|
|
2
|
+
//# sourceMappingURL=date-picker.js.map
|
|
@@ -2,9 +2,8 @@
|
|
|
2
2
|
display: flex;
|
|
3
3
|
background-color: hsl(var(--background));
|
|
4
4
|
border-radius: 0.5rem;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
font-family: sans-serif;
|
|
5
|
+
border: 1px solid hsl(var(--muted) / 50%);
|
|
6
|
+
font-family: inherit;
|
|
8
7
|
}
|
|
9
8
|
|
|
10
9
|
.date-range-picker__presets {
|
|
@@ -70,4 +69,4 @@
|
|
|
70
69
|
|
|
71
70
|
.date-range-picker__calendars .calendar-container:nth-of-type(2) {
|
|
72
71
|
grid-area: cal2;
|
|
73
|
-
}
|
|
72
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import "./date-range-picker.css";
|
|
2
|
+
/**
|
|
3
|
+
* Built-in range shortcut id (e.g. `last_7_days`, `custom` to open the calendar only).
|
|
4
|
+
* @type {string}
|
|
5
|
+
*/
|
|
6
|
+
export type Preset = "today" | "last_7_days" | "last_30_days" | "last_3_months" | "last_6_months" | "last_12_months" | "month_to_date" | "year_to_date" | "next_7_days" | "next_30_days" | "next_3_months" | "next_6_months" | "next_12_months" | "rest_of_month" | "rest_of_year" | "custom";
|
|
7
|
+
type PresetDirection = "last" | "next";
|
|
8
|
+
/**
|
|
9
|
+
* Two-field range with preset radio list and embedded `Calendar` for `custom` / adjustments.
|
|
10
|
+
* **Controlled** via `value: [Date|null, Date|null]`.
|
|
11
|
+
*
|
|
12
|
+
* @property {[Date|null,Date|null]} [value] - Inclusive start/end; `null` slot means unset.
|
|
13
|
+
* @property {(value: [Date|null,Date|null]) => void} [onChange] - Emits the full tuple on change.
|
|
14
|
+
* @property {PresetDirection} [presetDirection] - `"last"` vs `"next"` preset menu. Default `"last"`.
|
|
15
|
+
* @property {Preset} [defaultPreset] - Initial active preset. Default `"custom"`.
|
|
16
|
+
* @property {(date: Date) => string} [formatDate] - Formats the two summary fields; default YYYY/MM/DD.
|
|
17
|
+
* @property {Date} [minDate] - Forwarded to `Calendar`. Optional.
|
|
18
|
+
* @property {Date} [maxDate] - Forwarded to `Calendar`. Optional.
|
|
19
|
+
*/
|
|
20
|
+
interface DateRangePickerProps {
|
|
21
|
+
value?: [Date | null, Date | null];
|
|
22
|
+
onChange?: (value: [Date | null, Date | null]) => void;
|
|
23
|
+
minDate?: Date;
|
|
24
|
+
maxDate?: Date;
|
|
25
|
+
disabledDates?: Date[];
|
|
26
|
+
presetDirection?: PresetDirection;
|
|
27
|
+
defaultPreset?: Preset;
|
|
28
|
+
/** Custom date display formatter. Defaults to YYYY/MM/DD. */
|
|
29
|
+
formatDate?: (date: Date) => string;
|
|
30
|
+
className?: string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Renders preset radios plus a range `Calendar` and forwards remaining props (min/max, disabled days) to it.
|
|
34
|
+
*
|
|
35
|
+
* @param {DateRangePickerProps} props - `value`/`onChange` tuple, presets, and optional `className`.
|
|
36
|
+
* @returns {JSX.Element} The preset column, field pair, and popover `Calendar` when `custom` is active.
|
|
37
|
+
*/
|
|
38
|
+
export declare const DateRangePicker: ({ value, onChange, presetDirection, defaultPreset, formatDate, className, ...calendarProps }: DateRangePickerProps) => import("react/jsx-runtime").JSX.Element;
|
|
39
|
+
export {};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{__rest as e}from"../../../node_modules/tslib/tslib.es6.mjs.js";import{jsxs as t,jsx as a}from"react/jsx-runtime";import"./date-range-picker.css";import n,{useState as l,useMemo as s,useCallback as r}from"react";import{Calendar as o}from"../calendar/calendar.js";import{Radio as c}from"../radio/radio.js";import{Icon as u}from"../icon/icon.js";const d=[{label:"Today",value:"today"},{label:"Last 7 days",value:"last_7_days"},{label:"Last 30 days",value:"last_30_days"},{label:"Last 3 months",value:"last_3_months"},{label:"Last 6 months",value:"last_6_months"},{label:"Last 12 months",value:"last_12_months"},{label:"Month To Date",value:"month_to_date"},{label:"Year To Date",value:"year_to_date"},{label:"Custom Range",value:"custom"}],h=[{label:"Today",value:"today"},{label:"Next 7 days",value:"next_7_days"},{label:"Next 30 days",value:"next_30_days"},{label:"Next 3 months",value:"next_3_months"},{label:"Next 6 months",value:"next_6_months"},{label:"Next 12 months",value:"next_12_months"},{label:"Rest of Month",value:"rest_of_month"},{label:"Rest of Year",value:"rest_of_year"},{label:"Custom Range",value:"custom"}],i=e=>`${e.getFullYear()}/${(e.getMonth()+1).toString().padStart(2,"0")}/${e.getDate().toString().padStart(2,"0")}`,m=m=>{var{value:_=[null,null],onChange:D,presetDirection:g="last",defaultPreset:v="custom",formatDate:w,className:y}=m,b=e(m,["value","onChange","presetDirection","defaultPreset","formatDate","className"]);const[p,M]=l(_),[f,Y]=l(v),[x,N]=l(p[0]||new Date),[F,k]=l(null),C=null!=w?w:i,L="next"===g?h:d;n.useEffect((()=>{M(_),_[0]&&N(_[0])}),[_]);const j=s((()=>new Date(x.getFullYear(),x.getMonth()+1,1)),[x]),S=e=>{if(Y(e),"custom"===e)M([null,null]),null==D||D([null,null]);else{const t=(e=>{const t=new Date;switch(t.setHours(0,0,0,0),e){case"today":return[new Date(t),new Date(t)];case"last_7_days":{const e=new Date(t);return e.setDate(t.getDate()-6),[e,new Date(t)]}case"last_30_days":{const e=new Date(t);return e.setDate(t.getDate()-29),[e,new Date(t)]}case"last_3_months":{const e=new Date(t);return e.setMonth(t.getMonth()-3),[e,new Date(t)]}case"last_6_months":{const e=new Date(t);return e.setMonth(t.getMonth()-6),[e,new Date(t)]}case"last_12_months":{const e=new Date(t);return e.setFullYear(t.getFullYear()-1),[e,new Date(t)]}case"month_to_date":return[new Date(t.getFullYear(),t.getMonth(),1),new Date(t)];case"year_to_date":return[new Date(t.getFullYear(),0,1),new Date(t)];case"next_7_days":{const e=new Date(t);return e.setDate(t.getDate()+6),[new Date(t),e]}case"next_30_days":{const e=new Date(t);return e.setDate(t.getDate()+29),[new Date(t),e]}case"next_3_months":{const e=new Date(t);return e.setMonth(t.getMonth()+3),[new Date(t),e]}case"next_6_months":{const e=new Date(t);return e.setMonth(t.getMonth()+6),[new Date(t),e]}case"next_12_months":{const e=new Date(t);return e.setFullYear(t.getFullYear()+1),[new Date(t),e]}case"rest_of_month":{const e=new Date(t.getFullYear(),t.getMonth()+1,0);return[new Date(t),e]}case"rest_of_year":{const e=new Date(t.getFullYear(),11,31);return[new Date(t),e]}default:return null}})(e);t&&(M(t),null==D||D(t),N(t[0]))}},O=e=>{Array.isArray(e)&&(M(e),Y("custom"),null==D||D(e))},R=e=>{p[0]&&!p[1]&&k(e)},T=()=>{k(null)},$=r((()=>{N((e=>new Date(e.getFullYear(),e.getMonth()+1,1)))}),[]),E=r((()=>{N((e=>new Date(e.getFullYear(),e.getMonth()-1,1)))}),[]);return t("div",{className:"date-range-picker"+(y?` ${y}`:""),children:[a("div",{className:"date-range-picker__presets",children:L.map((e=>a(c,{label:e.label,name:"date-range-preset",value:e.value,checked:f===e.value,onChange:()=>S(e.value)},e.value)))}),t("div",{className:"date-range-picker__main",children:[t("div",{className:"date-range-picker__display",children:[p[0]?C(p[0]):"YYYY/MM/DD"," → ",p[1]?C(p[1]):"YYYY/MM/DD"]}),t("div",{className:"date-range-picker__calendars",children:[t("div",{className:"date-range-picker__header",children:[a("button",{className:"calendar-nav-button",onClick:E,"aria-label":"Previous month",children:a(u,{icon:"chevron-left"})}),a("div",{className:"calendar-title",children:x.toLocaleString("default",{month:"short",year:"numeric"})})]}),t("div",{className:"date-range-picker__header",children:[a("div",{className:"calendar-title",children:j.toLocaleString("default",{month:"short",year:"numeric"})}),a("button",{className:"calendar-nav-button",onClick:$,"aria-label":"Next month",children:a(u,{icon:"chevron-right"})})]}),a(o,Object.assign({mode:"range",value:p,onChange:O,month:x,hideHeader:!0,hideOutsideDays:!0,hoverDate:F,onDayMouseEnter:R,onDayMouseLeave:T},b)),a(o,Object.assign({mode:"range",value:p,onChange:O,month:j,hideHeader:!0,hideOutsideDays:!0,hoverDate:F,onDayMouseEnter:R,onDayMouseLeave:T},b))]})]})]})};export{m as DateRangePicker};
|
|
2
|
+
//# sourceMappingURL=date-range-picker.js.map
|
|
@@ -15,6 +15,17 @@
|
|
|
15
15
|
font-size: 0.875rem;
|
|
16
16
|
font-weight: 500;
|
|
17
17
|
color: hsl(var(--foreground));
|
|
18
|
+
display: flex;
|
|
19
|
+
align-items: center;
|
|
20
|
+
gap: 0.2rem;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.dropdown-info-icon {
|
|
24
|
+
color: hsl(var(--muted-200));
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.dropdown-info-icon:hover {
|
|
28
|
+
color: hsl(var(--primary));
|
|
18
29
|
}
|
|
19
30
|
|
|
20
31
|
.dropdown-clear {
|
|
@@ -36,17 +47,17 @@
|
|
|
36
47
|
width: 100%;
|
|
37
48
|
border-radius: 0.375rem;
|
|
38
49
|
border: 1.5px solid hsl(var(--muted));
|
|
39
|
-
background: hsl(var(--
|
|
40
|
-
transition:
|
|
50
|
+
background: hsl(var(--input));
|
|
51
|
+
transition:
|
|
52
|
+
border-color 0.2s,
|
|
53
|
+
background-color 0.2s;
|
|
41
54
|
}
|
|
42
55
|
|
|
43
56
|
.dropdown-wrapper:not(.dropdown-disabled):not(.dropdown-error):hover {
|
|
44
57
|
border-color: hsl(var(--primary));
|
|
45
58
|
}
|
|
46
59
|
|
|
47
|
-
.dropdown-wrapper.dropdown-focused:not(.dropdown-disabled):not(
|
|
48
|
-
.dropdown-error
|
|
49
|
-
) {
|
|
60
|
+
.dropdown-wrapper.dropdown-focused:not(.dropdown-disabled):not(.dropdown-error) {
|
|
50
61
|
border-color: hsl(var(--primary-300));
|
|
51
62
|
}
|
|
52
63
|
|
|
@@ -90,6 +101,12 @@
|
|
|
90
101
|
white-space: nowrap;
|
|
91
102
|
}
|
|
92
103
|
|
|
104
|
+
.dropdown-value-placeholder {
|
|
105
|
+
color: hsl(var(--muted));
|
|
106
|
+
font-size: 0.875rem;
|
|
107
|
+
font-weight: 400;
|
|
108
|
+
}
|
|
109
|
+
|
|
93
110
|
.dropdown-chevron {
|
|
94
111
|
flex-shrink: 0;
|
|
95
112
|
margin-left: 0.5rem;
|
|
@@ -123,7 +140,7 @@
|
|
|
123
140
|
margin-top: 0.25rem;
|
|
124
141
|
margin-bottom: 0.25rem;
|
|
125
142
|
border-radius: 0.375rem;
|
|
126
|
-
background-color: hsl(var(--
|
|
143
|
+
background-color: hsl(var(--input));
|
|
127
144
|
border: 1px solid hsl(var(--muted));
|
|
128
145
|
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
|
|
129
146
|
max-height: 15rem;
|
|
@@ -196,9 +213,7 @@
|
|
|
196
213
|
transition: all 0.2s;
|
|
197
214
|
}
|
|
198
215
|
|
|
199
|
-
.dropdown-option:hover:not(.dropdown-option-disabled):not(
|
|
200
|
-
.dropdown-option-selected
|
|
201
|
-
) {
|
|
216
|
+
.dropdown-option:hover:not(.dropdown-option-disabled):not(.dropdown-option-selected) {
|
|
202
217
|
background-color: hsl(var(--primary-disabled));
|
|
203
218
|
}
|
|
204
219
|
|
|
@@ -222,13 +237,11 @@
|
|
|
222
237
|
transition: color 0.2s;
|
|
223
238
|
}
|
|
224
239
|
|
|
225
|
-
.dropdown-wrapper:not(.dropdown-disabled):not(.dropdown-error):hover
|
|
226
|
-
+ .dropdown-note {
|
|
240
|
+
.dropdown-wrapper:not(.dropdown-disabled):not(.dropdown-error):hover + .dropdown-note {
|
|
227
241
|
color: hsl(var(--primary));
|
|
228
242
|
}
|
|
229
243
|
|
|
230
|
-
.dropdown-wrapper.dropdown-focused:not(.dropdown-disabled):not(.dropdown-error)
|
|
231
|
-
+ .dropdown-note {
|
|
244
|
+
.dropdown-wrapper.dropdown-focused:not(.dropdown-disabled):not(.dropdown-error) + .dropdown-note {
|
|
232
245
|
color: hsl(var(--primary));
|
|
233
246
|
}
|
|
234
247
|
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import "./dropdown.css";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import type { TooltipPosition } from "../../../types";
|
|
4
|
+
/**
|
|
5
|
+
* One selectable item in a `Dropdown` `options` list.
|
|
6
|
+
*
|
|
7
|
+
* @property {string} label - User-visible text in the list and when selected.
|
|
8
|
+
* @property {string} value - Stable value passed to `onChange`.
|
|
9
|
+
* @property {boolean} [disabled] - When true, the option cannot be selected. Default `false`.
|
|
10
|
+
*/
|
|
11
|
+
export interface DropdownOption {
|
|
12
|
+
label: string;
|
|
13
|
+
value: string;
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Props for the `Dropdown` component. **Controlled** via `value` and `onChange`
|
|
18
|
+
* (selected option `value` string, or `undefined` when cleared).
|
|
19
|
+
*
|
|
20
|
+
* @property {DropdownOption[]} options - The full list to render and filter.
|
|
21
|
+
* @property {string|undefined} [value] - Selected option’s `value`, or `undefined` when empty/cleared.
|
|
22
|
+
* @property {(value: string|undefined) => void} [onChange] - Called on select or clear.
|
|
23
|
+
* @property {boolean} [enableSearch] - When true, filters options by a search string. Default `false`.
|
|
24
|
+
* @property {"top"|"bottom"|"auto"} [direction] - Where the panel opens relative to the field. Default `"auto"`.
|
|
25
|
+
*/
|
|
26
|
+
interface DropdownProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "size" | "value" | "onChange"> {
|
|
27
|
+
size?: "sm" | "md" | "lg";
|
|
28
|
+
label?: string;
|
|
29
|
+
showClear?: boolean;
|
|
30
|
+
note?: string;
|
|
31
|
+
error?: string;
|
|
32
|
+
containerClassName?: string;
|
|
33
|
+
options: DropdownOption[];
|
|
34
|
+
placeholder?: string;
|
|
35
|
+
value?: string;
|
|
36
|
+
onChange?: (value: string | undefined) => void;
|
|
37
|
+
enableSearch?: boolean;
|
|
38
|
+
direction?: "top" | "bottom" | "auto";
|
|
39
|
+
arrowClassName?: string;
|
|
40
|
+
tooltip?: string;
|
|
41
|
+
tooltipPosition?: TooltipPosition;
|
|
42
|
+
onOpen?: () => void;
|
|
43
|
+
onClose?: () => void;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Single-select combobox: trigger button, optional in-list search, clear, and field chrome (label, error, note).
|
|
47
|
+
*
|
|
48
|
+
* @param {DropdownProps} props - Controlled `value` / `onChange` and `options` list.
|
|
49
|
+
* @param {React.Ref<HTMLButtonElement>} ref - Reference to the trigger `<button>`.
|
|
50
|
+
* @returns {React.ReactElement} The closed trigger and absolutely positioned list when open.
|
|
51
|
+
*/
|
|
52
|
+
export declare const Dropdown: React.ForwardRefExoticComponent<DropdownProps & React.RefAttributes<HTMLButtonElement>>;
|
|
53
|
+
export {};
|