@tulip-systems/core 0.6.1 → 0.7.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/LICENSE +662 -0
- package/dist/components/client.d.mts +19 -3
- package/dist/components/client.mjs +18 -2
- package/dist/components/editor/components/menu-nodes.client.mjs +1 -1
- package/dist/components/editor/components/menu-nodes.client.mjs.map +1 -1
- package/dist/components/editor/components/menu.client.mjs +3 -3
- package/dist/components/editor/components/menu.client.mjs.map +1 -1
- package/dist/components/emails/forget-password-email.mjs +6 -6
- package/dist/components/emails/forget-password-email.mjs.map +1 -1
- package/dist/components/header/back-button.client.mjs +2 -2
- package/dist/components/header/back-button.client.mjs.map +1 -1
- package/dist/components/header/bottom-bar.client.mjs +2 -2
- package/dist/components/header/bottom-bar.client.mjs.map +1 -1
- package/dist/components/header/breadcrumbs.client.mjs +1 -1
- package/dist/components/header/breadcrumbs.client.mjs.map +1 -1
- package/dist/components/header/header.client.mjs +1 -1
- package/dist/components/header/header.client.mjs.map +1 -1
- package/dist/components/layouts/empty-page.mjs +2 -2
- package/dist/components/layouts/empty-page.mjs.map +1 -1
- package/dist/components/layouts/error-page.mjs +3 -3
- package/dist/components/layouts/error-page.mjs.map +1 -1
- package/dist/components/layouts/providers.client.d.mts.map +1 -1
- package/dist/components/layouts/providers.client.mjs +3 -2
- package/dist/components/layouts/providers.client.mjs.map +1 -1
- package/dist/components/layouts/root-loading.mjs +2 -2
- package/dist/components/layouts/root-loading.mjs.map +1 -1
- package/dist/components/layouts/tab-layout.mjs +1 -1
- package/dist/components/layouts/tab-layout.mjs.map +1 -1
- package/dist/components/lists/data-list.mjs +1 -1
- package/dist/components/lists/data-list.mjs.map +1 -1
- package/dist/components/lists/data-stack.mjs +1 -1
- package/dist/components/lists/data-stack.mjs.map +1 -1
- package/dist/components/navigation/admin-sidebar-header.client.mjs +3 -3
- package/dist/components/navigation/admin-sidebar-header.client.mjs.map +1 -1
- package/dist/components/navigation/admin-sidebar-skeleton.mjs +1 -1
- package/dist/components/navigation/admin-sidebar-skeleton.mjs.map +1 -1
- package/dist/components/ui/accordion.client.d.mts +26 -0
- package/dist/components/ui/accordion.client.d.mts.map +1 -0
- package/dist/components/ui/accordion.client.mjs +58 -0
- package/dist/components/ui/accordion.client.mjs.map +1 -0
- package/dist/components/ui/alert-dialog.client.d.mts +61 -0
- package/dist/components/ui/alert-dialog.client.d.mts.map +1 -0
- package/dist/components/ui/alert-dialog.client.mjs +104 -0
- package/dist/components/ui/alert-dialog.client.mjs.map +1 -0
- package/dist/components/ui/alert.d.mts +5 -1
- package/dist/components/ui/alert.d.mts.map +1 -1
- package/dist/components/ui/alert.mjs +13 -6
- package/dist/components/ui/alert.mjs.map +1 -1
- package/dist/components/ui/aspect-ratio.client.d.mts +10 -0
- package/dist/components/ui/aspect-ratio.client.d.mts.map +1 -0
- package/dist/components/ui/aspect-ratio.client.mjs +16 -0
- package/dist/components/ui/aspect-ratio.client.mjs.map +1 -0
- package/dist/components/ui/avatar.client.d.mts +21 -6
- package/dist/components/ui/avatar.client.d.mts.map +1 -1
- package/dist/components/ui/avatar.client.mjs +31 -9
- package/dist/components/ui/avatar.client.mjs.map +1 -1
- package/dist/components/ui/badge.d.mts +1 -1
- package/dist/components/ui/badge.d.mts.map +1 -1
- package/dist/components/ui/badge.mjs +11 -8
- package/dist/components/ui/badge.mjs.map +1 -1
- package/dist/components/ui/breadcrumb.d.mts +3 -1
- package/dist/components/ui/breadcrumb.d.mts.map +1 -1
- package/dist/components/ui/breadcrumb.mjs +7 -7
- package/dist/components/ui/breadcrumb.mjs.map +1 -1
- package/dist/components/ui/button-group.d.mts +29 -0
- package/dist/components/ui/button-group.d.mts.map +1 -0
- package/dist/components/ui/button-group.mjs +41 -0
- package/dist/components/ui/button-group.mjs.map +1 -0
- package/dist/components/ui/button.d.mts +1 -1
- package/dist/components/ui/button.d.mts.map +1 -1
- package/dist/components/ui/button.mjs +19 -13
- package/dist/components/ui/button.mjs.map +1 -1
- package/dist/components/ui/{calendar.d.mts → calendar.client.d.mts} +7 -4
- package/dist/components/ui/calendar.client.d.mts.map +1 -0
- package/dist/components/ui/{calendar.mjs → calendar.client.mjs} +22 -19
- package/dist/components/ui/calendar.client.mjs.map +1 -0
- package/dist/components/ui/card.d.mts +9 -2
- package/dist/components/ui/card.d.mts.map +1 -1
- package/dist/components/ui/card.mjs +15 -7
- package/dist/components/ui/card.mjs.map +1 -1
- package/dist/components/ui/{carousel.d.mts → carousel.client.d.mts} +12 -3
- package/dist/components/ui/carousel.client.d.mts.map +1 -0
- package/dist/components/ui/{carousel.mjs → carousel.client.mjs} +10 -10
- package/dist/components/ui/carousel.client.mjs.map +1 -0
- package/dist/components/ui/chart.client.d.mts.map +1 -1
- package/dist/components/ui/chart.client.mjs +11 -11
- package/dist/components/ui/chart.client.mjs.map +1 -1
- package/dist/components/ui/checkbox.client.d.mts +12 -0
- package/dist/components/ui/checkbox.client.d.mts.map +1 -0
- package/dist/components/ui/checkbox.client.mjs +24 -0
- package/dist/components/ui/checkbox.client.mjs.map +1 -0
- package/dist/components/ui/collapsible.client.d.mts +6 -6
- package/dist/components/ui/collapsible.client.d.mts.map +1 -1
- package/dist/components/ui/collapsible.client.mjs +6 -6
- package/dist/components/ui/collapsible.client.mjs.map +1 -1
- package/dist/components/ui/combobox-dropdown.client.d.mts +1 -1
- package/dist/components/ui/combobox-dropdown.client.mjs +2 -2
- package/dist/components/ui/combobox-dropdown.client.mjs.map +1 -1
- package/dist/components/ui/combobox.client.mjs +4 -4
- package/dist/components/ui/combobox.client.mjs.map +1 -1
- package/dist/components/ui/{command.d.mts → command.client.d.mts} +8 -2
- package/dist/components/ui/command.client.d.mts.map +1 -0
- package/dist/components/ui/command.client.mjs +91 -0
- package/dist/components/ui/command.client.mjs.map +1 -0
- package/dist/components/ui/context-menu.client.d.mts +86 -0
- package/dist/components/ui/context-menu.client.d.mts.map +1 -0
- package/dist/components/ui/context-menu.client.mjs +128 -0
- package/dist/components/ui/context-menu.client.mjs.map +1 -0
- package/dist/components/ui/date-picker.client.mjs +2 -2
- package/dist/components/ui/date-picker.client.mjs.map +1 -1
- package/dist/components/ui/dialog.client.d.mts +19 -12
- package/dist/components/ui/dialog.client.d.mts.map +1 -1
- package/dist/components/ui/dialog.client.mjs +40 -29
- package/dist/components/ui/dialog.client.mjs.map +1 -1
- package/dist/components/ui/drawer.client.d.mts.map +1 -1
- package/dist/components/ui/drawer.client.mjs +5 -5
- package/dist/components/ui/drawer.client.mjs.map +1 -1
- package/dist/components/ui/dropdown-menu.client.d.mts +85 -0
- package/dist/components/ui/dropdown-menu.client.d.mts.map +1 -0
- package/dist/components/ui/dropdown-menu.client.mjs +131 -0
- package/dist/components/ui/dropdown-menu.client.mjs.map +1 -0
- package/dist/components/ui/empty.d.mts +36 -0
- package/dist/components/ui/empty.d.mts.map +1 -0
- package/dist/components/ui/empty.mjs +62 -0
- package/dist/components/ui/empty.mjs.map +1 -0
- package/dist/components/ui/field.client.d.mts +65 -0
- package/dist/components/ui/field.client.d.mts.map +1 -0
- package/dist/components/ui/field.client.mjs +114 -0
- package/dist/components/ui/field.client.mjs.map +1 -0
- package/dist/components/ui/form.client.d.mts +3 -4
- package/dist/components/ui/form.client.d.mts.map +1 -1
- package/dist/components/ui/form.client.mjs +4 -4
- package/dist/components/ui/form.client.mjs.map +1 -1
- package/dist/components/ui/hover-card.client.d.mts +6 -6
- package/dist/components/ui/hover-card.client.d.mts.map +1 -1
- package/dist/components/ui/hover-card.client.mjs +14 -11
- package/dist/components/ui/hover-card.client.mjs.map +1 -1
- package/dist/components/ui/{input-date-time.d.mts → input-date-time.client.d.mts} +3 -3
- package/dist/components/ui/input-date-time.client.d.mts.map +1 -0
- package/dist/components/ui/{input-date-time.mjs → input-date-time.client.mjs} +4 -2
- package/dist/components/ui/input-date-time.client.mjs.map +1 -0
- package/dist/components/ui/input-date.d.mts +1 -1
- package/dist/components/ui/input-date.d.mts.map +1 -1
- package/dist/components/ui/input-date.mjs.map +1 -1
- package/dist/components/ui/input-group.client.d.mts +59 -0
- package/dist/components/ui/input-group.client.d.mts.map +1 -0
- package/dist/components/ui/input-group.client.mjs +106 -0
- package/dist/components/ui/input-group.client.mjs.map +1 -0
- package/dist/components/ui/input-recipient.mjs +11 -11
- package/dist/components/ui/input-recipient.mjs.map +1 -1
- package/dist/components/ui/input-time.d.mts +1 -1
- package/dist/components/ui/input-time.d.mts.map +1 -1
- package/dist/components/ui/input-time.mjs.map +1 -1
- package/dist/components/ui/input.d.mts.map +1 -1
- package/dist/components/ui/input.mjs +1 -1
- package/dist/components/ui/input.mjs.map +1 -1
- package/dist/components/ui/item.d.mts +63 -0
- package/dist/components/ui/item.d.mts.map +1 -0
- package/dist/components/ui/item.mjs +119 -0
- package/dist/components/ui/item.mjs.map +1 -0
- package/dist/components/ui/kbd.d.mts +14 -0
- package/dist/components/ui/kbd.d.mts.map +1 -0
- package/dist/components/ui/kbd.mjs +22 -0
- package/dist/components/ui/kbd.mjs.map +1 -0
- package/dist/components/ui/label.d.mts +4 -4
- package/dist/components/ui/label.d.mts.map +1 -1
- package/dist/components/ui/label.mjs +5 -5
- package/dist/components/ui/label.mjs.map +1 -1
- package/dist/components/ui/loader.d.mts +7 -0
- package/dist/components/ui/loader.d.mts.map +1 -0
- package/dist/components/ui/loader.mjs +63 -0
- package/dist/components/ui/loader.mjs.map +1 -0
- package/dist/components/ui/navigation-menu.d.mts +11 -11
- package/dist/components/ui/navigation-menu.d.mts.map +1 -1
- package/dist/components/ui/navigation-menu.mjs +18 -20
- package/dist/components/ui/navigation-menu.mjs.map +1 -1
- package/dist/components/ui/pagination.d.mts +8 -2
- package/dist/components/ui/pagination.d.mts.map +1 -1
- package/dist/components/ui/pagination.mjs +29 -21
- package/dist/components/ui/pagination.mjs.map +1 -1
- package/dist/components/ui/popover.client.d.mts +35 -0
- package/dist/components/ui/popover.client.d.mts.map +1 -0
- package/dist/components/ui/popover.client.mjs +59 -0
- package/dist/components/ui/popover.client.mjs.map +1 -0
- package/dist/components/ui/progress.client.d.mts +4 -4
- package/dist/components/ui/progress.client.d.mts.map +1 -1
- package/dist/components/ui/progress.client.mjs +7 -7
- package/dist/components/ui/progress.client.mjs.map +1 -1
- package/dist/components/ui/radio-group.d.mts +5 -5
- package/dist/components/ui/radio-group.d.mts.map +1 -1
- package/dist/components/ui/radio-group.mjs +10 -11
- package/dist/components/ui/radio-group.mjs.map +1 -1
- package/dist/components/ui/resizable.client.d.mts +3 -4
- package/dist/components/ui/resizable.client.d.mts.map +1 -1
- package/dist/components/ui/resizable.client.mjs +5 -9
- package/dist/components/ui/resizable.client.mjs.map +1 -1
- package/dist/components/ui/scroll-area.d.mts +5 -5
- package/dist/components/ui/scroll-area.d.mts.map +1 -1
- package/dist/components/ui/scroll-area.mjs +12 -11
- package/dist/components/ui/scroll-area.mjs.map +1 -1
- package/dist/components/ui/select.client.d.mts +18 -13
- package/dist/components/ui/select.client.d.mts.map +1 -1
- package/dist/components/ui/select.client.mjs +37 -32
- package/dist/components/ui/select.client.mjs.map +1 -1
- package/dist/components/ui/separator.d.mts +4 -4
- package/dist/components/ui/separator.d.mts.map +1 -1
- package/dist/components/ui/separator.mjs +6 -6
- package/dist/components/ui/separator.mjs.map +1 -1
- package/dist/components/ui/sheet.client.d.mts +9 -7
- package/dist/components/ui/sheet.client.d.mts.map +1 -1
- package/dist/components/ui/sheet.client.mjs +30 -20
- package/dist/components/ui/sheet.client.mjs.map +1 -1
- package/dist/components/ui/sidebar.client.mjs +28 -28
- package/dist/components/ui/sidebar.client.mjs.map +1 -1
- package/dist/components/ui/skeleton.mjs +1 -1
- package/dist/components/ui/skeleton.mjs.map +1 -1
- package/dist/components/ui/slider.d.mts +4 -4
- package/dist/components/ui/slider.d.mts.map +1 -1
- package/dist/components/ui/slider.mjs +11 -11
- package/dist/components/ui/slider.mjs.map +1 -1
- package/dist/components/ui/spinner.d.mts +10 -0
- package/dist/components/ui/spinner.d.mts.map +1 -0
- package/dist/components/ui/spinner.mjs +9 -55
- package/dist/components/ui/spinner.mjs.map +1 -1
- package/dist/components/ui/switch.client.d.mts +15 -0
- package/dist/components/ui/switch.client.d.mts.map +1 -0
- package/dist/components/ui/switch.client.mjs +23 -0
- package/dist/components/ui/switch.client.mjs.map +1 -0
- package/dist/components/ui/tabs.client.d.mts +31 -0
- package/dist/components/ui/tabs.client.d.mts.map +1 -0
- package/dist/components/ui/tabs.client.mjs +49 -0
- package/dist/components/ui/tabs.client.mjs.map +1 -0
- package/dist/components/ui/textarea.d.mts.map +1 -1
- package/dist/components/ui/textarea.mjs +1 -1
- package/dist/components/ui/textarea.mjs.map +1 -1
- package/dist/components/ui/toggle-group.client.d.mts +11 -6
- package/dist/components/ui/toggle-group.client.d.mts.map +1 -1
- package/dist/components/ui/toggle-group.client.mjs +20 -12
- package/dist/components/ui/toggle-group.client.mjs.map +1 -1
- package/dist/components/ui/{toggle.d.mts → toggle.client.d.mts} +6 -6
- package/dist/components/ui/toggle.client.d.mts.map +1 -0
- package/dist/components/ui/toggle.client.mjs +40 -0
- package/dist/components/ui/toggle.client.mjs.map +1 -0
- package/dist/components/ui/tooltip.client.d.mts +7 -7
- package/dist/components/ui/tooltip.client.d.mts.map +1 -1
- package/dist/components/ui/tooltip.client.mjs +10 -10
- package/dist/components/ui/tooltip.client.mjs.map +1 -1
- package/dist/components.d.mts +12 -20
- package/dist/components.mjs +12 -20
- package/dist/inline-edit/client.d.mts +2 -2
- package/dist/lib/hooks/use-indicator.d.mts.map +1 -1
- package/dist/lib/hooks/use-indicator.mjs.map +1 -1
- package/dist/modules/auth/components/auth-layout.server.mjs +2 -2
- package/dist/modules/auth/components/auth-layout.server.mjs.map +1 -1
- package/dist/modules/auth/components/create-first-user-page.client.mjs +3 -3
- package/dist/modules/auth/components/create-first-user-page.client.mjs.map +1 -1
- package/dist/modules/auth/components/forget-password-page.client.mjs +1 -1
- package/dist/modules/auth/components/forget-password-page.client.mjs.map +1 -1
- package/dist/modules/auth/components/login-page.client.mjs +5 -5
- package/dist/modules/auth/components/login-page.client.mjs.map +1 -1
- package/dist/modules/auth/components/reset-password-page.client.mjs +5 -5
- package/dist/modules/auth/components/reset-password-page.client.mjs.map +1 -1
- package/dist/modules/commands/components/alert-dialog-command.client.d.mts +9 -9
- package/dist/modules/commands/components/alert-dialog-command.client.d.mts.map +1 -1
- package/dist/modules/commands/components/alert-dialog-command.client.mjs +3 -3
- package/dist/modules/commands/components/alert-dialog-command.client.mjs.map +1 -1
- package/dist/modules/commands/components/click-command.client.mjs +2 -2
- package/dist/modules/commands/components/click-command.client.mjs.map +1 -1
- package/dist/modules/commands/components/dialog-command.client.d.mts +8 -8
- package/dist/modules/commands/components/dialog-command.client.d.mts.map +1 -1
- package/dist/modules/commands/components/dialog-command.client.mjs +2 -2
- package/dist/modules/commands/components/dialog-command.client.mjs.map +1 -1
- package/dist/modules/commands/components/dropdown-command.client.mjs +2 -2
- package/dist/modules/commands/components/dropdown-command.client.mjs.map +1 -1
- package/dist/modules/commands/components/empty-command.client.mjs +2 -2
- package/dist/modules/commands/components/empty-command.client.mjs.map +1 -1
- package/dist/modules/commands/components/form-dialog-command.client.d.mts +11 -9
- package/dist/modules/commands/components/form-dialog-command.client.d.mts.map +1 -1
- package/dist/modules/commands/components/form-dialog-command.client.mjs +8 -6
- package/dist/modules/commands/components/form-dialog-command.client.mjs.map +1 -1
- package/dist/modules/commands/menus/context-menu.client.d.mts +3 -3
- package/dist/modules/commands/menus/context-menu.client.d.mts.map +1 -1
- package/dist/modules/commands/menus/context-menu.client.mjs +1 -1
- package/dist/modules/commands/menus/context-menu.client.mjs.map +1 -1
- package/dist/modules/commands/menus/dropdown-menu.client.mjs +2 -2
- package/dist/modules/commands/menus/dropdown-menu.client.mjs.map +1 -1
- package/dist/modules/commands/menus/floating-menu.client.mjs +2 -2
- package/dist/modules/commands/menus/floating-menu.client.mjs.map +1 -1
- package/dist/modules/commands/utils/archive-command.client.mjs +1 -1
- package/dist/modules/commands/utils/archive-command.client.mjs.map +1 -1
- package/dist/modules/commands/utils/delete-command.client.mjs +1 -1
- package/dist/modules/commands/utils/delete-command.client.mjs.map +1 -1
- package/dist/modules/data-tables/components/cell/select.client.mjs +1 -1
- package/dist/modules/data-tables/components/cell/select.client.mjs.map +1 -1
- package/dist/modules/data-tables/components/column-header.mjs +5 -5
- package/dist/modules/data-tables/components/column-header.mjs.map +1 -1
- package/dist/modules/data-tables/components/filters/combobox.client.mjs +6 -6
- package/dist/modules/data-tables/components/filters/combobox.client.mjs.map +1 -1
- package/dist/modules/data-tables/components/filters/slider.client.mjs +2 -2
- package/dist/modules/data-tables/components/filters/slider.client.mjs.map +1 -1
- package/dist/modules/data-tables/components/header.mjs +1 -1
- package/dist/modules/data-tables/components/header.mjs.map +1 -1
- package/dist/modules/data-tables/components/skeleton.mjs +2 -2
- package/dist/modules/data-tables/components/skeleton.mjs.map +1 -1
- package/dist/modules/data-tables/components/table.mjs +3 -3
- package/dist/modules/data-tables/components/table.mjs.map +1 -1
- package/dist/modules/data-tables/components/toolbar.mjs +1 -1
- package/dist/modules/data-tables/components/toolbar.mjs.map +1 -1
- package/dist/modules/data-tables/strategies/pagination/components.mjs +3 -3
- package/dist/modules/data-tables/strategies/pagination/components.mjs.map +1 -1
- package/dist/modules/data-tables/tables/inline-table/components/cells/common.mjs +1 -1
- package/dist/modules/data-tables/tables/inline-table/components/cells/common.mjs.map +1 -1
- package/dist/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.mjs +1 -1
- package/dist/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.mjs.map +1 -1
- package/dist/modules/data-tables/tables/inline-table/components/cells/read-only.mjs +1 -1
- package/dist/modules/data-tables/tables/inline-table/components/cells/read-only.mjs.map +1 -1
- package/dist/modules/inline-edit/components/date-input.client.mjs +3 -3
- package/dist/modules/inline-edit/components/date-input.client.mjs.map +1 -1
- package/dist/modules/inline-edit/components/date-picker.client.mjs +2 -2
- package/dist/modules/inline-edit/components/date-picker.client.mjs.map +1 -1
- package/dist/modules/inline-edit/components/date-time.client.d.mts +1 -1
- package/dist/modules/inline-edit/components/date-time.client.mjs +1 -1
- package/dist/modules/inline-edit/components/date-time.client.mjs.map +1 -1
- package/dist/modules/inline-edit/components/input-toggle.client.mjs +2 -2
- package/dist/modules/inline-edit/components/input-toggle.client.mjs.map +1 -1
- package/dist/modules/inline-edit/components/input.client.mjs +3 -3
- package/dist/modules/inline-edit/components/input.client.mjs.map +1 -1
- package/dist/modules/inline-edit/components/select.client.d.mts +8 -11
- package/dist/modules/inline-edit/components/select.client.d.mts.map +1 -1
- package/dist/modules/inline-edit/components/select.client.mjs.map +1 -1
- package/dist/modules/inline-edit/components/switch.client.d.mts +3 -2
- package/dist/modules/inline-edit/components/switch.client.d.mts.map +1 -1
- package/dist/modules/inline-edit/components/switch.client.mjs +1 -1
- package/dist/modules/inline-edit/components/switch.client.mjs.map +1 -1
- package/dist/modules/inline-edit/components/toggle.client.mjs +1 -1
- package/dist/modules/inline-edit/components/toggle.client.mjs.map +1 -1
- package/dist/modules/inline-edit/lib/variants.d.mts +1 -1
- package/dist/modules/inline-edit/lib/variants.mjs +1 -1
- package/dist/modules/inline-edit/lib/variants.mjs.map +1 -1
- package/dist/modules/storage/components/dropzone.client.mjs +8 -8
- package/dist/modules/storage/components/dropzone.client.mjs.map +1 -1
- package/dist/modules/storage/components/image-grid.client.mjs +5 -5
- package/dist/modules/storage/components/image-grid.client.mjs.map +1 -1
- package/dist/modules/storage/components/upload-zone.client.mjs +1 -1
- package/dist/modules/storage/components/upload-zone.client.mjs.map +1 -1
- package/dist/modules/storage/lib/router.server.d.mts +11 -11
- package/dist/modules/storage/lib/service.server.d.mts +9 -9
- package/dist/modules/storage/lib/validators.d.mts +7 -7
- package/package.json +6 -31
- package/src/components/editor/components/menu-nodes.client.tsx +1 -1
- package/src/components/editor/components/menu.client.tsx +3 -3
- package/src/components/emails/forget-password-email.tsx +6 -6
- package/src/components/entry.client.ts +16 -0
- package/src/components/entry.ts +6 -14
- package/src/components/header/back-button.client.tsx +2 -2
- package/src/components/header/bottom-bar.client.tsx +2 -2
- package/src/components/header/breadcrumbs.client.tsx +1 -1
- package/src/components/header/header.client.tsx +1 -1
- package/src/components/layouts/empty-page.tsx +2 -2
- package/src/components/layouts/error-page.tsx +3 -3
- package/src/components/layouts/providers.client.tsx +8 -5
- package/src/components/layouts/root-loading.tsx +2 -2
- package/src/components/layouts/tab-layout.tsx +1 -1
- package/src/components/lists/data-list.tsx +1 -1
- package/src/components/lists/data-stack.tsx +1 -1
- package/src/components/navigation/admin-sidebar-header.client.tsx +3 -3
- package/src/components/navigation/admin-sidebar-skeleton.tsx +1 -1
- package/src/components/ui/accordion.client.tsx +83 -0
- package/src/components/ui/alert-dialog.client.tsx +181 -0
- package/src/components/ui/alert.tsx +15 -7
- package/src/components/ui/aspect-ratio.client.tsx +9 -0
- package/src/components/ui/avatar.client.tsx +61 -6
- package/src/components/ui/badge.tsx +17 -11
- package/src/components/ui/breadcrumb.tsx +9 -10
- package/src/components/ui/button-group.tsx +78 -0
- package/src/components/ui/button.tsx +26 -16
- package/src/components/ui/{calendar.tsx → calendar.client.tsx} +27 -20
- package/src/components/ui/card.tsx +41 -8
- package/src/components/ui/{carousel.tsx → carousel.client.tsx} +12 -12
- package/src/components/ui/chart.client.tsx +105 -103
- package/src/components/ui/checkbox.client.tsx +28 -0
- package/src/components/ui/collapsible.client.tsx +2 -2
- package/src/components/ui/combobox-dropdown.client.tsx +2 -2
- package/src/components/ui/combobox.client.tsx +6 -6
- package/src/components/ui/command.client.tsx +179 -0
- package/src/components/ui/{context-menu.tsx → context-menu.client.tsx} +86 -64
- package/src/components/ui/date-picker.client.tsx +2 -2
- package/src/components/ui/dialog.client.tsx +43 -20
- package/src/components/ui/drawer.client.tsx +13 -15
- package/src/components/ui/{dropdown-menu.tsx → dropdown-menu.client.tsx} +45 -24
- package/src/components/ui/empty.tsx +93 -0
- package/src/components/ui/field.client.tsx +224 -0
- package/src/components/ui/form.client.tsx +4 -4
- package/src/components/ui/hover-card.client.tsx +14 -13
- package/src/components/ui/{input-date-time.tsx → input-date-time.client.tsx} +6 -1
- package/src/components/ui/input-date.tsx +1 -1
- package/src/components/ui/input-group.client.tsx +191 -0
- package/src/components/ui/input-recipient.tsx +12 -12
- package/src/components/ui/input-time.tsx +1 -1
- package/src/components/ui/input.tsx +2 -4
- package/src/components/ui/item.tsx +182 -0
- package/src/components/ui/kbd.tsx +26 -0
- package/src/components/ui/label.tsx +2 -3
- package/src/components/ui/loader.tsx +51 -0
- package/src/components/ui/navigation-menu.tsx +14 -17
- package/src/components/ui/pagination.tsx +31 -26
- package/src/components/ui/popover.client.tsx +73 -0
- package/src/components/ui/progress.client.tsx +6 -4
- package/src/components/ui/radio-group.tsx +5 -7
- package/src/components/ui/resizable.client.tsx +9 -19
- package/src/components/ui/scroll-area.tsx +5 -7
- package/src/components/ui/select.client.tsx +40 -22
- package/src/components/ui/separator.tsx +3 -4
- package/src/components/ui/sheet.client.tsx +19 -18
- package/src/components/ui/sidebar.client.tsx +27 -27
- package/src/components/ui/skeleton.tsx +1 -1
- package/src/components/ui/slider.tsx +5 -10
- package/src/components/ui/spinner.tsx +12 -48
- package/src/components/ui/switch.client.tsx +32 -0
- package/src/components/ui/tabs.client.tsx +79 -0
- package/src/components/ui/textarea.tsx +1 -2
- package/src/components/ui/toggle-group.client.tsx +26 -10
- package/src/components/ui/toggle.client.tsx +44 -0
- package/src/components/ui/tooltip.client.tsx +4 -9
- package/src/lib/hooks/use-indicator.tsx +4 -7
- package/src/modules/auth/components/auth-layout.server.tsx +2 -2
- package/src/modules/auth/components/create-first-user-page.client.tsx +4 -4
- package/src/modules/auth/components/forget-password-page.client.tsx +1 -1
- package/src/modules/auth/components/login-page.client.tsx +6 -6
- package/src/modules/auth/components/reset-password-page.client.tsx +7 -7
- package/src/modules/commands/components/alert-dialog-command.client.tsx +20 -16
- package/src/modules/commands/components/click-command.client.tsx +2 -2
- package/src/modules/commands/components/dialog-command.client.tsx +11 -10
- package/src/modules/commands/components/dropdown-command.client.tsx +2 -2
- package/src/modules/commands/components/empty-command.client.tsx +2 -2
- package/src/modules/commands/components/form-dialog-command.client.tsx +29 -13
- package/src/modules/commands/menus/context-menu.client.tsx +3 -4
- package/src/modules/commands/menus/dropdown-menu.client.tsx +2 -2
- package/src/modules/commands/menus/floating-menu.client.tsx +2 -2
- package/src/modules/commands/utils/archive-command.client.tsx +1 -1
- package/src/modules/commands/utils/delete-command.client.tsx +1 -1
- package/src/modules/data-tables/components/cell/select.client.tsx +1 -1
- package/src/modules/data-tables/components/column-header.tsx +5 -5
- package/src/modules/data-tables/components/filters/combobox.client.tsx +6 -6
- package/src/modules/data-tables/components/filters/slider.client.tsx +2 -2
- package/src/modules/data-tables/components/header.tsx +1 -1
- package/src/modules/data-tables/components/skeleton.tsx +2 -2
- package/src/modules/data-tables/components/table.tsx +3 -3
- package/src/modules/data-tables/components/toolbar.tsx +1 -1
- package/src/modules/data-tables/strategies/pagination/components.tsx +3 -3
- package/src/modules/data-tables/tables/inline-table/components/cells/common.tsx +1 -1
- package/src/modules/data-tables/tables/inline-table/components/cells/drag-handle.client.tsx +1 -1
- package/src/modules/data-tables/tables/inline-table/components/cells/read-only.tsx +1 -1
- package/src/modules/inline-edit/components/date-input.client.tsx +3 -3
- package/src/modules/inline-edit/components/date-picker.client.tsx +2 -2
- package/src/modules/inline-edit/components/date-time.client.tsx +1 -1
- package/src/modules/inline-edit/components/input-toggle.client.tsx +2 -2
- package/src/modules/inline-edit/components/input.client.tsx +3 -3
- package/src/modules/inline-edit/components/select.client.tsx +6 -20
- package/src/modules/inline-edit/components/switch.client.tsx +3 -3
- package/src/modules/inline-edit/components/toggle.client.tsx +1 -1
- package/src/modules/inline-edit/lib/variants.ts +1 -1
- package/src/modules/storage/components/dropzone.client.tsx +8 -8
- package/src/modules/storage/components/image-grid.client.tsx +5 -5
- package/src/modules/storage/components/upload-zone.client.tsx +1 -1
- package/src/styles.css +1 -3
- package/dist/components/ui/accordion.d.mts +0 -25
- package/dist/components/ui/accordion.d.mts.map +0 -1
- package/dist/components/ui/accordion.mjs +0 -46
- package/dist/components/ui/accordion.mjs.map +0 -1
- package/dist/components/ui/alert-dialog.d.mts +0 -43
- package/dist/components/ui/alert-dialog.d.mts.map +0 -1
- package/dist/components/ui/alert-dialog.mjs +0 -84
- package/dist/components/ui/alert-dialog.mjs.map +0 -1
- package/dist/components/ui/aspect-ratio.d.mts +0 -8
- package/dist/components/ui/aspect-ratio.d.mts.map +0 -1
- package/dist/components/ui/aspect-ratio.mjs +0 -16
- package/dist/components/ui/aspect-ratio.mjs.map +0 -1
- package/dist/components/ui/calendar.d.mts.map +0 -1
- package/dist/components/ui/calendar.mjs.map +0 -1
- package/dist/components/ui/carousel.d.mts.map +0 -1
- package/dist/components/ui/carousel.mjs.map +0 -1
- package/dist/components/ui/checkbox.d.mts +0 -12
- package/dist/components/ui/checkbox.d.mts.map +0 -1
- package/dist/components/ui/checkbox.mjs +0 -24
- package/dist/components/ui/checkbox.mjs.map +0 -1
- package/dist/components/ui/command.d.mts.map +0 -1
- package/dist/components/ui/command.mjs +0 -88
- package/dist/components/ui/command.mjs.map +0 -1
- package/dist/components/ui/context-menu.d.mts +0 -77
- package/dist/components/ui/context-menu.d.mts.map +0 -1
- package/dist/components/ui/context-menu.mjs +0 -125
- package/dist/components/ui/context-menu.mjs.map +0 -1
- package/dist/components/ui/dropdown-menu.d.mts +0 -78
- package/dist/components/ui/dropdown-menu.d.mts.map +0 -1
- package/dist/components/ui/dropdown-menu.mjs +0 -126
- package/dist/components/ui/dropdown-menu.mjs.map +0 -1
- package/dist/components/ui/input-date-time.d.mts.map +0 -1
- package/dist/components/ui/input-date-time.mjs.map +0 -1
- package/dist/components/ui/popover.d.mts +0 -23
- package/dist/components/ui/popover.d.mts.map +0 -1
- package/dist/components/ui/popover.mjs +0 -38
- package/dist/components/ui/popover.mjs.map +0 -1
- package/dist/components/ui/switch.d.mts +0 -12
- package/dist/components/ui/switch.d.mts.map +0 -1
- package/dist/components/ui/switch.mjs +0 -22
- package/dist/components/ui/switch.mjs.map +0 -1
- package/dist/components/ui/tabs.d.mts +0 -24
- package/dist/components/ui/tabs.d.mts.map +0 -1
- package/dist/components/ui/tabs.mjs +0 -39
- package/dist/components/ui/tabs.mjs.map +0 -1
- package/dist/components/ui/toggle.d.mts.map +0 -1
- package/dist/components/ui/toggle.mjs +0 -40
- package/dist/components/ui/toggle.mjs.map +0 -1
- package/src/components/ui/accordion.tsx +0 -63
- package/src/components/ui/alert-dialog.tsx +0 -133
- package/src/components/ui/aspect-ratio.tsx +0 -9
- package/src/components/ui/checkbox.tsx +0 -29
- package/src/components/ui/command.tsx +0 -154
- package/src/components/ui/popover.tsx +0 -42
- package/src/components/ui/switch.tsx +0 -28
- package/src/components/ui/tabs.tsx +0 -54
- package/src/components/ui/toggle.tsx +0 -46
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combobox-dropdown.client.mjs","names":["React","Command"],"sources":["../../../src/components/ui/combobox-dropdown.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { CommandList } from \"cmdk\";\nimport { ChevronsUpDown } from \"lucide-react\";\nimport * as React from \"react\";\nimport { cn } from \"@/lib/utils/cn\";\nimport { Button } from \"./button\";\nimport { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem } from \"./command\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"./popover\";\n\nexport type ComboboxDropdownItem = {\n id: string;\n value: string;\n label?: React.ReactNode;\n disabled?: boolean;\n};\n\nexport type ComboboxDropdownProps<T> = {\n placeholder?: React.ReactNode;\n searchPlaceholder?: string;\n items: T[];\n onSelect: (item: T) => void;\n selectedItem?: T;\n renderSelectedItem?: (selectedItem: T) => React.ReactNode;\n renderOnCreate?: (value: string) => React.ReactNode;\n renderListItem?: (listItem: { isChecked: boolean; item: T }) => React.ReactNode;\n emptyResults?: React.ReactNode;\n popoverProps?: React.ComponentProps<typeof PopoverContent>;\n disabled?: boolean;\n onCreate?: (value: string) => void;\n className?: string;\n};\n\nexport function ComboboxDropdown<T extends ComboboxDropdownItem>({\n placeholder,\n searchPlaceholder,\n items,\n onSelect,\n selectedItem: incomingSelectedItem,\n renderSelectedItem,\n renderOnCreate,\n emptyResults,\n popoverProps,\n disabled,\n onCreate,\n className,\n}: ComboboxDropdownProps<T>) {\n const [open, setOpen] = React.useState(false);\n const [internalSelectedItem, setInternalSelectedItem] = React.useState<T | undefined>();\n const [inputValue, setInputValue] = React.useState(\"\");\n\n const selectedItem = incomingSelectedItem ?? internalSelectedItem;\n\n const filteredItems = items.filter((item) =>\n item.value.toLowerCase().includes(inputValue.toLowerCase()),\n );\n\n const showCreate =\n onCreate &&\n inputValue &&\n !items?.find((o) => o.value.toLowerCase() === inputValue.toLowerCase());\n\n return (\n <Popover open={open} onOpenChange={setOpen} modal={true}>\n <PopoverTrigger asChild disabled={disabled}>\n <Button\n variant=\"outline\"\n role=\"combobox\"\n aria-expanded={open}\n className={cn(\"w-full justify-between\", className)}\n >\n {selectedItem ? (\n <div className=\"flex items-center\">\n {renderSelectedItem?.(selectedItem) ?? selectedItem.label ?? selectedItem.value}\n </div>\n ) : (\n (placeholder ?? \"Select item...\")\n )}\n <ChevronsUpDown className=\"ml-2 h-4 w-4 shrink-0 opacity-50\" />\n </Button>\n </PopoverTrigger>\n\n <PopoverContent\n className=\"p-0\"\n {...popoverProps}\n style={{\n width: \"var(--radix-popover-trigger-width)\",\n ...popoverProps?.style,\n }}\n >\n <Command loop shouldFilter={false}>\n <CommandInput\n value={inputValue}\n onValueChange={setInputValue}\n placeholder={searchPlaceholder ?? \"Search item...\"}\n className=\"px-3\"\n />\n\n <CommandEmpty>{emptyResults ?? \"Geen resultaat gevonden\"}</CommandEmpty>\n <CommandGroup>\n <CommandList className=\"max-h-56.25 overflow-auto\">\n {filteredItems.map((item) => {\n const isChecked = selectedItem?.id === item.id;\n\n return (\n <CommandItem\n disabled={item.disabled}\n className={cn(\n \"cursor-pointer\",\n isChecked && \"bg-primary text-primary-foreground\",\n )}\n key={item.id}\n value={item.id}\n onSelect={(id) => {\n const foundItem = items.find((item) => item.id === id);\n\n if (!foundItem) {\n return;\n }\n\n onSelect(foundItem);\n setInternalSelectedItem(foundItem);\n setOpen(false);\n }}\n >\n {item.label ?? item.value}\n </CommandItem>\n );\n })}\n\n {showCreate && (\n <CommandItem\n key={inputValue}\n value={inputValue}\n onSelect={() => {\n onCreate(inputValue);\n setOpen(false);\n setInputValue(\"\");\n }}\n onMouseDown={(event) => {\n event.preventDefault();\n event.stopPropagation();\n }}\n >\n {renderOnCreate ? renderOnCreate(inputValue) : null}\n </CommandItem>\n )}\n </CommandList>\n </CommandGroup>\n </Command>\n </PopoverContent>\n </Popover>\n );\n}\n"],"mappings":";;;;;;;;;;;;AAiCA,SAAgB,iBAAiD,EAC/D,aACA,mBACA,OACA,UACA,cAAc,sBACd,oBACA,gBACA,cACA,cACA,UACA,UACA,aAC2B;CAC3B,MAAM,CAAC,MAAM,WAAWA,QAAM,SAAS,MAAM;CAC7C,MAAM,CAAC,sBAAsB,2BAA2BA,QAAM,UAAyB;CACvF,MAAM,CAAC,YAAY,iBAAiBA,QAAM,SAAS,GAAG;CAEtD,MAAM,eAAe,wBAAwB;CAE7C,MAAM,gBAAgB,MAAM,QAAQ,SAClC,KAAK,MAAM,aAAa,CAAC,SAAS,WAAW,aAAa,CAAC,CAC5D;CAED,MAAM,aACJ,YACA,cACA,CAAC,OAAO,MAAM,MAAM,EAAE,MAAM,aAAa,KAAK,WAAW,aAAa,CAAC;AAEzE,QACE,qBAAC;EAAc;EAAM,cAAc;EAAS,OAAO;aACjD,oBAAC;GAAe;GAAkB;aAChC,qBAAC;IACC,SAAQ;IACR,MAAK;IACL,iBAAe;IACf,WAAW,GAAG,0BAA0B,UAAU;eAEjD,eACC,oBAAC;KAAI,WAAU;eACZ,qBAAqB,aAAa,IAAI,aAAa,SAAS,aAAa;MACtE,GAEL,eAAe,kBAElB,oBAAC,kBAAe,WAAU,qCAAqC;KACxD;IACM,EAEjB,oBAAC;GACC,WAAU;GACV,GAAI;GACJ,OAAO;IACL,OAAO;IACP,GAAG,cAAc;IAClB;aAED,qBAACC;IAAQ;IAAK,cAAc;;KAC1B,oBAAC;MACC,OAAO;MACP,eAAe;MACf,aAAa,qBAAqB;MAClC,WAAU;OACV;KAEF,oBAAC,0BAAc,gBAAgB,4BAAyC;KACxE,oBAAC,0BACC,qBAAC;MAAY,WAAU;iBACpB,cAAc,KAAK,SAAS;OAC3B,MAAM,YAAY,cAAc,OAAO,KAAK;AAE5C,cACE,oBAAC;QACC,UAAU,KAAK;QACf,WAAW,GACT,kBACA,aAAa,qCACd;QAED,OAAO,KAAK;QACZ,WAAW,OAAO;SAChB,MAAM,YAAY,MAAM,MAAM,SAAS,KAAK,OAAO,GAAG;AAEtD,aAAI,CAAC,UACH;AAGF,kBAAS,UAAU;AACnB,iCAAwB,UAAU;AAClC,iBAAQ,MAAM;;kBAGf,KAAK,SAAS,KAAK;UAdf,KAAK,GAeE;QAEhB,EAED,cACC,oBAAC;OAEC,OAAO;OACP,gBAAgB;AACd,iBAAS,WAAW;AACpB,gBAAQ,MAAM;AACd,sBAAc,GAAG;;OAEnB,cAAc,UAAU;AACtB,cAAM,gBAAgB;AACtB,cAAM,iBAAiB;;iBAGxB,iBAAiB,eAAe,WAAW,GAAG;SAZ1C,WAaO;OAEJ,GACD;;KACP;IACK;GACT"}
|
|
1
|
+
{"version":3,"file":"combobox-dropdown.client.mjs","names":["React","Command"],"sources":["../../../src/components/ui/combobox-dropdown.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { CommandList } from \"cmdk\";\nimport { ChevronsUpDown } from \"lucide-react\";\nimport * as React from \"react\";\nimport { cn } from \"@/lib/utils/cn\";\nimport { Button } from \"./button\";\nimport { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem } from \"./command.client\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"./popover.client\";\n\nexport type ComboboxDropdownItem = {\n id: string;\n value: string;\n label?: React.ReactNode;\n disabled?: boolean;\n};\n\nexport type ComboboxDropdownProps<T> = {\n placeholder?: React.ReactNode;\n searchPlaceholder?: string;\n items: T[];\n onSelect: (item: T) => void;\n selectedItem?: T;\n renderSelectedItem?: (selectedItem: T) => React.ReactNode;\n renderOnCreate?: (value: string) => React.ReactNode;\n renderListItem?: (listItem: { isChecked: boolean; item: T }) => React.ReactNode;\n emptyResults?: React.ReactNode;\n popoverProps?: React.ComponentProps<typeof PopoverContent>;\n disabled?: boolean;\n onCreate?: (value: string) => void;\n className?: string;\n};\n\nexport function ComboboxDropdown<T extends ComboboxDropdownItem>({\n placeholder,\n searchPlaceholder,\n items,\n onSelect,\n selectedItem: incomingSelectedItem,\n renderSelectedItem,\n renderOnCreate,\n emptyResults,\n popoverProps,\n disabled,\n onCreate,\n className,\n}: ComboboxDropdownProps<T>) {\n const [open, setOpen] = React.useState(false);\n const [internalSelectedItem, setInternalSelectedItem] = React.useState<T | undefined>();\n const [inputValue, setInputValue] = React.useState(\"\");\n\n const selectedItem = incomingSelectedItem ?? internalSelectedItem;\n\n const filteredItems = items.filter((item) =>\n item.value.toLowerCase().includes(inputValue.toLowerCase()),\n );\n\n const showCreate =\n onCreate &&\n inputValue &&\n !items?.find((o) => o.value.toLowerCase() === inputValue.toLowerCase());\n\n return (\n <Popover open={open} onOpenChange={setOpen} modal={true}>\n <PopoverTrigger asChild disabled={disabled}>\n <Button\n variant=\"outline\"\n role=\"combobox\"\n aria-expanded={open}\n className={cn(\"w-full justify-between\", className)}\n >\n {selectedItem ? (\n <div className=\"flex items-center\">\n {renderSelectedItem?.(selectedItem) ?? selectedItem.label ?? selectedItem.value}\n </div>\n ) : (\n (placeholder ?? \"Select item...\")\n )}\n <ChevronsUpDown className=\"ml-2 h-4 w-4 shrink-0 opacity-50\" />\n </Button>\n </PopoverTrigger>\n\n <PopoverContent\n className=\"p-0\"\n {...popoverProps}\n style={{\n width: \"var(--radix-popover-trigger-width)\",\n ...popoverProps?.style,\n }}\n >\n <Command loop shouldFilter={false}>\n <CommandInput\n value={inputValue}\n onValueChange={setInputValue}\n placeholder={searchPlaceholder ?? \"Search item...\"}\n className=\"px-3\"\n />\n\n <CommandEmpty>{emptyResults ?? \"Geen resultaat gevonden\"}</CommandEmpty>\n <CommandGroup>\n <CommandList className=\"max-h-56.25 overflow-auto\">\n {filteredItems.map((item) => {\n const isChecked = selectedItem?.id === item.id;\n\n return (\n <CommandItem\n disabled={item.disabled}\n className={cn(\n \"cursor-pointer\",\n isChecked && \"bg-primary text-primary-foreground\",\n )}\n key={item.id}\n value={item.id}\n onSelect={(id) => {\n const foundItem = items.find((item) => item.id === id);\n\n if (!foundItem) {\n return;\n }\n\n onSelect(foundItem);\n setInternalSelectedItem(foundItem);\n setOpen(false);\n }}\n >\n {item.label ?? item.value}\n </CommandItem>\n );\n })}\n\n {showCreate && (\n <CommandItem\n key={inputValue}\n value={inputValue}\n onSelect={() => {\n onCreate(inputValue);\n setOpen(false);\n setInputValue(\"\");\n }}\n onMouseDown={(event) => {\n event.preventDefault();\n event.stopPropagation();\n }}\n >\n {renderOnCreate ? renderOnCreate(inputValue) : null}\n </CommandItem>\n )}\n </CommandList>\n </CommandGroup>\n </Command>\n </PopoverContent>\n </Popover>\n );\n}\n"],"mappings":";;;;;;;;;;;;AAiCA,SAAgB,iBAAiD,EAC/D,aACA,mBACA,OACA,UACA,cAAc,sBACd,oBACA,gBACA,cACA,cACA,UACA,UACA,aAC2B;CAC3B,MAAM,CAAC,MAAM,WAAWA,QAAM,SAAS,MAAM;CAC7C,MAAM,CAAC,sBAAsB,2BAA2BA,QAAM,UAAyB;CACvF,MAAM,CAAC,YAAY,iBAAiBA,QAAM,SAAS,GAAG;CAEtD,MAAM,eAAe,wBAAwB;CAE7C,MAAM,gBAAgB,MAAM,QAAQ,SAClC,KAAK,MAAM,aAAa,CAAC,SAAS,WAAW,aAAa,CAAC,CAC5D;CAED,MAAM,aACJ,YACA,cACA,CAAC,OAAO,MAAM,MAAM,EAAE,MAAM,aAAa,KAAK,WAAW,aAAa,CAAC;AAEzE,QACE,qBAAC;EAAc;EAAM,cAAc;EAAS,OAAO;aACjD,oBAAC;GAAe;GAAkB;aAChC,qBAAC;IACC,SAAQ;IACR,MAAK;IACL,iBAAe;IACf,WAAW,GAAG,0BAA0B,UAAU;eAEjD,eACC,oBAAC;KAAI,WAAU;eACZ,qBAAqB,aAAa,IAAI,aAAa,SAAS,aAAa;MACtE,GAEL,eAAe,kBAElB,oBAAC,kBAAe,WAAU,qCAAqC;KACxD;IACM,EAEjB,oBAAC;GACC,WAAU;GACV,GAAI;GACJ,OAAO;IACL,OAAO;IACP,GAAG,cAAc;IAClB;aAED,qBAACC;IAAQ;IAAK,cAAc;;KAC1B,oBAAC;MACC,OAAO;MACP,eAAe;MACf,aAAa,qBAAqB;MAClC,WAAU;OACV;KAEF,oBAAC,0BAAc,gBAAgB,4BAAyC;KACxE,oBAAC,0BACC,qBAAC;MAAY,WAAU;iBACpB,cAAc,KAAK,SAAS;OAC3B,MAAM,YAAY,cAAc,OAAO,KAAK;AAE5C,cACE,oBAAC;QACC,UAAU,KAAK;QACf,WAAW,GACT,kBACA,aAAa,qCACd;QAED,OAAO,KAAK;QACZ,WAAW,OAAO;SAChB,MAAM,YAAY,MAAM,MAAM,SAAS,KAAK,OAAO,GAAG;AAEtD,aAAI,CAAC,UACH;AAGF,kBAAS,UAAU;AACnB,iCAAwB,UAAU;AAClC,iBAAQ,MAAM;;kBAGf,KAAK,SAAS,KAAK;UAdf,KAAK,GAeE;QAEhB,EAED,cACC,oBAAC;OAEC,OAAO;OACP,gBAAgB;AACd,iBAAS,WAAW;AACpB,gBAAQ,MAAM;AACd,sBAAc,GAAG;;OAEnB,cAAc,UAAU;AACtB,cAAM,gBAAgB;AACtB,cAAM,iBAAiB;;iBAGxB,iBAAiB,eAAe,WAAW,GAAG;SAZ1C,WAaO;OAEJ,GACD;;KACP;IACK;GACT"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { cn } from "../../lib/utils/cn.mjs";
|
|
4
|
-
import { Popover, PopoverAnchor, PopoverContent } from "./popover.mjs";
|
|
5
|
-
import { Command as Command$1, CommandEmpty, CommandGroup, CommandItem, CommandList as CommandList$1 } from "./command.mjs";
|
|
4
|
+
import { Popover, PopoverAnchor, PopoverContent } from "./popover.client.mjs";
|
|
5
|
+
import { Command as Command$1, CommandEmpty, CommandGroup, CommandItem, CommandList as CommandList$1 } from "./command.client.mjs";
|
|
6
6
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
7
|
import { useState } from "react";
|
|
8
8
|
import { Command } from "cmdk";
|
|
@@ -15,7 +15,7 @@ function Combobox({ value, onSelect, onBlur, options, placeholder, disabled, emp
|
|
|
15
15
|
open,
|
|
16
16
|
onOpenChange: setOpen,
|
|
17
17
|
children: /* @__PURE__ */ jsxs(Command$1, {
|
|
18
|
-
className: "
|
|
18
|
+
className: "overflow-auto bg-transparent text-foreground",
|
|
19
19
|
children: [
|
|
20
20
|
/* @__PURE__ */ jsx(PopoverAnchor, {
|
|
21
21
|
asChild: true,
|
|
@@ -32,7 +32,7 @@ function Combobox({ value, onSelect, onBlur, options, placeholder, disabled, emp
|
|
|
32
32
|
onBlur?.(e);
|
|
33
33
|
},
|
|
34
34
|
onFocus: () => setOpen(true),
|
|
35
|
-
className: cn("
|
|
35
|
+
className: cn("flex h-8 w-full min-w-0 rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-xs outline-none transition-[color,box-shadow] selection:bg-primary selection:text-primary-foreground file:inline-flex file:h-7 file:border-0 file:bg-transparent file:font-medium file:text-foreground file:text-sm placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", "focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50", "aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40", className)
|
|
36
36
|
})
|
|
37
37
|
}),
|
|
38
38
|
!open && /* @__PURE__ */ jsx(CommandList$1, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combobox.client.mjs","names":["Command","CommandPrimitive","CommandList"],"sources":["../../../src/components/ui/combobox.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { Command as CommandPrimitive } from \"cmdk\";\nimport { useState } from \"react\";\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandList,\n} from \"@/components/ui/command\";\nimport { Popover, PopoverAnchor, PopoverContent } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/entry\";\n\nexport type ComboboxItem = {\n id: string;\n label: string;\n disabled?: boolean;\n};\n\nexport type ComboboxProps<TValue> = {\n value: TValue;\n onSelect?: (id: TValue) => void;\n onBlur?: (e: React.FocusEvent<HTMLInputElement>) => void;\n options: ComboboxItem[];\n emptyMessage?: string;\n placeholder?: string;\n disabled?: boolean;\n className?: string;\n};\n\nexport function Combobox<TValue>({\n value,\n onSelect,\n onBlur,\n options,\n placeholder,\n disabled,\n emptyMessage = \"Geen items gevonden\",\n className,\n}: ComboboxProps<TValue>) {\n const [open, setOpen] = useState(false);\n\n const selected = options.find((option) => option.id === value);\n\n return (\n <Popover open={open} onOpenChange={setOpen}>\n <Command className=\"
|
|
1
|
+
{"version":3,"file":"combobox.client.mjs","names":["Command","CommandPrimitive","CommandList"],"sources":["../../../src/components/ui/combobox.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { Command as CommandPrimitive } from \"cmdk\";\nimport { useState } from \"react\";\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandList,\n} from \"@/components/ui/command.client\";\nimport { Popover, PopoverAnchor, PopoverContent } from \"@/components/ui/popover.client\";\nimport { cn } from \"@/lib/entry\";\n\nexport type ComboboxItem = {\n id: string;\n label: string;\n disabled?: boolean;\n};\n\nexport type ComboboxProps<TValue> = {\n value: TValue;\n onSelect?: (id: TValue) => void;\n onBlur?: (e: React.FocusEvent<HTMLInputElement>) => void;\n options: ComboboxItem[];\n emptyMessage?: string;\n placeholder?: string;\n disabled?: boolean;\n className?: string;\n};\n\nexport function Combobox<TValue>({\n value,\n onSelect,\n onBlur,\n options,\n placeholder,\n disabled,\n emptyMessage = \"Geen items gevonden\",\n className,\n}: ComboboxProps<TValue>) {\n const [open, setOpen] = useState(false);\n\n const selected = options.find((option) => option.id === value);\n\n return (\n <Popover open={open} onOpenChange={setOpen}>\n <Command className=\"overflow-auto bg-transparent text-foreground\">\n <PopoverAnchor asChild>\n <CommandPrimitive.Input\n data-input\n value={value?.toString() ?? \"\"}\n placeholder={placeholder}\n disabled={disabled}\n onValueChange={(value) => onSelect?.(value as TValue)}\n onKeyDown={(e) => setOpen(e.key !== \"Escape\")}\n onMouseDown={() => setOpen((open) => !!value || !open)}\n onBlur={(e) => {\n setOpen(false);\n onBlur?.(e);\n }}\n onFocus={() => setOpen(true)}\n className={cn(\n \"flex h-8 w-full min-w-0 rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-xs outline-none transition-[color,box-shadow] selection:bg-primary selection:text-primary-foreground file:inline-flex file:h-7 file:border-0 file:bg-transparent file:font-medium file:text-foreground file:text-sm placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\",\n \"focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50\",\n \"aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40\",\n className,\n )}\n />\n </PopoverAnchor>\n\n {!open && <CommandList aria-hidden=\"true\" className=\"hidden\" />}\n\n <PopoverContent\n asChild\n onOpenAutoFocus={(e) => e.preventDefault()}\n onInteractOutside={(e) => {\n if (e.target instanceof Element && e.target.hasAttribute(\"cmdk-input\")) {\n e.preventDefault();\n }\n }}\n className=\"w-[var(--radix-popover-trigger-width)] p-0\"\n >\n <CommandList>\n {options.length > 0 && (\n <CommandGroup>\n {options.map((option) => (\n <CommandItem\n key={option.id}\n value={option.id}\n onMouseDown={(e) => e.preventDefault()}\n className={cn(selected?.id === option.id && \"font-bold\")}\n onSelect={(id) => {\n onSelect?.(id as TValue);\n setOpen(false);\n }}\n >\n {option.label}\n </CommandItem>\n ))}\n </CommandGroup>\n )}\n\n <CommandEmpty>{emptyMessage}</CommandEmpty>\n </CommandList>\n </PopoverContent>\n </Command>\n </Popover>\n );\n}\n"],"mappings":";;;;;;;;;;AA+BA,SAAgB,SAAiB,EAC/B,OACA,UACA,QACA,SACA,aACA,UACA,eAAe,uBACf,aACwB;CACxB,MAAM,CAAC,MAAM,WAAW,SAAS,MAAM;CAEvC,MAAM,WAAW,QAAQ,MAAM,WAAW,OAAO,OAAO,MAAM;AAE9D,QACE,oBAAC;EAAc;EAAM,cAAc;YACjC,qBAACA;GAAQ,WAAU;;IACjB,oBAAC;KAAc;eACb,oBAACC,QAAiB;MAChB;MACA,OAAO,OAAO,UAAU,IAAI;MACf;MACH;MACV,gBAAgB,UAAU,WAAW,MAAgB;MACrD,YAAY,MAAM,QAAQ,EAAE,QAAQ,SAAS;MAC7C,mBAAmB,SAAS,SAAS,CAAC,CAAC,SAAS,CAAC,KAAK;MACtD,SAAS,MAAM;AACb,eAAQ,MAAM;AACd,gBAAS,EAAE;;MAEb,eAAe,QAAQ,KAAK;MAC5B,WAAW,GACT,kbACA,iFACA,0GACA,UACD;OACD;MACY;IAEf,CAAC,QAAQ,oBAACC;KAAY,eAAY;KAAO,WAAU;MAAW;IAE/D,oBAAC;KACC;KACA,kBAAkB,MAAM,EAAE,gBAAgB;KAC1C,oBAAoB,MAAM;AACxB,UAAI,EAAE,kBAAkB,WAAW,EAAE,OAAO,aAAa,aAAa,CACpE,GAAE,gBAAgB;;KAGtB,WAAU;eAEV,qBAACA,4BACE,QAAQ,SAAS,KAChB,oBAAC,0BACE,QAAQ,KAAK,WACZ,oBAAC;MAEC,OAAO,OAAO;MACd,cAAc,MAAM,EAAE,gBAAgB;MACtC,WAAW,GAAG,UAAU,OAAO,OAAO,MAAM,YAAY;MACxD,WAAW,OAAO;AAChB,kBAAW,GAAa;AACxB,eAAQ,MAAM;;gBAGf,OAAO;QATH,OAAO,GAUA,CACd,GACW,EAGjB,oBAAC,0BAAc,eAA4B,IAC/B;MACC;;IACT;GACF"}
|
|
@@ -3,7 +3,7 @@ import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
|
3
3
|
import * as React$1 from "react";
|
|
4
4
|
import { Command } from "cmdk";
|
|
5
5
|
|
|
6
|
-
//#region src/components/ui/command.d.ts
|
|
6
|
+
//#region src/components/ui/command.client.d.ts
|
|
7
7
|
declare function Command$1({
|
|
8
8
|
className,
|
|
9
9
|
...props
|
|
@@ -12,10 +12,14 @@ declare function CommandDialog({
|
|
|
12
12
|
title,
|
|
13
13
|
description,
|
|
14
14
|
children,
|
|
15
|
+
className,
|
|
16
|
+
showCloseButton,
|
|
15
17
|
...props
|
|
16
18
|
}: React$1.ComponentProps<typeof Dialog> & {
|
|
17
19
|
title?: string;
|
|
18
20
|
description?: string;
|
|
21
|
+
className?: string;
|
|
22
|
+
showCloseButton?: boolean;
|
|
19
23
|
}): react_jsx_runtime0.JSX.Element;
|
|
20
24
|
declare function CommandInput({
|
|
21
25
|
className,
|
|
@@ -26,6 +30,7 @@ declare function CommandList$1({
|
|
|
26
30
|
...props
|
|
27
31
|
}: React$1.ComponentProps<typeof Command.List>): react_jsx_runtime0.JSX.Element;
|
|
28
32
|
declare function CommandEmpty({
|
|
33
|
+
className,
|
|
29
34
|
...props
|
|
30
35
|
}: React$1.ComponentProps<typeof Command.Empty>): react_jsx_runtime0.JSX.Element;
|
|
31
36
|
declare function CommandGroup({
|
|
@@ -38,6 +43,7 @@ declare function CommandSeparator({
|
|
|
38
43
|
}: React$1.ComponentProps<typeof Command.Separator>): react_jsx_runtime0.JSX.Element;
|
|
39
44
|
declare function CommandItem({
|
|
40
45
|
className,
|
|
46
|
+
children,
|
|
41
47
|
...props
|
|
42
48
|
}: React$1.ComponentProps<typeof Command.Item>): react_jsx_runtime0.JSX.Element;
|
|
43
49
|
declare function CommandShortcut({
|
|
@@ -46,4 +52,4 @@ declare function CommandShortcut({
|
|
|
46
52
|
}: React$1.ComponentProps<"span">): react_jsx_runtime0.JSX.Element;
|
|
47
53
|
//#endregion
|
|
48
54
|
export { Command$1 as Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList$1 as CommandList, CommandSeparator, CommandShortcut };
|
|
49
|
-
//# sourceMappingURL=command.d.mts.map
|
|
55
|
+
//# sourceMappingURL=command.client.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command.client.d.mts","names":[],"sources":["../../../src/components/ui/command.client.tsx"],"mappings":";;;;;;iBAeS,SAAA,CAAA;EAAU,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,OAAA,IAAiB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAa9E,aAAA,CAAA;EACP,KAAA;EACA,WAAA;EACA,QAAA;EACA,SAAA;EACA,eAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,MAAA;EAC7B,KAAA;EACA,WAAA;EACA,SAAA;EACA,eAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAiBQ,YAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,OAAA,CAAiB,KAAA,IAAM,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAoB7C,aAAA,CAAA;EAAc,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,OAAA,CAAiB,IAAA,IAAK,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAavF,YAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,OAAA,CAAiB,KAAA,IAAM,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAU7C,YAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,OAAA,CAAiB,KAAA,IAAM,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAa7C,gBAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,OAAA,CAAiB,SAAA,IAAU,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAUjD,WAAA,CAAA;EACP,SAAA;EACA,QAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,OAAA,CAAiB,IAAA,IAAK,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAgB5C,eAAA,CAAA;EAAkB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,WAAsB,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { cn } from "../../lib/utils/cn.mjs";
|
|
4
|
+
import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from "./dialog.client.mjs";
|
|
5
|
+
import { InputGroup, InputGroupAddon } from "./input-group.client.mjs";
|
|
6
|
+
import { CheckIcon, SearchIcon } from "lucide-react";
|
|
7
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
import { Command } from "cmdk";
|
|
9
|
+
|
|
10
|
+
//#region src/components/ui/command.client.tsx
|
|
11
|
+
function Command$1({ className, ...props }) {
|
|
12
|
+
return /* @__PURE__ */ jsx(Command, {
|
|
13
|
+
"data-slot": "command",
|
|
14
|
+
className: cn("flex size-full flex-col overflow-hidden rounded-xl! bg-popover p-1 text-popover-foreground", className),
|
|
15
|
+
...props
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
function CommandDialog({ title = "Command Palette", description = "Search for a command to run...", children, className, showCloseButton = false, ...props }) {
|
|
19
|
+
return /* @__PURE__ */ jsxs(Dialog, {
|
|
20
|
+
...props,
|
|
21
|
+
children: [/* @__PURE__ */ jsxs(DialogHeader, {
|
|
22
|
+
className: "sr-only",
|
|
23
|
+
children: [/* @__PURE__ */ jsx(DialogTitle, { children: title }), /* @__PURE__ */ jsx(DialogDescription, { children: description })]
|
|
24
|
+
}), /* @__PURE__ */ jsx(DialogContent, {
|
|
25
|
+
className: cn("top-1/3 translate-y-0 overflow-hidden rounded-xl! p-0", className),
|
|
26
|
+
showCloseButton,
|
|
27
|
+
children
|
|
28
|
+
})]
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
function CommandInput({ className, ...props }) {
|
|
32
|
+
return /* @__PURE__ */ jsx("div", {
|
|
33
|
+
"data-slot": "command-input-wrapper",
|
|
34
|
+
className: "p-1 pb-0",
|
|
35
|
+
children: /* @__PURE__ */ jsxs(InputGroup, {
|
|
36
|
+
className: "h-8! rounded-lg! border-input/30 bg-input/30 shadow-none! *:data-[slot=input-group-addon]:pl-2!",
|
|
37
|
+
children: [/* @__PURE__ */ jsx(Command.Input, {
|
|
38
|
+
"data-slot": "command-input",
|
|
39
|
+
className: cn("w-full text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50", className),
|
|
40
|
+
...props
|
|
41
|
+
}), /* @__PURE__ */ jsx(InputGroupAddon, { children: /* @__PURE__ */ jsx(SearchIcon, { className: "size-4 shrink-0 opacity-50" }) })]
|
|
42
|
+
})
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
function CommandList$1({ className, ...props }) {
|
|
46
|
+
return /* @__PURE__ */ jsx(Command.List, {
|
|
47
|
+
"data-slot": "command-list",
|
|
48
|
+
className: cn("no-scrollbar max-h-72 scroll-py-1 overflow-y-auto overflow-x-hidden outline-none", className),
|
|
49
|
+
...props
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
function CommandEmpty({ className, ...props }) {
|
|
53
|
+
return /* @__PURE__ */ jsx(Command.Empty, {
|
|
54
|
+
"data-slot": "command-empty",
|
|
55
|
+
className: cn("py-6 text-center text-sm", className),
|
|
56
|
+
...props
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
function CommandGroup({ className, ...props }) {
|
|
60
|
+
return /* @__PURE__ */ jsx(Command.Group, {
|
|
61
|
+
"data-slot": "command-group",
|
|
62
|
+
className: cn("overflow-hidden p-1 text-foreground **:[[cmdk-group-heading]]:px-2 **:[[cmdk-group-heading]]:py-1.5 **:[[cmdk-group-heading]]:font-medium **:[[cmdk-group-heading]]:text-muted-foreground **:[[cmdk-group-heading]]:text-xs", className),
|
|
63
|
+
...props
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
function CommandSeparator({ className, ...props }) {
|
|
67
|
+
return /* @__PURE__ */ jsx(Command.Separator, {
|
|
68
|
+
"data-slot": "command-separator",
|
|
69
|
+
className: cn("-mx-1 h-px bg-border", className),
|
|
70
|
+
...props
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
function CommandItem({ className, children, ...props }) {
|
|
74
|
+
return /* @__PURE__ */ jsxs(Command.Item, {
|
|
75
|
+
"data-slot": "command-item",
|
|
76
|
+
className: cn("group/command-item relative flex cursor-default select-none items-center gap-2 in-data-[slot=dialog-content]:rounded-lg! rounded-sm px-2 py-1.5 text-sm outline-hidden data-[disabled=true]:pointer-events-none data-[selected=true]:bg-muted data-[selected=true]:text-foreground data-[disabled=true]:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0 data-[selected=true]:*:[svg]:text-foreground", className),
|
|
77
|
+
...props,
|
|
78
|
+
children: [children, /* @__PURE__ */ jsx(CheckIcon, { className: "ml-auto opacity-0 group-has-data-[slot=command-shortcut]/command-item:hidden group-data-[checked=true]/command-item:opacity-100" })]
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
function CommandShortcut({ className, ...props }) {
|
|
82
|
+
return /* @__PURE__ */ jsx("span", {
|
|
83
|
+
"data-slot": "command-shortcut",
|
|
84
|
+
className: cn("ml-auto text-muted-foreground text-xs tracking-widest group-data-[selected=true]/command-item:text-foreground", className),
|
|
85
|
+
...props
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
//#endregion
|
|
90
|
+
export { Command$1 as Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList$1 as CommandList, CommandSeparator, CommandShortcut };
|
|
91
|
+
//# sourceMappingURL=command.client.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command.client.mjs","names":["Command","CommandPrimitive","CommandList"],"sources":["../../../src/components/ui/command.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { Command as CommandPrimitive } from \"cmdk\";\nimport { CheckIcon, SearchIcon } from \"lucide-react\";\nimport type * as React from \"react\";\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n} from \"@/components/ui/dialog.client\";\nimport { InputGroup, InputGroupAddon } from \"@/components/ui/input-group.client\";\nimport { cn } from \"@/lib/utils/cn\";\n\nfunction Command({ className, ...props }: React.ComponentProps<typeof CommandPrimitive>) {\n return (\n <CommandPrimitive\n data-slot=\"command\"\n className={cn(\n \"flex size-full flex-col overflow-hidden rounded-xl! bg-popover p-1 text-popover-foreground\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction CommandDialog({\n title = \"Command Palette\",\n description = \"Search for a command to run...\",\n children,\n className,\n showCloseButton = false,\n ...props\n}: React.ComponentProps<typeof Dialog> & {\n title?: string;\n description?: string;\n className?: string;\n showCloseButton?: boolean;\n}) {\n return (\n <Dialog {...props}>\n <DialogHeader className=\"sr-only\">\n <DialogTitle>{title}</DialogTitle>\n <DialogDescription>{description}</DialogDescription>\n </DialogHeader>\n <DialogContent\n className={cn(\"top-1/3 translate-y-0 overflow-hidden rounded-xl! p-0\", className)}\n showCloseButton={showCloseButton}\n >\n {children}\n </DialogContent>\n </Dialog>\n );\n}\n\nfunction CommandInput({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Input>) {\n return (\n <div data-slot=\"command-input-wrapper\" className=\"p-1 pb-0\">\n <InputGroup className=\"h-8! rounded-lg! border-input/30 bg-input/30 shadow-none! *:data-[slot=input-group-addon]:pl-2!\">\n <CommandPrimitive.Input\n data-slot=\"command-input\"\n className={cn(\n \"w-full text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n {...props}\n />\n <InputGroupAddon>\n <SearchIcon className=\"size-4 shrink-0 opacity-50\" />\n </InputGroupAddon>\n </InputGroup>\n </div>\n );\n}\n\nfunction CommandList({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.List>) {\n return (\n <CommandPrimitive.List\n data-slot=\"command-list\"\n className={cn(\n \"no-scrollbar max-h-72 scroll-py-1 overflow-y-auto overflow-x-hidden outline-none\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction CommandEmpty({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Empty>) {\n return (\n <CommandPrimitive.Empty\n data-slot=\"command-empty\"\n className={cn(\"py-6 text-center text-sm\", className)}\n {...props}\n />\n );\n}\n\nfunction CommandGroup({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Group>) {\n return (\n <CommandPrimitive.Group\n data-slot=\"command-group\"\n className={cn(\n \"overflow-hidden p-1 text-foreground **:[[cmdk-group-heading]]:px-2 **:[[cmdk-group-heading]]:py-1.5 **:[[cmdk-group-heading]]:font-medium **:[[cmdk-group-heading]]:text-muted-foreground **:[[cmdk-group-heading]]:text-xs\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction CommandSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Separator>) {\n return (\n <CommandPrimitive.Separator\n data-slot=\"command-separator\"\n className={cn(\"-mx-1 h-px bg-border\", className)}\n {...props}\n />\n );\n}\n\nfunction CommandItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Item>) {\n return (\n <CommandPrimitive.Item\n data-slot=\"command-item\"\n className={cn(\n \"group/command-item relative flex cursor-default select-none items-center gap-2 in-data-[slot=dialog-content]:rounded-lg! rounded-sm px-2 py-1.5 text-sm outline-hidden data-[disabled=true]:pointer-events-none data-[selected=true]:bg-muted data-[selected=true]:text-foreground data-[disabled=true]:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0 data-[selected=true]:*:[svg]:text-foreground\",\n className,\n )}\n {...props}\n >\n {children}\n <CheckIcon className=\"ml-auto opacity-0 group-has-data-[slot=command-shortcut]/command-item:hidden group-data-[checked=true]/command-item:opacity-100\" />\n </CommandPrimitive.Item>\n );\n}\n\nfunction CommandShortcut({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"command-shortcut\"\n className={cn(\n \"ml-auto text-muted-foreground text-xs tracking-widest group-data-[selected=true]/command-item:text-foreground\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Command,\n CommandDialog,\n CommandInput,\n CommandList,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandShortcut,\n CommandSeparator,\n};\n"],"mappings":";;;;;;;;;;AAeA,SAASA,UAAQ,EAAE,WAAW,GAAG,SAAwD;AACvF,QACE,oBAACC;EACC,aAAU;EACV,WAAW,GACT,8FACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,cAAc,EACrB,QAAQ,mBACR,cAAc,kCACd,UACA,WACA,kBAAkB,OAClB,GAAG,SAMF;AACD,QACE,qBAAC;EAAO,GAAI;aACV,qBAAC;GAAa,WAAU;cACtB,oBAAC,yBAAa,QAAoB,EAClC,oBAAC,+BAAmB,cAAgC;IACvC,EACf,oBAAC;GACC,WAAW,GAAG,yDAAyD,UAAU;GAChE;GAEhB;IACa;GACT;;AAIb,SAAS,aAAa,EACpB,WACA,GAAG,SACmD;AACtD,QACE,oBAAC;EAAI,aAAU;EAAwB,WAAU;YAC/C,qBAAC;GAAW,WAAU;cACpB,oBAACA,QAAiB;IAChB,aAAU;IACV,WAAW,GACT,iFACA,UACD;IACD,GAAI;KACJ,EACF,oBAAC,6BACC,oBAAC,cAAW,WAAU,+BAA+B,GACrC;IACP;GACT;;AAIV,SAASC,cAAY,EAAE,WAAW,GAAG,SAA6D;AAChG,QACE,oBAACD,QAAiB;EAChB,aAAU;EACV,WAAW,GACT,oFACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,aAAa,EACpB,WACA,GAAG,SACmD;AACtD,QACE,oBAACA,QAAiB;EAChB,aAAU;EACV,WAAW,GAAG,4BAA4B,UAAU;EACpD,GAAI;GACJ;;AAIN,SAAS,aAAa,EACpB,WACA,GAAG,SACmD;AACtD,QACE,oBAACA,QAAiB;EAChB,aAAU;EACV,WAAW,GACT,+NACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,iBAAiB,EACxB,WACA,GAAG,SACuD;AAC1D,QACE,oBAACA,QAAiB;EAChB,aAAU;EACV,WAAW,GAAG,wBAAwB,UAAU;EAChD,GAAI;GACJ;;AAIN,SAAS,YAAY,EACnB,WACA,UACA,GAAG,SACkD;AACrD,QACE,qBAACA,QAAiB;EAChB,aAAU;EACV,WAAW,GACT,qbACA,UACD;EACD,GAAI;aAEH,UACD,oBAAC,aAAU,WAAU,oIAAoI;GACnI;;AAI5B,SAAS,gBAAgB,EAAE,WAAW,GAAG,SAAuC;AAC9E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,iHACA,UACD;EACD,GAAI;GACJ"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
import { ContextMenu } from "radix-ui";
|
|
3
|
+
import * as React$1 from "react";
|
|
4
|
+
|
|
5
|
+
//#region src/components/ui/context-menu.client.d.ts
|
|
6
|
+
declare function ContextMenu$1({
|
|
7
|
+
...props
|
|
8
|
+
}: React$1.ComponentProps<typeof ContextMenu.Root>): react_jsx_runtime0.JSX.Element;
|
|
9
|
+
declare function ContextMenuTrigger({
|
|
10
|
+
className,
|
|
11
|
+
...props
|
|
12
|
+
}: React$1.ComponentProps<typeof ContextMenu.Trigger>): react_jsx_runtime0.JSX.Element;
|
|
13
|
+
declare function ContextMenuGroup({
|
|
14
|
+
...props
|
|
15
|
+
}: React$1.ComponentProps<typeof ContextMenu.Group>): react_jsx_runtime0.JSX.Element;
|
|
16
|
+
declare function ContextMenuPortal({
|
|
17
|
+
...props
|
|
18
|
+
}: React$1.ComponentProps<typeof ContextMenu.Portal>): react_jsx_runtime0.JSX.Element;
|
|
19
|
+
declare function ContextMenuSub({
|
|
20
|
+
...props
|
|
21
|
+
}: React$1.ComponentProps<typeof ContextMenu.Sub>): react_jsx_runtime0.JSX.Element;
|
|
22
|
+
declare function ContextMenuRadioGroup({
|
|
23
|
+
...props
|
|
24
|
+
}: React$1.ComponentProps<typeof ContextMenu.RadioGroup>): react_jsx_runtime0.JSX.Element;
|
|
25
|
+
declare function ContextMenuContent({
|
|
26
|
+
className,
|
|
27
|
+
...props
|
|
28
|
+
}: React$1.ComponentProps<typeof ContextMenu.Content> & {
|
|
29
|
+
side?: "top" | "right" | "bottom" | "left";
|
|
30
|
+
}): react_jsx_runtime0.JSX.Element;
|
|
31
|
+
declare function ContextMenuItem({
|
|
32
|
+
className,
|
|
33
|
+
inset,
|
|
34
|
+
variant,
|
|
35
|
+
...props
|
|
36
|
+
}: React$1.ComponentProps<typeof ContextMenu.Item> & {
|
|
37
|
+
inset?: boolean;
|
|
38
|
+
variant?: "default" | "destructive";
|
|
39
|
+
}): react_jsx_runtime0.JSX.Element;
|
|
40
|
+
declare function ContextMenuSubTrigger({
|
|
41
|
+
className,
|
|
42
|
+
inset,
|
|
43
|
+
children,
|
|
44
|
+
...props
|
|
45
|
+
}: React$1.ComponentProps<typeof ContextMenu.SubTrigger> & {
|
|
46
|
+
inset?: boolean;
|
|
47
|
+
}): react_jsx_runtime0.JSX.Element;
|
|
48
|
+
declare function ContextMenuSubContent({
|
|
49
|
+
className,
|
|
50
|
+
...props
|
|
51
|
+
}: React$1.ComponentProps<typeof ContextMenu.SubContent>): react_jsx_runtime0.JSX.Element;
|
|
52
|
+
declare function ContextMenuCheckboxItem({
|
|
53
|
+
className,
|
|
54
|
+
children,
|
|
55
|
+
checked,
|
|
56
|
+
inset,
|
|
57
|
+
...props
|
|
58
|
+
}: React$1.ComponentProps<typeof ContextMenu.CheckboxItem> & {
|
|
59
|
+
inset?: boolean;
|
|
60
|
+
}): react_jsx_runtime0.JSX.Element;
|
|
61
|
+
declare function ContextMenuRadioItem({
|
|
62
|
+
className,
|
|
63
|
+
children,
|
|
64
|
+
inset,
|
|
65
|
+
...props
|
|
66
|
+
}: React$1.ComponentProps<typeof ContextMenu.RadioItem> & {
|
|
67
|
+
inset?: boolean;
|
|
68
|
+
}): react_jsx_runtime0.JSX.Element;
|
|
69
|
+
declare function ContextMenuLabel({
|
|
70
|
+
className,
|
|
71
|
+
inset,
|
|
72
|
+
...props
|
|
73
|
+
}: React$1.ComponentProps<typeof ContextMenu.Label> & {
|
|
74
|
+
inset?: boolean;
|
|
75
|
+
}): react_jsx_runtime0.JSX.Element;
|
|
76
|
+
declare function ContextMenuSeparator({
|
|
77
|
+
className,
|
|
78
|
+
...props
|
|
79
|
+
}: React$1.ComponentProps<typeof ContextMenu.Separator>): react_jsx_runtime0.JSX.Element;
|
|
80
|
+
declare function ContextMenuShortcut({
|
|
81
|
+
className,
|
|
82
|
+
...props
|
|
83
|
+
}: React$1.ComponentProps<"span">): react_jsx_runtime0.JSX.Element;
|
|
84
|
+
//#endregion
|
|
85
|
+
export { ContextMenu$1 as ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger };
|
|
86
|
+
//# sourceMappingURL=context-menu.client.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-menu.client.d.mts","names":[],"sources":["../../../src/components/ui/context-menu.client.tsx"],"mappings":";;;;;iBAOS,aAAA,CAAA;EAAA,GAAiB;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,IAAA,IAAK,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAIhF,kBAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,OAAA,IAAQ,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAUnD,gBAAA,CAAA;EAAA,GAAsB;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,KAAA,IAAM,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAItF,iBAAA,CAAA;EAAA,GAAuB;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,MAAA,IAAO,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAIxF,cAAA,CAAA;EAAA,GAAoB;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,GAAA,IAAI,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAIlF,qBAAA,CAAA;EAAA,GACJ;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,UAAA,IAAW,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAItD,kBAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,OAAA;EAClD,IAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAeQ,eAAA,CAAA;EACP,SAAA;EACA,KAAA;EACA,OAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,IAAA;EAClD,KAAA;EACA,OAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAeQ,qBAAA,CAAA;EACP,SAAA;EACA,KAAA;EACA,QAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,UAAA;EAClD,KAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAiBQ,qBAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,UAAA,IAAW,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAatD,uBAAA,CAAA;EACP,SAAA;EACA,QAAA;EACA,OAAA;EACA,KAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,YAAA;EAClD,KAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAsBQ,oBAAA,CAAA;EACP,SAAA;EACA,QAAA;EACA,KAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,SAAA;EAClD,KAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAqBQ,gBAAA,CAAA;EACP,SAAA;EACA,KAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,KAAA;EAClD,KAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAcQ,oBAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,WAAA,CAAqB,SAAA,IAAU,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAUrD,mBAAA,CAAA;EAAsB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,WAAsB,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { cn } from "../../lib/utils/cn.mjs";
|
|
4
|
+
import { CheckIcon, ChevronRightIcon } from "lucide-react";
|
|
5
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import { ContextMenu } from "radix-ui";
|
|
7
|
+
|
|
8
|
+
//#region src/components/ui/context-menu.client.tsx
|
|
9
|
+
function ContextMenu$1({ ...props }) {
|
|
10
|
+
return /* @__PURE__ */ jsx(ContextMenu.Root, {
|
|
11
|
+
"data-slot": "context-menu",
|
|
12
|
+
...props
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
function ContextMenuTrigger({ className, ...props }) {
|
|
16
|
+
return /* @__PURE__ */ jsx(ContextMenu.Trigger, {
|
|
17
|
+
"data-slot": "context-menu-trigger",
|
|
18
|
+
className: cn("select-none", className),
|
|
19
|
+
...props
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
function ContextMenuGroup({ ...props }) {
|
|
23
|
+
return /* @__PURE__ */ jsx(ContextMenu.Group, {
|
|
24
|
+
"data-slot": "context-menu-group",
|
|
25
|
+
...props
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
function ContextMenuPortal({ ...props }) {
|
|
29
|
+
return /* @__PURE__ */ jsx(ContextMenu.Portal, {
|
|
30
|
+
"data-slot": "context-menu-portal",
|
|
31
|
+
...props
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
function ContextMenuSub({ ...props }) {
|
|
35
|
+
return /* @__PURE__ */ jsx(ContextMenu.Sub, {
|
|
36
|
+
"data-slot": "context-menu-sub",
|
|
37
|
+
...props
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
function ContextMenuRadioGroup({ ...props }) {
|
|
41
|
+
return /* @__PURE__ */ jsx(ContextMenu.RadioGroup, {
|
|
42
|
+
"data-slot": "context-menu-radio-group",
|
|
43
|
+
...props
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
function ContextMenuContent({ className, ...props }) {
|
|
47
|
+
return /* @__PURE__ */ jsx(ContextMenu.Portal, { children: /* @__PURE__ */ jsx(ContextMenu.Content, {
|
|
48
|
+
"data-slot": "context-menu-content",
|
|
49
|
+
className: cn("data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-context-menu-content-available-height) min-w-36 origin-(--radix-context-menu-content-transform-origin) overflow-y-auto overflow-x-hidden rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[state=closed]:animate-out data-[state=open]:animate-in", className),
|
|
50
|
+
...props
|
|
51
|
+
}) });
|
|
52
|
+
}
|
|
53
|
+
function ContextMenuItem({ className, inset, variant = "default", ...props }) {
|
|
54
|
+
return /* @__PURE__ */ jsx(ContextMenu.Item, {
|
|
55
|
+
"data-slot": "context-menu-item",
|
|
56
|
+
"data-inset": inset,
|
|
57
|
+
"data-variant": variant,
|
|
58
|
+
className: cn("group/context-menu-item relative flex cursor-default select-none items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-disabled:pointer-events-none data-inset:pl-7 data-[variant=destructive]:text-destructive data-disabled:opacity-50 data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0 focus:*:[svg]:text-accent-foreground data-[variant=destructive]:*:[svg]:text-destructive", className),
|
|
59
|
+
...props
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
function ContextMenuSubTrigger({ className, inset, children, ...props }) {
|
|
63
|
+
return /* @__PURE__ */ jsxs(ContextMenu.SubTrigger, {
|
|
64
|
+
"data-slot": "context-menu-sub-trigger",
|
|
65
|
+
"data-inset": inset,
|
|
66
|
+
className: cn("flex cursor-default select-none items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-inset:pl-7 data-[state=open]:text-accent-foreground [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0", className),
|
|
67
|
+
...props,
|
|
68
|
+
children: [children, /* @__PURE__ */ jsx(ChevronRightIcon, { className: "cn-rtl-flip ml-auto" })]
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
function ContextMenuSubContent({ className, ...props }) {
|
|
72
|
+
return /* @__PURE__ */ jsx(ContextMenu.SubContent, {
|
|
73
|
+
"data-slot": "context-menu-sub-content",
|
|
74
|
+
className: cn("data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-32 origin-(--radix-context-menu-content-transform-origin) overflow-hidden rounded-lg border bg-popover p-1 text-popover-foreground shadow-lg duration-100 data-[state=closed]:animate-out data-[state=open]:animate-in", className),
|
|
75
|
+
...props
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
function ContextMenuCheckboxItem({ className, children, checked, inset, ...props }) {
|
|
79
|
+
return /* @__PURE__ */ jsxs(ContextMenu.CheckboxItem, {
|
|
80
|
+
"data-slot": "context-menu-checkbox-item",
|
|
81
|
+
"data-inset": inset,
|
|
82
|
+
className: cn("relative flex cursor-default select-none items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-disabled:pointer-events-none data-inset:pl-7 data-disabled:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0", className),
|
|
83
|
+
checked,
|
|
84
|
+
...props,
|
|
85
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
86
|
+
className: "pointer-events-none absolute right-2",
|
|
87
|
+
children: /* @__PURE__ */ jsx(ContextMenu.ItemIndicator, { children: /* @__PURE__ */ jsx(CheckIcon, {}) })
|
|
88
|
+
}), children]
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
function ContextMenuRadioItem({ className, children, inset, ...props }) {
|
|
92
|
+
return /* @__PURE__ */ jsxs(ContextMenu.RadioItem, {
|
|
93
|
+
"data-slot": "context-menu-radio-item",
|
|
94
|
+
"data-inset": inset,
|
|
95
|
+
className: cn("relative flex cursor-default select-none items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-disabled:pointer-events-none data-inset:pl-7 data-disabled:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0", className),
|
|
96
|
+
...props,
|
|
97
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
98
|
+
className: "pointer-events-none absolute right-2",
|
|
99
|
+
children: /* @__PURE__ */ jsx(ContextMenu.ItemIndicator, { children: /* @__PURE__ */ jsx(CheckIcon, {}) })
|
|
100
|
+
}), children]
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
function ContextMenuLabel({ className, inset, ...props }) {
|
|
104
|
+
return /* @__PURE__ */ jsx(ContextMenu.Label, {
|
|
105
|
+
"data-slot": "context-menu-label",
|
|
106
|
+
"data-inset": inset,
|
|
107
|
+
className: cn("px-1.5 py-1 font-medium text-muted-foreground text-xs data-inset:pl-7", className),
|
|
108
|
+
...props
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
function ContextMenuSeparator({ className, ...props }) {
|
|
112
|
+
return /* @__PURE__ */ jsx(ContextMenu.Separator, {
|
|
113
|
+
"data-slot": "context-menu-separator",
|
|
114
|
+
className: cn("-mx-1 my-1 h-px bg-border", className),
|
|
115
|
+
...props
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
function ContextMenuShortcut({ className, ...props }) {
|
|
119
|
+
return /* @__PURE__ */ jsx("span", {
|
|
120
|
+
"data-slot": "context-menu-shortcut",
|
|
121
|
+
className: cn("ml-auto text-muted-foreground text-xs tracking-widest group-focus/context-menu-item:text-accent-foreground", className),
|
|
122
|
+
...props
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
//#endregion
|
|
127
|
+
export { ContextMenu$1 as ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger };
|
|
128
|
+
//# sourceMappingURL=context-menu.client.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-menu.client.mjs","names":["ContextMenu","ContextMenuPrimitive"],"sources":["../../../src/components/ui/context-menu.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { CheckIcon, ChevronRightIcon } from \"lucide-react\";\nimport { ContextMenu as ContextMenuPrimitive } from \"radix-ui\";\nimport type * as React from \"react\";\nimport { cn } from \"@/lib/utils/cn\";\n\nfunction ContextMenu({ ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Root>) {\n return <ContextMenuPrimitive.Root data-slot=\"context-menu\" {...props} />;\n}\n\nfunction ContextMenuTrigger({\n className,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Trigger>) {\n return (\n <ContextMenuPrimitive.Trigger\n data-slot=\"context-menu-trigger\"\n className={cn(\"select-none\", className)}\n {...props}\n />\n );\n}\n\nfunction ContextMenuGroup({ ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Group>) {\n return <ContextMenuPrimitive.Group data-slot=\"context-menu-group\" {...props} />;\n}\n\nfunction ContextMenuPortal({ ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Portal>) {\n return <ContextMenuPrimitive.Portal data-slot=\"context-menu-portal\" {...props} />;\n}\n\nfunction ContextMenuSub({ ...props }: React.ComponentProps<typeof ContextMenuPrimitive.Sub>) {\n return <ContextMenuPrimitive.Sub data-slot=\"context-menu-sub\" {...props} />;\n}\n\nfunction ContextMenuRadioGroup({\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.RadioGroup>) {\n return <ContextMenuPrimitive.RadioGroup data-slot=\"context-menu-radio-group\" {...props} />;\n}\n\nfunction ContextMenuContent({\n className,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Content> & {\n side?: \"top\" | \"right\" | \"bottom\" | \"left\";\n}) {\n return (\n <ContextMenuPrimitive.Portal>\n <ContextMenuPrimitive.Content\n data-slot=\"context-menu-content\"\n className={cn(\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-context-menu-content-available-height) min-w-36 origin-(--radix-context-menu-content-transform-origin) overflow-y-auto overflow-x-hidden rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[state=closed]:animate-out data-[state=open]:animate-in\",\n className,\n )}\n {...props}\n />\n </ContextMenuPrimitive.Portal>\n );\n}\n\nfunction ContextMenuItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Item> & {\n inset?: boolean;\n variant?: \"default\" | \"destructive\";\n}) {\n return (\n <ContextMenuPrimitive.Item\n data-slot=\"context-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"group/context-menu-item relative flex cursor-default select-none items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-disabled:pointer-events-none data-inset:pl-7 data-[variant=destructive]:text-destructive data-disabled:opacity-50 data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0 focus:*:[svg]:text-accent-foreground data-[variant=destructive]:*:[svg]:text-destructive\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ContextMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.SubTrigger> & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.SubTrigger\n data-slot=\"context-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"flex cursor-default select-none items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-inset:pl-7 data-[state=open]:text-accent-foreground [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"cn-rtl-flip ml-auto\" />\n </ContextMenuPrimitive.SubTrigger>\n );\n}\n\nfunction ContextMenuSubContent({\n className,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.SubContent>) {\n return (\n <ContextMenuPrimitive.SubContent\n data-slot=\"context-menu-sub-content\"\n className={cn(\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-32 origin-(--radix-context-menu-content-transform-origin) overflow-hidden rounded-lg border bg-popover p-1 text-popover-foreground shadow-lg duration-100 data-[state=closed]:animate-out data-[state=open]:animate-in\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ContextMenuCheckboxItem({\n className,\n children,\n checked,\n inset,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.CheckboxItem> & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.CheckboxItem\n data-slot=\"context-menu-checkbox-item\"\n data-inset={inset}\n className={cn(\n \"relative flex cursor-default select-none items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-disabled:pointer-events-none data-inset:pl-7 data-disabled:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute right-2\">\n <ContextMenuPrimitive.ItemIndicator>\n <CheckIcon />\n </ContextMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.CheckboxItem>\n );\n}\n\nfunction ContextMenuRadioItem({\n className,\n children,\n inset,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.RadioItem> & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.RadioItem\n data-slot=\"context-menu-radio-item\"\n data-inset={inset}\n className={cn(\n \"relative flex cursor-default select-none items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-disabled:pointer-events-none data-inset:pl-7 data-disabled:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0\",\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute right-2\">\n <ContextMenuPrimitive.ItemIndicator>\n <CheckIcon />\n </ContextMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.RadioItem>\n );\n}\n\nfunction ContextMenuLabel({\n className,\n inset,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Label> & {\n inset?: boolean;\n}) {\n return (\n <ContextMenuPrimitive.Label\n data-slot=\"context-menu-label\"\n data-inset={inset}\n className={cn(\n \"px-1.5 py-1 font-medium text-muted-foreground text-xs data-inset:pl-7\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ContextMenuSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof ContextMenuPrimitive.Separator>) {\n return (\n <ContextMenuPrimitive.Separator\n data-slot=\"context-menu-separator\"\n className={cn(\"-mx-1 my-1 h-px bg-border\", className)}\n {...props}\n />\n );\n}\n\nfunction ContextMenuShortcut({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"context-menu-shortcut\"\n className={cn(\n \"ml-auto text-muted-foreground text-xs tracking-widest group-focus/context-menu-item:text-accent-foreground\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n ContextMenu,\n ContextMenuTrigger,\n ContextMenuContent,\n ContextMenuItem,\n ContextMenuCheckboxItem,\n ContextMenuRadioItem,\n ContextMenuLabel,\n ContextMenuSeparator,\n ContextMenuShortcut,\n ContextMenuGroup,\n ContextMenuPortal,\n ContextMenuSub,\n ContextMenuSubContent,\n ContextMenuSubTrigger,\n ContextMenuRadioGroup,\n};\n"],"mappings":";;;;;;;;AAOA,SAASA,cAAY,EAAE,GAAG,SAAiE;AACzF,QAAO,oBAACC,YAAqB;EAAK,aAAU;EAAe,GAAI;GAAS;;AAG1E,SAAS,mBAAmB,EAC1B,WACA,GAAG,SACyD;AAC5D,QACE,oBAACA,YAAqB;EACpB,aAAU;EACV,WAAW,GAAG,eAAe,UAAU;EACvC,GAAI;GACJ;;AAIN,SAAS,iBAAiB,EAAE,GAAG,SAAkE;AAC/F,QAAO,oBAACA,YAAqB;EAAM,aAAU;EAAqB,GAAI;GAAS;;AAGjF,SAAS,kBAAkB,EAAE,GAAG,SAAmE;AACjG,QAAO,oBAACA,YAAqB;EAAO,aAAU;EAAsB,GAAI;GAAS;;AAGnF,SAAS,eAAe,EAAE,GAAG,SAAgE;AAC3F,QAAO,oBAACA,YAAqB;EAAI,aAAU;EAAmB,GAAI;GAAS;;AAG7E,SAAS,sBAAsB,EAC7B,GAAG,SAC4D;AAC/D,QAAO,oBAACA,YAAqB;EAAW,aAAU;EAA2B,GAAI;GAAS;;AAG5F,SAAS,mBAAmB,EAC1B,WACA,GAAG,SAGF;AACD,QACE,oBAACA,YAAqB,oBACpB,oBAACA,YAAqB;EACpB,aAAU;EACV,WAAW,GACT,olBACA,UACD;EACD,GAAI;GACJ,GAC0B;;AAIlC,SAAS,gBAAgB,EACvB,WACA,OACA,UAAU,WACV,GAAG,SAIF;AACD,QACE,oBAACA,YAAqB;EACpB,aAAU;EACV,cAAY;EACZ,gBAAc;EACd,WAAW,GACT,mnBACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,sBAAsB,EAC7B,WACA,OACA,UACA,GAAG,SAGF;AACD,QACE,qBAACA,YAAqB;EACpB,aAAU;EACV,cAAY;EACZ,WAAW,GACT,0TACA,UACD;EACD,GAAI;aAEH,UACD,oBAAC,oBAAiB,WAAU,wBAAwB;GACpB;;AAItC,SAAS,sBAAsB,EAC7B,WACA,GAAG,SAC4D;AAC/D,QACE,oBAACA,YAAqB;EACpB,aAAU;EACV,WAAW,GACT,yfACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,wBAAwB,EAC/B,WACA,UACA,SACA,OACA,GAAG,SAGF;AACD,QACE,qBAACA,YAAqB;EACpB,aAAU;EACV,cAAY;EACZ,WAAW,GACT,8TACA,UACD;EACQ;EACT,GAAI;aAEJ,oBAAC;GAAK,WAAU;aACd,oBAACA,YAAqB,2BACpB,oBAAC,cAAY,GACsB;IAChC,EACN;GACiC;;AAIxC,SAAS,qBAAqB,EAC5B,WACA,UACA,OACA,GAAG,SAGF;AACD,QACE,qBAACA,YAAqB;EACpB,aAAU;EACV,cAAY;EACZ,WAAW,GACT,8TACA,UACD;EACD,GAAI;aAEJ,oBAAC;GAAK,WAAU;aACd,oBAACA,YAAqB,2BACpB,oBAAC,cAAY,GACsB;IAChC,EACN;GAC8B;;AAIrC,SAAS,iBAAiB,EACxB,WACA,OACA,GAAG,SAGF;AACD,QACE,oBAACA,YAAqB;EACpB,aAAU;EACV,cAAY;EACZ,WAAW,GACT,yEACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,qBAAqB,EAC5B,WACA,GAAG,SAC2D;AAC9D,QACE,oBAACA,YAAqB;EACpB,aAAU;EACV,WAAW,GAAG,6BAA6B,UAAU;EACrD,GAAI;GACJ;;AAIN,SAAS,oBAAoB,EAAE,WAAW,GAAG,SAAuC;AAClF,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,8GACA,UACD;EACD,GAAI;GACJ"}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
import { cn } from "../../lib/utils/cn.mjs";
|
|
4
4
|
import { Button } from "./button.mjs";
|
|
5
|
-
import { Popover, PopoverContent, PopoverTrigger } from "./popover.mjs";
|
|
6
|
-
import { Calendar as Calendar$1 } from "./calendar.mjs";
|
|
5
|
+
import { Popover, PopoverContent, PopoverTrigger } from "./popover.client.mjs";
|
|
6
|
+
import { Calendar as Calendar$1 } from "./calendar.client.mjs";
|
|
7
7
|
import { Calendar } from "lucide-react";
|
|
8
8
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
9
|
import * as React$1 from "react";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date-picker.client.mjs","names":["React","CalendarIcon","Calendar"],"sources":["../../../src/components/ui/date-picker.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { Calendar as CalendarIcon } from \"lucide-react\";\nimport * as React from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport { Calendar } from \"@/components/ui/calendar\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover\";\nimport { cn } from \"@/lib/utils/cn\";\n\nexport type DatePickerProps = Omit<React.ComponentProps<typeof Button>, \"onSelect\" | \"disabled\"> & {\n initialDate?: Date;\n onSelect: (date: Date | undefined) => void;\n disabled?: (date: Date) => boolean;\n};\n\nexport function DatePicker({\n initialDate,\n onSelect,\n disabled,\n className,\n variant = \"outline\",\n ...props\n}: DatePickerProps) {\n const [date, setDate] = React.useState<Date | undefined>(initialDate);\n\n return (\n <Popover>\n <PopoverTrigger asChild>\n <Button\n {...props}\n type=\"button\"\n variant={variant}\n className={cn(\n \"w-full justify-start text-left font-normal\",\n !date && \"text-muted-foreground\",\n className,\n )}\n >\n <CalendarIcon className=\"mr-2 h-4 w-4\" />\n {date ? (\n date.toLocaleDateString(\"nl-BE\", {\n day: \"numeric\",\n month: \"long\",\n year: \"numeric\",\n })\n ) : (\n <span>Kies een datum</span>\n )}\n </Button>\n </PopoverTrigger>\n <PopoverContent className=\"w-auto p-0\">\n <Calendar\n mode=\"single\"\n selected={date}\n onSelect={(date) => {\n setDate(date);\n onSelect(date);\n }}\n disabled={disabled}\n initialFocus\n />\n </PopoverContent>\n </Popover>\n );\n}\n"],"mappings":";;;;;;;;;;;AAeA,SAAgB,WAAW,EACzB,aACA,UACA,UACA,WACA,UAAU,WACV,GAAG,SACe;CAClB,MAAM,CAAC,MAAM,WAAWA,QAAM,SAA2B,YAAY;AAErE,QACE,qBAAC,sBACC,oBAAC;EAAe;YACd,qBAAC;GACC,GAAI;GACJ,MAAK;GACI;GACT,WAAW,GACT,8CACA,CAAC,QAAQ,yBACT,UACD;cAED,oBAACC,YAAa,WAAU,iBAAiB,EACxC,OACC,KAAK,mBAAmB,SAAS;IAC/B,KAAK;IACL,OAAO;IACP,MAAM;IACP,CAAC,GAEF,oBAAC,oBAAK,mBAAqB;IAEtB;GACM,EACjB,oBAAC;EAAe,WAAU;YACxB,oBAACC;GACC,MAAK;GACL,UAAU;GACV,WAAW,SAAS;AAClB,YAAQ,KAAK;AACb,aAAS,KAAK;;GAEN;GACV;IACA;GACa,IACT"}
|
|
1
|
+
{"version":3,"file":"date-picker.client.mjs","names":["React","CalendarIcon","Calendar"],"sources":["../../../src/components/ui/date-picker.client.tsx"],"sourcesContent":["\"use client\";\n\nimport { Calendar as CalendarIcon } from \"lucide-react\";\nimport * as React from \"react\";\nimport { Button } from \"@/components/ui/button\";\nimport { Calendar } from \"@/components/ui/calendar.client\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"@/components/ui/popover.client\";\nimport { cn } from \"@/lib/utils/cn\";\n\nexport type DatePickerProps = Omit<React.ComponentProps<typeof Button>, \"onSelect\" | \"disabled\"> & {\n initialDate?: Date;\n onSelect: (date: Date | undefined) => void;\n disabled?: (date: Date) => boolean;\n};\n\nexport function DatePicker({\n initialDate,\n onSelect,\n disabled,\n className,\n variant = \"outline\",\n ...props\n}: DatePickerProps) {\n const [date, setDate] = React.useState<Date | undefined>(initialDate);\n\n return (\n <Popover>\n <PopoverTrigger asChild>\n <Button\n {...props}\n type=\"button\"\n variant={variant}\n className={cn(\n \"w-full justify-start text-left font-normal\",\n !date && \"text-muted-foreground\",\n className,\n )}\n >\n <CalendarIcon className=\"mr-2 h-4 w-4\" />\n {date ? (\n date.toLocaleDateString(\"nl-BE\", {\n day: \"numeric\",\n month: \"long\",\n year: \"numeric\",\n })\n ) : (\n <span>Kies een datum</span>\n )}\n </Button>\n </PopoverTrigger>\n <PopoverContent className=\"w-auto p-0\">\n <Calendar\n mode=\"single\"\n selected={date}\n onSelect={(date) => {\n setDate(date);\n onSelect(date);\n }}\n disabled={disabled}\n initialFocus\n />\n </PopoverContent>\n </Popover>\n );\n}\n"],"mappings":";;;;;;;;;;;AAeA,SAAgB,WAAW,EACzB,aACA,UACA,UACA,WACA,UAAU,WACV,GAAG,SACe;CAClB,MAAM,CAAC,MAAM,WAAWA,QAAM,SAA2B,YAAY;AAErE,QACE,qBAAC,sBACC,oBAAC;EAAe;YACd,qBAAC;GACC,GAAI;GACJ,MAAK;GACI;GACT,WAAW,GACT,8CACA,CAAC,QAAQ,yBACT,UACD;cAED,oBAACC,YAAa,WAAU,iBAAiB,EACxC,OACC,KAAK,mBAAmB,SAAS;IAC/B,KAAK;IACL,OAAO;IACP,MAAM;IACP,CAAC,GAEF,oBAAC,oBAAK,mBAAqB;IAEtB;GACM,EACjB,oBAAC;EAAe,WAAU;YACxB,oBAACC;GACC,MAAK;GACL,UAAU;GACV,WAAW,SAAS;AAClB,YAAQ,KAAK;AACb,aAAS,KAAK;;GAEN;GACV;IACA;GACa,IACT"}
|
|
@@ -1,45 +1,52 @@
|
|
|
1
1
|
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
import { Dialog } from "radix-ui";
|
|
2
3
|
import * as React$1 from "react";
|
|
3
|
-
import * as DialogPrimitive from "@radix-ui/react-dialog";
|
|
4
4
|
|
|
5
5
|
//#region src/components/ui/dialog.client.d.ts
|
|
6
|
-
declare function Dialog({
|
|
6
|
+
declare function Dialog$1({
|
|
7
7
|
...props
|
|
8
|
-
}: React$1.ComponentProps<typeof
|
|
8
|
+
}: React$1.ComponentProps<typeof Dialog.Root>): react_jsx_runtime0.JSX.Element;
|
|
9
9
|
declare function DialogTrigger({
|
|
10
10
|
...props
|
|
11
|
-
}: React$1.ComponentProps<typeof
|
|
11
|
+
}: React$1.ComponentProps<typeof Dialog.Trigger>): react_jsx_runtime0.JSX.Element;
|
|
12
12
|
declare function DialogPortal({
|
|
13
13
|
...props
|
|
14
|
-
}: React$1.ComponentProps<typeof
|
|
14
|
+
}: React$1.ComponentProps<typeof Dialog.Portal>): react_jsx_runtime0.JSX.Element;
|
|
15
15
|
declare function DialogClose({
|
|
16
16
|
...props
|
|
17
|
-
}: React$1.ComponentProps<typeof
|
|
17
|
+
}: React$1.ComponentProps<typeof Dialog.Close>): react_jsx_runtime0.JSX.Element;
|
|
18
18
|
declare function DialogOverlay({
|
|
19
19
|
className,
|
|
20
20
|
...props
|
|
21
|
-
}: React$1.ComponentProps<typeof
|
|
21
|
+
}: React$1.ComponentProps<typeof Dialog.Overlay>): react_jsx_runtime0.JSX.Element;
|
|
22
22
|
declare function DialogContent({
|
|
23
23
|
className,
|
|
24
24
|
children,
|
|
25
|
+
showCloseButton,
|
|
25
26
|
...props
|
|
26
|
-
}: React$1.ComponentProps<typeof
|
|
27
|
+
}: React$1.ComponentProps<typeof Dialog.Content> & {
|
|
28
|
+
showCloseButton?: boolean;
|
|
29
|
+
}): react_jsx_runtime0.JSX.Element;
|
|
27
30
|
declare function DialogHeader({
|
|
28
31
|
className,
|
|
29
32
|
...props
|
|
30
33
|
}: React$1.ComponentProps<"div">): react_jsx_runtime0.JSX.Element;
|
|
31
34
|
declare function DialogFooter({
|
|
32
35
|
className,
|
|
36
|
+
showCloseButton,
|
|
37
|
+
children,
|
|
33
38
|
...props
|
|
34
|
-
}: React$1.ComponentProps<"div">
|
|
39
|
+
}: React$1.ComponentProps<"div"> & {
|
|
40
|
+
showCloseButton?: boolean;
|
|
41
|
+
}): react_jsx_runtime0.JSX.Element;
|
|
35
42
|
declare function DialogTitle({
|
|
36
43
|
className,
|
|
37
44
|
...props
|
|
38
|
-
}: React$1.ComponentProps<typeof
|
|
45
|
+
}: React$1.ComponentProps<typeof Dialog.Title>): react_jsx_runtime0.JSX.Element;
|
|
39
46
|
declare function DialogDescription({
|
|
40
47
|
className,
|
|
41
48
|
...props
|
|
42
|
-
}: React$1.ComponentProps<typeof
|
|
49
|
+
}: React$1.ComponentProps<typeof Dialog.Description>): react_jsx_runtime0.JSX.Element;
|
|
43
50
|
//#endregion
|
|
44
|
-
export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger };
|
|
51
|
+
export { Dialog$1 as Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger };
|
|
45
52
|
//# sourceMappingURL=dialog.client.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog.client.d.mts","names":[],"sources":["../../../src/components/ui/dialog.client.tsx"],"mappings":";;;;;iBAQS,
|
|
1
|
+
{"version":3,"file":"dialog.client.d.mts","names":[],"sources":["../../../src/components/ui/dialog.client.tsx"],"mappings":";;;;;iBAQS,QAAA,CAAA;EAAA,GAAY;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,MAAA,CAAgB,IAAA,IAAK,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAItE,aAAA,CAAA;EAAA,GAAmB;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,MAAA,CAAgB,OAAA,IAAQ,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAIhF,YAAA,CAAA;EAAA,GAAkB;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,MAAA,CAAgB,MAAA,IAAO,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAI9E,WAAA,CAAA;EAAA,GAAiB;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,MAAA,CAAgB,KAAA,IAAM,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAI5E,aAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,MAAA,CAAgB,OAAA,IAAQ,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAa9C,aAAA,CAAA;EACP,SAAA;EACA,QAAA;EACA,eAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,MAAA,CAAgB,OAAA;EAC7C,eAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBA0BQ,YAAA,CAAA;EAAe,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,UAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAMjE,YAAA,CAAA;EACP,SAAA;EACA,eAAA;EACA,QAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA;EACP,eAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAoBQ,WAAA,CAAA;EAAc,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,MAAA,CAAgB,KAAA,IAAM,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAUvF,iBAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,MAAA,CAAgB,WAAA,IAAY,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|