@elabs-ai/components-ui 4.2.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 (1422) 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 +1269 -116
  1181. package/dist/index.js +993 -23939
  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 +23 -7
  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__/command-chip.contract.test.tsx +49 -0
  1240. package/src/__contract__/install-tabs.contract.test.tsx +49 -0
  1241. package/src/__contract__/integration-matrix.contract.test.tsx +49 -0
  1242. package/src/__contract__/meter.contract.test.tsx +49 -0
  1243. package/src/__contract__/parallax-plane.contract.test.tsx +49 -0
  1244. package/src/__contract__/reveal-on-enter.contract.test.tsx +49 -0
  1245. package/src/__contract__/spec-playground.contract.test.tsx +49 -0
  1246. package/src/__contract__/surface-tour.contract.test.tsx +49 -0
  1247. package/src/__contract__/theme-family-switch.contract.test.tsx +49 -0
  1248. package/src/__contract__/token-spotlight.contract.test.tsx +49 -0
  1249. package/src/blocks-comparison-table.stories.tsx +1 -1
  1250. package/src/components/accordion/accordion.tsx +31 -15
  1251. package/src/components/advanced-group/advanced-group.stories.tsx +2 -0
  1252. package/src/components/alert/alert.tsx +13 -5
  1253. package/src/components/alert-dialog/alert-dialog.tsx +1 -1
  1254. package/src/components/ambient-field/ambient-field.css +98 -0
  1255. package/src/components/ambient-field/ambient-field.stories.tsx +75 -0
  1256. package/src/components/ambient-field/ambient-field.test.tsx +28 -0
  1257. package/src/components/ambient-field/ambient-field.tsx +69 -0
  1258. package/src/components/ambient-field/index.ts +7 -0
  1259. package/src/components/app-shell/app-shell.stories.tsx +344 -1
  1260. package/src/components/app-shell/app-shell.test.tsx +167 -0
  1261. package/src/components/app-shell/app-shell.tsx +119 -5
  1262. package/src/components/app-shell/index.ts +1 -1
  1263. package/src/components/attribution-panel/attributions.generated.ts +77 -4
  1264. package/src/components/badge/badge.stories.tsx +62 -0
  1265. package/src/components/badge/badge.test.tsx +21 -0
  1266. package/src/components/badge/badge.tsx +88 -8
  1267. package/src/components/breadcrumb/breadcrumb.stories.tsx +1 -1
  1268. package/src/components/breadcrumb/breadcrumb.tsx +2 -0
  1269. package/src/components/button/button.stories.tsx +5 -1
  1270. package/src/components/button/button.tsx +19 -8
  1271. package/src/components/calendar/calendar.tsx +6 -1
  1272. package/src/components/card/card.stories.tsx +73 -1
  1273. package/src/components/card/card.test.tsx +29 -2
  1274. package/src/components/card/card.tsx +77 -13
  1275. package/src/components/card/index.ts +2 -0
  1276. package/src/components/change-review/change-review.tsx +1 -1
  1277. package/src/components/collapsible-panel/index.ts +1 -0
  1278. package/src/components/collapsible-panel/use-collapsible-panel.ts +21 -2
  1279. package/src/components/color-picker/color-picker.tsx +3 -3
  1280. package/src/components/command/command.stories.tsx +64 -1
  1281. package/src/components/command/command.test.tsx +73 -0
  1282. package/src/components/command/command.tsx +73 -2
  1283. package/src/components/command-chip/command-chip.stories.tsx +78 -0
  1284. package/src/components/command-chip/command-chip.test.tsx +57 -0
  1285. package/src/components/command-chip/command-chip.tsx +168 -0
  1286. package/src/components/command-chip/index.ts +7 -0
  1287. package/src/components/command-trigger/command-trigger.tsx +1 -1
  1288. package/src/components/confirm-dialog/confirm-dialog.stories.tsx +2 -0
  1289. package/src/components/context-menu/context-menu.stories.tsx +26 -0
  1290. package/src/components/context-menu/context-menu.tsx +6 -6
  1291. package/src/components/context-rail/context-rail.tsx +22 -4
  1292. package/src/components/date-picker/date-picker.tsx +2 -0
  1293. package/src/components/descriptions/descriptions.stories.tsx +6 -0
  1294. package/src/components/descriptions/descriptions.test.tsx +18 -0
  1295. package/src/components/descriptions/descriptions.tsx +33 -5
  1296. package/src/components/descriptions/index.ts +1 -0
  1297. package/src/components/dialog/dialog.stories.tsx +5 -0
  1298. package/src/components/dialog/dialog.tsx +1 -1
  1299. package/src/components/dropdown-menu/dropdown-menu.stories.tsx +37 -0
  1300. package/src/components/dropdown-menu/dropdown-menu.tsx +14 -6
  1301. package/src/components/expand-dialog/expand-dialog.test.tsx +47 -0
  1302. package/src/components/expand-dialog/expand-dialog.tsx +20 -5
  1303. package/src/components/hover-card/hover-card.tsx +1 -1
  1304. package/src/components/input/input.stories.tsx +17 -0
  1305. package/src/components/input/input.tsx +1 -1
  1306. package/src/components/input-group/input-group.stories.tsx +43 -6
  1307. package/src/components/input-group/input-group.tsx +5 -2
  1308. package/src/components/input-otp/input-otp.tsx +4 -2
  1309. package/src/components/install-tabs/index.ts +8 -0
  1310. package/src/components/install-tabs/install-tabs.stories.tsx +147 -0
  1311. package/src/components/install-tabs/install-tabs.test.tsx +120 -0
  1312. package/src/components/install-tabs/install-tabs.tsx +238 -0
  1313. package/src/components/integration-matrix/index.ts +10 -0
  1314. package/src/components/integration-matrix/integration-matrix.stories.tsx +171 -0
  1315. package/src/components/integration-matrix/integration-matrix.test.tsx +89 -0
  1316. package/src/components/integration-matrix/integration-matrix.tsx +237 -0
  1317. package/src/components/locale-provider/messages.ts +252 -0
  1318. package/src/components/mention-input/mention-input.tsx +1 -1
  1319. package/src/components/menubar/menubar.stories.tsx +25 -0
  1320. package/src/components/menubar/menubar.tsx +7 -7
  1321. package/src/components/meter/index.ts +1 -0
  1322. package/src/components/meter/meter.stories.tsx +102 -0
  1323. package/src/components/meter/meter.test.tsx +61 -0
  1324. package/src/components/meter/meter.tsx +173 -0
  1325. package/src/components/metric-card/index.ts +6 -1
  1326. package/src/components/metric-card/metric-card.stories.tsx +63 -0
  1327. package/src/components/metric-card/metric-card.test.tsx +83 -0
  1328. package/src/components/metric-card/metric-card.tsx +97 -14
  1329. package/src/components/nav-user/nav-user.test.tsx +23 -1
  1330. package/src/components/nav-user/nav-user.tsx +68 -53
  1331. package/src/components/navigation-menu/navigation-menu.stories.tsx +42 -0
  1332. package/src/components/navigation-menu/navigation-menu.tsx +1 -1
  1333. package/src/components/page-shell/page-shell.stories.tsx +1 -1
  1334. package/src/components/page-shell/page-shell.tsx +3 -2
  1335. package/src/components/pagination/pagination.tsx +2 -0
  1336. package/src/components/parallax-plane/index.ts +8 -0
  1337. package/src/components/parallax-plane/parallax-plane.css +26 -0
  1338. package/src/components/parallax-plane/parallax-plane.stories.tsx +88 -0
  1339. package/src/components/parallax-plane/parallax-plane.test.tsx +57 -0
  1340. package/src/components/parallax-plane/parallax-plane.tsx +80 -0
  1341. package/src/components/popover/popover.tsx +1 -1
  1342. package/src/components/progress/progress.stories.tsx +85 -0
  1343. package/src/components/progress/progress.test.tsx +47 -0
  1344. package/src/components/progress/progress.tsx +57 -3
  1345. package/src/components/reveal-on-enter/index.ts +5 -0
  1346. package/src/components/reveal-on-enter/reveal-on-enter.css +32 -0
  1347. package/src/components/reveal-on-enter/reveal-on-enter.stories.tsx +100 -0
  1348. package/src/components/reveal-on-enter/reveal-on-enter.test.tsx +87 -0
  1349. package/src/components/reveal-on-enter/reveal-on-enter.tsx +75 -0
  1350. package/src/components/revision-timeline/revision-timeline.tsx +1 -3
  1351. package/src/components/schema-form/index.ts +2 -0
  1352. package/src/components/schema-form/schema-form-spec.ts +36 -0
  1353. package/src/components/schema-form/schema-form.stories.tsx +33 -0
  1354. package/src/components/schema-form/schema-form.test.tsx +43 -0
  1355. package/src/components/schema-form/schema-form.tsx +111 -4
  1356. package/src/components/scroll-area/index.ts +1 -1
  1357. package/src/components/scroll-area/scroll-area.tsx +47 -18
  1358. package/src/components/section-header/section-header.tsx +1 -3
  1359. package/src/components/select/select.stories.tsx +17 -0
  1360. package/src/components/select/select.test.tsx +28 -1
  1361. package/src/components/select/select.tsx +3 -3
  1362. package/src/components/sheet/sheet.tsx +1 -1
  1363. package/src/components/side-dock/side-dock.stories.tsx +83 -0
  1364. package/src/components/side-dock/side-dock.tsx +50 -16
  1365. package/src/components/sidebar/sidebar.stories.tsx +3 -3
  1366. package/src/components/sidebar/sidebar.test.tsx +31 -1
  1367. package/src/components/sidebar/sidebar.tsx +34 -7
  1368. package/src/components/skip-link/skip-link.stories.tsx +1 -0
  1369. package/src/components/slider/slider.stories.tsx +13 -77
  1370. package/src/components/spec-playground/index.ts +10 -0
  1371. package/src/components/spec-playground/locate-json-path.ts +144 -0
  1372. package/src/components/spec-playground/spec-playground.stories.tsx +156 -0
  1373. package/src/components/spec-playground/spec-playground.test.tsx +106 -0
  1374. package/src/components/spec-playground/spec-playground.tsx +351 -0
  1375. package/src/components/state-panel/state-panel.stories.tsx +4 -2
  1376. package/src/components/state-panel/state-panel.tsx +1 -1
  1377. package/src/components/status-badge/status-badge.stories.tsx +53 -0
  1378. package/src/components/status-badge/status-badge.test.tsx +37 -0
  1379. package/src/components/status-badge/status-badge.tsx +75 -13
  1380. package/src/components/surface-tour/index.ts +11 -0
  1381. package/src/components/surface-tour/surface-tour.stories.tsx +150 -0
  1382. package/src/components/surface-tour/surface-tour.test.tsx +117 -0
  1383. package/src/components/surface-tour/surface-tour.tsx +456 -0
  1384. package/src/components/table/table.tsx +5 -2
  1385. package/src/components/tabs/tabs.stories.tsx +47 -1
  1386. package/src/components/tabs/tabs.test.tsx +26 -0
  1387. package/src/components/tabs/tabs.tsx +51 -11
  1388. package/src/components/textarea/textarea.tsx +1 -1
  1389. package/src/components/theme-family-switch/index.ts +10 -0
  1390. package/src/components/theme-family-switch/theme-family-switch.stories.tsx +97 -0
  1391. package/src/components/theme-family-switch/theme-family-switch.test.tsx +85 -0
  1392. package/src/components/theme-family-switch/theme-family-switch.tsx +166 -0
  1393. package/src/components/theme-switcher/theme-switcher.tsx +11 -4
  1394. package/src/components/token-spotlight/index.ts +11 -0
  1395. package/src/components/token-spotlight/token-spotlight.css +32 -0
  1396. package/src/components/token-spotlight/token-spotlight.stories.tsx +161 -0
  1397. package/src/components/token-spotlight/token-spotlight.test.tsx +323 -0
  1398. package/src/components/token-spotlight/token-spotlight.tsx +379 -0
  1399. package/src/components/token-spotlight/token-value-format.ts +205 -0
  1400. package/src/components/top-nav/top-nav.test.tsx +59 -0
  1401. package/src/components/top-nav/top-nav.tsx +36 -6
  1402. package/src/components/tree/tree.stories.tsx +1 -1
  1403. package/src/components/tree/tree.test.tsx +4 -4
  1404. package/src/components/tree/tree.tsx +4 -4
  1405. package/src/components/typography/typography.stories.tsx +7 -2
  1406. package/src/components/typography/typography.tsx +8 -0
  1407. package/src/components/view-toolbar/view-toolbar.stories.tsx +2 -1
  1408. package/src/components/view-toolbar/view-toolbar.tsx +2 -2
  1409. package/src/decoration.stories.tsx +213 -2
  1410. package/src/index.ts +46 -0
  1411. package/src/lib/cn.test.ts +20 -0
  1412. package/src/lib/cn.ts +32 -7
  1413. package/src/lib/color-scale.test.ts +386 -0
  1414. package/src/lib/color-scale.ts +628 -0
  1415. package/src/lib/compact-number.ts +118 -28
  1416. package/src/lib/use-scroll-progress.ts +103 -0
  1417. package/src/motion.stories.tsx +1 -0
  1418. package/src/templates-object-detail-hub.stories.tsx +8 -8
  1419. package/src/templates-screen-states.stories.tsx +1 -1
  1420. package/src/templates-settings.stories.tsx +8 -3
  1421. package/dist/chunk-FCH4ZN6G.js +0 -57
  1422. package/dist/chunk-FCH4ZN6G.js.map +0 -1
