admin-ui-starter-kit 0.6.8 → 0.6.9

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 (962) hide show
  1. package/.agents/skills/component-library-rules/references/components/base__display-utilities.md +15 -8
  2. package/dist/_shared/ai-artifact-Cv8VBibf.cjs +3 -0
  3. package/dist/_shared/ai-artifact-Cv8VBibf.cjs.map +1 -0
  4. package/dist/_shared/ai-artifact-DwfXQuh4.js +1099 -0
  5. package/dist/_shared/ai-artifact-DwfXQuh4.js.map +1 -0
  6. package/dist/_shared/auth-Cz5ci18c.cjs +2 -0
  7. package/dist/_shared/auth-Cz5ci18c.cjs.map +1 -0
  8. package/dist/_shared/auth-DDWsgFUL.js +643 -0
  9. package/dist/_shared/auth-DDWsgFUL.js.map +1 -0
  10. package/dist/_shared/badge-C65rt1M9.cjs +2 -0
  11. package/dist/_shared/badge-C65rt1M9.cjs.map +1 -0
  12. package/dist/_shared/badge-r8ae66Vd.js +110 -0
  13. package/dist/_shared/badge-r8ae66Vd.js.map +1 -0
  14. package/dist/_shared/comments-DAzpeuQq.cjs +2 -0
  15. package/dist/_shared/comments-DAzpeuQq.cjs.map +1 -0
  16. package/dist/_shared/comments-DzZaKP9x.js +952 -0
  17. package/dist/_shared/comments-DzZaKP9x.js.map +1 -0
  18. package/dist/_shared/data-display-DQUUEzCx.cjs +2 -0
  19. package/dist/_shared/data-display-DQUUEzCx.cjs.map +1 -0
  20. package/dist/_shared/data-display-LlvMEFTK.js +1878 -0
  21. package/dist/_shared/data-display-LlvMEFTK.js.map +1 -0
  22. package/dist/_shared/date-picker-CrC-lHyF.cjs +2 -0
  23. package/dist/_shared/date-picker-CrC-lHyF.cjs.map +1 -0
  24. package/dist/_shared/date-picker-DbYBek-b.js +1361 -0
  25. package/dist/_shared/date-picker-DbYBek-b.js.map +1 -0
  26. package/dist/_shared/date-pickers-9AU8YQK2.js +329 -0
  27. package/dist/_shared/date-pickers-9AU8YQK2.js.map +1 -0
  28. package/dist/_shared/date-pickers-DUEwCWig.cjs +2 -0
  29. package/dist/_shared/date-pickers-DUEwCWig.cjs.map +1 -0
  30. package/dist/_shared/display-BqoPOdof.cjs +2 -0
  31. package/dist/_shared/display-BqoPOdof.cjs.map +1 -0
  32. package/dist/_shared/display-CQoSwU74.js +986 -0
  33. package/dist/_shared/display-CQoSwU74.js.map +1 -0
  34. package/dist/_shared/forms-CNh-S9FK.cjs +2 -0
  35. package/dist/_shared/forms-CNh-S9FK.cjs.map +1 -0
  36. package/dist/_shared/forms-DIz3SCA9.js +3534 -0
  37. package/dist/_shared/forms-DIz3SCA9.js.map +1 -0
  38. package/dist/_shared/header-Bs61tQla.js +447 -0
  39. package/dist/_shared/header-Bs61tQla.js.map +1 -0
  40. package/dist/_shared/header-D01oOxna.cjs +2 -0
  41. package/dist/_shared/header-D01oOxna.cjs.map +1 -0
  42. package/dist/_shared/hooks-ACnpaIli.js +95 -0
  43. package/dist/_shared/hooks-ACnpaIli.js.map +1 -0
  44. package/dist/_shared/hooks-B7khuHkk.cjs +2 -0
  45. package/dist/_shared/hooks-B7khuHkk.cjs.map +1 -0
  46. package/dist/_shared/layout-CGi5w1mo.js +268 -0
  47. package/dist/_shared/layout-CGi5w1mo.js.map +1 -0
  48. package/dist/_shared/layout-ccVwjUG8.cjs +2 -0
  49. package/dist/_shared/layout-ccVwjUG8.cjs.map +1 -0
  50. package/dist/_shared/mentions-Cg_4vFxd.cjs +2 -0
  51. package/dist/_shared/mentions-Cg_4vFxd.cjs.map +1 -0
  52. package/dist/_shared/mentions-Ci9RFTfw.js +506 -0
  53. package/dist/_shared/mentions-Ci9RFTfw.js.map +1 -0
  54. package/dist/_shared/navigation-C1QN2-Vq.cjs +2 -0
  55. package/dist/_shared/navigation-C1QN2-Vq.cjs.map +1 -0
  56. package/dist/_shared/navigation-CMrLO8v5.js +436 -0
  57. package/dist/_shared/navigation-CMrLO8v5.js.map +1 -0
  58. package/dist/_shared/separator-BXn_fnly.cjs +2 -0
  59. package/dist/_shared/separator-BXn_fnly.cjs.map +1 -0
  60. package/dist/_shared/separator-DiH-j--f.js +20 -0
  61. package/dist/_shared/separator-DiH-j--f.js.map +1 -0
  62. package/dist/_shared/settings-CgtcSI8L.js +143 -0
  63. package/dist/_shared/settings-CgtcSI8L.js.map +1 -0
  64. package/dist/_shared/settings-csNmeT7b.cjs +2 -0
  65. package/dist/_shared/settings-csNmeT7b.cjs.map +1 -0
  66. package/dist/_shared/sidebar-DyGIcJd9.cjs +2 -0
  67. package/dist/_shared/sidebar-DyGIcJd9.cjs.map +1 -0
  68. package/dist/_shared/sidebar-OT-xIguQ.js +548 -0
  69. package/dist/_shared/sidebar-OT-xIguQ.js.map +1 -0
  70. package/dist/_shared/table-BVWemr79.cjs +2 -0
  71. package/dist/_shared/table-BVWemr79.cjs.map +1 -0
  72. package/dist/_shared/table-WYSjfQRr.js +1377 -0
  73. package/dist/_shared/table-WYSjfQRr.js.map +1 -0
  74. package/dist/_shared/workspace-BkwsqTrc.cjs +2 -0
  75. package/dist/_shared/workspace-BkwsqTrc.cjs.map +1 -0
  76. package/dist/_shared/workspace-DpU1YG1t.js +357 -0
  77. package/dist/_shared/workspace-DpU1YG1t.js.map +1 -0
  78. package/dist/components/base/badge/index.cjs +1 -1
  79. package/dist/components/base/badge/index.js +1 -1
  80. package/dist/components/base/date-pickers/index.cjs +1 -1
  81. package/dist/components/base/date-pickers/index.js +2 -2
  82. package/dist/components/base/display/index.cjs +1 -1
  83. package/dist/components/base/display/index.js +2 -2
  84. package/dist/components/base/display/separator.d.ts +10 -1
  85. package/dist/components/base/display/separator.d.ts.map +1 -1
  86. package/dist/components/base/event-calendar/index.cjs +1 -1
  87. package/dist/components/base/event-calendar/index.js +1 -1
  88. package/dist/components/base/forms/index.cjs +1 -1
  89. package/dist/components/base/forms/index.js +2 -2
  90. package/dist/components/base/navigation/index.cjs +1 -1
  91. package/dist/components/base/navigation/index.js +1 -1
  92. package/dist/components/base/table/index.cjs +1 -1
  93. package/dist/components/base/table/index.js +1 -1
  94. package/dist/components/composed/admin/index.cjs +1 -1
  95. package/dist/components/composed/admin/index.js +3 -3
  96. package/dist/components/composed/ai/index.cjs +1 -1
  97. package/dist/components/composed/ai/index.js +4 -4
  98. package/dist/components/composed/cards/index.cjs +1 -1
  99. package/dist/components/composed/cards/index.js +3 -3
  100. package/dist/components/composed/commerce/index.cjs +1 -1
  101. package/dist/components/composed/commerce/index.js +4 -4
  102. package/dist/components/composed/dark-surfaces/index.cjs +1 -1
  103. package/dist/components/composed/dark-surfaces/index.js +2 -2
  104. package/dist/components/composed/data-display/index.cjs +1 -1
  105. package/dist/components/composed/data-display/index.js +1 -1
  106. package/dist/components/composed/navigation/index.cjs +1 -1
  107. package/dist/components/composed/navigation/index.js +1 -1
  108. package/dist/components/composed/timelines/index.cjs +1 -1
  109. package/dist/components/composed/timelines/index.js +1 -1
  110. package/dist/components/features/activities/index.cjs +1 -1
  111. package/dist/components/features/activities/index.js +1 -1
  112. package/dist/components/features/ai-chat/index.cjs +1 -1
  113. package/dist/components/features/ai-chat/index.js +2 -2
  114. package/dist/components/features/comments/index.cjs +1 -1
  115. package/dist/components/features/comments/index.js +2 -2
  116. package/dist/components/features/event-log/index.cjs +1 -1
  117. package/dist/components/features/event-log/index.js +2 -2
  118. package/dist/components/features/filters/index.cjs +1 -1
  119. package/dist/components/features/filters/index.js +2 -2
  120. package/dist/components/features/global-search/index.cjs +1 -1
  121. package/dist/components/features/global-search/index.js +1 -1
  122. package/dist/components/features/media-library/index.cjs +1 -1
  123. package/dist/components/features/media-library/index.js +3 -3
  124. package/dist/components/features/mentions/index.cjs +1 -1
  125. package/dist/components/features/mentions/index.js +1 -1
  126. package/dist/components/features/products/index.cjs +1 -1
  127. package/dist/components/features/products/index.js +5 -5
  128. package/dist/components/features/resource/index.cjs +1 -1
  129. package/dist/components/features/resource/index.js +2 -2
  130. package/dist/components/features/schema-form/index.cjs +1 -1
  131. package/dist/components/features/schema-form/index.js +2 -2
  132. package/dist/components/layout/auth/index.cjs +1 -1
  133. package/dist/components/layout/auth/index.js +1 -1
  134. package/dist/components/layout/header/index.cjs +1 -1
  135. package/dist/components/layout/header/index.js +1 -1
  136. package/dist/components/layout/hooks/index.cjs +1 -1
  137. package/dist/components/layout/hooks/index.js +1 -1
  138. package/dist/components/layout/index.cjs +1 -1
  139. package/dist/components/layout/index.js +7 -7
  140. package/dist/components/layout/page/index.cjs +1 -1
  141. package/dist/components/layout/page/index.js +1 -1
  142. package/dist/components/layout/settings/index.cjs +1 -1
  143. package/dist/components/layout/settings/index.js +1 -1
  144. package/dist/components/layout/sidebar/index.cjs +1 -1
  145. package/dist/components/layout/sidebar/index.js +2 -2
  146. package/dist/components/layout/workspace/index.cjs +1 -1
  147. package/dist/components/layout/workspace/index.js +1 -1
  148. package/dist/showcase/assets/AreaChart-DxDBymDt.js +6 -0
  149. package/dist/showcase/assets/CompositeItem-owAA4Ah3.js +1 -0
  150. package/dist/showcase/assets/CompositeRoot-DzHTtLBs.js +1 -0
  151. package/dist/showcase/assets/DialogTrigger-OUBMI353.js +1 -0
  152. package/dist/showcase/assets/LabelableContext-Cd9Gf7TR.js +1 -0
  153. package/dist/showcase/assets/PreviewLayout-X_NxjYOV.js +1 -0
  154. package/dist/showcase/assets/RadioGroup-BzveyiIV.js +1 -0
  155. package/dist/showcase/assets/ScrollAreaCorner-IZFF348L.js +1 -0
  156. package/dist/showcase/assets/Separator-CSYYEo-X.js +1 -0
  157. package/dist/showcase/assets/ToolbarRootContext-BYSKM0e8.js +1 -0
  158. package/dist/showcase/assets/accordion-B9VkLXiy.js +171 -0
  159. package/dist/showcase/assets/accordion-variants-g7lk5hEX.js +1 -0
  160. package/dist/showcase/assets/action-menu-CWIvuiLO.js +1 -0
  161. package/dist/showcase/assets/actions-BuwzXYEF.js +310 -0
  162. package/dist/showcase/assets/activities-BTBlr1G4.js +500 -0
  163. package/dist/showcase/assets/activities-feed-card-C5lcwUFk.js +1 -0
  164. package/dist/showcase/assets/admin-kbK6nUjx.js +140 -0
  165. package/dist/showcase/assets/ai-CKu9EGmA.js +207 -0
  166. package/dist/showcase/assets/ai-artifact-Bg1MFGeF.js +2 -0
  167. package/dist/showcase/assets/ai-chat-DEntRhJD.js +568 -0
  168. package/dist/showcase/assets/ai-elements-DyKRCWiS.js +387 -0
  169. package/dist/showcase/assets/ai-tool-call-DFrTelEX.js +1 -0
  170. package/dist/showcase/assets/alert-C0wSpBYn.js +93 -0
  171. package/dist/showcase/assets/alert-CZ4rgwPr.js +62 -0
  172. package/dist/showcase/assets/alert-WTKIdE4s.js +1 -0
  173. package/dist/showcase/assets/api-key-list-BnrUT9Uf.js +1 -0
  174. package/dist/showcase/assets/api-key-list-bQ6QzFhA.js +73 -0
  175. package/dist/showcase/assets/app-sidebar-B3veRbac.js +1 -0
  176. package/dist/showcase/assets/arrow-down-CEXJx115.js +1 -0
  177. package/dist/showcase/assets/arrow-left-Ca6ri5q0.js +1 -0
  178. package/dist/showcase/assets/arrow-right-a3STqWgx.js +1 -0
  179. package/dist/showcase/assets/arrow-up-CCU1MaGq.js +1 -0
  180. package/dist/showcase/assets/arrow-up-right-BDImqvM2.js +1 -0
  181. package/dist/showcase/assets/avatar-Bwgai0SK.js +67 -0
  182. package/dist/showcase/assets/avatar-DSmL52Us.js +57 -0
  183. package/dist/showcase/assets/avatar-kK9n1a25.js +1 -0
  184. package/dist/showcase/assets/avatar-nb7MgV_x.js +1 -0
  185. package/dist/showcase/assets/badge-CTGPRSXm.js +31 -0
  186. package/dist/showcase/assets/badge-check-zqoYYrVj.js +1 -0
  187. package/dist/showcase/assets/bell-D7HWGStL.js +1 -0
  188. package/dist/showcase/assets/boolean-indicator-CqwlV0cf.js +1 -0
  189. package/dist/showcase/assets/bot-Owx4SMiU.js +1 -0
  190. package/dist/showcase/assets/box-BeeoLlMd.js +1 -0
  191. package/dist/showcase/assets/braces-fzrExVIx.js +1 -0
  192. package/dist/showcase/assets/brain-Da2fsBjd.js +1 -0
  193. package/dist/showcase/assets/brand-Bo6uwdGf.js +36 -0
  194. package/dist/showcase/assets/breadcrumb-B-K-6dtd.js +1 -0
  195. package/dist/showcase/assets/breadcrumb-B6lR9Cq2.js +52 -0
  196. package/dist/showcase/assets/breadcrumbs-Bamog6P5.js +1 -0
  197. package/dist/showcase/assets/briefcase-DQjbh28E.js +1 -0
  198. package/dist/showcase/assets/building-2-DaQW5yJa.js +1 -0
  199. package/dist/showcase/assets/button-D3skvyQS.js +44 -0
  200. package/dist/showcase/assets/button-group-BYtbrhme.js +1 -0
  201. package/dist/showcase/assets/buttons-B3IkMmNQ.js +272 -0
  202. package/dist/showcase/assets/calendar-C4fCDK3O.js +1 -0
  203. package/dist/showcase/assets/calendar-CcwkVxCK.js +16 -0
  204. package/dist/showcase/assets/calendar-DBkwxV9H.js +1 -0
  205. package/dist/showcase/assets/calendar-days-BWed1W3Z.js +1 -0
  206. package/dist/showcase/assets/camera-BUoAyoZT.js +1 -0
  207. package/dist/showcase/assets/card-7DBPqWuv.js +1 -0
  208. package/dist/showcase/assets/card-ClwyNDHJ.js +188 -0
  209. package/dist/showcase/assets/card-primitives-BE1YpEQW.js +1 -0
  210. package/dist/showcase/assets/card-radio-group-1NMbocuG.js +1 -0
  211. package/dist/showcase/assets/cards-Bu8uaGSU.js +354 -0
  212. package/dist/showcase/assets/carousel-dTTRRSQg.js +449 -0
  213. package/dist/showcase/assets/cell-renderers-CcyBuUsC.js +1 -0
  214. package/dist/showcase/assets/chart-BSboeIO6.js +358 -0
  215. package/dist/showcase/assets/chart-column-CCzA6B9l.js +1 -0
  216. package/dist/showcase/assets/checkbox-CSdEPNT5.js +1 -0
  217. package/dist/showcase/assets/checkbox-CqNLi9Q3.js +1 -0
  218. package/dist/showcase/assets/chevron-down-C91gNQdT.js +1 -0
  219. package/dist/showcase/assets/chevron-left-SiAoYFSo.js +1 -0
  220. package/dist/showcase/assets/chevron-up-Beb1_ET_.js +1 -0
  221. package/dist/showcase/assets/chevrons-up-down-DaST4VKL.js +1 -0
  222. package/dist/showcase/assets/circle-D9KiRp8C.js +1 -0
  223. package/dist/showcase/assets/circle-alert-BQkAwFkl.js +1 -0
  224. package/dist/showcase/assets/circle-check-big-CN5YOJqq.js +1 -0
  225. package/dist/showcase/assets/circle-check-dqmKTiDe.js +1 -0
  226. package/dist/showcase/assets/circle-dot-B7LPN_0V.js +1 -0
  227. package/dist/showcase/assets/circle-question-mark-yTRkQO3d.js +1 -0
  228. package/dist/showcase/assets/circle-x-CW2dFcX-.js +1 -0
  229. package/dist/showcase/assets/clock-3-CXJ_JotW.js +1 -0
  230. package/dist/showcase/assets/clock-DUqvfazQ.js +1 -0
  231. package/dist/showcase/assets/code-xml-BmdQDeID.js +1 -0
  232. package/dist/showcase/assets/collapsible-C-WYhJxn.js +1 -0
  233. package/dist/showcase/assets/collapsible-CL37AlCX.js +27 -0
  234. package/dist/showcase/assets/collapsible-uGO5Rj8q.js +1 -0
  235. package/dist/showcase/assets/combobox-CFh5kUzj.js +685 -0
  236. package/dist/showcase/assets/command-CtpLaHjh.js +1 -0
  237. package/dist/showcase/assets/command-DSlK-QAE.js +1 -0
  238. package/dist/showcase/assets/comment-composer-Rr_a5tZQ.js +1 -0
  239. package/dist/showcase/assets/comment-item-Dme2o2KI.js +1 -0
  240. package/dist/showcase/assets/comments-CW2nz465.js +357 -0
  241. package/dist/showcase/assets/commerce-bwcq6oPn.js +267 -0
  242. package/dist/showcase/assets/composite-DMIR0vmP.js +1 -0
  243. package/dist/showcase/assets/conditional-rendering-Bk6AC76c.js +1 -0
  244. package/dist/showcase/assets/contact-card-BCXS9tWq.js +65 -0
  245. package/dist/showcase/assets/content-container-b1dC2caJ.js +1 -0
  246. package/dist/showcase/assets/copyable-BIABx-Vv.js +96 -0
  247. package/dist/showcase/assets/copyable-Ic9wzVaj.js +1 -0
  248. package/dist/showcase/assets/course-card-Bo5P3TYv.js +77 -0
  249. package/dist/showcase/assets/cpu-_VqU6yRO.js +1 -0
  250. package/dist/showcase/assets/credit-card-BbxO8xLo.js +1 -0
  251. package/dist/showcase/assets/css-variables-zqpBgnS1.js +1205 -0
  252. package/dist/showcase/assets/currency-Cjvt4F0b.js +149 -0
  253. package/dist/showcase/assets/dark-surfaces-CLwERt1f.js +90 -0
  254. package/dist/showcase/assets/data-view-AtyUp7b-.js +124 -0
  255. package/dist/showcase/assets/data-view-cnEmgP1C.js +4 -0
  256. package/dist/showcase/assets/database-TbVXEw7v.js +1 -0
  257. package/dist/showcase/assets/date-block-CDHemKnP.js +1 -0
  258. package/dist/showcase/assets/date-block-COb89Y_-.js +1 -0
  259. package/dist/showcase/assets/date-picker-CK8llBIN.js +1 -0
  260. package/dist/showcase/assets/date-pickers-DFfDnW9w.js +73 -0
  261. package/dist/showcase/assets/dense-info-CaFVDE90.js +106 -0
  262. package/dist/showcase/assets/design-system-consistency-CeSMuTuu.js +264 -0
  263. package/dist/showcase/assets/dialog-CRQNEK2K.js +1 -0
  264. package/dist/showcase/assets/dialog-CsCLDb0G.js +1 -0
  265. package/dist/showcase/assets/dialog-Qh3EHEKq.js +1 -0
  266. package/dist/showcase/assets/display-utilities-rP3hb4FK.js +4 -0
  267. package/dist/showcase/assets/display-utilities.examples-BwbvHOcx.js +309 -0
  268. package/dist/showcase/assets/dist-CbqRct9s.js +1 -0
  269. package/dist/showcase/assets/dist-iivamCjp.js +45 -0
  270. package/dist/showcase/assets/dollar-sign-COaRmdJE.js +1 -0
  271. package/dist/showcase/assets/download-yCcb4rfH.js +1 -0
  272. package/dist/showcase/assets/dropdown-menu-KoFNw-fX.js +1 -0
  273. package/dist/showcase/assets/dropzone-DLguWnmu.js +1 -0
  274. package/dist/showcase/assets/earth-TDRqTA4S.js +1 -0
  275. package/dist/showcase/assets/ellipsis-Q_fBbRE9.js +1 -0
  276. package/dist/showcase/assets/ellipsis-vertical-Bh8t3Z1g.js +1 -0
  277. package/dist/showcase/assets/empty-DvmDTSAj.js +1 -0
  278. package/dist/showcase/assets/empty-item-C3HP5nuw.js +49 -0
  279. package/dist/showcase/assets/empty-state-Dcin4cOt.js +190 -0
  280. package/dist/showcase/assets/empty-state-IV_GTNEI.js +1 -0
  281. package/dist/showcase/assets/enhanced-activities-BLf2gpes.js +357 -0
  282. package/dist/showcase/assets/enhanced-combobox-ClZcVnhv.js +1 -0
  283. package/dist/showcase/assets/esm-Cf6QQstQ.js +2 -0
  284. package/dist/showcase/assets/event-calendar-zrfI_3AM.js +138 -0
  285. package/dist/showcase/assets/event-log-D-_CViAw.js +330 -0
  286. package/dist/showcase/assets/example-6bZGEb3-.js +1 -0
  287. package/dist/showcase/assets/external-link-7ldgjHZM.js +1 -0
  288. package/dist/showcase/assets/eye-pXVkim6z.js +1 -0
  289. package/dist/showcase/assets/feature-announcement-CFcGj3ge.js +34 -0
  290. package/dist/showcase/assets/file-Bn9sAGaT.js +1 -0
  291. package/dist/showcase/assets/file-text-Cvxg6pjh.js +1 -0
  292. package/dist/showcase/assets/filter-layout-DqNRRzDU.js +1 -0
  293. package/dist/showcase/assets/filters-CQMI_T63.js +139 -0
  294. package/dist/showcase/assets/flag-vI_WJ-BU.js +1 -0
  295. package/dist/showcase/assets/folder-open-0AyKSRQS.js +1 -0
  296. package/dist/showcase/assets/form-field-BaBeXn7a.js +1 -0
  297. package/dist/showcase/assets/format-DLLMyN-3.js +1 -0
  298. package/dist/showcase/assets/forms-gPD-Caru.js +915 -0
  299. package/dist/showcase/assets/funnel-Ca9nWMHm.js +1 -0
  300. package/dist/showcase/assets/generic-AAssz0h7.js +1 -0
  301. package/dist/showcase/assets/getPseudoElementBounds-fbxSMOsb.js +1 -0
  302. package/dist/showcase/assets/gift-BC42Oxfz.js +1 -0
  303. package/dist/showcase/assets/giftcard-cards-CFKnYe0c.js +85 -0
  304. package/dist/showcase/assets/git-branch-B-nF8w-J.js +1 -0
  305. package/dist/showcase/assets/global-search-D6Gxw0G3.js +1 -0
  306. package/dist/showcase/assets/global-search-jsb_4idg.js +215 -0
  307. package/dist/showcase/assets/globe-C92uBSrO.js +1 -0
  308. package/dist/showcase/assets/gradient-card-D4ly60sD.js +58 -0
  309. package/dist/showcase/assets/hash-BShTbxlR.js +1 -0
  310. package/dist/showcase/assets/header-CSiNqg9Q.js +1 -0
  311. package/dist/showcase/assets/header-notifications-CpHeFPQF.js +1 -0
  312. package/dist/showcase/assets/heart-B3hXs7fr.js +1 -0
  313. package/dist/showcase/assets/hooks-CamAqFFh.js +220 -0
  314. package/dist/showcase/assets/house-4_CouE-Y.js +1 -0
  315. package/dist/showcase/assets/icon-badge-CePIZqWR.js +1 -0
  316. package/dist/showcase/assets/icon-badge-DSbvvnxh.js +37 -0
  317. package/dist/showcase/assets/image-BxbFIbVJ.js +1 -0
  318. package/dist/showcase/assets/inbox-BXab1SM6.js +1 -0
  319. package/dist/showcase/assets/index-BPUtPJjB.css +2 -0
  320. package/dist/showcase/assets/index-BjjNfnhP.js +10 -0
  321. package/dist/showcase/assets/inertValue-CZOzgsmF.js +1 -0
  322. package/dist/showcase/assets/info-DzqwCq93.js +1 -0
  323. package/dist/showcase/assets/inline-stat-D5ybpUh-.js +15 -0
  324. package/dist/showcase/assets/inline-stat-Dq34wv-6.js +1 -0
  325. package/dist/showcase/assets/input-C8OfUHCK.js +1 -0
  326. package/dist/showcase/assets/input-D34Ge3rh.js +1 -0
  327. package/dist/showcase/assets/input-group-BCPZ6Pwq.js +1 -0
  328. package/dist/showcase/assets/input-group-CySTANka.js +47 -0
  329. package/dist/showcase/assets/inputs-CnmHo_lj.js +155 -0
  330. package/dist/showcase/assets/installation-BPvseS46.js +134 -0
  331. package/dist/showcase/assets/invoice-header-C9JjJWQX.js +36 -0
  332. package/dist/showcase/assets/invoice-items-DB8tbCv9.js +36 -0
  333. package/dist/showcase/assets/invoice-mini-Q_PnimKL.js +14 -0
  334. package/dist/showcase/assets/invoice-table-CLDvpLib.js +30 -0
  335. package/dist/showcase/assets/isSameDay-D8bDebyL.js +1 -0
  336. package/dist/showcase/assets/isToday-XVjRuMtp.js +1 -0
  337. package/dist/showcase/assets/italic-Cm13b8qb.js +1 -0
  338. package/dist/showcase/assets/item-C07859JQ.js +1 -0
  339. package/dist/showcase/assets/item-LinnMxvu.js +1 -0
  340. package/dist/showcase/assets/item-i7ZUMs5t.js +140 -0
  341. package/dist/showcase/assets/kanban-CIMTpuN5.js +188 -0
  342. package/dist/showcase/assets/key-round-Bh7EzOyR.js +1 -0
  343. package/dist/showcase/assets/label-C3A4CjeG.js +1 -0
  344. package/dist/showcase/assets/languages-C37jhetw.js +1 -0
  345. package/dist/showcase/assets/layers-Lyr6p-Nt.js +1 -0
  346. package/dist/showcase/assets/layout-app-shell-BWAkl9gq.js +608 -0
  347. package/dist/showcase/assets/layout-auth-y1alnhc8.js +790 -0
  348. package/dist/showcase/assets/layout-containers-B6c-uvil.js +101 -0
  349. package/dist/showcase/assets/layout-header-DNhJHWNw.js +203 -0
  350. package/dist/showcase/assets/layout-page-CXU7CnQK.js +315 -0
  351. package/dist/showcase/assets/layout-primitives-StuFwfwh.js +34 -0
  352. package/dist/showcase/assets/layout-sidebar-D-QjnZPh.js +224 -0
  353. package/dist/showcase/assets/layout-users-D7KMzs3-.js +117 -0
  354. package/dist/showcase/assets/layout-workspace-Butr7CL5.js +191 -0
  355. package/dist/showcase/assets/lib-D5nOMXIt.js +1 -0
  356. package/dist/showcase/assets/list-checks-Cg9HZf4W.js +1 -0
  357. package/dist/showcase/assets/lock-Da21HhQx.js +1 -0
  358. package/dist/showcase/assets/lock-keyhole-DNTfa9e3.js +1 -0
  359. package/dist/showcase/assets/mail-Bamky-ti.js +1 -0
  360. package/dist/showcase/assets/mail-check-BfVYPC42.js +1 -0
  361. package/dist/showcase/assets/map-BTlWnRAQ.js +124 -0
  362. package/dist/showcase/assets/map-pin-BU2RBuvC.js +1 -0
  363. package/dist/showcase/assets/media-library-DJxgoGAF.js +699 -0
  364. package/dist/showcase/assets/mention-inline-suggestions-CbXVAvbK.js +1 -0
  365. package/dist/showcase/assets/mentions-kMT-Z3qU.js +138 -0
  366. package/dist/showcase/assets/menus-bhp_n9PT.js +171 -0
  367. package/dist/showcase/assets/message-square-DC5Bb9Zs.js +1 -0
  368. package/dist/showcase/assets/metadata-list-DGr729EW.js +286 -0
  369. package/dist/showcase/assets/metadata-list-DyjhZi6d.js +1 -0
  370. package/dist/showcase/assets/metric-DRDok6Ci.js +1 -0
  371. package/dist/showcase/assets/metric-bar-DZsH4Q3U.js +1 -0
  372. package/dist/showcase/assets/metric-grid-BlFXTrid.js +1 -0
  373. package/dist/showcase/assets/metric-trend-chip-oEihbEK8.js +1 -0
  374. package/dist/showcase/assets/metrics-analytics-bar-BovaXHQX.js +44 -0
  375. package/dist/showcase/assets/metrics-analytics-cards-CeX9Skmd.js +50 -0
  376. package/dist/showcase/assets/metrics-comparison-DFPSmREl.js +76 -0
  377. package/dist/showcase/assets/metrics-heatmap-CXzfZwe_.js +27 -0
  378. package/dist/showcase/assets/metrics-inline-badge-DQJaNpYH.js +17 -0
  379. package/dist/showcase/assets/metrics-kpi-row-BIpv8CPU.js +31 -0
  380. package/dist/showcase/assets/metrics-micro-grid-EOCkRI5Z.js +42 -0
  381. package/dist/showcase/assets/metrics-overview-BD4s9H2T.js +192 -0
  382. package/dist/showcase/assets/metrics-stat-cards-t7asN5nA.js +54 -0
  383. package/dist/showcase/assets/minus-Dr1iTc_q.js +1 -0
  384. package/dist/showcase/assets/money-display-B5_VqQC0.js +1 -0
  385. package/dist/showcase/assets/money-display-bU2_cVGX.js +1 -0
  386. package/dist/showcase/assets/month-year-picker-DVRuYbLm.js +1 -0
  387. package/dist/showcase/assets/navigation-DBKvJoe-.js +231 -0
  388. package/dist/showcase/assets/navigation-DOhfmtgy.js +90 -0
  389. package/dist/showcase/assets/navigation-extras-BkO2TZP7.js +43 -0
  390. package/dist/showcase/assets/notification-banner-CE1Ei_ZT.js +1 -0
  391. package/dist/showcase/assets/onboarding-checklist-Bf0aoBoa.js +119 -0
  392. package/dist/showcase/assets/overflow-tab-bar-B2RXtyMP.js +1 -0
  393. package/dist/showcase/assets/overlays-4E_sUgkz.js +408 -0
  394. package/dist/showcase/assets/overlays-ulNl-Vhr.js +159 -0
  395. package/dist/showcase/assets/overview-CgymfIBq.js +184 -0
  396. package/dist/showcase/assets/package-CADuUP1u.js +1 -0
  397. package/dist/showcase/assets/package-check-O7MD6XE_.js +1 -0
  398. package/dist/showcase/assets/page-GB6OIgID.js +1 -0
  399. package/dist/showcase/assets/page-action-button-Dpprot7y.js +1 -0
  400. package/dist/showcase/assets/page-header-2VEUPx67.js +1 -0
  401. package/dist/showcase/assets/pagination-BBuRtAX9.js +1 -0
  402. package/dist/showcase/assets/pagination-C4mt4Q4l.js +42 -0
  403. package/dist/showcase/assets/paperclip-Cmyh3Bhf.js +1 -0
  404. package/dist/showcase/assets/password-input-CgZj1niQ.js +1 -0
  405. package/dist/showcase/assets/pencil-CtdXjogr.js +1 -0
  406. package/dist/showcase/assets/phone-CAFMH1vV.js +1 -0
  407. package/dist/showcase/assets/placeholder-pattern-DHKm-uYV.js +1 -0
  408. package/dist/showcase/assets/plus-CN2dzUxL.js +1 -0
  409. package/dist/showcase/assets/popover-DILNXLWy.js +1 -0
  410. package/dist/showcase/assets/popover-menu-Bp08xxOf.js +1 -0
  411. package/dist/showcase/assets/popover-o1EO2yVS.js +1 -0
  412. package/dist/showcase/assets/products-CCLAbHBN.js +423 -0
  413. package/dist/showcase/assets/progress-BGna-ZmU.js +18 -0
  414. package/dist/showcase/assets/progress-BSYlNLIJ.js +1 -0
  415. package/dist/showcase/assets/progress-CZVy3LGB.js +1 -0
  416. package/dist/showcase/assets/props-table-X9St7Q4m.js +1 -0
  417. package/dist/showcase/assets/props.generated-f_jHBhPb.json +41753 -0
  418. package/dist/showcase/assets/qr-code-CEmKf9xU.js +1 -0
  419. package/dist/showcase/assets/quote-IH6r-rlY.js +1 -0
  420. package/dist/showcase/assets/receipt-m9rOe5lY.js +1 -0
  421. package/dist/showcase/assets/receipt-text-C0TobatH.js +1 -0
  422. package/dist/showcase/assets/refinement-guide-t9T7iAS2.js +189 -0
  423. package/dist/showcase/assets/refresh-cw-Dy_Nc4jA.js +1 -0
  424. package/dist/showcase/assets/resolveValueLabel-DR7LgQP5.js +1 -0
  425. package/dist/showcase/assets/resource-BcJ8O6uj.js +1 -0
  426. package/dist/showcase/assets/resource-_zDXez77.js +139 -0
  427. package/dist/showcase/assets/resource-selector-card-CCAEF-AT.js +43 -0
  428. package/dist/showcase/assets/rich-text-editor-BJG_ECJp.js +143 -0
  429. package/dist/showcase/assets/rich-text-editor-fbgVfyEH.js +124 -0
  430. package/dist/showcase/assets/rotate-ccw-CGuTkHQ3.js +1 -0
  431. package/dist/showcase/assets/route-C7EZ2Njy.js +1 -0
  432. package/dist/showcase/assets/save-fKrt-yFG.js +1 -0
  433. package/dist/showcase/assets/schema-form-k7TXeirD.js +327 -0
  434. package/dist/showcase/assets/scroll-area-CqNwdlI6.js +32 -0
  435. package/dist/showcase/assets/scroll-area-UVtlGOgx.js +1 -0
  436. package/dist/showcase/assets/section-DuBNJP4P.js +1 -0
  437. package/dist/showcase/assets/select-CINVEIWn.js +1 -0
  438. package/dist/showcase/assets/select-ZLaamXrm.js +1 -0
  439. package/dist/showcase/assets/send-DBvt_4jT.js +1 -0
  440. package/dist/showcase/assets/separator-BdBXRpc3.js +28 -0
  441. package/dist/showcase/assets/separator-CkJjJQWW.js +1 -0
  442. package/dist/showcase/assets/separator-CxOeStjL.js +1 -0
  443. package/dist/showcase/assets/separator-O-VQMSf_.js +1 -0
  444. package/dist/showcase/assets/settings-2-BWjMVlyS.js +1 -0
  445. package/dist/showcase/assets/settings-D9Z79UcG.js +1 -0
  446. package/dist/showcase/assets/sheet-CK9C6r7_.js +1 -0
  447. package/dist/showcase/assets/shield-BboB3Zlo.js +1 -0
  448. package/dist/showcase/assets/shield-alert-CAAobStl.js +1 -0
  449. package/dist/showcase/assets/shield-check-Rfyzz9bK.js +1 -0
  450. package/dist/showcase/assets/shopping-bag-5hLD82YW.js +1 -0
  451. package/dist/showcase/assets/showcase-DhOQXB5E.js +132 -0
  452. package/dist/showcase/assets/sidebar-ZTUACc0t.js +1 -0
  453. package/dist/showcase/assets/sidebar.context-BiNOpG5W.js +1 -0
  454. package/dist/showcase/assets/skeleton-BZUSoHbk.js +1 -0
  455. package/dist/showcase/assets/skeleton-BZkYzAdq.js +1 -0
  456. package/dist/showcase/assets/skeleton-CrOp8tx3.js +29 -0
  457. package/dist/showcase/assets/skeleton-P5GXAj4U.js +1 -0
  458. package/dist/showcase/assets/slider-zlE7nLrp.js +1 -0
  459. package/dist/showcase/assets/smart-card-OExZHSsj.js +1 -0
  460. package/dist/showcase/assets/sonner-eMphKM9E.js +22 -0
  461. package/dist/showcase/assets/sortable.esm-CM9VD5N4.js +5 -0
  462. package/dist/showcase/assets/sparkles-CIB5irID.js +1 -0
  463. package/dist/showcase/assets/spinner-11-kP-Ob.js +1 -0
  464. package/dist/showcase/assets/spinner-D4G5TFSm.js +49 -0
  465. package/dist/showcase/assets/spinner-DKGukuFV.js +30 -0
  466. package/dist/showcase/assets/square-pen-zflKy9oX.js +1 -0
  467. package/dist/showcase/assets/stacked-avatars-Cve1Y6GY.js +1 -0
  468. package/dist/showcase/assets/star-DleXDkCp.js +1 -0
  469. package/dist/showcase/assets/startOfDay-TDP2erzM.js +1 -0
  470. package/dist/showcase/assets/styles-BKlX_Ipc.js +1 -0
  471. package/dist/showcase/assets/suggestions-Dt2hm1NY.js +126 -0
  472. package/dist/showcase/assets/switch-DAPAgJbv.js +1 -0
  473. package/dist/showcase/assets/switch-fQpP2tJl.js +1 -0
  474. package/dist/showcase/assets/sync-BRcK160D.js +124 -0
  475. package/dist/showcase/assets/table-Dhmbe1yN.js +686 -0
  476. package/dist/showcase/assets/table-actions-GGrPOQcv.js +1 -0
  477. package/dist/showcase/assets/table-v0Eu5yZn.js +1 -0
  478. package/dist/showcase/assets/tabs-DmaXB1aF.js +19 -0
  479. package/dist/showcase/assets/tabs-vbNIJ-eo.js +1 -0
  480. package/dist/showcase/assets/tags-input-Bms_Q5CE.js +1 -0
  481. package/dist/showcase/assets/text-button-gvJCzaXS.js +1 -0
  482. package/dist/showcase/assets/text-link-DkByVX4d.js +1 -0
  483. package/dist/showcase/assets/textarea-B6Ho29y3.js +1 -0
  484. package/dist/showcase/assets/textarea-JCb0yhZ1.js +1 -0
  485. package/dist/showcase/assets/throttle-alert-CPU-u6Rs.js +1 -0
  486. package/dist/showcase/assets/timelines-Bw7mvAdx.js +200 -0
  487. package/dist/showcase/assets/toggle-group-jlIGX1zh.js +1 -0
  488. package/dist/showcase/assets/toggles-DV6V9vj-.js +71 -0
  489. package/dist/showcase/assets/toggles-group-C-Y3dG8q.js +32 -0
  490. package/dist/showcase/assets/tooltip-CDtPyNOv.js +31 -0
  491. package/dist/showcase/assets/trash-2-CXRm3lMl.js +1 -0
  492. package/dist/showcase/assets/trending-up-Bcyp9cw8.js +1 -0
  493. package/dist/showcase/assets/truck-DVgzuKLP.js +1 -0
  494. package/dist/showcase/assets/typography-BKPf4j85.js +223 -0
  495. package/dist/showcase/assets/ui-badge-D-Ud2MES.js +28 -0
  496. package/dist/showcase/assets/ui-card-gGqI2cfr.js +30 -0
  497. package/dist/showcase/assets/ui-table-Bqcab_kq.js +42 -0
  498. package/dist/showcase/assets/upload-tray-BFh6twLE.js +138 -0
  499. package/dist/showcase/assets/use-layout-link-e9jr981L.js +1 -0
  500. package/dist/showcase/assets/useAriaLabelledBy-ByBTPUi3.js +1 -0
  501. package/dist/showcase/assets/useCollapsiblePanel-Bx_-SRtw.js +1 -0
  502. package/dist/showcase/assets/useCompositeItem-Dmih9c3W.js +1 -0
  503. package/dist/showcase/assets/useCompositeListItem-C0QJgAKb.js +1 -0
  504. package/dist/showcase/assets/useLabelableId-COfjI9qt.js +1 -0
  505. package/dist/showcase/assets/useOpenInteractionType-CRefmlni.js +1 -0
  506. package/dist/showcase/assets/useRender-Bgu76j1u.js +1 -0
  507. package/dist/showcase/assets/useTriggerFocusGuards-B2fPZeWf.js +1 -0
  508. package/dist/showcase/assets/useValueChanged-CNjJ-spo.js +1 -0
  509. package/dist/showcase/assets/user-CmkLnMh9.js +1 -0
  510. package/dist/showcase/assets/user-plus-3CGFNUf0.js +1 -0
  511. package/dist/showcase/assets/users-CuO8W7wn.js +1 -0
  512. package/dist/showcase/assets/vendor-profile-HLMsE22G.js +37 -0
  513. package/dist/showcase/assets/video-CoHnn0fp.js +1 -0
  514. package/dist/showcase/assets/visually-hidden-D5bPAL7Q.js +1 -0
  515. package/dist/showcase/assets/wrench-C93IxaGt.js +1 -0
  516. package/dist/showcase/assets/x-BJDvVLAz.js +1 -0
  517. package/dist/showcase/assets/zap-DYD_Ljkv.js +1 -0
  518. package/dist/showcase/index.html +2 -2
  519. package/dist/style.css +1 -1
  520. package/package.json +1 -1
  521. package/src/css/themes/shadcn.default.css +2 -2
  522. package/dist/_shared/ai-artifact-BylloxGO.js +0 -1099
  523. package/dist/_shared/ai-artifact-BylloxGO.js.map +0 -1
  524. package/dist/_shared/ai-artifact-DfT97Mpi.cjs +0 -3
  525. package/dist/_shared/ai-artifact-DfT97Mpi.cjs.map +0 -1
  526. package/dist/_shared/auth-1Ht9Kevx.js +0 -643
  527. package/dist/_shared/auth-1Ht9Kevx.js.map +0 -1
  528. package/dist/_shared/auth-DTN6sFXM.cjs +0 -2
  529. package/dist/_shared/auth-DTN6sFXM.cjs.map +0 -1
  530. package/dist/_shared/badge-LSAgdmGt.cjs +0 -2
  531. package/dist/_shared/badge-LSAgdmGt.cjs.map +0 -1
  532. package/dist/_shared/badge-nZ2zbAV4.js +0 -110
  533. package/dist/_shared/badge-nZ2zbAV4.js.map +0 -1
  534. package/dist/_shared/comments-B_WKQUol.js +0 -952
  535. package/dist/_shared/comments-B_WKQUol.js.map +0 -1
  536. package/dist/_shared/comments-DMHMNObS.cjs +0 -2
  537. package/dist/_shared/comments-DMHMNObS.cjs.map +0 -1
  538. package/dist/_shared/data-display-4E_irfF2.js +0 -1878
  539. package/dist/_shared/data-display-4E_irfF2.js.map +0 -1
  540. package/dist/_shared/data-display-BPn-7qFO.cjs +0 -2
  541. package/dist/_shared/data-display-BPn-7qFO.cjs.map +0 -1
  542. package/dist/_shared/date-picker-CvqLnlxm.js +0 -1361
  543. package/dist/_shared/date-picker-CvqLnlxm.js.map +0 -1
  544. package/dist/_shared/date-picker-D83fCi2g.cjs +0 -2
  545. package/dist/_shared/date-picker-D83fCi2g.cjs.map +0 -1
  546. package/dist/_shared/date-pickers-C6ku2BPp.cjs +0 -2
  547. package/dist/_shared/date-pickers-C6ku2BPp.cjs.map +0 -1
  548. package/dist/_shared/date-pickers-RdbwIhdY.js +0 -329
  549. package/dist/_shared/date-pickers-RdbwIhdY.js.map +0 -1
  550. package/dist/_shared/display-DFVeSuWL.js +0 -986
  551. package/dist/_shared/display-DFVeSuWL.js.map +0 -1
  552. package/dist/_shared/display-Lr3xTd4a.cjs +0 -2
  553. package/dist/_shared/display-Lr3xTd4a.cjs.map +0 -1
  554. package/dist/_shared/forms-BA8Aa_fi.js +0 -3534
  555. package/dist/_shared/forms-BA8Aa_fi.js.map +0 -1
  556. package/dist/_shared/forms-CNjjdFcf.cjs +0 -2
  557. package/dist/_shared/forms-CNjjdFcf.cjs.map +0 -1
  558. package/dist/_shared/header-BEsz1_so.cjs +0 -2
  559. package/dist/_shared/header-BEsz1_so.cjs.map +0 -1
  560. package/dist/_shared/header-bJx8z6zT.js +0 -447
  561. package/dist/_shared/header-bJx8z6zT.js.map +0 -1
  562. package/dist/_shared/hooks-gRgVhyY2.js +0 -95
  563. package/dist/_shared/hooks-gRgVhyY2.js.map +0 -1
  564. package/dist/_shared/hooks-nFiRfUxX.cjs +0 -2
  565. package/dist/_shared/hooks-nFiRfUxX.cjs.map +0 -1
  566. package/dist/_shared/layout-C_dYiKtE.cjs +0 -2
  567. package/dist/_shared/layout-C_dYiKtE.cjs.map +0 -1
  568. package/dist/_shared/layout-nigj488k.js +0 -268
  569. package/dist/_shared/layout-nigj488k.js.map +0 -1
  570. package/dist/_shared/mentions-BE51BNeq.cjs +0 -2
  571. package/dist/_shared/mentions-BE51BNeq.cjs.map +0 -1
  572. package/dist/_shared/mentions-CBhP29St.js +0 -506
  573. package/dist/_shared/mentions-CBhP29St.js.map +0 -1
  574. package/dist/_shared/navigation-CWK_YQ5Y.js +0 -436
  575. package/dist/_shared/navigation-CWK_YQ5Y.js.map +0 -1
  576. package/dist/_shared/navigation-DTBMb7-M.cjs +0 -2
  577. package/dist/_shared/navigation-DTBMb7-M.cjs.map +0 -1
  578. package/dist/_shared/settings-D-HAOE3R.js +0 -143
  579. package/dist/_shared/settings-D-HAOE3R.js.map +0 -1
  580. package/dist/_shared/settings-DkL3bOk0.cjs +0 -2
  581. package/dist/_shared/settings-DkL3bOk0.cjs.map +0 -1
  582. package/dist/_shared/sidebar-BTyx7ipN.cjs +0 -2
  583. package/dist/_shared/sidebar-BTyx7ipN.cjs.map +0 -1
  584. package/dist/_shared/sidebar-DkBNualh.js +0 -548
  585. package/dist/_shared/sidebar-DkBNualh.js.map +0 -1
  586. package/dist/_shared/table-Cq0jkSm5.js +0 -1377
  587. package/dist/_shared/table-Cq0jkSm5.js.map +0 -1
  588. package/dist/_shared/table-GqTKCC8F.cjs +0 -2
  589. package/dist/_shared/table-GqTKCC8F.cjs.map +0 -1
  590. package/dist/_shared/workspace-5UId04M9.js +0 -357
  591. package/dist/_shared/workspace-5UId04M9.js.map +0 -1
  592. package/dist/_shared/workspace-BMws_rFf.cjs +0 -2
  593. package/dist/_shared/workspace-BMws_rFf.cjs.map +0 -1
  594. package/dist/showcase/assets/AreaChart-oKO7Ng_P.js +0 -6
  595. package/dist/showcase/assets/CompositeItem-CK7jBYU8.js +0 -1
  596. package/dist/showcase/assets/CompositeRoot-_AuToqhT.js +0 -1
  597. package/dist/showcase/assets/DialogTrigger-C44ZZXQ9.js +0 -1
  598. package/dist/showcase/assets/LabelableContext-DLVZlnur.js +0 -1
  599. package/dist/showcase/assets/PreviewLayout-Oik7TDHN.js +0 -1
  600. package/dist/showcase/assets/RadioGroup-DeYb8CGE.js +0 -1
  601. package/dist/showcase/assets/ScrollAreaCorner-BZlE_Bil.js +0 -1
  602. package/dist/showcase/assets/Separator-uiIktHzk.js +0 -1
  603. package/dist/showcase/assets/ToolbarRootContext-CEzj5dKk.js +0 -1
  604. package/dist/showcase/assets/accordion-B_wg_YOp.js +0 -171
  605. package/dist/showcase/assets/accordion-variants-O6U7E38x.js +0 -1
  606. package/dist/showcase/assets/action-menu-D_wGvb_o.js +0 -1
  607. package/dist/showcase/assets/actions-u4Fl4zm1.js +0 -310
  608. package/dist/showcase/assets/activities-C6iITHzB.js +0 -500
  609. package/dist/showcase/assets/activities-feed-card-OpYs16UV.js +0 -1
  610. package/dist/showcase/assets/admin-Bq15E5Wd.js +0 -140
  611. package/dist/showcase/assets/ai-DcUzGTlb.js +0 -207
  612. package/dist/showcase/assets/ai-artifact-BUAu1_jV.js +0 -2
  613. package/dist/showcase/assets/ai-chat-C6OWWBqh.js +0 -568
  614. package/dist/showcase/assets/ai-elements-CCe4Aqj_.js +0 -387
  615. package/dist/showcase/assets/ai-tool-call-B_NF1ePn.js +0 -1
  616. package/dist/showcase/assets/alert-B4VWkFPE.js +0 -1
  617. package/dist/showcase/assets/alert-BDIqciKo.js +0 -62
  618. package/dist/showcase/assets/alert-jvCEGWe6.js +0 -93
  619. package/dist/showcase/assets/api-key-list-BH8mde9A.js +0 -1
  620. package/dist/showcase/assets/api-key-list-CA6O3hsc.js +0 -73
  621. package/dist/showcase/assets/app-sidebar-DsMTwSAB.js +0 -1
  622. package/dist/showcase/assets/arrow-down-BzPC0rON.js +0 -1
  623. package/dist/showcase/assets/arrow-left-DNehZvF-.js +0 -1
  624. package/dist/showcase/assets/arrow-right-CKIgWncF.js +0 -1
  625. package/dist/showcase/assets/arrow-up-YjujZi8v.js +0 -1
  626. package/dist/showcase/assets/arrow-up-right-KnVxFmw9.js +0 -1
  627. package/dist/showcase/assets/avatar-BBLri7tX.js +0 -57
  628. package/dist/showcase/assets/avatar-BeFx8JQd.js +0 -1
  629. package/dist/showcase/assets/avatar-CFWUZzaF.js +0 -67
  630. package/dist/showcase/assets/avatar-D6exHRSK.js +0 -1
  631. package/dist/showcase/assets/badge-check-BfY3RIjR.js +0 -1
  632. package/dist/showcase/assets/badge-jGj2HQsg.js +0 -31
  633. package/dist/showcase/assets/bell-CTDSIOv8.js +0 -1
  634. package/dist/showcase/assets/boolean-indicator-C1u7OFcR.js +0 -1
  635. package/dist/showcase/assets/bot-D-iqtYiQ.js +0 -1
  636. package/dist/showcase/assets/box-DxjjLEh2.js +0 -1
  637. package/dist/showcase/assets/braces-B6XLlZwJ.js +0 -1
  638. package/dist/showcase/assets/brain-BdNpswBH.js +0 -1
  639. package/dist/showcase/assets/brand-C6srYuIa.js +0 -36
  640. package/dist/showcase/assets/breadcrumb-BaeV7C4t.js +0 -52
  641. package/dist/showcase/assets/breadcrumb-jKu4EUFo.js +0 -1
  642. package/dist/showcase/assets/breadcrumbs-D7vYX_5y.js +0 -1
  643. package/dist/showcase/assets/briefcase-cs9wyoxL.js +0 -1
  644. package/dist/showcase/assets/building-2-rcMEYcbf.js +0 -1
  645. package/dist/showcase/assets/button-group-D1oXfasP.js +0 -1
  646. package/dist/showcase/assets/button-oBRwhAhs.js +0 -44
  647. package/dist/showcase/assets/buttons-D_SDu9w3.js +0 -272
  648. package/dist/showcase/assets/calendar-CGTiVckW.js +0 -1
  649. package/dist/showcase/assets/calendar-ChLkVME0.js +0 -16
  650. package/dist/showcase/assets/calendar-CjMPvWfI.js +0 -1
  651. package/dist/showcase/assets/calendar-days-CNom8Y38.js +0 -1
  652. package/dist/showcase/assets/camera-D0rjOOcs.js +0 -1
  653. package/dist/showcase/assets/card-CYz4UxYz.js +0 -1
  654. package/dist/showcase/assets/card-D9updr3B.js +0 -188
  655. package/dist/showcase/assets/card-primitives-BQ0hSEWX.js +0 -1
  656. package/dist/showcase/assets/card-radio-group-CrNG04Bl.js +0 -1
  657. package/dist/showcase/assets/cards-D4Lw-AI6.js +0 -354
  658. package/dist/showcase/assets/carousel-C6Mmapzw.js +0 -449
  659. package/dist/showcase/assets/cell-renderers-BF80Z3jW.js +0 -1
  660. package/dist/showcase/assets/chart-BHgMfUB5.js +0 -358
  661. package/dist/showcase/assets/chart-column-CE_VhlUz.js +0 -1
  662. package/dist/showcase/assets/checkbox-CDLT09vU.js +0 -1
  663. package/dist/showcase/assets/checkbox-Dj24Tegr.js +0 -1
  664. package/dist/showcase/assets/chevron-down-1GeJ4hOO.js +0 -1
  665. package/dist/showcase/assets/chevron-left-wqlWv2Qy.js +0 -1
  666. package/dist/showcase/assets/chevron-up-CZAm-2rZ.js +0 -1
  667. package/dist/showcase/assets/chevrons-up-down-DgysGYWR.js +0 -1
  668. package/dist/showcase/assets/circle-C9Ooo8Lv.js +0 -1
  669. package/dist/showcase/assets/circle-alert-C6XBfkf2.js +0 -1
  670. package/dist/showcase/assets/circle-check-DvCYlVmL.js +0 -1
  671. package/dist/showcase/assets/circle-check-big-C8o9clAE.js +0 -1
  672. package/dist/showcase/assets/circle-dot-BoYf3vOR.js +0 -1
  673. package/dist/showcase/assets/circle-question-mark-DYPX0qe9.js +0 -1
  674. package/dist/showcase/assets/circle-x-GosnT0l7.js +0 -1
  675. package/dist/showcase/assets/clock-3-DklFhayq.js +0 -1
  676. package/dist/showcase/assets/clock-BvwTkk1w.js +0 -1
  677. package/dist/showcase/assets/code-xml-AGOwtN8Z.js +0 -1
  678. package/dist/showcase/assets/collapsible-CBkbr3ho.js +0 -1
  679. package/dist/showcase/assets/collapsible-CmY1SA28.js +0 -27
  680. package/dist/showcase/assets/collapsible-DfDnQ_t_.js +0 -1
  681. package/dist/showcase/assets/combobox-BsZQo7hF.js +0 -685
  682. package/dist/showcase/assets/command-B0Q84gg6.js +0 -1
  683. package/dist/showcase/assets/command-BtADdA65.js +0 -1
  684. package/dist/showcase/assets/comment-composer-BmBnkba9.js +0 -1
  685. package/dist/showcase/assets/comment-item-y5mTfSmU.js +0 -1
  686. package/dist/showcase/assets/comments-BuYiGPxI.js +0 -357
  687. package/dist/showcase/assets/commerce-21Ef_rsW.js +0 -267
  688. package/dist/showcase/assets/composite-fKT6fZFs.js +0 -1
  689. package/dist/showcase/assets/conditional-rendering-DsTG0sOE.js +0 -1
  690. package/dist/showcase/assets/contact-card-S8koA9Sr.js +0 -65
  691. package/dist/showcase/assets/content-container-B4gW5fmA.js +0 -1
  692. package/dist/showcase/assets/copyable-D2xL2rMm.js +0 -96
  693. package/dist/showcase/assets/copyable-gLrmPayI.js +0 -1
  694. package/dist/showcase/assets/course-card-B8eEvF7a.js +0 -77
  695. package/dist/showcase/assets/cpu-Cp1On3tr.js +0 -1
  696. package/dist/showcase/assets/credit-card-QbZMZB90.js +0 -1
  697. package/dist/showcase/assets/css-variables-BXICo9fV.js +0 -1205
  698. package/dist/showcase/assets/currency-D2MSLjLt.js +0 -149
  699. package/dist/showcase/assets/dark-surfaces-CJsxuvQU.js +0 -90
  700. package/dist/showcase/assets/data-view-syhKhdz9.js +0 -124
  701. package/dist/showcase/assets/data-view-znnAeb6b.js +0 -4
  702. package/dist/showcase/assets/database-isLkCvDd.js +0 -1
  703. package/dist/showcase/assets/date-block-BDn9lGVM.js +0 -1
  704. package/dist/showcase/assets/date-block-CqRL1xfo.js +0 -1
  705. package/dist/showcase/assets/date-picker-DNcmSgQk.js +0 -1
  706. package/dist/showcase/assets/date-pickers-3lQUDDS7.js +0 -73
  707. package/dist/showcase/assets/dense-info-CfvqiIpM.js +0 -106
  708. package/dist/showcase/assets/design-system-consistency-C3yRhKwF.js +0 -264
  709. package/dist/showcase/assets/dialog-DiAkrPHO.js +0 -1
  710. package/dist/showcase/assets/dialog-feUFM03m.js +0 -1
  711. package/dist/showcase/assets/dialog-ruVOqJnB.js +0 -1
  712. package/dist/showcase/assets/display-utilities-SPJxlrkp.js +0 -4
  713. package/dist/showcase/assets/display-utilities.examples-ByRydMl0.js +0 -302
  714. package/dist/showcase/assets/dist-C9DVZddl.js +0 -45
  715. package/dist/showcase/assets/dist-DNARKM_B.js +0 -1
  716. package/dist/showcase/assets/dollar-sign-CUDuWyun.js +0 -1
  717. package/dist/showcase/assets/download-CIbh9VUU.js +0 -1
  718. package/dist/showcase/assets/dropdown-menu-MoIAG0ES.js +0 -1
  719. package/dist/showcase/assets/dropzone-D0kHIUuh.js +0 -1
  720. package/dist/showcase/assets/earth-BpNTeF25.js +0 -1
  721. package/dist/showcase/assets/ellipsis-B9w0cuoH.js +0 -1
  722. package/dist/showcase/assets/ellipsis-vertical-DHbOsjTF.js +0 -1
  723. package/dist/showcase/assets/empty-DvYVgcNF.js +0 -1
  724. package/dist/showcase/assets/empty-item-oFM5kPCp.js +0 -49
  725. package/dist/showcase/assets/empty-state-DTq86muv.js +0 -1
  726. package/dist/showcase/assets/empty-state-De7XCht-.js +0 -190
  727. package/dist/showcase/assets/enhanced-activities--XHjx99M.js +0 -357
  728. package/dist/showcase/assets/enhanced-combobox-CX_mTkei.js +0 -1
  729. package/dist/showcase/assets/esm-XXqBjGGF.js +0 -2
  730. package/dist/showcase/assets/event-calendar-zTiCWOF5.js +0 -138
  731. package/dist/showcase/assets/event-log-C_zSlY6y.js +0 -330
  732. package/dist/showcase/assets/example-Cv05rz75.js +0 -1
  733. package/dist/showcase/assets/external-link-DaR-AMyf.js +0 -1
  734. package/dist/showcase/assets/eye-CDSbB0kZ.js +0 -1
  735. package/dist/showcase/assets/feature-announcement-DJ26ZDVB.js +0 -34
  736. package/dist/showcase/assets/file-DPSK5cGC.js +0 -1
  737. package/dist/showcase/assets/file-text-BBWpAppG.js +0 -1
  738. package/dist/showcase/assets/filter-layout-CZRGcd6Z.js +0 -1
  739. package/dist/showcase/assets/filters-Bn7hYUeq.js +0 -139
  740. package/dist/showcase/assets/flag-BRs-GTCx.js +0 -1
  741. package/dist/showcase/assets/folder-open-DnFjlB3X.js +0 -1
  742. package/dist/showcase/assets/form-field-SW-Yp7H7.js +0 -1
  743. package/dist/showcase/assets/format-Bki5m7M3.js +0 -1
  744. package/dist/showcase/assets/forms-CAUL2gGq.js +0 -915
  745. package/dist/showcase/assets/funnel-D6g2Suhd.js +0 -1
  746. package/dist/showcase/assets/generic-CU6JNqKO.js +0 -1
  747. package/dist/showcase/assets/getPseudoElementBounds-yqDwWA_y.js +0 -1
  748. package/dist/showcase/assets/gift-B2Qp9Vqt.js +0 -1
  749. package/dist/showcase/assets/giftcard-cards-Dk0DYoN2.js +0 -85
  750. package/dist/showcase/assets/git-branch-CPtvCNGc.js +0 -1
  751. package/dist/showcase/assets/global-search-D1ow01VA.js +0 -1
  752. package/dist/showcase/assets/global-search-DQR2AgDO.js +0 -215
  753. package/dist/showcase/assets/globe-BiZgUZFZ.js +0 -1
  754. package/dist/showcase/assets/gradient-card-D5isLy3_.js +0 -58
  755. package/dist/showcase/assets/hash-NJ5ohGOa.js +0 -1
  756. package/dist/showcase/assets/header-Df9uYSSH.js +0 -1
  757. package/dist/showcase/assets/header-notifications-sPR5NuON.js +0 -1
  758. package/dist/showcase/assets/heart-C4t7PVKW.js +0 -1
  759. package/dist/showcase/assets/hooks-0TKg0ZAK.js +0 -220
  760. package/dist/showcase/assets/house-CuLXFtjd.js +0 -1
  761. package/dist/showcase/assets/icon-badge-Cr6DD-_7.js +0 -1
  762. package/dist/showcase/assets/icon-badge-DMdMSSRL.js +0 -37
  763. package/dist/showcase/assets/image-DYjJaO0i.js +0 -1
  764. package/dist/showcase/assets/inbox-DGF8FgvV.js +0 -1
  765. package/dist/showcase/assets/index-ATou_nFA.js +0 -10
  766. package/dist/showcase/assets/index-C8U-r6l7.css +0 -2
  767. package/dist/showcase/assets/inertValue-CBi0sj8C.js +0 -1
  768. package/dist/showcase/assets/info-DLaTRPUT.js +0 -1
  769. package/dist/showcase/assets/inline-stat-DGpunTNF.js +0 -1
  770. package/dist/showcase/assets/inline-stat-rUaaOSmR.js +0 -15
  771. package/dist/showcase/assets/input-Cmrgo51H.js +0 -1
  772. package/dist/showcase/assets/input-CnmnWnGb.js +0 -1
  773. package/dist/showcase/assets/input-group-BwujFvXM.js +0 -1
  774. package/dist/showcase/assets/input-group-DvXgZtra.js +0 -47
  775. package/dist/showcase/assets/inputs-CjzW_R8z.js +0 -155
  776. package/dist/showcase/assets/installation-2dW-rmF2.js +0 -134
  777. package/dist/showcase/assets/invoice-header-DeWxMKCe.js +0 -36
  778. package/dist/showcase/assets/invoice-items-Dxb95w0e.js +0 -36
  779. package/dist/showcase/assets/invoice-mini-EMzCkmR7.js +0 -14
  780. package/dist/showcase/assets/invoice-table-ClWJaclJ.js +0 -30
  781. package/dist/showcase/assets/isSameDay-BNPzVySj.js +0 -1
  782. package/dist/showcase/assets/isToday-D6n7oLej.js +0 -1
  783. package/dist/showcase/assets/italic-B8w3dpYw.js +0 -1
  784. package/dist/showcase/assets/item-B8_dwOlT.js +0 -1
  785. package/dist/showcase/assets/item-Baq-Mmy2.js +0 -1
  786. package/dist/showcase/assets/item-BtMuqGwy.js +0 -140
  787. package/dist/showcase/assets/kanban-B-QxvKMg.js +0 -188
  788. package/dist/showcase/assets/key-round-CrBIyzIa.js +0 -1
  789. package/dist/showcase/assets/label-VWe_nbHh.js +0 -1
  790. package/dist/showcase/assets/languages-N0uGt5nC.js +0 -1
  791. package/dist/showcase/assets/layers-DEZvT5cX.js +0 -1
  792. package/dist/showcase/assets/layout-app-shell-T9UqKX2o.js +0 -608
  793. package/dist/showcase/assets/layout-auth-IVC4DuU3.js +0 -790
  794. package/dist/showcase/assets/layout-containers-naBpuH05.js +0 -101
  795. package/dist/showcase/assets/layout-header-9i_7ygKU.js +0 -203
  796. package/dist/showcase/assets/layout-page-CrEUiJpW.js +0 -315
  797. package/dist/showcase/assets/layout-primitives-DPrVHpu3.js +0 -34
  798. package/dist/showcase/assets/layout-sidebar-D7z6-kPu.js +0 -224
  799. package/dist/showcase/assets/layout-users-Cov9D84d.js +0 -117
  800. package/dist/showcase/assets/layout-workspace-Czlmi8gY.js +0 -191
  801. package/dist/showcase/assets/lib-DNMH46Rn.js +0 -1
  802. package/dist/showcase/assets/list-checks-DygDRIGi.js +0 -1
  803. package/dist/showcase/assets/lock-DqEahakB.js +0 -1
  804. package/dist/showcase/assets/lock-keyhole-CETEK3R0.js +0 -1
  805. package/dist/showcase/assets/mail-LKhBlrEc.js +0 -1
  806. package/dist/showcase/assets/mail-check-BOTjWQJf.js +0 -1
  807. package/dist/showcase/assets/map-0vJT2r8C.js +0 -124
  808. package/dist/showcase/assets/map-pin-D0qrpDJI.js +0 -1
  809. package/dist/showcase/assets/media-library-Bp99WaS9.js +0 -699
  810. package/dist/showcase/assets/mention-inline-suggestions-mlV7LRvD.js +0 -1
  811. package/dist/showcase/assets/mentions-Cmd1zxOR.js +0 -138
  812. package/dist/showcase/assets/menus-CtjFPoDr.js +0 -171
  813. package/dist/showcase/assets/message-square-BXyvikcZ.js +0 -1
  814. package/dist/showcase/assets/metadata-list-DLUBcy7E.js +0 -286
  815. package/dist/showcase/assets/metadata-list-F3bWXtZB.js +0 -1
  816. package/dist/showcase/assets/metric-CXPRptlh.js +0 -1
  817. package/dist/showcase/assets/metric-bar-BY25WVZ0.js +0 -1
  818. package/dist/showcase/assets/metric-grid-DQtf9y6E.js +0 -1
  819. package/dist/showcase/assets/metric-trend-chip-CXHpkj3U.js +0 -1
  820. package/dist/showcase/assets/metrics-analytics-bar-BIuwiVrn.js +0 -44
  821. package/dist/showcase/assets/metrics-analytics-cards-yx5lMGQf.js +0 -50
  822. package/dist/showcase/assets/metrics-comparison-BC_7jLXf.js +0 -76
  823. package/dist/showcase/assets/metrics-heatmap-C_nhCljz.js +0 -27
  824. package/dist/showcase/assets/metrics-inline-badge-3oySQnoR.js +0 -17
  825. package/dist/showcase/assets/metrics-kpi-row-zS4-oiTO.js +0 -31
  826. package/dist/showcase/assets/metrics-micro-grid-UJkA2LNR.js +0 -42
  827. package/dist/showcase/assets/metrics-overview-DQFr22ol.js +0 -192
  828. package/dist/showcase/assets/metrics-stat-cards-DnBirxKV.js +0 -54
  829. package/dist/showcase/assets/minus-BOVQEx6C.js +0 -1
  830. package/dist/showcase/assets/money-display-DV7xlrNV.js +0 -1
  831. package/dist/showcase/assets/money-display-DxnM5--7.js +0 -1
  832. package/dist/showcase/assets/month-year-picker-BzRXCrQ7.js +0 -1
  833. package/dist/showcase/assets/navigation-ChJKLv4Y.js +0 -90
  834. package/dist/showcase/assets/navigation-D7VJsKrP.js +0 -231
  835. package/dist/showcase/assets/navigation-extras-BVc1xQuB.js +0 -43
  836. package/dist/showcase/assets/notification-banner-1ivcmPLe.js +0 -1
  837. package/dist/showcase/assets/onboarding-checklist-CbARgwpX.js +0 -119
  838. package/dist/showcase/assets/overflow-tab-bar-DlqMmyTx.js +0 -1
  839. package/dist/showcase/assets/overlays-DkWO50b8.js +0 -159
  840. package/dist/showcase/assets/overlays-KKZpxWjt.js +0 -408
  841. package/dist/showcase/assets/overview-BjQe-YZE.js +0 -184
  842. package/dist/showcase/assets/package-DhQRoFDo.js +0 -1
  843. package/dist/showcase/assets/package-check-CBgGiccG.js +0 -1
  844. package/dist/showcase/assets/page-BWTmyV5J.js +0 -1
  845. package/dist/showcase/assets/page-action-button-DV-YYRA4.js +0 -1
  846. package/dist/showcase/assets/page-header-Bmg4NU_P.js +0 -1
  847. package/dist/showcase/assets/pagination-ByQ_OXRU.js +0 -1
  848. package/dist/showcase/assets/pagination-Db5CuoBb.js +0 -42
  849. package/dist/showcase/assets/paperclip-BQNPUzG_.js +0 -1
  850. package/dist/showcase/assets/password-input-CPvjzM1f.js +0 -1
  851. package/dist/showcase/assets/pencil-DuBakHme.js +0 -1
  852. package/dist/showcase/assets/phone-t94LTB1m.js +0 -1
  853. package/dist/showcase/assets/placeholder-pattern-BNou2ep-.js +0 -1
  854. package/dist/showcase/assets/plus-BRcp6JhT.js +0 -1
  855. package/dist/showcase/assets/popover-CVuJP03o.js +0 -1
  856. package/dist/showcase/assets/popover-D_P2gTn8.js +0 -1
  857. package/dist/showcase/assets/popover-menu-DGY5jEk4.js +0 -1
  858. package/dist/showcase/assets/products-8sUfDMPU.js +0 -423
  859. package/dist/showcase/assets/progress-BrMvIZIz.js +0 -1
  860. package/dist/showcase/assets/progress-CSXZAavT.js +0 -18
  861. package/dist/showcase/assets/progress-Dvqpf_O0.js +0 -1
  862. package/dist/showcase/assets/props-table-BAfz1Zc6.js +0 -1
  863. package/dist/showcase/assets/props.generated-CuVoOKYT.json +0 -41746
  864. package/dist/showcase/assets/qr-code-C-CaHJQ2.js +0 -1
  865. package/dist/showcase/assets/quote-Ci80eS0u.js +0 -1
  866. package/dist/showcase/assets/receipt-jvwbPuE3.js +0 -1
  867. package/dist/showcase/assets/receipt-text-CT0GiMQm.js +0 -1
  868. package/dist/showcase/assets/refinement-guide-BnCQ9-6f.js +0 -189
  869. package/dist/showcase/assets/refresh-cw-CXDARnCe.js +0 -1
  870. package/dist/showcase/assets/resolveValueLabel-DJanfUim.js +0 -1
  871. package/dist/showcase/assets/resource-Bir-z7ie.js +0 -139
  872. package/dist/showcase/assets/resource-D19qhfYP.js +0 -1
  873. package/dist/showcase/assets/resource-selector-card-BUbuu-QH.js +0 -43
  874. package/dist/showcase/assets/rich-text-editor-BCtz589M.js +0 -124
  875. package/dist/showcase/assets/rich-text-editor-uu9FmB8B.js +0 -143
  876. package/dist/showcase/assets/rotate-ccw-DEIVfiHA.js +0 -1
  877. package/dist/showcase/assets/route-B5vtDLsE.js +0 -1
  878. package/dist/showcase/assets/save-DQ4Up8ZB.js +0 -1
  879. package/dist/showcase/assets/schema-form-D7wbdl5u.js +0 -327
  880. package/dist/showcase/assets/scroll-area-B0QD6o1Y.js +0 -32
  881. package/dist/showcase/assets/scroll-area-BoZ1SrfI.js +0 -1
  882. package/dist/showcase/assets/section-BXsVHOsI.js +0 -1
  883. package/dist/showcase/assets/select-CW8SYsOY.js +0 -1
  884. package/dist/showcase/assets/select-DmRqLSoG.js +0 -1
  885. package/dist/showcase/assets/send-Dxs1-xSj.js +0 -1
  886. package/dist/showcase/assets/separator-BLOG_8oO.js +0 -1
  887. package/dist/showcase/assets/separator-DZC_uQU-.js +0 -1
  888. package/dist/showcase/assets/separator-OlLHRN7k.js +0 -28
  889. package/dist/showcase/assets/settings-2-BSpgytsy.js +0 -1
  890. package/dist/showcase/assets/settings-CCNP7XOu.js +0 -1
  891. package/dist/showcase/assets/sheet-DIfJjbgA.js +0 -1
  892. package/dist/showcase/assets/shield-D2gTWkwA.js +0 -1
  893. package/dist/showcase/assets/shield-alert-C-3oWpoe.js +0 -1
  894. package/dist/showcase/assets/shield-check-D11r1eJ8.js +0 -1
  895. package/dist/showcase/assets/shopping-bag-DAeaVQ5O.js +0 -1
  896. package/dist/showcase/assets/showcase-GdZcH6OR.js +0 -132
  897. package/dist/showcase/assets/sidebar-RBzHNuB7.js +0 -1
  898. package/dist/showcase/assets/sidebar.context-Dyw470Qp.js +0 -1
  899. package/dist/showcase/assets/skeleton-B7crngMw.js +0 -1
  900. package/dist/showcase/assets/skeleton-BwEVNdGJ.js +0 -1
  901. package/dist/showcase/assets/skeleton-DM73_ueB.js +0 -1
  902. package/dist/showcase/assets/skeleton-cHsWJOtO.js +0 -29
  903. package/dist/showcase/assets/slider-DRPnIs0S.js +0 -1
  904. package/dist/showcase/assets/smart-card-DER7dpD9.js +0 -1
  905. package/dist/showcase/assets/sonner-Go1YsPBH.js +0 -22
  906. package/dist/showcase/assets/sortable.esm-q6LdsxSr.js +0 -5
  907. package/dist/showcase/assets/sparkles-DqH40POl.js +0 -1
  908. package/dist/showcase/assets/spinner-C0YWWxyj.js +0 -1
  909. package/dist/showcase/assets/spinner-CpHNR13f.js +0 -30
  910. package/dist/showcase/assets/spinner-Dwvf24e9.js +0 -49
  911. package/dist/showcase/assets/square-pen-D-xHmIA0.js +0 -1
  912. package/dist/showcase/assets/stacked-avatars-C92NYKIa.js +0 -1
  913. package/dist/showcase/assets/star-dD4CAJ83.js +0 -1
  914. package/dist/showcase/assets/startOfDay-BXZshd4g.js +0 -1
  915. package/dist/showcase/assets/styles-BPJdkO_3.js +0 -1
  916. package/dist/showcase/assets/suggestions-CyhKme4Q.js +0 -126
  917. package/dist/showcase/assets/switch-C7DVTgQd.js +0 -1
  918. package/dist/showcase/assets/switch-LU6nljdS.js +0 -1
  919. package/dist/showcase/assets/sync-bERw1shm.js +0 -124
  920. package/dist/showcase/assets/table-BuIv4nqB.js +0 -686
  921. package/dist/showcase/assets/table-CDMDtBgJ.js +0 -1
  922. package/dist/showcase/assets/table-actions-DsK7d8Yb.js +0 -1
  923. package/dist/showcase/assets/tabs-BDryywGb.js +0 -19
  924. package/dist/showcase/assets/tabs-BNaZmM48.js +0 -1
  925. package/dist/showcase/assets/tags-input-CzE_5BJl.js +0 -1
  926. package/dist/showcase/assets/text-button-B1m5cpX_.js +0 -1
  927. package/dist/showcase/assets/text-link-CqjW10Ce.js +0 -1
  928. package/dist/showcase/assets/textarea-xJ3EE8R9.js +0 -1
  929. package/dist/showcase/assets/textarea-xOekToAG.js +0 -1
  930. package/dist/showcase/assets/throttle-alert-BH1HMiaI.js +0 -1
  931. package/dist/showcase/assets/timelines-DjWkuOz3.js +0 -200
  932. package/dist/showcase/assets/toggle-group-Css6pfUI.js +0 -1
  933. package/dist/showcase/assets/toggles-DhDrn3YH.js +0 -71
  934. package/dist/showcase/assets/toggles-group-e4xtKzkl.js +0 -32
  935. package/dist/showcase/assets/tooltip-DMvMUrGe.js +0 -31
  936. package/dist/showcase/assets/trash-2-zILxQmtX.js +0 -1
  937. package/dist/showcase/assets/trending-up-CRH278ig.js +0 -1
  938. package/dist/showcase/assets/truck-At9CEKg7.js +0 -1
  939. package/dist/showcase/assets/typography-B0ehvSV4.js +0 -223
  940. package/dist/showcase/assets/ui-badge-CyLWYf3f.js +0 -28
  941. package/dist/showcase/assets/ui-card-BPnLZmkJ.js +0 -30
  942. package/dist/showcase/assets/ui-table-C-zXhcOm.js +0 -42
  943. package/dist/showcase/assets/upload-tray-IyQJEM9n.js +0 -138
  944. package/dist/showcase/assets/use-layout-link-Cux4giQO.js +0 -1
  945. package/dist/showcase/assets/useAriaLabelledBy-Bo0rTGvc.js +0 -1
  946. package/dist/showcase/assets/useCollapsiblePanel-CzU-1LY3.js +0 -1
  947. package/dist/showcase/assets/useCompositeItem-CJFNnVql.js +0 -1
  948. package/dist/showcase/assets/useCompositeListItem-BAuO9hue.js +0 -1
  949. package/dist/showcase/assets/useLabelableId-HuACs9ba.js +0 -1
  950. package/dist/showcase/assets/useOpenInteractionType-MEUfJuxN.js +0 -1
  951. package/dist/showcase/assets/useRender-B-6DpRfj.js +0 -1
  952. package/dist/showcase/assets/useTriggerFocusGuards-B-mRyUJJ.js +0 -1
  953. package/dist/showcase/assets/useValueChanged-CVn_Rfso.js +0 -1
  954. package/dist/showcase/assets/user-eelwPGBI.js +0 -1
  955. package/dist/showcase/assets/user-plus-DhswMZvb.js +0 -1
  956. package/dist/showcase/assets/users-BVMmaveS.js +0 -1
  957. package/dist/showcase/assets/vendor-profile-FHaiInTe.js +0 -37
  958. package/dist/showcase/assets/video-C42fxAyj.js +0 -1
  959. package/dist/showcase/assets/visually-hidden-BwzlEinj.js +0 -1
  960. package/dist/showcase/assets/wrench-EKI7PaKp.js +0 -1
  961. package/dist/showcase/assets/x--LIqlhum.js +0 -1
  962. package/dist/showcase/assets/zap-C1fX30vt.js +0 -1
