@particle-academy/react-fancy 5.12.0 → 5.13.1

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 (949) 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-3GRC5J2L.cjs +54 -0
  136. package/dist/chunk-3GRC5J2L.cjs.map +1 -0
  137. package/dist/chunk-3SQ34IQC.cjs +124 -0
  138. package/dist/chunk-3SQ34IQC.cjs.map +1 -0
  139. package/dist/chunk-3WGRVDQR.cjs +39 -0
  140. package/dist/chunk-3WGRVDQR.cjs.map +1 -0
  141. package/dist/chunk-3Z6ALUWP.cjs +13 -0
  142. package/dist/chunk-3Z6ALUWP.cjs.map +1 -0
  143. package/dist/chunk-45BBNJQD.js +2019 -0
  144. package/dist/chunk-45BBNJQD.js.map +1 -0
  145. package/dist/chunk-47TFRODY.cjs +107 -0
  146. package/dist/chunk-47TFRODY.cjs.map +1 -0
  147. package/dist/chunk-4DQ6HX27.cjs +187 -0
  148. package/dist/chunk-4DQ6HX27.cjs.map +1 -0
  149. package/dist/chunk-4UA45GB4.js +129 -0
  150. package/dist/chunk-4UA45GB4.js.map +1 -0
  151. package/dist/chunk-57FQGQJK.cjs +26 -0
  152. package/dist/chunk-57FQGQJK.cjs.map +1 -0
  153. package/dist/chunk-5FV6GMFP.cjs +4 -0
  154. package/dist/chunk-5FV6GMFP.cjs.map +1 -0
  155. package/dist/chunk-5HOQ2PHR.cjs +287 -0
  156. package/dist/chunk-5HOQ2PHR.cjs.map +1 -0
  157. package/dist/chunk-5I4PR2KV.cjs +131 -0
  158. package/dist/chunk-5I4PR2KV.cjs.map +1 -0
  159. package/dist/chunk-5OC6DUYT.js +139 -0
  160. package/dist/chunk-5OC6DUYT.js.map +1 -0
  161. package/dist/chunk-5QL7XT3N.js +80 -0
  162. package/dist/chunk-5QL7XT3N.js.map +1 -0
  163. package/dist/chunk-5U2DZ7AV.js +49 -0
  164. package/dist/chunk-5U2DZ7AV.js.map +1 -0
  165. package/dist/chunk-5UOQVGZC.cjs +930 -0
  166. package/dist/chunk-5UOQVGZC.cjs.map +1 -0
  167. package/dist/chunk-6BW5BQMN.cjs +57 -0
  168. package/dist/chunk-6BW5BQMN.cjs.map +1 -0
  169. package/dist/chunk-6FBFE66M.cjs +292 -0
  170. package/dist/chunk-6FBFE66M.cjs.map +1 -0
  171. package/dist/chunk-6FQGMVF2.js +25 -0
  172. package/dist/chunk-6FQGMVF2.js.map +1 -0
  173. package/dist/chunk-6GC5DMOK.cjs +141 -0
  174. package/dist/chunk-6GC5DMOK.cjs.map +1 -0
  175. package/dist/chunk-6H6OYLMJ.js +105 -0
  176. package/dist/chunk-6H6OYLMJ.js.map +1 -0
  177. package/dist/chunk-6L6LI2RL.cjs +37 -0
  178. package/dist/chunk-6L6LI2RL.cjs.map +1 -0
  179. package/dist/chunk-6MDZQIMZ.cjs +18 -0
  180. package/dist/chunk-6MDZQIMZ.cjs.map +1 -0
  181. package/dist/chunk-6OSHAP6L.cjs +110 -0
  182. package/dist/chunk-6OSHAP6L.cjs.map +1 -0
  183. package/dist/chunk-7AFEKDUS.js +202 -0
  184. package/dist/chunk-7AFEKDUS.js.map +1 -0
  185. package/dist/chunk-7C7VF4WY.cjs +155 -0
  186. package/dist/chunk-7C7VF4WY.cjs.map +1 -0
  187. package/dist/chunk-7NLKXBZ2.cjs +88 -0
  188. package/dist/chunk-7NLKXBZ2.cjs.map +1 -0
  189. package/dist/chunk-7XDKIZQE.js +382 -0
  190. package/dist/chunk-7XDKIZQE.js.map +1 -0
  191. package/dist/chunk-A22T6DKO.cjs +283 -0
  192. package/dist/chunk-A22T6DKO.cjs.map +1 -0
  193. package/dist/chunk-A3CNYKT3.js +197 -0
  194. package/dist/chunk-A3CNYKT3.js.map +1 -0
  195. package/dist/chunk-AC7M7JDO.cjs +199 -0
  196. package/dist/chunk-AC7M7JDO.cjs.map +1 -0
  197. package/dist/chunk-AGDW5ENV.js +37 -0
  198. package/dist/chunk-AGDW5ENV.js.map +1 -0
  199. package/dist/chunk-AIA5UNQ5.cjs +4 -0
  200. package/dist/chunk-AIA5UNQ5.cjs.map +1 -0
  201. package/dist/chunk-AKIUDPJU.js +119 -0
  202. package/dist/chunk-AKIUDPJU.js.map +1 -0
  203. package/dist/chunk-ANEX75DF.cjs +39 -0
  204. package/dist/chunk-ANEX75DF.cjs.map +1 -0
  205. package/dist/chunk-AOOBRPTE.cjs +142 -0
  206. package/dist/chunk-AOOBRPTE.cjs.map +1 -0
  207. package/dist/chunk-ARSQY4P7.cjs +101 -0
  208. package/dist/chunk-ARSQY4P7.cjs.map +1 -0
  209. package/dist/chunk-ATFXU6R6.js +122 -0
  210. package/dist/chunk-ATFXU6R6.js.map +1 -0
  211. package/dist/chunk-AUTW5O4W.js +3 -0
  212. package/dist/chunk-AUTW5O4W.js.map +1 -0
  213. package/dist/chunk-AVR5P4GA.cjs +832 -0
  214. package/dist/chunk-AVR5P4GA.cjs.map +1 -0
  215. package/dist/chunk-B3HVWXIQ.cjs +112 -0
  216. package/dist/chunk-B3HVWXIQ.cjs.map +1 -0
  217. package/dist/chunk-BEGDL2CD.js +81 -0
  218. package/dist/chunk-BEGDL2CD.js.map +1 -0
  219. package/dist/chunk-BFKCVSNK.cjs +80 -0
  220. package/dist/chunk-BFKCVSNK.cjs.map +1 -0
  221. package/dist/chunk-BPBI3WWQ.cjs +364 -0
  222. package/dist/chunk-BPBI3WWQ.cjs.map +1 -0
  223. package/dist/chunk-BYIY6BH2.js +927 -0
  224. package/dist/chunk-BYIY6BH2.js.map +1 -0
  225. package/dist/chunk-C4Z4S3CX.js +164 -0
  226. package/dist/chunk-C4Z4S3CX.js.map +1 -0
  227. package/dist/chunk-C5AZNBVB.js +153 -0
  228. package/dist/chunk-C5AZNBVB.js.map +1 -0
  229. package/dist/chunk-CFBK5RIZ.js +35 -0
  230. package/dist/chunk-CFBK5RIZ.js.map +1 -0
  231. package/dist/chunk-CHADHN6M.js +37 -0
  232. package/dist/chunk-CHADHN6M.js.map +1 -0
  233. package/dist/chunk-CPY7NHXM.js +88 -0
  234. package/dist/chunk-CPY7NHXM.js.map +1 -0
  235. package/dist/chunk-CS4GQXYY.js +131 -0
  236. package/dist/chunk-CS4GQXYY.js.map +1 -0
  237. package/dist/chunk-CTMJYV3O.js +99 -0
  238. package/dist/chunk-CTMJYV3O.js.map +1 -0
  239. package/dist/chunk-CZZH45GQ.cjs +122 -0
  240. package/dist/chunk-CZZH45GQ.cjs.map +1 -0
  241. package/dist/chunk-D4WM23Y4.js +109 -0
  242. package/dist/chunk-D4WM23Y4.js.map +1 -0
  243. package/dist/chunk-D7NAXQ2N.js +86 -0
  244. package/dist/chunk-D7NAXQ2N.js.map +1 -0
  245. package/dist/chunk-DJ3YM72H.cjs +353 -0
  246. package/dist/chunk-DJ3YM72H.cjs.map +1 -0
  247. package/dist/chunk-DOSSIU6S.cjs +162 -0
  248. package/dist/chunk-DOSSIU6S.cjs.map +1 -0
  249. package/dist/chunk-DSUHZO6T.js +11 -0
  250. package/dist/chunk-DSUHZO6T.js.map +1 -0
  251. package/dist/chunk-DTPGJNOI.js +204 -0
  252. package/dist/chunk-DTPGJNOI.js.map +1 -0
  253. package/dist/chunk-DV4IMAQW.js +100 -0
  254. package/dist/chunk-DV4IMAQW.js.map +1 -0
  255. package/dist/chunk-DWRMC2FN.cjs +95 -0
  256. package/dist/chunk-DWRMC2FN.cjs.map +1 -0
  257. package/dist/chunk-DZD2RJVD.js +47 -0
  258. package/dist/chunk-DZD2RJVD.js.map +1 -0
  259. package/dist/chunk-E4LFD44D.js +69 -0
  260. package/dist/chunk-E4LFD44D.js.map +1 -0
  261. package/dist/chunk-E7PHL3TD.cjs +144 -0
  262. package/dist/chunk-E7PHL3TD.cjs.map +1 -0
  263. package/dist/chunk-ECZ66DKF.js +522 -0
  264. package/dist/chunk-ECZ66DKF.js.map +1 -0
  265. package/dist/chunk-EERAEPQO.cjs +177 -0
  266. package/dist/chunk-EERAEPQO.cjs.map +1 -0
  267. package/dist/chunk-EIBW5YLS.js +52 -0
  268. package/dist/chunk-EIBW5YLS.js.map +1 -0
  269. package/dist/chunk-ESKVRRVA.js +56 -0
  270. package/dist/chunk-ESKVRRVA.js.map +1 -0
  271. package/dist/chunk-EVXDG2XN.js +108 -0
  272. package/dist/chunk-EVXDG2XN.js.map +1 -0
  273. package/dist/chunk-F6NEPU67.cjs +218 -0
  274. package/dist/chunk-F6NEPU67.cjs.map +1 -0
  275. package/dist/chunk-F6SCZCJE.js +176 -0
  276. package/dist/chunk-F6SCZCJE.js.map +1 -0
  277. package/dist/chunk-FA3D4GFC.cjs +323 -0
  278. package/dist/chunk-FA3D4GFC.cjs.map +1 -0
  279. package/dist/chunk-FCAV5IFW.js +63 -0
  280. package/dist/chunk-FCAV5IFW.js.map +1 -0
  281. package/dist/chunk-FVV76TRF.js +101 -0
  282. package/dist/chunk-FVV76TRF.js.map +1 -0
  283. package/dist/chunk-G2W7B3OG.js +420 -0
  284. package/dist/chunk-G2W7B3OG.js.map +1 -0
  285. package/dist/chunk-G34OBTU3.cjs +27 -0
  286. package/dist/chunk-G34OBTU3.cjs.map +1 -0
  287. package/dist/chunk-GFYSELJF.js +35 -0
  288. package/dist/chunk-GFYSELJF.js.map +1 -0
  289. package/dist/chunk-GIDW3SUE.cjs +59 -0
  290. package/dist/chunk-GIDW3SUE.cjs.map +1 -0
  291. package/dist/chunk-GKGL7F36.js +290 -0
  292. package/dist/chunk-GKGL7F36.js.map +1 -0
  293. package/dist/chunk-GKPCXPCD.js +262 -0
  294. package/dist/chunk-GKPCXPCD.js.map +1 -0
  295. package/dist/chunk-GZIUE4DE.js +117 -0
  296. package/dist/chunk-GZIUE4DE.js.map +1 -0
  297. package/dist/chunk-HAOYXGGJ.js +104 -0
  298. package/dist/chunk-HAOYXGGJ.js.map +1 -0
  299. package/dist/chunk-HBFVOHQC.cjs +102 -0
  300. package/dist/chunk-HBFVOHQC.cjs.map +1 -0
  301. package/dist/chunk-HG6XUJOT.js +328 -0
  302. package/dist/chunk-HG6XUJOT.js.map +1 -0
  303. package/dist/chunk-I6L7OP7G.cjs +203 -0
  304. package/dist/chunk-I6L7OP7G.cjs.map +1 -0
  305. package/dist/chunk-IE4CM2SN.js +122 -0
  306. package/dist/chunk-IE4CM2SN.js.map +1 -0
  307. package/dist/chunk-IF25CE6S.cjs +202 -0
  308. package/dist/chunk-IF25CE6S.cjs.map +1 -0
  309. package/dist/chunk-IF3T3ZCB.cjs +273 -0
  310. package/dist/chunk-IF3T3ZCB.cjs.map +1 -0
  311. package/dist/chunk-IF5LOWUL.js +273 -0
  312. package/dist/chunk-IF5LOWUL.js.map +1 -0
  313. package/dist/chunk-IGU5YXRV.cjs +138 -0
  314. package/dist/chunk-IGU5YXRV.cjs.map +1 -0
  315. package/dist/chunk-IGYIMS6J.js +174 -0
  316. package/dist/chunk-IGYIMS6J.js.map +1 -0
  317. package/dist/chunk-IJ4I55QQ.cjs +38 -0
  318. package/dist/chunk-IJ4I55QQ.cjs.map +1 -0
  319. package/dist/chunk-IXHZVFHX.cjs +44 -0
  320. package/dist/chunk-IXHZVFHX.cjs.map +1 -0
  321. package/dist/chunk-J2DI6RMR.cjs +115 -0
  322. package/dist/chunk-J2DI6RMR.cjs.map +1 -0
  323. package/dist/chunk-J3XS4HHX.js +230 -0
  324. package/dist/chunk-J3XS4HHX.js.map +1 -0
  325. package/dist/chunk-JCOBDDHF.js +118 -0
  326. package/dist/chunk-JCOBDDHF.js.map +1 -0
  327. package/dist/chunk-JHEM6IGT.cjs +49 -0
  328. package/dist/chunk-JHEM6IGT.cjs.map +1 -0
  329. package/dist/chunk-JIYP73OJ.js +169 -0
  330. package/dist/chunk-JIYP73OJ.js.map +1 -0
  331. package/dist/chunk-JKO2Y5SH.js +60 -0
  332. package/dist/chunk-JKO2Y5SH.js.map +1 -0
  333. package/dist/chunk-JPTWZ3RF.cjs +280 -0
  334. package/dist/chunk-JPTWZ3RF.cjs.map +1 -0
  335. package/dist/chunk-JXE5XID6.js +19 -0
  336. package/dist/chunk-JXE5XID6.js.map +1 -0
  337. package/dist/chunk-JXIBUIEY.cjs +144 -0
  338. package/dist/chunk-JXIBUIEY.cjs.map +1 -0
  339. package/dist/chunk-JYKZKSZJ.js +122 -0
  340. package/dist/chunk-JYKZKSZJ.js.map +1 -0
  341. package/dist/chunk-K2DZEYBF.js +321 -0
  342. package/dist/chunk-K2DZEYBF.js.map +1 -0
  343. package/dist/chunk-K7JGOQJG.js +55 -0
  344. package/dist/chunk-K7JGOQJG.js.map +1 -0
  345. package/dist/chunk-KC6QBKKB.cjs +173 -0
  346. package/dist/chunk-KC6QBKKB.cjs.map +1 -0
  347. package/dist/chunk-KE7KXY5C.cjs +233 -0
  348. package/dist/chunk-KE7KXY5C.cjs.map +1 -0
  349. package/dist/chunk-KICZTIZL.cjs +133 -0
  350. package/dist/chunk-KICZTIZL.cjs.map +1 -0
  351. package/dist/chunk-KJ22KE56.cjs +19 -0
  352. package/dist/chunk-KJ22KE56.cjs.map +1 -0
  353. package/dist/chunk-KUKYJZIU.cjs +179 -0
  354. package/dist/chunk-KUKYJZIU.cjs.map +1 -0
  355. package/dist/chunk-L3V3BYVS.cjs +15 -0
  356. package/dist/chunk-L3V3BYVS.cjs.map +1 -0
  357. package/dist/chunk-LNWO23PU.cjs +131 -0
  358. package/dist/chunk-LNWO23PU.cjs.map +1 -0
  359. package/dist/chunk-LPQVXTKV.js +36 -0
  360. package/dist/chunk-LPQVXTKV.js.map +1 -0
  361. package/dist/chunk-LZL2KD4P.cjs +207 -0
  362. package/dist/chunk-LZL2KD4P.cjs.map +1 -0
  363. package/dist/chunk-M24NCWBU.js +239 -0
  364. package/dist/chunk-M24NCWBU.js.map +1 -0
  365. package/dist/chunk-M7EEQPE7.js +137 -0
  366. package/dist/chunk-M7EEQPE7.js.map +1 -0
  367. package/dist/chunk-MDUSUJWY.cjs +31 -0
  368. package/dist/chunk-MDUSUJWY.cjs.map +1 -0
  369. package/dist/chunk-MGZE2QEM.cjs +51 -0
  370. package/dist/chunk-MGZE2QEM.cjs.map +1 -0
  371. package/dist/chunk-MILTPAF6.js +255 -0
  372. package/dist/chunk-MILTPAF6.js.map +1 -0
  373. package/dist/chunk-MQ6VGG62.js +113 -0
  374. package/dist/chunk-MQ6VGG62.js.map +1 -0
  375. package/dist/chunk-MYF2PDTU.js +137 -0
  376. package/dist/chunk-MYF2PDTU.js.map +1 -0
  377. package/dist/chunk-MZIU27UY.js +133 -0
  378. package/dist/chunk-MZIU27UY.js.map +1 -0
  379. package/dist/chunk-N7WQ53US.js +211 -0
  380. package/dist/chunk-N7WQ53US.js.map +1 -0
  381. package/dist/chunk-NBZC6LOB.cjs +43 -0
  382. package/dist/chunk-NBZC6LOB.cjs.map +1 -0
  383. package/dist/chunk-NH7NRRII.js +167 -0
  384. package/dist/chunk-NH7NRRII.js.map +1 -0
  385. package/dist/chunk-NLJGNPNN.js +284 -0
  386. package/dist/chunk-NLJGNPNN.js.map +1 -0
  387. package/dist/chunk-NNSNANNY.cjs +224 -0
  388. package/dist/chunk-NNSNANNY.cjs.map +1 -0
  389. package/dist/chunk-NPKE2IX6.js +154 -0
  390. package/dist/chunk-NPKE2IX6.js.map +1 -0
  391. package/dist/chunk-NRXK42LO.js +12 -0
  392. package/dist/chunk-NRXK42LO.js.map +1 -0
  393. package/dist/chunk-O432BDEO.js +160 -0
  394. package/dist/chunk-O432BDEO.js.map +1 -0
  395. package/dist/chunk-O4MKOSU2.js +29 -0
  396. package/dist/chunk-O4MKOSU2.js.map +1 -0
  397. package/dist/chunk-O5IO7TCO.cjs +4 -0
  398. package/dist/chunk-O5IO7TCO.cjs.map +1 -0
  399. package/dist/chunk-OL53XYHF.js +17 -0
  400. package/dist/chunk-OL53XYHF.js.map +1 -0
  401. package/dist/chunk-ORCXPDDG.js +3 -0
  402. package/dist/chunk-ORCXPDDG.js.map +1 -0
  403. package/dist/chunk-ORFHF6PT.cjs +172 -0
  404. package/dist/chunk-ORFHF6PT.cjs.map +1 -0
  405. package/dist/chunk-ORPYY2MO.cjs +124 -0
  406. package/dist/chunk-ORPYY2MO.cjs.map +1 -0
  407. package/dist/chunk-OUOEQZHY.cjs +27 -0
  408. package/dist/chunk-OUOEQZHY.cjs.map +1 -0
  409. package/dist/chunk-PBXYU4EV.cjs +121 -0
  410. package/dist/chunk-PBXYU4EV.cjs.map +1 -0
  411. package/dist/chunk-PH3WGR5P.cjs +82 -0
  412. package/dist/chunk-PH3WGR5P.cjs.map +1 -0
  413. package/dist/chunk-POZZY3D5.cjs +135 -0
  414. package/dist/chunk-POZZY3D5.cjs.map +1 -0
  415. package/dist/chunk-PPLR2DNC.cjs +41 -0
  416. package/dist/chunk-PPLR2DNC.cjs.map +1 -0
  417. package/dist/chunk-PQWQ5K6J.js +15 -0
  418. package/dist/chunk-PQWQ5K6J.js.map +1 -0
  419. package/dist/chunk-PRDWJ4AR.js +215 -0
  420. package/dist/chunk-PRDWJ4AR.js.map +1 -0
  421. package/dist/chunk-PRJSEZ5F.cjs +285 -0
  422. package/dist/chunk-PRJSEZ5F.cjs.map +1 -0
  423. package/dist/chunk-PVWPZYTR.js +830 -0
  424. package/dist/chunk-PVWPZYTR.js.map +1 -0
  425. package/dist/chunk-PYRMH34E.js +49 -0
  426. package/dist/chunk-PYRMH34E.js.map +1 -0
  427. package/dist/chunk-PZIAL4OP.cjs +524 -0
  428. package/dist/chunk-PZIAL4OP.cjs.map +1 -0
  429. package/dist/chunk-QFFC2DKK.js +56 -0
  430. package/dist/chunk-QFFC2DKK.js.map +1 -0
  431. package/dist/chunk-R55HE5C5.js +81 -0
  432. package/dist/chunk-R55HE5C5.js.map +1 -0
  433. package/dist/chunk-RA3P63XW.cjs +65 -0
  434. package/dist/chunk-RA3P63XW.cjs.map +1 -0
  435. package/dist/chunk-RES2GOQQ.js +139 -0
  436. package/dist/chunk-RES2GOQQ.js.map +1 -0
  437. package/dist/chunk-RGANGU7X.js +24 -0
  438. package/dist/chunk-RGANGU7X.js.map +1 -0
  439. package/dist/chunk-RID7CYGD.js +344 -0
  440. package/dist/chunk-RID7CYGD.js.map +1 -0
  441. package/dist/chunk-RM4QWJS3.js +200 -0
  442. package/dist/chunk-RM4QWJS3.js.map +1 -0
  443. package/dist/chunk-RNHIDZLE.cjs +103 -0
  444. package/dist/chunk-RNHIDZLE.cjs.map +1 -0
  445. package/dist/chunk-RNPFSVFN.js +24 -0
  446. package/dist/chunk-RNPFSVFN.js.map +1 -0
  447. package/dist/chunk-RR7BWUVP.cjs +58 -0
  448. package/dist/chunk-RR7BWUVP.cjs.map +1 -0
  449. package/dist/chunk-RXDRYWVD.cjs +21 -0
  450. package/dist/chunk-RXDRYWVD.cjs.map +1 -0
  451. package/dist/chunk-S3TRSECD.cjs +4 -0
  452. package/dist/chunk-S3TRSECD.cjs.map +1 -0
  453. package/dist/chunk-SCPHSBBU.cjs +83 -0
  454. package/dist/chunk-SCPHSBBU.cjs.map +1 -0
  455. package/dist/chunk-SKI33QNW.js +133 -0
  456. package/dist/chunk-SKI33QNW.js.map +1 -0
  457. package/dist/chunk-T6IXZZBQ.cjs +83 -0
  458. package/dist/chunk-T6IXZZBQ.cjs.map +1 -0
  459. package/dist/chunk-T6YELZPJ.cjs +90 -0
  460. package/dist/chunk-T6YELZPJ.cjs.map +1 -0
  461. package/dist/chunk-TECFGOV2.js +222 -0
  462. package/dist/chunk-TECFGOV2.js.map +1 -0
  463. package/dist/chunk-TJ66S5K6.js +3 -0
  464. package/dist/chunk-TJ66S5K6.js.map +1 -0
  465. package/dist/chunk-TVRCOKJQ.cjs +106 -0
  466. package/dist/chunk-TVRCOKJQ.cjs.map +1 -0
  467. package/dist/chunk-TXTRTTG7.cjs +51 -0
  468. package/dist/chunk-TXTRTTG7.cjs.map +1 -0
  469. package/dist/chunk-TZKZ2LUF.cjs +140 -0
  470. package/dist/chunk-TZKZ2LUF.cjs.map +1 -0
  471. package/dist/chunk-UCYAHLGM.js +142 -0
  472. package/dist/chunk-UCYAHLGM.js.map +1 -0
  473. package/dist/chunk-UH2YXQ2B.cjs +166 -0
  474. package/dist/chunk-UH2YXQ2B.cjs.map +1 -0
  475. package/dist/chunk-UWVVEB2N.js +55 -0
  476. package/dist/chunk-UWVVEB2N.js.map +1 -0
  477. package/dist/chunk-VBZZ4CMM.cjs +71 -0
  478. package/dist/chunk-VBZZ4CMM.cjs.map +1 -0
  479. package/dist/chunk-VE3EM4K2.cjs +57 -0
  480. package/dist/chunk-VE3EM4K2.cjs.map +1 -0
  481. package/dist/chunk-VNDOT3NK.cjs +426 -0
  482. package/dist/chunk-VNDOT3NK.cjs.map +1 -0
  483. package/dist/chunk-VXHFR5MV.js +3 -0
  484. package/dist/chunk-VXHFR5MV.js.map +1 -0
  485. package/dist/chunk-W2Q4OWHX.cjs +204 -0
  486. package/dist/chunk-W2Q4OWHX.cjs.map +1 -0
  487. package/dist/chunk-WEGL4S52.js +450 -0
  488. package/dist/chunk-WEGL4S52.js.map +1 -0
  489. package/dist/chunk-WHEXTDPV.js +41 -0
  490. package/dist/chunk-WHEXTDPV.js.map +1 -0
  491. package/dist/chunk-WT72KW5M.cjs +347 -0
  492. package/dist/chunk-WT72KW5M.cjs.map +1 -0
  493. package/dist/chunk-WVO2EKE6.cjs +101 -0
  494. package/dist/chunk-WVO2EKE6.cjs.map +1 -0
  495. package/dist/chunk-WXADO5TS.cjs +124 -0
  496. package/dist/chunk-WXADO5TS.cjs.map +1 -0
  497. package/dist/chunk-X36ZGYTF.js +281 -0
  498. package/dist/chunk-X36ZGYTF.js.map +1 -0
  499. package/dist/chunk-XBBEQLMY.cjs +214 -0
  500. package/dist/chunk-XBBEQLMY.cjs.map +1 -0
  501. package/dist/chunk-XCZZVRBY.cjs +2030 -0
  502. package/dist/chunk-XCZZVRBY.cjs.map +1 -0
  503. package/dist/chunk-XJXQG34J.js +77 -0
  504. package/dist/chunk-XJXQG34J.js.map +1 -0
  505. package/dist/chunk-XMBOZ73D.js +92 -0
  506. package/dist/chunk-XMBOZ73D.js.map +1 -0
  507. package/dist/chunk-XZYKPGSK.cjs +453 -0
  508. package/dist/chunk-XZYKPGSK.cjs.map +1 -0
  509. package/dist/chunk-YCZN4FWI.js +42 -0
  510. package/dist/chunk-YCZN4FWI.js.map +1 -0
  511. package/dist/chunk-YHXE274U.js +129 -0
  512. package/dist/chunk-YHXE274U.js.map +1 -0
  513. package/dist/chunk-YLGTDBB2.cjs +43 -0
  514. package/dist/chunk-YLGTDBB2.cjs.map +1 -0
  515. package/dist/chunk-YT42J4VQ.js +361 -0
  516. package/dist/chunk-YT42J4VQ.js.map +1 -0
  517. package/dist/chunk-YT6N44Z3.js +99 -0
  518. package/dist/chunk-YT6N44Z3.js.map +1 -0
  519. package/dist/chunk-YXC7QHNT.cjs +385 -0
  520. package/dist/chunk-YXC7QHNT.cjs.map +1 -0
  521. package/dist/chunk-ZFVSEO5Z.cjs +136 -0
  522. package/dist/chunk-ZFVSEO5Z.cjs.map +1 -0
  523. package/dist/chunk-ZLCVKYHY.js +344 -0
  524. package/dist/chunk-ZLCVKYHY.js.map +1 -0
  525. package/dist/chunk-ZNTEM7F2.js +184 -0
  526. package/dist/chunk-ZNTEM7F2.js.map +1 -0
  527. package/dist/chunk-ZT36VWIA.js +136 -0
  528. package/dist/chunk-ZT36VWIA.js.map +1 -0
  529. package/dist/chunk-ZWOEKDNI.js +281 -0
  530. package/dist/chunk-ZWOEKDNI.js.map +1 -0
  531. package/dist/code-view.cjs +13 -0
  532. package/dist/code-view.cjs.map +1 -0
  533. package/dist/code-view.d.cts +44 -0
  534. package/dist/code-view.d.ts +44 -0
  535. package/dist/code-view.js +4 -0
  536. package/dist/code-view.js.map +1 -0
  537. package/dist/color-picker.cjs +16 -0
  538. package/dist/color-picker.cjs.map +1 -0
  539. package/dist/color-picker.d.cts +20 -0
  540. package/dist/color-picker.d.ts +20 -0
  541. package/dist/color-picker.js +7 -0
  542. package/dist/color-picker.js.map +1 -0
  543. package/dist/command.cjs +21 -0
  544. package/dist/command.cjs.map +1 -0
  545. package/dist/command.d.cts +78 -0
  546. package/dist/command.d.ts +78 -0
  547. package/dist/command.js +8 -0
  548. package/dist/command.js.map +1 -0
  549. package/dist/composer.cjs +14 -0
  550. package/dist/composer.cjs.map +1 -0
  551. package/dist/composer.d.cts +17 -0
  552. package/dist/composer.d.ts +17 -0
  553. package/dist/composer.js +5 -0
  554. package/dist/composer.js.map +1 -0
  555. package/dist/content-renderer.cjs +23 -0
  556. package/dist/content-renderer.cjs.map +1 -0
  557. package/dist/content-renderer.d.cts +27 -0
  558. package/dist/content-renderer.d.ts +27 -0
  559. package/dist/content-renderer.js +6 -0
  560. package/dist/content-renderer.js.map +1 -0
  561. package/dist/context-menu.cjs +21 -0
  562. package/dist/context-menu.cjs.map +1 -0
  563. package/dist/context-menu.d.cts +91 -0
  564. package/dist/context-menu.d.ts +91 -0
  565. package/dist/context-menu.js +8 -0
  566. package/dist/context-menu.js.map +1 -0
  567. package/dist/date-picker.cjs +19 -0
  568. package/dist/date-picker.cjs.map +1 -0
  569. package/dist/date-picker.d.cts +26 -0
  570. package/dist/date-picker.d.ts +26 -0
  571. package/dist/date-picker.js +10 -0
  572. package/dist/date-picker.js.map +1 -0
  573. package/dist/drawer.cjs +21 -0
  574. package/dist/drawer.cjs.map +1 -0
  575. package/dist/drawer.d.cts +116 -0
  576. package/dist/drawer.d.ts +116 -0
  577. package/dist/drawer.js +8 -0
  578. package/dist/drawer.js.map +1 -0
  579. package/dist/dropdown.cjs +22 -0
  580. package/dist/dropdown.cjs.map +1 -0
  581. package/dist/dropdown.d.cts +67 -0
  582. package/dist/dropdown.d.ts +67 -0
  583. package/dist/dropdown.js +9 -0
  584. package/dist/dropdown.js.map +1 -0
  585. package/dist/editor.cjs +29 -0
  586. package/dist/editor.cjs.map +1 -0
  587. package/dist/editor.d.cts +153 -0
  588. package/dist/editor.d.ts +153 -0
  589. package/dist/editor.js +16 -0
  590. package/dist/editor.js.map +1 -0
  591. package/dist/emoji-select.cjs +15 -0
  592. package/dist/emoji-select.cjs.map +1 -0
  593. package/dist/emoji-select.d.cts +13 -0
  594. package/dist/emoji-select.d.ts +13 -0
  595. package/dist/emoji-select.js +6 -0
  596. package/dist/emoji-select.js.map +1 -0
  597. package/dist/emoji.cjs +14 -0
  598. package/dist/emoji.cjs.map +1 -0
  599. package/dist/emoji.d.cts +2 -0
  600. package/dist/emoji.d.ts +2 -0
  601. package/dist/emoji.js +5 -0
  602. package/dist/emoji.js.map +1 -0
  603. package/dist/extensions-6PVd3-vB.d.cts +38 -0
  604. package/dist/extensions-6PVd3-vB.d.ts +38 -0
  605. package/dist/eyebrow.cjs +13 -0
  606. package/dist/eyebrow.cjs.map +1 -0
  607. package/dist/eyebrow.d.cts +33 -0
  608. package/dist/eyebrow.d.ts +33 -0
  609. package/dist/eyebrow.js +4 -0
  610. package/dist/eyebrow.js.map +1 -0
  611. package/dist/faux-client.cjs +13 -0
  612. package/dist/faux-client.cjs.map +1 -0
  613. package/dist/faux-client.d.cts +39 -0
  614. package/dist/faux-client.d.ts +39 -0
  615. package/dist/faux-client.js +4 -0
  616. package/dist/faux-client.js.map +1 -0
  617. package/dist/field.cjs +14 -0
  618. package/dist/field.cjs.map +1 -0
  619. package/dist/field.d.cts +18 -0
  620. package/dist/field.d.ts +18 -0
  621. package/dist/field.js +5 -0
  622. package/dist/field.js.map +1 -0
  623. package/dist/file-browser.cjs +18 -0
  624. package/dist/file-browser.cjs.map +1 -0
  625. package/dist/file-browser.d.cts +269 -0
  626. package/dist/file-browser.d.ts +269 -0
  627. package/dist/file-browser.js +5 -0
  628. package/dist/file-browser.js.map +1 -0
  629. package/dist/file-upload.cjs +17 -0
  630. package/dist/file-upload.cjs.map +1 -0
  631. package/dist/file-upload.d.cts +48 -0
  632. package/dist/file-upload.d.ts +48 -0
  633. package/dist/file-upload.js +4 -0
  634. package/dist/file-upload.js.map +1 -0
  635. package/dist/heading.cjs +13 -0
  636. package/dist/heading.cjs.map +1 -0
  637. package/dist/heading.d.cts +25 -0
  638. package/dist/heading.d.ts +25 -0
  639. package/dist/heading.js +4 -0
  640. package/dist/heading.js.map +1 -0
  641. package/dist/icon.cjs +34 -0
  642. package/dist/icon.cjs.map +1 -0
  643. package/dist/icon.d.cts +51 -0
  644. package/dist/icon.d.ts +51 -0
  645. package/dist/icon.js +5 -0
  646. package/dist/icon.js.map +1 -0
  647. package/dist/image-viewer.cjs +14 -0
  648. package/dist/image-viewer.cjs.map +1 -0
  649. package/dist/image-viewer.d.cts +19 -0
  650. package/dist/image-viewer.d.ts +19 -0
  651. package/dist/image-viewer.js +5 -0
  652. package/dist/image-viewer.js.map +1 -0
  653. package/dist/index-B71wa9AW.d.cts +79 -0
  654. package/dist/index-BktWpyRH.d.cts +53 -0
  655. package/dist/index-BktWpyRH.d.ts +53 -0
  656. package/dist/index-bIntFOl5.d.ts +79 -0
  657. package/dist/index-list.cjs +13 -0
  658. package/dist/index-list.cjs.map +1 -0
  659. package/dist/index-list.d.cts +49 -0
  660. package/dist/index-list.d.ts +49 -0
  661. package/dist/index-list.js +4 -0
  662. package/dist/index-list.js.map +1 -0
  663. package/dist/index.cjs +666 -16826
  664. package/dist/index.cjs.map +1 -1
  665. package/dist/index.d.cts +93 -4078
  666. package/dist/index.d.ts +93 -4078
  667. package/dist/index.js +103 -16708
  668. package/dist/index.js.map +1 -1
  669. package/dist/input-tag.cjs +28 -0
  670. package/dist/input-tag.cjs.map +1 -0
  671. package/dist/input-tag.d.cts +134 -0
  672. package/dist/input-tag.d.ts +134 -0
  673. package/dist/input-tag.js +3 -0
  674. package/dist/input-tag.js.map +1 -0
  675. package/dist/input.cjs +20 -0
  676. package/dist/input.cjs.map +1 -0
  677. package/dist/input.d.cts +32 -0
  678. package/dist/input.d.ts +32 -0
  679. package/dist/input.js +11 -0
  680. package/dist/input.js.map +1 -0
  681. package/dist/inputs.cjs +100 -0
  682. package/dist/inputs.cjs.map +1 -0
  683. package/dist/inputs.d.cts +16 -0
  684. package/dist/inputs.d.ts +16 -0
  685. package/dist/inputs.js +27 -0
  686. package/dist/inputs.js.map +1 -0
  687. package/dist/inputs.types-CkWdvN-t.d.cts +44 -0
  688. package/dist/inputs.types-DERzxpe1.d.ts +44 -0
  689. package/dist/kanban.cjs +17 -0
  690. package/dist/kanban.cjs.map +1 -0
  691. package/dist/kanban.d.cts +136 -0
  692. package/dist/kanban.d.ts +136 -0
  693. package/dist/kanban.js +4 -0
  694. package/dist/kanban.js.map +1 -0
  695. package/dist/kbd.cjs +13 -0
  696. package/dist/kbd.cjs.map +1 -0
  697. package/dist/kbd.d.cts +30 -0
  698. package/dist/kbd.d.ts +30 -0
  699. package/dist/kbd.js +4 -0
  700. package/dist/kbd.js.map +1 -0
  701. package/dist/magic-wand.cjs +25 -0
  702. package/dist/magic-wand.cjs.map +1 -0
  703. package/dist/magic-wand.d.cts +62 -0
  704. package/dist/magic-wand.d.ts +62 -0
  705. package/dist/magic-wand.js +16 -0
  706. package/dist/magic-wand.js.map +1 -0
  707. package/dist/marquee.cjs +13 -0
  708. package/dist/marquee.cjs.map +1 -0
  709. package/dist/marquee.d.cts +48 -0
  710. package/dist/marquee.d.ts +48 -0
  711. package/dist/marquee.js +4 -0
  712. package/dist/marquee.js.map +1 -0
  713. package/dist/media-viewer.cjs +18 -0
  714. package/dist/media-viewer.cjs.map +1 -0
  715. package/dist/media-viewer.d.cts +6 -0
  716. package/dist/media-viewer.d.ts +6 -0
  717. package/dist/media-viewer.js +9 -0
  718. package/dist/media-viewer.js.map +1 -0
  719. package/dist/menu.cjs +17 -0
  720. package/dist/menu.cjs.map +1 -0
  721. package/dist/menu.d.cts +60 -0
  722. package/dist/menu.d.ts +60 -0
  723. package/dist/menu.js +4 -0
  724. package/dist/menu.js.map +1 -0
  725. package/dist/mobile-menu.cjs +26 -0
  726. package/dist/mobile-menu.cjs.map +1 -0
  727. package/dist/mobile-menu.d.cts +60 -0
  728. package/dist/mobile-menu.d.ts +60 -0
  729. package/dist/mobile-menu.js +13 -0
  730. package/dist/mobile-menu.js.map +1 -0
  731. package/dist/modal.cjs +21 -0
  732. package/dist/modal.cjs.map +1 -0
  733. package/dist/modal.d.cts +52 -0
  734. package/dist/modal.d.ts +52 -0
  735. package/dist/modal.js +8 -0
  736. package/dist/modal.js.map +1 -0
  737. package/dist/mode.cjs +37 -0
  738. package/dist/mode.cjs.map +1 -0
  739. package/dist/mode.d.cts +28 -0
  740. package/dist/mode.d.ts +28 -0
  741. package/dist/mode.js +8 -0
  742. package/dist/mode.js.map +1 -0
  743. package/dist/mood-meter.cjs +12 -0
  744. package/dist/mood-meter.cjs.map +1 -0
  745. package/dist/mood-meter.d.cts +67 -0
  746. package/dist/mood-meter.d.ts +67 -0
  747. package/dist/mood-meter.js +3 -0
  748. package/dist/mood-meter.js.map +1 -0
  749. package/dist/multi-switch.cjs +19 -0
  750. package/dist/multi-switch.cjs.map +1 -0
  751. package/dist/multi-switch.d.cts +18 -0
  752. package/dist/multi-switch.d.ts +18 -0
  753. package/dist/multi-switch.js +10 -0
  754. package/dist/multi-switch.js.map +1 -0
  755. package/dist/navbar.cjs +17 -0
  756. package/dist/navbar.cjs.map +1 -0
  757. package/dist/navbar.d.cts +60 -0
  758. package/dist/navbar.d.ts +60 -0
  759. package/dist/navbar.js +4 -0
  760. package/dist/navbar.js.map +1 -0
  761. package/dist/otp-input.cjs +16 -0
  762. package/dist/otp-input.cjs.map +1 -0
  763. package/dist/otp-input.d.cts +18 -0
  764. package/dist/otp-input.d.ts +18 -0
  765. package/dist/otp-input.js +7 -0
  766. package/dist/otp-input.js.map +1 -0
  767. package/dist/pagination.cjs +13 -0
  768. package/dist/pagination.cjs.map +1 -0
  769. package/dist/pagination.d.cts +16 -0
  770. package/dist/pagination.d.ts +16 -0
  771. package/dist/pagination.js +4 -0
  772. package/dist/pagination.js.map +1 -0
  773. package/dist/pdf-viewer.cjs +13 -0
  774. package/dist/pdf-viewer.cjs.map +1 -0
  775. package/dist/pdf-viewer.d.cts +16 -0
  776. package/dist/pdf-viewer.d.ts +16 -0
  777. package/dist/pdf-viewer.js +4 -0
  778. package/dist/pdf-viewer.js.map +1 -0
  779. package/dist/pillbox.cjs +14 -0
  780. package/dist/pillbox.cjs.map +1 -0
  781. package/dist/pillbox.d.cts +15 -0
  782. package/dist/pillbox.d.ts +15 -0
  783. package/dist/pillbox.js +5 -0
  784. package/dist/pillbox.js.map +1 -0
  785. package/dist/popover.cjs +21 -0
  786. package/dist/popover.cjs.map +1 -0
  787. package/dist/popover.d.cts +71 -0
  788. package/dist/popover.d.ts +71 -0
  789. package/dist/popover.js +8 -0
  790. package/dist/popover.js.map +1 -0
  791. package/dist/portal.cjs +12 -0
  792. package/dist/portal.cjs.map +1 -0
  793. package/dist/portal.d.cts +10 -0
  794. package/dist/portal.d.ts +10 -0
  795. package/dist/portal.js +3 -0
  796. package/dist/portal.js.map +1 -0
  797. package/dist/profile.cjs +14 -0
  798. package/dist/profile.cjs.map +1 -0
  799. package/dist/profile.d.cts +16 -0
  800. package/dist/profile.d.ts +16 -0
  801. package/dist/profile.js +5 -0
  802. package/dist/profile.js.map +1 -0
  803. package/dist/progress.cjs +13 -0
  804. package/dist/progress.cjs.map +1 -0
  805. package/dist/progress.d.cts +25 -0
  806. package/dist/progress.d.ts +25 -0
  807. package/dist/progress.js +4 -0
  808. package/dist/progress.js.map +1 -0
  809. package/dist/prompt-input.cjs +20 -0
  810. package/dist/prompt-input.cjs.map +1 -0
  811. package/dist/prompt-input.d.cts +76 -0
  812. package/dist/prompt-input.d.ts +76 -0
  813. package/dist/prompt-input.js +11 -0
  814. package/dist/prompt-input.js.map +1 -0
  815. package/dist/pull-quote.cjs +13 -0
  816. package/dist/pull-quote.cjs.map +1 -0
  817. package/dist/pull-quote.d.cts +33 -0
  818. package/dist/pull-quote.d.ts +33 -0
  819. package/dist/pull-quote.js +4 -0
  820. package/dist/pull-quote.js.map +1 -0
  821. package/dist/radio-group.cjs +19 -0
  822. package/dist/radio-group.cjs.map +1 -0
  823. package/dist/radio-group.d.cts +18 -0
  824. package/dist/radio-group.d.ts +18 -0
  825. package/dist/radio-group.js +10 -0
  826. package/dist/radio-group.js.map +1 -0
  827. package/dist/reason-tag.cjs +22 -0
  828. package/dist/reason-tag.cjs.map +1 -0
  829. package/dist/reason-tag.d.cts +57 -0
  830. package/dist/reason-tag.d.ts +57 -0
  831. package/dist/reason-tag.js +13 -0
  832. package/dist/reason-tag.js.map +1 -0
  833. package/dist/select.cjs +23 -0
  834. package/dist/select.cjs.map +1 -0
  835. package/dist/select.d.cts +41 -0
  836. package/dist/select.d.ts +41 -0
  837. package/dist/select.js +14 -0
  838. package/dist/select.js.map +1 -0
  839. package/dist/separator.cjs +13 -0
  840. package/dist/separator.cjs.map +1 -0
  841. package/dist/separator.d.cts +14 -0
  842. package/dist/separator.d.ts +14 -0
  843. package/dist/separator.js +4 -0
  844. package/dist/separator.js.map +1 -0
  845. package/dist/sidebar.cjs +25 -0
  846. package/dist/sidebar.cjs.map +1 -0
  847. package/dist/sidebar.d.cts +80 -0
  848. package/dist/sidebar.d.ts +80 -0
  849. package/dist/sidebar.js +12 -0
  850. package/dist/sidebar.js.map +1 -0
  851. package/dist/skeleton.cjs +13 -0
  852. package/dist/skeleton.cjs.map +1 -0
  853. package/dist/skeleton.d.cts +16 -0
  854. package/dist/skeleton.d.ts +16 -0
  855. package/dist/skeleton.js +4 -0
  856. package/dist/skeleton.js.map +1 -0
  857. package/dist/slider.cjs +19 -0
  858. package/dist/slider.cjs.map +1 -0
  859. package/dist/slider.d.cts +34 -0
  860. package/dist/slider.d.ts +34 -0
  861. package/dist/slider.js +10 -0
  862. package/dist/slider.js.map +1 -0
  863. package/dist/stat.cjs +17 -0
  864. package/dist/stat.cjs.map +1 -0
  865. package/dist/stat.d.cts +29 -0
  866. package/dist/stat.d.ts +29 -0
  867. package/dist/stat.js +4 -0
  868. package/dist/stat.js.map +1 -0
  869. package/dist/sticky-note.cjs +13 -0
  870. package/dist/sticky-note.cjs.map +1 -0
  871. package/dist/sticky-note.d.cts +53 -0
  872. package/dist/sticky-note.d.ts +53 -0
  873. package/dist/sticky-note.js +4 -0
  874. package/dist/sticky-note.js.map +1 -0
  875. package/dist/switch.cjs +17 -0
  876. package/dist/switch.cjs.map +1 -0
  877. package/dist/switch.d.cts +16 -0
  878. package/dist/switch.d.ts +16 -0
  879. package/dist/switch.js +8 -0
  880. package/dist/switch.js.map +1 -0
  881. package/dist/table.cjs +50 -0
  882. package/dist/table.cjs.map +1 -0
  883. package/dist/table.d.cts +89 -0
  884. package/dist/table.d.ts +89 -0
  885. package/dist/table.js +5 -0
  886. package/dist/table.js.map +1 -0
  887. package/dist/tabs.cjs +18 -0
  888. package/dist/tabs.cjs.map +1 -0
  889. package/dist/tabs.d.cts +68 -0
  890. package/dist/tabs.d.ts +68 -0
  891. package/dist/tabs.js +5 -0
  892. package/dist/tabs.js.map +1 -0
  893. package/dist/text.cjs +13 -0
  894. package/dist/text.cjs.map +1 -0
  895. package/dist/text.d.cts +17 -0
  896. package/dist/text.d.ts +17 -0
  897. package/dist/text.js +4 -0
  898. package/dist/text.js.map +1 -0
  899. package/dist/textarea.cjs +20 -0
  900. package/dist/textarea.cjs.map +1 -0
  901. package/dist/textarea.d.cts +15 -0
  902. package/dist/textarea.d.ts +15 -0
  903. package/dist/textarea.js +11 -0
  904. package/dist/textarea.js.map +1 -0
  905. package/dist/time-grid.cjs +13 -0
  906. package/dist/time-grid.cjs.map +1 -0
  907. package/dist/time-grid.d.cts +53 -0
  908. package/dist/time-grid.d.ts +53 -0
  909. package/dist/time-grid.js +4 -0
  910. package/dist/time-grid.js.map +1 -0
  911. package/dist/time-picker.cjs +16 -0
  912. package/dist/time-picker.cjs.map +1 -0
  913. package/dist/time-picker.d.cts +19 -0
  914. package/dist/time-picker.d.ts +19 -0
  915. package/dist/time-picker.js +7 -0
  916. package/dist/time-picker.js.map +1 -0
  917. package/dist/timeline.cjs +21 -0
  918. package/dist/timeline.cjs.map +1 -0
  919. package/dist/timeline.d.cts +10 -0
  920. package/dist/timeline.d.ts +10 -0
  921. package/dist/timeline.js +4 -0
  922. package/dist/timeline.js.map +1 -0
  923. package/dist/toast.cjs +18 -0
  924. package/dist/toast.cjs.map +1 -0
  925. package/dist/toast.d.cts +54 -0
  926. package/dist/toast.d.ts +54 -0
  927. package/dist/toast.js +5 -0
  928. package/dist/toast.js.map +1 -0
  929. package/dist/tooltip.cjs +15 -0
  930. package/dist/tooltip.cjs.map +1 -0
  931. package/dist/tooltip.d.cts +16 -0
  932. package/dist/tooltip.d.ts +16 -0
  933. package/dist/tooltip.js +6 -0
  934. package/dist/tooltip.js.map +1 -0
  935. package/dist/tree-nav.cjs +17 -0
  936. package/dist/tree-nav.cjs.map +1 -0
  937. package/dist/tree-nav.d.cts +114 -0
  938. package/dist/tree-nav.d.ts +114 -0
  939. package/dist/tree-nav.js +4 -0
  940. package/dist/tree-nav.js.map +1 -0
  941. package/dist/types-8Sv0rCjw.d.cts +58 -0
  942. package/dist/types-8Sv0rCjw.d.ts +58 -0
  943. package/dist/video-viewer.cjs +13 -0
  944. package/dist/video-viewer.cjs.map +1 -0
  945. package/dist/video-viewer.d.cts +14 -0
  946. package/dist/video-viewer.d.ts +14 -0
  947. package/dist/video-viewer.js +4 -0
  948. package/dist/video-viewer.js.map +1 -0
  949. package/package.json +845 -5
