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,49 @@
|
|
|
1
|
+
import "./multi-select.css";
|
|
2
|
+
import React from "react";
|
|
3
|
+
/**
|
|
4
|
+
* A selectable item in the dropdown list; `value` must be unique across `options`.
|
|
5
|
+
* @property {string} label - Shown in the list and in selected tags.
|
|
6
|
+
* @property {string} value - Stable id stored in the selection array.
|
|
7
|
+
*/
|
|
8
|
+
export interface MultiSelectOption {
|
|
9
|
+
label: string;
|
|
10
|
+
value: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* **Controlled** multi-select: `value` is the full set of selected `{ label, value }` objects, not just keys.
|
|
14
|
+
*
|
|
15
|
+
* @property {MultiSelectOption[]} options - Full catalog; filtered when `showSearch` is on.
|
|
16
|
+
* @property {MultiSelectOption[]} value - Current selection (order preserved for tags).
|
|
17
|
+
* @property {(options: MultiSelectOption[]) => void} onChange - Emits the new array on any change.
|
|
18
|
+
* @property {number} [maxSelectedOptions] - Hard cap; further picks are ignored when reached.
|
|
19
|
+
* @property {boolean} [showSearch] - When `true`, shows a search field in the panel. Default `true`.
|
|
20
|
+
* @property {boolean} [showSelectAll] - When `true`, exposes a select-all control in the list. Default `false`.
|
|
21
|
+
*/
|
|
22
|
+
interface MultiSelectProps {
|
|
23
|
+
options: MultiSelectOption[];
|
|
24
|
+
value: MultiSelectOption[];
|
|
25
|
+
onChange: (options: MultiSelectOption[]) => void;
|
|
26
|
+
placeholder?: string;
|
|
27
|
+
label?: string;
|
|
28
|
+
error?: string;
|
|
29
|
+
note?: string;
|
|
30
|
+
disabled?: boolean;
|
|
31
|
+
size?: "sm" | "md" | "lg";
|
|
32
|
+
className?: string;
|
|
33
|
+
containerClassName?: string;
|
|
34
|
+
maxSelectedOptions?: number;
|
|
35
|
+
showClear?: boolean;
|
|
36
|
+
toggleLabel?: string;
|
|
37
|
+
onToggle?: (checked: boolean) => void;
|
|
38
|
+
showSearch?: boolean;
|
|
39
|
+
showSelectAll?: boolean;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Field that opens a list with checkboxes, optional search, select-all, max cap, and selected rows as `Tag`s.
|
|
43
|
+
*
|
|
44
|
+
* @param {MultiSelectProps} props - Controlled `value` / `onChange` plus `options`.
|
|
45
|
+
* @param {React.Ref<HTMLDivElement>} ref - Container ref.
|
|
46
|
+
* @returns {React.ReactElement} Trigger, open panel, and tag stack.
|
|
47
|
+
*/
|
|
48
|
+
export declare const MultiSelect: React.ForwardRefExoticComponent<MultiSelectProps & React.RefAttributes<HTMLDivElement>>;
|
|
49
|
+
export {};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import "./pagination.css";
|
|
2
|
+
/**
|
|
3
|
+
* Page/limit UI: **controlled** `currentPage`, `perPage`, and `totalPages`.
|
|
4
|
+
*
|
|
5
|
+
* @property {number} currentPage - 1-based index of the active page.
|
|
6
|
+
* @property {number} totalPages - Total page count from the server or client math.
|
|
7
|
+
* @property {number} perPage - Rows per page (synced with `Dropdown` for `onPerPageChange`).
|
|
8
|
+
* @property {number} [totalItems] - Optional; shown in the summary line when provided.
|
|
9
|
+
* @property {{label: string, value: number}[]} [perPageOptions] - Dropdown entries; default presets 10–50.
|
|
10
|
+
* @property {(page: number) => void} onPageChange - Called with the new 1-based page.
|
|
11
|
+
* @property {(perPage: number) => void} onPerPageChange - Called when the user changes page size.
|
|
12
|
+
*/
|
|
13
|
+
interface PaginationProps {
|
|
14
|
+
currentPage: number;
|
|
15
|
+
totalPages: number;
|
|
16
|
+
perPage: number;
|
|
17
|
+
totalItems?: number;
|
|
18
|
+
perPageOptions?: {
|
|
19
|
+
label: string;
|
|
20
|
+
value: number;
|
|
21
|
+
}[];
|
|
22
|
+
onPageChange: (page: number) => void;
|
|
23
|
+
onPerPageChange: (perPage: number) => void;
|
|
24
|
+
className?: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Renders first/prev/next/last, numeric page window, and a per-page `Dropdown` when `perPageOptions` is set.
|
|
28
|
+
*
|
|
29
|
+
* @param {PaginationProps} props - Page + limit state and handlers.
|
|
30
|
+
* @returns {JSX.Element} The pagination toolbar.
|
|
31
|
+
*/
|
|
32
|
+
export declare function Pagination({ currentPage, totalPages, perPage, totalItems, perPageOptions, onPageChange, onPerPageChange, className, }: PaginationProps): import("react/jsx-runtime").JSX.Element;
|
|
33
|
+
export {};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import "./popover.css";
|
|
2
|
+
import type { ReactNode } from "react";
|
|
3
|
+
import type React from "react";
|
|
4
|
+
/**
|
|
5
|
+
* **Controlled** headless popover: `isOpen` / `setIsOpen` and children compose with `PopOverTrigger` + `PopOverContent`.
|
|
6
|
+
*
|
|
7
|
+
* @property {boolean} isOpen - When `true`, `PopOverContent` computes position and listens for outside close.
|
|
8
|
+
* @property {(isOpen: boolean) => void} setIsOpen - Toggle or close the panel (same contract as `useState` setter).
|
|
9
|
+
* @property {React.ReactNode} children - Must include one `PopOverTrigger` and one `PopOverContent` (siblings under this provider).
|
|
10
|
+
* @property {"left"|"right"} [alignment] - Horizontal align of the panel vs the trigger. Default `"left"`.
|
|
11
|
+
* @property {number} [offset] - Gap in px between trigger bottom and panel top. Default `8`.
|
|
12
|
+
*/
|
|
13
|
+
interface PopOverProps {
|
|
14
|
+
isOpen: boolean;
|
|
15
|
+
setIsOpen: (isOpen: boolean) => void;
|
|
16
|
+
children: React.ReactNode;
|
|
17
|
+
alignment?: "left" | "right";
|
|
18
|
+
/** Gap in px between trigger and floating panel. Default: 8. */
|
|
19
|
+
offset?: number;
|
|
20
|
+
className?: string;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* React context root for a floating popover: shares `isOpen` and trigger ref with trigger + content.
|
|
24
|
+
*
|
|
25
|
+
* @param {PopOverProps} props - `isOpen` / `setIsOpen` and `children` tree.
|
|
26
|
+
* @returns {JSX.Element} The provider and optional `className` on the wrapper `div`.
|
|
27
|
+
*/
|
|
28
|
+
export declare const PopOver: ({ children, isOpen, setIsOpen, alignment, offset, className, }: PopOverProps) => import("react/jsx-runtime").JSX.Element;
|
|
29
|
+
/**
|
|
30
|
+
* The toggling surface for a popover: click / Enter / Space flips `isOpen`; `ref` targets this `div` for anchoring.
|
|
31
|
+
*
|
|
32
|
+
* @param {object} props
|
|
33
|
+
* @param {ReactNode} props.children - Trigger contents (e.g. a `Button`).
|
|
34
|
+
* @param {string} [props.className] - Extra classes on the trigger `div`.
|
|
35
|
+
* @returns {JSX.Element} A `div` with `role="button"`, focusable, and `aria-expanded` bound to `isOpen`.
|
|
36
|
+
*/
|
|
37
|
+
export declare const PopOverTrigger: ({ children, className, }: {
|
|
38
|
+
children: ReactNode;
|
|
39
|
+
className?: string;
|
|
40
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
41
|
+
/**
|
|
42
|
+
* Portal-mounted panel: positions under (or flips above) the trigger, closes on outside click and Escape.
|
|
43
|
+
*
|
|
44
|
+
* @param {object} props
|
|
45
|
+
* @param {ReactNode} props.children - Panel body.
|
|
46
|
+
* @param {string} [props.className] - Extra classes on the floating `div`.
|
|
47
|
+
* @returns {JSX.Element | null} The fixed panel when `isOpen`, else `null`.
|
|
48
|
+
*/
|
|
49
|
+
export declare const PopOverContent: ({ children, className, }: {
|
|
50
|
+
children: ReactNode;
|
|
51
|
+
className?: string;
|
|
52
|
+
}) => JSX.Element | null;
|
|
53
|
+
export {};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import "./radio.css";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import type { TooltipPosition } from "../../../types";
|
|
4
|
+
/**
|
|
5
|
+
* Single radio control: extends `HTMLInputElement` except `type` and design-system `size`.
|
|
6
|
+
*
|
|
7
|
+
* @property {string} [label] - Legend next to the circle.
|
|
8
|
+
* @property {string} [description] - Subtext under the label in card mode.
|
|
9
|
+
* @property {boolean} [isCard] - Large card layout vs inline. Default `false`.
|
|
10
|
+
* @property {"sm"|"md"|"lg"} [size] - Visual scale. Default `"md"`.
|
|
11
|
+
*/
|
|
12
|
+
interface RadioProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "type" | "size"> {
|
|
13
|
+
label?: string;
|
|
14
|
+
description?: string;
|
|
15
|
+
containerClassName?: string;
|
|
16
|
+
error?: string;
|
|
17
|
+
note?: string;
|
|
18
|
+
size?: "sm" | "md" | "lg";
|
|
19
|
+
isCard?: boolean;
|
|
20
|
+
tooltip?: string;
|
|
21
|
+
tooltipPosition?: TooltipPosition;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Radio `input` with optional label row, validation text, and info tooltip on the label.
|
|
25
|
+
*
|
|
26
|
+
* @param {RadioProps} props - Native `checked`/`onChange` plus label and `isCard`.
|
|
27
|
+
* @param {React.Ref<HTMLInputElement>} ref - Forwarded to the `<input type="radio">`.
|
|
28
|
+
* @returns {React.ReactElement} Wrapper `div` with `label` and optional error/note.
|
|
29
|
+
*/
|
|
30
|
+
export declare const Radio: React.ForwardRefExoticComponent<RadioProps & React.RefAttributes<HTMLInputElement>>;
|
|
31
|
+
export {};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import "./radio-group.css";
|
|
2
|
+
import type { IconType, TooltipPosition } from "../../../types";
|
|
3
|
+
/**
|
|
4
|
+
* One entry in a `RadioGroup` `options` array.
|
|
5
|
+
* @property {string} label - Option title.
|
|
6
|
+
* @property {string} value - Emitted to `onChange` when selected.
|
|
7
|
+
* @property {import("../../../types").IconType} [icon] - Optional leading icon.
|
|
8
|
+
* @property {"active"|"inactive"} [dot] - Optional status dot style when no icon.
|
|
9
|
+
*/
|
|
10
|
+
export interface RadioOption {
|
|
11
|
+
label: string;
|
|
12
|
+
value: string;
|
|
13
|
+
icon?: IconType;
|
|
14
|
+
dot?: "active" | "inactive";
|
|
15
|
+
disabled?: boolean;
|
|
16
|
+
tooltip?: string;
|
|
17
|
+
tooltipPosition?: TooltipPosition;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* **Controlled** radio group: `selected` is the `value` of the chosen `RadioOption`.
|
|
21
|
+
*
|
|
22
|
+
* @property {RadioOption[]} options - The full set of choices.
|
|
23
|
+
* @property {string} selected - Current `value` (must match one option, or be managed by the parent for empty state).
|
|
24
|
+
* @property {(value: string) => void} onChange - Called with the new `value` on selection.
|
|
25
|
+
*/
|
|
26
|
+
interface RadioGroupProps {
|
|
27
|
+
options: RadioOption[];
|
|
28
|
+
selected: string;
|
|
29
|
+
onChange: (value: string) => void;
|
|
30
|
+
ariaLabel?: string;
|
|
31
|
+
size?: "sm" | "md" | "lg";
|
|
32
|
+
className?: string;
|
|
33
|
+
optionClassName?: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Horizontal/vertical list of option “cards” with shared `role="radiogroup"` and keyboard roving.
|
|
37
|
+
*
|
|
38
|
+
* @param {RadioGroupProps} props - `options`, `selected`, and `onChange` are required.
|
|
39
|
+
* @returns {JSX.Element} The radiogroup container and one button per option.
|
|
40
|
+
*/
|
|
41
|
+
export declare const RadioGroup: ({ options, selected, onChange, ariaLabel, size, className, optionClassName, }: RadioGroupProps) => import("react/jsx-runtime").JSX.Element;
|
|
42
|
+
export {};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import "./segmented-toggle.css";
|
|
2
|
+
import type React from "react";
|
|
3
|
+
import type { SVGProps } from "react";
|
|
4
|
+
import type { IconType } from "../../../types";
|
|
5
|
+
/** Extra attributes forwarded to `Icon` (per segment). */
|
|
6
|
+
type SegmentedToggleIconProps = Omit<SVGProps<SVGSVGElement>, "children"> & {
|
|
7
|
+
size?: number;
|
|
8
|
+
strokeWidth?: number;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* One segment in a `SegmentedToggle` row.
|
|
12
|
+
*
|
|
13
|
+
* @property {string} label - Button text.
|
|
14
|
+
* @property {string} value - Emitted to `onChange` when that segment is selected.
|
|
15
|
+
* @property {IconType} [icon] - Optional leading icon (per-option `iconProps` fine-tune the `Icon`).
|
|
16
|
+
*/
|
|
17
|
+
export type SegmentedToggleOption = {
|
|
18
|
+
label: string;
|
|
19
|
+
value: string;
|
|
20
|
+
icon?: IconType;
|
|
21
|
+
iconProps?: SegmentedToggleIconProps;
|
|
22
|
+
labelProps?: React.HTMLAttributes<HTMLSpanElement>;
|
|
23
|
+
disabled?: boolean;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* **Controlled** `selected` + `onChange` string; `options` render as a connected button group.
|
|
27
|
+
*
|
|
28
|
+
* @property {SegmentedToggleOption[]} options - Segments; may include per-option `disabled`.
|
|
29
|
+
* @property {string} selected - Current `value` (must match an option for correct pressed state).
|
|
30
|
+
* @property {(value: string) => void} onChange - Fires with the option `value` on click or keyboard.
|
|
31
|
+
* @property {string} [ariaLabel] - Accessible name for the `role="radiogroup"` container.
|
|
32
|
+
*/
|
|
33
|
+
interface SegmentedToggleProps {
|
|
34
|
+
options: SegmentedToggleOption[];
|
|
35
|
+
size?: "sm" | "md" | "lg";
|
|
36
|
+
className?: string;
|
|
37
|
+
optionClassName?: string;
|
|
38
|
+
selected: string;
|
|
39
|
+
onChange: (value: string) => void;
|
|
40
|
+
disabled?: boolean;
|
|
41
|
+
ariaLabel?: string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Horizontal iOS-style segmented control with optional icons, keyboard roving, and `aria-pressed` sync.
|
|
45
|
+
*
|
|
46
|
+
* @param {SegmentedToggleProps} props - `options`, `selected`, and `onChange` are required.
|
|
47
|
+
* @returns {JSX.Element} The `radiogroup` container and one button per option.
|
|
48
|
+
*/
|
|
49
|
+
export declare function SegmentedToggle({ options, size, className, optionClassName, selected, onChange, disabled, ariaLabel, }: SegmentedToggleProps): import("react/jsx-runtime").JSX.Element;
|
|
50
|
+
export {};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import "./side-panel.css";
|
|
2
|
+
import type React from "react";
|
|
3
|
+
/**
|
|
4
|
+
* Slide-in panel (drawer) props: **controlled** `isOpen`; focus trap and Escape close when open.
|
|
5
|
+
*
|
|
6
|
+
* @property {boolean} isOpen - When `true`, mounts the portal and traps focus.
|
|
7
|
+
* @property {() => void} onClose - Called from the close button and Escape.
|
|
8
|
+
* @property {"left"|"right"} [position] - Slide origin. Default `"right"`.
|
|
9
|
+
* @property {"sm"|"md"|"lg"} [size] - Panel width preset. Default `"md"`.
|
|
10
|
+
* @property {React.ReactNode} children - Main scrollable body between header and optional `footer`.
|
|
11
|
+
*/
|
|
12
|
+
interface SidePanelProps {
|
|
13
|
+
isOpen: boolean;
|
|
14
|
+
onClose: () => void;
|
|
15
|
+
position?: "left" | "right";
|
|
16
|
+
size?: "sm" | "md" | "lg";
|
|
17
|
+
title?: string;
|
|
18
|
+
description?: string;
|
|
19
|
+
children: React.ReactNode;
|
|
20
|
+
footer?: React.ReactNode;
|
|
21
|
+
className?: string;
|
|
22
|
+
titleContainerClassName?: string;
|
|
23
|
+
titleClassName?: string;
|
|
24
|
+
descriptionClassName?: string;
|
|
25
|
+
closeButtonClassName?: string;
|
|
26
|
+
headerClassName?: string;
|
|
27
|
+
contentClassName?: string;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Off-canvas panel with title/description, default close control, and optional `footer` slot.
|
|
31
|
+
*
|
|
32
|
+
* @param {SidePanelProps} props - `isOpen` / `onClose` plus layout BEM class overrides.
|
|
33
|
+
* @returns {JSX.Element | null} Portal content when `isOpen`, else `null`.
|
|
34
|
+
*/
|
|
35
|
+
export declare const SidePanel: ({ isOpen, onClose, position, size, title, description, children, footer, className, titleContainerClassName, titleClassName, descriptionClassName, closeButtonClassName, headerClassName, contentClassName, }: SidePanelProps) => JSX.Element | null;
|
|
36
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import "./skeleton.css";
|
|
2
|
+
import type { HTMLAttributes } from "react";
|
|
3
|
+
type SkeletonVariant = "text" | "rectangular" | "circular";
|
|
4
|
+
interface SkeletonProps extends Omit<HTMLAttributes<HTMLDivElement>, "children"> {
|
|
5
|
+
variant?: SkeletonVariant;
|
|
6
|
+
width?: string | number;
|
|
7
|
+
height?: string | number;
|
|
8
|
+
size?: "sm" | "md" | "lg";
|
|
9
|
+
animate?: boolean;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Placeholder block with a muted surface and a subtle shimmer aligned to the design tokens.
|
|
13
|
+
*/
|
|
14
|
+
export declare const Skeleton: ({ variant, width, height, size, animate, className, style, role, "aria-label": ariaLabel, ...props }: SkeletonProps) => import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import "./slider.css";
|
|
2
|
+
import type React from "react";
|
|
3
|
+
import type { TooltipPosition } from "../../../types";
|
|
4
|
+
export type SliderMark = {
|
|
5
|
+
value: number;
|
|
6
|
+
label?: string;
|
|
7
|
+
};
|
|
8
|
+
type BaseSliderProps = {
|
|
9
|
+
min?: number;
|
|
10
|
+
max?: number;
|
|
11
|
+
step?: number;
|
|
12
|
+
disabled?: boolean;
|
|
13
|
+
label?: string;
|
|
14
|
+
tooltip?: string;
|
|
15
|
+
tooltipPosition?: TooltipPosition;
|
|
16
|
+
note?: string;
|
|
17
|
+
error?: string;
|
|
18
|
+
containerClassName?: string;
|
|
19
|
+
className?: string;
|
|
20
|
+
marks?: SliderMark[];
|
|
21
|
+
showExtents?: boolean;
|
|
22
|
+
showValue?: boolean;
|
|
23
|
+
showTooltip?: boolean;
|
|
24
|
+
name?: string;
|
|
25
|
+
formatValue?: (value: number) => string;
|
|
26
|
+
} & Omit<React.HTMLAttributes<HTMLDivElement>, "onChange" | "defaultValue" | "value">;
|
|
27
|
+
type SingleSliderProps = BaseSliderProps & {
|
|
28
|
+
range?: false;
|
|
29
|
+
value?: number;
|
|
30
|
+
defaultValue?: number;
|
|
31
|
+
onValueChange?: (value: number) => void;
|
|
32
|
+
};
|
|
33
|
+
type RangeSliderProps = BaseSliderProps & {
|
|
34
|
+
range: true;
|
|
35
|
+
value?: [number, number];
|
|
36
|
+
defaultValue?: [number, number];
|
|
37
|
+
onValueChange?: (value: [number, number]) => void;
|
|
38
|
+
minDistance?: number;
|
|
39
|
+
};
|
|
40
|
+
type SliderProps = SingleSliderProps | RangeSliderProps;
|
|
41
|
+
/**
|
|
42
|
+
* Single-thumb or dual-thumb range slider with keyboard support, optional marks,
|
|
43
|
+
* tooltips, and field chrome (label, error, note) consistent with `Input`.
|
|
44
|
+
*/
|
|
45
|
+
export declare function Slider(props: SliderProps): import("react/jsx-runtime").JSX.Element;
|
|
46
|
+
export {};
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import "./table.css";
|
|
2
|
+
import React from "react";
|
|
3
|
+
/**
|
|
4
|
+
* Sort state for a column: ascending, descending, or unsorted.
|
|
5
|
+
* @type {("asc"|"desc"|null)}
|
|
6
|
+
*/
|
|
7
|
+
export type SortDirection = "asc" | "desc" | null;
|
|
8
|
+
/**
|
|
9
|
+
* One column: accessor `key` maps to `row[key]`, with optional `render` for custom cells.
|
|
10
|
+
* @template T - Row type.
|
|
11
|
+
* @property {string} key - Object key on each row, or a synthetic key for custom columns.
|
|
12
|
+
* @property {boolean} [sortable] - When `true` and `onSort` is provided, header is clickable.
|
|
13
|
+
* @property {function(unknown, T): React.ReactNode} [render] - If omitted, `String(row[key])` is used.
|
|
14
|
+
*/
|
|
15
|
+
export interface TableColumn<T> {
|
|
16
|
+
key: string;
|
|
17
|
+
label: string;
|
|
18
|
+
sortable?: boolean;
|
|
19
|
+
minWidth?: string;
|
|
20
|
+
maxWidth?: string;
|
|
21
|
+
width?: string;
|
|
22
|
+
render?: (value: unknown, row: T) => React.ReactNode;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* @template T - Row object type; keys should match `TableColumn.key` where possible.
|
|
26
|
+
* Full data grid: sort, optional row selection, column edit popover (drag/drop + visibility), pagination, loading.
|
|
27
|
+
*
|
|
28
|
+
* @property {TableColumn<T>[]} columns - Column defs; can include a synthetic `__selection` for checkboxes.
|
|
29
|
+
* @property {T[]} data - Rows to render; order is preserved.
|
|
30
|
+
* @property {string} [sortKey] - **Controlled** sort column; use with `sortDirection` and `onSort`.
|
|
31
|
+
* @property {SortDirection} [sortDirection] - Current direction for `sortKey`.
|
|
32
|
+
* @property {boolean} [columnsEditable] - Enables “Edit columns” popover. Default `false`.
|
|
33
|
+
* @property {string[]} [visibleColumns] - **Controlled** list of column keys to show. Pair with `onVisibleColumnsChange`.
|
|
34
|
+
* @property {T[]} [selectedRows] - **Controlled** selected rows. Pair with `onSelectionChange` and `rowKey`.
|
|
35
|
+
* @property {keyof T} [rowKey] - Unique key field on `T` for selection identity. Often `"id"`.
|
|
36
|
+
* @property {number} [currentPage] - 1-based page index when `Pagination` is used.
|
|
37
|
+
* @property {string} [maxHeight] - Max height of the scrollable table body.
|
|
38
|
+
*/
|
|
39
|
+
interface TableProps<T extends Record<string, unknown>> {
|
|
40
|
+
columns: TableColumn<T>[];
|
|
41
|
+
data: T[];
|
|
42
|
+
isLoading?: boolean;
|
|
43
|
+
className?: string;
|
|
44
|
+
containerClassName?: string;
|
|
45
|
+
rowHeight?: string;
|
|
46
|
+
sortKey?: string;
|
|
47
|
+
sortDirection?: SortDirection;
|
|
48
|
+
columnsEditable?: boolean;
|
|
49
|
+
currentPage?: number;
|
|
50
|
+
totalPages?: number;
|
|
51
|
+
perPage?: number;
|
|
52
|
+
perPageOptions?: {
|
|
53
|
+
label: string;
|
|
54
|
+
value: number;
|
|
55
|
+
}[];
|
|
56
|
+
onSort?: (key: string, direction: SortDirection) => void;
|
|
57
|
+
onPageChange?: (page: number) => void;
|
|
58
|
+
onPerPageChange?: (perPage: number) => void;
|
|
59
|
+
onVisibleColumnsChange?: (keys: string[]) => void;
|
|
60
|
+
maxHeight?: string;
|
|
61
|
+
visibleColumns?: string[];
|
|
62
|
+
maxVisibleColumns?: number;
|
|
63
|
+
defaultVisibleColumns?: string[];
|
|
64
|
+
trailingColumns?: string[];
|
|
65
|
+
selectedRows?: T[];
|
|
66
|
+
onSelectionChange?: (rows: T[]) => void;
|
|
67
|
+
rowKey?: keyof T;
|
|
68
|
+
onRowClick?: (row: T, rowIndex: number) => void;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Renders a full-featured table: headers, body, optional selection column, sort indicators, edit-columns popover, and pagination.
|
|
72
|
+
*
|
|
73
|
+
* @template T - Row record type.
|
|
74
|
+
* @param {object} props - Column definitions, data, and optional controlled sorting / pagination / selection.
|
|
75
|
+
* @returns {JSX.Element} The table shell, scroll region, and optional `Pagination` / `Loader`.
|
|
76
|
+
*/
|
|
77
|
+
export declare function Table<T extends Record<string, unknown>>({ columns, data, isLoading, className, rowHeight, sortKey, sortDirection, onSort, currentPage, totalPages, perPage, perPageOptions, onPageChange, onPerPageChange, maxHeight, columnsEditable, containerClassName, visibleColumns, onVisibleColumnsChange, maxVisibleColumns, defaultVisibleColumns, trailingColumns, selectedRows, onSelectionChange, rowKey, onRowClick, }: TableProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
78
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import "./tabs.css";
|
|
2
|
+
/**
|
|
3
|
+
* One entry in a `Tabs` `tabs` list.
|
|
4
|
+
* @property {string} value - Emitted to `onChange` when the tab is activated.
|
|
5
|
+
*/
|
|
6
|
+
export type TabItem = {
|
|
7
|
+
label: string;
|
|
8
|
+
value: string;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* **Controlled** tab strip: `selectedTab` must match a `TabItem.value` for the active state.
|
|
13
|
+
*
|
|
14
|
+
* @property {TabItem[]} tabs - Tab metadata; `disabled` items are skipped in keyboard nav.
|
|
15
|
+
* @property {string} selectedTab - Current `value` of the active tab.
|
|
16
|
+
* @property {(value: string) => void} onChange - Fires with the new tab `value` on click or keyboard.
|
|
17
|
+
* @property {"sm"|"md"|"lg"} [size] - Size token for the tab list. Default `"md"`.
|
|
18
|
+
*/
|
|
19
|
+
interface TabsProps {
|
|
20
|
+
tabs: TabItem[];
|
|
21
|
+
selectedTab: string;
|
|
22
|
+
onChange: (tab: string) => void;
|
|
23
|
+
ariaLabel?: string;
|
|
24
|
+
size?: "sm" | "md" | "lg";
|
|
25
|
+
tabClassName?: string;
|
|
26
|
+
className?: string;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Renders a `tablist` with one `button` per tab, roving tabindex, and arrow-key / Home / End support.
|
|
30
|
+
*
|
|
31
|
+
* @param {TabsProps} props - `tabs` / `selectedTab` / `onChange` plus `ariaLabel` for the list.
|
|
32
|
+
* @returns {JSX.Element} The horizontal tab list.
|
|
33
|
+
*/
|
|
34
|
+
export declare const Tabs: ({ tabs, selectedTab, onChange, ariaLabel, size, tabClassName, className, }: TabsProps) => import("react/jsx-runtime").JSX.Element;
|
|
35
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import "./tag.css";
|
|
2
|
+
import React from "react";
|
|
3
|
+
/**
|
|
4
|
+
* Removable label chip with primary/secondary styles and sizes.
|
|
5
|
+
*
|
|
6
|
+
* @property {string} label - Visible text and remove `aria-label` source.
|
|
7
|
+
* @property {"primary"|"secondary"} [variant] - Color scheme. Default `"primary"`.
|
|
8
|
+
* @property {"sm"|"md"|"lg"} [size] - Typographic and hit-target scale. Default `"md"`.
|
|
9
|
+
* @property {() => void} onRemove - Fires when the user clicks the “×” control.
|
|
10
|
+
*/
|
|
11
|
+
type TagProps = {
|
|
12
|
+
label: string;
|
|
13
|
+
variant?: "primary" | "secondary";
|
|
14
|
+
size?: "sm" | "md" | "lg";
|
|
15
|
+
onRemove: () => void;
|
|
16
|
+
className?: string;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* A dismissible tag used in multi-selects and filter lists; forwards ref to the root `div`.
|
|
20
|
+
*
|
|
21
|
+
* @param {TagProps} props - `label`, `onRemove`, and presentation props.
|
|
22
|
+
* @param {React.Ref<HTMLDivElement>} ref - Root element ref.
|
|
23
|
+
* @returns {React.ReactElement} The tag row and remove button.
|
|
24
|
+
*/
|
|
25
|
+
export declare const Tag: React.ForwardRefExoticComponent<TagProps & React.RefAttributes<HTMLDivElement>>;
|
|
26
|
+
export {};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import "./textarea.css";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import type { TooltipPosition } from "../../../types";
|
|
4
|
+
/**
|
|
5
|
+
* Props for `Textarea`: extends `HTMLTextAreaElement` attributes (omits legacy HTML `size`).
|
|
6
|
+
*
|
|
7
|
+
* @property {string} [label] - Optional field label with optional info tooltip.
|
|
8
|
+
* @property {boolean} [showClear] - Renders clear when non-empty. Default `false`.
|
|
9
|
+
* @property {string} [note] - Helper line under the field.
|
|
10
|
+
* @property {string} [error] - Error line; invalid styling when set.
|
|
11
|
+
* @property {number} [maxLength] - When set, shows a live character counter vs this cap (e.g., 12/200).
|
|
12
|
+
* @property {"none"|"vertical"} [resize] - CSS resize mode. Default `"none"`.
|
|
13
|
+
*/
|
|
14
|
+
interface TextareaProps extends Omit<React.TextareaHTMLAttributes<HTMLTextAreaElement>, "size"> {
|
|
15
|
+
label?: string;
|
|
16
|
+
showClear?: boolean;
|
|
17
|
+
note?: string;
|
|
18
|
+
error?: string;
|
|
19
|
+
containerClassName?: string;
|
|
20
|
+
tooltip?: string;
|
|
21
|
+
tooltipPosition?: TooltipPosition;
|
|
22
|
+
maxLength?: number;
|
|
23
|
+
resize?: "none" | "vertical";
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Multi-line input with label, clear, optional counter from `maxLength`, and note/error rows.
|
|
27
|
+
*
|
|
28
|
+
* @param {TextareaProps} props - Native `textarea` props plus H2O chrome.
|
|
29
|
+
* @param {React.Ref<HTMLTextAreaElement>} ref - Forwarded to `<textarea>`.
|
|
30
|
+
* @returns {React.ReactElement} Labeled field wrapper and counter when applicable.
|
|
31
|
+
*/
|
|
32
|
+
export declare const Textarea: React.ForwardRefExoticComponent<TextareaProps & React.RefAttributes<HTMLTextAreaElement>>;
|
|
33
|
+
export {};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import "./time-picker.css";
|
|
2
|
+
/**
|
|
3
|
+
* Time selection UI: one clock or a start/end **range**; hour/minute columns with optional 12h format.
|
|
4
|
+
*
|
|
5
|
+
* @property {"single"|"range"} [mode] - `single` uses `value` as `string | null`; `range` as `[string|null, string|null]`. Default `"single"`.
|
|
6
|
+
* @property {string|null|[string|null,string|null]} [value] - `"HH:MM"`, partial `"HH:"` while picking hour, or `null` for empty. Range: tuple of same.
|
|
7
|
+
* @property {(v: string|null|[string|null,string|null]) => void} [onChange] - Emits the same shapes as `value` as the user picks.
|
|
8
|
+
* @property {12|24} [hourFormat] - 12- or 24-hour labels. Default `24`.
|
|
9
|
+
* @property {number} [minuteStep] - Minutes grid step, e.g. `5` → `00,05,…,55`. Default `5`.
|
|
10
|
+
*/
|
|
11
|
+
interface TimePickerProps {
|
|
12
|
+
mode?: "single" | "range";
|
|
13
|
+
value?: string | null | [string | null, string | null];
|
|
14
|
+
onChange?: (value: string | null | [string | null, string | null]) => void;
|
|
15
|
+
hourFormat?: 12 | 24;
|
|
16
|
+
minuteStep?: number;
|
|
17
|
+
startLabel?: string;
|
|
18
|
+
endLabel?: string;
|
|
19
|
+
disabled?: boolean;
|
|
20
|
+
className?: string;
|
|
21
|
+
error?: string;
|
|
22
|
+
note?: string;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Picker for a time or time range, with hour/minute dropdowns and optional labels or validation chrome.
|
|
26
|
+
*
|
|
27
|
+
* @param {TimePickerProps} props - Mode, `value`/`onChange` shape, and `hourFormat` / `minuteStep`.
|
|
28
|
+
* @returns {JSX.Element} The field group(s) and time lists when open.
|
|
29
|
+
*/
|
|
30
|
+
export declare const TimePicker: ({ mode, value, onChange, hourFormat, minuteStep, startLabel, endLabel, disabled, className, error, note, }: TimePickerProps) => import("react/jsx-runtime").JSX.Element;
|
|
31
|
+
export {};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import "./toast.css";
|
|
2
|
+
import type React from "react";
|
|
3
|
+
/**
|
|
4
|
+
* Color/semantic key for a toast: maps to icon and ARIA `role` (`error`/`warning` → `alert`, others often `status`).
|
|
5
|
+
* @type {("info"|"error"|"warning"|"success")}
|
|
6
|
+
*/
|
|
7
|
+
export type ToastVariant = "info" | "error" | "warning" | "success";
|
|
8
|
+
/**
|
|
9
|
+
* Viewport region where `ToastProvider` positions the toast container (CSS BEM variant).
|
|
10
|
+
* @type {("top-right"|"top-left"|"bottom-right"|"bottom-left"|"top-center"|"bottom-center")}
|
|
11
|
+
*/
|
|
12
|
+
export type ToastPosition = "top-right" | "top-left" | "bottom-right" | "bottom-left" | "top-center" | "bottom-center";
|
|
13
|
+
interface ToastAction {
|
|
14
|
+
label: string;
|
|
15
|
+
action: () => void;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Options passed to `useToast().show(options)`; describes one transient notification.
|
|
19
|
+
*
|
|
20
|
+
* @property {ToastVariant} variant - Visual/semantic style.
|
|
21
|
+
* @property {string} title - Bold heading in the toast header.
|
|
22
|
+
* @property {string} [description] - Optional body copy under the title.
|
|
23
|
+
* @property {ToastAction} [primaryAction] - Primary CTA; presence disables auto-dismiss by default.
|
|
24
|
+
* @property {ToastAction} [secondaryAction] - Secondary CTA; same as primary for auto-dismiss rules.
|
|
25
|
+
* @property {number} [duration] - Auto-close delay in ms. Default `5000`; `0` disables (`primaryAction` / `secondaryAction` also keep it open without timer).
|
|
26
|
+
*/
|
|
27
|
+
export interface ToastOptions {
|
|
28
|
+
variant: ToastVariant;
|
|
29
|
+
title: string;
|
|
30
|
+
description?: string;
|
|
31
|
+
primaryAction?: ToastAction;
|
|
32
|
+
secondaryAction?: ToastAction;
|
|
33
|
+
duration?: number;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Props for `ToastProvider` — mount once near the app root to enable `useToast()`.
|
|
37
|
+
*
|
|
38
|
+
* @property {React.ReactNode} children - Your app; context is available to descendants.
|
|
39
|
+
* @property {ToastPosition} [position] - Viewport region for the stack. Default `"bottom-right"`.
|
|
40
|
+
* @property {number} [maxToasts] - Max simultaneous toasts; older may be evicted. Default `5`.
|
|
41
|
+
*/
|
|
42
|
+
interface ToastProviderProps {
|
|
43
|
+
children: React.ReactNode;
|
|
44
|
+
position?: ToastPosition;
|
|
45
|
+
maxToasts?: number;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Context provider: renders `children` and a fixed-position stack of toasts; wires timers and `maxToasts` cap.
|
|
49
|
+
*
|
|
50
|
+
* @param {object} props - `position`, `maxToasts`, and `children`.
|
|
51
|
+
* @returns {JSX.Element} Provider element plus the global toast region.
|
|
52
|
+
*/
|
|
53
|
+
export declare const ToastProvider: React.FC<ToastProviderProps>;
|
|
54
|
+
export {};
|