@elabs-ai/components-ui 4.1.0 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1547) hide show
  1. package/README.md +2 -1
  2. package/dist/chunk-22Z735L6.js +18 -0
  3. package/dist/chunk-22Z735L6.js.map +1 -0
  4. package/dist/chunk-23E62DNM.js +2 -0
  5. package/dist/chunk-23E62DNM.js.map +1 -0
  6. package/dist/chunk-2AABRSIN.js +2 -0
  7. package/dist/chunk-2AABRSIN.js.map +1 -0
  8. package/dist/chunk-2HXVFC4B.js +44 -0
  9. package/dist/chunk-2HXVFC4B.js.map +1 -0
  10. package/dist/chunk-2SBYBN45.js +2 -0
  11. package/dist/chunk-2SBYBN45.js.map +1 -0
  12. package/dist/chunk-333EWYWL.js +385 -0
  13. package/dist/chunk-333EWYWL.js.map +1 -0
  14. package/dist/chunk-35DUHYPC.js +59 -0
  15. package/dist/chunk-35DUHYPC.js.map +1 -0
  16. package/dist/chunk-35ZTVB35.js +76 -0
  17. package/dist/chunk-35ZTVB35.js.map +1 -0
  18. package/dist/chunk-36VULFFV.js +2 -0
  19. package/dist/chunk-36VULFFV.js.map +1 -0
  20. package/dist/chunk-3B7W334A.js +229 -0
  21. package/dist/chunk-3B7W334A.js.map +1 -0
  22. package/dist/chunk-3EKVSKGJ.js +256 -0
  23. package/dist/chunk-3EKVSKGJ.js.map +1 -0
  24. package/dist/chunk-3JAEQNCB.js +60 -0
  25. package/dist/chunk-3JAEQNCB.js.map +1 -0
  26. package/dist/chunk-3LWAAK3J.js +140 -0
  27. package/dist/chunk-3LWAAK3J.js.map +1 -0
  28. package/dist/chunk-3OSGTUN2.js +2 -0
  29. package/dist/chunk-3OSGTUN2.js.map +1 -0
  30. package/dist/chunk-3P7SRCDB.js +23 -0
  31. package/dist/chunk-3P7SRCDB.js.map +1 -0
  32. package/dist/chunk-45ICJ3EV.js +2 -0
  33. package/dist/chunk-45ICJ3EV.js.map +1 -0
  34. package/dist/chunk-4ACT7RLU.js +2 -0
  35. package/dist/chunk-4ACT7RLU.js.map +1 -0
  36. package/dist/chunk-4E73UAFA.js +296 -0
  37. package/dist/chunk-4E73UAFA.js.map +1 -0
  38. package/dist/chunk-4GQFIJAE.js +197 -0
  39. package/dist/chunk-4GQFIJAE.js.map +1 -0
  40. package/dist/chunk-4HTVJZVG.js +2 -0
  41. package/dist/chunk-4HTVJZVG.js.map +1 -0
  42. package/dist/chunk-4KDA5MDC.js +2 -0
  43. package/dist/chunk-4KDA5MDC.js.map +1 -0
  44. package/dist/chunk-4PITSMJ3.js +52 -0
  45. package/dist/chunk-4PITSMJ3.js.map +1 -0
  46. package/dist/chunk-4PXDZR2W.js +2 -0
  47. package/dist/chunk-4PXDZR2W.js.map +1 -0
  48. package/dist/chunk-4UWOADYM.js +2 -0
  49. package/dist/chunk-4UWOADYM.js.map +1 -0
  50. package/dist/chunk-4W3MVVKN.js +66 -0
  51. package/dist/chunk-4W3MVVKN.js.map +1 -0
  52. package/dist/chunk-4YOFSGHD.js +2 -0
  53. package/dist/chunk-4YOFSGHD.js.map +1 -0
  54. package/dist/chunk-533R5EKD.js +87 -0
  55. package/dist/chunk-533R5EKD.js.map +1 -0
  56. package/dist/chunk-545HI223.js +2 -0
  57. package/dist/chunk-545HI223.js.map +1 -0
  58. package/dist/chunk-57C25JYV.js +170 -0
  59. package/dist/chunk-57C25JYV.js.map +1 -0
  60. package/dist/chunk-5AWXGBSH.js +82 -0
  61. package/dist/chunk-5AWXGBSH.js.map +1 -0
  62. package/dist/chunk-5G2DDMHR.js +2 -0
  63. package/dist/chunk-5G2DDMHR.js.map +1 -0
  64. package/dist/chunk-5HBMI2DO.js +42 -0
  65. package/dist/chunk-5HBMI2DO.js.map +1 -0
  66. package/dist/chunk-5LCN5Q2L.js +23 -0
  67. package/dist/chunk-5LCN5Q2L.js.map +1 -0
  68. package/dist/chunk-5P4BSHIG.js +2 -0
  69. package/dist/chunk-5P4BSHIG.js.map +1 -0
  70. package/dist/chunk-5RC32MZH.js +161 -0
  71. package/dist/chunk-5RC32MZH.js.map +1 -0
  72. package/dist/chunk-5SHHIQVA.js +22 -0
  73. package/dist/chunk-5SHHIQVA.js.map +1 -0
  74. package/dist/chunk-5V5J7APL.js +27 -0
  75. package/dist/chunk-5V5J7APL.js.map +1 -0
  76. package/dist/chunk-5YZLOAKR.js +2 -0
  77. package/dist/chunk-5YZLOAKR.js.map +1 -0
  78. package/dist/chunk-5Z55AFOW.js +128 -0
  79. package/dist/chunk-5Z55AFOW.js.map +1 -0
  80. package/dist/chunk-653ZIWX6.js +2 -0
  81. package/dist/chunk-653ZIWX6.js.map +1 -0
  82. package/dist/chunk-6DHG7JVP.js +2 -0
  83. package/dist/chunk-6DHG7JVP.js.map +1 -0
  84. package/dist/chunk-6HGS5Z2Z.js +110 -0
  85. package/dist/chunk-6HGS5Z2Z.js.map +1 -0
  86. package/dist/chunk-6NKILKS6.js +35 -0
  87. package/dist/chunk-6NKILKS6.js.map +1 -0
  88. package/dist/chunk-6OFWWIEG.js +50 -0
  89. package/dist/chunk-6OFWWIEG.js.map +1 -0
  90. package/dist/chunk-6OPDRLMU.js +158 -0
  91. package/dist/chunk-6OPDRLMU.js.map +1 -0
  92. package/dist/chunk-6QU7OVFA.js +357 -0
  93. package/dist/chunk-6QU7OVFA.js.map +1 -0
  94. package/dist/chunk-6ROQKB4U.js +2 -0
  95. package/dist/chunk-6ROQKB4U.js.map +1 -0
  96. package/dist/chunk-6S43VAN7.js +2 -0
  97. package/dist/chunk-6S43VAN7.js.map +1 -0
  98. package/dist/chunk-6TJVJPNU.js +1321 -0
  99. package/dist/chunk-6TJVJPNU.js.map +1 -0
  100. package/dist/chunk-6VLJL7Q4.js +2 -0
  101. package/dist/chunk-6VLJL7Q4.js.map +1 -0
  102. package/dist/chunk-7G63B2B7.js +189 -0
  103. package/dist/chunk-7G63B2B7.js.map +1 -0
  104. package/dist/chunk-7P24I5OL.js +23 -0
  105. package/dist/chunk-7P24I5OL.js.map +1 -0
  106. package/dist/chunk-7PS5MKVH.js +97 -0
  107. package/dist/chunk-7PS5MKVH.js.map +1 -0
  108. package/dist/chunk-7WIHVGYL.js +2 -0
  109. package/dist/chunk-7WIHVGYL.js.map +1 -0
  110. package/dist/chunk-7WXDSTNR.js +62 -0
  111. package/dist/chunk-7WXDSTNR.js.map +1 -0
  112. package/dist/chunk-A43B4IT7.js +395 -0
  113. package/dist/chunk-A43B4IT7.js.map +1 -0
  114. package/dist/chunk-A47AZPCL.js +35 -0
  115. package/dist/chunk-A47AZPCL.js.map +1 -0
  116. package/dist/chunk-AA3SPDJU.js +2 -0
  117. package/dist/chunk-AA3SPDJU.js.map +1 -0
  118. package/dist/chunk-AC7X3D2M.js +2 -0
  119. package/dist/chunk-AC7X3D2M.js.map +1 -0
  120. package/dist/chunk-AE6UDP36.js +2 -0
  121. package/dist/chunk-AE6UDP36.js.map +1 -0
  122. package/dist/chunk-AFEFAGPW.js +2 -0
  123. package/dist/chunk-AFEFAGPW.js.map +1 -0
  124. package/dist/chunk-AFJCS2WV.js +95 -0
  125. package/dist/chunk-AFJCS2WV.js.map +1 -0
  126. package/dist/chunk-AQNLEP5F.js +2 -0
  127. package/dist/chunk-AQNLEP5F.js.map +1 -0
  128. package/dist/chunk-AUQVJ7KO.js +2 -0
  129. package/dist/chunk-AUQVJ7KO.js.map +1 -0
  130. package/dist/chunk-AXKZBRZK.js +32 -0
  131. package/dist/chunk-AXKZBRZK.js.map +1 -0
  132. package/dist/chunk-AZEABCK4.js +30 -0
  133. package/dist/chunk-AZEABCK4.js.map +1 -0
  134. package/dist/chunk-B23VW24W.js +2 -0
  135. package/dist/chunk-B23VW24W.js.map +1 -0
  136. package/dist/chunk-B2RSOLLO.js +2 -0
  137. package/dist/chunk-B2RSOLLO.js.map +1 -0
  138. package/dist/chunk-B5QQLMEE.js +31 -0
  139. package/dist/chunk-B5QQLMEE.js.map +1 -0
  140. package/dist/chunk-BLNXHETI.js +163 -0
  141. package/dist/chunk-BLNXHETI.js.map +1 -0
  142. package/dist/chunk-BM6NGS3A.js +201 -0
  143. package/dist/chunk-BM6NGS3A.js.map +1 -0
  144. package/dist/chunk-BN4CKDFU.js +989 -0
  145. package/dist/chunk-BN4CKDFU.js.map +1 -0
  146. package/dist/chunk-BPXLHGWI.js +54 -0
  147. package/dist/chunk-BPXLHGWI.js.map +1 -0
  148. package/dist/chunk-BTBYNKT4.js +2 -0
  149. package/dist/chunk-BTBYNKT4.js.map +1 -0
  150. package/dist/chunk-BWL7HWEF.js +325 -0
  151. package/dist/chunk-BWL7HWEF.js.map +1 -0
  152. package/dist/chunk-BZQF5QCN.js +18 -0
  153. package/dist/chunk-BZQF5QCN.js.map +1 -0
  154. package/dist/chunk-C2AQEEFB.js +2 -0
  155. package/dist/chunk-C2AQEEFB.js.map +1 -0
  156. package/dist/chunk-C753P3VJ.js +2 -0
  157. package/dist/chunk-C753P3VJ.js.map +1 -0
  158. package/dist/chunk-CDE74W6O.js +2 -0
  159. package/dist/chunk-CDE74W6O.js.map +1 -0
  160. package/dist/chunk-CEQER4CV.js +2 -0
  161. package/dist/chunk-CEQER4CV.js.map +1 -0
  162. package/dist/chunk-CQ5CH3SB.js +55 -0
  163. package/dist/chunk-CQ5CH3SB.js.map +1 -0
  164. package/dist/chunk-CRGGGHAM.js +2 -0
  165. package/dist/chunk-CRGGGHAM.js.map +1 -0
  166. package/dist/chunk-CRVB4SLG.js +2 -0
  167. package/dist/chunk-CRVB4SLG.js.map +1 -0
  168. package/dist/chunk-CT6XJIPY.js +2 -0
  169. package/dist/chunk-CT6XJIPY.js.map +1 -0
  170. package/dist/chunk-CY624JOL.js +2 -0
  171. package/dist/chunk-CY624JOL.js.map +1 -0
  172. package/dist/chunk-D3C3VVCX.js +38 -0
  173. package/dist/chunk-D3C3VVCX.js.map +1 -0
  174. package/dist/chunk-D53EN4Q6.js +2 -0
  175. package/dist/chunk-D53EN4Q6.js.map +1 -0
  176. package/dist/chunk-DCHYNTHI.js +11 -0
  177. package/dist/chunk-DCHYNTHI.js.map +1 -0
  178. package/dist/chunk-DCI6IOJX.js +236 -0
  179. package/dist/chunk-DCI6IOJX.js.map +1 -0
  180. package/dist/chunk-DFYPQ52O.js +476 -0
  181. package/dist/chunk-DFYPQ52O.js.map +1 -0
  182. package/dist/chunk-DIQJODQR.js +2 -0
  183. package/dist/chunk-DIQJODQR.js.map +1 -0
  184. package/dist/chunk-DSGTH6JW.js +2 -0
  185. package/dist/chunk-DSGTH6JW.js.map +1 -0
  186. package/dist/chunk-DT6RNLCP.js +32 -0
  187. package/dist/chunk-DT6RNLCP.js.map +1 -0
  188. package/dist/chunk-DU6ITAJL.js +2 -0
  189. package/dist/chunk-DU6ITAJL.js.map +1 -0
  190. package/dist/chunk-DUF2VZON.js +36 -0
  191. package/dist/chunk-DUF2VZON.js.map +1 -0
  192. package/dist/chunk-DXDLTYTT.js +2 -0
  193. package/dist/chunk-DXDLTYTT.js.map +1 -0
  194. package/dist/chunk-E3ES2KR6.js +55 -0
  195. package/dist/chunk-E3ES2KR6.js.map +1 -0
  196. package/dist/chunk-EAFPUZ46.js +2 -0
  197. package/dist/chunk-EAFPUZ46.js.map +1 -0
  198. package/dist/chunk-EBDOKU5K.js +2 -0
  199. package/dist/chunk-EBDOKU5K.js.map +1 -0
  200. package/dist/chunk-ECCNRCC4.js +74 -0
  201. package/dist/chunk-ECCNRCC4.js.map +1 -0
  202. package/dist/chunk-EDE73Q6Z.js +2 -0
  203. package/dist/chunk-EDE73Q6Z.js.map +1 -0
  204. package/dist/chunk-EHGIW7GA.js +190 -0
  205. package/dist/chunk-EHGIW7GA.js.map +1 -0
  206. package/dist/chunk-EJQYE4MY.js +100 -0
  207. package/dist/chunk-EJQYE4MY.js.map +1 -0
  208. package/dist/chunk-EKY3A5LO.js +133 -0
  209. package/dist/chunk-EKY3A5LO.js.map +1 -0
  210. package/dist/chunk-EL3OXVOW.js +31 -0
  211. package/dist/chunk-EL3OXVOW.js.map +1 -0
  212. package/dist/chunk-EP3U7OQ3.js +18 -0
  213. package/dist/chunk-EP3U7OQ3.js.map +1 -0
  214. package/dist/chunk-EY2PGOG3.js +246 -0
  215. package/dist/chunk-EY2PGOG3.js.map +1 -0
  216. package/dist/chunk-FAOX6A5D.js +2 -0
  217. package/dist/chunk-FAOX6A5D.js.map +1 -0
  218. package/dist/chunk-FBJ2JSRA.js +47 -0
  219. package/dist/chunk-FBJ2JSRA.js.map +1 -0
  220. package/dist/chunk-FDJ77DTR.js +2 -0
  221. package/dist/chunk-FDJ77DTR.js.map +1 -0
  222. package/dist/chunk-FDPONOOT.js +93 -0
  223. package/dist/chunk-FDPONOOT.js.map +1 -0
  224. package/dist/chunk-FHDJKH2A.js +2 -0
  225. package/dist/chunk-FHDJKH2A.js.map +1 -0
  226. package/dist/chunk-FINAKMC6.js +796 -0
  227. package/dist/chunk-FINAKMC6.js.map +1 -0
  228. package/dist/chunk-FKUP7QRJ.js +54 -0
  229. package/dist/chunk-FKUP7QRJ.js.map +1 -0
  230. package/dist/chunk-FPLZ24MK.js +2 -0
  231. package/dist/chunk-FPLZ24MK.js.map +1 -0
  232. package/dist/chunk-FRFSDZIN.js +2 -0
  233. package/dist/chunk-FRFSDZIN.js.map +1 -0
  234. package/dist/chunk-FYCCNQXQ.js +173 -0
  235. package/dist/chunk-FYCCNQXQ.js.map +1 -0
  236. package/dist/chunk-G3OTDYCD.js +53 -0
  237. package/dist/chunk-G3OTDYCD.js.map +1 -0
  238. package/dist/chunk-G72UOVKS.js +2 -0
  239. package/dist/chunk-G72UOVKS.js.map +1 -0
  240. package/dist/chunk-GAI4NEPU.js +151 -0
  241. package/dist/chunk-GAI4NEPU.js.map +1 -0
  242. package/dist/chunk-GRWGNWIJ.js +187 -0
  243. package/dist/chunk-GRWGNWIJ.js.map +1 -0
  244. package/dist/chunk-GV6GQXKX.js +176 -0
  245. package/dist/chunk-GV6GQXKX.js.map +1 -0
  246. package/dist/chunk-H5UA5JW4.js +140 -0
  247. package/dist/chunk-H5UA5JW4.js.map +1 -0
  248. package/dist/chunk-H5XSI63P.js +2 -0
  249. package/dist/chunk-H5XSI63P.js.map +1 -0
  250. package/dist/chunk-HANBQNW3.js +1498 -0
  251. package/dist/chunk-HANBQNW3.js.map +1 -0
  252. package/dist/chunk-HCU2JHPH.js +169 -0
  253. package/dist/chunk-HCU2JHPH.js.map +1 -0
  254. package/dist/chunk-HDDXP2J7.js +2 -0
  255. package/dist/chunk-HDDXP2J7.js.map +1 -0
  256. package/dist/chunk-HDS64Z5L.js +54 -0
  257. package/dist/chunk-HDS64Z5L.js.map +1 -0
  258. package/dist/chunk-HHVULJGX.js +2 -0
  259. package/dist/chunk-HHVULJGX.js.map +1 -0
  260. package/dist/chunk-HLMFRCFE.js +2 -0
  261. package/dist/chunk-HLMFRCFE.js.map +1 -0
  262. package/dist/chunk-HPUPDT4Q.js +2 -0
  263. package/dist/chunk-HPUPDT4Q.js.map +1 -0
  264. package/dist/chunk-HRYH7XQP.js +209 -0
  265. package/dist/chunk-HRYH7XQP.js.map +1 -0
  266. package/dist/chunk-HVFYAQLK.js +101 -0
  267. package/dist/chunk-HVFYAQLK.js.map +1 -0
  268. package/dist/chunk-HZPNST7D.js +2 -0
  269. package/dist/chunk-HZPNST7D.js.map +1 -0
  270. package/dist/chunk-I6O6ACCH.js +2 -0
  271. package/dist/chunk-I6O6ACCH.js.map +1 -0
  272. package/dist/chunk-IGP5E4FC.js +201 -0
  273. package/dist/chunk-IGP5E4FC.js.map +1 -0
  274. package/dist/chunk-IHMFEPIT.js +123 -0
  275. package/dist/chunk-IHMFEPIT.js.map +1 -0
  276. package/dist/chunk-IM5VJP6T.js +2 -0
  277. package/dist/chunk-IM5VJP6T.js.map +1 -0
  278. package/dist/chunk-IRUZDWJ3.js +218 -0
  279. package/dist/chunk-IRUZDWJ3.js.map +1 -0
  280. package/dist/chunk-ISWUCXEZ.js +2 -0
  281. package/dist/chunk-ISWUCXEZ.js.map +1 -0
  282. package/dist/chunk-ITFDGFOT.js +31 -0
  283. package/dist/chunk-ITFDGFOT.js.map +1 -0
  284. package/dist/chunk-IUQ474IC.js +2 -0
  285. package/dist/chunk-IUQ474IC.js.map +1 -0
  286. package/dist/chunk-IY23F2Y5.js +2 -0
  287. package/dist/chunk-IY23F2Y5.js.map +1 -0
  288. package/dist/chunk-IZJOZJDL.js +75 -0
  289. package/dist/chunk-IZJOZJDL.js.map +1 -0
  290. package/dist/chunk-J2P4YZLC.js +85 -0
  291. package/dist/chunk-J2P4YZLC.js.map +1 -0
  292. package/dist/chunk-JCRBDA66.js +2 -0
  293. package/dist/chunk-JCRBDA66.js.map +1 -0
  294. package/dist/chunk-JGS2IHER.js +140 -0
  295. package/dist/chunk-JGS2IHER.js.map +1 -0
  296. package/dist/chunk-JNWXHPZG.js +24 -0
  297. package/dist/chunk-JNWXHPZG.js.map +1 -0
  298. package/dist/chunk-JWWJ2Z5C.js +2 -0
  299. package/dist/chunk-JWWJ2Z5C.js.map +1 -0
  300. package/dist/chunk-K2GLXCTG.js +2 -0
  301. package/dist/chunk-K2GLXCTG.js.map +1 -0
  302. package/dist/chunk-K6YRTASS.js +55 -0
  303. package/dist/chunk-K6YRTASS.js.map +1 -0
  304. package/dist/chunk-KAAJL2HA.js +327 -0
  305. package/dist/chunk-KAAJL2HA.js.map +1 -0
  306. package/dist/chunk-KBNWM27Q.js +48 -0
  307. package/dist/chunk-KBNWM27Q.js.map +1 -0
  308. package/dist/chunk-KOVHUAHG.js +164 -0
  309. package/dist/chunk-KOVHUAHG.js.map +1 -0
  310. package/dist/chunk-KRVSD4OK.js +2 -0
  311. package/dist/chunk-KRVSD4OK.js.map +1 -0
  312. package/dist/chunk-KTH3GWAL.js +116 -0
  313. package/dist/chunk-KTH3GWAL.js.map +1 -0
  314. package/dist/chunk-KUAVM54Y.js +30 -0
  315. package/dist/chunk-KUAVM54Y.js.map +1 -0
  316. package/dist/chunk-KWQ6HV5Z.js +97 -0
  317. package/dist/chunk-KWQ6HV5Z.js.map +1 -0
  318. package/dist/chunk-KZWC6JCI.js +177 -0
  319. package/dist/chunk-KZWC6JCI.js.map +1 -0
  320. package/dist/chunk-L37QZALU.js +17 -0
  321. package/dist/chunk-L37QZALU.js.map +1 -0
  322. package/dist/chunk-L3SHPHLK.js +35 -0
  323. package/dist/chunk-L3SHPHLK.js.map +1 -0
  324. package/dist/chunk-L66VJIRD.js +2 -0
  325. package/dist/chunk-L66VJIRD.js.map +1 -0
  326. package/dist/chunk-LDOCY4SU.js +68 -0
  327. package/dist/chunk-LDOCY4SU.js.map +1 -0
  328. package/dist/chunk-LJGWA2XL.js +2 -0
  329. package/dist/chunk-LJGWA2XL.js.map +1 -0
  330. package/dist/chunk-LLQWLZ75.js +2 -0
  331. package/dist/chunk-LLQWLZ75.js.map +1 -0
  332. package/dist/chunk-LMO3QK7Q.js +137 -0
  333. package/dist/chunk-LMO3QK7Q.js.map +1 -0
  334. package/dist/chunk-LOSXINSS.js +100 -0
  335. package/dist/chunk-LOSXINSS.js.map +1 -0
  336. package/dist/chunk-LR2CU7HK.js +41 -0
  337. package/dist/chunk-LR2CU7HK.js.map +1 -0
  338. package/dist/chunk-LSYVAOSH.js +2 -0
  339. package/dist/chunk-LSYVAOSH.js.map +1 -0
  340. package/dist/chunk-LVRULYU4.js +400 -0
  341. package/dist/chunk-LVRULYU4.js.map +1 -0
  342. package/dist/chunk-LXW3GNF7.js +201 -0
  343. package/dist/chunk-LXW3GNF7.js.map +1 -0
  344. package/dist/chunk-LYVBDMDQ.js +2 -0
  345. package/dist/chunk-LYVBDMDQ.js.map +1 -0
  346. package/dist/chunk-M3WSUFD4.js +2 -0
  347. package/dist/chunk-M3WSUFD4.js.map +1 -0
  348. package/dist/chunk-MGAXCPT7.js +87 -0
  349. package/dist/chunk-MGAXCPT7.js.map +1 -0
  350. package/dist/chunk-MIXCXZWT.js +2 -0
  351. package/dist/chunk-MIXCXZWT.js.map +1 -0
  352. package/dist/chunk-MLGBLKUH.js +2 -0
  353. package/dist/chunk-MLGBLKUH.js.map +1 -0
  354. package/dist/chunk-MNS2VWHD.js +2 -0
  355. package/dist/chunk-MNS2VWHD.js.map +1 -0
  356. package/dist/chunk-MPMMU3QI.js +2 -0
  357. package/dist/chunk-MPMMU3QI.js.map +1 -0
  358. package/dist/chunk-MRWOHWEH.js +2 -0
  359. package/dist/chunk-MRWOHWEH.js.map +1 -0
  360. package/dist/chunk-MZDL7N52.js +2 -0
  361. package/dist/chunk-MZDL7N52.js.map +1 -0
  362. package/dist/chunk-N44PNGDS.js +169 -0
  363. package/dist/chunk-N44PNGDS.js.map +1 -0
  364. package/dist/chunk-N7PJTMRL.js +2 -0
  365. package/dist/chunk-N7PJTMRL.js.map +1 -0
  366. package/dist/chunk-NBMF7SIS.js +35 -0
  367. package/dist/chunk-NBMF7SIS.js.map +1 -0
  368. package/dist/chunk-NJAGSGPF.js +245 -0
  369. package/dist/chunk-NJAGSGPF.js.map +1 -0
  370. package/dist/chunk-NMGNXW3J.js +98 -0
  371. package/dist/chunk-NMGNXW3J.js.map +1 -0
  372. package/dist/chunk-NQY3QNLR.js +80 -0
  373. package/dist/chunk-NQY3QNLR.js.map +1 -0
  374. package/dist/chunk-NRNIUM75.js +2 -0
  375. package/dist/chunk-NRNIUM75.js.map +1 -0
  376. package/dist/chunk-NRSSSVWB.js +61 -0
  377. package/dist/chunk-NRSSSVWB.js.map +1 -0
  378. package/dist/chunk-NTTSHOOK.js +78 -0
  379. package/dist/chunk-NTTSHOOK.js.map +1 -0
  380. package/dist/chunk-O3JWMB6O.js +20 -0
  381. package/dist/chunk-O3JWMB6O.js.map +1 -0
  382. package/dist/chunk-OBEJUAN6.js +246 -0
  383. package/dist/chunk-OBEJUAN6.js.map +1 -0
  384. package/dist/chunk-OEPN373X.js +2 -0
  385. package/dist/chunk-OEPN373X.js.map +1 -0
  386. package/dist/chunk-OITCRC5D.js +2 -0
  387. package/dist/chunk-OITCRC5D.js.map +1 -0
  388. package/dist/chunk-OKV3N7QK.js +2 -0
  389. package/dist/chunk-OKV3N7QK.js.map +1 -0
  390. package/dist/chunk-ON2E7XHD.js +51 -0
  391. package/dist/chunk-ON2E7XHD.js.map +1 -0
  392. package/dist/chunk-OPMMD25Z.js +218 -0
  393. package/dist/chunk-OPMMD25Z.js.map +1 -0
  394. package/dist/chunk-OR4NVFPH.js +2 -0
  395. package/dist/chunk-OR4NVFPH.js.map +1 -0
  396. package/dist/chunk-OV4GQOLC.js +73 -0
  397. package/dist/chunk-OV4GQOLC.js.map +1 -0
  398. package/dist/chunk-OYKS7YHE.js +2 -0
  399. package/dist/chunk-OYKS7YHE.js.map +1 -0
  400. package/dist/chunk-OYM3NHSD.js +74 -0
  401. package/dist/chunk-OYM3NHSD.js.map +1 -0
  402. package/dist/chunk-OZTM6PYF.js +30 -0
  403. package/dist/chunk-OZTM6PYF.js.map +1 -0
  404. package/dist/chunk-PHAENHGL.js +19 -0
  405. package/dist/chunk-PHAENHGL.js.map +1 -0
  406. package/dist/chunk-PLCQZBZS.js +63 -0
  407. package/dist/chunk-PLCQZBZS.js.map +1 -0
  408. package/dist/chunk-PP7POY7C.js +110 -0
  409. package/dist/chunk-PP7POY7C.js.map +1 -0
  410. package/dist/chunk-PSBNQZB4.js +2 -0
  411. package/dist/chunk-PSBNQZB4.js.map +1 -0
  412. package/dist/chunk-PYPNGKRD.js +355 -0
  413. package/dist/chunk-PYPNGKRD.js.map +1 -0
  414. package/dist/chunk-QDJHUNBQ.js +2 -0
  415. package/dist/chunk-QDJHUNBQ.js.map +1 -0
  416. package/dist/chunk-QDTGDYMM.js +77 -0
  417. package/dist/chunk-QDTGDYMM.js.map +1 -0
  418. package/dist/chunk-QF6UWWDY.js +125 -0
  419. package/dist/chunk-QF6UWWDY.js.map +1 -0
  420. package/dist/chunk-QGX37P5L.js +24 -0
  421. package/dist/chunk-QGX37P5L.js.map +1 -0
  422. package/dist/chunk-QNEOO22E.js +75 -0
  423. package/dist/chunk-QNEOO22E.js.map +1 -0
  424. package/dist/chunk-QODOFLHL.js +2 -0
  425. package/dist/chunk-QODOFLHL.js.map +1 -0
  426. package/dist/chunk-QRGYKV4J.js +2 -0
  427. package/dist/chunk-QRGYKV4J.js.map +1 -0
  428. package/dist/chunk-QTIKGWU4.js +91 -0
  429. package/dist/chunk-QTIKGWU4.js.map +1 -0
  430. package/dist/chunk-R3SYH7RG.js +782 -0
  431. package/dist/chunk-R3SYH7RG.js.map +1 -0
  432. package/dist/chunk-R5JYMCEA.js +2 -0
  433. package/dist/chunk-R5JYMCEA.js.map +1 -0
  434. package/dist/chunk-R7DDZIE3.js +232 -0
  435. package/dist/chunk-R7DDZIE3.js.map +1 -0
  436. package/dist/chunk-RB5AWLDJ.js +26 -0
  437. package/dist/chunk-RB5AWLDJ.js.map +1 -0
  438. package/dist/chunk-RF7JSNXJ.js +2 -0
  439. package/dist/chunk-RF7JSNXJ.js.map +1 -0
  440. package/dist/chunk-RHXVQZOW.js +2 -0
  441. package/dist/chunk-RHXVQZOW.js.map +1 -0
  442. package/dist/chunk-RM5JIUVW.js +74 -0
  443. package/dist/chunk-RM5JIUVW.js.map +1 -0
  444. package/dist/chunk-RMSMTLXH.js +2 -0
  445. package/dist/chunk-RMSMTLXH.js.map +1 -0
  446. package/dist/chunk-RNC4M6SG.js +85 -0
  447. package/dist/chunk-RNC4M6SG.js.map +1 -0
  448. package/dist/chunk-RRYWMYGI.js +14 -0
  449. package/dist/chunk-RRYWMYGI.js.map +1 -0
  450. package/dist/chunk-RRZUMIYG.js +93 -0
  451. package/dist/chunk-RRZUMIYG.js.map +1 -0
  452. package/dist/chunk-RTHCX2TG.js +59 -0
  453. package/dist/chunk-RTHCX2TG.js.map +1 -0
  454. package/dist/chunk-RWUKMJYA.js +39 -0
  455. package/dist/chunk-RWUKMJYA.js.map +1 -0
  456. package/dist/chunk-SMTAPQEQ.js +2 -0
  457. package/dist/chunk-SMTAPQEQ.js.map +1 -0
  458. package/dist/chunk-SS6EOZKZ.js +2 -0
  459. package/dist/chunk-SS6EOZKZ.js.map +1 -0
  460. package/dist/chunk-T2XEMEN2.js +2 -0
  461. package/dist/chunk-T2XEMEN2.js.map +1 -0
  462. package/dist/chunk-T4JNXV75.js +125 -0
  463. package/dist/chunk-T4JNXV75.js.map +1 -0
  464. package/dist/chunk-T7JOWG2A.js +10 -0
  465. package/dist/chunk-T7JOWG2A.js.map +1 -0
  466. package/dist/chunk-TAQI4JTE.js +12 -0
  467. package/dist/chunk-TAQI4JTE.js.map +1 -0
  468. package/dist/chunk-TEKBTTP2.js +27 -0
  469. package/dist/chunk-TEKBTTP2.js.map +1 -0
  470. package/dist/chunk-TNOANK34.js +4483 -0
  471. package/dist/chunk-TNOANK34.js.map +1 -0
  472. package/dist/chunk-TU24Y4HN.js +178 -0
  473. package/dist/chunk-TU24Y4HN.js.map +1 -0
  474. package/dist/chunk-U26XDHMX.js +726 -0
  475. package/dist/chunk-U26XDHMX.js.map +1 -0
  476. package/dist/chunk-U4LHV5DS.js +36 -0
  477. package/dist/chunk-U4LHV5DS.js.map +1 -0
  478. package/dist/chunk-U7QYCYHC.js +2 -0
  479. package/dist/chunk-U7QYCYHC.js.map +1 -0
  480. package/dist/chunk-UANAVLMS.js +2 -0
  481. package/dist/chunk-UANAVLMS.js.map +1 -0
  482. package/dist/chunk-UCEVPLR5.js +2 -0
  483. package/dist/chunk-UCEVPLR5.js.map +1 -0
  484. package/dist/chunk-UCQDLRHR.js +31 -0
  485. package/dist/chunk-UCQDLRHR.js.map +1 -0
  486. package/dist/chunk-UFF7LLGU.js +2 -0
  487. package/dist/chunk-UFF7LLGU.js.map +1 -0
  488. package/dist/chunk-UG5TKXTK.js +2 -0
  489. package/dist/chunk-UG5TKXTK.js.map +1 -0
  490. package/dist/chunk-ULIDYFM7.js +192 -0
  491. package/dist/chunk-ULIDYFM7.js.map +1 -0
  492. package/dist/chunk-UPEMEBWH.js +186 -0
  493. package/dist/chunk-UPEMEBWH.js.map +1 -0
  494. package/dist/chunk-UQHWOPUY.js +61 -0
  495. package/dist/chunk-UQHWOPUY.js.map +1 -0
  496. package/dist/chunk-UQRYTMR7.js +2 -0
  497. package/dist/chunk-UQRYTMR7.js.map +1 -0
  498. package/dist/chunk-URVAZW44.js +323 -0
  499. package/dist/chunk-URVAZW44.js.map +1 -0
  500. package/dist/chunk-USI4LB3N.js +2 -0
  501. package/dist/chunk-USI4LB3N.js.map +1 -0
  502. package/dist/chunk-UXSV6RVS.js +31 -0
  503. package/dist/chunk-UXSV6RVS.js.map +1 -0
  504. package/dist/chunk-V2S5DINS.js +2 -0
  505. package/dist/chunk-V2S5DINS.js.map +1 -0
  506. package/dist/chunk-V3EQ6ACC.js +2 -0
  507. package/dist/chunk-V3EQ6ACC.js.map +1 -0
  508. package/dist/chunk-V4DDHF7S.js +147 -0
  509. package/dist/chunk-V4DDHF7S.js.map +1 -0
  510. package/dist/chunk-VA2OONPE.js +77 -0
  511. package/dist/chunk-VA2OONPE.js.map +1 -0
  512. package/dist/chunk-VFF3AN4Y.js +90 -0
  513. package/dist/chunk-VFF3AN4Y.js.map +1 -0
  514. package/dist/chunk-VH7GG77B.js +2 -0
  515. package/dist/chunk-VH7GG77B.js.map +1 -0
  516. package/dist/chunk-VHLPJ4XW.js +2 -0
  517. package/dist/chunk-VHLPJ4XW.js.map +1 -0
  518. package/dist/chunk-VLE5THFD.js +2 -0
  519. package/dist/chunk-VLE5THFD.js.map +1 -0
  520. package/dist/chunk-VORFRWM5.js +2 -0
  521. package/dist/chunk-VORFRWM5.js.map +1 -0
  522. package/dist/chunk-VQ2T3OEC.js +27 -0
  523. package/dist/chunk-VQ2T3OEC.js.map +1 -0
  524. package/dist/chunk-VRIAWF3A.js +25 -0
  525. package/dist/chunk-VRIAWF3A.js.map +1 -0
  526. package/dist/chunk-W6HCXQBH.js +198 -0
  527. package/dist/chunk-W6HCXQBH.js.map +1 -0
  528. package/dist/chunk-W7I2X6VI.js +2 -0
  529. package/dist/chunk-W7I2X6VI.js.map +1 -0
  530. package/dist/chunk-WCCCW4KD.js +140 -0
  531. package/dist/chunk-WCCCW4KD.js.map +1 -0
  532. package/dist/chunk-WNIVCHDP.js +2 -0
  533. package/dist/chunk-WNIVCHDP.js.map +1 -0
  534. package/dist/chunk-WOMO5CZ7.js +2 -0
  535. package/dist/chunk-WOMO5CZ7.js.map +1 -0
  536. package/dist/chunk-WTB4DDZP.js +163 -0
  537. package/dist/chunk-WTB4DDZP.js.map +1 -0
  538. package/dist/chunk-WW3CD7AU.js +118 -0
  539. package/dist/chunk-WW3CD7AU.js.map +1 -0
  540. package/dist/chunk-WX3LWMVU.js +81 -0
  541. package/dist/chunk-WX3LWMVU.js.map +1 -0
  542. package/dist/chunk-WYENWW3Y.js +2 -0
  543. package/dist/chunk-WYENWW3Y.js.map +1 -0
  544. package/dist/chunk-WZTFU6FJ.js +69 -0
  545. package/dist/chunk-WZTFU6FJ.js.map +1 -0
  546. package/dist/chunk-X4FE7UKP.js +2 -0
  547. package/dist/chunk-X4FE7UKP.js.map +1 -0
  548. package/dist/chunk-X6J4KKZZ.js +126 -0
  549. package/dist/chunk-X6J4KKZZ.js.map +1 -0
  550. package/dist/chunk-XAFRTZQF.js +56 -0
  551. package/dist/chunk-XAFRTZQF.js.map +1 -0
  552. package/dist/chunk-XGX3UFLD.js +2 -0
  553. package/dist/chunk-XGX3UFLD.js.map +1 -0
  554. package/dist/chunk-XGXCMA5M.js +2 -0
  555. package/dist/chunk-XGXCMA5M.js.map +1 -0
  556. package/dist/chunk-XJQADN6S.js +41 -0
  557. package/dist/chunk-XJQADN6S.js.map +1 -0
  558. package/dist/chunk-XMZ5LXL4.js +68 -0
  559. package/dist/chunk-XMZ5LXL4.js.map +1 -0
  560. package/dist/chunk-XONGYCW3.js +637 -0
  561. package/dist/chunk-XONGYCW3.js.map +1 -0
  562. package/dist/chunk-XYACSO57.js +36 -0
  563. package/dist/chunk-XYACSO57.js.map +1 -0
  564. package/dist/chunk-XYFEQHEM.js +2 -0
  565. package/dist/chunk-XYFEQHEM.js.map +1 -0
  566. package/dist/chunk-XZ23AFOP.js +26 -0
  567. package/dist/chunk-XZ23AFOP.js.map +1 -0
  568. package/dist/chunk-YACASX6X.js +54 -0
  569. package/dist/chunk-YACASX6X.js.map +1 -0
  570. package/dist/chunk-YCFOFNQF.js +28 -0
  571. package/dist/chunk-YCFOFNQF.js.map +1 -0
  572. package/dist/chunk-YIFB24WW.js +37 -0
  573. package/dist/chunk-YIFB24WW.js.map +1 -0
  574. package/dist/chunk-YIVL6HWS.js +68 -0
  575. package/dist/chunk-YIVL6HWS.js.map +1 -0
  576. package/dist/chunk-YK4H7VWM.js +2 -0
  577. package/dist/chunk-YK4H7VWM.js.map +1 -0
  578. package/dist/chunk-YL7VBHPZ.js +100 -0
  579. package/dist/chunk-YL7VBHPZ.js.map +1 -0
  580. package/dist/chunk-YMFEBGTU.js +2 -0
  581. package/dist/chunk-YMFEBGTU.js.map +1 -0
  582. package/dist/chunk-YPLKH5H4.js +226 -0
  583. package/dist/chunk-YPLKH5H4.js.map +1 -0
  584. package/dist/chunk-YWB7HLL7.js +126 -0
  585. package/dist/chunk-YWB7HLL7.js.map +1 -0
  586. package/dist/chunk-YXHHUJOZ.js +235 -0
  587. package/dist/chunk-YXHHUJOZ.js.map +1 -0
  588. package/dist/chunk-YZVXIPBC.js +2 -0
  589. package/dist/chunk-YZVXIPBC.js.map +1 -0
  590. package/dist/chunk-Z44RRTMX.js +2 -0
  591. package/dist/chunk-Z44RRTMX.js.map +1 -0
  592. package/dist/chunk-Z4CYBG3H.js +2 -0
  593. package/dist/chunk-Z4CYBG3H.js.map +1 -0
  594. package/dist/chunk-ZE2H4J3P.js +2 -0
  595. package/dist/chunk-ZE2H4J3P.js.map +1 -0
  596. package/dist/chunk-ZEMTALKO.js +2 -0
  597. package/dist/chunk-ZEMTALKO.js.map +1 -0
  598. package/dist/chunk-ZI2OXD6L.js +244 -0
  599. package/dist/chunk-ZI2OXD6L.js.map +1 -0
  600. package/dist/chunk-ZNFHDBUW.js +266 -0
  601. package/dist/chunk-ZNFHDBUW.js.map +1 -0
  602. package/dist/chunk-ZXBUOHCR.js +111 -0
  603. package/dist/chunk-ZXBUOHCR.js.map +1 -0
  604. package/dist/chunk-ZXVPEQM5.js +2 -0
  605. package/dist/chunk-ZXVPEQM5.js.map +1 -0
  606. package/dist/components/accordion/accordion.js +16 -0
  607. package/dist/components/accordion/accordion.js.map +1 -0
  608. package/dist/components/accordion/index.js +17 -0
  609. package/dist/components/accordion/index.js.map +1 -0
  610. package/dist/components/advanced-group/advanced-group.js +18 -0
  611. package/dist/components/advanced-group/advanced-group.js.map +1 -0
  612. package/dist/components/advanced-group/index.js +18 -0
  613. package/dist/components/advanced-group/index.js.map +1 -0
  614. package/dist/components/alert/alert.js +16 -0
  615. package/dist/components/alert/alert.js.map +1 -0
  616. package/dist/components/alert/index.js +17 -0
  617. package/dist/components/alert/index.js.map +1 -0
  618. package/dist/components/alert-dialog/alert-dialog.js +30 -0
  619. package/dist/components/alert-dialog/alert-dialog.js.map +1 -0
  620. package/dist/components/alert-dialog/index.js +31 -0
  621. package/dist/components/alert-dialog/index.js.map +1 -0
  622. package/dist/components/ambient-field/ambient-field.css +59 -0
  623. package/dist/components/ambient-field/ambient-field.css.map +1 -0
  624. package/dist/components/ambient-field/ambient-field.js +15 -0
  625. package/dist/components/ambient-field/ambient-field.js.map +1 -0
  626. package/dist/components/ambient-field/index.css +59 -0
  627. package/dist/components/ambient-field/index.css.map +1 -0
  628. package/dist/components/ambient-field/index.js +16 -0
  629. package/dist/components/ambient-field/index.js.map +1 -0
  630. package/dist/components/app-shell/app-shell.js +14 -0
  631. package/dist/components/app-shell/app-shell.js.map +1 -0
  632. package/dist/components/app-shell/index.js +15 -0
  633. package/dist/components/app-shell/index.js.map +1 -0
  634. package/dist/components/app-sidebar/app-sidebar.js +31 -0
  635. package/dist/components/app-sidebar/app-sidebar.js.map +1 -0
  636. package/dist/components/app-sidebar/index.js +31 -0
  637. package/dist/components/app-sidebar/index.js.map +1 -0
  638. package/dist/components/aspect-ratio/aspect-ratio.js +9 -0
  639. package/dist/components/aspect-ratio/aspect-ratio.js.map +1 -0
  640. package/dist/components/aspect-ratio/index.js +10 -0
  641. package/dist/components/aspect-ratio/index.js.map +1 -0
  642. package/dist/components/attribution-panel/attribution-panel.js +24 -0
  643. package/dist/components/attribution-panel/attribution-panel.js.map +1 -0
  644. package/dist/components/attribution-panel/attribution-types.js +2 -0
  645. package/dist/components/attribution-panel/attribution-types.js.map +1 -0
  646. package/dist/components/attribution-panel/attributions.generated.js +9 -0
  647. package/dist/components/attribution-panel/attributions.generated.js.map +1 -0
  648. package/dist/components/attribution-panel/index.js +24 -0
  649. package/dist/components/attribution-panel/index.js.map +1 -0
  650. package/dist/components/avatar/avatar.js +14 -0
  651. package/dist/components/avatar/avatar.js.map +1 -0
  652. package/dist/components/avatar/index.js +15 -0
  653. package/dist/components/avatar/index.js.map +1 -0
  654. package/dist/components/badge/badge.js +16 -0
  655. package/dist/components/badge/badge.js.map +1 -0
  656. package/dist/components/badge/index.js +13 -0
  657. package/dist/components/badge/index.js.map +1 -0
  658. package/dist/components/bento-grid/bento-grid.js +16 -0
  659. package/dist/components/bento-grid/bento-grid.js.map +1 -0
  660. package/dist/components/bento-grid/index.js +16 -0
  661. package/dist/components/bento-grid/index.js.map +1 -0
  662. package/dist/components/bounded-number/bounded-number.js +24 -0
  663. package/dist/components/bounded-number/bounded-number.js.map +1 -0
  664. package/dist/components/bounded-number/index.js +24 -0
  665. package/dist/components/bounded-number/index.js.map +1 -0
  666. package/dist/components/breadcrumb/breadcrumb.js +28 -0
  667. package/dist/components/breadcrumb/breadcrumb.js.map +1 -0
  668. package/dist/components/breadcrumb/index.js +26 -0
  669. package/dist/components/breadcrumb/index.js.map +1 -0
  670. package/dist/components/button/button.js +12 -0
  671. package/dist/components/button/button.js.map +1 -0
  672. package/dist/components/button/index.js +13 -0
  673. package/dist/components/button/index.js.map +1 -0
  674. package/dist/components/button-group/button-group.js +18 -0
  675. package/dist/components/button-group/button-group.js.map +1 -0
  676. package/dist/components/button-group/index.js +19 -0
  677. package/dist/components/button-group/index.js.map +1 -0
  678. package/dist/components/calendar/calendar.js +12 -0
  679. package/dist/components/calendar/calendar.js.map +1 -0
  680. package/dist/components/calendar/index.js +13 -0
  681. package/dist/components/calendar/index.js.map +1 -0
  682. package/dist/components/card/card.js +27 -0
  683. package/dist/components/card/card.js.map +1 -0
  684. package/dist/components/card/index.js +27 -0
  685. package/dist/components/card/index.js.map +1 -0
  686. package/dist/components/carousel/carousel.js +24 -0
  687. package/dist/components/carousel/carousel.js.map +1 -0
  688. package/dist/components/carousel/index.js +24 -0
  689. package/dist/components/carousel/index.js.map +1 -0
  690. package/dist/components/change-review/change-review.js +34 -0
  691. package/dist/components/change-review/change-review.js.map +1 -0
  692. package/dist/components/change-review/index.js +34 -0
  693. package/dist/components/change-review/index.js.map +1 -0
  694. package/dist/components/checkbox/checkbox.js +10 -0
  695. package/dist/components/checkbox/checkbox.js.map +1 -0
  696. package/dist/components/checkbox/index.js +11 -0
  697. package/dist/components/checkbox/index.js.map +1 -0
  698. package/dist/components/collapsible/collapsible.js +14 -0
  699. package/dist/components/collapsible/collapsible.js.map +1 -0
  700. package/dist/components/collapsible/index.js +15 -0
  701. package/dist/components/collapsible/index.js.map +1 -0
  702. package/dist/components/collapsible-panel/index.js +11 -0
  703. package/dist/components/collapsible-panel/index.js.map +1 -0
  704. package/dist/components/collapsible-panel/use-collapsible-panel.js +11 -0
  705. package/dist/components/collapsible-panel/use-collapsible-panel.js.map +1 -0
  706. package/dist/components/color-picker/color-picker.js +18 -0
  707. package/dist/components/color-picker/color-picker.js.map +1 -0
  708. package/dist/components/color-picker/index.js +18 -0
  709. package/dist/components/color-picker/index.js.map +1 -0
  710. package/dist/components/combobox/combobox.js +28 -0
  711. package/dist/components/combobox/combobox.js.map +1 -0
  712. package/dist/components/combobox/index.js +28 -0
  713. package/dist/components/combobox/index.js.map +1 -0
  714. package/dist/components/command/command.js +39 -0
  715. package/dist/components/command/command.js.map +1 -0
  716. package/dist/components/command/index.js +39 -0
  717. package/dist/components/command/index.js.map +1 -0
  718. package/dist/components/command-chip/command-chip.js +17 -0
  719. package/dist/components/command-chip/command-chip.js.map +1 -0
  720. package/dist/components/command-chip/index.js +17 -0
  721. package/dist/components/command-chip/index.js.map +1 -0
  722. package/dist/components/command-trigger/command-trigger.js +12 -0
  723. package/dist/components/command-trigger/command-trigger.js.map +1 -0
  724. package/dist/components/command-trigger/index.js +13 -0
  725. package/dist/components/command-trigger/index.js.map +1 -0
  726. package/dist/components/confirm-dialog/confirm-dialog.js +20 -0
  727. package/dist/components/confirm-dialog/confirm-dialog.js.map +1 -0
  728. package/dist/components/confirm-dialog/index.js +20 -0
  729. package/dist/components/confirm-dialog/index.js.map +1 -0
  730. package/dist/components/context-menu/context-menu.js +36 -0
  731. package/dist/components/context-menu/context-menu.js.map +1 -0
  732. package/dist/components/context-menu/index.js +37 -0
  733. package/dist/components/context-menu/index.js.map +1 -0
  734. package/dist/components/context-rail/context-rail.js +35 -0
  735. package/dist/components/context-rail/context-rail.js.map +1 -0
  736. package/dist/components/context-rail/index.js +35 -0
  737. package/dist/components/context-rail/index.js.map +1 -0
  738. package/dist/components/copyable-value/copyable-value.js +19 -0
  739. package/dist/components/copyable-value/copyable-value.js.map +1 -0
  740. package/dist/components/copyable-value/index.js +17 -0
  741. package/dist/components/copyable-value/index.js.map +1 -0
  742. package/dist/components/date-picker/date-picker.js +21 -0
  743. package/dist/components/date-picker/date-picker.js.map +1 -0
  744. package/dist/components/date-picker/index.js +21 -0
  745. package/dist/components/date-picker/index.js.map +1 -0
  746. package/dist/components/date-range-picker/date-range-picker.js +22 -0
  747. package/dist/components/date-range-picker/date-range-picker.js.map +1 -0
  748. package/dist/components/date-range-picker/index.js +22 -0
  749. package/dist/components/date-range-picker/index.js.map +1 -0
  750. package/dist/components/descriptions/descriptions.js +12 -0
  751. package/dist/components/descriptions/descriptions.js.map +1 -0
  752. package/dist/components/descriptions/index.js +13 -0
  753. package/dist/components/descriptions/index.js.map +1 -0
  754. package/dist/components/dialog/dialog.js +41 -0
  755. package/dist/components/dialog/dialog.js.map +1 -0
  756. package/dist/components/dialog/index.js +45 -0
  757. package/dist/components/dialog/index.js.map +1 -0
  758. package/dist/components/dialog/use-dialog-dismiss-guard.js +10 -0
  759. package/dist/components/dialog/use-dialog-dismiss-guard.js.map +1 -0
  760. package/dist/components/drawer/drawer.js +26 -0
  761. package/dist/components/drawer/drawer.js.map +1 -0
  762. package/dist/components/drawer/index.js +27 -0
  763. package/dist/components/drawer/index.js.map +1 -0
  764. package/dist/components/dropdown-menu/dropdown-menu.js +38 -0
  765. package/dist/components/dropdown-menu/dropdown-menu.js.map +1 -0
  766. package/dist/components/dropdown-menu/index.js +39 -0
  767. package/dist/components/dropdown-menu/index.js.map +1 -0
  768. package/dist/components/empty-state/empty-state.js +15 -0
  769. package/dist/components/empty-state/empty-state.js.map +1 -0
  770. package/dist/components/empty-state/index.js +16 -0
  771. package/dist/components/empty-state/index.js.map +1 -0
  772. package/dist/components/error-state/error-state.js +15 -0
  773. package/dist/components/error-state/error-state.js.map +1 -0
  774. package/dist/components/error-state/index.js +16 -0
  775. package/dist/components/error-state/index.js.map +1 -0
  776. package/dist/components/expand-dialog/expand-dialog.js +28 -0
  777. package/dist/components/expand-dialog/expand-dialog.js.map +1 -0
  778. package/dist/components/expand-dialog/index.js +28 -0
  779. package/dist/components/expand-dialog/index.js.map +1 -0
  780. package/dist/components/field/field-context.js +11 -0
  781. package/dist/components/field/field-context.js.map +1 -0
  782. package/dist/components/field/field.js +23 -0
  783. package/dist/components/field/field.js.map +1 -0
  784. package/dist/components/field/index.js +23 -0
  785. package/dist/components/field/index.js.map +1 -0
  786. package/dist/components/field-row/field-row.js +14 -0
  787. package/dist/components/field-row/field-row.js.map +1 -0
  788. package/dist/components/field-row/index.js +14 -0
  789. package/dist/components/field-row/index.js.map +1 -0
  790. package/dist/components/file-upload/file-upload.js +28 -0
  791. package/dist/components/file-upload/file-upload.js.map +1 -0
  792. package/dist/components/file-upload/index.js +26 -0
  793. package/dist/components/file-upload/index.js.map +1 -0
  794. package/dist/components/form/form.js +27 -0
  795. package/dist/components/form/form.js.map +1 -0
  796. package/dist/components/hover-card/hover-card.js +14 -0
  797. package/dist/components/hover-card/hover-card.js.map +1 -0
  798. package/dist/components/hover-card/index.js +15 -0
  799. package/dist/components/hover-card/index.js.map +1 -0
  800. package/dist/components/icon-button/icon-button.js +14 -0
  801. package/dist/components/icon-button/icon-button.js.map +1 -0
  802. package/dist/components/icon-button/index.js +15 -0
  803. package/dist/components/icon-button/index.js.map +1 -0
  804. package/dist/components/input/index.js +11 -0
  805. package/dist/components/input/index.js.map +1 -0
  806. package/dist/components/input/input.js +10 -0
  807. package/dist/components/input/input.js.map +1 -0
  808. package/dist/components/input-group/index.js +31 -0
  809. package/dist/components/input-group/index.js.map +1 -0
  810. package/dist/components/input-group/input-group.js +30 -0
  811. package/dist/components/input-group/input-group.js.map +1 -0
  812. package/dist/components/input-otp/index.js +17 -0
  813. package/dist/components/input-otp/index.js.map +1 -0
  814. package/dist/components/input-otp/input-otp.js +17 -0
  815. package/dist/components/input-otp/input-otp.js.map +1 -0
  816. package/dist/components/install-tabs/index.js +28 -0
  817. package/dist/components/install-tabs/index.js.map +1 -0
  818. package/dist/components/install-tabs/install-tabs.js +28 -0
  819. package/dist/components/install-tabs/install-tabs.js.map +1 -0
  820. package/dist/components/integration-matrix/index.js +26 -0
  821. package/dist/components/integration-matrix/index.js.map +1 -0
  822. package/dist/components/integration-matrix/integration-matrix.js +26 -0
  823. package/dist/components/integration-matrix/integration-matrix.js.map +1 -0
  824. package/dist/components/kbd/index.js +11 -0
  825. package/dist/components/kbd/index.js.map +1 -0
  826. package/dist/components/kbd/kbd.js +10 -0
  827. package/dist/components/kbd/kbd.js.map +1 -0
  828. package/dist/components/key-value-editor/index.js +18 -0
  829. package/dist/components/key-value-editor/index.js.map +1 -0
  830. package/dist/components/key-value-editor/key-value-editor.js +18 -0
  831. package/dist/components/key-value-editor/key-value-editor.js.map +1 -0
  832. package/dist/components/keyboard-shortcuts/index.js +25 -0
  833. package/dist/components/keyboard-shortcuts/index.js.map +1 -0
  834. package/dist/components/keyboard-shortcuts/keyboard-shortcuts.js +25 -0
  835. package/dist/components/keyboard-shortcuts/keyboard-shortcuts.js.map +1 -0
  836. package/dist/components/label/index.js +11 -0
  837. package/dist/components/label/index.js.map +1 -0
  838. package/dist/components/label/label.js +10 -0
  839. package/dist/components/label/label.js.map +1 -0
  840. package/dist/components/link-preview/index.js +14 -0
  841. package/dist/components/link-preview/index.js.map +1 -0
  842. package/dist/components/link-preview/link-preview.js +14 -0
  843. package/dist/components/link-preview/link-preview.js.map +1 -0
  844. package/dist/components/list-editor/index.js +18 -0
  845. package/dist/components/list-editor/index.js.map +1 -0
  846. package/dist/components/list-editor/list-editor.js +18 -0
  847. package/dist/components/list-editor/list-editor.js.map +1 -0
  848. package/dist/components/loading-state/index.js +16 -0
  849. package/dist/components/loading-state/index.js.map +1 -0
  850. package/dist/components/loading-state/loading-state.js +15 -0
  851. package/dist/components/loading-state/loading-state.js.map +1 -0
  852. package/dist/components/locale-provider/index.js +16 -0
  853. package/dist/components/locale-provider/index.js.map +1 -0
  854. package/dist/components/locale-provider/locale-provider.js +13 -0
  855. package/dist/components/locale-provider/locale-provider.js.map +1 -0
  856. package/dist/components/locale-provider/messages.js +10 -0
  857. package/dist/components/locale-provider/messages.js.map +1 -0
  858. package/dist/components/match-highlight/index.js +15 -0
  859. package/dist/components/match-highlight/index.js.map +1 -0
  860. package/dist/components/match-highlight/match-highlight.js +14 -0
  861. package/dist/components/match-highlight/match-highlight.js.map +1 -0
  862. package/dist/components/mention-input/index.js +46 -0
  863. package/dist/components/mention-input/index.js.map +1 -0
  864. package/dist/components/mention-input/mention-input.js +33 -0
  865. package/dist/components/mention-input/mention-input.js.map +1 -0
  866. package/dist/components/mention-input/mention-value.js +20 -0
  867. package/dist/components/mention-input/mention-value.js.map +1 -0
  868. package/dist/components/menubar/index.js +39 -0
  869. package/dist/components/menubar/index.js.map +1 -0
  870. package/dist/components/menubar/menubar.js +38 -0
  871. package/dist/components/menubar/menubar.js.map +1 -0
  872. package/dist/components/meter/index.js +15 -0
  873. package/dist/components/meter/index.js.map +1 -0
  874. package/dist/components/meter/meter.js +15 -0
  875. package/dist/components/meter/meter.js.map +1 -0
  876. package/dist/components/metric-card/index.js +24 -0
  877. package/dist/components/metric-card/index.js.map +1 -0
  878. package/dist/components/metric-card/metric-card.js +24 -0
  879. package/dist/components/metric-card/metric-card.js.map +1 -0
  880. package/dist/components/model-picker/index.js +37 -0
  881. package/dist/components/model-picker/index.js.map +1 -0
  882. package/dist/components/model-picker/model-picker-state.js +13 -0
  883. package/dist/components/model-picker/model-picker-state.js.map +1 -0
  884. package/dist/components/model-picker/model-picker.js +37 -0
  885. package/dist/components/model-picker/model-picker.js.map +1 -0
  886. package/dist/components/nav-main/index.js +33 -0
  887. package/dist/components/nav-main/index.js.map +1 -0
  888. package/dist/components/nav-main/nav-main.js +33 -0
  889. package/dist/components/nav-main/nav-main.js.map +1 -0
  890. package/dist/components/nav-notifications/index.js +20 -0
  891. package/dist/components/nav-notifications/index.js.map +1 -0
  892. package/dist/components/nav-notifications/nav-notifications.js +20 -0
  893. package/dist/components/nav-notifications/nav-notifications.js.map +1 -0
  894. package/dist/components/nav-user/index.js +35 -0
  895. package/dist/components/nav-user/index.js.map +1 -0
  896. package/dist/components/nav-user/nav-user.js +35 -0
  897. package/dist/components/nav-user/nav-user.js.map +1 -0
  898. package/dist/components/navigation-menu/index.js +25 -0
  899. package/dist/components/navigation-menu/index.js.map +1 -0
  900. package/dist/components/navigation-menu/navigation-menu.js +25 -0
  901. package/dist/components/navigation-menu/navigation-menu.js.map +1 -0
  902. package/dist/components/number-input/index.js +22 -0
  903. package/dist/components/number-input/index.js.map +1 -0
  904. package/dist/components/number-input/number-input.js +22 -0
  905. package/dist/components/number-input/number-input.js.map +1 -0
  906. package/dist/components/page-shell/index.js +11 -0
  907. package/dist/components/page-shell/index.js.map +1 -0
  908. package/dist/components/page-shell/page-shell.js +10 -0
  909. package/dist/components/page-shell/page-shell.js.map +1 -0
  910. package/dist/components/pagination/index.js +28 -0
  911. package/dist/components/pagination/index.js.map +1 -0
  912. package/dist/components/pagination/pagination.js +28 -0
  913. package/dist/components/pagination/pagination.js.map +1 -0
  914. package/dist/components/parallax-plane/index.css +17 -0
  915. package/dist/components/parallax-plane/index.css.map +1 -0
  916. package/dist/components/parallax-plane/index.js +18 -0
  917. package/dist/components/parallax-plane/index.js.map +1 -0
  918. package/dist/components/parallax-plane/parallax-plane.css +17 -0
  919. package/dist/components/parallax-plane/parallax-plane.css.map +1 -0
  920. package/dist/components/parallax-plane/parallax-plane.js +18 -0
  921. package/dist/components/parallax-plane/parallax-plane.js.map +1 -0
  922. package/dist/components/popover/index.js +17 -0
  923. package/dist/components/popover/index.js.map +1 -0
  924. package/dist/components/popover/popover.js +16 -0
  925. package/dist/components/popover/popover.js.map +1 -0
  926. package/dist/components/progress/index.js +13 -0
  927. package/dist/components/progress/index.js.map +1 -0
  928. package/dist/components/progress/progress.js +12 -0
  929. package/dist/components/progress/progress.js.map +1 -0
  930. package/dist/components/radio-group/index.js +13 -0
  931. package/dist/components/radio-group/index.js.map +1 -0
  932. package/dist/components/radio-group/radio-group.js +12 -0
  933. package/dist/components/radio-group/radio-group.js.map +1 -0
  934. package/dist/components/rating/index.js +11 -0
  935. package/dist/components/rating/index.js.map +1 -0
  936. package/dist/components/rating/rating.js +11 -0
  937. package/dist/components/rating/rating.js.map +1 -0
  938. package/dist/components/resizable/index.js +15 -0
  939. package/dist/components/resizable/index.js.map +1 -0
  940. package/dist/components/resizable/resizable.js +14 -0
  941. package/dist/components/resizable/resizable.js.map +1 -0
  942. package/dist/components/reveal/index.js +15 -0
  943. package/dist/components/reveal/index.js.map +1 -0
  944. package/dist/components/reveal/reveal.js +14 -0
  945. package/dist/components/reveal/reveal.js.map +1 -0
  946. package/dist/components/reveal-on-enter/index.css +21 -0
  947. package/dist/components/reveal-on-enter/index.css.map +1 -0
  948. package/dist/components/reveal-on-enter/index.js +12 -0
  949. package/dist/components/reveal-on-enter/index.js.map +1 -0
  950. package/dist/components/reveal-on-enter/reveal-on-enter.css +21 -0
  951. package/dist/components/reveal-on-enter/reveal-on-enter.css.map +1 -0
  952. package/dist/components/reveal-on-enter/reveal-on-enter.js +12 -0
  953. package/dist/components/reveal-on-enter/reveal-on-enter.js.map +1 -0
  954. package/dist/components/revision-timeline/index.js +18 -0
  955. package/dist/components/revision-timeline/index.js.map +1 -0
  956. package/dist/components/revision-timeline/revision-timeline.js +18 -0
  957. package/dist/components/revision-timeline/revision-timeline.js.map +1 -0
  958. package/dist/components/schema-form/from-json-schema.js +13 -0
  959. package/dist/components/schema-form/from-json-schema.js.map +1 -0
  960. package/dist/components/schema-form/index.js +140 -0
  961. package/dist/components/schema-form/index.js.map +1 -0
  962. package/dist/components/schema-form/schema-form-spec.js +63 -0
  963. package/dist/components/schema-form/schema-form-spec.js.map +1 -0
  964. package/dist/components/schema-form/schema-form-store.js +21 -0
  965. package/dist/components/schema-form/schema-form-store.js.map +1 -0
  966. package/dist/components/schema-form/schema-form.js +77 -0
  967. package/dist/components/schema-form/schema-form.js.map +1 -0
  968. package/dist/components/scroll-area/index.js +13 -0
  969. package/dist/components/scroll-area/index.js.map +1 -0
  970. package/dist/components/scroll-area/scroll-area.js +12 -0
  971. package/dist/components/scroll-area/scroll-area.js.map +1 -0
  972. package/dist/components/section-header/index.js +11 -0
  973. package/dist/components/section-header/index.js.map +1 -0
  974. package/dist/components/section-header/section-header.js +10 -0
  975. package/dist/components/section-header/section-header.js.map +1 -0
  976. package/dist/components/segmented-field/index.js +17 -0
  977. package/dist/components/segmented-field/index.js.map +1 -0
  978. package/dist/components/segmented-field/segmented-field.js +17 -0
  979. package/dist/components/segmented-field/segmented-field.js.map +1 -0
  980. package/dist/components/select/index.js +26 -0
  981. package/dist/components/select/index.js.map +1 -0
  982. package/dist/components/select/select.js +26 -0
  983. package/dist/components/select/select.js.map +1 -0
  984. package/dist/components/separator/index.js +11 -0
  985. package/dist/components/separator/index.js.map +1 -0
  986. package/dist/components/separator/separator.js +10 -0
  987. package/dist/components/separator/separator.js.map +1 -0
  988. package/dist/components/sheet/index.js +30 -0
  989. package/dist/components/sheet/index.js.map +1 -0
  990. package/dist/components/sheet/sheet.js +30 -0
  991. package/dist/components/sheet/sheet.js.map +1 -0
  992. package/dist/components/side-dock/index.js +20 -0
  993. package/dist/components/side-dock/index.js.map +1 -0
  994. package/dist/components/side-dock/side-dock.js +20 -0
  995. package/dist/components/side-dock/side-dock.js.map +1 -0
  996. package/dist/components/sidebar/index.js +77 -0
  997. package/dist/components/sidebar/index.js.map +1 -0
  998. package/dist/components/sidebar/sidebar.js +77 -0
  999. package/dist/components/sidebar/sidebar.js.map +1 -0
  1000. package/dist/components/skeleton/index.js +11 -0
  1001. package/dist/components/skeleton/index.js.map +1 -0
  1002. package/dist/components/skeleton/skeleton.js +10 -0
  1003. package/dist/components/skeleton/skeleton.js.map +1 -0
  1004. package/dist/components/skip-link/index.js +11 -0
  1005. package/dist/components/skip-link/index.js.map +1 -0
  1006. package/dist/components/skip-link/skip-link.js +10 -0
  1007. package/dist/components/skip-link/skip-link.js.map +1 -0
  1008. package/dist/components/slider/index.js +11 -0
  1009. package/dist/components/slider/index.js.map +1 -0
  1010. package/dist/components/slider/slider.js +10 -0
  1011. package/dist/components/slider/slider.js.map +1 -0
  1012. package/dist/components/slider-number/index.js +26 -0
  1013. package/dist/components/slider-number/index.js.map +1 -0
  1014. package/dist/components/slider-number/slider-number.js +26 -0
  1015. package/dist/components/slider-number/slider-number.js.map +1 -0
  1016. package/dist/components/sonner/index.js +13 -0
  1017. package/dist/components/sonner/index.js.map +1 -0
  1018. package/dist/components/sonner/sonner.js +13 -0
  1019. package/dist/components/sonner/sonner.js.map +1 -0
  1020. package/dist/components/spec-playground/index.js +23 -0
  1021. package/dist/components/spec-playground/index.js.map +1 -0
  1022. package/dist/components/spec-playground/locate-json-path.js +17 -0
  1023. package/dist/components/spec-playground/locate-json-path.js.map +1 -0
  1024. package/dist/components/spec-playground/spec-playground.js +23 -0
  1025. package/dist/components/spec-playground/spec-playground.js.map +1 -0
  1026. package/dist/components/spinner/index.js +14 -0
  1027. package/dist/components/spinner/index.js.map +1 -0
  1028. package/dist/components/spinner/spinner.js +14 -0
  1029. package/dist/components/spinner/spinner.js.map +1 -0
  1030. package/dist/components/split-panel/index.js +13 -0
  1031. package/dist/components/split-panel/index.js.map +1 -0
  1032. package/dist/components/split-panel/split-panel.js +12 -0
  1033. package/dist/components/split-panel/split-panel.js.map +1 -0
  1034. package/dist/components/state-panel/index.js +17 -0
  1035. package/dist/components/state-panel/index.js.map +1 -0
  1036. package/dist/components/state-panel/state-panel.js +17 -0
  1037. package/dist/components/state-panel/state-panel.js.map +1 -0
  1038. package/dist/components/status-badge/index.js +30 -0
  1039. package/dist/components/status-badge/index.js.map +1 -0
  1040. package/dist/components/status-badge/status-badge.js +29 -0
  1041. package/dist/components/status-badge/status-badge.js.map +1 -0
  1042. package/dist/components/surface-tour/index.css +21 -0
  1043. package/dist/components/surface-tour/index.css.map +1 -0
  1044. package/dist/components/surface-tour/index.js +36 -0
  1045. package/dist/components/surface-tour/index.js.map +1 -0
  1046. package/dist/components/surface-tour/surface-tour.css +21 -0
  1047. package/dist/components/surface-tour/surface-tour.css.map +1 -0
  1048. package/dist/components/surface-tour/surface-tour.js +36 -0
  1049. package/dist/components/surface-tour/surface-tour.js.map +1 -0
  1050. package/dist/components/switch/index.js +11 -0
  1051. package/dist/components/switch/index.js.map +1 -0
  1052. package/dist/components/switch/switch.js +10 -0
  1053. package/dist/components/switch/switch.js.map +1 -0
  1054. package/dist/components/table/index.js +28 -0
  1055. package/dist/components/table/index.js.map +1 -0
  1056. package/dist/components/table/table.js +28 -0
  1057. package/dist/components/table/table.js.map +1 -0
  1058. package/dist/components/tabs/index.js +22 -0
  1059. package/dist/components/tabs/index.js.map +1 -0
  1060. package/dist/components/tabs/tabs.js +22 -0
  1061. package/dist/components/tabs/tabs.js.map +1 -0
  1062. package/dist/components/tag-input/index.js +21 -0
  1063. package/dist/components/tag-input/index.js.map +1 -0
  1064. package/dist/components/tag-input/tag-input.js +21 -0
  1065. package/dist/components/tag-input/tag-input.js.map +1 -0
  1066. package/dist/components/team-switcher/index.js +33 -0
  1067. package/dist/components/team-switcher/index.js.map +1 -0
  1068. package/dist/components/team-switcher/team-switcher.js +33 -0
  1069. package/dist/components/team-switcher/team-switcher.js.map +1 -0
  1070. package/dist/components/textarea/index.js +11 -0
  1071. package/dist/components/textarea/index.js.map +1 -0
  1072. package/dist/components/textarea/textarea.js +10 -0
  1073. package/dist/components/textarea/textarea.js.map +1 -0
  1074. package/dist/components/theme-family-switch/index.js +19 -0
  1075. package/dist/components/theme-family-switch/index.js.map +1 -0
  1076. package/dist/components/theme-family-switch/theme-family-switch.js +19 -0
  1077. package/dist/components/theme-family-switch/theme-family-switch.js.map +1 -0
  1078. package/dist/components/theme-switcher/index.js +24 -0
  1079. package/dist/components/theme-switcher/index.js.map +1 -0
  1080. package/dist/components/theme-switcher/theme-switcher.js +21 -0
  1081. package/dist/components/theme-switcher/theme-switcher.js.map +1 -0
  1082. package/dist/components/theme-switcher/use-theme-transition.js +10 -0
  1083. package/dist/components/theme-switcher/use-theme-transition.js.map +1 -0
  1084. package/dist/components/timeline/index.js +18 -0
  1085. package/dist/components/timeline/index.js.map +1 -0
  1086. package/dist/components/timeline/timeline.js +19 -0
  1087. package/dist/components/timeline/timeline.js.map +1 -0
  1088. package/dist/components/toggle/index.js +13 -0
  1089. package/dist/components/toggle/index.js.map +1 -0
  1090. package/dist/components/toggle/toggle.js +12 -0
  1091. package/dist/components/toggle/toggle.js.map +1 -0
  1092. package/dist/components/toggle-group/index.js +15 -0
  1093. package/dist/components/toggle-group/index.js.map +1 -0
  1094. package/dist/components/toggle-group/toggle-group.js +15 -0
  1095. package/dist/components/toggle-group/toggle-group.js.map +1 -0
  1096. package/dist/components/token-spotlight/index.css +25 -0
  1097. package/dist/components/token-spotlight/index.css.map +1 -0
  1098. package/dist/components/token-spotlight/index.js +23 -0
  1099. package/dist/components/token-spotlight/index.js.map +1 -0
  1100. package/dist/components/token-spotlight/token-spotlight.css +25 -0
  1101. package/dist/components/token-spotlight/token-spotlight.css.map +1 -0
  1102. package/dist/components/token-spotlight/token-spotlight.js +23 -0
  1103. package/dist/components/token-spotlight/token-spotlight.js.map +1 -0
  1104. package/dist/components/token-spotlight/token-value-format.js +11 -0
  1105. package/dist/components/token-spotlight/token-value-format.js.map +1 -0
  1106. package/dist/components/toolbar/index.js +27 -0
  1107. package/dist/components/toolbar/index.js.map +1 -0
  1108. package/dist/components/toolbar/toolbar.js +27 -0
  1109. package/dist/components/toolbar/toolbar.js.map +1 -0
  1110. package/dist/components/tooltip/index.js +17 -0
  1111. package/dist/components/tooltip/index.js.map +1 -0
  1112. package/dist/components/tooltip/tooltip.js +16 -0
  1113. package/dist/components/tooltip/tooltip.js.map +1 -0
  1114. package/dist/components/top-nav/index.js +11 -0
  1115. package/dist/components/top-nav/index.js.map +1 -0
  1116. package/dist/components/top-nav/top-nav.js +10 -0
  1117. package/dist/components/top-nav/top-nav.js.map +1 -0
  1118. package/dist/components/transfer/index.js +26 -0
  1119. package/dist/components/transfer/index.js.map +1 -0
  1120. package/dist/components/transfer/transfer.js +26 -0
  1121. package/dist/components/transfer/transfer.js.map +1 -0
  1122. package/dist/components/tree/index.js +21 -0
  1123. package/dist/components/tree/index.js.map +1 -0
  1124. package/dist/components/tree/tree.js +18 -0
  1125. package/dist/components/tree/tree.js.map +1 -0
  1126. package/dist/components/tree/use-tree-keyboard.js +14 -0
  1127. package/dist/components/tree/use-tree-keyboard.js.map +1 -0
  1128. package/dist/components/tree-select/index.js +26 -0
  1129. package/dist/components/tree-select/index.js.map +1 -0
  1130. package/dist/components/tree-select/tree-select.js +26 -0
  1131. package/dist/components/tree-select/tree-select.js.map +1 -0
  1132. package/dist/components/typography/index.js +41 -0
  1133. package/dist/components/typography/index.js.map +1 -0
  1134. package/dist/components/typography/prose.js +29 -0
  1135. package/dist/components/typography/prose.js.map +1 -0
  1136. package/dist/components/typography/typography.js +18 -0
  1137. package/dist/components/typography/typography.js.map +1 -0
  1138. package/dist/components/view-toolbar/index.js +27 -0
  1139. package/dist/components/view-toolbar/index.js.map +1 -0
  1140. package/dist/components/view-toolbar/view-toolbar.js +27 -0
  1141. package/dist/components/view-toolbar/view-toolbar.js.map +1 -0
  1142. package/dist/components/virtual-select/index.js +26 -0
  1143. package/dist/components/virtual-select/index.js.map +1 -0
  1144. package/dist/components/virtual-select/use-virtual-listbox.js +10 -0
  1145. package/dist/components/virtual-select/use-virtual-listbox.js.map +1 -0
  1146. package/dist/components/virtual-select/virtual-select.js +23 -0
  1147. package/dist/components/virtual-select/virtual-select.js.map +1 -0
  1148. package/dist/components/wizard/index.js +19 -0
  1149. package/dist/components/wizard/index.js.map +1 -0
  1150. package/dist/components/wizard/wizard.js +19 -0
  1151. package/dist/components/wizard/wizard.js.map +1 -0
  1152. package/dist/components/workspace-picker/index.js +38 -0
  1153. package/dist/components/workspace-picker/index.js.map +1 -0
  1154. package/dist/components/workspace-picker/workspace-picker-state.js +9 -0
  1155. package/dist/components/workspace-picker/workspace-picker-state.js.map +1 -0
  1156. package/dist/components/workspace-picker/workspace-picker.js +35 -0
  1157. package/dist/components/workspace-picker/workspace-picker.js.map +1 -0
  1158. package/dist/form.js +13 -110
  1159. package/dist/form.js.map +1 -1
  1160. package/dist/illustrations/empty-list-illustration.js +11 -0
  1161. package/dist/illustrations/empty-list-illustration.js.map +1 -0
  1162. package/dist/illustrations/error-illustration.js +11 -0
  1163. package/dist/illustrations/error-illustration.js.map +1 -0
  1164. package/dist/illustrations/first-run-illustration.js +11 -0
  1165. package/dist/illustrations/first-run-illustration.js.map +1 -0
  1166. package/dist/illustrations/illustration-base.js +16 -0
  1167. package/dist/illustrations/illustration-base.js.map +1 -0
  1168. package/dist/illustrations/index.js +41 -0
  1169. package/dist/illustrations/index.js.map +1 -0
  1170. package/dist/illustrations/no-access-illustration.js +11 -0
  1171. package/dist/illustrations/no-access-illustration.js.map +1 -0
  1172. package/dist/illustrations/no-results-illustration.js +11 -0
  1173. package/dist/illustrations/no-results-illustration.js.map +1 -0
  1174. package/dist/illustrations/offline-illustration.js +11 -0
  1175. package/dist/illustrations/offline-illustration.js.map +1 -0
  1176. package/dist/illustrations/success-illustration.js +11 -0
  1177. package/dist/illustrations/success-illustration.js.map +1 -0
  1178. package/dist/index.css +122 -0
  1179. package/dist/index.css.map +1 -0
  1180. package/dist/index.d.ts +1390 -146
  1181. package/dist/index.js +997 -22676
  1182. package/dist/index.js.map +1 -1
  1183. package/dist/lib/agent-event-model.js +9 -0
  1184. package/dist/lib/agent-event-model.js.map +1 -0
  1185. package/dist/lib/approval-option.js +9 -0
  1186. package/dist/lib/approval-option.js.map +1 -0
  1187. package/dist/lib/check-result.js +3 -0
  1188. package/dist/lib/check-result.js.map +1 -0
  1189. package/dist/lib/cn.js +28 -3
  1190. package/dist/lib/cn.js.map +1 -1
  1191. package/dist/lib/color-scale.js +11 -0
  1192. package/dist/lib/color-scale.js.map +1 -0
  1193. package/dist/lib/compact-number.js +21 -0
  1194. package/dist/lib/compact-number.js.map +1 -0
  1195. package/dist/lib/csv.js +11 -0
  1196. package/dist/lib/csv.js.map +1 -0
  1197. package/dist/lib/diff-line.js +11 -0
  1198. package/dist/lib/diff-line.js.map +1 -0
  1199. package/dist/lib/diff-rows.js +12 -0
  1200. package/dist/lib/diff-rows.js.map +1 -0
  1201. package/dist/lib/document-address.js +13 -0
  1202. package/dist/lib/document-address.js.map +1 -0
  1203. package/dist/lib/download.js +11 -0
  1204. package/dist/lib/download.js.map +1 -0
  1205. package/dist/lib/file-icon.js +12 -0
  1206. package/dist/lib/file-icon.js.map +1 -0
  1207. package/dist/lib/file-kind.js +13 -0
  1208. package/dist/lib/file-kind.js.map +1 -0
  1209. package/dist/lib/file-source.js +10 -0
  1210. package/dist/lib/file-source.js.map +1 -0
  1211. package/dist/lib/format-duration.js +9 -0
  1212. package/dist/lib/format-duration.js.map +1 -0
  1213. package/dist/lib/has-renderable-content.js +9 -0
  1214. package/dist/lib/has-renderable-content.js.map +1 -0
  1215. package/dist/lib/merge-refs.js +10 -0
  1216. package/dist/lib/merge-refs.js.map +1 -0
  1217. package/dist/lib/operating-mode.js +9 -0
  1218. package/dist/lib/operating-mode.js.map +1 -0
  1219. package/dist/lib/optional-peer.js +11 -0
  1220. package/dist/lib/optional-peer.js.map +1 -0
  1221. package/dist/lib/session-launch.js +3 -0
  1222. package/dist/lib/session-launch.js.map +1 -0
  1223. package/dist/lib/slash-command.js +11 -0
  1224. package/dist/lib/slash-command.js.map +1 -0
  1225. package/dist/lib/streamdown-translations.js +15 -0
  1226. package/dist/lib/streamdown-translations.js.map +1 -0
  1227. package/dist/lib/trigger-query.js +11 -0
  1228. package/dist/lib/trigger-query.js.map +1 -0
  1229. package/dist/lib/use-controllable-state.js +10 -0
  1230. package/dist/lib/use-controllable-state.js.map +1 -0
  1231. package/dist/lib/use-copy-to-clipboard.js +12 -0
  1232. package/dist/lib/use-copy-to-clipboard.js.map +1 -0
  1233. package/dist/lib/use-mobile.js +10 -0
  1234. package/dist/lib/use-mobile.js.map +1 -0
  1235. package/dist/lib/use-scroll-progress.js +18 -0
  1236. package/dist/lib/use-scroll-progress.js.map +1 -0
  1237. package/package.json +12 -5
  1238. package/src/__contract__/ambient-field.contract.test.tsx +49 -0
  1239. package/src/__contract__/attribution-panel.contract.test.tsx +49 -0
  1240. package/src/__contract__/badge.contract.test.tsx +49 -0
  1241. package/src/__contract__/bounded-number.contract.test.tsx +49 -0
  1242. package/src/__contract__/button.contract.test.tsx +49 -0
  1243. package/src/__contract__/color-picker.contract.test.tsx +49 -0
  1244. package/src/__contract__/combobox.contract.test.tsx +49 -0
  1245. package/src/__contract__/command-chip.contract.test.tsx +49 -0
  1246. package/src/__contract__/command-trigger.contract.test.tsx +49 -0
  1247. package/src/__contract__/copyable-value.contract.test.tsx +49 -0
  1248. package/src/__contract__/date-picker.contract.test.tsx +49 -0
  1249. package/src/__contract__/date-range-picker.contract.test.tsx +49 -0
  1250. package/src/__contract__/empty-state.contract.test.tsx +49 -0
  1251. package/src/__contract__/error-state.contract.test.tsx +49 -0
  1252. package/src/__contract__/icon-button.contract.test.tsx +49 -0
  1253. package/src/__contract__/input.contract.test.tsx +49 -0
  1254. package/src/__contract__/install-tabs.contract.test.tsx +49 -0
  1255. package/src/__contract__/integration-matrix.contract.test.tsx +49 -0
  1256. package/src/__contract__/key-value-editor.contract.test.tsx +49 -0
  1257. package/src/__contract__/list-editor.contract.test.tsx +49 -0
  1258. package/src/__contract__/loading-state.contract.test.tsx +49 -0
  1259. package/src/__contract__/meter.contract.test.tsx +49 -0
  1260. package/src/__contract__/metric-card.contract.test.tsx +49 -0
  1261. package/src/__contract__/model-picker.contract.test.tsx +49 -0
  1262. package/src/__contract__/nav-notifications.contract.test.tsx +49 -0
  1263. package/src/__contract__/number-input.contract.test.tsx +49 -0
  1264. package/src/__contract__/parallax-plane.contract.test.tsx +49 -0
  1265. package/src/__contract__/rating.contract.test.tsx +49 -0
  1266. package/src/__contract__/reveal-on-enter.contract.test.tsx +49 -0
  1267. package/src/__contract__/schema-form.contract.test.tsx +49 -0
  1268. package/src/__contract__/section-header.contract.test.tsx +49 -0
  1269. package/src/__contract__/segmented-field.contract.test.tsx +49 -0
  1270. package/src/__contract__/slider-number.contract.test.tsx +49 -0
  1271. package/src/__contract__/spec-playground.contract.test.tsx +49 -0
  1272. package/src/__contract__/status-badge.contract.test.tsx +49 -0
  1273. package/src/__contract__/surface-tour.contract.test.tsx +49 -0
  1274. package/src/__contract__/tag-input.contract.test.tsx +49 -0
  1275. package/src/__contract__/text.contract.test.tsx +49 -0
  1276. package/src/__contract__/textarea.contract.test.tsx +49 -0
  1277. package/src/__contract__/theme-family-switch.contract.test.tsx +49 -0
  1278. package/src/__contract__/timeline.contract.test.tsx +49 -0
  1279. package/src/__contract__/toggle.contract.test.tsx +49 -0
  1280. package/src/__contract__/token-spotlight.contract.test.tsx +49 -0
  1281. package/src/__contract__/transfer.contract.test.tsx +49 -0
  1282. package/src/__contract__/tree-select.contract.test.tsx +49 -0
  1283. package/src/__contract__/tree.contract.test.tsx +49 -0
  1284. package/src/__contract__/virtual-select.contract.test.tsx +49 -0
  1285. package/src/__contract__/workspace-picker.contract.test.tsx +49 -0
  1286. package/src/blocks-comparison-table.stories.tsx +1 -1
  1287. package/src/components/accordion/accordion.tsx +41 -16
  1288. package/src/components/advanced-group/advanced-group.stories.tsx +2 -0
  1289. package/src/components/alert/alert.tsx +24 -8
  1290. package/src/components/alert-dialog/alert-dialog.test.tsx +32 -0
  1291. package/src/components/alert-dialog/alert-dialog.tsx +28 -6
  1292. package/src/components/ambient-field/ambient-field.css +98 -0
  1293. package/src/components/ambient-field/ambient-field.stories.tsx +75 -0
  1294. package/src/components/ambient-field/ambient-field.test.tsx +28 -0
  1295. package/src/components/ambient-field/ambient-field.tsx +69 -0
  1296. package/src/components/ambient-field/index.ts +7 -0
  1297. package/src/components/app-shell/app-shell.stories.tsx +344 -1
  1298. package/src/components/app-shell/app-shell.test.tsx +266 -0
  1299. package/src/components/app-shell/app-shell.tsx +147 -14
  1300. package/src/components/app-shell/index.ts +1 -1
  1301. package/src/components/attribution-panel/attribution-panel.tsx +2 -0
  1302. package/src/components/attribution-panel/attributions.generated.ts +79 -6
  1303. package/src/components/avatar/avatar.tsx +4 -1
  1304. package/src/components/badge/badge.stories.tsx +62 -0
  1305. package/src/components/badge/badge.test.tsx +29 -0
  1306. package/src/components/badge/badge.tsx +101 -11
  1307. package/src/components/bento-grid/bento-grid.test.tsx +23 -2
  1308. package/src/components/bento-grid/bento-grid.tsx +10 -0
  1309. package/src/components/bounded-number/bounded-number.test.tsx +1 -1
  1310. package/src/components/bounded-number/bounded-number.tsx +78 -75
  1311. package/src/components/breadcrumb/breadcrumb.stories.tsx +1 -1
  1312. package/src/components/breadcrumb/breadcrumb.tsx +5 -2
  1313. package/src/components/button/button.stories.tsx +5 -1
  1314. package/src/components/button/button.tsx +37 -20
  1315. package/src/components/button-group/button-group.tsx +1 -1
  1316. package/src/components/calendar/calendar.tsx +9 -3
  1317. package/src/components/card/card.stories.tsx +73 -1
  1318. package/src/components/card/card.test.tsx +53 -4
  1319. package/src/components/card/card.tsx +122 -17
  1320. package/src/components/card/index.ts +2 -0
  1321. package/src/components/carousel/carousel.test.tsx +169 -0
  1322. package/src/components/carousel/carousel.tsx +93 -32
  1323. package/src/components/change-review/change-review.tsx +39 -30
  1324. package/src/components/checkbox/checkbox.tsx +1 -0
  1325. package/src/components/collapsible-panel/index.ts +1 -0
  1326. package/src/components/collapsible-panel/use-collapsible-panel.ts +21 -5
  1327. package/src/components/color-picker/color-picker.tsx +20 -14
  1328. package/src/components/combobox/combobox.stories.tsx +10 -0
  1329. package/src/components/combobox/combobox.test.tsx +54 -0
  1330. package/src/components/combobox/combobox.tsx +25 -11
  1331. package/src/components/command/command.stories.tsx +64 -1
  1332. package/src/components/command/command.test.tsx +88 -0
  1333. package/src/components/command/command.tsx +81 -8
  1334. package/src/components/command-chip/command-chip.stories.tsx +78 -0
  1335. package/src/components/command-chip/command-chip.test.tsx +57 -0
  1336. package/src/components/command-chip/command-chip.tsx +168 -0
  1337. package/src/components/command-chip/index.ts +7 -0
  1338. package/src/components/command-trigger/command-trigger.tsx +1 -1
  1339. package/src/components/confirm-dialog/confirm-dialog.stories.tsx +2 -0
  1340. package/src/components/context-menu/context-menu.stories.tsx +26 -0
  1341. package/src/components/context-menu/context-menu.tsx +17 -8
  1342. package/src/components/context-rail/context-rail.tsx +26 -8
  1343. package/src/components/copyable-value/copyable-value.stories.tsx +10 -0
  1344. package/src/components/copyable-value/copyable-value.test.tsx +28 -1
  1345. package/src/components/copyable-value/copyable-value.tsx +12 -1
  1346. package/src/components/date-picker/date-picker.stories.tsx +9 -0
  1347. package/src/components/date-picker/date-picker.test.tsx +52 -0
  1348. package/src/components/date-picker/date-picker.tsx +15 -15
  1349. package/src/components/date-range-picker/date-range-picker.stories.tsx +9 -0
  1350. package/src/components/date-range-picker/date-range-picker.test.tsx +76 -1
  1351. package/src/components/date-range-picker/date-range-picker.tsx +39 -28
  1352. package/src/components/descriptions/descriptions.stories.tsx +6 -0
  1353. package/src/components/descriptions/descriptions.test.tsx +18 -0
  1354. package/src/components/descriptions/descriptions.tsx +34 -6
  1355. package/src/components/descriptions/index.ts +1 -0
  1356. package/src/components/dialog/dialog.stories.tsx +5 -0
  1357. package/src/components/dialog/dialog.test.tsx +8 -3
  1358. package/src/components/dialog/dialog.tsx +13 -5
  1359. package/src/components/drawer/drawer.tsx +23 -6
  1360. package/src/components/dropdown-menu/dropdown-menu.stories.tsx +37 -0
  1361. package/src/components/dropdown-menu/dropdown-menu.tsx +17 -9
  1362. package/src/components/expand-dialog/expand-dialog.test.tsx +47 -0
  1363. package/src/components/expand-dialog/expand-dialog.tsx +20 -5
  1364. package/src/components/field/field.tsx +2 -0
  1365. package/src/components/field-row/field-row.tsx +2 -0
  1366. package/src/components/file-upload/file-upload.test.tsx +83 -10
  1367. package/src/components/file-upload/file-upload.tsx +150 -28
  1368. package/src/components/form/form.tsx +4 -2
  1369. package/src/components/hover-card/hover-card.tsx +2 -1
  1370. package/src/components/icon-button/icon-button.tsx +1 -1
  1371. package/src/components/input/input.stories.tsx +17 -0
  1372. package/src/components/input/input.tsx +8 -4
  1373. package/src/components/input-group/input-group.stories.tsx +43 -6
  1374. package/src/components/input-group/input-group.tsx +10 -7
  1375. package/src/components/input-otp/input-otp.tsx +7 -3
  1376. package/src/components/install-tabs/index.ts +8 -0
  1377. package/src/components/install-tabs/install-tabs.stories.tsx +147 -0
  1378. package/src/components/install-tabs/install-tabs.test.tsx +120 -0
  1379. package/src/components/install-tabs/install-tabs.tsx +238 -0
  1380. package/src/components/integration-matrix/index.ts +10 -0
  1381. package/src/components/integration-matrix/integration-matrix.stories.tsx +171 -0
  1382. package/src/components/integration-matrix/integration-matrix.test.tsx +89 -0
  1383. package/src/components/integration-matrix/integration-matrix.tsx +237 -0
  1384. package/src/components/keyboard-shortcuts/keyboard-shortcuts.tsx +2 -2
  1385. package/src/components/label/label.tsx +1 -1
  1386. package/src/components/list-editor/list-editor.test.tsx +24 -0
  1387. package/src/components/list-editor/list-editor.tsx +126 -52
  1388. package/src/components/locale-provider/locale-keys.test.ts +134 -0
  1389. package/src/components/locale-provider/messages.ts +573 -0
  1390. package/src/components/mention-input/mention-input.stories.tsx +3 -3
  1391. package/src/components/mention-input/mention-input.test.tsx +51 -1
  1392. package/src/components/mention-input/mention-input.tsx +59 -9
  1393. package/src/components/menubar/menubar.stories.tsx +25 -0
  1394. package/src/components/menubar/menubar.tsx +18 -8
  1395. package/src/components/meter/index.ts +1 -0
  1396. package/src/components/meter/meter.stories.tsx +102 -0
  1397. package/src/components/meter/meter.test.tsx +61 -0
  1398. package/src/components/meter/meter.tsx +173 -0
  1399. package/src/components/metric-card/index.ts +6 -1
  1400. package/src/components/metric-card/metric-card.stories.tsx +63 -0
  1401. package/src/components/metric-card/metric-card.test.tsx +83 -0
  1402. package/src/components/metric-card/metric-card.tsx +97 -14
  1403. package/src/components/nav-main/nav-main.tsx +7 -3
  1404. package/src/components/nav-notifications/nav-notifications.test.tsx +11 -0
  1405. package/src/components/nav-notifications/nav-notifications.tsx +11 -5
  1406. package/src/components/nav-user/nav-user.test.tsx +23 -1
  1407. package/src/components/nav-user/nav-user.tsx +68 -53
  1408. package/src/components/navigation-menu/navigation-menu.stories.tsx +42 -0
  1409. package/src/components/navigation-menu/navigation-menu.tsx +16 -4
  1410. package/src/components/number-input/number-input.stories.tsx +7 -3
  1411. package/src/components/number-input/number-input.test.tsx +47 -0
  1412. package/src/components/number-input/number-input.tsx +65 -24
  1413. package/src/components/page-shell/page-shell.stories.tsx +1 -1
  1414. package/src/components/page-shell/page-shell.tsx +3 -2
  1415. package/src/components/pagination/pagination.test.tsx +20 -1
  1416. package/src/components/pagination/pagination.tsx +20 -14
  1417. package/src/components/parallax-plane/index.ts +8 -0
  1418. package/src/components/parallax-plane/parallax-plane.css +26 -0
  1419. package/src/components/parallax-plane/parallax-plane.stories.tsx +88 -0
  1420. package/src/components/parallax-plane/parallax-plane.test.tsx +57 -0
  1421. package/src/components/parallax-plane/parallax-plane.tsx +80 -0
  1422. package/src/components/popover/popover.tsx +2 -1
  1423. package/src/components/progress/progress.stories.tsx +85 -0
  1424. package/src/components/progress/progress.test.tsx +47 -0
  1425. package/src/components/progress/progress.tsx +59 -3
  1426. package/src/components/rating/rating.tsx +2 -0
  1427. package/src/components/resizable/resizable.test.tsx +76 -0
  1428. package/src/components/resizable/resizable.tsx +31 -5
  1429. package/src/components/reveal-on-enter/index.ts +5 -0
  1430. package/src/components/reveal-on-enter/reveal-on-enter.css +32 -0
  1431. package/src/components/reveal-on-enter/reveal-on-enter.stories.tsx +100 -0
  1432. package/src/components/reveal-on-enter/reveal-on-enter.test.tsx +87 -0
  1433. package/src/components/reveal-on-enter/reveal-on-enter.tsx +75 -0
  1434. package/src/components/revision-timeline/revision-timeline.tsx +8 -5
  1435. package/src/components/schema-form/index.ts +2 -0
  1436. package/src/components/schema-form/schema-form-spec.ts +36 -0
  1437. package/src/components/schema-form/schema-form-store.ts +506 -0
  1438. package/src/components/schema-form/schema-form.stories.tsx +33 -0
  1439. package/src/components/schema-form/schema-form.test.tsx +165 -1
  1440. package/src/components/schema-form/schema-form.tsx +271 -328
  1441. package/src/components/scroll-area/index.ts +1 -1
  1442. package/src/components/scroll-area/scroll-area.tsx +47 -18
  1443. package/src/components/section-header/section-header.tsx +2 -4
  1444. package/src/components/select/select.stories.tsx +17 -0
  1445. package/src/components/select/select.test.tsx +28 -1
  1446. package/src/components/select/select.tsx +9 -7
  1447. package/src/components/separator/separator.tsx +1 -0
  1448. package/src/components/sheet/sheet.test.tsx +39 -0
  1449. package/src/components/sheet/sheet.tsx +40 -9
  1450. package/src/components/side-dock/side-dock.stories.tsx +83 -0
  1451. package/src/components/side-dock/side-dock.test.tsx +26 -0
  1452. package/src/components/side-dock/side-dock.tsx +65 -18
  1453. package/src/components/sidebar/sidebar.stories.tsx +3 -3
  1454. package/src/components/sidebar/sidebar.test.tsx +66 -2
  1455. package/src/components/sidebar/sidebar.tsx +54 -13
  1456. package/src/components/skeleton/skeleton.tsx +1 -0
  1457. package/src/components/skip-link/skip-link.stories.tsx +1 -0
  1458. package/src/components/slider/slider.stories.tsx +13 -77
  1459. package/src/components/slider-number/slider-number.stories.tsx +4 -1
  1460. package/src/components/slider-number/slider-number.test.tsx +1 -1
  1461. package/src/components/sonner/sonner.tsx +2 -0
  1462. package/src/components/spec-playground/index.ts +10 -0
  1463. package/src/components/spec-playground/locate-json-path.ts +144 -0
  1464. package/src/components/spec-playground/spec-playground.stories.tsx +156 -0
  1465. package/src/components/spec-playground/spec-playground.test.tsx +106 -0
  1466. package/src/components/spec-playground/spec-playground.tsx +351 -0
  1467. package/src/components/spinner/spinner.test.tsx +18 -0
  1468. package/src/components/spinner/spinner.tsx +14 -4
  1469. package/src/components/state-panel/state-panel.stories.tsx +4 -2
  1470. package/src/components/state-panel/state-panel.test.tsx +3 -3
  1471. package/src/components/state-panel/state-panel.tsx +16 -9
  1472. package/src/components/status-badge/status-badge.stories.tsx +53 -0
  1473. package/src/components/status-badge/status-badge.test.tsx +37 -0
  1474. package/src/components/status-badge/status-badge.tsx +75 -13
  1475. package/src/components/surface-tour/index.ts +11 -0
  1476. package/src/components/surface-tour/surface-tour.stories.tsx +150 -0
  1477. package/src/components/surface-tour/surface-tour.test.tsx +117 -0
  1478. package/src/components/surface-tour/surface-tour.tsx +456 -0
  1479. package/src/components/switch/switch.tsx +2 -0
  1480. package/src/components/table/table.stories.tsx +3 -1
  1481. package/src/components/table/table.test.tsx +9 -2
  1482. package/src/components/table/table.tsx +22 -9
  1483. package/src/components/tabs/index.ts +10 -1
  1484. package/src/components/tabs/tabs.stories.tsx +95 -1
  1485. package/src/components/tabs/tabs.test.tsx +93 -0
  1486. package/src/components/tabs/tabs.tsx +215 -77
  1487. package/src/components/tag-input/tag-input.tsx +4 -2
  1488. package/src/components/team-switcher/team-switcher.tsx +3 -3
  1489. package/src/components/textarea/textarea.tsx +2 -2
  1490. package/src/components/theme-family-switch/index.ts +10 -0
  1491. package/src/components/theme-family-switch/theme-family-switch.stories.tsx +97 -0
  1492. package/src/components/theme-family-switch/theme-family-switch.test.tsx +85 -0
  1493. package/src/components/theme-family-switch/theme-family-switch.tsx +166 -0
  1494. package/src/components/theme-switcher/theme-switcher.stories.tsx +76 -0
  1495. package/src/components/theme-switcher/theme-switcher.test.tsx +182 -0
  1496. package/src/components/theme-switcher/theme-switcher.tsx +144 -13
  1497. package/src/components/timeline/timeline.tsx +0 -3
  1498. package/src/components/toggle/toggle.tsx +7 -2
  1499. package/src/components/toggle-group/toggle-group.tsx +2 -0
  1500. package/src/components/token-spotlight/index.ts +11 -0
  1501. package/src/components/token-spotlight/token-spotlight.css +32 -0
  1502. package/src/components/token-spotlight/token-spotlight.stories.tsx +161 -0
  1503. package/src/components/token-spotlight/token-spotlight.test.tsx +323 -0
  1504. package/src/components/token-spotlight/token-spotlight.tsx +379 -0
  1505. package/src/components/token-spotlight/token-value-format.ts +205 -0
  1506. package/src/components/tooltip/tooltip.tsx +2 -1
  1507. package/src/components/top-nav/top-nav.test.tsx +59 -0
  1508. package/src/components/top-nav/top-nav.tsx +37 -7
  1509. package/src/components/transfer/transfer.tsx +35 -30
  1510. package/src/components/tree/tree.stories.tsx +1 -1
  1511. package/src/components/tree/tree.test.tsx +45 -4
  1512. package/src/components/tree/tree.tsx +81 -26
  1513. package/src/components/tree/use-tree-keyboard.ts +37 -14
  1514. package/src/components/tree-select/tree-select.stories.tsx +9 -0
  1515. package/src/components/tree-select/tree-select.test.tsx +5 -0
  1516. package/src/components/tree-select/tree-select.tsx +11 -14
  1517. package/src/components/typography/prose.test.tsx +3 -2
  1518. package/src/components/typography/prose.tsx +3 -3
  1519. package/src/components/typography/typography.stories.tsx +7 -2
  1520. package/src/components/typography/typography.tsx +8 -0
  1521. package/src/components/view-toolbar/view-toolbar.stories.tsx +2 -1
  1522. package/src/components/view-toolbar/view-toolbar.tsx +2 -2
  1523. package/src/components/virtual-select/virtual-select.stories.tsx +9 -0
  1524. package/src/components/virtual-select/virtual-select.test.tsx +28 -2
  1525. package/src/components/virtual-select/virtual-select.tsx +56 -18
  1526. package/src/components/wizard/wizard.test.tsx +9 -0
  1527. package/src/components/wizard/wizard.tsx +12 -4
  1528. package/src/decoration.stories.tsx +213 -2
  1529. package/src/index.ts +51 -0
  1530. package/src/lib/cn.test.ts +20 -0
  1531. package/src/lib/cn.ts +36 -2
  1532. package/src/lib/color-scale.test.ts +386 -0
  1533. package/src/lib/color-scale.ts +628 -0
  1534. package/src/lib/compact-number.ts +118 -28
  1535. package/src/lib/csv.ts +48 -0
  1536. package/src/lib/diff-rows.ts +2 -0
  1537. package/src/lib/merge-refs.ts +2 -0
  1538. package/src/lib/use-controllable-state.ts +47 -0
  1539. package/src/lib/use-mobile.test.tsx +47 -0
  1540. package/src/lib/use-mobile.ts +26 -10
  1541. package/src/lib/use-scroll-progress.ts +103 -0
  1542. package/src/motion.stories.tsx +1 -0
  1543. package/src/templates-object-detail-hub.stories.tsx +8 -8
  1544. package/src/templates-screen-states.stories.tsx +1 -1
  1545. package/src/templates-settings.stories.tsx +8 -3
  1546. package/dist/chunk-JKPPTL63.js +0 -48
  1547. package/dist/chunk-JKPPTL63.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/schema-form/schema-form-store.ts"],"sourcesContent":["\"use client\";\n\n/**\n * schema-form-store.ts — the per-field external store backing `SchemaForm`\n * (perf review §3.4: \"one context carries all values → every keystroke\n * re-renders every field and re-runs isFieldVisible across the spec\").\n *\n * One `SchemaFormStore` instance lives for a `SchemaFormProvider`'s whole\n * lifetime (created once via a lazy `useState` initializer in\n * `schema-form.tsx`). It owns `values`/`attempted` and derives\n * `effectiveValues`/`errors` from them, exactly as the previous\n * `useMemo`-based implementation did — the FORMULAS are unchanged (see\n * `computeMergedValues`, ported byte-for-byte from the old `mergedValues`\n * closure). What changes is how a component reads them:\n *\n * - `SchemaFormField` subscribes to its OWN `FieldSnapshot` via\n * `useFieldSnapshot(name)` (a `useSyncExternalStore` selector). The\n * snapshot is cached per field name and a fresh compute that is\n * field-by-field equal to the cached one returns the CACHED object —\n * `useSyncExternalStore`'s own `Object.is` bail-out then skips re-\n * rendering that field when an unrelated field's keystroke fires the\n * store's `emit()`. `SchemaFormField` is also wrapped in `memo()`, so a\n * parent container re-rendering (see below) does not cascade into it\n * either, as long as the `name`/`className`/`...props` it was given\n * didn't change.\n * - Containers that list CHILDREN by name (`SchemaFormFields`,\n * `GroupTabsControl`'s per-branch content, `AdvancedGroupBranch`) read\n * `useVisibleFieldNames(fields)` — a cached `string[]` that only changes\n * reference when the VISIBLE SET actually changes, not on every\n * keystroke — so typing in one field doesn't even cause its siblings'\n * list container to reconcile new elements for them.\n * - `useSchemaFormMeta()` covers the slow-changing, form-wide flags\n * (`disabled`/`submitted`/`submitting`/`loading`/`error`/`attempted`/\n * `spec`) as ONE cached object — stable across ordinary typing, so a\n * component reading only these (e.g. `SchemaFormRoot`) doesn't re-render\n * on every keystroke either.\n * - `useEffectiveValues()` exposes the full merged/stripped values object\n * with the SAME reference-stability contract the old `useMemo` gave\n * `SchemaFormTestAction` (which compares it by `!==` to detect \"the user\n * edited while a test was in flight\") — unaffected by this refactor.\n *\n * Every derived getter is a plain, synchronous function of the store's\n * current `props`/`internalValues`/`attempted` — none of this maintains\n * parallel state that could drift from `values`.\n */\n\nimport { useCallback, useSyncExternalStore, type ReactNode } from \"react\";\nimport {\n collectValidatableFields,\n isFieldVisible,\n initialFormValues,\n validateForm,\n type FieldSpec,\n type FormSubmitState,\n type FormValue,\n type FormValues,\n type GroupFieldSpec,\n type GroupItemSpec,\n type NormalizedFormSpec,\n} from \"./schema-form-spec\";\n\n// ─── Pure helpers (spec + values → values), no React ───────────────────────\n\n/** The effective value for a field (state value, else its default/empty). */\nfunction effectiveValue(field: FieldSpec, values: FormValues): FormValue {\n const v = values[field.name];\n if (v !== undefined) return v;\n if (field.type === \"group\") return field.default ?? field.groups[0]?.key;\n if (\"default\" in field && field.default !== undefined) return field.default;\n if (field.type === \"boolean\") return false;\n if (field.type === \"multi-enum\" || field.type === \"list\") return [];\n if (field.type === \"key-value\") return [];\n if (field.type === \"file\") return [];\n return undefined;\n}\n\n/** Remove every field's key (recursively, including nested group branches) from `values`. */\nfunction stripFields(fields: FieldSpec[], values: FormValues): void {\n for (const field of fields) {\n delete values[field.name];\n if (field.type === \"group\") {\n for (const group of field.groups) stripFields(group.fields, values);\n }\n }\n}\n\n/** The active branch of a `variant: \"tabs\"` group, given its own (possibly-just-computed) value. */\nfunction activeTabBranch(field: GroupFieldSpec, activeKey: FormValue): GroupItemSpec | undefined {\n const key = typeof activeKey === \"string\" ? activeKey : undefined;\n return (\n field.groups.find((g) => g.key === key) ??\n field.groups.find((g) => g.key === field.default) ??\n field.groups[0]\n );\n}\n\n/**\n * `values` with every field's default/empty fallback applied and every\n * currently-hidden field's subtree stripped. Ported byte-for-byte from the\n * previous `SchemaFormProvider`'s `mergedValues` closure — see that\n * implementation's history for the full reasoning on why hidden fields are\n * stripped rather than merely skipped.\n */\nfunction computeMergedValues(fields: FieldSpec[], base: FormValues): FormValues {\n const merged: FormValues = { ...base };\n const fill = (fs: FieldSpec[]) => {\n for (const field of fs) {\n if (!isFieldVisible(field, merged)) {\n delete merged[field.name];\n if (field.type === \"group\") {\n for (const group of field.groups) stripFields(group.fields, merged);\n }\n continue;\n }\n merged[field.name] = effectiveValue(field, merged);\n if (field.type !== \"group\") continue;\n if (field.variant === \"tabs\") {\n const active = activeTabBranch(field, merged[field.name]);\n for (const group of field.groups) {\n if (group === active) fill(group.fields);\n else stripFields(group.fields, merged);\n }\n } else {\n for (const group of field.groups) fill(group.fields);\n }\n }\n };\n fill(fields);\n return merged;\n}\n\n/** Does any field in this branch (including nested group branches) currently have an error? */\nfunction branchHasError(fields: FieldSpec[], errors: Record<string, string | null>): boolean {\n for (const field of fields) {\n if (errors[field.name]) return true;\n if (field.type === \"group\") {\n for (const group of field.groups) {\n if (branchHasError(group.fields, errors)) return true;\n }\n }\n }\n return false;\n}\n\nfunction buildFieldMap(fields: FieldSpec[]): Map<string, FieldSpec> {\n const map = new Map<string, FieldSpec>();\n const walk = (fs: FieldSpec[]) => {\n for (const field of fs) {\n map.set(field.name, field);\n if (field.type === \"group\") {\n for (const group of field.groups) walk(group.fields);\n }\n }\n };\n walk(fields);\n return map;\n}\n\nfunction sameNames(a: string[], b: string[]): boolean {\n if (a.length !== b.length) return false;\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n}\n\n// ─── Store ──────────────────────────────────────────────────────────────────\n\nexport interface SchemaFormStoreProps {\n spec: NormalizedFormSpec;\n valuesProp: FormValues | undefined;\n onChange?: (values: FormValues) => void;\n onSubmit?: (state: FormSubmitState) => void;\n disabled: boolean;\n submitted: boolean;\n submitting: boolean;\n loading: boolean;\n error: ReactNode;\n}\n\nexport interface FieldSnapshot {\n value: FormValue;\n invalid: boolean;\n errorText: string | null;\n visible: boolean;\n disabled: boolean;\n readOnly: boolean;\n}\n\nexport interface SchemaFormMeta {\n spec: NormalizedFormSpec;\n formId: string;\n headingId: string;\n disabled: boolean;\n submitted: boolean;\n submitting: boolean;\n loading: boolean;\n error: ReactNode;\n attempted: boolean;\n}\n\nconst EMPTY_ERRORS: Record<string, string | null> = {};\n\n/**\n * `effectiveValue` mints a FRESH `[]` for an unset list/multi-enum/key-value/\n * file field on every call. A controlled form whose `values` omit such a field\n * would then never match its cached snapshot, so `getFieldSnapshot` would\n * return a new object on every `useSyncExternalStore` read — an infinite\n * re-render loop (\"Maximum update depth exceeded\"). Two empty arrays are the\n * same value for rendering purposes.\n */\nfunction sameFieldValue(a: FormValue, b: FormValue): boolean {\n if (Object.is(a, b)) return true;\n return Array.isArray(a) && Array.isArray(b) && a.length === 0 && b.length === 0;\n}\n\nfunction fieldSnapshotEqual(a: FieldSnapshot, b: FieldSnapshot): boolean {\n return (\n sameFieldValue(a.value, b.value) &&\n a.invalid === b.invalid &&\n a.errorText === b.errorText &&\n a.visible === b.visible &&\n a.disabled === b.disabled &&\n a.readOnly === b.readOnly\n );\n}\n\nfunction metaEqual(a: SchemaFormMeta, b: SchemaFormMeta): boolean {\n return (\n a.spec === b.spec &&\n a.formId === b.formId &&\n a.headingId === b.headingId &&\n a.disabled === b.disabled &&\n a.submitted === b.submitted &&\n a.submitting === b.submitting &&\n a.loading === b.loading &&\n a.error === b.error &&\n a.attempted === b.attempted\n );\n}\n\n/** See the module doc comment for the full design rationale. */\nexport class SchemaFormStore {\n private props: SchemaFormStoreProps;\n private internalValues: FormValues;\n private attempted = false;\n private readonly listeners = new Set<() => void>();\n private readonly pendingFocusListeners = new Set<(name: string) => void>();\n readonly formId: string;\n readonly headingId: string;\n\n private mergedCache: { base: FormValues; fields: FieldSpec[]; result: FormValues } | null = null;\n private errorsCache: {\n merged: FormValues;\n fields: FieldSpec[];\n attempted: boolean;\n result: Record<string, string | null>;\n } | null = null;\n private metaCache: SchemaFormMeta | null = null;\n private fieldMapCache: { fields: FieldSpec[]; map: Map<string, FieldSpec> } | null = null;\n private readonly fieldSnapshotCache = new Map<string, FieldSnapshot>();\n private readonly namesCache = new WeakMap<\n FieldSpec[],\n { effective: FormValues; names: string[] }\n >();\n\n constructor(props: SchemaFormStoreProps, formId: string) {\n this.props = props;\n this.formId = formId;\n this.headingId = `${formId}-title`;\n this.internalValues = initialFormValues(props.spec.fields);\n }\n\n subscribe = (listener: () => void): (() => void) => {\n this.listeners.add(listener);\n return () => {\n this.listeners.delete(listener);\n };\n };\n\n /** Fires once, with the field's own name, whenever an invalid submit should move focus to it. */\n onPendingFocus(listener: (name: string) => void): () => void {\n this.pendingFocusListeners.add(listener);\n return () => {\n this.pendingFocusListeners.delete(listener);\n };\n }\n\n private emit(): void {\n for (const listener of this.listeners) listener();\n }\n\n /**\n * Sync the latest render's props/closures. Called unconditionally on every\n * `SchemaFormProvider` render, DURING that render (not an effect) — so a\n * non-memoized descendant re-rendering in this SAME pass (`SchemaFormRoot`,\n * `SchemaFormFields`, …) reads the fresh values via `getMeta`/\n * `getFieldSnapshot`, not last render's. It deliberately does NOT call\n * `emit()` itself — that would call an already-mounted, `memo`-wrapped\n * `SchemaFormField`'s `useSyncExternalStore` listener synchronously WHILE\n * `SchemaFormProvider` (a different component) is still rendering, which\n * React explicitly disallows (\"Cannot update a component while rendering a\n * different component\"). The caller instead reads the returned `changed`\n * flag and calls `notify()` from a `useLayoutEffect` — i.e. after this\n * whole render has committed — to wake any memoized subscriber that this\n * render's own top-down reconciliation skipped over.\n */\n syncProps(next: SchemaFormStoreProps): boolean {\n const prev = this.props;\n const formNameChanged = next.spec.formName !== prev.spec.formName;\n this.props = next;\n if (next.valuesProp === undefined && formNameChanged) {\n this.internalValues = initialFormValues(next.spec.fields);\n }\n return (\n formNameChanged ||\n prev.spec !== next.spec ||\n prev.valuesProp !== next.valuesProp ||\n prev.disabled !== next.disabled ||\n prev.submitted !== next.submitted ||\n prev.submitting !== next.submitting ||\n prev.loading !== next.loading ||\n prev.error !== next.error\n );\n }\n\n /** Wakes every subscriber outside of any component's render phase (see `syncProps`). */\n notify(): void {\n this.emit();\n }\n\n private get isControlled(): boolean {\n return this.props.valuesProp !== undefined;\n }\n\n private getFieldMap(): Map<string, FieldSpec> {\n const fields = this.props.spec.fields;\n if (this.fieldMapCache && this.fieldMapCache.fields === fields) return this.fieldMapCache.map;\n const map = buildFieldMap(fields);\n this.fieldMapCache = { fields, map };\n return map;\n }\n\n getField(name: string): FieldSpec | undefined {\n return this.getFieldMap().get(name);\n }\n\n getValues(): FormValues {\n return this.isControlled ? (this.props.valuesProp as FormValues) : this.internalValues;\n }\n\n /** The merged/stripped values every visibility check and submit resolves against. Reference-stable when nothing changed (SchemaFormTestAction relies on this to detect a stale in-flight test). */\n getEffectiveValues(): FormValues {\n const base = this.getValues();\n const fields = this.props.spec.fields;\n if (this.mergedCache && this.mergedCache.base === base && this.mergedCache.fields === fields) {\n return this.mergedCache.result;\n }\n const result = computeMergedValues(fields, base);\n this.mergedCache = { base, fields, result };\n return result;\n }\n\n /** Empty until the first submit attempt (`EMPTY_ERRORS`, a stable reference); live-updates after. */\n getErrors(): Record<string, string | null> {\n if (!this.attempted) return EMPTY_ERRORS;\n const merged = this.getEffectiveValues();\n const fields = this.props.spec.fields;\n if (\n this.errorsCache &&\n this.errorsCache.merged === merged &&\n this.errorsCache.fields === fields &&\n this.errorsCache.attempted === this.attempted\n ) {\n return this.errorsCache.result;\n }\n const result = validateForm(fields, merged);\n this.errorsCache = { merged, fields, attempted: this.attempted, result };\n return result;\n }\n\n /** The slow-changing, form-wide flags — cached so ordinary typing never changes this object's reference. */\n getMeta(): SchemaFormMeta {\n const next: SchemaFormMeta = {\n spec: this.props.spec,\n formId: this.formId,\n headingId: this.headingId,\n disabled: this.props.disabled,\n submitted: this.props.submitted,\n submitting: this.props.submitting,\n loading: this.props.loading,\n error: this.props.error,\n attempted: this.attempted,\n };\n if (this.metaCache && metaEqual(this.metaCache, next)) return this.metaCache;\n this.metaCache = next;\n return next;\n }\n\n /** One field's reactive data. Cached per name — returns the SAME object when nothing about this field changed, so `useSyncExternalStore` bails out of re-rendering it. */\n getFieldSnapshot(name: string): FieldSnapshot {\n const field = this.getField(name);\n const merged = this.getEffectiveValues();\n const values = this.getValues();\n const errors = this.getErrors();\n const errorText = errors[name] ?? null;\n const next: FieldSnapshot = {\n value: field ? effectiveValue(field, values) : undefined,\n invalid: Boolean(errorText),\n errorText,\n visible: field ? isFieldVisible(field, merged) : false,\n disabled: this.props.disabled || this.props.submitted || this.props.submitting,\n readOnly: this.props.submitted,\n };\n const prev = this.fieldSnapshotCache.get(name);\n if (prev && fieldSnapshotEqual(prev, next)) return prev;\n this.fieldSnapshotCache.set(name, next);\n return next;\n }\n\n /**\n * Names of `fields` that are currently visible (top-level filter of\n * exactly that array — a `group`'s own branches call this again with\n * their OWN `fields`, which is what lets a branch react to a nested\n * `visibleWhen` independent of its ancestor `SchemaFormField`'s own\n * re-render). Cached by array reference, so a caller whose visible SET\n * didn't change gets back the SAME array across an unrelated keystroke.\n */\n getVisibleNames(fields: FieldSpec[]): string[] {\n const effective = this.getEffectiveValues();\n const cached = this.namesCache.get(fields);\n if (cached && cached.effective === effective) return cached.names;\n const names = fields\n .filter((field) => isFieldVisible(field, effective))\n .map((field) => field.name);\n const stable = cached && sameNames(cached.names, names) ? cached.names : names;\n this.namesCache.set(fields, { effective, names: stable });\n return stable;\n }\n\n getBranchHasError(fields: FieldSpec[]): boolean {\n return branchHasError(fields, this.getErrors());\n }\n\n setValue = (name: string, value: FormValue): void => {\n const base = this.getValues();\n const next: FormValues = { ...base, [name]: value };\n if (!this.isControlled) this.internalValues = next;\n this.props.onChange?.(next);\n this.emit();\n };\n\n submit = (): void => {\n this.attempted = true;\n const merged = this.getEffectiveValues();\n const errs = validateForm(this.props.spec.fields, merged);\n const invalidNames = Object.keys(errs).filter((n) => errs[n]);\n if (invalidNames.length > 0) {\n const firstInvalid = collectValidatableFields(this.props.spec.fields, merged).find(\n (f) => errs[f.name],\n );\n this.emit();\n if (firstInvalid) {\n for (const listener of this.pendingFocusListeners) listener(firstInvalid.name);\n }\n return;\n }\n this.emit();\n this.props.onSubmit?.({ formName: this.props.spec.formName, values: merged });\n };\n\n reset = (): void => {\n this.attempted = false;\n const seeded = initialFormValues(this.props.spec.fields);\n if (!this.isControlled) this.internalValues = seeded;\n this.props.onChange?.(seeded);\n this.emit();\n };\n}\n\n// ─── Hooks ──────────────────────────────────────────────────────────────────\n\nexport function useSchemaFormMeta(store: SchemaFormStore): SchemaFormMeta {\n const getSnapshot = useCallback(() => store.getMeta(), [store]);\n return useSyncExternalStore(store.subscribe, getSnapshot);\n}\n\nexport function useFieldSnapshot(store: SchemaFormStore, name: string): FieldSnapshot {\n const getSnapshot = useCallback(() => store.getFieldSnapshot(name), [store, name]);\n return useSyncExternalStore(store.subscribe, getSnapshot);\n}\n\nexport function useEffectiveValues(store: SchemaFormStore): FormValues {\n const getSnapshot = useCallback(() => store.getEffectiveValues(), [store]);\n return useSyncExternalStore(store.subscribe, getSnapshot);\n}\n\nexport function useVisibleFieldNames(store: SchemaFormStore, fields: FieldSpec[]): string[] {\n const getSnapshot = useCallback(() => store.getVisibleNames(fields), [store, fields]);\n return useSyncExternalStore(store.subscribe, getSnapshot);\n}\n\nexport function useBranchHasError(store: SchemaFormStore, fields: FieldSpec[]): boolean {\n const getSnapshot = useCallback(() => store.getBranchHasError(fields), [store, fields]);\n return useSyncExternalStore(store.subscribe, getSnapshot);\n}\n"],"mappings":"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","names":[]}
