@alexgorbatchev/shadcn 0.0.35 → 0.0.37
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/README.md +2 -0
- package/THIRD_PARTY_NOTICES.md +1 -1
- package/dist/chunk-c7tnf6h7.js +397 -0
- package/dist/{chunk-c6g2rbhv.js → chunk-f71469fs.js} +480 -840
- package/dist/{chunk-h5kjmt32.js → chunk-kmvvw1vr.js} +17 -1
- package/dist/components/data-grid/DataGrid.d.ts +53 -1
- package/dist/components/data-grid/DataGridColumnOptions.d.ts +4 -10
- package/dist/components/data-grid/DataGridFilterSummary.d.ts +9 -0
- package/dist/components/data-grid/DataGridFilters.d.ts +10 -0
- package/dist/components/data-grid/describeDataGridFilter.d.ts +9 -0
- package/dist/components/data-grid/getDataGridFilterLabel.d.ts +5 -0
- package/dist/components/data-grid/getDataGridFilterOptions.d.ts +6 -0
- package/dist/components/data-grid/index.d.ts +3 -1
- package/dist/components/data-grid/index.js +371 -1
- package/dist/components/data-grid/readDataGridOptionValues.d.ts +3 -0
- package/dist/components/data-grid/readDataGridRange.d.ts +6 -0
- package/dist/components/json-render/index.js +2 -1
- package/dist/components/virtual-data-grid/index.js +1 -1
- package/dist/index.js +28 -26
- package/llms/components/data-display/DataGridFilterSummary.md +35 -0
- package/llms/components/data-display/DataGridFilters.md +51 -0
- package/llms/setup.md +2 -0
- package/llms.txt +2 -0
- package/package.json +1 -1
|
@@ -67,11 +67,20 @@ import {
|
|
|
67
67
|
CardFooter2
|
|
68
68
|
} from "./chunk-bygq5yqf.js";
|
|
69
69
|
import {
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
70
|
+
Combobox2,
|
|
71
|
+
ComboboxValue2,
|
|
72
|
+
ComboboxContent2,
|
|
73
|
+
ComboboxList2,
|
|
74
|
+
ComboboxItem2,
|
|
75
|
+
ComboboxGroup2,
|
|
76
|
+
ComboboxCollection2,
|
|
77
|
+
ComboboxEmpty2,
|
|
78
|
+
ComboboxChips2,
|
|
79
|
+
ComboboxChip2,
|
|
80
|
+
ComboboxChipsInput2,
|
|
81
|
+
useComboboxAnchor2,
|
|
82
|
+
ScrollArea2
|
|
83
|
+
} from "./chunk-c7tnf6h7.js";
|
|
75
84
|
import {
|
|
76
85
|
Badge2
|
|
77
86
|
} from "./chunk-wjx6zf94.js";
|
|
@@ -204,255 +213,22 @@ function AccordionContent2({ density, className, children, ...props }) {
|
|
|
204
213
|
})
|
|
205
214
|
});
|
|
206
215
|
}
|
|
207
|
-
// src/components/Combobox.tsx
|
|
208
|
-
import { useDirection } from "@base-ui/react/direction-provider";
|
|
209
|
-
import { Combobox as ComboboxPrimitive } from "@base-ui/react/combobox";
|
|
210
|
-
import { ChevronDownIcon as ChevronDownIcon2, XIcon, CheckIcon } from "lucide-react";
|
|
211
|
-
import { jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
212
|
-
var Combobox2 = ComboboxPrimitive.Root;
|
|
213
|
-
function ComboboxValue2({ ...props }) {
|
|
214
|
-
return /* @__PURE__ */ jsx3(ComboboxPrimitive.Value, {
|
|
215
|
-
...props
|
|
216
|
-
});
|
|
217
|
-
}
|
|
218
|
-
function ComboboxTrigger2({ density, className, children, ...props }) {
|
|
219
|
-
return /* @__PURE__ */ jsxs2(ComboboxPrimitive.Trigger, {
|
|
220
|
-
"data-density": density,
|
|
221
|
-
"data-slot": "combobox-trigger",
|
|
222
|
-
className: (state) => cn2("[&_svg:not([class*='size-'])]:size-4", typeof className === "function" ? className(state) : className),
|
|
223
|
-
...props,
|
|
224
|
-
children: [
|
|
225
|
-
children,
|
|
226
|
-
/* @__PURE__ */ jsx3(ChevronDownIcon2, {
|
|
227
|
-
className: "pointer-events-none size-4 text-muted-foreground"
|
|
228
|
-
})
|
|
229
|
-
]
|
|
230
|
-
});
|
|
231
|
-
}
|
|
232
|
-
function ComboboxClear({ density, className, ...props }) {
|
|
233
|
-
return /* @__PURE__ */ jsx3(ComboboxPrimitive.Clear, {
|
|
234
|
-
"data-density": density,
|
|
235
|
-
"data-slot": "combobox-clear",
|
|
236
|
-
render: /* @__PURE__ */ jsx3(InputGroupButton2, {
|
|
237
|
-
variant: "ghost",
|
|
238
|
-
size: "icon-xs"
|
|
239
|
-
}),
|
|
240
|
-
className: (state) => cn2(typeof className === "function" ? className(state) : className),
|
|
241
|
-
...props,
|
|
242
|
-
children: /* @__PURE__ */ jsx3(XIcon, {
|
|
243
|
-
className: "pointer-events-none"
|
|
244
|
-
})
|
|
245
|
-
});
|
|
246
|
-
}
|
|
247
|
-
function ComboboxInput2({
|
|
248
|
-
density,
|
|
249
|
-
className,
|
|
250
|
-
children,
|
|
251
|
-
disabled = false,
|
|
252
|
-
showTrigger = true,
|
|
253
|
-
showClear = false,
|
|
254
|
-
frameClassName,
|
|
255
|
-
triggerLabel = "Open popup",
|
|
256
|
-
clearLabel = "Clear selection",
|
|
257
|
-
...props
|
|
258
|
-
}) {
|
|
259
|
-
return /* @__PURE__ */ jsxs2(InputGroup2, {
|
|
260
|
-
density,
|
|
261
|
-
className: cn2("w-auto", frameClassName),
|
|
262
|
-
children: [
|
|
263
|
-
/* @__PURE__ */ jsx3(ComboboxPrimitive.Input, {
|
|
264
|
-
disabled,
|
|
265
|
-
className,
|
|
266
|
-
render: /* @__PURE__ */ jsx3(InputGroupInput2, {}),
|
|
267
|
-
...props
|
|
268
|
-
}),
|
|
269
|
-
/* @__PURE__ */ jsxs2(InputGroupAddon2, {
|
|
270
|
-
align: "inline-end",
|
|
271
|
-
children: [
|
|
272
|
-
showTrigger && /* @__PURE__ */ jsx3(InputGroupButton2, {
|
|
273
|
-
size: "icon-xs",
|
|
274
|
-
variant: "ghost",
|
|
275
|
-
render: /* @__PURE__ */ jsx3(ComboboxTrigger2, {}),
|
|
276
|
-
"aria-label": triggerLabel,
|
|
277
|
-
"data-density": density,
|
|
278
|
-
"data-slot": "input-group-button",
|
|
279
|
-
className: "group-has-data-[slot=combobox-clear]/input-group:hidden data-pressed:bg-transparent",
|
|
280
|
-
disabled
|
|
281
|
-
}),
|
|
282
|
-
showClear && /* @__PURE__ */ jsx3(ComboboxClear, {
|
|
283
|
-
disabled,
|
|
284
|
-
"aria-label": clearLabel
|
|
285
|
-
})
|
|
286
|
-
]
|
|
287
|
-
}),
|
|
288
|
-
children
|
|
289
|
-
]
|
|
290
|
-
});
|
|
291
|
-
}
|
|
292
|
-
function ComboboxContent2({
|
|
293
|
-
density,
|
|
294
|
-
className,
|
|
295
|
-
side = "bottom",
|
|
296
|
-
sideOffset = 6,
|
|
297
|
-
align = "start",
|
|
298
|
-
alignOffset = 0,
|
|
299
|
-
anchor,
|
|
300
|
-
...props
|
|
301
|
-
}) {
|
|
302
|
-
const resolvedDensity = useDensity(density);
|
|
303
|
-
const direction = useDirection();
|
|
304
|
-
const container = usePortalContainer2();
|
|
305
|
-
const portal = usePortalNode();
|
|
306
|
-
return /* @__PURE__ */ jsx3(ComboboxPrimitive.Portal, {
|
|
307
|
-
container,
|
|
308
|
-
ref: portal.ref,
|
|
309
|
-
children: /* @__PURE__ */ jsx3(PortalProvider2, {
|
|
310
|
-
container: portal.node,
|
|
311
|
-
children: /* @__PURE__ */ jsx3(ComboboxPrimitive.Positioner, {
|
|
312
|
-
side,
|
|
313
|
-
sideOffset,
|
|
314
|
-
align,
|
|
315
|
-
alignOffset,
|
|
316
|
-
anchor,
|
|
317
|
-
className: "isolate ",
|
|
318
|
-
children: /* @__PURE__ */ jsx3(ComboboxPrimitive.Popup, {
|
|
319
|
-
dir: direction,
|
|
320
|
-
"data-density": resolvedDensity,
|
|
321
|
-
"data-slot": "combobox-content",
|
|
322
|
-
"data-chips": !!anchor,
|
|
323
|
-
className: (state) => cn2("group/combobox-content relative max-h-(--available-height) w-(--anchor-width) max-w-(--available-width) min-w-[calc(var(--anchor-width)+--spacing(7))] origin-(--transform-origin) overflow-hidden rounded-md bg-popover text-popover-foreground border border-frame-edge shadow-frame duration-120 data-[chips=true]:min-w-(--anchor-width) *:data-[slot=input-group]:m-1 *:data-[slot=input-group]:mb-0 *:data-[slot=input-group]:h-control *:data-[slot=input-group]:border-input/30 *:data-[slot=input-group]:bg-input/30 *:data-[slot=input-group]:shadow-none data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0 motion-reduce:data-open:animate-none motion-reduce:data-closed:animate-none", typeof className === "function" ? className(state) : className),
|
|
324
|
-
...props
|
|
325
|
-
})
|
|
326
|
-
})
|
|
327
|
-
})
|
|
328
|
-
});
|
|
329
|
-
}
|
|
330
|
-
function ComboboxList2({ density, className, ...props }) {
|
|
331
|
-
return /* @__PURE__ */ jsx3(ComboboxPrimitive.List, {
|
|
332
|
-
"data-density": density,
|
|
333
|
-
"data-slot": "combobox-list",
|
|
334
|
-
className: (state) => cn2("no-scrollbar max-h-[min(calc(--spacing(72)---spacing(9)),calc(var(--available-height)---spacing(9)))] scroll-py-1 overflow-y-auto overscroll-contain p-1 data-empty:p-0", typeof className === "function" ? className(state) : className),
|
|
335
|
-
...props
|
|
336
|
-
});
|
|
337
|
-
}
|
|
338
|
-
function ComboboxItem2({ density, className, children, ...props }) {
|
|
339
|
-
return /* @__PURE__ */ jsxs2(ComboboxPrimitive.Item, {
|
|
340
|
-
"data-density": density,
|
|
341
|
-
"data-slot": "combobox-item",
|
|
342
|
-
className: (state) => cn2("relative flex w-full cursor-default items-center gap-2 rounded-md py-1 pe-8 ps-1.5 text-sm outline-hidden select-none data-highlighted:bg-accent data-highlighted:text-accent-foreground not-data-[variant=destructive]:data-highlighted:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", typeof className === "function" ? className(state) : className),
|
|
343
|
-
...props,
|
|
344
|
-
children: [
|
|
345
|
-
children,
|
|
346
|
-
/* @__PURE__ */ jsx3(ComboboxPrimitive.ItemIndicator, {
|
|
347
|
-
render: /* @__PURE__ */ jsx3("span", {
|
|
348
|
-
className: "pointer-events-none absolute end-2 flex size-4 items-center justify-center"
|
|
349
|
-
}),
|
|
350
|
-
children: /* @__PURE__ */ jsx3(CheckIcon, {
|
|
351
|
-
className: "pointer-events-none"
|
|
352
|
-
})
|
|
353
|
-
})
|
|
354
|
-
]
|
|
355
|
-
});
|
|
356
|
-
}
|
|
357
|
-
function ComboboxGroup2({ density, className, ...props }) {
|
|
358
|
-
return /* @__PURE__ */ jsx3(ComboboxPrimitive.Group, {
|
|
359
|
-
"data-density": density,
|
|
360
|
-
"data-slot": "combobox-group",
|
|
361
|
-
className: (state) => cn2(typeof className === "function" ? className(state) : className),
|
|
362
|
-
...props
|
|
363
|
-
});
|
|
364
|
-
}
|
|
365
|
-
function ComboboxLabel2({ density, className, ...props }) {
|
|
366
|
-
return /* @__PURE__ */ jsx3(ComboboxPrimitive.GroupLabel, {
|
|
367
|
-
"data-density": density,
|
|
368
|
-
"data-slot": "combobox-label",
|
|
369
|
-
className: (state) => cn2("px-2 py-1.5 text-xs text-muted-foreground", typeof className === "function" ? className(state) : className),
|
|
370
|
-
...props
|
|
371
|
-
});
|
|
372
|
-
}
|
|
373
|
-
function ComboboxCollection2({ ...props }) {
|
|
374
|
-
return /* @__PURE__ */ jsx3(ComboboxPrimitive.Collection, {
|
|
375
|
-
...props
|
|
376
|
-
});
|
|
377
|
-
}
|
|
378
|
-
function ComboboxEmpty2({ density, className, ...props }) {
|
|
379
|
-
return /* @__PURE__ */ jsx3(ComboboxPrimitive.Empty, {
|
|
380
|
-
"data-density": density,
|
|
381
|
-
"data-slot": "combobox-empty",
|
|
382
|
-
className: (state) => cn2("flex w-full justify-center py-2 empty:p-0 text-center text-sm text-muted-foreground", typeof className === "function" ? className(state) : className),
|
|
383
|
-
...props
|
|
384
|
-
});
|
|
385
|
-
}
|
|
386
|
-
function ComboboxSeparator2({ density, className, ...props }) {
|
|
387
|
-
return /* @__PURE__ */ jsx3(ComboboxPrimitive.Separator, {
|
|
388
|
-
"data-density": density,
|
|
389
|
-
"data-slot": "combobox-separator",
|
|
390
|
-
className: (state) => cn2("-mx-1 my-1 h-px bg-border", typeof className === "function" ? className(state) : className),
|
|
391
|
-
...props
|
|
392
|
-
});
|
|
393
|
-
}
|
|
394
|
-
function ComboboxChips2({ density, className, ...props }) {
|
|
395
|
-
return /* @__PURE__ */ jsx3(ComboboxPrimitive.Chips, {
|
|
396
|
-
"data-density": density,
|
|
397
|
-
"data-slot": "combobox-chips",
|
|
398
|
-
className: (state) => cn2("flex min-h-control flex-wrap items-center gap-1 rounded-sm border border-input bg-transparent bg-clip-padding px-control-x py-px text-sm transition-colors focus-within:border-ring focus-within:ring-1 focus-within:ring-ring has-aria-invalid:border-destructive has-aria-invalid:ring-3 has-aria-invalid:ring-destructive has-data-[slot=combobox-chip]:px-1", typeof className === "function" ? className(state) : className),
|
|
399
|
-
...props
|
|
400
|
-
});
|
|
401
|
-
}
|
|
402
|
-
function ComboboxChip2({
|
|
403
|
-
density,
|
|
404
|
-
className,
|
|
405
|
-
children,
|
|
406
|
-
showRemove = true,
|
|
407
|
-
removeLabel = "Remove item",
|
|
408
|
-
...props
|
|
409
|
-
}) {
|
|
410
|
-
return /* @__PURE__ */ jsxs2(ComboboxPrimitive.Chip, {
|
|
411
|
-
"data-density": density,
|
|
412
|
-
"data-slot": "combobox-chip",
|
|
413
|
-
className: (state) => cn2("flex h-tag w-fit items-center justify-center gap-1 rounded-sm bg-muted px-1.5 text-xs font-medium whitespace-nowrap text-foreground has-disabled:pointer-events-none has-disabled:cursor-not-allowed has-disabled:opacity-50 has-data-[slot=combobox-chip-remove]:pe-0", typeof className === "function" ? className(state) : className),
|
|
414
|
-
...props,
|
|
415
|
-
children: [
|
|
416
|
-
children,
|
|
417
|
-
showRemove && /* @__PURE__ */ jsx3(ComboboxPrimitive.ChipRemove, {
|
|
418
|
-
render: /* @__PURE__ */ jsx3(Button2, {
|
|
419
|
-
variant: "ghost",
|
|
420
|
-
size: "icon-xs"
|
|
421
|
-
}),
|
|
422
|
-
className: "size-tag -ms-1 opacity-50 hover:opacity-100",
|
|
423
|
-
"data-slot": "combobox-chip-remove",
|
|
424
|
-
"aria-label": removeLabel,
|
|
425
|
-
children: /* @__PURE__ */ jsx3(XIcon, {
|
|
426
|
-
className: "pointer-events-none"
|
|
427
|
-
})
|
|
428
|
-
})
|
|
429
|
-
]
|
|
430
|
-
});
|
|
431
|
-
}
|
|
432
|
-
function ComboboxChipsInput2({ density, className, ...props }) {
|
|
433
|
-
return /* @__PURE__ */ jsx3(ComboboxPrimitive.Input, {
|
|
434
|
-
"data-density": density,
|
|
435
|
-
"data-slot": "combobox-chip-input",
|
|
436
|
-
className: (state) => cn2("h-tag min-w-16 flex-1 py-0 text-sm leading-none outline-none", typeof className === "function" ? className(state) : className),
|
|
437
|
-
...props
|
|
438
|
-
});
|
|
439
|
-
}
|
|
440
216
|
// src/components/EmptyState.tsx
|
|
441
|
-
import { jsx as
|
|
217
|
+
import { jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
442
218
|
function EmptyState3({ title, description, children }) {
|
|
443
|
-
return /* @__PURE__ */
|
|
219
|
+
return /* @__PURE__ */ jsxs2(Empty2, {
|
|
444
220
|
children: [
|
|
445
|
-
/* @__PURE__ */
|
|
221
|
+
/* @__PURE__ */ jsxs2(EmptyHeader2, {
|
|
446
222
|
children: [
|
|
447
|
-
/* @__PURE__ */
|
|
223
|
+
/* @__PURE__ */ jsx3(EmptyTitle2, {
|
|
448
224
|
children: title
|
|
449
225
|
}),
|
|
450
|
-
/* @__PURE__ */
|
|
226
|
+
/* @__PURE__ */ jsx3(EmptyDescription2, {
|
|
451
227
|
children: description
|
|
452
228
|
})
|
|
453
229
|
]
|
|
454
230
|
}),
|
|
455
|
-
children && /* @__PURE__ */
|
|
231
|
+
children && /* @__PURE__ */ jsx3(EmptyContent2, {
|
|
456
232
|
children
|
|
457
233
|
})
|
|
458
234
|
]
|
|
@@ -460,31 +236,31 @@ function EmptyState3({ title, description, children }) {
|
|
|
460
236
|
}
|
|
461
237
|
// src/components/PageMessage.tsx
|
|
462
238
|
import { useId } from "react";
|
|
463
|
-
import { jsx as
|
|
239
|
+
import { jsx as jsx4, jsxs as jsxs3 } from "react/jsx-runtime";
|
|
464
240
|
function PageMessage2({ title, description, children }) {
|
|
465
241
|
const titleId = useId();
|
|
466
242
|
const descriptionId = useId();
|
|
467
|
-
return /* @__PURE__ */
|
|
243
|
+
return /* @__PURE__ */ jsx4("main", {
|
|
468
244
|
"aria-labelledby": titleId,
|
|
469
245
|
"aria-describedby": description == null ? undefined : descriptionId,
|
|
470
246
|
className: "grid min-h-dvh w-full place-items-center bg-background text-foreground",
|
|
471
|
-
children: /* @__PURE__ */
|
|
247
|
+
children: /* @__PURE__ */ jsxs3(Empty2, {
|
|
472
248
|
children: [
|
|
473
|
-
/* @__PURE__ */
|
|
249
|
+
/* @__PURE__ */ jsxs3(EmptyHeader2, {
|
|
474
250
|
children: [
|
|
475
|
-
/* @__PURE__ */
|
|
476
|
-
children: /* @__PURE__ */
|
|
251
|
+
/* @__PURE__ */ jsx4(EmptyTitle2, {
|
|
252
|
+
children: /* @__PURE__ */ jsx4("h1", {
|
|
477
253
|
id: titleId,
|
|
478
254
|
children: title
|
|
479
255
|
})
|
|
480
256
|
}),
|
|
481
|
-
description != null && /* @__PURE__ */
|
|
257
|
+
description != null && /* @__PURE__ */ jsx4(EmptyDescription2, {
|
|
482
258
|
id: descriptionId,
|
|
483
259
|
children: description
|
|
484
260
|
})
|
|
485
261
|
]
|
|
486
262
|
}),
|
|
487
|
-
children != null && /* @__PURE__ */
|
|
263
|
+
children != null && /* @__PURE__ */ jsx4(EmptyContent2, {
|
|
488
264
|
children
|
|
489
265
|
})
|
|
490
266
|
]
|
|
@@ -492,9 +268,9 @@ function PageMessage2({ title, description, children }) {
|
|
|
492
268
|
});
|
|
493
269
|
}
|
|
494
270
|
// src/components/JsonViewer.tsx
|
|
495
|
-
import { jsx as
|
|
271
|
+
import { jsx as jsx5 } from "react/jsx-runtime";
|
|
496
272
|
function JsonViewer2({ value, label = "JSON", rows = 12 }) {
|
|
497
|
-
return /* @__PURE__ */
|
|
273
|
+
return /* @__PURE__ */ jsx5(Textarea2, {
|
|
498
274
|
readOnly: true,
|
|
499
275
|
rows,
|
|
500
276
|
"aria-label": label,
|
|
@@ -503,17 +279,17 @@ function JsonViewer2({ value, label = "JSON", rows = 12 }) {
|
|
|
503
279
|
}
|
|
504
280
|
// src/components/AlertDialog.tsx
|
|
505
281
|
import { AlertDialog as AlertDialogPrimitive } from "@base-ui/react/alert-dialog";
|
|
506
|
-
import { useDirection
|
|
507
|
-
import { jsx as
|
|
282
|
+
import { useDirection } from "@base-ui/react/direction-provider";
|
|
283
|
+
import { jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
508
284
|
"use client";
|
|
509
285
|
function AlertDialog2({ ...props }) {
|
|
510
|
-
return /* @__PURE__ */
|
|
286
|
+
return /* @__PURE__ */ jsx6(AlertDialogPrimitive.Root, {
|
|
511
287
|
"data-slot": "alert-dialog",
|
|
512
288
|
...props
|
|
513
289
|
});
|
|
514
290
|
}
|
|
515
291
|
function AlertDialogTrigger2({ ...props }) {
|
|
516
|
-
return /* @__PURE__ */
|
|
292
|
+
return /* @__PURE__ */ jsx6(AlertDialogPrimitive.Trigger, {
|
|
517
293
|
"data-slot": "alert-dialog-trigger",
|
|
518
294
|
...props
|
|
519
295
|
});
|
|
@@ -521,12 +297,12 @@ function AlertDialogTrigger2({ ...props }) {
|
|
|
521
297
|
function AlertDialogPortal2({ container, ref, children, ...props }) {
|
|
522
298
|
const resolvedContainer = usePortalContainer2(container);
|
|
523
299
|
const portal = usePortalNode(ref);
|
|
524
|
-
return /* @__PURE__ */
|
|
300
|
+
return /* @__PURE__ */ jsx6(AlertDialogPrimitive.Portal, {
|
|
525
301
|
"data-slot": "alert-dialog-portal",
|
|
526
302
|
container: resolvedContainer,
|
|
527
303
|
ref: portal.ref,
|
|
528
304
|
...props,
|
|
529
|
-
children: /* @__PURE__ */
|
|
305
|
+
children: /* @__PURE__ */ jsx6(PortalProvider2, {
|
|
530
306
|
container: portal.node,
|
|
531
307
|
children
|
|
532
308
|
})
|
|
@@ -534,7 +310,7 @@ function AlertDialogPortal2({ container, ref, children, ...props }) {
|
|
|
534
310
|
}
|
|
535
311
|
function AlertDialogOverlay2({ density, className, ...props }) {
|
|
536
312
|
const resolvedDensity = useDensity(density);
|
|
537
|
-
return /* @__PURE__ */
|
|
313
|
+
return /* @__PURE__ */ jsx6(AlertDialogPrimitive.Backdrop, {
|
|
538
314
|
"data-density": resolvedDensity,
|
|
539
315
|
"data-slot": "alert-dialog-overlay",
|
|
540
316
|
className: (state) => cn2("fixed inset-0 isolate bg-backdrop duration-120 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0 motion-reduce:data-open:animate-none motion-reduce:data-closed:animate-none", typeof className === "function" ? className(state) : className),
|
|
@@ -543,11 +319,11 @@ function AlertDialogOverlay2({ density, className, ...props }) {
|
|
|
543
319
|
}
|
|
544
320
|
function AlertDialogContent2({ density, className, size = "default", ...props }) {
|
|
545
321
|
const resolvedDensity = useDensity(density);
|
|
546
|
-
const direction =
|
|
547
|
-
return /* @__PURE__ */
|
|
322
|
+
const direction = useDirection();
|
|
323
|
+
return /* @__PURE__ */ jsxs4(AlertDialogPortal2, {
|
|
548
324
|
children: [
|
|
549
|
-
/* @__PURE__ */
|
|
550
|
-
/* @__PURE__ */
|
|
325
|
+
/* @__PURE__ */ jsx6(AlertDialogOverlay2, {}),
|
|
326
|
+
/* @__PURE__ */ jsx6(AlertDialogPrimitive.Popup, {
|
|
551
327
|
dir: direction,
|
|
552
328
|
"data-density": resolvedDensity,
|
|
553
329
|
"data-slot": "alert-dialog-content",
|
|
@@ -560,7 +336,7 @@ function AlertDialogContent2({ density, className, size = "default", ...props })
|
|
|
560
336
|
});
|
|
561
337
|
}
|
|
562
338
|
function AlertDialogHeader2({ density, className, ...props }) {
|
|
563
|
-
return /* @__PURE__ */
|
|
339
|
+
return /* @__PURE__ */ jsx6("div", {
|
|
564
340
|
"data-density": density,
|
|
565
341
|
"data-slot": "alert-dialog-header",
|
|
566
342
|
className: cn2("grid grid-rows-[auto_1fr] place-items-center gap-control-gap text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-4 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-start sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]", className),
|
|
@@ -568,7 +344,7 @@ function AlertDialogHeader2({ density, className, ...props }) {
|
|
|
568
344
|
});
|
|
569
345
|
}
|
|
570
346
|
function AlertDialogFooter2({ density, className, ...props }) {
|
|
571
|
-
return /* @__PURE__ */
|
|
347
|
+
return /* @__PURE__ */ jsx6("div", {
|
|
572
348
|
"data-density": density,
|
|
573
349
|
"data-slot": "alert-dialog-footer",
|
|
574
350
|
className: cn2("-mx-panel -mb-panel flex flex-col-reverse gap-2 rounded-b-md border-t bg-muted/50 p-panel group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end", className),
|
|
@@ -576,7 +352,7 @@ function AlertDialogFooter2({ density, className, ...props }) {
|
|
|
576
352
|
});
|
|
577
353
|
}
|
|
578
354
|
function AlertDialogMedia2({ density, className, ...props }) {
|
|
579
|
-
return /* @__PURE__ */
|
|
355
|
+
return /* @__PURE__ */ jsx6("div", {
|
|
580
356
|
"data-density": density,
|
|
581
357
|
"data-slot": "alert-dialog-media",
|
|
582
358
|
className: cn2("mb-2 inline-flex size-10 items-center justify-center rounded-md bg-muted sm:group-data-[size=default]/alert-dialog-content:row-span-2 *:[svg:not([class*='size-'])]:size-control-xs", className),
|
|
@@ -584,7 +360,7 @@ function AlertDialogMedia2({ density, className, ...props }) {
|
|
|
584
360
|
});
|
|
585
361
|
}
|
|
586
362
|
function AlertDialogTitle2({ density, className, ...props }) {
|
|
587
|
-
return /* @__PURE__ */
|
|
363
|
+
return /* @__PURE__ */ jsx6(AlertDialogPrimitive.Title, {
|
|
588
364
|
"data-density": density,
|
|
589
365
|
"data-slot": "alert-dialog-title",
|
|
590
366
|
className: (state) => cn2("text-base font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2", typeof className === "function" ? className(state) : className),
|
|
@@ -592,7 +368,7 @@ function AlertDialogTitle2({ density, className, ...props }) {
|
|
|
592
368
|
});
|
|
593
369
|
}
|
|
594
370
|
function AlertDialogDescription2({ density, className, ...props }) {
|
|
595
|
-
return /* @__PURE__ */
|
|
371
|
+
return /* @__PURE__ */ jsx6(AlertDialogPrimitive.Description, {
|
|
596
372
|
"data-density": density,
|
|
597
373
|
"data-slot": "alert-dialog-description",
|
|
598
374
|
className: (state) => cn2("text-sm text-balance text-muted-foreground md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground", typeof className === "function" ? className(state) : className),
|
|
@@ -600,7 +376,7 @@ function AlertDialogDescription2({ density, className, ...props }) {
|
|
|
600
376
|
});
|
|
601
377
|
}
|
|
602
378
|
function AlertDialogAction2({ density, className, ...props }) {
|
|
603
|
-
return /* @__PURE__ */
|
|
379
|
+
return /* @__PURE__ */ jsx6(Button2, {
|
|
604
380
|
"data-density": density,
|
|
605
381
|
"data-slot": "alert-dialog-action",
|
|
606
382
|
className,
|
|
@@ -614,11 +390,11 @@ function AlertDialogCancel2({
|
|
|
614
390
|
size = "default",
|
|
615
391
|
...props
|
|
616
392
|
}) {
|
|
617
|
-
return /* @__PURE__ */
|
|
393
|
+
return /* @__PURE__ */ jsx6(AlertDialogPrimitive.Close, {
|
|
618
394
|
"data-density": density,
|
|
619
395
|
"data-slot": "alert-dialog-cancel",
|
|
620
396
|
className,
|
|
621
|
-
render: /* @__PURE__ */
|
|
397
|
+
render: /* @__PURE__ */ jsx6(Button2, {
|
|
622
398
|
variant,
|
|
623
399
|
size
|
|
624
400
|
}),
|
|
@@ -627,13 +403,13 @@ function AlertDialogCancel2({
|
|
|
627
403
|
}
|
|
628
404
|
// src/components/Select.tsx
|
|
629
405
|
import { Select as SelectPrimitive } from "@base-ui/react/select";
|
|
630
|
-
import { useDirection as
|
|
631
|
-
import { ChevronDownIcon as
|
|
632
|
-
import { jsx as
|
|
406
|
+
import { useDirection as useDirection3 } from "@base-ui/react/direction-provider";
|
|
407
|
+
import { ChevronDownIcon as ChevronDownIcon2, CheckIcon, ChevronUpIcon as ChevronUpIcon2 } from "lucide-react";
|
|
408
|
+
import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
633
409
|
"use client";
|
|
634
410
|
var Select2 = SelectPrimitive.Root;
|
|
635
411
|
function SelectGroup2({ density, className, ...props }) {
|
|
636
|
-
return /* @__PURE__ */
|
|
412
|
+
return /* @__PURE__ */ jsx7(SelectPrimitive.Group, {
|
|
637
413
|
"data-density": density,
|
|
638
414
|
"data-slot": "select-group",
|
|
639
415
|
className: (state) => cn2("scroll-my-1 p-1", typeof className === "function" ? className(state) : className),
|
|
@@ -641,7 +417,7 @@ function SelectGroup2({ density, className, ...props }) {
|
|
|
641
417
|
});
|
|
642
418
|
}
|
|
643
419
|
function SelectValue2({ density, className, ...props }) {
|
|
644
|
-
return /* @__PURE__ */
|
|
420
|
+
return /* @__PURE__ */ jsx7(SelectPrimitive.Value, {
|
|
645
421
|
"data-density": density,
|
|
646
422
|
"data-slot": "select-value",
|
|
647
423
|
className: (state) => cn2("flex flex-1 text-start", typeof className === "function" ? className(state) : className),
|
|
@@ -649,7 +425,7 @@ function SelectValue2({ density, className, ...props }) {
|
|
|
649
425
|
});
|
|
650
426
|
}
|
|
651
427
|
function SelectTrigger2({ density, className, size = "default", children, ...props }) {
|
|
652
|
-
return /* @__PURE__ */
|
|
428
|
+
return /* @__PURE__ */ jsxs5(SelectPrimitive.Trigger, {
|
|
653
429
|
"data-density": density,
|
|
654
430
|
"data-slot": "select-trigger",
|
|
655
431
|
"data-size": size,
|
|
@@ -657,8 +433,8 @@ function SelectTrigger2({ density, className, size = "default", children, ...pro
|
|
|
657
433
|
...props,
|
|
658
434
|
children: [
|
|
659
435
|
children,
|
|
660
|
-
/* @__PURE__ */
|
|
661
|
-
render: /* @__PURE__ */
|
|
436
|
+
/* @__PURE__ */ jsx7(SelectPrimitive.Icon, {
|
|
437
|
+
render: /* @__PURE__ */ jsx7(ChevronDownIcon2, {
|
|
662
438
|
className: "pointer-events-none size-4 text-muted-foreground"
|
|
663
439
|
})
|
|
664
440
|
})
|
|
@@ -677,22 +453,22 @@ function SelectContent2({
|
|
|
677
453
|
...props
|
|
678
454
|
}) {
|
|
679
455
|
const resolvedDensity = useDensity(density);
|
|
680
|
-
const direction =
|
|
456
|
+
const direction = useDirection3();
|
|
681
457
|
const container = usePortalContainer2();
|
|
682
458
|
const portal = usePortalNode();
|
|
683
|
-
return /* @__PURE__ */
|
|
459
|
+
return /* @__PURE__ */ jsx7(SelectPrimitive.Portal, {
|
|
684
460
|
container,
|
|
685
461
|
ref: portal.ref,
|
|
686
|
-
children: /* @__PURE__ */
|
|
462
|
+
children: /* @__PURE__ */ jsx7(PortalProvider2, {
|
|
687
463
|
container: portal.node,
|
|
688
|
-
children: /* @__PURE__ */
|
|
464
|
+
children: /* @__PURE__ */ jsx7(SelectPrimitive.Positioner, {
|
|
689
465
|
side,
|
|
690
466
|
sideOffset,
|
|
691
467
|
align,
|
|
692
468
|
alignOffset,
|
|
693
469
|
alignItemWithTrigger,
|
|
694
470
|
className: "isolate ",
|
|
695
|
-
children: /* @__PURE__ */
|
|
471
|
+
children: /* @__PURE__ */ jsxs5(SelectPrimitive.Popup, {
|
|
696
472
|
dir: direction,
|
|
697
473
|
"data-density": resolvedDensity,
|
|
698
474
|
"data-slot": "select-content",
|
|
@@ -700,11 +476,11 @@ function SelectContent2({
|
|
|
700
476
|
className: (state) => cn2("relative isolate max-h-(--available-height) w-(--anchor-width) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md bg-popover text-popover-foreground border border-frame-edge shadow-frame duration-120 data-[align-trigger=true]:animate-none data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0 motion-reduce:animate-none", typeof className === "function" ? className(state) : className),
|
|
701
477
|
...props,
|
|
702
478
|
children: [
|
|
703
|
-
/* @__PURE__ */
|
|
704
|
-
/* @__PURE__ */
|
|
479
|
+
/* @__PURE__ */ jsx7(SelectScrollUpButton2, {}),
|
|
480
|
+
/* @__PURE__ */ jsx7(SelectPrimitive.List, {
|
|
705
481
|
children
|
|
706
482
|
}),
|
|
707
|
-
/* @__PURE__ */
|
|
483
|
+
/* @__PURE__ */ jsx7(SelectScrollDownButton2, {})
|
|
708
484
|
]
|
|
709
485
|
})
|
|
710
486
|
})
|
|
@@ -712,7 +488,7 @@ function SelectContent2({
|
|
|
712
488
|
});
|
|
713
489
|
}
|
|
714
490
|
function SelectLabel2({ density, className, ...props }) {
|
|
715
|
-
return /* @__PURE__ */
|
|
491
|
+
return /* @__PURE__ */ jsx7(SelectPrimitive.GroupLabel, {
|
|
716
492
|
"data-density": density,
|
|
717
493
|
"data-slot": "select-label",
|
|
718
494
|
className: (state) => cn2("px-1.5 py-1 text-xs text-muted-foreground", typeof className === "function" ? className(state) : className),
|
|
@@ -720,21 +496,21 @@ function SelectLabel2({ density, className, ...props }) {
|
|
|
720
496
|
});
|
|
721
497
|
}
|
|
722
498
|
function SelectItem2({ density, className, children, ...props }) {
|
|
723
|
-
return /* @__PURE__ */
|
|
499
|
+
return /* @__PURE__ */ jsxs5(SelectPrimitive.Item, {
|
|
724
500
|
"data-density": density,
|
|
725
501
|
"data-slot": "select-item",
|
|
726
502
|
className: (state) => cn2("relative flex w-full cursor-default items-center gap-control-gap rounded-md py-1 pe-8 ps-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2", typeof className === "function" ? className(state) : className),
|
|
727
503
|
...props,
|
|
728
504
|
children: [
|
|
729
|
-
/* @__PURE__ */
|
|
505
|
+
/* @__PURE__ */ jsx7(SelectPrimitive.ItemText, {
|
|
730
506
|
className: "flex flex-1 shrink-0 gap-2 whitespace-nowrap",
|
|
731
507
|
children
|
|
732
508
|
}),
|
|
733
|
-
/* @__PURE__ */
|
|
734
|
-
render: /* @__PURE__ */
|
|
509
|
+
/* @__PURE__ */ jsx7(SelectPrimitive.ItemIndicator, {
|
|
510
|
+
render: /* @__PURE__ */ jsx7("span", {
|
|
735
511
|
className: "pointer-events-none absolute end-2 flex size-4 items-center justify-center"
|
|
736
512
|
}),
|
|
737
|
-
children: /* @__PURE__ */
|
|
513
|
+
children: /* @__PURE__ */ jsx7(CheckIcon, {
|
|
738
514
|
className: "pointer-events-none"
|
|
739
515
|
})
|
|
740
516
|
})
|
|
@@ -742,7 +518,7 @@ function SelectItem2({ density, className, children, ...props }) {
|
|
|
742
518
|
});
|
|
743
519
|
}
|
|
744
520
|
function SelectSeparator2({ density, className, ...props }) {
|
|
745
|
-
return /* @__PURE__ */
|
|
521
|
+
return /* @__PURE__ */ jsx7(SelectPrimitive.Separator, {
|
|
746
522
|
"data-density": density,
|
|
747
523
|
"data-slot": "select-separator",
|
|
748
524
|
className: (state) => cn2("pointer-events-none -mx-1 my-1 h-px bg-border", typeof className === "function" ? className(state) : className),
|
|
@@ -750,27 +526,27 @@ function SelectSeparator2({ density, className, ...props }) {
|
|
|
750
526
|
});
|
|
751
527
|
}
|
|
752
528
|
function SelectScrollUpButton2({ density, className, ...props }) {
|
|
753
|
-
return /* @__PURE__ */
|
|
529
|
+
return /* @__PURE__ */ jsx7(SelectPrimitive.ScrollUpArrow, {
|
|
754
530
|
"data-density": density,
|
|
755
531
|
"data-slot": "select-scroll-up-button",
|
|
756
532
|
className: (state) => cn2("top-0 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4", typeof className === "function" ? className(state) : className),
|
|
757
533
|
...props,
|
|
758
|
-
children: /* @__PURE__ */
|
|
534
|
+
children: /* @__PURE__ */ jsx7(ChevronUpIcon2, {})
|
|
759
535
|
});
|
|
760
536
|
}
|
|
761
537
|
function SelectScrollDownButton2({ density, className, ...props }) {
|
|
762
|
-
return /* @__PURE__ */
|
|
538
|
+
return /* @__PURE__ */ jsx7(SelectPrimitive.ScrollDownArrow, {
|
|
763
539
|
"data-density": density,
|
|
764
540
|
"data-slot": "select-scroll-down-button",
|
|
765
541
|
className: (state) => cn2("bottom-0 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4", typeof className === "function" ? className(state) : className),
|
|
766
542
|
...props,
|
|
767
|
-
children: /* @__PURE__ */
|
|
543
|
+
children: /* @__PURE__ */ jsx7(ChevronDownIcon2, {})
|
|
768
544
|
});
|
|
769
545
|
}
|
|
770
546
|
// src/components/DensityProvider.tsx
|
|
771
547
|
import { mergeProps as mergeProps2 } from "@base-ui/react/merge-props";
|
|
772
548
|
import { useRender as useRender2 } from "@base-ui/react/use-render";
|
|
773
|
-
import { jsx as
|
|
549
|
+
import { jsx as jsx8 } from "react/jsx-runtime";
|
|
774
550
|
function DensityProvider2({
|
|
775
551
|
density = "comfortable",
|
|
776
552
|
className,
|
|
@@ -783,7 +559,7 @@ function DensityProvider2({
|
|
|
783
559
|
render,
|
|
784
560
|
state: { slot: "density-provider", density }
|
|
785
561
|
});
|
|
786
|
-
return /* @__PURE__ */
|
|
562
|
+
return /* @__PURE__ */ jsx8(DensityContext.Provider, {
|
|
787
563
|
value: density,
|
|
788
564
|
children: element
|
|
789
565
|
});
|
|
@@ -1096,7 +872,7 @@ function ScrollGuard2({ ownerDocument }) {
|
|
|
1096
872
|
}
|
|
1097
873
|
|
|
1098
874
|
// src/components/ThemeProvider.tsx
|
|
1099
|
-
import { jsx as
|
|
875
|
+
import { jsx as jsx9, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
1100
876
|
function StoredThemeProvider({
|
|
1101
877
|
children,
|
|
1102
878
|
defaultTheme = "system",
|
|
@@ -1107,7 +883,7 @@ function StoredThemeProvider({
|
|
|
1107
883
|
defaultValue: defaultTheme,
|
|
1108
884
|
localStorageKey: storageKey
|
|
1109
885
|
});
|
|
1110
|
-
return /* @__PURE__ */
|
|
886
|
+
return /* @__PURE__ */ jsx9(ThemePalette, {
|
|
1111
887
|
theme: forcedTheme ?? ternaryDarkMode,
|
|
1112
888
|
resolvedTheme: forcedTheme ?? (isDarkMode ? "dark" : "light"),
|
|
1113
889
|
setTheme: setTernaryDarkMode,
|
|
@@ -1125,11 +901,11 @@ function ThemePalette({
|
|
|
1125
901
|
document.documentElement.style.colorScheme = resolvedTheme;
|
|
1126
902
|
}, [resolvedTheme]);
|
|
1127
903
|
const value = useMemo(() => ({ theme, resolvedTheme, setTheme }), [theme, resolvedTheme, setTheme]);
|
|
1128
|
-
return /* @__PURE__ */
|
|
904
|
+
return /* @__PURE__ */ jsxs6(ThemeContext.Provider, {
|
|
1129
905
|
value,
|
|
1130
906
|
children: [
|
|
1131
|
-
/* @__PURE__ */
|
|
1132
|
-
/* @__PURE__ */
|
|
907
|
+
/* @__PURE__ */ jsx9(ScrollGuard2, {}),
|
|
908
|
+
/* @__PURE__ */ jsx9(LayoutGuard2, {}),
|
|
1133
909
|
children
|
|
1134
910
|
]
|
|
1135
911
|
});
|
|
@@ -1142,7 +918,7 @@ function ControlledThemeProvider({
|
|
|
1142
918
|
const isDark = useMediaQuery("(prefers-color-scheme: dark)");
|
|
1143
919
|
const { theme, setTheme } = controlledTheme;
|
|
1144
920
|
const resolvedTheme = forcedTheme ?? (theme === "system" ? isDark ? "dark" : "light" : theme);
|
|
1145
|
-
return /* @__PURE__ */
|
|
921
|
+
return /* @__PURE__ */ jsx9(ThemePalette, {
|
|
1146
922
|
theme: forcedTheme ?? theme,
|
|
1147
923
|
resolvedTheme,
|
|
1148
924
|
setTheme,
|
|
@@ -1151,23 +927,18 @@ function ControlledThemeProvider({
|
|
|
1151
927
|
}
|
|
1152
928
|
function ThemeProvider2(props) {
|
|
1153
929
|
if (props.controlledTheme)
|
|
1154
|
-
return /* @__PURE__ */
|
|
930
|
+
return /* @__PURE__ */ jsx9(ControlledThemeProvider, {
|
|
1155
931
|
...props,
|
|
1156
932
|
controlledTheme: props.controlledTheme
|
|
1157
933
|
});
|
|
1158
|
-
return /* @__PURE__ */
|
|
934
|
+
return /* @__PURE__ */ jsx9(StoredThemeProvider, {
|
|
1159
935
|
...props
|
|
1160
936
|
});
|
|
1161
937
|
}
|
|
1162
|
-
// src/hooks/useComboboxAnchor.ts
|
|
1163
|
-
import { useRef } from "react";
|
|
1164
|
-
function useComboboxAnchor2() {
|
|
1165
|
-
return useRef(null);
|
|
1166
|
-
}
|
|
1167
938
|
// src/components/AspectRatio.tsx
|
|
1168
|
-
import { jsx as
|
|
939
|
+
import { jsx as jsx10 } from "react/jsx-runtime";
|
|
1169
940
|
function AspectRatio2({ ratio, className, style, ...props }) {
|
|
1170
|
-
return /* @__PURE__ */
|
|
941
|
+
return /* @__PURE__ */ jsx10("div", {
|
|
1171
942
|
"data-slot": "aspect-ratio",
|
|
1172
943
|
className: cn2("relative", className),
|
|
1173
944
|
style: { aspectRatio: ratio, ...style },
|
|
@@ -1178,9 +949,9 @@ function AspectRatio2({ ratio, className, style, ...props }) {
|
|
|
1178
949
|
import { ChevronRightIcon, MoreHorizontalIcon } from "lucide-react";
|
|
1179
950
|
import { mergeProps as mergeProps3 } from "@base-ui/react/merge-props";
|
|
1180
951
|
import { useRender as useRender3 } from "@base-ui/react/use-render";
|
|
1181
|
-
import { jsx as
|
|
952
|
+
import { jsx as jsx11, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
1182
953
|
function Breadcrumb2({ density, className, ...props }) {
|
|
1183
|
-
return /* @__PURE__ */
|
|
954
|
+
return /* @__PURE__ */ jsx11("nav", {
|
|
1184
955
|
"aria-label": "breadcrumb",
|
|
1185
956
|
"data-density": density,
|
|
1186
957
|
"data-slot": "breadcrumb",
|
|
@@ -1189,7 +960,7 @@ function Breadcrumb2({ density, className, ...props }) {
|
|
|
1189
960
|
});
|
|
1190
961
|
}
|
|
1191
962
|
function BreadcrumbList2({ density, className, ...props }) {
|
|
1192
|
-
return /* @__PURE__ */
|
|
963
|
+
return /* @__PURE__ */ jsx11("ol", {
|
|
1193
964
|
"data-density": density,
|
|
1194
965
|
"data-slot": "breadcrumb-list",
|
|
1195
966
|
className: cn2("flex flex-wrap items-center gap-control-gap text-sm wrap-break-word text-muted-foreground", className),
|
|
@@ -1197,7 +968,7 @@ function BreadcrumbList2({ density, className, ...props }) {
|
|
|
1197
968
|
});
|
|
1198
969
|
}
|
|
1199
970
|
function BreadcrumbItem2({ density, className, ...props }) {
|
|
1200
|
-
return /* @__PURE__ */
|
|
971
|
+
return /* @__PURE__ */ jsx11("li", {
|
|
1201
972
|
"data-density": density,
|
|
1202
973
|
"data-slot": "breadcrumb-item",
|
|
1203
974
|
className: cn2("inline-flex items-center gap-1", className),
|
|
@@ -1218,7 +989,7 @@ function BreadcrumbLink2({ density, className, render, ...props }) {
|
|
|
1218
989
|
});
|
|
1219
990
|
}
|
|
1220
991
|
function BreadcrumbPage2({ density, className, ...props }) {
|
|
1221
|
-
return /* @__PURE__ */
|
|
992
|
+
return /* @__PURE__ */ jsx11("span", {
|
|
1222
993
|
"data-density": density,
|
|
1223
994
|
"data-slot": "breadcrumb-page",
|
|
1224
995
|
role: "link",
|
|
@@ -1229,20 +1000,20 @@ function BreadcrumbPage2({ density, className, ...props }) {
|
|
|
1229
1000
|
});
|
|
1230
1001
|
}
|
|
1231
1002
|
function BreadcrumbSeparator2({ density, children, className, ...props }) {
|
|
1232
|
-
return /* @__PURE__ */
|
|
1003
|
+
return /* @__PURE__ */ jsx11("li", {
|
|
1233
1004
|
"data-density": density,
|
|
1234
1005
|
"data-slot": "breadcrumb-separator",
|
|
1235
1006
|
role: "presentation",
|
|
1236
1007
|
"aria-hidden": "true",
|
|
1237
1008
|
className: cn2("[&>svg]:size-3.5", className),
|
|
1238
1009
|
...props,
|
|
1239
|
-
children: children ?? /* @__PURE__ */
|
|
1010
|
+
children: children ?? /* @__PURE__ */ jsx11(ChevronRightIcon, {
|
|
1240
1011
|
className: "rtl:rotate-180"
|
|
1241
1012
|
})
|
|
1242
1013
|
});
|
|
1243
1014
|
}
|
|
1244
1015
|
function BreadcrumbEllipsis2({ density, className, ...props }) {
|
|
1245
|
-
return /* @__PURE__ */
|
|
1016
|
+
return /* @__PURE__ */ jsxs7("span", {
|
|
1246
1017
|
"data-density": density,
|
|
1247
1018
|
"data-slot": "breadcrumb-ellipsis",
|
|
1248
1019
|
role: "presentation",
|
|
@@ -1250,8 +1021,8 @@ function BreadcrumbEllipsis2({ density, className, ...props }) {
|
|
|
1250
1021
|
className: cn2("flex size-5 items-center justify-center [&>svg]:size-4", className),
|
|
1251
1022
|
...props,
|
|
1252
1023
|
children: [
|
|
1253
|
-
/* @__PURE__ */
|
|
1254
|
-
/* @__PURE__ */
|
|
1024
|
+
/* @__PURE__ */ jsx11(MoreHorizontalIcon, {}),
|
|
1025
|
+
/* @__PURE__ */ jsx11("span", {
|
|
1255
1026
|
className: "sr-only",
|
|
1256
1027
|
children: "More"
|
|
1257
1028
|
})
|
|
@@ -1262,7 +1033,7 @@ function BreadcrumbEllipsis2({ density, className, ...props }) {
|
|
|
1262
1033
|
import { mergeProps as mergeProps4 } from "@base-ui/react/merge-props";
|
|
1263
1034
|
import { useRender as useRender4 } from "@base-ui/react/use-render";
|
|
1264
1035
|
import { cva } from "class-variance-authority";
|
|
1265
|
-
import { jsx as
|
|
1036
|
+
import { jsx as jsx12 } from "react/jsx-runtime";
|
|
1266
1037
|
var buttonGroupVariants2 = cva("flex w-fit items-stretch *:focus-visible:relative *:focus-visible:z-10 has-[>[data-slot=button-group]]:gap-2 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-e-sm [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1", {
|
|
1267
1038
|
variants: {
|
|
1268
1039
|
layout: {
|
|
@@ -1285,7 +1056,7 @@ function ButtonGroup2({
|
|
|
1285
1056
|
layout = "content",
|
|
1286
1057
|
...props
|
|
1287
1058
|
}) {
|
|
1288
|
-
return /* @__PURE__ */
|
|
1059
|
+
return /* @__PURE__ */ jsx12("div", {
|
|
1289
1060
|
role: "group",
|
|
1290
1061
|
"data-density": density,
|
|
1291
1062
|
"data-slot": "button-group",
|
|
@@ -1313,7 +1084,7 @@ function ButtonGroupSeparator2({
|
|
|
1313
1084
|
orientation = "vertical",
|
|
1314
1085
|
...props
|
|
1315
1086
|
}) {
|
|
1316
|
-
return /* @__PURE__ */
|
|
1087
|
+
return /* @__PURE__ */ jsx12(Separator2, {
|
|
1317
1088
|
"data-density": density,
|
|
1318
1089
|
"data-slot": "button-group-separator",
|
|
1319
1090
|
orientation,
|
|
@@ -1325,9 +1096,9 @@ function ButtonGroupSeparator2({
|
|
|
1325
1096
|
import { mergeProps as mergeProps5 } from "@base-ui/react/merge-props";
|
|
1326
1097
|
import { useRender as useRender5 } from "@base-ui/react/use-render";
|
|
1327
1098
|
import { cva as cva2 } from "class-variance-authority";
|
|
1328
|
-
import { jsx as
|
|
1099
|
+
import { jsx as jsx13 } from "react/jsx-runtime";
|
|
1329
1100
|
function ItemGroup2({ density, className, ...props }) {
|
|
1330
|
-
return /* @__PURE__ */
|
|
1101
|
+
return /* @__PURE__ */ jsx13("div", {
|
|
1331
1102
|
role: "list",
|
|
1332
1103
|
"data-density": density,
|
|
1333
1104
|
"data-slot": "item-group",
|
|
@@ -1336,7 +1107,7 @@ function ItemGroup2({ density, className, ...props }) {
|
|
|
1336
1107
|
});
|
|
1337
1108
|
}
|
|
1338
1109
|
function ItemSeparator2({ density, className, ...props }) {
|
|
1339
|
-
return /* @__PURE__ */
|
|
1110
|
+
return /* @__PURE__ */ jsx13(Separator2, {
|
|
1340
1111
|
"data-density": density,
|
|
1341
1112
|
"data-slot": "item-separator",
|
|
1342
1113
|
orientation: "horizontal",
|
|
@@ -1397,7 +1168,7 @@ var itemMediaVariants = cva2("flex shrink-0 items-center justify-center gap-2 gr
|
|
|
1397
1168
|
}
|
|
1398
1169
|
});
|
|
1399
1170
|
function ItemMedia2({ density, className, variant = "default", ...props }) {
|
|
1400
|
-
return /* @__PURE__ */
|
|
1171
|
+
return /* @__PURE__ */ jsx13("div", {
|
|
1401
1172
|
"data-density": density,
|
|
1402
1173
|
"data-slot": "item-media",
|
|
1403
1174
|
"data-variant": variant,
|
|
@@ -1406,7 +1177,7 @@ function ItemMedia2({ density, className, variant = "default", ...props }) {
|
|
|
1406
1177
|
});
|
|
1407
1178
|
}
|
|
1408
1179
|
function ItemContent2({ density, className, ...props }) {
|
|
1409
|
-
return /* @__PURE__ */
|
|
1180
|
+
return /* @__PURE__ */ jsx13("div", {
|
|
1410
1181
|
"data-density": density,
|
|
1411
1182
|
"data-slot": "item-content",
|
|
1412
1183
|
className: cn2("flex flex-1 flex-col gap-1 group-data-[size=xs]/item:gap-0 [&+[data-slot=item-content]]:flex-none", className),
|
|
@@ -1414,7 +1185,7 @@ function ItemContent2({ density, className, ...props }) {
|
|
|
1414
1185
|
});
|
|
1415
1186
|
}
|
|
1416
1187
|
function ItemTitle2({ density, className, ...props }) {
|
|
1417
|
-
return /* @__PURE__ */
|
|
1188
|
+
return /* @__PURE__ */ jsx13("div", {
|
|
1418
1189
|
"data-density": density,
|
|
1419
1190
|
"data-slot": "item-title",
|
|
1420
1191
|
className: cn2("line-clamp-1 flex w-fit items-center gap-2 text-sm leading-snug font-medium underline-offset-4", className),
|
|
@@ -1422,7 +1193,7 @@ function ItemTitle2({ density, className, ...props }) {
|
|
|
1422
1193
|
});
|
|
1423
1194
|
}
|
|
1424
1195
|
function ItemDescription2({ density, className, ...props }) {
|
|
1425
|
-
return /* @__PURE__ */
|
|
1196
|
+
return /* @__PURE__ */ jsx13("p", {
|
|
1426
1197
|
"data-density": density,
|
|
1427
1198
|
"data-slot": "item-description",
|
|
1428
1199
|
className: cn2("line-clamp-2 text-start text-sm leading-normal font-normal text-muted-foreground group-data-[size=xs]/item:text-xs [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary", className),
|
|
@@ -1430,7 +1201,7 @@ function ItemDescription2({ density, className, ...props }) {
|
|
|
1430
1201
|
});
|
|
1431
1202
|
}
|
|
1432
1203
|
function ItemActions2({ density, className, ...props }) {
|
|
1433
|
-
return /* @__PURE__ */
|
|
1204
|
+
return /* @__PURE__ */ jsx13("div", {
|
|
1434
1205
|
"data-density": density,
|
|
1435
1206
|
"data-slot": "item-actions",
|
|
1436
1207
|
className: cn2("flex items-center gap-2", className),
|
|
@@ -1438,7 +1209,7 @@ function ItemActions2({ density, className, ...props }) {
|
|
|
1438
1209
|
});
|
|
1439
1210
|
}
|
|
1440
1211
|
function ItemHeader2({ density, className, ...props }) {
|
|
1441
|
-
return /* @__PURE__ */
|
|
1212
|
+
return /* @__PURE__ */ jsx13("div", {
|
|
1442
1213
|
"data-density": density,
|
|
1443
1214
|
"data-slot": "item-header",
|
|
1444
1215
|
className: cn2("flex basis-full items-center justify-between gap-2", className),
|
|
@@ -1446,7 +1217,7 @@ function ItemHeader2({ density, className, ...props }) {
|
|
|
1446
1217
|
});
|
|
1447
1218
|
}
|
|
1448
1219
|
function ItemFooter2({ density, className, ...props }) {
|
|
1449
|
-
return /* @__PURE__ */
|
|
1220
|
+
return /* @__PURE__ */ jsx13("div", {
|
|
1450
1221
|
"data-density": density,
|
|
1451
1222
|
"data-slot": "item-footer",
|
|
1452
1223
|
className: cn2("flex basis-full items-center justify-between gap-2", className),
|
|
@@ -1455,9 +1226,9 @@ function ItemFooter2({ density, className, ...props }) {
|
|
|
1455
1226
|
}
|
|
1456
1227
|
// src/components/Pagination.tsx
|
|
1457
1228
|
import { ChevronLeftIcon, ChevronRightIcon as ChevronRightIcon2, MoreHorizontalIcon as MoreHorizontalIcon2 } from "lucide-react";
|
|
1458
|
-
import { jsx as
|
|
1229
|
+
import { jsx as jsx14, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
1459
1230
|
function Pagination2({ density, className, ...props }) {
|
|
1460
|
-
return /* @__PURE__ */
|
|
1231
|
+
return /* @__PURE__ */ jsx14("nav", {
|
|
1461
1232
|
role: "navigation",
|
|
1462
1233
|
"aria-label": "pagination",
|
|
1463
1234
|
"data-density": density,
|
|
@@ -1467,7 +1238,7 @@ function Pagination2({ density, className, ...props }) {
|
|
|
1467
1238
|
});
|
|
1468
1239
|
}
|
|
1469
1240
|
function PaginationContent2({ density, className, ...props }) {
|
|
1470
|
-
return /* @__PURE__ */
|
|
1241
|
+
return /* @__PURE__ */ jsx14("ul", {
|
|
1471
1242
|
"data-density": density,
|
|
1472
1243
|
"data-slot": "pagination-content",
|
|
1473
1244
|
className: cn2("flex items-center gap-0.5", className),
|
|
@@ -1475,7 +1246,7 @@ function PaginationContent2({ density, className, ...props }) {
|
|
|
1475
1246
|
});
|
|
1476
1247
|
}
|
|
1477
1248
|
function PaginationItem2({ ...props }) {
|
|
1478
|
-
return /* @__PURE__ */
|
|
1249
|
+
return /* @__PURE__ */ jsx14("li", {
|
|
1479
1250
|
"data-slot": "pagination-item",
|
|
1480
1251
|
...props
|
|
1481
1252
|
});
|
|
@@ -1487,7 +1258,7 @@ function PaginationLink2({
|
|
|
1487
1258
|
size = "icon",
|
|
1488
1259
|
...props
|
|
1489
1260
|
}) {
|
|
1490
|
-
return /* @__PURE__ */
|
|
1261
|
+
return /* @__PURE__ */ jsx14("a", {
|
|
1491
1262
|
"data-density": density,
|
|
1492
1263
|
className: cn2(buttonVariants2({ variant: isActive ? "outline" : "ghost", size }), className),
|
|
1493
1264
|
"aria-current": isActive ? "page" : undefined,
|
|
@@ -1502,18 +1273,18 @@ function PaginationPrevious2({
|
|
|
1502
1273
|
text = "Previous",
|
|
1503
1274
|
...props
|
|
1504
1275
|
}) {
|
|
1505
|
-
return /* @__PURE__ */
|
|
1276
|
+
return /* @__PURE__ */ jsxs8(PaginationLink2, {
|
|
1506
1277
|
density,
|
|
1507
1278
|
"aria-label": "Go to previous page",
|
|
1508
1279
|
size: "default",
|
|
1509
1280
|
className: cn2("ps-1.5!", className),
|
|
1510
1281
|
...props,
|
|
1511
1282
|
children: [
|
|
1512
|
-
/* @__PURE__ */
|
|
1283
|
+
/* @__PURE__ */ jsx14(ChevronLeftIcon, {
|
|
1513
1284
|
"data-icon": "inline-start",
|
|
1514
1285
|
className: "rtl:rotate-180"
|
|
1515
1286
|
}),
|
|
1516
|
-
/* @__PURE__ */
|
|
1287
|
+
/* @__PURE__ */ jsx14("span", {
|
|
1517
1288
|
className: "hidden sm:block",
|
|
1518
1289
|
children: text
|
|
1519
1290
|
})
|
|
@@ -1521,18 +1292,18 @@ function PaginationPrevious2({
|
|
|
1521
1292
|
});
|
|
1522
1293
|
}
|
|
1523
1294
|
function PaginationNext2({ density, className, text = "Next", ...props }) {
|
|
1524
|
-
return /* @__PURE__ */
|
|
1295
|
+
return /* @__PURE__ */ jsxs8(PaginationLink2, {
|
|
1525
1296
|
density,
|
|
1526
1297
|
"aria-label": "Go to next page",
|
|
1527
1298
|
size: "default",
|
|
1528
1299
|
className: cn2("pe-1.5!", className),
|
|
1529
1300
|
...props,
|
|
1530
1301
|
children: [
|
|
1531
|
-
/* @__PURE__ */
|
|
1302
|
+
/* @__PURE__ */ jsx14("span", {
|
|
1532
1303
|
className: "hidden sm:block",
|
|
1533
1304
|
children: text
|
|
1534
1305
|
}),
|
|
1535
|
-
/* @__PURE__ */
|
|
1306
|
+
/* @__PURE__ */ jsx14(ChevronRightIcon2, {
|
|
1536
1307
|
"data-icon": "inline-end",
|
|
1537
1308
|
className: "rtl:rotate-180"
|
|
1538
1309
|
})
|
|
@@ -1540,61 +1311,21 @@ function PaginationNext2({ density, className, text = "Next", ...props }) {
|
|
|
1540
1311
|
});
|
|
1541
1312
|
}
|
|
1542
1313
|
function PaginationEllipsis2({ density, className, ...props }) {
|
|
1543
|
-
return /* @__PURE__ */
|
|
1314
|
+
return /* @__PURE__ */ jsxs8("span", {
|
|
1544
1315
|
"aria-hidden": true,
|
|
1545
1316
|
"data-density": density,
|
|
1546
1317
|
"data-slot": "pagination-ellipsis",
|
|
1547
1318
|
className: cn2("flex size-control items-center justify-center [&_svg:not([class*='size-'])]:size-4", className),
|
|
1548
1319
|
...props,
|
|
1549
1320
|
children: [
|
|
1550
|
-
/* @__PURE__ */
|
|
1551
|
-
/* @__PURE__ */
|
|
1321
|
+
/* @__PURE__ */ jsx14(MoreHorizontalIcon2, {}),
|
|
1322
|
+
/* @__PURE__ */ jsx14("span", {
|
|
1552
1323
|
className: "sr-only",
|
|
1553
1324
|
children: "More pages"
|
|
1554
1325
|
})
|
|
1555
1326
|
]
|
|
1556
1327
|
});
|
|
1557
1328
|
}
|
|
1558
|
-
// src/components/ScrollArea.tsx
|
|
1559
|
-
import { ScrollArea as ScrollAreaPrimitive } from "@base-ui/react/scroll-area";
|
|
1560
|
-
import { jsx as jsx16, jsxs as jsxs10 } from "react/jsx-runtime";
|
|
1561
|
-
function ScrollArea2({
|
|
1562
|
-
density,
|
|
1563
|
-
className,
|
|
1564
|
-
children,
|
|
1565
|
-
scrollbars = /* @__PURE__ */ jsx16(ScrollBar2, {}),
|
|
1566
|
-
...props
|
|
1567
|
-
}) {
|
|
1568
|
-
return /* @__PURE__ */ jsxs10(ScrollAreaPrimitive.Root, {
|
|
1569
|
-
"data-density": density,
|
|
1570
|
-
"data-slot": "scroll-area",
|
|
1571
|
-
className: (state) => cn2("relative flex min-h-0 flex-col", typeof className === "function" ? className(state) : className),
|
|
1572
|
-
...props,
|
|
1573
|
-
children: [
|
|
1574
|
-
/* @__PURE__ */ jsx16(ScrollAreaPrimitive.Viewport, {
|
|
1575
|
-
"data-slot": "scroll-area-viewport",
|
|
1576
|
-
className: "size-full min-h-0 flex-1 rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-1 focus-visible:ring-ring focus-visible:outline-1",
|
|
1577
|
-
children
|
|
1578
|
-
}),
|
|
1579
|
-
scrollbars,
|
|
1580
|
-
/* @__PURE__ */ jsx16(ScrollAreaPrimitive.Corner, {})
|
|
1581
|
-
]
|
|
1582
|
-
});
|
|
1583
|
-
}
|
|
1584
|
-
function ScrollBar2({ density, className, orientation = "vertical", ...props }) {
|
|
1585
|
-
return /* @__PURE__ */ jsx16(ScrollAreaPrimitive.Scrollbar, {
|
|
1586
|
-
"data-density": density,
|
|
1587
|
-
"data-slot": "scroll-area-scrollbar",
|
|
1588
|
-
"data-orientation": orientation,
|
|
1589
|
-
orientation,
|
|
1590
|
-
className: (state) => cn2("flex touch-none p-px transition-colors select-none data-[orientation=horizontal]:h-2.5 data-[orientation=horizontal]:flex-col data-[orientation=horizontal]:border-t data-[orientation=horizontal]:border-t-transparent data-[orientation=vertical]:w-2.5 data-[orientation=vertical]:border-s data-[orientation=vertical]:border-s-transparent", typeof className === "function" ? className(state) : className),
|
|
1591
|
-
...props,
|
|
1592
|
-
children: /* @__PURE__ */ jsx16(ScrollAreaPrimitive.Thumb, {
|
|
1593
|
-
"data-slot": "scroll-area-thumb",
|
|
1594
|
-
className: "relative flex-1 rounded-full bg-border"
|
|
1595
|
-
})
|
|
1596
|
-
});
|
|
1597
|
-
}
|
|
1598
1329
|
// src/components/Drawer.tsx
|
|
1599
1330
|
import { useMemo as useMemo2 } from "react";
|
|
1600
1331
|
|
|
@@ -1614,7 +1345,7 @@ function useDrawer() {
|
|
|
1614
1345
|
|
|
1615
1346
|
// src/components/Drawer.tsx
|
|
1616
1347
|
import { Drawer as DrawerPrimitive } from "@base-ui/react/drawer";
|
|
1617
|
-
import { jsx as
|
|
1348
|
+
import { jsx as jsx15, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
1618
1349
|
function Drawer2({
|
|
1619
1350
|
modal = true,
|
|
1620
1351
|
showSwipeHandle = false,
|
|
@@ -1624,9 +1355,9 @@ function Drawer2({
|
|
|
1624
1355
|
}) {
|
|
1625
1356
|
const hasSnapPoints = snapPoints != null && snapPoints.length > 0;
|
|
1626
1357
|
const contextValue = useMemo2(() => ({ hasSnapPoints, modal, showSwipeHandle, swipeDirection }), [hasSnapPoints, modal, showSwipeHandle, swipeDirection]);
|
|
1627
|
-
return /* @__PURE__ */
|
|
1358
|
+
return /* @__PURE__ */ jsx15(DrawerContext.Provider, {
|
|
1628
1359
|
value: contextValue,
|
|
1629
|
-
children: /* @__PURE__ */
|
|
1360
|
+
children: /* @__PURE__ */ jsx15(DrawerPrimitive.Root, {
|
|
1630
1361
|
"data-slot": "drawer",
|
|
1631
1362
|
modal,
|
|
1632
1363
|
snapPoints,
|
|
@@ -1636,7 +1367,7 @@ function Drawer2({
|
|
|
1636
1367
|
});
|
|
1637
1368
|
}
|
|
1638
1369
|
function DrawerTrigger2({ ...props }) {
|
|
1639
|
-
return /* @__PURE__ */
|
|
1370
|
+
return /* @__PURE__ */ jsx15(DrawerPrimitive.Trigger, {
|
|
1640
1371
|
"data-slot": "drawer-trigger",
|
|
1641
1372
|
...props
|
|
1642
1373
|
});
|
|
@@ -1644,26 +1375,26 @@ function DrawerTrigger2({ ...props }) {
|
|
|
1644
1375
|
function DrawerPortal2({ container, ref, children, ...props }) {
|
|
1645
1376
|
const resolvedContainer = usePortalContainer2(container);
|
|
1646
1377
|
const portal = usePortalNode(ref);
|
|
1647
|
-
return /* @__PURE__ */
|
|
1378
|
+
return /* @__PURE__ */ jsx15(DrawerPrimitive.Portal, {
|
|
1648
1379
|
"data-slot": "drawer-portal",
|
|
1649
1380
|
container: resolvedContainer,
|
|
1650
1381
|
ref: portal.ref,
|
|
1651
1382
|
...props,
|
|
1652
|
-
children: /* @__PURE__ */
|
|
1383
|
+
children: /* @__PURE__ */ jsx15(PortalProvider2, {
|
|
1653
1384
|
container: portal.node,
|
|
1654
1385
|
children
|
|
1655
1386
|
})
|
|
1656
1387
|
});
|
|
1657
1388
|
}
|
|
1658
1389
|
function DrawerClose2({ ...props }) {
|
|
1659
|
-
return /* @__PURE__ */
|
|
1390
|
+
return /* @__PURE__ */ jsx15(DrawerPrimitive.Close, {
|
|
1660
1391
|
"data-slot": "drawer-close",
|
|
1661
1392
|
...props
|
|
1662
1393
|
});
|
|
1663
1394
|
}
|
|
1664
1395
|
function DrawerOverlay2({ density, className, ...props }) {
|
|
1665
1396
|
const resolvedDensity = useDensity(density);
|
|
1666
|
-
return /* @__PURE__ */
|
|
1397
|
+
return /* @__PURE__ */ jsx15(DrawerPrimitive.Backdrop, {
|
|
1667
1398
|
"data-density": resolvedDensity,
|
|
1668
1399
|
"data-slot": "drawer-overlay",
|
|
1669
1400
|
className: (state) => cn2("fixed inset-0 min-h-dvh bg-backdrop opacity-[max(var(--drawer-overlay-min-opacity,0),calc(1-var(--drawer-swipe-progress)))] transition-opacity duration-450 ease-[cubic-bezier(0.32,0.72,0,1)] select-none data-ending-style:pointer-events-none data-ending-style:opacity-0 data-ending-style:duration-[calc(var(--drawer-swipe-strength)*400ms)] data-snap-points:[--drawer-overlay-min-opacity:0.5] data-starting-style:opacity-0 data-swiping:duration-0 supports-[-webkit-touch-callout:none]:absolute", typeof className === "function" ? className(state) : className),
|
|
@@ -1671,7 +1402,7 @@ function DrawerOverlay2({ density, className, ...props }) {
|
|
|
1671
1402
|
});
|
|
1672
1403
|
}
|
|
1673
1404
|
function DrawerSwipeHandle2({ density, className, ...props }) {
|
|
1674
|
-
return /* @__PURE__ */
|
|
1405
|
+
return /* @__PURE__ */ jsx15("div", {
|
|
1675
1406
|
"data-density": density,
|
|
1676
1407
|
"data-slot": "drawer-swipe-handle",
|
|
1677
1408
|
"aria-hidden": "true",
|
|
@@ -1684,18 +1415,18 @@ function DrawerContent2({ density, className, children, ...props }) {
|
|
|
1684
1415
|
const direction = useDirection2();
|
|
1685
1416
|
const { hasSnapPoints, modal, showSwipeHandle, swipeDirection } = useDrawer();
|
|
1686
1417
|
const swipeAxis = swipeDirection === "down" || swipeDirection === "up" ? "y" : "x";
|
|
1687
|
-
return /* @__PURE__ */
|
|
1418
|
+
return /* @__PURE__ */ jsxs9(DrawerPortal2, {
|
|
1688
1419
|
"data-slot": "drawer-portal",
|
|
1689
1420
|
children: [
|
|
1690
|
-
modal === true && /* @__PURE__ */
|
|
1421
|
+
modal === true && /* @__PURE__ */ jsx15(DrawerOverlay2, {
|
|
1691
1422
|
"data-snap-points": hasSnapPoints ? "" : undefined
|
|
1692
1423
|
}),
|
|
1693
|
-
/* @__PURE__ */
|
|
1424
|
+
/* @__PURE__ */ jsx15(DrawerPrimitive.Viewport, {
|
|
1694
1425
|
dir: direction,
|
|
1695
1426
|
"data-slot": "drawer-viewport",
|
|
1696
1427
|
"data-modal": modal,
|
|
1697
1428
|
className: "pointer-events-none fixed inset-0 select-none data-[modal=true]:pointer-events-auto",
|
|
1698
|
-
children: /* @__PURE__ */
|
|
1429
|
+
children: /* @__PURE__ */ jsxs9(DrawerPrimitive.Popup, {
|
|
1699
1430
|
"data-density": resolvedDensity,
|
|
1700
1431
|
"data-slot": "drawer-popup",
|
|
1701
1432
|
"data-scroll": "none",
|
|
@@ -1704,8 +1435,8 @@ function DrawerContent2({ density, className, children, ...props }) {
|
|
|
1704
1435
|
className: (state) => cn2("group/drawer-popup pointer-events-auto fixed m-(--drawer-inset,0px) flex h-(--drawer-content-height) max-h-(--drawer-content-max-height,none) min-h-0 w-(--drawer-content-width,auto) transform-[translate3d(var(--translate-x,0px),var(--translate-y,0px),0)] flex-col border border-frame-edge shadow-frame bg-popover text-sm text-popover-foreground transition-[transform,height,opacity,filter] duration-450 ease-[cubic-bezier(0.22,1,0.36,1)] will-change-transform outline-none select-none [interpolate-size:allow-keywords] data-[swipe-direction=down]:rounded-t-md data-[swipe-direction=down]:border-t data-[swipe-direction=left]:rounded-r-md data-[swipe-direction=left]:border-r data-[swipe-direction=right]:rounded-l-md data-[swipe-direction=right]:border-l data-[swipe-direction=up]:rounded-b-md data-[swipe-direction=up]:border-b", "data-nested-drawer-open:overflow-hidden data-nested-drawer-open:brightness-95", "after:pointer-events-none after:absolute after:bg-(--drawer-bleed-background,var(--color-popover)) data-[swipe-axis=x]:after:inset-y-0 data-[swipe-axis=x]:after:w-(--bleed) data-[swipe-axis=y]:after:inset-x-0 data-[swipe-axis=y]:after:h-(--bleed) data-[swipe-direction=down]:after:top-full data-[swipe-direction=left]:after:right-full data-[swipe-direction=right]:after:left-full data-[swipe-direction=up]:after:bottom-full", "[--drawer-content-height:var(--drawer-height,auto)] data-[swipe-axis=x]:[--drawer-content-width:75%] data-[swipe-axis=y]:[--drawer-content-max-height:calc(100dvh-6rem)] data-[swipe-axis=y]:data-snap-points:[--drawer-content-height:100dvh] data-[swipe-axis=x]:sm:[--drawer-content-width:24rem]", "[--bleed:3rem] [--peek:1rem] [--stack-height:var(--drawer-frontmost-height,var(--drawer-height,0px))] [--stack-peek-offset:max(0px,calc((var(--nested-drawers)-var(--stack-progress))*var(--peek)))] [--stack-progress:clamp(0,var(--drawer-swipe-progress),1)] [--stack-shrink:0]", "data-ending-style:transform-(--closed-transform) data-ending-style:opacity-[0.9999] data-ending-style:duration-[calc(var(--drawer-swipe-strength)*400ms)] data-nested-drawer-swiping:duration-0 data-ending-style:data-nested-drawer-swiping:duration-[calc(var(--drawer-swipe-strength)*400ms)] data-starting-style:transform-(--closed-transform) data-swiping:duration-0 data-ending-style:data-swiping:duration-[calc(var(--drawer-swipe-strength)*400ms)]", "data-[swipe-axis=y]:inset-x-0 data-[swipe-axis=y]:data-nested-drawer-open:h-(--stack-height)", "data-[swipe-axis=x]:inset-y-0 data-[swipe-axis=x]:flex-row", "data-[swipe-direction=down]:bottom-0 data-[swipe-direction=down]:origin-bottom data-[swipe-direction=down]:[--closed-transform:translate3d(0,calc(100%+var(--drawer-inset,0px)+2px),0)] data-[swipe-direction=down]:[--translate-y:calc(var(--drawer-snap-point-offset,0px)+var(--drawer-swipe-movement-y)-var(--stack-peek-offset)-(var(--stack-shrink)*var(--stack-height)))]", "data-[swipe-direction=up]:top-0 data-[swipe-direction=up]:origin-top data-[swipe-direction=up]:[--closed-transform:translate3d(0,calc(-100%-var(--drawer-inset,0px)-2px),0)] data-[swipe-direction=up]:[--translate-y:calc(var(--drawer-snap-point-offset,0px)+var(--drawer-swipe-movement-y)+var(--stack-peek-offset)+(var(--stack-shrink)*var(--stack-height)))]", "data-[swipe-direction=left]:left-0 data-[swipe-direction=left]:origin-left data-[swipe-direction=left]:[--closed-transform:translate3d(calc(-100%-var(--drawer-inset,0px)-2px),0,0)] data-[swipe-direction=left]:[--translate-x:calc(var(--drawer-swipe-movement-x)+var(--stack-peek-offset)+(var(--stack-shrink)*100%))]", "data-[swipe-direction=right]:right-0 data-[swipe-direction=right]:origin-right data-[swipe-direction=right]:[--closed-transform:translate3d(calc(100%+var(--drawer-inset,0px)+2px),0,0)] data-[swipe-direction=right]:[--translate-x:calc(var(--drawer-swipe-movement-x)-var(--stack-peek-offset)-(var(--stack-shrink)*100%))]", typeof className === "function" ? className(state) : className),
|
|
1705
1436
|
...props,
|
|
1706
1437
|
children: [
|
|
1707
|
-
showSwipeHandle && /* @__PURE__ */
|
|
1708
|
-
/* @__PURE__ */
|
|
1438
|
+
showSwipeHandle && /* @__PURE__ */ jsx15(DrawerSwipeHandle2, {}),
|
|
1439
|
+
/* @__PURE__ */ jsx15(DrawerPrimitive.Content, {
|
|
1709
1440
|
"data-slot": "drawer-content",
|
|
1710
1441
|
"data-scroll": "none",
|
|
1711
1442
|
className: "flex min-h-0 flex-1 flex-col overflow-hidden overscroll-contain rounded-[inherit] transition-opacity duration-300 ease-out select-text group-data-nested-drawer-open/drawer-popup:opacity-0 group-data-nested-drawer-swiping/drawer-popup:opacity-100 group-data-swiping/drawer-popup:select-none",
|
|
@@ -1718,7 +1449,7 @@ function DrawerContent2({ density, className, children, ...props }) {
|
|
|
1718
1449
|
});
|
|
1719
1450
|
}
|
|
1720
1451
|
function DrawerHeader2({ density, className, ...props }) {
|
|
1721
|
-
return /* @__PURE__ */
|
|
1452
|
+
return /* @__PURE__ */ jsx15("div", {
|
|
1722
1453
|
"data-density": density,
|
|
1723
1454
|
"data-slot": "drawer-header",
|
|
1724
1455
|
className: cn2("flex shrink-0 flex-col gap-0.5 p-panel pb-0 group-data-[swipe-axis=y]/drawer-popup:text-center md:gap-0.5 md:text-start md:group-data-[swipe-axis=y]/drawer-popup:text-start", className),
|
|
@@ -1726,7 +1457,7 @@ function DrawerHeader2({ density, className, ...props }) {
|
|
|
1726
1457
|
});
|
|
1727
1458
|
}
|
|
1728
1459
|
function DrawerFooter2({ density, className, ...props }) {
|
|
1729
|
-
return /* @__PURE__ */
|
|
1460
|
+
return /* @__PURE__ */ jsx15("div", {
|
|
1730
1461
|
"data-density": density,
|
|
1731
1462
|
"data-slot": "drawer-footer",
|
|
1732
1463
|
className: cn2("mt-auto flex shrink-0 flex-col gap-2 p-panel pt-0", className),
|
|
@@ -1734,7 +1465,7 @@ function DrawerFooter2({ density, className, ...props }) {
|
|
|
1734
1465
|
});
|
|
1735
1466
|
}
|
|
1736
1467
|
function DrawerTitle2({ density, className, ...props }) {
|
|
1737
|
-
return /* @__PURE__ */
|
|
1468
|
+
return /* @__PURE__ */ jsx15(DrawerPrimitive.Title, {
|
|
1738
1469
|
"data-density": density,
|
|
1739
1470
|
"data-slot": "drawer-title",
|
|
1740
1471
|
className: (state) => cn2(" text-base font-medium text-foreground", typeof className === "function" ? className(state) : className),
|
|
@@ -1742,7 +1473,7 @@ function DrawerTitle2({ density, className, ...props }) {
|
|
|
1742
1473
|
});
|
|
1743
1474
|
}
|
|
1744
1475
|
function DrawerDescription2({ density, className, ...props }) {
|
|
1745
|
-
return /* @__PURE__ */
|
|
1476
|
+
return /* @__PURE__ */ jsx15(DrawerPrimitive.Description, {
|
|
1746
1477
|
"data-density": density,
|
|
1747
1478
|
"data-slot": "drawer-description",
|
|
1748
1479
|
className: (state) => cn2("text-sm text-balance text-muted-foreground", typeof className === "function" ? className(state) : className),
|
|
@@ -1750,12 +1481,12 @@ function DrawerDescription2({ density, className, ...props }) {
|
|
|
1750
1481
|
});
|
|
1751
1482
|
}
|
|
1752
1483
|
// src/components/ContextMenu.tsx
|
|
1753
|
-
import { ChevronRightIcon as ChevronRightIcon3, CheckIcon as
|
|
1754
|
-
import { useDirection as
|
|
1484
|
+
import { ChevronRightIcon as ChevronRightIcon3, CheckIcon as CheckIcon2 } from "lucide-react";
|
|
1485
|
+
import { useDirection as useDirection4 } from "@base-ui/react/direction-provider";
|
|
1755
1486
|
import { ContextMenu as ContextMenuPrimitive } from "@base-ui/react/context-menu";
|
|
1756
|
-
import { jsx as
|
|
1487
|
+
import { jsx as jsx16, jsxs as jsxs10 } from "react/jsx-runtime";
|
|
1757
1488
|
function ContextMenu2({ ...props }) {
|
|
1758
|
-
return /* @__PURE__ */
|
|
1489
|
+
return /* @__PURE__ */ jsx16(ContextMenuPrimitive.Root, {
|
|
1759
1490
|
"data-slot": "context-menu",
|
|
1760
1491
|
...props
|
|
1761
1492
|
});
|
|
@@ -1763,19 +1494,19 @@ function ContextMenu2({ ...props }) {
|
|
|
1763
1494
|
function ContextMenuPortal2({ container, ref, children, ...props }) {
|
|
1764
1495
|
const resolvedContainer = usePortalContainer2(container);
|
|
1765
1496
|
const portal = usePortalNode(ref);
|
|
1766
|
-
return /* @__PURE__ */
|
|
1497
|
+
return /* @__PURE__ */ jsx16(ContextMenuPrimitive.Portal, {
|
|
1767
1498
|
"data-slot": "context-menu-portal",
|
|
1768
1499
|
container: resolvedContainer,
|
|
1769
1500
|
ref: portal.ref,
|
|
1770
1501
|
...props,
|
|
1771
|
-
children: /* @__PURE__ */
|
|
1502
|
+
children: /* @__PURE__ */ jsx16(PortalProvider2, {
|
|
1772
1503
|
container: portal.node,
|
|
1773
1504
|
children
|
|
1774
1505
|
})
|
|
1775
1506
|
});
|
|
1776
1507
|
}
|
|
1777
1508
|
function ContextMenuTrigger2({ density, className, ...props }) {
|
|
1778
|
-
return /* @__PURE__ */
|
|
1509
|
+
return /* @__PURE__ */ jsx16(ContextMenuPrimitive.Trigger, {
|
|
1779
1510
|
"data-density": density,
|
|
1780
1511
|
"data-slot": "context-menu-trigger",
|
|
1781
1512
|
className: (state) => cn2("select-none", typeof className === "function" ? className(state) : className),
|
|
@@ -1792,16 +1523,16 @@ function ContextMenuContent2({
|
|
|
1792
1523
|
...props
|
|
1793
1524
|
}) {
|
|
1794
1525
|
const resolvedDensity = useDensity(density);
|
|
1795
|
-
const direction =
|
|
1796
|
-
return /* @__PURE__ */
|
|
1797
|
-
children: /* @__PURE__ */
|
|
1526
|
+
const direction = useDirection4();
|
|
1527
|
+
return /* @__PURE__ */ jsx16(ContextMenuPortal2, {
|
|
1528
|
+
children: /* @__PURE__ */ jsx16(ContextMenuPrimitive.Positioner, {
|
|
1798
1529
|
dir: direction,
|
|
1799
1530
|
className: "isolate outline-none",
|
|
1800
1531
|
align,
|
|
1801
1532
|
alignOffset,
|
|
1802
1533
|
side,
|
|
1803
1534
|
sideOffset,
|
|
1804
|
-
children: /* @__PURE__ */
|
|
1535
|
+
children: /* @__PURE__ */ jsx16(ContextMenuPrimitive.Popup, {
|
|
1805
1536
|
dir: direction,
|
|
1806
1537
|
"data-density": resolvedDensity,
|
|
1807
1538
|
"data-slot": "context-menu-content",
|
|
@@ -1812,13 +1543,13 @@ function ContextMenuContent2({
|
|
|
1812
1543
|
});
|
|
1813
1544
|
}
|
|
1814
1545
|
function ContextMenuGroup2({ ...props }) {
|
|
1815
|
-
return /* @__PURE__ */
|
|
1546
|
+
return /* @__PURE__ */ jsx16(ContextMenuPrimitive.Group, {
|
|
1816
1547
|
"data-slot": "context-menu-group",
|
|
1817
1548
|
...props
|
|
1818
1549
|
});
|
|
1819
1550
|
}
|
|
1820
1551
|
function ContextMenuLabel2({ density, className, inset, ...props }) {
|
|
1821
|
-
return /* @__PURE__ */
|
|
1552
|
+
return /* @__PURE__ */ jsx16(ContextMenuPrimitive.GroupLabel, {
|
|
1822
1553
|
"data-density": density,
|
|
1823
1554
|
"data-slot": "context-menu-label",
|
|
1824
1555
|
"data-inset": inset,
|
|
@@ -1827,7 +1558,7 @@ function ContextMenuLabel2({ density, className, inset, ...props }) {
|
|
|
1827
1558
|
});
|
|
1828
1559
|
}
|
|
1829
1560
|
function ContextMenuItem2({ density, className, inset, variant = "default", ...props }) {
|
|
1830
|
-
return /* @__PURE__ */
|
|
1561
|
+
return /* @__PURE__ */ jsx16(ContextMenuPrimitive.Item, {
|
|
1831
1562
|
"data-density": density,
|
|
1832
1563
|
"data-slot": "context-menu-item",
|
|
1833
1564
|
"data-inset": inset,
|
|
@@ -1837,13 +1568,13 @@ function ContextMenuItem2({ density, className, inset, variant = "default", ...p
|
|
|
1837
1568
|
});
|
|
1838
1569
|
}
|
|
1839
1570
|
function ContextMenuSub2({ ...props }) {
|
|
1840
|
-
return /* @__PURE__ */
|
|
1571
|
+
return /* @__PURE__ */ jsx16(ContextMenuPrimitive.SubmenuRoot, {
|
|
1841
1572
|
"data-slot": "context-menu-sub",
|
|
1842
1573
|
...props
|
|
1843
1574
|
});
|
|
1844
1575
|
}
|
|
1845
1576
|
function ContextMenuSubTrigger2({ density, className, inset, children, ...props }) {
|
|
1846
|
-
return /* @__PURE__ */
|
|
1577
|
+
return /* @__PURE__ */ jsxs10(ContextMenuPrimitive.SubmenuTrigger, {
|
|
1847
1578
|
"data-density": density,
|
|
1848
1579
|
"data-slot": "context-menu-sub-trigger",
|
|
1849
1580
|
"data-inset": inset,
|
|
@@ -1851,14 +1582,14 @@ function ContextMenuSubTrigger2({ density, className, inset, children, ...props
|
|
|
1851
1582
|
...props,
|
|
1852
1583
|
children: [
|
|
1853
1584
|
children,
|
|
1854
|
-
/* @__PURE__ */
|
|
1585
|
+
/* @__PURE__ */ jsx16(ChevronRightIcon3, {
|
|
1855
1586
|
className: "rtl:rotate-180 ms-auto"
|
|
1856
1587
|
})
|
|
1857
1588
|
]
|
|
1858
1589
|
});
|
|
1859
1590
|
}
|
|
1860
1591
|
function ContextMenuSubContent2({ ...props }) {
|
|
1861
|
-
return /* @__PURE__ */
|
|
1592
|
+
return /* @__PURE__ */ jsx16(ContextMenuContent2, {
|
|
1862
1593
|
"data-slot": "context-menu-sub-content",
|
|
1863
1594
|
className: " shadow-frame border border-frame-edge",
|
|
1864
1595
|
side: "inline-end",
|
|
@@ -1873,7 +1604,7 @@ function ContextMenuCheckboxItem2({
|
|
|
1873
1604
|
inset,
|
|
1874
1605
|
...props
|
|
1875
1606
|
}) {
|
|
1876
|
-
return /* @__PURE__ */
|
|
1607
|
+
return /* @__PURE__ */ jsxs10(ContextMenuPrimitive.CheckboxItem, {
|
|
1877
1608
|
"data-density": density,
|
|
1878
1609
|
"data-slot": "context-menu-checkbox-item",
|
|
1879
1610
|
"data-inset": inset,
|
|
@@ -1881,10 +1612,10 @@ function ContextMenuCheckboxItem2({
|
|
|
1881
1612
|
checked,
|
|
1882
1613
|
...props,
|
|
1883
1614
|
children: [
|
|
1884
|
-
/* @__PURE__ */
|
|
1615
|
+
/* @__PURE__ */ jsx16("span", {
|
|
1885
1616
|
className: "pointer-events-none absolute end-2",
|
|
1886
|
-
children: /* @__PURE__ */
|
|
1887
|
-
children: /* @__PURE__ */
|
|
1617
|
+
children: /* @__PURE__ */ jsx16(ContextMenuPrimitive.CheckboxItemIndicator, {
|
|
1618
|
+
children: /* @__PURE__ */ jsx16(CheckIcon2, {})
|
|
1888
1619
|
})
|
|
1889
1620
|
}),
|
|
1890
1621
|
children
|
|
@@ -1892,23 +1623,23 @@ function ContextMenuCheckboxItem2({
|
|
|
1892
1623
|
});
|
|
1893
1624
|
}
|
|
1894
1625
|
function ContextMenuRadioGroup2({ ...props }) {
|
|
1895
|
-
return /* @__PURE__ */
|
|
1626
|
+
return /* @__PURE__ */ jsx16(ContextMenuPrimitive.RadioGroup, {
|
|
1896
1627
|
"data-slot": "context-menu-radio-group",
|
|
1897
1628
|
...props
|
|
1898
1629
|
});
|
|
1899
1630
|
}
|
|
1900
1631
|
function ContextMenuRadioItem2({ density, className, children, inset, ...props }) {
|
|
1901
|
-
return /* @__PURE__ */
|
|
1632
|
+
return /* @__PURE__ */ jsxs10(ContextMenuPrimitive.RadioItem, {
|
|
1902
1633
|
"data-density": density,
|
|
1903
1634
|
"data-slot": "context-menu-radio-item",
|
|
1904
1635
|
"data-inset": inset,
|
|
1905
1636
|
className: (state) => cn2("relative flex cursor-default items-center gap-control-gap rounded-md py-1 pe-8 ps-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:ps-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", typeof className === "function" ? className(state) : className),
|
|
1906
1637
|
...props,
|
|
1907
1638
|
children: [
|
|
1908
|
-
/* @__PURE__ */
|
|
1639
|
+
/* @__PURE__ */ jsx16("span", {
|
|
1909
1640
|
className: "pointer-events-none absolute end-2",
|
|
1910
|
-
children: /* @__PURE__ */
|
|
1911
|
-
children: /* @__PURE__ */
|
|
1641
|
+
children: /* @__PURE__ */ jsx16(ContextMenuPrimitive.RadioItemIndicator, {
|
|
1642
|
+
children: /* @__PURE__ */ jsx16(CheckIcon2, {})
|
|
1912
1643
|
})
|
|
1913
1644
|
}),
|
|
1914
1645
|
children
|
|
@@ -1916,7 +1647,7 @@ function ContextMenuRadioItem2({ density, className, children, inset, ...props }
|
|
|
1916
1647
|
});
|
|
1917
1648
|
}
|
|
1918
1649
|
function ContextMenuSeparator2({ density, className, ...props }) {
|
|
1919
|
-
return /* @__PURE__ */
|
|
1650
|
+
return /* @__PURE__ */ jsx16(ContextMenuPrimitive.Separator, {
|
|
1920
1651
|
"data-density": density,
|
|
1921
1652
|
"data-slot": "context-menu-separator",
|
|
1922
1653
|
className: (state) => cn2("-mx-1 my-1 h-px bg-border", typeof className === "function" ? className(state) : className),
|
|
@@ -1924,7 +1655,7 @@ function ContextMenuSeparator2({ density, className, ...props }) {
|
|
|
1924
1655
|
});
|
|
1925
1656
|
}
|
|
1926
1657
|
function ContextMenuShortcut2({ density, className, ...props }) {
|
|
1927
|
-
return /* @__PURE__ */
|
|
1658
|
+
return /* @__PURE__ */ jsx16("span", {
|
|
1928
1659
|
"data-density": density,
|
|
1929
1660
|
"data-slot": "context-menu-shortcut",
|
|
1930
1661
|
className: cn2("ms-auto text-xs tracking-widest text-muted-foreground group-focus/context-menu-item:text-accent-foreground", className),
|
|
@@ -1932,12 +1663,12 @@ function ContextMenuShortcut2({ density, className, ...props }) {
|
|
|
1932
1663
|
});
|
|
1933
1664
|
}
|
|
1934
1665
|
// src/components/Menubar.tsx
|
|
1935
|
-
import { CheckIcon as
|
|
1666
|
+
import { CheckIcon as CheckIcon3 } from "lucide-react";
|
|
1936
1667
|
import { Menu as MenuPrimitive } from "@base-ui/react/menu";
|
|
1937
1668
|
import { Menubar as MenubarPrimitive } from "@base-ui/react/menubar";
|
|
1938
|
-
import { jsx as
|
|
1669
|
+
import { jsx as jsx17, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
1939
1670
|
function Menubar2({ density, className, ...props }) {
|
|
1940
|
-
return /* @__PURE__ */
|
|
1671
|
+
return /* @__PURE__ */ jsx17(MenubarPrimitive, {
|
|
1941
1672
|
"data-density": density,
|
|
1942
1673
|
"data-slot": "menubar",
|
|
1943
1674
|
className: (state) => cn2("flex h-control items-center gap-0.5 rounded-sm border p-px", typeof className === "function" ? className(state) : className),
|
|
@@ -1945,25 +1676,25 @@ function Menubar2({ density, className, ...props }) {
|
|
|
1945
1676
|
});
|
|
1946
1677
|
}
|
|
1947
1678
|
function MenubarMenu2({ ...props }) {
|
|
1948
|
-
return /* @__PURE__ */
|
|
1679
|
+
return /* @__PURE__ */ jsx17(DropdownMenu2, {
|
|
1949
1680
|
"data-slot": "menubar-menu",
|
|
1950
1681
|
...props
|
|
1951
1682
|
});
|
|
1952
1683
|
}
|
|
1953
1684
|
function MenubarGroup2({ ...props }) {
|
|
1954
|
-
return /* @__PURE__ */
|
|
1685
|
+
return /* @__PURE__ */ jsx17(DropdownMenuGroup2, {
|
|
1955
1686
|
"data-slot": "menubar-group",
|
|
1956
1687
|
...props
|
|
1957
1688
|
});
|
|
1958
1689
|
}
|
|
1959
1690
|
function MenubarPortal2({ ...props }) {
|
|
1960
|
-
return /* @__PURE__ */
|
|
1691
|
+
return /* @__PURE__ */ jsx17(DropdownMenuPortal2, {
|
|
1961
1692
|
"data-slot": "menubar-portal",
|
|
1962
1693
|
...props
|
|
1963
1694
|
});
|
|
1964
1695
|
}
|
|
1965
1696
|
function MenubarTrigger2({ density, className, ...props }) {
|
|
1966
|
-
return /* @__PURE__ */
|
|
1697
|
+
return /* @__PURE__ */ jsx17(DropdownMenuTrigger2, {
|
|
1967
1698
|
"data-density": density,
|
|
1968
1699
|
"data-slot": "menubar-trigger",
|
|
1969
1700
|
className: (state) => cn2("flex h-full items-center rounded-sm px-control-x text-sm leading-none font-medium outline-hidden select-none hover:bg-muted aria-expanded:bg-muted", typeof className === "function" ? className(state) : className),
|
|
@@ -1978,7 +1709,7 @@ function MenubarContent2({
|
|
|
1978
1709
|
sideOffset = 8,
|
|
1979
1710
|
...props
|
|
1980
1711
|
}) {
|
|
1981
|
-
return /* @__PURE__ */
|
|
1712
|
+
return /* @__PURE__ */ jsx17(DropdownMenuContent2, {
|
|
1982
1713
|
density,
|
|
1983
1714
|
"data-slot": "menubar-content",
|
|
1984
1715
|
align,
|
|
@@ -1989,7 +1720,7 @@ function MenubarContent2({
|
|
|
1989
1720
|
});
|
|
1990
1721
|
}
|
|
1991
1722
|
function MenubarItem2({ density, className, inset, variant = "default", ...props }) {
|
|
1992
|
-
return /* @__PURE__ */
|
|
1723
|
+
return /* @__PURE__ */ jsx17(DropdownMenuItem2, {
|
|
1993
1724
|
density,
|
|
1994
1725
|
"data-slot": "menubar-item",
|
|
1995
1726
|
inset,
|
|
@@ -2006,7 +1737,7 @@ function MenubarCheckboxItem2({
|
|
|
2006
1737
|
inset,
|
|
2007
1738
|
...props
|
|
2008
1739
|
}) {
|
|
2009
|
-
return /* @__PURE__ */
|
|
1740
|
+
return /* @__PURE__ */ jsxs11(MenuPrimitive.CheckboxItem, {
|
|
2010
1741
|
"data-density": density,
|
|
2011
1742
|
"data-slot": "menubar-checkbox-item",
|
|
2012
1743
|
"data-inset": inset,
|
|
@@ -2014,10 +1745,10 @@ function MenubarCheckboxItem2({
|
|
|
2014
1745
|
checked,
|
|
2015
1746
|
...props,
|
|
2016
1747
|
children: [
|
|
2017
|
-
/* @__PURE__ */
|
|
1748
|
+
/* @__PURE__ */ jsx17("span", {
|
|
2018
1749
|
className: "pointer-events-none absolute start-1.5 flex size-4 items-center justify-center [&_svg:not([class*='size-'])]:size-4",
|
|
2019
|
-
children: /* @__PURE__ */
|
|
2020
|
-
children: /* @__PURE__ */
|
|
1750
|
+
children: /* @__PURE__ */ jsx17(MenuPrimitive.CheckboxItemIndicator, {
|
|
1751
|
+
children: /* @__PURE__ */ jsx17(CheckIcon3, {})
|
|
2021
1752
|
})
|
|
2022
1753
|
}),
|
|
2023
1754
|
children
|
|
@@ -2025,23 +1756,23 @@ function MenubarCheckboxItem2({
|
|
|
2025
1756
|
});
|
|
2026
1757
|
}
|
|
2027
1758
|
function MenubarRadioGroup2({ ...props }) {
|
|
2028
|
-
return /* @__PURE__ */
|
|
1759
|
+
return /* @__PURE__ */ jsx17(DropdownMenuRadioGroup2, {
|
|
2029
1760
|
"data-slot": "menubar-radio-group",
|
|
2030
1761
|
...props
|
|
2031
1762
|
});
|
|
2032
1763
|
}
|
|
2033
1764
|
function MenubarRadioItem2({ density, className, children, inset, ...props }) {
|
|
2034
|
-
return /* @__PURE__ */
|
|
1765
|
+
return /* @__PURE__ */ jsxs11(MenuPrimitive.RadioItem, {
|
|
2035
1766
|
"data-density": density,
|
|
2036
1767
|
"data-slot": "menubar-radio-item",
|
|
2037
1768
|
"data-inset": inset,
|
|
2038
1769
|
className: (state) => cn2("relative flex cursor-default items-center gap-control-gap rounded-md py-1 pe-1.5 ps-7 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:ps-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", typeof className === "function" ? className(state) : className),
|
|
2039
1770
|
...props,
|
|
2040
1771
|
children: [
|
|
2041
|
-
/* @__PURE__ */
|
|
1772
|
+
/* @__PURE__ */ jsx17("span", {
|
|
2042
1773
|
className: "pointer-events-none absolute start-1.5 flex size-4 items-center justify-center [&_svg:not([class*='size-'])]:size-4",
|
|
2043
|
-
children: /* @__PURE__ */
|
|
2044
|
-
children: /* @__PURE__ */
|
|
1774
|
+
children: /* @__PURE__ */ jsx17(MenuPrimitive.RadioItemIndicator, {
|
|
1775
|
+
children: /* @__PURE__ */ jsx17(CheckIcon3, {})
|
|
2045
1776
|
})
|
|
2046
1777
|
}),
|
|
2047
1778
|
children
|
|
@@ -2049,7 +1780,7 @@ function MenubarRadioItem2({ density, className, children, inset, ...props }) {
|
|
|
2049
1780
|
});
|
|
2050
1781
|
}
|
|
2051
1782
|
function MenubarLabel2({ density, className, inset, ...props }) {
|
|
2052
|
-
return /* @__PURE__ */
|
|
1783
|
+
return /* @__PURE__ */ jsx17(DropdownMenuLabel2, {
|
|
2053
1784
|
density,
|
|
2054
1785
|
"data-slot": "menubar-label",
|
|
2055
1786
|
inset,
|
|
@@ -2058,7 +1789,7 @@ function MenubarLabel2({ density, className, inset, ...props }) {
|
|
|
2058
1789
|
});
|
|
2059
1790
|
}
|
|
2060
1791
|
function MenubarSeparator2({ density, className, ...props }) {
|
|
2061
|
-
return /* @__PURE__ */
|
|
1792
|
+
return /* @__PURE__ */ jsx17(DropdownMenuSeparator2, {
|
|
2062
1793
|
density,
|
|
2063
1794
|
"data-slot": "menubar-separator",
|
|
2064
1795
|
className: (state) => cn2("-mx-1 my-1 h-px bg-border", typeof className === "function" ? className(state) : className),
|
|
@@ -2066,7 +1797,7 @@ function MenubarSeparator2({ density, className, ...props }) {
|
|
|
2066
1797
|
});
|
|
2067
1798
|
}
|
|
2068
1799
|
function MenubarShortcut2({ density, className, ...props }) {
|
|
2069
|
-
return /* @__PURE__ */
|
|
1800
|
+
return /* @__PURE__ */ jsx17(DropdownMenuShortcut2, {
|
|
2070
1801
|
"data-density": density,
|
|
2071
1802
|
"data-slot": "menubar-shortcut",
|
|
2072
1803
|
className: cn2("ms-auto text-xs tracking-widest text-muted-foreground group-focus/menubar-item:text-accent-foreground", className),
|
|
@@ -2074,13 +1805,13 @@ function MenubarShortcut2({ density, className, ...props }) {
|
|
|
2074
1805
|
});
|
|
2075
1806
|
}
|
|
2076
1807
|
function MenubarSub2({ ...props }) {
|
|
2077
|
-
return /* @__PURE__ */
|
|
1808
|
+
return /* @__PURE__ */ jsx17(DropdownMenuSub2, {
|
|
2078
1809
|
"data-slot": "menubar-sub",
|
|
2079
1810
|
...props
|
|
2080
1811
|
});
|
|
2081
1812
|
}
|
|
2082
1813
|
function MenubarSubTrigger2({ density, className, inset, ...props }) {
|
|
2083
|
-
return /* @__PURE__ */
|
|
1814
|
+
return /* @__PURE__ */ jsx17(DropdownMenuSubTrigger2, {
|
|
2084
1815
|
density,
|
|
2085
1816
|
"data-slot": "menubar-sub-trigger",
|
|
2086
1817
|
inset,
|
|
@@ -2089,7 +1820,7 @@ function MenubarSubTrigger2({ density, className, inset, ...props }) {
|
|
|
2089
1820
|
});
|
|
2090
1821
|
}
|
|
2091
1822
|
function MenubarSubContent2({ density, className, ...props }) {
|
|
2092
|
-
return /* @__PURE__ */
|
|
1823
|
+
return /* @__PURE__ */ jsx17(DropdownMenuSubContent2, {
|
|
2093
1824
|
density,
|
|
2094
1825
|
"data-slot": "menubar-sub-content",
|
|
2095
1826
|
className: (state) => cn2(" min-w-32 rounded-sm bg-popover p-1 text-popover-foreground shadow-frame border border-frame-edge border border-frame-edge shadow-frame duration-100 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0 ", typeof className === "function" ? className(state) : className),
|
|
@@ -2097,10 +1828,10 @@ function MenubarSubContent2({ density, className, ...props }) {
|
|
|
2097
1828
|
});
|
|
2098
1829
|
}
|
|
2099
1830
|
// src/components/NavigationMenu.tsx
|
|
2100
|
-
import { ChevronDownIcon as
|
|
1831
|
+
import { ChevronDownIcon as ChevronDownIcon3 } from "lucide-react";
|
|
2101
1832
|
import { NavigationMenu as NavigationMenuPrimitive } from "@base-ui/react/navigation-menu";
|
|
2102
1833
|
import { cva as cva3 } from "class-variance-authority";
|
|
2103
|
-
import { jsx as
|
|
1834
|
+
import { jsx as jsx18, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
2104
1835
|
function NavigationMenu2({
|
|
2105
1836
|
density,
|
|
2106
1837
|
align = "start",
|
|
@@ -2109,14 +1840,14 @@ function NavigationMenu2({
|
|
|
2109
1840
|
...props
|
|
2110
1841
|
}) {
|
|
2111
1842
|
const resolvedDensity = useDensity(density);
|
|
2112
|
-
return /* @__PURE__ */
|
|
1843
|
+
return /* @__PURE__ */ jsxs12(NavigationMenuPrimitive.Root, {
|
|
2113
1844
|
"data-density": resolvedDensity,
|
|
2114
1845
|
"data-slot": "navigation-menu",
|
|
2115
1846
|
className: (state) => cn2("group/navigation-menu relative flex max-w-max flex-1 items-center justify-center", typeof className === "function" ? className(state) : className),
|
|
2116
1847
|
...props,
|
|
2117
1848
|
children: [
|
|
2118
1849
|
children,
|
|
2119
|
-
/* @__PURE__ */
|
|
1850
|
+
/* @__PURE__ */ jsx18(NavigationMenuPositioner2, {
|
|
2120
1851
|
density: resolvedDensity,
|
|
2121
1852
|
align
|
|
2122
1853
|
})
|
|
@@ -2124,7 +1855,7 @@ function NavigationMenu2({
|
|
|
2124
1855
|
});
|
|
2125
1856
|
}
|
|
2126
1857
|
function NavigationMenuList2({ density, className, ...props }) {
|
|
2127
|
-
return /* @__PURE__ */
|
|
1858
|
+
return /* @__PURE__ */ jsx18(NavigationMenuPrimitive.List, {
|
|
2128
1859
|
"data-density": density,
|
|
2129
1860
|
"data-slot": "navigation-menu-list",
|
|
2130
1861
|
className: (state) => cn2("group flex flex-1 list-none items-center justify-center gap-0", typeof className === "function" ? className(state) : className),
|
|
@@ -2132,7 +1863,7 @@ function NavigationMenuList2({ density, className, ...props }) {
|
|
|
2132
1863
|
});
|
|
2133
1864
|
}
|
|
2134
1865
|
function NavigationMenuItem2({ density, className, ...props }) {
|
|
2135
|
-
return /* @__PURE__ */
|
|
1866
|
+
return /* @__PURE__ */ jsx18(NavigationMenuPrimitive.Item, {
|
|
2136
1867
|
"data-density": density,
|
|
2137
1868
|
"data-slot": "navigation-menu-item",
|
|
2138
1869
|
className: (state) => cn2("relative", typeof className === "function" ? className(state) : className),
|
|
@@ -2141,7 +1872,7 @@ function NavigationMenuItem2({ density, className, ...props }) {
|
|
|
2141
1872
|
}
|
|
2142
1873
|
var navigationMenuTriggerStyle2 = cva3("group/navigation-menu-trigger inline-flex h-control-lg w-max items-center justify-center rounded-sm px-control-x py-1.5 text-sm font-medium transition-colors outline-none hover:bg-muted focus:bg-muted focus-visible:ring-1 focus-visible:ring-ring focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-popup-open:bg-muted/50 data-popup-open:hover:bg-muted data-open:bg-muted/50 data-open:hover:bg-muted data-open:focus:bg-muted");
|
|
2143
1874
|
function NavigationMenuTrigger2({ density, className, children, ...props }) {
|
|
2144
|
-
return /* @__PURE__ */
|
|
1875
|
+
return /* @__PURE__ */ jsxs12(NavigationMenuPrimitive.Trigger, {
|
|
2145
1876
|
"data-density": density,
|
|
2146
1877
|
"data-slot": "navigation-menu-trigger",
|
|
2147
1878
|
className: (state) => cn2(navigationMenuTriggerStyle2(), "group", typeof className === "function" ? className(state) : className),
|
|
@@ -2149,12 +1880,12 @@ function NavigationMenuTrigger2({ density, className, children, ...props }) {
|
|
|
2149
1880
|
children: [
|
|
2150
1881
|
children,
|
|
2151
1882
|
" ",
|
|
2152
|
-
/* @__PURE__ */
|
|
1883
|
+
/* @__PURE__ */ jsx18(NavigationMenuIndicator2, {})
|
|
2153
1884
|
]
|
|
2154
1885
|
});
|
|
2155
1886
|
}
|
|
2156
1887
|
function NavigationMenuContent2({ density, className, ...props }) {
|
|
2157
|
-
return /* @__PURE__ */
|
|
1888
|
+
return /* @__PURE__ */ jsx18(NavigationMenuPrimitive.Content, {
|
|
2158
1889
|
"data-density": density,
|
|
2159
1890
|
"data-slot": "navigation-menu-content",
|
|
2160
1891
|
className: (state) => cn2("data-ending-style:data-activation-direction=left:translate-x-[50%] data-ending-style:data-activation-direction=right:translate-x-[-50%] data-starting-style:data-activation-direction=left:translate-x-[-50%] data-starting-style:data-activation-direction=right:translate-x-[50%] h-full w-auto p-1 transition-[opacity,transform,translate] duration-[0.35s] ease-[cubic-bezier(0.22,1,0.36,1)] data-ending-style:opacity-0 data-starting-style:opacity-0 ", typeof className === "function" ? className(state) : className),
|
|
@@ -2174,12 +1905,12 @@ function NavigationMenuPositioner2({
|
|
|
2174
1905
|
const direction = useDirection2();
|
|
2175
1906
|
const container = usePortalContainer2();
|
|
2176
1907
|
const portal = usePortalNode();
|
|
2177
|
-
return /* @__PURE__ */
|
|
1908
|
+
return /* @__PURE__ */ jsx18(NavigationMenuPrimitive.Portal, {
|
|
2178
1909
|
container,
|
|
2179
1910
|
ref: portal.ref,
|
|
2180
|
-
children: /* @__PURE__ */
|
|
1911
|
+
children: /* @__PURE__ */ jsx18(PortalProvider2, {
|
|
2181
1912
|
container: portal.node,
|
|
2182
|
-
children: /* @__PURE__ */
|
|
1913
|
+
children: /* @__PURE__ */ jsx18(NavigationMenuPrimitive.Positioner, {
|
|
2183
1914
|
dir: direction,
|
|
2184
1915
|
side,
|
|
2185
1916
|
sideOffset,
|
|
@@ -2187,11 +1918,11 @@ function NavigationMenuPositioner2({
|
|
|
2187
1918
|
alignOffset,
|
|
2188
1919
|
className: (state) => cn2("isolate h-(--positioner-height) w-(--positioner-width) max-w-(--available-width) transition-[top,left,right,bottom] duration-[0.35s] ease-[cubic-bezier(0.22,1,0.36,1)] data-instant:transition-none data-[side=bottom]:before:top-[-10px] data-[side=bottom]:before:right-0 data-[side=bottom]:before:left-0", typeof className === "function" ? className(state) : className),
|
|
2189
1920
|
...props,
|
|
2190
|
-
children: /* @__PURE__ */
|
|
1921
|
+
children: /* @__PURE__ */ jsx18(NavigationMenuPrimitive.Popup, {
|
|
2191
1922
|
"data-density": resolvedDensity,
|
|
2192
1923
|
"data-slot": "navigation-menu-popup",
|
|
2193
1924
|
className: "data-[ending-style]:easing-[ease] xs:w-(--popup-width) relative h-(--popup-height) w-(--popup-width) origin-(--transform-origin) rounded-sm bg-popover text-popover-foreground border border-frame-edge shadow-frame transition-[opacity,transform,width,height,translate] duration-[0.35s] ease-[cubic-bezier(0.22,1,0.36,1)] outline-none data-ending-style:opacity-0 data-ending-style:duration-150 data-starting-style:opacity-0",
|
|
2194
|
-
children: /* @__PURE__ */
|
|
1925
|
+
children: /* @__PURE__ */ jsx18(NavigationMenuPrimitive.Viewport, {
|
|
2195
1926
|
className: "relative size-full overflow-hidden"
|
|
2196
1927
|
})
|
|
2197
1928
|
})
|
|
@@ -2200,7 +1931,7 @@ function NavigationMenuPositioner2({
|
|
|
2200
1931
|
});
|
|
2201
1932
|
}
|
|
2202
1933
|
function NavigationMenuLink2({ density, className, ...props }) {
|
|
2203
|
-
return /* @__PURE__ */
|
|
1934
|
+
return /* @__PURE__ */ jsx18(NavigationMenuPrimitive.Link, {
|
|
2204
1935
|
"data-density": density,
|
|
2205
1936
|
"data-slot": "navigation-menu-link",
|
|
2206
1937
|
className: (state) => cn2("flex items-center gap-2 rounded-sm p-2 text-sm transition-colors outline-none hover:bg-muted focus:bg-muted focus-visible:ring-1 focus-visible:ring-ring focus-visible:outline-1 in-data-[slot=navigation-menu-content]:rounded-md data-active:bg-muted/50 data-active:hover:bg-muted data-active:focus:bg-muted [&_svg:not([class*='size-'])]:size-4", typeof className === "function" ? className(state) : className),
|
|
@@ -2213,32 +1944,32 @@ function NavigationMenuIndicator2({
|
|
|
2213
1944
|
children,
|
|
2214
1945
|
...props
|
|
2215
1946
|
}) {
|
|
2216
|
-
return /* @__PURE__ */
|
|
1947
|
+
return /* @__PURE__ */ jsx18(NavigationMenuPrimitive.Icon, {
|
|
2217
1948
|
"data-density": density,
|
|
2218
1949
|
"data-slot": "navigation-menu-indicator",
|
|
2219
1950
|
className: (state) => cn2("ms-1 inline-flex size-3 shrink-0 items-center justify-center transition-transform duration-120 data-popup-open:rotate-180 [&_svg]:size-full", typeof className === "function" ? className(state) : className),
|
|
2220
1951
|
...props,
|
|
2221
|
-
children: children ?? /* @__PURE__ */
|
|
1952
|
+
children: children ?? /* @__PURE__ */ jsx18(ChevronDownIcon3, {})
|
|
2222
1953
|
});
|
|
2223
1954
|
}
|
|
2224
1955
|
// src/components/Toast.tsx
|
|
2225
1956
|
import { Toast as ToastPrimitive } from "@base-ui/react/toast";
|
|
2226
|
-
import { CircleCheckIcon, InfoIcon, TriangleAlertIcon, OctagonXIcon, LoaderCircleIcon, XIcon
|
|
2227
|
-
import { jsx as
|
|
1957
|
+
import { CircleCheckIcon, InfoIcon, TriangleAlertIcon, OctagonXIcon, LoaderCircleIcon, XIcon } from "lucide-react";
|
|
1958
|
+
import { jsx as jsx19, jsxs as jsxs13, Fragment } from "react/jsx-runtime";
|
|
2228
1959
|
function ToastProvider2(props) {
|
|
2229
|
-
return /* @__PURE__ */
|
|
1960
|
+
return /* @__PURE__ */ jsx19(ToastPrimitive.Provider, {
|
|
2230
1961
|
...props
|
|
2231
1962
|
});
|
|
2232
1963
|
}
|
|
2233
1964
|
function ToastPortal2({ container, ref, children, ...props }) {
|
|
2234
1965
|
const resolvedContainer = usePortalContainer2(container);
|
|
2235
1966
|
const portal = usePortalNode(ref);
|
|
2236
|
-
return /* @__PURE__ */
|
|
1967
|
+
return /* @__PURE__ */ jsx19(ToastPrimitive.Portal, {
|
|
2237
1968
|
"data-slot": "toast-portal",
|
|
2238
1969
|
container: resolvedContainer,
|
|
2239
1970
|
ref: portal.ref,
|
|
2240
1971
|
...props,
|
|
2241
|
-
children: /* @__PURE__ */
|
|
1972
|
+
children: /* @__PURE__ */ jsx19(PortalProvider2, {
|
|
2242
1973
|
container: portal.node,
|
|
2243
1974
|
children
|
|
2244
1975
|
})
|
|
@@ -2247,7 +1978,7 @@ function ToastPortal2({ container, ref, children, ...props }) {
|
|
|
2247
1978
|
function ToastViewport2({ density, dir, className, ...props }) {
|
|
2248
1979
|
const resolvedDensity = useDensity(density);
|
|
2249
1980
|
const inheritedDirection = useDirection2();
|
|
2250
|
-
return /* @__PURE__ */
|
|
1981
|
+
return /* @__PURE__ */ jsx19(ToastPrimitive.Viewport, {
|
|
2251
1982
|
dir: dir ?? inheritedDirection,
|
|
2252
1983
|
"data-density": resolvedDensity,
|
|
2253
1984
|
"data-slot": "toast-viewport",
|
|
@@ -2256,7 +1987,7 @@ function ToastViewport2({ density, dir, className, ...props }) {
|
|
|
2256
1987
|
});
|
|
2257
1988
|
}
|
|
2258
1989
|
function Toast2({ density, className, ...props }) {
|
|
2259
|
-
return /* @__PURE__ */
|
|
1990
|
+
return /* @__PURE__ */ jsx19(ToastPrimitive.Root, {
|
|
2260
1991
|
"data-density": density,
|
|
2261
1992
|
"data-slot": "toast",
|
|
2262
1993
|
className: (state) => cn2("group/toast pointer-events-auto absolute right-0 bottom-0 w-full rounded-md border border-frame-edge bg-popover text-popover-foreground shadow-frame outline-none select-none focus-visible:ring-1 focus-visible:ring-ring [--offset-y:calc(var(--toast-offset-y)*-1-var(--toast-index)*var(--spacing-panel))] [transform:translateX(var(--toast-swipe-movement-x))_translateY(calc(var(--offset-y)+var(--toast-swipe-movement-y)))] transition-[transform,opacity] duration-120 ease-out data-limited:opacity-0 data-starting-style:opacity-0 data-ending-style:opacity-0 motion-reduce:transition-none", typeof className === "function" ? className(state) : className),
|
|
@@ -2264,21 +1995,21 @@ function Toast2({ density, className, ...props }) {
|
|
|
2264
1995
|
});
|
|
2265
1996
|
}
|
|
2266
1997
|
function ToastContent2({ className, ...props }) {
|
|
2267
|
-
return /* @__PURE__ */
|
|
1998
|
+
return /* @__PURE__ */ jsx19(ToastPrimitive.Content, {
|
|
2268
1999
|
"data-slot": "toast-content",
|
|
2269
2000
|
className: (state) => cn2("flex items-center gap-control-gap p-panel", typeof className === "function" ? className(state) : className),
|
|
2270
2001
|
...props
|
|
2271
2002
|
});
|
|
2272
2003
|
}
|
|
2273
2004
|
function ToastTitle2({ className, ...props }) {
|
|
2274
|
-
return /* @__PURE__ */
|
|
2005
|
+
return /* @__PURE__ */ jsx19(ToastPrimitive.Title, {
|
|
2275
2006
|
"data-slot": "toast-title",
|
|
2276
2007
|
className: (state) => cn2("text-sm font-medium", typeof className === "function" ? className(state) : className),
|
|
2277
2008
|
...props
|
|
2278
2009
|
});
|
|
2279
2010
|
}
|
|
2280
2011
|
function ToastDescription2({ className, ...props }) {
|
|
2281
|
-
return /* @__PURE__ */
|
|
2012
|
+
return /* @__PURE__ */ jsx19(ToastPrimitive.Description, {
|
|
2282
2013
|
"data-slot": "toast-description",
|
|
2283
2014
|
className: (state) => cn2("text-sm text-muted-foreground", typeof className === "function" ? className(state) : className),
|
|
2284
2015
|
...props
|
|
@@ -2286,13 +2017,13 @@ function ToastDescription2({ className, ...props }) {
|
|
|
2286
2017
|
}
|
|
2287
2018
|
function ToastAction2({
|
|
2288
2019
|
className,
|
|
2289
|
-
render = /* @__PURE__ */
|
|
2020
|
+
render = /* @__PURE__ */ jsx19(Button2, {
|
|
2290
2021
|
variant: "outline",
|
|
2291
2022
|
size: "sm"
|
|
2292
2023
|
}),
|
|
2293
2024
|
...props
|
|
2294
2025
|
}) {
|
|
2295
|
-
return /* @__PURE__ */
|
|
2026
|
+
return /* @__PURE__ */ jsx19(ToastPrimitive.Action, {
|
|
2296
2027
|
"data-slot": "toast-action",
|
|
2297
2028
|
render,
|
|
2298
2029
|
className: (state) => cn2("shrink-0", typeof className === "function" ? className(state) : className),
|
|
@@ -2302,19 +2033,19 @@ function ToastAction2({
|
|
|
2302
2033
|
function ToastClose2({
|
|
2303
2034
|
className,
|
|
2304
2035
|
children,
|
|
2305
|
-
render = /* @__PURE__ */
|
|
2036
|
+
render = /* @__PURE__ */ jsx19(Button2, {
|
|
2306
2037
|
variant: "ghost",
|
|
2307
2038
|
size: "icon-sm"
|
|
2308
2039
|
}),
|
|
2309
2040
|
...props
|
|
2310
2041
|
}) {
|
|
2311
|
-
return /* @__PURE__ */
|
|
2042
|
+
return /* @__PURE__ */ jsx19(ToastPrimitive.Close, {
|
|
2312
2043
|
"data-slot": "toast-close",
|
|
2313
2044
|
"aria-label": "Close toast",
|
|
2314
2045
|
render,
|
|
2315
2046
|
className: (state) => cn2("relative shrink-0 text-muted-foreground hover:text-foreground", typeof className === "function" ? className(state) : className),
|
|
2316
2047
|
...props,
|
|
2317
|
-
children: children ?? /* @__PURE__ */
|
|
2048
|
+
children: children ?? /* @__PURE__ */ jsx19(XIcon, {
|
|
2318
2049
|
"aria-hidden": "true"
|
|
2319
2050
|
})
|
|
2320
2051
|
});
|
|
@@ -2322,24 +2053,24 @@ function ToastClose2({
|
|
|
2322
2053
|
function ToastIcon({ type }) {
|
|
2323
2054
|
switch (type) {
|
|
2324
2055
|
case "success":
|
|
2325
|
-
return /* @__PURE__ */
|
|
2056
|
+
return /* @__PURE__ */ jsx19(CircleCheckIcon, {
|
|
2326
2057
|
"aria-hidden": "true"
|
|
2327
2058
|
});
|
|
2328
2059
|
case "info":
|
|
2329
|
-
return /* @__PURE__ */
|
|
2060
|
+
return /* @__PURE__ */ jsx19(InfoIcon, {
|
|
2330
2061
|
"aria-hidden": "true"
|
|
2331
2062
|
});
|
|
2332
2063
|
case "warning":
|
|
2333
|
-
return /* @__PURE__ */
|
|
2064
|
+
return /* @__PURE__ */ jsx19(TriangleAlertIcon, {
|
|
2334
2065
|
"aria-hidden": "true"
|
|
2335
2066
|
});
|
|
2336
2067
|
case "error":
|
|
2337
|
-
return /* @__PURE__ */
|
|
2068
|
+
return /* @__PURE__ */ jsx19(OctagonXIcon, {
|
|
2338
2069
|
"aria-hidden": "true",
|
|
2339
2070
|
className: "text-destructive"
|
|
2340
2071
|
});
|
|
2341
2072
|
case "loading":
|
|
2342
|
-
return /* @__PURE__ */
|
|
2073
|
+
return /* @__PURE__ */ jsx19(LoaderCircleIcon, {
|
|
2343
2074
|
"aria-hidden": "true",
|
|
2344
2075
|
className: "animate-spin motion-reduce:animate-none"
|
|
2345
2076
|
});
|
|
@@ -2349,41 +2080,41 @@ function ToastIcon({ type }) {
|
|
|
2349
2080
|
}
|
|
2350
2081
|
function ToastList() {
|
|
2351
2082
|
const { toasts } = ToastPrimitive.useToastManager();
|
|
2352
|
-
return /* @__PURE__ */
|
|
2353
|
-
children: toasts.map((toastItem) => /* @__PURE__ */
|
|
2083
|
+
return /* @__PURE__ */ jsx19(Fragment, {
|
|
2084
|
+
children: toasts.map((toastItem) => /* @__PURE__ */ jsx19(Toast2, {
|
|
2354
2085
|
toast: toastItem,
|
|
2355
|
-
children: /* @__PURE__ */
|
|
2086
|
+
children: /* @__PURE__ */ jsxs13(ToastContent2, {
|
|
2356
2087
|
children: [
|
|
2357
|
-
/* @__PURE__ */
|
|
2088
|
+
/* @__PURE__ */ jsx19("span", {
|
|
2358
2089
|
"data-slot": "toast-icon",
|
|
2359
2090
|
className: "shrink-0 empty:hidden [&_svg]:size-4",
|
|
2360
|
-
children: /* @__PURE__ */
|
|
2091
|
+
children: /* @__PURE__ */ jsx19(ToastIcon, {
|
|
2361
2092
|
type: toastItem.type
|
|
2362
2093
|
})
|
|
2363
2094
|
}),
|
|
2364
|
-
/* @__PURE__ */
|
|
2095
|
+
/* @__PURE__ */ jsxs13("div", {
|
|
2365
2096
|
className: "flex min-w-0 flex-1 flex-col gap-1",
|
|
2366
2097
|
children: [
|
|
2367
|
-
/* @__PURE__ */
|
|
2368
|
-
/* @__PURE__ */
|
|
2098
|
+
/* @__PURE__ */ jsx19(ToastTitle2, {}),
|
|
2099
|
+
/* @__PURE__ */ jsx19(ToastDescription2, {})
|
|
2369
2100
|
]
|
|
2370
2101
|
}),
|
|
2371
|
-
/* @__PURE__ */
|
|
2372
|
-
/* @__PURE__ */
|
|
2102
|
+
/* @__PURE__ */ jsx19(ToastAction2, {}),
|
|
2103
|
+
/* @__PURE__ */ jsx19(ToastClose2, {})
|
|
2373
2104
|
]
|
|
2374
2105
|
})
|
|
2375
2106
|
}, toastItem.id))
|
|
2376
2107
|
});
|
|
2377
2108
|
}
|
|
2378
2109
|
function ToastToaster2({ children, density, ...props }) {
|
|
2379
|
-
return /* @__PURE__ */
|
|
2110
|
+
return /* @__PURE__ */ jsxs13(ToastProvider2, {
|
|
2380
2111
|
...props,
|
|
2381
2112
|
children: [
|
|
2382
2113
|
children,
|
|
2383
|
-
/* @__PURE__ */
|
|
2384
|
-
children: /* @__PURE__ */
|
|
2114
|
+
/* @__PURE__ */ jsx19(ToastPortal2, {
|
|
2115
|
+
children: /* @__PURE__ */ jsx19(ToastViewport2, {
|
|
2385
2116
|
density,
|
|
2386
|
-
children: /* @__PURE__ */
|
|
2117
|
+
children: /* @__PURE__ */ jsx19(ToastList, {})
|
|
2387
2118
|
})
|
|
2388
2119
|
})
|
|
2389
2120
|
]
|
|
@@ -2399,7 +2130,7 @@ function useToastManager2() {
|
|
|
2399
2130
|
import { mergeProps as mergeProps6 } from "@base-ui/react/merge-props";
|
|
2400
2131
|
import { useRender as useRender6 } from "@base-ui/react/use-render";
|
|
2401
2132
|
import { cva as cva4 } from "class-variance-authority";
|
|
2402
|
-
import { jsx as
|
|
2133
|
+
import { jsx as jsx20 } from "react/jsx-runtime";
|
|
2403
2134
|
var markerVariants2 = cva4("group/marker relative flex min-h-4 w-full items-center gap-control-gap text-start text-sm text-muted-foreground [&_svg:not([class*='size-'])]:size-4 [a]:underline [a]:underline-offset-3 [a]:hover:text-foreground [&:is(a,button)]:outline-none [&:is(a,button)]:focus-visible:outline-1 [&:is(a,button)]:focus-visible:outline-ring", {
|
|
2404
2135
|
variants: {
|
|
2405
2136
|
variant: {
|
|
@@ -2418,7 +2149,7 @@ function Marker2({ density, className, variant = "default", render, ...props })
|
|
|
2418
2149
|
});
|
|
2419
2150
|
}
|
|
2420
2151
|
function MarkerIcon2({ density, className, ...props }) {
|
|
2421
|
-
return /* @__PURE__ */
|
|
2152
|
+
return /* @__PURE__ */ jsx20("span", {
|
|
2422
2153
|
"data-density": density,
|
|
2423
2154
|
"data-slot": "marker-icon",
|
|
2424
2155
|
"aria-hidden": "true",
|
|
@@ -2427,7 +2158,7 @@ function MarkerIcon2({ density, className, ...props }) {
|
|
|
2427
2158
|
});
|
|
2428
2159
|
}
|
|
2429
2160
|
function MarkerContent2({ density, className, ...props }) {
|
|
2430
|
-
return /* @__PURE__ */
|
|
2161
|
+
return /* @__PURE__ */ jsx20("span", {
|
|
2431
2162
|
"data-density": density,
|
|
2432
2163
|
"data-slot": "marker-content",
|
|
2433
2164
|
className: cn2("min-w-0 wrap-break-word group-data-[variant=separator]/marker:text-center [&>a]:underline [&>a]:underline-offset-3 [&>a:hover]:text-foreground", className),
|
|
@@ -2438,9 +2169,9 @@ function MarkerContent2({ density, className, ...props }) {
|
|
|
2438
2169
|
import { mergeProps as mergeProps7 } from "@base-ui/react/merge-props";
|
|
2439
2170
|
import { useRender as useRender7 } from "@base-ui/react/use-render";
|
|
2440
2171
|
import { cva as cva5 } from "class-variance-authority";
|
|
2441
|
-
import { jsx as
|
|
2172
|
+
import { jsx as jsx21 } from "react/jsx-runtime";
|
|
2442
2173
|
function BubbleGroup2({ density, className, ...props }) {
|
|
2443
|
-
return /* @__PURE__ */
|
|
2174
|
+
return /* @__PURE__ */ jsx21("div", {
|
|
2444
2175
|
"data-density": density,
|
|
2445
2176
|
"data-slot": "bubble-group",
|
|
2446
2177
|
className: cn2("flex min-w-0 flex-col gap-control-gap", className),
|
|
@@ -2462,7 +2193,7 @@ var bubbleVariants = cva5("group/bubble relative flex w-fit max-w-[80%] min-w-0
|
|
|
2462
2193
|
defaultVariants: { variant: "default" }
|
|
2463
2194
|
});
|
|
2464
2195
|
function Bubble2({ density, variant = "default", align = "start", className, ...props }) {
|
|
2465
|
-
return /* @__PURE__ */
|
|
2196
|
+
return /* @__PURE__ */ jsx21("div", {
|
|
2466
2197
|
"data-density": density,
|
|
2467
2198
|
"data-slot": "bubble",
|
|
2468
2199
|
"data-variant": variant,
|
|
@@ -2495,7 +2226,7 @@ function BubbleReactions2({
|
|
|
2495
2226
|
className,
|
|
2496
2227
|
...props
|
|
2497
2228
|
}) {
|
|
2498
|
-
return /* @__PURE__ */
|
|
2229
|
+
return /* @__PURE__ */ jsx21("div", {
|
|
2499
2230
|
"data-density": density,
|
|
2500
2231
|
"data-slot": "bubble-reactions",
|
|
2501
2232
|
"data-align": align,
|
|
@@ -2505,7 +2236,7 @@ function BubbleReactions2({
|
|
|
2505
2236
|
});
|
|
2506
2237
|
}
|
|
2507
2238
|
// src/components/Message.tsx
|
|
2508
|
-
import { useContext as useContext2, useLayoutEffect, useMemo as useMemo3, useRef
|
|
2239
|
+
import { useContext as useContext2, useLayoutEffect, useMemo as useMemo3, useRef, useState } from "react";
|
|
2509
2240
|
import { useRender as useRender8 } from "@base-ui/react/use-render";
|
|
2510
2241
|
|
|
2511
2242
|
// src/message/MessageContext.ts
|
|
@@ -2513,9 +2244,9 @@ import { createContext as createContext2 } from "react";
|
|
|
2513
2244
|
var MessageContext = createContext2(null);
|
|
2514
2245
|
|
|
2515
2246
|
// src/components/Message.tsx
|
|
2516
|
-
import { jsx as
|
|
2247
|
+
import { jsx as jsx22 } from "react/jsx-runtime";
|
|
2517
2248
|
function MessageGroup2({ density, className, ...props }) {
|
|
2518
|
-
return /* @__PURE__ */
|
|
2249
|
+
return /* @__PURE__ */ jsx22("div", {
|
|
2519
2250
|
"data-density": density,
|
|
2520
2251
|
"data-slot": "message-group",
|
|
2521
2252
|
className: cn2("flex min-w-0 flex-col gap-control-gap", className),
|
|
@@ -2526,9 +2257,9 @@ function Message2({ density, className, align = "start", style, ...props }) {
|
|
|
2526
2257
|
const [footerOffset, setFooterOffset] = useState(0);
|
|
2527
2258
|
const context = useMemo3(() => ({ setFooterOffset }), []);
|
|
2528
2259
|
const messageStyle = { ...style, "--message-footer-offset": `${footerOffset}px` };
|
|
2529
|
-
return /* @__PURE__ */
|
|
2260
|
+
return /* @__PURE__ */ jsx22(MessageContext.Provider, {
|
|
2530
2261
|
value: context,
|
|
2531
|
-
children: /* @__PURE__ */
|
|
2262
|
+
children: /* @__PURE__ */ jsx22("div", {
|
|
2532
2263
|
"data-density": density,
|
|
2533
2264
|
"data-slot": "message",
|
|
2534
2265
|
"data-align": align,
|
|
@@ -2539,7 +2270,7 @@ function Message2({ density, className, align = "start", style, ...props }) {
|
|
|
2539
2270
|
});
|
|
2540
2271
|
}
|
|
2541
2272
|
function MessageAvatar2({ density, className, ...props }) {
|
|
2542
|
-
return /* @__PURE__ */
|
|
2273
|
+
return /* @__PURE__ */ jsx22("div", {
|
|
2543
2274
|
"data-density": density,
|
|
2544
2275
|
"data-slot": "message-avatar",
|
|
2545
2276
|
className: cn2("flex w-fit min-w-8 shrink-0 items-center justify-center self-end overflow-hidden rounded-full bg-muted group-has-data-[slot=message-footer]/message:-translate-y-(--message-footer-offset)", className),
|
|
@@ -2547,7 +2278,7 @@ function MessageAvatar2({ density, className, ...props }) {
|
|
|
2547
2278
|
});
|
|
2548
2279
|
}
|
|
2549
2280
|
function MessageContent2({ density, className, ...props }) {
|
|
2550
|
-
return /* @__PURE__ */
|
|
2281
|
+
return /* @__PURE__ */ jsx22("div", {
|
|
2551
2282
|
"data-density": density,
|
|
2552
2283
|
"data-slot": "message-content",
|
|
2553
2284
|
className: cn2("flex w-full min-w-0 flex-col gap-control-gap wrap-break-word group-data-[align=end]/message:[&>[data-slot]:not([data-slot=message-header])]:self-end", className),
|
|
@@ -2555,7 +2286,7 @@ function MessageContent2({ density, className, ...props }) {
|
|
|
2555
2286
|
});
|
|
2556
2287
|
}
|
|
2557
2288
|
function MessageHeader2({ density, className, ...props }) {
|
|
2558
|
-
return /* @__PURE__ */
|
|
2289
|
+
return /* @__PURE__ */ jsx22("div", {
|
|
2559
2290
|
"data-density": density,
|
|
2560
2291
|
"data-slot": "message-header",
|
|
2561
2292
|
className: cn2("flex max-w-full min-w-0 items-center px-control-x text-xs font-medium text-muted-foreground group-has-data-[variant=ghost]/message:px-0", className),
|
|
@@ -2564,7 +2295,7 @@ function MessageHeader2({ density, className, ...props }) {
|
|
|
2564
2295
|
}
|
|
2565
2296
|
function MessageFooter2({ density, className, ...props }) {
|
|
2566
2297
|
const context = useContext2(MessageContext);
|
|
2567
|
-
const footerRef =
|
|
2298
|
+
const footerRef = useRef(null);
|
|
2568
2299
|
useLayoutEffect(() => {
|
|
2569
2300
|
const footer = footerRef.current;
|
|
2570
2301
|
const content = footer?.parentElement;
|
|
@@ -2597,7 +2328,7 @@ function MessageFooter2({ density, className, ...props }) {
|
|
|
2597
2328
|
import { mergeProps as mergeProps8 } from "@base-ui/react/merge-props";
|
|
2598
2329
|
import { useRender as useRender9 } from "@base-ui/react/use-render";
|
|
2599
2330
|
import { cva as cva6 } from "class-variance-authority";
|
|
2600
|
-
import { jsx as
|
|
2331
|
+
import { jsx as jsx23 } from "react/jsx-runtime";
|
|
2601
2332
|
var attachmentVariants = cva6("group/attachment relative flex w-fit max-w-full min-w-0 shrink-0 flex-wrap rounded-md border bg-card text-card-foreground transition-colors motion-reduce:transition-none focus-within:ring-1 focus-within:ring-ring has-[>a,>button]:hover:bg-muted/50 data-[state=error]:border-destructive data-[state=idle]:border-dashed", {
|
|
2602
2333
|
variants: {
|
|
2603
2334
|
size: {
|
|
@@ -2619,7 +2350,7 @@ function Attachment2({
|
|
|
2619
2350
|
orientation = "horizontal",
|
|
2620
2351
|
...props
|
|
2621
2352
|
}) {
|
|
2622
|
-
return /* @__PURE__ */
|
|
2353
|
+
return /* @__PURE__ */ jsx23("div", {
|
|
2623
2354
|
"data-slot": "attachment",
|
|
2624
2355
|
"data-density": density,
|
|
2625
2356
|
"data-state": state,
|
|
@@ -2639,7 +2370,7 @@ var attachmentMediaVariants = cva6("relative flex aspect-square w-10 shrink-0 it
|
|
|
2639
2370
|
defaultVariants: { variant: "icon" }
|
|
2640
2371
|
});
|
|
2641
2372
|
function AttachmentMedia2({ density, className, variant = "icon", ...props }) {
|
|
2642
|
-
return /* @__PURE__ */
|
|
2373
|
+
return /* @__PURE__ */ jsx23("div", {
|
|
2643
2374
|
"data-slot": "attachment-media",
|
|
2644
2375
|
"data-density": density,
|
|
2645
2376
|
"data-variant": variant,
|
|
@@ -2648,7 +2379,7 @@ function AttachmentMedia2({ density, className, variant = "icon", ...props }) {
|
|
|
2648
2379
|
});
|
|
2649
2380
|
}
|
|
2650
2381
|
function AttachmentContent2({ density, className, ...props }) {
|
|
2651
|
-
return /* @__PURE__ */
|
|
2382
|
+
return /* @__PURE__ */ jsx23("div", {
|
|
2652
2383
|
"data-slot": "attachment-content",
|
|
2653
2384
|
"data-density": density,
|
|
2654
2385
|
className: cn2("max-w-full min-w-0 flex-1 leading-tight group-data-[orientation=vertical]/attachment:px-1", className),
|
|
@@ -2656,7 +2387,7 @@ function AttachmentContent2({ density, className, ...props }) {
|
|
|
2656
2387
|
});
|
|
2657
2388
|
}
|
|
2658
2389
|
function AttachmentTitle2({ density, className, ...props }) {
|
|
2659
|
-
return /* @__PURE__ */
|
|
2390
|
+
return /* @__PURE__ */ jsx23("span", {
|
|
2660
2391
|
"data-slot": "attachment-title",
|
|
2661
2392
|
"data-density": density,
|
|
2662
2393
|
className: cn2("block max-w-full min-w-0 truncate font-medium group-data-[state=processing]/attachment:shimmer group-data-[state=uploading]/attachment:shimmer", className),
|
|
@@ -2664,7 +2395,7 @@ function AttachmentTitle2({ density, className, ...props }) {
|
|
|
2664
2395
|
});
|
|
2665
2396
|
}
|
|
2666
2397
|
function AttachmentDescription2({ density, className, ...props }) {
|
|
2667
|
-
return /* @__PURE__ */
|
|
2398
|
+
return /* @__PURE__ */ jsx23("span", {
|
|
2668
2399
|
"data-slot": "attachment-description",
|
|
2669
2400
|
"data-density": density,
|
|
2670
2401
|
className: cn2("mt-0.5 block max-w-full min-w-0 truncate text-xs text-muted-foreground group-data-[state=error]/attachment:text-destructive", className),
|
|
@@ -2672,7 +2403,7 @@ function AttachmentDescription2({ density, className, ...props }) {
|
|
|
2672
2403
|
});
|
|
2673
2404
|
}
|
|
2674
2405
|
function AttachmentActions2({ density, className, ...props }) {
|
|
2675
|
-
return /* @__PURE__ */
|
|
2406
|
+
return /* @__PURE__ */ jsx23("div", {
|
|
2676
2407
|
"data-slot": "attachment-actions",
|
|
2677
2408
|
"data-density": density,
|
|
2678
2409
|
className: cn2("relative z-20 flex shrink-0 items-center group-data-[orientation=vertical]/attachment:absolute group-data-[orientation=vertical]/attachment:top-3 group-data-[orientation=vertical]/attachment:end-3 group-data-[orientation=vertical]/attachment:gap-1", className),
|
|
@@ -2685,7 +2416,7 @@ function AttachmentAction2({
|
|
|
2685
2416
|
size = "icon-xs",
|
|
2686
2417
|
...props
|
|
2687
2418
|
}) {
|
|
2688
|
-
return /* @__PURE__ */
|
|
2419
|
+
return /* @__PURE__ */ jsx23(Button2, {
|
|
2689
2420
|
"data-slot": "attachment-action",
|
|
2690
2421
|
variant,
|
|
2691
2422
|
size,
|
|
@@ -2702,7 +2433,7 @@ function AttachmentTrigger2({ density, className, render, type, ...props }) {
|
|
|
2702
2433
|
});
|
|
2703
2434
|
}
|
|
2704
2435
|
function AttachmentGroup2({ density, className, ...props }) {
|
|
2705
|
-
return /* @__PURE__ */
|
|
2436
|
+
return /* @__PURE__ */ jsx23("div", {
|
|
2706
2437
|
"data-slot": "attachment-group",
|
|
2707
2438
|
"data-density": density,
|
|
2708
2439
|
className: cn2("flex min-w-0 scroll-fade-x snap-x snap-mandatory scroll-px-1 no-scrollbar gap-3 overflow-x-auto overscroll-x-contain py-1 *:data-[slot=attachment]:flex-none *:data-[slot=attachment]:snap-start", className),
|
|
@@ -2710,8 +2441,8 @@ function AttachmentGroup2({ density, className, ...props }) {
|
|
|
2710
2441
|
});
|
|
2711
2442
|
}
|
|
2712
2443
|
// src/components/InlineEdit.tsx
|
|
2713
|
-
import { useEffect as useEffect2, useRef as
|
|
2714
|
-
import { jsx as
|
|
2444
|
+
import { useEffect as useEffect2, useRef as useRef2, useState as useState2 } from "react";
|
|
2445
|
+
import { jsx as jsx24, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
2715
2446
|
function InlineEdit2({
|
|
2716
2447
|
label,
|
|
2717
2448
|
value,
|
|
@@ -2722,9 +2453,9 @@ function InlineEdit2({
|
|
|
2722
2453
|
onCommit,
|
|
2723
2454
|
onCancel
|
|
2724
2455
|
}) {
|
|
2725
|
-
const input =
|
|
2726
|
-
const isFinished =
|
|
2727
|
-
const shouldCancel =
|
|
2456
|
+
const input = useRef2(null);
|
|
2457
|
+
const isFinished = useRef2(false);
|
|
2458
|
+
const shouldCancel = useRef2(false);
|
|
2728
2459
|
const [isSaving, setSaving] = useState2(false);
|
|
2729
2460
|
const [error, setError] = useState2("");
|
|
2730
2461
|
useEffect2(() => {
|
|
@@ -2747,14 +2478,14 @@ function InlineEdit2({
|
|
|
2747
2478
|
setSaving(false);
|
|
2748
2479
|
}
|
|
2749
2480
|
};
|
|
2750
|
-
return /* @__PURE__ */
|
|
2481
|
+
return /* @__PURE__ */ jsxs14("form", {
|
|
2751
2482
|
className: "flex min-w-0 flex-col gap-1",
|
|
2752
2483
|
onSubmit: (event) => {
|
|
2753
2484
|
event.preventDefault();
|
|
2754
2485
|
save();
|
|
2755
2486
|
},
|
|
2756
2487
|
children: [
|
|
2757
|
-
/* @__PURE__ */
|
|
2488
|
+
/* @__PURE__ */ jsx24(Input2, {
|
|
2758
2489
|
ref: input,
|
|
2759
2490
|
density,
|
|
2760
2491
|
"aria-label": label,
|
|
@@ -2782,7 +2513,7 @@ function InlineEdit2({
|
|
|
2782
2513
|
}
|
|
2783
2514
|
}
|
|
2784
2515
|
}),
|
|
2785
|
-
error && /* @__PURE__ */
|
|
2516
|
+
error && /* @__PURE__ */ jsx24("p", {
|
|
2786
2517
|
role: "alert",
|
|
2787
2518
|
className: "text-xs text-destructive",
|
|
2788
2519
|
children: error
|
|
@@ -2794,28 +2525,28 @@ function InlineEdit2({
|
|
|
2794
2525
|
import { Radio } from "@base-ui/react/radio";
|
|
2795
2526
|
import { RadioGroup } from "@base-ui/react/radio-group";
|
|
2796
2527
|
import { StarIcon, CircleOffIcon } from "lucide-react";
|
|
2797
|
-
import { jsx as
|
|
2528
|
+
import { jsx as jsx25 } from "react/jsx-runtime";
|
|
2798
2529
|
function StarRating2({ label, value, disabled, density, onValueChange }) {
|
|
2799
|
-
return /* @__PURE__ */
|
|
2530
|
+
return /* @__PURE__ */ jsx25(RadioGroup, {
|
|
2800
2531
|
"aria-label": label,
|
|
2801
2532
|
value,
|
|
2802
2533
|
disabled,
|
|
2803
2534
|
"data-density": density,
|
|
2804
2535
|
className: "inline-flex w-fit shrink-0 items-center gap-0.5",
|
|
2805
2536
|
onValueChange,
|
|
2806
|
-
children: [1, 2, 3, 4, 5, 0].map((star) => /* @__PURE__ */
|
|
2537
|
+
children: [1, 2, 3, 4, 5, 0].map((star) => /* @__PURE__ */ jsx25(Radio.Root, {
|
|
2807
2538
|
value: star,
|
|
2808
2539
|
nativeButton: true,
|
|
2809
|
-
render: /* @__PURE__ */
|
|
2540
|
+
render: /* @__PURE__ */ jsx25("button", {
|
|
2810
2541
|
type: "button"
|
|
2811
2542
|
}),
|
|
2812
2543
|
"aria-label": star === 0 ? "Unrated" : `${star} ${star === 1 ? "star" : "stars"}`,
|
|
2813
2544
|
title: star === 0 ? "Clear rating" : `${star} stars`,
|
|
2814
2545
|
className: "inline-flex size-5 shrink-0 items-center justify-center rounded-sm text-muted-foreground outline-none hover:text-primary focus-visible:ring-1 focus-visible:ring-ring data-disabled:cursor-not-allowed data-disabled:opacity-50",
|
|
2815
|
-
children: star === 0 ? /* @__PURE__ */
|
|
2546
|
+
children: star === 0 ? /* @__PURE__ */ jsx25(CircleOffIcon, {
|
|
2816
2547
|
"aria-hidden": "true",
|
|
2817
2548
|
className: "size-3"
|
|
2818
|
-
}) : /* @__PURE__ */
|
|
2549
|
+
}) : /* @__PURE__ */ jsx25(StarIcon, {
|
|
2819
2550
|
"aria-hidden": "true",
|
|
2820
2551
|
className: star <= value ? "size-3.5 fill-primary text-primary" : "size-3.5"
|
|
2821
2552
|
})
|
|
@@ -2824,7 +2555,7 @@ function StarRating2({ label, value, disabled, density, onValueChange }) {
|
|
|
2824
2555
|
}
|
|
2825
2556
|
// src/components/ConfirmationDialog.tsx
|
|
2826
2557
|
import { useState as useState3 } from "react";
|
|
2827
|
-
import { jsx as
|
|
2558
|
+
import { jsx as jsx26, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
2828
2559
|
function ConfirmationDialog2({
|
|
2829
2560
|
open,
|
|
2830
2561
|
title,
|
|
@@ -2835,7 +2566,7 @@ function ConfirmationDialog2({
|
|
|
2835
2566
|
}) {
|
|
2836
2567
|
const [isPending, setPending] = useState3(false);
|
|
2837
2568
|
const [error, setError] = useState3("");
|
|
2838
|
-
return /* @__PURE__ */
|
|
2569
|
+
return /* @__PURE__ */ jsx26(AlertDialog2, {
|
|
2839
2570
|
open,
|
|
2840
2571
|
onOpenChange: (next) => {
|
|
2841
2572
|
if (!isPending) {
|
|
@@ -2843,31 +2574,31 @@ function ConfirmationDialog2({
|
|
|
2843
2574
|
onOpenChange(next);
|
|
2844
2575
|
}
|
|
2845
2576
|
},
|
|
2846
|
-
children: /* @__PURE__ */
|
|
2577
|
+
children: /* @__PURE__ */ jsxs15(AlertDialogContent2, {
|
|
2847
2578
|
children: [
|
|
2848
|
-
/* @__PURE__ */
|
|
2579
|
+
/* @__PURE__ */ jsxs15(AlertDialogHeader2, {
|
|
2849
2580
|
children: [
|
|
2850
|
-
/* @__PURE__ */
|
|
2581
|
+
/* @__PURE__ */ jsx26(AlertDialogTitle2, {
|
|
2851
2582
|
children: title
|
|
2852
2583
|
}),
|
|
2853
|
-
/* @__PURE__ */
|
|
2584
|
+
/* @__PURE__ */ jsx26(AlertDialogDescription2, {
|
|
2854
2585
|
children: description
|
|
2855
2586
|
})
|
|
2856
2587
|
]
|
|
2857
2588
|
}),
|
|
2858
|
-
error && /* @__PURE__ */
|
|
2589
|
+
error && /* @__PURE__ */ jsx26(Alert2, {
|
|
2859
2590
|
variant: "destructive",
|
|
2860
|
-
children: /* @__PURE__ */
|
|
2591
|
+
children: /* @__PURE__ */ jsx26(AlertDescription2, {
|
|
2861
2592
|
children: error
|
|
2862
2593
|
})
|
|
2863
2594
|
}),
|
|
2864
|
-
/* @__PURE__ */
|
|
2595
|
+
/* @__PURE__ */ jsxs15(AlertDialogFooter2, {
|
|
2865
2596
|
children: [
|
|
2866
|
-
/* @__PURE__ */
|
|
2597
|
+
/* @__PURE__ */ jsx26(AlertDialogCancel2, {
|
|
2867
2598
|
disabled: isPending,
|
|
2868
2599
|
children: "Cancel"
|
|
2869
2600
|
}),
|
|
2870
|
-
/* @__PURE__ */
|
|
2601
|
+
/* @__PURE__ */ jsx26(Button2, {
|
|
2871
2602
|
variant: "destructive",
|
|
2872
2603
|
disabled: isPending,
|
|
2873
2604
|
onClick: async () => {
|
|
@@ -2891,7 +2622,7 @@ function ConfirmationDialog2({
|
|
|
2891
2622
|
});
|
|
2892
2623
|
}
|
|
2893
2624
|
// src/components/ImagePicker.tsx
|
|
2894
|
-
import { useRef as
|
|
2625
|
+
import { useRef as useRef3 } from "react";
|
|
2895
2626
|
import { ImageIcon, UploadIcon } from "lucide-react";
|
|
2896
2627
|
|
|
2897
2628
|
// src/hooks/useObjectURL.ts
|
|
@@ -2911,32 +2642,32 @@ function useObjectURL(file) {
|
|
|
2911
2642
|
}
|
|
2912
2643
|
|
|
2913
2644
|
// src/components/ImagePicker.tsx
|
|
2914
|
-
import { jsx as
|
|
2645
|
+
import { jsx as jsx27, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
2915
2646
|
function ImagePicker2({ src, file, label, disabled, onFileChange, onClear }) {
|
|
2916
|
-
const input =
|
|
2647
|
+
const input = useRef3(null);
|
|
2917
2648
|
const preview = useObjectURL(file);
|
|
2918
2649
|
const image = file === null ? undefined : preview ?? src;
|
|
2919
|
-
return /* @__PURE__ */
|
|
2650
|
+
return /* @__PURE__ */ jsxs16("figure", {
|
|
2920
2651
|
className: "flex min-w-0 flex-col items-center gap-3",
|
|
2921
2652
|
"aria-label": label,
|
|
2922
2653
|
children: [
|
|
2923
|
-
/* @__PURE__ */
|
|
2654
|
+
/* @__PURE__ */ jsxs16(Avatar2, {
|
|
2924
2655
|
size: "preview",
|
|
2925
2656
|
shape: "square",
|
|
2926
2657
|
children: [
|
|
2927
|
-
/* @__PURE__ */
|
|
2658
|
+
/* @__PURE__ */ jsx27(AvatarImage2, {
|
|
2928
2659
|
src: image,
|
|
2929
2660
|
alt: label
|
|
2930
2661
|
}),
|
|
2931
|
-
/* @__PURE__ */
|
|
2932
|
-
children: /* @__PURE__ */
|
|
2662
|
+
/* @__PURE__ */ jsx27(AvatarFallback2, {
|
|
2663
|
+
children: /* @__PURE__ */ jsx27(ImageIcon, {
|
|
2933
2664
|
className: "size-12",
|
|
2934
2665
|
"aria-hidden": "true"
|
|
2935
2666
|
})
|
|
2936
2667
|
})
|
|
2937
2668
|
]
|
|
2938
2669
|
}),
|
|
2939
|
-
/* @__PURE__ */
|
|
2670
|
+
/* @__PURE__ */ jsx27("input", {
|
|
2940
2671
|
ref: input,
|
|
2941
2672
|
hidden: true,
|
|
2942
2673
|
type: "file",
|
|
@@ -2950,22 +2681,22 @@ function ImagePicker2({ src, file, label, disabled, onFileChange, onClear }) {
|
|
|
2950
2681
|
event.currentTarget.value = "";
|
|
2951
2682
|
}
|
|
2952
2683
|
}),
|
|
2953
|
-
/* @__PURE__ */
|
|
2684
|
+
/* @__PURE__ */ jsxs16("div", {
|
|
2954
2685
|
className: "flex flex-wrap justify-center gap-2",
|
|
2955
2686
|
children: [
|
|
2956
|
-
/* @__PURE__ */
|
|
2687
|
+
/* @__PURE__ */ jsxs16(Button2, {
|
|
2957
2688
|
type: "button",
|
|
2958
2689
|
variant: "outline",
|
|
2959
2690
|
disabled,
|
|
2960
2691
|
onClick: () => input.current?.click(),
|
|
2961
2692
|
children: [
|
|
2962
|
-
/* @__PURE__ */
|
|
2693
|
+
/* @__PURE__ */ jsx27(UploadIcon, {
|
|
2963
2694
|
"data-icon": "inline-start"
|
|
2964
2695
|
}),
|
|
2965
2696
|
"Upload image"
|
|
2966
2697
|
]
|
|
2967
2698
|
}),
|
|
2968
|
-
/* @__PURE__ */
|
|
2699
|
+
/* @__PURE__ */ jsx27(Button2, {
|
|
2969
2700
|
type: "button",
|
|
2970
2701
|
variant: "outline",
|
|
2971
2702
|
disabled: disabled || !image,
|
|
@@ -2977,102 +2708,11 @@ function ImagePicker2({ src, file, label, disabled, onFileChange, onClear }) {
|
|
|
2977
2708
|
]
|
|
2978
2709
|
});
|
|
2979
2710
|
}
|
|
2980
|
-
// src/components/NumberField.tsx
|
|
2981
|
-
import { NumberField as NumberFieldPrimitive } from "@base-ui/react/number-field";
|
|
2982
|
-
import { MinusIcon, PlusIcon, MoveHorizontalIcon } from "lucide-react";
|
|
2983
|
-
import { jsx as jsx30 } from "react/jsx-runtime";
|
|
2984
|
-
function NumberField2({ density, className, ...props }) {
|
|
2985
|
-
return /* @__PURE__ */ jsx30(NumberFieldPrimitive.Root, {
|
|
2986
|
-
"data-density": density,
|
|
2987
|
-
"data-slot": "number-field",
|
|
2988
|
-
className: (state) => cn2("flex min-w-0 flex-col gap-field-gap", typeof className === "function" ? className(state) : className),
|
|
2989
|
-
...props
|
|
2990
|
-
});
|
|
2991
|
-
}
|
|
2992
|
-
function NumberFieldGroup2({
|
|
2993
|
-
density,
|
|
2994
|
-
className,
|
|
2995
|
-
...props
|
|
2996
|
-
}) {
|
|
2997
|
-
return /* @__PURE__ */ jsx30(NumberFieldPrimitive.Group, {
|
|
2998
|
-
"data-density": density,
|
|
2999
|
-
"data-slot": "number-field-group",
|
|
3000
|
-
className: (state) => cn2("flex h-control min-w-0 items-stretch rounded-sm border border-input bg-secondary text-foreground transition-colors focus-within:border-ring focus-within:ring-1 focus-within:ring-ring data-disabled:opacity-50 motion-reduce:transition-none", typeof className === "function" ? className(state) : className),
|
|
3001
|
-
...props
|
|
3002
|
-
});
|
|
3003
|
-
}
|
|
3004
|
-
function NumberFieldInput2({
|
|
3005
|
-
density,
|
|
3006
|
-
className,
|
|
3007
|
-
...props
|
|
3008
|
-
}) {
|
|
3009
|
-
return /* @__PURE__ */ jsx30(NumberFieldPrimitive.Input, {
|
|
3010
|
-
"data-density": density,
|
|
3011
|
-
"data-slot": "number-field-input",
|
|
3012
|
-
className: (state) => cn2("min-w-0 flex-1 bg-transparent px-control-x text-center text-sm tabular-nums outline-none disabled:cursor-not-allowed", typeof className === "function" ? className(state) : className),
|
|
3013
|
-
...props
|
|
3014
|
-
});
|
|
3015
|
-
}
|
|
3016
|
-
function NumberFieldDecrement2({
|
|
3017
|
-
density,
|
|
3018
|
-
className,
|
|
3019
|
-
children = /* @__PURE__ */ jsx30(MinusIcon, {}),
|
|
3020
|
-
...props
|
|
3021
|
-
}) {
|
|
3022
|
-
return /* @__PURE__ */ jsx30(NumberFieldPrimitive.Decrement, {
|
|
3023
|
-
"data-density": density,
|
|
3024
|
-
"data-slot": "number-field-decrement",
|
|
3025
|
-
className: (state) => cn2("flex w-control shrink-0 items-center justify-center rounded-s-sm outline-none hover:bg-muted focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:size-3.5", typeof className === "function" ? className(state) : className),
|
|
3026
|
-
...props,
|
|
3027
|
-
children
|
|
3028
|
-
});
|
|
3029
|
-
}
|
|
3030
|
-
function NumberFieldIncrement2({
|
|
3031
|
-
density,
|
|
3032
|
-
className,
|
|
3033
|
-
children = /* @__PURE__ */ jsx30(PlusIcon, {}),
|
|
3034
|
-
...props
|
|
3035
|
-
}) {
|
|
3036
|
-
return /* @__PURE__ */ jsx30(NumberFieldPrimitive.Increment, {
|
|
3037
|
-
"data-density": density,
|
|
3038
|
-
"data-slot": "number-field-increment",
|
|
3039
|
-
className: (state) => cn2("flex w-control shrink-0 items-center justify-center rounded-e-sm outline-none hover:bg-muted focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:size-3.5", typeof className === "function" ? className(state) : className),
|
|
3040
|
-
...props,
|
|
3041
|
-
children
|
|
3042
|
-
});
|
|
3043
|
-
}
|
|
3044
|
-
function NumberFieldScrubArea2({
|
|
3045
|
-
density,
|
|
3046
|
-
className,
|
|
3047
|
-
...props
|
|
3048
|
-
}) {
|
|
3049
|
-
return /* @__PURE__ */ jsx30(NumberFieldPrimitive.ScrubArea, {
|
|
3050
|
-
"data-density": density,
|
|
3051
|
-
"data-slot": "number-field-scrub-area",
|
|
3052
|
-
className: (state) => cn2("flex w-fit cursor-ew-resize items-center gap-control-gap text-sm font-medium", typeof className === "function" ? className(state) : className),
|
|
3053
|
-
...props
|
|
3054
|
-
});
|
|
3055
|
-
}
|
|
3056
|
-
function NumberFieldScrubAreaCursor2({
|
|
3057
|
-
density,
|
|
3058
|
-
className,
|
|
3059
|
-
children = /* @__PURE__ */ jsx30(MoveHorizontalIcon, {}),
|
|
3060
|
-
...props
|
|
3061
|
-
}) {
|
|
3062
|
-
const resolvedDensity = useDensity(density);
|
|
3063
|
-
return /* @__PURE__ */ jsx30(NumberFieldPrimitive.ScrubAreaCursor, {
|
|
3064
|
-
"data-density": resolvedDensity,
|
|
3065
|
-
"data-slot": "number-field-scrub-area-cursor",
|
|
3066
|
-
className: (state) => cn2("z-50 font-sans text-sm text-foreground [&_svg]:size-5", typeof className === "function" ? className(state) : className),
|
|
3067
|
-
...props,
|
|
3068
|
-
children
|
|
3069
|
-
});
|
|
3070
|
-
}
|
|
3071
2711
|
// src/components/Meter.tsx
|
|
3072
2712
|
import { Meter as MeterPrimitive } from "@base-ui/react/meter";
|
|
3073
|
-
import { jsx as
|
|
2713
|
+
import { jsx as jsx28 } from "react/jsx-runtime";
|
|
3074
2714
|
function Meter2({ density, className, ...props }) {
|
|
3075
|
-
return /* @__PURE__ */
|
|
2715
|
+
return /* @__PURE__ */ jsx28(MeterPrimitive.Root, {
|
|
3076
2716
|
"data-density": density,
|
|
3077
2717
|
"data-slot": "meter",
|
|
3078
2718
|
className: (state) => cn2("flex min-w-0 flex-wrap items-center gap-field-gap", typeof className === "function" ? className(state) : className),
|
|
@@ -3080,7 +2720,7 @@ function Meter2({ density, className, ...props }) {
|
|
|
3080
2720
|
});
|
|
3081
2721
|
}
|
|
3082
2722
|
function MeterLabel2({ density, className, ...props }) {
|
|
3083
|
-
return /* @__PURE__ */
|
|
2723
|
+
return /* @__PURE__ */ jsx28(MeterPrimitive.Label, {
|
|
3084
2724
|
"data-density": density,
|
|
3085
2725
|
"data-slot": "meter-label",
|
|
3086
2726
|
className: (state) => cn2("text-sm font-medium", typeof className === "function" ? className(state) : className),
|
|
@@ -3088,7 +2728,7 @@ function MeterLabel2({ density, className, ...props }) {
|
|
|
3088
2728
|
});
|
|
3089
2729
|
}
|
|
3090
2730
|
function MeterValue2({ density, className, ...props }) {
|
|
3091
|
-
return /* @__PURE__ */
|
|
2731
|
+
return /* @__PURE__ */ jsx28(MeterPrimitive.Value, {
|
|
3092
2732
|
"data-density": density,
|
|
3093
2733
|
"data-slot": "meter-value",
|
|
3094
2734
|
className: (state) => cn2("ms-auto text-sm text-muted-foreground tabular-nums", typeof className === "function" ? className(state) : className),
|
|
@@ -3096,7 +2736,7 @@ function MeterValue2({ density, className, ...props }) {
|
|
|
3096
2736
|
});
|
|
3097
2737
|
}
|
|
3098
2738
|
function MeterTrack2({ density, className, ...props }) {
|
|
3099
|
-
return /* @__PURE__ */
|
|
2739
|
+
return /* @__PURE__ */ jsx28(MeterPrimitive.Track, {
|
|
3100
2740
|
"data-density": density,
|
|
3101
2741
|
"data-slot": "meter-track",
|
|
3102
2742
|
className: (state) => cn2("h-1 w-full overflow-hidden rounded-sm bg-muted", typeof className === "function" ? className(state) : className),
|
|
@@ -3108,7 +2748,7 @@ function MeterIndicator2({
|
|
|
3108
2748
|
className,
|
|
3109
2749
|
...props
|
|
3110
2750
|
}) {
|
|
3111
|
-
return /* @__PURE__ */
|
|
2751
|
+
return /* @__PURE__ */ jsx28(MeterPrimitive.Indicator, {
|
|
3112
2752
|
"data-density": density,
|
|
3113
2753
|
"data-slot": "meter-indicator",
|
|
3114
2754
|
className: (state) => cn2("h-full bg-primary transition-[width] motion-reduce:transition-none", typeof className === "function" ? className(state) : className),
|
|
@@ -3117,10 +2757,10 @@ function MeterIndicator2({
|
|
|
3117
2757
|
}
|
|
3118
2758
|
// src/components/Stepper.tsx
|
|
3119
2759
|
import { Tabs as TabsPrimitive } from "@base-ui/react/tabs";
|
|
3120
|
-
import { CheckIcon as
|
|
3121
|
-
import { jsx as
|
|
2760
|
+
import { CheckIcon as CheckIcon4 } from "lucide-react";
|
|
2761
|
+
import { jsx as jsx29 } from "react/jsx-runtime";
|
|
3122
2762
|
function Stepper2({ density, className, ...props }) {
|
|
3123
|
-
return /* @__PURE__ */
|
|
2763
|
+
return /* @__PURE__ */ jsx29(TabsPrimitive.Root, {
|
|
3124
2764
|
"data-density": density,
|
|
3125
2765
|
"data-slot": "stepper",
|
|
3126
2766
|
className: (state) => cn2("group/stepper flex min-w-0 flex-col gap-panel data-[orientation=vertical]:flex-row", typeof className === "function" ? className(state) : className),
|
|
@@ -3133,7 +2773,7 @@ function StepperList2({
|
|
|
3133
2773
|
activateOnFocus = false,
|
|
3134
2774
|
...props
|
|
3135
2775
|
}) {
|
|
3136
|
-
return /* @__PURE__ */
|
|
2776
|
+
return /* @__PURE__ */ jsx29(TabsPrimitive.List, {
|
|
3137
2777
|
"data-density": density,
|
|
3138
2778
|
"data-slot": "stepper-list",
|
|
3139
2779
|
activateOnFocus,
|
|
@@ -3142,7 +2782,7 @@ function StepperList2({
|
|
|
3142
2782
|
});
|
|
3143
2783
|
}
|
|
3144
2784
|
function StepperTrigger2({ density, className, ...props }) {
|
|
3145
|
-
return /* @__PURE__ */
|
|
2785
|
+
return /* @__PURE__ */ jsx29(TabsPrimitive.Tab, {
|
|
3146
2786
|
"data-density": density,
|
|
3147
2787
|
"data-slot": "stepper-trigger",
|
|
3148
2788
|
className: (state) => cn2("group/step flex min-h-control items-center gap-control-gap rounded-sm text-sm text-muted-foreground outline-none focus-visible:ring-1 focus-visible:ring-ring data-active:text-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:opacity-50", typeof className === "function" ? className(state) : className),
|
|
@@ -3150,17 +2790,17 @@ function StepperTrigger2({ density, className, ...props }) {
|
|
|
3150
2790
|
});
|
|
3151
2791
|
}
|
|
3152
2792
|
function StepperIndicator2({ completed = false, children, className, ...props }) {
|
|
3153
|
-
return /* @__PURE__ */
|
|
2793
|
+
return /* @__PURE__ */ jsx29("span", {
|
|
3154
2794
|
"aria-hidden": "true",
|
|
3155
2795
|
"data-slot": "stepper-indicator",
|
|
3156
2796
|
"data-completed": completed || undefined,
|
|
3157
2797
|
className: cn2("flex size-control shrink-0 items-center justify-center rounded-sm border border-input bg-secondary text-sm tabular-nums group-data-active/step:border-primary group-data-active/step:bg-primary group-data-active/step:text-primary-foreground data-completed:border-primary data-completed:text-primary [&_svg]:size-3.5", className),
|
|
3158
2798
|
...props,
|
|
3159
|
-
children: completed ? /* @__PURE__ */
|
|
2799
|
+
children: completed ? /* @__PURE__ */ jsx29(CheckIcon4, {}) : children
|
|
3160
2800
|
});
|
|
3161
2801
|
}
|
|
3162
2802
|
function StepperContent2({ density, className, ...props }) {
|
|
3163
|
-
return /* @__PURE__ */
|
|
2803
|
+
return /* @__PURE__ */ jsx29(TabsPrimitive.Panel, {
|
|
3164
2804
|
"data-density": density,
|
|
3165
2805
|
"data-slot": "stepper-content",
|
|
3166
2806
|
className: (state) => cn2("min-w-0 flex-1 outline-none focus-visible:ring-1 focus-visible:ring-ring", typeof className === "function" ? className(state) : className),
|
|
@@ -3168,7 +2808,7 @@ function StepperContent2({ density, className, ...props }) {
|
|
|
3168
2808
|
});
|
|
3169
2809
|
}
|
|
3170
2810
|
// src/components/AppShell.tsx
|
|
3171
|
-
import { jsx as
|
|
2811
|
+
import { jsx as jsx30, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
3172
2812
|
function AppShell2({
|
|
3173
2813
|
navigation,
|
|
3174
2814
|
brand,
|
|
@@ -3181,28 +2821,28 @@ function AppShell2({
|
|
|
3181
2821
|
label = "Application",
|
|
3182
2822
|
density
|
|
3183
2823
|
}) {
|
|
3184
|
-
return /* @__PURE__ */
|
|
2824
|
+
return /* @__PURE__ */ jsxs17(SidebarProvider2, {
|
|
3185
2825
|
density,
|
|
3186
2826
|
defaultOpen: defaultSidebarOpen,
|
|
3187
2827
|
className: "relative min-h-0",
|
|
3188
2828
|
style: { height },
|
|
3189
2829
|
"data-scroll": "none",
|
|
3190
2830
|
children: [
|
|
3191
|
-
/* @__PURE__ */
|
|
2831
|
+
/* @__PURE__ */ jsxs17(Sidebar2, {
|
|
3192
2832
|
collapsible: "icon",
|
|
3193
2833
|
position: "container",
|
|
3194
2834
|
children: [
|
|
3195
|
-
/* @__PURE__ */
|
|
2835
|
+
/* @__PURE__ */ jsx30(SidebarHeader2, {
|
|
3196
2836
|
children: brand
|
|
3197
2837
|
}),
|
|
3198
|
-
/* @__PURE__ */
|
|
3199
|
-
children: /* @__PURE__ */
|
|
2838
|
+
/* @__PURE__ */ jsx30(SidebarContent2, {
|
|
2839
|
+
children: /* @__PURE__ */ jsx30("nav", {
|
|
3200
2840
|
"aria-label": "Primary navigation",
|
|
3201
|
-
children: /* @__PURE__ */
|
|
3202
|
-
children: /* @__PURE__ */
|
|
3203
|
-
children: navigation.map((item) => /* @__PURE__ */
|
|
3204
|
-
children: /* @__PURE__ */
|
|
3205
|
-
render: /* @__PURE__ */
|
|
2841
|
+
children: /* @__PURE__ */ jsx30(SidebarGroup2, {
|
|
2842
|
+
children: /* @__PURE__ */ jsx30(SidebarMenu2, {
|
|
2843
|
+
children: navigation.map((item) => /* @__PURE__ */ jsx30(SidebarMenuItem2, {
|
|
2844
|
+
children: /* @__PURE__ */ jsxs17(SidebarMenuButton2, {
|
|
2845
|
+
render: /* @__PURE__ */ jsx30("a", {
|
|
3206
2846
|
href: item.href,
|
|
3207
2847
|
"aria-current": item.active ? "page" : undefined
|
|
3208
2848
|
}),
|
|
@@ -3210,7 +2850,7 @@ function AppShell2({
|
|
|
3210
2850
|
tooltip: item.label,
|
|
3211
2851
|
children: [
|
|
3212
2852
|
item.icon,
|
|
3213
|
-
/* @__PURE__ */
|
|
2853
|
+
/* @__PURE__ */ jsx30("span", {
|
|
3214
2854
|
children: item.label
|
|
3215
2855
|
})
|
|
3216
2856
|
]
|
|
@@ -3220,36 +2860,36 @@ function AppShell2({
|
|
|
3220
2860
|
})
|
|
3221
2861
|
})
|
|
3222
2862
|
}),
|
|
3223
|
-
sidebarFooter && /* @__PURE__ */
|
|
2863
|
+
sidebarFooter && /* @__PURE__ */ jsx30(SidebarFooter2, {
|
|
3224
2864
|
children: sidebarFooter
|
|
3225
2865
|
})
|
|
3226
2866
|
]
|
|
3227
2867
|
}),
|
|
3228
|
-
/* @__PURE__ */
|
|
2868
|
+
/* @__PURE__ */ jsxs17(SidebarInset2, {
|
|
3229
2869
|
"aria-label": label,
|
|
3230
2870
|
className: "min-h-0 min-w-0",
|
|
3231
2871
|
"data-scroll": "none",
|
|
3232
2872
|
children: [
|
|
3233
|
-
/* @__PURE__ */
|
|
2873
|
+
/* @__PURE__ */ jsxs17("header", {
|
|
3234
2874
|
"data-scroll": "none",
|
|
3235
2875
|
className: "flex shrink-0 items-center gap-control-gap border-b border-border p-panel",
|
|
3236
2876
|
children: [
|
|
3237
|
-
/* @__PURE__ */
|
|
3238
|
-
/* @__PURE__ */
|
|
2877
|
+
/* @__PURE__ */ jsx30(SidebarTrigger2, {}),
|
|
2878
|
+
/* @__PURE__ */ jsx30(Separator2, {
|
|
3239
2879
|
orientation: "vertical",
|
|
3240
2880
|
className: "h-control"
|
|
3241
2881
|
}),
|
|
3242
2882
|
header
|
|
3243
2883
|
]
|
|
3244
2884
|
}),
|
|
3245
|
-
/* @__PURE__ */
|
|
2885
|
+
/* @__PURE__ */ jsx30(ScrollArea2, {
|
|
3246
2886
|
className: "min-h-0 flex-1",
|
|
3247
|
-
children: /* @__PURE__ */
|
|
2887
|
+
children: /* @__PURE__ */ jsx30("div", {
|
|
3248
2888
|
className: "flex min-w-0 flex-col gap-panel p-panel",
|
|
3249
2889
|
children
|
|
3250
2890
|
})
|
|
3251
2891
|
}),
|
|
3252
|
-
footer && /* @__PURE__ */
|
|
2892
|
+
footer && /* @__PURE__ */ jsx30("footer", {
|
|
3253
2893
|
className: "shrink-0 border-t border-border p-panel",
|
|
3254
2894
|
"data-scroll": "none",
|
|
3255
2895
|
children: footer
|
|
@@ -3260,32 +2900,32 @@ function AppShell2({
|
|
|
3260
2900
|
});
|
|
3261
2901
|
}
|
|
3262
2902
|
// src/components/PageHeader.tsx
|
|
3263
|
-
import { jsx as
|
|
2903
|
+
import { jsx as jsx31, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
3264
2904
|
function PageHeader2({ title, description, breadcrumbs, actions, density }) {
|
|
3265
|
-
return /* @__PURE__ */
|
|
2905
|
+
return /* @__PURE__ */ jsxs18("header", {
|
|
3266
2906
|
"data-density": density,
|
|
3267
2907
|
"data-slot": "page-header",
|
|
3268
2908
|
"data-scroll": "none",
|
|
3269
2909
|
className: "flex min-w-0 flex-col gap-field-gap",
|
|
3270
2910
|
children: [
|
|
3271
2911
|
breadcrumbs,
|
|
3272
|
-
/* @__PURE__ */
|
|
2912
|
+
/* @__PURE__ */ jsxs18("div", {
|
|
3273
2913
|
className: "flex min-w-0 flex-wrap items-start justify-between gap-panel",
|
|
3274
2914
|
children: [
|
|
3275
|
-
/* @__PURE__ */
|
|
2915
|
+
/* @__PURE__ */ jsxs18("div", {
|
|
3276
2916
|
className: "min-w-0",
|
|
3277
2917
|
children: [
|
|
3278
|
-
/* @__PURE__ */
|
|
2918
|
+
/* @__PURE__ */ jsx31("h1", {
|
|
3279
2919
|
className: "text-xl font-semibold text-foreground",
|
|
3280
2920
|
children: title
|
|
3281
2921
|
}),
|
|
3282
|
-
description && /* @__PURE__ */
|
|
2922
|
+
description && /* @__PURE__ */ jsx31("div", {
|
|
3283
2923
|
className: "mt-1 text-sm text-muted-foreground",
|
|
3284
2924
|
children: description
|
|
3285
2925
|
})
|
|
3286
2926
|
]
|
|
3287
2927
|
}),
|
|
3288
|
-
actions && /* @__PURE__ */
|
|
2928
|
+
actions && /* @__PURE__ */ jsx31("div", {
|
|
3289
2929
|
className: "flex shrink-0 flex-wrap items-center gap-control-gap",
|
|
3290
2930
|
children: actions
|
|
3291
2931
|
})
|
|
@@ -3295,7 +2935,7 @@ function PageHeader2({ title, description, breadcrumbs, actions, density }) {
|
|
|
3295
2935
|
});
|
|
3296
2936
|
}
|
|
3297
2937
|
// src/components/WorkspaceSwitcher.tsx
|
|
3298
|
-
import { jsx as
|
|
2938
|
+
import { jsx as jsx32, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
3299
2939
|
function WorkspaceSwitcher2({
|
|
3300
2940
|
workspaces,
|
|
3301
2941
|
value,
|
|
@@ -3305,7 +2945,7 @@ function WorkspaceSwitcher2({
|
|
|
3305
2945
|
label = "Workspace",
|
|
3306
2946
|
density
|
|
3307
2947
|
}) {
|
|
3308
|
-
return /* @__PURE__ */
|
|
2948
|
+
return /* @__PURE__ */ jsxs19(Select2, {
|
|
3309
2949
|
items: workspaces,
|
|
3310
2950
|
value,
|
|
3311
2951
|
defaultValue: defaultValue ?? workspaces[0]?.value,
|
|
@@ -3315,15 +2955,15 @@ function WorkspaceSwitcher2({
|
|
|
3315
2955
|
},
|
|
3316
2956
|
disabled,
|
|
3317
2957
|
children: [
|
|
3318
|
-
/* @__PURE__ */
|
|
2958
|
+
/* @__PURE__ */ jsx32(SelectTrigger2, {
|
|
3319
2959
|
"aria-label": label,
|
|
3320
2960
|
density,
|
|
3321
|
-
children: /* @__PURE__ */
|
|
2961
|
+
children: /* @__PURE__ */ jsx32(SelectValue2, {})
|
|
3322
2962
|
}),
|
|
3323
|
-
/* @__PURE__ */
|
|
2963
|
+
/* @__PURE__ */ jsx32(SelectContent2, {
|
|
3324
2964
|
density,
|
|
3325
|
-
children: /* @__PURE__ */
|
|
3326
|
-
children: workspaces.map((workspace) => /* @__PURE__ */
|
|
2965
|
+
children: /* @__PURE__ */ jsx32(SelectGroup2, {
|
|
2966
|
+
children: workspaces.map((workspace) => /* @__PURE__ */ jsx32(SelectItem2, {
|
|
3327
2967
|
value: workspace.value,
|
|
3328
2968
|
children: workspace.label
|
|
3329
2969
|
}, workspace.value))
|
|
@@ -3333,52 +2973,52 @@ function WorkspaceSwitcher2({
|
|
|
3333
2973
|
});
|
|
3334
2974
|
}
|
|
3335
2975
|
// src/components/AccountMenu.tsx
|
|
3336
|
-
import { jsx as
|
|
2976
|
+
import { jsx as jsx33, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
3337
2977
|
function AccountMenu2({ name, email, image, onAction, density }) {
|
|
3338
|
-
return /* @__PURE__ */
|
|
2978
|
+
return /* @__PURE__ */ jsxs20(DropdownMenu2, {
|
|
3339
2979
|
children: [
|
|
3340
|
-
/* @__PURE__ */
|
|
3341
|
-
render: /* @__PURE__ */
|
|
2980
|
+
/* @__PURE__ */ jsxs20(DropdownMenuTrigger2, {
|
|
2981
|
+
render: /* @__PURE__ */ jsx33(Button2, {
|
|
3342
2982
|
variant: "ghost",
|
|
3343
2983
|
density
|
|
3344
2984
|
}),
|
|
3345
2985
|
"aria-label": `Account menu for ${name}`,
|
|
3346
2986
|
children: [
|
|
3347
|
-
/* @__PURE__ */
|
|
2987
|
+
/* @__PURE__ */ jsxs20(Avatar2, {
|
|
3348
2988
|
className: "size-control",
|
|
3349
2989
|
children: [
|
|
3350
|
-
/* @__PURE__ */
|
|
2990
|
+
/* @__PURE__ */ jsx33(AvatarImage2, {
|
|
3351
2991
|
src: image,
|
|
3352
2992
|
alt: ""
|
|
3353
2993
|
}),
|
|
3354
|
-
/* @__PURE__ */
|
|
2994
|
+
/* @__PURE__ */ jsx33(AvatarFallback2, {
|
|
3355
2995
|
children: name.slice(0, 2).toUpperCase()
|
|
3356
2996
|
})
|
|
3357
2997
|
]
|
|
3358
2998
|
}),
|
|
3359
|
-
/* @__PURE__ */
|
|
2999
|
+
/* @__PURE__ */ jsx33("span", {
|
|
3360
3000
|
children: name
|
|
3361
3001
|
})
|
|
3362
3002
|
]
|
|
3363
3003
|
}),
|
|
3364
|
-
/* @__PURE__ */
|
|
3004
|
+
/* @__PURE__ */ jsx33(DropdownMenuContent2, {
|
|
3365
3005
|
density,
|
|
3366
3006
|
align: "end",
|
|
3367
|
-
children: /* @__PURE__ */
|
|
3007
|
+
children: /* @__PURE__ */ jsxs20(DropdownMenuGroup2, {
|
|
3368
3008
|
children: [
|
|
3369
|
-
/* @__PURE__ */
|
|
3009
|
+
/* @__PURE__ */ jsx33(DropdownMenuLabel2, {
|
|
3370
3010
|
children: email ?? name
|
|
3371
3011
|
}),
|
|
3372
|
-
/* @__PURE__ */
|
|
3012
|
+
/* @__PURE__ */ jsx33(DropdownMenuItem2, {
|
|
3373
3013
|
onClick: () => onAction("profile"),
|
|
3374
3014
|
children: "Profile"
|
|
3375
3015
|
}),
|
|
3376
|
-
/* @__PURE__ */
|
|
3016
|
+
/* @__PURE__ */ jsx33(DropdownMenuItem2, {
|
|
3377
3017
|
onClick: () => onAction("settings"),
|
|
3378
3018
|
children: "Settings"
|
|
3379
3019
|
}),
|
|
3380
|
-
/* @__PURE__ */
|
|
3381
|
-
/* @__PURE__ */
|
|
3020
|
+
/* @__PURE__ */ jsx33(DropdownMenuSeparator2, {}),
|
|
3021
|
+
/* @__PURE__ */ jsx33(DropdownMenuItem2, {
|
|
3382
3022
|
onClick: () => onAction("sign-out"),
|
|
3383
3023
|
children: "Sign out"
|
|
3384
3024
|
})
|
|
@@ -3389,7 +3029,7 @@ function AccountMenu2({ name, email, image, onAction, density }) {
|
|
|
3389
3029
|
});
|
|
3390
3030
|
}
|
|
3391
3031
|
// src/components/StatCard.tsx
|
|
3392
|
-
import { jsx as
|
|
3032
|
+
import { jsx as jsx34, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
3393
3033
|
function StatCard2({
|
|
3394
3034
|
label,
|
|
3395
3035
|
value,
|
|
@@ -3400,40 +3040,40 @@ function StatCard2({
|
|
|
3400
3040
|
loading = false,
|
|
3401
3041
|
density
|
|
3402
3042
|
}) {
|
|
3403
|
-
return /* @__PURE__ */
|
|
3043
|
+
return /* @__PURE__ */ jsxs21(Card2, {
|
|
3404
3044
|
density,
|
|
3405
3045
|
"aria-label": label,
|
|
3406
3046
|
"aria-busy": loading,
|
|
3407
3047
|
children: [
|
|
3408
|
-
/* @__PURE__ */
|
|
3048
|
+
/* @__PURE__ */ jsxs21(CardHeader2, {
|
|
3409
3049
|
children: [
|
|
3410
|
-
/* @__PURE__ */
|
|
3050
|
+
/* @__PURE__ */ jsx34(CardTitle2, {
|
|
3411
3051
|
children: label
|
|
3412
3052
|
}),
|
|
3413
|
-
description && /* @__PURE__ */
|
|
3053
|
+
description && /* @__PURE__ */ jsx34(CardDescription2, {
|
|
3414
3054
|
children: description
|
|
3415
3055
|
})
|
|
3416
3056
|
]
|
|
3417
3057
|
}),
|
|
3418
|
-
/* @__PURE__ */
|
|
3419
|
-
children: /* @__PURE__ */
|
|
3058
|
+
/* @__PURE__ */ jsx34(CardContent2, {
|
|
3059
|
+
children: /* @__PURE__ */ jsxs21("div", {
|
|
3420
3060
|
className: "flex flex-wrap items-center justify-between gap-control-gap",
|
|
3421
3061
|
children: [
|
|
3422
|
-
loading ? /* @__PURE__ */
|
|
3062
|
+
loading ? /* @__PURE__ */ jsx34(Skeleton2, {
|
|
3423
3063
|
className: "h-8 w-24",
|
|
3424
3064
|
"aria-label": `Loading ${label}`
|
|
3425
|
-
}) : /* @__PURE__ */
|
|
3065
|
+
}) : /* @__PURE__ */ jsx34("div", {
|
|
3426
3066
|
className: "text-2xl font-semibold tabular-nums",
|
|
3427
3067
|
children: value
|
|
3428
3068
|
}),
|
|
3429
|
-
change && /* @__PURE__ */
|
|
3069
|
+
change && /* @__PURE__ */ jsx34(Badge2, {
|
|
3430
3070
|
variant: changeIntent === "positive" ? "success" : changeIntent === "negative" ? "destructive" : "secondary",
|
|
3431
3071
|
children: change
|
|
3432
3072
|
})
|
|
3433
3073
|
]
|
|
3434
3074
|
})
|
|
3435
3075
|
}),
|
|
3436
|
-
children && /* @__PURE__ */
|
|
3076
|
+
children && /* @__PURE__ */ jsx34(CardFooter2, {
|
|
3437
3077
|
children
|
|
3438
3078
|
})
|
|
3439
3079
|
]
|
|
@@ -3441,7 +3081,7 @@ function StatCard2({
|
|
|
3441
3081
|
}
|
|
3442
3082
|
// src/components/AuthForm.tsx
|
|
3443
3083
|
import { useId as useId2, useState as useState5 } from "react";
|
|
3444
|
-
import { jsx as
|
|
3084
|
+
import { jsx as jsx35, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
3445
3085
|
function AuthForm2({
|
|
3446
3086
|
mode = "sign-in",
|
|
3447
3087
|
onSubmit,
|
|
@@ -3471,33 +3111,33 @@ function AuthForm2({
|
|
|
3471
3111
|
setPending(false);
|
|
3472
3112
|
}
|
|
3473
3113
|
}
|
|
3474
|
-
return /* @__PURE__ */
|
|
3114
|
+
return /* @__PURE__ */ jsxs22(Card2, {
|
|
3475
3115
|
density,
|
|
3476
3116
|
children: [
|
|
3477
|
-
/* @__PURE__ */
|
|
3117
|
+
/* @__PURE__ */ jsxs22(CardHeader2, {
|
|
3478
3118
|
children: [
|
|
3479
|
-
/* @__PURE__ */
|
|
3119
|
+
/* @__PURE__ */ jsx35(CardTitle2, {
|
|
3480
3120
|
children: title
|
|
3481
3121
|
}),
|
|
3482
|
-
/* @__PURE__ */
|
|
3122
|
+
/* @__PURE__ */ jsx35(CardDescription2, {
|
|
3483
3123
|
children: mode === "reset-password" ? "Enter your email to request a password reset." : "Enter your details to continue."
|
|
3484
3124
|
})
|
|
3485
3125
|
]
|
|
3486
3126
|
}),
|
|
3487
|
-
/* @__PURE__ */
|
|
3488
|
-
children: /* @__PURE__ */
|
|
3127
|
+
/* @__PURE__ */ jsx35(CardContent2, {
|
|
3128
|
+
children: /* @__PURE__ */ jsx35("form", {
|
|
3489
3129
|
onSubmit: submit,
|
|
3490
3130
|
"aria-label": title,
|
|
3491
3131
|
"aria-busy": pending,
|
|
3492
|
-
children: /* @__PURE__ */
|
|
3132
|
+
children: /* @__PURE__ */ jsxs22(FieldGroup2, {
|
|
3493
3133
|
children: [
|
|
3494
|
-
mode === "sign-up" && /* @__PURE__ */
|
|
3134
|
+
mode === "sign-up" && /* @__PURE__ */ jsxs22(Field2, {
|
|
3495
3135
|
children: [
|
|
3496
|
-
/* @__PURE__ */
|
|
3136
|
+
/* @__PURE__ */ jsx35(FieldLabel2, {
|
|
3497
3137
|
htmlFor: id + "-name",
|
|
3498
3138
|
children: "Name"
|
|
3499
3139
|
}),
|
|
3500
|
-
/* @__PURE__ */
|
|
3140
|
+
/* @__PURE__ */ jsx35(Input2, {
|
|
3501
3141
|
id: id + "-name",
|
|
3502
3142
|
name: "name",
|
|
3503
3143
|
autoComplete: "name",
|
|
@@ -3506,13 +3146,13 @@ function AuthForm2({
|
|
|
3506
3146
|
})
|
|
3507
3147
|
]
|
|
3508
3148
|
}),
|
|
3509
|
-
/* @__PURE__ */
|
|
3149
|
+
/* @__PURE__ */ jsxs22(Field2, {
|
|
3510
3150
|
children: [
|
|
3511
|
-
/* @__PURE__ */
|
|
3151
|
+
/* @__PURE__ */ jsx35(FieldLabel2, {
|
|
3512
3152
|
htmlFor: id + "-email",
|
|
3513
3153
|
children: "Email"
|
|
3514
3154
|
}),
|
|
3515
|
-
/* @__PURE__ */
|
|
3155
|
+
/* @__PURE__ */ jsx35(Input2, {
|
|
3516
3156
|
id: id + "-email",
|
|
3517
3157
|
name: "email",
|
|
3518
3158
|
type: "email",
|
|
@@ -3522,13 +3162,13 @@ function AuthForm2({
|
|
|
3522
3162
|
})
|
|
3523
3163
|
]
|
|
3524
3164
|
}),
|
|
3525
|
-
mode !== "reset-password" && /* @__PURE__ */
|
|
3165
|
+
mode !== "reset-password" && /* @__PURE__ */ jsxs22(Field2, {
|
|
3526
3166
|
children: [
|
|
3527
|
-
/* @__PURE__ */
|
|
3167
|
+
/* @__PURE__ */ jsx35(FieldLabel2, {
|
|
3528
3168
|
htmlFor: id + "-password",
|
|
3529
3169
|
children: "Password"
|
|
3530
3170
|
}),
|
|
3531
|
-
/* @__PURE__ */
|
|
3171
|
+
/* @__PURE__ */ jsx35(Input2, {
|
|
3532
3172
|
id: id + "-password",
|
|
3533
3173
|
name: "password",
|
|
3534
3174
|
type: "password",
|
|
@@ -3537,27 +3177,27 @@ function AuthForm2({
|
|
|
3537
3177
|
required: true,
|
|
3538
3178
|
disabled: disabled || pending
|
|
3539
3179
|
}),
|
|
3540
|
-
mode === "sign-up" && /* @__PURE__ */
|
|
3180
|
+
mode === "sign-up" && /* @__PURE__ */ jsx35(FieldDescription2, {
|
|
3541
3181
|
children: "Use at least eight characters."
|
|
3542
3182
|
})
|
|
3543
3183
|
]
|
|
3544
3184
|
}),
|
|
3545
|
-
error && /* @__PURE__ */
|
|
3185
|
+
error && /* @__PURE__ */ jsxs22(Alert2, {
|
|
3546
3186
|
variant: "destructive",
|
|
3547
3187
|
children: [
|
|
3548
|
-
/* @__PURE__ */
|
|
3188
|
+
/* @__PURE__ */ jsx35(AlertTitle2, {
|
|
3549
3189
|
children: "Request failed"
|
|
3550
3190
|
}),
|
|
3551
|
-
/* @__PURE__ */
|
|
3191
|
+
/* @__PURE__ */ jsx35(AlertDescription2, {
|
|
3552
3192
|
children: error
|
|
3553
3193
|
})
|
|
3554
3194
|
]
|
|
3555
3195
|
}),
|
|
3556
|
-
/* @__PURE__ */
|
|
3196
|
+
/* @__PURE__ */ jsxs22(Button2, {
|
|
3557
3197
|
type: "submit",
|
|
3558
3198
|
disabled: disabled || pending,
|
|
3559
3199
|
children: [
|
|
3560
|
-
pending && /* @__PURE__ */
|
|
3200
|
+
pending && /* @__PURE__ */ jsx35(Spinner2, {
|
|
3561
3201
|
"data-icon": "inline-start"
|
|
3562
3202
|
}),
|
|
3563
3203
|
mode === "reset-password" ? "Send reset link" : title
|
|
@@ -3568,14 +3208,14 @@ function AuthForm2({
|
|
|
3568
3208
|
})
|
|
3569
3209
|
})
|
|
3570
3210
|
}),
|
|
3571
|
-
footer && /* @__PURE__ */
|
|
3211
|
+
footer && /* @__PURE__ */ jsx35(CardFooter2, {
|
|
3572
3212
|
children: footer
|
|
3573
3213
|
})
|
|
3574
3214
|
]
|
|
3575
3215
|
});
|
|
3576
3216
|
}
|
|
3577
3217
|
// src/components/SettingsSection.tsx
|
|
3578
|
-
import { jsx as
|
|
3218
|
+
import { jsx as jsx36, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
3579
3219
|
function SettingsSection2({
|
|
3580
3220
|
title,
|
|
3581
3221
|
description,
|
|
@@ -3588,48 +3228,48 @@ function SettingsSection2({
|
|
|
3588
3228
|
destructive = false,
|
|
3589
3229
|
density
|
|
3590
3230
|
}) {
|
|
3591
|
-
return /* @__PURE__ */
|
|
3231
|
+
return /* @__PURE__ */ jsx36("form", {
|
|
3592
3232
|
"aria-label": title,
|
|
3593
3233
|
onSubmit,
|
|
3594
3234
|
"aria-busy": pending,
|
|
3595
|
-
children: /* @__PURE__ */
|
|
3235
|
+
children: /* @__PURE__ */ jsxs23(Card2, {
|
|
3596
3236
|
density,
|
|
3597
3237
|
children: [
|
|
3598
|
-
/* @__PURE__ */
|
|
3238
|
+
/* @__PURE__ */ jsxs23(CardHeader2, {
|
|
3599
3239
|
children: [
|
|
3600
|
-
/* @__PURE__ */
|
|
3240
|
+
/* @__PURE__ */ jsx36(CardTitle2, {
|
|
3601
3241
|
children: title
|
|
3602
3242
|
}),
|
|
3603
|
-
description && /* @__PURE__ */
|
|
3243
|
+
description && /* @__PURE__ */ jsx36(CardDescription2, {
|
|
3604
3244
|
children: description
|
|
3605
3245
|
})
|
|
3606
3246
|
]
|
|
3607
3247
|
}),
|
|
3608
|
-
/* @__PURE__ */
|
|
3609
|
-
children: /* @__PURE__ */
|
|
3248
|
+
/* @__PURE__ */ jsx36(CardContent2, {
|
|
3249
|
+
children: /* @__PURE__ */ jsxs23("fieldset", {
|
|
3610
3250
|
disabled: disabled || pending,
|
|
3611
3251
|
className: "min-w-0 border-0 p-0",
|
|
3612
3252
|
children: [
|
|
3613
|
-
/* @__PURE__ */
|
|
3253
|
+
/* @__PURE__ */ jsx36("legend", {
|
|
3614
3254
|
className: "sr-only",
|
|
3615
3255
|
children: title
|
|
3616
3256
|
}),
|
|
3617
|
-
/* @__PURE__ */
|
|
3257
|
+
/* @__PURE__ */ jsx36(FieldGroup2, {
|
|
3618
3258
|
children
|
|
3619
3259
|
})
|
|
3620
3260
|
]
|
|
3621
3261
|
})
|
|
3622
3262
|
}),
|
|
3623
|
-
/* @__PURE__ */
|
|
3263
|
+
/* @__PURE__ */ jsxs23(CardFooter2, {
|
|
3624
3264
|
className: "flex flex-wrap items-center justify-between gap-control-gap",
|
|
3625
3265
|
children: [
|
|
3626
3266
|
footer,
|
|
3627
|
-
/* @__PURE__ */
|
|
3267
|
+
/* @__PURE__ */ jsxs23(Button2, {
|
|
3628
3268
|
type: "submit",
|
|
3629
3269
|
variant: destructive ? "destructive" : "default",
|
|
3630
3270
|
disabled: disabled || pending,
|
|
3631
3271
|
children: [
|
|
3632
|
-
pending && /* @__PURE__ */
|
|
3272
|
+
pending && /* @__PURE__ */ jsx36(Spinner2, {
|
|
3633
3273
|
"data-icon": "inline-start"
|
|
3634
3274
|
}),
|
|
3635
3275
|
saveLabel
|
|
@@ -3642,7 +3282,7 @@ function SettingsSection2({
|
|
|
3642
3282
|
});
|
|
3643
3283
|
}
|
|
3644
3284
|
// src/components/TagInput.tsx
|
|
3645
|
-
import { jsx as
|
|
3285
|
+
import { jsx as jsx37, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
3646
3286
|
function TagInput2({
|
|
3647
3287
|
label,
|
|
3648
3288
|
options,
|
|
@@ -3655,7 +3295,7 @@ function TagInput2({
|
|
|
3655
3295
|
density
|
|
3656
3296
|
}) {
|
|
3657
3297
|
const anchor = useComboboxAnchor2();
|
|
3658
|
-
return /* @__PURE__ */
|
|
3298
|
+
return /* @__PURE__ */ jsxs24(Combobox2, {
|
|
3659
3299
|
items: options,
|
|
3660
3300
|
multiple: true,
|
|
3661
3301
|
value,
|
|
@@ -3664,33 +3304,33 @@ function TagInput2({
|
|
|
3664
3304
|
disabled,
|
|
3665
3305
|
name,
|
|
3666
3306
|
children: [
|
|
3667
|
-
/* @__PURE__ */
|
|
3307
|
+
/* @__PURE__ */ jsxs24(ComboboxChips2, {
|
|
3668
3308
|
ref: anchor,
|
|
3669
3309
|
density,
|
|
3670
3310
|
children: [
|
|
3671
|
-
/* @__PURE__ */
|
|
3672
|
-
children: (values) => values.map((item) => /* @__PURE__ */
|
|
3311
|
+
/* @__PURE__ */ jsx37(ComboboxValue2, {
|
|
3312
|
+
children: (values) => values.map((item) => /* @__PURE__ */ jsx37(ComboboxChip2, {
|
|
3673
3313
|
removeLabel: `Remove ${item}`,
|
|
3674
3314
|
children: item
|
|
3675
3315
|
}, item))
|
|
3676
3316
|
}),
|
|
3677
|
-
/* @__PURE__ */
|
|
3317
|
+
/* @__PURE__ */ jsx37(ComboboxChipsInput2, {
|
|
3678
3318
|
"aria-label": label,
|
|
3679
3319
|
placeholder
|
|
3680
3320
|
})
|
|
3681
3321
|
]
|
|
3682
3322
|
}),
|
|
3683
|
-
/* @__PURE__ */
|
|
3323
|
+
/* @__PURE__ */ jsxs24(ComboboxContent2, {
|
|
3684
3324
|
anchor,
|
|
3685
3325
|
density,
|
|
3686
3326
|
children: [
|
|
3687
|
-
/* @__PURE__ */
|
|
3327
|
+
/* @__PURE__ */ jsx37(ComboboxEmpty2, {
|
|
3688
3328
|
children: "No matching tags."
|
|
3689
3329
|
}),
|
|
3690
|
-
/* @__PURE__ */
|
|
3691
|
-
children: /* @__PURE__ */
|
|
3692
|
-
children: /* @__PURE__ */
|
|
3693
|
-
children: (item) => /* @__PURE__ */
|
|
3330
|
+
/* @__PURE__ */ jsx37(ComboboxList2, {
|
|
3331
|
+
children: /* @__PURE__ */ jsx37(ComboboxGroup2, {
|
|
3332
|
+
children: /* @__PURE__ */ jsx37(ComboboxCollection2, {
|
|
3333
|
+
children: (item) => /* @__PURE__ */ jsx37(ComboboxItem2, {
|
|
3694
3334
|
value: item,
|
|
3695
3335
|
children: item
|
|
3696
3336
|
}, item)
|
|
@@ -3703,7 +3343,7 @@ function TagInput2({
|
|
|
3703
3343
|
});
|
|
3704
3344
|
}
|
|
3705
3345
|
// src/components/FilterBar.tsx
|
|
3706
|
-
import { jsx as
|
|
3346
|
+
import { jsx as jsx38, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
3707
3347
|
function FilterBar2({
|
|
3708
3348
|
label,
|
|
3709
3349
|
search,
|
|
@@ -3714,38 +3354,38 @@ function FilterBar2({
|
|
|
3714
3354
|
disabled,
|
|
3715
3355
|
density
|
|
3716
3356
|
}) {
|
|
3717
|
-
return /* @__PURE__ */
|
|
3357
|
+
return /* @__PURE__ */ jsxs25("fieldset", {
|
|
3718
3358
|
"aria-label": label,
|
|
3719
3359
|
disabled,
|
|
3720
3360
|
"data-density": density,
|
|
3721
3361
|
className: "flex min-w-0 flex-wrap items-center gap-2",
|
|
3722
3362
|
children: [
|
|
3723
|
-
/* @__PURE__ */
|
|
3363
|
+
/* @__PURE__ */ jsx38(Input2, {
|
|
3724
3364
|
"aria-label": `Search ${label}`,
|
|
3725
3365
|
type: "search",
|
|
3726
3366
|
value: search,
|
|
3727
3367
|
onChange: (event) => onSearchChange(event.target.value),
|
|
3728
3368
|
className: "min-w-40 flex-1"
|
|
3729
3369
|
}),
|
|
3730
|
-
filters.map((filter) => /* @__PURE__ */
|
|
3370
|
+
filters.map((filter) => /* @__PURE__ */ jsxs25(NativeSelect2, {
|
|
3731
3371
|
"aria-label": filter.label,
|
|
3732
3372
|
value: value[filter.id] ?? "",
|
|
3733
3373
|
onChange: (event) => onValueChange({ ...value, [filter.id]: event.target.value }),
|
|
3734
3374
|
children: [
|
|
3735
|
-
/* @__PURE__ */
|
|
3375
|
+
/* @__PURE__ */ jsxs25(NativeSelectOption2, {
|
|
3736
3376
|
value: "",
|
|
3737
3377
|
children: [
|
|
3738
3378
|
"All ",
|
|
3739
3379
|
filter.label.toLowerCase()
|
|
3740
3380
|
]
|
|
3741
3381
|
}),
|
|
3742
|
-
filter.options.map((option) => /* @__PURE__ */
|
|
3382
|
+
filter.options.map((option) => /* @__PURE__ */ jsx38(NativeSelectOption2, {
|
|
3743
3383
|
value: option.value,
|
|
3744
3384
|
children: option.label
|
|
3745
3385
|
}, option.value))
|
|
3746
3386
|
]
|
|
3747
3387
|
}, filter.id)),
|
|
3748
|
-
/* @__PURE__ */
|
|
3388
|
+
/* @__PURE__ */ jsx38(Button2, {
|
|
3749
3389
|
type: "button",
|
|
3750
3390
|
variant: "ghost",
|
|
3751
3391
|
disabled: !search && !Object.values(value).some(Boolean),
|
|
@@ -3759,7 +3399,7 @@ function FilterBar2({
|
|
|
3759
3399
|
});
|
|
3760
3400
|
}
|
|
3761
3401
|
// src/components/BarList.tsx
|
|
3762
|
-
import { jsx as
|
|
3402
|
+
import { jsx as jsx39, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
3763
3403
|
function BarList2({
|
|
3764
3404
|
label,
|
|
3765
3405
|
items,
|
|
@@ -3768,25 +3408,25 @@ function BarList2({
|
|
|
3768
3408
|
density
|
|
3769
3409
|
}) {
|
|
3770
3410
|
const max = Math.max(1, ...items.map((item) => item.value));
|
|
3771
|
-
return /* @__PURE__ */
|
|
3411
|
+
return /* @__PURE__ */ jsxs26("section", {
|
|
3772
3412
|
"aria-label": label,
|
|
3773
3413
|
"data-density": density,
|
|
3774
3414
|
children: [
|
|
3775
|
-
/* @__PURE__ */
|
|
3415
|
+
/* @__PURE__ */ jsx39("ul", {
|
|
3776
3416
|
className: "grid gap-3",
|
|
3777
|
-
children: items.map((item) => /* @__PURE__ */
|
|
3778
|
-
children: /* @__PURE__ */
|
|
3417
|
+
children: items.map((item) => /* @__PURE__ */ jsx39("li", {
|
|
3418
|
+
children: /* @__PURE__ */ jsxs26(Meter2, {
|
|
3779
3419
|
min: 0,
|
|
3780
3420
|
max,
|
|
3781
3421
|
value: item.value,
|
|
3782
3422
|
"aria-label": item.label,
|
|
3783
3423
|
format: { maximumFractionDigits: 2 },
|
|
3784
3424
|
children: [
|
|
3785
|
-
/* @__PURE__ */
|
|
3425
|
+
/* @__PURE__ */ jsxs26("div", {
|
|
3786
3426
|
className: "mb-1 flex items-center justify-between gap-3 text-sm",
|
|
3787
3427
|
children: [
|
|
3788
|
-
/* @__PURE__ */
|
|
3789
|
-
children: onItemSelect ? /* @__PURE__ */
|
|
3428
|
+
/* @__PURE__ */ jsx39(MeterLabel2, {
|
|
3429
|
+
children: onItemSelect ? /* @__PURE__ */ jsx39(Button2, {
|
|
3790
3430
|
type: "button",
|
|
3791
3431
|
variant: "link",
|
|
3792
3432
|
className: "h-auto p-0",
|
|
@@ -3794,19 +3434,19 @@ function BarList2({
|
|
|
3794
3434
|
children: item.label
|
|
3795
3435
|
}) : item.label
|
|
3796
3436
|
}),
|
|
3797
|
-
/* @__PURE__ */
|
|
3437
|
+
/* @__PURE__ */ jsx39(MeterValue2, {
|
|
3798
3438
|
children: () => valueFormatter(item.value)
|
|
3799
3439
|
})
|
|
3800
3440
|
]
|
|
3801
3441
|
}),
|
|
3802
|
-
/* @__PURE__ */
|
|
3803
|
-
children: /* @__PURE__ */
|
|
3442
|
+
/* @__PURE__ */ jsx39(MeterTrack2, {
|
|
3443
|
+
children: /* @__PURE__ */ jsx39(MeterIndicator2, {})
|
|
3804
3444
|
})
|
|
3805
3445
|
]
|
|
3806
3446
|
})
|
|
3807
3447
|
}, item.id))
|
|
3808
3448
|
}),
|
|
3809
|
-
!items.length && /* @__PURE__ */
|
|
3449
|
+
!items.length && /* @__PURE__ */ jsx39("p", {
|
|
3810
3450
|
role: "status",
|
|
3811
3451
|
className: "text-sm text-muted-foreground",
|
|
3812
3452
|
children: "No data available."
|
|
@@ -3815,23 +3455,23 @@ function BarList2({
|
|
|
3815
3455
|
});
|
|
3816
3456
|
}
|
|
3817
3457
|
// src/components/StatusTracker.tsx
|
|
3818
|
-
import { jsx as
|
|
3458
|
+
import { jsx as jsx40, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
3819
3459
|
var statusClasses = { success: "bg-success", warning: "bg-warning", error: "bg-destructive", unknown: "bg-muted" };
|
|
3820
3460
|
function StatusTracker2({ label, items, onItemSelect, density }) {
|
|
3821
|
-
return /* @__PURE__ */
|
|
3822
|
-
children: /* @__PURE__ */
|
|
3461
|
+
return /* @__PURE__ */ jsx40(TooltipProvider2, {
|
|
3462
|
+
children: /* @__PURE__ */ jsx40("div", {
|
|
3823
3463
|
role: "group",
|
|
3824
3464
|
"aria-label": label,
|
|
3825
3465
|
"data-density": density,
|
|
3826
3466
|
className: "flex min-w-0 gap-1",
|
|
3827
|
-
children: items.map((item) => /* @__PURE__ */
|
|
3467
|
+
children: items.map((item) => /* @__PURE__ */ jsxs27(Tooltip2, {
|
|
3828
3468
|
children: [
|
|
3829
|
-
/* @__PURE__ */
|
|
3469
|
+
/* @__PURE__ */ jsx40(TooltipTrigger2, {
|
|
3830
3470
|
"aria-label": `${item.label}: ${item.status}`,
|
|
3831
3471
|
onClick: () => onItemSelect?.(item),
|
|
3832
3472
|
className: cn2("h-8 min-w-2 flex-1 rounded-sm outline-none focus-visible:ring-2 focus-visible:ring-ring", statusClasses[item.status])
|
|
3833
3473
|
}),
|
|
3834
|
-
/* @__PURE__ */
|
|
3474
|
+
/* @__PURE__ */ jsxs27(TooltipContent2, {
|
|
3835
3475
|
children: [
|
|
3836
3476
|
item.label,
|
|
3837
3477
|
": ",
|
|
@@ -3844,7 +3484,7 @@ function StatusTracker2({ label, items, onItemSelect, density }) {
|
|
|
3844
3484
|
});
|
|
3845
3485
|
}
|
|
3846
3486
|
// src/components/DashboardLayout.tsx
|
|
3847
|
-
import { jsx as
|
|
3487
|
+
import { jsx as jsx41, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
3848
3488
|
function DashboardLayout2({
|
|
3849
3489
|
title,
|
|
3850
3490
|
description,
|
|
@@ -3855,24 +3495,24 @@ function DashboardLayout2({
|
|
|
3855
3495
|
footer,
|
|
3856
3496
|
density
|
|
3857
3497
|
}) {
|
|
3858
|
-
return /* @__PURE__ */
|
|
3498
|
+
return /* @__PURE__ */ jsxs28("div", {
|
|
3859
3499
|
"data-density": density,
|
|
3860
3500
|
"data-scroll": "none",
|
|
3861
3501
|
className: "grid min-w-0 gap-6",
|
|
3862
3502
|
children: [
|
|
3863
|
-
/* @__PURE__ */
|
|
3503
|
+
/* @__PURE__ */ jsx41(PageHeader2, {
|
|
3864
3504
|
title,
|
|
3865
3505
|
description,
|
|
3866
3506
|
actions
|
|
3867
3507
|
}),
|
|
3868
3508
|
filters,
|
|
3869
|
-
stats.length > 0 && /* @__PURE__ */
|
|
3509
|
+
stats.length > 0 && /* @__PURE__ */ jsx41("div", {
|
|
3870
3510
|
className: "grid gap-4 sm:grid-cols-2 xl:grid-cols-4",
|
|
3871
|
-
children: stats.map(({ id, ...stat }) => /* @__PURE__ */
|
|
3511
|
+
children: stats.map(({ id, ...stat }) => /* @__PURE__ */ jsx41(StatCard2, {
|
|
3872
3512
|
...stat
|
|
3873
3513
|
}, id))
|
|
3874
3514
|
}),
|
|
3875
|
-
/* @__PURE__ */
|
|
3515
|
+
/* @__PURE__ */ jsx41("div", {
|
|
3876
3516
|
className: "grid min-w-0 gap-4",
|
|
3877
3517
|
children
|
|
3878
3518
|
}),
|
|
@@ -3881,18 +3521,18 @@ function DashboardLayout2({
|
|
|
3881
3521
|
});
|
|
3882
3522
|
}
|
|
3883
3523
|
// src/components/BillingUsage.tsx
|
|
3884
|
-
import { jsx as
|
|
3524
|
+
import { jsx as jsx42, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
3885
3525
|
function BillingUsage2({ plan, price, period, metrics, onManage, pending, density }) {
|
|
3886
|
-
return /* @__PURE__ */
|
|
3526
|
+
return /* @__PURE__ */ jsxs29(Card2, {
|
|
3887
3527
|
density,
|
|
3888
3528
|
"aria-label": "Billing and usage",
|
|
3889
3529
|
children: [
|
|
3890
|
-
/* @__PURE__ */
|
|
3530
|
+
/* @__PURE__ */ jsxs29(CardHeader2, {
|
|
3891
3531
|
children: [
|
|
3892
|
-
/* @__PURE__ */
|
|
3532
|
+
/* @__PURE__ */ jsx42(CardTitle2, {
|
|
3893
3533
|
children: plan
|
|
3894
3534
|
}),
|
|
3895
|
-
/* @__PURE__ */
|
|
3535
|
+
/* @__PURE__ */ jsxs29(CardDescription2, {
|
|
3896
3536
|
children: [
|
|
3897
3537
|
price,
|
|
3898
3538
|
" · ",
|
|
@@ -3901,32 +3541,32 @@ function BillingUsage2({ plan, price, period, metrics, onManage, pending, densit
|
|
|
3901
3541
|
})
|
|
3902
3542
|
]
|
|
3903
3543
|
}),
|
|
3904
|
-
/* @__PURE__ */
|
|
3544
|
+
/* @__PURE__ */ jsx42(CardContent2, {
|
|
3905
3545
|
className: "grid gap-4",
|
|
3906
|
-
children: metrics.map((metric) => /* @__PURE__ */
|
|
3546
|
+
children: metrics.map((metric) => /* @__PURE__ */ jsxs29(Meter2, {
|
|
3907
3547
|
value: metric.used,
|
|
3908
3548
|
max: metric.limit,
|
|
3909
3549
|
"aria-label": metric.label,
|
|
3910
3550
|
children: [
|
|
3911
|
-
/* @__PURE__ */
|
|
3551
|
+
/* @__PURE__ */ jsxs29("div", {
|
|
3912
3552
|
className: "mb-2 flex items-center justify-between gap-3 text-sm",
|
|
3913
3553
|
children: [
|
|
3914
|
-
/* @__PURE__ */
|
|
3554
|
+
/* @__PURE__ */ jsx42(MeterLabel2, {
|
|
3915
3555
|
children: metric.label
|
|
3916
3556
|
}),
|
|
3917
|
-
/* @__PURE__ */
|
|
3557
|
+
/* @__PURE__ */ jsx42(MeterValue2, {
|
|
3918
3558
|
children: () => `${metric.used.toLocaleString()} / ${metric.limit.toLocaleString()}${metric.unit ? ` ${metric.unit}` : ""}`
|
|
3919
3559
|
})
|
|
3920
3560
|
]
|
|
3921
3561
|
}),
|
|
3922
|
-
/* @__PURE__ */
|
|
3923
|
-
children: /* @__PURE__ */
|
|
3562
|
+
/* @__PURE__ */ jsx42(MeterTrack2, {
|
|
3563
|
+
children: /* @__PURE__ */ jsx42(MeterIndicator2, {})
|
|
3924
3564
|
})
|
|
3925
3565
|
]
|
|
3926
3566
|
}, metric.id))
|
|
3927
3567
|
}),
|
|
3928
|
-
/* @__PURE__ */
|
|
3929
|
-
children: /* @__PURE__ */
|
|
3568
|
+
/* @__PURE__ */ jsx42(CardFooter2, {
|
|
3569
|
+
children: /* @__PURE__ */ jsx42(Button2, {
|
|
3930
3570
|
type: "button",
|
|
3931
3571
|
variant: "outline",
|
|
3932
3572
|
onClick: onManage,
|
|
@@ -3937,4 +3577,4 @@ function BillingUsage2({ plan, price, period, metrics, onManage, pending, densit
|
|
|
3937
3577
|
]
|
|
3938
3578
|
});
|
|
3939
3579
|
}
|
|
3940
|
-
export { ButtonLink2, Accordion2, AccordionItem2, AccordionTrigger2, AccordionContent2,
|
|
3580
|
+
export { ButtonLink2, Accordion2, AccordionItem2, AccordionTrigger2, AccordionContent2, EmptyState3, PageMessage2, JsonViewer2, AlertDialog2, AlertDialogTrigger2, AlertDialogPortal2, AlertDialogOverlay2, AlertDialogContent2, AlertDialogHeader2, AlertDialogFooter2, AlertDialogMedia2, AlertDialogTitle2, AlertDialogDescription2, AlertDialogAction2, AlertDialogCancel2, Select2, SelectGroup2, SelectValue2, SelectTrigger2, SelectContent2, SelectLabel2, SelectItem2, SelectSeparator2, SelectScrollUpButton2, SelectScrollDownButton2, DensityProvider2, collectLayoutViolations2, LayoutGuard2, ScrollGuard2, ThemeProvider2, AspectRatio2, Breadcrumb2, BreadcrumbList2, BreadcrumbItem2, BreadcrumbLink2, BreadcrumbPage2, BreadcrumbSeparator2, BreadcrumbEllipsis2, buttonGroupVariants2, ButtonGroup2, ButtonGroupText2, ButtonGroupSeparator2, ItemGroup2, ItemSeparator2, Item2, ItemMedia2, ItemContent2, ItemTitle2, ItemDescription2, ItemActions2, ItemHeader2, ItemFooter2, Pagination2, PaginationContent2, PaginationItem2, PaginationLink2, PaginationPrevious2, PaginationNext2, PaginationEllipsis2, Drawer2, DrawerTrigger2, DrawerPortal2, DrawerClose2, DrawerOverlay2, DrawerSwipeHandle2, DrawerContent2, DrawerHeader2, DrawerFooter2, DrawerTitle2, DrawerDescription2, ContextMenu2, ContextMenuPortal2, ContextMenuTrigger2, ContextMenuContent2, ContextMenuGroup2, ContextMenuLabel2, ContextMenuItem2, ContextMenuSub2, ContextMenuSubTrigger2, ContextMenuSubContent2, ContextMenuCheckboxItem2, ContextMenuRadioGroup2, ContextMenuRadioItem2, ContextMenuSeparator2, ContextMenuShortcut2, Menubar2, MenubarMenu2, MenubarGroup2, MenubarPortal2, MenubarTrigger2, MenubarContent2, MenubarItem2, MenubarCheckboxItem2, MenubarRadioGroup2, MenubarRadioItem2, MenubarLabel2, MenubarSeparator2, MenubarShortcut2, MenubarSub2, MenubarSubTrigger2, MenubarSubContent2, NavigationMenu2, NavigationMenuList2, NavigationMenuItem2, navigationMenuTriggerStyle2, NavigationMenuTrigger2, NavigationMenuContent2, NavigationMenuPositioner2, NavigationMenuLink2, NavigationMenuIndicator2, ToastProvider2, ToastPortal2, ToastViewport2, Toast2, ToastContent2, ToastTitle2, ToastDescription2, ToastAction2, ToastClose2, ToastToaster2, createToastManager2, useToastManager2, markerVariants2, Marker2, MarkerIcon2, MarkerContent2, BubbleGroup2, Bubble2, BubbleContent2, BubbleReactions2, MessageGroup2, Message2, MessageAvatar2, MessageContent2, MessageHeader2, MessageFooter2, Attachment2, AttachmentMedia2, AttachmentContent2, AttachmentTitle2, AttachmentDescription2, AttachmentActions2, AttachmentAction2, AttachmentTrigger2, AttachmentGroup2, InlineEdit2, StarRating2, ConfirmationDialog2, ImagePicker2, Meter2, MeterLabel2, MeterValue2, MeterTrack2, MeterIndicator2, Stepper2, StepperList2, StepperTrigger2, StepperIndicator2, StepperContent2, AppShell2, PageHeader2, WorkspaceSwitcher2, AccountMenu2, StatCard2, AuthForm2, SettingsSection2, TagInput2, FilterBar2, BarList2, StatusTracker2, DashboardLayout2, BillingUsage2 };
|