@jbpark/ui-kit 2.0.1 → 2.2.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/dist/Menu.d.mts +1 -1
- package/dist/Menu.mjs +4 -4
- package/dist/{Reveals-BpnYZJUk.mjs → Reveals-mkV9B8lj.mjs} +1 -1
- package/dist/Reveals.d.mts +1 -1
- package/dist/Reveals.mjs +2 -2
- package/dist/{Typography-LYvEW-c8.mjs → Typography-GMk9208W.mjs} +7 -8
- package/dist/Typography.d.mts +2 -2
- package/dist/Typography.mjs +2 -2
- package/dist/enums.mjs +10 -1
- package/dist/{index-CbElazGe.d.mts → index-BpmFT8LS.d.mts} +1 -1
- package/dist/{index-DP36DulT.d.mts → index-CKq4NOxI.d.mts} +17 -25
- package/dist/{index-CbaWHQ3Y.d.mts → index-CXT7Z-4F.d.mts} +5 -5
- package/dist/index.d.mts +167 -76
- package/dist/index.mjs +5 -5
- package/dist/output.css +772 -70
- package/dist/{src-DbD2jnc4.mjs → src-BUNbQOql.mjs} +1114 -456
- package/dist/{src-DbBw9pxl.css → src-Bb7sskwT.css} +66 -64
- package/dist/utils-CssUrKWE.mjs +16 -0
- package/dist/utils.d.mts +3 -1
- package/dist/utils.mjs +2 -2
- package/package.json +4 -2
- package/dist/enums-HFC1lmIX.mjs +0 -12
- package/dist/utils-DEenfsJ-.mjs +0 -10
|
@@ -1,26 +1,27 @@
|
|
|
1
|
-
import { t as cn } from "./utils-
|
|
2
|
-
import { t as Typography_default } from "./Typography-
|
|
3
|
-
import { ArrowUp, Check, ChevronDown, CircleQuestionMark, CircleX, Info, Loader2, LoaderCircle, OctagonAlert, OctagonX, Search, Square, SquareCheck, X, XIcon } from "lucide-react";
|
|
4
|
-
import
|
|
5
|
-
import
|
|
1
|
+
import { n as renderConditional, t as cn } from "./utils-CssUrKWE.mjs";
|
|
2
|
+
import { t as Typography_default } from "./Typography-GMk9208W.mjs";
|
|
3
|
+
import { ArrowUp, Check, CheckIcon, ChevronDown, ChevronDownIcon, ChevronUpIcon, CircleIcon, CircleQuestionMark, CircleX, Info, Loader2, LoaderCircle, OctagonAlert, OctagonX, Search, Square, SquareCheck, X, XIcon } from "lucide-react";
|
|
4
|
+
import React, { Children, createElement, useEffect, useId, useMemo, useRef, useState } from "react";
|
|
5
|
+
import * as AccordionPrimitive from "@radix-ui/react-accordion";
|
|
6
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
6
7
|
import { Slot } from "@radix-ui/react-slot";
|
|
7
8
|
import { cva } from "class-variance-authority";
|
|
8
|
-
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
9
9
|
import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
|
|
10
|
+
import * as DialogPrimitive from "@radix-ui/react-dialog";
|
|
11
|
+
import { Drawer } from "vaul";
|
|
10
12
|
import * as LabelPrimitive from "@radix-ui/react-label";
|
|
11
|
-
import { useIntersectionObserver, useThrottle, useWindowScroll } from "@uidotdev/usehooks";
|
|
12
13
|
import * as PopoverPrimitive from "@radix-ui/react-popover";
|
|
13
14
|
import * as ProgressPrimitive from "@radix-ui/react-progress";
|
|
15
|
+
import { RadioGroup, Select } from "radix-ui";
|
|
14
16
|
import * as SwitchPrimitive from "@radix-ui/react-switch";
|
|
15
|
-
import
|
|
17
|
+
import { HexColorPicker } from "react-colorful";
|
|
18
|
+
import { useIntersectionObserver, useThrottle, useWindowScroll } from "@uidotdev/usehooks";
|
|
16
19
|
import { AnimatePresence, motion } from "motion/react";
|
|
17
20
|
import { useResponsiveSize } from "@jbpark/use-hooks";
|
|
18
21
|
import { useGSAP } from "@gsap/react";
|
|
19
|
-
import { Drawer } from "vaul";
|
|
20
22
|
import { createPortal } from "react-dom";
|
|
21
23
|
import { createRoot } from "react-dom/client";
|
|
22
24
|
import { v4 } from "uuid";
|
|
23
|
-
import * as DialogPrimitive from "@radix-ui/react-dialog";
|
|
24
25
|
import { Autoplay, EffectCards, Navigation, Scrollbar } from "swiper/modules";
|
|
25
26
|
import { Swiper, SwiperSlide } from "swiper/react";
|
|
26
27
|
import "swiper/css";
|
|
@@ -29,22 +30,91 @@ import "swiper/css/effect-cards";
|
|
|
29
30
|
import "swiper/css/navigation";
|
|
30
31
|
import "swiper/css/scrollbar";
|
|
31
32
|
|
|
33
|
+
//#region rolldown:runtime
|
|
34
|
+
var __defProp = Object.defineProperty;
|
|
35
|
+
var __exportAll = (all, symbols) => {
|
|
36
|
+
let target = {};
|
|
37
|
+
for (var name in all) {
|
|
38
|
+
__defProp(target, name, {
|
|
39
|
+
get: all[name],
|
|
40
|
+
enumerable: true
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
if (symbols) {
|
|
44
|
+
__defProp(target, Symbol.toStringTag, { value: "Module" });
|
|
45
|
+
}
|
|
46
|
+
return target;
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
//#endregion
|
|
50
|
+
//#region src/core/accordion.tsx
|
|
51
|
+
var accordion_exports = /* @__PURE__ */ __exportAll({
|
|
52
|
+
Accordion: () => Accordion$1,
|
|
53
|
+
AccordionContent: () => AccordionContent$1,
|
|
54
|
+
AccordionItem: () => AccordionItem$1,
|
|
55
|
+
AccordionTrigger: () => AccordionTrigger$1
|
|
56
|
+
});
|
|
57
|
+
function Accordion$1({ ...props }) {
|
|
58
|
+
return /* @__PURE__ */ jsx(AccordionPrimitive.Root, {
|
|
59
|
+
"data-slot": "accordion",
|
|
60
|
+
...props
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
function AccordionItem$1({ className, ...props }) {
|
|
64
|
+
return /* @__PURE__ */ jsx(AccordionPrimitive.Item, {
|
|
65
|
+
"data-slot": "accordion-item",
|
|
66
|
+
className: cn("border-b last:border-b-0", className),
|
|
67
|
+
...props
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
function AccordionTrigger$1({ className, children, expandIcon, ...props }) {
|
|
71
|
+
return /* @__PURE__ */ jsx(AccordionPrimitive.Header, {
|
|
72
|
+
className: "flex",
|
|
73
|
+
children: /* @__PURE__ */ jsxs(AccordionPrimitive.Trigger, {
|
|
74
|
+
"data-slot": "accordion-trigger",
|
|
75
|
+
className: cn(`focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1
|
|
76
|
+
items-start justify-between gap-4 rounded-md py-4 text-left text-sm
|
|
77
|
+
font-medium transition-all outline-none hover:underline
|
|
78
|
+
focus-visible:ring-[3px] disabled:pointer-events-none
|
|
79
|
+
disabled:opacity-50 [&[data-state=open]>svg]:rotate-180`, className),
|
|
80
|
+
...props,
|
|
81
|
+
children: [children, expandIcon || /* @__PURE__ */ jsx(ChevronDownIcon, { className: "text-muted-foreground pointer-events-none size-4 shrink-0\n translate-y-0.5 transition-transform duration-200" })]
|
|
82
|
+
})
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
function AccordionContent$1({ className, children, ...props }) {
|
|
86
|
+
return /* @__PURE__ */ jsx(AccordionPrimitive.Content, {
|
|
87
|
+
"data-slot": "accordion-content",
|
|
88
|
+
className: "data-[state=closed]:animate-accordion-up\n data-[state=open]:animate-accordion-down overflow-hidden text-sm",
|
|
89
|
+
...props,
|
|
90
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
91
|
+
className: cn("pt-0 pb-4", className),
|
|
92
|
+
children
|
|
93
|
+
})
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
//#endregion
|
|
32
98
|
//#region src/core/button.tsx
|
|
33
99
|
const buttonVariants = cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", {
|
|
34
100
|
variants: {
|
|
35
101
|
variant: {
|
|
36
|
-
default: "bg-primary text-primary-foreground
|
|
37
|
-
destructive: "bg-destructive text-white
|
|
102
|
+
default: "bg-primary text-primary-foreground hover:bg-primary/90",
|
|
103
|
+
destructive: "bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
|
|
38
104
|
outline: "border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
|
|
39
|
-
secondary: "bg-secondary text-secondary-foreground
|
|
105
|
+
secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
40
106
|
ghost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
|
|
41
107
|
link: "text-primary underline-offset-4 hover:underline"
|
|
42
108
|
},
|
|
43
109
|
size: {
|
|
44
110
|
default: "h-9 px-4 py-2 has-[>svg]:px-3",
|
|
111
|
+
xs: "h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",
|
|
45
112
|
sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",
|
|
46
113
|
lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
|
|
47
|
-
icon: "size-9"
|
|
114
|
+
icon: "size-9",
|
|
115
|
+
"icon-xs": "size-6 rounded-md [&_svg:not([class*='size-'])]:size-3",
|
|
116
|
+
"icon-sm": "size-8",
|
|
117
|
+
"icon-lg": "size-10"
|
|
48
118
|
}
|
|
49
119
|
},
|
|
50
120
|
defaultVariants: {
|
|
@@ -52,9 +122,11 @@ const buttonVariants = cva("inline-flex items-center justify-center gap-2 whites
|
|
|
52
122
|
size: "default"
|
|
53
123
|
}
|
|
54
124
|
});
|
|
55
|
-
function Button$2({ className, variant, size, asChild = false, ...props }) {
|
|
125
|
+
function Button$2({ className, variant = "default", size = "default", asChild = false, ...props }) {
|
|
56
126
|
return /* @__PURE__ */ jsx(asChild ? Slot : "button", {
|
|
57
127
|
"data-slot": "button",
|
|
128
|
+
"data-variant": variant,
|
|
129
|
+
"data-size": size,
|
|
58
130
|
className: cn(buttonVariants({
|
|
59
131
|
variant,
|
|
60
132
|
size,
|
|
@@ -64,8 +136,597 @@ function Button$2({ className, variant, size, asChild = false, ...props }) {
|
|
|
64
136
|
});
|
|
65
137
|
}
|
|
66
138
|
|
|
139
|
+
//#endregion
|
|
140
|
+
//#region src/core/checkbox.tsx
|
|
141
|
+
var checkbox_exports = /* @__PURE__ */ __exportAll({ Checkbox: () => Checkbox$1 });
|
|
142
|
+
function Checkbox$1({ className, ...props }) {
|
|
143
|
+
return /* @__PURE__ */ jsx(CheckboxPrimitive.Root, {
|
|
144
|
+
"data-slot": "checkbox",
|
|
145
|
+
className: cn(`peer border-input dark:bg-input/30 data-[state=checked]:bg-primary
|
|
146
|
+
data-[state=checked]:text-primary-foreground
|
|
147
|
+
dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary
|
|
148
|
+
focus-visible:border-ring focus-visible:ring-ring/50
|
|
149
|
+
aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40
|
|
150
|
+
aria-invalid:border-destructive size-4 shrink-0 rounded-sm border
|
|
151
|
+
shadow-xs transition-shadow outline-none focus-visible:ring-[3px]
|
|
152
|
+
disabled:cursor-not-allowed disabled:opacity-50`, className),
|
|
153
|
+
...props,
|
|
154
|
+
children: /* @__PURE__ */ jsx(CheckboxPrimitive.Indicator, {
|
|
155
|
+
"data-slot": "checkbox-indicator",
|
|
156
|
+
className: "grid place-content-center text-current transition-none",
|
|
157
|
+
children: /* @__PURE__ */ jsx(CheckIcon, { className: "size-3.5" })
|
|
158
|
+
})
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
//#endregion
|
|
163
|
+
//#region src/core/dialog.tsx
|
|
164
|
+
var dialog_exports = /* @__PURE__ */ __exportAll({
|
|
165
|
+
Dialog: () => Dialog$1,
|
|
166
|
+
DialogClose: () => DialogClose,
|
|
167
|
+
DialogContent: () => DialogContent$1,
|
|
168
|
+
DialogDescription: () => DialogDescription$1,
|
|
169
|
+
DialogFooter: () => DialogFooter$1,
|
|
170
|
+
DialogHeader: () => DialogHeader$1,
|
|
171
|
+
DialogOverlay: () => DialogOverlay,
|
|
172
|
+
DialogPortal: () => DialogPortal,
|
|
173
|
+
DialogTitle: () => DialogTitle$1,
|
|
174
|
+
DialogTrigger: () => DialogTrigger
|
|
175
|
+
});
|
|
176
|
+
function Dialog$1({ ...props }) {
|
|
177
|
+
return /* @__PURE__ */ jsx(DialogPrimitive.Root, {
|
|
178
|
+
"data-slot": "dialog",
|
|
179
|
+
...props
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
function DialogTrigger({ ...props }) {
|
|
183
|
+
return /* @__PURE__ */ jsx(DialogPrimitive.Trigger, {
|
|
184
|
+
"data-slot": "dialog-trigger",
|
|
185
|
+
...props
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
function DialogPortal({ ...props }) {
|
|
189
|
+
return /* @__PURE__ */ jsx(DialogPrimitive.Portal, {
|
|
190
|
+
"data-slot": "dialog-portal",
|
|
191
|
+
...props
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
function DialogClose({ ...props }) {
|
|
195
|
+
return /* @__PURE__ */ jsx(DialogPrimitive.Close, {
|
|
196
|
+
"data-slot": "dialog-close",
|
|
197
|
+
...props
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
function DialogOverlay({ className, ...props }) {
|
|
201
|
+
return /* @__PURE__ */ jsx(DialogPrimitive.Overlay, {
|
|
202
|
+
"data-slot": "dialog-overlay",
|
|
203
|
+
className: cn(`data-[state=open]:animate-in data-[state=closed]:animate-out
|
|
204
|
+
data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0
|
|
205
|
+
z-50 bg-black/50`, className),
|
|
206
|
+
...props
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
function DialogContent$1({ className, children, classNames, closeIcon: _closeIcon, closable, container, onCancel, ...props }) {
|
|
210
|
+
const closeIcon = /* @__PURE__ */ jsxs(DialogPrimitive.Close, {
|
|
211
|
+
"data-slot": "dialog-close",
|
|
212
|
+
className: "ring-offset-background focus:ring-ring\n data-[state=open]:bg-accent data-[state=open]:text-muted-foreground\n absolute top-4 right-4 rounded-xs opacity-70 transition-opacity\n hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden\n disabled:pointer-events-none [&_svg]:pointer-events-none\n [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
213
|
+
disabled: typeof closable === "object" && closable.disabled,
|
|
214
|
+
onClick: onCancel,
|
|
215
|
+
children: [_closeIcon || /* @__PURE__ */ jsx(XIcon, {}), /* @__PURE__ */ jsx("span", {
|
|
216
|
+
className: "sr-only",
|
|
217
|
+
children: "Close"
|
|
218
|
+
})]
|
|
219
|
+
});
|
|
220
|
+
return /* @__PURE__ */ jsxs(DialogPortal, {
|
|
221
|
+
"data-slot": "dialog-portal",
|
|
222
|
+
container,
|
|
223
|
+
children: [/* @__PURE__ */ jsx(DialogOverlay, { className: cn(classNames?.mask) }), /* @__PURE__ */ jsxs(DialogPrimitive.Content, {
|
|
224
|
+
"data-slot": "dialog-content",
|
|
225
|
+
className: cn(`bg-background data-[state=open]:animate-in
|
|
226
|
+
data-[state=closed]:animate-out data-[state=closed]:fade-out-0
|
|
227
|
+
data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95
|
|
228
|
+
data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid
|
|
229
|
+
w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%]
|
|
230
|
+
gap-4 rounded-lg border p-6 shadow-lg duration-200 outline-none
|
|
231
|
+
sm:max-w-lg`, className),
|
|
232
|
+
...props,
|
|
233
|
+
children: [children, closable && closeIcon]
|
|
234
|
+
})]
|
|
235
|
+
});
|
|
236
|
+
}
|
|
237
|
+
function DialogHeader$1({ className, ...props }) {
|
|
238
|
+
return /* @__PURE__ */ jsx("div", {
|
|
239
|
+
"data-slot": "dialog-header",
|
|
240
|
+
className: cn("flex flex-col gap-2 text-center sm:text-left", className),
|
|
241
|
+
...props
|
|
242
|
+
});
|
|
243
|
+
}
|
|
244
|
+
function DialogFooter$1({ className, showCloseButton = false, children, ...props }) {
|
|
245
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
246
|
+
"data-slot": "dialog-footer",
|
|
247
|
+
className: cn("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", className),
|
|
248
|
+
...props,
|
|
249
|
+
children: [children, showCloseButton && /* @__PURE__ */ jsx(DialogPrimitive.Close, {
|
|
250
|
+
asChild: true,
|
|
251
|
+
children: /* @__PURE__ */ jsx(Button_default$1, {
|
|
252
|
+
variant: "outlined",
|
|
253
|
+
children: "Close"
|
|
254
|
+
})
|
|
255
|
+
})]
|
|
256
|
+
});
|
|
257
|
+
}
|
|
258
|
+
function DialogTitle$1({ className, ...props }) {
|
|
259
|
+
return /* @__PURE__ */ jsx(DialogPrimitive.Title, {
|
|
260
|
+
"data-slot": "dialog-title",
|
|
261
|
+
className: cn("text-lg leading-none font-semibold", className),
|
|
262
|
+
...props
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
function DialogDescription$1({ className, ...props }) {
|
|
266
|
+
return /* @__PURE__ */ jsx(DialogPrimitive.Description, {
|
|
267
|
+
"data-slot": "dialog-description",
|
|
268
|
+
className: cn("text-muted-foreground text-sm", className),
|
|
269
|
+
...props
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
//#endregion
|
|
274
|
+
//#region src/core/drawer.tsx
|
|
275
|
+
var drawer_exports = /* @__PURE__ */ __exportAll({
|
|
276
|
+
Drawer: () => Drawer$2,
|
|
277
|
+
DrawerClose: () => DrawerClose,
|
|
278
|
+
DrawerContent: () => DrawerContent$1,
|
|
279
|
+
DrawerDescription: () => DrawerDescription$1,
|
|
280
|
+
DrawerFooter: () => DrawerFooter$1,
|
|
281
|
+
DrawerHeader: () => DrawerHeader$1,
|
|
282
|
+
DrawerOverlay: () => DrawerOverlay,
|
|
283
|
+
DrawerPortal: () => DrawerPortal,
|
|
284
|
+
DrawerTitle: () => DrawerTitle$1,
|
|
285
|
+
DrawerTrigger: () => DrawerTrigger
|
|
286
|
+
});
|
|
287
|
+
function Drawer$2({ draggable, ...props }) {
|
|
288
|
+
return /* @__PURE__ */ jsx(Drawer.Root, {
|
|
289
|
+
"data-slot": "drawer",
|
|
290
|
+
handleOnly: !draggable,
|
|
291
|
+
...props
|
|
292
|
+
});
|
|
293
|
+
}
|
|
294
|
+
function DrawerTrigger({ ...props }) {
|
|
295
|
+
return /* @__PURE__ */ jsx(Drawer.Trigger, {
|
|
296
|
+
"data-slot": "drawer-trigger",
|
|
297
|
+
...props
|
|
298
|
+
});
|
|
299
|
+
}
|
|
300
|
+
function DrawerPortal({ ...props }) {
|
|
301
|
+
return /* @__PURE__ */ jsx(Drawer.Portal, {
|
|
302
|
+
"data-slot": "drawer-portal",
|
|
303
|
+
...props
|
|
304
|
+
});
|
|
305
|
+
}
|
|
306
|
+
function DrawerClose({ ...props }) {
|
|
307
|
+
return /* @__PURE__ */ jsx(Drawer.Close, {
|
|
308
|
+
"data-slot": "drawer-close",
|
|
309
|
+
...props
|
|
310
|
+
});
|
|
311
|
+
}
|
|
312
|
+
function DrawerOverlay({ className, ...props }) {
|
|
313
|
+
return /* @__PURE__ */ jsx(Drawer.Overlay, {
|
|
314
|
+
"data-slot": "drawer-overlay",
|
|
315
|
+
className: cn(`data-[state=open]:animate-in data-[state=closed]:animate-out
|
|
316
|
+
data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0
|
|
317
|
+
z-50 bg-black/50`, className),
|
|
318
|
+
...props
|
|
319
|
+
});
|
|
320
|
+
}
|
|
321
|
+
function DrawerContent$1({ className, children, classNames = {}, handlebar, mask, ...props }) {
|
|
322
|
+
return /* @__PURE__ */ jsxs(DrawerPortal, {
|
|
323
|
+
"data-slot": "drawer-portal",
|
|
324
|
+
children: [/* @__PURE__ */ jsx(DrawerOverlay, { className: cn(classNames?.mask || "", !mask && "hidden") }), /* @__PURE__ */ jsxs(Drawer.Content, {
|
|
325
|
+
"data-slot": "drawer-content",
|
|
326
|
+
className: cn("group/drawer-content bg-background fixed z-50 flex h-auto flex-col", `data-[vaul-drawer-direction=top]:inset-x-0
|
|
327
|
+
data-[vaul-drawer-direction=top]:top-0
|
|
328
|
+
data-[vaul-drawer-direction=top]:mb-24
|
|
329
|
+
data-[vaul-drawer-direction=top]:max-h-[80vh]
|
|
330
|
+
data-[vaul-drawer-direction=top]:rounded-b-lg
|
|
331
|
+
data-[vaul-drawer-direction=top]:border-b`, `data-[vaul-drawer-direction=bottom]:inset-x-0
|
|
332
|
+
data-[vaul-drawer-direction=bottom]:bottom-0
|
|
333
|
+
data-[vaul-drawer-direction=bottom]:mt-24
|
|
334
|
+
data-[vaul-drawer-direction=bottom]:max-h-[80vh]
|
|
335
|
+
data-[vaul-drawer-direction=bottom]:rounded-t-lg
|
|
336
|
+
data-[vaul-drawer-direction=bottom]:border-t`, `data-[vaul-drawer-direction=right]:inset-y-0
|
|
337
|
+
data-[vaul-drawer-direction=right]:right-0
|
|
338
|
+
data-[vaul-drawer-direction=right]:w-3/4
|
|
339
|
+
data-[vaul-drawer-direction=right]:border-l
|
|
340
|
+
data-[vaul-drawer-direction=right]:sm:max-w-sm`, `data-[vaul-drawer-direction=left]:inset-y-0
|
|
341
|
+
data-[vaul-drawer-direction=left]:left-0
|
|
342
|
+
data-[vaul-drawer-direction=left]:w-3/4
|
|
343
|
+
data-[vaul-drawer-direction=left]:border-r
|
|
344
|
+
data-[vaul-drawer-direction=left]:sm:max-w-sm`, className),
|
|
345
|
+
...props,
|
|
346
|
+
children: [handlebar && /* @__PURE__ */ jsx("div", { className: cn(`bg-muted mx-auto mt-4 hidden h-2 w-25 shrink-0 rounded-full
|
|
347
|
+
group-data-[vaul-drawer-direction=bottom]/drawer-content:block`, classNames?.handlebar) }), children]
|
|
348
|
+
})]
|
|
349
|
+
});
|
|
350
|
+
}
|
|
351
|
+
function DrawerHeader$1({ className, ...props }) {
|
|
352
|
+
return /* @__PURE__ */ jsx("div", {
|
|
353
|
+
"data-slot": "drawer-header",
|
|
354
|
+
className: cn(`flex flex-col gap-0.5 p-4
|
|
355
|
+
group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center
|
|
356
|
+
group-data-[vaul-drawer-direction=top]/drawer-content:text-center
|
|
357
|
+
md:gap-1.5 md:text-left`, className),
|
|
358
|
+
...props
|
|
359
|
+
});
|
|
360
|
+
}
|
|
361
|
+
function DrawerFooter$1({ className, ...props }) {
|
|
362
|
+
return /* @__PURE__ */ jsx("div", {
|
|
363
|
+
"data-slot": "drawer-footer",
|
|
364
|
+
className: cn("mt-auto flex flex-col gap-2 p-4", className),
|
|
365
|
+
...props
|
|
366
|
+
});
|
|
367
|
+
}
|
|
368
|
+
function DrawerTitle$1({ className, ...props }) {
|
|
369
|
+
return /* @__PURE__ */ jsx(Drawer.Title, {
|
|
370
|
+
"data-slot": "drawer-title",
|
|
371
|
+
className: cn("text-foreground font-semibold", className),
|
|
372
|
+
...props
|
|
373
|
+
});
|
|
374
|
+
}
|
|
375
|
+
function DrawerDescription$1({ className, ...props }) {
|
|
376
|
+
return /* @__PURE__ */ jsx(Drawer.Description, {
|
|
377
|
+
"data-slot": "drawer-description",
|
|
378
|
+
className: cn("text-muted-foreground text-sm", className),
|
|
379
|
+
...props
|
|
380
|
+
});
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
//#endregion
|
|
384
|
+
//#region src/core/input.tsx
|
|
385
|
+
var input_exports = /* @__PURE__ */ __exportAll({ Input: () => Input$1 });
|
|
386
|
+
function Input$1({ className, type, ...props }) {
|
|
387
|
+
return /* @__PURE__ */ jsx("input", {
|
|
388
|
+
type,
|
|
389
|
+
"data-slot": "input",
|
|
390
|
+
className: cn(`file:text-foreground placeholder:text-muted-foreground
|
|
391
|
+
selection:bg-primary selection:text-primary-foreground dark:bg-input/30
|
|
392
|
+
border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3
|
|
393
|
+
py-1 text-base shadow-xs transition-[color,box-shadow] outline-none
|
|
394
|
+
file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm
|
|
395
|
+
file:font-medium disabled:pointer-events-none
|
|
396
|
+
disabled:cursor-not-allowed disabled:opacity-50 md:text-sm`, `focus-visible:border-ring focus-visible:ring-ring/50
|
|
397
|
+
focus-visible:ring-[3px]`, `aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40
|
|
398
|
+
aria-invalid:border-destructive`, className),
|
|
399
|
+
...props
|
|
400
|
+
});
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
//#endregion
|
|
404
|
+
//#region src/core/label.tsx
|
|
405
|
+
var label_exports = /* @__PURE__ */ __exportAll({ Label: () => Label$2 });
|
|
406
|
+
function Label$2({ className, ...props }) {
|
|
407
|
+
return /* @__PURE__ */ jsx(LabelPrimitive.Root, {
|
|
408
|
+
"data-slot": "label",
|
|
409
|
+
className: cn(`flex items-center gap-2 text-sm leading-none font-medium select-none
|
|
410
|
+
group-data-[disabled=true]:pointer-events-none
|
|
411
|
+
group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed
|
|
412
|
+
peer-disabled:opacity-50`, className),
|
|
413
|
+
...props
|
|
414
|
+
});
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
//#endregion
|
|
418
|
+
//#region src/core/popover.tsx
|
|
419
|
+
var popover_exports = /* @__PURE__ */ __exportAll({
|
|
420
|
+
Popover: () => Popover$1,
|
|
421
|
+
PopoverAnchor: () => PopoverAnchor,
|
|
422
|
+
PopoverContent: () => PopoverContent$1,
|
|
423
|
+
PopoverDescription: () => PopoverDescription,
|
|
424
|
+
PopoverHeader: () => PopoverHeader,
|
|
425
|
+
PopoverTitle: () => PopoverTitle,
|
|
426
|
+
PopoverTrigger: () => PopoverTrigger$1
|
|
427
|
+
});
|
|
428
|
+
function Popover$1({ ...props }) {
|
|
429
|
+
return /* @__PURE__ */ jsx(PopoverPrimitive.Root, {
|
|
430
|
+
"data-slot": "popover",
|
|
431
|
+
...props
|
|
432
|
+
});
|
|
433
|
+
}
|
|
434
|
+
function PopoverTrigger$1({ ...props }) {
|
|
435
|
+
return /* @__PURE__ */ jsx(PopoverPrimitive.Trigger, {
|
|
436
|
+
"data-slot": "popover-trigger",
|
|
437
|
+
...props
|
|
438
|
+
});
|
|
439
|
+
}
|
|
440
|
+
function PopoverContent$1({ className, align = "center", sideOffset = 4, ...props }) {
|
|
441
|
+
return /* @__PURE__ */ jsx(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx(PopoverPrimitive.Content, {
|
|
442
|
+
"data-slot": "popover-content",
|
|
443
|
+
align,
|
|
444
|
+
sideOffset,
|
|
445
|
+
className: cn(`bg-popover text-popover-foreground data-[state=open]:animate-in
|
|
446
|
+
data-[state=closed]:animate-out data-[state=closed]:fade-out-0
|
|
447
|
+
data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95
|
|
448
|
+
data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2
|
|
449
|
+
data-[side=left]:slide-in-from-right-2
|
|
450
|
+
data-[side=right]:slide-in-from-left-2
|
|
451
|
+
data-[side=top]:slide-in-from-bottom-2 z-50 w-72
|
|
452
|
+
origin-(--radix-popover-content-transform-origin) rounded-md border
|
|
453
|
+
p-4 shadow-md outline-hidden`, className),
|
|
454
|
+
...props
|
|
455
|
+
}) });
|
|
456
|
+
}
|
|
457
|
+
function PopoverAnchor({ ...props }) {
|
|
458
|
+
return /* @__PURE__ */ jsx(PopoverPrimitive.Anchor, {
|
|
459
|
+
"data-slot": "popover-anchor",
|
|
460
|
+
...props
|
|
461
|
+
});
|
|
462
|
+
}
|
|
463
|
+
function PopoverHeader({ className, ...props }) {
|
|
464
|
+
return /* @__PURE__ */ jsx("div", {
|
|
465
|
+
"data-slot": "popover-header",
|
|
466
|
+
className: cn("flex flex-col gap-1 text-sm", className),
|
|
467
|
+
...props
|
|
468
|
+
});
|
|
469
|
+
}
|
|
470
|
+
function PopoverTitle({ className, ...props }) {
|
|
471
|
+
return /* @__PURE__ */ jsx("div", {
|
|
472
|
+
"data-slot": "popover-title",
|
|
473
|
+
className: cn("font-medium", className),
|
|
474
|
+
...props
|
|
475
|
+
});
|
|
476
|
+
}
|
|
477
|
+
function PopoverDescription({ className, ...props }) {
|
|
478
|
+
return /* @__PURE__ */ jsx("p", {
|
|
479
|
+
"data-slot": "popover-description",
|
|
480
|
+
className: cn("text-muted-foreground", className),
|
|
481
|
+
...props
|
|
482
|
+
});
|
|
483
|
+
}
|
|
484
|
+
|
|
485
|
+
//#endregion
|
|
486
|
+
//#region src/core/progress.tsx
|
|
487
|
+
var progress_exports = /* @__PURE__ */ __exportAll({ Progress: () => Progress$1 });
|
|
488
|
+
function Progress$1({ className, value, barClassName, barStyle, ...props }) {
|
|
489
|
+
return /* @__PURE__ */ jsx(ProgressPrimitive.Root, {
|
|
490
|
+
"data-slot": "progress",
|
|
491
|
+
className: cn("bg-primary/20 relative h-2 w-full overflow-hidden rounded-full", className),
|
|
492
|
+
...props,
|
|
493
|
+
children: /* @__PURE__ */ jsx(ProgressPrimitive.Indicator, {
|
|
494
|
+
"data-slot": "progress-indicator",
|
|
495
|
+
className: cn("bg-primary h-full w-full flex-1 transition-all", barClassName),
|
|
496
|
+
style: {
|
|
497
|
+
transform: `translateX(-${100 - (value || 0)}%)`,
|
|
498
|
+
...barStyle
|
|
499
|
+
}
|
|
500
|
+
})
|
|
501
|
+
});
|
|
502
|
+
}
|
|
503
|
+
|
|
504
|
+
//#endregion
|
|
505
|
+
//#region src/core/radio-group.tsx
|
|
506
|
+
var radio_group_exports = /* @__PURE__ */ __exportAll({
|
|
507
|
+
RadioGroup: () => RadioGroup$1,
|
|
508
|
+
RadioGroupItem: () => RadioGroupItem
|
|
509
|
+
});
|
|
510
|
+
function RadioGroup$1({ className, ...props }) {
|
|
511
|
+
return /* @__PURE__ */ jsx(RadioGroup.Root, {
|
|
512
|
+
"data-slot": "radio-group",
|
|
513
|
+
className: cn("grid gap-3", className),
|
|
514
|
+
...props
|
|
515
|
+
});
|
|
516
|
+
}
|
|
517
|
+
function RadioGroupItem({ className, ...props }) {
|
|
518
|
+
return /* @__PURE__ */ jsx(RadioGroup.Item, {
|
|
519
|
+
"data-slot": "radio-group-item",
|
|
520
|
+
className: cn(`border-input text-primary focus-visible:border-ring
|
|
521
|
+
focus-visible:ring-ring/50 aria-invalid:ring-destructive/20
|
|
522
|
+
dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive
|
|
523
|
+
dark:bg-input/30 aspect-square size-4 shrink-0 rounded-full border
|
|
524
|
+
shadow-xs transition-[color,box-shadow] outline-none
|
|
525
|
+
focus-visible:ring-[3px] disabled:cursor-not-allowed
|
|
526
|
+
disabled:opacity-50`, className),
|
|
527
|
+
...props,
|
|
528
|
+
children: /* @__PURE__ */ jsx(RadioGroup.Indicator, {
|
|
529
|
+
"data-slot": "radio-group-indicator",
|
|
530
|
+
className: "relative flex items-center justify-center",
|
|
531
|
+
children: /* @__PURE__ */ jsx(CircleIcon, { className: "fill-primary absolute top-1/2 left-1/2 size-2\n -translate-x-1/2 -translate-y-1/2" })
|
|
532
|
+
})
|
|
533
|
+
});
|
|
534
|
+
}
|
|
535
|
+
|
|
536
|
+
//#endregion
|
|
537
|
+
//#region src/core/select.tsx
|
|
538
|
+
var select_exports = /* @__PURE__ */ __exportAll({
|
|
539
|
+
Select: () => Select$2,
|
|
540
|
+
SelectContent: () => SelectContent$1,
|
|
541
|
+
SelectGroup: () => SelectGroup$1,
|
|
542
|
+
SelectItem: () => SelectItem$1,
|
|
543
|
+
SelectLabel: () => SelectLabel$1,
|
|
544
|
+
SelectScrollDownButton: () => SelectScrollDownButton,
|
|
545
|
+
SelectScrollUpButton: () => SelectScrollUpButton,
|
|
546
|
+
SelectSeparator: () => SelectSeparator,
|
|
547
|
+
SelectTrigger: () => SelectTrigger$1,
|
|
548
|
+
SelectValue: () => SelectValue$1
|
|
549
|
+
});
|
|
550
|
+
function Select$2({ ...props }) {
|
|
551
|
+
return /* @__PURE__ */ jsx(Select.Root, {
|
|
552
|
+
"data-slot": "select",
|
|
553
|
+
...props
|
|
554
|
+
});
|
|
555
|
+
}
|
|
556
|
+
function SelectGroup$1({ ...props }) {
|
|
557
|
+
return /* @__PURE__ */ jsx(Select.Group, {
|
|
558
|
+
"data-slot": "select-group",
|
|
559
|
+
...props
|
|
560
|
+
});
|
|
561
|
+
}
|
|
562
|
+
function SelectValue$1({ ...props }) {
|
|
563
|
+
return /* @__PURE__ */ jsx(Select.Value, {
|
|
564
|
+
"data-slot": "select-value",
|
|
565
|
+
...props
|
|
566
|
+
});
|
|
567
|
+
}
|
|
568
|
+
function SelectTrigger$1({ className, size = "default", children, ...props }) {
|
|
569
|
+
return /* @__PURE__ */ jsxs(Select.Trigger, {
|
|
570
|
+
"data-slot": "select-trigger",
|
|
571
|
+
"data-size": size,
|
|
572
|
+
className: cn(`border-input data-[placeholder]:text-muted-foreground
|
|
573
|
+
[&_svg:not([class*='text-'])]:text-muted-foreground
|
|
574
|
+
focus-visible:border-ring focus-visible:ring-ring/50
|
|
575
|
+
aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40
|
|
576
|
+
aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50
|
|
577
|
+
flex w-fit items-center justify-between gap-2 rounded-md border
|
|
578
|
+
bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs
|
|
579
|
+
transition-[color,box-shadow] outline-none focus-visible:ring-[3px]
|
|
580
|
+
disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9
|
|
581
|
+
data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1
|
|
582
|
+
*:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center
|
|
583
|
+
*:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none
|
|
584
|
+
[&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`, className),
|
|
585
|
+
...props,
|
|
586
|
+
children: [children, /* @__PURE__ */ jsx(Select.Icon, {
|
|
587
|
+
asChild: true,
|
|
588
|
+
children: /* @__PURE__ */ jsx(ChevronDownIcon, { className: "size-4 opacity-50" })
|
|
589
|
+
})]
|
|
590
|
+
});
|
|
591
|
+
}
|
|
592
|
+
function SelectContent$1({ className, children, position = "item-aligned", align = "center", ...props }) {
|
|
593
|
+
return /* @__PURE__ */ jsx(Select.Portal, { children: /* @__PURE__ */ jsxs(Select.Content, {
|
|
594
|
+
"data-slot": "select-content",
|
|
595
|
+
className: cn(`bg-popover text-popover-foreground data-[state=open]:animate-in
|
|
596
|
+
data-[state=closed]:animate-out data-[state=closed]:fade-out-0
|
|
597
|
+
data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95
|
|
598
|
+
data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2
|
|
599
|
+
data-[side=left]:slide-in-from-right-2
|
|
600
|
+
data-[side=right]:slide-in-from-left-2
|
|
601
|
+
data-[side=top]:slide-in-from-bottom-2 relative z-50
|
|
602
|
+
max-h-(--radix-select-content-available-height) min-w-[8rem]
|
|
603
|
+
origin-(--radix-select-content-transform-origin) overflow-x-hidden
|
|
604
|
+
overflow-y-auto rounded-md border shadow-md`, position === "popper" && `data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1
|
|
605
|
+
data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1`, className),
|
|
606
|
+
position,
|
|
607
|
+
align,
|
|
608
|
+
...props,
|
|
609
|
+
children: [
|
|
610
|
+
/* @__PURE__ */ jsx(SelectScrollUpButton, {}),
|
|
611
|
+
/* @__PURE__ */ jsx(Select.Viewport, {
|
|
612
|
+
className: cn("p-1", position === "popper" && `h-[var(--radix-select-trigger-height)] w-full
|
|
613
|
+
min-w-[var(--radix-select-trigger-width)] scroll-my-1`),
|
|
614
|
+
children
|
|
615
|
+
}),
|
|
616
|
+
/* @__PURE__ */ jsx(SelectScrollDownButton, {})
|
|
617
|
+
]
|
|
618
|
+
}) });
|
|
619
|
+
}
|
|
620
|
+
function SelectLabel$1({ className, ...props }) {
|
|
621
|
+
return /* @__PURE__ */ jsx(Select.Label, {
|
|
622
|
+
"data-slot": "select-label",
|
|
623
|
+
className: cn("text-muted-foreground px-2 py-1.5 text-xs", className),
|
|
624
|
+
...props
|
|
625
|
+
});
|
|
626
|
+
}
|
|
627
|
+
function SelectItem$1({ className, children, ...props }) {
|
|
628
|
+
return /* @__PURE__ */ jsxs(Select.Item, {
|
|
629
|
+
"data-slot": "select-item",
|
|
630
|
+
className: cn(`focus:bg-accent focus:text-accent-foreground
|
|
631
|
+
[&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full
|
|
632
|
+
cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm
|
|
633
|
+
outline-hidden select-none data-[disabled]:pointer-events-none
|
|
634
|
+
data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0
|
|
635
|
+
[&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex
|
|
636
|
+
*:[span]:last:items-center *:[span]:last:gap-2`, className),
|
|
637
|
+
...props,
|
|
638
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
639
|
+
"data-slot": "select-item-indicator",
|
|
640
|
+
className: "absolute right-2 flex size-3.5 items-center justify-center",
|
|
641
|
+
children: /* @__PURE__ */ jsx(Select.ItemIndicator, { children: /* @__PURE__ */ jsx(CheckIcon, { className: "size-4" }) })
|
|
642
|
+
}), /* @__PURE__ */ jsx(Select.ItemText, { children })]
|
|
643
|
+
});
|
|
644
|
+
}
|
|
645
|
+
function SelectSeparator({ className, ...props }) {
|
|
646
|
+
return /* @__PURE__ */ jsx(Select.Separator, {
|
|
647
|
+
"data-slot": "select-separator",
|
|
648
|
+
className: cn("bg-border pointer-events-none -mx-1 my-1 h-px", className),
|
|
649
|
+
...props
|
|
650
|
+
});
|
|
651
|
+
}
|
|
652
|
+
function SelectScrollUpButton({ className, ...props }) {
|
|
653
|
+
return /* @__PURE__ */ jsx(Select.ScrollUpButton, {
|
|
654
|
+
"data-slot": "select-scroll-up-button",
|
|
655
|
+
className: cn("flex cursor-default items-center justify-center py-1", className),
|
|
656
|
+
...props,
|
|
657
|
+
children: /* @__PURE__ */ jsx(ChevronUpIcon, { className: "size-4" })
|
|
658
|
+
});
|
|
659
|
+
}
|
|
660
|
+
function SelectScrollDownButton({ className, ...props }) {
|
|
661
|
+
return /* @__PURE__ */ jsx(Select.ScrollDownButton, {
|
|
662
|
+
"data-slot": "select-scroll-down-button",
|
|
663
|
+
className: cn("flex cursor-default items-center justify-center py-1", className),
|
|
664
|
+
...props,
|
|
665
|
+
children: /* @__PURE__ */ jsx(ChevronDownIcon, { className: "size-4" })
|
|
666
|
+
});
|
|
667
|
+
}
|
|
668
|
+
|
|
669
|
+
//#endregion
|
|
670
|
+
//#region src/core/skeleton.tsx
|
|
671
|
+
var skeleton_exports = /* @__PURE__ */ __exportAll({ Skeleton: () => Skeleton$1 });
|
|
672
|
+
function Skeleton$1({ className, ...props }) {
|
|
673
|
+
return /* @__PURE__ */ jsx("div", {
|
|
674
|
+
"data-slot": "skeleton",
|
|
675
|
+
className: cn("bg-accent animate-pulse rounded-md", className),
|
|
676
|
+
...props
|
|
677
|
+
});
|
|
678
|
+
}
|
|
679
|
+
|
|
680
|
+
//#endregion
|
|
681
|
+
//#region src/core/switch.tsx
|
|
682
|
+
var switch_exports = /* @__PURE__ */ __exportAll({ Switch: () => Switch$1 });
|
|
683
|
+
function Switch$1({ className, size = "default", handleClassName, ...props }) {
|
|
684
|
+
return /* @__PURE__ */ jsx(SwitchPrimitive.Root, {
|
|
685
|
+
"data-slot": "switch",
|
|
686
|
+
"data-size": size,
|
|
687
|
+
className: cn(`peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input
|
|
688
|
+
focus-visible:border-ring focus-visible:ring-ring/50
|
|
689
|
+
dark:data-[state=unchecked]:bg-input/80 group/switch inline-flex
|
|
690
|
+
shrink-0 items-center rounded-full border border-transparent shadow-xs
|
|
691
|
+
transition-all outline-none focus-visible:ring-[3px]
|
|
692
|
+
disabled:cursor-not-allowed disabled:opacity-50
|
|
693
|
+
data-[size=default]:h-[1.15rem] data-[size=default]:w-8
|
|
694
|
+
data-[size=sm]:h-3.5 data-[size=sm]:w-6`, className),
|
|
695
|
+
...props,
|
|
696
|
+
children: /* @__PURE__ */ jsx(SwitchPrimitive.Thumb, {
|
|
697
|
+
"data-slot": "switch-thumb",
|
|
698
|
+
className: cn(`bg-background dark:data-[state=unchecked]:bg-foreground
|
|
699
|
+
dark:data-[state=checked]:bg-primary-foreground pointer-events-none
|
|
700
|
+
block rounded-full ring-0 transition-transform
|
|
701
|
+
group-data-[size=default]/switch:size-4
|
|
702
|
+
group-data-[size=sm]/switch:size-3
|
|
703
|
+
data-[state=checked]:translate-x-[calc(100%-2px)]
|
|
704
|
+
data-[state=unchecked]:translate-x-0`, handleClassName)
|
|
705
|
+
})
|
|
706
|
+
});
|
|
707
|
+
}
|
|
708
|
+
|
|
709
|
+
//#endregion
|
|
710
|
+
//#region src/core/textarea.tsx
|
|
711
|
+
var textarea_exports = /* @__PURE__ */ __exportAll({ Textarea: () => Textarea });
|
|
712
|
+
function Textarea({ className, ...props }) {
|
|
713
|
+
return /* @__PURE__ */ jsx("textarea", {
|
|
714
|
+
"data-slot": "textarea",
|
|
715
|
+
className: cn(`border-input placeholder:text-muted-foreground
|
|
716
|
+
focus-visible:border-ring focus-visible:ring-ring/50
|
|
717
|
+
aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40
|
|
718
|
+
aria-invalid:border-destructive dark:bg-input/30 flex
|
|
719
|
+
field-sizing-content min-h-16 w-full rounded-md border bg-transparent
|
|
720
|
+
px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none
|
|
721
|
+
focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50
|
|
722
|
+
md:text-sm`, className),
|
|
723
|
+
...props
|
|
724
|
+
});
|
|
725
|
+
}
|
|
726
|
+
|
|
67
727
|
//#endregion
|
|
68
728
|
//#region src/components/atoms/Button/index.tsx
|
|
729
|
+
const Core$8 = Button$2;
|
|
69
730
|
const variantClasses = {
|
|
70
731
|
solid: "",
|
|
71
732
|
outlined: cn("border border-[rgb(var(--btn-border)/0.5)]", "bg-background text-foreground", "hover:bg-accent"),
|
|
@@ -88,7 +749,8 @@ const Button$1 = ({ icon, className, variant = "solid", size = "medium", color =
|
|
|
88
749
|
const iconOnly = icon && !children;
|
|
89
750
|
const computedColor = danger ? "danger" : color;
|
|
90
751
|
const colored = computedColor && computedColor !== "default";
|
|
91
|
-
|
|
752
|
+
const displayIcon = loading ? typeof loading === "object" ? loading.icon : /* @__PURE__ */ jsx(LoaderCircle, { className: "animate-spin" }) : icon;
|
|
753
|
+
return /* @__PURE__ */ jsxs(Core$8, {
|
|
92
754
|
disabled,
|
|
93
755
|
variant: "default",
|
|
94
756
|
"data-color": computedColor,
|
|
@@ -104,82 +766,58 @@ const Button$1 = ({ icon, className, variant = "solid", size = "medium", color =
|
|
|
104
766
|
onMouseDown?.(e);
|
|
105
767
|
},
|
|
106
768
|
...props,
|
|
107
|
-
children: [
|
|
769
|
+
children: [displayIcon, children]
|
|
108
770
|
});
|
|
109
771
|
};
|
|
110
772
|
var Button_default$1 = Button$1;
|
|
111
773
|
|
|
112
|
-
//#endregion
|
|
113
|
-
//#region src/core/checkbox.tsx
|
|
114
|
-
const Checkbox$1 = React$1.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(CheckboxPrimitive.Root, {
|
|
115
|
-
ref,
|
|
116
|
-
className: cn(`peer border-primary focus-visible:ring-ring
|
|
117
|
-
data-[state=checked]:bg-primary
|
|
118
|
-
data-[state=checked]:text-primary-foreground grid h-4 w-4 shrink-0
|
|
119
|
-
place-content-center rounded-sm border shadow focus-visible:ring-1
|
|
120
|
-
focus-visible:outline-none disabled:cursor-not-allowed
|
|
121
|
-
disabled:opacity-50`, className),
|
|
122
|
-
...props,
|
|
123
|
-
children: /* @__PURE__ */ jsx(CheckboxPrimitive.Indicator, {
|
|
124
|
-
className: cn("grid place-content-center text-current"),
|
|
125
|
-
children: /* @__PURE__ */ jsx(Check, { className: "h-4 w-4" })
|
|
126
|
-
})
|
|
127
|
-
}));
|
|
128
|
-
Checkbox$1.displayName = CheckboxPrimitive.Root.displayName;
|
|
129
|
-
|
|
130
|
-
//#endregion
|
|
131
|
-
//#region src/core/label.tsx
|
|
132
|
-
const labelVariants = cva("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70");
|
|
133
|
-
const Label$1 = React$1.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(LabelPrimitive.Root, {
|
|
134
|
-
ref,
|
|
135
|
-
className: cn(labelVariants(), className),
|
|
136
|
-
...props
|
|
137
|
-
}));
|
|
138
|
-
Label$1.displayName = LabelPrimitive.Root.displayName;
|
|
139
|
-
|
|
140
774
|
//#endregion
|
|
141
775
|
//#region src/components/atoms/Checkbox/Group/index.tsx
|
|
142
|
-
const Group = ({ direction = "vertical", placement = "left", className, classNames = {}, options: _options, onChange = () => {} }) => {
|
|
143
|
-
const [
|
|
144
|
-
const
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
776
|
+
const Group = ({ direction = "vertical", placement = "left", className, classNames = {}, options: _options = [], defaultValue, value: _value, onChange: _onChange = () => {} }) => {
|
|
777
|
+
const [uncontrolledValue, setUncontrolledValue] = useState(defaultValue || []);
|
|
778
|
+
const controlled = _value !== void 0;
|
|
779
|
+
const value = controlled ? _value : uncontrolledValue;
|
|
780
|
+
const options = _options.map((item) => typeof item === "object" ? item : {
|
|
781
|
+
label: `${item}`,
|
|
782
|
+
value: item
|
|
783
|
+
});
|
|
784
|
+
const onChange = (checked, optionValue) => {
|
|
785
|
+
const nextValue = checked ? [...value, optionValue] : value.filter((v) => v !== optionValue);
|
|
786
|
+
if (!controlled) setUncontrolledValue(nextValue);
|
|
787
|
+
_onChange(nextValue);
|
|
151
788
|
};
|
|
152
|
-
useEffect(() => {
|
|
153
|
-
setOptions(_options?.map((item) => typeof item === "object" ? item : {
|
|
154
|
-
label: `${item}`,
|
|
155
|
-
value: item,
|
|
156
|
-
checked: false
|
|
157
|
-
}) || []);
|
|
158
|
-
}, [_options]);
|
|
159
789
|
return /* @__PURE__ */ jsx("ul", {
|
|
160
790
|
className: cn(direction === "vertical" ? "space-y-2" : "flex gap-2", className),
|
|
161
|
-
children: options.map((item, i) =>
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
791
|
+
children: options.map((item, i) => {
|
|
792
|
+
const checked = value.includes(item.value);
|
|
793
|
+
return /* @__PURE__ */ jsx("li", {
|
|
794
|
+
className: cn("flex", classNames?.wrapper),
|
|
795
|
+
children: /* @__PURE__ */ jsx(Checkbox_default, {
|
|
796
|
+
placement,
|
|
797
|
+
className: cn(classNames?.item),
|
|
798
|
+
value: item.value,
|
|
799
|
+
checked,
|
|
800
|
+
onChange: (checked$1) => onChange(checked$1, item.value),
|
|
801
|
+
children: item.label
|
|
802
|
+
})
|
|
803
|
+
}, i);
|
|
804
|
+
})
|
|
171
805
|
});
|
|
172
806
|
};
|
|
173
807
|
var Group_default = Group;
|
|
174
808
|
|
|
175
809
|
//#endregion
|
|
176
810
|
//#region src/components/atoms/Checkbox/index.tsx
|
|
177
|
-
const
|
|
178
|
-
|
|
811
|
+
const { Checkbox: CoreCheckbox } = checkbox_exports;
|
|
812
|
+
const { Label: CoreLabel } = label_exports;
|
|
813
|
+
const Checkbox = ({ placement = "left", value = "", children, className, icons, defaultChecked, checked: _checked, onChange: _onChange = () => {}, ...props }) => {
|
|
814
|
+
const [uncontrolledChecked, setUncontrolledChecked] = useState(defaultChecked || false);
|
|
179
815
|
const reactId = useId();
|
|
180
816
|
const id = typeof value === "boolean" || !value ? reactId : String(value);
|
|
817
|
+
const controlled = _checked !== void 0;
|
|
818
|
+
const checked = controlled ? _checked : uncontrolledChecked;
|
|
181
819
|
const onChange = (next) => {
|
|
182
|
-
|
|
820
|
+
if (!controlled) setUncontrolledChecked(next);
|
|
183
821
|
_onChange(next);
|
|
184
822
|
};
|
|
185
823
|
const renderContent = icons ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
@@ -204,27 +842,276 @@ const Checkbox = ({ placement = "left", value = "", children, className, icons,
|
|
|
204
842
|
htmlFor: id,
|
|
205
843
|
children
|
|
206
844
|
})
|
|
207
|
-
] }) : /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(
|
|
845
|
+
] }) : /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(CoreCheckbox, {
|
|
208
846
|
id,
|
|
209
847
|
checked,
|
|
210
848
|
className: "cursor-pointer",
|
|
211
849
|
onCheckedChange: onChange
|
|
212
|
-
}), children && /* @__PURE__ */ jsx(
|
|
850
|
+
}), children && /* @__PURE__ */ jsx(CoreLabel, {
|
|
213
851
|
htmlFor: id,
|
|
214
852
|
className: "cursor-pointer text-left",
|
|
215
853
|
children
|
|
216
854
|
})] });
|
|
217
|
-
useEffect(() => {
|
|
218
|
-
setChecked(!!_checked);
|
|
219
|
-
}, [_checked]);
|
|
220
855
|
return /* @__PURE__ */ jsx("div", {
|
|
221
856
|
className: cn("flex items-center gap-x-2", placement === "right" && "flex-row-reverse", className),
|
|
222
857
|
...props,
|
|
223
858
|
children: renderContent
|
|
224
859
|
});
|
|
225
860
|
};
|
|
226
|
-
Checkbox.Group = Group_default;
|
|
227
|
-
var Checkbox_default = Checkbox;
|
|
861
|
+
Checkbox.Group = Group_default;
|
|
862
|
+
var Checkbox_default = Checkbox;
|
|
863
|
+
|
|
864
|
+
//#endregion
|
|
865
|
+
//#region src/components/atoms/Popover/index.tsx
|
|
866
|
+
const { Popover: CorePopover, PopoverContent, PopoverTrigger } = popover_exports;
|
|
867
|
+
const placementMap = {
|
|
868
|
+
top: {
|
|
869
|
+
side: "top",
|
|
870
|
+
align: "center"
|
|
871
|
+
},
|
|
872
|
+
left: {
|
|
873
|
+
side: "left",
|
|
874
|
+
align: "center"
|
|
875
|
+
},
|
|
876
|
+
right: {
|
|
877
|
+
side: "right",
|
|
878
|
+
align: "center"
|
|
879
|
+
},
|
|
880
|
+
bottom: {
|
|
881
|
+
side: "bottom",
|
|
882
|
+
align: "center"
|
|
883
|
+
},
|
|
884
|
+
topLeft: {
|
|
885
|
+
side: "top",
|
|
886
|
+
align: "start"
|
|
887
|
+
},
|
|
888
|
+
topRight: {
|
|
889
|
+
side: "top",
|
|
890
|
+
align: "end"
|
|
891
|
+
},
|
|
892
|
+
bottomLeft: {
|
|
893
|
+
side: "bottom",
|
|
894
|
+
align: "start"
|
|
895
|
+
},
|
|
896
|
+
bottomRight: {
|
|
897
|
+
side: "bottom",
|
|
898
|
+
align: "end"
|
|
899
|
+
},
|
|
900
|
+
leftTop: {
|
|
901
|
+
side: "left",
|
|
902
|
+
align: "start"
|
|
903
|
+
},
|
|
904
|
+
leftBottom: {
|
|
905
|
+
side: "left",
|
|
906
|
+
align: "end"
|
|
907
|
+
},
|
|
908
|
+
rightTop: {
|
|
909
|
+
side: "right",
|
|
910
|
+
align: "start"
|
|
911
|
+
},
|
|
912
|
+
rightBottom: {
|
|
913
|
+
side: "right",
|
|
914
|
+
align: "end"
|
|
915
|
+
}
|
|
916
|
+
};
|
|
917
|
+
const beforeBase = "before:content-[\"\"] before:absolute before:h-0 before:w-0";
|
|
918
|
+
const afterBase = "after:content-[\"\"] after:absolute after:h-0 after:w-0";
|
|
919
|
+
const vBorderShape = "before:border-l-[9px] before:border-r-[9px] before:border-l-transparent before:border-r-transparent";
|
|
920
|
+
const hBorderShape = "before:border-t-[9px] before:border-b-[9px] before:border-t-transparent before:border-b-transparent";
|
|
921
|
+
const vFillShape = "after:border-l-8 after:border-r-8 after:border-l-transparent after:border-r-transparent";
|
|
922
|
+
const hFillShape = "after:border-t-8 after:border-b-8 after:border-t-transparent after:border-b-transparent";
|
|
923
|
+
const topBorder = "before:border-t-[9px] before:border-t-border";
|
|
924
|
+
const bottomBorder = "before:border-b-[9px] before:border-b-border";
|
|
925
|
+
const leftBorder = "before:border-l-[9px] before:border-l-border";
|
|
926
|
+
const rightBorder = "before:border-r-[9px] before:border-r-border";
|
|
927
|
+
const topFill = "after:border-t-8 after:border-t-popover";
|
|
928
|
+
const bottomFill = "after:border-b-8 after:border-b-popover";
|
|
929
|
+
const leftFill = "after:border-l-8 after:border-l-popover";
|
|
930
|
+
const rightFill = "after:border-r-8 after:border-r-popover";
|
|
931
|
+
const arrowStyles = {
|
|
932
|
+
top: [
|
|
933
|
+
"absolute left-1/2 -translate-x-1/2 top-full",
|
|
934
|
+
beforeBase,
|
|
935
|
+
"before:top-0 before:left-1/2 before:-translate-x-1/2",
|
|
936
|
+
vBorderShape,
|
|
937
|
+
topBorder,
|
|
938
|
+
afterBase,
|
|
939
|
+
"after:-top-px after:left-1/2 after:-translate-x-1/2",
|
|
940
|
+
vFillShape,
|
|
941
|
+
topFill
|
|
942
|
+
].join(" "),
|
|
943
|
+
topLeft: [
|
|
944
|
+
"absolute left-4 top-full",
|
|
945
|
+
beforeBase,
|
|
946
|
+
"before:top-0 before:left-0",
|
|
947
|
+
vBorderShape,
|
|
948
|
+
topBorder,
|
|
949
|
+
afterBase,
|
|
950
|
+
"after:-top-px after:left-px",
|
|
951
|
+
vFillShape,
|
|
952
|
+
topFill
|
|
953
|
+
].join(" "),
|
|
954
|
+
topRight: [
|
|
955
|
+
"absolute right-4 top-full",
|
|
956
|
+
beforeBase,
|
|
957
|
+
"before:top-0 before:right-0",
|
|
958
|
+
vBorderShape,
|
|
959
|
+
topBorder,
|
|
960
|
+
afterBase,
|
|
961
|
+
"after:-top-px after:right-px",
|
|
962
|
+
vFillShape,
|
|
963
|
+
topFill
|
|
964
|
+
].join(" "),
|
|
965
|
+
bottom: [
|
|
966
|
+
"absolute left-1/2 -translate-x-1/2 bottom-full",
|
|
967
|
+
beforeBase,
|
|
968
|
+
"before:bottom-0 before:left-1/2 before:-translate-x-1/2",
|
|
969
|
+
vBorderShape,
|
|
970
|
+
bottomBorder,
|
|
971
|
+
afterBase,
|
|
972
|
+
"after:-bottom-px after:left-1/2 after:-translate-x-1/2",
|
|
973
|
+
vFillShape,
|
|
974
|
+
bottomFill
|
|
975
|
+
].join(" "),
|
|
976
|
+
bottomLeft: [
|
|
977
|
+
"absolute left-4 bottom-full",
|
|
978
|
+
beforeBase,
|
|
979
|
+
"before:bottom-0 before:left-0",
|
|
980
|
+
vBorderShape,
|
|
981
|
+
bottomBorder,
|
|
982
|
+
afterBase,
|
|
983
|
+
"after:-bottom-px after:left-px",
|
|
984
|
+
vFillShape,
|
|
985
|
+
bottomFill
|
|
986
|
+
].join(" "),
|
|
987
|
+
bottomRight: [
|
|
988
|
+
"absolute right-4 bottom-full",
|
|
989
|
+
beforeBase,
|
|
990
|
+
"before:bottom-0 before:right-0",
|
|
991
|
+
vBorderShape,
|
|
992
|
+
bottomBorder,
|
|
993
|
+
afterBase,
|
|
994
|
+
"after:-bottom-px after:right-px",
|
|
995
|
+
vFillShape,
|
|
996
|
+
bottomFill
|
|
997
|
+
].join(" "),
|
|
998
|
+
left: [
|
|
999
|
+
"absolute top-1/2 -translate-y-1/2 left-full",
|
|
1000
|
+
beforeBase,
|
|
1001
|
+
"before:left-0 before:top-1/2 before:-translate-y-1/2",
|
|
1002
|
+
hBorderShape,
|
|
1003
|
+
leftBorder,
|
|
1004
|
+
afterBase,
|
|
1005
|
+
"after:-left-px after:top-1/2 after:-translate-y-1/2",
|
|
1006
|
+
hFillShape,
|
|
1007
|
+
leftFill
|
|
1008
|
+
].join(" "),
|
|
1009
|
+
leftTop: [
|
|
1010
|
+
"absolute top-4 left-full",
|
|
1011
|
+
beforeBase,
|
|
1012
|
+
"before:left-0 before:top-0",
|
|
1013
|
+
hBorderShape,
|
|
1014
|
+
leftBorder,
|
|
1015
|
+
afterBase,
|
|
1016
|
+
"after:-left-px after:top-px",
|
|
1017
|
+
hFillShape,
|
|
1018
|
+
leftFill
|
|
1019
|
+
].join(" "),
|
|
1020
|
+
leftBottom: [
|
|
1021
|
+
"absolute bottom-4 left-full",
|
|
1022
|
+
beforeBase,
|
|
1023
|
+
"before:left-0 before:bottom-0",
|
|
1024
|
+
hBorderShape,
|
|
1025
|
+
leftBorder,
|
|
1026
|
+
afterBase,
|
|
1027
|
+
"after:-left-px after:bottom-px",
|
|
1028
|
+
hFillShape,
|
|
1029
|
+
leftFill
|
|
1030
|
+
].join(" "),
|
|
1031
|
+
right: [
|
|
1032
|
+
"absolute top-1/2 -translate-y-1/2 right-full",
|
|
1033
|
+
beforeBase,
|
|
1034
|
+
"before:right-0 before:top-1/2 before:-translate-y-1/2",
|
|
1035
|
+
hBorderShape,
|
|
1036
|
+
rightBorder,
|
|
1037
|
+
afterBase,
|
|
1038
|
+
"after:-right-px after:top-1/2 after:-translate-y-1/2",
|
|
1039
|
+
hFillShape,
|
|
1040
|
+
rightFill
|
|
1041
|
+
].join(" "),
|
|
1042
|
+
rightTop: [
|
|
1043
|
+
"absolute top-4 right-full",
|
|
1044
|
+
beforeBase,
|
|
1045
|
+
"before:right-0 before:top-0",
|
|
1046
|
+
hBorderShape,
|
|
1047
|
+
rightBorder,
|
|
1048
|
+
afterBase,
|
|
1049
|
+
"after:-right-px after:top-px",
|
|
1050
|
+
hFillShape,
|
|
1051
|
+
rightFill
|
|
1052
|
+
].join(" "),
|
|
1053
|
+
rightBottom: [
|
|
1054
|
+
"absolute bottom-4 right-full",
|
|
1055
|
+
beforeBase,
|
|
1056
|
+
"before:right-0 before:bottom-0",
|
|
1057
|
+
hBorderShape,
|
|
1058
|
+
rightBorder,
|
|
1059
|
+
afterBase,
|
|
1060
|
+
"after:-right-px after:bottom-px",
|
|
1061
|
+
hFillShape,
|
|
1062
|
+
rightFill
|
|
1063
|
+
].join(" ")
|
|
1064
|
+
};
|
|
1065
|
+
const Popover = ({ title, placement = "top", className, content, children }) => {
|
|
1066
|
+
return /* @__PURE__ */ jsxs(CorePopover, { children: [/* @__PURE__ */ jsx(PopoverTrigger, {
|
|
1067
|
+
asChild: true,
|
|
1068
|
+
children
|
|
1069
|
+
}), /* @__PURE__ */ jsxs(PopoverContent, {
|
|
1070
|
+
align: placementMap[placement].align,
|
|
1071
|
+
side: placementMap[placement].side,
|
|
1072
|
+
sideOffset: 16,
|
|
1073
|
+
className: cn("relative w-auto", className),
|
|
1074
|
+
children: [
|
|
1075
|
+
renderConditional(title, (v) => /* @__PURE__ */ jsx(Typography_default.Title, {
|
|
1076
|
+
level: 6,
|
|
1077
|
+
children: v
|
|
1078
|
+
})),
|
|
1079
|
+
content,
|
|
1080
|
+
/* @__PURE__ */ jsx("div", { className: cn(arrowStyles[placement]) })
|
|
1081
|
+
]
|
|
1082
|
+
})] });
|
|
1083
|
+
};
|
|
1084
|
+
var Popover_default = Popover;
|
|
1085
|
+
|
|
1086
|
+
//#endregion
|
|
1087
|
+
//#region src/components/atoms/ColorPicker/index.tsx
|
|
1088
|
+
const ColorPicker = ({ defaultValue, value: _value, showText, onChange: _onChange = () => {} }) => {
|
|
1089
|
+
const [uncontrolledValue, setUncontrolledValue] = useState(defaultValue || "#fff");
|
|
1090
|
+
const controlled = _value !== void 0;
|
|
1091
|
+
const value = controlled ? _value : uncontrolledValue;
|
|
1092
|
+
const onChange = (color) => {
|
|
1093
|
+
if (!controlled) setUncontrolledValue(color);
|
|
1094
|
+
_onChange(color);
|
|
1095
|
+
};
|
|
1096
|
+
return /* @__PURE__ */ jsx(Popover_default, {
|
|
1097
|
+
placement: "bottomLeft",
|
|
1098
|
+
content: /* @__PURE__ */ jsx(HexColorPicker, {
|
|
1099
|
+
color: value,
|
|
1100
|
+
onChange
|
|
1101
|
+
}),
|
|
1102
|
+
children: /* @__PURE__ */ jsxs("div", {
|
|
1103
|
+
className: cn("inline-flex items-center", "rounded border p-0.5"),
|
|
1104
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
1105
|
+
className: cn("size-6 cursor-pointer rounded border", "shadow-sm"),
|
|
1106
|
+
style: { backgroundColor: value }
|
|
1107
|
+
}), showText && /* @__PURE__ */ jsx("span", {
|
|
1108
|
+
className: "px-1 font-mono text-sm font-medium",
|
|
1109
|
+
children: value.toUpperCase()
|
|
1110
|
+
})]
|
|
1111
|
+
})
|
|
1112
|
+
});
|
|
1113
|
+
};
|
|
1114
|
+
var ColorPicker_default = ColorPicker;
|
|
228
1115
|
|
|
229
1116
|
//#endregion
|
|
230
1117
|
//#region src/components/atoms/FloatButton/BackTop/index.tsx
|
|
@@ -259,71 +1146,57 @@ const FloatButton = ({ className, children, ...props }) => {
|
|
|
259
1146
|
FloatButton.BackTop = BackTop_default;
|
|
260
1147
|
var FloatButton_default = FloatButton;
|
|
261
1148
|
|
|
262
|
-
//#endregion
|
|
263
|
-
//#region src/core/input.tsx
|
|
264
|
-
const Input$1 = React$1.forwardRef(({ className, type, ...props }, ref) => {
|
|
265
|
-
return /* @__PURE__ */ jsx("input", {
|
|
266
|
-
type,
|
|
267
|
-
className: cn(`border-input file:text-foreground placeholder:text-muted-foreground
|
|
268
|
-
focus-visible:ring-ring flex h-9 w-full rounded-md border
|
|
269
|
-
bg-transparent px-3 py-1 text-base shadow-sm transition-colors
|
|
270
|
-
file:border-0 file:bg-transparent file:text-sm file:font-medium
|
|
271
|
-
focus-visible:ring-1 focus-visible:outline-none
|
|
272
|
-
disabled:cursor-not-allowed disabled:opacity-50 md:text-sm`, className),
|
|
273
|
-
ref,
|
|
274
|
-
...props
|
|
275
|
-
});
|
|
276
|
-
});
|
|
277
|
-
Input$1.displayName = "Input";
|
|
278
|
-
|
|
279
1149
|
//#endregion
|
|
280
1150
|
//#region src/components/atoms/Input/Search/index.tsx
|
|
281
|
-
const
|
|
1151
|
+
const { Input: Core$7 } = input_exports;
|
|
1152
|
+
const Search$1 = ({ ref, className, defaultValue, value, allowClear = true, onChange, onSearch: _onSearch, ...props }) => {
|
|
1153
|
+
const internalRef = useRef(null);
|
|
1154
|
+
const inputRef = ref || internalRef;
|
|
1155
|
+
const onClear = () => {
|
|
1156
|
+
if (inputRef.current) {
|
|
1157
|
+
inputRef.current.value = "";
|
|
1158
|
+
onChange?.({ target: { value: "" } });
|
|
1159
|
+
}
|
|
1160
|
+
};
|
|
1161
|
+
const onSearch = () => {
|
|
1162
|
+
if (inputRef.current) _onSearch?.(inputRef.current.value);
|
|
1163
|
+
};
|
|
282
1164
|
return /* @__PURE__ */ jsxs("div", {
|
|
283
|
-
className: cn("
|
|
284
|
-
children: [
|
|
285
|
-
|
|
286
|
-
/* @__PURE__ */ jsx(
|
|
287
|
-
ref,
|
|
1165
|
+
className: cn("flex items-center", "rounded-md", className),
|
|
1166
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
1167
|
+
className: cn("relative grow", "inline-flex items-center"),
|
|
1168
|
+
children: [/* @__PURE__ */ jsx(Core$7, {
|
|
1169
|
+
ref: inputRef,
|
|
288
1170
|
inputMode: "search",
|
|
289
1171
|
type: "search",
|
|
290
1172
|
enterKeyHint: "search",
|
|
291
|
-
className: cn("
|
|
1173
|
+
className: cn("rounded-r-none", "[&::-webkit-search-cancel-button]:hidden", "[&::-webkit-search-decoration]:hidden"),
|
|
292
1174
|
value,
|
|
1175
|
+
defaultValue,
|
|
293
1176
|
onChange,
|
|
294
1177
|
onKeyDown: (e) => {
|
|
295
|
-
if (e.key === "Enter")
|
|
1178
|
+
if (e.key === "Enter") onSearch();
|
|
296
1179
|
},
|
|
297
1180
|
...props
|
|
298
|
-
}),
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
1181
|
+
}), /* @__PURE__ */ jsx(CircleX, {
|
|
1182
|
+
className: cn("absolute right-2 size-4", "shrink-0 cursor-pointer", (!allowClear || value !== void 0 && !value) && "hidden"),
|
|
1183
|
+
onClick: onClear
|
|
1184
|
+
})]
|
|
1185
|
+
}), /* @__PURE__ */ jsx(Button_default$1, {
|
|
1186
|
+
icon: /* @__PURE__ */ jsx(Search, {}),
|
|
1187
|
+
className: cn("rounded-l-none", "size-9"),
|
|
1188
|
+
onClick: onSearch
|
|
1189
|
+
})]
|
|
304
1190
|
});
|
|
305
|
-
}
|
|
1191
|
+
};
|
|
306
1192
|
Search$1.displayName = "Search";
|
|
307
1193
|
var Search_default = Search$1;
|
|
308
1194
|
|
|
309
|
-
//#endregion
|
|
310
|
-
//#region src/core/textarea.tsx
|
|
311
|
-
const Textarea = React$1.forwardRef(({ className, ...props }, ref) => {
|
|
312
|
-
return /* @__PURE__ */ jsx("textarea", {
|
|
313
|
-
className: cn(`border-input placeholder:text-muted-foreground focus-visible:ring-ring
|
|
314
|
-
flex min-h-[60px] w-full rounded-md border bg-transparent px-3 py-2
|
|
315
|
-
text-base shadow-sm focus-visible:ring-1 focus-visible:outline-none
|
|
316
|
-
disabled:cursor-not-allowed disabled:opacity-50 md:text-sm`, className),
|
|
317
|
-
ref,
|
|
318
|
-
...props
|
|
319
|
-
});
|
|
320
|
-
});
|
|
321
|
-
Textarea.displayName = "Textarea";
|
|
322
|
-
|
|
323
1195
|
//#endregion
|
|
324
1196
|
//#region src/components/atoms/Input/TextArea/index.tsx
|
|
1197
|
+
const { Textarea: Core$6 } = textarea_exports;
|
|
325
1198
|
const TextArea = ({ className, ref, ...props }) => {
|
|
326
|
-
return /* @__PURE__ */ jsx(
|
|
1199
|
+
return /* @__PURE__ */ jsx(Core$6, {
|
|
327
1200
|
ref,
|
|
328
1201
|
className: cn(className),
|
|
329
1202
|
...props
|
|
@@ -333,74 +1206,22 @@ var TextArea_default = TextArea;
|
|
|
333
1206
|
|
|
334
1207
|
//#endregion
|
|
335
1208
|
//#region src/components/atoms/Input/index.tsx
|
|
1209
|
+
const { Input: Core$5 } = input_exports;
|
|
336
1210
|
const Input = ({ ...props }) => {
|
|
337
|
-
return /* @__PURE__ */ jsx(
|
|
1211
|
+
return /* @__PURE__ */ jsx(Core$5, { ...props });
|
|
338
1212
|
};
|
|
339
1213
|
Input.Search = Search_default;
|
|
340
1214
|
Input.TextArea = TextArea_default;
|
|
341
1215
|
var Input_default = Input;
|
|
342
1216
|
|
|
343
|
-
//#endregion
|
|
344
|
-
//#region src/core/popover.tsx
|
|
345
|
-
const Popover$1 = PopoverPrimitive.Root;
|
|
346
|
-
const PopoverTrigger = PopoverPrimitive.Trigger;
|
|
347
|
-
const PopoverAnchor = PopoverPrimitive.Anchor;
|
|
348
|
-
const PopoverContent = React$1.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx(PopoverPrimitive.Content, {
|
|
349
|
-
ref,
|
|
350
|
-
align,
|
|
351
|
-
sideOffset,
|
|
352
|
-
className: cn(`bg-popover text-popover-foreground data-[state=open]:animate-in
|
|
353
|
-
data-[state=closed]:animate-out data-[state=closed]:fade-out-0
|
|
354
|
-
data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95
|
|
355
|
-
data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2
|
|
356
|
-
data-[side=left]:slide-in-from-right-2
|
|
357
|
-
data-[side=right]:slide-in-from-left-2
|
|
358
|
-
data-[side=top]:slide-in-from-bottom-2 z-50 w-72
|
|
359
|
-
origin-[--radix-popover-content-transform-origin] rounded-md border p-4
|
|
360
|
-
shadow-md outline-none`, className),
|
|
361
|
-
...props
|
|
362
|
-
}) }));
|
|
363
|
-
PopoverContent.displayName = PopoverPrimitive.Content.displayName;
|
|
364
|
-
|
|
365
|
-
//#endregion
|
|
366
|
-
//#region src/components/atoms/Popover/index.tsx
|
|
367
|
-
const Popover = ({ title, content, children }) => {
|
|
368
|
-
return /* @__PURE__ */ jsxs(Popover$1, { children: [/* @__PURE__ */ jsx(PopoverTrigger, {
|
|
369
|
-
asChild: true,
|
|
370
|
-
children
|
|
371
|
-
}), /* @__PURE__ */ jsxs(PopoverContent, {
|
|
372
|
-
align: "start",
|
|
373
|
-
children: [title && typeof title === "string" ? /* @__PURE__ */ jsx(Typography_default.Title, {
|
|
374
|
-
level: 5,
|
|
375
|
-
children: title
|
|
376
|
-
}) : title, content]
|
|
377
|
-
})] });
|
|
378
|
-
};
|
|
379
|
-
var Popover_default = Popover;
|
|
380
|
-
|
|
381
|
-
//#endregion
|
|
382
|
-
//#region src/core/progress.tsx
|
|
383
|
-
const Progress$1 = React$1.forwardRef(({ className, barClassName, barStyle, value, ...props }, ref) => /* @__PURE__ */ jsx(ProgressPrimitive.Root, {
|
|
384
|
-
ref,
|
|
385
|
-
className: cn("bg-primary/20 relative h-2 w-full overflow-hidden rounded-full", className),
|
|
386
|
-
...props,
|
|
387
|
-
children: /* @__PURE__ */ jsx(ProgressPrimitive.Indicator, {
|
|
388
|
-
className: cn("bg-primary h-full w-full flex-1 transition-all", barClassName),
|
|
389
|
-
style: {
|
|
390
|
-
transform: `translateX(-${100 - (value || 0)}%)`,
|
|
391
|
-
...barStyle
|
|
392
|
-
}
|
|
393
|
-
})
|
|
394
|
-
}));
|
|
395
|
-
Progress$1.displayName = ProgressPrimitive.Root.displayName;
|
|
396
|
-
|
|
397
1217
|
//#endregion
|
|
398
1218
|
//#region src/components/atoms/Progress/index.tsx
|
|
1219
|
+
const { Progress: Core$4 } = progress_exports;
|
|
399
1220
|
const Progress = ({ value, className, direction = "horizontal", classNames }) => {
|
|
400
1221
|
const isHorizontal = direction === "horizontal";
|
|
401
1222
|
const dimension = isHorizontal ? "width" : "height";
|
|
402
1223
|
const percent = isNaN(value) ? 0 : value;
|
|
403
|
-
return /* @__PURE__ */ jsx(
|
|
1224
|
+
return /* @__PURE__ */ jsx(Core$4, {
|
|
404
1225
|
value,
|
|
405
1226
|
className: cn(isHorizontal ? "h-4 w-full" : "flex h-full w-4 flex-col justify-end", className, classNames?.background),
|
|
406
1227
|
barClassName: cn("flex-none", classNames?.bar),
|
|
@@ -413,14 +1234,47 @@ const Progress = ({ value, className, direction = "horizontal", classNames }) =>
|
|
|
413
1234
|
var Progress_default = Progress;
|
|
414
1235
|
|
|
415
1236
|
//#endregion
|
|
416
|
-
//#region src/
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
1237
|
+
//#region src/components/atoms/Radio/index.tsx
|
|
1238
|
+
const { RadioGroup: Core$3, RadioGroupItem: Item$3 } = radio_group_exports;
|
|
1239
|
+
const { Label: Label$1 } = label_exports;
|
|
1240
|
+
const Radio = ({ children }) => {
|
|
1241
|
+
const id = useId();
|
|
1242
|
+
return /* @__PURE__ */ jsx(Core$3, { children: /* @__PURE__ */ jsxs("div", {
|
|
1243
|
+
className: "flex items-center gap-3",
|
|
1244
|
+
children: [/* @__PURE__ */ jsx(Item$3, {
|
|
1245
|
+
value: "default",
|
|
1246
|
+
id
|
|
1247
|
+
}), /* @__PURE__ */ jsxs(Label$1, {
|
|
1248
|
+
htmlFor: id,
|
|
1249
|
+
children: [" ", children]
|
|
1250
|
+
})]
|
|
1251
|
+
}) });
|
|
1252
|
+
};
|
|
1253
|
+
var Radio_default = Radio;
|
|
1254
|
+
|
|
1255
|
+
//#endregion
|
|
1256
|
+
//#region src/components/atoms/Select/index.tsx
|
|
1257
|
+
const { Select: Core$2, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectTrigger, SelectValue } = select_exports;
|
|
1258
|
+
const isGroup = (option) => {
|
|
1259
|
+
return "options" in option && Array.isArray(option.options);
|
|
1260
|
+
};
|
|
1261
|
+
const Select$1 = ({ className, placeholder, options, onChange, ...props }) => {
|
|
1262
|
+
return /* @__PURE__ */ jsxs(Core$2, {
|
|
1263
|
+
onValueChange: onChange,
|
|
1264
|
+
...props,
|
|
1265
|
+
children: [/* @__PURE__ */ jsx(SelectTrigger, {
|
|
1266
|
+
className: cn("w-full max-w-48", className),
|
|
1267
|
+
children: /* @__PURE__ */ jsx(SelectValue, { placeholder })
|
|
1268
|
+
}), /* @__PURE__ */ jsx(SelectContent, { children: options?.map((option, index) => isGroup(option) ? /* @__PURE__ */ jsxs(SelectGroup, { children: [/* @__PURE__ */ jsx(SelectLabel, { children: option.label }), option.options.map((item) => /* @__PURE__ */ jsx(SelectItem, {
|
|
1269
|
+
value: item.value,
|
|
1270
|
+
children: item.label
|
|
1271
|
+
}, item.value))] }, index) : /* @__PURE__ */ jsx(SelectItem, {
|
|
1272
|
+
value: option.value,
|
|
1273
|
+
children: option.label
|
|
1274
|
+
}, option.value)) })]
|
|
422
1275
|
});
|
|
423
|
-
}
|
|
1276
|
+
};
|
|
1277
|
+
var Select_default = Select$1;
|
|
424
1278
|
|
|
425
1279
|
//#endregion
|
|
426
1280
|
//#region src/components/atoms/Skeleton/Button/index.tsx
|
|
@@ -445,6 +1299,7 @@ var Node_default = Node;
|
|
|
445
1299
|
|
|
446
1300
|
//#endregion
|
|
447
1301
|
//#region src/components/atoms/Skeleton/index.tsx
|
|
1302
|
+
const { Skeleton: Core$1 } = skeleton_exports;
|
|
448
1303
|
const getValueAtIndex = (value, index) => {
|
|
449
1304
|
return Array.isArray(value) ? value[index] ?? value[0] : value;
|
|
450
1305
|
};
|
|
@@ -457,13 +1312,13 @@ const Skeleton = ({ active = true, loading = true, avatar, size = "default", dir
|
|
|
457
1312
|
if (!loading) return children;
|
|
458
1313
|
return /* @__PURE__ */ jsxs("div", {
|
|
459
1314
|
className: cn("flex items-center gap-3"),
|
|
460
|
-
children: [avatar && /* @__PURE__ */ jsx(
|
|
1315
|
+
children: [avatar && /* @__PURE__ */ jsx(Core$1, { className: cn("h-12 w-12", "rounded-xl", !active && "animate-none", classNames.avatar) }), /* @__PURE__ */ jsx("div", {
|
|
461
1316
|
className: cn("flex grow", direction === "vertical" && "flex-col", classNames.wrapper),
|
|
462
1317
|
style: { gap },
|
|
463
1318
|
children: Array.from({ length: count }).map((_, index) => {
|
|
464
1319
|
const itemWidth = getValueAtIndex(width, index);
|
|
465
1320
|
const itemHeight = getValueAtIndex(height, index);
|
|
466
|
-
return /* @__PURE__ */ jsx(
|
|
1321
|
+
return /* @__PURE__ */ jsx(Core$1, {
|
|
467
1322
|
className: cn("rounded-md", !active && "animate-none", SIZES[size], className, classNames.item),
|
|
468
1323
|
style: {
|
|
469
1324
|
...style,
|
|
@@ -492,37 +1347,23 @@ const Spin = ({ spinning, className, ...props }) => {
|
|
|
492
1347
|
};
|
|
493
1348
|
var Spin_default = Spin;
|
|
494
1349
|
|
|
495
|
-
//#endregion
|
|
496
|
-
//#region src/core/switch.tsx
|
|
497
|
-
function Switch$1({ className, handleClassName, ...props }) {
|
|
498
|
-
return /* @__PURE__ */ jsx(SwitchPrimitive.Root, {
|
|
499
|
-
"data-slot": "switch",
|
|
500
|
-
className: cn(`peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input
|
|
501
|
-
focus-visible:border-ring focus-visible:ring-ring/50
|
|
502
|
-
dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8
|
|
503
|
-
shrink-0 items-center rounded-full border border-transparent shadow-xs
|
|
504
|
-
transition-all outline-none focus-visible:ring-[3px]
|
|
505
|
-
disabled:cursor-not-allowed disabled:opacity-50`, className),
|
|
506
|
-
...props,
|
|
507
|
-
children: /* @__PURE__ */ jsx(SwitchPrimitive.Thumb, {
|
|
508
|
-
"data-slot": "switch-thumb",
|
|
509
|
-
className: cn(`bg-background dark:data-[state=unchecked]:bg-foreground
|
|
510
|
-
dark:data-[state=checked]:bg-primary-foreground pointer-events-none
|
|
511
|
-
block size-4 rounded-full ring-0 transition-transform
|
|
512
|
-
data-[state=checked]:translate-x-[calc(100%-2px)]
|
|
513
|
-
data-[state=unchecked]:translate-x-0`, handleClassName)
|
|
514
|
-
})
|
|
515
|
-
});
|
|
516
|
-
}
|
|
517
|
-
|
|
518
1350
|
//#endregion
|
|
519
1351
|
//#region src/components/atoms/Switch/index.tsx
|
|
520
|
-
const
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
1352
|
+
const { Switch: Core } = switch_exports;
|
|
1353
|
+
const Switch = ({ className, classNames, defaultChecked, checked: _checked, onChange: _onChange = () => {}, ...props }) => {
|
|
1354
|
+
const [uncontrolledChecked, setUncontrolledChecked] = useState(defaultChecked || false);
|
|
1355
|
+
const controlled = _checked !== void 0;
|
|
1356
|
+
const checked = controlled ? _checked : uncontrolledChecked;
|
|
1357
|
+
const onChange = (next) => {
|
|
1358
|
+
if (!controlled) setUncontrolledChecked(next);
|
|
1359
|
+
_onChange(next);
|
|
1360
|
+
};
|
|
1361
|
+
return /* @__PURE__ */ jsx(Core, {
|
|
1362
|
+
checked,
|
|
1363
|
+
className: cn("h-8.5 w-13", className, classNames?.track),
|
|
1364
|
+
handleClassName: cn("h-7 w-7", "data-[state=checked]:translate-x-5", "data-[state=unchecked]:translate-x-[2px]", classNames?.handle),
|
|
1365
|
+
onCheckedChange: (checked$1) => {
|
|
1366
|
+
onChange(checked$1);
|
|
526
1367
|
},
|
|
527
1368
|
...props
|
|
528
1369
|
});
|
|
@@ -535,10 +1376,10 @@ const Card = ({ title, children, className, classNames, variant = "outlined", ..
|
|
|
535
1376
|
return /* @__PURE__ */ jsxs("div", {
|
|
536
1377
|
className: cn("w-full", "rounded-lg p-4", "bg-white shadow-sm transition-all", variant === "outlined" && "border border-gray-200", className),
|
|
537
1378
|
...props,
|
|
538
|
-
children: [title
|
|
1379
|
+
children: [renderConditional(title, (v) => /* @__PURE__ */ jsx("div", {
|
|
539
1380
|
className: cn("mb-4 font-bold", classNames?.title),
|
|
540
|
-
children:
|
|
541
|
-
}), /* @__PURE__ */ jsx("div", {
|
|
1381
|
+
children: v
|
|
1382
|
+
})), /* @__PURE__ */ jsx("div", {
|
|
542
1383
|
className: cn(classNames?.body),
|
|
543
1384
|
children
|
|
544
1385
|
})]
|
|
@@ -546,50 +1387,28 @@ const Card = ({ title, children, className, classNames, variant = "outlined", ..
|
|
|
546
1387
|
};
|
|
547
1388
|
var Card_default = Card;
|
|
548
1389
|
|
|
549
|
-
//#endregion
|
|
550
|
-
//#region src/core/accordion.tsx
|
|
551
|
-
const Accordion = AccordionPrimitive.Root;
|
|
552
|
-
const AccordionItem = React$1.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(AccordionPrimitive.Item, {
|
|
553
|
-
ref,
|
|
554
|
-
className: cn("border-b", className),
|
|
555
|
-
...props
|
|
556
|
-
}));
|
|
557
|
-
AccordionItem.displayName = "AccordionItem";
|
|
558
|
-
const AccordionTrigger = React$1.forwardRef(({ expandIcon, className, children, ...props }, ref) => /* @__PURE__ */ jsx(AccordionPrimitive.Header, {
|
|
559
|
-
className: "flex",
|
|
560
|
-
children: /* @__PURE__ */ jsxs(AccordionPrimitive.Trigger, {
|
|
561
|
-
ref,
|
|
562
|
-
className: cn(`flex flex-1 items-center justify-between py-4 text-left text-sm
|
|
563
|
-
font-medium transition-all hover:underline
|
|
564
|
-
[&[data-state=open]>svg]:rotate-180`, className),
|
|
565
|
-
...props,
|
|
566
|
-
children: [children, expandIcon || /* @__PURE__ */ jsx(ChevronDown, { className: "text-muted-foreground h-4 w-4 shrink-0 transition-transform\n duration-200" })]
|
|
567
|
-
})
|
|
568
|
-
}));
|
|
569
|
-
AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;
|
|
570
|
-
const AccordionContent = React$1.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(AccordionPrimitive.Content, {
|
|
571
|
-
ref,
|
|
572
|
-
className: "data-[state=closed]:animate-accordion-up\n data-[state=open]:animate-accordion-down overflow-hidden text-sm",
|
|
573
|
-
...props,
|
|
574
|
-
children: /* @__PURE__ */ jsx("div", {
|
|
575
|
-
className: cn("pt-0 pb-4", className),
|
|
576
|
-
children
|
|
577
|
-
})
|
|
578
|
-
}));
|
|
579
|
-
AccordionContent.displayName = AccordionPrimitive.Content.displayName;
|
|
580
|
-
|
|
581
1390
|
//#endregion
|
|
582
1391
|
//#region src/components/molecules/Collapse/index.tsx
|
|
583
|
-
const
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
setItems(_items);
|
|
587
|
-
}, [_items]);
|
|
1392
|
+
const { Accordion, AccordionItem, AccordionTrigger, AccordionContent } = accordion_exports;
|
|
1393
|
+
const Collapse = ({ expandIcon, accordion = false, items = [], className, classNames, defaultActiveKey, activeKey: _activeKey, onChange: _onChange }) => {
|
|
1394
|
+
const controlled = _activeKey !== void 0;
|
|
588
1395
|
return /* @__PURE__ */ jsx(Accordion, {
|
|
589
1396
|
className,
|
|
590
|
-
...accordion ? {
|
|
1397
|
+
...accordion ? controlled ? {
|
|
1398
|
+
type: "single",
|
|
1399
|
+
value: `${_activeKey?.[0] ?? ""}`,
|
|
1400
|
+
onValueChange: (value) => {
|
|
1401
|
+
_onChange?.(value ? [value] : []);
|
|
1402
|
+
}
|
|
1403
|
+
} : {
|
|
591
1404
|
type: "single",
|
|
592
|
-
defaultValue: `${defaultActiveKey?.[0]}`
|
|
1405
|
+
defaultValue: `${defaultActiveKey?.[0] ?? ""}`
|
|
1406
|
+
} : controlled ? {
|
|
1407
|
+
type: "multiple",
|
|
1408
|
+
value: _activeKey?.map((key) => `${key}`),
|
|
1409
|
+
onValueChange: (values) => {
|
|
1410
|
+
_onChange?.(values);
|
|
1411
|
+
}
|
|
593
1412
|
} : {
|
|
594
1413
|
type: "multiple",
|
|
595
1414
|
defaultValue: defaultActiveKey?.map((key) => `${key}`)
|
|
@@ -614,9 +1433,8 @@ var Collapse_default = Collapse;
|
|
|
614
1433
|
|
|
615
1434
|
//#endregion
|
|
616
1435
|
//#region src/components/molecules/Menu/Item/Label/index.tsx
|
|
617
|
-
const Label = ({ children,
|
|
1436
|
+
const Label = ({ children, className, ...props }) => {
|
|
618
1437
|
if (typeof children === "string") return /* @__PURE__ */ jsx(Typography_default.Text, {
|
|
619
|
-
level,
|
|
620
1438
|
className: cn(className),
|
|
621
1439
|
...props,
|
|
622
1440
|
children
|
|
@@ -766,13 +1584,13 @@ function findKey(menu, targetKeys) {
|
|
|
766
1584
|
return false;
|
|
767
1585
|
}
|
|
768
1586
|
const Menu = ({ items, mode = "vertical", defaultSelectedKeys = [], selectedKeys: _selectedKeys, className, classNames, styles, offset, inlineOffset, onClick, onSelect: _onSelect, ...props }) => {
|
|
769
|
-
const
|
|
1587
|
+
const controlled = _selectedKeys !== void 0;
|
|
770
1588
|
const [uncontrolledSelectedKeys, setUncontrolledSelectedKeys] = useState(defaultSelectedKeys ?? []);
|
|
771
|
-
const selectedKeys =
|
|
1589
|
+
const selectedKeys = controlled ? _selectedKeys : uncontrolledSelectedKeys;
|
|
772
1590
|
const selectedKeysSet = useMemo(() => new Set(selectedKeys ?? []), [selectedKeys]);
|
|
773
1591
|
const selectionMap = useMemo(() => buildSelectionMap(items ?? [], selectedKeysSet), [items, selectedKeysSet]);
|
|
774
1592
|
const onSelect = (params) => {
|
|
775
|
-
if (!
|
|
1593
|
+
if (!controlled) setUncontrolledSelectedKeys([params.key]);
|
|
776
1594
|
_onSelect?.(params);
|
|
777
1595
|
};
|
|
778
1596
|
return /* @__PURE__ */ jsx("ul", {
|
|
@@ -801,31 +1619,32 @@ var Menu_default = Menu;
|
|
|
801
1619
|
|
|
802
1620
|
//#endregion
|
|
803
1621
|
//#region src/components/molecules/Dropdown/index.tsx
|
|
804
|
-
const Dropdown = ({ children, menu, trigger = "hover", open: _open
|
|
805
|
-
const [
|
|
1622
|
+
const Dropdown = ({ children, menu, trigger = "hover", open: _open, onOpenChange: _onOpenChange = () => {}, ...props }) => {
|
|
1623
|
+
const [uncontrolledOpen, setUncontrolledOpen] = useState(false);
|
|
1624
|
+
const controlled = _open !== void 0;
|
|
1625
|
+
const open = controlled ? _open : uncontrolledOpen;
|
|
806
1626
|
const isClickTrigger = trigger === "click";
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
1627
|
+
const onOpenChange = (nextOpen) => {
|
|
1628
|
+
if (!controlled) setUncontrolledOpen(nextOpen);
|
|
1629
|
+
_onOpenChange(nextOpen);
|
|
1630
|
+
};
|
|
810
1631
|
return /* @__PURE__ */ jsxs("div", {
|
|
811
1632
|
...props,
|
|
812
1633
|
className: cn("relative z-0", "inline-block cursor-pointer"),
|
|
813
1634
|
onMouseEnter: () => {
|
|
814
1635
|
if (isClickTrigger) return;
|
|
815
|
-
|
|
1636
|
+
onOpenChange(true);
|
|
816
1637
|
},
|
|
817
1638
|
onMouseLeave: () => {
|
|
818
1639
|
if (isClickTrigger) return;
|
|
819
|
-
|
|
1640
|
+
onOpenChange(false);
|
|
820
1641
|
},
|
|
821
1642
|
children: [/* @__PURE__ */ jsx("div", {
|
|
822
1643
|
onClick: () => {
|
|
823
1644
|
if (!isClickTrigger) return;
|
|
824
|
-
setOpen(!open);
|
|
825
1645
|
onOpenChange(!open);
|
|
826
1646
|
},
|
|
827
1647
|
onBlur: () => {
|
|
828
|
-
setOpen(false);
|
|
829
1648
|
onOpenChange(false);
|
|
830
1649
|
},
|
|
831
1650
|
children
|
|
@@ -4680,93 +5499,9 @@ const Space = ({ loading, loader, children, size = "middle", orientation = "hori
|
|
|
4680
5499
|
};
|
|
4681
5500
|
var Space_default = Space;
|
|
4682
5501
|
|
|
4683
|
-
//#endregion
|
|
4684
|
-
//#region src/core/drawer.tsx
|
|
4685
|
-
function Drawer$2({ ...props }) {
|
|
4686
|
-
return /* @__PURE__ */ jsx(Drawer.Root, {
|
|
4687
|
-
"data-slot": "drawer",
|
|
4688
|
-
...props
|
|
4689
|
-
});
|
|
4690
|
-
}
|
|
4691
|
-
function DrawerPortal({ ...props }) {
|
|
4692
|
-
return /* @__PURE__ */ jsx(Drawer.Portal, {
|
|
4693
|
-
"data-slot": "drawer-portal",
|
|
4694
|
-
...props
|
|
4695
|
-
});
|
|
4696
|
-
}
|
|
4697
|
-
function DrawerOverlay({ className, ...props }) {
|
|
4698
|
-
return /* @__PURE__ */ jsx(Drawer.Overlay, {
|
|
4699
|
-
"data-slot": "drawer-overlay",
|
|
4700
|
-
className: cn(`data-[state=open]:animate-in data-[state=closed]:animate-out
|
|
4701
|
-
data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0
|
|
4702
|
-
z-50 bg-black/50`, className),
|
|
4703
|
-
...props
|
|
4704
|
-
});
|
|
4705
|
-
}
|
|
4706
|
-
function DrawerContent({ className, classNames = {}, handlebar, mask, children, ...props }) {
|
|
4707
|
-
return /* @__PURE__ */ jsxs(DrawerPortal, {
|
|
4708
|
-
"data-slot": "drawer-portal",
|
|
4709
|
-
children: [/* @__PURE__ */ jsx(DrawerOverlay, { className: cn(classNames?.mask, !mask && "hidden") }), /* @__PURE__ */ jsxs(Drawer.Content, {
|
|
4710
|
-
"data-slot": "drawer-content",
|
|
4711
|
-
className: cn("group/drawer-content bg-background fixed z-50 flex h-auto flex-col", `data-[vaul-drawer-direction=top]:inset-x-0
|
|
4712
|
-
data-[vaul-drawer-direction=top]:top-0
|
|
4713
|
-
data-[vaul-drawer-direction=top]:mb-24
|
|
4714
|
-
data-[vaul-drawer-direction=top]:max-h-[80vh]
|
|
4715
|
-
data-[vaul-drawer-direction=top]:rounded-b-lg
|
|
4716
|
-
data-[vaul-drawer-direction=top]:border-b`, `data-[vaul-drawer-direction=bottom]:inset-x-0
|
|
4717
|
-
data-[vaul-drawer-direction=bottom]:bottom-0
|
|
4718
|
-
data-[vaul-drawer-direction=bottom]:mt-24
|
|
4719
|
-
data-[vaul-drawer-direction=bottom]:max-h-[80vh]
|
|
4720
|
-
data-[vaul-drawer-direction=bottom]:rounded-t-lg
|
|
4721
|
-
data-[vaul-drawer-direction=bottom]:border-t`, `data-[vaul-drawer-direction=right]:inset-y-0
|
|
4722
|
-
data-[vaul-drawer-direction=right]:right-0
|
|
4723
|
-
data-[vaul-drawer-direction=right]:w-3/4
|
|
4724
|
-
data-[vaul-drawer-direction=right]:border-l
|
|
4725
|
-
data-[vaul-drawer-direction=right]:sm:max-w-sm`, `data-[vaul-drawer-direction=left]:inset-y-0
|
|
4726
|
-
data-[vaul-drawer-direction=left]:left-0
|
|
4727
|
-
data-[vaul-drawer-direction=left]:w-3/4
|
|
4728
|
-
data-[vaul-drawer-direction=left]:border-r
|
|
4729
|
-
data-[vaul-drawer-direction=left]:sm:max-w-sm`, className),
|
|
4730
|
-
...props,
|
|
4731
|
-
children: [/* @__PURE__ */ jsx("div", { className: cn(`bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full
|
|
4732
|
-
group-data-[vaul-drawer-direction=bottom]/drawer-content:block`, classNames?.handlebar, !handlebar && "hidden") }), children]
|
|
4733
|
-
})]
|
|
4734
|
-
});
|
|
4735
|
-
}
|
|
4736
|
-
function DrawerHeader({ className, ...props }) {
|
|
4737
|
-
return /* @__PURE__ */ jsx("div", {
|
|
4738
|
-
"data-slot": "drawer-header",
|
|
4739
|
-
className: cn(`flex flex-col gap-0.5 p-4
|
|
4740
|
-
group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center
|
|
4741
|
-
group-data-[vaul-drawer-direction=top]/drawer-content:text-center
|
|
4742
|
-
md:gap-1.5 md:text-left`, className),
|
|
4743
|
-
...props
|
|
4744
|
-
});
|
|
4745
|
-
}
|
|
4746
|
-
function DrawerFooter({ className, ...props }) {
|
|
4747
|
-
return /* @__PURE__ */ jsx("div", {
|
|
4748
|
-
"data-slot": "drawer-footer",
|
|
4749
|
-
className: cn("mt-auto flex flex-col gap-2 p-4", className),
|
|
4750
|
-
...props
|
|
4751
|
-
});
|
|
4752
|
-
}
|
|
4753
|
-
function DrawerTitle({ className, ...props }) {
|
|
4754
|
-
return /* @__PURE__ */ jsx(Drawer.Title, {
|
|
4755
|
-
"data-slot": "drawer-title",
|
|
4756
|
-
className: cn("text-foreground font-semibold", className),
|
|
4757
|
-
...props
|
|
4758
|
-
});
|
|
4759
|
-
}
|
|
4760
|
-
function DrawerDescription({ className, ...props }) {
|
|
4761
|
-
return /* @__PURE__ */ jsx(Drawer.Description, {
|
|
4762
|
-
"data-slot": "drawer-description",
|
|
4763
|
-
className: cn("text-muted-foreground text-sm", className),
|
|
4764
|
-
...props
|
|
4765
|
-
});
|
|
4766
|
-
}
|
|
4767
|
-
|
|
4768
5502
|
//#endregion
|
|
4769
5503
|
//#region src/components/organisms/Drawer/index.tsx
|
|
5504
|
+
const { DrawerContent, Drawer: DrawerCore, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle } = drawer_exports;
|
|
4770
5505
|
const Drawer$1 = ({ open, title, footer, closable = true, closeIcon, direction = "bottom", maskClosable = true, handlebar = true, draggable = false, rounded = false, mask = true, className, classNames, style, children, container, onClose, ...props }) => {
|
|
4771
5506
|
useEffect(() => {
|
|
4772
5507
|
if (!open) return;
|
|
@@ -4782,7 +5517,7 @@ const Drawer$1 = ({ open, title, footer, closable = true, closeIcon, direction =
|
|
|
4782
5517
|
}
|
|
4783
5518
|
}, [open, mask]);
|
|
4784
5519
|
if (typeof window === "undefined") return null;
|
|
4785
|
-
return /* @__PURE__ */ jsx(
|
|
5520
|
+
return /* @__PURE__ */ jsx(DrawerCore, {
|
|
4786
5521
|
open,
|
|
4787
5522
|
direction,
|
|
4788
5523
|
handleOnly: !draggable,
|
|
@@ -4805,21 +5540,21 @@ const Drawer$1 = ({ open, title, footer, closable = true, closeIcon, direction =
|
|
|
4805
5540
|
className: cn(classNames?.header, !title && "p-0"),
|
|
4806
5541
|
children: [/* @__PURE__ */ jsxs(DrawerTitle, {
|
|
4807
5542
|
className: cn("flex justify-between", classNames?.title),
|
|
4808
|
-
children: [/* @__PURE__ */ jsx("span", { children: title }), closable
|
|
4809
|
-
className: cn("absolute right-5
|
|
5543
|
+
children: [/* @__PURE__ */ jsx("span", { children: title }), renderConditional(closable ? closeIcon || /* @__PURE__ */ jsx(X, {}) : null, (v) => /* @__PURE__ */ jsx("span", {
|
|
5544
|
+
className: cn("absolute top-3 right-5 cursor-pointer", classNames?.close),
|
|
4810
5545
|
onClick: onClose,
|
|
4811
|
-
children:
|
|
4812
|
-
})]
|
|
5546
|
+
children: v
|
|
5547
|
+
}))]
|
|
4813
5548
|
}), /* @__PURE__ */ jsx(DrawerDescription, { className: "hidden" })]
|
|
4814
5549
|
}),
|
|
4815
5550
|
/* @__PURE__ */ jsx("div", {
|
|
4816
5551
|
className: cn("overflow-auto p-5", classNames?.body),
|
|
4817
5552
|
children
|
|
4818
5553
|
}),
|
|
4819
|
-
footer
|
|
5554
|
+
renderConditional(footer, (v) => /* @__PURE__ */ jsx(DrawerFooter, {
|
|
4820
5555
|
className: cn(classNames?.footer),
|
|
4821
|
-
children:
|
|
4822
|
-
})
|
|
5556
|
+
children: v
|
|
5557
|
+
}))
|
|
4823
5558
|
]
|
|
4824
5559
|
})
|
|
4825
5560
|
});
|
|
@@ -4877,10 +5612,10 @@ const List = ({ loading, loaderProps, loader, header, title, empty, scroll, data
|
|
|
4877
5612
|
className: cn(className),
|
|
4878
5613
|
...props,
|
|
4879
5614
|
children: [
|
|
4880
|
-
/* @__PURE__ */ jsx("
|
|
4881
|
-
className: cn(
|
|
4882
|
-
children:
|
|
4883
|
-
}),
|
|
5615
|
+
renderConditional(title, (v) => /* @__PURE__ */ jsx("h2", {
|
|
5616
|
+
className: cn("px-1.5 py-4", "text-black-90 text-lg leading-5.75 font-bold"),
|
|
5617
|
+
children: v
|
|
5618
|
+
})),
|
|
4884
5619
|
/* @__PURE__ */ jsx("div", {
|
|
4885
5620
|
className: cn(classNames?.header),
|
|
4886
5621
|
children: header
|
|
@@ -4903,86 +5638,9 @@ const List = ({ loading, loaderProps, loader, header, title, empty, scroll, data
|
|
|
4903
5638
|
List.Item = Item_default;
|
|
4904
5639
|
var List_default = List;
|
|
4905
5640
|
|
|
4906
|
-
//#endregion
|
|
4907
|
-
//#region src/core/dialog.tsx
|
|
4908
|
-
function Dialog({ ...props }) {
|
|
4909
|
-
return /* @__PURE__ */ jsx(DialogPrimitive.Root, {
|
|
4910
|
-
"data-slot": "dialog",
|
|
4911
|
-
...props
|
|
4912
|
-
});
|
|
4913
|
-
}
|
|
4914
|
-
function DialogPortal({ ...props }) {
|
|
4915
|
-
return /* @__PURE__ */ jsx(DialogPrimitive.Portal, {
|
|
4916
|
-
"data-slot": "dialog-portal",
|
|
4917
|
-
...props
|
|
4918
|
-
});
|
|
4919
|
-
}
|
|
4920
|
-
function DialogOverlay({ className, ...props }) {
|
|
4921
|
-
return /* @__PURE__ */ jsx(DialogPrimitive.Overlay, {
|
|
4922
|
-
"data-slot": "dialog-overlay",
|
|
4923
|
-
className: cn(`data-[state=open]:animate-in data-[state=closed]:animate-out
|
|
4924
|
-
data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0
|
|
4925
|
-
z-50 bg-black/50`, className),
|
|
4926
|
-
...props
|
|
4927
|
-
});
|
|
4928
|
-
}
|
|
4929
|
-
function DialogContent({ className, children, showCloseButton = true, classNames, closeIcon, closable, container, onCancel, ...props }) {
|
|
4930
|
-
return /* @__PURE__ */ jsxs(DialogPortal, {
|
|
4931
|
-
"data-slot": "dialog-portal",
|
|
4932
|
-
container,
|
|
4933
|
-
children: [/* @__PURE__ */ jsx(DialogOverlay, { className: cn(classNames?.mask) }), /* @__PURE__ */ jsxs(DialogPrimitive.Content, {
|
|
4934
|
-
"data-slot": "dialog-content",
|
|
4935
|
-
className: cn(`bg-background data-[state=open]:animate-in
|
|
4936
|
-
data-[state=closed]:animate-out data-[state=closed]:fade-out-0
|
|
4937
|
-
data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95
|
|
4938
|
-
data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid
|
|
4939
|
-
w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%]
|
|
4940
|
-
gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg`, className),
|
|
4941
|
-
...props,
|
|
4942
|
-
children: [children, showCloseButton && /* @__PURE__ */ jsxs(DialogPrimitive.Close, {
|
|
4943
|
-
"data-slot": "dialog-close",
|
|
4944
|
-
className: "ring-offset-background focus:ring-ring\n data-[state=open]:bg-accent\n data-[state=open]:text-muted-foreground absolute top-4 right-4\n rounded-xs opacity-70 transition-opacity hover:opacity-100\n focus:ring-2 focus:ring-offset-2 focus:outline-hidden\n disabled:pointer-events-none [&_svg]:pointer-events-none\n [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
4945
|
-
disabled: typeof closable === "object" && closable.disabled,
|
|
4946
|
-
onClick: onCancel,
|
|
4947
|
-
children: [closeIcon || /* @__PURE__ */ jsx(XIcon, {}), /* @__PURE__ */ jsx("span", {
|
|
4948
|
-
className: "sr-only",
|
|
4949
|
-
children: "Close"
|
|
4950
|
-
})]
|
|
4951
|
-
})]
|
|
4952
|
-
})]
|
|
4953
|
-
});
|
|
4954
|
-
}
|
|
4955
|
-
function DialogHeader({ className, ...props }) {
|
|
4956
|
-
return /* @__PURE__ */ jsx("div", {
|
|
4957
|
-
"data-slot": "dialog-header",
|
|
4958
|
-
className: cn("flex flex-col gap-2 text-center sm:text-left", className),
|
|
4959
|
-
...props
|
|
4960
|
-
});
|
|
4961
|
-
}
|
|
4962
|
-
function DialogFooter({ className, ...props }) {
|
|
4963
|
-
return /* @__PURE__ */ jsx("div", {
|
|
4964
|
-
"data-slot": "dialog-footer",
|
|
4965
|
-
className: cn("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", className),
|
|
4966
|
-
...props
|
|
4967
|
-
});
|
|
4968
|
-
}
|
|
4969
|
-
function DialogTitle({ className, ...props }) {
|
|
4970
|
-
return /* @__PURE__ */ jsx(DialogPrimitive.Title, {
|
|
4971
|
-
"data-slot": "dialog-title",
|
|
4972
|
-
className: cn("text-lg leading-none font-semibold", className),
|
|
4973
|
-
...props
|
|
4974
|
-
});
|
|
4975
|
-
}
|
|
4976
|
-
function DialogDescription({ className, ...props }) {
|
|
4977
|
-
return /* @__PURE__ */ jsx(DialogPrimitive.Description, {
|
|
4978
|
-
"data-slot": "dialog-description",
|
|
4979
|
-
className: cn("text-muted-foreground text-sm", className),
|
|
4980
|
-
...props
|
|
4981
|
-
});
|
|
4982
|
-
}
|
|
4983
|
-
|
|
4984
5641
|
//#endregion
|
|
4985
5642
|
//#region src/components/organisms/Modal/index.tsx
|
|
5643
|
+
const { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle } = dialog_exports;
|
|
4986
5644
|
const isBrowser = typeof window !== "undefined" && typeof document !== "undefined";
|
|
4987
5645
|
let modalRoot = null;
|
|
4988
5646
|
let modalStack = [];
|
|
@@ -5220,7 +5878,7 @@ var Swiper_default = Swiper$1;
|
|
|
5220
5878
|
//#region src/components/templates/Layout/Content/index.tsx
|
|
5221
5879
|
const Content = ({ children, className, ...props }) => {
|
|
5222
5880
|
return /* @__PURE__ */ jsx("div", {
|
|
5223
|
-
className: cn("shrink
|
|
5881
|
+
className: cn("shrink grow basis-0", className),
|
|
5224
5882
|
...props,
|
|
5225
5883
|
children
|
|
5226
5884
|
});
|
|
@@ -5253,7 +5911,7 @@ var Header_default = Header;
|
|
|
5253
5911
|
//#region src/components/templates/Layout/Sider/index.tsx
|
|
5254
5912
|
const Sider = ({ children, className, ...props }) => {
|
|
5255
5913
|
return /* @__PURE__ */ jsx("div", {
|
|
5256
|
-
className: cn("z-
|
|
5914
|
+
className: cn("z-100", "w-50", className),
|
|
5257
5915
|
...props,
|
|
5258
5916
|
children
|
|
5259
5917
|
});
|
|
@@ -5276,4 +5934,4 @@ Layout.Sider = Sider_default;
|
|
|
5276
5934
|
var Layout_default = Layout;
|
|
5277
5935
|
|
|
5278
5936
|
//#endregion
|
|
5279
|
-
export { Button_default$1 as
|
|
5937
|
+
export { ColorPicker_default as C, Button_default$1 as E, FloatButton_default as S, Checkbox_default as T, Skeleton_default as _, Drawer_default as a, Progress_default as b, Dropdown_default as c, buildSelectionMap as d, findKey as f, Spin_default as g, Switch_default as h, List_default as i, MENU_CLASSNAMES as l, Card_default as m, Swiper_default as n, Space_default as o, Collapse_default as p, Modal_default as r, Marquees_default as s, Layout_default as t, Menu_default as u, Select_default as v, Popover_default as w, Input_default as x, Radio_default as y };
|