@akira-io/ui 2.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/dist/blocks.d.ts +2 -2
  2. package/dist/blocks.js +10 -10
  3. package/dist/{chunk-3Z2VGVPI.js → chunk-53V4J7MC.js} +2 -2
  4. package/dist/{chunk-VA6A4HZ2.js → chunk-BH3B26DK.js} +5 -5
  5. package/dist/{chunk-TM5MN3MI.js → chunk-BP2YDMMI.js} +2 -2
  6. package/dist/{chunk-DE2AJ54R.js → chunk-BR3JI3KN.js} +6 -6
  7. package/dist/{chunk-YBXRJSR3.js → chunk-CAUTXZ4U.js} +2 -2
  8. package/dist/{chunk-UCJTM3UM.js → chunk-DPLCEU34.js} +134 -41
  9. package/dist/chunk-DPLCEU34.js.map +1 -0
  10. package/dist/{chunk-2V6HUWST.js → chunk-NKPFIA32.js} +2 -2
  11. package/dist/{chunk-E26KKMGS.js → chunk-OS7YY5R4.js} +1 -1
  12. package/dist/{chunk-E26KKMGS.js.map → chunk-OS7YY5R4.js.map} +1 -1
  13. package/dist/{chunk-UXVI326F.js → chunk-PCYYU332.js} +3 -3
  14. package/dist/{chunk-KHOA4TEI.js → chunk-PPWJK5T3.js} +7 -1
  15. package/dist/chunk-PPWJK5T3.js.map +1 -0
  16. package/dist/{chunk-EYPM6IMS.js → chunk-QZRSQVCN.js} +2 -2
  17. package/dist/{chunk-SZUXATOF.js → chunk-XLAOE5MV.js} +4 -4
  18. package/dist/{chunk-B3L6PRLX.js → chunk-ZQXZ4UGE.js} +3 -3
  19. package/dist/code.js +3 -3
  20. package/dist/{context-Soro3B1I.d.ts → context-2wTOwxCk.d.ts} +8 -1
  21. package/dist/editor.js +5 -5
  22. package/dist/index.d.ts +3 -3
  23. package/dist/index.js +11 -11
  24. package/dist/inertia.js +8 -8
  25. package/dist/locales/fr.d.ts +44 -0
  26. package/dist/locales/fr.js +248 -0
  27. package/dist/locales/fr.js.map +1 -0
  28. package/dist/locales/pt.d.ts +2 -2
  29. package/dist/locales/pt.js.map +1 -1
  30. package/dist/shells.js +5 -5
  31. package/package.json +5 -1
  32. package/theme.css +11 -0
  33. package/dist/chunk-KHOA4TEI.js.map +0 -1
  34. package/dist/chunk-UCJTM3UM.js.map +0 -1
  35. /package/dist/{chunk-3Z2VGVPI.js.map → chunk-53V4J7MC.js.map} +0 -0
  36. /package/dist/{chunk-VA6A4HZ2.js.map → chunk-BH3B26DK.js.map} +0 -0
  37. /package/dist/{chunk-TM5MN3MI.js.map → chunk-BP2YDMMI.js.map} +0 -0
  38. /package/dist/{chunk-DE2AJ54R.js.map → chunk-BR3JI3KN.js.map} +0 -0
  39. /package/dist/{chunk-YBXRJSR3.js.map → chunk-CAUTXZ4U.js.map} +0 -0
  40. /package/dist/{chunk-2V6HUWST.js.map → chunk-NKPFIA32.js.map} +0 -0
  41. /package/dist/{chunk-UXVI326F.js.map → chunk-PCYYU332.js.map} +0 -0
  42. /package/dist/{chunk-EYPM6IMS.js.map → chunk-QZRSQVCN.js.map} +0 -0
  43. /package/dist/{chunk-SZUXATOF.js.map → chunk-XLAOE5MV.js.map} +0 -0
  44. /package/dist/{chunk-B3L6PRLX.js.map → chunk-ZQXZ4UGE.js.map} +0 -0
