@particle-academy/react-fancy 5.12.0 → 5.14.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 (959) hide show
  1. package/dist/AudioViewer.types-VWhRx6XG.d.cts +22 -0
  2. package/dist/AudioViewer.types-VWhRx6XG.d.ts +22 -0
  3. package/dist/Card-BZ5F6-wd.d.cts +50 -0
  4. package/dist/Card-BZ5F6-wd.d.ts +50 -0
  5. package/dist/Carousel.context-Ba3gKZHQ.d.cts +61 -0
  6. package/dist/Carousel.context-Ba3gKZHQ.d.ts +61 -0
  7. package/dist/FieldMode.context-Bv_wuS8V.d.ts +74 -0
  8. package/dist/FieldMode.context-C28RH8GR.d.cts +74 -0
  9. package/dist/ImageViewer.types-BaqlDeuo.d.cts +55 -0
  10. package/dist/ImageViewer.types-BaqlDeuo.d.ts +55 -0
  11. package/dist/PdfViewer.types-_u6vboSl.d.cts +14 -0
  12. package/dist/PdfViewer.types-_u6vboSl.d.ts +14 -0
  13. package/dist/Timeline-7zHhIk3P.d.cts +73 -0
  14. package/dist/Timeline-Cvrd7N7-.d.ts +73 -0
  15. package/dist/VideoViewer.types-CTwS6PcM.d.cts +26 -0
  16. package/dist/VideoViewer.types-CTwS6PcM.d.ts +26 -0
  17. package/dist/accordion-panel.cjs +34 -0
  18. package/dist/accordion-panel.cjs.map +1 -0
  19. package/dist/accordion-panel.d.cts +186 -0
  20. package/dist/accordion-panel.d.ts +186 -0
  21. package/dist/accordion-panel.js +5 -0
  22. package/dist/accordion-panel.js.map +1 -0
  23. package/dist/accordion.cjs +17 -0
  24. package/dist/accordion.cjs.map +1 -0
  25. package/dist/accordion.d.cts +53 -0
  26. package/dist/accordion.d.ts +53 -0
  27. package/dist/accordion.js +4 -0
  28. package/dist/accordion.js.map +1 -0
  29. package/dist/audio-viewer.cjs +13 -0
  30. package/dist/audio-viewer.cjs.map +1 -0
  31. package/dist/audio-viewer.d.cts +14 -0
  32. package/dist/audio-viewer.d.ts +14 -0
  33. package/dist/audio-viewer.js +4 -0
  34. package/dist/audio-viewer.js.map +1 -0
  35. package/dist/autocomplete.cjs +20 -0
  36. package/dist/autocomplete.cjs.map +1 -0
  37. package/dist/autocomplete.d.cts +28 -0
  38. package/dist/autocomplete.d.ts +28 -0
  39. package/dist/autocomplete.js +11 -0
  40. package/dist/autocomplete.js.map +1 -0
  41. package/dist/avatar.cjs +13 -0
  42. package/dist/avatar.cjs.map +1 -0
  43. package/dist/avatar.d.cts +26 -0
  44. package/dist/avatar.d.ts +26 -0
  45. package/dist/avatar.js +4 -0
  46. package/dist/avatar.js.map +1 -0
  47. package/dist/badge.cjs +13 -0
  48. package/dist/badge.cjs.map +1 -0
  49. package/dist/badge.d.cts +18 -0
  50. package/dist/badge.d.ts +18 -0
  51. package/dist/badge.js +4 -0
  52. package/dist/badge.js.map +1 -0
  53. package/dist/brand.cjs +17 -0
  54. package/dist/brand.cjs.map +1 -0
  55. package/dist/brand.d.cts +43 -0
  56. package/dist/brand.d.ts +43 -0
  57. package/dist/brand.js +4 -0
  58. package/dist/brand.js.map +1 -0
  59. package/dist/breadcrumbs.cjs +15 -0
  60. package/dist/breadcrumbs.cjs.map +1 -0
  61. package/dist/breadcrumbs.d.cts +36 -0
  62. package/dist/breadcrumbs.d.ts +36 -0
  63. package/dist/breadcrumbs.js +6 -0
  64. package/dist/breadcrumbs.js.map +1 -0
  65. package/dist/button.cjs +20 -0
  66. package/dist/button.cjs.map +1 -0
  67. package/dist/button.d.cts +84 -0
  68. package/dist/button.d.ts +84 -0
  69. package/dist/button.js +7 -0
  70. package/dist/button.js.map +1 -0
  71. package/dist/calendar.cjs +13 -0
  72. package/dist/calendar.cjs.map +1 -0
  73. package/dist/calendar.d.cts +20 -0
  74. package/dist/calendar.d.ts +20 -0
  75. package/dist/calendar.js +4 -0
  76. package/dist/calendar.js.map +1 -0
  77. package/dist/callout.cjs +13 -0
  78. package/dist/callout.cjs.map +1 -0
  79. package/dist/callout.d.cts +16 -0
  80. package/dist/callout.d.ts +16 -0
  81. package/dist/callout.js +4 -0
  82. package/dist/callout.js.map +1 -0
  83. package/dist/card.cjs +29 -0
  84. package/dist/card.cjs.map +1 -0
  85. package/dist/card.d.cts +29 -0
  86. package/dist/card.d.ts +29 -0
  87. package/dist/card.js +4 -0
  88. package/dist/card.js.map +1 -0
  89. package/dist/carousel.cjs +34 -0
  90. package/dist/carousel.cjs.map +1 -0
  91. package/dist/carousel.d.cts +13 -0
  92. package/dist/carousel.d.ts +13 -0
  93. package/dist/carousel.js +5 -0
  94. package/dist/carousel.js.map +1 -0
  95. package/dist/chart.cjs +13 -0
  96. package/dist/chart.cjs.map +1 -0
  97. package/dist/chart.d.cts +140 -0
  98. package/dist/chart.d.ts +140 -0
  99. package/dist/chart.js +4 -0
  100. package/dist/chart.js.map +1 -0
  101. package/dist/chat-drawer.cjs +15 -0
  102. package/dist/chat-drawer.cjs.map +1 -0
  103. package/dist/chat-drawer.d.cts +63 -0
  104. package/dist/chat-drawer.d.ts +63 -0
  105. package/dist/chat-drawer.js +6 -0
  106. package/dist/chat-drawer.js.map +1 -0
  107. package/dist/checkbox-group.cjs +19 -0
  108. package/dist/checkbox-group.cjs.map +1 -0
  109. package/dist/checkbox-group.d.cts +18 -0
  110. package/dist/checkbox-group.d.ts +18 -0
  111. package/dist/checkbox-group.js +10 -0
  112. package/dist/checkbox-group.js.map +1 -0
  113. package/dist/checkbox.cjs +17 -0
  114. package/dist/checkbox.cjs.map +1 -0
  115. package/dist/checkbox.d.cts +16 -0
  116. package/dist/checkbox.d.ts +16 -0
  117. package/dist/checkbox.js +8 -0
  118. package/dist/checkbox.js.map +1 -0
  119. package/dist/chunk-2CNSZCVE.cjs +119 -0
  120. package/dist/chunk-2CNSZCVE.cjs.map +1 -0
  121. package/dist/chunk-2CYRAKWI.cjs +241 -0
  122. package/dist/chunk-2CYRAKWI.cjs.map +1 -0
  123. package/dist/chunk-2G3L4BLU.cjs +257 -0
  124. package/dist/chunk-2G3L4BLU.cjs.map +1 -0
  125. package/dist/chunk-2PELJ4VA.cjs +335 -0
  126. package/dist/chunk-2PELJ4VA.cjs.map +1 -0
  127. package/dist/chunk-2S7WRR5P.cjs +156 -0
  128. package/dist/chunk-2S7WRR5P.cjs.map +1 -0
  129. package/dist/chunk-32AJIHBZ.js +201 -0
  130. package/dist/chunk-32AJIHBZ.js.map +1 -0
  131. package/dist/chunk-3DJGPNUI.js +39 -0
  132. package/dist/chunk-3DJGPNUI.js.map +1 -0
  133. package/dist/chunk-3ETOEEVN.cjs +62 -0
  134. package/dist/chunk-3ETOEEVN.cjs.map +1 -0
  135. package/dist/chunk-3F66SAE7.js +40 -0
  136. package/dist/chunk-3F66SAE7.js.map +1 -0
  137. package/dist/chunk-3GRC5J2L.cjs +54 -0
  138. package/dist/chunk-3GRC5J2L.cjs.map +1 -0
  139. package/dist/chunk-3SQ34IQC.cjs +124 -0
  140. package/dist/chunk-3SQ34IQC.cjs.map +1 -0
  141. package/dist/chunk-3WGRVDQR.cjs +39 -0
  142. package/dist/chunk-3WGRVDQR.cjs.map +1 -0
  143. package/dist/chunk-3Z6ALUWP.cjs +13 -0
  144. package/dist/chunk-3Z6ALUWP.cjs.map +1 -0
  145. package/dist/chunk-45BBNJQD.js +2019 -0
  146. package/dist/chunk-45BBNJQD.js.map +1 -0
  147. package/dist/chunk-47TFRODY.cjs +107 -0
  148. package/dist/chunk-47TFRODY.cjs.map +1 -0
  149. package/dist/chunk-4DQ6HX27.cjs +187 -0
  150. package/dist/chunk-4DQ6HX27.cjs.map +1 -0
  151. package/dist/chunk-4UA45GB4.js +129 -0
  152. package/dist/chunk-4UA45GB4.js.map +1 -0
  153. package/dist/chunk-57FQGQJK.cjs +26 -0
  154. package/dist/chunk-57FQGQJK.cjs.map +1 -0
  155. package/dist/chunk-5FV6GMFP.cjs +4 -0
  156. package/dist/chunk-5FV6GMFP.cjs.map +1 -0
  157. package/dist/chunk-5HOQ2PHR.cjs +287 -0
  158. package/dist/chunk-5HOQ2PHR.cjs.map +1 -0
  159. package/dist/chunk-5I4PR2KV.cjs +131 -0
  160. package/dist/chunk-5I4PR2KV.cjs.map +1 -0
  161. package/dist/chunk-5LHG7HEY.cjs +42 -0
  162. package/dist/chunk-5LHG7HEY.cjs.map +1 -0
  163. package/dist/chunk-5OC6DUYT.js +139 -0
  164. package/dist/chunk-5OC6DUYT.js.map +1 -0
  165. package/dist/chunk-5QL7XT3N.js +80 -0
  166. package/dist/chunk-5QL7XT3N.js.map +1 -0
  167. package/dist/chunk-5U2DZ7AV.js +49 -0
  168. package/dist/chunk-5U2DZ7AV.js.map +1 -0
  169. package/dist/chunk-5UOQVGZC.cjs +930 -0
  170. package/dist/chunk-5UOQVGZC.cjs.map +1 -0
  171. package/dist/chunk-6BW5BQMN.cjs +57 -0
  172. package/dist/chunk-6BW5BQMN.cjs.map +1 -0
  173. package/dist/chunk-6FBFE66M.cjs +292 -0
  174. package/dist/chunk-6FBFE66M.cjs.map +1 -0
  175. package/dist/chunk-6FQGMVF2.js +25 -0
  176. package/dist/chunk-6FQGMVF2.js.map +1 -0
  177. package/dist/chunk-6GC5DMOK.cjs +141 -0
  178. package/dist/chunk-6GC5DMOK.cjs.map +1 -0
  179. package/dist/chunk-6H6OYLMJ.js +105 -0
  180. package/dist/chunk-6H6OYLMJ.js.map +1 -0
  181. package/dist/chunk-6L6LI2RL.cjs +37 -0
  182. package/dist/chunk-6L6LI2RL.cjs.map +1 -0
  183. package/dist/chunk-6MDZQIMZ.cjs +18 -0
  184. package/dist/chunk-6MDZQIMZ.cjs.map +1 -0
  185. package/dist/chunk-6OSHAP6L.cjs +110 -0
  186. package/dist/chunk-6OSHAP6L.cjs.map +1 -0
  187. package/dist/chunk-7AFEKDUS.js +202 -0
  188. package/dist/chunk-7AFEKDUS.js.map +1 -0
  189. package/dist/chunk-7C7VF4WY.cjs +155 -0
  190. package/dist/chunk-7C7VF4WY.cjs.map +1 -0
  191. package/dist/chunk-7NLKXBZ2.cjs +88 -0
  192. package/dist/chunk-7NLKXBZ2.cjs.map +1 -0
  193. package/dist/chunk-7XDKIZQE.js +382 -0
  194. package/dist/chunk-7XDKIZQE.js.map +1 -0
  195. package/dist/chunk-A22T6DKO.cjs +283 -0
  196. package/dist/chunk-A22T6DKO.cjs.map +1 -0
  197. package/dist/chunk-A3CNYKT3.js +197 -0
  198. package/dist/chunk-A3CNYKT3.js.map +1 -0
  199. package/dist/chunk-AC7M7JDO.cjs +199 -0
  200. package/dist/chunk-AC7M7JDO.cjs.map +1 -0
  201. package/dist/chunk-AGDW5ENV.js +37 -0
  202. package/dist/chunk-AGDW5ENV.js.map +1 -0
  203. package/dist/chunk-AIA5UNQ5.cjs +4 -0
  204. package/dist/chunk-AIA5UNQ5.cjs.map +1 -0
  205. package/dist/chunk-AKIUDPJU.js +119 -0
  206. package/dist/chunk-AKIUDPJU.js.map +1 -0
  207. package/dist/chunk-ANEX75DF.cjs +39 -0
  208. package/dist/chunk-ANEX75DF.cjs.map +1 -0
  209. package/dist/chunk-AOOBRPTE.cjs +142 -0
  210. package/dist/chunk-AOOBRPTE.cjs.map +1 -0
  211. package/dist/chunk-ARSQY4P7.cjs +101 -0
  212. package/dist/chunk-ARSQY4P7.cjs.map +1 -0
  213. package/dist/chunk-ATFXU6R6.js +122 -0
  214. package/dist/chunk-ATFXU6R6.js.map +1 -0
  215. package/dist/chunk-AUTW5O4W.js +3 -0
  216. package/dist/chunk-AUTW5O4W.js.map +1 -0
  217. package/dist/chunk-AVR5P4GA.cjs +832 -0
  218. package/dist/chunk-AVR5P4GA.cjs.map +1 -0
  219. package/dist/chunk-B3HVWXIQ.cjs +112 -0
  220. package/dist/chunk-B3HVWXIQ.cjs.map +1 -0
  221. package/dist/chunk-BEGDL2CD.js +81 -0
  222. package/dist/chunk-BEGDL2CD.js.map +1 -0
  223. package/dist/chunk-BFKCVSNK.cjs +80 -0
  224. package/dist/chunk-BFKCVSNK.cjs.map +1 -0
  225. package/dist/chunk-BPBI3WWQ.cjs +364 -0
  226. package/dist/chunk-BPBI3WWQ.cjs.map +1 -0
  227. package/dist/chunk-BYIY6BH2.js +927 -0
  228. package/dist/chunk-BYIY6BH2.js.map +1 -0
  229. package/dist/chunk-C4Z4S3CX.js +164 -0
  230. package/dist/chunk-C4Z4S3CX.js.map +1 -0
  231. package/dist/chunk-C5AZNBVB.js +153 -0
  232. package/dist/chunk-C5AZNBVB.js.map +1 -0
  233. package/dist/chunk-CFBK5RIZ.js +35 -0
  234. package/dist/chunk-CFBK5RIZ.js.map +1 -0
  235. package/dist/chunk-CHADHN6M.js +37 -0
  236. package/dist/chunk-CHADHN6M.js.map +1 -0
  237. package/dist/chunk-CPY7NHXM.js +88 -0
  238. package/dist/chunk-CPY7NHXM.js.map +1 -0
  239. package/dist/chunk-CS4GQXYY.js +131 -0
  240. package/dist/chunk-CS4GQXYY.js.map +1 -0
  241. package/dist/chunk-CTMJYV3O.js +99 -0
  242. package/dist/chunk-CTMJYV3O.js.map +1 -0
  243. package/dist/chunk-CZZH45GQ.cjs +122 -0
  244. package/dist/chunk-CZZH45GQ.cjs.map +1 -0
  245. package/dist/chunk-D4WM23Y4.js +109 -0
  246. package/dist/chunk-D4WM23Y4.js.map +1 -0
  247. package/dist/chunk-D7NAXQ2N.js +86 -0
  248. package/dist/chunk-D7NAXQ2N.js.map +1 -0
  249. package/dist/chunk-DJ3YM72H.cjs +353 -0
  250. package/dist/chunk-DJ3YM72H.cjs.map +1 -0
  251. package/dist/chunk-DOSSIU6S.cjs +162 -0
  252. package/dist/chunk-DOSSIU6S.cjs.map +1 -0
  253. package/dist/chunk-DSUHZO6T.js +11 -0
  254. package/dist/chunk-DSUHZO6T.js.map +1 -0
  255. package/dist/chunk-DTPGJNOI.js +204 -0
  256. package/dist/chunk-DTPGJNOI.js.map +1 -0
  257. package/dist/chunk-DV4IMAQW.js +100 -0
  258. package/dist/chunk-DV4IMAQW.js.map +1 -0
  259. package/dist/chunk-DWRMC2FN.cjs +95 -0
  260. package/dist/chunk-DWRMC2FN.cjs.map +1 -0
  261. package/dist/chunk-DZD2RJVD.js +47 -0
  262. package/dist/chunk-DZD2RJVD.js.map +1 -0
  263. package/dist/chunk-E4LFD44D.js +69 -0
  264. package/dist/chunk-E4LFD44D.js.map +1 -0
  265. package/dist/chunk-E7PHL3TD.cjs +144 -0
  266. package/dist/chunk-E7PHL3TD.cjs.map +1 -0
  267. package/dist/chunk-ECZ66DKF.js +522 -0
  268. package/dist/chunk-ECZ66DKF.js.map +1 -0
  269. package/dist/chunk-EERAEPQO.cjs +177 -0
  270. package/dist/chunk-EERAEPQO.cjs.map +1 -0
  271. package/dist/chunk-EIBW5YLS.js +52 -0
  272. package/dist/chunk-EIBW5YLS.js.map +1 -0
  273. package/dist/chunk-ESKVRRVA.js +56 -0
  274. package/dist/chunk-ESKVRRVA.js.map +1 -0
  275. package/dist/chunk-EVXDG2XN.js +108 -0
  276. package/dist/chunk-EVXDG2XN.js.map +1 -0
  277. package/dist/chunk-F6NEPU67.cjs +218 -0
  278. package/dist/chunk-F6NEPU67.cjs.map +1 -0
  279. package/dist/chunk-F6SCZCJE.js +176 -0
  280. package/dist/chunk-F6SCZCJE.js.map +1 -0
  281. package/dist/chunk-FA3D4GFC.cjs +323 -0
  282. package/dist/chunk-FA3D4GFC.cjs.map +1 -0
  283. package/dist/chunk-FCAV5IFW.js +63 -0
  284. package/dist/chunk-FCAV5IFW.js.map +1 -0
  285. package/dist/chunk-FVV76TRF.js +101 -0
  286. package/dist/chunk-FVV76TRF.js.map +1 -0
  287. package/dist/chunk-G2W7B3OG.js +420 -0
  288. package/dist/chunk-G2W7B3OG.js.map +1 -0
  289. package/dist/chunk-G34OBTU3.cjs +27 -0
  290. package/dist/chunk-G34OBTU3.cjs.map +1 -0
  291. package/dist/chunk-GFYSELJF.js +35 -0
  292. package/dist/chunk-GFYSELJF.js.map +1 -0
  293. package/dist/chunk-GIDW3SUE.cjs +59 -0
  294. package/dist/chunk-GIDW3SUE.cjs.map +1 -0
  295. package/dist/chunk-GKGL7F36.js +290 -0
  296. package/dist/chunk-GKGL7F36.js.map +1 -0
  297. package/dist/chunk-GKPCXPCD.js +262 -0
  298. package/dist/chunk-GKPCXPCD.js.map +1 -0
  299. package/dist/chunk-GZIUE4DE.js +117 -0
  300. package/dist/chunk-GZIUE4DE.js.map +1 -0
  301. package/dist/chunk-HAOYXGGJ.js +104 -0
  302. package/dist/chunk-HAOYXGGJ.js.map +1 -0
  303. package/dist/chunk-HBFVOHQC.cjs +102 -0
  304. package/dist/chunk-HBFVOHQC.cjs.map +1 -0
  305. package/dist/chunk-HG6XUJOT.js +328 -0
  306. package/dist/chunk-HG6XUJOT.js.map +1 -0
  307. package/dist/chunk-I6L7OP7G.cjs +203 -0
  308. package/dist/chunk-I6L7OP7G.cjs.map +1 -0
  309. package/dist/chunk-IE4CM2SN.js +122 -0
  310. package/dist/chunk-IE4CM2SN.js.map +1 -0
  311. package/dist/chunk-IF25CE6S.cjs +202 -0
  312. package/dist/chunk-IF25CE6S.cjs.map +1 -0
  313. package/dist/chunk-IF3T3ZCB.cjs +273 -0
  314. package/dist/chunk-IF3T3ZCB.cjs.map +1 -0
  315. package/dist/chunk-IF5LOWUL.js +273 -0
  316. package/dist/chunk-IF5LOWUL.js.map +1 -0
  317. package/dist/chunk-IGU5YXRV.cjs +138 -0
  318. package/dist/chunk-IGU5YXRV.cjs.map +1 -0
  319. package/dist/chunk-IGYIMS6J.js +174 -0
  320. package/dist/chunk-IGYIMS6J.js.map +1 -0
  321. package/dist/chunk-IJ4I55QQ.cjs +38 -0
  322. package/dist/chunk-IJ4I55QQ.cjs.map +1 -0
  323. package/dist/chunk-IXHZVFHX.cjs +44 -0
  324. package/dist/chunk-IXHZVFHX.cjs.map +1 -0
  325. package/dist/chunk-J2DI6RMR.cjs +115 -0
  326. package/dist/chunk-J2DI6RMR.cjs.map +1 -0
  327. package/dist/chunk-J3XS4HHX.js +230 -0
  328. package/dist/chunk-J3XS4HHX.js.map +1 -0
  329. package/dist/chunk-JCOBDDHF.js +118 -0
  330. package/dist/chunk-JCOBDDHF.js.map +1 -0
  331. package/dist/chunk-JHEM6IGT.cjs +49 -0
  332. package/dist/chunk-JHEM6IGT.cjs.map +1 -0
  333. package/dist/chunk-JIYP73OJ.js +169 -0
  334. package/dist/chunk-JIYP73OJ.js.map +1 -0
  335. package/dist/chunk-JKO2Y5SH.js +60 -0
  336. package/dist/chunk-JKO2Y5SH.js.map +1 -0
  337. package/dist/chunk-JPTWZ3RF.cjs +280 -0
  338. package/dist/chunk-JPTWZ3RF.cjs.map +1 -0
  339. package/dist/chunk-JXE5XID6.js +19 -0
  340. package/dist/chunk-JXE5XID6.js.map +1 -0
  341. package/dist/chunk-JXIBUIEY.cjs +144 -0
  342. package/dist/chunk-JXIBUIEY.cjs.map +1 -0
  343. package/dist/chunk-JYKZKSZJ.js +122 -0
  344. package/dist/chunk-JYKZKSZJ.js.map +1 -0
  345. package/dist/chunk-K2DZEYBF.js +321 -0
  346. package/dist/chunk-K2DZEYBF.js.map +1 -0
  347. package/dist/chunk-K7JGOQJG.js +55 -0
  348. package/dist/chunk-K7JGOQJG.js.map +1 -0
  349. package/dist/chunk-KC6QBKKB.cjs +173 -0
  350. package/dist/chunk-KC6QBKKB.cjs.map +1 -0
  351. package/dist/chunk-KE7KXY5C.cjs +233 -0
  352. package/dist/chunk-KE7KXY5C.cjs.map +1 -0
  353. package/dist/chunk-KICZTIZL.cjs +133 -0
  354. package/dist/chunk-KICZTIZL.cjs.map +1 -0
  355. package/dist/chunk-KJ22KE56.cjs +19 -0
  356. package/dist/chunk-KJ22KE56.cjs.map +1 -0
  357. package/dist/chunk-KUKYJZIU.cjs +179 -0
  358. package/dist/chunk-KUKYJZIU.cjs.map +1 -0
  359. package/dist/chunk-L3V3BYVS.cjs +15 -0
  360. package/dist/chunk-L3V3BYVS.cjs.map +1 -0
  361. package/dist/chunk-LNWO23PU.cjs +131 -0
  362. package/dist/chunk-LNWO23PU.cjs.map +1 -0
  363. package/dist/chunk-LPQVXTKV.js +36 -0
  364. package/dist/chunk-LPQVXTKV.js.map +1 -0
  365. package/dist/chunk-LZL2KD4P.cjs +207 -0
  366. package/dist/chunk-LZL2KD4P.cjs.map +1 -0
  367. package/dist/chunk-M24NCWBU.js +239 -0
  368. package/dist/chunk-M24NCWBU.js.map +1 -0
  369. package/dist/chunk-M7EEQPE7.js +137 -0
  370. package/dist/chunk-M7EEQPE7.js.map +1 -0
  371. package/dist/chunk-MDUSUJWY.cjs +31 -0
  372. package/dist/chunk-MDUSUJWY.cjs.map +1 -0
  373. package/dist/chunk-MGZE2QEM.cjs +51 -0
  374. package/dist/chunk-MGZE2QEM.cjs.map +1 -0
  375. package/dist/chunk-MILTPAF6.js +255 -0
  376. package/dist/chunk-MILTPAF6.js.map +1 -0
  377. package/dist/chunk-MQ6VGG62.js +113 -0
  378. package/dist/chunk-MQ6VGG62.js.map +1 -0
  379. package/dist/chunk-MYF2PDTU.js +137 -0
  380. package/dist/chunk-MYF2PDTU.js.map +1 -0
  381. package/dist/chunk-MZIU27UY.js +133 -0
  382. package/dist/chunk-MZIU27UY.js.map +1 -0
  383. package/dist/chunk-N7WQ53US.js +211 -0
  384. package/dist/chunk-N7WQ53US.js.map +1 -0
  385. package/dist/chunk-NBZC6LOB.cjs +43 -0
  386. package/dist/chunk-NBZC6LOB.cjs.map +1 -0
  387. package/dist/chunk-NH7NRRII.js +167 -0
  388. package/dist/chunk-NH7NRRII.js.map +1 -0
  389. package/dist/chunk-NLJGNPNN.js +284 -0
  390. package/dist/chunk-NLJGNPNN.js.map +1 -0
  391. package/dist/chunk-NNSNANNY.cjs +224 -0
  392. package/dist/chunk-NNSNANNY.cjs.map +1 -0
  393. package/dist/chunk-NPKE2IX6.js +154 -0
  394. package/dist/chunk-NPKE2IX6.js.map +1 -0
  395. package/dist/chunk-NRXK42LO.js +12 -0
  396. package/dist/chunk-NRXK42LO.js.map +1 -0
  397. package/dist/chunk-O432BDEO.js +160 -0
  398. package/dist/chunk-O432BDEO.js.map +1 -0
  399. package/dist/chunk-O4MKOSU2.js +29 -0
  400. package/dist/chunk-O4MKOSU2.js.map +1 -0
  401. package/dist/chunk-O5IO7TCO.cjs +4 -0
  402. package/dist/chunk-O5IO7TCO.cjs.map +1 -0
  403. package/dist/chunk-OL53XYHF.js +17 -0
  404. package/dist/chunk-OL53XYHF.js.map +1 -0
  405. package/dist/chunk-ORCXPDDG.js +3 -0
  406. package/dist/chunk-ORCXPDDG.js.map +1 -0
  407. package/dist/chunk-ORFHF6PT.cjs +172 -0
  408. package/dist/chunk-ORFHF6PT.cjs.map +1 -0
  409. package/dist/chunk-ORPYY2MO.cjs +124 -0
  410. package/dist/chunk-ORPYY2MO.cjs.map +1 -0
  411. package/dist/chunk-OUOEQZHY.cjs +27 -0
  412. package/dist/chunk-OUOEQZHY.cjs.map +1 -0
  413. package/dist/chunk-PBXYU4EV.cjs +121 -0
  414. package/dist/chunk-PBXYU4EV.cjs.map +1 -0
  415. package/dist/chunk-PH3WGR5P.cjs +82 -0
  416. package/dist/chunk-PH3WGR5P.cjs.map +1 -0
  417. package/dist/chunk-POZZY3D5.cjs +135 -0
  418. package/dist/chunk-POZZY3D5.cjs.map +1 -0
  419. package/dist/chunk-PPLR2DNC.cjs +41 -0
  420. package/dist/chunk-PPLR2DNC.cjs.map +1 -0
  421. package/dist/chunk-PQWQ5K6J.js +15 -0
  422. package/dist/chunk-PQWQ5K6J.js.map +1 -0
  423. package/dist/chunk-PRDWJ4AR.js +215 -0
  424. package/dist/chunk-PRDWJ4AR.js.map +1 -0
  425. package/dist/chunk-PRJSEZ5F.cjs +285 -0
  426. package/dist/chunk-PRJSEZ5F.cjs.map +1 -0
  427. package/dist/chunk-PVWPZYTR.js +830 -0
  428. package/dist/chunk-PVWPZYTR.js.map +1 -0
  429. package/dist/chunk-PYRMH34E.js +49 -0
  430. package/dist/chunk-PYRMH34E.js.map +1 -0
  431. package/dist/chunk-PZIAL4OP.cjs +524 -0
  432. package/dist/chunk-PZIAL4OP.cjs.map +1 -0
  433. package/dist/chunk-QFFC2DKK.js +56 -0
  434. package/dist/chunk-QFFC2DKK.js.map +1 -0
  435. package/dist/chunk-R55HE5C5.js +81 -0
  436. package/dist/chunk-R55HE5C5.js.map +1 -0
  437. package/dist/chunk-RA3P63XW.cjs +65 -0
  438. package/dist/chunk-RA3P63XW.cjs.map +1 -0
  439. package/dist/chunk-RES2GOQQ.js +139 -0
  440. package/dist/chunk-RES2GOQQ.js.map +1 -0
  441. package/dist/chunk-RGANGU7X.js +24 -0
  442. package/dist/chunk-RGANGU7X.js.map +1 -0
  443. package/dist/chunk-RID7CYGD.js +344 -0
  444. package/dist/chunk-RID7CYGD.js.map +1 -0
  445. package/dist/chunk-RM4QWJS3.js +200 -0
  446. package/dist/chunk-RM4QWJS3.js.map +1 -0
  447. package/dist/chunk-RNHIDZLE.cjs +103 -0
  448. package/dist/chunk-RNHIDZLE.cjs.map +1 -0
  449. package/dist/chunk-RNPFSVFN.js +24 -0
  450. package/dist/chunk-RNPFSVFN.js.map +1 -0
  451. package/dist/chunk-RR7BWUVP.cjs +58 -0
  452. package/dist/chunk-RR7BWUVP.cjs.map +1 -0
  453. package/dist/chunk-RXDRYWVD.cjs +21 -0
  454. package/dist/chunk-RXDRYWVD.cjs.map +1 -0
  455. package/dist/chunk-S3TRSECD.cjs +4 -0
  456. package/dist/chunk-S3TRSECD.cjs.map +1 -0
  457. package/dist/chunk-SCPHSBBU.cjs +83 -0
  458. package/dist/chunk-SCPHSBBU.cjs.map +1 -0
  459. package/dist/chunk-SKI33QNW.js +133 -0
  460. package/dist/chunk-SKI33QNW.js.map +1 -0
  461. package/dist/chunk-T6IXZZBQ.cjs +83 -0
  462. package/dist/chunk-T6IXZZBQ.cjs.map +1 -0
  463. package/dist/chunk-T6YELZPJ.cjs +90 -0
  464. package/dist/chunk-T6YELZPJ.cjs.map +1 -0
  465. package/dist/chunk-TECFGOV2.js +222 -0
  466. package/dist/chunk-TECFGOV2.js.map +1 -0
  467. package/dist/chunk-TJ66S5K6.js +3 -0
  468. package/dist/chunk-TJ66S5K6.js.map +1 -0
  469. package/dist/chunk-TVRCOKJQ.cjs +106 -0
  470. package/dist/chunk-TVRCOKJQ.cjs.map +1 -0
  471. package/dist/chunk-TXTRTTG7.cjs +51 -0
  472. package/dist/chunk-TXTRTTG7.cjs.map +1 -0
  473. package/dist/chunk-TZKZ2LUF.cjs +140 -0
  474. package/dist/chunk-TZKZ2LUF.cjs.map +1 -0
  475. package/dist/chunk-UCYAHLGM.js +142 -0
  476. package/dist/chunk-UCYAHLGM.js.map +1 -0
  477. package/dist/chunk-UH2YXQ2B.cjs +166 -0
  478. package/dist/chunk-UH2YXQ2B.cjs.map +1 -0
  479. package/dist/chunk-UWVVEB2N.js +55 -0
  480. package/dist/chunk-UWVVEB2N.js.map +1 -0
  481. package/dist/chunk-VBZZ4CMM.cjs +71 -0
  482. package/dist/chunk-VBZZ4CMM.cjs.map +1 -0
  483. package/dist/chunk-VE3EM4K2.cjs +57 -0
  484. package/dist/chunk-VE3EM4K2.cjs.map +1 -0
  485. package/dist/chunk-VNDOT3NK.cjs +426 -0
  486. package/dist/chunk-VNDOT3NK.cjs.map +1 -0
  487. package/dist/chunk-VXHFR5MV.js +3 -0
  488. package/dist/chunk-VXHFR5MV.js.map +1 -0
  489. package/dist/chunk-W2Q4OWHX.cjs +204 -0
  490. package/dist/chunk-W2Q4OWHX.cjs.map +1 -0
  491. package/dist/chunk-WEGL4S52.js +450 -0
  492. package/dist/chunk-WEGL4S52.js.map +1 -0
  493. package/dist/chunk-WHEXTDPV.js +41 -0
  494. package/dist/chunk-WHEXTDPV.js.map +1 -0
  495. package/dist/chunk-WT72KW5M.cjs +347 -0
  496. package/dist/chunk-WT72KW5M.cjs.map +1 -0
  497. package/dist/chunk-WVO2EKE6.cjs +101 -0
  498. package/dist/chunk-WVO2EKE6.cjs.map +1 -0
  499. package/dist/chunk-WXADO5TS.cjs +124 -0
  500. package/dist/chunk-WXADO5TS.cjs.map +1 -0
  501. package/dist/chunk-X36ZGYTF.js +281 -0
  502. package/dist/chunk-X36ZGYTF.js.map +1 -0
  503. package/dist/chunk-XBBEQLMY.cjs +214 -0
  504. package/dist/chunk-XBBEQLMY.cjs.map +1 -0
  505. package/dist/chunk-XCZZVRBY.cjs +2030 -0
  506. package/dist/chunk-XCZZVRBY.cjs.map +1 -0
  507. package/dist/chunk-XJXQG34J.js +77 -0
  508. package/dist/chunk-XJXQG34J.js.map +1 -0
  509. package/dist/chunk-XMBOZ73D.js +92 -0
  510. package/dist/chunk-XMBOZ73D.js.map +1 -0
  511. package/dist/chunk-XZYKPGSK.cjs +453 -0
  512. package/dist/chunk-XZYKPGSK.cjs.map +1 -0
  513. package/dist/chunk-YCZN4FWI.js +42 -0
  514. package/dist/chunk-YCZN4FWI.js.map +1 -0
  515. package/dist/chunk-YHXE274U.js +129 -0
  516. package/dist/chunk-YHXE274U.js.map +1 -0
  517. package/dist/chunk-YLGTDBB2.cjs +43 -0
  518. package/dist/chunk-YLGTDBB2.cjs.map +1 -0
  519. package/dist/chunk-YT42J4VQ.js +361 -0
  520. package/dist/chunk-YT42J4VQ.js.map +1 -0
  521. package/dist/chunk-YT6N44Z3.js +99 -0
  522. package/dist/chunk-YT6N44Z3.js.map +1 -0
  523. package/dist/chunk-YXC7QHNT.cjs +385 -0
  524. package/dist/chunk-YXC7QHNT.cjs.map +1 -0
  525. package/dist/chunk-ZFVSEO5Z.cjs +136 -0
  526. package/dist/chunk-ZFVSEO5Z.cjs.map +1 -0
  527. package/dist/chunk-ZLCVKYHY.js +344 -0
  528. package/dist/chunk-ZLCVKYHY.js.map +1 -0
  529. package/dist/chunk-ZNTEM7F2.js +184 -0
  530. package/dist/chunk-ZNTEM7F2.js.map +1 -0
  531. package/dist/chunk-ZT36VWIA.js +136 -0
  532. package/dist/chunk-ZT36VWIA.js.map +1 -0
  533. package/dist/chunk-ZWOEKDNI.js +281 -0
  534. package/dist/chunk-ZWOEKDNI.js.map +1 -0
  535. package/dist/code-view.cjs +13 -0
  536. package/dist/code-view.cjs.map +1 -0
  537. package/dist/code-view.d.cts +44 -0
  538. package/dist/code-view.d.ts +44 -0
  539. package/dist/code-view.js +4 -0
  540. package/dist/code-view.js.map +1 -0
  541. package/dist/color-picker.cjs +16 -0
  542. package/dist/color-picker.cjs.map +1 -0
  543. package/dist/color-picker.d.cts +20 -0
  544. package/dist/color-picker.d.ts +20 -0
  545. package/dist/color-picker.js +7 -0
  546. package/dist/color-picker.js.map +1 -0
  547. package/dist/command.cjs +21 -0
  548. package/dist/command.cjs.map +1 -0
  549. package/dist/command.d.cts +78 -0
  550. package/dist/command.d.ts +78 -0
  551. package/dist/command.js +8 -0
  552. package/dist/command.js.map +1 -0
  553. package/dist/composer.cjs +14 -0
  554. package/dist/composer.cjs.map +1 -0
  555. package/dist/composer.d.cts +17 -0
  556. package/dist/composer.d.ts +17 -0
  557. package/dist/composer.js +5 -0
  558. package/dist/composer.js.map +1 -0
  559. package/dist/content-renderer.cjs +23 -0
  560. package/dist/content-renderer.cjs.map +1 -0
  561. package/dist/content-renderer.d.cts +27 -0
  562. package/dist/content-renderer.d.ts +27 -0
  563. package/dist/content-renderer.js +6 -0
  564. package/dist/content-renderer.js.map +1 -0
  565. package/dist/context-menu.cjs +21 -0
  566. package/dist/context-menu.cjs.map +1 -0
  567. package/dist/context-menu.d.cts +91 -0
  568. package/dist/context-menu.d.ts +91 -0
  569. package/dist/context-menu.js +8 -0
  570. package/dist/context-menu.js.map +1 -0
  571. package/dist/date-picker.cjs +19 -0
  572. package/dist/date-picker.cjs.map +1 -0
  573. package/dist/date-picker.d.cts +26 -0
  574. package/dist/date-picker.d.ts +26 -0
  575. package/dist/date-picker.js +10 -0
  576. package/dist/date-picker.js.map +1 -0
  577. package/dist/drawer.cjs +21 -0
  578. package/dist/drawer.cjs.map +1 -0
  579. package/dist/drawer.d.cts +116 -0
  580. package/dist/drawer.d.ts +116 -0
  581. package/dist/drawer.js +8 -0
  582. package/dist/drawer.js.map +1 -0
  583. package/dist/dropdown.cjs +22 -0
  584. package/dist/dropdown.cjs.map +1 -0
  585. package/dist/dropdown.d.cts +67 -0
  586. package/dist/dropdown.d.ts +67 -0
  587. package/dist/dropdown.js +9 -0
  588. package/dist/dropdown.js.map +1 -0
  589. package/dist/editor.cjs +29 -0
  590. package/dist/editor.cjs.map +1 -0
  591. package/dist/editor.d.cts +153 -0
  592. package/dist/editor.d.ts +153 -0
  593. package/dist/editor.js +16 -0
  594. package/dist/editor.js.map +1 -0
  595. package/dist/emoji-select.cjs +15 -0
  596. package/dist/emoji-select.cjs.map +1 -0
  597. package/dist/emoji-select.d.cts +13 -0
  598. package/dist/emoji-select.d.ts +13 -0
  599. package/dist/emoji-select.js +6 -0
  600. package/dist/emoji-select.js.map +1 -0
  601. package/dist/emoji.cjs +14 -0
  602. package/dist/emoji.cjs.map +1 -0
  603. package/dist/emoji.d.cts +2 -0
  604. package/dist/emoji.d.ts +2 -0
  605. package/dist/emoji.js +5 -0
  606. package/dist/emoji.js.map +1 -0
  607. package/dist/extensions-6PVd3-vB.d.cts +38 -0
  608. package/dist/extensions-6PVd3-vB.d.ts +38 -0
  609. package/dist/eyebrow.cjs +13 -0
  610. package/dist/eyebrow.cjs.map +1 -0
  611. package/dist/eyebrow.d.cts +33 -0
  612. package/dist/eyebrow.d.ts +33 -0
  613. package/dist/eyebrow.js +4 -0
  614. package/dist/eyebrow.js.map +1 -0
  615. package/dist/faux-client.cjs +13 -0
  616. package/dist/faux-client.cjs.map +1 -0
  617. package/dist/faux-client.d.cts +39 -0
  618. package/dist/faux-client.d.ts +39 -0
  619. package/dist/faux-client.js +4 -0
  620. package/dist/faux-client.js.map +1 -0
  621. package/dist/field.cjs +14 -0
  622. package/dist/field.cjs.map +1 -0
  623. package/dist/field.d.cts +18 -0
  624. package/dist/field.d.ts +18 -0
  625. package/dist/field.js +5 -0
  626. package/dist/field.js.map +1 -0
  627. package/dist/file-browser.cjs +18 -0
  628. package/dist/file-browser.cjs.map +1 -0
  629. package/dist/file-browser.d.cts +269 -0
  630. package/dist/file-browser.d.ts +269 -0
  631. package/dist/file-browser.js +5 -0
  632. package/dist/file-browser.js.map +1 -0
  633. package/dist/file-upload.cjs +17 -0
  634. package/dist/file-upload.cjs.map +1 -0
  635. package/dist/file-upload.d.cts +48 -0
  636. package/dist/file-upload.d.ts +48 -0
  637. package/dist/file-upload.js +4 -0
  638. package/dist/file-upload.js.map +1 -0
  639. package/dist/heading.cjs +13 -0
  640. package/dist/heading.cjs.map +1 -0
  641. package/dist/heading.d.cts +25 -0
  642. package/dist/heading.d.ts +25 -0
  643. package/dist/heading.js +4 -0
  644. package/dist/heading.js.map +1 -0
  645. package/dist/icon.cjs +34 -0
  646. package/dist/icon.cjs.map +1 -0
  647. package/dist/icon.d.cts +51 -0
  648. package/dist/icon.d.ts +51 -0
  649. package/dist/icon.js +5 -0
  650. package/dist/icon.js.map +1 -0
  651. package/dist/image-viewer.cjs +14 -0
  652. package/dist/image-viewer.cjs.map +1 -0
  653. package/dist/image-viewer.d.cts +19 -0
  654. package/dist/image-viewer.d.ts +19 -0
  655. package/dist/image-viewer.js +5 -0
  656. package/dist/image-viewer.js.map +1 -0
  657. package/dist/index-B71wa9AW.d.cts +79 -0
  658. package/dist/index-BktWpyRH.d.cts +53 -0
  659. package/dist/index-BktWpyRH.d.ts +53 -0
  660. package/dist/index-bIntFOl5.d.ts +79 -0
  661. package/dist/index-list.cjs +13 -0
  662. package/dist/index-list.cjs.map +1 -0
  663. package/dist/index-list.d.cts +49 -0
  664. package/dist/index-list.d.ts +49 -0
  665. package/dist/index-list.js +4 -0
  666. package/dist/index-list.js.map +1 -0
  667. package/dist/index.cjs +671 -16826
  668. package/dist/index.cjs.map +1 -1
  669. package/dist/index.d.cts +94 -4078
  670. package/dist/index.d.ts +94 -4078
  671. package/dist/index.js +104 -16708
  672. package/dist/index.js.map +1 -1
  673. package/dist/input-tag.cjs +28 -0
  674. package/dist/input-tag.cjs.map +1 -0
  675. package/dist/input-tag.d.cts +134 -0
  676. package/dist/input-tag.d.ts +134 -0
  677. package/dist/input-tag.js +3 -0
  678. package/dist/input-tag.js.map +1 -0
  679. package/dist/input.cjs +20 -0
  680. package/dist/input.cjs.map +1 -0
  681. package/dist/input.d.cts +32 -0
  682. package/dist/input.d.ts +32 -0
  683. package/dist/input.js +11 -0
  684. package/dist/input.js.map +1 -0
  685. package/dist/inputs.cjs +100 -0
  686. package/dist/inputs.cjs.map +1 -0
  687. package/dist/inputs.d.cts +16 -0
  688. package/dist/inputs.d.ts +16 -0
  689. package/dist/inputs.js +27 -0
  690. package/dist/inputs.js.map +1 -0
  691. package/dist/inputs.types-CkWdvN-t.d.cts +44 -0
  692. package/dist/inputs.types-DERzxpe1.d.ts +44 -0
  693. package/dist/kanban.cjs +17 -0
  694. package/dist/kanban.cjs.map +1 -0
  695. package/dist/kanban.d.cts +136 -0
  696. package/dist/kanban.d.ts +136 -0
  697. package/dist/kanban.js +4 -0
  698. package/dist/kanban.js.map +1 -0
  699. package/dist/kbd.cjs +13 -0
  700. package/dist/kbd.cjs.map +1 -0
  701. package/dist/kbd.d.cts +30 -0
  702. package/dist/kbd.d.ts +30 -0
  703. package/dist/kbd.js +4 -0
  704. package/dist/kbd.js.map +1 -0
  705. package/dist/magic-wand.cjs +25 -0
  706. package/dist/magic-wand.cjs.map +1 -0
  707. package/dist/magic-wand.d.cts +62 -0
  708. package/dist/magic-wand.d.ts +62 -0
  709. package/dist/magic-wand.js +16 -0
  710. package/dist/magic-wand.js.map +1 -0
  711. package/dist/marquee.cjs +13 -0
  712. package/dist/marquee.cjs.map +1 -0
  713. package/dist/marquee.d.cts +48 -0
  714. package/dist/marquee.d.ts +48 -0
  715. package/dist/marquee.js +4 -0
  716. package/dist/marquee.js.map +1 -0
  717. package/dist/media-viewer.cjs +18 -0
  718. package/dist/media-viewer.cjs.map +1 -0
  719. package/dist/media-viewer.d.cts +6 -0
  720. package/dist/media-viewer.d.ts +6 -0
  721. package/dist/media-viewer.js +9 -0
  722. package/dist/media-viewer.js.map +1 -0
  723. package/dist/menu.cjs +17 -0
  724. package/dist/menu.cjs.map +1 -0
  725. package/dist/menu.d.cts +60 -0
  726. package/dist/menu.d.ts +60 -0
  727. package/dist/menu.js +4 -0
  728. package/dist/menu.js.map +1 -0
  729. package/dist/mobile-menu.cjs +26 -0
  730. package/dist/mobile-menu.cjs.map +1 -0
  731. package/dist/mobile-menu.d.cts +60 -0
  732. package/dist/mobile-menu.d.ts +60 -0
  733. package/dist/mobile-menu.js +13 -0
  734. package/dist/mobile-menu.js.map +1 -0
  735. package/dist/modal.cjs +21 -0
  736. package/dist/modal.cjs.map +1 -0
  737. package/dist/modal.d.cts +52 -0
  738. package/dist/modal.d.ts +52 -0
  739. package/dist/modal.js +8 -0
  740. package/dist/modal.js.map +1 -0
  741. package/dist/mode.cjs +37 -0
  742. package/dist/mode.cjs.map +1 -0
  743. package/dist/mode.d.cts +28 -0
  744. package/dist/mode.d.ts +28 -0
  745. package/dist/mode.js +8 -0
  746. package/dist/mode.js.map +1 -0
  747. package/dist/mood-meter.cjs +12 -0
  748. package/dist/mood-meter.cjs.map +1 -0
  749. package/dist/mood-meter.d.cts +67 -0
  750. package/dist/mood-meter.d.ts +67 -0
  751. package/dist/mood-meter.js +3 -0
  752. package/dist/mood-meter.js.map +1 -0
  753. package/dist/multi-switch.cjs +19 -0
  754. package/dist/multi-switch.cjs.map +1 -0
  755. package/dist/multi-switch.d.cts +18 -0
  756. package/dist/multi-switch.d.ts +18 -0
  757. package/dist/multi-switch.js +10 -0
  758. package/dist/multi-switch.js.map +1 -0
  759. package/dist/navbar.cjs +17 -0
  760. package/dist/navbar.cjs.map +1 -0
  761. package/dist/navbar.d.cts +60 -0
  762. package/dist/navbar.d.ts +60 -0
  763. package/dist/navbar.js +4 -0
  764. package/dist/navbar.js.map +1 -0
  765. package/dist/otp-input.cjs +16 -0
  766. package/dist/otp-input.cjs.map +1 -0
  767. package/dist/otp-input.d.cts +18 -0
  768. package/dist/otp-input.d.ts +18 -0
  769. package/dist/otp-input.js +7 -0
  770. package/dist/otp-input.js.map +1 -0
  771. package/dist/pagination.cjs +13 -0
  772. package/dist/pagination.cjs.map +1 -0
  773. package/dist/pagination.d.cts +16 -0
  774. package/dist/pagination.d.ts +16 -0
  775. package/dist/pagination.js +4 -0
  776. package/dist/pagination.js.map +1 -0
  777. package/dist/pdf-viewer.cjs +13 -0
  778. package/dist/pdf-viewer.cjs.map +1 -0
  779. package/dist/pdf-viewer.d.cts +16 -0
  780. package/dist/pdf-viewer.d.ts +16 -0
  781. package/dist/pdf-viewer.js +4 -0
  782. package/dist/pdf-viewer.js.map +1 -0
  783. package/dist/pillbox.cjs +14 -0
  784. package/dist/pillbox.cjs.map +1 -0
  785. package/dist/pillbox.d.cts +15 -0
  786. package/dist/pillbox.d.ts +15 -0
  787. package/dist/pillbox.js +5 -0
  788. package/dist/pillbox.js.map +1 -0
  789. package/dist/popover.cjs +21 -0
  790. package/dist/popover.cjs.map +1 -0
  791. package/dist/popover.d.cts +71 -0
  792. package/dist/popover.d.ts +71 -0
  793. package/dist/popover.js +8 -0
  794. package/dist/popover.js.map +1 -0
  795. package/dist/portal.cjs +12 -0
  796. package/dist/portal.cjs.map +1 -0
  797. package/dist/portal.d.cts +10 -0
  798. package/dist/portal.d.ts +10 -0
  799. package/dist/portal.js +3 -0
  800. package/dist/portal.js.map +1 -0
  801. package/dist/profile.cjs +14 -0
  802. package/dist/profile.cjs.map +1 -0
  803. package/dist/profile.d.cts +16 -0
  804. package/dist/profile.d.ts +16 -0
  805. package/dist/profile.js +5 -0
  806. package/dist/profile.js.map +1 -0
  807. package/dist/progress.cjs +13 -0
  808. package/dist/progress.cjs.map +1 -0
  809. package/dist/progress.d.cts +25 -0
  810. package/dist/progress.d.ts +25 -0
  811. package/dist/progress.js +4 -0
  812. package/dist/progress.js.map +1 -0
  813. package/dist/prompt-input.cjs +20 -0
  814. package/dist/prompt-input.cjs.map +1 -0
  815. package/dist/prompt-input.d.cts +76 -0
  816. package/dist/prompt-input.d.ts +76 -0
  817. package/dist/prompt-input.js +11 -0
  818. package/dist/prompt-input.js.map +1 -0
  819. package/dist/pull-quote.cjs +13 -0
  820. package/dist/pull-quote.cjs.map +1 -0
  821. package/dist/pull-quote.d.cts +33 -0
  822. package/dist/pull-quote.d.ts +33 -0
  823. package/dist/pull-quote.js +4 -0
  824. package/dist/pull-quote.js.map +1 -0
  825. package/dist/radio-group.cjs +19 -0
  826. package/dist/radio-group.cjs.map +1 -0
  827. package/dist/radio-group.d.cts +18 -0
  828. package/dist/radio-group.d.ts +18 -0
  829. package/dist/radio-group.js +10 -0
  830. package/dist/radio-group.js.map +1 -0
  831. package/dist/reason-tag.cjs +22 -0
  832. package/dist/reason-tag.cjs.map +1 -0
  833. package/dist/reason-tag.d.cts +57 -0
  834. package/dist/reason-tag.d.ts +57 -0
  835. package/dist/reason-tag.js +13 -0
  836. package/dist/reason-tag.js.map +1 -0
  837. package/dist/select.cjs +23 -0
  838. package/dist/select.cjs.map +1 -0
  839. package/dist/select.d.cts +41 -0
  840. package/dist/select.d.ts +41 -0
  841. package/dist/select.js +14 -0
  842. package/dist/select.js.map +1 -0
  843. package/dist/separator.cjs +13 -0
  844. package/dist/separator.cjs.map +1 -0
  845. package/dist/separator.d.cts +14 -0
  846. package/dist/separator.d.ts +14 -0
  847. package/dist/separator.js +4 -0
  848. package/dist/separator.js.map +1 -0
  849. package/dist/sidebar.cjs +25 -0
  850. package/dist/sidebar.cjs.map +1 -0
  851. package/dist/sidebar.d.cts +80 -0
  852. package/dist/sidebar.d.ts +80 -0
  853. package/dist/sidebar.js +12 -0
  854. package/dist/sidebar.js.map +1 -0
  855. package/dist/skeleton.cjs +13 -0
  856. package/dist/skeleton.cjs.map +1 -0
  857. package/dist/skeleton.d.cts +16 -0
  858. package/dist/skeleton.d.ts +16 -0
  859. package/dist/skeleton.js +4 -0
  860. package/dist/skeleton.js.map +1 -0
  861. package/dist/slider.cjs +19 -0
  862. package/dist/slider.cjs.map +1 -0
  863. package/dist/slider.d.cts +34 -0
  864. package/dist/slider.d.ts +34 -0
  865. package/dist/slider.js +10 -0
  866. package/dist/slider.js.map +1 -0
  867. package/dist/stat-list.cjs +13 -0
  868. package/dist/stat-list.cjs.map +1 -0
  869. package/dist/stat-list.d.cts +43 -0
  870. package/dist/stat-list.d.ts +43 -0
  871. package/dist/stat-list.js +4 -0
  872. package/dist/stat-list.js.map +1 -0
  873. package/dist/stat.cjs +17 -0
  874. package/dist/stat.cjs.map +1 -0
  875. package/dist/stat.d.cts +29 -0
  876. package/dist/stat.d.ts +29 -0
  877. package/dist/stat.js +4 -0
  878. package/dist/stat.js.map +1 -0
  879. package/dist/sticky-note.cjs +13 -0
  880. package/dist/sticky-note.cjs.map +1 -0
  881. package/dist/sticky-note.d.cts +53 -0
  882. package/dist/sticky-note.d.ts +53 -0
  883. package/dist/sticky-note.js +4 -0
  884. package/dist/sticky-note.js.map +1 -0
  885. package/dist/switch.cjs +17 -0
  886. package/dist/switch.cjs.map +1 -0
  887. package/dist/switch.d.cts +16 -0
  888. package/dist/switch.d.ts +16 -0
  889. package/dist/switch.js +8 -0
  890. package/dist/switch.js.map +1 -0
  891. package/dist/table.cjs +50 -0
  892. package/dist/table.cjs.map +1 -0
  893. package/dist/table.d.cts +89 -0
  894. package/dist/table.d.ts +89 -0
  895. package/dist/table.js +5 -0
  896. package/dist/table.js.map +1 -0
  897. package/dist/tabs.cjs +18 -0
  898. package/dist/tabs.cjs.map +1 -0
  899. package/dist/tabs.d.cts +68 -0
  900. package/dist/tabs.d.ts +68 -0
  901. package/dist/tabs.js +5 -0
  902. package/dist/tabs.js.map +1 -0
  903. package/dist/text.cjs +13 -0
  904. package/dist/text.cjs.map +1 -0
  905. package/dist/text.d.cts +17 -0
  906. package/dist/text.d.ts +17 -0
  907. package/dist/text.js +4 -0
  908. package/dist/text.js.map +1 -0
  909. package/dist/textarea.cjs +20 -0
  910. package/dist/textarea.cjs.map +1 -0
  911. package/dist/textarea.d.cts +15 -0
  912. package/dist/textarea.d.ts +15 -0
  913. package/dist/textarea.js +11 -0
  914. package/dist/textarea.js.map +1 -0
  915. package/dist/time-grid.cjs +13 -0
  916. package/dist/time-grid.cjs.map +1 -0
  917. package/dist/time-grid.d.cts +53 -0
  918. package/dist/time-grid.d.ts +53 -0
  919. package/dist/time-grid.js +4 -0
  920. package/dist/time-grid.js.map +1 -0
  921. package/dist/time-picker.cjs +16 -0
  922. package/dist/time-picker.cjs.map +1 -0
  923. package/dist/time-picker.d.cts +19 -0
  924. package/dist/time-picker.d.ts +19 -0
  925. package/dist/time-picker.js +7 -0
  926. package/dist/time-picker.js.map +1 -0
  927. package/dist/timeline.cjs +21 -0
  928. package/dist/timeline.cjs.map +1 -0
  929. package/dist/timeline.d.cts +10 -0
  930. package/dist/timeline.d.ts +10 -0
  931. package/dist/timeline.js +4 -0
  932. package/dist/timeline.js.map +1 -0
  933. package/dist/toast.cjs +18 -0
  934. package/dist/toast.cjs.map +1 -0
  935. package/dist/toast.d.cts +54 -0
  936. package/dist/toast.d.ts +54 -0
  937. package/dist/toast.js +5 -0
  938. package/dist/toast.js.map +1 -0
  939. package/dist/tooltip.cjs +15 -0
  940. package/dist/tooltip.cjs.map +1 -0
  941. package/dist/tooltip.d.cts +16 -0
  942. package/dist/tooltip.d.ts +16 -0
  943. package/dist/tooltip.js +6 -0
  944. package/dist/tooltip.js.map +1 -0
  945. package/dist/tree-nav.cjs +17 -0
  946. package/dist/tree-nav.cjs.map +1 -0
  947. package/dist/tree-nav.d.cts +114 -0
  948. package/dist/tree-nav.d.ts +114 -0
  949. package/dist/tree-nav.js +4 -0
  950. package/dist/tree-nav.js.map +1 -0
  951. package/dist/types-8Sv0rCjw.d.cts +58 -0
  952. package/dist/types-8Sv0rCjw.d.ts +58 -0
  953. package/dist/video-viewer.cjs +13 -0
  954. package/dist/video-viewer.cjs.map +1 -0
  955. package/dist/video-viewer.d.cts +14 -0
  956. package/dist/video-viewer.d.ts +14 -0
  957. package/dist/video-viewer.js +4 -0
  958. package/dist/video-viewer.js.map +1 -0
  959. package/package.json +855 -5
