admin-ui-starter-kit 0.1.2 → 0.1.4

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 (1948) hide show
  1. package/.agents/skills/admin-ui-consumer-migration/SKILL.md +135 -0
  2. package/.agents/skills/component-library-rules/SKILL.md +13 -2
  3. package/.agents/skills/component-library-rules/references/components/INDEX.json +1 -0
  4. package/.agents/skills/component-library-rules/references/components/INDEX.md +1 -0
  5. package/.agents/skills/component-library-rules/references/components/base__buttons.md +18 -6
  6. package/.agents/skills/component-library-rules/references/components/base__combobox.md +1 -1
  7. package/.agents/skills/component-library-rules/references/components/base__event-calendar.md +1 -1
  8. package/.agents/skills/component-library-rules/references/components/base__forms.md +10 -7
  9. package/.agents/skills/component-library-rules/references/components/base__item.md +1 -1
  10. package/.agents/skills/component-library-rules/references/components/base__map.md +7 -7
  11. package/.agents/skills/component-library-rules/references/components/base__navigation.md +8 -8
  12. package/.agents/skills/component-library-rules/references/components/base__table.md +2 -2
  13. package/.agents/skills/component-library-rules/references/components/base__typography.md +6 -4
  14. package/.agents/skills/component-library-rules/references/components/composed__ai-elements.md +4 -4
  15. package/.agents/skills/component-library-rules/references/components/composed__api-key-list.md +4 -4
  16. package/.agents/skills/component-library-rules/references/components/composed__commerce-extras.md +107 -113
  17. package/.agents/skills/component-library-rules/references/components/composed__commerce.md +49 -48
  18. package/.agents/skills/component-library-rules/references/components/composed__navigation.md +6 -2
  19. package/.agents/skills/component-library-rules/references/components/composed__timelines.md +21 -7
  20. package/.agents/skills/component-library-rules/references/components/features__comments.md +12 -4
  21. package/.agents/skills/component-library-rules/references/components/features__enhanced-activities.md +4 -2
  22. package/.agents/skills/component-library-rules/references/components/features__event-log.md +6 -2
  23. package/.agents/skills/component-library-rules/references/components/features__overlays.md +8 -6
  24. package/.agents/skills/component-library-rules/references/components/layout__layout-app-shell.md +552 -0
  25. package/.agents/skills/component-library-rules/references/components/layout__layout-header.md +2 -2
  26. package/.agents/skills/component-library-rules/references/components/layout__layout-sidebar.md +2 -2
  27. package/.agents/skills/component-library-rules/references/components/layout__layout-users.md +7 -7
  28. package/.agents/skills/component-library-rules/references/components/ui__toggles-group.md +7 -7
  29. package/.agents/skills/component-library-rules/references/components/ui__toggles.md +1 -1
  30. package/AGENTS.md +6 -4
  31. package/CHANGELOG.md +27 -1
  32. package/COMPONENT_SELECTION.md +115 -0
  33. package/INTEGRATION.md +10 -0
  34. package/MIGRATION.md +239 -0
  35. package/PUBLISHING.md +6 -1
  36. package/README.md +31 -8
  37. package/dist/_shared/accordion-BnxO7Is4.js +130 -0
  38. package/dist/_shared/accordion-BnxO7Is4.js.map +1 -0
  39. package/dist/_shared/accordion-RIN0MjPz.cjs +2 -0
  40. package/dist/_shared/accordion-RIN0MjPz.cjs.map +1 -0
  41. package/dist/_shared/action-menu-IIO9KtJ2.js +96 -0
  42. package/dist/_shared/action-menu-IIO9KtJ2.js.map +1 -0
  43. package/dist/_shared/action-menu-RAyg3cvM.cjs +2 -0
  44. package/dist/_shared/action-menu-RAyg3cvM.cjs.map +1 -0
  45. package/dist/_shared/ai-artifact--MqIfP-8.js +1068 -0
  46. package/dist/_shared/ai-artifact--MqIfP-8.js.map +1 -0
  47. package/dist/_shared/ai-artifact-D1dBeEz1.cjs +3 -0
  48. package/dist/_shared/ai-artifact-D1dBeEz1.cjs.map +1 -0
  49. package/dist/_shared/alert-D3gRd7RK.cjs +2 -0
  50. package/dist/_shared/alert-D3gRd7RK.cjs.map +1 -0
  51. package/dist/_shared/alert-DQ-tV8b-.js +48 -0
  52. package/dist/_shared/alert-DQ-tV8b-.js.map +1 -0
  53. package/dist/_shared/app-shell-C4d7kCCd.cjs +2 -0
  54. package/dist/_shared/app-shell-C4d7kCCd.cjs.map +1 -0
  55. package/dist/_shared/app-shell-CKxcpPTc.js +94 -0
  56. package/dist/_shared/app-shell-CKxcpPTc.js.map +1 -0
  57. package/dist/_shared/avatar-0spfQEHG.cjs +2 -0
  58. package/dist/_shared/avatar-0spfQEHG.cjs.map +1 -0
  59. package/dist/_shared/avatar-CBi4LGxy.js +52 -0
  60. package/dist/_shared/avatar-CBi4LGxy.js.map +1 -0
  61. package/dist/_shared/badge-BK5VvEgg.js +108 -0
  62. package/dist/_shared/badge-BK5VvEgg.js.map +1 -0
  63. package/dist/_shared/badge-kS_XtN-z.cjs +2 -0
  64. package/dist/_shared/badge-kS_XtN-z.cjs.map +1 -0
  65. package/dist/_shared/breadcrumbs-Dqp2qAmo.cjs +2 -0
  66. package/dist/_shared/breadcrumbs-Dqp2qAmo.cjs.map +1 -0
  67. package/dist/_shared/breadcrumbs-bJ-J0oCd.js +111 -0
  68. package/dist/_shared/breadcrumbs-bJ-J0oCd.js.map +1 -0
  69. package/dist/_shared/button-683R5quQ.js +46 -0
  70. package/dist/_shared/button-683R5quQ.js.map +1 -0
  71. package/dist/_shared/button-CjZrRLzR.cjs +2 -0
  72. package/dist/_shared/button-CjZrRLzR.cjs.map +1 -0
  73. package/dist/_shared/button-LZWDn-aU.cjs +2 -0
  74. package/dist/_shared/button-LZWDn-aU.cjs.map +1 -0
  75. package/dist/_shared/button-cnkCF8q8.js +177 -0
  76. package/dist/_shared/button-cnkCF8q8.js.map +1 -0
  77. package/dist/_shared/buttons-DHV2eZAf.cjs +2 -0
  78. package/dist/_shared/buttons-DHV2eZAf.cjs.map +1 -0
  79. package/dist/_shared/buttons-ehfMSkwP.js +143 -0
  80. package/dist/_shared/buttons-ehfMSkwP.js.map +1 -0
  81. package/dist/_shared/card-radio-group-Bf03M6c5.js +158 -0
  82. package/dist/_shared/card-radio-group-Bf03M6c5.js.map +1 -0
  83. package/dist/_shared/card-radio-group-SqPUL0Je.cjs +2 -0
  84. package/dist/_shared/card-radio-group-SqPUL0Je.cjs.map +1 -0
  85. package/dist/_shared/chunk-CMqjfN_6.cjs +1 -0
  86. package/dist/_shared/combobox-Cvs70ic4.js +808 -0
  87. package/dist/_shared/combobox-Cvs70ic4.js.map +1 -0
  88. package/dist/_shared/combobox-Dos9YWjk.cjs +2 -0
  89. package/dist/_shared/combobox-Dos9YWjk.cjs.map +1 -0
  90. package/dist/_shared/command-Bxe_FmGD.cjs +2 -0
  91. package/dist/_shared/command-Bxe_FmGD.cjs.map +1 -0
  92. package/dist/_shared/command-CAI-BCSR.js +123 -0
  93. package/dist/_shared/command-CAI-BCSR.js.map +1 -0
  94. package/dist/_shared/command-DRIySU26.cjs +2 -0
  95. package/dist/_shared/command-DRIySU26.cjs.map +1 -0
  96. package/dist/_shared/command-DwRnPIGs.js +39 -0
  97. package/dist/_shared/command-DwRnPIGs.js.map +1 -0
  98. package/dist/_shared/comments-DD2aeZVz.js +946 -0
  99. package/dist/_shared/comments-DD2aeZVz.js.map +1 -0
  100. package/dist/_shared/comments-DzwU4sNE.cjs +2 -0
  101. package/dist/_shared/comments-DzwU4sNE.cjs.map +1 -0
  102. package/dist/_shared/containers-D7oZE4XI.cjs +2 -0
  103. package/dist/_shared/containers-D7oZE4XI.cjs.map +1 -0
  104. package/dist/_shared/containers-anBivbL9.js +19 -0
  105. package/dist/_shared/containers-anBivbL9.js.map +1 -0
  106. package/dist/_shared/content-container-CVUJCLhn.cjs +2 -0
  107. package/dist/_shared/content-container-CVUJCLhn.cjs.map +1 -0
  108. package/dist/_shared/content-container-Dv8XsAw4.js +33 -0
  109. package/dist/_shared/content-container-Dv8XsAw4.js.map +1 -0
  110. package/dist/_shared/copyable-D7WhgEzJ.js +38 -0
  111. package/dist/_shared/copyable-D7WhgEzJ.js.map +1 -0
  112. package/dist/_shared/copyable-DDjT505-.cjs +2 -0
  113. package/dist/_shared/copyable-DDjT505-.cjs.map +1 -0
  114. package/dist/_shared/date-picker-3G3C-sIq.cjs +2 -0
  115. package/dist/_shared/date-picker-3G3C-sIq.cjs.map +1 -0
  116. package/dist/_shared/date-picker-7yuMHPYs.js +1362 -0
  117. package/dist/_shared/date-picker-7yuMHPYs.js.map +1 -0
  118. package/dist/_shared/date-pickers-B_VUgjvY.cjs +2 -0
  119. package/dist/_shared/date-pickers-B_VUgjvY.cjs.map +1 -0
  120. package/dist/_shared/date-pickers-DZXi0di0.js +330 -0
  121. package/dist/_shared/date-pickers-DZXi0di0.js.map +1 -0
  122. package/dist/_shared/dialog-A95-614f.js +101 -0
  123. package/dist/_shared/dialog-A95-614f.js.map +1 -0
  124. package/dist/_shared/dialog-ivDByBmO.cjs +2 -0
  125. package/dist/_shared/dialog-ivDByBmO.cjs.map +1 -0
  126. package/dist/_shared/display-Cuj4td-V.js +1237 -0
  127. package/dist/_shared/display-Cuj4td-V.js.map +1 -0
  128. package/dist/_shared/display-D2q93jiS.cjs +8 -0
  129. package/dist/_shared/display-D2q93jiS.cjs.map +1 -0
  130. package/dist/_shared/dropdown-menu-CHQzQWUK.cjs +2 -0
  131. package/dist/_shared/dropdown-menu-CHQzQWUK.cjs.map +1 -0
  132. package/dist/_shared/dropdown-menu-CoWmrjYX.js +147 -0
  133. package/dist/_shared/dropdown-menu-CoWmrjYX.js.map +1 -0
  134. package/dist/_shared/form-field-BNuCBym1.js +319 -0
  135. package/dist/_shared/form-field-BNuCBym1.js.map +1 -0
  136. package/dist/_shared/form-field-C4fQYsqv.cjs +2 -0
  137. package/dist/_shared/form-field-C4fQYsqv.cjs.map +1 -0
  138. package/dist/_shared/form-sizing-D74IS9KG.js +21 -0
  139. package/dist/_shared/form-sizing-D74IS9KG.js.map +1 -0
  140. package/dist/_shared/form-sizing-aVwVuF-w.cjs +2 -0
  141. package/dist/_shared/form-sizing-aVwVuF-w.cjs.map +1 -0
  142. package/dist/_shared/format-BTtJC6oz.cjs +2 -0
  143. package/dist/_shared/format-BTtJC6oz.cjs.map +1 -0
  144. package/dist/_shared/format-BX3QestD.js +48 -0
  145. package/dist/_shared/format-BX3QestD.js.map +1 -0
  146. package/dist/_shared/forms-BV4fHeRx.cjs +2 -0
  147. package/dist/_shared/forms-BV4fHeRx.cjs.map +1 -0
  148. package/dist/_shared/forms-DjAdYxme.js +3378 -0
  149. package/dist/_shared/forms-DjAdYxme.js.map +1 -0
  150. package/dist/_shared/header-D4Oz-mCv.cjs +2 -0
  151. package/dist/_shared/header-D4Oz-mCv.cjs.map +1 -0
  152. package/dist/_shared/header-X5DZ8vmO.js +360 -0
  153. package/dist/_shared/header-X5DZ8vmO.js.map +1 -0
  154. package/dist/_shared/heading-C7mNh03X.cjs +2 -0
  155. package/dist/_shared/heading-C7mNh03X.cjs.map +1 -0
  156. package/dist/_shared/heading-CrNpYcUr.js +39 -0
  157. package/dist/_shared/heading-CrNpYcUr.js.map +1 -0
  158. package/dist/_shared/hooks-CKXPg30g.js +118 -0
  159. package/dist/_shared/hooks-CKXPg30g.js.map +1 -0
  160. package/dist/_shared/hooks-CTiEImZp.cjs +2 -0
  161. package/dist/_shared/hooks-CTiEImZp.cjs.map +1 -0
  162. package/dist/_shared/icon-badge-BAWl1oOe.cjs +2 -0
  163. package/dist/_shared/icon-badge-BAWl1oOe.cjs.map +1 -0
  164. package/dist/_shared/icon-badge-zTBVtgt9.js +52 -0
  165. package/dist/_shared/icon-badge-zTBVtgt9.js.map +1 -0
  166. package/dist/_shared/input-Cw2uICc1.cjs +2 -0
  167. package/dist/_shared/input-Cw2uICc1.cjs.map +1 -0
  168. package/dist/_shared/input-D43_IMWW.cjs +2 -0
  169. package/dist/_shared/input-D43_IMWW.cjs.map +1 -0
  170. package/dist/_shared/input-DJo8d1Rr.js +182 -0
  171. package/dist/_shared/input-DJo8d1Rr.js.map +1 -0
  172. package/dist/_shared/input-R8c90tNY.js +17 -0
  173. package/dist/_shared/input-R8c90tNY.js.map +1 -0
  174. package/dist/_shared/item-BxlP5TO3.js +224 -0
  175. package/dist/_shared/item-BxlP5TO3.js.map +1 -0
  176. package/dist/_shared/item-X18HIqR7.cjs +2 -0
  177. package/dist/_shared/item-X18HIqR7.cjs.map +1 -0
  178. package/dist/_shared/mentions-DE9aDOMu.cjs +2 -0
  179. package/dist/_shared/mentions-DE9aDOMu.cjs.map +1 -0
  180. package/dist/_shared/mentions-DjjYmMLc.js +493 -0
  181. package/dist/_shared/mentions-DjjYmMLc.js.map +1 -0
  182. package/dist/_shared/metadata-C5MSNo7y.js +236 -0
  183. package/dist/_shared/metadata-C5MSNo7y.js.map +1 -0
  184. package/dist/_shared/metadata-Cw3Kj2Ug.cjs +2 -0
  185. package/dist/_shared/metadata-Cw3Kj2Ug.cjs.map +1 -0
  186. package/dist/_shared/money-display-B7AKxxNt.js +198 -0
  187. package/dist/_shared/money-display-B7AKxxNt.js.map +1 -0
  188. package/dist/_shared/money-display-E22wbM21.cjs +2 -0
  189. package/dist/_shared/money-display-E22wbM21.cjs.map +1 -0
  190. package/dist/_shared/navigation-B9VAXqLL.cjs +2 -0
  191. package/dist/_shared/navigation-B9VAXqLL.cjs.map +1 -0
  192. package/dist/_shared/navigation-CxoJVgfo.js +420 -0
  193. package/dist/_shared/navigation-CxoJVgfo.js.map +1 -0
  194. package/dist/_shared/overlays-C-T8RnJz.cjs +2 -0
  195. package/dist/_shared/overlays-C-T8RnJz.cjs.map +1 -0
  196. package/dist/_shared/overlays-DfRsQzD3.js +633 -0
  197. package/dist/_shared/overlays-DfRsQzD3.js.map +1 -0
  198. package/dist/_shared/page-C4jEULwi.js +263 -0
  199. package/dist/_shared/page-C4jEULwi.js.map +1 -0
  200. package/dist/_shared/page-DX3pA_tJ.cjs +2 -0
  201. package/dist/_shared/page-DX3pA_tJ.cjs.map +1 -0
  202. package/dist/_shared/popover-CaHvG8Vj.cjs +2 -0
  203. package/dist/_shared/popover-CaHvG8Vj.cjs.map +1 -0
  204. package/dist/_shared/popover-L37RqoRO.js +83 -0
  205. package/dist/_shared/popover-L37RqoRO.js.map +1 -0
  206. package/dist/_shared/popover-menu-CVAr985u.js +95 -0
  207. package/dist/_shared/popover-menu-CVAr985u.js.map +1 -0
  208. package/dist/_shared/popover-menu-Cq-LnAMh.cjs +2 -0
  209. package/dist/_shared/popover-menu-Cq-LnAMh.cjs.map +1 -0
  210. package/dist/_shared/rich-text-editor-C3gVBm-v.cjs +2 -0
  211. package/dist/_shared/rich-text-editor-C3gVBm-v.cjs.map +1 -0
  212. package/dist/_shared/rich-text-editor-Cylb-lkv.js +616 -0
  213. package/dist/_shared/rich-text-editor-Cylb-lkv.js.map +1 -0
  214. package/dist/_shared/scroll-area-BH5CPQh4.js +41 -0
  215. package/dist/_shared/scroll-area-BH5CPQh4.js.map +1 -0
  216. package/dist/_shared/scroll-area-u46BOVcC.cjs +2 -0
  217. package/dist/_shared/scroll-area-u46BOVcC.cjs.map +1 -0
  218. package/dist/_shared/select-BwUUXpsb.js +85 -0
  219. package/dist/_shared/select-BwUUXpsb.js.map +1 -0
  220. package/dist/_shared/select-CG5Yq-6A.cjs +2 -0
  221. package/dist/_shared/select-CG5Yq-6A.cjs.map +1 -0
  222. package/dist/_shared/separator-B8FBp-7E.js +16 -0
  223. package/dist/_shared/separator-B8FBp-7E.js.map +1 -0
  224. package/dist/_shared/separator-q42IlFFA.cjs +2 -0
  225. package/dist/_shared/separator-q42IlFFA.cjs.map +1 -0
  226. package/dist/_shared/sheet-BKEfwhCn.js +100 -0
  227. package/dist/_shared/sheet-BKEfwhCn.js.map +1 -0
  228. package/dist/_shared/sheet-D4yWgkwC.cjs +2 -0
  229. package/dist/_shared/sheet-D4yWgkwC.cjs.map +1 -0
  230. package/dist/_shared/sidebar-BeWLjIRR.js +537 -0
  231. package/dist/_shared/sidebar-BeWLjIRR.js.map +1 -0
  232. package/dist/_shared/sidebar-Bl_KRk-S.cjs +2 -0
  233. package/dist/_shared/sidebar-Bl_KRk-S.cjs.map +1 -0
  234. package/dist/_shared/sidebar-DzzdJ2xk.cjs +2 -0
  235. package/dist/_shared/sidebar-DzzdJ2xk.cjs.map +1 -0
  236. package/dist/_shared/sidebar-ux-yk-Ph.js +382 -0
  237. package/dist/_shared/sidebar-ux-yk-Ph.js.map +1 -0
  238. package/dist/_shared/skeleton-CGQMeno1.js +14 -0
  239. package/dist/_shared/skeleton-CGQMeno1.js.map +1 -0
  240. package/dist/_shared/skeleton-D1c5OHXa.cjs +2 -0
  241. package/dist/_shared/skeleton-D1c5OHXa.cjs.map +1 -0
  242. package/dist/_shared/slot-C5EJicOc.js +18 -0
  243. package/dist/_shared/slot-C5EJicOc.js.map +1 -0
  244. package/dist/_shared/slot-D-Rwlrz2.cjs +2 -0
  245. package/dist/_shared/slot-D-Rwlrz2.cjs.map +1 -0
  246. package/dist/_shared/smart-card-DL7esK_y.cjs +2 -0
  247. package/dist/_shared/smart-card-DL7esK_y.cjs.map +1 -0
  248. package/dist/_shared/smart-card-eBfUvQ9r.js +360 -0
  249. package/dist/_shared/smart-card-eBfUvQ9r.js.map +1 -0
  250. package/dist/_shared/spinner-Bvjs1ybK.cjs +2 -0
  251. package/dist/_shared/spinner-Bvjs1ybK.cjs.map +1 -0
  252. package/dist/_shared/spinner-XcfVYbbp.js +67 -0
  253. package/dist/_shared/spinner-XcfVYbbp.js.map +1 -0
  254. package/dist/_shared/switch-BBP3u1z5.js +55 -0
  255. package/dist/_shared/switch-BBP3u1z5.js.map +1 -0
  256. package/dist/_shared/switch-zFZhhOEP.cjs +2 -0
  257. package/dist/_shared/switch-zFZhhOEP.cjs.map +1 -0
  258. package/dist/_shared/text-DzKt9cyb.cjs +2 -0
  259. package/dist/_shared/text-DzKt9cyb.cjs.map +1 -0
  260. package/dist/_shared/text-qsEg5GdP.js +74 -0
  261. package/dist/_shared/text-qsEg5GdP.js.map +1 -0
  262. package/dist/_shared/textarea-BAKapsLQ.cjs +2 -0
  263. package/dist/_shared/textarea-BAKapsLQ.cjs.map +1 -0
  264. package/dist/_shared/textarea-Bfv1KxBm.js +119 -0
  265. package/dist/_shared/textarea-Bfv1KxBm.js.map +1 -0
  266. package/dist/_shared/tooltip-CLr_sPX8.js +49 -0
  267. package/dist/_shared/tooltip-CLr_sPX8.js.map +1 -0
  268. package/dist/_shared/tooltip-mvxZV_Lu.cjs +2 -0
  269. package/dist/_shared/tooltip-mvxZV_Lu.cjs.map +1 -0
  270. package/dist/_shared/typography-4CSyoCj9.js +102 -0
  271. package/dist/_shared/typography-4CSyoCj9.js.map +1 -0
  272. package/dist/_shared/typography-DKn7P4wX.cjs +2 -0
  273. package/dist/_shared/typography-DKn7P4wX.cjs.map +1 -0
  274. package/dist/_shared/ui-provider-CQJ1glwN.js +85 -0
  275. package/dist/_shared/ui-provider-CQJ1glwN.js.map +1 -0
  276. package/dist/_shared/ui-provider-RIYE7O_V.cjs +2 -0
  277. package/dist/_shared/ui-provider-RIYE7O_V.cjs.map +1 -0
  278. package/dist/components/base/accordion/index.cjs +1 -1
  279. package/dist/components/base/accordion/index.js +2 -2
  280. package/dist/components/base/badge/badge.d.ts +1 -1
  281. package/dist/components/base/badge/badge.d.ts.map +1 -1
  282. package/dist/components/base/badge/index.cjs +1 -1
  283. package/dist/components/base/badge/index.js +1 -1
  284. package/dist/components/base/buttons/google-button.d.ts +1 -1
  285. package/dist/components/base/buttons/google-button.d.ts.map +1 -1
  286. package/dist/components/base/buttons/index.cjs +1 -1
  287. package/dist/components/base/buttons/index.js +2 -2
  288. package/dist/components/base/buttons/shopify-button.d.ts +1 -1
  289. package/dist/components/base/buttons/shopify-button.d.ts.map +1 -1
  290. package/dist/components/base/buttons/tooltip-button.d.ts.map +1 -1
  291. package/dist/components/base/cards/index.cjs +1 -1
  292. package/dist/components/base/cards/index.js +1 -1
  293. package/dist/components/base/cards/partials/card-primitives.d.ts +6 -6
  294. package/dist/components/base/cards/partials/card-primitives.d.ts.map +1 -1
  295. package/dist/components/base/cards/partials/smart-card-actions-menu.d.ts +1 -1
  296. package/dist/components/base/cards/partials/smart-card-actions-menu.d.ts.map +1 -1
  297. package/dist/components/base/cards/partials/smart-card-alert.d.ts +1 -1
  298. package/dist/components/base/cards/partials/smart-card-alert.d.ts.map +1 -1
  299. package/dist/components/base/cards/partials/smart-card-header-row.d.ts +1 -1
  300. package/dist/components/base/cards/partials/smart-card-header-row.d.ts.map +1 -1
  301. package/dist/components/base/cards/partials/smart-card-skeleton.d.ts +1 -1
  302. package/dist/components/base/cards/partials/smart-card-skeleton.d.ts.map +1 -1
  303. package/dist/components/base/cards/smart-card.tokens.d.ts +1 -1
  304. package/dist/components/base/combobox/combobox.strings.d.ts.map +1 -1
  305. package/dist/components/base/combobox/components/highlighted-text.d.ts.map +1 -1
  306. package/dist/components/base/combobox/enhanced-combobox.d.ts.map +1 -1
  307. package/dist/components/base/combobox/index.cjs +1 -1
  308. package/dist/components/base/combobox/index.js +1 -1
  309. package/dist/components/base/combobox/types.d.ts +2 -0
  310. package/dist/components/base/combobox/types.d.ts.map +1 -1
  311. package/dist/components/base/command/command.d.ts +5 -5
  312. package/dist/components/base/command/command.d.ts.map +1 -1
  313. package/dist/components/base/command/index.cjs +1 -1
  314. package/dist/components/base/command/index.js +2 -2
  315. package/dist/components/base/copyable/copyable.d.ts +1 -1
  316. package/dist/components/base/copyable/copyable.d.ts.map +1 -1
  317. package/dist/components/base/copyable/index.cjs +1 -1
  318. package/dist/components/base/copyable/index.js +1 -1
  319. package/dist/components/base/currency/currency-pair-preview.d.ts +1 -1
  320. package/dist/components/base/currency/currency-pair-preview.d.ts.map +1 -1
  321. package/dist/components/base/currency/index.cjs +1 -1
  322. package/dist/components/base/currency/index.js +1 -1
  323. package/dist/components/base/date-pickers/date-picker-footer.d.ts +2 -1
  324. package/dist/components/base/date-pickers/date-picker-footer.d.ts.map +1 -1
  325. package/dist/components/base/date-pickers/date-picker-header.d.ts +1 -1
  326. package/dist/components/base/date-pickers/date-picker-header.d.ts.map +1 -1
  327. package/dist/components/base/date-pickers/date-picker-helpers.d.ts +5 -1
  328. package/dist/components/base/date-pickers/date-picker-helpers.d.ts.map +1 -1
  329. package/dist/components/base/date-pickers/date-picker.d.ts +2 -1
  330. package/dist/components/base/date-pickers/date-picker.d.ts.map +1 -1
  331. package/dist/components/base/date-pickers/date-range-picker.d.ts +2 -1
  332. package/dist/components/base/date-pickers/date-range-picker.d.ts.map +1 -1
  333. package/dist/components/base/date-pickers/index.cjs +1 -1
  334. package/dist/components/base/date-pickers/index.js +3 -3
  335. package/dist/components/base/date-pickers/month-year-picker.d.ts +2 -1
  336. package/dist/components/base/date-pickers/month-year-picker.d.ts.map +1 -1
  337. package/dist/components/base/date-pickers/segmented-time-input.d.ts +2 -1
  338. package/dist/components/base/date-pickers/segmented-time-input.d.ts.map +1 -1
  339. package/dist/components/base/display/boolean-indicator.d.ts +1 -1
  340. package/dist/components/base/display/boolean-indicator.d.ts.map +1 -1
  341. package/dist/components/base/display/date-block.d.ts +1 -1
  342. package/dist/components/base/display/date-block.d.ts.map +1 -1
  343. package/dist/components/base/display/empty-state/partials/illustrations/document-stack.d.ts +1 -1
  344. package/dist/components/base/display/empty-state/partials/illustrations/document-stack.d.ts.map +1 -1
  345. package/dist/components/base/display/empty-state/partials/illustrations/inbox-clean.d.ts +1 -1
  346. package/dist/components/base/display/empty-state/partials/illustrations/inbox-clean.d.ts.map +1 -1
  347. package/dist/components/base/display/empty-state/partials/illustrations/search-glass.d.ts +1 -1
  348. package/dist/components/base/display/empty-state/partials/illustrations/search-glass.d.ts.map +1 -1
  349. package/dist/components/base/display/empty-state/partials/illustrations/stacked-cards.d.ts +1 -1
  350. package/dist/components/base/display/empty-state/partials/illustrations/stacked-cards.d.ts.map +1 -1
  351. package/dist/components/base/display/empty-state/partials/illustrations/users-circle.d.ts +1 -1
  352. package/dist/components/base/display/empty-state/partials/illustrations/users-circle.d.ts.map +1 -1
  353. package/dist/components/base/display/fields/email-display.d.ts +1 -1
  354. package/dist/components/base/display/fields/email-display.d.ts.map +1 -1
  355. package/dist/components/base/display/fields/phone-display.d.ts +1 -1
  356. package/dist/components/base/display/fields/phone-display.d.ts.map +1 -1
  357. package/dist/components/base/display/fields/url-display.d.ts +1 -1
  358. package/dist/components/base/display/fields/url-display.d.ts.map +1 -1
  359. package/dist/components/base/display/icon-badge/icon-badge.d.ts +1 -1
  360. package/dist/components/base/display/icon-badge/icon-badge.d.ts.map +1 -1
  361. package/dist/components/base/display/index.cjs +1 -1
  362. package/dist/components/base/display/index.js +12 -12
  363. package/dist/components/base/display/inline-stat/inline-stat.d.ts +1 -1
  364. package/dist/components/base/display/inline-stat/inline-stat.d.ts.map +1 -1
  365. package/dist/components/base/display/metadata/index.cjs +1 -1
  366. package/dist/components/base/display/metadata/index.js +1 -1
  367. package/dist/components/base/display/metadata/metadata-list.d.ts +1 -1
  368. package/dist/components/base/display/metadata/metadata-list.d.ts.map +1 -1
  369. package/dist/components/base/display/money-display.d.ts +1 -1
  370. package/dist/components/base/display/money-display.d.ts.map +1 -1
  371. package/dist/components/base/display/money-input.d.ts +1 -1
  372. package/dist/components/base/display/money-input.d.ts.map +1 -1
  373. package/dist/components/base/display/notification-banner.d.ts +1 -1
  374. package/dist/components/base/display/notification-banner.d.ts.map +1 -1
  375. package/dist/components/base/display/numeric-value/numeric-value.d.ts +1 -1
  376. package/dist/components/base/display/numeric-value/numeric-value.d.ts.map +1 -1
  377. package/dist/components/base/display/placeholder-pattern.d.ts +1 -1
  378. package/dist/components/base/display/placeholder-pattern.d.ts.map +1 -1
  379. package/dist/components/base/display/qr-code.d.ts +1 -1
  380. package/dist/components/base/display/qr-code.d.ts.map +1 -1
  381. package/dist/components/base/display/section-header/section-header.d.ts +1 -1
  382. package/dist/components/base/display/section-header/section-header.d.ts.map +1 -1
  383. package/dist/components/base/display/stacked-avatars.d.ts +1 -1
  384. package/dist/components/base/display/stacked-avatars.d.ts.map +1 -1
  385. package/dist/components/base/display/throttle-alert.d.ts +1 -1
  386. package/dist/components/base/display/throttle-alert.d.ts.map +1 -1
  387. package/dist/components/base/display/user-cell/user-cell.d.ts +1 -1
  388. package/dist/components/base/display/user-cell/user-cell.d.ts.map +1 -1
  389. package/dist/components/base/display/visually-hidden.d.ts +1 -1
  390. package/dist/components/base/display/visually-hidden.d.ts.map +1 -1
  391. package/dist/components/base/event-calendar/event-calendar-day-cell.d.ts +1 -1
  392. package/dist/components/base/event-calendar/event-calendar-day-cell.d.ts.map +1 -1
  393. package/dist/components/base/event-calendar/event-calendar-event-badge.d.ts +1 -1
  394. package/dist/components/base/event-calendar/event-calendar-event-badge.d.ts.map +1 -1
  395. package/dist/components/base/event-calendar/event-calendar-event-card.d.ts +1 -1
  396. package/dist/components/base/event-calendar/event-calendar-event-card.d.ts.map +1 -1
  397. package/dist/components/base/event-calendar/event-calendar-header.d.ts +1 -1
  398. package/dist/components/base/event-calendar/event-calendar-header.d.ts.map +1 -1
  399. package/dist/components/base/event-calendar/event-calendar-legend.d.ts +1 -1
  400. package/dist/components/base/event-calendar/event-calendar-legend.d.ts.map +1 -1
  401. package/dist/components/base/event-calendar/event-calendar.d.ts +1 -1
  402. package/dist/components/base/event-calendar/event-calendar.d.ts.map +1 -1
  403. package/dist/components/base/event-calendar/index.cjs +1 -1
  404. package/dist/components/base/event-calendar/index.cjs.map +1 -1
  405. package/dist/components/base/event-calendar/index.js +12 -12
  406. package/dist/components/base/event-calendar/index.js.map +1 -1
  407. package/dist/components/base/forms/fields/avatar-upload.d.ts.map +1 -1
  408. package/dist/components/base/forms/fields/card-checkbox-group.d.ts +1 -1
  409. package/dist/components/base/forms/fields/card-checkbox-group.d.ts.map +1 -1
  410. package/dist/components/base/forms/fields/card-radio-group.d.ts +1 -1
  411. package/dist/components/base/forms/fields/card-radio-group.d.ts.map +1 -1
  412. package/dist/components/base/forms/fields/coordinates-input.d.ts +1 -1
  413. package/dist/components/base/forms/fields/coordinates-input.d.ts.map +1 -1
  414. package/dist/components/base/forms/fields/date-time-input.d.ts +1 -1
  415. package/dist/components/base/forms/fields/date-time-input.d.ts.map +1 -1
  416. package/dist/components/base/forms/fields/dimensions-input.d.ts +1 -1
  417. package/dist/components/base/forms/fields/dimensions-input.d.ts.map +1 -1
  418. package/dist/components/base/forms/fields/key-value-editor.d.ts +1 -1
  419. package/dist/components/base/forms/fields/key-value-editor.d.ts.map +1 -1
  420. package/dist/components/base/forms/fields/list-radio-group.d.ts +1 -1
  421. package/dist/components/base/forms/fields/list-radio-group.d.ts.map +1 -1
  422. package/dist/components/base/forms/fields/list.d.ts +1 -1
  423. package/dist/components/base/forms/fields/list.d.ts.map +1 -1
  424. package/dist/components/base/forms/fields/localized-object-field.d.ts +1 -1
  425. package/dist/components/base/forms/fields/localized-object-field.d.ts.map +1 -1
  426. package/dist/components/base/forms/fields/localized-string-field.d.ts +1 -1
  427. package/dist/components/base/forms/fields/localized-string-field.d.ts.map +1 -1
  428. package/dist/components/base/forms/fields/localized-string-repeater.d.ts +1 -1
  429. package/dist/components/base/forms/fields/localized-string-repeater.d.ts.map +1 -1
  430. package/dist/components/base/forms/fields/media-gallery.d.ts +1 -1
  431. package/dist/components/base/forms/fields/media-gallery.d.ts.map +1 -1
  432. package/dist/components/base/forms/fields/object-repeater.d.ts +1 -1
  433. package/dist/components/base/forms/fields/object-repeater.d.ts.map +1 -1
  434. package/dist/components/base/forms/fields/pill-radio-group.d.ts +11 -1
  435. package/dist/components/base/forms/fields/pill-radio-group.d.ts.map +1 -1
  436. package/dist/components/base/forms/fields/repeater.d.ts +1 -1
  437. package/dist/components/base/forms/fields/repeater.d.ts.map +1 -1
  438. package/dist/components/base/forms/fields/rounding-mode-select.d.ts +1 -1
  439. package/dist/components/base/forms/fields/rounding-mode-select.d.ts.map +1 -1
  440. package/dist/components/base/forms/fields/string-repeater.d.ts +1 -1
  441. package/dist/components/base/forms/fields/string-repeater.d.ts.map +1 -1
  442. package/dist/components/base/forms/fields/switch-card.d.ts +2 -1
  443. package/dist/components/base/forms/fields/switch-card.d.ts.map +1 -1
  444. package/dist/components/base/forms/fields/switch.d.ts.map +1 -1
  445. package/dist/components/base/forms/fields/tags-input.d.ts +1 -1
  446. package/dist/components/base/forms/fields/tags-input.d.ts.map +1 -1
  447. package/dist/components/base/forms/fields/time-picker.d.ts +2 -1
  448. package/dist/components/base/forms/fields/time-picker.d.ts.map +1 -1
  449. package/dist/components/base/forms/fields/toggle-field.d.ts +1 -1
  450. package/dist/components/base/forms/fields/toggle-field.d.ts.map +1 -1
  451. package/dist/components/base/forms/fields/upload-progress-list.d.ts +1 -1
  452. package/dist/components/base/forms/fields/upload-progress-list.d.ts.map +1 -1
  453. package/dist/components/base/forms/fields/weight-input.d.ts +2 -1
  454. package/dist/components/base/forms/fields/weight-input.d.ts.map +1 -1
  455. package/dist/components/base/forms/form-field.d.ts +63 -2
  456. package/dist/components/base/forms/form-field.d.ts.map +1 -1
  457. package/dist/components/base/forms/index.cjs +1 -1
  458. package/dist/components/base/forms/index.js +6 -6
  459. package/dist/components/base/forms/operation-password-form.d.ts +1 -1
  460. package/dist/components/base/forms/operation-password-form.d.ts.map +1 -1
  461. package/dist/components/base/item/index.cjs +1 -1
  462. package/dist/components/base/item/index.js +1 -1
  463. package/dist/components/base/map/index.cjs +1 -1
  464. package/dist/components/base/map/index.cjs.map +1 -1
  465. package/dist/components/base/map/index.js +104 -85
  466. package/dist/components/base/map/index.js.map +1 -1
  467. package/dist/components/base/map/map.d.ts +31 -30
  468. package/dist/components/base/map/map.d.ts.map +1 -1
  469. package/dist/components/base/map/place-autocomplete.d.ts +1 -1
  470. package/dist/components/base/map/place-autocomplete.d.ts.map +1 -1
  471. package/dist/components/base/navigation/action-menu.d.ts +1 -1
  472. package/dist/components/base/navigation/aside-navigation-menu.d.ts +1 -1
  473. package/dist/components/base/navigation/aside-navigation-menu.d.ts.map +1 -1
  474. package/dist/components/base/navigation/breadcrumbs.d.ts +1 -1
  475. package/dist/components/base/navigation/breadcrumbs.d.ts.map +1 -1
  476. package/dist/components/base/navigation/index.cjs +1 -1
  477. package/dist/components/base/navigation/index.js +4 -4
  478. package/dist/components/base/navigation/language-switcher.d.ts +1 -1
  479. package/dist/components/base/navigation/language-switcher.d.ts.map +1 -1
  480. package/dist/components/base/navigation/navigation-tabs.d.ts +1 -1
  481. package/dist/components/base/navigation/navigation-tabs.d.ts.map +1 -1
  482. package/dist/components/base/navigation/overflow-tab-bar.d.ts +1 -1
  483. package/dist/components/base/navigation/overflow-tab-bar.d.ts.map +1 -1
  484. package/dist/components/base/navigation/page-header/page-header.d.ts +1 -1
  485. package/dist/components/base/navigation/page-header/page-header.d.ts.map +1 -1
  486. package/dist/components/base/navigation/section-nav/section-nav.d.ts +1 -1
  487. package/dist/components/base/navigation/section-nav/section-nav.d.ts.map +1 -1
  488. package/dist/components/base/navigation/side-nav.d.ts +1 -1
  489. package/dist/components/base/navigation/side-nav.d.ts.map +1 -1
  490. package/dist/components/base/navigation/tab-navigation-menu.d.ts +1 -1
  491. package/dist/components/base/navigation/tab-navigation-menu.d.ts.map +1 -1
  492. package/dist/components/base/popover/index.cjs +1 -1
  493. package/dist/components/base/popover/index.js +1 -1
  494. package/dist/components/base/popover/popover.d.ts +1 -1
  495. package/dist/components/base/popover/popover.d.ts.map +1 -1
  496. package/dist/components/base/popover-menu/index.cjs +1 -1
  497. package/dist/components/base/popover-menu/index.js +1 -1
  498. package/dist/components/base/popover-menu/popover-menu.d.ts +1 -1
  499. package/dist/components/base/popover-menu/popover-menu.d.ts.map +1 -1
  500. package/dist/components/base/sheet/index.cjs +1 -1
  501. package/dist/components/base/sheet/index.js +1 -1
  502. package/dist/components/base/sidebar/index.cjs +1 -1
  503. package/dist/components/base/sidebar/index.js +2 -2
  504. package/dist/components/base/sidebar/sidebar.d.ts +10 -9
  505. package/dist/components/base/sidebar/sidebar.d.ts.map +1 -1
  506. package/dist/components/base/spinner/index.cjs +1 -1
  507. package/dist/components/base/spinner/index.js +1 -1
  508. package/dist/components/base/table/column-visibility-toggle.d.ts +1 -1
  509. package/dist/components/base/table/column-visibility-toggle.d.ts.map +1 -1
  510. package/dist/components/base/table/data-table.d.ts +1 -1
  511. package/dist/components/base/table/data-table.d.ts.map +1 -1
  512. package/dist/components/base/table/filter-bar.d.ts +1 -1
  513. package/dist/components/base/table/filter-bar.d.ts.map +1 -1
  514. package/dist/components/base/table/index.cjs +1 -1
  515. package/dist/components/base/table/index.cjs.map +1 -1
  516. package/dist/components/base/table/index.js +23 -23
  517. package/dist/components/base/table/index.js.map +1 -1
  518. package/dist/components/base/table/pagination.d.ts +1 -1
  519. package/dist/components/base/table/pagination.d.ts.map +1 -1
  520. package/dist/components/base/table/partials/cell-renderers.d.ts +4 -4
  521. package/dist/components/base/table/partials/cell-renderers.d.ts.map +1 -1
  522. package/dist/components/base/table/partials/cell-value.d.ts +1 -1
  523. package/dist/components/base/table/partials/cell-value.d.ts.map +1 -1
  524. package/dist/components/base/table/partials/density-toggle.d.ts +1 -1
  525. package/dist/components/base/table/partials/density-toggle.d.ts.map +1 -1
  526. package/dist/components/base/table/partials/table-link.d.ts +1 -1
  527. package/dist/components/base/table/partials/table-link.d.ts.map +1 -1
  528. package/dist/components/base/table/table-actions.d.ts +1 -1
  529. package/dist/components/base/table/table-actions.d.ts.map +1 -1
  530. package/dist/components/base/table/table-body.d.ts +1 -1
  531. package/dist/components/base/table/table-body.d.ts.map +1 -1
  532. package/dist/components/base/table/table-header.d.ts +2 -1
  533. package/dist/components/base/table/table-header.d.ts.map +1 -1
  534. package/dist/components/base/table/table-helpers.d.ts +2 -2
  535. package/dist/components/base/table/table-helpers.d.ts.map +1 -1
  536. package/dist/components/base/table/table-pagination.d.ts +1 -1
  537. package/dist/components/base/table/table-pagination.d.ts.map +1 -1
  538. package/dist/components/base/table/table-toolbar.d.ts +1 -1
  539. package/dist/components/base/table/table-toolbar.d.ts.map +1 -1
  540. package/dist/components/base/toaster/index.cjs +1 -1
  541. package/dist/components/base/toaster/index.cjs.map +1 -1
  542. package/dist/components/base/toaster/index.js +1 -1
  543. package/dist/components/base/toaster/index.js.map +1 -1
  544. package/dist/components/base/toaster/toaster.d.ts +1 -1
  545. package/dist/components/base/toaster/toaster.d.ts.map +1 -1
  546. package/dist/components/composed/admin/conversation-row/conversation-row.d.ts +1 -1
  547. package/dist/components/composed/admin/conversation-row/conversation-row.d.ts.map +1 -1
  548. package/dist/components/composed/admin/index.cjs +1 -1
  549. package/dist/components/composed/admin/index.cjs.map +1 -1
  550. package/dist/components/composed/admin/index.js +159 -155
  551. package/dist/components/composed/admin/index.js.map +1 -1
  552. package/dist/components/composed/admin/inventory-level/inventory-level.d.ts +1 -1
  553. package/dist/components/composed/admin/inventory-level/inventory-level.d.ts.map +1 -1
  554. package/dist/components/composed/admin/role-permission/role-permission.d.ts +1 -1
  555. package/dist/components/composed/admin/role-permission/role-permission.d.ts.map +1 -1
  556. package/dist/components/composed/admin/settings-toggle/settings-toggle.d.ts +1 -1
  557. package/dist/components/composed/admin/settings-toggle/settings-toggle.d.ts.map +1 -1
  558. package/dist/components/composed/admin/team-member/team-member.d.ts +1 -1
  559. package/dist/components/composed/admin/team-member/team-member.d.ts.map +1 -1
  560. package/dist/components/composed/ai/ai-agent/ai-agent.d.ts +1 -1
  561. package/dist/components/composed/ai/ai-agent/ai-agent.d.ts.map +1 -1
  562. package/dist/components/composed/ai/ai-artifact/ai-artifact.d.ts +1 -1
  563. package/dist/components/composed/ai/ai-artifact/ai-artifact.d.ts.map +1 -1
  564. package/dist/components/composed/ai/ai-attachment/ai-attachment.d.ts +1 -1
  565. package/dist/components/composed/ai/ai-attachment/ai-attachment.d.ts.map +1 -1
  566. package/dist/components/composed/ai/ai-chain-of-thought/ai-chain-of-thought.d.ts +1 -1
  567. package/dist/components/composed/ai/ai-chain-of-thought/ai-chain-of-thought.d.ts.map +1 -1
  568. package/dist/components/composed/ai/ai-citation/ai-citation.d.ts +1 -1
  569. package/dist/components/composed/ai/ai-citation/ai-citation.d.ts.map +1 -1
  570. package/dist/components/composed/ai/ai-classification/ai-classification.d.ts +1 -1
  571. package/dist/components/composed/ai/ai-classification/ai-classification.d.ts.map +1 -1
  572. package/dist/components/composed/ai/ai-code-block/ai-code-block.d.ts +1 -1
  573. package/dist/components/composed/ai/ai-code-block/ai-code-block.d.ts.map +1 -1
  574. package/dist/components/composed/ai/ai-confidence/ai-confidence.d.ts +1 -1
  575. package/dist/components/composed/ai/ai-confidence/ai-confidence.d.ts.map +1 -1
  576. package/dist/components/composed/ai/ai-confirmation/ai-confirmation.d.ts +1 -1
  577. package/dist/components/composed/ai/ai-confirmation/ai-confirmation.d.ts.map +1 -1
  578. package/dist/components/composed/ai/ai-feedback/ai-feedback.d.ts +1 -1
  579. package/dist/components/composed/ai/ai-feedback/ai-feedback.d.ts.map +1 -1
  580. package/dist/components/composed/ai/ai-file-tree/ai-file-tree.d.ts +1 -1
  581. package/dist/components/composed/ai/ai-file-tree/ai-file-tree.d.ts.map +1 -1
  582. package/dist/components/composed/ai/ai-inline-citation/ai-inline-citation.d.ts +1 -1
  583. package/dist/components/composed/ai/ai-inline-citation/ai-inline-citation.d.ts.map +1 -1
  584. package/dist/components/composed/ai/ai-message-bubble/ai-message-bubble.d.ts +1 -1
  585. package/dist/components/composed/ai/ai-message-bubble/ai-message-bubble.d.ts.map +1 -1
  586. package/dist/components/composed/ai/ai-package-info/ai-package-info.d.ts +1 -1
  587. package/dist/components/composed/ai/ai-package-info/ai-package-info.d.ts.map +1 -1
  588. package/dist/components/composed/ai/ai-prompt-suggestions/ai-prompt-suggestions.d.ts +1 -1
  589. package/dist/components/composed/ai/ai-prompt-suggestions/ai-prompt-suggestions.d.ts.map +1 -1
  590. package/dist/components/composed/ai/ai-reasoning/ai-reasoning.d.ts +1 -1
  591. package/dist/components/composed/ai/ai-reasoning/ai-reasoning.d.ts.map +1 -1
  592. package/dist/components/composed/ai/ai-shimmer/ai-shimmer.d.ts +1 -1
  593. package/dist/components/composed/ai/ai-shimmer/ai-shimmer.d.ts.map +1 -1
  594. package/dist/components/composed/ai/ai-sources/ai-sources.d.ts +1 -1
  595. package/dist/components/composed/ai/ai-sources/ai-sources.d.ts.map +1 -1
  596. package/dist/components/composed/ai/ai-summary/ai-summary.d.ts +1 -1
  597. package/dist/components/composed/ai/ai-summary/ai-summary.d.ts.map +1 -1
  598. package/dist/components/composed/ai/ai-task/ai-task.d.ts +1 -1
  599. package/dist/components/composed/ai/ai-task/ai-task.d.ts.map +1 -1
  600. package/dist/components/composed/ai/ai-token-usage/ai-token-usage.d.ts +1 -1
  601. package/dist/components/composed/ai/ai-token-usage/ai-token-usage.d.ts.map +1 -1
  602. package/dist/components/composed/ai/ai-tool-call/ai-tool-call.d.ts +1 -1
  603. package/dist/components/composed/ai/ai-tool-call/ai-tool-call.d.ts.map +1 -1
  604. package/dist/components/composed/ai/index.cjs +1 -1
  605. package/dist/components/composed/ai/index.cjs.map +1 -1
  606. package/dist/components/composed/ai/index.js +34 -36
  607. package/dist/components/composed/ai/index.js.map +1 -1
  608. package/dist/components/composed/analytics/activity-heatmap/activity-heatmap.d.ts +1 -1
  609. package/dist/components/composed/analytics/activity-heatmap/activity-heatmap.d.ts.map +1 -1
  610. package/dist/components/composed/analytics/atoms/metric-skeleton.d.ts +1 -1
  611. package/dist/components/composed/analytics/atoms/metric-skeleton.d.ts.map +1 -1
  612. package/dist/components/composed/analytics/atoms/metric-sparkline.d.ts +1 -1
  613. package/dist/components/composed/analytics/atoms/metric-sparkline.d.ts.map +1 -1
  614. package/dist/components/composed/analytics/atoms/metric-trend-chip.d.ts +1 -1
  615. package/dist/components/composed/analytics/atoms/metric-trend-chip.d.ts.map +1 -1
  616. package/dist/components/composed/analytics/index.cjs +1 -1
  617. package/dist/components/composed/analytics/index.cjs.map +1 -1
  618. package/dist/components/composed/analytics/index.js +100 -111
  619. package/dist/components/composed/analytics/index.js.map +1 -1
  620. package/dist/components/composed/analytics/metric/metric.d.ts +1 -1
  621. package/dist/components/composed/analytics/metric/metric.d.ts.map +1 -1
  622. package/dist/components/composed/analytics/metric-bar/metric-bar.d.ts +1 -1
  623. package/dist/components/composed/analytics/metric-bar/metric-bar.d.ts.map +1 -1
  624. package/dist/components/composed/analytics/metric-comparison/metric-comparison.d.ts +1 -1
  625. package/dist/components/composed/analytics/metric-comparison/metric-comparison.d.ts.map +1 -1
  626. package/dist/components/composed/analytics/metric-gradient/metric-gradient.d.ts +1 -1
  627. package/dist/components/composed/analytics/metric-gradient/metric-gradient.d.ts.map +1 -1
  628. package/dist/components/composed/analytics/metric-grid/metric-grid.d.ts +1 -1
  629. package/dist/components/composed/analytics/metric-grid/metric-grid.d.ts.map +1 -1
  630. package/dist/components/composed/analytics/metric-micro-grid/metric-micro-grid.d.ts +1 -1
  631. package/dist/components/composed/analytics/metric-micro-grid/metric-micro-grid.d.ts.map +1 -1
  632. package/dist/components/composed/cards/contact-card/contact-card.d.ts +1 -1
  633. package/dist/components/composed/cards/contact-card/contact-card.d.ts.map +1 -1
  634. package/dist/components/composed/cards/course-card/course-card.d.ts +1 -1
  635. package/dist/components/composed/cards/course-card/course-card.d.ts.map +1 -1
  636. package/dist/components/composed/cards/feature-announcement/feature-announcement.d.ts +1 -1
  637. package/dist/components/composed/cards/feature-announcement/feature-announcement.d.ts.map +1 -1
  638. package/dist/components/composed/cards/giftcard-card/partials/giftcard-compact.d.ts +1 -1
  639. package/dist/components/composed/cards/giftcard-card/partials/giftcard-compact.d.ts.map +1 -1
  640. package/dist/components/composed/cards/giftcard-card/partials/giftcard-dark.d.ts +1 -1
  641. package/dist/components/composed/cards/giftcard-card/partials/giftcard-dark.d.ts.map +1 -1
  642. package/dist/components/composed/cards/giftcard-card/partials/giftcard-full.d.ts +1 -1
  643. package/dist/components/composed/cards/giftcard-card/partials/giftcard-full.d.ts.map +1 -1
  644. package/dist/components/composed/cards/giftcard-card/partials/giftcard-illustrated.d.ts +1 -1
  645. package/dist/components/composed/cards/giftcard-card/partials/giftcard-illustrated.d.ts.map +1 -1
  646. package/dist/components/composed/cards/giftcard-card/partials/giftcard-minimal.d.ts +1 -1
  647. package/dist/components/composed/cards/giftcard-card/partials/giftcard-minimal.d.ts.map +1 -1
  648. package/dist/components/composed/cards/gradient-card/gradient-card.d.ts +2 -2
  649. package/dist/components/composed/cards/gradient-card/gradient-card.d.ts.map +1 -1
  650. package/dist/components/composed/cards/index.cjs +1 -1
  651. package/dist/components/composed/cards/index.cjs.map +1 -1
  652. package/dist/components/composed/cards/index.js +492 -512
  653. package/dist/components/composed/cards/index.js.map +1 -1
  654. package/dist/components/composed/cards/vendor-profile/vendor-profile.d.ts +1 -1
  655. package/dist/components/composed/cards/vendor-profile/vendor-profile.d.ts.map +1 -1
  656. package/dist/components/composed/commerce/address-card/address-card.d.ts +1 -1
  657. package/dist/components/composed/commerce/address-card/address-card.d.ts.map +1 -1
  658. package/dist/components/composed/commerce/cart-summary/cart-summary.d.ts +1 -1
  659. package/dist/components/composed/commerce/cart-summary/cart-summary.d.ts.map +1 -1
  660. package/dist/components/composed/commerce/coupon-input/coupon-input.d.ts +1 -1
  661. package/dist/components/composed/commerce/coupon-input/coupon-input.d.ts.map +1 -1
  662. package/dist/components/composed/commerce/discount-stack/discount-stack.d.ts +1 -1
  663. package/dist/components/composed/commerce/discount-stack/discount-stack.d.ts.map +1 -1
  664. package/dist/components/composed/commerce/index.cjs +1 -1
  665. package/dist/components/composed/commerce/index.cjs.map +1 -1
  666. package/dist/components/composed/commerce/index.js +94 -98
  667. package/dist/components/composed/commerce/index.js.map +1 -1
  668. package/dist/components/composed/commerce/loyalty-points/loyalty-points.d.ts +1 -1
  669. package/dist/components/composed/commerce/loyalty-points/loyalty-points.d.ts.map +1 -1
  670. package/dist/components/composed/commerce/order-status/order-status.d.ts +1 -1
  671. package/dist/components/composed/commerce/order-status/order-status.d.ts.map +1 -1
  672. package/dist/components/composed/commerce/payment-method/payment-method.d.ts +1 -1
  673. package/dist/components/composed/commerce/payment-method/payment-method.d.ts.map +1 -1
  674. package/dist/components/composed/commerce/refund-status/refund-status.d.ts +1 -1
  675. package/dist/components/composed/commerce/refund-status/refund-status.d.ts.map +1 -1
  676. package/dist/components/composed/commerce/shipment-tracking/shipment-tracking.d.ts +1 -1
  677. package/dist/components/composed/commerce/shipment-tracking/shipment-tracking.d.ts.map +1 -1
  678. package/dist/components/composed/commerce/subscription-summary/subscription-summary.d.ts +1 -1
  679. package/dist/components/composed/commerce/subscription-summary/subscription-summary.d.ts.map +1 -1
  680. package/dist/components/composed/commerce/tax-breakdown/tax-breakdown.d.ts +1 -1
  681. package/dist/components/composed/commerce/tax-breakdown/tax-breakdown.d.ts.map +1 -1
  682. package/dist/components/composed/commerce/upcoming-booking/upcoming-booking.d.ts +1 -1
  683. package/dist/components/composed/commerce/upcoming-booking/upcoming-booking.d.ts.map +1 -1
  684. package/dist/components/composed/commerce/voucher-entry/voucher-entry.d.ts +1 -1
  685. package/dist/components/composed/commerce/voucher-entry/voucher-entry.d.ts.map +1 -1
  686. package/dist/components/composed/dark-surfaces/booking-receipt/booking-receipt.d.ts +1 -1
  687. package/dist/components/composed/dark-surfaces/booking-receipt/booking-receipt.d.ts.map +1 -1
  688. package/dist/components/composed/dark-surfaces/dark-info-panel/dark-info-panel.d.ts +1 -1
  689. package/dist/components/composed/dark-surfaces/dark-info-panel/dark-info-panel.d.ts.map +1 -1
  690. package/dist/components/composed/dark-surfaces/dark-payment/dark-payment.d.ts +1 -1
  691. package/dist/components/composed/dark-surfaces/dark-payment/dark-payment.d.ts.map +1 -1
  692. package/dist/components/composed/dark-surfaces/index.cjs +1 -1
  693. package/dist/components/composed/dark-surfaces/index.cjs.map +1 -1
  694. package/dist/components/composed/dark-surfaces/index.js +30 -27
  695. package/dist/components/composed/dark-surfaces/index.js.map +1 -1
  696. package/dist/components/composed/dark-surfaces/order-items/order-items.d.ts +1 -1
  697. package/dist/components/composed/dark-surfaces/order-items/order-items.d.ts.map +1 -1
  698. package/dist/components/composed/dark-surfaces/outstanding-balance/outstanding-balance.d.ts +1 -1
  699. package/dist/components/composed/dark-surfaces/outstanding-balance/outstanding-balance.d.ts.map +1 -1
  700. package/dist/components/composed/data-display/dense-info-card/helpers.d.ts +2 -2
  701. package/dist/components/composed/data-display/dense-info-card/helpers.d.ts.map +1 -1
  702. package/dist/components/composed/data-display/dense-info-card/partials/dense-info-classification.d.ts +1 -1
  703. package/dist/components/composed/data-display/dense-info-card/partials/dense-info-classification.d.ts.map +1 -1
  704. package/dist/components/composed/data-display/dense-info-card/partials/dense-info-dashboard.d.ts +1 -1
  705. package/dist/components/composed/data-display/dense-info-card/partials/dense-info-dashboard.d.ts.map +1 -1
  706. package/dist/components/composed/data-display/dense-info-card/partials/dense-info-financial.d.ts +1 -1
  707. package/dist/components/composed/data-display/dense-info-card/partials/dense-info-financial.d.ts.map +1 -1
  708. package/dist/components/composed/data-display/dense-info-card/partials/dense-info-project.d.ts +1 -1
  709. package/dist/components/composed/data-display/dense-info-card/partials/dense-info-project.d.ts.map +1 -1
  710. package/dist/components/composed/data-display/dense-info-card/partials/dense-info-score.d.ts +1 -1
  711. package/dist/components/composed/data-display/dense-info-card/partials/dense-info-score.d.ts.map +1 -1
  712. package/dist/components/composed/data-display/index.cjs +1 -1
  713. package/dist/components/composed/data-display/index.cjs.map +1 -1
  714. package/dist/components/composed/data-display/index.js +344 -319
  715. package/dist/components/composed/data-display/index.js.map +1 -1
  716. package/dist/components/composed/data-display/inline-metric/inline-metric.d.ts +1 -1
  717. package/dist/components/composed/data-display/inline-metric/inline-metric.d.ts.map +1 -1
  718. package/dist/components/composed/data-display/invoice-header/invoice-header.d.ts +1 -1
  719. package/dist/components/composed/data-display/invoice-header/invoice-header.d.ts.map +1 -1
  720. package/dist/components/composed/data-display/invoice-items/invoice-items.d.ts +3 -3
  721. package/dist/components/composed/data-display/invoice-items/invoice-items.d.ts.map +1 -1
  722. package/dist/components/composed/data-display/invoice-mini/invoice-mini.d.ts +1 -1
  723. package/dist/components/composed/data-display/invoice-mini/invoice-mini.d.ts.map +1 -1
  724. package/dist/components/composed/data-display/invoice-table/invoice-table.d.ts +1 -1
  725. package/dist/components/composed/data-display/invoice-table/invoice-table.d.ts.map +1 -1
  726. package/dist/components/composed/data-display/mini-kpi/mini-kpi.d.ts +1 -1
  727. package/dist/components/composed/data-display/mini-kpi/mini-kpi.d.ts.map +1 -1
  728. package/dist/components/composed/navigation/breadcrumb-progress/breadcrumb-progress.d.ts +1 -1
  729. package/dist/components/composed/navigation/breadcrumb-progress/breadcrumb-progress.d.ts.map +1 -1
  730. package/dist/components/composed/navigation/category-nav/category-nav.d.ts +1 -1
  731. package/dist/components/composed/navigation/category-nav/category-nav.d.ts.map +1 -1
  732. package/dist/components/composed/navigation/experience-activity/experience-activity.d.ts +1 -1
  733. package/dist/components/composed/navigation/experience-activity/experience-activity.d.ts.map +1 -1
  734. package/dist/components/composed/navigation/experience-activity/experience-activity.strings.d.ts +8 -0
  735. package/dist/components/composed/navigation/experience-activity/experience-activity.strings.d.ts.map +1 -0
  736. package/dist/components/composed/navigation/experience-activity/index.d.ts +1 -0
  737. package/dist/components/composed/navigation/experience-activity/index.d.ts.map +1 -1
  738. package/dist/components/composed/navigation/experience-activity/types.d.ts +2 -0
  739. package/dist/components/composed/navigation/experience-activity/types.d.ts.map +1 -1
  740. package/dist/components/composed/navigation/index.cjs +1 -1
  741. package/dist/components/composed/navigation/index.cjs.map +1 -1
  742. package/dist/components/composed/navigation/index.js +42 -35
  743. package/dist/components/composed/navigation/index.js.map +1 -1
  744. package/dist/components/composed/navigation/kanban-board/kanban-board.d.ts +1 -1
  745. package/dist/components/composed/navigation/kanban-board/kanban-board.d.ts.map +1 -1
  746. package/dist/components/composed/navigation/tab-switcher/tab-switcher.d.ts +1 -1
  747. package/dist/components/composed/navigation/tab-switcher/tab-switcher.d.ts.map +1 -1
  748. package/dist/components/composed/navigation/time-ruler/time-ruler.d.ts +1 -1
  749. package/dist/components/composed/navigation/time-ruler/time-ruler.d.ts.map +1 -1
  750. package/dist/components/composed/navigation/vendor-performance/vendor-performance.d.ts +1 -1
  751. package/dist/components/composed/navigation/vendor-performance/vendor-performance.d.ts.map +1 -1
  752. package/dist/components/composed/onboarding/checklist/checklist.d.ts.map +1 -1
  753. package/dist/components/composed/onboarding/checklist/partials/step-status-indicator.d.ts +1 -1
  754. package/dist/components/composed/onboarding/checklist/partials/step-status-indicator.d.ts.map +1 -1
  755. package/dist/components/composed/onboarding/index.cjs +1 -1
  756. package/dist/components/composed/onboarding/index.cjs.map +1 -1
  757. package/dist/components/composed/onboarding/index.js +60 -60
  758. package/dist/components/composed/onboarding/index.js.map +1 -1
  759. package/dist/components/composed/timelines/activity-stream/activity-stream.d.ts +1 -1
  760. package/dist/components/composed/timelines/activity-stream/activity-stream.d.ts.map +1 -1
  761. package/dist/components/composed/timelines/changelog/changelog-timeline.d.ts +1 -1
  762. package/dist/components/composed/timelines/changelog/changelog-timeline.d.ts.map +1 -1
  763. package/dist/components/composed/timelines/index.cjs +1 -1
  764. package/dist/components/composed/timelines/index.cjs.map +1 -1
  765. package/dist/components/composed/timelines/index.js +34 -7
  766. package/dist/components/composed/timelines/index.js.map +1 -1
  767. package/dist/components/composed/timelines/milestones/milestones-timeline.d.ts +1 -1
  768. package/dist/components/composed/timelines/milestones/milestones-timeline.d.ts.map +1 -1
  769. package/dist/components/composed/timelines/order-timeline/order-timeline.d.ts +1 -1
  770. package/dist/components/composed/timelines/order-timeline/order-timeline.d.ts.map +1 -1
  771. package/dist/components/composed/timelines/payment-timeline/payment-timeline.d.ts +1 -1
  772. package/dist/components/composed/timelines/payment-timeline/payment-timeline.d.ts.map +1 -1
  773. package/dist/components/composed/timelines/shared/timeline.d.ts +1 -1
  774. package/dist/components/composed/timelines/shared/timeline.d.ts.map +1 -1
  775. package/dist/components/composed/timelines/steps-card/steps-card.d.ts +2 -2
  776. package/dist/components/composed/timelines/steps-card/steps-card.d.ts.map +1 -1
  777. package/dist/components/features/activities/activities-feed.d.ts +1 -1
  778. package/dist/components/features/activities/activities-feed.d.ts.map +1 -1
  779. package/dist/components/features/activities/index.cjs +1 -1
  780. package/dist/components/features/activities/index.cjs.map +1 -1
  781. package/dist/components/features/activities/index.js +7 -7
  782. package/dist/components/features/activities/index.js.map +1 -1
  783. package/dist/components/features/activities/partials/activities-feed-card.d.ts +1 -1
  784. package/dist/components/features/activities/partials/activities-feed-card.d.ts.map +1 -1
  785. package/dist/components/features/activities/partials/activity-actions-menu.d.ts +1 -1
  786. package/dist/components/features/activities/partials/activity-actions-menu.d.ts.map +1 -1
  787. package/dist/components/features/activities/partials/activity-changes.d.ts +1 -1
  788. package/dist/components/features/activities/partials/activity-changes.d.ts.map +1 -1
  789. package/dist/components/features/activities/partials/activity-date-label.d.ts +1 -1
  790. package/dist/components/features/activities/partials/activity-date-label.d.ts.map +1 -1
  791. package/dist/components/features/activities/partials/activity-empty-state.d.ts +1 -1
  792. package/dist/components/features/activities/partials/activity-empty-state.d.ts.map +1 -1
  793. package/dist/components/features/activities/partials/activity-headline.d.ts +1 -1
  794. package/dist/components/features/activities/partials/activity-headline.d.ts.map +1 -1
  795. package/dist/components/features/activities/partials/activity-marker.d.ts +1 -1
  796. package/dist/components/features/activities/partials/activity-marker.d.ts.map +1 -1
  797. package/dist/components/features/activities/partials/activity-resource-tag.d.ts +1 -1
  798. package/dist/components/features/activities/partials/activity-resource-tag.d.ts.map +1 -1
  799. package/dist/components/features/activities/partials/activity-row.d.ts +1 -1
  800. package/dist/components/features/activities/partials/activity-row.d.ts.map +1 -1
  801. package/dist/components/features/ai-chat/ai-chat.d.ts +1 -1
  802. package/dist/components/features/ai-chat/ai-chat.d.ts.map +1 -1
  803. package/dist/components/features/ai-chat/index.cjs +1 -1
  804. package/dist/components/features/ai-chat/index.cjs.map +1 -1
  805. package/dist/components/features/ai-chat/index.js +7 -7
  806. package/dist/components/features/ai-chat/index.js.map +1 -1
  807. package/dist/components/features/ai-chat/partials/ai-chat-attachments-strip.d.ts +1 -1
  808. package/dist/components/features/ai-chat/partials/ai-chat-attachments-strip.d.ts.map +1 -1
  809. package/dist/components/features/ai-chat/partials/ai-chat-conversation.d.ts +1 -1
  810. package/dist/components/features/ai-chat/partials/ai-chat-conversation.d.ts.map +1 -1
  811. package/dist/components/features/ai-chat/partials/ai-chat-empty-state.d.ts +1 -1
  812. package/dist/components/features/ai-chat/partials/ai-chat-empty-state.d.ts.map +1 -1
  813. package/dist/components/features/ai-chat/partials/ai-chat-message.d.ts +1 -1
  814. package/dist/components/features/ai-chat/partials/ai-chat-message.d.ts.map +1 -1
  815. package/dist/components/features/ai-chat/partials/ai-chat-prompt-input.d.ts +1 -1
  816. package/dist/components/features/ai-chat/partials/ai-chat-prompt-input.d.ts.map +1 -1
  817. package/dist/components/features/ai-chat/partials/ai-chat-queue.d.ts +1 -1
  818. package/dist/components/features/ai-chat/partials/ai-chat-queue.d.ts.map +1 -1
  819. package/dist/components/features/ai-chat/partials/ai-chat-suggestions-row.d.ts +1 -1
  820. package/dist/components/features/ai-chat/partials/ai-chat-suggestions-row.d.ts.map +1 -1
  821. package/dist/components/features/card/booking-calendar-event-card.d.ts +1 -1
  822. package/dist/components/features/card/booking-calendar-event-card.d.ts.map +1 -1
  823. package/dist/components/features/card/index.cjs +1 -1
  824. package/dist/components/features/card/index.cjs.map +1 -1
  825. package/dist/components/features/card/index.js +4 -4
  826. package/dist/components/features/card/index.js.map +1 -1
  827. package/dist/components/features/card/partials/default-shared-resource-partials.d.ts +4 -4
  828. package/dist/components/features/card/partials/default-shared-resource-partials.d.ts.map +1 -1
  829. package/dist/components/features/card/shared-resource-card.d.ts +1 -1
  830. package/dist/components/features/card/shared-resource-card.d.ts.map +1 -1
  831. package/dist/components/features/comments/comments.d.ts +1 -1
  832. package/dist/components/features/comments/comments.d.ts.map +1 -1
  833. package/dist/components/features/comments/index.cjs +1 -1
  834. package/dist/components/features/comments/index.js +2 -2
  835. package/dist/components/features/comments/partials/comment-composer.d.ts.map +1 -1
  836. package/dist/components/features/event-log/event-log.d.ts +1 -1
  837. package/dist/components/features/event-log/event-log.d.ts.map +1 -1
  838. package/dist/components/features/event-log/index.cjs +1 -1
  839. package/dist/components/features/event-log/index.cjs.map +1 -1
  840. package/dist/components/features/event-log/index.js +5 -5
  841. package/dist/components/features/event-log/index.js.map +1 -1
  842. package/dist/components/features/filters/facets/async-select-facet.d.ts +1 -1
  843. package/dist/components/features/filters/facets/async-select-facet.d.ts.map +1 -1
  844. package/dist/components/features/filters/facets/date-facet.d.ts +1 -1
  845. package/dist/components/features/filters/facets/date-facet.d.ts.map +1 -1
  846. package/dist/components/features/filters/facets/range-facet.d.ts +1 -1
  847. package/dist/components/features/filters/facets/range-facet.d.ts.map +1 -1
  848. package/dist/components/features/filters/facets/search-facet.d.ts +1 -1
  849. package/dist/components/features/filters/facets/search-facet.d.ts.map +1 -1
  850. package/dist/components/features/filters/facets/select-facet.d.ts +1 -1
  851. package/dist/components/features/filters/facets/select-facet.d.ts.map +1 -1
  852. package/dist/components/features/filters/facets/tags-facet.d.ts +1 -1
  853. package/dist/components/features/filters/facets/tags-facet.d.ts.map +1 -1
  854. package/dist/components/features/filters/filter-context.d.ts +1 -1
  855. package/dist/components/features/filters/filter-context.d.ts.map +1 -1
  856. package/dist/components/features/filters/filter-layout.d.ts +1 -1
  857. package/dist/components/features/filters/filter-layout.d.ts.map +1 -1
  858. package/dist/components/features/filters/filters.strings.d.ts +1 -0
  859. package/dist/components/features/filters/filters.strings.d.ts.map +1 -1
  860. package/dist/components/features/filters/filters.types.d.ts +1 -1
  861. package/dist/components/features/filters/index.cjs +1 -1
  862. package/dist/components/features/filters/index.cjs.map +1 -1
  863. package/dist/components/features/filters/index.js +195 -188
  864. package/dist/components/features/filters/index.js.map +1 -1
  865. package/dist/components/features/filters/partials/active-filter-item.d.ts +2 -1
  866. package/dist/components/features/filters/partials/active-filter-item.d.ts.map +1 -1
  867. package/dist/components/features/filters/partials/async-filter-content.d.ts +1 -1
  868. package/dist/components/features/filters/partials/async-filter-content.d.ts.map +1 -1
  869. package/dist/components/features/filters/partials/date-filter-content.d.ts +1 -1
  870. package/dist/components/features/filters/partials/date-filter-content.d.ts.map +1 -1
  871. package/dist/components/features/filters/partials/filter-error-boundary.d.ts +1 -1
  872. package/dist/components/features/filters/partials/filter-error-boundary.d.ts.map +1 -1
  873. package/dist/components/features/filters/partials/filter-list-content.d.ts +1 -1
  874. package/dist/components/features/filters/partials/filter-list-content.d.ts.map +1 -1
  875. package/dist/components/features/filters/partials/filter-list-item.d.ts +1 -1
  876. package/dist/components/features/filters/partials/filter-list-item.d.ts.map +1 -1
  877. package/dist/components/features/filters/partials/filter-operator-select.d.ts +2 -1
  878. package/dist/components/features/filters/partials/filter-operator-select.d.ts.map +1 -1
  879. package/dist/components/features/filters/partials/filter-pill.d.ts +1 -1
  880. package/dist/components/features/filters/partials/filter-pill.d.ts.map +1 -1
  881. package/dist/components/features/filters/partials/filter-popover-content.d.ts +1 -1
  882. package/dist/components/features/filters/partials/filter-popover-content.d.ts.map +1 -1
  883. package/dist/components/features/filters/partials/filter-tabs.d.ts +1 -1
  884. package/dist/components/features/filters/partials/filter-tabs.d.ts.map +1 -1
  885. package/dist/components/features/filters/partials/filter-value-display.d.ts +1 -1
  886. package/dist/components/features/filters/partials/filter-value-display.d.ts.map +1 -1
  887. package/dist/components/features/filters/partials/filters-button.d.ts +1 -1
  888. package/dist/components/features/filters/partials/filters-button.d.ts.map +1 -1
  889. package/dist/components/features/filters/partials/regular-filter-content.d.ts +1 -1
  890. package/dist/components/features/filters/partials/regular-filter-content.d.ts.map +1 -1
  891. package/dist/components/features/filters/partials/search-filters-list.d.ts +1 -1
  892. package/dist/components/features/filters/partials/search-filters-list.d.ts.map +1 -1
  893. package/dist/components/features/filters/partials/tags-filter-content.d.ts +1 -1
  894. package/dist/components/features/filters/partials/tags-filter-content.d.ts.map +1 -1
  895. package/dist/components/features/global-search/global-search.d.ts +22 -1
  896. package/dist/components/features/global-search/global-search.d.ts.map +1 -1
  897. package/dist/components/features/global-search/index.cjs +1 -1
  898. package/dist/components/features/global-search/index.cjs.map +1 -1
  899. package/dist/components/features/global-search/index.js +3 -3
  900. package/dist/components/features/global-search/index.js.map +1 -1
  901. package/dist/components/features/global-search/partials/global-search-empty-state.d.ts +1 -1
  902. package/dist/components/features/global-search/partials/global-search-empty-state.d.ts.map +1 -1
  903. package/dist/components/features/global-search/partials/global-search-footer.d.ts +1 -1
  904. package/dist/components/features/global-search/partials/global-search-footer.d.ts.map +1 -1
  905. package/dist/components/features/global-search/partials/global-search-idle-state.d.ts +1 -1
  906. package/dist/components/features/global-search/partials/global-search-idle-state.d.ts.map +1 -1
  907. package/dist/components/features/global-search/partials/global-search-result-row.d.ts +2 -1
  908. package/dist/components/features/global-search/partials/global-search-result-row.d.ts.map +1 -1
  909. package/dist/components/features/global-search/partials/global-search-tabs.d.ts +1 -1
  910. package/dist/components/features/global-search/partials/global-search-tabs.d.ts.map +1 -1
  911. package/dist/components/features/kanban/index.cjs +1 -1
  912. package/dist/components/features/kanban/index.cjs.map +1 -1
  913. package/dist/components/features/kanban/index.js +2 -2
  914. package/dist/components/features/kanban/index.js.map +1 -1
  915. package/dist/components/features/kanban/kanban.d.ts +7 -7
  916. package/dist/components/features/kanban/kanban.d.ts.map +1 -1
  917. package/dist/components/features/mentions/index.cjs +1 -1
  918. package/dist/components/features/mentions/index.js +1 -1
  919. package/dist/components/features/mentions/partials/mention-inline-suggestions.d.ts +1 -1
  920. package/dist/components/features/mentions/partials/mention-inline-suggestions.d.ts.map +1 -1
  921. package/dist/components/features/mentions/partials/mention-picker.d.ts +1 -1
  922. package/dist/components/features/mentions/partials/mention-picker.d.ts.map +1 -1
  923. package/dist/components/features/overlays/alert-dialog.d.ts +1 -1
  924. package/dist/components/features/overlays/alert-dialog.d.ts.map +1 -1
  925. package/dist/components/features/overlays/dialog.d.ts +1 -1
  926. package/dist/components/features/overlays/dialog.d.ts.map +1 -1
  927. package/dist/components/features/overlays/drawer.d.ts +1 -1
  928. package/dist/components/features/overlays/drawer.d.ts.map +1 -1
  929. package/dist/components/features/overlays/index.cjs +1 -1
  930. package/dist/components/features/overlays/index.js +1 -1
  931. package/dist/components/features/rich-text-editor/form-rich-text-editor.d.ts +1 -1
  932. package/dist/components/features/rich-text-editor/form-rich-text-editor.d.ts.map +1 -1
  933. package/dist/components/features/rich-text-editor/index.cjs +1 -1
  934. package/dist/components/features/rich-text-editor/index.cjs.map +1 -1
  935. package/dist/components/features/rich-text-editor/index.js +1 -1
  936. package/dist/components/features/rich-text-editor/index.js.map +1 -1
  937. package/dist/components/features/rich-text-editor/partials/counts-footer.d.ts +2 -2
  938. package/dist/components/features/rich-text-editor/partials/counts-footer.d.ts.map +1 -1
  939. package/dist/components/features/rich-text-editor/partials/rich-text-editor-fallback.d.ts.map +1 -1
  940. package/dist/components/features/rich-text-editor/partials/rich-text-editor-tiptap.d.ts.map +1 -1
  941. package/dist/components/features/rich-text-editor/partials/rich-text-editor-toolbar.d.ts +1 -1
  942. package/dist/components/features/rich-text-editor/partials/rich-text-editor-toolbar.d.ts.map +1 -1
  943. package/dist/components/features/rich-text-editor/rich-text-editor.strings.d.ts +4 -0
  944. package/dist/components/features/rich-text-editor/rich-text-editor.strings.d.ts.map +1 -1
  945. package/dist/components/features/suggestions/index.cjs +1 -1
  946. package/dist/components/features/suggestions/index.cjs.map +1 -1
  947. package/dist/components/features/suggestions/index.js +1 -1
  948. package/dist/components/features/suggestions/index.js.map +1 -1
  949. package/dist/components/features/suggestions/suggestions.d.ts +1 -1
  950. package/dist/components/features/suggestions/suggestions.d.ts.map +1 -1
  951. package/dist/components/features/sync/index.cjs +1 -1
  952. package/dist/components/features/sync/index.cjs.map +1 -1
  953. package/dist/components/features/sync/index.js +3 -3
  954. package/dist/components/features/sync/index.js.map +1 -1
  955. package/dist/components/features/sync/sync-range-dialog-form.d.ts +1 -1
  956. package/dist/components/layout/app-shell/app-shell.types.d.ts +65 -0
  957. package/dist/components/layout/app-shell/app-shell.types.d.ts.map +1 -0
  958. package/dist/components/layout/app-shell/index.cjs +1 -0
  959. package/dist/components/layout/app-shell/index.d.ts +3 -0
  960. package/dist/components/layout/app-shell/index.d.ts.map +1 -0
  961. package/dist/components/layout/app-shell/index.js +2 -0
  962. package/dist/components/layout/app-shell/topbar-sidebar-layout.d.ts +3 -0
  963. package/dist/components/layout/app-shell/topbar-sidebar-layout.d.ts.map +1 -0
  964. package/dist/components/layout/containers/content-container.d.ts +1 -1
  965. package/dist/components/layout/containers/content-container.d.ts.map +1 -1
  966. package/dist/components/layout/containers/index.cjs +1 -1
  967. package/dist/components/layout/containers/index.js +2 -2
  968. package/dist/components/layout/containers/section.d.ts +1 -1
  969. package/dist/components/layout/containers/section.d.ts.map +1 -1
  970. package/dist/components/layout/header/header.d.ts +1 -1
  971. package/dist/components/layout/header/header.d.ts.map +1 -1
  972. package/dist/components/layout/header/index.cjs +1 -1
  973. package/dist/components/layout/header/index.js +1 -1
  974. package/dist/components/layout/header/partials/header-breadcrumbs.d.ts +3 -1
  975. package/dist/components/layout/header/partials/header-breadcrumbs.d.ts.map +1 -1
  976. package/dist/components/layout/header/partials/header-notifications.d.ts +1 -1
  977. package/dist/components/layout/header/partials/header-notifications.d.ts.map +1 -1
  978. package/dist/components/layout/header/partials/header-search.d.ts +1 -1
  979. package/dist/components/layout/header/partials/header-search.d.ts.map +1 -1
  980. package/dist/components/layout/header/partials/header-user-menu.d.ts +1 -1
  981. package/dist/components/layout/header/partials/header-user-menu.d.ts.map +1 -1
  982. package/dist/components/layout/hooks/index.cjs +1 -1
  983. package/dist/components/layout/hooks/index.js +1 -1
  984. package/dist/components/layout/index.cjs +1 -1
  985. package/dist/components/layout/index.d.ts +1 -0
  986. package/dist/components/layout/index.d.ts.map +1 -1
  987. package/dist/components/layout/index.js +8 -7
  988. package/dist/components/layout/page/index.cjs +1 -1
  989. package/dist/components/layout/page/index.js +1 -1
  990. package/dist/components/layout/page/page-content.d.ts +1 -1
  991. package/dist/components/layout/page/page-content.d.ts.map +1 -1
  992. package/dist/components/layout/page/page.d.ts +1 -1
  993. package/dist/components/layout/page/page.d.ts.map +1 -1
  994. package/dist/components/layout/page/partials/page-actions.d.ts +1 -1
  995. package/dist/components/layout/page/partials/page-actions.d.ts.map +1 -1
  996. package/dist/components/layout/page/partials/page-header.d.ts +1 -1
  997. package/dist/components/layout/page/partials/page-header.d.ts.map +1 -1
  998. package/dist/components/layout/sidebar/app-sidebar.d.ts +6 -1
  999. package/dist/components/layout/sidebar/app-sidebar.d.ts.map +1 -1
  1000. package/dist/components/layout/sidebar/components/sidebar-grouped-navigation.d.ts +1 -1
  1001. package/dist/components/layout/sidebar/components/sidebar-grouped-navigation.d.ts.map +1 -1
  1002. package/dist/components/layout/sidebar/components/sidebar-logo.d.ts +1 -1
  1003. package/dist/components/layout/sidebar/components/sidebar-logo.d.ts.map +1 -1
  1004. package/dist/components/layout/sidebar/components/sidebar-navigation-footer.d.ts +1 -1
  1005. package/dist/components/layout/sidebar/components/sidebar-navigation-footer.d.ts.map +1 -1
  1006. package/dist/components/layout/sidebar/components/sidebar-navigation-user.d.ts +1 -1
  1007. package/dist/components/layout/sidebar/components/sidebar-navigation-user.d.ts.map +1 -1
  1008. package/dist/components/layout/sidebar/components/sidebar-navigation.d.ts +3 -1
  1009. package/dist/components/layout/sidebar/components/sidebar-navigation.d.ts.map +1 -1
  1010. package/dist/components/layout/sidebar/components/sidebar-workspace-dropdown.d.ts +1 -1
  1011. package/dist/components/layout/sidebar/components/sidebar-workspace-dropdown.d.ts.map +1 -1
  1012. package/dist/components/layout/sidebar/index.cjs +1 -1
  1013. package/dist/components/layout/sidebar/index.js +2 -2
  1014. package/dist/components/layout/sidebar/sidebar.context.d.ts +1 -1
  1015. package/dist/components/layout/sidebar/sidebar.context.d.ts.map +1 -1
  1016. package/dist/components/layout/sidebar/sidebar.d.ts +1 -1
  1017. package/dist/components/layout/sidebar/sidebar.d.ts.map +1 -1
  1018. package/dist/components/layout/sidebar/sidebar.utils.d.ts +2 -2
  1019. package/dist/components/layout/sidebar/sidebar.utils.d.ts.map +1 -1
  1020. package/dist/components/typography/heading.d.ts +1 -1
  1021. package/dist/components/typography/heading.d.ts.map +1 -1
  1022. package/dist/components/typography/index.cjs +1 -1
  1023. package/dist/components/typography/index.js +3 -3
  1024. package/dist/components/typography/label.d.ts +1 -1
  1025. package/dist/components/typography/label.d.ts.map +1 -1
  1026. package/dist/components/typography/text-link.d.ts +1 -1
  1027. package/dist/components/typography/text-link.d.ts.map +1 -1
  1028. package/dist/components/typography/text.d.ts +1 -1
  1029. package/dist/components/typography/text.d.ts.map +1 -1
  1030. package/dist/components/typography/typography.d.ts +3 -3
  1031. package/dist/components/typography/typography.d.ts.map +1 -1
  1032. package/dist/components/ui/accordion.d.ts +4 -4
  1033. package/dist/components/ui/accordion.d.ts.map +1 -1
  1034. package/dist/components/ui/alert.d.ts +4 -4
  1035. package/dist/components/ui/alert.d.ts.map +1 -1
  1036. package/dist/components/ui/avatar.d.ts +6 -6
  1037. package/dist/components/ui/avatar.d.ts.map +1 -1
  1038. package/dist/components/ui/badge.d.ts +1 -1
  1039. package/dist/components/ui/badge.d.ts.map +1 -1
  1040. package/dist/components/ui/breadcrumb.d.ts +7 -7
  1041. package/dist/components/ui/breadcrumb.d.ts.map +1 -1
  1042. package/dist/components/ui/button-group.d.ts +2 -2
  1043. package/dist/components/ui/button-group.d.ts.map +1 -1
  1044. package/dist/components/ui/button.d.ts +1 -1
  1045. package/dist/components/ui/button.d.ts.map +1 -1
  1046. package/dist/components/ui/calendar.d.ts +2 -2
  1047. package/dist/components/ui/calendar.d.ts.map +1 -1
  1048. package/dist/components/ui/card.d.ts +7 -7
  1049. package/dist/components/ui/card.d.ts.map +1 -1
  1050. package/dist/components/ui/chart.d.ts +4 -4
  1051. package/dist/components/ui/chart.d.ts.map +1 -1
  1052. package/dist/components/ui/checkbox.d.ts +1 -1
  1053. package/dist/components/ui/checkbox.d.ts.map +1 -1
  1054. package/dist/components/ui/collapsible.d.ts +4 -3
  1055. package/dist/components/ui/collapsible.d.ts.map +1 -1
  1056. package/dist/components/ui/combobox.d.ts +20 -20
  1057. package/dist/components/ui/combobox.d.ts.map +1 -1
  1058. package/dist/components/ui/command.d.ts +9 -9
  1059. package/dist/components/ui/command.d.ts.map +1 -1
  1060. package/dist/components/ui/context-menu.d.ts +15 -15
  1061. package/dist/components/ui/context-menu.d.ts.map +1 -1
  1062. package/dist/components/ui/dialog.d.ts +10 -10
  1063. package/dist/components/ui/dialog.d.ts.map +1 -1
  1064. package/dist/components/ui/dropdown-menu.d.ts +16 -16
  1065. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  1066. package/dist/components/ui/empty.d.ts +6 -6
  1067. package/dist/components/ui/empty.d.ts.map +1 -1
  1068. package/dist/components/ui/hover-card.d.ts +3 -3
  1069. package/dist/components/ui/hover-card.d.ts.map +1 -1
  1070. package/dist/components/ui/input-group.d.ts +6 -6
  1071. package/dist/components/ui/input-group.d.ts.map +1 -1
  1072. package/dist/components/ui/input.d.ts +1 -1
  1073. package/dist/components/ui/input.d.ts.map +1 -1
  1074. package/dist/components/ui/item.d.ts +9 -9
  1075. package/dist/components/ui/item.d.ts.map +1 -1
  1076. package/dist/components/ui/pagination.d.ts +7 -7
  1077. package/dist/components/ui/pagination.d.ts.map +1 -1
  1078. package/dist/components/ui/popover.d.ts +7 -7
  1079. package/dist/components/ui/popover.d.ts.map +1 -1
  1080. package/dist/components/ui/progress.d.ts +5 -5
  1081. package/dist/components/ui/progress.d.ts.map +1 -1
  1082. package/dist/components/ui/radio-group.d.ts +2 -2
  1083. package/dist/components/ui/radio-group.d.ts.map +1 -1
  1084. package/dist/components/ui/scroll-area.d.ts +2 -2
  1085. package/dist/components/ui/scroll-area.d.ts.map +1 -1
  1086. package/dist/components/ui/select.d.ts +9 -9
  1087. package/dist/components/ui/select.d.ts.map +1 -1
  1088. package/dist/components/ui/separator.d.ts +1 -1
  1089. package/dist/components/ui/separator.d.ts.map +1 -1
  1090. package/dist/components/ui/sheet.d.ts +8 -8
  1091. package/dist/components/ui/sheet.d.ts.map +1 -1
  1092. package/dist/components/ui/sidebar.d.ts +19 -19
  1093. package/dist/components/ui/sidebar.d.ts.map +1 -1
  1094. package/dist/components/ui/skeleton.d.ts +1 -1
  1095. package/dist/components/ui/skeleton.d.ts.map +1 -1
  1096. package/dist/components/ui/slider.d.ts +2 -1
  1097. package/dist/components/ui/slider.d.ts.map +1 -1
  1098. package/dist/components/ui/sonner.d.ts +1 -1
  1099. package/dist/components/ui/sonner.d.ts.map +1 -1
  1100. package/dist/components/ui/spinner.d.ts +1 -1
  1101. package/dist/components/ui/spinner.d.ts.map +1 -1
  1102. package/dist/components/ui/switch.d.ts +1 -1
  1103. package/dist/components/ui/switch.d.ts.map +1 -1
  1104. package/dist/components/ui/table.d.ts +8 -8
  1105. package/dist/components/ui/table.d.ts.map +1 -1
  1106. package/dist/components/ui/tabs.d.ts +4 -4
  1107. package/dist/components/ui/tabs.d.ts.map +1 -1
  1108. package/dist/components/ui/textarea.d.ts +1 -1
  1109. package/dist/components/ui/textarea.d.ts.map +1 -1
  1110. package/dist/components/ui/toggle-group.d.ts +3 -2
  1111. package/dist/components/ui/toggle-group.d.ts.map +1 -1
  1112. package/dist/components/ui/toggle.d.ts +1 -1
  1113. package/dist/components/ui/toggle.d.ts.map +1 -1
  1114. package/dist/components/ui/tooltip.d.ts +4 -4
  1115. package/dist/components/ui/tooltip.d.ts.map +1 -1
  1116. package/dist/index.cjs +1 -1
  1117. package/dist/index.js +1 -1
  1118. package/dist/lib/strings.cjs +1 -1
  1119. package/dist/lib/strings.cjs.map +1 -1
  1120. package/dist/lib/strings.js.map +1 -1
  1121. package/dist/lib/ui-provider/index.cjs +1 -1
  1122. package/dist/lib/ui-provider/index.js +1 -1
  1123. package/dist/lib/ui-provider/provider.d.ts +1 -1
  1124. package/dist/lib/ui-provider/provider.d.ts.map +1 -1
  1125. package/dist/lib/utils.cjs +1 -1
  1126. package/dist/lib/utils.cjs.map +1 -1
  1127. package/dist/lib/utils.js.map +1 -1
  1128. package/dist/showcase/assets/AreaChart-CzBEYPbz.js +6 -0
  1129. package/dist/showcase/assets/CSPContext-ImKusJJ_.js +1 -0
  1130. package/dist/showcase/assets/CompositeItem-C-DIOBdJ.js +1 -0
  1131. package/dist/showcase/assets/CompositeRoot-Ce4ORgG2.js +1 -0
  1132. package/dist/showcase/assets/Control.FullScreen-CwLQ1MMK.js +1 -0
  1133. package/dist/showcase/assets/DialogTrigger-DWvMs7dp.js +1 -0
  1134. package/dist/showcase/assets/FormContext-BeC1MJpT.js +1 -0
  1135. package/dist/showcase/assets/PreviewLayout-N1PTTyZK.js +1 -0
  1136. package/dist/showcase/assets/RadioGroup-DAWaa26D.js +1 -0
  1137. package/dist/showcase/assets/Separator-guDkmky0.js +1 -0
  1138. package/dist/showcase/assets/ToolbarRootContext-BJ7hWga8.js +1 -0
  1139. package/dist/showcase/assets/accordion-CiM9WhkT.js +172 -0
  1140. package/dist/showcase/assets/accordion-variants-C_sHrQ7C.js +1 -0
  1141. package/dist/showcase/assets/action-menu-mlWlGE5P.js +1 -0
  1142. package/dist/showcase/assets/activities-YWR4wh4f.js +501 -0
  1143. package/dist/showcase/assets/activities-feed-card-Cglnf5as.js +1 -0
  1144. package/dist/showcase/assets/admin-BtOtzPd4.js +80 -0
  1145. package/dist/showcase/assets/ai-8iNe0R1M.js +41 -0
  1146. package/dist/showcase/assets/ai-artifact-CQL5krnJ.js +2 -0
  1147. package/dist/showcase/assets/ai-chat-BzCdOOc6.js +568 -0
  1148. package/dist/showcase/assets/ai-elements-CBHy2xWU.js +379 -0
  1149. package/dist/showcase/assets/ai-new-CgL5NeVs.js +167 -0
  1150. package/dist/showcase/assets/ai-tool-call-D9AsaWJF.js +1 -0
  1151. package/dist/showcase/assets/alert-B2BuF4vZ.js +59 -0
  1152. package/dist/showcase/assets/alert-BkVaTONJ.js +1 -0
  1153. package/dist/showcase/assets/api-key-list-C-_59dli.js +73 -0
  1154. package/dist/showcase/assets/app-sidebar-BdOu5rVn.js +1 -0
  1155. package/dist/showcase/assets/arrow-down-BpVaq9-H.js +1 -0
  1156. package/dist/showcase/assets/arrow-left-C40rxfqj.js +1 -0
  1157. package/dist/showcase/assets/arrow-right-BclouSfP.js +1 -0
  1158. package/dist/showcase/assets/arrow-up-BpWEnkdX.js +1 -0
  1159. package/dist/showcase/assets/arrow-up-right-Z5sMa1HH.js +1 -0
  1160. package/dist/showcase/assets/avatar-CDNhh3rv.js +57 -0
  1161. package/dist/showcase/assets/avatar-QBwg3fvR.js +1 -0
  1162. package/dist/showcase/assets/badge-check-DXDQ3SaL.js +1 -0
  1163. package/dist/showcase/assets/badge-tAdYt--9.js +28 -0
  1164. package/dist/showcase/assets/bell-CVEeEWw4.js +1 -0
  1165. package/dist/showcase/assets/bot-Bcx5mNAQ.js +1 -0
  1166. package/dist/showcase/assets/box-Dgy2Xc70.js +1 -0
  1167. package/dist/showcase/assets/brain-DsoOsd7m.js +1 -0
  1168. package/dist/showcase/assets/brand-DAyuXNUz.js +40 -0
  1169. package/dist/showcase/assets/breadcrumb-CC4Z8eMY.js +1 -0
  1170. package/dist/showcase/assets/breadcrumb-DCbAzeMs.js +52 -0
  1171. package/dist/showcase/assets/breadcrumbs-DGZMpIoQ.js +1 -0
  1172. package/dist/showcase/assets/briefcase-2uLXCvAZ.js +1 -0
  1173. package/dist/showcase/assets/button-DhQ6rMPU.js +44 -0
  1174. package/dist/showcase/assets/button-group-Ce9vnZ1H.js +1 -0
  1175. package/dist/showcase/assets/buttons-CHja0LUL.js +270 -0
  1176. package/dist/showcase/assets/calendar-BbiK8AMZ.js +16 -0
  1177. package/dist/showcase/assets/calendar-BhZpIjCo.js +1 -0
  1178. package/dist/showcase/assets/calendar-oKaDsUIy.js +1 -0
  1179. package/dist/showcase/assets/card-DoU1VD79.js +1 -0
  1180. package/dist/showcase/assets/cards-3OgH8m3F.js +328 -0
  1181. package/dist/showcase/assets/chart-column-6Tn3WAT9.js +1 -0
  1182. package/dist/showcase/assets/chevron-down-x7TQsvYY.js +1 -0
  1183. package/dist/showcase/assets/chevron-left-CglzJgA2.js +1 -0
  1184. package/dist/showcase/assets/chevron-right-CDDMIkYP.js +1 -0
  1185. package/dist/showcase/assets/chevron-up-Dc3aAaGH.js +1 -0
  1186. package/dist/showcase/assets/chevrons-up-down-DJNnSBAj.js +1 -0
  1187. package/dist/showcase/assets/circle-BBmNFtO8.js +1 -0
  1188. package/dist/showcase/assets/circle-alert-DJevf3tT.js +1 -0
  1189. package/dist/showcase/assets/circle-check-BCxORlAM.js +1 -0
  1190. package/dist/showcase/assets/circle-check-big-tiuK2w0-.js +1 -0
  1191. package/dist/showcase/assets/circle-dot-BEVVQjgN.js +1 -0
  1192. package/dist/showcase/assets/circle-question-mark-BQrUUiKD.js +1 -0
  1193. package/dist/showcase/assets/circle-x-CoV_AUtZ.js +1 -0
  1194. package/dist/showcase/assets/clock-Bn2R4aDX.js +1 -0
  1195. package/dist/showcase/assets/code-xml-BVYp_JDX.js +1 -0
  1196. package/dist/showcase/assets/collapsible-Co2Y739_.js +27 -0
  1197. package/dist/showcase/assets/collapsible-DPbftgrO.js +1 -0
  1198. package/dist/showcase/assets/combobox-Cm4__LnJ.js +622 -0
  1199. package/dist/showcase/assets/command-DQFIxPN9.js +45 -0
  1200. package/dist/showcase/assets/command-KNncGgZW.js +1 -0
  1201. package/dist/showcase/assets/comment-composer-DTJtqYGP.js +1 -0
  1202. package/dist/showcase/assets/comment-item-DIEYMmV_.js +1 -0
  1203. package/dist/showcase/assets/comments-B0BbDp-3.js +357 -0
  1204. package/dist/showcase/assets/commerce-BOWBCLA-.js +79 -0
  1205. package/dist/showcase/assets/commerce-extras-C6CWYfpC.js +173 -0
  1206. package/dist/showcase/assets/composite-YicTVAO0.js +1 -0
  1207. package/dist/showcase/assets/contact-card-DQPRIlnJ.js +65 -0
  1208. package/dist/showcase/assets/content-container-CHXwWViz.js +1 -0
  1209. package/dist/showcase/assets/copyable-CjTwco9O.js +96 -0
  1210. package/dist/showcase/assets/course-card-CTQScd2C.js +113 -0
  1211. package/dist/showcase/assets/cpu-D52NjUWq.js +1 -0
  1212. package/dist/showcase/assets/credit-card-BoDfW0R8.js +1 -0
  1213. package/dist/showcase/assets/currency-BPREbpDA.js +149 -0
  1214. package/dist/showcase/assets/dark-surfaces-BCG45K2m.js +90 -0
  1215. package/dist/showcase/assets/database-DeGR0hed.js +1 -0
  1216. package/dist/showcase/assets/date-block-Bl1kXJrM.js +1 -0
  1217. package/dist/showcase/assets/date-picker-BHbZa4ML.js +1 -0
  1218. package/dist/showcase/assets/date-pickers-DumwUEXE.js +110 -0
  1219. package/dist/showcase/assets/dense-info-DxfgBw9Z.js +106 -0
  1220. package/dist/showcase/assets/dialog-BYHZvlL8.js +1 -0
  1221. package/dist/showcase/assets/display-BXMGOjL3.js +392 -0
  1222. package/dist/showcase/assets/dist-CnonIdcR.js +1 -0
  1223. package/dist/showcase/assets/dollar-sign-BipUTVXC.js +1 -0
  1224. package/dist/showcase/assets/download-CxspQgIc.js +1 -0
  1225. package/dist/showcase/assets/dropdown-menu-Q1BV3wPP.js +1 -0
  1226. package/dist/showcase/assets/dropzone-OivkuTPF.js +1 -0
  1227. package/dist/showcase/assets/ellipsis-Bn-XgoA7.js +1 -0
  1228. package/dist/showcase/assets/ellipsis-vertical-Bcl9HX9k.js +1 -0
  1229. package/dist/showcase/assets/empty-CcafLcw-.js +1 -0
  1230. package/dist/showcase/assets/empty-item-CiJeS8ZV.js +49 -0
  1231. package/dist/showcase/assets/empty-state-B1RYYjUP.js +188 -0
  1232. package/dist/showcase/assets/enhanced-activities-IB811DS6.js +361 -0
  1233. package/dist/showcase/assets/esm-CAF_uoYd.js +2 -0
  1234. package/dist/showcase/assets/event-calendar-C2VCfcUz.js +138 -0
  1235. package/dist/showcase/assets/event-log-ckmsCPmG.js +330 -0
  1236. package/dist/showcase/assets/example-C6-_Sy6B.js +1 -0
  1237. package/dist/showcase/assets/external-link-Bg-_8Uq7.js +1 -0
  1238. package/dist/showcase/assets/eye-JVsUA85G.js +1 -0
  1239. package/dist/showcase/assets/feature-announcement-C4aRXesF.js +34 -0
  1240. package/dist/showcase/assets/fetchers-DHuMQ6PN.js +1 -0
  1241. package/dist/showcase/assets/file-4pOq58jl.js +1 -0
  1242. package/dist/showcase/assets/file-text-BIi71mZ1.js +1 -0
  1243. package/dist/showcase/assets/filters-CxrcnmLU.js +78 -0
  1244. package/dist/showcase/assets/flag-DeiJmomk.js +1 -0
  1245. package/dist/showcase/assets/folder-open-zMXBpVNs.js +1 -0
  1246. package/dist/showcase/assets/form-sizing-B8jbL5tL.js +1 -0
  1247. package/dist/showcase/assets/format-BG4laCmp.js +1 -0
  1248. package/dist/showcase/assets/format-metric-value-B94EDo8X.js +1 -0
  1249. package/dist/showcase/assets/forms-PsN5zTLx.js +793 -0
  1250. package/dist/showcase/assets/generic-BH5YLC_H.js +1 -0
  1251. package/dist/showcase/assets/getPseudoElementBounds-B7wr19E1.js +1 -0
  1252. package/dist/showcase/assets/gift-CKFIh1Wh.js +1 -0
  1253. package/dist/showcase/assets/giftcard-cards-BfOlIHmA.js +85 -0
  1254. package/dist/showcase/assets/git-branch-BO9i8XkJ.js +1 -0
  1255. package/dist/showcase/assets/global-search-CNmUraNa.js +90 -0
  1256. package/dist/showcase/assets/global-search-DkJkQ0Vs.js +1 -0
  1257. package/dist/showcase/assets/globe-47T22W56.js +1 -0
  1258. package/dist/showcase/assets/gradient-card-CXSY29TZ.js +58 -0
  1259. package/dist/showcase/assets/header-eZHN-s6P.js +1 -0
  1260. package/dist/showcase/assets/header-notifications-Caa9i87J.js +1 -0
  1261. package/dist/showcase/assets/heart-DjKkkUsX.js +1 -0
  1262. package/dist/showcase/assets/house-DKxCiHyB.js +1 -0
  1263. package/dist/showcase/assets/icon-badge-Bcm8TlJi.js +1 -0
  1264. package/dist/showcase/assets/image-r-gMI33G.js +1 -0
  1265. package/dist/showcase/assets/inbox-ZxSy1pgX.js +1 -0
  1266. package/dist/showcase/assets/index-B8DVXCmf.js +10 -0
  1267. package/dist/showcase/assets/index-DbLs6mcj.css +2 -0
  1268. package/dist/showcase/assets/inertValue-i0cAMG-0.js +1 -0
  1269. package/dist/showcase/assets/info-B1KV2DkO.js +1 -0
  1270. package/dist/showcase/assets/inline-stat-D0sE-A4C.js +1 -0
  1271. package/dist/showcase/assets/input-25epjsiD.js +1 -0
  1272. package/dist/showcase/assets/input-CnwMt9Sr.js +1 -0
  1273. package/dist/showcase/assets/input-group-DSKyV7we.js +47 -0
  1274. package/dist/showcase/assets/input-group-x5eWeAZg.js +1 -0
  1275. package/dist/showcase/assets/inputs-B2Maxr14.js +49 -0
  1276. package/dist/showcase/assets/invoice-header-Gxl--yFu.js +36 -0
  1277. package/dist/showcase/assets/invoice-items-BtoaGNjE.js +36 -0
  1278. package/dist/showcase/assets/invoice-mini-DHFSZegy.js +14 -0
  1279. package/dist/showcase/assets/invoice-table-6dmU_KrL.js +30 -0
  1280. package/dist/showcase/assets/isSameDay-BrDHfKHm.js +1 -0
  1281. package/dist/showcase/assets/isToday-VtoSc1IH.js +1 -0
  1282. package/dist/showcase/assets/italic-CXkAsf6H.js +1 -0
  1283. package/dist/showcase/assets/item-CGOThKAx.js +1 -0
  1284. package/dist/showcase/assets/item-CMRbW6s-.js +1 -0
  1285. package/dist/showcase/assets/item-sw6fAZcn.js +117 -0
  1286. package/dist/showcase/assets/kanban-CKGYTXji.js +175 -0
  1287. package/dist/showcase/assets/label-BmKD22pm.js +1 -0
  1288. package/dist/showcase/assets/layout-app-shell-CeMHzVNn.js +501 -0
  1289. package/dist/showcase/assets/layout-containers-8Drow5f9.js +96 -0
  1290. package/dist/showcase/assets/layout-header-BlBw4JAV.js +170 -0
  1291. package/dist/showcase/assets/layout-page-BQfgHFau.js +122 -0
  1292. package/dist/showcase/assets/layout-sidebar-DZer5Uuh.js +224 -0
  1293. package/dist/showcase/assets/layout-users-nuioUkeu.js +104 -0
  1294. package/dist/showcase/assets/leaflet-src-S_KZeH2q.js +1 -0
  1295. package/dist/showcase/assets/lib-DMGme4uo.js +1 -0
  1296. package/dist/showcase/assets/lock-DQcZ9cEj.js +1 -0
  1297. package/dist/showcase/assets/mail-yNXDtmNr.js +1 -0
  1298. package/dist/showcase/assets/map-JMM1F9VR.js +124 -0
  1299. package/dist/showcase/assets/map-pin-2WS7oVo3.js +1 -0
  1300. package/dist/showcase/assets/menus-mK-FeNki.js +89 -0
  1301. package/dist/showcase/assets/message-square-DGTAjNJG.js +1 -0
  1302. package/dist/showcase/assets/metadata-list-CBxuQjVO.js +278 -0
  1303. package/dist/showcase/assets/metric-BWGrmyD6.js +1 -0
  1304. package/dist/showcase/assets/metric-grid-CewIJQvo.js +1 -0
  1305. package/dist/showcase/assets/metric-trend-chip-kLBN8u5z.js +1 -0
  1306. package/dist/showcase/assets/metrics-analytics-bar-COnc7VN9.js +44 -0
  1307. package/dist/showcase/assets/metrics-analytics-cards-BR83UVqi.js +77 -0
  1308. package/dist/showcase/assets/metrics-comparison-C0SUjdMg.js +76 -0
  1309. package/dist/showcase/assets/metrics-heatmap-Orq1hLk-.js +27 -0
  1310. package/dist/showcase/assets/metrics-inline-badge-C924q2Xx.js +17 -0
  1311. package/dist/showcase/assets/metrics-kpi-row-Cwi05ruK.js +31 -0
  1312. package/dist/showcase/assets/metrics-micro-grid-D97nkrge.js +42 -0
  1313. package/dist/showcase/assets/metrics-overview-BOc8y3QX.js +192 -0
  1314. package/dist/showcase/assets/metrics-stat-cards-Cilh-A5D.js +54 -0
  1315. package/dist/showcase/assets/minus-DvrDGcTv.js +1 -0
  1316. package/dist/showcase/assets/money-display-0egZ_O76.js +1 -0
  1317. package/dist/showcase/assets/month-year-picker-2cWfwnmP.js +1 -0
  1318. package/dist/showcase/assets/navigation-BnYme-Wj.js +90 -0
  1319. package/dist/showcase/assets/navigation-CLQWl32A.js +230 -0
  1320. package/dist/showcase/assets/navigation-extras-BPDoAdXF.js +43 -0
  1321. package/dist/showcase/assets/onboarding-checklist-26XVWgDF.js +119 -0
  1322. package/dist/showcase/assets/overlays-2sVGhanu.js +88 -0
  1323. package/dist/showcase/assets/overlays-BaR6HDwB.js +394 -0
  1324. package/dist/showcase/assets/package-CUNvdlBi.js +1 -0
  1325. package/dist/showcase/assets/page-action-button-DgvZVtzx.js +1 -0
  1326. package/dist/showcase/assets/page-header-4F_iaFPW.js +1 -0
  1327. package/dist/showcase/assets/pagination-CDjZ6jiZ.js +42 -0
  1328. package/dist/showcase/assets/pagination-g1NQaN42.js +1 -0
  1329. package/dist/showcase/assets/paperclip-CDxdf8Os.js +1 -0
  1330. package/dist/showcase/assets/pencil-Ddc5JwBe.js +1 -0
  1331. package/dist/showcase/assets/phone-NIZ5SwgK.js +1 -0
  1332. package/dist/showcase/assets/plus-C9kwz7rW.js +1 -0
  1333. package/dist/showcase/assets/popover-DtnuOBgr.js +1 -0
  1334. package/dist/showcase/assets/popover-T85aV4zW.js +1 -0
  1335. package/dist/showcase/assets/popover-menu-BRGSZe4f.js +1 -0
  1336. package/dist/showcase/assets/progress-CcZjuzK3.js +1 -0
  1337. package/dist/showcase/assets/progress-DbouniUl.js +18 -0
  1338. package/dist/showcase/assets/props-table-CM_1cocj.js +1 -0
  1339. package/dist/showcase/assets/props.generated-Bg627Jai.json +32829 -0
  1340. package/dist/showcase/assets/quote-vjygm2-7.js +1 -0
  1341. package/dist/showcase/assets/react-dom-Bz4cALsF.js +1 -0
  1342. package/dist/showcase/assets/receipt-CfMgwFPl.js +1 -0
  1343. package/dist/showcase/assets/refresh-cw-Tu5E_cGA.js +1 -0
  1344. package/dist/showcase/assets/resolveValueLabel-CipUZh6i.js +1 -0
  1345. package/dist/showcase/assets/rich-text-editor-BMZUyuQX.js +143 -0
  1346. package/dist/showcase/assets/rich-text-editor-HwYIeWYW.js +124 -0
  1347. package/dist/showcase/assets/rotate-ccw-B4Wi4ws7.js +1 -0
  1348. package/dist/showcase/assets/scroll-area-CuB_woqF.js +1 -0
  1349. package/dist/showcase/assets/scroll-area-I4mSIpRq.js +32 -0
  1350. package/dist/showcase/assets/select-CF3cKjCo.js +1 -0
  1351. package/dist/showcase/assets/send-Blu_n6xl.js +1 -0
  1352. package/dist/showcase/assets/separator-9mrRf_DZ.js +28 -0
  1353. package/dist/showcase/assets/separator-DUKleOvU.js +1 -0
  1354. package/dist/showcase/assets/settings-DlKX-bZT.js +1 -0
  1355. package/dist/showcase/assets/sheet-CwcLVoF3.js +1 -0
  1356. package/dist/showcase/assets/shield-BD0Y8Jj3.js +1 -0
  1357. package/dist/showcase/assets/shield-alert-DNOTmkwG.js +1 -0
  1358. package/dist/showcase/assets/shield-check-Sbul0dUK.js +1 -0
  1359. package/dist/showcase/assets/shopping-bag-EDVpxI9n.js +1 -0
  1360. package/dist/showcase/assets/sidebar-JWZ88xw5.js +1 -0
  1361. package/dist/showcase/assets/sidebar.context-D3P7qppn.js +1 -0
  1362. package/dist/showcase/assets/skeleton-CIS1Kaas.js +1 -0
  1363. package/dist/showcase/assets/skeleton-CJCJDQFt.js +29 -0
  1364. package/dist/showcase/assets/smart-card-7szg_qSt.js +1 -0
  1365. package/dist/showcase/assets/sonner-DMHXr9Ce.js +22 -0
  1366. package/dist/showcase/assets/sortable.esm-DVuzVA1U.js +5 -0
  1367. package/dist/showcase/assets/sparkles-BEa1AgNq.js +1 -0
  1368. package/dist/showcase/assets/spinner-Bi-T9etI.js +30 -0
  1369. package/dist/showcase/assets/spinner-C77XIUVf.js +1 -0
  1370. package/dist/showcase/assets/spinner-DK9BAT6K.js +49 -0
  1371. package/dist/showcase/assets/square-pen-N0mq-vPu.js +1 -0
  1372. package/dist/showcase/assets/stacked-avatars-DORVEni2.js +1 -0
  1373. package/dist/showcase/assets/star-Dbtxr60S.js +1 -0
  1374. package/dist/showcase/assets/startOfDay-BJgxz4yq.js +1 -0
  1375. package/dist/showcase/assets/styles-CwW4IBUg.js +1 -0
  1376. package/dist/showcase/assets/switch-B4iRxZFU.js +1 -0
  1377. package/dist/showcase/assets/switch-B_rnbXwy.js +1 -0
  1378. package/dist/showcase/assets/table-BJ9HSK6H.js +1 -0
  1379. package/dist/showcase/assets/table-IB0MEYf4.js +389 -0
  1380. package/dist/showcase/assets/tabs-D02JL-Fa.js +1 -0
  1381. package/dist/showcase/assets/tabs-XpsVS3ff.js +19 -0
  1382. package/dist/showcase/assets/text-button-BWCgXGnr.js +1 -0
  1383. package/dist/showcase/assets/text-link-TzuDnSCF.js +1 -0
  1384. package/dist/showcase/assets/textarea-B7DUIiH_.js +1 -0
  1385. package/dist/showcase/assets/textarea-CV5gNzXf.js +1 -0
  1386. package/dist/showcase/assets/timelines-CF0UYhwm.js +200 -0
  1387. package/dist/showcase/assets/toggle-group-CK8mBx6E.js +1 -0
  1388. package/dist/showcase/assets/toggles-CqJSApnF.js +71 -0
  1389. package/dist/showcase/assets/toggles-group-v0JijMzG.js +32 -0
  1390. package/dist/showcase/assets/trash-2-_xF5j-Ya.js +1 -0
  1391. package/dist/showcase/assets/trending-up-BCzmjYzm.js +1 -0
  1392. package/dist/showcase/assets/truck-CryH-5dx.js +1 -0
  1393. package/dist/showcase/assets/typography-D3PFbRpb.js +215 -0
  1394. package/dist/showcase/assets/ui-badge-ByyFPLOB.js +28 -0
  1395. package/dist/showcase/assets/ui-card-DYLLiD89.js +30 -0
  1396. package/dist/showcase/assets/ui-table-DW4QIwxK.js +42 -0
  1397. package/dist/showcase/assets/upload-tray-ZdL_dzc0.js +138 -0
  1398. package/dist/showcase/assets/useAnchoredPopupScrollLock-AFPLx3SZ.js +1 -0
  1399. package/dist/showcase/assets/useCollapsiblePanel-CeHRY8U2.js +1 -0
  1400. package/dist/showcase/assets/useCompositeItem-C-1zP8zD.js +1 -0
  1401. package/dist/showcase/assets/useCompositeListItem-D4ugfKLB.js +1 -0
  1402. package/dist/showcase/assets/useControlled-Cpg8gDqb.js +1 -0
  1403. package/dist/showcase/assets/useLabelableId-CSxAHpU-.js +1 -0
  1404. package/dist/showcase/assets/useOpenInteractionType-BLV8Pa2n.js +1 -0
  1405. package/dist/showcase/assets/useRender-DparzvOu.js +1 -0
  1406. package/dist/showcase/assets/useTriggerFocusGuards-CrYLO2g5.js +1 -0
  1407. package/dist/showcase/assets/useValueChanged-DwgbaueK.js +1 -0
  1408. package/dist/showcase/assets/user-CGcV8Ppb.js +1 -0
  1409. package/dist/showcase/assets/user-plus-iOsntM6P.js +1 -0
  1410. package/dist/showcase/assets/users-DzgXeZbf.js +1 -0
  1411. package/dist/showcase/assets/vendor-profile-DbFPkGn9.js +37 -0
  1412. package/dist/showcase/assets/wrench-1Ra9xb3d.js +1 -0
  1413. package/dist/showcase/assets/x-CE8oevyh.js +1 -0
  1414. package/dist/showcase/assets/zap-se3n2YVD.js +1 -0
  1415. package/dist/showcase/index.html +4 -3
  1416. package/dist/style.css +2 -2
  1417. package/package.json +14 -3
  1418. package/scripts/audit-consumer.mjs +337 -0
  1419. package/scripts/install-skill.mjs +50 -36
  1420. package/src/App.css +28 -0
  1421. package/dist/_shared/accordion-CztqyaIN.js +0 -130
  1422. package/dist/_shared/accordion-CztqyaIN.js.map +0 -1
  1423. package/dist/_shared/accordion-D5uTCLCB.cjs +0 -2
  1424. package/dist/_shared/accordion-D5uTCLCB.cjs.map +0 -1
  1425. package/dist/_shared/action-menu-Yrj6VzFS.js +0 -96
  1426. package/dist/_shared/action-menu-Yrj6VzFS.js.map +0 -1
  1427. package/dist/_shared/action-menu-eVP8GGlv.cjs +0 -2
  1428. package/dist/_shared/action-menu-eVP8GGlv.cjs.map +0 -1
  1429. package/dist/_shared/ai-artifact-DaHXJTKg.cjs +0 -3
  1430. package/dist/_shared/ai-artifact-DaHXJTKg.cjs.map +0 -1
  1431. package/dist/_shared/ai-artifact-DyLn3JAs.js +0 -1068
  1432. package/dist/_shared/ai-artifact-DyLn3JAs.js.map +0 -1
  1433. package/dist/_shared/alert-BVw4Mq6H.js +0 -48
  1434. package/dist/_shared/alert-BVw4Mq6H.js.map +0 -1
  1435. package/dist/_shared/alert-DXSlR9ja.cjs +0 -2
  1436. package/dist/_shared/alert-DXSlR9ja.cjs.map +0 -1
  1437. package/dist/_shared/avatar-CpBz9pTv.js +0 -52
  1438. package/dist/_shared/avatar-CpBz9pTv.js.map +0 -1
  1439. package/dist/_shared/avatar-dg20YFFs.cjs +0 -2
  1440. package/dist/_shared/avatar-dg20YFFs.cjs.map +0 -1
  1441. package/dist/_shared/badge-BVCh_hfL.js +0 -108
  1442. package/dist/_shared/badge-BVCh_hfL.js.map +0 -1
  1443. package/dist/_shared/badge-C49SSz-6.cjs +0 -2
  1444. package/dist/_shared/badge-C49SSz-6.cjs.map +0 -1
  1445. package/dist/_shared/breadcrumbs-Bo7j5Rhv.cjs +0 -2
  1446. package/dist/_shared/breadcrumbs-Bo7j5Rhv.cjs.map +0 -1
  1447. package/dist/_shared/breadcrumbs-Dc93fqqE.js +0 -111
  1448. package/dist/_shared/breadcrumbs-Dc93fqqE.js.map +0 -1
  1449. package/dist/_shared/button-2xglT7yf.cjs +0 -2
  1450. package/dist/_shared/button-2xglT7yf.cjs.map +0 -1
  1451. package/dist/_shared/button-ChCkwoOD.js +0 -176
  1452. package/dist/_shared/button-ChCkwoOD.js.map +0 -1
  1453. package/dist/_shared/button-D0nF99a9.cjs +0 -2
  1454. package/dist/_shared/button-D0nF99a9.cjs.map +0 -1
  1455. package/dist/_shared/button-DBR4QI9E.js +0 -46
  1456. package/dist/_shared/button-DBR4QI9E.js.map +0 -1
  1457. package/dist/_shared/buttons-Bcnt1md_.js +0 -143
  1458. package/dist/_shared/buttons-Bcnt1md_.js.map +0 -1
  1459. package/dist/_shared/buttons-km9xqXJv.cjs +0 -2
  1460. package/dist/_shared/buttons-km9xqXJv.cjs.map +0 -1
  1461. package/dist/_shared/card-radio-group-BGH93O5-.js +0 -158
  1462. package/dist/_shared/card-radio-group-BGH93O5-.js.map +0 -1
  1463. package/dist/_shared/card-radio-group-Vq741uhL.cjs +0 -2
  1464. package/dist/_shared/card-radio-group-Vq741uhL.cjs.map +0 -1
  1465. package/dist/_shared/chunk-D3uCBrYO.cjs +0 -1
  1466. package/dist/_shared/combobox-BgXAxjU2.js +0 -746
  1467. package/dist/_shared/combobox-BgXAxjU2.js.map +0 -1
  1468. package/dist/_shared/combobox-DuIyh3xJ.cjs +0 -2
  1469. package/dist/_shared/combobox-DuIyh3xJ.cjs.map +0 -1
  1470. package/dist/_shared/command-BbiijN61.js +0 -39
  1471. package/dist/_shared/command-BbiijN61.js.map +0 -1
  1472. package/dist/_shared/command-D7zTvyBJ.cjs +0 -2
  1473. package/dist/_shared/command-D7zTvyBJ.cjs.map +0 -1
  1474. package/dist/_shared/command-DGNtTI-V.cjs +0 -2
  1475. package/dist/_shared/command-DGNtTI-V.cjs.map +0 -1
  1476. package/dist/_shared/command-jKbwFRtS.js +0 -123
  1477. package/dist/_shared/command-jKbwFRtS.js.map +0 -1
  1478. package/dist/_shared/comments-CNUsdwGW.cjs +0 -2
  1479. package/dist/_shared/comments-CNUsdwGW.cjs.map +0 -1
  1480. package/dist/_shared/comments-CvmS7zG3.js +0 -945
  1481. package/dist/_shared/comments-CvmS7zG3.js.map +0 -1
  1482. package/dist/_shared/containers-BFDv7cCV.cjs +0 -2
  1483. package/dist/_shared/containers-BFDv7cCV.cjs.map +0 -1
  1484. package/dist/_shared/containers-C1-A_2PT.js +0 -19
  1485. package/dist/_shared/containers-C1-A_2PT.js.map +0 -1
  1486. package/dist/_shared/content-container-CwqFnaI0.cjs +0 -2
  1487. package/dist/_shared/content-container-CwqFnaI0.cjs.map +0 -1
  1488. package/dist/_shared/content-container-D_3JGBSc.js +0 -33
  1489. package/dist/_shared/content-container-D_3JGBSc.js.map +0 -1
  1490. package/dist/_shared/copyable-CHhCGMfW.js +0 -38
  1491. package/dist/_shared/copyable-CHhCGMfW.js.map +0 -1
  1492. package/dist/_shared/copyable-ndaiocYq.cjs +0 -2
  1493. package/dist/_shared/copyable-ndaiocYq.cjs.map +0 -1
  1494. package/dist/_shared/date-picker-B8O_qbik.js +0 -1353
  1495. package/dist/_shared/date-picker-B8O_qbik.js.map +0 -1
  1496. package/dist/_shared/date-picker-BnOjyuKS.cjs +0 -2
  1497. package/dist/_shared/date-picker-BnOjyuKS.cjs.map +0 -1
  1498. package/dist/_shared/date-pickers-Cas9cPlj.js +0 -330
  1499. package/dist/_shared/date-pickers-Cas9cPlj.js.map +0 -1
  1500. package/dist/_shared/date-pickers-Dk-G3RMy.cjs +0 -2
  1501. package/dist/_shared/date-pickers-Dk-G3RMy.cjs.map +0 -1
  1502. package/dist/_shared/dialog-67GmkMLC.js +0 -101
  1503. package/dist/_shared/dialog-67GmkMLC.js.map +0 -1
  1504. package/dist/_shared/dialog-BF_4uAhE.cjs +0 -2
  1505. package/dist/_shared/dialog-BF_4uAhE.cjs.map +0 -1
  1506. package/dist/_shared/display-B9xVWboG.cjs +0 -8
  1507. package/dist/_shared/display-B9xVWboG.cjs.map +0 -1
  1508. package/dist/_shared/display-BM_GxDAo.js +0 -1237
  1509. package/dist/_shared/display-BM_GxDAo.js.map +0 -1
  1510. package/dist/_shared/dropdown-menu-4nxEBMnd.js +0 -147
  1511. package/dist/_shared/dropdown-menu-4nxEBMnd.js.map +0 -1
  1512. package/dist/_shared/dropdown-menu-DZlWHqWS.cjs +0 -2
  1513. package/dist/_shared/dropdown-menu-DZlWHqWS.cjs.map +0 -1
  1514. package/dist/_shared/form-field-BQlki-8s.js +0 -319
  1515. package/dist/_shared/form-field-BQlki-8s.js.map +0 -1
  1516. package/dist/_shared/form-field-DzpwVS99.cjs +0 -2
  1517. package/dist/_shared/form-field-DzpwVS99.cjs.map +0 -1
  1518. package/dist/_shared/form-sizing-CcbB-OHF.js +0 -21
  1519. package/dist/_shared/form-sizing-CcbB-OHF.js.map +0 -1
  1520. package/dist/_shared/form-sizing-Cw12UeI6.cjs +0 -2
  1521. package/dist/_shared/form-sizing-Cw12UeI6.cjs.map +0 -1
  1522. package/dist/_shared/format-B2AdSQVn.cjs +0 -2
  1523. package/dist/_shared/format-B2AdSQVn.cjs.map +0 -1
  1524. package/dist/_shared/format-CP65h1vK.js +0 -48
  1525. package/dist/_shared/format-CP65h1vK.js.map +0 -1
  1526. package/dist/_shared/forms-B8aaNG44.cjs +0 -2
  1527. package/dist/_shared/forms-B8aaNG44.cjs.map +0 -1
  1528. package/dist/_shared/forms-BusuTZZ2.js +0 -3374
  1529. package/dist/_shared/forms-BusuTZZ2.js.map +0 -1
  1530. package/dist/_shared/header-DWfOUjFL.cjs +0 -2
  1531. package/dist/_shared/header-DWfOUjFL.cjs.map +0 -1
  1532. package/dist/_shared/header-KpdoLtP9.js +0 -369
  1533. package/dist/_shared/header-KpdoLtP9.js.map +0 -1
  1534. package/dist/_shared/heading-BprqyzDs.js +0 -39
  1535. package/dist/_shared/heading-BprqyzDs.js.map +0 -1
  1536. package/dist/_shared/heading-mZc_jan1.cjs +0 -2
  1537. package/dist/_shared/heading-mZc_jan1.cjs.map +0 -1
  1538. package/dist/_shared/hooks-C-uWoRq5.cjs +0 -2
  1539. package/dist/_shared/hooks-C-uWoRq5.cjs.map +0 -1
  1540. package/dist/_shared/hooks-D5HJtvvP.js +0 -118
  1541. package/dist/_shared/hooks-D5HJtvvP.js.map +0 -1
  1542. package/dist/_shared/icon-badge-BBqDyAUz.cjs +0 -2
  1543. package/dist/_shared/icon-badge-BBqDyAUz.cjs.map +0 -1
  1544. package/dist/_shared/icon-badge-Bi63T-bj.js +0 -52
  1545. package/dist/_shared/icon-badge-Bi63T-bj.js.map +0 -1
  1546. package/dist/_shared/input-B2YXTHqz.cjs +0 -2
  1547. package/dist/_shared/input-B2YXTHqz.cjs.map +0 -1
  1548. package/dist/_shared/input-BJb10xb9.cjs +0 -2
  1549. package/dist/_shared/input-BJb10xb9.cjs.map +0 -1
  1550. package/dist/_shared/input-CZxP5Xgj.js +0 -17
  1551. package/dist/_shared/input-CZxP5Xgj.js.map +0 -1
  1552. package/dist/_shared/input-DQahu2sm.js +0 -182
  1553. package/dist/_shared/input-DQahu2sm.js.map +0 -1
  1554. package/dist/_shared/item-Cu5JbZyZ.js +0 -224
  1555. package/dist/_shared/item-Cu5JbZyZ.js.map +0 -1
  1556. package/dist/_shared/item-Cx_7QZ2o.cjs +0 -2
  1557. package/dist/_shared/item-Cx_7QZ2o.cjs.map +0 -1
  1558. package/dist/_shared/mentions-CS3rIhze.js +0 -493
  1559. package/dist/_shared/mentions-CS3rIhze.js.map +0 -1
  1560. package/dist/_shared/mentions-D7gnP3Nf.cjs +0 -2
  1561. package/dist/_shared/mentions-D7gnP3Nf.cjs.map +0 -1
  1562. package/dist/_shared/metadata-CRsVWE8Y.cjs +0 -2
  1563. package/dist/_shared/metadata-CRsVWE8Y.cjs.map +0 -1
  1564. package/dist/_shared/metadata-CfG0FdFZ.js +0 -236
  1565. package/dist/_shared/metadata-CfG0FdFZ.js.map +0 -1
  1566. package/dist/_shared/money-display-Bd0rkjc9.js +0 -198
  1567. package/dist/_shared/money-display-Bd0rkjc9.js.map +0 -1
  1568. package/dist/_shared/money-display-DSFft9Mi.cjs +0 -2
  1569. package/dist/_shared/money-display-DSFft9Mi.cjs.map +0 -1
  1570. package/dist/_shared/navigation-Do9k5Xh1.js +0 -420
  1571. package/dist/_shared/navigation-Do9k5Xh1.js.map +0 -1
  1572. package/dist/_shared/navigation-QAAD3HJd.cjs +0 -2
  1573. package/dist/_shared/navigation-QAAD3HJd.cjs.map +0 -1
  1574. package/dist/_shared/overlays-B8AH8fNv.js +0 -633
  1575. package/dist/_shared/overlays-B8AH8fNv.js.map +0 -1
  1576. package/dist/_shared/overlays-DOcoRy8k.cjs +0 -2
  1577. package/dist/_shared/overlays-DOcoRy8k.cjs.map +0 -1
  1578. package/dist/_shared/page-BPCeKX9X.js +0 -263
  1579. package/dist/_shared/page-BPCeKX9X.js.map +0 -1
  1580. package/dist/_shared/page-DMM32sxi.cjs +0 -2
  1581. package/dist/_shared/page-DMM32sxi.cjs.map +0 -1
  1582. package/dist/_shared/popover-B1f_EUQS.cjs +0 -2
  1583. package/dist/_shared/popover-B1f_EUQS.cjs.map +0 -1
  1584. package/dist/_shared/popover-CgRGcFk9.js +0 -83
  1585. package/dist/_shared/popover-CgRGcFk9.js.map +0 -1
  1586. package/dist/_shared/popover-menu-BEKIT3LR.cjs +0 -2
  1587. package/dist/_shared/popover-menu-BEKIT3LR.cjs.map +0 -1
  1588. package/dist/_shared/popover-menu-BHdHLEVL.js +0 -95
  1589. package/dist/_shared/popover-menu-BHdHLEVL.js.map +0 -1
  1590. package/dist/_shared/rich-text-editor-0uoIoYXU.js +0 -608
  1591. package/dist/_shared/rich-text-editor-0uoIoYXU.js.map +0 -1
  1592. package/dist/_shared/rich-text-editor-wTiARGuB.cjs +0 -2
  1593. package/dist/_shared/rich-text-editor-wTiARGuB.cjs.map +0 -1
  1594. package/dist/_shared/scroll-area-Bo17wtZD.cjs +0 -2
  1595. package/dist/_shared/scroll-area-Bo17wtZD.cjs.map +0 -1
  1596. package/dist/_shared/scroll-area-Cj-hmB5D.js +0 -41
  1597. package/dist/_shared/scroll-area-Cj-hmB5D.js.map +0 -1
  1598. package/dist/_shared/select-07RRiTWc.js +0 -85
  1599. package/dist/_shared/select-07RRiTWc.js.map +0 -1
  1600. package/dist/_shared/select-BfiU7a4n.cjs +0 -2
  1601. package/dist/_shared/select-BfiU7a4n.cjs.map +0 -1
  1602. package/dist/_shared/separator-CN9zAJfs.cjs +0 -2
  1603. package/dist/_shared/separator-CN9zAJfs.cjs.map +0 -1
  1604. package/dist/_shared/separator-DR0uUMKa.js +0 -16
  1605. package/dist/_shared/separator-DR0uUMKa.js.map +0 -1
  1606. package/dist/_shared/sheet-B5FoGJAZ.cjs +0 -2
  1607. package/dist/_shared/sheet-B5FoGJAZ.cjs.map +0 -1
  1608. package/dist/_shared/sheet-cUI8cypP.js +0 -100
  1609. package/dist/_shared/sheet-cUI8cypP.js.map +0 -1
  1610. package/dist/_shared/sidebar-Bq7yKLrG.cjs +0 -2
  1611. package/dist/_shared/sidebar-Bq7yKLrG.cjs.map +0 -1
  1612. package/dist/_shared/sidebar-Da20tCUc.cjs +0 -2
  1613. package/dist/_shared/sidebar-Da20tCUc.cjs.map +0 -1
  1614. package/dist/_shared/sidebar-Q6TYE8Ux.js +0 -371
  1615. package/dist/_shared/sidebar-Q6TYE8Ux.js.map +0 -1
  1616. package/dist/_shared/sidebar-WmnQ55YY.js +0 -537
  1617. package/dist/_shared/sidebar-WmnQ55YY.js.map +0 -1
  1618. package/dist/_shared/skeleton-B3HWEc6G.js +0 -14
  1619. package/dist/_shared/skeleton-B3HWEc6G.js.map +0 -1
  1620. package/dist/_shared/skeleton-Cz_l8-fc.cjs +0 -2
  1621. package/dist/_shared/skeleton-Cz_l8-fc.cjs.map +0 -1
  1622. package/dist/_shared/slot-BgnZtKR5.js +0 -18
  1623. package/dist/_shared/slot-BgnZtKR5.js.map +0 -1
  1624. package/dist/_shared/slot-Dac1ipUC.cjs +0 -2
  1625. package/dist/_shared/slot-Dac1ipUC.cjs.map +0 -1
  1626. package/dist/_shared/smart-card-Bm_VxYUG.cjs +0 -2
  1627. package/dist/_shared/smart-card-Bm_VxYUG.cjs.map +0 -1
  1628. package/dist/_shared/smart-card-MT6JjkoI.js +0 -360
  1629. package/dist/_shared/smart-card-MT6JjkoI.js.map +0 -1
  1630. package/dist/_shared/spinner-BQjxJ_Kx.js +0 -67
  1631. package/dist/_shared/spinner-BQjxJ_Kx.js.map +0 -1
  1632. package/dist/_shared/spinner-Dvaa6GUm.cjs +0 -2
  1633. package/dist/_shared/spinner-Dvaa6GUm.cjs.map +0 -1
  1634. package/dist/_shared/switch-C0yyhsXZ.js +0 -51
  1635. package/dist/_shared/switch-C0yyhsXZ.js.map +0 -1
  1636. package/dist/_shared/switch-DozkSQNn.cjs +0 -2
  1637. package/dist/_shared/switch-DozkSQNn.cjs.map +0 -1
  1638. package/dist/_shared/text-DBnY6fcL.cjs +0 -2
  1639. package/dist/_shared/text-DBnY6fcL.cjs.map +0 -1
  1640. package/dist/_shared/text-DIxMTECE.js +0 -74
  1641. package/dist/_shared/text-DIxMTECE.js.map +0 -1
  1642. package/dist/_shared/textarea-Cgl-FPwu.js +0 -119
  1643. package/dist/_shared/textarea-Cgl-FPwu.js.map +0 -1
  1644. package/dist/_shared/textarea-D8wC0XlZ.cjs +0 -2
  1645. package/dist/_shared/textarea-D8wC0XlZ.cjs.map +0 -1
  1646. package/dist/_shared/tooltip-Cws4BiPT.js +0 -49
  1647. package/dist/_shared/tooltip-Cws4BiPT.js.map +0 -1
  1648. package/dist/_shared/tooltip-DyUi-Tac.cjs +0 -2
  1649. package/dist/_shared/tooltip-DyUi-Tac.cjs.map +0 -1
  1650. package/dist/_shared/typography-BW7iZBx7.cjs +0 -2
  1651. package/dist/_shared/typography-BW7iZBx7.cjs.map +0 -1
  1652. package/dist/_shared/typography-a3hydyvI.js +0 -102
  1653. package/dist/_shared/typography-a3hydyvI.js.map +0 -1
  1654. package/dist/_shared/ui-provider-4qKSKMPd.js +0 -85
  1655. package/dist/_shared/ui-provider-4qKSKMPd.js.map +0 -1
  1656. package/dist/_shared/ui-provider-uiQgATj1.cjs +0 -2
  1657. package/dist/_shared/ui-provider-uiQgATj1.cjs.map +0 -1
  1658. package/dist/showcase/assets/AreaChart-CJ57G5Ub.js +0 -6
  1659. package/dist/showcase/assets/CSPContext-BA7DfnCI.js +0 -1
  1660. package/dist/showcase/assets/CompositeItem-PwzgE4va.js +0 -1
  1661. package/dist/showcase/assets/CompositeRoot-Du4CMlK7.js +0 -1
  1662. package/dist/showcase/assets/Control.FullScreen-B9vseC57.js +0 -1
  1663. package/dist/showcase/assets/DialogTrigger-FkENgwo6.js +0 -1
  1664. package/dist/showcase/assets/FormContext-ChygLayp.js +0 -1
  1665. package/dist/showcase/assets/PreviewLayout-z6vpJJGt.js +0 -1
  1666. package/dist/showcase/assets/RadioGroup-CcDmbxOw.js +0 -1
  1667. package/dist/showcase/assets/Separator-Dk4eN76U.js +0 -1
  1668. package/dist/showcase/assets/ToolbarRootContext-D_KAA5hZ.js +0 -1
  1669. package/dist/showcase/assets/accordion-dQszzfmw.js +0 -172
  1670. package/dist/showcase/assets/accordion-variants-Dp4wxic-.js +0 -1
  1671. package/dist/showcase/assets/action-menu-CBi2Eiy0.js +0 -1
  1672. package/dist/showcase/assets/activities-DoXsgP4G.js +0 -501
  1673. package/dist/showcase/assets/activities-feed-card-xz5FtkOm.js +0 -1
  1674. package/dist/showcase/assets/admin-CxklUqAG.js +0 -80
  1675. package/dist/showcase/assets/ai-artifact-DkhUdEbM.js +0 -2
  1676. package/dist/showcase/assets/ai-chat-B6PuqkEu.js +0 -568
  1677. package/dist/showcase/assets/ai-elements-D_rpj_ds.js +0 -379
  1678. package/dist/showcase/assets/ai-new-CUPrAbOK.js +0 -167
  1679. package/dist/showcase/assets/ai-tool-call-CEr-dGVx.js +0 -1
  1680. package/dist/showcase/assets/ai-zxF_msJF.js +0 -41
  1681. package/dist/showcase/assets/alert-771BE3Ny.js +0 -59
  1682. package/dist/showcase/assets/alert-CG42DAlX.js +0 -1
  1683. package/dist/showcase/assets/api-key-list-D6jUN7Fq.js +0 -73
  1684. package/dist/showcase/assets/arrow-down-CUoXUyN1.js +0 -1
  1685. package/dist/showcase/assets/arrow-left-Cdq69X6h.js +0 -1
  1686. package/dist/showcase/assets/arrow-right-i25q9L2H.js +0 -1
  1687. package/dist/showcase/assets/arrow-up-pnezegnF.js +0 -1
  1688. package/dist/showcase/assets/arrow-up-right-CK3XnMah.js +0 -1
  1689. package/dist/showcase/assets/avatar-LPmQqZQv.js +0 -1
  1690. package/dist/showcase/assets/avatar-ZVFIQouy.js +0 -57
  1691. package/dist/showcase/assets/badge-DK4bsgZC.js +0 -28
  1692. package/dist/showcase/assets/badge-check-Cw5gkVcG.js +0 -1
  1693. package/dist/showcase/assets/bell-BvJELoaV.js +0 -1
  1694. package/dist/showcase/assets/bot-DRj6sdSR.js +0 -1
  1695. package/dist/showcase/assets/box-BNND3M2m.js +0 -1
  1696. package/dist/showcase/assets/brain-Cy3o-12l.js +0 -1
  1697. package/dist/showcase/assets/brand-DvipEpFn.js +0 -40
  1698. package/dist/showcase/assets/breadcrumb-B-LNuOyv.js +0 -1
  1699. package/dist/showcase/assets/breadcrumb-Lzpc0yo4.js +0 -52
  1700. package/dist/showcase/assets/breadcrumbs-DD6msKFZ.js +0 -1
  1701. package/dist/showcase/assets/briefcase-LcAwoEmu.js +0 -1
  1702. package/dist/showcase/assets/button-CuwcGzk1.js +0 -44
  1703. package/dist/showcase/assets/button-group-CAImjDrl.js +0 -1
  1704. package/dist/showcase/assets/buttons-DTjNHCMl.js +0 -259
  1705. package/dist/showcase/assets/calendar-B1zW0q6I.js +0 -1
  1706. package/dist/showcase/assets/calendar-Dlv72ytt.js +0 -1
  1707. package/dist/showcase/assets/calendar-ls2A08Pn.js +0 -16
  1708. package/dist/showcase/assets/card-BhtkM1BT.js +0 -1
  1709. package/dist/showcase/assets/cards-BRpRXzGk.js +0 -328
  1710. package/dist/showcase/assets/chart-column-BpQkEi1H.js +0 -1
  1711. package/dist/showcase/assets/chevron-down-DyObdfSb.js +0 -1
  1712. package/dist/showcase/assets/chevron-left-T7dHNxYM.js +0 -1
  1713. package/dist/showcase/assets/chevron-right-D_EcqHpT.js +0 -1
  1714. package/dist/showcase/assets/chevron-up-B38ivdGO.js +0 -1
  1715. package/dist/showcase/assets/chevrons-up-down-SdRARzoq.js +0 -1
  1716. package/dist/showcase/assets/circle-BrCPAmDA.js +0 -1
  1717. package/dist/showcase/assets/circle-alert-DdhzLPY_.js +0 -1
  1718. package/dist/showcase/assets/circle-check-DlA6zidQ.js +0 -1
  1719. package/dist/showcase/assets/circle-check-big-DFGJANQF.js +0 -1
  1720. package/dist/showcase/assets/circle-dot-BKmnVUqM.js +0 -1
  1721. package/dist/showcase/assets/circle-question-mark-BNREvgVC.js +0 -1
  1722. package/dist/showcase/assets/circle-x-C45QjHEs.js +0 -1
  1723. package/dist/showcase/assets/clock-D1nKQzQo.js +0 -1
  1724. package/dist/showcase/assets/code-xml-B8N3GRSu.js +0 -1
  1725. package/dist/showcase/assets/collapsible-4TfcWyNs.js +0 -1
  1726. package/dist/showcase/assets/collapsible-CKbZtvTj.js +0 -27
  1727. package/dist/showcase/assets/combobox-DTdGPaU0.js +0 -622
  1728. package/dist/showcase/assets/command-DymTXwL1.js +0 -1
  1729. package/dist/showcase/assets/command-ksVIHQKJ.js +0 -45
  1730. package/dist/showcase/assets/comment-composer-DC9oS1Yy.js +0 -1
  1731. package/dist/showcase/assets/comment-item-CAmKnJa7.js +0 -1
  1732. package/dist/showcase/assets/comments-Benk-2mV.js +0 -349
  1733. package/dist/showcase/assets/commerce-Qz-mq8mQ.js +0 -78
  1734. package/dist/showcase/assets/commerce-extras-CQRc3Bna.js +0 -179
  1735. package/dist/showcase/assets/composite-DBDXLPyz.js +0 -1
  1736. package/dist/showcase/assets/contact-card-DkL2nI3r.js +0 -65
  1737. package/dist/showcase/assets/content-container-mRm6oJEa.js +0 -1
  1738. package/dist/showcase/assets/copyable-DmLlmwzy.js +0 -96
  1739. package/dist/showcase/assets/course-card-CJJoeZj9.js +0 -113
  1740. package/dist/showcase/assets/cpu-BXJnF2Xy.js +0 -1
  1741. package/dist/showcase/assets/credit-card-BQK3KKb2.js +0 -1
  1742. package/dist/showcase/assets/currency-DBPUh8ee.js +0 -149
  1743. package/dist/showcase/assets/dark-surfaces-LpPuIeYy.js +0 -90
  1744. package/dist/showcase/assets/database-BZerpzGE.js +0 -1
  1745. package/dist/showcase/assets/date-block-iiHUpbNX.js +0 -1
  1746. package/dist/showcase/assets/date-picker-BQeBGL7T.js +0 -1
  1747. package/dist/showcase/assets/date-pickers-CKcUEMMF.js +0 -110
  1748. package/dist/showcase/assets/dense-info-DATmxRU8.js +0 -106
  1749. package/dist/showcase/assets/dialog-Bqu5KDYH.js +0 -1
  1750. package/dist/showcase/assets/display-Bj7uPXD4.js +0 -392
  1751. package/dist/showcase/assets/dist-QK7JxeYv.js +0 -1
  1752. package/dist/showcase/assets/dollar-sign-DFZs6vfz.js +0 -1
  1753. package/dist/showcase/assets/download-5oGw_WbW.js +0 -1
  1754. package/dist/showcase/assets/dropdown-menu-1CJgYn0S.js +0 -1
  1755. package/dist/showcase/assets/dropzone-Co1uhsDn.js +0 -1
  1756. package/dist/showcase/assets/ellipsis-cKRcvuyL.js +0 -1
  1757. package/dist/showcase/assets/ellipsis-vertical-B1RErEkj.js +0 -1
  1758. package/dist/showcase/assets/empty-Y2-4nCBr.js +0 -1
  1759. package/dist/showcase/assets/empty-item-USa6xcUv.js +0 -49
  1760. package/dist/showcase/assets/empty-state-DfhZ9AT5.js +0 -188
  1761. package/dist/showcase/assets/enhanced-activities-DmAPVUSu.js +0 -359
  1762. package/dist/showcase/assets/esm-BeGQ_ZTM.js +0 -2
  1763. package/dist/showcase/assets/event-calendar-D-jGrrZS.js +0 -138
  1764. package/dist/showcase/assets/event-log-tA_i4eR9.js +0 -326
  1765. package/dist/showcase/assets/example-6phCHGsN.js +0 -1
  1766. package/dist/showcase/assets/external-link-BuVHkCy0.js +0 -1
  1767. package/dist/showcase/assets/eye-DC5HfGm6.js +0 -1
  1768. package/dist/showcase/assets/feature-announcement-DwvxLytd.js +0 -34
  1769. package/dist/showcase/assets/fetchers-SLCIqgnM.js +0 -1
  1770. package/dist/showcase/assets/file-D-xM4vLy.js +0 -1
  1771. package/dist/showcase/assets/file-text-tmG5vNbr.js +0 -1
  1772. package/dist/showcase/assets/filters-CrGRXmq6.js +0 -78
  1773. package/dist/showcase/assets/flag-CWrEtkY5.js +0 -1
  1774. package/dist/showcase/assets/folder-open-Br-x1pjP.js +0 -1
  1775. package/dist/showcase/assets/form-sizing-Bb5hiM45.js +0 -1
  1776. package/dist/showcase/assets/format-D_ETCyg4.js +0 -1
  1777. package/dist/showcase/assets/format-metric-value-cyOYS377.js +0 -1
  1778. package/dist/showcase/assets/forms-B_MkQ3rm.js +0 -790
  1779. package/dist/showcase/assets/generic-CdmsyXV3.js +0 -1
  1780. package/dist/showcase/assets/getPseudoElementBounds-CZnCbCFP.js +0 -1
  1781. package/dist/showcase/assets/gift-NkuklfU2.js +0 -1
  1782. package/dist/showcase/assets/giftcard-cards-BAvevZ0i.js +0 -85
  1783. package/dist/showcase/assets/git-branch-B_CBqPeO.js +0 -1
  1784. package/dist/showcase/assets/global-search-D9teAbPe.js +0 -90
  1785. package/dist/showcase/assets/globe-gzw45GU2.js +0 -1
  1786. package/dist/showcase/assets/gradient-card-Xk2r7R5H.js +0 -58
  1787. package/dist/showcase/assets/header-notifications-_aZCpE5A.js +0 -1
  1788. package/dist/showcase/assets/heart-CEMKbRaZ.js +0 -1
  1789. package/dist/showcase/assets/house-BlGXAcMH.js +0 -1
  1790. package/dist/showcase/assets/icon-badge-z6N9reH_.js +0 -1
  1791. package/dist/showcase/assets/image-B8mzmVBr.js +0 -1
  1792. package/dist/showcase/assets/inbox-qdSnP4UV.js +0 -1
  1793. package/dist/showcase/assets/index-B4ubXfly.js +0 -10
  1794. package/dist/showcase/assets/index-Cu3Ssz5r.css +0 -2
  1795. package/dist/showcase/assets/inertValue-D5Q8cLku.js +0 -1
  1796. package/dist/showcase/assets/info-DBvvNjc_.js +0 -1
  1797. package/dist/showcase/assets/inline-stat-Bm1zVT8D.js +0 -1
  1798. package/dist/showcase/assets/input-CBQR0aeX.js +0 -1
  1799. package/dist/showcase/assets/input-OrUzpI55.js +0 -1
  1800. package/dist/showcase/assets/input-group-DhqOen2N.js +0 -47
  1801. package/dist/showcase/assets/input-group-l8xa5nUq.js +0 -1
  1802. package/dist/showcase/assets/inputs-DbiJ0qy2.js +0 -49
  1803. package/dist/showcase/assets/invoice-header-C6youIbL.js +0 -36
  1804. package/dist/showcase/assets/invoice-items-g6dgryF-.js +0 -36
  1805. package/dist/showcase/assets/invoice-mini-0iWhufpt.js +0 -14
  1806. package/dist/showcase/assets/invoice-table-Bvdh3rRq.js +0 -30
  1807. package/dist/showcase/assets/isSameDay-BpZEtJe8.js +0 -1
  1808. package/dist/showcase/assets/isToday-F0CS28oK.js +0 -1
  1809. package/dist/showcase/assets/italic-CJOEwjdc.js +0 -1
  1810. package/dist/showcase/assets/item-BiMm1PPB.js +0 -1
  1811. package/dist/showcase/assets/item-CN0cwdj_.js +0 -1
  1812. package/dist/showcase/assets/item-DNqEUYLT.js +0 -117
  1813. package/dist/showcase/assets/kanban-DxePEUiQ.js +0 -175
  1814. package/dist/showcase/assets/label-Dx4WO-fg.js +0 -1
  1815. package/dist/showcase/assets/layout-containers-DDl8rG8S.js +0 -96
  1816. package/dist/showcase/assets/layout-header-Bu6IcDWu.js +0 -170
  1817. package/dist/showcase/assets/layout-page-D-88Qnoy.js +0 -122
  1818. package/dist/showcase/assets/layout-sidebar-Ctft10pk.js +0 -224
  1819. package/dist/showcase/assets/layout-users-DtbZduBG.js +0 -104
  1820. package/dist/showcase/assets/leaflet-src-9EZQ14iG.js +0 -1
  1821. package/dist/showcase/assets/lib-D9BoOYUd.js +0 -1
  1822. package/dist/showcase/assets/lock-CHurDI0n.js +0 -1
  1823. package/dist/showcase/assets/mail-DZ1o1RLW.js +0 -1
  1824. package/dist/showcase/assets/map-C8xiyT9X.js +0 -124
  1825. package/dist/showcase/assets/map-pin-CAKaoYod.js +0 -1
  1826. package/dist/showcase/assets/menus-C6mnp636.js +0 -89
  1827. package/dist/showcase/assets/message-square-Zo5J_zU1.js +0 -1
  1828. package/dist/showcase/assets/metadata-list-W83-UMhc.js +0 -278
  1829. package/dist/showcase/assets/metric-BSvxidIX.js +0 -1
  1830. package/dist/showcase/assets/metric-grid-Dtqx_3Lg.js +0 -1
  1831. package/dist/showcase/assets/metric-trend-chip-mtvcJ_M9.js +0 -1
  1832. package/dist/showcase/assets/metrics-analytics-bar-DQbyss7i.js +0 -44
  1833. package/dist/showcase/assets/metrics-analytics-cards-CEBu5Uw0.js +0 -77
  1834. package/dist/showcase/assets/metrics-comparison-Bs-R6v4y.js +0 -76
  1835. package/dist/showcase/assets/metrics-heatmap-BKHWH8sM.js +0 -27
  1836. package/dist/showcase/assets/metrics-inline-badge-BxVn0Y2p.js +0 -17
  1837. package/dist/showcase/assets/metrics-kpi-row-DtACYEds.js +0 -31
  1838. package/dist/showcase/assets/metrics-micro-grid-BkwUGOUR.js +0 -42
  1839. package/dist/showcase/assets/metrics-overview-BAtrlzsI.js +0 -192
  1840. package/dist/showcase/assets/metrics-stat-cards-iCRCNyHY.js +0 -54
  1841. package/dist/showcase/assets/minus-C6eBW-2t.js +0 -1
  1842. package/dist/showcase/assets/money-display-DjGRJ16l.js +0 -1
  1843. package/dist/showcase/assets/month-year-picker-DTDebPqf.js +0 -1
  1844. package/dist/showcase/assets/navigation-BrG8Chig.js +0 -86
  1845. package/dist/showcase/assets/navigation-CfXQJbyM.js +0 -230
  1846. package/dist/showcase/assets/navigation-extras-D_gzLlZ5.js +0 -43
  1847. package/dist/showcase/assets/onboarding-checklist-1EerUwAo.js +0 -119
  1848. package/dist/showcase/assets/overlays-2AB9-S1Z.js +0 -88
  1849. package/dist/showcase/assets/overlays-CYt9o3Xq.js +0 -393
  1850. package/dist/showcase/assets/package-BJMP-Fcr.js +0 -1
  1851. package/dist/showcase/assets/page-action-button-BZxJ0X1j.js +0 -1
  1852. package/dist/showcase/assets/page-header-B_rqHJhe.js +0 -1
  1853. package/dist/showcase/assets/pagination-BHiQvvka.js +0 -1
  1854. package/dist/showcase/assets/pagination-Dq0GruQd.js +0 -42
  1855. package/dist/showcase/assets/paperclip-BMYKrUQo.js +0 -1
  1856. package/dist/showcase/assets/pencil-BJ3VS_FO.js +0 -1
  1857. package/dist/showcase/assets/phone-CsRIyvep.js +0 -1
  1858. package/dist/showcase/assets/plus-D2JuXYLg.js +0 -1
  1859. package/dist/showcase/assets/popover-DNT9755r.js +0 -1
  1860. package/dist/showcase/assets/popover-KvGgcPNg.js +0 -1
  1861. package/dist/showcase/assets/popover-menu-CJx30R65.js +0 -1
  1862. package/dist/showcase/assets/progress-B7WuXcJR.js +0 -1
  1863. package/dist/showcase/assets/progress-CweCSAUv.js +0 -18
  1864. package/dist/showcase/assets/props-table-uDY4eIzt.js +0 -1
  1865. package/dist/showcase/assets/props.generated-BqPfiNI-.json +0 -32423
  1866. package/dist/showcase/assets/quote-DAyyfzQd.js +0 -1
  1867. package/dist/showcase/assets/receipt-C0mMZGbF.js +0 -1
  1868. package/dist/showcase/assets/refresh-cw-X06JbXb-.js +0 -1
  1869. package/dist/showcase/assets/resolveValueLabel-Bks7UDko.js +0 -1
  1870. package/dist/showcase/assets/rich-text-editor-QJsb-qIe.js +0 -124
  1871. package/dist/showcase/assets/rich-text-editor-h07VBNI9.js +0 -141
  1872. package/dist/showcase/assets/rotate-ccw-D84bdX_x.js +0 -1
  1873. package/dist/showcase/assets/scroll-area-0rT06pXZ.js +0 -1
  1874. package/dist/showcase/assets/scroll-area-YXwdzGpN.js +0 -32
  1875. package/dist/showcase/assets/select-BoWQDtUf.js +0 -1
  1876. package/dist/showcase/assets/send-DJsk3cr1.js +0 -1
  1877. package/dist/showcase/assets/separator-CLSnRcJa.js +0 -28
  1878. package/dist/showcase/assets/separator-DWv-twD-.js +0 -1
  1879. package/dist/showcase/assets/settings-Cb2MsAmN.js +0 -1
  1880. package/dist/showcase/assets/sheet-Dn1-MYus.js +0 -1
  1881. package/dist/showcase/assets/shield-DwLjF5ch.js +0 -1
  1882. package/dist/showcase/assets/shield-alert-D8i6gzMK.js +0 -1
  1883. package/dist/showcase/assets/shield-check-D5YRSBIz.js +0 -1
  1884. package/dist/showcase/assets/shopping-bag-BqlAP4vn.js +0 -1
  1885. package/dist/showcase/assets/sidebar.context-BAp_pBEB.js +0 -1
  1886. package/dist/showcase/assets/skeleton-CeNPp4hr.js +0 -1
  1887. package/dist/showcase/assets/skeleton-QPsnM_NR.js +0 -29
  1888. package/dist/showcase/assets/smart-card-BisUbLPt.js +0 -1
  1889. package/dist/showcase/assets/sonner-B7GzbBK2.js +0 -22
  1890. package/dist/showcase/assets/sortable.esm-BDcEOHT7.js +0 -5
  1891. package/dist/showcase/assets/sparkles-CF9P5Tqh.js +0 -1
  1892. package/dist/showcase/assets/spinner-BeamEyJd.js +0 -49
  1893. package/dist/showcase/assets/spinner-DoYBfalR.js +0 -1
  1894. package/dist/showcase/assets/spinner-UsLsOYzn.js +0 -30
  1895. package/dist/showcase/assets/square-pen-BGTVdnt1.js +0 -1
  1896. package/dist/showcase/assets/stacked-avatars-BWfVX1Ov.js +0 -1
  1897. package/dist/showcase/assets/star-NsPNO9gR.js +0 -1
  1898. package/dist/showcase/assets/startOfDay-zJBpxLuW.js +0 -1
  1899. package/dist/showcase/assets/styles-DA7a7hVy.js +0 -1
  1900. package/dist/showcase/assets/switch-C62S4U2o.js +0 -1
  1901. package/dist/showcase/assets/switch-CYQcinJZ.js +0 -1
  1902. package/dist/showcase/assets/table-w4IABkpa.js +0 -1
  1903. package/dist/showcase/assets/table-xgB63UrY.js +0 -390
  1904. package/dist/showcase/assets/tabs-BFTEaTXj.js +0 -19
  1905. package/dist/showcase/assets/tabs-oMJn9Ujq.js +0 -1
  1906. package/dist/showcase/assets/text-button-BgcutPuu.js +0 -1
  1907. package/dist/showcase/assets/text-link-CS9thOWL.js +0 -1
  1908. package/dist/showcase/assets/textarea-BOBx4EM6.js +0 -1
  1909. package/dist/showcase/assets/textarea-CTzYZZqa.js +0 -1
  1910. package/dist/showcase/assets/timelines-CK07mEBK.js +0 -186
  1911. package/dist/showcase/assets/toggle-group-CSPdPT6G.js +0 -1
  1912. package/dist/showcase/assets/toggles-DDSdl-gA.js +0 -71
  1913. package/dist/showcase/assets/toggles-group-Y2BdKEFB.js +0 -32
  1914. package/dist/showcase/assets/trash-2-C-FAptQP.js +0 -1
  1915. package/dist/showcase/assets/trending-up-BmLhdF_w.js +0 -1
  1916. package/dist/showcase/assets/truck-pZdUS_as.js +0 -1
  1917. package/dist/showcase/assets/typography-CnBH2z7f.js +0 -214
  1918. package/dist/showcase/assets/ui-badge-Cl6INRO5.js +0 -28
  1919. package/dist/showcase/assets/ui-card-B5P-thNu.js +0 -30
  1920. package/dist/showcase/assets/ui-table-B32RILKk.js +0 -42
  1921. package/dist/showcase/assets/upload-tray-mu6bR2ZE.js +0 -138
  1922. package/dist/showcase/assets/useAnchoredPopupScrollLock-CzDaXxmM.js +0 -1
  1923. package/dist/showcase/assets/useCollapsiblePanel-B0DZvDFu.js +0 -1
  1924. package/dist/showcase/assets/useCompositeItem-BVIVLT9X.js +0 -1
  1925. package/dist/showcase/assets/useCompositeListItem-JEMeTFPx.js +0 -1
  1926. package/dist/showcase/assets/useControlled-ZjqBfPCn.js +0 -1
  1927. package/dist/showcase/assets/useLabelableId-D8CZq8Bm.js +0 -1
  1928. package/dist/showcase/assets/useOpenInteractionType-CopGCf3q.js +0 -1
  1929. package/dist/showcase/assets/useRender-zuKv6JQF.js +0 -1
  1930. package/dist/showcase/assets/useRole-08KeyiD3.js +0 -1
  1931. package/dist/showcase/assets/useTriggerFocusGuards-DEuz5CGe.js +0 -1
  1932. package/dist/showcase/assets/useValueChanged-BxFi_qyj.js +0 -1
  1933. package/dist/showcase/assets/user-Bgc2t2_e.js +0 -1
  1934. package/dist/showcase/assets/user-plus-F_TfagnP.js +0 -1
  1935. package/dist/showcase/assets/users-B7G4yTCR.js +0 -1
  1936. package/dist/showcase/assets/vendor-profile-BTQmsKM6.js +0 -37
  1937. package/dist/showcase/assets/wrench-BdzICmjR.js +0 -1
  1938. package/dist/showcase/assets/x-B156Wr-5.js +0 -1
  1939. package/dist/showcase/assets/zap-B3iByjNV.js +0 -1
  1940. /package/dist/showcase/assets/{analytics.strings-BcotPUad.js → analytics.strings-B9262Jmq.js} +0 -0
  1941. /package/dist/showcase/assets/{chunk-CilyBKbf.js → chunk-QTnfLwEv.js} +0 -0
  1942. /package/dist/showcase/assets/{customers-BETQwFRp.js → customers-DvBxRjHv.js} +0 -0
  1943. /package/dist/showcase/assets/{format-DoQ4Wqkq.js → format-C_LjuBUs.js} +0 -0
  1944. /package/dist/showcase/assets/{isElementDisabled-BLmk_uhf.js → isElementDisabled-KSuuBj8D.js} +0 -0
  1945. /package/dist/showcase/assets/{leaflet.draw-CwFqqsDc.js → leaflet.draw-lpeKTWFs.js} +0 -0
  1946. /package/dist/showcase/assets/{orders-DNn7r9k_.js → orders-BFwWtubb.js} +0 -0
  1947. /package/dist/showcase/assets/{resolveAriaLabelledBy-DmY5COAB.js → resolveAriaLabelledBy-B6CR9UP2.js} +0 -0
  1948. /package/dist/showcase/assets/{valueToPercent-CDF3aNnc.js → valueToPercent-B5BHWU68.js} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"combobox-BgXAxjU2.js","names":[],"sources":["../../src/components/ui/combobox.tsx","../../src/components/base/combobox/combobox.strings.ts","../../src/components/base/combobox/constants.ts","../../src/components/base/combobox/components/loading-more.tsx","../../src/components/base/combobox/components/status-content.tsx","../../src/components/base/combobox/components/combobox-dropdown.tsx","../../src/components/base/combobox/components/error-message.tsx","../../src/components/base/combobox/components/highlighted-text.tsx","../../src/components/base/combobox/hooks/use-debounced-search.ts","../../src/components/base/combobox/hooks/use-grouped-items.ts","../../src/components/base/combobox/hooks/use-load-more.ts","../../src/components/base/combobox/hooks/use-enhanced-combobox-core.tsx","../../src/components/base/combobox/enhanced-combobox.tsx"],"sourcesContent":["import { Combobox as ComboboxPrimitive } from '@base-ui/react/combobox';\nimport { CheckIcon, ChevronDownIcon, XIcon } from 'lucide-react';\nimport * as React from 'react';\nimport { cn } from '@/lib/utils';\n\nconst Combobox = ComboboxPrimitive.Root;\n\nfunction ComboboxInput({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Input.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Input\n\t\t\tdata-slot=\"combobox-input\"\n\t\t\tclassName={cn(\n\t\t\t\t'border-input file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground flex h-10 w-full min-w-0 rounded-md border bg-background px-3 py-2 text-sm shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50',\n\t\t\t\t'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]',\n\t\t\t\t'aria-invalid:ring-destructive/20 aria-invalid:border-destructive aria-invalid:bg-destructive/15 aria-invalid:placeholder:text-destructive',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction ComboboxTrigger({\n\tclassName,\n\tchildren,\n\t...props\n}: ComboboxPrimitive.Trigger.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Trigger\n\t\t\tdata-slot=\"combobox-trigger\"\n\t\t\tclassName={cn(\n\t\t\t\t'border-input file:text-foreground placeholder:text-muted-foreground flex h-10 w-full items-center justify-between rounded-md border bg-background px-3 py-2 text-sm shadow-xs transition-[color,box-shadow] outline-none disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50',\n\t\t\t\t'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]',\n\t\t\t\t'aria-invalid:ring-destructive/20 aria-invalid:border-destructive aria-invalid:bg-destructive/15 aria-invalid:placeholder:text-destructive',\n\t\t\t\t'[&>span]:line-clamp-1',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t\t<ComboboxPrimitive.Icon className=\"flex\">\n\t\t\t\t<ChevronDownIcon className=\"size-4 opacity-50\" />\n\t\t\t</ComboboxPrimitive.Icon>\n\t\t</ComboboxPrimitive.Trigger>\n\t);\n}\n\nfunction ComboboxValue({\n\tplaceholder,\n\t...props\n}: ComboboxPrimitive.Value.Props & { placeholder?: React.ReactNode }) {\n\treturn (\n\t\t<ComboboxPrimitive.Value\n\t\t\tdata-slot=\"combobox-value\"\n\t\t\tplaceholder={\n\t\t\t\t!!placeholder && <span className=\"text-muted-foreground\">{placeholder}</span>\n\t\t\t}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction ComboboxClear({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Clear.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Clear\n\t\t\tdata-slot=\"combobox-clear\"\n\t\t\tclassName={cn(\n\t\t\t\t'absolute right-8 top-1/2 -translate-y-1/2 rounded-sm opacity-50 ring-offset-background transition-opacity',\n\t\t\t\t'hover:opacity-100 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]',\n\t\t\t\t'disabled:pointer-events-none',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<XIcon className=\"size-4\" />\n\t\t</ComboboxPrimitive.Clear>\n\t);\n}\n\nexport type ComboboxSize = 'sm' | 'md' | 'lg';\n\nconst inputSizeClasses: Record<ComboboxSize, string> = {\n\tsm: 'h-8 text-xs pl-2 pr-8',\n\tmd: 'h-10 text-sm pl-3 pr-10',\n\tlg: 'h-12 text-base pl-4 pr-12',\n};\n\nconst inputSizeWithClearClasses: Record<ComboboxSize, string> = {\n\tsm: 'pr-14',\n\tmd: 'pr-16',\n\tlg: 'pr-20',\n};\n\nconst iconContainerSizeClasses: Record<ComboboxSize, string> = {\n\tsm: 'right-1',\n\tmd: 'right-2',\n\tlg: 'right-3',\n};\n\nconst iconSizeClasses: Record<ComboboxSize, string> = {\n\tsm: 'size-3',\n\tmd: 'size-4',\n\tlg: 'size-5',\n};\n\ntype ComboboxInputTriggerProps = Omit<ComboboxPrimitive.Input.Props, 'size'> & {\n\tshowClear?: boolean;\n\tsize?: ComboboxSize;\n\terror?: boolean;\n};\n\nfunction ComboboxInputTrigger({\n\tclassName,\n\tshowClear = false,\n\tsize = 'md',\n\terror,\n\t...props\n}: ComboboxInputTriggerProps) {\n\treturn (\n\t\t<div className=\"relative\">\n\t\t\t<ComboboxPrimitive.Input\n\t\t\t\tdata-slot=\"combobox-input\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'border-input file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground w-full min-w-0 rounded-md border bg-background shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50',\n\t\t\t\t\t'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]',\n\t\t\t\t\t'aria-invalid:ring-destructive/20 aria-invalid:border-destructive aria-invalid:bg-destructive/15 aria-invalid:placeholder:text-destructive',\n\t\t\t\t\tinputSizeClasses[size],\n\t\t\t\t\tshowClear && inputSizeWithClearClasses[size],\n\t\t\t\t\tclassName\n\t\t\t\t)}\n\t\t\t\taria-invalid={error || undefined}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t\t<div\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'absolute top-1/2 -translate-y-1/2 flex items-center gap-1 text-muted-foreground',\n\t\t\t\t\ticonContainerSizeClasses[size]\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t{!!showClear && (\n <ComboboxPrimitive.Clear\n\t\t\t\t\t\tdata-slot=\"combobox-clear\"\n\t\t\t\t\t\tclassName=\"rounded-sm p-1 opacity-50 hover:opacity-100 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<XIcon className={iconSizeClasses[size]} />\n\t\t\t\t\t</ComboboxPrimitive.Clear>\n )}\n\t\t\t\t<ComboboxPrimitive.Trigger className=\"rounded-sm p-1 hover:bg-accent focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]\">\n\t\t\t\t\t<ChevronDownIcon className={iconSizeClasses[size]} />\n\t\t\t\t</ComboboxPrimitive.Trigger>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\n// Portal\nconst ComboboxPortal = ComboboxPrimitive.Portal;\n\n// Positioner\nfunction ComboboxPositioner({\n\tclassName,\n\tsideOffset = 4,\n\t...props\n}: ComboboxPrimitive.Positioner.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Positioner\n\t\t\tdata-slot=\"combobox-positioner\"\n\t\t\tsideOffset={sideOffset}\n\t\t\tclassName={cn('z-50 outline-none', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Popup (content)\nfunction ComboboxPopup({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Popup.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Popup\n\t\t\tdata-slot=\"combobox-popup\"\n\t\t\tclassName={cn(\n\t\t\t\t'w-[var(--anchor-width)] min-w-[8rem] max-w-[var(--available-width)] max-h-[min(var(--available-height),24rem)]',\n\t\t\t\t'overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md',\n\t\t\t\t'origin-[var(--transform-origin)]',\n\t\t\t\t'data-[starting-style]:opacity-0 data-[starting-style]:scale-95',\n\t\t\t\t'data-[ending-style]:opacity-0 data-[ending-style]:scale-95',\n\t\t\t\t'transition-[opacity,transform] duration-150',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// List\nfunction ComboboxList({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.List.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.List\n\t\t\tdata-slot=\"combobox-list\"\n\t\t\tclassName={cn(\n\t\t\t\t'max-h-[min(24rem,var(--available-height))] overflow-y-auto overscroll-contain p-1',\n\t\t\t\t'outline-none empty:hidden',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Item\n//\n// Layout: `[content][indicator]` with the selection check pinned to the\n// right (`justify-between`). Consumers render leading icons naturally inside\n// `renderItem` — the `gap` between icon and label is set by the consumer.\nconst itemSizeClasses: Record<ComboboxSize, string> = {\n\tsm: 'py-1 px-2 text-xs gap-2',\n\tmd: 'py-1.5 px-2.5 text-sm gap-2',\n\tlg: 'py-2 px-3 text-base gap-2.5',\n};\n\nconst itemIndicatorSizeClasses: Record<ComboboxSize, string> = {\n\tsm: 'size-3',\n\tmd: 'size-4',\n\tlg: 'size-5',\n};\n\nfunction ComboboxItem({\n\tclassName,\n\tchildren,\n\tsize = 'md',\n\t...props\n}: ComboboxPrimitive.Item.Props & { size?: ComboboxSize }) {\n\treturn (\n\t\t<ComboboxPrimitive.Item\n\t\t\tdata-slot=\"combobox-item\"\n\t\t\tclassName={cn(\n\t\t\t\t'flex w-full cursor-default select-none items-center justify-between rounded-sm outline-none',\n\t\t\t\t'data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n\t\t\t\t'data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground',\n\t\t\t\titemSizeClasses[size],\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<span className=\"flex min-w-0 flex-1 items-center gap-2 truncate\">\n\t\t\t\t{children}\n\t\t\t</span>\n\t\t\t<ComboboxPrimitive.ItemIndicator\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'flex shrink-0 items-center justify-center text-muted-foreground',\n\t\t\t\t\titemIndicatorSizeClasses[size]\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<CheckIcon className={itemIndicatorSizeClasses[size]} />\n\t\t\t</ComboboxPrimitive.ItemIndicator>\n\t\t</ComboboxPrimitive.Item>\n\t);\n}\n\n// Item Indicator (standalone)\nfunction ComboboxItemIndicator({\n\tclassName,\n\tchildren,\n\t...props\n}: ComboboxPrimitive.ItemIndicator.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.ItemIndicator\n\t\t\tdata-slot=\"combobox-item-indicator\"\n\t\t\tclassName={cn(className)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children ?? <CheckIcon className=\"size-4\" />}\n\t\t</ComboboxPrimitive.ItemIndicator>\n\t);\n}\n\n// Empty\nfunction ComboboxEmpty({\n\tclassName,\n\tchildren,\n\t...props\n}: ComboboxPrimitive.Empty.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Empty\n\t\t\tdata-slot=\"combobox-empty\"\n\t\t\tclassName={cn(\n\t\t\t\t'py-6 text-center text-sm text-muted-foreground empty:hidden',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t</ComboboxPrimitive.Empty>\n\t);\n}\n\n// Status (for async loading states)\nfunction ComboboxStatus({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Status.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Status\n\t\t\tdata-slot=\"combobox-status\"\n\t\t\tclassName={cn(\n\t\t\t\t'flex items-center gap-2 px-3 py-2 text-sm text-muted-foreground empty:hidden',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Group\nfunction ComboboxGroup({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Group.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Group\n\t\t\tdata-slot=\"combobox-group\"\n\t\t\tclassName={cn('overflow-hidden p-1', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Group Label\nfunction ComboboxGroupLabel({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.GroupLabel.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.GroupLabel\n\t\t\tdata-slot=\"combobox-group-label\"\n\t\t\tclassName={cn('px-2 py-1.5 text-xs font-medium text-muted-foreground', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Collection (for rendering items)\nconst ComboboxCollection = ComboboxPrimitive.Collection;\n\n// Separator\nfunction ComboboxSeparator({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Separator.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Separator\n\t\t\tdata-slot=\"combobox-separator\"\n\t\t\tclassName={cn('-mx-1 my-1 h-px bg-muted', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Chips container (for multiple selection)\nconst chipsSizeClasses: Record<ComboboxSize, string> = {\n\tsm: 'min-h-8 gap-1 px-2 py-1 text-xs',\n\tmd: 'min-h-10 gap-1.5 px-3 py-2 text-sm',\n\tlg: 'min-h-12 gap-2 px-4 py-2.5 text-base',\n};\n\nfunction ComboboxChips({\n\tclassName,\n\tsize = 'md',\n\terror,\n\t...props\n}: React.ComponentPropsWithRef<typeof ComboboxPrimitive.Chips> & {\n\tsize?: ComboboxSize;\n\terror?: boolean;\n}) {\n\treturn (\n\t\t<ComboboxPrimitive.Chips\n\t\t\tdata-slot=\"combobox-chips\"\n\t\t\tclassName={cn(\n\t\t\t\t'flex flex-wrap items-center rounded-md border border-input bg-background ring-offset-background shadow-xs transition-[color,box-shadow] outline-none',\n\t\t\t\t'focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]',\n\t\t\t\t'aria-invalid:ring-destructive/20 aria-invalid:border-destructive aria-invalid:bg-destructive/15',\n\t\t\t\tchipsSizeClasses[size],\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\taria-invalid={error || undefined}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Chip\nfunction ComboboxChip({\n\tclassName,\n\tchildren,\n\t...props\n}: ComboboxPrimitive.Chip.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Chip\n\t\t\tdata-slot=\"combobox-chip\"\n\t\t\tclassName={cn(\n\t\t\t\t'inline-flex items-center gap-1 rounded-md bg-secondary px-2 py-1 text-xs font-medium text-secondary-foreground',\n\t\t\t\t'data-[highlighted]:bg-primary data-[highlighted]:text-primary-foreground',\n\t\t\t\t'focus-within:bg-primary focus-within:text-primary-foreground',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t\t<ComboboxPrimitive.ChipRemove className=\"rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]\">\n\t\t\t\t<XIcon className=\"size-3\" />\n\t\t\t</ComboboxPrimitive.ChipRemove>\n\t\t</ComboboxPrimitive.Chip>\n\t);\n}\n\n// Chips Input\nfunction ComboboxChipsInput({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Input.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Input\n\t\t\tdata-slot=\"combobox-chips-input\"\n\t\t\tclassName={cn(\n\t\t\t\t'min-w-[80px] flex-1 bg-transparent outline-none placeholder:text-muted-foreground',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Backdrop (for modal)\nfunction ComboboxBackdrop({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Backdrop.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Backdrop\n\t\t\tdata-slot=\"combobox-backdrop\"\n\t\t\tclassName={cn(\n\t\t\t\t'fixed inset-0 z-50 bg-black/80',\n\t\t\t\t'data-[starting-style]:opacity-0 data-[ending-style]:opacity-0',\n\t\t\t\t'transition-opacity duration-150',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Arrow\nfunction ComboboxArrow({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Arrow.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Arrow\n\t\t\tdata-slot=\"combobox-arrow\"\n\t\t\tclassName={cn('fill-popover', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// useFilter hook re-export\nconst useComboboxFilter = ComboboxPrimitive.useFilter;\n\nexport {\n\tCombobox,\n\tComboboxInput,\n\tComboboxInputTrigger,\n\tComboboxTrigger,\n\tComboboxValue,\n\tComboboxClear,\n\tComboboxPortal,\n\tComboboxPositioner,\n\tComboboxPopup,\n\tComboboxList,\n\tComboboxItem,\n\tComboboxItemIndicator,\n\tComboboxEmpty,\n\tComboboxStatus,\n\tComboboxGroup,\n\tComboboxGroupLabel,\n\tComboboxCollection,\n\tComboboxSeparator,\n\tComboboxChips,\n\tComboboxChip,\n\tComboboxChipsInput,\n\tComboboxBackdrop,\n\tComboboxArrow,\n\tuseComboboxFilter,\n};\n","/**\n * Default user-facing strings for `<EnhancedCombobox>`.\n *\n * Consumers wire backend i18n at the call site:\n *\n * <EnhancedCombobox strings={{ noResults: t('search.empty') }} … />\n *\n * Templates use `{placeholder}` tokens — the component substitutes them at\n * render time. Function-valued strings would also work; we keep templates\n * here for the constants file.\n */\nimport type { ComboboxStrings } from './types';\n\nexport const defaultComboboxStrings: ComboboxStrings = {\n\tplaceholder: 'Search...',\n\tsearching: 'Loading...',\n\tnoResults: 'No results found.',\n\ttypeToSearch: 'Type at least {min} characters to search...',\n\ttypeMore: 'Type {remaining} more character{s} to search...',\n\tcreateNew: 'Create {value}',\n\tloadingMore: 'Loading...',\n\tapply: 'Apply',\n\tcancel: 'Cancel',\n};\n\nexport type { ComboboxStrings };\n","/**\n * Constants and default values for the Enhanced Combobox component.\n *\n * Default strings live in `./combobox.strings.ts` per rule 19. The legacy\n * `DEFAULT_STRINGS` alias is re-exported below for any external consumer\n * still using the old name; new code should import `defaultComboboxStrings`\n * from `./combobox.strings`.\n */\n\nexport { defaultComboboxStrings, defaultComboboxStrings as DEFAULT_STRINGS } from './combobox.strings';\n\n// ============================================================================\n// Default Values\n// ============================================================================\n\nexport const DEFAULT_MIN_SEARCH_LENGTH = 3;\nexport const DEFAULT_DEBOUNCE_MS = 300;\nexport const DEFAULT_SIZE = 'sm';\nexport const LOAD_MORE_THRESHOLD = 0.8;\nexport const LOAD_MORE_DEBOUNCE_MS = 100;\nexport const LOAD_MORE_COOLDOWN_MS = 500;\n\n// ============================================================================\n// Symbols\n// ============================================================================\n\nexport const CREATE_OPTION_SYMBOL = Symbol('enhanced-combobox-create-option');\n\n// ============================================================================\n// Type Guards\n// ============================================================================\n\nexport function isCreateOption<T>(item: T): item is T & { [CREATE_OPTION_SYMBOL]: string } {\n\treturn (\n\t\ttypeof item === 'object' &&\n\t\titem !== null &&\n\t\tCREATE_OPTION_SYMBOL in (item as object)\n\t);\n}\n\nexport function getCreateOptionValue<T>(item: T): string {\n\tif (!isCreateOption(item)) {\n\t\tthrow new Error('Item is not a create option');\n\t}\n\treturn (item as { [CREATE_OPTION_SYMBOL]: string })[CREATE_OPTION_SYMBOL];\n}\n\nexport function createCreateOption<T>(inputValue: string): T {\n\treturn { [CREATE_OPTION_SYMBOL]: inputValue } as unknown as T;\n}\n","/**\n * LoadingMore Component\n */\n\nimport { Loader2 } from 'lucide-react';\nimport * as React from 'react';\nimport { cn } from '@/lib/utils';\n\nexport interface LoadingMoreProps {\n\tisLoading: boolean;\n\ttext: string;\n\tclassName?: string;\n}\n\nexport function LoadingMore({\n\tisLoading,\n\ttext,\n\tclassName,\n}: LoadingMoreProps): React.ReactElement | null {\n\tif (!isLoading) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn('loading-more--component', \n\t\t\t\t'flex items-center justify-center gap-2 py-2 text-sm text-muted-foreground',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\trole=\"status\"\n\t\t\taria-live=\"polite\"\n\t\t>\n\t\t\t<Loader2 className=\"size-4 animate-spin\" aria-hidden=\"true\" />\n\t\t\t<span>{text}</span>\n\t\t</div>\n\t);\n}\n\nLoadingMore.displayName = 'LoadingMore';\n","/**\n * StatusContent Component\n */\n\nimport { Loader2 } from 'lucide-react';\nimport * as React from 'react';\nimport type { ComboboxStrings } from '../types';\n\nexport interface StatusContentProps {\n\tisLoading?: boolean;\n\tsearchValue: string;\n\tminSearchLength: number;\n\titemCount: number;\n\tstrings: ComboboxStrings;\n}\n\nexport function StatusContent({\n\tisLoading,\n\tsearchValue,\n\tminSearchLength,\n\titemCount,\n\tstrings,\n}: StatusContentProps): React.ReactNode {\n\tconst trimmed = searchValue.trim();\n\n\tif (isLoading) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<Loader2 className=\"size-4 animate-spin\" />\n\t\t\t\t{strings.searching}\n\t\t\t</>\n\t\t);\n\t}\n\n\tif (trimmed === '') {\n\t\tif (strings.typeToSearch.includes('{min}')) {\n\t\t\treturn strings.typeToSearch.replace('{min}', String(minSearchLength));\n\t\t}\n\t\treturn strings.typeToSearch;\n\t}\n\n\tif (trimmed.length < minSearchLength) {\n\t\tconst remaining = minSearchLength - trimmed.length;\n\t\tif (strings.typeMore.includes('{remaining}') || strings.typeMore.includes('{s}')) {\n\t\t\treturn strings.typeMore\n\t\t\t\t.replace('{remaining}', String(remaining))\n\t\t\t\t.replace('{s}', remaining !== 1 ? 's' : '');\n\t\t}\n\t\treturn strings.typeMore;\n\t}\n\n\tif (itemCount === 0) {\n\t\treturn null;\n\t}\n\n\treturn null;\n}\n\nStatusContent.displayName = 'StatusContent';\n","/**\n * Shared ComboboxDropdown Component\n *\n * Renders the dropdown content for both single and multiple selection variants.\n * Extracts shared rendering logic to reduce duplication.\n */\n\nimport * as React from 'react';\n\nimport {\n\tComboboxPortal,\n\tComboboxPositioner,\n\tComboboxPopup,\n\tComboboxEmpty,\n\tComboboxList,\n\tComboboxItem,\n\tComboboxStatus,\n\tComboboxGroup,\n\tComboboxGroupLabel,\n\tComboboxCollection,\n} from '@/components/ui/combobox';\nimport { Button } from '@/components/base/buttons';\n\nimport { DEFAULT_SIZE } from '../constants';\nimport type { ComboboxStrings, ComboboxSize } from '../types';\nimport { LoadingMore } from './loading-more';\nimport { StatusContent } from './status-content';\n\nexport interface ComboboxDropdownProps<T> {\n\t// Display state\n\tisLoading: boolean;\n\tshowStatus: boolean;\n\tshowEmpty: boolean;\n\n\t// Search\n\tsearchValue: string;\n\tminSearchLength: number;\n\n\t// Items\n\titems: T[];\n\tgroupedItems: Map<string, T[]> | null;\n\tcreateOptionItem: T | null;\n\n\t// Rendering\n\trenderItemContent: (item: T) => React.ReactNode;\n\tgetItemReactKey: (item: T) => string;\n\tgetItemDisabled?: (item: T) => boolean;\n\trenderGroupLabel?: (group: string) => React.ReactNode;\n\n\t// Load more\n\tisLoadingMore?: boolean;\n\n\t// Strings\n\tstrings: ComboboxStrings;\n\n\t// Size\n\tsize?: ComboboxSize;\n\n\t// Portal\n\tportalContainer?: React.RefObject<HTMLElement | null>;\n\n\t// Refs\n\tlistRef: React.RefObject<HTMLDivElement | null>;\n\n\t// Multiple selection anchor\n\tanchor?: React.RefObject<HTMLElement | null>;\n\n\t/** Optional apply / cancel footer for the apply-button workflow. */\n\tapplyFooter?: {\n\t\tapplyLabel: string;\n\t\tcancelLabel: string;\n\t\tonApply: () => void;\n\t\tonCancel: () => void;\n\t};\n}\n\nexport function ComboboxDropdown<T>({\n\tisLoading,\n\tshowStatus,\n\tshowEmpty,\n\tsearchValue,\n\tminSearchLength,\n\titems,\n\tgroupedItems,\n\tcreateOptionItem,\n\trenderItemContent,\n\tgetItemReactKey,\n\tgetItemDisabled,\n\trenderGroupLabel,\n\tisLoadingMore,\n\tstrings,\n\tsize = DEFAULT_SIZE,\n\tportalContainer,\n\tlistRef,\n\tanchor,\n\tapplyFooter,\n}: ComboboxDropdownProps<T>): React.ReactElement {\n\tconst positionerClassName = portalContainer != null ? 'z-[100]' : undefined;\n\n\tconst content = (\n\t\t<ComboboxPositioner\n\t\t\tanchor={anchor}\n\t\t\tclassName={positionerClassName}\n\t\t>\n\t\t\t<ComboboxPopup aria-busy={isLoading || undefined}>\n\t\t\t\t{/* Status message */}\n\t\t\t\t{!!showStatus && (\n\t\t\t\t\t<ComboboxStatus>\n\t\t\t\t\t\t<StatusContent\n\t\t\t\t\t\t\tisLoading={isLoading}\n\t\t\t\t\t\t\tsearchValue={searchValue}\n\t\t\t\t\t\t\tminSearchLength={minSearchLength}\n\t\t\t\t\t\t\titemCount={items.length}\n\t\t\t\t\t\t\tstrings={strings}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ComboboxStatus>\n\t\t\t\t)}\n\n\t\t\t\t{/* Empty state */}\n\t\t\t\t{!!showEmpty && <ComboboxEmpty>{strings.noResults}</ComboboxEmpty>}\n\n\t\t\t\t{/* Items list */}\n\t\t\t\t<ComboboxList ref={listRef}>\n\t\t\t\t\t{groupedItems ? (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{Array.from(groupedItems.entries()).map(([group, groupItems]) => {\n\t\t\t\t\t\t\t\tconst groupLabel =\n\t\t\t\t\t\t\t\t\ttypeof renderGroupLabel === 'function'\n\t\t\t\t\t\t\t\t\t\t? renderGroupLabel(group)\n\t\t\t\t\t\t\t\t\t\t: group;\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<ComboboxGroup className=\"combobox-dropdown--component\" key={group} items={groupItems}>\n\t\t\t\t\t\t\t\t\t\t<ComboboxGroupLabel>{groupLabel}</ComboboxGroupLabel>\n\t\t\t\t\t\t\t\t\t\t<ComboboxCollection>\n\t\t\t\t\t\t\t\t\t\t\t{(item: T) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<ComboboxItem\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={getItemReactKey(item)}\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={item}\n\t\t\t\t\t\t\t\t\t\t\t\t\tsize={size}\n\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={getItemDisabled?.(item)}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{renderItemContent(item)}\n\t\t\t\t\t\t\t\t\t\t\t\t</ComboboxItem>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</ComboboxCollection>\n\t\t\t\t\t\t\t\t\t</ComboboxGroup>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\n\t\t\t\t\t\t\t{createOptionItem != null && (\n\t\t\t\t\t\t\t\t<ComboboxItem\n\t\t\t\t\t\t\t\t\tkey={getItemReactKey(createOptionItem)}\n\t\t\t\t\t\t\t\t\tvalue={createOptionItem}\n\t\t\t\t\t\t\t\t\tsize={size}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{renderItemContent(createOptionItem)}\n\t\t\t\t\t\t\t\t</ComboboxItem>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<ComboboxCollection>\n\t\t\t\t\t\t\t{(item: T) => (\n\t\t\t\t\t\t\t\t<ComboboxItem\n\t\t\t\t\t\t\t\t\tkey={getItemReactKey(item)}\n\t\t\t\t\t\t\t\t\tvalue={item}\n\t\t\t\t\t\t\t\t\tsize={size}\n\t\t\t\t\t\t\t\t\tdisabled={getItemDisabled?.(item)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{renderItemContent(item)}\n\t\t\t\t\t\t\t\t</ComboboxItem>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</ComboboxCollection>\n\t\t\t\t\t)}\n\t\t\t\t</ComboboxList>\n\n\t\t\t\t{/* Loading more indicator */}\n\t\t\t\t<LoadingMore\n\t\t\t\t\tisLoading={!!isLoadingMore}\n\t\t\t\t\ttext={strings.loadingMore}\n\t\t\t\t/>\n\n\t\t\t\t{/* Apply / cancel footer (multi-select with applyButton). */}\n\t\t\t\t{!!applyFooter && (\n\t\t\t\t\t<div className=\"flex items-center justify-end gap-2 border-t border-border/60 px-2 py-1.5\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\tbuttonStyle=\"ghost\"\n\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\tapplyFooter.onCancel();\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{applyFooter.cancelLabel}\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\tapplyFooter.onApply();\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{applyFooter.applyLabel}\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</ComboboxPopup>\n\t\t</ComboboxPositioner>\n\t);\n\n\tif (portalContainer) {\n\t\treturn <ComboboxPortal container={portalContainer}>{content}</ComboboxPortal>;\n\t}\n\n\treturn <ComboboxPortal>{content}</ComboboxPortal>;\n}\n\nComboboxDropdown.displayName = 'ComboboxDropdown';\n","/**\n * ErrorMessage Component\n */\n\nimport * as React from 'react';\nimport { cn } from '@/lib/utils';\nimport type { ComboboxSize } from '../types';\n\nexport interface ErrorMessageProps {\n\terror?: string;\n\tsize: ComboboxSize;\n\tclassName?: string;\n}\n\nconst sizeClasses: Record<ComboboxSize, string> = {\n\tsm: 'text-xs mt-1',\n\tmd: 'text-sm mt-1.5',\n\tlg: 'text-base mt-2',\n};\n\nexport function ErrorMessage({\n\terror,\n\tsize,\n\tclassName,\n}: ErrorMessageProps): React.ReactElement | null {\n\tif (!error) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<p\n\t\t\tclassName={cn('error-message--component', 'text-destructive', sizeClasses[size], className)}\n\t\t\trole=\"alert\"\n\t\t\taria-live=\"polite\"\n\t\t>\n\t\t\t{error}\n\t\t</p>\n\t);\n}\n\nErrorMessage.displayName = 'ErrorMessage';\n","/**\n * HighlightedText Component\n */\n\nimport * as React from 'react';\n\nexport interface HighlightedTextProps {\n\ttext: string;\n\thighlight: string;\n\thighlightClassName?: string;\n}\n\nfunction escapeRegExp(str: string): string {\n\treturn str.replace(/[$()*+.?[\\\\\\]^{|}]/g, '\\\\$&');\n}\n\nexport function HighlightedText({\n\ttext,\n\thighlight,\n\thighlightClassName = 'bg-yellow-200 dark:bg-yellow-800 rounded-sm px-0.5',\n}: HighlightedTextProps): React.ReactNode {\n\tif (!highlight.trim()) {\n\t\treturn text;\n\t}\n\n\tconst regex = new RegExp(`(${escapeRegExp(highlight)})`, 'gi');\n\tconst parts = text.split(regex);\n\tlet cursor = 0;\n\n\treturn (\n\t\t<>\n\t\t\t{parts.map((part, index) => {\n\t\t\t\tconst isMatch = index % 2 === 1;\n\t\t\t\tconst key = String(cursor);\n\t\t\t\tcursor += part.length;\n\n\t\t\t\tif (isMatch) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<mark key={key} className={highlightClassName}>\n\t\t\t\t\t\t\t{part}\n\t\t\t\t\t\t</mark>\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\treturn <span key={key}>{part}</span>;\n\t\t\t})}\n\t\t</>\n\t);\n}\n\nHighlightedText.displayName = 'HighlightedText';\n","/**\n * Hook for debounced search functionality\n */\n\nimport { useEffect, useRef } from 'react';\nimport { DEFAULT_DEBOUNCE_MS, DEFAULT_MIN_SEARCH_LENGTH } from '../constants';\n\nexport interface UseDebouncedSearchOptions {\n\tsearchValue: string;\n\tonSearch: ((value: string) => void) | undefined;\n\tdebounceMs?: number;\n\tminSearchLength?: number;\n}\n\nexport function useDebouncedSearch({\n\tsearchValue,\n\tonSearch,\n\tdebounceMs = DEFAULT_DEBOUNCE_MS,\n\tminSearchLength = DEFAULT_MIN_SEARCH_LENGTH,\n}: UseDebouncedSearchOptions): void {\n\tconst timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n\tuseEffect(() => {\n\t\tif (!onSearch) return;\n\n\t\tif (timeoutRef.current) {\n\t\t\tclearTimeout(timeoutRef.current);\n\t\t}\n\n\t\tconst trimmed = searchValue.trim();\n\t\tif (trimmed.length >= minSearchLength) {\n\t\t\ttimeoutRef.current = setTimeout(() => {\n\t\t\t\tonSearch(trimmed);\n\t\t\t}, debounceMs);\n\t\t}\n\n\t\treturn () => {\n\t\t\tif (timeoutRef.current) {\n\t\t\t\tclearTimeout(timeoutRef.current);\n\t\t\t}\n\t\t};\n\t}, [searchValue, onSearch, debounceMs, minSearchLength]);\n}\n","/**\n * Hook for grouping items by category\n */\n\nimport { useMemo } from 'react';\n\nexport interface UseGroupedItemsOptions<T> {\n\titems: T[];\n\tgetItemGroup: ((item: T) => string) | undefined;\n}\n\nexport type GroupedItemsResult<T> = Map<string, T[]> | null;\n\nexport function useGroupedItems<T>({\n\titems,\n\tgetItemGroup,\n}: UseGroupedItemsOptions<T>): GroupedItemsResult<T> {\n\treturn useMemo(() => {\n\t\tif (!getItemGroup) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst groups = new Map<string, T[]>();\n\n\t\tfor (const item of items) {\n\t\t\tconst groupKey = getItemGroup(item);\n\t\t\tconst existing = groups.get(groupKey);\n\n\t\t\tif (existing) {\n\t\t\t\texisting.push(item);\n\t\t\t} else {\n\t\t\t\tgroups.set(groupKey, [item]);\n\t\t\t}\n\t\t}\n\n\t\treturn groups;\n\t}, [items, getItemGroup]);\n}\n","/**\n * Hook for infinite scroll / load more functionality\n */\n\nimport { useCallback, useEffect, useRef } from 'react';\nimport {\n\tLOAD_MORE_THRESHOLD,\n\tLOAD_MORE_DEBOUNCE_MS,\n\tLOAD_MORE_COOLDOWN_MS,\n} from '../constants';\n\nexport interface UseLoadMoreOptions {\n\thasMore: boolean | undefined;\n\tonLoadMore: (() => void) | undefined;\n\tisLoadingMore: boolean | undefined;\n}\n\nexport interface UseLoadMoreReturn {\n\thandleScroll: (event: Event) => void;\n}\n\nexport function useLoadMore({\n\thasMore,\n\tonLoadMore,\n\tisLoadingMore,\n}: UseLoadMoreOptions): UseLoadMoreReturn {\n\tconst isLoadingRef = useRef(false);\n\tconst debounceRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n\tconst handleScroll = useCallback(\n\t\t(event: Event) => {\n\t\t\tif (!hasMore || !onLoadMore || isLoadingMore || isLoadingRef.current) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst target = event.target as HTMLElement;\n\t\t\tconst { scrollHeight, scrollTop, clientHeight } = target;\n\t\t\tconst scrollPercentage = (scrollTop + clientHeight) / scrollHeight;\n\n\t\t\tif (scrollPercentage >= LOAD_MORE_THRESHOLD) {\n\t\t\t\tif (debounceRef.current) {\n\t\t\t\t\tclearTimeout(debounceRef.current);\n\t\t\t\t}\n\n\t\t\t\tdebounceRef.current = setTimeout(() => {\n\t\t\t\t\tisLoadingRef.current = true;\n\t\t\t\t\tonLoadMore();\n\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tisLoadingRef.current = false;\n\t\t\t\t\t}, LOAD_MORE_COOLDOWN_MS);\n\t\t\t\t}, LOAD_MORE_DEBOUNCE_MS);\n\t\t\t}\n\t\t},\n\t\t[hasMore, onLoadMore, isLoadingMore]\n\t);\n\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tif (debounceRef.current) {\n\t\t\t\tclearTimeout(debounceRef.current);\n\t\t\t}\n\t\t};\n\t}, []);\n\n\treturn { handleScroll };\n}\n","/**\n * Core hook for Enhanced Combobox components\n *\n * Extracts shared logic between single and multiple selection variants\n * to reduce duplication and ensure consistent behavior.\n */\n\nimport { PlusIcon } from 'lucide-react';\nimport * as React from 'react';\nimport { useRef, useMemo, useEffect, useCallback } from 'react';\nimport { Text } from '@/components/typography';\nimport { useStrings, type StringsProp } from '@/lib/strings';\n\nimport { HighlightedText } from '../components/highlighted-text';\nimport { defaultComboboxStrings } from '../combobox.strings';\nimport {\n\tDEFAULT_MIN_SEARCH_LENGTH,\n\tDEFAULT_DEBOUNCE_MS,\n\tisCreateOption,\n\tgetCreateOptionValue,\n\tcreateCreateOption,\n} from '../constants';\nimport type { ComboboxStrings, BaseComboboxProps } from '../types';\nimport { useDebouncedSearch } from './use-debounced-search';\nimport { useGroupedItems } from './use-grouped-items';\nimport { useLoadMore } from './use-load-more';\n\nimport { cn } from '@/lib/utils';\n// ============================================================================\n// Types\n// ============================================================================\n\nexport interface UseEnhancedComboboxCoreOptions<T> extends BaseComboboxProps<T> {\n\t/** Items that should always be included (selected items) */\n\tensuredItems?: T[];\n}\n\nexport interface UseEnhancedComboboxCoreReturn<T> {\n\t// Resolved values\n\tstrings: ComboboxStrings;\n\tgetKey: (item: T) => string;\n\ttrimmedSearch: string;\n\n\t// Refs\n\tlistRef: React.RefObject<HTMLDivElement | null>;\n\n\t// Items\n\tbaseItems: T[];\n\tallItems: T[];\n\tgroupedItems: Map<string, T[]> | null;\n\tcreateOptionItem: T | null;\n\n\t// Display state\n\tshowStatus: boolean;\n\tshowEmpty: boolean;\n\tshowCreateOption: boolean;\n\n\t// Handlers\n\trenderItemContent: (item: T) => React.ReactNode;\n\titemToStringLabel: (item: T) => string;\n\tgetItemReactKey: (item: T) => string;\n\n\t// Scroll handling\n\thandleScroll: (event: Event) => void;\n}\n\n// ============================================================================\n// Hook Implementation\n// ============================================================================\n\nfunction useComboboxStrings(custom?: StringsProp<ComboboxStrings>): ComboboxStrings {\n\treturn useStrings(defaultComboboxStrings, custom);\n}\n\nfunction hasExactMatch<T>(\n\titems: T[],\n\tsearchValue: string,\n\tgetItemLabel: (item: T) => string\n): boolean {\n\tconst normalizedSearch = searchValue.toLowerCase();\n\treturn items.some(\n\t\t(item) => getItemLabel(item).toLowerCase() === normalizedSearch\n\t);\n}\n\nexport function useEnhancedComboboxCore<T>({\n\t// Core props\n\titems,\n\tsearchValue,\n\tgetItemLabel,\n\tgetItemKey,\n\tisLoading = false,\n\tminSearchLength = DEFAULT_MIN_SEARCH_LENGTH,\n\tstrings: stringsProp,\n\trenderItem,\n\n\t// Debounced Search\n\tonSearch,\n\tdebounceMs = DEFAULT_DEBOUNCE_MS,\n\n\t// Creatable\n\tcreatable,\n\tonCreate,\n\n\t// Grouped Items\n\tgetItemGroup,\n\n\t// Load More\n\thasMore,\n\tonLoadMore,\n\tisLoadingMore,\n\n\t// Highlight Match\n\thighlightMatch,\n\n\t\t// Ensured items (selected items that should always be included)\n\tensuredItems = [],\n}: UseEnhancedComboboxCoreOptions<T>): UseEnhancedComboboxCoreReturn<T> {\n\t// -------------------------------------------------------------------------\n\t// Setup\n\t// -------------------------------------------------------------------------\n\n\tconst strings = useComboboxStrings(stringsProp);\n\tconst getKey = getItemKey ?? getItemLabel;\n\tconst listRef = useRef<HTMLDivElement | null>(null);\n\tconst trimmedSearch = searchValue.trim();\n\n\t// -------------------------------------------------------------------------\n\t// Hooks\n\t// -------------------------------------------------------------------------\n\n\tuseDebouncedSearch({\n\t\tsearchValue,\n\t\tonSearch,\n\t\tdebounceMs,\n\t\tminSearchLength,\n\t});\n\n\tconst { handleScroll } = useLoadMore({\n\t\thasMore,\n\t\tonLoadMore,\n\t\tisLoadingMore,\n\t});\n\n\t// Attach scroll listener\n\tuseEffect(() => {\n\t\tconst listEl = listRef.current;\n\t\tif (!listEl || !hasMore || !onLoadMore) return;\n\n\t\tlistEl.addEventListener('scroll', handleScroll);\n\t\treturn () => listEl.removeEventListener('scroll', handleScroll);\n\t}, [handleScroll, hasMore, onLoadMore]);\n\n\t// -------------------------------------------------------------------------\n\t// Computed Values\n\t// -------------------------------------------------------------------------\n\n\t// Merge ensured items with fetched items\n\tconst baseItems = useMemo(() => {\n\t\tif (ensuredItems.length === 0) return items;\n\n\t\tconst merged = [...ensuredItems];\n\t\titems.forEach((item) => {\n\t\t\tconst itemKey = getKey(item);\n\t\t\tif (!ensuredItems.some((ensured) => getKey(ensured) === itemKey)) {\n\t\t\t\tmerged.push(item);\n\t\t\t}\n\t\t});\n\t\treturn merged;\n\t}, [items, ensuredItems, getKey]);\n\n\t// Group items if grouping is enabled\n\tconst groupedItems = useGroupedItems({\n\t\titems: baseItems,\n\t\tgetItemGroup,\n\t});\n\n\t// Determine if create option should be shown\n\tconst showCreateOption = useMemo(() => {\n\t\tif (!creatable || !onCreate) return false;\n\t\tif (trimmedSearch.length < minSearchLength) return false;\n\t\treturn !hasExactMatch(baseItems, trimmedSearch, getItemLabel);\n\t}, [creatable, onCreate, trimmedSearch, minSearchLength, baseItems, getItemLabel]);\n\n\tconst createOptionItem = useMemo(() => {\n\t\tif (!showCreateOption) return null;\n\t\treturn createCreateOption<T>(trimmedSearch);\n\t}, [showCreateOption, trimmedSearch]);\n\n\t// Build final items array with create option\n\tconst allItems = useMemo(() => {\n\t\tif (createOptionItem) return [...baseItems, createOptionItem];\n\t\treturn baseItems;\n\t}, [baseItems, createOptionItem]);\n\n\t// Status display conditions\n\tconst showStatus = isLoading || trimmedSearch.length < minSearchLength;\n\tconst showEmpty =\n\t\t!isLoading &&\n\t\ttrimmedSearch.length >= minSearchLength &&\n\t\titems.length === 0 &&\n\t\t!showCreateOption;\n\n\t// -------------------------------------------------------------------------\n\t// Handlers\n\t// -------------------------------------------------------------------------\n\n\tconst renderItemContent = useCallback(\n\t\t(item: T): React.ReactNode => {\n\t\t\t// Handle create option\n\t\t\tif (isCreateOption(item)) {\n\t\t\t\tconst value = getCreateOptionValue(item);\n\t\t\t\treturn (\n\t\t\t\t\t<span className={cn('use-enhanced-combobox-core--component', 'flex items-center gap-2')}>\n\t\t\t\t\t\t<PlusIcon className=\"size-4\" />\n\t\t\t\t\t\t{strings.createNew.includes('{value}') ? (\n\t\t\t\t\t\t\tstrings.createNew.replace('{value}', value)\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span className=\"inline-flex items-center gap-1\">\n\t\t\t\t\t\t\t\t<span>{strings.createNew}</span>\n\t\t\t\t\t\t\t\t<Text tag=\"span\" weight=\"medium\">{value}</Text>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</span>\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Custom renderer takes precedence\n\t\t\tif (renderItem) {\n\t\t\t\treturn renderItem(item);\n\t\t\t}\n\n\t\t\t// Default rendering with optional highlighting\n\t\t\tconst label = getItemLabel(item);\n\t\t\tif (highlightMatch && trimmedSearch) {\n\t\t\t\treturn <HighlightedText text={label} highlight={trimmedSearch} />;\n\t\t\t}\n\t\t\treturn label;\n\t\t},\n\t\t[strings.createNew, renderItem, getItemLabel, highlightMatch, trimmedSearch]\n\t);\n\n\tconst itemToStringLabel = useCallback(\n\t\t(item: T): string => {\n\t\t\tif (isCreateOption(item)) {\n\t\t\t\treturn getCreateOptionValue(item);\n\t\t\t}\n\t\t\treturn getItemLabel(item);\n\t\t},\n\t\t[getItemLabel]\n\t);\n\n\tconst getItemReactKey = useCallback(\n\t\t(item: T): string => {\n\t\t\tif (isCreateOption(item)) return `__create__:${getCreateOptionValue(item)}`;\n\t\t\treturn String(getKey(item));\n\t\t},\n\t\t[getKey]\n\t);\n\n\treturn {\n\t\tstrings,\n\t\tgetKey,\n\t\ttrimmedSearch,\n\t\tlistRef,\n\t\tbaseItems,\n\t\tallItems,\n\t\tgroupedItems,\n\t\tcreateOptionItem,\n\t\tshowStatus,\n\t\tshowEmpty,\n\t\tshowCreateOption,\n\t\trenderItemContent,\n\t\titemToStringLabel,\n\t\tgetItemReactKey,\n\t\thandleScroll,\n\t};\n}\n","/**\n * Enhanced Combobox Components\n *\n * A feature-rich, API-driven combobox built on Base UI with shadcn styling.\n * Supports single and multiple selection, form integration, debounced search,\n * grouping, pagination, and more.\n *\n * This version uses shared hooks and components to eliminate duplication\n * between single and multiple selection variants.\n */\n\nimport * as React from 'react';\nimport { useRef, useCallback, useEffect, useState } from 'react';\n\nimport {\n\tCombobox as BaseCombobox,\n\tComboboxInputTrigger,\n\tComboboxChips,\n\tComboboxChip,\n\tComboboxChipsInput,\n} from '@/components/ui/combobox';\nimport { useFormsConfig, type FormControlSize } from '@/lib/ui-provider';\n\nimport { ComboboxDropdown } from './components/combobox-dropdown';\nimport { ErrorMessage } from './components/error-message';\nimport {\n\tDEFAULT_MIN_SEARCH_LENGTH,\n\tDEFAULT_SIZE,\n\tisCreateOption,\n\tgetCreateOptionValue,\n} from './constants';\n\nimport { useEnhancedComboboxCore } from './hooks/use-enhanced-combobox-core';\nimport type {\n\tEnhancedComboboxProps,\n\tEnhancedComboboxMultipleProps,\n\tComboboxSize,\n} from './types';\n\nconst formControlSizeToComboboxSize: Record<FormControlSize, ComboboxSize> = {\n\tsm: 'sm',\n\tbase: 'md',\n\tlg: 'lg',\n};\n\nfunction resolveComboboxSize(\n\tsizeProp: ComboboxSize | undefined,\n\tdefaultControlSize: FormControlSize | undefined,\n): ComboboxSize {\n\treturn sizeProp ?? formControlSizeToComboboxSize[defaultControlSize ?? 'sm'] ?? DEFAULT_SIZE;\n}\n\n// ============================================================================\n// Single Selection Component\n// ============================================================================\n\nexport function EnhancedCombobox<T>({\n\t// Core props\n\titems,\n\tselectedValue,\n\tonSelectedValueChange,\n\tsearchValue,\n\tonSearchValueChange,\n\tgetItemLabel,\n\tgetItemKey,\n\tisLoading = false,\n\tminSearchLength = DEFAULT_MIN_SEARCH_LENGTH,\n\tstrings: stringsProp,\n\tdisabled = false,\n\tclassName,\n\trenderItem,\n\tportalContainer,\n\n\t// Form Integration\n\tname,\n\terror,\n\trequired,\n\tonBlur,\n\n\t// Debounced Search\n\tonSearch,\n\tdebounceMs,\n\n\t// Creatable\n\tcreatable,\n\tonCreate,\n\n\t// Grouped Items\n\tgetItemGroup,\n\trenderGroupLabel,\n\n\t// Load More\n\thasMore,\n\tonLoadMore,\n\tisLoadingMore,\n\n\t// Disable individual items\n\tgetItemDisabled,\n\n\t// Highlight Match\n\thighlightMatch,\n\n\t// Size\n\tsize: sizeProp,\n\n\t// Controlled Open\n\topen,\n\tonOpenChange,\n}: EnhancedComboboxProps<T>): React.ReactElement {\n\tconst { defaultControlSize } = useFormsConfig();\n\tconst size = resolveComboboxSize(sizeProp, defaultControlSize);\n\n\t// Use shared core hook\n\tconst core = useEnhancedComboboxCore({\n\t\titems,\n\t\tsearchValue,\n\t\tonSearchValueChange,\n\t\tgetItemLabel,\n\t\tgetItemKey,\n\t\tisLoading,\n\t\tminSearchLength,\n\t\tstrings: stringsProp,\n\t\trenderItem,\n\t\tonSearch,\n\t\tdebounceMs,\n\t\tcreatable,\n\t\tonCreate,\n\t\tgetItemGroup,\n\t\thasMore,\n\t\tonLoadMore,\n\t\tisLoadingMore,\n\t\thighlightMatch,\n\t\tsize,\n\t\t// Include selected value in items list\n\t\tensuredItems: selectedValue ? [selectedValue] : [],\n\t});\n\n\t// Track open state so we can show the selected label when closed\n\tconst [isOpen, setIsOpen] = useState(false);\n\tconst handleOpenChange = useCallback(\n\t\t(nextOpen: boolean) => {\n\t\t\tsetIsOpen(nextOpen);\n\t\t\tif (!nextOpen) {\n\t\t\t\t// Clear search when closing so next open starts fresh\n\t\t\t\tonSearchValueChange('');\n\t\t\t}\n\t\t\tonOpenChange?.(nextOpen);\n\t\t},\n\t\t[onOpenChange, onSearchValueChange],\n\t);\n\n\t// When closed with a selected value, show the label; when open, show search text\n\tconst displayInputValue = isOpen\n\t\t? searchValue\n\t\t: (selectedValue ? core.itemToStringLabel(selectedValue) : '');\n\n\t// Handle value change, including create option\n\tconst handleValueChange = useCallback(\n\t\t(value: T | null): void => {\n\t\t\tif (value && isCreateOption(value)) {\n\t\t\t\tconst inputValue = getCreateOptionValue(value);\n\t\t\t\tonCreate?.(inputValue);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tonSelectedValueChange(value);\n\t\t},\n\t\t[onSelectedValueChange, onCreate]\n\t);\n\n\treturn (\n\t\t<div className=\"enhanced-combobox--component\">\n\t\t\t<BaseCombobox\n\t\t\t\titems={core.allItems}\n\t\t\t\tvalue={selectedValue}\n\t\t\t\tonValueChange={handleValueChange}\n\t\t\t\tinputValue={displayInputValue}\n\t\t\t\tonInputValueChange={(value, { reason }) => {\n\t\t\t\t\tif (reason === 'item-press') {\n\t\t\t\t\t\tonSearchValueChange('');\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tonSearchValueChange(value);\n\t\t\t\t}}\n\t\t\t\titemToStringLabel={core.itemToStringLabel}\n\t\t\t\tdisabled={disabled}\n\t\t\t\tfilter={null}\n\t\t\t\tname={name}\n\t\t\t\trequired={required}\n\t\t\t\topen={open}\n\t\t\t\tonOpenChange={handleOpenChange}\n\t\t\t>\n\t\t\t\t<ComboboxInputTrigger\n\t\t\t\t\tplaceholder={core.strings.placeholder}\n\t\t\t\t\tshowClear\n\t\t\t\t\tclassName={className}\n\t\t\t\t\tsize={size}\n\t\t\t\t\terror={!!error}\n\t\t\t\t\taria-invalid={!!error}\n\t\t\t\t\taria-required={required}\n\t\t\t\t\tonBlur={onBlur}\n\t\t\t\t/>\n\n\t\t\t\t<ComboboxDropdown\n\t\t\t\t\tisLoading={isLoading}\n\t\t\t\t\tshowStatus={core.showStatus}\n\t\t\t\t\tshowEmpty={core.showEmpty}\n\t\t\t\t\tsearchValue={searchValue}\n\t\t\t\t\tminSearchLength={minSearchLength}\n\t\t\t\t\titems={items}\n\t\t\t\t\tgroupedItems={core.groupedItems}\n\t\t\t\t\tcreateOptionItem={core.createOptionItem}\n\t\t\t\t\trenderItemContent={core.renderItemContent}\n\t\t\t\t\tgetItemReactKey={core.getItemReactKey}\n\t\t\t\t\tgetItemDisabled={getItemDisabled}\n\t\t\t\t\trenderGroupLabel={renderGroupLabel}\n\t\t\t\t\tisLoadingMore={isLoadingMore}\n\t\t\t\t\tstrings={core.strings}\n\t\t\t\t\tsize={size}\n\t\t\t\t\tportalContainer={portalContainer}\n\t\t\t\t\tlistRef={core.listRef}\n\t\t\t\t/>\n\t\t\t</BaseCombobox>\n\n\t\t\t<ErrorMessage error={error} size={size} />\n\t\t</div>\n\t);\n}\n\n// ============================================================================\n// Multiple Selection Component\n// ============================================================================\n\nexport function EnhancedComboboxMultiple<T>({\n\t// Core props\n\titems,\n\tselectedValues,\n\tonSelectedValuesChange,\n\tsearchValue,\n\tonSearchValueChange,\n\tgetItemLabel,\n\tgetItemKey,\n\tisLoading = false,\n\tminSearchLength = DEFAULT_MIN_SEARCH_LENGTH,\n\tstrings: stringsProp,\n\tdisabled = false,\n\tclassName,\n\trenderItem,\n\tportalContainer,\n\n\t// Form Integration\n\tname,\n\terror,\n\trequired,\n\tonBlur,\n\n\t// Debounced Search\n\tonSearch,\n\tdebounceMs,\n\n\t// Creatable\n\tcreatable,\n\tonCreate,\n\n\t// Grouped Items\n\tgetItemGroup,\n\trenderGroupLabel,\n\n\t// Load More\n\thasMore,\n\tonLoadMore,\n\tisLoadingMore,\n\n\t// Disable individual items\n\tgetItemDisabled,\n\n\t// Highlight Match\n\thighlightMatch,\n\n\t// Size\n\tsize: sizeProp,\n\n\t// Controlled Open\n\topen,\n\tonOpenChange,\n\n\t// Behaviour\n\tcloseOnSelect = false,\n\tapplyButton = false,\n\tonApply,\n\tonCancel,\n}: EnhancedComboboxMultipleProps<T>): React.ReactElement {\n\tconst { defaultControlSize } = useFormsConfig();\n\tconst size = resolveComboboxSize(sizeProp, defaultControlSize);\n\tconst containerRef = useRef<HTMLDivElement | null>(null);\n\tconst getKey = getItemKey ?? getItemLabel;\n\n\t// Draft state — only used in `applyButton` mode. Tracks the user's\n\t// in-progress selection so we can commit it on Apply or revert on\n\t// Cancel. When apply mode is OFF, we pass selections through immediately.\n\tconst [draftValues, setDraftValues] = useState<T[]>(selectedValues);\n\tconst [internalOpen, setInternalOpen] = useState(false);\n\tconst isOpenControlled = open !== undefined;\n\tconst resolvedOpen = isOpenControlled ? open : internalOpen;\n\n\tuseEffect(() => {\n\t\tif (applyButton) setDraftValues(selectedValues);\n\t}, [applyButton, selectedValues]);\n\n\tconst setOpen = useCallback(\n\t\t(next: boolean) => {\n\t\t\tif (!isOpenControlled) setInternalOpen(next);\n\t\t\tonOpenChange?.(next);\n\t\t},\n\t\t[isOpenControlled, onOpenChange],\n\t);\n\n\t// Use shared core hook\n\tconst core = useEnhancedComboboxCore({\n\t\titems,\n\t\tsearchValue,\n\t\tonSearchValueChange,\n\t\tgetItemLabel,\n\t\tgetItemKey,\n\t\tisLoading,\n\t\tminSearchLength,\n\t\tstrings: stringsProp,\n\t\trenderItem,\n\t\tonSearch,\n\t\tdebounceMs,\n\t\tcreatable,\n\t\tonCreate,\n\t\tgetItemGroup,\n\t\thasMore,\n\t\tonLoadMore,\n\t\tisLoadingMore,\n\t\thighlightMatch,\n\t\tsize,\n\t\t// Include selected values in items list\n\t\tensuredItems: selectedValues,\n\t});\n\n\t// Handle value change, filtering out create options\n\tconst handleValueChange = useCallback(\n\t\t(values: T[]): void => {\n\t\t\tconst regularValues: T[] = [];\n\t\t\tlet createValue: string | null = null;\n\n\t\t\tfor (const value of values) {\n\t\t\t\tif (isCreateOption(value)) {\n\t\t\t\t\tcreateValue = getCreateOptionValue(value);\n\t\t\t\t} else {\n\t\t\t\t\tregularValues.push(value);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (createValue) {\n\t\t\t\tonCreate?.(createValue);\n\t\t\t}\n\n\t\t\tconst next = (regularValues.length !== values.length || !createValue) ? regularValues : null;\n\t\t\tif (next) {\n\t\t\t\tif (applyButton) {\n\t\t\t\t\tsetDraftValues(next);\n\t\t\t\t} else {\n\t\t\t\t\tonSelectedValuesChange(next);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (closeOnSelect) {\n\t\t\t\tsetOpen(false);\n\t\t\t}\n\t\t},\n\t\t[onSelectedValuesChange, onCreate, applyButton, closeOnSelect, setOpen],\n\t);\n\n\tconst handleApply = useCallback(() => {\n\t\tif (applyButton) onSelectedValuesChange(draftValues);\n\t\tonApply?.();\n\t\tsetOpen(false);\n\t}, [applyButton, draftValues, onApply, onSelectedValuesChange, setOpen]);\n\n\tconst handleCancel = useCallback(() => {\n\t\tif (applyButton) setDraftValues(selectedValues);\n\t\tonCancel?.();\n\t\tsetOpen(false);\n\t}, [applyButton, selectedValues, onCancel, setOpen]);\n\n\tconst visibleValues = applyButton ? draftValues : selectedValues;\n\tconst chipsPlaceholder = visibleValues.length > 0 ? undefined : core.strings.placeholder;\n\n\treturn (\n\t\t<div>\n\t\t\t<BaseCombobox\n\t\t\t\titems={core.allItems}\n\t\t\t\tmultiple\n\t\t\t\tvalue={visibleValues}\n\t\t\t\tonValueChange={handleValueChange}\n\t\t\t\tinputValue={searchValue}\n\t\t\t\tonInputValueChange={(value, { reason }) => {\n\t\t\t\t\tif (reason === 'item-press') {\n\t\t\t\t\t\tonSearchValueChange('');\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tonSearchValueChange(value);\n\t\t\t\t}}\n\t\t\t\titemToStringLabel={core.itemToStringLabel}\n\t\t\t\tdisabled={disabled}\n\t\t\t\tfilter={null}\n\t\t\t\tname={name}\n\t\t\t\trequired={required}\n\t\t\t\topen={resolvedOpen}\n\t\t\t\tonOpenChange={(next) => {\n\t\t\t\t\t// In apply-button mode, closing without committing should\n\t\t\t\t\t// revert the draft so the next open starts clean.\n\t\t\t\t\tif (!next && applyButton) setDraftValues(selectedValues);\n\t\t\t\t\tsetOpen(next);\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<ComboboxChips\n\t\t\t\t\tref={containerRef}\n\t\t\t\t\tclassName={className}\n\t\t\t\t\tsize={size}\n\t\t\t\t\terror={!!error}\n\t\t\t\t>\n\t\t\t\t\t{visibleValues.map((item) => (\n\t\t\t\t\t\t<ComboboxChip key={getKey(item)}>\n\t\t\t\t\t\t\t{getItemLabel(item)}\n\t\t\t\t\t\t</ComboboxChip>\n\t\t\t\t\t))}\n\t\t\t\t\t<ComboboxChipsInput\n\t\t\t\t\t\tplaceholder={chipsPlaceholder}\n\t\t\t\t\t\taria-invalid={!!error}\n\t\t\t\t\t\taria-required={required}\n\t\t\t\t\t\tonBlur={onBlur}\n\t\t\t\t\t/>\n\t\t\t\t</ComboboxChips>\n\n\t\t\t\t<ComboboxDropdown\n\t\t\t\t\tisLoading={isLoading}\n\t\t\t\t\tshowStatus={core.showStatus}\n\t\t\t\t\tshowEmpty={core.showEmpty}\n\t\t\t\t\tsearchValue={searchValue}\n\t\t\t\t\tminSearchLength={minSearchLength}\n\t\t\t\t\titems={items}\n\t\t\t\t\tgroupedItems={core.groupedItems}\n\t\t\t\t\tcreateOptionItem={core.createOptionItem}\n\t\t\t\t\trenderItemContent={core.renderItemContent}\n\t\t\t\t\tgetItemReactKey={core.getItemReactKey}\n\t\t\t\t\tgetItemDisabled={getItemDisabled}\n\t\t\t\t\trenderGroupLabel={renderGroupLabel}\n\t\t\t\t\tisLoadingMore={isLoadingMore}\n\t\t\t\t\tstrings={core.strings}\n\t\t\t\t\tsize={size}\n\t\t\t\t\tportalContainer={portalContainer}\n\t\t\t\t\tlistRef={core.listRef}\n\t\t\t\t\tanchor={containerRef}\n\t\t\t\t\tapplyFooter={applyButton ? {\n\t\t\t\t\t\tapplyLabel: core.strings.apply,\n\t\t\t\t\t\tcancelLabel: core.strings.cancel,\n\t\t\t\t\t\tonApply: handleApply,\n\t\t\t\t\t\tonCancel: handleCancel,\n\t\t\t\t\t} : undefined}\n\t\t\t\t/>\n\t\t\t</BaseCombobox>\n\n\t\t\t<ErrorMessage error={error} size={size} />\n\t\t</div>\n\t);\n}\n\n// ============================================================================\n// Legacy Aliases\n// ============================================================================\n\n/** @deprecated Use EnhancedCombobox instead */\nexport const ApiCombobox = EnhancedCombobox;\n\n/** @deprecated Use EnhancedComboboxMultiple instead */\nexport const ApiComboboxMultiple = EnhancedComboboxMultiple;\n\nEnhancedCombobox.displayName = 'EnhancedCombobox';\nEnhancedComboboxMultiple.displayName = 'EnhancedComboboxMultiple';\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- const e=require(`./chunk-D3uCBrYO.cjs`),t=require(`../lib/strings.cjs`),n=require(`./ui-provider-uiQgATj1.cjs`),r=require(`../lib/utils.cjs`),i=require(`./text-DBnY6fcL.cjs`),a=require(`./button-D0nF99a9.cjs`);let o=require(`react`);o=e.t(o,1);let s=require(`react/jsx-runtime`),c=require(`lucide-react`),l=require(`@base-ui/react/combobox`);var u=l.Combobox.Root;function d({className:e,...t}){return(0,s.jsx)(l.Combobox.Input,{"data-slot":`combobox-input`,className:r.cn(`border-input file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground flex h-10 w-full min-w-0 rounded-md border bg-background px-3 py-2 text-sm shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50`,`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,`aria-invalid:ring-destructive/20 aria-invalid:border-destructive aria-invalid:bg-destructive/15 aria-invalid:placeholder:text-destructive`,e),...t})}function f({className:e,children:t,...n}){return(0,s.jsxs)(l.Combobox.Trigger,{"data-slot":`combobox-trigger`,className:r.cn(`border-input file:text-foreground placeholder:text-muted-foreground flex h-10 w-full items-center justify-between rounded-md border bg-background px-3 py-2 text-sm shadow-xs transition-[color,box-shadow] outline-none disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50`,`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,`aria-invalid:ring-destructive/20 aria-invalid:border-destructive aria-invalid:bg-destructive/15 aria-invalid:placeholder:text-destructive`,`[&>span]:line-clamp-1`,e),...n,children:[t,(0,s.jsx)(l.Combobox.Icon,{className:`flex`,children:(0,s.jsx)(c.ChevronDownIcon,{className:`size-4 opacity-50`})})]})}function p({placeholder:e,...t}){return(0,s.jsx)(l.Combobox.Value,{"data-slot":`combobox-value`,placeholder:!!e&&(0,s.jsx)(`span`,{className:`text-muted-foreground`,children:e}),...t})}function m({className:e,...t}){return(0,s.jsx)(l.Combobox.Clear,{"data-slot":`combobox-clear`,className:r.cn(`absolute right-8 top-1/2 -translate-y-1/2 rounded-sm opacity-50 ring-offset-background transition-opacity`,`hover:opacity-100 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,`disabled:pointer-events-none`,e),...t,children:(0,s.jsx)(c.XIcon,{className:`size-4`})})}var h={sm:`h-8 text-xs pl-2 pr-8`,md:`h-10 text-sm pl-3 pr-10`,lg:`h-12 text-base pl-4 pr-12`},g={sm:`pr-14`,md:`pr-16`,lg:`pr-20`},_={sm:`right-1`,md:`right-2`,lg:`right-3`},v={sm:`size-3`,md:`size-4`,lg:`size-5`};function y({className:e,showClear:t=!1,size:n=`md`,error:i,...a}){return(0,s.jsxs)(`div`,{className:`relative`,children:[(0,s.jsx)(l.Combobox.Input,{"data-slot":`combobox-input`,className:r.cn(`border-input file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground w-full min-w-0 rounded-md border bg-background shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50`,`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,`aria-invalid:ring-destructive/20 aria-invalid:border-destructive aria-invalid:bg-destructive/15 aria-invalid:placeholder:text-destructive`,h[n],t&&g[n],e),"aria-invalid":i||void 0,...a}),(0,s.jsxs)(`div`,{className:r.cn(`absolute top-1/2 -translate-y-1/2 flex items-center gap-1 text-muted-foreground`,_[n]),children:[!!t&&(0,s.jsx)(l.Combobox.Clear,{"data-slot":`combobox-clear`,className:`rounded-sm p-1 opacity-50 hover:opacity-100 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,children:(0,s.jsx)(c.XIcon,{className:v[n]})}),(0,s.jsx)(l.Combobox.Trigger,{className:`rounded-sm p-1 hover:bg-accent focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,children:(0,s.jsx)(c.ChevronDownIcon,{className:v[n]})})]})]})}var b=l.Combobox.Portal;function x({className:e,sideOffset:t=4,...n}){return(0,s.jsx)(l.Combobox.Positioner,{"data-slot":`combobox-positioner`,sideOffset:t,className:r.cn(`z-50 outline-none`,e),...n})}function S({className:e,...t}){return(0,s.jsx)(l.Combobox.Popup,{"data-slot":`combobox-popup`,className:r.cn(`w-[var(--anchor-width)] min-w-[8rem] max-w-[var(--available-width)] max-h-[min(var(--available-height),24rem)]`,`overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md`,`origin-[var(--transform-origin)]`,`data-[starting-style]:opacity-0 data-[starting-style]:scale-95`,`data-[ending-style]:opacity-0 data-[ending-style]:scale-95`,`transition-[opacity,transform] duration-150`,e),...t})}function C({className:e,...t}){return(0,s.jsx)(l.Combobox.List,{"data-slot":`combobox-list`,className:r.cn(`max-h-[min(24rem,var(--available-height))] overflow-y-auto overscroll-contain p-1`,`outline-none empty:hidden`,e),...t})}var w={sm:`py-1 px-2 text-xs gap-2`,md:`py-1.5 px-2.5 text-sm gap-2`,lg:`py-2 px-3 text-base gap-2.5`},T={sm:`size-3`,md:`size-4`,lg:`size-5`};function E({className:e,children:t,size:n=`md`,...i}){return(0,s.jsxs)(l.Combobox.Item,{"data-slot":`combobox-item`,className:r.cn(`flex w-full cursor-default select-none items-center justify-between rounded-sm outline-none`,`data-[disabled]:pointer-events-none data-[disabled]:opacity-50`,`data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground`,w[n],e),...i,children:[(0,s.jsx)(`span`,{className:`flex min-w-0 flex-1 items-center gap-2 truncate`,children:t}),(0,s.jsx)(l.Combobox.ItemIndicator,{className:r.cn(`flex shrink-0 items-center justify-center text-muted-foreground`,T[n]),children:(0,s.jsx)(c.CheckIcon,{className:T[n]})})]})}function D({className:e,children:t,...n}){return(0,s.jsx)(l.Combobox.ItemIndicator,{"data-slot":`combobox-item-indicator`,className:r.cn(e),...n,children:t??(0,s.jsx)(c.CheckIcon,{className:`size-4`})})}function O({className:e,children:t,...n}){return(0,s.jsx)(l.Combobox.Empty,{"data-slot":`combobox-empty`,className:r.cn(`py-6 text-center text-sm text-muted-foreground empty:hidden`,e),...n,children:t})}function k({className:e,...t}){return(0,s.jsx)(l.Combobox.Status,{"data-slot":`combobox-status`,className:r.cn(`flex items-center gap-2 px-3 py-2 text-sm text-muted-foreground empty:hidden`,e),...t})}function A({className:e,...t}){return(0,s.jsx)(l.Combobox.Group,{"data-slot":`combobox-group`,className:r.cn(`overflow-hidden p-1`,e),...t})}function j({className:e,...t}){return(0,s.jsx)(l.Combobox.GroupLabel,{"data-slot":`combobox-group-label`,className:r.cn(`px-2 py-1.5 text-xs font-medium text-muted-foreground`,e),...t})}var M=l.Combobox.Collection;function ee({className:e,...t}){return(0,s.jsx)(l.Combobox.Separator,{"data-slot":`combobox-separator`,className:r.cn(`-mx-1 my-1 h-px bg-muted`,e),...t})}var N={sm:`min-h-8 gap-1 px-2 py-1 text-xs`,md:`min-h-10 gap-1.5 px-3 py-2 text-sm`,lg:`min-h-12 gap-2 px-4 py-2.5 text-base`};function te({className:e,size:t=`md`,error:n,...i}){return(0,s.jsx)(l.Combobox.Chips,{"data-slot":`combobox-chips`,className:r.cn(`flex flex-wrap items-center rounded-md border border-input bg-background ring-offset-background shadow-xs transition-[color,box-shadow] outline-none`,`focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]`,`aria-invalid:ring-destructive/20 aria-invalid:border-destructive aria-invalid:bg-destructive/15`,N[t],e),"aria-invalid":n||void 0,...i})}function P({className:e,children:t,...n}){return(0,s.jsxs)(l.Combobox.Chip,{"data-slot":`combobox-chip`,className:r.cn(`inline-flex items-center gap-1 rounded-md bg-secondary px-2 py-1 text-xs font-medium text-secondary-foreground`,`data-[highlighted]:bg-primary data-[highlighted]:text-primary-foreground`,`focus-within:bg-primary focus-within:text-primary-foreground`,e),...n,children:[t,(0,s.jsx)(l.Combobox.ChipRemove,{className:`rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,children:(0,s.jsx)(c.XIcon,{className:`size-3`})})]})}function ne({className:e,...t}){return(0,s.jsx)(l.Combobox.Input,{"data-slot":`combobox-chips-input`,className:r.cn(`min-w-[80px] flex-1 bg-transparent outline-none placeholder:text-muted-foreground`,e),...t})}function F({className:e,...t}){return(0,s.jsx)(l.Combobox.Backdrop,{"data-slot":`combobox-backdrop`,className:r.cn(`fixed inset-0 z-50 bg-black/80`,`data-[starting-style]:opacity-0 data-[ending-style]:opacity-0`,`transition-opacity duration-150`,e),...t})}function I({className:e,...t}){return(0,s.jsx)(l.Combobox.Arrow,{"data-slot":`combobox-arrow`,className:r.cn(`fill-popover`,e),...t})}var L=l.Combobox.useFilter,R={placeholder:`Search...`,searching:`Loading...`,noResults:`No results found.`,typeToSearch:`Type at least {min} characters to search...`,typeMore:`Type {remaining} more character{s} to search...`,createNew:`Create {value}`,loadingMore:`Loading...`,apply:`Apply`,cancel:`Cancel`},z=3,B=300,V=`sm`,H=.8,re=100,U=500,W=Symbol(`enhanced-combobox-create-option`);function G(e){return typeof e==`object`&&!!e&&W in e}function K(e){if(!G(e))throw Error(`Item is not a create option`);return e[W]}function ie(e){return{[W]:e}}function q({isLoading:e,text:t,className:n}){return e?(0,s.jsxs)(`div`,{className:r.cn(`loading-more--component`,`flex items-center justify-center gap-2 py-2 text-sm text-muted-foreground`,n),role:`status`,"aria-live":`polite`,children:[(0,s.jsx)(c.Loader2,{className:`size-4 animate-spin`,"aria-hidden":`true`}),(0,s.jsx)(`span`,{children:t})]}):null}q.displayName=`LoadingMore`;function J({isLoading:e,searchValue:t,minSearchLength:n,itemCount:r,strings:i}){let a=t.trim();if(e)return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(c.Loader2,{className:`size-4 animate-spin`}),i.searching]});if(a===``)return i.typeToSearch.includes(`{min}`)?i.typeToSearch.replace(`{min}`,String(n)):i.typeToSearch;if(a.length<n){let e=n-a.length;return i.typeMore.includes(`{remaining}`)||i.typeMore.includes(`{s}`)?i.typeMore.replace(`{remaining}`,String(e)).replace(`{s}`,e===1?``:`s`):i.typeMore}return null}J.displayName=`StatusContent`;function Y({isLoading:e,showStatus:t,showEmpty:n,searchValue:r,minSearchLength:i,items:o,groupedItems:c,createOptionItem:l,renderItemContent:u,getItemReactKey:d,getItemDisabled:f,renderGroupLabel:p,isLoadingMore:m,strings:h,size:g=`sm`,portalContainer:_,listRef:v,anchor:y,applyFooter:w}){let T=(0,s.jsx)(x,{anchor:y,className:_==null?void 0:`z-[100]`,children:(0,s.jsxs)(S,{"aria-busy":e||void 0,children:[!!t&&(0,s.jsx)(k,{children:(0,s.jsx)(J,{isLoading:e,searchValue:r,minSearchLength:i,itemCount:o.length,strings:h})}),!!n&&(0,s.jsx)(O,{children:h.noResults}),(0,s.jsx)(C,{ref:v,children:c?(0,s.jsxs)(s.Fragment,{children:[Array.from(c.entries()).map(([e,t])=>(0,s.jsxs)(A,{className:`combobox-dropdown--component`,items:t,children:[(0,s.jsx)(j,{children:typeof p==`function`?p(e):e}),(0,s.jsx)(M,{children:e=>(0,s.jsx)(E,{value:e,size:g,disabled:f?.(e),children:u(e)},d(e))})]},e)),l!=null&&(0,s.jsx)(E,{value:l,size:g,children:u(l)},d(l))]}):(0,s.jsx)(M,{children:e=>(0,s.jsx)(E,{value:e,size:g,disabled:f?.(e),children:u(e)},d(e))})}),(0,s.jsx)(q,{isLoading:!!m,text:h.loadingMore}),!!w&&(0,s.jsxs)(`div`,{className:`flex items-center justify-end gap-2 border-t border-border/60 px-2 py-1.5`,children:[(0,s.jsx)(a.t,{type:`button`,variant:`secondary`,buttonStyle:`ghost`,onClick:e=>{e.preventDefault(),e.stopPropagation(),w.onCancel()},children:w.cancelLabel}),(0,s.jsx)(a.t,{type:`button`,variant:`primary`,onClick:e=>{e.preventDefault(),e.stopPropagation(),w.onApply()},children:w.applyLabel})]})]})});return _?(0,s.jsx)(b,{container:_,children:T}):(0,s.jsx)(b,{children:T})}Y.displayName=`ComboboxDropdown`;var ae={sm:`text-xs mt-1`,md:`text-sm mt-1.5`,lg:`text-base mt-2`};function X({error:e,size:t,className:n}){return e?(0,s.jsx)(`p`,{className:r.cn(`error-message--component`,`text-destructive`,ae[t],n),role:`alert`,"aria-live":`polite`,children:e}):null}X.displayName=`ErrorMessage`;function Z(e){return e.replace(/[$()*+.?[\\\]^{|}]/g,`\\$&`)}function Q({text:e,highlight:t,highlightClassName:n=`bg-yellow-200 dark:bg-yellow-800 rounded-sm px-0.5`}){if(!t.trim())return e;let r=RegExp(`(${Z(t)})`,`gi`),i=e.split(r),a=0;return(0,s.jsx)(s.Fragment,{children:i.map((e,t)=>{let r=t%2==1,i=String(a);return a+=e.length,r?(0,s.jsx)(`mark`,{className:n,children:e},i):(0,s.jsx)(`span`,{children:e},i)})})}Q.displayName=`HighlightedText`;function oe({searchValue:e,onSearch:t,debounceMs:n=300,minSearchLength:r=3}){let i=(0,o.useRef)(null);(0,o.useEffect)(()=>{if(!t)return;i.current&&clearTimeout(i.current);let a=e.trim();return a.length>=r&&(i.current=setTimeout(()=>{t(a)},n)),()=>{i.current&&clearTimeout(i.current)}},[e,t,n,r])}function se({items:e,getItemGroup:t}){return(0,o.useMemo)(()=>{if(!t)return null;let n=new Map;for(let r of e){let e=t(r),i=n.get(e);i?i.push(r):n.set(e,[r])}return n},[e,t])}function ce({hasMore:e,onLoadMore:t,isLoadingMore:n}){let r=(0,o.useRef)(!1),i=(0,o.useRef)(null),a=(0,o.useCallback)(a=>{if(!e||!t||n||r.current)return;let{scrollHeight:o,scrollTop:s,clientHeight:c}=a.target;(s+c)/o>=.8&&(i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{r.current=!0,t(),setTimeout(()=>{r.current=!1},500)},100))},[e,t,n]);return(0,o.useEffect)(()=>()=>{i.current&&clearTimeout(i.current)},[]),{handleScroll:a}}function $(e){return t.useStrings(R,e)}function le(e,t,n){let r=t.toLowerCase();return e.some(e=>n(e).toLowerCase()===r)}function ue({items:e,searchValue:t,getItemLabel:n,getItemKey:a,isLoading:l=!1,minSearchLength:u=3,strings:d,renderItem:f,onSearch:p,debounceMs:m=300,creatable:h,onCreate:g,getItemGroup:_,hasMore:v,onLoadMore:y,isLoadingMore:b,highlightMatch:x,ensuredItems:S=[]}){let C=$(d),w=a??n,T=(0,o.useRef)(null),E=t.trim();oe({searchValue:t,onSearch:p,debounceMs:m,minSearchLength:u});let{handleScroll:D}=ce({hasMore:v,onLoadMore:y,isLoadingMore:b});(0,o.useEffect)(()=>{let e=T.current;if(!(!e||!v||!y))return e.addEventListener(`scroll`,D),()=>e.removeEventListener(`scroll`,D)},[D,v,y]);let O=(0,o.useMemo)(()=>{if(S.length===0)return e;let t=[...S];return e.forEach(e=>{let n=w(e);S.some(e=>w(e)===n)||t.push(e)}),t},[e,S,w]),k=se({items:O,getItemGroup:_}),A=(0,o.useMemo)(()=>!h||!g||E.length<u?!1:!le(O,E,n),[h,g,E,u,O,n]),j=(0,o.useMemo)(()=>A?ie(E):null,[A,E]);return{strings:C,getKey:w,trimmedSearch:E,listRef:T,baseItems:O,allItems:(0,o.useMemo)(()=>j?[...O,j]:O,[O,j]),groupedItems:k,createOptionItem:j,showStatus:l||E.length<u,showEmpty:!l&&E.length>=u&&e.length===0&&!A,showCreateOption:A,renderItemContent:(0,o.useCallback)(e=>{if(G(e)){let t=K(e);return(0,s.jsxs)(`span`,{className:r.cn(`use-enhanced-combobox-core--component`,`flex items-center gap-2`),children:[(0,s.jsx)(c.PlusIcon,{className:`size-4`}),C.createNew.includes(`{value}`)?C.createNew.replace(`{value}`,t):(0,s.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,s.jsx)(`span`,{children:C.createNew}),(0,s.jsx)(i.t,{tag:`span`,weight:`medium`,children:t})]})]})}if(f)return f(e);let t=n(e);return x&&E?(0,s.jsx)(Q,{text:t,highlight:E}):t},[C.createNew,f,n,x,E]),itemToStringLabel:(0,o.useCallback)(e=>G(e)?K(e):n(e),[n]),getItemReactKey:(0,o.useCallback)(e=>G(e)?`__create__:${K(e)}`:String(w(e)),[w]),handleScroll:D}}var de={sm:`sm`,base:`md`,lg:`lg`};function fe(e,t){return e??de[t??`sm`]??`sm`}function pe({items:e,selectedValue:t,onSelectedValueChange:r,searchValue:i,onSearchValueChange:a,getItemLabel:c,getItemKey:l,isLoading:d=!1,minSearchLength:f=3,strings:p,disabled:m=!1,className:h,renderItem:g,portalContainer:_,name:v,error:b,required:x,onBlur:S,onSearch:C,debounceMs:w,creatable:T,onCreate:E,getItemGroup:D,renderGroupLabel:O,hasMore:k,onLoadMore:A,isLoadingMore:j,getItemDisabled:M,highlightMatch:ee,size:N,open:te,onOpenChange:P}){let{defaultControlSize:ne}=n.s(),F=fe(N,ne),I=ue({items:e,searchValue:i,onSearchValueChange:a,getItemLabel:c,getItemKey:l,isLoading:d,minSearchLength:f,strings:p,renderItem:g,onSearch:C,debounceMs:w,creatable:T,onCreate:E,getItemGroup:D,hasMore:k,onLoadMore:A,isLoadingMore:j,highlightMatch:ee,size:F,ensuredItems:t?[t]:[]}),[L,R]=(0,o.useState)(!1),z=(0,o.useCallback)(e=>{R(e),e||a(``),P?.(e)},[P,a]),B=L?i:t?I.itemToStringLabel(t):``,V=(0,o.useCallback)(e=>{if(e&&G(e)){let t=K(e);E?.(t);return}r(e)},[r,E]);return(0,s.jsxs)(`div`,{className:`enhanced-combobox--component`,children:[(0,s.jsxs)(u,{items:I.allItems,value:t,onValueChange:V,inputValue:B,onInputValueChange:(e,{reason:t})=>{if(t===`item-press`){a(``);return}a(e)},itemToStringLabel:I.itemToStringLabel,disabled:m,filter:null,name:v,required:x,open:te,onOpenChange:z,children:[(0,s.jsx)(y,{placeholder:I.strings.placeholder,showClear:!0,className:h,size:F,error:!!b,"aria-invalid":!!b,"aria-required":x,onBlur:S}),(0,s.jsx)(Y,{isLoading:d,showStatus:I.showStatus,showEmpty:I.showEmpty,searchValue:i,minSearchLength:f,items:e,groupedItems:I.groupedItems,createOptionItem:I.createOptionItem,renderItemContent:I.renderItemContent,getItemReactKey:I.getItemReactKey,getItemDisabled:M,renderGroupLabel:O,isLoadingMore:j,strings:I.strings,size:F,portalContainer:_,listRef:I.listRef})]}),(0,s.jsx)(X,{error:b,size:F})]})}function me({items:e,selectedValues:t,onSelectedValuesChange:r,searchValue:i,onSearchValueChange:a,getItemLabel:c,getItemKey:l,isLoading:d=!1,minSearchLength:f=3,strings:p,disabled:m=!1,className:h,renderItem:g,portalContainer:_,name:v,error:y,required:b,onBlur:x,onSearch:S,debounceMs:C,creatable:w,onCreate:T,getItemGroup:E,renderGroupLabel:D,hasMore:O,onLoadMore:k,isLoadingMore:A,getItemDisabled:j,highlightMatch:M,size:ee,open:N,onOpenChange:F,closeOnSelect:I=!1,applyButton:L=!1,onApply:R,onCancel:z}){let{defaultControlSize:B}=n.s(),V=fe(ee,B),H=(0,o.useRef)(null),re=l??c,[U,W]=(0,o.useState)(t),[ie,q]=(0,o.useState)(!1),J=N!==void 0,ae=J?N:ie;(0,o.useEffect)(()=>{L&&W(t)},[L,t]);let Z=(0,o.useCallback)(e=>{J||q(e),F?.(e)},[J,F]),Q=ue({items:e,searchValue:i,onSearchValueChange:a,getItemLabel:c,getItemKey:l,isLoading:d,minSearchLength:f,strings:p,renderItem:g,onSearch:S,debounceMs:C,creatable:w,onCreate:T,getItemGroup:E,hasMore:O,onLoadMore:k,isLoadingMore:A,highlightMatch:M,size:V,ensuredItems:t}),oe=(0,o.useCallback)(e=>{let t=[],n=null;for(let r of e)G(r)?n=K(r):t.push(r);n&&T?.(n);let i=t.length!==e.length||!n?t:null;i&&(L?W(i):r(i)),I&&Z(!1)},[r,T,L,I,Z]),se=(0,o.useCallback)(()=>{L&&r(U),R?.(),Z(!1)},[L,U,R,r,Z]),ce=(0,o.useCallback)(()=>{L&&W(t),z?.(),Z(!1)},[L,t,z,Z]),$=L?U:t,le=$.length>0?void 0:Q.strings.placeholder;return(0,s.jsxs)(`div`,{children:[(0,s.jsxs)(u,{items:Q.allItems,multiple:!0,value:$,onValueChange:oe,inputValue:i,onInputValueChange:(e,{reason:t})=>{if(t===`item-press`){a(``);return}a(e)},itemToStringLabel:Q.itemToStringLabel,disabled:m,filter:null,name:v,required:b,open:ae,onOpenChange:e=>{!e&&L&&W(t),Z(e)},children:[(0,s.jsxs)(te,{ref:H,className:h,size:V,error:!!y,children:[$.map(e=>(0,s.jsx)(P,{children:c(e)},re(e))),(0,s.jsx)(ne,{placeholder:le,"aria-invalid":!!y,"aria-required":b,onBlur:x})]}),(0,s.jsx)(Y,{isLoading:d,showStatus:Q.showStatus,showEmpty:Q.showEmpty,searchValue:i,minSearchLength:f,items:e,groupedItems:Q.groupedItems,createOptionItem:Q.createOptionItem,renderItemContent:Q.renderItemContent,getItemReactKey:Q.getItemReactKey,getItemDisabled:j,renderGroupLabel:D,isLoadingMore:A,strings:Q.strings,size:V,portalContainer:_,listRef:Q.listRef,anchor:H,applyFooter:L?{applyLabel:Q.strings.apply,cancelLabel:Q.strings.cancel,onApply:se,onCancel:ce}:void 0})]}),(0,s.jsx)(X,{error:y,size:V})]})}var he=pe,ge=me;pe.displayName=`EnhancedCombobox`,me.displayName=`EnhancedComboboxMultiple`,Object.defineProperty(exports,`A`,{enumerable:!0,get:function(){return ne}}),Object.defineProperty(exports,`B`,{enumerable:!0,get:function(){return C}}),Object.defineProperty(exports,`C`,{enumerable:!0,get:function(){return G}}),Object.defineProperty(exports,`D`,{enumerable:!0,get:function(){return F}}),Object.defineProperty(exports,`E`,{enumerable:!0,get:function(){return I}}),Object.defineProperty(exports,`F`,{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,`G`,{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,`H`,{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,`I`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`J`,{enumerable:!0,get:function(){return L}}),Object.defineProperty(exports,`K`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`L`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,`M`,{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,`N`,{enumerable:!0,get:function(){return O}}),Object.defineProperty(exports,`O`,{enumerable:!0,get:function(){return P}}),Object.defineProperty(exports,`P`,{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,`R`,{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,`S`,{enumerable:!0,get:function(){return K}}),Object.defineProperty(exports,`T`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`U`,{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,`V`,{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,`W`,{enumerable:!0,get:function(){return ee}}),Object.defineProperty(exports,`_`,{enumerable:!0,get:function(){return V}}),Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return ue}}),Object.defineProperty(exports,`b`,{enumerable:!0,get:function(){return H}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return oe}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return Y}}),Object.defineProperty(exports,`f`,{enumerable:!0,get:function(){return J}}),Object.defineProperty(exports,`g`,{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,`h`,{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return me}}),Object.defineProperty(exports,`j`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`k`,{enumerable:!0,get:function(){return te}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return Q}}),Object.defineProperty(exports,`m`,{enumerable:!0,get:function(){return W}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return ge}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return ce}}),Object.defineProperty(exports,`p`,{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,`q`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return pe}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return se}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return he}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return X}}),Object.defineProperty(exports,`v`,{enumerable:!0,get:function(){return U}}),Object.defineProperty(exports,`w`,{enumerable:!0,get:function(){return R}}),Object.defineProperty(exports,`x`,{enumerable:!0,get:function(){return ie}}),Object.defineProperty(exports,`y`,{enumerable:!0,get:function(){return re}}),Object.defineProperty(exports,`z`,{enumerable:!0,get:function(){return D}});
2
- //# sourceMappingURL=combobox-DuIyh3xJ.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"combobox-DuIyh3xJ.cjs","names":[],"sources":["../../src/components/ui/combobox.tsx","../../src/components/base/combobox/combobox.strings.ts","../../src/components/base/combobox/constants.ts","../../src/components/base/combobox/components/loading-more.tsx","../../src/components/base/combobox/components/status-content.tsx","../../src/components/base/combobox/components/combobox-dropdown.tsx","../../src/components/base/combobox/components/error-message.tsx","../../src/components/base/combobox/components/highlighted-text.tsx","../../src/components/base/combobox/hooks/use-debounced-search.ts","../../src/components/base/combobox/hooks/use-grouped-items.ts","../../src/components/base/combobox/hooks/use-load-more.ts","../../src/components/base/combobox/hooks/use-enhanced-combobox-core.tsx","../../src/components/base/combobox/enhanced-combobox.tsx"],"sourcesContent":["import { Combobox as ComboboxPrimitive } from '@base-ui/react/combobox';\nimport { CheckIcon, ChevronDownIcon, XIcon } from 'lucide-react';\nimport * as React from 'react';\nimport { cn } from '@/lib/utils';\n\nconst Combobox = ComboboxPrimitive.Root;\n\nfunction ComboboxInput({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Input.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Input\n\t\t\tdata-slot=\"combobox-input\"\n\t\t\tclassName={cn(\n\t\t\t\t'border-input file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground flex h-10 w-full min-w-0 rounded-md border bg-background px-3 py-2 text-sm shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50',\n\t\t\t\t'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]',\n\t\t\t\t'aria-invalid:ring-destructive/20 aria-invalid:border-destructive aria-invalid:bg-destructive/15 aria-invalid:placeholder:text-destructive',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction ComboboxTrigger({\n\tclassName,\n\tchildren,\n\t...props\n}: ComboboxPrimitive.Trigger.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Trigger\n\t\t\tdata-slot=\"combobox-trigger\"\n\t\t\tclassName={cn(\n\t\t\t\t'border-input file:text-foreground placeholder:text-muted-foreground flex h-10 w-full items-center justify-between rounded-md border bg-background px-3 py-2 text-sm shadow-xs transition-[color,box-shadow] outline-none disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50',\n\t\t\t\t'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]',\n\t\t\t\t'aria-invalid:ring-destructive/20 aria-invalid:border-destructive aria-invalid:bg-destructive/15 aria-invalid:placeholder:text-destructive',\n\t\t\t\t'[&>span]:line-clamp-1',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t\t<ComboboxPrimitive.Icon className=\"flex\">\n\t\t\t\t<ChevronDownIcon className=\"size-4 opacity-50\" />\n\t\t\t</ComboboxPrimitive.Icon>\n\t\t</ComboboxPrimitive.Trigger>\n\t);\n}\n\nfunction ComboboxValue({\n\tplaceholder,\n\t...props\n}: ComboboxPrimitive.Value.Props & { placeholder?: React.ReactNode }) {\n\treturn (\n\t\t<ComboboxPrimitive.Value\n\t\t\tdata-slot=\"combobox-value\"\n\t\t\tplaceholder={\n\t\t\t\t!!placeholder && <span className=\"text-muted-foreground\">{placeholder}</span>\n\t\t\t}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction ComboboxClear({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Clear.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Clear\n\t\t\tdata-slot=\"combobox-clear\"\n\t\t\tclassName={cn(\n\t\t\t\t'absolute right-8 top-1/2 -translate-y-1/2 rounded-sm opacity-50 ring-offset-background transition-opacity',\n\t\t\t\t'hover:opacity-100 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]',\n\t\t\t\t'disabled:pointer-events-none',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<XIcon className=\"size-4\" />\n\t\t</ComboboxPrimitive.Clear>\n\t);\n}\n\nexport type ComboboxSize = 'sm' | 'md' | 'lg';\n\nconst inputSizeClasses: Record<ComboboxSize, string> = {\n\tsm: 'h-8 text-xs pl-2 pr-8',\n\tmd: 'h-10 text-sm pl-3 pr-10',\n\tlg: 'h-12 text-base pl-4 pr-12',\n};\n\nconst inputSizeWithClearClasses: Record<ComboboxSize, string> = {\n\tsm: 'pr-14',\n\tmd: 'pr-16',\n\tlg: 'pr-20',\n};\n\nconst iconContainerSizeClasses: Record<ComboboxSize, string> = {\n\tsm: 'right-1',\n\tmd: 'right-2',\n\tlg: 'right-3',\n};\n\nconst iconSizeClasses: Record<ComboboxSize, string> = {\n\tsm: 'size-3',\n\tmd: 'size-4',\n\tlg: 'size-5',\n};\n\ntype ComboboxInputTriggerProps = Omit<ComboboxPrimitive.Input.Props, 'size'> & {\n\tshowClear?: boolean;\n\tsize?: ComboboxSize;\n\terror?: boolean;\n};\n\nfunction ComboboxInputTrigger({\n\tclassName,\n\tshowClear = false,\n\tsize = 'md',\n\terror,\n\t...props\n}: ComboboxInputTriggerProps) {\n\treturn (\n\t\t<div className=\"relative\">\n\t\t\t<ComboboxPrimitive.Input\n\t\t\t\tdata-slot=\"combobox-input\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'border-input file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground w-full min-w-0 rounded-md border bg-background shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50',\n\t\t\t\t\t'focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]',\n\t\t\t\t\t'aria-invalid:ring-destructive/20 aria-invalid:border-destructive aria-invalid:bg-destructive/15 aria-invalid:placeholder:text-destructive',\n\t\t\t\t\tinputSizeClasses[size],\n\t\t\t\t\tshowClear && inputSizeWithClearClasses[size],\n\t\t\t\t\tclassName\n\t\t\t\t)}\n\t\t\t\taria-invalid={error || undefined}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t\t<div\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'absolute top-1/2 -translate-y-1/2 flex items-center gap-1 text-muted-foreground',\n\t\t\t\t\ticonContainerSizeClasses[size]\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t{!!showClear && (\n <ComboboxPrimitive.Clear\n\t\t\t\t\t\tdata-slot=\"combobox-clear\"\n\t\t\t\t\t\tclassName=\"rounded-sm p-1 opacity-50 hover:opacity-100 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<XIcon className={iconSizeClasses[size]} />\n\t\t\t\t\t</ComboboxPrimitive.Clear>\n )}\n\t\t\t\t<ComboboxPrimitive.Trigger className=\"rounded-sm p-1 hover:bg-accent focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]\">\n\t\t\t\t\t<ChevronDownIcon className={iconSizeClasses[size]} />\n\t\t\t\t</ComboboxPrimitive.Trigger>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\n// Portal\nconst ComboboxPortal = ComboboxPrimitive.Portal;\n\n// Positioner\nfunction ComboboxPositioner({\n\tclassName,\n\tsideOffset = 4,\n\t...props\n}: ComboboxPrimitive.Positioner.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Positioner\n\t\t\tdata-slot=\"combobox-positioner\"\n\t\t\tsideOffset={sideOffset}\n\t\t\tclassName={cn('z-50 outline-none', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Popup (content)\nfunction ComboboxPopup({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Popup.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Popup\n\t\t\tdata-slot=\"combobox-popup\"\n\t\t\tclassName={cn(\n\t\t\t\t'w-[var(--anchor-width)] min-w-[8rem] max-w-[var(--available-width)] max-h-[min(var(--available-height),24rem)]',\n\t\t\t\t'overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md',\n\t\t\t\t'origin-[var(--transform-origin)]',\n\t\t\t\t'data-[starting-style]:opacity-0 data-[starting-style]:scale-95',\n\t\t\t\t'data-[ending-style]:opacity-0 data-[ending-style]:scale-95',\n\t\t\t\t'transition-[opacity,transform] duration-150',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// List\nfunction ComboboxList({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.List.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.List\n\t\t\tdata-slot=\"combobox-list\"\n\t\t\tclassName={cn(\n\t\t\t\t'max-h-[min(24rem,var(--available-height))] overflow-y-auto overscroll-contain p-1',\n\t\t\t\t'outline-none empty:hidden',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Item\n//\n// Layout: `[content][indicator]` with the selection check pinned to the\n// right (`justify-between`). Consumers render leading icons naturally inside\n// `renderItem` — the `gap` between icon and label is set by the consumer.\nconst itemSizeClasses: Record<ComboboxSize, string> = {\n\tsm: 'py-1 px-2 text-xs gap-2',\n\tmd: 'py-1.5 px-2.5 text-sm gap-2',\n\tlg: 'py-2 px-3 text-base gap-2.5',\n};\n\nconst itemIndicatorSizeClasses: Record<ComboboxSize, string> = {\n\tsm: 'size-3',\n\tmd: 'size-4',\n\tlg: 'size-5',\n};\n\nfunction ComboboxItem({\n\tclassName,\n\tchildren,\n\tsize = 'md',\n\t...props\n}: ComboboxPrimitive.Item.Props & { size?: ComboboxSize }) {\n\treturn (\n\t\t<ComboboxPrimitive.Item\n\t\t\tdata-slot=\"combobox-item\"\n\t\t\tclassName={cn(\n\t\t\t\t'flex w-full cursor-default select-none items-center justify-between rounded-sm outline-none',\n\t\t\t\t'data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n\t\t\t\t'data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground',\n\t\t\t\titemSizeClasses[size],\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<span className=\"flex min-w-0 flex-1 items-center gap-2 truncate\">\n\t\t\t\t{children}\n\t\t\t</span>\n\t\t\t<ComboboxPrimitive.ItemIndicator\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'flex shrink-0 items-center justify-center text-muted-foreground',\n\t\t\t\t\titemIndicatorSizeClasses[size]\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<CheckIcon className={itemIndicatorSizeClasses[size]} />\n\t\t\t</ComboboxPrimitive.ItemIndicator>\n\t\t</ComboboxPrimitive.Item>\n\t);\n}\n\n// Item Indicator (standalone)\nfunction ComboboxItemIndicator({\n\tclassName,\n\tchildren,\n\t...props\n}: ComboboxPrimitive.ItemIndicator.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.ItemIndicator\n\t\t\tdata-slot=\"combobox-item-indicator\"\n\t\t\tclassName={cn(className)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children ?? <CheckIcon className=\"size-4\" />}\n\t\t</ComboboxPrimitive.ItemIndicator>\n\t);\n}\n\n// Empty\nfunction ComboboxEmpty({\n\tclassName,\n\tchildren,\n\t...props\n}: ComboboxPrimitive.Empty.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Empty\n\t\t\tdata-slot=\"combobox-empty\"\n\t\t\tclassName={cn(\n\t\t\t\t'py-6 text-center text-sm text-muted-foreground empty:hidden',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t</ComboboxPrimitive.Empty>\n\t);\n}\n\n// Status (for async loading states)\nfunction ComboboxStatus({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Status.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Status\n\t\t\tdata-slot=\"combobox-status\"\n\t\t\tclassName={cn(\n\t\t\t\t'flex items-center gap-2 px-3 py-2 text-sm text-muted-foreground empty:hidden',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Group\nfunction ComboboxGroup({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Group.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Group\n\t\t\tdata-slot=\"combobox-group\"\n\t\t\tclassName={cn('overflow-hidden p-1', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Group Label\nfunction ComboboxGroupLabel({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.GroupLabel.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.GroupLabel\n\t\t\tdata-slot=\"combobox-group-label\"\n\t\t\tclassName={cn('px-2 py-1.5 text-xs font-medium text-muted-foreground', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Collection (for rendering items)\nconst ComboboxCollection = ComboboxPrimitive.Collection;\n\n// Separator\nfunction ComboboxSeparator({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Separator.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Separator\n\t\t\tdata-slot=\"combobox-separator\"\n\t\t\tclassName={cn('-mx-1 my-1 h-px bg-muted', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Chips container (for multiple selection)\nconst chipsSizeClasses: Record<ComboboxSize, string> = {\n\tsm: 'min-h-8 gap-1 px-2 py-1 text-xs',\n\tmd: 'min-h-10 gap-1.5 px-3 py-2 text-sm',\n\tlg: 'min-h-12 gap-2 px-4 py-2.5 text-base',\n};\n\nfunction ComboboxChips({\n\tclassName,\n\tsize = 'md',\n\terror,\n\t...props\n}: React.ComponentPropsWithRef<typeof ComboboxPrimitive.Chips> & {\n\tsize?: ComboboxSize;\n\terror?: boolean;\n}) {\n\treturn (\n\t\t<ComboboxPrimitive.Chips\n\t\t\tdata-slot=\"combobox-chips\"\n\t\t\tclassName={cn(\n\t\t\t\t'flex flex-wrap items-center rounded-md border border-input bg-background ring-offset-background shadow-xs transition-[color,box-shadow] outline-none',\n\t\t\t\t'focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]',\n\t\t\t\t'aria-invalid:ring-destructive/20 aria-invalid:border-destructive aria-invalid:bg-destructive/15',\n\t\t\t\tchipsSizeClasses[size],\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\taria-invalid={error || undefined}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Chip\nfunction ComboboxChip({\n\tclassName,\n\tchildren,\n\t...props\n}: ComboboxPrimitive.Chip.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Chip\n\t\t\tdata-slot=\"combobox-chip\"\n\t\t\tclassName={cn(\n\t\t\t\t'inline-flex items-center gap-1 rounded-md bg-secondary px-2 py-1 text-xs font-medium text-secondary-foreground',\n\t\t\t\t'data-[highlighted]:bg-primary data-[highlighted]:text-primary-foreground',\n\t\t\t\t'focus-within:bg-primary focus-within:text-primary-foreground',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t\t<ComboboxPrimitive.ChipRemove className=\"rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]\">\n\t\t\t\t<XIcon className=\"size-3\" />\n\t\t\t</ComboboxPrimitive.ChipRemove>\n\t\t</ComboboxPrimitive.Chip>\n\t);\n}\n\n// Chips Input\nfunction ComboboxChipsInput({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Input.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Input\n\t\t\tdata-slot=\"combobox-chips-input\"\n\t\t\tclassName={cn(\n\t\t\t\t'min-w-[80px] flex-1 bg-transparent outline-none placeholder:text-muted-foreground',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Backdrop (for modal)\nfunction ComboboxBackdrop({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Backdrop.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Backdrop\n\t\t\tdata-slot=\"combobox-backdrop\"\n\t\t\tclassName={cn(\n\t\t\t\t'fixed inset-0 z-50 bg-black/80',\n\t\t\t\t'data-[starting-style]:opacity-0 data-[ending-style]:opacity-0',\n\t\t\t\t'transition-opacity duration-150',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// Arrow\nfunction ComboboxArrow({\n\tclassName,\n\t...props\n}: ComboboxPrimitive.Arrow.Props) {\n\treturn (\n\t\t<ComboboxPrimitive.Arrow\n\t\t\tdata-slot=\"combobox-arrow\"\n\t\t\tclassName={cn('fill-popover', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\n// useFilter hook re-export\nconst useComboboxFilter = ComboboxPrimitive.useFilter;\n\nexport {\n\tCombobox,\n\tComboboxInput,\n\tComboboxInputTrigger,\n\tComboboxTrigger,\n\tComboboxValue,\n\tComboboxClear,\n\tComboboxPortal,\n\tComboboxPositioner,\n\tComboboxPopup,\n\tComboboxList,\n\tComboboxItem,\n\tComboboxItemIndicator,\n\tComboboxEmpty,\n\tComboboxStatus,\n\tComboboxGroup,\n\tComboboxGroupLabel,\n\tComboboxCollection,\n\tComboboxSeparator,\n\tComboboxChips,\n\tComboboxChip,\n\tComboboxChipsInput,\n\tComboboxBackdrop,\n\tComboboxArrow,\n\tuseComboboxFilter,\n};\n","/**\n * Default user-facing strings for `<EnhancedCombobox>`.\n *\n * Consumers wire backend i18n at the call site:\n *\n * <EnhancedCombobox strings={{ noResults: t('search.empty') }} … />\n *\n * Templates use `{placeholder}` tokens — the component substitutes them at\n * render time. Function-valued strings would also work; we keep templates\n * here for the constants file.\n */\nimport type { ComboboxStrings } from './types';\n\nexport const defaultComboboxStrings: ComboboxStrings = {\n\tplaceholder: 'Search...',\n\tsearching: 'Loading...',\n\tnoResults: 'No results found.',\n\ttypeToSearch: 'Type at least {min} characters to search...',\n\ttypeMore: 'Type {remaining} more character{s} to search...',\n\tcreateNew: 'Create {value}',\n\tloadingMore: 'Loading...',\n\tapply: 'Apply',\n\tcancel: 'Cancel',\n};\n\nexport type { ComboboxStrings };\n","/**\n * Constants and default values for the Enhanced Combobox component.\n *\n * Default strings live in `./combobox.strings.ts` per rule 19. The legacy\n * `DEFAULT_STRINGS` alias is re-exported below for any external consumer\n * still using the old name; new code should import `defaultComboboxStrings`\n * from `./combobox.strings`.\n */\n\nexport { defaultComboboxStrings, defaultComboboxStrings as DEFAULT_STRINGS } from './combobox.strings';\n\n// ============================================================================\n// Default Values\n// ============================================================================\n\nexport const DEFAULT_MIN_SEARCH_LENGTH = 3;\nexport const DEFAULT_DEBOUNCE_MS = 300;\nexport const DEFAULT_SIZE = 'sm';\nexport const LOAD_MORE_THRESHOLD = 0.8;\nexport const LOAD_MORE_DEBOUNCE_MS = 100;\nexport const LOAD_MORE_COOLDOWN_MS = 500;\n\n// ============================================================================\n// Symbols\n// ============================================================================\n\nexport const CREATE_OPTION_SYMBOL = Symbol('enhanced-combobox-create-option');\n\n// ============================================================================\n// Type Guards\n// ============================================================================\n\nexport function isCreateOption<T>(item: T): item is T & { [CREATE_OPTION_SYMBOL]: string } {\n\treturn (\n\t\ttypeof item === 'object' &&\n\t\titem !== null &&\n\t\tCREATE_OPTION_SYMBOL in (item as object)\n\t);\n}\n\nexport function getCreateOptionValue<T>(item: T): string {\n\tif (!isCreateOption(item)) {\n\t\tthrow new Error('Item is not a create option');\n\t}\n\treturn (item as { [CREATE_OPTION_SYMBOL]: string })[CREATE_OPTION_SYMBOL];\n}\n\nexport function createCreateOption<T>(inputValue: string): T {\n\treturn { [CREATE_OPTION_SYMBOL]: inputValue } as unknown as T;\n}\n","/**\n * LoadingMore Component\n */\n\nimport { Loader2 } from 'lucide-react';\nimport * as React from 'react';\nimport { cn } from '@/lib/utils';\n\nexport interface LoadingMoreProps {\n\tisLoading: boolean;\n\ttext: string;\n\tclassName?: string;\n}\n\nexport function LoadingMore({\n\tisLoading,\n\ttext,\n\tclassName,\n}: LoadingMoreProps): React.ReactElement | null {\n\tif (!isLoading) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn('loading-more--component', \n\t\t\t\t'flex items-center justify-center gap-2 py-2 text-sm text-muted-foreground',\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\trole=\"status\"\n\t\t\taria-live=\"polite\"\n\t\t>\n\t\t\t<Loader2 className=\"size-4 animate-spin\" aria-hidden=\"true\" />\n\t\t\t<span>{text}</span>\n\t\t</div>\n\t);\n}\n\nLoadingMore.displayName = 'LoadingMore';\n","/**\n * StatusContent Component\n */\n\nimport { Loader2 } from 'lucide-react';\nimport * as React from 'react';\nimport type { ComboboxStrings } from '../types';\n\nexport interface StatusContentProps {\n\tisLoading?: boolean;\n\tsearchValue: string;\n\tminSearchLength: number;\n\titemCount: number;\n\tstrings: ComboboxStrings;\n}\n\nexport function StatusContent({\n\tisLoading,\n\tsearchValue,\n\tminSearchLength,\n\titemCount,\n\tstrings,\n}: StatusContentProps): React.ReactNode {\n\tconst trimmed = searchValue.trim();\n\n\tif (isLoading) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<Loader2 className=\"size-4 animate-spin\" />\n\t\t\t\t{strings.searching}\n\t\t\t</>\n\t\t);\n\t}\n\n\tif (trimmed === '') {\n\t\tif (strings.typeToSearch.includes('{min}')) {\n\t\t\treturn strings.typeToSearch.replace('{min}', String(minSearchLength));\n\t\t}\n\t\treturn strings.typeToSearch;\n\t}\n\n\tif (trimmed.length < minSearchLength) {\n\t\tconst remaining = minSearchLength - trimmed.length;\n\t\tif (strings.typeMore.includes('{remaining}') || strings.typeMore.includes('{s}')) {\n\t\t\treturn strings.typeMore\n\t\t\t\t.replace('{remaining}', String(remaining))\n\t\t\t\t.replace('{s}', remaining !== 1 ? 's' : '');\n\t\t}\n\t\treturn strings.typeMore;\n\t}\n\n\tif (itemCount === 0) {\n\t\treturn null;\n\t}\n\n\treturn null;\n}\n\nStatusContent.displayName = 'StatusContent';\n","/**\n * Shared ComboboxDropdown Component\n *\n * Renders the dropdown content for both single and multiple selection variants.\n * Extracts shared rendering logic to reduce duplication.\n */\n\nimport * as React from 'react';\n\nimport {\n\tComboboxPortal,\n\tComboboxPositioner,\n\tComboboxPopup,\n\tComboboxEmpty,\n\tComboboxList,\n\tComboboxItem,\n\tComboboxStatus,\n\tComboboxGroup,\n\tComboboxGroupLabel,\n\tComboboxCollection,\n} from '@/components/ui/combobox';\nimport { Button } from '@/components/base/buttons';\n\nimport { DEFAULT_SIZE } from '../constants';\nimport type { ComboboxStrings, ComboboxSize } from '../types';\nimport { LoadingMore } from './loading-more';\nimport { StatusContent } from './status-content';\n\nexport interface ComboboxDropdownProps<T> {\n\t// Display state\n\tisLoading: boolean;\n\tshowStatus: boolean;\n\tshowEmpty: boolean;\n\n\t// Search\n\tsearchValue: string;\n\tminSearchLength: number;\n\n\t// Items\n\titems: T[];\n\tgroupedItems: Map<string, T[]> | null;\n\tcreateOptionItem: T | null;\n\n\t// Rendering\n\trenderItemContent: (item: T) => React.ReactNode;\n\tgetItemReactKey: (item: T) => string;\n\tgetItemDisabled?: (item: T) => boolean;\n\trenderGroupLabel?: (group: string) => React.ReactNode;\n\n\t// Load more\n\tisLoadingMore?: boolean;\n\n\t// Strings\n\tstrings: ComboboxStrings;\n\n\t// Size\n\tsize?: ComboboxSize;\n\n\t// Portal\n\tportalContainer?: React.RefObject<HTMLElement | null>;\n\n\t// Refs\n\tlistRef: React.RefObject<HTMLDivElement | null>;\n\n\t// Multiple selection anchor\n\tanchor?: React.RefObject<HTMLElement | null>;\n\n\t/** Optional apply / cancel footer for the apply-button workflow. */\n\tapplyFooter?: {\n\t\tapplyLabel: string;\n\t\tcancelLabel: string;\n\t\tonApply: () => void;\n\t\tonCancel: () => void;\n\t};\n}\n\nexport function ComboboxDropdown<T>({\n\tisLoading,\n\tshowStatus,\n\tshowEmpty,\n\tsearchValue,\n\tminSearchLength,\n\titems,\n\tgroupedItems,\n\tcreateOptionItem,\n\trenderItemContent,\n\tgetItemReactKey,\n\tgetItemDisabled,\n\trenderGroupLabel,\n\tisLoadingMore,\n\tstrings,\n\tsize = DEFAULT_SIZE,\n\tportalContainer,\n\tlistRef,\n\tanchor,\n\tapplyFooter,\n}: ComboboxDropdownProps<T>): React.ReactElement {\n\tconst positionerClassName = portalContainer != null ? 'z-[100]' : undefined;\n\n\tconst content = (\n\t\t<ComboboxPositioner\n\t\t\tanchor={anchor}\n\t\t\tclassName={positionerClassName}\n\t\t>\n\t\t\t<ComboboxPopup aria-busy={isLoading || undefined}>\n\t\t\t\t{/* Status message */}\n\t\t\t\t{!!showStatus && (\n\t\t\t\t\t<ComboboxStatus>\n\t\t\t\t\t\t<StatusContent\n\t\t\t\t\t\t\tisLoading={isLoading}\n\t\t\t\t\t\t\tsearchValue={searchValue}\n\t\t\t\t\t\t\tminSearchLength={minSearchLength}\n\t\t\t\t\t\t\titemCount={items.length}\n\t\t\t\t\t\t\tstrings={strings}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ComboboxStatus>\n\t\t\t\t)}\n\n\t\t\t\t{/* Empty state */}\n\t\t\t\t{!!showEmpty && <ComboboxEmpty>{strings.noResults}</ComboboxEmpty>}\n\n\t\t\t\t{/* Items list */}\n\t\t\t\t<ComboboxList ref={listRef}>\n\t\t\t\t\t{groupedItems ? (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{Array.from(groupedItems.entries()).map(([group, groupItems]) => {\n\t\t\t\t\t\t\t\tconst groupLabel =\n\t\t\t\t\t\t\t\t\ttypeof renderGroupLabel === 'function'\n\t\t\t\t\t\t\t\t\t\t? renderGroupLabel(group)\n\t\t\t\t\t\t\t\t\t\t: group;\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<ComboboxGroup className=\"combobox-dropdown--component\" key={group} items={groupItems}>\n\t\t\t\t\t\t\t\t\t\t<ComboboxGroupLabel>{groupLabel}</ComboboxGroupLabel>\n\t\t\t\t\t\t\t\t\t\t<ComboboxCollection>\n\t\t\t\t\t\t\t\t\t\t\t{(item: T) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<ComboboxItem\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={getItemReactKey(item)}\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={item}\n\t\t\t\t\t\t\t\t\t\t\t\t\tsize={size}\n\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={getItemDisabled?.(item)}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{renderItemContent(item)}\n\t\t\t\t\t\t\t\t\t\t\t\t</ComboboxItem>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</ComboboxCollection>\n\t\t\t\t\t\t\t\t\t</ComboboxGroup>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\n\t\t\t\t\t\t\t{createOptionItem != null && (\n\t\t\t\t\t\t\t\t<ComboboxItem\n\t\t\t\t\t\t\t\t\tkey={getItemReactKey(createOptionItem)}\n\t\t\t\t\t\t\t\t\tvalue={createOptionItem}\n\t\t\t\t\t\t\t\t\tsize={size}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{renderItemContent(createOptionItem)}\n\t\t\t\t\t\t\t\t</ComboboxItem>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<ComboboxCollection>\n\t\t\t\t\t\t\t{(item: T) => (\n\t\t\t\t\t\t\t\t<ComboboxItem\n\t\t\t\t\t\t\t\t\tkey={getItemReactKey(item)}\n\t\t\t\t\t\t\t\t\tvalue={item}\n\t\t\t\t\t\t\t\t\tsize={size}\n\t\t\t\t\t\t\t\t\tdisabled={getItemDisabled?.(item)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{renderItemContent(item)}\n\t\t\t\t\t\t\t\t</ComboboxItem>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</ComboboxCollection>\n\t\t\t\t\t)}\n\t\t\t\t</ComboboxList>\n\n\t\t\t\t{/* Loading more indicator */}\n\t\t\t\t<LoadingMore\n\t\t\t\t\tisLoading={!!isLoadingMore}\n\t\t\t\t\ttext={strings.loadingMore}\n\t\t\t\t/>\n\n\t\t\t\t{/* Apply / cancel footer (multi-select with applyButton). */}\n\t\t\t\t{!!applyFooter && (\n\t\t\t\t\t<div className=\"flex items-center justify-end gap-2 border-t border-border/60 px-2 py-1.5\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\tbuttonStyle=\"ghost\"\n\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\tapplyFooter.onCancel();\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{applyFooter.cancelLabel}\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\tapplyFooter.onApply();\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{applyFooter.applyLabel}\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</ComboboxPopup>\n\t\t</ComboboxPositioner>\n\t);\n\n\tif (portalContainer) {\n\t\treturn <ComboboxPortal container={portalContainer}>{content}</ComboboxPortal>;\n\t}\n\n\treturn <ComboboxPortal>{content}</ComboboxPortal>;\n}\n\nComboboxDropdown.displayName = 'ComboboxDropdown';\n","/**\n * ErrorMessage Component\n */\n\nimport * as React from 'react';\nimport { cn } from '@/lib/utils';\nimport type { ComboboxSize } from '../types';\n\nexport interface ErrorMessageProps {\n\terror?: string;\n\tsize: ComboboxSize;\n\tclassName?: string;\n}\n\nconst sizeClasses: Record<ComboboxSize, string> = {\n\tsm: 'text-xs mt-1',\n\tmd: 'text-sm mt-1.5',\n\tlg: 'text-base mt-2',\n};\n\nexport function ErrorMessage({\n\terror,\n\tsize,\n\tclassName,\n}: ErrorMessageProps): React.ReactElement | null {\n\tif (!error) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<p\n\t\t\tclassName={cn('error-message--component', 'text-destructive', sizeClasses[size], className)}\n\t\t\trole=\"alert\"\n\t\t\taria-live=\"polite\"\n\t\t>\n\t\t\t{error}\n\t\t</p>\n\t);\n}\n\nErrorMessage.displayName = 'ErrorMessage';\n","/**\n * HighlightedText Component\n */\n\nimport * as React from 'react';\n\nexport interface HighlightedTextProps {\n\ttext: string;\n\thighlight: string;\n\thighlightClassName?: string;\n}\n\nfunction escapeRegExp(str: string): string {\n\treturn str.replace(/[$()*+.?[\\\\\\]^{|}]/g, '\\\\$&');\n}\n\nexport function HighlightedText({\n\ttext,\n\thighlight,\n\thighlightClassName = 'bg-yellow-200 dark:bg-yellow-800 rounded-sm px-0.5',\n}: HighlightedTextProps): React.ReactNode {\n\tif (!highlight.trim()) {\n\t\treturn text;\n\t}\n\n\tconst regex = new RegExp(`(${escapeRegExp(highlight)})`, 'gi');\n\tconst parts = text.split(regex);\n\tlet cursor = 0;\n\n\treturn (\n\t\t<>\n\t\t\t{parts.map((part, index) => {\n\t\t\t\tconst isMatch = index % 2 === 1;\n\t\t\t\tconst key = String(cursor);\n\t\t\t\tcursor += part.length;\n\n\t\t\t\tif (isMatch) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<mark key={key} className={highlightClassName}>\n\t\t\t\t\t\t\t{part}\n\t\t\t\t\t\t</mark>\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\treturn <span key={key}>{part}</span>;\n\t\t\t})}\n\t\t</>\n\t);\n}\n\nHighlightedText.displayName = 'HighlightedText';\n","/**\n * Hook for debounced search functionality\n */\n\nimport { useEffect, useRef } from 'react';\nimport { DEFAULT_DEBOUNCE_MS, DEFAULT_MIN_SEARCH_LENGTH } from '../constants';\n\nexport interface UseDebouncedSearchOptions {\n\tsearchValue: string;\n\tonSearch: ((value: string) => void) | undefined;\n\tdebounceMs?: number;\n\tminSearchLength?: number;\n}\n\nexport function useDebouncedSearch({\n\tsearchValue,\n\tonSearch,\n\tdebounceMs = DEFAULT_DEBOUNCE_MS,\n\tminSearchLength = DEFAULT_MIN_SEARCH_LENGTH,\n}: UseDebouncedSearchOptions): void {\n\tconst timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n\tuseEffect(() => {\n\t\tif (!onSearch) return;\n\n\t\tif (timeoutRef.current) {\n\t\t\tclearTimeout(timeoutRef.current);\n\t\t}\n\n\t\tconst trimmed = searchValue.trim();\n\t\tif (trimmed.length >= minSearchLength) {\n\t\t\ttimeoutRef.current = setTimeout(() => {\n\t\t\t\tonSearch(trimmed);\n\t\t\t}, debounceMs);\n\t\t}\n\n\t\treturn () => {\n\t\t\tif (timeoutRef.current) {\n\t\t\t\tclearTimeout(timeoutRef.current);\n\t\t\t}\n\t\t};\n\t}, [searchValue, onSearch, debounceMs, minSearchLength]);\n}\n","/**\n * Hook for grouping items by category\n */\n\nimport { useMemo } from 'react';\n\nexport interface UseGroupedItemsOptions<T> {\n\titems: T[];\n\tgetItemGroup: ((item: T) => string) | undefined;\n}\n\nexport type GroupedItemsResult<T> = Map<string, T[]> | null;\n\nexport function useGroupedItems<T>({\n\titems,\n\tgetItemGroup,\n}: UseGroupedItemsOptions<T>): GroupedItemsResult<T> {\n\treturn useMemo(() => {\n\t\tif (!getItemGroup) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst groups = new Map<string, T[]>();\n\n\t\tfor (const item of items) {\n\t\t\tconst groupKey = getItemGroup(item);\n\t\t\tconst existing = groups.get(groupKey);\n\n\t\t\tif (existing) {\n\t\t\t\texisting.push(item);\n\t\t\t} else {\n\t\t\t\tgroups.set(groupKey, [item]);\n\t\t\t}\n\t\t}\n\n\t\treturn groups;\n\t}, [items, getItemGroup]);\n}\n","/**\n * Hook for infinite scroll / load more functionality\n */\n\nimport { useCallback, useEffect, useRef } from 'react';\nimport {\n\tLOAD_MORE_THRESHOLD,\n\tLOAD_MORE_DEBOUNCE_MS,\n\tLOAD_MORE_COOLDOWN_MS,\n} from '../constants';\n\nexport interface UseLoadMoreOptions {\n\thasMore: boolean | undefined;\n\tonLoadMore: (() => void) | undefined;\n\tisLoadingMore: boolean | undefined;\n}\n\nexport interface UseLoadMoreReturn {\n\thandleScroll: (event: Event) => void;\n}\n\nexport function useLoadMore({\n\thasMore,\n\tonLoadMore,\n\tisLoadingMore,\n}: UseLoadMoreOptions): UseLoadMoreReturn {\n\tconst isLoadingRef = useRef(false);\n\tconst debounceRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n\tconst handleScroll = useCallback(\n\t\t(event: Event) => {\n\t\t\tif (!hasMore || !onLoadMore || isLoadingMore || isLoadingRef.current) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst target = event.target as HTMLElement;\n\t\t\tconst { scrollHeight, scrollTop, clientHeight } = target;\n\t\t\tconst scrollPercentage = (scrollTop + clientHeight) / scrollHeight;\n\n\t\t\tif (scrollPercentage >= LOAD_MORE_THRESHOLD) {\n\t\t\t\tif (debounceRef.current) {\n\t\t\t\t\tclearTimeout(debounceRef.current);\n\t\t\t\t}\n\n\t\t\t\tdebounceRef.current = setTimeout(() => {\n\t\t\t\t\tisLoadingRef.current = true;\n\t\t\t\t\tonLoadMore();\n\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tisLoadingRef.current = false;\n\t\t\t\t\t}, LOAD_MORE_COOLDOWN_MS);\n\t\t\t\t}, LOAD_MORE_DEBOUNCE_MS);\n\t\t\t}\n\t\t},\n\t\t[hasMore, onLoadMore, isLoadingMore]\n\t);\n\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tif (debounceRef.current) {\n\t\t\t\tclearTimeout(debounceRef.current);\n\t\t\t}\n\t\t};\n\t}, []);\n\n\treturn { handleScroll };\n}\n","/**\n * Core hook for Enhanced Combobox components\n *\n * Extracts shared logic between single and multiple selection variants\n * to reduce duplication and ensure consistent behavior.\n */\n\nimport { PlusIcon } from 'lucide-react';\nimport * as React from 'react';\nimport { useRef, useMemo, useEffect, useCallback } from 'react';\nimport { Text } from '@/components/typography';\nimport { useStrings, type StringsProp } from '@/lib/strings';\n\nimport { HighlightedText } from '../components/highlighted-text';\nimport { defaultComboboxStrings } from '../combobox.strings';\nimport {\n\tDEFAULT_MIN_SEARCH_LENGTH,\n\tDEFAULT_DEBOUNCE_MS,\n\tisCreateOption,\n\tgetCreateOptionValue,\n\tcreateCreateOption,\n} from '../constants';\nimport type { ComboboxStrings, BaseComboboxProps } from '../types';\nimport { useDebouncedSearch } from './use-debounced-search';\nimport { useGroupedItems } from './use-grouped-items';\nimport { useLoadMore } from './use-load-more';\n\nimport { cn } from '@/lib/utils';\n// ============================================================================\n// Types\n// ============================================================================\n\nexport interface UseEnhancedComboboxCoreOptions<T> extends BaseComboboxProps<T> {\n\t/** Items that should always be included (selected items) */\n\tensuredItems?: T[];\n}\n\nexport interface UseEnhancedComboboxCoreReturn<T> {\n\t// Resolved values\n\tstrings: ComboboxStrings;\n\tgetKey: (item: T) => string;\n\ttrimmedSearch: string;\n\n\t// Refs\n\tlistRef: React.RefObject<HTMLDivElement | null>;\n\n\t// Items\n\tbaseItems: T[];\n\tallItems: T[];\n\tgroupedItems: Map<string, T[]> | null;\n\tcreateOptionItem: T | null;\n\n\t// Display state\n\tshowStatus: boolean;\n\tshowEmpty: boolean;\n\tshowCreateOption: boolean;\n\n\t// Handlers\n\trenderItemContent: (item: T) => React.ReactNode;\n\titemToStringLabel: (item: T) => string;\n\tgetItemReactKey: (item: T) => string;\n\n\t// Scroll handling\n\thandleScroll: (event: Event) => void;\n}\n\n// ============================================================================\n// Hook Implementation\n// ============================================================================\n\nfunction useComboboxStrings(custom?: StringsProp<ComboboxStrings>): ComboboxStrings {\n\treturn useStrings(defaultComboboxStrings, custom);\n}\n\nfunction hasExactMatch<T>(\n\titems: T[],\n\tsearchValue: string,\n\tgetItemLabel: (item: T) => string\n): boolean {\n\tconst normalizedSearch = searchValue.toLowerCase();\n\treturn items.some(\n\t\t(item) => getItemLabel(item).toLowerCase() === normalizedSearch\n\t);\n}\n\nexport function useEnhancedComboboxCore<T>({\n\t// Core props\n\titems,\n\tsearchValue,\n\tgetItemLabel,\n\tgetItemKey,\n\tisLoading = false,\n\tminSearchLength = DEFAULT_MIN_SEARCH_LENGTH,\n\tstrings: stringsProp,\n\trenderItem,\n\n\t// Debounced Search\n\tonSearch,\n\tdebounceMs = DEFAULT_DEBOUNCE_MS,\n\n\t// Creatable\n\tcreatable,\n\tonCreate,\n\n\t// Grouped Items\n\tgetItemGroup,\n\n\t// Load More\n\thasMore,\n\tonLoadMore,\n\tisLoadingMore,\n\n\t// Highlight Match\n\thighlightMatch,\n\n\t\t// Ensured items (selected items that should always be included)\n\tensuredItems = [],\n}: UseEnhancedComboboxCoreOptions<T>): UseEnhancedComboboxCoreReturn<T> {\n\t// -------------------------------------------------------------------------\n\t// Setup\n\t// -------------------------------------------------------------------------\n\n\tconst strings = useComboboxStrings(stringsProp);\n\tconst getKey = getItemKey ?? getItemLabel;\n\tconst listRef = useRef<HTMLDivElement | null>(null);\n\tconst trimmedSearch = searchValue.trim();\n\n\t// -------------------------------------------------------------------------\n\t// Hooks\n\t// -------------------------------------------------------------------------\n\n\tuseDebouncedSearch({\n\t\tsearchValue,\n\t\tonSearch,\n\t\tdebounceMs,\n\t\tminSearchLength,\n\t});\n\n\tconst { handleScroll } = useLoadMore({\n\t\thasMore,\n\t\tonLoadMore,\n\t\tisLoadingMore,\n\t});\n\n\t// Attach scroll listener\n\tuseEffect(() => {\n\t\tconst listEl = listRef.current;\n\t\tif (!listEl || !hasMore || !onLoadMore) return;\n\n\t\tlistEl.addEventListener('scroll', handleScroll);\n\t\treturn () => listEl.removeEventListener('scroll', handleScroll);\n\t}, [handleScroll, hasMore, onLoadMore]);\n\n\t// -------------------------------------------------------------------------\n\t// Computed Values\n\t// -------------------------------------------------------------------------\n\n\t// Merge ensured items with fetched items\n\tconst baseItems = useMemo(() => {\n\t\tif (ensuredItems.length === 0) return items;\n\n\t\tconst merged = [...ensuredItems];\n\t\titems.forEach((item) => {\n\t\t\tconst itemKey = getKey(item);\n\t\t\tif (!ensuredItems.some((ensured) => getKey(ensured) === itemKey)) {\n\t\t\t\tmerged.push(item);\n\t\t\t}\n\t\t});\n\t\treturn merged;\n\t}, [items, ensuredItems, getKey]);\n\n\t// Group items if grouping is enabled\n\tconst groupedItems = useGroupedItems({\n\t\titems: baseItems,\n\t\tgetItemGroup,\n\t});\n\n\t// Determine if create option should be shown\n\tconst showCreateOption = useMemo(() => {\n\t\tif (!creatable || !onCreate) return false;\n\t\tif (trimmedSearch.length < minSearchLength) return false;\n\t\treturn !hasExactMatch(baseItems, trimmedSearch, getItemLabel);\n\t}, [creatable, onCreate, trimmedSearch, minSearchLength, baseItems, getItemLabel]);\n\n\tconst createOptionItem = useMemo(() => {\n\t\tif (!showCreateOption) return null;\n\t\treturn createCreateOption<T>(trimmedSearch);\n\t}, [showCreateOption, trimmedSearch]);\n\n\t// Build final items array with create option\n\tconst allItems = useMemo(() => {\n\t\tif (createOptionItem) return [...baseItems, createOptionItem];\n\t\treturn baseItems;\n\t}, [baseItems, createOptionItem]);\n\n\t// Status display conditions\n\tconst showStatus = isLoading || trimmedSearch.length < minSearchLength;\n\tconst showEmpty =\n\t\t!isLoading &&\n\t\ttrimmedSearch.length >= minSearchLength &&\n\t\titems.length === 0 &&\n\t\t!showCreateOption;\n\n\t// -------------------------------------------------------------------------\n\t// Handlers\n\t// -------------------------------------------------------------------------\n\n\tconst renderItemContent = useCallback(\n\t\t(item: T): React.ReactNode => {\n\t\t\t// Handle create option\n\t\t\tif (isCreateOption(item)) {\n\t\t\t\tconst value = getCreateOptionValue(item);\n\t\t\t\treturn (\n\t\t\t\t\t<span className={cn('use-enhanced-combobox-core--component', 'flex items-center gap-2')}>\n\t\t\t\t\t\t<PlusIcon className=\"size-4\" />\n\t\t\t\t\t\t{strings.createNew.includes('{value}') ? (\n\t\t\t\t\t\t\tstrings.createNew.replace('{value}', value)\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span className=\"inline-flex items-center gap-1\">\n\t\t\t\t\t\t\t\t<span>{strings.createNew}</span>\n\t\t\t\t\t\t\t\t<Text tag=\"span\" weight=\"medium\">{value}</Text>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</span>\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Custom renderer takes precedence\n\t\t\tif (renderItem) {\n\t\t\t\treturn renderItem(item);\n\t\t\t}\n\n\t\t\t// Default rendering with optional highlighting\n\t\t\tconst label = getItemLabel(item);\n\t\t\tif (highlightMatch && trimmedSearch) {\n\t\t\t\treturn <HighlightedText text={label} highlight={trimmedSearch} />;\n\t\t\t}\n\t\t\treturn label;\n\t\t},\n\t\t[strings.createNew, renderItem, getItemLabel, highlightMatch, trimmedSearch]\n\t);\n\n\tconst itemToStringLabel = useCallback(\n\t\t(item: T): string => {\n\t\t\tif (isCreateOption(item)) {\n\t\t\t\treturn getCreateOptionValue(item);\n\t\t\t}\n\t\t\treturn getItemLabel(item);\n\t\t},\n\t\t[getItemLabel]\n\t);\n\n\tconst getItemReactKey = useCallback(\n\t\t(item: T): string => {\n\t\t\tif (isCreateOption(item)) return `__create__:${getCreateOptionValue(item)}`;\n\t\t\treturn String(getKey(item));\n\t\t},\n\t\t[getKey]\n\t);\n\n\treturn {\n\t\tstrings,\n\t\tgetKey,\n\t\ttrimmedSearch,\n\t\tlistRef,\n\t\tbaseItems,\n\t\tallItems,\n\t\tgroupedItems,\n\t\tcreateOptionItem,\n\t\tshowStatus,\n\t\tshowEmpty,\n\t\tshowCreateOption,\n\t\trenderItemContent,\n\t\titemToStringLabel,\n\t\tgetItemReactKey,\n\t\thandleScroll,\n\t};\n}\n","/**\n * Enhanced Combobox Components\n *\n * A feature-rich, API-driven combobox built on Base UI with shadcn styling.\n * Supports single and multiple selection, form integration, debounced search,\n * grouping, pagination, and more.\n *\n * This version uses shared hooks and components to eliminate duplication\n * between single and multiple selection variants.\n */\n\nimport * as React from 'react';\nimport { useRef, useCallback, useEffect, useState } from 'react';\n\nimport {\n\tCombobox as BaseCombobox,\n\tComboboxInputTrigger,\n\tComboboxChips,\n\tComboboxChip,\n\tComboboxChipsInput,\n} from '@/components/ui/combobox';\nimport { useFormsConfig, type FormControlSize } from '@/lib/ui-provider';\n\nimport { ComboboxDropdown } from './components/combobox-dropdown';\nimport { ErrorMessage } from './components/error-message';\nimport {\n\tDEFAULT_MIN_SEARCH_LENGTH,\n\tDEFAULT_SIZE,\n\tisCreateOption,\n\tgetCreateOptionValue,\n} from './constants';\n\nimport { useEnhancedComboboxCore } from './hooks/use-enhanced-combobox-core';\nimport type {\n\tEnhancedComboboxProps,\n\tEnhancedComboboxMultipleProps,\n\tComboboxSize,\n} from './types';\n\nconst formControlSizeToComboboxSize: Record<FormControlSize, ComboboxSize> = {\n\tsm: 'sm',\n\tbase: 'md',\n\tlg: 'lg',\n};\n\nfunction resolveComboboxSize(\n\tsizeProp: ComboboxSize | undefined,\n\tdefaultControlSize: FormControlSize | undefined,\n): ComboboxSize {\n\treturn sizeProp ?? formControlSizeToComboboxSize[defaultControlSize ?? 'sm'] ?? DEFAULT_SIZE;\n}\n\n// ============================================================================\n// Single Selection Component\n// ============================================================================\n\nexport function EnhancedCombobox<T>({\n\t// Core props\n\titems,\n\tselectedValue,\n\tonSelectedValueChange,\n\tsearchValue,\n\tonSearchValueChange,\n\tgetItemLabel,\n\tgetItemKey,\n\tisLoading = false,\n\tminSearchLength = DEFAULT_MIN_SEARCH_LENGTH,\n\tstrings: stringsProp,\n\tdisabled = false,\n\tclassName,\n\trenderItem,\n\tportalContainer,\n\n\t// Form Integration\n\tname,\n\terror,\n\trequired,\n\tonBlur,\n\n\t// Debounced Search\n\tonSearch,\n\tdebounceMs,\n\n\t// Creatable\n\tcreatable,\n\tonCreate,\n\n\t// Grouped Items\n\tgetItemGroup,\n\trenderGroupLabel,\n\n\t// Load More\n\thasMore,\n\tonLoadMore,\n\tisLoadingMore,\n\n\t// Disable individual items\n\tgetItemDisabled,\n\n\t// Highlight Match\n\thighlightMatch,\n\n\t// Size\n\tsize: sizeProp,\n\n\t// Controlled Open\n\topen,\n\tonOpenChange,\n}: EnhancedComboboxProps<T>): React.ReactElement {\n\tconst { defaultControlSize } = useFormsConfig();\n\tconst size = resolveComboboxSize(sizeProp, defaultControlSize);\n\n\t// Use shared core hook\n\tconst core = useEnhancedComboboxCore({\n\t\titems,\n\t\tsearchValue,\n\t\tonSearchValueChange,\n\t\tgetItemLabel,\n\t\tgetItemKey,\n\t\tisLoading,\n\t\tminSearchLength,\n\t\tstrings: stringsProp,\n\t\trenderItem,\n\t\tonSearch,\n\t\tdebounceMs,\n\t\tcreatable,\n\t\tonCreate,\n\t\tgetItemGroup,\n\t\thasMore,\n\t\tonLoadMore,\n\t\tisLoadingMore,\n\t\thighlightMatch,\n\t\tsize,\n\t\t// Include selected value in items list\n\t\tensuredItems: selectedValue ? [selectedValue] : [],\n\t});\n\n\t// Track open state so we can show the selected label when closed\n\tconst [isOpen, setIsOpen] = useState(false);\n\tconst handleOpenChange = useCallback(\n\t\t(nextOpen: boolean) => {\n\t\t\tsetIsOpen(nextOpen);\n\t\t\tif (!nextOpen) {\n\t\t\t\t// Clear search when closing so next open starts fresh\n\t\t\t\tonSearchValueChange('');\n\t\t\t}\n\t\t\tonOpenChange?.(nextOpen);\n\t\t},\n\t\t[onOpenChange, onSearchValueChange],\n\t);\n\n\t// When closed with a selected value, show the label; when open, show search text\n\tconst displayInputValue = isOpen\n\t\t? searchValue\n\t\t: (selectedValue ? core.itemToStringLabel(selectedValue) : '');\n\n\t// Handle value change, including create option\n\tconst handleValueChange = useCallback(\n\t\t(value: T | null): void => {\n\t\t\tif (value && isCreateOption(value)) {\n\t\t\t\tconst inputValue = getCreateOptionValue(value);\n\t\t\t\tonCreate?.(inputValue);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tonSelectedValueChange(value);\n\t\t},\n\t\t[onSelectedValueChange, onCreate]\n\t);\n\n\treturn (\n\t\t<div className=\"enhanced-combobox--component\">\n\t\t\t<BaseCombobox\n\t\t\t\titems={core.allItems}\n\t\t\t\tvalue={selectedValue}\n\t\t\t\tonValueChange={handleValueChange}\n\t\t\t\tinputValue={displayInputValue}\n\t\t\t\tonInputValueChange={(value, { reason }) => {\n\t\t\t\t\tif (reason === 'item-press') {\n\t\t\t\t\t\tonSearchValueChange('');\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tonSearchValueChange(value);\n\t\t\t\t}}\n\t\t\t\titemToStringLabel={core.itemToStringLabel}\n\t\t\t\tdisabled={disabled}\n\t\t\t\tfilter={null}\n\t\t\t\tname={name}\n\t\t\t\trequired={required}\n\t\t\t\topen={open}\n\t\t\t\tonOpenChange={handleOpenChange}\n\t\t\t>\n\t\t\t\t<ComboboxInputTrigger\n\t\t\t\t\tplaceholder={core.strings.placeholder}\n\t\t\t\t\tshowClear\n\t\t\t\t\tclassName={className}\n\t\t\t\t\tsize={size}\n\t\t\t\t\terror={!!error}\n\t\t\t\t\taria-invalid={!!error}\n\t\t\t\t\taria-required={required}\n\t\t\t\t\tonBlur={onBlur}\n\t\t\t\t/>\n\n\t\t\t\t<ComboboxDropdown\n\t\t\t\t\tisLoading={isLoading}\n\t\t\t\t\tshowStatus={core.showStatus}\n\t\t\t\t\tshowEmpty={core.showEmpty}\n\t\t\t\t\tsearchValue={searchValue}\n\t\t\t\t\tminSearchLength={minSearchLength}\n\t\t\t\t\titems={items}\n\t\t\t\t\tgroupedItems={core.groupedItems}\n\t\t\t\t\tcreateOptionItem={core.createOptionItem}\n\t\t\t\t\trenderItemContent={core.renderItemContent}\n\t\t\t\t\tgetItemReactKey={core.getItemReactKey}\n\t\t\t\t\tgetItemDisabled={getItemDisabled}\n\t\t\t\t\trenderGroupLabel={renderGroupLabel}\n\t\t\t\t\tisLoadingMore={isLoadingMore}\n\t\t\t\t\tstrings={core.strings}\n\t\t\t\t\tsize={size}\n\t\t\t\t\tportalContainer={portalContainer}\n\t\t\t\t\tlistRef={core.listRef}\n\t\t\t\t/>\n\t\t\t</BaseCombobox>\n\n\t\t\t<ErrorMessage error={error} size={size} />\n\t\t</div>\n\t);\n}\n\n// ============================================================================\n// Multiple Selection Component\n// ============================================================================\n\nexport function EnhancedComboboxMultiple<T>({\n\t// Core props\n\titems,\n\tselectedValues,\n\tonSelectedValuesChange,\n\tsearchValue,\n\tonSearchValueChange,\n\tgetItemLabel,\n\tgetItemKey,\n\tisLoading = false,\n\tminSearchLength = DEFAULT_MIN_SEARCH_LENGTH,\n\tstrings: stringsProp,\n\tdisabled = false,\n\tclassName,\n\trenderItem,\n\tportalContainer,\n\n\t// Form Integration\n\tname,\n\terror,\n\trequired,\n\tonBlur,\n\n\t// Debounced Search\n\tonSearch,\n\tdebounceMs,\n\n\t// Creatable\n\tcreatable,\n\tonCreate,\n\n\t// Grouped Items\n\tgetItemGroup,\n\trenderGroupLabel,\n\n\t// Load More\n\thasMore,\n\tonLoadMore,\n\tisLoadingMore,\n\n\t// Disable individual items\n\tgetItemDisabled,\n\n\t// Highlight Match\n\thighlightMatch,\n\n\t// Size\n\tsize: sizeProp,\n\n\t// Controlled Open\n\topen,\n\tonOpenChange,\n\n\t// Behaviour\n\tcloseOnSelect = false,\n\tapplyButton = false,\n\tonApply,\n\tonCancel,\n}: EnhancedComboboxMultipleProps<T>): React.ReactElement {\n\tconst { defaultControlSize } = useFormsConfig();\n\tconst size = resolveComboboxSize(sizeProp, defaultControlSize);\n\tconst containerRef = useRef<HTMLDivElement | null>(null);\n\tconst getKey = getItemKey ?? getItemLabel;\n\n\t// Draft state — only used in `applyButton` mode. Tracks the user's\n\t// in-progress selection so we can commit it on Apply or revert on\n\t// Cancel. When apply mode is OFF, we pass selections through immediately.\n\tconst [draftValues, setDraftValues] = useState<T[]>(selectedValues);\n\tconst [internalOpen, setInternalOpen] = useState(false);\n\tconst isOpenControlled = open !== undefined;\n\tconst resolvedOpen = isOpenControlled ? open : internalOpen;\n\n\tuseEffect(() => {\n\t\tif (applyButton) setDraftValues(selectedValues);\n\t}, [applyButton, selectedValues]);\n\n\tconst setOpen = useCallback(\n\t\t(next: boolean) => {\n\t\t\tif (!isOpenControlled) setInternalOpen(next);\n\t\t\tonOpenChange?.(next);\n\t\t},\n\t\t[isOpenControlled, onOpenChange],\n\t);\n\n\t// Use shared core hook\n\tconst core = useEnhancedComboboxCore({\n\t\titems,\n\t\tsearchValue,\n\t\tonSearchValueChange,\n\t\tgetItemLabel,\n\t\tgetItemKey,\n\t\tisLoading,\n\t\tminSearchLength,\n\t\tstrings: stringsProp,\n\t\trenderItem,\n\t\tonSearch,\n\t\tdebounceMs,\n\t\tcreatable,\n\t\tonCreate,\n\t\tgetItemGroup,\n\t\thasMore,\n\t\tonLoadMore,\n\t\tisLoadingMore,\n\t\thighlightMatch,\n\t\tsize,\n\t\t// Include selected values in items list\n\t\tensuredItems: selectedValues,\n\t});\n\n\t// Handle value change, filtering out create options\n\tconst handleValueChange = useCallback(\n\t\t(values: T[]): void => {\n\t\t\tconst regularValues: T[] = [];\n\t\t\tlet createValue: string | null = null;\n\n\t\t\tfor (const value of values) {\n\t\t\t\tif (isCreateOption(value)) {\n\t\t\t\t\tcreateValue = getCreateOptionValue(value);\n\t\t\t\t} else {\n\t\t\t\t\tregularValues.push(value);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (createValue) {\n\t\t\t\tonCreate?.(createValue);\n\t\t\t}\n\n\t\t\tconst next = (regularValues.length !== values.length || !createValue) ? regularValues : null;\n\t\t\tif (next) {\n\t\t\t\tif (applyButton) {\n\t\t\t\t\tsetDraftValues(next);\n\t\t\t\t} else {\n\t\t\t\t\tonSelectedValuesChange(next);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (closeOnSelect) {\n\t\t\t\tsetOpen(false);\n\t\t\t}\n\t\t},\n\t\t[onSelectedValuesChange, onCreate, applyButton, closeOnSelect, setOpen],\n\t);\n\n\tconst handleApply = useCallback(() => {\n\t\tif (applyButton) onSelectedValuesChange(draftValues);\n\t\tonApply?.();\n\t\tsetOpen(false);\n\t}, [applyButton, draftValues, onApply, onSelectedValuesChange, setOpen]);\n\n\tconst handleCancel = useCallback(() => {\n\t\tif (applyButton) setDraftValues(selectedValues);\n\t\tonCancel?.();\n\t\tsetOpen(false);\n\t}, [applyButton, selectedValues, onCancel, setOpen]);\n\n\tconst visibleValues = applyButton ? draftValues : selectedValues;\n\tconst chipsPlaceholder = visibleValues.length > 0 ? undefined : core.strings.placeholder;\n\n\treturn (\n\t\t<div>\n\t\t\t<BaseCombobox\n\t\t\t\titems={core.allItems}\n\t\t\t\tmultiple\n\t\t\t\tvalue={visibleValues}\n\t\t\t\tonValueChange={handleValueChange}\n\t\t\t\tinputValue={searchValue}\n\t\t\t\tonInputValueChange={(value, { reason }) => {\n\t\t\t\t\tif (reason === 'item-press') {\n\t\t\t\t\t\tonSearchValueChange('');\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tonSearchValueChange(value);\n\t\t\t\t}}\n\t\t\t\titemToStringLabel={core.itemToStringLabel}\n\t\t\t\tdisabled={disabled}\n\t\t\t\tfilter={null}\n\t\t\t\tname={name}\n\t\t\t\trequired={required}\n\t\t\t\topen={resolvedOpen}\n\t\t\t\tonOpenChange={(next) => {\n\t\t\t\t\t// In apply-button mode, closing without committing should\n\t\t\t\t\t// revert the draft so the next open starts clean.\n\t\t\t\t\tif (!next && applyButton) setDraftValues(selectedValues);\n\t\t\t\t\tsetOpen(next);\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<ComboboxChips\n\t\t\t\t\tref={containerRef}\n\t\t\t\t\tclassName={className}\n\t\t\t\t\tsize={size}\n\t\t\t\t\terror={!!error}\n\t\t\t\t>\n\t\t\t\t\t{visibleValues.map((item) => (\n\t\t\t\t\t\t<ComboboxChip key={getKey(item)}>\n\t\t\t\t\t\t\t{getItemLabel(item)}\n\t\t\t\t\t\t</ComboboxChip>\n\t\t\t\t\t))}\n\t\t\t\t\t<ComboboxChipsInput\n\t\t\t\t\t\tplaceholder={chipsPlaceholder}\n\t\t\t\t\t\taria-invalid={!!error}\n\t\t\t\t\t\taria-required={required}\n\t\t\t\t\t\tonBlur={onBlur}\n\t\t\t\t\t/>\n\t\t\t\t</ComboboxChips>\n\n\t\t\t\t<ComboboxDropdown\n\t\t\t\t\tisLoading={isLoading}\n\t\t\t\t\tshowStatus={core.showStatus}\n\t\t\t\t\tshowEmpty={core.showEmpty}\n\t\t\t\t\tsearchValue={searchValue}\n\t\t\t\t\tminSearchLength={minSearchLength}\n\t\t\t\t\titems={items}\n\t\t\t\t\tgroupedItems={core.groupedItems}\n\t\t\t\t\tcreateOptionItem={core.createOptionItem}\n\t\t\t\t\trenderItemContent={core.renderItemContent}\n\t\t\t\t\tgetItemReactKey={core.getItemReactKey}\n\t\t\t\t\tgetItemDisabled={getItemDisabled}\n\t\t\t\t\trenderGroupLabel={renderGroupLabel}\n\t\t\t\t\tisLoadingMore={isLoadingMore}\n\t\t\t\t\tstrings={core.strings}\n\t\t\t\t\tsize={size}\n\t\t\t\t\tportalContainer={portalContainer}\n\t\t\t\t\tlistRef={core.listRef}\n\t\t\t\t\tanchor={containerRef}\n\t\t\t\t\tapplyFooter={applyButton ? {\n\t\t\t\t\t\tapplyLabel: core.strings.apply,\n\t\t\t\t\t\tcancelLabel: core.strings.cancel,\n\t\t\t\t\t\tonApply: handleApply,\n\t\t\t\t\t\tonCancel: handleCancel,\n\t\t\t\t\t} : undefined}\n\t\t\t\t/>\n\t\t\t</BaseCombobox>\n\n\t\t\t<ErrorMessage error={error} size={size} />\n\t\t</div>\n\t);\n}\n\n// ============================================================================\n// Legacy Aliases\n// ============================================================================\n\n/** @deprecated Use EnhancedCombobox instead */\nexport const ApiCombobox = EnhancedCombobox;\n\n/** @deprecated Use EnhancedComboboxMultiple instead */\nexport const ApiComboboxMultiple = EnhancedComboboxMultiple;\n\nEnhancedCombobox.displayName = 'EnhancedCombobox';\nEnhancedComboboxMultiple.displayName = 'EnhancedComboboxMultiple';\n"],"mappings":"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"}
@@ -1,39 +0,0 @@
1
- import { cn as e } from "../lib/utils.js";
2
- import { a as t, n, o as r, r as i, t as a } from "./command-jKbwFRtS.js";
3
- import "react";
4
- import { jsx as o } from "react/jsx-runtime";
5
- //#region src/components/base/command/command.tsx
6
- function s({ className: t, ...n }) {
7
- return /* @__PURE__ */ o(a, {
8
- className: e("command--component", "rounded-md! p-0 bg-transparent", t),
9
- ...n
10
- });
11
- }
12
- function c({ className: t, ...n }) {
13
- return /* @__PURE__ */ o(r, {
14
- className: e("max-h-72 px-1 py-1", t),
15
- ...n
16
- });
17
- }
18
- function l({ className: t, ...n }) {
19
- return /* @__PURE__ */ o(i, {
20
- className: e("p-0 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:pt-1.5 [&_[cmdk-group-heading]]:pb-0.5 [&_[cmdk-group-heading]]:text-[length:var(--text-xxs)] [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:uppercase [&_[cmdk-group-heading]]:tracking-wider [&_[cmdk-group-heading]]:text-muted-foreground", t),
21
- ...n
22
- });
23
- }
24
- function u({ className: n, ...r }) {
25
- return /* @__PURE__ */ o(t, {
26
- className: e("px-2 py-(--row-py) gap-2 rounded-md text-[length:var(--text-xs)]", n),
27
- ...r
28
- });
29
- }
30
- function d({ className: t, ...r }) {
31
- return /* @__PURE__ */ o(n, {
32
- className: e("py-4 text-center text-[length:var(--text-xs)] text-muted-foreground", t),
33
- ...r
34
- });
35
- }
36
- //#endregion
37
- export { c as a, u as i, d as n, l as r, s as t };
38
-
39
- //# sourceMappingURL=command-BbiijN61.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"command-BbiijN61.js","names":[],"sources":["../../src/components/base/command/command.tsx"],"sourcesContent":["/**\n * Command — base wrapper around the shadcn `ui/command` (cmdk) primitive.\n *\n * What this layer adds on top of the primitive:\n * - Density-aware list-row padding via `var(--row-py)`.\n * - `xs` typography by default for items (admin-density), with the\n * primitive's typography preserved as a `density=\"default\"` variant.\n * - Tighter `Command` root padding aligned to the popover content pad.\n * - Re-exports every primitive part untouched so the compound-component\n * pattern keeps working: consumers compose\n * `<Command><CommandList><CommandGroup><CommandItem/></CommandGroup></CommandList></Command>`.\n *\n * For the recurring \"popover-with-command-list\" pattern, prefer\n * `base/popover-menu/` which composes both wrappers and adds slots.\n */\nimport * as React from 'react';\n\nimport {\n Command as CommandPrimitive,\n CommandEmpty as CommandEmptyPrimitive,\n CommandGroup as CommandGroupPrimitive,\n CommandInput,\n CommandList as CommandListPrimitive,\n CommandSeparator,\n CommandShortcut,\n CommandItem as CommandItemPrimitive,\n} from '@/components/ui/command';\nimport { cn } from '@/lib/utils';\n\ntype CommandRootProps = React.ComponentProps<typeof CommandPrimitive>;\n\nfunction Command({ className, ...props }: CommandRootProps) {\n return (\n <CommandPrimitive\n className={cn('command--component', \n // Tighter than the primitive; popover-content already pads the outer.\n 'rounded-md! p-0 bg-transparent',\n className,\n )}\n {...props}\n />\n );\n}\n\ntype CommandListProps = React.ComponentProps<typeof CommandListPrimitive>;\n\nfunction CommandList({ className, ...props }: CommandListProps) {\n return (\n <CommandListPrimitive\n className={cn('max-h-72 px-1 py-1', className)}\n {...props}\n />\n );\n}\n\ntype CommandGroupProps = React.ComponentProps<typeof CommandGroupPrimitive>;\n\nfunction CommandGroup({ className, ...props }: CommandGroupProps) {\n return (\n <CommandGroupPrimitive\n className={cn(\n 'p-0 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:pt-1.5 [&_[cmdk-group-heading]]:pb-0.5 [&_[cmdk-group-heading]]:text-[length:var(--text-xxs)] [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:uppercase [&_[cmdk-group-heading]]:tracking-wider [&_[cmdk-group-heading]]:text-muted-foreground',\n className,\n )}\n {...props}\n />\n );\n}\n\ntype CommandItemProps = React.ComponentProps<typeof CommandItemPrimitive>;\n\nfunction CommandItem({ className, ...props }: CommandItemProps) {\n return (\n <CommandItemPrimitive\n className={cn(\n // Density-tokenized vertical padding; xs typography for admin density.\n 'px-2 py-(--row-py) gap-2 rounded-md text-[length:var(--text-xs)]',\n className,\n )}\n {...props}\n />\n );\n}\n\ntype CommandEmptyProps = React.ComponentProps<typeof CommandEmptyPrimitive>;\n\nfunction CommandEmpty({ className, ...props }: CommandEmptyProps) {\n return (\n <CommandEmptyPrimitive\n className={cn('py-4 text-center text-[length:var(--text-xs)] text-muted-foreground', className)}\n {...props}\n />\n );\n}\n\nexport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n CommandShortcut,\n};\n"],"mappings":";;;;;AA+BA,SAAS,EAAQ,EAAE,cAAW,GAAG,KAA2B;AACxD,QACI,kBAAC,GAAD;EACI,WAAW,EAAG,sBAEV,kCACA,EACH;EACD,GAAI;EACN,CAAA;;AAMV,SAAS,EAAY,EAAE,cAAW,GAAG,KAA2B;AAC5D,QACI,kBAAC,GAAD;EACI,WAAW,EAAG,sBAAsB,EAAU;EAC9C,GAAI;EACN,CAAA;;AAMV,SAAS,EAAa,EAAE,cAAW,GAAG,KAA4B;AAC9D,QACI,kBAAC,GAAD;EACI,WAAW,EACP,2TACA,EACH;EACD,GAAI;EACN,CAAA;;AAMV,SAAS,EAAY,EAAE,cAAW,GAAG,KAA2B;AAC5D,QACI,kBAAC,GAAD;EACI,WAAW,EAEP,oEACA,EACH;EACD,GAAI;EACN,CAAA;;AAMV,SAAS,EAAa,EAAE,cAAW,GAAG,KAA4B;AAC9D,QACI,kBAAC,GAAD;EACI,WAAW,EAAG,uEAAuE,EAAU;EAC/F,GAAI;EACN,CAAA"}
@@ -1,2 +0,0 @@
1
- const e=require(`./chunk-D3uCBrYO.cjs`),t=require(`../lib/utils.cjs`),n=require(`./input-B2YXTHqz.cjs`);let r=require(`react`);r=e.t(r,1);let i=require(`react/jsx-runtime`),a=require(`lucide-react`),o=require(`class-variance-authority`),s=require(`cmdk`);function c({className:e,...n}){return(0,i.jsx)(`div`,{"data-slot":`input-group`,role:`group`,className:t.cn(`border-input has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[[data-slot][aria-invalid=true]]:border-destructive dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 h-9 rounded-md border shadow-xs transition-[color,box-shadow] has-[[data-slot=input-group-control]:focus-visible]:ring-[3px] has-[[data-slot][aria-invalid=true]]:ring-[3px] has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5 [[data-slot=combobox-content]_&]:focus-within:border-inherit [[data-slot=combobox-content]_&]:focus-within:ring-0 group/input-group relative flex w-full min-w-0 items-center outline-none has-[>textarea]:h-auto`,e),...n})}var l=(0,o.cva)(`text-muted-foreground h-auto gap-2 py-1.5 text-sm font-medium group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4 flex cursor-text items-center justify-center select-none`,{variants:{align:{"inline-start":`pl-2 has-[>button]:ml-[-0.25rem] has-[>kbd]:ml-[-0.15rem] order-first`,"inline-end":`pr-2 has-[>button]:mr-[-0.25rem] has-[>kbd]:mr-[-0.15rem] order-last`,"block-start":`px-2.5 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2 order-first w-full justify-start`,"block-end":`px-2.5 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2 order-last w-full justify-start`}},defaultVariants:{align:`inline-start`}});function u({className:e,align:n=`inline-start`,...r}){return(0,i.jsx)(`div`,{role:`group`,"data-slot":`input-group-addon`,"data-align":n,className:t.cn(l({align:n}),e),onClick:e=>{e.target.closest(`button`)||e.currentTarget.parentElement?.querySelector(`input`)?.focus()},...r})}(0,o.cva)(`gap-2 text-sm shadow-none flex items-center`,{variants:{size:{xs:`h-6 gap-1 rounded-[calc(var(--radius)-5px)] px-1.5 [&>svg:not([class*='size-'])]:size-3.5`,sm:``,"icon-xs":`size-6 rounded-[calc(var(--radius)-5px)] p-0 has-[>svg]:p-0`,"icon-sm":`size-8 p-0 has-[>svg]:p-0`}},defaultVariants:{size:`xs`}});function d({className:e,...r}){return(0,i.jsx)(n.t,{"data-slot":`input-group-control`,className:t.cn(`rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 flex-1`,e),...r})}function f({className:e,...n}){return(0,i.jsx)(s.Command,{"data-slot":`command`,className:t.cn(`bg-popover text-popover-foreground rounded-xl! p-1 flex size-full flex-col overflow-hidden`,e),...n})}function p({className:e,...n}){return(0,i.jsx)(`div`,{"data-slot":`command-input-wrapper`,className:`p-1 pb-0`,children:(0,i.jsxs)(c,{className:`bg-input/30 border-input/30 h-8! rounded-lg! shadow-none! *:data-[slot=input-group-addon]:pl-2!`,children:[(0,i.jsx)(s.Command.Input,{"data-slot":`command-input`,className:t.cn(`w-full text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50`,e),...n}),(0,i.jsx)(u,{children:(0,i.jsx)(a.SearchIcon,{className:`size-4 shrink-0 opacity-50`})})]})})}function m({className:e,...n}){return(0,i.jsx)(s.Command.List,{"data-slot":`command-list`,className:t.cn(`no-scrollbar max-h-72 scroll-py-1 outline-none overflow-x-hidden overflow-y-auto`,e),...n})}function h({className:e,...n}){return(0,i.jsx)(s.Command.Empty,{"data-slot":`command-empty`,className:t.cn(`py-6 text-center text-sm`,e),...n})}function g({className:e,...n}){return(0,i.jsx)(s.Command.Group,{"data-slot":`command-group`,className:t.cn(`text-foreground [&_[cmdk-group-heading]]:text-muted-foreground overflow-hidden p-1 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium`,e),...n})}function _({className:e,...n}){return(0,i.jsx)(s.Command.Separator,{"data-slot":`command-separator`,className:t.cn(`bg-border -mx-1 h-px w-auto`,e),...n})}function v({className:e,children:n,...r}){return(0,i.jsxs)(s.Command.Item,{"data-slot":`command-item`,className:t.cn(`data-[selected=true]:bg-muted data-[selected=true]:text-foreground data-[selected=true]:**:[svg]:text-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none [&_svg:not([class*='size-'])]:size-4 [[data-slot=dialog-content]_&]:rounded-lg! group/command-item data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0`,e),...r,children:[n,(0,i.jsx)(a.CheckIcon,{className:`ml-auto opacity-0 group-has-[[data-slot=command-shortcut]]/command-item:hidden group-data-[checked=true]/command-item:opacity-100`})]})}function y({className:e,...n}){return(0,i.jsx)(`span`,{"data-slot":`command-shortcut`,className:t.cn(`text-muted-foreground group-data-[selected=true]/command-item:text-foreground ml-auto text-xs tracking-widest`,e),...n})}Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return u}});
2
- //# sourceMappingURL=command-D7zTvyBJ.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"command-D7zTvyBJ.cjs","names":[],"sources":["../../src/components/ui/input-group.tsx","../../src/components/ui/command.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\nimport * as React from \"react\"\n\nimport { Button } from \"@/components/ui/button\"\nimport { Input } from \"@/components/ui/input\"\nimport { Textarea } from \"@/components/ui/textarea\"\nimport { cn } from \"@/lib/utils\"\n\nfunction InputGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"input-group\"\n role=\"group\"\n className={cn(\n \"border-input has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[[data-slot][aria-invalid=true]]:border-destructive dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 h-9 rounded-md border shadow-xs transition-[color,box-shadow] has-[[data-slot=input-group-control]:focus-visible]:ring-[3px] has-[[data-slot][aria-invalid=true]]:ring-[3px] has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5 [[data-slot=combobox-content]_&]:focus-within:border-inherit [[data-slot=combobox-content]_&]:focus-within:ring-0 group/input-group relative flex w-full min-w-0 items-center outline-none has-[>textarea]:h-auto\",\n className\n )}\n {...props}\n />\n )\n}\n\nconst inputGroupAddonVariants = cva(\n \"text-muted-foreground h-auto gap-2 py-1.5 text-sm font-medium group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4 flex cursor-text items-center justify-center select-none\",\n {\n variants: {\n align: {\n \"inline-start\": \"pl-2 has-[>button]:ml-[-0.25rem] has-[>kbd]:ml-[-0.15rem] order-first\",\n \"inline-end\": \"pr-2 has-[>button]:mr-[-0.25rem] has-[>kbd]:mr-[-0.15rem] order-last\",\n \"block-start\":\n \"px-2.5 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2 order-first w-full justify-start\",\n \"block-end\":\n \"px-2.5 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2 order-last w-full justify-start\",\n },\n },\n defaultVariants: {\n align: \"inline-start\",\n },\n }\n)\n\nfunction InputGroupAddon({\n className,\n align = \"inline-start\",\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof inputGroupAddonVariants>) {\n return (\n <div\n role=\"group\"\n data-slot=\"input-group-addon\"\n data-align={align}\n className={cn(inputGroupAddonVariants({ align }), className)}\n onClick={(e) => {\n if ((e.target as HTMLElement).closest(\"button\")) {\n return\n }\n e.currentTarget.parentElement?.querySelector(\"input\")?.focus()\n }}\n {...props}\n />\n )\n}\n\nconst inputGroupButtonVariants = cva(\n \"gap-2 text-sm shadow-none flex items-center\",\n {\n variants: {\n size: {\n xs: \"h-6 gap-1 rounded-[calc(var(--radius)-5px)] px-1.5 [&>svg:not([class*='size-'])]:size-3.5\",\n sm: \"\",\n \"icon-xs\": \"size-6 rounded-[calc(var(--radius)-5px)] p-0 has-[>svg]:p-0\",\n \"icon-sm\": \"size-8 p-0 has-[>svg]:p-0\",\n },\n },\n defaultVariants: {\n size: \"xs\",\n },\n }\n)\n\nfunction InputGroupButton({\n className,\n type = \"button\",\n variant = \"ghost\",\n size = \"xs\",\n ...props\n}: Omit<React.ComponentProps<typeof Button>, \"size\" | \"type\"> &\n VariantProps<typeof inputGroupButtonVariants> & {\n type?: \"button\" | \"submit\" | \"reset\"\n }) {\n return (\n <Button\n type={type}\n data-size={size}\n variant={variant}\n className={cn(inputGroupButtonVariants({ size }), className)}\n {...props}\n />\n )\n}\n\nfunction InputGroupText({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n className={cn(\n \"text-muted-foreground gap-2 text-sm [&_svg:not([class*='size-'])]:size-4 flex items-center [&_svg]:pointer-events-none\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction InputGroupInput({\n className,\n ...props\n}: React.ComponentProps<\"input\">) {\n return (\n <Input\n data-slot=\"input-group-control\"\n className={cn(\"rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 flex-1\", className)}\n {...props}\n />\n )\n}\n\nfunction InputGroupTextarea({\n className,\n ...props\n}: React.ComponentProps<\"textarea\">) {\n return (\n <Textarea\n data-slot=\"input-group-control\"\n className={cn(\"rounded-none border-0 bg-transparent py-2 shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 flex-1 resize-none\", className)}\n {...props}\n />\n )\n}\n\nexport {\n InputGroup,\n InputGroupAddon,\n InputGroupButton,\n InputGroupText,\n InputGroupInput,\n InputGroupTextarea,\n}\n","\"use client\"\n\nimport { Command as CommandPrimitive } from \"cmdk\"\nimport { SearchIcon, CheckIcon } from \"lucide-react\"\nimport * as React from \"react\"\n\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n} from \"@/components/ui/dialog\"\nimport {\n InputGroup,\n InputGroupAddon,\n} from \"@/components/ui/input-group\"\nimport { cn } from \"@/lib/utils\"\n\nfunction Command({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive>) {\n return (\n <CommandPrimitive\n data-slot=\"command\"\n className={cn(\n \"bg-popover text-popover-foreground rounded-xl! p-1 flex size-full flex-col overflow-hidden\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CommandDialog({\n title = \"Command Palette\",\n description = \"Search for a command to run...\",\n children,\n className,\n showCloseButton = false,\n ...props\n}: Omit<React.ComponentProps<typeof Dialog>, \"children\"> & {\n title?: string\n description?: string\n className?: string\n showCloseButton?: boolean\n children: React.ReactNode\n}) {\n return (\n <Dialog {...props}>\n <DialogHeader className=\"sr-only\">\n <DialogTitle>{title}</DialogTitle>\n <DialogDescription>{description}</DialogDescription>\n </DialogHeader>\n <DialogContent\n className={cn(\n \"rounded-xl! top-1/3 translate-y-0 overflow-hidden p-0\",\n className\n )}\n showCloseButton={showCloseButton}\n >\n {children}\n </DialogContent>\n </Dialog>\n )\n}\n\nfunction CommandInput({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Input>) {\n return (\n <div data-slot=\"command-input-wrapper\" className=\"p-1 pb-0\">\n <InputGroup className=\"bg-input/30 border-input/30 h-8! rounded-lg! shadow-none! *:data-[slot=input-group-addon]:pl-2!\">\n <CommandPrimitive.Input\n data-slot=\"command-input\"\n className={cn(\n \"w-full text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50\",\n className\n )}\n {...props}\n />\n <InputGroupAddon>\n <SearchIcon className=\"size-4 shrink-0 opacity-50\" />\n </InputGroupAddon>\n </InputGroup>\n </div>\n )\n}\n\nfunction CommandList({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.List>) {\n return (\n <CommandPrimitive.List\n data-slot=\"command-list\"\n className={cn(\n \"no-scrollbar max-h-72 scroll-py-1 outline-none overflow-x-hidden overflow-y-auto\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CommandEmpty({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Empty>) {\n return (\n <CommandPrimitive.Empty\n data-slot=\"command-empty\"\n className={cn(\"py-6 text-center text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction CommandGroup({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Group>) {\n return (\n <CommandPrimitive.Group\n data-slot=\"command-group\"\n className={cn(\"text-foreground [&_[cmdk-group-heading]]:text-muted-foreground overflow-hidden p-1 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium\", className)}\n {...props}\n />\n )\n}\n\nfunction CommandSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Separator>) {\n return (\n <CommandPrimitive.Separator\n data-slot=\"command-separator\"\n className={cn(\"bg-border -mx-1 h-px w-auto\", className)}\n {...props}\n />\n )\n}\n\nfunction CommandItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Item>) {\n return (\n <CommandPrimitive.Item\n data-slot=\"command-item\"\n className={cn(\n \"data-[selected=true]:bg-muted data-[selected=true]:text-foreground data-[selected=true]:**:[svg]:text-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none [&_svg:not([class*='size-'])]:size-4 [[data-slot=dialog-content]_&]:rounded-lg! group/command-item data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0\",\n className\n )}\n {...props}\n >\n {children}\n <CheckIcon className=\"ml-auto opacity-0 group-has-[[data-slot=command-shortcut]]/command-item:hidden group-data-[checked=true]/command-item:opacity-100\" />\n </CommandPrimitive.Item>\n )\n}\n\nfunction CommandShortcut({\n className,\n ...props\n}: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"command-shortcut\"\n className={cn(\"text-muted-foreground group-data-[selected=true]/command-item:text-foreground ml-auto text-xs tracking-widest\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Command,\n CommandDialog,\n CommandInput,\n CommandList,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandShortcut,\n CommandSeparator,\n}\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- const e=require(`./chunk-D3uCBrYO.cjs`),t=require(`../lib/utils.cjs`),n=require(`./command-D7zTvyBJ.cjs`);let r=require(`react`);r=e.t(r,1);let i=require(`react/jsx-runtime`);function a({className:e,...r}){return(0,i.jsx)(n.t,{className:t.cn(`command--component`,`rounded-md! p-0 bg-transparent`,e),...r})}function o({className:e,...r}){return(0,i.jsx)(n.o,{className:t.cn(`max-h-72 px-1 py-1`,e),...r})}function s({className:e,...r}){return(0,i.jsx)(n.r,{className:t.cn(`p-0 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:pt-1.5 [&_[cmdk-group-heading]]:pb-0.5 [&_[cmdk-group-heading]]:text-[length:var(--text-xxs)] [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:uppercase [&_[cmdk-group-heading]]:tracking-wider [&_[cmdk-group-heading]]:text-muted-foreground`,e),...r})}function c({className:e,...r}){return(0,i.jsx)(n.a,{className:t.cn(`px-2 py-(--row-py) gap-2 rounded-md text-[length:var(--text-xs)]`,e),...r})}function l({className:e,...r}){return(0,i.jsx)(n.n,{className:t.cn(`py-4 text-center text-[length:var(--text-xs)] text-muted-foreground`,e),...r})}Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return a}});
2
- //# sourceMappingURL=command-DGNtTI-V.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"command-DGNtTI-V.cjs","names":[],"sources":["../../src/components/base/command/command.tsx"],"sourcesContent":["/**\n * Command — base wrapper around the shadcn `ui/command` (cmdk) primitive.\n *\n * What this layer adds on top of the primitive:\n * - Density-aware list-row padding via `var(--row-py)`.\n * - `xs` typography by default for items (admin-density), with the\n * primitive's typography preserved as a `density=\"default\"` variant.\n * - Tighter `Command` root padding aligned to the popover content pad.\n * - Re-exports every primitive part untouched so the compound-component\n * pattern keeps working: consumers compose\n * `<Command><CommandList><CommandGroup><CommandItem/></CommandGroup></CommandList></Command>`.\n *\n * For the recurring \"popover-with-command-list\" pattern, prefer\n * `base/popover-menu/` which composes both wrappers and adds slots.\n */\nimport * as React from 'react';\n\nimport {\n Command as CommandPrimitive,\n CommandEmpty as CommandEmptyPrimitive,\n CommandGroup as CommandGroupPrimitive,\n CommandInput,\n CommandList as CommandListPrimitive,\n CommandSeparator,\n CommandShortcut,\n CommandItem as CommandItemPrimitive,\n} from '@/components/ui/command';\nimport { cn } from '@/lib/utils';\n\ntype CommandRootProps = React.ComponentProps<typeof CommandPrimitive>;\n\nfunction Command({ className, ...props }: CommandRootProps) {\n return (\n <CommandPrimitive\n className={cn('command--component', \n // Tighter than the primitive; popover-content already pads the outer.\n 'rounded-md! p-0 bg-transparent',\n className,\n )}\n {...props}\n />\n );\n}\n\ntype CommandListProps = React.ComponentProps<typeof CommandListPrimitive>;\n\nfunction CommandList({ className, ...props }: CommandListProps) {\n return (\n <CommandListPrimitive\n className={cn('max-h-72 px-1 py-1', className)}\n {...props}\n />\n );\n}\n\ntype CommandGroupProps = React.ComponentProps<typeof CommandGroupPrimitive>;\n\nfunction CommandGroup({ className, ...props }: CommandGroupProps) {\n return (\n <CommandGroupPrimitive\n className={cn(\n 'p-0 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:pt-1.5 [&_[cmdk-group-heading]]:pb-0.5 [&_[cmdk-group-heading]]:text-[length:var(--text-xxs)] [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:uppercase [&_[cmdk-group-heading]]:tracking-wider [&_[cmdk-group-heading]]:text-muted-foreground',\n className,\n )}\n {...props}\n />\n );\n}\n\ntype CommandItemProps = React.ComponentProps<typeof CommandItemPrimitive>;\n\nfunction CommandItem({ className, ...props }: CommandItemProps) {\n return (\n <CommandItemPrimitive\n className={cn(\n // Density-tokenized vertical padding; xs typography for admin density.\n 'px-2 py-(--row-py) gap-2 rounded-md text-[length:var(--text-xs)]',\n className,\n )}\n {...props}\n />\n );\n}\n\ntype CommandEmptyProps = React.ComponentProps<typeof CommandEmptyPrimitive>;\n\nfunction CommandEmpty({ className, ...props }: CommandEmptyProps) {\n return (\n <CommandEmptyPrimitive\n className={cn('py-4 text-center text-[length:var(--text-xs)] text-muted-foreground', className)}\n {...props}\n />\n );\n}\n\nexport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n CommandShortcut,\n};\n"],"mappings":"+KA+BA,SAAS,EAAQ,CAAE,YAAW,GAAG,GAA2B,CACxD,OACI,EAAA,EAAA,KAAC,EAAA,EAAD,CACI,UAAW,EAAA,GAAG,qBAEV,iCACA,EACH,CACD,GAAI,EACN,CAAA,CAMV,SAAS,EAAY,CAAE,YAAW,GAAG,GAA2B,CAC5D,OACI,EAAA,EAAA,KAAC,EAAA,EAAD,CACI,UAAW,EAAA,GAAG,qBAAsB,EAAU,CAC9C,GAAI,EACN,CAAA,CAMV,SAAS,EAAa,CAAE,YAAW,GAAG,GAA4B,CAC9D,OACI,EAAA,EAAA,KAAC,EAAA,EAAD,CACI,UAAW,EAAA,GACP,0TACA,EACH,CACD,GAAI,EACN,CAAA,CAMV,SAAS,EAAY,CAAE,YAAW,GAAG,GAA2B,CAC5D,OACI,EAAA,EAAA,KAAC,EAAA,EAAD,CACI,UAAW,EAAA,GAEP,mEACA,EACH,CACD,GAAI,EACN,CAAA,CAMV,SAAS,EAAa,CAAE,YAAW,GAAG,GAA4B,CAC9D,OACI,EAAA,EAAA,KAAC,EAAA,EAAD,CACI,UAAW,EAAA,GAAG,sEAAuE,EAAU,CAC/F,GAAI,EACN,CAAA"}