package/dist/blocks.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { D as DateFilterValue, a as DateFilterLabels, b as DateFilterOption, c as DateFilterUnit, C as CopyButtonLabels } from './context-Soro3B1I.js';
2
- export { d as CommandPalette, e as CommandPaletteGroup, f as CommandPaletteItem, g as CommandPaletteProps, h as DATE_FILTER_LABELS, i as DATE_FILTER_OPERATORS, j as DATE_FILTER_PRESETS, k as DATE_FILTER_UNITS, l as DateFilterMode, m as DateFilterOperator, S as SettingsEntry, n as SettingsEntryProps, o as SettingsGroup, p as SettingsGroupProps, q as SettingsLabels, r as SettingsPage, s as SettingsPageProps, t as SettingsSection, u as SettingsSectionProps, U as UiLabelSections, v as UiLabels, w as UiLocaleProvider, x as settingsLabels, y as useCommandPalette, z as useUiLabels, A as useUiLocale } from './context-Soro3B1I.js';
1
+ import { D as DateFilterValue, a as DateFilterLabels, b as DateFilterOption, c as DateFilterUnit, C as CopyButtonLabels } from './context-2wTOwxCk.js';
2
+ export { d as CommandPalette, e as CommandPaletteGroup, f as CommandPaletteItem, g as CommandPaletteProps, h as DATE_FILTER_LABELS, i as DATE_FILTER_OPERATORS, j as DATE_FILTER_PRESETS, k as DATE_FILTER_UNITS, l as DateFilterMode, m as DateFilterOperator, S as SettingsEntry, n as SettingsEntryProps, o as SettingsGroup, p as SettingsGroupProps, q as SettingsLabels, r as SettingsPage, s as SettingsPageProps, t as SettingsSection, u as SettingsSectionProps, U as UiLabelSections, v as UiLabels, w as UiLocaleProvider, x as settingsLabels, y as useCommandPalette, z as useUiLabels, A as useUiLocale } from './context-2wTOwxCk.js';
3
3
  import { F as FormOverlayIntent, a as FormOverlayLabels, T as TwoFactorLabelProps, b as TwoFactorCodeMode, c as TwoFactorQrProps } from './types-CfAUvz--.js';
4
4
  export { D as DangerZone, d as DangerZoneAction, e as DangerZoneLabels, f as DangerZoneProps, g as FormOverlayActions, h as FormOverlayActionsProps, i as TwoFactorLabels, j as TwoFactorSetupStep, k as dangerZoneLabels, l as formOverlayDefaultLabels, t as twoFactorLabels } from './types-CfAUvz--.js';
5
5
  import * as React from 'react';
package/dist/blocks.js CHANGED
@@ -30,10 +30,10 @@ import {
30
30
  TabsList,
31
31
  TabsTrigger,
32
32
  Textarea
33
- } from "./chunk-UCJTM3UM.js";
33
+ } from "./chunk-DPLCEU34.js";
34
34
  import {
35
35
  CopyButton
36
- } from "./chunk-UXVI326F.js";
36
+ } from "./chunk-PCYYU332.js";
37
37
  import {
38
38
  Dialog,
39
39
  DialogContent,
@@ -41,10 +41,10 @@ import {
41
41
  DialogFooter,
42
42
  DialogHeader,
43
43
  DialogTitle
44
- } from "./chunk-EYPM6IMS.js";
44
+ } from "./chunk-QZRSQVCN.js";
45
45
  import {
46
46
  Card
47
- } from "./chunk-2V6HUWST.js";
47
+ } from "./chunk-NKPFIA32.js";
48
48
  import {
49
49
  DEFAULT_TOUR_LABELS,
50
50
  LoginForm,
@@ -64,27 +64,27 @@ import {
64
64
  useLoginFormContext,
65
65
  useTour,
66
66
  useTourController
67
- } from "./chunk-DE2AJ54R.js";
67
+ } from "./chunk-BR3JI3KN.js";
68
68
  import {
69
69
  Alert,
70
70
  AlertDescription,
71
71
  FieldError
72
- } from "./chunk-VA6A4HZ2.js";
72
+ } from "./chunk-BH3B26DK.js";
73
73
  import {
74
74
  UiLocaleProvider,
75
75
  useUiLabels,
76
76
  useUiLocale
77
- } from "./chunk-E26KKMGS.js";
77
+ } from "./chunk-OS7YY5R4.js";
78
78
  import {
79
79
  Label
80
- } from "./chunk-TM5MN3MI.js";
80
+ } from "./chunk-BP2YDMMI.js";
81
81
  import {
82
82
  resolveLink
83
83
  } from "./chunk-L2H5GIF7.js";
