@esmate/shadcn 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/hooks/use-mobile.d.ts +1 -0
- package/dist/hooks/use-mobile.js +16 -0
- package/dist/hooks/use-zod-form.d.ts +8 -0
- package/dist/hooks/use-zod-form.js +10 -0
- package/dist/lib/utils.d.ts +2 -0
- package/dist/lib/utils.js +6 -0
- package/dist/lib/zod.d.ts +1 -0
- package/dist/lib/zod.js +1 -0
- package/dist/styles/base.css +1 -0
- package/dist/styles/new-york.css +123 -0
- package/dist/ui/accordion.d.ts +7 -0
- package/dist/ui/accordion.js +39 -0
- package/dist/ui/alert-dialog.d.ts +14 -0
- package/dist/ui/alert-dialog.js +80 -0
- package/dist/ui/alert.d.ts +9 -0
- package/dist/ui/alert.js +39 -0
- package/dist/ui/aspect-ratio.d.ts +3 -0
- package/dist/ui/aspect-ratio.js +9 -0
- package/dist/ui/avatar.d.ts +6 -0
- package/dist/ui/avatar.js +26 -0
- package/dist/ui/badge.d.ts +9 -0
- package/dist/ui/badge.js +28 -0
- package/dist/ui/breadcrumb.d.ts +11 -0
- package/dist/ui/breadcrumb.js +66 -0
- package/dist/ui/button.d.ts +10 -0
- package/dist/ui/button.js +39 -0
- package/dist/ui/calendar.d.ts +4 -0
- package/dist/ui/calendar.js +53 -0
- package/dist/ui/card.d.ts +9 -0
- package/dist/ui/card.js +52 -0
- package/dist/ui/carousel.d.ts +19 -0
- package/dist/ui/carousel.js +135 -0
- package/dist/ui/chart.d.ts +40 -0
- package/dist/ui/chart.js +138 -0
- package/dist/ui/checkbox.d.ts +4 -0
- package/dist/ui/checkbox.js +18 -0
- package/dist/ui/collapsible.d.ts +5 -0
- package/dist/ui/collapsible.js +21 -0
- package/dist/ui/command.d.ts +16 -0
- package/dist/ui/command.js +77 -0
- package/dist/ui/context-menu.d.ts +25 -0
- package/dist/ui/context-menu.js +120 -0
- package/dist/ui/dialog.d.ts +13 -0
- package/dist/ui/dialog.js +78 -0
- package/dist/ui/drawer.d.ts +13 -0
- package/dist/ui/drawer.js +75 -0
- package/dist/ui/dropdown-menu.d.ts +25 -0
- package/dist/ui/dropdown-menu.js +121 -0
- package/dist/ui/form.d.ts +24 -0
- package/dist/ui/form.js +86 -0
- package/dist/ui/hover-card.d.ts +6 -0
- package/dist/ui/hover-card.js +28 -0
- package/dist/ui/input-otp.d.ts +11 -0
- package/dist/ui/input-otp.js +42 -0
- package/dist/ui/input.d.ts +3 -0
- package/dist/ui/input.js +11 -0
- package/dist/ui/label.d.ts +4 -0
- package/dist/ui/label.js +12 -0
- package/dist/ui/menubar.d.ts +26 -0
- package/dist/ui/menubar.js +131 -0
- package/dist/ui/navigation-menu.d.ts +14 -0
- package/dist/ui/navigation-menu.js +71 -0
- package/dist/ui/pagination.d.ts +13 -0
- package/dist/ui/pagination.js +71 -0
- package/dist/ui/popover.d.ts +7 -0
- package/dist/ui/popover.js +32 -0
- package/dist/ui/progress.d.ts +4 -0
- package/dist/ui/progress.js +18 -0
- package/dist/ui/radio-group.d.ts +5 -0
- package/dist/ui/radio-group.js +25 -0
- package/dist/ui/resizable.d.ts +8 -0
- package/dist/ui/resizable.js +30 -0
- package/dist/ui/scroll-area.d.ts +5 -0
- package/dist/ui/scroll-area.js +26 -0
- package/dist/ui/select.d.ts +15 -0
- package/dist/ui/select.js +89 -0
- package/dist/ui/separator.d.ts +4 -0
- package/dist/ui/separator.js +14 -0
- package/dist/ui/sheet.d.ts +13 -0
- package/dist/ui/sheet.js +78 -0
- package/dist/ui/sidebar.d.ts +69 -0
- package/dist/ui/sidebar.js +368 -0
- package/dist/ui/skeleton.d.ts +2 -0
- package/dist/ui/skeleton.js +9 -0
- package/dist/ui/slider.d.ts +4 -0
- package/dist/ui/slider.js +37 -0
- package/dist/ui/sonner.d.ts +3 -0
- package/dist/ui/sonner.js +17 -0
- package/dist/ui/switch.d.ts +4 -0
- package/dist/ui/switch.js +15 -0
- package/dist/ui/table.d.ts +10 -0
- package/dist/ui/table.js +63 -0
- package/dist/ui/tabs.d.ts +7 -0
- package/dist/ui/tabs.js +33 -0
- package/dist/ui/textarea.d.ts +3 -0
- package/dist/ui/textarea.js +10 -0
- package/dist/ui/toggle-group.d.ts +7 -0
- package/dist/ui/toggle-group.js +37 -0
- package/dist/ui/toggle.d.ts +9 -0
- package/dist/ui/toggle.js +34 -0
- package/dist/ui/tooltip.d.ts +7 -0
- package/dist/ui/tooltip.js +34 -0
- package/package.json +8 -8
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
"use client"
|
|
2
|
+
import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
|
|
3
|
+
import * as __WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__ from "@radix-ui/react-context-menu";
|
|
4
|
+
import * as __WEBPACK_EXTERNAL_MODULE_lucide_react_f128bbbb__ from "lucide-react";
|
|
5
|
+
import * as __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__ from "../lib/utils.js";
|
|
6
|
+
function ContextMenu({ ...props }) {
|
|
7
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.Root, {
|
|
8
|
+
"data-slot": "context-menu",
|
|
9
|
+
...props
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
function ContextMenuTrigger({ ...props }) {
|
|
13
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.Trigger, {
|
|
14
|
+
"data-slot": "context-menu-trigger",
|
|
15
|
+
...props
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
function ContextMenuGroup({ ...props }) {
|
|
19
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.Group, {
|
|
20
|
+
"data-slot": "context-menu-group",
|
|
21
|
+
...props
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
function ContextMenuPortal({ ...props }) {
|
|
25
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.Portal, {
|
|
26
|
+
"data-slot": "context-menu-portal",
|
|
27
|
+
...props
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
function ContextMenuSub({ ...props }) {
|
|
31
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.Sub, {
|
|
32
|
+
"data-slot": "context-menu-sub",
|
|
33
|
+
...props
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
function ContextMenuRadioGroup({ ...props }) {
|
|
37
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.RadioGroup, {
|
|
38
|
+
"data-slot": "context-menu-radio-group",
|
|
39
|
+
...props
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
function ContextMenuSubTrigger({ className, inset, children, ...props }) {
|
|
43
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.SubTrigger, {
|
|
44
|
+
"data-slot": "context-menu-sub-trigger",
|
|
45
|
+
"data-inset": inset,
|
|
46
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
|
|
47
|
+
...props
|
|
48
|
+
}, children, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_lucide_react_f128bbbb__.ChevronRightIcon, {
|
|
49
|
+
className: "ml-auto"
|
|
50
|
+
}));
|
|
51
|
+
}
|
|
52
|
+
function ContextMenuSubContent({ className, ...props }) {
|
|
53
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.SubContent, {
|
|
54
|
+
"data-slot": "context-menu-sub-content",
|
|
55
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg", className),
|
|
56
|
+
...props
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
function ContextMenuContent({ className, ...props }) {
|
|
60
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.Portal, null, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.Content, {
|
|
61
|
+
"data-slot": "context-menu-content",
|
|
62
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-context-menu-content-available-height) min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md", className),
|
|
63
|
+
...props
|
|
64
|
+
}));
|
|
65
|
+
}
|
|
66
|
+
function ContextMenuItem({ className, inset, variant = "default", ...props }) {
|
|
67
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.Item, {
|
|
68
|
+
"data-slot": "context-menu-item",
|
|
69
|
+
"data-inset": inset,
|
|
70
|
+
"data-variant": variant,
|
|
71
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
|
|
72
|
+
...props
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
function ContextMenuCheckboxItem({ className, children, checked, ...props }) {
|
|
76
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.CheckboxItem, {
|
|
77
|
+
"data-slot": "context-menu-checkbox-item",
|
|
78
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
|
|
79
|
+
checked: checked,
|
|
80
|
+
...props
|
|
81
|
+
}, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement("span", {
|
|
82
|
+
className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"
|
|
83
|
+
}, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.ItemIndicator, null, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_lucide_react_f128bbbb__.CheckIcon, {
|
|
84
|
+
className: "size-4"
|
|
85
|
+
}))), children);
|
|
86
|
+
}
|
|
87
|
+
function ContextMenuRadioItem({ className, children, ...props }) {
|
|
88
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.RadioItem, {
|
|
89
|
+
"data-slot": "context-menu-radio-item",
|
|
90
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
|
|
91
|
+
...props
|
|
92
|
+
}, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement("span", {
|
|
93
|
+
className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"
|
|
94
|
+
}, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.ItemIndicator, null, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_lucide_react_f128bbbb__.CircleIcon, {
|
|
95
|
+
className: "size-2 fill-current"
|
|
96
|
+
}))), children);
|
|
97
|
+
}
|
|
98
|
+
function ContextMenuLabel({ className, inset, ...props }) {
|
|
99
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.Label, {
|
|
100
|
+
"data-slot": "context-menu-label",
|
|
101
|
+
"data-inset": inset,
|
|
102
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("text-foreground px-2 py-1.5 text-sm font-medium data-[inset]:pl-8", className),
|
|
103
|
+
...props
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
function ContextMenuSeparator({ className, ...props }) {
|
|
107
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_context_menu_293d36e3__.Separator, {
|
|
108
|
+
"data-slot": "context-menu-separator",
|
|
109
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("bg-border -mx-1 my-1 h-px", className),
|
|
110
|
+
...props
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
function ContextMenuShortcut({ className, ...props }) {
|
|
114
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement("span", {
|
|
115
|
+
"data-slot": "context-menu-shortcut",
|
|
116
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("text-muted-foreground ml-auto text-xs tracking-widest", className),
|
|
117
|
+
...props
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
export { ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as DialogPrimitive from "@radix-ui/react-dialog";
|
|
3
|
+
declare function Dialog({ ...props }: React.ComponentProps<typeof DialogPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
declare function DialogTrigger({ ...props }: React.ComponentProps<typeof DialogPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
declare function DialogPortal({ ...props }: React.ComponentProps<typeof DialogPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
declare function DialogClose({ ...props }: React.ComponentProps<typeof DialogPrimitive.Close>): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
declare function DialogOverlay({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Overlay>): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
declare function DialogContent({ className, children, ...props }: React.ComponentProps<typeof DialogPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
declare function DialogHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
declare function DialogFooter({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
declare function DialogTitle({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
declare function DialogDescription({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Description>): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, };
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use client"
|
|
2
|
+
import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
|
|
3
|
+
import * as __WEBPACK_EXTERNAL_MODULE__radix_ui_react_dialog_6b867f3d__ from "@radix-ui/react-dialog";
|
|
4
|
+
import * as __WEBPACK_EXTERNAL_MODULE_lucide_react_f128bbbb__ from "lucide-react";
|
|
5
|
+
import * as __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__ from "../lib/utils.js";
|
|
6
|
+
function Dialog({ ...props }) {
|
|
7
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dialog_6b867f3d__.Root, {
|
|
8
|
+
"data-slot": "dialog",
|
|
9
|
+
...props
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
function DialogTrigger({ ...props }) {
|
|
13
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dialog_6b867f3d__.Trigger, {
|
|
14
|
+
"data-slot": "dialog-trigger",
|
|
15
|
+
...props
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
function DialogPortal({ ...props }) {
|
|
19
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dialog_6b867f3d__.Portal, {
|
|
20
|
+
"data-slot": "dialog-portal",
|
|
21
|
+
...props
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
function DialogClose({ ...props }) {
|
|
25
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dialog_6b867f3d__.Close, {
|
|
26
|
+
"data-slot": "dialog-close",
|
|
27
|
+
...props
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
function DialogOverlay({ className, ...props }) {
|
|
31
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dialog_6b867f3d__.Overlay, {
|
|
32
|
+
"data-slot": "dialog-overlay",
|
|
33
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50", className),
|
|
34
|
+
...props
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
function DialogContent({ className, children, ...props }) {
|
|
38
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(DialogPortal, {
|
|
39
|
+
"data-slot": "dialog-portal"
|
|
40
|
+
}, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(DialogOverlay, null), /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dialog_6b867f3d__.Content, {
|
|
41
|
+
"data-slot": "dialog-content",
|
|
42
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg", className),
|
|
43
|
+
...props
|
|
44
|
+
}, children, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dialog_6b867f3d__.Close, {
|
|
45
|
+
className: "ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4"
|
|
46
|
+
}, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_lucide_react_f128bbbb__.XIcon, null), /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement("span", {
|
|
47
|
+
className: "sr-only"
|
|
48
|
+
}, "Close"))));
|
|
49
|
+
}
|
|
50
|
+
function DialogHeader({ className, ...props }) {
|
|
51
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement("div", {
|
|
52
|
+
"data-slot": "dialog-header",
|
|
53
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("flex flex-col gap-2 text-center sm:text-left", className),
|
|
54
|
+
...props
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
function DialogFooter({ className, ...props }) {
|
|
58
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement("div", {
|
|
59
|
+
"data-slot": "dialog-footer",
|
|
60
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", className),
|
|
61
|
+
...props
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
function DialogTitle({ className, ...props }) {
|
|
65
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dialog_6b867f3d__.Title, {
|
|
66
|
+
"data-slot": "dialog-title",
|
|
67
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("text-lg leading-none font-semibold", className),
|
|
68
|
+
...props
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
function DialogDescription({ className, ...props }) {
|
|
72
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dialog_6b867f3d__.Description, {
|
|
73
|
+
"data-slot": "dialog-description",
|
|
74
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("text-muted-foreground text-sm", className),
|
|
75
|
+
...props
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { Drawer as DrawerPrimitive } from "vaul";
|
|
3
|
+
declare function Drawer({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
declare function DrawerTrigger({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
declare function DrawerPortal({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
declare function DrawerClose({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Close>): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
declare function DrawerOverlay({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Overlay>): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
declare function DrawerContent({ className, children, ...props }: React.ComponentProps<typeof DrawerPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
declare function DrawerHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
declare function DrawerFooter({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
declare function DrawerTitle({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
declare function DrawerDescription({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Description>): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
export { Drawer, DrawerPortal, DrawerOverlay, DrawerTrigger, DrawerClose, DrawerContent, DrawerHeader, DrawerFooter, DrawerTitle, DrawerDescription, };
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use client"
|
|
2
|
+
import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
|
|
3
|
+
import * as __WEBPACK_EXTERNAL_MODULE_vaul__ from "vaul";
|
|
4
|
+
import * as __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__ from "../lib/utils.js";
|
|
5
|
+
function Drawer({ ...props }) {
|
|
6
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_vaul__.Drawer.Root, {
|
|
7
|
+
"data-slot": "drawer",
|
|
8
|
+
...props
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
function DrawerTrigger({ ...props }) {
|
|
12
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_vaul__.Drawer.Trigger, {
|
|
13
|
+
"data-slot": "drawer-trigger",
|
|
14
|
+
...props
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
function DrawerPortal({ ...props }) {
|
|
18
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_vaul__.Drawer.Portal, {
|
|
19
|
+
"data-slot": "drawer-portal",
|
|
20
|
+
...props
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
function DrawerClose({ ...props }) {
|
|
24
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_vaul__.Drawer.Close, {
|
|
25
|
+
"data-slot": "drawer-close",
|
|
26
|
+
...props
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
function DrawerOverlay({ className, ...props }) {
|
|
30
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_vaul__.Drawer.Overlay, {
|
|
31
|
+
"data-slot": "drawer-overlay",
|
|
32
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50", className),
|
|
33
|
+
...props
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
function DrawerContent({ className, children, ...props }) {
|
|
37
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(DrawerPortal, {
|
|
38
|
+
"data-slot": "drawer-portal"
|
|
39
|
+
}, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(DrawerOverlay, null), /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_vaul__.Drawer.Content, {
|
|
40
|
+
"data-slot": "drawer-content",
|
|
41
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("group/drawer-content bg-background fixed z-50 flex h-auto flex-col", "data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[80vh] data-[vaul-drawer-direction=top]:rounded-b-lg data-[vaul-drawer-direction=top]:border-b", "data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[80vh] data-[vaul-drawer-direction=bottom]:rounded-t-lg data-[vaul-drawer-direction=bottom]:border-t", "data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=right]:border-l data-[vaul-drawer-direction=right]:sm:max-w-sm", "data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=left]:border-r data-[vaul-drawer-direction=left]:sm:max-w-sm", className),
|
|
42
|
+
...props
|
|
43
|
+
}, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement("div", {
|
|
44
|
+
className: "bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block"
|
|
45
|
+
}), children));
|
|
46
|
+
}
|
|
47
|
+
function DrawerHeader({ className, ...props }) {
|
|
48
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement("div", {
|
|
49
|
+
"data-slot": "drawer-header",
|
|
50
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("flex flex-col gap-1.5 p-4", className),
|
|
51
|
+
...props
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
function DrawerFooter({ className, ...props }) {
|
|
55
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement("div", {
|
|
56
|
+
"data-slot": "drawer-footer",
|
|
57
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("mt-auto flex flex-col gap-2 p-4", className),
|
|
58
|
+
...props
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
function DrawerTitle({ className, ...props }) {
|
|
62
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_vaul__.Drawer.Title, {
|
|
63
|
+
"data-slot": "drawer-title",
|
|
64
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("text-foreground font-semibold", className),
|
|
65
|
+
...props
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
function DrawerDescription({ className, ...props }) {
|
|
69
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_vaul__.Drawer.Description, {
|
|
70
|
+
"data-slot": "drawer-description",
|
|
71
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("text-muted-foreground text-sm", className),
|
|
72
|
+
...props
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
export { Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
|
|
3
|
+
declare function DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
declare function DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
declare function DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
declare function DropdownMenuContent({ className, sideOffset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
declare function DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
declare function DropdownMenuItem({ className, inset, variant, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {
|
|
9
|
+
inset?: boolean;
|
|
10
|
+
variant?: "default" | "destructive";
|
|
11
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
declare function DropdownMenuCheckboxItem({ className, children, checked, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
declare function DropdownMenuRadioGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
declare function DropdownMenuRadioItem({ className, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
declare function DropdownMenuLabel({ className, inset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {
|
|
16
|
+
inset?: boolean;
|
|
17
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
declare function DropdownMenuSeparator({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
declare function DropdownMenuShortcut({ className, ...props }: React.ComponentProps<"span">): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
declare function DropdownMenuSub({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>): import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {
|
|
22
|
+
inset?: boolean;
|
|
23
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
24
|
+
declare function DropdownMenuSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>): import("react/jsx-runtime").JSX.Element;
|
|
25
|
+
export { DropdownMenu, DropdownMenuPortal, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent, };
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use client"
|
|
2
|
+
import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
|
|
3
|
+
import * as __WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__ from "@radix-ui/react-dropdown-menu";
|
|
4
|
+
import * as __WEBPACK_EXTERNAL_MODULE_lucide_react_f128bbbb__ from "lucide-react";
|
|
5
|
+
import * as __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__ from "../lib/utils.js";
|
|
6
|
+
function DropdownMenu({ ...props }) {
|
|
7
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.Root, {
|
|
8
|
+
"data-slot": "dropdown-menu",
|
|
9
|
+
...props
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
function DropdownMenuPortal({ ...props }) {
|
|
13
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.Portal, {
|
|
14
|
+
"data-slot": "dropdown-menu-portal",
|
|
15
|
+
...props
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
function DropdownMenuTrigger({ ...props }) {
|
|
19
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.Trigger, {
|
|
20
|
+
"data-slot": "dropdown-menu-trigger",
|
|
21
|
+
...props
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
function DropdownMenuContent({ className, sideOffset = 4, ...props }) {
|
|
25
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.Portal, null, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.Content, {
|
|
26
|
+
"data-slot": "dropdown-menu-content",
|
|
27
|
+
sideOffset: sideOffset,
|
|
28
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md", className),
|
|
29
|
+
...props
|
|
30
|
+
}));
|
|
31
|
+
}
|
|
32
|
+
function DropdownMenuGroup({ ...props }) {
|
|
33
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.Group, {
|
|
34
|
+
"data-slot": "dropdown-menu-group",
|
|
35
|
+
...props
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
function DropdownMenuItem({ className, inset, variant = "default", ...props }) {
|
|
39
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.Item, {
|
|
40
|
+
"data-slot": "dropdown-menu-item",
|
|
41
|
+
"data-inset": inset,
|
|
42
|
+
"data-variant": variant,
|
|
43
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
|
|
44
|
+
...props
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
function DropdownMenuCheckboxItem({ className, children, checked, ...props }) {
|
|
48
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.CheckboxItem, {
|
|
49
|
+
"data-slot": "dropdown-menu-checkbox-item",
|
|
50
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
|
|
51
|
+
checked: checked,
|
|
52
|
+
...props
|
|
53
|
+
}, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement("span", {
|
|
54
|
+
className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"
|
|
55
|
+
}, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.ItemIndicator, null, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_lucide_react_f128bbbb__.CheckIcon, {
|
|
56
|
+
className: "size-4"
|
|
57
|
+
}))), children);
|
|
58
|
+
}
|
|
59
|
+
function DropdownMenuRadioGroup({ ...props }) {
|
|
60
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.RadioGroup, {
|
|
61
|
+
"data-slot": "dropdown-menu-radio-group",
|
|
62
|
+
...props
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
function DropdownMenuRadioItem({ className, children, ...props }) {
|
|
66
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.RadioItem, {
|
|
67
|
+
"data-slot": "dropdown-menu-radio-item",
|
|
68
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
|
|
69
|
+
...props
|
|
70
|
+
}, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement("span", {
|
|
71
|
+
className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"
|
|
72
|
+
}, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.ItemIndicator, null, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_lucide_react_f128bbbb__.CircleIcon, {
|
|
73
|
+
className: "size-2 fill-current"
|
|
74
|
+
}))), children);
|
|
75
|
+
}
|
|
76
|
+
function DropdownMenuLabel({ className, inset, ...props }) {
|
|
77
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.Label, {
|
|
78
|
+
"data-slot": "dropdown-menu-label",
|
|
79
|
+
"data-inset": inset,
|
|
80
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8", className),
|
|
81
|
+
...props
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
function DropdownMenuSeparator({ className, ...props }) {
|
|
85
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.Separator, {
|
|
86
|
+
"data-slot": "dropdown-menu-separator",
|
|
87
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("bg-border -mx-1 my-1 h-px", className),
|
|
88
|
+
...props
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
function DropdownMenuShortcut({ className, ...props }) {
|
|
92
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement("span", {
|
|
93
|
+
"data-slot": "dropdown-menu-shortcut",
|
|
94
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("text-muted-foreground ml-auto text-xs tracking-widest", className),
|
|
95
|
+
...props
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
function DropdownMenuSub({ ...props }) {
|
|
99
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.Sub, {
|
|
100
|
+
"data-slot": "dropdown-menu-sub",
|
|
101
|
+
...props
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
function DropdownMenuSubTrigger({ className, inset, children, ...props }) {
|
|
105
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.SubTrigger, {
|
|
106
|
+
"data-slot": "dropdown-menu-sub-trigger",
|
|
107
|
+
"data-inset": inset,
|
|
108
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8", className),
|
|
109
|
+
...props
|
|
110
|
+
}, children, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_lucide_react_f128bbbb__.ChevronRightIcon, {
|
|
111
|
+
className: "ml-auto size-4"
|
|
112
|
+
}));
|
|
113
|
+
}
|
|
114
|
+
function DropdownMenuSubContent({ className, ...props }) {
|
|
115
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_dropdown_menu_dbc6754d__.SubContent, {
|
|
116
|
+
"data-slot": "dropdown-menu-sub-content",
|
|
117
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg", className),
|
|
118
|
+
...props
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as LabelPrimitive from "@radix-ui/react-label";
|
|
3
|
+
import { Slot } from "@radix-ui/react-slot";
|
|
4
|
+
import { type ControllerProps, type FieldPath, type FieldValues } from "react-hook-form";
|
|
5
|
+
declare const Form: <TFieldValues extends FieldValues, TContext = any, TTransformedValues = TFieldValues>(props: import("react-hook-form").FormProviderProps<TFieldValues, TContext, TTransformedValues>) => React.JSX.Element;
|
|
6
|
+
declare const FormField: <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({ ...props }: ControllerProps<TFieldValues, TName>) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
declare const useFormField: () => {
|
|
8
|
+
invalid: boolean;
|
|
9
|
+
isDirty: boolean;
|
|
10
|
+
isTouched: boolean;
|
|
11
|
+
isValidating: boolean;
|
|
12
|
+
error?: import("react-hook-form").FieldError;
|
|
13
|
+
id: string;
|
|
14
|
+
name: string;
|
|
15
|
+
formItemId: string;
|
|
16
|
+
formDescriptionId: string;
|
|
17
|
+
formMessageId: string;
|
|
18
|
+
};
|
|
19
|
+
declare function FormItem({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
declare function FormLabel({ className, ...props }: React.ComponentProps<typeof LabelPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
declare function FormControl({ ...props }: React.ComponentProps<typeof Slot>): import("react/jsx-runtime").JSX.Element;
|
|
22
|
+
declare function FormDescription({ className, ...props }: React.ComponentProps<"p">): import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
declare function FormMessage({ className, ...props }: React.ComponentProps<"p">): import("react/jsx-runtime").JSX.Element | null;
|
|
24
|
+
export { useFormField, Form, FormItem, FormLabel, FormControl, FormDescription, FormMessage, FormField, };
|
package/dist/ui/form.js
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use client"
|
|
2
|
+
import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
|
|
3
|
+
import * as __WEBPACK_EXTERNAL_MODULE__radix_ui_react_slot_85c2da36__ from "@radix-ui/react-slot";
|
|
4
|
+
import * as __WEBPACK_EXTERNAL_MODULE_react_hook_form_05a66946__ from "react-hook-form";
|
|
5
|
+
import * as __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__ from "../lib/utils.js";
|
|
6
|
+
import * as __WEBPACK_EXTERNAL_MODULE__label_js_9a908b9b__ from "./label.js";
|
|
7
|
+
const Form = __WEBPACK_EXTERNAL_MODULE_react_hook_form_05a66946__.FormProvider;
|
|
8
|
+
const FormFieldContext = /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createContext({});
|
|
9
|
+
const FormField = ({ ...props })=>/*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(FormFieldContext.Provider, {
|
|
10
|
+
value: {
|
|
11
|
+
name: props.name
|
|
12
|
+
}
|
|
13
|
+
}, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE_react_hook_form_05a66946__.Controller, props));
|
|
14
|
+
const useFormField = ()=>{
|
|
15
|
+
const fieldContext = __WEBPACK_EXTERNAL_MODULE_react__.useContext(FormFieldContext);
|
|
16
|
+
const itemContext = __WEBPACK_EXTERNAL_MODULE_react__.useContext(FormItemContext);
|
|
17
|
+
const { getFieldState } = (0, __WEBPACK_EXTERNAL_MODULE_react_hook_form_05a66946__.useFormContext)();
|
|
18
|
+
const formState = (0, __WEBPACK_EXTERNAL_MODULE_react_hook_form_05a66946__.useFormState)({
|
|
19
|
+
name: fieldContext.name
|
|
20
|
+
});
|
|
21
|
+
const fieldState = getFieldState(fieldContext.name, formState);
|
|
22
|
+
if (!fieldContext) throw new Error("useFormField should be used within <FormField>");
|
|
23
|
+
const { id } = itemContext;
|
|
24
|
+
return {
|
|
25
|
+
id,
|
|
26
|
+
name: fieldContext.name,
|
|
27
|
+
formItemId: `${id}-form-item`,
|
|
28
|
+
formDescriptionId: `${id}-form-item-description`,
|
|
29
|
+
formMessageId: `${id}-form-item-message`,
|
|
30
|
+
...fieldState
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
const FormItemContext = /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createContext({});
|
|
34
|
+
function FormItem({ className, ...props }) {
|
|
35
|
+
const id = __WEBPACK_EXTERNAL_MODULE_react__.useId();
|
|
36
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(FormItemContext.Provider, {
|
|
37
|
+
value: {
|
|
38
|
+
id
|
|
39
|
+
}
|
|
40
|
+
}, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement("div", {
|
|
41
|
+
"data-slot": "form-item",
|
|
42
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("grid gap-2", className),
|
|
43
|
+
...props
|
|
44
|
+
}));
|
|
45
|
+
}
|
|
46
|
+
function FormLabel({ className, ...props }) {
|
|
47
|
+
const { error, formItemId } = useFormField();
|
|
48
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__label_js_9a908b9b__.Label, {
|
|
49
|
+
"data-slot": "form-label",
|
|
50
|
+
"data-error": !!error,
|
|
51
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("data-[error=true]:text-destructive", className),
|
|
52
|
+
htmlFor: formItemId,
|
|
53
|
+
...props
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
function FormControl({ ...props }) {
|
|
57
|
+
const { error, formItemId, formDescriptionId, formMessageId } = useFormField();
|
|
58
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_slot_85c2da36__.Slot, {
|
|
59
|
+
"data-slot": "form-control",
|
|
60
|
+
id: formItemId,
|
|
61
|
+
"aria-describedby": error ? `${formDescriptionId} ${formMessageId}` : `${formDescriptionId}`,
|
|
62
|
+
"aria-invalid": !!error,
|
|
63
|
+
...props
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
function FormDescription({ className, ...props }) {
|
|
67
|
+
const { formDescriptionId } = useFormField();
|
|
68
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement("p", {
|
|
69
|
+
"data-slot": "form-description",
|
|
70
|
+
id: formDescriptionId,
|
|
71
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("text-muted-foreground text-sm", className),
|
|
72
|
+
...props
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
function FormMessage({ className, ...props }) {
|
|
76
|
+
const { error, formMessageId } = useFormField();
|
|
77
|
+
const body = error ? String((null == error ? void 0 : error.message) ?? "") : props.children;
|
|
78
|
+
if (!body) return null;
|
|
79
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement("p", {
|
|
80
|
+
"data-slot": "form-message",
|
|
81
|
+
id: formMessageId,
|
|
82
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("text-destructive text-sm", className),
|
|
83
|
+
...props
|
|
84
|
+
}, body);
|
|
85
|
+
}
|
|
86
|
+
export { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, useFormField };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as HoverCardPrimitive from "@radix-ui/react-hover-card";
|
|
3
|
+
declare function HoverCard({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
declare function HoverCardTrigger({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
declare function HoverCardContent({ className, align, sideOffset, ...props }: React.ComponentProps<typeof HoverCardPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export { HoverCard, HoverCardTrigger, HoverCardContent };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use client"
|
|
2
|
+
import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
|
|
3
|
+
import * as __WEBPACK_EXTERNAL_MODULE__radix_ui_react_hover_card_5bbbbb96__ from "@radix-ui/react-hover-card";
|
|
4
|
+
import * as __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__ from "../lib/utils.js";
|
|
5
|
+
function HoverCard({ ...props }) {
|
|
6
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_hover_card_5bbbbb96__.Root, {
|
|
7
|
+
"data-slot": "hover-card",
|
|
8
|
+
...props
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
function HoverCardTrigger({ ...props }) {
|
|
12
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_hover_card_5bbbbb96__.Trigger, {
|
|
13
|
+
"data-slot": "hover-card-trigger",
|
|
14
|
+
...props
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
function HoverCardContent({ className, align = "center", sideOffset = 4, ...props }) {
|
|
18
|
+
return /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_hover_card_5bbbbb96__.Portal, {
|
|
19
|
+
"data-slot": "hover-card-portal"
|
|
20
|
+
}, /*#__PURE__*/ __WEBPACK_EXTERNAL_MODULE_react__.createElement(__WEBPACK_EXTERNAL_MODULE__radix_ui_react_hover_card_5bbbbb96__.Content, {
|
|
21
|
+
"data-slot": "hover-card-content",
|
|
22
|
+
align: align,
|
|
23
|
+
sideOffset: sideOffset,
|
|
24
|
+
className: (0, __WEBPACK_EXTERNAL_MODULE__lib_utils_js_5e4c9133__.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-64 origin-(--radix-hover-card-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden", className),
|
|
25
|
+
...props
|
|
26
|
+
}));
|
|
27
|
+
}
|
|
28
|
+
export { HoverCard, HoverCardContent, HoverCardTrigger };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { OTPInput } from "input-otp";
|
|
3
|
+
declare function InputOTP({ className, containerClassName, ...props }: React.ComponentProps<typeof OTPInput> & {
|
|
4
|
+
containerClassName?: string;
|
|
5
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
declare function InputOTPGroup({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
declare function InputOTPSlot({ index, className, ...props }: React.ComponentProps<"div"> & {
|
|
8
|
+
index: number;
|
|
9
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
declare function InputOTPSeparator({ ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export { InputOTP, InputOTPGroup, InputOTPSlot, InputOTPSeparator };
|