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,35 @@
|
|
|
1
|
+
import "./toggle.css";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import type { TooltipPosition } from "../../../types";
|
|
4
|
+
type BaseToggleProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, "type" | "size"> & {
|
|
5
|
+
label?: string;
|
|
6
|
+
description?: string;
|
|
7
|
+
containerClassName?: string;
|
|
8
|
+
size?: "sm" | "md" | "lg";
|
|
9
|
+
error?: string;
|
|
10
|
+
note?: string;
|
|
11
|
+
tooltip?: string;
|
|
12
|
+
tooltipPosition?: TooltipPosition;
|
|
13
|
+
};
|
|
14
|
+
type CardToggleProps = BaseToggleProps & {
|
|
15
|
+
isCard: true;
|
|
16
|
+
isDraggable?: boolean;
|
|
17
|
+
};
|
|
18
|
+
type InlineToggleProps = BaseToggleProps & {
|
|
19
|
+
isCard?: false;
|
|
20
|
+
isDraggable?: never;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Discriminated union: `isCard: true` enables card layout and optional `isDraggable`; otherwise inline switch.
|
|
24
|
+
* `size` is visual (`"sm"|"md"|"lg"`), not the HTML `size` attribute.
|
|
25
|
+
*/
|
|
26
|
+
type ToggleProps = CardToggleProps | InlineToggleProps;
|
|
27
|
+
/**
|
|
28
|
+
* Switch UI backed by a checkbox input; supports inline, card, draggable card, and label tooltip.
|
|
29
|
+
*
|
|
30
|
+
* @param {ToggleProps} props - Union of card vs inline props; `ref` targets the `input`.
|
|
31
|
+
* @param {React.Ref<HTMLInputElement>} ref - Native checkbox ref.
|
|
32
|
+
* @returns {React.ReactElement} The toggle wrapper and `input` + visual thumb track.
|
|
33
|
+
*/
|
|
34
|
+
export declare const Toggle: React.ForwardRefExoticComponent<ToggleProps & React.RefAttributes<HTMLInputElement>>;
|
|
35
|
+
export {};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import "./tooltip.css";
|
|
2
|
+
import type React from "react";
|
|
3
|
+
import type { TooltipPosition } from "../../../types";
|
|
4
|
+
type BaseProps = {
|
|
5
|
+
position?: TooltipPosition;
|
|
6
|
+
className?: string;
|
|
7
|
+
contentClassName?: string;
|
|
8
|
+
children: React.ReactNode;
|
|
9
|
+
variant?: "dark" | "light";
|
|
10
|
+
delay?: number;
|
|
11
|
+
maxWidth?: string | number;
|
|
12
|
+
};
|
|
13
|
+
type TextTooltip = BaseProps & {
|
|
14
|
+
text: string;
|
|
15
|
+
content?: never;
|
|
16
|
+
};
|
|
17
|
+
type ContentTooltip = BaseProps & {
|
|
18
|
+
content: React.ReactNode;
|
|
19
|
+
text?: never;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Props for `Tooltip`: **either** `text` (plain string) **or** `content` (rich `ReactNode`), not both.
|
|
23
|
+
*
|
|
24
|
+
* @property {import("../../../types").TooltipPosition} [position] - Placement vs the trigger. Default `"top"`.
|
|
25
|
+
* @property {React.ReactNode} children - Trigger element(s) wrapped for hover/focus.
|
|
26
|
+
* @property {"dark"|"light"} [variant] - Surface style. Default `"dark"`.
|
|
27
|
+
* @property {number} [delay] - Show delay in ms. Default `0`.
|
|
28
|
+
* @property {string|number} [maxWidth] - Tooltip body max width (CSS value).
|
|
29
|
+
*/
|
|
30
|
+
type TooltipProps = TextTooltip | ContentTooltip;
|
|
31
|
+
/**
|
|
32
|
+
* Hover/focus tooltip: positions in a `createPortal` layer, hides on scroll (capture), and supports string or custom body.
|
|
33
|
+
*
|
|
34
|
+
* @param {TooltipProps} props - `text` XOR `content`, plus `children` as trigger.
|
|
35
|
+
* @returns {JSX.Element | null} Wrapper around `children` and the portaled bubble when visible.
|
|
36
|
+
*/
|
|
37
|
+
export declare const Tooltip: React.FC<TooltipProps>;
|
|
38
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Subpath entry: `h2o-library/types`
|
|
3
|
+
* Type-only re-exports (no runtime values). Requires TypeScript 5+.
|
|
4
|
+
*/
|
|
5
|
+
export type * from "../types";
|
|
6
|
+
export type * from "../hooks";
|
|
7
|
+
export type * from "../components";
|
|
8
|
+
export type * from "../charts";
|
|
9
|
+
export type * from "../utils";
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export * from "./src/use-click-outside";
|
|
2
|
+
export * from "./src/use-copy-to-clipboard";
|
|
3
|
+
export * from "./src/use-debounce";
|
|
4
|
+
export * from "./src/use-event-listener";
|
|
5
|
+
export { useEventListener as useEventListner } from "./src/use-event-listener";
|
|
6
|
+
export * from "./src/use-dropdown-position";
|
|
7
|
+
export * from "./src/use-focus-trap";
|
|
8
|
+
export * from "./src/use-idle";
|
|
9
|
+
export * from "./src/use-interval";
|
|
10
|
+
export * from "./src/use-hover";
|
|
11
|
+
export * from "./src/use-key-press";
|
|
12
|
+
export * from "./src/use-long-press";
|
|
13
|
+
export * from "./src/use-media-query";
|
|
14
|
+
export * from "./src/use-mouse";
|
|
15
|
+
export * from "./src/use-timeout";
|
|
16
|
+
export { useToast, ToastContext, type ToastContextType } from "./src/use-toast";
|
|
17
|
+
export * from "./src/use-window-scroll";
|
|
18
|
+
export * from "./src/use-window-size";
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { RefObject } from "react";
|
|
2
|
+
type Handler = (event: MouseEvent | TouchEvent) => void;
|
|
3
|
+
/**
|
|
4
|
+
* Run a handler when the user clicks/taps outside a referenced element.
|
|
5
|
+
*
|
|
6
|
+
* Commonly used to close popovers, dropdowns, menus, and dialogs.
|
|
7
|
+
*
|
|
8
|
+
* @param ref - Element ref that defines the “inside” area.
|
|
9
|
+
* @param handler - Called when an outside interaction happens.
|
|
10
|
+
* @param mouseEvent - Which mouse event to listen for (defaults to `"mousedown"`).
|
|
11
|
+
*/
|
|
12
|
+
export declare function useClickOutside<T extends HTMLElement = HTMLElement>(ref: RefObject<T>, handler: Handler, mouseEvent?: "mousedown" | "mouseup"): void;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type UseCopyToClipboardState = {
|
|
2
|
+
copied: boolean;
|
|
3
|
+
error: Error | null;
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* Copy text to the system clipboard and track success for UI feedback.
|
|
7
|
+
*
|
|
8
|
+
* @param resetDelay - If set, `copied` resets to `false` after this many ms. @defaultValue 2000
|
|
9
|
+
* @returns `copy` function and `copied` / `error` state.
|
|
10
|
+
*/
|
|
11
|
+
export declare function useCopyToClipboard(resetDelay?: number): {
|
|
12
|
+
readonly copy: (text: string) => Promise<boolean>;
|
|
13
|
+
readonly copied: boolean;
|
|
14
|
+
readonly error: Error | null;
|
|
15
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns a value that only updates `delay` ms after `value` stops changing
|
|
3
|
+
* (leading/trailing: trailing only).
|
|
4
|
+
*
|
|
5
|
+
* @param value - Source value (often a string from an input).
|
|
6
|
+
* @param delay - Debounce window in ms.
|
|
7
|
+
* @returns The last stable value after the quiet period.
|
|
8
|
+
*/
|
|
9
|
+
export declare function useDebounce<T>(value: T, delay: number): T;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { RefObject } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Decide whether a dropdown/menu should open above or below its trigger.
|
|
4
|
+
*
|
|
5
|
+
* @param containerRef - Ref to the trigger/container element.
|
|
6
|
+
* @param isOpen - Only measures while open.
|
|
7
|
+
* @param direction - Force `"top"`/`"bottom"` or let it auto-detect.
|
|
8
|
+
* @param menuHeight - Expected menu height (px) used for the calculation.
|
|
9
|
+
*/
|
|
10
|
+
export declare function useDropdownPosition(containerRef: RefObject<HTMLElement>, isOpen: boolean, direction?: "top" | "bottom" | "auto", menuHeight?: number): "top" | "bottom";
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { RefObject } from "react";
|
|
2
|
+
type AddOptions = boolean | AddEventListenerOptions;
|
|
3
|
+
/**
|
|
4
|
+
* Subscribes to a DOM `EventTarget` and keeps the latest `handler` without
|
|
5
|
+
* re-attaching on every render.
|
|
6
|
+
*
|
|
7
|
+
* @param event - Event name (e.g. `\"resize\"`, `\"click\"`).
|
|
8
|
+
* @param handler - Listener invoked when the event fires.
|
|
9
|
+
* @param target - `window` when `undefined`, nothing when `null`, the ref’s
|
|
10
|
+
* `current` when a ref, or a raw element.
|
|
11
|
+
* @param options - Same as `addEventListener`’s third argument.
|
|
12
|
+
*/
|
|
13
|
+
export declare function useEventListener<K extends keyof WindowEventMap>(event: K, handler: (ev: WindowEventMap[K]) => void, target?: RefObject<EventTarget | null> | EventTarget | null, options?: AddOptions): void;
|
|
14
|
+
export declare function useEventListener(event: string, handler: (ev: Event) => void, target?: RefObject<EventTarget | null> | EventTarget | null, options?: AddOptions): void;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { RefObject } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Trap keyboard focus inside a container while `active` is true.
|
|
4
|
+
*
|
|
5
|
+
* @param ref - Container element that should contain focus.
|
|
6
|
+
* @param active - Enables/disables the trap.
|
|
7
|
+
*/
|
|
8
|
+
export declare function useFocusTrap(ref: RefObject<HTMLElement | null>, active: boolean): void;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tracks whether the pointer is over a given element.
|
|
3
|
+
*
|
|
4
|
+
* @returns A tuple: `isHovered` and a **ref callback** to pass to a host element’s
|
|
5
|
+
* `ref` prop (stores the node and wires `mouseenter` / `mouseleave`).
|
|
6
|
+
*/
|
|
7
|
+
export declare function useHover<T extends HTMLElement = HTMLElement>(): [
|
|
8
|
+
boolean,
|
|
9
|
+
(node: T | null) => void
|
|
10
|
+
];
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type UseIdleOptions = {
|
|
2
|
+
/**
|
|
3
|
+
* DOM events on `window` that reset the idle timer. @defaultValue common
|
|
4
|
+
* user interaction events.
|
|
5
|
+
*/
|
|
6
|
+
events?: Array<keyof WindowEventMap>;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Returns `true` when the user has been inactive (no registered events) for at least `ms`.
|
|
10
|
+
*
|
|
11
|
+
* @param ms - Idle duration in milliseconds.
|
|
12
|
+
* @param options - Optional list of `window` events that count as activity.
|
|
13
|
+
* @returns Whether the user is currently considered idle.
|
|
14
|
+
*/
|
|
15
|
+
export declare function useIdle(ms: number, options?: UseIdleOptions): boolean;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Repeats `callback` every `delay` ms. Pauses when `delay` is `null`.
|
|
3
|
+
*
|
|
4
|
+
* @param callback - Function called on each tick.
|
|
5
|
+
* @param delay - Interval in ms, or `null` to clear the interval.
|
|
6
|
+
*/
|
|
7
|
+
export declare function useInterval(callback: () => void, delay: number | null): void;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
type KeyTarget = string | readonly string[];
|
|
2
|
+
/**
|
|
3
|
+
* Listens for `keydown` on `window` and either reports whether a key is held
|
|
4
|
+
* or runs a callback on each matching press.
|
|
5
|
+
*
|
|
6
|
+
* @param key - `KeyboardEvent.key` value, or a list of keys.
|
|
7
|
+
* @param handler - If provided, called for each matching `keydown`; no return value.
|
|
8
|
+
* @returns If `handler` is omitted: whether the key is currently held (`keydown`
|
|
9
|
+
* without a matching `keyup` yet). If `handler` is provided: `undefined`.
|
|
10
|
+
*/
|
|
11
|
+
export declare function useKeyPress(key: KeyTarget, handler: (event: KeyboardEvent) => void): void;
|
|
12
|
+
export declare function useKeyPress(key: KeyTarget, handler?: undefined): boolean;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { MouseEvent, PointerEvent } from "react";
|
|
2
|
+
export type UseLongPressOptions = {
|
|
3
|
+
delay?: number;
|
|
4
|
+
moveThreshold?: number;
|
|
5
|
+
onClick?: (event: MouseEvent<HTMLElement> | PointerEvent<HTMLElement>) => void;
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* Pointer handlers to attach to an element to detect a long-press (hold) vs a short click.
|
|
9
|
+
*
|
|
10
|
+
* @param onLongPress - Invoked if the pointer stays down for `delay` without excess movement.
|
|
11
|
+
* @param options - Timing, move tolerance, and optional short-click handler.
|
|
12
|
+
* @returns Props to spread on a host element (`onPointerDown`, `onPointerMove`, `onPointerUp`, etc.).
|
|
13
|
+
*/
|
|
14
|
+
export declare function useLongPress(onLongPress: (event: React.PointerEvent<HTMLElement>) => void, options?: UseLongPressOptions): {
|
|
15
|
+
readonly onPointerDown: (event: React.PointerEvent<HTMLElement>) => void;
|
|
16
|
+
readonly onPointerMove: (event: React.PointerEvent<HTMLElement>) => void;
|
|
17
|
+
readonly onPointerUp: (event: React.PointerEvent<HTMLElement>) => void;
|
|
18
|
+
readonly onPointerCancel: (event: React.PointerEvent<HTMLElement>) => void;
|
|
19
|
+
readonly onPointerLeave: (event: React.PointerEvent<HTMLElement>) => void;
|
|
20
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Subscribe to a media query and get whether it currently matches.
|
|
3
|
+
*
|
|
4
|
+
* @param query - Any valid CSS media query, e.g. `\"(min-width: 768px)\"`.
|
|
5
|
+
* @returns `true` when the query matches.
|
|
6
|
+
*/
|
|
7
|
+
export declare const useMediaQuery: (query: string) => boolean;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export type MouseState = {
|
|
2
|
+
x: number;
|
|
3
|
+
y: number;
|
|
4
|
+
hasMoved: boolean;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Tracks the latest pointer position from `window` `pointermove` / `mousemove` events.
|
|
8
|
+
*
|
|
9
|
+
* @param enabled - When `false`, stops listening. @defaultValue true
|
|
10
|
+
* @returns Last coordinates and whether a move has been observed.
|
|
11
|
+
*/
|
|
12
|
+
export declare function useMouse(enabled?: boolean): MouseState;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runs `callback` once after `delay` ms. The timer resets when `delay` or
|
|
3
|
+
* `callback` identity changes; set `delay` to `null` to cancel.
|
|
4
|
+
*
|
|
5
|
+
* @param callback - Function to invoke after the delay.
|
|
6
|
+
* @param delay - Milliseconds, or `null` to skip scheduling.
|
|
7
|
+
*/
|
|
8
|
+
export declare function useTimeout(callback: () => void, delay: number | null): void;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { ToastOptions } from "../../components/src/toast/toast";
|
|
2
|
+
/**
|
|
3
|
+
* Return type of `useToast()`: imperative API to show and remove toasts.
|
|
4
|
+
*/
|
|
5
|
+
export interface ToastContextType {
|
|
6
|
+
/** Show a toast. Returns the toast id. */
|
|
7
|
+
show: (options: ToastOptions) => string;
|
|
8
|
+
/** Programmatically dismiss a toast by id. */
|
|
9
|
+
dismiss: (id: string) => void;
|
|
10
|
+
}
|
|
11
|
+
export declare const ToastContext: import("react").Context<ToastContextType | undefined>;
|
|
12
|
+
/**
|
|
13
|
+
* Subscribes to the toast context; throws if `ToastProvider` is not an ancestor.
|
|
14
|
+
*/
|
|
15
|
+
export declare const useToast: () => ToastContextType;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export type WindowScrollState = {
|
|
2
|
+
x: number;
|
|
3
|
+
y: number;
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* Subscribes to `window` scroll and returns the current `scrollX` / `scrollY`.
|
|
7
|
+
*
|
|
8
|
+
* @returns Latest scroll offsets; `{ x: 0, y: 0 }` during SSR.
|
|
9
|
+
*/
|
|
10
|
+
export declare function useWindowScroll(): WindowScrollState;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export type WindowSize = {
|
|
2
|
+
width: number;
|
|
3
|
+
height: number;
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* Subscribes to `window` `resize` and returns `innerWidth` / `innerHeight`.
|
|
7
|
+
*
|
|
8
|
+
* @returns Viewport size; `{ width: 0, height: 0 }` before mount / during SSR.
|
|
9
|
+
*/
|
|
10
|
+
export declare function useWindowSize(): WindowSize;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,2 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Subpath entry: `h2o-library/types`
|
|
3
|
+
* Type-only re-exports (no runtime values). Requires TypeScript 5+.
|
|
4
|
+
*/
|
|
5
|
+
export type * from "./types";
|
|
6
|
+
export type * from "./hooks";
|
|
7
|
+
export type * from "./components";
|
|
8
|
+
export type * from "./charts";
|
|
9
|
+
export type * from "./utils";
|
package/dist/types/src/icon.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export type IconType = "
|
|
1
|
+
export type IconType = "alert" | "align-center" | "align-left" | "align-right" | "arrow-down" | "arrow-down-narrow-wide" | "arrow-down-wide-narrow" | "arrow-left" | "arrow-right" | "arrow-up" | "arrow-up-narrow-wide" | "arrow-up-wide-narrow" | "bell" | "bell-ring" | "bold" | "building" | "calendar" | "calendar-check" | "calendar-clock" | "calendar-cog" | "calendar-plus" | "calendar-sync" | "camera" | "check" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chevrons-x" | "chevrons-y" | "clock" | "clock-alert" | "close" | "coffee" | "comment" | "compact-view" | "copy" | "cut" | "dashboard" | "dots-horizontal" | "dots-vertical" | "double-chevron-left" | "double-chevron-right" | "download" | "drag-handle" | "edit" | "envelope" | "external-link" | "eye" | "eye-off" | "file" | "file-code" | "filter" | "filter-plus" | "flag" | "forbidden" | "grid" | "hint" | "hospital" | "home" | "image" | "inbox" | "info" | "italic" | "layout" | "library" | "link" | "list" | "list-ol" | "list-ul" | "log-in" | "log-out" | "maximize" | "message" | "minimize" | "minus" | "note" | "paste" | "phone" | "plus" | "quote" | "redo" | "refresh" | "relaxed-view" | "search" | "send" | "settings" | "shuffle" | "stats" | "strikethrough" | "swap" | "swap-vertical" | "trash" | "underline" | "undo" | "upload" | "user" | "user-check" | "users" | "wand" | "zoom-in" | "zoom-out" | "sort" | "sun" | "moon" | "tool" | "hook" | "component" | "arrow-up-right" | "chart" | "star" | "sparkles" | "terminal" | "shield" | "code";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type IconType = "alert" | "align-center" | "align-left" | "align-right" | "arrow-down" | "arrow-down-narrow-wide" | "arrow-down-wide-narrow" | "arrow-left" | "arrow-right" | "arrow-up" | "arrow-up-narrow-wide" | "arrow-up-wide-narrow" | "bell" | "bell-ring" | "bold" | "building" | "calendar" | "calendar-check" | "calendar-clock" | "calendar-cog" | "calendar-plus" | "calendar-sync" | "camera" | "check" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chevrons-x" | "chevrons-y" | "clock" | "clock-alert" | "close" | "coffee" | "comment" | "compact-view" | "copy" | "cut" | "dashboard" | "dots-horizontal" | "dots-vertical" | "double-chevron-left" | "double-chevron-right" | "download" | "drag-handle" | "edit" | "envelope" | "external-link" | "eye" | "eye-off" | "file" | "file-code" | "filter" | "filter-plus" | "flag" | "forbidden" | "grid" | "hint" | "hospital" | "home" | "image" | "inbox" | "info" | "italic" | "layout" | "library" | "link" | "list" | "list-ol" | "list-ul" | "log-in" | "log-out" | "maximize" | "message" | "minimize" | "minus" | "note" | "paste" | "phone" | "plus" | "quote" | "redo" | "refresh" | "relaxed-view" | "search" | "send" | "settings" | "shuffle" | "stats" | "strikethrough" | "swap" | "swap-vertical" | "trash" | "underline" | "undo" | "upload" | "user" | "user-check" | "users" | "wand" | "zoom-in" | "zoom-out" | "sort" | "sun" | "moon" | "tool" | "hook" | "component" | "arrow-up-right" | "chart" | "star" | "sparkles" | "terminal" | "shield" | "code";
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @returns A new list with only the first occurrence of each value (uses `Set`, reference equality for objects).
|
|
3
|
+
*/
|
|
4
|
+
export declare function unique<T>(array: readonly T[]): T[];
|
|
5
|
+
/**
|
|
6
|
+
* @param key - Returns a key used to de-dupe; first item wins.
|
|
7
|
+
*/
|
|
8
|
+
export declare function uniqueBy<T, K extends string | number | boolean | bigint | null | undefined>(array: readonly T[], key: (item: T) => K): T[];
|
|
9
|
+
/**
|
|
10
|
+
* @returns Record: each key maps to items in that group.
|
|
11
|
+
*/
|
|
12
|
+
export declare function groupBy<T, K extends string | number | symbol>(array: readonly T[], key: (item: T) => K): Record<K, T[]>;
|
|
13
|
+
/**
|
|
14
|
+
* @returns Tuple `[passing, failing]`.
|
|
15
|
+
*/
|
|
16
|
+
export declare function partition<T>(array: readonly T[], predicate: (item: T) => boolean): [T[], T[]];
|
|
17
|
+
/**
|
|
18
|
+
* Non-mutating sort by a string or number key. `undefined` sorts last in ascending order.
|
|
19
|
+
*/
|
|
20
|
+
export declare function sortBy<T>(array: readonly T[], key: (item: T) => string | number | undefined, order?: "asc" | "desc"): T[];
|
|
21
|
+
/**
|
|
22
|
+
* If `end` is omitted, returns `0..n-1`. Otherwise returns numbers from `start` (inclusive) to `end` (exclusive) with `step`.
|
|
23
|
+
*/
|
|
24
|
+
export declare function range(nOrStart: number, end?: number, step?: number): number[];
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resolves after `ms` (or immediately if `ms <= 0`).
|
|
3
|
+
*/
|
|
4
|
+
export declare function sleep(ms: number): Promise<void>;
|
|
5
|
+
export type DebouncedFunction<T extends (...args: never[]) => unknown> = ((...args: Parameters<T>) => void) & {
|
|
6
|
+
cancel: () => void;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Trailing debounce with `cancel()`.
|
|
10
|
+
*/
|
|
11
|
+
export declare function debounce<T extends (...args: never[]) => unknown>(func: T, waitMs: number): DebouncedFunction<T>;
|
|
12
|
+
export type ThrottledFunction<T extends (...args: never[]) => unknown> = ((...args: Parameters<T>) => void) & {
|
|
13
|
+
cancel: () => void;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Throttle with trailing scheduling; `cancel()` clears a pending run.
|
|
17
|
+
*/
|
|
18
|
+
export declare function throttle<T extends (...args: never[]) => unknown>(func: T, waitMs: number): ThrottledFunction<T>;
|
|
19
|
+
export type RetryOptions = {
|
|
20
|
+
attempts: number;
|
|
21
|
+
delay?: number;
|
|
22
|
+
backoff?: number;
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Retry async work with optional delay and multiplicative backoff between attempts.
|
|
26
|
+
*/
|
|
27
|
+
export declare function retry<T>(fn: () => Promise<T>, options: RetryOptions): Promise<T>;
|
|
28
|
+
/**
|
|
29
|
+
* Reject with `Error(message)` if `ms` elapses before `promise` settles.
|
|
30
|
+
* Does not cancel the underlying work.
|
|
31
|
+
*/
|
|
32
|
+
export declare function withTimeout<T>(promise: Promise<T>, ms: number, message?: string): Promise<T>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type ClassValue } from "clsx";
|
|
2
|
+
/**
|
|
3
|
+
* Tailwind-friendly `className` combiner. Uses `clsx` for conditional lists and
|
|
4
|
+
* `tailwind-merge` to drop conflicting utility classes.
|
|
5
|
+
*
|
|
6
|
+
* @param inputs - `clsx` input list (strings, objects, arrays, falsy to omit).
|
|
7
|
+
* @returns A single merged `class` string.
|
|
8
|
+
*/
|
|
9
|
+
export declare function cn(...inputs: ClassValue[]): string;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Human-readable file size; binary 1024 scale.
|
|
3
|
+
*/
|
|
4
|
+
export declare function formatBytes(bytes: number, decimals?: number): string;
|
|
5
|
+
/**
|
|
6
|
+
* `Intl.NumberFormat` wrapper. Non-finite returns `String(n)`.
|
|
7
|
+
*/
|
|
8
|
+
export declare function formatNumber(n: number, options?: Intl.NumberFormatOptions, locale?: string): string;
|
|
9
|
+
/**
|
|
10
|
+
* @param value - `Date` or ms timestamp; invalid date yields empty string
|
|
11
|
+
*/
|
|
12
|
+
export declare function formatDate(value: Date | number, options?: Intl.DateTimeFormatOptions, locale?: string): string;
|
|
13
|
+
/**
|
|
14
|
+
* `Intl.RelativeTimeFormat` for value vs base. Uses a coarse best unit.
|
|
15
|
+
*/
|
|
16
|
+
export declare function formatRelative(value: Date | number, base?: Date | number, locale?: string): string;
|
|
17
|
+
/**
|
|
18
|
+
* Same local calendar day.
|
|
19
|
+
*/
|
|
20
|
+
export declare function isSameDay(a: Date, b: Date): boolean;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param n - Value
|
|
3
|
+
* @param min - Inclusive min (swapped with max if `min > max`)
|
|
4
|
+
* @param max - Inclusive max
|
|
5
|
+
*/
|
|
6
|
+
export declare function clamp(n: number, min: number, max: number): number;
|
|
7
|
+
/**
|
|
8
|
+
* Round to a number of fraction digits.
|
|
9
|
+
*/
|
|
10
|
+
export declare function round(n: number, decimals?: number): number;
|
|
11
|
+
/**
|
|
12
|
+
* Linear interpolation: `a + (b - a) * t`.
|
|
13
|
+
*/
|
|
14
|
+
export declare function lerp(a: number, b: number, t: number): number;
|
|
15
|
+
/**
|
|
16
|
+
* Inclusive or exclusive (open interval) check between min and max.
|
|
17
|
+
*/
|
|
18
|
+
export declare function inRange(n: number, min: number, max: number, exclusive?: boolean): boolean;
|
|
19
|
+
/**
|
|
20
|
+
* safe `toFixed` for non-finite numbers: returns `fallback` instead of `"NaN"`.
|
|
21
|
+
*/
|
|
22
|
+
export declare function toFixedSafe(n: number, fractionDigits?: number, fallback?: string): string;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param object - Source object.
|
|
3
|
+
* @param keys - Keys to keep on the new object.
|
|
4
|
+
* @returns A new object with only the given keys.
|
|
5
|
+
*/
|
|
6
|
+
export declare function pick<T extends object, K extends keyof T>(object: T, keys: readonly K[]): Pick<T, K>;
|
|
7
|
+
/**
|
|
8
|
+
* @param object - Source object.
|
|
9
|
+
* @param keys - Keys to remove (shallow copy without these keys).
|
|
10
|
+
* @returns A new object without the listed keys.
|
|
11
|
+
*/
|
|
12
|
+
export declare function omit<T extends object, K extends keyof T>(object: T, keys: readonly K[]): Omit<T, K>;
|
|
13
|
+
/**
|
|
14
|
+
* @param value - Any value to test.
|
|
15
|
+
* @returns `true` if `value` is a plain object (including `{}`, not `null`, not a class instance).
|
|
16
|
+
*/
|
|
17
|
+
export declare function isPlainObject(value: unknown): value is Record<string, unknown>;
|
|
18
|
+
/**
|
|
19
|
+
* Shallow merge: later keys overwrite earlier ones. Arrays and nested objects
|
|
20
|
+
* are not deeply merged; use `deepMerge` for plain object trees.
|
|
21
|
+
*
|
|
22
|
+
* @param target - First object; result is a shallow copy of this plus sources.
|
|
23
|
+
* @param sources - Any number of partial objects to merge in order.
|
|
24
|
+
*/
|
|
25
|
+
export declare function merge<T extends object>(target: T, ...sources: Array<Partial<T> | object>): T;
|
|
26
|
+
/**
|
|
27
|
+
* Deep-merge plain objects only. Arrays are treated as values (replaced).
|
|
28
|
+
* `undefined` in the source does not clear an existing value.
|
|
29
|
+
*/
|
|
30
|
+
export declare function deepMerge<T extends object>(target: T, source: object): T;
|
|
31
|
+
/**
|
|
32
|
+
* @param a - First value.
|
|
33
|
+
* @param b - Second value.
|
|
34
|
+
* @returns `true` if both are `Object.is` or share same own enumerable keys with `Object.is` per key.
|
|
35
|
+
*/
|
|
36
|
+
export declare function isShallowEqual(a: unknown, b: unknown): boolean;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @returns First character uppercased, rest unchanged (empty string unchanged).
|
|
3
|
+
*/
|
|
4
|
+
export declare function capitalize(s: string): string;
|
|
5
|
+
/**
|
|
6
|
+
* Title-case by uppercasing the first char of each whitespace-separated word.
|
|
7
|
+
*/
|
|
8
|
+
export declare function toTitleCase(s: string): string;
|
|
9
|
+
/**
|
|
10
|
+
* @param maxLength - Max length of result string including `suffix` when truncating.
|
|
11
|
+
*/
|
|
12
|
+
export declare function truncate(s: string, maxLength: number, suffix?: string): string;
|
|
13
|
+
/**
|
|
14
|
+
* URL-ish slug: lowercase, trim, spaces/underscores to hyphens, strip non a-z0-9 hyphen.
|
|
15
|
+
*/
|
|
16
|
+
export declare function slugify(s: string): string;
|
|
17
|
+
/**
|
|
18
|
+
* `foo_bar` or `foo bar` to `fooBar`.
|
|
19
|
+
*/
|
|
20
|
+
export declare function camelCase(s: string): string;
|
|
21
|
+
/**
|
|
22
|
+
* `fooBar` or `foo bar` to `foo-bar`.
|
|
23
|
+
*/
|
|
24
|
+
export declare function kebabCase(s: string): string;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from "./src/chart/chart";
|
|
2
|
+
export * from "./src/bar/chart-bar";
|
|
3
|
+
export * from "./src/pie/chart-pie";
|
|
4
|
+
export * from "./src/line/chart-line";
|
|
5
|
+
export * from "./src/heatmap/chart-heatmap";
|
|
6
|
+
export * from "./src/stat/chart-stat";
|
|
7
|
+
export * from "./src/gantt/chart-gantt";
|
|
8
|
+
export * from "./src/legend/legend";
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type React from "react";
|
|
2
|
+
import "../../charts.css";
|
|
3
|
+
export interface BarChartDataPoint {
|
|
4
|
+
x: string;
|
|
5
|
+
[key: string]: number | string;
|
|
6
|
+
}
|
|
7
|
+
export interface BarSeriesConfig {
|
|
8
|
+
key: string;
|
|
9
|
+
label?: string;
|
|
10
|
+
color: string;
|
|
11
|
+
unit?: string;
|
|
12
|
+
stackId?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface BarChartProps {
|
|
15
|
+
data: BarChartDataPoint[];
|
|
16
|
+
bars: BarSeriesConfig[];
|
|
17
|
+
layout?: "single" | "grouped" | "stacked" | "grouped-stacked";
|
|
18
|
+
orientation?: "vertical" | "horizontal";
|
|
19
|
+
showGrid?: boolean;
|
|
20
|
+
showLegend?: boolean;
|
|
21
|
+
height?: number;
|
|
22
|
+
className?: string;
|
|
23
|
+
onXAxisTickClick?: (value: string | number, event: React.MouseEvent) => void;
|
|
24
|
+
onYAxisTickClick?: (value: string | number, event: React.MouseEvent) => void;
|
|
25
|
+
onBarClick?: (dataPoint: BarChartDataPoint, index: number, dataKey: string, event: React.MouseEvent<SVGElement>) => void;
|
|
26
|
+
}
|
|
27
|
+
export declare const BarChart: ({ data, bars, layout, orientation, showGrid, showLegend, height, className, onXAxisTickClick, onYAxisTickClick, onBarClick, }: BarChartProps) => import("react/jsx-runtime").JSX.Element;
|