@spark-ui/components 10.0.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 (296) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/LICENSE.md +21 -0
  3. package/README.md +19 -0
  4. package/dist/DialogTrigger-5SI4dvpK.d.mts +142 -0
  5. package/dist/DialogTrigger-5SI4dvpK.d.ts +142 -0
  6. package/dist/Input-g0LpWuv0.d.mts +17 -0
  7. package/dist/Input-g0LpWuv0.d.ts +17 -0
  8. package/dist/InputGroup-aoaZxCLk.d.mts +28 -0
  9. package/dist/InputGroup-aoaZxCLk.d.ts +28 -0
  10. package/dist/InputTrailingIcon-BBp7sE6D.d.mts +20 -0
  11. package/dist/InputTrailingIcon-ZZx8PoJy.d.ts +20 -0
  12. package/dist/LabelRequiredIndicator-DRnCzHMU.d.mts +19 -0
  13. package/dist/LabelRequiredIndicator-DRnCzHMU.d.ts +19 -0
  14. package/dist/accordion/index.d.mts +85 -0
  15. package/dist/accordion/index.d.ts +85 -0
  16. package/dist/accordion/index.js +461 -0
  17. package/dist/accordion/index.js.map +1 -0
  18. package/dist/accordion/index.mjs +249 -0
  19. package/dist/accordion/index.mjs.map +1 -0
  20. package/dist/alert-dialog/index.d.mts +119 -0
  21. package/dist/alert-dialog/index.d.ts +119 -0
  22. package/dist/alert-dialog/index.js +1451 -0
  23. package/dist/alert-dialog/index.js.map +1 -0
  24. package/dist/alert-dialog/index.mjs +177 -0
  25. package/dist/alert-dialog/index.mjs.map +1 -0
  26. package/dist/badge/index.d.mts +47 -0
  27. package/dist/badge/index.d.ts +47 -0
  28. package/dist/badge/index.js +122 -0
  29. package/dist/badge/index.js.map +1 -0
  30. package/dist/badge/index.mjs +95 -0
  31. package/dist/badge/index.mjs.map +1 -0
  32. package/dist/breadcrumb/index.d.mts +64 -0
  33. package/dist/breadcrumb/index.d.ts +64 -0
  34. package/dist/breadcrumb/index.js +326 -0
  35. package/dist/breadcrumb/index.js.map +1 -0
  36. package/dist/breadcrumb/index.mjs +149 -0
  37. package/dist/breadcrumb/index.mjs.map +1 -0
  38. package/dist/button/index.d.mts +40 -0
  39. package/dist/button/index.d.ts +40 -0
  40. package/dist/button/index.js +877 -0
  41. package/dist/button/index.js.map +1 -0
  42. package/dist/button/index.mjs +10 -0
  43. package/dist/button/index.mjs.map +1 -0
  44. package/dist/carousel/index.d.mts +253 -0
  45. package/dist/carousel/index.d.ts +253 -0
  46. package/dist/carousel/index.js +1678 -0
  47. package/dist/carousel/index.js.map +1 -0
  48. package/dist/carousel/index.mjs +716 -0
  49. package/dist/carousel/index.mjs.map +1 -0
  50. package/dist/checkbox/index.d.mts +120 -0
  51. package/dist/checkbox/index.d.ts +120 -0
  52. package/dist/checkbox/index.js +873 -0
  53. package/dist/checkbox/index.js.map +1 -0
  54. package/dist/checkbox/index.mjs +349 -0
  55. package/dist/checkbox/index.mjs.map +1 -0
  56. package/dist/chip/index.d.mts +97 -0
  57. package/dist/chip/index.d.ts +97 -0
  58. package/dist/chip/index.js +905 -0
  59. package/dist/chip/index.js.map +1 -0
  60. package/dist/chip/index.mjs +793 -0
  61. package/dist/chip/index.mjs.map +1 -0
  62. package/dist/chunk-2KPFQEAA.mjs +52 -0
  63. package/dist/chunk-2KPFQEAA.mjs.map +1 -0
  64. package/dist/chunk-4F5DOL57.mjs +26 -0
  65. package/dist/chunk-4F5DOL57.mjs.map +1 -0
  66. package/dist/chunk-6JOA37TZ.mjs +742 -0
  67. package/dist/chunk-6JOA37TZ.mjs.map +1 -0
  68. package/dist/chunk-7PMPYEHJ.mjs +379 -0
  69. package/dist/chunk-7PMPYEHJ.mjs.map +1 -0
  70. package/dist/chunk-AESXFMCC.mjs +68 -0
  71. package/dist/chunk-AESXFMCC.mjs.map +1 -0
  72. package/dist/chunk-B42LOFIZ.mjs +308 -0
  73. package/dist/chunk-B42LOFIZ.mjs.map +1 -0
  74. package/dist/chunk-FGOZHKBT.mjs +97 -0
  75. package/dist/chunk-FGOZHKBT.mjs.map +1 -0
  76. package/dist/chunk-HLXYG643.mjs +52 -0
  77. package/dist/chunk-HLXYG643.mjs.map +1 -0
  78. package/dist/chunk-JKNBJHD5.mjs +601 -0
  79. package/dist/chunk-JKNBJHD5.mjs.map +1 -0
  80. package/dist/chunk-K7VP7DH3.mjs +66 -0
  81. package/dist/chunk-K7VP7DH3.mjs.map +1 -0
  82. package/dist/chunk-MUNDKRAE.mjs +80 -0
  83. package/dist/chunk-MUNDKRAE.mjs.map +1 -0
  84. package/dist/chunk-NBZKMCHF.mjs +36 -0
  85. package/dist/chunk-NBZKMCHF.mjs.map +1 -0
  86. package/dist/chunk-PZWESKAR.mjs +314 -0
  87. package/dist/chunk-PZWESKAR.mjs.map +1 -0
  88. package/dist/collapsible/index.d.mts +60 -0
  89. package/dist/collapsible/index.d.ts +60 -0
  90. package/dist/collapsible/index.js +140 -0
  91. package/dist/collapsible/index.js.map +1 -0
  92. package/dist/collapsible/index.mjs +8 -0
  93. package/dist/collapsible/index.mjs.map +1 -0
  94. package/dist/combobox/index.d.mts +285 -0
  95. package/dist/combobox/index.d.ts +285 -0
  96. package/dist/combobox/index.js +2920 -0
  97. package/dist/combobox/index.js.map +1 -0
  98. package/dist/combobox/index.mjs +1267 -0
  99. package/dist/combobox/index.mjs.map +1 -0
  100. package/dist/dialog/index.d.mts +33 -0
  101. package/dist/dialog/index.d.ts +33 -0
  102. package/dist/dialog/index.js +1286 -0
  103. package/dist/dialog/index.js.map +1 -0
  104. package/dist/dialog/index.mjs +13 -0
  105. package/dist/dialog/index.mjs.map +1 -0
  106. package/dist/divider/index.d.mts +61 -0
  107. package/dist/divider/index.d.ts +61 -0
  108. package/dist/divider/index.js +223 -0
  109. package/dist/divider/index.js.map +1 -0
  110. package/dist/divider/index.mjs +196 -0
  111. package/dist/divider/index.mjs.map +1 -0
  112. package/dist/drawer/index.d.mts +148 -0
  113. package/dist/drawer/index.d.ts +148 -0
  114. package/dist/drawer/index.js +1266 -0
  115. package/dist/drawer/index.js.map +1 -0
  116. package/dist/drawer/index.mjs +299 -0
  117. package/dist/drawer/index.mjs.map +1 -0
  118. package/dist/dropdown/index.d.mts +233 -0
  119. package/dist/dropdown/index.d.ts +233 -0
  120. package/dist/dropdown/index.js +2402 -0
  121. package/dist/dropdown/index.js.map +1 -0
  122. package/dist/dropdown/index.mjs +741 -0
  123. package/dist/dropdown/index.mjs.map +1 -0
  124. package/dist/form-field/index.d.mts +176 -0
  125. package/dist/form-field/index.d.ts +176 -0
  126. package/dist/form-field/index.js +540 -0
  127. package/dist/form-field/index.js.map +1 -0
  128. package/dist/form-field/index.mjs +13 -0
  129. package/dist/form-field/index.mjs.map +1 -0
  130. package/dist/icon/index.d.mts +28 -0
  131. package/dist/icon/index.d.ts +28 -0
  132. package/dist/icon/index.js +127 -0
  133. package/dist/icon/index.js.map +1 -0
  134. package/dist/icon/index.mjs +9 -0
  135. package/dist/icon/index.mjs.map +1 -0
  136. package/dist/icon-button/index.d.mts +16 -0
  137. package/dist/icon-button/index.d.ts +16 -0
  138. package/dist/icon-button/index.js +921 -0
  139. package/dist/icon-button/index.js.map +1 -0
  140. package/dist/icon-button/index.mjs +11 -0
  141. package/dist/icon-button/index.mjs.map +1 -0
  142. package/dist/input/index.d.mts +78 -0
  143. package/dist/input/index.d.ts +78 -0
  144. package/dist/input/index.js +1119 -0
  145. package/dist/input/index.js.map +1 -0
  146. package/dist/input/index.mjs +16 -0
  147. package/dist/input/index.mjs.map +1 -0
  148. package/dist/kbd/index.d.mts +9 -0
  149. package/dist/kbd/index.d.ts +9 -0
  150. package/dist/kbd/index.js +46 -0
  151. package/dist/kbd/index.js.map +1 -0
  152. package/dist/kbd/index.mjs +19 -0
  153. package/dist/kbd/index.mjs.map +1 -0
  154. package/dist/label/index.d.mts +11 -0
  155. package/dist/label/index.d.ts +11 -0
  156. package/dist/label/index.js +78 -0
  157. package/dist/label/index.js.map +1 -0
  158. package/dist/label/index.mjs +7 -0
  159. package/dist/label/index.mjs.map +1 -0
  160. package/dist/link-box/index.d.mts +34 -0
  161. package/dist/link-box/index.d.ts +34 -0
  162. package/dist/link-box/index.js +92 -0
  163. package/dist/link-box/index.js.map +1 -0
  164. package/dist/link-box/index.mjs +58 -0
  165. package/dist/link-box/index.mjs.map +1 -0
  166. package/dist/pagination/index.d.mts +143 -0
  167. package/dist/pagination/index.d.ts +143 -0
  168. package/dist/pagination/index.js +1303 -0
  169. package/dist/pagination/index.js.map +1 -0
  170. package/dist/pagination/index.mjs +326 -0
  171. package/dist/pagination/index.mjs.map +1 -0
  172. package/dist/popover/index.d.mts +93 -0
  173. package/dist/popover/index.d.ts +93 -0
  174. package/dist/popover/index.js +1280 -0
  175. package/dist/popover/index.js.map +1 -0
  176. package/dist/popover/index.mjs +13 -0
  177. package/dist/popover/index.mjs.map +1 -0
  178. package/dist/portal/index.d.mts +13 -0
  179. package/dist/portal/index.d.ts +13 -0
  180. package/dist/portal/index.js +37 -0
  181. package/dist/portal/index.js.map +1 -0
  182. package/dist/portal/index.mjs +10 -0
  183. package/dist/portal/index.mjs.map +1 -0
  184. package/dist/progress/index.d.mts +48 -0
  185. package/dist/progress/index.d.ts +48 -0
  186. package/dist/progress/index.js +201 -0
  187. package/dist/progress/index.js.map +1 -0
  188. package/dist/progress/index.mjs +174 -0
  189. package/dist/progress/index.mjs.map +1 -0
  190. package/dist/progress-tracker/index.d.mts +81 -0
  191. package/dist/progress-tracker/index.d.ts +81 -0
  192. package/dist/progress-tracker/index.js +834 -0
  193. package/dist/progress-tracker/index.js.map +1 -0
  194. package/dist/progress-tracker/index.mjs +716 -0
  195. package/dist/progress-tracker/index.mjs.map +1 -0
  196. package/dist/radio-group/index.d.mts +100 -0
  197. package/dist/radio-group/index.d.ts +100 -0
  198. package/dist/radio-group/index.js +824 -0
  199. package/dist/radio-group/index.js.map +1 -0
  200. package/dist/radio-group/index.mjs +297 -0
  201. package/dist/radio-group/index.mjs.map +1 -0
  202. package/dist/rating/index.d.mts +78 -0
  203. package/dist/rating/index.d.ts +78 -0
  204. package/dist/rating/index.js +362 -0
  205. package/dist/rating/index.js.map +1 -0
  206. package/dist/rating/index.mjs +247 -0
  207. package/dist/rating/index.mjs.map +1 -0
  208. package/dist/scrolling-list/index.d.mts +105 -0
  209. package/dist/scrolling-list/index.d.ts +105 -0
  210. package/dist/scrolling-list/index.js +1367 -0
  211. package/dist/scrolling-list/index.js.map +1 -0
  212. package/dist/scrolling-list/index.mjs +407 -0
  213. package/dist/scrolling-list/index.mjs.map +1 -0
  214. package/dist/select/index.d.mts +167 -0
  215. package/dist/select/index.d.ts +167 -0
  216. package/dist/select/index.js +991 -0
  217. package/dist/select/index.js.map +1 -0
  218. package/dist/select/index.mjs +470 -0
  219. package/dist/select/index.mjs.map +1 -0
  220. package/dist/skeleton/index.d.mts +67 -0
  221. package/dist/skeleton/index.d.ts +67 -0
  222. package/dist/skeleton/index.js +206 -0
  223. package/dist/skeleton/index.js.map +1 -0
  224. package/dist/skeleton/index.mjs +147 -0
  225. package/dist/skeleton/index.mjs.map +1 -0
  226. package/dist/slider/index.d.mts +97 -0
  227. package/dist/slider/index.d.ts +97 -0
  228. package/dist/slider/index.js +209 -0
  229. package/dist/slider/index.js.map +1 -0
  230. package/dist/slider/index.mjs +182 -0
  231. package/dist/slider/index.mjs.map +1 -0
  232. package/dist/slot/index.d.mts +17 -0
  233. package/dist/slot/index.d.ts +17 -0
  234. package/dist/slot/index.js +51 -0
  235. package/dist/slot/index.js.map +1 -0
  236. package/dist/slot/index.mjs +11 -0
  237. package/dist/slot/index.mjs.map +1 -0
  238. package/dist/snackbar/index.d.mts +158 -0
  239. package/dist/snackbar/index.d.ts +158 -0
  240. package/dist/snackbar/index.js +1693 -0
  241. package/dist/snackbar/index.js.map +1 -0
  242. package/dist/snackbar/index.mjs +733 -0
  243. package/dist/snackbar/index.mjs.map +1 -0
  244. package/dist/spinner/index.d.mts +21 -0
  245. package/dist/spinner/index.d.ts +21 -0
  246. package/dist/spinner/index.js +139 -0
  247. package/dist/spinner/index.js.map +1 -0
  248. package/dist/spinner/index.mjs +9 -0
  249. package/dist/spinner/index.mjs.map +1 -0
  250. package/dist/stepper/index.d.mts +82 -0
  251. package/dist/stepper/index.d.ts +82 -0
  252. package/dist/stepper/index.js +2178 -0
  253. package/dist/stepper/index.js.map +1 -0
  254. package/dist/stepper/index.mjs +229 -0
  255. package/dist/stepper/index.mjs.map +1 -0
  256. package/dist/switch/index.d.mts +64 -0
  257. package/dist/switch/index.d.ts +64 -0
  258. package/dist/switch/index.js +768 -0
  259. package/dist/switch/index.js.map +1 -0
  260. package/dist/switch/index.mjs +245 -0
  261. package/dist/switch/index.mjs.map +1 -0
  262. package/dist/tabs/index.d.mts +103 -0
  263. package/dist/tabs/index.d.ts +103 -0
  264. package/dist/tabs/index.js +1315 -0
  265. package/dist/tabs/index.js.map +1 -0
  266. package/dist/tabs/index.mjs +391 -0
  267. package/dist/tabs/index.mjs.map +1 -0
  268. package/dist/tag/index.d.mts +27 -0
  269. package/dist/tag/index.d.ts +27 -0
  270. package/dist/tag/index.js +269 -0
  271. package/dist/tag/index.js.map +1 -0
  272. package/dist/tag/index.mjs +237 -0
  273. package/dist/tag/index.mjs.map +1 -0
  274. package/dist/text-link/index.d.mts +20 -0
  275. package/dist/text-link/index.d.ts +20 -0
  276. package/dist/text-link/index.js +99 -0
  277. package/dist/text-link/index.js.map +1 -0
  278. package/dist/text-link/index.mjs +8 -0
  279. package/dist/text-link/index.mjs.map +1 -0
  280. package/dist/textarea/index.d.mts +47 -0
  281. package/dist/textarea/index.d.ts +47 -0
  282. package/dist/textarea/index.js +1180 -0
  283. package/dist/textarea/index.js.map +1 -0
  284. package/dist/textarea/index.mjs +77 -0
  285. package/dist/textarea/index.mjs.map +1 -0
  286. package/dist/visually-hidden/index.d.mts +16 -0
  287. package/dist/visually-hidden/index.d.ts +16 -0
  288. package/dist/visually-hidden/index.js +67 -0
  289. package/dist/visually-hidden/index.js.map +1 -0
  290. package/dist/visually-hidden/index.mjs +8 -0
  291. package/dist/visually-hidden/index.mjs.map +1 -0
  292. package/global.d.ts +12 -0
  293. package/package.json +75 -0
  294. package/tsconfig.build.json +9 -0
  295. package/tsconfig.json +9 -0
  296. package/tsup.config.ts +11 -0
