@blinkdotnew/ui 0.1.4 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var React14 = require('react');
3
+ var React26 = require('react');
4
4
  var jsxRuntime = require('react/jsx-runtime');
5
5
  var clsx = require('clsx');
6
6
  var tailwindMerge = require('tailwind-merge');
@@ -51,7 +51,7 @@ function _interopNamespace(e) {
51
51
  return Object.freeze(n);
52
52
  }
53
53
 
54
- var React14__default = /*#__PURE__*/_interopDefault(React14);
54
+ var React26__default = /*#__PURE__*/_interopDefault(React26);
55
55
  var SelectPrimitive__namespace = /*#__PURE__*/_interopNamespace(SelectPrimitive);
56
56
  var CheckboxPrimitive__namespace = /*#__PURE__*/_interopNamespace(CheckboxPrimitive);
57
57
  var RadioGroupPrimitive__namespace = /*#__PURE__*/_interopNamespace(RadioGroupPrimitive);
@@ -69,9 +69,9 @@ var TabsPrimitive__namespace = /*#__PURE__*/_interopNamespace(TabsPrimitive);
69
69
  var z__namespace = /*#__PURE__*/_interopNamespace(z);
70
70
 
71
71
  // src/provider/blink-ui-provider.tsx
72
- var BlinkUIContext = React14.createContext(null);
72
+ var BlinkUIContext = React26.createContext(null);
73
73
  function useBlinkUI() {
74
- const ctx = React14.useContext(BlinkUIContext);
74
+ const ctx = React26.useContext(BlinkUIContext);
75
75
  if (!ctx)
76
76
  throw new Error("useBlinkUI must be used within <BlinkUIProvider>");
77
77
  return ctx;
@@ -81,10 +81,10 @@ function BlinkUIProvider({
81
81
  theme: initialTheme = "linear",
82
82
  darkMode: initialDarkMode = "system"
83
83
  }) {
84
- const [theme, setTheme] = React14.useState(initialTheme);
85
- const [darkMode, setDarkMode] = React14.useState(initialDarkMode);
86
- const [resolvedDark, setResolvedDark] = React14.useState(false);
87
- React14.useEffect(() => {
84
+ const [theme, setTheme] = React26.useState(initialTheme);
85
+ const [darkMode, setDarkMode] = React26.useState(initialDarkMode);
86
+ const [resolvedDark, setResolvedDark] = React26.useState(false);
87
+ React26.useEffect(() => {
88
88
  const update = () => {
89
89
  const isDark = darkMode === "dark" || darkMode === "system" && window.matchMedia("(prefers-color-scheme: dark)").matches;
90
90
  setResolvedDark(isDark);
@@ -94,7 +94,7 @@ function BlinkUIProvider({
94
94
  mq.addEventListener("change", update);
95
95
  return () => mq.removeEventListener("change", update);
96
96
  }, [darkMode]);
97
- React14.useEffect(() => {
97
+ React26.useEffect(() => {
98
98
  const root = document.documentElement;
99
99
  root.classList.remove("theme-linear", "theme-glass", "theme-midnight", "theme-minimal");
100
100
  root.classList.remove("dark", "light");
@@ -128,14 +128,14 @@ var buttonVariants = classVarianceAuthority.cva(
128
128
  defaultVariants: { variant: "default", size: "default" }
129
129
  }
130
130
  );
131
- var Button = React14__default.default.forwardRef(
131
+ var Button = React26__default.default.forwardRef(
132
132
  ({ className, variant, size, asChild = false, ...props }, ref) => {
133
133
  const Comp = asChild ? reactSlot.Slot : "button";
134
134
  return /* @__PURE__ */ jsxRuntime.jsx(Comp, { className: cn(buttonVariants({ variant, size }), className), ref, ...props });
135
135
  }
136
136
  );
137
137
  Button.displayName = "Button";
138
- var Input = React14__default.default.forwardRef(
138
+ var Input = React26__default.default.forwardRef(
139
139
  ({ className, type, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
140
140
  "input",
141
141
  {
@@ -154,7 +154,7 @@ var Input = React14__default.default.forwardRef(
154
154
  )
155
155
  );
156
156
  Input.displayName = "Input";
157
- var Textarea = React14__default.default.forwardRef(
157
+ var Textarea = React26__default.default.forwardRef(
158
158
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
159
159
  "textarea",
160
160
  {
@@ -175,7 +175,7 @@ Textarea.displayName = "Textarea";
175
175
  var Select = SelectPrimitive__namespace.Root;
176
176
  var SelectGroup = SelectPrimitive__namespace.Group;
177
177
  var SelectValue = SelectPrimitive__namespace.Value;
178
- var SelectTrigger = React14__default.default.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
178
+ var SelectTrigger = React26__default.default.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
179
179
  SelectPrimitive__namespace.Trigger,
180
180
  {
181
181
  ref,
@@ -195,7 +195,7 @@ var SelectTrigger = React14__default.default.forwardRef(({ className, children,
195
195
  }
196
196
  ));
197
197
  SelectTrigger.displayName = SelectPrimitive__namespace.Trigger.displayName;
198
- var SelectScrollUpButton = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
198
+ var SelectScrollUpButton = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
199
199
  SelectPrimitive__namespace.ScrollUpButton,
200
200
  {
201
201
  ref,
@@ -205,7 +205,7 @@ var SelectScrollUpButton = React14__default.default.forwardRef(({ className, ...
205
205
  }
206
206
  ));
207
207
  SelectScrollUpButton.displayName = SelectPrimitive__namespace.ScrollUpButton.displayName;
208
- var SelectScrollDownButton = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
208
+ var SelectScrollDownButton = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
209
209
  SelectPrimitive__namespace.ScrollDownButton,
210
210
  {
211
211
  ref,
@@ -215,7 +215,7 @@ var SelectScrollDownButton = React14__default.default.forwardRef(({ className, .
215
215
  }
216
216
  ));
217
217
  SelectScrollDownButton.displayName = SelectPrimitive__namespace.ScrollDownButton.displayName;
218
- var SelectContent = React14__default.default.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(
218
+ var SelectContent = React26__default.default.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(
219
219
  SelectPrimitive__namespace.Content,
220
220
  {
221
221
  ref,
@@ -242,7 +242,7 @@ var SelectContent = React14__default.default.forwardRef(({ className, children,
242
242
  }
243
243
  ) }));
244
244
  SelectContent.displayName = SelectPrimitive__namespace.Content.displayName;
245
- var SelectLabel = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
245
+ var SelectLabel = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
246
246
  SelectPrimitive__namespace.Label,
247
247
  {
248
248
  ref,
@@ -251,7 +251,7 @@ var SelectLabel = React14__default.default.forwardRef(({ className, ...props },
251
251
  }
252
252
  ));
253
253
  SelectLabel.displayName = SelectPrimitive__namespace.Label.displayName;
254
- var SelectItem = React14__default.default.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
254
+ var SelectItem = React26__default.default.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
255
255
  SelectPrimitive__namespace.Item,
256
256
  {
257
257
  ref,
@@ -269,7 +269,7 @@ var SelectItem = React14__default.default.forwardRef(({ className, children, ...
269
269
  }
270
270
  ));
271
271
  SelectItem.displayName = SelectPrimitive__namespace.Item.displayName;
272
- var SelectSeparator = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
272
+ var SelectSeparator = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
273
273
  SelectPrimitive__namespace.Separator,
274
274
  {
275
275
  ref,
@@ -278,7 +278,7 @@ var SelectSeparator = React14__default.default.forwardRef(({ className, ...props
278
278
  }
279
279
  ));
280
280
  SelectSeparator.displayName = SelectPrimitive__namespace.Separator.displayName;
281
- var Checkbox = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
281
+ var Checkbox = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
282
282
  CheckboxPrimitive__namespace.Root,
283
283
  {
284
284
  ref,
@@ -294,9 +294,9 @@ var Checkbox = React14__default.default.forwardRef(({ className, ...props }, ref
294
294
  }
295
295
  ));
296
296
  Checkbox.displayName = CheckboxPrimitive__namespace.Root.displayName;
297
- var RadioGroup = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(RadioGroupPrimitive__namespace.Root, { className: cn("grid gap-2", className), ref, ...props }));
297
+ var RadioGroup = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(RadioGroupPrimitive__namespace.Root, { className: cn("grid gap-2", className), ref, ...props }));
298
298
  RadioGroup.displayName = RadioGroupPrimitive__namespace.Root.displayName;
299
- var RadioGroupItem = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
299
+ var RadioGroupItem = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
300
300
  RadioGroupPrimitive__namespace.Item,
301
301
  {
302
302
  ref,
@@ -311,7 +311,7 @@ var RadioGroupItem = React14__default.default.forwardRef(({ className, ...props
311
311
  }
312
312
  ));
313
313
  RadioGroupItem.displayName = RadioGroupPrimitive__namespace.Item.displayName;
314
- var Switch = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
314
+ var Switch = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
315
315
  SwitchPrimitive__namespace.Root,
316
316
  {
317
317
  ref,
@@ -337,7 +337,7 @@ var Switch = React14__default.default.forwardRef(({ className, ...props }, ref)
337
337
  }
338
338
  ));
339
339
  Switch.displayName = SwitchPrimitive__namespace.Root.displayName;
340
- var Slider = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
340
+ var Slider = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
341
341
  SliderPrimitive__namespace.Root,
342
342
  {
343
343
  ref,
@@ -354,7 +354,7 @@ var Dialog = DialogPrimitive__namespace.Root;
354
354
  var DialogTrigger = DialogPrimitive__namespace.Trigger;
355
355
  var DialogPortal = DialogPrimitive__namespace.Portal;
356
356
  var DialogClose = DialogPrimitive__namespace.Close;
357
- var DialogOverlay = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
357
+ var DialogOverlay = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
358
358
  DialogPrimitive__namespace.Overlay,
359
359
  {
360
360
  ref,
@@ -368,7 +368,7 @@ var DialogOverlay = React14__default.default.forwardRef(({ className, ...props }
368
368
  }
369
369
  ));
370
370
  DialogOverlay.displayName = DialogPrimitive__namespace.Overlay.displayName;
371
- var DialogContent = React14__default.default.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(DialogPortal, { children: [
371
+ var DialogContent = React26__default.default.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(DialogPortal, { children: [
372
372
  /* @__PURE__ */ jsxRuntime.jsx(DialogOverlay, {}),
373
373
  /* @__PURE__ */ jsxRuntime.jsxs(
374
374
  DialogPrimitive__namespace.Content,
@@ -398,7 +398,7 @@ var DialogHeader = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx("
398
398
  DialogHeader.displayName = "DialogHeader";
399
399
  var DialogFooter = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className), ...props });
400
400
  DialogFooter.displayName = "DialogFooter";
401
- var DialogTitle = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
401
+ var DialogTitle = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
402
402
  DialogPrimitive__namespace.Title,
403
403
  {
404
404
  ref,
@@ -407,7 +407,7 @@ var DialogTitle = React14__default.default.forwardRef(({ className, ...props },
407
407
  }
408
408
  ));
409
409
  DialogTitle.displayName = DialogPrimitive__namespace.Title.displayName;
410
- var DialogDescription = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
410
+ var DialogDescription = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
411
411
  DialogPrimitive__namespace.Description,
412
412
  {
413
413
  ref,
@@ -420,7 +420,7 @@ var Sheet = DialogPrimitive__namespace.Root;
420
420
  var SheetTrigger = DialogPrimitive__namespace.Trigger;
421
421
  var SheetClose = DialogPrimitive__namespace.Close;
422
422
  var SheetPortal = DialogPrimitive__namespace.Portal;
423
- var SheetOverlay = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
423
+ var SheetOverlay = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
424
424
  DialogPrimitive__namespace.Overlay,
425
425
  {
426
426
  ref,
@@ -448,7 +448,7 @@ var sheetVariants = classVarianceAuthority.cva(
448
448
  defaultVariants: { side: "right" }
449
449
  }
450
450
  );
451
- var SheetContent = React14__default.default.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(SheetPortal, { children: [
451
+ var SheetContent = React26__default.default.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(SheetPortal, { children: [
452
452
  /* @__PURE__ */ jsxRuntime.jsx(SheetOverlay, {}),
453
453
  /* @__PURE__ */ jsxRuntime.jsxs(DialogPrimitive__namespace.Content, { ref, className: cn(sheetVariants({ side }), className), ...props, children: [
454
454
  /* @__PURE__ */ jsxRuntime.jsxs(DialogPrimitive__namespace.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-[hsl(var(--ring))]", children: [
@@ -461,14 +461,14 @@ var SheetContent = React14__default.default.forwardRef(({ side = "right", classN
461
461
  SheetContent.displayName = DialogPrimitive__namespace.Content.displayName;
462
462
  var SheetHeader = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex flex-col space-y-2 text-center sm:text-left", className), ...props });
463
463
  var SheetFooter = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className), ...props });
464
- var SheetTitle = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DialogPrimitive__namespace.Title, { ref, className: cn("text-lg font-semibold", className), ...props }));
464
+ var SheetTitle = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DialogPrimitive__namespace.Title, { ref, className: cn("text-lg font-semibold", className), ...props }));
465
465
  SheetTitle.displayName = DialogPrimitive__namespace.Title.displayName;
466
- var SheetDescription = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DialogPrimitive__namespace.Description, { ref, className: cn("text-sm text-[hsl(var(--muted-foreground))]", className), ...props }));
466
+ var SheetDescription = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DialogPrimitive__namespace.Description, { ref, className: cn("text-sm text-[hsl(var(--muted-foreground))]", className), ...props }));
467
467
  SheetDescription.displayName = DialogPrimitive__namespace.Description.displayName;
468
468
  var Popover = PopoverPrimitive__namespace.Root;
469
469
  var PopoverTrigger = PopoverPrimitive__namespace.Trigger;
470
470
  var PopoverAnchor = PopoverPrimitive__namespace.Anchor;
471
- var PopoverContent = React14__default.default.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
471
+ var PopoverContent = React26__default.default.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
472
472
  PopoverPrimitive__namespace.Content,
473
473
  {
474
474
  ref,
@@ -488,7 +488,7 @@ PopoverContent.displayName = PopoverPrimitive__namespace.Content.displayName;
488
488
  var TooltipProvider = TooltipPrimitive__namespace.Provider;
489
489
  var Tooltip = TooltipPrimitive__namespace.Root;
490
490
  var TooltipTrigger = TooltipPrimitive__namespace.Trigger;
491
- var TooltipContent = React14__default.default.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
491
+ var TooltipContent = React26__default.default.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
492
492
  TooltipPrimitive__namespace.Content,
493
493
  {
494
494
  ref,
@@ -520,30 +520,30 @@ var itemStyle = cn(
520
520
  "focus:bg-[hsl(var(--accent))] focus:text-[hsl(var(--accent-foreground))]",
521
521
  "data-[disabled]:pointer-events-none data-[disabled]:opacity-50"
522
522
  );
523
- var DropdownMenuContent = React14__default.default.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Content, { ref, sideOffset, className: cn(contentStyle, className), ...props }) }));
523
+ var DropdownMenuContent = React26__default.default.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Content, { ref, sideOffset, className: cn(contentStyle, className), ...props }) }));
524
524
  DropdownMenuContent.displayName = DropdownMenuPrimitive__namespace.Content.displayName;
525
- var DropdownMenuItem = React14__default.default.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Item, { ref, className: cn(itemStyle, inset && "pl-8", className), ...props }));
525
+ var DropdownMenuItem = React26__default.default.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Item, { ref, className: cn(itemStyle, inset && "pl-8", className), ...props }));
526
526
  DropdownMenuItem.displayName = DropdownMenuPrimitive__namespace.Item.displayName;
527
- var DropdownMenuCheckboxItem = React14__default.default.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuPrimitive__namespace.CheckboxItem, { ref, className: cn(itemStyle, "pl-8", className), checked, ...props, children: [
527
+ var DropdownMenuCheckboxItem = React26__default.default.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuPrimitive__namespace.CheckboxItem, { ref, className: cn(itemStyle, "pl-8", className), checked, ...props, children: [
528
528
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Check, { className: "h-4 w-4" }) }) }),
529
529
  children
530
530
  ] }));
531
531
  DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive__namespace.CheckboxItem.displayName;
532
- var DropdownMenuRadioItem = React14__default.default.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuPrimitive__namespace.RadioItem, { ref, className: cn(itemStyle, "pl-8", className), ...props, children: [
532
+ var DropdownMenuRadioItem = React26__default.default.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuPrimitive__namespace.RadioItem, { ref, className: cn(itemStyle, "pl-8", className), ...props, children: [
533
533
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Circle, { className: "h-2 w-2 fill-current" }) }) }),
534
534
  children
535
535
  ] }));
536
536
  DropdownMenuRadioItem.displayName = DropdownMenuPrimitive__namespace.RadioItem.displayName;
537
- var DropdownMenuLabel = React14__default.default.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Label, { ref, className: cn("px-2 py-1.5 text-xs font-semibold text-[hsl(var(--muted-foreground))]", inset && "pl-8", className), ...props }));
537
+ var DropdownMenuLabel = React26__default.default.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Label, { ref, className: cn("px-2 py-1.5 text-xs font-semibold text-[hsl(var(--muted-foreground))]", inset && "pl-8", className), ...props }));
538
538
  DropdownMenuLabel.displayName = DropdownMenuPrimitive__namespace.Label.displayName;
539
- var DropdownMenuSeparator = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-[hsl(var(--muted))]", className), ...props }));
539
+ var DropdownMenuSeparator = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-[hsl(var(--muted))]", className), ...props }));
540
540
  DropdownMenuSeparator.displayName = DropdownMenuPrimitive__namespace.Separator.displayName;
541
- var DropdownMenuSubTrigger = React14__default.default.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuPrimitive__namespace.SubTrigger, { ref, className: cn(itemStyle, inset && "pl-8", "data-[state=open]:bg-[hsl(var(--accent))]", className), ...props, children: [
541
+ var DropdownMenuSubTrigger = React26__default.default.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(DropdownMenuPrimitive__namespace.SubTrigger, { ref, className: cn(itemStyle, inset && "pl-8", "data-[state=open]:bg-[hsl(var(--accent))]", className), ...props, children: [
542
542
  children,
543
543
  /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronRight, { className: "ml-auto h-4 w-4" })
544
544
  ] }));
545
545
  DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive__namespace.SubTrigger.displayName;
546
- var DropdownMenuSubContent = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.SubContent, { ref, className: cn(contentStyle, className), ...props }));
546
+ var DropdownMenuSubContent = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.SubContent, { ref, className: cn(contentStyle, className), ...props }));
547
547
  DropdownMenuSubContent.displayName = DropdownMenuPrimitive__namespace.SubContent.displayName;
548
548
  var DropdownMenuShortcut = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("ml-auto text-xs tracking-widest opacity-60", className), ...props });
549
549
  DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
@@ -555,33 +555,33 @@ var ContextMenuSub = ContextMenuPrimitive__namespace.Sub;
555
555
  var ContextMenuRadioGroup = ContextMenuPrimitive__namespace.RadioGroup;
556
556
  var contentStyle2 = "z-50 min-w-[8rem] overflow-hidden rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--popover))] p-1 text-[hsl(var(--popover-foreground))] shadow-md animate-in fade-in-80";
557
557
  var itemStyle2 = "relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-[hsl(var(--accent))] focus:text-[hsl(var(--accent-foreground))] data-[disabled]:pointer-events-none data-[disabled]:opacity-50";
558
- var ContextMenuContent = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Content, { ref, className: cn(contentStyle2, className), ...props }) }));
558
+ var ContextMenuContent = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Content, { ref, className: cn(contentStyle2, className), ...props }) }));
559
559
  ContextMenuContent.displayName = ContextMenuPrimitive__namespace.Content.displayName;
