@codefast/ui 0.3.13-canary.3 → 0.3.13-canary.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/dist/components/accordion.d.mts +37 -0
- package/dist/components/accordion.mjs +53 -0
- package/dist/components/alert-dialog.d.mts +74 -0
- package/dist/components/alert-dialog.mjs +92 -0
- package/dist/components/alert.d.mts +30 -0
- package/dist/components/alert.mjs +49 -0
- package/dist/components/aspect-ratio.d.mts +10 -0
- package/dist/components/aspect-ratio.mjs +12 -0
- package/dist/components/avatar.d.mts +21 -0
- package/dist/components/avatar.mjs +28 -0
- package/dist/components/badge.d.mts +24 -0
- package/dist/components/badge.mjs +56 -0
- package/dist/components/breadcrumb.d.mts +44 -0
- package/dist/components/breadcrumb.mjs +67 -0
- package/dist/components/button-group.d.mts +34 -0
- package/dist/components/button-group.mjs +53 -0
- package/dist/components/button.d.mts +38 -0
- package/dist/components/button.mjs +99 -0
- package/dist/components/calendar.d.mts +27 -0
- package/dist/components/calendar.mjs +114 -0
- package/dist/components/card.d.mts +41 -0
- package/dist/components/card.mjs +55 -0
- package/dist/components/carousel.d.mts +68 -0
- package/dist/components/carousel.mjs +135 -0
- package/dist/components/chart.d.mts +93 -0
- package/dist/components/chart.mjs +189 -0
- package/dist/components/checkbox-cards.d.mts +17 -0
- package/dist/components/checkbox-cards.mjs +30 -0
- package/dist/components/checkbox-group.d.mts +16 -0
- package/dist/components/checkbox-group.mjs +27 -0
- package/dist/components/checkbox.d.mts +11 -0
- package/dist/components/checkbox.mjs +20 -0
- package/dist/components/collapsible.d.mts +18 -0
- package/dist/components/collapsible.mjs +24 -0
- package/dist/components/command.d.mts +57 -0
- package/dist/components/command.mjs +92 -0
- package/dist/components/context-menu.d.mts +91 -0
- package/dist/components/context-menu.mjs +122 -0
- package/dist/components/dialog.d.mts +65 -0
- package/dist/components/dialog.mjs +93 -0
- package/dist/components/drawer.d.mts +65 -0
- package/dist/components/drawer.mjs +78 -0
- package/dist/components/dropdown-menu.d.mts +92 -0
- package/dist/components/dropdown-menu.mjs +129 -0
- package/dist/components/empty.d.mts +44 -0
- package/dist/components/empty.mjs +64 -0
- package/dist/components/field.d.mts +79 -0
- package/dist/components/field.mjs +132 -0
- package/dist/components/form.d.mts +48 -0
- package/dist/components/form.mjs +92 -0
- package/dist/components/hover-card.d.mts +26 -0
- package/dist/components/hover-card.mjs +35 -0
- package/dist/components/input-group.d.mts +61 -0
- package/dist/components/input-group.mjs +142 -0
- package/dist/components/input-number.d.mts +28 -0
- package/dist/components/input-number.mjs +61 -0
- package/dist/components/input-otp.d.mts +29 -0
- package/dist/components/input-otp.mjs +48 -0
- package/dist/components/input-password.d.mts +13 -0
- package/dist/components/input-password.mjs +38 -0
- package/dist/components/input-search.d.mts +20 -0
- package/dist/components/input-search.mjs +50 -0
- package/dist/components/input.d.mts +11 -0
- package/dist/components/input.mjs +14 -0
- package/dist/components/item.d.mts +82 -0
- package/dist/components/item.mjs +137 -0
- package/dist/components/kbd.d.mts +15 -0
- package/dist/components/kbd.mjs +19 -0
- package/dist/components/label.d.mts +11 -0
- package/dist/components/label.mjs +14 -0
- package/dist/components/menubar.d.mts +100 -0
- package/dist/components/menubar.mjs +133 -0
- package/dist/components/native-select.d.mts +19 -0
- package/dist/components/native-select.mjs +34 -0
- package/dist/components/navigation-menu.d.mts +44 -0
- package/dist/components/navigation-menu.mjs +79 -0
- package/dist/components/pagination.d.mts +46 -0
- package/dist/components/pagination.mjs +71 -0
- package/dist/components/popover.d.mts +30 -0
- package/dist/components/popover.mjs +41 -0
- package/dist/components/progress-circle.d.mts +124 -0
- package/dist/components/progress-circle.mjs +120 -0
- package/dist/components/progress.d.mts +12 -0
- package/dist/components/progress.mjs +19 -0
- package/dist/components/{radio-cards.d.ts → radio-cards.d.mts} +10 -5
- package/dist/components/radio-cards.mjs +29 -0
- package/dist/components/radio-group.d.mts +16 -0
- package/dist/components/radio-group.mjs +25 -0
- package/dist/components/radio.d.mts +14 -0
- package/dist/components/radio.mjs +16 -0
- package/dist/components/resizable.d.mts +23 -0
- package/dist/components/resizable.mjs +32 -0
- package/dist/components/scroll-area.d.mts +40 -0
- package/dist/components/scroll-area.mjs +101 -0
- package/dist/components/select.d.mts +62 -0
- package/dist/components/select.mjs +101 -0
- package/dist/components/separator.d.mts +32 -0
- package/dist/components/separator.mjs +45 -0
- package/dist/components/sheet.d.mts +75 -0
- package/dist/components/sheet.mjs +134 -0
- package/dist/components/sidebar.d.mts +195 -0
- package/dist/components/sidebar.mjs +375 -0
- package/dist/components/skeleton.d.mts +10 -0
- package/dist/components/skeleton.mjs +12 -0
- package/dist/components/slider.d.mts +15 -0
- package/dist/components/slider.mjs +40 -0
- package/dist/components/sonner.d.mts +10 -0
- package/dist/components/sonner.mjs +21 -0
- package/dist/components/spinner.d.mts +14 -0
- package/dist/components/spinner.mjs +40 -0
- package/dist/components/switch.d.mts +11 -0
- package/dist/components/switch.mjs +18 -0
- package/dist/components/table.d.mts +45 -0
- package/dist/components/table.mjs +65 -0
- package/dist/components/tabs.d.mts +26 -0
- package/dist/components/tabs.mjs +35 -0
- package/dist/components/textarea.d.mts +10 -0
- package/dist/components/textarea.mjs +12 -0
- package/dist/components/toggle-group.d.mts +30 -0
- package/dist/components/toggle-group.mjs +53 -0
- package/dist/components/toggle.d.mts +28 -0
- package/dist/components/toggle.mjs +53 -0
- package/dist/components/tooltip.d.mts +30 -0
- package/dist/components/tooltip.mjs +42 -0
- package/dist/hooks/{use-animated-value.d.ts → use-animated-value.d.mts} +4 -2
- package/dist/hooks/use-animated-value.mjs +62 -0
- package/dist/hooks/{use-copy-to-clipboard.d.ts → use-copy-to-clipboard.d.mts} +11 -6
- package/dist/hooks/use-copy-to-clipboard.mjs +43 -0
- package/dist/hooks/{use-is-mobile.d.ts → use-is-mobile.d.mts} +4 -2
- package/dist/hooks/use-is-mobile.mjs +26 -0
- package/dist/hooks/{use-media-query.d.ts → use-media-query.d.mts} +4 -2
- package/dist/hooks/use-media-query.mjs +50 -0
- package/dist/hooks/{use-mutation-observer.d.ts → use-mutation-observer.d.mts} +6 -3
- package/dist/hooks/use-mutation-observer.mjs +41 -0
- package/dist/hooks/use-pagination.d.mts +44 -0
- package/dist/hooks/use-pagination.mjs +107 -0
- package/dist/index.d.mts +69 -0
- package/dist/index.mjs +69 -0
- package/dist/lib/utils.d.mts +13 -0
- package/dist/lib/utils.mjs +10 -0
- package/dist/node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/clsx.d.mts +6 -0
- package/dist/primitives/checkbox-group.d.mts +144 -0
- package/dist/primitives/checkbox-group.mjs +126 -0
- package/dist/primitives/input-number.d.mts +73 -0
- package/dist/primitives/input-number.mjs +514 -0
- package/dist/primitives/input.d.mts +72 -0
- package/dist/primitives/input.mjs +75 -0
- package/dist/primitives/progress-circle.d.mts +146 -0
- package/dist/primitives/progress-circle.mjs +178 -0
- package/package.json +164 -170
- package/dist/components/accordion.d.ts +0 -19
- package/dist/components/accordion.d.ts.map +0 -1
- package/dist/components/accordion.js +0 -26
- package/dist/components/alert-dialog.d.ts +0 -39
- package/dist/components/alert-dialog.d.ts.map +0 -1
- package/dist/components/alert-dialog.js +0 -39
- package/dist/components/alert.d.ts +0 -19
- package/dist/components/alert.d.ts.map +0 -1
- package/dist/components/alert.js +0 -41
- package/dist/components/aspect-ratio.d.ts +0 -7
- package/dist/components/aspect-ratio.d.ts.map +0 -1
- package/dist/components/aspect-ratio.js +0 -10
- package/dist/components/avatar.d.ts +0 -11
- package/dist/components/avatar.d.ts.map +0 -1
- package/dist/components/avatar.js +0 -17
- package/dist/components/badge.d.ts +0 -18
- package/dist/components/badge.d.ts.map +0 -1
- package/dist/components/badge.js +0 -59
- package/dist/components/breadcrumb.d.ts +0 -22
- package/dist/components/breadcrumb.d.ts.map +0 -1
- package/dist/components/breadcrumb.js +0 -31
- package/dist/components/button-group.d.ts +0 -20
- package/dist/components/button-group.d.ts.map +0 -1
- package/dist/components/button-group.js +0 -48
- package/dist/components/button.d.ts +0 -29
- package/dist/components/button.d.ts.map +0 -1
- package/dist/components/button.js +0 -92
- package/dist/components/calendar.d.ts +0 -13
- package/dist/components/calendar.d.ts.map +0 -1
- package/dist/components/calendar.js +0 -104
- package/dist/components/card.d.ts +0 -18
- package/dist/components/card.d.ts.map +0 -1
- package/dist/components/card.js +0 -27
- package/dist/components/carousel.d.ts +0 -38
- package/dist/components/carousel.d.ts.map +0 -1
- package/dist/components/carousel.js +0 -103
- package/dist/components/chart.d.ts +0 -58
- package/dist/components/chart.d.ts.map +0 -1
- package/dist/components/chart.js +0 -198
- package/dist/components/checkbox-cards.d.ts +0 -11
- package/dist/components/checkbox-cards.d.ts.map +0 -1
- package/dist/components/checkbox-cards.js +0 -16
- package/dist/components/checkbox-group.d.ts +0 -9
- package/dist/components/checkbox-group.d.ts.map +0 -1
- package/dist/components/checkbox-group.js +0 -15
- package/dist/components/checkbox.d.ts +0 -7
- package/dist/components/checkbox.d.ts.map +0 -1
- package/dist/components/checkbox.js +0 -12
- package/dist/components/collapsible.d.ts +0 -11
- package/dist/components/collapsible.d.ts.map +0 -1
- package/dist/components/collapsible.js +0 -16
- package/dist/components/command.d.ts +0 -26
- package/dist/components/command.d.ts.map +0 -1
- package/dist/components/command.js +0 -41
- package/dist/components/context-menu.d.ts +0 -42
- package/dist/components/context-menu.d.ts.map +0 -1
- package/dist/components/context-menu.js +0 -54
- package/dist/components/dialog.d.ts +0 -35
- package/dist/components/dialog.d.ts.map +0 -1
- package/dist/components/dialog.js +0 -41
- package/dist/components/drawer.d.ts +0 -34
- package/dist/components/drawer.d.ts.map +0 -1
- package/dist/components/drawer.js +0 -36
- package/dist/components/dropdown-menu.d.ts +0 -42
- package/dist/components/dropdown-menu.d.ts.map +0 -1
- package/dist/components/dropdown-menu.js +0 -54
- package/dist/components/empty.d.ts +0 -23
- package/dist/components/empty.d.ts.map +0 -1
- package/dist/components/empty.js +0 -47
- package/dist/components/field.d.ts +0 -42
- package/dist/components/field.d.ts.map +0 -1
- package/dist/components/field.js +0 -85
- package/dist/components/form.d.ts +0 -27
- package/dist/components/form.d.ts.map +0 -1
- package/dist/components/form.js +0 -76
- package/dist/components/hover-card.d.ts +0 -13
- package/dist/components/hover-card.d.ts.map +0 -1
- package/dist/components/hover-card.js +0 -20
- package/dist/components/input-group.d.ts +0 -37
- package/dist/components/input-group.d.ts.map +0 -1
- package/dist/components/input-group.js +0 -127
- package/dist/components/input-number.d.ts +0 -8
- package/dist/components/input-number.d.ts.map +0 -1
- package/dist/components/input-number.js +0 -20
- package/dist/components/input-otp.d.ts +0 -16
- package/dist/components/input-otp.d.ts.map +0 -1
- package/dist/components/input-otp.js +0 -25
- package/dist/components/input-password.d.ts +0 -7
- package/dist/components/input-password.d.ts.map +0 -1
- package/dist/components/input-password.js +0 -17
- package/dist/components/input-search.d.ts +0 -11
- package/dist/components/input-search.d.ts.map +0 -1
- package/dist/components/input-search.js +0 -22
- package/dist/components/input.d.ts +0 -6
- package/dist/components/input.d.ts.map +0 -1
- package/dist/components/input.js +0 -10
- package/dist/components/item.d.ts +0 -46
- package/dist/components/item.d.ts.map +0 -1
- package/dist/components/item.js +0 -94
- package/dist/components/kbd.d.ts +0 -8
- package/dist/components/kbd.d.ts.map +0 -1
- package/dist/components/kbd.js +0 -12
- package/dist/components/label.d.ts +0 -7
- package/dist/components/label.d.ts.map +0 -1
- package/dist/components/label.js +0 -11
- package/dist/components/menubar.d.ts +0 -44
- package/dist/components/menubar.d.ts.map +0 -1
- package/dist/components/menubar.js +0 -57
- package/dist/components/native-select.d.ts +0 -10
- package/dist/components/native-select.d.ts.map +0 -1
- package/dist/components/native-select.js +0 -16
- package/dist/components/navigation-menu.d.ts +0 -21
- package/dist/components/navigation-menu.d.ts.map +0 -1
- package/dist/components/navigation-menu.js +0 -43
- package/dist/components/pagination.d.ts +0 -26
- package/dist/components/pagination.d.ts.map +0 -1
- package/dist/components/pagination.js +0 -29
- package/dist/components/popover.d.ts +0 -15
- package/dist/components/popover.d.ts.map +0 -1
- package/dist/components/popover.js +0 -23
- package/dist/components/progress-circle.d.ts +0 -107
- package/dist/components/progress-circle.d.ts.map +0 -1
- package/dist/components/progress-circle.js +0 -83
- package/dist/components/progress.d.ts +0 -7
- package/dist/components/progress.d.ts.map +0 -1
- package/dist/components/progress.js +0 -13
- package/dist/components/radio-cards.d.ts.map +0 -1
- package/dist/components/radio-cards.js +0 -15
- package/dist/components/radio-group.d.ts +0 -9
- package/dist/components/radio-group.d.ts.map +0 -1
- package/dist/components/radio-group.js +0 -14
- package/dist/components/radio.d.ts +0 -8
- package/dist/components/radio.d.ts.map +0 -1
- package/dist/components/radio.js +0 -11
- package/dist/components/resizable.d.ts +0 -13
- package/dist/components/resizable.d.ts.map +0 -1
- package/dist/components/resizable.js +0 -18
- package/dist/components/scroll-area.d.ts +0 -28
- package/dist/components/scroll-area.d.ts.map +0 -1
- package/dist/components/scroll-area.js +0 -77
- package/dist/components/select.d.ts +0 -29
- package/dist/components/select.d.ts.map +0 -1
- package/dist/components/select.js +0 -49
- package/dist/components/separator.d.ts +0 -23
- package/dist/components/separator.d.ts.map +0 -1
- package/dist/components/separator.js +0 -36
- package/dist/components/sheet.d.ts +0 -43
- package/dist/components/sheet.d.ts.map +0 -1
- package/dist/components/sheet.js +0 -90
- package/dist/components/sidebar.d.ts +0 -102
- package/dist/components/sidebar.d.ts.map +0 -1
- package/dist/components/sidebar.js +0 -241
- package/dist/components/skeleton.d.ts +0 -6
- package/dist/components/skeleton.d.ts.map +0 -1
- package/dist/components/skeleton.js +0 -9
- package/dist/components/slider.d.ts +0 -7
- package/dist/components/slider.d.ts.map +0 -1
- package/dist/components/slider.js +0 -18
- package/dist/components/sonner.d.ts +0 -8
- package/dist/components/sonner.d.ts.map +0 -1
- package/dist/components/sonner.js +0 -18
- package/dist/components/spinner.d.ts +0 -8
- package/dist/components/spinner.d.ts.map +0 -1
- package/dist/components/spinner.js +0 -27
- package/dist/components/switch.d.ts +0 -7
- package/dist/components/switch.d.ts.map +0 -1
- package/dist/components/switch.js +0 -11
- package/dist/components/table.d.ts +0 -20
- package/dist/components/table.d.ts.map +0 -1
- package/dist/components/table.js +0 -30
- package/dist/components/tabs.d.ts +0 -13
- package/dist/components/tabs.d.ts.map +0 -1
- package/dist/components/tabs.js +0 -20
- package/dist/components/textarea.d.ts +0 -6
- package/dist/components/textarea.d.ts.map +0 -1
- package/dist/components/textarea.js +0 -9
- package/dist/components/toggle-group.d.ts +0 -16
- package/dist/components/toggle-group.d.ts.map +0 -1
- package/dist/components/toggle-group.js +0 -35
- package/dist/components/toggle.d.ts +0 -21
- package/dist/components/toggle.d.ts.map +0 -1
- package/dist/components/toggle.js +0 -49
- package/dist/components/tooltip.d.ts +0 -15
- package/dist/components/tooltip.d.ts.map +0 -1
- package/dist/components/tooltip.js +0 -23
- package/dist/hooks/use-animated-value.d.ts.map +0 -1
- package/dist/hooks/use-animated-value.js +0 -71
- package/dist/hooks/use-copy-to-clipboard.d.ts.map +0 -1
- package/dist/hooks/use-copy-to-clipboard.js +0 -46
- package/dist/hooks/use-is-mobile.d.ts.map +0 -1
- package/dist/hooks/use-is-mobile.js +0 -23
- package/dist/hooks/use-media-query.d.ts.map +0 -1
- package/dist/hooks/use-media-query.js +0 -53
- package/dist/hooks/use-mutation-observer.d.ts.map +0 -1
- package/dist/hooks/use-mutation-observer.js +0 -40
- package/dist/hooks/use-pagination.d.ts +0 -37
- package/dist/hooks/use-pagination.d.ts.map +0 -1
- package/dist/hooks/use-pagination.js +0 -107
- package/dist/index.d.ts +0 -131
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -68
- package/dist/lib/utils.d.ts +0 -10
- package/dist/lib/utils.d.ts.map +0 -1
- package/dist/lib/utils.js +0 -10
- package/dist/primitives/checkbox-group.d.ts +0 -123
- package/dist/primitives/checkbox-group.d.ts.map +0 -1
- package/dist/primitives/checkbox-group.js +0 -112
- package/dist/primitives/input-number.d.ts +0 -63
- package/dist/primitives/input-number.d.ts.map +0 -1
- package/dist/primitives/input-number.js +0 -458
- package/dist/primitives/input.d.ts +0 -67
- package/dist/primitives/input.d.ts.map +0 -1
- package/dist/primitives/input.js +0 -76
- package/dist/primitives/progress-circle.d.ts +0 -116
- package/dist/primitives/progress-circle.d.ts.map +0 -1
- package/dist/primitives/progress-circle.js +0 -163
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn, tv } from "../lib/utils.mjs";
|
|
3
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
|
+
import { createContextScope } from "@radix-ui/react-context";
|
|
5
|
+
import * as ScrollAreaPrimitive from "@radix-ui/react-scroll-area";
|
|
6
|
+
//#region src/components/scroll-area.tsx
|
|
7
|
+
const scrollAreaScrollbarVariants = tv({
|
|
8
|
+
base: [
|
|
9
|
+
"flex",
|
|
10
|
+
"p-px",
|
|
11
|
+
"touch-none transition-colors select-none"
|
|
12
|
+
],
|
|
13
|
+
compoundVariants: [
|
|
14
|
+
{
|
|
15
|
+
className: "w-1.5",
|
|
16
|
+
orientation: "vertical",
|
|
17
|
+
size: "sm"
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
className: "w-2",
|
|
21
|
+
orientation: "vertical",
|
|
22
|
+
size: "md"
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
className: "w-2.5",
|
|
26
|
+
orientation: "vertical",
|
|
27
|
+
size: "lg"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
className: "h-1.5",
|
|
31
|
+
orientation: "horizontal",
|
|
32
|
+
size: "sm"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
className: "h-2",
|
|
36
|
+
orientation: "horizontal",
|
|
37
|
+
size: "md"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
className: "h-2.5",
|
|
41
|
+
orientation: "horizontal",
|
|
42
|
+
size: "lg"
|
|
43
|
+
}
|
|
44
|
+
],
|
|
45
|
+
defaultVariants: {
|
|
46
|
+
orientation: "vertical",
|
|
47
|
+
size: "md"
|
|
48
|
+
},
|
|
49
|
+
variants: {
|
|
50
|
+
orientation: {
|
|
51
|
+
horizontal: ["w-full flex-col", "border-t border-t-transparent"],
|
|
52
|
+
vertical: ["h-full flex-row", "border-l border-l-transparent"]
|
|
53
|
+
},
|
|
54
|
+
size: {
|
|
55
|
+
none: "",
|
|
56
|
+
sm: "",
|
|
57
|
+
md: "",
|
|
58
|
+
lg: ""
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
const SCROLL_AREA_NAME = "ScrollArea";
|
|
63
|
+
const [createScrollAreaContext] = createContextScope(SCROLL_AREA_NAME);
|
|
64
|
+
const [ScrollAreaContextProvider, useScrollAreaContext] = createScrollAreaContext(SCROLL_AREA_NAME);
|
|
65
|
+
function ScrollArea({ __scopeScrollArea, children, className, size, ...props }) {
|
|
66
|
+
return /* @__PURE__ */ jsx(ScrollAreaContextProvider, {
|
|
67
|
+
scope: __scopeScrollArea,
|
|
68
|
+
size,
|
|
69
|
+
children: /* @__PURE__ */ jsxs(ScrollAreaPrimitive.Root, {
|
|
70
|
+
className: cn("relative", className),
|
|
71
|
+
"data-slot": "scroll-area",
|
|
72
|
+
...props,
|
|
73
|
+
children: [
|
|
74
|
+
/* @__PURE__ */ jsx(ScrollAreaPrimitive.Viewport, {
|
|
75
|
+
className: cn("size-full", "rounded-[inherit] ring-ring/50 outline-ring", "transition", "focus-visible:ring-4 focus-visible:outline-1"),
|
|
76
|
+
"data-slot": "scroll-area-viewport",
|
|
77
|
+
children
|
|
78
|
+
}),
|
|
79
|
+
/* @__PURE__ */ jsx(ScrollAreaScrollbar, { orientation: "vertical" }),
|
|
80
|
+
/* @__PURE__ */ jsx(ScrollAreaScrollbar, { orientation: "horizontal" }),
|
|
81
|
+
/* @__PURE__ */ jsx(ScrollAreaPrimitive.Corner, {})
|
|
82
|
+
]
|
|
83
|
+
})
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
function ScrollAreaScrollbar({ __scopeScrollArea, className, orientation, ...props }) {
|
|
87
|
+
const { size } = useScrollAreaContext(SCROLL_AREA_NAME, __scopeScrollArea);
|
|
88
|
+
return /* @__PURE__ */ jsx(ScrollAreaPrimitive.Scrollbar, {
|
|
89
|
+
className: scrollAreaScrollbarVariants({
|
|
90
|
+
className,
|
|
91
|
+
orientation,
|
|
92
|
+
size
|
|
93
|
+
}),
|
|
94
|
+
"data-slot": "scroll-area-scrollbar",
|
|
95
|
+
orientation,
|
|
96
|
+
...props,
|
|
97
|
+
children: /* @__PURE__ */ jsx(ScrollAreaPrimitive.ScrollAreaThumb, { className: cn("relative flex-1", "rounded-full", "bg-border") })
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
//#endregion
|
|
101
|
+
export { ScrollArea, ScrollAreaScrollbar, scrollAreaScrollbarVariants };
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { VariantProps } from "../lib/utils.mjs";
|
|
2
|
+
import { buttonVariants } from "./button.mjs";
|
|
3
|
+
import { ComponentProps, JSX } from "react";
|
|
4
|
+
import * as SelectPrimitive from "@radix-ui/react-select";
|
|
5
|
+
|
|
6
|
+
//#region src/components/select.d.ts
|
|
7
|
+
type SelectProps = ComponentProps<typeof SelectPrimitive.Root>;
|
|
8
|
+
declare function Select({
|
|
9
|
+
...props
|
|
10
|
+
}: SelectProps): JSX.Element;
|
|
11
|
+
type SelectGroupProps = ComponentProps<typeof SelectPrimitive.Group>;
|
|
12
|
+
declare function SelectGroup({
|
|
13
|
+
...props
|
|
14
|
+
}: SelectGroupProps): JSX.Element;
|
|
15
|
+
type SelectValueProps = ComponentProps<typeof SelectPrimitive.Value>;
|
|
16
|
+
declare function SelectValue({
|
|
17
|
+
...props
|
|
18
|
+
}: SelectValueProps): JSX.Element;
|
|
19
|
+
interface SelectTriggerProps extends ComponentProps<typeof SelectPrimitive.Trigger> {
|
|
20
|
+
size?: VariantProps<typeof buttonVariants>["size"];
|
|
21
|
+
}
|
|
22
|
+
declare function SelectTrigger({
|
|
23
|
+
children,
|
|
24
|
+
className,
|
|
25
|
+
size,
|
|
26
|
+
...props
|
|
27
|
+
}: SelectTriggerProps): JSX.Element;
|
|
28
|
+
type SelectScrollUpButtonProps = ComponentProps<typeof SelectPrimitive.ScrollUpButton>;
|
|
29
|
+
declare function SelectScrollUpButton({
|
|
30
|
+
className,
|
|
31
|
+
...props
|
|
32
|
+
}: SelectScrollUpButtonProps): JSX.Element;
|
|
33
|
+
type SelectScrollDownButtonProps = ComponentProps<typeof SelectPrimitive.ScrollDownButton>;
|
|
34
|
+
declare function SelectScrollDownButton({
|
|
35
|
+
className,
|
|
36
|
+
...props
|
|
37
|
+
}: SelectScrollDownButtonProps): JSX.Element;
|
|
38
|
+
type SelectContentProps = ComponentProps<typeof SelectPrimitive.Content>;
|
|
39
|
+
declare function SelectContent({
|
|
40
|
+
children,
|
|
41
|
+
className,
|
|
42
|
+
position,
|
|
43
|
+
...props
|
|
44
|
+
}: SelectContentProps): JSX.Element;
|
|
45
|
+
type SelectLabelProps = ComponentProps<typeof SelectPrimitive.Label>;
|
|
46
|
+
declare function SelectLabel({
|
|
47
|
+
className,
|
|
48
|
+
...props
|
|
49
|
+
}: SelectLabelProps): JSX.Element;
|
|
50
|
+
type SelectItemProps = ComponentProps<typeof SelectPrimitive.Item>;
|
|
51
|
+
declare function SelectItem({
|
|
52
|
+
children,
|
|
53
|
+
className,
|
|
54
|
+
...props
|
|
55
|
+
}: SelectItemProps): JSX.Element;
|
|
56
|
+
type SelectSeparatorProps = ComponentProps<typeof SelectPrimitive.Separator>;
|
|
57
|
+
declare function SelectSeparator({
|
|
58
|
+
className,
|
|
59
|
+
...props
|
|
60
|
+
}: SelectSeparatorProps): JSX.Element;
|
|
61
|
+
//#endregion
|
|
62
|
+
export { Select, SelectContent, type SelectContentProps, SelectGroup, type SelectGroupProps, SelectItem, type SelectItemProps, SelectLabel, type SelectLabelProps, type SelectProps, SelectScrollDownButton, type SelectScrollDownButtonProps, SelectScrollUpButton, type SelectScrollUpButtonProps, SelectSeparator, type SelectSeparatorProps, SelectTrigger, type SelectTriggerProps, SelectValue, type SelectValueProps };
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn } from "../lib/utils.mjs";
|
|
3
|
+
import { buttonVariants } from "./button.mjs";
|
|
4
|
+
import { CheckIcon, ChevronDownIcon, ChevronUpIcon } from "lucide-react";
|
|
5
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import * as SelectPrimitive from "@radix-ui/react-select";
|
|
7
|
+
//#region src/components/select.tsx
|
|
8
|
+
function Select({ ...props }) {
|
|
9
|
+
return /* @__PURE__ */ jsx(SelectPrimitive.Root, {
|
|
10
|
+
"data-slot": "select",
|
|
11
|
+
...props
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
function SelectGroup({ ...props }) {
|
|
15
|
+
return /* @__PURE__ */ jsx(SelectPrimitive.Group, {
|
|
16
|
+
"data-slot": "select-group",
|
|
17
|
+
...props
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
function SelectValue({ ...props }) {
|
|
21
|
+
return /* @__PURE__ */ jsx(SelectPrimitive.Value, {
|
|
22
|
+
"data-slot": "select-value",
|
|
23
|
+
...props
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
function SelectTrigger({ children, className, size, ...props }) {
|
|
27
|
+
return /* @__PURE__ */ jsxs(SelectPrimitive.Trigger, {
|
|
28
|
+
className: buttonVariants({
|
|
29
|
+
className: ["[&_svg:not([class*='text-'])]:text-muted-foreground focus:ring-ring/50 focus:border-ring w-fit justify-between px-3 font-normal focus:ring-3 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 *:data-[slot=select-value]:truncate", className],
|
|
30
|
+
size,
|
|
31
|
+
variant: "outline"
|
|
32
|
+
}),
|
|
33
|
+
"data-size": size,
|
|
34
|
+
"data-slot": "select-trigger",
|
|
35
|
+
...props,
|
|
36
|
+
children: [children, /* @__PURE__ */ jsx(SelectPrimitive.Icon, {
|
|
37
|
+
asChild: true,
|
|
38
|
+
className: cn("size-4 shrink-0", "opacity-50"),
|
|
39
|
+
children: /* @__PURE__ */ jsx(ChevronDownIcon, {})
|
|
40
|
+
})]
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
function SelectScrollUpButton({ className, ...props }) {
|
|
44
|
+
return /* @__PURE__ */ jsx(SelectPrimitive.ScrollUpButton, {
|
|
45
|
+
className: cn("flex items-center justify-center", "py-1", "text-muted-foreground", className),
|
|
46
|
+
"data-slot": "select-scroll-up-button",
|
|
47
|
+
...props,
|
|
48
|
+
children: /* @__PURE__ */ jsx(ChevronUpIcon, { size: 16 })
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
function SelectScrollDownButton({ className, ...props }) {
|
|
52
|
+
return /* @__PURE__ */ jsx(SelectPrimitive.ScrollDownButton, {
|
|
53
|
+
className: cn("flex items-center justify-center", "py-1", "text-muted-foreground", className),
|
|
54
|
+
"data-slot": "select-scroll-down-button",
|
|
55
|
+
...props,
|
|
56
|
+
children: /* @__PURE__ */ jsx(ChevronDownIcon, { size: 16 })
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
function SelectContent({ children, className, position = "popper", ...props }) {
|
|
60
|
+
return /* @__PURE__ */ jsx(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs(SelectPrimitive.Content, {
|
|
61
|
+
className: cn("relative z-50", "max-h-(--radix-select-content-available-height) min-w-32 overflow-hidden", "rounded-lg border", "bg-popover text-popover-foreground shadow-lg", "ease-ui data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95", "data-open:data-side-top:slide-in-from-bottom-2", "data-open:data-side-right:slide-in-from-left-2", "data-open:data-side-bottom:slide-in-from-top-2", "data-open:data-side-left:slide-in-from-right-2", "data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", "data-closed:data-side-top:slide-out-to-bottom-2", "data-closed:data-side-right:slide-out-to-left-2", "data-closed:data-side-bottom:slide-out-to-top-2", "data-closed:data-side-left:slide-out-to-right-2", "origin-(--radix-select-content-transform-origin)", position === "popper" && "data-side-top:-translate-y-1 data-side-right:translate-x-1 data-side-bottom:translate-y-1 data-side-left:-translate-x-1", className),
|
|
62
|
+
"data-slot": "select-content",
|
|
63
|
+
position,
|
|
64
|
+
...props,
|
|
65
|
+
children: [
|
|
66
|
+
/* @__PURE__ */ jsx(SelectScrollUpButton, {}),
|
|
67
|
+
/* @__PURE__ */ jsx(SelectPrimitive.Viewport, {
|
|
68
|
+
className: cn("p-1", position === "popper" && "h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width) scroll-my-1"),
|
|
69
|
+
children
|
|
70
|
+
}),
|
|
71
|
+
/* @__PURE__ */ jsx(SelectScrollDownButton, {})
|
|
72
|
+
]
|
|
73
|
+
}) });
|
|
74
|
+
}
|
|
75
|
+
function SelectLabel({ className, ...props }) {
|
|
76
|
+
return /* @__PURE__ */ jsx(SelectPrimitive.Label, {
|
|
77
|
+
className: cn("flex items-center gap-x-2", "px-2 py-1.5", "text-sm font-semibold", className),
|
|
78
|
+
"data-slot": "select-label",
|
|
79
|
+
...props
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
function SelectItem({ children, className, ...props }) {
|
|
83
|
+
return /* @__PURE__ */ jsxs(SelectPrimitive.Item, {
|
|
84
|
+
className: cn("relative flex w-full items-center py-1.5 pr-8 pl-2", "rounded-sm outline-hidden", "text-sm", "cursor-default select-none", "focus:bg-accent focus:text-accent-foreground", "aria-disabled:opacity-50", "data-[variant=destructive]:[&_svg:not([class*='text-'])]:text-destructive/80", "*:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2", "[&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", "[&_svg:not([class*='text-'])]:text-muted-foreground", className),
|
|
85
|
+
"data-slot": "select-item",
|
|
86
|
+
...props,
|
|
87
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
88
|
+
className: cn("absolute flex items-center justify-center", "right-2"),
|
|
89
|
+
children: /* @__PURE__ */ jsx(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(CheckIcon, { className: "size-4" }) })
|
|
90
|
+
}), /* @__PURE__ */ jsx(SelectPrimitive.ItemText, { children })]
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
function SelectSeparator({ className, ...props }) {
|
|
94
|
+
return /* @__PURE__ */ jsx(SelectPrimitive.Separator, {
|
|
95
|
+
className: cn("mx-2 my-1 h-px", "bg-border", className),
|
|
96
|
+
"data-slot": "select-separator",
|
|
97
|
+
...props
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
//#endregion
|
|
101
|
+
export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { VariantProps } from "../lib/utils.mjs";
|
|
2
|
+
import * as _$_codefast_tailwind_variants0 from "@codefast/tailwind-variants";
|
|
3
|
+
import * as SeparatorPrimitive from "@radix-ui/react-separator";
|
|
4
|
+
import { ComponentProps, JSX } from "react";
|
|
5
|
+
|
|
6
|
+
//#region src/components/separator.d.ts
|
|
7
|
+
declare const separatorVariants: _$_codefast_tailwind_variants0.VariantFunctionType<{
|
|
8
|
+
align: {
|
|
9
|
+
center: string;
|
|
10
|
+
end: string;
|
|
11
|
+
start: string;
|
|
12
|
+
};
|
|
13
|
+
orientation: {
|
|
14
|
+
horizontal: string;
|
|
15
|
+
vertical: string;
|
|
16
|
+
};
|
|
17
|
+
}, Record<string, never>>;
|
|
18
|
+
interface SeparatorProps extends ComponentProps<typeof SeparatorPrimitive.Root>, Omit<VariantProps<typeof separatorVariants>, "orientation"> {}
|
|
19
|
+
declare function Separator({
|
|
20
|
+
align,
|
|
21
|
+
className,
|
|
22
|
+
decorative,
|
|
23
|
+
orientation,
|
|
24
|
+
...props
|
|
25
|
+
}: SeparatorProps): JSX.Element;
|
|
26
|
+
type SeparatorItemProps = ComponentProps<"div">;
|
|
27
|
+
declare function SeparatorItem({
|
|
28
|
+
className,
|
|
29
|
+
...props
|
|
30
|
+
}: SeparatorItemProps): JSX.Element;
|
|
31
|
+
//#endregion
|
|
32
|
+
export { Separator, SeparatorItem, type SeparatorItemProps, type SeparatorProps, separatorVariants };
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn, tv } from "../lib/utils.mjs";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
import * as SeparatorPrimitive from "@radix-ui/react-separator";
|
|
5
|
+
//#region src/components/separator.tsx
|
|
6
|
+
const separatorVariants = tv({
|
|
7
|
+
base: ["relative flex shrink-0 items-center", "bg-border"],
|
|
8
|
+
defaultVariants: {
|
|
9
|
+
align: "center",
|
|
10
|
+
orientation: "horizontal"
|
|
11
|
+
},
|
|
12
|
+
variants: {
|
|
13
|
+
align: {
|
|
14
|
+
center: "justify-center",
|
|
15
|
+
end: "justify-end",
|
|
16
|
+
start: "justify-start"
|
|
17
|
+
},
|
|
18
|
+
orientation: {
|
|
19
|
+
horizontal: "h-px w-full",
|
|
20
|
+
vertical: "h-full w-px flex-col"
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
function Separator({ align, className, decorative = true, orientation, ...props }) {
|
|
25
|
+
return /* @__PURE__ */ jsx(SeparatorPrimitive.Root, {
|
|
26
|
+
className: separatorVariants({
|
|
27
|
+
align,
|
|
28
|
+
className,
|
|
29
|
+
orientation
|
|
30
|
+
}),
|
|
31
|
+
"data-slot": "separator",
|
|
32
|
+
decorative,
|
|
33
|
+
orientation,
|
|
34
|
+
...props
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
function SeparatorItem({ className, ...props }) {
|
|
38
|
+
return /* @__PURE__ */ jsx("div", {
|
|
39
|
+
className: cn("absolute", "mx-2 px-2", "bg-background text-sm text-muted-foreground", className),
|
|
40
|
+
"data-slot": "separator-item",
|
|
41
|
+
...props
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
//#endregion
|
|
45
|
+
export { Separator, SeparatorItem, separatorVariants };
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { VariantProps } from "../lib/utils.mjs";
|
|
2
|
+
import { buttonVariants } from "./button.mjs";
|
|
3
|
+
import * as _$_codefast_tailwind_variants0 from "@codefast/tailwind-variants";
|
|
4
|
+
import { ComponentProps, JSX } from "react";
|
|
5
|
+
import * as SheetPrimitive from "@radix-ui/react-dialog";
|
|
6
|
+
|
|
7
|
+
//#region src/components/sheet.d.ts
|
|
8
|
+
declare const sheetContentVariants: _$_codefast_tailwind_variants0.VariantFunctionType<{
|
|
9
|
+
side: {
|
|
10
|
+
bottom: string[];
|
|
11
|
+
left: string[];
|
|
12
|
+
right: string[];
|
|
13
|
+
top: string[];
|
|
14
|
+
};
|
|
15
|
+
}, Record<string, never>>;
|
|
16
|
+
type SheetProps = ComponentProps<typeof SheetPrimitive.Root>;
|
|
17
|
+
declare function Sheet({
|
|
18
|
+
children,
|
|
19
|
+
...props
|
|
20
|
+
}: SheetProps): JSX.Element;
|
|
21
|
+
type SheetTriggerProps = ComponentProps<typeof SheetPrimitive.Trigger>;
|
|
22
|
+
declare function SheetTrigger({
|
|
23
|
+
...props
|
|
24
|
+
}: SheetTriggerProps): JSX.Element;
|
|
25
|
+
interface SheetContentProps extends ComponentProps<typeof SheetPrimitive.Content>, VariantProps<typeof sheetContentVariants> {
|
|
26
|
+
classNames?: {
|
|
27
|
+
close?: string;
|
|
28
|
+
content?: string;
|
|
29
|
+
overlay?: string;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
declare function SheetContent({
|
|
33
|
+
children,
|
|
34
|
+
className,
|
|
35
|
+
classNames,
|
|
36
|
+
side,
|
|
37
|
+
...props
|
|
38
|
+
}: SheetContentProps): JSX.Element;
|
|
39
|
+
type SheetHeaderProps = ComponentProps<"div">;
|
|
40
|
+
declare function SheetHeader({
|
|
41
|
+
className,
|
|
42
|
+
...props
|
|
43
|
+
}: SheetHeaderProps): JSX.Element;
|
|
44
|
+
type SheetBodyProps = ComponentProps<"div">;
|
|
45
|
+
declare function SheetBody({
|
|
46
|
+
className,
|
|
47
|
+
...props
|
|
48
|
+
}: SheetBodyProps): JSX.Element;
|
|
49
|
+
type SheetFooterProps = ComponentProps<"div">;
|
|
50
|
+
declare function SheetFooter({
|
|
51
|
+
className,
|
|
52
|
+
...props
|
|
53
|
+
}: SheetFooterProps): JSX.Element;
|
|
54
|
+
type SheetTitleProps = ComponentProps<typeof SheetPrimitive.Title>;
|
|
55
|
+
declare function SheetTitle({
|
|
56
|
+
className,
|
|
57
|
+
...props
|
|
58
|
+
}: SheetTitleProps): JSX.Element;
|
|
59
|
+
type SheetDescriptionProps = ComponentProps<typeof SheetPrimitive.Description>;
|
|
60
|
+
declare function SheetDescription({
|
|
61
|
+
className,
|
|
62
|
+
...props
|
|
63
|
+
}: SheetDescriptionProps): JSX.Element;
|
|
64
|
+
interface SheetCloseProps extends ComponentProps<typeof SheetPrimitive.Close> {
|
|
65
|
+
size?: VariantProps<typeof buttonVariants>["size"];
|
|
66
|
+
variant?: VariantProps<typeof buttonVariants>["variant"];
|
|
67
|
+
}
|
|
68
|
+
declare function SheetClose({
|
|
69
|
+
className,
|
|
70
|
+
size,
|
|
71
|
+
variant,
|
|
72
|
+
...props
|
|
73
|
+
}: SheetCloseProps): JSX.Element;
|
|
74
|
+
//#endregion
|
|
75
|
+
export { Sheet, SheetBody, type SheetBodyProps, SheetClose, type SheetCloseProps, SheetContent, type SheetContentProps, SheetDescription, type SheetDescriptionProps, SheetFooter, type SheetFooterProps, SheetHeader, type SheetHeaderProps, type SheetProps, SheetTitle, type SheetTitleProps, SheetTrigger, type SheetTriggerProps, sheetContentVariants };
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn, tv } from "../lib/utils.mjs";
|
|
3
|
+
import { buttonVariants } from "./button.mjs";
|
|
4
|
+
import { XIcon } from "lucide-react";
|
|
5
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import * as SheetPrimitive from "@radix-ui/react-dialog";
|
|
7
|
+
//#region src/components/sheet.tsx
|
|
8
|
+
const sheetContentVariants = tv({
|
|
9
|
+
base: [
|
|
10
|
+
"fixed z-50 flex flex-col overflow-auto",
|
|
11
|
+
"bg-background shadow-lg",
|
|
12
|
+
"ease-ui data-open:animate-in data-open:animation-duration-500",
|
|
13
|
+
"data-closed:animate-out data-closed:animation-duration-500"
|
|
14
|
+
],
|
|
15
|
+
defaultVariants: { side: "right" },
|
|
16
|
+
variants: { side: {
|
|
17
|
+
bottom: [
|
|
18
|
+
"max-h-[80vh]",
|
|
19
|
+
"inset-x-0 bottom-0",
|
|
20
|
+
"border-t",
|
|
21
|
+
"data-open:slide-in-from-bottom",
|
|
22
|
+
"data-closed:slide-out-to-bottom"
|
|
23
|
+
],
|
|
24
|
+
left: [
|
|
25
|
+
"h-full w-3/4",
|
|
26
|
+
"inset-y-0 left-0",
|
|
27
|
+
"border-r",
|
|
28
|
+
"sm:max-w-sm",
|
|
29
|
+
"data-open:slide-in-from-left",
|
|
30
|
+
"data-closed:slide-out-to-left"
|
|
31
|
+
],
|
|
32
|
+
right: [
|
|
33
|
+
"h-full w-3/4",
|
|
34
|
+
"inset-y-0 right-0",
|
|
35
|
+
"border-l",
|
|
36
|
+
"sm:max-w-sm",
|
|
37
|
+
"data-open:slide-in-from-right",
|
|
38
|
+
"data-closed:slide-out-to-right"
|
|
39
|
+
],
|
|
40
|
+
top: [
|
|
41
|
+
"max-h-[80vh]",
|
|
42
|
+
"inset-x-0 top-0",
|
|
43
|
+
"border-b",
|
|
44
|
+
"data-open:slide-in-from-top",
|
|
45
|
+
"data-closed:slide-out-to-top"
|
|
46
|
+
]
|
|
47
|
+
} }
|
|
48
|
+
});
|
|
49
|
+
function Sheet({ children, ...props }) {
|
|
50
|
+
return /* @__PURE__ */ jsx(SheetPrimitive.Root, {
|
|
51
|
+
"data-slot": "sheet",
|
|
52
|
+
...props,
|
|
53
|
+
children
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
function SheetTrigger({ ...props }) {
|
|
57
|
+
return /* @__PURE__ */ jsx(SheetPrimitive.Trigger, {
|
|
58
|
+
"data-slot": "sheet-trigger",
|
|
59
|
+
...props
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
function SheetContent({ children, className, classNames, side = "right", ...props }) {
|
|
63
|
+
return /* @__PURE__ */ jsxs(SheetPrimitive.Portal, { children: [/* @__PURE__ */ jsx(SheetPrimitive.Overlay, {
|
|
64
|
+
className: cn("fixed inset-0 z-50", "bg-black/50", "ease-ui data-open:animate-in data-open:animation-duration-500 data-open:fade-in-0", "data-closed:animate-out data-closed:animation-duration-500 data-closed:fade-out-0", classNames?.overlay),
|
|
65
|
+
"data-slot": "sheet-overlay"
|
|
66
|
+
}), /* @__PURE__ */ jsxs(SheetPrimitive.Content, {
|
|
67
|
+
className: sheetContentVariants({
|
|
68
|
+
className: [classNames?.content, className],
|
|
69
|
+
side
|
|
70
|
+
}),
|
|
71
|
+
"data-slot": "sheet-content",
|
|
72
|
+
...props,
|
|
73
|
+
children: [children, /* @__PURE__ */ jsxs(SheetPrimitive.Close, {
|
|
74
|
+
className: buttonVariants({
|
|
75
|
+
className: ["absolute top-4 right-4 size-7", classNames?.close],
|
|
76
|
+
size: "icon",
|
|
77
|
+
variant: "ghost"
|
|
78
|
+
}),
|
|
79
|
+
"data-slot": "sheet-close",
|
|
80
|
+
children: [/* @__PURE__ */ jsx(XIcon, { className: "size-4" }), /* @__PURE__ */ jsx("span", {
|
|
81
|
+
className: "sr-only",
|
|
82
|
+
children: "Close"
|
|
83
|
+
})]
|
|
84
|
+
})]
|
|
85
|
+
})] });
|
|
86
|
+
}
|
|
87
|
+
function SheetHeader({ className, ...props }) {
|
|
88
|
+
return /* @__PURE__ */ jsx("header", {
|
|
89
|
+
className: cn("flex shrink-0 flex-col gap-1.5 px-6 pt-6 pb-4 text-center", "sm:text-left", className),
|
|
90
|
+
"data-slot": "sheet-header",
|
|
91
|
+
...props
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
function SheetBody({ className, ...props }) {
|
|
95
|
+
return /* @__PURE__ */ jsx("main", {
|
|
96
|
+
className: cn("overflow-auto", "px-6 py-2", className),
|
|
97
|
+
"data-slot": "sheet-body",
|
|
98
|
+
...props
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
function SheetFooter({ className, ...props }) {
|
|
102
|
+
return /* @__PURE__ */ jsx("footer", {
|
|
103
|
+
className: cn("flex shrink-0 flex-col-reverse gap-2 px-6 pt-4 pb-6", "sm:flex-row sm:justify-end", className),
|
|
104
|
+
"data-slot": "sheet-footer",
|
|
105
|
+
...props
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
function SheetTitle({ className, ...props }) {
|
|
109
|
+
return /* @__PURE__ */ jsx(SheetPrimitive.Title, {
|
|
110
|
+
className: cn("text-lg font-semibold text-foreground", className),
|
|
111
|
+
"data-slot": "sheet-title",
|
|
112
|
+
...props
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
function SheetDescription({ className, ...props }) {
|
|
116
|
+
return /* @__PURE__ */ jsx(SheetPrimitive.Description, {
|
|
117
|
+
className: cn("text-sm text-muted-foreground", className),
|
|
118
|
+
"data-slot": "sheet-description",
|
|
119
|
+
...props
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
function SheetClose({ className, size, variant = "outline", ...props }) {
|
|
123
|
+
return /* @__PURE__ */ jsx(SheetPrimitive.Close, {
|
|
124
|
+
className: buttonVariants({
|
|
125
|
+
className,
|
|
126
|
+
size,
|
|
127
|
+
variant
|
|
128
|
+
}),
|
|
129
|
+
"data-slot": "sheet-close",
|
|
130
|
+
...props
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
//#endregion
|
|
134
|
+
export { Sheet, SheetBody, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, sheetContentVariants };
|