@@ -1,506 +0,0 @@
1
- import { useStrings as e } from "../lib/strings.js";
2
- import { cn as t } from "../lib/utils.js";
3
- import { t as n } from "./button-Be2ayMxF.js";
4
- import { s as r } from "./typography-5bLhAYaK.js";
5
- import { t as i } from "./badge-nZ2zbAV4.js";
6
- import { t as a } from "./popover-xVENY0Ax.js";
7
- import { i as o } from "./command-CAI-BCSR.js";
8
- import { a as s, i as c, n as l, r as u, t as d } from "./command-IP2wy_HN.js";
9
- import { Fragment as f, useCallback as p, useEffect as m, useMemo as h, useRef as g, useState as _ } from "react";
10
- import { Fragment as v, jsx as y, jsxs as b } from "react/jsx-runtime";
11
- import { Loader2 as x } from "lucide-react";
12
- //#region src/components/features/mentions/hooks/use-mentions-search.ts
13
- function S(e = {}) {
14
- let { resources: t, onResourceSearch: n, initialMentions: r, debounceMs: i = 200 } = e, a = h(() => t ? Object.keys(t) : [], [t]), [o, s] = _(() => a[0] ?? null), [c, l] = _(!1), [u, d] = _(""), [f, v] = _({}), [y, b] = _(!1), [x, S] = _(() => r ? [...r] : []), C = g(0), w = g(null);
15
- m(() => {
16
- if (a.length === 0) {
17
- s(null);
18
- return;
19
- }
20
- (!o || !a.includes(o)) && s(a[0]);
21
- }, [o, a]);
22
- let T = h(() => o && t ? t[o] ?? null : null, [o, t]), E = p(async (e, r) => {
23
- let i = t?.[e];
24
- if (i?.search) return (await i.search(r)).map((t) => ({
25
- ...t,
26
- kind: e
27
- }));
28
- if (i?.suggestions) {
29
- let t = i.suggestions;
30
- return (r.trim().length === 0 ? t : t.filter((e) => e.label.toLowerCase().includes(r.toLowerCase()))).map((t) => ({
31
- ...t,
32
- kind: e
33
- }));
34
- }
35
- return n ? (await n(r, e)).map((t) => ({
36
- ...t,
37
- kind: e
38
- })) : [];
39
- }, [t, n]);
40
- m(() => {
41
- if (w.current && clearTimeout(w.current), a.length === 0) {
42
- v({});
43
- return;
44
- }
45
- let e = ++C.current, t = async () => {
46
- b(!0);
47
- try {
48
- let t = await Promise.all(a.map(async (e) => {
49
- try {
50
- return [e, await E(e, u)];
51
- } catch {
52
- return [e, []];
53
- }
54
- }));
55
- if (e !== C.current) return;
56
- let n = {};
57
- for (let [e, r] of t) n[e] = r;
58
- v(n);
59
- } finally {
60
- e === C.current && b(!1);
61
- }
62
- };
63
- return w.current = setTimeout(() => {
64
- t();
65
- }, i), () => {
66
- w.current && clearTimeout(w.current);
67
- };
68
- }, [
69
- a,
70
- u,
71
- E,
72
- i
73
- ]), m(() => {
74
- if (c || !o || (f[o] ?? []).length > 0) return;
75
- let e = a.find((e) => (f[e]?.length ?? 0) > 0);
76
- e && e !== o && s(e);
77
- }, [
78
- o,
79
- a,
80
- c,
81
- f
82
- ]);
83
- let D = p((e) => {
84
- s(e);
85
- }, []), O = p((e) => {
86
- d(e);
87
- }, []), k = p((e) => {
88
- S((t) => t.some((t) => t.id === e.id) ? t : [...t, e]);
89
- }, []), A = p((e) => {
90
- S((t) => t.filter((t) => t.id !== e));
91
- }, []), j = p((e) => {
92
- S([...e]);
93
- }, []), M = p(() => {
94
- S([]), d(""), l(!1), C.current++;
95
- }, []), N = p((e) => {
96
- let n = e.kind ?? o, r = `${n}:${e.id}`, i = t?.[n], a = e.href ?? i?.buildHref?.(e), s = {
97
- id: r,
98
- kind: n,
99
- label: e.label,
100
- href: a,
101
- data: e.data
102
- };
103
- return k(s), s;
104
- }, [
105
- o,
106
- k,
107
- t
108
- ]);
109
- return {
110
- kinds: a,
111
- activeKind: o,
112
- setActiveKind: D,
113
- activeResource: T,
114
- query: u,
115
- setQuery: O,
116
- suggestions: h(() => o ? f[o] ?? [] : [], [o, f]),
117
- suggestionsByKind: f,
118
- isLoading: y,
119
- mentions: x,
120
- addMention: k,
121
- removeMention: A,
122
- setMentions: j,
123
- reset: M,
124
- selectSuggestion: N,
125
- manualKindOverride: c,
126
- setManualKindOverride: l
127
- };
128
- }
129
- //#endregion
130
- //#region src/components/features/mentions/utils/build-mention-html.ts
131
- function C(e, t) {
132
- let n = String(e.label ?? "").replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;"), r = String(e.id).replace(/"/g, "&quot;"), i = String(e.kind).replace(/"/g, "&quot;"), a = t?.tone ? String(t.tone).replace(/"/g, "&quot;") : "", o = t?.triggerChar ?? (e.kind === "user" ? "@" : "");
133
- return `<span class="rsc-mention" data-ref-id="${r}" data-ref-kind="${i}"${a ? ` data-ref-tone="${a}"` : ""} contenteditable="false">${o}${n}</span>&nbsp;`;
134
- }
135
- //#endregion
136
- //#region src/components/features/mentions/hooks/use-mentions.ts
137
- function w(e = {}) {
138
- let t = e.resources, n = e.onResourceSearch, r = S({
139
- ...e,
140
- resources: t,
141
- onResourceSearch: n
142
- }), [i, a] = _(!1), [o, s] = _(!1), c = g(null), l = g(null), u = p((e) => {
143
- a(e), e || (c.current = null, l.current = null, s(!1), r.setManualKindOverride(!1));
144
- }, [r]), d = e.editorRef, f = p(() => {
145
- if (!t) return;
146
- let e = {};
147
- for (let [n, r] of Object.entries(t)) {
148
- let t = r?.trigger;
149
- typeof t == "string" && t.length > 0 && (e[t] = n);
150
- }
151
- if (Object.keys(e).length === 0) return;
152
- let n = d?.current?.getCaretContext();
153
- if (!n) {
154
- c.current && (c.current = null, u(!1));
155
- return;
156
- }
157
- let i = Object.keys(e).map((e) => e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")).join(""), o = RegExp(`(?:^|\\s)([${i}])([\\p{L}\\p{N}_-]*)$`, "u"), f = n.textBefore.match(o);
158
- if (!f) {
159
- c.current && (c.current = null, u(!1));
160
- return;
161
- }
162
- let p = f[1], m = f[2] ?? "", h = e[p];
163
- c.current = {
164
- kind: h,
165
- triggerChar: p,
166
- consumedLength: p.length + m.length
167
- }, s(!0), l.current !== p && (r.activeKind !== h && r.setActiveKind(h), r.setManualKindOverride(!1), l.current = p), r.query !== m && r.setQuery(m), a(!0);
168
- }, [
169
- d,
170
- t,
171
- r,
172
- u
173
- ]), m = p((e) => {
174
- let n = r.selectSuggestion(e), i = c.current, a = t?.[n.kind]?.tone, o = C(n, {
175
- triggerChar: i?.triggerChar,
176
- tone: a
177
- });
178
- return i && i.consumedLength > 0 && d?.current ? (d.current.replaceBeforeCaret(i.consumedLength, o), c.current = null) : d?.current && d.current.insertHTML(o), u(!1), n;
179
- }, [
180
- d,
181
- t,
182
- r,
183
- u
184
- ]);
185
- return {
186
- ...r,
187
- pickerOpen: i,
188
- setPickerOpen: u,
189
- triggerActive: o,
190
- handleCaretChange: f,
191
- pickSuggestion: m
192
- };
193
- }
194
- //#endregion
195
- //#region src/components/features/mentions/partials/mention-chip.tsx
196
- var T = {
197
- primary: "secondary",
198
- success: "success",
199
- warning: "warning",
200
- destructive: "destructive",
201
- info: "info",
202
- secondary: "secondary"
203
- }, E = ({ mention: e, resource: n, asLink: r = !0, onClick: a, trailing: o, className: s }) => {
204
- if (n?.renderChip) return /* @__PURE__ */ y(v, { children: n.renderChip(e) });
205
- let c = T[n?.tone ?? "secondary"] ?? T.secondary, l = n?.icon, u = /* @__PURE__ */ b(i, {
206
- variant: c,
207
- inline: !0,
208
- "data-ref-id": e.id,
209
- "data-ref-kind": e.kind,
210
- className: t("mention-chip--component", "align-[-0.15em] cursor-default whitespace-nowrap", s),
211
- children: [
212
- l ? /* @__PURE__ */ y(l, {
213
- className: "size-3 shrink-0",
214
- "aria-hidden": !0
215
- }) : null,
216
- /* @__PURE__ */ y("span", {
217
- className: "truncate max-w-[14rem]",
218
- children: e.label
219
- }),
220
- o
221
- ]
222
- });
223
- return r && e.href ? /* @__PURE__ */ y("a", {
224
- href: e.href,
225
- target: "_blank",
226
- rel: "noreferrer noopener",
227
- onClick: a,
228
- className: "inline align-baseline no-underline hover:opacity-90",
229
- children: u
230
- }) : a ? /* @__PURE__ */ y("span", {
231
- onClick: a,
232
- className: "inline align-baseline",
233
- children: u
234
- }) : u;
235
- }, D = /<(span|a)\b([^>]*?)data-ref-id\s*=\s*"([^"]+)"([^>]*)>([\s\S]*?)<\/\1>/gi;
236
- function O(e) {
237
- if (!e) return [];
238
- let t = [], n = 0, r;
239
- for (D.lastIndex = 0; (r = D.exec(e)) !== null;) {
240
- let [i, , , a] = r, o = e.slice(n, r.index);
241
- o.length > 0 && t.push({
242
- kind: "html",
243
- value: o
244
- }), t.push({
245
- kind: "mention",
246
- refId: a,
247
- fallback: i
248
- }), n = r.index + i.length;
249
- }
250
- let i = e.slice(n);
251
- return i.length > 0 && t.push({
252
- kind: "html",
253
- value: i
254
- }), t;
255
- }
256
- //#endregion
257
- //#region src/components/features/mentions/partials/mention-content.tsx
258
- var k = "prose prose-sm prose-p:my-0.5 prose-p:leading-relaxed prose-headings:my-1 prose-a:text-primary prose-a:no-underline hover:prose-a:underline prose-strong:font-semibold prose-ul:my-0.5 prose-ol:my-0.5 prose-li:my-0.5 max-w-none";
259
- function A(e) {
260
- let { html: n, mentions: r, resources: i, renderMention: a, sanitizer: o, className: s, prose: c = !0 } = e, l = i, u = o ? o(n ?? "") : n ?? "", d = /* @__PURE__ */ new Map();
261
- for (let e of r ?? []) d.set(e.id, e);
262
- let p = d.size > 0 ? O(u) : [{
263
- kind: "html",
264
- value: u
265
- }], m = (e) => {
266
- if (a) return a(e);
267
- let t = l?.[e.kind];
268
- return /* @__PURE__ */ y(E, {
269
- mention: e,
270
- resource: t
271
- });
272
- }, h = p.map((e, t) => {
273
- if (e.kind === "mention") {
274
- let n = d.get(e.refId);
275
- return n ? /* @__PURE__ */ y(f, { children: m(n) }, `ref-${t}-${e.refId}`) : /* @__PURE__ */ y("span", { dangerouslySetInnerHTML: { __html: e.fallback } }, `fallback-${t}`);
276
- }
277
- return /* @__PURE__ */ y("span", { dangerouslySetInnerHTML: { __html: e.value } }, `html-${t}`);
278
- });
279
- return c ? /* @__PURE__ */ y("div", {
280
- className: t("mention-content--component", k, s),
281
- children: h
282
- }) : /* @__PURE__ */ y(v, { children: h });
283
- }
284
- var j = (e) => /* @__PURE__ */ y(A, { ...e }), M = {
285
- title: "Insert reference",
286
- searchPlaceholder: "Search…",
287
- empty: "No matches.",
288
- loading: "Searching…"
289
- }, N = {
290
- title: "Insert reference",
291
- empty: "No matches.",
292
- loading: "Searching…"
293
- };
294
- //#endregion
295
- //#region src/components/features/mentions/partials/mention-picker.tsx
296
- function P({ open: i, activeKind: f, setActiveKind: p, kinds: m, resources: h, query: g, setQuery: _, suggestions: v, isLoading: S, onSelect: C, strings: w, className: T }) {
297
- let E = e(M, w);
298
- return i ? /* @__PURE__ */ b(a, {
299
- align: "start",
300
- className: t("mention-picker--component", "w-72 overflow-hidden p-0", T),
301
- children: [/* @__PURE__ */ b("div", {
302
- className: "border-b border-border/60 px-3 py-2",
303
- children: [/* @__PURE__ */ y(r, {
304
- size: "xs",
305
- type: "secondary",
306
- weight: "medium",
307
- className: "uppercase tracking-wide",
308
- children: E.title
309
- }), m.length > 1 && /* @__PURE__ */ y("div", {
310
- className: "mt-2 flex flex-wrap gap-1",
311
- children: m.map((e) => {
312
- let r = h?.[e], i = r?.icon, a = e === f;
313
- return /* @__PURE__ */ b(n, {
314
- type: "button",
315
- variant: a ? "primary" : "secondary",
316
- buttonStyle: a ? "solid" : "ghost",
317
- size: "small",
318
- onClick: () => p(e),
319
- className: t("h-auto gap-1 rounded px-1.5 py-0.5 text-xs font-medium ring-1 ring-inset transition-colors", a ? "bg-primary text-primary-foreground ring-primary" : "bg-muted text-muted-foreground ring-border/60 hover:bg-muted/80"),
320
- children: [i ? /* @__PURE__ */ y(i, { className: "size-3" }) : null, /* @__PURE__ */ y("span", { children: r?.label ?? String(e) })]
321
- }, e);
322
- })
323
- })]
324
- }), /* @__PURE__ */ b(d, {
325
- shouldFilter: !1,
326
- children: [/* @__PURE__ */ y(o, {
327
- placeholder: E.searchPlaceholder,
328
- value: g,
329
- onValueChange: _
330
- }), /* @__PURE__ */ b(s, { children: [
331
- S ? /* @__PURE__ */ b("div", {
332
- className: "text-muted-foreground flex items-center justify-center gap-2 py-3",
333
- children: [/* @__PURE__ */ y(x, {
334
- className: "size-3.5 animate-spin",
335
- "aria-hidden": !0
336
- }), /* @__PURE__ */ y(r, {
337
- tag: "span",
338
- size: "xs",
339
- type: "secondary",
340
- children: E.loading
341
- })]
342
- }) : null,
343
- /* @__PURE__ */ y(l, { children: E.empty }),
344
- /* @__PURE__ */ y(u, { children: v.map((e) => {
345
- let t = e.kind ?? f ?? "";
346
- return /* @__PURE__ */ y(c, {
347
- value: `${t}:${e.id}`,
348
- onSelect: () => C(e),
349
- children: /* @__PURE__ */ b("div", {
350
- className: "flex min-w-0 flex-1 flex-col leading-tight",
351
- children: [/* @__PURE__ */ y(r, {
352
- tag: "span",
353
- size: "xs",
354
- weight: "medium",
355
- className: "truncate",
356
- children: e.label
357
- }), e.description ? /* @__PURE__ */ y(r, {
358
- tag: "span",
359
- size: "xs",
360
- type: "secondary",
361
- className: "mt-0.5 truncate",
362
- children: e.description
363
- }) : null]
364
- })
365
- }, `${t}:${e.id}`);
366
- }) })
367
- ] })]
368
- })]
369
- }) : null;
370
- }
371
- //#endregion
372
- //#region src/components/features/mentions/partials/mention-inline-suggestions.tsx
373
- function F({ open: i, activeKind: a, setActiveKind: o, kinds: s, resources: c, suggestionsByKind: l, suggestions: u, isLoading: d, query: f, onManualKindChange: p, onSelect: m, strings: h, className: g }) {
374
- let _ = e(N, h);
375
- return i ? /* @__PURE__ */ b("div", {
376
- onMouseDown: (e) => e.preventDefault(),
377
- className: t("mention-inline-suggestions--component", "bg-popover text-popover-foreground absolute left-0 top-full z-40 mt-1 w-80 max-w-[min(theme(spacing.96),100%)]", "border-border/60 rounded-md border shadow-md ring-1 ring-foreground/[0.04]", "overflow-hidden", g),
378
- children: [/* @__PURE__ */ b("div", {
379
- className: "border-b border-border/60 px-3 py-2",
380
- children: [/* @__PURE__ */ b("div", {
381
- className: "flex items-baseline justify-between gap-2",
382
- children: [/* @__PURE__ */ y(r, {
383
- size: "xs",
384
- type: "secondary",
385
- weight: "medium",
386
- className: "uppercase tracking-wide",
387
- children: _.title
388
- }), f ? /* @__PURE__ */ b(r, {
389
- tag: "span",
390
- size: "xs",
391
- type: "secondary",
392
- className: "truncate font-mono",
393
- children: [
394
- "“",
395
- f,
396
- "”"
397
- ]
398
- }) : null]
399
- }), s.length > 1 && /* @__PURE__ */ y("div", {
400
- className: "mt-2 flex flex-wrap gap-1",
401
- children: s.map((e) => {
402
- let r = c?.[e], i = r?.icon, s = e === a, u = l?.[e]?.length ?? 0;
403
- return /* @__PURE__ */ b(n, {
404
- type: "button",
405
- variant: s ? "primary" : "secondary",
406
- buttonStyle: s ? "solid" : "ghost",
407
- size: "small",
408
- onClick: () => {
409
- o(e), p?.();
410
- },
411
- className: t("h-auto gap-1 rounded px-1.5 py-0.5 text-xs font-medium ring-1 ring-inset transition-colors", s ? "bg-primary text-primary-foreground ring-primary" : u > 0 ? "bg-muted text-foreground ring-border/60 hover:bg-muted/80" : "bg-muted/40 text-muted-foreground ring-border/40 hover:bg-muted/60"),
412
- children: [
413
- i ? /* @__PURE__ */ y(i, { className: "size-3" }) : null,
414
- /* @__PURE__ */ y("span", { children: r?.label ?? String(e) }),
415
- u > 0 && /* @__PURE__ */ y("span", {
416
- className: t("tabular-nums", s ? "opacity-90" : "opacity-70"),
417
- children: u
418
- })
419
- ]
420
- }, e);
421
- })
422
- })]
423
- }), /* @__PURE__ */ b("div", {
424
- className: "max-h-72 overflow-y-auto py-1",
425
- ...u.length > 0 ? {
426
- role: "listbox",
427
- "aria-label": _.title
428
- } : {},
429
- children: [
430
- d ? /* @__PURE__ */ b("div", {
431
- className: "text-muted-foreground flex items-center justify-center gap-2 py-3",
432
- children: [/* @__PURE__ */ y(x, {
433
- className: "size-3.5 animate-spin",
434
- "aria-hidden": !0
435
- }), /* @__PURE__ */ y(r, {
436
- tag: "span",
437
- size: "xs",
438
- type: "secondary",
439
- children: _.loading
440
- })]
441
- }) : null,
442
- !d && u.length === 0 ? /* @__PURE__ */ y("div", {
443
- className: "px-3 py-3",
444
- children: /* @__PURE__ */ y(r, {
445
- size: "xs",
446
- type: "secondary",
447
- children: _.empty
448
- })
449
- }) : null,
450
- u.map((e) => {
451
- let i = e.kind ?? a ?? "";
452
- return /* @__PURE__ */ y(n, {
453
- type: "button",
454
- variant: "secondary",
455
- buttonStyle: "ghost",
456
- size: "default",
457
- role: "option",
458
- "data-ref-id": `${i}:${e.id}`,
459
- onClick: () => m(e),
460
- className: t("h-auto w-full min-w-0 justify-start gap-2 rounded-none px-3 py-1.5 text-left", "hover:bg-muted/60 focus-visible:bg-muted/60 transition-colors"),
461
- children: /* @__PURE__ */ b("div", {
462
- className: "flex min-w-0 flex-1 flex-col leading-tight",
463
- children: [/* @__PURE__ */ y(r, {
464
- tag: "span",
465
- size: "xs",
466
- weight: "medium",
467
- className: "truncate",
468
- children: e.label
469
- }), e.description ? /* @__PURE__ */ y(r, {
470
- tag: "span",
471
- size: "xs",
472
- type: "secondary",
473
- className: "mt-0.5 truncate",
474
- children: e.description
475
- }) : null]
476
- })
477
- }, `${i}:${e.id}`);
478
- })
479
- ]
480
- })]
481
- }) : null;
482
- }
483
- //#endregion
484
- //#region src/components/features/mentions/utils/parse-mentions-from-html.ts
485
- var I = /<(?:span|a)\b[^>]*?data-ref-id\s*=\s*"([^"]+)"[^>]*?>([\s\S]*?)<\/(?:span|a)>/gi, L = /data-ref-kind\s*=\s*"([^"]+)"/i;
486
- function R(e) {
487
- let t = [];
488
- if (!e) return t;
489
- let n = /* @__PURE__ */ new Set(), r;
490
- for (I.lastIndex = 0; (r = I.exec(e)) !== null;) {
491
- let [e, i, a] = r;
492
- if (n.has(i)) continue;
493
- n.add(i);
494
- let o = e.match(L)?.[1] ?? i.split(":")[0] ?? "", s = (a ?? "").replace(/<[^>]*>/g, "").replace(/&nbsp;/g, " ").replace(/^[@#$&%!~]\s*/, "").trim();
495
- t.push({
496
- id: i,
497
- kind: o,
498
- label: s
499
- });
500
- }
501
- return t;
502
- }
503
- //#endregion
504
- export { M as a, O as c, C as d, S as f, N as i, E as l, F as n, A as o, P as r, j as s, R as t, w as u };
505
-
506
- //# sourceMappingURL=mentions-CBhP29St.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mentions-CBhP29St.js","names":[],"sources":["../../src/components/features/mentions/hooks/use-mentions-search.ts","../../src/components/features/mentions/utils/build-mention-html.ts","../../src/components/features/mentions/hooks/use-mentions.ts","../../src/components/features/mentions/partials/mention-chip.tsx","../../src/components/features/mentions/utils/split-html-by-mentions.ts","../../src/components/features/mentions/partials/mention-content.tsx","../../src/components/features/mentions/mentions.strings.ts","../../src/components/features/mentions/partials/mention-picker.tsx","../../src/components/features/mentions/partials/mention-inline-suggestions.tsx","../../src/components/features/mentions/utils/parse-mentions-from-html.ts"],"sourcesContent":["/**\n * useMentionsSearch — pure search state for the mention picker.\n *\n * Runs **all registered kinds in parallel** for the same needle so the\n * caller can render mixed results in tabs and the picker can auto-\n * switch when the active kind has zero matches but another does. The\n * caller still controls which kind is *active* (the one whose\n * suggestions render); manual switches are remembered and not\n * overridden by subsequent caret-driven re-detections.\n *\n * Suggestion lookup order per kind:\n * 1. `resources[kind].search(needle)` — per-kind callback\n * 2. `resources[kind].suggestions` — static catalogue\n * 3. global `onResourceSearch(needle, kind)` — fallback\n */\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\n\nimport type {\n Mention,\n MentionResource,\n MentionSuggestion,\n MentionsResourceSearch,\n} from '../mentions.types';\n\nexport interface UseMentionsSearchOptions<TResource extends string = string> {\n resources?: Partial<Record<TResource, MentionResource<TResource>>>;\n onResourceSearch?: MentionsResourceSearch<TResource>;\n initialMentions?: ReadonlyArray<Mention<TResource>>;\n /** Debounce window for async search. Default: 200ms. */\n debounceMs?: number;\n}\n\nexport interface UseMentionsSearchReturn<TResource extends string = string> {\n kinds: ReadonlyArray<TResource>;\n activeKind: TResource | null;\n setActiveKind: (kind: TResource | null) => void;\n activeResource: MentionResource<TResource> | null;\n\n query: string;\n setQuery: (q: string) => void;\n\n /** Suggestions for the active kind (`suggestionsByKind[activeKind]`). */\n suggestions: ReadonlyArray<MentionSuggestion<TResource>>;\n /** Per-kind suggestion buckets — useful for cross-kind UIs. */\n suggestionsByKind: Readonly<Record<string, ReadonlyArray<MentionSuggestion<TResource>>>>;\n isLoading: boolean;\n\n mentions: ReadonlyArray<Mention<TResource>>;\n addMention: (mention: Mention<TResource>) => void;\n removeMention: (id: string) => void;\n setMentions: (next: ReadonlyArray<Mention<TResource>>) => void;\n reset: () => void;\n\n selectSuggestion: (\n suggestion: MentionSuggestion<TResource>,\n ) => Mention<TResource>;\n\n /** True if the consumer manually picked a tab. The trigger detector\n * checks this and refuses to override the active kind on next caret\n * change while it's true. Reset on `setManualKindOverride(false)` or\n * `reset()`. */\n manualKindOverride: boolean;\n setManualKindOverride: (override: boolean) => void;\n}\n\nexport function useMentionsSearch<TResource extends string = string>(\n options: UseMentionsSearchOptions<TResource> = {},\n): UseMentionsSearchReturn<TResource> {\n const { resources, onResourceSearch, initialMentions, debounceMs = 200 } = options;\n\n const kinds = useMemo<ReadonlyArray<TResource>>(\n () => (resources ? (Object.keys(resources) as TResource[]) : []),\n [resources],\n );\n\n const [activeKind, setActiveKindState] = useState<TResource | null>(\n () => kinds[0] ?? null,\n );\n const [manualKindOverride, setManualKindOverride] = useState(false);\n const [query, setQueryState] = useState('');\n const [suggestionsByKind, setSuggestionsByKind] = useState<\n Record<string, ReadonlyArray<MentionSuggestion<TResource>>>\n >({});\n const [isLoading, setIsLoading] = useState(false);\n const [mentions, setMentionsState] = useState<Mention<TResource>[]>(() =>\n initialMentions ? [...initialMentions] : [],\n );\n\n const requestIdRef = useRef(0);\n const debounceRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n useEffect(() => {\n if (kinds.length === 0) {\n setActiveKindState(null);\n return;\n }\n if (!activeKind || !kinds.includes(activeKind)) {\n setActiveKindState(kinds[0]);\n }\n }, [activeKind, kinds]);\n\n const activeResource = useMemo(\n () => (activeKind && resources ? resources[activeKind] ?? null : null),\n [activeKind, resources],\n );\n\n /**\n * Search a single kind. Per-kind `search` wins, then static\n * `suggestions`, then the global `onResourceSearch` fallback.\n */\n const searchOneKind = useCallback(\n async (\n kind: TResource,\n q: string,\n ): Promise<ReadonlyArray<MentionSuggestion<TResource>>> => {\n const config = resources?.[kind];\n if (config?.search) {\n const result = await config.search(q);\n return result.map((s) => ({ ...s, kind }));\n }\n if (config?.suggestions) {\n const stat = config.suggestions;\n const filtered =\n q.trim().length === 0\n ? stat\n : stat.filter((s) =>\n s.label.toLowerCase().includes(q.toLowerCase()),\n );\n return filtered.map((s) => ({ ...s, kind }));\n }\n if (onResourceSearch) {\n const result = await onResourceSearch(q, kind);\n return result.map((s) => ({ ...s, kind }));\n }\n return [];\n },\n [resources, onResourceSearch],\n );\n\n // Debounced cross-kind search runner. Populates `suggestionsByKind`\n // for every registered kind in parallel.\n useEffect(() => {\n if (debounceRef.current) {\n clearTimeout(debounceRef.current);\n }\n if (kinds.length === 0) {\n setSuggestionsByKind({});\n return;\n }\n\n const requestId = ++requestIdRef.current;\n const run = async () => {\n setIsLoading(true);\n try {\n const entries = await Promise.all(\n kinds.map(async (kind) => {\n try {\n const list = await searchOneKind(kind, query);\n return [kind, list] as const;\n } catch {\n return [kind, []] as const;\n }\n }),\n );\n if (requestId !== requestIdRef.current) return;\n const next: Record<string, ReadonlyArray<MentionSuggestion<TResource>>> = {};\n for (const [kind, list] of entries) {\n next[kind] = list;\n }\n setSuggestionsByKind(next);\n } finally {\n if (requestId === requestIdRef.current) {\n setIsLoading(false);\n }\n }\n };\n\n debounceRef.current = setTimeout(() => {\n void run();\n }, debounceMs);\n\n return () => {\n if (debounceRef.current) clearTimeout(debounceRef.current);\n };\n }, [kinds, query, searchOneKind, debounceMs]);\n\n /**\n * Auto-switch behaviour: when the active kind has zero results but\n * another kind has matches, jump to the first kind with results.\n * Skipped while `manualKindOverride` is true so the consumer's tab\n * choice sticks.\n */\n useEffect(() => {\n if (manualKindOverride) return;\n if (!activeKind) return;\n const activeList = suggestionsByKind[activeKind] ?? [];\n if (activeList.length > 0) return;\n const first = kinds.find((k) => (suggestionsByKind[k]?.length ?? 0) > 0);\n if (first && first !== activeKind) {\n setActiveKindState(first);\n }\n }, [activeKind, kinds, manualKindOverride, suggestionsByKind]);\n\n /**\n * Set the active kind. **Does not** toggle `manualKindOverride` —\n * the picker UI is responsible for calling\n * `setManualKindOverride(true)` when the user explicitly clicks a\n * tab so the auto-switch / auto-detect logic respects their choice.\n */\n const setActiveKind = useCallback((kind: TResource | null) => {\n setActiveKindState(kind);\n }, []);\n\n const setQuery = useCallback((q: string) => {\n setQueryState(q);\n }, []);\n\n const addMention = useCallback((mention: Mention<TResource>) => {\n setMentionsState((prev) => {\n if (prev.some((m) => m.id === mention.id)) return prev;\n return [...prev, mention];\n });\n }, []);\n\n const removeMention = useCallback((id: string) => {\n setMentionsState((prev) => prev.filter((m) => m.id !== id));\n }, []);\n\n const setMentions = useCallback(\n (next: ReadonlyArray<Mention<TResource>>) => {\n setMentionsState([...next]);\n },\n [],\n );\n\n const reset = useCallback(() => {\n setMentionsState([]);\n setQueryState('');\n setManualKindOverride(false);\n requestIdRef.current++;\n }, []);\n\n const selectSuggestion = useCallback(\n (suggestion: MentionSuggestion<TResource>) => {\n const kind = (suggestion.kind ?? activeKind) as TResource;\n const id = `${kind}:${suggestion.id}`;\n const cfg = resources?.[kind];\n const href = suggestion.href ?? cfg?.buildHref?.(suggestion);\n const mention: Mention<TResource> = {\n id,\n kind,\n label: suggestion.label,\n href,\n data: suggestion.data,\n };\n addMention(mention);\n return mention;\n },\n [activeKind, addMention, resources],\n );\n\n const suggestions = useMemo<ReadonlyArray<MentionSuggestion<TResource>>>(\n () => (activeKind ? suggestionsByKind[activeKind] ?? [] : []),\n [activeKind, suggestionsByKind],\n );\n\n return {\n kinds,\n activeKind,\n setActiveKind,\n activeResource,\n query,\n setQuery,\n suggestions,\n suggestionsByKind,\n isLoading,\n mentions,\n addMention,\n removeMention,\n setMentions,\n reset,\n selectSuggestion,\n manualKindOverride,\n setManualKindOverride,\n };\n}\n","import type { Mention, MentionTone } from '../mentions.types';\n\n/**\n * Serialize a `Mention` into the HTML span that gets inserted into a\n * rich-text body. The structure mirrors `<MentionChip>` so the editor\n * can style it via the `.rsc-mention` / `[data-ref-tone]` rules (see\n * mention-chip.css, co-located in this feature) and the read-time\n * renderer (`<MentionContent>`) can find it again.\n *\n * <span class=\"rsc-mention\" data-ref-id=\"kind:id\" data-ref-kind=\"kind\"\n * data-ref-tone=\"info\" contenteditable=\"false\">@Maria Petrova</span>&nbsp;\n *\n * `data-ref-tone` is what drives the badge colour in both the editor\n * (CSS-only, since contenteditable can't host React) and the read-time\n * renderer (which respects it as a hint when the resource registry\n * isn't available).\n *\n * `contenteditable=\"false\"` tells the browser to treat the chip as an\n * atomic glyph — backspace deletes the whole span, the cursor moves\n * past it, and the inner label can't be edited character-by-character.\n */\nexport function buildMentionHtml<TKind extends string = string>(\n mention: Mention<TKind>,\n options?: { triggerChar?: string; tone?: MentionTone },\n): string {\n const safeLabel = String(mention.label ?? '')\n .replace(/&/g, '&amp;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;');\n const id = String(mention.id).replace(/\"/g, '&quot;');\n const kind = String(mention.kind).replace(/\"/g, '&quot;');\n const tone = options?.tone ? String(options.tone).replace(/\"/g, '&quot;') : '';\n const trigger =\n options?.triggerChar ?? (mention.kind === 'user' ? '@' : '');\n const toneAttr = tone ? ` data-ref-tone=\"${tone}\"` : '';\n return (\n `<span class=\"rsc-mention\" data-ref-id=\"${id}\" data-ref-kind=\"${kind}\"${toneAttr} contenteditable=\"false\">` +\n `${trigger}${safeLabel}` +\n `</span>&nbsp;`\n );\n}\n","/**\n * useMentions — picker state + caret-trigger detection bound to an editor.\n *\n * Composes `useMentionsSearch` (suggestion state) with caret-watch\n * logic. The editor it binds to must implement the minimal handle\n * surface in `MentionEditorHandle` — `<RichTextEditor>` from\n * `features/rich-text-editor` already does. Other editors (Slate,\n * Lexical, ProseMirror, plain contenteditable, …) can be plugged in by\n * implementing the same four methods on their imperative handle.\n *\n * Behaviour summary:\n * - On every editor `onCaretChange`, the hook reads `getCaretContext()`\n * and looks for a registered trigger char (`@`, `#`, …) preceded by\n * start-of-line / whitespace and followed by `\\p{L}\\p{N}_-` chars.\n * - On match, the picker opens, `activeKind` is seeded from the\n * trigger char (only on a *fresh* trigger session — manual tab\n * switches survive subsequent keystrokes), and `query` syncs from\n * the typed needle.\n * - All registered kinds are searched in parallel; the active kind\n * auto-switches to the first kind with results when the current\n * active is empty (skipped if `manualKindOverride` is true).\n * - `pickSuggestion` deletes the trigger range and inserts the chip\n * atomically via `replaceBeforeCaret` — selection-extension means\n * no manual text mutation, no race between delete + insert.\n * - When opened via the manual button (no trigger detected), the\n * selection runs `insertHTML` instead — caret stays where it was.\n *\n * Returned API:\n * pickerOpen, setPickerOpen, triggerActive,\n * kinds, activeKind, setActiveKind, manualKindOverride, setManualKindOverride,\n * query, setQuery, suggestions, suggestionsByKind, isLoading,\n * mentions, addMention, removeMention, setMentions, reset,\n * handleCaretChange() — wire to the editor's `onCaretChange`\n * pickSuggestion(s) — convert suggestion → Mention + insert chip\n *\n * @example\n * const editorRef = useRef<RichTextEditorHandle>(null);\n * const mentions = useMentions<'user' | 'order'>({ editorRef });\n *\n * <RichTextEditor ref={editorRef} onCaretChange={mentions.handleCaretChange} />\n * <MentionInlineSuggestions\n * open={mentions.triggerActive && mentions.pickerOpen}\n * activeKind={mentions.activeKind}\n * setActiveKind={mentions.setActiveKind}\n * onManualKindChange={() => mentions.setManualKindOverride(true)}\n * {...mentions}\n * onSelect={mentions.pickSuggestion}\n * />\n */\nimport { useCallback, useRef, useState } from 'react';\nimport type { RefObject } from 'react';\n\nimport type {\n Mention,\n MentionResource,\n MentionSuggestion,\n MentionsResourceSearch,\n} from '../mentions.types';\nimport { buildMentionHtml } from '../utils/build-mention-html';\nimport {\n useMentionsSearch,\n type UseMentionsSearchOptions,\n type UseMentionsSearchReturn,\n} from './use-mentions-search';\n\n/**\n * Minimal editor handle the trigger detector needs. Compatible with the\n * library's `<RichTextEditor>` handle — implement these on any custom\n * editor to plug in.\n */\nexport interface MentionEditorHandle {\n getCaretContext(): { textBefore: string } | null;\n insertHTML(html: string): void;\n replaceBeforeCaret(length: number, html: string): void;\n focus(): void;\n}\n\nexport interface UseMentionsOptions<TResource extends string = string>\n extends UseMentionsSearchOptions<TResource> {\n /** Ref to the editor surface the trigger detector reads from. */\n editorRef?: RefObject<MentionEditorHandle | null>;\n}\n\nexport interface UseMentionsReturn<TResource extends string = string>\n extends UseMentionsSearchReturn<TResource> {\n pickerOpen: boolean;\n setPickerOpen: (open: boolean) => void;\n /** True while the picker is open from an inline `@`/`#` trigger. */\n triggerActive: boolean;\n /** Wire to the editor's `onCaretChange` to enable inline triggers. */\n handleCaretChange: () => void;\n /**\n * Convert a suggestion into a Mention, register it, insert the chip\n * into the editor (replacing the trigger range when one is active),\n * and close the picker. Returns the Mention.\n */\n pickSuggestion: (\n suggestion: MentionSuggestion<TResource>,\n ) => Mention<TResource>;\n}\n\ninterface TriggerState {\n kind: string;\n triggerChar: string;\n consumedLength: number;\n}\n\nexport function useMentions<TResource extends string = string>(\n options: UseMentionsOptions<TResource> = {},\n): UseMentionsReturn<TResource> {\n const resources = options.resources;\n const onResourceSearch: MentionsResourceSearch<TResource> | undefined =\n options.onResourceSearch;\n\n const search = useMentionsSearch<TResource>({\n ...options,\n resources,\n onResourceSearch,\n });\n\n const [pickerOpen, setPickerOpenState] = useState(false);\n const [triggerActive, setTriggerActive] = useState(false);\n const triggerStateRef = useRef<TriggerState | null>(null);\n /** Tracks the trigger char from the most recent detection — lets us\n * set the initial active kind on a fresh trigger without overriding\n * the user's manual tab switch on every subsequent keystroke. */\n const lastTriggerCharRef = useRef<string | null>(null);\n\n const setPickerOpen = useCallback((open: boolean) => {\n setPickerOpenState(open);\n if (!open) {\n triggerStateRef.current = null;\n lastTriggerCharRef.current = null;\n setTriggerActive(false);\n search.setManualKindOverride(false);\n }\n }, [search]);\n\n const editorRef = options.editorRef;\n\n const handleCaretChange = useCallback(() => {\n if (!resources) return;\n const triggerMap: Record<string, string> = {};\n for (const [kind, cfg] of Object.entries(resources)) {\n const trig = (cfg as MentionResource | undefined)?.trigger;\n if (typeof trig === 'string' && trig.length > 0) {\n triggerMap[trig] = kind;\n }\n }\n if (Object.keys(triggerMap).length === 0) return;\n\n const ctx = editorRef?.current?.getCaretContext();\n if (!ctx) {\n if (triggerStateRef.current) {\n triggerStateRef.current = null;\n setPickerOpen(false);\n }\n return;\n }\n const triggers = Object.keys(triggerMap)\n .map((c) => c.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&'))\n .join('');\n const re = new RegExp(`(?:^|\\\\s)([${triggers}])([\\\\p{L}\\\\p{N}_-]*)$`, 'u');\n const match = ctx.textBefore.match(re);\n if (!match) {\n if (triggerStateRef.current) {\n triggerStateRef.current = null;\n setPickerOpen(false);\n }\n return;\n }\n const triggerChar = match[1];\n const needle = match[2] ?? '';\n const kind = triggerMap[triggerChar];\n const consumedLength = triggerChar.length + needle.length;\n\n triggerStateRef.current = { kind, triggerChar, consumedLength };\n setTriggerActive(true);\n\n // Only seed the initial active kind on a *fresh* trigger session.\n // If the user has already picked a tab in the panel,\n // `manualKindOverride` is true and we skip — their choice sticks\n // even as they keep typing or deleting characters.\n const isNewTriggerSession = lastTriggerCharRef.current !== triggerChar;\n if (isNewTriggerSession) {\n if (search.activeKind !== kind) {\n search.setActiveKind(kind as TResource);\n }\n search.setManualKindOverride(false);\n lastTriggerCharRef.current = triggerChar;\n }\n\n if (search.query !== needle) {\n search.setQuery(needle);\n }\n setPickerOpenState(true);\n }, [editorRef, resources, search, setPickerOpen]);\n\n const pickSuggestion = useCallback(\n (suggestion: MentionSuggestion<TResource>) => {\n const mention = search.selectSuggestion(suggestion);\n const trigger = triggerStateRef.current;\n const tone = (resources?.[mention.kind] as MentionResource | undefined)?.tone;\n const html = buildMentionHtml(mention, {\n triggerChar: trigger?.triggerChar,\n tone,\n });\n\n if (trigger && trigger.consumedLength > 0 && editorRef?.current) {\n editorRef.current.replaceBeforeCaret(trigger.consumedLength, html);\n triggerStateRef.current = null;\n } else if (editorRef?.current) {\n editorRef.current.insertHTML(html);\n }\n setPickerOpen(false);\n return mention;\n },\n [editorRef, resources, search, setPickerOpen],\n );\n\n return {\n ...search,\n pickerOpen,\n setPickerOpen,\n triggerActive,\n handleCaretChange,\n pickSuggestion,\n };\n}\n","/**\n * MentionChip — default rendering for an inline mention/reference.\n *\n * Wraps the lib's `<Badge>` base component with the variant driven by\n * the resource registry's `tone` field. The mapping between the\n * mentions module's `MentionTone` and the badge's variant lives below\n * (`TONE_TO_VARIANT`) so consumers can rebrand by editing one table.\n *\n * Override paths:\n * - `renderMention` on `<MentionContent>` — full takeover\n * - `resources.<kind>.renderChip(mention)` — per-kind takeover\n * - `resources.<kind>.tone` — quickest \"just change the color\" override\n */\nimport type { FC, ReactNode } from 'react';\n\nimport { Badge, type ComposedBadgeVariant } from '@/components/base/badge';\nimport { cn } from '@/lib/utils';\n\nimport type {\n Mention,\n MentionResource,\n MentionTone,\n} from '../mentions.types';\n\nexport interface MentionChipProps {\n mention: Mention;\n resource?: MentionResource<string>;\n /** Force-disable the chip's link (useful inside the composer draft list). */\n asLink?: boolean;\n onClick?: () => void;\n /** Trailing slot — typically a remove button when shown in the composer. */\n trailing?: ReactNode;\n className?: string;\n}\n\n/**\n * Single source of truth for `MentionTone → Badge variant`. Edit here\n * to rebrand all chips library-wide; override per-kind via\n * `resources.<kind>.tone`.\n */\nconst TONE_TO_VARIANT: Record<MentionTone, ComposedBadgeVariant> = {\n primary: 'secondary', // calm primary — saturated `primary` overwhelms body copy\n success: 'success',\n warning: 'warning',\n destructive: 'destructive',\n info: 'info',\n secondary: 'secondary',\n};\n\nexport const MentionChip: FC<MentionChipProps> = ({\n mention,\n resource,\n asLink = true,\n onClick,\n trailing,\n className,\n}) => {\n if (resource?.renderChip) {\n return <>{resource.renderChip(mention)}</>;\n }\n\n const tone = resource?.tone ?? 'secondary';\n const variant = TONE_TO_VARIANT[tone] ?? TONE_TO_VARIANT.secondary;\n const Icon = resource?.icon;\n\n const inner = (\n <Badge\n variant={variant}\n inline\n data-ref-id={mention.id}\n data-ref-kind={mention.kind}\n className={cn(\n 'mention-chip--component',\n /* Inline-flow tweaks: align to the surrounding text baseline\n instead of the line's mid-point, which causes wobble next\n to text. Keep the badge as `inline-flex` (from `inline`),\n add a subtle vertical offset via translate so the icon\n sits on the cap-height. */\n 'align-[-0.15em] cursor-default whitespace-nowrap',\n className,\n )}\n >\n {Icon ? <Icon className=\"size-3 shrink-0\" aria-hidden /> : null}\n <span className=\"truncate max-w-[14rem]\">{mention.label}</span>\n {trailing}\n </Badge>\n );\n\n if (asLink && mention.href) {\n return (\n <a\n href={mention.href}\n target=\"_blank\"\n rel=\"noreferrer noopener\"\n onClick={onClick}\n className=\"inline align-baseline no-underline hover:opacity-90\"\n >\n {inner}\n </a>\n );\n }\n\n if (onClick) {\n return (\n <span onClick={onClick} className=\"inline align-baseline\">\n {inner}\n </span>\n );\n }\n\n return inner;\n};\n","/**\n * Split an HTML string into a list of `html` chunks and `mention`\n * placeholders, keyed by the `data-ref-id` attribute the writer set.\n *\n * Used by `<MentionContent>` to render the body once with React chips\n * for the references and `dangerouslySetInnerHTML` for everything else.\n */\nexport type MentionHtmlSegment =\n | { kind: 'html'; value: string }\n | { kind: 'mention'; refId: string; fallback: string };\n\nconst MENTION_RE =\n /<(span|a)\\b([^>]*?)data-ref-id\\s*=\\s*\"([^\"]+)\"([^>]*)>([\\s\\S]*?)<\\/\\1>/gi;\n\nexport function splitHtmlByMentions(html: string): MentionHtmlSegment[] {\n if (!html) return [];\n\n const segments: MentionHtmlSegment[] = [];\n let lastIndex = 0;\n let match: RegExpExecArray | null;\n MENTION_RE.lastIndex = 0;\n\n while ((match = MENTION_RE.exec(html)) !== null) {\n const [full, , , refId] = match;\n const before = html.slice(lastIndex, match.index);\n if (before.length > 0) {\n segments.push({ kind: 'html', value: before });\n }\n segments.push({\n kind: 'mention',\n refId,\n fallback: full,\n });\n lastIndex = match.index + full.length;\n }\n\n const tail = html.slice(lastIndex);\n if (tail.length > 0) {\n segments.push({ kind: 'html', value: tail });\n }\n\n return segments;\n}\n","/**\n * MentionContent — render an HTML body that may contain inline mention\n * spans (`<span data-ref-id=\"kind:id\">…</span>`) by swapping each ref\n * for a React `<MentionChip>` while leaving the rest of the HTML\n * untouched.\n *\n * Used by:\n * - `features/comments` — comment bodies\n * - `features/event-log` — event descriptions\n * - any other surface that renders rich-text with embedded refs\n *\n * Consumer can override per-mention rendering via `renderMention`, or\n * per-kind via the resource registry's `renderChip`.\n */\nimport { Fragment } from 'react';\nimport type { FC, ReactNode } from 'react';\n\nimport { cn } from '@/lib/utils';\n\nimport type {\n Mention,\n MentionResource,\n MentionsConfig,\n} from '../mentions.types';\nimport { splitHtmlByMentions } from '../utils/split-html-by-mentions';\nimport { MentionChip } from './mention-chip';\n\nexport interface MentionContentProps<TResource extends string = string> {\n /** HTML body to render. */\n html: string;\n /** Mentions resolved on the data — keyed by `data-ref-id`. */\n mentions?: ReadonlyArray<Mention<TResource>>;\n /** Resource registry — pass at the call site. */\n resources?: MentionsConfig<TResource>['resources'];\n /** Custom per-mention renderer — overrides resource.renderChip. */\n renderMention?: (mention: Mention<TResource>) => ReactNode;\n /** Optional sanitizer applied to HTML before rendering. */\n sanitizer?: (html: string) => string;\n /** Outer wrapper class. Defaults to a tight prose surface. */\n className?: string;\n /**\n * Set to `false` to skip the default prose wrapper — useful when\n * embedding inside an existing typed surface (e.g. timeline rows).\n */\n prose?: boolean;\n}\n\nconst DEFAULT_PROSE_CLASS =\n 'prose prose-sm prose-p:my-0.5 prose-p:leading-relaxed prose-headings:my-1 prose-a:text-primary prose-a:no-underline hover:prose-a:underline prose-strong:font-semibold prose-ul:my-0.5 prose-ol:my-0.5 prose-li:my-0.5 max-w-none';\n\nexport function MentionContent<TResource extends string = string>(\n props: MentionContentProps<TResource>,\n): ReactNode {\n const {\n html,\n mentions,\n resources: resourcesProp,\n renderMention,\n sanitizer,\n className,\n prose = true,\n } = props;\n\n const resources = resourcesProp;\n\n const sanitized = sanitizer ? sanitizer(html ?? '') : (html ?? '');\n\n const mentionsById = new Map<string, Mention<TResource>>();\n for (const m of mentions ?? []) mentionsById.set(m.id, m);\n\n const hasMentions = mentionsById.size > 0;\n const segments = hasMentions\n ? splitHtmlByMentions(sanitized)\n : [{ kind: 'html' as const, value: sanitized }];\n\n const renderRef = (mention: Mention<TResource>): ReactNode => {\n if (renderMention) return renderMention(mention);\n const resource = resources?.[mention.kind] as\n | MentionResource<string>\n | undefined;\n return <MentionChip mention={mention} resource={resource} />;\n };\n\n const body = segments.map((segment, index) => {\n if (segment.kind === 'mention') {\n const mention = mentionsById.get(segment.refId);\n if (!mention) {\n return (\n <span\n key={`fallback-${index}`}\n dangerouslySetInnerHTML={{ __html: segment.fallback }}\n />\n );\n }\n return (\n <Fragment key={`ref-${index}-${segment.refId}`}>\n {renderRef(mention)}\n </Fragment>\n );\n }\n // Render the HTML segment directly. The lib's `Text asHTML` escapes\n // via a strict sanitiser — bypass it for trusted editor output.\n // Consumers must pass `sanitizer` for untrusted content.\n return (\n <span\n key={`html-${index}`}\n dangerouslySetInnerHTML={{ __html: segment.value }}\n />\n );\n });\n\n if (!prose) {\n return <>{body}</>;\n }\n\n return (\n <div className={cn('mention-content--component', DEFAULT_PROSE_CLASS, className)}>{body}</div>\n );\n}\n\n/** FC alias for callsites that prefer the `<MentionContent>` element form. */\nexport const MentionContentComponent: FC<MentionContentProps> = (props) => (\n <MentionContent {...props} />\n);\n","/**\n * Default user-facing strings for the `features/mentions` partials.\n *\n * Both `<MentionPicker>` and `<MentionInlineSuggestions>` consume their\n * respective slice; `<MentionInlineSuggestions>` is a strict subset.\n * Consumers wire backend i18n at the call site:\n *\n * <MentionPicker strings={{ empty: t('mentions.empty') }} … />\n */\n\nexport interface MentionPickerStrings {\n\ttitle: string;\n\tsearchPlaceholder: string;\n\tempty: string;\n\tloading: string;\n}\n\nexport const defaultMentionPickerStrings: MentionPickerStrings = {\n\ttitle: 'Insert reference',\n\tsearchPlaceholder: 'Search…',\n\tempty: 'No matches.',\n\tloading: 'Searching…',\n};\n\nexport interface MentionInlineSuggestionsStrings {\n\ttitle: string;\n\tempty: string;\n\tloading: string;\n}\n\nexport const defaultMentionInlineSuggestionsStrings: MentionInlineSuggestionsStrings = {\n\ttitle: 'Insert reference',\n\tempty: 'No matches.',\n\tloading: 'Searching…',\n};\n","/**\n * MentionPicker — popover content for the mention/reference picker.\n *\n * Pure UI: takes the state from `useMentions` (or any equivalent hook)\n * and renders kind tabs + a cmdk search list. Wrapped in `<Popover>` by\n * the consumer:\n *\n * <Popover open={mentions.pickerOpen} onOpenChange={mentions.setPickerOpen}>\n * <PopoverTrigger ... />\n * <MentionPicker ... />\n * </Popover>\n */\nimport { Loader2 } from 'lucide-react';\n\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from '@/components/base/command';\nimport { Button } from '@/components/base/buttons';\nimport { PopoverContent } from '@/components/base/popover';\nimport { Text } from '@/components/typography';\nimport { useStrings, type StringsProp } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport {\n defaultMentionPickerStrings,\n type MentionPickerStrings,\n} from '../mentions.strings';\nimport type {\n MentionResource,\n MentionSuggestion,\n} from '../mentions.types';\n\nexport type { MentionPickerStrings };\n\nexport interface MentionPickerProps<TResource extends string = string> {\n open: boolean;\n activeKind: TResource | null;\n setActiveKind: (kind: TResource | null) => void;\n kinds: ReadonlyArray<TResource>;\n resources?: Partial<Record<TResource, MentionResource<TResource>>>;\n query: string;\n setQuery: (query: string) => void;\n suggestions: ReadonlyArray<MentionSuggestion<TResource>>;\n isLoading: boolean;\n onSelect: (suggestion: MentionSuggestion<TResource>) => void;\n strings?: StringsProp<MentionPickerStrings>;\n className?: string;\n}\n\nexport function MentionPicker<TResource extends string = string>({\n open,\n activeKind,\n setActiveKind,\n kinds,\n resources,\n query,\n setQuery,\n suggestions,\n isLoading,\n onSelect,\n strings: stringsProp,\n className,\n}: MentionPickerProps<TResource>) {\n const strings = useStrings(defaultMentionPickerStrings, stringsProp);\n if (!open) return null;\n\n return (\n <PopoverContent\n align=\"start\"\n className={cn('mention-picker--component', 'w-72 overflow-hidden p-0', className)}\n >\n <div className=\"border-b border-border/60 px-3 py-2\">\n <Text\n size=\"xs\"\n type=\"secondary\"\n weight=\"medium\"\n className=\"uppercase tracking-wide\"\n >\n {strings.title}\n </Text>\n {kinds.length > 1 && (\n <div className=\"mt-2 flex flex-wrap gap-1\">\n {kinds.map((kind) => {\n const cfg = resources?.[kind];\n const Icon = cfg?.icon;\n const active = kind === activeKind;\n return (\n <Button\n key={kind}\n type=\"button\"\n variant={active ? 'primary' : 'secondary'}\n buttonStyle={active ? 'solid' : 'ghost'}\n size=\"small\"\n onClick={() => setActiveKind(kind)}\n className={cn(\n 'h-auto gap-1 rounded px-1.5 py-0.5 text-xs font-medium ring-1 ring-inset transition-colors',\n active\n ? 'bg-primary text-primary-foreground ring-primary'\n : 'bg-muted text-muted-foreground ring-border/60 hover:bg-muted/80',\n )}\n >\n {Icon ? <Icon className=\"size-3\" /> : null}\n <span>{cfg?.label ?? String(kind)}</span>\n </Button>\n );\n })}\n </div>\n )}\n </div>\n\n <Command shouldFilter={false}>\n <CommandInput\n placeholder={strings.searchPlaceholder}\n value={query}\n onValueChange={setQuery}\n />\n <CommandList>\n {isLoading ? (\n <div className=\"text-muted-foreground flex items-center justify-center gap-2 py-3\">\n <Loader2 className=\"size-3.5 animate-spin\" aria-hidden />\n <Text tag=\"span\" size=\"xs\" type=\"secondary\">\n {strings.loading}\n </Text>\n </div>\n ) : null}\n <CommandEmpty>{strings.empty}</CommandEmpty>\n <CommandGroup>\n {suggestions.map((suggestion) => {\n const kind = suggestion.kind ?? activeKind ?? '';\n return (\n <CommandItem\n key={`${kind}:${suggestion.id}`}\n value={`${kind}:${suggestion.id}`}\n onSelect={() => onSelect(suggestion)}\n >\n <div className=\"flex min-w-0 flex-1 flex-col leading-tight\">\n <Text tag=\"span\" size=\"xs\" weight=\"medium\" className=\"truncate\">\n {suggestion.label}\n </Text>\n {suggestion.description ? (\n <Text\n tag=\"span\"\n size=\"xs\"\n type=\"secondary\"\n className=\"mt-0.5 truncate\"\n >\n {suggestion.description}\n </Text>\n ) : null}\n </div>\n </CommandItem>\n );\n })}\n </CommandGroup>\n </CommandList>\n </Command>\n </PopoverContent>\n );\n}\n","/**\n * MentionInlineSuggestions — non-focus-stealing suggestion list.\n *\n * Used in the *inline-trigger* flow (user typed `@` / `#` / …): the\n * editor stays focused while this panel renders below the surface and\n * updates live as the user keeps typing. No popover, no focus trap,\n * no CommandInput — the editor IS the input, we read the needle from\n * the caret context and stream results in.\n *\n * Position is \"anchored to a wrapping element\" — the consumer puts this\n * inside a `relative`-positioned wrapper around the editor and we\n * absolute-position ourselves below it.\n */\nimport { Loader2 } from 'lucide-react';\n\nimport { Button } from '@/components/base/buttons';\nimport { Text } from '@/components/typography';\nimport { useStrings, type StringsProp } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport {\n defaultMentionInlineSuggestionsStrings,\n type MentionInlineSuggestionsStrings,\n} from '../mentions.strings';\nimport type {\n MentionResource,\n MentionSuggestion,\n} from '../mentions.types';\n\nexport type { MentionInlineSuggestionsStrings };\n\nexport interface MentionInlineSuggestionsProps<TResource extends string = string> {\n open: boolean;\n activeKind: TResource | null;\n setActiveKind: (kind: TResource | null) => void;\n kinds: ReadonlyArray<TResource>;\n resources?: Partial<Record<TResource, MentionResource<TResource>>>;\n /** Per-kind suggestion buckets — used to render result counts on tabs. */\n suggestionsByKind?: Readonly<Record<string, ReadonlyArray<MentionSuggestion<TResource>>>>;\n suggestions: ReadonlyArray<MentionSuggestion<TResource>>;\n isLoading: boolean;\n /** Live query the panel echoes in the header; the consumer owns the editor input. */\n query?: string;\n /**\n * Notifies the consumer that the user manually picked a tab, so it\n * can flip the `manualKindOverride` flag on `useMentionsSearch`.\n */\n onManualKindChange?: () => void;\n onSelect: (suggestion: MentionSuggestion<TResource>) => void;\n strings?: StringsProp<MentionInlineSuggestionsStrings>;\n className?: string;\n}\n\nexport function MentionInlineSuggestions<TResource extends string = string>({\n open,\n activeKind,\n setActiveKind,\n kinds,\n resources,\n suggestionsByKind,\n suggestions,\n isLoading,\n query,\n onManualKindChange,\n onSelect,\n strings: stringsProp,\n className,\n}: MentionInlineSuggestionsProps<TResource>) {\n const strings = useStrings(defaultMentionInlineSuggestionsStrings, stringsProp);\n if (!open) return null;\n\n return (\n <div\n // `mousedown.preventDefault` keeps focus in the editor when\n // the user clicks inside the panel — clicks still bubble to\n // the underlying button so selection works normally.\n onMouseDown={(e) => e.preventDefault()}\n className={cn(\n 'mention-inline-suggestions--component',\n 'bg-popover text-popover-foreground absolute left-0 top-full z-40 mt-1 w-80 max-w-[min(theme(spacing.96),100%)]',\n 'border-border/60 rounded-md border shadow-md ring-1 ring-foreground/[0.04]',\n 'overflow-hidden',\n className,\n )}\n >\n <div className=\"border-b border-border/60 px-3 py-2\">\n <div className=\"flex items-baseline justify-between gap-2\">\n <Text\n size=\"xs\"\n type=\"secondary\"\n weight=\"medium\"\n className=\"uppercase tracking-wide\"\n >\n {strings.title}\n </Text>\n {query ? (\n <Text\n tag=\"span\"\n size=\"xs\"\n type=\"secondary\"\n className=\"truncate font-mono\"\n >\n “{query}”\n </Text>\n ) : null}\n </div>\n {kinds.length > 1 && (\n <div className=\"mt-2 flex flex-wrap gap-1\">\n {kinds.map((kind) => {\n const cfg = resources?.[kind];\n const Icon = cfg?.icon;\n const active = kind === activeKind;\n const count = suggestionsByKind?.[kind as string]?.length ?? 0;\n return (\n <Button\n key={kind}\n type=\"button\"\n variant={active ? 'primary' : 'secondary'}\n buttonStyle={active ? 'solid' : 'ghost'}\n size=\"small\"\n onClick={() => {\n setActiveKind(kind);\n onManualKindChange?.();\n }}\n className={cn(\n 'h-auto gap-1 rounded px-1.5 py-0.5 text-xs font-medium ring-1 ring-inset transition-colors',\n active\n ? 'bg-primary text-primary-foreground ring-primary'\n : count > 0\n ? 'bg-muted text-foreground ring-border/60 hover:bg-muted/80'\n : 'bg-muted/40 text-muted-foreground ring-border/40 hover:bg-muted/60',\n )}\n >\n {Icon ? <Icon className=\"size-3\" /> : null}\n <span>{cfg?.label ?? String(kind)}</span>\n {count > 0 && (\n <span\n className={cn(\n 'tabular-nums',\n active ? 'opacity-90' : 'opacity-70',\n )}\n >\n {count}\n </span>\n )}\n </Button>\n );\n })}\n </div>\n )}\n </div>\n\n <div\n className=\"max-h-72 overflow-y-auto py-1\"\n {...(suggestions.length > 0\n ? { role: 'listbox', 'aria-label': strings.title }\n : {})}\n >\n {isLoading ? (\n <div className=\"text-muted-foreground flex items-center justify-center gap-2 py-3\">\n <Loader2 className=\"size-3.5 animate-spin\" aria-hidden />\n <Text tag=\"span\" size=\"xs\" type=\"secondary\">\n {strings.loading}\n </Text>\n </div>\n ) : null}\n\n {!isLoading && suggestions.length === 0 ? (\n <div className=\"px-3 py-3\">\n <Text size=\"xs\" type=\"secondary\">\n {strings.empty}\n </Text>\n </div>\n ) : null}\n\n {suggestions.map((suggestion) => {\n const kind = suggestion.kind ?? activeKind ?? '';\n return (\n <Button\n key={`${kind}:${suggestion.id}`}\n type=\"button\"\n variant=\"secondary\"\n buttonStyle=\"ghost\"\n size=\"default\"\n role=\"option\"\n data-ref-id={`${kind}:${suggestion.id}`}\n onClick={() => onSelect(suggestion)}\n className={cn(\n 'h-auto w-full min-w-0 justify-start gap-2 rounded-none px-3 py-1.5 text-left',\n 'hover:bg-muted/60 focus-visible:bg-muted/60 transition-colors',\n )}\n >\n <div className=\"flex min-w-0 flex-1 flex-col leading-tight\">\n <Text\n tag=\"span\"\n size=\"xs\"\n weight=\"medium\"\n className=\"truncate\"\n >\n {suggestion.label}\n </Text>\n {suggestion.description ? (\n <Text\n tag=\"span\"\n size=\"xs\"\n type=\"secondary\"\n className=\"mt-0.5 truncate\"\n >\n {suggestion.description}\n </Text>\n ) : null}\n </div>\n </Button>\n );\n })}\n </div>\n </div>\n );\n}\n","/**\n * Walk an HTML string and extract `data-ref-id=\"kind:id\"` spans /\n * anchors as a list of `Mention` records. Used by the comment composer\n * to keep its `mentions` state in sync with what's actually present in\n * the editor — when the user backspaces a chip out of the body, the\n * draft's mentions list shrinks too.\n *\n * The output preserves first-occurrence order and deduplicates by id.\n * Caller can merge the resulting Mentions with previously known ones to\n * preserve `href` / `data` payloads that aren't expressible in HTML.\n */\nimport type { Mention } from '../mentions.types';\n\nconst REF_RE =\n /<(?:span|a)\\b[^>]*?data-ref-id\\s*=\\s*\"([^\"]+)\"[^>]*?>([\\s\\S]*?)<\\/(?:span|a)>/gi;\nconst KIND_ATTR_RE = /data-ref-kind\\s*=\\s*\"([^\"]+)\"/i;\n\nexport function parseMentionsFromHtml<TKind extends string = string>(\n html: string,\n): Array<Mention<TKind>> {\n const out: Mention<TKind>[] = [];\n if (!html) return out;\n\n const seen = new Set<string>();\n let match: RegExpExecArray | null;\n REF_RE.lastIndex = 0;\n\n while ((match = REF_RE.exec(html)) !== null) {\n const [tagText, id, inner] = match;\n if (seen.has(id)) continue;\n seen.add(id);\n\n const kindMatch = tagText.match(KIND_ATTR_RE);\n const kind = (kindMatch?.[1] ?? id.split(':')[0] ?? '') as TKind;\n const label = (inner ?? '')\n .replace(/<[^>]*>/g, '')\n .replace(/&nbsp;/g, ' ')\n .replace(/^[@#$&%!~]\\s*/, '')\n .trim();\n\n out.push({ id, kind, label });\n }\n\n return out;\n}\n"],"mappings":"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"}