@stackframe/stack-ui 2.8.61 → 2.8.62
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/action-dialog.js +130 -36
- package/dist/components/action-dialog.js.map +1 -0
- package/dist/components/brand-icons.js +413 -93
- package/dist/components/brand-icons.js.map +1 -0
- package/dist/components/browser-frame/index.js +63 -8
- package/dist/components/browser-frame/index.js.map +1 -0
- package/dist/components/copy-button.js +56 -17
- package/dist/components/copy-button.js.map +1 -0
- package/dist/components/copy-field.js +68 -12
- package/dist/components/copy-field.js.map +1 -0
- package/dist/components/data-table/cells.js +121 -50
- package/dist/components/data-table/cells.js.map +1 -0
- package/dist/components/data-table/column-header.js +62 -7
- package/dist/components/data-table/column-header.js.map +1 -0
- package/dist/components/data-table/data-table.js +263 -93
- package/dist/components/data-table/data-table.js.map +1 -0
- package/dist/components/data-table/faceted-filter.js +133 -25
- package/dist/components/data-table/faceted-filter.js.map +1 -0
- package/dist/components/data-table/index.js +41 -9
- package/dist/components/data-table/index.js.map +1 -0
- package/dist/components/data-table/pagination.js +89 -9
- package/dist/components/data-table/pagination.js.map +1 -0
- package/dist/components/data-table/toolbar-items.js +42 -4
- package/dist/components/data-table/toolbar-items.js.map +1 -0
- package/dist/components/data-table/toolbar.js +114 -44
- package/dist/components/data-table/toolbar.js.map +1 -0
- package/dist/components/data-table/utils.js +36 -4
- package/dist/components/data-table/utils.js.map +1 -0
- package/dist/components/data-table/view-options.js +70 -10
- package/dist/components/data-table/view-options.js.map +1 -0
- package/dist/components/simple-tooltip.js +45 -13
- package/dist/components/simple-tooltip.js.map +1 -0
- package/dist/components/ui/accordion.js +85 -10
- package/dist/components/ui/accordion.js.map +1 -0
- package/dist/components/ui/alert.js +75 -17
- package/dist/components/ui/alert.js.map +1 -0
- package/dist/components/ui/aspect-ratio.js +43 -3
- package/dist/components/ui/aspect-ratio.js.map +1 -0
- package/dist/components/ui/avatar.js +79 -8
- package/dist/components/ui/avatar.js.map +1 -0
- package/dist/components/ui/badge.js +51 -17
- package/dist/components/ui/badge.js.map +1 -0
- package/dist/components/ui/breadcrumb.js +118 -15
- package/dist/components/ui/breadcrumb.js.map +1 -0
- package/dist/components/ui/button.js +98 -39
- package/dist/components/ui/button.js.map +1 -0
- package/dist/components/ui/calendar.js +93 -39
- package/dist/components/ui/calendar.js.map +1 -0
- package/dist/components/ui/card.js +97 -11
- package/dist/components/ui/card.js.map +1 -0
- package/dist/components/ui/checkbox.js +64 -7
- package/dist/components/ui/checkbox.js.map +1 -0
- package/dist/components/ui/collapsible.js +49 -5
- package/dist/components/ui/collapsible.js.map +1 -0
- package/dist/components/ui/command.js +147 -25
- package/dist/components/ui/command.js.map +1 -0
- package/dist/components/ui/context-menu.js +196 -24
- package/dist/components/ui/context-menu.js.map +1 -0
- package/dist/components/ui/dialog.js +151 -17
- package/dist/components/ui/dialog.js.map +1 -0
- package/dist/components/ui/dropdown-menu.js +237 -55
- package/dist/components/ui/dropdown-menu.js.map +1 -0
- package/dist/components/ui/form.js +142 -53
- package/dist/components/ui/form.js.map +1 -0
- package/dist/components/ui/hover-card.js +64 -8
- package/dist/components/ui/hover-card.js.map +1 -0
- package/dist/components/ui/inline-code.js +62 -25
- package/dist/components/ui/inline-code.js.map +1 -0
- package/dist/components/ui/input-otp.js +87 -14
- package/dist/components/ui/input-otp.js.map +1 -0
- package/dist/components/ui/input.js +86 -22
- package/dist/components/ui/input.js.map +1 -0
- package/dist/components/ui/label.js +67 -9
- package/dist/components/ui/label.js.map +1 -0
- package/dist/components/ui/menubar.js +224 -24
- package/dist/components/ui/menubar.js.map +1 -0
- package/dist/components/ui/navigation-menu.js +149 -20
- package/dist/components/ui/navigation-menu.js.map +1 -0
- package/dist/components/ui/password-input.js +79 -11
- package/dist/components/ui/password-input.js.map +1 -0
- package/dist/components/ui/popover.js +67 -9
- package/dist/components/ui/popover.js.map +1 -0
- package/dist/components/ui/progress.js +63 -6
- package/dist/components/ui/progress.js.map +1 -0
- package/dist/components/ui/radio-group.js +70 -10
- package/dist/components/ui/radio-group.js.map +1 -0
- package/dist/components/ui/resizable.js +78 -8
- package/dist/components/ui/resizable.js.map +1 -0
- package/dist/components/ui/scroll-area.js +75 -9
- package/dist/components/ui/scroll-area.js.map +1 -0
- package/dist/components/ui/select.js +166 -20
- package/dist/components/ui/select.js.map +1 -0
- package/dist/components/ui/separator.js +61 -6
- package/dist/components/ui/separator.js.map +1 -0
- package/dist/components/ui/sheet.js +153 -27
- package/dist/components/ui/sheet.js.map +1 -0
- package/dist/components/ui/skeleton.js +46 -5
- package/dist/components/ui/skeleton.js.map +1 -0
- package/dist/components/ui/slider.js +60 -6
- package/dist/components/ui/slider.js.map +1 -0
- package/dist/components/ui/spinner.js +36 -6
- package/dist/components/ui/spinner.js.map +1 -0
- package/dist/components/ui/switch.js +92 -21
- package/dist/components/ui/switch.js.map +1 -0
- package/dist/components/ui/table.js +117 -12
- package/dist/components/ui/table.js.map +1 -0
- package/dist/components/ui/tabs.js +85 -9
- package/dist/components/ui/tabs.js.map +1 -0
- package/dist/components/ui/textarea.js +47 -6
- package/dist/components/ui/textarea.js.map +1 -0
- package/dist/components/ui/toast.js +135 -25
- package/dist/components/ui/toast.js.map +1 -0
- package/dist/components/ui/toaster.js +49 -8
- package/dist/components/ui/toaster.js.map +1 -0
- package/dist/components/ui/toggle-group.js +78 -17
- package/dist/components/ui/toggle-group.js.map +1 -0
- package/dist/components/ui/toggle.js +73 -21
- package/dist/components/ui/toggle.js.map +1 -0
- package/dist/components/ui/tooltip.js +72 -9
- package/dist/components/ui/tooltip.js.map +1 -0
- package/dist/components/ui/typography.js +69 -31
- package/dist/components/ui/typography.js.map +1 -0
- package/dist/components/ui/use-toast.js +151 -116
- package/dist/components/ui/use-toast.js.map +1 -0
- package/dist/esm/components/action-dialog.js +97 -0
- package/dist/esm/components/action-dialog.js.map +1 -0
- package/dist/esm/components/brand-icons.js +390 -0
- package/dist/esm/components/brand-icons.js.map +1 -0
- package/dist/esm/components/browser-frame/index.js +43 -0
- package/dist/esm/components/browser-frame/index.js.map +1 -0
- package/dist/esm/components/copy-button.js +35 -0
- package/dist/esm/components/copy-button.js.map +1 -0
- package/dist/esm/components/copy-field.js +44 -0
- package/dist/esm/components/copy-field.js.map +1 -0
- package/dist/esm/components/data-table/cells.js +88 -0
- package/dist/esm/components/data-table/cells.js.map +1 -0
- package/dist/esm/components/data-table/column-header.js +40 -0
- package/dist/esm/components/data-table/column-header.js.map +1 -0
- package/dist/esm/components/data-table/data-table.js +249 -0
- package/dist/esm/components/data-table/data-table.js.map +1 -0
- package/dist/esm/components/data-table/faceted-filter.js +117 -0
- package/dist/esm/components/data-table/faceted-filter.js.map +1 -0
- package/dist/esm/components/data-table/index.js +11 -0
- package/dist/esm/components/data-table/index.js.map +1 -0
- package/dist/esm/components/data-table/pagination.js +71 -0
- package/dist/esm/components/data-table/pagination.js.map +1 -0
- package/dist/esm/components/data-table/toolbar-items.js +18 -0
- package/dist/esm/components/data-table/toolbar-items.js.map +1 -0
- package/dist/esm/components/data-table/toolbar.js +92 -0
- package/dist/esm/components/data-table/toolbar.js.map +1 -0
- package/dist/esm/components/data-table/utils.js +12 -0
- package/dist/esm/components/data-table/utils.js.map +1 -0
- package/dist/esm/components/data-table/view-options.js +55 -0
- package/dist/esm/components/data-table/view-options.js.map +1 -0
- package/dist/esm/components/simple-tooltip.js +21 -0
- package/dist/esm/components/simple-tooltip.js.map +1 -0
- package/dist/esm/components/ui/accordion.js +52 -0
- package/dist/esm/components/ui/accordion.js.map +1 -0
- package/dist/esm/components/ui/alert.js +54 -0
- package/dist/esm/components/ui/alert.js.map +1 -0
- package/dist/esm/components/ui/aspect-ratio.js +10 -0
- package/dist/esm/components/ui/aspect-ratio.js.map +1 -0
- package/dist/esm/components/ui/avatar.js +47 -0
- package/dist/esm/components/ui/avatar.js.map +1 -0
- package/dist/esm/components/ui/badge.js +30 -0
- package/dist/esm/components/ui/badge.js.map +1 -0
- package/dist/esm/components/ui/breadcrumb.js +95 -0
- package/dist/esm/components/ui/breadcrumb.js.map +1 -0
- package/dist/esm/components/ui/button.js +79 -0
- package/dist/esm/components/ui/button.js.map +1 -0
- package/dist/esm/components/ui/calendar.js +72 -0
- package/dist/esm/components/ui/calendar.js.map +1 -0
- package/dist/esm/components/ui/card.js +72 -0
- package/dist/esm/components/ui/card.js.map +1 -0
- package/dist/esm/components/ui/checkbox.js +32 -0
- package/dist/esm/components/ui/checkbox.js.map +1 -0
- package/dist/esm/components/ui/collapsible.js +14 -0
- package/dist/esm/components/ui/collapsible.js.map +1 -0
- package/dist/esm/components/ui/command.js +119 -0
- package/dist/esm/components/ui/command.js.map +1 -0
- package/dist/esm/components/ui/context-menu.js +162 -0
- package/dist/esm/components/ui/context-menu.js.map +1 -0
- package/dist/esm/components/ui/dialog.js +114 -0
- package/dist/esm/components/ui/dialog.js.map +1 -0
- package/dist/esm/components/ui/dropdown-menu.js +200 -0
- package/dist/esm/components/ui/dropdown-menu.js.map +1 -0
- package/dist/esm/components/ui/form.js +118 -0
- package/dist/esm/components/ui/form.js.map +1 -0
- package/dist/esm/components/ui/hover-card.js +30 -0
- package/dist/esm/components/ui/hover-card.js.map +1 -0
- package/dist/esm/components/ui/inline-code.js +42 -0
- package/dist/esm/components/ui/inline-code.js.map +1 -0
- package/dist/esm/components/ui/input-otp.js +56 -0
- package/dist/esm/components/ui/input-otp.js.map +1 -0
- package/dist/esm/components/ui/input.js +57 -0
- package/dist/esm/components/ui/input.js.map +1 -0
- package/dist/esm/components/ui/label.js +35 -0
- package/dist/esm/components/ui/label.js.map +1 -0
- package/dist/esm/components/ui/menubar.js +192 -0
- package/dist/esm/components/ui/menubar.js.map +1 -0
- package/dist/esm/components/ui/navigation-menu.js +112 -0
- package/dist/esm/components/ui/navigation-menu.js.map +1 -0
- package/dist/esm/components/ui/password-input.js +58 -0
- package/dist/esm/components/ui/password-input.js.map +1 -0
- package/dist/esm/components/ui/popover.js +32 -0
- package/dist/esm/components/ui/popover.js.map +1 -0
- package/dist/esm/components/ui/progress.js +31 -0
- package/dist/esm/components/ui/progress.js.map +1 -0
- package/dist/esm/components/ui/radio-group.js +40 -0
- package/dist/esm/components/ui/radio-group.js.map +1 -0
- package/dist/esm/components/ui/resizable.js +43 -0
- package/dist/esm/components/ui/resizable.js.map +1 -0
- package/dist/esm/components/ui/scroll-area.js +43 -0
- package/dist/esm/components/ui/scroll-area.js.map +1 -0
- package/dist/esm/components/ui/select.js +135 -0
- package/dist/esm/components/ui/select.js.map +1 -0
- package/dist/esm/components/ui/separator.js +29 -0
- package/dist/esm/components/ui/separator.js.map +1 -0
- package/dist/esm/components/ui/sheet.js +120 -0
- package/dist/esm/components/ui/sheet.js.map +1 -0
- package/dist/esm/components/ui/skeleton.js +24 -0
- package/dist/esm/components/ui/skeleton.js.map +1 -0
- package/dist/esm/components/ui/slider.js +28 -0
- package/dist/esm/components/ui/slider.js.map +1 -0
- package/dist/esm/components/ui/spinner.js +13 -0
- package/dist/esm/components/ui/spinner.js.map +1 -0
- package/dist/esm/components/ui/switch.js +62 -0
- package/dist/esm/components/ui/switch.js.map +1 -0
- package/dist/esm/components/ui/table.js +93 -0
- package/dist/esm/components/ui/table.js.map +1 -0
- package/dist/esm/components/ui/tabs.js +52 -0
- package/dist/esm/components/ui/tabs.js.map +1 -0
- package/dist/esm/components/ui/textarea.js +24 -0
- package/dist/esm/components/ui/textarea.js.map +1 -0
- package/dist/esm/components/ui/toast.js +105 -0
- package/dist/esm/components/ui/toast.js.map +1 -0
- package/dist/esm/components/ui/toaster.js +34 -0
- package/dist/esm/components/ui/toaster.js.map +1 -0
- package/dist/esm/components/ui/toggle-group.js +48 -0
- package/dist/esm/components/ui/toggle-group.js.map +1 -0
- package/dist/esm/components/ui/toggle.js +43 -0
- package/dist/esm/components/ui/toggle.js.map +1 -0
- package/dist/esm/components/ui/tooltip.js +38 -0
- package/dist/esm/components/ui/tooltip.js.map +1 -0
- package/dist/esm/components/ui/typography.js +47 -0
- package/dist/esm/components/ui/typography.js.map +1 -0
- package/dist/esm/components/ui/use-toast.js +130 -0
- package/dist/esm/components/ui/use-toast.js.map +1 -0
- package/dist/esm/index.js +59 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/lib/utils.js +10 -0
- package/dist/esm/lib/utils.js.map +1 -0
- package/dist/index.d.mts +967 -0
- package/dist/index.d.ts +967 -54
- package/dist/index.js +147 -53
- package/dist/index.js.map +1 -0
- package/dist/lib/utils.js +34 -4
- package/dist/lib/utils.js.map +1 -0
- package/package.json +10 -5
- package/dist/components/action-dialog.d.ts +0 -28
- package/dist/components/action-dialog.d.ts.map +0 -1
- package/dist/components/brand-icons.d.ts +0 -43
- package/dist/components/brand-icons.d.ts.map +0 -1
- package/dist/components/browser-frame/index.d.ts +0 -10
- package/dist/components/browser-frame/index.d.ts.map +0 -1
- package/dist/components/copy-button.d.ts +0 -17
- package/dist/components/copy-button.d.ts.map +0 -1
- package/dist/components/copy-field.d.ts +0 -13
- package/dist/components/copy-field.d.ts.map +0 -1
- package/dist/components/data-table/cells.d.ts +0 -31
- package/dist/components/data-table/cells.d.ts.map +0 -1
- package/dist/components/data-table/column-header.d.ts +0 -8
- package/dist/components/data-table/column-header.d.ts.map +0 -1
- package/dist/components/data-table/data-table.d.ts +0 -36
- package/dist/components/data-table/data-table.d.ts.map +0 -1
- package/dist/components/data-table/faceted-filter.d.ts +0 -16
- package/dist/components/data-table/faceted-filter.d.ts.map +0 -1
- package/dist/components/data-table/index.d.ts +0 -10
- package/dist/components/data-table/index.d.ts.map +0 -1
- package/dist/components/data-table/pagination.d.ts +0 -7
- package/dist/components/data-table/pagination.d.ts.map +0 -1
- package/dist/components/data-table/toolbar-items.d.ts +0 -8
- package/dist/components/data-table/toolbar-items.d.ts.map +0 -1
- package/dist/components/data-table/toolbar.d.ts +0 -12
- package/dist/components/data-table/toolbar.d.ts.map +0 -1
- package/dist/components/data-table/utils.d.ts +0 -3
- package/dist/components/data-table/utils.d.ts.map +0 -1
- package/dist/components/data-table/view-options.d.ts +0 -7
- package/dist/components/data-table/view-options.d.ts.map +0 -1
- package/dist/components/simple-tooltip.d.ts +0 -9
- package/dist/components/simple-tooltip.d.ts.map +0 -1
- package/dist/components/ui/accordion.d.ts +0 -14
- package/dist/components/ui/accordion.d.ts.map +0 -1
- package/dist/components/ui/alert.d.ts +0 -15
- package/dist/components/ui/alert.d.ts.map +0 -1
- package/dist/components/ui/aspect-ratio.d.ts +0 -4
- package/dist/components/ui/aspect-ratio.d.ts.map +0 -1
- package/dist/components/ui/avatar.d.ts +0 -13
- package/dist/components/ui/avatar.d.ts.map +0 -1
- package/dist/components/ui/badge.d.ts +0 -13
- package/dist/components/ui/badge.d.ts.map +0 -1
- package/dist/components/ui/breadcrumb.d.ts +0 -30
- package/dist/components/ui/breadcrumb.d.ts.map +0 -1
- package/dist/components/ui/button.d.ts +0 -28
- package/dist/components/ui/button.d.ts.map +0 -1
- package/dist/components/ui/calendar.d.ts +0 -9
- package/dist/components/ui/calendar.d.ts.map +0 -1
- package/dist/components/ui/card.d.ts +0 -23
- package/dist/components/ui/card.d.ts.map +0 -1
- package/dist/components/ui/checkbox.d.ts +0 -7
- package/dist/components/ui/checkbox.d.ts.map +0 -1
- package/dist/components/ui/collapsible.d.ts +0 -6
- package/dist/components/ui/collapsible.d.ts.map +0 -1
- package/dist/components/ui/command.d.ts +0 -18
- package/dist/components/ui/command.d.ts.map +0 -1
- package/dist/components/ui/context-menu.d.ts +0 -44
- package/dist/components/ui/context-menu.d.ts.map +0 -1
- package/dist/components/ui/dialog.d.ts +0 -34
- package/dist/components/ui/dialog.d.ts.map +0 -1
- package/dist/components/ui/dropdown-menu.d.ts +0 -47
- package/dist/components/ui/dropdown-menu.d.ts.map +0 -1
- package/dist/components/ui/form.d.ts +0 -34
- package/dist/components/ui/form.d.ts.map +0 -1
- package/dist/components/ui/hover-card.d.ts +0 -9
- package/dist/components/ui/hover-card.d.ts.map +0 -1
- package/dist/components/ui/inline-code.d.ts +0 -6
- package/dist/components/ui/inline-code.d.ts.map +0 -1
- package/dist/components/ui/input-otp.d.ts +0 -17
- package/dist/components/ui/input-otp.d.ts.map +0 -1
- package/dist/components/ui/input.d.ts +0 -20
- package/dist/components/ui/input.d.ts.map +0 -1
- package/dist/components/ui/label.d.ts +0 -11
- package/dist/components/ui/label.d.ts.map +0 -1
- package/dist/components/ui/menubar.d.ts +0 -31
- package/dist/components/ui/menubar.d.ts.map +0 -1
- package/dist/components/ui/navigation-menu.d.ts +0 -25
- package/dist/components/ui/navigation-menu.d.ts.map +0 -1
- package/dist/components/ui/password-input.d.ts +0 -7
- package/dist/components/ui/password-input.d.ts.map +0 -1
- package/dist/components/ui/popover.d.ts +0 -10
- package/dist/components/ui/popover.d.ts.map +0 -1
- package/dist/components/ui/progress.d.ts +0 -7
- package/dist/components/ui/progress.d.ts.map +0 -1
- package/dist/components/ui/radio-group.d.ts +0 -10
- package/dist/components/ui/radio-group.d.ts.map +0 -1
- package/dist/components/ui/resizable.d.ts +0 -37
- package/dist/components/ui/resizable.d.ts.map +0 -1
- package/dist/components/ui/scroll-area.d.ts +0 -10
- package/dist/components/ui/scroll-area.d.ts.map +0 -1
- package/dist/components/ui/select.d.ts +0 -30
- package/dist/components/ui/select.d.ts.map +0 -1
- package/dist/components/ui/separator.d.ts +0 -7
- package/dist/components/ui/separator.d.ts.map +0 -1
- package/dist/components/ui/sheet.d.ts +0 -33
- package/dist/components/ui/sheet.d.ts.map +0 -1
- package/dist/components/ui/skeleton.d.ts +0 -4
- package/dist/components/ui/skeleton.d.ts.map +0 -1
- package/dist/components/ui/slider.d.ts +0 -7
- package/dist/components/ui/slider.d.ts.map +0 -1
- package/dist/components/ui/spinner.d.ts +0 -7
- package/dist/components/ui/spinner.d.ts.map +0 -1
- package/dist/components/ui/switch.d.ts +0 -11
- package/dist/components/ui/switch.d.ts.map +0 -1
- package/dist/components/ui/table.d.ts +0 -27
- package/dist/components/ui/table.d.ts.map +0 -1
- package/dist/components/ui/tabs.d.ts +0 -14
- package/dist/components/ui/tabs.d.ts.map +0 -1
- package/dist/components/ui/textarea.d.ts +0 -7
- package/dist/components/ui/textarea.d.ts.map +0 -1
- package/dist/components/ui/toast.d.ts +0 -28
- package/dist/components/ui/toast.d.ts.map +0 -1
- package/dist/components/ui/toaster.d.ts +0 -2
- package/dist/components/ui/toaster.d.ts.map +0 -1
- package/dist/components/ui/toggle-group.d.ts +0 -17
- package/dist/components/ui/toggle-group.d.ts.map +0 -1
- package/dist/components/ui/toggle.d.ts +0 -15
- package/dist/components/ui/toggle.d.ts.map +0 -1
- package/dist/components/ui/tooltip.d.ts +0 -12
- package/dist/components/ui/tooltip.d.ts.map +0 -1
- package/dist/components/ui/typography.d.ts +0 -10
- package/dist/components/ui/typography.d.ts.map +0 -1
- package/dist/components/ui/use-toast.d.ts +0 -45
- package/dist/components/ui/use-toast.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/lib/utils.d.ts +0 -3
- package/dist/lib/utils.d.ts.map +0 -1
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
// src/components/ui/breadcrumb.tsx
|
|
2
|
+
import { forwardRefIfNeeded } from "@stackframe/stack-shared/dist/utils/react";
|
|
3
|
+
import { ChevronRightIcon, DotsHorizontalIcon } from "@radix-ui/react-icons";
|
|
4
|
+
import { Slot } from "@radix-ui/react-slot";
|
|
5
|
+
import { cn } from "../../lib/utils.js";
|
|
6
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
|
+
var Breadcrumb = forwardRefIfNeeded(({ ...props }, ref) => /* @__PURE__ */ jsx("nav", { ref, "aria-label": "breadcrumb", ...props }));
|
|
8
|
+
Breadcrumb.displayName = "Breadcrumb";
|
|
9
|
+
var BreadcrumbList = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
10
|
+
"ol",
|
|
11
|
+
{
|
|
12
|
+
ref,
|
|
13
|
+
className: cn(
|
|
14
|
+
"stack-scope flex flex-wrap items-center gap-1.5 break-words text-sm text-muted-foreground sm:gap-2.5",
|
|
15
|
+
className
|
|
16
|
+
),
|
|
17
|
+
...props
|
|
18
|
+
}
|
|
19
|
+
));
|
|
20
|
+
BreadcrumbList.displayName = "BreadcrumbList";
|
|
21
|
+
var BreadcrumbItem = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
22
|
+
"li",
|
|
23
|
+
{
|
|
24
|
+
ref,
|
|
25
|
+
className: cn("inline-flex items-center gap-1.5", className),
|
|
26
|
+
...props
|
|
27
|
+
}
|
|
28
|
+
));
|
|
29
|
+
BreadcrumbItem.displayName = "BreadcrumbItem";
|
|
30
|
+
var BreadcrumbLink = forwardRefIfNeeded(({ asChild, className, ...props }, ref) => {
|
|
31
|
+
const Comp = asChild ? Slot : "a";
|
|
32
|
+
return /* @__PURE__ */ jsx(
|
|
33
|
+
Comp,
|
|
34
|
+
{
|
|
35
|
+
ref,
|
|
36
|
+
className: cn("hover:text-foreground", className),
|
|
37
|
+
...props
|
|
38
|
+
}
|
|
39
|
+
);
|
|
40
|
+
});
|
|
41
|
+
BreadcrumbLink.displayName = "BreadcrumbLink";
|
|
42
|
+
var BreadcrumbPage = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
43
|
+
"span",
|
|
44
|
+
{
|
|
45
|
+
ref,
|
|
46
|
+
role: "link",
|
|
47
|
+
"aria-disabled": "true",
|
|
48
|
+
"aria-current": "page",
|
|
49
|
+
className: cn("font-normal text-foreground", className),
|
|
50
|
+
...props
|
|
51
|
+
}
|
|
52
|
+
));
|
|
53
|
+
BreadcrumbPage.displayName = "BreadcrumbPage";
|
|
54
|
+
var BreadcrumbSeparator = ({
|
|
55
|
+
children,
|
|
56
|
+
className,
|
|
57
|
+
...props
|
|
58
|
+
}) => /* @__PURE__ */ jsx(
|
|
59
|
+
"li",
|
|
60
|
+
{
|
|
61
|
+
role: "presentation",
|
|
62
|
+
"aria-hidden": "true",
|
|
63
|
+
className: cn("[&>svg]:size-3.5", className),
|
|
64
|
+
...props,
|
|
65
|
+
children: children ?? /* @__PURE__ */ jsx(ChevronRightIcon, {})
|
|
66
|
+
}
|
|
67
|
+
);
|
|
68
|
+
BreadcrumbSeparator.displayName = "BreadcrumbSeparator";
|
|
69
|
+
var BreadcrumbEllipsis = ({
|
|
70
|
+
className,
|
|
71
|
+
...props
|
|
72
|
+
}) => /* @__PURE__ */ jsxs(
|
|
73
|
+
"span",
|
|
74
|
+
{
|
|
75
|
+
role: "presentation",
|
|
76
|
+
"aria-hidden": "true",
|
|
77
|
+
className: cn("flex h-9 w-9 items-center justify-center", className),
|
|
78
|
+
...props,
|
|
79
|
+
children: [
|
|
80
|
+
/* @__PURE__ */ jsx(DotsHorizontalIcon, { className: "h-4 w-4" }),
|
|
81
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only", children: "More" })
|
|
82
|
+
]
|
|
83
|
+
}
|
|
84
|
+
);
|
|
85
|
+
BreadcrumbEllipsis.displayName = "BreadcrumbElipssis";
|
|
86
|
+
export {
|
|
87
|
+
Breadcrumb,
|
|
88
|
+
BreadcrumbEllipsis,
|
|
89
|
+
BreadcrumbItem,
|
|
90
|
+
BreadcrumbLink,
|
|
91
|
+
BreadcrumbList,
|
|
92
|
+
BreadcrumbPage,
|
|
93
|
+
BreadcrumbSeparator
|
|
94
|
+
};
|
|
95
|
+
//# sourceMappingURL=breadcrumb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ui/breadcrumb.tsx"],"sourcesContent":["import React from \"react\";\nimport { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\nimport { ChevronRightIcon, DotsHorizontalIcon } from \"@radix-ui/react-icons\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst Breadcrumb = forwardRefIfNeeded<\n HTMLElement,\n React.ComponentPropsWithoutRef<\"nav\"> & {\n separator?: React.ReactNode,\n }\n>(({ ...props }, ref) => <nav ref={ref} aria-label=\"breadcrumb\" {...props} />);\nBreadcrumb.displayName = \"Breadcrumb\";\n\nconst BreadcrumbList = forwardRefIfNeeded<\n HTMLOListElement,\n React.ComponentPropsWithoutRef<\"ol\">\n>(({ className, ...props }, ref) => (\n <ol\n ref={ref}\n className={cn(\n \"stack-scope flex flex-wrap items-center gap-1.5 break-words text-sm text-muted-foreground sm:gap-2.5\",\n className\n )}\n {...props}\n />\n));\nBreadcrumbList.displayName = \"BreadcrumbList\";\n\nconst BreadcrumbItem = forwardRefIfNeeded<\n HTMLLIElement,\n React.ComponentPropsWithoutRef<\"li\">\n>(({ className, ...props }, ref) => (\n <li\n ref={ref}\n className={cn(\"inline-flex items-center gap-1.5\", className)}\n {...props}\n />\n));\nBreadcrumbItem.displayName = \"BreadcrumbItem\";\n\nconst BreadcrumbLink = forwardRefIfNeeded<\n HTMLAnchorElement,\n React.ComponentPropsWithoutRef<\"a\"> & {\n asChild?: boolean,\n }\n>(({ asChild, className, ...props }, ref) => {\n const Comp = asChild ? Slot : \"a\";\n\n return (\n <Comp\n ref={ref}\n className={cn(\"hover:text-foreground\", className)}\n {...props}\n />\n );\n});\nBreadcrumbLink.displayName = \"BreadcrumbLink\";\n\nconst BreadcrumbPage = forwardRefIfNeeded<\n HTMLSpanElement,\n React.ComponentPropsWithoutRef<\"span\">\n>(({ className, ...props }, ref) => (\n <span\n ref={ref}\n role=\"link\"\n aria-disabled=\"true\"\n aria-current=\"page\"\n className={cn(\"font-normal text-foreground\", className)}\n {...props}\n />\n));\nBreadcrumbPage.displayName = \"BreadcrumbPage\";\n\nconst BreadcrumbSeparator = ({\n children,\n className,\n ...props\n}: React.ComponentProps<\"li\">) => (\n <li\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn(\"[&>svg]:size-3.5\", className)}\n {...props}\n >\n {children ?? <ChevronRightIcon />}\n </li>\n);\nBreadcrumbSeparator.displayName = \"BreadcrumbSeparator\";\n\nconst BreadcrumbEllipsis = ({\n className,\n ...props\n}: React.ComponentProps<\"span\">) => (\n <span\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn(\"flex h-9 w-9 items-center justify-center\", className)}\n {...props}\n >\n <DotsHorizontalIcon className=\"h-4 w-4\" />\n <span className=\"sr-only\">More</span>\n </span>\n);\nBreadcrumbEllipsis.displayName = \"BreadcrumbElipssis\";\n\nexport {\n Breadcrumb,\n BreadcrumbList,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbPage,\n BreadcrumbSeparator,\n BreadcrumbEllipsis,\n};\n"],"mappings":";AACA,SAAS,0BAA0B;AACnC,SAAS,kBAAkB,0BAA0B;AACrD,SAAS,YAAY;AAErB,SAAS,UAAU;AAOM,cAmFvB,YAnFuB;AALzB,IAAM,aAAa,mBAKjB,CAAC,EAAE,GAAG,MAAM,GAAG,QAAQ,oBAAC,SAAI,KAAU,cAAW,cAAc,GAAG,OAAO,CAAE;AAC7E,WAAW,cAAc;AAEzB,IAAM,iBAAiB,mBAGrB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA;AACN,CACD;AACD,eAAe,cAAc;AAE7B,IAAM,iBAAiB,mBAGrB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW,GAAG,oCAAoC,SAAS;AAAA,IAC1D,GAAG;AAAA;AACN,CACD;AACD,eAAe,cAAc;AAE7B,IAAM,iBAAiB,mBAKrB,CAAC,EAAE,SAAS,WAAW,GAAG,MAAM,GAAG,QAAQ;AAC3C,QAAM,OAAO,UAAU,OAAO;AAE9B,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,WAAW,GAAG,yBAAyB,SAAS;AAAA,MAC/C,GAAG;AAAA;AAAA,EACN;AAEJ,CAAC;AACD,eAAe,cAAc;AAE7B,IAAM,iBAAiB,mBAGrB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,MAAK;AAAA,IACL,iBAAc;AAAA,IACd,gBAAa;AAAA,IACb,WAAW,GAAG,+BAA+B,SAAS;AAAA,IACrD,GAAG;AAAA;AACN,CACD;AACD,eAAe,cAAc;AAE7B,IAAM,sBAAsB,CAAC;AAAA,EAC3B;AAAA,EACA;AAAA,EACA,GAAG;AACL,MACE;AAAA,EAAC;AAAA;AAAA,IACC,MAAK;AAAA,IACL,eAAY;AAAA,IACZ,WAAW,GAAG,oBAAoB,SAAS;AAAA,IAC1C,GAAG;AAAA,IAEH,sBAAY,oBAAC,oBAAiB;AAAA;AACjC;AAEF,oBAAoB,cAAc;AAElC,IAAM,qBAAqB,CAAC;AAAA,EAC1B;AAAA,EACA,GAAG;AACL,MACE;AAAA,EAAC;AAAA;AAAA,IACC,MAAK;AAAA,IACL,eAAY;AAAA,IACZ,WAAW,GAAG,4CAA4C,SAAS;AAAA,IAClE,GAAG;AAAA,IAEJ;AAAA,0BAAC,sBAAmB,WAAU,WAAU;AAAA,MACxC,oBAAC,UAAK,WAAU,WAAU,kBAAI;AAAA;AAAA;AAChC;AAEF,mBAAmB,cAAc;","names":[]}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
// src/components/ui/button.tsx
|
|
2
|
+
import { Slot, Slottable } from "@radix-ui/react-slot";
|
|
3
|
+
import { forwardRefIfNeeded } from "@stackframe/stack-shared/dist/utils/react";
|
|
4
|
+
import { cva } from "class-variance-authority";
|
|
5
|
+
import { useAsyncCallback } from "@stackframe/stack-shared/dist/hooks/use-async-callback";
|
|
6
|
+
import { runAsynchronouslyWithAlert } from "@stackframe/stack-shared/dist/utils/promises";
|
|
7
|
+
import { cn } from "../../lib/utils.js";
|
|
8
|
+
import { Spinner } from "./spinner.js";
|
|
9
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
10
|
+
var buttonVariants = cva(
|
|
11
|
+
"stack-scope inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",
|
|
12
|
+
{
|
|
13
|
+
variants: {
|
|
14
|
+
variant: {
|
|
15
|
+
default: "bg-primary text-primary-foreground hover:bg-primary/90",
|
|
16
|
+
destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90",
|
|
17
|
+
outline: "border border-input bg-background hover:bg-accent hover:text-accent-foreground",
|
|
18
|
+
secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
19
|
+
ghost: "hover:bg-accent hover:text-accent-foreground",
|
|
20
|
+
link: "text-primary underline-offset-4 hover:underline",
|
|
21
|
+
plain: ""
|
|
22
|
+
},
|
|
23
|
+
size: {
|
|
24
|
+
default: "h-9 px-4 py-2",
|
|
25
|
+
sm: "h-8 rounded-md px-3 text-xs",
|
|
26
|
+
lg: "h-10 rounded-md px-8",
|
|
27
|
+
icon: "h-9 w-9",
|
|
28
|
+
plain: ""
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
defaultVariants: {
|
|
32
|
+
variant: "default",
|
|
33
|
+
size: "default"
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
);
|
|
37
|
+
var OriginalButton = forwardRefIfNeeded(
|
|
38
|
+
({ className, variant, size, asChild = false, ...props }, ref) => {
|
|
39
|
+
const Comp = asChild ? Slot : "button";
|
|
40
|
+
return /* @__PURE__ */ jsx(
|
|
41
|
+
Comp,
|
|
42
|
+
{
|
|
43
|
+
className: cn(buttonVariants({ variant, size, className })),
|
|
44
|
+
ref,
|
|
45
|
+
...props
|
|
46
|
+
}
|
|
47
|
+
);
|
|
48
|
+
}
|
|
49
|
+
);
|
|
50
|
+
OriginalButton.displayName = "Button";
|
|
51
|
+
var Button = forwardRefIfNeeded(
|
|
52
|
+
({ onClick, loading: loadingProp, loadingStyle = "spinner", children, size, ...props }, ref) => {
|
|
53
|
+
const [handleClick, isLoading] = useAsyncCallback(async (e) => {
|
|
54
|
+
await onClick?.(e);
|
|
55
|
+
}, [onClick]);
|
|
56
|
+
const loading = loadingProp || isLoading;
|
|
57
|
+
return /* @__PURE__ */ jsxs(
|
|
58
|
+
OriginalButton,
|
|
59
|
+
{
|
|
60
|
+
...props,
|
|
61
|
+
ref,
|
|
62
|
+
disabled: props.disabled || loading,
|
|
63
|
+
onClick: (e) => runAsynchronouslyWithAlert(handleClick(e)),
|
|
64
|
+
size,
|
|
65
|
+
className: cn("relative", loading && "[&>:not(.stack-button-do-not-hide-when-siblings-are)]:invisible", props.className),
|
|
66
|
+
children: [
|
|
67
|
+
loadingStyle === "spinner" && /* @__PURE__ */ jsx(Spinner, { className: cn("absolute inset-0 flex items-center justify-center stack-button-do-not-hide-when-siblings-are", !loading && "invisible") }),
|
|
68
|
+
/* @__PURE__ */ jsx(Slottable, { children: typeof children === "string" ? /* @__PURE__ */ jsx("span", { children }) : children })
|
|
69
|
+
]
|
|
70
|
+
}
|
|
71
|
+
);
|
|
72
|
+
}
|
|
73
|
+
);
|
|
74
|
+
Button.displayName = "Button";
|
|
75
|
+
export {
|
|
76
|
+
Button,
|
|
77
|
+
buttonVariants
|
|
78
|
+
};
|
|
79
|
+
//# sourceMappingURL=button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ui/button.tsx"],"sourcesContent":["import { Slot, Slottable } from \"@radix-ui/react-slot\";\nimport { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport React from \"react\";\n\nimport { useAsyncCallback } from \"@stackframe/stack-shared/dist/hooks/use-async-callback\";\nimport { runAsynchronouslyWithAlert } from \"@stackframe/stack-shared/dist/utils/promises\";\nimport { cn } from \"../../lib/utils\";\nimport { Spinner } from \"./spinner\";\n\nconst buttonVariants = cva(\n \"stack-scope inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50\",\n {\n variants: {\n variant: {\n default:\n \"bg-primary text-primary-foreground hover:bg-primary/90\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive/90\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n link: \"text-primary underline-offset-4 hover:underline\",\n plain: \"\",\n },\n size: {\n default: \"h-9 px-4 py-2\",\n sm: \"h-8 rounded-md px-3 text-xs\",\n lg: \"h-10 rounded-md px-8\",\n icon: \"h-9 w-9\",\n plain: \"\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n);\n\nexport type OriginalButtonProps = {\n asChild?: boolean,\n} & React.ButtonHTMLAttributes<HTMLButtonElement> & VariantProps<typeof buttonVariants>\n\nconst OriginalButton = forwardRefIfNeeded<HTMLButtonElement, OriginalButtonProps>(\n ({ className, variant, size, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : \"button\";\n return (\n <Comp\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n {...props}\n />\n );\n }\n);\nOriginalButton.displayName = \"Button\";\n\ntype ButtonProps = {\n onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void | Promise<void>,\n loading?: boolean,\n loadingStyle?: \"spinner\" | \"disabled\",\n} & OriginalButtonProps\n\nconst Button = forwardRefIfNeeded<HTMLButtonElement, ButtonProps>(\n ({ onClick, loading: loadingProp, loadingStyle = \"spinner\", children, size, ...props }, ref) => {\n const [handleClick, isLoading] = useAsyncCallback(async (e: React.MouseEvent<HTMLButtonElement>) => {\n await onClick?.(e);\n }, [onClick]);\n\n const loading = loadingProp || isLoading;\n\n return (\n <OriginalButton\n {...props}\n ref={ref}\n disabled={props.disabled || loading}\n onClick={(e) => runAsynchronouslyWithAlert(handleClick(e))}\n size={size}\n className={cn(\"relative\", loading && \"[&>:not(.stack-button-do-not-hide-when-siblings-are)]:invisible\", props.className)}\n >\n {loadingStyle === \"spinner\" && <Spinner className={cn(\"absolute inset-0 flex items-center justify-center stack-button-do-not-hide-when-siblings-are\", !loading && \"invisible\")} />}\n <Slottable>\n {typeof children === \"string\" ? <span>{children}</span> : children}\n </Slottable>\n </OriginalButton>\n );\n }\n);\nButton.displayName = \"Button\";\n\nexport { Button, ButtonProps, buttonVariants };\n\n"],"mappings":";AAAA,SAAS,MAAM,iBAAiB;AAChC,SAAS,0BAA0B;AACnC,SAAS,WAA8B;AAGvC,SAAS,wBAAwB;AACjC,SAAS,kCAAkC;AAC3C,SAAS,UAAU;AACnB,SAAS,eAAe;AA0ClB,cAyBA,YAzBA;AAxCN,IAAM,iBAAiB;AAAA,EACrB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SACE;AAAA,QACF,aACE;AAAA,QACF,SACE;AAAA,QACF,WACE;AAAA,QACF,OAAO;AAAA,QACP,MAAM;AAAA,QACN,OAAO;AAAA,MACT;AAAA,MACA,MAAM;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,MAAM;AAAA,QACN,OAAO;AAAA,MACT;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,SAAS;AAAA,MACT,MAAM;AAAA,IACR;AAAA,EACF;AACF;AAMA,IAAM,iBAAiB;AAAA,EACrB,CAAC,EAAE,WAAW,SAAS,MAAM,UAAU,OAAO,GAAG,MAAM,GAAG,QAAQ;AAChE,UAAM,OAAO,UAAU,OAAO;AAC9B,WACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAW,GAAG,eAAe,EAAE,SAAS,MAAM,UAAU,CAAC,CAAC;AAAA,QAC1D;AAAA,QACC,GAAG;AAAA;AAAA,IACN;AAAA,EAEJ;AACF;AACA,eAAe,cAAc;AAQ7B,IAAM,SAAS;AAAA,EACb,CAAC,EAAE,SAAS,SAAS,aAAa,eAAe,WAAW,UAAU,MAAM,GAAG,MAAM,GAAG,QAAQ;AAC9F,UAAM,CAAC,aAAa,SAAS,IAAI,iBAAiB,OAAO,MAA2C;AAClG,YAAM,UAAU,CAAC;AAAA,IACnB,GAAG,CAAC,OAAO,CAAC;AAEZ,UAAM,UAAU,eAAe;AAE/B,WACE;AAAA,MAAC;AAAA;AAAA,QACE,GAAG;AAAA,QACJ;AAAA,QACA,UAAU,MAAM,YAAY;AAAA,QAC5B,SAAS,CAAC,MAAM,2BAA2B,YAAY,CAAC,CAAC;AAAA,QACzD;AAAA,QACA,WAAW,GAAG,YAAY,WAAW,mEAAmE,MAAM,SAAS;AAAA,QAEtH;AAAA,2BAAiB,aAAa,oBAAC,WAAQ,WAAW,GAAG,gGAAgG,CAAC,WAAW,WAAW,GAAG;AAAA,UAChL,oBAAC,aACE,iBAAO,aAAa,WAAW,oBAAC,UAAM,UAAS,IAAU,UAC5D;AAAA;AAAA;AAAA,IACF;AAAA,EAEJ;AACF;AACA,OAAO,cAAc;","names":[]}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
|
|
4
|
+
// src/components/ui/calendar.tsx
|
|
5
|
+
import { ChevronLeftIcon, ChevronRightIcon } from "@radix-ui/react-icons";
|
|
6
|
+
import { DayPicker } from "react-day-picker";
|
|
7
|
+
import { cn } from "../../lib/utils.js";
|
|
8
|
+
import { buttonVariants } from "./button.js";
|
|
9
|
+
import { jsx } from "react/jsx-runtime";
|
|
10
|
+
function Calendar({
|
|
11
|
+
className,
|
|
12
|
+
classNames,
|
|
13
|
+
showOutsideDays = true,
|
|
14
|
+
...props
|
|
15
|
+
}) {
|
|
16
|
+
return /* @__PURE__ */ jsx(
|
|
17
|
+
DayPicker,
|
|
18
|
+
{
|
|
19
|
+
showOutsideDays,
|
|
20
|
+
className: cn("stack-scope p-3", className),
|
|
21
|
+
classNames: {
|
|
22
|
+
months: "flex flex-col sm:flex-row",
|
|
23
|
+
month: "space-y-4",
|
|
24
|
+
month_caption: "flex justify-center pt-1 relative items-center",
|
|
25
|
+
caption_label: "text-sm font-medium",
|
|
26
|
+
nav: "absolute left-0 right-0",
|
|
27
|
+
button_previous: cn(
|
|
28
|
+
buttonVariants({ variant: "outline" }),
|
|
29
|
+
"h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100 absolute left-3 z-10"
|
|
30
|
+
),
|
|
31
|
+
button_next: cn(
|
|
32
|
+
buttonVariants({ variant: "outline" }),
|
|
33
|
+
"h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100 absolute right-3 z-10"
|
|
34
|
+
),
|
|
35
|
+
month_grid: "w-full border-collapse space-y-1",
|
|
36
|
+
weekdays: "flex",
|
|
37
|
+
weekday: "text-muted-foreground rounded-md w-8 font-normal text-[0.8rem]",
|
|
38
|
+
week: "flex w-full mt-2",
|
|
39
|
+
day: cn(
|
|
40
|
+
"relative p-0 text-center text-sm focus-within:relative focus-within:z-20 [&:has([aria-selected])]:bg-accent [&:has([aria-selected].outside)]:bg-accent/50 [&:has([aria-selected].range_end)]:rounded-r-md",
|
|
41
|
+
props.mode === "range" ? "[&:has(>.range_end)]:rounded-r-md [&:has(>.range_start)]:rounded-l-md first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md" : "[&:has([aria-selected])]:rounded-md"
|
|
42
|
+
),
|
|
43
|
+
day_button: cn(
|
|
44
|
+
buttonVariants({ variant: "ghost" }),
|
|
45
|
+
"h-8 w-8 p-0 font-normal aria-selected:opacity-100 hover:bg-primary hover:text-primary-foreground"
|
|
46
|
+
),
|
|
47
|
+
range_start: "range_start",
|
|
48
|
+
range_end: "range_end",
|
|
49
|
+
selected: "bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground rounded-md",
|
|
50
|
+
outside: "opacity-50",
|
|
51
|
+
disabled: "text-muted-foreground opacity-50",
|
|
52
|
+
range_middle: "aria-selected:bg-accent aria-selected:text-accent-foreground",
|
|
53
|
+
hidden: "invisible",
|
|
54
|
+
...classNames
|
|
55
|
+
},
|
|
56
|
+
components: {
|
|
57
|
+
Chevron: (props2) => {
|
|
58
|
+
if (props2.orientation === "left") {
|
|
59
|
+
return /* @__PURE__ */ jsx(ChevronLeftIcon, { className: "h-4 w-4" });
|
|
60
|
+
}
|
|
61
|
+
return /* @__PURE__ */ jsx(ChevronRightIcon, { className: "h-4 w-4" });
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
...props
|
|
65
|
+
}
|
|
66
|
+
);
|
|
67
|
+
}
|
|
68
|
+
Calendar.displayName = "Calendar";
|
|
69
|
+
export {
|
|
70
|
+
Calendar
|
|
71
|
+
};
|
|
72
|
+
//# sourceMappingURL=calendar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ui/calendar.tsx"],"sourcesContent":["\"use client\";\n\nimport { ChevronLeftIcon, ChevronRightIcon } from \"@radix-ui/react-icons\";\nimport React from \"react\";\nimport { DayPicker } from \"react-day-picker\";\n\nimport { cn } from \"../../lib/utils\";\nimport { buttonVariants } from \"./button\";\n\nexport type CalendarProps = React.ComponentProps<typeof DayPicker>\n\nfunction Calendar({\n className,\n classNames,\n showOutsideDays = true,\n ...props\n}: CalendarProps) {\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n className={cn(\"stack-scope p-3\", className)}\n classNames={{\n months: \"flex flex-col sm:flex-row\",\n month: \"space-y-4\",\n month_caption: \"flex justify-center pt-1 relative items-center\",\n caption_label: \"text-sm font-medium\",\n nav: \"absolute left-0 right-0\",\n button_previous: cn(\n buttonVariants({ variant: \"outline\" }),\n \"h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100 absolute left-3 z-10\"\n ),\n button_next: cn(\n buttonVariants({ variant: \"outline\" }),\n \"h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100 absolute right-3 z-10\"\n ),\n month_grid: \"w-full border-collapse space-y-1\",\n weekdays: \"flex\",\n weekday:\n \"text-muted-foreground rounded-md w-8 font-normal text-[0.8rem]\",\n week: \"flex w-full mt-2\",\n day: cn(\n \"relative p-0 text-center text-sm focus-within:relative focus-within:z-20 [&:has([aria-selected])]:bg-accent [&:has([aria-selected].outside)]:bg-accent/50 [&:has([aria-selected].range_end)]:rounded-r-md\",\n props.mode === \"range\"\n ? \"[&:has(>.range_end)]:rounded-r-md [&:has(>.range_start)]:rounded-l-md first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md\"\n : \"[&:has([aria-selected])]:rounded-md\"\n ),\n day_button: cn(\n buttonVariants({ variant: \"ghost\" }),\n \"h-8 w-8 p-0 font-normal aria-selected:opacity-100 hover:bg-primary hover:text-primary-foreground\"\n ),\n range_start: \"range_start\",\n range_end: \"range_end\",\n selected:\n \"bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground rounded-md\",\n outside:\n \"opacity-50\",\n disabled: \"text-muted-foreground opacity-50\",\n range_middle:\n \"aria-selected:bg-accent aria-selected:text-accent-foreground\",\n hidden: \"invisible\",\n ...classNames,\n }}\n components={{\n Chevron: (props) => {\n if (props.orientation === \"left\") {\n return <ChevronLeftIcon className=\"h-4 w-4\" />;\n }\n return <ChevronRightIcon className=\"h-4 w-4\" />;\n },\n }}\n {...props}\n />\n );\n}\nCalendar.displayName = \"Calendar\";\n\nexport { Calendar };\n"],"mappings":";;;AAEA,SAAS,iBAAiB,wBAAwB;AAElD,SAAS,iBAAiB;AAE1B,SAAS,UAAU;AACnB,SAAS,sBAAsB;AA0DZ;AAtDnB,SAAS,SAAS;AAAA,EAChB;AAAA,EACA;AAAA,EACA,kBAAkB;AAAA,EAClB,GAAG;AACL,GAAkB;AAChB,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,WAAW,GAAG,mBAAmB,SAAS;AAAA,MAC1C,YAAY;AAAA,QACV,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,eAAe;AAAA,QACf,eAAe;AAAA,QACf,KAAK;AAAA,QACL,iBAAiB;AAAA,UACf,eAAe,EAAE,SAAS,UAAU,CAAC;AAAA,UACrC;AAAA,QACF;AAAA,QACA,aAAa;AAAA,UACX,eAAe,EAAE,SAAS,UAAU,CAAC;AAAA,UACrC;AAAA,QACF;AAAA,QACA,YAAY;AAAA,QACZ,UAAU;AAAA,QACV,SACE;AAAA,QACF,MAAM;AAAA,QACN,KAAK;AAAA,UACH;AAAA,UACA,MAAM,SAAS,UACX,iKACA;AAAA,QACN;AAAA,QACA,YAAY;AAAA,UACV,eAAe,EAAE,SAAS,QAAQ,CAAC;AAAA,UACnC;AAAA,QACF;AAAA,QACA,aAAa;AAAA,QACb,WAAW;AAAA,QACX,UACE;AAAA,QACF,SACE;AAAA,QACF,UAAU;AAAA,QACV,cACE;AAAA,QACF,QAAQ;AAAA,QACR,GAAG;AAAA,MACL;AAAA,MACA,YAAY;AAAA,QACV,SAAS,CAACA,WAAU;AAClB,cAAIA,OAAM,gBAAgB,QAAQ;AAChC,mBAAO,oBAAC,mBAAgB,WAAU,WAAU;AAAA,UAC9C;AACA,iBAAO,oBAAC,oBAAiB,WAAU,WAAU;AAAA,QAC/C;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AACA,SAAS,cAAc;","names":["props"]}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
// src/components/ui/card.tsx
|
|
2
|
+
import { forwardRefIfNeeded } from "@stackframe/stack-shared/dist/utils/react";
|
|
3
|
+
import { cn } from "../../lib/utils.js";
|
|
4
|
+
import { jsx } from "react/jsx-runtime";
|
|
5
|
+
var Card = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
6
|
+
"div",
|
|
7
|
+
{
|
|
8
|
+
ref,
|
|
9
|
+
className: cn(
|
|
10
|
+
"rounded-xl border bg-card text-card-foreground shadow-sm",
|
|
11
|
+
className
|
|
12
|
+
),
|
|
13
|
+
...props
|
|
14
|
+
}
|
|
15
|
+
));
|
|
16
|
+
Card.displayName = "Card";
|
|
17
|
+
var CardHeader = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
18
|
+
"div",
|
|
19
|
+
{
|
|
20
|
+
ref,
|
|
21
|
+
className: cn("flex flex-col space-y-1.5 p-6 pb-0", className),
|
|
22
|
+
...props
|
|
23
|
+
}
|
|
24
|
+
));
|
|
25
|
+
CardHeader.displayName = "CardHeader";
|
|
26
|
+
var CardTitle = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
27
|
+
"h3",
|
|
28
|
+
{
|
|
29
|
+
ref,
|
|
30
|
+
className: cn("font-semibold leading-none tracking-tight capitalize", className),
|
|
31
|
+
...props
|
|
32
|
+
}
|
|
33
|
+
));
|
|
34
|
+
CardTitle.displayName = "CardTitle";
|
|
35
|
+
var CardDescription = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
36
|
+
"p",
|
|
37
|
+
{
|
|
38
|
+
ref,
|
|
39
|
+
className: cn("text-sm text-muted-foreground", className),
|
|
40
|
+
...props
|
|
41
|
+
}
|
|
42
|
+
));
|
|
43
|
+
CardDescription.displayName = "CardDescription";
|
|
44
|
+
var CardContent = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("p-6", className), ...props }));
|
|
45
|
+
CardContent.displayName = "CardContent";
|
|
46
|
+
var CardSubtitle = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
47
|
+
"h4",
|
|
48
|
+
{
|
|
49
|
+
ref,
|
|
50
|
+
className: cn("text-sm text-muted-foreground font-bold", className),
|
|
51
|
+
...props
|
|
52
|
+
}
|
|
53
|
+
));
|
|
54
|
+
var CardFooter = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
55
|
+
"div",
|
|
56
|
+
{
|
|
57
|
+
ref,
|
|
58
|
+
className: cn("flex items-center p-6 pt-0", className),
|
|
59
|
+
...props
|
|
60
|
+
}
|
|
61
|
+
));
|
|
62
|
+
CardFooter.displayName = "CardFooter";
|
|
63
|
+
export {
|
|
64
|
+
Card,
|
|
65
|
+
CardContent,
|
|
66
|
+
CardDescription,
|
|
67
|
+
CardFooter,
|
|
68
|
+
CardHeader,
|
|
69
|
+
CardSubtitle,
|
|
70
|
+
CardTitle
|
|
71
|
+
};
|
|
72
|
+
//# sourceMappingURL=card.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ui/card.tsx"],"sourcesContent":["import { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst Card = forwardRefIfNeeded<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n \"rounded-xl border bg-card text-card-foreground shadow-sm\",\n className\n )}\n {...props}\n />\n));\nCard.displayName = \"Card\";\n\nconst CardHeader = forwardRefIfNeeded<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex flex-col space-y-1.5 p-6 pb-0\", className)}\n {...props}\n />\n));\nCardHeader.displayName = \"CardHeader\";\n\nconst CardTitle = forwardRefIfNeeded<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLHeadingElement>\n>(({ className, ...props }, ref) => (\n <h3\n ref={ref}\n className={cn(\"font-semibold leading-none tracking-tight capitalize\", className)}\n {...props}\n />\n));\nCardTitle.displayName = \"CardTitle\";\n\nconst CardDescription = forwardRefIfNeeded<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => (\n <p\n ref={ref}\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n));\nCardDescription.displayName = \"CardDescription\";\n\nconst CardContent = forwardRefIfNeeded<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div ref={ref} className={cn(\"p-6\", className)} {...props} />\n));\nCardContent.displayName = \"CardContent\";\n\nconst CardSubtitle = forwardRefIfNeeded<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => (\n <h4\n ref={ref}\n className={cn(\"text-sm text-muted-foreground font-bold\", className)}\n {...props}\n />\n));\n\nconst CardFooter = forwardRefIfNeeded<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex items-center p-6 pt-0\", className)}\n {...props}\n />\n));\nCardFooter.displayName = \"CardFooter\";\n\nexport { Card, CardContent, CardDescription, CardFooter, CardHeader, CardSubtitle, CardTitle };\n\n"],"mappings":";AAAA,SAAS,0BAA0B;AAEnC,SAAS,UAAU;AAMjB;AAJF,IAAM,OAAO,mBAGX,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA;AACN,CACD;AACD,KAAK,cAAc;AAEnB,IAAM,aAAa,mBAGjB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW,GAAG,sCAAsC,SAAS;AAAA,IAC5D,GAAG;AAAA;AACN,CACD;AACD,WAAW,cAAc;AAEzB,IAAM,YAAY,mBAGhB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW,GAAG,wDAAwD,SAAS;AAAA,IAC9E,GAAG;AAAA;AACN,CACD;AACD,UAAU,cAAc;AAExB,IAAM,kBAAkB,mBAGtB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW,GAAG,iCAAiC,SAAS;AAAA,IACvD,GAAG;AAAA;AACN,CACD;AACD,gBAAgB,cAAc;AAE9B,IAAM,cAAc,mBAGlB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B,oBAAC,SAAI,KAAU,WAAW,GAAG,OAAO,SAAS,GAAI,GAAG,OAAO,CAC5D;AACD,YAAY,cAAc;AAE1B,IAAM,eAAe,mBAGnB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW,GAAG,2CAA2C,SAAS;AAAA,IACjE,GAAG;AAAA;AACN,CACD;AAED,IAAM,aAAa,mBAGjB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW,GAAG,8BAA8B,SAAS;AAAA,IACpD,GAAG;AAAA;AACN,CACD;AACD,WAAW,cAAc;","names":[]}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
|
|
4
|
+
// src/components/ui/checkbox.tsx
|
|
5
|
+
import { forwardRefIfNeeded } from "@stackframe/stack-shared/dist/utils/react";
|
|
6
|
+
import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
|
|
7
|
+
import { CheckIcon } from "@radix-ui/react-icons";
|
|
8
|
+
import { cn } from "../../lib/utils.js";
|
|
9
|
+
import { jsx } from "react/jsx-runtime";
|
|
10
|
+
var Checkbox = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
11
|
+
CheckboxPrimitive.Root,
|
|
12
|
+
{
|
|
13
|
+
ref,
|
|
14
|
+
className: cn(
|
|
15
|
+
"stack-scope peer h-4 w-4 shrink-0 rounded-sm border border-primary shadow focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",
|
|
16
|
+
className
|
|
17
|
+
),
|
|
18
|
+
...props,
|
|
19
|
+
children: /* @__PURE__ */ jsx(
|
|
20
|
+
CheckboxPrimitive.Indicator,
|
|
21
|
+
{
|
|
22
|
+
className: cn("flex items-center justify-center text-current"),
|
|
23
|
+
children: /* @__PURE__ */ jsx(CheckIcon, { className: "h-4 w-4" })
|
|
24
|
+
}
|
|
25
|
+
)
|
|
26
|
+
}
|
|
27
|
+
));
|
|
28
|
+
Checkbox.displayName = CheckboxPrimitive.Root.displayName;
|
|
29
|
+
export {
|
|
30
|
+
Checkbox
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=checkbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ui/checkbox.tsx"],"sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\nimport * as CheckboxPrimitive from \"@radix-ui/react-checkbox\";\nimport { CheckIcon } from \"@radix-ui/react-icons\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst Checkbox = forwardRefIfNeeded<\n React.ElementRef<typeof CheckboxPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof CheckboxPrimitive.Root>\n>(({ className, ...props }, ref) => (\n <CheckboxPrimitive.Root\n ref={ref}\n className={cn(\n \"stack-scope peer h-4 w-4 shrink-0 rounded-sm border border-primary shadow focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground\",\n className\n )}\n {...props}\n >\n <CheckboxPrimitive.Indicator\n className={cn(\"flex items-center justify-center text-current\")}\n >\n <CheckIcon className=\"h-4 w-4\" />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n));\nCheckbox.displayName = CheckboxPrimitive.Root.displayName;\n\nexport { Checkbox };\n"],"mappings":";;;AAGA,SAAS,0BAA0B;AACnC,YAAY,uBAAuB;AACnC,SAAS,iBAAiB;AAE1B,SAAS,UAAU;AAiBb;AAfN,IAAM,WAAW,mBAGf,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAmB;AAAA,EAAlB;AAAA,IACC;AAAA,IACA,WAAW;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA,IAEJ;AAAA,MAAmB;AAAA,MAAlB;AAAA,QACC,WAAW,GAAG,+CAA+C;AAAA,QAE7D,8BAAC,aAAU,WAAU,WAAU;AAAA;AAAA,IACjC;AAAA;AACF,CACD;AACD,SAAS,cAAgC,uBAAK;","names":[]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
|
|
4
|
+
// src/components/ui/collapsible.tsx
|
|
5
|
+
import * as CollapsiblePrimitive from "@radix-ui/react-collapsible";
|
|
6
|
+
var Collapsible = CollapsiblePrimitive.Root;
|
|
7
|
+
var CollapsibleTrigger2 = CollapsiblePrimitive.CollapsibleTrigger;
|
|
8
|
+
var CollapsibleContent2 = CollapsiblePrimitive.CollapsibleContent;
|
|
9
|
+
export {
|
|
10
|
+
Collapsible,
|
|
11
|
+
CollapsibleContent2 as CollapsibleContent,
|
|
12
|
+
CollapsibleTrigger2 as CollapsibleTrigger
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=collapsible.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ui/collapsible.tsx"],"sourcesContent":["\"use client\";\n\nimport * as CollapsiblePrimitive from \"@radix-ui/react-collapsible\";\n\nconst Collapsible = CollapsiblePrimitive.Root;\n\nconst CollapsibleTrigger = CollapsiblePrimitive.CollapsibleTrigger;\n\nconst CollapsibleContent = CollapsiblePrimitive.CollapsibleContent;\n\nexport { Collapsible, CollapsibleTrigger, CollapsibleContent };\n"],"mappings":";;;AAEA,YAAY,0BAA0B;AAEtC,IAAM,cAAmC;AAEzC,IAAMA,sBAA0C;AAEhD,IAAMC,sBAA0C;","names":["CollapsibleTrigger","CollapsibleContent"]}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
|
|
4
|
+
// src/components/ui/command.tsx
|
|
5
|
+
import { MagnifyingGlassIcon } from "@radix-ui/react-icons";
|
|
6
|
+
import { forwardRefIfNeeded } from "@stackframe/stack-shared/dist/utils/react";
|
|
7
|
+
import { Command as CommandPrimitive } from "cmdk";
|
|
8
|
+
import { cn } from "../../lib/utils.js";
|
|
9
|
+
import { Dialog, DialogBody, DialogContent } from "./dialog.js";
|
|
10
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
11
|
+
var Command = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
12
|
+
CommandPrimitive,
|
|
13
|
+
{
|
|
14
|
+
ref,
|
|
15
|
+
className: cn(
|
|
16
|
+
"stack-scope flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",
|
|
17
|
+
className
|
|
18
|
+
),
|
|
19
|
+
...props
|
|
20
|
+
}
|
|
21
|
+
));
|
|
22
|
+
Command.displayName = CommandPrimitive.displayName;
|
|
23
|
+
var CommandDialog = ({ children, ...props }) => {
|
|
24
|
+
return /* @__PURE__ */ jsx(Dialog, { ...props, children: /* @__PURE__ */ jsx(DialogContent, { className: "overflow-hidden p-0", children: /* @__PURE__ */ jsx(DialogBody, { children: /* @__PURE__ */ jsx(Command, { className: "[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5", children }) }) }) });
|
|
25
|
+
};
|
|
26
|
+
var CommandInput = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsxs("div", { className: "flex items-center border-b px-3", "cmdk-input-wrapper": "", children: [
|
|
27
|
+
/* @__PURE__ */ jsx(MagnifyingGlassIcon, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }),
|
|
28
|
+
/* @__PURE__ */ jsx(
|
|
29
|
+
CommandPrimitive.Input,
|
|
30
|
+
{
|
|
31
|
+
ref,
|
|
32
|
+
className: cn(
|
|
33
|
+
"flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",
|
|
34
|
+
className
|
|
35
|
+
),
|
|
36
|
+
...props
|
|
37
|
+
}
|
|
38
|
+
)
|
|
39
|
+
] }));
|
|
40
|
+
CommandInput.displayName = CommandPrimitive.Input.displayName;
|
|
41
|
+
var CommandList = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
42
|
+
CommandPrimitive.List,
|
|
43
|
+
{
|
|
44
|
+
ref,
|
|
45
|
+
className: cn("max-h-[300px] overflow-y-auto overflow-x-hidden", className),
|
|
46
|
+
...props
|
|
47
|
+
}
|
|
48
|
+
));
|
|
49
|
+
CommandList.displayName = CommandPrimitive.List.displayName;
|
|
50
|
+
var CommandEmpty = forwardRefIfNeeded((props, ref) => /* @__PURE__ */ jsx(
|
|
51
|
+
CommandPrimitive.Empty,
|
|
52
|
+
{
|
|
53
|
+
ref,
|
|
54
|
+
className: "py-6 text-center text-sm",
|
|
55
|
+
...props
|
|
56
|
+
}
|
|
57
|
+
));
|
|
58
|
+
CommandEmpty.displayName = CommandPrimitive.Empty.displayName;
|
|
59
|
+
var CommandGroup = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
60
|
+
CommandPrimitive.Group,
|
|
61
|
+
{
|
|
62
|
+
ref,
|
|
63
|
+
className: cn(
|
|
64
|
+
"overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",
|
|
65
|
+
className
|
|
66
|
+
),
|
|
67
|
+
...props
|
|
68
|
+
}
|
|
69
|
+
));
|
|
70
|
+
CommandGroup.displayName = CommandPrimitive.Group.displayName;
|
|
71
|
+
var CommandSeparator = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
72
|
+
CommandPrimitive.Separator,
|
|
73
|
+
{
|
|
74
|
+
ref,
|
|
75
|
+
className: cn("-mx-1 h-px bg-border", className),
|
|
76
|
+
...props
|
|
77
|
+
}
|
|
78
|
+
));
|
|
79
|
+
CommandSeparator.displayName = CommandPrimitive.Separator.displayName;
|
|
80
|
+
var CommandItem = forwardRefIfNeeded(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
81
|
+
CommandPrimitive.Item,
|
|
82
|
+
{
|
|
83
|
+
ref,
|
|
84
|
+
className: cn(
|
|
85
|
+
"relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none aria-selected:bg-accent aria-selected:text-accent-foreground data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50",
|
|
86
|
+
className
|
|
87
|
+
),
|
|
88
|
+
...props
|
|
89
|
+
}
|
|
90
|
+
));
|
|
91
|
+
CommandItem.displayName = CommandPrimitive.Item.displayName;
|
|
92
|
+
var CommandShortcut = ({
|
|
93
|
+
className,
|
|
94
|
+
...props
|
|
95
|
+
}) => {
|
|
96
|
+
return /* @__PURE__ */ jsx(
|
|
97
|
+
"span",
|
|
98
|
+
{
|
|
99
|
+
className: cn(
|
|
100
|
+
"ml-auto text-xs tracking-widest text-muted-foreground",
|
|
101
|
+
className
|
|
102
|
+
),
|
|
103
|
+
...props
|
|
104
|
+
}
|
|
105
|
+
);
|
|
106
|
+
};
|
|
107
|
+
CommandShortcut.displayName = "CommandShortcut";
|
|
108
|
+
export {
|
|
109
|
+
Command,
|
|
110
|
+
CommandDialog,
|
|
111
|
+
CommandEmpty,
|
|
112
|
+
CommandGroup,
|
|
113
|
+
CommandInput,
|
|
114
|
+
CommandItem,
|
|
115
|
+
CommandList,
|
|
116
|
+
CommandSeparator,
|
|
117
|
+
CommandShortcut
|
|
118
|
+
};
|
|
119
|
+
//# sourceMappingURL=command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ui/command.tsx"],"sourcesContent":["\"use client\";\n\nimport { type DialogProps } from \"@radix-ui/react-dialog\";\nimport { MagnifyingGlassIcon } from \"@radix-ui/react-icons\";\nimport { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\nimport { Command as CommandPrimitive } from \"cmdk\";\nimport React from \"react\";\n\nimport { cn } from \"../../lib/utils\";\nimport { Dialog, DialogBody, DialogContent } from \"./dialog\";\n\nconst Command: React.FC<React.ComponentPropsWithoutRef<typeof CommandPrimitive>> = forwardRefIfNeeded<\n React.ElementRef<typeof CommandPrimitive>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive\n ref={ref}\n className={cn(\n \"stack-scope flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground\",\n className\n )}\n {...props}\n />\n));\nCommand.displayName = CommandPrimitive.displayName;\n\ntype CommandDialogProps = {} & DialogProps\n\nconst CommandDialog = ({ children, ...props }: CommandDialogProps) => {\n return (\n <Dialog {...props}>\n <DialogContent className=\"overflow-hidden p-0\">\n <DialogBody>\n <Command className=\"[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5\">\n {children}\n </Command>\n </DialogBody>\n </DialogContent>\n </Dialog>\n );\n};\n\nconst CommandInput: React.FC<React.ComponentPropsWithoutRef<typeof CommandPrimitive.Input>> = forwardRefIfNeeded<\n React.ElementRef<typeof CommandPrimitive.Input>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Input>\n>(({ className, ...props }, ref) => (\n <div className=\"flex items-center border-b px-3\" cmdk-input-wrapper=\"\">\n <MagnifyingGlassIcon className=\"mr-2 h-4 w-4 shrink-0 opacity-50\" />\n <CommandPrimitive.Input\n ref={ref}\n className={cn(\n \"flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50\",\n className\n )}\n {...props}\n />\n </div>\n));\n\nCommandInput.displayName = CommandPrimitive.Input.displayName;\n\nconst CommandList: React.FC<React.ComponentPropsWithoutRef<typeof CommandPrimitive.List>> = forwardRefIfNeeded<\n React.ElementRef<typeof CommandPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.List>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.List\n ref={ref}\n className={cn(\"max-h-[300px] overflow-y-auto overflow-x-hidden\", className)}\n {...props}\n />\n));\n\nCommandList.displayName = CommandPrimitive.List.displayName;\n\nconst CommandEmpty: React.FC<React.ComponentPropsWithoutRef<typeof CommandPrimitive.Empty>> = forwardRefIfNeeded<\n React.ElementRef<typeof CommandPrimitive.Empty>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Empty>\n>((props, ref) => (\n <CommandPrimitive.Empty\n ref={ref}\n className=\"py-6 text-center text-sm\"\n {...props}\n />\n));\n\nCommandEmpty.displayName = CommandPrimitive.Empty.displayName;\n\nconst CommandGroup: React.FC<React.ComponentPropsWithoutRef<typeof CommandPrimitive.Group>> = forwardRefIfNeeded<\n React.ElementRef<typeof CommandPrimitive.Group>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Group>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Group\n ref={ref}\n className={cn(\n \"overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground\",\n className\n )}\n {...props}\n />\n));\n\nCommandGroup.displayName = CommandPrimitive.Group.displayName;\n\nconst CommandSeparator: React.FC<React.ComponentPropsWithoutRef<typeof CommandPrimitive.Separator>> = forwardRefIfNeeded<\n React.ElementRef<typeof CommandPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Separator\n ref={ref}\n className={cn(\"-mx-1 h-px bg-border\", className)}\n {...props}\n />\n));\nCommandSeparator.displayName = CommandPrimitive.Separator.displayName;\n\nconst CommandItem: React.FC<React.ComponentPropsWithoutRef<typeof CommandPrimitive.Item>> = forwardRefIfNeeded<\n React.ElementRef<typeof CommandPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Item\n ref={ref}\n className={cn(\n \"relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none aria-selected:bg-accent aria-selected:text-accent-foreground data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50\",\n className\n )}\n {...props}\n />\n));\n\nCommandItem.displayName = CommandPrimitive.Item.displayName;\n\nconst CommandShortcut = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLSpanElement>) => {\n return (\n <span\n className={cn(\n \"ml-auto text-xs tracking-widest text-muted-foreground\",\n className\n )}\n {...props}\n />\n );\n};\nCommandShortcut.displayName = \"CommandShortcut\";\n\nexport {\n Command,\n CommandDialog,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n CommandShortcut,\n};\n\n"],"mappings":";;;AAGA,SAAS,2BAA2B;AACpC,SAAS,0BAA0B;AACnC,SAAS,WAAW,wBAAwB;AAG5C,SAAS,UAAU;AACnB,SAAS,QAAQ,YAAY,qBAAqB;AAMhD,cA+BA,YA/BA;AAJF,IAAM,UAA6E,mBAGjF,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC;AAAA;AAAA,IACC;AAAA,IACA,WAAW;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA;AACN,CACD;AACD,QAAQ,cAAc,iBAAiB;AAIvC,IAAM,gBAAgB,CAAC,EAAE,UAAU,GAAG,MAAM,MAA0B;AACpE,SACE,oBAAC,UAAQ,GAAG,OACV,8BAAC,iBAAc,WAAU,uBACvB,8BAAC,cACC,8BAAC,WAAQ,WAAU,+WAChB,UACH,GACF,GACF,GACF;AAEJ;AAEA,IAAM,eAAwF,mBAG5F,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B,qBAAC,SAAI,WAAU,mCAAkC,sBAAmB,IAClE;AAAA,sBAAC,uBAAoB,WAAU,oCAAmC;AAAA,EAClE;AAAA,IAAC,iBAAiB;AAAA,IAAjB;AAAA,MACC;AAAA,MACA,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAAA,GACF,CACD;AAED,aAAa,cAAc,iBAAiB,MAAM;AAElD,IAAM,cAAsF,mBAG1F,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC,iBAAiB;AAAA,EAAjB;AAAA,IACC;AAAA,IACA,WAAW,GAAG,mDAAmD,SAAS;AAAA,IACzE,GAAG;AAAA;AACN,CACD;AAED,YAAY,cAAc,iBAAiB,KAAK;AAEhD,IAAM,eAAwF,mBAG5F,CAAC,OAAO,QACR;AAAA,EAAC,iBAAiB;AAAA,EAAjB;AAAA,IACC;AAAA,IACA,WAAU;AAAA,IACT,GAAG;AAAA;AACN,CACD;AAED,aAAa,cAAc,iBAAiB,MAAM;AAElD,IAAM,eAAwF,mBAG5F,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC,iBAAiB;AAAA,EAAjB;AAAA,IACC;AAAA,IACA,WAAW;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA;AACN,CACD;AAED,aAAa,cAAc,iBAAiB,MAAM;AAElD,IAAM,mBAAgG,mBAGpG,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC,iBAAiB;AAAA,EAAjB;AAAA,IACC;AAAA,IACA,WAAW,GAAG,wBAAwB,SAAS;AAAA,IAC9C,GAAG;AAAA;AACN,CACD;AACD,iBAAiB,cAAc,iBAAiB,UAAU;AAE1D,IAAM,cAAsF,mBAG1F,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B;AAAA,EAAC,iBAAiB;AAAA,EAAjB;AAAA,IACC;AAAA,IACA,WAAW;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAAA,IACC,GAAG;AAAA;AACN,CACD;AAED,YAAY,cAAc,iBAAiB,KAAK;AAEhD,IAAM,kBAAkB,CAAC;AAAA,EACvB;AAAA,EACA,GAAG;AACL,MAA6C;AAC3C,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AACA,gBAAgB,cAAc;","names":[]}
|