@codefast/ui 0.3.10 → 0.3.11-canary.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/README.md +277 -167
- package/dist/components/accordion.cjs +5 -5
- package/dist/components/accordion.d.ts +4 -4
- package/dist/components/accordion.js +5 -5
- package/dist/components/alert-dialog.cjs +9 -9
- package/dist/components/alert-dialog.d.ts +11 -11
- package/dist/components/alert-dialog.js +9 -9
- package/dist/components/alert.cjs +5 -5
- package/dist/components/alert.d.ts +5 -5
- package/dist/components/alert.js +5 -5
- package/dist/components/aspect-ratio.d.ts +2 -2
- package/dist/components/avatar.cjs +3 -3
- package/dist/components/avatar.d.ts +2 -2
- package/dist/components/avatar.js +3 -3
- package/dist/components/badge.cjs +7 -7
- package/dist/components/badge.d.ts +3 -3
- package/dist/components/badge.js +7 -7
- package/dist/components/breadcrumb.cjs +6 -8
- package/dist/components/breadcrumb.d.ts +8 -8
- package/dist/components/breadcrumb.js +6 -8
- package/dist/components/button-group.cjs +8 -8
- package/dist/components/button-group.d.ts +5 -5
- package/dist/components/button-group.js +8 -8
- package/dist/components/button.cjs +17 -17
- package/dist/components/button.d.ts +6 -6
- package/dist/components/button.js +17 -17
- package/dist/components/calendar.cjs +35 -35
- package/dist/components/calendar.d.ts +5 -5
- package/dist/components/calendar.js +35 -35
- package/dist/components/card.cjs +7 -7
- package/dist/components/card.d.ts +8 -8
- package/dist/components/card.js +7 -7
- package/dist/components/carousel.cjs +20 -20
- package/dist/components/carousel.d.ts +10 -10
- package/dist/components/carousel.js +20 -20
- package/dist/components/chart.cjs +42 -42
- package/dist/components/chart.d.ts +12 -11
- package/dist/components/chart.js +42 -42
- package/dist/components/checkbox-cards.cjs +2 -2
- package/dist/components/checkbox-cards.d.ts +2 -2
- package/dist/components/checkbox-cards.js +2 -2
- package/dist/components/checkbox-group.cjs +2 -2
- package/dist/components/checkbox-group.d.ts +2 -2
- package/dist/components/checkbox-group.js +2 -2
- package/dist/components/checkbox.cjs +1 -1
- package/dist/components/checkbox.d.ts +2 -2
- package/dist/components/checkbox.js +1 -1
- package/dist/components/collapsible.d.ts +2 -2
- package/dist/components/command.cjs +10 -10
- package/dist/components/command.d.ts +4 -4
- package/dist/components/command.js +10 -10
- package/dist/components/context-menu.cjs +10 -10
- package/dist/components/context-menu.d.ts +4 -4
- package/dist/components/context-menu.js +10 -10
- package/dist/components/dialog.cjs +12 -12
- package/dist/components/dialog.d.ts +10 -10
- package/dist/components/dialog.js +12 -12
- package/dist/components/drawer.cjs +9 -9
- package/dist/components/drawer.d.ts +9 -9
- package/dist/components/drawer.js +9 -9
- package/dist/components/dropdown-menu.cjs +10 -10
- package/dist/components/dropdown-menu.d.ts +4 -4
- package/dist/components/dropdown-menu.js +10 -10
- package/dist/components/empty.cjs +10 -10
- package/dist/components/empty.d.ts +9 -9
- package/dist/components/empty.js +10 -10
- package/dist/components/field.cjs +17 -17
- package/dist/components/field.d.ts +14 -14
- package/dist/components/field.js +17 -17
- package/dist/components/form.cjs +8 -8
- package/dist/components/form.d.ts +10 -10
- package/dist/components/form.js +8 -8
- package/dist/components/hover-card.cjs +3 -3
- package/dist/components/hover-card.d.ts +2 -2
- package/dist/components/hover-card.js +3 -3
- package/dist/components/input-group.cjs +20 -20
- package/dist/components/input-group.d.ts +15 -15
- package/dist/components/input-group.js +20 -20
- package/dist/components/input-number.cjs +7 -7
- package/dist/components/input-number.d.ts +2 -2
- package/dist/components/input-number.js +7 -7
- package/dist/components/input-otp.cjs +4 -4
- package/dist/components/input-otp.d.ts +6 -6
- package/dist/components/input-otp.js +4 -4
- package/dist/components/input-password.cjs +6 -6
- package/dist/components/input-password.d.ts +3 -3
- package/dist/components/input-password.js +6 -6
- package/dist/components/input-search.cjs +4 -4
- package/dist/components/input-search.d.ts +3 -3
- package/dist/components/input-search.js +4 -4
- package/dist/components/input.cjs +1 -1
- package/dist/components/input.d.ts +2 -2
- package/dist/components/input.js +1 -1
- package/dist/components/item.cjs +23 -23
- package/dist/components/item.d.ts +12 -12
- package/dist/components/item.js +23 -23
- package/dist/components/kbd.cjs +2 -2
- package/dist/components/kbd.d.ts +3 -3
- package/dist/components/kbd.js +2 -2
- package/dist/components/label.cjs +1 -1
- package/dist/components/label.d.ts +2 -2
- package/dist/components/label.js +1 -1
- package/dist/components/menubar.cjs +13 -13
- package/dist/components/menubar.d.ts +4 -4
- package/dist/components/menubar.js +13 -13
- package/dist/components/native-select.cjs +2 -2
- package/dist/components/native-select.d.ts +4 -4
- package/dist/components/native-select.js +2 -2
- package/dist/components/navigation-menu.cjs +10 -10
- package/dist/components/navigation-menu.d.ts +2 -2
- package/dist/components/navigation-menu.js +10 -10
- package/dist/components/pagination.cjs +6 -6
- package/dist/components/pagination.d.ts +10 -10
- package/dist/components/pagination.js +6 -6
- package/dist/components/popover.cjs +3 -3
- package/dist/components/popover.d.ts +3 -3
- package/dist/components/popover.js +3 -3
- package/dist/components/progress-circle.cjs +22 -22
- package/dist/components/progress-circle.d.ts +5 -5
- package/dist/components/progress-circle.js +22 -22
- package/dist/components/progress.cjs +2 -2
- package/dist/components/progress.d.ts +2 -2
- package/dist/components/progress.js +2 -2
- package/dist/components/radio-cards.cjs +3 -3
- package/dist/components/radio-cards.d.ts +2 -2
- package/dist/components/radio-cards.js +3 -3
- package/dist/components/radio-group.cjs +3 -3
- package/dist/components/radio-group.d.ts +2 -2
- package/dist/components/radio-group.js +3 -3
- package/dist/components/radio.cjs +1 -1
- package/dist/components/radio.d.ts +2 -2
- package/dist/components/radio.js +1 -1
- package/dist/components/resizable.cjs +3 -3
- package/dist/components/resizable.d.ts +2 -2
- package/dist/components/resizable.js +3 -3
- package/dist/components/scroll-area.cjs +31 -31
- package/dist/components/scroll-area.d.ts +5 -5
- package/dist/components/scroll-area.js +31 -31
- package/dist/components/select.cjs +9 -9
- package/dist/components/select.d.ts +5 -5
- package/dist/components/select.js +9 -9
- package/dist/components/separator.cjs +9 -9
- package/dist/components/separator.d.ts +5 -5
- package/dist/components/separator.js +9 -9
- package/dist/components/sheet.cjs +17 -17
- package/dist/components/sheet.d.ts +9 -9
- package/dist/components/sheet.js +17 -17
- package/dist/components/sidebar.cjs +65 -65
- package/dist/components/sidebar.d.ts +31 -31
- package/dist/components/sidebar.js +65 -65
- package/dist/components/skeleton.cjs +1 -1
- package/dist/components/skeleton.d.ts +2 -2
- package/dist/components/skeleton.js +1 -1
- package/dist/components/slider.cjs +4 -4
- package/dist/components/slider.d.ts +2 -2
- package/dist/components/slider.js +4 -4
- package/dist/components/sonner.cjs +4 -4
- package/dist/components/sonner.d.ts +3 -3
- package/dist/components/sonner.js +4 -4
- package/dist/components/spinner.cjs +5 -5
- package/dist/components/spinner.d.ts +2 -2
- package/dist/components/spinner.js +5 -5
- package/dist/components/switch.cjs +2 -2
- package/dist/components/switch.d.ts +2 -2
- package/dist/components/switch.js +2 -2
- package/dist/components/table.cjs +8 -8
- package/dist/components/table.d.ts +9 -9
- package/dist/components/table.js +8 -8
- package/dist/components/tabs.cjs +4 -4
- package/dist/components/tabs.d.ts +2 -2
- package/dist/components/tabs.js +4 -4
- package/dist/components/textarea.cjs +1 -1
- package/dist/components/textarea.d.ts +2 -2
- package/dist/components/textarea.js +1 -1
- package/dist/components/toggle-group.cjs +5 -5
- package/dist/components/toggle-group.d.ts +4 -4
- package/dist/components/toggle-group.js +5 -5
- package/dist/components/toggle.cjs +8 -8
- package/dist/components/toggle.d.ts +3 -3
- package/dist/components/toggle.js +8 -8
- package/dist/components/tooltip.cjs +2 -2
- package/dist/components/tooltip.d.ts +3 -3
- package/dist/components/tooltip.js +2 -2
- package/dist/css/preset.css +4 -4
- package/dist/css/style.css +3 -3
- package/dist/hooks/use-copy-to-clipboard.cjs +1 -1
- package/dist/hooks/use-copy-to-clipboard.d.ts +1 -1
- package/dist/hooks/use-copy-to-clipboard.js +1 -1
- package/dist/hooks/use-media-query.cjs +3 -3
- package/dist/hooks/use-media-query.js +3 -3
- package/dist/hooks/use-mutation-observer.d.ts +1 -1
- package/dist/hooks/use-pagination.cjs +1 -1
- package/dist/hooks/use-pagination.js +1 -1
- package/dist/index.d.ts +130 -130
- package/dist/primitives/checkbox-group.cjs +3 -3
- package/dist/primitives/checkbox-group.d.ts +11 -11
- package/dist/primitives/checkbox-group.js +3 -3
- package/dist/primitives/input-number.cjs +46 -46
- package/dist/primitives/input-number.d.ts +8 -8
- package/dist/primitives/input-number.js +46 -46
- package/dist/primitives/input.cjs +7 -7
- package/dist/primitives/input.d.ts +4 -4
- package/dist/primitives/input.js +7 -7
- package/dist/primitives/progress-circle.cjs +8 -8
- package/dist/primitives/progress-circle.d.ts +7 -7
- package/dist/primitives/progress-circle.js +8 -8
- package/package.json +38 -42
package/dist/components/item.js
CHANGED
|
@@ -3,39 +3,39 @@ import { cn, tv } from "@codefast/tailwind-variants";
|
|
|
3
3
|
import { Slot } from "@radix-ui/react-slot";
|
|
4
4
|
import { Separator } from "./separator.js";
|
|
5
5
|
const itemVariants = tv({
|
|
6
|
-
base: cn(
|
|
6
|
+
base: cn("group/item flex flex-wrap items-center rounded-lg border border-transparent text-sm outline-hidden transition-colors duration-100", "[a]:transition-colors [a]:hover:bg-accent/50", "focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50"),
|
|
7
7
|
defaultVariants: {
|
|
8
|
-
size:
|
|
9
|
-
variant:
|
|
8
|
+
size: "default",
|
|
9
|
+
variant: "default"
|
|
10
10
|
},
|
|
11
11
|
variants: {
|
|
12
12
|
size: {
|
|
13
|
-
default:
|
|
14
|
-
sm:
|
|
13
|
+
default: "gap-4 p-4",
|
|
14
|
+
sm: "gap-2.5 px-4 py-3"
|
|
15
15
|
},
|
|
16
16
|
variant: {
|
|
17
|
-
default:
|
|
18
|
-
muted:
|
|
19
|
-
outline:
|
|
17
|
+
default: "bg-transparent",
|
|
18
|
+
muted: "bg-muted/50",
|
|
19
|
+
outline: "border-border"
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
22
|
});
|
|
23
23
|
const itemMediaVariants = tv({
|
|
24
|
-
base: cn("group-has-[[data-slot=item-description]]/item:self-start
|
|
24
|
+
base: cn("flex shrink-0 items-center justify-center gap-2 group-has-[[data-slot=item-description]]/item:self-start", "group-has-[[data-slot=item-description]]/item:translate-y-0.5 [&_svg]:pointer-events-none"),
|
|
25
25
|
defaultVariants: {
|
|
26
|
-
variant:
|
|
26
|
+
variant: "default"
|
|
27
27
|
},
|
|
28
28
|
variants: {
|
|
29
29
|
variant: {
|
|
30
|
-
default:
|
|
30
|
+
default: "bg-transparent",
|
|
31
31
|
icon: "size-8 shrink-0 rounded-md border bg-muted [&_svg:not([class*='size-'])]:size-4",
|
|
32
|
-
image:
|
|
32
|
+
image: "size-10 shrink-0 overflow-hidden rounded-md [&_img]:size-full [&_img]:object-cover"
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
});
|
|
36
36
|
function ItemGroup({ className, ...props }) {
|
|
37
37
|
return /*#__PURE__*/ jsx("div", {
|
|
38
|
-
className: cn(
|
|
38
|
+
className: cn("group/item-group flex flex-col", className),
|
|
39
39
|
"data-slot": "item-group",
|
|
40
40
|
role: "list",
|
|
41
41
|
...props
|
|
@@ -43,14 +43,14 @@ function ItemGroup({ className, ...props }) {
|
|
|
43
43
|
}
|
|
44
44
|
function ItemSeparator({ className, ...props }) {
|
|
45
45
|
return /*#__PURE__*/ jsx(Separator, {
|
|
46
|
-
className: cn(
|
|
46
|
+
className: cn("my-0", className),
|
|
47
47
|
"data-slot": "item-separator",
|
|
48
48
|
orientation: "horizontal",
|
|
49
49
|
...props
|
|
50
50
|
});
|
|
51
51
|
}
|
|
52
|
-
function Item({ asChild = false, className, size =
|
|
53
|
-
const Component = asChild ? Slot :
|
|
52
|
+
function Item({ asChild = false, className, size = "default", variant = "default", ...props }) {
|
|
53
|
+
const Component = asChild ? Slot : "div";
|
|
54
54
|
return /*#__PURE__*/ jsx(Component, {
|
|
55
55
|
className: itemVariants({
|
|
56
56
|
className,
|
|
@@ -63,7 +63,7 @@ function Item({ asChild = false, className, size = 'default', variant = 'default
|
|
|
63
63
|
...props
|
|
64
64
|
});
|
|
65
65
|
}
|
|
66
|
-
function ItemMedia({ className, variant =
|
|
66
|
+
function ItemMedia({ className, variant = "default", ...props }) {
|
|
67
67
|
return /*#__PURE__*/ jsx("div", {
|
|
68
68
|
className: itemMediaVariants({
|
|
69
69
|
className,
|
|
@@ -76,42 +76,42 @@ function ItemMedia({ className, variant = 'default', ...props }) {
|
|
|
76
76
|
}
|
|
77
77
|
function ItemContent({ className, ...props }) {
|
|
78
78
|
return /*#__PURE__*/ jsx("div", {
|
|
79
|
-
className: cn(
|
|
79
|
+
className: cn("flex flex-1 flex-col gap-1 [&+[data-slot=item-content]]:flex-none", className),
|
|
80
80
|
"data-slot": "item-content",
|
|
81
81
|
...props
|
|
82
82
|
});
|
|
83
83
|
}
|
|
84
84
|
function ItemTitle({ className, ...props }) {
|
|
85
85
|
return /*#__PURE__*/ jsx("div", {
|
|
86
|
-
className: cn(
|
|
86
|
+
className: cn("flex w-fit items-center gap-2 text-sm leading-snug font-medium", className),
|
|
87
87
|
"data-slot": "item-title",
|
|
88
88
|
...props
|
|
89
89
|
});
|
|
90
90
|
}
|
|
91
91
|
function ItemDescription({ className, ...props }) {
|
|
92
92
|
return /*#__PURE__*/ jsx("p", {
|
|
93
|
-
className: cn(
|
|
93
|
+
className: cn("line-clamp-2 text-sm leading-normal font-normal text-balance text-muted-foreground", "[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary", className),
|
|
94
94
|
"data-slot": "item-description",
|
|
95
95
|
...props
|
|
96
96
|
});
|
|
97
97
|
}
|
|
98
98
|
function ItemActions({ className, ...props }) {
|
|
99
99
|
return /*#__PURE__*/ jsx("div", {
|
|
100
|
-
className: cn(
|
|
100
|
+
className: cn("flex items-center gap-2", className),
|
|
101
101
|
"data-slot": "item-actions",
|
|
102
102
|
...props
|
|
103
103
|
});
|
|
104
104
|
}
|
|
105
105
|
function ItemHeader({ className, ...props }) {
|
|
106
106
|
return /*#__PURE__*/ jsx("div", {
|
|
107
|
-
className: cn(
|
|
107
|
+
className: cn("flex basis-full items-center justify-between gap-2", className),
|
|
108
108
|
"data-slot": "item-header",
|
|
109
109
|
...props
|
|
110
110
|
});
|
|
111
111
|
}
|
|
112
112
|
function ItemFooter({ className, ...props }) {
|
|
113
113
|
return /*#__PURE__*/ jsx("div", {
|
|
114
|
-
className: cn(
|
|
114
|
+
className: cn("flex basis-full items-center justify-between gap-2", className),
|
|
115
115
|
"data-slot": "item-footer",
|
|
116
116
|
...props
|
|
117
117
|
});
|
package/dist/components/kbd.cjs
CHANGED
|
@@ -31,14 +31,14 @@ const jsx_runtime_namespaceObject = require("react/jsx-runtime");
|
|
|
31
31
|
const tailwind_variants_namespaceObject = require("@codefast/tailwind-variants");
|
|
32
32
|
function Kbd({ className, ...props }) {
|
|
33
33
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("kbd", {
|
|
34
|
-
className: (0, tailwind_variants_namespaceObject.cn)(
|
|
34
|
+
className: (0, tailwind_variants_namespaceObject.cn)("pointer-events-none inline-flex h-5 w-fit min-w-5 items-center justify-center gap-1 rounded-md bg-muted px-1 font-sans text-xs font-medium text-muted-foreground select-none", "[&_svg:not([class*='size-'])]:size-3", "[[data-slot=tooltip-content]_&]:bg-background/20 [[data-slot=tooltip-content]_&]:text-background dark:[[data-slot=tooltip-content]_&]:bg-background/10", className),
|
|
35
35
|
"data-slot": "kbd",
|
|
36
36
|
...props
|
|
37
37
|
});
|
|
38
38
|
}
|
|
39
39
|
function KbdGroup({ className, ...props }) {
|
|
40
40
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("kbd", {
|
|
41
|
-
className: (0, tailwind_variants_namespaceObject.cn)(
|
|
41
|
+
className: (0, tailwind_variants_namespaceObject.cn)("inline-flex items-center gap-1", className),
|
|
42
42
|
"data-slot": "kbd-group",
|
|
43
43
|
...props
|
|
44
44
|
});
|
package/dist/components/kbd.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { ComponentProps, JSX } from
|
|
2
|
-
type KbdProps = ComponentProps<
|
|
1
|
+
import type { ComponentProps, JSX } from "react";
|
|
2
|
+
type KbdProps = ComponentProps<"kbd">;
|
|
3
3
|
declare function Kbd({ className, ...props }: KbdProps): JSX.Element;
|
|
4
|
-
type KbdGroupProps = ComponentProps<
|
|
4
|
+
type KbdGroupProps = ComponentProps<"kbd">;
|
|
5
5
|
declare function KbdGroup({ className, ...props }: KbdGroupProps): JSX.Element;
|
|
6
6
|
export { Kbd, KbdGroup };
|
|
7
7
|
export type { KbdGroupProps, KbdProps };
|
package/dist/components/kbd.js
CHANGED
|
@@ -2,14 +2,14 @@ import { jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { cn } from "@codefast/tailwind-variants";
|
|
3
3
|
function Kbd({ className, ...props }) {
|
|
4
4
|
return /*#__PURE__*/ jsx("kbd", {
|
|
5
|
-
className: cn(
|
|
5
|
+
className: cn("pointer-events-none inline-flex h-5 w-fit min-w-5 items-center justify-center gap-1 rounded-md bg-muted px-1 font-sans text-xs font-medium text-muted-foreground select-none", "[&_svg:not([class*='size-'])]:size-3", "[[data-slot=tooltip-content]_&]:bg-background/20 [[data-slot=tooltip-content]_&]:text-background dark:[[data-slot=tooltip-content]_&]:bg-background/10", className),
|
|
6
6
|
"data-slot": "kbd",
|
|
7
7
|
...props
|
|
8
8
|
});
|
|
9
9
|
}
|
|
10
10
|
function KbdGroup({ className, ...props }) {
|
|
11
11
|
return /*#__PURE__*/ jsx("kbd", {
|
|
12
|
-
className: cn(
|
|
12
|
+
className: cn("inline-flex items-center gap-1", className),
|
|
13
13
|
"data-slot": "kbd-group",
|
|
14
14
|
...props
|
|
15
15
|
});
|
|
@@ -32,7 +32,7 @@ const tailwind_variants_namespaceObject = require("@codefast/tailwind-variants")
|
|
|
32
32
|
const react_label_namespaceObject = require("@radix-ui/react-label");
|
|
33
33
|
function Label({ className, ...props }) {
|
|
34
34
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(react_label_namespaceObject.Root, {
|
|
35
|
-
className: (0, tailwind_variants_namespaceObject.cn)(
|
|
35
|
+
className: (0, tailwind_variants_namespaceObject.cn)("inline-block text-sm leading-none font-medium group-data-disabled:opacity-50 peer-disabled:opacity-50 peer-aria-invalid:text-destructive peer-data-disabled:opacity-50 data-invalid:text-destructive", className),
|
|
36
36
|
"data-slot": "label",
|
|
37
37
|
...props
|
|
38
38
|
});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { ComponentProps, JSX } from
|
|
2
|
-
import * as LabelPrimitive from
|
|
1
|
+
import type { ComponentProps, JSX } from "react";
|
|
2
|
+
import * as LabelPrimitive from "@radix-ui/react-label";
|
|
3
3
|
type LabelProps = ComponentProps<typeof LabelPrimitive.Root>;
|
|
4
4
|
declare function Label({ className, ...props }: LabelProps): JSX.Element;
|
|
5
5
|
export { Label };
|
package/dist/components/label.js
CHANGED
|
@@ -4,7 +4,7 @@ import { cn } from "@codefast/tailwind-variants";
|
|
|
4
4
|
import { Root } from "@radix-ui/react-label";
|
|
5
5
|
function Label({ className, ...props }) {
|
|
6
6
|
return /*#__PURE__*/ jsx(Root, {
|
|
7
|
-
className: cn(
|
|
7
|
+
className: cn("inline-block text-sm leading-none font-medium group-data-disabled:opacity-50 peer-disabled:opacity-50 peer-aria-invalid:text-destructive peer-data-disabled:opacity-50 data-invalid:text-destructive", className),
|
|
8
8
|
"data-slot": "label",
|
|
9
9
|
...props
|
|
10
10
|
});
|
|
@@ -48,7 +48,7 @@ const react_menubar_namespaceObject = require("@radix-ui/react-menubar");
|
|
|
48
48
|
const external_lucide_react_namespaceObject = require("lucide-react");
|
|
49
49
|
function Menubar({ className, ...props }) {
|
|
50
50
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(react_menubar_namespaceObject.Root, {
|
|
51
|
-
className: (0, tailwind_variants_namespaceObject.cn)(
|
|
51
|
+
className: (0, tailwind_variants_namespaceObject.cn)("flex items-center space-x-1 rounded-lg border bg-background p-1", className),
|
|
52
52
|
"data-slot": "menubar",
|
|
53
53
|
...props
|
|
54
54
|
});
|
|
@@ -79,14 +79,14 @@ function MenubarRadioGroup({ ...props }) {
|
|
|
79
79
|
}
|
|
80
80
|
function MenubarTrigger({ className, ...props }) {
|
|
81
81
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(react_menubar_namespaceObject.Trigger, {
|
|
82
|
-
className: (0, tailwind_variants_namespaceObject.cn)(
|
|
82
|
+
className: (0, tailwind_variants_namespaceObject.cn)("flex items-center gap-x-2 rounded-sm px-2 py-1.5 text-sm font-medium outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground", className),
|
|
83
83
|
"data-slot": "menubar-trigger",
|
|
84
84
|
...props
|
|
85
85
|
});
|
|
86
86
|
}
|
|
87
87
|
function MenubarSubTrigger({ children, className, inset, ...props }) {
|
|
88
88
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(react_menubar_namespaceObject.SubTrigger, {
|
|
89
|
-
className: (0, tailwind_variants_namespaceObject.cn)(
|
|
89
|
+
className: (0, tailwind_variants_namespaceObject.cn)("flex cursor-default items-center gap-x-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-8 data-[state=open]:bg-accent data-[state=open]:text-accent-foreground", className),
|
|
90
90
|
"data-inset": inset,
|
|
91
91
|
"data-slot": "menubar-sub-trigger",
|
|
92
92
|
...props,
|
|
@@ -101,18 +101,18 @@ function MenubarSubTrigger({ children, className, inset, ...props }) {
|
|
|
101
101
|
function MenubarSubContent({ className, ...props }) {
|
|
102
102
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(react_menubar_namespaceObject.Portal, {
|
|
103
103
|
children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(react_menubar_namespaceObject.SubContent, {
|
|
104
|
-
className: (0, tailwind_variants_namespaceObject.cn)(
|
|
104
|
+
className: (0, tailwind_variants_namespaceObject.cn)("z-50 min-w-32 origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-lg border bg-popover p-1 text-popover-foreground shadow-lg ease-ui data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=closed]:data-[side=bottom]:slide-out-to-top-2 data-[state=closed]:data-[side=left]:slide-out-to-right-2 data-[state=closed]:data-[side=right]:slide-out-to-left-2 data-[state=closed]:data-[side=top]:slide-out-to-bottom-2 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=open]:data-[side=bottom]:slide-in-from-top-2 data-[state=open]:data-[side=left]:slide-in-from-right-2 data-[state=open]:data-[side=right]:slide-in-from-left-2 data-[state=open]:data-[side=top]:slide-in-from-bottom-2", className),
|
|
105
105
|
"data-slot": "menubar-sub-content",
|
|
106
106
|
...props
|
|
107
107
|
})
|
|
108
108
|
});
|
|
109
109
|
}
|
|
110
|
-
function MenubarContent({ align =
|
|
110
|
+
function MenubarContent({ align = "start", alignOffset = -4, className, sideOffset = 4, ...props }) {
|
|
111
111
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(react_menubar_namespaceObject.Portal, {
|
|
112
112
|
children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(react_menubar_namespaceObject.Content, {
|
|
113
113
|
align: align,
|
|
114
114
|
alignOffset: alignOffset,
|
|
115
|
-
className: (0, tailwind_variants_namespaceObject.cn)(
|
|
115
|
+
className: (0, tailwind_variants_namespaceObject.cn)("z-50 min-w-32 origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-lg border bg-popover p-1 text-popover-foreground shadow-lg ease-ui data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=open]:data-[side=bottom]:slide-in-from-top-2 data-[state=open]:data-[side=left]:slide-in-from-right-2 data-[state=open]:data-[side=right]:slide-in-from-left-2 data-[state=open]:data-[side=top]:slide-in-from-bottom-2", className),
|
|
116
116
|
"data-slot": "menubar-content",
|
|
117
117
|
sideOffset: sideOffset,
|
|
118
118
|
...props
|
|
@@ -121,7 +121,7 @@ function MenubarContent({ align = 'start', alignOffset = -4, className, sideOffs
|
|
|
121
121
|
}
|
|
122
122
|
function MenubarItem({ className, inset, variant, ...props }) {
|
|
123
123
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(react_menubar_namespaceObject.Item, {
|
|
124
|
-
className: (0, tailwind_variants_namespaceObject.cn)("focus:bg-accent focus:text-accent-foreground
|
|
124
|
+
className: (0, tailwind_variants_namespaceObject.cn)("group/menubar-item relative flex cursor-default items-center gap-x-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground aria-disabled:opacity-50 data-inset:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground data-[variant=destructive]:[&_svg:not([class*='text-'])]:text-destructive/80", className),
|
|
125
125
|
"data-inset": inset,
|
|
126
126
|
"data-slot": "menubar-item",
|
|
127
127
|
"data-variant": variant,
|
|
@@ -131,7 +131,7 @@ function MenubarItem({ className, inset, variant, ...props }) {
|
|
|
131
131
|
function MenubarCheckboxItem({ checked, children, className, ...props }) {
|
|
132
132
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(react_menubar_namespaceObject.CheckboxItem, {
|
|
133
133
|
checked: checked,
|
|
134
|
-
className: (0, tailwind_variants_namespaceObject.cn)("
|
|
134
|
+
className: (0, tailwind_variants_namespaceObject.cn)("group/menubar-item relative flex cursor-default items-center gap-x-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground aria-disabled:opacity-50 [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
|
|
135
135
|
"data-slot": "menubar-checkbox-item",
|
|
136
136
|
...props,
|
|
137
137
|
children: [
|
|
@@ -149,7 +149,7 @@ function MenubarCheckboxItem({ checked, children, className, ...props }) {
|
|
|
149
149
|
}
|
|
150
150
|
function MenubarRadioItem({ children, className, ...props }) {
|
|
151
151
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(react_menubar_namespaceObject.RadioItem, {
|
|
152
|
-
className: (0, tailwind_variants_namespaceObject.cn)("
|
|
152
|
+
className: (0, tailwind_variants_namespaceObject.cn)("group/menubar-item relative flex cursor-default items-center gap-x-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground aria-disabled:opacity-50 [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
|
|
153
153
|
"data-slot": "menubar-radio-item",
|
|
154
154
|
...props,
|
|
155
155
|
children: [
|
|
@@ -167,7 +167,7 @@ function MenubarRadioItem({ children, className, ...props }) {
|
|
|
167
167
|
}
|
|
168
168
|
function MenubarLabel({ className, inset, ...props }) {
|
|
169
169
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(react_menubar_namespaceObject.Label, {
|
|
170
|
-
className: (0, tailwind_variants_namespaceObject.cn)(
|
|
170
|
+
className: (0, tailwind_variants_namespaceObject.cn)("flex items-center gap-x-2 px-2 py-1.5 text-sm font-semibold data-inset:pl-8", className),
|
|
171
171
|
"data-inset": inset,
|
|
172
172
|
"data-slot": "menubar-label",
|
|
173
173
|
...props
|
|
@@ -175,21 +175,21 @@ function MenubarLabel({ className, inset, ...props }) {
|
|
|
175
175
|
}
|
|
176
176
|
function MenubarSeparator({ className, ...props }) {
|
|
177
177
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(react_menubar_namespaceObject.Separator, {
|
|
178
|
-
className: (0, tailwind_variants_namespaceObject.cn)(
|
|
178
|
+
className: (0, tailwind_variants_namespaceObject.cn)("mx-2 my-1 h-px bg-border", className),
|
|
179
179
|
"data-slot": "menubar-separator",
|
|
180
180
|
...props
|
|
181
181
|
});
|
|
182
182
|
}
|
|
183
183
|
function MenubarShortcut({ className, ...props }) {
|
|
184
184
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
|
|
185
|
-
className: (0, tailwind_variants_namespaceObject.cn)(
|
|
185
|
+
className: (0, tailwind_variants_namespaceObject.cn)("ml-auto text-xs tracking-widest text-muted-foreground group-data-[variant=destructive]/menubar-item:text-destructive/80", className),
|
|
186
186
|
"data-slot": "menubar-shortcut",
|
|
187
187
|
...props
|
|
188
188
|
});
|
|
189
189
|
}
|
|
190
190
|
function MenubarArrow({ className, ...props }) {
|
|
191
191
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(react_menubar_namespaceObject.Arrow, {
|
|
192
|
-
className: (0, tailwind_variants_namespaceObject.cn)(
|
|
192
|
+
className: (0, tailwind_variants_namespaceObject.cn)("fill-popover", className),
|
|
193
193
|
"data-slot": "menubar-arrow",
|
|
194
194
|
...props
|
|
195
195
|
});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { ComponentProps, JSX } from
|
|
2
|
-
import * as MenubarPrimitive from
|
|
1
|
+
import type { ComponentProps, JSX } from "react";
|
|
2
|
+
import * as MenubarPrimitive from "@radix-ui/react-menubar";
|
|
3
3
|
type MenubarProps = ComponentProps<typeof MenubarPrimitive.Root>;
|
|
4
4
|
declare function Menubar({ className, ...props }: MenubarProps): JSX.Element;
|
|
5
5
|
type MenubarMenuProps = ComponentProps<typeof MenubarPrimitive.Menu>;
|
|
@@ -22,7 +22,7 @@ type MenubarContentProps = ComponentProps<typeof MenubarPrimitive.Content>;
|
|
|
22
22
|
declare function MenubarContent({ align, alignOffset, className, sideOffset, ...props }: MenubarContentProps): JSX.Element;
|
|
23
23
|
interface MenubarItemProps extends ComponentProps<typeof MenubarPrimitive.Item> {
|
|
24
24
|
inset?: boolean;
|
|
25
|
-
variant?:
|
|
25
|
+
variant?: "default" | "destructive";
|
|
26
26
|
}
|
|
27
27
|
declare function MenubarItem({ className, inset, variant, ...props }: MenubarItemProps): JSX.Element;
|
|
28
28
|
type MenubarCheckboxItemProps = ComponentProps<typeof MenubarPrimitive.CheckboxItem>;
|
|
@@ -35,7 +35,7 @@ interface MenubarLabelProps extends ComponentProps<typeof MenubarPrimitive.Label
|
|
|
35
35
|
declare function MenubarLabel({ className, inset, ...props }: MenubarLabelProps): JSX.Element;
|
|
36
36
|
type MenubarSeparatorProps = ComponentProps<typeof MenubarPrimitive.Separator>;
|
|
37
37
|
declare function MenubarSeparator({ className, ...props }: MenubarSeparatorProps): JSX.Element;
|
|
38
|
-
type MenubarShortcutProps = ComponentProps<
|
|
38
|
+
type MenubarShortcutProps = ComponentProps<"span">;
|
|
39
39
|
declare function MenubarShortcut({ className, ...props }: MenubarShortcutProps): JSX.Element;
|
|
40
40
|
type MenubarArrowProps = ComponentProps<typeof MenubarPrimitive.Arrow>;
|
|
41
41
|
declare function MenubarArrow({ className, ...props }: MenubarArrowProps): JSX.Element;
|
|
@@ -5,7 +5,7 @@ import { Arrow, CheckboxItem, Content, Group, Item, ItemIndicator, Label, Menu,
|
|
|
5
5
|
import { CheckIcon, ChevronRightIcon, DotIcon } from "lucide-react";
|
|
6
6
|
function Menubar({ className, ...props }) {
|
|
7
7
|
return /*#__PURE__*/ jsx(Root, {
|
|
8
|
-
className: cn(
|
|
8
|
+
className: cn("flex items-center space-x-1 rounded-lg border bg-background p-1", className),
|
|
9
9
|
"data-slot": "menubar",
|
|
10
10
|
...props
|
|
11
11
|
});
|
|
@@ -36,14 +36,14 @@ function MenubarRadioGroup({ ...props }) {
|
|
|
36
36
|
}
|
|
37
37
|
function MenubarTrigger({ className, ...props }) {
|
|
38
38
|
return /*#__PURE__*/ jsx(Trigger, {
|
|
39
|
-
className: cn(
|
|
39
|
+
className: cn("flex items-center gap-x-2 rounded-sm px-2 py-1.5 text-sm font-medium outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground", className),
|
|
40
40
|
"data-slot": "menubar-trigger",
|
|
41
41
|
...props
|
|
42
42
|
});
|
|
43
43
|
}
|
|
44
44
|
function MenubarSubTrigger({ children, className, inset, ...props }) {
|
|
45
45
|
return /*#__PURE__*/ jsxs(SubTrigger, {
|
|
46
|
-
className: cn(
|
|
46
|
+
className: cn("flex cursor-default items-center gap-x-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-8 data-[state=open]:bg-accent data-[state=open]:text-accent-foreground", className),
|
|
47
47
|
"data-inset": inset,
|
|
48
48
|
"data-slot": "menubar-sub-trigger",
|
|
49
49
|
...props,
|
|
@@ -58,18 +58,18 @@ function MenubarSubTrigger({ children, className, inset, ...props }) {
|
|
|
58
58
|
function MenubarSubContent({ className, ...props }) {
|
|
59
59
|
return /*#__PURE__*/ jsx(Portal, {
|
|
60
60
|
children: /*#__PURE__*/ jsx(SubContent, {
|
|
61
|
-
className: cn(
|
|
61
|
+
className: cn("z-50 min-w-32 origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-lg border bg-popover p-1 text-popover-foreground shadow-lg ease-ui data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=closed]:data-[side=bottom]:slide-out-to-top-2 data-[state=closed]:data-[side=left]:slide-out-to-right-2 data-[state=closed]:data-[side=right]:slide-out-to-left-2 data-[state=closed]:data-[side=top]:slide-out-to-bottom-2 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=open]:data-[side=bottom]:slide-in-from-top-2 data-[state=open]:data-[side=left]:slide-in-from-right-2 data-[state=open]:data-[side=right]:slide-in-from-left-2 data-[state=open]:data-[side=top]:slide-in-from-bottom-2", className),
|
|
62
62
|
"data-slot": "menubar-sub-content",
|
|
63
63
|
...props
|
|
64
64
|
})
|
|
65
65
|
});
|
|
66
66
|
}
|
|
67
|
-
function MenubarContent({ align =
|
|
67
|
+
function MenubarContent({ align = "start", alignOffset = -4, className, sideOffset = 4, ...props }) {
|
|
68
68
|
return /*#__PURE__*/ jsx(Portal, {
|
|
69
69
|
children: /*#__PURE__*/ jsx(Content, {
|
|
70
70
|
align: align,
|
|
71
71
|
alignOffset: alignOffset,
|
|
72
|
-
className: cn(
|
|
72
|
+
className: cn("z-50 min-w-32 origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-lg border bg-popover p-1 text-popover-foreground shadow-lg ease-ui data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=open]:data-[side=bottom]:slide-in-from-top-2 data-[state=open]:data-[side=left]:slide-in-from-right-2 data-[state=open]:data-[side=right]:slide-in-from-left-2 data-[state=open]:data-[side=top]:slide-in-from-bottom-2", className),
|
|
73
73
|
"data-slot": "menubar-content",
|
|
74
74
|
sideOffset: sideOffset,
|
|
75
75
|
...props
|
|
@@ -78,7 +78,7 @@ function MenubarContent({ align = 'start', alignOffset = -4, className, sideOffs
|
|
|
78
78
|
}
|
|
79
79
|
function MenubarItem({ className, inset, variant, ...props }) {
|
|
80
80
|
return /*#__PURE__*/ jsx(Item, {
|
|
81
|
-
className: cn("focus:bg-accent focus:text-accent-foreground
|
|
81
|
+
className: cn("group/menubar-item relative flex cursor-default items-center gap-x-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground aria-disabled:opacity-50 data-inset:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground data-[variant=destructive]:[&_svg:not([class*='text-'])]:text-destructive/80", className),
|
|
82
82
|
"data-inset": inset,
|
|
83
83
|
"data-slot": "menubar-item",
|
|
84
84
|
"data-variant": variant,
|
|
@@ -88,7 +88,7 @@ function MenubarItem({ className, inset, variant, ...props }) {
|
|
|
88
88
|
function MenubarCheckboxItem({ checked, children, className, ...props }) {
|
|
89
89
|
return /*#__PURE__*/ jsxs(CheckboxItem, {
|
|
90
90
|
checked: checked,
|
|
91
|
-
className: cn("
|
|
91
|
+
className: cn("group/menubar-item relative flex cursor-default items-center gap-x-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground aria-disabled:opacity-50 [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
|
|
92
92
|
"data-slot": "menubar-checkbox-item",
|
|
93
93
|
...props,
|
|
94
94
|
children: [
|
|
@@ -106,7 +106,7 @@ function MenubarCheckboxItem({ checked, children, className, ...props }) {
|
|
|
106
106
|
}
|
|
107
107
|
function MenubarRadioItem({ children, className, ...props }) {
|
|
108
108
|
return /*#__PURE__*/ jsxs(RadioItem, {
|
|
109
|
-
className: cn("
|
|
109
|
+
className: cn("group/menubar-item relative flex cursor-default items-center gap-x-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground aria-disabled:opacity-50 [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
|
|
110
110
|
"data-slot": "menubar-radio-item",
|
|
111
111
|
...props,
|
|
112
112
|
children: [
|
|
@@ -124,7 +124,7 @@ function MenubarRadioItem({ children, className, ...props }) {
|
|
|
124
124
|
}
|
|
125
125
|
function MenubarLabel({ className, inset, ...props }) {
|
|
126
126
|
return /*#__PURE__*/ jsx(Label, {
|
|
127
|
-
className: cn(
|
|
127
|
+
className: cn("flex items-center gap-x-2 px-2 py-1.5 text-sm font-semibold data-inset:pl-8", className),
|
|
128
128
|
"data-inset": inset,
|
|
129
129
|
"data-slot": "menubar-label",
|
|
130
130
|
...props
|
|
@@ -132,21 +132,21 @@ function MenubarLabel({ className, inset, ...props }) {
|
|
|
132
132
|
}
|
|
133
133
|
function MenubarSeparator({ className, ...props }) {
|
|
134
134
|
return /*#__PURE__*/ jsx(Separator, {
|
|
135
|
-
className: cn(
|
|
135
|
+
className: cn("mx-2 my-1 h-px bg-border", className),
|
|
136
136
|
"data-slot": "menubar-separator",
|
|
137
137
|
...props
|
|
138
138
|
});
|
|
139
139
|
}
|
|
140
140
|
function MenubarShortcut({ className, ...props }) {
|
|
141
141
|
return /*#__PURE__*/ jsx("span", {
|
|
142
|
-
className: cn(
|
|
142
|
+
className: cn("ml-auto text-xs tracking-widest text-muted-foreground group-data-[variant=destructive]/menubar-item:text-destructive/80", className),
|
|
143
143
|
"data-slot": "menubar-shortcut",
|
|
144
144
|
...props
|
|
145
145
|
});
|
|
146
146
|
}
|
|
147
147
|
function MenubarArrow({ className, ...props }) {
|
|
148
148
|
return /*#__PURE__*/ jsx(Arrow, {
|
|
149
|
-
className: cn(
|
|
149
|
+
className: cn("fill-popover", className),
|
|
150
150
|
"data-slot": "menubar-arrow",
|
|
151
151
|
...props
|
|
152
152
|
});
|
|
@@ -37,13 +37,13 @@ function NativeSelect({ className, ...props }) {
|
|
|
37
37
|
"data-slot": "native-select-wrapper",
|
|
38
38
|
children: [
|
|
39
39
|
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("select", {
|
|
40
|
-
className: (0, tailwind_variants_namespaceObject.cn)(
|
|
40
|
+
className: (0, tailwind_variants_namespaceObject.cn)("h-9 w-full min-w-0 appearance-none rounded-lg border border-input bg-transparent px-3 py-2 pr-9 text-sm shadow-xs transition-[color,box-shadow] outline-none selection:bg-primary selection:text-primary-foreground placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed dark:bg-input/30 dark:hover:bg-input/50", "focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50", "aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40", className),
|
|
41
41
|
"data-slot": "native-select",
|
|
42
42
|
...props
|
|
43
43
|
}),
|
|
44
44
|
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_lucide_react_namespaceObject.ChevronDownIcon, {
|
|
45
45
|
"aria-hidden": "true",
|
|
46
|
-
className: "
|
|
46
|
+
className: "pointer-events-none absolute top-1/2 right-3.5 size-4 -translate-y-1/2 text-muted-foreground opacity-50 select-none",
|
|
47
47
|
"data-slot": "native-select-icon"
|
|
48
48
|
})
|
|
49
49
|
]
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type { ComponentProps, JSX } from
|
|
2
|
-
type NativeSelectProps = ComponentProps<
|
|
1
|
+
import type { ComponentProps, JSX } from "react";
|
|
2
|
+
type NativeSelectProps = ComponentProps<"select">;
|
|
3
3
|
declare function NativeSelect({ className, ...props }: NativeSelectProps): JSX.Element;
|
|
4
|
-
type NativeSelectOptionProps = ComponentProps<
|
|
4
|
+
type NativeSelectOptionProps = ComponentProps<"option">;
|
|
5
5
|
declare function NativeSelectOption({ ...props }: NativeSelectOptionProps): JSX.Element;
|
|
6
|
-
type NativeSelectOptGroupProps = ComponentProps<
|
|
6
|
+
type NativeSelectOptGroupProps = ComponentProps<"optgroup">;
|
|
7
7
|
declare function NativeSelectOptGroup({ className, ...props }: NativeSelectOptGroupProps): JSX.Element;
|
|
8
8
|
export { NativeSelect, NativeSelectOptGroup, NativeSelectOption };
|
|
9
9
|
export type { NativeSelectOptGroupProps, NativeSelectOptionProps, NativeSelectProps };
|
|
@@ -7,13 +7,13 @@ function NativeSelect({ className, ...props }) {
|
|
|
7
7
|
"data-slot": "native-select-wrapper",
|
|
8
8
|
children: [
|
|
9
9
|
/*#__PURE__*/ jsx("select", {
|
|
10
|
-
className: cn(
|
|
10
|
+
className: cn("h-9 w-full min-w-0 appearance-none rounded-lg border border-input bg-transparent px-3 py-2 pr-9 text-sm shadow-xs transition-[color,box-shadow] outline-none selection:bg-primary selection:text-primary-foreground placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed dark:bg-input/30 dark:hover:bg-input/50", "focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50", "aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40", className),
|
|
11
11
|
"data-slot": "native-select",
|
|
12
12
|
...props
|
|
13
13
|
}),
|
|
14
14
|
/*#__PURE__*/ jsx(ChevronDownIcon, {
|
|
15
15
|
"aria-hidden": "true",
|
|
16
|
-
className: "
|
|
16
|
+
className: "pointer-events-none absolute top-1/2 right-3.5 size-4 -translate-y-1/2 text-muted-foreground opacity-50 select-none",
|
|
17
17
|
"data-slot": "native-select-icon"
|
|
18
18
|
})
|
|
19
19
|
]
|