@tulip-systems/core 0.8.3 → 0.9.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/dist/auth/client.d.mts +10 -10
- package/dist/auth/client.mjs +10 -10
- package/dist/auth/server.d.mts +7 -7
- package/dist/auth/server.mjs +7 -7
- package/dist/auth.d.mts +5 -5
- package/dist/auth.mjs +5 -5
- package/dist/commands/client.d.mts +17 -16
- package/dist/commands/client.mjs +17 -16
- package/dist/commands.d.mts +3 -3
- package/dist/commands.mjs +3 -2
- package/dist/components/client.d.mts +48 -48
- package/dist/components/client.mjs +48 -48
- package/dist/components/server.d.mts +2 -2
- package/dist/components/server.mjs +2 -2
- package/dist/components/ui/checkbox.client.mjs +1 -1
- package/dist/components/ui/command.client.d.mts +5 -1
- package/dist/components/ui/command.client.mjs +10 -3
- package/dist/components/ui/field.client.mjs +1 -1
- package/dist/components/ui/input-recipient.mjs +1 -1
- package/dist/components/ui/radio-group.mjs +1 -1
- package/dist/components/ui/tabs.client.mjs +1 -1
- package/dist/components.d.mts +39 -39
- package/dist/components.mjs +38 -38
- package/dist/config.d.mts +6 -6
- package/dist/config.mjs +4 -4
- package/dist/data-tables/client.d.mts +21 -18
- package/dist/data-tables/client.mjs +21 -18
- package/dist/data-tables/server.d.mts +7 -7
- package/dist/data-tables/server.mjs +7 -7
- package/dist/data-tables.d.mts +14 -14
- package/dist/data-tables.mjs +13 -13
- package/dist/database/server.d.mts +1 -1
- package/dist/database/server.mjs +1 -1
- package/dist/database.d.mts +2 -2
- package/dist/database.mjs +1 -1
- package/dist/dist/config.d.mts +5 -0
- package/dist/dist/modules/auth/handler/service.server.d.mts +8 -0
- package/dist/dist/modules/auth/lib/permissions.d.mts +2 -0
- package/dist/dist/modules/config/lib/context.d.mts +4 -0
- package/dist/dist/modules/config/paths/helpers.d.mts +1 -0
- package/dist/dist/modules/config/paths/types.d.mts +3 -0
- package/dist/dist/modules/database/lib/helpers.d.mts +2 -0
- package/dist/dist/modules/database/lib/service.server.d.mts +2 -0
- package/dist/dist/modules/database/lib/types.d.mts +5 -0
- package/dist/dist/modules/emails/lib/service.server.d.mts +2 -0
- package/dist/dist/modules/storage/lib/schema.d.mts +1 -0
- package/dist/dist/modules/storage/lib/service.server.d.mts +5 -0
- package/dist/dist/modules/storage/lib/validators.d.mts +4 -0
- package/dist/dist/modules/storage/providers/lib/types.d.mts +1 -0
- package/dist/dist/modules/storage/providers/lib/validators.d.mts +2 -0
- package/dist/emails/server.d.mts +1 -1
- package/dist/emails/server.mjs +1 -1
- package/dist/inline/client.d.mts +16 -0
- package/dist/inline/client.mjs +17 -0
- package/dist/{inline-edit.d.mts → inline.d.mts} +1 -1
- package/dist/{inline-edit.mjs → inline.mjs} +1 -1
- package/dist/lib/client.d.mts +4 -4
- package/dist/lib/client.mjs +4 -4
- package/dist/lib.d.mts +7 -7
- package/dist/lib.mjs +6 -6
- package/dist/modules/auth/components/allowed.client.d.mts +1 -2
- package/dist/modules/auth/components/update-password-command.d.mts +1 -1
- package/dist/modules/auth/components/update-password-command.mjs +1 -1
- package/dist/modules/auth/lib/validators.d.mts +238 -1
- package/dist/modules/auth/lib/validators.mjs +5 -1
- package/dist/modules/commands/components/menus/context-menu.client.d.mts +40 -0
- package/dist/modules/commands/components/menus/context-menu.client.mjs +47 -0
- package/dist/modules/commands/components/menus/dropdown-menu.client.d.mts +30 -0
- package/dist/modules/commands/{menus → components/menus}/dropdown-menu.client.mjs +20 -24
- package/dist/modules/commands/components/menus/floating-menu.client.d.mts +30 -0
- package/dist/modules/commands/components/menus/floating-menu.client.mjs +33 -0
- package/dist/modules/commands/components/menus/inline-menu.client.d.mts +30 -0
- package/dist/modules/commands/components/menus/inline-menu.client.mjs +41 -0
- package/dist/modules/commands/components/menus/responsive-menu.client.d.mts +17 -0
- package/dist/modules/commands/{menus → components/menus}/responsive-menu.client.mjs +1 -1
- package/dist/modules/commands/components/{alert-dialog-command.client.d.mts → primitives/alert-dialog-command.client.d.mts} +3 -30
- package/dist/modules/commands/components/{alert-dialog-command.client.mjs → primitives/alert-dialog-command.client.mjs} +18 -38
- package/dist/modules/commands/components/{click-command.client.d.mts → primitives/click-command.client.d.mts} +2 -2
- package/dist/modules/commands/components/primitives/click-command.client.mjs +52 -0
- package/dist/modules/commands/components/primitives/command-trigger.client.d.mts +17 -0
- package/dist/modules/commands/components/primitives/command-trigger.client.mjs +42 -0
- package/dist/modules/commands/components/{dialog-command.client.d.mts → primitives/dialog-command.client.d.mts} +3 -27
- package/dist/modules/commands/components/{dialog-command.client.mjs → primitives/dialog-command.client.mjs} +14 -31
- package/dist/modules/commands/components/{dropdown-command.client.d.mts → primitives/dropdown-command.client.d.mts} +5 -17
- package/dist/modules/commands/components/{dropdown-command.client.mjs → primitives/dropdown-command.client.mjs} +30 -30
- package/dist/modules/commands/components/{empty-command.client.d.mts → primitives/empty-command.client.d.mts} +4 -2
- package/dist/modules/commands/components/primitives/empty-command.client.mjs +44 -0
- package/dist/modules/commands/components/{form-dialog-command.client.d.mts → primitives/form-dialog-command.client.d.mts} +3 -33
- package/dist/modules/commands/components/{form-dialog-command.client.mjs → primitives/form-dialog-command.client.mjs} +18 -42
- package/dist/modules/commands/components/render-command.mjs +40 -5
- package/dist/modules/commands/{utils → components/utils}/archive-command.client.d.mts +1 -9
- package/dist/modules/commands/{utils → components/utils}/archive-command.client.mjs +4 -12
- package/dist/modules/commands/{utils → components/utils}/delete-command.client.d.mts +1 -8
- package/dist/modules/commands/{utils → components/utils}/delete-command.client.mjs +4 -11
- package/dist/modules/commands/hooks/use-command-mutation.client.d.mts +1 -6
- package/dist/modules/commands/hooks/use-command-mutation.client.mjs +2 -4
- package/dist/modules/commands/hooks/use-command.client.d.mts +31 -0
- package/dist/modules/commands/hooks/use-command.client.mjs +45 -0
- package/dist/modules/commands/lib/builder.d.mts +39 -0
- package/dist/modules/commands/lib/builder.mjs +47 -0
- package/dist/modules/commands/lib/registery.d.mts +35 -0
- package/dist/modules/commands/lib/registery.mjs +43 -0
- package/dist/modules/data-tables/components/filters/combobox.client.d.mts +2 -2
- package/dist/modules/data-tables/components/filters/combobox.client.mjs +7 -9
- package/dist/modules/data-tables/components/filters/date-range.client.d.mts +24 -0
- package/dist/modules/data-tables/components/filters/date-range.client.mjs +99 -0
- package/dist/modules/data-tables/components/filters/search.client.d.mts +17 -0
- package/dist/modules/data-tables/components/filters/search.client.mjs +32 -0
- package/dist/modules/data-tables/components/filters/slider.client.d.mts +2 -2
- package/dist/modules/data-tables/components/filters/slider.client.mjs +2 -2
- package/dist/modules/data-tables/components/filters/toggle.client.d.mts +17 -0
- package/dist/modules/data-tables/components/filters/toggle.client.mjs +25 -0
- package/dist/modules/data-tables/hooks/use-context.client.d.mts +9 -20
- package/dist/modules/data-tables/hooks/use-selection.client.mjs +8 -2
- package/dist/modules/data-tables/hooks/use-table.client.d.mts +1 -3
- package/dist/modules/data-tables/hooks/use-table.client.mjs +4 -3
- package/dist/modules/data-tables/lib/converters/filters.d.mts +40 -0
- package/dist/modules/data-tables/lib/converters/filters.mjs +38 -0
- package/dist/modules/data-tables/lib/converters/{cursor.d.mts → pagination.d.mts} +3 -3
- package/dist/modules/data-tables/lib/converters/{cursor.mjs → pagination.mjs} +3 -3
- package/dist/modules/data-tables/lib/converters/sorting.d.mts +42 -8
- package/dist/modules/data-tables/lib/converters/sorting.mjs +47 -11
- package/dist/modules/data-tables/lib/filters/parsers.d.mts +6 -1
- package/dist/modules/data-tables/lib/filters/parsers.mjs +10 -1
- package/dist/modules/data-tables/lib/types.d.mts +4 -8
- package/dist/modules/data-tables/server/get-data.server.d.mts +2 -3
- package/dist/modules/data-tables/server/get-data.server.mjs +5 -5
- package/dist/modules/data-tables/tables/data-table/components/table.d.mts +1 -3
- package/dist/modules/data-tables/tables/data-table/components/table.mjs +1 -1
- package/dist/modules/data-tables/tables/inline-table/components/row.client.mjs +2 -7
- package/dist/modules/data-tables/tables/inline-table/components/table.d.mts +1 -3
- package/dist/modules/data-tables/tables/inline-table/components/table.mjs +1 -1
- package/dist/modules/data-tables/tables/inline-table/hooks/context.client.d.mts +1 -3
- package/dist/modules/inline/components/cell.client.d.mts +20 -0
- package/dist/modules/inline/components/cell.client.mjs +46 -0
- package/dist/modules/inline/components/field.client.d.mts +36 -0
- package/dist/modules/inline/components/field.client.mjs +61 -0
- package/dist/modules/inline/components/inputs/combobox-dropdown.client.d.mts +27 -0
- package/dist/modules/inline/components/inputs/combobox-dropdown.client.mjs +49 -0
- package/dist/modules/inline/components/inputs/combobox.client.d.mts +22 -0
- package/dist/modules/inline/components/inputs/combobox.client.mjs +45 -0
- package/dist/modules/inline/components/inputs/date-time.client.d.mts +24 -0
- package/dist/modules/inline/components/inputs/date-time.client.mjs +48 -0
- package/dist/modules/inline/components/inputs/date.client.d.mts +66 -0
- package/dist/modules/inline/components/inputs/date.client.mjs +175 -0
- package/dist/modules/inline/components/inputs/editor.client.d.mts +25 -0
- package/dist/modules/inline/components/inputs/editor.client.mjs +51 -0
- package/dist/modules/inline/components/inputs/input-recipient.client.d.mts +27 -0
- package/dist/modules/inline/components/inputs/input-recipient.client.mjs +48 -0
- package/dist/modules/inline/components/inputs/input.client.d.mts +52 -0
- package/dist/modules/inline/components/inputs/input.client.mjs +129 -0
- package/dist/modules/inline/components/inputs/select.client.d.mts +31 -0
- package/dist/modules/inline/components/inputs/select.client.mjs +64 -0
- package/dist/modules/inline/components/inputs/switch.client.d.mts +21 -0
- package/dist/modules/inline/components/inputs/switch.client.mjs +42 -0
- package/dist/modules/inline/components/inputs/toggle.client.d.mts +24 -0
- package/dist/modules/inline/components/inputs/toggle.client.mjs +47 -0
- package/dist/modules/inline/hooks/inline-provider.d.mts +28 -0
- package/dist/modules/inline/hooks/inline-provider.mjs +25 -0
- package/dist/modules/inline/hooks/inline-state.client.d.mts +30 -0
- package/dist/modules/inline/hooks/inline-state.client.mjs +25 -0
- package/dist/modules/inline/hooks/use-inline.client.d.mts +144 -0
- package/dist/modules/inline/hooks/use-inline.client.mjs +125 -0
- package/dist/modules/{inline-edit → inline}/lib/validators.d.mts +1 -1
- package/dist/modules/{inline-edit → inline}/lib/validators.mjs +1 -1
- package/dist/modules/inline/lib/variants.d.mts +11 -0
- package/dist/modules/{inline-edit → inline}/lib/variants.mjs +1 -1
- package/dist/modules/storage/lib/service.server.d.mts +9 -9
- package/dist/router/client.d.mts +1 -1
- package/dist/router/client.mjs +1 -1
- package/dist/router/server.d.mts +7 -7
- package/dist/router/server.mjs +7 -7
- package/dist/router.d.mts +1 -1
- package/dist/router.mjs +1 -1
- package/dist/src/components/common/icons.d.mts +60 -0
- package/dist/src/components/common/icons.mjs +121 -0
- package/dist/src/components/common/status.d.mts +52 -0
- package/dist/src/components/common/status.mjs +55 -0
- package/dist/src/components/editor/components/content.client.d.mts +6 -0
- package/dist/src/components/editor/components/content.client.mjs +16 -0
- package/dist/src/components/editor/components/editor.client.d.mts +48 -0
- package/dist/src/components/editor/components/editor.client.mjs +55 -0
- package/dist/src/components/editor/components/menu-nodes.client.mjs +92 -0
- package/dist/src/components/editor/components/menu.client.d.mts +9 -0
- package/dist/src/components/editor/components/menu.client.mjs +168 -0
- package/dist/src/components/editor/extensions/file-handler/extension.d.mts +20 -0
- package/dist/src/components/editor/extensions/file-handler/extension.mjs +39 -0
- package/dist/src/components/editor/extensions/file-handler/strategy.d.mts +26 -0
- package/dist/src/components/editor/extensions/file-handler/strategy.mjs +110 -0
- package/dist/src/components/editor/extensions/file-handler/utils.mjs +49 -0
- package/dist/src/components/editor/extensions/image/extension.d.mts +7 -0
- package/dist/src/components/editor/extensions/image/extension.mjs +50 -0
- package/dist/src/components/editor/extensions/skeleton/extension.mjs +40 -0
- package/dist/src/components/editor/extensions/skeleton/renderer.mjs +24 -0
- package/dist/src/components/editor/lib/constants.d.mts +62 -0
- package/dist/src/components/editor/lib/constants.mjs +101 -0
- package/dist/src/components/editor/lib/extensions.d.mts +67 -0
- package/dist/src/components/editor/lib/extensions.mjs +49 -0
- package/dist/src/components/editor/lib/helpers.d.mts +21 -0
- package/dist/src/components/editor/lib/helpers.mjs +68 -0
- package/dist/src/components/editor/lib/types.d.mts +9 -0
- package/dist/src/components/editor/lib/variants.mjs +15 -0
- package/dist/src/components/emails/forget-password-email.mjs +50 -0
- package/dist/src/components/header/back-button.client.d.mts +9 -0
- package/dist/src/components/header/back-button.client.mjs +42 -0
- package/dist/src/components/header/bottom-bar.client.d.mts +28 -0
- package/dist/src/components/header/bottom-bar.client.mjs +37 -0
- package/dist/src/components/header/breadcrumbs.client.d.mts +34 -0
- package/dist/src/components/header/breadcrumbs.client.mjs +63 -0
- package/dist/src/components/header/header.client.d.mts +11 -0
- package/dist/src/components/header/header.client.mjs +14 -0
- package/dist/src/components/header/indicator.client.mjs +24 -0
- package/dist/src/components/header/mobile-nav-switcher.client.d.mts +9 -0
- package/dist/src/components/header/mobile-nav-switcher.client.mjs +18 -0
- package/dist/src/components/header/top-bar.client.d.mts +42 -0
- package/dist/src/components/header/top-bar.client.mjs +47 -0
- package/dist/src/components/layouts/admin-content.client.d.mts +12 -0
- package/dist/src/components/layouts/admin-content.client.mjs +22 -0
- package/dist/src/components/layouts/admin-error-pages.d.mts +22 -0
- package/dist/src/components/layouts/admin-error-pages.mjs +59 -0
- package/dist/src/components/layouts/admin-layout.d.mts +7 -0
- package/dist/src/components/layouts/admin-layout.mjs +13 -0
- package/dist/src/components/layouts/admin-loading.d.mts +7 -0
- package/dist/src/components/layouts/admin-loading.mjs +13 -0
- package/dist/src/components/layouts/empty-page.d.mts +30 -0
- package/dist/src/components/layouts/empty-page.mjs +28 -0
- package/dist/src/components/layouts/error-page.d.mts +47 -0
- package/dist/src/components/layouts/error-page.mjs +53 -0
- package/dist/src/components/layouts/error-sections.d.mts +28 -0
- package/dist/src/components/layouts/error-sections.mjs +46 -0
- package/dist/src/components/layouts/list-layout.d.mts +11 -0
- package/dist/src/components/layouts/list-layout.mjs +14 -0
- package/dist/src/components/layouts/providers.client.d.mts +9 -0
- package/dist/src/components/layouts/providers.client.mjs +31 -0
- package/dist/src/components/layouts/root-error-pages.d.mts +9 -0
- package/dist/src/components/layouts/root-error-pages.mjs +16 -0
- package/dist/src/components/layouts/root-layout.server.d.mts +36 -0
- package/dist/src/components/layouts/root-layout.server.mjs +46 -0
- package/dist/src/components/layouts/root-loading.d.mts +6 -0
- package/dist/src/components/layouts/root-loading.mjs +13 -0
- package/dist/src/components/layouts/tab-layout.d.mts +22 -0
- package/dist/src/components/layouts/tab-layout.mjs +50 -0
- package/dist/src/components/lists/data-list.d.mts +30 -0
- package/dist/src/components/lists/data-list.mjs +35 -0
- package/dist/src/components/lists/data-stack.d.mts +48 -0
- package/dist/src/components/lists/data-stack.mjs +56 -0
- package/dist/src/components/navigation/admin-sidebar-header.client.mjs +92 -0
- package/dist/src/components/navigation/admin-sidebar-paths.client.d.mts +91 -0
- package/dist/src/components/navigation/admin-sidebar-paths.client.mjs +143 -0
- package/dist/src/components/navigation/admin-sidebar-skeleton.mjs +30 -0
- package/dist/src/components/ui/accordion.client.d.mts +25 -0
- package/dist/src/components/ui/accordion.client.mjs +57 -0
- package/dist/src/components/ui/alert-dialog.client.d.mts +60 -0
- package/dist/src/components/ui/alert-dialog.client.mjs +103 -0
- package/dist/src/components/ui/alert.d.mts +28 -0
- package/dist/src/components/ui/alert.mjs +44 -0
- package/dist/src/components/ui/aspect-ratio.client.d.mts +9 -0
- package/dist/src/components/ui/aspect-ratio.client.mjs +15 -0
- package/dist/src/components/ui/avatar.client.d.mts +34 -0
- package/dist/src/components/ui/avatar.client.mjs +53 -0
- package/dist/src/components/ui/badge.d.mts +19 -0
- package/dist/src/components/ui/badge.mjs +28 -0
- package/dist/src/components/ui/breadcrumb.d.mts +37 -0
- package/dist/src/components/ui/breadcrumb.mjs +70 -0
- package/dist/src/components/ui/button-group.d.mts +28 -0
- package/dist/src/components/ui/button-group.mjs +40 -0
- package/dist/src/components/ui/button.d.mts +21 -0
- package/dist/src/components/ui/button.mjs +48 -0
- package/dist/src/components/ui/calendar.client.d.mts +30 -0
- package/dist/src/components/ui/calendar.client.mjs +113 -0
- package/dist/src/components/ui/card.d.mts +37 -0
- package/dist/src/components/ui/card.mjs +57 -0
- package/dist/src/components/ui/carousel.client.d.mts +56 -0
- package/dist/src/components/ui/carousel.client.mjs +135 -0
- package/dist/src/components/ui/chart.client.d.mts +71 -0
- package/dist/src/components/ui/chart.client.mjs +142 -0
- package/dist/src/components/ui/checkbox.client.d.mts +11 -0
- package/dist/src/components/ui/checkbox.client.mjs +23 -0
- package/dist/src/components/ui/collapsible.client.d.mts +15 -0
- package/dist/src/components/ui/collapsible.client.mjs +27 -0
- package/dist/src/components/ui/color-picker.client.d.mts +15 -0
- package/dist/src/components/ui/color-picker.client.mjs +38 -0
- package/dist/src/components/ui/combobox-dropdown.client.d.mts +45 -0
- package/dist/src/components/ui/combobox-dropdown.client.mjs +94 -0
- package/dist/src/components/ui/combobox.client.d.mts +30 -0
- package/dist/src/components/ui/combobox.client.mjs +66 -0
- package/dist/src/components/ui/command.client.d.mts +58 -0
- package/dist/src/components/ui/command.client.mjs +97 -0
- package/dist/src/components/ui/context-menu.client.d.mts +85 -0
- package/dist/src/components/ui/context-menu.client.mjs +127 -0
- package/dist/src/components/ui/date-picker.client.d.mts +20 -0
- package/dist/src/components/ui/date-picker.client.mjs +43 -0
- package/dist/src/components/ui/dialog.client.d.mts +51 -0
- package/dist/src/components/ui/dialog.client.mjs +98 -0
- package/dist/src/components/ui/drawer.client.d.mts +44 -0
- package/dist/src/components/ui/drawer.client.mjs +80 -0
- package/dist/src/components/ui/dropdown-menu.client.d.mts +84 -0
- package/dist/src/components/ui/dropdown-menu.client.mjs +130 -0
- package/dist/src/components/ui/empty.d.mts +35 -0
- package/dist/src/components/ui/empty.mjs +61 -0
- package/dist/src/components/ui/field.client.d.mts +64 -0
- package/dist/src/components/ui/field.client.mjs +113 -0
- package/dist/src/components/ui/form.client.d.mts +47 -0
- package/dist/src/components/ui/form.client.mjs +92 -0
- package/dist/src/components/ui/hover-card.client.d.mts +19 -0
- package/dist/src/components/ui/hover-card.client.mjs +34 -0
- package/dist/src/components/ui/input-date-time.client.d.mts +22 -0
- package/dist/src/components/ui/input-date-time.client.mjs +33 -0
- package/dist/src/components/ui/input-date.d.mts +13 -0
- package/dist/src/components/ui/input-date.mjs +15 -0
- package/dist/src/components/ui/input-group.client.d.mts +58 -0
- package/dist/src/components/ui/input-group.client.mjs +105 -0
- package/dist/src/components/ui/input-recipient.d.mts +26 -0
- package/dist/src/components/ui/input-recipient.mjs +218 -0
- package/dist/src/components/ui/input-time.d.mts +13 -0
- package/dist/src/components/ui/input-time.mjs +15 -0
- package/dist/src/components/ui/input.d.mts +11 -0
- package/dist/src/components/ui/input.mjs +15 -0
- package/dist/src/components/ui/item.d.mts +62 -0
- package/dist/src/components/ui/item.mjs +118 -0
- package/dist/src/components/ui/kbd.d.mts +13 -0
- package/dist/src/components/ui/kbd.mjs +21 -0
- package/dist/src/components/ui/label.d.mts +11 -0
- package/dist/src/components/ui/label.mjs +17 -0
- package/dist/src/components/ui/loader.d.mts +6 -0
- package/dist/src/components/ui/loader.mjs +62 -0
- package/dist/src/components/ui/navigation-menu.d.mts +46 -0
- package/dist/src/components/ui/navigation-menu.mjs +81 -0
- package/dist/src/components/ui/pagination.d.mts +45 -0
- package/dist/src/components/ui/pagination.mjs +87 -0
- package/dist/src/components/ui/popover.client.d.mts +34 -0
- package/dist/src/components/ui/popover.client.mjs +58 -0
- package/dist/src/components/ui/progress.client.d.mts +12 -0
- package/dist/src/components/ui/progress.client.mjs +22 -0
- package/dist/src/components/ui/radio-group.d.mts +15 -0
- package/dist/src/components/ui/radio-group.mjs +29 -0
- package/dist/src/components/ui/resizable.client.d.mts +20 -0
- package/dist/src/components/ui/resizable.client.mjs +31 -0
- package/dist/src/components/ui/scroll-area.d.mts +17 -0
- package/dist/src/components/ui/scroll-area.mjs +39 -0
- package/dist/src/components/ui/select.client.d.mts +53 -0
- package/dist/src/components/ui/select.client.mjs +102 -0
- package/dist/src/components/ui/separator.d.mts +13 -0
- package/dist/src/components/ui/separator.mjs +19 -0
- package/dist/src/components/ui/sheet.client.d.mts +42 -0
- package/dist/src/components/ui/sheet.client.mjs +92 -0
- package/dist/src/components/ui/sidebar.client.d.mts +167 -0
- package/dist/src/components/ui/sidebar.client.mjs +373 -0
- package/dist/src/components/ui/skeleton.d.mts +9 -0
- package/dist/src/components/ui/skeleton.mjs +14 -0
- package/dist/src/components/ui/slider.d.mts +15 -0
- package/dist/src/components/ui/slider.mjs +39 -0
- package/dist/src/components/ui/sonner.client.d.mts +9 -0
- package/dist/src/components/ui/sonner.client.mjs +24 -0
- package/dist/src/components/ui/spinner.d.mts +9 -0
- package/dist/src/components/ui/spinner.mjs +16 -0
- package/dist/src/components/ui/switch.client.d.mts +14 -0
- package/dist/src/components/ui/switch.client.mjs +22 -0
- package/dist/src/components/ui/tabs.client.d.mts +30 -0
- package/dist/src/components/ui/tabs.client.mjs +48 -0
- package/dist/src/components/ui/textarea.d.mts +10 -0
- package/dist/src/components/ui/textarea.mjs +14 -0
- package/dist/src/components/ui/toggle-group.client.d.mts +28 -0
- package/dist/src/components/ui/toggle-group.client.mjs +54 -0
- package/dist/src/components/ui/toggle.client.d.mts +19 -0
- package/dist/src/components/ui/toggle.client.mjs +39 -0
- package/dist/src/components/ui/tooltip.client.d.mts +23 -0
- package/dist/src/components/ui/tooltip.client.mjs +38 -0
- package/dist/src/lib/hooks/use-action.d.mts +16 -0
- package/dist/src/lib/hooks/use-action.mjs +41 -0
- package/dist/src/lib/hooks/use-indicator.d.mts +39 -0
- package/dist/src/lib/hooks/use-indicator.mjs +63 -0
- package/dist/src/lib/hooks/use-mobile.client.d.mts +6 -0
- package/dist/src/lib/hooks/use-mobile.client.mjs +21 -0
- package/dist/src/lib/types/config.d.mts +11 -0
- package/dist/src/lib/utils/array-move.d.mts +10 -0
- package/dist/src/lib/utils/array-move.mjs +12 -0
- package/dist/src/lib/utils/cn.d.mts +6 -0
- package/dist/src/lib/utils/cn.mjs +10 -0
- package/dist/src/lib/utils/fonts.d.mts +7 -0
- package/dist/src/lib/utils/fonts.mjs +11 -0
- package/dist/src/lib/utils/format.d.mts +51 -0
- package/dist/src/lib/utils/format.mjs +113 -0
- package/dist/src/lib/utils/manifest.d.mts +7 -0
- package/dist/src/lib/utils/manifest.mjs +35 -0
- package/dist/src/lib/utils/markdown.d.mts +9 -0
- package/dist/src/lib/utils/markdown.mjs +14 -0
- package/dist/src/lib/utils/url.d.mts +9 -0
- package/dist/src/lib/utils/url.mjs +15 -0
- package/dist/src/lib/utils/user-agent.mjs +74 -0
- package/dist/src/modules/auth/components/allowed.client.d.mts +33 -0
- package/dist/src/modules/auth/components/allowed.client.mjs +19 -0
- package/dist/src/modules/auth/components/auth-layout.server.d.mts +9 -0
- package/dist/src/modules/auth/components/auth-layout.server.mjs +36 -0
- package/dist/src/modules/auth/components/auth-loading.d.mts +6 -0
- package/dist/src/modules/auth/components/auth-loading.mjs +17 -0
- package/dist/src/modules/auth/components/create-first-user-guard.server.d.mts +15 -0
- package/dist/src/modules/auth/components/create-first-user-guard.server.mjs +15 -0
- package/dist/src/modules/auth/components/create-first-user-page.client.d.mts +6 -0
- package/dist/src/modules/auth/components/create-first-user-page.client.mjs +153 -0
- package/dist/src/modules/auth/components/forget-password-page.client.d.mts +6 -0
- package/dist/src/modules/auth/components/forget-password-page.client.mjs +72 -0
- package/dist/src/modules/auth/components/guard.server.d.mts +14 -0
- package/dist/src/modules/auth/components/guard.server.mjs +20 -0
- package/dist/src/modules/auth/components/login-page.client.d.mts +11 -0
- package/dist/src/modules/auth/components/login-page.client.mjs +155 -0
- package/dist/src/modules/auth/components/reset-password-page.client.d.mts +11 -0
- package/dist/src/modules/auth/components/reset-password-page.client.mjs +121 -0
- package/dist/src/modules/auth/components/update-password-command.d.mts +22 -0
- package/dist/src/modules/auth/components/update-password-command.mjs +47 -0
- package/dist/src/modules/auth/db/schema.d.mts +983 -0
- package/dist/src/modules/auth/db/schema.mjs +101 -0
- package/dist/src/modules/auth/handler/create-client.client.d.mts +6393 -0
- package/dist/src/modules/auth/handler/create-client.client.mjs +25 -0
- package/dist/src/modules/auth/handler/proxy.server.d.mts +11 -0
- package/dist/src/modules/auth/handler/proxy.server.mjs +20 -0
- package/dist/src/modules/auth/handler/route.server.d.mts +16 -0
- package/dist/src/modules/auth/handler/route.server.mjs +28 -0
- package/dist/src/modules/auth/handler/service.server.d.mts +2101 -0
- package/dist/src/modules/auth/handler/service.server.mjs +87 -0
- package/dist/src/modules/auth/hooks/use-auth-client.d.mts +23 -0
- package/dist/src/modules/auth/hooks/use-auth-client.mjs +30 -0
- package/dist/src/modules/auth/hooks/use-permission.d.mts +42 -0
- package/dist/src/modules/auth/hooks/use-permission.mjs +57 -0
- package/dist/src/modules/auth/hooks/use-session.d.mts +40 -0
- package/dist/src/modules/auth/hooks/use-session.mjs +22 -0
- package/dist/src/modules/auth/lib/helpers.server.d.mts +84 -0
- package/dist/src/modules/auth/lib/helpers.server.mjs +41 -0
- package/dist/src/modules/auth/lib/permissions.d.mts +17 -0
- package/dist/src/modules/auth/lib/permissions.mjs +14 -0
- package/dist/src/modules/auth/lib/validators.d.mts +299 -0
- package/dist/src/modules/auth/lib/validators.mjs +59 -0
- package/dist/src/modules/commands/components/menus/context-menu.client.d.mts +40 -0
- package/dist/src/modules/commands/components/menus/context-menu.client.mjs +47 -0
- package/dist/src/modules/commands/components/menus/dropdown-menu.client.d.mts +30 -0
- package/dist/src/modules/commands/components/menus/dropdown-menu.client.mjs +58 -0
- package/dist/src/modules/commands/components/menus/floating-menu.client.d.mts +30 -0
- package/dist/src/modules/commands/components/menus/floating-menu.client.mjs +33 -0
- package/dist/src/modules/commands/components/menus/inline-menu.client.d.mts +30 -0
- package/dist/src/modules/commands/components/menus/inline-menu.client.mjs +41 -0
- package/dist/src/modules/commands/components/menus/responsive-menu.client.d.mts +17 -0
- package/dist/src/modules/commands/components/menus/responsive-menu.client.mjs +22 -0
- package/dist/src/modules/commands/components/primitives/alert-dialog-command.client.d.mts +65 -0
- package/dist/src/modules/commands/components/primitives/alert-dialog-command.client.mjs +138 -0
- package/dist/src/modules/commands/components/primitives/click-command.client.d.mts +26 -0
- package/dist/src/modules/commands/components/primitives/click-command.client.mjs +52 -0
- package/dist/src/modules/commands/components/primitives/command-trigger.client.d.mts +17 -0
- package/dist/src/modules/commands/components/primitives/command-trigger.client.mjs +42 -0
- package/dist/src/modules/commands/components/primitives/dialog-command.client.d.mts +53 -0
- package/dist/src/modules/commands/components/primitives/dialog-command.client.mjs +116 -0
- package/dist/src/modules/commands/components/primitives/dropdown-command.client.d.mts +47 -0
- package/dist/src/modules/commands/components/primitives/dropdown-command.client.mjs +131 -0
- package/dist/src/modules/commands/components/primitives/empty-command.client.d.mts +20 -0
- package/dist/src/modules/commands/components/primitives/empty-command.client.mjs +44 -0
- package/dist/src/modules/commands/components/primitives/form-dialog-command.client.d.mts +71 -0
- package/dist/src/modules/commands/components/primitives/form-dialog-command.client.mjs +163 -0
- package/dist/src/modules/commands/components/render-command.mjs +50 -0
- package/dist/src/modules/commands/components/utils/archive-command.client.d.mts +24 -0
- package/dist/src/modules/commands/components/utils/archive-command.client.mjs +29 -0
- package/dist/src/modules/commands/components/utils/delete-command.client.d.mts +20 -0
- package/dist/src/modules/commands/components/utils/delete-command.client.mjs +28 -0
- package/dist/src/modules/commands/hooks/use-command-mutation.client.d.mts +11 -0
- package/dist/src/modules/commands/hooks/use-command-mutation.client.mjs +39 -0
- package/dist/src/modules/commands/hooks/use-command.client.d.mts +31 -0
- package/dist/src/modules/commands/hooks/use-command.client.mjs +45 -0
- package/dist/src/modules/commands/lib/builder.d.mts +39 -0
- package/dist/src/modules/commands/lib/builder.mjs +47 -0
- package/dist/src/modules/commands/lib/registery.d.mts +35 -0
- package/dist/src/modules/commands/lib/registery.mjs +43 -0
- package/dist/src/modules/config/lib/config.d.mts +16 -0
- package/dist/src/modules/config/lib/config.mjs +8 -0
- package/dist/src/modules/config/lib/context.d.mts +17 -0
- package/dist/src/modules/config/lib/context.mjs +7 -0
- package/dist/src/modules/config/paths/helpers.d.mts +9 -0
- package/dist/src/modules/config/paths/helpers.mjs +8 -0
- package/dist/src/modules/config/paths/types.d.mts +31 -0
- package/dist/src/modules/data-tables/components/cell/common.client.d.mts +26 -0
- package/dist/src/modules/data-tables/components/cell/common.client.mjs +35 -0
- package/dist/src/modules/data-tables/components/cell/index.client.d.mts +10 -0
- package/dist/src/modules/data-tables/components/cell/index.client.mjs +24 -0
- package/dist/src/modules/data-tables/components/cell/select.client.d.mts +10 -0
- package/dist/src/modules/data-tables/components/cell/select.client.mjs +36 -0
- package/dist/src/modules/data-tables/components/column-header.d.mts +15 -0
- package/dist/src/modules/data-tables/components/column-header.mjs +46 -0
- package/dist/src/modules/data-tables/components/filters/combobox.client.d.mts +27 -0
- package/dist/src/modules/data-tables/components/filters/combobox.client.mjs +97 -0
- package/dist/src/modules/data-tables/components/filters/date-range.client.d.mts +24 -0
- package/dist/src/modules/data-tables/components/filters/date-range.client.mjs +99 -0
- package/dist/src/modules/data-tables/components/filters/search.client.d.mts +17 -0
- package/dist/src/modules/data-tables/components/filters/search.client.mjs +32 -0
- package/dist/src/modules/data-tables/components/filters/slider.client.d.mts +22 -0
- package/dist/src/modules/data-tables/components/filters/slider.client.mjs +128 -0
- package/dist/src/modules/data-tables/components/filters/toggle.client.d.mts +17 -0
- package/dist/src/modules/data-tables/components/filters/toggle.client.mjs +25 -0
- package/dist/src/modules/data-tables/components/footer.mjs +28 -0
- package/dist/src/modules/data-tables/components/header.d.mts +40 -0
- package/dist/src/modules/data-tables/components/header.mjs +43 -0
- package/dist/src/modules/data-tables/components/layout.d.mts +11 -0
- package/dist/src/modules/data-tables/components/layout.mjs +14 -0
- package/dist/src/modules/data-tables/components/search-input.client.d.mts +6 -0
- package/dist/src/modules/data-tables/components/search-input.client.mjs +19 -0
- package/dist/src/modules/data-tables/components/skeleton.d.mts +6 -0
- package/dist/src/modules/data-tables/components/skeleton.mjs +21 -0
- package/dist/src/modules/data-tables/components/table.d.mts +33 -0
- package/dist/src/modules/data-tables/components/table.mjs +55 -0
- package/dist/src/modules/data-tables/components/toolbar.d.mts +22 -0
- package/dist/src/modules/data-tables/components/toolbar.mjs +21 -0
- package/dist/src/modules/data-tables/hooks/use-context.client.d.mts +47 -0
- package/dist/src/modules/data-tables/hooks/use-context.client.mjs +34 -0
- package/dist/src/modules/data-tables/hooks/use-search.client.mjs +39 -0
- package/dist/src/modules/data-tables/hooks/use-selection.client.mjs +44 -0
- package/dist/src/modules/data-tables/hooks/use-table.client.d.mts +10 -0
- package/dist/src/modules/data-tables/hooks/use-table.client.mjs +55 -0
- package/dist/src/modules/data-tables/lib/converters/dto.d.mts +50 -0
- package/dist/src/modules/data-tables/lib/converters/dto.mjs +24 -0
- package/dist/src/modules/data-tables/lib/converters/filters.d.mts +41 -0
- package/dist/src/modules/data-tables/lib/converters/filters.mjs +38 -0
- package/dist/src/modules/data-tables/lib/converters/pagination.d.mts +17 -0
- package/dist/src/modules/data-tables/lib/converters/pagination.mjs +15 -0
- package/dist/src/modules/data-tables/lib/converters/search.d.mts +16 -0
- package/dist/src/modules/data-tables/lib/converters/search.mjs +15 -0
- package/dist/src/modules/data-tables/lib/converters/sorting.d.mts +48 -0
- package/dist/src/modules/data-tables/lib/converters/sorting.mjs +55 -0
- package/dist/src/modules/data-tables/lib/filters/config.d.mts +13 -0
- package/dist/src/modules/data-tables/lib/filters/config.mjs +5 -0
- package/dist/src/modules/data-tables/lib/filters/helpers.d.mts +10 -0
- package/dist/src/modules/data-tables/lib/filters/helpers.mjs +16 -0
- package/dist/src/modules/data-tables/lib/filters/parsers.d.mts +46 -0
- package/dist/src/modules/data-tables/lib/filters/parsers.mjs +47 -0
- package/dist/src/modules/data-tables/lib/filters/resolvers.d.mts +28 -0
- package/dist/src/modules/data-tables/lib/filters/resolvers.mjs +55 -0
- package/dist/src/modules/data-tables/lib/helpers/create-column.mjs +10 -0
- package/dist/src/modules/data-tables/lib/search-params.d.mts +21 -0
- package/dist/src/modules/data-tables/lib/search-params.mjs +16 -0
- package/dist/src/modules/data-tables/lib/types.d.mts +54 -0
- package/dist/src/modules/data-tables/lib/validators.d.mts +19 -0
- package/dist/src/modules/data-tables/lib/validators.mjs +16 -0
- package/dist/src/modules/data-tables/server/get-data.server.d.mts +29 -0
- package/dist/src/modules/data-tables/server/get-data.server.mjs +47 -0
- package/dist/src/modules/data-tables/strategies/helpers/sorting.mjs +37 -0
- package/dist/src/modules/data-tables/strategies/infinite/components.mjs +50 -0
- package/dist/src/modules/data-tables/strategies/infinite/strategy.d.mts +20 -0
- package/dist/src/modules/data-tables/strategies/infinite/strategy.mjs +50 -0
- package/dist/src/modules/data-tables/strategies/pagination/components.mjs +131 -0
- package/dist/src/modules/data-tables/strategies/pagination/strategy.d.mts +12 -0
- package/dist/src/modules/data-tables/strategies/pagination/strategy.mjs +45 -0
- package/dist/src/modules/data-tables/tables/data-table/components/body.mjs +32 -0
- package/dist/src/modules/data-tables/tables/data-table/components/header.mjs +12 -0
- package/dist/src/modules/data-tables/tables/data-table/components/row.mjs +13 -0
- package/dist/src/modules/data-tables/tables/data-table/components/table.d.mts +8 -0
- package/dist/src/modules/data-tables/tables/data-table/components/table.mjs +42 -0
- package/dist/src/modules/data-tables/tables/inline-table/components/body.mjs +69 -0
- package/dist/src/modules/data-tables/tables/inline-table/components/cells/common.d.mts +11 -0
- package/dist/src/modules/data-tables/tables/inline-table/components/cells/common.mjs +14 -0
- package/dist/src/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.d.mts +24 -0
- package/dist/src/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.mjs +38 -0
- package/dist/src/modules/data-tables/tables/inline-table/components/cells/read-only.d.mts +11 -0
- package/dist/src/modules/data-tables/tables/inline-table/components/cells/read-only.mjs +14 -0
- package/dist/src/modules/data-tables/tables/inline-table/components/header.mjs +10 -0
- package/dist/src/modules/data-tables/tables/inline-table/components/row.client.mjs +24 -0
- package/dist/src/modules/data-tables/tables/inline-table/components/table.d.mts +14 -0
- package/dist/src/modules/data-tables/tables/inline-table/components/table.mjs +52 -0
- package/dist/src/modules/data-tables/tables/inline-table/hooks/context.client.d.mts +48 -0
- package/dist/src/modules/data-tables/tables/inline-table/hooks/context.client.mjs +58 -0
- package/dist/src/modules/data-tables/tables/inline-table/hooks/use-hotkeys.client.d.mts +29 -0
- package/dist/src/modules/data-tables/tables/inline-table/hooks/use-hotkeys.client.mjs +94 -0
- package/dist/src/modules/database/lib/helpers.d.mts +15 -0
- package/dist/src/modules/database/lib/helpers.mjs +16 -0
- package/dist/src/modules/database/lib/service.server.d.mts +33 -0
- package/dist/src/modules/database/lib/service.server.mjs +23 -0
- package/dist/src/modules/database/lib/types.d.mts +4 -0
- package/dist/src/modules/emails/lib/service.server.d.mts +28 -0
- package/dist/src/modules/emails/lib/service.server.mjs +20 -0
- package/dist/src/modules/inline/components/cell.client.d.mts +20 -0
- package/dist/src/modules/inline/components/cell.client.mjs +46 -0
- package/dist/src/modules/inline/components/field.client.d.mts +36 -0
- package/dist/src/modules/inline/components/field.client.mjs +61 -0
- package/dist/src/modules/inline/components/inputs/combobox-dropdown.client.d.mts +27 -0
- package/dist/src/modules/inline/components/inputs/combobox-dropdown.client.mjs +49 -0
- package/dist/src/modules/inline/components/inputs/combobox.client.d.mts +22 -0
- package/dist/src/modules/inline/components/inputs/combobox.client.mjs +45 -0
- package/dist/src/modules/inline/components/inputs/date-time.client.d.mts +24 -0
- package/dist/src/modules/inline/components/inputs/date-time.client.mjs +48 -0
- package/dist/src/modules/inline/components/inputs/date.client.d.mts +66 -0
- package/dist/src/modules/inline/components/inputs/date.client.mjs +175 -0
- package/dist/src/modules/inline/components/inputs/editor.client.d.mts +25 -0
- package/dist/src/modules/inline/components/inputs/editor.client.mjs +51 -0
- package/dist/src/modules/inline/components/inputs/input-recipient.client.d.mts +27 -0
- package/dist/src/modules/inline/components/inputs/input-recipient.client.mjs +48 -0
- package/dist/src/modules/inline/components/inputs/input.client.d.mts +52 -0
- package/dist/src/modules/inline/components/inputs/input.client.mjs +129 -0
- package/dist/src/modules/inline/components/inputs/select.client.d.mts +31 -0
- package/dist/src/modules/inline/components/inputs/select.client.mjs +64 -0
- package/dist/src/modules/inline/components/inputs/switch.client.d.mts +21 -0
- package/dist/src/modules/inline/components/inputs/switch.client.mjs +42 -0
- package/dist/src/modules/inline/components/inputs/toggle.client.d.mts +24 -0
- package/dist/src/modules/inline/components/inputs/toggle.client.mjs +47 -0
- package/dist/src/modules/inline/hooks/inline-provider.d.mts +28 -0
- package/dist/src/modules/inline/hooks/inline-provider.mjs +25 -0
- package/dist/src/modules/inline/hooks/inline-state.client.d.mts +30 -0
- package/dist/src/modules/inline/hooks/inline-state.client.mjs +25 -0
- package/dist/src/modules/inline/hooks/use-inline.client.d.mts +144 -0
- package/dist/src/modules/inline/hooks/use-inline.client.mjs +125 -0
- package/dist/src/modules/inline/lib/validators.d.mts +56 -0
- package/dist/src/modules/inline/lib/validators.mjs +34 -0
- package/dist/{modules/inline-edit → src/modules/inline}/lib/variants.d.mts +1 -1
- package/dist/src/modules/inline/lib/variants.mjs +21 -0
- package/dist/src/modules/router/handler/caller.client.d.mts +10 -0
- package/dist/src/modules/router/handler/caller.client.mjs +23 -0
- package/dist/src/modules/router/handler/caller.server.d.mts +6 -0
- package/dist/src/modules/router/handler/caller.server.mjs +7 -0
- package/dist/src/modules/router/handler/context.server.d.mts +62 -0
- package/dist/src/modules/router/handler/context.server.mjs +20 -0
- package/dist/src/modules/router/handler/init.server.d.mts +65 -0
- package/dist/src/modules/router/handler/init.server.mjs +55 -0
- package/dist/src/modules/router/handler/register.server.d.mts +8 -0
- package/dist/src/modules/router/handler/register.server.mjs +10 -0
- package/dist/src/modules/router/handler/route.server.d.mts +21 -0
- package/dist/src/modules/router/handler/route.server.mjs +32 -0
- package/dist/src/modules/router/lib/error.server.d.mts +2 -0
- package/dist/src/modules/router/lib/error.server.mjs +3 -0
- package/dist/src/modules/router/lib/helpers.mjs +7 -0
- package/dist/src/modules/router/lib/query-client.d.mts +9 -0
- package/dist/src/modules/router/lib/query-client.mjs +50 -0
- package/dist/src/modules/router/lib/query-client.server.d.mts +17 -0
- package/dist/src/modules/router/lib/query-client.server.mjs +23 -0
- package/dist/src/modules/router/lib/validators.d.mts +12 -0
- package/dist/src/modules/router/lib/validators.mjs +10 -0
- package/dist/src/modules/storage/components/dropzone-context.client.d.mts +18 -0
- package/dist/src/modules/storage/components/dropzone-context.client.mjs +17 -0
- package/dist/src/modules/storage/components/dropzone.client.d.mts +52 -0
- package/dist/src/modules/storage/components/dropzone.client.mjs +110 -0
- package/dist/src/modules/storage/components/image-grid.client.d.mts +32 -0
- package/dist/src/modules/storage/components/image-grid.client.mjs +167 -0
- package/dist/src/modules/storage/components/image.client.d.mts +7 -0
- package/dist/src/modules/storage/components/image.client.mjs +16 -0
- package/dist/src/modules/storage/components/upload-button.client.d.mts +11 -0
- package/dist/src/modules/storage/components/upload-button.client.mjs +33 -0
- package/dist/src/modules/storage/components/upload-zone-context.client.d.mts +30 -0
- package/dist/src/modules/storage/components/upload-zone-context.client.mjs +20 -0
- package/dist/src/modules/storage/components/upload-zone.client.d.mts +27 -0
- package/dist/src/modules/storage/components/upload-zone.client.mjs +111 -0
- package/dist/src/modules/storage/lib/constants.d.mts +5 -0
- package/dist/src/modules/storage/lib/constants.mjs +5 -0
- package/dist/src/modules/storage/lib/helpers.d.mts +29 -0
- package/dist/src/modules/storage/lib/helpers.mjs +49 -0
- package/dist/src/modules/storage/lib/procedures.server.d.mts +1990 -0
- package/dist/src/modules/storage/lib/procedures.server.mjs +21 -0
- package/dist/src/modules/storage/lib/router-handlers.server.d.mts +40 -0
- package/dist/src/modules/storage/lib/router-handlers.server.mjs +123 -0
- package/dist/src/modules/storage/lib/schema.d.mts +291 -0
- package/dist/src/modules/storage/lib/schema.mjs +37 -0
- package/dist/src/modules/storage/lib/service.server.d.mts +2217 -0
- package/dist/src/modules/storage/lib/service.server.mjs +514 -0
- package/dist/src/modules/storage/lib/upload.client.d.mts +57 -0
- package/dist/src/modules/storage/lib/upload.client.mjs +86 -0
- package/dist/src/modules/storage/lib/validators.d.mts +935 -0
- package/dist/src/modules/storage/lib/validators.mjs +52 -0
- package/dist/src/modules/storage/providers/adapters/s3.server.d.mts +18 -0
- package/dist/src/modules/storage/providers/adapters/s3.server.mjs +172 -0
- package/dist/src/modules/storage/providers/lib/constants.d.mts +5 -0
- package/dist/src/modules/storage/providers/lib/constants.mjs +5 -0
- package/dist/src/modules/storage/providers/lib/errors.d.mts +11 -0
- package/dist/src/modules/storage/providers/lib/errors.mjs +12 -0
- package/dist/src/modules/storage/providers/lib/types.d.mts +20 -0
- package/dist/src/modules/storage/providers/lib/validators.d.mts +111 -0
- package/dist/src/modules/storage/providers/lib/validators.mjs +74 -0
- package/dist/storage/client.d.mts +8 -8
- package/dist/storage/client.mjs +8 -8
- package/dist/storage/server.d.mts +4 -4
- package/dist/storage/server.mjs +4 -4
- package/dist/storage.d.mts +8 -8
- package/dist/storage.mjs +7 -7
- package/package.json +4 -4
- package/src/components/ui/accordion.client.tsx +1 -1
- package/src/components/ui/alert.tsx +1 -1
- package/src/components/ui/avatar.client.tsx +1 -1
- package/src/components/ui/breadcrumb.tsx +2 -2
- package/src/components/ui/card.tsx +1 -1
- package/src/components/ui/carousel.client.tsx +2 -2
- package/src/components/ui/chart.client.tsx +2 -2
- package/src/components/ui/checkbox.client.tsx +1 -1
- package/src/components/ui/collapsible.client.tsx +1 -1
- package/src/components/ui/command.client.tsx +19 -4
- package/src/components/ui/context-menu.client.tsx +6 -6
- package/src/components/ui/drawer.client.tsx +5 -5
- package/src/components/ui/dropdown-menu.client.tsx +5 -5
- package/src/components/ui/empty.tsx +1 -1
- package/src/components/ui/field.client.tsx +3 -3
- package/src/components/ui/hover-card.client.tsx +1 -1
- package/src/components/ui/input-group.client.tsx +3 -3
- package/src/components/ui/input-recipient.tsx +1 -1
- package/src/components/ui/item.tsx +5 -5
- package/src/components/ui/navigation-menu.tsx +4 -4
- package/src/components/ui/pagination.tsx +0 -1
- package/src/components/ui/radio-group.tsx +1 -1
- package/src/components/ui/sheet.client.tsx +3 -3
- package/src/components/ui/tabs.client.tsx +3 -3
- package/src/entry.ts +3 -3
- package/src/modules/auth/components/allowed.client.tsx +1 -2
- package/src/modules/auth/components/update-password-command.tsx +1 -1
- package/src/modules/auth/lib/validators.ts +7 -0
- package/src/modules/commands/components/menus/context-menu.client.tsx +79 -0
- package/src/modules/commands/components/menus/dropdown-menu.client.tsx +85 -0
- package/src/modules/commands/components/menus/floating-menu.client.tsx +64 -0
- package/src/modules/commands/components/menus/inline-menu.client.tsx +66 -0
- package/src/modules/commands/{menus → components/menus}/responsive-menu.client.tsx +15 -4
- package/src/modules/commands/components/{alert-dialog-command.client.tsx → primitives/alert-dialog-command.client.tsx} +11 -40
- package/src/modules/commands/components/{click-command.client.tsx → primitives/click-command.client.tsx} +8 -19
- package/src/modules/commands/components/primitives/command-trigger.client.tsx +60 -0
- package/src/modules/commands/components/{dialog-command.client.tsx → primitives/dialog-command.client.tsx} +8 -31
- package/src/modules/commands/components/{dropdown-command.client.tsx → primitives/dropdown-command.client.tsx} +24 -40
- package/src/modules/commands/components/{empty-command.client.tsx → primitives/empty-command.client.tsx} +9 -17
- package/src/modules/commands/components/{form-dialog-command.client.tsx → primitives/form-dialog-command.client.tsx} +11 -53
- package/src/modules/commands/components/render-command.tsx +51 -10
- package/src/modules/commands/{utils → components/utils}/archive-command.client.tsx +2 -10
- package/src/modules/commands/{utils → components/utils}/delete-command.client.tsx +3 -9
- package/src/modules/commands/entry.client.ts +15 -23
- package/src/modules/commands/entry.ts +5 -2
- package/src/modules/commands/hooks/{use-command-mutation.client.tsx → use-command-mutation.client.ts} +2 -19
- package/src/modules/commands/hooks/use-command.client.tsx +78 -0
- package/src/modules/commands/lib/builder.ts +91 -0
- package/src/modules/commands/lib/registery.ts +116 -0
- package/src/modules/data-tables/components/filters/combobox.client.tsx +9 -13
- package/src/modules/data-tables/components/filters/date-range.client.tsx +127 -0
- package/src/modules/data-tables/components/filters/search.client.tsx +37 -0
- package/src/modules/data-tables/components/filters/slider.client.tsx +4 -4
- package/src/modules/data-tables/components/filters/toggle.client.tsx +32 -0
- package/src/modules/data-tables/components/footer.tsx +2 -2
- package/src/modules/data-tables/entry.client.ts +3 -0
- package/src/modules/data-tables/entry.server.ts +2 -2
- package/src/modules/data-tables/hooks/use-context.client.tsx +9 -11
- package/src/modules/data-tables/hooks/use-selection.client.ts +12 -5
- package/src/modules/data-tables/hooks/use-table.client.ts +4 -6
- package/src/modules/data-tables/lib/converters/filters.ts +85 -0
- package/src/modules/data-tables/lib/converters/{cursor.ts → pagination.ts} +1 -1
- package/src/modules/data-tables/lib/converters/sorting.ts +61 -18
- package/src/modules/data-tables/lib/filters/parsers.ts +18 -0
- package/src/modules/data-tables/lib/types.ts +4 -4
- package/src/modules/data-tables/server/get-data.server.ts +19 -10
- package/src/modules/data-tables/strategies/infinite/components.tsx +2 -10
- package/src/modules/data-tables/strategies/pagination/components.tsx +1 -5
- package/src/modules/data-tables/tables/data-table/components/body.tsx +2 -2
- package/src/modules/data-tables/tables/data-table/components/header.tsx +1 -1
- package/src/modules/data-tables/tables/data-table/components/row.tsx +2 -21
- package/src/modules/data-tables/tables/data-table/components/table.tsx +2 -2
- package/src/modules/data-tables/tables/inline-table/components/body.tsx +1 -1
- package/src/modules/data-tables/tables/inline-table/components/header.tsx +1 -5
- package/src/modules/data-tables/tables/inline-table/components/row.client.tsx +7 -11
- package/src/modules/data-tables/tables/inline-table/components/table.tsx +2 -2
- package/src/modules/data-tables/tables/inline-table/hooks/context.client.tsx +1 -1
- package/src/modules/inline/components/cell.client.tsx +53 -0
- package/src/modules/inline/components/field.client.tsx +64 -0
- package/src/modules/inline/components/inputs/combobox-dropdown.client.tsx +106 -0
- package/src/modules/inline/components/inputs/combobox.client.tsx +94 -0
- package/src/modules/inline/components/inputs/date-time.client.tsx +96 -0
- package/src/modules/inline/components/inputs/date.client.tsx +295 -0
- package/src/modules/inline/components/inputs/editor.client.tsx +99 -0
- package/src/modules/inline/components/inputs/input-recipient.client.tsx +97 -0
- package/src/modules/inline/components/inputs/input.client.tsx +244 -0
- package/src/modules/inline/components/inputs/select.client.tsx +126 -0
- package/src/modules/inline/components/inputs/switch.client.tsx +88 -0
- package/src/modules/inline/components/inputs/toggle.client.tsx +94 -0
- package/src/modules/inline/entry.client.ts +23 -0
- package/src/modules/inline/hooks/inline-provider.tsx +32 -0
- package/src/modules/inline/hooks/inline-state.client.tsx +33 -0
- package/src/modules/inline/hooks/use-inline.client.tsx +298 -0
- package/dist/inline-edit/client.d.mts +0 -15
- package/dist/inline-edit/client.mjs +0 -16
- package/dist/modules/commands/components/click-command.client.mjs +0 -63
- package/dist/modules/commands/components/command-trigger.client.d.mts +0 -33
- package/dist/modules/commands/components/command-trigger.client.mjs +0 -49
- package/dist/modules/commands/components/empty-command.client.mjs +0 -54
- package/dist/modules/commands/hooks/context.client.mjs +0 -31
- package/dist/modules/commands/hooks/use-command-menu.client.d.mts +0 -23
- package/dist/modules/commands/hooks/use-command-menu.client.mjs +0 -83
- package/dist/modules/commands/lib/definitions.d.mts +0 -52
- package/dist/modules/commands/lib/factory.d.mts +0 -24
- package/dist/modules/commands/lib/factory.mjs +0 -7
- package/dist/modules/commands/menus/context-menu.client.d.mts +0 -26
- package/dist/modules/commands/menus/context-menu.client.mjs +0 -59
- package/dist/modules/commands/menus/dropdown-menu.client.d.mts +0 -18
- package/dist/modules/commands/menus/floating-menu.client.d.mts +0 -18
- package/dist/modules/commands/menus/floating-menu.client.mjs +0 -45
- package/dist/modules/commands/menus/inline-menu.client.d.mts +0 -19
- package/dist/modules/commands/menus/inline-menu.client.mjs +0 -45
- package/dist/modules/commands/menus/responsive-menu.client.d.mts +0 -9
- package/dist/modules/data-tables/lib/converters/filter.d.mts +0 -9
- package/dist/modules/data-tables/lib/converters/filter.mjs +0 -13
- package/dist/modules/inline-edit/components/combobox-dropdown.client.d.mts +0 -24
- package/dist/modules/inline-edit/components/combobox-dropdown.client.mjs +0 -40
- package/dist/modules/inline-edit/components/combobox.client.d.mts +0 -19
- package/dist/modules/inline-edit/components/combobox.client.mjs +0 -36
- package/dist/modules/inline-edit/components/date-input.client.d.mts +0 -18
- package/dist/modules/inline-edit/components/date-input.client.mjs +0 -96
- package/dist/modules/inline-edit/components/date-picker.client.d.mts +0 -21
- package/dist/modules/inline-edit/components/date-picker.client.mjs +0 -61
- package/dist/modules/inline-edit/components/date-time.client.d.mts +0 -20
- package/dist/modules/inline-edit/components/date-time.client.mjs +0 -38
- package/dist/modules/inline-edit/components/editor.client.d.mts +0 -22
- package/dist/modules/inline-edit/components/editor.client.mjs +0 -39
- package/dist/modules/inline-edit/components/input-recipient.client.d.mts +0 -27
- package/dist/modules/inline-edit/components/input-recipient.client.mjs +0 -43
- package/dist/modules/inline-edit/components/input-toggle.client.d.mts +0 -19
- package/dist/modules/inline-edit/components/input-toggle.client.mjs +0 -53
- package/dist/modules/inline-edit/components/input.client.d.mts +0 -49
- package/dist/modules/inline-edit/components/input.client.mjs +0 -100
- package/dist/modules/inline-edit/components/select.client.d.mts +0 -26
- package/dist/modules/inline-edit/components/select.client.mjs +0 -55
- package/dist/modules/inline-edit/components/switch.client.d.mts +0 -17
- package/dist/modules/inline-edit/components/switch.client.mjs +0 -33
- package/dist/modules/inline-edit/components/toggle.client.d.mts +0 -18
- package/dist/modules/inline-edit/components/toggle.client.mjs +0 -40
- package/dist/modules/inline-edit/hooks/context.client.d.mts +0 -27
- package/dist/modules/inline-edit/hooks/context.client.mjs +0 -27
- package/dist/modules/inline-edit/hooks/use-inline.client.d.mts +0 -75
- package/dist/modules/inline-edit/hooks/use-inline.client.mjs +0 -116
- package/src/modules/commands/components/command-trigger.client.tsx +0 -69
- package/src/modules/commands/hooks/context.client.tsx +0 -38
- package/src/modules/commands/hooks/use-command-menu.client.tsx +0 -252
- package/src/modules/commands/lib/definitions.ts +0 -42
- package/src/modules/commands/lib/factory.ts +0 -5
- package/src/modules/commands/lib/schema.ts +0 -23
- package/src/modules/commands/menus/context-menu.client.tsx +0 -69
- package/src/modules/commands/menus/dropdown-menu.client.tsx +0 -62
- package/src/modules/commands/menus/floating-menu.client.tsx +0 -54
- package/src/modules/commands/menus/inline-menu.client.tsx +0 -51
- package/src/modules/commands/utils/send-mail-command.client.tsx +0 -150
- package/src/modules/data-tables/lib/converters/filter.ts +0 -11
- package/src/modules/inline-edit/components/combobox-dropdown.client.tsx +0 -64
- package/src/modules/inline-edit/components/combobox.client.tsx +0 -50
- package/src/modules/inline-edit/components/date-input.client.tsx +0 -116
- package/src/modules/inline-edit/components/date-picker.client.tsx +0 -74
- package/src/modules/inline-edit/components/date-time.client.tsx +0 -55
- package/src/modules/inline-edit/components/editor.client.tsx +0 -56
- package/src/modules/inline-edit/components/input-recipient.client.tsx +0 -59
- package/src/modules/inline-edit/components/input-toggle.client.tsx +0 -75
- package/src/modules/inline-edit/components/input.client.tsx +0 -149
- package/src/modules/inline-edit/components/select.client.tsx +0 -76
- package/src/modules/inline-edit/components/switch.client.tsx +0 -40
- package/src/modules/inline-edit/components/toggle.client.tsx +0 -50
- package/src/modules/inline-edit/entry.client.ts +0 -22
- package/src/modules/inline-edit/hooks/context.client.tsx +0 -30
- package/src/modules/inline-edit/hooks/use-inline.client.tsx +0 -205
- /package/dist/{inline-edit → inline}/server.d.mts +0 -0
- /package/dist/{inline-edit → inline}/server.mjs +0 -0
- /package/src/modules/{inline-edit → inline}/entry.server.ts +0 -0
- /package/src/modules/{inline-edit → inline}/entry.ts +0 -0
- /package/src/modules/{inline-edit → inline}/lib/factory.server.ts +0 -0
- /package/src/modules/{inline-edit → inline}/lib/parsers.ts +0 -0
- /package/src/modules/{inline-edit → inline}/lib/validators.ts +0 -0
- /package/src/modules/{inline-edit → inline}/lib/variants.ts +0 -0
|
@@ -3,12 +3,7 @@
|
|
|
3
3
|
import type { DefaultError, MutationFunction, MutationOptions } from "@tanstack/react-query";
|
|
4
4
|
import { useRouter } from "next/navigation";
|
|
5
5
|
import { useAction } from "@/lib/hooks/use-action";
|
|
6
|
-
import { useCommand } from "./
|
|
7
|
-
|
|
8
|
-
export type CommandActionResult = Promise<unknown>;
|
|
9
|
-
|
|
10
|
-
export type CommandAction<TInput = void> = (input: TInput) => CommandActionResult;
|
|
11
|
-
export type BulkCommandAction = (params: { ids: string[] }) => CommandActionResult;
|
|
6
|
+
import { useCommand } from "./use-command.client";
|
|
12
7
|
|
|
13
8
|
export type CommandMutationMeta = {
|
|
14
9
|
router: ReturnType<typeof useRouter>;
|
|
@@ -23,43 +18,31 @@ export function useCommandMutation<
|
|
|
23
18
|
const router = useRouter();
|
|
24
19
|
const commandContext = useCommand();
|
|
25
20
|
|
|
26
|
-
|
|
21
|
+
return useAction({
|
|
27
22
|
...options,
|
|
28
23
|
mutationFn: options?.mutationFn as MutationFunction<TData, TVariables>,
|
|
29
24
|
onMutate: async (...params) => {
|
|
30
25
|
const result = options?.onMutate?.(...params);
|
|
31
|
-
|
|
32
26
|
commandContext.setStatus("pending");
|
|
33
|
-
|
|
34
27
|
return (await result) as TOnMutateResult;
|
|
35
28
|
},
|
|
36
29
|
onSuccess: async (...params) => {
|
|
37
30
|
const result = options?.onSuccess?.(...params);
|
|
38
|
-
|
|
39
31
|
commandContext.setStatus("success");
|
|
40
|
-
await commandContext.onSuccess?.();
|
|
41
|
-
|
|
42
32
|
return await result;
|
|
43
33
|
},
|
|
44
34
|
onError: async (...params) => {
|
|
45
35
|
const result = options?.onError?.(...params);
|
|
46
|
-
|
|
47
36
|
commandContext.setStatus("error");
|
|
48
|
-
await commandContext.onError?.();
|
|
49
|
-
|
|
50
37
|
return await result;
|
|
51
38
|
},
|
|
52
39
|
onSettled: async (...params) => {
|
|
53
40
|
const result = options?.onSettled?.(...params);
|
|
54
|
-
|
|
55
41
|
commandContext.setStatus("idle");
|
|
56
|
-
|
|
57
42
|
return await result;
|
|
58
43
|
},
|
|
59
44
|
meta: {
|
|
60
45
|
router,
|
|
61
46
|
} satisfies CommandMutationMeta,
|
|
62
47
|
});
|
|
63
|
-
|
|
64
|
-
return mutation;
|
|
65
48
|
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import {
|
|
4
|
+
createContext,
|
|
5
|
+
type Dispatch,
|
|
6
|
+
type PropsWithChildren,
|
|
7
|
+
type SetStateAction,
|
|
8
|
+
useContext,
|
|
9
|
+
useEffect,
|
|
10
|
+
useRef,
|
|
11
|
+
useState,
|
|
12
|
+
} from "react";
|
|
13
|
+
import type { CommandStatus, CommandUI } from "../lib/builder";
|
|
14
|
+
|
|
15
|
+
type CommandContextValue = {
|
|
16
|
+
ui: CommandUI;
|
|
17
|
+
status: CommandStatus;
|
|
18
|
+
disabled: boolean;
|
|
19
|
+
setStatus: Dispatch<SetStateAction<CommandStatus>>;
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
const CommandContext = createContext<CommandContextValue | null>(null);
|
|
23
|
+
|
|
24
|
+
export function useCommand() {
|
|
25
|
+
const context = useContext(CommandContext);
|
|
26
|
+
if (!context) {
|
|
27
|
+
throw new Error("useCommand must be used within CommandContextProvider");
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
return context;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export type CommandContextLifecycle = {
|
|
34
|
+
onSuccess?: () => Promise<void> | void;
|
|
35
|
+
onError?: () => Promise<void> | void;
|
|
36
|
+
onSettled?: () => Promise<void> | void;
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
type CommandContextProviderProps = PropsWithChildren<
|
|
40
|
+
CommandContextLifecycle & {
|
|
41
|
+
ui: CommandUI;
|
|
42
|
+
disabled?: boolean;
|
|
43
|
+
}
|
|
44
|
+
>;
|
|
45
|
+
|
|
46
|
+
export function CommandContextProvider({
|
|
47
|
+
children,
|
|
48
|
+
ui,
|
|
49
|
+
disabled = false,
|
|
50
|
+
onSuccess,
|
|
51
|
+
onError,
|
|
52
|
+
onSettled,
|
|
53
|
+
}: CommandContextProviderProps) {
|
|
54
|
+
const [status, setStatus] = useState<CommandStatus>("idle");
|
|
55
|
+
const previousStatusRef = useRef<CommandStatus>("idle");
|
|
56
|
+
|
|
57
|
+
useEffect(() => {
|
|
58
|
+
if (status === previousStatusRef.current) return;
|
|
59
|
+
|
|
60
|
+
if (status === "success") {
|
|
61
|
+
void onSuccess?.();
|
|
62
|
+
void onSettled?.();
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
if (status === "error") {
|
|
66
|
+
void onError?.();
|
|
67
|
+
void onSettled?.();
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
previousStatusRef.current = status;
|
|
71
|
+
}, [status, onSuccess, onError, onSettled]);
|
|
72
|
+
|
|
73
|
+
return (
|
|
74
|
+
<CommandContext.Provider value={{ ui, status, disabled, setStatus }}>
|
|
75
|
+
{children}
|
|
76
|
+
</CommandContext.Provider>
|
|
77
|
+
);
|
|
78
|
+
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import type { z } from "zod";
|
|
2
|
+
import type { Permission } from "@/modules/auth/lib/permissions";
|
|
3
|
+
|
|
4
|
+
export type CommandUI = "dropdown" | "context" | "table" | "inline" | "custom";
|
|
5
|
+
|
|
6
|
+
export type CommandStatus = "idle" | "pending" | "success" | "error";
|
|
7
|
+
|
|
8
|
+
export type CommandCondition<TSchema extends z.ZodTypeAny, TMeta> = (params: {
|
|
9
|
+
data: z.output<TSchema>;
|
|
10
|
+
meta: TMeta;
|
|
11
|
+
}) => boolean | boolean[];
|
|
12
|
+
|
|
13
|
+
export type CommandRender<TSchema extends z.ZodTypeAny, TMeta> = (params: {
|
|
14
|
+
data: z.output<TSchema>;
|
|
15
|
+
meta: TMeta;
|
|
16
|
+
ui: CommandUI;
|
|
17
|
+
}) => React.ReactNode;
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Final command definition (without name).
|
|
21
|
+
* Name is derived from the object key in `defineCommands`.
|
|
22
|
+
*/
|
|
23
|
+
export type CommandDef<TSchema extends z.ZodTypeAny = z.ZodTypeAny, TMeta = object> = {
|
|
24
|
+
permission?: Permission;
|
|
25
|
+
schema: TSchema;
|
|
26
|
+
visibleWhen?: CommandCondition<TSchema, TMeta>;
|
|
27
|
+
disabledWhen?: CommandCondition<TSchema, TMeta>;
|
|
28
|
+
render: CommandRender<TSchema, TMeta>;
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
type ReadyCommandBuilder<TSchema extends z.ZodTypeAny, TMeta> = {
|
|
32
|
+
permission(permission: Permission): ReadyCommandBuilder<TSchema, TMeta>;
|
|
33
|
+
visibleWhen(condition: CommandCondition<TSchema, TMeta>): ReadyCommandBuilder<TSchema, TMeta>;
|
|
34
|
+
disabledWhen(condition: CommandCondition<TSchema, TMeta>): ReadyCommandBuilder<TSchema, TMeta>;
|
|
35
|
+
render(render: CommandRender<TSchema, TMeta>): CommandDef<TSchema, TMeta>;
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
type InitialCommandBuilder<TMeta> = {
|
|
39
|
+
input<TNextSchema extends z.ZodTypeAny>(schema: TNextSchema): ReadyCommandBuilder<TNextSchema, TMeta>;
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
type StartState<TMeta> = {
|
|
43
|
+
permission?: Permission;
|
|
44
|
+
meta?: TMeta;
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
type ReadyState<TSchema extends z.ZodTypeAny, TMeta> = {
|
|
48
|
+
permission?: Permission;
|
|
49
|
+
schema: TSchema;
|
|
50
|
+
visibleWhen?: CommandCondition<TSchema, TMeta>;
|
|
51
|
+
disabledWhen?: CommandCondition<TSchema, TMeta>;
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
function createInitialBuilder<TMeta>(state: StartState<TMeta>): InitialCommandBuilder<TMeta> {
|
|
55
|
+
return {
|
|
56
|
+
input<TNextSchema extends z.ZodTypeAny>(schema: TNextSchema) {
|
|
57
|
+
return createReadyBuilder<TNextSchema, TMeta>({ permission: state.permission, schema });
|
|
58
|
+
},
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
function createReadyBuilder<TSchema extends z.ZodTypeAny, TMeta>(
|
|
63
|
+
state: ReadyState<TSchema, TMeta>,
|
|
64
|
+
): ReadyCommandBuilder<TSchema, TMeta> {
|
|
65
|
+
return {
|
|
66
|
+
permission(permission: Permission) {
|
|
67
|
+
return createReadyBuilder<TSchema, TMeta>({ ...state, permission });
|
|
68
|
+
},
|
|
69
|
+
visibleWhen(condition: CommandCondition<TSchema, TMeta>) {
|
|
70
|
+
return createReadyBuilder<TSchema, TMeta>({ ...state, visibleWhen: condition });
|
|
71
|
+
},
|
|
72
|
+
disabledWhen(condition: CommandCondition<TSchema, TMeta>) {
|
|
73
|
+
return createReadyBuilder<TSchema, TMeta>({ ...state, disabledWhen: condition });
|
|
74
|
+
},
|
|
75
|
+
render(render: CommandRender<TSchema, TMeta>) {
|
|
76
|
+
return {
|
|
77
|
+
permission: state.permission,
|
|
78
|
+
schema: state.schema,
|
|
79
|
+
visibleWhen: state.visibleWhen,
|
|
80
|
+
disabledWhen: state.disabledWhen,
|
|
81
|
+
render,
|
|
82
|
+
};
|
|
83
|
+
},
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
export function createCommandBuilder<TMeta = object>(): InitialCommandBuilder<TMeta> {
|
|
88
|
+
return createInitialBuilder<TMeta>({});
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
export const commandBuilder = createCommandBuilder();
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import type z from "zod";
|
|
2
|
+
import type { CommandDef } from "./builder";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Command map type defining the shape of command definitions.
|
|
6
|
+
*/
|
|
7
|
+
export type CommandMap = Record<string, CommandDef<z.ZodTypeAny, any>>;
|
|
8
|
+
|
|
9
|
+
type CommandKey<TCommands extends CommandMap> = Extract<keyof TCommands, string>;
|
|
10
|
+
type CommandFlags<TCommands extends CommandMap> = Partial<Record<CommandKey<TCommands>, boolean>>;
|
|
11
|
+
type CommandInput<TCommands extends CommandMap> =
|
|
12
|
+
| readonly CommandKey<TCommands>[]
|
|
13
|
+
| CommandFlags<TCommands>;
|
|
14
|
+
|
|
15
|
+
type TruthyKeys<T> = {
|
|
16
|
+
[K in keyof T]-?: T[K] extends true ? K : never;
|
|
17
|
+
}[keyof T];
|
|
18
|
+
|
|
19
|
+
type PickedCommands<
|
|
20
|
+
TCommands extends CommandMap,
|
|
21
|
+
TInput extends CommandInput<TCommands>,
|
|
22
|
+
> = TInput extends readonly CommandKey<TCommands>[]
|
|
23
|
+
? Pick<TCommands, TInput[number]>
|
|
24
|
+
: TInput extends CommandFlags<TCommands>
|
|
25
|
+
? Pick<TCommands, Extract<TruthyKeys<TInput>, keyof TCommands>>
|
|
26
|
+
: never;
|
|
27
|
+
|
|
28
|
+
type OmittedCommands<
|
|
29
|
+
TCommands extends CommandMap,
|
|
30
|
+
TInput extends CommandInput<TCommands>,
|
|
31
|
+
> = TInput extends readonly CommandKey<TCommands>[]
|
|
32
|
+
? Omit<TCommands, TInput[number]>
|
|
33
|
+
: TInput extends CommandFlags<TCommands>
|
|
34
|
+
? Omit<TCommands, Extract<TruthyKeys<TInput>, keyof TCommands>>
|
|
35
|
+
: never;
|
|
36
|
+
|
|
37
|
+
type ExtendedCommands<TBase extends CommandMap, TExtension extends CommandMap> = Omit<
|
|
38
|
+
TBase,
|
|
39
|
+
keyof TExtension
|
|
40
|
+
> &
|
|
41
|
+
TExtension;
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Command registry type with utility methods for picking, omitting, and converting to array.
|
|
45
|
+
* This allows for flexible manipulation of command sets while maintaining type safety.
|
|
46
|
+
*/
|
|
47
|
+
type CommandRegistry<TCommands extends CommandMap> = {
|
|
48
|
+
commands: TCommands;
|
|
49
|
+
extend<const TExtension extends CommandMap>(
|
|
50
|
+
extension: TExtension,
|
|
51
|
+
): CommandRegistry<ExtendedCommands<TCommands, TExtension>>;
|
|
52
|
+
pick<const TInput extends CommandInput<TCommands>>(
|
|
53
|
+
input: TInput,
|
|
54
|
+
): CommandRegistry<PickedCommands<TCommands, TInput>>;
|
|
55
|
+
omit<const TInput extends CommandInput<TCommands>>(
|
|
56
|
+
input: TInput,
|
|
57
|
+
): CommandRegistry<OmittedCommands<TCommands, TInput>>;
|
|
58
|
+
toArray(): Array<CommandDef<z.ZodTypeAny, any>>;
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
function toKeys<TCommands extends CommandMap>(
|
|
62
|
+
input: CommandInput<TCommands>,
|
|
63
|
+
): Array<CommandKey<TCommands>> {
|
|
64
|
+
if (Array.isArray(input)) return [...input];
|
|
65
|
+
|
|
66
|
+
return (Object.entries(input) as Array<[CommandKey<TCommands>, boolean | undefined]>)
|
|
67
|
+
.filter(([, enabled]) => enabled === true)
|
|
68
|
+
.map(([key]) => key);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Internal function to create a command registry from a given command map.
|
|
73
|
+
*/
|
|
74
|
+
function createRegistry<TCommands extends CommandMap>(
|
|
75
|
+
commands: TCommands,
|
|
76
|
+
): CommandRegistry<TCommands> {
|
|
77
|
+
return {
|
|
78
|
+
commands,
|
|
79
|
+
extend<const TExtension extends CommandMap>(extension: TExtension) {
|
|
80
|
+
const next = { ...commands, ...extension } as ExtendedCommands<TCommands, TExtension>;
|
|
81
|
+
return createRegistry(next);
|
|
82
|
+
},
|
|
83
|
+
pick<const TInput extends CommandInput<TCommands>>(input: TInput) {
|
|
84
|
+
const keys = toKeys<TCommands>(input);
|
|
85
|
+
const next = Object.fromEntries(
|
|
86
|
+
keys.flatMap((key) => (key in commands ? [[key, commands[key]]] : [])),
|
|
87
|
+
) as PickedCommands<TCommands, TInput>;
|
|
88
|
+
|
|
89
|
+
return createRegistry(next);
|
|
90
|
+
},
|
|
91
|
+
omit<const TInput extends CommandInput<TCommands>>(input: TInput) {
|
|
92
|
+
const keys = toKeys<TCommands>(input);
|
|
93
|
+
const blacklist = new Set(keys);
|
|
94
|
+
const next = Object.fromEntries(
|
|
95
|
+
Object.entries(commands).filter(([key]) => !blacklist.has(key as CommandKey<TCommands>)),
|
|
96
|
+
) as OmittedCommands<TCommands, TInput>;
|
|
97
|
+
|
|
98
|
+
return createRegistry(next);
|
|
99
|
+
},
|
|
100
|
+
toArray() {
|
|
101
|
+
return Object.values(commands) as Array<CommandDef<z.ZodTypeAny, any>>;
|
|
102
|
+
},
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* Public function to define commands. It takes a command map and returns a command registry with utility methods.
|
|
108
|
+
* This is the main entry point for users to create their command sets.
|
|
109
|
+
* @param commands - A map of command definitions keyed by command name.
|
|
110
|
+
* @returns A command registry with the defined commands and utility methods.
|
|
111
|
+
*/
|
|
112
|
+
export function defineCommands<TCommands extends CommandMap>(
|
|
113
|
+
commands: TCommands,
|
|
114
|
+
): CommandRegistry<TCommands> {
|
|
115
|
+
return createRegistry(commands);
|
|
116
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
import { type
|
|
3
|
+
import { ListFilter, type LucideIcon } from "lucide-react";
|
|
4
|
+
import { type SingleParserBuilder, useQueryState } from "nuqs";
|
|
5
5
|
import { startTransition, useOptimistic } from "react";
|
|
6
6
|
import { Badge } from "@/components/ui/badge";
|
|
7
7
|
import { Button } from "@/components/ui/button";
|
|
@@ -11,6 +11,7 @@ import {
|
|
|
11
11
|
CommandGroup,
|
|
12
12
|
CommandInput,
|
|
13
13
|
CommandItem,
|
|
14
|
+
CommandItemCheck,
|
|
14
15
|
CommandList,
|
|
15
16
|
CommandSeparator,
|
|
16
17
|
} from "@/components/ui/command.client";
|
|
@@ -28,7 +29,7 @@ export type TableFilterComboboxOption = {
|
|
|
28
29
|
|
|
29
30
|
export type TableFilterComboboxProps<TValue extends string = string> = {
|
|
30
31
|
title?: string;
|
|
31
|
-
filter: { name: string; parser:
|
|
32
|
+
filter: { name: string; parser: SingleParserBuilder<TValue[] | null> };
|
|
32
33
|
options: TableFilterComboboxOption[];
|
|
33
34
|
};
|
|
34
35
|
|
|
@@ -47,11 +48,11 @@ export function TableFilterCombobox<TValue extends string>({
|
|
|
47
48
|
<Popover>
|
|
48
49
|
<PopoverTrigger asChild>
|
|
49
50
|
<Button type="button" variant="outline" size="sm" className="h-8 border-dashed">
|
|
50
|
-
<
|
|
51
|
+
<ListFilter className="mr-1 h-4 w-4" />
|
|
51
52
|
{title}
|
|
52
53
|
{selectedValues?.size > 0 && (
|
|
53
54
|
<>
|
|
54
|
-
<Separator orientation="vertical" className="mx-2 h-
|
|
55
|
+
<Separator orientation="vertical" className="mx-2 h-full" />
|
|
55
56
|
<Badge variant="secondary" className="rounded-sm px-1 font-normal lg:hidden">
|
|
56
57
|
{selectedValues.size}
|
|
57
58
|
</Badge>
|
|
@@ -90,6 +91,8 @@ export function TableFilterCombobox<TValue extends string>({
|
|
|
90
91
|
return (
|
|
91
92
|
<CommandItem
|
|
92
93
|
key={option.value}
|
|
94
|
+
value={option.value}
|
|
95
|
+
data-checked={selectedValues.has(option.value)}
|
|
93
96
|
onSelect={() =>
|
|
94
97
|
startTransition(() => {
|
|
95
98
|
const newSelectedValues = new Set(selectedValues);
|
|
@@ -105,14 +108,7 @@ export function TableFilterCombobox<TValue extends string>({
|
|
|
105
108
|
})
|
|
106
109
|
}
|
|
107
110
|
>
|
|
108
|
-
<
|
|
109
|
-
data-active={selectedValues.has(option.value)}
|
|
110
|
-
className={cn(
|
|
111
|
-
"mr-2 flex h-4 w-4 items-center justify-center rounded-sm border border-primary opacity-50 data-[active=true]:bg-primary data-[active=true]:text-primary-foreground data-[active=true]:opacity-100 [&>svg]:invisible data-[active=true]:[&>svg]:visible data-[active=true]:[&>svg]:text-primary-foreground",
|
|
112
|
-
)}
|
|
113
|
-
>
|
|
114
|
-
<Check className="h-4 w-4 text-foreground" />
|
|
115
|
-
</div>
|
|
111
|
+
<CommandItemCheck />
|
|
116
112
|
|
|
117
113
|
<div className="flex flex-1 items-center gap-2">
|
|
118
114
|
{Icon && <Icon className={cn("size-4", option.className)} />}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { Badge, Button, Separator } from "@tulip-systems/core/components";
|
|
4
|
+
import {
|
|
5
|
+
Calendar,
|
|
6
|
+
Popover,
|
|
7
|
+
PopoverContent,
|
|
8
|
+
PopoverTrigger,
|
|
9
|
+
} from "@tulip-systems/core/components/client";
|
|
10
|
+
import { format } from "date-fns";
|
|
11
|
+
import { CalendarIcon } from "lucide-react";
|
|
12
|
+
import { type SingleParserBuilder, useQueryState } from "nuqs";
|
|
13
|
+
import { startTransition, useState } from "react";
|
|
14
|
+
|
|
15
|
+
export type TableFilterDateRangeValue = [Date, Date] | null;
|
|
16
|
+
|
|
17
|
+
export type TableFilterDateRangeProps = {
|
|
18
|
+
title?: string;
|
|
19
|
+
filter: { name: string; parser: SingleParserBuilder<[Date, Date] | null> };
|
|
20
|
+
presets?: TableFilterDateRangePreset[];
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export type TableFilterDateRangePreset = {
|
|
24
|
+
label: string;
|
|
25
|
+
value: [Date, Date];
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
export function TableFilterDateRange({
|
|
29
|
+
title,
|
|
30
|
+
filter,
|
|
31
|
+
presets,
|
|
32
|
+
}: TableFilterDateRangeProps) {
|
|
33
|
+
const [open, setOpen] = useState(false);
|
|
34
|
+
const [query, setQuery] = useQueryState(filter.name, filter.parser);
|
|
35
|
+
|
|
36
|
+
const from = query?.[0] ?? null;
|
|
37
|
+
const until = query?.[1] ?? null;
|
|
38
|
+
const selectedRange =
|
|
39
|
+
from || until ? { from: from ?? undefined, to: until ?? undefined } : undefined;
|
|
40
|
+
|
|
41
|
+
const label = formatDateRange(from, until);
|
|
42
|
+
|
|
43
|
+
return (
|
|
44
|
+
<Popover open={open} onOpenChange={setOpen}>
|
|
45
|
+
<PopoverTrigger asChild>
|
|
46
|
+
<Button type="button" variant="outline" size="sm" className="h-8 border-dashed">
|
|
47
|
+
<CalendarIcon className="mr-1 h-4 w-4" />
|
|
48
|
+
{title}
|
|
49
|
+
{label && (
|
|
50
|
+
<>
|
|
51
|
+
<Separator orientation="vertical" className="mx-2 h-full" />
|
|
52
|
+
<Badge variant="secondary" className="rounded-sm px-1 font-normal">
|
|
53
|
+
{label}
|
|
54
|
+
</Badge>
|
|
55
|
+
</>
|
|
56
|
+
)}
|
|
57
|
+
</Button>
|
|
58
|
+
</PopoverTrigger>
|
|
59
|
+
<PopoverContent className="w-auto p-0" align="start">
|
|
60
|
+
<div className="flex flex-col gap-3 p-3 lg:flex-row">
|
|
61
|
+
{presets && presets.length > 0 && (
|
|
62
|
+
<div className="flex min-w-40 flex-col gap-1 lg:border-r lg:pr-3">
|
|
63
|
+
{presets.map((preset) => (
|
|
64
|
+
<Button
|
|
65
|
+
key={preset.label}
|
|
66
|
+
type="button"
|
|
67
|
+
size="sm"
|
|
68
|
+
variant="ghost"
|
|
69
|
+
className="justify-start"
|
|
70
|
+
onClick={() => {
|
|
71
|
+
setQuery(preset.value, { startTransition });
|
|
72
|
+
setOpen(false);
|
|
73
|
+
}}
|
|
74
|
+
>
|
|
75
|
+
{preset.label}
|
|
76
|
+
</Button>
|
|
77
|
+
))}
|
|
78
|
+
</div>
|
|
79
|
+
)}
|
|
80
|
+
|
|
81
|
+
<Calendar
|
|
82
|
+
mode="range"
|
|
83
|
+
numberOfMonths={2}
|
|
84
|
+
selected={selectedRange}
|
|
85
|
+
onSelect={(range) => {
|
|
86
|
+
if (range?.from && range?.to) {
|
|
87
|
+
setQuery([range.from, range.to], { startTransition });
|
|
88
|
+
} else if (range?.from) {
|
|
89
|
+
setQuery([range.from, range.from], { startTransition });
|
|
90
|
+
} else {
|
|
91
|
+
setQuery(null, { startTransition });
|
|
92
|
+
}
|
|
93
|
+
}}
|
|
94
|
+
autoFocus
|
|
95
|
+
/>
|
|
96
|
+
</div>
|
|
97
|
+
|
|
98
|
+
{label && (
|
|
99
|
+
<div className="w-full space-y-2 p-1.5">
|
|
100
|
+
<Separator />
|
|
101
|
+
|
|
102
|
+
<Button
|
|
103
|
+
size="sm"
|
|
104
|
+
type="button"
|
|
105
|
+
variant="ghost"
|
|
106
|
+
onClick={() => {
|
|
107
|
+
setOpen(false);
|
|
108
|
+
setQuery(null, { startTransition });
|
|
109
|
+
}}
|
|
110
|
+
className="w-full text-center"
|
|
111
|
+
>
|
|
112
|
+
Clear filters
|
|
113
|
+
</Button>
|
|
114
|
+
</div>
|
|
115
|
+
)}
|
|
116
|
+
</PopoverContent>
|
|
117
|
+
</Popover>
|
|
118
|
+
);
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
function formatDateRange(from: Date | null, until: Date | null) {
|
|
122
|
+
if (from && until) return `${format(from, "dd/MM/yyyy")} tot ${format(until, "dd/MM/yyyy")}`;
|
|
123
|
+
if (from) return `Vanaf ${format(from, "dd/MM/yyyy")}`;
|
|
124
|
+
if (until) return `Tot ${format(until, "dd/MM/yyyy")}`;
|
|
125
|
+
|
|
126
|
+
return null;
|
|
127
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { Search } from "lucide-react";
|
|
4
|
+
import { debounce, type SingleParserBuilder, useQueryState } from "nuqs";
|
|
5
|
+
import { startTransition } from "react";
|
|
6
|
+
import { Input } from "@/components/ui/input";
|
|
7
|
+
|
|
8
|
+
export type TableFilterSearchProps = {
|
|
9
|
+
placeholder?: string;
|
|
10
|
+
filter: { name: string; parser: SingleParserBuilder<string | null> };
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export function TableFilterSearch({ placeholder, filter }: TableFilterSearchProps) {
|
|
14
|
+
const [query, setQuery] = useQueryState(filter.name, filter.parser);
|
|
15
|
+
|
|
16
|
+
return (
|
|
17
|
+
<div className="relative">
|
|
18
|
+
<Search className="pointer-events-none absolute top-1/2 left-2.5 h-4 w-4 -translate-y-1/2 text-muted-foreground" />
|
|
19
|
+
<Input
|
|
20
|
+
defaultValue={query ?? undefined}
|
|
21
|
+
placeholder={placeholder}
|
|
22
|
+
className="h-8 w-[150px] pl-8 lg:w-[250px]"
|
|
23
|
+
onChange={(e) => {
|
|
24
|
+
setQuery(e.target.value || null, {
|
|
25
|
+
limitUrlUpdates: e.target.value === "" ? undefined : debounce(350),
|
|
26
|
+
startTransition,
|
|
27
|
+
});
|
|
28
|
+
}}
|
|
29
|
+
onKeyDown={(e) => {
|
|
30
|
+
if (e.key === "Enter") {
|
|
31
|
+
setQuery(e.currentTarget.value || null, { startTransition });
|
|
32
|
+
}
|
|
33
|
+
}}
|
|
34
|
+
/>
|
|
35
|
+
</div>
|
|
36
|
+
);
|
|
37
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
import { type
|
|
3
|
+
import { SlidersHorizontal } from "lucide-react";
|
|
4
|
+
import { type SingleParserBuilder, useQueryState } from "nuqs";
|
|
5
5
|
import { startTransition, useState } from "react";
|
|
6
6
|
import { useDebouncedCallback } from "use-debounce";
|
|
7
7
|
import { Badge } from "@/components/ui/badge";
|
|
@@ -13,7 +13,7 @@ import { Slider } from "@/components/ui/slider";
|
|
|
13
13
|
|
|
14
14
|
export type TableFilterSliderProps = {
|
|
15
15
|
title?: string;
|
|
16
|
-
filter: { name: string; parser:
|
|
16
|
+
filter: { name: string; parser: SingleParserBuilder<[number, number] | null> };
|
|
17
17
|
options?: { min: number; max: number };
|
|
18
18
|
};
|
|
19
19
|
|
|
@@ -38,7 +38,7 @@ export function TableFilterSlider({
|
|
|
38
38
|
<Popover open={open} onOpenChange={setOpen}>
|
|
39
39
|
<PopoverTrigger asChild>
|
|
40
40
|
<Button type="button" variant="outline" size="sm" className="h-8 border-dashed">
|
|
41
|
-
<
|
|
41
|
+
<SlidersHorizontal className="mr-1 h-4 w-4" />
|
|
42
42
|
{title}
|
|
43
43
|
{selectedValues && selectedValues?.length > 0 && (
|
|
44
44
|
<>
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { ToggleLeft } from "lucide-react";
|
|
4
|
+
import { type SingleParserBuilder, useQueryState } from "nuqs";
|
|
5
|
+
import { startTransition } from "react";
|
|
6
|
+
import { Toggle } from "@/components/ui/toggle.client";
|
|
7
|
+
|
|
8
|
+
export type TableFilterToggleProps = {
|
|
9
|
+
title?: string;
|
|
10
|
+
filter: { name: string; parser: SingleParserBuilder<boolean | null> };
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export function TableFilterToggle({ title, filter }: TableFilterToggleProps) {
|
|
14
|
+
const [query, setQuery] = useQueryState(filter.name, filter.parser);
|
|
15
|
+
|
|
16
|
+
return (
|
|
17
|
+
<Toggle
|
|
18
|
+
variant="outline"
|
|
19
|
+
size="sm"
|
|
20
|
+
className="h-8 border-border border-dashed bg-background data-[state=on]:border-primary data-[state=on]:border-solid data-[state=on]:bg-primary data-[state=on]:text-primary-foreground dark:border-input dark:bg-input/30"
|
|
21
|
+
pressed={query === true}
|
|
22
|
+
onPressedChange={(pressed) =>
|
|
23
|
+
startTransition(() => {
|
|
24
|
+
setQuery(pressed ? true : null);
|
|
25
|
+
})
|
|
26
|
+
}
|
|
27
|
+
>
|
|
28
|
+
<ToggleLeft className="mr-2 h-4 w-4" />
|
|
29
|
+
{title}
|
|
30
|
+
</Toggle>
|
|
31
|
+
);
|
|
32
|
+
}
|
|
@@ -8,7 +8,7 @@ import { PaginationTableFooter } from "../strategies/pagination/components";
|
|
|
8
8
|
/**
|
|
9
9
|
* Table bottombar
|
|
10
10
|
*/
|
|
11
|
-
export function TableFooter<TData
|
|
11
|
+
export function TableFooter<TData>({ table }: { table: Table<TData> }) {
|
|
12
12
|
const meta = table.options.meta as TableMeta<TData>;
|
|
13
13
|
|
|
14
14
|
if (meta.strategy.name === "pagination") {
|
|
@@ -25,7 +25,7 @@ export function TableFooter<TData extends { id: string }>({ table }: { table: Ta
|
|
|
25
25
|
/**
|
|
26
26
|
* Table bottombar
|
|
27
27
|
*/
|
|
28
|
-
export function TableBottombar<TData
|
|
28
|
+
export function TableBottombar<TData>({ table }: { table: Table<TData> }) {
|
|
29
29
|
const meta = table.options.meta as TableMeta<TData>;
|
|
30
30
|
|
|
31
31
|
if (meta.strategy.name === "pagination") {
|
|
@@ -5,7 +5,10 @@ export * from "./components/cell/common.client";
|
|
|
5
5
|
export * from "./components/cell/index.client";
|
|
6
6
|
export * from "./components/cell/select.client";
|
|
7
7
|
export * from "./components/filters/combobox.client";
|
|
8
|
+
export * from "./components/filters/date-range.client";
|
|
9
|
+
export * from "./components/filters/search.client";
|
|
8
10
|
export * from "./components/filters/slider.client";
|
|
11
|
+
export * from "./components/filters/toggle.client";
|
|
9
12
|
export * from "./components/search-input.client";
|
|
10
13
|
/**
|
|
11
14
|
* Hooks
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Lib
|
|
3
3
|
*/
|
|
4
|
-
export * from "./lib/converters/cursor";
|
|
5
4
|
export * from "./lib/converters/dto";
|
|
6
|
-
export * from "./lib/converters/
|
|
5
|
+
export * from "./lib/converters/filters";
|
|
6
|
+
export * from "./lib/converters/pagination";
|
|
7
7
|
export * from "./lib/converters/search";
|
|
8
8
|
export * from "./lib/converters/sorting";
|
|
9
9
|
|