@fpkit/acss 0.5.12 → 0.6.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 (398) hide show
  1. package/README.md +89 -0
  2. package/libs/chunk-2NRIP6RB.cjs +17 -0
  3. package/libs/chunk-2NRIP6RB.cjs.map +1 -0
  4. package/libs/chunk-33PNJ4LO.cjs +15 -0
  5. package/libs/chunk-33PNJ4LO.cjs.map +1 -0
  6. package/libs/chunk-4BZKFPEC.cjs +17 -0
  7. package/libs/chunk-4BZKFPEC.cjs.map +1 -0
  8. package/libs/{chunk-O6QZBB6G.js → chunk-5QD3DWFI.js} +5 -5
  9. package/libs/chunk-5QD3DWFI.js.map +1 -0
  10. package/libs/chunk-6SAHIYCZ.js +7 -0
  11. package/libs/chunk-6SAHIYCZ.js.map +1 -0
  12. package/libs/{chunk-KKLTUJFB.cjs → chunk-6WTC4JXH.cjs} +5 -5
  13. package/libs/chunk-6WTC4JXH.cjs.map +1 -0
  14. package/libs/chunk-75QHTLFO.js +7 -0
  15. package/libs/chunk-75QHTLFO.js.map +1 -0
  16. package/libs/{chunk-YWOYVRFT.js → chunk-7XPFW7CB.js} +3 -3
  17. package/libs/chunk-BFK62VX5.js +5 -0
  18. package/libs/chunk-BFK62VX5.js.map +1 -0
  19. package/libs/{chunk-ICCKQ2GC.cjs → chunk-DKTHCQ5P.cjs} +4 -4
  20. package/libs/{chunk-6TE5QEVE.cjs → chunk-E2AJURUW.cjs} +3 -3
  21. package/libs/chunk-E2AJURUW.cjs.map +1 -0
  22. package/libs/chunk-ENTCUJ3A.cjs +13 -0
  23. package/libs/chunk-ENTCUJ3A.cjs.map +1 -0
  24. package/libs/chunk-F5EYMVQM.js +10 -0
  25. package/libs/chunk-F5EYMVQM.js.map +1 -0
  26. package/libs/chunk-FVROL3V5.js +9 -0
  27. package/libs/chunk-FVROL3V5.js.map +1 -0
  28. package/libs/chunk-GT77BX4L.cjs +17 -0
  29. package/libs/chunk-GT77BX4L.cjs.map +1 -0
  30. package/libs/chunk-GUJSMQ3V.cjs +16 -0
  31. package/libs/chunk-GUJSMQ3V.cjs.map +1 -0
  32. package/libs/chunk-HHLNOC5T.js +7 -0
  33. package/libs/chunk-HHLNOC5T.js.map +1 -0
  34. package/libs/chunk-HRRHPLER.js +8 -0
  35. package/libs/chunk-HRRHPLER.js.map +1 -0
  36. package/libs/chunk-IEB64SWY.js +8 -0
  37. package/libs/chunk-IEB64SWY.js.map +1 -0
  38. package/libs/{chunk-LIQJ7ZZR.js → chunk-IQ76HGVP.js} +2 -2
  39. package/libs/chunk-IRLFZ3OL.js +9 -0
  40. package/libs/chunk-IRLFZ3OL.js.map +1 -0
  41. package/libs/chunk-KK47SYZI.js +8 -0
  42. package/libs/chunk-KK47SYZI.js.map +1 -0
  43. package/libs/chunk-O3JIHC5M.cjs +15 -0
  44. package/libs/chunk-O3JIHC5M.cjs.map +1 -0
  45. package/libs/chunk-O5XAJ7BY.cjs +18 -0
  46. package/libs/chunk-O5XAJ7BY.cjs.map +1 -0
  47. package/libs/chunk-OVWLQYMK.js +10 -0
  48. package/libs/chunk-OVWLQYMK.js.map +1 -0
  49. package/libs/chunk-PNWIRCG3.cjs +7 -0
  50. package/libs/chunk-PNWIRCG3.cjs.map +1 -0
  51. package/libs/chunk-QVW6W76L.cjs +18 -0
  52. package/libs/chunk-QVW6W76L.cjs.map +1 -0
  53. package/libs/chunk-T4T6GWYQ.cjs +17 -0
  54. package/libs/chunk-T4T6GWYQ.cjs.map +1 -0
  55. package/libs/chunk-TON2YGMD.cjs +9 -0
  56. package/libs/chunk-TON2YGMD.cjs.map +1 -0
  57. package/libs/chunk-UEPAWMDF.js +8 -0
  58. package/libs/chunk-UEPAWMDF.js.map +1 -0
  59. package/libs/{chunk-LT5KZ2QW.cjs → chunk-US2I5GI7.cjs} +3 -3
  60. package/libs/{chunk-E3XP6BEX.cjs → chunk-W2UIN7EV.cjs} +3 -3
  61. package/libs/chunk-W5TKWBFC.cjs +18 -0
  62. package/libs/chunk-W5TKWBFC.cjs.map +1 -0
  63. package/libs/chunk-WXBFBWYF.cjs +16 -0
  64. package/libs/chunk-WXBFBWYF.cjs.map +1 -0
  65. package/libs/chunk-X3JCTEPD.js +11 -0
  66. package/libs/chunk-X3JCTEPD.js.map +1 -0
  67. package/libs/chunk-X5LGFCWG.js +9 -0
  68. package/libs/chunk-X5LGFCWG.js.map +1 -0
  69. package/libs/{chunk-5M57K4SW.js → chunk-Y2PFDELK.js} +2 -2
  70. package/libs/chunk-ZFJ4U45S.js +10 -0
  71. package/libs/chunk-ZFJ4U45S.js.map +1 -0
  72. package/libs/{component-props-a8a2f97e.d.ts → component-props-67d978a2.d.ts} +4 -4
  73. package/libs/components/alert/alert.css +1 -1
  74. package/libs/components/alert/alert.css.map +1 -1
  75. package/libs/components/alert/alert.min.css +2 -2
  76. package/libs/components/badge/badge.css +1 -1
  77. package/libs/components/badge/badge.css.map +1 -1
  78. package/libs/components/badge/badge.min.css +2 -2
  79. package/libs/components/breadcrumbs/breadcrumb.cjs +9 -5
  80. package/libs/components/breadcrumbs/breadcrumb.d.cts +275 -36
  81. package/libs/components/breadcrumbs/breadcrumb.d.ts +275 -36
  82. package/libs/components/breadcrumbs/breadcrumb.js +3 -3
  83. package/libs/components/button.cjs +6 -4
  84. package/libs/components/button.d.cts +97 -4
  85. package/libs/components/button.d.ts +97 -4
  86. package/libs/components/button.js +4 -2
  87. package/libs/components/buttons/button.css +1 -1
  88. package/libs/components/buttons/button.css.map +1 -1
  89. package/libs/components/buttons/button.min.css +2 -2
  90. package/libs/components/card.cjs +7 -7
  91. package/libs/components/card.d.cts +278 -34
  92. package/libs/components/card.d.ts +278 -34
  93. package/libs/components/card.js +2 -2
  94. package/libs/components/cards/card.css +1 -1
  95. package/libs/components/cards/card.css.map +1 -1
  96. package/libs/components/cards/card.min.css +2 -2
  97. package/libs/components/details/details.css +1 -1
  98. package/libs/components/details/details.css.map +1 -1
  99. package/libs/components/details/details.min.css +2 -2
  100. package/libs/components/dialog/dialog.cjs +9 -7
  101. package/libs/components/dialog/dialog.css +1 -1
  102. package/libs/components/dialog/dialog.css.map +1 -1
  103. package/libs/components/dialog/dialog.d.cts +88 -34
  104. package/libs/components/dialog/dialog.d.ts +88 -34
  105. package/libs/components/dialog/dialog.js +7 -5
  106. package/libs/components/dialog/dialog.min.css +2 -2
  107. package/libs/components/form/fields.cjs +4 -4
  108. package/libs/components/form/fields.d.cts +16 -7
  109. package/libs/components/form/fields.d.ts +16 -7
  110. package/libs/components/form/fields.js +2 -2
  111. package/libs/components/form/inputs.cjs +6 -4
  112. package/libs/components/form/inputs.d.cts +50 -2
  113. package/libs/components/form/inputs.d.ts +50 -2
  114. package/libs/components/form/inputs.js +4 -2
  115. package/libs/components/form/textarea.cjs +5 -4
  116. package/libs/components/form/textarea.d.cts +32 -23
  117. package/libs/components/form/textarea.d.ts +32 -23
  118. package/libs/components/form/textarea.js +3 -2
  119. package/libs/components/heading/heading.cjs +3 -3
  120. package/libs/components/heading/heading.d.cts +3 -14
  121. package/libs/components/heading/heading.d.ts +3 -14
  122. package/libs/components/heading/heading.js +2 -2
  123. package/libs/components/icons/icon.cjs +4 -4
  124. package/libs/components/icons/icon.d.cts +183 -39
  125. package/libs/components/icons/icon.d.ts +183 -39
  126. package/libs/components/icons/icon.js +2 -2
  127. package/libs/components/images/img.css +1 -1
  128. package/libs/components/images/img.css.map +1 -1
  129. package/libs/components/images/img.min.css +2 -2
  130. package/libs/components/link/link.cjs +4 -4
  131. package/libs/components/link/link.css +1 -1
  132. package/libs/components/link/link.css.map +1 -1
  133. package/libs/components/link/link.d.cts +3 -19
  134. package/libs/components/link/link.d.ts +3 -19
  135. package/libs/components/link/link.js +2 -2
  136. package/libs/components/link/link.min.css +2 -2
  137. package/libs/components/list/list.cjs +5 -5
  138. package/libs/components/list/list.css +1 -0
  139. package/libs/components/list/list.css.map +1 -0
  140. package/libs/components/list/list.d.cts +120 -33
  141. package/libs/components/list/list.d.ts +120 -33
  142. package/libs/components/list/list.js +2 -2
  143. package/libs/components/list/list.min.css +3 -0
  144. package/libs/components/modal.cjs +6 -4
  145. package/libs/components/modal.d.cts +8 -8
  146. package/libs/components/modal.d.ts +8 -8
  147. package/libs/components/modal.js +5 -3
  148. package/libs/components/nav/nav.cjs +7 -7
  149. package/libs/components/nav/nav.css +1 -1
  150. package/libs/components/nav/nav.css.map +1 -1
  151. package/libs/components/nav/nav.d.cts +550 -34
  152. package/libs/components/nav/nav.d.ts +550 -34
  153. package/libs/components/nav/nav.js +3 -3
  154. package/libs/components/nav/nav.min.css +2 -2
  155. package/libs/components/popover/popover.d.cts +5 -5
  156. package/libs/components/popover/popover.d.ts +5 -5
  157. package/libs/components/tables/table.cjs +5 -5
  158. package/libs/components/tables/table.d.cts +8 -8
  159. package/libs/components/tables/table.d.ts +8 -8
  160. package/libs/components/tables/table.js +2 -2
  161. package/libs/components/tag/tag.css +1 -1
  162. package/libs/components/tag/tag.css.map +1 -1
  163. package/libs/components/tag/tag.min.css +2 -2
  164. package/libs/components/text/text.cjs +5 -5
  165. package/libs/components/text/text.d.cts +5 -5
  166. package/libs/components/text/text.d.ts +5 -5
  167. package/libs/components/text/text.js +2 -2
  168. package/libs/form.types-d25ebfac.d.ts +233 -0
  169. package/libs/heading-7446cb46.d.ts +250 -0
  170. package/libs/hooks.cjs +12 -0
  171. package/libs/hooks.d.cts +140 -1
  172. package/libs/hooks.d.ts +140 -1
  173. package/libs/hooks.js +4 -0
  174. package/libs/icons.cjs +3 -3
  175. package/libs/icons.d.cts +2 -2
  176. package/libs/icons.d.ts +2 -2
  177. package/libs/icons.js +2 -2
  178. package/libs/index.cjs +117 -94
  179. package/libs/index.cjs.map +1 -1
  180. package/libs/index.css +1 -1
  181. package/libs/index.css.map +1 -1
  182. package/libs/index.d.cts +834 -61
  183. package/libs/index.d.ts +834 -61
  184. package/libs/index.js +36 -22
  185. package/libs/index.js.map +1 -1
  186. package/libs/link-5192f411.d.ts +323 -0
  187. package/libs/list.types-d26de310.d.ts +245 -0
  188. package/libs/ui-d01b50d4.d.ts +289 -0
  189. package/package.json +4 -87
  190. package/src/components/README-UI.mdx +416 -0
  191. package/src/components/alert/ACCESSIBILITY.md +319 -0
  192. package/src/components/alert/README.mdx +475 -19
  193. package/src/components/alert/alert.scss +110 -6
  194. package/src/components/alert/alert.stories.tsx +372 -0
  195. package/src/components/alert/alert.test.tsx +762 -0
  196. package/src/components/alert/alert.tsx +331 -66
  197. package/src/components/alert/views/alert-actions.tsx +13 -0
  198. package/src/components/alert/views/alert-content.tsx +17 -0
  199. package/src/components/alert/views/alert-icon.tsx +53 -0
  200. package/src/components/alert/views/alert-screen-reader-text.tsx +30 -0
  201. package/src/components/alert/views/alert-title.tsx +23 -0
  202. package/src/components/alert/views/alert-view.tsx +158 -0
  203. package/src/components/alert/views/index.ts +12 -0
  204. package/src/components/badge/badge.mdx +186 -49
  205. package/src/components/badge/badge.scss +20 -2
  206. package/src/components/badge/badge.stories.tsx +160 -14
  207. package/src/components/badge/badge.test.tsx +179 -0
  208. package/src/components/badge/badge.tsx +97 -4
  209. package/src/components/breadcrumbs/README.mdx +364 -45
  210. package/src/components/breadcrumbs/__snapshots__/breadcrumb.test.tsx.snap +152 -0
  211. package/src/components/breadcrumbs/breadcrumb.stories.tsx +7 -3
  212. package/src/components/breadcrumbs/breadcrumb.test.tsx +490 -0
  213. package/src/components/breadcrumbs/breadcrumb.tsx +430 -170
  214. package/src/components/buttons/README.mdx +102 -1
  215. package/src/components/buttons/button.scss +34 -31
  216. package/src/components/buttons/button.stories.tsx +141 -0
  217. package/src/components/buttons/button.tsx +82 -52
  218. package/src/components/cards/README.mdx +657 -0
  219. package/src/components/cards/card.scss +22 -0
  220. package/src/components/cards/card.stories.tsx +167 -5
  221. package/src/components/cards/card.test.tsx +360 -20
  222. package/src/components/cards/card.tsx +200 -79
  223. package/src/components/cards/card.types.ts +135 -0
  224. package/src/components/cards/card.utils.ts +79 -0
  225. package/src/components/details/ACCESSIBILITY-REVIEW-LIVE.md +1050 -0
  226. package/src/components/details/ACCESSIBILITY-REVIEW.md +502 -0
  227. package/src/components/details/README.mdx +437 -69
  228. package/src/components/details/details.scss +16 -7
  229. package/src/components/details/details.test.tsx +385 -0
  230. package/src/components/details/details.tsx +101 -69
  231. package/src/components/details/details.types.ts +76 -0
  232. package/src/components/dialog/README.mdx +513 -110
  233. package/src/components/dialog/dialog-a11y-review.md +653 -0
  234. package/src/components/dialog/dialog-modal.tsx +79 -56
  235. package/src/components/dialog/dialog.scss +53 -3
  236. package/src/components/dialog/dialog.stories.tsx +10 -7
  237. package/src/components/dialog/dialog.test.tsx +450 -0
  238. package/src/components/dialog/dialog.tsx +69 -59
  239. package/src/components/dialog/dialog.types.ts +133 -0
  240. package/src/components/dialog/views/dialog-footer.tsx +54 -11
  241. package/src/components/dialog/views/dialog-header.tsx +20 -15
  242. package/src/components/form/README.mdx +725 -43
  243. package/src/components/form/WCAG-REVIEW.md +654 -0
  244. package/src/components/form/fields.tsx +10 -1
  245. package/src/components/form/form.stories.tsx +604 -23
  246. package/src/components/form/form.tsx +204 -63
  247. package/src/components/form/form.types.ts +378 -0
  248. package/src/components/form/input.stories.tsx +71 -3
  249. package/src/components/form/inputs.tsx +159 -67
  250. package/src/components/form/select.tsx +122 -66
  251. package/src/components/form/textarea.tsx +120 -73
  252. package/src/components/fp.tsx +86 -11
  253. package/src/components/heading/heading.stories.tsx +44 -4
  254. package/src/components/heading/heading.tsx +89 -23
  255. package/src/components/icons/README.mdx +332 -0
  256. package/src/components/icons/icon.stories.tsx +74 -1
  257. package/src/components/icons/icon.tsx +89 -1
  258. package/src/components/icons/types.ts +47 -0
  259. package/src/components/images/README.mdx +340 -24
  260. package/src/components/images/img.scss +19 -3
  261. package/src/components/images/img.stories.tsx +424 -15
  262. package/src/components/images/img.test.tsx +354 -25
  263. package/src/components/images/img.tsx +186 -63
  264. package/src/components/images/img.types.ts +211 -0
  265. package/src/components/link/README.mdx +923 -0
  266. package/src/components/link/link.scss +79 -26
  267. package/src/components/link/link.stories.tsx +383 -30
  268. package/src/components/link/link.test.tsx +677 -0
  269. package/src/components/link/link.tsx +163 -57
  270. package/src/components/link/link.types.ts +261 -0
  271. package/src/components/list/README.mdx +764 -0
  272. package/src/components/list/list.scss +285 -0
  273. package/src/components/list/list.stories.tsx +514 -27
  274. package/src/components/list/list.test.tsx +554 -0
  275. package/src/components/list/list.tsx +153 -51
  276. package/src/components/list/list.types.ts +255 -0
  277. package/src/components/nav/ACCESSIBILITY.md +649 -0
  278. package/src/components/nav/README.mdx +782 -0
  279. package/src/components/nav/nav.scss +32 -1
  280. package/src/components/nav/nav.stories.tsx +44 -6
  281. package/src/components/nav/nav.tsx +302 -51
  282. package/src/components/nav/nav.types.ts +308 -0
  283. package/src/components/tag/README.mdx +426 -0
  284. package/src/components/tag/tag.scss +101 -27
  285. package/src/components/tag/tag.stories.tsx +384 -10
  286. package/src/components/tag/tag.test.tsx +210 -0
  287. package/src/components/tag/tag.tsx +106 -9
  288. package/src/components/tag/tag.types.ts +107 -0
  289. package/src/components/title/MIGRATION.md +199 -0
  290. package/src/components/title/README.md +326 -0
  291. package/src/components/title/README.mdx +452 -0
  292. package/src/components/title/title.stories.tsx +393 -0
  293. package/src/components/title/title.test.tsx +251 -0
  294. package/src/components/title/title.tsx +219 -0
  295. package/src/components/ui.stories.tsx +894 -0
  296. package/src/components/ui.test.tsx +559 -0
  297. package/src/components/ui.tsx +274 -18
  298. package/src/components/word-count/README.md +240 -0
  299. package/src/hooks/use-disabled-state.test.tsx +536 -0
  300. package/src/hooks/use-disabled-state.ts +246 -0
  301. package/src/hooks/useDisabledState.md +393 -0
  302. package/src/hooks.ts +7 -0
  303. package/src/index.scss +2 -0
  304. package/src/index.ts +12 -3
  305. package/src/sass/_globals.scss +2 -7
  306. package/src/sass/_properties.scss +1 -0
  307. package/src/styles/alert/alert.css +92 -4
  308. package/src/styles/alert/alert.css.map +1 -1
  309. package/src/styles/badge/badge.css +20 -2
  310. package/src/styles/badge/badge.css.map +1 -1
  311. package/src/styles/buttons/button.css +31 -31
  312. package/src/styles/buttons/button.css.map +1 -1
  313. package/src/styles/cards/card.css +16 -0
  314. package/src/styles/cards/card.css.map +1 -1
  315. package/src/styles/details/details.css +19 -8
  316. package/src/styles/details/details.css.map +1 -1
  317. package/src/styles/dialog/dialog.css +43 -2
  318. package/src/styles/dialog/dialog.css.map +1 -1
  319. package/src/styles/images/img.css +15 -3
  320. package/src/styles/images/img.css.map +1 -1
  321. package/src/styles/index.css +691 -128
  322. package/src/styles/index.css.map +1 -1
  323. package/src/styles/link/link.css +45 -28
  324. package/src/styles/link/link.css.map +1 -1
  325. package/src/styles/list/list.css +214 -0
  326. package/src/styles/list/list.css.map +1 -0
  327. package/src/styles/nav/nav.css +21 -1
  328. package/src/styles/nav/nav.css.map +1 -1
  329. package/src/styles/tag/tag.css +113 -35
  330. package/src/styles/tag/tag.css.map +1 -1
  331. package/src/styles/utilities/_disabled.scss +58 -0
  332. package/src/test/setup.d.ts +9 -0
  333. package/src/test/setup.ts +53 -1
  334. package/src/types/shared.ts +43 -6
  335. package/src/utils/accessibility.ts +109 -0
  336. package/libs/chunk-5ZM4XL44.js +0 -8
  337. package/libs/chunk-5ZM4XL44.js.map +0 -1
  338. package/libs/chunk-6BVXFW7U.cjs +0 -15
  339. package/libs/chunk-6BVXFW7U.cjs.map +0 -1
  340. package/libs/chunk-6TE5QEVE.cjs.map +0 -1
  341. package/libs/chunk-7K76RW2A.cjs +0 -18
  342. package/libs/chunk-7K76RW2A.cjs.map +0 -1
  343. package/libs/chunk-BHRQBJRY.js +0 -8
  344. package/libs/chunk-BHRQBJRY.js.map +0 -1
  345. package/libs/chunk-BIP2NY53.js +0 -8
  346. package/libs/chunk-BIP2NY53.js.map +0 -1
  347. package/libs/chunk-BSPKFLO4.js +0 -8
  348. package/libs/chunk-BSPKFLO4.js.map +0 -1
  349. package/libs/chunk-BV5CLH44.cjs +0 -18
  350. package/libs/chunk-BV5CLH44.cjs.map +0 -1
  351. package/libs/chunk-DKGJHKGW.js +0 -9
  352. package/libs/chunk-DKGJHKGW.js.map +0 -1
  353. package/libs/chunk-DV56L5YX.cjs +0 -18
  354. package/libs/chunk-DV56L5YX.cjs.map +0 -1
  355. package/libs/chunk-ECLD37WN.cjs +0 -16
  356. package/libs/chunk-ECLD37WN.cjs.map +0 -1
  357. package/libs/chunk-EQ67LF46.js +0 -9
  358. package/libs/chunk-EQ67LF46.js.map +0 -1
  359. package/libs/chunk-HYBZBN4G.js +0 -8
  360. package/libs/chunk-HYBZBN4G.js.map +0 -1
  361. package/libs/chunk-IYUN2EW3.cjs +0 -15
  362. package/libs/chunk-IYUN2EW3.cjs.map +0 -1
  363. package/libs/chunk-KKLTUJFB.cjs.map +0 -1
  364. package/libs/chunk-LHVJKDMA.cjs +0 -15
  365. package/libs/chunk-LHVJKDMA.cjs.map +0 -1
  366. package/libs/chunk-LL7HTLMS.cjs +0 -15
  367. package/libs/chunk-LL7HTLMS.cjs.map +0 -1
  368. package/libs/chunk-M5QL5TAE.cjs +0 -14
  369. package/libs/chunk-M5QL5TAE.cjs.map +0 -1
  370. package/libs/chunk-NE6YXTMC.js +0 -7
  371. package/libs/chunk-NE6YXTMC.js.map +0 -1
  372. package/libs/chunk-NHYXGV3L.js +0 -8
  373. package/libs/chunk-NHYXGV3L.js.map +0 -1
  374. package/libs/chunk-O6QZBB6G.js.map +0 -1
  375. package/libs/chunk-P7TTEYCD.js +0 -7
  376. package/libs/chunk-P7TTEYCD.js.map +0 -1
  377. package/libs/chunk-PPOOBUOS.js +0 -8
  378. package/libs/chunk-PPOOBUOS.js.map +0 -1
  379. package/libs/chunk-QCMV4VQZ.js +0 -8
  380. package/libs/chunk-QCMV4VQZ.js.map +0 -1
  381. package/libs/chunk-QVV34QEH.cjs +0 -32
  382. package/libs/chunk-QVV34QEH.cjs.map +0 -1
  383. package/libs/chunk-S7BABR7Z.cjs +0 -13
  384. package/libs/chunk-S7BABR7Z.cjs.map +0 -1
  385. package/libs/chunk-SXVZSWX6.js +0 -11
  386. package/libs/chunk-SXVZSWX6.js.map +0 -1
  387. package/libs/chunk-X3EVB7VS.cjs +0 -15
  388. package/libs/chunk-X3EVB7VS.cjs.map +0 -1
  389. package/libs/inputs-f3a216db.d.ts +0 -45
  390. package/libs/ui-9a6f9f8d.d.ts +0 -24
  391. package/src/components/cards/README.md +0 -80
  392. package/src/components/dialog/hooks/useClickOutside.ts +0 -33
  393. /package/libs/{chunk-YWOYVRFT.js.map → chunk-7XPFW7CB.js.map} +0 -0
  394. /package/libs/{chunk-ICCKQ2GC.cjs.map → chunk-DKTHCQ5P.cjs.map} +0 -0
  395. /package/libs/{chunk-LIQJ7ZZR.js.map → chunk-IQ76HGVP.js.map} +0 -0
  396. /package/libs/{chunk-LT5KZ2QW.cjs.map → chunk-US2I5GI7.cjs.map} +0 -0
  397. /package/libs/{chunk-E3XP6BEX.cjs.map → chunk-W2UIN7EV.cjs.map} +0 -0
  398. /package/libs/{chunk-5M57K4SW.js.map → chunk-Y2PFDELK.js.map} +0 -0
