@iamsaroj/smart-ui 0.2.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 +35 -0
- package/LICENSE +21 -0
- package/README.md +49 -0
- package/dist/calendar-engine/agenda-view.d.ts +8 -0
- package/dist/calendar-engine/agenda-view.d.ts.map +1 -0
- package/dist/calendar-engine/agenda-view.js +26 -0
- package/dist/calendar-engine/agenda-view.js.map +1 -0
- package/dist/calendar-engine/booking.d.ts +13 -0
- package/dist/calendar-engine/booking.d.ts.map +1 -0
- package/dist/calendar-engine/booking.js +45 -0
- package/dist/calendar-engine/booking.js.map +1 -0
- package/dist/calendar-engine/calendar-utils.d.ts +74 -0
- package/dist/calendar-engine/calendar-utils.d.ts.map +1 -0
- package/dist/calendar-engine/calendar-utils.js +221 -0
- package/dist/calendar-engine/calendar-utils.js.map +1 -0
- package/dist/calendar-engine/calendar.d.ts +62 -0
- package/dist/calendar-engine/calendar.d.ts.map +1 -0
- package/dist/calendar-engine/calendar.js +81 -0
- package/dist/calendar-engine/calendar.js.map +1 -0
- package/dist/calendar-engine/event-color.d.ts +20 -0
- package/dist/calendar-engine/event-color.d.ts.map +1 -0
- package/dist/calendar-engine/event-color.js +59 -0
- package/dist/calendar-engine/event-color.js.map +1 -0
- package/dist/calendar-engine/index.d.ts +11 -0
- package/dist/calendar-engine/index.d.ts.map +1 -0
- package/dist/calendar-engine/index.js +6 -0
- package/dist/calendar-engine/index.js.map +1 -0
- package/dist/calendar-engine/month-view.d.ts +10 -0
- package/dist/calendar-engine/month-view.d.ts.map +1 -0
- package/dist/calendar-engine/month-view.js +72 -0
- package/dist/calendar-engine/month-view.js.map +1 -0
- package/dist/calendar-engine/recurrence.d.ts +47 -0
- package/dist/calendar-engine/recurrence.d.ts.map +1 -0
- package/dist/calendar-engine/recurrence.js +209 -0
- package/dist/calendar-engine/recurrence.js.map +1 -0
- package/dist/calendar-engine/shared.d.ts +72 -0
- package/dist/calendar-engine/shared.d.ts.map +1 -0
- package/dist/calendar-engine/shared.js +34 -0
- package/dist/calendar-engine/shared.js.map +1 -0
- package/dist/calendar-engine/time-grid-view.d.ts +13 -0
- package/dist/calendar-engine/time-grid-view.d.ts.map +1 -0
- package/dist/calendar-engine/time-grid-view.js +203 -0
- package/dist/calendar-engine/time-grid-view.js.map +1 -0
- package/dist/calendar-engine/types.d.ts +138 -0
- package/dist/calendar-engine/types.d.ts.map +1 -0
- package/dist/calendar-engine/types.js +2 -0
- package/dist/calendar-engine/types.js.map +1 -0
- package/dist/calendar-engine/use-calendar.d.ts +7 -0
- package/dist/calendar-engine/use-calendar.d.ts.map +1 -0
- package/dist/calendar-engine/use-calendar.js +25 -0
- package/dist/calendar-engine/use-calendar.js.map +1 -0
- package/dist/components/accordion.d.ts +7 -0
- package/dist/components/accordion.d.ts.map +1 -0
- package/dist/components/accordion.js +10 -0
- package/dist/components/accordion.js.map +1 -0
- package/dist/components/alert-dialog.d.ts +19 -0
- package/dist/components/alert-dialog.d.ts.map +1 -0
- package/dist/components/alert-dialog.js +18 -0
- package/dist/components/alert-dialog.js.map +1 -0
- package/dist/components/alert.d.ts +11 -0
- package/dist/components/alert.d.ts.map +1 -0
- package/dist/components/alert.js +20 -0
- package/dist/components/alert.js.map +1 -0
- package/dist/components/aspect-ratio.d.ts +5 -0
- package/dist/components/aspect-ratio.d.ts.map +1 -0
- package/dist/components/aspect-ratio.js +7 -0
- package/dist/components/aspect-ratio.js.map +1 -0
- package/dist/components/avatar.d.ts +12 -0
- package/dist/components/avatar.d.ts.map +1 -0
- package/dist/components/avatar.js +11 -0
- package/dist/components/avatar.js.map +1 -0
- package/dist/components/badge.d.ts +8 -0
- package/dist/components/badge.d.ts.map +1 -0
- package/dist/components/badge.js +33 -0
- package/dist/components/badge.js.map +1 -0
- package/dist/components/breadcrumb.d.ts +11 -0
- package/dist/components/breadcrumb.d.ts.map +1 -0
- package/dist/components/breadcrumb.js +23 -0
- package/dist/components/breadcrumb.js.map +1 -0
- package/dist/components/button.d.ts +9 -0
- package/dist/components/button.d.ts.map +1 -0
- package/dist/components/button.js +34 -0
- package/dist/components/button.js.map +1 -0
- package/dist/components/calendar.d.ts +11 -0
- package/dist/components/calendar.d.ts.map +1 -0
- package/dist/components/calendar.js +77 -0
- package/dist/components/calendar.js.map +1 -0
- package/dist/components/card.d.ts +12 -0
- package/dist/components/card.d.ts.map +1 -0
- package/dist/components/card.js +11 -0
- package/dist/components/card.js.map +1 -0
- package/dist/components/carousel.d.ts +29 -0
- package/dist/components/carousel.d.ts.map +1 -0
- package/dist/components/carousel.js +94 -0
- package/dist/components/carousel.js.map +1 -0
- package/dist/components/chart.d.ts +45 -0
- package/dist/components/chart.d.ts.map +1 -0
- package/dist/components/chart.js +133 -0
- package/dist/components/chart.js.map +1 -0
- package/dist/components/checkbox.d.ts +4 -0
- package/dist/components/checkbox.d.ts.map +1 -0
- package/dist/components/checkbox.js +8 -0
- package/dist/components/checkbox.js.map +1 -0
- package/dist/components/collapsible.d.ts +6 -0
- package/dist/components/collapsible.d.ts.map +1 -0
- package/dist/components/collapsible.js +7 -0
- package/dist/components/collapsible.js.map +1 -0
- package/dist/components/combobox.d.ts +35 -0
- package/dist/components/combobox.d.ts.map +1 -0
- package/dist/components/combobox.js +45 -0
- package/dist/components/combobox.js.map +1 -0
- package/dist/components/command.d.ts +20 -0
- package/dist/components/command.d.ts.map +1 -0
- package/dist/components/command.js +18 -0
- package/dist/components/command.js.map +1 -0
- package/dist/components/context-menu.d.ts +30 -0
- package/dist/components/context-menu.d.ts.map +1 -0
- package/dist/components/context-menu.js +22 -0
- package/dist/components/context-menu.js.map +1 -0
- package/dist/components/data-table.d.ts +12 -0
- package/dist/components/data-table.d.ts.map +1 -0
- package/dist/components/data-table.js +44 -0
- package/dist/components/data-table.js.map +1 -0
- package/dist/components/date-picker.d.ts +33 -0
- package/dist/components/date-picker.d.ts.map +1 -0
- package/dist/components/date-picker.js +29 -0
- package/dist/components/date-picker.js.map +1 -0
- package/dist/components/dialog.d.ts +18 -0
- package/dist/components/dialog.d.ts.map +1 -0
- package/dist/components/dialog.js +18 -0
- package/dist/components/dialog.js.map +1 -0
- package/dist/components/drawer.d.ts +14 -0
- package/dist/components/drawer.d.ts.map +1 -0
- package/dist/components/drawer.js +15 -0
- package/dist/components/drawer.js.map +1 -0
- package/dist/components/dropdown-menu.d.ts +30 -0
- package/dist/components/dropdown-menu.d.ts.map +1 -0
- package/dist/components/dropdown-menu.js +22 -0
- package/dist/components/dropdown-menu.js.map +1 -0
- package/dist/components/hover-card.d.ts +6 -0
- package/dist/components/hover-card.d.ts.map +1 -0
- package/dist/components/hover-card.js +8 -0
- package/dist/components/hover-card.js.map +1 -0
- package/dist/components/input-group.d.ts +19 -0
- package/dist/components/input-group.d.ts.map +1 -0
- package/dist/components/input-group.js +46 -0
- package/dist/components/input-group.js.map +1 -0
- package/dist/components/input-otp.d.ts +12 -0
- package/dist/components/input-otp.d.ts.map +1 -0
- package/dist/components/input-otp.js +16 -0
- package/dist/components/input-otp.js.map +1 -0
- package/dist/components/input.d.ts +4 -0
- package/dist/components/input.d.ts.map +1 -0
- package/dist/components/input.js +6 -0
- package/dist/components/input.js.map +1 -0
- package/dist/components/kbd.d.ts +5 -0
- package/dist/components/kbd.d.ts.map +1 -0
- package/dist/components/kbd.js +6 -0
- package/dist/components/kbd.js.map +1 -0
- package/dist/components/label.d.ts +4 -0
- package/dist/components/label.d.ts.map +1 -0
- package/dist/components/label.js +5 -0
- package/dist/components/label.js.map +1 -0
- package/dist/components/menubar.d.ts +30 -0
- package/dist/components/menubar.d.ts.map +1 -0
- package/dist/components/menubar.js +24 -0
- package/dist/components/menubar.js.map +1 -0
- package/dist/components/navigation-menu.d.ts +12 -0
- package/dist/components/navigation-menu.d.ts.map +1 -0
- package/dist/components/navigation-menu.js +18 -0
- package/dist/components/navigation-menu.js.map +1 -0
- package/dist/components/pagination.d.ts +18 -0
- package/dist/components/pagination.d.ts.map +1 -0
- package/dist/components/pagination.js +13 -0
- package/dist/components/pagination.js.map +1 -0
- package/dist/components/popover.d.ts +10 -0
- package/dist/components/popover.d.ts.map +1 -0
- package/dist/components/popover.js +12 -0
- package/dist/components/popover.js.map +1 -0
- package/dist/components/progress.d.ts +8 -0
- package/dist/components/progress.d.ts.map +1 -0
- package/dist/components/progress.js +10 -0
- package/dist/components/progress.js.map +1 -0
- package/dist/components/radio-group.d.ts +6 -0
- package/dist/components/radio-group.d.ts.map +1 -0
- package/dist/components/radio-group.js +9 -0
- package/dist/components/radio-group.js.map +1 -0
- package/dist/components/scroll-area.d.ts +5 -0
- package/dist/components/scroll-area.d.ts.map +1 -0
- package/dist/components/scroll-area.js +8 -0
- package/dist/components/scroll-area.js.map +1 -0
- package/dist/components/select.d.ts +16 -0
- package/dist/components/select.d.ts.map +1 -0
- package/dist/components/select.js +16 -0
- package/dist/components/select.js.map +1 -0
- package/dist/components/separator.d.ts +4 -0
- package/dist/components/separator.d.ts.map +1 -0
- package/dist/components/separator.js +6 -0
- package/dist/components/separator.js.map +1 -0
- package/dist/components/sheet.d.ts +15 -0
- package/dist/components/sheet.d.ts.map +1 -0
- package/dist/components/sheet.js +18 -0
- package/dist/components/sheet.js.map +1 -0
- package/dist/components/sidebar.d.ts +64 -0
- package/dist/components/sidebar.d.ts.map +1 -0
- package/dist/components/sidebar.js +224 -0
- package/dist/components/sidebar.js.map +1 -0
- package/dist/components/skeleton.d.ts +3 -0
- package/dist/components/skeleton.d.ts.map +1 -0
- package/dist/components/skeleton.js +5 -0
- package/dist/components/skeleton.js.map +1 -0
- package/dist/components/slider.d.ts +4 -0
- package/dist/components/slider.d.ts.map +1 -0
- package/dist/components/slider.js +13 -0
- package/dist/components/slider.js.map +1 -0
- package/dist/components/sonner.d.ts +4 -0
- package/dist/components/sonner.d.ts.map +1 -0
- package/dist/components/sonner.js +25 -0
- package/dist/components/sonner.js.map +1 -0
- package/dist/components/switch.d.ts +6 -0
- package/dist/components/switch.d.ts.map +1 -0
- package/dist/components/switch.js +7 -0
- package/dist/components/switch.js.map +1 -0
- package/dist/components/table.d.ts +11 -0
- package/dist/components/table.d.ts.map +1 -0
- package/dist/components/table.js +12 -0
- package/dist/components/table.js.map +1 -0
- package/dist/components/tabs.d.ts +11 -0
- package/dist/components/tabs.d.ts.map +1 -0
- package/dist/components/tabs.js +23 -0
- package/dist/components/tabs.js.map +1 -0
- package/dist/components/textarea.d.ts +4 -0
- package/dist/components/textarea.d.ts.map +1 -0
- package/dist/components/textarea.js +5 -0
- package/dist/components/textarea.js.map +1 -0
- package/dist/components/toggle-group.d.ts +11 -0
- package/dist/components/toggle-group.d.ts.map +1 -0
- package/dist/components/toggle-group.js +22 -0
- package/dist/components/toggle-group.js.map +1 -0
- package/dist/components/toggle.d.ts +9 -0
- package/dist/components/toggle.d.ts.map +1 -0
- package/dist/components/toggle.js +25 -0
- package/dist/components/toggle.js.map +1 -0
- package/dist/components/tooltip.d.ts +7 -0
- package/dist/components/tooltip.d.ts.map +1 -0
- package/dist/components/tooltip.js +10 -0
- package/dist/components/tooltip.js.map +1 -0
- package/dist/data-grid/action-column-cell.d.ts +41 -0
- package/dist/data-grid/action-column-cell.d.ts.map +1 -0
- package/dist/data-grid/action-column-cell.js +114 -0
- package/dist/data-grid/action-column-cell.js.map +1 -0
- package/dist/data-grid/action-column.d.ts +144 -0
- package/dist/data-grid/action-column.d.ts.map +1 -0
- package/dist/data-grid/action-column.js +156 -0
- package/dist/data-grid/action-column.js.map +1 -0
- package/dist/data-grid/create-page-fetcher.d.ts +57 -0
- package/dist/data-grid/create-page-fetcher.d.ts.map +1 -0
- package/dist/data-grid/create-page-fetcher.js +41 -0
- package/dist/data-grid/create-page-fetcher.js.map +1 -0
- package/dist/data-grid/data-grid.d.ts +65 -0
- package/dist/data-grid/data-grid.d.ts.map +1 -0
- package/dist/data-grid/data-grid.js +95 -0
- package/dist/data-grid/data-grid.js.map +1 -0
- package/dist/data-grid/empty-state.d.ts +13 -0
- package/dist/data-grid/empty-state.d.ts.map +1 -0
- package/dist/data-grid/empty-state.js +6 -0
- package/dist/data-grid/empty-state.js.map +1 -0
- package/dist/data-grid/formula-guard.d.ts +22 -0
- package/dist/data-grid/formula-guard.d.ts.map +1 -0
- package/dist/data-grid/formula-guard.js +28 -0
- package/dist/data-grid/formula-guard.js.map +1 -0
- package/dist/data-grid/grid-internals.d.ts +16 -0
- package/dist/data-grid/grid-internals.d.ts.map +1 -0
- package/dist/data-grid/grid-internals.js +73 -0
- package/dist/data-grid/grid-internals.js.map +1 -0
- package/dist/data-grid/grid-theme.d.ts +8 -0
- package/dist/data-grid/grid-theme.d.ts.map +1 -0
- package/dist/data-grid/grid-theme.js +23 -0
- package/dist/data-grid/grid-theme.js.map +1 -0
- package/dist/data-grid/grid-toolbar.d.ts +40 -0
- package/dist/data-grid/grid-toolbar.d.ts.map +1 -0
- package/dist/data-grid/grid-toolbar.js +13 -0
- package/dist/data-grid/grid-toolbar.js.map +1 -0
- package/dist/data-grid/index.d.ts +10 -0
- package/dist/data-grid/index.d.ts.map +1 -0
- package/dist/data-grid/index.js +9 -0
- package/dist/data-grid/index.js.map +1 -0
- package/dist/data-grid/pagination.d.ts +146 -0
- package/dist/data-grid/pagination.d.ts.map +1 -0
- package/dist/data-grid/pagination.js +128 -0
- package/dist/data-grid/pagination.js.map +1 -0
- package/dist/data-grid/server-data-grid.d.ts +109 -0
- package/dist/data-grid/server-data-grid.d.ts.map +1 -0
- package/dist/data-grid/server-data-grid.js +240 -0
- package/dist/data-grid/server-data-grid.js.map +1 -0
- package/dist/data-grid/server-grid-internals.d.ts +79 -0
- package/dist/data-grid/server-grid-internals.d.ts.map +1 -0
- package/dist/data-grid/server-grid-internals.js +137 -0
- package/dist/data-grid/server-grid-internals.js.map +1 -0
- package/dist/data-grid/use-action-column.d.ts +22 -0
- package/dist/data-grid/use-action-column.d.ts.map +1 -0
- package/dist/data-grid/use-action-column.js +63 -0
- package/dist/data-grid/use-action-column.js.map +1 -0
- package/dist/data-grid/use-server-grid-selection.d.ts +35 -0
- package/dist/data-grid/use-server-grid-selection.d.ts.map +1 -0
- package/dist/data-grid/use-server-grid-selection.js +81 -0
- package/dist/data-grid/use-server-grid-selection.js.map +1 -0
- package/dist/form-engine/base.d.ts +19 -0
- package/dist/form-engine/base.d.ts.map +1 -0
- package/dist/form-engine/base.js +2 -0
- package/dist/form-engine/base.js.map +1 -0
- package/dist/form-engine/field-registry.d.ts +285 -0
- package/dist/form-engine/field-registry.d.ts.map +1 -0
- package/dist/form-engine/field-registry.js +306 -0
- package/dist/form-engine/field-registry.js.map +1 -0
- package/dist/form-engine/field-types.d.ts +201 -0
- package/dist/form-engine/field-types.d.ts.map +1 -0
- package/dist/form-engine/field-types.js +14 -0
- package/dist/form-engine/field-types.js.map +1 -0
- package/dist/form-engine/index.d.ts +20 -0
- package/dist/form-engine/index.d.ts.map +1 -0
- package/dist/form-engine/index.js +21 -0
- package/dist/form-engine/index.js.map +1 -0
- package/dist/form-engine/smart-checkbox-field.d.ts +5 -0
- package/dist/form-engine/smart-checkbox-field.d.ts.map +1 -0
- package/dist/form-engine/smart-checkbox-field.js +9 -0
- package/dist/form-engine/smart-checkbox-field.js.map +1 -0
- package/dist/form-engine/smart-checkbox-group-field.d.ts +10 -0
- package/dist/form-engine/smart-checkbox-group-field.d.ts.map +1 -0
- package/dist/form-engine/smart-checkbox-group-field.js +5 -0
- package/dist/form-engine/smart-checkbox-group-field.js.map +1 -0
- package/dist/form-engine/smart-combobox-field.d.ts +11 -0
- package/dist/form-engine/smart-combobox-field.d.ts.map +1 -0
- package/dist/form-engine/smart-combobox-field.js +5 -0
- package/dist/form-engine/smart-combobox-field.js.map +1 -0
- package/dist/form-engine/smart-date-field.d.ts +8 -0
- package/dist/form-engine/smart-date-field.d.ts.map +1 -0
- package/dist/form-engine/smart-date-field.js +17 -0
- package/dist/form-engine/smart-date-field.js.map +1 -0
- package/dist/form-engine/smart-date-range-field.d.ts +15 -0
- package/dist/form-engine/smart-date-range-field.d.ts.map +1 -0
- package/dist/form-engine/smart-date-range-field.js +25 -0
- package/dist/form-engine/smart-date-range-field.js.map +1 -0
- package/dist/form-engine/smart-datetime-field.d.ts +12 -0
- package/dist/form-engine/smart-datetime-field.d.ts.map +1 -0
- package/dist/form-engine/smart-datetime-field.js +12 -0
- package/dist/form-engine/smart-datetime-field.js.map +1 -0
- package/dist/form-engine/smart-form-internals.d.ts +14 -0
- package/dist/form-engine/smart-form-internals.d.ts.map +1 -0
- package/dist/form-engine/smart-form-internals.js +64 -0
- package/dist/form-engine/smart-form-internals.js.map +1 -0
- package/dist/form-engine/smart-form.d.ts +55 -0
- package/dist/form-engine/smart-form.d.ts.map +1 -0
- package/dist/form-engine/smart-form.js +229 -0
- package/dist/form-engine/smart-form.js.map +1 -0
- package/dist/form-engine/smart-input-field.d.ts +9 -0
- package/dist/form-engine/smart-input-field.d.ts.map +1 -0
- package/dist/form-engine/smart-input-field.js +5 -0
- package/dist/form-engine/smart-input-field.js.map +1 -0
- package/dist/form-engine/smart-month-field.d.ts +8 -0
- package/dist/form-engine/smart-month-field.d.ts.map +1 -0
- package/dist/form-engine/smart-month-field.js +12 -0
- package/dist/form-engine/smart-month-field.js.map +1 -0
- package/dist/form-engine/smart-multi-select-field.d.ts +11 -0
- package/dist/form-engine/smart-multi-select-field.d.ts.map +1 -0
- package/dist/form-engine/smart-multi-select-field.js +5 -0
- package/dist/form-engine/smart-multi-select-field.js.map +1 -0
- package/dist/form-engine/smart-number-field.d.ts +22 -0
- package/dist/form-engine/smart-number-field.d.ts.map +1 -0
- package/dist/form-engine/smart-number-field.js +115 -0
- package/dist/form-engine/smart-number-field.js.map +1 -0
- package/dist/form-engine/smart-password-field.d.ts +7 -0
- package/dist/form-engine/smart-password-field.d.ts.map +1 -0
- package/dist/form-engine/smart-password-field.js +5 -0
- package/dist/form-engine/smart-password-field.js.map +1 -0
- package/dist/form-engine/smart-radio-group-field.d.ts +10 -0
- package/dist/form-engine/smart-radio-group-field.d.ts.map +1 -0
- package/dist/form-engine/smart-radio-group-field.js +5 -0
- package/dist/form-engine/smart-radio-group-field.js.map +1 -0
- package/dist/form-engine/smart-segmented-field.d.ts +9 -0
- package/dist/form-engine/smart-segmented-field.d.ts.map +1 -0
- package/dist/form-engine/smart-segmented-field.js +5 -0
- package/dist/form-engine/smart-segmented-field.js.map +1 -0
- package/dist/form-engine/smart-select-field.d.ts +10 -0
- package/dist/form-engine/smart-select-field.d.ts.map +1 -0
- package/dist/form-engine/smart-select-field.js +5 -0
- package/dist/form-engine/smart-select-field.js.map +1 -0
- package/dist/form-engine/smart-slug-field.d.ts +12 -0
- package/dist/form-engine/smart-slug-field.d.ts.map +1 -0
- package/dist/form-engine/smart-slug-field.js +14 -0
- package/dist/form-engine/smart-slug-field.js.map +1 -0
- package/dist/form-engine/smart-switch-field.d.ts +5 -0
- package/dist/form-engine/smart-switch-field.d.ts.map +1 -0
- package/dist/form-engine/smart-switch-field.js +9 -0
- package/dist/form-engine/smart-switch-field.js.map +1 -0
- package/dist/form-engine/smart-tel-field.d.ts +7 -0
- package/dist/form-engine/smart-tel-field.d.ts.map +1 -0
- package/dist/form-engine/smart-tel-field.js +6 -0
- package/dist/form-engine/smart-tel-field.js.map +1 -0
- package/dist/form-engine/smart-text-editor-field.d.ts +15 -0
- package/dist/form-engine/smart-text-editor-field.d.ts.map +1 -0
- package/dist/form-engine/smart-text-editor-field.js +5 -0
- package/dist/form-engine/smart-text-editor-field.js.map +1 -0
- package/dist/form-engine/smart-textarea-field.d.ts +8 -0
- package/dist/form-engine/smart-textarea-field.d.ts.map +1 -0
- package/dist/form-engine/smart-textarea-field.js +5 -0
- package/dist/form-engine/smart-textarea-field.js.map +1 -0
- package/dist/form-engine/smart-time-field.d.ts +10 -0
- package/dist/form-engine/smart-time-field.d.ts.map +1 -0
- package/dist/form-engine/smart-time-field.js +5 -0
- package/dist/form-engine/smart-time-field.js.map +1 -0
- package/dist/form-engine/smart-time-range-field.d.ts +13 -0
- package/dist/form-engine/smart-time-range-field.d.ts.map +1 -0
- package/dist/form-engine/smart-time-range-field.js +5 -0
- package/dist/form-engine/smart-time-range-field.js.map +1 -0
- package/dist/form-engine/smart-year-field.d.ts +8 -0
- package/dist/form-engine/smart-year-field.d.ts.map +1 -0
- package/dist/form-engine/smart-year-field.js +5 -0
- package/dist/form-engine/smart-year-field.js.map +1 -0
- package/dist/form-engine/smart-yesno-field.d.ts +12 -0
- package/dist/form-engine/smart-yesno-field.d.ts.map +1 -0
- package/dist/form-engine/smart-yesno-field.js +14 -0
- package/dist/form-engine/smart-yesno-field.js.map +1 -0
- package/dist/hooks/use-mobile.d.ts +2 -0
- package/dist/hooks/use-mobile.d.ts.map +1 -0
- package/dist/hooks/use-mobile.js +17 -0
- package/dist/hooks/use-mobile.js.map +1 -0
- package/dist/lexical-text-editor/SmartTextEditor.d.ts +61 -0
- package/dist/lexical-text-editor/SmartTextEditor.d.ts.map +1 -0
- package/dist/lexical-text-editor/SmartTextEditor.js +145 -0
- package/dist/lexical-text-editor/SmartTextEditor.js.map +1 -0
- package/dist/lexical-text-editor/editor-nodes.d.ts +3 -0
- package/dist/lexical-text-editor/editor-nodes.d.ts.map +1 -0
- package/dist/lexical-text-editor/editor-nodes.js +25 -0
- package/dist/lexical-text-editor/editor-nodes.js.map +1 -0
- package/dist/lexical-text-editor/editor-theme.d.ts +3 -0
- package/dist/lexical-text-editor/editor-theme.d.ts.map +1 -0
- package/dist/lexical-text-editor/editor-theme.js +78 -0
- package/dist/lexical-text-editor/editor-theme.js.map +1 -0
- package/dist/lexical-text-editor/index.d.ts +8 -0
- package/dist/lexical-text-editor/index.d.ts.map +1 -0
- package/dist/lexical-text-editor/index.js +6 -0
- package/dist/lexical-text-editor/index.js.map +1 -0
- package/dist/lexical-text-editor/nodes/image-node.d.ts +41 -0
- package/dist/lexical-text-editor/nodes/image-node.d.ts.map +1 -0
- package/dist/lexical-text-editor/nodes/image-node.js +89 -0
- package/dist/lexical-text-editor/nodes/image-node.js.map +1 -0
- package/dist/lexical-text-editor/nodes/page-break-node.d.ts +25 -0
- package/dist/lexical-text-editor/nodes/page-break-node.d.ts.map +1 -0
- package/dist/lexical-text-editor/nodes/page-break-node.js +84 -0
- package/dist/lexical-text-editor/nodes/page-break-node.js.map +1 -0
- package/dist/lexical-text-editor/plugins/auto-link-plugin.d.ts +3 -0
- package/dist/lexical-text-editor/plugins/auto-link-plugin.d.ts.map +1 -0
- package/dist/lexical-text-editor/plugins/auto-link-plugin.js +12 -0
- package/dist/lexical-text-editor/plugins/auto-link-plugin.js.map +1 -0
- package/dist/lexical-text-editor/plugins/code-highlight-plugin.d.ts +6 -0
- package/dist/lexical-text-editor/plugins/code-highlight-plugin.d.ts.map +1 -0
- package/dist/lexical-text-editor/plugins/code-highlight-plugin.js +14 -0
- package/dist/lexical-text-editor/plugins/code-highlight-plugin.js.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/align-menu.d.ts +7 -0
- package/dist/lexical-text-editor/plugins/toolbar/align-menu.d.ts.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/align-menu.js +8 -0
- package/dist/lexical-text-editor/plugins/toolbar/align-menu.js.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/block-format-menu.d.ts +20 -0
- package/dist/lexical-text-editor/plugins/toolbar/block-format-menu.d.ts.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/block-format-menu.js +78 -0
- package/dist/lexical-text-editor/plugins/toolbar/block-format-menu.js.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/constants.d.ts +36 -0
- package/dist/lexical-text-editor/plugins/toolbar/constants.d.ts.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/constants.js +67 -0
- package/dist/lexical-text-editor/plugins/toolbar/constants.js.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/inline-marks.d.ts +14 -0
- package/dist/lexical-text-editor/plugins/toolbar/inline-marks.d.ts.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/inline-marks.js +129 -0
- package/dist/lexical-text-editor/plugins/toolbar/inline-marks.js.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/insert-menu.d.ts +8 -0
- package/dist/lexical-text-editor/plugins/toolbar/insert-menu.d.ts.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/insert-menu.js +87 -0
- package/dist/lexical-text-editor/plugins/toolbar/insert-menu.js.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/link-editor.d.ts +11 -0
- package/dist/lexical-text-editor/plugins/toolbar/link-editor.d.ts.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/link-editor.js +51 -0
- package/dist/lexical-text-editor/plugins/toolbar/link-editor.js.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/primitives.d.ts +39 -0
- package/dist/lexical-text-editor/plugins/toolbar/primitives.d.ts.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/primitives.js +47 -0
- package/dist/lexical-text-editor/plugins/toolbar/primitives.js.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/use-insert-commands.d.ts +9 -0
- package/dist/lexical-text-editor/plugins/toolbar/use-insert-commands.d.ts.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/use-insert-commands.js +29 -0
- package/dist/lexical-text-editor/plugins/toolbar/use-insert-commands.js.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/use-toolbar-state.d.ts +30 -0
- package/dist/lexical-text-editor/plugins/toolbar/use-toolbar-state.d.ts.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar/use-toolbar-state.js +128 -0
- package/dist/lexical-text-editor/plugins/toolbar/use-toolbar-state.js.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar-plugin.d.ts +8 -0
- package/dist/lexical-text-editor/plugins/toolbar-plugin.d.ts.map +1 -0
- package/dist/lexical-text-editor/plugins/toolbar-plugin.js +51 -0
- package/dist/lexical-text-editor/plugins/toolbar-plugin.js.map +1 -0
- package/dist/lexical-text-editor/sanitize.d.ts +24 -0
- package/dist/lexical-text-editor/sanitize.d.ts.map +1 -0
- package/dist/lexical-text-editor/sanitize.js +140 -0
- package/dist/lexical-text-editor/sanitize.js.map +1 -0
- package/dist/lib/format.d.ts +17 -0
- package/dist/lib/format.d.ts.map +1 -0
- package/dist/lib/format.js +40 -0
- package/dist/lib/format.js.map +1 -0
- package/dist/lib/leading-space.d.ts +28 -0
- package/dist/lib/leading-space.d.ts.map +1 -0
- package/dist/lib/leading-space.js +34 -0
- package/dist/lib/leading-space.js.map +1 -0
- package/dist/lib/utils.d.ts +3 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +4 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/lib/xlsx.d.ts +80 -0
- package/dist/lib/xlsx.d.ts.map +1 -0
- package/dist/lib/xlsx.js +377 -0
- package/dist/lib/xlsx.js.map +1 -0
- package/dist/search-engine/build-query.d.ts +29 -0
- package/dist/search-engine/build-query.d.ts.map +1 -0
- package/dist/search-engine/build-query.js +51 -0
- package/dist/search-engine/build-query.js.map +1 -0
- package/dist/search-engine/index.d.ts +15 -0
- package/dist/search-engine/index.d.ts.map +1 -0
- package/dist/search-engine/index.js +13 -0
- package/dist/search-engine/index.js.map +1 -0
- package/dist/search-engine/smart-search-form.d.ts +92 -0
- package/dist/search-engine/smart-search-form.d.ts.map +1 -0
- package/dist/search-engine/smart-search-form.js +136 -0
- package/dist/search-engine/smart-search-form.js.map +1 -0
- package/dist/search-engine/types.d.ts +40 -0
- package/dist/search-engine/types.d.ts.map +1 -0
- package/dist/search-engine/types.js +11 -0
- package/dist/search-engine/types.js.map +1 -0
- package/dist/smart-components/buttons/action-button.d.ts +66 -0
- package/dist/smart-components/buttons/action-button.d.ts.map +1 -0
- package/dist/smart-components/buttons/action-button.js +79 -0
- package/dist/smart-components/buttons/action-button.js.map +1 -0
- package/dist/smart-components/buttons/action-buttons.d.ts +122 -0
- package/dist/smart-components/buttons/action-buttons.d.ts.map +1 -0
- package/dist/smart-components/buttons/action-buttons.js +42 -0
- package/dist/smart-components/buttons/action-buttons.js.map +1 -0
- package/dist/smart-components/buttons/action-config.d.ts +181 -0
- package/dist/smart-components/buttons/action-config.d.ts.map +1 -0
- package/dist/smart-components/buttons/action-config.js +128 -0
- package/dist/smart-components/buttons/action-config.js.map +1 -0
- package/dist/smart-components/buttons/index.d.ts +4 -0
- package/dist/smart-components/buttons/index.d.ts.map +1 -0
- package/dist/smart-components/buttons/index.js +7 -0
- package/dist/smart-components/buttons/index.js.map +1 -0
- package/dist/smart-components/loading-overlay.d.ts +16 -0
- package/dist/smart-components/loading-overlay.d.ts.map +1 -0
- package/dist/smart-components/loading-overlay.js +13 -0
- package/dist/smart-components/loading-overlay.js.map +1 -0
- package/dist/smart-components/page/index.d.ts +19 -0
- package/dist/smart-components/page/index.d.ts.map +1 -0
- package/dist/smart-components/page/index.js +33 -0
- package/dist/smart-components/page/index.js.map +1 -0
- package/dist/smart-components/page/layouts/page-states.d.ts +17 -0
- package/dist/smart-components/page/layouts/page-states.d.ts.map +1 -0
- package/dist/smart-components/page/layouts/page-states.js +12 -0
- package/dist/smart-components/page/layouts/page-states.js.map +1 -0
- package/dist/smart-components/page/layouts/slot-buckets.d.ts +21 -0
- package/dist/smart-components/page/layouts/slot-buckets.d.ts.map +1 -0
- package/dist/smart-components/page/layouts/slot-buckets.js +2 -0
- package/dist/smart-components/page/layouts/slot-buckets.js.map +1 -0
- package/dist/smart-components/page/layouts/split-layout.d.ts +13 -0
- package/dist/smart-components/page/layouts/split-layout.d.ts.map +1 -0
- package/dist/smart-components/page/layouts/split-layout.js +14 -0
- package/dist/smart-components/page/layouts/split-layout.js.map +1 -0
- package/dist/smart-components/page/layouts/standard-layout.d.ts +18 -0
- package/dist/smart-components/page/layouts/standard-layout.d.ts.map +1 -0
- package/dist/smart-components/page/layouts/standard-layout.js +61 -0
- package/dist/smart-components/page/layouts/standard-layout.js.map +1 -0
- package/dist/smart-components/page/page-context.d.ts +51 -0
- package/dist/smart-components/page/page-context.d.ts.map +1 -0
- package/dist/smart-components/page/page-context.js +21 -0
- package/dist/smart-components/page/page-context.js.map +1 -0
- package/dist/smart-components/page/slot.d.ts +19 -0
- package/dist/smart-components/page/slot.d.ts.map +1 -0
- package/dist/smart-components/page/slot.js +18 -0
- package/dist/smart-components/page/slot.js.map +1 -0
- package/dist/smart-components/page/smart-grid-area.d.ts +75 -0
- package/dist/smart-components/page/smart-grid-area.d.ts.map +1 -0
- package/dist/smart-components/page/smart-grid-area.js +61 -0
- package/dist/smart-components/page/smart-grid-area.js.map +1 -0
- package/dist/smart-components/page/smart-page-container.d.ts +66 -0
- package/dist/smart-components/page/smart-page-container.d.ts.map +1 -0
- package/dist/smart-components/page/smart-page-container.js +93 -0
- package/dist/smart-components/page/smart-page-container.js.map +1 -0
- package/dist/smart-components/page/smart-page-content.d.ts +70 -0
- package/dist/smart-components/page/smart-page-content.d.ts.map +1 -0
- package/dist/smart-components/page/smart-page-content.js +78 -0
- package/dist/smart-components/page/smart-page-content.js.map +1 -0
- package/dist/smart-components/page/smart-page-empty.d.ts +47 -0
- package/dist/smart-components/page/smart-page-empty.d.ts.map +1 -0
- package/dist/smart-components/page/smart-page-empty.js +37 -0
- package/dist/smart-components/page/smart-page-empty.js.map +1 -0
- package/dist/smart-components/page/smart-page-error.d.ts +59 -0
- package/dist/smart-components/page/smart-page-error.d.ts.map +1 -0
- package/dist/smart-components/page/smart-page-error.js +45 -0
- package/dist/smart-components/page/smart-page-error.js.map +1 -0
- package/dist/smart-components/page/smart-page-filters.d.ts +38 -0
- package/dist/smart-components/page/smart-page-filters.d.ts.map +1 -0
- package/dist/smart-components/page/smart-page-filters.js +33 -0
- package/dist/smart-components/page/smart-page-filters.js.map +1 -0
- package/dist/smart-components/page/smart-page-footer.d.ts +49 -0
- package/dist/smart-components/page/smart-page-footer.d.ts.map +1 -0
- package/dist/smart-components/page/smart-page-footer.js +49 -0
- package/dist/smart-components/page/smart-page-footer.js.map +1 -0
- package/dist/smart-components/page/smart-page-header.d.ts +145 -0
- package/dist/smart-components/page/smart-page-header.d.ts.map +1 -0
- package/dist/smart-components/page/smart-page-header.js +129 -0
- package/dist/smart-components/page/smart-page-header.js.map +1 -0
- package/dist/smart-components/page/smart-page-hero.d.ts +43 -0
- package/dist/smart-components/page/smart-page-hero.d.ts.map +1 -0
- package/dist/smart-components/page/smart-page-hero.js +42 -0
- package/dist/smart-components/page/smart-page-hero.js.map +1 -0
- package/dist/smart-components/page/smart-page-loading.d.ts +31 -0
- package/dist/smart-components/page/smart-page-loading.d.ts.map +1 -0
- package/dist/smart-components/page/smart-page-loading.js +29 -0
- package/dist/smart-components/page/smart-page-loading.js.map +1 -0
- package/dist/smart-components/page/smart-page-search.d.ts +39 -0
- package/dist/smart-components/page/smart-page-search.d.ts.map +1 -0
- package/dist/smart-components/page/smart-page-search.js +38 -0
- package/dist/smart-components/page/smart-page-search.js.map +1 -0
- package/dist/smart-components/page/smart-page-section.d.ts +55 -0
- package/dist/smart-components/page/smart-page-section.d.ts.map +1 -0
- package/dist/smart-components/page/smart-page-section.js +41 -0
- package/dist/smart-components/page/smart-page-section.js.map +1 -0
- package/dist/smart-components/page/smart-page-status-bar.d.ts +34 -0
- package/dist/smart-components/page/smart-page-status-bar.d.ts.map +1 -0
- package/dist/smart-components/page/smart-page-status-bar.js +33 -0
- package/dist/smart-components/page/smart-page-status-bar.js.map +1 -0
- package/dist/smart-components/page/smart-page-tabs.d.ts +93 -0
- package/dist/smart-components/page/smart-page-tabs.d.ts.map +1 -0
- package/dist/smart-components/page/smart-page-tabs.js +87 -0
- package/dist/smart-components/page/smart-page-tabs.js.map +1 -0
- package/dist/smart-components/page/smart-page.d.ts +141 -0
- package/dist/smart-components/page/smart-page.d.ts.map +1 -0
- package/dist/smart-components/page/smart-page.js +295 -0
- package/dist/smart-components/page/smart-page.js.map +1 -0
- package/dist/smart-components/page/smart-sidebar.d.ts +70 -0
- package/dist/smart-components/page/smart-sidebar.d.ts.map +1 -0
- package/dist/smart-components/page/smart-sidebar.js +54 -0
- package/dist/smart-components/page/smart-sidebar.js.map +1 -0
- package/dist/smart-components/page/smart-toolbar.d.ts +40 -0
- package/dist/smart-components/page/smart-toolbar.d.ts.map +1 -0
- package/dist/smart-components/page/smart-toolbar.js +39 -0
- package/dist/smart-components/page/smart-toolbar.js.map +1 -0
- package/dist/smart-components/search-input.d.ts +20 -0
- package/dist/smart-components/search-input.d.ts.map +1 -0
- package/dist/smart-components/search-input.js +12 -0
- package/dist/smart-components/search-input.js.map +1 -0
- package/dist/smart-components/smart-accordion.d.ts +53 -0
- package/dist/smart-components/smart-accordion.d.ts.map +1 -0
- package/dist/smart-components/smart-accordion.js +33 -0
- package/dist/smart-components/smart-accordion.js.map +1 -0
- package/dist/smart-components/smart-alert.d.ts +44 -0
- package/dist/smart-components/smart-alert.d.ts.map +1 -0
- package/dist/smart-components/smart-alert.js +27 -0
- package/dist/smart-components/smart-alert.js.map +1 -0
- package/dist/smart-components/smart-avatar.d.ts +3 -0
- package/dist/smart-components/smart-avatar.d.ts.map +1 -0
- package/dist/smart-components/smart-avatar.js +4 -0
- package/dist/smart-components/smart-avatar.js.map +1 -0
- package/dist/smart-components/smart-badge.d.ts +28 -0
- package/dist/smart-components/smart-badge.d.ts.map +1 -0
- package/dist/smart-components/smart-badge.js +24 -0
- package/dist/smart-components/smart-badge.js.map +1 -0
- package/dist/smart-components/smart-breadcrumb.d.ts +43 -0
- package/dist/smart-components/smart-breadcrumb.d.ts.map +1 -0
- package/dist/smart-components/smart-breadcrumb.js +37 -0
- package/dist/smart-components/smart-breadcrumb.js.map +1 -0
- package/dist/smart-components/smart-button.d.ts +22 -0
- package/dist/smart-components/smart-button.d.ts.map +1 -0
- package/dist/smart-components/smart-button.js +15 -0
- package/dist/smart-components/smart-button.js.map +1 -0
- package/dist/smart-components/smart-calendar.d.ts +78 -0
- package/dist/smart-components/smart-calendar.d.ts.map +1 -0
- package/dist/smart-components/smart-calendar.js +45 -0
- package/dist/smart-components/smart-calendar.js.map +1 -0
- package/dist/smart-components/smart-card.d.ts +55 -0
- package/dist/smart-components/smart-card.d.ts.map +1 -0
- package/dist/smart-components/smart-card.js +37 -0
- package/dist/smart-components/smart-card.js.map +1 -0
- package/dist/smart-components/smart-checkbox-group.d.ts +48 -0
- package/dist/smart-components/smart-checkbox-group.d.ts.map +1 -0
- package/dist/smart-components/smart-checkbox-group.js +48 -0
- package/dist/smart-components/smart-checkbox-group.js.map +1 -0
- package/dist/smart-components/smart-checkbox.d.ts +34 -0
- package/dist/smart-components/smart-checkbox.d.ts.map +1 -0
- package/dist/smart-components/smart-checkbox.js +34 -0
- package/dist/smart-components/smart-checkbox.js.map +1 -0
- package/dist/smart-components/smart-combobox.d.ts +36 -0
- package/dist/smart-components/smart-combobox.d.ts.map +1 -0
- package/dist/smart-components/smart-combobox.js +32 -0
- package/dist/smart-components/smart-combobox.js.map +1 -0
- package/dist/smart-components/smart-confirm-dialog.d.ts +63 -0
- package/dist/smart-components/smart-confirm-dialog.d.ts.map +1 -0
- package/dist/smart-components/smart-confirm-dialog.js +45 -0
- package/dist/smart-components/smart-confirm-dialog.js.map +1 -0
- package/dist/smart-components/smart-context-menu.d.ts +58 -0
- package/dist/smart-components/smart-context-menu.d.ts.map +1 -0
- package/dist/smart-components/smart-context-menu.js +38 -0
- package/dist/smart-components/smart-context-menu.js.map +1 -0
- package/dist/smart-components/smart-date-picker.d.ts +99 -0
- package/dist/smart-components/smart-date-picker.d.ts.map +1 -0
- package/dist/smart-components/smart-date-picker.js +78 -0
- package/dist/smart-components/smart-date-picker.js.map +1 -0
- package/dist/smart-components/smart-date-range-picker.d.ts +37 -0
- package/dist/smart-components/smart-date-range-picker.d.ts.map +1 -0
- package/dist/smart-components/smart-date-range-picker.js +38 -0
- package/dist/smart-components/smart-date-range-picker.js.map +1 -0
- package/dist/smart-components/smart-dialog.d.ts +75 -0
- package/dist/smart-components/smart-dialog.d.ts.map +1 -0
- package/dist/smart-components/smart-dialog.js +61 -0
- package/dist/smart-components/smart-dialog.js.map +1 -0
- package/dist/smart-components/smart-drawer.d.ts +48 -0
- package/dist/smart-components/smart-drawer.d.ts.map +1 -0
- package/dist/smart-components/smart-drawer.js +32 -0
- package/dist/smart-components/smart-drawer.js.map +1 -0
- package/dist/smart-components/smart-field.d.ts +47 -0
- package/dist/smart-components/smart-field.d.ts.map +1 -0
- package/dist/smart-components/smart-field.js +44 -0
- package/dist/smart-components/smart-field.js.map +1 -0
- package/dist/smart-components/smart-input-group.d.ts +60 -0
- package/dist/smart-components/smart-input-group.d.ts.map +1 -0
- package/dist/smart-components/smart-input-group.js +40 -0
- package/dist/smart-components/smart-input-group.js.map +1 -0
- package/dist/smart-components/smart-input.d.ts +46 -0
- package/dist/smart-components/smart-input.d.ts.map +1 -0
- package/dist/smart-components/smart-input.js +36 -0
- package/dist/smart-components/smart-input.js.map +1 -0
- package/dist/smart-components/smart-label.d.ts +22 -0
- package/dist/smart-components/smart-label.d.ts.map +1 -0
- package/dist/smart-components/smart-label.js +17 -0
- package/dist/smart-components/smart-label.js.map +1 -0
- package/dist/smart-components/smart-month-picker.d.ts +30 -0
- package/dist/smart-components/smart-month-picker.d.ts.map +1 -0
- package/dist/smart-components/smart-month-picker.js +53 -0
- package/dist/smart-components/smart-month-picker.js.map +1 -0
- package/dist/smart-components/smart-multi-select.d.ts +38 -0
- package/dist/smart-components/smart-multi-select.d.ts.map +1 -0
- package/dist/smart-components/smart-multi-select.js +56 -0
- package/dist/smart-components/smart-multi-select.js.map +1 -0
- package/dist/smart-components/smart-native-select.d.ts +45 -0
- package/dist/smart-components/smart-native-select.d.ts.map +1 -0
- package/dist/smart-components/smart-native-select.js +33 -0
- package/dist/smart-components/smart-native-select.js.map +1 -0
- package/dist/smart-components/smart-nav-sidebar.d.ts +47 -0
- package/dist/smart-components/smart-nav-sidebar.d.ts.map +1 -0
- package/dist/smart-components/smart-nav-sidebar.js +37 -0
- package/dist/smart-components/smart-nav-sidebar.js.map +1 -0
- package/dist/smart-components/smart-password-input.d.ts +31 -0
- package/dist/smart-components/smart-password-input.d.ts.map +1 -0
- package/dist/smart-components/smart-password-input.js +30 -0
- package/dist/smart-components/smart-password-input.js.map +1 -0
- package/dist/smart-components/smart-radio-group.d.ts +58 -0
- package/dist/smart-components/smart-radio-group.d.ts.map +1 -0
- package/dist/smart-components/smart-radio-group.js +49 -0
- package/dist/smart-components/smart-radio-group.js.map +1 -0
- package/dist/smart-components/smart-segmented.d.ts +33 -0
- package/dist/smart-components/smart-segmented.d.ts.map +1 -0
- package/dist/smart-components/smart-segmented.js +25 -0
- package/dist/smart-components/smart-segmented.js.map +1 -0
- package/dist/smart-components/smart-select.d.ts +71 -0
- package/dist/smart-components/smart-select.d.ts.map +1 -0
- package/dist/smart-components/smart-select.js +44 -0
- package/dist/smart-components/smart-select.js.map +1 -0
- package/dist/smart-components/smart-separator.d.ts +3 -0
- package/dist/smart-components/smart-separator.d.ts.map +1 -0
- package/dist/smart-components/smart-separator.js +4 -0
- package/dist/smart-components/smart-separator.js.map +1 -0
- package/dist/smart-components/smart-sheet.d.ts +79 -0
- package/dist/smart-components/smart-sheet.d.ts.map +1 -0
- package/dist/smart-components/smart-sheet.js +47 -0
- package/dist/smart-components/smart-sheet.js.map +1 -0
- package/dist/smart-components/smart-stat-card.d.ts +47 -0
- package/dist/smart-components/smart-stat-card.d.ts.map +1 -0
- package/dist/smart-components/smart-stat-card.js +35 -0
- package/dist/smart-components/smart-stat-card.js.map +1 -0
- package/dist/smart-components/smart-stepper.d.ts +24 -0
- package/dist/smart-components/smart-stepper.d.ts.map +1 -0
- package/dist/smart-components/smart-stepper.js +24 -0
- package/dist/smart-components/smart-stepper.js.map +1 -0
- package/dist/smart-components/smart-switch.d.ts +34 -0
- package/dist/smart-components/smart-switch.d.ts.map +1 -0
- package/dist/smart-components/smart-switch.js +34 -0
- package/dist/smart-components/smart-switch.js.map +1 -0
- package/dist/smart-components/smart-textarea.d.ts +38 -0
- package/dist/smart-components/smart-textarea.d.ts.map +1 -0
- package/dist/smart-components/smart-textarea.js +28 -0
- package/dist/smart-components/smart-textarea.js.map +1 -0
- package/dist/smart-components/smart-time-picker.d.ts +59 -0
- package/dist/smart-components/smart-time-picker.d.ts.map +1 -0
- package/dist/smart-components/smart-time-picker.js +129 -0
- package/dist/smart-components/smart-time-picker.js.map +1 -0
- package/dist/smart-components/smart-time-range-picker.d.ts +39 -0
- package/dist/smart-components/smart-time-range-picker.d.ts.map +1 -0
- package/dist/smart-components/smart-time-range-picker.js +26 -0
- package/dist/smart-components/smart-time-range-picker.js.map +1 -0
- package/dist/smart-components/smart-toaster.d.ts +10 -0
- package/dist/smart-components/smart-toaster.d.ts.map +1 -0
- package/dist/smart-components/smart-toaster.js +21 -0
- package/dist/smart-components/smart-toaster.js.map +1 -0
- package/dist/smart-components/smart-year-picker.d.ts +29 -0
- package/dist/smart-components/smart-year-picker.d.ts.map +1 -0
- package/dist/smart-components/smart-year-picker.js +43 -0
- package/dist/smart-components/smart-year-picker.js.map +1 -0
- package/dist/smart-components/spinner.d.ts +10 -0
- package/dist/smart-components/spinner.d.ts.map +1 -0
- package/dist/smart-components/spinner.js +5 -0
- package/dist/smart-components/spinner.js.map +1 -0
- package/dist/transfer-list-engine/index.d.ts +5 -0
- package/dist/transfer-list-engine/index.d.ts.map +1 -0
- package/dist/transfer-list-engine/index.js +3 -0
- package/dist/transfer-list-engine/index.js.map +1 -0
- package/dist/transfer-list-engine/transfer-list.d.ts +53 -0
- package/dist/transfer-list-engine/transfer-list.d.ts.map +1 -0
- package/dist/transfer-list-engine/transfer-list.js +190 -0
- package/dist/transfer-list-engine/transfer-list.js.map +1 -0
- package/dist/transfer-list-engine/transfer-utils.d.ts +30 -0
- package/dist/transfer-list-engine/transfer-utils.d.ts.map +1 -0
- package/dist/transfer-list-engine/transfer-utils.js +69 -0
- package/dist/transfer-list-engine/transfer-utils.js.map +1 -0
- package/dist/transfer-list-engine/types.d.ts +51 -0
- package/dist/transfer-list-engine/types.d.ts.map +1 -0
- package/dist/transfer-list-engine/types.js +2 -0
- package/dist/transfer-list-engine/types.js.map +1 -0
- package/dist/tree-engine/index.d.ts +6 -0
- package/dist/tree-engine/index.d.ts.map +1 -0
- package/dist/tree-engine/index.js +3 -0
- package/dist/tree-engine/index.js.map +1 -0
- package/dist/tree-engine/tree-utils.d.ts +84 -0
- package/dist/tree-engine/tree-utils.d.ts.map +1 -0
- package/dist/tree-engine/tree-utils.js +271 -0
- package/dist/tree-engine/tree-utils.js.map +1 -0
- package/dist/tree-engine/tree.d.ts +98 -0
- package/dist/tree-engine/tree.d.ts.map +1 -0
- package/dist/tree-engine/tree.js +430 -0
- package/dist/tree-engine/tree.js.map +1 -0
- package/dist/tree-engine/types.d.ts +85 -0
- package/dist/tree-engine/types.d.ts.map +1 -0
- package/dist/tree-engine/types.js +2 -0
- package/dist/tree-engine/types.js.map +1 -0
- package/dist/tree-engine/use-tree.d.ts +12 -0
- package/dist/tree-engine/use-tree.d.ts.map +1 -0
- package/dist/tree-engine/use-tree.js +34 -0
- package/dist/tree-engine/use-tree.js.map +1 -0
- package/package.json +158 -0
- package/src/styles/globals.css +161 -0
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { AvailabilityWindow, CalendarEvent, CalendarSize, CalendarSlot, EventChangeMeta, FreeSlot, TimeRange, Weekday } from "./types";
|
|
3
|
+
/**
|
|
4
|
+
* Props shared by every view (month/week/day/agenda). `SmartCalendar` resolves
|
|
5
|
+
* defaults once and hands each active view the same shape, so views stay thin
|
|
6
|
+
* and presentational.
|
|
7
|
+
*/
|
|
8
|
+
export interface CalendarViewProps<T = unknown> {
|
|
9
|
+
/** Anchor date for the view. */
|
|
10
|
+
date: Date;
|
|
11
|
+
/** Events already scoped to (roughly) the visible range. */
|
|
12
|
+
events: CalendarEvent<T>[];
|
|
13
|
+
size: CalendarSize;
|
|
14
|
+
weekStartsOn: Weekday;
|
|
15
|
+
/** First visible hour in time-grid views. */
|
|
16
|
+
minHour: number;
|
|
17
|
+
/** Last visible hour in time-grid views. */
|
|
18
|
+
maxHour: number;
|
|
19
|
+
/** Minutes per selectable slot / grid subdivision. */
|
|
20
|
+
slotMinutes: number;
|
|
21
|
+
/** Fallback duration for events without an explicit `end`. */
|
|
22
|
+
defaultDurationMinutes: number;
|
|
23
|
+
/** Optional business-hours shading in time-grid views. */
|
|
24
|
+
businessHours?: TimeRange;
|
|
25
|
+
/** "Now" used for the today highlight + current-time indicator. */
|
|
26
|
+
now: Date;
|
|
27
|
+
/** Fires when an event is activated. */
|
|
28
|
+
onEventClick?: (event: CalendarEvent<T>, e: React.MouseEvent) => void;
|
|
29
|
+
/** Fires when an empty slot / day cell is chosen. */
|
|
30
|
+
onSlotSelect?: (slot: CalendarSlot) => void;
|
|
31
|
+
/** Fires when a day header/number is clicked (month → day drill-in). */
|
|
32
|
+
onDateClick?: (date: Date) => void;
|
|
33
|
+
/** Override event rendering entirely. */
|
|
34
|
+
renderEvent?: (event: CalendarEvent<T>) => React.ReactNode;
|
|
35
|
+
/** Max events shown per month cell before a "+N more" affordance. */
|
|
36
|
+
maxEventsPerDay: number;
|
|
37
|
+
/** Master switch for drag-move + edge-resize in time-grid views. */
|
|
38
|
+
editable: boolean;
|
|
39
|
+
/** Fires after a completed move or resize gesture. */
|
|
40
|
+
onEventChange?: (meta: EventChangeMeta<T>) => void;
|
|
41
|
+
/** Weekly bookable windows; when set, free slots render as pickable chips. */
|
|
42
|
+
availability?: AvailabilityWindow[];
|
|
43
|
+
/** Slots per availability window (concurrent bookings). @default 1 */
|
|
44
|
+
slotCapacity: number;
|
|
45
|
+
/** Fires when a free booking slot is picked. */
|
|
46
|
+
onSlotBook?: (slot: FreeSlot) => void;
|
|
47
|
+
}
|
|
48
|
+
/** Compact month-cell chip: colored dot + title (+ optional start time). */
|
|
49
|
+
export declare function MonthEventPill<T>({ event, size, showTime, onClick, draggable, onDragStart, }: {
|
|
50
|
+
event: CalendarEvent<T>;
|
|
51
|
+
size: CalendarSize;
|
|
52
|
+
showTime?: boolean;
|
|
53
|
+
onClick?: (e: React.MouseEvent) => void;
|
|
54
|
+
draggable?: boolean;
|
|
55
|
+
onDragStart?: (e: React.DragEvent) => void;
|
|
56
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
57
|
+
/** Filled block used inside the time-grid (week/day) columns. */
|
|
58
|
+
export declare function TimedEventBlock<T>({ event, size, defaultDurationMinutes, compact, onClick, }: {
|
|
59
|
+
event: CalendarEvent<T>;
|
|
60
|
+
size: CalendarSize;
|
|
61
|
+
defaultDurationMinutes: number;
|
|
62
|
+
/** Hide the time line when the block is too short. */
|
|
63
|
+
compact?: boolean;
|
|
64
|
+
onClick?: (e: React.MouseEvent) => void;
|
|
65
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
66
|
+
/** All-day / multi-day banner chip (month & time-grid all-day rows). */
|
|
67
|
+
export declare function AllDayBanner<T>({ event, size, onClick, }: {
|
|
68
|
+
event: CalendarEvent<T>;
|
|
69
|
+
size: CalendarSize;
|
|
70
|
+
onClick?: (e: React.MouseEvent) => void;
|
|
71
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
72
|
+
//# sourceMappingURL=shared.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/calendar-engine/shared.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,EACV,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,QAAQ,EACR,SAAS,EACT,OAAO,EACR,MAAM,SAAS,CAAA;AAIhB;;;;GAIG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC,GAAG,OAAO;IAC5C,gCAAgC;IAChC,IAAI,EAAE,IAAI,CAAA;IACV,4DAA4D;IAC5D,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAA;IAC1B,IAAI,EAAE,YAAY,CAAA;IAClB,YAAY,EAAE,OAAO,CAAA;IACrB,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAA;IACf,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAA;IACf,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAA;IACnB,8DAA8D;IAC9D,sBAAsB,EAAE,MAAM,CAAA;IAC9B,0DAA0D;IAC1D,aAAa,CAAC,EAAE,SAAS,CAAA;IACzB,mEAAmE;IACnE,GAAG,EAAE,IAAI,CAAA;IACT,wCAAwC;IACxC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAA;IACrE,qDAAqD;IACrD,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAA;IAC3C,wEAAwE;IACxE,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAA;IAClC,yCAAyC;IACzC,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,SAAS,CAAA;IAC1D,qEAAqE;IACrE,eAAe,EAAE,MAAM,CAAA;IAGvB,oEAAoE;IACpE,QAAQ,EAAE,OAAO,CAAA;IACjB,sDAAsD;IACtD,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,IAAI,CAAA;IAGlD,8EAA8E;IAC9E,YAAY,CAAC,EAAE,kBAAkB,EAAE,CAAA;IACnC,sEAAsE;IACtE,YAAY,EAAE,MAAM,CAAA;IACpB,gDAAgD;IAChD,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAA;CACtC;AAQD,4EAA4E;AAC5E,wBAAgB,cAAc,CAAC,CAAC,EAAE,EAChC,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,SAAS,EACT,WAAW,GACZ,EAAE;IACD,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;IACvB,IAAI,EAAE,YAAY,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAA;IACvC,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,KAAK,IAAI,CAAA;CAC3C,2CA+BA;AAED,iEAAiE;AACjE,wBAAgB,eAAe,CAAC,CAAC,EAAE,EACjC,KAAK,EACL,IAAI,EACJ,sBAAsB,EACtB,OAAO,EACP,OAAO,GACR,EAAE;IACD,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;IACvB,IAAI,EAAE,YAAY,CAAA;IAClB,sBAAsB,EAAE,MAAM,CAAA;IAC9B,sDAAsD;IACtD,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAA;CACxC,2CAkCA;AAED,wEAAwE;AACxE,wBAAgB,YAAY,CAAC,CAAC,EAAE,EAC9B,KAAK,EACL,IAAI,EACJ,OAAO,GACR,EAAE;IACD,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;IACvB,IAAI,EAAE,YAAY,CAAA;IAClB,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAA;CACxC,2CAkBA"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from "@iamsaroj/smart-ui/lib/utils";
|
|
3
|
+
import { eventColorClasses } from "./event-color";
|
|
4
|
+
import { formatEventTime } from "./calendar-utils";
|
|
5
|
+
const TITLE_TEXT = {
|
|
6
|
+
sm: "text-[11px]",
|
|
7
|
+
md: "text-xs",
|
|
8
|
+
lg: "text-sm",
|
|
9
|
+
};
|
|
10
|
+
/** Compact month-cell chip: colored dot + title (+ optional start time). */
|
|
11
|
+
export function MonthEventPill({ event, size, showTime, onClick, draggable, onDragStart, }) {
|
|
12
|
+
const colors = eventColorClasses(event.color);
|
|
13
|
+
return (_jsxs("button", { type: "button", onClick: onClick, disabled: event.disabled, draggable: draggable, onDragStart: onDragStart, title: typeof event.title === "string" ? event.title : undefined, className: cn("flex w-full items-center gap-1.5 rounded px-1.5 py-0.5 text-left transition-colors", "focus-visible:ring-2 focus-visible:ring-ring focus-visible:outline-none", TITLE_TEXT[size], colors.pill, draggable && "cursor-grab active:cursor-grabbing", event.disabled && "cursor-not-allowed opacity-50"), children: [_jsx("span", { className: cn("size-1.5 shrink-0 rounded-full", colors.dot), "aria-hidden": true }), showTime && !event.allDay && (_jsx("span", { className: "shrink-0 tabular-nums opacity-70", children: formatTimeShort(event.start) })), _jsx("span", { className: "truncate font-medium", children: event.title })] }));
|
|
14
|
+
}
|
|
15
|
+
/** Filled block used inside the time-grid (week/day) columns. */
|
|
16
|
+
export function TimedEventBlock({ event, size, defaultDurationMinutes, compact, onClick, }) {
|
|
17
|
+
const colors = eventColorClasses(event.color);
|
|
18
|
+
return (_jsxs("button", { type: "button", onClick: onClick, disabled: event.disabled, className: cn("flex size-full flex-col overflow-hidden rounded-md border px-2 py-1 text-left transition-shadow", "hover:shadow-sm focus-visible:ring-2 focus-visible:ring-ring focus-visible:outline-none", colors.block, event.disabled && "cursor-not-allowed opacity-60"), children: [_jsx("span", { className: cn("truncate leading-tight font-medium", size === "sm" ? "text-[11px]" : "text-xs"), children: event.title }), !compact && (_jsx("span", { className: "truncate text-[10px] opacity-75", children: formatEventTime(event, defaultDurationMinutes) })), !compact && event.location && (_jsx("span", { className: "truncate text-[10px] opacity-60", children: event.location }))] }));
|
|
19
|
+
}
|
|
20
|
+
/** All-day / multi-day banner chip (month & time-grid all-day rows). */
|
|
21
|
+
export function AllDayBanner({ event, size, onClick, }) {
|
|
22
|
+
const colors = eventColorClasses(event.color);
|
|
23
|
+
return (_jsx("button", { type: "button", onClick: onClick, disabled: event.disabled, className: cn("flex w-full items-center rounded border px-1.5 py-0.5 text-left transition-colors", "focus-visible:ring-2 focus-visible:ring-ring focus-visible:outline-none", TITLE_TEXT[size], colors.block, event.disabled && "cursor-not-allowed opacity-60"), children: _jsx("span", { className: "truncate font-medium", children: event.title }) }));
|
|
24
|
+
}
|
|
25
|
+
function formatTimeShort(date) {
|
|
26
|
+
const h = date.getHours();
|
|
27
|
+
const m = date.getMinutes();
|
|
28
|
+
const period = h >= 12 ? "p" : "a";
|
|
29
|
+
const hour12 = h % 12 === 0 ? 12 : h % 12;
|
|
30
|
+
return m === 0
|
|
31
|
+
? `${hour12}${period}`
|
|
32
|
+
: `${hour12}:${String(m).padStart(2, "0")}${period}`;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=shared.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/calendar-engine/shared.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { CalendarViewProps } from "./shared";
|
|
2
|
+
/**
|
|
3
|
+
* Time-grid view backing both `week` (7 columns) and `day` (1 column). Renders a
|
|
4
|
+
* sticky day header, an all-day banner row, and a scrollable hour grid with
|
|
5
|
+
* absolutely-positioned, overlap-packed event blocks, business-hours shading,
|
|
6
|
+
* a live "now" indicator, click-to-create slot selection, optional bookable
|
|
7
|
+
* free-slot chips, and (when `editable`) pointer drag-move (across days) +
|
|
8
|
+
* edge-resize.
|
|
9
|
+
*/
|
|
10
|
+
export declare function TimeGridView<T>(props: CalendarViewProps<T> & {
|
|
11
|
+
days: Date[];
|
|
12
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
//# sourceMappingURL=time-grid-view.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time-grid-view.d.ts","sourceRoot":"","sources":["../../src/calendar-engine/time-grid-view.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AA4BjD;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC5B,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG;IAAE,IAAI,EAAE,IAAI,EAAE,CAAA;CAAE,2CA+c/C"}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { addMinutes, format, isSameDay, startOfDay } from "date-fns";
|
|
4
|
+
import { cn } from "@iamsaroj/smart-ui/lib/utils";
|
|
5
|
+
import { TimedEventBlock } from "./shared";
|
|
6
|
+
import { AllDayBanner } from "./shared";
|
|
7
|
+
import { eventEnd, eventsForDay, hourLabels, layoutDayEvents, minutesSinceMidnight, partitionDayEvents, } from "./calendar-utils";
|
|
8
|
+
import { generateFreeSlots } from "./booking";
|
|
9
|
+
const HOUR_HEIGHT = { sm: 40, md: 48, lg: 60 };
|
|
10
|
+
/** How far the pointer must travel before a click becomes a drag. */
|
|
11
|
+
const DRAG_THRESHOLD = 4;
|
|
12
|
+
/**
|
|
13
|
+
* Time-grid view backing both `week` (7 columns) and `day` (1 column). Renders a
|
|
14
|
+
* sticky day header, an all-day banner row, and a scrollable hour grid with
|
|
15
|
+
* absolutely-positioned, overlap-packed event blocks, business-hours shading,
|
|
16
|
+
* a live "now" indicator, click-to-create slot selection, optional bookable
|
|
17
|
+
* free-slot chips, and (when `editable`) pointer drag-move (across days) +
|
|
18
|
+
* edge-resize.
|
|
19
|
+
*/
|
|
20
|
+
export function TimeGridView(props) {
|
|
21
|
+
const { days, events, size, minHour, maxHour, slotMinutes, defaultDurationMinutes, businessHours, now, onEventClick, onSlotSelect, onDateClick, renderEvent, editable, onEventChange, availability, slotCapacity, onSlotBook, } = props;
|
|
22
|
+
const hourHeight = HOUR_HEIGHT[size];
|
|
23
|
+
const hours = hourLabels(minHour, maxHour);
|
|
24
|
+
const windowStartMin = minHour * 60;
|
|
25
|
+
const windowEndMin = maxHour * 60;
|
|
26
|
+
const totalMinutes = windowEndMin - windowStartMin;
|
|
27
|
+
const bodyHeight = (maxHour - minHour) * hourHeight;
|
|
28
|
+
const [drag, setDrag] = React.useState(null);
|
|
29
|
+
// Latest preview, read on pointer-up without a stale-closure or a
|
|
30
|
+
// StrictMode-unsafe functional-update side effect.
|
|
31
|
+
const previewRef = React.useRef(null);
|
|
32
|
+
// The columns container, used to map pointer X → target day column.
|
|
33
|
+
const colsRef = React.useRef(null);
|
|
34
|
+
const snap = React.useCallback((minutes) => Math.round(minutes / slotMinutes) * slotMinutes, [slotMinutes]);
|
|
35
|
+
const pctTop = (min) => ((min - windowStartMin) / totalMinutes) * 100;
|
|
36
|
+
const pctHeight = (a, b) => ((b - a) / totalMinutes) * 100;
|
|
37
|
+
/**
|
|
38
|
+
* Start a move/resize gesture. Handlers are defined inline so they close over
|
|
39
|
+
* this render's geometry and are added/removed by the same reference — no
|
|
40
|
+
* effect, no stale refs. A movement threshold keeps plain clicks intact.
|
|
41
|
+
*/
|
|
42
|
+
const beginGesture = (e, mode, event, day, sourceIndex) => {
|
|
43
|
+
if (!editable || event.editable === false || event.disabled)
|
|
44
|
+
return;
|
|
45
|
+
if (e.button !== 0)
|
|
46
|
+
return;
|
|
47
|
+
const startMin0 = minutesSinceMidnight(event.start);
|
|
48
|
+
const endMin0 = Math.max(startMin0 + slotMinutes, minutesSinceMidnight(eventEnd(event, defaultDurationMinutes)));
|
|
49
|
+
const startX = e.clientX;
|
|
50
|
+
const startY = e.clientY;
|
|
51
|
+
let moved = false;
|
|
52
|
+
const onMove = (ev) => {
|
|
53
|
+
const dx = ev.clientX - startX;
|
|
54
|
+
const dy = ev.clientY - startY;
|
|
55
|
+
if (!moved && Math.hypot(dx, dy) < DRAG_THRESHOLD)
|
|
56
|
+
return;
|
|
57
|
+
moved = true;
|
|
58
|
+
const dyMin = snap((dy / bodyHeight) * totalMinutes);
|
|
59
|
+
let next;
|
|
60
|
+
if (mode === "move") {
|
|
61
|
+
let dayIndex = sourceIndex;
|
|
62
|
+
const el = colsRef.current;
|
|
63
|
+
if (el && days.length > 1) {
|
|
64
|
+
const r = el.getBoundingClientRect();
|
|
65
|
+
const colW = r.width / days.length;
|
|
66
|
+
dayIndex = Math.min(days.length - 1, Math.max(0, Math.floor((ev.clientX - r.left) / colW)));
|
|
67
|
+
}
|
|
68
|
+
const duration = endMin0 - startMin0;
|
|
69
|
+
const startMin = Math.max(windowStartMin, Math.min(startMin0 + dyMin, windowEndMin - duration));
|
|
70
|
+
next = { event, mode, dayIndex, startMin, endMin: startMin + duration };
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
const endMin = Math.max(startMin0 + slotMinutes, Math.min(endMin0 + dyMin, windowEndMin));
|
|
74
|
+
next = {
|
|
75
|
+
event,
|
|
76
|
+
mode,
|
|
77
|
+
dayIndex: sourceIndex,
|
|
78
|
+
startMin: startMin0,
|
|
79
|
+
endMin,
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
previewRef.current = next;
|
|
83
|
+
setDrag(next);
|
|
84
|
+
};
|
|
85
|
+
const onUp = () => {
|
|
86
|
+
window.removeEventListener("pointermove", onMove);
|
|
87
|
+
window.removeEventListener("pointerup", onUp);
|
|
88
|
+
const preview = previewRef.current;
|
|
89
|
+
previewRef.current = null;
|
|
90
|
+
if (moved && preview && onEventChange) {
|
|
91
|
+
const targetDay = days[preview.dayIndex] ?? day;
|
|
92
|
+
const base = startOfDay(targetDay);
|
|
93
|
+
onEventChange({
|
|
94
|
+
event,
|
|
95
|
+
start: addMinutes(base, preview.startMin),
|
|
96
|
+
end: addMinutes(base, preview.endMin),
|
|
97
|
+
kind: mode,
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
setDrag(null);
|
|
101
|
+
};
|
|
102
|
+
window.addEventListener("pointermove", onMove);
|
|
103
|
+
window.addEventListener("pointerup", onUp);
|
|
104
|
+
};
|
|
105
|
+
const hasAllDay = React.useMemo(() => days.some((day) => partitionDayEvents(eventsForDay(events, day)).allDay.length > 0), [days, events]);
|
|
106
|
+
const handleColumnClick = (day, e) => {
|
|
107
|
+
if (!onSlotSelect)
|
|
108
|
+
return;
|
|
109
|
+
if (e.target !== e.currentTarget)
|
|
110
|
+
return;
|
|
111
|
+
const rect = e.currentTarget.getBoundingClientRect();
|
|
112
|
+
const offsetY = e.clientY - rect.top;
|
|
113
|
+
const rawMinutes = windowStartMin + (offsetY / rect.height) * totalMinutes;
|
|
114
|
+
const snapped = Math.floor(rawMinutes / slotMinutes) * slotMinutes;
|
|
115
|
+
const start = addMinutes(startOfDay(day), snapped);
|
|
116
|
+
onSlotSelect({ start, end: addMinutes(start, slotMinutes), allDay: false });
|
|
117
|
+
};
|
|
118
|
+
return (_jsxs("div", { className: "flex min-h-0 flex-1 flex-col", children: [_jsxs("div", { className: "flex border-b border-border", children: [_jsx("div", { className: "w-14 shrink-0" }), _jsx("div", { className: "grid flex-1", style: {
|
|
119
|
+
gridTemplateColumns: `repeat(${days.length}, minmax(0, 1fr))`,
|
|
120
|
+
}, children: days.map((day, dayIndex) => {
|
|
121
|
+
const isToday = isSameDay(day, now);
|
|
122
|
+
const isDropTarget = drag?.mode === "move" && drag.dayIndex === dayIndex;
|
|
123
|
+
return (_jsxs("button", { type: "button", onClick: () => onDateClick?.(day), className: cn("flex flex-col items-center gap-0.5 border-l border-border py-2 first:border-l-0 hover:bg-accent/50", isDropTarget && "bg-primary/10"), children: [_jsx("span", { className: "text-[11px] font-medium text-muted-foreground uppercase", children: format(day, "EEE") }), _jsx("span", { className: cn("flex size-7 items-center justify-center rounded-full text-sm tabular-nums", isToday &&
|
|
124
|
+
"bg-primary font-semibold text-primary-foreground"), children: format(day, "d") })] }, day.toISOString()));
|
|
125
|
+
}) })] }), hasAllDay && (_jsxs("div", { className: "flex border-b border-border bg-muted/20", children: [_jsx("div", { className: "flex w-14 shrink-0 items-center justify-end pr-2 text-[10px] text-muted-foreground", children: "all-day" }), _jsx("div", { className: "grid flex-1", style: {
|
|
126
|
+
gridTemplateColumns: `repeat(${days.length}, minmax(0, 1fr))`,
|
|
127
|
+
}, children: days.map((day) => {
|
|
128
|
+
const allDay = partitionDayEvents(eventsForDay(events, day)).allDay;
|
|
129
|
+
return (_jsx("div", { className: "flex flex-col gap-0.5 border-l border-border p-1 first:border-l-0", children: allDay.map((event) => (_jsx(AllDayBanner, { event: event, size: size, onClick: (e) => onEventClick?.(event, e) }, event.id))) }, day.toISOString()));
|
|
130
|
+
}) })] })), _jsx("div", { className: "min-h-0 flex-1 overflow-y-auto", children: _jsxs("div", { className: "flex", children: [_jsx("div", { className: "w-14 shrink-0", children: hours.map((h) => (_jsx("div", { className: "relative text-right", style: { height: hourHeight }, children: _jsx("span", { className: "absolute -top-2 right-2 text-[10px] text-muted-foreground tabular-nums", children: formatHour(h) }) }, h))) }), _jsxs("div", { ref: colsRef, className: "relative grid flex-1", style: {
|
|
131
|
+
gridTemplateColumns: `repeat(${days.length}, minmax(0, 1fr))`,
|
|
132
|
+
}, children: [days.map((day, dayIndex) => {
|
|
133
|
+
const timed = partitionDayEvents(eventsForDay(events, day)).timed;
|
|
134
|
+
const positioned = layoutDayEvents(timed, day, minHour, maxHour, defaultDurationMinutes);
|
|
135
|
+
const freeSlots = availability
|
|
136
|
+
? generateFreeSlots(day, availability, timed, slotMinutes, slotCapacity, now)
|
|
137
|
+
: [];
|
|
138
|
+
const showNow = isSameDay(day, now);
|
|
139
|
+
const nowMinutes = minutesSinceMidnight(now);
|
|
140
|
+
const nowVisible = showNow &&
|
|
141
|
+
nowMinutes >= windowStartMin &&
|
|
142
|
+
nowMinutes <= windowEndMin;
|
|
143
|
+
return (_jsxs("div", { className: "relative border-l border-border first:border-l-0", style: { height: bodyHeight }, onClick: (e) => handleColumnClick(day, e), children: [businessHours && (_jsx("div", { className: "pointer-events-none absolute inset-x-0 bg-muted/25", style: {
|
|
144
|
+
top: `${pctTop(businessHours.startMinutes)}%`,
|
|
145
|
+
height: `${pctHeight(businessHours.startMinutes, businessHours.endMinutes)}%`,
|
|
146
|
+
} })), hours.slice(0, -1).map((h, i) => (_jsx("div", { className: "pointer-events-none absolute inset-x-0 border-t border-border/60", style: { top: (i + 1) * hourHeight } }, h))), freeSlots.map((slot) => {
|
|
147
|
+
const s = minutesSinceMidnight(slot.start);
|
|
148
|
+
const e = s + (slot.end.getTime() - slot.start.getTime()) / 60000;
|
|
149
|
+
return (_jsxs("button", { type: "button", onClick: (ev) => {
|
|
150
|
+
ev.stopPropagation();
|
|
151
|
+
onSlotBook?.(slot);
|
|
152
|
+
}, className: "absolute inset-x-0.5 flex items-center justify-center rounded border border-dashed border-emerald-500/50 bg-emerald-500/5 text-[10px] font-medium text-emerald-700 transition-colors hover:bg-emerald-500/15 dark:text-emerald-300", style: {
|
|
153
|
+
top: `${pctTop(s)}%`,
|
|
154
|
+
height: `${pctHeight(s, e)}%`,
|
|
155
|
+
}, children: [format(slot.start, "h:mm a"), slot.capacity > 1 ? ` · ${slot.capacity} left` : ""] }, slot.start.toISOString()));
|
|
156
|
+
}), positioned.map((p) => {
|
|
157
|
+
const dragging = drag?.event.id === p.event.id;
|
|
158
|
+
// In resize mode the block reshapes in place; in move mode
|
|
159
|
+
// the source dims and the floating preview shows the target.
|
|
160
|
+
const resizing = dragging && drag.mode === "resize";
|
|
161
|
+
const moving = dragging && drag.mode === "move";
|
|
162
|
+
const top = resizing ? pctTop(drag.startMin) : p.top;
|
|
163
|
+
const height = resizing
|
|
164
|
+
? pctHeight(drag.startMin, drag.endMin)
|
|
165
|
+
: p.height;
|
|
166
|
+
const canEdit = editable &&
|
|
167
|
+
p.event.editable !== false &&
|
|
168
|
+
!p.event.disabled;
|
|
169
|
+
return (_jsx("div", { className: cn("absolute p-px", resizing && "z-20", moving && "opacity-30"), style: {
|
|
170
|
+
top: `${top}%`,
|
|
171
|
+
height: `${height}%`,
|
|
172
|
+
left: `${p.left}%`,
|
|
173
|
+
width: `${p.width}%`,
|
|
174
|
+
}, onPointerDown: canEdit
|
|
175
|
+
? (e) => beginGesture(e, "move", p.event, day, dayIndex)
|
|
176
|
+
: undefined, children: renderEvent ? (renderEvent(p.event)) : (_jsxs("div", { className: "relative size-full", children: [_jsx(TimedEventBlock, { event: p.event, size: size, defaultDurationMinutes: defaultDurationMinutes, compact: height < 6, onClick: (e) => {
|
|
177
|
+
e.stopPropagation();
|
|
178
|
+
if (!dragging)
|
|
179
|
+
onEventClick?.(p.event, e);
|
|
180
|
+
} }), canEdit && (_jsx("div", { className: "absolute inset-x-0 bottom-0 h-1.5 cursor-ns-resize", onPointerDown: (e) => {
|
|
181
|
+
e.stopPropagation();
|
|
182
|
+
beginGesture(e, "resize", p.event, day, dayIndex);
|
|
183
|
+
} }))] })) }, p.event.id));
|
|
184
|
+
}), nowVisible && (_jsxs("div", { className: "pointer-events-none absolute inset-x-0 z-10 flex items-center", style: { top: `${pctTop(nowMinutes)}%` }, children: [_jsx("span", { className: "size-2 -translate-x-1/2 rounded-full bg-red-500" }), _jsx("span", { className: "h-px flex-1 bg-red-500" })] }))] }, day.toISOString()));
|
|
185
|
+
}), drag?.mode === "move" && (_jsx("div", { className: "pointer-events-none absolute z-30 p-px", style: {
|
|
186
|
+
left: `${(drag.dayIndex / days.length) * 100}%`,
|
|
187
|
+
width: `${100 / days.length}%`,
|
|
188
|
+
top: `${pctTop(drag.startMin)}%`,
|
|
189
|
+
height: `${pctHeight(drag.startMin, drag.endMin)}%`,
|
|
190
|
+
}, children: _jsx("div", { className: "size-full rounded-md opacity-90 shadow-lg ring-2 ring-primary/50", children: _jsx(TimedEventBlock, { event: {
|
|
191
|
+
...drag.event,
|
|
192
|
+
start: addMinutes(startOfDay(days[drag.dayIndex] ?? days[0]), drag.startMin),
|
|
193
|
+
end: addMinutes(startOfDay(days[drag.dayIndex] ?? days[0]), drag.endMin),
|
|
194
|
+
}, size: size, defaultDurationMinutes: defaultDurationMinutes }) }) }))] })] }) })] }));
|
|
195
|
+
}
|
|
196
|
+
function formatHour(h) {
|
|
197
|
+
if (h === 0 || h === 24)
|
|
198
|
+
return "12 AM";
|
|
199
|
+
if (h === 12)
|
|
200
|
+
return "12 PM";
|
|
201
|
+
return h < 12 ? `${h} AM` : `${h - 12} PM`;
|
|
202
|
+
}
|
|
203
|
+
//# sourceMappingURL=time-grid-view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time-grid-view.js","sourceRoot":"","sources":["../../src/calendar-engine/time-grid-view.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import type * as React from "react";
|
|
2
|
+
/**
|
|
3
|
+
* A single calendar event / booking. Generic over an arbitrary `data` payload so
|
|
4
|
+
* the calendar can carry domain objects (meetings, reservations, shifts…) without
|
|
5
|
+
* losing type information in the callbacks.
|
|
6
|
+
*
|
|
7
|
+
* `start`/`end` are plain `Date`s. When `end` is omitted the event is treated as a
|
|
8
|
+
* point in time (a default duration is applied in the time-grid views). When
|
|
9
|
+
* `allDay` is set the times are ignored and the event spans whole day cells.
|
|
10
|
+
*/
|
|
11
|
+
export interface CalendarEvent<T = unknown> {
|
|
12
|
+
/** Stable, unique identifier across the whole calendar. */
|
|
13
|
+
id: string;
|
|
14
|
+
/** Text or node rendered as the event title. */
|
|
15
|
+
title: React.ReactNode;
|
|
16
|
+
/** Event start. */
|
|
17
|
+
start: Date;
|
|
18
|
+
/** Event end. Defaults to `start + defaultDurationMinutes` when omitted. */
|
|
19
|
+
end?: Date;
|
|
20
|
+
/** Render as an all-day / multi-day banner instead of a timed block. */
|
|
21
|
+
allDay?: boolean;
|
|
22
|
+
/** One of the preset color tokens. @default "blue" */
|
|
23
|
+
color?: CalendarEventColor;
|
|
24
|
+
/** Optional secondary line (location, attendee, room…). */
|
|
25
|
+
location?: React.ReactNode;
|
|
26
|
+
/** Prevent selection/drag interaction for this event. */
|
|
27
|
+
disabled?: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Allow drag-to-move and edge-resize for this event. Only takes effect when
|
|
30
|
+
* the calendar is `editable`. @default true (when the calendar is editable)
|
|
31
|
+
*/
|
|
32
|
+
editable?: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Repeat rule. When set, the event is a *template*: the calendar expands it
|
|
35
|
+
* into concrete instances across the visible range (the template itself is
|
|
36
|
+
* never rendered directly). Instances carry an id of `"<id>::<ISO-date>"`.
|
|
37
|
+
*/
|
|
38
|
+
recurrence?: RecurrenceRule;
|
|
39
|
+
/**
|
|
40
|
+
* Present only on an expanded recurrence instance — the template's `id` and
|
|
41
|
+
* the instance's own start date. Absent on plain events.
|
|
42
|
+
*/
|
|
43
|
+
occurrence?: {
|
|
44
|
+
templateId: string;
|
|
45
|
+
date: Date;
|
|
46
|
+
};
|
|
47
|
+
/** Arbitrary payload returned in callbacks. */
|
|
48
|
+
data?: T;
|
|
49
|
+
}
|
|
50
|
+
/** How often a recurring event repeats. */
|
|
51
|
+
export type RecurrenceFreq = "daily" | "weekly" | "monthly";
|
|
52
|
+
/**
|
|
53
|
+
* A compact, RRULE-inspired recurrence rule. Intentionally a small subset:
|
|
54
|
+
* daily/weekly/monthly with an interval, optional weekday restriction (weekly),
|
|
55
|
+
* a stop condition (`count` or `until`), and explicit skip dates (`exceptions`).
|
|
56
|
+
*/
|
|
57
|
+
export interface RecurrenceRule {
|
|
58
|
+
freq: RecurrenceFreq;
|
|
59
|
+
/** Repeat every `interval` units (e.g. every 2 weeks). @default 1 */
|
|
60
|
+
interval?: number;
|
|
61
|
+
/** For weekly rules: which weekdays repeat. Defaults to the start's weekday. */
|
|
62
|
+
byWeekday?: Weekday[];
|
|
63
|
+
/** Stop after this many occurrences (inclusive of the first). */
|
|
64
|
+
count?: number;
|
|
65
|
+
/** Stop on/after this date (inclusive). */
|
|
66
|
+
until?: Date;
|
|
67
|
+
/** Dates to skip (compared by calendar day). */
|
|
68
|
+
exceptions?: Date[];
|
|
69
|
+
}
|
|
70
|
+
/** A weekly availability window used by booking mode. */
|
|
71
|
+
export interface AvailabilityWindow {
|
|
72
|
+
/** Which weekday this window applies to. */
|
|
73
|
+
weekday: Weekday;
|
|
74
|
+
/** Window open, minutes since midnight. */
|
|
75
|
+
startMinutes: number;
|
|
76
|
+
/** Window close, minutes since midnight. */
|
|
77
|
+
endMinutes: number;
|
|
78
|
+
}
|
|
79
|
+
/** A single bookable slot produced from availability minus existing events. */
|
|
80
|
+
export interface FreeSlot {
|
|
81
|
+
start: Date;
|
|
82
|
+
end: Date;
|
|
83
|
+
/** Remaining capacity for the slot (>= 1). */
|
|
84
|
+
capacity: number;
|
|
85
|
+
}
|
|
86
|
+
/** Detail handed to `onEventChange` after a drag-move or resize. */
|
|
87
|
+
export interface EventChangeMeta<T = unknown> {
|
|
88
|
+
event: CalendarEvent<T>;
|
|
89
|
+
start: Date;
|
|
90
|
+
end: Date;
|
|
91
|
+
/** What the gesture changed. */
|
|
92
|
+
kind: "move" | "resize";
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Preset color tokens. Each maps to a themed set of Tailwind classes in
|
|
96
|
+
* `event-color.ts`; callers pick a name rather than raw classes so events read
|
|
97
|
+
* consistently in light and dark mode.
|
|
98
|
+
*/
|
|
99
|
+
export type CalendarEventColor = "blue" | "green" | "amber" | "red" | "violet" | "pink" | "cyan" | "gray";
|
|
100
|
+
/** The available calendar views. */
|
|
101
|
+
export type CalendarView = "month" | "week" | "day" | "agenda";
|
|
102
|
+
/** Row/text density. */
|
|
103
|
+
export type CalendarSize = "sm" | "md" | "lg";
|
|
104
|
+
/** 0 = Sunday … 6 = Saturday (matches `date-fns` `weekStartsOn`). */
|
|
105
|
+
export type Weekday = 0 | 1 | 2 | 3 | 4 | 5 | 6;
|
|
106
|
+
/**
|
|
107
|
+
* A contiguous time window inside a day, expressed as minutes since midnight.
|
|
108
|
+
* Used for business-hours shading and slot selection.
|
|
109
|
+
*/
|
|
110
|
+
export interface TimeRange {
|
|
111
|
+
/** Minutes since midnight, inclusive. */
|
|
112
|
+
startMinutes: number;
|
|
113
|
+
/** Minutes since midnight, exclusive. */
|
|
114
|
+
endMinutes: number;
|
|
115
|
+
}
|
|
116
|
+
/** Detail handed to `onSlotSelect` when an empty time slot is chosen. */
|
|
117
|
+
export interface CalendarSlot {
|
|
118
|
+
start: Date;
|
|
119
|
+
end: Date;
|
|
120
|
+
/** True when the slot came from an all-day / month cell. */
|
|
121
|
+
allDay: boolean;
|
|
122
|
+
}
|
|
123
|
+
/** Imperative handle exposed via `ref`. */
|
|
124
|
+
export interface SmartCalendarHandle {
|
|
125
|
+
/** Advance one page in the current view (month/week/day). */
|
|
126
|
+
next: () => void;
|
|
127
|
+
/** Go back one page in the current view. */
|
|
128
|
+
prev: () => void;
|
|
129
|
+
/** Jump to today, keeping the current view. */
|
|
130
|
+
today: () => void;
|
|
131
|
+
/** Navigate to an arbitrary date, keeping the current view. */
|
|
132
|
+
goToDate: (date: Date) => void;
|
|
133
|
+
/** Switch the active view. */
|
|
134
|
+
setView: (view: CalendarView) => void;
|
|
135
|
+
getDate: () => Date;
|
|
136
|
+
getView: () => CalendarView;
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/calendar-engine/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/calendar-engine/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Controlled/uncontrolled state in one hook — the same pattern the tree engine
|
|
3
|
+
* uses (`use-tree.ts`). When `controlled` is provided the hook is a pass-through
|
|
4
|
+
* that only calls `onChange`; otherwise it owns state and still forwards changes.
|
|
5
|
+
*/
|
|
6
|
+
export declare function useControllable<V>(controlled: V | undefined, defaultValue: V, onChange?: (value: V) => void): [V, (next: V | ((prev: V) => V)) => void];
|
|
7
|
+
//# sourceMappingURL=use-calendar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-calendar.d.ts","sourceRoot":"","sources":["../../src/calendar-engine/use-calendar.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAC/B,UAAU,EAAE,CAAC,GAAG,SAAS,EACzB,YAAY,EAAE,CAAC,EACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAC5B,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,CAAC,CAuB3C"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Controlled/uncontrolled state in one hook — the same pattern the tree engine
|
|
4
|
+
* uses (`use-tree.ts`). When `controlled` is provided the hook is a pass-through
|
|
5
|
+
* that only calls `onChange`; otherwise it owns state and still forwards changes.
|
|
6
|
+
*/
|
|
7
|
+
export function useControllable(controlled, defaultValue, onChange) {
|
|
8
|
+
const [uncontrolled, setUncontrolled] = React.useState(defaultValue);
|
|
9
|
+
const isControlled = controlled !== undefined;
|
|
10
|
+
const value = isControlled ? controlled : uncontrolled;
|
|
11
|
+
const valueRef = React.useRef(value);
|
|
12
|
+
React.useEffect(() => {
|
|
13
|
+
valueRef.current = value;
|
|
14
|
+
});
|
|
15
|
+
const set = React.useCallback((next) => {
|
|
16
|
+
const resolved = typeof next === "function"
|
|
17
|
+
? next(valueRef.current)
|
|
18
|
+
: next;
|
|
19
|
+
if (!isControlled)
|
|
20
|
+
setUncontrolled(resolved);
|
|
21
|
+
onChange?.(resolved);
|
|
22
|
+
}, [isControlled, onChange]);
|
|
23
|
+
return [value, set];
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=use-calendar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-calendar.js","sourceRoot":"","sources":["../../src/calendar-engine/use-calendar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAC7B,UAAyB,EACzB,YAAe,EACf,QAA6B;IAE7B,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;IACpE,MAAM,YAAY,GAAG,UAAU,KAAK,SAAS,CAAA;IAC7C,MAAM,KAAK,GAAG,YAAY,CAAC,CAAC,CAAE,UAAgB,CAAC,CAAC,CAAC,YAAY,CAAA;IAE7D,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACpC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAA;IAC1B,CAAC,CAAC,CAAA;IAEF,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAC3B,CAAC,IAA0B,EAAE,EAAE;QAC7B,MAAM,QAAQ,GACZ,OAAO,IAAI,KAAK,UAAU;YACxB,CAAC,CAAE,IAAuB,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAA;QACV,IAAI,CAAC,YAAY;YAAE,eAAe,CAAC,QAAQ,CAAC,CAAA;QAC5C,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAA;IACtB,CAAC,EACD,CAAC,YAAY,EAAE,QAAQ,CAAC,CACzB,CAAA;IAED,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AACrB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Accordion as AccordionPrimitive } from "@base-ui/react/accordion";
|
|
2
|
+
declare const Accordion: ({ className, ...props }: AccordionPrimitive.Root.Props) => import("react/jsx-runtime").JSX.Element;
|
|
3
|
+
declare const AccordionItem: ({ className, ...props }: AccordionPrimitive.Item.Props) => import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
declare const AccordionTrigger: ({ className, children, ...props }: AccordionPrimitive.Trigger.Props) => import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
declare const AccordionContent: ({ className, children, ...props }: AccordionPrimitive.Panel.Props) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export { Accordion, AccordionItem, AccordionTrigger, AccordionContent };
|
|
7
|
+
//# sourceMappingURL=accordion.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"accordion.d.ts","sourceRoot":"","sources":["../../src/components/accordion.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAK1E,QAAA,MAAM,SAAS,GAAI,yBAAyB,kBAAkB,CAAC,IAAI,CAAC,KAAK,4CASxE,CAAA;AAED,QAAA,MAAM,aAAa,GAAI,yBAGpB,kBAAkB,CAAC,IAAI,CAAC,KAAK,4CAM/B,CAAA;AAED,QAAA,MAAM,gBAAgB,GAAI,mCAIvB,kBAAkB,CAAC,OAAO,CAAC,KAAK,4CAqBlC,CAAA;AAED,QAAA,MAAM,gBAAgB,GAAI,mCAIvB,kBAAkB,CAAC,KAAK,CAAC,KAAK,4CAehC,CAAA;AAED,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Accordion as AccordionPrimitive } from "@base-ui/react/accordion";
|
|
3
|
+
import { cn } from "@iamsaroj/smart-ui/lib/utils";
|
|
4
|
+
import { ChevronDownIcon, ChevronUpIcon } from "lucide-react";
|
|
5
|
+
const Accordion = ({ className, ...props }) => (_jsx(AccordionPrimitive.Root, { "data-slot": "accordion", className: cn("flex w-full flex-col overflow-hidden rounded-md border", className), ...props }));
|
|
6
|
+
const AccordionItem = ({ className, ...props }) => (_jsx(AccordionPrimitive.Item, { "data-slot": "accordion-item", className: cn("not-last:border-b data-open:bg-muted/50", className), ...props }));
|
|
7
|
+
const AccordionTrigger = ({ className, children, ...props }) => (_jsx(AccordionPrimitive.Header, { className: "flex", children: _jsxs(AccordionPrimitive.Trigger, { "data-slot": "accordion-trigger", className: cn("group/accordion-trigger relative flex flex-1 items-start justify-between gap-6 border border-transparent p-2 text-left text-xs/relaxed font-medium transition-all outline-none hover:underline aria-disabled:pointer-events-none aria-disabled:opacity-50 **:data-[slot=accordion-trigger-icon]:ml-auto **:data-[slot=accordion-trigger-icon]:size-4 **:data-[slot=accordion-trigger-icon]:text-muted-foreground", className), ...props, children: [children, _jsx(ChevronDownIcon, { "data-slot": "accordion-trigger-icon", className: "pointer-events-none shrink-0 group-aria-expanded/accordion-trigger:hidden" }), _jsx(ChevronUpIcon, { "data-slot": "accordion-trigger-icon", className: "pointer-events-none hidden shrink-0 group-aria-expanded/accordion-trigger:inline" })] }) }));
|
|
8
|
+
const AccordionContent = ({ className, children, ...props }) => (_jsx(AccordionPrimitive.Panel, { "data-slot": "accordion-content", className: "overflow-hidden px-2 text-xs/relaxed data-open:animate-accordion-down data-closed:animate-accordion-up", ...props, children: _jsx("div", { className: cn("h-(--accordion-panel-height) pt-0 pb-4 data-ending-style:h-0 data-starting-style:h-0 [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4", className), children: children }) }));
|
|
9
|
+
export { Accordion, AccordionItem, AccordionTrigger, AccordionContent };
|
|
10
|
+
//# sourceMappingURL=accordion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"accordion.js","sourceRoot":"","sources":["../../src/components/accordion.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,IAAI,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAE1E,OAAO,EAAE,EAAE,EAAE,MAAM,8BAA8B,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAE7D,MAAM,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAiC,EAAE,EAAE,CAAC,CAC5E,KAAC,kBAAkB,CAAC,IAAI,iBACZ,WAAW,EACrB,SAAS,EAAE,EAAE,CACX,wDAAwD,EACxD,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAA;AAED,MAAM,aAAa,GAAG,CAAC,EACrB,SAAS,EACT,GAAG,KAAK,EACsB,EAAE,EAAE,CAAC,CACnC,KAAC,kBAAkB,CAAC,IAAI,iBACZ,gBAAgB,EAC1B,SAAS,EAAE,EAAE,CAAC,yCAAyC,EAAE,SAAS,CAAC,KAC/D,KAAK,GACT,CACH,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,EACxB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACyB,EAAE,EAAE,CAAC,CACtC,KAAC,kBAAkB,CAAC,MAAM,IAAC,SAAS,EAAC,MAAM,YACzC,MAAC,kBAAkB,CAAC,OAAO,iBACf,mBAAmB,EAC7B,SAAS,EAAE,EAAE,CACX,kZAAkZ,EAClZ,SAAS,CACV,KACG,KAAK,aAER,QAAQ,EACT,KAAC,eAAe,iBACJ,wBAAwB,EAClC,SAAS,EAAC,2EAA2E,GACrF,EACF,KAAC,aAAa,iBACF,wBAAwB,EAClC,SAAS,EAAC,kFAAkF,GAC5F,IACyB,GACH,CAC7B,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,EACxB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACuB,EAAE,EAAE,CAAC,CACpC,KAAC,kBAAkB,CAAC,KAAK,iBACb,mBAAmB,EAC7B,SAAS,EAAC,wGAAwG,KAC9G,KAAK,YAET,cACE,SAAS,EAAE,EAAE,CACX,uLAAuL,EACvL,SAAS,CACV,YAEA,QAAQ,GACL,GACmB,CAC5B,CAAA;AAED,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAA"}
|