@@ -84,6 +84,9 @@ import {
84
84
  } from "../file-upload";
85
85
  import { AdvancedGroup } from "../advanced-group";
86
86
  import { Tabs, TabsList, TabsTrigger, TabsContent } from "../tabs";
87
+ import { ChevronRight } from "lucide-react";
88
+ import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "../collapsible";
89
+ import { Descriptions, DescriptionsItem } from "../descriptions";
87
90
 
88
91
  import {
89
92
  checkFileIssue,
@@ -745,6 +748,32 @@ export const SchemaFormField = memo(
745
748
  setValue: store.setValue,
746
749
  };
747
750
 
751
+ if (field.type !== "group" && field.readOnly) {
752
+ return (
753
+ <div
754
+ ref={ref}
755
+ data-slot="schema-form-field"
756
+ data-readonly=""
757
+ className={cn("flex flex-col gap-1.5", className)}
758
+ {...props}
759
+ >
760
+ <Descriptions layout="vertical">
761
+ <DescriptionsItem
762
+ label={fieldLabel(field)}
763
+ numeric={field.type === "number" || field.type === "integer"}
764
+ >
765
+ {readOnlyText(snapshot.value)}
766
+ </DescriptionsItem>
767
+ </Descriptions>
768
+ {hasDesc && (
769
+ <p id={descId(meta.formId, name)} className="text-caption text-muted-foreground">
770
+ {description}
771
+ </p>
772
+ )}
773
+ </div>
774
+ );
775
+ }
776
+
748
777
  const isBoolean = field.type === "boolean";
749
778
  const isGroup = field.type === "group";
750
779
  // A multi-value control renders a labelled REGION, not one focusable
@@ -852,14 +881,92 @@ export const SchemaFormFields = forwardRef<HTMLDivElement, SchemaFormFieldsProps
852
881
  className={cn("flex flex-col gap-4", className)}
853
882
  {...props}
854
883
  >
855
- {visibleNames.map((name) => (
856
- <SchemaFormField key={name} name={name} />
857
- ))}
884
+ {spec.sections
885
+ ? (() => {
886
+ const grouped = new Set(spec.sections.flatMap((section) => section.fields));
887
+ const visible = new Set(visibleNames);
888
+ return (
889
+ <>
890
+ {visibleNames
891
+ .filter((name) => !grouped.has(name))
892
+ .map((name) => (
893
+ <SchemaFormField key={name} name={name} />
894
+ ))}
895
+ {spec.sections.map((section) => {
896
+ const names = section.fields.filter((name) => visible.has(name));
897
+ if (names.length === 0) return null;
898
+ return (
899
+ <SchemaFormSection
900
+ key={section.id}
901
+ label={section.label}
902
+ collapsed={section.collapsed}
903
+ >
904
+ {names.map((name) => (
905
+ <SchemaFormField key={name} name={name} />
906
+ ))}
907
+ </SchemaFormSection>
908
+ );
909
+ })}
910
+ </>
911
+ );
912
+ })()
913
+ : visibleNames.map((name) => <SchemaFormField key={name} name={name} />)}
858
914
  </div>
859
915
  );