package/README.md CHANGED
@@ -17,6 +17,95 @@ A lightweight React UI library for building modern and accessible components tha
17
17
  - **⚡ TypeScript**: Full type safety and excellent DX
18
18
  - **🔧 Headless**: Minimal styling, maximum customization
19
19
 
20
+ ## ♿ Accessibility
21
+
22
+ FPKit is built with accessibility as a core principle, following WCAG 2.1 AA standards. All components support ARIA attributes and provide guidance for creating accessible applications.
23
+
24
+ ### Accessibility Features
25
+
26
+ - **Semantic HTML** - Components use appropriate semantic elements by default
27
+ - **ARIA Support** - Full support for ARIA attributes on all components
28
+ - **Keyboard Navigation** - All interactive elements are keyboard accessible
29
+ - **Screen Reader Friendly** - Proper labeling and announcements for assistive technologies
30
+ - **Focus Management** - Visible focus indicators and programmatic focus control
31
+
32
+ ### Testing for Accessibility
33
+
34
+ We recommend the following tools for testing accessibility in your applications:
35
+
36
+ #### Automated Testing
37
+
38
+ ```bash
39
+ # Install recommended packages
40
+ npm install --save-dev eslint-plugin-jsx-a11y jest-axe @testing-library/react
41
+ ```
42
+
43
+ **ESLint Plugin** - Catch accessibility issues during development:
44
+
45
+ ```js
46
+ // .eslintrc.js
47
+ {
48
+ "extends": ["plugin:jsx-a11y/recommended"],
49
+ "plugins": ["jsx-a11y"]
50
+ }
51
+ ```
52
+
53
+ **jest-axe** - Automated accessibility testing in unit tests:
54
+
55
+ ```tsx
56
+ import { render } from '@testing-library/react';
57
+ import { axe, toHaveNoViolations } from 'jest-axe';
58
+ import { Button } from '@fpkit/acss/button';
59
+
60
+ expect.extend(toHaveNoViolations);
61
+
62
+ test('Button should have no accessibility violations', async () => {
63
+ const { container } = render(
64
+ <Button type="button" aria-label="Submit form">
65
+ Submit
66
+ </Button>
67
+ );
68
+ const results = await axe(container);
69
+ expect(results).toHaveNoViolations();
70
+ });
71
+ ```
72
+
73
+ #### Manual Testing Checklist
74
+
75
+ When building components with FPKit, verify:
76
+
77
+ - [ ] **Keyboard Navigation** - All interactive elements are reachable and operable via keyboard
78
+ - [ ] **Screen Reader** - Test with VoiceOver (macOS), NVDA (Windows), or JAWS
79
+ - [ ] **Focus Indicators** - Visible focus states meet 3:1 contrast ratio (WCAG 2.4.7)
80
+ - [ ] **Accessible Names** - All interactive elements have accessible names (via text, `aria-label`, or `aria-labelledby`)
81
+ - [ ] **Color Contrast** - Text meets 4.5:1 contrast ratio for normal text, 3:1 for large text
82
+ - [ ] **Semantic Structure** - Proper heading hierarchy and landmark regions
83
+
84
+ ### UI Component Accessibility
85
+
86
+ The foundational [UI component](https://fpkit.netlify.app/?path=/story/fp-ui--accessible-interactive-elements) demonstrates best practices:
87
+
88
+ ```tsx
89
+ import { UI } from '@fpkit/acss';
90
+
91
+ // ✅ Good: Accessible button with aria-label
92
+ <UI as="button" aria-label="Close dialog" onClick={handleClose}>
93
+ <CloseIcon />
94
+ </UI>
95
+
96
+ // ✅ Good: Semantic link with descriptive text
97
+ <UI as="a" href="/products">
98
+ View all products
99
+ </UI>
100
+
101
+ // ❌ Bad: Button without accessible name
102
+ <UI as="button" onClick={handleClose}>
103
+ <CloseIcon />
104
+ </UI>
105
+ ```
106
+
107
+ See the [UI component Storybook stories](https://fpkit.netlify.app/?path=/story/fp-ui--accessibility-patterns) for more examples and anti-patterns to avoid.
108
+
20
109
  ## 📦 Installation
21
110
 
22
111
  ```bash
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ var chunkENTCUJ3A_cjs = require('./chunk-ENTCUJ3A.cjs');
4
+ var o = require('react');
5
+
6
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
7
+
8
+ var o__default = /*#__PURE__*/_interopDefault(o);
9
+
10
+ var r=o__default.default.memo(o__default.default.forwardRef(({level:e="h2",id:t,styles:i,ui:s,children:d,className:m,...c},h)=>o__default.default.createElement(chunkENTCUJ3A_cjs.a,{as:e,id:t,styles:i,"data-ui":s,className:m,ref:h,...c},d)));r.displayName="Title";var a=r;var p=o__default.default.forwardRef(({type:e="h3",...t},i)=>(process.env.NODE_ENV==="development"&&console.warn(`[@fpkit/acss] Heading component is deprecated and will be removed in v3.0.0. Please use the Title component instead.
11
+ Migration: <Heading type="${e}"> \u2192 <Title level="${e}">
12
+ See documentation: https://fpkit.dev/components/title`),o__default.default.createElement(a,{level:e,ref:i,...t})));p.displayName="Heading (Deprecated)";var H=p;
13
+
14
+ exports.a = a;
15
+ exports.b = H;
16
+ //# sourceMappingURL=out.js.map
17
+ //# sourceMappingURL=chunk-2NRIP6RB.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/heading/heading.tsx","../src/components/title/title.tsx"],"names":["React","Title","level","id","styles","ui","children","className","props","ref","ui_default","title_default","Heading","type","heading_default"],"mappings":"yCAAA,OAAOA,MAAW,QCAlB,OAAOA,MAAW,QAyLlB,IAAMC,EAAQD,EAAM,KAClBA,EAAM,WACJ,CACE,CACE,MAAAE,EAAQ,KACR,GAAAC,EACA,OAAAC,EACA,GAAAC,EACA,SAAAC,EACA,UAAAC,EACA,GAAGC,CACL,EACAC,IAGET,EAAA,cAACU,EAAA,CACC,GAAIR,EACJ,GAAIC,EACJ,OAAQC,EACR,UAASC,EACT,UAAWE,EACX,IAAKE,EACJ,GAAGD,GAEHF,CACH,CAGN,CACF,EAEAL,EAAM,YAAc,QAEpB,IAAOU,EAAQV,EDlJf,IAAMW,EAAUZ,EAAM,WACpB,CAAC,CAAE,KAAAa,EAAO,KAAM,GAAGL,CAAM,EAAGC,KAEtB,QAAQ,IAAI,WAAa,eAE3B,QAAQ,KACN;AAAA,4BAE6BI,CAAI,2BAAsBA,CAAI;AAAA,sDAE7D,EAIKb,EAAA,cAACW,EAAA,CAAM,MAAOE,EAAM,IAAKJ,EAAM,GAAGD,EAAO,EAEpD,EAEAI,EAAQ,YAAc,uBAEtB,IAAOE,EAAQF","sourcesContent":["import React from \"react\";\nimport Title from \"#components/title/title\";\n\n/**\n * @deprecated Use `Title` component instead. This component will be removed in v3.0.0.\n *\n * @remarks\n * The `Heading` component has been deprecated in favor of the new `Title` component\n * which offers improved API design and better accessibility features.\n *\n * **Migration Guide:**\n * - Rename `Heading` → `Title`\n * - Rename prop `type` → `level`\n * - Default level changed from `h3` → `h2` (update if you relied on the default)\n *\n * @example\n * // Before (deprecated):\n * <Heading type=\"h2\">Section Title</Heading>\n *\n * // After:\n * <Title level=\"h2\">Section Title</Title>\n *\n * @see {@link Title} for the new component\n */\nexport type TitleProps = {\n /**\n * @deprecated Use `level` prop on the `Title` component instead.\n */\n children: React.ReactNode;\n\n /**\n * @deprecated Use `level` prop on the `Title` component instead.\n */\n type?: \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\";\n\n /**\n * @deprecated Use `ui` prop on the `Title` component.\n */\n ui?: string;\n} & Omit<React.ComponentPropsWithoutRef<typeof Title>, 'level'>;\n\n/**\n * Heading - Deprecated component wrapper for Title.\n *\n * @deprecated Use {@link Title} component instead. Will be removed in v3.0.0.\n *\n * This component provides backwards compatibility for existing code using\n * the old `Heading` component API. It forwards all props to the new `Title`\n * component with appropriate prop name mapping.\n *\n * **Breaking Changes in v3.0.0:**\n * - This component will be removed\n * - Migrate to `Title` component before upgrading\n *\n * **Migration Steps:**\n * 1. Replace all `<Heading>` imports with `<Title>`\n * 2. Rename `type` prop to `level`\n * 3. Review default behavior (default changed from h3 to h2)\n *\n * @example\n * // Old API (still works but deprecated):\n * import { Heading } from '@fpkit/acss';\n * <Heading type=\"h2\">Section</Heading>\n *\n * @example\n * // New API (recommended):\n * import { Title } from '@fpkit/acss';\n * <Title level=\"h2\">Section</Title>\n *\n * @param {TitleProps} props - Component props (maps old API to new)\n * @returns {React.ReactElement} The rendered Title component\n */\nconst Heading = React.forwardRef<HTMLHeadingElement, TitleProps>(\n ({ type = \"h3\", ...props }, ref) => {\n // Development warning for deprecated usage\n if (process.env.NODE_ENV === \"development\") {\n // eslint-disable-next-line no-console\n console.warn(\n `[@fpkit/acss] Heading component is deprecated and will be removed in v3.0.0. ` +\n `Please use the Title component instead.\\n` +\n `Migration: <Heading type=\"${type}\"> → <Title level=\"${type}\">\\n` +\n `See documentation: https://fpkit.dev/components/title`\n );\n }\n\n // Map old 'type' prop to new 'level' prop\n return <Title level={type} ref={ref} {...props} />;\n }\n);\n\nHeading.displayName = \"Heading (Deprecated)\";\n\nexport default Heading;\n","import React from \"react\";\nimport UI from \"#components/ui\";\n\n/**\n * Valid HTML heading levels for semantic document structure.\n *\n * @remarks\n * Heading levels establish the document outline and hierarchy for screen readers.\n * Always maintain proper heading order (don't skip levels) for WCAG 2.1 compliance.\n *\n * @example\n * // ✅ GOOD: Proper heading hierarchy\n * <Title level=\"h1\">Main Page Title</Title>\n * <Title level=\"h2\">Section Heading</Title>\n * <Title level=\"h3\">Subsection Heading</Title>\n *\n * @example\n * // ❌ BAD: Skipping heading levels\n * <Title level=\"h1\">Main Title</Title>\n * <Title level=\"h4\">Skipped h2 and h3</Title>\n */\nexport type HeadingLevel = \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\";\n\n/**\n * Props for the Title component.\n *\n * @typeParam TLevel - The heading level to render (h1-h6)\n *\n * @property {HeadingLevel} level - The semantic heading level (h1-h6). Defaults to \"h2\".\n * @property {React.ReactNode} children - The text or elements to render inside the heading.\n * @property {string} [id] - Unique identifier for the heading, useful for anchor links.\n * @property {React.CSSProperties} [styles] - Inline styles to apply to the heading.\n * @property {string} [ui] - Data attribute for UI framework styling hooks.\n * @property {string} [className] - CSS class names to apply.\n *\n * @remarks\n * This interface extends the polymorphic UI component props, providing full access\n * to native HTML heading attributes and ARIA properties for accessibility.\n *\n * For AI assistants: This component ensures semantic HTML structure for document\n * outlines, which is critical for screen reader navigation and SEO.\n */\nexport type TitleProps = {\n /**\n * The semantic heading level to render.\n *\n * @default \"h2\"\n *\n * @remarks\n * Choose the appropriate level based on your document structure:\n * - h1: Page title (typically one per page)\n * - h2: Major sections\n * - h3-h6: Subsections and nested content\n *\n * WCAG 2.1 requires proper heading hierarchy for screen reader users.\n */\n level?: HeadingLevel;\n\n /**\n * The content to display in the heading.\n *\n * @remarks\n * Can be text, elements, or a combination. Ensure text content is meaningful\n * and descriptive for users navigating with screen readers.\n */\n children: React.ReactNode;\n\n /**\n * Unique identifier for the heading element.\n *\n * @remarks\n * Useful for:\n * - Creating anchor links to sections\n * - ARIA relationships (aria-labelledby, aria-describedby)\n * - Testing and automation\n */\n id?: string;\n\n /**\n * Data attribute for UI framework styling hooks.\n *\n * @remarks\n * Used by fpkit's CSS system to apply component-specific styles.\n * Automatically prefixed with \"data-ui\" when rendered.\n */\n ui?: string;\n\n /**\n * CSS class names to apply to the heading.\n *\n * @remarks\n * Prefer using the `ui` prop for fpkit styling, and this for\n * utility classes or custom overrides.\n */\n className?: string;\n} & React.ComponentPropsWithoutRef<typeof UI>;\n\n/**\n * Title - A semantic heading component for document structure and hierarchy.\n *\n * The Title component renders semantic HTML headings (h1-h6) with proper\n * accessibility support. It ensures WCAG 2.1 AA compliance by maintaining\n * semantic document structure for screen readers and assistive technologies.\n *\n * ## Key Features\n *\n * - **Semantic HTML**: Renders actual heading elements (h1-h6) for proper document outline\n * - **Accessibility**: Full ARIA support and keyboard navigation\n * - **Flexible Styling**: Supports fpkit's UI system, custom classes, and inline styles\n * - **Type Safety**: Fully typed with TypeScript for developer experience\n * - **Performance**: Memoized to prevent unnecessary re-renders\n *\n * ## Accessibility Considerations\n *\n * ### WCAG 2.1 AA Compliance\n *\n * - **1.3.1 Info and Relationships (Level A)**: Semantic heading elements preserve\n * document structure for screen readers\n * - **2.4.6 Headings and Labels (Level AA)**: Headings should be descriptive and\n * properly ordered\n * - **2.4.10 Section Headings (Level AAA)**: Use headings to organize content\n *\n * ### Best Practices\n *\n * 1. **Maintain Heading Hierarchy**: Don't skip levels (e.g., h1 → h3)\n * 2. **One h1 Per Page**: Use h1 for the main page title only\n * 3. **Descriptive Text**: Headings should clearly describe the following content\n * 4. **Avoid Empty Headings**: Always provide meaningful text content\n *\n * ## Usage Examples\n *\n * @example\n * // Basic usage with default h2\n * <Title>Section Heading</Title>\n *\n * @example\n * // Page title with explicit h1\n * <Title level=\"h1\">Welcome to Our Application</Title>\n *\n * @example\n * // Subsection with custom styling\n * <Title\n * level=\"h3\"\n * id=\"getting-started\"\n * className=\"text-primary\"\n * >\n * Getting Started\n * </Title>\n *\n * @example\n * // With fpkit UI data attribute\n * <Title level=\"h2\" ui=\"section-title\">\n * Features Overview\n * </Title>\n *\n * @example\n * // Accessible heading with aria-label for context\n * <Title level=\"h2\" aria-label=\"User dashboard overview\">\n * Dashboard\n * </Title>\n *\n * @example\n * // Complex heading with mixed content\n * <Title level=\"h2\" id=\"stats\">\n * <Icon name=\"chart\" aria-hidden=\"true\" />\n * <span>Statistics</span>\n * </Title>\n *\n * @example\n * // ✅ GOOD: Proper heading hierarchy\n * <Title level=\"h1\">Page Title</Title>\n * <Title level=\"h2\">Main Section</Title>\n * <Title level=\"h3\">Subsection</Title>\n *\n * @example\n * // ❌ BAD: Skipping heading levels (accessibility violation)\n * <Title level=\"h1\">Page Title</Title>\n * <Title level=\"h4\">Skipped h2 and h3</Title>\n *\n * @param {TitleProps} props - Component props\n * @returns {React.ReactElement} A semantic heading element\n *\n * @see {@link https://www.w3.org/WAI/WCAG21/Understanding/info-and-relationships.html WCAG 1.3.1}\n * @see {@link https://www.w3.org/WAI/WCAG21/Understanding/headings-and-labels.html WCAG 2.4.6}\n */\nconst Title = React.memo(\n React.forwardRef<HTMLHeadingElement, TitleProps>(\n (\n {\n level = \"h2\",\n id,\n styles,\n ui,\n children,\n className,\n ...props\n }: TitleProps,\n ref\n ) => {\n return (\n <UI\n as={level}\n id={id}\n styles={styles}\n data-ui={ui}\n className={className}\n ref={ref}\n {...props}\n >\n {children}\n </UI>\n );\n }\n )\n);\n\nTitle.displayName = \"Title\";\n\nexport default Title;\n"]}
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+
3
+ var chunkENTCUJ3A_cjs = require('./chunk-ENTCUJ3A.cjs');
4
+ var n = require('react');
5
+
6
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
7
+
8
+ var n__default = /*#__PURE__*/_interopDefault(n);
9
+
10
+ var s=n__default.default.forwardRef(({href:a,target:o,rel:r,children:p,styles:m,prefetch:t=!1,btnStyle:d,onClick:c,onPointerDown:l,...k},u)=>{let y=n__default.default.useMemo(()=>{if(o==="_blank"){let e=new Set(["noopener","noreferrer"]);return t&&e.add("prefetch"),r&&r.split(/\s+/).forEach(i=>{i&&e.add(i);}),Array.from(e).join(" ")}return r},[o,r,t]);return n__default.default.createElement(chunkENTCUJ3A_cjs.a,{as:"a",ref:u,href:a,target:o,rel:y,styles:m,"data-btn":d,onClick:c,onPointerDown:l,...k},p)});s.displayName="Link";var w=s;
11
+
12
+ exports.a = s;
13
+ exports.b = w;
14
+ //# sourceMappingURL=out.js.map
15
+ //# sourceMappingURL=chunk-33PNJ4LO.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/link/link.tsx"],"names":["React","Link","href","target","rel","children","styles","prefetch","btnStyle","onClick","onPointerDown","props","ref","computedRel","securityTokens","token","ui_default","link_default"],"mappings":"yCAAA,OAAOA,MAAW,QA+FX,IAAMC,EAAOD,EAAM,WACxB,CACE,CACE,KAAAE,EACA,OAAAC,EACA,IAAAC,EACA,SAAAC,EACA,OAAAC,EACA,SAAAC,EAAW,GACX,SAAAC,EACA,QAAAC,EACA,cAAAC,EACA,GAAGC,CACL,EACAC,IACG,CAWH,IAAMC,EAAcb,EAAM,QAAQ,IAAM,CACtC,GAAIG,IAAW,SAAU,CAEvB,IAAMW,EAAiB,IAAI,IAAI,CAAC,WAAY,YAAY,CAAC,EAGzD,OAAIP,GACFO,EAAe,IAAI,UAAU,EAI3BV,GACFA,EAAI,MAAM,KAAK,EAAE,QAASW,GAAU,CAC9BA,GAAOD,EAAe,IAAIC,CAAK,CACrC,CAAC,EAGI,MAAM,KAAKD,CAAc,EAAE,KAAK,GAAG,CAC5C,CAGA,OAAOV,CACT,EAAG,CAACD,EAAQC,EAAKG,CAAQ,CAAC,EAE1B,OACEP,EAAA,cAACgB,EAAA,CACC,GAAG,IACH,IAAKJ,EACL,KAAMV,EACN,OAAQC,EACR,IAAKU,EACL,OAAQP,EACR,WAAUE,EACV,QAASC,EACT,cAAeC,EACd,GAAGC,GAEHN,CACH,CAEJ,CACF,EAEAJ,EAAK,YAAc,OAEnB,IAAOgB,EAAQhB","sourcesContent":["import React from \"react\";\nimport UI from \"../ui\";\nimport type { LinkProps } from \"./link.types\";\n\n/**\n * Link - A semantic, accessible anchor component with enhanced security and styling.\n *\n * The Link component renders accessible `<a>` elements with automatic security\n * attributes for external links, customizable styling variants, and full WCAG 2.1\n * AA compliance. It supports traditional text links, button-styled links, and\n * programmatic focus management via ref forwarding.\n *\n * ## Features\n *\n * - 🔒 **Automatic Security**: External links get `rel=\"noopener noreferrer\"`\n * - ♿ **WCAG 2.1 AA Compliant**: Accessible focus indicators and semantic HTML\n * - 🎨 **Flexible Styling**: Text links, button links, and pill variants\n * - ⚡ **Performance**: Optional prefetch hints for faster navigation\n * - 🎯 **Ref Forwarding**: Direct DOM access for focus management and scroll\n * - 🧪 **Type-Safe**: Full TypeScript support with comprehensive prop types\n *\n * ## Accessibility\n *\n * - ✅ Semantic `<a>` element for proper keyboard navigation\n * - ✅ Focus indicators meet WCAG 2.4.7 (3:1 contrast ratio)\n * - ✅ Screen readers announce link purpose and destination\n * - ✅ External links include security attributes automatically\n * - ✅ Supports `aria-label` for icon-only or ambiguous links\n * - ✅ Ref forwarding enables skip-link patterns\n *\n * @example\n * // Basic internal link\n * <Link href=\"/about\">About Us</Link>\n *\n * @example\n * // External link with automatic security\n * <Link href=\"https://example.com\" target=\"_blank\">\n * Visit Example\n * </Link>\n *\n * @example\n * // Button-styled call-to-action link\n * <Link href=\"/signup\">\n * <b>Get Started</b>\n * </Link>\n *\n * @example\n * // Icon-only link with accessible label\n * <Link href=\"/settings\" aria-label=\"Open settings\">\n * <SettingsIcon aria-hidden=\"true\" />\n * </Link>\n *\n * @example\n * // Analytics tracking with onClick (includes keyboard users)\n * <Link\n * href=\"/products\"\n * onClick={(e) => trackEvent('link_click', { href: '/products' })}\n * >\n * Browse Products\n * </Link>\n *\n * @example\n * // Skip link with ref forwarding for focus management\n * const mainRef = useRef<HTMLAnchorElement>(null);\n *\n * <Link ref={mainRef} href=\"#main-content\">\n * Skip to main content\n * </Link>\n *\n * @example\n * // Custom styled link with CSS variables\n * <Link\n * href=\"/products\"\n * styles={{\n * '--link-color': '#0066cc',\n * '--link-decoration': 'underline',\n * }}\n * >\n * Browse Products\n * </Link>\n *\n * @example\n * // ✅ GOOD: Descriptive link text\n * <Link href=\"/docs/installation\">\n * Read installation guide\n * </Link>\n *\n * @example\n * // ❌ BAD: Generic link text (poor for screen readers)\n * <Link href=\"/docs/installation\">\n * Click here\n * </Link>\n *\n * @see {@link LinkProps} for complete prop documentation\n */\nexport const Link = React.forwardRef<HTMLAnchorElement, LinkProps>(\n (\n {\n href,\n target,\n rel,\n children,\n styles,\n prefetch = false,\n btnStyle,\n onClick,\n onPointerDown,\n ...props\n },\n ref\n ) => {\n /**\n * Compute the final `rel` attribute value with security defaults.\n *\n * For external links (target=\"_blank\"), we merge user-provided `rel` values\n * with security defaults `noopener noreferrer` to prevent:\n * - window.opener exploitation (noopener)\n * - Referrer header leakage (noreferrer)\n *\n * If prefetch is enabled, we also add the `prefetch` hint.\n */\n const computedRel = React.useMemo(() => {\n if (target === \"_blank\") {\n // Start with security defaults\n const securityTokens = new Set([\"noopener\", \"noreferrer\"]);\n\n // Add prefetch if enabled\n if (prefetch) {\n securityTokens.add(\"prefetch\");\n }\n\n // Merge with user-provided rel tokens (if any)\n if (rel) {\n rel.split(/\\s+/).forEach((token) => {\n if (token) securityTokens.add(token);\n });\n }\n\n return Array.from(securityTokens).join(\" \");\n }\n\n // For non-external links, use provided rel as-is\n return rel;\n }, [target, rel, prefetch]);\n\n return (\n <UI\n as=\"a\"\n ref={ref}\n href={href}\n target={target}\n rel={computedRel}\n styles={styles}\n data-btn={btnStyle}\n onClick={onClick}\n onPointerDown={onPointerDown}\n {...props}\n >\n {children}\n </UI>\n );\n }\n);\n\nLink.displayName = \"Link\";\n\nexport default Link;\n"]}
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ var chunkE2AJURUW_cjs = require('./chunk-E2AJURUW.cjs');
4
+ var chunkPNWIRCG3_cjs = require('./chunk-PNWIRCG3.cjs');
5
+ var chunkTON2YGMD_cjs = require('./chunk-TON2YGMD.cjs');
6
+ var f = require('react');
7
+
8
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
9
+
10
+ var f__default = /*#__PURE__*/_interopDefault(f);
11
+
12
+ var c=f__default.default.forwardRef(({type:a="text",name:b,value:y,defaultValue:I,placeholder:h,id:e,styles:v,classes:D,isDisabled:P,disabled:g,readOnly:n,required:s=!1,validationState:i="none",errorMessage:x,hintText:E,onChange:L,onBlur:M,onFocus:N,onKeyDown:o,onEnter:l,maxLength:$,minLength:F,pattern:H,autoComplete:R,autoFocus:T=!1,inputMode:w,...A},B)=>{let S=chunkPNWIRCG3_cjs.a(g,P),{disabledProps:p,handlers:j}=chunkTON2YGMD_cjs.a(S,{handlers:{onChange:L,onBlur:M,onKeyDown:r=>{r.key==="Enter"&&l&&l(r),o&&o(r);}},className:D}),k=i==="invalid",t=[];x&&e&&t.push(`${e}-error`),E&&e&&t.push(`${e}-hint`);let C=t.length>0?t.join(" "):void 0,K=h||(s?`* ${a} input`:`${a} input`);return f__default.default.createElement(chunkE2AJURUW_cjs.a,{as:"input",ref:B,id:e,type:a,name:b,value:y,defaultValue:I,placeholder:K,className:p.className,styles:v,readOnly:n,required:s,maxLength:$,minLength:F,pattern:H,autoComplete:R,autoFocus:T,inputMode:w,...j,onFocus:N,"aria-disabled":p["aria-disabled"],"aria-readonly":n,"aria-required":s,"aria-invalid":k,"aria-describedby":C,"data-validation":i,...A})});c.displayName="Input";var J=c;
13
+
14
+ exports.a = c;
15
+ exports.b = J;
16
+ //# sourceMappingURL=out.js.map
17
+ //# sourceMappingURL=chunk-4BZKFPEC.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/inputs.tsx"],"names":["React","Input","type","name","value","defaultValue","placeholder","id","styles","classes","isDisabled","disabled","readOnly","required","validationState","errorMessage","hintText","onChange","onBlur","onFocus","onKeyDown","onEnter","maxLength","minLength","pattern","autoComplete","autoFocus","inputMode","props","ref","isInputDisabled","resolveDisabledState","disabledProps","handlers","useDisabledState","e","isInvalid","describedByIds","ariaDescribedBy","accessiblePlaceholder","fp_default","inputs_default"],"mappings":"2HAAA,OAAOA,MAAW,QAoDX,IAAMC,EAAQD,EAAM,WACzB,CACE,CACE,KAAAE,EAAO,OACP,KAAAC,EACA,MAAAC,EACA,aAAAC,EACA,YAAAC,EACA,GAAAC,EACA,OAAAC,EACA,QAAAC,EACA,WAAAC,EACA,SAAAC,EACA,SAAAC,EACA,SAAAC,EAAW,GACX,gBAAAC,EAAkB,OAClB,aAAAC,EACA,SAAAC,EACA,SAAAC,EACA,OAAAC,EACA,QAAAC,EACA,UAAAC,EACA,QAAAC,EACA,UAAAC,EACA,UAAAC,EACA,QAAAC,EACA,aAAAC,EACA,UAAAC,EAAY,GACZ,UAAAC,EACA,GAAGC,CACL,EACAC,IACG,CAEH,IAAMC,EAAkBC,EAAqBpB,EAAUD,CAAU,EAG3D,CAAE,cAAAsB,EAAe,SAAAC,CAAS,EAAIC,EAClCJ,EACA,CACE,SAAU,CACR,SAAAb,EACA,OAAAC,EACA,UAAYiB,GAA6C,CAEnDA,EAAE,MAAQ,SAAWd,GACvBA,EAAQc,CAAC,EAGPf,GACFA,EAAUe,CAAC,CAEf,CAGF,EAEA,UAAW1B,CACb,CACF,EAGM2B,EAAYtB,IAAoB,UAGhCuB,EAA2B,CAAC,EAC9BtB,GAAgBR,GAClB8B,EAAe,KAAK,GAAG9B,CAAE,QAAQ,EAE/BS,GAAYT,GACd8B,EAAe,KAAK,GAAG9B,CAAE,OAAO,EAElC,IAAM+B,EACJD,EAAe,OAAS,EAAIA,EAAe,KAAK,GAAG,EAAI,OAGnDE,EACJjC,IAAgBO,EAAW,KAAKX,CAAI,SAAW,GAAGA,CAAI,UAExD,OACEF,EAAA,cAACwC,EAAA,CACC,GAAG,QACH,IAAKX,EACL,GAAItB,EACJ,KAAML,EACN,KAAMC,EACN,MAAOC,EACP,aAAcC,EACd,YAAakC,EACb,UAAWP,EAAc,UACzB,OAAQxB,EACR,SAAUI,EACV,SAAUC,EACV,UAAWS,EACX,UAAWC,EACX,QAASC,EACT,aAAcC,EACd,UAAWC,EACX,UAAWC,EAEV,GAAGM,EACJ,QAASd,EAET,gBAAea,EAAc,eAAe,EAC5C,gBAAepB,EACf,gBAAeC,EACf,eAAcuB,EACd,mBAAkBE,EAElB,kBAAiBxB,EAChB,GAAGc,EACN,CAEJ,CACF,EAEA3B,EAAM,YAAc,QACpB,IAAOwC,EAAQxC","sourcesContent":["import React from \"react\";\nimport FP from \"../fp\";\nimport type { InputProps } from \"./form.types\";\nimport { useDisabledState } from \"../../hooks/use-disabled-state\";\nimport { resolveDisabledState } from \"../../utils/accessibility\";\n\nexport type { InputProps } from \"./form.types\";\n\n/**\n * Input component - Accessible text input with validation support\n *\n * A flexible input component that supports various input types, validation states,\n * and proper ARIA attributes for accessibility. Integrates seamlessly with the\n * Field component for complete form control composition.\n *\n * @component\n * @example\n * // Basic text input\n * <Input\n * id=\"username\"\n * name=\"username\"\n * placeholder=\"Enter username\"\n * required\n * />\n *\n * @example\n * // Input with error state\n * <Input\n * id=\"email\"\n * type=\"email\"\n * validationState=\"invalid\"\n * errorMessage=\"Please enter a valid email\"\n * aria-describedby=\"email-error\"\n * />\n *\n * @example\n * // Controlled input with validation\n * <Input\n * id=\"password\"\n * type=\"password\"\n * value={password}\n * onChange={(e) => setPassword(e.target.value)}\n * minLength={8}\n * required\n * />\n *\n * @param {InputProps} props - Component props\n * @returns {JSX.Element} Input element with proper accessibility attributes\n *\n * @see {@link https://www.w3.org/WAI/WCAG21/Understanding/error-identification.html|WCAG 3.3.1 Error Identification}\n * @see {@link https://www.w3.org/WAI/WCAG21/Understanding/name-role-value.html|WCAG 4.1.2 Name, Role, Value}\n */\nexport const Input = React.forwardRef<HTMLInputElement, InputProps>(\n (\n {\n type = \"text\",\n name,\n value,\n defaultValue,\n placeholder,\n id,\n styles,\n classes,\n isDisabled, // Legacy support\n disabled,\n readOnly,\n required = false,\n validationState = \"none\",\n errorMessage,\n hintText,\n onChange,\n onBlur,\n onFocus,\n onKeyDown,\n onEnter,\n maxLength,\n minLength,\n pattern,\n autoComplete,\n autoFocus = false,\n inputMode,\n ...props\n },\n ref\n ) => {\n // Support both `disabled` and `isDisabled` props (legacy compatibility)\n const isInputDisabled = resolveDisabledState(disabled, isDisabled);\n\n // Use the disabled state hook with enhanced API for automatic className merging\n const { disabledProps, handlers } = useDisabledState<HTMLInputElement>(\n isInputDisabled,\n {\n handlers: {\n onChange,\n onBlur,\n onKeyDown: (e: React.KeyboardEvent<HTMLInputElement>) => {\n // Handle Enter key press for accessibility\n if (e.key === \"Enter\" && onEnter) {\n onEnter(e);\n }\n // Always call consumer's onKeyDown if provided\n if (onKeyDown) {\n onKeyDown(e);\n }\n },\n // Note: onFocus is NOT wrapped to allow focus on disabled inputs\n // This is handled automatically by useDisabledState\n },\n // Automatic className merging - hook combines disabled class with user classes\n className: classes,\n }\n );\n\n // Determine aria-invalid based on validation state\n const isInvalid = validationState === \"invalid\";\n\n // Generate describedby IDs for error and hint text\n const describedByIds: string[] = [];\n if (errorMessage && id) {\n describedByIds.push(`${id}-error`);\n }\n if (hintText && id) {\n describedByIds.push(`${id}-hint`);\n }\n const ariaDescribedBy =\n describedByIds.length > 0 ? describedByIds.join(\" \") : undefined;\n\n // Generate accessible placeholder if not provided\n const accessiblePlaceholder =\n placeholder || (required ? `* ${type} input` : `${type} input`);\n\n return (\n <FP\n as=\"input\"\n ref={ref}\n id={id}\n type={type}\n name={name}\n value={value}\n defaultValue={defaultValue}\n placeholder={accessiblePlaceholder}\n className={disabledProps.className}\n styles={styles}\n readOnly={readOnly}\n required={required}\n maxLength={maxLength}\n minLength={minLength}\n pattern={pattern}\n autoComplete={autoComplete}\n autoFocus={autoFocus}\n inputMode={inputMode}\n // Event handlers (wrapped by useDisabledState)\n {...handlers}\n onFocus={onFocus}\n // ARIA attributes\n aria-disabled={disabledProps[\"aria-disabled\"]}\n aria-readonly={readOnly}\n aria-required={required}\n aria-invalid={isInvalid}\n aria-describedby={ariaDescribedBy}\n // Data attributes for styling\n data-validation={validationState}\n {...props}\n />\n );\n }\n);\n\nInput.displayName = \"Input\";\nexport default Input;\n"]}
@@ -1,9 +1,9 @@
1
- import { a } from './chunk-NE6YXTMC.js';
2
- import * as m from 'react';
3
- import m__default from 'react';
1
+ import { a as a$1 } from './chunk-HHLNOC5T.js';
2
+ import * as a from 'react';
3
+ import a__default from 'react';
4
4
 
5
- var zo={display:"inline-flex",alignItems:"center",width:"auto"},eo=({fill:o,strokeColor:e,styles:t,size:l=24,role:s="img",alt:i,children:p,...Io})=>m.createElement("svg",{fill:o,stroke:e,height:l,width:l,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",style:t,role:s,"aria-label":i,...Io},p),r=eo;eo.displayName="Svg";eo.styles=zo;var wo={...r.styles,fill:"none",stroke:"currentColor"},to=({strokeColor:o="currentColor",fill:e="none",size:t=16,styles:l,role:s="img",alt:i="Code icon",...p}={})=>m.createElement(r,{size:t,role:s,alt:i,styles:l,...p},m.createElement("g",{fill:e,stroke:o,strokeLinecap:"square",strokeLinejoin:"miter",strokeMiterlimit:"10",strokeWidth:"2"},m.createElement("rect",{height:"22",width:"18",fill:"none",stroke:o,x:"3",y:"1"}),m.createElement("polyline",{fill:"none",points:"9 9 6 12 9 15"}),m.createElement("polyline",{fill:"none",points:"15 15 18 12 15 9"})));to.styles=wo;var Co={...r.styles,fill:"currentColor",stroke:"none"},k=({strokeColor:o="currentColor",fill:e="none",size:t=16,styles:l=Co,role:s="img",alt:i="Home icon",...p})=>m__default.createElement(r,{size:t,styles:l,role:s,alt:i,...p},m__default.createElement("g",{fill:e,stroke:o,strokeLinecap:"square",strokeLinejoin:"miter",strokeMiterlimit:"10",strokeWidth:"2"},m__default.createElement("polygon",{fill:"none",points:"12 2 2 10 2 23 9 23 9 16 15 16 15 23 22 23 22 10 12 2",stroke:o})));k.displayName="Home";k.styles=Co;var Lo={...r.styles,fill:"currentColor"},P=({fill:o="gray",size:e=24,role:t="img",alt:l="Add icon",...s})=>m.createElement(r,{size:e,role:t,alt:l,...s},m.createElement("g",{fill:o},m.createElement("path",{d:"M17,11h-4V7c0-.553-.447-1-1-1s-1,.447-1,1v4H7c-.553,0-1,.447-1,1s.447,1,1,1h4v4c0,.553,.447,1,1,1s1-.447,1-1v-4h4c.553,0,1-.447,1-1s-.447-1-1-1Z",fill:o})));P.styles=Lo;P.displayName="Add";var Ao={...r.styles},h=({strokeColor:o="currentColor",fill:e="currentColor",size:t=16,styles:l,role:s="img",alt:i="Arrow pointing left",...p})=>m.createElement(r,{size:t,styles:l,role:s,...p,alt:i},m.createElement("g",{fill:e,strokeMiterlimit:"10"},m.createElement("line",{fill:"none",stroke:o,strokeLinecap:"butt",strokeLinejoin:"miter",strokeWidth:"2",x1:"22",x2:"2",y1:"12",y2:"12"}),m.createElement("polyline",{fill:"none",points:"9,19 2,12 9,5 ",stroke:o,strokeLinecap:"square",strokeLinejoin:"miter",strokeWidth:"2"})));h.styles=Ao;h.displayName="ArrowLeft";var Mo={...r.styles},C=({size:o=16,strokeColor:e="currentcolor",styles:t,role:l="img",alt:s="Chat icon",...i})=>m.createElement(r,{size:o,styles:t,role:l,alt:s,...i},m.createElement("g",{fill:e,strokeMiterlimit:"10"},m.createElement("path",{d:"M21,2H3c-1.105,0-2,.895-2,2V15c0,1.105,.895,2,2,2h5l4,5,4-5h5c1.105,0,2-.895,2-2V4c0-1.105-.895-2-2-2Z",fill:"none",stroke:e,strokeLinecap:"square",strokeLinejoin:"miter",strokeWidth:"2"})));C.styles=Mo;C.displayName="Chat";var No={...r.styles},I=({fill:o="currentColor",styles:e,size:t=16,role:l="img",alt:s="Down icon",...i})=>m.createElement(r,{size:t,role:l,styles:e,alt:s,...i},m.createElement("g",{fill:o,strokeMiterlimit:"10"},m.createElement("line",{fill:"none",stroke:o,strokeLinecap:"butt",strokeLinejoin:"miter",strokeWidth:"2",x1:"12",x2:"12",y1:"2",y2:"22"}),m.createElement("polyline",{fill:"none",points:"19,15 12,22 5,15 ",stroke:o,strokeLinecap:"square",strokeLinejoin:"miter",strokeWidth:"2"})));I.styles=No;I.displayName="ArrowDown";var Zo={...r.styles,fill:"none",stroke:"currentColor"},z=({strokeColor:o="currentColor",styles:e,size:t=16,role:l="img",alt:s="Up arrow icon",...i})=>m.createElement(r,{size:t,styles:e,role:l,alt:s,...i},m.createElement("g",{fill:"none",stroke:o,strokeLinecap:"square",strokeLinejoin:"miter",strokeMiterlimit:"10",strokeWidth:"2"},m.createElement("line",{fill:"none",strokeLinecap:"butt",x1:"12",x2:"12",y1:"22",y2:"2"}),m.createElement("polyline",{fill:"none",points:"5,9 12,2 19,9 ",stroke:o})));z.displayName="ArrowUp";z.style=Zo;({...r.styles,fill:"currentColor"});var so=({size:o=16,fill:e="currentColor",strokeColor:t="currentColor",styles:l,role:s="img",alt:i="Right arrow icon",...p})=>m__default.createElement(r,{size:o,styles:l,role:s,alt:i,...p},m__default.createElement("g",{fill:e,stroke:t,strokeLinecap:"square",strokeLinejoin:"miter",strokeMiterlimit:"10",strokeWidth:"2"},m__default.createElement("line",{fill:"none",strokeLinecap:"butt",x1:"2",x2:"22",y1:"12",y2:"12"}),m__default.createElement("polyline",{fill:"none",points:"15,5 22,12 15,19 ",stroke:t})));so.displayName="ArrowRight";var Ro={...r.styles,fill:"none",stroke:"currentColor"},A=({size:o=16,fill:e="none",strokeColor:t="currentColor",styles:l,alt:s="User Icon",role:i,...p})=>m__default.createElement(r,{size:o,role:i,alt:s,styles:l,...p},m__default.createElement("g",{fill:e,stroke:t,strokeLinecap:"square",strokeLinejoin:"miter",strokeMiterlimit:"10",strokeWidth:"2"},m__default.createElement("circle",{cx:"12",cy:"5.5",fill:"none",r:"4.5"}),m__default.createElement("path",{d:"M12,14c-4.971,0-9,4.029-9,9H21c0-4.971-4.029-9-9-9Z",fill:"none",stroke:t})));A.styles=Ro;A.displayName="User";var Uo={fill:"currentColor"},M=({size:o=16,fill:e="currentColor",styles:t,role:l="img",alt:s="Right arrow icon",...i})=>m__default.createElement(r,{size:o,alt:s,styles:t,role:l,...i},m__default.createElement("g",{fill:e},m__default.createElement("path",{d:"M7,23a1,1,0,0,1-.707-1.707L15.586,12,6.293,2.707A1,1,0,0,1,7.707,1.293l10,10a1,1,0,0,1,0,1.414l-10,10A1,1,0,0,1,7,23Z",fill:e})));M.displayName="Right";M.styles=Uo;var Ho={...r.styles,fill:"currentColor"},N=({fill:o="currentColor",size:e=16,styles:t,role:l="img",alt:s="Left arrow icon",...i})=>m__default.createElement(r,{size:e,styles:t,alt:s,role:l,...i},m__default.createElement("g",{fill:o},m__default.createElement("path",{d:"M17,23a1,1,0,0,1-.707-.293l-10-10a1,1,0,0,1,0-1.414l10-10a1,1,0,0,1,1.414,1.414L8.414,12l9.293,9.293A1,1,0,0,1,17,23Z",fill:o})));N.displayName="Left";N.styles=Ho;var qo={fill:"currentColor"},Z=({size:o=24,fill:e="currentColor",styles:t,role:l="img",alt:s="Minus icon",...i})=>m__default.createElement(r,{size:o,styles:t,role:l,alt:s,...i},m__default.createElement("g",{fill:e},m__default.createElement("path",{d:"M17,11H7c-.553,0-1,.447-1,1s.447,1,1,1h10c.553,0,1-.447,1-1s-.447-1-1-1Z",fill:e})));Z.displayName="Minus";Z.styles=qo;var jo={fill:"currenStyle"},R=({size:o=16,fill:e="currentColor",styles:t,role:l="img",alt:s="Remove icon",...i})=>m__default.createElement(r,{size:o,alt:s,styles:t,role:l,...i},m__default.createElement("g",{fill:e},m__default.createElement("path",{d:"M19.7,4.3c-0.4-0.4-1-0.4-1.4,0L12,10.6L5.7,4.3c-0.4-0.4-1-0.4-1.4,0s-0.4,1,0,1.4l6.3,6.3l-6.3,6.3 c-0.4,0.4-0.4,1,0,1.4C4.5,19.9,4.7,20,5,20s0.5-0.1,0.7-0.3l6.3-6.3l6.3,6.3c0.2,0.2,0.5,0.3,0.7,0.3s0.5-0.1,0.7-0.3 c0.4-0.4,0.4-1,0-1.4L13.4,12l6.3-6.3C20.1,5.3,20.1,4.7,19.7,4.3z",fill:e})));R.displayName="Remove";R.styles=jo;var Wo={...r.styles,stroke:"currentColor"},H=({size:o=16,strokeColor:e="currentColor",styles:t,role:l="img",alt:s="Copy icon",...i})=>m__default.createElement(r,{size:o,styles:t,role:l,alt:s,...i},m__default.createElement("g",{fill:"none",stroke:e,strokeLinecap:"square",strokeLinejoin:"miter",strokeMiterlimit:"10",strokeWidth:"2"},m__default.createElement("polyline",{fill:"none",points:"8 19 2 19 2 1 17 1 17 6",stroke:e}),m__default.createElement("rect",{height:"13",width:"10",fill:"none",x:"12",y:"10"})));H.displayName="Copy";H.styles=Wo;var Vo={...r.styles},q=({size:o=16,fill:e="currentColor",styles:t,role:l="img",alt:s="Up arrow icon",...i})=>m__default.createElement(r,{size:o,alt:s,styles:t,role:l,...i},m__default.createElement("g",{fill:e},m__default.createElement("path",{d:"M22,18a1,1,0,0,1-.707-.293L12,8.414,2.707,17.707a1,1,0,0,1-1.414-1.414l10-10a1,1,0,0,1,1.414,0l10,10A1,1,0,0,1,22,18Z",fill:e})));q.displayName="Up";q.styles=Vo;var Do={...r.styles},W=({size:o=16,fill:e="currentColor",styles:t,role:l="img",alt:s="Down arrow icon",...i})=>m.createElement(r,{size:o,alt:s,styles:t,role:l,...i},m.createElement("g",{fill:e},m.createElement("path",{d:"M12,18a1,1,0,0,1-.707-.293l-10-10A1,1,0,0,1,2.707,6.293L12,15.586l9.293-9.293a1,1,0,1,1,1.414,1.414l-10,10A1,1,0,0,1,12,18Z",fill:e})));W.displayName="Down";W.styles=Do;function fo({size:o=16,fill:e,strokeColor:t="currentColor",styles:l,role:s="img",alt:i="Star icon",...p}){return m__default.createElement(r,{size:o,alt:i,styles:l,role:s,...p},m__default.createElement("g",{fill:e,stroke:t,strokeLinecap:"square",strokeLinejoin:"miter",strokeMiterlimit:"10",strokeWidth:"2"},m__default.createElement("polygon",{fill:"none",points:"12,2.49 15.09,8.75 22,9.754 17,14.628 18.18,21.51 12,18.262 5.82,21.51 7,14.628 2,9.754 8.91,8.75 ",stroke:t})))}fo.displayName="Star";var Eo={...r.styles,fill:"none",stroke:"currentColor"},D=({strokeColor:o="currentColor",styles:e,size:t=24,role:l="img",alt:s="Up arrow icon",...i})=>m.createElement(r,{size:t,styles:e,role:l,alt:s,...i},m.createElement("g",{fill:"none","stroke-linecap":"square","stroke-linejoin":"miter","stroke-miterlimit":"10"},m.createElement("path",{d:"M7 21L7 3L19 12L7 21Z",stroke:o,"stroke-width":"2",fill:"none"})," "));D.displayName="PlayIcon";D.style=Eo;var Jo={...r.styles,fill:"none",stroke:"currentColor"},E=({strokeColor:o="currentColor",styles:e,size:t=16,role:l="img",alt:s="Up arrow icon",...i})=>m.createElement(r,{size:t,styles:e,role:l,alt:s,...i},m.createElement("g",{fill:"none","stroke-linecap":"square","stroke-linejoin":"miter","stroke-miterlimit":"10"},m.createElement("rect",{x:"2",y:"2",width:"6",height:"20",fill:"none",stroke:o,"stroke-width":"2"}),m.createElement("rect",{x:"16",y:"2",width:"6",height:"20",fill:"none",stroke:o,"stroke-width":"2"})));E.displayName="Pause";E.style=Jo;var Xo={...r.styles,fill:"none",stroke:"currentColor"},J=({strokeColor:o="currentColor",styles:e,size:t=16,role:l="img",alt:s="Up arrow icon",...i})=>m.createElement(r,{size:t,styles:e,role:l,alt:s,...i},m.createElement("g",{fill:"none","stroke-linecap":"square","stroke-linejoin":"miter","stroke-miterlimit":"10"},m.createElement("path",{d:"M20 21L20 3",stroke:o,"stroke-width":"2",fill:"none"}),m.createElement("path",{d:"M4 4L4 20L16 12L4 4Z",stroke:o,"stroke-width":"2",fill:"none"})));J.displayName="Resume";J.style=Xo;var bo={...r.styles,fill:"none",stroke:"currentColor"},b=({strokeColor:o="currentColor",styles:e,size:t=16,role:l="img",alt:s="Up arrow icon",...i})=>m.createElement(r,{size:t,styles:e,role:l,alt:s,...i},m.createElement("g",{fill:"none","stroke-linecap":"square","stroke-linejoin":"miter","stroke-miterlimit":"10"},m.createElement("rect",{x:"2",y:"2",fill:"none",stroke:o,"stroke-width":"2",width:"20",height:"20"})));b.displayName="Stop";b.style=bo;var Qo={...r.styles,fill:"none",stroke:"currentColor"},B=({strokeColor:o="currentColor",styles:e,size:t=24,role:l="img",alt:s="Stop icon",...i})=>m.createElement(r,{size:t,styles:e,role:l,alt:s,...i},m.createElement("g",{fill:o},m.createElement("path",{fill:o,d:"M22,1H2C1.447,1,1,1.447,1,2v20c0,0.553,0.447,1,1,1h20c0.553,0,1-0.447,1-1V2C23,1.447,22.553,1,22,1z"})));B.displayName="StopSolid";B.style=Qo;var Bo={...r.styles,fill:"none",stroke:"currentColor"},G=({strokeColor:o="currentColor",styles:e,size:t=24,role:l="img",alt:s="Up arrow icon",...i})=>m.createElement(r,{size:t,styles:e,role:l,alt:s,...i},m.createElement("g",{fill:o},m.createElement("path",{fill:o,d:"M20.555,11.168l-15-10c-0.307-0.204-0.702-0.224-1.026-0.05C4.203,1.292,4,1.631,4,2v20 c0,0.369,0.203,0.708,0.528,0.882C4.676,22.961,4.838,23,5,23c0.194,0,0.388-0.057,0.555-0.168l15-10C20.833,12.646,21,12.334,21,12 S20.833,11.354,20.555,11.168z"})));G.displayName="PlaySolid";G.style=Bo;var Fo={...r.styles,fill:"none",stroke:"currentColor"},K=({strokeColor:o="currentColor",styles:e,size:t=24,role:l="img",alt:s="Pause arrow icon",...i})=>m.createElement(r,{size:t,styles:e,role:l,alt:s,...i},m.createElement("g",{fill:o},m.createElement("path",{d:"M7,1H2A1,1,0,0,0,1,2V22a1,1,0,0,0,1,1H7a1,1,0,0,0,1-1V2A1,1,0,0,0,7,1Z",fill:o}),m.createElement("path",{d:"M22,1H17a1,1,0,0,0-1,1V22a1,1,0,0,0,1,1h5a1,1,0,0,0,1-1V2A1,1,0,0,0,22,1Z",fill:o})));K.displayName="PauseSolid";K.style=Fo;var Go={...r.styles,fill:"none",stroke:"currentColor"},O=({strokeColor:o="currentColor",styles:e,size:t=16,role:l="img",alt:s="Up arrow icon",...i})=>m.createElement(r,{size:t,styles:e,role:l,alt:s,...i},m.createElement("g",{fill:o},m.createElement("path",{fill:o,"fill-rule":"evenodd","clip-rule":"evenodd",d:"M3 21.8685L17.8028 12L3 2.1315L3 21.8685Z"}),m.createElement("path",{fill:o,"fill-rule":"evenodd","clip-rule":"evenodd",d:"M19 2L19 22L21 22L21 2L19 2Z"})));O.displayName="ResumeSolid";O.style=Go;var yo=({fill:o="currentColor",size:e=24,role:t="img",alt:l="Info icon",...s})=>m.createElement(r,{size:e,role:t,alt:l,...s},m.createElement("g",{fill:o},m.createElement("path",{d:"M11 17h2v-6h-2v6zm1-15C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zM11 9h2V7h-2v2z",fill:o})));yo.displayName="Info";var uo=({fill:o="currentColor",size:e=24,role:t="img",alt:l="Add icon",...s})=>m.createElement(r,{size:e,role:t,alt:l,...s},m.createElement("g",{fill:o},m.createElement("path",{d:"M23.707,6.736,17.263.293A1,1,0,0,0,16.556,0H7.444a1,1,0,0,0-.707.293L.293,6.736A1,1,0,0,0,0,7.443v9.114a1,1,0,0,0,.293.707l6.444,6.443A1,1,0,0,0,7.444,24h9.112a1,1,0,0,0,.707-.293l6.444-6.443A1,1,0,0,0,24,16.557V7.443A1,1,0,0,0,23.707,6.736ZM13.645,5,13,14H11l-.608-9ZM12,20a2,2,0,1,1,2-2A2,2,0,0,1,12,20Z",fill:o})));uo.displayName="AlertSolid";var go=({fill:o="currentColor",size:e=24,role:t="img",alt:l="Add icon",...s})=>m.createElement(r,{size:e,role:t,alt:l,...s},m.createElement("g",{fill:o},m.createElement("path",{fill:o,d:"M8,17.06V20h8v-2.94c3.059-1.514,5-4.607,5-8.06c0-4.963-4.038-9-9-9S3,4.037,3,9 C3,12.452,4.941,15.546,8,17.06z M7,9c0-2.757,2.243-5,5-5h1v2h-1c-1.654,0-3,1.346-3,3v1H7V9z"})," ",m.createElement("path",{fill:o,d:"M8,22v1c0,0.553,0.448,1,1,1h6c0.552,0,1-0.447,1-1v-1H8z"})));go.displayName="InfoSolid";var So=({fill:o="currentColor",size:e=24,role:t="img",alt:l="Add icon",...s})=>m.createElement(r,{size:e,role:t,alt:l,...s},m.createElement("g",{fill:o},m.createElement("path",{d:"M12,0C5.383,0,0,5.383,0,12s5.383,12,12,12,12-5.383,12-12S18.617,0,12,0Zm0,19.5c-.69,0-1.25-.56-1.25-1.25s.56-1.25,1.25-1.25,1.25,.56,1.25,1.25-.56,1.25-1.25,1.25Zm2.688-7.198c-1.444,1.224-1.688,1.667-1.688,2.198,0,.553-.447,1-1,1s-1-.447-1-1c0-1.434,.807-2.379,2.395-3.724,.447-.38,1.844-1.72,1.024-3.046-.532-.861-2.517-.984-4.162-.256-.507,.223-1.096-.006-1.319-.511-.223-.505,.006-1.096,.511-1.319,2.33-1.03,5.463-.924,6.672,1.035,1.103,1.784,.554,3.938-1.433,5.622Z",fill:o})));So.displayName="QuestionSolid";var ko=({fill:o="currentColor",size:e=24,role:t="img",alt:l="Add icon",...s})=>m.createElement(r,{size:e,role:t,alt:l,...s},m.createElement("g",{fill:o},m.createElement("path",{d:"M23.641,18.485L14.732,1.643C13.931,.134,12.059-.44,10.55,.361c-.546,.29-.992,.736-1.282,1.282L.359,18.485c-.793,1.504-.217,3.367,1.288,4.16,.445,.235,.942,.357,1.445,.355H20.908c1.7,.005,3.083-1.369,3.088-3.07,.002-.504-.12-1-.355-1.445Zm-11.641,1.515c-.828,0-1.5-.672-1.5-1.5s.672-1.5,1.5-1.5,1.5,.672,1.5,1.5-.672,1.5-1.5,1.5Zm.53-5h-1.061c-.264,0-.483-.205-.499-.469l-.438-7c-.018-.288,.211-.531,.499-.531h1.936c.288,0,.517,.243,.499,.531l-.438,7c-.016,.264-.235,.469-.499,.469Z",fill:o})));ko.displayName="WarnSolid";var xo=({fill:o="currentColor",size:e=24,role:t="img",alt:l="Add icon",...s})=>m.createElement(r,{size:e,role:t,alt:l,...s},m.createElement("g",{fill:o},m.createElement("path",{d:"M12,0C5.373,0,0,5.373,0,12s5.373,12,12,12,12-5.373,12-12C23.981,5.381,18.619,.019,12,0Zm7.207,7.707l-9,9c-.195,.195-.451,.293-.707,.293s-.512-.098-.707-.293l-4-4c-.391-.391-.391-1.023,0-1.414s1.023-.391,1.414,0l3.293,3.293L17.793,6.293c.391-.391,1.023-.391,1.414,0s.391,1.023,0,1.414Z",fill:o})));xo.displayName="SuccessSolid";var Po=({fill:o="currentColor",size:e=24,role:t="img",alt:l="Add icon",...s})=>m.createElement(r,{size:e,role:t,alt:l,...s},m.createElement("g",{fill:o},m.createElement("path",{d:"M20,1H4c-1.654,0-3,1.346-3,3V20c0,1.654,1.346,3,3,3H20c1.654,0,3-1.346,3-3V4c0-1.654-1.346-3-3-3ZM11,7c0-.553,.448-1,1-1s1,.447,1,1v6c0,.553-.448,1-1,1s-1-.447-1-1V7Zm1,11.5c-.69,0-1.25-.56-1.25-1.25s.56-1.25,1.25-1.25,1.25,.56,1.25,1.25-.56,1.25-1.25,1.25Z",fill:o})));Po.displayName="AlertSquareSolid";var Oo={display:"inline-flex",direction:"row",gap:".2rem",placeItems:"center",width:"auto"},n=({id:o,classes:e,children:t,styles:l,...s})=>m__default.createElement(a,{id:o,as:"span",styles:l,className:e,"data-icon":!0,"data-style":"icons",...s},t),lt=n;n.displayName="Icon";n.Add=P;n.ArrowDown=I;n.ArrowLeft=h;n.ArrowRight=so;n.ArrowUp=z;n.Chat=C;n.Code=to;n.Copy=H;n.Down=W;n.Home=k;n.Info=yo;n.InfoSolid=go;n.AlertSolid=uo;n.Left=N;n.Minus=Z;n.Pause=E;n.PauseSolid=K;n.Play=D;n.PlaySolid=G;n.Remove=R;n.Resume=J;n.ResumeSolid=O;n.Right=M;n.Star=fo;n.Stop=b;n.StopSolid=B;n.Up=q;n.User=A;n.styles=Oo;n.QuestionSolid=So;n.WarnSolid=ko;n.SuccessSolid=xo;n.AlertSquareSolid=Po;n.Close=n.Remove;
5
+ var zo={display:"inline-flex",alignItems:"center",width:"auto"},to=({fill:o,strokeColor:e,styles:t,size:l=24,role:s="img",alt:i,children:p,...eo})=>a.createElement("svg",{fill:o,stroke:e,height:l,width:l,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",style:t,role:s,"aria-label":i,...eo},p),r=to;to.displayName="Svg";to.styles=zo;var wo={...r.styles,fill:"none",stroke:"currentColor"},lo=({strokeColor:o="currentColor",fill:e="none",size:t=16,styles:l,role:s="img",alt:i="Code icon",...p}={})=>a.createElement(r,{size:t,role:s,alt:i,styles:l,...p},a.createElement("g",{fill:e,stroke:o,strokeLinecap:"square",strokeLinejoin:"miter",strokeMiterlimit:"10",strokeWidth:"2"},a.createElement("rect",{height:"22",width:"18",fill:"none",stroke:o,x:"3",y:"1"}),a.createElement("polyline",{fill:"none",points:"9 9 6 12 9 15"}),a.createElement("polyline",{fill:"none",points:"15 15 18 12 15 9"})));lo.styles=wo;var Io={...r.styles,fill:"currentColor",stroke:"none"},k=({strokeColor:o="currentColor",fill:e="none",size:t=16,styles:l=Io,role:s="img",alt:i="Home icon",...p})=>a__default.createElement(r,{size:t,styles:l,role:s,alt:i,...p},a__default.createElement("g",{fill:e,stroke:o,strokeLinecap:"square",strokeLinejoin:"miter",strokeMiterlimit:"10",strokeWidth:"2"},a__default.createElement("polygon",{fill:"none",points:"12 2 2 10 2 23 9 23 9 16 15 16 15 23 22 23 22 10 12 2",stroke:o})));k.displayName="Home";k.styles=Io;var Lo={...r.styles,fill:"currentColor"},P=({fill:o="gray",size:e=24,role:t="img",alt:l="Add icon",...s})=>a.createElement(r,{size:e,role:t,alt:l,...s},a.createElement("g",{fill:o},a.createElement("path",{d:"M17,11h-4V7c0-.553-.447-1-1-1s-1,.447-1,1v4H7c-.553,0-1,.447-1,1s.447,1,1,1h4v4c0,.553,.447,1,1,1s1-.447,1-1v-4h4c.553,0,1-.447,1-1s-.447-1-1-1Z",fill:o})));P.styles=Lo;P.displayName="Add";var Ao={...r.styles},h=({strokeColor:o="currentColor",fill:e="currentColor",size:t=16,styles:l,role:s="img",alt:i="Arrow pointing left",...p})=>a.createElement(r,{size:t,styles:l,role:s,...p,alt:i},a.createElement("g",{fill:e,strokeMiterlimit:"10"},a.createElement("line",{fill:"none",stroke:o,strokeLinecap:"butt",strokeLinejoin:"miter",strokeWidth:"2",x1:"22",x2:"2",y1:"12",y2:"12"}),a.createElement("polyline",{fill:"none",points:"9,19 2,12 9,5 ",stroke:o,strokeLinecap:"square",strokeLinejoin:"miter",strokeWidth:"2"})));h.styles=Ao;h.displayName="ArrowLeft";var Mo={...r.styles},C=({size:o=16,strokeColor:e="currentcolor",styles:t,role:l="img",alt:s="Chat icon",...i})=>a.createElement(r,{size:o,styles:t,role:l,alt:s,...i},a.createElement("g",{fill:e,strokeMiterlimit:"10"},a.createElement("path",{d:"M21,2H3c-1.105,0-2,.895-2,2V15c0,1.105,.895,2,2,2h5l4,5,4-5h5c1.105,0,2-.895,2-2V4c0-1.105-.895-2-2-2Z",fill:"none",stroke:e,strokeLinecap:"square",strokeLinejoin:"miter",strokeWidth:"2"})));C.styles=Mo;C.displayName="Chat";var No={...r.styles},I=({fill:o="currentColor",styles:e,size:t=16,role:l="img",alt:s="Down icon",...i})=>a.createElement(r,{size:t,role:l,styles:e,alt:s,...i},a.createElement("g",{fill:o,strokeMiterlimit:"10"},a.createElement("line",{fill:"none",stroke:o,strokeLinecap:"butt",strokeLinejoin:"miter",strokeWidth:"2",x1:"12",x2:"12",y1:"2",y2:"22"}),a.createElement("polyline",{fill:"none",points:"19,15 12,22 5,15 ",stroke:o,strokeLinecap:"square",strokeLinejoin:"miter",strokeWidth:"2"})));I.styles=No;I.displayName="ArrowDown";var Zo={...r.styles,fill:"none",stroke:"currentColor"},z=({strokeColor:o="currentColor",styles:e,size:t=16,role:l="img",alt:s="Up arrow icon",...i})=>a.createElement(r,{size:t,styles:e,role:l,alt:s,...i},a.createElement("g",{fill:"none",stroke:o,strokeLinecap:"square",strokeLinejoin:"miter",strokeMiterlimit:"10",strokeWidth:"2"},a.createElement("line",{fill:"none",strokeLinecap:"butt",x1:"12",x2:"12",y1:"22",y2:"2"}),a.createElement("polyline",{fill:"none",points:"5,9 12,2 19,9 ",stroke:o})));z.displayName="ArrowUp";z.style=Zo;({...r.styles,fill:"currentColor"});var io=({size:o=16,fill:e="currentColor",strokeColor:t="currentColor",styles:l,role:s="img",alt:i="Right arrow icon",...p})=>a__default.createElement(r,{size:o,styles:l,role:s,alt:i,...p},a__default.createElement("g",{fill:e,stroke:t,strokeLinecap:"square",strokeLinejoin:"miter",strokeMiterlimit:"10",strokeWidth:"2"},a__default.createElement("line",{fill:"none",strokeLinecap:"butt",x1:"2",x2:"22",y1:"12",y2:"12"}),a__default.createElement("polyline",{fill:"none",points:"15,5 22,12 15,19 ",stroke:t})));io.displayName="ArrowRight";var Ro={...r.styles,fill:"none",stroke:"currentColor"},A=({size:o=16,fill:e="none",strokeColor:t="currentColor",styles:l,alt:s="User Icon",role:i,...p})=>a__default.createElement(r,{size:o,role:i,alt:s,styles:l,...p},a__default.createElement("g",{fill:e,stroke:t,strokeLinecap:"square",strokeLinejoin:"miter",strokeMiterlimit:"10",strokeWidth:"2"},a__default.createElement("circle",{cx:"12",cy:"5.5",fill:"none",r:"4.5"}),a__default.createElement("path",{d:"M12,14c-4.971,0-9,4.029-9,9H21c0-4.971-4.029-9-9-9Z",fill:"none",stroke:t})));A.styles=Ro;A.displayName="User";var Uo={fill:"currentColor"},M=({size:o=16,fill:e="currentColor",styles:t,role:l="img",alt:s="Right arrow icon",...i})=>a__default.createElement(r,{size:o,alt:s,styles:t,role:l,...i},a__default.createElement("g",{fill:e},a__default.createElement("path",{d:"M7,23a1,1,0,0,1-.707-1.707L15.586,12,6.293,2.707A1,1,0,0,1,7.707,1.293l10,10a1,1,0,0,1,0,1.414l-10,10A1,1,0,0,1,7,23Z",fill:e})));M.displayName="Right";M.styles=Uo;var Ho={...r.styles,fill:"currentColor"},N=({fill:o="currentColor",size:e=16,styles:t,role:l="img",alt:s="Left arrow icon",...i})=>a__default.createElement(r,{size:e,styles:t,alt:s,role:l,...i},a__default.createElement("g",{fill:o},a__default.createElement("path",{d:"M17,23a1,1,0,0,1-.707-.293l-10-10a1,1,0,0,1,0-1.414l10-10a1,1,0,0,1,1.414,1.414L8.414,12l9.293,9.293A1,1,0,0,1,17,23Z",fill:o})));N.displayName="Left";N.styles=Ho;var qo={fill:"currentColor"},Z=({size:o=24,fill:e="currentColor",styles:t,role:l="img",alt:s="Minus icon",...i})=>a__default.createElement(r,{size:o,styles:t,role:l,alt:s,...i},a__default.createElement("g",{fill:e},a__default.createElement("path",{d:"M17,11H7c-.553,0-1,.447-1,1s.447,1,1,1h10c.553,0,1-.447,1-1s-.447-1-1-1Z",fill:e})));Z.displayName="Minus";Z.styles=qo;var jo={fill:"currenStyle"},R=({size:o=16,fill:e="currentColor",styles:t,role:l="img",alt:s="Remove icon",...i})=>a__default.createElement(r,{size:o,alt:s,styles:t,role:l,...i},a__default.createElement("g",{fill:e},a__default.createElement("path",{d:"M19.7,4.3c-0.4-0.4-1-0.4-1.4,0L12,10.6L5.7,4.3c-0.4-0.4-1-0.4-1.4,0s-0.4,1,0,1.4l6.3,6.3l-6.3,6.3 c-0.4,0.4-0.4,1,0,1.4C4.5,19.9,4.7,20,5,20s0.5-0.1,0.7-0.3l6.3-6.3l6.3,6.3c0.2,0.2,0.5,0.3,0.7,0.3s0.5-0.1,0.7-0.3 c0.4-0.4,0.4-1,0-1.4L13.4,12l6.3-6.3C20.1,5.3,20.1,4.7,19.7,4.3z",fill:e})));R.displayName="Remove";R.styles=jo;var Wo={...r.styles,stroke:"currentColor"},H=({size:o=16,strokeColor:e="currentColor",styles:t,role:l="img",alt:s="Copy icon",...i})=>a__default.createElement(r,{size:o,styles:t,role:l,alt:s,...i},a__default.createElement("g",{fill:"none",stroke:e,strokeLinecap:"square",strokeLinejoin:"miter",strokeMiterlimit:"10",strokeWidth:"2"},a__default.createElement("polyline",{fill:"none",points:"8 19 2 19 2 1 17 1 17 6",stroke:e}),a__default.createElement("rect",{height:"13",width:"10",fill:"none",x:"12",y:"10"})));H.displayName="Copy";H.styles=Wo;var Vo={...r.styles},q=({size:o=16,fill:e="currentColor",styles:t,role:l="img",alt:s="Up arrow icon",...i})=>a__default.createElement(r,{size:o,alt:s,styles:t,role:l,...i},a__default.createElement("g",{fill:e},a__default.createElement("path",{d:"M22,18a1,1,0,0,1-.707-.293L12,8.414,2.707,17.707a1,1,0,0,1-1.414-1.414l10-10a1,1,0,0,1,1.414,0l10,10A1,1,0,0,1,22,18Z",fill:e})));q.displayName="Up";q.styles=Vo;var Do={...r.styles},W=({size:o=16,fill:e="currentColor",styles:t,role:l="img",alt:s="Down arrow icon",...i})=>a.createElement(r,{size:o,alt:s,styles:t,role:l,...i},a.createElement("g",{fill:e},a.createElement("path",{d:"M12,18a1,1,0,0,1-.707-.293l-10-10A1,1,0,0,1,2.707,6.293L12,15.586l9.293-9.293a1,1,0,1,1,1.414,1.414l-10,10A1,1,0,0,1,12,18Z",fill:e})));W.displayName="Down";W.styles=Do;function yo({size:o=16,fill:e,strokeColor:t="currentColor",styles:l,role:s="img",alt:i="Star icon",...p}){return a__default.createElement(r,{size:o,alt:i,styles:l,role:s,...p},a__default.createElement("g",{fill:e,stroke:t,strokeLinecap:"square",strokeLinejoin:"miter",strokeMiterlimit:"10",strokeWidth:"2"},a__default.createElement("polygon",{fill:"none",points:"12,2.49 15.09,8.75 22,9.754 17,14.628 18.18,21.51 12,18.262 5.82,21.51 7,14.628 2,9.754 8.91,8.75 ",stroke:t})))}yo.displayName="Star";var Eo={...r.styles,fill:"none",stroke:"currentColor"},D=({strokeColor:o="currentColor",styles:e,size:t=24,role:l="img",alt:s="Up arrow icon",...i})=>a.createElement(r,{size:t,styles:e,role:l,alt:s,...i},a.createElement("g",{fill:"none","stroke-linecap":"square","stroke-linejoin":"miter","stroke-miterlimit":"10"},a.createElement("path",{d:"M7 21L7 3L19 12L7 21Z",stroke:o,"stroke-width":"2",fill:"none"})," "));D.displayName="PlayIcon";D.style=Eo;var Jo={...r.styles,fill:"none",stroke:"currentColor"},E=({strokeColor:o="currentColor",styles:e,size:t=16,role:l="img",alt:s="Up arrow icon",...i})=>a.createElement(r,{size:t,styles:e,role:l,alt:s,...i},a.createElement("g",{fill:"none","stroke-linecap":"square","stroke-linejoin":"miter","stroke-miterlimit":"10"},a.createElement("rect",{x:"2",y:"2",width:"6",height:"20",fill:"none",stroke:o,"stroke-width":"2"}),a.createElement("rect",{x:"16",y:"2",width:"6",height:"20",fill:"none",stroke:o,"stroke-width":"2"})));E.displayName="Pause";E.style=Jo;var Xo={...r.styles,fill:"none",stroke:"currentColor"},J=({strokeColor:o="currentColor",styles:e,size:t=16,role:l="img",alt:s="Up arrow icon",...i})=>a.createElement(r,{size:t,styles:e,role:l,alt:s,...i},a.createElement("g",{fill:"none","stroke-linecap":"square","stroke-linejoin":"miter","stroke-miterlimit":"10"},a.createElement("path",{d:"M20 21L20 3",stroke:o,"stroke-width":"2",fill:"none"}),a.createElement("path",{d:"M4 4L4 20L16 12L4 4Z",stroke:o,"stroke-width":"2",fill:"none"})));J.displayName="Resume";J.style=Xo;var bo={...r.styles,fill:"none",stroke:"currentColor"},b=({strokeColor:o="currentColor",styles:e,size:t=16,role:l="img",alt:s="Up arrow icon",...i})=>a.createElement(r,{size:t,styles:e,role:l,alt:s,...i},a.createElement("g",{fill:"none","stroke-linecap":"square","stroke-linejoin":"miter","stroke-miterlimit":"10"},a.createElement("rect",{x:"2",y:"2",fill:"none",stroke:o,"stroke-width":"2",width:"20",height:"20"})));b.displayName="Stop";b.style=bo;var Qo={...r.styles,fill:"none",stroke:"currentColor"},B=({strokeColor:o="currentColor",styles:e,size:t=24,role:l="img",alt:s="Stop icon",...i})=>a.createElement(r,{size:t,styles:e,role:l,alt:s,...i},a.createElement("g",{fill:o},a.createElement("path",{fill:o,d:"M22,1H2C1.447,1,1,1.447,1,2v20c0,0.553,0.447,1,1,1h20c0.553,0,1-0.447,1-1V2C23,1.447,22.553,1,22,1z"})));B.displayName="StopSolid";B.style=Qo;var Bo={...r.styles,fill:"none",stroke:"currentColor"},G=({strokeColor:o="currentColor",styles:e,size:t=24,role:l="img",alt:s="Up arrow icon",...i})=>a.createElement(r,{size:t,styles:e,role:l,alt:s,...i},a.createElement("g",{fill:o},a.createElement("path",{fill:o,d:"M20.555,11.168l-15-10c-0.307-0.204-0.702-0.224-1.026-0.05C4.203,1.292,4,1.631,4,2v20 c0,0.369,0.203,0.708,0.528,0.882C4.676,22.961,4.838,23,5,23c0.194,0,0.388-0.057,0.555-0.168l15-10C20.833,12.646,21,12.334,21,12 S20.833,11.354,20.555,11.168z"})));G.displayName="PlaySolid";G.style=Bo;var Fo={...r.styles,fill:"none",stroke:"currentColor"},K=({strokeColor:o="currentColor",styles:e,size:t=24,role:l="img",alt:s="Pause arrow icon",...i})=>a.createElement(r,{size:t,styles:e,role:l,alt:s,...i},a.createElement("g",{fill:o},a.createElement("path",{d:"M7,1H2A1,1,0,0,0,1,2V22a1,1,0,0,0,1,1H7a1,1,0,0,0,1-1V2A1,1,0,0,0,7,1Z",fill:o}),a.createElement("path",{d:"M22,1H17a1,1,0,0,0-1,1V22a1,1,0,0,0,1,1h5a1,1,0,0,0,1-1V2A1,1,0,0,0,22,1Z",fill:o})));K.displayName="PauseSolid";K.style=Fo;var Go={...r.styles,fill:"none",stroke:"currentColor"},O=({strokeColor:o="currentColor",styles:e,size:t=16,role:l="img",alt:s="Up arrow icon",...i})=>a.createElement(r,{size:t,styles:e,role:l,alt:s,...i},a.createElement("g",{fill:o},a.createElement("path",{fill:o,"fill-rule":"evenodd","clip-rule":"evenodd",d:"M3 21.8685L17.8028 12L3 2.1315L3 21.8685Z"}),a.createElement("path",{fill:o,"fill-rule":"evenodd","clip-rule":"evenodd",d:"M19 2L19 22L21 22L21 2L19 2Z"})));O.displayName="ResumeSolid";O.style=Go;var uo=({fill:o="currentColor",size:e=24,role:t="img",alt:l="Info icon",...s})=>a.createElement(r,{size:e,role:t,alt:l,...s},a.createElement("g",{fill:o},a.createElement("path",{d:"M11 17h2v-6h-2v6zm1-15C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zM11 9h2V7h-2v2z",fill:o})));uo.displayName="Info";var go=({fill:o="currentColor",size:e=24,role:t="img",alt:l="Add icon",...s})=>a.createElement(r,{size:e,role:t,alt:l,...s},a.createElement("g",{fill:o},a.createElement("path",{d:"M23.707,6.736,17.263.293A1,1,0,0,0,16.556,0H7.444a1,1,0,0,0-.707.293L.293,6.736A1,1,0,0,0,0,7.443v9.114a1,1,0,0,0,.293.707l6.444,6.443A1,1,0,0,0,7.444,24h9.112a1,1,0,0,0,.707-.293l6.444-6.443A1,1,0,0,0,24,16.557V7.443A1,1,0,0,0,23.707,6.736ZM13.645,5,13,14H11l-.608-9ZM12,20a2,2,0,1,1,2-2A2,2,0,0,1,12,20Z",fill:o})));go.displayName="AlertSolid";var So=({fill:o="currentColor",size:e=24,role:t="img",alt:l="Add icon",...s})=>a.createElement(r,{size:e,role:t,alt:l,...s},a.createElement("g",{fill:o},a.createElement("path",{fill:o,d:"M8,17.06V20h8v-2.94c3.059-1.514,5-4.607,5-8.06c0-4.963-4.038-9-9-9S3,4.037,3,9 C3,12.452,4.941,15.546,8,17.06z M7,9c0-2.757,2.243-5,5-5h1v2h-1c-1.654,0-3,1.346-3,3v1H7V9z"})," ",a.createElement("path",{fill:o,d:"M8,22v1c0,0.553,0.448,1,1,1h6c0.552,0,1-0.447,1-1v-1H8z"})));So.displayName="InfoSolid";var ko=({fill:o="currentColor",size:e=24,role:t="img",alt:l="Add icon",...s})=>a.createElement(r,{size:e,role:t,alt:l,...s},a.createElement("g",{fill:o},a.createElement("path",{d:"M12,0C5.383,0,0,5.383,0,12s5.383,12,12,12,12-5.383,12-12S18.617,0,12,0Zm0,19.5c-.69,0-1.25-.56-1.25-1.25s.56-1.25,1.25-1.25,1.25,.56,1.25,1.25-.56,1.25-1.25,1.25Zm2.688-7.198c-1.444,1.224-1.688,1.667-1.688,2.198,0,.553-.447,1-1,1s-1-.447-1-1c0-1.434,.807-2.379,2.395-3.724,.447-.38,1.844-1.72,1.024-3.046-.532-.861-2.517-.984-4.162-.256-.507,.223-1.096-.006-1.319-.511-.223-.505,.006-1.096,.511-1.319,2.33-1.03,5.463-.924,6.672,1.035,1.103,1.784,.554,3.938-1.433,5.622Z",fill:o})));ko.displayName="QuestionSolid";var xo=({fill:o="currentColor",size:e=24,role:t="img",alt:l="Add icon",...s})=>a.createElement(r,{size:e,role:t,alt:l,...s},a.createElement("g",{fill:o},a.createElement("path",{d:"M23.641,18.485L14.732,1.643C13.931,.134,12.059-.44,10.55,.361c-.546,.29-.992,.736-1.282,1.282L.359,18.485c-.793,1.504-.217,3.367,1.288,4.16,.445,.235,.942,.357,1.445,.355H20.908c1.7,.005,3.083-1.369,3.088-3.07,.002-.504-.12-1-.355-1.445Zm-11.641,1.515c-.828,0-1.5-.672-1.5-1.5s.672-1.5,1.5-1.5,1.5,.672,1.5,1.5-.672,1.5-1.5,1.5Zm.53-5h-1.061c-.264,0-.483-.205-.499-.469l-.438-7c-.018-.288,.211-.531,.499-.531h1.936c.288,0,.517,.243,.499,.531l-.438,7c-.016,.264-.235,.469-.499,.469Z",fill:o})));xo.displayName="WarnSolid";var Po=({fill:o="currentColor",size:e=24,role:t="img",alt:l="Add icon",...s})=>a.createElement(r,{size:e,role:t,alt:l,...s},a.createElement("g",{fill:o},a.createElement("path",{d:"M12,0C5.373,0,0,5.373,0,12s5.373,12,12,12,12-5.373,12-12C23.981,5.381,18.619,.019,12,0Zm7.207,7.707l-9,9c-.195,.195-.451,.293-.707,.293s-.512-.098-.707-.293l-4-4c-.391-.391-.391-1.023,0-1.414s1.023-.391,1.414,0l3.293,3.293L17.793,6.293c.391-.391,1.023-.391,1.414,0s.391,1.023,0,1.414Z",fill:o})));Po.displayName="SuccessSolid";var ho=({fill:o="currentColor",size:e=24,role:t="img",alt:l="Add icon",...s})=>a.createElement(r,{size:e,role:t,alt:l,...s},a.createElement("g",{fill:o},a.createElement("path",{d:"M20,1H4c-1.654,0-3,1.346-3,3V20c0,1.654,1.346,3,3,3H20c1.654,0,3-1.346,3-3V4c0-1.654-1.346-3-3-3ZM11,7c0-.553,.448-1,1-1s1,.447,1,1v6c0,.553-.448,1-1,1s-1-.447-1-1V7Zm1,11.5c-.69,0-1.25-.56-1.25-1.25s.56-1.25,1.25-1.25,1.25,.56,1.25,1.25-.56,1.25-1.25,1.25Z",fill:o})));ho.displayName="AlertSquareSolid";var Oo={display:"inline-flex",direction:"row",gap:".2rem",placeItems:"center",width:"auto"},n=({id:o,classes:e,children:t,styles:l,"aria-hidden":s=!0,"aria-label":i,role:p,...eo})=>a__default.createElement(a$1,{id:o,as:"span",styles:l,className:e,"data-icon":!0,"data-style":"icons","aria-hidden":s,"aria-label":i,role:p,...eo},t),lt=n;n.displayName="Icon";n.Add=P;n.ArrowDown=I;n.ArrowLeft=h;n.ArrowRight=io;n.ArrowUp=z;n.Chat=C;n.Code=lo;n.Copy=H;n.Down=W;n.Home=k;n.Info=uo;n.InfoSolid=So;n.AlertSolid=go;n.Left=N;n.Minus=Z;n.Pause=E;n.PauseSolid=K;n.Play=D;n.PlaySolid=G;n.Remove=R;n.Resume=J;n.ResumeSolid=O;n.Right=M;n.Star=yo;n.Stop=b;n.StopSolid=B;n.Up=q;n.User=A;n.styles=Oo;n.QuestionSolid=ko;n.WarnSolid=xo;n.SuccessSolid=Po;n.AlertSquareSolid=ho;n.Close=n.Remove;
6
6
 
7
7
  export { n as a, lt as b };
8
8
  //# sourceMappingURL=out.js.map
9
- //# sourceMappingURL=chunk-O6QZBB6G.js.map
9
+ //# sourceMappingURL=chunk-5QD3DWFI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/icons/components/code.tsx","../src/components/icons/components/svg.tsx","../src/components/icons/components/home.tsx","../src/components/icons/components/add.tsx","../src/components/icons/components/arrow-left.tsx","../src/components/icons/components/chat.tsx","../src/components/icons/components/arrow-down.tsx","../src/components/icons/components/arrow-up.tsx","../src/components/icons/components/arrow-right.tsx","../src/components/icons/components/user.tsx","../src/components/icons/components/right.tsx","../src/components/icons/components/left.tsx","../src/components/icons/components/minus.tsx","../src/components/icons/components/remove.tsx","../src/components/icons/components/copy.tsx","../src/components/icons/components/up.tsx","../src/components/icons/components/down.tsx","../src/components/icons/components/star.tsx","../src/components/icons/components/play.tsx","../src/components/icons/components/pause.tsx","../src/components/icons/components/resume.tsx","../src/components/icons/components/stop.tsx","../src/components/icons/components/stop-solid.tsx","../src/components/icons/components/play-solid.tsx","../src/components/icons/components/pause-solid.tsx","../src/components/icons/components/resume-solid.tsx","../src/components/icons/components/info.tsx","../src/components/icons/components/alert-solid.tsx","../src/components/icons/components/info-solid.tsx","../src/components/icons/components/question-solid.tsx","../src/components/icons/components/warn-solid.tsx","../src/components/icons/components/success-solid.tsx","../src/components/icons/components/alert-square-solid.tsx","../src/components/icons/icon.tsx"],"names":["React","defaultStyes","Svg","fill","strokeColor","styles","size","role","alt","children","props","svg_default","defaultStyles","Code","Home","Add","ArrowLeft","Chat","ArrowDown","ArrowUp","ArrowRight","User","Right","Left","Minus","Remove","Copy","Up","Down","Star","Play","Pause","Resume","Stop","StopSolid","PlaySolid","PauseSolid","ResumeSolid","Info","AlertSolid","InfoSolid","QuestionSolid","WarnSolid","SuccessSolid","AlertSquareSolid","Icon","id","classes","ariaHidden","ariaLabel","ui_default","icon_default"],"mappings":"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","sourcesContent":["import * as React from 'react'\n\nimport { IconProps } from '../types'\nimport Svg from './svg'\n\nconst defaultStyles = {\n ...Svg.styles,\n fill: 'none',\n stroke: 'currentColor',\n}\n\nexport const Code = ({\n strokeColor = 'currentColor',\n fill = 'none',\n size = 16,\n styles,\n role = 'img',\n alt = 'Code icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n> = {}) => {\n return (\n <Svg size={size} role={role} alt={alt} styles={styles} {...props}>\n <g\n fill={fill}\n stroke={strokeColor}\n strokeLinecap=\"square\"\n strokeLinejoin=\"miter\"\n strokeMiterlimit=\"10\"\n strokeWidth=\"2\"\n >\n <rect\n height=\"22\"\n width=\"18\"\n fill=\"none\"\n stroke={strokeColor}\n x=\"3\"\n y=\"1\"\n />\n <polyline fill=\"none\" points=\"9 9 6 12 9 15\" />\n <polyline fill=\"none\" points=\"15 15 18 12 15 9\" />\n </g>\n </Svg>\n )\n}\n\nexport default Code\nCode.styles = defaultStyles\n","import * as React from 'react'\n\nimport { IconProps } from '../types'\n\nconst defaultStyes = {\n display: 'inline-flex',\n alignItems: 'center',\n width: 'auto',\n}\n\nexport const Svg = ({\n fill,\n strokeColor,\n styles,\n size = 24,\n role = 'img',\n alt,\n children,\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt' | 'children'\n>) => {\n return (\n <svg\n fill={fill}\n stroke={strokeColor}\n height={size}\n width={size}\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style={styles}\n role={role}\n aria-label={alt}\n {...props}\n >\n {children}\n </svg>\n )\n}\n\nexport default Svg\nSvg.displayName = 'Svg'\nSvg.styles = defaultStyes\n","import { IconProps } from '../types'\nimport React from 'react'\nimport Svg from './svg'\n\nconst defaultStyles = {\n ...Svg.styles,\n fill: 'currentColor',\n stroke: 'none',\n}\n\n/**\n * Renders a home icon.\n *\n * @param {string} strokeColor - The color of the icon's stroke.\n * @param {string} fill - The color of the icon's fill.\n * @param {string} size - The size of the icon.\n * @param {string} viewBox - The viewBox of the icon.\n * @param {string} name - The name of the icon.\n * @param {Object} styles - The styles of the icon.\n * @param {Object} props - The props of the icon.\n * @returns {JSX.Element} - A home icon.\n */\nexport const Home = ({\n strokeColor = 'currentColor',\n fill = 'none',\n size = 16,\n styles = defaultStyles,\n role = 'img',\n alt = 'Home icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} styles={styles} role={role} alt={alt} {...props}>\n <g\n fill={fill}\n stroke={strokeColor}\n strokeLinecap=\"square\"\n strokeLinejoin=\"miter\"\n strokeMiterlimit=\"10\"\n strokeWidth=\"2\"\n >\n <polygon\n fill=\"none\"\n points=\"12 2 2 10 2 23 9 23 9 16 15 16 15 23 22 23 22 10 12 2\"\n stroke={strokeColor}\n />\n </g>\n </Svg>\n )\n}\n\nexport default Home\nHome.displayName = 'Home'\nHome.styles = defaultStyles\n","import * as React from \"react\";\n\nimport { IconProps } from \"../types\";\nimport Svg from \"./svg\";\n\nconst defaultStyles = {\n ...Svg.styles,\n fill: \"currentColor\",\n};\n\n/**\n * Add Icon component\n * @param {string} fill - Icon fill color (default: 'currentColor')\n * @param {string} size - Icon size (default: '24')\n * @param {IconProps} props - Other icon properties\n * @returns {JSX.Element} - Rendered component\n */\nexport const Add = ({\n fill = \"gray\",\n size = 24,\n role = \"img\",\n alt = \"Add icon\",\n ...props\n}: Pick<\n IconProps,\n \"strokeColor\" | \"fill\" | \"styles\" | \"size\" | \"role\" | \"alt\"\n>): JSX.Element => {\n return (\n <Svg size={size} role={role} alt={alt} {...props}>\n <g fill={fill}>\n <path\n d=\"M17,11h-4V7c0-.553-.447-1-1-1s-1,.447-1,1v4H7c-.553,0-1,.447-1,1s.447,1,1,1h4v4c0,.553,.447,1,1,1s1-.447,1-1v-4h4c.553,0,1-.447,1-1s-.447-1-1-1Z\"\n fill={fill}\n />\n </g>\n </Svg>\n );\n};\n\nexport default Add;\nAdd.styles = defaultStyles;\nAdd.displayName = \"Add\";\n","import * as React from 'react'\n\nimport { IconProps } from '../types'\nimport Svg from './svg'\n\nconst defaultStyles = { ...Svg.styles }\n\nexport const ArrowLeft = ({\n strokeColor = 'currentColor',\n fill = 'currentColor',\n size = 16,\n styles,\n role = 'img',\n alt = 'Arrow pointing left',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} styles={styles} role={role} {...props} alt={alt}>\n <g fill={fill} strokeMiterlimit=\"10\">\n <line\n fill=\"none\"\n stroke={strokeColor}\n strokeLinecap=\"butt\"\n strokeLinejoin=\"miter\"\n strokeWidth=\"2\"\n x1=\"22\"\n x2=\"2\"\n y1=\"12\"\n y2=\"12\"\n />\n <polyline\n fill=\"none\"\n points=\"9,19 2,12 9,5 \"\n stroke={strokeColor}\n strokeLinecap=\"square\"\n strokeLinejoin=\"miter\"\n strokeWidth=\"2\"\n />\n </g>\n </Svg>\n )\n}\n\nexport default ArrowLeft\nArrowLeft.styles = defaultStyles\nArrowLeft.displayName = 'ArrowLeft'\n","import * as React from 'react'\n\nimport { IconProps } from '../types'\nimport Svg from './svg'\n\nconst defaultStyles = { ...Svg.styles }\n\n/**\n * @param {string} size - The width and height of the icon in pixels. Defaults to 24.\n * @param {string} strokeColor - The color of the icon stroke. Defaults to 'currentcolor'.\n * @param {React.CSSProperties} styles - Additional CSS styles to apply to the icon.\n * @param {IconProps} props - Additional props to pass to the SVG element.\n * @returns {JSX.Element} - A chat icon component that displays a speech bubble with lines representing text.\n */\nexport const Chat = ({\n size = 16,\n strokeColor = 'currentcolor',\n styles,\n role = 'img',\n alt = 'Chat icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>): JSX.Element => {\n return (\n <Svg size={size} styles={styles} role={role} alt={alt} {...props}>\n <g fill={strokeColor} strokeMiterlimit=\"10\">\n <path\n d=\"M21,2H3c-1.105,0-2,.895-2,2V15c0,1.105,.895,2,2,2h5l4,5,4-5h5c1.105,0,2-.895,2-2V4c0-1.105-.895-2-2-2Z\"\n fill=\"none\"\n stroke={strokeColor}\n strokeLinecap=\"square\"\n strokeLinejoin=\"miter\"\n strokeWidth=\"2\"\n />\n </g>\n </Svg>\n )\n}\n\nexport default Chat\nChat.styles = defaultStyles\nChat.displayName = 'Chat'\n","import * as React from 'react'\n\nimport { IconProps } from '../types'\nimport Svg from './svg'\n\nconst defaultStyles = { ...Svg.styles }\n\n/**\n * ArrowDown icon component\n * @param fill - Icon fill color\n * @param strokeColor - Icon stroke color\n * @param styles - Icon styles\n * @param size - Icon size\n */\nexport const ArrowDown = ({\n fill = 'currentColor',\n styles,\n size = 16,\n role = 'img',\n alt = 'Down icon',\n ...props\n}: Pick<IconProps, 'fill' | 'styles' | 'size' | 'role' | 'alt'>) => {\n return (\n <Svg size={size} role={role} styles={styles} alt={alt} {...props}>\n <g fill={fill} strokeMiterlimit=\"10\">\n <line\n fill=\"none\"\n stroke={fill}\n strokeLinecap=\"butt\"\n strokeLinejoin=\"miter\"\n strokeWidth=\"2\"\n x1=\"12\"\n x2=\"12\"\n y1=\"2\"\n y2=\"22\"\n />\n <polyline\n fill=\"none\"\n points=\"19,15 12,22 5,15 \"\n stroke={fill}\n strokeLinecap=\"square\"\n strokeLinejoin=\"miter\"\n strokeWidth=\"2\"\n />\n </g>\n </Svg>\n )\n}\n\nexport default ArrowDown\nArrowDown.styles = defaultStyles\nArrowDown.displayName = 'ArrowDown'\n","import * as React from 'react'\n\nimport { IconProps } from '../types'\nimport Svg from './svg'\n\nconst defaultStyles = {\n ...Svg.styles,\n fill: 'none',\n stroke: 'currentColor',\n}\n\n/**\n * ArrowUp icon component\n * @param fill - Icon fill color\n * @param strokeColor - Icon stroke color\n * @param styles - Icon styles\n * @param size - Icon size\n */\nexport const ArrowUp = ({\n strokeColor = 'currentColor',\n styles,\n size = 16,\n role = 'img',\n alt = 'Up arrow icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} styles={styles} role={role} alt={alt} {...props}>\n <g\n fill=\"none\"\n stroke={strokeColor}\n strokeLinecap=\"square\"\n strokeLinejoin=\"miter\"\n strokeMiterlimit=\"10\"\n strokeWidth=\"2\"\n >\n <line fill=\"none\" strokeLinecap=\"butt\" x1=\"12\" x2=\"12\" y1=\"22\" y2=\"2\" />\n <polyline fill=\"none\" points=\"5,9 12,2 19,9 \" stroke={strokeColor} />\n </g>\n </Svg>\n )\n}\n\nexport default ArrowUp\nArrowUp.displayName = 'ArrowUp'\nArrowUp.style = defaultStyles\n","import { IconProps } from '../types'\nimport React from 'react'\nimport Svg from './svg'\n\nconst defaultStyles = {\n ...Svg.styles,\n fill: 'currentColor',\n}\n\n/*\n * ArrowRight icon component.\n *\n * Renders a right arrow SVG icon.\n *\n * @param {IconProps} props - The component props\n * @param {string} [props.size=\"24\"] - Icon size\n * @param {string} [props.fill=\"currentColor\"] - Icon fill color\n * @param {string} [props.strokeColor=\"currentColor\"] - Stroke color\n *\n * @returns {React.ReactElement} - The rendered icon\n */\nexport const ArrowRight = ({\n size = 16,\n fill = 'currentColor',\n strokeColor = 'currentColor',\n styles,\n role = 'img',\n alt = 'Right arrow icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} styles={styles} role={role} alt={alt} {...props}>\n <g\n fill={fill}\n stroke={strokeColor}\n strokeLinecap=\"square\"\n strokeLinejoin=\"miter\"\n strokeMiterlimit=\"10\"\n strokeWidth=\"2\"\n >\n <line fill=\"none\" strokeLinecap=\"butt\" x1=\"2\" x2=\"22\" y1=\"12\" y2=\"12\" />\n <polyline fill=\"none\" points=\"15,5 22,12 15,19 \" stroke={strokeColor} />\n </g>\n </Svg>\n )\n}\n\nexport default ArrowRight\nArrowRight.displayName = 'ArrowRight'\n","import { IconProps } from '../types'\nimport React from 'react'\nimport Svg from './svg'\n\nconst defaultStyles = {\n ...Svg.styles,\n fill: 'none',\n stroke: 'currentColor',\n}\n\nexport const User = ({\n size = 16,\n fill = 'none',\n strokeColor = 'currentColor',\n styles,\n alt = 'User Icon',\n role,\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} role={role} alt={alt} styles={styles} {...props}>\n <g\n fill={fill}\n stroke={strokeColor}\n strokeLinecap=\"square\"\n strokeLinejoin=\"miter\"\n strokeMiterlimit=\"10\"\n strokeWidth=\"2\"\n >\n <circle cx=\"12\" cy=\"5.5\" fill=\"none\" r=\"4.5\" />\n <path\n d=\"M12,14c-4.971,0-9,4.029-9,9H21c0-4.971-4.029-9-9-9Z\"\n fill=\"none\"\n stroke={strokeColor}\n />\n </g>\n </Svg>\n )\n}\n\nexport default User\nUser.styles = defaultStyles\nUser.displayName = 'User'\n","import { IconProps } from '../types'\nimport React from 'react'\nimport Svg from './svg'\n\nconst defaultStyles = {\n fill: 'currentColor',\n}\n\n/**\n * Renders a right arrow icon.\n *\n * @param {string} size - The size of the icon.\n * @param {string} fill - The fill color of the icon.\n * @param {React.CSSProperties} styles - The styles to apply to the icon.\n * @param {IconProps} props - The props to pass down to the icon.\n * @returns {JSX.Element} - A right arrow icon.\n */\nexport const Right = ({\n size = 16,\n fill = 'currentColor',\n styles,\n role = 'img',\n alt = 'Right arrow icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} alt={alt} styles={styles} role={role} {...props}>\n <g fill={fill}>\n <path\n d=\"M7,23a1,1,0,0,1-.707-1.707L15.586,12,6.293,2.707A1,1,0,0,1,7.707,1.293l10,10a1,1,0,0,1,0,1.414l-10,10A1,1,0,0,1,7,23Z\"\n fill={fill}\n />\n </g>\n </Svg>\n )\n}\n\nexport default Right\nRight.displayName = 'Right'\nRight.styles = defaultStyles\n","import { IconProps } from '../types'\nimport React from 'react'\nimport Svg from './svg'\n\nconst defaultStyles = {\n ...Svg.styles,\n fill: 'currentColor',\n}\n\n/**\n * Left arrow icon\n * @param {string} fill - Icon fill color (default: 'currentColor')\n * @param {string} size - Icon size (default: '24')\n * @param {React.CSSProperties} styles - Icon styles (default: {})\n * @param {IconProps} props - Any other valid props for an SVG element\n * @returns {JSX.Element} - Rendered icon component\n */\nexport const Left = ({\n fill = 'currentColor',\n size = 16,\n styles,\n role = 'img',\n alt = 'Left arrow icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} styles={styles} alt={alt} role={role} {...props}>\n <g fill={fill}>\n <path\n d=\"M17,23a1,1,0,0,1-.707-.293l-10-10a1,1,0,0,1,0-1.414l10-10a1,1,0,0,1,1.414,1.414L8.414,12l9.293,9.293A1,1,0,0,1,17,23Z\"\n fill={fill}\n />\n </g>\n </Svg>\n )\n}\n\nexport default Left\nLeft.displayName = 'Left'\nLeft.styles = defaultStyles\n","import { IconProps } from '../types'\nimport React from 'react'\nimport Svg from './svg'\n\nconst defaultStyles = {\n fill: 'currentColor',\n}\n\n/**\n * Minus icon component\n * @param {string} size - Icon size (default: 24)\n * @param {string} fill - Icon fill color (default: 'currentColor')\n * @param {object} styles - Inline styles for the SVG element\n * @param {object} props - Any other SVG attributes\n * @returns {JSX.Element} - Rendered Minus icon component\n */\nexport const Minus = ({\n size = 24,\n fill = 'currentColor',\n styles,\n role = 'img',\n alt = 'Minus icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} styles={styles} role={role} alt={alt} {...props}>\n <g fill={fill}>\n <path\n d=\"M17,11H7c-.553,0-1,.447-1,1s.447,1,1,1h10c.553,0,1-.447,1-1s-.447-1-1-1Z\"\n fill={fill}\n />\n </g>\n </Svg>\n )\n}\n\nexport default Minus\nMinus.displayName = 'Minus'\nMinus.styles = defaultStyles\n","import { IconProps } from '../types'\nimport React from 'react'\nimport Svg from './svg'\n\nconst defaultStyles = {\n fill: 'currenStyle',\n}\n\n/**\n * Remove icon component\n * @param {string} size - The size of the icon\n * @param {string} fill - The fill color of the icon\n * @param {object} styles - The styles to apply to the icon\n * @param {object} props - The additional props to pass to the icon\n * @returns {JSX.Element} - The Remove icon component\n */\nexport const Remove = ({\n size = 16,\n fill = 'currentColor',\n styles,\n role = 'img',\n alt = 'Remove icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} alt={alt} styles={styles} role={role} {...props}>\n <g fill={fill}>\n <path\n d=\"M19.7,4.3c-0.4-0.4-1-0.4-1.4,0L12,10.6L5.7,4.3c-0.4-0.4-1-0.4-1.4,0s-0.4,1,0,1.4l6.3,6.3l-6.3,6.3 c-0.4,0.4-0.4,1,0,1.4C4.5,19.9,4.7,20,5,20s0.5-0.1,0.7-0.3l6.3-6.3l6.3,6.3c0.2,0.2,0.5,0.3,0.7,0.3s0.5-0.1,0.7-0.3 c0.4-0.4,0.4-1,0-1.4L13.4,12l6.3-6.3C20.1,5.3,20.1,4.7,19.7,4.3z\"\n fill={fill}\n />\n </g>\n </Svg>\n )\n}\n\nexport default Remove\nRemove.displayName = 'Remove'\nRemove.styles = defaultStyles\n","import { IconProps } from '../types'\nimport React from 'react'\nimport Svg from './svg'\n\nconst defaultStyles = {\n ...Svg.styles,\n stroke: 'currentColor',\n}\n\n/**\n * Copy icon component\n * @param {string} size - The width and height of the icon\n * @param {string} strokeColor - The color of the icon stroke\n * @param {IconProps} props - The icon component props\n * @returns {JSX.Element} - A react JSX element representing the copy icon\n */\nexport const Copy = ({\n size = 16,\n strokeColor = 'currentColor',\n styles,\n role = 'img',\n alt = 'Copy icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>): JSX.Element => {\n return (\n <Svg size={size} styles={styles} role={role} alt={alt} {...props}>\n <g\n fill=\"none\"\n stroke={strokeColor}\n strokeLinecap=\"square\"\n strokeLinejoin=\"miter\"\n strokeMiterlimit=\"10\"\n strokeWidth=\"2\"\n >\n <polyline\n fill=\"none\"\n points=\"8 19 2 19 2 1 17 1 17 6\"\n stroke={strokeColor}\n />\n <rect height=\"13\" width=\"10\" fill=\"none\" x=\"12\" y=\"10\" />\n </g>\n </Svg>\n )\n}\n\nexport default Copy\nCopy.displayName = 'Copy'\nCopy.styles = defaultStyles\n","import { IconProps } from '../types'\nimport React from 'react'\nimport Svg from './svg'\n\nconst defaultStyles = { ...Svg.styles }\nexport const Up = ({\n size = 16,\n fill = 'currentColor',\n styles,\n role = 'img',\n alt = 'Up arrow icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} alt={alt} styles={styles} role={role} {...props}>\n <g fill={fill}>\n <path\n d=\"M22,18a1,1,0,0,1-.707-.293L12,8.414,2.707,17.707a1,1,0,0,1-1.414-1.414l10-10a1,1,0,0,1,1.414,0l10,10A1,1,0,0,1,22,18Z\"\n fill={fill}\n />\n </g>\n </Svg>\n )\n}\n\nexport default Up\nUp.displayName = 'Up'\nUp.styles = defaultStyles\n","import * as React from 'react'\n\nimport { IconProps } from '../types'\nimport Svg from './svg'\n\nconst defaultStyles = { ...Svg.styles }\n\nexport const Down = ({\n size = 16,\n fill = 'currentColor',\n styles,\n role = 'img',\n alt = 'Down arrow icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} alt={alt} styles={styles} role={role} {...props}>\n <g fill={fill}>\n <path\n d=\"M12,18a1,1,0,0,1-.707-.293l-10-10A1,1,0,0,1,2.707,6.293L12,15.586l9.293-9.293a1,1,0,1,1,1.414,1.414l-10,10A1,1,0,0,1,12,18Z\"\n fill={fill}\n />\n </g>\n </Svg>\n )\n}\n\nexport default Down\nDown.displayName = 'Down'\nDown.styles = defaultStyles\n","import { IconProps } from '../types'\nimport React from 'react'\nimport Svg from './svg'\n\nexport function Star({\n size = 16,\n fill,\n strokeColor = 'currentColor',\n styles,\n role = 'img',\n alt = 'Star icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) {\n return (\n <Svg size={size} alt={alt} styles={styles} role={role} {...props}>\n <g\n fill={fill}\n stroke={strokeColor}\n strokeLinecap=\"square\"\n strokeLinejoin=\"miter\"\n strokeMiterlimit=\"10\"\n strokeWidth=\"2\"\n >\n <polygon\n fill=\"none\"\n points=\"12,2.49 15.09,8.75 22,9.754 17,14.628 18.18,21.51 12,18.262 5.82,21.51 7,14.628 2,9.754 8.91,8.75 \"\n stroke={strokeColor}\n />\n </g>\n </Svg>\n )\n}\n\nexport default Star\nStar.displayName = 'Star'\n","import * as React from 'react'\n\nimport { IconProps } from '../types'\nimport Svg from './svg'\n\nconst defaultStyles = {\n ...Svg.styles,\n fill: 'none',\n stroke: 'currentColor',\n}\n\n/**\n * ArrowUp icon component\n * @param fill - Icon fill color\n * @param strokeColor - Icon stroke color\n * @param styles - Icon styles\n * @param size - Icon size\n */\nexport const Play = ({\n strokeColor = 'currentColor',\n styles,\n size = 24,\n role = 'img',\n alt = 'Up arrow icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} styles={styles} role={role} alt={alt} {...props}>\n <g\n fill=\"none\"\n stroke-linecap=\"square\"\n stroke-linejoin=\"miter\"\n stroke-miterlimit=\"10\"\n >\n <path\n d=\"M7 21L7 3L19 12L7 21Z\"\n stroke={strokeColor}\n stroke-width=\"2\"\n fill=\"none\"\n ></path>{' '}\n </g>\n </Svg>\n )\n}\n\nexport default Play\nPlay.displayName = 'PlayIcon'\nPlay.style = defaultStyles\n","import * as React from 'react'\n\nimport { IconProps } from '../types'\nimport Svg from './svg'\n\nconst defaultStyles = {\n ...Svg.styles,\n fill: 'none',\n stroke: 'currentColor',\n}\n\n/**\n * ArrowUp icon component\n * @param fill - Icon fill color\n * @param strokeColor - Icon stroke color\n * @param styles - Icon styles\n * @param size - Icon size\n */\nexport const Pause = ({\n strokeColor = 'currentColor',\n styles,\n size = 16,\n role = 'img',\n alt = 'Up arrow icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} styles={styles} role={role} alt={alt} {...props}>\n <g\n fill=\"none\"\n stroke-linecap=\"square\"\n stroke-linejoin=\"miter\"\n stroke-miterlimit=\"10\"\n >\n <rect\n x=\"2\"\n y=\"2\"\n width=\"6\"\n height=\"20\"\n fill=\"none\"\n stroke={strokeColor}\n stroke-width=\"2\"\n ></rect>\n <rect\n x=\"16\"\n y=\"2\"\n width=\"6\"\n height=\"20\"\n fill=\"none\"\n stroke={strokeColor}\n stroke-width=\"2\"\n ></rect>\n </g>\n </Svg>\n )\n}\n\nexport default Pause\nPause.displayName = 'Pause'\nPause.style = defaultStyles\n","import * as React from 'react'\n\nimport { IconProps } from '../types'\nimport Svg from './svg'\n\nconst defaultStyles = {\n ...Svg.styles,\n fill: 'none',\n stroke: 'currentColor',\n}\n\n/**\n * Resume icon component\n * @param fill - Icon fill color\n * @param strokeColor - Icon stroke color\n * @param styles - Icon styles\n * @param size - Icon size\n */\nexport const Resume = ({\n strokeColor = 'currentColor',\n styles,\n size = 16,\n role = 'img',\n alt = 'Up arrow icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} styles={styles} role={role} alt={alt} {...props}>\n <g\n fill=\"none\"\n stroke-linecap=\"square\"\n stroke-linejoin=\"miter\"\n stroke-miterlimit=\"10\"\n >\n <path\n d=\"M20 21L20 3\"\n stroke={strokeColor}\n stroke-width=\"2\"\n fill=\"none\"\n ></path>\n <path\n d=\"M4 4L4 20L16 12L4 4Z\"\n stroke={strokeColor}\n stroke-width=\"2\"\n fill=\"none\"\n ></path>\n </g>\n </Svg>\n )\n}\n\nexport default Resume\nResume.displayName = 'Resume'\nResume.style = defaultStyles\n","import * as React from 'react'\n\nimport { IconProps } from '../types'\nimport Svg from './svg'\n\nconst defaultStyles = {\n ...Svg.styles,\n fill: 'none',\n stroke: 'currentColor',\n}\n\n/**\n * Stop icon component\n * @param fill - Icon fill color\n * @param strokeColor - Icon stroke color\n * @param styles - Icon styles\n * @param size - Icon size\n */\nexport const Stop = ({\n strokeColor = 'currentColor',\n styles,\n size = 16,\n role = 'img',\n alt = 'Up arrow icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} styles={styles} role={role} alt={alt} {...props}>\n <g\n fill=\"none\"\n stroke-linecap=\"square\"\n stroke-linejoin=\"miter\"\n stroke-miterlimit=\"10\"\n >\n <rect\n x=\"2\"\n y=\"2\"\n fill=\"none\"\n stroke={strokeColor}\n stroke-width=\"2\"\n width=\"20\"\n height=\"20\"\n ></rect>\n </g>\n </Svg>\n )\n}\n\nexport default Stop\nStop.displayName = 'Stop'\nStop.style = defaultStyles\n","import * as React from 'react'\n\nimport { IconProps } from '../types'\nimport Svg from './svg'\n\nconst defaultStyles = {\n ...Svg.styles,\n fill: 'none',\n stroke: 'currentColor',\n}\n\n/**\n * Stop icon component\n * @param fill - Icon fill color\n * @param strokeColor - Icon stroke color\n * @param styles - Icon styles\n * @param size - Icon size\n */\nexport const StopSolid = ({\n strokeColor = 'currentColor',\n styles,\n size = 24,\n role = 'img',\n alt = 'Stop icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} styles={styles} role={role} alt={alt} {...props}>\n <g fill={strokeColor}>\n <path\n fill={strokeColor}\n d=\"M22,1H2C1.447,1,1,1.447,1,2v20c0,0.553,0.447,1,1,1h20c0.553,0,1-0.447,1-1V2C23,1.447,22.553,1,22,1z\"\n ></path>\n </g>\n </Svg>\n )\n}\n\nexport default StopSolid\nStopSolid.displayName = 'StopSolid'\nStopSolid.style = defaultStyles\n","import * as React from 'react'\n\nimport { IconProps } from '../types'\nimport Svg from './svg'\n\nconst defaultStyles = {\n ...Svg.styles,\n fill: 'none',\n stroke: 'currentColor',\n}\n\n/**\n * ArrowUp icon component\n * @param fill - Icon fill color\n * @param strokeColor - Icon stroke color\n * @param styles - Icon styles\n * @param size - Icon size\n */\nexport const PlaySolid = ({\n strokeColor = 'currentColor',\n styles,\n size = 24,\n role = 'img',\n alt = 'Up arrow icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} styles={styles} role={role} alt={alt} {...props}>\n <g fill={strokeColor}>\n <path\n fill={strokeColor}\n d=\"M20.555,11.168l-15-10c-0.307-0.204-0.702-0.224-1.026-0.05C4.203,1.292,4,1.631,4,2v20 c0,0.369,0.203,0.708,0.528,0.882C4.676,22.961,4.838,23,5,23c0.194,0,0.388-0.057,0.555-0.168l15-10C20.833,12.646,21,12.334,21,12 S20.833,11.354,20.555,11.168z\"\n ></path>\n </g>\n </Svg>\n )\n}\n\nexport default PlaySolid\nPlaySolid.displayName = 'PlaySolid'\nPlaySolid.style = defaultStyles\n","import * as React from 'react'\n\nimport { IconProps } from '../types'\nimport Svg from './svg'\n\nconst defaultStyles = {\n ...Svg.styles,\n fill: 'none',\n stroke: 'currentColor',\n}\n\n/**\n * ArrowUp icon component\n * @param fill - Icon fill color\n * @param strokeColor - Icon stroke color\n * @param styles - Icon styles\n * @param size - Icon size\n */\nexport const PauseSolid = ({\n strokeColor = 'currentColor',\n styles,\n size = 24,\n role = 'img',\n alt = 'Pause arrow icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} styles={styles} role={role} alt={alt} {...props}>\n <g fill={strokeColor}>\n <path\n d=\"M7,1H2A1,1,0,0,0,1,2V22a1,1,0,0,0,1,1H7a1,1,0,0,0,1-1V2A1,1,0,0,0,7,1Z\"\n fill={strokeColor}\n ></path>\n <path\n d=\"M22,1H17a1,1,0,0,0-1,1V22a1,1,0,0,0,1,1h5a1,1,0,0,0,1-1V2A1,1,0,0,0,22,1Z\"\n fill={strokeColor}\n ></path>\n </g>\n </Svg>\n )\n}\n\nexport default PauseSolid\nPauseSolid.displayName = 'PauseSolid'\nPauseSolid.style = defaultStyles\n","import * as React from 'react'\n\nimport { IconProps } from '../types'\nimport Svg from './svg'\n\nconst defaultStyles = {\n ...Svg.styles,\n fill: 'none',\n stroke: 'currentColor',\n}\n\n/**\n * Resume icon component\n * @param fill - Icon fill color\n * @param strokeColor - Icon stroke color\n * @param styles - Icon styles\n * @param size - Icon size\n */\nexport const ResumeSolid = ({\n strokeColor = 'currentColor',\n styles,\n size = 16,\n role = 'img',\n alt = 'Up arrow icon',\n ...props\n}: Pick<\n IconProps,\n 'strokeColor' | 'fill' | 'styles' | 'size' | 'role' | 'alt'\n>) => {\n return (\n <Svg size={size} styles={styles} role={role} alt={alt} {...props}>\n <g fill={strokeColor}>\n <path\n fill={strokeColor}\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3 21.8685L17.8028 12L3 2.1315L3 21.8685Z\"\n ></path>\n <path\n fill={strokeColor}\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M19 2L19 22L21 22L21 2L19 2Z\"\n ></path>\n </g>\n </Svg>\n )\n}\n\nexport default ResumeSolid\nResumeSolid.displayName = 'ResumeSolid'\nResumeSolid.style = defaultStyles\n","import * as React from \"react\";\n\nimport { IconProps } from \"../types\";\nimport Svg from \"./svg\";\n\n/**\n * Add Icon component\n * @param {string} fill - Icon fill color (default: 'currentColor')\n * @param {string} size - Icon size (default: '24')\n * @param {IconProps} props - Other icon properties\n * @returns {JSX.Element} - Rendered component\n */\nexport const Info = ({\n fill = \"currentColor\",\n size = 24,\n role = \"img\",\n alt = \"Info icon\",\n ...props\n}: Pick<\n IconProps,\n \"strokeColor\" | \"fill\" | \"styles\" | \"size\" | \"role\" | \"alt\"\n>): JSX.Element => {\n return (\n <Svg size={size} role={role} alt={alt} {...props}>\n <g fill={fill}>\n <path\n d=\"M11 17h2v-6h-2v6zm1-15C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zM11 9h2V7h-2v2z\"\n fill={fill}\n />\n </g>\n </Svg>\n );\n};\n\nexport default Info;\nInfo.displayName = \"Info\";\n","import * as React from \"react\";\n\nimport { IconProps } from \"../types\";\nimport Svg from \"./svg\";\n\n/**\n * Add Icon component\n * @param {string} fill - Icon fill color (default: 'currentColor')\n * @param {string} size - Icon size (default: '24')\n * @param {IconProps} props - Other icon properties\n * @returns {JSX.Element} - Rendered component\n */\nexport const AlertSolid = ({\n fill = \"currentColor\",\n size = 24,\n role = \"img\",\n alt = \"Add icon\",\n ...props\n}: Pick<\n IconProps,\n \"strokeColor\" | \"fill\" | \"styles\" | \"size\" | \"role\" | \"alt\"\n>): JSX.Element => {\n return (\n <Svg size={size} role={role} alt={alt} {...props}>\n <g fill={fill}>\n <path\n d=\"M23.707,6.736,17.263.293A1,1,0,0,0,16.556,0H7.444a1,1,0,0,0-.707.293L.293,6.736A1,1,0,0,0,0,7.443v9.114a1,1,0,0,0,.293.707l6.444,6.443A1,1,0,0,0,7.444,24h9.112a1,1,0,0,0,.707-.293l6.444-6.443A1,1,0,0,0,24,16.557V7.443A1,1,0,0,0,23.707,6.736ZM13.645,5,13,14H11l-.608-9ZM12,20a2,2,0,1,1,2-2A2,2,0,0,1,12,20Z\"\n fill={fill}\n />\n </g>\n </Svg>\n );\n};\n\nexport default AlertSolid;\nAlertSolid.displayName = \"AlertSolid\";\n","import * as React from \"react\";\n\nimport { IconProps } from \"../types\";\nimport Svg from \"./svg\";\n\n/**\n * Add Icon component\n * @param {string} fill - Icon fill color (default: 'currentColor')\n * @param {string} size - Icon size (default: '24')\n * @param {IconProps} props - Other icon properties\n * @returns {JSX.Element} - Rendered component\n */\nexport const InfoSolid = ({\n fill = \"currentColor\",\n size = 24,\n role = \"img\",\n alt = \"Add icon\",\n ...props\n}: Pick<\n IconProps,\n \"strokeColor\" | \"fill\" | \"styles\" | \"size\" | \"role\" | \"alt\"\n>): JSX.Element => {\n return (\n <Svg size={size} role={role} alt={alt} {...props}>\n <g fill={fill}>\n <path\n fill={fill}\n d=\"M8,17.06V20h8v-2.94c3.059-1.514,5-4.607,5-8.06c0-4.963-4.038-9-9-9S3,4.037,3,9 C3,12.452,4.941,15.546,8,17.06z M7,9c0-2.757,2.243-5,5-5h1v2h-1c-1.654,0-3,1.346-3,3v1H7V9z\"\n ></path>{\" \"}\n <path\n fill={fill}\n d=\"M8,22v1c0,0.553,0.448,1,1,1h6c0.552,0,1-0.447,1-1v-1H8z\"\n ></path>\n </g>\n </Svg>\n );\n};\n\nexport default InfoSolid;\nInfoSolid.displayName = \"InfoSolid\";\n","import * as React from \"react\";\n\nimport { IconProps } from \"../types\";\nimport Svg from \"./svg\";\n\n/**\n * Add Icon component\n * @param {string} fill - Icon fill color (default: 'currentColor')\n * @param {string} size - Icon size (default: '24')\n * @param {IconProps} props - Other icon properties\n * @returns {JSX.Element} - Rendered component\n */\nexport const QuestionSolid = ({\n fill = \"currentColor\",\n size = 24,\n role = \"img\",\n alt = \"Add icon\",\n ...props\n}: Pick<\n IconProps,\n \"strokeColor\" | \"fill\" | \"styles\" | \"size\" | \"role\" | \"alt\"\n>): JSX.Element => {\n return (\n <Svg size={size} role={role} alt={alt} {...props}>\n <g fill={fill}>\n <path\n d=\"M12,0C5.383,0,0,5.383,0,12s5.383,12,12,12,12-5.383,12-12S18.617,0,12,0Zm0,19.5c-.69,0-1.25-.56-1.25-1.25s.56-1.25,1.25-1.25,1.25,.56,1.25,1.25-.56,1.25-1.25,1.25Zm2.688-7.198c-1.444,1.224-1.688,1.667-1.688,2.198,0,.553-.447,1-1,1s-1-.447-1-1c0-1.434,.807-2.379,2.395-3.724,.447-.38,1.844-1.72,1.024-3.046-.532-.861-2.517-.984-4.162-.256-.507,.223-1.096-.006-1.319-.511-.223-.505,.006-1.096,.511-1.319,2.33-1.03,5.463-.924,6.672,1.035,1.103,1.784,.554,3.938-1.433,5.622Z\"\n fill={fill}\n ></path>\n </g>\n </Svg>\n );\n};\n\nexport default QuestionSolid;\nQuestionSolid.displayName = \"QuestionSolid\";\n","import * as React from \"react\";\n\nimport { IconProps } from \"../types\";\nimport Svg from \"./svg\";\n\n/**\n * Add Icon component\n * @param {string} fill - Icon fill color (default: 'currentColor')\n * @param {string} size - Icon size (default: '24')\n * @param {IconProps} props - Other icon properties\n * @returns {JSX.Element} - Rendered component\n */\nexport const WarnSolid = ({\n fill = \"currentColor\",\n size = 24,\n role = \"img\",\n alt = \"Add icon\",\n ...props\n}: Pick<\n IconProps,\n \"strokeColor\" | \"fill\" | \"styles\" | \"size\" | \"role\" | \"alt\"\n>): JSX.Element => {\n return (\n <Svg size={size} role={role} alt={alt} {...props}>\n <g fill={fill}>\n <path\n d=\"M23.641,18.485L14.732,1.643C13.931,.134,12.059-.44,10.55,.361c-.546,.29-.992,.736-1.282,1.282L.359,18.485c-.793,1.504-.217,3.367,1.288,4.16,.445,.235,.942,.357,1.445,.355H20.908c1.7,.005,3.083-1.369,3.088-3.07,.002-.504-.12-1-.355-1.445Zm-11.641,1.515c-.828,0-1.5-.672-1.5-1.5s.672-1.5,1.5-1.5,1.5,.672,1.5,1.5-.672,1.5-1.5,1.5Zm.53-5h-1.061c-.264,0-.483-.205-.499-.469l-.438-7c-.018-.288,.211-.531,.499-.531h1.936c.288,0,.517,.243,.499,.531l-.438,7c-.016,.264-.235,.469-.499,.469Z\"\n fill={fill}\n />\n </g>\n </Svg>\n );\n};\n\nexport default WarnSolid;\nWarnSolid.displayName = \"WarnSolid\";\n","import * as React from \"react\";\n\nimport { IconProps } from \"../types\";\nimport Svg from \"./svg\";\n\n/**\n * Add Icon component\n * @param {string} fill - Icon fill color (default: 'currentColor')\n * @param {string} size - Icon size (default: '24')\n * @param {IconProps} props - Other icon properties\n * @returns {JSX.Element} - Rendered component\n */\nexport const SuccessSolid = ({\n fill = \"currentColor\",\n size = 24,\n role = \"img\",\n alt = \"Add icon\",\n ...props\n}: Pick<\n IconProps,\n \"strokeColor\" | \"fill\" | \"styles\" | \"size\" | \"role\" | \"alt\"\n>): JSX.Element => {\n return (\n <Svg size={size} role={role} alt={alt} {...props}>\n <g fill={fill}>\n <path\n d=\"M12,0C5.373,0,0,5.373,0,12s5.373,12,12,12,12-5.373,12-12C23.981,5.381,18.619,.019,12,0Zm7.207,7.707l-9,9c-.195,.195-.451,.293-.707,.293s-.512-.098-.707-.293l-4-4c-.391-.391-.391-1.023,0-1.414s1.023-.391,1.414,0l3.293,3.293L17.793,6.293c.391-.391,1.023-.391,1.414,0s.391,1.023,0,1.414Z\"\n fill={fill}\n ></path>\n </g>\n </Svg>\n );\n};\n\nexport default SuccessSolid;\nSuccessSolid.displayName = \"SuccessSolid\";\n","import * as React from \"react\";\n\nimport { IconProps } from \"../types\";\nimport Svg from \"./svg\";\n\n/**\n * Add Icon component\n * @param {string} fill - Icon fill color (default: 'currentColor')\n * @param {string} size - Icon size (default: '24')\n * @param {IconProps} props - Other icon properties\n * @returns {JSX.Element} - Rendered component\n */\nexport const AlertSquareSolid = ({\n fill = \"currentColor\",\n size = 24,\n role = \"img\",\n alt = \"Add icon\",\n ...props\n}: Pick<\n IconProps,\n \"strokeColor\" | \"fill\" | \"styles\" | \"size\" | \"role\" | \"alt\"\n>): JSX.Element => {\n return (\n <Svg size={size} role={role} alt={alt} {...props}>\n <g fill={fill}>\n <path\n d=\"M20,1H4c-1.654,0-3,1.346-3,3V20c0,1.654,1.346,3,3,3H20c1.654,0,3-1.346,3-3V4c0-1.654-1.346-3-3-3ZM11,7c0-.553,.448-1,1-1s1,.447,1,1v6c0,.553-.448,1-1,1s-1-.447-1-1V7Zm1,11.5c-.69,0-1.25-.56-1.25-1.25s.56-1.25,1.25-1.25,1.25,.56,1.25,1.25-.56,1.25-1.25,1.25Z\"\n fill={fill}\n ></path>\n </g>\n </Svg>\n );\n};\n\nexport default AlertSquareSolid;\nAlertSquareSolid.displayName = \"AlertSquareSolid\";\n","import {\n Add,\n ArrowDown,\n ArrowLeft,\n ArrowRight,\n ArrowUp,\n Chat,\n Code,\n Copy,\n Down,\n Home,\n Info,\n Left,\n Minus,\n Remove,\n Right,\n Star,\n Up,\n User,\n Play,\n Pause,\n Stop,\n Resume,\n PlaySolid,\n PauseSolid,\n ResumeSolid,\n StopSolid,\n AlertSolid,\n InfoSolid,\n QuestionSolid,\n WarnSolid,\n SuccessSolid,\n AlertSquareSolid,\n} from \"./index\";\n\nimport UI from \"#components/ui\";\nimport React from \"react\";\n\n/**\n * The default styles object for the Icon component.\n *\n * @property {string} display - Sets display to 'inline-flex' to make Icon inline.\n * @property {string} direction - Sets flex direction to 'row'.\n * @property {string} gap - Sets gap between items to '.2rem'.\n * @property {string} placeItems - Centers items vertically using 'center'.\n * @property {string} width - Sets width to 'auto' for automatic sizing.\n */\nconst defaultStyles = {\n display: \"inline-flex\",\n direction: \"row\",\n gap: \".2rem\",\n placeItems: \"center\",\n width: \"auto\",\n};\n\nexport type IconProps = React.ComponentProps<typeof UI> & {\n /**\n * Controls screen reader visibility.\n * - `true` (default): Hides icon from screen readers (decorative icon)\n * - `false`: Makes icon visible to screen readers (semantic icon)\n *\n * **When to use decorative (aria-hidden=\"true\", default):**\n * - Icon accompanies visible text (e.g., button with icon + label)\n * - Icon is purely visual decoration\n *\n * **When to use semantic (aria-hidden=\"false\"):**\n * - Icon is the only content (e.g., icon-only button)\n * - Must provide `aria-label` or `aria-labelledby` for accessible name\n *\n * @default true\n * @see https://www.w3.org/WAI/WCAG21/Understanding/non-text-content.html\n */\n \"aria-hidden\"?: boolean;\n /**\n * Accessible label for semantic icons.\n * Required when icon is standalone (not accompanied by visible text).\n *\n * @example\n * ```tsx\n * // ✅ GOOD: Icon-only button with accessible name\n * <button>\n * <Icon aria-hidden={false} aria-label=\"Close dialog\">\n * <Icon.Remove />\n * </Icon>\n * </button>\n *\n * // ✅ GOOD: Icon with visible text (default decorative)\n * <button>\n * <Icon><Icon.Add /></Icon>\n * Add Item\n * </button>\n * ```\n */\n \"aria-label\"?: string;\n /**\n * Semantic role override.\n * Use `role=\"img\"` when icon conveys meaning and is not decorative.\n *\n * @default undefined (no role for decorative icons)\n */\n role?: string;\n};\n\n/**\n * Icon wrapper component that enforces accessibility best practices.\n *\n * **Default behavior (decorative icon):**\n * - Hidden from screen readers (`aria-hidden=\"true\"`)\n * - Used when icon accompanies visible text\n *\n * **Semantic icon pattern:**\n * - Set `aria-hidden={false}` to expose to screen readers\n * - Must provide `aria-label` for accessible name\n * - Consider `role=\"img\"` for complex SVG icons\n *\n * @param {IconProps} props - Component props\n * @returns {React.ReactElement} Accessible icon wrapper\n *\n * @example\n * // ✅ Decorative icon with text (default)\n * <button>\n * <Icon><Icon.Save /></Icon>\n * Save Changes\n * </button>\n *\n * @example\n * // ✅ Semantic icon-only button\n * <button aria-label=\"Close dialog\">\n * <Icon aria-hidden={false}>\n * <Icon.Remove />\n * </Icon>\n * </button>\n *\n * @example\n * // ❌ BAD: Icon-only button without accessible name\n * <button>\n * <Icon><Icon.Remove /></Icon>\n * </button>\n */\nexport const Icon = ({\n id,\n classes,\n children,\n styles,\n \"aria-hidden\": ariaHidden = true,\n \"aria-label\": ariaLabel,\n role,\n ...props\n}: IconProps) => {\n return (\n <UI\n id={id}\n as=\"span\"\n styles={styles}\n className={classes}\n data-icon\n data-style=\"icons\"\n aria-hidden={ariaHidden}\n aria-label={ariaLabel}\n role={role}\n {...props}\n >\n {children}\n </UI>\n );\n};\n\nexport default Icon;\nIcon.displayName = \"Icon\";\nIcon.Add = Add;\nIcon.ArrowDown = ArrowDown;\nIcon.ArrowLeft = ArrowLeft;\nIcon.ArrowRight = ArrowRight;\nIcon.ArrowUp = ArrowUp;\nIcon.Chat = Chat;\nIcon.Code = Code;\nIcon.Copy = Copy;\nIcon.Down = Down;\nIcon.Home = Home;\nIcon.Info = Info;\nIcon.InfoSolid = InfoSolid;\nIcon.AlertSolid = AlertSolid;\nIcon.Left = Left;\nIcon.Minus = Minus;\nIcon.Pause = Pause;\nIcon.PauseSolid = PauseSolid;\nIcon.Play = Play;\nIcon.PlaySolid = PlaySolid;\nIcon.Remove = Remove;\nIcon.Resume = Resume;\nIcon.ResumeSolid = ResumeSolid;\nIcon.Right = Right;\nIcon.Star = Star;\nIcon.Stop = Stop;\nIcon.StopSolid = StopSolid;\nIcon.Up = Up;\nIcon.User = User;\nIcon.styles = defaultStyles;\nIcon.QuestionSolid = QuestionSolid;\nIcon.WarnSolid = WarnSolid;\nIcon.SuccessSolid = SuccessSolid;\nIcon.AlertSquareSolid = AlertSquareSolid;\n// aliases\nIcon.Close = Icon.Remove;\n"]}
@@ -0,0 +1,7 @@
1
+ import e from 'react';
2
+
3
+ var t=e.forwardRef(({as:o,styles:p,classes:r,children:n,defaultStyles:s,...P},m)=>{let C=o||"div",a={...s,...p};return e.createElement(C,{ref:m,style:a,className:r,...P},n)});t.displayName="FP";var c=t;
4
+
5
+ export { c as a };
6
+ //# sourceMappingURL=out.js.map
7
+ //# sourceMappingURL=chunk-6SAHIYCZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/fp.tsx"],"names":["React","FP","as","styles","classes","children","defaultStyles","props","ref","Component","styleObj","fp_default"],"mappings":"AAAA,OAAOA,MAAW,QA6HlB,IAAMC,EAAKD,EAAM,WACf,CACE,CAAE,GAAAE,EAAI,OAAAC,EAAQ,QAAAC,EAAS,SAAAC,EAAU,cAAAC,EAAe,GAAGC,CAAM,EACzDC,IACG,CACH,IAAMC,EAAYP,GAAM,MAElBQ,EAAW,CAAE,GAAGJ,EAAe,GAAGH,CAAO,EAE/C,OACEH,EAAA,cAACS,EAAA,CAAU,IAAKD,EAAK,MAAOE,EAAU,UAAWN,EAAU,GAAGG,GAC3DF,CACH,CAEJ,CACF,EAEAJ,EAAG,YAAc,KAUjB,IAAOU,EAAQV","sourcesContent":["import React from 'react'\nimport { ComponentProps } from '../types'\n\n/**\n * @deprecated This type is deprecated. Use `PolymorphicRef` from './ui.tsx' instead.\n * The UI component provides better type safety and accessibility features.\n */\ntype PolymorphicRef<C extends React.ElementType> = React.Ref<\n React.ElementRef<C>\n>\n\n/**\n * @deprecated This type is deprecated. Use `AsProp` from './ui.tsx' instead.\n * The UI component provides better type safety and accessibility features.\n */\ntype AsProp<C extends React.ElementType> = {\n as?: C\n}\n\n/**\n * @deprecated This type is deprecated. Use `PropsToOmit` from './ui.tsx' instead.\n * The UI component provides better type safety and accessibility features.\n */\ntype PropsToOmit<C extends React.ElementType, P> = keyof (AsProp<C> & P)\n\n/**\n * @deprecated This type is deprecated. Use `PolymorphicComponentProp` from './ui.tsx' instead.\n * The UI component provides better type safety and accessibility features.\n */\ntype PolymorphicComponentProp<\n C extends React.ElementType,\n // eslint-disable-next-line @typescript-eslint/no-empty-object-type\n Props = {},\n> = React.PropsWithChildren<Props & AsProp<C>> &\n Omit<React.ComponentPropsWithoutRef<C>, PropsToOmit<C, Props>>\n\n/**\n * @deprecated This type is deprecated. Use `PolymorphicComponentPropWithRef` from './ui.tsx' instead.\n * The UI component provides better type safety and accessibility features.\n */\ntype PolymorphicComponentPropWithRef<\n C extends React.ElementType,\n // eslint-disable-next-line @typescript-eslint/no-empty-object-type\n Props = {},\n> = PolymorphicComponentProp<C, Props> & {\n ref?: PolymorphicRef<C> | React.ForwardedRef<React.ElementRef<C>>\n}\n\n/**\n * @deprecated This type is deprecated. Use `UIProps` from './ui.tsx' instead.\n * The UI component provides better type safety and accessibility features.\n */\ntype FPProps<C extends React.ElementType> = PolymorphicComponentPropWithRef<\n C,\n {\n renderStyles?: boolean\n styles?: React.CSSProperties\n classes?: string\n }\n>\n\n/**\n * FPComponent type definition\n *\n * @deprecated This type is deprecated. Use the `UI` component from './ui.tsx' instead.\n * The UI component provides enhanced accessibility documentation, better type safety,\n * and comprehensive WCAG 2.1 AA compliance guidance.\n *\n * @typeParam C - The HTML element type to render\n * @param props - The component props\n * @returns React component\n *\n * @example\n * ```typescript\n * // Migration from FP to UI\n * // Before:\n * import FP from '@fpkit/acss/components/fp';\n * <FP as=\"button\" styles={{ padding: '1rem' }}>Click me</FP>\n *\n * // After:\n * import UI from '@fpkit/acss/components/ui';\n * <UI as=\"button\" styles={{ padding: '1rem' }}>Click me</UI>\n * ```\n */\ntype FPComponent = {\n <C extends React.ElementType = 'span'>(\n props: FPProps<C>,\n ): React.ReactElement | null\n displayName?: string\n}\n\n/**\n * @deprecated **DEPRECATED:** This component is deprecated and will be removed in a future version.\n * Please use the `UI` component from `./ui.tsx` instead.\n *\n * The UI component is a drop-in replacement with the same API but provides:\n * - Enhanced accessibility documentation and WCAG 2.1 AA compliance guidance\n * - Better TypeScript type safety with detailed JSDoc comments\n * - Comprehensive examples for accessible component patterns\n * - More robust style merging with defaultStyles support\n *\n * @example\n * ```typescript\n * // Migration Guide\n * // Before:\n * import FP from '@fpkit/acss/components/fp';\n * <FP as=\"button\" styles={{ padding: '1rem' }} classes=\"btn\">\n * Click me\n * </FP>\n *\n * // After:\n * import UI from '@fpkit/acss/components/ui';\n * <UI as=\"button\" styles={{ padding: '1rem' }} classes=\"btn\">\n * Click me\n * </UI>\n * ```\n *\n * @param {Object} props - Component props\n * @param {React.ElementType} props.as - The HTML element to render. Defaults to 'div'.\n * @param {boolean} props.renderStyles - Whether to render styles or not. Defaults to true.\n * @param {Object} props.styles - The styles to apply to the component.\n * @param {Object} props.defaultStyles - The default styles to apply to the component.\n * @param {React.ReactNode} props.children - The children to render inside the component.\n * @returns {React.ReactElement} - A React component that renders an HTML element with optional styles.\n */\nconst FP = React.forwardRef(\n <C extends React.ElementType>(\n { as, styles, classes, children, defaultStyles, ...props }: FPProps<C>,\n ref?: PolymorphicRef<C>,\n ) => {\n const Component = as || 'div'\n\n const styleObj = { ...defaultStyles, ...styles } as React.CSSProperties\n\n return (\n <Component ref={ref} style={styleObj} className={classes} {...props}>\n {children}\n </Component>\n )\n },\n) as FPComponent\n\nFP.displayName = 'FP'\n\n/**\n * @deprecated This interface is deprecated. Use the `UI` component from './ui.tsx' instead.\n * The UI component provides better type safety and accessibility features.\n */\nexport interface BoxProps extends ComponentProps {\n renderStyles: true\n}\n\nexport default FP\n"]}