admin-ui-starter-kit 0.6.9 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1360) hide show
  1. package/.agents/skills/admin-ui-consumer-migration/SKILL.md +29 -1
  2. package/.agents/skills/admin-ui-consumer-migration/references/package-gap-surfaces.md +14 -0
  3. package/.agents/skills/admin-ui-consumer-migration/references/theme-overrides.md +172 -0
  4. package/.agents/skills/component-library-rules/SKILL.md +5 -4
  5. package/.agents/skills/component-library-rules/references/components/INDEX.json +23 -4
  6. package/.agents/skills/component-library-rules/references/components/INDEX.md +21 -2
  7. package/.agents/skills/component-library-rules/references/components/base__avatar.md +3 -3
  8. package/.agents/skills/component-library-rules/references/components/base__carousel.md +8 -5
  9. package/.agents/skills/component-library-rules/references/components/base__css-variables.md +1 -0
  10. package/.agents/skills/component-library-rules/references/components/base__currency.md +10 -11
  11. package/.agents/skills/component-library-rules/references/components/base__item.md +7 -7
  12. package/.agents/skills/component-library-rules/references/components/base__money-display.md +4 -0
  13. package/.agents/skills/component-library-rules/references/components/base__typography.md +3 -3
  14. package/.agents/skills/component-library-rules/references/components/composed__commerce-address-card.md +74 -0
  15. package/.agents/skills/component-library-rules/references/components/composed__commerce-cart-summary.md +84 -0
  16. package/.agents/skills/component-library-rules/references/components/composed__commerce-coupon-input.md +52 -0
  17. package/.agents/skills/component-library-rules/references/components/composed__commerce-discount-stack.md +58 -0
  18. package/.agents/skills/component-library-rules/references/components/composed__commerce-inventory-section.md +168 -0
  19. package/.agents/skills/component-library-rules/references/components/composed__commerce-loyalty-points.md +60 -0
  20. package/.agents/skills/component-library-rules/references/components/composed__commerce-order-status.md +62 -0
  21. package/.agents/skills/component-library-rules/references/components/composed__commerce-payment-method.md +58 -0
  22. package/.agents/skills/component-library-rules/references/components/composed__commerce-refund-status.md +58 -0
  23. package/.agents/skills/component-library-rules/references/components/composed__commerce-seo-listing.md +106 -0
  24. package/.agents/skills/component-library-rules/references/components/composed__commerce-shipment-tracking.md +65 -0
  25. package/.agents/skills/component-library-rules/references/components/composed__commerce-subscription-summary.md +66 -0
  26. package/.agents/skills/component-library-rules/references/components/composed__commerce-tax-breakdown.md +60 -0
  27. package/.agents/skills/component-library-rules/references/components/composed__commerce-upcoming-booking.md +62 -0
  28. package/.agents/skills/component-library-rules/references/components/composed__commerce-voucher-entry.md +60 -0
  29. package/.agents/skills/component-library-rules/references/components/composed__commerce.md +29 -143
  30. package/.agents/skills/component-library-rules/references/components/features__products.md +18 -462
  31. package/.agents/skills/component-library-rules/references/components/features__products__actions.md +37 -0
  32. package/.agents/skills/component-library-rules/references/components/features__products__support-rail.md +73 -0
  33. package/.agents/skills/component-library-rules/references/components/features__products__variant-details.md +97 -0
  34. package/.agents/skills/component-library-rules/references/components/features__products__variant-management.md +269 -0
  35. package/.agents/skills/component-library-rules/references/components/layout__layout-auth.md +1 -1
  36. package/.agents/skills/component-library-rules/references/components/layout__layout-containers.md +43 -1
  37. package/.agents/skills/component-library-rules/references/testing.md +1 -1
  38. package/.agents/skills/token-system/SKILL.md +4 -1
  39. package/AGENTS.md +4 -3
  40. package/COMPONENT_SELECTION.md +15 -0
  41. package/INTEGRATION.md +41 -2
  42. package/MIGRATION.md +7 -7
  43. package/README.md +7 -3
  44. package/dist/_shared/accordion-CSRRDWVZ.js +135 -0
  45. package/dist/_shared/accordion-CSRRDWVZ.js.map +1 -0
  46. package/dist/_shared/accordion-ClVkIaCy.cjs +2 -0
  47. package/dist/_shared/accordion-ClVkIaCy.cjs.map +1 -0
  48. package/dist/_shared/action-menu-8RN2_Jdr.js +96 -0
  49. package/dist/_shared/action-menu-8RN2_Jdr.js.map +1 -0
  50. package/dist/_shared/action-menu-Cx2xaBjN.cjs +2 -0
  51. package/dist/_shared/action-menu-Cx2xaBjN.cjs.map +1 -0
  52. package/dist/_shared/ai-artifact-BO0XGFHz.cjs +3 -0
  53. package/dist/_shared/ai-artifact-BO0XGFHz.cjs.map +1 -0
  54. package/dist/_shared/ai-artifact-CbsGR1t8.js +1099 -0
  55. package/dist/_shared/ai-artifact-CbsGR1t8.js.map +1 -0
  56. package/dist/_shared/auth-CwipRgNB.cjs +2 -0
  57. package/dist/_shared/auth-CwipRgNB.cjs.map +1 -0
  58. package/dist/_shared/auth-Wipu0Oa_.js +643 -0
  59. package/dist/_shared/auth-Wipu0Oa_.js.map +1 -0
  60. package/dist/_shared/badge-B0Ashqkn.cjs +2 -0
  61. package/dist/_shared/badge-B0Ashqkn.cjs.map +1 -0
  62. package/dist/_shared/badge-DOJpEtsa.js +110 -0
  63. package/dist/_shared/badge-DOJpEtsa.js.map +1 -0
  64. package/dist/_shared/breadcrumbs-C7PI8sxx.cjs +2 -0
  65. package/dist/_shared/breadcrumbs-C7PI8sxx.cjs.map +1 -0
  66. package/dist/_shared/breadcrumbs-xNjbIrGc.js +105 -0
  67. package/dist/_shared/breadcrumbs-xNjbIrGc.js.map +1 -0
  68. package/dist/_shared/button-CB8e7fui.cjs +2 -0
  69. package/dist/_shared/button-CB8e7fui.cjs.map +1 -0
  70. package/dist/_shared/button-CNEMqDHK.js +192 -0
  71. package/dist/_shared/button-CNEMqDHK.js.map +1 -0
  72. package/dist/_shared/buttons-BCFKQuB5.js +137 -0
  73. package/dist/_shared/buttons-BCFKQuB5.js.map +1 -0
  74. package/dist/_shared/buttons-DHj5I2YL.cjs +2 -0
  75. package/dist/_shared/buttons-DHj5I2YL.cjs.map +1 -0
  76. package/dist/_shared/card-radio-group-DdubYUJ6.cjs +2 -0
  77. package/dist/_shared/card-radio-group-DdubYUJ6.cjs.map +1 -0
  78. package/dist/_shared/card-radio-group-Du6rzuoC.js +150 -0
  79. package/dist/_shared/card-radio-group-Du6rzuoC.js.map +1 -0
  80. package/dist/_shared/cards-B7voInTJ.js +430 -0
  81. package/dist/_shared/cards-B7voInTJ.js.map +1 -0
  82. package/dist/_shared/cards-DvE5gRFf.cjs +2 -0
  83. package/dist/_shared/cards-DvE5gRFf.cjs.map +1 -0
  84. package/dist/_shared/combobox-AbXh9ft4.cjs +2 -0
  85. package/dist/_shared/combobox-AbXh9ft4.cjs.map +1 -0
  86. package/dist/_shared/combobox-ImXiC1qy.js +957 -0
  87. package/dist/_shared/combobox-ImXiC1qy.js.map +1 -0
  88. package/dist/_shared/command-B-Yokco3.js +39 -0
  89. package/dist/_shared/command-B-Yokco3.js.map +1 -0
  90. package/dist/_shared/command-kcPx4TM_.cjs +2 -0
  91. package/dist/_shared/command-kcPx4TM_.cjs.map +1 -0
  92. package/dist/_shared/comments-BR5ENvoo.cjs +2 -0
  93. package/dist/_shared/comments-BR5ENvoo.cjs.map +1 -0
  94. package/dist/_shared/comments-a3l--GJ-.js +952 -0
  95. package/dist/_shared/comments-a3l--GJ-.js.map +1 -0
  96. package/dist/_shared/containers-CclPUW7j.cjs +2 -0
  97. package/dist/_shared/containers-CclPUW7j.cjs.map +1 -0
  98. package/dist/_shared/containers-GDaJ3SOV.js +101 -0
  99. package/dist/_shared/containers-GDaJ3SOV.js.map +1 -0
  100. package/dist/_shared/copyable-C0KJlRVr.js +38 -0
  101. package/dist/_shared/copyable-C0KJlRVr.js.map +1 -0
  102. package/dist/_shared/copyable-tJxsOyn-.cjs +2 -0
  103. package/dist/_shared/copyable-tJxsOyn-.cjs.map +1 -0
  104. package/dist/_shared/data-display-0uNuZSN7.js +1878 -0
  105. package/dist/_shared/data-display-0uNuZSN7.js.map +1 -0
  106. package/dist/_shared/data-display-DRa39LH8.cjs +2 -0
  107. package/dist/_shared/data-display-DRa39LH8.cjs.map +1 -0
  108. package/dist/_shared/date-picker-BaPDfs1p.js +1361 -0
  109. package/dist/_shared/date-picker-BaPDfs1p.js.map +1 -0
  110. package/dist/_shared/date-picker-DrkoZZdr.cjs +2 -0
  111. package/dist/_shared/date-picker-DrkoZZdr.cjs.map +1 -0
  112. package/dist/_shared/date-pickers-CT3aZpPn.cjs +2 -0
  113. package/dist/_shared/date-pickers-CT3aZpPn.cjs.map +1 -0
  114. package/dist/_shared/date-pickers-DRp0VM7k.js +329 -0
  115. package/dist/_shared/date-pickers-DRp0VM7k.js.map +1 -0
  116. package/dist/_shared/display-BHIs_Y_j.js +1006 -0
  117. package/dist/_shared/display-BHIs_Y_j.js.map +1 -0
  118. package/dist/_shared/display-DV7n0KA1.cjs +2 -0
  119. package/dist/_shared/display-DV7n0KA1.cjs.map +1 -0
  120. package/dist/_shared/dropdown-menu-5fFMhKo4.js +147 -0
  121. package/dist/_shared/dropdown-menu-5fFMhKo4.js.map +1 -0
  122. package/dist/_shared/dropdown-menu-B_SCGRL2.cjs +2 -0
  123. package/dist/_shared/dropdown-menu-B_SCGRL2.cjs.map +1 -0
  124. package/dist/_shared/form-sizing-VNEGzvM7.js +42 -0
  125. package/dist/_shared/form-sizing-VNEGzvM7.js.map +1 -0
  126. package/dist/_shared/form-sizing-lBFpJWv4.cjs +2 -0
  127. package/dist/_shared/form-sizing-lBFpJWv4.cjs.map +1 -0
  128. package/dist/_shared/forms-B7LYVbAy.cjs +2 -0
  129. package/dist/_shared/forms-B7LYVbAy.cjs.map +1 -0
  130. package/dist/_shared/forms-C5uZX_kQ.js +3534 -0
  131. package/dist/_shared/forms-C5uZX_kQ.js.map +1 -0
  132. package/dist/_shared/header-B4wGB6Ca.cjs +2 -0
  133. package/dist/_shared/header-B4wGB6Ca.cjs.map +1 -0
  134. package/dist/_shared/header-CWyOry0f.js +447 -0
  135. package/dist/_shared/header-CWyOry0f.js.map +1 -0
  136. package/dist/_shared/hooks-B4Cop5YI.cjs +2 -0
  137. package/dist/_shared/hooks-B4Cop5YI.cjs.map +1 -0
  138. package/dist/_shared/hooks-CFUZJW_S.js +95 -0
  139. package/dist/_shared/hooks-CFUZJW_S.js.map +1 -0
  140. package/dist/_shared/icon-size-CMNigtUu.js +15 -0
  141. package/dist/_shared/icon-size-CMNigtUu.js.map +1 -0
  142. package/dist/_shared/icon-size-D2NnYd0K.cjs +2 -0
  143. package/dist/_shared/icon-size-D2NnYd0K.cjs.map +1 -0
  144. package/dist/_shared/input-BEhrcsk7.js +182 -0
  145. package/dist/_shared/input-BEhrcsk7.js.map +1 -0
  146. package/dist/_shared/input-DGvh-izk.cjs +2 -0
  147. package/dist/_shared/input-DGvh-izk.cjs.map +1 -0
  148. package/dist/_shared/item-BG2iK1sy.cjs +2 -0
  149. package/dist/_shared/item-BG2iK1sy.cjs.map +1 -0
  150. package/dist/_shared/item-D75eGy8G.js +227 -0
  151. package/dist/_shared/item-D75eGy8G.js.map +1 -0
  152. package/dist/_shared/layout-DN8tzvlm.cjs +2 -0
  153. package/dist/_shared/layout-DN8tzvlm.cjs.map +1 -0
  154. package/dist/_shared/layout-DNrUkvzF.js +268 -0
  155. package/dist/_shared/layout-DNrUkvzF.js.map +1 -0
  156. package/dist/_shared/mentions-CWqC8Xds.js +506 -0
  157. package/dist/_shared/mentions-CWqC8Xds.js.map +1 -0
  158. package/dist/_shared/mentions-wtkrL2hX.cjs +2 -0
  159. package/dist/_shared/mentions-wtkrL2hX.cjs.map +1 -0
  160. package/dist/_shared/money-display-BabyaIWb.js +198 -0
  161. package/dist/_shared/money-display-BabyaIWb.js.map +1 -0
  162. package/dist/_shared/money-display-CrNRbByx.cjs +2 -0
  163. package/dist/_shared/money-display-CrNRbByx.cjs.map +1 -0
  164. package/dist/_shared/navigation-9DB-vtGI.js +436 -0
  165. package/dist/_shared/navigation-9DB-vtGI.js.map +1 -0
  166. package/dist/_shared/navigation-DAjFLSv5.cjs +2 -0
  167. package/dist/_shared/navigation-DAjFLSv5.cjs.map +1 -0
  168. package/dist/_shared/overlays-BK0J8zSv.cjs +2 -0
  169. package/dist/_shared/overlays-BK0J8zSv.cjs.map +1 -0
  170. package/dist/_shared/overlays-DKsXufDv.js +735 -0
  171. package/dist/_shared/overlays-DKsXufDv.js.map +1 -0
  172. package/dist/_shared/popover-menu-DXh14PIu.js +93 -0
  173. package/dist/_shared/popover-menu-DXh14PIu.js.map +1 -0
  174. package/dist/_shared/popover-menu-DkjPUZ4v.cjs +2 -0
  175. package/dist/_shared/popover-menu-DkjPUZ4v.cjs.map +1 -0
  176. package/dist/_shared/rich-text-editor-DjZTJzdm.cjs +2 -0
  177. package/dist/_shared/rich-text-editor-DjZTJzdm.cjs.map +1 -0
  178. package/dist/_shared/rich-text-editor-DloyZq46.js +620 -0
  179. package/dist/_shared/rich-text-editor-DloyZq46.js.map +1 -0
  180. package/dist/_shared/settings-AIgixHbB.cjs +2 -0
  181. package/dist/_shared/settings-AIgixHbB.cjs.map +1 -0
  182. package/dist/_shared/settings-D3KdypJk.js +143 -0
  183. package/dist/_shared/settings-D3KdypJk.js.map +1 -0
  184. package/dist/_shared/sidebar-BzBincq3.js +548 -0
  185. package/dist/_shared/sidebar-BzBincq3.js.map +1 -0
  186. package/dist/_shared/sidebar-D5NLbyow.cjs +2 -0
  187. package/dist/_shared/sidebar-D5NLbyow.cjs.map +1 -0
  188. package/dist/_shared/skeleton-Bc_qa5l_.js +256 -0
  189. package/dist/_shared/skeleton-Bc_qa5l_.js.map +1 -0
  190. package/dist/_shared/skeleton-Wq6G0Kya.cjs +2 -0
  191. package/dist/_shared/skeleton-Wq6G0Kya.cjs.map +1 -0
  192. package/dist/_shared/spinner-C-yoZUk-.cjs +2 -0
  193. package/dist/_shared/spinner-C-yoZUk-.cjs.map +1 -0
  194. package/dist/_shared/spinner-CDVWFN0N.js +67 -0
  195. package/dist/_shared/spinner-CDVWFN0N.js.map +1 -0
  196. package/dist/_shared/table-B70kyH2E.js +1377 -0
  197. package/dist/_shared/table-B70kyH2E.js.map +1 -0
  198. package/dist/_shared/table-DQA2m2F0.cjs +2 -0
  199. package/dist/_shared/table-DQA2m2F0.cjs.map +1 -0
  200. package/dist/_shared/textarea-Dx9yEZY2.js +118 -0
  201. package/dist/_shared/textarea-Dx9yEZY2.js.map +1 -0
  202. package/dist/_shared/textarea-rfnSeHHC.cjs +2 -0
  203. package/dist/_shared/textarea-rfnSeHHC.cjs.map +1 -0
  204. package/dist/_shared/typography-C_kCoR1d.js +204 -0
  205. package/dist/_shared/typography-C_kCoR1d.js.map +1 -0
  206. package/dist/_shared/typography-sXFd02zl.cjs +2 -0
  207. package/dist/_shared/typography-sXFd02zl.cjs.map +1 -0
  208. package/dist/_shared/workspace-Bw-k_HXQ.js +357 -0
  209. package/dist/_shared/workspace-Bw-k_HXQ.js.map +1 -0
  210. package/dist/_shared/workspace-CLUsYC5y.cjs +2 -0
  211. package/dist/_shared/workspace-CLUsYC5y.cjs.map +1 -0
  212. package/dist/components/base/accordion/index.cjs +1 -1
  213. package/dist/components/base/accordion/index.js +1 -1
  214. package/dist/components/base/badge/index.cjs +1 -1
  215. package/dist/components/base/badge/index.js +1 -1
  216. package/dist/components/base/buttons/index.cjs +1 -1
  217. package/dist/components/base/buttons/index.js +2 -2
  218. package/dist/components/base/cards/index.cjs +1 -1
  219. package/dist/components/base/cards/index.js +1 -1
  220. package/dist/components/base/carousel/carousel.d.ts.map +1 -1
  221. package/dist/components/base/carousel/index.cjs +1 -1
  222. package/dist/components/base/carousel/index.cjs.map +1 -1
  223. package/dist/components/base/carousel/index.js +98 -97
  224. package/dist/components/base/carousel/index.js.map +1 -1
  225. package/dist/components/base/combobox/components/combobox-dropdown.d.ts.map +1 -1
  226. package/dist/components/base/combobox/index.cjs +1 -1
  227. package/dist/components/base/combobox/index.js +1 -1
  228. package/dist/components/base/command/command.d.ts +1 -1
  229. package/dist/components/base/command/index.cjs +1 -1
  230. package/dist/components/base/command/index.js +1 -1
  231. package/dist/components/base/copyable/index.cjs +1 -1
  232. package/dist/components/base/copyable/index.js +1 -1
  233. package/dist/components/base/currency/index.cjs +1 -1
  234. package/dist/components/base/currency/index.js +1 -1
  235. package/dist/components/base/date-pickers/index.cjs +1 -1
  236. package/dist/components/base/date-pickers/index.js +2 -2
  237. package/dist/components/base/display/alert.d.ts.map +1 -1
  238. package/dist/components/base/display/chart.cjs +1 -1
  239. package/dist/components/base/display/chart.js +1 -1
  240. package/dist/components/base/display/icon-size.d.ts +6 -0
  241. package/dist/components/base/display/icon-size.d.ts.map +1 -0
  242. package/dist/components/base/display/index.cjs +1 -1
  243. package/dist/components/base/display/index.d.ts +1 -0
  244. package/dist/components/base/display/index.d.ts.map +1 -1
  245. package/dist/components/base/display/index.js +10 -9
  246. package/dist/components/base/display/throttle-alert.d.ts.map +1 -1
  247. package/dist/components/base/event-calendar/index.cjs +1 -1
  248. package/dist/components/base/event-calendar/index.cjs.map +1 -1
  249. package/dist/components/base/event-calendar/index.js +4 -4
  250. package/dist/components/base/event-calendar/index.js.map +1 -1
  251. package/dist/components/base/forms/index.cjs +1 -1
  252. package/dist/components/base/forms/index.js +5 -5
  253. package/dist/components/base/item/index.cjs +1 -1
  254. package/dist/components/base/item/index.js +1 -1
  255. package/dist/components/base/item/item.d.ts.map +1 -1
  256. package/dist/components/base/map/index.cjs +1 -1
  257. package/dist/components/base/map/index.cjs.map +1 -1
  258. package/dist/components/base/map/index.js +3 -3
  259. package/dist/components/base/map/index.js.map +1 -1
  260. package/dist/components/base/map/map.d.ts +1 -1
  261. package/dist/components/base/map/map.d.ts.map +1 -1
  262. package/dist/components/base/navigation/dropdown-menu.d.ts +33 -1
  263. package/dist/components/base/navigation/dropdown-menu.d.ts.map +1 -1
  264. package/dist/components/base/navigation/index.cjs +1 -1
  265. package/dist/components/base/navigation/index.js +4 -4
  266. package/dist/components/base/popover-menu/index.cjs +1 -1
  267. package/dist/components/base/popover-menu/index.js +1 -1
  268. package/dist/components/base/spinner/index.cjs +1 -1
  269. package/dist/components/base/spinner/index.js +1 -1
  270. package/dist/components/base/table/index.cjs +1 -1
  271. package/dist/components/base/table/index.js +1 -1
  272. package/dist/components/composed/admin/index.cjs +1 -1
  273. package/dist/components/composed/admin/index.cjs.map +1 -1
  274. package/dist/components/composed/admin/index.js +10 -11
  275. package/dist/components/composed/admin/index.js.map +1 -1
  276. package/dist/components/composed/ai/index.cjs +1 -1
  277. package/dist/components/composed/ai/index.cjs.map +1 -1
  278. package/dist/components/composed/ai/index.js +8 -9
  279. package/dist/components/composed/ai/index.js.map +1 -1
  280. package/dist/components/composed/analytics/index.cjs +1 -1
  281. package/dist/components/composed/analytics/index.cjs.map +1 -1
  282. package/dist/components/composed/analytics/index.js +4 -4
  283. package/dist/components/composed/analytics/index.js.map +1 -1
  284. package/dist/components/composed/cards/index.cjs +1 -1
  285. package/dist/components/composed/cards/index.cjs.map +1 -1
  286. package/dist/components/composed/cards/index.js +13 -15
  287. package/dist/components/composed/cards/index.js.map +1 -1
  288. package/dist/components/composed/commerce/index.cjs +1 -1
  289. package/dist/components/composed/commerce/index.cjs.map +1 -1
  290. package/dist/components/composed/commerce/index.d.ts +2 -0
  291. package/dist/components/composed/commerce/index.d.ts.map +1 -1
  292. package/dist/components/composed/commerce/index.js +1246 -382
  293. package/dist/components/composed/commerce/index.js.map +1 -1
  294. package/dist/components/composed/commerce/inventory-section/index.d.ts +3 -0
  295. package/dist/components/composed/commerce/inventory-section/index.d.ts.map +1 -0
  296. package/dist/components/composed/commerce/inventory-section/inventory-section.d.ts +6 -0
  297. package/dist/components/composed/commerce/inventory-section/inventory-section.d.ts.map +1 -0
  298. package/dist/components/composed/commerce/inventory-section/types.d.ts +85 -0
  299. package/dist/components/composed/commerce/inventory-section/types.d.ts.map +1 -0
  300. package/dist/components/composed/commerce/seo-listing/index.d.ts +4 -0
  301. package/dist/components/composed/commerce/seo-listing/index.d.ts.map +1 -0
  302. package/dist/components/composed/commerce/seo-listing/seo-listing-card.d.ts +6 -0
  303. package/dist/components/composed/commerce/seo-listing/seo-listing-card.d.ts.map +1 -0
  304. package/dist/components/composed/commerce/seo-listing/seo-listing-score.d.ts +6 -0
  305. package/dist/components/composed/commerce/seo-listing/seo-listing-score.d.ts.map +1 -0
  306. package/dist/components/composed/commerce/seo-listing/types.d.ts +68 -0
  307. package/dist/components/composed/commerce/seo-listing/types.d.ts.map +1 -0
  308. package/dist/components/composed/dark-surfaces/index.cjs +1 -1
  309. package/dist/components/composed/dark-surfaces/index.cjs.map +1 -1
  310. package/dist/components/composed/dark-surfaces/index.js +7 -7
  311. package/dist/components/composed/dark-surfaces/index.js.map +1 -1
  312. package/dist/components/composed/data-display/index.cjs +1 -1
  313. package/dist/components/composed/data-display/index.js +1 -1
  314. package/dist/components/composed/navigation/index.cjs +1 -1
  315. package/dist/components/composed/navigation/index.cjs.map +1 -1
  316. package/dist/components/composed/navigation/index.js +5 -6
  317. package/dist/components/composed/navigation/index.js.map +1 -1
  318. package/dist/components/composed/onboarding/index.cjs +1 -1
  319. package/dist/components/composed/onboarding/index.js +3 -3
  320. package/dist/components/composed/timelines/index.cjs +1 -1
  321. package/dist/components/composed/timelines/index.js +3 -3
  322. package/dist/components/features/activities/index.cjs +1 -1
  323. package/dist/components/features/activities/index.js +5 -5
  324. package/dist/components/features/ai-chat/index.cjs +1 -1
  325. package/dist/components/features/ai-chat/index.js +5 -5
  326. package/dist/components/features/card/index.cjs +1 -1
  327. package/dist/components/features/card/index.js +4 -4
  328. package/dist/components/features/comments/index.cjs +1 -1
  329. package/dist/components/features/comments/index.js +2 -2
  330. package/dist/components/features/data-view/index.cjs +1 -1
  331. package/dist/components/features/data-view/index.js +2 -2
  332. package/dist/components/features/event-log/index.cjs +1 -1
  333. package/dist/components/features/event-log/index.js +4 -4
  334. package/dist/components/features/filters/index.cjs +1 -1
  335. package/dist/components/features/filters/index.cjs.map +1 -1
  336. package/dist/components/features/filters/index.js +64 -64
  337. package/dist/components/features/filters/index.js.map +1 -1
  338. package/dist/components/features/filters/partials/regular-filter-content.d.ts.map +1 -1
  339. package/dist/components/features/global-search/index.cjs +1 -1
  340. package/dist/components/features/global-search/index.js +4 -4
  341. package/dist/components/features/kanban/index.cjs +1 -1
  342. package/dist/components/features/kanban/index.js +3 -3
  343. package/dist/components/features/media-library/index.cjs +1 -1
  344. package/dist/components/features/media-library/index.cjs.map +1 -1
  345. package/dist/components/features/media-library/index.js +230 -206
  346. package/dist/components/features/media-library/index.js.map +1 -1
  347. package/dist/components/features/media-library/media-library.d.ts.map +1 -1
  348. package/dist/components/features/media-library/media-library.strings.d.ts +2 -0
  349. package/dist/components/features/media-library/media-library.strings.d.ts.map +1 -1
  350. package/dist/components/features/media-library/partials/media-library-partials.d.ts.map +1 -1
  351. package/dist/components/features/mentions/index.cjs +1 -1
  352. package/dist/components/features/mentions/index.js +1 -1
  353. package/dist/components/features/overlays/index.cjs +1 -1
  354. package/dist/components/features/overlays/index.js +1 -1
  355. package/dist/components/features/products/components/index.d.ts +3 -0
  356. package/dist/components/features/products/components/index.d.ts.map +1 -1
  357. package/dist/components/features/products/components/product-options-matrix.d.ts +6 -0
  358. package/dist/components/features/products/components/product-options-matrix.d.ts.map +1 -0
  359. package/dist/components/features/products/components/product-variants-bulk-table.d.ts +6 -0
  360. package/dist/components/features/products/components/product-variants-bulk-table.d.ts.map +1 -0
  361. package/dist/components/features/products/components/product-variants-manager.d.ts +6 -0
  362. package/dist/components/features/products/components/product-variants-manager.d.ts.map +1 -0
  363. package/dist/components/features/products/index.cjs +1 -1
  364. package/dist/components/features/products/index.cjs.map +1 -1
  365. package/dist/components/features/products/index.js +1705 -511
  366. package/dist/components/features/products/index.js.map +1 -1
  367. package/dist/components/features/products/products.strings.d.ts +70 -0
  368. package/dist/components/features/products/products.strings.d.ts.map +1 -1
  369. package/dist/components/features/products/products.types.d.ts +163 -1
  370. package/dist/components/features/products/products.types.d.ts.map +1 -1
  371. package/dist/components/features/resource/index.cjs +1 -1
  372. package/dist/components/features/resource/index.js +5 -5
  373. package/dist/components/features/rich-text-editor/index.cjs +1 -1
  374. package/dist/components/features/rich-text-editor/index.js +1 -1
  375. package/dist/components/features/schema-form/index.cjs +1 -1
  376. package/dist/components/features/schema-form/index.js +8 -8
  377. package/dist/components/features/suggestions/index.cjs +1 -1
  378. package/dist/components/features/suggestions/index.js +1 -1
  379. package/dist/components/features/sync/index.cjs +1 -1
  380. package/dist/components/features/sync/index.js +2 -2
  381. package/dist/components/layout/auth/index.cjs +1 -1
  382. package/dist/components/layout/auth/index.js +1 -1
  383. package/dist/components/layout/containers/index.cjs +1 -1
  384. package/dist/components/layout/containers/index.d.ts +1 -0
  385. package/dist/components/layout/containers/index.d.ts.map +1 -1
  386. package/dist/components/layout/containers/index.js +2 -2
  387. package/dist/components/layout/containers/two-column-layout.d.ts +43 -0
  388. package/dist/components/layout/containers/two-column-layout.d.ts.map +1 -0
  389. package/dist/components/layout/header/index.cjs +1 -1
  390. package/dist/components/layout/header/index.js +1 -1
  391. package/dist/components/layout/hooks/index.cjs +1 -1
  392. package/dist/components/layout/hooks/index.js +1 -1
  393. package/dist/components/layout/index.cjs +1 -1
  394. package/dist/components/layout/index.js +9 -9
  395. package/dist/components/layout/page/index.cjs +1 -1
  396. package/dist/components/layout/page/index.js +1 -1
  397. package/dist/components/layout/page/page-content.d.ts +1 -1
  398. package/dist/components/layout/page/page-content.d.ts.map +1 -1
  399. package/dist/components/layout/settings/index.cjs +1 -1
  400. package/dist/components/layout/settings/index.js +1 -1
  401. package/dist/components/layout/sidebar/index.cjs +1 -1
  402. package/dist/components/layout/sidebar/index.js +2 -2
  403. package/dist/components/layout/workspace/index.cjs +1 -1
  404. package/dist/components/layout/workspace/index.js +1 -1
  405. package/dist/components/typography/index.cjs +1 -1
  406. package/dist/components/typography/index.js +1 -1
  407. package/dist/components/typography/text-link.d.ts +3 -1
  408. package/dist/components/typography/text-link.d.ts.map +1 -1
  409. package/dist/components/typography/text.d.ts.map +1 -1
  410. package/dist/lib/ui-provider/types.d.ts +1 -1
  411. package/dist/lib/ui-provider/types.d.ts.map +1 -1
  412. package/dist/lib/utils.cjs +1 -1
  413. package/dist/lib/utils.cjs.map +1 -1
  414. package/dist/lib/utils.d.ts.map +1 -1
  415. package/dist/lib/utils.js +1 -0
  416. package/dist/lib/utils.js.map +1 -1
  417. package/dist/services/actions/index.cjs +1 -1
  418. package/dist/services/actions/index.js +1 -1
  419. package/dist/showcase/assets/AreaChart-D_z9eYQj.js +6 -0
  420. package/dist/showcase/assets/CompositeItem-BSVzIXzg.js +1 -0
  421. package/dist/showcase/assets/CompositeRoot-Ewl7bgm-.js +1 -0
  422. package/dist/showcase/assets/DialogTrigger-CD-DcY4b.js +1 -0
  423. package/dist/showcase/assets/LabelableContext-BdRVtvs6.js +1 -0
  424. package/dist/showcase/assets/MenuTrigger-B8Y7BUCN.js +1 -0
  425. package/dist/showcase/assets/PreviewLayout-CE0fmzoc.js +1 -0
  426. package/dist/showcase/assets/RadioGroup-Qaf-akL1.js +1 -0
  427. package/dist/showcase/assets/ScrollAreaCorner-BQR87jzh.js +1 -0
  428. package/dist/showcase/assets/Separator-Cymh2jzU.js +1 -0
  429. package/dist/showcase/assets/ToolbarRootContext-P5BSzPlo.js +1 -0
  430. package/dist/showcase/assets/accordion-BGUvdQ5Z.js +171 -0
  431. package/dist/showcase/assets/accordion-variants-B56z6tQI.js +1 -0
  432. package/dist/showcase/assets/action-menu-C3DOQfP4.js +1 -0
  433. package/dist/showcase/assets/actions-DHG4zJRu.js +38 -0
  434. package/dist/showcase/assets/actions-IxPK0biY.js +310 -0
  435. package/dist/showcase/assets/activities-TK5Lr8Wb.js +500 -0
  436. package/dist/showcase/assets/activities-feed-card-tgQKimyh.js +1 -0
  437. package/dist/showcase/assets/admin-BQrDKNJa.js +140 -0
  438. package/dist/showcase/assets/ai-artifact-Cv7LTw1V.js +2 -0
  439. package/dist/showcase/assets/ai-chat-Dmg2Tqf1.js +568 -0
  440. package/dist/showcase/assets/ai-elements-BmokxSCy.js +387 -0
  441. package/dist/showcase/assets/ai-tool-call-6qESA6We.js +1 -0
  442. package/dist/showcase/assets/ai-xShhEkrM.js +207 -0
  443. package/dist/showcase/assets/alert--MONSwFW.js +1 -0
  444. package/dist/showcase/assets/alert-BuMNu_BZ.js +62 -0
  445. package/dist/showcase/assets/alert-z1RP5MhA.js +93 -0
  446. package/dist/showcase/assets/api-key-list-BhmXUJty.js +73 -0
  447. package/dist/showcase/assets/api-key-list-hPTN6gwa.js +1 -0
  448. package/dist/showcase/assets/app-sidebar-CY-XpIu6.js +1 -0
  449. package/dist/showcase/assets/arrow-down-D0XbhSDi.js +1 -0
  450. package/dist/showcase/assets/arrow-left-DBxsWbzL.js +1 -0
  451. package/dist/showcase/assets/arrow-right-Dk80zKWl.js +1 -0
  452. package/dist/showcase/assets/arrow-up-BiZ_VvpP.js +1 -0
  453. package/dist/showcase/assets/arrow-up-right-OdmPQEwY.js +1 -0
  454. package/dist/showcase/assets/avatar-BThv_quW.js +1 -0
  455. package/dist/showcase/assets/avatar-Bcy2snIC.js +67 -0
  456. package/dist/showcase/assets/avatar-Ca3to6dB.js +57 -0
  457. package/dist/showcase/assets/avatar-Dba0yVei.js +1 -0
  458. package/dist/showcase/assets/badge-A1w2eIaM.js +31 -0
  459. package/dist/showcase/assets/badge-check-DyqZ9Ff8.js +1 -0
  460. package/dist/showcase/assets/bell-DyqsYdKK.js +1 -0
  461. package/dist/showcase/assets/boolean-indicator-gaFjXuY1.js +1 -0
  462. package/dist/showcase/assets/bot-BGQvS_p9.js +1 -0
  463. package/dist/showcase/assets/box-BoFEAPr6.js +1 -0
  464. package/dist/showcase/assets/braces-D88Ve7g-.js +1 -0
  465. package/dist/showcase/assets/brain-hIv2TdLu.js +1 -0
  466. package/dist/showcase/assets/brand-CiWM8HzB.js +36 -0
  467. package/dist/showcase/assets/breadcrumb-DlHNoCer.js +1 -0
  468. package/dist/showcase/assets/breadcrumb-Dy-UbgK5.js +52 -0
  469. package/dist/showcase/assets/breadcrumbs-BoXmoDHt.js +1 -0
  470. package/dist/showcase/assets/briefcase-BeN7dk_G.js +1 -0
  471. package/dist/showcase/assets/building-2-ICycTKXZ.js +1 -0
  472. package/dist/showcase/assets/button-BADo_inb.js +44 -0
  473. package/dist/showcase/assets/button-group-BGkXY3HC.js +1 -0
  474. package/dist/showcase/assets/buttons-3z50eWMp.js +272 -0
  475. package/dist/showcase/assets/calendar-BAfoc476.js +1 -0
  476. package/dist/showcase/assets/calendar-DNxQUmlO.js +16 -0
  477. package/dist/showcase/assets/calendar-days-D86Fv-vG.js +1 -0
  478. package/dist/showcase/assets/calendar-pjS8iCZE.js +1 -0
  479. package/dist/showcase/assets/camera-DxWfctRe.js +1 -0
  480. package/dist/showcase/assets/card-BazLaDA9.js +188 -0
  481. package/dist/showcase/assets/card-F8Ona144.js +1 -0
  482. package/dist/showcase/assets/card-checkbox-group-DtK7aVPU.js +1 -0
  483. package/dist/showcase/assets/card-primitives-DzqLvy5f.js +1 -0
  484. package/dist/showcase/assets/card-radio-group-EjPkSg-w.js +1 -0
  485. package/dist/showcase/assets/cards--V2D7Sft.js +354 -0
  486. package/dist/showcase/assets/carousel-BNmTHQiN.js +452 -0
  487. package/dist/showcase/assets/cell-renderers-BdpeNGHs.js +1 -0
  488. package/dist/showcase/assets/chart-column-CJx3qWPs.js +1 -0
  489. package/dist/showcase/assets/chart-p7dUP6Mo.js +358 -0
  490. package/dist/showcase/assets/checkbox-BBxn_hxI.js +1 -0
  491. package/dist/showcase/assets/checkbox-BEyESyQ2.js +1 -0
  492. package/dist/showcase/assets/chevron-down-mjLUdP6b.js +1 -0
  493. package/dist/showcase/assets/chevron-left-DOofVtEd.js +1 -0
  494. package/dist/showcase/assets/chevron-up-BJk6z8Fg.js +1 -0
  495. package/dist/showcase/assets/chevrons-up-down-C-9zUpl_.js +1 -0
  496. package/dist/showcase/assets/circle-OmLq29jq.js +1 -0
  497. package/dist/showcase/assets/circle-alert-DSpR2pdl.js +1 -0
  498. package/dist/showcase/assets/circle-check-BjuHEm7p.js +1 -0
  499. package/dist/showcase/assets/circle-check-big-BuYdgE3Q.js +1 -0
  500. package/dist/showcase/assets/circle-dot-DlYGMuaF.js +1 -0
  501. package/dist/showcase/assets/circle-question-mark-BlgRDDu3.js +1 -0
  502. package/dist/showcase/assets/circle-x-BavQ4wuc.js +1 -0
  503. package/dist/showcase/assets/clock-3-CzeN1Iwk.js +1 -0
  504. package/dist/showcase/assets/clock-CZYS08d1.js +1 -0
  505. package/dist/showcase/assets/code-xml-D4NwoTpD.js +1 -0
  506. package/dist/showcase/assets/collapsible-BtawbO_2.js +1 -0
  507. package/dist/showcase/assets/collapsible-CJXE3z1T.js +27 -0
  508. package/dist/showcase/assets/collapsible-ws3VKPg9.js +1 -0
  509. package/dist/showcase/assets/combobox-Btpk7-vH.js +685 -0
  510. package/dist/showcase/assets/command-CoiVI2_b.js +1 -0
  511. package/dist/showcase/assets/command-Dkn9XqF2.js +1 -0
  512. package/dist/showcase/assets/comment-composer-BNnVQo1O.js +1 -0
  513. package/dist/showcase/assets/comment-item-BiIgcrPQ.js +1 -0
  514. package/dist/showcase/assets/comments-CvzWz23L.js +357 -0
  515. package/dist/showcase/assets/commerce-CBHLQF8q.js +19 -0
  516. package/dist/showcase/assets/commerce-address-card-Bqm0FQkG.js +33 -0
  517. package/dist/showcase/assets/commerce-cart-summary-BtGCOEun.js +43 -0
  518. package/dist/showcase/assets/commerce-coupon-input-I3FY6pgV.js +11 -0
  519. package/dist/showcase/assets/commerce-discount-stack-CWqyobuL.js +17 -0
  520. package/dist/showcase/assets/commerce-inventory-section-rBtMNLTt.js +123 -0
  521. package/dist/showcase/assets/commerce-loyalty-points-ne7c2ObQ.js +19 -0
  522. package/dist/showcase/assets/commerce-order-status-eLtUC1iE.js +21 -0
  523. package/dist/showcase/assets/commerce-payment-method-B3yFyhpS.js +17 -0
  524. package/dist/showcase/assets/commerce-refund-status-C1pzTSus.js +17 -0
  525. package/dist/showcase/assets/commerce-seo-listing-CBk_c8ru.js +61 -0
  526. package/dist/showcase/assets/commerce-shipment-tracking-auiKGGyV.js +24 -0
  527. package/dist/showcase/assets/commerce-subscription-summary-BCX4WxbS.js +25 -0
  528. package/dist/showcase/assets/commerce-tax-breakdown-D4F5dOjL.js +19 -0
  529. package/dist/showcase/assets/commerce-upcoming-booking-qlWKp0kq.js +20 -0
  530. package/dist/showcase/assets/commerce-voucher-entry-CqCuoKHq.js +19 -0
  531. package/dist/showcase/assets/composite-DeYDU7hg.js +1 -0
  532. package/dist/showcase/assets/conditional-rendering-CFHxzngX.js +1 -0
  533. package/dist/showcase/assets/contact-card-CxVeuwp_.js +65 -0
  534. package/dist/showcase/assets/content-container-CJN01OtO.js +1 -0
  535. package/dist/showcase/assets/copyable-DajG-Sgx.js +1 -0
  536. package/dist/showcase/assets/copyable-zOzqOOBl.js +96 -0
  537. package/dist/showcase/assets/course-card-DO8z-KeM.js +77 -0
  538. package/dist/showcase/assets/cpu-C8IgjvoP.js +1 -0
  539. package/dist/showcase/assets/credit-card-XYEEHtzk.js +1 -0
  540. package/dist/showcase/assets/css-variables-BglvDaVO.js +1223 -0
  541. package/dist/showcase/assets/currency-Bso6kejw.js +148 -0
  542. package/dist/showcase/assets/dark-surfaces-5WTjzxYN.js +90 -0
  543. package/dist/showcase/assets/data-view-B7uRWXOO.js +4 -0
  544. package/dist/showcase/assets/data-view-C4bGuOlY.js +124 -0
  545. package/dist/showcase/assets/database-CZLgFKRy.js +1 -0
  546. package/dist/showcase/assets/date-block-BicWaKPj.js +1 -0
  547. package/dist/showcase/assets/date-block-yRFY8Ne5.js +1 -0
  548. package/dist/showcase/assets/date-picker-CskCoiwf.js +1 -0
  549. package/dist/showcase/assets/date-pickers-fcqdsvef.js +73 -0
  550. package/dist/showcase/assets/dense-info-Dg38xVsF.js +106 -0
  551. package/dist/showcase/assets/design-system-consistency-DFa3RNWm.js +264 -0
  552. package/dist/showcase/assets/dialog-C4fhqXD0.js +1 -0
  553. package/dist/showcase/assets/dialog-CN_gfVV2.js +1 -0
  554. package/dist/showcase/assets/dialog-CoJdLYZ8.js +1 -0
  555. package/dist/showcase/assets/display-utilities-DB0eXAdH.js +4 -0
  556. package/dist/showcase/assets/display-utilities.examples-ez3DfdgN.js +309 -0
  557. package/dist/showcase/assets/dist-5H2NtsLp.js +45 -0
  558. package/dist/showcase/assets/dist-SJMpFlRc.js +1 -0
  559. package/dist/showcase/assets/dollar-sign-LBLhl0Y2.js +1 -0
  560. package/dist/showcase/assets/download-BkOWnQEj.js +1 -0
  561. package/dist/showcase/assets/dropdown-menu-5yqchTEF.js +1 -0
  562. package/dist/showcase/assets/dropzone-CJHqIcHB.js +1 -0
  563. package/dist/showcase/assets/earth-BGrx2u2i.js +1 -0
  564. package/dist/showcase/assets/ellipsis-Dumpj4aE.js +1 -0
  565. package/dist/showcase/assets/ellipsis-vertical-h1O9pibc.js +1 -0
  566. package/dist/showcase/assets/empty-Cc8JP5--.js +1 -0
  567. package/dist/showcase/assets/empty-item-C-v-Akyi.js +49 -0
  568. package/dist/showcase/assets/empty-state-B7BQDoeL.js +1 -0
  569. package/dist/showcase/assets/empty-state-BSvZNFnQ.js +190 -0
  570. package/dist/showcase/assets/enhanced-activities-D7g7ZD9m.js +357 -0
  571. package/dist/showcase/assets/enhanced-combobox-4Olgu--e.js +1 -0
  572. package/dist/showcase/assets/esm-CFFDcW-Z.js +2 -0
  573. package/dist/showcase/assets/event-calendar-vdFWcI49.js +138 -0
  574. package/dist/showcase/assets/event-log-BbHM_3Ko.js +330 -0
  575. package/dist/showcase/assets/example-BsDQngs7.js +1 -0
  576. package/dist/showcase/assets/external-link-BvVwsJxR.js +1 -0
  577. package/dist/showcase/assets/eye-CAeo-GNe.js +1 -0
  578. package/dist/showcase/assets/feature-announcement-7hZGrJd6.js +34 -0
  579. package/dist/showcase/assets/file-D4d3b9bx.js +1 -0
  580. package/dist/showcase/assets/file-text-C59ToXmU.js +1 -0
  581. package/dist/showcase/assets/filter-layout-BjoG6qxP.js +1 -0
  582. package/dist/showcase/assets/filters-CrE_UGbo.js +139 -0
  583. package/dist/showcase/assets/fixtures-ClOCQD2a.js +1 -0
  584. package/dist/showcase/assets/flag-CuF52WEl.js +1 -0
  585. package/dist/showcase/assets/folder-open-BLLtgh4E.js +1 -0
  586. package/dist/showcase/assets/form-field-D5kwgD4P.js +1 -0
  587. package/dist/showcase/assets/form-sizing-Bv0A0Oi0.js +1 -0
  588. package/dist/showcase/assets/format-LvvHefMj.js +1 -0
  589. package/dist/showcase/assets/forms-Ck6hPzLP.js +915 -0
  590. package/dist/showcase/assets/funnel-Bvp5cFZt.js +1 -0
  591. package/dist/showcase/assets/generic-Cownd_Wk.js +1 -0
  592. package/dist/showcase/assets/getPseudoElementBounds-CPnjAO3K.js +1 -0
  593. package/dist/showcase/assets/gift-BCQpmV33.js +1 -0
  594. package/dist/showcase/assets/giftcard-cards-B_78Meny.js +85 -0
  595. package/dist/showcase/assets/git-branch-r0dDGCKy.js +1 -0
  596. package/dist/showcase/assets/global-search-DD9cGOt5.js +1 -0
  597. package/dist/showcase/assets/global-search-fTKzzx8k.js +215 -0
  598. package/dist/showcase/assets/globe-RF5bwiar.js +1 -0
  599. package/dist/showcase/assets/gradient-card-BDJes3UK.js +58 -0
  600. package/dist/showcase/assets/grip-vertical-qqe2NqfZ.js +1 -0
  601. package/dist/showcase/assets/hash-D9_KYvHs.js +1 -0
  602. package/dist/showcase/assets/header-XNCAB6Rs.js +1 -0
  603. package/dist/showcase/assets/header-notifications-BdWsVoN3.js +1 -0
  604. package/dist/showcase/assets/heart-C56rAanb.js +1 -0
  605. package/dist/showcase/assets/hooks-fDydjf6M.js +220 -0
  606. package/dist/showcase/assets/house-DbYM6er_.js +1 -0
  607. package/dist/showcase/assets/icon-badge-DWQE6dAm.js +37 -0
  608. package/dist/showcase/assets/icon-badge-ruuI6tt0.js +1 -0
  609. package/dist/showcase/assets/icon-size-BHn0d6Zp.js +1 -0
  610. package/dist/showcase/assets/image-DCpC2weW.js +1 -0
  611. package/dist/showcase/assets/inbox-cvR2MbZq.js +1 -0
  612. package/dist/showcase/assets/index-B4sKWDcN.js +10 -0
  613. package/dist/showcase/assets/index-Dy3INIq2.css +2 -0
  614. package/dist/showcase/assets/inertValue-DhXA8ytu.js +1 -0
  615. package/dist/showcase/assets/info-DXwnIz56.js +1 -0
  616. package/dist/showcase/assets/inline-stat-C9Syz6in.js +1 -0
  617. package/dist/showcase/assets/inline-stat-CDcWILUM.js +15 -0
  618. package/dist/showcase/assets/input-CLQIEOQ4.js +1 -0
  619. package/dist/showcase/assets/input-D70ed8oB.js +1 -0
  620. package/dist/showcase/assets/input-group-CMJ2yUuD.js +47 -0
  621. package/dist/showcase/assets/input-group-DwZov3Y6.js +1 -0
  622. package/dist/showcase/assets/inputs-DQWbPvC8.js +155 -0
  623. package/dist/showcase/assets/installation-B2BcSkJr.js +134 -0
  624. package/dist/showcase/assets/invoice-header-Ds4A6mLs.js +36 -0
  625. package/dist/showcase/assets/invoice-items-LFYeS0eR.js +36 -0
  626. package/dist/showcase/assets/invoice-mini-BMVm8x43.js +14 -0
  627. package/dist/showcase/assets/invoice-table-BVZ-PtSC.js +30 -0
  628. package/dist/showcase/assets/isSameDay-BYK9pmDX.js +1 -0
  629. package/dist/showcase/assets/isToday-B3-xb910.js +1 -0
  630. package/dist/showcase/assets/italic-CPSVPc63.js +1 -0
  631. package/dist/showcase/assets/item-KsGEgVjl.js +1 -0
  632. package/dist/showcase/assets/item-WOhHNpnr.js +1 -0
  633. package/dist/showcase/assets/item-avTNp1z7.js +140 -0
  634. package/dist/showcase/assets/kanban-DwVW3Lab.js +188 -0
  635. package/dist/showcase/assets/key-round-CNEqnMGG.js +1 -0
  636. package/dist/showcase/assets/label-BZzl85ev.js +1 -0
  637. package/dist/showcase/assets/languages-BWquWXSu.js +1 -0
  638. package/dist/showcase/assets/layers-hYbCFSpT.js +1 -0
  639. package/dist/showcase/assets/layout-app-shell-BRLO7lFp.js +608 -0
  640. package/dist/showcase/assets/layout-auth-ysobcsYs.js +790 -0
  641. package/dist/showcase/assets/layout-containers-BoVYkBOk.js +141 -0
  642. package/dist/showcase/assets/layout-header-BnkgzPgS.js +203 -0
  643. package/dist/showcase/assets/layout-page-CdzQQr2_.js +315 -0
  644. package/dist/showcase/assets/layout-primitives-BXP_nFQX.js +34 -0
  645. package/dist/showcase/assets/layout-sidebar-tPHppANn.js +224 -0
  646. package/dist/showcase/assets/layout-users-DgChX6ig.js +117 -0
  647. package/dist/showcase/assets/layout-workspace-u1kkLDCd.js +191 -0
  648. package/dist/showcase/assets/lib-VG1Lf4Lk.js +1 -0
  649. package/dist/showcase/assets/list-checks-CUXbiTmk.js +1 -0
  650. package/dist/showcase/assets/lock-BwI_fNQW.js +1 -0
  651. package/dist/showcase/assets/lock-keyhole-DKi16lNp.js +1 -0
  652. package/dist/showcase/assets/mail-BlH-8y33.js +1 -0
  653. package/dist/showcase/assets/mail-check-DrNT7RWT.js +1 -0
  654. package/dist/showcase/assets/map-BKztQq4-.js +124 -0
  655. package/dist/showcase/assets/map-pin-BwGJCGY8.js +1 -0
  656. package/dist/showcase/assets/media-library-CUI_IPkM.js +699 -0
  657. package/dist/showcase/assets/mention-inline-suggestions-BIIRKRpU.js +1 -0
  658. package/dist/showcase/assets/mentions-CTkcQNFc.js +138 -0
  659. package/dist/showcase/assets/menus-DilZRggQ.js +171 -0
  660. package/dist/showcase/assets/message-square-Cjuladix.js +1 -0
  661. package/dist/showcase/assets/metadata-list-C6CF85o9.js +1 -0
  662. package/dist/showcase/assets/metadata-list-PqngP9QU.js +286 -0
  663. package/dist/showcase/assets/metric-C5Wrr90_.js +1 -0
  664. package/dist/showcase/assets/metric-bar-CIesI_gw.js +1 -0
  665. package/dist/showcase/assets/metric-grid-FlL7atag.js +1 -0
  666. package/dist/showcase/assets/metric-trend-chip-DxTiaCTB.js +1 -0
  667. package/dist/showcase/assets/metrics-analytics-bar-YabnSIOP.js +44 -0
  668. package/dist/showcase/assets/metrics-analytics-cards-Buas8exV.js +50 -0
  669. package/dist/showcase/assets/metrics-comparison-Jx1WGPZL.js +76 -0
  670. package/dist/showcase/assets/metrics-heatmap-C5cB95P9.js +27 -0
  671. package/dist/showcase/assets/metrics-inline-badge-D7r40gFm.js +17 -0
  672. package/dist/showcase/assets/metrics-kpi-row-CweMAqSm.js +31 -0
  673. package/dist/showcase/assets/metrics-micro-grid-UUa2fUGF.js +42 -0
  674. package/dist/showcase/assets/metrics-overview-eGnNPvwF.js +192 -0
  675. package/dist/showcase/assets/metrics-stat-cards-CEcX0zqZ.js +54 -0
  676. package/dist/showcase/assets/minus-CVVsGq91.js +1 -0
  677. package/dist/showcase/assets/money-display-Chu4t6MY.js +1 -0
  678. package/dist/showcase/assets/money-display-DNs6PXCm.js +3 -0
  679. package/dist/showcase/assets/month-year-picker-B0odiuhf.js +1 -0
  680. package/dist/showcase/assets/navigation-CQwt1f4b.js +90 -0
  681. package/dist/showcase/assets/navigation-KQxXtiL6.js +231 -0
  682. package/dist/showcase/assets/navigation-extras-2uJbGPhJ.js +43 -0
  683. package/dist/showcase/assets/notification-banner-Cx1Qm0ij.js +1 -0
  684. package/dist/showcase/assets/onboarding-checklist-CAHajXzP.js +119 -0
  685. package/dist/showcase/assets/overflow-tab-bar-gNULx5Wr.js +1 -0
  686. package/dist/showcase/assets/overlays-CaSVa-L2.js +159 -0
  687. package/dist/showcase/assets/overlays-zjTanrAP.js +408 -0
  688. package/dist/showcase/assets/overview-EZ_RMkeD.js +184 -0
  689. package/dist/showcase/assets/package-CqQQqj6Y.js +1 -0
  690. package/dist/showcase/assets/package-check-Nqr5Lv95.js +1 -0
  691. package/dist/showcase/assets/page-BTXFFFwT.js +1 -0
  692. package/dist/showcase/assets/page-action-button-NJqE-qP0.js +1 -0
  693. package/dist/showcase/assets/page-header-AFTuoGVw.js +1 -0
  694. package/dist/showcase/assets/pagination-B1Ewc7Co.js +1 -0
  695. package/dist/showcase/assets/pagination-DOdLcTiT.js +42 -0
  696. package/dist/showcase/assets/paperclip-D0oBI19t.js +1 -0
  697. package/dist/showcase/assets/password-input-C5MrNrHm.js +1 -0
  698. package/dist/showcase/assets/pencil-DdCEPDLe.js +1 -0
  699. package/dist/showcase/assets/phone-BdGmQ_eI.js +1 -0
  700. package/dist/showcase/assets/placeholder-pattern-BnyJukU0.js +1 -0
  701. package/dist/showcase/assets/plus-Dp_nZNjk.js +1 -0
  702. package/dist/showcase/assets/popover-BP4R2w67.js +1 -0
  703. package/dist/showcase/assets/popover-DfGXC2pN.js +1 -0
  704. package/dist/showcase/assets/popover-menu-DGkCA4YC.js +1 -0
  705. package/dist/showcase/assets/product-empty-state-CKylTX_h.js +1 -0
  706. package/dist/showcase/assets/product-option-action-menu-vqslODBe.js +1 -0
  707. package/dist/showcase/assets/product-rows-CWy63Dk5.js +1 -0
  708. package/dist/showcase/assets/product-structure-card-EJY038tP.js +1 -0
  709. package/dist/showcase/assets/product-variant-action-menu-CnRJscP3.js +1 -0
  710. package/dist/showcase/assets/products-jpCjHLbZ.js +61 -0
  711. package/dist/showcase/assets/progress-D19PRprP.js +1 -0
  712. package/dist/showcase/assets/progress-UbtWRfF2.js +18 -0
  713. package/dist/showcase/assets/progress-twHfoY8k.js +1 -0
  714. package/dist/showcase/assets/props-table-aynAz90t.js +1 -0
  715. package/dist/showcase/assets/props.generated-IUhT2lh_.json +42950 -0
  716. package/dist/showcase/assets/qr-code-ywR6kVzD.js +1 -0
  717. package/dist/showcase/assets/quote-BFMPQa3L.js +1 -0
  718. package/dist/showcase/assets/receipt-CcTseXcy.js +1 -0
  719. package/dist/showcase/assets/receipt-text-C9BMAbTL.js +1 -0
  720. package/dist/showcase/assets/refinement-guide-lotMKye4.js +189 -0
  721. package/dist/showcase/assets/refresh-cw-DpfoVhbc.js +1 -0
  722. package/dist/showcase/assets/resolveValueLabel-mzTN-8j9.js +1 -0
  723. package/dist/showcase/assets/resource-CwHVDrOk.js +1 -0
  724. package/dist/showcase/assets/resource-kPziVtVy.js +139 -0
  725. package/dist/showcase/assets/resource-selector-card-xIysiHOg.js +43 -0
  726. package/dist/showcase/assets/rich-text-editor-Bi6stpAW.js +124 -0
  727. package/dist/showcase/assets/rich-text-editor-DggGI4Dj.js +143 -0
  728. package/dist/showcase/assets/rotate-ccw-Uau0Jm3_.js +1 -0
  729. package/dist/showcase/assets/route-Dj29lOBc.js +1 -0
  730. package/dist/showcase/assets/save-j-PKUm-B.js +1 -0
  731. package/dist/showcase/assets/schema-form-D4kfmM1o.js +327 -0
  732. package/dist/showcase/assets/scroll-area-CK1S6JpQ.js +1 -0
  733. package/dist/showcase/assets/scroll-area-Di7TDfFD.js +32 -0
  734. package/dist/showcase/assets/section-C_rLy6Zn.js +1 -0
  735. package/dist/showcase/assets/select-BRC14Sd3.js +1 -0
  736. package/dist/showcase/assets/select-J0hPSc5B.js +1 -0
  737. package/dist/showcase/assets/send-BnVbRsaN.js +1 -0
  738. package/dist/showcase/assets/separator-7gHhV7ed.js +1 -0
  739. package/dist/showcase/assets/separator-CjWigMul.js +1 -0
  740. package/dist/showcase/assets/separator-Dpo134G3.js +28 -0
  741. package/dist/showcase/assets/separator-JYQ5rY8E.js +1 -0
  742. package/dist/showcase/assets/settings-2-D06IRW2d.js +1 -0
  743. package/dist/showcase/assets/settings-YDwquOPS.js +1 -0
  744. package/dist/showcase/assets/sheet-O9T8bfRr.js +1 -0
  745. package/dist/showcase/assets/shield-Cebk5nXH.js +1 -0
  746. package/dist/showcase/assets/shield-alert-BldSpQ1t.js +1 -0
  747. package/dist/showcase/assets/shield-check-CNudpzdR.js +1 -0
  748. package/dist/showcase/assets/shopping-bag-BuHsmxnN.js +1 -0
  749. package/dist/showcase/assets/showcase-B1BPgzRP.js +132 -0
  750. package/dist/showcase/assets/sidebar-DPVgEwE0.js +1 -0
  751. package/dist/showcase/assets/sidebar.context-CYk51BQ5.js +1 -0
  752. package/dist/showcase/assets/skeleton-CrB6dGV4.js +29 -0
  753. package/dist/showcase/assets/skeleton-DMWrHdVi.js +1 -0
  754. package/dist/showcase/assets/skeleton-IBZSxxTq.js +1 -0
  755. package/dist/showcase/assets/skeleton-OK5SgmlA.js +1 -0
  756. package/dist/showcase/assets/slider-DMLIlQeO.js +1 -0
  757. package/dist/showcase/assets/smart-card-CwDYx0xj.js +1 -0
  758. package/dist/showcase/assets/sonner-Dpe1Nwfb.js +22 -0
  759. package/dist/showcase/assets/sortable.esm-BSC2lHxr.js +5 -0
  760. package/dist/showcase/assets/sparkles-BDnbTUMq.js +1 -0
  761. package/dist/showcase/assets/spinner-BZ0h-j9y.js +49 -0
  762. package/dist/showcase/assets/spinner-TNaSAQh7.js +30 -0
  763. package/dist/showcase/assets/spinner-k76a4i_M.js +1 -0
  764. package/dist/showcase/assets/square-pen-Cn-sFtCo.js +1 -0
  765. package/dist/showcase/assets/stacked-avatars-Ds8eV_Nx.js +1 -0
  766. package/dist/showcase/assets/star-BzQGhFDT.js +1 -0
  767. package/dist/showcase/assets/startOfDay-BfIUGWW-.js +1 -0
  768. package/dist/showcase/assets/styles-BleHZ-uX.js +1 -0
  769. package/dist/showcase/assets/suggestions-CsrJSY__.js +126 -0
  770. package/dist/showcase/assets/support-rail-C_fc_C1j.js +26 -0
  771. package/dist/showcase/assets/switch-BEfD8lic.js +1 -0
  772. package/dist/showcase/assets/switch-BOlIXIn9.js +1 -0
  773. package/dist/showcase/assets/switch-card-CCJ-MaRI.js +1 -0
  774. package/dist/showcase/assets/sync-vACCm2ND.js +124 -0
  775. package/dist/showcase/assets/table-CeZy8iT0.js +686 -0
  776. package/dist/showcase/assets/table-DPpHEvR_.js +1 -0
  777. package/dist/showcase/assets/table-actions-C9J5piiU.js +1 -0
  778. package/dist/showcase/assets/tabs-Ca6ldTWi.js +1 -0
  779. package/dist/showcase/assets/tabs-DGP5RvNm.js +19 -0
  780. package/dist/showcase/assets/tags-input-BOemEMZS.js +1 -0
  781. package/dist/showcase/assets/text-button-C8qZqcCy.js +1 -0
  782. package/dist/showcase/assets/text-link-BFYPeXTq.js +1 -0
  783. package/dist/showcase/assets/textarea-DcCHHuP-.js +1 -0
  784. package/dist/showcase/assets/textarea-RUqV9hNm.js +1 -0
  785. package/dist/showcase/assets/throttle-alert-Sf7FjTvh.js +1 -0
  786. package/dist/showcase/assets/timelines-nQ8shLIn.js +200 -0
  787. package/dist/showcase/assets/toggle-group-k5nqOfUW.js +1 -0
  788. package/dist/showcase/assets/toggles-E80ufOk5.js +71 -0
  789. package/dist/showcase/assets/toggles-group-vaJ63gg9.js +32 -0
  790. package/dist/showcase/assets/tooltip-DIvBe7hb.js +31 -0
  791. package/dist/showcase/assets/trash-2-C-6T17-B.js +1 -0
  792. package/dist/showcase/assets/trending-up-DRyRbFnA.js +1 -0
  793. package/dist/showcase/assets/truck-BE6OFjJs.js +1 -0
  794. package/dist/showcase/assets/typography-i6Zhj3TO.js +223 -0
  795. package/dist/showcase/assets/ui-badge-MBQsz2Mn.js +28 -0
  796. package/dist/showcase/assets/ui-card-jaEeRDe5.js +30 -0
  797. package/dist/showcase/assets/ui-table-CbmOEWVu.js +42 -0
  798. package/dist/showcase/assets/upload-tray-D4aE56cX.js +138 -0
  799. package/dist/showcase/assets/use-layout-link-DpqFiDf-.js +1 -0
  800. package/dist/showcase/assets/useAriaLabelledBy-DSKQpAlQ.js +1 -0
  801. package/dist/showcase/assets/useCollapsiblePanel-DL6IpVQS.js +1 -0
  802. package/dist/showcase/assets/useCompositeItem-jckozrpu.js +1 -0
  803. package/dist/showcase/assets/useCompositeListItem-Ce0eZtsp.js +1 -0
  804. package/dist/showcase/assets/useLabelableId-Bs8clfkJ.js +1 -0
  805. package/dist/showcase/assets/useOpenInteractionType-KBhpVaur.js +1 -0
  806. package/dist/showcase/assets/useRender-Bn5cjIfs.js +1 -0
  807. package/dist/showcase/assets/useTriggerFocusGuards-D5Cl055z.js +1 -0
  808. package/dist/showcase/assets/useValueChanged-B-czUWmg.js +1 -0
  809. package/dist/showcase/assets/user-C7ORJkSr.js +1 -0
  810. package/dist/showcase/assets/user-plus-O410ITvy.js +1 -0
  811. package/dist/showcase/assets/users-BlcUaVEY.js +1 -0
  812. package/dist/showcase/assets/variant-details-BJ0OtpeL.js +50 -0
  813. package/dist/showcase/assets/variant-management-pTZ83MM_.js +209 -0
  814. package/dist/showcase/assets/vendor-profile-F2EP-AGx.js +37 -0
  815. package/dist/showcase/assets/video-fYZEPex_.js +1 -0
  816. package/dist/showcase/assets/visually-hidden-C1KAHG63.js +1 -0
  817. package/dist/showcase/assets/weight-input-_wl5mPGA.js +1 -0
  818. package/dist/showcase/assets/wrench-BzqNpztP.js +1 -0
  819. package/dist/showcase/assets/x-C5_SzMQM.js +1 -0
  820. package/dist/showcase/assets/zap-DdInHaAD.js +1 -0
  821. package/dist/showcase/index.html +2 -2
  822. package/dist/style.css +1 -1
  823. package/package.json +1 -1
  824. package/src/css/tokens/components.css +17 -2
  825. package/src/css/tokens/foundation.css +4 -2
  826. package/dist/_shared/accordion-8B4OFqiT.cjs +0 -2
  827. package/dist/_shared/accordion-8B4OFqiT.cjs.map +0 -1
  828. package/dist/_shared/accordion-DlpTSZ3p.js +0 -135
  829. package/dist/_shared/accordion-DlpTSZ3p.js.map +0 -1
  830. package/dist/_shared/action-menu-BYrYdpkR.cjs +0 -2
  831. package/dist/_shared/action-menu-BYrYdpkR.cjs.map +0 -1
  832. package/dist/_shared/action-menu-CYwMZX-b.js +0 -96
  833. package/dist/_shared/action-menu-CYwMZX-b.js.map +0 -1
  834. package/dist/_shared/ai-artifact-Cv8VBibf.cjs +0 -3
  835. package/dist/_shared/ai-artifact-Cv8VBibf.cjs.map +0 -1
  836. package/dist/_shared/ai-artifact-DwfXQuh4.js +0 -1099
  837. package/dist/_shared/ai-artifact-DwfXQuh4.js.map +0 -1
  838. package/dist/_shared/auth-Cz5ci18c.cjs +0 -2
  839. package/dist/_shared/auth-Cz5ci18c.cjs.map +0 -1
  840. package/dist/_shared/auth-DDWsgFUL.js +0 -643
  841. package/dist/_shared/auth-DDWsgFUL.js.map +0 -1
  842. package/dist/_shared/badge-C65rt1M9.cjs +0 -2
  843. package/dist/_shared/badge-C65rt1M9.cjs.map +0 -1
  844. package/dist/_shared/badge-r8ae66Vd.js +0 -110
  845. package/dist/_shared/badge-r8ae66Vd.js.map +0 -1
  846. package/dist/_shared/breadcrumbs-CuT0YIfo.js +0 -105
  847. package/dist/_shared/breadcrumbs-CuT0YIfo.js.map +0 -1
  848. package/dist/_shared/breadcrumbs-jNzlYqS9.cjs +0 -2
  849. package/dist/_shared/breadcrumbs-jNzlYqS9.cjs.map +0 -1
  850. package/dist/_shared/button-Be2ayMxF.js +0 -192
  851. package/dist/_shared/button-Be2ayMxF.js.map +0 -1
  852. package/dist/_shared/button-CfQtOuBK.cjs +0 -2
  853. package/dist/_shared/button-CfQtOuBK.cjs.map +0 -1
  854. package/dist/_shared/buttons-DABiSx6N.cjs +0 -2
  855. package/dist/_shared/buttons-DABiSx6N.cjs.map +0 -1
  856. package/dist/_shared/buttons-DYQqQPpk.js +0 -137
  857. package/dist/_shared/buttons-DYQqQPpk.js.map +0 -1
  858. package/dist/_shared/card-radio-group-DKhZhBFV.cjs +0 -2
  859. package/dist/_shared/card-radio-group-DKhZhBFV.cjs.map +0 -1
  860. package/dist/_shared/card-radio-group-DRjmLN5s.js +0 -150
  861. package/dist/_shared/card-radio-group-DRjmLN5s.js.map +0 -1
  862. package/dist/_shared/cards-BJctT9KD.js +0 -428
  863. package/dist/_shared/cards-BJctT9KD.js.map +0 -1
  864. package/dist/_shared/cards-m03XN10f.cjs +0 -2
  865. package/dist/_shared/cards-m03XN10f.cjs.map +0 -1
  866. package/dist/_shared/combobox-BdBpeD3C.cjs +0 -2
  867. package/dist/_shared/combobox-BdBpeD3C.cjs.map +0 -1
  868. package/dist/_shared/combobox-D9tU_83-.js +0 -954
  869. package/dist/_shared/combobox-D9tU_83-.js.map +0 -1
  870. package/dist/_shared/command-BbJB0pjP.cjs +0 -2
  871. package/dist/_shared/command-BbJB0pjP.cjs.map +0 -1
  872. package/dist/_shared/command-IP2wy_HN.js +0 -39
  873. package/dist/_shared/command-IP2wy_HN.js.map +0 -1
  874. package/dist/_shared/comments-DAzpeuQq.cjs +0 -2
  875. package/dist/_shared/comments-DAzpeuQq.cjs.map +0 -1
  876. package/dist/_shared/comments-DzZaKP9x.js +0 -952
  877. package/dist/_shared/comments-DzZaKP9x.js.map +0 -1
  878. package/dist/_shared/containers-CB7zaAvN.cjs +0 -2
  879. package/dist/_shared/containers-CB7zaAvN.cjs.map +0 -1
  880. package/dist/_shared/containers-CLBmhGfs.js +0 -48
  881. package/dist/_shared/containers-CLBmhGfs.js.map +0 -1
  882. package/dist/_shared/copyable-BJYx2SlN.js +0 -38
  883. package/dist/_shared/copyable-BJYx2SlN.js.map +0 -1
  884. package/dist/_shared/copyable-DiDEjp8Z.cjs +0 -2
  885. package/dist/_shared/copyable-DiDEjp8Z.cjs.map +0 -1
  886. package/dist/_shared/data-display-DQUUEzCx.cjs +0 -2
  887. package/dist/_shared/data-display-DQUUEzCx.cjs.map +0 -1
  888. package/dist/_shared/data-display-LlvMEFTK.js +0 -1878
  889. package/dist/_shared/data-display-LlvMEFTK.js.map +0 -1
  890. package/dist/_shared/date-picker-CrC-lHyF.cjs +0 -2
  891. package/dist/_shared/date-picker-CrC-lHyF.cjs.map +0 -1
  892. package/dist/_shared/date-picker-DbYBek-b.js +0 -1361
  893. package/dist/_shared/date-picker-DbYBek-b.js.map +0 -1
  894. package/dist/_shared/date-pickers-9AU8YQK2.js +0 -329
  895. package/dist/_shared/date-pickers-9AU8YQK2.js.map +0 -1
  896. package/dist/_shared/date-pickers-DUEwCWig.cjs +0 -2
  897. package/dist/_shared/date-pickers-DUEwCWig.cjs.map +0 -1
  898. package/dist/_shared/display-BqoPOdof.cjs +0 -2
  899. package/dist/_shared/display-BqoPOdof.cjs.map +0 -1
  900. package/dist/_shared/display-CQoSwU74.js +0 -986
  901. package/dist/_shared/display-CQoSwU74.js.map +0 -1
  902. package/dist/_shared/dropdown-menu-CHQzQWUK.cjs +0 -2
  903. package/dist/_shared/dropdown-menu-CHQzQWUK.cjs.map +0 -1
  904. package/dist/_shared/dropdown-menu-CoWmrjYX.js +0 -147
  905. package/dist/_shared/dropdown-menu-CoWmrjYX.js.map +0 -1
  906. package/dist/_shared/form-sizing-DJus3nK3.cjs +0 -2
  907. package/dist/_shared/form-sizing-DJus3nK3.cjs.map +0 -1
  908. package/dist/_shared/form-sizing-DWjJsQSR.js +0 -42
  909. package/dist/_shared/form-sizing-DWjJsQSR.js.map +0 -1
  910. package/dist/_shared/forms-CNh-S9FK.cjs +0 -2
  911. package/dist/_shared/forms-CNh-S9FK.cjs.map +0 -1
  912. package/dist/_shared/forms-DIz3SCA9.js +0 -3534
  913. package/dist/_shared/forms-DIz3SCA9.js.map +0 -1
  914. package/dist/_shared/header-Bs61tQla.js +0 -447
  915. package/dist/_shared/header-Bs61tQla.js.map +0 -1
  916. package/dist/_shared/header-D01oOxna.cjs +0 -2
  917. package/dist/_shared/header-D01oOxna.cjs.map +0 -1
  918. package/dist/_shared/hooks-ACnpaIli.js +0 -95
  919. package/dist/_shared/hooks-ACnpaIli.js.map +0 -1
  920. package/dist/_shared/hooks-B7khuHkk.cjs +0 -2
  921. package/dist/_shared/hooks-B7khuHkk.cjs.map +0 -1
  922. package/dist/_shared/input-CzJzVyQ0.js +0 -182
  923. package/dist/_shared/input-CzJzVyQ0.js.map +0 -1
  924. package/dist/_shared/input-Dvvmn96E.cjs +0 -2
  925. package/dist/_shared/input-Dvvmn96E.cjs.map +0 -1
  926. package/dist/_shared/item-CVjjpHQd.js +0 -226
  927. package/dist/_shared/item-CVjjpHQd.js.map +0 -1
  928. package/dist/_shared/item-ChHblHhR.cjs +0 -2
  929. package/dist/_shared/item-ChHblHhR.cjs.map +0 -1
  930. package/dist/_shared/layout-CGi5w1mo.js +0 -268
  931. package/dist/_shared/layout-CGi5w1mo.js.map +0 -1
  932. package/dist/_shared/layout-ccVwjUG8.cjs +0 -2
  933. package/dist/_shared/layout-ccVwjUG8.cjs.map +0 -1
  934. package/dist/_shared/mentions-Cg_4vFxd.cjs +0 -2
  935. package/dist/_shared/mentions-Cg_4vFxd.cjs.map +0 -1
  936. package/dist/_shared/mentions-Ci9RFTfw.js +0 -506
  937. package/dist/_shared/mentions-Ci9RFTfw.js.map +0 -1
  938. package/dist/_shared/money-display-BFk9Gu21.cjs +0 -2
  939. package/dist/_shared/money-display-BFk9Gu21.cjs.map +0 -1
  940. package/dist/_shared/money-display-DpuLnsK2.js +0 -198
  941. package/dist/_shared/money-display-DpuLnsK2.js.map +0 -1
  942. package/dist/_shared/navigation-C1QN2-Vq.cjs +0 -2
  943. package/dist/_shared/navigation-C1QN2-Vq.cjs.map +0 -1
  944. package/dist/_shared/navigation-CMrLO8v5.js +0 -436
  945. package/dist/_shared/navigation-CMrLO8v5.js.map +0 -1
  946. package/dist/_shared/overlays-BJLczwpz.js +0 -735
  947. package/dist/_shared/overlays-BJLczwpz.js.map +0 -1
  948. package/dist/_shared/overlays-DbaPLT67.cjs +0 -2
  949. package/dist/_shared/overlays-DbaPLT67.cjs.map +0 -1
  950. package/dist/_shared/popover-menu-D_t6rCvN.cjs +0 -2
  951. package/dist/_shared/popover-menu-D_t6rCvN.cjs.map +0 -1
  952. package/dist/_shared/popover-menu-f2O6R_27.js +0 -93
  953. package/dist/_shared/popover-menu-f2O6R_27.js.map +0 -1
  954. package/dist/_shared/rich-text-editor-DmZHbsms.js +0 -620
  955. package/dist/_shared/rich-text-editor-DmZHbsms.js.map +0 -1
  956. package/dist/_shared/rich-text-editor-DqUU-H7i.cjs +0 -2
  957. package/dist/_shared/rich-text-editor-DqUU-H7i.cjs.map +0 -1
  958. package/dist/_shared/settings-CgtcSI8L.js +0 -143
  959. package/dist/_shared/settings-CgtcSI8L.js.map +0 -1
  960. package/dist/_shared/settings-csNmeT7b.cjs +0 -2
  961. package/dist/_shared/settings-csNmeT7b.cjs.map +0 -1
  962. package/dist/_shared/sidebar-DyGIcJd9.cjs +0 -2
  963. package/dist/_shared/sidebar-DyGIcJd9.cjs.map +0 -1
  964. package/dist/_shared/sidebar-OT-xIguQ.js +0 -548
  965. package/dist/_shared/sidebar-OT-xIguQ.js.map +0 -1
  966. package/dist/_shared/skeleton-DwF5VdMh.cjs +0 -2
  967. package/dist/_shared/skeleton-DwF5VdMh.cjs.map +0 -1
  968. package/dist/_shared/skeleton-yUXqeWzB.js +0 -256
  969. package/dist/_shared/skeleton-yUXqeWzB.js.map +0 -1
  970. package/dist/_shared/spinner-BDrUzfTo.cjs +0 -2
  971. package/dist/_shared/spinner-BDrUzfTo.cjs.map +0 -1
  972. package/dist/_shared/spinner-CuVZhJhN.js +0 -67
  973. package/dist/_shared/spinner-CuVZhJhN.js.map +0 -1
  974. package/dist/_shared/table-BVWemr79.cjs +0 -2
  975. package/dist/_shared/table-BVWemr79.cjs.map +0 -1
  976. package/dist/_shared/table-WYSjfQRr.js +0 -1377
  977. package/dist/_shared/table-WYSjfQRr.js.map +0 -1
  978. package/dist/_shared/textarea-C0iZwWdD.js +0 -118
  979. package/dist/_shared/textarea-C0iZwWdD.js.map +0 -1
  980. package/dist/_shared/textarea-bHFAtwYd.cjs +0 -2
  981. package/dist/_shared/textarea-bHFAtwYd.cjs.map +0 -1
  982. package/dist/_shared/typography-5bLhAYaK.js +0 -201
  983. package/dist/_shared/typography-5bLhAYaK.js.map +0 -1
  984. package/dist/_shared/typography-CWEobAJV.cjs +0 -2
  985. package/dist/_shared/typography-CWEobAJV.cjs.map +0 -1
  986. package/dist/_shared/workspace-BkwsqTrc.cjs +0 -2
  987. package/dist/_shared/workspace-BkwsqTrc.cjs.map +0 -1
  988. package/dist/_shared/workspace-DpU1YG1t.js +0 -357
  989. package/dist/_shared/workspace-DpU1YG1t.js.map +0 -1
  990. package/dist/showcase/assets/AreaChart-DxDBymDt.js +0 -6
  991. package/dist/showcase/assets/CompositeItem-owAA4Ah3.js +0 -1
  992. package/dist/showcase/assets/CompositeRoot-DzHTtLBs.js +0 -1
  993. package/dist/showcase/assets/DialogTrigger-OUBMI353.js +0 -1
  994. package/dist/showcase/assets/LabelableContext-Cd9Gf7TR.js +0 -1
  995. package/dist/showcase/assets/PreviewLayout-X_NxjYOV.js +0 -1
  996. package/dist/showcase/assets/RadioGroup-BzveyiIV.js +0 -1
  997. package/dist/showcase/assets/ScrollAreaCorner-IZFF348L.js +0 -1
  998. package/dist/showcase/assets/Separator-CSYYEo-X.js +0 -1
  999. package/dist/showcase/assets/ToolbarRootContext-BYSKM0e8.js +0 -1
  1000. package/dist/showcase/assets/accordion-B9VkLXiy.js +0 -171
  1001. package/dist/showcase/assets/accordion-variants-g7lk5hEX.js +0 -1
  1002. package/dist/showcase/assets/action-menu-CWIvuiLO.js +0 -1
  1003. package/dist/showcase/assets/actions-BuwzXYEF.js +0 -310
  1004. package/dist/showcase/assets/activities-BTBlr1G4.js +0 -500
  1005. package/dist/showcase/assets/activities-feed-card-C5lcwUFk.js +0 -1
  1006. package/dist/showcase/assets/admin-kbK6nUjx.js +0 -140
  1007. package/dist/showcase/assets/ai-CKu9EGmA.js +0 -207
  1008. package/dist/showcase/assets/ai-artifact-Bg1MFGeF.js +0 -2
  1009. package/dist/showcase/assets/ai-chat-DEntRhJD.js +0 -568
  1010. package/dist/showcase/assets/ai-elements-DyKRCWiS.js +0 -387
  1011. package/dist/showcase/assets/ai-tool-call-DFrTelEX.js +0 -1
  1012. package/dist/showcase/assets/alert-C0wSpBYn.js +0 -93
  1013. package/dist/showcase/assets/alert-CZ4rgwPr.js +0 -62
  1014. package/dist/showcase/assets/alert-WTKIdE4s.js +0 -1
  1015. package/dist/showcase/assets/api-key-list-BnrUT9Uf.js +0 -1
  1016. package/dist/showcase/assets/api-key-list-bQ6QzFhA.js +0 -73
  1017. package/dist/showcase/assets/app-sidebar-B3veRbac.js +0 -1
  1018. package/dist/showcase/assets/arrow-down-CEXJx115.js +0 -1
  1019. package/dist/showcase/assets/arrow-left-Ca6ri5q0.js +0 -1
  1020. package/dist/showcase/assets/arrow-right-a3STqWgx.js +0 -1
  1021. package/dist/showcase/assets/arrow-up-CCU1MaGq.js +0 -1
  1022. package/dist/showcase/assets/arrow-up-right-BDImqvM2.js +0 -1
  1023. package/dist/showcase/assets/avatar-Bwgai0SK.js +0 -67
  1024. package/dist/showcase/assets/avatar-DSmL52Us.js +0 -57
  1025. package/dist/showcase/assets/avatar-kK9n1a25.js +0 -1
  1026. package/dist/showcase/assets/avatar-nb7MgV_x.js +0 -1
  1027. package/dist/showcase/assets/badge-CTGPRSXm.js +0 -31
  1028. package/dist/showcase/assets/badge-check-zqoYYrVj.js +0 -1
  1029. package/dist/showcase/assets/bell-D7HWGStL.js +0 -1
  1030. package/dist/showcase/assets/boolean-indicator-CqwlV0cf.js +0 -1
  1031. package/dist/showcase/assets/bot-Owx4SMiU.js +0 -1
  1032. package/dist/showcase/assets/box-BeeoLlMd.js +0 -1
  1033. package/dist/showcase/assets/braces-fzrExVIx.js +0 -1
  1034. package/dist/showcase/assets/brain-Da2fsBjd.js +0 -1
  1035. package/dist/showcase/assets/brand-Bo6uwdGf.js +0 -36
  1036. package/dist/showcase/assets/breadcrumb-B-K-6dtd.js +0 -1
  1037. package/dist/showcase/assets/breadcrumb-B6lR9Cq2.js +0 -52
  1038. package/dist/showcase/assets/breadcrumbs-Bamog6P5.js +0 -1
  1039. package/dist/showcase/assets/briefcase-DQjbh28E.js +0 -1
  1040. package/dist/showcase/assets/building-2-DaQW5yJa.js +0 -1
  1041. package/dist/showcase/assets/button-D3skvyQS.js +0 -44
  1042. package/dist/showcase/assets/button-group-BYtbrhme.js +0 -1
  1043. package/dist/showcase/assets/buttons-B3IkMmNQ.js +0 -272
  1044. package/dist/showcase/assets/calendar-C4fCDK3O.js +0 -1
  1045. package/dist/showcase/assets/calendar-CcwkVxCK.js +0 -16
  1046. package/dist/showcase/assets/calendar-DBkwxV9H.js +0 -1
  1047. package/dist/showcase/assets/calendar-days-BWed1W3Z.js +0 -1
  1048. package/dist/showcase/assets/camera-BUoAyoZT.js +0 -1
  1049. package/dist/showcase/assets/card-7DBPqWuv.js +0 -1
  1050. package/dist/showcase/assets/card-ClwyNDHJ.js +0 -188
  1051. package/dist/showcase/assets/card-primitives-BE1YpEQW.js +0 -1
  1052. package/dist/showcase/assets/card-radio-group-1NMbocuG.js +0 -1
  1053. package/dist/showcase/assets/cards-Bu8uaGSU.js +0 -354
  1054. package/dist/showcase/assets/carousel-dTTRRSQg.js +0 -449
  1055. package/dist/showcase/assets/cell-renderers-CcyBuUsC.js +0 -1
  1056. package/dist/showcase/assets/chart-BSboeIO6.js +0 -358
  1057. package/dist/showcase/assets/chart-column-CCzA6B9l.js +0 -1
  1058. package/dist/showcase/assets/checkbox-CSdEPNT5.js +0 -1
  1059. package/dist/showcase/assets/checkbox-CqNLi9Q3.js +0 -1
  1060. package/dist/showcase/assets/chevron-down-C91gNQdT.js +0 -1
  1061. package/dist/showcase/assets/chevron-left-SiAoYFSo.js +0 -1
  1062. package/dist/showcase/assets/chevron-up-Beb1_ET_.js +0 -1
  1063. package/dist/showcase/assets/chevrons-up-down-DaST4VKL.js +0 -1
  1064. package/dist/showcase/assets/circle-D9KiRp8C.js +0 -1
  1065. package/dist/showcase/assets/circle-alert-BQkAwFkl.js +0 -1
  1066. package/dist/showcase/assets/circle-check-big-CN5YOJqq.js +0 -1
  1067. package/dist/showcase/assets/circle-check-dqmKTiDe.js +0 -1
  1068. package/dist/showcase/assets/circle-dot-B7LPN_0V.js +0 -1
  1069. package/dist/showcase/assets/circle-question-mark-yTRkQO3d.js +0 -1
  1070. package/dist/showcase/assets/circle-x-CW2dFcX-.js +0 -1
  1071. package/dist/showcase/assets/clock-3-CXJ_JotW.js +0 -1
  1072. package/dist/showcase/assets/clock-DUqvfazQ.js +0 -1
  1073. package/dist/showcase/assets/code-xml-BmdQDeID.js +0 -1
  1074. package/dist/showcase/assets/collapsible-C-WYhJxn.js +0 -1
  1075. package/dist/showcase/assets/collapsible-CL37AlCX.js +0 -27
  1076. package/dist/showcase/assets/collapsible-uGO5Rj8q.js +0 -1
  1077. package/dist/showcase/assets/combobox-CFh5kUzj.js +0 -685
  1078. package/dist/showcase/assets/command-CtpLaHjh.js +0 -1
  1079. package/dist/showcase/assets/command-DSlK-QAE.js +0 -1
  1080. package/dist/showcase/assets/comment-composer-Rr_a5tZQ.js +0 -1
  1081. package/dist/showcase/assets/comment-item-Dme2o2KI.js +0 -1
  1082. package/dist/showcase/assets/comments-CW2nz465.js +0 -357
  1083. package/dist/showcase/assets/commerce-bwcq6oPn.js +0 -267
  1084. package/dist/showcase/assets/composite-DMIR0vmP.js +0 -1
  1085. package/dist/showcase/assets/conditional-rendering-Bk6AC76c.js +0 -1
  1086. package/dist/showcase/assets/contact-card-BCXS9tWq.js +0 -65
  1087. package/dist/showcase/assets/content-container-b1dC2caJ.js +0 -1
  1088. package/dist/showcase/assets/copyable-BIABx-Vv.js +0 -96
  1089. package/dist/showcase/assets/copyable-Ic9wzVaj.js +0 -1
  1090. package/dist/showcase/assets/course-card-Bo5P3TYv.js +0 -77
  1091. package/dist/showcase/assets/cpu-_VqU6yRO.js +0 -1
  1092. package/dist/showcase/assets/credit-card-BbxO8xLo.js +0 -1
  1093. package/dist/showcase/assets/css-variables-zqpBgnS1.js +0 -1205
  1094. package/dist/showcase/assets/currency-Cjvt4F0b.js +0 -149
  1095. package/dist/showcase/assets/dark-surfaces-CLwERt1f.js +0 -90
  1096. package/dist/showcase/assets/data-view-AtyUp7b-.js +0 -124
  1097. package/dist/showcase/assets/data-view-cnEmgP1C.js +0 -4
  1098. package/dist/showcase/assets/database-TbVXEw7v.js +0 -1
  1099. package/dist/showcase/assets/date-block-CDHemKnP.js +0 -1
  1100. package/dist/showcase/assets/date-block-COb89Y_-.js +0 -1
  1101. package/dist/showcase/assets/date-picker-CK8llBIN.js +0 -1
  1102. package/dist/showcase/assets/date-pickers-DFfDnW9w.js +0 -73
  1103. package/dist/showcase/assets/dense-info-CaFVDE90.js +0 -106
  1104. package/dist/showcase/assets/design-system-consistency-CeSMuTuu.js +0 -264
  1105. package/dist/showcase/assets/dialog-CRQNEK2K.js +0 -1
  1106. package/dist/showcase/assets/dialog-CsCLDb0G.js +0 -1
  1107. package/dist/showcase/assets/dialog-Qh3EHEKq.js +0 -1
  1108. package/dist/showcase/assets/display-utilities-rP3hb4FK.js +0 -4
  1109. package/dist/showcase/assets/display-utilities.examples-BwbvHOcx.js +0 -309
  1110. package/dist/showcase/assets/dist-CbqRct9s.js +0 -1
  1111. package/dist/showcase/assets/dist-iivamCjp.js +0 -45
  1112. package/dist/showcase/assets/dollar-sign-COaRmdJE.js +0 -1
  1113. package/dist/showcase/assets/download-yCcb4rfH.js +0 -1
  1114. package/dist/showcase/assets/dropdown-menu-KoFNw-fX.js +0 -1
  1115. package/dist/showcase/assets/dropzone-DLguWnmu.js +0 -1
  1116. package/dist/showcase/assets/earth-TDRqTA4S.js +0 -1
  1117. package/dist/showcase/assets/ellipsis-Q_fBbRE9.js +0 -1
  1118. package/dist/showcase/assets/ellipsis-vertical-Bh8t3Z1g.js +0 -1
  1119. package/dist/showcase/assets/empty-DvmDTSAj.js +0 -1
  1120. package/dist/showcase/assets/empty-item-C3HP5nuw.js +0 -49
  1121. package/dist/showcase/assets/empty-state-Dcin4cOt.js +0 -190
  1122. package/dist/showcase/assets/empty-state-IV_GTNEI.js +0 -1
  1123. package/dist/showcase/assets/enhanced-activities-BLf2gpes.js +0 -357
  1124. package/dist/showcase/assets/enhanced-combobox-ClZcVnhv.js +0 -1
  1125. package/dist/showcase/assets/esm-Cf6QQstQ.js +0 -2
  1126. package/dist/showcase/assets/event-calendar-zrfI_3AM.js +0 -138
  1127. package/dist/showcase/assets/event-log-D-_CViAw.js +0 -330
  1128. package/dist/showcase/assets/example-6bZGEb3-.js +0 -1
  1129. package/dist/showcase/assets/external-link-7ldgjHZM.js +0 -1
  1130. package/dist/showcase/assets/eye-pXVkim6z.js +0 -1
  1131. package/dist/showcase/assets/feature-announcement-CFcGj3ge.js +0 -34
  1132. package/dist/showcase/assets/file-Bn9sAGaT.js +0 -1
  1133. package/dist/showcase/assets/file-text-Cvxg6pjh.js +0 -1
  1134. package/dist/showcase/assets/filter-layout-DqNRRzDU.js +0 -1
  1135. package/dist/showcase/assets/filters-CQMI_T63.js +0 -139
  1136. package/dist/showcase/assets/flag-vI_WJ-BU.js +0 -1
  1137. package/dist/showcase/assets/folder-open-0AyKSRQS.js +0 -1
  1138. package/dist/showcase/assets/form-field-BaBeXn7a.js +0 -1
  1139. package/dist/showcase/assets/form-sizing-Dltt6Fj-.js +0 -1
  1140. package/dist/showcase/assets/format-DLLMyN-3.js +0 -1
  1141. package/dist/showcase/assets/forms-gPD-Caru.js +0 -915
  1142. package/dist/showcase/assets/funnel-Ca9nWMHm.js +0 -1
  1143. package/dist/showcase/assets/generic-AAssz0h7.js +0 -1
  1144. package/dist/showcase/assets/getPseudoElementBounds-fbxSMOsb.js +0 -1
  1145. package/dist/showcase/assets/gift-BC42Oxfz.js +0 -1
  1146. package/dist/showcase/assets/giftcard-cards-CFKnYe0c.js +0 -85
  1147. package/dist/showcase/assets/git-branch-B-nF8w-J.js +0 -1
  1148. package/dist/showcase/assets/global-search-D6Gxw0G3.js +0 -1
  1149. package/dist/showcase/assets/global-search-jsb_4idg.js +0 -215
  1150. package/dist/showcase/assets/globe-C92uBSrO.js +0 -1
  1151. package/dist/showcase/assets/gradient-card-D4ly60sD.js +0 -58
  1152. package/dist/showcase/assets/hash-BShTbxlR.js +0 -1
  1153. package/dist/showcase/assets/header-CSiNqg9Q.js +0 -1
  1154. package/dist/showcase/assets/header-notifications-CpHeFPQF.js +0 -1
  1155. package/dist/showcase/assets/heart-B3hXs7fr.js +0 -1
  1156. package/dist/showcase/assets/hooks-CamAqFFh.js +0 -220
  1157. package/dist/showcase/assets/house-4_CouE-Y.js +0 -1
  1158. package/dist/showcase/assets/icon-badge-CePIZqWR.js +0 -1
  1159. package/dist/showcase/assets/icon-badge-DSbvvnxh.js +0 -37
  1160. package/dist/showcase/assets/image-BxbFIbVJ.js +0 -1
  1161. package/dist/showcase/assets/inbox-BXab1SM6.js +0 -1
  1162. package/dist/showcase/assets/index-BPUtPJjB.css +0 -2
  1163. package/dist/showcase/assets/index-BjjNfnhP.js +0 -10
  1164. package/dist/showcase/assets/inertValue-CZOzgsmF.js +0 -1
  1165. package/dist/showcase/assets/info-DzqwCq93.js +0 -1
  1166. package/dist/showcase/assets/inline-stat-D5ybpUh-.js +0 -15
  1167. package/dist/showcase/assets/inline-stat-Dq34wv-6.js +0 -1
  1168. package/dist/showcase/assets/input-C8OfUHCK.js +0 -1
  1169. package/dist/showcase/assets/input-D34Ge3rh.js +0 -1
  1170. package/dist/showcase/assets/input-group-BCPZ6Pwq.js +0 -1
  1171. package/dist/showcase/assets/input-group-CySTANka.js +0 -47
  1172. package/dist/showcase/assets/inputs-CnmHo_lj.js +0 -155
  1173. package/dist/showcase/assets/installation-BPvseS46.js +0 -134
  1174. package/dist/showcase/assets/invoice-header-C9JjJWQX.js +0 -36
  1175. package/dist/showcase/assets/invoice-items-DB8tbCv9.js +0 -36
  1176. package/dist/showcase/assets/invoice-mini-Q_PnimKL.js +0 -14
  1177. package/dist/showcase/assets/invoice-table-CLDvpLib.js +0 -30
  1178. package/dist/showcase/assets/isSameDay-D8bDebyL.js +0 -1
  1179. package/dist/showcase/assets/isToday-XVjRuMtp.js +0 -1
  1180. package/dist/showcase/assets/italic-Cm13b8qb.js +0 -1
  1181. package/dist/showcase/assets/item-C07859JQ.js +0 -1
  1182. package/dist/showcase/assets/item-LinnMxvu.js +0 -1
  1183. package/dist/showcase/assets/item-i7ZUMs5t.js +0 -140
  1184. package/dist/showcase/assets/kanban-CIMTpuN5.js +0 -188
  1185. package/dist/showcase/assets/key-round-Bh7EzOyR.js +0 -1
  1186. package/dist/showcase/assets/label-C3A4CjeG.js +0 -1
  1187. package/dist/showcase/assets/languages-C37jhetw.js +0 -1
  1188. package/dist/showcase/assets/layers-Lyr6p-Nt.js +0 -1
  1189. package/dist/showcase/assets/layout-app-shell-BWAkl9gq.js +0 -608
  1190. package/dist/showcase/assets/layout-auth-y1alnhc8.js +0 -790
  1191. package/dist/showcase/assets/layout-containers-B6c-uvil.js +0 -101
  1192. package/dist/showcase/assets/layout-header-DNhJHWNw.js +0 -203
  1193. package/dist/showcase/assets/layout-page-CXU7CnQK.js +0 -315
  1194. package/dist/showcase/assets/layout-primitives-StuFwfwh.js +0 -34
  1195. package/dist/showcase/assets/layout-sidebar-D-QjnZPh.js +0 -224
  1196. package/dist/showcase/assets/layout-users-D7KMzs3-.js +0 -117
  1197. package/dist/showcase/assets/layout-workspace-Butr7CL5.js +0 -191
  1198. package/dist/showcase/assets/lib-D5nOMXIt.js +0 -1
  1199. package/dist/showcase/assets/list-checks-Cg9HZf4W.js +0 -1
  1200. package/dist/showcase/assets/lock-Da21HhQx.js +0 -1
  1201. package/dist/showcase/assets/lock-keyhole-DNTfa9e3.js +0 -1
  1202. package/dist/showcase/assets/mail-Bamky-ti.js +0 -1
  1203. package/dist/showcase/assets/mail-check-BfVYPC42.js +0 -1
  1204. package/dist/showcase/assets/map-BTlWnRAQ.js +0 -124
  1205. package/dist/showcase/assets/map-pin-BU2RBuvC.js +0 -1
  1206. package/dist/showcase/assets/media-library-DJxgoGAF.js +0 -699
  1207. package/dist/showcase/assets/mention-inline-suggestions-CbXVAvbK.js +0 -1
  1208. package/dist/showcase/assets/mentions-kMT-Z3qU.js +0 -138
  1209. package/dist/showcase/assets/menus-bhp_n9PT.js +0 -171
  1210. package/dist/showcase/assets/message-square-DC5Bb9Zs.js +0 -1
  1211. package/dist/showcase/assets/metadata-list-DGr729EW.js +0 -286
  1212. package/dist/showcase/assets/metadata-list-DyjhZi6d.js +0 -1
  1213. package/dist/showcase/assets/metric-DRDok6Ci.js +0 -1
  1214. package/dist/showcase/assets/metric-bar-DZsH4Q3U.js +0 -1
  1215. package/dist/showcase/assets/metric-grid-BlFXTrid.js +0 -1
  1216. package/dist/showcase/assets/metric-trend-chip-oEihbEK8.js +0 -1
  1217. package/dist/showcase/assets/metrics-analytics-bar-BovaXHQX.js +0 -44
  1218. package/dist/showcase/assets/metrics-analytics-cards-CeX9Skmd.js +0 -50
  1219. package/dist/showcase/assets/metrics-comparison-DFPSmREl.js +0 -76
  1220. package/dist/showcase/assets/metrics-heatmap-CXzfZwe_.js +0 -27
  1221. package/dist/showcase/assets/metrics-inline-badge-DQJaNpYH.js +0 -17
  1222. package/dist/showcase/assets/metrics-kpi-row-BIpv8CPU.js +0 -31
  1223. package/dist/showcase/assets/metrics-micro-grid-EOCkRI5Z.js +0 -42
  1224. package/dist/showcase/assets/metrics-overview-BD4s9H2T.js +0 -192
  1225. package/dist/showcase/assets/metrics-stat-cards-t7asN5nA.js +0 -54
  1226. package/dist/showcase/assets/minus-Dr1iTc_q.js +0 -1
  1227. package/dist/showcase/assets/money-display-B5_VqQC0.js +0 -1
  1228. package/dist/showcase/assets/money-display-bU2_cVGX.js +0 -1
  1229. package/dist/showcase/assets/month-year-picker-DVRuYbLm.js +0 -1
  1230. package/dist/showcase/assets/navigation-DBKvJoe-.js +0 -231
  1231. package/dist/showcase/assets/navigation-DOhfmtgy.js +0 -90
  1232. package/dist/showcase/assets/navigation-extras-BkO2TZP7.js +0 -43
  1233. package/dist/showcase/assets/notification-banner-CE1Ei_ZT.js +0 -1
  1234. package/dist/showcase/assets/onboarding-checklist-Bf0aoBoa.js +0 -119
  1235. package/dist/showcase/assets/overflow-tab-bar-B2RXtyMP.js +0 -1
  1236. package/dist/showcase/assets/overlays-4E_sUgkz.js +0 -408
  1237. package/dist/showcase/assets/overlays-ulNl-Vhr.js +0 -159
  1238. package/dist/showcase/assets/overview-CgymfIBq.js +0 -184
  1239. package/dist/showcase/assets/package-CADuUP1u.js +0 -1
  1240. package/dist/showcase/assets/package-check-O7MD6XE_.js +0 -1
  1241. package/dist/showcase/assets/page-GB6OIgID.js +0 -1
  1242. package/dist/showcase/assets/page-action-button-Dpprot7y.js +0 -1
  1243. package/dist/showcase/assets/page-header-2VEUPx67.js +0 -1
  1244. package/dist/showcase/assets/pagination-BBuRtAX9.js +0 -1
  1245. package/dist/showcase/assets/pagination-C4mt4Q4l.js +0 -42
  1246. package/dist/showcase/assets/paperclip-Cmyh3Bhf.js +0 -1
  1247. package/dist/showcase/assets/password-input-CgZj1niQ.js +0 -1
  1248. package/dist/showcase/assets/pencil-CtdXjogr.js +0 -1
  1249. package/dist/showcase/assets/phone-CAFMH1vV.js +0 -1
  1250. package/dist/showcase/assets/placeholder-pattern-DHKm-uYV.js +0 -1
  1251. package/dist/showcase/assets/plus-CN2dzUxL.js +0 -1
  1252. package/dist/showcase/assets/popover-DILNXLWy.js +0 -1
  1253. package/dist/showcase/assets/popover-menu-Bp08xxOf.js +0 -1
  1254. package/dist/showcase/assets/popover-o1EO2yVS.js +0 -1
  1255. package/dist/showcase/assets/products-CCLAbHBN.js +0 -423
  1256. package/dist/showcase/assets/progress-BGna-ZmU.js +0 -18
  1257. package/dist/showcase/assets/progress-BSYlNLIJ.js +0 -1
  1258. package/dist/showcase/assets/progress-CZVy3LGB.js +0 -1
  1259. package/dist/showcase/assets/props-table-X9St7Q4m.js +0 -1
  1260. package/dist/showcase/assets/props.generated-f_jHBhPb.json +0 -41753
  1261. package/dist/showcase/assets/qr-code-CEmKf9xU.js +0 -1
  1262. package/dist/showcase/assets/quote-IH6r-rlY.js +0 -1
  1263. package/dist/showcase/assets/receipt-m9rOe5lY.js +0 -1
  1264. package/dist/showcase/assets/receipt-text-C0TobatH.js +0 -1
  1265. package/dist/showcase/assets/refinement-guide-t9T7iAS2.js +0 -189
  1266. package/dist/showcase/assets/refresh-cw-Dy_Nc4jA.js +0 -1
  1267. package/dist/showcase/assets/resolveValueLabel-DR7LgQP5.js +0 -1
  1268. package/dist/showcase/assets/resource-BcJ8O6uj.js +0 -1
  1269. package/dist/showcase/assets/resource-_zDXez77.js +0 -139
  1270. package/dist/showcase/assets/resource-selector-card-CCAEF-AT.js +0 -43
  1271. package/dist/showcase/assets/rich-text-editor-BJG_ECJp.js +0 -143
  1272. package/dist/showcase/assets/rich-text-editor-fbgVfyEH.js +0 -124
  1273. package/dist/showcase/assets/rotate-ccw-CGuTkHQ3.js +0 -1
  1274. package/dist/showcase/assets/route-C7EZ2Njy.js +0 -1
  1275. package/dist/showcase/assets/save-fKrt-yFG.js +0 -1
  1276. package/dist/showcase/assets/schema-form-k7TXeirD.js +0 -327
  1277. package/dist/showcase/assets/scroll-area-CqNwdlI6.js +0 -32
  1278. package/dist/showcase/assets/scroll-area-UVtlGOgx.js +0 -1
  1279. package/dist/showcase/assets/section-DuBNJP4P.js +0 -1
  1280. package/dist/showcase/assets/select-CINVEIWn.js +0 -1
  1281. package/dist/showcase/assets/select-ZLaamXrm.js +0 -1
  1282. package/dist/showcase/assets/send-DBvt_4jT.js +0 -1
  1283. package/dist/showcase/assets/separator-BdBXRpc3.js +0 -28
  1284. package/dist/showcase/assets/separator-CkJjJQWW.js +0 -1
  1285. package/dist/showcase/assets/separator-CxOeStjL.js +0 -1
  1286. package/dist/showcase/assets/separator-O-VQMSf_.js +0 -1
  1287. package/dist/showcase/assets/settings-2-BWjMVlyS.js +0 -1
  1288. package/dist/showcase/assets/settings-D9Z79UcG.js +0 -1
  1289. package/dist/showcase/assets/sheet-CK9C6r7_.js +0 -1
  1290. package/dist/showcase/assets/shield-BboB3Zlo.js +0 -1
  1291. package/dist/showcase/assets/shield-alert-CAAobStl.js +0 -1
  1292. package/dist/showcase/assets/shield-check-Rfyzz9bK.js +0 -1
  1293. package/dist/showcase/assets/shopping-bag-5hLD82YW.js +0 -1
  1294. package/dist/showcase/assets/showcase-DhOQXB5E.js +0 -132
  1295. package/dist/showcase/assets/sidebar-ZTUACc0t.js +0 -1
  1296. package/dist/showcase/assets/sidebar.context-BiNOpG5W.js +0 -1
  1297. package/dist/showcase/assets/skeleton-BZUSoHbk.js +0 -1
  1298. package/dist/showcase/assets/skeleton-BZkYzAdq.js +0 -1
  1299. package/dist/showcase/assets/skeleton-CrOp8tx3.js +0 -29
  1300. package/dist/showcase/assets/skeleton-P5GXAj4U.js +0 -1
  1301. package/dist/showcase/assets/slider-zlE7nLrp.js +0 -1
  1302. package/dist/showcase/assets/smart-card-OExZHSsj.js +0 -1
  1303. package/dist/showcase/assets/sonner-eMphKM9E.js +0 -22
  1304. package/dist/showcase/assets/sortable.esm-CM9VD5N4.js +0 -5
  1305. package/dist/showcase/assets/sparkles-CIB5irID.js +0 -1
  1306. package/dist/showcase/assets/spinner-11-kP-Ob.js +0 -1
  1307. package/dist/showcase/assets/spinner-D4G5TFSm.js +0 -49
  1308. package/dist/showcase/assets/spinner-DKGukuFV.js +0 -30
  1309. package/dist/showcase/assets/square-pen-zflKy9oX.js +0 -1
  1310. package/dist/showcase/assets/stacked-avatars-Cve1Y6GY.js +0 -1
  1311. package/dist/showcase/assets/star-DleXDkCp.js +0 -1
  1312. package/dist/showcase/assets/startOfDay-TDP2erzM.js +0 -1
  1313. package/dist/showcase/assets/styles-BKlX_Ipc.js +0 -1
  1314. package/dist/showcase/assets/suggestions-Dt2hm1NY.js +0 -126
  1315. package/dist/showcase/assets/switch-DAPAgJbv.js +0 -1
  1316. package/dist/showcase/assets/switch-fQpP2tJl.js +0 -1
  1317. package/dist/showcase/assets/sync-BRcK160D.js +0 -124
  1318. package/dist/showcase/assets/table-Dhmbe1yN.js +0 -686
  1319. package/dist/showcase/assets/table-actions-GGrPOQcv.js +0 -1
  1320. package/dist/showcase/assets/table-v0Eu5yZn.js +0 -1
  1321. package/dist/showcase/assets/tabs-DmaXB1aF.js +0 -19
  1322. package/dist/showcase/assets/tabs-vbNIJ-eo.js +0 -1
  1323. package/dist/showcase/assets/tags-input-Bms_Q5CE.js +0 -1
  1324. package/dist/showcase/assets/text-button-gvJCzaXS.js +0 -1
  1325. package/dist/showcase/assets/text-link-DkByVX4d.js +0 -1
  1326. package/dist/showcase/assets/textarea-B6Ho29y3.js +0 -1
  1327. package/dist/showcase/assets/textarea-JCb0yhZ1.js +0 -1
  1328. package/dist/showcase/assets/throttle-alert-CPU-u6Rs.js +0 -1
  1329. package/dist/showcase/assets/timelines-Bw7mvAdx.js +0 -200
  1330. package/dist/showcase/assets/toggle-group-jlIGX1zh.js +0 -1
  1331. package/dist/showcase/assets/toggles-DV6V9vj-.js +0 -71
  1332. package/dist/showcase/assets/toggles-group-C-Y3dG8q.js +0 -32
  1333. package/dist/showcase/assets/tooltip-CDtPyNOv.js +0 -31
  1334. package/dist/showcase/assets/trash-2-CXRm3lMl.js +0 -1
  1335. package/dist/showcase/assets/trending-up-Bcyp9cw8.js +0 -1
  1336. package/dist/showcase/assets/truck-DVgzuKLP.js +0 -1
  1337. package/dist/showcase/assets/typography-BKPf4j85.js +0 -223
  1338. package/dist/showcase/assets/ui-badge-D-Ud2MES.js +0 -28
  1339. package/dist/showcase/assets/ui-card-gGqI2cfr.js +0 -30
  1340. package/dist/showcase/assets/ui-table-Bqcab_kq.js +0 -42
  1341. package/dist/showcase/assets/upload-tray-BFh6twLE.js +0 -138
  1342. package/dist/showcase/assets/use-layout-link-e9jr981L.js +0 -1
  1343. package/dist/showcase/assets/useAriaLabelledBy-ByBTPUi3.js +0 -1
  1344. package/dist/showcase/assets/useCollapsiblePanel-Bx_-SRtw.js +0 -1
  1345. package/dist/showcase/assets/useCompositeItem-Dmih9c3W.js +0 -1
  1346. package/dist/showcase/assets/useCompositeListItem-C0QJgAKb.js +0 -1
  1347. package/dist/showcase/assets/useLabelableId-COfjI9qt.js +0 -1
  1348. package/dist/showcase/assets/useOpenInteractionType-CRefmlni.js +0 -1
  1349. package/dist/showcase/assets/useRender-Bgu76j1u.js +0 -1
  1350. package/dist/showcase/assets/useTriggerFocusGuards-B2fPZeWf.js +0 -1
  1351. package/dist/showcase/assets/useValueChanged-CNjJ-spo.js +0 -1
  1352. package/dist/showcase/assets/user-CmkLnMh9.js +0 -1
  1353. package/dist/showcase/assets/user-plus-3CGFNUf0.js +0 -1
  1354. package/dist/showcase/assets/users-CuO8W7wn.js +0 -1
  1355. package/dist/showcase/assets/vendor-profile-HLMsE22G.js +0 -37
  1356. package/dist/showcase/assets/video-CoHnn0fp.js +0 -1
  1357. package/dist/showcase/assets/visually-hidden-D5bPAL7Q.js +0 -1
  1358. package/dist/showcase/assets/wrench-C93IxaGt.js +0 -1
  1359. package/dist/showcase/assets/x-BJDvVLAz.js +0 -1
  1360. package/dist/showcase/assets/zap-DYD_Ljkv.js +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rich-text-editor-DloyZq46.js","names":[],"sources":["../../src/components/features/rich-text-editor/partials/rich-text-editor-toolbar.tsx","../../src/components/features/rich-text-editor/rich-text-editor.strings.ts","../../src/components/features/rich-text-editor/partials/caret-helpers.ts","../../src/components/features/rich-text-editor/partials/counts-footer.tsx","../../src/components/features/rich-text-editor/partials/html-helpers.ts","../../src/components/features/rich-text-editor/partials/rich-text-editor-tiptap.tsx","../../src/components/features/rich-text-editor/partials/rich-text-editor-fallback.tsx","../../src/components/features/rich-text-editor/rich-text-editor.tsx"],"sourcesContent":["import { Code2 } from 'lucide-react';\nimport type { ReactNode } from 'react';\n\nimport { Button } from '@/components/base/buttons/button';\n\nimport type { RichTextEditorStrings } from '../rich-text-editor.strings';\nimport type {\n\tRichTextEditorToolbarItem,\n\tToolbarButtonConfig,\n} from '../rich-text-editor.types';\n\nexport interface RichTextEditorToolbarProps {\n\tbuttons: ToolbarButtonConfig[];\n\textraToolbarItems?: ReadonlyArray<RichTextEditorToolbarItem>;\n\thideSourceToggle?: boolean;\n\tsourceMode: boolean;\n\ttoggleSourceMode: () => void;\n\tdisabled?: boolean;\n\t/**\n\t * The TipTap variant disables built-in buttons until the editor instance\n\t * is ready; the fallback variant simply marks them disabled. This flag\n\t * lets callers force the disabled state without re-deriving it per button.\n\t */\n\thasEditor?: boolean;\n\ttoolbarTrailing?: ReactNode;\n\tstrings: RichTextEditorStrings;\n}\n\nexport function RichTextEditorToolbar({\n\tbuttons,\n\textraToolbarItems,\n\thideSourceToggle = false,\n\tsourceMode,\n\ttoggleSourceMode,\n\tdisabled = false,\n\thasEditor = true,\n\ttoolbarTrailing,\n\tstrings,\n}: RichTextEditorToolbarProps) {\n\tconst hasExtras = (extraToolbarItems?.length ?? 0) > 0;\n\n\treturn (\n\t\t<div className=\"border-border flex flex-wrap items-center gap-1 border-b p-1.5\">\n\t\t\t{buttons.map((button) => {\n\t\t\t\tconst Icon = button.icon;\n\t\t\t\tconst isActive = button.isActive();\n\n\t\t\t\treturn (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tkey={button.id}\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tvariant={isActive ? 'primary' : 'secondary'}\n\t\t\t\t\t\tbuttonStyle={isActive ? 'solid' : 'ghost'}\n\t\t\t\t\t\tsize=\"icon-small\"\n\t\t\t\t\t\tonClick={button.run}\n\t\t\t\t\t\tdisabled={disabled || !hasEditor || sourceMode || button.disabled}\n\t\t\t\t\t\taria-label={button.label}\n\t\t\t\t\t\ttitle={button.label}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon className=\"h-3.5 w-3.5\" />\n\t\t\t\t\t</Button>\n\t\t\t\t);\n\t\t\t})}\n\n\t\t\t{!hideSourceToggle && (\n\t\t\t\t<>\n\t\t\t\t\t<div className=\"bg-border mx-1 h-4 w-px\" />\n\n\t\t\t\t\t<Button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tvariant={sourceMode ? 'primary' : 'secondary'}\n\t\t\t\t\t\tbuttonStyle={sourceMode ? 'solid' : 'ghost'}\n\t\t\t\t\t\tsize=\"icon-small\"\n\t\t\t\t\t\tonClick={toggleSourceMode}\n\t\t\t\t\t\tdisabled={disabled || !hasEditor}\n\t\t\t\t\t\taria-label={strings.toolbar.sourceCode}\n\t\t\t\t\t\ttitle={strings.toolbar.sourceCode}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Code2 className=\"h-3.5 w-3.5\" />\n\t\t\t\t\t</Button>\n\t\t\t\t</>\n\t\t\t)}\n\n\t\t\t{hasExtras && (\n\t\t\t\t<>\n\t\t\t\t\t<div className=\"bg-border mx-1 h-4 w-px\" />\n\t\t\t\t\t{extraToolbarItems?.map((item) => {\n\t\t\t\t\t\tconst Icon = item.icon;\n\t\t\t\t\t\tconst isActive = item.isActive?.() ?? false;\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tkey={item.id}\n\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\tvariant={isActive ? 'primary' : 'secondary'}\n\t\t\t\t\t\t\t\tbuttonStyle={isActive ? 'solid' : 'ghost'}\n\t\t\t\t\t\t\t\tsize=\"icon-small\"\n\t\t\t\t\t\t\t\tonClick={item.onClick}\n\t\t\t\t\t\t\t\tdisabled={disabled || !hasEditor || sourceMode || item.disabled}\n\t\t\t\t\t\t\t\taria-label={item.label}\n\t\t\t\t\t\t\t\ttitle={item.label}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Icon className=\"h-3.5 w-3.5\" />\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t</>\n\t\t\t)}\n\n\t\t\t{!!toolbarTrailing && (\n\t\t\t\t<div className=\"ml-auto flex items-center gap-1\">{toolbarTrailing}</div>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n\nRichTextEditorToolbar.displayName = 'RichTextEditorToolbar';\n","/**\n * Default user-facing strings for `<RichTextEditor>`.\n *\n * Consumers wire backend i18n at the call site:\n *\n * <RichTextEditor strings={{ toolbar: { bold: t('editor.bold') } }} … />\n */\n\nexport interface RichTextEditorStrings {\n\t/** Accessible label for the editable rich-text surface. */\n\teditorLabel: string;\n\t/** Accessible label for the HTML source textarea. */\n\tsourceLabel: string;\n\t/** Toolbar button labels (used for `aria-label` and tooltip `title`). */\n\ttoolbar: {\n\t\tbold: string;\n\t\titalic: string;\n\t\tstrike: string;\n\t\tbulletList: string;\n\t\torderedList: string;\n\t\tblockquote: string;\n\t\tundo: string;\n\t\tredo: string;\n\t\tsourceCode: string;\n\t};\n\t/** Footer count labels — `{n}` is replaced with the count. */\n\tcounts: {\n\t\tcharacters: string;\n\t\twords: string;\n\t\tmax: string;\n\t};\n}\n\nexport const defaultRichTextEditorStrings: RichTextEditorStrings = {\n\teditorLabel: 'Rich text editor',\n\tsourceLabel: 'HTML source',\n\ttoolbar: {\n\t\tbold: 'Bold',\n\t\titalic: 'Italic',\n\t\tstrike: 'Strike',\n\t\tbulletList: 'Bullet list',\n\t\torderedList: 'Ordered list',\n\t\tblockquote: 'Quote',\n\t\tundo: 'Undo',\n\t\tredo: 'Redo',\n\t\tsourceCode: 'Source code',\n\t},\n\tcounts: {\n\t\tcharacters: 'characters',\n\t\twords: 'words',\n\t\tmax: 'max',\n\t},\n};\n","/**\n * Caret-introspection helpers used by `<RichTextEditor>` to expose the\n * text before the caret and replace a leading run of characters with\n * inline HTML — the building blocks for `@`-mention chips and similar\n * inline triggers.\n */\nimport type { RichTextCaretContext, TiptapEditor } from '../rich-text-editor.types';\n\n/**\n * Read the current selection's caret context.\n *\n * Walks back from the caret through the current text node and any\n * preceding sibling text nodes inside the same block-level container\n * (paragraph / list-item / heading) collecting plain text. Returns the\n * accumulated text plus the caret's bounding rect when available.\n *\n * Returns `null` when there is no live selection or the selection isn't\n * a text caret inside a contenteditable.\n */\nexport function readCaretContext(): RichTextCaretContext | null {\n\tif (typeof window === 'undefined') return null;\n\tconst sel = window.getSelection();\n\tif (!sel || sel.rangeCount === 0) return null;\n\tconst range = sel.getRangeAt(0);\n\tif (!range.collapsed) return null;\n\n\tconst startNode = range.startContainer;\n\tconst startOffset = range.startOffset;\n\n\tlet block: Node | null = startNode;\n\twhile (block && block.nodeType !== Node.ELEMENT_NODE) {\n\t\tblock = block.parentNode;\n\t}\n\tif (!block) return null;\n\tconst editable =\n\t\t(block as Element).closest('[contenteditable=\"true\"]') ??\n\t\t(block as Element).closest('.ProseMirror');\n\tif (!editable) return null;\n\n\tlet text = '';\n\tif (startNode.nodeType === Node.TEXT_NODE) {\n\t\ttext = (startNode.textContent ?? '').slice(0, startOffset);\n\t}\n\n\tlet cursor: Node | null = startNode;\n\twhile (cursor && cursor !== editable && cursor !== block) {\n\t\tlet prev: Node | null = cursor.previousSibling;\n\t\twhile (prev) {\n\t\t\ttext = (prev.textContent ?? '') + text;\n\t\t\tprev = prev.previousSibling;\n\t\t}\n\t\tcursor = cursor.parentNode;\n\t\tif (cursor && (cursor as Element).matches?.('p, li, h1, h2, h3, h4, h5, h6, blockquote')) {\n\t\t\tbreak;\n\t\t}\n\t}\n\n\tlet rect: RichTextCaretContext['rect'];\n\tconst r = range.getBoundingClientRect();\n\tif (r && (r.top || r.left || r.right || r.bottom)) {\n\t\trect = { top: r.top, left: r.left, bottom: r.bottom, right: r.right };\n\t}\n\n\treturn { textBefore: text, rect };\n}\n\n/**\n * Extend the selection backwards by `length` characters, then insert\n * `html`. The selection extension means `editor.insertContent` (or the\n * fallback's `range.deleteContents()` + insert) replaces the trigger\n * range with the chip atomically — no manual text-content mutation, no\n * timing races between \"delete\" and \"insert\".\n */\nexport function replaceBeforeCaret(\n\teditor: TiptapEditor | null,\n\tlength: number,\n\thtml: string,\n\tnotifyChange: (next: string) => void,\n): void {\n\tif (typeof window === 'undefined') return;\n\tconst sel = window.getSelection();\n\tif (!sel || sel.rangeCount === 0) return;\n\tconst caret = sel.getRangeAt(0);\n\tif (!caret.collapsed) return;\n\n\tlet remaining = length;\n\tlet startNode: Node = caret.startContainer;\n\tlet startOffset = caret.startOffset;\n\n\twhile (remaining > 0) {\n\t\tif (startNode.nodeType === Node.TEXT_NODE) {\n\t\t\tconst take = Math.min(startOffset, remaining);\n\t\t\tstartOffset -= take;\n\t\t\tremaining -= take;\n\t\t\tif (remaining === 0) break;\n\t\t}\n\t\tconst prev = previousTextNode(startNode);\n\t\tif (!prev) break;\n\t\tstartNode = prev;\n\t\tstartOffset = prev.textContent?.length ?? 0;\n\t}\n\n\tconst range = document.createRange();\n\trange.setStart(startNode, startOffset);\n\trange.setEnd(caret.endContainer, caret.endOffset);\n\tsel.removeAllRanges();\n\tsel.addRange(range);\n\n\tif (editor) {\n\t\teditor.chain().focus().insertContent(html).run();\n\t\tnotifyChange(editor.getHTML());\n\t\treturn;\n\t}\n\n\trange.deleteContents();\n\tconst fragment = document.createRange().createContextualFragment(html);\n\trange.insertNode(fragment);\n\tsel.collapseToEnd();\n\tconst editable =\n\t\t(startNode as Element | null)?.parentElement?.closest?.('[contenteditable=\"true\"]') ?? null;\n\tif (editable) notifyChange((editable as HTMLElement).innerHTML);\n}\n\nexport function insertHtmlIntoEditable(editable: HTMLElement | null, html: string): void {\n\tif (typeof window === 'undefined' || !editable) return;\n\teditable.focus();\n\n\tconst sel = window.getSelection();\n\tif (!sel || sel.rangeCount === 0) {\n\t\teditable.insertAdjacentHTML('beforeend', html);\n\t\treturn;\n\t}\n\n\tconst range = sel.getRangeAt(0);\n\tif (!editable.contains(range.commonAncestorContainer)) {\n\t\teditable.insertAdjacentHTML('beforeend', html);\n\t\treturn;\n\t}\n\n\trange.deleteContents();\n\tconst fragment = document.createRange().createContextualFragment(html);\n\trange.insertNode(fragment);\n\trange.collapse(false);\n\tsel.removeAllRanges();\n\tsel.addRange(range);\n}\n\nfunction previousTextNode(node: Node): Node | null {\n\tlet current: Node | null = node;\n\twhile (current) {\n\t\tif (current.previousSibling) {\n\t\t\tcurrent = current.previousSibling;\n\t\t\twhile (current && current.lastChild) {\n\t\t\t\tcurrent = current.lastChild;\n\t\t\t}\n\t\t\tif (current && current.nodeType === Node.TEXT_NODE) return current;\n\t\t\tcontinue;\n\t\t}\n\t\tcurrent = current.parentNode;\n\t\tif (!current || (current as Element).matches?.('p, li, h1, h2, h3, h4, h5, h6, blockquote, [contenteditable=\"true\"]')) {\n\t\t\treturn null;\n\t\t}\n\t}\n\treturn null;\n}\n","import { Text } from '@/components/typography';\nimport { cn } from '@/lib/utils';\n\nimport type { RichTextEditorStrings } from '../rich-text-editor.strings';\nimport type { TiptapEditor } from '../rich-text-editor.types';\n\ninterface CountsFooterTextProps {\n\ttext: string;\n\tmaxLength?: number;\n\tstrings: RichTextEditorStrings;\n}\n\nexport function CountsFooterText({ text, maxLength, strings }: CountsFooterTextProps) {\n\tconst chars = text.length;\n\tconst words = text.trim().length > 0 ? text.trim().split(/\\s+/).length : 0;\n\tconst overLimit = typeof maxLength === 'number' && chars > maxLength;\n\n\treturn (\n\t\t<div className=\"border-border flex items-center justify-end gap-3 border-t px-3 py-1.5\">\n\t\t\t<Text\n\t\t\t\ttag=\"span\"\n\t\t\t\tsize=\"xs\"\n\t\t\t\ttype={overLimit ? 'error' : 'secondary'}\n\t\t\t\tweight={overLimit ? 'medium' : 'regular'}\n\t\t\t\tclassName={cn('tabular-nums')}\n\t\t\t>\n\t\t\t\t{chars}\n\t\t\t\t{typeof maxLength === 'number' ? ` / ${maxLength}` : ''} {strings.counts.characters}\n\t\t\t</Text>\n\t\t\t<Text tag=\"span\" size=\"xs\" type=\"secondary\" className=\"tabular-nums\">\n\t\t\t\t{words} {strings.counts.words}\n\t\t\t</Text>\n\t\t</div>\n\t);\n}\n\nCountsFooterText.displayName = 'CountsFooterText';\n\ninterface CountsFooterProps {\n\teditor: TiptapEditor;\n\tsourceMode: boolean;\n\tsourceValue: string;\n\tmaxLength?: number;\n\tstrings: RichTextEditorStrings;\n}\n\nexport function CountsFooter({\n\teditor,\n\tsourceMode,\n\tsourceValue,\n\tmaxLength,\n\tstrings,\n}: CountsFooterProps) {\n\tconst text = sourceMode\n\t\t? sourceValue.replace(/<[^>]*>/g, '')\n\t\t: (editor?.getText() ?? '');\n\n\treturn <CountsFooterText text={text} maxLength={maxLength} strings={strings} />;\n}\n\nCountsFooter.displayName = 'CountsFooter';\n","/**\n * Plain HTML normalization shared by the TipTap and contenteditable\n * fallback editors. Keeping these out of the React tree means the\n * editor partials stay focused on rendering.\n */\n\nexport function normalizeHtml(value: string): string {\n\tconst trimmed = value.trim();\n\n\tif (trimmed === '' || trimmed === '<p></p>' || trimmed === '<p><br></p>') {\n\t\treturn '';\n\t}\n\n\treturn trimmed;\n}\n\nexport function toEditorContent(value: string): string {\n\tconst normalized = normalizeHtml(value);\n\treturn normalized === '' ? '<p></p>' : normalized;\n}\n","import {\n\tforwardRef,\n\tuseCallback,\n\tuseEffect,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from 'react';\nimport {\n\tBold,\n\tItalic,\n\tList,\n\tListOrdered,\n\tQuote,\n\tRedo2,\n\tStrikethrough,\n\tUndo2,\n} from 'lucide-react';\nimport * as TiptapReact from '@tiptap/react';\nimport * as StarterKitModule from '@tiptap/starter-kit';\n\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport { defaultRichTextEditorStrings } from '../rich-text-editor.strings';\nimport type {\n\tRichTextEditorHandle,\n\tRichTextEditorProps,\n\tToolbarButtonConfig,\n} from '../rich-text-editor.types';\nimport { readCaretContext, replaceBeforeCaret } from './caret-helpers';\nimport { CountsFooter } from './counts-footer';\nimport { normalizeHtml, toEditorContent } from './html-helpers';\nimport { RichTextEditorToolbar } from './rich-text-editor-toolbar';\n\nconst EditorContent = TiptapReact.EditorContent;\nconst useTiptapEditor = TiptapReact.useEditor;\nconst StarterKit =\n\t'default' in StarterKitModule ? StarterKitModule.default : StarterKitModule;\n\nexport const TiptapRichTextEditor = forwardRef<RichTextEditorHandle, RichTextEditorProps>(function TiptapRichTextEditor(\n\t{\n\t\tvalue,\n\t\tonChange,\n\t\tplaceholder,\n\t\tcompact = false,\n\t\tminHeight,\n\t\tmaxHeight,\n\t\tdisabled = false,\n\t\tshowCounts = false,\n\t\tmaxLength,\n\t\textraToolbarItems,\n\t\ttoolbarTrailing,\n\t\tfooterSlot,\n\t\thideSourceToggle = false,\n\t\tautoFocus = false,\n\t\tclassName,\n\t\tonCaretChange,\n\t\tstrings: stringsProp,\n\t},\n\tref,\n) {\n\tconst strings = useStrings(defaultRichTextEditorStrings, stringsProp);\n\tconst [isFocused, setIsFocused] = useState(false);\n\tconst [sourceMode, setSourceMode] = useState(false);\n\tconst [sourceValue, setSourceValue] = useState('');\n\tconst isFocusedRef = useRef(false);\n\tconst externalValueRef = useRef<string>(normalizeHtml(value));\n\tconst onCaretChangeRef = useRef(onCaretChange);\n\tonCaretChangeRef.current = onCaretChange;\n\n\tconst editor = useTiptapEditor({\n\t\textensions: [StarterKit],\n\t\tcontent: toEditorContent(value),\n\t\teditable: !disabled,\n\t\timmediatelyRender: false,\n\t\tautofocus: autoFocus ? 'end' : false,\n\t\tonFocus: () => {\n\t\t\tisFocusedRef.current = true;\n\t\t\tsetIsFocused(true);\n\t\t},\n\t\tonBlur: () => {\n\t\t\tisFocusedRef.current = false;\n\t\t\tsetIsFocused(false);\n\t\t},\n\t\tonUpdate: ({ editor: currentEditor }: { editor: { getHTML: () => string } }) => {\n\t\t\tconst html = normalizeHtml(currentEditor.getHTML());\n\t\t\tif (!isFocusedRef.current) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (html !== externalValueRef.current) {\n\t\t\t\texternalValueRef.current = html;\n\t\t\t\tonChange(html);\n\t\t\t}\n\n\t\t\tonCaretChangeRef.current?.();\n\t\t},\n\t\teditorProps: {\n\t\t\tattributes: {\n\t\t\t\trole: 'textbox',\n\t\t\t\t'aria-label': strings.editorLabel,\n\t\t\t\t'aria-multiline': 'true',\n\t\t\t\tclass: 'prose prose-sm prose-p:my-0.5 prose-p:leading-relaxed prose-headings:my-1 prose-ul:my-1 prose-ol:my-1 prose-li:my-0.5 max-w-none px-3 py-2 text-sm focus-visible:outline-none dark:prose-invert',\n\t\t\t},\n\t\t},\n\t});\n\n\tuseEffect(() => {\n\t\tif (!editor) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst current = normalizeHtml(editor.getHTML());\n\t\tconst next = normalizeHtml(value);\n\t\texternalValueRef.current = next;\n\n\t\tif (current !== next) {\n\t\t\teditor.commands.setContent(toEditorContent(next), { emitUpdate: false });\n\t\t}\n\t}, [editor, value]);\n\n\tuseEffect(() => {\n\t\tif (!editor) {\n\t\t\treturn;\n\t\t}\n\n\t\teditor.setEditable(!disabled);\n\t}, [disabled, editor]);\n\n\tuseEffect(() => {\n\t\tif (typeof document === 'undefined') return;\n\t\tconst handler = () => {\n\t\t\tif (!isFocusedRef.current) return;\n\t\t\tonCaretChangeRef.current?.();\n\t\t};\n\t\tdocument.addEventListener('selectionchange', handler);\n\t\treturn () => document.removeEventListener('selectionchange', handler);\n\t}, []);\n\n\tuseImperativeHandle(\n\t\tref,\n\t\t() => ({\n\t\t\tfocus: () => {\n\t\t\t\teditor?.chain().focus().run();\n\t\t\t},\n\t\t\tgetHTML: () => normalizeHtml(editor?.getHTML() ?? ''),\n\t\t\tsetHTML: (html: string) => {\n\t\t\t\tconst next = normalizeHtml(html);\n\t\t\t\texternalValueRef.current = next;\n\t\t\t\teditor?.commands.setContent(toEditorContent(next), { emitUpdate: false });\n\t\t\t\tonChange(next);\n\t\t\t},\n\t\t\tinsertHTML: (html: string) => {\n\t\t\t\tif (!editor) return;\n\t\t\t\teditor.chain().focus().insertContent(html).run();\n\t\t\t},\n\t\t\tisEmpty: () => normalizeHtml(editor?.getHTML() ?? '') === '',\n\t\t\tclear: () => {\n\t\t\t\texternalValueRef.current = '';\n\t\t\t\teditor?.commands.setContent('<p></p>', { emitUpdate: false });\n\t\t\t\tonChange('');\n\t\t\t},\n\t\t\tgetCaretContext: () => readCaretContext(),\n\t\t\treplaceBeforeCaret: (length: number, html: string) => {\n\t\t\t\treplaceBeforeCaret(editor, length, html, (next) => {\n\t\t\t\t\texternalValueRef.current = normalizeHtml(next);\n\t\t\t\t\tonChange(externalValueRef.current);\n\t\t\t\t});\n\t\t\t},\n\t\t}),\n\t\t[editor, onChange],\n\t);\n\n\tconst contentStyle = useMemo(\n\t\t() => ({\n\t\t\tminHeight: minHeight ?? (compact ? '2rem' : '12rem'),\n\t\t\t...(maxHeight ? { maxHeight, overflowY: 'auto' as const } : {}),\n\t\t}),\n\t\t[compact, maxHeight, minHeight],\n\t);\n\n\tconst toggleSourceMode = useCallback(() => {\n\t\tif (!editor) return;\n\n\t\tif (sourceMode) {\n\t\t\tconst html = toEditorContent(sourceValue);\n\t\t\teditor.commands.setContent(html, { emitUpdate: false });\n\t\t\tconst normalized = normalizeHtml(sourceValue);\n\t\t\texternalValueRef.current = normalized;\n\t\t\tonChange(normalized);\n\t\t\tsetSourceMode(false);\n\t\t} else {\n\t\t\tsetSourceValue(editor.getHTML());\n\t\t\tsetSourceMode(true);\n\t\t}\n\t}, [editor, onChange, sourceMode, sourceValue]);\n\n\tconst handleSourceChange = useCallback(\n\t\t(e: React.ChangeEvent<HTMLTextAreaElement>) => {\n\t\t\tconst next = e.target.value;\n\t\t\tsetSourceValue(next);\n\t\t\tconst normalized = normalizeHtml(next);\n\t\t\texternalValueRef.current = normalized;\n\t\t\tonChange(normalized);\n\t\t},\n\t\t[onChange],\n\t);\n\n\tconst toolbarButtons = useMemo<ToolbarButtonConfig[]>(\n\t\t() => [\n\t\t\t{\n\t\t\t\tid: 'bold',\n\t\t\t\ticon: Bold,\n\t\t\t\tlabel: strings.toolbar.bold,\n\t\t\t\tisActive: () => Boolean(editor?.isActive('bold')),\n\t\t\t\trun: () => editor?.chain().focus().toggleBold().run(),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'italic',\n\t\t\t\ticon: Italic,\n\t\t\t\tlabel: strings.toolbar.italic,\n\t\t\t\tisActive: () => Boolean(editor?.isActive('italic')),\n\t\t\t\trun: () => editor?.chain().focus().toggleItalic().run(),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'strike',\n\t\t\t\ticon: Strikethrough,\n\t\t\t\tlabel: strings.toolbar.strike,\n\t\t\t\tisActive: () => Boolean(editor?.isActive('strike')),\n\t\t\t\trun: () => editor?.chain().focus().toggleStrike().run(),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'bullet-list',\n\t\t\t\ticon: List,\n\t\t\t\tlabel: strings.toolbar.bulletList,\n\t\t\t\tisActive: () => Boolean(editor?.isActive('bulletList')),\n\t\t\t\trun: () => editor?.chain().focus().toggleBulletList().run(),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'ordered-list',\n\t\t\t\ticon: ListOrdered,\n\t\t\t\tlabel: strings.toolbar.orderedList,\n\t\t\t\tisActive: () => Boolean(editor?.isActive('orderedList')),\n\t\t\t\trun: () => editor?.chain().focus().toggleOrderedList().run(),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'blockquote',\n\t\t\t\ticon: Quote,\n\t\t\t\tlabel: strings.toolbar.blockquote,\n\t\t\t\tisActive: () => Boolean(editor?.isActive('blockquote')),\n\t\t\t\trun: () => editor?.chain().focus().toggleBlockquote().run(),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'undo',\n\t\t\t\ticon: Undo2,\n\t\t\t\tlabel: strings.toolbar.undo,\n\t\t\t\tisActive: () => false,\n\t\t\t\trun: () => editor?.chain().focus().undo().run(),\n\t\t\t\tdisabled: !editor?.can().chain().focus().undo().run(),\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'redo',\n\t\t\t\ticon: Redo2,\n\t\t\t\tlabel: strings.toolbar.redo,\n\t\t\t\tisActive: () => false,\n\t\t\t\trun: () => editor?.chain().focus().redo().run(),\n\t\t\t\tdisabled: !editor?.can().chain().focus().redo().run(),\n\t\t\t},\n\t\t],\n\t\t[editor, strings],\n\t);\n\n\tconst countsFooter =\n\t\tshowCounts && editor ? (\n\t\t\t<CountsFooter\n\t\t\t\teditor={editor}\n\t\t\t\tsourceMode={sourceMode}\n\t\t\t\tsourceValue={sourceValue}\n\t\t\t\tmaxLength={maxLength}\n\t\t\t\tstrings={strings}\n\t\t\t/>\n\t\t) : null;\n\n\tconst placeholderText = typeof placeholder === 'string' ? placeholder : '';\n\tconst showPlaceholder =\n\t\tplaceholderText.length > 0 && !isFocused && Boolean(editor?.isEmpty);\n\tconst placeholderNode = showPlaceholder ? (\n\t\t<span className=\"text-muted-foreground pointer-events-none absolute left-3 top-2 text-sm\">\n\t\t\t{placeholderText}\n\t\t</span>\n\t) : null;\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\t'border-input bg-background rounded-md border',\n\t\t\t\tdisabled && 'opacity-70',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t<RichTextEditorToolbar\n\t\t\t\tbuttons={toolbarButtons}\n\t\t\t\textraToolbarItems={extraToolbarItems}\n\t\t\t\thideSourceToggle={hideSourceToggle}\n\t\t\t\tsourceMode={sourceMode}\n\t\t\t\ttoggleSourceMode={toggleSourceMode}\n\t\t\t\tdisabled={disabled}\n\t\t\t\thasEditor={Boolean(editor)}\n\t\t\t\ttoolbarTrailing={toolbarTrailing}\n\t\t\t\tstrings={strings}\n\t\t\t/>\n\n\t\t\t{sourceMode ? (\n\t\t\t\t<textarea\n\t\t\t\t\taria-label={strings.sourceLabel}\n\t\t\t\t\tvalue={sourceValue}\n\t\t\t\t\tonChange={handleSourceChange}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\tspellCheck={false}\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'bg-muted/50 w-full resize-y px-3 py-2 font-mono text-xs leading-relaxed focus-visible:outline-none',\n\t\t\t\t\t\tdisabled && 'cursor-not-allowed',\n\t\t\t\t\t)}\n\t\t\t\t\tstyle={contentStyle}\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<div className=\"relative\" style={contentStyle}>\n\t\t\t\t\t{placeholderNode}\n\n\t\t\t\t\t<EditorContent\n\t\t\t\t\t\teditor={editor}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'h-full',\n\t\t\t\t\t\t\t'[&_.ProseMirror]:h-full',\n\t\t\t\t\t\t\t'[&_.ProseMirror]:min-h-full',\n\t\t\t\t\t\t\t'[&_.ProseMirror]:outline-none',\n\t\t\t\t\t\t)}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t)}\n\n\t\t\t{!!footerSlot && (\n\t\t\t\t<div className=\"px-3 pb-2 pt-1\">{footerSlot}</div>\n\t\t\t)}\n\n\t\t\t{countsFooter}\n\t\t</div>\n\t);\n});\n\nTiptapRichTextEditor.displayName = 'TiptapRichTextEditor';\n\nexport const hasTiptapRuntime =\n\ttypeof EditorContent === 'function' &&\n\ttypeof useTiptapEditor === 'function' &&\n\ttypeof StarterKit === 'object' &&\n\tStarterKit !== null;\n","import {\n\tforwardRef,\n\tuseCallback,\n\tuseEffect,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from 'react';\nimport {\n\tBold,\n\tItalic,\n\tList,\n\tListOrdered,\n\tQuote,\n\tRedo2,\n\tStrikethrough,\n\tUndo2,\n} from 'lucide-react';\n\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport { defaultRichTextEditorStrings } from '../rich-text-editor.strings';\nimport type {\n\tRichTextEditorHandle,\n\tRichTextEditorProps,\n\tToolbarButtonConfig,\n} from '../rich-text-editor.types';\nimport {\n\tinsertHtmlIntoEditable,\n\treadCaretContext,\n\treplaceBeforeCaret,\n} from './caret-helpers';\nimport { CountsFooterText } from './counts-footer';\nimport { normalizeHtml, toEditorContent } from './html-helpers';\nimport { RichTextEditorToolbar } from './rich-text-editor-toolbar';\n\n/**\n * Fallback editor used when the TipTap runtime is unavailable (e.g. in\n * environments where the package failed to load). Renders a\n * `contenteditable` surface with the same imperative handle so callers\n * never need to care which variant they got.\n */\nexport const FallbackRichTextEditor = forwardRef<RichTextEditorHandle, RichTextEditorProps>(function FallbackRichTextEditor(\n\t{\n\t\tvalue,\n\t\tonChange,\n\t\tplaceholder,\n\t\tcompact = false,\n\t\tminHeight,\n\t\tmaxHeight,\n\t\tdisabled = false,\n\t\tshowCounts = false,\n\t\tmaxLength,\n\t\textraToolbarItems,\n\t\ttoolbarTrailing,\n\t\tfooterSlot,\n\t\thideSourceToggle = false,\n\t\tautoFocus = false,\n\t\tclassName,\n\t\tonCaretChange,\n\t\tstrings: stringsProp,\n\t},\n\tref,\n) {\n\tconst strings = useStrings(defaultRichTextEditorStrings, stringsProp);\n\tconst editableRef = useRef<HTMLDivElement>(null);\n\tconst [isFocused, setIsFocused] = useState(false);\n\tconst [sourceMode, setSourceMode] = useState(false);\n\tconst [sourceValue, setSourceValue] = useState('');\n\tconst externalValueRef = useRef<string>(normalizeHtml(value));\n\tconst onCaretChangeRef = useRef(onCaretChange);\n\tonCaretChangeRef.current = onCaretChange;\n\n\tuseEffect(() => {\n\t\tconst editable = editableRef.current;\n\t\tif (!editable || isFocused) return;\n\t\tconst next = toEditorContent(value);\n\t\tif (normalizeHtml(editable.innerHTML) !== normalizeHtml(next)) {\n\t\t\teditable.innerHTML = next;\n\t\t}\n\t\texternalValueRef.current = normalizeHtml(value);\n\t}, [isFocused, value]);\n\n\tuseEffect(() => {\n\t\tif (!autoFocus) return;\n\t\teditableRef.current?.focus();\n\t}, [autoFocus]);\n\n\tconst emitEditableChange = useCallback(() => {\n\t\tconst editable = editableRef.current;\n\t\tconst html = normalizeHtml(editable?.innerHTML ?? '');\n\t\texternalValueRef.current = html;\n\t\tonChange(html);\n\t\tonCaretChangeRef.current?.();\n\t}, [onChange]);\n\n\tuseImperativeHandle(\n\t\tref,\n\t\t() => ({\n\t\t\tfocus: () => editableRef.current?.focus(),\n\t\t\tgetHTML: () => normalizeHtml(editableRef.current?.innerHTML ?? ''),\n\t\t\tsetHTML: (html: string) => {\n\t\t\t\tconst next = normalizeHtml(html);\n\t\t\t\texternalValueRef.current = next;\n\t\t\t\tif (editableRef.current) {\n\t\t\t\t\teditableRef.current.innerHTML = toEditorContent(next);\n\t\t\t\t}\n\t\t\t\tonChange(next);\n\t\t\t},\n\t\t\tinsertHTML: (html: string) => {\n\t\t\t\tinsertHtmlIntoEditable(editableRef.current, html);\n\t\t\t\temitEditableChange();\n\t\t\t},\n\t\t\tisEmpty: () => normalizeHtml(editableRef.current?.innerHTML ?? '') === '',\n\t\t\tclear: () => {\n\t\t\t\texternalValueRef.current = '';\n\t\t\t\tif (editableRef.current) editableRef.current.innerHTML = '<p></p>';\n\t\t\t\tonChange('');\n\t\t\t},\n\t\t\tgetCaretContext: () => readCaretContext(),\n\t\t\treplaceBeforeCaret: (length: number, html: string) => {\n\t\t\t\treplaceBeforeCaret(null, length, html, () => emitEditableChange());\n\t\t\t},\n\t\t}),\n\t\t[emitEditableChange, onChange],\n\t);\n\n\tconst contentStyle = useMemo(\n\t\t() => ({\n\t\t\tminHeight: minHeight ?? (compact ? '2rem' : '12rem'),\n\t\t\t...(maxHeight ? { maxHeight, overflowY: 'auto' as const } : {}),\n\t\t}),\n\t\t[compact, maxHeight, minHeight],\n\t);\n\n\tconst toggleSourceMode = useCallback(() => {\n\t\tif (sourceMode) {\n\t\t\tconst normalized = normalizeHtml(sourceValue);\n\t\t\texternalValueRef.current = normalized;\n\t\t\tif (editableRef.current) {\n\t\t\t\teditableRef.current.innerHTML = toEditorContent(normalized);\n\t\t\t}\n\t\t\tonChange(normalized);\n\t\t\tsetSourceMode(false);\n\t\t\treturn;\n\t\t}\n\t\tsetSourceValue(editableRef.current?.innerHTML ?? toEditorContent(value));\n\t\tsetSourceMode(true);\n\t}, [onChange, sourceMode, sourceValue, value]);\n\n\tconst handleSourceChange = useCallback(\n\t\t(e: React.ChangeEvent<HTMLTextAreaElement>) => {\n\t\t\tconst next = e.target.value;\n\t\t\tsetSourceValue(next);\n\t\t\tconst normalized = normalizeHtml(next);\n\t\t\texternalValueRef.current = normalized;\n\t\t\tonChange(normalized);\n\t\t},\n\t\t[onChange],\n\t);\n\n\tconst placeholderText = typeof placeholder === 'string' ? placeholder : '';\n\tconst isEmpty = normalizeHtml(externalValueRef.current) === '';\n\tconst placeholderNode =\n\t\tplaceholderText.length > 0 && !isFocused && isEmpty ? (\n\t\t\t<span className=\"text-muted-foreground pointer-events-none absolute left-3 top-2 text-sm\">\n\t\t\t\t{placeholderText}\n\t\t\t</span>\n\t\t) : null;\n\n\tconst toolbarButtons = useMemo<ToolbarButtonConfig[]>(\n\t\t() => [\n\t\t\t{ id: 'bold', icon: Bold, label: strings.toolbar.bold, isActive: () => false, run: () => undefined, disabled: true },\n\t\t\t{ id: 'italic', icon: Italic, label: strings.toolbar.italic, isActive: () => false, run: () => undefined, disabled: true },\n\t\t\t{ id: 'strike', icon: Strikethrough, label: strings.toolbar.strike, isActive: () => false, run: () => undefined, disabled: true },\n\t\t\t{ id: 'bullet-list', icon: List, label: strings.toolbar.bulletList, isActive: () => false, run: () => undefined, disabled: true },\n\t\t\t{ id: 'ordered-list', icon: ListOrdered, label: strings.toolbar.orderedList, isActive: () => false, run: () => undefined, disabled: true },\n\t\t\t{ id: 'blockquote', icon: Quote, label: strings.toolbar.blockquote, isActive: () => false, run: () => undefined, disabled: true },\n\t\t\t{ id: 'undo', icon: Undo2, label: strings.toolbar.undo, isActive: () => false, run: () => undefined, disabled: true },\n\t\t\t{ id: 'redo', icon: Redo2, label: strings.toolbar.redo, isActive: () => false, run: () => undefined, disabled: true },\n\t\t],\n\t\t[strings],\n\t);\n\n\tconst text = sourceMode\n\t\t? sourceValue.replace(/<[^>]*>/g, '')\n\t\t: (editableRef.current?.innerText ?? normalizeHtml(value).replace(/<[^>]*>/g, ''));\n\tconst countsFooter =\n\t\tshowCounts ? (\n\t\t\t<CountsFooterText text={text} maxLength={maxLength} strings={strings} />\n\t\t) : null;\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\t'border-input bg-background rounded-md border',\n\t\t\t\tdisabled && 'opacity-70',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t<RichTextEditorToolbar\n\t\t\t\tbuttons={toolbarButtons}\n\t\t\t\textraToolbarItems={extraToolbarItems}\n\t\t\t\thideSourceToggle={hideSourceToggle}\n\t\t\t\tsourceMode={sourceMode}\n\t\t\t\ttoggleSourceMode={toggleSourceMode}\n\t\t\t\tdisabled={disabled}\n\t\t\t\thasEditor\n\t\t\t\ttoolbarTrailing={toolbarTrailing}\n\t\t\t\tstrings={strings}\n\t\t\t/>\n\n\t\t\t{sourceMode ? (\n\t\t\t\t<textarea\n\t\t\t\t\taria-label={strings.sourceLabel}\n\t\t\t\t\tvalue={sourceValue}\n\t\t\t\t\tonChange={handleSourceChange}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\tspellCheck={false}\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'bg-muted/50 w-full resize-y px-3 py-2 font-mono text-xs leading-relaxed focus-visible:outline-none',\n\t\t\t\t\t\tdisabled && 'cursor-not-allowed',\n\t\t\t\t\t)}\n\t\t\t\t\tstyle={contentStyle}\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<div className=\"relative\" style={contentStyle}>\n\t\t\t\t\t{placeholderNode}\n\t\t\t\t\t<div\n\t\t\t\t\t\tref={editableRef}\n\t\t\t\t\t\trole=\"textbox\"\n\t\t\t\t\t\taria-label={strings.editorLabel}\n\t\t\t\t\t\taria-multiline=\"true\"\n\t\t\t\t\t\tcontentEditable={!disabled}\n\t\t\t\t\t\tsuppressContentEditableWarning\n\t\t\t\t\t\tonInput={emitEditableChange}\n\t\t\t\t\t\tonKeyUp={() => onCaretChangeRef.current?.()}\n\t\t\t\t\t\tonMouseUp={() => onCaretChangeRef.current?.()}\n\t\t\t\t\t\tonFocus={() => setIsFocused(true)}\n\t\t\t\t\t\tonBlur={() => setIsFocused(false)}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'prose prose-sm prose-p:my-0.5 prose-p:leading-relaxed prose-headings:my-1 prose-ul:my-1 prose-ol:my-1 prose-li:my-0.5 max-w-none px-3 py-2 text-sm focus-visible:outline-none dark:prose-invert',\n\t\t\t\t\t\t\t'h-full min-h-full',\n\t\t\t\t\t\t\tdisabled && 'cursor-not-allowed',\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tdangerouslySetInnerHTML={{ __html: toEditorContent(value) }}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t)}\n\n\t\t\t{!!footerSlot && (\n\t\t\t\t<div className=\"px-3 pb-2 pt-1\">{footerSlot}</div>\n\t\t\t)}\n\n\t\t\t{countsFooter}\n\t\t</div>\n\t);\n});\n\nFallbackRichTextEditor.displayName = 'FallbackRichTextEditor';\n","/**\n * Public `<RichTextEditor>` shell — picks the TipTap-backed editor when\n * the runtime is loaded and falls back to a plain `contenteditable`\n * surface otherwise. Both variants implement the same imperative\n * `RichTextEditorHandle`, so callers don't have to branch.\n *\n * Heavy lifting lives in `partials/`:\n * - `partials/rich-text-editor-tiptap.tsx` — TipTap variant\n * - `partials/rich-text-editor-fallback.tsx` — contenteditable variant\n * - `partials/rich-text-editor-toolbar.tsx` — shared toolbar\n * - `partials/counts-footer.tsx` — char/word counts\n * - `partials/caret-helpers.ts` — caret introspection\n * - `partials/html-helpers.ts` — HTML normalization\n */\nimport { forwardRef } from 'react';\n\nimport {\n\tFallbackRichTextEditor,\n\tTiptapRichTextEditor,\n\thasTiptapRuntime,\n} from './partials';\nimport type {\n\tRichTextEditorHandle,\n\tRichTextEditorProps,\n} from './rich-text-editor.types';\n\nexport const RichTextEditor = forwardRef<RichTextEditorHandle, RichTextEditorProps>(function RichTextEditor(\n\tprops,\n\tref,\n) {\n\tif (!hasTiptapRuntime) {\n\t\treturn <FallbackRichTextEditor className=\"rich-text-editor--component\" {...props} ref={ref} />;\n\t}\n\n\treturn <TiptapRichTextEditor {...props} ref={ref} />;\n});\n\nRichTextEditor.displayName = 'RichTextEditor';\n\nexport type {\n\tRichTextEditorProps,\n\tRichTextEditorHandle,\n\tRichTextEditorToolbarItem,\n\tRichTextCaretContext,\n} from './rich-text-editor.types';\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ const e=require("../lib/strings.cjs"),t=require("../lib/utils.cjs"),n=require("./typography-sXFd02zl.cjs"),r=require("./badge-B0Ashqkn.cjs"),i=require("./cards-DvE5gRFf.cjs"),a=require("./layout.types-CXFAjJCj.cjs");let o=require("react/jsx-runtime");var s={navigationAriaLabel:`Settings navigation`};function c(e){if(!e)return``;try{let t=typeof window<`u`?window.location.origin:`http://localhost`,n=new URL(e,t).pathname.replace(/\/+$/,``);return n.length>0?n:`/`}catch{let t=(e.split(`?`)[0]??e).replace(/\/+$/,``);return t.length>0?t:`/`}}function l(e,t,n){if(t)return e.id===t;if(!n||!e.href)return!1;let r=c(n),i=c(e.href);return r===i||r.startsWith(`${i}/`)}function u({title:c,description:u,groups:d,currentId:f,currentPath:p,children:m,aside:h,actions:g,footer:_,className:v,navClassName:y,contentClassName:b,renderLink:x,LinkComponent:S,strings:C}){let w=e.useStrings(s,C),T=a.r({renderLink:x,LinkComponent:S});return(0,o.jsxs)(`section`,{"data-component":`aside-nav-shell`,"data-slot":`aside-nav-shell`,className:t.cn(`aside-nav-shell--component grid min-w-0 gap-5 lg:grid-cols-[17rem_minmax(0,1fr)]`,v),children:[(0,o.jsx)(`aside`,{"data-slot":`aside-nav-shell-aside`,className:`aside-nav-shell--aside min-w-0`,children:(0,o.jsxs)(i.t,{padding:`default`,surface:`card`,className:t.cn(`aside-nav-shell--nav-card sticky top-[calc(var(--topbar-height)_+_1rem)]`,y),contentClassName:`grid gap-4`,children:[!!h&&(0,o.jsx)(`div`,{className:`aside-nav-shell--aside-header`,children:h}),(0,o.jsx)(`nav`,{"aria-label":w.navigationAriaLabel,className:`grid gap-4`,children:d.map(e=>(0,o.jsxs)(`div`,{className:`grid gap-1.5`,children:[!!e.label&&(0,o.jsx)(n.s,{size:`xs`,type:`secondary`,weight:`medium`,className:`px-2 uppercase tracking-normal`,children:e.label}),(0,o.jsx)(`div`,{className:`grid gap-0.5`,children:e.items.map(e=>{let i=e.icon,a=l(e,f,p),s=(0,o.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[!!i&&(0,o.jsx)(i,{className:t.cn(`size-4 shrink-0`,a?`text-primary`:`text-muted-foreground`)}),(0,o.jsxs)(`span`,{className:`grid min-w-0 flex-1 gap-0.5`,children:[(0,o.jsx)(n.s,{tag:`span`,weight:a?`semibold`:`medium`,className:`truncate`,children:e.label}),!!e.description&&(0,o.jsx)(n.s,{tag:`span`,size:`xs`,type:`secondary`,className:`truncate`,children:e.description})]}),!!e.badge&&(0,o.jsx)(r.t,{variant:a?`primary`:`secondary`,className:`shrink-0`,children:e.badge})]});return(0,o.jsx)(`div`,{onClick:()=>e.onSelect?.(e.id),children:T({href:e.href,children:s,active:a,disabled:e.disabled,external:e.external,className:t.cn(`aside-nav-shell--item flex min-w-0 rounded-md px-2 py-2 text-sm transition-colors`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40`,a?`bg-primary/8 text-foreground`:`text-muted-foreground hover:bg-muted/60 hover:text-foreground`,e.disabled&&`pointer-events-none opacity-50`),"aria-label":typeof e.label==`string`?e.label:void 0})},e.id)})})]},e.id))})]})}),(0,o.jsxs)(`div`,{"data-slot":`aside-nav-shell-main`,className:t.cn(`aside-nav-shell--main min-w-0 space-y-4`,b),children:[(c||u||g)&&(0,o.jsxs)(`header`,{className:`aside-nav-shell--header flex min-w-0 flex-col gap-3 sm:flex-row sm:items-start sm:justify-between`,children:[(0,o.jsxs)(`div`,{className:`min-w-0`,children:[!!c&&(0,o.jsx)(n.o,{tag:`h2`,className:`border-0 pb-0`,children:c}),!!u&&(0,o.jsx)(n.s,{type:`secondary`,className:`mt-1 max-w-3xl`,children:u})]}),!!g&&(0,o.jsx)(`div`,{className:`flex shrink-0 flex-wrap items-center gap-2`,children:g})]}),(0,o.jsx)(`div`,{"data-slot":`aside-nav-shell-content`,className:`aside-nav-shell--content min-w-0`,children:m}),!!_&&(0,o.jsx)(`footer`,{className:`aside-nav-shell--footer`,children:_})]})]})}var d=u;u.displayName=`AsideNavShell`,Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return u}});
2
+ //# sourceMappingURL=settings-AIgixHbB.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings-AIgixHbB.cjs","names":[],"sources":["../../src/components/layout/settings/settings.tsx"],"sourcesContent":["import type { ComponentType, ReactNode } from 'react';\n\nimport { Badge } from '@/components/base/badge';\nimport { SmartCard } from '@/components/base/cards';\nimport { Heading, Text } from '@/components/typography';\nimport { useStrings, type StringsProp } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport {\n\tresolveLayoutLinkRenderer,\n\ttype LayoutNavigationAdapter,\n} from '../layout.types';\n\nexport interface AsideNavShellStrings {\n\tnavigationAriaLabel: string;\n}\n\nexport const defaultAsideNavShellStrings: AsideNavShellStrings = {\n\tnavigationAriaLabel: 'Settings navigation',\n};\n\nexport interface AsideNavItem {\n\tid: string;\n\tlabel: ReactNode;\n\thref?: string;\n\tdescription?: ReactNode;\n\ticon?: ComponentType<{ className?: string }>;\n\tbadge?: ReactNode;\n\tdisabled?: boolean;\n\texternal?: boolean;\n\tonSelect?: (id: string) => void;\n}\n\nexport interface AsideNavGroup {\n\tid: string;\n\tlabel?: ReactNode;\n\titems: AsideNavItem[];\n}\n\nexport interface AsideNavShellProps extends LayoutNavigationAdapter {\n\ttitle?: ReactNode;\n\tdescription?: ReactNode;\n\tgroups: AsideNavGroup[];\n\tcurrentId?: string;\n\tcurrentPath?: string;\n\tchildren?: ReactNode;\n\taside?: ReactNode;\n\tactions?: ReactNode;\n\tfooter?: ReactNode;\n\tclassName?: string;\n\tnavClassName?: string;\n\tcontentClassName?: string;\n\tstrings?: StringsProp<AsideNavShellStrings>;\n}\n\nexport type SettingsShellProps = AsideNavShellProps;\n\nfunction normalizePath(rawUrl?: string): string {\n\tif (!rawUrl) return '';\n\ttry {\n\t\tconst baseOrigin = typeof window !== 'undefined' ? window.location.origin : 'http://localhost';\n\t\tconst parsed = new URL(rawUrl, baseOrigin);\n\t\tconst trimmed = parsed.pathname.replace(/\\/+$/, '');\n\t\treturn trimmed.length > 0 ? trimmed : '/';\n\t} catch {\n\t\tconst clean = rawUrl.split('?')[0] ?? rawUrl;\n\t\tconst trimmed = clean.replace(/\\/+$/, '');\n\t\treturn trimmed.length > 0 ? trimmed : '/';\n\t}\n}\n\nfunction isActiveItem(item: AsideNavItem, currentId?: string, currentPath?: string): boolean {\n\tif (currentId) return item.id === currentId;\n\tif (!currentPath || !item.href) return false;\n\tconst activePath = normalizePath(currentPath);\n\tconst itemPath = normalizePath(item.href);\n\treturn activePath === itemPath || activePath.startsWith(`${itemPath}/`);\n}\n\nexport function AsideNavShell({\n\ttitle,\n\tdescription,\n\tgroups,\n\tcurrentId,\n\tcurrentPath,\n\tchildren,\n\taside,\n\tactions,\n\tfooter,\n\tclassName,\n\tnavClassName,\n\tcontentClassName,\n\trenderLink,\n\tLinkComponent,\n\tstrings: stringsProp,\n}: AsideNavShellProps) {\n\tconst strings = useStrings(defaultAsideNavShellStrings, stringsProp);\n\tconst linkRenderer = resolveLayoutLinkRenderer({ renderLink, LinkComponent });\n\n\treturn (\n\t\t<section\n\t\t\tdata-component=\"aside-nav-shell\"\n\t\t\tdata-slot=\"aside-nav-shell\"\n\t\t\tclassName={cn('aside-nav-shell--component grid min-w-0 gap-5 lg:grid-cols-[17rem_minmax(0,1fr)]', className)}\n\t\t>\n\t\t\t<aside data-slot=\"aside-nav-shell-aside\" className=\"aside-nav-shell--aside min-w-0\">\n\t\t\t\t<SmartCard\n\t\t\t\t\tpadding=\"default\"\n\t\t\t\t\tsurface=\"card\"\n\t\t\t\t\tclassName={cn('aside-nav-shell--nav-card sticky top-[calc(var(--topbar-height)_+_1rem)]', navClassName)}\n\t\t\t\t\tcontentClassName=\"grid gap-4\"\n\t\t\t\t>\n\t\t\t\t\t{!!aside && <div className=\"aside-nav-shell--aside-header\">{aside}</div>}\n\t\t\t\t\t<nav aria-label={strings.navigationAriaLabel} className=\"grid gap-4\">\n\t\t\t\t\t\t{groups.map((group) => (\n\t\t\t\t\t\t\t<div key={group.id} className=\"grid gap-1.5\">\n\t\t\t\t\t\t\t\t{!!group.label && (\n\t\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\t\tsize=\"xs\"\n\t\t\t\t\t\t\t\t\t\ttype=\"secondary\"\n\t\t\t\t\t\t\t\t\t\tweight=\"medium\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"px-2 uppercase tracking-normal\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{group.label}\n\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t<div className=\"grid gap-0.5\">\n\t\t\t\t\t\t\t\t\t{group.items.map((item) => {\n\t\t\t\t\t\t\t\t\t\tconst Icon = item.icon;\n\t\t\t\t\t\t\t\t\t\tconst active = isActiveItem(item, currentId, currentPath);\n\t\t\t\t\t\t\t\t\t\tconst content = (\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"flex min-w-0 items-center gap-2\">\n\t\t\t\t\t\t\t\t\t\t\t\t{!!Icon && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'size-4 shrink-0',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tactive ? 'text-primary' : 'text-muted-foreground',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t<span className=\"grid min-w-0 flex-1 gap-0.5\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<Text tag=\"span\" weight={active ? 'semibold' : 'medium'} className=\"truncate\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{item.label}\n\t\t\t\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{!!item.description && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<Text tag=\"span\" size=\"xs\" type=\"secondary\" className=\"truncate\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{item.description}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t\t{!!item.badge && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<Badge variant={active ? 'primary' : 'secondary'} className=\"shrink-0\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{item.badge}\n\t\t\t\t\t\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<div key={item.id} onClick={() => item.onSelect?.(item.id)}>\n\t\t\t\t\t\t\t\t\t\t\t\t{linkRenderer({\n\t\t\t\t\t\t\t\t\t\t\t\t\thref: item.href,\n\t\t\t\t\t\t\t\t\t\t\t\t\tchildren: content,\n\t\t\t\t\t\t\t\t\t\t\t\t\tactive,\n\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled: item.disabled,\n\t\t\t\t\t\t\t\t\t\t\t\t\texternal: item.external,\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName: cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'aside-nav-shell--item flex min-w-0 rounded-md px-2 py-2 text-sm transition-colors',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tactive\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 'bg-primary/8 text-foreground'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: 'text-muted-foreground hover:bg-muted/60 hover:text-foreground',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\titem.disabled && 'pointer-events-none opacity-50',\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t'aria-label': typeof item.label === 'string' ? item.label : undefined,\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</nav>\n\t\t\t\t</SmartCard>\n\t\t\t</aside>\n\n\t\t\t<div data-slot=\"aside-nav-shell-main\" className={cn('aside-nav-shell--main min-w-0 space-y-4', contentClassName)}>\n\t\t\t\t{(title || description || actions) && (\n\t\t\t\t\t<header className=\"aside-nav-shell--header flex min-w-0 flex-col gap-3 sm:flex-row sm:items-start sm:justify-between\">\n\t\t\t\t\t\t<div className=\"min-w-0\">\n\t\t\t\t\t\t\t{!!title && <Heading tag=\"h2\" className=\"border-0 pb-0\">{title}</Heading>}\n\t\t\t\t\t\t\t{!!description && (\n\t\t\t\t\t\t\t\t<Text type=\"secondary\" className=\"mt-1 max-w-3xl\">\n\t\t\t\t\t\t\t\t\t{description}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t{!!actions && <div className=\"flex shrink-0 flex-wrap items-center gap-2\">{actions}</div>}\n\t\t\t\t\t</header>\n\t\t\t\t)}\n\t\t\t\t<div data-slot=\"aside-nav-shell-content\" className=\"aside-nav-shell--content min-w-0\">\n\t\t\t\t\t{children}\n\t\t\t\t</div>\n\t\t\t\t{!!footer && <footer className=\"aside-nav-shell--footer\">{footer}</footer>}\n\t\t\t</div>\n\t\t</section>\n\t);\n}\n\nexport const SettingsShell = AsideNavShell;\n\nAsideNavShell.displayName = 'AsideNavShell';\n"],"mappings":"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"}
@@ -0,0 +1,143 @@
1
+ import { useStrings as e } from "../lib/strings.js";
2
+ import { cn as t } from "../lib/utils.js";
3
+ import { o as n, s as r } from "./typography-C_kCoR1d.js";
4
+ import { t as i } from "./badge-DOJpEtsa.js";
5
+ import { t as a } from "./cards-B7voInTJ.js";
6
+ import { r as o } from "./layout.types-ip8BYRa7.js";
7
+ import { jsx as s, jsxs as c } from "react/jsx-runtime";
8
+ //#region src/components/layout/settings/settings.tsx
9
+ var l = { navigationAriaLabel: "Settings navigation" };
10
+ function u(e) {
11
+ if (!e) return "";
12
+ try {
13
+ let t = typeof window < "u" ? window.location.origin : "http://localhost", n = new URL(e, t).pathname.replace(/\/+$/, "");
14
+ return n.length > 0 ? n : "/";
15
+ } catch {
16
+ let t = (e.split("?")[0] ?? e).replace(/\/+$/, "");
17
+ return t.length > 0 ? t : "/";
18
+ }
19
+ }
20
+ function d(e, t, n) {
21
+ if (t) return e.id === t;
22
+ if (!n || !e.href) return !1;
23
+ let r = u(n), i = u(e.href);
24
+ return r === i || r.startsWith(`${i}/`);
25
+ }
26
+ function f({ title: u, description: f, groups: p, currentId: m, currentPath: h, children: g, aside: _, actions: v, footer: y, className: b, navClassName: x, contentClassName: S, renderLink: C, LinkComponent: w, strings: T }) {
27
+ let E = e(l, T), D = o({
28
+ renderLink: C,
29
+ LinkComponent: w
30
+ });
31
+ return /* @__PURE__ */ c("section", {
32
+ "data-component": "aside-nav-shell",
33
+ "data-slot": "aside-nav-shell",
34
+ className: t("aside-nav-shell--component grid min-w-0 gap-5 lg:grid-cols-[17rem_minmax(0,1fr)]", b),
35
+ children: [/* @__PURE__ */ s("aside", {
36
+ "data-slot": "aside-nav-shell-aside",
37
+ className: "aside-nav-shell--aside min-w-0",
38
+ children: /* @__PURE__ */ c(a, {
39
+ padding: "default",
40
+ surface: "card",
41
+ className: t("aside-nav-shell--nav-card sticky top-[calc(var(--topbar-height)_+_1rem)]", x),
42
+ contentClassName: "grid gap-4",
43
+ children: [!!_ && /* @__PURE__ */ s("div", {
44
+ className: "aside-nav-shell--aside-header",
45
+ children: _
46
+ }), /* @__PURE__ */ s("nav", {
47
+ "aria-label": E.navigationAriaLabel,
48
+ className: "grid gap-4",
49
+ children: p.map((e) => /* @__PURE__ */ c("div", {
50
+ className: "grid gap-1.5",
51
+ children: [!!e.label && /* @__PURE__ */ s(r, {
52
+ size: "xs",
53
+ type: "secondary",
54
+ weight: "medium",
55
+ className: "px-2 uppercase tracking-normal",
56
+ children: e.label
57
+ }), /* @__PURE__ */ s("div", {
58
+ className: "grid gap-0.5",
59
+ children: e.items.map((e) => {
60
+ let n = e.icon, a = d(e, m, h), o = /* @__PURE__ */ c("span", {
61
+ className: "flex min-w-0 items-center gap-2",
62
+ children: [
63
+ !!n && /* @__PURE__ */ s(n, { className: t("size-4 shrink-0", a ? "text-primary" : "text-muted-foreground") }),
64
+ /* @__PURE__ */ c("span", {
65
+ className: "grid min-w-0 flex-1 gap-0.5",
66
+ children: [/* @__PURE__ */ s(r, {
67
+ tag: "span",
68
+ weight: a ? "semibold" : "medium",
69
+ className: "truncate",
70
+ children: e.label
71
+ }), !!e.description && /* @__PURE__ */ s(r, {
72
+ tag: "span",
73
+ size: "xs",
74
+ type: "secondary",
75
+ className: "truncate",
76
+ children: e.description
77
+ })]
78
+ }),
79
+ !!e.badge && /* @__PURE__ */ s(i, {
80
+ variant: a ? "primary" : "secondary",
81
+ className: "shrink-0",
82
+ children: e.badge
83
+ })
84
+ ]
85
+ });
86
+ return /* @__PURE__ */ s("div", {
87
+ onClick: () => e.onSelect?.(e.id),
88
+ children: D({
89
+ href: e.href,
90
+ children: o,
91
+ active: a,
92
+ disabled: e.disabled,
93
+ external: e.external,
94
+ className: t("aside-nav-shell--item flex min-w-0 rounded-md px-2 py-2 text-sm transition-colors", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40", a ? "bg-primary/8 text-foreground" : "text-muted-foreground hover:bg-muted/60 hover:text-foreground", e.disabled && "pointer-events-none opacity-50"),
95
+ "aria-label": typeof e.label == "string" ? e.label : void 0
96
+ })
97
+ }, e.id);
98
+ })
99
+ })]
100
+ }, e.id))
101
+ })]
102
+ })
103
+ }), /* @__PURE__ */ c("div", {
104
+ "data-slot": "aside-nav-shell-main",
105
+ className: t("aside-nav-shell--main min-w-0 space-y-4", S),
106
+ children: [
107
+ (u || f || v) && /* @__PURE__ */ c("header", {
108
+ className: "aside-nav-shell--header flex min-w-0 flex-col gap-3 sm:flex-row sm:items-start sm:justify-between",
109
+ children: [/* @__PURE__ */ c("div", {
110
+ className: "min-w-0",
111
+ children: [!!u && /* @__PURE__ */ s(n, {
112
+ tag: "h2",
113
+ className: "border-0 pb-0",
114
+ children: u
115
+ }), !!f && /* @__PURE__ */ s(r, {
116
+ type: "secondary",
117
+ className: "mt-1 max-w-3xl",
118
+ children: f
119
+ })]
120
+ }), !!v && /* @__PURE__ */ s("div", {
121
+ className: "flex shrink-0 flex-wrap items-center gap-2",
122
+ children: v
123
+ })]
124
+ }),
125
+ /* @__PURE__ */ s("div", {
126
+ "data-slot": "aside-nav-shell-content",
127
+ className: "aside-nav-shell--content min-w-0",
128
+ children: g
129
+ }),
130
+ !!y && /* @__PURE__ */ s("footer", {
131
+ className: "aside-nav-shell--footer",
132
+ children: y
133
+ })
134
+ ]
135
+ })]
136
+ });
137
+ }
138
+ var p = f;
139
+ f.displayName = "AsideNavShell";
140
+ //#endregion
141
+ export { p as n, l as r, f as t };
142
+
143
+ //# sourceMappingURL=settings-D3KdypJk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings-D3KdypJk.js","names":[],"sources":["../../src/components/layout/settings/settings.tsx"],"sourcesContent":["import type { ComponentType, ReactNode } from 'react';\n\nimport { Badge } from '@/components/base/badge';\nimport { SmartCard } from '@/components/base/cards';\nimport { Heading, Text } from '@/components/typography';\nimport { useStrings, type StringsProp } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport {\n\tresolveLayoutLinkRenderer,\n\ttype LayoutNavigationAdapter,\n} from '../layout.types';\n\nexport interface AsideNavShellStrings {\n\tnavigationAriaLabel: string;\n}\n\nexport const defaultAsideNavShellStrings: AsideNavShellStrings = {\n\tnavigationAriaLabel: 'Settings navigation',\n};\n\nexport interface AsideNavItem {\n\tid: string;\n\tlabel: ReactNode;\n\thref?: string;\n\tdescription?: ReactNode;\n\ticon?: ComponentType<{ className?: string }>;\n\tbadge?: ReactNode;\n\tdisabled?: boolean;\n\texternal?: boolean;\n\tonSelect?: (id: string) => void;\n}\n\nexport interface AsideNavGroup {\n\tid: string;\n\tlabel?: ReactNode;\n\titems: AsideNavItem[];\n}\n\nexport interface AsideNavShellProps extends LayoutNavigationAdapter {\n\ttitle?: ReactNode;\n\tdescription?: ReactNode;\n\tgroups: AsideNavGroup[];\n\tcurrentId?: string;\n\tcurrentPath?: string;\n\tchildren?: ReactNode;\n\taside?: ReactNode;\n\tactions?: ReactNode;\n\tfooter?: ReactNode;\n\tclassName?: string;\n\tnavClassName?: string;\n\tcontentClassName?: string;\n\tstrings?: StringsProp<AsideNavShellStrings>;\n}\n\nexport type SettingsShellProps = AsideNavShellProps;\n\nfunction normalizePath(rawUrl?: string): string {\n\tif (!rawUrl) return '';\n\ttry {\n\t\tconst baseOrigin = typeof window !== 'undefined' ? window.location.origin : 'http://localhost';\n\t\tconst parsed = new URL(rawUrl, baseOrigin);\n\t\tconst trimmed = parsed.pathname.replace(/\\/+$/, '');\n\t\treturn trimmed.length > 0 ? trimmed : '/';\n\t} catch {\n\t\tconst clean = rawUrl.split('?')[0] ?? rawUrl;\n\t\tconst trimmed = clean.replace(/\\/+$/, '');\n\t\treturn trimmed.length > 0 ? trimmed : '/';\n\t}\n}\n\nfunction isActiveItem(item: AsideNavItem, currentId?: string, currentPath?: string): boolean {\n\tif (currentId) return item.id === currentId;\n\tif (!currentPath || !item.href) return false;\n\tconst activePath = normalizePath(currentPath);\n\tconst itemPath = normalizePath(item.href);\n\treturn activePath === itemPath || activePath.startsWith(`${itemPath}/`);\n}\n\nexport function AsideNavShell({\n\ttitle,\n\tdescription,\n\tgroups,\n\tcurrentId,\n\tcurrentPath,\n\tchildren,\n\taside,\n\tactions,\n\tfooter,\n\tclassName,\n\tnavClassName,\n\tcontentClassName,\n\trenderLink,\n\tLinkComponent,\n\tstrings: stringsProp,\n}: AsideNavShellProps) {\n\tconst strings = useStrings(defaultAsideNavShellStrings, stringsProp);\n\tconst linkRenderer = resolveLayoutLinkRenderer({ renderLink, LinkComponent });\n\n\treturn (\n\t\t<section\n\t\t\tdata-component=\"aside-nav-shell\"\n\t\t\tdata-slot=\"aside-nav-shell\"\n\t\t\tclassName={cn('aside-nav-shell--component grid min-w-0 gap-5 lg:grid-cols-[17rem_minmax(0,1fr)]', className)}\n\t\t>\n\t\t\t<aside data-slot=\"aside-nav-shell-aside\" className=\"aside-nav-shell--aside min-w-0\">\n\t\t\t\t<SmartCard\n\t\t\t\t\tpadding=\"default\"\n\t\t\t\t\tsurface=\"card\"\n\t\t\t\t\tclassName={cn('aside-nav-shell--nav-card sticky top-[calc(var(--topbar-height)_+_1rem)]', navClassName)}\n\t\t\t\t\tcontentClassName=\"grid gap-4\"\n\t\t\t\t>\n\t\t\t\t\t{!!aside && <div className=\"aside-nav-shell--aside-header\">{aside}</div>}\n\t\t\t\t\t<nav aria-label={strings.navigationAriaLabel} className=\"grid gap-4\">\n\t\t\t\t\t\t{groups.map((group) => (\n\t\t\t\t\t\t\t<div key={group.id} className=\"grid gap-1.5\">\n\t\t\t\t\t\t\t\t{!!group.label && (\n\t\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\t\tsize=\"xs\"\n\t\t\t\t\t\t\t\t\t\ttype=\"secondary\"\n\t\t\t\t\t\t\t\t\t\tweight=\"medium\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"px-2 uppercase tracking-normal\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{group.label}\n\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t<div className=\"grid gap-0.5\">\n\t\t\t\t\t\t\t\t\t{group.items.map((item) => {\n\t\t\t\t\t\t\t\t\t\tconst Icon = item.icon;\n\t\t\t\t\t\t\t\t\t\tconst active = isActiveItem(item, currentId, currentPath);\n\t\t\t\t\t\t\t\t\t\tconst content = (\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"flex min-w-0 items-center gap-2\">\n\t\t\t\t\t\t\t\t\t\t\t\t{!!Icon && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'size-4 shrink-0',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tactive ? 'text-primary' : 'text-muted-foreground',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t<span className=\"grid min-w-0 flex-1 gap-0.5\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<Text tag=\"span\" weight={active ? 'semibold' : 'medium'} className=\"truncate\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{item.label}\n\t\t\t\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{!!item.description && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<Text tag=\"span\" size=\"xs\" type=\"secondary\" className=\"truncate\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{item.description}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t\t{!!item.badge && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<Badge variant={active ? 'primary' : 'secondary'} className=\"shrink-0\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{item.badge}\n\t\t\t\t\t\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<div key={item.id} onClick={() => item.onSelect?.(item.id)}>\n\t\t\t\t\t\t\t\t\t\t\t\t{linkRenderer({\n\t\t\t\t\t\t\t\t\t\t\t\t\thref: item.href,\n\t\t\t\t\t\t\t\t\t\t\t\t\tchildren: content,\n\t\t\t\t\t\t\t\t\t\t\t\t\tactive,\n\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled: item.disabled,\n\t\t\t\t\t\t\t\t\t\t\t\t\texternal: item.external,\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName: cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'aside-nav-shell--item flex min-w-0 rounded-md px-2 py-2 text-sm transition-colors',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tactive\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 'bg-primary/8 text-foreground'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: 'text-muted-foreground hover:bg-muted/60 hover:text-foreground',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\titem.disabled && 'pointer-events-none opacity-50',\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t'aria-label': typeof item.label === 'string' ? item.label : undefined,\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</nav>\n\t\t\t\t</SmartCard>\n\t\t\t</aside>\n\n\t\t\t<div data-slot=\"aside-nav-shell-main\" className={cn('aside-nav-shell--main min-w-0 space-y-4', contentClassName)}>\n\t\t\t\t{(title || description || actions) && (\n\t\t\t\t\t<header className=\"aside-nav-shell--header flex min-w-0 flex-col gap-3 sm:flex-row sm:items-start sm:justify-between\">\n\t\t\t\t\t\t<div className=\"min-w-0\">\n\t\t\t\t\t\t\t{!!title && <Heading tag=\"h2\" className=\"border-0 pb-0\">{title}</Heading>}\n\t\t\t\t\t\t\t{!!description && (\n\t\t\t\t\t\t\t\t<Text type=\"secondary\" className=\"mt-1 max-w-3xl\">\n\t\t\t\t\t\t\t\t\t{description}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t{!!actions && <div className=\"flex shrink-0 flex-wrap items-center gap-2\">{actions}</div>}\n\t\t\t\t\t</header>\n\t\t\t\t)}\n\t\t\t\t<div data-slot=\"aside-nav-shell-content\" className=\"aside-nav-shell--content min-w-0\">\n\t\t\t\t\t{children}\n\t\t\t\t</div>\n\t\t\t\t{!!footer && <footer className=\"aside-nav-shell--footer\">{footer}</footer>}\n\t\t\t</div>\n\t\t</section>\n\t);\n}\n\nexport const SettingsShell = AsideNavShell;\n\nAsideNavShell.displayName = 'AsideNavShell';\n"],"mappings":"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"}