84
84
  import {
85
85
  Input,
86
86
  Separator
87
- } from "./chunk-3Z2VGVPI.js";
87
+ } from "./chunk-53V4J7MC.js";
88
88
  import {
89
89
  Button,
90
90
  Spinner,
@@ -95,7 +95,7 @@ import {
95
95
  focusRing,
96
96
  nestedSurfaceReset,
97
97
  recessedSurface
98
- } from "./chunk-KHOA4TEI.js";
98
+ } from "./chunk-PPWJK5T3.js";
99
99
 
100
100
  // src/blocks/command-palette.tsx
101
101
  import { useCallback, useEffect, useState } from "react";
@@ -2,7 +2,7 @@ import {
2
2
  cn,
3
3
  fieldFocus,
4
4
  fieldSurface
5
- } from "./chunk-KHOA4TEI.js";
5
+ } from "./chunk-PPWJK5T3.js";
6
6
 
7
7
  // src/components/ui/input.tsx
8
8
  import { jsx } from "react/jsx-runtime";
@@ -55,4 +55,4 @@ export {
55
55
  Input,
56
56
  Separator
57
57
  };
58
- //# sourceMappingURL=chunk-3Z2VGVPI.js.map
58
+ //# sourceMappingURL=chunk-53V4J7MC.js.map
@@ -1,18 +1,18 @@
1
1
  import {
2
2
  useUiLabels
3
- } from "./chunk-E26KKMGS.js";
3
+ } from "./chunk-OS7YY5R4.js";
4
4
  import {
5
5
  Label
6
- } from "./chunk-TM5MN3MI.js";
6
+ } from "./chunk-BP2YDMMI.js";
7
7
  import {
8
8
  Input
9
- } from "./chunk-3Z2VGVPI.js";
9
+ } from "./chunk-53V4J7MC.js";
10
10
  import {
11
11
  Button,
12
12
  cn,
13
13
  elevatedSurface,
14
14
  focusRing
15
- } from "./chunk-KHOA4TEI.js";
15
+ } from "./chunk-PPWJK5T3.js";
16
16
 
17
17
  // src/components/ui/alert.tsx
18
18
  import { cva } from "class-variance-authority";
@@ -391,4 +391,4 @@ export {
391
391
  passwordInputDefaultLabels,
392
392
  PasswordInput
393
393
  };
394
- //# sourceMappingURL=chunk-VA6A4HZ2.js.map
394
+ //# sourceMappingURL=chunk-BH3B26DK.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  cn
3
- } from "./chunk-KHOA4TEI.js";
3
+ } from "./chunk-PPWJK5T3.js";
4
4
 
5
5
  // src/components/ui/label.tsx
6
6
  import * as LabelPrimitive from "@radix-ui/react-label";
@@ -26,4 +26,4 @@ function Label({
26
26
  export {
27
27
  Label
28
28
  };
29
- //# sourceMappingURL=chunk-TM5MN3MI.js.map
29
+ //# sourceMappingURL=chunk-BP2YDMMI.js.map
@@ -6,23 +6,23 @@ import {
6
6
  FieldControl,
7
7
  FieldLabel,
8
8
  PasswordInput
9
- } from "./chunk-VA6A4HZ2.js";
9
+ } from "./chunk-BH3B26DK.js";
10
10
  import {
11
11
  useUiLabels
12
- } from "./chunk-E26KKMGS.js";
12
+ } from "./chunk-OS7YY5R4.js";
13
13
  import {
14
14
  Label
15
- } from "./chunk-TM5MN3MI.js";
15
+ } from "./chunk-BP2YDMMI.js";
16
16
  import {
17
17
  resolveLink
18
18
  } from "./chunk-L2H5GIF7.js";
