@squadbase/vantage 0.6.2-dev1.ac99e02 → 0.6.2-dev1.d7c0911

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.
Files changed (141) hide show
  1. package/dist/{build-MFWRPYKW.js → build-X5NVCQKT.js} +4 -4
  2. package/dist/{build-MFWRPYKW.js.map → build-X5NVCQKT.js.map} +1 -1
  3. package/dist/{chunk-IBGOCWJB.js → chunk-2ICNHUG6.js} +186 -82
  4. package/dist/chunk-2ICNHUG6.js.map +1 -0
  5. package/dist/{chunk-5ZOP4SQR.js → chunk-2N72FKLB.js} +12 -7
  6. package/dist/chunk-2N72FKLB.js.map +1 -0
  7. package/dist/{chunk-PXRX5PEC.js → chunk-PDOBHMUQ.js} +3 -3
  8. package/dist/chunk-PDOBHMUQ.js.map +1 -0
  9. package/dist/{chunk-A2UUGASH.js → chunk-U736PVHY.js} +2 -2
  10. package/dist/chunk-U736PVHY.js.map +1 -0
  11. package/dist/{chunk-QEWCYW3I.js → chunk-WAMZWZJB.js} +13 -3
  12. package/dist/chunk-WAMZWZJB.js.map +1 -0
  13. package/dist/chunk-WRSX2MDK.js +7866 -0
  14. package/dist/chunk-WRSX2MDK.js.map +1 -0
  15. package/dist/{chunk-OB6UBJXF.js → chunk-XPQSTZUU.js} +125 -35
  16. package/dist/chunk-XPQSTZUU.js.map +1 -0
  17. package/dist/cli.js +3 -3
  18. package/dist/components/index.d.ts +1831 -99
  19. package/dist/components/index.js +4 -4
  20. package/dist/{dev-DCTOHQ6W.js → dev-4XEDTELV.js} +4 -4
  21. package/dist/{dev-DCTOHQ6W.js.map → dev-4XEDTELV.js.map} +1 -1
  22. package/dist/doc/index.js +2 -2
  23. package/dist/doc/index.js.map +1 -1
  24. package/dist/markdown/index.js +1 -1
  25. package/dist/markdown/index.js.map +1 -1
  26. package/dist/table/index.js +5 -5
  27. package/dist/table/index.js.map +1 -1
  28. package/dist/ui/index.d.ts +4 -1
  29. package/dist/ui/index.js +21 -111
  30. package/dist/ui/index.js.map +1 -1
  31. package/dist/{upgrade-DBBE6GIR.js → upgrade-JHXZBGQS.js} +3 -3
  32. package/dist/{upgrade-DBBE6GIR.js.map → upgrade-JHXZBGQS.js.map} +1 -1
  33. package/dist/vite/index.js +2 -2
  34. package/docs/en/components.md +29 -15
  35. package/docs/en/parts/data-table.md +22 -0
  36. package/docs/en/parts/delta.md +50 -0
  37. package/docs/en/parts/format.md +43 -0
  38. package/docs/en/parts/kpi-card.md +57 -0
  39. package/docs/en/parts/metric-value.md +3 -2
  40. package/docs/en/parts/sparkline.md +1 -1
  41. package/docs/en/parts/trend-indicator.md +17 -1
  42. package/docs/en/ui-and-theming.md +1 -1
  43. package/docs/index.json +92 -32
  44. package/docs/ja/changelog.md +5 -0
  45. package/docs/ja/components.md +27 -15
  46. package/docs/ja/parts/data-table.md +22 -0
  47. package/docs/ja/parts/delta.md +50 -0
  48. package/docs/ja/parts/format.md +44 -0
  49. package/docs/ja/parts/kpi-card.md +55 -0
  50. package/docs/ja/parts/metric-value.md +3 -2
  51. package/docs/ja/parts/sparkline.md +1 -1
  52. package/docs/ja/parts/trend-indicator.md +17 -1
  53. package/docs/ja/ui-and-theming.md +2 -2
  54. package/package.json +2 -1
  55. package/registry/ui/accordion.tsx +4 -2
  56. package/registry/ui/alert-dialog.tsx +3 -3
  57. package/registry/ui/alert.tsx +3 -1
  58. package/registry/ui/app-shell.tsx +7 -1
  59. package/registry/ui/area-chart.tsx +2781 -157
  60. package/registry/ui/avatar.tsx +1 -1
  61. package/registry/ui/badge.tsx +3 -1
  62. package/registry/ui/bar-chart.tsx +2780 -157
  63. package/registry/ui/bar-list.tsx +3471 -93
  64. package/registry/ui/breadcrumb.tsx +3 -1
  65. package/registry/ui/button.tsx +3 -1
  66. package/registry/ui/calendar.tsx +3 -1
  67. package/registry/ui/card.tsx +4 -2
  68. package/registry/ui/category-bar.tsx +990 -16
  69. package/registry/ui/chart-frame.tsx +1358 -0
  70. package/registry/ui/checkbox.tsx +3 -1
  71. package/registry/ui/collapsible.tsx +3 -1
  72. package/registry/ui/combobox.tsx +2 -2
  73. package/registry/ui/command.tsx +3 -1
  74. package/registry/ui/dashboard-card.tsx +69 -26
  75. package/registry/ui/data-table.tsx +678 -56
  76. package/registry/ui/date-range-picker.tsx +245 -64
  77. package/registry/ui/delta.tsx +188 -0
  78. package/registry/ui/dialog.tsx +5 -3
  79. package/registry/ui/donut-chart.tsx +2857 -173
  80. package/registry/ui/drawer.tsx +1 -1
  81. package/registry/ui/dropdown-menu.tsx +5 -3
  82. package/registry/ui/echart.tsx +448 -44
  83. package/registry/ui/field.tsx +1 -1
  84. package/registry/ui/filter-bar.tsx +33 -6
  85. package/registry/ui/funnel-steps.tsx +3316 -49
  86. package/registry/ui/heatmap.tsx +1752 -0
  87. package/registry/ui/hover-card.tsx +2 -2
  88. package/registry/ui/input-group.tsx +3 -1
  89. package/registry/ui/input.tsx +3 -1
  90. package/registry/ui/kbd.tsx +3 -1
  91. package/registry/ui/kpi-card.tsx +677 -0
  92. package/registry/ui/label.tsx +3 -1
  93. package/registry/ui/legend.tsx +3500 -0
  94. package/registry/ui/line-chart.tsx +2781 -151
  95. package/registry/ui/metric-value.tsx +9 -1
  96. package/registry/ui/multi-select.tsx +11 -5
  97. package/registry/ui/page-shell.tsx +104 -49
  98. package/registry/ui/pagination.tsx +3 -1
  99. package/registry/ui/placeholder.tsx +8 -2
  100. package/registry/ui/popover.tsx +4 -2
  101. package/registry/ui/progress-circle.tsx +607 -12
  102. package/registry/ui/progress.tsx +3 -1
  103. package/registry/ui/radio-group.tsx +1 -1
  104. package/registry/ui/sample-data.tsx +86 -0
  105. package/registry/ui/scatter-chart.tsx +4150 -0
  106. package/registry/ui/scroll-area.tsx +3 -2
  107. package/registry/ui/searchable-select.tsx +8 -3
  108. package/registry/ui/section-header.tsx +4 -2
  109. package/registry/ui/segmented-control.tsx +7 -2
  110. package/registry/ui/select.tsx +4 -2
  111. package/registry/ui/separator.tsx +3 -1
  112. package/registry/ui/sheet.tsx +4 -2
  113. package/registry/ui/sidebar.tsx +4 -2
  114. package/registry/ui/skeleton.tsx +4 -2
  115. package/registry/ui/slider.tsx +3 -1
  116. package/registry/ui/sparkline.tsx +84 -9
  117. package/registry/ui/spinner.tsx +3 -1
  118. package/registry/ui/states.tsx +34 -5
  119. package/registry/ui/status-badge.tsx +81 -39
  120. package/registry/ui/switch.tsx +3 -1
  121. package/registry/ui/table.tsx +4 -2
  122. package/registry/ui/tabs.tsx +5 -3
  123. package/registry/ui/textarea.tsx +3 -1
  124. package/registry/ui/toast.tsx +2 -2
  125. package/registry/ui/toggle-group.tsx +3 -1
  126. package/registry/ui/toggle.tsx +3 -1
  127. package/registry/ui/tooltip.tsx +4 -2
  128. package/registry/ui/tracker.tsx +624 -17
  129. package/registry/ui/trend-indicator.tsx +13 -1
  130. package/registry/ui/updated-at.tsx +122 -0
  131. package/registry/ui/waterfall-chart.tsx +4186 -0
  132. package/templates/AGENTS.md +13 -1
  133. package/theme.css +237 -136
  134. package/dist/chunk-5ZOP4SQR.js.map +0 -1
  135. package/dist/chunk-A2UUGASH.js.map +0 -1
  136. package/dist/chunk-AG6RZ2RR.js +0 -3208
  137. package/dist/chunk-AG6RZ2RR.js.map +0 -1
  138. package/dist/chunk-IBGOCWJB.js.map +0 -1
  139. package/dist/chunk-OB6UBJXF.js.map +0 -1
  140. package/dist/chunk-PXRX5PEC.js.map +0 -1
  141. package/dist/chunk-QEWCYW3I.js.map +0 -1