@@ -0,0 +1,103 @@
1
+ 'use strict';
2
+
3
+ var chunk3Z6ALUWP_cjs = require('./chunk-3Z6ALUWP.cjs');
4
+ var react = require('react');
5
+ var fancyFileCommons = require('@particle-academy/fancy-file-commons');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+
8
+ function subscribeDark(callback) {
9
+ const mq = window.matchMedia("(prefers-color-scheme: dark)");
10
+ mq.addEventListener("change", callback);
11
+ const observer = new MutationObserver(callback);
12
+ observer.observe(document.documentElement, {
13
+ attributes: true,
14
+ attributeFilter: ["class"]
15
+ });
16
+ return () => {
17
+ mq.removeEventListener("change", callback);
18
+ observer.disconnect();
19
+ };
20
+ }
21
+ function darkSnapshot() {
22
+ return document.documentElement.classList.contains("dark") || window.matchMedia("(prefers-color-scheme: dark)").matches;
23
+ }
24
+ function useIsDark() {
25
+ return react.useSyncExternalStore(subscribeDark, darkSnapshot, () => false);
26
+ }
27
+ var TEXT_METRICS = "m-0 p-3 font-mono text-xs leading-relaxed";
28
+ function CodeView({
29
+ value,
30
+ onChange,
31
+ language = "plaintext",
32
+ readOnly = false,
33
+ placeholder,
34
+ minHeight = 120,
35
+ maxHeight,
36
+ className
37
+ }) {
38
+ const textareaRef = react.useRef(null);
39
+ const isDark = useIsDark();
40
+ const colors = isDark ? fancyFileCommons.DARK_COLORS : fancyFileCommons.LIGHT_COLORS;
41
+ const highlighted = react.useMemo(() => {
42
+ const tokens = language === "html" ? fancyFileCommons.tokenizeHtml(value) : [];
43
+ return fancyFileCommons.highlightCode(value, tokens, colors);
44
+ }, [value, language, colors]);
45
+ react.useEffect(() => {
46
+ const el = textareaRef.current;
47
+ if (!el) return;
48
+ el.style.height = "auto";
49
+ el.style.height = `${el.scrollHeight}px`;
50
+ }, [value]);
51
+ const editable = !readOnly && !!onChange;
52
+ return /* @__PURE__ */ jsxRuntime.jsx(
53
+ "div",
54
+ {
55
+ "data-react-fancy-code-view": "",
56
+ className: chunk3Z6ALUWP_cjs.cn("relative overflow-auto", className),
57
+ style: { backgroundColor: colors.background, color: colors.foreground, minHeight, maxHeight },
58
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative min-h-full", children: [
59
+ /* @__PURE__ */ jsxRuntime.jsx(
60
+ "pre",
61
+ {
62
+ "aria-hidden": "true",
63
+ className: chunk3Z6ALUWP_cjs.cn("pointer-events-none absolute inset-0 overflow-hidden border-none", TEXT_METRICS),
64
+ style: { whiteSpace: "pre-wrap", overflowWrap: "break-word" },
65
+ children: /* @__PURE__ */ jsxRuntime.jsx("code", { dangerouslySetInnerHTML: { __html: highlighted + "\n" } })
66
+ }
67
+ ),
68
+ placeholder && value.length === 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: chunk3Z6ALUWP_cjs.cn("pointer-events-none absolute left-0 top-0 opacity-40", TEXT_METRICS), children: placeholder }),
69
+ /* @__PURE__ */ jsxRuntime.jsx(
70
+ "textarea",
71
+ {
72
+ ref: textareaRef,
73
+ "data-react-fancy-code-view-input": "",
74
+ value,
75
+ onChange: editable ? (e) => onChange(e.target.value) : void 0,
76
+ readOnly: !editable,
77
+ spellCheck: false,
78
+ autoComplete: "off",
79
+ autoCorrect: "off",
80
+ autoCapitalize: "off",
81
+ "aria-label": placeholder,
82
+ className: chunk3Z6ALUWP_cjs.cn(
83
+ "relative block w-full resize-none border-none bg-transparent text-transparent outline-none",
84
+ TEXT_METRICS
85
+ ),
86
+ style: {
87
+ caretColor: colors.cursorColor,
88
+ overflow: "hidden",
89
+ whiteSpace: "pre-wrap",
90
+ overflowWrap: "break-word",
91
+ minHeight
92
+ }
93
+ }
94
+ )
95
+ ] })
96
+ }
97
+ );
98
+ }
99
+ CodeView.displayName = "CodeView";
100
+
101
+ exports.CodeView = CodeView;
102
+ //# sourceMappingURL=chunk-RNHIDZLE.cjs.map
103
+ //# sourceMappingURL=chunk-RNHIDZLE.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/CodeView/CodeView.tsx"],"names":["useSyncExternalStore","useRef","DARK_COLORS","LIGHT_COLORS","useMemo","tokenizeHtml","highlightCode","useEffect","jsx","cn","jsxs"],"mappings":"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","file":"chunk-RNHIDZLE.cjs","sourcesContent":["import { useEffect, useMemo, useRef, useSyncExternalStore } from \"react\";\nimport {\n highlightCode,\n tokenizeHtml,\n LIGHT_COLORS,\n DARK_COLORS,\n type ThemeColors,\n} from \"@particle-academy/fancy-file-commons\";\nimport { cn } from \"../../utils/cn\";\nimport type { CodeViewProps } from \"./CodeView.types\";\n\n// ── Dark-mode detection ────────────────────────────────────────────────────\n// The highlight palette is baked in as inline colors, so we resolve light/dark\n// ourselves. Follow BOTH signals so we match whatever drives the surrounding\n// `dark:` Tailwind variants: the `.dark` class (class strategy) OR the\n// prefers-color-scheme media query (media strategy).\n\nfunction subscribeDark(callback: () => void): () => void {\n const mq = window.matchMedia(\"(prefers-color-scheme: dark)\");\n mq.addEventListener(\"change\", callback);\n const observer = new MutationObserver(callback);\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: [\"class\"],\n });\n return () => {\n mq.removeEventListener(\"change\", callback);\n observer.disconnect();\n };\n}\n\nfunction darkSnapshot(): boolean {\n return (\n document.documentElement.classList.contains(\"dark\") ||\n window.matchMedia(\"(prefers-color-scheme: dark)\").matches\n );\n}\n\nfunction useIsDark(): boolean {\n return useSyncExternalStore(subscribeDark, darkSnapshot, () => false);\n}\n\n// Shared text metrics — the overlay and the textarea MUST match exactly (font,\n// size, line-height, padding, wrapping) so the highlighted glyphs sit under the\n// caret. Keep this string identical on both layers.\nconst TEXT_METRICS = \"m-0 p-3 font-mono text-xs leading-relaxed\";\n\n/**\n * A lightweight, syntax-highlighted source view built on the pure highlight\n * primitives in `@particle-academy/fancy-file-commons` — a highlight overlay\n * with a transparent, auto-growing textarea on top; the container scrolls both\n * together. Fills its parent's height (`h-full`) and grows with content down to\n * `minHeight`. Only HTML is highlighted; other languages render as plain text.\n */\nexport function CodeView({\n value,\n onChange,\n language = \"plaintext\",\n readOnly = false,\n placeholder,\n minHeight = 120,\n maxHeight,\n className,\n}: CodeViewProps) {\n const textareaRef = useRef<HTMLTextAreaElement | null>(null);\n const isDark = useIsDark();\n const colors: ThemeColors = isDark ? DARK_COLORS : LIGHT_COLORS;\n\n const highlighted = useMemo(() => {\n const tokens = language === \"html\" ? tokenizeHtml(value) : [];\n return highlightCode(value, tokens, colors);\n }, [value, language, colors]);\n\n // Grow the textarea to its content height so it never scrolls internally —\n // the outer container owns scrolling and moves overlay + textarea in lockstep.\n useEffect(() => {\n const el = textareaRef.current;\n if (!el) return;\n el.style.height = \"auto\";\n el.style.height = `${el.scrollHeight}px`;\n }, [value]);\n\n const editable = !readOnly && !!onChange;\n\n return (\n <div\n data-react-fancy-code-view=\"\"\n // No baked-in height: the consumer picks the fill mechanism — `flex-1`\n // inside a flex column (the Editor source body), or `h-full` when the\n // parent has a definite height. A hard-coded `h-full` here collapses to\n // content height under a flex-computed (indefinite) parent.\n className={cn(\"relative overflow-auto\", className)}\n style={{ backgroundColor: colors.background, color: colors.foreground, minHeight, maxHeight }}\n >\n <div className=\"relative min-h-full\">\n {/* Highlight overlay */}\n <pre\n aria-hidden=\"true\"\n className={cn(\"pointer-events-none absolute inset-0 overflow-hidden border-none\", TEXT_METRICS)}\n style={{ whiteSpace: \"pre-wrap\", overflowWrap: \"break-word\" }}\n >\n <code dangerouslySetInnerHTML={{ __html: highlighted + \"\\n\" }} />\n </pre>\n\n {/* Placeholder */}\n {placeholder && value.length === 0 && (\n <div className={cn(\"pointer-events-none absolute left-0 top-0 opacity-40\", TEXT_METRICS)}>\n {placeholder}\n </div>\n )}\n\n {/* Transparent input layer (caret + selection visible, glyphs from overlay) */}\n <textarea\n ref={textareaRef}\n data-react-fancy-code-view-input=\"\"\n value={value}\n onChange={editable ? (e) => onChange!(e.target.value) : undefined}\n readOnly={!editable}\n spellCheck={false}\n autoComplete=\"off\"\n autoCorrect=\"off\"\n autoCapitalize=\"off\"\n aria-label={placeholder}\n className={cn(\n \"relative block w-full resize-none border-none bg-transparent text-transparent outline-none\",\n TEXT_METRICS,\n )}\n style={{\n caretColor: colors.cursorColor,\n overflow: \"hidden\",\n whiteSpace: \"pre-wrap\",\n overflowWrap: \"break-word\",\n minHeight,\n }}\n />\n </div>\n </div>\n );\n}\n\nCodeView.displayName = \"CodeView\";\n"]}
@@ -0,0 +1,24 @@
1
+ import { useId as useId$1, useRef, useState, useCallback } from 'react';
2
+
3
+ // src/hooks/use-id.ts
4
+ function useId(prefix) {
5
+ const id = useId$1();
6
+ return prefix ? `${prefix}-${id}` : id;
7
+ }
8
+ function useNodeRegistry() {
9
+ const rectsRef = useRef(/* @__PURE__ */ new Map());
10
+ const [version, setVersion] = useState(0);
11
+ const registerNode = useCallback((id, rect) => {
12
+ rectsRef.current.set(id, rect);
13
+ setVersion((v) => v + 1);
14
+ }, []);
15
+ const unregisterNode = useCallback((id) => {
16
+ rectsRef.current.delete(id);
17
+ setVersion((v) => v + 1);
18
+ }, []);
19
+ return { registerNode, unregisterNode, nodeRects: rectsRef.current, version };
20
+ }
21
+
22
+ export { useId, useNodeRegistry };
23
+ //# sourceMappingURL=chunk-RNPFSVFN.js.map
24
+ //# sourceMappingURL=chunk-RNPFSVFN.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/hooks/use-id.ts","../src/hooks/use-node-registry.ts"],"names":["useReactId"],"mappings":";;;AAEO,SAAS,MAAM,MAAA,EAAyB;AAC7C,EAAA,MAAM,KAAKA,OAAA,EAAW;AACtB,EAAA,OAAO,MAAA,GAAS,CAAA,EAAG,MAAM,CAAA,CAAA,EAAI,EAAE,CAAA,CAAA,GAAK,EAAA;AACtC;ACWO,SAAS,eAAA,GAAyC;AACvD,EAAA,MAAM,QAAA,GAAW,MAAA,iBAAO,IAAI,GAAA,EAAuB,CAAA;AACnD,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAI,SAAS,CAAC,CAAA;AAExC,EAAA,MAAM,YAAA,GAAe,WAAA,CAAY,CAAC,EAAA,EAAY,IAAA,KAAmB;AAC/D,IAAA,QAAA,CAAS,OAAA,CAAQ,GAAA,CAAI,EAAA,EAAI,IAAI,CAAA;AAC7B,IAAA,UAAA,CAAW,CAAC,CAAA,KAAM,CAAA,GAAI,CAAC,CAAA;AAAA,EACzB,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,MAAM,cAAA,GAAiB,WAAA,CAAY,CAAC,EAAA,KAAe;AACjD,IAAA,QAAA,CAAS,OAAA,CAAQ,OAAO,EAAE,CAAA;AAC1B,IAAA,UAAA,CAAW,CAAC,CAAA,KAAM,CAAA,GAAI,CAAC,CAAA;AAAA,EACzB,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,OAAO,EAAE,YAAA,EAAc,cAAA,EAAgB,SAAA,EAAW,QAAA,CAAS,SAAS,OAAA,EAAQ;AAC9E","file":"chunk-RNPFSVFN.js","sourcesContent":["import { useId as useReactId } from \"react\";\n\nexport function useId(prefix?: string): string {\n const id = useReactId();\n return prefix ? `${prefix}-${id}` : id;\n}\n","import { useCallback, useRef, useState } from \"react\";\n\nexport interface NodeRect {\n x: number;\n y: number;\n width: number;\n height: number;\n}\n\ninterface UseNodeRegistryReturn {\n registerNode: (id: string, rect: NodeRect) => void;\n unregisterNode: (id: string) => void;\n nodeRects: Map<string, NodeRect>;\n version: number;\n}\n\nexport function useNodeRegistry(): UseNodeRegistryReturn {\n const rectsRef = useRef(new Map<string, NodeRect>());\n const [version, setVersion] = useState(0);\n\n const registerNode = useCallback((id: string, rect: NodeRect) => {\n rectsRef.current.set(id, rect);\n setVersion((v) => v + 1);\n }, []);\n\n const unregisterNode = useCallback((id: string) => {\n rectsRef.current.delete(id);\n setVersion((v) => v + 1);\n }, []);\n\n return { registerNode, unregisterNode, nodeRects: rectsRef.current, version };\n}\n"]}
@@ -0,0 +1,58 @@
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
+ var Separator = react.forwardRef(
8
+ ({ orientation = "horizontal", label, className }, ref) => {
9
+ if (orientation === "vertical") {
10
+ return /* @__PURE__ */ jsxRuntime.jsx(
11
+ "div",
12
+ {
13
+ ref,
14
+ role: "separator",
15
+ "aria-orientation": "vertical",
16
+ "data-react-fancy-separator": "",
17
+ className: chunk3Z6ALUWP_cjs.cn(
18
+ "inline-block h-full border-l border-zinc-200 dark:border-zinc-700",
19
+ className
20
+ )
21
+ }
22
+ );
23
+ }
24
+ if (label) {
25
+ return /* @__PURE__ */ jsxRuntime.jsxs(
26
+ "div",
27
+ {
28
+ ref,
29
+ role: "separator",
30
+ "data-react-fancy-separator": "",
31
+ className: chunk3Z6ALUWP_cjs.cn("flex items-center gap-3", className),
32
+ children: [
33
+ /* @__PURE__ */ jsxRuntime.jsx("hr", { className: "flex-1 border-zinc-200 dark:border-zinc-700" }),
34
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm text-zinc-500 dark:text-zinc-400", children: label }),
35
+ /* @__PURE__ */ jsxRuntime.jsx("hr", { className: "flex-1 border-zinc-200 dark:border-zinc-700" })
36
+ ]
37
+ }
38
+ );
39
+ }
40
+ return /* @__PURE__ */ jsxRuntime.jsx(
41
+ "hr",
42
+ {
43
+ ref,
44
+ role: "separator",
45
+ "data-react-fancy-separator": "",
46
+ className: chunk3Z6ALUWP_cjs.cn(
47
+ "border-zinc-200 dark:border-zinc-700",
48
+ className
49
+ )
50
+ }
51
+ );
52
+ }
53
+ );
54
+ Separator.displayName = "Separator";
55
+
56
+ exports.Separator = Separator;
57
+ //# sourceMappingURL=chunk-RR7BWUVP.cjs.map
58
+ //# sourceMappingURL=chunk-RR7BWUVP.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/Separator/Separator.tsx"],"names":["forwardRef","jsx","cn","jsxs"],"mappings":";;;;;;AAIO,IAAM,SAAA,GAAYA,gBAAA;AAAA,EACvB,CAAC,EAAE,WAAA,GAAc,cAAc,KAAA,EAAO,SAAA,IAAa,GAAA,KAAQ;AACzD,IAAA,IAAI,gBAAgB,UAAA,EAAY;AAC9B,MAAA,uBACEC,cAAA;AAAA,QAAC,KAAA;AAAA,QAAA;AAAA,UACC,GAAA;AAAA,UACA,IAAA,EAAK,WAAA;AAAA,UACL,kBAAA,EAAiB,UAAA;AAAA,UACjB,4BAAA,EAA2B,EAAA;AAAA,UAC3B,SAAA,EAAWC,oBAAA;AAAA,YACT,mEAAA;AAAA,YACA;AAAA;AACF;AAAA,OACF;AAAA,IAEJ;AAEA,IAAA,IAAI,KAAA,EAAO;AACT,MAAA,uBACEC,eAAA;AAAA,QAAC,KAAA;AAAA,QAAA;AAAA,UACC,GAAA;AAAA,UACA,IAAA,EAAK,WAAA;AAAA,UACL,4BAAA,EAA2B,EAAA;AAAA,UAC3B,SAAA,EAAWD,oBAAA,CAAG,yBAAA,EAA2B,SAAS,CAAA;AAAA,UAElD,QAAA,EAAA;AAAA,4BAAAD,cAAA,CAAC,IAAA,EAAA,EAAG,WAAU,6CAAA,EAA8C,CAAA;AAAA,4BAC5DA,cAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,0CAAA,EACb,QAAA,EAAA,KAAA,EACH,CAAA;AAAA,4BACAA,cAAA,CAAC,IAAA,EAAA,EAAG,SAAA,EAAU,6CAAA,EAA8C;AAAA;AAAA;AAAA,OAC9D;AAAA,IAEJ;AAEA,IAAA,uBACEA,cAAA;AAAA,MAAC,IAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,IAAA,EAAK,WAAA;AAAA,QACL,4BAAA,EAA2B,EAAA;AAAA,QAC3B,SAAA,EAAWC,oBAAA;AAAA,UACT,sCAAA;AAAA,UACA;AAAA;AACF;AAAA,KACF;AAAA,EAEJ;AACF;AAEA,SAAA,CAAU,WAAA,GAAc,WAAA","file":"chunk-RR7BWUVP.cjs","sourcesContent":["import { forwardRef } from \"react\";\nimport { cn } from \"../../utils/cn\";\nimport type { SeparatorProps } from \"./Separator.types\";\n\nexport const Separator = forwardRef<HTMLDivElement, SeparatorProps>(\n ({ orientation = \"horizontal\", label, className }, ref) => {\n if (orientation === \"vertical\") {\n return (\n <div\n ref={ref}\n role=\"separator\"\n aria-orientation=\"vertical\"\n data-react-fancy-separator=\"\"\n className={cn(\n \"inline-block h-full border-l border-zinc-200 dark:border-zinc-700\",\n className,\n )}\n />\n );\n }\n\n if (label) {\n return (\n <div\n ref={ref}\n role=\"separator\"\n data-react-fancy-separator=\"\"\n className={cn(\"flex items-center gap-3\", className)}\n >\n <hr className=\"flex-1 border-zinc-200 dark:border-zinc-700\" />\n <span className=\"text-sm text-zinc-500 dark:text-zinc-400\">\n {label}\n </span>\n <hr className=\"flex-1 border-zinc-200 dark:border-zinc-700\" />\n </div>\n );\n }\n\n return (\n <hr\n ref={ref as React.Ref<HTMLHRElement>}\n role=\"separator\"\n data-react-fancy-separator=\"\"\n className={cn(\n \"border-zinc-200 dark:border-zinc-700\",\n className,\n )}\n />\n );\n },\n);\n\nSeparator.displayName = \"Separator\";\n"]}
@@ -0,0 +1,21 @@
1
+ 'use strict';
2
+
3
+ var react = require('react');
4
+
5
+ // src/hooks/use-escape-key.ts
6
+ function useEscapeKey(handler, enabled = true) {
7
+ react.useEffect(() => {
8
+ if (!enabled) return;
9
+ const listener = (event) => {
10
+ if (event.key === "Escape") {
11
+ handler();
12
+ }
13
+ };
14
+ document.addEventListener("keydown", listener);
15
+ return () => document.removeEventListener("keydown", listener);
16
+ }, [handler, enabled]);
17
+ }
18
+
19
+ exports.useEscapeKey = useEscapeKey;
20
+ //# sourceMappingURL=chunk-RXDRYWVD.cjs.map
21
+ //# sourceMappingURL=chunk-RXDRYWVD.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/hooks/use-escape-key.ts"],"names":["useEffect"],"mappings":";;;;;AAEO,SAAS,YAAA,CACd,OAAA,EACA,OAAA,GAAmB,IAAA,EACb;AACN,EAAAA,eAAA,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-RXDRYWVD.cjs","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,4 @@
1
+ 'use strict';
2
+
3
+ //# sourceMappingURL=chunk-S3TRSECD.cjs.map
4
+ //# sourceMappingURL=chunk-S3TRSECD.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-S3TRSECD.cjs"}
@@ -0,0 +1,83 @@
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 Composer = react.forwardRef(
9
+ function Composer2({
10
+ value: controlledValue,
11
+ defaultValue = "",
12
+ onChange,
13
+ onSubmit,
14
+ placeholder = "Type a message...",
15
+ actions,
16
+ disabled = false,
17
+ className
18
+ }, ref) {
19
+ const [value, setValue] = chunkOUOEQZHY_cjs.useControllableState(
20
+ controlledValue,
21
+ defaultValue,
22
+ onChange
23
+ );
24
+ const textareaRef = react.useRef(null);
25
+ const handleSubmit = react.useCallback(() => {
26
+ if (!value.trim() || disabled) return;
27
+ onSubmit?.(value);
28
+ setValue("");
29
+ textareaRef.current?.focus();
30
+ }, [value, disabled, onSubmit, setValue]);
31
+ const handleKeyDown = (e) => {
32
+ if (e.key === "Enter" && !e.shiftKey) {
33
+ e.preventDefault();
34
+ handleSubmit();
35
+ }
36
+ };
37
+ return /* @__PURE__ */ jsxRuntime.jsxs(
38
+ "div",
39
+ {
40
+ "data-react-fancy-composer": "",
41
+ ref,
42
+ className: chunk3Z6ALUWP_cjs.cn(
43
+ "rounded-xl border border-zinc-200 bg-white dark:border-zinc-700 dark:bg-zinc-900",
44
+ disabled && "opacity-50",
45
+ className
46
+ ),
47
+ children: [
48
+ /* @__PURE__ */ jsxRuntime.jsx(
49
+ "textarea",
50
+ {
51
+ ref: textareaRef,
52
+ value,
53
+ onChange: (e) => setValue(e.target.value),
54
+ onKeyDown: handleKeyDown,
55
+ placeholder,
56
+ disabled,
57
+ rows: 3,
58
+ className: "w-full resize-none bg-transparent px-4 pt-3 text-sm outline-none placeholder:text-zinc-400"
59
+ }
60
+ ),
61
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between border-t border-zinc-100 px-3 py-2 dark:border-zinc-800", children: [
62
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-1", children: actions }),
63
+ /* @__PURE__ */ jsxRuntime.jsx(
64
+ "button",
65
+ {
66
+ type: "button",
67
+ onClick: handleSubmit,
68
+ disabled: disabled || !value.trim(),
69
+ className: "rounded-lg bg-zinc-900 px-3 py-1.5 text-sm font-medium text-white transition-colors hover:bg-zinc-800 disabled:opacity-50 dark:bg-white dark:text-zinc-900 dark:hover:bg-zinc-100",
70
+ children: "Send"
71
+ }
72
+ )
73
+ ] })
74
+ ]
75
+ }
76
+ );
77
+ }
78
+ );
79
+ Composer.displayName = "Composer";
80
+
81
+ exports.Composer = Composer;
82
+ //# sourceMappingURL=chunk-SCPHSBBU.cjs.map
83
+ //# sourceMappingURL=chunk-SCPHSBBU.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/Composer/Composer.tsx"],"names":["forwardRef","Composer","useControllableState","useRef","useCallback","jsxs","cn","jsx"],"mappings":";;;;;;;AAKO,IAAM,QAAA,GAAWA,gBAAA;AAAA,EACtB,SAASC,SAAAA,CACP;AAAA,IACE,KAAA,EAAO,eAAA;AAAA,IACP,YAAA,GAAe,EAAA;AAAA,IACf,QAAA;AAAA,IACA,QAAA;AAAA,IACA,WAAA,GAAc,mBAAA;AAAA,IACd,OAAA;AAAA,IACA,QAAA,GAAW,KAAA;AAAA,IACX;AAAA,KAEF,GAAA,EACA;AACA,IAAA,MAAM,CAAC,KAAA,EAAO,QAAQ,CAAA,GAAIC,sCAAA;AAAA,MACxB,eAAA;AAAA,MACA,YAAA;AAAA,MACA;AAAA,KACF;AACA,IAAA,MAAM,WAAA,GAAcC,aAA4B,IAAI,CAAA;AAEpD,IAAA,MAAM,YAAA,GAAeC,kBAAY,MAAM;AACrC,MAAA,IAAI,CAAC,KAAA,CAAM,IAAA,EAAK,IAAK,QAAA,EAAU;AAC/B,MAAA,QAAA,GAAW,KAAK,CAAA;AAChB,MAAA,QAAA,CAAS,EAAE,CAAA;AACX,MAAA,WAAA,CAAY,SAAS,KAAA,EAAM;AAAA,IAC7B,GAAG,CAAC,KAAA,EAAO,QAAA,EAAU,QAAA,EAAU,QAAQ,CAAC,CAAA;AAExC,IAAA,MAAM,aAAA,GAAgB,CAAC,CAAA,KAAgD;AACrE,MAAA,IAAI,CAAA,CAAE,GAAA,KAAQ,OAAA,IAAW,CAAC,EAAE,QAAA,EAAU;AACpC,QAAA,CAAA,CAAE,cAAA,EAAe;AACjB,QAAA,YAAA,EAAa;AAAA,MACf;AAAA,IACF,CAAA;AAEA,IAAA,uBACEC,eAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,2BAAA,EAA0B,EAAA;AAAA,QAC1B,GAAA;AAAA,QACA,SAAA,EAAWC,oBAAA;AAAA,UACT,kFAAA;AAAA,UACA,QAAA,IAAY,YAAA;AAAA,UACZ;AAAA,SACF;AAAA,QAEA,QAAA,EAAA;AAAA,0BAAAC,cAAA;AAAA,YAAC,UAAA;AAAA,YAAA;AAAA,cACC,GAAA,EAAK,WAAA;AAAA,cACL,KAAA;AAAA,cACA,UAAU,CAAC,CAAA,KAAM,QAAA,CAAS,CAAA,CAAE,OAAO,KAAK,CAAA;AAAA,cACxC,SAAA,EAAW,aAAA;AAAA,cACX,WAAA;AAAA,cACA,QAAA;AAAA,cACA,IAAA,EAAM,CAAA;AAAA,cACN,SAAA,EAAU;AAAA;AAAA,WACZ;AAAA,0BACAF,eAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,2FAAA,EACb,QAAA,EAAA;AAAA,4BAAAE,cAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,yBAAA,EAA2B,QAAA,EAAA,OAAA,EAAQ,CAAA;AAAA,4BAClDA,cAAA;AAAA,cAAC,QAAA;AAAA,cAAA;AAAA,gBACC,IAAA,EAAK,QAAA;AAAA,gBACL,OAAA,EAAS,YAAA;AAAA,gBACT,QAAA,EAAU,QAAA,IAAY,CAAC,KAAA,CAAM,IAAA,EAAK;AAAA,gBAClC,SAAA,EAAU,mLAAA;AAAA,gBACX,QAAA,EAAA;AAAA;AAAA;AAED,WAAA,EACF;AAAA;AAAA;AAAA,KACF;AAAA,EAEJ;AACF;AAEA,QAAA,CAAS,WAAA,GAAc,UAAA","file":"chunk-SCPHSBBU.cjs","sourcesContent":["import { forwardRef, useCallback, useRef } from \"react\";\nimport { cn } from \"../../utils/cn\";\nimport { useControllableState } from \"../../hooks/use-controllable-state\";\nimport type { ComposerProps } from \"./Composer.types\";\n\nexport const Composer = forwardRef<HTMLDivElement, ComposerProps>(\n function Composer(\n {\n value: controlledValue,\n defaultValue = \"\",\n onChange,\n onSubmit,\n placeholder = \"Type a message...\",\n actions,\n disabled = false,\n className,\n },\n ref,\n ) {\n const [value, setValue] = useControllableState(\n controlledValue,\n defaultValue,\n onChange,\n );\n const textareaRef = useRef<HTMLTextAreaElement>(null);\n\n const handleSubmit = useCallback(() => {\n if (!value.trim() || disabled) return;\n onSubmit?.(value);\n setValue(\"\");\n textareaRef.current?.focus();\n }, [value, disabled, onSubmit, setValue]);\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLTextAreaElement>) => {\n if (e.key === \"Enter\" && !e.shiftKey) {\n e.preventDefault();\n handleSubmit();\n }\n };\n\n return (\n <div\n data-react-fancy-composer=\"\"\n ref={ref}\n className={cn(\n \"rounded-xl border border-zinc-200 bg-white dark:border-zinc-700 dark:bg-zinc-900\",\n disabled && \"opacity-50\",\n className,\n )}\n >\n <textarea\n ref={textareaRef}\n value={value}\n onChange={(e) => setValue(e.target.value)}\n onKeyDown={handleKeyDown}\n placeholder={placeholder}\n disabled={disabled}\n rows={3}\n className=\"w-full resize-none bg-transparent px-4 pt-3 text-sm outline-none placeholder:text-zinc-400\"\n />\n <div className=\"flex items-center justify-between border-t border-zinc-100 px-3 py-2 dark:border-zinc-800\">\n <div className=\"flex items-center gap-1\">{actions}</div>\n <button\n type=\"button\"\n onClick={handleSubmit}\n disabled={disabled || !value.trim()}\n className=\"rounded-lg bg-zinc-900 px-3 py-1.5 text-sm font-medium text-white transition-colors hover:bg-zinc-800 disabled:opacity-50 dark:bg-white dark:text-zinc-900 dark:hover:bg-zinc-100\"\n >\n Send\n </button>\n </div>\n </div>\n );\n },\n);\n\nComposer.displayName = \"Composer\";\n"]}
@@ -0,0 +1,133 @@
1
+ import { useInlineEdit } from './chunk-OL53XYHF.js';
2
+ import { useFieldMode } from './chunk-NRXK42LO.js';
3
+ import { useControllableState } from './chunk-6FQGMVF2.js';
4
+ import { cn } from './chunk-DSUHZO6T.js';
5
+ import { forwardRef, useCallback } from 'react';
6
+ import { ChevronUp, ChevronDown } from 'lucide-react';
7
+ import { jsx, jsxs } from 'react/jsx-runtime';
8
+
9
+ function pad(n) {
10
+ return n.toString().padStart(2, "0");
11
+ }
12
+ function parseTime(val) {
13
+ const [h, m] = val.split(":").map(Number);
14
+ return { hours: h || 0, minutes: m || 0 };
15
+ }
16
+ var TimePicker = forwardRef(
17
+ function TimePicker2({
18
+ value: controlledValue,
19
+ defaultValue = "12:00",
20
+ onChange,
21
+ format = "12h",
22
+ minuteStep = 1,
23
+ disabled = false,
24
+ className,
25
+ mode
26
+ }, ref) {
27
+ const [value, setValue] = useControllableState(
28
+ controlledValue,
29
+ defaultValue,
30
+ onChange
31
+ );
32
+ const resolvedMode = useFieldMode(mode);
33
+ const { showControl, interactive, enterEdit, exitEdit } = useInlineEdit(resolvedMode, disabled);
34
+ const { hours: h24, minutes } = parseTime(value);
35
+ const isPM = h24 >= 12;
36
+ const displayHour = format === "12h" ? h24 % 12 || 12 : h24;
37
+ const updateTime = useCallback(
38
+ (hours, mins) => {
39
+ setValue(`${pad(hours)}:${pad(mins)}`);
40
+ },
41
+ [setValue]
42
+ );
43
+ const changeHour = useCallback(
44
+ (delta) => {
45
+ const newHour = (h24 + delta + 24) % 24;
46
+ updateTime(newHour, minutes);
47
+ },
48
+ [h24, minutes, updateTime]
49
+ );
50
+ const changeMinute = useCallback(
51
+ (delta) => {
52
+ const newMin = (minutes + delta + 60) % 60;
53
+ updateTime(h24, newMin);
54
+ },
55
+ [h24, minutes, updateTime]
56
+ );
57
+ const toggleAmPm = useCallback(() => {
58
+ updateTime((h24 + 12) % 24, minutes);
59
+ }, [h24, minutes, updateTime]);
60
+ if (!showControl) {
61
+ const formatted = format === "12h" ? `${pad(displayHour)}:${pad(minutes)} ${isPM ? "PM" : "AM"}` : `${pad(displayHour)}:${pad(minutes)}`;
62
+ return /* @__PURE__ */ jsx(
63
+ "div",
64
+ {
65
+ "data-react-fancy-time-picker": "",
66
+ "data-mode": "view",
67
+ ref,
68
+ role: interactive ? "button" : void 0,
69
+ tabIndex: interactive ? 0 : void 0,
70
+ title: interactive ? "Click to edit" : void 0,
71
+ onClick: interactive ? enterEdit : void 0,
72
+ onKeyDown: interactive ? (e) => {
73
+ if (e.key === "Enter" || e.key === " ") {
74
+ e.preventDefault();
75
+ enterEdit();
76
+ }
77
+ } : void 0,
78
+ className: cn(
79
+ "text-sm font-medium tabular-nums text-zinc-900 dark:text-zinc-100",
80
+ interactive && "cursor-pointer rounded-md outline-none transition-colors hover:bg-zinc-100 focus-visible:ring-2 focus-visible:ring-blue-500/40 dark:hover:bg-zinc-800",
81
+ className
82
+ ),
83
+ children: formatted
84
+ }
85
+ );
86
+ }
87
+ const spinBtnClass = "flex h-7 w-full items-center justify-center rounded text-zinc-400 transition-colors hover:bg-zinc-100 hover:text-zinc-600 dark:hover:bg-zinc-800 dark:hover:text-zinc-300 disabled:opacity-50";
88
+ const displayClass = "flex h-10 w-12 items-center justify-center text-lg font-medium tabular-nums";
89
+ return /* @__PURE__ */ jsxs(
90
+ "div",
91
+ {
92
+ "data-react-fancy-time-picker": "",
93
+ ref,
94
+ onBlur: (e) => {
95
+ if (interactive && !e.currentTarget.contains(e.relatedTarget)) exitEdit();
96
+ },
97
+ className: cn(
98
+ "inline-flex items-center gap-1 rounded-lg border border-zinc-200 bg-white p-2 dark:border-zinc-700 dark:bg-zinc-900",
99
+ disabled && "opacity-50",
100
+ className
101
+ ),
102
+ children: [
103
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col items-center", children: [
104
+ /* @__PURE__ */ jsx("button", { type: "button", autoFocus: interactive, onClick: () => changeHour(1), disabled, className: spinBtnClass, "aria-label": "Increase hour", children: /* @__PURE__ */ jsx(ChevronUp, { size: 14 }) }),
105
+ /* @__PURE__ */ jsx("div", { className: displayClass, children: pad(displayHour) }),
106
+ /* @__PURE__ */ jsx("button", { type: "button", onClick: () => changeHour(-1), disabled, className: spinBtnClass, "aria-label": "Decrease hour", children: /* @__PURE__ */ jsx(ChevronDown, { size: 14 }) })
107
+ ] }),
108
+ /* @__PURE__ */ jsx("span", { className: "text-lg text-zinc-400", children: ":" }),
109
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col items-center", children: [
110
+ /* @__PURE__ */ jsx("button", { type: "button", onClick: () => changeMinute(minuteStep), disabled, className: spinBtnClass, "aria-label": "Increase minute", children: /* @__PURE__ */ jsx(ChevronUp, { size: 14 }) }),
111
+ /* @__PURE__ */ jsx("div", { className: displayClass, children: pad(minutes) }),
112
+ /* @__PURE__ */ jsx("button", { type: "button", onClick: () => changeMinute(-minuteStep), disabled, className: spinBtnClass, "aria-label": "Decrease minute", children: /* @__PURE__ */ jsx(ChevronDown, { size: 14 }) })
113
+ ] }),
114
+ format === "12h" && /* @__PURE__ */ jsx(
115
+ "button",
116
+ {
117
+ type: "button",
118
+ onClick: toggleAmPm,
119
+ disabled,
120
+ className: "ml-1 rounded-lg bg-zinc-100 px-2 py-1 text-sm font-medium transition-colors hover:bg-zinc-200 dark:bg-zinc-800 dark:hover:bg-zinc-700",
121
+ children: isPM ? "PM" : "AM"
122
+ }
123
+ )
124
+ ]
125
+ }
126
+ );
127
+ }
128
+ );
129
+ TimePicker.displayName = "TimePicker";
130
+
131
+ export { TimePicker };
132
+ //# sourceMappingURL=chunk-SKI33QNW.js.map
133
+ //# sourceMappingURL=chunk-SKI33QNW.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/TimePicker/TimePicker.tsx"],"names":["TimePicker"],"mappings":";;;;;;;;AAQA,SAAS,IAAI,CAAA,EAAmB;AAC9B,EAAA,OAAO,CAAA,CAAE,QAAA,EAAS,CAAE,QAAA,CAAS,GAAG,GAAG,CAAA;AACrC;AAEA,SAAS,UAAU,GAAA,EAAiD;AAClE,EAAA,MAAM,CAAC,GAAG,CAAC,CAAA,GAAI,IAAI,KAAA,CAAM,GAAG,CAAA,CAAE,GAAA,CAAI,MAAM,CAAA;AACxC,EAAA,OAAO,EAAE,KAAA,EAAO,CAAA,IAAK,CAAA,EAAG,OAAA,EAAS,KAAK,CAAA,EAAE;AAC1C;AAEO,IAAM,UAAA,GAAa,UAAA;AAAA,EACxB,SAASA,WAAAA,CACP;AAAA,IACE,KAAA,EAAO,eAAA;AAAA,IACP,YAAA,GAAe,OAAA;AAAA,IACf,QAAA;AAAA,IACA,MAAA,GAAS,KAAA;AAAA,IACT,UAAA,GAAa,CAAA;AAAA,IACb,QAAA,GAAW,KAAA;AAAA,IACX,SAAA;AAAA,IACA;AAAA,KAEF,GAAA,EACA;AACA,IAAA,MAAM,CAAC,KAAA,EAAO,QAAQ,CAAA,GAAI,oBAAA;AAAA,MACxB,eAAA;AAAA,MACA,YAAA;AAAA,MACA;AAAA,KACF;AACA,IAAA,MAAM,YAAA,GAAe,aAAa,IAAI,CAAA;AACtC,IAAA,MAAM,EAAE,aAAa,WAAA,EAAa,SAAA,EAAW,UAAS,GAAI,aAAA,CAAc,cAAc,QAAQ,CAAA;AAE9F,IAAA,MAAM,EAAE,KAAA,EAAO,GAAA,EAAK,OAAA,EAAQ,GAAI,UAAU,KAAK,CAAA;AAC/C,IAAA,MAAM,OAAO,GAAA,IAAO,EAAA;AACpB,IAAA,MAAM,WAAA,GAAc,MAAA,KAAW,KAAA,GAAS,GAAA,GAAM,MAAM,EAAA,GAAM,GAAA;AAS1D,IAAA,MAAM,UAAA,GAAa,WAAA;AAAA,MACjB,CAAC,OAAe,IAAA,KAAiB;AAC/B,QAAA,QAAA,CAAS,CAAA,EAAG,IAAI,KAAK,CAAC,IAAI,GAAA,CAAI,IAAI,CAAC,CAAA,CAAE,CAAA;AAAA,MACvC,CAAA;AAAA,MACA,CAAC,QAAQ;AAAA,KACX;AAEA,IAAA,MAAM,UAAA,GAAa,WAAA;AAAA,MACjB,CAAC,KAAA,KAAkB;AACjB,QAAA,MAAM,OAAA,GAAA,CAAW,GAAA,GAAM,KAAA,GAAQ,EAAA,IAAM,EAAA;AACrC,QAAA,UAAA,CAAW,SAAS,OAAO,CAAA;AAAA,MAC7B,CAAA;AAAA,MACA,CAAC,GAAA,EAAK,OAAA,EAAS,UAAU;AAAA,KAC3B;AAEA,IAAA,MAAM,YAAA,GAAe,WAAA;AAAA,MACnB,CAAC,KAAA,KAAkB;AACjB,QAAA,MAAM,MAAA,GAAA,CAAU,OAAA,GAAU,KAAA,GAAQ,EAAA,IAAM,EAAA;AACxC,QAAA,UAAA,CAAW,KAAK,MAAM,CAAA;AAAA,MACxB,CAAA;AAAA,MACA,CAAC,GAAA,EAAK,OAAA,EAAS,UAAU;AAAA,KAC3B;AAEA,IAAA,MAAM,UAAA,GAAa,YAAY,MAAM;AACnC,MAAA,UAAA,CAAA,CAAY,GAAA,GAAM,EAAA,IAAM,EAAA,EAAI,OAAO,CAAA;AAAA,IACrC,CAAA,EAAG,CAAC,GAAA,EAAK,OAAA,EAAS,UAAU,CAAC,CAAA;AAE7B,IAAA,IAAI,CAAC,WAAA,EAAa;AAChB,MAAA,MAAM,SAAA,GACJ,WAAW,KAAA,GACP,CAAA,EAAG,IAAI,WAAW,CAAC,CAAA,CAAA,EAAI,GAAA,CAAI,OAAO,CAAC,IAAI,IAAA,GAAO,IAAA,GAAO,IAAI,CAAA,CAAA,GACzD,CAAA,EAAG,GAAA,CAAI,WAAW,CAAC,CAAA,CAAA,EAAI,GAAA,CAAI,OAAO,CAAC,CAAA,CAAA;AACzC,MAAA,uBACE,GAAA;AAAA,QAAC,KAAA;AAAA,QAAA;AAAA,UACC,8BAAA,EAA6B,EAAA;AAAA,UAC7B,WAAA,EAAU,MAAA;AAAA,UACV,GAAA;AAAA,UACA,IAAA,EAAM,cAAc,QAAA,GAAW,MAAA;AAAA,UAC/B,QAAA,EAAU,cAAc,CAAA,GAAI,MAAA;AAAA,UAC5B,KAAA,EAAO,cAAc,eAAA,GAAkB,MAAA;AAAA,UACvC,OAAA,EAAS,cAAc,SAAA,GAAY,MAAA;AAAA,UACnC,SAAA,EACE,WAAA,GACI,CAAC,CAAA,KAAM;AACL,YAAA,IAAI,CAAA,CAAE,GAAA,KAAQ,OAAA,IAAW,CAAA,CAAE,QAAQ,GAAA,EAAK;AACtC,cAAA,CAAA,CAAE,cAAA,EAAe;AACjB,cAAA,SAAA,EAAU;AAAA,YACZ;AAAA,UACF,CAAA,GACA,MAAA;AAAA,UAEN,SAAA,EAAW,EAAA;AAAA,YACT,mEAAA;AAAA,YACA,WAAA,IACE,uJAAA;AAAA,YACF;AAAA,WACF;AAAA,UAEC,QAAA,EAAA;AAAA;AAAA,OACH;AAAA,IAEJ;AAEA,IAAA,MAAM,YAAA,GACJ,+LAAA;AACF,IAAA,MAAM,YAAA,GACJ,6EAAA;AAEF,IAAA,uBACE,IAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,8BAAA,EAA6B,EAAA;AAAA,QAC7B,GAAA;AAAA,QACA,MAAA,EAAQ,CAAC,CAAA,KAAM;AACb,UAAA,IAAI,WAAA,IAAe,CAAC,CAAA,CAAE,aAAA,CAAc,SAAS,CAAA,CAAE,aAAqB,GAAG,QAAA,EAAS;AAAA,QAClF,CAAA;AAAA,QACA,SAAA,EAAW,EAAA;AAAA,UACT,qHAAA;AAAA,UACA,QAAA,IAAY,YAAA;AAAA,UACZ;AAAA,SACF;AAAA,QAGA,QAAA,EAAA;AAAA,0BAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,4BAAA,EACb,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,YAAO,IAAA,EAAK,QAAA,EAAS,WAAW,WAAA,EAAa,OAAA,EAAS,MAAM,UAAA,CAAW,CAAC,GAAG,QAAA,EAAoB,SAAA,EAAW,cAAc,YAAA,EAAW,eAAA,EAClI,8BAAC,SAAA,EAAA,EAAU,IAAA,EAAM,IAAI,CAAA,EACvB,CAAA;AAAA,gCACC,KAAA,EAAA,EAAI,SAAA,EAAW,YAAA,EAAe,QAAA,EAAA,GAAA,CAAI,WAAW,CAAA,EAAE,CAAA;AAAA,gCAC/C,QAAA,EAAA,EAAO,IAAA,EAAK,UAAS,OAAA,EAAS,MAAM,WAAW,EAAE,CAAA,EAAG,QAAA,EAAoB,SAAA,EAAW,cAAc,YAAA,EAAW,eAAA,EAC3G,8BAAC,WAAA,EAAA,EAAY,IAAA,EAAM,IAAI,CAAA,EACzB;AAAA,WAAA,EACF,CAAA;AAAA,0BAEA,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,uBAAA,EAAwB,QAAA,EAAA,GAAA,EAAC,CAAA;AAAA,0BAGzC,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,4BAAA,EACb,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,YAAO,IAAA,EAAK,QAAA,EAAS,OAAA,EAAS,MAAM,aAAa,UAAU,CAAA,EAAG,QAAA,EAAoB,SAAA,EAAW,cAAc,YAAA,EAAW,iBAAA,EACrH,8BAAC,SAAA,EAAA,EAAU,IAAA,EAAM,IAAI,CAAA,EACvB,CAAA;AAAA,gCACC,KAAA,EAAA,EAAI,SAAA,EAAW,YAAA,EAAe,QAAA,EAAA,GAAA,CAAI,OAAO,CAAA,EAAE,CAAA;AAAA,gCAC3C,QAAA,EAAA,EAAO,IAAA,EAAK,UAAS,OAAA,EAAS,MAAM,aAAa,CAAC,UAAU,GAAG,QAAA,EAAoB,SAAA,EAAW,cAAc,YAAA,EAAW,iBAAA,EACtH,8BAAC,WAAA,EAAA,EAAY,IAAA,EAAM,IAAI,CAAA,EACzB;AAAA,WAAA,EACF,CAAA;AAAA,UAGC,WAAW,KAAA,oBACV,GAAA;AAAA,YAAC,QAAA;AAAA,YAAA;AAAA,cACC,IAAA,EAAK,QAAA;AAAA,cACL,OAAA,EAAS,UAAA;AAAA,cACT,QAAA;AAAA,cACA,SAAA,EAAU,uIAAA;AAAA,cAET,iBAAO,IAAA,GAAO;AAAA;AAAA;AACjB;AAAA;AAAA,KAEJ;AAAA,EAEJ;AACF;AAEA,UAAA,CAAW,WAAA,GAAc,YAAA","file":"chunk-SKI33QNW.js","sourcesContent":["import { forwardRef, useCallback } from \"react\";\nimport { ChevronUp, ChevronDown } from \"lucide-react\";\nimport { cn } from \"../../utils/cn\";\nimport { useControllableState } from \"../../hooks/use-controllable-state\";\nimport { useFieldMode } from \"../inputs/mode/FieldMode.context\";\nimport { useInlineEdit } from \"../inputs/mode/useInlineEdit\";\nimport type { TimePickerProps } from \"./TimePicker.types\";\n\nfunction pad(n: number): string {\n return n.toString().padStart(2, \"0\");\n}\n\nfunction parseTime(val: string): { hours: number; minutes: number } {\n const [h, m] = val.split(\":\").map(Number);\n return { hours: h || 0, minutes: m || 0 };\n}\n\nexport const TimePicker = forwardRef<HTMLDivElement, TimePickerProps>(\n function TimePicker(\n {\n value: controlledValue,\n defaultValue = \"12:00\",\n onChange,\n format = \"12h\",\n minuteStep = 1,\n disabled = false,\n className,\n mode,\n },\n ref,\n ) {\n const [value, setValue] = useControllableState(\n controlledValue,\n defaultValue,\n onChange,\n );\n const resolvedMode = useFieldMode(mode);\n const { showControl, interactive, enterEdit, exitEdit } = useInlineEdit(resolvedMode, disabled);\n\n const { hours: h24, minutes } = parseTime(value);\n const isPM = h24 >= 12;\n const displayHour = format === \"12h\" ? (h24 % 12 || 12) : h24;\n\n // These four MUST stay above the view-mode early return below.\n //\n // They used to sit after it, which meant view mode ran three hooks and edit\n // mode ran seven. Clicking \"Click to edit\" flipped `showControl` and React\n // hit a different hook count on the very next render — the classic\n // desync, which surfaces as a crash from inside React naming none of this\n // code. Nothing caught it because no test ever crossed the boundary.\n const updateTime = useCallback(\n (hours: number, mins: number) => {\n setValue(`${pad(hours)}:${pad(mins)}`);\n },\n [setValue],\n );\n\n const changeHour = useCallback(\n (delta: number) => {\n const newHour = (h24 + delta + 24) % 24;\n updateTime(newHour, minutes);\n },\n [h24, minutes, updateTime],\n );\n\n const changeMinute = useCallback(\n (delta: number) => {\n const newMin = (minutes + delta + 60) % 60;\n updateTime(h24, newMin);\n },\n [h24, minutes, updateTime],\n );\n\n const toggleAmPm = useCallback(() => {\n updateTime((h24 + 12) % 24, minutes);\n }, [h24, minutes, updateTime]);\n\n if (!showControl) {\n const formatted =\n format === \"12h\"\n ? `${pad(displayHour)}:${pad(minutes)} ${isPM ? \"PM\" : \"AM\"}`\n : `${pad(displayHour)}:${pad(minutes)}`;\n return (\n <div\n data-react-fancy-time-picker=\"\"\n data-mode=\"view\"\n ref={ref}\n role={interactive ? \"button\" : undefined}\n tabIndex={interactive ? 0 : undefined}\n title={interactive ? \"Click to edit\" : undefined}\n onClick={interactive ? enterEdit : undefined}\n onKeyDown={\n interactive\n ? (e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n enterEdit();\n }\n }\n : undefined\n }\n className={cn(\n \"text-sm font-medium tabular-nums text-zinc-900 dark:text-zinc-100\",\n interactive &&\n \"cursor-pointer rounded-md outline-none transition-colors hover:bg-zinc-100 focus-visible:ring-2 focus-visible:ring-blue-500/40 dark:hover:bg-zinc-800\",\n className,\n )}\n >\n {formatted}\n </div>\n );\n }\n\n const spinBtnClass =\n \"flex h-7 w-full items-center justify-center rounded text-zinc-400 transition-colors hover:bg-zinc-100 hover:text-zinc-600 dark:hover:bg-zinc-800 dark:hover:text-zinc-300 disabled:opacity-50\";\n const displayClass =\n \"flex h-10 w-12 items-center justify-center text-lg font-medium tabular-nums\";\n\n return (\n <div\n data-react-fancy-time-picker=\"\"\n ref={ref}\n onBlur={(e) => {\n if (interactive && !e.currentTarget.contains(e.relatedTarget as Node)) exitEdit();\n }}\n className={cn(\n \"inline-flex items-center gap-1 rounded-lg border border-zinc-200 bg-white p-2 dark:border-zinc-700 dark:bg-zinc-900\",\n disabled && \"opacity-50\",\n className,\n )}\n >\n {/* Hour column */}\n <div className=\"flex flex-col items-center\">\n <button type=\"button\" autoFocus={interactive} onClick={() => changeHour(1)} disabled={disabled} className={spinBtnClass} aria-label=\"Increase hour\">\n <ChevronUp size={14} />\n </button>\n <div className={displayClass}>{pad(displayHour)}</div>\n <button type=\"button\" onClick={() => changeHour(-1)} disabled={disabled} className={spinBtnClass} aria-label=\"Decrease hour\">\n <ChevronDown size={14} />\n </button>\n </div>\n\n <span className=\"text-lg text-zinc-400\">:</span>\n\n {/* Minute column */}\n <div className=\"flex flex-col items-center\">\n <button type=\"button\" onClick={() => changeMinute(minuteStep)} disabled={disabled} className={spinBtnClass} aria-label=\"Increase minute\">\n <ChevronUp size={14} />\n </button>\n <div className={displayClass}>{pad(minutes)}</div>\n <button type=\"button\" onClick={() => changeMinute(-minuteStep)} disabled={disabled} className={spinBtnClass} aria-label=\"Decrease minute\">\n <ChevronDown size={14} />\n </button>\n </div>\n\n {/* AM/PM toggle */}\n {format === \"12h\" && (\n <button\n type=\"button\"\n onClick={toggleAmPm}\n disabled={disabled}\n className=\"ml-1 rounded-lg bg-zinc-100 px-2 py-1 text-sm font-medium transition-colors hover:bg-zinc-200 dark:bg-zinc-800 dark:hover:bg-zinc-700\"\n >\n {isPM ? \"PM\" : \"AM\"}\n </button>\n )}\n </div>\n );\n },\n);\n\nTimePicker.displayName = \"TimePicker\";\n"]}
@@ -0,0 +1,83 @@
1
+ 'use strict';
2
+
3
+ var chunkJXIBUIEY_cjs = require('./chunk-JXIBUIEY.cjs');
4
+ var react = require('react');
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+
7
+ function ChatDrawer({
8
+ tabs,
9
+ activeTabId,
10
+ onTabChange,
11
+ open = true,
12
+ onToggle,
13
+ children,
14
+ minBodyHeight = 140,
15
+ className
16
+ }) {
17
+ const handleToggle = react.useCallback(() => {
18
+ onToggle?.(!open);
19
+ }, [onToggle, open]);
20
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className, children: [
21
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-1.5 px-2.5 py-2", children: [
22
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap items-center gap-1.5", children: tabs.map((tab, i) => {
23
+ const active = tab.id === activeTabId;
24
+ const number = tab.number === null ? null : tab.number ?? i + 1;
25
+ return /* @__PURE__ */ jsxRuntime.jsxs(
26
+ "button",
27
+ {
28
+ type: "button",
29
+ onClick: () => onTabChange(tab.id),
30
+ className: [
31
+ "group inline-flex items-center gap-1.5 rounded-full border px-2.5 py-1 text-[12px] font-medium transition",
32
+ active ? "border-violet-500 bg-violet-500 text-white" : "border-zinc-200 bg-transparent text-zinc-700 hover:border-zinc-300 hover:bg-zinc-50 dark:border-zinc-700 dark:text-zinc-300 dark:hover:border-zinc-600 dark:hover:bg-zinc-800"
33
+ ].join(" "),
34
+ "aria-pressed": active,
35
+ children: [
36
+ number !== null && /* @__PURE__ */ jsxRuntime.jsx(
37
+ "span",
38
+ {
39
+ className: [
40
+ "inline-flex h-4 w-4 items-center justify-center rounded-full text-[10px] font-semibold",
41
+ active ? "bg-white/20 text-white" : "bg-zinc-200 text-zinc-600 group-hover:bg-zinc-300 dark:bg-zinc-700 dark:text-zinc-300"
42
+ ].join(" "),
43
+ children: number
44
+ }
45
+ ),
46
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "truncate max-w-[180px]", children: tab.label })
47
+ ]
48
+ },
49
+ tab.id
50
+ );
51
+ }) }),
52
+ /* @__PURE__ */ jsxRuntime.jsx(
53
+ "button",
54
+ {
55
+ type: "button",
56
+ onClick: handleToggle,
57
+ "aria-label": open ? "Collapse drawer" : "Expand drawer",
58
+ "aria-expanded": open,
59
+ className: "ml-auto inline-flex h-6 w-6 items-center justify-center rounded-full text-zinc-400 transition hover:bg-zinc-100 hover:text-zinc-700 dark:hover:bg-zinc-800 dark:hover:text-zinc-200",
60
+ children: /* @__PURE__ */ jsxRuntime.jsx(
61
+ chunkJXIBUIEY_cjs.Icon,
62
+ {
63
+ name: open ? "chevron-down" : "chevron-up",
64
+ className: "h-3.5 w-3.5"
65
+ }
66
+ )
67
+ }
68
+ )
69
+ ] }),
70
+ open && /* @__PURE__ */ jsxRuntime.jsx(
71
+ "div",
72
+ {
73
+ className: "px-2.5 pb-2.5",
74
+ style: { minHeight: minBodyHeight },
75
+ children
76
+ }
77
+ )
78
+ ] });
79
+ }
80
+
81
+ exports.ChatDrawer = ChatDrawer;
82
+ //# sourceMappingURL=chunk-T6IXZZBQ.cjs.map
83
+ //# sourceMappingURL=chunk-T6IXZZBQ.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ChatDrawer/ChatDrawer.tsx"],"names":["useCallback","jsxs","jsx","Icon"],"mappings":";;;;;;AA+DO,SAAS,UAAA,CAAW;AAAA,EACzB,IAAA;AAAA,EACA,WAAA;AAAA,EACA,WAAA;AAAA,EACA,IAAA,GAAO,IAAA;AAAA,EACP,QAAA;AAAA,EACA,QAAA;AAAA,EACA,aAAA,GAAgB,GAAA;AAAA,EAChB;AACF,CAAA,EAAoB;AAClB,EAAA,MAAM,YAAA,GAAeA,kBAAY,MAAM;AACrC,IAAA,QAAA,GAAW,CAAC,IAAI,CAAA;AAAA,EAClB,CAAA,EAAG,CAAC,QAAA,EAAU,IAAI,CAAC,CAAA;AAEnB,EAAA,uBACEC,eAAA,CAAC,SAAI,SAAA,EACH,QAAA,EAAA;AAAA,oBAAAA,eAAA,CAAC,KAAA,EAAA,EAAI,WAAU,uCAAA,EACb,QAAA,EAAA;AAAA,sBAAAC,cAAA,CAAC,SAAI,SAAA,EAAU,qCAAA,EACZ,eAAK,GAAA,CAAI,CAAC,KAAK,CAAA,KAAM;AACpB,QAAA,MAAM,MAAA,GAAS,IAAI,EAAA,KAAO,WAAA;AAC1B,QAAA,MAAM,SAAS,GAAA,CAAI,MAAA,KAAW,OAAO,IAAA,GAAO,GAAA,CAAI,UAAU,CAAA,GAAI,CAAA;AAC9D,QAAA,uBACED,eAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YAEC,IAAA,EAAK,QAAA;AAAA,YACL,OAAA,EAAS,MAAM,WAAA,CAAY,GAAA,CAAI,EAAE,CAAA;AAAA,YACjC,SAAA,EAAW;AAAA,cACT,2GAAA;AAAA,cACA,SACI,4CAAA,GACA;AAAA,aACN,CAAE,KAAK,GAAG,CAAA;AAAA,YACV,cAAA,EAAc,MAAA;AAAA,YAEb,QAAA,EAAA;AAAA,cAAA,MAAA,KAAW,IAAA,oBACVC,cAAA;AAAA,gBAAC,MAAA;AAAA,gBAAA;AAAA,kBACC,SAAA,EAAW;AAAA,oBACT,wFAAA;AAAA,oBACA,SACI,wBAAA,GACA;AAAA,mBACN,CAAE,KAAK,GAAG,CAAA;AAAA,kBAET,QAAA,EAAA;AAAA;AAAA,eACH;AAAA,8BAEFA,cAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,wBAAA,EAA0B,cAAI,KAAA,EAAM;AAAA;AAAA,WAAA;AAAA,UAvB/C,GAAA,CAAI;AAAA,SAwBX;AAAA,MAEJ,CAAC,CAAA,EACH,CAAA;AAAA,sBACAA,cAAA;AAAA,QAAC,QAAA;AAAA,QAAA;AAAA,UACC,IAAA,EAAK,QAAA;AAAA,UACL,OAAA,EAAS,YAAA;AAAA,UACT,YAAA,EAAY,OAAO,iBAAA,GAAoB,eAAA;AAAA,UACvC,eAAA,EAAe,IAAA;AAAA,UACf,SAAA,EAAU,qLAAA;AAAA,UAEV,QAAA,kBAAAA,cAAA;AAAA,YAACC,sBAAA;AAAA,YAAA;AAAA,cACC,IAAA,EAAM,OAAO,cAAA,GAAiB,YAAA;AAAA,cAC9B,SAAA,EAAU;AAAA;AAAA;AACZ;AAAA;AACF,KAAA,EACF,CAAA;AAAA,IAEC,IAAA,oBACCD,cAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAU,eAAA;AAAA,QACV,KAAA,EAAO,EAAE,SAAA,EAAW,aAAA,EAAc;AAAA,QAEjC;AAAA;AAAA;AACH,GAAA,EAEJ,CAAA;AAEJ","file":"chunk-T6IXZZBQ.cjs","sourcesContent":["import { type ReactNode, useCallback } from \"react\";\nimport { Icon } from \"../Icon\";\n\n/**\n * ChatDrawer — tabbed, collapsible panel that sits *above* a `PromptInput`\n * (via the input's `aboveInput` slot) so the drawer and composer share one\n * rounded shell. Each tab gets a numbered chip and a content panel; only\n * one panel renders at a time.\n *\n * <PromptInput\n * aboveInput={\n * <ChatDrawer\n * tabs={[\n * { id: \"files\", label: \"Files\" },\n * { id: \"tools\", label: \"Chat Tools\" },\n * { id: \"prompts\", label: \"Chat Prompts\" },\n * { id: \"deal\", label: \"IBM Analytics Platform\" },\n * ]}\n * activeTabId={tab}\n * onTabChange={setTab}\n * open={open}\n * onToggle={setOpen}\n * >\n * {tab === \"tools\" && <ToolsGrid />}\n * {tab === \"deal\" && <DealCard />}\n * </ChatDrawer>\n * }\n * budgetTokens={200_000}\n * onSubmit={(text) => send(text)}\n * />\n *\n * The drawer is purely presentational and slot-driven — you decide what\n * each tab shows. Tab order in the numbered chips is the order you pass.\n */\n\nexport type ChatDrawerTab = {\n /** Stable id — used as the React key and as `activeTabId`. */\n id: string;\n /** Human label rendered on the chip. */\n label: string;\n /**\n * Optional override for the numbered prefix (defaults to position +1).\n * Set to `null` to hide the number entirely (e.g. for a context-specific\n * tab like the deal one in the screenshots).\n */\n number?: number | null;\n};\n\nexport interface ChatDrawerProps {\n tabs: ChatDrawerTab[];\n activeTabId: string;\n onTabChange: (id: string) => void;\n /** Body open/closed. Default true. */\n open?: boolean;\n /** Called when the chevron is clicked. */\n onToggle?: (open: boolean) => void;\n /** Body content for the active tab. */\n children?: ReactNode;\n /** Min height of the body when open, in px. Default 140. */\n minBodyHeight?: number;\n className?: string;\n}\n\nexport function ChatDrawer({\n tabs,\n activeTabId,\n onTabChange,\n open = true,\n onToggle,\n children,\n minBodyHeight = 140,\n className,\n}: ChatDrawerProps) {\n const handleToggle = useCallback(() => {\n onToggle?.(!open);\n }, [onToggle, open]);\n\n return (\n <div className={className}>\n <div className=\"flex items-center gap-1.5 px-2.5 py-2\">\n <div className=\"flex flex-wrap items-center gap-1.5\">\n {tabs.map((tab, i) => {\n const active = tab.id === activeTabId;\n const number = tab.number === null ? null : tab.number ?? i + 1;\n return (\n <button\n key={tab.id}\n type=\"button\"\n onClick={() => onTabChange(tab.id)}\n className={[\n \"group inline-flex items-center gap-1.5 rounded-full border px-2.5 py-1 text-[12px] font-medium transition\",\n active\n ? \"border-violet-500 bg-violet-500 text-white\"\n : \"border-zinc-200 bg-transparent text-zinc-700 hover:border-zinc-300 hover:bg-zinc-50 dark:border-zinc-700 dark:text-zinc-300 dark:hover:border-zinc-600 dark:hover:bg-zinc-800\",\n ].join(\" \")}\n aria-pressed={active}\n >\n {number !== null && (\n <span\n className={[\n \"inline-flex h-4 w-4 items-center justify-center rounded-full text-[10px] font-semibold\",\n active\n ? \"bg-white/20 text-white\"\n : \"bg-zinc-200 text-zinc-600 group-hover:bg-zinc-300 dark:bg-zinc-700 dark:text-zinc-300\",\n ].join(\" \")}\n >\n {number}\n </span>\n )}\n <span className=\"truncate max-w-[180px]\">{tab.label}</span>\n </button>\n );\n })}\n </div>\n <button\n type=\"button\"\n onClick={handleToggle}\n aria-label={open ? \"Collapse drawer\" : \"Expand drawer\"}\n aria-expanded={open}\n className=\"ml-auto inline-flex h-6 w-6 items-center justify-center rounded-full text-zinc-400 transition hover:bg-zinc-100 hover:text-zinc-700 dark:hover:bg-zinc-800 dark:hover:text-zinc-200\"\n >\n <Icon\n name={open ? \"chevron-down\" : \"chevron-up\"}\n className=\"h-3.5 w-3.5\"\n />\n </button>\n </div>\n\n {open && (\n <div\n className=\"px-2.5 pb-2.5\"\n style={{ minHeight: minBodyHeight }}\n >\n {children}\n </div>\n )}\n </div>\n );\n}\n"]}