560
- var ContextMenuItem = React14__default.default.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Item, { ref, className: cn(itemStyle2, inset && "pl-8", className), ...props }));
560
+ var ContextMenuItem = React26__default.default.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Item, { ref, className: cn(itemStyle2, inset && "pl-8", className), ...props }));
561
561
  ContextMenuItem.displayName = ContextMenuPrimitive__namespace.Item.displayName;
562
- var ContextMenuCheckboxItem = React14__default.default.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(ContextMenuPrimitive__namespace.CheckboxItem, { ref, className: cn(itemStyle2, "pl-8", className), checked, ...props, children: [
562
+ var ContextMenuCheckboxItem = React26__default.default.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(ContextMenuPrimitive__namespace.CheckboxItem, { ref, className: cn(itemStyle2, "pl-8", className), checked, ...props, children: [
563
563
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Check, { className: "h-4 w-4" }) }) }),
564
564
  children
565
565
  ] }));
566
566
  ContextMenuCheckboxItem.displayName = ContextMenuPrimitive__namespace.CheckboxItem.displayName;
567
- var ContextMenuRadioItem = React14__default.default.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(ContextMenuPrimitive__namespace.RadioItem, { ref, className: cn(itemStyle2, "pl-8", className), ...props, children: [
567
+ var ContextMenuRadioItem = React26__default.default.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(ContextMenuPrimitive__namespace.RadioItem, { ref, className: cn(itemStyle2, "pl-8", className), ...props, children: [
568
568
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Circle, { className: "h-2 w-2 fill-current" }) }) }),
569
569
  children
570
570
  ] }));