@@ -1,9 +1,9 @@
1
- import { buttonVariants, Button } from './chunk-PXRX5PEC.js';
2
- import { cn } from './chunk-A2UUGASH.js';
1
+ import { buttonVariants, Button } from './chunk-PDOBHMUQ.js';
2
+ import { cn } from './chunk-U736PVHY.js';
3
3
  import { mergeProps } from '@base-ui/react/merge-props';
4
4
  import { useRender } from '@base-ui/react/use-render';
5
5
  import { cva } from 'class-variance-authority';
6
- import * as React12 from 'react';
6
+ import * as React13 from 'react';
7
7
  import { getDefaultClassNames, DayPicker } from 'react-day-picker';
8
8
  import { ChevronLeftIcon, ChevronRightIcon, ChevronDownIcon, CheckIcon, XIcon, SearchIcon, ChevronUpIcon, PanelLeftIcon } from 'lucide-react';
9
9
  import { jsx, jsxs } from 'react/jsx-runtime';
@@ -213,8 +213,8 @@ function CalendarDayButton({
213
213
  ...props
214
214
  }) {
215
215
  const defaultClassNames = getDefaultClassNames();
216
- const ref = React12.useRef(null);
217
- React12.useEffect(() => {
216
+ const ref = React13.useRef(null);
217
+ React13.useEffect(() => {
218
218
  if (modifiers.focused) ref.current?.focus();
219
219
  }, [modifiers.focused]);
220
220
  return /* @__PURE__ */ jsx(
@@ -236,6 +236,96 @@ function CalendarDayButton({
236
236
  }
237
237
  );
238
238
  }
239
+ function Card({
240
+ className,
241
+ size = "default",
242
+ ...props
243
+ }) {
244
+ return /* @__PURE__ */ jsx(
245
+ "div",
246
+ {
247
+ "data-slot": "card",
248
+ "data-size": size,
249
+ className: cn(
250
+ "group/card flex flex-col gap-(--card-spacing) overflow-hidden rounded-xl border bg-card shadow-[var(--shadow-card)] py-(--card-spacing) text-sm text-card-foreground [--card-spacing:--spacing(4)] has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:[--card-spacing:--spacing(3)] data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl",
251
+ className
252
+ ),
253
+ ...props
254
+ }
255
+ );
256
+ }
257
+ function CardHeader({ className, ...props }) {
258
+ return /* @__PURE__ */ jsx(
259
+ "div",
260
+ {
261
+ "data-slot": "card-header",
262
+ className: cn(
263
+ "group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-(--card-spacing) has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-(--card-spacing)",
264
+ className
265
+ ),
266
+ ...props
267
+ }
268
+ );
269
+ }
270
+ function CardTitle({ className, ...props }) {
271
+ return /* @__PURE__ */ jsx(
272
+ "div",
273
+ {
274
+ "data-slot": "card-title",
275
+ className: cn(
276
+ "cn-font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",
277
+ className
278
+ ),
279
+ ...props
280
+ }
281
+ );
282
+ }
283
+ function CardDescription({ className, ...props }) {
284
+ return /* @__PURE__ */ jsx(
285
+ "div",
286
+ {
287
+ "data-slot": "card-description",
288
+ className: cn("text-sm text-muted-foreground", className),
289
+ ...props
290
+ }
291
+ );
292
+ }
293
+ function CardAction({ className, ...props }) {
294
+ return /* @__PURE__ */ jsx(
295
+ "div",
296
+ {
297
+ "data-slot": "card-action",
298
+ className: cn(
299
+ "col-start-2 row-span-2 row-start-1 self-start justify-self-end",
300
+ className
301
+ ),
302
+ ...props
303
+ }
304
+ );
305
+ }
306
+ function CardContent({ className, ...props }) {
307
+ return /* @__PURE__ */ jsx(
308
+ "div",
309
+ {
310
+ "data-slot": "card-content",
311
+ className: cn("px-(--card-spacing)", className),
312
+ ...props
313
+ }
314
+ );
315
+ }
316
+ function CardFooter({ className, ...props }) {
317
+ return /* @__PURE__ */ jsx(
318
+ "div",
319
+ {
320
+ "data-slot": "card-footer",
321
+ className: cn(
322
+ "flex items-center rounded-b-xl border-t bg-muted/50 p-(--card-spacing)",
323
+ className
324
+ ),
325
+ ...props
326
+ }
327
+ );
328
+ }
239
329
  function Checkbox({ className, ...props }) {
240
330
  return /* @__PURE__ */ jsx(
241
331
  Checkbox$1.Root,
@@ -444,7 +534,7 @@ function DialogOverlay({
444
534
  {
445
535
  "data-slot": "dialog-overlay",
446
536
  className: cn(
447
- "fixed inset-0 isolate z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",
537
+ "fixed inset-0 isolate z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in motion-reduce:animate-none! data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",
448
538
  className
449
539
  ),
450
540
  ...props
@@ -464,7 +554,7 @@ function DialogContent({
464
554
  {
465
555
  "data-slot": "dialog-content",
466
556
  className: cn(
467
- "fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
557
+ "fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in motion-reduce:animate-none! data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
468
558
  className
469
559
  ),
470
560
  ...props,
@@ -740,7 +830,7 @@ function DropdownMenuContent({
740
830
  {
741
831
  "data-slot": "dropdown-menu-content",
742
832
  className: cn(
743
- "cn-menu-target cn-menu-translucent z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95",
833
+ "cn-menu-target cn-menu-translucent z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in motion-reduce:animate-none! data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95",
744
834
  className
745
835
  ),
746
836
  ...props
@@ -829,7 +919,7 @@ function DropdownMenuSubContent({
829
919
  {
830
920
  "data-slot": "dropdown-menu-sub-content",
831
921
  className: cn(
832
- "cn-menu-target cn-menu-translucent w-auto min-w-[96px] rounded-lg bg-popover p-1 text-popover-foreground shadow-lg ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
922
+ "cn-menu-target cn-menu-translucent w-auto min-w-[96px] rounded-lg bg-popover p-1 text-popover-foreground shadow-lg ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in motion-reduce:animate-none! data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
833
923
  className
834
924
  ),
835
925
  align,
@@ -985,7 +1075,7 @@ function PopoverContent({
985
1075
  {
986
1076
  "data-slot": "popover-content",
987
1077
  className: cn(
988
- "z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
1078
+ "z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in motion-reduce:animate-none! data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
989
1079
  className
990
1080
  ),
991
1081
  ...props
@@ -1028,8 +1118,8 @@ function PopoverDescription({
1028
1118
  );
1029
1119
  }
1030
1120
  function collectSelectItems(node, into = []) {
1031
- React12.Children.forEach(node, (child) => {
1032
- if (!React12.isValidElement(child)) return;
1121
+ React13.Children.forEach(node, (child) => {
1122
+ if (!React13.isValidElement(child)) return;
1033
1123
  const props = child.props;
1034
1124
  if (child.type === SelectItem) {
1035
1125
  if (props.value !== void 0) into.push({ label: props.children, value: props.value });
@@ -1044,7 +1134,7 @@ function Select({
1044
1134
  children,
1045
1135
  ...props
1046
1136
  }) {
1047
- const derivedItems = React12.useMemo(() => {
1137
+ const derivedItems = React13.useMemo(() => {
1048
1138
  if (items) return items;
1049
1139
  const collected = collectSelectItems(children);
1050
1140
  return collected.length > 0 ? collected : void 0;
@@ -1124,7 +1214,7 @@ function SelectContent({
1124
1214
  "data-slot": "select-content",
1125
1215
  "data-align-trigger": alignItemWithTrigger,
1126
1216
  className: cn(
1127
- "cn-menu-target cn-menu-translucent relative isolate z-50 max-h-(--available-height) w-(--anchor-width) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[align-trigger=true]:animate-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
1217
+ "cn-menu-target cn-menu-translucent relative isolate z-50 max-h-(--available-height) w-(--anchor-width) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[align-trigger=true]:animate-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in motion-reduce:animate-none! data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
1128
1218
  className
1129
1219
  ),
1130
1220
  ...props,
@@ -1265,7 +1355,7 @@ function SheetContent({
1265
1355
  "data-slot": "sheet-content",
1266
1356
  "data-side": side,
1267
1357
  className: cn(
1268
- "fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg transition duration-200 ease-in-out data-ending-style:opacity-0 data-starting-style:opacity-0 data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:data-ending-style:translate-y-[2.5rem] data-[side=bottom]:data-starting-style:translate-y-[2.5rem] data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-r data-[side=left]:data-ending-style:translate-x-[-2.5rem] data-[side=left]:data-starting-style:translate-x-[-2.5rem] data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-l data-[side=right]:data-ending-style:translate-x-[2.5rem] data-[side=right]:data-starting-style:translate-x-[2.5rem] data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:data-ending-style:translate-y-[-2.5rem] data-[side=top]:data-starting-style:translate-y-[-2.5rem] data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm",
1358
+ "fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg transition duration-200 ease-out data-ending-style:opacity-0 data-starting-style:opacity-0 motion-reduce:data-ending-style:translate-none! motion-reduce:data-starting-style:translate-none! data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:data-ending-style:translate-y-[2.5rem] data-[side=bottom]:data-starting-style:translate-y-[2.5rem] data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-r data-[side=left]:data-ending-style:translate-x-[-2.5rem] data-[side=left]:data-starting-style:translate-x-[-2.5rem] data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-l data-[side=right]:data-ending-style:translate-x-[2.5rem] data-[side=right]:data-starting-style:translate-x-[2.5rem] data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:data-ending-style:translate-y-[-2.5rem] data-[side=top]:data-starting-style:translate-y-[-2.5rem] data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm",
1269
1359
  className
1270
1360
  ),
1271
1361
  ...props,
@@ -1342,8 +1432,8 @@ function SheetDescription({
1342
1432
  }
1343
1433
  var MOBILE_BREAKPOINT = 768;
1344
1434
  function useIsMobile() {
1345
- const [isMobile, setIsMobile] = React12.useState(void 0);
1346
- React12.useEffect(() => {
1435
+ const [isMobile, setIsMobile] = React13.useState(void 0);
1436
+ React13.useEffect(() => {
1347
1437
  const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
1348
1438
  const onChange = () => {
1349
1439
  setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
@@ -1359,7 +1449,7 @@ function Skeleton({ className, ...props }) {
1359
1449
  "div",
1360
1450
  {
1361
1451
  "data-slot": "skeleton",
1362
- className: cn("animate-pulse rounded-md bg-muted", className),
1452
+ className: cn("animate-pulse motion-reduce:animate-none rounded-md bg-muted", className),
1363
1453
  ...props
1364
1454
  }
1365
1455
  );
@@ -1405,7 +1495,7 @@ function TooltipContent({
1405
1495
  {
1406
1496
  "data-slot": "tooltip-content",
1407
1497
  className: cn(
1408
- "z-50 inline-flex w-fit max-w-xs origin-(--transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pr-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
1498
+ "z-50 inline-flex w-fit data-instant:animate-none max-w-xs origin-(--transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pr-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-open:animate-in motion-reduce:animate-none! data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
1409
1499
  className
1410
1500
  ),
1411
1501
  ...props,
@@ -1424,9 +1514,9 @@ var SIDEBAR_WIDTH = "16rem";
1424
1514
  var SIDEBAR_WIDTH_MOBILE = "18rem";
1425
1515
  var SIDEBAR_WIDTH_ICON = "3rem";
1426
1516
  var SIDEBAR_KEYBOARD_SHORTCUT = "b";
1427
- var SidebarContext = React12.createContext(null);
1517
+ var SidebarContext = React13.createContext(null);
1428
1518
  function useSidebar() {
1429
- const context = React12.useContext(SidebarContext);
1519
+ const context = React13.useContext(SidebarContext);
1430
1520
  if (!context) {
1431
1521
  throw new Error("useSidebar must be used within a SidebarProvider.");
1432
1522
  }
@@ -1442,10 +1532,10 @@ function SidebarProvider({
1442
1532
  ...props
1443
1533
  }) {
1444
1534
  const isMobile = useIsMobile();
1445
- const [openMobile, setOpenMobile] = React12.useState(false);
1446
- const [_open, _setOpen] = React12.useState(defaultOpen);
1535
+ const [openMobile, setOpenMobile] = React13.useState(false);
1536
+ const [_open, _setOpen] = React13.useState(defaultOpen);
1447
1537
  const open = openProp ?? _open;
1448
- const setOpen = React12.useCallback(
1538
+ const setOpen = React13.useCallback(
1449
1539
  (value) => {
1450
1540
  const openState = typeof value === "function" ? value(open) : value;
1451
1541
  if (setOpenProp) {
@@ -1457,10 +1547,10 @@ function SidebarProvider({
1457
1547
  },
1458
1548
  [setOpenProp, open]
1459
1549
  );
1460
- const toggleSidebar = React12.useCallback(() => {
1550
+ const toggleSidebar = React13.useCallback(() => {
1461
1551
  return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
1462
1552
  }, [isMobile, setOpen, setOpenMobile]);
1463
- React12.useEffect(() => {
1553
+ React13.useEffect(() => {
1464
1554
  const handleKeyDown = (event) => {
1465
1555
  if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
1466
1556
  event.preventDefault();
@@ -1471,7 +1561,7 @@ function SidebarProvider({
1471
1561
  return () => window.removeEventListener("keydown", handleKeyDown);
1472
1562
  }, [toggleSidebar]);
1473
1563
  const state = open ? "expanded" : "collapsed";
1474
- const contextValue = React12.useMemo(
1564
+ const contextValue = React13.useMemo(
1475
1565
  () => ({
1476
1566
  state,
1477
1567
  open,
@@ -1635,7 +1725,7 @@ function SidebarRail({ className, ...props }) {
1635
1725
  onClick: toggleSidebar,
1636
1726
  title: "Toggle Sidebar",
1637
1727
  className: cn(
1638
- "absolute inset-y-0 z-20 hidden w-4 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:start-1/2 after:w-[2px] hover:after:bg-sidebar-border sm:flex ltr:-translate-x-1/2 rtl:-translate-x-1/2",
1728
+ "absolute inset-y-0 z-20 hidden w-4 transition-[background-color,translate,left,right] ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:start-1/2 after:w-[2px] hover:after:bg-sidebar-border sm:flex ltr:-translate-x-1/2 rtl:-translate-x-1/2",
1639
1729
  "in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize",
1640
1730
  "[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize",
1641
1731
  "group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar",
@@ -1931,7 +2021,7 @@ function SidebarMenuSkeleton({
1931
2021
  showIcon = false,
1932
2022
  ...props
1933
2023
  }) {
1934
- const [width] = React12.useState(() => {
2024
+ const [width] = React13.useState(() => {
1935
2025
  return `${Math.floor(Math.random() * 40) + 50}%`;
1936
2026
  });
1937
2027
  return /* @__PURE__ */ jsxs(
@@ -2087,7 +2177,7 @@ function TableHead({ className, ...props }) {
2087
2177
  {
2088
2178
  "data-slot": "table-head",
2089
2179
  className: cn(
2090
- "h-10 px-2 text-left align-middle font-medium whitespace-nowrap text-foreground [&:has([role=checkbox])]:pr-0",
2180
+ "h-10 px-2 text-left align-middle text-xs font-medium whitespace-nowrap text-muted-foreground [&:has([role=checkbox])]:pr-0",
2091
2181
  className
2092
2182
  ),
2093
2183
  ...props
@@ -2155,7 +2245,7 @@ function Toggle({
2155
2245
  }
2156
2246
  );
2157
2247
  }
2158
- var ToggleGroupContext = React12.createContext({
2248
+ var ToggleGroupContext = React13.createContext({
2159
2249
  size: "default",
2160
2250
  variant: "default",
2161
2251
  spacing: 2,
@@ -2201,7 +2291,7 @@ function ToggleGroupItem({
2201
2291
  size = "default",
2202
2292
  ...props
2203
2293
  }) {
2204
- const context = React12.useContext(ToggleGroupContext);
2294
+ const context = React13.useContext(ToggleGroupContext);
2205
2295
  return /* @__PURE__ */ jsx(
2206
2296
  Toggle$1,
2207
2297
  {
@@ -2223,6 +2313,6 @@ function ToggleGroupItem({
2223
2313
  );
2224
2314
  }
2225
2315
 
2226
- export { Badge, Calendar, CalendarDayButton, Checkbox, Collapsible, CollapsibleContent, CollapsibleTrigger, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Textarea, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, badgeVariants, toggleVariants, useIsMobile, useSidebar };
2227
- //# sourceMappingURL=chunk-OB6UBJXF.js.map
2228
- //# sourceMappingURL=chunk-OB6UBJXF.js.map
2316
+ export { Badge, Calendar, CalendarDayButton, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, Collapsible, CollapsibleContent, CollapsibleTrigger, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Textarea, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, badgeVariants, toggleVariants, useIsMobile, useSidebar };
2317
+ //# sourceMappingURL=chunk-XPQSTZUU.js.map
2318
+ //# sourceMappingURL=chunk-XPQSTZUU.js.map