@yenio-pld/blocks 1.0.0-rc.1 → 1.0.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/index.cjs +361 -855
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +16 -2
- package/dist/index.d.ts +16 -2
- package/dist/index.js +223 -697
- package/dist/index.js.map +1 -1
- package/dist/ui/alert-dialog.d.ts +9 -3
- package/dist/ui/alert-dialog.js +11 -3
- package/dist/ui/alert-dialog.js.map +1 -1
- package/dist/ui/drawer.d.ts +15 -0
- package/dist/ui/drawer.js +126 -0
- package/dist/ui/drawer.js.map +1 -0
- package/dist/ui/dropdown-menu.d.ts +9 -3
- package/dist/ui/dropdown-menu.js +9 -2
- package/dist/ui/dropdown-menu.js.map +1 -1
- package/dist/ui/empty.d.ts +15 -0
- package/dist/ui/empty.js +104 -0
- package/dist/ui/empty.js.map +1 -0
- package/dist/ui/select.d.ts +5 -0
- package/dist/ui/select.js +25 -0
- package/dist/ui/select.js.map +1 -0
- package/dist/ui/slider.d.ts +6 -0
- package/dist/ui/slider.js +70 -0
- package/dist/ui/slider.js.map +1 -0
- package/dist/ui/sonner.d.ts +1 -0
- package/dist/ui/sonner.js +1 -0
- package/dist/ui/sonner.js.map +1 -1
- package/dist/ui/textarea.d.ts +5 -0
- package/dist/ui/textarea.js +25 -0
- package/dist/ui/textarea.js.map +1 -0
- package/dist/ui/toggle.d.ts +12 -0
- package/dist/ui/toggle.js +49 -0
- package/dist/ui/toggle.js.map +1 -0
- package/package.json +25 -1
package/dist/index.js
CHANGED
|
@@ -1,118 +1,61 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import * as React from 'react';
|
|
3
2
|
import { createContext, useContext, useState, useRef, useId, useEffect, useCallback, useLayoutEffect } from 'react';
|
|
4
|
-
import {
|
|
3
|
+
import { Skeleton } from './ui/skeleton.js';
|
|
4
|
+
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
5
|
+
import { Loader2, AlertTriangle, Inbox, Bell, Moon, Sun, Monitor, Languages, Upload, Move, ZoomOut, ZoomIn, RotateCcw, RotateCw, Grid3X3, RefreshCw, X, User, Pencil, Check, Pause, Play, BarChart3 } from 'lucide-react';
|
|
5
6
|
import { clsx } from 'clsx';
|
|
6
7
|
import { twMerge } from 'tailwind-merge';
|
|
8
|
+
import { Empty, EmptyHeader, EmptyMedia, EmptyTitle, EmptyDescription, EmptyContent } from './ui/empty.js';
|
|
7
9
|
import { cva } from 'class-variance-authority';
|
|
8
|
-
import {
|
|
9
|
-
import
|
|
10
|
-
import {
|
|
11
|
-
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
10
|
+
import { AlertDialog, AlertDialogContent, AlertDialogHeader, AlertDialogTitle, AlertDialogDescription, AlertDialogFooter, AlertDialogCancel, AlertDialogAction } from './ui/alert-dialog.js';
|
|
11
|
+
import { Button } from './ui/button.js';
|
|
12
|
+
import { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, miniMenuContentClassName, miniMenuContentDefaults, DropdownMenuItem } from './ui/dropdown-menu.js';
|
|
12
13
|
import { useTheme } from 'next-themes';
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import { Drawer
|
|
14
|
+
import { Slider } from './ui/slider.js';
|
|
15
|
+
import { Toggle } from './ui/toggle.js';
|
|
16
|
+
import { DialogClose, Dialog, DialogContent, DialogHeader, DialogTitle, DialogFooter } from './ui/dialog.js';
|
|
17
|
+
import { DrawerClose, Drawer, DrawerContent, DrawerHeader, DrawerTitle, DrawerFooter } from './ui/drawer.js';
|
|
17
18
|
import { AnimatePresence, motion } from 'framer-motion';
|
|
18
19
|
|
|
19
20
|
var LanguageContext = createContext(null);
|
|
20
21
|
function useLanguageContext() {
|
|
21
22
|
return useContext(LanguageContext);
|
|
22
23
|
}
|
|
23
|
-
function
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
return /* @__PURE__ */
|
|
28
|
-
"
|
|
29
|
-
{
|
|
30
|
-
|
|
31
|
-
className: cn(
|
|
32
|
-
"flex min-w-0 flex-1 flex-col items-center justify-center gap-6 rounded-lg p-6 text-center text-balance md:p-12",
|
|
33
|
-
className
|
|
34
|
-
),
|
|
35
|
-
...props
|
|
36
|
-
}
|
|
37
|
-
);
|
|
38
|
-
}
|
|
39
|
-
function EmptyHeader({ className, ...props }) {
|
|
40
|
-
return /* @__PURE__ */ jsx(
|
|
41
|
-
"div",
|
|
42
|
-
{
|
|
43
|
-
"data-slot": "empty-header",
|
|
44
|
-
className: cn(
|
|
45
|
-
"flex max-w-sm flex-col items-center gap-2 text-center",
|
|
46
|
-
className
|
|
47
|
-
),
|
|
48
|
-
...props
|
|
49
|
-
}
|
|
50
|
-
);
|
|
24
|
+
function PageTitle({
|
|
25
|
+
title,
|
|
26
|
+
description
|
|
27
|
+
}) {
|
|
28
|
+
return /* @__PURE__ */ jsxs("header", { className: "flex flex-col gap-1", children: [
|
|
29
|
+
/* @__PURE__ */ jsx("h1", { className: "text-2xl font-semibold tracking-tight", children: title }),
|
|
30
|
+
description ? /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: description }) : null
|
|
31
|
+
] });
|
|
51
32
|
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
variants: {
|
|
56
|
-
variant: {
|
|
57
|
-
default: "bg-transparent",
|
|
58
|
-
icon: "flex size-10 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg:not([class*='size-'])]:size-6"
|
|
59
|
-
}
|
|
60
|
-
},
|
|
61
|
-
defaultVariants: {
|
|
62
|
-
variant: "default"
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
);
|
|
66
|
-
function EmptyMedia({
|
|
67
|
-
className,
|
|
68
|
-
variant = "default",
|
|
69
|
-
...props
|
|
33
|
+
function Field({
|
|
34
|
+
label,
|
|
35
|
+
children
|
|
70
36
|
}) {
|
|
71
|
-
return /* @__PURE__ */
|
|
72
|
-
"
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
"data-variant": variant,
|
|
76
|
-
className: cn(emptyMediaVariants({ variant, className })),
|
|
77
|
-
...props
|
|
78
|
-
}
|
|
79
|
-
);
|
|
37
|
+
return /* @__PURE__ */ jsxs("label", { className: "flex flex-col gap-1 text-sm", children: [
|
|
38
|
+
/* @__PURE__ */ jsx("span", { className: "font-medium", children: label }),
|
|
39
|
+
children
|
|
40
|
+
] });
|
|
80
41
|
}
|
|
81
|
-
function
|
|
82
|
-
return /* @__PURE__ */
|
|
83
|
-
"
|
|
84
|
-
{
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
);
|
|
42
|
+
function ListSkeleton() {
|
|
43
|
+
return /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-3", "aria-hidden": "true", children: [
|
|
44
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-8 w-48" }),
|
|
45
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-10 w-full" }),
|
|
46
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-16 w-full" }),
|
|
47
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-16 w-full" }),
|
|
48
|
+
/* @__PURE__ */ jsx(Skeleton, { className: "h-16 w-full" })
|
|
49
|
+
] });
|
|
90
50
|
}
|
|
91
|
-
function
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
className: cn(
|
|
97
|
-
"text-sm/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",
|
|
98
|
-
className
|
|
99
|
-
),
|
|
100
|
-
...props
|
|
101
|
-
}
|
|
102
|
-
);
|
|
51
|
+
function TableSkeleton({
|
|
52
|
+
columns,
|
|
53
|
+
rows = 5
|
|
54
|
+
}) {
|
|
55
|
+
return /* @__PURE__ */ jsx("div", { "aria-busy": "true", className: "flex flex-col gap-2", children: Array.from({ length: rows }, (_, row) => /* @__PURE__ */ jsx("div", { className: "flex gap-2", children: Array.from({ length: columns }, (_2, column) => /* @__PURE__ */ jsx(Skeleton, { className: "h-8 flex-1" }, column)) }, row)) });
|
|
103
56
|
}
|
|
104
|
-
function
|
|
105
|
-
return
|
|
106
|
-
"div",
|
|
107
|
-
{
|
|
108
|
-
"data-slot": "empty-content",
|
|
109
|
-
className: cn(
|
|
110
|
-
"flex w-full max-w-sm min-w-0 flex-col items-center gap-4 text-sm text-balance",
|
|
111
|
-
className
|
|
112
|
-
),
|
|
113
|
-
...props
|
|
114
|
-
}
|
|
115
|
-
);
|
|
57
|
+
function cn(...inputs) {
|
|
58
|
+
return twMerge(clsx(inputs));
|
|
116
59
|
}
|
|
117
60
|
function LoadingState({
|
|
118
61
|
label = "Loading\u2026",
|
|
@@ -206,187 +149,97 @@ function EmptyState({
|
|
|
206
149
|
}
|
|
207
150
|
);
|
|
208
151
|
}
|
|
209
|
-
|
|
210
|
-
|
|
152
|
+
function Empty2({ className, ...props }) {
|
|
153
|
+
return /* @__PURE__ */ jsx(
|
|
154
|
+
"div",
|
|
155
|
+
{
|
|
156
|
+
"data-slot": "empty",
|
|
157
|
+
className: cn(
|
|
158
|
+
"flex min-w-0 flex-1 flex-col items-center justify-center gap-6 rounded-lg p-6 text-center text-balance md:p-12",
|
|
159
|
+
className
|
|
160
|
+
),
|
|
161
|
+
...props
|
|
162
|
+
}
|
|
163
|
+
);
|
|
164
|
+
}
|
|
165
|
+
function EmptyHeader2({ className, ...props }) {
|
|
166
|
+
return /* @__PURE__ */ jsx(
|
|
167
|
+
"div",
|
|
168
|
+
{
|
|
169
|
+
"data-slot": "empty-header",
|
|
170
|
+
className: cn(
|
|
171
|
+
"flex max-w-sm flex-col items-center gap-2 text-center",
|
|
172
|
+
className
|
|
173
|
+
),
|
|
174
|
+
...props
|
|
175
|
+
}
|
|
176
|
+
);
|
|
177
|
+
}
|
|
178
|
+
var emptyMediaVariants = cva(
|
|
179
|
+
"mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0",
|
|
211
180
|
{
|
|
212
181
|
variants: {
|
|
213
182
|
variant: {
|
|
214
|
-
default: "bg-
|
|
215
|
-
|
|
216
|
-
outline: "border bg-background text-foreground shadow-xs hover:bg-accent hover:text-accent-foreground dark:border-input dark:bg-input/30 dark:text-foreground dark:hover:bg-muted dark:hover:text-foreground",
|
|
217
|
-
secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
218
|
-
ghost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50 dark:hover:text-foreground",
|
|
219
|
-
link: "text-primary underline-offset-4 hover:underline"
|
|
220
|
-
},
|
|
221
|
-
size: {
|
|
222
|
-
default: "h-9 px-4 py-2 has-[>svg]:px-3",
|
|
223
|
-
sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",
|
|
224
|
-
lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
|
|
225
|
-
icon: "size-9",
|
|
226
|
-
"icon-sm": "size-8",
|
|
227
|
-
"icon-lg": "size-10"
|
|
183
|
+
default: "bg-transparent",
|
|
184
|
+
icon: "flex size-10 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg:not([class*='size-'])]:size-6"
|
|
228
185
|
}
|
|
229
186
|
},
|
|
230
187
|
defaultVariants: {
|
|
231
|
-
variant: "default"
|
|
232
|
-
size: "default"
|
|
188
|
+
variant: "default"
|
|
233
189
|
}
|
|
234
190
|
}
|
|
235
191
|
);
|
|
236
|
-
function
|
|
192
|
+
function EmptyMedia2({
|
|
237
193
|
className,
|
|
238
194
|
variant = "default",
|
|
239
|
-
size = "default",
|
|
240
|
-
asChild = false,
|
|
241
195
|
...props
|
|
242
196
|
}) {
|
|
243
|
-
const Comp = asChild ? Slot : "button";
|
|
244
197
|
return /* @__PURE__ */ jsx(
|
|
245
|
-
|
|
198
|
+
"div",
|
|
246
199
|
{
|
|
247
|
-
"data-slot": "
|
|
200
|
+
"data-slot": "empty-icon",
|
|
248
201
|
"data-variant": variant,
|
|
249
|
-
|
|
250
|
-
className: cn(buttonVariants({ variant, size, className })),
|
|
202
|
+
className: cn(emptyMediaVariants({ variant, className })),
|
|
251
203
|
...props
|
|
252
204
|
}
|
|
253
205
|
);
|
|
254
206
|
}
|
|
255
|
-
function
|
|
256
|
-
...props
|
|
257
|
-
}) {
|
|
258
|
-
return /* @__PURE__ */ jsx(AlertDialogPrimitive.Root, { "data-slot": "alert-dialog", ...props });
|
|
259
|
-
}
|
|
260
|
-
function AlertDialogPortal({
|
|
261
|
-
...props
|
|
262
|
-
}) {
|
|
263
|
-
return /* @__PURE__ */ jsx(AlertDialogPrimitive.Portal, { "data-slot": "alert-dialog-portal", ...props });
|
|
264
|
-
}
|
|
265
|
-
function AlertDialogOverlay({
|
|
266
|
-
className,
|
|
267
|
-
...props
|
|
268
|
-
}) {
|
|
207
|
+
function EmptyTitle2({ className, ...props }) {
|
|
269
208
|
return /* @__PURE__ */ jsx(
|
|
270
|
-
|
|
209
|
+
"div",
|
|
271
210
|
{
|
|
272
|
-
"data-slot": "
|
|
273
|
-
className: cn(
|
|
274
|
-
"fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:animate-in data-[state=open]:fade-in-0",
|
|
275
|
-
className
|
|
276
|
-
),
|
|
211
|
+
"data-slot": "empty-title",
|
|
212
|
+
className: cn("text-lg font-medium tracking-tight", className),
|
|
277
213
|
...props
|
|
278
214
|
}
|
|
279
215
|
);
|
|
280
216
|
}
|
|
281
|
-
function
|
|
282
|
-
className,
|
|
283
|
-
size = "default",
|
|
284
|
-
...props
|
|
285
|
-
}) {
|
|
286
|
-
return /* @__PURE__ */ jsxs(AlertDialogPortal, { children: [
|
|
287
|
-
/* @__PURE__ */ jsx(AlertDialogOverlay, {}),
|
|
288
|
-
/* @__PURE__ */ jsx(
|
|
289
|
-
AlertDialogPrimitive.Content,
|
|
290
|
-
{
|
|
291
|
-
"data-slot": "alert-dialog-content",
|
|
292
|
-
"data-size": size,
|
|
293
|
-
className: cn(
|
|
294
|
-
"group/alert-dialog-content 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 bg-background p-6 shadow-lg duration-200 data-[size=sm]:max-w-xs data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[size=default]:sm:max-w-lg",
|
|
295
|
-
className
|
|
296
|
-
),
|
|
297
|
-
...props
|
|
298
|
-
}
|
|
299
|
-
)
|
|
300
|
-
] });
|
|
301
|
-
}
|
|
302
|
-
function AlertDialogHeader({
|
|
303
|
-
className,
|
|
304
|
-
...props
|
|
305
|
-
}) {
|
|
217
|
+
function EmptyDescription2({ className, ...props }) {
|
|
306
218
|
return /* @__PURE__ */ jsx(
|
|
307
219
|
"div",
|
|
308
220
|
{
|
|
309
|
-
"data-slot": "
|
|
221
|
+
"data-slot": "empty-description",
|
|
310
222
|
className: cn(
|
|
311
|
-
"
|
|
223
|
+
"text-sm/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",
|
|
312
224
|
className
|
|
313
225
|
),
|
|
314
226
|
...props
|
|
315
227
|
}
|
|
316
228
|
);
|
|
317
229
|
}
|
|
318
|
-
function
|
|
319
|
-
className,
|
|
320
|
-
...props
|
|
321
|
-
}) {
|
|
230
|
+
function EmptyContent2({ className, ...props }) {
|
|
322
231
|
return /* @__PURE__ */ jsx(
|
|
323
232
|
"div",
|
|
324
233
|
{
|
|
325
|
-
"data-slot": "
|
|
234
|
+
"data-slot": "empty-content",
|
|
326
235
|
className: cn(
|
|
327
|
-
"flex flex-col-
|
|
236
|
+
"flex w-full max-w-sm min-w-0 flex-col items-center gap-4 text-sm text-balance",
|
|
328
237
|
className
|
|
329
238
|
),
|
|
330
239
|
...props
|
|
331
240
|
}
|
|
332
241
|
);
|
|
333
242
|
}
|
|
334
|
-
function AlertDialogTitle({
|
|
335
|
-
className,
|
|
336
|
-
...props
|
|
337
|
-
}) {
|
|
338
|
-
return /* @__PURE__ */ jsx(
|
|
339
|
-
AlertDialogPrimitive.Title,
|
|
340
|
-
{
|
|
341
|
-
"data-slot": "alert-dialog-title",
|
|
342
|
-
className: cn("text-lg font-semibold", className),
|
|
343
|
-
...props
|
|
344
|
-
}
|
|
345
|
-
);
|
|
346
|
-
}
|
|
347
|
-
function AlertDialogDescription({
|
|
348
|
-
className,
|
|
349
|
-
...props
|
|
350
|
-
}) {
|
|
351
|
-
return /* @__PURE__ */ jsx(
|
|
352
|
-
AlertDialogPrimitive.Description,
|
|
353
|
-
{
|
|
354
|
-
"data-slot": "alert-dialog-description",
|
|
355
|
-
className: cn("text-sm text-muted-foreground", className),
|
|
356
|
-
...props
|
|
357
|
-
}
|
|
358
|
-
);
|
|
359
|
-
}
|
|
360
|
-
function AlertDialogAction({
|
|
361
|
-
className,
|
|
362
|
-
variant = "default",
|
|
363
|
-
size = "default",
|
|
364
|
-
...props
|
|
365
|
-
}) {
|
|
366
|
-
return /* @__PURE__ */ jsx(Button, { variant, size, asChild: true, children: /* @__PURE__ */ jsx(
|
|
367
|
-
AlertDialogPrimitive.Action,
|
|
368
|
-
{
|
|
369
|
-
"data-slot": "alert-dialog-action",
|
|
370
|
-
className: cn(className),
|
|
371
|
-
...props
|
|
372
|
-
}
|
|
373
|
-
) });
|
|
374
|
-
}
|
|
375
|
-
function AlertDialogCancel({
|
|
376
|
-
className,
|
|
377
|
-
variant = "outline",
|
|
378
|
-
size = "default",
|
|
379
|
-
...props
|
|
380
|
-
}) {
|
|
381
|
-
return /* @__PURE__ */ jsx(Button, { variant, size, asChild: true, children: /* @__PURE__ */ jsx(
|
|
382
|
-
AlertDialogPrimitive.Cancel,
|
|
383
|
-
{
|
|
384
|
-
"data-slot": "alert-dialog-cancel",
|
|
385
|
-
className: cn(className),
|
|
386
|
-
...props
|
|
387
|
-
}
|
|
388
|
-
) });
|
|
389
|
-
}
|
|
390
243
|
function ConfirmDestructiveDialog({
|
|
391
244
|
open,
|
|
392
245
|
onOpenChange,
|
|
@@ -417,65 +270,6 @@ function ConfirmDestructiveDialog({
|
|
|
417
270
|
] })
|
|
418
271
|
] }) });
|
|
419
272
|
}
|
|
420
|
-
var miniMenuContentClassName = "max-h-none overflow-x-visible overflow-y-visible";
|
|
421
|
-
var miniMenuContentDefaults = {
|
|
422
|
-
sideOffset: 8,
|
|
423
|
-
collisionPadding: 12
|
|
424
|
-
};
|
|
425
|
-
function DropdownMenu({
|
|
426
|
-
...props
|
|
427
|
-
}) {
|
|
428
|
-
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Root, { "data-slot": "dropdown-menu", ...props });
|
|
429
|
-
}
|
|
430
|
-
function DropdownMenuTrigger({
|
|
431
|
-
...props
|
|
432
|
-
}) {
|
|
433
|
-
return /* @__PURE__ */ jsx(
|
|
434
|
-
DropdownMenuPrimitive.Trigger,
|
|
435
|
-
{
|
|
436
|
-
"data-slot": "dropdown-menu-trigger",
|
|
437
|
-
...props
|
|
438
|
-
}
|
|
439
|
-
);
|
|
440
|
-
}
|
|
441
|
-
function DropdownMenuContent({
|
|
442
|
-
className,
|
|
443
|
-
sideOffset = 4,
|
|
444
|
-
...props
|
|
445
|
-
}) {
|
|
446
|
-
return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(
|
|
447
|
-
DropdownMenuPrimitive.Content,
|
|
448
|
-
{
|
|
449
|
-
"data-slot": "dropdown-menu-content",
|
|
450
|
-
sideOffset,
|
|
451
|
-
className: cn(
|
|
452
|
-
"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-[200] 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",
|
|
453
|
-
className
|
|
454
|
-
),
|
|
455
|
-
...props
|
|
456
|
-
}
|
|
457
|
-
) });
|
|
458
|
-
}
|
|
459
|
-
function DropdownMenuItem({
|
|
460
|
-
className,
|
|
461
|
-
inset,
|
|
462
|
-
variant = "default",
|
|
463
|
-
...props
|
|
464
|
-
}) {
|
|
465
|
-
return /* @__PURE__ */ jsx(
|
|
466
|
-
DropdownMenuPrimitive.Item,
|
|
467
|
-
{
|
|
468
|
-
"data-slot": "dropdown-menu-item",
|
|
469
|
-
"data-inset": inset,
|
|
470
|
-
"data-variant": variant,
|
|
471
|
-
className: cn(
|
|
472
|
-
"relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground data-[highlighted]:[&_svg:not([class*='text-'])]:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus:[&_svg:not([class*='text-'])]:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:data-[highlighted]:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 dark:data-[variant=destructive]:data-[highlighted]:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:data-[highlighted]:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
473
|
-
className
|
|
474
|
-
),
|
|
475
|
-
...props
|
|
476
|
-
}
|
|
477
|
-
);
|
|
478
|
-
}
|
|
479
273
|
var DEFAULT_NOTIFICATION_BELL_LABELS = {
|
|
480
274
|
title: "Notifications",
|
|
481
275
|
empty: "You're all caught up.",
|
|
@@ -532,63 +326,76 @@ function NotificationBell({
|
|
|
532
326
|
className
|
|
533
327
|
}) {
|
|
534
328
|
const labels = { ...DEFAULT_NOTIFICATION_BELL_LABELS, ...labelOverrides };
|
|
535
|
-
return /* @__PURE__ */ jsxs(
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
{
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
329
|
+
return /* @__PURE__ */ jsxs(
|
|
330
|
+
DropdownMenu,
|
|
331
|
+
{
|
|
332
|
+
onOpenChange: (open) => {
|
|
333
|
+
onOpenChange?.(open);
|
|
334
|
+
},
|
|
335
|
+
children: [
|
|
336
|
+
/* @__PURE__ */ jsxs(
|
|
337
|
+
DropdownMenuTrigger,
|
|
338
|
+
{
|
|
339
|
+
render: /* @__PURE__ */ jsx(
|
|
340
|
+
Button,
|
|
341
|
+
{
|
|
342
|
+
type: "button",
|
|
343
|
+
variant: "ghost",
|
|
344
|
+
size: "icon",
|
|
345
|
+
className: cn("relative size-9", className),
|
|
346
|
+
"aria-label": labels.title
|
|
347
|
+
}
|
|
348
|
+
),
|
|
349
|
+
children: [
|
|
350
|
+
/* @__PURE__ */ jsx(Bell, { className: "size-4" }),
|
|
351
|
+
unreadCount > 0 ? /* @__PURE__ */ jsx("span", { className: "bg-destructive text-destructive-foreground absolute -top-0.5 -right-0.5 flex size-4 items-center justify-center rounded-full text-[10px] leading-none font-medium tabular-nums", children: formatUnreadBadge(unreadCount) }) : null
|
|
352
|
+
]
|
|
353
|
+
}
|
|
354
|
+
),
|
|
355
|
+
/* @__PURE__ */ jsxs(DropdownMenuContent, { align, className: "w-80 p-0", children: [
|
|
356
|
+
/* @__PURE__ */ jsx("div", { className: "flex items-center justify-between border-b px-4 py-3", children: /* @__PURE__ */ jsx("h4", { className: "font-semibold", children: labels.title }) }),
|
|
357
|
+
/* @__PURE__ */ jsx("div", { className: "max-h-80 overflow-y-auto", children: isLoading ? /* @__PURE__ */ jsx(NotificationListSkeleton, {}) : items.length === 0 ? /* @__PURE__ */ jsx("p", { className: "text-muted-foreground px-4 py-8 text-center text-sm", children: labels.empty }) : /* @__PURE__ */ jsx("div", { className: "flex flex-col", children: items.map((item, index) => {
|
|
358
|
+
const body = /* @__PURE__ */ jsxs("div", { className: "flex-1 space-y-1", children: [
|
|
359
|
+
/* @__PURE__ */ jsx("p", { className: "text-sm leading-none font-medium", children: item.title }),
|
|
360
|
+
/* @__PURE__ */ jsx("p", { className: "text-muted-foreground line-clamp-2 text-xs", children: item.message }),
|
|
361
|
+
/* @__PURE__ */ jsx("p", { className: "text-muted-foreground/70 text-xs", children: formatTime(item.createdAt) })
|
|
362
|
+
] });
|
|
363
|
+
return /* @__PURE__ */ jsxs("div", { children: [
|
|
364
|
+
item.href ? /* @__PURE__ */ jsx(
|
|
365
|
+
"a",
|
|
366
|
+
{
|
|
367
|
+
href: item.href,
|
|
368
|
+
className: cn(
|
|
369
|
+
"hover:bg-muted/50 flex gap-3 px-4 py-3 motion-safe:transition-colors",
|
|
370
|
+
!item.read && "bg-muted/30"
|
|
371
|
+
),
|
|
372
|
+
children: body
|
|
373
|
+
}
|
|
374
|
+
) : /* @__PURE__ */ jsx(
|
|
375
|
+
"div",
|
|
376
|
+
{
|
|
377
|
+
className: cn(
|
|
378
|
+
"flex gap-3 px-4 py-3",
|
|
379
|
+
!item.read && "bg-muted/30"
|
|
380
|
+
),
|
|
381
|
+
children: body
|
|
382
|
+
}
|
|
566
383
|
),
|
|
567
|
-
|
|
568
|
-
}
|
|
569
|
-
)
|
|
570
|
-
|
|
384
|
+
index < items.length - 1 ? /* @__PURE__ */ jsx("div", { className: "bg-border h-px" }) : null
|
|
385
|
+
] }, item.id);
|
|
386
|
+
}) }) }),
|
|
387
|
+
/* @__PURE__ */ jsx("div", { className: "border-t px-4 py-2", children: /* @__PURE__ */ jsx(
|
|
388
|
+
"a",
|
|
571
389
|
{
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
),
|
|
576
|
-
children: body
|
|
390
|
+
href: viewAllHref,
|
|
391
|
+
className: "text-primary block text-center text-sm font-medium hover:underline",
|
|
392
|
+
children: labels.viewAll
|
|
577
393
|
}
|
|
578
|
-
)
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
"a",
|
|
584
|
-
{
|
|
585
|
-
href: viewAllHref,
|
|
586
|
-
className: "text-primary block text-center text-sm font-medium hover:underline",
|
|
587
|
-
children: labels.viewAll
|
|
588
|
-
}
|
|
589
|
-
) })
|
|
590
|
-
] })
|
|
591
|
-
] });
|
|
394
|
+
) })
|
|
395
|
+
] })
|
|
396
|
+
]
|
|
397
|
+
}
|
|
398
|
+
);
|
|
592
399
|
}
|
|
593
400
|
|
|
594
401
|
// src/components/editable/types.ts
|
|
@@ -1039,23 +846,28 @@ function ThemeSwitcher({
|
|
|
1039
846
|
}
|
|
1040
847
|
const currentTheme = storedTheme(theme);
|
|
1041
848
|
const TriggerIcon = currentTheme ? themeIcons[currentTheme] : Monitor;
|
|
1042
|
-
return /* @__PURE__ */ jsxs(DropdownMenu, {
|
|
1043
|
-
/* @__PURE__ */ jsx(
|
|
1044
|
-
|
|
849
|
+
return /* @__PURE__ */ jsxs(DropdownMenu, { children: [
|
|
850
|
+
/* @__PURE__ */ jsx(
|
|
851
|
+
DropdownMenuTrigger,
|
|
1045
852
|
{
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
853
|
+
render: /* @__PURE__ */ jsx(
|
|
854
|
+
Button,
|
|
855
|
+
{
|
|
856
|
+
"data-testid": "theme-switcher",
|
|
857
|
+
variant: "outline",
|
|
858
|
+
size: "icon",
|
|
859
|
+
"aria-label": labels.theme,
|
|
860
|
+
className: cn(
|
|
861
|
+
sizes.button,
|
|
862
|
+
shapeClass,
|
|
863
|
+
iconTriggerClassName,
|
|
864
|
+
className
|
|
865
|
+
)
|
|
866
|
+
}
|
|
1055
867
|
),
|
|
1056
868
|
children: /* @__PURE__ */ jsx(TriggerIcon, { className: sizes.icon })
|
|
1057
869
|
}
|
|
1058
|
-
)
|
|
870
|
+
),
|
|
1059
871
|
/* @__PURE__ */ jsx(
|
|
1060
872
|
DropdownMenuContent,
|
|
1061
873
|
{
|
|
@@ -1121,22 +933,27 @@ function LanguageSwitcher({
|
|
|
1121
933
|
const sizes = sizeClasses2[size];
|
|
1122
934
|
const shapeClass = shapeClasses2[shape];
|
|
1123
935
|
const accessibleName = labels.language ?? "Language";
|
|
1124
|
-
return /* @__PURE__ */ jsxs(DropdownMenu, {
|
|
1125
|
-
/* @__PURE__ */ jsx(
|
|
1126
|
-
|
|
936
|
+
return /* @__PURE__ */ jsxs(DropdownMenu, { children: [
|
|
937
|
+
/* @__PURE__ */ jsx(
|
|
938
|
+
DropdownMenuTrigger,
|
|
1127
939
|
{
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
940
|
+
render: /* @__PURE__ */ jsx(
|
|
941
|
+
Button,
|
|
942
|
+
{
|
|
943
|
+
variant: "outline",
|
|
944
|
+
size: "icon",
|
|
945
|
+
"aria-label": accessibleName,
|
|
946
|
+
className: cn(
|
|
947
|
+
sizes.button,
|
|
948
|
+
shapeClass,
|
|
949
|
+
iconTriggerClassName2,
|
|
950
|
+
className
|
|
951
|
+
)
|
|
952
|
+
}
|
|
1136
953
|
),
|
|
1137
954
|
children: /* @__PURE__ */ jsx(Languages, { className: sizes.icon })
|
|
1138
955
|
}
|
|
1139
|
-
)
|
|
956
|
+
),
|
|
1140
957
|
/* @__PURE__ */ jsx(
|
|
1141
958
|
DropdownMenuContent,
|
|
1142
959
|
{
|
|
@@ -1161,97 +978,6 @@ function LanguageSwitcher({
|
|
|
1161
978
|
)
|
|
1162
979
|
] });
|
|
1163
980
|
}
|
|
1164
|
-
function Slider({
|
|
1165
|
-
className,
|
|
1166
|
-
defaultValue,
|
|
1167
|
-
value,
|
|
1168
|
-
min = 0,
|
|
1169
|
-
max = 100,
|
|
1170
|
-
...props
|
|
1171
|
-
}) {
|
|
1172
|
-
const _values = React.useMemo(
|
|
1173
|
-
() => Array.isArray(value) ? value : Array.isArray(defaultValue) ? defaultValue : [min, max],
|
|
1174
|
-
[value, defaultValue, min, max]
|
|
1175
|
-
);
|
|
1176
|
-
return /* @__PURE__ */ jsxs(
|
|
1177
|
-
SliderPrimitive.Root,
|
|
1178
|
-
{
|
|
1179
|
-
"data-slot": "slider",
|
|
1180
|
-
defaultValue,
|
|
1181
|
-
value,
|
|
1182
|
-
min,
|
|
1183
|
-
max,
|
|
1184
|
-
className: cn(
|
|
1185
|
-
"relative flex w-full touch-none items-center select-none data-[disabled]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col",
|
|
1186
|
-
className
|
|
1187
|
-
),
|
|
1188
|
-
...props,
|
|
1189
|
-
children: [
|
|
1190
|
-
/* @__PURE__ */ jsx(
|
|
1191
|
-
SliderPrimitive.Track,
|
|
1192
|
-
{
|
|
1193
|
-
"data-slot": "slider-track",
|
|
1194
|
-
className: cn(
|
|
1195
|
-
"bg-muted relative grow overflow-hidden rounded-full data-[orientation=horizontal]:h-1.5 data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"
|
|
1196
|
-
),
|
|
1197
|
-
children: /* @__PURE__ */ jsx(
|
|
1198
|
-
SliderPrimitive.Range,
|
|
1199
|
-
{
|
|
1200
|
-
"data-slot": "slider-range",
|
|
1201
|
-
className: cn(
|
|
1202
|
-
"bg-primary absolute data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full"
|
|
1203
|
-
)
|
|
1204
|
-
}
|
|
1205
|
-
)
|
|
1206
|
-
}
|
|
1207
|
-
),
|
|
1208
|
-
Array.from({ length: _values.length }, (_, index) => /* @__PURE__ */ jsx(
|
|
1209
|
-
SliderPrimitive.Thumb,
|
|
1210
|
-
{
|
|
1211
|
-
"data-slot": "slider-thumb",
|
|
1212
|
-
className: "border-primary ring-ring/50 block size-4 shrink-0 rounded-full border bg-white shadow-sm transition-[color,box-shadow] hover:ring-4 focus-visible:ring-4 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50"
|
|
1213
|
-
},
|
|
1214
|
-
index
|
|
1215
|
-
))
|
|
1216
|
-
]
|
|
1217
|
-
}
|
|
1218
|
-
);
|
|
1219
|
-
}
|
|
1220
|
-
var toggleVariants = cva(
|
|
1221
|
-
"inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium hover:bg-muted hover:text-muted-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none transition-[color,box-shadow] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap",
|
|
1222
|
-
{
|
|
1223
|
-
variants: {
|
|
1224
|
-
variant: {
|
|
1225
|
-
default: "bg-transparent",
|
|
1226
|
-
outline: "border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground"
|
|
1227
|
-
},
|
|
1228
|
-
size: {
|
|
1229
|
-
default: "h-9 px-2 min-w-9",
|
|
1230
|
-
sm: "h-8 px-1.5 min-w-8",
|
|
1231
|
-
lg: "h-10 px-2.5 min-w-10"
|
|
1232
|
-
}
|
|
1233
|
-
},
|
|
1234
|
-
defaultVariants: {
|
|
1235
|
-
variant: "default",
|
|
1236
|
-
size: "default"
|
|
1237
|
-
}
|
|
1238
|
-
}
|
|
1239
|
-
);
|
|
1240
|
-
function Toggle({
|
|
1241
|
-
className,
|
|
1242
|
-
variant,
|
|
1243
|
-
size,
|
|
1244
|
-
...props
|
|
1245
|
-
}) {
|
|
1246
|
-
return /* @__PURE__ */ jsx(
|
|
1247
|
-
TogglePrimitive.Root,
|
|
1248
|
-
{
|
|
1249
|
-
"data-slot": "toggle",
|
|
1250
|
-
className: cn(toggleVariants({ variant, size, className })),
|
|
1251
|
-
...props
|
|
1252
|
-
}
|
|
1253
|
-
);
|
|
1254
|
-
}
|
|
1255
981
|
var DEFAULT_LABELS = {
|
|
1256
982
|
uploadAria: "Upload image",
|
|
1257
983
|
uploadHint: "Click to upload",
|
|
@@ -1784,203 +1510,6 @@ function AvatarEditor({
|
|
|
1784
1510
|
}
|
|
1785
1511
|
);
|
|
1786
1512
|
}
|
|
1787
|
-
function Dialog({
|
|
1788
|
-
...props
|
|
1789
|
-
}) {
|
|
1790
|
-
return /* @__PURE__ */ jsx(DialogPrimitive.Root, { "data-slot": "dialog", ...props });
|
|
1791
|
-
}
|
|
1792
|
-
function DialogPortal({
|
|
1793
|
-
...props
|
|
1794
|
-
}) {
|
|
1795
|
-
return /* @__PURE__ */ jsx(DialogPrimitive.Portal, { "data-slot": "dialog-portal", ...props });
|
|
1796
|
-
}
|
|
1797
|
-
function DialogClose({
|
|
1798
|
-
...props
|
|
1799
|
-
}) {
|
|
1800
|
-
return /* @__PURE__ */ jsx(DialogPrimitive.Close, { "data-slot": "dialog-close", ...props });
|
|
1801
|
-
}
|
|
1802
|
-
function DialogOverlay({
|
|
1803
|
-
className,
|
|
1804
|
-
...props
|
|
1805
|
-
}) {
|
|
1806
|
-
return /* @__PURE__ */ jsx(
|
|
1807
|
-
DialogPrimitive.Overlay,
|
|
1808
|
-
{
|
|
1809
|
-
"data-slot": "dialog-overlay",
|
|
1810
|
-
className: cn(
|
|
1811
|
-
"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",
|
|
1812
|
-
className
|
|
1813
|
-
),
|
|
1814
|
-
...props
|
|
1815
|
-
}
|
|
1816
|
-
);
|
|
1817
|
-
}
|
|
1818
|
-
function DialogContent({
|
|
1819
|
-
className,
|
|
1820
|
-
children,
|
|
1821
|
-
showCloseButton = true,
|
|
1822
|
-
...props
|
|
1823
|
-
}) {
|
|
1824
|
-
return /* @__PURE__ */ jsxs(DialogPortal, { "data-slot": "dialog-portal", children: [
|
|
1825
|
-
/* @__PURE__ */ jsx(DialogOverlay, {}),
|
|
1826
|
-
/* @__PURE__ */ jsxs(
|
|
1827
|
-
DialogPrimitive.Content,
|
|
1828
|
-
{
|
|
1829
|
-
"data-slot": "dialog-content",
|
|
1830
|
-
className: cn(
|
|
1831
|
-
"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 outline-none sm:max-w-lg",
|
|
1832
|
-
className
|
|
1833
|
-
),
|
|
1834
|
-
...props,
|
|
1835
|
-
children: [
|
|
1836
|
-
children,
|
|
1837
|
-
showCloseButton && /* @__PURE__ */ jsxs(
|
|
1838
|
-
DialogPrimitive.Close,
|
|
1839
|
-
{
|
|
1840
|
-
"data-slot": "dialog-close",
|
|
1841
|
-
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",
|
|
1842
|
-
children: [
|
|
1843
|
-
/* @__PURE__ */ jsx(XIcon, {}),
|
|
1844
|
-
/* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
|
|
1845
|
-
]
|
|
1846
|
-
}
|
|
1847
|
-
)
|
|
1848
|
-
]
|
|
1849
|
-
}
|
|
1850
|
-
)
|
|
1851
|
-
] });
|
|
1852
|
-
}
|
|
1853
|
-
function DialogHeader({ className, ...props }) {
|
|
1854
|
-
return /* @__PURE__ */ jsx(
|
|
1855
|
-
"div",
|
|
1856
|
-
{
|
|
1857
|
-
"data-slot": "dialog-header",
|
|
1858
|
-
className: cn("flex flex-col gap-2 text-center sm:text-left", className),
|
|
1859
|
-
...props
|
|
1860
|
-
}
|
|
1861
|
-
);
|
|
1862
|
-
}
|
|
1863
|
-
function DialogFooter({ className, ...props }) {
|
|
1864
|
-
return /* @__PURE__ */ jsx(
|
|
1865
|
-
"div",
|
|
1866
|
-
{
|
|
1867
|
-
"data-slot": "dialog-footer",
|
|
1868
|
-
className: cn(
|
|
1869
|
-
"flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",
|
|
1870
|
-
className
|
|
1871
|
-
),
|
|
1872
|
-
...props
|
|
1873
|
-
}
|
|
1874
|
-
);
|
|
1875
|
-
}
|
|
1876
|
-
function DialogTitle({
|
|
1877
|
-
className,
|
|
1878
|
-
...props
|
|
1879
|
-
}) {
|
|
1880
|
-
return /* @__PURE__ */ jsx(
|
|
1881
|
-
DialogPrimitive.Title,
|
|
1882
|
-
{
|
|
1883
|
-
"data-slot": "dialog-title",
|
|
1884
|
-
className: cn("text-lg leading-none font-semibold", className),
|
|
1885
|
-
...props
|
|
1886
|
-
}
|
|
1887
|
-
);
|
|
1888
|
-
}
|
|
1889
|
-
function Drawer({
|
|
1890
|
-
...props
|
|
1891
|
-
}) {
|
|
1892
|
-
return /* @__PURE__ */ jsx(Drawer$1.Root, { "data-slot": "drawer", ...props });
|
|
1893
|
-
}
|
|
1894
|
-
function DrawerPortal({
|
|
1895
|
-
...props
|
|
1896
|
-
}) {
|
|
1897
|
-
return /* @__PURE__ */ jsx(Drawer$1.Portal, { "data-slot": "drawer-portal", ...props });
|
|
1898
|
-
}
|
|
1899
|
-
function DrawerClose({
|
|
1900
|
-
...props
|
|
1901
|
-
}) {
|
|
1902
|
-
return /* @__PURE__ */ jsx(Drawer$1.Close, { "data-slot": "drawer-close", ...props });
|
|
1903
|
-
}
|
|
1904
|
-
function DrawerOverlay({
|
|
1905
|
-
className,
|
|
1906
|
-
...props
|
|
1907
|
-
}) {
|
|
1908
|
-
return /* @__PURE__ */ jsx(
|
|
1909
|
-
Drawer$1.Overlay,
|
|
1910
|
-
{
|
|
1911
|
-
"data-slot": "drawer-overlay",
|
|
1912
|
-
className: cn(
|
|
1913
|
-
"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",
|
|
1914
|
-
className
|
|
1915
|
-
),
|
|
1916
|
-
...props
|
|
1917
|
-
}
|
|
1918
|
-
);
|
|
1919
|
-
}
|
|
1920
|
-
function DrawerContent({
|
|
1921
|
-
className,
|
|
1922
|
-
children,
|
|
1923
|
-
...props
|
|
1924
|
-
}) {
|
|
1925
|
-
return /* @__PURE__ */ jsxs(DrawerPortal, { "data-slot": "drawer-portal", children: [
|
|
1926
|
-
/* @__PURE__ */ jsx(DrawerOverlay, {}),
|
|
1927
|
-
/* @__PURE__ */ jsxs(
|
|
1928
|
-
Drawer$1.Content,
|
|
1929
|
-
{
|
|
1930
|
-
"data-slot": "drawer-content",
|
|
1931
|
-
className: cn(
|
|
1932
|
-
"group/drawer-content bg-background fixed z-50 flex h-auto flex-col",
|
|
1933
|
-
"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",
|
|
1934
|
-
"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",
|
|
1935
|
-
"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",
|
|
1936
|
-
"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",
|
|
1937
|
-
className
|
|
1938
|
-
),
|
|
1939
|
-
...props,
|
|
1940
|
-
children: [
|
|
1941
|
-
/* @__PURE__ */ jsx("div", { 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" }),
|
|
1942
|
-
children
|
|
1943
|
-
]
|
|
1944
|
-
}
|
|
1945
|
-
)
|
|
1946
|
-
] });
|
|
1947
|
-
}
|
|
1948
|
-
function DrawerHeader({ className, ...props }) {
|
|
1949
|
-
return /* @__PURE__ */ jsx(
|
|
1950
|
-
"div",
|
|
1951
|
-
{
|
|
1952
|
-
"data-slot": "drawer-header",
|
|
1953
|
-
className: cn(
|
|
1954
|
-
"flex flex-col gap-0.5 p-4 group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center group-data-[vaul-drawer-direction=top]/drawer-content:text-center md:gap-1.5 md:text-left",
|
|
1955
|
-
className
|
|
1956
|
-
),
|
|
1957
|
-
...props
|
|
1958
|
-
}
|
|
1959
|
-
);
|
|
1960
|
-
}
|
|
1961
|
-
function DrawerFooter({ className, ...props }) {
|
|
1962
|
-
return /* @__PURE__ */ jsx(
|
|
1963
|
-
"div",
|
|
1964
|
-
{
|
|
1965
|
-
"data-slot": "drawer-footer",
|
|
1966
|
-
className: cn("mt-auto flex flex-col gap-2 p-4", className),
|
|
1967
|
-
...props
|
|
1968
|
-
}
|
|
1969
|
-
);
|
|
1970
|
-
}
|
|
1971
|
-
function DrawerTitle({
|
|
1972
|
-
className,
|
|
1973
|
-
...props
|
|
1974
|
-
}) {
|
|
1975
|
-
return /* @__PURE__ */ jsx(
|
|
1976
|
-
Drawer$1.Title,
|
|
1977
|
-
{
|
|
1978
|
-
"data-slot": "drawer-title",
|
|
1979
|
-
className: cn("text-foreground font-semibold", className),
|
|
1980
|
-
...props
|
|
1981
|
-
}
|
|
1982
|
-
);
|
|
1983
|
-
}
|
|
1984
1513
|
function useMediaQuery(query) {
|
|
1985
1514
|
const [matches, setMatches] = useState(false);
|
|
1986
1515
|
useEffect(() => {
|
|
@@ -2561,50 +2090,47 @@ function FileUploadMenu({
|
|
|
2561
2090
|
const activeCount = visible.filter(
|
|
2562
2091
|
(job) => isActiveStatus(job.status)
|
|
2563
2092
|
).length;
|
|
2564
|
-
return /* @__PURE__ */ jsxs(
|
|
2565
|
-
|
|
2566
|
-
|
|
2567
|
-
|
|
2568
|
-
|
|
2569
|
-
onOpenChange: setResolvedOpen,
|
|
2570
|
-
children: [
|
|
2571
|
-
/* @__PURE__ */ jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(
|
|
2093
|
+
return /* @__PURE__ */ jsxs(DropdownMenu, { open: resolvedOpen, onOpenChange: setResolvedOpen, children: [
|
|
2094
|
+
/* @__PURE__ */ jsxs(
|
|
2095
|
+
DropdownMenuTrigger,
|
|
2096
|
+
{
|
|
2097
|
+
render: /* @__PURE__ */ jsx(
|
|
2572
2098
|
Button,
|
|
2573
2099
|
{
|
|
2574
2100
|
type: "button",
|
|
2575
2101
|
variant: "ghost",
|
|
2576
2102
|
size: "icon",
|
|
2577
2103
|
className: cn("relative size-9", className),
|
|
2578
|
-
"aria-label": labels.title
|
|
2579
|
-
children: [
|
|
2580
|
-
/* @__PURE__ */ jsx(Upload, { className: "size-4" }),
|
|
2581
|
-
activeCount > 0 ? /* @__PURE__ */ jsx("span", { className: "bg-destructive text-destructive-foreground absolute -top-0.5 -right-0.5 flex size-4 items-center justify-center rounded-full text-[10px] leading-none font-medium tabular-nums", children: formatActiveBadge(activeCount) }) : null
|
|
2582
|
-
]
|
|
2583
|
-
}
|
|
2584
|
-
) }),
|
|
2585
|
-
/* @__PURE__ */ jsxs(
|
|
2586
|
-
DropdownMenuContent,
|
|
2587
|
-
{
|
|
2588
|
-
align,
|
|
2589
|
-
className: "w-80 min-w-0 max-w-[calc(100vw-2rem)] overflow-x-hidden p-0",
|
|
2590
|
-
children: [
|
|
2591
|
-
/* @__PURE__ */ jsx("div", { className: "flex items-center justify-between border-b px-4 py-3", children: /* @__PURE__ */ jsx("h4", { className: "font-semibold", children: labels.title }) }),
|
|
2592
|
-
/* @__PURE__ */ jsx("div", { className: "max-h-80 min-w-0 overflow-x-hidden overflow-y-auto p-3", children: /* @__PURE__ */ jsx(
|
|
2593
|
-
FileUploadTray,
|
|
2594
|
-
{
|
|
2595
|
-
jobs: visible,
|
|
2596
|
-
labels,
|
|
2597
|
-
onPause,
|
|
2598
|
-
onResume,
|
|
2599
|
-
onCancel
|
|
2600
|
-
}
|
|
2601
|
-
) })
|
|
2602
|
-
]
|
|
2104
|
+
"aria-label": labels.title
|
|
2603
2105
|
}
|
|
2604
|
-
)
|
|
2605
|
-
|
|
2606
|
-
|
|
2607
|
-
|
|
2106
|
+
),
|
|
2107
|
+
children: [
|
|
2108
|
+
/* @__PURE__ */ jsx(Upload, { className: "size-4" }),
|
|
2109
|
+
activeCount > 0 ? /* @__PURE__ */ jsx("span", { className: "bg-destructive text-destructive-foreground absolute -top-0.5 -right-0.5 flex size-4 items-center justify-center rounded-full text-[10px] leading-none font-medium tabular-nums", children: formatActiveBadge(activeCount) }) : null
|
|
2110
|
+
]
|
|
2111
|
+
}
|
|
2112
|
+
),
|
|
2113
|
+
/* @__PURE__ */ jsxs(
|
|
2114
|
+
DropdownMenuContent,
|
|
2115
|
+
{
|
|
2116
|
+
align,
|
|
2117
|
+
className: "w-80 min-w-0 max-w-[calc(100vw-2rem)] overflow-x-hidden p-0",
|
|
2118
|
+
children: [
|
|
2119
|
+
/* @__PURE__ */ jsx("div", { className: "flex items-center justify-between border-b px-4 py-3", children: /* @__PURE__ */ jsx("h4", { className: "font-semibold", children: labels.title }) }),
|
|
2120
|
+
/* @__PURE__ */ jsx("div", { className: "max-h-80 min-w-0 overflow-x-hidden overflow-y-auto p-3", children: /* @__PURE__ */ jsx(
|
|
2121
|
+
FileUploadTray,
|
|
2122
|
+
{
|
|
2123
|
+
jobs: visible,
|
|
2124
|
+
labels,
|
|
2125
|
+
onPause,
|
|
2126
|
+
onResume,
|
|
2127
|
+
onCancel
|
|
2128
|
+
}
|
|
2129
|
+
) })
|
|
2130
|
+
]
|
|
2131
|
+
}
|
|
2132
|
+
)
|
|
2133
|
+
] });
|
|
2608
2134
|
}
|
|
2609
2135
|
|
|
2610
2136
|
// src/components/upload/createMultipartUploadController.ts
|
|
@@ -3942,6 +3468,6 @@ function MatchReview({
|
|
|
3942
3468
|
);
|
|
3943
3469
|
}
|
|
3944
3470
|
|
|
3945
|
-
export { AuditTimeline, AvatarEditor, AvatarEditorDialog, COOKIE_CONSENT_MAX_AGE, COOKIE_CONSENT_NAME, COOKIE_CONSENT_VALUES, ConfirmDestructiveDialog, CookieConsentBanner, CostBreakdownCard, DEFAULT_AUDIT_TIMELINE_LABELS, DEFAULT_COOKIE_CONSENT_BANNER_LABELS, DEFAULT_EDITABLE_SECTION_LABELS, DEFAULT_ENTITY_GRAPH_LABELS, DEFAULT_FILE_DROPZONE_LABELS, DEFAULT_FILE_UPLOAD_LABELS, DEFAULT_FILE_UPLOAD_TRAY_LABELS, DEFAULT_LEGAL_ACCEPT_CHECKBOX_LABELS, DEFAULT_LEGAL_ACCEPT_DIALOG_LABELS, DEFAULT_MATCH_REVIEW_LABELS, DEFAULT_NOTIFICATION_BELL_LABELS, DEFAULT_RISK_BADGE_LABELS, DataList, DataListItem, DimensionBreakdownTable, EditableSection, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyState, EmptyTitle, EntityGraph, ErrorState, FieldMessage, FileDropzone, FileUploadMenu, FileUploadTray, LanguageContext, LanguageSwitcher, LegalAcceptCheckbox, LegalAcceptDialog, LegalMarkdown, LoadingState, MatchReview, MetricChartCard, MetricEmptyState, MetricSkeleton, NotificationBell, RiskBadge, SafeImage, SparklineStat, StatHighlightCard, THEME_INIT_SCRIPT, THEME_INIT_SCRIPT_ID, THEME_STORAGE_KEY, TIME_RANGE_OPTIONS, ThemeSwitcher, TimeRangePicker, avatarFallbackStyle, cn, cookieConsentAllowsReplay, cookieDomainFromHostname, createMultipartUploadController, defaultLanguages, fileMatchesAccept, getAvatarColors, getInitials, isCookieConsentValue, isEmbeddedWindow, matchClaimIsUnverified, parseCookieConsent, partRanges, progressFromBytes, readCookieConsent, serializeCookieConsent, sourceUrlIsHttps, useEditableSection, useLanguageContext, useMediaQuery2 as useMediaQuery, writeCookieConsent };
|
|
3471
|
+
export { AuditTimeline, AvatarEditor, AvatarEditorDialog, COOKIE_CONSENT_MAX_AGE, COOKIE_CONSENT_NAME, COOKIE_CONSENT_VALUES, ConfirmDestructiveDialog, CookieConsentBanner, CostBreakdownCard, DEFAULT_AUDIT_TIMELINE_LABELS, DEFAULT_COOKIE_CONSENT_BANNER_LABELS, DEFAULT_EDITABLE_SECTION_LABELS, DEFAULT_ENTITY_GRAPH_LABELS, DEFAULT_FILE_DROPZONE_LABELS, DEFAULT_FILE_UPLOAD_LABELS, DEFAULT_FILE_UPLOAD_TRAY_LABELS, DEFAULT_LEGAL_ACCEPT_CHECKBOX_LABELS, DEFAULT_LEGAL_ACCEPT_DIALOG_LABELS, DEFAULT_MATCH_REVIEW_LABELS, DEFAULT_NOTIFICATION_BELL_LABELS, DEFAULT_RISK_BADGE_LABELS, DataList, DataListItem, DimensionBreakdownTable, EditableSection, Empty2 as Empty, EmptyContent2 as EmptyContent, EmptyDescription2 as EmptyDescription, EmptyHeader2 as EmptyHeader, EmptyMedia2 as EmptyMedia, EmptyState, EmptyTitle2 as EmptyTitle, EntityGraph, ErrorState, Field, FieldMessage, FileDropzone, FileUploadMenu, FileUploadTray, LanguageContext, LanguageSwitcher, LegalAcceptCheckbox, LegalAcceptDialog, LegalMarkdown, ListSkeleton, LoadingState, MatchReview, MetricChartCard, MetricEmptyState, MetricSkeleton, NotificationBell, PageTitle, RiskBadge, SafeImage, SparklineStat, StatHighlightCard, THEME_INIT_SCRIPT, THEME_INIT_SCRIPT_ID, THEME_STORAGE_KEY, TIME_RANGE_OPTIONS, TableSkeleton, ThemeSwitcher, TimeRangePicker, avatarFallbackStyle, cn, cookieConsentAllowsReplay, cookieDomainFromHostname, createMultipartUploadController, defaultLanguages, fileMatchesAccept, getAvatarColors, getInitials, isCookieConsentValue, isEmbeddedWindow, matchClaimIsUnverified, parseCookieConsent, partRanges, progressFromBytes, readCookieConsent, serializeCookieConsent, sourceUrlIsHttps, useEditableSection, useLanguageContext, useMediaQuery2 as useMediaQuery, writeCookieConsent };
|
|
3946
3472
|
//# sourceMappingURL=index.js.map
|
|
3947
3473
|
//# sourceMappingURL=index.js.map
|