860
916
  },
861
917
  );
862
918
 
919
+ /** A read-only field's value as text; an empty value renders an em dash. */
920
+ function readOnlyText(value: FormValue): string {
921
+ if (value === undefined || value === "") return "—";
922
+ if (Array.isArray(value)) {
923
+ if (value.length === 0) return "—";
924
+ return value
925
+ .map((item) =>
926
+ typeof item === "string"
927
+ ? item
928
+ : item instanceof File
929
+ ? item.name
930
+ : `${item.key}: ${item.value}`,
931
+ )
932
+ .join(", ");
933
+ }
934
+ return String(value);
935
+ }
936
+
937
+ /** One `FormSpec.sections` entry: a disclosure over its fields. */
938
+ function SchemaFormSection({
939
+ label,
940
+ collapsed,
941
+ children,
942
+ }: {
943
+ label: string;
944
+ collapsed?: boolean;
945
+ children: ReactNode;
946
+ }) {
947
+ return (
948
+ <Collapsible
949
+ defaultOpen={!collapsed}
950
+ data-slot="schema-form-section"
951
+ className="group/section flex flex-col gap-3 border-t border-border-strong pt-3"
952
+ >
953
+ <CollapsibleTrigger
954
+ data-slot="schema-form-section-trigger"
955
+ className="focus-ring flex w-full items-center gap-1 rounded-sm text-start text-subtitle text-foreground"
956
+ >
957
+ <ChevronRight
958
+ aria-hidden="true"
959
+ className="size-4 shrink-0 transition-transform group-data-[state=open]/section:rotate-90 motion-reduce:transition-none"
960
+ />
961
+ {label}
962
+ </CollapsibleTrigger>
963
+ <CollapsibleContent data-slot="schema-form-section-content" className="flex flex-col gap-4">
964
+ {children}
965
+ </CollapsibleContent>
966
+ </Collapsible>
967
+ );
968
+ }
969
+
863
970
  function SchemaFormSkeletonAnnouncement() {
864
971
  const { t } = useLocale();
865
972
  return (
@@ -1209,7 +1316,7 @@ export const SchemaFormTitle = forwardRef<HTMLParagraphElement, SchemaFormTitleP
1209
1316
  <p
1210
1317
  ref={ref}
1211
1318
  id={headingId}
1212
- className={cn("text-subtitle font-semibold text-foreground text-balance", className)}
1319
+ className={cn("text-subtitle text-foreground text-balance", className)}
1213
1320
  {...props}
1214
1321
  >
1215
1322
  {content}
@@ -1 +1 @@
1
- export { ScrollArea, ScrollBar } from "./scroll-area";
1
+ export { ScrollArea, ScrollBar, type ScrollAreaProps } from "./scroll-area";
@@ -2,24 +2,53 @@ import { forwardRef, type ComponentPropsWithoutRef, type ElementRef } from "reac
2
2
  import * as ScrollAreaPrimitive from "@radix-ui/react-scroll-area";
3
3
  import { cn } from "../../lib/cn";
4
4
 
5
- export const ScrollArea = forwardRef<
6
- ElementRef<typeof ScrollAreaPrimitive.Root>,
7
- ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.Root>
8
- >(function ScrollArea({ className, children, ...props }, ref) {
9
- return (
10
- <ScrollAreaPrimitive.Root
11
- ref={ref}
12
- className={cn("relative overflow-hidden", className)}
13
- {...props}
14
- >
15
- <ScrollAreaPrimitive.Viewport className="size-full rounded-[inherit]">
16
- {children}
17
- </ScrollAreaPrimitive.Viewport>
18
- <ScrollBar />
19
- <ScrollAreaPrimitive.Corner />
20
- </ScrollAreaPrimitive.Root>
21
- );
22
- });
5
+ export interface ScrollAreaProps extends ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.Root> {
6
+ /**
7
+ * Props for the scrolling VIEWPORT — the element that actually overflows, which is
8
+ * otherwise unreachable from the outside.
9
+ *
10
+ * The viewport is deliberately NOT focusable by default: when the content inside it is
11
+ * focusable (a list of links, rows of buttons) a keyboard user reaches the overflow by
12
+ * tabbing through it, and a tab stop on the viewport would be noise. When the content is
13
+ * plain text or non-focusable rows, that same user cannot scroll it at all — axe's
14
+ * `scrollable-region-focusable` is the gate that catches it. Make it a named tab stop the
15
+ * way `ChartFrame` does for its scrolling body:
16
+ *
17
+ * ```tsx
18
+ * viewportProps={{ tabIndex: 0, role: "group", "aria-label": "Scrollable list" }}
19
+ * ```
20
+ *
21
+ * `role="group"` rather than `"region"`: ARIA 1.2 forbids `aria-label` on a generic
22
+ * element, and `group` gives the name a host without adding a landmark.
23
+ */
24
+ viewportProps?: ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.Viewport>;
25
+ }
26
+
27
+ export const ScrollArea = forwardRef<ElementRef<typeof ScrollAreaPrimitive.Root>, ScrollAreaProps>(
28
+ function ScrollArea({ className, children, viewportProps, ...props }, ref) {
29
+ return (
30
+ <ScrollAreaPrimitive.Root
31
+ ref={ref}
32
+ className={cn("relative overflow-hidden", className)}
33
+ {...props}
34
+ >
35
+ <ScrollAreaPrimitive.Viewport
36
+ {...viewportProps}
37
+ className={cn(
38
+ "size-full rounded-[inherit]",
39
+ // A viewport made focusable needs a visible ring, like every other tab stop.
40
+ viewportProps?.tabIndex !== undefined && "focus-ring-inset",
41
+ viewportProps?.className,
42
+ )}
43
+ >
44
+ {children}
45
+ </ScrollAreaPrimitive.Viewport>
46
+ <ScrollBar />
47
+ <ScrollAreaPrimitive.Corner />
48
+ </ScrollAreaPrimitive.Root>
49
+ );
50
+ },
51
+ );
23
52
 
24
53
  export const ScrollBar = forwardRef<
25
54
  ElementRef<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>,
@@ -34,9 +34,7 @@ export function SectionHeader({
34
34
  <div className={cn("flex flex-wrap items-end justify-between gap-4", className)}>
35
35
  <div className="space-y-1">
36
36
  {eyebrow ? (
37
- <div className="text-meta font-medium uppercase tracking-wide text-muted-foreground">
38
- {eyebrow}
39
- </div>
37
+ <div className="text-eyebrow uppercase text-muted-foreground">{eyebrow}</div>
40
38
  ) : null}
41
39
  <TitleTag className="text-title text-foreground">{title}</TitleTag>
42
40
  {description ? <p className="text-body text-muted-foreground">{description}</p> : null}
@@ -36,6 +36,23 @@ export const Default: Story = {
36
36
  },
37
37
  };
38
38
 
39
+ // WCAG 1.4.11 keyboard-focus contrast (#308) for `SelectItem` is locked in
40
+ // `select.test.tsx`, not here: a Storybook interaction story that opens this
41
+ // `Select` and then either closes it (any method — Escape, `{Enter}`, or a
42
+ // click) or leaves it open trips one of two PRE-EXISTING, unrelated axe
43
+ // violations in this test environment on any story id not already
44
+ // grandfathered into `scripts/a11y-baseline.json` — closing hits the same
45
+ // `button-name` false-positive `forms-select--default` is already exempted
46
+ // for (reproduced verbatim by a throwaway story that just re-runs `Default`'s
47
+ // own play function under a new id), and leaving it open hits
48
+ // `aria-hidden-focus` (reproduced even with `modal={false}`). Growing the
49
+ // a11y baseline for a new story is exactly what `pnpm check --rule
50
+ // a11y-baseline`'s ratchet forbids (`ratchet.maxStories` only goes down), so
51
+ // rather than force a hand-baselined exemption for a defect this change did
52
+ // not introduce, the keyboard-focus-ring assertion for `SelectItem` lives in
53
+ // a plain RTL unit test instead (no axe gate there), matching the existing
54
+ // `icon-button.test.tsx` precedent of asserting the utility class directly.
55
+
39
56
  const LONG_LABEL = "prod-eu-west-1 · 2026-08-01 · 12 tools";
40
57
 
41
58
  /**
@@ -1,6 +1,6 @@
1
1
  import { afterEach, describe, expect, it } from "vitest";
2
2
  import { render, screen, waitFor } from "@testing-library/react";
3
- import { Select, SelectTrigger, SelectValue } from "./select";
3
+ import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "./select";
4
4
 
5
5
  const LONG_LABEL = "prod-eu-west-1 · 2026-08-01 · 12 tools";
6
6
 
@@ -96,3 +96,30 @@ describe("SelectTrigger", () => {
96
96
  expect(trigger).not.toHaveAttribute("title");
97
97
  });
98
98
  });
99
+
100
+ describe("SelectItem", () => {
101
+ // WCAG 1.4.11 (#308): a `focus:bg-accent` fill alone measures ~1.17–1.40:1
102
+ // against `--popover` in both themes — not a visible indicator. A real RTL
103
+ // unit test rather than a Storybook interaction story: opening this Select
104
+ // in the Storybook/vitest-browser + axe harness hits a PRE-EXISTING,
105
+ // unrelated `button-name`/`aria-hidden-focus` axe defect on any story id not
106
+ // already grandfathered into `scripts/a11y-baseline.json` (see the comment
107
+ // in `select.stories.tsx`), so the utility-class assertion — the same
108
+ // pattern `icon-button.test.tsx` already uses for its own `focus-ring` —
109
+ // lives here instead, with no axe gate to trip.
110
+ it("carries focus-ring-inset, not just the fill, on the fill-only focus state (#308)", () => {
111
+ render(
112
+ <Select defaultValue="prod" open>
113
+ <SelectTrigger aria-label="Environment">
114
+ <SelectValue />
115
+ </SelectTrigger>
116
+ <SelectContent>
117
+ <SelectItem value="prod">Production</SelectItem>
118
+ </SelectContent>
119
+ </Select>,
120
+ );
121
+ const item = screen.getByRole("option", { name: "Production" });
122
+ expect(item.className).toContain("focus:bg-accent");
123
+ expect(item.className).toContain("focus-ring-inset");
124
+ });
125
+ });
@@ -125,7 +125,7 @@ export const SelectTrigger = forwardRef<
125
125
  className={cn(
126
126
  "flex w-full items-center justify-between gap-2 rounded-control border border-input bg-input-background px-3 py-2 text-body shadow-input",
127
127
  size === "sm" ? "h-control-sm" : "h-control",
128
- "placeholder:text-muted-foreground focus-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background",
128
+ "placeholder:text-muted-foreground focus-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background focus-visible:border-input-focus",
129
129
  // No `disabled:cursor-*` override — disabled controls keep the arrow
130
130
  // automatically (interaction-guidelines.md), matching Combobox's
131
131
  // Button-based trigger (`disabled:pointer-events-none`) (#343).
@@ -156,7 +156,7 @@ export const SelectContent = forwardRef<
156
156
  ref={ref}
157
157
  position={position}
158
158
  className={cn(
159
- "relative z-50 max-h-96 min-w-[12rem] overflow-hidden rounded-md bg-popover text-popover-foreground shadow-ring-md",
159
+ "relative z-50 max-h-96 min-w-[12rem] overflow-hidden rounded-md bg-popover text-popover-foreground shadow-popover",
160
160
  "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",
161
161
  "data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2",
162
162
  position === "popper" &&
@@ -207,7 +207,7 @@ export const SelectItem = forwardRef<
207
207
  ref={ref}
208
208
  className={cn(
209
209
  "relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 ps-2 pe-8 text-body outline-none transition-colors duration-fast",
210
- "focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
210
+ "focus:bg-accent focus:text-accent-foreground focus-ring-inset data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
211
211
  className,
212
212
  )}
213
213
  {...props}
@@ -38,7 +38,7 @@ const sheetVariants = cva(
38
38
  // `overflow-y-auto` so content taller than the sheet scrolls INSIDE it
39
39
  // instead of overflowing the fixed-position box (unreachable below the
40
40
  // viewport edge).
41
- "fixed z-50 gap-4 overflow-y-auto overscroll-contain bg-card p-6 text-card-foreground shadow-ring-lg transition duration-slow ease-standard data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=open]:[--tw-ease:var(--ease-entrance)] data-[state=closed]:[--tw-ease:var(--ease-exit)]",
41
+ "fixed z-50 gap-4 overflow-y-auto overscroll-contain bg-card p-6 text-card-foreground shadow-dialog transition duration-slow ease-standard data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=open]:[--tw-ease:var(--ease-entrance)] data-[state=closed]:[--tw-ease:var(--ease-exit)]",
42
42
  {
43
43
  variants: {
44
44
  side: {
@@ -1,6 +1,15 @@
1
1
  import type { Meta, StoryObj } from "@storybook/react-vite";
2
2
  import { expect, waitFor } from "storybook/test";
3
3
 
4
+ import {
5
+ Sidebar,
6
+ SidebarContent,
7
+ SidebarInset,
8
+ SidebarMenu,
9
+ SidebarMenuButton,
10
+ SidebarMenuItem,
11
+ SidebarProvider,
12
+ } from "../sidebar";
4
13
  import { SideDock } from "./side-dock";
5
14
 
6
15
  const meta = {
@@ -135,3 +144,77 @@ export const Overlay: Story = {
135
144
  await expect(canvasElement.querySelector('[data-slot="side-dock-resize-handle"]')).toBeNull();
136
145
  },
137
146
  };
147
+
148
+ /**
149
+ * `containerPosition="inset"` (#432): nested inside a `Sidebar` + `SidebarInset`
150
+ * host layout — mirroring the real composition (`DashboardAssetPanel` on the
151
+ * left, `DashboardPropertiesPanel` on the right of a sheet inside an app
152
+ * `Sidebar`) — `side="left"` would otherwise race the Sidebar's own `fixed
153
+ * left-0` container for the SAME viewport edge — the later-mounted dock wins
154
+ * the paint and hides the app's own nav (`wave-4-review-visual.md` P0-1). The
155
+ * play function proves the fix geometrically for BOTH edges: the Sidebar's
156
+ * nav stays visible, and neither dock's rect ever intersects the Sidebar's or
157
+ * the canvas's.
158
+ */
159
+ export const InSidebar: Story = {
160
+ render: () => (
161
+ <SidebarProvider>
162
+ <Sidebar>
163
+ <SidebarContent>
164
+ <SidebarMenu>
165
+ <SidebarMenuItem>
166
+ <SidebarMenuButton isActive>Dashboards</SidebarMenuButton>
167
+ </SidebarMenuItem>
168
+ </SidebarMenu>
169
+ </SidebarContent>
170
+ </Sidebar>
171
+ <SidebarInset className="min-w-0">
172
+ <div className="flex h-[560px] min-w-0 flex-1">
173
+ <SideDock title="Assets" open side="left" containerPosition="inset">
174
+ {dockBody}
175
+ </SideDock>
176
+ <div
177
+ data-testid="canvas"
178
+ className="min-w-0 flex-1 bg-background p-6 text-muted-foreground"
179
+ >
180
+ Canvas content
181
+ </div>
182
+ <SideDock title="Properties" open side="right" containerPosition="inset">
183
+ {dockBody}
184
+ </SideDock>
185
+ </div>
186
+ </SidebarInset>
187
+ </SidebarProvider>
188
+ ),
189
+ play: async ({ canvas, canvasElement }) => {
190
+ const nav = await canvas.findByRole("button", { name: "Dashboards" });
191
+ await expect(nav).toBeVisible();
192
+
193
+ const sidebar = canvasElement.querySelector('[data-slot="sidebar-container"]') as HTMLElement;
194
+ const docks = canvasElement.querySelectorAll('[data-slot="side-dock-container"]');
195
+ const leftDock = docks[0] as HTMLElement;
196
+ const rightDock = docks[1] as HTMLElement;
197
+ const dockCanvas = canvas.getByTestId("canvas");
198
+
199
+ const sidebarRect = sidebar.getBoundingClientRect();
200
+ const leftDockRect = leftDock.getBoundingClientRect();
201
+ const rightDockRect = rightDock.getBoundingClientRect();
202
+ const canvasRect = dockCanvas.getBoundingClientRect();
203
+ const viewport = canvasElement.getBoundingClientRect();
204
+
205
+ const intersects = (a: DOMRect, b: DOMRect) =>
206
+ a.left < b.right && b.left < a.right && a.top < b.bottom && b.top < a.bottom;
207
+
208
+ // The Sidebar and the left dock never intersect.
209
+ await expect(intersects(sidebarRect, leftDockRect)).toBe(false);
210
+ // The left dock starts exactly where the Sidebar ends...
211
+ await expect(leftDockRect.left).toBeGreaterThanOrEqual(sidebarRect.right);
212
+ // ...and the canvas starts exactly where the left dock ends (no dead gap).
213
+ await expect(Math.abs(canvasRect.left - leftDockRect.right)).toBeLessThanOrEqual(1);
214
+
215
+ // The right dock never intersects the canvas, and stays inside the viewport.
216
+ await expect(intersects(rightDockRect, canvasRect)).toBe(false);
217
+ await expect(rightDockRect.right).toBeLessThanOrEqual(viewport.right + 1);
218
+ await expect(rightDockRect.left).toBeGreaterThanOrEqual(viewport.left - 1);
219
+ },
220
+ };
@@ -31,7 +31,7 @@ import { X } from "lucide-react";
31
31
  import { cn } from "../../lib/cn";
32
32
  import { mergeRefs } from "../../lib/merge-refs";
33
33
  import { useIsMobile } from "../../lib/use-mobile";
34
- import { useCollapsiblePanel } from "../collapsible-panel";
34
+ import { useCollapsiblePanel, type CollapsiblePanelContainerPosition } from "../collapsible-panel";
35
35
  import { useLocale } from "../locale-provider/locale-provider";
36
36
  import { Sheet, SheetContent, SheetDescription, SheetHeader, SheetTitle } from "../sheet";
37
37
 
@@ -44,9 +44,10 @@ export interface SideDockProps extends Omit<ComponentProps<"aside">, "title"> {
44
44
  */
45
45
  title: ReactNode;
46
46
  /**
47
- * Optional longer description. Visible under the title in the column
48
- * presentation; `sr-only` in the overlay presentation (the compact sheet
49
- * header has no room for it, but it still reaches assistive tech).
47
+ * Optional longer description. Visible at the top of the body in the column
48
+ * presentation never inside the header band, which is fixed at the app
49
+ * shell's header height; `sr-only` in the overlay presentation (the compact
50
+ * sheet header has no room for it, but it still reaches assistive tech).
50
51
  */
51
52
  description?: ReactNode;
52
53
  /** Optional controls placed in the header row beside the built-in close button. */
@@ -62,6 +63,18 @@ export interface SideDockProps extends Omit<ComponentProps<"aside">, "title"> {
62
63
  /** Which edge it docks to. Default `"right"`. */
63
64
  side?: "left" | "right";
64
65
 
66
+ /**
67
+ * Where the column presentation's fixed/absolute container positions
68
+ * itself. Default `"viewport"` (pins to the viewport edge — byte-identical
69
+ * pre-#432 behavior). `"inset"` pins to the dock's OWN position in the
70
+ * layout instead (`absolute` against a `relative` wrapper this component
71
+ * provides) — use this when the dock is nested inside another element that
72
+ * already pins itself to the same viewport edge (e.g. an app `Sidebar`),
73
+ * so the two never race for the same edge (#432). Has no effect on the
74
+ * overlay `Sheet` presentation below `overlayBreakpoint`.
75
+ */
76
+ containerPosition?: CollapsiblePanelContainerPosition;
77
+
65
78
  /**
66
79
  * `width`, `defaultWidth`, `minWidth`, `maxWidth`, `minContentWidth` and
67
80
  * `resizable` (below) govern the COLUMN presentation only — viewport at or
@@ -135,6 +148,7 @@ export const SideDock = forwardRef<HTMLElement, SideDockProps>(function SideDock
135
148
  defaultOpen = false,
136
149
  onOpenChange,
137
150
  side = "right",
151
+ containerPosition = "viewport",
138
152
  width,
139
153
  defaultWidth = DEFAULT_WIDTH,
140
154
  onWidthChange,
@@ -155,7 +169,7 @@ export const SideDock = forwardRef<HTMLElement, SideDockProps>(function SideDock
155
169
  const titleId = useId();
156
170
  const resizeLabelId = useId();
157
171
 
158
- const panel = useCollapsiblePanel({ side, open, defaultOpen, onOpenChange });
172
+ const panel = useCollapsiblePanel({ side, open, defaultOpen, onOpenChange, containerPosition });
159
173
  const isOverlay = useIsMobile(overlayBreakpoint);
160
174
 
161
175
  // Focus restoration for the COLUMN presentation only (Finding 2,
@@ -212,10 +226,12 @@ export const SideDock = forwardRef<HTMLElement, SideDockProps>(function SideDock
212
226
 
213
227
  // The live viewport width the clamp reads — `useIsMobile` only exposes a
214
228
  // boolean threshold, not the pixel value clamping needs.
215
- const [viewportWidth, setViewportWidth] = useState<number>(() =>
216
- typeof window !== "undefined" ? window.innerWidth : FALLBACK_VIEWPORT_WIDTH,
217
- );
229
+ // Starts at the fallback on the server AND on the client's first render, then reads the real
230
+ // width on mount: a lazy `window.innerWidth` initialiser made the first client render differ
231
+ // from the server HTML (`aria-valuemax`), which React reports as a hydration mismatch.
232
+ const [viewportWidth, setViewportWidth] = useState<number>(FALLBACK_VIEWPORT_WIDTH);
218
233
  useEffect(() => {
234
+ setViewportWidth(window.innerWidth);
219
235
  // `resize` can fire dozens of times per second while a window is being
220
236
  // dragged — coalesce every event inside one frame into a single state
221
237
  // update via rAF, instead of re-rendering on each raw event.
@@ -410,7 +426,10 @@ export const SideDock = forwardRef<HTMLElement, SideDockProps>(function SideDock
410
426
  >
411
427
  <SheetHeader
412
428
  data-slot="side-dock-header"
413
- className="flex-row items-start gap-2 space-y-0 border-b border-border px-4 py-3"
429
+ // `h-header`, never padding: a dock's header band sits beside the app
430
+ // shell's top bar and MUST share its height in every theme (a theme
431
+ // retunes `--header-size`). See the column branch.
432
+ className="h-header flex-row items-center gap-2 space-y-0 border-b border-border px-4"
414
433
  >
415
434
  <div className="min-w-0 flex-1">
416
435
  <SheetTitle data-slot="side-dock-title" className="text-title">
@@ -452,7 +471,11 @@ export const SideDock = forwardRef<HTMLElement, SideDockProps>(function SideDock
452
471
  // programmatically.
453
472
  ref={groupRef}
454
473
  tabIndex={-1}
455
- className="group"
474
+ // `relative`: only in "inset" mode, so the container's `absolute`
475
+ // positioning below resolves against THIS wrapper (its own slot in
476
+ // the layout) instead of the viewport (#432). No-op in "viewport"
477
+ // mode — the container stays `fixed`.
478
+ className={cn("group", containerPosition === "inset" && "relative")}
456
479
  {...panel.attrs}
457
480
  style={{ "--collapsible-panel-width": `${clampedWidth}px` } as CSSProperties}
458
481
  >
@@ -475,13 +498,19 @@ export const SideDock = forwardRef<HTMLElement, SideDockProps>(function SideDock
475
498
  >
476
499
  <div
477
500
  data-slot="side-dock-header"
478
- className="flex items-start gap-2 border-b border-border px-4 py-3"
501
+ // ONE fixed band at `h-header` — the same height the app shell's top
502
+ // bar takes, so the two rules under them sit on one line in every
503
+ // theme. Never size it from padding: a padded header grows with its
504
+ // content (a two-line description made it 73px beside a 56px bar).
505
+ // The description therefore lives UNDER the band, not inside it.
506
+ className="flex h-header shrink-0 items-center gap-2 border-b border-border px-4"
479
507
  >
480
- <div className="min-w-0 flex-1">
481
- <div id={titleId} data-slot="side-dock-title" className="text-title">
482
- {title}
483
- </div>
484
- {description && <div className="text-body text-muted-foreground">{description}</div>}
508
+ <div
509
+ id={titleId}
510
+ data-slot="side-dock-title"
511
+ className="min-w-0 flex-1 truncate text-title"
512
+ >
513
+ {title}
485
514
  </div>
486
515
  {headerActions}
487
516
  <button
@@ -506,6 +535,11 @@ export const SideDock = forwardRef<HTMLElement, SideDockProps>(function SideDock
506
535
  tabIndex={0}
507
536
  className="min-h-0 flex-1 overflow-y-auto p-4 focus-ring-inset"
508
537
  >
538
+ {description && (
539
+ <p data-slot="side-dock-description" className="mb-4 text-body text-muted-foreground">
540
+ {description}
541
+ </p>
542
+ )}
509
543
  {children}
510
544
  </div>
511
545
  {resizeHandle}
@@ -68,7 +68,7 @@ export const Default: Story = {
68
68
  </SidebarContent>
69
69
  </Sidebar>
70
70
  <SidebarInset>
71
- <header className="flex h-14 items-center gap-2 border-b px-4">
71
+ <header className="flex h-header items-center gap-2 border-b px-4">
72
72
  <SidebarTrigger />
73
73
  <span className="text-body font-medium">Dashboard</span>
74
74
  </header>
@@ -357,7 +357,7 @@ export const NestedFrameProvider: Story = {
357
357
  </SidebarContent>
358
358
  </Sidebar>
359
359
  <SidebarInset>
360
- <header className="flex h-14 items-center gap-2 border-b px-4">
360
+ <header className="flex h-header items-center gap-2 border-b px-4">
361
361
  <SidebarTrigger />
362
362
  <span className="text-body font-medium">Dashboard</span>
363
363
  </header>
@@ -435,7 +435,7 @@ export const Mobile: Story = {
435
435
  </SidebarContent>
436
436
  </Sidebar>
437
437
  <SidebarInset>
438
- <header className="flex h-14 items-center gap-2 border-b px-4">
438
+ <header className="flex h-header items-center gap-2 border-b px-4">
439
439
  <SidebarTrigger />
440
440
  </header>
441
441
  </SidebarInset>
@@ -73,7 +73,7 @@ describe("SidebarProvider", () => {
73
73
  // Asserting the two class strings merely DIFFER passes on colour-only code and
74
74
  // is not sufficient (.claude/rules/accessibility.md §1.4.1). Assert the cues
75
75
  // that survive greyscale: a drawn bar, and a heavier weight.
76
- expect(active.className).toContain("data-[active=true]:before:w-1");
76
+ expect(active.className).toContain("data-[active=true]:before:w-(--sidebar-indicator-width)");
77
77
  expect(active.className).toContain("data-[active=true]:font-semibold");
78
78
  expect(resting).toHaveAttribute("data-active", "false");
79
79
  });
@@ -110,3 +110,33 @@ describe("SidebarProvider", () => {
110
110
  removeSpy.mockRestore();
111
111
  });
112
112
  });
113
+
114
+ describe("Sidebar containerPosition", () => {
115
+ const frame = (position?: "viewport" | "inset") =>
116
+ render(
117
+ <SidebarProvider>
118
+ <Sidebar containerPosition={position}>
119
+ <span>chrome</span>
120
+ </Sidebar>
121
+ <SidebarInset>
122
+ <p>canvas</p>
123
+ </SidebarInset>
124
+ </SidebarProvider>,
125
+ ).container;
126
+
127
+ it("pins the rail to the window by default — today's behaviour, unchanged", () => {
128
+ const container = frame().querySelector('[data-slot="sidebar-container"]');
129
+ expect(container?.className).toContain("fixed");
130
+ expect(container?.className).not.toContain("absolute");
131
+ expect(frame().querySelector('[data-slot="sidebar"]')?.className).not.toContain("relative");
132
+ });
133
+
134
+ it('pins the rail to its own place in the layout with containerPosition="inset"', () => {
135
+ const root = frame("inset");
136
+ const container = root.querySelector('[data-slot="sidebar-container"]');
137
+ expect(container?.className).toContain("absolute");
138
+ expect(container?.className).not.toContain("fixed");
139
+ // The absolute container needs a positioned ancestor of the rail's own height.
140
+ expect(root.querySelector('[data-slot="sidebar"]')?.className).toContain("relative");
141
+ });
142
+ });