@spear-ai/spectral 1.9.1 → 1.10.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 (236) hide show
  1. package/README.md +6 -5
  2. package/dist/.js +112 -239
  3. package/dist/Accordion-CDXdSAST.js +363 -0
  4. package/dist/Accordion.js +3 -498
  5. package/dist/Alert/AlertBase.js +69 -152
  6. package/dist/Alert.js +58 -106
  7. package/dist/AnimatePresence-D-9jXfgI.js +178 -0
  8. package/dist/App.js +6 -6
  9. package/dist/Avatar.js +83 -65
  10. package/dist/Badge.d.ts +1 -3
  11. package/dist/Badge.js +21 -25
  12. package/dist/Button.js +102 -178
  13. package/dist/ButtonGroup/ButtonGroupButton.js +38 -40
  14. package/dist/ButtonGroup.js +55 -59
  15. package/dist/ButtonIcon.js +58 -134
  16. package/dist/Calendar-s4lyijkn.js +3109 -0
  17. package/dist/Checkbox/CheckboxBase.js +94 -126
  18. package/dist/Checkbox.d.ts +1 -1
  19. package/dist/Checkbox.js +40 -105
  20. package/dist/Combobox/ComboboxBase.js +2 -79
  21. package/dist/Combobox.js +106 -172
  22. package/dist/ComboboxBase-D8Nf4xC-.js +491 -0
  23. package/dist/ControlGroup/ControlGroupSelect.d.ts +1 -1
  24. package/dist/ControlGroup/ControlGroupSelect.js +85 -101
  25. package/dist/ControlGroup.js +45 -48
  26. package/dist/DataCard/Card.js +37 -12
  27. package/dist/DataCard.d.ts +1 -1
  28. package/dist/DataCard.js +36 -16
  29. package/dist/DateTimePicker/Calendar.js +2 -2967
  30. package/dist/DateTimePicker/DateTimeDisplayInput.d.ts +1 -1
  31. package/dist/DateTimePicker/DateTimeDisplayInput.js +379 -275
  32. package/dist/DateTimePicker/DateTimeInput.d.ts +1 -1
  33. package/dist/DateTimePicker/DateTimeInput.js +133 -141
  34. package/dist/DateTimePicker/DateTimeUtils.js +2 -2193
  35. package/dist/DateTimePicker/TimePeriodSelect.d.ts +1 -1
  36. package/dist/DateTimePicker/TimePeriodSelect.js +45 -20
  37. package/dist/DateTimePicker/TimePicker.d.ts +1 -1
  38. package/dist/DateTimePicker/TimePicker.js +76 -60
  39. package/dist/DateTimePicker.d.ts +2 -2
  40. package/dist/DateTimePicker.js +87 -205
  41. package/dist/DateTimeUtils-DVvG6H-p.js +2098 -0
  42. package/dist/Dialog.js +74 -74
  43. package/dist/Drawer.js +67 -37
  44. package/dist/HoverCard-CYDsIiVK.js +201 -0
  45. package/dist/HoverCard.d.ts +1 -1
  46. package/dist/HoverCard.js +2 -218
  47. package/dist/Icons/AnalyzeIcon.js +50 -57
  48. package/dist/Icons/AnnotationsIcon.js +20 -15
  49. package/dist/Icons/ApprovedIcon.js +26 -18
  50. package/dist/Icons/ArrowDownIcon.js +20 -6
  51. package/dist/Icons/ArrowUpIcon.js +20 -6
  52. package/dist/Icons/BoxToolIcon.js +17 -12
  53. package/dist/Icons/CalendarIcon.js +43 -20
  54. package/dist/Icons/CheckCircleIcon.js +26 -10
  55. package/dist/Icons/CheckSquareIcon.js +26 -10
  56. package/dist/Icons/CheckmarkIcon.js +22 -9
  57. package/dist/Icons/ChevronDownIcon.js +22 -9
  58. package/dist/Icons/ChevronUpIcon.js +22 -9
  59. package/dist/Icons/ClockIcon.js +26 -18
  60. package/dist/Icons/CloseCircleIcon.js +26 -10
  61. package/dist/Icons/CloseIcon.js +18 -9
  62. package/dist/Icons/DashboardIcon.js +36 -10
  63. package/dist/Icons/DatabaseIcon.js +36 -19
  64. package/dist/Icons/DeleteIcon.js +36 -19
  65. package/dist/Icons/DurationIcon.js +57 -22
  66. package/dist/Icons/EditIcon.js +26 -27
  67. package/dist/Icons/EmailIcon.js +26 -10
  68. package/dist/Icons/EraserIcon.js +41 -25
  69. package/dist/Icons/ErrorIcon.js +27 -11
  70. package/dist/Icons/EyeClosedIcon.js +29 -13
  71. package/dist/Icons/EyeClosedIcon2.js +27 -11
  72. package/dist/Icons/EyeOpenIcon.js +22 -9
  73. package/dist/Icons/FileDownloadIcon.js +43 -20
  74. package/dist/Icons/GoToFirstIcon.js +26 -9
  75. package/dist/Icons/GoToLastIcon.js +26 -9
  76. package/dist/Icons/HarmonicCursorsIcon.js +23 -9
  77. package/dist/Icons/IconBase.d.ts +3 -3
  78. package/dist/Icons/IconBase.js +49 -66
  79. package/dist/Icons/InfoIcon.js +36 -10
  80. package/dist/Icons/KeyboardIcon.js +26 -27
  81. package/dist/Icons/LabelIcon.js +19 -14
  82. package/dist/Icons/LassoIcon.js +36 -28
  83. package/dist/Icons/LineToolIcon.js +48 -39
  84. package/dist/Icons/LiveViewIcon.js +50 -12
  85. package/dist/Icons/LoaderIcon.js +67 -27
  86. package/dist/Icons/LocationIcon.js +26 -27
  87. package/dist/Icons/LogoutIcon.js +20 -15
  88. package/dist/Icons/MeasureIcon.js +78 -25
  89. package/dist/Icons/MessagesIcon.js +33 -18
  90. package/dist/Icons/MetadataIcon.js +20 -15
  91. package/dist/Icons/MinusIcon.d.ts +1 -1
  92. package/dist/Icons/MinusIcon.js +18 -6
  93. package/dist/Icons/OntologyIcon.js +87 -71
  94. package/dist/Icons/PanelIconClose.js +28 -10
  95. package/dist/Icons/PanelIconOpen.js +28 -10
  96. package/dist/Icons/PlayIcon.js +20 -6
  97. package/dist/Icons/PlusIcon.js +20 -14
  98. package/dist/Icons/PolygonIcon.js +50 -39
  99. package/dist/Icons/ProgressCheckIcon.d.ts +5 -0
  100. package/dist/Icons/ProgressCheckIcon.js +58 -0
  101. package/dist/Icons/ResetIcon.js +17 -12
  102. package/dist/Icons/ReviewedIcon.js +36 -19
  103. package/dist/Icons/ScissorsIcon.js +22 -17
  104. package/dist/Icons/SearchIcon.js +26 -9
  105. package/dist/Icons/SettingsIcon.js +26 -27
  106. package/dist/Icons/SortAscendingIcon.js +50 -12
  107. package/dist/Icons/SortAtoZIcon.js +50 -12
  108. package/dist/Icons/SortDescendingIcon.js +50 -12
  109. package/dist/Icons/SortZtoAIcon.js +50 -12
  110. package/dist/Icons/StackIcon.js +26 -9
  111. package/dist/Icons/StarIcon.js +20 -6
  112. package/dist/Icons/TrashIcon.js +17 -12
  113. package/dist/Icons/UndoIcon.js +20 -15
  114. package/dist/Icons/User2Icon.js +26 -10
  115. package/dist/Icons/UserIcon.js +19 -14
  116. package/dist/Icons/WarningIcon.js +19 -14
  117. package/dist/Icons/ZoomAllIcon.js +71 -15
  118. package/dist/Icons/ZoomXIcon.js +36 -10
  119. package/dist/Icons/ZoomYIcon.js +36 -10
  120. package/dist/Icons/index.d.ts +1 -0
  121. package/dist/Icons.js +68 -136
  122. package/dist/IconsAnimated/PanelLeftCloseIcon.js +66 -36
  123. package/dist/IconsAnimated/PanelLeftOpenIcon.js +66 -36
  124. package/dist/IconsAnimated.js +3 -6
  125. package/dist/Input/InputUtils.js +51 -52
  126. package/dist/Input.js +132 -185
  127. package/dist/InputOTP-XUWW9xcI.js +461 -0
  128. package/dist/InputOTP.js +2 -382
  129. package/dist/Kbd.d.ts +1 -1
  130. package/dist/Kbd.js +182 -86
  131. package/dist/Label.js +12 -14
  132. package/dist/MultiSelect/MultiSelectBase.js +331 -403
  133. package/dist/MultiSelect.d.ts +1 -1
  134. package/dist/MultiSelect.js +23 -23
  135. package/dist/Popover.js +28 -32
  136. package/dist/RadioButton.d.ts +17 -0
  137. package/dist/RadioButton.js +33 -0
  138. package/dist/RadioButtonGroup/RadioButtonGroupBase.d.ts +3 -1
  139. package/dist/RadioButtonGroup/RadioButtonGroupBase.js +49 -46
  140. package/dist/RadioButtonGroup.d.ts +1 -1
  141. package/dist/RadioButtonGroup.js +11 -8
  142. package/dist/RadioGroup-w_q6RGEK.js +447 -0
  143. package/dist/RadioGroup.js +2 -505
  144. package/dist/Select.js +163 -186
  145. package/dist/Separator.js +16 -19
  146. package/dist/Skeleton.js +10 -6
  147. package/dist/Slider-BzzZT3Zm.js +490 -0
  148. package/dist/Slider.js +2 -562
  149. package/dist/SpectralProvider.js +8 -5
  150. package/dist/Switch/SwitchBase.js +91 -95
  151. package/dist/Switch-CVzRJ-0n.js +126 -0
  152. package/dist/Switch.d.ts +1 -1
  153. package/dist/Switch.js +2 -134
  154. package/dist/Tabs/TabsBase.js +242 -250
  155. package/dist/Tabs/tabsUtils.js +65 -73
  156. package/dist/Tabs.d.ts +1 -1
  157. package/dist/Tabs.js +73 -103
  158. package/dist/Textarea/TextareaUtils.js +35 -46
  159. package/dist/Textarea.js +83 -160
  160. package/dist/Toast-9zqXxKKO.js +711 -0
  161. package/dist/Toast.js +2 -885
  162. package/dist/Toggle/ToggleBase.js +46 -56
  163. package/dist/Toggle.d.ts +1 -1
  164. package/dist/Toggle.js +52 -62
  165. package/dist/ToggleGroup/ToggleGroupBase.js +128 -104
  166. package/dist/ToggleGroup.d.ts +1 -1
  167. package/dist/ToggleGroup.js +52 -63
  168. package/dist/Tooltip-D1K8kY1y.js +389 -0
  169. package/dist/Tooltip.js +2 -365
  170. package/dist/Tray.js +174 -217
  171. package/dist/chunk-h9knIhTc.js +20 -0
  172. package/dist/clsx-jM1GlMvB.js +16 -0
  173. package/dist/dist-3Af8168y.js +913 -0
  174. package/dist/dist-7HRQ5IKN.js +249 -0
  175. package/dist/dist-B2k1iWFp.js +129 -0
  176. package/dist/dist-B4FgboI8.js +122 -0
  177. package/dist/dist-B4g6zpUF.js +33 -0
  178. package/dist/dist-B9tup-4O.js +216 -0
  179. package/dist/dist-BK1K0g9W.js +29 -0
  180. package/dist/dist-Bfjk-jx9.js +28 -0
  181. package/dist/dist-Bft31cJh.js +65 -0
  182. package/dist/dist-BtdmHAzK.js +190 -0
  183. package/dist/dist-C0Hifjgh.js +1287 -0
  184. package/dist/dist-CGzgmYB9.js +68 -0
  185. package/dist/dist-ClmepHp4.js +10 -0
  186. package/dist/dist-D8Wb_MX9.js +6 -0
  187. package/dist/dist-Dtvmk11N.js +12 -0
  188. package/dist/dist-fW81qjVl.js +677 -0
  189. package/dist/dist-s1uWaZYZ.js +11 -0
  190. package/dist/es2015-YHaMV-St.js +701 -0
  191. package/dist/hooks/useAccordionAutoScroll.js +66 -67
  192. package/dist/hooks/useControllableState.js +14 -13
  193. package/dist/hooks/useTheme.js +21 -17
  194. package/dist/index.d.ts +2 -1
  195. package/dist/index.d.ts.map +1 -1
  196. package/dist/main.js +18954 -27224
  197. package/dist/primitives/button.js +39 -41
  198. package/dist/primitives/input-group.js +57 -73
  199. package/dist/primitives/input.js +11 -20
  200. package/dist/primitives/popover.js +34 -28
  201. package/dist/primitives/select.js +70 -138
  202. package/dist/primitives/slot.js +32 -31
  203. package/dist/primitives/textarea.js +10 -16
  204. package/dist/proxy-Dn10Pl_g.js +4920 -0
  205. package/dist/styles/main.css +2 -1
  206. package/dist/styles/spectral.css +1 -1
  207. package/dist/twUtils-VNWgstKL.js +1673 -0
  208. package/dist/use-animation-CBUDycyW.js +57 -0
  209. package/dist/utils/constants.js +4 -4
  210. package/dist/utils/formFieldUtils.js +136 -148
  211. package/dist/utils/sharedUtils.js +26 -7
  212. package/dist/utils/twUtils.js +2 -2919
  213. package/package.json +24 -28
  214. package/dist/ComboboxBase-CxNxYtdT.js +0 -408
  215. package/dist/clsx-OuTLNxxd.js +0 -16
  216. package/dist/index-0ioNhtNM.js +0 -10
  217. package/dist/index-6oYKCvIn.js +0 -677
  218. package/dist/index-BFOf48AQ.js +0 -69
  219. package/dist/index-BZPx6jYI.js +0 -8
  220. package/dist/index-BlHU_t18.js +0 -142
  221. package/dist/index-Bm1RbF6w.js +0 -1037
  222. package/dist/index-Bv2OIg5P.js +0 -225
  223. package/dist/index-CKEI0pDv.js +0 -56
  224. package/dist/index-CM_hWgfC.js +0 -32
  225. package/dist/index-C_YVr64u.js +0 -1538
  226. package/dist/index-Cl8VeY0o.js +0 -149
  227. package/dist/index-CwSyIPrv.js +0 -13
  228. package/dist/index-D29mdTf5.js +0 -34
  229. package/dist/index-DEYs15GP.js +0 -66
  230. package/dist/index-Dc0No4pV.js +0 -233
  231. package/dist/index-T6XEa11q.js +0 -822
  232. package/dist/index-pBCLb6Gr.js +0 -240
  233. package/dist/index-psiVrsnE.js +0 -27
  234. package/dist/index-rKs9bXHr.js +0 -6
  235. package/dist/proxy-CO_-Vget.js +0 -4975
  236. package/dist/use-animation-DhEPRwZ3.js +0 -62