571
571
  ContextMenuRadioItem.displayName = ContextMenuPrimitive__namespace.RadioItem.displayName;
572
- var ContextMenuLabel = React14__default.default.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Label, { ref, className: cn("px-2 py-1.5 text-xs font-semibold text-[hsl(var(--muted-foreground))]", inset && "pl-8", className), ...props }));
572
+ var ContextMenuLabel = React26__default.default.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Label, { ref, className: cn("px-2 py-1.5 text-xs font-semibold text-[hsl(var(--muted-foreground))]", inset && "pl-8", className), ...props }));
573
573
  ContextMenuLabel.displayName = ContextMenuPrimitive__namespace.Label.displayName;
574
- var ContextMenuSeparator = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-[hsl(var(--muted))]", className), ...props }));
574
+ var ContextMenuSeparator = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-[hsl(var(--muted))]", className), ...props }));
575
575
  ContextMenuSeparator.displayName = ContextMenuPrimitive__namespace.Separator.displayName;
576
- var ContextMenuSubTrigger = React14__default.default.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(ContextMenuPrimitive__namespace.SubTrigger, { ref, className: cn(itemStyle2, inset && "pl-8", className), ...props, children: [
576
+ var ContextMenuSubTrigger = React26__default.default.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(ContextMenuPrimitive__namespace.SubTrigger, { ref, className: cn(itemStyle2, inset && "pl-8", className), ...props, children: [
577
577
  children,
578
578
  /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronRight, { className: "ml-auto h-4 w-4" })
579
579
  ] }));
580
580
  ContextMenuSubTrigger.displayName = ContextMenuPrimitive__namespace.SubTrigger.displayName;
581
- var ContextMenuSubContent = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.SubContent, { ref, className: cn(contentStyle2, className), ...props }));
581
+ var ContextMenuSubContent = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.SubContent, { ref, className: cn(contentStyle2, className), ...props }));
582
582
  ContextMenuSubContent.displayName = ContextMenuPrimitive__namespace.SubContent.displayName;
583
583
  var ContextMenuShortcut = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx("span", { className: cn("ml-auto text-xs tracking-widest opacity-60", className), ...props });
584
- var Card = React14__default.default.forwardRef(
584
+ var Card = React26__default.default.forwardRef(
585
585
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
586
586
  "div",
587
587
  {
@@ -592,23 +592,23 @@ var Card = React14__default.default.forwardRef(
592
592
  )
593
593
  );
594
594
  Card.displayName = "Card";
595
- var CardHeader = React14__default.default.forwardRef(
595
+ var CardHeader = React26__default.default.forwardRef(
596
596
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex flex-col space-y-1.5 p-6", className), ...props })
597
597
  );
598
598
  CardHeader.displayName = "CardHeader";
599
- var CardTitle = React14__default.default.forwardRef(
599
+ var CardTitle = React26__default.default.forwardRef(
600
600
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("font-semibold leading-none tracking-tight", className), ...props })
601
601
  );
602
602
  CardTitle.displayName = "CardTitle";
603
- var CardDescription = React14__default.default.forwardRef(
603
+ var CardDescription = React26__default.default.forwardRef(
604
604
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("text-sm text-muted-foreground", className), ...props })
605
605
  );
606
606
  CardDescription.displayName = "CardDescription";
607
- var CardContent = React14__default.default.forwardRef(
607
+ var CardContent = React26__default.default.forwardRef(
608
608
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("p-6 pt-0", className), ...props })
609
609
  );
610
610
  CardContent.displayName = "CardContent";
611
- var CardFooter = React14__default.default.forwardRef(
611
+ var CardFooter = React26__default.default.forwardRef(
612
612
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex items-center p-6 pt-0", className), ...props })
613
613
  );
614
614
  CardFooter.displayName = "CardFooter";
@@ -629,7 +629,7 @@ var badgeVariants = classVarianceAuthority.cva(
629
629
  function Badge({ className, variant, ...props }) {
630
630
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn(badgeVariants({ variant }), className), ...props });
631
631
  }
632
- var Avatar = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
632
+ var Avatar = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
633
633
  AvatarPrimitive__namespace.Root,
634
634
  {
635
635
  ref,
@@ -638,9 +638,9 @@ var Avatar = React14__default.default.forwardRef(({ className, ...props }, ref)
638
638
  }
639
639
  ));
640
640
  Avatar.displayName = AvatarPrimitive__namespace.Root.displayName;
641
- var AvatarImage = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(AvatarPrimitive__namespace.Image, { ref, className: cn("aspect-square h-full w-full object-cover", className), ...props }));
641
+ var AvatarImage = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(AvatarPrimitive__namespace.Image, { ref, className: cn("aspect-square h-full w-full object-cover", className), ...props }));
642
642
  AvatarImage.displayName = AvatarPrimitive__namespace.Image.displayName;
643
- var AvatarFallback = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
643
+ var AvatarFallback = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
644
644
  AvatarPrimitive__namespace.Fallback,
645
645
  {
646
646
  ref,
@@ -649,7 +649,7 @@ var AvatarFallback = React14__default.default.forwardRef(({ className, ...props
649
649
  }
650
650
  ));
651
651
  AvatarFallback.displayName = AvatarPrimitive__namespace.Fallback.displayName;
652
- var Separator4 = React14__default.default.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
652
+ var Separator4 = React26__default.default.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
653
653
  SeparatorPrimitive__namespace.Root,
654
654
  {
655
655
  ref,
@@ -673,7 +673,7 @@ function Skeleton({ className, ...props }) {
673
673
  }
674
674
  );
675
675
  }