19
19
  import {
20
20
  Input
21
- } from "./chunk-3Z2VGVPI.js";
21
+ } from "./chunk-53V4J7MC.js";
22
22
  import {
23
23
  Button,
24
24
  cn
25
- } from "./chunk-KHOA4TEI.js";
25
+ } from "./chunk-PPWJK5T3.js";
26
26
 
27
27
  // src/blocks/login-form/types.ts
28
28
  var loginFormLabels = {
@@ -455,4 +455,4 @@ export {
455
455
  useTourController,
456
456
  useTour
457
457
  };
458
- //# sourceMappingURL=chunk-DE2AJ54R.js.map
458
+ //# sourceMappingURL=chunk-BR3JI3KN.js.map
@@ -3,7 +3,7 @@ import {
3
3
  controlFill,
4
4
  focusRing,
5
5
  glassControl
6
- } from "./chunk-KHOA4TEI.js";
6
+ } from "./chunk-PPWJK5T3.js";
7
7
 
8
8
  // src/components/ui/toggle.tsx
9
9
  import * as TogglePrimitive from "@radix-ui/react-toggle";
@@ -50,4 +50,4 @@ export {
50
50
  toggleVariants,
51
51
  Toggle
52
52
  };
53
- //# sourceMappingURL=chunk-YBXRJSR3.js.map
53
+ //# sourceMappingURL=chunk-CAUTXZ4U.js.map
@@ -7,16 +7,16 @@ import {
7
7
  DialogFooter,
8
8
  DialogHeader,
9
9
  DialogTitle
10
- } from "./chunk-EYPM6IMS.js";
10
+ } from "./chunk-QZRSQVCN.js";
11
11
  import {
12
12
  useUiLabels
13
- } from "./chunk-E26KKMGS.js";
13
+ } from "./chunk-OS7YY5R4.js";
14
14
  import {
15
15
  Label
16
- } from "./chunk-TM5MN3MI.js";
16
+ } from "./chunk-BP2YDMMI.js";
17
17
  import {
18
18
  Input
19
- } from "./chunk-3Z2VGVPI.js";
19
+ } from "./chunk-53V4J7MC.js";
20
20
  import {
21
21
  Button,
22
22
  buttonVariants,
@@ -30,8 +30,11 @@ import {
30
30
  menuSurface,
31
31
  modalSurface,
32
32
  nestedSurfaceReset,
33
- panelSurface
34
- } from "./chunk-KHOA4TEI.js";
33
+ panelSurface,
34
+ scrollEdgeTransition,
35
+ scrollShadowFromBottom,
36
+ scrollShadowFromTop
37
+ } from "./chunk-PPWJK5T3.js";
35
38
 
36
39
  // src/components/ui/confirm-dialog.tsx
37
40
  import { AlertCircle, ChevronRight } from "lucide-react";
@@ -773,6 +776,12 @@ function useFloatingSheetStack() {
773
776
  }
774
777
  return context;
775
778
  }
779
+ var floatingSheetDefaultEdges = {
780
+ top: true,
781
+ bottom: true
782
+ };
783
+ var FloatingSheetEdgesContext = React3.createContext(floatingSheetDefaultEdges);
784
+ var FloatingSheetReportEdgesContext = React3.createContext(null);
776
785
 
777
786
  // src/components/ui/floating-sheet-stack.tsx
778
787
  import * as DialogPrimitive from "@radix-ui/react-dialog";