package/dist/Accordion.js CHANGED
@@ -1,498 +1,3 @@
1
- "use client";
2
- import "./styles/main.css";
3
- import { jsx as i, jsxs as K } from "react/jsx-runtime";
4
- import "./Icons/AnalyzeIcon.js";
5
- import "./Icons/AnnotationsIcon.js";
6
- import "./Icons/ApprovedIcon.js";
7
- import "./Icons/ArrowDownIcon.js";
8
- import "./Icons/ArrowUpIcon.js";
9
- import "./Icons/BoxToolIcon.js";
10
- import "./Icons/CalendarIcon.js";
11
- import "./Icons/CheckCircleIcon.js";
12
- import "./Icons/CheckSquareIcon.js";
13
- import "./Icons/CheckmarkIcon.js";
14
- import { ChevronDownIcon as ve } from "./Icons/ChevronDownIcon.js";
15
- import "./Icons/ChevronUpIcon.js";
16
- import "./Icons/ClockIcon.js";
17
- import "./Icons/CloseCircleIcon.js";
18
- import "./Icons/CloseIcon.js";
19
- import "./Icons/DashboardIcon.js";
20
- import "./Icons/DatabaseIcon.js";
21
- import "./Icons/DeleteIcon.js";
22
- import "./Icons/DurationIcon.js";
23
- import "./Icons/EditIcon.js";
24
- import "./Icons/EmailIcon.js";
25
- import "./Icons/EraserIcon.js";
26
- import "./Icons/ErrorIcon.js";
27
- import "./Icons/EyeClosedIcon.js";
28
- import "./Icons/EyeClosedIcon2.js";
29
- import "./Icons/EyeOpenIcon.js";
30
- import "./Icons/FileDownloadIcon.js";
31
- import "./Icons/GoToFirstIcon.js";
32
- import "./Icons/GoToLastIcon.js";
33
- import "./Icons/HarmonicCursorsIcon.js";
34
- import "./Icons/InfoIcon.js";
35
- import "./Icons/KeyboardIcon.js";
36
- import "./Icons/LabelIcon.js";
37
- import "./Icons/LassoIcon.js";
38
- import "./Icons/LineToolIcon.js";
39
- import "./Icons/LiveViewIcon.js";
40
- import "./Icons/LoaderIcon.js";
41
- import "./Icons/LocationIcon.js";
42
- import "./Icons/LogoutIcon.js";
43
- import "./Icons/MeasureIcon.js";
44
- import "./Icons/MessagesIcon.js";
45
- import "./Icons/MetadataIcon.js";
46
- import "./Icons/MinusIcon.js";
47
- import "./Icons/OntologyIcon.js";
48
- import "./Icons/PanelIconClose.js";
49
- import "./Icons/PanelIconOpen.js";
50
- import "./Icons/PlayIcon.js";
51
- import "./Icons/PlusIcon.js";
52
- import "./Icons/PolygonIcon.js";
53
- import "./Icons/ResetIcon.js";
54
- import "./Icons/ReviewedIcon.js";
55
- import "./Icons/ScissorsIcon.js";
56
- import "./Icons/SearchIcon.js";
57
- import "./Icons/SettingsIcon.js";
58
- import "./Icons/SortAscendingIcon.js";
59
- import "./Icons/SortAtoZIcon.js";
60
- import "./Icons/SortDescendingIcon.js";
61
- import "./Icons/SortZtoAIcon.js";
62
- import "./Icons/StackIcon.js";
63
- import "./Icons/StarIcon.js";
64
- import "./Icons/TrashIcon.js";
65
- import "./Icons/UndoIcon.js";
66
- import "./Icons/User2Icon.js";
67
- import "./Icons/UserIcon.js";
68
- import "./Icons/WarningIcon.js";
69
- import "./Icons/ZoomAllIcon.js";
70
- import "./Icons/ZoomXIcon.js";
71
- import "./Icons/ZoomYIcon.js";
72
- import { useAccordionAutoScroll as Ce } from "./hooks/useAccordionAutoScroll.js";
73
- import * as f from "react";
74
- import u, { createContext as ge, Children as be, isValidElement as Ae, cloneElement as he, useRef as xe, useCallback as Ie, useContext as ye } from "react";
75
- import { P as y, c as F, e as M, a as z, u as B, f as Re } from "./index-Dc0No4pV.js";
76
- import { c as Ne, u as we } from "./index-CKEI0pDv.js";
77
- import { P as _e } from "./index-BFOf48AQ.js";
78
- import { u as U } from "./index-CwSyIPrv.js";
79
- import { cn as w } from "./utils/twUtils.js";
80
- var _ = "Collapsible", [Pe, q] = z(_), [Ee, V] = Pe(_), J = f.forwardRef(
81
- (e, a) => {
82
- const {
83
- __scopeCollapsible: o,
84
- open: t,
85
- defaultOpen: n,
86
- disabled: r,
87
- onOpenChange: c,
88
- ...s
89
- } = e, [l, p] = M({
90
- prop: t,
91
- defaultProp: n ?? !1,
92
- onChange: c,
93
- caller: _
94
- });
95
- return /* @__PURE__ */ i(
96
- Ee,
97
- {
98
- scope: o,
99
- disabled: r,
100
- contentId: U(),
101
- open: l,
102
- onOpenToggle: f.useCallback(() => p((m) => !m), [p]),
103
- children: /* @__PURE__ */ i(
104
- y.div,
105
- {
106
- "data-state": H(l),
107
- "data-disabled": r ? "" : void 0,
108
- ...s,
109
- ref: a
110
- }
111
- )
112
- }
113
- );
114
- }
115
- );
116
- J.displayName = _;
117
- var Y = "CollapsibleTrigger", Q = f.forwardRef(
118
- (e, a) => {
119
- const { __scopeCollapsible: o, ...t } = e, n = V(Y, o);
120
- return /* @__PURE__ */ i(
121
- y.button,
122
- {
123
- type: "button",
124
- "aria-controls": n.contentId,
125
- "aria-expanded": n.open || !1,
126
- "data-state": H(n.open),
127
- "data-disabled": n.disabled ? "" : void 0,
128
- disabled: n.disabled,
129
- ...t,
130
- ref: a,
131
- onClick: F(e.onClick, n.onOpenToggle)
132
- }
133
- );
134
- }
135
- );
136
- Q.displayName = Y;
137
- var $ = "CollapsibleContent", W = f.forwardRef(
138
- (e, a) => {
139
- const { forceMount: o, ...t } = e, n = V($, e.__scopeCollapsible);
140
- return /* @__PURE__ */ i(_e, { present: o || n.open, children: ({ present: r }) => /* @__PURE__ */ i(Se, { ...t, ref: a, present: r }) });
141
- }
142
- );
143
- W.displayName = $;
144
- var Se = f.forwardRef((e, a) => {
145
- const { __scopeCollapsible: o, present: t, children: n, ...r } = e, c = V($, o), [s, l] = f.useState(t), p = f.useRef(null), m = B(a, p), v = f.useRef(0), x = v.current, g = f.useRef(0), R = g.current, b = c.open || s, A = f.useRef(b), h = f.useRef(void 0);
146
- return f.useEffect(() => {
147
- const d = requestAnimationFrame(() => A.current = !1);
148
- return () => cancelAnimationFrame(d);
149
- }, []), Re(() => {
150
- const d = p.current;
151
- if (d) {
152
- h.current = h.current || {
153
- transitionDuration: d.style.transitionDuration,
154
- animationName: d.style.animationName
155
- }, d.style.transitionDuration = "0s", d.style.animationName = "none";
156
- const I = d.getBoundingClientRect();
157
- v.current = I.height, g.current = I.width, A.current || (d.style.transitionDuration = h.current.transitionDuration, d.style.animationName = h.current.animationName), l(t);
158
- }
159
- }, [c.open, t]), /* @__PURE__ */ i(
160
- y.div,
161
- {
162
- "data-state": H(c.open),
163
- "data-disabled": c.disabled ? "" : void 0,
164
- id: c.contentId,
165
- hidden: !b,
166
- ...r,
167
- ref: m,
168
- style: {
169
- "--radix-collapsible-content-height": x ? `${x}px` : void 0,
170
- "--radix-collapsible-content-width": R ? `${R}px` : void 0,
171
- ...e.style
172
- },
173
- children: b && n
174
- }
175
- );
176
- });
177
- function H(e) {
178
- return e ? "open" : "closed";
179
- }
180
- var Oe = J, Te = Q, ke = W, C = "Accordion", De = ["Home", "End", "ArrowDown", "ArrowUp", "ArrowLeft", "ArrowRight"], [L, Me, Ve] = Ne(C), [P] = z(C, [
181
- Ve,
182
- q
183
- ]), j = q(), X = u.forwardRef(
184
- (e, a) => {
185
- const { type: o, ...t } = e, n = t, r = t;
186
- return /* @__PURE__ */ i(L.Provider, { scope: e.__scopeAccordion, children: o === "multiple" ? /* @__PURE__ */ i(je, { ...r, ref: a }) : /* @__PURE__ */ i(Le, { ...n, ref: a }) });
187
- }
188
- );
189
- X.displayName = C;
190
- var [Z, $e] = P(C), [ee, He] = P(
191
- C,
192
- { collapsible: !1 }
193
- ), Le = u.forwardRef(
194
- (e, a) => {
195
- const {
196
- value: o,
197
- defaultValue: t,
198
- onValueChange: n = () => {
199
- },
200
- collapsible: r = !1,
201
- ...c
202
- } = e, [s, l] = M({
203
- prop: o,
204
- defaultProp: t ?? "",
205
- onChange: n,
206
- caller: C
207
- });
208
- return /* @__PURE__ */ i(
209
- Z,
210
- {
211
- scope: e.__scopeAccordion,
212
- value: u.useMemo(() => s ? [s] : [], [s]),
213
- onItemOpen: l,
214
- onItemClose: u.useCallback(() => r && l(""), [r, l]),
215
- children: /* @__PURE__ */ i(ee, { scope: e.__scopeAccordion, collapsible: r, children: /* @__PURE__ */ i(oe, { ...c, ref: a }) })
216
- }
217
- );
218
- }
219
- ), je = u.forwardRef((e, a) => {
220
- const {
221
- value: o,
222
- defaultValue: t,
223
- onValueChange: n = () => {
224
- },
225
- ...r
226
- } = e, [c, s] = M({
227
- prop: o,
228
- defaultProp: t ?? [],
229
- onChange: n,
230
- caller: C
231
- }), l = u.useCallback(
232
- (m) => s((v = []) => [...v, m]),
233
- [s]
234
- ), p = u.useCallback(
235
- (m) => s((v = []) => v.filter((x) => x !== m)),
236
- [s]
237
- );
238
- return /* @__PURE__ */ i(
239
- Z,
240
- {
241
- scope: e.__scopeAccordion,
242
- value: c,
243
- onItemOpen: l,
244
- onItemClose: p,
245
- children: /* @__PURE__ */ i(ee, { scope: e.__scopeAccordion, collapsible: !0, children: /* @__PURE__ */ i(oe, { ...r, ref: a }) })
246
- }
247
- );
248
- }), [Ge, E] = P(C), oe = u.forwardRef(
249
- (e, a) => {
250
- const { __scopeAccordion: o, disabled: t, dir: n, orientation: r = "vertical", ...c } = e, s = u.useRef(null), l = B(s, a), p = Me(o), v = we(n) === "ltr", x = F(e.onKeyDown, (g) => {
251
- if (!De.includes(g.key)) return;
252
- const R = g.target, b = p().filter((k) => !k.ref.current?.disabled), A = b.findIndex((k) => k.ref.current === R), h = b.length;
253
- if (A === -1) return;
254
- g.preventDefault();
255
- let d = A;
256
- const I = 0, S = h - 1, O = () => {
257
- d = A + 1, d > S && (d = I);
258
- }, T = () => {
259
- d = A - 1, d < I && (d = S);
260
- };
261
- switch (g.key) {
262
- case "Home":
263
- d = I;
264
- break;
265
- case "End":
266
- d = S;
267
- break;
268
- case "ArrowRight":
269
- r === "horizontal" && (v ? O() : T());
270
- break;
271
- case "ArrowDown":
272
- r === "vertical" && O();
273
- break;
274
- case "ArrowLeft":
275
- r === "horizontal" && (v ? T() : O());
276
- break;
277
- case "ArrowUp":
278
- r === "vertical" && T();
279
- break;
280
- }
281
- const fe = d % h;
282
- b[fe].ref.current?.focus();
283
- });
284
- return /* @__PURE__ */ i(
285
- Ge,
286
- {
287
- scope: o,
288
- disabled: t,
289
- direction: n,
290
- orientation: r,
291
- children: /* @__PURE__ */ i(L.Slot, { scope: o, children: /* @__PURE__ */ i(
292
- y.div,
293
- {
294
- ...c,
295
- "data-orientation": r,
296
- ref: l,
297
- onKeyDown: t ? void 0 : x
298
- }
299
- ) })
300
- }
301
- );
302
- }
303
- ), N = "AccordionItem", [Ke, G] = P(N), te = u.forwardRef(
304
- (e, a) => {
305
- const { __scopeAccordion: o, value: t, ...n } = e, r = E(N, o), c = $e(N, o), s = j(o), l = U(), p = t && c.value.includes(t) || !1, m = r.disabled || e.disabled;
306
- return /* @__PURE__ */ i(
307
- Ke,
308
- {
309
- scope: o,
310
- open: p,
311
- disabled: m,
312
- triggerId: l,
313
- children: /* @__PURE__ */ i(
314
- Oe,
315
- {
316
- "data-orientation": r.orientation,
317
- "data-state": se(p),
318
- ...s,
319
- ...n,
320
- ref: a,
321
- disabled: m,
322
- open: p,
323
- onOpenChange: (v) => {
324
- v ? c.onItemOpen(t) : c.onItemClose(t);
325
- }
326
- }
327
- )
328
- }
329
- );
330
- }
331
- );
332
- te.displayName = N;
333
- var re = "AccordionHeader", ne = u.forwardRef(
334
- (e, a) => {
335
- const { __scopeAccordion: o, ...t } = e, n = E(C, o), r = G(re, o);
336
- return /* @__PURE__ */ i(
337
- y.h3,
338
- {
339
- "data-orientation": n.orientation,
340
- "data-state": se(r.open),
341
- "data-disabled": r.disabled ? "" : void 0,
342
- ...t,
343
- ref: a
344
- }
345
- );
346
- }
347
- );
348
- ne.displayName = re;
349
- var D = "AccordionTrigger", ie = u.forwardRef(
350
- (e, a) => {
351
- const { __scopeAccordion: o, ...t } = e, n = E(C, o), r = G(D, o), c = He(D, o), s = j(o);
352
- return /* @__PURE__ */ i(L.ItemSlot, { scope: o, children: /* @__PURE__ */ i(
353
- Te,
354
- {
355
- "aria-disabled": r.open && !c.collapsible || void 0,
356
- "data-orientation": n.orientation,
357
- id: r.triggerId,
358
- ...s,
359
- ...t,
360
- ref: a
361
- }
362
- ) });
363
- }
364
- );
365
- ie.displayName = D;
366
- var ae = "AccordionContent", ce = u.forwardRef(
367
- (e, a) => {
368
- const { __scopeAccordion: o, ...t } = e, n = E(C, o), r = G(ae, o), c = j(o);
369
- return /* @__PURE__ */ i(
370
- ke,
371
- {
372
- role: "region",
373
- "aria-labelledby": r.triggerId,
374
- "data-orientation": n.orientation,
375
- ...c,
376
- ...t,
377
- ref: a,
378
- style: {
379
- "--radix-accordion-content-height": "var(--radix-collapsible-content-height)",
380
- "--radix-accordion-content-width": "var(--radix-collapsible-content-width)",
381
- ...e.style
382
- }
383
- }
384
- );
385
- }
386
- );
387
- ce.displayName = ae;
388
- function se(e) {
389
- return e ? "open" : "closed";
390
- }
391
- var Fe = X, ze = te, Be = ne, Ue = ie, qe = ce;
392
- const Je = {
393
- default: "shadow-none",
394
- contained: "rounded-md border border-level-four",
395
- separated: "rounded-none space-y-2"
396
- }, Ye = {
397
- default: "w-full py-4",
398
- contained: "not-last:border-b border-level-four p-4",
399
- separated: "border border-level-four rounded-md p-4"
400
- }, le = ge({ variant: "default" }), de = ({
401
- className: e,
402
- ref: a,
403
- variant: o = "default",
404
- ...t
405
- }) => {
406
- const { autoScroll: n = "never", scrollPadding: r = -20, children: c, ...s } = t, l = {
407
- autoScroll: n,
408
- scrollPadding: r
409
- }, p = {
410
- ...s,
411
- ref: a
412
- };
413
- return /* @__PURE__ */ i(le.Provider, { value: { variant: o }, children: /* @__PURE__ */ i(
414
- Fe,
415
- {
416
- ...p,
417
- className: w("accordion-wrapper flex flex-col", Je[o], e),
418
- "data-auto-scroll": n,
419
- "data-scroll-options": JSON.stringify(l),
420
- "data-scroll-padding": r,
421
- "data-slot": "accordion",
422
- "data-testid": "spectral-accordion",
423
- ...t.type === "single" ? { collapsible: !0 } : {},
424
- children: be.map(c, (m) => Ae(m) ? he(m, { variant: o }) : m)
425
- }
426
- ) });
427
- };
428
- de.displayName = "Accordion";
429
- const pe = ({
430
- className: e,
431
- ref: a,
432
- ...o
433
- }) => {
434
- const { variant: t = "default" } = ye(le);
435
- return /* @__PURE__ */ i(ze, { className: w("w-full", Ye[t], e), "data-slot": "accordion-item", "data-testid": "spectral-accordion-item", ref: a, ...o });
436
- };
437
- pe.displayName = "AccordionItem";
438
- const me = ({
439
- ref: e,
440
- className: a,
441
- title: o,
442
- subtitle: t,
443
- ...n
444
- }) => {
445
- const r = xe(null), c = Ce(r), s = Ie(
446
- (l) => {
447
- typeof e == "function" ? e(l) : e && (e.current = l), r.current = l;
448
- },
449
- [e]
450
- );
451
- return /* @__PURE__ */ i(Be, { className: "m-0 flex", children: /* @__PURE__ */ K(
452
- Ue,
453
- {
454
- className: w("text-text-primary flex flex-1 items-center justify-between text-sm font-normal transition-all hover:no-underline", "disabled:cursor-not-allowed [&[data-state=open]>svg]:rotate-180", a),
455
- "data-slot": "accordion-trigger",
456
- "data-testid": "spectral-accordion-trigger",
457
- onClick: c,
458
- ref: s,
459
- ...n,
460
- children: [
461
- /* @__PURE__ */ K("div", { className: "flex w-full flex-col space-y-0.5 text-start", children: [
462
- /* @__PURE__ */ i("div", { className: "text-text-primary text-base font-medium", children: o }),
463
- t && /* @__PURE__ */ i("div", { className: "text-text-secondary text-sm font-normal", children: t })
464
- ] }),
465
- /* @__PURE__ */ i(ve, { className: "shrink-0 transition-transform duration-200" })
466
- ]
467
- }
468
- ) });
469
- };
470
- me.displayName = "AccordionTrigger";
471
- const ue = ({
472
- ref: e,
473
- className: a,
474
- children: o,
475
- ...t
476
- }) => /* @__PURE__ */ i(
477
- qe,
478
- {
479
- className: w("motion-safe:data-[state=closed]:animate-accordion-up motion-safe:data-[state=open]:animate-accordion-down overflow-hidden pt-4 text-sm", a),
480
- "data-slot": "accordion-content",
481
- "data-testid": "spectral-accordion-content",
482
- ref: e,
483
- ...t,
484
- children: /* @__PURE__ */ i("div", { className: "px-1 pt-0 pb-4", "data-slot": "accordion-content-inner", children: o })
485
- }
486
- );
487
- ue.displayName = "AccordionContent";
488
- const At = Object.assign(de, {
489
- Content: ue,
490
- Item: pe,
491
- Trigger: me
492
- });
493
- export {
494
- At as Accordion,
495
- ue as AccordionContent,
496
- pe as AccordionItem,
497
- me as AccordionTrigger
498
- };
1
+ import "./hooks/useAccordionAutoScroll.js";
2
+ import { i as e, n as t, r as n, t as r } from "./Accordion-CDXdSAST.js";
3
+ export { r as Accordion, t as AccordionContent, n as AccordionItem, e as AccordionTrigger };