@@ -0,0 +1,85 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import * as accordion from '@zag-js/accordion';
3
+ import { ComponentPropsWithoutRef, Ref, ComponentProps } from 'react';
4
+
5
+ type ExtentedZagInterface = Omit<accordion.Props, 'id' | 'ids' | 'orientation' | 'getRootNode' | 'onValueChange'> & Omit<ComponentPropsWithoutRef<'div'>, 'defaultChecked'>;
6
+ interface AccordionProps extends ExtentedZagInterface {
7
+ /**
8
+ * Change the default rendered element for the one passed as a child, merging their props and behavior.
9
+ */
10
+ asChild?: boolean;
11
+ /**
12
+ * Whether an accordion item can be closed after it has been expanded.
13
+ */
14
+ collapsible?: boolean;
15
+ defaultValue?: accordion.Props['value'];
16
+ /**
17
+ * Whether the accordion items are disabled
18
+ */
19
+ disabled?: boolean;
20
+ /**
21
+ * Whether multiple accordion items can be expanded at the same time.
22
+ */
23
+ multiple?: boolean;
24
+ /**
25
+ * The `value` of the accordion items that are currently being expanded.
26
+ */
27
+ value?: string[];
28
+ /**
29
+ * The callback fired when the state of expanded/collapsed accordion items changes.
30
+ */
31
+ onValueChange?: (value: string[]) => void;
32
+ design?: 'filled' | 'outlined';
33
+ ref?: Ref<HTMLDivElement>;
34
+ }
35
+ declare const Accordion$1: {
36
+ ({ asChild, children, collapsible, className, defaultValue, design, disabled, multiple, value, onValueChange, ref, ...props }: AccordionProps): react_jsx_runtime.JSX.Element;
37
+ displayName: string;
38
+ };
39
+
40
+ interface AccordionItemProps extends ComponentPropsWithoutRef<'div'> {
41
+ value: string;
42
+ asChild?: boolean;
43
+ disabled?: boolean;
44
+ ref?: Ref<HTMLDivElement>;
45
+ }
46
+ declare const Item: {
47
+ ({ asChild, className, children, disabled, value, ref, ...props }: AccordionItemProps): react_jsx_runtime.JSX.Element;
48
+ displayName: string;
49
+ };
50
+
51
+ interface AccordionItemContentProps extends ComponentPropsWithoutRef<'div'> {
52
+ asChild?: boolean;
53
+ ref?: Ref<HTMLDivElement>;
54
+ }
55
+ declare const ItemContent: {
56
+ ({ asChild, className, children, ref, ...props }: AccordionItemContentProps): react_jsx_runtime.JSX.Element;
57
+ displayName: string;
58
+ };
59
+
60
+ interface AccordionItemHeaderProps extends ComponentProps<'h3'> {
61
+ asChild?: boolean;
62
+ ref?: Ref<HTMLHeadingElement>;
63
+ }
64
+ declare const ItemHeader: {
65
+ ({ asChild, children, className, ref, }: AccordionItemHeaderProps): react_jsx_runtime.JSX.Element;
66
+ displayName: string;
67
+ };
68
+
69
+ interface AccordionItemTriggerProps extends ComponentPropsWithoutRef<'button'> {
70
+ asChild?: boolean;
71
+ ref?: Ref<HTMLButtonElement>;
72
+ }
73
+ declare const ItemTrigger: {
74
+ ({ asChild, children, className, ref, ...props }: AccordionItemTriggerProps): react_jsx_runtime.JSX.Element;
75
+ displayName: string;
76
+ };
77
+
78
+ declare const Accordion: typeof Accordion$1 & {
79
+ Item: typeof Item;
80
+ ItemHeader: typeof ItemHeader;
81
+ ItemTrigger: typeof ItemTrigger;
82
+ ItemContent: typeof ItemContent;
83
+ };
84
+
85
+ export { Accordion, type AccordionItemContentProps, type AccordionItemHeaderProps, type AccordionItemTriggerProps, type AccordionProps };
@@ -0,0 +1,461 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // src/accordion/index.ts
31
+ var accordion_exports = {};
32
+ __export(accordion_exports, {
33
+ Accordion: () => Accordion2
34
+ });
35
+ module.exports = __toCommonJS(accordion_exports);
36
+
37
+ // src/accordion/Accordion.tsx
38
+ var accordion = __toESM(require("@zag-js/accordion"));
39
+ var import_react2 = require("@zag-js/react");
40
+ var import_class_variance_authority = require("class-variance-authority");
41
+ var import_react3 = require("react");
42
+
43
+ // src/slot/Slot.tsx
44
+ var import_radix_ui = require("radix-ui");
45
+ var import_react = require("react");
46
+ var import_jsx_runtime = require("react/jsx-runtime");
47
+ var Slottable = import_radix_ui.Slot.Slottable;
48
+ var Slot = ({ ref, ...props }) => {
49
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_radix_ui.Slot.Root, { ref, ...props });
50
+ };
51
+
52
+ // src/accordion/Accordion.tsx
53
+ var import_jsx_runtime2 = require("react/jsx-runtime");
54
+ var AccordionContext = (0, import_react3.createContext)(null);
55
+ var Accordion = ({
56
+ asChild = false,
57
+ children,
58
+ collapsible: collapsible2 = true,
59
+ className,
60
+ defaultValue,
61
+ design = "outlined",
62
+ disabled = false,
63
+ multiple = false,
64
+ value,
65
+ onValueChange,
66
+ ref,
67
+ ...props
68
+ }) => {
69
+ const [machineProps, localProps] = accordion.splitProps({
70
+ children,
71
+ multiple,
72
+ collapsible: collapsible2,
73
+ value,
74
+ disabled,
75
+ className: (0, import_class_variance_authority.cx)("bg-surface rounded-lg h-fit", className),
76
+ ...props
77
+ });
78
+ const service = (0, import_react2.useMachine)(accordion.machine, {
79
+ ...machineProps,
80
+ defaultValue,
81
+ value,
82
+ id: (0, import_react3.useId)(),
83
+ onValueChange(details) {
84
+ onValueChange?.(details.value);
85
+ }
86
+ });
87
+ const Component = asChild ? Slot : "div";
88
+ const api = accordion.connect(service, import_react2.normalizeProps);
89
+ const mergedProps = (0, import_react2.mergeProps)(api.getRootProps(), localProps);
90
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(AccordionContext.Provider, { value: { ...api, design }, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Component, { "data-spark-component": "accordion", ref, ...mergedProps, children }) });
91
+ };
92
+ Accordion.displayName = "Accordion";
93
+ var useAccordionContext = () => {
94
+ const context = (0, import_react3.useContext)(AccordionContext);
95
+ if (!context) {
96
+ throw Error("useAccordionContext must be used within a Accordion provider");
97
+ }
98
+ return context;
99
+ };
100
+
101
+ // src/accordion/AccordionItem.tsx
102
+ var import_react9 = require("@zag-js/react");
103
+ var import_class_variance_authority3 = require("class-variance-authority");
104
+
105
+ // src/collapsible/Collapsible.tsx
106
+ var collapsible = __toESM(require("@zag-js/collapsible"));
107
+ var import_react4 = require("@zag-js/react");
108
+ var import_react5 = require("react");
109
+ var import_jsx_runtime3 = require("react/jsx-runtime");
110
+ var CollapsibleContext = (0, import_react5.createContext)(null);
111
+ var Collapsible = ({
112
+ asChild = false,
113
+ children,
114
+ defaultOpen = false,
115
+ disabled = false,
116
+ onOpenChange,
117
+ open,
118
+ ids,
119
+ ref,
120
+ ...props
121
+ }) => {
122
+ const service = (0, import_react4.useMachine)(collapsible.machine, {
123
+ open,
124
+ defaultOpen,
125
+ disabled,
126
+ id: (0, import_react5.useId)(),
127
+ ids,
128
+ onOpenChange(details) {
129
+ onOpenChange?.(details.open);
130
+ }
131
+ });
132
+ const api = collapsible.connect(service, import_react4.normalizeProps);
133
+ const Component = asChild ? Slot : "div";
134
+ const mergedProps = (0, import_react4.mergeProps)(api.getRootProps(), props);
135
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(CollapsibleContext.Provider, { value: api, children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(Component, { "data-spark-component": "collapsible", ref, ...mergedProps, children }) });
136
+ };
137
+ Collapsible.displayName = "Collapsible";
138
+ var useCollapsibleContext = () => {
139
+ const context = (0, import_react5.useContext)(CollapsibleContext);
140
+ if (!context) {
141
+ throw Error("useCollapsibleContext must be used within a Collapsible provider");
142
+ }
143
+ return context;
144
+ };
145
+
146
+ // src/collapsible/CollapsibleContent.tsx
147
+ var import_react6 = require("@zag-js/react");
148
+ var import_class_variance_authority2 = require("class-variance-authority");
149
+ var import_jsx_runtime4 = require("react/jsx-runtime");
150
+ var Content = ({
151
+ asChild = false,
152
+ className,
153
+ children,
154
+ ref,
155
+ ...props
156
+ }) => {
157
+ const { getContentProps } = useCollapsibleContext();
158
+ const Component = asChild ? Slot : "div";
159
+ const contentProps = getContentProps();
160
+ const mergedProps = (0, import_react6.mergeProps)(contentProps, {
161
+ className: (0, import_class_variance_authority2.cx)(
162
+ "overflow-hidden",
163
+ "motion-reduce:animate-none!",
164
+ "[&[hidden]]:hidden",
165
+ "data-[state=open]:animate-standalone-collapse-in data-[state=closed]:animate-standalone-collapse-out",
166
+ className
167
+ ),
168
+ ...props
169
+ });
170
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Component, { ref, "data-spark-component": "collapsible-content", ...mergedProps, children });
171
+ };
172
+ Content.displayName = "Collapsible.Content";
173
+
174
+ // src/collapsible/CollapsibleTrigger.tsx
175
+ var import_react7 = require("@zag-js/react");
176
+ var import_jsx_runtime5 = require("react/jsx-runtime");
177
+ var Trigger = ({ asChild = false, children, ref, ...props }) => {
178
+ const collapsibleContext = useCollapsibleContext();
179
+ const Component = asChild ? Slot : "button";
180
+ const mergedProps = (0, import_react7.mergeProps)(collapsibleContext.getTriggerProps(), props);
181
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Component, { ref, "data-spark-component": "collapsible-trigger", ...mergedProps, children });
182
+ };
183
+ Trigger.displayName = "Collapsible.Trigger";
184
+
185
+ // src/collapsible/index.ts
186
+ var Collapsible2 = Object.assign(Collapsible, {
187
+ Trigger,
188
+ Content
189
+ });
190
+ Collapsible2.displayName = "Collapsible";
191
+ Trigger.displayName = "Collapsible.Trigger";
192
+ Content.displayName = "Collapsible.Content";
193
+
194
+ // src/accordion/AccordionItemContext.tsx
195
+ var import_react8 = require("react");
196
+ var import_jsx_runtime6 = require("react/jsx-runtime");
197
+ var AccordionItemContext = (0, import_react8.createContext)(null);
198
+ var AccordionItemProvider = ({
199
+ value: valueProp,
200
+ disabled: disabledProp = false,
201
+ children
202
+ }) => {
203
+ const [value, setValue] = (0, import_react8.useState)(valueProp);
204
+ const [disabled, setDisabled] = (0, import_react8.useState)(disabledProp);
205
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(AccordionItemContext.Provider, { value: { value, setValue, disabled, setDisabled }, children });
206
+ };
207
+ var useAccordionItemContext = () => {
208
+ const context = (0, import_react8.useContext)(AccordionItemContext);
209
+ if (!context) {
210
+ throw Error("useAccordionItemContext must be used within a AccordionItem provider");
211
+ }
212
+ return context;
213
+ };
214
+
215
+ // src/accordion/AccordionItem.tsx
216
+ var import_jsx_runtime7 = require("react/jsx-runtime");
217
+ var Item = ({
218
+ asChild = false,
219
+ className,
220
+ children,
221
+ disabled = false,
222
+ value,
223
+ ref,
224
+ ...props
225
+ }) => {
226
+ const accordion2 = useAccordionContext();
227
+ const localProps = {
228
+ className: (0, import_class_variance_authority3.cx)(
229
+ "relative first:rounded-t-lg last:rounded-b-lg",
230
+ "not-last:border-b-0",
231
+ { "border-sm border-outline": accordion2.design === "outlined" },
232
+ className
233
+ ),
234
+ asChild,
235
+ ...props
236
+ };
237
+ const itemProps = accordion2.getItemProps({ value, ...disabled && { disabled } });
238
+ const mergedProps = (0, import_react9.mergeProps)(itemProps, localProps);
239
+ const item = accordion2.getItemState({ value });
240
+ const itemContentProps = accordion2.getItemContentProps({ value });
241
+ return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(AccordionItemProvider, { value, disabled, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
242
+ Collapsible2,
243
+ {
244
+ ref,
245
+ open: item.expanded,
246
+ "data-spark-component": "accordion-item",
247
+ ids: { content: itemContentProps.id },
248
+ ...mergedProps,
249
+ children
250
+ }
251
+ ) });
252
+ };
253
+ Item.displayName = "Accordion.Item";
254
+
255
+ // src/accordion/AccordionItemContent.tsx
256
+ var import_internal_utils = require("@spark-ui/internal-utils");
257
+ var import_react10 = require("@zag-js/react");
258
+ var import_class_variance_authority4 = require("class-variance-authority");
259
+ var import_jsx_runtime8 = require("react/jsx-runtime");
260
+ var splitVisibilityProps = (0, import_internal_utils.createSplitProps)();
261
+ var ItemContent = ({
262
+ asChild = false,
263
+ className,
264
+ children,
265
+ ref,
266
+ ...props
267
+ }) => {
268
+ const accordion2 = useAccordionContext();
269
+ const accordionItem = useAccordionItemContext();
270
+ const localProps = {
271
+ className: (0, import_class_variance_authority4.cx)("[&>:first-child]:p-lg", "text-body-1 text-on-surface", className),
272
+ asChild,
273
+ ...props
274
+ };
275
+ const contentProps = accordion2.getItemContentProps({
276
+ value: accordionItem.value,
277
+ ...accordionItem.disabled && { disabled: accordionItem.disabled }
278
+ });
279
+ const [, itemContentProps] = splitVisibilityProps(contentProps, ["hidden", "data-state"]);
280
+ const mergedProps = (0, import_react10.mergeProps)(itemContentProps, localProps);
281
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Collapsible2.Content, { ref, "data-spark-component": "accordion-item-content", ...mergedProps, children });
282
+ };
283
+ ItemContent.displayName = "Accordion.ItemContent";
284
+
285
+ // src/accordion/AccordionItemHeader.tsx
286
+ var import_class_variance_authority5 = require("class-variance-authority");
287
+ var import_jsx_runtime9 = require("react/jsx-runtime");
288
+ var ItemHeader = ({
289
+ asChild = false,
290
+ children,
291
+ className,
292
+ ref
293
+ }) => {
294
+ const Component = asChild ? Slot : "h3";
295
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
296
+ Component,
297
+ {
298
+ ref,
299
+ "data-spark-component": "accordion-item-header",
300
+ className: (0, import_class_variance_authority5.cx)("rounded-[inherit]", className),
301
+ children
302
+ }
303
+ );
304
+ };
305
+ ItemHeader.displayName = "Accordion.ItemHeader";
306
+
307
+ // src/accordion/AccordionItemTrigger.tsx
308
+ var import_ArrowHorizontalDown = require("@spark-ui/icons/ArrowHorizontalDown");
309
+ var import_react12 = require("@zag-js/react");
310
+ var import_class_variance_authority7 = require("class-variance-authority");
311
+
312
+ // src/icon/Icon.tsx
313
+ var import_react11 = require("react");
314
+
315
+ // src/visually-hidden/VisuallyHidden.tsx
316
+ var import_jsx_runtime10 = require("react/jsx-runtime");
317
+ var VisuallyHidden = ({ asChild = false, ref, ...props }) => {
318
+ const Component = asChild ? Slot : "span";
319
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
320
+ Component,
321
+ {
322
+ ...props,
323
+ ref,
324
+ style: {
325
+ // See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss
326
+ position: "absolute",
327
+ border: 0,
328
+ width: 1,
329
+ height: 1,
330
+ padding: 0,
331
+ margin: -1,
332
+ overflow: "hidden",
333
+ clip: "rect(0, 0, 0, 0)",
334
+ whiteSpace: "nowrap",
335
+ wordWrap: "normal",
336
+ ...props.style
337
+ }
338
+ }
339
+ );
340
+ };
341
+ VisuallyHidden.displayName = "VisuallyHidden";
342
+
343
+ // src/icon/Icon.styles.tsx
344
+ var import_internal_utils2 = require("@spark-ui/internal-utils");
345
+ var import_class_variance_authority6 = require("class-variance-authority");
346
+ var iconStyles = (0, import_class_variance_authority6.cva)(["fill-current shrink-0"], {
347
+ variants: {
348
+ /**
349
+ * Color scheme of the icon.
350
+ */
351
+ intent: (0, import_internal_utils2.makeVariants)({
352
+ current: ["text-current"],
353
+ main: ["text-main"],
354
+ support: ["text-support"],
355
+ accent: ["text-accent"],
356
+ basic: ["text-basic"],
357
+ success: ["text-success"],
358
+ alert: ["text-alert"],
359
+ error: ["text-error"],
360
+ info: ["text-info"],
361
+ neutral: ["text-neutral"]
362
+ }),
363
+ /**
364
+ * Sets the size of the icon.
365
+ */
366
+ size: (0, import_internal_utils2.makeVariants)({
367
+ current: ["u-current-font-size"],
368
+ sm: ["w-sz-16", "h-sz-16"],
369
+ md: ["w-sz-24", "h-sz-24"],
370
+ lg: ["w-sz-32", "h-sz-32"],
371
+ xl: ["w-sz-40", "h-sz-40"]
372
+ })
373
+ }
374
+ });
375
+
376
+ // src/icon/Icon.tsx
377
+ var import_jsx_runtime11 = require("react/jsx-runtime");
378
+ var Icon = ({
379
+ label,
380
+ className,
381
+ size = "current",
382
+ intent = "current",
383
+ children,
384
+ ...others
385
+ }) => {
386
+ const child = import_react11.Children.only(children);
387
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(import_jsx_runtime11.Fragment, { children: [
388
+ (0, import_react11.cloneElement)(child, {
389
+ className: iconStyles({ className, size, intent }),
390
+ "data-spark-component": "icon",
391
+ "aria-hidden": "true",
392
+ focusable: "false",
393
+ ...others
394
+ }),
395
+ label && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(VisuallyHidden, { children: label })
396
+ ] });
397
+ };
398
+ Icon.displayName = "Icon";
399
+
400
+ // src/accordion/AccordionItemTrigger.tsx
401
+ var import_jsx_runtime12 = require("react/jsx-runtime");
402
+ var ItemTrigger = ({
403
+ asChild = false,
404
+ children,
405
+ className,
406
+ ref,
407
+ ...props
408
+ }) => {
409
+ const { getItemTriggerProps } = useAccordionContext();
410
+ const { value, disabled } = useAccordionItemContext();
411
+ const Component = asChild ? Slot : "button";
412
+ const localProps = {
413
+ ...props,
414
+ className: (0, import_class_variance_authority7.cx)(
415
+ "relative flex gap-lg justify-between items-center min-h-sz-48",
416
+ "w-full px-lg py-md text-left text-headline-2 text-on-surface rounded-[inherit] data-[state=open]:rounded-b-0",
417
+ "hover:enabled:bg-surface-hovered focus:bg-surface-hovered",
418
+ "focus-visible:u-outline focus-visible:outline-hidden focus-visible:z-raised",
419
+ "disabled:opacity-dim-3 cursor-pointer disabled:cursor-not-allowed",
420
+ className
421
+ )
422
+ };
423
+ const mergedProps = (0, import_react12.mergeProps)(
424
+ getItemTriggerProps({ value, ...disabled && { disabled } }),
425
+ localProps
426
+ );
427
+ const isOpen = !!mergedProps["aria-expanded"];
428
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(Component, { ref, "data-spark-component": "accordion-item-trigger", ...mergedProps, children: [
429
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "gap-lg flex grow items-center", children }),
430
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
431
+ Icon,
432
+ {
433
+ intent: "neutral",
434
+ className: (0, import_class_variance_authority7.cx)("shrink-0 rotate-0 duration-100 ease-in motion-reduce:transition-none", {
435
+ "rotate-180": isOpen
436
+ }),
437
+ size: "sm",
438
+ children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_ArrowHorizontalDown.ArrowHorizontalDown, {})
439
+ }
440
+ )
441
+ ] });
442
+ };
443
+ ItemTrigger.displayName = "Accordion.ItemTrigger";
444
+
445
+ // src/accordion/index.ts
446
+ var Accordion2 = Object.assign(Accordion, {
447
+ Item,
448
+ ItemHeader,
449
+ ItemTrigger,
450
+ ItemContent
451
+ });
452
+ Accordion2.displayName = "Accordion";
453
+ Item.displayName = "Item";
454
+ ItemHeader.displayName = "ItemHeader";
455
+ ItemTrigger.displayName = "Accordion.Trigger";
456
+ ItemContent.displayName = "Accordion.Content";
457
+ // Annotate the CommonJS export names for ESM import in node:
458
+ 0 && (module.exports = {
459
+ Accordion
460
+ });
461
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/accordion/index.ts","../../src/accordion/Accordion.tsx","../../src/slot/Slot.tsx","../../src/accordion/AccordionItem.tsx","../../src/collapsible/Collapsible.tsx","../../src/collapsible/CollapsibleContent.tsx","../../src/collapsible/CollapsibleTrigger.tsx","../../src/collapsible/index.ts","../../src/accordion/AccordionItemContext.tsx","../../src/accordion/AccordionItemContent.tsx","../../src/accordion/AccordionItemHeader.tsx","../../src/accordion/AccordionItemTrigger.tsx","../../src/icon/Icon.tsx","../../src/visually-hidden/VisuallyHidden.tsx","../../src/icon/Icon.styles.tsx"],"sourcesContent":["import { Accordion as Root } from './Accordion'\nimport { Item } from './AccordionItem'\nimport { ItemContent } from './AccordionItemContent'\nimport { ItemHeader } from './AccordionItemHeader'\nimport { ItemTrigger } from './AccordionItemTrigger'\n\nexport const Accordion: typeof Root & {\n Item: typeof Item\n ItemHeader: typeof ItemHeader\n ItemTrigger: typeof ItemTrigger\n ItemContent: typeof ItemContent\n} = Object.assign(Root, {\n Item,\n ItemHeader,\n ItemTrigger,\n ItemContent,\n})\n\nAccordion.displayName = 'Accordion'\nItem.displayName = 'Item'\nItemHeader.displayName = 'ItemHeader'\nItemTrigger.displayName = 'Accordion.Trigger'\nItemContent.displayName = 'Accordion.Content'\n\nexport { type AccordionProps } from './Accordion'\nexport { type AccordionItemHeaderProps } from './AccordionItemHeader'\nexport { type AccordionItemContentProps } from './AccordionItemContent'\nexport { type AccordionItemTriggerProps } from './AccordionItemTrigger'\n","import * as accordion from '@zag-js/accordion'\nimport { mergeProps, normalizeProps, type PropTypes, useMachine } from '@zag-js/react'\nimport { cx } from 'class-variance-authority'\nimport { type ComponentPropsWithoutRef, createContext, Ref, useContext, useId } from 'react'\n\nimport { Slot } from '../slot'\n\ntype ExtentedZagInterface = Omit<\n accordion.Props,\n 'id' | 'ids' | 'orientation' | 'getRootNode' | 'onValueChange'\n> &\n Omit<ComponentPropsWithoutRef<'div'>, 'defaultChecked'>\n\nexport interface AccordionProps extends ExtentedZagInterface {\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n */\n asChild?: boolean\n /**\n * Whether an accordion item can be closed after it has been expanded.\n */\n collapsible?: boolean\n defaultValue?: accordion.Props['value']\n /**\n * Whether the accordion items are disabled\n */\n disabled?: boolean\n /**\n * Whether multiple accordion items can be expanded at the same time.\n */\n multiple?: boolean\n /**\n * The `value` of the accordion items that are currently being expanded.\n */\n value?: string[]\n /**\n * The callback fired when the state of expanded/collapsed accordion items changes.\n */\n onValueChange?: (value: string[]) => void\n design?: 'filled' | 'outlined'\n ref?: Ref<HTMLDivElement>\n}\n\nconst AccordionContext = createContext<\n | (accordion.Api<PropTypes> & {\n design: 'filled' | 'outlined'\n })\n | null\n>(null)\n\nexport const Accordion = ({\n asChild = false,\n children,\n collapsible = true,\n className,\n defaultValue,\n design = 'outlined',\n disabled = false,\n multiple = false,\n value,\n onValueChange,\n ref,\n ...props\n}: AccordionProps) => {\n const [machineProps, localProps] = accordion.splitProps({\n children,\n multiple,\n collapsible,\n value,\n disabled,\n className: cx('bg-surface rounded-lg h-fit', className),\n ...props,\n })\n\n const service = useMachine(accordion.machine, {\n ...machineProps,\n defaultValue,\n value,\n id: useId(),\n onValueChange(details) {\n onValueChange?.(details.value)\n },\n })\n\n const Component = asChild ? Slot : 'div'\n const api = accordion.connect(service, normalizeProps)\n\n const mergedProps = mergeProps(api.getRootProps(), localProps)\n\n return (\n <AccordionContext.Provider value={{ ...api, design }}>\n <Component data-spark-component=\"accordion\" ref={ref} {...mergedProps}>\n {children}\n </Component>\n </AccordionContext.Provider>\n )\n}\n\nAccordion.displayName = 'Accordion'\n\nexport const useAccordionContext = () => {\n const context = useContext(AccordionContext)\n\n if (!context) {\n throw Error('useAccordionContext must be used within a Accordion provider')\n }\n\n return context\n}\n","import { Slot as RadixSlot } from 'radix-ui'\nimport {\n cloneElement,\n HTMLAttributes,\n isValidElement,\n PropsWithChildren,\n ReactNode,\n Ref,\n} from 'react'\n\nexport const Slottable = RadixSlot.Slottable\n\nexport type SlotProps = PropsWithChildren<HTMLAttributes<HTMLElement>> & {\n ref?: Ref<HTMLElement>\n}\n\nexport const Slot = ({ ref, ...props }: SlotProps) => {\n return <RadixSlot.Root ref={ref} {...props} />\n}\n\n/**\n * When using Radix `Slot` component, it will consider its first child to merge its props with.\n * In some cases, you might need to wrap the top child with additional markup without breaking this behaviour.\n */\nexport const wrapPolymorphicSlot = (\n asChild: boolean | undefined,\n children: ReactNode,\n callback: (children: ReactNode) => ReactNode\n) => {\n if (!asChild) return callback(children) // If polymorphic behaviour is not used, we keep the original children\n\n return isValidElement(children)\n ? cloneElement(\n children,\n undefined,\n callback((children.props as { children: ReactNode }).children)\n )\n : null\n}\n","import { mergeProps } from '@zag-js/react'\nimport { cx } from 'class-variance-authority'\nimport { type ComponentPropsWithoutRef, Ref } from 'react'\n\nimport { Collapsible } from '../collapsible'\nimport { useAccordionContext } from './Accordion'\nimport { AccordionItemProvider } from './AccordionItemContext'\n\nexport interface AccordionItemProps extends ComponentPropsWithoutRef<'div'> {\n value: string\n asChild?: boolean\n disabled?: boolean\n ref?: Ref<HTMLDivElement>\n}\n\nexport const Item = ({\n asChild = false,\n className,\n children,\n disabled = false,\n value,\n ref,\n ...props\n}: AccordionItemProps) => {\n const accordion = useAccordionContext()\n\n const localProps = {\n className: cx(\n 'relative first:rounded-t-lg last:rounded-b-lg',\n 'not-last:border-b-0',\n { 'border-sm border-outline': accordion.design === 'outlined' },\n className\n ),\n asChild,\n ...props,\n }\n\n const itemProps = accordion.getItemProps({ value, ...(disabled && { disabled }) })\n const mergedProps = mergeProps(itemProps, localProps)\n\n const item = accordion.getItemState({ value })\n const itemContentProps = accordion.getItemContentProps({ value })\n\n return (\n <AccordionItemProvider value={value} disabled={disabled}>\n <Collapsible\n ref={ref}\n open={item.expanded}\n data-spark-component=\"accordion-item\"\n ids={{ content: itemContentProps.id }}\n {...mergedProps}\n >\n {children}\n </Collapsible>\n </AccordionItemProvider>\n )\n}\n\nItem.displayName = 'Accordion.Item'\n","import * as collapsible from '@zag-js/collapsible'\nimport { mergeProps, normalizeProps, type PropTypes, useMachine } from '@zag-js/react'\nimport { type ComponentProps, createContext, Ref, useContext, useId } from 'react'\n\nimport { Slot } from '../slot'\n\nexport interface CollapsibleProps extends ComponentProps<'div'> {\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n */\n asChild?: boolean\n /**\n * The open state of the collapsible when it is initially rendered. Use when you do not need to control its open state.\n */\n defaultOpen?: boolean\n /**\n * When `true`, prevents the user from interacting with the collapsible.\n */\n disabled?: boolean\n /**\n * Event handler called when the open state of the collapsible changes.\n */\n onOpenChange?: (open: boolean) => void\n /**\n * The controlled open state of the collapsible. Must be used in conjunction with `onOpenChange`.\n */\n open?: boolean\n /**\n * The ids of the elements in the collapsible. Useful for composition\n */\n ids?: collapsible.Props['ids']\n ref?: Ref<HTMLDivElement>\n}\n\nconst CollapsibleContext = createContext<collapsible.Api<PropTypes> | null>(null)\n\nexport const Collapsible = ({\n asChild = false,\n children,\n defaultOpen = false,\n disabled = false,\n onOpenChange,\n open,\n ids,\n ref,\n ...props\n}: CollapsibleProps) => {\n const service = useMachine(collapsible.machine, {\n open,\n defaultOpen,\n disabled,\n id: useId(),\n ids,\n onOpenChange(details) {\n onOpenChange?.(details.open)\n },\n })\n const api = collapsible.connect(service, normalizeProps)\n const Component = asChild ? Slot : 'div'\n\n const mergedProps = mergeProps(api.getRootProps(), props)\n\n return (\n <CollapsibleContext.Provider value={api}>\n <Component data-spark-component=\"collapsible\" ref={ref} {...mergedProps}>\n {children}\n </Component>\n </CollapsibleContext.Provider>\n )\n}\n\nCollapsible.displayName = 'Collapsible'\n\nexport const useCollapsibleContext = () => {\n const context = useContext(CollapsibleContext)\n\n if (!context) {\n throw Error('useCollapsibleContext must be used within a Collapsible provider')\n }\n\n return context\n}\n","import { mergeProps } from '@zag-js/react'\nimport { cx } from 'class-variance-authority'\nimport { type ComponentPropsWithoutRef, Ref } from 'react'\n\nimport { Slot } from '../slot'\nimport { useCollapsibleContext } from './Collapsible'\n\nexport interface CollapsibleContentProps extends ComponentPropsWithoutRef<'div'> {\n asChild?: boolean\n ref?: Ref<HTMLDivElement>\n}\n\nexport const Content = ({\n asChild = false,\n className,\n children,\n ref,\n ...props\n}: CollapsibleContentProps) => {\n const { getContentProps } = useCollapsibleContext()\n\n const Component = asChild ? Slot : 'div'\n const contentProps = getContentProps()\n const mergedProps = mergeProps(contentProps, {\n className: cx(\n 'overflow-hidden',\n 'motion-reduce:animate-none!',\n '[&[hidden]]:hidden',\n 'data-[state=open]:animate-standalone-collapse-in data-[state=closed]:animate-standalone-collapse-out',\n className\n ),\n ...props,\n })\n\n return (\n <Component ref={ref} data-spark-component=\"collapsible-content\" {...mergedProps}>\n {children}\n </Component>\n )\n}\n\nContent.displayName = 'Collapsible.Content'\n","import { mergeProps } from '@zag-js/react'\nimport { type ComponentPropsWithoutRef, Ref } from 'react'\n\nimport { Slot } from '../slot'\nimport { useCollapsibleContext } from './Collapsible'\n\nexport interface CollapsibleTriggerProps extends ComponentPropsWithoutRef<'button'> {\n asChild?: boolean\n ref?: Ref<HTMLButtonElement>\n}\n\nexport const Trigger = ({ asChild = false, children, ref, ...props }: CollapsibleTriggerProps) => {\n const collapsibleContext = useCollapsibleContext()\n const Component = asChild ? Slot : 'button'\n const mergedProps = mergeProps(collapsibleContext.getTriggerProps(), props)\n\n return (\n <Component ref={ref} data-spark-component=\"collapsible-trigger\" {...mergedProps}>\n {children}\n </Component>\n )\n}\n\nTrigger.displayName = 'Collapsible.Trigger'\n","import { Collapsible as Root } from './Collapsible'\nimport { Content } from './CollapsibleContent'\nimport { Trigger } from './CollapsibleTrigger'\n\nexport const Collapsible: typeof Root & {\n Trigger: typeof Trigger\n Content: typeof Content\n} = Object.assign(Root, {\n Trigger,\n Content,\n})\n\nCollapsible.displayName = 'Collapsible'\nTrigger.displayName = 'Collapsible.Trigger'\nContent.displayName = 'Collapsible.Content'\n\nexport { type CollapsibleProps } from './Collapsible'\nexport { type CollapsibleContentProps } from './CollapsibleContent'\nexport { type CollapsibleTriggerProps } from './CollapsibleTrigger'\n","import {\n createContext,\n Dispatch,\n type PropsWithChildren,\n SetStateAction,\n useContext,\n useState,\n} from 'react'\n\ninterface AccordionItemContextState {\n value: string\n setValue: Dispatch<SetStateAction<string>>\n disabled: boolean\n setDisabled: Dispatch<SetStateAction<boolean>>\n}\n\nconst AccordionItemContext = createContext<AccordionItemContextState | null>(null)\n\nexport const AccordionItemProvider = ({\n value: valueProp,\n disabled: disabledProp = false,\n children,\n}: PropsWithChildren<{ value: string; disabled?: boolean }>) => {\n const [value, setValue] = useState<string>(valueProp)\n const [disabled, setDisabled] = useState<boolean>(disabledProp)\n\n return (\n <AccordionItemContext.Provider value={{ value, setValue, disabled, setDisabled }}>\n {children}\n </AccordionItemContext.Provider>\n )\n}\n\nexport const useAccordionItemContext = () => {\n const context = useContext(AccordionItemContext)\n\n if (!context) {\n throw Error('useAccordionItemContext must be used within a AccordionItem provider')\n }\n\n return context\n}\n","import { createSplitProps } from '@spark-ui/internal-utils'\nimport { mergeProps } from '@zag-js/react'\nimport { cx } from 'class-variance-authority'\nimport { type ComponentPropsWithoutRef, Ref } from 'react'\n\nimport { Collapsible } from '../collapsible'\nimport { useAccordionContext } from './Accordion'\nimport { useAccordionItemContext } from './AccordionItemContext'\n\nexport interface AccordionItemContentProps extends ComponentPropsWithoutRef<'div'> {\n asChild?: boolean\n ref?: Ref<HTMLDivElement>\n}\n\nconst splitVisibilityProps = createSplitProps<{\n hidden?: boolean\n 'data-state'?: string\n}>()\n\nexport const ItemContent = ({\n asChild = false,\n className,\n children,\n ref,\n ...props\n}: AccordionItemContentProps) => {\n const accordion = useAccordionContext()\n const accordionItem = useAccordionItemContext()\n\n const localProps = {\n className: cx('[&>:first-child]:p-lg', 'text-body-1 text-on-surface', className),\n asChild,\n ...props,\n }\n const contentProps = accordion.getItemContentProps({\n value: accordionItem.value,\n ...(accordionItem.disabled && { disabled: accordionItem.disabled }),\n })\n\n const [, itemContentProps] = splitVisibilityProps(contentProps, ['hidden', 'data-state'])\n\n const mergedProps = mergeProps(itemContentProps, localProps)\n\n return (\n <Collapsible.Content ref={ref} data-spark-component=\"accordion-item-content\" {...mergedProps}>\n {children}\n </Collapsible.Content>\n )\n}\n\nItemContent.displayName = 'Accordion.ItemContent'\n","import { cx } from 'class-variance-authority'\nimport { type ComponentProps, Ref } from 'react'\n\nimport { Slot } from '../slot'\n\nexport interface AccordionItemHeaderProps extends ComponentProps<'h3'> {\n asChild?: boolean\n ref?: Ref<HTMLHeadingElement>\n}\n\nexport const ItemHeader = ({\n asChild = false,\n children,\n className,\n ref,\n}: AccordionItemHeaderProps) => {\n const Component = asChild ? Slot : 'h3'\n\n return (\n <Component\n ref={ref}\n data-spark-component=\"accordion-item-header\"\n className={cx('rounded-[inherit]', className)}\n >\n {children}\n </Component>\n )\n}\n\nItemHeader.displayName = 'Accordion.ItemHeader'\n","import { ArrowHorizontalDown } from '@spark-ui/icons/ArrowHorizontalDown'\nimport { mergeProps } from '@zag-js/react'\nimport { cx } from 'class-variance-authority'\nimport { type ComponentPropsWithoutRef, Ref } from 'react'\n\nimport { Icon } from '../icon'\nimport { Slot } from '../slot'\nimport { useAccordionContext } from './Accordion'\nimport { useAccordionItemContext } from './AccordionItemContext'\n\nexport interface AccordionItemTriggerProps extends ComponentPropsWithoutRef<'button'> {\n asChild?: boolean\n ref?: Ref<HTMLButtonElement>\n}\n\nexport const ItemTrigger = ({\n asChild = false,\n children,\n className,\n ref,\n ...props\n}: AccordionItemTriggerProps) => {\n const { getItemTriggerProps } = useAccordionContext()\n const { value, disabled } = useAccordionItemContext()\n\n const Component = asChild ? Slot : 'button'\n\n const localProps = {\n ...props,\n className: cx(\n 'relative flex gap-lg justify-between items-center min-h-sz-48',\n 'w-full px-lg py-md text-left text-headline-2 text-on-surface rounded-[inherit] data-[state=open]:rounded-b-0',\n 'hover:enabled:bg-surface-hovered focus:bg-surface-hovered',\n 'focus-visible:u-outline focus-visible:outline-hidden focus-visible:z-raised',\n 'disabled:opacity-dim-3 cursor-pointer disabled:cursor-not-allowed',\n className\n ),\n }\n\n const mergedProps = mergeProps(\n getItemTriggerProps({ value, ...(disabled && { disabled }) }),\n localProps\n )\n\n const isOpen = !!mergedProps['aria-expanded']\n\n return (\n <Component ref={ref} data-spark-component=\"accordion-item-trigger\" {...mergedProps}>\n <div className=\"gap-lg flex grow items-center\">{children}</div>\n <Icon\n intent=\"neutral\"\n className={cx('shrink-0 rotate-0 duration-100 ease-in motion-reduce:transition-none', {\n 'rotate-180': isOpen,\n })}\n size=\"sm\"\n >\n <ArrowHorizontalDown />\n </Icon>\n </Component>\n )\n}\n\nItemTrigger.displayName = 'Accordion.ItemTrigger'\n","import { Children, cloneElement, ComponentPropsWithoutRef, ReactElement, ReactNode } from 'react'\n\nimport { VisuallyHidden } from '../visually-hidden'\nimport { iconStyles, IconVariantsProps } from './Icon.styles'\n\nexport interface IconProps extends IconVariantsProps, ComponentPropsWithoutRef<'svg'> {\n /**\n * The svg icon that will be wrapped\n */\n children: ReactNode\n /**\n * The accessible label for the icon. This label will be visually hidden but announced to screen\n * reader users, similar to `alt` text for `img` tags.\n */\n label?: string\n}\n\nexport const Icon = ({\n label,\n className,\n size = 'current',\n intent = 'current',\n children,\n ...others\n}: IconProps) => {\n const child = Children.only(children)\n\n return (\n <>\n {cloneElement(child as ReactElement<Record<string, any>>, {\n className: iconStyles({ className, size, intent }),\n 'data-spark-component': 'icon',\n 'aria-hidden': 'true',\n focusable: 'false',\n ...others,\n })}\n\n {label && <VisuallyHidden>{label}</VisuallyHidden>}\n </>\n )\n}\n\nIcon.displayName = 'Icon'\n","import { HTMLAttributes, PropsWithChildren, Ref } from 'react'\n\nimport { Slot } from '../slot'\n\nexport type VisuallyHiddenProps = PropsWithChildren<HTMLAttributes<HTMLElement>> & {\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n */\n asChild?: boolean\n ref?: Ref<HTMLElement>\n}\n\nexport const VisuallyHidden = ({ asChild = false, ref, ...props }: VisuallyHiddenProps) => {\n const Component = asChild ? Slot : 'span'\n\n return (\n <Component\n {...props}\n ref={ref}\n style={{\n // See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss\n position: 'absolute',\n border: 0,\n width: 1,\n height: 1,\n padding: 0,\n margin: -1,\n overflow: 'hidden',\n clip: 'rect(0, 0, 0, 0)',\n whiteSpace: 'nowrap',\n wordWrap: 'normal',\n ...props.style,\n }}\n />\n )\n}\n\nVisuallyHidden.displayName = 'VisuallyHidden'\n","import { makeVariants } from '@spark-ui/internal-utils'\nimport { cva, VariantProps } from 'class-variance-authority'\n\nexport const iconStyles = cva(['fill-current shrink-0'], {\n variants: {\n /**\n * Color scheme of the icon.\n */\n intent: makeVariants<\n 'intent',\n [\n 'current',\n 'main',\n 'support',\n 'accent',\n 'basic',\n 'success',\n 'alert',\n 'error',\n 'info',\n 'neutral',\n ]\n >({\n current: ['text-current'],\n main: ['text-main'],\n support: ['text-support'],\n accent: ['text-accent'],\n basic: ['text-basic'],\n success: ['text-success'],\n alert: ['text-alert'],\n error: ['text-error'],\n info: ['text-info'],\n neutral: ['text-neutral'],\n }),\n /**\n * Sets the size of the icon.\n */\n size: makeVariants<'size', ['current', 'sm', 'md', 'lg', 'xl']>({\n current: ['u-current-font-size'],\n sm: ['w-sz-16', 'h-sz-16'],\n md: ['w-sz-24', 'h-sz-24'],\n lg: ['w-sz-32', 'h-sz-32'],\n xl: ['w-sz-40', 'h-sz-40'],\n }),\n },\n})\n\nexport type IconVariantsProps = VariantProps<typeof iconStyles>\n"],"mappings":"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","names":["Accordion","import_react","RadixSlot","import_jsx_runtime","collapsible","import_react","import_class_variance_authority","import_react","import_jsx_runtime","import_react","import_class_variance_authority","import_jsx_runtime","import_react","import_jsx_runtime","Collapsible","import_react","import_jsx_runtime","import_jsx_runtime","accordion","Collapsible","import_react","import_class_variance_authority","import_jsx_runtime","accordion","Collapsible","import_class_variance_authority","import_jsx_runtime","import_react","import_class_variance_authority","import_react","import_jsx_runtime","import_internal_utils","import_class_variance_authority","import_jsx_runtime","import_jsx_runtime","Accordion"]}