@@ -0,0 +1,18 @@
1
+ "use client";
2
+
3
+ // src/components/workspace-picker/workspace-picker-state.ts
4
+ function formatLastOpened(date, locale, now = Date.now()) {
5
+ const diffMs = date.getTime() - now;
6
+ const rtf = new Intl.RelativeTimeFormat(locale, { numeric: "auto" });
7
+ const minutes = Math.round(diffMs / (60 * 1e3));
8
+ if (Math.abs(minutes) < 60) return rtf.format(minutes, "minute");
9
+ const hours = Math.round(diffMs / (60 * 60 * 1e3));
10
+ if (Math.abs(hours) < 24) return rtf.format(hours, "hour");
11
+ const days = Math.round(diffMs / (24 * 60 * 60 * 1e3));
12
+ return rtf.format(days, "day");
13
+ }
14
+
15
+ export {
16
+ formatLastOpened
17
+ };
18
+ //# sourceMappingURL=chunk-BZQF5QCN.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/workspace-picker/workspace-picker-state.ts"],"sourcesContent":["/**\n * `WorkspacePicker`'s pure, directly-testable logic — kept out of the\n * component for the same reason `../model-picker/model-picker-state.ts` does\n * (see that file's header comment): an expression buried in JSX cannot be\n * unit-tested in isolation, and relative-time arithmetic in particular has\n * edge cases worth locking down on their own.\n */\n\n/**\n * One recent workspace. Deliberately a strict subset of `ModelPickerItem`'s\n * shape (`id` / `name` → `label` / `path` → `description` / `lastOpenedAt` →\n * a formatted `meta` entry) — see the reuse note in `workspace-picker.tsx`.\n */\nexport interface Workspace {\n id: string;\n /** Rendered as the row's primary label and, when current, the trigger text. */\n name: string;\n /**\n * The filesystem path. Long, user-supplied content — the row truncates it,\n * never wraps or overflows.\n */\n path: string;\n /**\n * When this workspace was last opened. Rendered as a relative time via\n * `Intl.RelativeTimeFormat` (`formatLastOpened`, below) — never a\n * pre-formatted string the caller hands over.\n */\n lastOpenedAt?: Date;\n}\n\n/**\n * \"2 hours ago\" / \"in 3 minutes\" / \"yesterday\" — `Intl.RelativeTimeFormat`\n * picks the coarsest unit (minutes → hours → days) that still reads\n * naturally, instead of e.g. \"127 minutes ago\".\n *\n * @param now - injection seam for tests; defaults to the real clock.\n */\nexport function formatLastOpened(date: Date, locale: string, now: number = Date.now()): string {\n const diffMs = date.getTime() - now;\n const rtf = new Intl.RelativeTimeFormat(locale, { numeric: \"auto\" });\n\n const minutes = Math.round(diffMs / (60 * 1000));\n if (Math.abs(minutes) < 60) return rtf.format(minutes, \"minute\");\n\n const hours = Math.round(diffMs / (60 * 60 * 1000));\n if (Math.abs(hours) < 24) return rtf.format(hours, \"hour\");\n\n const days = Math.round(diffMs / (24 * 60 * 60 * 1000));\n return rtf.format(days, \"day\");\n}\n"],"mappings":";;;AAqCO,SAAS,iBAAiB,MAAY,QAAgB,MAAc,KAAK,IAAI,GAAW;AAC7F,QAAM,SAAS,KAAK,QAAQ,IAAI;AAChC,QAAM,MAAM,IAAI,KAAK,mBAAmB,QAAQ,EAAE,SAAS,OAAO,CAAC;AAEnE,QAAM,UAAU,KAAK,MAAM,UAAU,KAAK,IAAK;AAC/C,MAAI,KAAK,IAAI,OAAO,IAAI,GAAI,QAAO,IAAI,OAAO,SAAS,QAAQ;AAE/D,QAAM,QAAQ,KAAK,MAAM,UAAU,KAAK,KAAK,IAAK;AAClD,MAAI,KAAK,IAAI,KAAK,IAAI,GAAI,QAAO,IAAI,OAAO,OAAO,MAAM;AAEzD,QAAM,OAAO,KAAK,MAAM,UAAU,KAAK,KAAK,KAAK,IAAK;AACtD,SAAO,IAAI,OAAO,MAAM,KAAK;AAC/B;","names":[]}
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ //# sourceMappingURL=chunk-C2AQEEFB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ //# sourceMappingURL=chunk-C753P3VJ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ //# sourceMappingURL=chunk-CDE74W6O.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ //# sourceMappingURL=chunk-CEQER4CV.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,55 @@
1
+ "use client";
2
+ import {
3
+ cn
4
+ } from "./chunk-KBNWM27Q.js";
5
+
6
+ // src/components/sonner/sonner.tsx
7
+ import { useEffect, useState } from "react";
8
+ import { Toaster as SonnerToaster, toast } from "sonner";
9
+ import { resolveThemeIsDark } from "@elabs-ai/components-tokens";
10
+ import { jsx } from "react/jsx-runtime";
11
+ var DEFAULT_TOAST_CLASS_NAMES = {
12
+ toast: "group toast group-[.toaster]:bg-card group-[.toaster]:text-card-foreground group-[.toaster]:shadow-ring-lg",
13
+ description: "group-[.toast]:text-muted-foreground",
14
+ actionButton: "group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",
15
+ cancelButton: "group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"
16
+ };
17
+ function useDocumentThemeMode() {
18
+ const [mode, setMode] = useState("light");
19
+ useEffect(() => {
20
+ if (typeof document === "undefined") return;
21
+ const el = document.documentElement;
22
+ const read = () => setMode(resolveThemeIsDark(el) ? "dark" : "light");
23
+ read();
24
+ const obs = new MutationObserver(read);
25
+ obs.observe(el, { attributes: true, attributeFilter: ["data-theme"] });
26
+ return () => obs.disconnect();
27
+ }, []);
28
+ return mode;
29
+ }
30
+ function Toaster({ className, toastOptions, ...rest }) {
31
+ const mode = useDocumentThemeMode();
32
+ const userClassNames = toastOptions?.classNames;
33
+ const classNames = {
34
+ ...userClassNames,
35
+ toast: cn(DEFAULT_TOAST_CLASS_NAMES.toast, userClassNames?.toast),
36
+ description: cn(DEFAULT_TOAST_CLASS_NAMES.description, userClassNames?.description),
37
+ actionButton: cn(DEFAULT_TOAST_CLASS_NAMES.actionButton, userClassNames?.actionButton),
38
+ cancelButton: cn(DEFAULT_TOAST_CLASS_NAMES.cancelButton, userClassNames?.cancelButton)
39
+ };
40
+ return /* @__PURE__ */ jsx(
41
+ SonnerToaster,
42
+ {
43
+ theme: mode,
44
+ className: cn("toaster group", className),
45
+ toastOptions: { ...toastOptions, classNames },
46
+ ...rest
47
+ }
48
+ );
49
+ }
50
+
51
+ export {
52
+ toast,
53
+ Toaster
54
+ };
55
+ //# sourceMappingURL=chunk-CQ5CH3SB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/sonner/sonner.tsx"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useState } from \"react\";\nimport { Toaster as SonnerToaster, toast } from \"sonner\";\nimport { resolveThemeIsDark } from \"@elabs-ai/components-tokens\";\nimport { cn } from \"../../lib/cn\";\n\n/**\n * The library's default token-backed toast class names. Kept as a standalone\n * constant (rather than inline in the JSX) so `Toaster` can merge a\n * consumer's `toastOptions.classNames` INTO these defaults instead of\n * shallow-replacing them (#362) — each key is combined via `cn()` so a\n * consumer's override extends the default class string rather than\n * discarding it.\n */\nconst DEFAULT_TOAST_CLASS_NAMES = {\n toast:\n \"group toast group-[.toaster]:bg-card group-[.toaster]:text-card-foreground group-[.toaster]:shadow-ring-lg\",\n description: \"group-[.toast]:text-muted-foreground\",\n actionButton: \"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground\",\n cancelButton: \"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground\",\n} as const;\n\n/**\n * Reads the active theme's light/dark-ness off the document. Uses\n * `resolveThemeIsDark` — the theme's own `color-scheme` — rather than a registry\n * lookup, so a consumer-authored dark theme gets dark toasts with no\n * registration (ADR 0029).\n */\nfunction useDocumentThemeMode(): \"light\" | \"dark\" {\n const [mode, setMode] = useState<\"light\" | \"dark\">(\"light\");\n useEffect(() => {\n if (typeof document === \"undefined\") return;\n const el = document.documentElement;\n const read = () => setMode(resolveThemeIsDark(el) ? \"dark\" : \"light\");\n read();\n const obs = new MutationObserver(read);\n obs.observe(el, { attributes: true, attributeFilter: [\"data-theme\"] });\n return () => obs.disconnect();\n }, []);\n return mode;\n}\n\nexport type ToasterProps = React.ComponentProps<typeof SonnerToaster>;\n\n/**\n * Toast host. Mount once near the app root. Trigger toasts with the exported\n * `toast()`. Theme follows the active brand theme (via `data-theme`), so it\n * works with or without <ThemeProvider>.\n *\n * ## Customizing toast styling\n *\n * The Toaster wrapper renders with the classes `toaster group` by default.\n * These classes are **merged** with any consumer-supplied `className`, not\n * replaced, so that built-in styling (the `.group-[.toaster]:*` selectors\n * on individual toasts) continues to work.\n *\n * To override a built-in toast class, **mirror the variant prefix** when you\n * pass `toastOptions.classNames`. Built-in toast classes are variant-scoped\n * (e.g. `group-[.toaster]:bg-card`), so a bare utility override will be\n * outspecificity'd by the built-in and appear to do nothing. Instead, use:\n *\n * ```tsx\n * <Toaster\n * toastOptions={{\n * classNames: {\n * toast: \"group-[.toaster]:bg-primary\", // ✓ mirrors the prefix\n * }\n * }}\n * />\n * ```\n *\n * ## Theme handling\n *\n * The Toaster's `theme` prop is automatically set from the active theme's own\n * `color-scheme` declaration, so toasts visually track the app's theme by\n * default — including a theme you authored yourself. However, you may pass\n * `theme=\"light\"` or `theme=\"dark\"` directly to override this derivation if needed.\n */\nexport function Toaster({ className, toastOptions, ...rest }: ToasterProps) {\n const mode = useDocumentThemeMode();\n const userClassNames = toastOptions?.classNames;\n // Merge (not replace): every default key is extended with the consumer's\n // override via cn(); any extra keys the consumer passes (e.g. `success`,\n // `closeButton`) pass through untouched.\n const classNames = {\n ...userClassNames,\n toast: cn(DEFAULT_TOAST_CLASS_NAMES.toast, userClassNames?.toast),\n description: cn(DEFAULT_TOAST_CLASS_NAMES.description, userClassNames?.description),\n actionButton: cn(DEFAULT_TOAST_CLASS_NAMES.actionButton, userClassNames?.actionButton),\n cancelButton: cn(DEFAULT_TOAST_CLASS_NAMES.cancelButton, userClassNames?.cancelButton),\n };\n return (\n <SonnerToaster\n theme={mode}\n className={cn(\"toaster group\", className)}\n toastOptions={{ ...toastOptions, classNames }}\n {...rest}\n />\n );\n}\n\nexport { toast };\n"],"mappings":";;;;;;AAEA,SAAS,WAAW,gBAAgB;AACpC,SAAS,WAAW,eAAe,aAAa;AAChD,SAAS,0BAA0B;AAyF/B;AA9EJ,IAAM,4BAA4B;AAAA,EAChC,OACE;AAAA,EACF,aAAa;AAAA,EACb,cAAc;AAAA,EACd,cAAc;AAChB;AAQA,SAAS,uBAAyC;AAChD,QAAM,CAAC,MAAM,OAAO,IAAI,SAA2B,OAAO;AAC1D,YAAU,MAAM;AACd,QAAI,OAAO,aAAa,YAAa;AACrC,UAAM,KAAK,SAAS;AACpB,UAAM,OAAO,MAAM,QAAQ,mBAAmB,EAAE,IAAI,SAAS,OAAO;AACpE,SAAK;AACL,UAAM,MAAM,IAAI,iBAAiB,IAAI;AACrC,QAAI,QAAQ,IAAI,EAAE,YAAY,MAAM,iBAAiB,CAAC,YAAY,EAAE,CAAC;AACrE,WAAO,MAAM,IAAI,WAAW;AAAA,EAC9B,GAAG,CAAC,CAAC;AACL,SAAO;AACT;AAsCO,SAAS,QAAQ,EAAE,WAAW,cAAc,GAAG,KAAK,GAAiB;AAC1E,QAAM,OAAO,qBAAqB;AAClC,QAAM,iBAAiB,cAAc;AAIrC,QAAM,aAAa;AAAA,IACjB,GAAG;AAAA,IACH,OAAO,GAAG,0BAA0B,OAAO,gBAAgB,KAAK;AAAA,IAChE,aAAa,GAAG,0BAA0B,aAAa,gBAAgB,WAAW;AAAA,IAClF,cAAc,GAAG,0BAA0B,cAAc,gBAAgB,YAAY;AAAA,IACrF,cAAc,GAAG,0BAA0B,cAAc,gBAAgB,YAAY;AAAA,EACvF;AACA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,OAAO;AAAA,MACP,WAAW,GAAG,iBAAiB,SAAS;AAAA,MACxC,cAAc,EAAE,GAAG,cAAc,WAAW;AAAA,MAC3C,GAAG;AAAA;AAAA,EACN;AAEJ;","names":[]}
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ //# sourceMappingURL=chunk-CRGGGHAM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ //# sourceMappingURL=chunk-CRVB4SLG.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ //# sourceMappingURL=chunk-CT6XJIPY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ //# sourceMappingURL=chunk-CY624JOL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,38 @@
1
+ "use client";
2
+ import {
3
+ cn
4
+ } from "./chunk-KBNWM27Q.js";
5
+
6
+ // src/components/popover/popover.tsx
7
+ import { forwardRef } from "react";
8
+ import * as PopoverPrimitive from "@radix-ui/react-popover";
9
+ import { jsx } from "react/jsx-runtime";
10
+ var Popover = PopoverPrimitive.Root;
11
+ var PopoverTrigger = PopoverPrimitive.Trigger;
12
+ var PopoverAnchor = PopoverPrimitive.Anchor;
13
+ var PopoverContent = forwardRef(function PopoverContent2({ className, align = "center", sideOffset = 4, ...props }, ref) {
14
+ return /* @__PURE__ */ jsx(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx(
15
+ PopoverPrimitive.Content,
16
+ {
17
+ ref,
18
+ "data-slot": "popover-content",
19
+ align,
20
+ sideOffset,
21
+ className: cn(
22
+ "z-50 w-72 rounded-md bg-popover p-4 text-popover-foreground shadow-popover outline-none",
23
+ "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:zoom-out-95",
24
+ "data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2",
25
+ className
26
+ ),
27
+ ...props
28
+ }
29
+ ) });
30
+ });
31
+
32
+ export {
33
+ Popover,
34
+ PopoverTrigger,
35
+ PopoverAnchor,
36
+ PopoverContent
37
+ };
38
+ //# sourceMappingURL=chunk-D3C3VVCX.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/popover/popover.tsx"],"sourcesContent":["import { forwardRef, type ComponentPropsWithoutRef, type ElementRef } from \"react\";\nimport * as PopoverPrimitive from \"@radix-ui/react-popover\";\nimport { cn } from \"../../lib/cn\";\n\nexport const Popover = PopoverPrimitive.Root;\nexport const PopoverTrigger = PopoverPrimitive.Trigger;\nexport const PopoverAnchor = PopoverPrimitive.Anchor;\n\nexport const PopoverContent = forwardRef<\n ElementRef<typeof PopoverPrimitive.Content>,\n ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>\n>(function PopoverContent({ className, align = \"center\", sideOffset = 4, ...props }, ref) {\n return (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n ref={ref}\n data-slot=\"popover-content\"\n align={align}\n sideOffset={sideOffset}\n className={cn(\n \"z-50 w-72 rounded-md bg-popover p-4 text-popover-foreground shadow-popover outline-none\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:zoom-out-95\",\n \"data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2\",\n className,\n )}\n {...props}\n />\n </PopoverPrimitive.Portal>\n );\n});\n"],"mappings":";;;;;;AAAA,SAAS,kBAAkE;AAC3E,YAAY,sBAAsB;AAa5B;AAVC,IAAM,UAA2B;AACjC,IAAM,iBAAkC;AACxC,IAAM,gBAAiC;AAEvC,IAAM,iBAAiB,WAG5B,SAASA,gBAAe,EAAE,WAAW,QAAQ,UAAU,aAAa,GAAG,GAAG,MAAM,GAAG,KAAK;AACxF,SACE,oBAAkB,yBAAjB,EACC;AAAA,IAAkB;AAAA,IAAjB;AAAA,MACC;AAAA,MACA,aAAU;AAAA,MACV;AAAA,MACA;AAAA,MACA,WAAW;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA;AAAA,EACN,GACF;AAEJ,CAAC;","names":["PopoverContent"]}
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ //# sourceMappingURL=chunk-D53EN4Q6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,11 @@
1
+ "use client";
2
+ var __defProp = Object.defineProperty;
3
+ var __export = (target, all) => {
4
+ for (var name in all)
5
+ __defProp(target, name, { get: all[name], enumerable: true });
6
+ };
7
+
8
+ export {
9
+ __export
10
+ };
11
+ //# sourceMappingURL=chunk-DCHYNTHI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,236 @@
1
+ "use client";
2
+ import {
3
+ useLocale
4
+ } from "./chunk-EJQYE4MY.js";
5
+ import {
6
+ Button
7
+ } from "./chunk-VA2OONPE.js";
8
+ import {
9
+ cn
10
+ } from "./chunk-KBNWM27Q.js";
11
+
12
+ // src/components/carousel/carousel.tsx
13
+ import {
14
+ createContext,
15
+ forwardRef,
16
+ useCallback,
17
+ useContext,
18
+ useEffect,
19
+ useState
20
+ } from "react";
21
+ import { useDirection } from "@radix-ui/react-direction";
22
+ import useEmblaCarousel from "embla-carousel-react";
23
+ import { ArrowLeft, ArrowRight } from "lucide-react";
24
+ import { jsx } from "react/jsx-runtime";
25
+ function isEditableTarget(target) {
26
+ if (!(target instanceof HTMLElement)) return false;
27
+ if (target.isContentEditable) return true;
28
+ const tag = target.tagName;
29
+ return tag === "INPUT" || tag === "TEXTAREA" || tag === "SELECT";
30
+ }
31
+ var CarouselContext = createContext(null);
32
+ function useCarousel() {
33
+ const ctx = useContext(CarouselContext);
34
+ if (!ctx) throw new Error("useCarousel must be used within <Carousel />");
35
+ return ctx;
36
+ }
37
+ var Carousel = forwardRef(
38
+ function Carousel2({
39
+ orientation = "horizontal",
40
+ opts,
41
+ setApi,
42
+ plugins,
43
+ className,
44
+ children,
45
+ // A carousel region MUST have an accessible name (WAI-ARIA APG) —
46
+ // aria-roledescription changes the announcement, it does not name the
47
+ // landmark. Default is overridable; pass a specific label ("Product
48
+ // photos") when the carousel's purpose isn't generic. Issue #279.
49
+ "aria-label": ariaLabel,
50
+ ...props
51
+ }, ref) {
52
+ const { t } = useLocale();
53
+ const resolvedAriaLabel = ariaLabel ?? t("ui.carousel.label");
54
+ const [carouselRef, api] = useEmblaCarousel(
55
+ { ...opts, axis: orientation === "horizontal" ? "x" : "y" },
56
+ plugins
57
+ );
58
+ const [canScrollPrev, setCanScrollPrev] = useState(false);
59
+ const [canScrollNext, setCanScrollNext] = useState(false);
60
+ const dir = useDirection();
61
+ const onSelect = useCallback((a) => {
62
+ if (!a) return;
63
+ setCanScrollPrev(a.canScrollPrev());
64
+ setCanScrollNext(a.canScrollNext());
65
+ }, []);
66
+ const scrollPrev = useCallback(() => api?.scrollPrev(), [api]);
67
+ const scrollNext = useCallback(() => api?.scrollNext(), [api]);
68
+ const onKeyDown = useCallback(
69
+ (e) => {
70
+ if (isEditableTarget(e.target)) return;
71
+ if (orientation === "vertical") {
72
+ if (e.key === "ArrowUp") {
73
+ e.preventDefault();
74
+ scrollPrev();
75
+ } else if (e.key === "ArrowDown") {
76
+ e.preventDefault();
77
+ scrollNext();
78
+ }
79
+ return;
80
+ }
81
+ const isRtl = dir === "rtl";
82
+ if (e.key === "ArrowLeft") {
83
+ e.preventDefault();
84
+ if (isRtl) {
85
+ scrollNext();
86
+ } else {
87
+ scrollPrev();
88
+ }
89
+ } else if (e.key === "ArrowRight") {
90
+ e.preventDefault();
91
+ if (isRtl) {
92
+ scrollPrev();
93
+ } else {
94
+ scrollNext();
95
+ }
96
+ }
97
+ },
98
+ [orientation, dir, scrollPrev, scrollNext]
99
+ );
100
+ useEffect(() => {
101
+ if (api && setApi) setApi(api);
102
+ }, [api, setApi]);
103
+ useEffect(() => {
104
+ if (!api) return;
105
+ onSelect(api);
106
+ api.on("reInit", onSelect);
107
+ api.on("select", onSelect);
108
+ return () => {
109
+ api.off("reInit", onSelect);
110
+ api.off("select", onSelect);
111
+ };
112
+ }, [api, onSelect]);
113
+ return /* @__PURE__ */ jsx(
114
+ CarouselContext.Provider,
115
+ {
116
+ value: {
117
+ carouselRef,
118
+ api,
119
+ opts,
120
+ orientation,
121
+ scrollPrev,
122
+ scrollNext,
123
+ canScrollPrev,
124
+ canScrollNext
125
+ },
126
+ children: /* @__PURE__ */ jsx(
127
+ "div",
128
+ {
129
+ ref,
130
+ onKeyDownCapture: onKeyDown,
131
+ className: cn("relative", className),
132
+ role: "region",
133
+ "aria-roledescription": "carousel",
134
+ "aria-label": resolvedAriaLabel,
135
+ ...props,
136
+ children
137
+ }
138
+ )
139
+ }
140
+ );
141
+ }
142
+ );
143
+ var CarouselContent = forwardRef(
144
+ function CarouselContent2({ className, ...props }, ref) {
145
+ const { carouselRef, orientation } = useCarousel();
146
+ return /* @__PURE__ */ jsx("div", { ref: carouselRef, className: "overflow-hidden", children: /* @__PURE__ */ jsx(
147
+ "div",
148
+ {
149
+ ref,
150
+ className: cn(
151
+ "flex",
152
+ orientation === "horizontal" ? "-ms-4" : "-mt-4 flex-col",
153
+ className
154
+ ),
155
+ ...props
156
+ }
157
+ ) });
158
+ }
159
+ );
160
+ var CarouselItem = forwardRef(
161
+ function CarouselItem2({ className, ...props }, ref) {
162
+ const { orientation } = useCarousel();
163
+ return /* @__PURE__ */ jsx(
164
+ "div",
165
+ {
166
+ ref,
167
+ role: "group",
168
+ "aria-roledescription": "slide",
169
+ className: cn(
170
+ "min-w-0 shrink-0 grow-0 basis-full",
171
+ orientation === "horizontal" ? "ps-4" : "pt-4",
172
+ className
173
+ ),
174
+ ...props
175
+ }
176
+ );
177
+ }
178
+ );
179
+ var CarouselPrevious = forwardRef(function CarouselPrevious2({ className, ...props }, ref) {
180
+ const { scrollPrev, canScrollPrev, orientation } = useCarousel();
181
+ const { t } = useLocale();
182
+ return /* @__PURE__ */ jsx(
183
+ Button,
184
+ {
185
+ ref,
186
+ variant: "outline",
187
+ size: "icon",
188
+ disabled: !canScrollPrev,
189
+ onClick: scrollPrev,
190
+ "aria-label": t("previousSlide"),
191
+ className: cn(
192
+ "absolute size-8 rounded-full",
193
+ // Inset on narrow screens (no room for the button to sit outside
194
+ // the carousel box without overflowing horizontally); pushed
195
+ // outside the box only from `sm` up, where there's margin for it.
196
+ orientation === "horizontal" ? "start-2 top-1/2 -translate-y-1/2 sm:-start-12" : "top-2 left-1/2 -translate-x-1/2 rotate-90 sm:-top-12",
197
+ className
198
+ ),
199
+ ...props,
200
+ children: /* @__PURE__ */ jsx(ArrowLeft, { className: "size-4", "data-rtl-flip": true })
201
+ }
202
+ );
203
+ });
204
+ var CarouselNext = forwardRef(
205
+ function CarouselNext2({ className, ...props }, ref) {
206
+ const { scrollNext, canScrollNext, orientation } = useCarousel();
207
+ const { t } = useLocale();
208
+ return /* @__PURE__ */ jsx(
209
+ Button,
210
+ {
211
+ ref,
212
+ variant: "outline",
213
+ size: "icon",
214
+ disabled: !canScrollNext,
215
+ onClick: scrollNext,
216
+ "aria-label": t("nextSlide"),
217
+ className: cn(
218
+ "absolute size-8 rounded-full",
219
+ orientation === "horizontal" ? "end-2 top-1/2 -translate-y-1/2 sm:-end-12" : "bottom-2 left-1/2 -translate-x-1/2 rotate-90 sm:-bottom-12",
220
+ className
221
+ ),
222
+ ...props,
223
+ children: /* @__PURE__ */ jsx(ArrowRight, { className: "size-4", "data-rtl-flip": true })
224
+ }
225
+ );
226
+ }
227
+ );
228
+
229
+ export {
230
+ Carousel,
231
+ CarouselContent,
232
+ CarouselItem,
233
+ CarouselPrevious,
234
+ CarouselNext
235
+ };
236
+ //# sourceMappingURL=chunk-DCI6IOJX.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/carousel/carousel.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useState,\n type ComponentProps,\n type ElementRef,\n type HTMLAttributes,\n type KeyboardEvent,\n} from \"react\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport useEmblaCarousel, { type UseEmblaCarouselType } from \"embla-carousel-react\";\nimport { ArrowLeft, ArrowRight } from \"lucide-react\";\nimport { cn } from \"../../lib/cn\";\nimport { Button } from \"../button\";\nimport { useLocale } from \"../locale-provider\";\n\n/**\n * True when the keyboard event's target already owns arrow-key semantics of\n * its own (a text field's caret, a contenteditable's selection) — the\n * carousel must not steal ArrowLeft/ArrowRight from a form control that\n * happens to live inside the active slide.\n */\nfunction isEditableTarget(target: EventTarget | null): boolean {\n if (!(target instanceof HTMLElement)) return false;\n if (target.isContentEditable) return true;\n const tag = target.tagName;\n return tag === \"INPUT\" || tag === \"TEXTAREA\" || tag === \"SELECT\";\n}\n\ntype CarouselApi = UseEmblaCarouselType[1];\ntype CarouselOptions = NonNullable<Parameters<typeof useEmblaCarousel>[0]>;\ntype CarouselPlugin = NonNullable<Parameters<typeof useEmblaCarousel>[1]>;\n\ninterface CarouselProps {\n opts?: CarouselOptions;\n plugins?: CarouselPlugin;\n orientation?: \"horizontal\" | \"vertical\";\n setApi?: (api: CarouselApi) => void;\n}\n\ninterface CarouselContextValue extends CarouselProps {\n carouselRef: ReturnType<typeof useEmblaCarousel>[0];\n api: CarouselApi;\n scrollPrev: () => void;\n scrollNext: () => void;\n canScrollPrev: boolean;\n canScrollNext: boolean;\n}\n\nconst CarouselContext = createContext<CarouselContextValue | null>(null);\n\nfunction useCarousel() {\n const ctx = useContext(CarouselContext);\n if (!ctx) throw new Error(\"useCarousel must be used within <Carousel />\");\n return ctx;\n}\n\n/**\n * Root carousel region. Carries `role=\"region\" aria-roledescription=\"carousel\"`\n * plus an `aria-label` — it defaults to `\"Carousel\"` so the region always has an\n * accessible name (issue #279), but **consumers should pass a specific\n * `aria-label`** (e.g. `\"Product photos\"`) describing what the carousel actually\n * shows, since AT users otherwise can't distinguish multiple carousels on a page.\n */\nexport const Carousel = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement> & CarouselProps>(\n function Carousel(\n {\n orientation = \"horizontal\",\n opts,\n setApi,\n plugins,\n className,\n children,\n // A carousel region MUST have an accessible name (WAI-ARIA APG) —\n // aria-roledescription changes the announcement, it does not name the\n // landmark. Default is overridable; pass a specific label (\"Product\n // photos\") when the carousel's purpose isn't generic. Issue #279.\n \"aria-label\": ariaLabel,\n ...props\n },\n ref,\n ) {\n const { t } = useLocale();\n const resolvedAriaLabel = ariaLabel ?? t(\"ui.carousel.label\");\n const [carouselRef, api] = useEmblaCarousel(\n { ...opts, axis: orientation === \"horizontal\" ? \"x\" : \"y\" },\n plugins,\n );\n const [canScrollPrev, setCanScrollPrev] = useState(false);\n const [canScrollNext, setCanScrollNext] = useState(false);\n const dir = useDirection();\n\n const onSelect = useCallback((a: CarouselApi) => {\n if (!a) return;\n setCanScrollPrev(a.canScrollPrev());\n setCanScrollNext(a.canScrollNext());\n }, []);\n\n const scrollPrev = useCallback(() => api?.scrollPrev(), [api]);\n const scrollNext = useCallback(() => api?.scrollNext(), [api]);\n\n const onKeyDown = useCallback(\n (e: KeyboardEvent<HTMLDivElement>) => {\n // Don't steal ArrowLeft/ArrowRight from a text field's caret or a\n // contenteditable's selection inside the active slide.\n if (isEditableTarget(e.target)) return;\n\n if (orientation === \"vertical\") {\n if (e.key === \"ArrowUp\") {\n e.preventDefault();\n scrollPrev();\n } else if (e.key === \"ArrowDown\") {\n e.preventDefault();\n scrollNext();\n }\n return;\n }\n\n // Horizontal: the PHYSICAL key maps to the visually-adjacent slide,\n // which flips with writing direction — in RTL, ArrowLeft moves toward\n // the next slide (visually to the left of the current one), not prev.\n const isRtl = dir === \"rtl\";\n if (e.key === \"ArrowLeft\") {\n e.preventDefault();\n if (isRtl) {\n scrollNext();\n } else {\n scrollPrev();\n }\n } else if (e.key === \"ArrowRight\") {\n e.preventDefault();\n if (isRtl) {\n scrollPrev();\n } else {\n scrollNext();\n }\n }\n },\n [orientation, dir, scrollPrev, scrollNext],\n );\n\n useEffect(() => {\n if (api && setApi) setApi(api);\n }, [api, setApi]);\n useEffect(() => {\n if (!api) return;\n onSelect(api);\n api.on(\"reInit\", onSelect);\n api.on(\"select\", onSelect);\n return () => {\n api.off(\"reInit\", onSelect);\n api.off(\"select\", onSelect);\n };\n }, [api, onSelect]);\n\n return (\n <CarouselContext.Provider\n value={{\n carouselRef,\n api,\n opts,\n orientation,\n scrollPrev,\n scrollNext,\n canScrollPrev,\n canScrollNext,\n }}\n >\n <div\n ref={ref}\n onKeyDownCapture={onKeyDown}\n className={cn(\"relative\", className)}\n role=\"region\"\n aria-roledescription=\"carousel\"\n aria-label={resolvedAriaLabel}\n {...props}\n >\n {children}\n </div>\n </CarouselContext.Provider>\n );\n },\n);\n\nexport const CarouselContent = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(\n function CarouselContent({ className, ...props }, ref) {\n const { carouselRef, orientation } = useCarousel();\n return (\n <div ref={carouselRef} className=\"overflow-hidden\">\n <div\n ref={ref}\n className={cn(\n \"flex\",\n orientation === \"horizontal\" ? \"-ms-4\" : \"-mt-4 flex-col\",\n className,\n )}\n {...props}\n />\n </div>\n );\n },\n);\n\nexport const CarouselItem = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(\n function CarouselItem({ className, ...props }, ref) {\n const { orientation } = useCarousel();\n return (\n <div\n ref={ref}\n role=\"group\"\n aria-roledescription=\"slide\"\n className={cn(\n \"min-w-0 shrink-0 grow-0 basis-full\",\n orientation === \"horizontal\" ? \"ps-4\" : \"pt-4\",\n className,\n )}\n {...props}\n />\n );\n },\n);\n\nexport const CarouselPrevious = forwardRef<\n ElementRef<typeof Button>,\n ComponentProps<typeof Button>\n>(function CarouselPrevious({ className, ...props }, ref) {\n const { scrollPrev, canScrollPrev, orientation } = useCarousel();\n const { t } = useLocale();\n return (\n <Button\n ref={ref}\n variant=\"outline\"\n size=\"icon\"\n disabled={!canScrollPrev}\n onClick={scrollPrev}\n aria-label={t(\"previousSlide\")}\n className={cn(\n \"absolute size-8 rounded-full\",\n // Inset on narrow screens (no room for the button to sit outside\n // the carousel box without overflowing horizontally); pushed\n // outside the box only from `sm` up, where there's margin for it.\n orientation === \"horizontal\"\n ? \"start-2 top-1/2 -translate-y-1/2 sm:-start-12\"\n : \"top-2 left-1/2 -translate-x-1/2 rotate-90 sm:-top-12\",\n className,\n )}\n {...props}\n >\n <ArrowLeft className=\"size-4\" data-rtl-flip />\n </Button>\n );\n});\n\nexport const CarouselNext = forwardRef<ElementRef<typeof Button>, ComponentProps<typeof Button>>(\n function CarouselNext({ className, ...props }, ref) {\n const { scrollNext, canScrollNext, orientation } = useCarousel();\n const { t } = useLocale();\n return (\n <Button\n ref={ref}\n variant=\"outline\"\n size=\"icon\"\n disabled={!canScrollNext}\n onClick={scrollNext}\n aria-label={t(\"nextSlide\")}\n className={cn(\n \"absolute size-8 rounded-full\",\n orientation === \"horizontal\"\n ? \"end-2 top-1/2 -translate-y-1/2 sm:-end-12\"\n : \"bottom-2 left-1/2 -translate-x-1/2 rotate-90 sm:-bottom-12\",\n className,\n )}\n {...props}\n >\n <ArrowRight className=\"size-4\" data-rtl-flip />\n </Button>\n );\n },\n);\n\nexport type { CarouselApi };\n"],"mappings":"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","names":["Carousel","CarouselContent","CarouselItem","CarouselPrevious","CarouselNext"]}