@@ -882,8 +891,49 @@ function FloatingSheetStack({
882
891
 
883
892
  // src/components/ui/floating-sheet.tsx
884
893
  import { ArrowLeftIcon, XIcon } from "lucide-react";
885
- import * as React5 from "react";
894
+ import * as React6 from "react";
886
895
  import { createPortal } from "react-dom";
896
+
897
+ // src/hooks/use-floating-sheet-body-edges.ts
898
+ import * as React5 from "react";
899
+ function useFloatingSheetBodyEdges(containerRef, topSentinelRef, bottomSentinelRef, reportEdges) {
900
+ React5.useEffect(() => {
901
+ const container = containerRef.current;
902
+ const topSentinel = topSentinelRef.current;
903
+ const bottomSentinel = bottomSentinelRef.current;
904
+ if (!reportEdges || !container || !topSentinel || !bottomSentinel || typeof IntersectionObserver === "undefined") {
905
+ return;
906
+ }
907
+ let edges = floatingSheetDefaultEdges;
908
+ const edgeKeyByTarget = /* @__PURE__ */ new Map([
909
+ [topSentinel, "top"],
910
+ [bottomSentinel, "bottom"]
911
+ ]);
912
+ const observer = new IntersectionObserver(
913
+ (entries) => {
914
+ const next = { ...edges };
915
+ for (const entry of entries) {
916
+ const key = edgeKeyByTarget.get(entry.target);
917
+ if (!key) {
918
+ continue;
919
+ }
920
+ next[key] = entry.isIntersecting;
921
+ }
922
+ edges = next;
923
+ reportEdges(next);
924
+ },
925
+ { root: container, threshold: 0 }
926
+ );
927
+ observer.observe(topSentinel);
928
+ observer.observe(bottomSentinel);
929
+ return () => {
930
+ observer.disconnect();
931
+ reportEdges(floatingSheetDefaultEdges);
932
+ };
933
+ }, [containerRef, topSentinelRef, bottomSentinelRef, reportEdges]);
934
+ }
935
+
936
+ // src/components/ui/floating-sheet.tsx
887
937
  import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
888
938
  function FloatingSheet({
889
939
  open,
@@ -897,20 +947,23 @@ function FloatingSheet({
897
947
  ...props
898
948
  }) {
899
949
  const { labels, container, entries, register, unregister, closeAll } = useFloatingSheetStack();
900
- const id = React5.useId();
950
+ const id = React6.useId();
901
951
  const titleId = `${id}-title`;
902
952
  const descriptionId = `${id}-description`;
903
- const close = React5.useCallback(() => onOpenChange(false), [onOpenChange]);
904
- const closeRef = React5.useRef(close);
905
- const titleRef = React5.useRef(title);
906
- const openerRef = React5.useRef(null);
907
- const panelRef = React5.useRef(null);
908
- const focusedRef = React5.useRef(false);
909
- React5.useEffect(() => {
953
+ const close = React6.useCallback(() => onOpenChange(false), [onOpenChange]);
954
+ const closeRef = React6.useRef(close);
955
+ const titleRef = React6.useRef(title);
956
+ const openerRef = React6.useRef(null);
957
+ const panelRef = React6.useRef(null);
958
+ const focusedRef = React6.useRef(false);
959
+ const [edges, setEdges] = React6.useState(
960
+ floatingSheetDefaultEdges
961
+ );
962
+ React6.useEffect(() => {
910
963
  closeRef.current = close;
911
964
  titleRef.current = title;
912
965
  });
913
- React5.useEffect(() => {
966
+ React6.useEffect(() => {
914
967
  if (!open) {
915
968
  return;
916
969
  }
@@ -921,7 +974,7 @@ function FloatingSheet({
921
974
  close: () => closeRef.current()
922
975
  });
923
976
  }, [open, id, persistent, register]);
924
- React5.useEffect(() => {
977
+ React6.useEffect(() => {
925
978
  if (!open) {
926
979
  return;
927
980
  }
@@ -930,7 +983,7 @@ function FloatingSheet({
930
983
  const index = entries.findIndex((entry) => entry.id === id);
931
984
  const depth = index === -1 ? 0 : entries.length - 1 - index;
932
985
  const isTop = index !== -1 && depth === 0;
933
- React5.useEffect(() => {
986
+ React6.useEffect(() => {
934
987
  if (open) {
935
988
  openerRef.current = document.activeElement;
936
989
  return;
@@ -941,7 +994,7 @@ function FloatingSheet({
941
994
  opener.focus();
942
995
  }
943
996
  }, [open]);
944
- React5.useEffect(() => {
997
+ React6.useEffect(() => {
945
998
  if (!open) {
946
999
  focusedRef.current = false;
947
1000
  return;
@@ -985,7 +1038,11 @@ function FloatingSheet({
985
1038
  "header",
986
1039
  {
987
1040
  "data-slot": "floating-sheet-header",
988
- className: "gap-1 p-5 flex flex-col",
1041
+ className: cn(
1042
+ "gap-1 p-5 relative z-10 flex flex-col",
1043
+ scrollEdgeTransition,
1044
+ !edges.top && scrollShadowFromTop
1045
+ ),
989
1046
  children: [
990
1047
  index > 0 ? /* @__PURE__ */ jsxs5(
991
1048
  "button",
@@ -1024,7 +1081,7 @@ function FloatingSheet({
1024
1081
  ]
1025
1082
  }
1026
1083
  ),
1027
- children,
1084
+ /* @__PURE__ */ jsx7(FloatingSheetReportEdgesContext.Provider, { value: setEdges, children: /* @__PURE__ */ jsx7(FloatingSheetEdgesContext.Provider, { value: edges, children }) }),
1028
1085
  /* @__PURE__ */ jsx7(
1029
1086
  "button",
1030
1087
  {
@@ -1033,7 +1090,7 @@ function FloatingSheet({
1033
1090
  "aria-label": labels.closeLabel,
1034
1091
  onClick: closeAll,
1035
1092
  className: cn(
1036
- "top-4 right-4 size-9 shadow-xs absolute flex items-center justify-center rounded-full border border-border bg-muted text-muted-foreground transition-colors hover:bg-accent hover:text-foreground disabled:pointer-events-none",
1093
+ "top-4 right-4 size-9 shadow-xs absolute z-20 flex items-center justify-center rounded-full border border-border bg-muted text-muted-foreground transition-colors hover:bg-accent hover:text-foreground disabled:pointer-events-none",
1037
1094
  focusRing
1038
1095
  ),
1039
1096
  children: /* @__PURE__ */ jsx7(XIcon, { className: "size-4" })
@@ -1048,14 +1105,47 @@ function FloatingSheet({
1048
1105
  function FloatingSheetBody({
1049
1106
  className,
1050
1107
  slotName = "floating-sheet-body",
1108
+ children,
1051
1109
  ...props
1052
1110
  }) {
1053
- return /* @__PURE__ */ jsx7(
1111
+ const reportEdges = React6.useContext(FloatingSheetReportEdgesContext);
1112
+ const containerRef = React6.useRef(null);
1113
+ const topSentinelRef = React6.useRef(null);
1114
+ const bottomSentinelRef = React6.useRef(null);
1115
+ useFloatingSheetBodyEdges(
1116
+ containerRef,
1117
+ topSentinelRef,
1118
+ bottomSentinelRef,
1119
+ reportEdges
1120
+ );
1121
+ return /* @__PURE__ */ jsxs5(
1054
1122
  "div",
1055
1123
  {
1124
+ ref: containerRef,
1056
1125
  className: cn("p-5 flex-1 overflow-y-auto", className),
1057
1126
  ...props,
1058
- "data-slot": slotName
1127
+ "data-slot": slotName,
1128
+ children: [
1129
+ /* @__PURE__ */ jsx7(
1130
+ "div",
1131
+ {
1132
+ ref: topSentinelRef,
1133
+ "aria-hidden": "true",
1134
+ "data-slot": "floating-sheet-top-sentinel",
1135
+ className: "h-0"
1136
+ }
1137
+ ),
1138
+ children,
1139
+ /* @__PURE__ */ jsx7(
1140
+ "div",
1141
+ {
1142
+ ref: bottomSentinelRef,
1143
+ "aria-hidden": "true",
1144
+ "data-slot": "floating-sheet-bottom-sentinel",
1145
+ className: "h-0"
1146
+ }
1147
+ )
1148
+ ]
1059
1149
  }
1060
1150
  );
1061
1151
  }
@@ -1064,11 +1154,14 @@ function FloatingSheetFooter({
1064
1154
  slotName = "floating-sheet-footer",
1065
1155
  ...props
1066
1156
  }) {
1157
+ const edges = React6.useContext(FloatingSheetEdgesContext);
1067
1158
  return /* @__PURE__ */ jsx7(
1068
1159
  "div",
1069
1160
  {
1070
1161
  className: cn(
1071
- "gap-2 p-5 mt-auto flex items-center justify-end",
1162
+ "gap-2 p-5 relative z-10 mt-auto flex items-center justify-end",
1163
+ scrollEdgeTransition,
1164
+ !edges.bottom && scrollShadowFromBottom,
1072
1165
  className
1073
1166
  ),
1074
1167
  ...props,
@@ -1080,9 +1173,9 @@ function FloatingSheetFooter({
1080
1173
  // src/components/ui/input-otp.tsx
1081
1174
  import { OTPInput, OTPInputContext } from "input-otp";
1082
1175
  import { Minus } from "lucide-react";
1083
- import * as React6 from "react";
1176
+ import * as React7 from "react";
1084
1177
  import { jsx as jsx8, jsxs as jsxs6 } from "react/jsx-runtime";
1085
- var InputOTP = React6.forwardRef(({ className, containerClassName, ...props }, ref) => /* @__PURE__ */ jsx8(
1178
+ var InputOTP = React7.forwardRef(({ className, containerClassName, ...props }, ref) => /* @__PURE__ */ jsx8(
1086
1179
  OTPInput,
1087
1180
  {
1088
1181
  ref,
@@ -1095,10 +1188,10 @@ var InputOTP = React6.forwardRef(({ className, containerClassName, ...props }, r
1095
1188
  }
1096
1189
  ));
1097
1190
  InputOTP.displayName = "InputOTP";
1098
- var InputOTPGroup = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx8("div", { ref, className: cn("flex items-center", className), ...props }));
1191
+ var InputOTPGroup = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx8("div", { ref, className: cn("flex items-center", className), ...props }));
1099
1192
  InputOTPGroup.displayName = "InputOTPGroup";
1100
- var InputOTPSlot = React6.forwardRef(({ index, className, slotName = "input-otp-slot", ...props }, ref) => {
1101
- const inputOTPContext = React6.useContext(OTPInputContext);
1193
+ var InputOTPSlot = React7.forwardRef(({ index, className, slotName = "input-otp-slot", ...props }, ref) => {
1194
+ const inputOTPContext = React7.useContext(OTPInputContext);
1102
1195
  const { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];
1103
1196
  return /* @__PURE__ */ jsxs6(
1104
1197
  "div",
@@ -1121,14 +1214,14 @@ var InputOTPSlot = React6.forwardRef(({ index, className, slotName = "input-otp-
1121
1214
  );
1122
1215
  });
1123
1216
  InputOTPSlot.displayName = "InputOTPSlot";
1124
- var InputOTPSeparator = React6.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx8("div", { ref, role: "separator", ...props, children: /* @__PURE__ */ jsx8(Minus, {}) }));
1217
+ var InputOTPSeparator = React7.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx8("div", { ref, role: "separator", ...props, children: /* @__PURE__ */ jsx8(Minus, {}) }));
1125
1218
  InputOTPSeparator.displayName = "InputOTPSeparator";
1126
1219
 
1127
1220
  // src/components/ui/switch.tsx
1128
1221
  import * as SwitchPrimitives from "@radix-ui/react-switch";
1129
- import * as React7 from "react";
1222
+ import * as React8 from "react";
1130
1223
  import { jsx as jsx9 } from "react/jsx-runtime";
1131
- var Switch = React7.forwardRef(({ className, slotName = "switch", ...props }, ref) => /* @__PURE__ */ jsx9(
1224
+ var Switch = React8.forwardRef(({ className, slotName = "switch", ...props }, ref) => /* @__PURE__ */ jsx9(
1132
1225
  SwitchPrimitives.Root,
1133
1226
  {
1134
1227
  className: cn(
@@ -1153,11 +1246,11 @@ Switch.displayName = SwitchPrimitives.Root.displayName;
1153
1246
 
1154
1247
  // src/components/ui/tabs.tsx
1155
1248
  import * as TabsPrimitive from "@radix-ui/react-tabs";
1156
- import * as React8 from "react";
1249
+ import * as React9 from "react";
1157
1250
  import { jsx as jsx10 } from "react/jsx-runtime";
1158
- var Tabs = React8.forwardRef(({ slotName = "tabs", ...props }, ref) => /* @__PURE__ */ jsx10(TabsPrimitive.Root, { ref, ...props, "data-slot": slotName }));
1251
+ var Tabs = React9.forwardRef(({ slotName = "tabs", ...props }, ref) => /* @__PURE__ */ jsx10(TabsPrimitive.Root, { ref, ...props, "data-slot": slotName }));
1159
1252
  Tabs.displayName = TabsPrimitive.Root.displayName;
1160
- var TabsList = React8.forwardRef(({ className, slotName = "tabs-list", ...props }, ref) => /* @__PURE__ */ jsx10(
1253
+ var TabsList = React9.forwardRef(({ className, slotName = "tabs-list", ...props }, ref) => /* @__PURE__ */ jsx10(
1161
1254
  TabsPrimitive.List,
1162
1255
  {
1163
1256
  ref,
@@ -1170,7 +1263,7 @@ var TabsList = React8.forwardRef(({ className, slotName = "tabs-list", ...props
1170
1263
  }
1171
1264
  ));
1172
1265
  TabsList.displayName = TabsPrimitive.List.displayName;
1173
- var TabsTrigger = React8.forwardRef(({ className, slotName = "tabs-trigger", ...props }, ref) => /* @__PURE__ */ jsx10(
1266
+ var TabsTrigger = React9.forwardRef(({ className, slotName = "tabs-trigger", ...props }, ref) => /* @__PURE__ */ jsx10(
1174
1267
  TabsPrimitive.Trigger,
1175
1268
  {
1176
1269
  ref,
@@ -1183,7 +1276,7 @@ var TabsTrigger = React8.forwardRef(({ className, slotName = "tabs-trigger", ...
1183
1276
  }
1184
1277
  ));
1185
1278
  TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
1186
- var TabsContent = React8.forwardRef(({ className, slotName = "tabs-content", ...props }, ref) => /* @__PURE__ */ jsx10(
1279
+ var TabsContent = React9.forwardRef(({ className, slotName = "tabs-content", ...props }, ref) => /* @__PURE__ */ jsx10(
1187
1280
  TabsPrimitive.Content,
1188
1281
  {
1189
1282
  ref,
@@ -1200,9 +1293,9 @@ var TabsContent = React8.forwardRef(({ className, slotName = "tabs-content", ...
1200
1293
  TabsContent.displayName = TabsPrimitive.Content.displayName;
1201
1294
 
1202
1295
  // src/components/ui/textarea.tsx
1203
- import * as React9 from "react";
1296
+ import * as React10 from "react";
1204
1297
  import { jsx as jsx11 } from "react/jsx-runtime";
1205
- var Textarea = React9.forwardRef(({ className, slotName = "textarea", ...props }, ref) => {
1298
+ var Textarea = React10.forwardRef(({ className, slotName = "textarea", ...props }, ref) => {
1206
1299
  return /* @__PURE__ */ jsx11(
1207
1300
  "textarea",
1208
1301
  {
@@ -1265,4 +1358,4 @@ export {
1265
1358
  TabsContent,
1266
1359
  Textarea
1267
1360
  };
1268
- //# sourceMappingURL=chunk-UCJTM3UM.js.map
1361
+ //# sourceMappingURL=chunk-DPLCEU34.js.map