676
- var Progress = React14__default.default.forwardRef(({ className, value, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
676
+ var Progress = React26__default.default.forwardRef(({ className, value, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
677
677
  ProgressPrimitive__namespace.Root,
678
678
  {
679
679
  ref,
@@ -690,7 +690,7 @@ var Progress = React14__default.default.forwardRef(({ className, value, ...props
690
690
  ));
691
691
  Progress.displayName = ProgressPrimitive__namespace.Root.displayName;
692
692
  var Tabs = TabsPrimitive__namespace.Root;
693
- var TabsList = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
693
+ var TabsList = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
694
694
  TabsPrimitive__namespace.List,
695
695
  {
696
696
  ref,
@@ -702,7 +702,7 @@ var TabsList = React14__default.default.forwardRef(({ className, ...props }, ref
702
702
  }
703
703
  ));
704
704
  TabsList.displayName = TabsPrimitive__namespace.List.displayName;
705
- var TabsTrigger = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
705
+ var TabsTrigger = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
706
706
  TabsPrimitive__namespace.Trigger,
707
707
  {
708
708
  ref,
@@ -717,7 +717,7 @@ var TabsTrigger = React14__default.default.forwardRef(({ className, ...props },
717
717
  }
718
718
  ));
719
719
  TabsTrigger.displayName = TabsPrimitive__namespace.Trigger.displayName;
720
- var TabsContent = React14__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
720
+ var TabsContent = React26__default.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
721
721
  TabsPrimitive__namespace.Content,
722
722
  {
723
723
  ref,
@@ -750,7 +750,7 @@ var justifyMap = {
750
750
  around: "justify-around",
751
751
  evenly: "justify-evenly"
752
752
  };
753
- var Stack = React14__default.default.forwardRef(
753
+ var Stack = React26__default.default.forwardRef(
754
754
  ({ className, gap, direction = "col", align, justify, wrap, style, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
755
755
  "div",
756
756
  {
@@ -769,11 +769,11 @@ var Stack = React14__default.default.forwardRef(
769
769
  )
770
770
  );
771
771
  Stack.displayName = "Stack";
772
- var HStack = React14__default.default.forwardRef(
772
+ var HStack = React26__default.default.forwardRef(
773
773
  (props, ref) => /* @__PURE__ */ jsxRuntime.jsx(Stack, { ref, direction: "row", ...props })
774
774
  );
775
775
  HStack.displayName = "HStack";
776
- var VStack = React14__default.default.forwardRef(
776
+ var VStack = React26__default.default.forwardRef(
777
777
  (props, ref) => /* @__PURE__ */ jsxRuntime.jsx(Stack, { ref, direction: "col", ...props })
778
778
  );
779
779
  VStack.displayName = "VStack";
@@ -784,7 +784,7 @@ var sizeMap = {
784
784
  xl: "max-w-screen-xl",
785
785
  full: "max-w-full"
786
786
  };
787
- var Container = React14__default.default.forwardRef(
787
+ var Container = React26__default.default.forwardRef(
788
788
  ({ className, size = "lg", noPadding = false, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
789
789
  "div",
790
790
  {
@@ -800,7 +800,7 @@ var Container = React14__default.default.forwardRef(
800
800
  )
801
801
  );
802
802
  Container.displayName = "Container";
803
- var Page = React14__default.default.forwardRef(
803
+ var Page = React26__default.default.forwardRef(
804
804
  ({ className, maxWidth, style, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
805
805
  "div",
806
806
  {
@@ -812,7 +812,7 @@ var Page = React14__default.default.forwardRef(
812
812
  )
813
813
  );
814
814
  Page.displayName = "Page";
815
- var PageHeader = React14__default.default.forwardRef(
815
+ var PageHeader = React26__default.default.forwardRef(
816
816
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
817
817
  "div",
818
818
  {
@@ -823,7 +823,7 @@ var PageHeader = React14__default.default.forwardRef(
823
823
  )
824
824
  );
825
825
  PageHeader.displayName = "PageHeader";
826
- var PageTitle = React14__default.default.forwardRef(
826
+ var PageTitle = React26__default.default.forwardRef(
827
827
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
828
828
  "h1",
829
829
  {
@@ -834,28 +834,28 @@ var PageTitle = React14__default.default.forwardRef(
834
834
  )
835
835
  );
836
836
  PageTitle.displayName = "PageTitle";
837
- var PageDescription = React14__default.default.forwardRef(
837
+ var PageDescription = React26__default.default.forwardRef(
838
838
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("p", { ref, className: cn("text-sm text-[hsl(var(--muted-foreground))] mt-1", className), ...props })
839
839
  );
840
840
  PageDescription.displayName = "PageDescription";
841
- var PageActions = React14__default.default.forwardRef(
841
+ var PageActions = React26__default.default.forwardRef(
842
842
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex items-center gap-2 shrink-0", className), ...props })
843
843
  );
844
844
  PageActions.displayName = "PageActions";
845
- var PageBody = React14__default.default.forwardRef(
845
+ var PageBody = React26__default.default.forwardRef(
846
846
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex-1 p-6", className), ...props })
847
847
  );
848
848
  PageBody.displayName = "PageBody";
849
- var SidebarCtx = React14__default.default.createContext({ collapsed: false });
850
- var useSidebarCtx = () => React14__default.default.useContext(SidebarCtx);
849
+ var SidebarCtx = React26__default.default.createContext({ collapsed: false });
850
+ var useSidebarCtx = () => React26__default.default.useContext(SidebarCtx);
851
851
  var makeSlot = (name, cls) => {
852
- const C = React14__default.default.forwardRef(
852
+ const C = React26__default.default.forwardRef(
853
853
  ({ className, ...p }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn(cls, className), ...p })
854
854
  );
855
855
  C.displayName = name;
856
856
  return C;
857
857
  };
858
- var Sidebar = React14__default.default.forwardRef(
858
+ var Sidebar = React26__default.default.forwardRef(
859
859
  ({ className, collapsed = false, onCollapse, width = "240px", style, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(SidebarCtx.Provider, { value: { collapsed }, children: /* @__PURE__ */ jsxRuntime.jsxs(
860
860
  "div",
861
861
  {
@@ -883,7 +883,7 @@ var SidebarContent = makeSlot("SidebarContent", "flex-1 overflow-y-auto py-2");
883
883
  var SidebarFooter = makeSlot("SidebarFooter", "px-3 py-3 border-t border-[hsl(var(--border))] shrink-0");
884
884
  var SidebarGroup = makeSlot("SidebarGroup", "mb-2");
885
885
  var SidebarSeparator = makeSlot("SidebarSeparator", "h-px bg-[hsl(var(--border))] mx-3 my-2");
886
- var SidebarGroupLabel = React14__default.default.forwardRef(
886
+ var SidebarGroupLabel = React26__default.default.forwardRef(
887
887
  ({ className, ...props }, ref) => {
888
888
  const { collapsed } = useSidebarCtx();
889
889
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -897,7 +897,7 @@ var SidebarGroupLabel = React14__default.default.forwardRef(
897
897
  }
898
898
  );
899
899
  SidebarGroupLabel.displayName = "SidebarGroupLabel";
900
- var SidebarItem = React14__default.default.forwardRef(
900
+ var SidebarItem = React26__default.default.forwardRef(
901
901
  ({ className, icon, label, active, href, badge, onClick, ...props }, ref) => {
902
902
  const { collapsed } = useSidebarCtx();
903
903
  const cls = cn(
@@ -917,7 +917,7 @@ var SidebarItem = React14__default.default.forwardRef(
917
917
  }
918
918
  );
919
919
  SidebarItem.displayName = "SidebarItem";
920
- var Navbar = React14__default.default.forwardRef(
920
+ var Navbar = React26__default.default.forwardRef(
921
921
  ({ className, sticky = false, border = true, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
922
922
  "nav",
923
923
  {
@@ -933,7 +933,7 @@ var Navbar = React14__default.default.forwardRef(
933
933
  )
934
934
  );
935
935
  Navbar.displayName = "Navbar";
936
- var NavbarBrand = React14__default.default.forwardRef(
936
+ var NavbarBrand = React26__default.default.forwardRef(
937
937
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex items-center gap-2 px-4 shrink-0", className), ...props })
938
938
  );
939
939
  NavbarBrand.displayName = "NavbarBrand";
@@ -942,7 +942,7 @@ var alignMap2 = {
942
942
  center: "justify-center flex-1",
943
943
  end: "justify-end ml-auto"
944
944
  };
945
- var NavbarContent = React14__default.default.forwardRef(
945
+ var NavbarContent = React26__default.default.forwardRef(
946
946
  ({ className, align = "start", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
947
947
  "div",
948
948
  {
@@ -953,44 +953,106 @@ var NavbarContent = React14__default.default.forwardRef(
953
953
  )
954
954
  );
955
955
  NavbarContent.displayName = "NavbarContent";
956
- var NavbarItem = React14__default.default.forwardRef(
956
+ var NavbarItem = React26__default.default.forwardRef(
957
957
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex items-center", className), ...props })
958
958
  );
959
959
  NavbarItem.displayName = "NavbarItem";
960
- var AppShellCtx = React14__default.default.createContext({
960
+ var AppShellCtx = React26__default.default.createContext({
961
961
  collapsed: false,
962
962
  setCollapsed: () => {
963
+ },
964
+ mobileOpen: false,
965
+ setMobileOpen: () => {
963
966
  }
964
967
  });
965
- var useAppShell = () => React14__default.default.useContext(AppShellCtx);
966
- var AppShell = React14__default.default.forwardRef(
968
+ var useAppShell = () => React26__default.default.useContext(AppShellCtx);
969
+ var AppShell = React26__default.default.forwardRef(
967
970
  ({ className, defaultCollapsed = false, children, ...props }, ref) => {
968
- const [collapsed, setCollapsed] = React14__default.default.useState(defaultCollapsed);
969
- return /* @__PURE__ */ jsxRuntime.jsx(AppShellCtx.Provider, { value: { collapsed, setCollapsed }, children: /* @__PURE__ */ jsxRuntime.jsx(
971
+ const [collapsed, setCollapsed] = React26__default.default.useState(defaultCollapsed);
972
+ const [mobileOpen, setMobileOpen] = React26__default.default.useState(false);
973
+ React26__default.default.useEffect(() => {
974
+ const handleClick = (e) => {
975
+ const target = e.target;
976
+ if (target.closest("a[href]") || target.closest("[data-mobile-close]")) {
977
+ setMobileOpen(false);
978
+ }
979
+ };
980
+ document.addEventListener("click", handleClick);
981
+ return () => document.removeEventListener("click", handleClick);
982
+ }, []);
983
+ return /* @__PURE__ */ jsxRuntime.jsx(AppShellCtx.Provider, { value: { collapsed, setCollapsed, mobileOpen, setMobileOpen }, children: /* @__PURE__ */ jsxRuntime.jsxs(
970
984
  "div",
971
985
  {
972
986
  ref,
973
- className: cn("flex h-screen w-full overflow-hidden bg-[hsl(var(--background))]", className),
987
+ className: cn("flex h-screen w-full overflow-hidden bg-background", className),
974
988
  ...props,
975
- children
989
+ children: [
990
+ mobileOpen && /* @__PURE__ */ jsxRuntime.jsx(
991
+ "div",
992
+ {
993
+ className: "fixed inset-0 z-40 bg-black/50 md:hidden",
994
+ onClick: () => setMobileOpen(false)
995
+ }
996
+ ),
997
+ children
998
+ ]
976
999
  }
977
1000
  ) });
978
1001
  }
979
1002
  );
980
1003
  AppShell.displayName = "AppShell";
981
- var AppShellSidebar = React14__default.default.forwardRef(
982
- ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("shrink-0 h-full", className), ...props })
1004
+ var AppShellSidebar = React26__default.default.forwardRef(
1005
+ ({ className, ...props }, ref) => {
1006
+ const { mobileOpen } = useAppShell();
1007
+ return /* @__PURE__ */ jsxRuntime.jsx(
1008
+ "div",
1009
+ {
1010
+ ref,
1011
+ className: cn(
1012
+ // Desktop: always visible
1013
+ "shrink-0 h-full",
1014
+ // Mobile: hidden by default, slide in as fixed overlay when open
1015
+ "fixed inset-y-0 left-0 z-50 md:relative md:translate-x-0 transition-transform duration-200",
1016
+ mobileOpen ? "translate-x-0" : "-translate-x-full md:translate-x-0",
1017
+ className
1018
+ ),
1019
+ ...props
1020
+ }
1021
+ );
1022
+ }
983
1023
  );
984
1024
  AppShellSidebar.displayName = "AppShellSidebar";
985
- var AppShellMain = React14__default.default.forwardRef(
1025
+ var AppShellMain = React26__default.default.forwardRef(
986
1026
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex-1 min-w-0 flex flex-col overflow-auto", className), ...props })
987
1027
  );
988
1028
  AppShellMain.displayName = "AppShellMain";
989
- var SplitPage = React14__default.default.forwardRef(
1029
+ var MobileSidebarTrigger = React26__default.default.forwardRef(
1030
+ ({ className, ...props }, ref) => {
1031
+ const { mobileOpen, setMobileOpen } = useAppShell();
1032
+ return /* @__PURE__ */ jsxRuntime.jsx(
1033
+ "button",
1034
+ {
1035
+ ref,
1036
+ onClick: () => setMobileOpen(!mobileOpen),
1037
+ "aria-label": mobileOpen ? "Close menu" : "Open menu",
1038
+ className: cn(
1039
+ "md:hidden inline-flex items-center justify-center rounded-md p-2",
1040
+ "text-muted-foreground hover:bg-accent hover:text-accent-foreground",
1041
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
1042
+ className
1043
+ ),
1044
+ ...props,
1045
+ children: mobileOpen ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.X, { className: "h-5 w-5" }) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Menu, { className: "h-5 w-5" })
1046
+ }
1047
+ );
1048
+ }
1049
+ );
1050
+ MobileSidebarTrigger.displayName = "MobileSidebarTrigger";
1051
+ var SplitPage = React26__default.default.forwardRef(
990
1052
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex h-full w-full overflow-hidden", className), ...props })
991
1053
  );
992
1054
  SplitPage.displayName = "SplitPage";
993
- var SplitPageList = React14__default.default.forwardRef(
1055
+ var SplitPageList = React26__default.default.forwardRef(
994
1056
  ({ className, width = "320px", style, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
995
1057
  "div",
996
1058
  {
@@ -1002,11 +1064,11 @@ var SplitPageList = React14__default.default.forwardRef(
1002
1064
  )
1003
1065
  );
1004
1066
  SplitPageList.displayName = "SplitPageList";
1005
- var SplitPageDetail = React14__default.default.forwardRef(
1067
+ var SplitPageDetail = React26__default.default.forwardRef(
1006
1068
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex-1 min-w-0 h-full overflow-auto", className), ...props })
1007
1069
  );
1008
1070
  SplitPageDetail.displayName = "SplitPageDetail";
1009
- var ResizeBox = React14__default.default.forwardRef(
1071
+ var ResizeBox = React26__default.default.forwardRef(
1010
1072
  ({ className, resize = "both", minWidth = 100, minHeight = 100, style, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1011
1073
  "div",
1012
1074
  {
@@ -1023,7 +1085,7 @@ var HandleIcon = () => /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "10", hei
1023
1085
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M8 5L5 8", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" }),
1024
1086
  /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M8 8L8 8", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
1025
1087
  ] });
1026
- var ResizeHandle = React14__default.default.forwardRef(
1088
+ var ResizeHandle = React26__default.default.forwardRef(
1027
1089
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1028
1090
  "div",
1029
1091
  {
@@ -1047,7 +1109,7 @@ function Field({ label, description, error, required, children, className }) {
1047
1109
  error && /* @__PURE__ */ jsxRuntime.jsx(FieldError, { children: error })
1048
1110
  ] });
1049
1111
  }
1050
- var FieldLabel = React14__default.default.forwardRef(
1112
+ var FieldLabel = React26__default.default.forwardRef(
1051
1113
  ({ className, required, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
1052
1114
  "label",
1053
1115
  {
@@ -1062,7 +1124,7 @@ var FieldLabel = React14__default.default.forwardRef(
1062
1124
  )
1063
1125
  );
1064
1126
  FieldLabel.displayName = "FieldLabel";
1065
- var FieldDescription = React14__default.default.forwardRef(
1127
+ var FieldDescription = React26__default.default.forwardRef(
1066
1128
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1067
1129
  "p",
1068
1130
  {
@@ -1073,7 +1135,7 @@ var FieldDescription = React14__default.default.forwardRef(
1073
1135
  )
1074
1136
  );
1075
1137
  FieldDescription.displayName = "FieldDescription";
1076
- var FieldError = React14__default.default.forwardRef(
1138
+ var FieldError = React26__default.default.forwardRef(
1077
1139
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1078
1140
  "p",
1079
1141
  {
@@ -1093,9 +1155,9 @@ function getStrength(value) {
1093
1155
  return { level: "medium", width: "w-2/3", color: "bg-yellow-500" };
1094
1156
  return { level: "strong", width: "w-full", color: "bg-green-500" };
1095
1157
  }
1096
- var PasswordInput = React14__default.default.forwardRef(
1158
+ var PasswordInput = React26__default.default.forwardRef(
1097
1159
  ({ className, strength, ...props }, ref) => {
1098
- const [show, setShow] = React14.useState(false);
1160
+ const [show, setShow] = React26.useState(false);
1099
1161
  const value = String(props.value ?? "");
1100
1162
  const str = getStrength(value);
1101
1163
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-1.5", children: [
@@ -1128,9 +1190,9 @@ var PasswordInput = React14__default.default.forwardRef(
1128
1190
  }
1129
1191
  );
1130
1192
  PasswordInput.displayName = "PasswordInput";
1131
- var SearchInput = React14__default.default.forwardRef(
1193
+ var SearchInput = React26__default.default.forwardRef(
1132
1194
  ({ className, shortcut, onClear, onChange, value: valueProp, defaultValue, ...props }, ref) => {
1133
- const [internalValue, setInternalValue] = React14.useState(defaultValue ?? "");
1195
+ const [internalValue, setInternalValue] = React26.useState(defaultValue ?? "");
1134
1196
  const isControlled = valueProp !== void 0;
1135
1197
  const value = isControlled ? String(valueProp) : String(internalValue);
1136
1198
  function handleChange(e) {
@@ -1186,8 +1248,8 @@ function filterBySize(files, maxSize) {
1186
1248
  return maxSize ? files.filter((f) => f.size <= maxSize) : files;
1187
1249
  }
1188
1250
  function FileUpload({ accept, multiple, maxSize, onFiles, className, disabled }) {
1189
- const inputRef = React14.useRef(null);
1190
- const [dragging, setDragging] = React14.useState(false);
1251
+ const inputRef = React26.useRef(null);
1252
+ const [dragging, setDragging] = React26.useState(false);
1191
1253
  function handleFiles(raw) {
1192
1254
  if (!raw)
1193
1255
  return;
@@ -1307,9 +1369,9 @@ function CalendarGrid({ year, month, selected, onSelect }) {
1307
1369
  ] });
1308
1370
  }
1309
1371
  function DatePicker({ value, onChange, placeholder = "Pick a date", disabled, className }) {
1310
- const [open, setOpen] = React14.useState(false);
1372
+ const [open, setOpen] = React26.useState(false);
1311
1373
  const now = value ?? /* @__PURE__ */ new Date();
1312
- const [view, setView] = React14.useState({ year: now.getFullYear(), month: now.getMonth() });
1374
+ const [view, setView] = React26.useState({ year: now.getFullYear(), month: now.getMonth() });
1313
1375
  function navigate(delta) {
1314
1376
  setView((v) => {
1315
1377
  const date = new Date(v.year, v.month + delta);
@@ -1353,7 +1415,7 @@ function FormField(props) {
1353
1415
  function FormItem({ className, ...props }) {
1354
1416
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex flex-col gap-1.5", className), ...props });
1355
1417
  }
1356
- var FormLabel = React14__default.default.forwardRef(
1418
+ var FormLabel = React26__default.default.forwardRef(
1357
1419
  ({ className, error, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1358
1420
  "label",
1359
1421
  {
@@ -1368,9 +1430,9 @@ var FormLabel = React14__default.default.forwardRef(
1368
1430
  )
1369
1431
  );
1370
1432
  FormLabel.displayName = "FormLabel";
1371
- var FormControl = React14__default.default.forwardRef(
1433
+ var FormControl = React26__default.default.forwardRef(
1372
1434
  ({ ...props }, ref) => {
1373
- const id = React14.useId();
1435
+ const id = React26.useId();
1374
1436
  return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, id, ...props });
1375
1437
  }
1376
1438
  );
@@ -1386,15 +1448,15 @@ function FormMessage({ className, children, name }) {
1386
1448
  return null;
1387
1449
  return /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("text-xs text-[hsl(var(--destructive))]", className), children: message });
1388
1450
  }
1389
- var StepFormContext = React14.createContext(null);
1451
+ var StepFormContext = React26.createContext(null);
1390
1452
  function useStepForm() {
1391
- const ctx = React14.useContext(StepFormContext);
1453
+ const ctx = React26.useContext(StepFormContext);
1392
1454
  if (!ctx)
1393
1455
  throw new Error("useStepForm must be used within StepForm");
1394
1456
  return ctx;
1395
1457
  }
1396
1458
  function StepForm({ steps, onSubmit, children, className }) {
1397
- const [currentStep, setCurrentStep] = React14.useState(0);
1459
+ const [currentStep, setCurrentStep] = React26.useState(0);
1398
1460
  const totalSteps = steps.length;
1399
1461
  const ctx = {
1400
1462
  currentStep,
@@ -1405,7 +1467,7 @@ function StepForm({ steps, onSubmit, children, className }) {
1405
1467
  isFirst: currentStep === 0,
1406
1468
  isLast: currentStep === totalSteps - 1
1407
1469
  };
1408
- const childArray = React14__default.default.Children.toArray(children);
1470
+ const childArray = React26__default.default.Children.toArray(children);
1409
1471
  const currentChild = childArray[currentStep];
1410
1472
  return /* @__PURE__ */ jsxRuntime.jsx(StepFormContext.Provider, { value: ctx, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex flex-col gap-6", className), children: [
1411
1473
  /* @__PURE__ */ jsxRuntime.jsx(StepIndicator, { steps, currentStep }),
@@ -1414,7 +1476,7 @@ function StepForm({ steps, onSubmit, children, className }) {
1414
1476
  ] }) });
1415
1477
  }
1416
1478
  function StepIndicator({ steps, currentStep }) {
1417
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-2", children: steps.map((label, i) => /* @__PURE__ */ jsxRuntime.jsxs(React14__default.default.Fragment, { children: [
1479
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-2", children: steps.map((label, i) => /* @__PURE__ */ jsxRuntime.jsxs(React26__default.default.Fragment, { children: [
1418
1480
  i > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("h-px flex-1 bg-[hsl(var(--border))]", i <= currentStep && "bg-[hsl(var(--primary))]") }),
1419
1481
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center gap-1", children: [
1420
1482
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn(
@@ -1495,7 +1557,7 @@ function ObjectField({
1495
1557
  children,
1496
1558
  className
1497
1559
  }) {
1498
- const [open, setOpen] = React14.useState(defaultOpen);
1560
+ const [open, setOpen] = React26.useState(defaultOpen);
1499
1561
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("rounded-md border border-[hsl(var(--border))] overflow-hidden", className), children: [
1500
1562
  /* @__PURE__ */ jsxRuntime.jsxs(
1501
1563
  "div",
@@ -1649,7 +1711,7 @@ function DataTableToolbar({ table, searchColumn }) {
1649
1711
  ) });
1650
1712
  }
1651
1713
  function DataTable({ columns, data, pageSize = 10, searchable, searchColumn, loading }) {
1652
- const [sorting, setSorting] = React14__default.default.useState([]);
1714
+ const [sorting, setSorting] = React26__default.default.useState([]);
1653
1715
  const table = reactTable.useReactTable({
1654
1716
  data,
1655
1717
  columns,
@@ -1676,8 +1738,8 @@ function DataTable({ columns, data, pageSize = 10, searchable, searchColumn, loa
1676
1738
  ] });
1677
1739
  }
1678
1740
  function EditableCell({ value: initial, onSave }) {
1679
- const [editing, setEditing] = React14__default.default.useState(false);
1680
- const [val, setVal] = React14__default.default.useState(String(initial ?? ""));
1741
+ const [editing, setEditing] = React26__default.default.useState(false);
1742
+ const [val, setVal] = React26__default.default.useState(String(initial ?? ""));
1681
1743
  const commit = () => {
1682
1744
  onSave(val);
1683
1745
  setEditing(false);
@@ -1710,10 +1772,10 @@ var selectionCol = () => ({
1710
1772
  enableResizing: false
1711
1773
  });
1712
1774
  function DataGrid({ columns, data: initialData, onDataChange, editable, className }) {
1713
- const [data, setData] = React14__default.default.useState(initialData);
1714
- const [rowSelection, setRowSelection] = React14__default.default.useState({});
1775
+ const [data, setData] = React26__default.default.useState(initialData);
1776
+ const [rowSelection, setRowSelection] = React26__default.default.useState({});
1715
1777
  const columnResizeMode = "onChange";
1716
- const editableColumns = React14__default.default.useMemo(() => {
1778
+ const editableColumns = React26__default.default.useMemo(() => {
1717
1779
  if (!editable)
1718
1780
  return columns;
1719
1781
  return columns.map((col) => ({
@@ -1733,7 +1795,7 @@ function DataGrid({ columns, data: initialData, onDataChange, editable, classNam
1733
1795
  )
1734
1796
  }));
1735
1797
  }, [columns, data, editable, onDataChange]);
1736
- const allColumns = React14__default.default.useMemo(() => [selectionCol(), ...editableColumns], [editableColumns]);
1798
+ const allColumns = React26__default.default.useMemo(() => [selectionCol(), ...editableColumns], [editableColumns]);
1737
1799
  const table = reactTable.useReactTable({
1738
1800
  data,
1739
1801
  columns: allColumns,
@@ -1751,7 +1813,7 @@ function DataGrid({ columns, data: initialData, onDataChange, editable, classNam
1751
1813
  /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: table.getRowModel().rows.map((row) => /* @__PURE__ */ jsxRuntime.jsx("tr", { className: cn("border-t border-[hsl(var(--border))] hover:bg-[hsl(var(--muted)/0.3)] transition-colors", row.getIsSelected() && "bg-[hsl(var(--primary)/0.06)]"), children: row.getVisibleCells().map((cell) => /* @__PURE__ */ jsxRuntime.jsx("td", { style: { width: cell.column.getSize() }, className: "px-3 py-2 border-r border-[hsl(var(--border))] last:border-r-0", children: reactTable.flexRender(cell.column.columnDef.cell, cell.getContext()) }, cell.id)) }, row.id)) })
1752
1814
  ] }) });
1753
1815
  }
1754
- var EmptyStateIcon = React14__default.default.forwardRef(
1816
+ var EmptyStateIcon = React26__default.default.forwardRef(
1755
1817
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex h-12 w-12 items-center justify-center rounded-full bg-[hsl(var(--muted))] text-[hsl(var(--muted-foreground))]", className), ...props })
1756
1818
  );
1757
1819
  EmptyStateIcon.displayName = "EmptyStateIcon";
@@ -1765,7 +1827,7 @@ function EmptyState({ icon, title, description, action, className }) {
1765
1827
  action && /* @__PURE__ */ jsxRuntime.jsx(Button, { onClick: action.onClick, className: "mt-1", children: action.label })
1766
1828
  ] });
1767
1829
  }
1768
- var PropertyList = React14__default.default.forwardRef(
1830
+ var PropertyList = React26__default.default.forwardRef(
1769
1831
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("dl", { ref, className: cn("divide-y divide-[hsl(var(--border))]", className), ...props })
1770
1832
  );
1771
1833
  PropertyList.displayName = "PropertyList";
@@ -1781,7 +1843,7 @@ var dotColors = {
1781
1843
  error: "bg-red-500",
1782
1844
  warning: "bg-yellow-500"
1783
1845
  };
1784
- var TimelineContent = React14__default.default.forwardRef(
1846
+ var TimelineContent = React26__default.default.forwardRef(
1785
1847
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("pb-1", className), ...props })
1786
1848
  );
1787
1849
  TimelineContent.displayName = "TimelineContent";
@@ -1804,9 +1866,9 @@ function TimelineItem({ icon, title, description, timestamp, variant = "default"
1804
1866
  ] });
1805
1867
  }
1806
1868
  function Timeline({ children, className }) {
1807
- const items = React14__default.default.Children.toArray(children);
1869
+ const items = React26__default.default.Children.toArray(children);
1808
1870
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("", className), children: items.map(
1809
- (child, i) => React14__default.default.isValidElement(child) ? React14__default.default.cloneElement(child, { isLast: i === items.length - 1 }) : child
1871
+ (child, i) => React26__default.default.isValidElement(child) ? React26__default.default.cloneElement(child, { isLast: i === items.length - 1 }) : child
1810
1872
  ) });
1811
1873
  }
1812
1874
  function Stat({ label, value, trend, trendLabel, icon, description, className }) {
@@ -1894,7 +1956,7 @@ function StructuredListItem({ left, title, description, right, onClick, classNam
1894
1956
  }
1895
1957
  );
1896
1958
  }
1897
- var StructuredList = React14__default.default.forwardRef(
1959
+ var StructuredList = React26__default.default.forwardRef(
1898
1960
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("space-y-4", className), ...props })
1899
1961
  );
1900
1962
  StructuredList.displayName = "StructuredList";
@@ -2015,8 +2077,8 @@ function Banner({
2015
2077
  className,
2016
2078
  children
2017
2079
  }) {
2018
- const [dismissed, setDismissed] = React14__default.default.useState(false);
2019
- const [exiting, setExiting] = React14__default.default.useState(false);
2080
+ const [dismissed, setDismissed] = React26__default.default.useState(false);
2081
+ const [exiting, setExiting] = React26__default.default.useState(false);
2020
2082
  const handleDismiss = () => {
2021
2083
  setExiting(true);
2022
2084
  setTimeout(() => {
@@ -2151,7 +2213,7 @@ function BreadcrumbSeparator({ className }) {
2151
2213
  return /* @__PURE__ */ jsxRuntime.jsx("li", { role: "presentation", "aria-hidden": "true", className: cn("flex items-center text-[hsl(var(--muted-foreground))]", className), children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronRight, { className: "h-3.5 w-3.5" }) });
2152
2214
  }
2153
2215
  function Breadcrumb({ children, className }) {
2154
- const items = React14__default.default.Children.toArray(children);
2216
+ const items = React26__default.default.Children.toArray(children);
2155
2217
  const withSeparators = [];
2156
2218
  items.forEach((item, i) => {
2157
2219
  withSeparators.push(item);
@@ -2172,10 +2234,10 @@ function Hotkeys({ keys, className }) {
2172
2234
  var textOps = ["contains", "equals", "starts with"];
2173
2235
  var numOps = ["=", ">", "<", ">=", "<="];
2174
2236
  function AddFilterPopover({ filters, onAdd }) {
2175
- const [open, setOpen] = React14__default.default.useState(false);
2176
- const [key, setKey] = React14__default.default.useState("");
2177
- const [op, setOp] = React14__default.default.useState("");
2178
- const [val, setVal] = React14__default.default.useState("");
2237
+ const [open, setOpen] = React26__default.default.useState(false);
2238
+ const [key, setKey] = React26__default.default.useState("");
2239
+ const [op, setOp] = React26__default.default.useState("");
2240
+ const [val, setVal] = React26__default.default.useState("");
2179
2241
  const def = filters.find((f) => f.key === key);
2180
2242
  const ops = def?.type === "number" ? numOps : textOps;
2181
2243
  const handleAdd = () => {
@@ -2278,19 +2340,19 @@ function ToggleButtonGroup(props) {
2278
2340
  props.onChange(val);
2279
2341
  }
2280
2342
  };
2281
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("inline-flex items-center gap-1 rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.4)] p-0.5", className), children: React14__default.default.Children.map(children, (child) => {
2282
- if (!React14__default.default.isValidElement(child))
2343
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("inline-flex items-center gap-1 rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.4)] p-0.5", className), children: React26__default.default.Children.map(children, (child) => {
2344
+ if (!React26__default.default.isValidElement(child))
2283
2345
  return child;
2284
2346
  const tb = child;
2285
- return React14__default.default.cloneElement(tb, {
2347
+ return React26__default.default.cloneElement(tb, {
2286
2348
  pressed: isPressed(tb.props.value),
2287
2349
  onClick: () => handleClick(tb.props.value)
2288
2350
  });
2289
2351
  }) });
2290
2352
  }
2291
2353
  function useCommandBar() {
2292
- const [open, setOpen] = React14__default.default.useState(false);
2293
- React14__default.default.useEffect(() => {
2354
+ const [open, setOpen] = React26__default.default.useState(false);
2355
+ React26__default.default.useEffect(() => {
2294
2356
  const handler = (e) => {
2295
2357
  if ((e.metaKey || e.ctrlKey) && e.key === "k") {
2296
2358
  e.preventDefault();
@@ -2330,12 +2392,12 @@ function CommandBarItem({ icon, label, shortcut, onSelect, active, className })
2330
2392
  );
2331
2393
  }
2332
2394
  function CommandBar({ open, onOpenChange, children, placeholder = "Search commands...", onSearch }) {
2333
- const [query, setQuery] = React14__default.default.useState("");
2395
+ const [query, setQuery] = React26__default.default.useState("");
2334
2396
  const handleSearch = (v) => {
2335
2397
  setQuery(v);
2336
2398
  onSearch?.(v);
2337
2399
  };
2338
- const items = React14__default.default.useRef(null);
2400
+ const items = React26__default.default.useRef(null);
2339
2401
  const handleKeyDown = (e) => {
2340
2402
  if (e.key === "Escape") {
2341
2403
  onOpenChange(false);
@@ -2405,9 +2467,9 @@ function KanbanColumn({ column, isOver }) {
2405
2467
  ] });
2406
2468
  }
2407
2469
  function Kanban({ columns: initialColumns, onMoveCard, className }) {
2408
- const [cols, setCols] = React14__default.default.useState(initialColumns);
2409
- const [activeCard, setActiveCard] = React14__default.default.useState(null);
2410
- const [overColId, setOverColId] = React14__default.default.useState(null);
2470
+ const [cols, setCols] = React26__default.default.useState(initialColumns);
2471
+ const [activeCard, setActiveCard] = React26__default.default.useState(null);
2472
+ const [overColId, setOverColId] = React26__default.default.useState(null);
2411
2473
  const sensors = core.useSensors(core.useSensor(core.PointerSensor, { activationConstraint: { distance: 5 } }));
2412
2474
  const findColByCard = (cardId) => cols.find((c) => c.cards.some((card) => card.id === cardId));
2413
2475
  const onDragStart = ({ active }) => {
@@ -2680,25 +2742,25 @@ function Beacon({ color = "primary", size = "md", children, className }) {
2680
2742
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute -top-1 -right-1 flex", children: /* @__PURE__ */ jsxRuntime.jsx(BeaconDot, { color, size }) })
2681
2743
  ] });
2682
2744
  }
2683
- var TourContext = React14.createContext(null);
2745
+ var TourContext = React26.createContext(null);
2684
2746
  function useTour() {
2685
- const ctx = React14.useContext(TourContext);
2747
+ const ctx = React26.useContext(TourContext);
2686
2748
  if (!ctx)
2687
2749
  throw new Error("useTour must be used within <Tour>");
2688
2750
  return ctx;
2689
2751
  }
2690
2752
  function Tour({ totalSteps, children }) {
2691
- const [currentStep, setCurrentStep] = React14.useState(0);
2692
- const [isActive, setIsActive] = React14.useState(false);
2693
- const stop = React14.useCallback(() => setIsActive(false), []);
2694
- const start = React14.useCallback(() => {
2753
+ const [currentStep, setCurrentStep] = React26.useState(0);
2754
+ const [isActive, setIsActive] = React26.useState(false);
2755
+ const stop = React26.useCallback(() => setIsActive(false), []);
2756
+ const start = React26.useCallback(() => {
2695
2757
  setCurrentStep(0);
2696
2758
  setIsActive(true);
2697
2759
  }, []);
2698
- const next = React14.useCallback(() => setCurrentStep((s) => Math.min(s + 1, totalSteps - 1)), [totalSteps]);
2699
- const prev = React14.useCallback(() => setCurrentStep((s) => Math.max(s - 1, 0)), []);
2700
- const goTo = React14.useCallback((step) => setCurrentStep(Math.max(0, Math.min(step, totalSteps - 1))), [totalSteps]);
2701
- React14.useEffect(() => {
2760
+ const next = React26.useCallback(() => setCurrentStep((s) => Math.min(s + 1, totalSteps - 1)), [totalSteps]);
2761
+ const prev = React26.useCallback(() => setCurrentStep((s) => Math.max(s - 1, 0)), []);
2762
+ const goTo = React26.useCallback((step) => setCurrentStep(Math.max(0, Math.min(step, totalSteps - 1))), [totalSteps]);
2763
+ React26.useEffect(() => {
2702
2764
  if (!isActive)
2703
2765
  return;
2704
2766
  const onKey = (e) => {
@@ -2903,7 +2965,7 @@ function SidebarLayoutSearch({
2903
2965
  children,
2904
2966
  className
2905
2967
  }) {
2906
- const [query, setQuery] = React14.useState("");
2968
+ const [query, setQuery] = React26.useState("");
2907
2969
  const filtered = ALL_ITEMS.filter((i) => i.label.toLowerCase().includes(query.toLowerCase()));
2908
2970
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex h-[600px] overflow-hidden rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--background))]", className), children: [
2909
2971
  /* @__PURE__ */ jsxRuntime.jsxs("aside", { className: "flex w-60 flex-col border-r border-[hsl(var(--border))] bg-[hsl(var(--card))]", children: [
@@ -3001,8 +3063,8 @@ function StackedLayoutTabs({
3001
3063
  children,
3002
3064
  className
3003
3065
  }) {
3004
- const [activeTab, setActiveTab] = React14.useState(0);
3005
- const [activeNav, setActiveNav] = React14.useState(0);
3066
+ const [activeTab, setActiveTab] = React26.useState(0);
3067
+ const [activeNav, setActiveNav] = React26.useState(0);
3006
3068
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex h-[600px] flex-col overflow-hidden rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--background))]", className), children: [
3007
3069
  /* @__PURE__ */ jsxRuntime.jsxs("nav", { className: "flex h-14 items-center gap-6 border-b border-[hsl(var(--border))] bg-[hsl(var(--card))] px-4", children: [
3008
3070
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-semibold text-sm shrink-0", children: brandName }),
@@ -3093,7 +3155,7 @@ function NotifRow({ label, description, checked, onChange }) {
3093
3155
  ] });
3094
3156
  }
3095
3157
  function NotificationSettings({ className }) {
3096
- const [states, setStates] = React14.useState(
3158
+ const [states, setStates] = React26.useState(
3097
3159
  Object.fromEntries(NOTIFICATIONS.map((n) => [n.id, n.default]))
3098
3160
  );
3099
3161
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--card))] p-6", className), children: [
@@ -3122,8 +3184,8 @@ var MEMBERS = [
3122
3184
  ];
3123
3185
  var roleVariant = (role) => role === "Owner" ? "default" : role === "Admin" ? "secondary" : "outline";
3124
3186
  function WorkspaceMembers({ className }) {
3125
- const [query, setQuery] = React14.useState("");
3126
- const [members, setMembers] = React14.useState(MEMBERS);
3187
+ const [query, setQuery] = React26.useState("");
3188
+ const [members, setMembers] = React26.useState(MEMBERS);
3127
3189
  const filtered = members.filter(
3128
3190
  (m) => m.name.toLowerCase().includes(query.toLowerCase()) || m.email.toLowerCase().includes(query.toLowerCase())
3129
3191
  );
@@ -3159,7 +3221,7 @@ function IntegrationCard({
3159
3221
  connected = false,
3160
3222
  className
3161
3223
  }) {
3162
- const [isConnected, setIsConnected] = React14.useState(connected);
3224
+ const [isConnected, setIsConnected] = React26.useState(connected);
3163
3225
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex items-center gap-4 rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--card))] p-4", className), children: [
3164
3226
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-10 w-10 shrink-0 items-center justify-center rounded-md bg-[hsl(var(--muted))] text-[hsl(var(--muted-foreground))]", children: icon ?? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-base font-bold", children: name[0] }) }),
3165
3227
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 min-w-0", children: [
@@ -3190,9 +3252,9 @@ function IntegrationCard({
3190
3252
  }
3191
3253
  var REACTIONS = ["\u{1F60A}", "\u{1F610}", "\u{1F615}", "\u{1F621}", "\u{1F929}"];
3192
3254
  function FeedbackModal({ onSubmit, className }) {
3193
- const [reaction, setReaction] = React14.useState("");
3194
- const [text, setText] = React14.useState("");
3195
- const [submitted, setSubmitted] = React14.useState(false);
3255
+ const [reaction, setReaction] = React26.useState("");
3256
+ const [text, setText] = React26.useState("");
3257
+ const [submitted, setSubmitted] = React26.useState(false);
3196
3258
  const handleSubmit = () => {
3197
3259
  onSubmit?.({ reaction, text });
3198
3260
  setSubmitted(true);
@@ -3242,9 +3304,9 @@ var PENDING = [
3242
3304
  { email: "sam@startup.io", role: "Viewer" }
3243
3305
  ];
3244
3306
  function InviteModal({ className }) {
3245
- const [email, setEmail] = React14.useState("");
3246
- const [role, setRole] = React14.useState("Member");
3247
- const [pending, setPending] = React14.useState(PENDING);
3307
+ const [email, setEmail] = React26.useState("");
3308
+ const [role, setRole] = React26.useState("Member");
3309
+ const [pending, setPending] = React26.useState(PENDING);
3248
3310
  const invite = () => {
3249
3311
  if (!email.trim())
3250
3312
  return;
@@ -3292,9 +3354,9 @@ var INITIAL_TAGS = [
3292
3354
  { id: "4", name: "Research", color: "bg-purple-500" }
3293
3355
  ];
3294
3356
  function ManageTagsModal({ className }) {
3295
- const [tags, setTags] = React14.useState(INITIAL_TAGS);
3296
- const [newTag, setNewTag] = React14.useState("");
3297
- const [colorIdx, setColorIdx] = React14.useState(0);
3357
+ const [tags, setTags] = React26.useState(INITIAL_TAGS);
3358
+ const [newTag, setNewTag] = React26.useState("");
3359
+ const [colorIdx, setColorIdx] = React26.useState(0);
3298
3360
  const addTag = () => {
3299
3361
  if (!newTag.trim())
3300
3362
  return;
@@ -3353,8 +3415,8 @@ var USERS = [
3353
3415
  { id: "6", name: "Mike Liu", email: "mike@acme.com", initials: "ML" }
3354
3416
  ];
3355
3417
  function SelectUsersModal({ onConfirm, className }) {
3356
- const [query, setQuery] = React14.useState("");
3357
- const [selected, setSelected] = React14.useState(/* @__PURE__ */ new Set());
3418
+ const [query, setQuery] = React26.useState("");
3419
+ const [selected, setSelected] = React26.useState(/* @__PURE__ */ new Set());
3358
3420
  const filtered = USERS.filter(
3359
3421
  (u) => u.name.toLowerCase().includes(query.toLowerCase()) || u.email.toLowerCase().includes(query.toLowerCase())
3360
3422
  );
@@ -3473,7 +3535,7 @@ var ROLES = [
3473
3535
  { value: "viewer", label: "Viewer", description: "Read-only access" }
3474
3536
  ];
3475
3537
  function RolesMenu({ value = "member", onChange, className }) {
3476
- const [role, setRole] = React14.useState(value);
3538
+ const [role, setRole] = React26.useState(value);
3477
3539
  const current = ROLES.find((r) => r.value === role) ?? ROLES[2];
3478
3540
  const handleChange = (v) => {
3479
3541
  setRole(v);
@@ -3557,8 +3619,8 @@ function ChatBubble({ msg }) {
3557
3619
  ] });
3558
3620
  }
3559
3621
  function ChatDetail({ className }) {
3560
- const [messages, setMessages] = React14.useState(INITIAL_MESSAGES);
3561
- const [input, setInput] = React14.useState("");
3622
+ const [messages, setMessages] = React26.useState(INITIAL_MESSAGES);
3623
+ const [input, setInput] = React26.useState("");
3562
3624
  const send = () => {
3563
3625
  if (!input.trim())
3564
3626
  return;
@@ -3699,7 +3761,7 @@ function FileRow({ file, onDelete }) {
3699
3761
  ] });
3700
3762
  }
3701
3763
  function FilesList({ className }) {
3702
- const [files, setFiles] = React14__default.default.useState(FILES2);
3764
+ const [files, setFiles] = React26__default.default.useState(FILES2);
3703
3765
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("rounded-md border border-[hsl(var(--border))] overflow-hidden", className), children: /* @__PURE__ */ jsxRuntime.jsxs("table", { className: "w-full", children: [
3704
3766
  /* @__PURE__ */ jsxRuntime.jsx("thead", { className: "bg-[hsl(var(--muted)/0.5)]", children: /* @__PURE__ */ jsxRuntime.jsx("tr", { children: ["Name", "Type", "Size", "Modified", ""].map((h) => /* @__PURE__ */ jsxRuntime.jsx("th", { className: "px-4 py-2.5 text-left text-xs font-medium text-[hsl(var(--muted-foreground))]", children: h }, h)) }) }),
3705
3767
  /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: files.map((f) => /* @__PURE__ */ jsxRuntime.jsx(FileRow, { file: f, onDelete: () => setFiles((fs) => fs.filter((x) => x.id !== f.id)) }, f.id)) })
@@ -3777,7 +3839,7 @@ function TaskRow({ task, onToggle }) {
3777
3839
  ] });
3778
3840
  }
3779
3841
  function SortableTaskList({ className }) {
3780
- const [tasks, setTasks] = React14.useState(TASKS);
3842
+ const [tasks, setTasks] = React26.useState(TASKS);
3781
3843
  const toggle = (id) => setTasks((ts) => ts.map((t) => t.id === id ? { ...t, done: !t.done } : t));
3782
3844
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--card))] p-4 space-y-4", className), children: SECTIONS.map((section) => {
3783
3845
  const items = tasks.filter((t) => t.status === section);
@@ -3919,6 +3981,7 @@ exports.MessagesCard = MessagesCard;
3919
3981
  exports.MetricCard = MetricCard;
3920
3982
  exports.MetricCardWithButton = MetricCardWithButton;
3921
3983
  exports.MetricCardWithIcon = MetricCardWithIcon;
3984
+ exports.MobileSidebarTrigger = MobileSidebarTrigger;
3922
3985
  exports.Navbar = Navbar;
3923
3986
  exports.NavbarBrand = NavbarBrand;
3924
3987
  exports.NavbarContent = NavbarContent;