@j3m-quantum/ui 1.3.0 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var React14 = require('react');
3
+ var React15 = require('react');
4
4
  var reactSlot = require('@radix-ui/react-slot');
5
5
  var classVarianceAuthority = require('class-variance-authority');
6
6
  var clsx = require('clsx');
@@ -62,7 +62,7 @@ function _interopNamespace(e) {
62
62
  return Object.freeze(n);
63
63
  }
64
64
 
65
- var React14__namespace = /*#__PURE__*/_interopNamespace(React14);
65
+ var React15__namespace = /*#__PURE__*/_interopNamespace(React15);
66
66
  var SeparatorPrimitive__namespace = /*#__PURE__*/_interopNamespace(SeparatorPrimitive);
67
67
  var CheckboxPrimitive__namespace = /*#__PURE__*/_interopNamespace(CheckboxPrimitive);
68
68
  var RadioGroupPrimitive__namespace = /*#__PURE__*/_interopNamespace(RadioGroupPrimitive);
@@ -95,8 +95,8 @@ var ResizablePrimitive__namespace = /*#__PURE__*/_interopNamespace(ResizablePrim
95
95
  // src/hooks/use-mobile.ts
96
96
  var MOBILE_BREAKPOINT = 768;
97
97
  function useIsMobile() {
98
- const [isMobile, setIsMobile] = React14__namespace.useState(void 0);
99
- React14__namespace.useEffect(() => {
98
+ const [isMobile, setIsMobile] = React15__namespace.useState(void 0);
99
+ React15__namespace.useEffect(() => {
100
100
  const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
101
101
  const onChange = () => {
102
102
  setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
@@ -137,7 +137,7 @@ var buttonVariants = classVarianceAuthority.cva(
137
137
  }
138
138
  }
139
139
  );
140
- var Button = React14__namespace.forwardRef(
140
+ var Button = React15__namespace.forwardRef(
141
141
  ({ className, variant, size, asChild = false, ...props }, ref) => {
142
142
  const Comp = asChild ? reactSlot.Slot : "button";
143
143
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -245,7 +245,7 @@ function Input({ className, type, ...props }) {
245
245
  type,
246
246
  "data-slot": "input",
247
247
  className: cn(
248
- "file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
248
+ "file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-4 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
249
249
  "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",
250
250
  "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
251
251
  className
@@ -501,7 +501,7 @@ function Slider({
501
501
  max = 100,
502
502
  ...props
503
503
  }) {
504
- const _values = React14__namespace.useMemo(
504
+ const _values = React15__namespace.useMemo(
505
505
  () => Array.isArray(value) ? value : Array.isArray(defaultValue) ? defaultValue : [min, max],
506
506
  [value, defaultValue, min, max]
507
507
  );
@@ -787,7 +787,7 @@ function Toggle({
787
787
  }
788
788
  );
789
789
  }
790
- var ToggleGroupContext = React14__namespace.createContext({
790
+ var ToggleGroupContext = React15__namespace.createContext({
791
791
  size: "default",
792
792
  variant: "default",
793
793
  spacing: 0
@@ -824,7 +824,7 @@ function ToggleGroupItem({
824
824
  size,
825
825
  ...props
826
826
  }) {
827
- const context = React14__namespace.useContext(ToggleGroupContext);
827
+ const context = React15__namespace.useContext(ToggleGroupContext);
828
828
  return /* @__PURE__ */ jsxRuntime.jsx(
829
829
  ToggleGroupPrimitive__namespace.Item,
830
830
  {
@@ -846,6 +846,125 @@ function ToggleGroupItem({
846
846
  }
847
847
  );
848
848
  }
849
+ function ThemeSwitch({
850
+ checked,
851
+ defaultChecked = false,
852
+ onCheckedChange,
853
+ disabled = false,
854
+ className,
855
+ size = "default"
856
+ }) {
857
+ const [isChecked, setIsChecked] = React15__namespace.useState(defaultChecked);
858
+ const isControlled = checked !== void 0;
859
+ const currentChecked = isControlled ? checked : isChecked;
860
+ const handleClick = () => {
861
+ if (disabled) return;
862
+ const newValue = !currentChecked;
863
+ if (!isControlled) {
864
+ setIsChecked(newValue);
865
+ }
866
+ onCheckedChange?.(newValue);
867
+ };
868
+ const sizeClasses = {
869
+ sm: {
870
+ track: "h-5 w-9",
871
+ thumb: "size-4",
872
+ icon: "h-2.5 w-2.5",
873
+ translate: "data-[state=checked]:translate-x-4"
874
+ },
875
+ default: {
876
+ track: "h-6 w-11",
877
+ thumb: "size-5",
878
+ icon: "h-3 w-3",
879
+ translate: "data-[state=checked]:translate-x-5"
880
+ },
881
+ lg: {
882
+ track: "h-7 w-14",
883
+ thumb: "size-6",
884
+ icon: "h-3.5 w-3.5",
885
+ translate: "data-[state=checked]:translate-x-7"
886
+ }
887
+ };
888
+ const sizes = sizeClasses[size];
889
+ return /* @__PURE__ */ jsxRuntime.jsx(
890
+ "button",
891
+ {
892
+ type: "button",
893
+ role: "switch",
894
+ "aria-checked": currentChecked,
895
+ "aria-label": currentChecked ? "Switch to light mode" : "Switch to dark mode",
896
+ "data-slot": "theme-switch",
897
+ "data-state": currentChecked ? "checked" : "unchecked",
898
+ disabled,
899
+ onClick: handleClick,
900
+ className: cn(
901
+ "peer inline-flex shrink-0 cursor-pointer items-center rounded-full",
902
+ "border border-transparent shadow-xs transition-all outline-none",
903
+ "focus-visible:ring-[3px] focus-visible:ring-ring/50",
904
+ "disabled:cursor-not-allowed disabled:opacity-50",
905
+ "bg-input data-[state=checked]:bg-primary",
906
+ sizes.track,
907
+ className
908
+ ),
909
+ children: /* @__PURE__ */ jsxRuntime.jsx(
910
+ "span",
911
+ {
912
+ "data-state": currentChecked ? "checked" : "unchecked",
913
+ className: cn(
914
+ "pointer-events-none flex items-center justify-center rounded-full",
915
+ "bg-white shadow-lg ring-0 transition-transform",
916
+ "data-[state=unchecked]:translate-x-0.5",
917
+ sizes.thumb,
918
+ sizes.translate
919
+ ),
920
+ children: currentChecked ? /* @__PURE__ */ jsxRuntime.jsx(MoonIcon, { className: cn(sizes.icon, "text-primary") }) : /* @__PURE__ */ jsxRuntime.jsx(SunIcon, { className: cn(sizes.icon, "text-muted-foreground") })
921
+ }
922
+ )
923
+ }
924
+ );
925
+ }
926
+ function SunIcon({ className }) {
927
+ return /* @__PURE__ */ jsxRuntime.jsxs(
928
+ "svg",
929
+ {
930
+ xmlns: "http://www.w3.org/2000/svg",
931
+ viewBox: "0 0 24 24",
932
+ fill: "none",
933
+ stroke: "currentColor",
934
+ strokeWidth: "2",
935
+ strokeLinecap: "round",
936
+ strokeLinejoin: "round",
937
+ className,
938
+ children: [
939
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "4" }),
940
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M12 2v2" }),
941
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M12 20v2" }),
942
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "m4.93 4.93 1.41 1.41" }),
943
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "m17.66 17.66 1.41 1.41" }),
944
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M2 12h2" }),
945
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M20 12h2" }),
946
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "m6.34 17.66-1.41 1.41" }),
947
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "m19.07 4.93-1.41 1.41" })
948
+ ]
949
+ }
950
+ );
951
+ }
952
+ function MoonIcon({ className }) {
953
+ return /* @__PURE__ */ jsxRuntime.jsx(
954
+ "svg",
955
+ {
956
+ xmlns: "http://www.w3.org/2000/svg",
957
+ viewBox: "0 0 24 24",
958
+ fill: "none",
959
+ stroke: "currentColor",
960
+ strokeWidth: "2",
961
+ strokeLinecap: "round",
962
+ strokeLinejoin: "round",
963
+ className,
964
+ children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z" })
965
+ }
966
+ );
967
+ }
849
968
  function ToolBarCanvas({
850
969
  className,
851
970
  ...props
@@ -1155,7 +1274,7 @@ function Label2({
1155
1274
  );
1156
1275
  }
1157
1276
  var Form = reactHookForm.FormProvider;
1158
- var FormFieldContext = React14__namespace.createContext(
1277
+ var FormFieldContext = React15__namespace.createContext(
1159
1278
  {}
1160
1279
  );
1161
1280
  var FormField = ({
@@ -1164,8 +1283,8 @@ var FormField = ({
1164
1283
  return /* @__PURE__ */ jsxRuntime.jsx(FormFieldContext.Provider, { value: { name: props.name }, children: /* @__PURE__ */ jsxRuntime.jsx(reactHookForm.Controller, { ...props }) });
1165
1284
  };
1166
1285
  var useFormField = () => {
1167
- const fieldContext = React14__namespace.useContext(FormFieldContext);
1168
- const itemContext = React14__namespace.useContext(FormItemContext);
1286
+ const fieldContext = React15__namespace.useContext(FormFieldContext);
1287
+ const itemContext = React15__namespace.useContext(FormItemContext);
1169
1288
  const { getFieldState } = reactHookForm.useFormContext();
1170
1289
  const formState = reactHookForm.useFormState({ name: fieldContext.name });
1171
1290
  const fieldState = getFieldState(fieldContext.name, formState);
@@ -1182,11 +1301,11 @@ var useFormField = () => {
1182
1301
  ...fieldState
1183
1302
  };
1184
1303
  };
1185
- var FormItemContext = React14__namespace.createContext(
1304
+ var FormItemContext = React15__namespace.createContext(
1186
1305
  {}
1187
1306
  );
1188
1307
  function FormItem({ className, ...props }) {
1189
- const id = React14__namespace.useId();
1308
+ const id = React15__namespace.useId();
1190
1309
  return /* @__PURE__ */ jsxRuntime.jsx(FormItemContext.Provider, { value: { id }, children: /* @__PURE__ */ jsxRuntime.jsx(
1191
1310
  "div",
1192
1311
  {
@@ -1434,7 +1553,7 @@ function FieldError({
1434
1553
  errors,
1435
1554
  ...props
1436
1555
  }) {
1437
- const content = React14.useMemo(() => {
1556
+ const content = React15.useMemo(() => {
1438
1557
  if (children) {
1439
1558
  return children;
1440
1559
  }
@@ -2288,8 +2407,8 @@ function CalendarDayButton({
2288
2407
  modifiers,
2289
2408
  ...props
2290
2409
  }) {
2291
- const ref = React14__namespace.useRef(null);
2292
- React14__namespace.useEffect(() => {
2410
+ const ref = React15__namespace.useRef(null);
2411
+ React15__namespace.useEffect(() => {
2293
2412
  if (modifiers.focused) ref.current?.focus();
2294
2413
  }, [modifiers.focused]);
2295
2414
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -2310,9 +2429,9 @@ function CalendarDayButton({
2310
2429
  }
2311
2430
  );
2312
2431
  }
2313
- var CarouselContext = React14__namespace.createContext(null);
2432
+ var CarouselContext = React15__namespace.createContext(null);
2314
2433
  function useCarousel() {
2315
- const context = React14__namespace.useContext(CarouselContext);
2434
+ const context = React15__namespace.useContext(CarouselContext);
2316
2435
  if (!context) {
2317
2436
  throw new Error("useCarousel must be used within a <Carousel />");
2318
2437
  }
@@ -2334,20 +2453,20 @@ function Carousel({
2334
2453
  },
2335
2454
  plugins
2336
2455
  );
2337
- const [canScrollPrev, setCanScrollPrev] = React14__namespace.useState(false);
2338
- const [canScrollNext, setCanScrollNext] = React14__namespace.useState(false);
2339
- const onSelect = React14__namespace.useCallback((api2) => {
2456
+ const [canScrollPrev, setCanScrollPrev] = React15__namespace.useState(false);
2457
+ const [canScrollNext, setCanScrollNext] = React15__namespace.useState(false);
2458
+ const onSelect = React15__namespace.useCallback((api2) => {
2340
2459
  if (!api2) return;
2341
2460
  setCanScrollPrev(api2.canScrollPrev());
2342
2461
  setCanScrollNext(api2.canScrollNext());
2343
2462
  }, []);
2344
- const scrollPrev = React14__namespace.useCallback(() => {
2463
+ const scrollPrev = React15__namespace.useCallback(() => {
2345
2464
  api?.scrollPrev();
2346
2465
  }, [api]);
2347
- const scrollNext = React14__namespace.useCallback(() => {
2466
+ const scrollNext = React15__namespace.useCallback(() => {
2348
2467
  api?.scrollNext();
2349
2468
  }, [api]);
2350
- const handleKeyDown = React14__namespace.useCallback(
2469
+ const handleKeyDown = React15__namespace.useCallback(
2351
2470
  (event) => {
2352
2471
  if (event.key === "ArrowLeft") {
2353
2472
  event.preventDefault();
@@ -2359,11 +2478,11 @@ function Carousel({
2359
2478
  },
2360
2479
  [scrollPrev, scrollNext]
2361
2480
  );
2362
- React14__namespace.useEffect(() => {
2481
+ React15__namespace.useEffect(() => {
2363
2482
  if (!api || !setApi) return;
2364
2483
  setApi(api);
2365
2484
  }, [api, setApi]);
2366
- React14__namespace.useEffect(() => {
2485
+ React15__namespace.useEffect(() => {
2367
2486
  if (!api) return;
2368
2487
  onSelect(api);
2369
2488
  api.on("reInit", onSelect);
@@ -2496,9 +2615,9 @@ function CarouselNext({
2496
2615
  );
2497
2616
  }
2498
2617
  var THEMES = { light: "", dark: ".dark" };
2499
- var ChartContext = React14__namespace.createContext(null);
2618
+ var ChartContext = React15__namespace.createContext(null);
2500
2619
  function useChart() {
2501
- const context = React14__namespace.useContext(ChartContext);
2620
+ const context = React15__namespace.useContext(ChartContext);
2502
2621
  if (!context) {
2503
2622
  throw new Error("useChart must be used within a <ChartContainer />");
2504
2623
  }
@@ -2511,7 +2630,7 @@ function ChartContainer({
2511
2630
  config,
2512
2631
  ...props
2513
2632
  }) {
2514
- const uniqueId = React14__namespace.useId();
2633
+ const uniqueId = React15__namespace.useId();
2515
2634
  const chartId = `chart-${id || uniqueId.replace(/:/g, "")}`;
2516
2635
  return /* @__PURE__ */ jsxRuntime.jsx(ChartContext.Provider, { value: { config }, children: /* @__PURE__ */ jsxRuntime.jsxs(
2517
2636
  "div",
@@ -2572,7 +2691,7 @@ function ChartTooltipContent({
2572
2691
  labelKey
2573
2692
  }) {
2574
2693
  const { config } = useChart();
2575
- const tooltipLabel = React14__namespace.useMemo(() => {
2694
+ const tooltipLabel = React15__namespace.useMemo(() => {
2576
2695
  if (hideLabel || !payload?.length) {
2577
2696
  return null;
2578
2697
  }
@@ -3275,8 +3394,8 @@ function TooltipContent({
3275
3394
  ) });
3276
3395
  }
3277
3396
  function useDetectTheme() {
3278
- const [theme, setTheme] = React14__namespace.useState("light");
3279
- React14__namespace.useEffect(() => {
3397
+ const [theme, setTheme] = React15__namespace.useState("light");
3398
+ React15__namespace.useEffect(() => {
3280
3399
  const isDark = document.documentElement.classList.contains("dark");
3281
3400
  setTheme(isDark ? "dark" : "light");
3282
3401
  const observer = new MutationObserver((mutations) => {
@@ -3797,7 +3916,7 @@ function CommandShortcut({
3797
3916
  }
3798
3917
  );
3799
3918
  }
3800
- var SearchTrigger = React14__namespace.forwardRef(
3919
+ var SearchTrigger = React15__namespace.forwardRef(
3801
3920
  ({
3802
3921
  className,
3803
3922
  placeholder = "Search...",
@@ -3833,7 +3952,7 @@ var SearchTrigger = React14__namespace.forwardRef(
3833
3952
  );
3834
3953
  SearchTrigger.displayName = "SearchTrigger";
3835
3954
  function useSearchShortcut(onOpen, key = "k") {
3836
- React14__namespace.useEffect(() => {
3955
+ React15__namespace.useEffect(() => {
3837
3956
  const down = (e) => {
3838
3957
  if (e.key.toLowerCase() === key.toLowerCase() && (e.metaKey || e.ctrlKey)) {
3839
3958
  e.preventDefault();
@@ -4861,9 +4980,9 @@ var SIDEBAR_WIDTH = "16rem";
4861
4980
  var SIDEBAR_WIDTH_MOBILE = "18rem";
4862
4981
  var SIDEBAR_WIDTH_ICON = "3rem";
4863
4982
  var SIDEBAR_KEYBOARD_SHORTCUT = "b";
4864
- var SidebarContext = React14__namespace.createContext(null);
4983
+ var SidebarContext = React15__namespace.createContext(null);
4865
4984
  function useSidebar() {
4866
- const context = React14__namespace.useContext(SidebarContext);
4985
+ const context = React15__namespace.useContext(SidebarContext);
4867
4986
  if (!context) {
4868
4987
  throw new Error("useSidebar must be used within a SidebarProvider.");
4869
4988
  }
@@ -4879,10 +4998,10 @@ function SidebarProvider({
4879
4998
  ...props
4880
4999
  }) {
4881
5000
  const isMobile = useIsMobile();
4882
- const [openMobile, setOpenMobile] = React14__namespace.useState(false);
4883
- const [_open, _setOpen] = React14__namespace.useState(defaultOpen);
5001
+ const [openMobile, setOpenMobile] = React15__namespace.useState(false);
5002
+ const [_open, _setOpen] = React15__namespace.useState(defaultOpen);
4884
5003
  const open = openProp ?? _open;
4885
- const setOpen = React14__namespace.useCallback(
5004
+ const setOpen = React15__namespace.useCallback(
4886
5005
  (value) => {
4887
5006
  const openState = typeof value === "function" ? value(open) : value;
4888
5007
  if (setOpenProp) {
@@ -4894,10 +5013,10 @@ function SidebarProvider({
4894
5013
  },
4895
5014
  [setOpenProp, open]
4896
5015
  );
4897
- const toggleSidebar = React14__namespace.useCallback(() => {
5016
+ const toggleSidebar = React15__namespace.useCallback(() => {
4898
5017
  return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
4899
5018
  }, [isMobile, setOpen, setOpenMobile]);
4900
- React14__namespace.useEffect(() => {
5019
+ React15__namespace.useEffect(() => {
4901
5020
  const handleKeyDown = (event) => {
4902
5021
  if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
4903
5022
  event.preventDefault();
@@ -4908,7 +5027,7 @@ function SidebarProvider({
4908
5027
  return () => window.removeEventListener("keydown", handleKeyDown);
4909
5028
  }, [toggleSidebar]);
4910
5029
  const state = open ? "expanded" : "collapsed";
4911
- const contextValue = React14__namespace.useMemo(
5030
+ const contextValue = React15__namespace.useMemo(
4912
5031
  () => ({
4913
5032
  state,
4914
5033
  open,
@@ -5366,7 +5485,7 @@ function SidebarMenuSkeleton({
5366
5485
  showIcon = false,
5367
5486
  ...props
5368
5487
  }) {
5369
- const width = React14__namespace.useMemo(() => {
5488
+ const width = React15__namespace.useMemo(() => {
5370
5489
  return `${Math.floor(Math.random() * 40) + 50}%`;
5371
5490
  }, []);
5372
5491
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -5509,7 +5628,7 @@ var sectionVariants = classVarianceAuthority.cva(
5509
5628
  }
5510
5629
  );
5511
5630
  var isGlassVariant = (variant) => variant?.startsWith("glass-") ?? false;
5512
- var Section = React14__namespace.forwardRef(
5631
+ var Section = React15__namespace.forwardRef(
5513
5632
  ({ className, variant, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
5514
5633
  "section",
5515
5634
  {
@@ -5521,7 +5640,7 @@ var Section = React14__namespace.forwardRef(
5521
5640
  )
5522
5641
  );
5523
5642
  Section.displayName = "Section";
5524
- var SectionHeader = React14__namespace.forwardRef(
5643
+ var SectionHeader = React15__namespace.forwardRef(
5525
5644
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
5526
5645
  "div",
5527
5646
  {
@@ -5536,7 +5655,7 @@ var SectionHeader = React14__namespace.forwardRef(
5536
5655
  )
5537
5656
  );
5538
5657
  SectionHeader.displayName = "SectionHeader";
5539
- var SectionTitle = React14__namespace.forwardRef(
5658
+ var SectionTitle = React15__namespace.forwardRef(
5540
5659
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
5541
5660
  "h2",
5542
5661
  {
@@ -5550,7 +5669,7 @@ var SectionTitle = React14__namespace.forwardRef(
5550
5669
  )
5551
5670
  );
5552
5671
  SectionTitle.displayName = "SectionTitle";
5553
- var SectionDescription = React14__namespace.forwardRef(
5672
+ var SectionDescription = React15__namespace.forwardRef(
5554
5673
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
5555
5674
  "p",
5556
5675
  {
@@ -5564,7 +5683,7 @@ var SectionDescription = React14__namespace.forwardRef(
5564
5683
  )
5565
5684
  );
5566
5685
  SectionDescription.displayName = "SectionDescription";
5567
- var SectionContent = React14__namespace.forwardRef(
5686
+ var SectionContent = React15__namespace.forwardRef(
5568
5687
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
5569
5688
  "div",
5570
5689
  {
@@ -5578,7 +5697,7 @@ var SectionContent = React14__namespace.forwardRef(
5578
5697
  )
5579
5698
  );
5580
5699
  SectionContent.displayName = "SectionContent";
5581
- var SectionFooter = React14__namespace.forwardRef(
5700
+ var SectionFooter = React15__namespace.forwardRef(
5582
5701
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
5583
5702
  "div",
5584
5703
  {
@@ -5629,7 +5748,7 @@ function SiteHeader({
5629
5748
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex h-[var(--header-height,3.5rem)] w-full items-center gap-[var(--j3m-spacing-s)] px-[var(--j3m-spacing-m)]", children: [
5630
5749
  trigger,
5631
5750
  trigger && /* @__PURE__ */ jsxRuntime.jsx(Separator, { orientation: "vertical", className: "mr-[var(--j3m-spacing-s)] h-4" }),
5632
- /* @__PURE__ */ jsxRuntime.jsx(Breadcrumb, { className: "hidden sm:block", children: /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbList, { children: breadcrumbs.map((item, index) => /* @__PURE__ */ jsxRuntime.jsxs(React14__namespace.Fragment, { children: [
5751
+ /* @__PURE__ */ jsxRuntime.jsx(Breadcrumb, { className: "hidden sm:block", children: /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbList, { children: breadcrumbs.map((item, index) => /* @__PURE__ */ jsxRuntime.jsxs(React15__namespace.Fragment, { children: [
5633
5752
  index > 0 && /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbSeparator, {}),
5634
5753
  /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbItem, { children: item.href ? /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbLink, { href: item.href, children: item.label }) : /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbPage, { children: item.label }) })
5635
5754
  ] }, index)) }) }),
@@ -5841,7 +5960,7 @@ var BADGE_VARIANT_LABELS = {
5841
5960
  colored: "Colored",
5842
5961
  mixed: "Mixed"
5843
5962
  };
5844
- var CalendarContext = React14__namespace.createContext(null);
5963
+ var CalendarContext = React15__namespace.createContext(null);
5845
5964
  function EventCalendarProvider({
5846
5965
  children,
5847
5966
  events: initialEvents = [],
@@ -5856,38 +5975,38 @@ function EventCalendarProvider({
5856
5975
  onEventUpdate,
5857
5976
  onEventDelete
5858
5977
  }) {
5859
- const [selectedDate, setSelectedDate] = React14__namespace.useState(defaultDate);
5860
- const [selectedUserId, setSelectedUserId] = React14__namespace.useState(defaultUserId);
5861
- const [events, setEventsState] = React14__namespace.useState(initialEvents);
5862
- const [users] = React14__namespace.useState(initialUsers);
5863
- const [badgeVariant, setBadgeVariant] = React14__namespace.useState(defaultBadgeVariant);
5864
- const [view, setView] = React14__namespace.useState(defaultView);
5865
- const [workingHours, setWorkingHours] = React14__namespace.useState(defaultWorkingHours);
5866
- const [visibleHours, setVisibleHours] = React14__namespace.useState(defaultVisibleHours);
5867
- React14__namespace.useEffect(() => {
5978
+ const [selectedDate, setSelectedDate] = React15__namespace.useState(defaultDate);
5979
+ const [selectedUserId, setSelectedUserId] = React15__namespace.useState(defaultUserId);
5980
+ const [events, setEventsState] = React15__namespace.useState(initialEvents);
5981
+ const [users] = React15__namespace.useState(initialUsers);
5982
+ const [badgeVariant, setBadgeVariant] = React15__namespace.useState(defaultBadgeVariant);
5983
+ const [view, setView] = React15__namespace.useState(defaultView);
5984
+ const [workingHours, setWorkingHours] = React15__namespace.useState(defaultWorkingHours);
5985
+ const [visibleHours, setVisibleHours] = React15__namespace.useState(defaultVisibleHours);
5986
+ React15__namespace.useEffect(() => {
5868
5987
  setEventsState(initialEvents);
5869
5988
  }, [initialEvents]);
5870
- const setEvents = React14__namespace.useCallback((newEvents) => {
5989
+ const setEvents = React15__namespace.useCallback((newEvents) => {
5871
5990
  setEventsState(newEvents);
5872
5991
  }, []);
5873
- const addEvent = React14__namespace.useCallback((event) => {
5992
+ const addEvent = React15__namespace.useCallback((event) => {
5874
5993
  setEventsState((prev) => [...prev, event]);
5875
5994
  onEventAdd?.(event);
5876
5995
  }, [onEventAdd]);
5877
- const updateEvent = React14__namespace.useCallback((event) => {
5996
+ const updateEvent = React15__namespace.useCallback((event) => {
5878
5997
  setEventsState(
5879
5998
  (prev) => prev.map((e) => e.id === event.id ? event : e)
5880
5999
  );
5881
6000
  onEventUpdate?.(event);
5882
6001
  }, [onEventUpdate]);
5883
- const deleteEvent = React14__namespace.useCallback((eventId) => {
6002
+ const deleteEvent = React15__namespace.useCallback((eventId) => {
5884
6003
  setEventsState((prev) => prev.filter((e) => e.id !== eventId));
5885
6004
  onEventDelete?.(eventId);
5886
6005
  }, [onEventDelete]);
5887
- const goToToday = React14__namespace.useCallback(() => {
6006
+ const goToToday = React15__namespace.useCallback(() => {
5888
6007
  setSelectedDate(/* @__PURE__ */ new Date());
5889
6008
  }, []);
5890
- const goToPrevious = React14__namespace.useCallback(() => {
6009
+ const goToPrevious = React15__namespace.useCallback(() => {
5891
6010
  setSelectedDate((current) => {
5892
6011
  switch (view) {
5893
6012
  case "day":
@@ -5905,7 +6024,7 @@ function EventCalendarProvider({
5905
6024
  }
5906
6025
  });
5907
6026
  }, [view]);
5908
- const goToNext = React14__namespace.useCallback(() => {
6027
+ const goToNext = React15__namespace.useCallback(() => {
5909
6028
  setSelectedDate((current) => {
5910
6029
  switch (view) {
5911
6030
  case "day":
@@ -5923,7 +6042,7 @@ function EventCalendarProvider({
5923
6042
  }
5924
6043
  });
5925
6044
  }, [view]);
5926
- const contextValue = React14__namespace.useMemo(
6045
+ const contextValue = React15__namespace.useMemo(
5927
6046
  () => ({
5928
6047
  // State
5929
6048
  selectedDate,
@@ -5970,7 +6089,7 @@ function EventCalendarProvider({
5970
6089
  return /* @__PURE__ */ jsxRuntime.jsx(CalendarContext.Provider, { value: contextValue, children });
5971
6090
  }
5972
6091
  function useEventCalendar() {
5973
- const context = React14__namespace.useContext(CalendarContext);
6092
+ const context = React15__namespace.useContext(CalendarContext);
5974
6093
  if (!context) {
5975
6094
  throw new Error("useEventCalendar must be used within an EventCalendarProvider");
5976
6095
  }
@@ -5978,14 +6097,14 @@ function useEventCalendar() {
5978
6097
  }
5979
6098
  function useFilteredEvents() {
5980
6099
  const { events, selectedUserId } = useEventCalendar();
5981
- return React14__namespace.useMemo(() => {
6100
+ return React15__namespace.useMemo(() => {
5982
6101
  if (!selectedUserId) return events;
5983
6102
  return events.filter((event) => event.user.id === selectedUserId);
5984
6103
  }, [events, selectedUserId]);
5985
6104
  }
5986
6105
  function useEventsInRange(startDate, endDate) {
5987
6106
  const filteredEvents = useFilteredEvents();
5988
- return React14__namespace.useMemo(() => {
6107
+ return React15__namespace.useMemo(() => {
5989
6108
  return filteredEvents.filter((event) => {
5990
6109
  const eventStart = new Date(event.startDate);
5991
6110
  const eventEnd = new Date(event.endDate);
@@ -6543,8 +6662,8 @@ function MoreEvents({ count, onClick, className }) {
6543
6662
  );
6544
6663
  }
6545
6664
  function TimeIndicator({ className }) {
6546
- const [now, setNow] = React14__namespace.useState(/* @__PURE__ */ new Date());
6547
- React14__namespace.useEffect(() => {
6665
+ const [now, setNow] = React15__namespace.useState(/* @__PURE__ */ new Date());
6666
+ React15__namespace.useEffect(() => {
6548
6667
  const interval = setInterval(() => setNow(/* @__PURE__ */ new Date()), 6e4);
6549
6668
  return () => clearInterval(interval);
6550
6669
  }, []);
@@ -6581,24 +6700,24 @@ function DateBadge({ date, className }) {
6581
6700
  }
6582
6701
  );
6583
6702
  }
6584
- var DragContext = React14__namespace.createContext(null);
6703
+ var DragContext = React15__namespace.createContext(null);
6585
6704
  function DragProvider({
6586
6705
  children,
6587
6706
  snapMinutes = 15,
6588
6707
  onDragStart,
6589
6708
  onDragEnd
6590
6709
  }) {
6591
- const [draggedEvent, setDraggedEventState] = React14__namespace.useState(null);
6592
- const [isDragging, setIsDragging] = React14__namespace.useState(false);
6710
+ const [draggedEvent, setDraggedEventState] = React15__namespace.useState(null);
6711
+ const [isDragging, setIsDragging] = React15__namespace.useState(false);
6593
6712
  const { updateEvent } = useEventCalendar();
6594
- const setDraggedEvent = React14__namespace.useCallback((event) => {
6713
+ const setDraggedEvent = React15__namespace.useCallback((event) => {
6595
6714
  setDraggedEventState(event);
6596
6715
  setIsDragging(!!event);
6597
6716
  if (event) {
6598
6717
  onDragStart?.(event);
6599
6718
  }
6600
6719
  }, [onDragStart]);
6601
- const handleDrop = React14__namespace.useCallback((newStartDate) => {
6720
+ const handleDrop = React15__namespace.useCallback((newStartDate) => {
6602
6721
  if (!draggedEvent) return;
6603
6722
  const snappedDate = snapToInterval(newStartDate, snapMinutes);
6604
6723
  const { startDate, endDate } = calculateDropDates(draggedEvent, snappedDate);
@@ -6611,7 +6730,7 @@ function DragProvider({
6611
6730
  onDragEnd?.(updatedEvent, new Date(startDate), new Date(endDate));
6612
6731
  setDraggedEvent(null);
6613
6732
  }, [draggedEvent, snapMinutes, updateEvent, onDragEnd, setDraggedEvent]);
6614
- const contextValue = React14__namespace.useMemo(
6733
+ const contextValue = React15__namespace.useMemo(
6615
6734
  () => ({
6616
6735
  draggedEvent,
6617
6736
  setDraggedEvent,
@@ -6622,7 +6741,7 @@ function DragProvider({
6622
6741
  return /* @__PURE__ */ jsxRuntime.jsx(DragContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsxRuntime.jsx(DragDropHandler, { onDrop: handleDrop, children }) });
6623
6742
  }
6624
6743
  function useDrag() {
6625
- const context = React14__namespace.useContext(DragContext);
6744
+ const context = React15__namespace.useContext(DragContext);
6626
6745
  if (!context) {
6627
6746
  throw new Error("useDrag must be used within a DragProvider");
6628
6747
  }
@@ -6667,7 +6786,7 @@ function DroppableZone({
6667
6786
  }) {
6668
6787
  const { draggedEvent, setDraggedEvent } = useDrag();
6669
6788
  const { updateEvent } = useEventCalendar();
6670
- const [isOver, setIsOver] = React14__namespace.useState(false);
6789
+ const [isOver, setIsOver] = React15__namespace.useState(false);
6671
6790
  const handleDragOver = (e) => {
6672
6791
  e.preventDefault();
6673
6792
  e.dataTransfer.dropEffect = "move";
@@ -6705,23 +6824,23 @@ function DroppableZone({
6705
6824
  function useDroppable({ date, hour, minute = 0, onDrop }) {
6706
6825
  const { draggedEvent, setDraggedEvent } = useDrag();
6707
6826
  const { updateEvent } = useEventCalendar();
6708
- const [isOver, setIsOver] = React14__namespace.useState(false);
6709
- const dropTargetDate = React14__namespace.useMemo(() => {
6827
+ const [isOver, setIsOver] = React15__namespace.useState(false);
6828
+ const dropTargetDate = React15__namespace.useMemo(() => {
6710
6829
  const targetDate = new Date(date);
6711
6830
  if (hour !== void 0) {
6712
6831
  targetDate.setHours(hour, minute, 0, 0);
6713
6832
  }
6714
6833
  return targetDate;
6715
6834
  }, [date, hour, minute]);
6716
- const handleDragOver = React14__namespace.useCallback((e) => {
6835
+ const handleDragOver = React15__namespace.useCallback((e) => {
6717
6836
  e.preventDefault();
6718
6837
  e.dataTransfer.dropEffect = "move";
6719
6838
  if (!isOver) setIsOver(true);
6720
6839
  }, [isOver]);
6721
- const handleDragLeave = React14__namespace.useCallback(() => {
6840
+ const handleDragLeave = React15__namespace.useCallback(() => {
6722
6841
  setIsOver(false);
6723
6842
  }, []);
6724
- const handleDrop = React14__namespace.useCallback((e) => {
6843
+ const handleDrop = React15__namespace.useCallback((e) => {
6725
6844
  e.preventDefault();
6726
6845
  setIsOver(false);
6727
6846
  if (!draggedEvent) return;
@@ -6748,13 +6867,13 @@ function useDroppable({ date, hour, minute = 0, onDrop }) {
6748
6867
  function useDraggable(event, disabled = false) {
6749
6868
  const { setDraggedEvent, draggedEvent } = useDrag();
6750
6869
  const isDragged = draggedEvent?.id === event.id;
6751
- const handleDragStart = React14__namespace.useCallback((e) => {
6870
+ const handleDragStart = React15__namespace.useCallback((e) => {
6752
6871
  if (disabled) return;
6753
6872
  e.dataTransfer.effectAllowed = "move";
6754
6873
  e.dataTransfer.setData("text/plain", event.id);
6755
6874
  setDraggedEvent(event);
6756
6875
  }, [disabled, event, setDraggedEvent]);
6757
- const handleDragEnd = React14__namespace.useCallback(() => {
6876
+ const handleDragEnd = React15__namespace.useCallback(() => {
6758
6877
  setDraggedEvent(null);
6759
6878
  }, [setDraggedEvent]);
6760
6879
  return {
@@ -6795,15 +6914,15 @@ function MonthView({
6795
6914
  }) {
6796
6915
  const { selectedDate, badgeVariant, setSelectedDate, setView } = useEventCalendar();
6797
6916
  const filteredEvents = useFilteredEvents();
6798
- const { singleDayEvents, multiDayEvents } = React14__namespace.useMemo(
6917
+ const { singleDayEvents, multiDayEvents } = React15__namespace.useMemo(
6799
6918
  () => splitEventsByDuration(filteredEvents),
6800
6919
  [filteredEvents]
6801
6920
  );
6802
- const cells = React14__namespace.useMemo(
6921
+ const cells = React15__namespace.useMemo(
6803
6922
  () => getCalendarCells(selectedDate),
6804
6923
  [selectedDate]
6805
6924
  );
6806
- const eventPositions = React14__namespace.useMemo(
6925
+ const eventPositions = React15__namespace.useMemo(
6807
6926
  () => calculateMonthEventPositions(multiDayEvents, singleDayEvents, selectedDate),
6808
6927
  [multiDayEvents, singleDayEvents, selectedDate]
6809
6928
  );
@@ -6985,7 +7104,7 @@ function WeekView({
6985
7104
  visibleHours
6986
7105
  } = useEventCalendar();
6987
7106
  const filteredEvents = useFilteredEvents();
6988
- const { singleDayEvents, multiDayEvents } = React14__namespace.useMemo(
7107
+ const { singleDayEvents, multiDayEvents } = React15__namespace.useMemo(
6989
7108
  () => splitEventsByDuration(filteredEvents),
6990
7109
  [filteredEvents]
6991
7110
  );
@@ -7191,8 +7310,8 @@ function CalendarTimeline({
7191
7310
  firstVisibleHour,
7192
7311
  lastVisibleHour
7193
7312
  }) {
7194
- const [currentTime, setCurrentTime] = React14__namespace.useState(/* @__PURE__ */ new Date());
7195
- React14__namespace.useEffect(() => {
7313
+ const [currentTime, setCurrentTime] = React15__namespace.useState(/* @__PURE__ */ new Date());
7314
+ React15__namespace.useEffect(() => {
7196
7315
  const interval = setInterval(() => {
7197
7316
  setCurrentTime(/* @__PURE__ */ new Date());
7198
7317
  }, 6e4);
@@ -7275,7 +7394,7 @@ function DayView({
7275
7394
  visibleHours
7276
7395
  } = useEventCalendar();
7277
7396
  const filteredEvents = useFilteredEvents();
7278
- const { singleDayEvents, multiDayEvents } = React14__namespace.useMemo(
7397
+ const { singleDayEvents, multiDayEvents } = React15__namespace.useMemo(
7279
7398
  () => splitEventsByDuration(filteredEvents),
7280
7399
  [filteredEvents]
7281
7400
  );
@@ -7283,7 +7402,7 @@ function DayView({
7283
7402
  visibleHours,
7284
7403
  singleDayEvents
7285
7404
  );
7286
- const currentEvents = React14__namespace.useMemo(() => {
7405
+ const currentEvents = React15__namespace.useMemo(() => {
7287
7406
  if (!dateFns.isToday(selectedDate)) return [];
7288
7407
  return getCurrentEvents(singleDayEvents);
7289
7408
  }, [singleDayEvents, selectedDate]);
@@ -7507,8 +7626,8 @@ function CalendarTimeline2({
7507
7626
  firstVisibleHour,
7508
7627
  lastVisibleHour
7509
7628
  }) {
7510
- const [currentTime, setCurrentTime] = React14__namespace.useState(/* @__PURE__ */ new Date());
7511
- React14__namespace.useEffect(() => {
7629
+ const [currentTime, setCurrentTime] = React15__namespace.useState(/* @__PURE__ */ new Date());
7630
+ React15__namespace.useEffect(() => {
7512
7631
  const interval = setInterval(() => {
7513
7632
  setCurrentTime(/* @__PURE__ */ new Date());
7514
7633
  }, 6e4);
@@ -7542,7 +7661,7 @@ function YearView({
7542
7661
  }) {
7543
7662
  const { selectedDate, setSelectedDate, setView } = useEventCalendar();
7544
7663
  const filteredEvents = useFilteredEvents();
7545
- const months = React14__namespace.useMemo(() => {
7664
+ const months = React15__namespace.useMemo(() => {
7546
7665
  const yearStart = dateFns.startOfYear(selectedDate);
7547
7666
  return Array.from({ length: 12 }, (_, i) => dateFns.addMonths(yearStart, i));
7548
7667
  }, [selectedDate]);
@@ -7665,11 +7784,11 @@ function AgendaView({
7665
7784
  }) {
7666
7785
  const { selectedDate, setSelectedDate, setView } = useEventCalendar();
7667
7786
  const filteredEvents = useFilteredEvents();
7668
- const { singleDayEvents, multiDayEvents } = React14__namespace.useMemo(
7787
+ const { singleDayEvents, multiDayEvents } = React15__namespace.useMemo(
7669
7788
  () => splitEventsByDuration(filteredEvents),
7670
7789
  [filteredEvents]
7671
7790
  );
7672
- const eventsByDay = React14__namespace.useMemo(() => {
7791
+ const eventsByDay = React15__namespace.useMemo(() => {
7673
7792
  const allDates = /* @__PURE__ */ new Map();
7674
7793
  singleDayEvents.forEach((event) => {
7675
7794
  const eventDate = dateFns.parseISO(event.startDate);
@@ -8106,16 +8225,16 @@ function EventDialog({
8106
8225
  defaultUserId
8107
8226
  }) {
8108
8227
  const { addEvent, updateEvent, deleteEvent, users } = useEventCalendar();
8109
- const [title, setTitle] = React14__namespace.useState("");
8110
- const [description, setDescription] = React14__namespace.useState("");
8111
- const [startDate, setStartDate] = React14__namespace.useState("");
8112
- const [startTime, setStartTime] = React14__namespace.useState("");
8113
- const [endDate, setEndDate] = React14__namespace.useState("");
8114
- const [endTime, setEndTime] = React14__namespace.useState("");
8115
- const [color, setColor] = React14__namespace.useState("blue");
8116
- const [userId, setUserId] = React14__namespace.useState("");
8117
- const [isSubmitting, setIsSubmitting] = React14__namespace.useState(false);
8118
- React14__namespace.useEffect(() => {
8228
+ const [title, setTitle] = React15__namespace.useState("");
8229
+ const [description, setDescription] = React15__namespace.useState("");
8230
+ const [startDate, setStartDate] = React15__namespace.useState("");
8231
+ const [startTime, setStartTime] = React15__namespace.useState("");
8232
+ const [endDate, setEndDate] = React15__namespace.useState("");
8233
+ const [endTime, setEndTime] = React15__namespace.useState("");
8234
+ const [color, setColor] = React15__namespace.useState("blue");
8235
+ const [userId, setUserId] = React15__namespace.useState("");
8236
+ const [isSubmitting, setIsSubmitting] = React15__namespace.useState(false);
8237
+ React15__namespace.useEffect(() => {
8119
8238
  if (open) {
8120
8239
  if (mode === "edit" && event) {
8121
8240
  const start = dateFns.parseISO(event.startDate);
@@ -8338,7 +8457,7 @@ function QuickAddEvent({
8338
8457
  onOpenDialog,
8339
8458
  onClose
8340
8459
  }) {
8341
- const [title, setTitle] = React14__namespace.useState("");
8460
+ const [title, setTitle] = React15__namespace.useState("");
8342
8461
  const { users } = useEventCalendar();
8343
8462
  const handleSubmit = (e) => {
8344
8463
  e.preventDefault();
@@ -8405,8 +8524,8 @@ var HOUR_OPTIONS = Array.from({ length: 25 }, (_, i) => {
8405
8524
  });
8406
8525
  function ChangeVisibleHoursInput() {
8407
8526
  const { visibleHours, setVisibleHours } = useEventCalendar();
8408
- const [from, setFrom] = React14__namespace.useState(visibleHours.from);
8409
- const [to, setTo] = React14__namespace.useState(visibleHours.to);
8527
+ const [from, setFrom] = React15__namespace.useState(visibleHours.from);
8528
+ const [to, setTo] = React15__namespace.useState(visibleHours.to);
8410
8529
  const handleApply = () => {
8411
8530
  const toHour = to === 0 ? 24 : to;
8412
8531
  setVisibleHours({ from, to: toHour });
@@ -8452,7 +8571,7 @@ var HOUR_OPTIONS2 = Array.from({ length: 25 }, (_, i) => {
8452
8571
  });
8453
8572
  function ChangeWorkingHoursInput() {
8454
8573
  const { workingHours, setWorkingHours } = useEventCalendar();
8455
- const [localWorkingHours, setLocalWorkingHours] = React14__namespace.useState({
8574
+ const [localWorkingHours, setLocalWorkingHours] = React15__namespace.useState({
8456
8575
  ...workingHours
8457
8576
  });
8458
8577
  const handleToggleDay = (dayId) => {
@@ -8566,8 +8685,8 @@ function CalendarSettingsPanel({
8566
8685
  ] }) });
8567
8686
  }
8568
8687
  function useMediaQuery(query) {
8569
- const [matches, setMatches] = React14__namespace.useState(false);
8570
- React14__namespace.useEffect(() => {
8688
+ const [matches, setMatches] = React15__namespace.useState(false);
8689
+ React15__namespace.useEffect(() => {
8571
8690
  const media = window.matchMedia(query);
8572
8691
  setMatches(media.matches);
8573
8692
  const listener = (event) => {
@@ -8619,10 +8738,10 @@ function BigCalendarInner({
8619
8738
  maxEventsPerDay
8620
8739
  }) {
8621
8740
  const { view, setView } = useEventCalendar();
8622
- const [dialogOpen, setDialogOpen] = React14__namespace.useState(false);
8623
- const [selectedEvent, setSelectedEvent] = React14__namespace.useState(null);
8624
- const [dialogMode, setDialogMode] = React14__namespace.useState("add");
8625
- const [defaultDate, setDefaultDate] = React14__namespace.useState(/* @__PURE__ */ new Date());
8741
+ const [dialogOpen, setDialogOpen] = React15__namespace.useState(false);
8742
+ const [selectedEvent, setSelectedEvent] = React15__namespace.useState(null);
8743
+ const [dialogMode, setDialogMode] = React15__namespace.useState("add");
8744
+ const [defaultDate, setDefaultDate] = React15__namespace.useState(/* @__PURE__ */ new Date());
8626
8745
  const isMobile = useMediaQuery("(max-width: 768px)");
8627
8746
  const isCompact = compact === "auto" ? isMobile : compact;
8628
8747
  const handleAddClick = () => {
@@ -9114,6 +9233,7 @@ exports.TabsContent = TabsContent;
9114
9233
  exports.TabsList = TabsList;
9115
9234
  exports.TabsTrigger = TabsTrigger;
9116
9235
  exports.Textarea = Textarea;
9236
+ exports.ThemeSwitch = ThemeSwitch;
9117
9237
  exports.TimeIndicator = TimeIndicator;
9118
9238
  exports.Toaster = Toaster;
9119
9239
  exports.Toggle = Toggle;