@codefast/ui 0.3.16-canary.2 → 0.4.0-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 +81 -0
- package/README.md +28 -17
- package/dist/components/accordion.d.mts +7 -22
- package/dist/components/accordion.mjs +26 -29
- package/dist/components/alert-dialog.d.mts +27 -26
- package/dist/components/alert-dialog.mjs +53 -45
- package/dist/components/alert.d.mts +14 -14
- package/dist/components/alert.mjs +17 -28
- package/dist/components/aspect-ratio.d.mts +2 -2
- package/dist/components/aspect-ratio.mjs +2 -3
- package/dist/components/avatar.d.mts +41 -5
- package/dist/components/avatar.mjs +40 -10
- package/dist/components/badge.d.mts +3 -15
- package/dist/components/badge.mjs +6 -48
- package/dist/components/breadcrumb.d.mts +1 -0
- package/dist/components/breadcrumb.mjs +11 -10
- package/dist/components/button-group.d.mts +3 -13
- package/dist/components/button-group.mjs +9 -31
- package/dist/components/button.d.mts +3 -26
- package/dist/components/button.mjs +9 -79
- package/dist/components/calendar.d.mts +6 -2
- package/dist/components/calendar.mjs +41 -44
- package/dist/components/card.d.mts +4 -2
- package/dist/components/card.mjs +9 -9
- package/dist/components/carousel.d.mts +16 -5
- package/dist/components/carousel.mjs +24 -11
- package/dist/components/chart.d.mts +9 -6
- package/dist/components/chart.mjs +21 -15
- package/dist/components/checkbox-cards.mjs +4 -4
- package/dist/components/checkbox-group.mjs +3 -4
- package/dist/components/checkbox.d.mts +2 -2
- package/dist/components/checkbox.mjs +6 -7
- package/dist/components/collapsible.d.mts +4 -4
- package/dist/components/collapsible.mjs +4 -5
- package/dist/components/command.d.mts +11 -1
- package/dist/components/command.mjs +35 -32
- package/dist/components/context-menu.d.mts +22 -15
- package/dist/components/context-menu.mjs +44 -39
- package/dist/components/dialog.d.mts +19 -23
- package/dist/components/dialog.mjs +48 -47
- package/dist/components/direction.d.mts +24 -0
- package/dist/components/direction.mjs +18 -0
- package/dist/components/drawer.d.mts +3 -21
- package/dist/components/drawer.mjs +19 -27
- package/dist/components/dropdown-menu.d.mts +22 -15
- package/dist/components/dropdown-menu.mjs +41 -37
- package/dist/components/empty.d.mts +3 -13
- package/dist/components/empty.mjs +8 -23
- package/dist/components/field.d.mts +3 -14
- package/dist/components/field.mjs +14 -44
- package/dist/components/form.d.mts +7 -10
- package/dist/components/form.mjs +6 -7
- package/dist/components/hover-card.d.mts +5 -5
- package/dist/components/hover-card.mjs +14 -12
- package/dist/components/input-group.d.mts +4 -31
- package/dist/components/input-group.mjs +14 -96
- package/dist/components/input-number.d.mts +3 -1
- package/dist/components/input-number.mjs +50 -28
- package/dist/components/input-otp.mjs +9 -7
- package/dist/components/input-password.mjs +1 -4
- package/dist/components/input-search.mjs +3 -5
- package/dist/components/input.mjs +1 -2
- package/dist/components/item.d.mts +4 -29
- package/dist/components/item.mjs +12 -65
- package/dist/components/kbd.mjs +1 -1
- package/dist/components/label.d.mts +2 -2
- package/dist/components/label.mjs +3 -4
- package/dist/components/menubar.d.mts +22 -16
- package/dist/components/menubar.mjs +54 -47
- package/dist/components/native-select.d.mts +5 -1
- package/dist/components/native-select.mjs +9 -6
- package/dist/components/navigation-menu.d.mts +30 -13
- package/dist/components/navigation-menu.mjs +35 -32
- package/dist/components/pagination.d.mts +7 -1
- package/dist/components/pagination.mjs +27 -12
- package/dist/components/popover.d.mts +40 -7
- package/dist/components/popover.mjs +46 -14
- package/dist/components/progress-circle.d.mts +3 -47
- package/dist/components/progress-circle.mjs +2 -48
- package/dist/components/progress.d.mts +2 -2
- package/dist/components/progress.mjs +5 -6
- package/dist/components/radio-cards.d.mts +3 -3
- package/dist/components/radio-cards.mjs +11 -11
- package/dist/components/radio-group.d.mts +3 -3
- package/dist/components/radio-group.mjs +9 -9
- package/dist/components/radio.mjs +2 -3
- package/dist/components/resizable.mjs +3 -8
- package/dist/components/scroll-area.d.mts +8 -24
- package/dist/components/scroll-area.mjs +16 -70
- package/dist/components/select.d.mts +14 -14
- package/dist/components/select.mjs +47 -47
- package/dist/components/separator.d.mts +4 -19
- package/dist/components/separator.mjs +6 -27
- package/dist/components/sheet.d.mts +18 -31
- package/dist/components/sheet.mjs +46 -87
- package/dist/components/sidebar.d.mts +3 -19
- package/dist/components/sidebar.mjs +48 -84
- package/dist/components/skeleton.mjs +1 -1
- package/dist/components/slider.d.mts +2 -2
- package/dist/components/slider.mjs +9 -11
- package/dist/components/sonner.mjs +11 -3
- package/dist/components/spinner.mjs +6 -7
- package/dist/components/switch.d.mts +5 -2
- package/dist/components/switch.mjs +7 -7
- package/dist/components/table.mjs +10 -10
- package/dist/components/tabs.d.mts +8 -5
- package/dist/components/tabs.mjs +18 -12
- package/dist/components/textarea.mjs +1 -1
- package/dist/components/toggle-group.d.mts +11 -7
- package/dist/components/toggle-group.mjs +20 -21
- package/dist/components/toggle.d.mts +4 -24
- package/dist/components/toggle.mjs +6 -45
- package/dist/components/tooltip.d.mts +7 -6
- package/dist/components/tooltip.mjs +19 -17
- package/dist/hooks/use-animated-value.mjs +0 -1
- package/dist/hooks/use-copy-to-clipboard.mjs +0 -1
- package/dist/hooks/use-is-mobile.mjs +0 -1
- package/dist/hooks/use-media-query.mjs +0 -1
- package/dist/hooks/use-mutation-observer.mjs +0 -1
- package/dist/hooks/use-pagination.mjs +0 -1
- package/dist/index.d.mts +38 -21
- package/dist/index.mjs +40 -23
- package/dist/lib/utils.d.mts +1 -12
- package/dist/lib/utils.mjs +1 -9
- package/dist/primitives/checkbox-group.d.mts +9 -11
- package/dist/primitives/checkbox-group.mjs +14 -19
- package/dist/primitives/input-number.d.mts +3 -4
- package/dist/primitives/input-number.mjs +3 -5
- package/dist/primitives/input.d.mts +4 -5
- package/dist/primitives/input.mjs +2 -3
- package/dist/primitives/progress-circle.d.mts +3 -4
- package/dist/primitives/progress-circle.mjs +2 -3
- package/dist/variants/alert.d.mts +18 -0
- package/dist/variants/alert.mjs +15 -0
- package/dist/variants/badge.d.mts +22 -0
- package/dist/variants/badge.mjs +19 -0
- package/dist/variants/button-group.d.mts +18 -0
- package/dist/variants/button-group.mjs +15 -0
- package/dist/variants/button.d.mts +32 -0
- package/dist/variants/button.mjs +34 -0
- package/dist/variants/empty.d.mts +18 -0
- package/dist/variants/empty.mjs +15 -0
- package/dist/variants/field.d.mts +19 -0
- package/dist/variants/field.mjs +16 -0
- package/dist/variants/input-group.d.mts +43 -0
- package/dist/variants/input-group.mjs +34 -0
- package/dist/variants/input-number.d.mts +45 -0
- package/dist/variants/input-number.mjs +40 -0
- package/dist/variants/item.d.mts +38 -0
- package/dist/variants/item.mjs +38 -0
- package/dist/variants/navigation-menu.d.mts +13 -0
- package/dist/variants/navigation-menu.mjs +8 -0
- package/dist/variants/progress-circle.d.mts +52 -0
- package/dist/variants/progress-circle.mjs +45 -0
- package/dist/variants/scroll-area.d.mts +24 -0
- package/dist/variants/scroll-area.mjs +58 -0
- package/dist/variants/separator.d.mts +23 -0
- package/dist/variants/separator.mjs +25 -0
- package/dist/variants/sheet.d.mts +20 -0
- package/dist/variants/sheet.mjs +17 -0
- package/dist/variants/sidebar.d.mts +23 -0
- package/dist/variants/sidebar.mjs +25 -0
- package/dist/variants/tabs.d.mts +18 -0
- package/dist/variants/tabs.mjs +15 -0
- package/dist/variants/toggle.d.mts +23 -0
- package/dist/variants/toggle.mjs +25 -0
- package/package.json +186 -55
- package/src/components/accordion.tsx +114 -0
- package/src/components/alert-dialog.tsx +298 -0
- package/src/components/alert.tsx +94 -0
- package/src/components/aspect-ratio.tsx +25 -0
- package/src/components/avatar.tsx +171 -0
- package/src/components/badge.tsx +35 -0
- package/src/components/breadcrumb.tsx +191 -0
- package/src/components/button-group.tsx +97 -0
- package/src/components/button.tsx +55 -0
- package/src/components/calendar.tsx +222 -0
- package/src/components/card.tsx +169 -0
- package/src/components/carousel.tsx +349 -0
- package/src/components/chart.tsx +536 -0
- package/src/components/checkbox-cards.tsx +72 -0
- package/src/components/checkbox-group.tsx +60 -0
- package/src/components/checkbox.tsx +44 -0
- package/src/components/collapsible.tsx +57 -0
- package/src/components/command.tsx +298 -0
- package/src/components/context-menu.tsx +410 -0
- package/src/components/dialog.tsx +243 -0
- package/src/components/direction.tsx +32 -0
- package/src/components/drawer.tsx +209 -0
- package/src/components/dropdown-menu.tsx +419 -0
- package/src/components/empty.tsx +155 -0
- package/src/components/field.tsx +329 -0
- package/src/components/form.tsx +258 -0
- package/src/components/hover-card.tsx +93 -0
- package/src/components/input-group.tsx +185 -0
- package/src/components/input-number.tsx +141 -0
- package/src/components/input-otp.tsx +132 -0
- package/src/components/input-password.tsx +50 -0
- package/src/components/input-search.tsx +81 -0
- package/src/components/input.tsx +36 -0
- package/src/components/item.tsx +266 -0
- package/src/components/kbd.tsx +47 -0
- package/src/components/label.tsx +36 -0
- package/src/components/menubar.tsx +440 -0
- package/src/components/native-select.tsx +87 -0
- package/src/components/navigation-menu.tsx +235 -0
- package/src/components/pagination.tsx +198 -0
- package/src/components/popover.tsx +170 -0
- package/src/components/progress-circle.tsx +185 -0
- package/src/components/progress.tsx +41 -0
- package/src/components/radio-cards.tsx +66 -0
- package/src/components/radio-group.tsx +59 -0
- package/src/components/radio.tsx +40 -0
- package/src/components/resizable.tsx +78 -0
- package/src/components/scroll-area.tsx +95 -0
- package/src/components/select.tsx +296 -0
- package/src/components/separator.tsx +60 -0
- package/src/components/sheet.tsx +241 -0
- package/src/components/sidebar.tsx +926 -0
- package/src/components/skeleton.tsx +35 -0
- package/src/components/slider.tsx +66 -0
- package/src/components/sonner.tsx +57 -0
- package/src/components/spinner.tsx +66 -0
- package/src/components/switch.tsx +44 -0
- package/src/components/table.tsx +183 -0
- package/src/components/tabs.tsx +110 -0
- package/src/components/textarea.tsx +35 -0
- package/src/components/toggle-group.tsx +137 -0
- package/src/components/toggle.tsx +30 -0
- package/src/components/tooltip.tsx +115 -0
- package/src/css/foundation/base.css +50 -0
- package/src/css/foundation/motion.css +36 -0
- package/src/css/foundation/source.css +3 -0
- package/src/css/foundation/tokens.css +71 -0
- package/src/css/foundation/variants.css +113 -0
- package/src/css/preset.css +5 -195
- package/src/css/style.css +1 -1
- package/src/css/{amber.css → themes/amber.css} +59 -22
- package/src/css/{blue.css → themes/blue.css} +59 -22
- package/src/css/{cyan.css → themes/cyan.css} +59 -22
- package/src/css/{emerald.css → themes/emerald.css} +59 -22
- package/src/css/{fuchsia.css → themes/fuchsia.css} +59 -22
- package/src/css/{gray.css → themes/gray.css} +59 -22
- package/src/css/{green.css → themes/green.css} +59 -22
- package/src/css/{indigo.css → themes/indigo.css} +59 -22
- package/src/css/{lime.css → themes/lime.css} +59 -22
- package/src/css/{neutral.css → themes/neutral.css} +59 -22
- package/src/css/{orange.css → themes/orange.css} +59 -22
- package/src/css/{pink.css → themes/pink.css} +59 -22
- package/src/css/{purple.css → themes/purple.css} +59 -22
- package/src/css/{red.css → themes/red.css} +59 -22
- package/src/css/{rose.css → themes/rose.css} +59 -22
- package/src/css/{sky.css → themes/sky.css} +59 -22
- package/src/css/{slate.css → themes/slate.css} +59 -22
- package/src/css/{stone.css → themes/stone.css} +59 -22
- package/src/css/{teal.css → themes/teal.css} +59 -22
- package/src/css/{violet.css → themes/violet.css} +59 -22
- package/src/css/{yellow.css → themes/yellow.css} +59 -22
- package/src/css/{zinc.css → themes/zinc.css} +59 -22
- package/src/hooks/use-animated-value.ts +91 -0
- package/src/hooks/use-copy-to-clipboard.ts +58 -0
- package/src/hooks/use-is-mobile.ts +25 -0
- package/src/hooks/use-media-query.ts +69 -0
- package/src/hooks/use-mutation-observer.ts +51 -0
- package/src/hooks/use-pagination.ts +164 -0
- package/src/index.ts +679 -0
- package/src/lib/utils.ts +5 -0
- package/src/primitives/checkbox-group.tsx +346 -0
- package/src/primitives/input-number.tsx +967 -0
- package/src/primitives/input.tsx +227 -0
- package/src/primitives/progress-circle.tsx +507 -0
- package/src/variants/alert.ts +34 -0
- package/src/variants/badge.ts +39 -0
- package/src/variants/button-group.ts +36 -0
- package/src/variants/button.ts +56 -0
- package/src/variants/empty.ts +34 -0
- package/src/variants/field.ts +37 -0
- package/src/variants/input-group.ts +80 -0
- package/src/variants/input-number.ts +65 -0
- package/src/variants/item.ts +68 -0
- package/src/variants/navigation-menu.ts +25 -0
- package/src/variants/progress-circle.ts +46 -0
- package/src/variants/scroll-area.ts +73 -0
- package/src/variants/separator.ts +40 -0
- package/src/variants/sheet.ts +37 -0
- package/src/variants/sidebar.ts +41 -0
- package/src/variants/tabs.ts +34 -0
- package/src/variants/toggle.ts +40 -0
- package/dist/node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/clsx.d.mts +0 -6
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
"use client";
|
|
2
1
|
import { cn } from "../lib/utils.mjs";
|
|
3
|
-
import {
|
|
2
|
+
import { Button } from "./button.mjs";
|
|
3
|
+
import { AlertDialog as AlertDialog$1 } from "radix-ui";
|
|
4
4
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
-
import * as AlertDialogPrimitive from "@radix-ui/react-alert-dialog";
|
|
6
5
|
//#region src/components/alert-dialog.tsx
|
|
7
6
|
/**
|
|
8
7
|
* @since 0.3.16-canary.0
|
|
9
8
|
*/
|
|
10
9
|
function AlertDialog({ ...props }) {
|
|
11
|
-
return /* @__PURE__ */ jsx(
|
|
10
|
+
return /* @__PURE__ */ jsx(AlertDialog$1.Root, {
|
|
12
11
|
"data-slot": "alert-dialog",
|
|
13
12
|
...props
|
|
14
13
|
});
|
|
@@ -17,7 +16,7 @@ function AlertDialog({ ...props }) {
|
|
|
17
16
|
* @since 0.3.16-canary.0
|
|
18
17
|
*/
|
|
19
18
|
function AlertDialogTrigger({ ...props }) {
|
|
20
|
-
return /* @__PURE__ */ jsx(
|
|
19
|
+
return /* @__PURE__ */ jsx(AlertDialog$1.Trigger, {
|
|
21
20
|
"data-slot": "alert-dialog-trigger",
|
|
22
21
|
...props
|
|
23
22
|
});
|
|
@@ -25,27 +24,26 @@ function AlertDialogTrigger({ ...props }) {
|
|
|
25
24
|
/**
|
|
26
25
|
* @since 0.3.16-canary.0
|
|
27
26
|
*/
|
|
28
|
-
function AlertDialogContent({
|
|
29
|
-
return /* @__PURE__ */ jsxs(
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
className: cn("relative row-start-2 flex w-full max-w-lg flex-col", "rounded-2xl border", "bg-popover text-popover-foreground shadow-lg", classNames?.content, className),
|
|
27
|
+
function AlertDialogContent({ className, size = "default", ...props }) {
|
|
28
|
+
return /* @__PURE__ */ jsxs(AlertDialog$1.Portal, {
|
|
29
|
+
"data-slot": "alert-dialog-portal",
|
|
30
|
+
children: [/* @__PURE__ */ jsx(AlertDialog$1.Overlay, {
|
|
31
|
+
className: "fixed inset-0 z-50 bg-black/10 ease-gentle supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:animation-duration-overlay-in data-open:fade-in-0 data-closed:animate-out data-closed:ease-exit data-closed:animation-duration-overlay-out data-closed:fade-out-0",
|
|
32
|
+
"data-slot": "alert-dialog-overlay"
|
|
33
|
+
}), /* @__PURE__ */ jsx(AlertDialog$1.Content, {
|
|
34
|
+
className: cn("group/alert-dialog-content fixed top-1/2 left-1/2 z-50 flex max-h-[calc(100dvh-2rem)] w-full -translate-x-1/2 -translate-y-1/2 flex-col gap-6 overflow-y-auto rounded-xl bg-popover p-6 text-popover-foreground ring-1 ring-foreground/10 ease-ui outline-none data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-lg data-open:animate-in data-open:animation-duration-overlay-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:ease-exit data-closed:animation-duration-overlay-out data-closed:fade-out-0 data-closed:zoom-out-95", className),
|
|
35
|
+
"data-size": size,
|
|
38
36
|
"data-slot": "alert-dialog-content",
|
|
39
|
-
|
|
40
|
-
})
|
|
41
|
-
})
|
|
37
|
+
...props
|
|
38
|
+
})]
|
|
39
|
+
});
|
|
42
40
|
}
|
|
43
41
|
/**
|
|
44
42
|
* @since 0.3.16-canary.0
|
|
45
43
|
*/
|
|
46
44
|
function AlertDialogHeader({ className, ...props }) {
|
|
47
45
|
return /* @__PURE__ */ jsx("div", {
|
|
48
|
-
className: cn("
|
|
46
|
+
className: cn("grid shrink-0 grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-6 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]", className),
|
|
49
47
|
"data-slot": "alert-dialog-header",
|
|
50
48
|
...props
|
|
51
49
|
});
|
|
@@ -53,9 +51,19 @@ function AlertDialogHeader({ className, ...props }) {
|
|
|
53
51
|
/**
|
|
54
52
|
* @since 0.3.16-canary.0
|
|
55
53
|
*/
|
|
54
|
+
function AlertDialogMedia({ className, ...props }) {
|
|
55
|
+
return /* @__PURE__ */ jsx("div", {
|
|
56
|
+
className: cn("mb-2 inline-flex size-16 items-center justify-center rounded-md bg-muted sm:group-data-[size=default]/alert-dialog-content:row-span-2 *:[svg:not([class*='size-'])]:size-8", className),
|
|
57
|
+
"data-slot": "alert-dialog-media",
|
|
58
|
+
...props
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* @since 0.3.16-canary.0
|
|
63
|
+
*/
|
|
56
64
|
function AlertDialogBody({ className, ...props }) {
|
|
57
|
-
return /* @__PURE__ */ jsx("
|
|
58
|
-
className: cn("overflow-auto
|
|
65
|
+
return /* @__PURE__ */ jsx("div", {
|
|
66
|
+
className: cn("-mx-6 min-h-0 flex-1 overflow-y-auto px-6", className),
|
|
59
67
|
"data-slot": "alert-dialog-body",
|
|
60
68
|
...props
|
|
61
69
|
});
|
|
@@ -65,7 +73,7 @@ function AlertDialogBody({ className, ...props }) {
|
|
|
65
73
|
*/
|
|
66
74
|
function AlertDialogFooter({ className, ...props }) {
|
|
67
75
|
return /* @__PURE__ */ jsx("div", {
|
|
68
|
-
className: cn("flex shrink-0 flex-col-reverse gap-2
|
|
76
|
+
className: cn("flex shrink-0 flex-col-reverse gap-2 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end", className),
|
|
69
77
|
"data-slot": "alert-dialog-footer",
|
|
70
78
|
...props
|
|
71
79
|
});
|
|
@@ -74,8 +82,8 @@ function AlertDialogFooter({ className, ...props }) {
|
|
|
74
82
|
* @since 0.3.16-canary.0
|
|
75
83
|
*/
|
|
76
84
|
function AlertDialogTitle({ className, ...props }) {
|
|
77
|
-
return /* @__PURE__ */ jsx(
|
|
78
|
-
className: cn("text-lg
|
|
85
|
+
return /* @__PURE__ */ jsx(AlertDialog$1.Title, {
|
|
86
|
+
className: cn("font-heading text-lg font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2", className),
|
|
79
87
|
"data-slot": "alert-dialog-title",
|
|
80
88
|
...props
|
|
81
89
|
});
|
|
@@ -84,8 +92,8 @@ function AlertDialogTitle({ className, ...props }) {
|
|
|
84
92
|
* @since 0.3.16-canary.0
|
|
85
93
|
*/
|
|
86
94
|
function AlertDialogDescription({ className, ...props }) {
|
|
87
|
-
return /* @__PURE__ */ jsx(
|
|
88
|
-
className: cn("text-sm text-muted-foreground", className),
|
|
95
|
+
return /* @__PURE__ */ jsx(AlertDialog$1.Description, {
|
|
96
|
+
className: cn("text-sm text-balance text-muted-foreground md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground", className),
|
|
89
97
|
"data-slot": "alert-dialog-description",
|
|
90
98
|
...props
|
|
91
99
|
});
|
|
@@ -93,30 +101,30 @@ function AlertDialogDescription({ className, ...props }) {
|
|
|
93
101
|
/**
|
|
94
102
|
* @since 0.3.16-canary.0
|
|
95
103
|
*/
|
|
96
|
-
function AlertDialogAction({
|
|
97
|
-
return /* @__PURE__ */ jsx(
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
104
|
+
function AlertDialogAction({ size = "default", variant = "default", ...props }) {
|
|
105
|
+
return /* @__PURE__ */ jsx(Button, {
|
|
106
|
+
asChild: true,
|
|
107
|
+
size,
|
|
108
|
+
variant,
|
|
109
|
+
children: /* @__PURE__ */ jsx(AlertDialog$1.Action, {
|
|
110
|
+
"data-slot": "alert-dialog-action",
|
|
111
|
+
...props
|
|
112
|
+
})
|
|
105
113
|
});
|
|
106
114
|
}
|
|
107
115
|
/**
|
|
108
116
|
* @since 0.3.16-canary.0
|
|
109
117
|
*/
|
|
110
|
-
function AlertDialogCancel({
|
|
111
|
-
return /* @__PURE__ */ jsx(
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
118
|
+
function AlertDialogCancel({ size = "default", variant = "outline", ...props }) {
|
|
119
|
+
return /* @__PURE__ */ jsx(Button, {
|
|
120
|
+
asChild: true,
|
|
121
|
+
size,
|
|
122
|
+
variant,
|
|
123
|
+
children: /* @__PURE__ */ jsx(AlertDialog$1.Cancel, {
|
|
124
|
+
"data-slot": "alert-dialog-cancel",
|
|
125
|
+
...props
|
|
126
|
+
})
|
|
119
127
|
});
|
|
120
128
|
}
|
|
121
129
|
//#endregion
|
|
122
|
-
export { AlertDialog, AlertDialogAction, AlertDialogBody, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, AlertDialogTrigger };
|
|
130
|
+
export { AlertDialog, AlertDialogAction, AlertDialogBody, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogTitle, AlertDialogTrigger };
|
|
@@ -1,21 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import * as _$_codefast_tailwind_variants0 from "@codefast/tailwind-variants";
|
|
1
|
+
import { AlertVariants } from "../variants/alert.mjs";
|
|
3
2
|
import { ComponentProps, JSX } from "react";
|
|
4
3
|
|
|
5
4
|
//#region src/components/alert.d.ts
|
|
6
5
|
/**
|
|
7
6
|
* @since 0.3.16-canary.0
|
|
8
7
|
*/
|
|
9
|
-
|
|
10
|
-
variant: {
|
|
11
|
-
default: string;
|
|
12
|
-
destructive: string[];
|
|
13
|
-
};
|
|
14
|
-
}, Record<string, never>>;
|
|
15
|
-
/**
|
|
16
|
-
* @since 0.3.16-canary.0
|
|
17
|
-
*/
|
|
18
|
-
interface AlertProps extends ComponentProps<"div">, VariantProps<typeof alertVariants> {}
|
|
8
|
+
interface AlertProps extends ComponentProps<"div">, AlertVariants {}
|
|
19
9
|
/**
|
|
20
10
|
* @since 0.3.16-canary.0
|
|
21
11
|
*/
|
|
@@ -32,7 +22,6 @@ type AlertTitleProps = ComponentProps<"div">;
|
|
|
32
22
|
* @since 0.3.16-canary.0
|
|
33
23
|
*/
|
|
34
24
|
declare function AlertTitle({
|
|
35
|
-
children,
|
|
36
25
|
className,
|
|
37
26
|
...props
|
|
38
27
|
}: AlertTitleProps): JSX.Element;
|
|
@@ -47,5 +36,16 @@ declare function AlertDescription({
|
|
|
47
36
|
className,
|
|
48
37
|
...props
|
|
49
38
|
}: AlertDescriptionProps): JSX.Element;
|
|
39
|
+
/**
|
|
40
|
+
* @since 0.3.16-canary.0
|
|
41
|
+
*/
|
|
42
|
+
type AlertActionProps = ComponentProps<"div">;
|
|
43
|
+
/**
|
|
44
|
+
* @since 0.3.16-canary.0
|
|
45
|
+
*/
|
|
46
|
+
declare function AlertAction({
|
|
47
|
+
className,
|
|
48
|
+
...props
|
|
49
|
+
}: AlertActionProps): JSX.Element;
|
|
50
50
|
//#endregion
|
|
51
|
-
export { Alert, AlertDescription, type AlertDescriptionProps, type AlertProps, AlertTitle, type AlertTitleProps
|
|
51
|
+
export { Alert, AlertAction, type AlertActionProps, AlertDescription, type AlertDescriptionProps, type AlertProps, AlertTitle, type AlertTitleProps };
|
|
@@ -1,30 +1,10 @@
|
|
|
1
|
-
import { cn
|
|
1
|
+
import { cn } from "../lib/utils.mjs";
|
|
2
|
+
import { alertVariants } from "../variants/alert.mjs";
|
|
2
3
|
import { jsx } from "react/jsx-runtime";
|
|
3
4
|
//#region src/components/alert.tsx
|
|
4
5
|
/**
|
|
5
6
|
* @since 0.3.16-canary.0
|
|
6
7
|
*/
|
|
7
|
-
const alertVariants = tv({
|
|
8
|
-
base: [
|
|
9
|
-
"relative grid w-full grid-cols-[0_1fr] items-start gap-y-0.5 px-4 py-3",
|
|
10
|
-
"rounded-xl border",
|
|
11
|
-
"bg-card text-sm",
|
|
12
|
-
"has-[>svg]:grid-cols-[--spacing(4)_1fr] has-[>svg]:gap-x-3",
|
|
13
|
-
"[&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current"
|
|
14
|
-
],
|
|
15
|
-
defaultVariants: { variant: "default" },
|
|
16
|
-
variants: { variant: {
|
|
17
|
-
default: "text-card-foreground",
|
|
18
|
-
destructive: [
|
|
19
|
-
"text-destructive",
|
|
20
|
-
"*:data-[slot=alert-description]:text-destructive/90",
|
|
21
|
-
"[&>svg]:text-current"
|
|
22
|
-
]
|
|
23
|
-
} }
|
|
24
|
-
});
|
|
25
|
-
/**
|
|
26
|
-
* @since 0.3.16-canary.0
|
|
27
|
-
*/
|
|
28
8
|
function Alert({ className, variant, ...props }) {
|
|
29
9
|
return /* @__PURE__ */ jsx("div", {
|
|
30
10
|
className: alertVariants({
|
|
@@ -39,12 +19,11 @@ function Alert({ className, variant, ...props }) {
|
|
|
39
19
|
/**
|
|
40
20
|
* @since 0.3.16-canary.0
|
|
41
21
|
*/
|
|
42
|
-
function AlertTitle({
|
|
22
|
+
function AlertTitle({ className, ...props }) {
|
|
43
23
|
return /* @__PURE__ */ jsx("div", {
|
|
44
|
-
className: cn("col-start-2
|
|
24
|
+
className: cn("font-medium group-has-[>svg]/alert:col-start-2 [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground", className),
|
|
45
25
|
"data-slot": "alert-title",
|
|
46
|
-
...props
|
|
47
|
-
children
|
|
26
|
+
...props
|
|
48
27
|
});
|
|
49
28
|
}
|
|
50
29
|
/**
|
|
@@ -52,10 +31,20 @@ function AlertTitle({ children, className, ...props }) {
|
|
|
52
31
|
*/
|
|
53
32
|
function AlertDescription({ className, ...props }) {
|
|
54
33
|
return /* @__PURE__ */ jsx("div", {
|
|
55
|
-
className: cn("
|
|
34
|
+
className: cn("text-sm text-balance text-muted-foreground md:text-pretty [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4", className),
|
|
56
35
|
"data-slot": "alert-description",
|
|
57
36
|
...props
|
|
58
37
|
});
|
|
59
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* @since 0.3.16-canary.0
|
|
41
|
+
*/
|
|
42
|
+
function AlertAction({ className, ...props }) {
|
|
43
|
+
return /* @__PURE__ */ jsx("div", {
|
|
44
|
+
className: cn("absolute top-2.5 right-3", className),
|
|
45
|
+
"data-slot": "alert-action",
|
|
46
|
+
...props
|
|
47
|
+
});
|
|
48
|
+
}
|
|
60
49
|
//#endregion
|
|
61
|
-
export { Alert, AlertDescription, AlertTitle
|
|
50
|
+
export { Alert, AlertAction, AlertDescription, AlertTitle };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { AspectRatio as AspectRatio$1 } from "radix-ui";
|
|
2
2
|
import { ComponentProps, JSX } from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/components/aspect-ratio.d.ts
|
|
5
5
|
/**
|
|
6
6
|
* @since 0.3.16-canary.0
|
|
7
7
|
*/
|
|
8
|
-
type AspectRatioProps = ComponentProps<typeof
|
|
8
|
+
type AspectRatioProps = ComponentProps<typeof AspectRatio$1.Root>;
|
|
9
9
|
/**
|
|
10
10
|
* @since 0.3.16-canary.0
|
|
11
11
|
*/
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
import { AspectRatio as AspectRatio$1 } from "radix-ui";
|
|
2
2
|
import { jsx } from "react/jsx-runtime";
|
|
3
|
-
import * as AspectRatioPrimitive from "@radix-ui/react-aspect-ratio";
|
|
4
3
|
//#region src/components/aspect-ratio.tsx
|
|
5
4
|
/**
|
|
6
5
|
* @since 0.3.16-canary.0
|
|
7
6
|
*/
|
|
8
7
|
function AspectRatio({ ...props }) {
|
|
9
|
-
return /* @__PURE__ */ jsx(
|
|
8
|
+
return /* @__PURE__ */ jsx(AspectRatio$1.Root, {
|
|
10
9
|
"data-slot": "aspect-ratio",
|
|
11
10
|
...props
|
|
12
11
|
});
|
|
@@ -1,22 +1,25 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Avatar as Avatar$1 } from "radix-ui";
|
|
2
2
|
import { ComponentProps, JSX } from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/components/avatar.d.ts
|
|
5
5
|
/**
|
|
6
6
|
* @since 0.3.16-canary.0
|
|
7
7
|
*/
|
|
8
|
-
type AvatarProps = ComponentProps<typeof
|
|
8
|
+
type AvatarProps = ComponentProps<typeof Avatar$1.Root> & {
|
|
9
|
+
size?: "default" | "sm" | "lg";
|
|
10
|
+
};
|
|
9
11
|
/**
|
|
10
12
|
* @since 0.3.16-canary.0
|
|
11
13
|
*/
|
|
12
14
|
declare function Avatar({
|
|
13
15
|
className,
|
|
16
|
+
size,
|
|
14
17
|
...props
|
|
15
18
|
}: AvatarProps): JSX.Element;
|
|
16
19
|
/**
|
|
17
20
|
* @since 0.3.16-canary.0
|
|
18
21
|
*/
|
|
19
|
-
type AvatarImageProps = ComponentProps<typeof
|
|
22
|
+
type AvatarImageProps = ComponentProps<typeof Avatar$1.Image>;
|
|
20
23
|
/**
|
|
21
24
|
* @since 0.3.16-canary.0
|
|
22
25
|
*/
|
|
@@ -27,7 +30,7 @@ declare function AvatarImage({
|
|
|
27
30
|
/**
|
|
28
31
|
* @since 0.3.16-canary.0
|
|
29
32
|
*/
|
|
30
|
-
type AvatarFallbackProps = ComponentProps<typeof
|
|
33
|
+
type AvatarFallbackProps = ComponentProps<typeof Avatar$1.Fallback>;
|
|
31
34
|
/**
|
|
32
35
|
* @since 0.3.16-canary.0
|
|
33
36
|
*/
|
|
@@ -35,5 +38,38 @@ declare function AvatarFallback({
|
|
|
35
38
|
className,
|
|
36
39
|
...props
|
|
37
40
|
}: AvatarFallbackProps): JSX.Element;
|
|
41
|
+
/**
|
|
42
|
+
* @since 0.3.16-canary.0
|
|
43
|
+
*/
|
|
44
|
+
type AvatarBadgeProps = ComponentProps<"span">;
|
|
45
|
+
/**
|
|
46
|
+
* @since 0.3.16-canary.0
|
|
47
|
+
*/
|
|
48
|
+
declare function AvatarBadge({
|
|
49
|
+
className,
|
|
50
|
+
...props
|
|
51
|
+
}: AvatarBadgeProps): JSX.Element;
|
|
52
|
+
/**
|
|
53
|
+
* @since 0.3.16-canary.0
|
|
54
|
+
*/
|
|
55
|
+
type AvatarGroupProps = ComponentProps<"div">;
|
|
56
|
+
/**
|
|
57
|
+
* @since 0.3.16-canary.0
|
|
58
|
+
*/
|
|
59
|
+
declare function AvatarGroup({
|
|
60
|
+
className,
|
|
61
|
+
...props
|
|
62
|
+
}: AvatarGroupProps): JSX.Element;
|
|
63
|
+
/**
|
|
64
|
+
* @since 0.3.16-canary.0
|
|
65
|
+
*/
|
|
66
|
+
type AvatarGroupCountProps = ComponentProps<"div">;
|
|
67
|
+
/**
|
|
68
|
+
* @since 0.3.16-canary.0
|
|
69
|
+
*/
|
|
70
|
+
declare function AvatarGroupCount({
|
|
71
|
+
className,
|
|
72
|
+
...props
|
|
73
|
+
}: AvatarGroupCountProps): JSX.Element;
|
|
38
74
|
//#endregion
|
|
39
|
-
export { Avatar, AvatarFallback, type AvatarFallbackProps, AvatarImage, type AvatarImageProps, type AvatarProps };
|
|
75
|
+
export { Avatar, AvatarBadge, type AvatarBadgeProps, AvatarFallback, type AvatarFallbackProps, AvatarGroup, AvatarGroupCount, type AvatarGroupCountProps, type AvatarGroupProps, AvatarImage, type AvatarImageProps, type AvatarProps };
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
"use client";
|
|
2
1
|
import { cn } from "../lib/utils.mjs";
|
|
2
|
+
import { Avatar as Avatar$1 } from "radix-ui";
|
|
3
3
|
import { jsx } from "react/jsx-runtime";
|
|
4
|
-
import * as AvatarPrimitive from "@radix-ui/react-avatar";
|
|
5
4
|
//#region src/components/avatar.tsx
|
|
6
5
|
/**
|
|
7
6
|
* @since 0.3.16-canary.0
|
|
8
7
|
*/
|
|
9
|
-
function Avatar({ className, ...props }) {
|
|
10
|
-
return /* @__PURE__ */ jsx(
|
|
11
|
-
className: cn("relative flex size-8 shrink-0
|
|
8
|
+
function Avatar({ className, size = "default", ...props }) {
|
|
9
|
+
return /* @__PURE__ */ jsx(Avatar$1.Root, {
|
|
10
|
+
className: cn("group/avatar relative flex size-8 shrink-0 rounded-full select-none after:absolute after:inset-0 after:rounded-full after:border after:border-border after:mix-blend-darken data-[size=lg]:size-10 data-[size=sm]:size-6 dark:after:mix-blend-lighten", className),
|
|
11
|
+
"data-size": size,
|
|
12
12
|
"data-slot": "avatar",
|
|
13
13
|
...props
|
|
14
14
|
});
|
|
@@ -17,8 +17,8 @@ function Avatar({ className, ...props }) {
|
|
|
17
17
|
* @since 0.3.16-canary.0
|
|
18
18
|
*/
|
|
19
19
|
function AvatarImage({ className, ...props }) {
|
|
20
|
-
return /* @__PURE__ */ jsx(
|
|
21
|
-
className: cn("aspect-square size-full", className),
|
|
20
|
+
return /* @__PURE__ */ jsx(Avatar$1.Image, {
|
|
21
|
+
className: cn("aspect-square size-full rounded-full object-cover", className),
|
|
22
22
|
"data-slot": "avatar-image",
|
|
23
23
|
...props
|
|
24
24
|
});
|
|
@@ -27,11 +27,41 @@ function AvatarImage({ className, ...props }) {
|
|
|
27
27
|
* @since 0.3.16-canary.0
|
|
28
28
|
*/
|
|
29
29
|
function AvatarFallback({ className, ...props }) {
|
|
30
|
-
return /* @__PURE__ */ jsx(
|
|
31
|
-
className: cn("flex size-full items-center justify-center
|
|
30
|
+
return /* @__PURE__ */ jsx(Avatar$1.Fallback, {
|
|
31
|
+
className: cn("flex size-full items-center justify-center rounded-full bg-muted text-sm text-muted-foreground group-data-[size=sm]/avatar:text-xs", className),
|
|
32
32
|
"data-slot": "avatar-fallback",
|
|
33
33
|
...props
|
|
34
34
|
});
|
|
35
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* @since 0.3.16-canary.0
|
|
38
|
+
*/
|
|
39
|
+
function AvatarBadge({ className, ...props }) {
|
|
40
|
+
return /* @__PURE__ */ jsx("span", {
|
|
41
|
+
className: cn("absolute right-0 bottom-0 z-10 inline-flex items-center justify-center rounded-full bg-primary text-primary-foreground bg-blend-color ring-2 ring-background select-none", "group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden", "group-data-[size=default]/avatar:size-2.5 group-data-[size=default]/avatar:[&>svg]:size-2", "group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2", className),
|
|
42
|
+
"data-slot": "avatar-badge",
|
|
43
|
+
...props
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* @since 0.3.16-canary.0
|
|
48
|
+
*/
|
|
49
|
+
function AvatarGroup({ className, ...props }) {
|
|
50
|
+
return /* @__PURE__ */ jsx("div", {
|
|
51
|
+
className: cn("group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2 *:data-[slot=avatar]:ring-background", className),
|
|
52
|
+
"data-slot": "avatar-group",
|
|
53
|
+
...props
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* @since 0.3.16-canary.0
|
|
58
|
+
*/
|
|
59
|
+
function AvatarGroupCount({ className, ...props }) {
|
|
60
|
+
return /* @__PURE__ */ jsx("div", {
|
|
61
|
+
className: cn("relative flex size-8 shrink-0 items-center justify-center rounded-full bg-muted text-sm text-muted-foreground ring-2 ring-background group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6 [&>svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3", className),
|
|
62
|
+
"data-slot": "avatar-group-count",
|
|
63
|
+
...props
|
|
64
|
+
});
|
|
65
|
+
}
|
|
36
66
|
//#endregion
|
|
37
|
-
export { Avatar, AvatarFallback, AvatarImage };
|
|
67
|
+
export { Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage };
|
|
@@ -1,23 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import * as _$_codefast_tailwind_variants0 from "@codefast/tailwind-variants";
|
|
1
|
+
import { BadgeVariants } from "../variants/badge.mjs";
|
|
3
2
|
import { ComponentProps, JSX } from "react";
|
|
4
3
|
|
|
5
4
|
//#region src/components/badge.d.ts
|
|
6
5
|
/**
|
|
7
6
|
* @since 0.3.16-canary.0
|
|
8
7
|
*/
|
|
9
|
-
|
|
10
|
-
variant: {
|
|
11
|
-
default: string[];
|
|
12
|
-
destructive: string[];
|
|
13
|
-
outline: string[];
|
|
14
|
-
secondary: string[];
|
|
15
|
-
};
|
|
16
|
-
}, Record<string, never>>;
|
|
17
|
-
/**
|
|
18
|
-
* @since 0.3.16-canary.0
|
|
19
|
-
*/
|
|
20
|
-
interface BadgeProps extends ComponentProps<"span">, VariantProps<typeof badgeVariants> {
|
|
8
|
+
interface BadgeProps extends ComponentProps<"span">, BadgeVariants {
|
|
21
9
|
asChild?: boolean;
|
|
22
10
|
}
|
|
23
11
|
/**
|
|
@@ -30,4 +18,4 @@ declare function Badge({
|
|
|
30
18
|
...props
|
|
31
19
|
}: BadgeProps): JSX.Element;
|
|
32
20
|
//#endregion
|
|
33
|
-
export { Badge, type BadgeProps
|
|
21
|
+
export { Badge, type BadgeProps };
|
|
@@ -1,62 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import { Slot } from "@radix-ui/react-slot";
|
|
1
|
+
import { badgeVariants } from "../variants/badge.mjs";
|
|
2
|
+
import { Slot } from "radix-ui";
|
|
4
3
|
import { jsx } from "react/jsx-runtime";
|
|
5
4
|
//#region src/components/badge.tsx
|
|
6
5
|
/**
|
|
7
6
|
* @since 0.3.16-canary.0
|
|
8
7
|
*/
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
"inline-flex w-fit shrink-0 items-center justify-center gap-2 px-1.5 py-0.5",
|
|
12
|
-
"rounded-md border outline-hidden",
|
|
13
|
-
"text-xs font-medium whitespace-nowrap",
|
|
14
|
-
"transition",
|
|
15
|
-
"focus-visible:ring-3 focus-visible:ring-ring/50",
|
|
16
|
-
"[&>svg]:size-3 [&>svg]:shrink-0"
|
|
17
|
-
],
|
|
18
|
-
defaultVariants: { variant: "default" },
|
|
19
|
-
variants: { variant: {
|
|
20
|
-
default: [
|
|
21
|
-
"border-transparent",
|
|
22
|
-
"bg-primary text-primary-foreground",
|
|
23
|
-
"focus-visible:ring-primary/20",
|
|
24
|
-
"dark:focus-visible:ring-primary/40",
|
|
25
|
-
"[a&]:hover:bg-primary/80"
|
|
26
|
-
],
|
|
27
|
-
destructive: [
|
|
28
|
-
"border-transparent",
|
|
29
|
-
"bg-destructive text-white",
|
|
30
|
-
"focus-visible:ring-destructive/20",
|
|
31
|
-
"dark:bg-destructive/60",
|
|
32
|
-
"dark:focus-visible:ring-destructive/40",
|
|
33
|
-
"[a&]:hover:bg-destructive/90"
|
|
34
|
-
],
|
|
35
|
-
outline: [
|
|
36
|
-
"border-input",
|
|
37
|
-
"bg-background",
|
|
38
|
-
"focus-visible:border-ring",
|
|
39
|
-
"[a&]:hover:border-ring/60 [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"
|
|
40
|
-
],
|
|
41
|
-
secondary: [
|
|
42
|
-
"border-transparent",
|
|
43
|
-
"bg-secondary text-secondary-foreground",
|
|
44
|
-
"[a&]:hover:bg-secondary/80"
|
|
45
|
-
]
|
|
46
|
-
} }
|
|
47
|
-
});
|
|
48
|
-
/**
|
|
49
|
-
* @since 0.3.16-canary.0
|
|
50
|
-
*/
|
|
51
|
-
function Badge({ asChild, className, variant, ...props }) {
|
|
52
|
-
return /* @__PURE__ */ jsx(asChild ? Slot : "span", {
|
|
8
|
+
function Badge({ asChild = false, className, variant = "default", ...props }) {
|
|
9
|
+
return /* @__PURE__ */ jsx(asChild ? Slot.Root : "span", {
|
|
53
10
|
className: badgeVariants({
|
|
54
11
|
className,
|
|
55
12
|
variant
|
|
56
13
|
}),
|
|
57
14
|
"data-slot": "badge",
|
|
15
|
+
"data-variant": variant,
|
|
58
16
|
...props
|
|
59
17
|
});
|
|
60
18
|
}
|
|
61
19
|
//#endregion
|
|
62
|
-
export { Badge
|
|
20
|
+
export { Badge };
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
"use client";
|
|
2
1
|
import { cn } from "../lib/utils.mjs";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import { ChevronRightIcon, MoreHorizontalIcon } from "lucide-react";
|
|
3
|
+
import { Slot } from "radix-ui";
|
|
5
4
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
5
|
//#region src/components/breadcrumb.tsx
|
|
7
6
|
/**
|
|
@@ -19,7 +18,7 @@ function Breadcrumb({ ...props }) {
|
|
|
19
18
|
*/
|
|
20
19
|
function BreadcrumbList({ className, ...props }) {
|
|
21
20
|
return /* @__PURE__ */ jsx("ol", {
|
|
22
|
-
className: cn("flex flex-wrap items-center gap-1.5 text-sm break-
|
|
21
|
+
className: cn("flex flex-wrap items-center gap-1.5 text-sm wrap-break-word text-muted-foreground sm:gap-2.5", className),
|
|
23
22
|
"data-slot": "breadcrumb-list",
|
|
24
23
|
...props
|
|
25
24
|
});
|
|
@@ -38,8 +37,8 @@ function BreadcrumbItem({ className, ...props }) {
|
|
|
38
37
|
* @since 0.3.16-canary.0
|
|
39
38
|
*/
|
|
40
39
|
function BreadcrumbLink({ asChild, className, ...props }) {
|
|
41
|
-
return /* @__PURE__ */ jsx(asChild ? Slot : "a", {
|
|
42
|
-
className: cn("transition-colors
|
|
40
|
+
return /* @__PURE__ */ jsx(asChild ? Slot.Root : "a", {
|
|
41
|
+
className: cn("transition-colors hover:text-foreground", className),
|
|
43
42
|
"data-slot": "breadcrumb-link",
|
|
44
43
|
...props
|
|
45
44
|
});
|
|
@@ -53,19 +52,21 @@ function BreadcrumbPage({ className, ...props }) {
|
|
|
53
52
|
"aria-disabled": "true",
|
|
54
53
|
className: cn("font-normal text-foreground", className),
|
|
55
54
|
"data-slot": "breadcrumb-page",
|
|
55
|
+
role: "link",
|
|
56
56
|
...props
|
|
57
57
|
});
|
|
58
58
|
}
|
|
59
59
|
/**
|
|
60
60
|
* @since 0.3.16-canary.0
|
|
61
61
|
*/
|
|
62
|
-
function BreadcrumbSeparator({ children, ...props }) {
|
|
62
|
+
function BreadcrumbSeparator({ children, className, ...props }) {
|
|
63
63
|
return /* @__PURE__ */ jsx("li", {
|
|
64
64
|
"aria-hidden": "true",
|
|
65
|
+
className: cn("[&>svg]:size-3.5", className),
|
|
65
66
|
"data-slot": "breadcrumb-separator",
|
|
66
67
|
role: "presentation",
|
|
67
68
|
...props,
|
|
68
|
-
children: children ?? /* @__PURE__ */ jsx(ChevronRightIcon, { className: "
|
|
69
|
+
children: children ?? /* @__PURE__ */ jsx(ChevronRightIcon, { className: "rtl:rotate-180" })
|
|
69
70
|
});
|
|
70
71
|
}
|
|
71
72
|
/**
|
|
@@ -74,11 +75,11 @@ function BreadcrumbSeparator({ children, ...props }) {
|
|
|
74
75
|
function BreadcrumbEllipsis({ className, ...props }) {
|
|
75
76
|
return /* @__PURE__ */ jsxs("span", {
|
|
76
77
|
"aria-hidden": "true",
|
|
77
|
-
className: cn("flex size-
|
|
78
|
+
className: cn("flex size-5 items-center justify-center [&>svg]:size-4", className),
|
|
78
79
|
"data-slot": "breadcrumb-ellipsis",
|
|
79
80
|
role: "presentation",
|
|
80
81
|
...props,
|
|
81
|
-
children: [/* @__PURE__ */ jsx(
|
|
82
|
+
children: [/* @__PURE__ */ jsx(MoreHorizontalIcon, {}), /* @__PURE__ */ jsx("span", {
|
|
82
83
|
className: "sr-only",
|
|
83
84
|
children: "More"
|
|
84
85
|
})]
|