@@ -0,0 +1,60 @@
1
+ import { cn } from './chunk-DSUHZO6T.js';
2
+ import { forwardRef, useState } from 'react';
3
+ import { jsx, jsxs } from 'react/jsx-runtime';
4
+
5
+ var VideoViewer = forwardRef(
6
+ ({
7
+ src,
8
+ poster,
9
+ controls = true,
10
+ autoPlay = false,
11
+ loop = false,
12
+ muted = false,
13
+ fit = "contain",
14
+ onError,
15
+ className,
16
+ style
17
+ }, ref) => {
18
+ const [errored, setErrored] = useState(false);
19
+ return /* @__PURE__ */ jsx(
20
+ "div",
21
+ {
22
+ ref,
23
+ "data-react-fancy-video-viewer": "",
24
+ className: cn(
25
+ "relative flex items-center justify-center overflow-hidden rounded-md bg-black",
26
+ className
27
+ ),
28
+ style,
29
+ children: errored ? /* @__PURE__ */ jsxs("div", { className: "flex flex-col items-center justify-center gap-1 p-4 text-center text-sm text-zinc-400", children: [
30
+ /* @__PURE__ */ jsx("span", { className: "font-medium", children: "Couldn't load video" }),
31
+ /* @__PURE__ */ jsx("span", { className: "max-w-full truncate text-xs opacity-70", children: src })
32
+ ] }) : /* @__PURE__ */ jsx(
33
+ "video",
34
+ {
35
+ src,
36
+ poster,
37
+ controls,
38
+ autoPlay,
39
+ loop,
40
+ muted,
41
+ playsInline: true,
42
+ onError: () => {
43
+ setErrored(true);
44
+ onError?.();
45
+ },
46
+ className: cn(
47
+ "max-h-full max-w-full",
48
+ fit === "cover" ? "h-full w-full object-cover" : "object-contain"
49
+ )
50
+ }
51
+ )
52
+ }
53
+ );
54
+ }
55
+ );
56
+ VideoViewer.displayName = "VideoViewer";
57
+
58
+ export { VideoViewer };
59
+ //# sourceMappingURL=chunk-JKO2Y5SH.js.map
60
+ //# sourceMappingURL=chunk-JKO2Y5SH.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/VideoViewer/VideoViewer.tsx"],"names":[],"mappings":";;;;AAYO,IAAM,WAAA,GAAc,UAAA;AAAA,EACzB,CACE;AAAA,IACE,GAAA;AAAA,IACA,MAAA;AAAA,IACA,QAAA,GAAW,IAAA;AAAA,IACX,QAAA,GAAW,KAAA;AAAA,IACX,IAAA,GAAO,KAAA;AAAA,IACP,KAAA,GAAQ,KAAA;AAAA,IACR,GAAA,GAAM,SAAA;AAAA,IACN,OAAA;AAAA,IACA,SAAA;AAAA,IACA;AAAA,KAEF,GAAA,KACG;AACH,IAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAI,SAAS,KAAK,CAAA;AAE5C,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,+BAAA,EAA8B,EAAA;AAAA,QAC9B,SAAA,EAAW,EAAA;AAAA,UACT,+EAAA;AAAA,UACA;AAAA,SACF;AAAA,QACA,KAAA;AAAA,QAEC,QAAA,EAAA,OAAA,mBACC,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,uFAAA,EACb,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,aAAA,EAAc,QAAA,EAAA,qBAAA,EAAwB,CAAA;AAAA,0BACtD,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,wCAAA,EAA0C,QAAA,EAAA,GAAA,EAAI;AAAA,SAAA,EAChE,CAAA,mBAEA,GAAA;AAAA,UAAC,OAAA;AAAA,UAAA;AAAA,YACC,GAAA;AAAA,YACA,MAAA;AAAA,YACA,QAAA;AAAA,YACA,QAAA;AAAA,YACA,IAAA;AAAA,YACA,KAAA;AAAA,YACA,WAAA,EAAW,IAAA;AAAA,YACX,SAAS,MAAM;AACb,cAAA,UAAA,CAAW,IAAI,CAAA;AACf,cAAA,OAAA,IAAU;AAAA,YACZ,CAAA;AAAA,YACA,SAAA,EAAW,EAAA;AAAA,cACT,uBAAA;AAAA,cACA,GAAA,KAAQ,UAAU,4BAAA,GAA+B;AAAA;AACnD;AAAA;AACF;AAAA,KAEJ;AAAA,EAEJ;AACF;AAEA,WAAA,CAAY,WAAA,GAAc,aAAA","file":"chunk-JKO2Y5SH.js","sourcesContent":["import { forwardRef, useState } from \"react\";\nimport { cn } from \"../../utils/cn\";\nimport type { VideoViewerProps } from \"./VideoViewer.types\";\n\n/**\n * A standalone video viewer — native controls, optional poster, fit-to-box, and\n * dark-aware framing. Renders for video sources inside `<MediaViewer>`.\n *\n * ```tsx\n * <VideoViewer src=\"/clip.mp4\" poster=\"/clip.jpg\" style={{ height: 360 }} />\n * ```\n */\nexport const VideoViewer = forwardRef<HTMLDivElement, VideoViewerProps>(\n (\n {\n src,\n poster,\n controls = true,\n autoPlay = false,\n loop = false,\n muted = false,\n fit = \"contain\",\n onError,\n className,\n style,\n },\n ref,\n ) => {\n const [errored, setErrored] = useState(false);\n\n return (\n <div\n ref={ref}\n data-react-fancy-video-viewer=\"\"\n className={cn(\n \"relative flex items-center justify-center overflow-hidden rounded-md bg-black\",\n className,\n )}\n style={style}\n >\n {errored ? (\n <div className=\"flex flex-col items-center justify-center gap-1 p-4 text-center text-sm text-zinc-400\">\n <span className=\"font-medium\">Couldn&apos;t load video</span>\n <span className=\"max-w-full truncate text-xs opacity-70\">{src}</span>\n </div>\n ) : (\n <video\n src={src}\n poster={poster}\n controls={controls}\n autoPlay={autoPlay}\n loop={loop}\n muted={muted}\n playsInline\n onError={() => {\n setErrored(true);\n onError?.();\n }}\n className={cn(\n \"max-h-full max-w-full\",\n fit === \"cover\" ? \"h-full w-full object-cover\" : \"object-contain\",\n )}\n />\n )}\n </div>\n );\n },\n);\n\nVideoViewer.displayName = \"VideoViewer\";\n"]}
@@ -0,0 +1,280 @@
1
+ 'use strict';
2
+
3
+ var chunkOUOEQZHY_cjs = require('./chunk-OUOEQZHY.cjs');
4
+ var chunk3Z6ALUWP_cjs = require('./chunk-3Z6ALUWP.cjs');
5
+ var react = require('react');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+
8
+ var AccordionPanelContext = react.createContext(null);
9
+ function useAccordionPanel() {
10
+ const ctx = react.useContext(AccordionPanelContext);
11
+ if (!ctx) {
12
+ throw new Error(
13
+ "AccordionPanel components must be used inside <AccordionPanel>"
14
+ );
15
+ }
16
+ return ctx;
17
+ }
18
+ var AccordionSectionContext = react.createContext(null);
19
+ function useAccordionSection() {
20
+ const ctx = react.useContext(AccordionSectionContext);
21
+ if (!ctx) {
22
+ throw new Error(
23
+ "<AccordionPanel.Trigger> must be rendered inside <AccordionPanel.Section>"
24
+ );
25
+ }
26
+ return ctx;
27
+ }
28
+ function AccordionPanelSection({
29
+ id,
30
+ pinned = false,
31
+ className,
32
+ openClassName,
33
+ closedClassName,
34
+ unstyled,
35
+ children
36
+ }) {
37
+ const panel = useAccordionPanel();
38
+ const { orientation, isOpen, toggle, registerSection } = panel;
39
+ react.useEffect(() => registerSection(id), [id, registerSection]);
40
+ const open = pinned || isOpen(id);
41
+ const sectionCtx = react.useMemo(
42
+ () => ({
43
+ id,
44
+ open,
45
+ pinned,
46
+ orientation,
47
+ toggle: () => toggle(id)
48
+ }),
49
+ [id, open, pinned, orientation, toggle]
50
+ );
51
+ return /* @__PURE__ */ jsxRuntime.jsx(AccordionSectionContext.Provider, { value: sectionCtx, children: /* @__PURE__ */ jsxRuntime.jsx(
52
+ "div",
53
+ {
54
+ "data-react-fancy-accordion-section": "",
55
+ "data-state": open ? "open" : "closed",
56
+ "data-pinned": pinned ? "" : void 0,
57
+ "data-orientation": orientation,
58
+ className: chunk3Z6ALUWP_cjs.cn(
59
+ "flex shrink-0",
60
+ !unstyled && "items-center gap-1",
61
+ orientation === "horizontal" ? "flex-row" : "flex-col",
62
+ className,
63
+ open ? openClassName : closedClassName
64
+ ),
65
+ children
66
+ }
67
+ ) });
68
+ }
69
+ AccordionPanelSection.displayName = "AccordionPanelSection";
70
+ function renderSlot(slot, state) {
71
+ return typeof slot === "function" ? slot(state) : slot;
72
+ }
73
+ function AccordionPanelTrigger({
74
+ children,
75
+ className,
76
+ "aria-label": ariaLabel
77
+ }) {
78
+ const { id, open, orientation, toggle } = useAccordionSection();
79
+ const state = { id, open, orientation, toggle };
80
+ if (children !== void 0) {
81
+ return /* @__PURE__ */ jsxRuntime.jsx(
82
+ "div",
83
+ {
84
+ "data-react-fancy-accordion-trigger": "",
85
+ "data-state": open ? "open" : "closed",
86
+ "data-orientation": orientation,
87
+ className,
88
+ children: renderSlot(children, state)
89
+ }
90
+ );
91
+ }
92
+ if (open) {
93
+ return /* @__PURE__ */ jsxRuntime.jsx(
94
+ "button",
95
+ {
96
+ type: "button",
97
+ onClick: toggle,
98
+ "aria-label": ariaLabel ?? "Collapse section",
99
+ "data-react-fancy-accordion-trigger": "",
100
+ "data-state": "open",
101
+ "data-orientation": orientation,
102
+ className: chunk3Z6ALUWP_cjs.cn(
103
+ "group relative flex shrink-0 items-center justify-center cursor-pointer",
104
+ "text-zinc-500 dark:text-zinc-500",
105
+ "hover:text-zinc-900 dark:hover:text-zinc-100",
106
+ // Wide hitbox + thin visible line (drawn via ::before).
107
+ orientation === "horizontal" ? "w-3 self-stretch" : "h-3 self-stretch",
108
+ "before:absolute before:bg-zinc-200 dark:before:bg-zinc-700",
109
+ "before:transition-colors group-hover:before:bg-zinc-400 dark:group-hover:before:bg-zinc-500",
110
+ orientation === "horizontal" ? "before:top-0 before:bottom-0 before:w-px before:left-1/2 before:-translate-x-1/2" : "before:left-0 before:right-0 before:h-px before:top-1/2 before:-translate-y-1/2",
111
+ "transition-colors",
112
+ className
113
+ ),
114
+ children: /* @__PURE__ */ jsxRuntime.jsx(
115
+ ChevronIcon,
116
+ {
117
+ orientation,
118
+ purpose: "collapse",
119
+ className: "relative opacity-0 group-hover:opacity-100 transition-opacity"
120
+ }
121
+ )
122
+ }
123
+ );
124
+ }
125
+ return /* @__PURE__ */ jsxRuntime.jsx(
126
+ "button",
127
+ {
128
+ type: "button",
129
+ onClick: toggle,
130
+ "aria-label": ariaLabel ?? "Expand section",
131
+ "data-react-fancy-accordion-trigger": "",
132
+ "data-state": "closed",
133
+ "data-orientation": orientation,
134
+ className: chunk3Z6ALUWP_cjs.cn(
135
+ "flex shrink-0 items-center justify-center rounded-md",
136
+ "text-zinc-400 dark:text-zinc-500",
137
+ "hover:text-zinc-900 dark:hover:text-zinc-100",
138
+ "hover:bg-zinc-100 dark:hover:bg-zinc-800",
139
+ "transition-colors cursor-pointer",
140
+ orientation === "horizontal" ? "h-8 w-6 mx-0.5" : "w-8 h-6 my-0.5",
141
+ className
142
+ ),
143
+ children: /* @__PURE__ */ jsxRuntime.jsx(ChevronIcon, { orientation, purpose: "expand" })
144
+ }
145
+ );
146
+ }
147
+ AccordionPanelTrigger.displayName = "AccordionPanelTrigger";
148
+ function ChevronIcon({
149
+ orientation,
150
+ purpose,
151
+ className
152
+ }) {
153
+ const transform = orientation === "horizontal" ? "rotate(180deg)" : purpose === "expand" ? "rotate(90deg)" : "rotate(270deg)";
154
+ return /* @__PURE__ */ jsxRuntime.jsx(
155
+ "svg",
156
+ {
157
+ viewBox: "0 0 16 16",
158
+ width: "12",
159
+ height: "12",
160
+ fill: "none",
161
+ stroke: "currentColor",
162
+ strokeWidth: "2",
163
+ strokeLinecap: "round",
164
+ strokeLinejoin: "round",
165
+ style: { transform },
166
+ className,
167
+ "aria-hidden": "true",
168
+ children: /* @__PURE__ */ jsxRuntime.jsx("polyline", { points: "6 4 10 8 6 12" })
169
+ }
170
+ );
171
+ }
172
+ function AccordionPanelContent({
173
+ children,
174
+ className,
175
+ unstyled
176
+ }) {
177
+ const { open, orientation } = useAccordionSection();
178
+ if (!open) return null;
179
+ return /* @__PURE__ */ jsxRuntime.jsx(
180
+ "div",
181
+ {
182
+ "data-react-fancy-accordion-content": "",
183
+ "data-orientation": orientation,
184
+ className: chunk3Z6ALUWP_cjs.cn(
185
+ !unstyled && "flex items-center gap-1",
186
+ !unstyled && (orientation === "horizontal" ? "flex-row" : "flex-col"),
187
+ className
188
+ ),
189
+ children
190
+ }
191
+ );
192
+ }
193
+ AccordionPanelContent.displayName = "AccordionPanelContent";
194
+ function AccordionPanelRoot({
195
+ orientation = "horizontal",
196
+ value: controlledValue,
197
+ defaultValue,
198
+ onValueChange,
199
+ className,
200
+ children
201
+ }) {
202
+ const [openIds, setOpenIds] = chunkOUOEQZHY_cjs.useControllableState(
203
+ controlledValue,
204
+ defaultValue ?? [],
205
+ onValueChange
206
+ );
207
+ const openSet = react.useMemo(() => new Set(openIds), [openIds]);
208
+ const isOpen = react.useCallback((id) => openSet.has(id), [openSet]);
209
+ const open = react.useCallback(
210
+ (id) => {
211
+ setOpenIds(openSet.has(id) ? openIds ?? [] : [...openIds ?? [], id]);
212
+ },
213
+ [openSet, openIds, setOpenIds]
214
+ );
215
+ const close = react.useCallback(
216
+ (id) => {
217
+ setOpenIds((openIds ?? []).filter((x) => x !== id));
218
+ },
219
+ [openIds, setOpenIds]
220
+ );
221
+ const toggle = react.useCallback(
222
+ (id) => {
223
+ setOpenIds(
224
+ openSet.has(id) ? (openIds ?? []).filter((x) => x !== id) : [...openIds ?? [], id]
225
+ );
226
+ },
227
+ [openSet, openIds, setOpenIds]
228
+ );
229
+ const [sectionIds, setSectionIds] = react.useState([]);
230
+ const orderRef = react.useRef([]);
231
+ const registerSection = react.useCallback((id) => {
232
+ if (!orderRef.current.includes(id)) {
233
+ orderRef.current = [...orderRef.current, id];
234
+ setSectionIds(orderRef.current);
235
+ }
236
+ return () => {
237
+ orderRef.current = orderRef.current.filter((x) => x !== id);
238
+ setSectionIds(orderRef.current);
239
+ };
240
+ }, []);
241
+ const ctx = react.useMemo(
242
+ () => ({
243
+ orientation,
244
+ isOpen,
245
+ toggle,
246
+ open,
247
+ close,
248
+ sectionIds,
249
+ registerSection
250
+ }),
251
+ [orientation, isOpen, toggle, open, close, sectionIds, registerSection]
252
+ );
253
+ return /* @__PURE__ */ jsxRuntime.jsx(AccordionPanelContext.Provider, { value: ctx, children: /* @__PURE__ */ jsxRuntime.jsx(
254
+ "div",
255
+ {
256
+ "data-react-fancy-accordion-panel": "",
257
+ "data-orientation": orientation,
258
+ className: chunk3Z6ALUWP_cjs.cn(
259
+ "inline-flex items-stretch",
260
+ orientation === "horizontal" ? "flex-row" : "flex-col",
261
+ className
262
+ ),
263
+ children
264
+ }
265
+ ) });
266
+ }
267
+ AccordionPanelRoot.displayName = "AccordionPanel";
268
+ var AccordionPanel = AccordionPanelRoot;
269
+ AccordionPanel.Section = AccordionPanelSection;
270
+ AccordionPanel.Trigger = AccordionPanelTrigger;
271
+ AccordionPanel.Content = AccordionPanelContent;
272
+
273
+ exports.AccordionPanel = AccordionPanel;
274
+ exports.AccordionPanelContent = AccordionPanelContent;
275
+ exports.AccordionPanelSection = AccordionPanelSection;
276
+ exports.AccordionPanelTrigger = AccordionPanelTrigger;
277
+ exports.useAccordionPanel = useAccordionPanel;
278
+ exports.useAccordionSection = useAccordionSection;
279
+ //# sourceMappingURL=chunk-JPTWZ3RF.cjs.map
280
+ //# sourceMappingURL=chunk-JPTWZ3RF.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/AccordionPanel/AccordionPanel.context.ts","../src/components/AccordionPanel/AccordionPanel.Section.tsx","../src/components/AccordionPanel/AccordionPanel.Trigger.tsx","../src/components/AccordionPanel/AccordionPanel.Content.tsx","../src/components/AccordionPanel/AccordionPanel.tsx"],"names":["createContext","useContext","useEffect","useMemo","jsx","cn","useControllableState","useCallback","useState","useRef"],"mappings":"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","file":"chunk-JPTWZ3RF.cjs","sourcesContent":["import { createContext, useContext } from \"react\";\nimport type { AccordionOrientation } from \"./AccordionPanel.types\";\n\n// ── Panel-level context ─────────────────────────────────────────────────\n\nexport interface AccordionPanelContextValue {\n orientation: AccordionOrientation;\n isOpen: (id: string) => boolean;\n toggle: (id: string) => void;\n open: (id: string) => void;\n close: (id: string) => void;\n /** Ordered list of all section ids registered in this panel */\n sectionIds: string[];\n registerSection: (id: string) => () => void;\n}\n\nexport const AccordionPanelContext =\n createContext<AccordionPanelContextValue | null>(null);\n\nexport function useAccordionPanel(): AccordionPanelContextValue {\n const ctx = useContext(AccordionPanelContext);\n if (!ctx) {\n throw new Error(\n \"AccordionPanel components must be used inside <AccordionPanel>\",\n );\n }\n return ctx;\n}\n\n// ── Section-level context ───────────────────────────────────────────────\n\nexport interface AccordionSectionContextValue {\n id: string;\n open: boolean;\n pinned: boolean;\n orientation: AccordionOrientation;\n toggle: () => void;\n}\n\nexport const AccordionSectionContext =\n createContext<AccordionSectionContextValue | null>(null);\n\nexport function useAccordionSection(): AccordionSectionContextValue {\n const ctx = useContext(AccordionSectionContext);\n if (!ctx) {\n throw new Error(\n \"<AccordionPanel.Trigger> must be rendered inside <AccordionPanel.Section>\",\n );\n }\n return ctx;\n}\n","import { useEffect, useMemo } from \"react\";\nimport { cn } from \"../../utils/cn\";\nimport {\n AccordionSectionContext,\n useAccordionPanel,\n} from \"./AccordionPanel.context\";\nimport type { AccordionPanelSectionProps } from \"./AccordionPanel.types\";\n\n/**\n * One collapsible section inside an AccordionPanel.\n *\n * Compose with `<AccordionPanel.Trigger>` and `<AccordionPanel.Content>`\n * children — Content renders only when open, Trigger always renders and\n * adapts its look by state. Children that are not Trigger/Content are\n * rendered as-is, regardless of state, so static decorations stay put.\n *\n * Pinned sections never collapse and don't need a Trigger.\n */\nexport function AccordionPanelSection({\n id,\n pinned = false,\n className,\n openClassName,\n closedClassName,\n unstyled,\n children,\n}: AccordionPanelSectionProps) {\n const panel = useAccordionPanel();\n const { orientation, isOpen, toggle, registerSection } = panel;\n\n useEffect(() => registerSection(id), [id, registerSection]);\n\n const open = pinned || isOpen(id);\n\n const sectionCtx = useMemo(\n () => ({\n id,\n open,\n pinned,\n orientation,\n toggle: () => toggle(id),\n }),\n [id, open, pinned, orientation, toggle],\n );\n\n return (\n <AccordionSectionContext.Provider value={sectionCtx}>\n <div\n data-react-fancy-accordion-section=\"\"\n data-state={open ? \"open\" : \"closed\"}\n data-pinned={pinned ? \"\" : undefined}\n data-orientation={orientation}\n className={cn(\n \"flex shrink-0\",\n !unstyled && \"items-center gap-1\",\n orientation === \"horizontal\" ? \"flex-row\" : \"flex-col\",\n className,\n open ? openClassName : closedClassName,\n )}\n >\n {children}\n </div>\n </AccordionSectionContext.Provider>\n );\n}\n\nAccordionPanelSection.displayName = \"AccordionPanelSection\";\n","import { cn } from \"../../utils/cn\";\nimport { useAccordionSection } from \"./AccordionPanel.context\";\nimport type {\n AccordionPanelTriggerProps,\n SectionRenderable,\n SectionRenderState,\n} from \"./AccordionPanel.types\";\n\nfunction renderSlot(slot: SectionRenderable, state: SectionRenderState) {\n return typeof slot === \"function\" ? slot(state) : slot;\n}\n\n/**\n * Trigger for an AccordionPanel.Section.\n *\n * Has two visual roles, picked automatically from section state:\n *\n * - When the section is OPEN: renders as a thin divider on the section's\n * trailing edge. Hovering reveals an inset chevron pointing toward the\n * section so the user knows clicking will collapse it.\n *\n * - When the section is CLOSED: renders as a standalone chevron button\n * in place of the section content. Clicking re-expands the section.\n *\n * Supply `children` (node or render-prop) to fully replace the default\n * rendering. The render-prop receives `{ open, toggle, orientation, id }`.\n */\nexport function AccordionPanelTrigger({\n children,\n className,\n \"aria-label\": ariaLabel,\n}: AccordionPanelTriggerProps) {\n const { id, open, orientation, toggle } = useAccordionSection();\n const state: SectionRenderState = { id, open, orientation, toggle };\n\n // Custom render path — caller is in charge of look & feel.\n if (children !== undefined) {\n return (\n <div\n data-react-fancy-accordion-trigger=\"\"\n data-state={open ? \"open\" : \"closed\"}\n data-orientation={orientation}\n className={className}\n >\n {renderSlot(children, state)}\n </div>\n );\n }\n\n // Default rendering ----------------------------------------------------\n\n if (open) {\n // Trailing-edge divider. The visible line is 1px (rendered via the\n // ::before pseudo-element so it stays narrow); the button's actual\n // hitbox is much wider (w-3 / h-3 = 12px) so users don't have to land\n // pixel-perfect on the line. Hovering the hitbox highlights the line\n // and reveals an inset chevron signalling \"click to collapse\".\n return (\n <button\n type=\"button\"\n onClick={toggle}\n aria-label={ariaLabel ?? \"Collapse section\"}\n data-react-fancy-accordion-trigger=\"\"\n data-state=\"open\"\n data-orientation={orientation}\n className={cn(\n \"group relative flex shrink-0 items-center justify-center cursor-pointer\",\n \"text-zinc-500 dark:text-zinc-500\",\n \"hover:text-zinc-900 dark:hover:text-zinc-100\",\n // Wide hitbox + thin visible line (drawn via ::before).\n orientation === \"horizontal\"\n ? \"w-3 self-stretch\"\n : \"h-3 self-stretch\",\n \"before:absolute before:bg-zinc-200 dark:before:bg-zinc-700\",\n \"before:transition-colors group-hover:before:bg-zinc-400 dark:group-hover:before:bg-zinc-500\",\n orientation === \"horizontal\"\n ? \"before:top-0 before:bottom-0 before:w-px before:left-1/2 before:-translate-x-1/2\"\n : \"before:left-0 before:right-0 before:h-px before:top-1/2 before:-translate-y-1/2\",\n \"transition-colors\",\n className,\n )}\n >\n <ChevronIcon\n orientation={orientation}\n purpose=\"collapse\"\n className=\"relative opacity-0 group-hover:opacity-100 transition-opacity\"\n />\n </button>\n );\n }\n\n // Closed: standalone chevron button. Click to re-expand.\n return (\n <button\n type=\"button\"\n onClick={toggle}\n aria-label={ariaLabel ?? \"Expand section\"}\n data-react-fancy-accordion-trigger=\"\"\n data-state=\"closed\"\n data-orientation={orientation}\n className={cn(\n \"flex shrink-0 items-center justify-center rounded-md\",\n \"text-zinc-400 dark:text-zinc-500\",\n \"hover:text-zinc-900 dark:hover:text-zinc-100\",\n \"hover:bg-zinc-100 dark:hover:bg-zinc-800\",\n \"transition-colors cursor-pointer\",\n orientation === \"horizontal\" ? \"h-8 w-6 mx-0.5\" : \"w-8 h-6 my-0.5\",\n className,\n )}\n >\n <ChevronIcon orientation={orientation} purpose=\"expand\" />\n </button>\n );\n}\n\nAccordionPanelTrigger.displayName = \"AccordionPanelTrigger\";\n\n// ── Internal chevron ────────────────────────────────────────────────────\n\nfunction ChevronIcon({\n orientation,\n purpose,\n className,\n}: {\n orientation: \"horizontal\" | \"vertical\";\n /** \"expand\" → closed section, click to open. \"collapse\" → open section, click to close. */\n purpose: \"expand\" | \"collapse\";\n className?: string;\n}) {\n // For horizontal: both states use a left-pointing chevron (matches the\n // screenshot convention — closed sections show ❮, open dividers reveal\n // a ❮ on hover indicating the section will collapse leftward).\n //\n // For vertical: closed shows down ⌄ (click to expand below); open\n // divider on hover shows up ⌃ (click to collapse upward).\n const transform =\n orientation === \"horizontal\"\n ? \"rotate(180deg)\"\n : purpose === \"expand\"\n ? \"rotate(90deg)\"\n : \"rotate(270deg)\";\n\n return (\n <svg\n viewBox=\"0 0 16 16\"\n width=\"12\"\n height=\"12\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n style={{ transform }}\n className={className}\n aria-hidden=\"true\"\n >\n <polyline points=\"6 4 10 8 6 12\" />\n </svg>\n );\n}\n","import type { ReactNode } from \"react\";\nimport { cn } from \"../../utils/cn\";\nimport { useAccordionSection } from \"./AccordionPanel.context\";\n\nexport interface AccordionPanelContentProps {\n children: ReactNode;\n className?: string;\n /**\n * Skip the default flex-row/flex-col + items-center + gap classes so the\n * consumer can lay out the open-state content however they want (e.g. a\n * full-height chat panel with header/scroll/input rows). The\n * `data-react-fancy-accordion-content` attribute and conditional render\n * (only when the section is open) are kept.\n */\n unstyled?: boolean;\n}\n\n/**\n * Wrapper for the open-state content of a Section. Renders its children\n * only when the parent Section is open; returns `null` otherwise.\n *\n * Use this so siblings of `<AccordionPanel.Trigger>` inside a section can\n * cleanly toggle in/out of the DOM.\n *\n * The default styling assumes an inline cluster — flex row (horizontal\n * orientation) or column (vertical), centered, with a small gap. For panel\n * use cases where the content needs full-bleed layout (chat panes, canvas\n * surfaces, etc.), pass `unstyled` and supply your own className.\n */\nexport function AccordionPanelContent({\n children,\n className,\n unstyled,\n}: AccordionPanelContentProps) {\n const { open, orientation } = useAccordionSection();\n if (!open) return null;\n\n return (\n <div\n data-react-fancy-accordion-content=\"\"\n data-orientation={orientation}\n className={cn(\n !unstyled && \"flex items-center gap-1\",\n !unstyled && (orientation === \"horizontal\" ? \"flex-row\" : \"flex-col\"),\n className,\n )}\n >\n {children}\n </div>\n );\n}\n\nAccordionPanelContent.displayName = \"AccordionPanelContent\";\n","import { useCallback, useMemo, useRef, useState } from \"react\";\nimport { cn } from \"../../utils/cn\";\nimport { useControllableState } from \"../../hooks/use-controllable-state\";\nimport { AccordionPanelContext } from \"./AccordionPanel.context\";\nimport { AccordionPanelSection } from \"./AccordionPanel.Section\";\nimport { AccordionPanelTrigger } from \"./AccordionPanel.Trigger\";\nimport { AccordionPanelContent } from \"./AccordionPanel.Content\";\nimport type { AccordionPanelProps } from \"./AccordionPanel.types\";\n\n/**\n * Horizontal or vertical accordion of collapsible sections.\n *\n * Use the compound parts:\n * <AccordionPanel orientation=\"horizontal\" defaultValue={[\"wishlist\"]}>\n * <AccordionPanel.Section id=\"home\" pinned>\n * <Button icon=\"home\" />\n * </AccordionPanel.Section>\n * <AccordionPanel.Section id=\"wishlist\">\n * <Button icon=\"list\">Wishlist</Button>\n * </AccordionPanel.Section>\n * </AccordionPanel>\n *\n * Each non-pinned section renders a trigger (default chevron-divider) that\n * collapses/expands. Pass a custom `trigger` prop on a Section, or use the\n * exported `AccordionPanel.Trigger` directly to compose your own.\n */\nfunction AccordionPanelRoot({\n orientation = \"horizontal\",\n value: controlledValue,\n defaultValue,\n onValueChange,\n className,\n children,\n}: AccordionPanelProps) {\n const [openIds, setOpenIds] = useControllableState<string[]>(\n controlledValue,\n defaultValue ?? [],\n onValueChange,\n );\n\n const openSet = useMemo(() => new Set(openIds), [openIds]);\n\n const isOpen = useCallback((id: string) => openSet.has(id), [openSet]);\n\n const open = useCallback(\n (id: string) => {\n setOpenIds(openSet.has(id) ? (openIds ?? []) : [...(openIds ?? []), id]);\n },\n [openSet, openIds, setOpenIds],\n );\n\n const close = useCallback(\n (id: string) => {\n setOpenIds((openIds ?? []).filter((x) => x !== id));\n },\n [openIds, setOpenIds],\n );\n\n const toggle = useCallback(\n (id: string) => {\n setOpenIds(\n openSet.has(id)\n ? (openIds ?? []).filter((x) => x !== id)\n : [...(openIds ?? []), id],\n );\n },\n [openSet, openIds, setOpenIds],\n );\n\n // Track section order for downstream consumers (e.g. trigger direction\n // heuristics that need to know neighbors).\n const [sectionIds, setSectionIds] = useState<string[]>([]);\n const orderRef = useRef<string[]>([]);\n\n const registerSection = useCallback((id: string) => {\n if (!orderRef.current.includes(id)) {\n orderRef.current = [...orderRef.current, id];\n setSectionIds(orderRef.current);\n }\n return () => {\n orderRef.current = orderRef.current.filter((x) => x !== id);\n setSectionIds(orderRef.current);\n };\n }, []);\n\n const ctx = useMemo(\n () => ({\n orientation,\n isOpen,\n toggle,\n open,\n close,\n sectionIds,\n registerSection,\n }),\n [orientation, isOpen, toggle, open, close, sectionIds, registerSection],\n );\n\n return (\n <AccordionPanelContext.Provider value={ctx}>\n <div\n data-react-fancy-accordion-panel=\"\"\n data-orientation={orientation}\n className={cn(\n \"inline-flex items-stretch\",\n orientation === \"horizontal\" ? \"flex-row\" : \"flex-col\",\n className,\n )}\n >\n {children}\n </div>\n </AccordionPanelContext.Provider>\n );\n}\n\nAccordionPanelRoot.displayName = \"AccordionPanel\";\n\n// ── Compound exports ────────────────────────────────────────────────────\n\ntype AccordionPanelType = typeof AccordionPanelRoot & {\n Section: typeof AccordionPanelSection;\n Trigger: typeof AccordionPanelTrigger;\n Content: typeof AccordionPanelContent;\n};\n\nexport const AccordionPanel = AccordionPanelRoot as AccordionPanelType;\nAccordionPanel.Section = AccordionPanelSection;\nAccordionPanel.Trigger = AccordionPanelTrigger;\nAccordionPanel.Content = AccordionPanelContent;\n"]}
@@ -0,0 +1,19 @@
1
+ import { useEffect } from 'react';
2
+
3
+ // src/hooks/use-escape-key.ts
4
+ function useEscapeKey(handler, enabled = true) {
5
+ useEffect(() => {
6
+ if (!enabled) return;
7
+ const listener = (event) => {
8
+ if (event.key === "Escape") {
9
+ handler();
10
+ }
11
+ };
12
+ document.addEventListener("keydown", listener);
13
+ return () => document.removeEventListener("keydown", listener);
14
+ }, [handler, enabled]);
15
+ }
16
+
17
+ export { useEscapeKey };
18
+ //# sourceMappingURL=chunk-JXE5XID6.js.map
19
+ //# sourceMappingURL=chunk-JXE5XID6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/hooks/use-escape-key.ts"],"names":[],"mappings":";;;AAEO,SAAS,YAAA,CACd,OAAA,EACA,OAAA,GAAmB,IAAA,EACb;AACN,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,CAAC,OAAA,EAAS;AAEd,IAAA,MAAM,QAAA,GAAW,CAAC,KAAA,KAAyB;AACzC,MAAA,IAAI,KAAA,CAAM,QAAQ,QAAA,EAAU;AAC1B,QAAA,OAAA,EAAQ;AAAA,MACV;AAAA,IACF,CAAA;AAEA,IAAA,QAAA,CAAS,gBAAA,CAAiB,WAAW,QAAQ,CAAA;AAC7C,IAAA,OAAO,MAAM,QAAA,CAAS,mBAAA,CAAoB,SAAA,EAAW,QAAQ,CAAA;AAAA,EAC/D,CAAA,EAAG,CAAC,OAAA,EAAS,OAAO,CAAC,CAAA;AACvB","file":"chunk-JXE5XID6.js","sourcesContent":["import { useEffect } from \"react\";\n\nexport function useEscapeKey(\n handler: () => void,\n enabled: boolean = true,\n): void {\n useEffect(() => {\n if (!enabled) return;\n\n const listener = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n handler();\n }\n };\n\n document.addEventListener(\"keydown\", listener);\n return () => document.removeEventListener(\"keydown\", listener);\n }, [handler, enabled]);\n}\n"]}
@@ -0,0 +1,144 @@
1
+ 'use strict';
2
+
3
+ var chunk3Z6ALUWP_cjs = require('./chunk-3Z6ALUWP.cjs');
4
+ var react = require('react');
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+
7
+ // src/components/Icon/icon-config.ts
8
+ var registry = /* @__PURE__ */ new Map();
9
+ var defaultSetName = "lucide";
10
+ var addenda = [];
11
+ function registerIconAddendum(set) {
12
+ if (!addenda.includes(set)) addenda.push(set);
13
+ }
14
+ function resolveFromAddenda(name) {
15
+ for (const set of addenda) {
16
+ const hit = set.resolve(name);
17
+ if (hit) return hit;
18
+ }
19
+ return null;
20
+ }
21
+ function kebabToPascal(str) {
22
+ return str.split("-").map((part) => part.charAt(0).toUpperCase() + part.slice(1)).join("");
23
+ }
24
+ var lucideModule = null;
25
+ var lucidePromise = null;
26
+ var lucideVersion = 0;
27
+ var lucideListeners = /* @__PURE__ */ new Set();
28
+ function ensureLucideLoaded() {
29
+ if (lucideModule || lucidePromise) return;
30
+ lucidePromise = import('lucide-react').then((mod) => {
31
+ lucideModule = mod;
32
+ lucideVersion++;
33
+ for (const listener of lucideListeners) listener();
34
+ }).catch(() => {
35
+ });
36
+ }
37
+ function subscribeIconResolution(listener) {
38
+ lucideListeners.add(listener);
39
+ return () => lucideListeners.delete(listener);
40
+ }
41
+ function getIconResolutionVersion() {
42
+ return lucideVersion;
43
+ }
44
+ function resolveFromLucide(name) {
45
+ if (typeof window === "undefined") return null;
46
+ if (!lucideModule) {
47
+ ensureLucideLoaded();
48
+ return null;
49
+ }
50
+ const pascal = kebabToPascal(name);
51
+ const icon = lucideModule[pascal];
52
+ return typeof icon === "function" || icon && typeof icon === "object" ? icon : null;
53
+ }
54
+ function registerIcons(icons) {
55
+ let set = registry.get("lucide");
56
+ if (!set) {
57
+ const map2 = /* @__PURE__ */ new Map();
58
+ set = {
59
+ resolve: (name) => {
60
+ const pascal = kebabToPascal(name);
61
+ return map2.get(pascal) ?? null;
62
+ },
63
+ _map: map2
64
+ };
65
+ registry.set("lucide", set);
66
+ }
67
+ const map = set._map;
68
+ for (const [key, component] of Object.entries(icons)) {
69
+ map.set(key, component);
70
+ }
71
+ }
72
+ function registerIconSet(name, set) {
73
+ registry.set(name, set);
74
+ }
75
+ function configureIcons(options) {
76
+ if (options.defaultSet) {
77
+ defaultSetName = options.defaultSet;
78
+ }
79
+ }
80
+ function resolveIcon(name, setName) {
81
+ const resolvedSet = setName ?? defaultSetName;
82
+ const set = registry.get(resolvedSet);
83
+ const registered = set ? set.resolve(name) : null;
84
+ if (registered) return registered;
85
+ const fromAddenda = resolveFromAddenda(name);
86
+ if (fromAddenda) return fromAddenda;
87
+ if (resolvedSet === "lucide") return resolveFromLucide(name);
88
+ return null;
89
+ }
90
+ var sizeClasses = {
91
+ xs: "h-3 w-3",
92
+ sm: "h-4 w-4",
93
+ md: "h-5 w-5",
94
+ lg: "h-6 w-6",
95
+ xl: "h-8 w-8"
96
+ };
97
+ var sizePixels = {
98
+ xs: 12,
99
+ sm: 16,
100
+ md: 20,
101
+ lg: 24,
102
+ xl: 32
103
+ };
104
+ var Icon = react.forwardRef(
105
+ ({ size = "md", className, children, name, iconSet, ...props }, ref) => {
106
+ react.useSyncExternalStore(
107
+ subscribeIconResolution,
108
+ getIconResolutionVersion,
109
+ getIconResolutionVersion
110
+ );
111
+ let content = children;
112
+ if (name && !children) {
113
+ const ResolvedIcon = resolveIcon(name, iconSet);
114
+ if (ResolvedIcon) {
115
+ content = /* @__PURE__ */ jsxRuntime.jsx(ResolvedIcon, { size: sizePixels[size] });
116
+ }
117
+ }
118
+ return /* @__PURE__ */ jsxRuntime.jsx(
119
+ "span",
120
+ {
121
+ ref,
122
+ "aria-hidden": "true",
123
+ "data-react-fancy-icon": "",
124
+ className: chunk3Z6ALUWP_cjs.cn(
125
+ "inline-flex items-center justify-center flex-shrink-0",
126
+ sizeClasses[size],
127
+ className
128
+ ),
129
+ ...props,
130
+ children: content
131
+ }
132
+ );
133
+ }
134
+ );
135
+ Icon.displayName = "Icon";
136
+
137
+ exports.Icon = Icon;
138
+ exports.configureIcons = configureIcons;
139
+ exports.registerIconAddendum = registerIconAddendum;
140
+ exports.registerIconSet = registerIconSet;
141
+ exports.registerIcons = registerIcons;
142
+ exports.resolveIcon = resolveIcon;
143
+ //# sourceMappingURL=chunk-JXIBUIEY.cjs.map
144
+ //# sourceMappingURL=chunk-JXIBUIEY.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/Icon/icon-config.ts","../src/components/Icon/Icon.tsx"],"names":["map","forwardRef","useSyncExternalStore","jsx","cn"],"mappings":";;;;;;;AAKA,IAAM,QAAA,uBAAe,GAAA,EAAqB;AAC1C,IAAI,cAAA,GAAiB,QAAA;AAUrB,IAAM,UAAqB,EAAC;AAGrB,SAAS,qBAAqB,GAAA,EAAoB;AACvD,EAAA,IAAI,CAAC,OAAA,CAAQ,QAAA,CAAS,GAAG,CAAA,EAAG,OAAA,CAAQ,KAAK,GAAG,CAAA;AAC9C;AAEA,SAAS,mBAAmB,IAAA,EAAoC;AAC9D,EAAA,KAAA,MAAW,OAAO,OAAA,EAAS;AACzB,IAAA,MAAM,GAAA,GAAM,GAAA,CAAI,OAAA,CAAQ,IAAI,CAAA;AAC5B,IAAA,IAAI,KAAK,OAAO,GAAA;AAAA,EAClB;AACA,EAAA,OAAO,IAAA;AACT;AAEA,SAAS,cAAc,GAAA,EAAqB;AAC1C,EAAA,OAAO,IACJ,KAAA,CAAM,GAAG,EACT,GAAA,CAAI,CAAC,SAAS,IAAA,CAAK,MAAA,CAAO,CAAC,CAAA,CAAE,WAAA,KAAgB,IAAA,CAAK,KAAA,CAAM,CAAC,CAAC,CAAA,CAC1D,KAAK,EAAE,CAAA;AACZ;AAaA,IAAI,YAAA,GAAiE,IAAA;AACrE,IAAI,aAAA,GAAyC,IAAA;AAC7C,IAAI,aAAA,GAAgB,CAAA;AACpB,IAAM,eAAA,uBAAsB,GAAA,EAAgB;AAE5C,SAAS,kBAAA,GAA2B;AAClC,EAAA,IAAI,gBAAgB,aAAA,EAAe;AACnC,EAAA,aAAA,GAAgB,OAAO,cAAc,CAAA,CAClC,IAAA,CAAK,CAAC,GAAA,KAAQ;AACb,IAAA,YAAA,GAAe,GAAA;AACf,IAAA,aAAA,EAAA;AACA,IAAA,KAAA,MAAW,QAAA,IAAY,iBAAiB,QAAA,EAAS;AAAA,EACnD,CAAC,CAAA,CACA,KAAA,CAAM,MAAM;AAAA,EAEb,CAAC,CAAA;AACL;AAGO,SAAS,wBAAwB,QAAA,EAAkC;AACxE,EAAA,eAAA,CAAgB,IAAI,QAAQ,CAAA;AAC5B,EAAA,OAAO,MAAM,eAAA,CAAgB,MAAA,CAAO,QAAQ,CAAA;AAC9C;AAGO,SAAS,wBAAA,GAAmC;AACjD,EAAA,OAAO,aAAA;AACT;AASA,SAAS,kBAAkB,IAAA,EAAoC;AAS7D,EAAA,IAAI,OAAO,MAAA,KAAW,WAAA,EAAa,OAAO,IAAA;AAC1C,EAAA,IAAI,CAAC,YAAA,EAAc;AACjB,IAAA,kBAAA,EAAmB;AACnB,IAAA,OAAO,IAAA;AAAA,EACT;AACA,EAAA,MAAM,MAAA,GAAS,cAAc,IAAI,CAAA;AACjC,EAAA,MAAM,IAAA,GAAO,aAAa,MAAM,CAAA;AAChC,EAAA,OAAO,OAAO,IAAA,KAAS,UAAA,IAAe,QAAQ,OAAO,IAAA,KAAS,WAAa,IAAA,GAAyB,IAAA;AACtG;AAeO,SAAS,cACd,KAAA,EACM;AACN,EAAA,IAAI,GAAA,GAAM,QAAA,CAAS,GAAA,CAAI,QAAQ,CAAA;AAC/B,EAAA,IAAI,CAAC,GAAA,EAAK;AACR,IAAA,MAAMA,IAAAA,uBAAU,GAAA,EAAkE;AAClF,IAAA,GAAA,GAAM;AAAA,MACJ,OAAA,EAAS,CAAC,IAAA,KAAiB;AACzB,QAAA,MAAM,MAAA,GAAS,cAAc,IAAI,CAAA;AACjC,QAAA,OAAOA,IAAAA,CAAI,GAAA,CAAI,MAAM,CAAA,IAAK,IAAA;AAAA,MAC5B,CAAA;AAAA,MACA,IAAA,EAAMA;AAAA,KACR;AACA,IAAA,QAAA,CAAS,GAAA,CAAI,UAAU,GAAG,CAAA;AAAA,EAC5B;AACA,EAAA,MAAM,MAAO,GAAA,CAA8F,IAAA;AAC3G,EAAA,KAAA,MAAW,CAAC,GAAA,EAAK,SAAS,KAAK,MAAA,CAAO,OAAA,CAAQ,KAAK,CAAA,EAAG;AACpD,IAAA,GAAA,CAAI,GAAA,CAAI,KAAK,SAAS,CAAA;AAAA,EACxB;AACF;AAEO,SAAS,eAAA,CAAgB,MAAc,GAAA,EAAoB;AAChE,EAAA,QAAA,CAAS,GAAA,CAAI,MAAM,GAAG,CAAA;AACxB;AAEO,SAAS,eAAe,OAAA,EAAwC;AACrE,EAAA,IAAI,QAAQ,UAAA,EAAY;AACtB,IAAA,cAAA,GAAiB,OAAA,CAAQ,UAAA;AAAA,EAC3B;AACF;AAEO,SAAS,WAAA,CACd,MACA,OAAA,EACsB;AACtB,EAAA,MAAM,cAAc,OAAA,IAAW,cAAA;AAC/B,EAAA,MAAM,GAAA,GAAM,QAAA,CAAS,GAAA,CAAI,WAAW,CAAA;AACpC,EAAA,MAAM,UAAA,GAAa,GAAA,GAAM,GAAA,CAAI,OAAA,CAAQ,IAAI,CAAA,GAAI,IAAA;AAC7C,EAAA,IAAI,YAAY,OAAO,UAAA;AAGvB,EAAA,MAAM,WAAA,GAAc,mBAAmB,IAAI,CAAA;AAC3C,EAAA,IAAI,aAAa,OAAO,WAAA;AACxB,EAAA,IAAI,WAAA,KAAgB,QAAA,EAAU,OAAO,iBAAA,CAAkB,IAAI,CAAA;AAC3D,EAAA,OAAO,IAAA;AACT;AC7JA,IAAM,WAAA,GAA8D;AAAA,EAClE,EAAA,EAAI,SAAA;AAAA,EACJ,EAAA,EAAI,SAAA;AAAA,EACJ,EAAA,EAAI,SAAA;AAAA,EACJ,EAAA,EAAI,SAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AAEA,IAAM,UAAA,GAA6D;AAAA,EACjE,EAAA,EAAI,EAAA;AAAA,EACJ,EAAA,EAAI,EAAA;AAAA,EACJ,EAAA,EAAI,EAAA;AAAA,EACJ,EAAA,EAAI,EAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AAEO,IAAM,IAAA,GAAOC,gBAAA;AAAA,EAClB,CAAC,EAAE,IAAA,GAAO,IAAA,EAAM,SAAA,EAAW,QAAA,EAAU,IAAA,EAAM,OAAA,EAAS,GAAG,KAAA,EAAM,EAAG,GAAA,KAAQ;AAItE,IAAAC,0BAAA;AAAA,MACE,uBAAA;AAAA,MACA,wBAAA;AAAA,MACA;AAAA,KACF;AAEA,IAAA,IAAI,OAAA,GAAU,QAAA;AAEd,IAAA,IAAI,IAAA,IAAQ,CAAC,QAAA,EAAU;AACrB,MAAA,MAAM,YAAA,GAAe,WAAA,CAAY,IAAA,EAAM,OAAO,CAAA;AAC9C,MAAA,IAAI,YAAA,EAAc;AAChB,QAAA,OAAA,mBAAUC,cAAA,CAAC,YAAA,EAAA,EAAa,IAAA,EAAM,UAAA,CAAW,IAAI,CAAA,EAAG,CAAA;AAAA,MAClD;AAAA,IACF;AAEA,IAAA,uBACEA,cAAA;AAAA,MAAC,MAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,aAAA,EAAY,MAAA;AAAA,QACZ,uBAAA,EAAsB,EAAA;AAAA,QACtB,SAAA,EAAWC,oBAAA;AAAA,UACT,uDAAA;AAAA,UACA,YAAY,IAAI,CAAA;AAAA,UAChB;AAAA,SACF;AAAA,QACC,GAAG,KAAA;AAAA,QAEH,QAAA,EAAA;AAAA;AAAA,KACH;AAAA,EAEJ;AACF;AAEA,IAAA,CAAK,WAAA,GAAc,MAAA","file":"chunk-JXIBUIEY.cjs","sourcesContent":["import type { ComponentType } from \"react\";\nimport type { IconSet } from \"./icon-config.types\";\n\ntype IconComponent = ComponentType<{ className?: string; size?: number }>;\n\nconst registry = new Map<string, IconSet>();\nlet defaultSetName = \"lucide\";\n\n/**\n * Addendum layer — icon sets consulted across EVERY lookup, after the active\n * base set but before the lucide auto-fallback, regardless of `defaultSet`.\n * This is how a brand-icon pack (e.g. `@particle-academy/fancy-brand-icons`)\n * layers in: `<Icon name=\"github\" />` resolves the brand mark on top of Lucide\n * (or any swapped base) without a `set=` query. Base set still wins; addenda\n * supplement. Empty by default ⇒ behavior unchanged.\n */\nconst addenda: IconSet[] = [];\n\n/** Register an icon set as an addendum (supplements every base set). */\nexport function registerIconAddendum(set: IconSet): void {\n if (!addenda.includes(set)) addenda.push(set);\n}\n\nfunction resolveFromAddenda(name: string): IconComponent | null {\n for (const set of addenda) {\n const hit = set.resolve(name);\n if (hit) return hit as IconComponent;\n }\n return null;\n}\n\nfunction kebabToPascal(str: string): string {\n return str\n .split(\"-\")\n .map((part) => part.charAt(0).toUpperCase() + part.slice(1))\n .join(\"\");\n}\n\n/**\n * Lazy lucide barrel. The auto-fallback (`<Icon name=\"…\" />` resolving ANY\n * lucide icon by kebab name) needs the whole namespace because names are\n * dynamic — un-tree-shakeable. Importing it eagerly forced all ~5400 icons\n * into react-fancy's main bundle for every consumer (~548KB). Instead we\n * dynamic-import it on first auto-resolve, so the barrel becomes a lazy chunk\n * loaded ONLY by apps that actually use `<Icon name>` with an unregistered\n * icon — never on the critical path. Consumers wanting sync resolution +\n * tree-shaking should `registerIcons({ ...named imports })` (those win and\n * never trigger the lazy load).\n */\nlet lucideModule: Record<string, IconComponent | undefined> | null = null;\nlet lucidePromise: Promise<unknown> | null = null;\nlet lucideVersion = 0;\nconst lucideListeners = new Set<() => void>();\n\nfunction ensureLucideLoaded(): void {\n if (lucideModule || lucidePromise) return;\n lucidePromise = import(\"lucide-react\")\n .then((mod) => {\n lucideModule = mod as unknown as Record<string, IconComponent | undefined>;\n lucideVersion++;\n for (const listener of lucideListeners) listener();\n })\n .catch(() => {\n // Leave lucidePromise set so we don't hammer a failed import.\n });\n}\n\n/** Subscribe to the lazy lucide load so `<Icon>` can re-render once it lands. */\nexport function subscribeIconResolution(listener: () => void): () => void {\n lucideListeners.add(listener);\n return () => lucideListeners.delete(listener);\n}\n\n/** Snapshot for useSyncExternalStore — bumps when the lucide barrel loads. */\nexport function getIconResolutionVersion(): number {\n return lucideVersion;\n}\n\n/**\n * Fallback resolver: look up any lucide-react icon by its kebab-case name\n * without requiring the consumer to call `registerIcons()` first. Returns null\n * until the lazy barrel has loaded (the first call kicks off the import; `<Icon>`\n * re-renders via `subscribeIconResolution` when it's ready). Overrides\n * registered via `registerIcons()` still win and resolve synchronously.\n */\nfunction resolveFromLucide(name: string): IconComponent | null {\n // SSR-deterministic: never resolve the lazily-imported lucide barrel on the\n // server. A long-running SSR process (e.g. Inertia's node SSR daemon) loads\n // the barrel after its first request, then renders auto-fallback lucide icons\n // that a fresh client (barrel not yet loaded) does NOT have at hydration →\n // React #418 (\"server HTML didn't match\"). Returning null on the server makes\n // the server render match the client's FIRST render; the icon then appears\n // once the client loads the barrel (via subscribeIconResolution). Registered\n // icons + addenda (brand packs) still resolve synchronously on both sides.\n if (typeof window === \"undefined\") return null;\n if (!lucideModule) {\n ensureLucideLoaded();\n return null;\n }\n const pascal = kebabToPascal(name);\n const icon = lucideModule[pascal];\n return typeof icon === \"function\" || (icon && typeof icon === \"object\") ? (icon as IconComponent) : null;\n}\n\n/**\n * Register individual icon components by their kebab-case name.\n *\n * ```tsx\n * import { registerIcons } from \"@particle-academy/react-fancy\";\n * import { Home, Settings, Mail } from \"lucide-react\";\n *\n * registerIcons({ Home, Settings, Mail });\n * ```\n *\n * Icons are registered into the default \"lucide\" icon set and resolved\n * by the `<Icon name=\"home\" />` component using kebab-case names.\n */\nexport function registerIcons(\n icons: Record<string, ComponentType<{ className?: string; size?: number }>>,\n): void {\n let set = registry.get(\"lucide\");\n if (!set) {\n const map = new Map<string, ComponentType<{ className?: string; size?: number }>>();\n set = {\n resolve: (name: string) => {\n const pascal = kebabToPascal(name);\n return map.get(pascal) ?? null;\n },\n _map: map,\n } as IconSet & { _map: Map<string, ComponentType<{ className?: string; size?: number }>> };\n registry.set(\"lucide\", set);\n }\n const map = (set as IconSet & { _map: Map<string, ComponentType<{ className?: string; size?: number }>> })._map;\n for (const [key, component] of Object.entries(icons)) {\n map.set(key, component);\n }\n}\n\nexport function registerIconSet(name: string, set: IconSet): void {\n registry.set(name, set);\n}\n\nexport function configureIcons(options: { defaultSet?: string }): void {\n if (options.defaultSet) {\n defaultSetName = options.defaultSet;\n }\n}\n\nexport function resolveIcon(\n name: string,\n setName?: string,\n): IconComponent | null {\n const resolvedSet = setName ?? defaultSetName;\n const set = registry.get(resolvedSet);\n const registered = set ? set.resolve(name) : null;\n if (registered) return registered;\n // Addenda fill gaps after the base set, before the lucide auto-fallback — so a\n // brand pack's `github` wins over lucide's auto-resolved one.\n const fromAddenda = resolveFromAddenda(name);\n if (fromAddenda) return fromAddenda;\n if (resolvedSet === \"lucide\") return resolveFromLucide(name);\n return null;\n}\n","import { forwardRef, useSyncExternalStore } from \"react\";\nimport { cn } from \"../../utils/cn\";\nimport { resolveIcon, subscribeIconResolution, getIconResolutionVersion } from \"./icon-config\";\nimport type { IconProps } from \"./Icon.types\";\n\nconst sizeClasses: Record<NonNullable<IconProps[\"size\"]>, string> = {\n xs: \"h-3 w-3\",\n sm: \"h-4 w-4\",\n md: \"h-5 w-5\",\n lg: \"h-6 w-6\",\n xl: \"h-8 w-8\",\n};\n\nconst sizePixels: Record<NonNullable<IconProps[\"size\"]>, number> = {\n xs: 12,\n sm: 16,\n md: 20,\n lg: 24,\n xl: 32,\n};\n\nexport const Icon = forwardRef<HTMLSpanElement, IconProps>(\n ({ size = \"md\", className, children, name, iconSet, ...props }, ref) => {\n // Re-render when the lazy lucide barrel lands, so `<Icon name>` auto-resolved\n // from lucide appears once loaded. Registered icons resolve synchronously and\n // never trigger the lazy load. SSR snapshot is the same getter (version 0).\n useSyncExternalStore(\n subscribeIconResolution,\n getIconResolutionVersion,\n getIconResolutionVersion,\n );\n\n let content = children;\n\n if (name && !children) {\n const ResolvedIcon = resolveIcon(name, iconSet);\n if (ResolvedIcon) {\n content = <ResolvedIcon size={sizePixels[size]} />;\n }\n }\n\n return (\n <span\n ref={ref}\n aria-hidden=\"true\"\n data-react-fancy-icon=\"\"\n className={cn(\n \"inline-flex items-center justify-center flex-shrink-0\",\n sizeClasses[size],\n className,\n )}\n {...props}\n >\n {content}\n </span>\n );\n },\n);\n\nIcon.displayName = \"Icon\";\n"]}