@alfadocs/ui-kit 0.4.2 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (685) hide show
  1. package/dist/_chunks/accordion-DOmxGEWU.js.map +1 -0
  2. package/dist/_chunks/agenda-card-CalZqycc.js.map +1 -0
  3. package/dist/_chunks/agenda-card.agent-B_R47-c9.js.map +1 -0
  4. package/dist/_chunks/agenda-tray-3ffFDQZC.js.map +1 -0
  5. package/dist/_chunks/ai-prompt-input-DLgY8lrW.js.map +1 -0
  6. package/dist/_chunks/alert-B1sj8Ss0.js.map +1 -0
  7. package/dist/_chunks/apexcharts-theme-BJigns_V.js.map +1 -0
  8. package/dist/_chunks/app-frame-CDJOgPXe.js.map +1 -0
  9. package/dist/_chunks/aspect-ratio-DeSNzASA.js.map +1 -0
  10. package/dist/_chunks/audio-recorder-BdBbU-UK.js.map +1 -0
  11. package/dist/_chunks/audio-visualiser-ByDEFLNm.js.map +1 -0
  12. package/dist/_chunks/autocomplete-D4oUZbsP.js.map +1 -0
  13. package/dist/_chunks/avatar-Dcr6XuDQ.js.map +1 -0
  14. package/dist/_chunks/badge-DKFbntoa.js.map +1 -0
  15. package/dist/_chunks/{balance-cell-renderer-B8zgIM-m.js → balance-cell-renderer-BuExGe6u.js} +2 -2
  16. package/dist/_chunks/balance-cell-renderer-BuExGe6u.js.map +1 -0
  17. package/dist/_chunks/breadcrumb-D1snXjPb.js.map +1 -0
  18. package/dist/_chunks/button-DD_0Xdmr.js.map +1 -0
  19. package/dist/_chunks/button-group-CONver7M.js.map +1 -0
  20. package/dist/_chunks/button.agent-BuGZBktn.js.map +1 -0
  21. package/dist/_chunks/calendar-zy0tUUVG.js.map +1 -0
  22. package/dist/_chunks/card-CWzuTLYE.js.map +1 -0
  23. package/dist/_chunks/chart-BLvFl169.js.map +1 -0
  24. package/dist/_chunks/chat-container-ClzsWXp2.js.map +1 -0
  25. package/dist/_chunks/chat-input-Bov-gkwP.js.map +1 -0
  26. package/dist/_chunks/chat-message-DoAhgUTj.js.map +1 -0
  27. package/dist/_chunks/check-DPdL_Sm7.js.map +1 -0
  28. package/dist/_chunks/{checkbox-CtPM6Rup.js → checkbox-D5EHnB14.js} +53 -46
  29. package/dist/_chunks/checkbox-D5EHnB14.js.map +1 -0
  30. package/dist/_chunks/{checkbox-group-BTdEB6Yo.js → checkbox-group-CarPLDIC.js} +2 -2
  31. package/dist/_chunks/checkbox-group-CarPLDIC.js.map +1 -0
  32. package/dist/_chunks/chevron-down-BX_NP2Yh.js.map +1 -0
  33. package/dist/_chunks/chevron-left-CX1jqD2M.js.map +1 -0
  34. package/dist/_chunks/chevron-right-BrpYejk0.js.map +1 -0
  35. package/dist/_chunks/chevron-up-zOEDrmBB.js.map +1 -0
  36. package/dist/_chunks/chevrons-right-d9MwesPG.js.map +1 -0
  37. package/dist/_chunks/circle-BkqTgYmt.js.map +1 -0
  38. package/dist/_chunks/circle-alert-ChA9opNA.js.map +1 -0
  39. package/dist/_chunks/circle-check-9AeSgJD_.js.map +1 -0
  40. package/dist/_chunks/circle-x-Du2CmjaU.js.map +1 -0
  41. package/dist/_chunks/clock-21AGPWJ5.js.map +1 -0
  42. package/dist/_chunks/collapsible-CuxUBoHJ.js.map +1 -0
  43. package/dist/_chunks/color-picker-CTIcHlDF.js.map +1 -0
  44. package/dist/_chunks/combobox-BLWruOxK.js.map +1 -0
  45. package/dist/_chunks/command-palette-DkL-aW4O.js.map +1 -0
  46. package/dist/_chunks/compose-refs-C0k0tdqF.js.map +1 -0
  47. package/dist/_chunks/contact-card-DNyATxKv.js +137 -0
  48. package/dist/_chunks/contact-card-DNyATxKv.js.map +1 -0
  49. package/dist/_chunks/copy-B00HK7tj.js.map +1 -0
  50. package/dist/_chunks/createLucideIcon-CrFbzy84.js.map +1 -0
  51. package/dist/_chunks/date-picker-B1PO1ZQP.js.map +1 -0
  52. package/dist/_chunks/date-range-picker-mix2nEVC.js.map +1 -0
  53. package/dist/_chunks/date-time-picker-Dnong_BY.js.map +1 -0
  54. package/dist/_chunks/description-list-BYA77Yud.js.map +1 -0
  55. package/dist/_chunks/dialog-W8uDfXD8.js.map +1 -0
  56. package/dist/_chunks/dropdown-menu-dyV7gHh_.js.map +1 -0
  57. package/dist/_chunks/ellipsis-rgGdiK_9.js.map +1 -0
  58. package/dist/_chunks/empty-state-3CLJIXSj.js.map +1 -0
  59. package/dist/_chunks/eye-off-xEXDAh5z.js.map +1 -0
  60. package/dist/_chunks/file-text-DSNuv2B8.js.map +1 -0
  61. package/dist/_chunks/file-upload-C947ACDK.js.map +1 -0
  62. package/dist/_chunks/flag-DZ6V7-hU.js.map +1 -0
  63. package/dist/_chunks/floating-action-button-C8OYj8mE.js.map +1 -0
  64. package/dist/_chunks/form-field-Bmkeh7WY.js.map +1 -0
  65. package/dist/_chunks/form-field-context-B3APVHKx.js.map +1 -0
  66. package/dist/_chunks/freemium-paywall-CrVefV0M.js.map +1 -0
  67. package/dist/_chunks/globe-BkEFMNSg.js.map +1 -0
  68. package/dist/_chunks/group-options-BvKhQ3xb.js.map +1 -0
  69. package/dist/_chunks/header-D0ULgQl3.js.map +1 -0
  70. package/dist/_chunks/icon-button-C4CGcYuz.js.map +1 -0
  71. package/dist/_chunks/icon-button-group-DeV3FpNY.js.map +1 -0
  72. package/dist/_chunks/index-4xgbg-sn.js.map +1 -0
  73. package/dist/_chunks/index-CJE9uQmb.js.map +1 -0
  74. package/dist/_chunks/index-CeY1nNvd.js.map +1 -0
  75. package/dist/_chunks/index-D2ZczOXr.js.map +1 -0
  76. package/dist/_chunks/info-B9XNKn05.js.map +1 -0
  77. package/dist/_chunks/input-surface-u4QB0lxe.js.map +1 -0
  78. package/dist/_chunks/isSameDay-ecuM8PBB.js.map +1 -0
  79. package/dist/_chunks/isSameMonth-5wNF2f4I.js.map +1 -0
  80. package/dist/_chunks/kbd-Cglkd7CY.js.map +1 -0
  81. package/dist/_chunks/key-value-pair-CgWvAIGb.js.map +1 -0
  82. package/dist/_chunks/leo-sidebar-BWECDYpu.js.map +1 -0
  83. package/dist/_chunks/link-BcYW1eNM.js.map +1 -0
  84. package/dist/_chunks/list-qP6p0NTw.js.map +1 -0
  85. package/dist/_chunks/live-region-C41SO3cA.js.map +1 -0
  86. package/dist/_chunks/log-out-616hnn2-.js.map +1 -0
  87. package/dist/_chunks/logo-_Z-jLq80.js.map +1 -0
  88. package/dist/_chunks/mail-C8irm52s.js.map +1 -0
  89. package/dist/_chunks/matrix-rain-CRPMXcVx.js.map +1 -0
  90. package/dist/_chunks/message-card-DjvsB_3U.js.map +1 -0
  91. package/dist/_chunks/message-card.agent-4IeIgrnJ.js.map +1 -0
  92. package/dist/_chunks/message-tray-BbnAzlLH.js.map +1 -0
  93. package/dist/_chunks/multi-select-wqqrgjUQ.js.map +1 -0
  94. package/dist/_chunks/navigation-menu-ClbHeawy.js.map +1 -0
  95. package/dist/_chunks/normalize-diacritics-BNGbFNlJ.js.map +1 -0
  96. package/dist/_chunks/notification-card-uTPEvAQS.js.map +1 -0
  97. package/dist/_chunks/notification-card.agent-Rqt3ofk9.js.map +1 -0
  98. package/dist/_chunks/notification-tray-PGtMqXbP.js.map +1 -0
  99. package/dist/_chunks/number-input-Q7wkHnvQ.js.map +1 -0
  100. package/dist/_chunks/otp-input-C9gUByF0.js.map +1 -0
  101. package/dist/_chunks/pagination-3AC4zTsi.js.map +1 -0
  102. package/dist/_chunks/password-input-C4LmjIH1.js.map +1 -0
  103. package/dist/_chunks/patient-shell-IhMULVrt.js.map +1 -0
  104. package/dist/_chunks/payment-form-B_BdHwjb.js.map +1 -0
  105. package/dist/_chunks/pdf-viewer-CZIfY08H.js.map +1 -0
  106. package/dist/_chunks/phone-input-CSHJOJ13.js.map +1 -0
  107. package/dist/_chunks/plus-CYKNmfuA.js.map +1 -0
  108. package/dist/_chunks/popover-DekUKNBk.js.map +1 -0
  109. package/dist/_chunks/printer-CeVEWfQq.js.map +1 -0
  110. package/dist/_chunks/privacy-lock-BKsI6ReN.js.map +1 -0
  111. package/dist/_chunks/progress-C11tqhoI.js.map +1 -0
  112. package/dist/_chunks/purify.es-DpIUMBYC.js.map +1 -0
  113. package/dist/_chunks/radio-DvF59ThA.js.map +1 -0
  114. package/dist/_chunks/radio-group-Cz1a4QCA.js.map +1 -0
  115. package/dist/_chunks/react-day-picker-C04L_28V.js.map +1 -0
  116. package/dist/_chunks/recaptcha-widget-NyfOfLII.js.map +1 -0
  117. package/dist/_chunks/registry-C9nwlNyL.js.map +1 -0
  118. package/dist/_chunks/resizable-mpXXyIsN.js.map +1 -0
  119. package/dist/_chunks/rich-text-editor-C7TCIlQO.js.map +1 -0
  120. package/dist/_chunks/safe-image-src-DstKgCo7.js.map +1 -0
  121. package/dist/_chunks/scroll-area-DEDU-lp-.js.map +1 -0
  122. package/dist/_chunks/search-BonnQsHv.js.map +1 -0
  123. package/dist/_chunks/search-bar-BTDfgYtg.js.map +1 -0
  124. package/dist/_chunks/search-input-CdJIEjFo.js.map +1 -0
  125. package/dist/_chunks/search-input.agent-CfZvViOd.js.map +1 -0
  126. package/dist/_chunks/select-BOU_Osnf.js.map +1 -0
  127. package/dist/_chunks/send-CySZIRPJ.js.map +1 -0
  128. package/dist/_chunks/separator-CYU_bGFn.js.map +1 -0
  129. package/dist/_chunks/sheet-BAg7GY9j.js.map +1 -0
  130. package/dist/_chunks/sidebar-Bx3wCDyy.js.map +1 -0
  131. package/dist/_chunks/sign-in-with-alfadocs-button-B9UrqOqH.js.map +1 -0
  132. package/dist/_chunks/signature-capture-DjMlFOzS.js.map +1 -0
  133. package/dist/_chunks/skeleton-CZbwyJAA.js.map +1 -0
  134. package/dist/_chunks/skip-link-DmZ3c6cb.js.map +1 -0
  135. package/dist/_chunks/slider-BT2bZWsy.js.map +1 -0
  136. package/dist/_chunks/slot-grid-CgpYgBkW.js.map +1 -0
  137. package/dist/_chunks/sparkline-_gy8aJDG.js.map +1 -0
  138. package/dist/_chunks/spinner-DLaYfLPl.js.map +1 -0
  139. package/dist/_chunks/square-CZoGU14v.js.map +1 -0
  140. package/dist/_chunks/square-check-big-Jr-0202D.js.map +1 -0
  141. package/dist/_chunks/stat-B9PHSPbN.js.map +1 -0
  142. package/dist/_chunks/stepper-C-sIpRRU.js.map +1 -0
  143. package/dist/_chunks/stepper-accordion.agent-ckKYZCIP.js.map +1 -0
  144. package/dist/_chunks/stepper-calendar-BLOJUE0-.js.map +1 -0
  145. package/dist/_chunks/stepper-progress-jFY8BSf7.js.map +1 -0
  146. package/dist/_chunks/streaming-text-BgjCTVOw.js.map +1 -0
  147. package/dist/_chunks/suggestion-chip-C4Jz0LrM.js.map +1 -0
  148. package/dist/_chunks/suggestion-chip.agent-6sNWFj7m.js.map +1 -0
  149. package/dist/_chunks/switch-C0psfIQF.js.map +1 -0
  150. package/dist/_chunks/tabs-BZQy_Rmb.js.map +1 -0
  151. package/dist/_chunks/tag-DuLMjRbF.js.map +1 -0
  152. package/dist/_chunks/task-card-Dw_ZJDL8.js.map +1 -0
  153. package/dist/_chunks/task-card.agent-CUPKYd7w.js.map +1 -0
  154. package/dist/_chunks/task-tray-XlIW9ueh.js.map +1 -0
  155. package/dist/_chunks/text-area-CO9Dz0qX.js.map +1 -0
  156. package/dist/_chunks/text-input-DZwt9L8H.js.map +1 -0
  157. package/dist/_chunks/theme-root-CSKD5ZRm.js.map +1 -0
  158. package/dist/_chunks/theme-toggle-B3UR6ouK.js.map +1 -0
  159. package/dist/_chunks/time-picker-DvPUmHH-.js.map +1 -0
  160. package/dist/_chunks/timeline-BvmnQadS.js.map +1 -0
  161. package/dist/_chunks/timestamp-BV2lC-wV.js.map +1 -0
  162. package/dist/_chunks/toast.agent-DihA6MON.js.map +1 -0
  163. package/dist/_chunks/tooltip-DHik5yRI.js.map +1 -0
  164. package/dist/_chunks/tooth-scheme-3mITSXiZ.js.map +1 -0
  165. package/dist/_chunks/transaction-chip-DE6DITun.js.map +1 -0
  166. package/dist/_chunks/transcript-panel-Bx5ANMsv.js.map +1 -0
  167. package/dist/_chunks/triangle-alert-CBPUIzQo.js.map +1 -0
  168. package/dist/_chunks/typing-indicator-BZ5jXZPn.js.map +1 -0
  169. package/dist/_chunks/use-debounced-callback-BisrB-Fq.js.map +1 -0
  170. package/dist/_chunks/use-direction-D6rvvG9G.js.map +1 -0
  171. package/dist/_chunks/use-locale-BuXR_Zl9.js.map +1 -0
  172. package/dist/_chunks/use-prefers-reduced-motion-BMwIQRjB.js.map +1 -0
  173. package/dist/_chunks/use-theme-B1cwAXJR.js.map +1 -0
  174. package/dist/_chunks/user-CPxpqFjJ.js.map +1 -0
  175. package/dist/_chunks/visually-hidden-BHxEUGyT.js.map +1 -0
  176. package/dist/_chunks/warning-stack-VygGHSqC.js.map +1 -0
  177. package/dist/_chunks/workflow-map-Bi5liGzo.js.map +1 -0
  178. package/dist/_chunks/x-CCcI3eJp.js.map +1 -0
  179. package/dist/agent/index.d.ts.map +1 -0
  180. package/dist/agent/registry.d.ts.map +1 -0
  181. package/dist/agent/types.d.ts.map +1 -0
  182. package/dist/agent-catalog.json +15 -1
  183. package/dist/brand/logo-asset/Alfadocs_Logo_BW.d.ts.map +1 -0
  184. package/dist/brand/logo-asset/Alfadocs_Logo_Main.d.ts.map +1 -0
  185. package/dist/brand/logo-asset/Alfadocs_Logo_Mark.d.ts.map +1 -0
  186. package/dist/brand/logo-asset/Alfadocs_Logo_Neg.d.ts.map +1 -0
  187. package/dist/brand/logo-asset/Alfadocs_Logo_Purple.d.ts.map +1 -0
  188. package/dist/brand/logo-asset/index.d.ts.map +1 -0
  189. package/dist/components/_shared/calendar-chevron.d.ts.map +1 -0
  190. package/dist/components/_shared/compose-refs.d.ts.map +1 -0
  191. package/dist/components/_shared/date-locale.d.ts.map +1 -0
  192. package/dist/components/_shared/date-picker-variants.d.ts.map +1 -0
  193. package/dist/components/_shared/date-utils.d.ts.map +1 -0
  194. package/dist/components/_shared/group-options.d.ts.map +1 -0
  195. package/dist/components/_shared/index.d.ts.map +1 -0
  196. package/dist/components/_shared/input-surface.d.ts.map +1 -0
  197. package/dist/components/_shared/normalize-diacritics.d.ts.map +1 -0
  198. package/dist/components/_shared/option.d.ts.map +1 -0
  199. package/dist/components/_shared/safe-html.d.ts.map +1 -0
  200. package/dist/components/_shared/safe-image-src.d.ts.map +1 -0
  201. package/dist/components/_shared/stepper.d.ts.map +1 -0
  202. package/dist/components/_shared/time.d.ts.map +1 -0
  203. package/dist/components/_shared/use-debounced-callback.d.ts.map +1 -0
  204. package/dist/components/_shared/use-direction.d.ts.map +1 -0
  205. package/dist/components/_shared/use-focus-trap.d.ts.map +1 -0
  206. package/dist/components/_shared/use-neutralize-hidden-focus.d.ts.map +1 -0
  207. package/dist/components/accordion/accordion.agent.d.ts.map +1 -0
  208. package/dist/components/accordion/accordion.d.ts.map +1 -0
  209. package/dist/components/accordion/index.d.ts.map +1 -0
  210. package/dist/components/accordion/index.js.map +1 -0
  211. package/dist/components/agenda-card/agenda-card.agent.d.ts.map +1 -0
  212. package/dist/components/agenda-card/agenda-card.d.ts.map +1 -0
  213. package/dist/components/agenda-card/index.d.ts.map +1 -0
  214. package/dist/components/agenda-card/index.js.map +1 -0
  215. package/dist/components/agenda-tray/agenda-tray.agent.d.ts.map +1 -0
  216. package/dist/components/agenda-tray/agenda-tray.d.ts.map +1 -0
  217. package/dist/components/agenda-tray/index.d.ts.map +1 -0
  218. package/dist/components/agenda-tray/index.js.map +1 -0
  219. package/dist/components/ai-prompt-input/ai-prompt-input.agent.d.ts.map +1 -0
  220. package/dist/components/ai-prompt-input/ai-prompt-input.d.ts.map +1 -0
  221. package/dist/components/ai-prompt-input/index.d.ts.map +1 -0
  222. package/dist/components/ai-prompt-input/index.js.map +1 -0
  223. package/dist/components/alert/alert.d.ts.map +1 -0
  224. package/dist/components/alert/index.d.ts.map +1 -0
  225. package/dist/components/alert/index.js.map +1 -0
  226. package/dist/components/app-frame/app-frame.d.ts.map +1 -0
  227. package/dist/components/app-frame/index.d.ts.map +1 -0
  228. package/dist/components/app-frame/index.js.map +1 -0
  229. package/dist/components/aspect-ratio/aspect-ratio.d.ts.map +1 -0
  230. package/dist/components/aspect-ratio/index.d.ts.map +1 -0
  231. package/dist/components/aspect-ratio/index.js.map +1 -0
  232. package/dist/components/audio-recorder/audio-recorder.agent.d.ts.map +1 -0
  233. package/dist/components/audio-recorder/audio-recorder.d.ts.map +1 -0
  234. package/dist/components/audio-recorder/index.d.ts.map +1 -0
  235. package/dist/components/audio-recorder/index.js.map +1 -0
  236. package/dist/components/audio-visualiser/audio-visualiser.d.ts.map +1 -0
  237. package/dist/components/audio-visualiser/index.d.ts.map +1 -0
  238. package/dist/components/audio-visualiser/index.js.map +1 -0
  239. package/dist/components/autocomplete/autocomplete.agent.d.ts.map +1 -0
  240. package/dist/components/autocomplete/autocomplete.d.ts.map +1 -0
  241. package/dist/components/autocomplete/index.d.ts.map +1 -0
  242. package/dist/components/autocomplete/index.js.map +1 -0
  243. package/dist/components/avatar/avatar.d.ts.map +1 -0
  244. package/dist/components/avatar/index.d.ts.map +1 -0
  245. package/dist/components/avatar/index.js.map +1 -0
  246. package/dist/components/badge/badge.d.ts.map +1 -0
  247. package/dist/components/badge/index.d.ts.map +1 -0
  248. package/dist/components/badge/index.js.map +1 -0
  249. package/dist/components/breadcrumb/breadcrumb.agent.d.ts.map +1 -0
  250. package/dist/components/breadcrumb/breadcrumb.d.ts.map +1 -0
  251. package/dist/components/breadcrumb/index.d.ts.map +1 -0
  252. package/dist/components/breadcrumb/index.js.map +1 -0
  253. package/dist/components/button/button.agent.d.ts.map +1 -0
  254. package/dist/components/button/button.d.ts.map +1 -0
  255. package/dist/components/button/icon-button.d.ts.map +1 -0
  256. package/dist/components/button/index.d.ts.map +1 -0
  257. package/dist/components/button/index.js.map +1 -0
  258. package/dist/components/button-group/button-group.d.ts.map +1 -0
  259. package/dist/components/button-group/index.d.ts.map +1 -0
  260. package/dist/components/button-group/index.js.map +1 -0
  261. package/dist/components/calendar/calendar.agent.d.ts.map +1 -0
  262. package/dist/components/calendar/calendar.d.ts.map +1 -0
  263. package/dist/components/calendar/contrast-warning.d.ts.map +1 -0
  264. package/dist/components/calendar/index.d.ts.map +1 -0
  265. package/dist/components/calendar/index.js.map +1 -0
  266. package/dist/components/card/card.d.ts.map +1 -0
  267. package/dist/components/card/index.d.ts.map +1 -0
  268. package/dist/components/card/index.js.map +1 -0
  269. package/dist/components/chart/chart.agent.d.ts.map +1 -0
  270. package/dist/components/chart/chart.d.ts.map +1 -0
  271. package/dist/components/chart/index.d.ts.map +1 -0
  272. package/dist/components/chart/index.js.map +1 -0
  273. package/dist/components/chat-container/chat-container.agent.d.ts.map +1 -0
  274. package/dist/components/chat-container/chat-container.d.ts.map +1 -0
  275. package/dist/components/chat-container/index.d.ts.map +1 -0
  276. package/dist/components/chat-container/index.js.map +1 -0
  277. package/dist/components/chat-input/chat-input.agent.d.ts.map +1 -0
  278. package/dist/components/chat-input/chat-input.d.ts.map +1 -0
  279. package/dist/components/chat-input/index.d.ts.map +1 -0
  280. package/dist/components/chat-input/index.js.map +1 -0
  281. package/dist/components/chat-message/chat-message.d.ts.map +1 -0
  282. package/dist/components/chat-message/index.d.ts.map +1 -0
  283. package/dist/components/chat-message/index.js.map +1 -0
  284. package/dist/components/checkbox/checkbox-group-context.d.ts.map +1 -0
  285. package/dist/components/checkbox/checkbox.agent.d.ts.map +1 -0
  286. package/dist/components/checkbox/checkbox.d.ts.map +1 -0
  287. package/dist/components/checkbox/index.d.ts.map +1 -0
  288. package/dist/components/checkbox/index.js +1 -1
  289. package/dist/components/checkbox/index.js.map +1 -0
  290. package/dist/components/checkbox-group/checkbox-group.agent.d.ts.map +1 -0
  291. package/dist/components/checkbox-group/checkbox-group.d.ts.map +1 -0
  292. package/dist/components/checkbox-group/index.d.ts.map +1 -0
  293. package/dist/components/checkbox-group/index.js +1 -1
  294. package/dist/components/checkbox-group/index.js.map +1 -0
  295. package/dist/components/collapsible/collapsible.agent.d.ts.map +1 -0
  296. package/dist/components/collapsible/collapsible.d.ts.map +1 -0
  297. package/dist/components/collapsible/index.d.ts.map +1 -0
  298. package/dist/components/collapsible/index.js.map +1 -0
  299. package/dist/components/color-picker/color-picker.agent.d.ts.map +1 -0
  300. package/dist/components/color-picker/color-picker.d.ts.map +1 -0
  301. package/dist/components/color-picker/color-utils.d.ts.map +1 -0
  302. package/dist/components/color-picker/index.d.ts.map +1 -0
  303. package/dist/components/color-picker/index.js.map +1 -0
  304. package/dist/components/color-picker/palettes.d.ts.map +1 -0
  305. package/dist/components/combobox/combobox.agent.d.ts.map +1 -0
  306. package/dist/components/combobox/combobox.d.ts.map +1 -0
  307. package/dist/components/combobox/index.d.ts.map +1 -0
  308. package/dist/components/combobox/index.js.map +1 -0
  309. package/dist/components/command-palette/command-palette.agent.d.ts.map +1 -0
  310. package/dist/components/command-palette/command-palette.d.ts.map +1 -0
  311. package/dist/components/command-palette/index.d.ts.map +1 -0
  312. package/dist/components/command-palette/index.js.map +1 -0
  313. package/dist/components/contact-card/contact-card.d.ts +74 -0
  314. package/dist/components/contact-card/contact-card.d.ts.map +1 -0
  315. package/dist/components/contact-card/index.d.ts +3 -0
  316. package/dist/components/contact-card/index.d.ts.map +1 -0
  317. package/dist/components/contact-card/index.js +5 -0
  318. package/dist/components/contact-card/index.js.map +1 -0
  319. package/dist/components/data-table/cell-renderers/actions-cell-renderer.d.ts.map +1 -0
  320. package/dist/components/data-table/cell-renderers/balance-cell-renderer.d.ts.map +1 -0
  321. package/dist/components/data-table/cell-renderers/color-dot-cell-renderer.d.ts.map +1 -0
  322. package/dist/components/data-table/cell-renderers/currency-cell-renderer.d.ts.map +1 -0
  323. package/dist/components/data-table/cell-renderers/date-cell-renderer.d.ts.map +1 -0
  324. package/dist/components/data-table/cell-renderers/link-cell-renderer.d.ts.map +1 -0
  325. package/dist/components/data-table/cell-renderers/status-cell-renderer.d.ts.map +1 -0
  326. package/dist/components/data-table/cell-renderers/tag-list-cell-renderer.d.ts.map +1 -0
  327. package/dist/components/data-table/cell-renderers/toggle-cell-renderer.d.ts.map +1 -0
  328. package/dist/components/data-table/cell-renderers/user-cell-renderer.d.ts.map +1 -0
  329. package/dist/components/data-table/data-table.agent.d.ts.map +1 -0
  330. package/dist/components/data-table/data-table.d.ts.map +1 -0
  331. package/dist/components/data-table/hooks/use-total-row.d.ts.map +1 -0
  332. package/dist/components/data-table/index.d.ts.map +1 -0
  333. package/dist/components/data-table/index.js +1 -1
  334. package/dist/components/data-table/index.js.map +1 -0
  335. package/dist/components/data-table/toolbar.d.ts.map +1 -0
  336. package/dist/components/date-picker/date-picker.agent.d.ts.map +1 -0
  337. package/dist/components/date-picker/date-picker.d.ts.map +1 -0
  338. package/dist/components/date-picker/index.d.ts.map +1 -0
  339. package/dist/components/date-picker/index.js.map +1 -0
  340. package/dist/components/date-range-picker/date-range-picker.agent.d.ts.map +1 -0
  341. package/dist/components/date-range-picker/date-range-picker.d.ts.map +1 -0
  342. package/dist/components/date-range-picker/index.d.ts.map +1 -0
  343. package/dist/components/date-range-picker/index.js.map +1 -0
  344. package/dist/components/date-time-picker/date-time-picker.agent.d.ts.map +1 -0
  345. package/dist/components/date-time-picker/date-time-picker.d.ts.map +1 -0
  346. package/dist/components/date-time-picker/index.d.ts.map +1 -0
  347. package/dist/components/date-time-picker/index.js.map +1 -0
  348. package/dist/components/description-list/description-list.d.ts.map +1 -0
  349. package/dist/components/description-list/index.d.ts.map +1 -0
  350. package/dist/components/description-list/index.js.map +1 -0
  351. package/dist/components/dialog/dialog.agent.d.ts.map +1 -0
  352. package/dist/components/dialog/dialog.d.ts.map +1 -0
  353. package/dist/components/dialog/index.d.ts.map +1 -0
  354. package/dist/components/dialog/index.js.map +1 -0
  355. package/dist/components/dropdown-menu/dropdown-menu.agent.d.ts.map +1 -0
  356. package/dist/components/dropdown-menu/dropdown-menu.d.ts.map +1 -0
  357. package/dist/components/dropdown-menu/index.d.ts.map +1 -0
  358. package/dist/components/dropdown-menu/index.js.map +1 -0
  359. package/dist/components/empty-state/empty-state.d.ts.map +1 -0
  360. package/dist/components/empty-state/index.d.ts.map +1 -0
  361. package/dist/components/empty-state/index.js.map +1 -0
  362. package/dist/components/file-upload/file-upload.agent.d.ts.map +1 -0
  363. package/dist/components/file-upload/file-upload.d.ts.map +1 -0
  364. package/dist/components/file-upload/index.d.ts.map +1 -0
  365. package/dist/components/file-upload/index.js.map +1 -0
  366. package/dist/components/flag/flag.d.ts.map +1 -0
  367. package/dist/components/flag/index.d.ts.map +1 -0
  368. package/dist/components/flag/index.js.map +1 -0
  369. package/dist/components/floating-action-button/floating-action-button.d.ts.map +1 -0
  370. package/dist/components/floating-action-button/index.d.ts.map +1 -0
  371. package/dist/components/floating-action-button/index.js.map +1 -0
  372. package/dist/components/form-field/form-field-context.d.ts.map +1 -0
  373. package/dist/components/form-field/form-field.d.ts.map +1 -0
  374. package/dist/components/form-field/index.d.ts.map +1 -0
  375. package/dist/components/form-field/index.js.map +1 -0
  376. package/dist/components/freemium-paywall/freemium-paywall.agent.d.ts.map +1 -0
  377. package/dist/components/freemium-paywall/freemium-paywall.d.ts.map +1 -0
  378. package/dist/components/freemium-paywall/index.d.ts.map +1 -0
  379. package/dist/components/freemium-paywall/index.js.map +1 -0
  380. package/dist/components/header/header.d.ts.map +1 -0
  381. package/dist/components/header/index.d.ts.map +1 -0
  382. package/dist/components/header/index.js.map +1 -0
  383. package/dist/components/icon-button/index.d.ts.map +1 -0
  384. package/dist/components/icon-button/index.js.map +1 -0
  385. package/dist/components/icon-button-group/icon-button-group.d.ts.map +1 -0
  386. package/dist/components/icon-button-group/index.d.ts.map +1 -0
  387. package/dist/components/icon-button-group/index.js.map +1 -0
  388. package/dist/components/index.d.ts +1 -0
  389. package/dist/components/index.d.ts.map +1 -0
  390. package/dist/components/kbd/index.d.ts.map +1 -0
  391. package/dist/components/kbd/index.js.map +1 -0
  392. package/dist/components/kbd/kbd.d.ts.map +1 -0
  393. package/dist/components/key-value-pair/index.d.ts.map +1 -0
  394. package/dist/components/key-value-pair/index.js.map +1 -0
  395. package/dist/components/key-value-pair/key-value-pair.d.ts.map +1 -0
  396. package/dist/components/link/index.d.ts.map +1 -0
  397. package/dist/components/link/index.js.map +1 -0
  398. package/dist/components/link/link.d.ts.map +1 -0
  399. package/dist/components/list/index.d.ts.map +1 -0
  400. package/dist/components/list/index.js.map +1 -0
  401. package/dist/components/list/list.agent.d.ts.map +1 -0
  402. package/dist/components/list/list.d.ts.map +1 -0
  403. package/dist/components/live-region/index.d.ts.map +1 -0
  404. package/dist/components/live-region/index.js.map +1 -0
  405. package/dist/components/live-region/live-region.d.ts.map +1 -0
  406. package/dist/components/logo/index.d.ts.map +1 -0
  407. package/dist/components/logo/index.js.map +1 -0
  408. package/dist/components/logo/logo.d.ts.map +1 -0
  409. package/dist/components/matrix-rain/index.d.ts.map +1 -0
  410. package/dist/components/matrix-rain/index.js.map +1 -0
  411. package/dist/components/matrix-rain/matrix-rain.d.ts.map +1 -0
  412. package/dist/components/message-card/index.d.ts.map +1 -0
  413. package/dist/components/message-card/index.js.map +1 -0
  414. package/dist/components/message-card/message-card.agent.d.ts.map +1 -0
  415. package/dist/components/message-card/message-card.d.ts.map +1 -0
  416. package/dist/components/message-tray/index.d.ts.map +1 -0
  417. package/dist/components/message-tray/index.js.map +1 -0
  418. package/dist/components/message-tray/message-tray.agent.d.ts.map +1 -0
  419. package/dist/components/message-tray/message-tray.d.ts.map +1 -0
  420. package/dist/components/multi-select/index.d.ts.map +1 -0
  421. package/dist/components/multi-select/index.js.map +1 -0
  422. package/dist/components/multi-select/multi-select.agent.d.ts.map +1 -0
  423. package/dist/components/multi-select/multi-select.d.ts.map +1 -0
  424. package/dist/components/navigation-menu/index.d.ts.map +1 -0
  425. package/dist/components/navigation-menu/index.js.map +1 -0
  426. package/dist/components/navigation-menu/navigation-menu.agent.d.ts.map +1 -0
  427. package/dist/components/navigation-menu/navigation-menu.d.ts.map +1 -0
  428. package/dist/components/notification-card/index.d.ts.map +1 -0
  429. package/dist/components/notification-card/index.js.map +1 -0
  430. package/dist/components/notification-card/notification-card.agent.d.ts.map +1 -0
  431. package/dist/components/notification-card/notification-card.d.ts.map +1 -0
  432. package/dist/components/notification-tray/index.d.ts.map +1 -0
  433. package/dist/components/notification-tray/index.js.map +1 -0
  434. package/dist/components/notification-tray/notification-tray.agent.d.ts.map +1 -0
  435. package/dist/components/notification-tray/notification-tray.d.ts.map +1 -0
  436. package/dist/components/number-input/index.d.ts.map +1 -0
  437. package/dist/components/number-input/index.js.map +1 -0
  438. package/dist/components/number-input/number-input.agent.d.ts.map +1 -0
  439. package/dist/components/number-input/number-input.d.ts.map +1 -0
  440. package/dist/components/number-input/use-locale-number.d.ts.map +1 -0
  441. package/dist/components/otp-input/index.d.ts.map +1 -0
  442. package/dist/components/otp-input/index.js.map +1 -0
  443. package/dist/components/otp-input/otp-input.agent.d.ts.map +1 -0
  444. package/dist/components/otp-input/otp-input.d.ts.map +1 -0
  445. package/dist/components/pagination/index.d.ts.map +1 -0
  446. package/dist/components/pagination/index.js.map +1 -0
  447. package/dist/components/pagination/pagination.agent.d.ts.map +1 -0
  448. package/dist/components/pagination/pagination.d.ts.map +1 -0
  449. package/dist/components/password-input/index.d.ts.map +1 -0
  450. package/dist/components/password-input/index.js.map +1 -0
  451. package/dist/components/password-input/password-input.agent.d.ts.map +1 -0
  452. package/dist/components/password-input/password-input.d.ts.map +1 -0
  453. package/dist/components/payment-form/index.d.ts.map +1 -0
  454. package/dist/components/payment-form/index.js.map +1 -0
  455. package/dist/components/payment-form/payment-form.agent.d.ts.map +1 -0
  456. package/dist/components/payment-form/payment-form.d.ts.map +1 -0
  457. package/dist/components/pdf-viewer/index.d.ts.map +1 -0
  458. package/dist/components/pdf-viewer/index.js.map +1 -0
  459. package/dist/components/pdf-viewer/pdf-viewer.agent.d.ts.map +1 -0
  460. package/dist/components/pdf-viewer/pdf-viewer.d.ts.map +1 -0
  461. package/dist/components/phone-input/index.d.ts.map +1 -0
  462. package/dist/components/phone-input/index.js.map +1 -0
  463. package/dist/components/phone-input/phone-input.agent.d.ts.map +1 -0
  464. package/dist/components/phone-input/phone-input.d.ts.map +1 -0
  465. package/dist/components/popover/index.d.ts.map +1 -0
  466. package/dist/components/popover/index.js.map +1 -0
  467. package/dist/components/popover/popover.agent.d.ts.map +1 -0
  468. package/dist/components/popover/popover.d.ts.map +1 -0
  469. package/dist/components/privacy-lock/index.d.ts.map +1 -0
  470. package/dist/components/privacy-lock/index.js.map +1 -0
  471. package/dist/components/privacy-lock/privacy-lock.agent.d.ts.map +1 -0
  472. package/dist/components/privacy-lock/privacy-lock.d.ts.map +1 -0
  473. package/dist/components/progress/index.d.ts.map +1 -0
  474. package/dist/components/progress/index.js.map +1 -0
  475. package/dist/components/progress/progress.agent.d.ts.map +1 -0
  476. package/dist/components/progress/progress.d.ts.map +1 -0
  477. package/dist/components/radio/index.d.ts.map +1 -0
  478. package/dist/components/radio/index.js.map +1 -0
  479. package/dist/components/radio-group/index.d.ts.map +1 -0
  480. package/dist/components/radio-group/index.js.map +1 -0
  481. package/dist/components/radio-group/radio-group-context.d.ts.map +1 -0
  482. package/dist/components/radio-group/radio-group.agent.d.ts.map +1 -0
  483. package/dist/components/radio-group/radio-group.d.ts.map +1 -0
  484. package/dist/components/radio-group/radio.d.ts.map +1 -0
  485. package/dist/components/recaptcha-widget/index.d.ts.map +1 -0
  486. package/dist/components/recaptcha-widget/index.js.map +1 -0
  487. package/dist/components/recaptcha-widget/recaptcha-widget.agent.d.ts.map +1 -0
  488. package/dist/components/recaptcha-widget/recaptcha-widget.d.ts.map +1 -0
  489. package/dist/components/resizable/index.d.ts.map +1 -0
  490. package/dist/components/resizable/index.js.map +1 -0
  491. package/dist/components/resizable/resizable-context.d.ts.map +1 -0
  492. package/dist/components/resizable/resizable.agent.d.ts.map +1 -0
  493. package/dist/components/resizable/resizable.d.ts.map +1 -0
  494. package/dist/components/rich-text-editor/index.d.ts.map +1 -0
  495. package/dist/components/rich-text-editor/index.js.map +1 -0
  496. package/dist/components/rich-text-editor/rich-text-editor.agent.d.ts.map +1 -0
  497. package/dist/components/rich-text-editor/rich-text-editor.d.ts.map +1 -0
  498. package/dist/components/scroll-area/index.d.ts.map +1 -0
  499. package/dist/components/scroll-area/index.js.map +1 -0
  500. package/dist/components/scroll-area/scroll-area.d.ts.map +1 -0
  501. package/dist/components/search-bar/index.d.ts.map +1 -0
  502. package/dist/components/search-bar/index.js.map +1 -0
  503. package/dist/components/search-bar/search-bar.agent.d.ts.map +1 -0
  504. package/dist/components/search-bar/search-bar.d.ts.map +1 -0
  505. package/dist/components/search-input/index.d.ts.map +1 -0
  506. package/dist/components/search-input/index.js.map +1 -0
  507. package/dist/components/search-input/search-input.agent.d.ts.map +1 -0
  508. package/dist/components/search-input/search-input.d.ts.map +1 -0
  509. package/dist/components/select/index.d.ts.map +1 -0
  510. package/dist/components/select/index.js.map +1 -0
  511. package/dist/components/select/select.agent.d.ts.map +1 -0
  512. package/dist/components/select/select.d.ts.map +1 -0
  513. package/dist/components/separator/index.d.ts.map +1 -0
  514. package/dist/components/separator/index.js.map +1 -0
  515. package/dist/components/separator/separator.d.ts.map +1 -0
  516. package/dist/components/sheet/index.d.ts.map +1 -0
  517. package/dist/components/sheet/index.js.map +1 -0
  518. package/dist/components/sheet/sheet.agent.d.ts.map +1 -0
  519. package/dist/components/sheet/sheet.d.ts.map +1 -0
  520. package/dist/components/sidebar/index.d.ts.map +1 -0
  521. package/dist/components/sidebar/index.js.map +1 -0
  522. package/dist/components/sidebar/sidebar.agent.d.ts.map +1 -0
  523. package/dist/components/sidebar/sidebar.d.ts.map +1 -0
  524. package/dist/components/sign-in-with-alfadocs-button/index.d.ts.map +1 -0
  525. package/dist/components/sign-in-with-alfadocs-button/index.js.map +1 -0
  526. package/dist/components/sign-in-with-alfadocs-button/sign-in-with-alfadocs-button.d.ts.map +1 -0
  527. package/dist/components/signature-capture/index.d.ts.map +1 -0
  528. package/dist/components/signature-capture/index.js.map +1 -0
  529. package/dist/components/signature-capture/signature-capture.agent.d.ts.map +1 -0
  530. package/dist/components/signature-capture/signature-capture.d.ts.map +1 -0
  531. package/dist/components/skeleton/index.d.ts.map +1 -0
  532. package/dist/components/skeleton/index.js.map +1 -0
  533. package/dist/components/skeleton/skeleton.d.ts.map +1 -0
  534. package/dist/components/skip-link/index.d.ts.map +1 -0
  535. package/dist/components/skip-link/index.js.map +1 -0
  536. package/dist/components/skip-link/skip-link.d.ts.map +1 -0
  537. package/dist/components/slider/index.d.ts.map +1 -0
  538. package/dist/components/slider/index.js.map +1 -0
  539. package/dist/components/slider/slider.agent.d.ts.map +1 -0
  540. package/dist/components/slider/slider.d.ts.map +1 -0
  541. package/dist/components/slot-grid/index.d.ts.map +1 -0
  542. package/dist/components/slot-grid/index.js.map +1 -0
  543. package/dist/components/slot-grid/slot-grid.d.ts.map +1 -0
  544. package/dist/components/sparkline/index.d.ts.map +1 -0
  545. package/dist/components/sparkline/index.js.map +1 -0
  546. package/dist/components/sparkline/sparkline.agent.d.ts.map +1 -0
  547. package/dist/components/sparkline/sparkline.d.ts.map +1 -0
  548. package/dist/components/sparkline/use-linear-trend.d.ts.map +1 -0
  549. package/dist/components/spinner/index.d.ts.map +1 -0
  550. package/dist/components/spinner/index.js.map +1 -0
  551. package/dist/components/spinner/spinner.d.ts.map +1 -0
  552. package/dist/components/stat/index.d.ts.map +1 -0
  553. package/dist/components/stat/index.js.map +1 -0
  554. package/dist/components/stat/stat.d.ts.map +1 -0
  555. package/dist/components/stepper-accordion/index.d.ts.map +1 -0
  556. package/dist/components/stepper-accordion/index.js.map +1 -0
  557. package/dist/components/stepper-accordion/stepper-accordion.agent.d.ts.map +1 -0
  558. package/dist/components/stepper-accordion/stepper-accordion.d.ts.map +1 -0
  559. package/dist/components/stepper-calendar/index.d.ts.map +1 -0
  560. package/dist/components/stepper-calendar/index.js.map +1 -0
  561. package/dist/components/stepper-calendar/stepper-calendar.agent.d.ts.map +1 -0
  562. package/dist/components/stepper-calendar/stepper-calendar.d.ts.map +1 -0
  563. package/dist/components/stepper-progress/index.d.ts.map +1 -0
  564. package/dist/components/stepper-progress/index.js.map +1 -0
  565. package/dist/components/stepper-progress/stepper-progress.agent.d.ts.map +1 -0
  566. package/dist/components/stepper-progress/stepper-progress.d.ts.map +1 -0
  567. package/dist/components/streaming-text/index.d.ts.map +1 -0
  568. package/dist/components/streaming-text/index.js.map +1 -0
  569. package/dist/components/streaming-text/streaming-text.d.ts.map +1 -0
  570. package/dist/components/suggestion-chip/index.d.ts.map +1 -0
  571. package/dist/components/suggestion-chip/index.js.map +1 -0
  572. package/dist/components/suggestion-chip/suggestion-chip.agent.d.ts.map +1 -0
  573. package/dist/components/suggestion-chip/suggestion-chip.d.ts.map +1 -0
  574. package/dist/components/switch/index.d.ts.map +1 -0
  575. package/dist/components/switch/index.js.map +1 -0
  576. package/dist/components/switch/switch.agent.d.ts.map +1 -0
  577. package/dist/components/switch/switch.d.ts.map +1 -0
  578. package/dist/components/tabs/index.d.ts.map +1 -0
  579. package/dist/components/tabs/index.js.map +1 -0
  580. package/dist/components/tabs/tabs.agent.d.ts.map +1 -0
  581. package/dist/components/tabs/tabs.d.ts.map +1 -0
  582. package/dist/components/tag/index.d.ts.map +1 -0
  583. package/dist/components/tag/index.js.map +1 -0
  584. package/dist/components/tag/tag.d.ts.map +1 -0
  585. package/dist/components/task-card/index.d.ts.map +1 -0
  586. package/dist/components/task-card/index.js.map +1 -0
  587. package/dist/components/task-card/task-card.agent.d.ts.map +1 -0
  588. package/dist/components/task-card/task-card.d.ts.map +1 -0
  589. package/dist/components/task-tray/index.d.ts.map +1 -0
  590. package/dist/components/task-tray/index.js.map +1 -0
  591. package/dist/components/task-tray/task-tray.agent.d.ts.map +1 -0
  592. package/dist/components/task-tray/task-tray.d.ts.map +1 -0
  593. package/dist/components/text-area/index.d.ts.map +1 -0
  594. package/dist/components/text-area/index.js.map +1 -0
  595. package/dist/components/text-area/text-area.agent.d.ts.map +1 -0
  596. package/dist/components/text-area/text-area.d.ts.map +1 -0
  597. package/dist/components/text-input/index.d.ts.map +1 -0
  598. package/dist/components/text-input/index.js.map +1 -0
  599. package/dist/components/text-input/text-input.agent.d.ts.map +1 -0
  600. package/dist/components/text-input/text-input.d.ts.map +1 -0
  601. package/dist/components/theme-root/index.d.ts.map +1 -0
  602. package/dist/components/theme-root/index.js.map +1 -0
  603. package/dist/components/theme-root/theme-root.d.ts.map +1 -0
  604. package/dist/components/theme-toggle/index.d.ts.map +1 -0
  605. package/dist/components/theme-toggle/index.js.map +1 -0
  606. package/dist/components/theme-toggle/theme-toggle.agent.d.ts.map +1 -0
  607. package/dist/components/theme-toggle/theme-toggle.d.ts.map +1 -0
  608. package/dist/components/time-picker/index.d.ts.map +1 -0
  609. package/dist/components/time-picker/index.js.map +1 -0
  610. package/dist/components/time-picker/time-picker.agent.d.ts.map +1 -0
  611. package/dist/components/time-picker/time-picker.d.ts.map +1 -0
  612. package/dist/components/timeline/index.d.ts.map +1 -0
  613. package/dist/components/timeline/index.js.map +1 -0
  614. package/dist/components/timeline/timeline.agent.d.ts.map +1 -0
  615. package/dist/components/timeline/timeline.d.ts.map +1 -0
  616. package/dist/components/timestamp/index.d.ts.map +1 -0
  617. package/dist/components/timestamp/index.js.map +1 -0
  618. package/dist/components/timestamp/timestamp.d.ts.map +1 -0
  619. package/dist/components/toast/index.d.ts.map +1 -0
  620. package/dist/components/toast/index.js.map +1 -0
  621. package/dist/components/toast/toast.agent.d.ts.map +1 -0
  622. package/dist/components/toast/toast.d.ts.map +1 -0
  623. package/dist/components/tooltip/index.d.ts.map +1 -0
  624. package/dist/components/tooltip/index.js.map +1 -0
  625. package/dist/components/tooltip/tooltip.d.ts.map +1 -0
  626. package/dist/components/tooth-scheme/index.d.ts.map +1 -0
  627. package/dist/components/tooth-scheme/index.js.map +1 -0
  628. package/dist/components/tooth-scheme/tooth-data.d.ts.map +1 -0
  629. package/dist/components/tooth-scheme/tooth-scheme.agent.d.ts.map +1 -0
  630. package/dist/components/tooth-scheme/tooth-scheme.d.ts.map +1 -0
  631. package/dist/components/transaction-chip/index.d.ts.map +1 -0
  632. package/dist/components/transaction-chip/index.js.map +1 -0
  633. package/dist/components/transaction-chip/transaction-chip.d.ts.map +1 -0
  634. package/dist/components/transcript-panel/index.d.ts.map +1 -0
  635. package/dist/components/transcript-panel/index.js.map +1 -0
  636. package/dist/components/transcript-panel/transcript-panel.agent.d.ts.map +1 -0
  637. package/dist/components/transcript-panel/transcript-panel.d.ts.map +1 -0
  638. package/dist/components/typing-indicator/index.d.ts.map +1 -0
  639. package/dist/components/typing-indicator/index.js.map +1 -0
  640. package/dist/components/typing-indicator/typing-indicator.d.ts.map +1 -0
  641. package/dist/components/visually-hidden/index.d.ts.map +1 -0
  642. package/dist/components/visually-hidden/index.js.map +1 -0
  643. package/dist/components/visually-hidden/visually-hidden.d.ts.map +1 -0
  644. package/dist/components/warning-stack/index.d.ts.map +1 -0
  645. package/dist/components/warning-stack/index.js.map +1 -0
  646. package/dist/components/warning-stack/warning-stack.d.ts.map +1 -0
  647. package/dist/components/workflow/index.d.ts.map +1 -0
  648. package/dist/components/workflow/index.js.map +1 -0
  649. package/dist/components/workflow/workflow-card.d.ts.map +1 -0
  650. package/dist/components/workflow/workflow-editor.d.ts.map +1 -0
  651. package/dist/components/workflow/workflow-map.d.ts.map +1 -0
  652. package/dist/components/workflow/workflow-types.d.ts.map +1 -0
  653. package/dist/components/workflow/workflow.agent.d.ts.map +1 -0
  654. package/dist/hooks/index.d.ts.map +1 -0
  655. package/dist/hooks/index.js.map +1 -0
  656. package/dist/hooks/use-locale.d.ts.map +1 -0
  657. package/dist/hooks/use-media-query.d.ts.map +1 -0
  658. package/dist/hooks/use-prefers-reduced-motion.d.ts.map +1 -0
  659. package/dist/hooks/use-theme.d.ts.map +1 -0
  660. package/dist/i18n/config.d.ts.map +1 -0
  661. package/dist/i18n/config.js +12 -0
  662. package/dist/i18n/config.js.map +1 -0
  663. package/dist/i18n/resources.d.ts +12 -0
  664. package/dist/i18n/resources.d.ts.map +1 -0
  665. package/dist/index.js +357 -355
  666. package/dist/index.js.map +1 -0
  667. package/dist/locales/de.json +4 -0
  668. package/dist/locales/en.json +4 -0
  669. package/dist/locales/it.json +4 -0
  670. package/dist/option/index.js.map +1 -0
  671. package/dist/patterns/leo-assistant/index.d.ts.map +1 -0
  672. package/dist/patterns/leo-assistant/index.js.map +1 -0
  673. package/dist/patterns/leo-assistant/leo-chat-surface.d.ts.map +1 -0
  674. package/dist/patterns/leo-assistant/leo-embedded.d.ts.map +1 -0
  675. package/dist/patterns/leo-assistant/leo-popout.d.ts.map +1 -0
  676. package/dist/patterns/leo-assistant/leo-sidebar.d.ts.map +1 -0
  677. package/dist/patterns/leo-assistant/leo-types.d.ts.map +1 -0
  678. package/dist/patterns/patient-shell/index.d.ts.map +1 -0
  679. package/dist/patterns/patient-shell/index.js.map +1 -0
  680. package/dist/patterns/patient-shell/patient-shell.d.ts.map +1 -0
  681. package/dist/safe-html/index.js.map +1 -0
  682. package/dist/tokens/apexcharts-theme.d.ts.map +1 -0
  683. package/dist/tokens/themes/bridges/stripe-appearance.d.ts.map +1 -0
  684. package/dist/tokens.css +1 -1
  685. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"combobox-BLWruOxK.js","sources":["../../src/components/combobox/combobox.agent.ts","../../src/components/combobox/combobox.tsx"],"sourcesContent":["import type { AgentAdapter } from '../../agent/types';\nimport type { ComboboxHandle } from './combobox';\n\nexport const comboboxAgent: AgentAdapter<ComboboxHandle> = {\n id: 'combobox',\n capabilities: ['select_single', 'pick', 'filter', 'open', 'close'],\n state: {\n value: {\n type: 'string | null',\n description:\n 'Currently-selected option value, or null when nothing is selected.',\n read: (handle) => handle.getValue(),\n },\n query: {\n type: 'string',\n description: 'Current filter query in the combobox input.',\n read: (handle) => handle.getQuery(),\n },\n isOpen: {\n type: 'boolean',\n description: 'True when the option list is visible.',\n read: (handle) => handle.getIsOpen(),\n },\n },\n actions: {\n set_value: {\n safety: 'read',\n argsType: '{ value: string | null }',\n description: 'Set the selected value programmatically.',\n invoke: (handle, args: { value: string | null }) => {\n handle.setValue(args.value);\n },\n },\n apply_filter: {\n safety: 'read',\n argsType: '{ query: string }',\n description: 'Set the filter query for the option list.',\n invoke: (handle, args: { query: string }) => {\n handle.setQuery(args.query);\n },\n },\n clear_selection: {\n safety: 'read',\n description: 'Clear the current selection.',\n invoke: (handle) => {\n handle.clear();\n },\n },\n open: {\n safety: 'read',\n description: 'Open the option list.',\n invoke: (handle) => {\n handle.open();\n },\n },\n close: {\n safety: 'read',\n description: 'Close the option list.',\n invoke: (handle) => {\n handle.close();\n },\n },\n },\n domHooks: {\n root: { attr: 'data-component', value: 'combobox' },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description: 'Sourced from the id prop.',\n },\n item: {\n attr: 'data-option-id',\n description: 'Each option emits its value as data-option-id.',\n },\n },\n};\n","import {\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n type KeyboardEvent,\n type MouseEvent,\n type ReactElement,\n type ReactNode,\n type Ref,\n} from 'react';\nimport * as Popover from '@radix-ui/react-popover';\nimport { Command, defaultFilter, useCommandState } from 'cmdk';\nimport { cva } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport { Check, X } from 'lucide-react';\nimport {\n FormFieldContext,\n useFormField,\n} from '../form-field/form-field-context';\nimport type { OptionShape } from '../_shared/option';\nimport { composeRefs } from '../_shared/compose-refs';\nimport { normalizeDiacritics } from '../_shared/normalize-diacritics';\nimport { groupOptions } from '../_shared/group-options';\nimport {\n INPUT_SURFACE_CHROME,\n INPUT_SURFACE_HEIGHT,\n INPUT_SURFACE_PADDING_X,\n INPUT_SURFACE_TONE,\n} from '../_shared/input-surface';\nimport { useAgentRegistration } from '../../agent';\nimport { comboboxAgent } from './combobox.agent';\n\nexport type ComboboxOption<T extends string = string> = OptionShape<T>;\n\n// Curated agent-readiness handle — see combobox.agent.ts.\nexport interface ComboboxHandle {\n getValue: () => string | null;\n getQuery: () => string;\n getIsOpen: () => boolean;\n setValue: (value: string | null) => void;\n setQuery: (query: string) => void;\n clear: () => void;\n open: () => void;\n close: () => void;\n}\n\nexport interface ComboboxProps<T extends string = string> {\n options: ComboboxOption<T>[];\n value?: T | '';\n defaultValue?: T;\n onValueChange?: (value: T | '') => void;\n placeholder?: string;\n clearable?: boolean;\n disabled?: boolean;\n readOnly?: boolean;\n required?: boolean;\n name?: string;\n id?: string;\n size?: 'sm' | 'md' | 'lg';\n tone?: 'default' | 'error';\n filter?: (value: string, search: string) => number;\n allowCreate?: boolean;\n onCreate?: (value: string) => void;\n open?: boolean;\n onOpenChange?: (open: boolean) => void;\n emptyMessage?: ReactNode;\n 'aria-label'?: string;\n className?: string;\n}\n\nconst comboboxInputVariants = cva(\n [\n 'ds:peer ds:w-full ds:bg-transparent ds:text-foreground ds:placeholder:text-muted-foreground',\n 'ds:outline-none ds:border-0',\n 'ds:disabled:cursor-not-allowed',\n ].join(' '),\n {\n variants: {\n size: {\n sm: 'ds:text-[length:var(--font-size-sm)]',\n md: 'ds:text-[length:var(--font-size-base)]',\n lg: 'ds:text-[length:var(--font-size-lg)]',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n },\n);\n\nconst comboboxWrapperVariants = cva(\n [\n 'ds:group ds:relative ds:inline-flex ds:items-center ds:gap-[var(--spacing-sm)] ds:w-full',\n INPUT_SURFACE_CHROME,\n ].join(' '),\n {\n variants: {\n size: {\n sm: `${INPUT_SURFACE_HEIGHT.sm} ${INPUT_SURFACE_PADDING_X.sm}`,\n md: `${INPUT_SURFACE_HEIGHT.md} ${INPUT_SURFACE_PADDING_X.md}`,\n lg: `${INPUT_SURFACE_HEIGHT.lg} ${INPUT_SURFACE_PADDING_X.lg}`,\n },\n tone: INPUT_SURFACE_TONE,\n },\n defaultVariants: {\n size: 'md',\n tone: 'default',\n },\n },\n);\n\nconst comboboxContentVariants = cva(\n [\n 'ds:z-[var(--z-popover)] ds:overflow-hidden ds:w-[var(--radix-popover-trigger-width)]',\n 'ds:rounded-[var(--radius-md)] ds:border ds:border-border ds:bg-background ds:text-foreground',\n 'ds:shadow-[var(--shadow-lg)]',\n 'ds:animate-in ds:fade-in ds:zoom-in-95',\n 'ds:data-[state=closed]:animate-out ds:data-[state=closed]:fade-out',\n 'ds:data-[state=closed]:zoom-out-95',\n 'ds:data-[side=bottom]:slide-in-from-top-2',\n 'ds:data-[side=top]:slide-in-from-bottom-2',\n 'ds:motion-reduce:animate-none',\n ].join(' '),\n);\n\nconst comboboxItemVariants = cva(\n [\n 'ds:relative ds:flex ds:cursor-pointer ds:items-center ds:gap-[var(--spacing-sm)]',\n 'ds:rounded-[var(--radius-sm)]',\n 'ds:text-foreground ds:outline-none ds:select-none',\n 'ds:data-[highlighted]:bg-muted ds:data-[highlighted]:text-foreground',\n 'ds:data-[highlighted]:border-s-2 ds:data-[highlighted]:border-s-primary',\n 'ds:aria-selected:bg-muted',\n 'ds:aria-disabled:pointer-events-none ds:aria-disabled:opacity-50',\n ].join(' '),\n {\n variants: {\n size: {\n sm: 'ds:min-h-8 ds:ps-3 ds:pe-3 ds:text-[length:var(--font-size-sm)]',\n md: 'ds:min-h-[var(--min-target-size)] ds:ps-3 ds:pe-3 ds:text-[length:var(--font-size-base)]',\n lg: 'ds:min-h-12 ds:ps-4 ds:pe-4 ds:text-[length:var(--font-size-lg)]',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n },\n);\n\nconst comboboxGroupHeadingClasses = [\n 'ds:ps-3 ds:pe-3 ds:py-1.5',\n 'type-eyebrow ds:text-muted-foreground',\n].join(' ');\n\nconst comboboxListClasses =\n 'ds:max-h-[18rem] ds:overflow-y-auto ds:p-[var(--spacing-xs)]';\n\nconst comboboxEmptyClasses =\n 'ds:ps-3 ds:pe-3 ds:py-2 type-body-sm ds:text-muted-foreground';\n\nconst iconSizeBySize = {\n sm: 'ds:size-3.5',\n md: 'ds:size-4',\n lg: 'ds:size-5',\n} as const;\n\ninterface CreateRowProps {\n search: string;\n label: string;\n iconClass: string;\n size: 'sm' | 'md' | 'lg';\n onSelect: (value: string) => void;\n}\n\nfunction ComboboxCreateRow({\n search,\n label,\n iconClass,\n size,\n onSelect,\n}: CreateRowProps): ReactElement | null {\n // Only surface the create row when no existing item matches the query.\n const filteredCount = useCommandState((state) => state.filtered.count);\n if (filteredCount > 0) return null;\n return (\n <Command.Item\n value={`__combobox-create__${search}`}\n keywords={[]}\n forceMount\n onSelect={() => onSelect(search)}\n className={comboboxItemVariants({ size })}\n >\n <span\n aria-hidden=\"true\"\n className={`ds:inline-flex ds:items-center ds:justify-center ${iconClass}`}\n />\n <span className=\"ds:flex-1 ds:truncate\">{label}</span>\n </Command.Item>\n );\n}\n\nconst ComboboxImpl = forwardRef<HTMLInputElement, ComboboxProps>(\n function Combobox(\n {\n options,\n value,\n defaultValue,\n onValueChange,\n placeholder,\n clearable = false,\n disabled,\n readOnly,\n required,\n name,\n id,\n size = 'md',\n tone = 'default',\n filter: externalFilter,\n allowCreate = false,\n onCreate,\n open: openProp,\n onOpenChange,\n emptyMessage,\n className,\n 'aria-label': ariaLabel,\n },\n ref,\n ) {\n const { t } = useTranslation();\n const ctx = useFormField();\n const inFormField = useContext(FormFieldContext) !== null;\n\n const [internalValue, setInternalValue] = useState<string>(\n value ?? defaultValue ?? '',\n );\n const isControlled = value !== undefined;\n const currentValue = isControlled ? value : internalValue;\n\n const selectedOption = useMemo(\n () => options.find((o) => o.value === currentValue),\n [options, currentValue],\n );\n const selectedLabel = selectedOption?.label ?? '';\n\n const [search, setSearch] = useState<string>(selectedLabel);\n const [internalOpen, setInternalOpen] = useState(false);\n const isOpenControlled = openProp !== undefined;\n const open = isOpenControlled ? openProp : internalOpen;\n const composingRef = useRef(false);\n\n const inputRef = useRef<HTMLInputElement>(null);\n const anchorRef = useRef<HTMLDivElement>(null);\n\n useLayoutEffect(() => {\n inputRef.current?.setAttribute('aria-expanded', String(open));\n });\n\n useEffect(() => {\n if (!open) {\n setSearch(selectedLabel);\n }\n }, [selectedLabel, open]);\n\n const inputId = id ?? (inFormField ? ctx.id : undefined);\n const effectiveDisabled =\n (inFormField ? ctx.disabled : false) || Boolean(disabled);\n const effectiveReadOnly = Boolean(readOnly);\n const effectiveRequired =\n (inFormField ? ctx.required : false) || Boolean(required);\n const effectiveInvalid = inFormField ? ctx.invalid : false;\n const effectiveTone = effectiveInvalid ? 'error' : tone;\n const describedBy =\n inFormField && ctx.describedBy ? ctx.describedBy : undefined;\n\n const resolvedPlaceholder =\n placeholder ?? t('ui.inputs.combobox.placeholder', 'Search…');\n\n const filterFn = useMemo(\n () => (candidate: string, searchStr: string, keywords?: string[]) => {\n if (composingRef.current) return 1;\n const normalizedCandidate = normalizeDiacritics(candidate);\n const normalizedSearch = normalizeDiacritics(searchStr);\n const normalizedKeywords = keywords?.map(normalizeDiacritics);\n if (externalFilter) {\n return externalFilter(normalizedCandidate, normalizedSearch);\n }\n return defaultFilter(\n normalizedCandidate,\n normalizedSearch,\n normalizedKeywords,\n );\n },\n [externalFilter],\n );\n\n const emitValue = onValueChange as ((next: string) => void) | undefined;\n\n const commit = (next: string) => {\n if (!isControlled) setInternalValue(next);\n emitValue?.(next);\n };\n\n const setOpen = (next: boolean) => {\n if (!isOpenControlled) setInternalOpen(next);\n onOpenChange?.(next);\n };\n\n const handleSelect = (optValue: string) => {\n const option = options.find((o) => o.value === optValue);\n commit(optValue);\n setSearch(option?.label ?? '');\n setOpen(false);\n };\n\n const handleCreate = (nextValue: string) => {\n onCreate?.(nextValue);\n setOpen(false);\n };\n\n const handleSearchChange = (next: string) => {\n if (effectiveReadOnly) return;\n setSearch(next);\n if (!open && next.length > 0 && !composingRef.current) {\n setOpen(true);\n }\n };\n\n const handleFocus = () => {\n if (!effectiveDisabled && !effectiveReadOnly) setOpen(true);\n };\n\n const handleCompositionStart = () => {\n composingRef.current = true;\n };\n\n const handleCompositionEnd = () => {\n composingRef.current = false;\n if (effectiveReadOnly) return;\n const next = inputRef.current?.value ?? '';\n setSearch(next);\n if (next.length > 0) setOpen(true);\n };\n\n const handleKeyDown = (event: KeyboardEvent<HTMLInputElement>) => {\n if (event.nativeEvent.isComposing) return;\n if (event.key === 'Escape' && open) {\n event.preventDefault();\n setOpen(false);\n setSearch(selectedLabel);\n }\n };\n\n const handleClear = (event: MouseEvent<HTMLButtonElement>) => {\n event.preventDefault();\n event.stopPropagation();\n commit('');\n setSearch('');\n setOpen(true);\n inputRef.current?.focus();\n };\n\n const handleOpenChange = (next: boolean) => {\n if (effectiveReadOnly && next) return;\n setOpen(next);\n if (!next) setSearch(selectedLabel);\n };\n\n // Agent handle — refs mirror state for fresh reads.\n const valueRef = useRef<string>(currentValue);\n useEffect(() => {\n valueRef.current = currentValue;\n }, [currentValue]);\n const searchRef = useRef<string>(search);\n useEffect(() => {\n searchRef.current = search;\n }, [search]);\n const openRef = useRef<boolean>(open);\n useEffect(() => {\n openRef.current = open;\n }, [open]);\n\n const setOpenStable = useCallback(\n (next: boolean) => {\n if (!isOpenControlled) setInternalOpen(next);\n onOpenChange?.(next);\n },\n [isOpenControlled, onOpenChange],\n );\n\n const agentHandle = useMemo<ComboboxHandle>(\n () => ({\n getValue: () => valueRef.current || null,\n getQuery: () => searchRef.current,\n getIsOpen: () => openRef.current,\n setValue: (next) => {\n const v = next ?? '';\n if (!isControlled) setInternalValue(v);\n emitValue?.(v);\n const opt = options.find((o) => o.value === v);\n setSearch(opt?.label ?? '');\n },\n setQuery: (query) => {\n setSearch(query);\n },\n clear: () => {\n if (!isControlled) setInternalValue('');\n emitValue?.('');\n setSearch('');\n },\n open: () => setOpenStable(true),\n close: () => setOpenStable(false),\n }),\n [emitValue, isControlled, options, setOpenStable],\n );\n useAgentRegistration(comboboxAgent, agentHandle, id);\n\n const showClear =\n clearable &&\n Boolean(currentValue) &&\n !effectiveDisabled &&\n !effectiveReadOnly;\n\n const groups = groupOptions(options);\n const iconClass = iconSizeBySize[size];\n\n return (\n <Popover.Root open={open} onOpenChange={handleOpenChange}>\n <Command\n filter={filterFn}\n shouldFilter\n loop\n // cmdk hardcodes `aria-labelledby` on its input to its own hidden\n // `<label cmdk-label>` element. The label's contents come from the\n // Command Root's `label` (or `aria-label`) prop. If we leave it\n // empty, the input has an aria-labelledby pointer to a blank\n // element and axe's `label-title-only` rule fires. Fall back to\n // the placeholder so the input always has an accessible name —\n // when wrapped in a FormField the visible label still associates\n // via the FormField `<label htmlFor>`.\n label={ariaLabel ?? resolvedPlaceholder}\n className=\"ds:w-full\"\n >\n <Popover.Anchor asChild>\n <div\n ref={anchorRef}\n className={comboboxWrapperVariants({\n size,\n tone: effectiveTone,\n className,\n })}\n data-component=\"combobox\"\n data-component-id={id}\n >\n <Command.Input\n ref={composeRefs(ref, inputRef)}\n value={search}\n onValueChange={handleSearchChange}\n id={inputId}\n name={name}\n placeholder={resolvedPlaceholder}\n disabled={effectiveDisabled}\n readOnly={effectiveReadOnly}\n required={effectiveRequired}\n // Note: cmdk's CommandInput hardcodes `aria-labelledby` to\n // its own hidden cmdk-label after spreading user props, so\n // we can't override it from here. We funnel the accessible\n // name through the Command Root's `label` prop above.\n aria-describedby={describedBy}\n aria-invalid={effectiveInvalid || undefined}\n onFocus={handleFocus}\n onKeyDown={handleKeyDown}\n onCompositionStart={handleCompositionStart}\n onCompositionEnd={handleCompositionEnd}\n className={comboboxInputVariants({ size })}\n />\n {showClear ? (\n <button\n type=\"button\"\n aria-label={t('ui.inputs.combobox.clear', 'Clear selection')}\n onClick={handleClear}\n onPointerDown={(event) => event.stopPropagation()}\n className={[\n 'ds:inline-flex ds:items-center ds:justify-center ds:rounded-[var(--radius-sm)]',\n 'ds:text-muted-foreground ds:hover:text-foreground',\n 'ds:transition-colors ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none',\n 'ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid',\n 'ds:focus-visible:outline-ring ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]',\n 'ds:size-4',\n ].join(' ')}\n >\n <X aria-hidden=\"true\" className=\"ds:size-3.5\" />\n </button>\n ) : null}\n </div>\n </Popover.Anchor>\n <Popover.Portal forceMount>\n <Popover.Content\n // `forceMount` keeps the listbox in the DOM while the popover\n // is closed so the input's cmdk-set `aria-controls` always\n // points at a real id (axe's aria-valid-attr-value rule).\n // The CSS visibility / pointer-events is gated by data-state.\n forceMount\n hidden={!open}\n // Radix Popover.Content carries `role=\"dialog\"`; axe's\n // `aria-dialog-name` rule requires a name. Surface the\n // surrounding combobox label so the popover is named after\n // the field it serves (or fall back to the i18n default).\n aria-label={\n ariaLabel ?? t('ui.inputs.combobox.popupLabel', 'Options')\n }\n onOpenAutoFocus={(event) => event.preventDefault()}\n onCloseAutoFocus={(event) => event.preventDefault()}\n onInteractOutside={(event) => {\n const target = event.target as Node | null;\n if (target && anchorRef.current?.contains(target)) {\n event.preventDefault();\n }\n }}\n sideOffset={4}\n align=\"start\"\n className={comboboxContentVariants()}\n >\n <Command.List className={comboboxListClasses}>\n <Command.Empty className={comboboxEmptyClasses}>\n {emptyMessage ??\n t('ui.inputs.combobox.empty', 'No results found')}\n </Command.Empty>\n {groups.map(({ group, items }, groupIndex) => {\n const body = items.map((option) => {\n const isSelected = option.value === currentValue;\n return (\n <Command.Item\n key={option.value}\n value={option.value}\n keywords={[option.label]}\n disabled={option.disabled}\n onSelect={handleSelect}\n className={comboboxItemVariants({ size })}\n >\n <span\n aria-hidden=\"true\"\n className={`ds:inline-flex ds:items-center ds:justify-center ${iconClass}`}\n >\n {isSelected ? <Check className={iconClass} /> : null}\n </span>\n <span className=\"ds:flex-1 ds:truncate\">\n {option.label}\n </span>\n {option.description ? (\n <span className=\"type-meta ds:text-muted-foreground\">\n {option.description}\n </span>\n ) : null}\n </Command.Item>\n );\n });\n if (!group) {\n return (\n <Command.Group key={`group-${groupIndex}`}>\n {body}\n </Command.Group>\n );\n }\n return (\n <Command.Group\n key={`group-${group}`}\n heading={\n <span className={comboboxGroupHeadingClasses}>\n {group}\n </span>\n }\n >\n {body}\n </Command.Group>\n );\n })}\n {allowCreate && search.length > 0 ? (\n <ComboboxCreateRow\n search={search}\n label={t(\n 'ui.inputs.combobox.create',\n 'Create \"{{value}}\"',\n {\n value: search,\n },\n )}\n iconClass={iconClass}\n size={size}\n onSelect={handleCreate}\n />\n ) : null}\n </Command.List>\n </Popover.Content>\n </Popover.Portal>\n </Command>\n </Popover.Root>\n );\n },\n);\nComboboxImpl.displayName = 'Combobox';\n\ninterface ComboboxComponent {\n <T extends string = string>(\n props: ComboboxProps<T> & { ref?: Ref<HTMLInputElement> },\n ): ReactElement | null;\n displayName?: string;\n}\n\n// forwardRef erases component-level generics, so we re-widen via a callable\n// interface to preserve the `<T extends string>` signature at the call site.\nexport const Combobox = ComboboxImpl as unknown as ComboboxComponent;\n\nexport {\n comboboxInputVariants,\n comboboxWrapperVariants,\n comboboxContentVariants,\n comboboxItemVariants,\n};\n"],"names":["comboboxAgent","handle","args","comboboxInputVariants","cva","comboboxWrapperVariants","INPUT_SURFACE_CHROME","INPUT_SURFACE_HEIGHT","INPUT_SURFACE_PADDING_X","INPUT_SURFACE_TONE","comboboxContentVariants","comboboxItemVariants","comboboxGroupHeadingClasses","comboboxListClasses","comboboxEmptyClasses","iconSizeBySize","ComboboxCreateRow","search","label","iconClass","size","onSelect","useCommandState","state","jsxs","Command","jsx","ComboboxImpl","forwardRef","options","value","defaultValue","onValueChange","placeholder","clearable","disabled","readOnly","required","name","id","tone","externalFilter","allowCreate","onCreate","openProp","onOpenChange","emptyMessage","className","ariaLabel","ref","t","useTranslation","ctx","useFormField","inFormField","useContext","FormFieldContext","internalValue","setInternalValue","useState","isControlled","currentValue","selectedOption","useMemo","o","selectedLabel","setSearch","internalOpen","setInternalOpen","isOpenControlled","open","composingRef","useRef","inputRef","anchorRef","useLayoutEffect","_a","useEffect","inputId","effectiveDisabled","effectiveReadOnly","effectiveRequired","effectiveInvalid","effectiveTone","describedBy","resolvedPlaceholder","filterFn","candidate","searchStr","keywords","normalizedCandidate","normalizeDiacritics","normalizedSearch","normalizedKeywords","defaultFilter","emitValue","commit","next","setOpen","handleSelect","optValue","option","handleCreate","nextValue","handleSearchChange","handleFocus","handleCompositionStart","handleCompositionEnd","handleKeyDown","event","handleClear","handleOpenChange","valueRef","searchRef","openRef","setOpenStable","useCallback","agentHandle","v","opt","query","useAgentRegistration","showClear","groups","groupOptions","Popover","composeRefs","X","target","group","items","groupIndex","body","isSelected","Check","Combobox"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-palette-DkL-aW4O.js","sources":["../../src/components/command-palette/command-palette.agent.ts","../../src/components/command-palette/command-palette.tsx"],"sourcesContent":["import type { AgentAdapter } from '../../agent/types';\nimport type { CommandPaletteHandle } from './command-palette';\n\nexport const commandPaletteAgent: AgentAdapter<CommandPaletteHandle> = {\n id: 'command-palette',\n capabilities: ['open', 'close', 'filter', 'pick', 'submit'],\n state: {\n query: {\n type: 'string',\n description: 'Current filter query in the command palette input.',\n read: (handle) => handle.getQuery(),\n },\n isOpen: {\n type: 'boolean',\n description: 'True when the palette is visible.',\n read: (handle) => handle.getIsOpen(),\n },\n },\n actions: {\n open: {\n safety: 'read',\n description: 'Open the command palette.',\n invoke: (handle) => {\n handle.open();\n },\n },\n close: {\n safety: 'read',\n description: 'Close the command palette.',\n invoke: (handle) => {\n handle.close();\n },\n },\n apply_filter: {\n safety: 'read',\n argsType: '{ query: string }',\n description: 'Set the filter query.',\n invoke: (handle, args: { query: string }) => {\n handle.setQuery(args.query);\n },\n },\n },\n domHooks: {\n root: { attr: 'data-component', value: 'command-palette' },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description: 'Sourced from the id prop.',\n },\n item: {\n attr: 'data-command-id',\n description: 'Each command item emits its key as data-command-id.',\n },\n },\n};\n","import {\n forwardRef,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n type ComponentPropsWithoutRef,\n type ElementRef,\n type ReactNode,\n} from 'react';\nimport { Command as CommandPrimitive, defaultFilter } from 'cmdk';\nimport * as RadixDialog from '@radix-ui/react-dialog';\nimport { useTranslation } from 'react-i18next';\nimport { Search } from 'lucide-react';\nimport { useAgentRegistration } from '../../agent';\nimport { commandPaletteAgent } from './command-palette.agent';\n\n/* -------------------------------------------------------------------- */\n/* Types */\n/* -------------------------------------------------------------------- */\n\nexport interface Command {\n id: string;\n label: string;\n group: string;\n keywords?: string[];\n shortcut?: string;\n onSelect: () => void;\n /** Optional leading icon. */\n icon?: ReactNode;\n}\n\n/* -------------------------------------------------------------------- */\n/* Diacritic-insensitive normaliser */\n/* -------------------------------------------------------------------- */\n\nfunction normalise(value: string): string {\n return value\n .normalize('NFD')\n .replace(/\\p{Diacritic}/gu, '')\n .toLowerCase();\n}\n\nexport const diacriticInsensitiveFilter = (\n value: string,\n search: string,\n keywords?: string[],\n) =>\n defaultFilter(normalise(value), normalise(search), keywords?.map(normalise));\n\n/* -------------------------------------------------------------------- */\n/* Recents (localStorage, SSR-safe) */\n/* -------------------------------------------------------------------- */\n\nconst RECENTS_KEY = 'ui.cmdk.recents';\nconst MAX_RECENTS = 5;\n\nfunction readRecents(): string[] {\n if (typeof window === 'undefined') return [];\n try {\n const raw = window.localStorage.getItem(RECENTS_KEY);\n if (!raw) return [];\n const parsed = JSON.parse(raw);\n return Array.isArray(parsed)\n ? parsed.slice(0, MAX_RECENTS).filter((v) => typeof v === 'string')\n : [];\n } catch {\n return [];\n }\n}\n\nfunction writeRecents(ids: string[]) {\n if (typeof window === 'undefined') return;\n try {\n window.localStorage.setItem(\n RECENTS_KEY,\n JSON.stringify(ids.slice(0, MAX_RECENTS)),\n );\n } catch {\n /* noop */\n }\n}\n\n/* -------------------------------------------------------------------- */\n/* useCommandPalette — Cmd/Ctrl+K hook */\n/* -------------------------------------------------------------------- */\n\nexport function useCommandPalette() {\n const [open, setOpen] = useState(false);\n\n useEffect(() => {\n function handler(event: KeyboardEvent) {\n const target = event.target as HTMLElement | null;\n const tag = target?.tagName.toLowerCase();\n const isEditable =\n tag === 'input' || tag === 'textarea' || target?.isContentEditable;\n if (isEditable && !(open && event.key === 'Escape')) return;\n\n const isK = event.key === 'k' || event.key === 'K';\n const isMeta = event.metaKey || event.ctrlKey;\n if (isK && isMeta) {\n event.preventDefault();\n setOpen((v) => !v);\n }\n }\n document.addEventListener('keydown', handler);\n return () => document.removeEventListener('keydown', handler);\n }, [open]);\n\n return { open, setOpen };\n}\n\n/* -------------------------------------------------------------------- */\n/* Primitives (forwardRef wrappers around cmdk + dialog chrome) */\n/* -------------------------------------------------------------------- */\n\nconst rootClasses = [\n 'ds:flex ds:h-full ds:w-full ds:flex-col ds:overflow-hidden',\n 'ds:rounded-[var(--radius-md)]',\n 'ds:bg-[var(--background)] ds:text-[var(--foreground)]',\n].join(' ');\n\nexport type CommandPaletteRootProps = ComponentPropsWithoutRef<\n typeof CommandPrimitive\n>;\n\n// Curated agent-readiness handle — see command-palette.agent.ts.\nexport interface CommandPaletteHandle {\n getQuery: () => string;\n getIsOpen: () => boolean;\n open: () => void;\n close: () => void;\n setQuery: (query: string) => void;\n}\n\nconst CommandPalette = forwardRef<\n ElementRef<typeof CommandPrimitive>,\n CommandPaletteRootProps\n>(({ className, filter = diacriticInsensitiveFilter, id, ...rest }, ref) => (\n <CommandPrimitive\n ref={ref}\n filter={filter}\n className={[rootClasses, className].filter(Boolean).join(' ')}\n data-component=\"command-palette\"\n data-component-id={id}\n {...rest}\n />\n));\nCommandPalette.displayName = 'CommandPalette';\n\n/* -------------------------------------------------------------------- */\n/* Input */\n/* -------------------------------------------------------------------- */\n\nconst inputWrapClasses = [\n 'ds:flex ds:items-center',\n 'ds:border-block-end ds:border-[var(--border)]',\n 'ds:ps-[var(--spacing-md)] ds:pe-[var(--spacing-sm)]',\n].join(' ');\n\nconst inputClasses = [\n 'ds:flex ds:w-full ds:bg-transparent',\n 'ds:min-h-[var(--min-target-size)]',\n 'ds:text-[var(--font-size-base)] ds:text-[var(--foreground)]',\n 'ds:placeholder:text-[var(--muted-foreground)]',\n 'ds:outline-none',\n 'ds:disabled:cursor-not-allowed ds:disabled:opacity-50',\n 'ds:border-0',\n].join(' ');\n\nexport type CommandInputProps = ComponentPropsWithoutRef<\n typeof CommandPrimitive.Input\n>;\n\nconst CommandInput = forwardRef<\n ElementRef<typeof CommandPrimitive.Input>,\n CommandInputProps\n>(({ className, placeholder, ...rest }, ref) => {\n const { t } = useTranslation();\n return (\n <div className={inputWrapClasses}>\n <Search\n aria-hidden=\"true\"\n className=\"ds:size-4 ds:me-2 ds:text-[var(--muted-foreground)]\"\n />\n <CommandPrimitive.Input\n ref={ref}\n placeholder={\n placeholder ??\n t('navigation.cmdk.placeholder', 'Type a command or search\\u2026')\n }\n className={[inputClasses, className].filter(Boolean).join(' ')}\n {...rest}\n />\n </div>\n );\n});\nCommandInput.displayName = 'CommandInput';\n\n/* -------------------------------------------------------------------- */\n/* List / Empty / Group / Item / Separator */\n/* -------------------------------------------------------------------- */\n\nconst CommandList = forwardRef<\n ElementRef<typeof CommandPrimitive.List>,\n ComponentPropsWithoutRef<typeof CommandPrimitive.List>\n>(({ className, ...rest }, ref) => (\n <CommandPrimitive.List\n ref={ref}\n className={[\n 'ds:max-h-[20rem] ds:overflow-y-auto',\n 'ds:ps-[var(--spacing-xs)] ds:pe-[var(--spacing-xs)]',\n 'ds:py-[var(--spacing-xs)]',\n className ?? '',\n ]\n .filter(Boolean)\n .join(' ')}\n {...rest}\n />\n));\nCommandList.displayName = 'CommandList';\n\nconst CommandEmpty = forwardRef<\n ElementRef<typeof CommandPrimitive.Empty>,\n ComponentPropsWithoutRef<typeof CommandPrimitive.Empty>\n>(({ className, children, ...rest }, ref) => {\n const { t } = useTranslation();\n return (\n <CommandPrimitive.Empty\n ref={ref}\n className={[\n 'ds:py-[var(--spacing-lg)] ds:text-center',\n 'type-body-sm ds:text-[var(--muted-foreground)]',\n className ?? '',\n ]\n .filter(Boolean)\n .join(' ')}\n {...rest}\n >\n {children ?? t('navigation.cmdk.empty', 'No results found')}\n </CommandPrimitive.Empty>\n );\n});\nCommandEmpty.displayName = 'CommandEmpty';\n\nconst CommandGroup = forwardRef<\n ElementRef<typeof CommandPrimitive.Group>,\n ComponentPropsWithoutRef<typeof CommandPrimitive.Group>\n>(({ className, heading, ...rest }, ref) => (\n <CommandPrimitive.Group\n ref={ref}\n heading={heading}\n className={[\n 'ds:overflow-hidden',\n 'ds:text-[var(--foreground)]',\n 'ds:[&_[cmdk-group-heading]]:ps-[var(--spacing-sm)]',\n 'ds:[&_[cmdk-group-heading]]:pe-[var(--spacing-sm)]',\n 'ds:[&_[cmdk-group-heading]]:py-[var(--spacing-xs)]',\n 'ds:[&_[cmdk-group-heading]]:type-eyebrow',\n 'ds:[&_[cmdk-group-heading]]:text-[var(--muted-foreground)]',\n className ?? '',\n ]\n .filter(Boolean)\n .join(' ')}\n {...rest}\n />\n));\nCommandGroup.displayName = 'CommandGroup';\n\nconst itemClasses = [\n 'ds:relative ds:flex ds:items-center',\n 'ds:gap-[var(--spacing-sm)]',\n 'ds:min-h-[var(--min-target-size)]',\n 'ds:rounded-[var(--radius-sm)]',\n 'ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)]',\n 'ds:text-[var(--font-size-sm)] ds:text-[var(--foreground)]',\n 'ds:cursor-pointer ds:select-none ds:outline-none',\n 'ds:data-[selected=true]:bg-[var(--primary)] ds:data-[selected=true]:text-[var(--primary-foreground)]',\n 'ds:data-[selected=true]:font-[var(--font-weight-semibold)]',\n 'ds:data-[disabled=true]:pointer-events-none ds:data-[disabled=true]:opacity-50',\n 'ds:transition-colors ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none',\n].join(' ');\n\nexport type CommandItemProps = ComponentPropsWithoutRef<\n typeof CommandPrimitive.Item\n>;\n\nconst CommandItem = forwardRef<\n ElementRef<typeof CommandPrimitive.Item>,\n CommandItemProps\n>(({ className, ...rest }, ref) => (\n <CommandPrimitive.Item\n ref={ref}\n className={[itemClasses, className].filter(Boolean).join(' ')}\n {...rest}\n />\n));\nCommandItem.displayName = 'CommandItem';\n\nconst CommandSeparator = forwardRef<\n ElementRef<typeof CommandPrimitive.Separator>,\n ComponentPropsWithoutRef<typeof CommandPrimitive.Separator>\n>(({ className, ...rest }, ref) => (\n <CommandPrimitive.Separator\n ref={ref}\n className={[\n 'ds:-ms-[var(--spacing-xs)] ds:-me-[var(--spacing-xs)]',\n 'ds:my-[var(--spacing-xs)]',\n 'ds:h-px ds:bg-[var(--border)]',\n className ?? '',\n ]\n .filter(Boolean)\n .join(' ')}\n {...rest}\n />\n));\nCommandSeparator.displayName = 'CommandSeparator';\n\nexport type CommandShortcutProps = ComponentPropsWithoutRef<'kbd'>;\n\nconst CommandShortcut = forwardRef<HTMLElement, CommandShortcutProps>(\n ({ className, children, ...rest }, ref) => (\n <kbd\n ref={ref}\n className={[\n 'ds:ms-auto',\n 'ds:inline-flex ds:items-center',\n 'ds:ps-[var(--spacing-xs)] ds:pe-[var(--spacing-xs)]',\n 'ds:h-5 ds:rounded-[var(--radius-sm)]',\n 'ds:bg-[var(--muted)]/20 ds:text-[var(--muted-foreground)]',\n 'ds:text-[length:var(--font-size-xs)] ds:font-[var(--font-weight-medium)]',\n 'ds:data-[selected=true]:bg-[var(--primary-foreground)]/20',\n 'ds:data-[selected=true]:text-[var(--primary-foreground)]',\n className ?? '',\n ]\n .filter(Boolean)\n .join(' ')}\n {...rest}\n >\n {children}\n </kbd>\n ),\n);\nCommandShortcut.displayName = 'CommandShortcut';\n\n/* -------------------------------------------------------------------- */\n/* Highlight helper */\n/* -------------------------------------------------------------------- */\n\n/**\n * Returns React nodes that wrap the matching segments of `label` in `<mark>`.\n * Diacritic-insensitive. No `dangerouslySetInnerHTML`.\n */\nexport function highlightMatch(label: string, query: string): ReactNode {\n if (!query) return label;\n const norm = normalise(label);\n const normQ = normalise(query);\n const idx = norm.indexOf(normQ);\n if (idx === -1) return label;\n // Walk the original label using character-by-character correspondence with the\n // normalised string. Since normalise may drop diacritics, we use index mapping.\n const before = label.slice(0, idx);\n const match = label.slice(idx, idx + normQ.length);\n const after = label.slice(idx + normQ.length);\n return (\n <>\n {before}\n <mark className=\"ds:bg-[var(--accent)]/20 ds:text-inherit ds:rounded-[var(--radius-sm)] ds:px-[0.125em]\">\n {match}\n </mark>\n {after}\n </>\n );\n}\n\n/* -------------------------------------------------------------------- */\n/* CommandPaletteDialog — Dialog shell + commands-as-data API */\n/* -------------------------------------------------------------------- */\n\nexport interface CommandPaletteDialogProps {\n /** Controlled open state. */\n open: boolean;\n /** Fires when the dialog opens/closes. */\n onOpenChange: (open: boolean) => void;\n /** Commands to display. */\n commands: Command[];\n /** Extra content rendered above the input (optional). */\n header?: ReactNode;\n /** Stable id for agent registration / DOM addressing. */\n id?: string;\n}\n\nconst overlayClasses = [\n 'ds:fixed ds:inset-0 ds:z-[var(--z-modal-backdrop)]',\n 'ds:bg-[var(--foreground)]/40 ds:backdrop-blur-sm',\n 'ds:data-[state=open]:animate-in ds:data-[state=closed]:animate-out',\n 'ds:data-[state=open]:fade-in ds:data-[state=closed]:fade-out',\n 'ds:motion-reduce:animate-none',\n].join(' ');\n\nconst dialogContentClasses = [\n 'ds:fixed ds:z-[var(--z-modal)]',\n // Logical-inset arbitrary-value positioning: `inset-inline-start-1/2`\n // isn't a real Tailwind class (the generator maps fractions only to\n // `start-*`), so use `start-1/2` for horizontal and `top-*` for the\n // top offset — matching the working Dialog component.\n 'ds:top-[12vh] ds:start-1/2 ds:-translate-x-1/2 ds:rtl:translate-x-1/2',\n 'ds:w-[92vw] ds:max-w-[var(--dialog-width-lg)]',\n 'ds:rounded-[var(--radius-lg)]',\n 'ds:bg-[var(--background)] ds:text-[var(--foreground)]',\n 'ds:shadow-[var(--shadow-xl)]',\n 'ds:border ds:border-[var(--border)]',\n 'ds:data-[state=open]:animate-in ds:data-[state=closed]:animate-out',\n 'ds:data-[state=open]:zoom-in-95 ds:data-[state=closed]:zoom-out-95',\n 'ds:motion-reduce:animate-none',\n 'ds:focus:outline-none',\n].join(' ');\n\nconst VisuallyHidden = ({ children }: { children: ReactNode }) => (\n <span className=\"ds:sr-only\">{children}</span>\n);\n\nfunction CommandPaletteDialog({\n open,\n onOpenChange,\n commands,\n header,\n id,\n}: CommandPaletteDialogProps) {\n const { t } = useTranslation();\n const [search, setSearch] = useState('');\n const [recents, setRecents] = useState<string[]>(readRecents);\n\n useEffect(() => {\n if (!open) setSearch('');\n }, [open]);\n\n // Agent handle — refs mirror state for fresh reads from the memoized handle.\n const openRef = useRef(open);\n useEffect(() => {\n openRef.current = open;\n }, [open]);\n const searchRef = useRef(search);\n useEffect(() => {\n searchRef.current = search;\n }, [search]);\n const onOpenChangeRef = useRef(onOpenChange);\n useEffect(() => {\n onOpenChangeRef.current = onOpenChange;\n }, [onOpenChange]);\n\n const agentHandle = useMemo<CommandPaletteHandle>(\n () => ({\n getQuery: () => searchRef.current,\n getIsOpen: () => openRef.current,\n open: () => onOpenChangeRef.current(true),\n close: () => onOpenChangeRef.current(false),\n setQuery: (query) => setSearch(query),\n }),\n [],\n );\n useAgentRegistration(commandPaletteAgent, agentHandle, id);\n\n const grouped = useMemo(() => {\n const byGroup = new Map<string, Command[]>();\n commands.forEach((c) => {\n const list = byGroup.get(c.group) ?? [];\n list.push(c);\n byGroup.set(c.group, list);\n });\n return byGroup;\n }, [commands]);\n\n const recentCommands = useMemo(() => {\n if (search) return [];\n const byId = new Map(commands.map((c) => [c.id, c]));\n return recents.map((id) => byId.get(id)).filter(Boolean) as Command[];\n }, [commands, recents, search]);\n\n const runCommand = useCallback(\n (cmd: Command) => {\n onOpenChange(false);\n const next = [cmd.id, ...recents.filter((id) => id !== cmd.id)].slice(\n 0,\n MAX_RECENTS,\n );\n setRecents(next);\n writeRecents(next);\n // Defer so Dialog unmount doesn't swallow the callback\n setTimeout(() => cmd.onSelect(), 0);\n },\n [recents, onOpenChange],\n );\n\n const clearRecents = useCallback(() => {\n setRecents([]);\n writeRecents([]);\n }, []);\n\n return (\n <RadixDialog.Root open={open} onOpenChange={onOpenChange}>\n <RadixDialog.Portal>\n <RadixDialog.Overlay\n data-component=\"command-palette-overlay\"\n className={overlayClasses}\n />\n <RadixDialog.Content\n data-component=\"command-palette-dialog\"\n className={dialogContentClasses}\n aria-label={t('navigation.cmdk.title', 'Command palette')}\n >\n <RadixDialog.Title asChild>\n <VisuallyHidden>\n {t('navigation.cmdk.title', 'Command palette')}\n </VisuallyHidden>\n </RadixDialog.Title>\n <RadixDialog.Description asChild>\n <VisuallyHidden>\n {t(\n 'navigation.cmdk.description',\n 'Search for commands, pages, and actions',\n )}\n </VisuallyHidden>\n </RadixDialog.Description>\n <CommandPalette\n id={id}\n label={t('navigation.cmdk.title', 'Command palette')}\n >\n {header}\n <CommandInput value={search} onValueChange={setSearch} />\n <CommandList>\n <CommandEmpty />\n {recentCommands.length > 0 ? (\n <>\n <CommandGroup\n heading={t('navigation.cmdk.recents', 'Recent')}\n >\n {recentCommands.map((cmd) => (\n <CommandItem\n key={`recent-${cmd.id}`}\n value={`recent-${cmd.label}`}\n onSelect={() => runCommand(cmd)}\n >\n {cmd.icon ? (\n <span aria-hidden=\"true\">{cmd.icon}</span>\n ) : null}\n <span>{cmd.label}</span>\n {cmd.shortcut ? (\n <CommandShortcut>{cmd.shortcut}</CommandShortcut>\n ) : null}\n </CommandItem>\n ))}\n <CommandItem\n value=\"__clear-recents\"\n onSelect={clearRecents}\n >\n <span>\n {t(\n 'navigation.cmdk.clearRecents',\n 'Clear recent commands',\n )}\n </span>\n </CommandItem>\n </CommandGroup>\n <CommandSeparator />\n </>\n ) : null}\n {Array.from(grouped.entries()).map(([group, list]) => (\n <CommandGroup key={group} heading={group}>\n {list.map((cmd) => (\n <CommandItem\n key={cmd.id}\n value={cmd.label}\n keywords={cmd.keywords}\n onSelect={() => runCommand(cmd)}\n >\n {cmd.icon ? (\n <span aria-hidden=\"true\">{cmd.icon}</span>\n ) : null}\n <span>{highlightMatch(cmd.label, search)}</span>\n {cmd.shortcut ? (\n <CommandShortcut>{cmd.shortcut}</CommandShortcut>\n ) : null}\n </CommandItem>\n ))}\n </CommandGroup>\n ))}\n </CommandList>\n </CommandPalette>\n </RadixDialog.Content>\n </RadixDialog.Portal>\n </RadixDialog.Root>\n );\n}\n\nexport {\n CommandPalette,\n CommandPaletteDialog,\n CommandInput,\n CommandList,\n CommandGroup,\n CommandItem,\n CommandEmpty,\n CommandSeparator,\n CommandShortcut,\n};\n"],"names":["commandPaletteAgent","handle","args","normalise","value","diacriticInsensitiveFilter","search","keywords","defaultFilter","RECENTS_KEY","MAX_RECENTS","readRecents","raw","parsed","v","writeRecents","ids","useCommandPalette","open","setOpen","useState","useEffect","handler","event","target","tag","isK","isMeta","rootClasses","CommandPalette","forwardRef","className","filter","id","rest","ref","jsx","CommandPrimitive","inputWrapClasses","inputClasses","CommandInput","placeholder","t","useTranslation","jsxs","Search","CommandList","CommandEmpty","children","CommandGroup","heading","itemClasses","CommandItem","CommandSeparator","CommandShortcut","highlightMatch","label","query","norm","normQ","idx","before","match","after","Fragment","overlayClasses","dialogContentClasses","VisuallyHidden","CommandPaletteDialog","onOpenChange","commands","header","setSearch","recents","setRecents","openRef","useRef","searchRef","onOpenChangeRef","agentHandle","useMemo","useAgentRegistration","grouped","byGroup","c","list","recentCommands","byId","runCommand","useCallback","cmd","next","clearRecents","RadixDialog","group"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compose-refs-C0k0tdqF.js","sources":["../../src/components/_shared/compose-refs.ts"],"sourcesContent":["import type { MutableRefObject, Ref } from 'react';\n\nexport function composeRefs<T>(\n ...refs: Array<Ref<T> | undefined | null>\n): (node: T | null) => void {\n return (node: T | null) => {\n for (const r of refs) {\n if (!r) continue;\n if (typeof r === 'function') {\n r(node);\n } else {\n (r as MutableRefObject<T | null>).current = node;\n }\n }\n };\n}\n"],"names":["composeRefs","refs","node","r"],"mappings":"AAEO,SAASA,KACXC,GACuB;AAC1B,SAAO,CAACC,MAAmB;AACzB,eAAWC,KAAKF;AACd,MAAKE,MACD,OAAOA,KAAM,aACfA,EAAED,CAAI,IAELC,EAAiC,UAAUD;AAAA,EAGlD;AACF;"}
@@ -0,0 +1,137 @@
1
+ import { jsxs as t, jsx as a } from "react/jsx-runtime";
2
+ import { forwardRef as i, Fragment as b } from "react";
3
+ import { useTranslation as k } from "react-i18next";
4
+ import { C as o } from "./card-CWzuTLYE.js";
5
+ import { L as p } from "./link-BcYW1eNM.js";
6
+ import { c as L } from "./createLucideIcon-CrFbzy84.js";
7
+ /**
8
+ * @license lucide-react v1.8.0 - ISC
9
+ *
10
+ * This source code is licensed under the ISC license.
11
+ * See the LICENSE file in the root directory of this source tree.
12
+ */
13
+ const v = [
14
+ [
15
+ "path",
16
+ {
17
+ d: "M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0",
18
+ key: "1r0f0z"
19
+ }
20
+ ],
21
+ ["circle", { cx: "12", cy: "10", r: "3", key: "ilqhr7" }]
22
+ ], j = L("map-pin", v);
23
+ function O(s) {
24
+ return `tel:${s.replace(/\(0\)/g, "").replace(/[^\d+]/g, "")}`;
25
+ }
26
+ const f = i(
27
+ ({ title: s, variant: e = "default", className: d, children: n, ...c }, r) => /* @__PURE__ */ t(
28
+ o,
29
+ {
30
+ ref: r,
31
+ variant: e,
32
+ "data-component": "contact-card",
33
+ className: d,
34
+ ...c,
35
+ children: [
36
+ s !== void 0 ? /* @__PURE__ */ a(o.Header, { children: /* @__PURE__ */ a("h2", { className: "type-title-card ds:text-foreground", children: s }) }) : null,
37
+ /* @__PURE__ */ a(
38
+ o.Body,
39
+ {
40
+ className: [
41
+ "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]"
42
+ // Tighten the body padding-block-start when a header sits
43
+ // above so the whole card reads as one cohesive block rather
44
+ // than two stacked sections — Card.Header already paints
45
+ // bottom padding via `pb-0` + Card.Body's `p-md`.
46
+ ].join(" "),
47
+ children: n
48
+ }
49
+ )
50
+ ]
51
+ }
52
+ )
53
+ );
54
+ f.displayName = "ContactCard";
55
+ const u = i(
56
+ ({ name: s, lines: e, vatNumber: d, phone: n, nameAs: c = "p", className: r, ...C }, h) => {
57
+ const { t: l } = k(), N = c;
58
+ return /* @__PURE__ */ t(
59
+ "address",
60
+ {
61
+ ref: h,
62
+ "data-component": "contact-card-office",
63
+ className: [
64
+ // `not-italic` overrides the UA default for `<address>` since
65
+ // the kit's type ramp already encodes intent — italic would
66
+ // double up with a heading-bold name and read as emphasis.
67
+ "ds:not-italic ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]",
68
+ r
69
+ ].filter(Boolean).join(" "),
70
+ ...C,
71
+ children: [
72
+ /* @__PURE__ */ t(N, { className: "ds:m-0 ds:flex ds:items-center ds:gap-[var(--spacing-xs)] type-label ds:font-semibold ds:text-foreground", children: [
73
+ /* @__PURE__ */ a(
74
+ j,
75
+ {
76
+ "aria-hidden": "true",
77
+ className: "ds:size-[1.25em] ds:text-primary ds:shrink-0"
78
+ }
79
+ ),
80
+ /* @__PURE__ */ a("span", { children: s })
81
+ ] }),
82
+ /* @__PURE__ */ a("div", { className: "type-body-sm ds:text-foreground ds:[unicode-bidi:isolate]", children: e.map((y, m) => /* @__PURE__ */ t(b, { children: [
83
+ y,
84
+ m < e.length - 1 ? /* @__PURE__ */ a("br", {}) : null
85
+ ] }, m)) }),
86
+ d ? /* @__PURE__ */ t("div", { className: "type-body-sm ds:text-muted-foreground", children: [
87
+ /* @__PURE__ */ a("span", { className: "ds:me-[var(--spacing-2xs)]", children: l("ui.contactCard.vatNumberLabel") }),
88
+ /* @__PURE__ */ a("span", { className: "ds:[unicode-bidi:isolate]", children: d })
89
+ ] }) : null,
90
+ n ? /* @__PURE__ */ t("div", { className: "type-body-sm ds:text-muted-foreground ds:inline-flex ds:items-baseline ds:gap-[var(--spacing-2xs)] ds:flex-wrap", children: [
91
+ /* @__PURE__ */ a("span", { children: l("ui.contactCard.phoneLabel") }),
92
+ /* @__PURE__ */ a(p, { href: O(n), intent: "default", children: /* @__PURE__ */ a("span", { className: "ds:[unicode-bidi:isolate]", children: n }) })
93
+ ] }) : null
94
+ ]
95
+ }
96
+ );
97
+ }
98
+ );
99
+ u.displayName = "ContactCard.Office";
100
+ const x = i(
101
+ ({ className: s, children: e, ...d }, n) => /* @__PURE__ */ a(
102
+ "ul",
103
+ {
104
+ ref: n,
105
+ "data-component": "contact-card-links",
106
+ className: [
107
+ "ds:m-0 ds:p-0 ds:list-none",
108
+ "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]",
109
+ s
110
+ ].filter(Boolean).join(" "),
111
+ ...d,
112
+ children: e
113
+ }
114
+ )
115
+ );
116
+ x.displayName = "ContactCard.Links";
117
+ const g = i(
118
+ ({ href: s, icon: e, external: d, children: n }, c) => /* @__PURE__ */ a("li", { ref: c, className: "ds:m-0", children: /* @__PURE__ */ a(
119
+ p,
120
+ {
121
+ href: s,
122
+ external: d,
123
+ startIcon: /* @__PURE__ */ a("span", { className: "ds:text-primary", children: e }),
124
+ children: n
125
+ }
126
+ ) })
127
+ );
128
+ g.displayName = "ContactCard.Link";
129
+ const M = Object.assign(f, {
130
+ Office: u,
131
+ Links: x,
132
+ Link: g
133
+ });
134
+ export {
135
+ M as C
136
+ };
137
+ //# sourceMappingURL=contact-card-DNyATxKv.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contact-card-DNyATxKv.js","sources":["../../node_modules/lucide-react/dist/esm/icons/map-pin.js","../../src/components/contact-card/contact-card.tsx"],"sourcesContent":["/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0\",\n key: \"1r0f0z\"\n }\n ],\n [\"circle\", { cx: \"12\", cy: \"10\", r: \"3\", key: \"ilqhr7\" }]\n];\nconst MapPin = createLucideIcon(\"map-pin\", __iconNode);\n\nexport { __iconNode, MapPin as default };\n//# sourceMappingURL=map-pin.js.map\n","import {\n forwardRef,\n Fragment,\n type HTMLAttributes,\n type ReactNode,\n} from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { MapPin } from 'lucide-react';\nimport { Card } from '../card/card';\nimport { Link } from '../link/link';\n\n/* ------------------------------------------------------------------ */\n/* Phone helper */\n/* ------------------------------------------------------------------ */\n\n/**\n * Strip everything that's not a digit or a leading `+` so the display\n * string (`\"+49 (0)89 51871478\"`) becomes a valid `tel:` URI target\n * (`\"tel:+498951871478\"`). RFC 3966 allows visual separators, but most\n * dialer apps still trip on them — collapsing to a strict E.164-ish\n * form is the safe default. The `(0)` trunk-prefix convention is\n * intentionally dropped: it's not a real digit in international\n * dialling, only a hint for in-country dialling.\n */\nfunction buildTelHref(display: string): string {\n const trunkStripped = display.replace(/\\(0\\)/g, '');\n const digits = trunkStripped.replace(/[^\\d+]/g, '');\n return `tel:${digits}`;\n}\n\n/* ------------------------------------------------------------------ */\n/* Root */\n/* ------------------------------------------------------------------ */\n\nexport interface ContactCardProps\n extends Omit<HTMLAttributes<HTMLElement>, 'title'> {\n /**\n * Optional card heading rendered inside `Card.Header` as an `<h2>` —\n * e.g. \"Contact information\" above one or more office blocks. Omit\n * when the card sits inside a section that already has a heading.\n */\n title?: ReactNode;\n /**\n * `Card` variant. Defaults to `default` (subtle border on `--card`\n * surface) to match the marketing site's treatment.\n */\n variant?: 'default' | 'outlined' | 'elevated';\n children: ReactNode;\n}\n\nconst ContactCardRoot = forwardRef<HTMLElement, ContactCardProps>(\n ({ title, variant = 'default', className, children, ...props }, ref) => (\n <Card\n ref={ref}\n variant={variant}\n data-component=\"contact-card\"\n className={className}\n {...props}\n >\n {title !== undefined ? (\n <Card.Header>\n <h2 className=\"type-title-card ds:text-foreground\">{title}</h2>\n </Card.Header>\n ) : null}\n <Card.Body\n className={[\n 'ds:flex ds:flex-col ds:gap-[var(--spacing-md)]',\n // Tighten the body padding-block-start when a header sits\n // above so the whole card reads as one cohesive block rather\n // than two stacked sections — Card.Header already paints\n // bottom padding via `pb-0` + Card.Body's `p-md`.\n ].join(' ')}\n >\n {children}\n </Card.Body>\n </Card>\n ),\n);\nContactCardRoot.displayName = 'ContactCard';\n\n/* ------------------------------------------------------------------ */\n/* Office */\n/* ------------------------------------------------------------------ */\n\nexport interface ContactCardOfficeProps\n extends Omit<HTMLAttributes<HTMLElement>, 'children'> {\n /**\n * Office name — rendered as the block's bold label next to the pin\n * glyph. Not a heading element by default so a card with multiple\n * offices doesn't fragment the heading outline; pass `nameAs=\"h3\"`\n * (or `h4` etc.) when the consuming page wants a real heading.\n */\n name: ReactNode;\n /**\n * Address lines in document order, one per `<br>`-equivalent. Country\n * / region / postcode formatting is the consumer's responsibility —\n * the kit only inserts the line breaks.\n */\n lines: ReadonlyArray<string>;\n /**\n * VAT / tax-ID number. Rendered on its own line with the kit-owned\n * `ui.contactCard.vatNumberLabel` prefix.\n */\n vatNumber?: string;\n /**\n * Phone number as it should display (with separators, parens, trunk\n * prefix). The kit normalises this into a `tel:` URI internally —\n * see `buildTelHref` for the rules.\n */\n phone?: string;\n /** Heading element used for `name`. Defaults to a non-heading `<p>`. */\n nameAs?: 'p' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n}\n\nconst ContactCardOffice = forwardRef<HTMLElement, ContactCardOfficeProps>(\n (\n { name, lines, vatNumber, phone, nameAs = 'p', className, ...props },\n ref,\n ) => {\n const { t } = useTranslation();\n const NameTag = nameAs as 'p';\n\n return (\n <address\n ref={ref as React.Ref<HTMLElement>}\n data-component=\"contact-card-office\"\n className={[\n // `not-italic` overrides the UA default for `<address>` since\n // the kit's type ramp already encodes intent — italic would\n // double up with a heading-bold name and read as emphasis.\n 'ds:not-italic ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n {...props}\n >\n <NameTag className=\"ds:m-0 ds:flex ds:items-center ds:gap-[var(--spacing-xs)] type-label ds:font-semibold ds:text-foreground\">\n <MapPin\n aria-hidden=\"true\"\n className=\"ds:size-[1.25em] ds:text-primary ds:shrink-0\"\n />\n <span>{name}</span>\n </NameTag>\n <div className=\"type-body-sm ds:text-foreground ds:[unicode-bidi:isolate]\">\n {lines.map((line, i) => (\n <Fragment key={i}>\n {line}\n {i < lines.length - 1 ? <br /> : null}\n </Fragment>\n ))}\n </div>\n {vatNumber ? (\n <div className=\"type-body-sm ds:text-muted-foreground\">\n <span className=\"ds:me-[var(--spacing-2xs)]\">\n {t('ui.contactCard.vatNumberLabel')}\n </span>\n <span className=\"ds:[unicode-bidi:isolate]\">{vatNumber}</span>\n </div>\n ) : null}\n {phone ? (\n <div className=\"type-body-sm ds:text-muted-foreground ds:inline-flex ds:items-baseline ds:gap-[var(--spacing-2xs)] ds:flex-wrap\">\n <span>{t('ui.contactCard.phoneLabel')}</span>\n <Link href={buildTelHref(phone)} intent=\"default\">\n <span className=\"ds:[unicode-bidi:isolate]\">{phone}</span>\n </Link>\n </div>\n ) : null}\n </address>\n );\n },\n);\nContactCardOffice.displayName = 'ContactCard.Office';\n\n/* ------------------------------------------------------------------ */\n/* Links */\n/* ------------------------------------------------------------------ */\n\nexport type ContactCardLinksProps = HTMLAttributes<HTMLUListElement>;\n\nconst ContactCardLinks = forwardRef<HTMLUListElement, ContactCardLinksProps>(\n ({ className, children, ...props }, ref) => (\n <ul\n ref={ref}\n data-component=\"contact-card-links\"\n className={[\n 'ds:m-0 ds:p-0 ds:list-none',\n 'ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n {...props}\n >\n {children}\n </ul>\n ),\n);\nContactCardLinks.displayName = 'ContactCard.Links';\n\n/* ------------------------------------------------------------------ */\n/* Link */\n/* ------------------------------------------------------------------ */\n\nexport interface ContactCardLinkProps {\n href: string;\n /**\n * Leading glyph. Rendered with `--primary` so the link list reads as\n * a coloured-icon menu (matches the marketing site's treatment).\n * Consumers pass a bare lucide-react icon; the kit handles colour /\n * size / aria-hidden.\n */\n icon: ReactNode;\n /** Open in a new tab — adds `target=\"_blank\"` and `rel` via `Link`. */\n external?: boolean;\n children: ReactNode;\n}\n\nconst ContactCardLink = forwardRef<HTMLLIElement, ContactCardLinkProps>(\n ({ href, icon, external, children }, ref) => (\n <li ref={ref} className=\"ds:m-0\">\n <Link\n href={href}\n external={external}\n // Wrap in a `text-primary` span so the lucide glyph (which uses\n // `currentColor`) picks up the brand tint without the consumer\n // having to thread a className through every icon. Link adds\n // its own aria-hidden wrapper + `[&_svg]:size-[1em]` outside\n // this; the colour cascades through.\n startIcon={<span className=\"ds:text-primary\">{icon}</span>}\n >\n {children}\n </Link>\n </li>\n ),\n);\nContactCardLink.displayName = 'ContactCard.Link';\n\n/* ------------------------------------------------------------------ */\n/* Compound export */\n/* ------------------------------------------------------------------ */\n\nexport const ContactCard = Object.assign(ContactCardRoot, {\n Office: ContactCardOffice,\n Links: ContactCardLinks,\n Link: ContactCardLink,\n});\n\nexport { buildTelHref as __buildTelHref };\n"],"names":["__iconNode","MapPin","createLucideIcon","buildTelHref","display","ContactCardRoot","forwardRef","title","variant","className","children","props","ref","jsxs","Card","jsx","ContactCardOffice","name","lines","vatNumber","phone","nameAs","t","useTranslation","NameTag","line","i","Fragment","Link","ContactCardLinks","ContactCardLink","href","icon","external","ContactCard"],"mappings":"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","x_google_ignoreList":[0]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"copy-B00HK7tj.js","sources":["../../node_modules/lucide-react/dist/esm/icons/copy.js"],"sourcesContent":["/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"14\", height: \"14\", x: \"8\", y: \"8\", rx: \"2\", ry: \"2\", key: \"17jyea\" }],\n [\"path\", { d: \"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\", key: \"zix9uf\" }]\n];\nconst Copy = createLucideIcon(\"copy\", __iconNode);\n\nexport { __iconNode, Copy as default };\n//# sourceMappingURL=copy.js.map\n"],"names":["__iconNode","Copy","createLucideIcon"],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,IAAa;AAAA,EACjB,CAAC,QAAQ,EAAE,OAAO,MAAM,QAAQ,MAAM,GAAG,KAAK,GAAG,KAAK,IAAI,KAAK,IAAI,KAAK,KAAK,UAAU;AAAA,EACvF,CAAC,QAAQ,EAAE,GAAG,2DAA2D,KAAK,SAAQ,CAAE;AAC1F,GACMC,IAAOC,EAAiB,QAAQF,CAAU;","x_google_ignoreList":[0]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createLucideIcon-CrFbzy84.js","sources":["../../node_modules/lucide-react/dist/esm/shared/src/utils/mergeClasses.js","../../node_modules/lucide-react/dist/esm/shared/src/utils/toKebabCase.js","../../node_modules/lucide-react/dist/esm/shared/src/utils/toCamelCase.js","../../node_modules/lucide-react/dist/esm/shared/src/utils/toPascalCase.js","../../node_modules/lucide-react/dist/esm/defaultAttributes.js","../../node_modules/lucide-react/dist/esm/shared/src/utils/hasA11yProp.js","../../node_modules/lucide-react/dist/esm/context.js","../../node_modules/lucide-react/dist/esm/Icon.js","../../node_modules/lucide-react/dist/esm/createLucideIcon.js"],"sourcesContent":["/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst mergeClasses = (...classes) => classes.filter((className, index, array) => {\n return Boolean(className) && className.trim() !== \"\" && array.indexOf(className) === index;\n}).join(\" \").trim();\n\nexport { mergeClasses };\n//# sourceMappingURL=mergeClasses.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, \"$1-$2\").toLowerCase();\n\nexport { toKebabCase };\n//# sourceMappingURL=toKebabCase.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst toCamelCase = (string) => string.replace(\n /^([A-Z])|[\\s-_]+(\\w)/g,\n (match, p1, p2) => p2 ? p2.toUpperCase() : p1.toLowerCase()\n);\n\nexport { toCamelCase };\n//# sourceMappingURL=toCamelCase.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { toCamelCase } from './toCamelCase.js';\n\nconst toPascalCase = (string) => {\n const camelCase = toCamelCase(string);\n return camelCase.charAt(0).toUpperCase() + camelCase.slice(1);\n};\n\nexport { toPascalCase };\n//# sourceMappingURL=toPascalCase.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nvar defaultAttributes = {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n};\n\nexport { defaultAttributes as default };\n//# sourceMappingURL=defaultAttributes.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst hasA11yProp = (props) => {\n for (const prop in props) {\n if (prop.startsWith(\"aria-\") || prop === \"role\" || prop === \"title\") {\n return true;\n }\n }\n return false;\n};\n\nexport { hasA11yProp };\n//# sourceMappingURL=hasA11yProp.js.map\n","\"use strict\";\n\"use client\";\n/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { createContext, useContext, useMemo, createElement } from 'react';\n\nconst LucideContext = createContext({});\nfunction LucideProvider({\n children,\n size,\n color,\n strokeWidth,\n absoluteStrokeWidth,\n className\n}) {\n const value = useMemo(\n () => ({\n size,\n color,\n strokeWidth,\n absoluteStrokeWidth,\n className\n }),\n [size, color, strokeWidth, absoluteStrokeWidth, className]\n );\n return createElement(LucideContext.Provider, { value }, children);\n}\nconst useLucideContext = () => useContext(LucideContext);\n\nexport { LucideProvider, useLucideContext };\n//# sourceMappingURL=context.js.map\n","\"use strict\";\n\"use client\";\n/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport defaultAttributes from './defaultAttributes.js';\nimport { hasA11yProp } from './shared/src/utils/hasA11yProp.js';\nimport { mergeClasses } from './shared/src/utils/mergeClasses.js';\nimport { useLucideContext } from './context.js';\n\nconst Icon = forwardRef(\n ({ color, size, strokeWidth, absoluteStrokeWidth, className = \"\", children, iconNode, ...rest }, ref) => {\n const {\n size: contextSize = 24,\n strokeWidth: contextStrokeWidth = 2,\n absoluteStrokeWidth: contextAbsoluteStrokeWidth = false,\n color: contextColor = \"currentColor\",\n className: contextClass = \"\"\n } = useLucideContext() ?? {};\n const calculatedStrokeWidth = absoluteStrokeWidth ?? contextAbsoluteStrokeWidth ? Number(strokeWidth ?? contextStrokeWidth) * 24 / Number(size ?? contextSize) : strokeWidth ?? contextStrokeWidth;\n return createElement(\n \"svg\",\n {\n ref,\n ...defaultAttributes,\n width: size ?? contextSize ?? defaultAttributes.width,\n height: size ?? contextSize ?? defaultAttributes.height,\n stroke: color ?? contextColor,\n strokeWidth: calculatedStrokeWidth,\n className: mergeClasses(\"lucide\", contextClass, className),\n ...!children && !hasA11yProp(rest) && { \"aria-hidden\": \"true\" },\n ...rest\n },\n [\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...Array.isArray(children) ? children : [children]\n ]\n );\n }\n);\n\nexport { Icon as default };\n//# sourceMappingURL=Icon.js.map\n","/**\n * @license lucide-react v1.8.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport { mergeClasses } from './shared/src/utils/mergeClasses.js';\nimport { toKebabCase } from './shared/src/utils/toKebabCase.js';\nimport { toPascalCase } from './shared/src/utils/toPascalCase.js';\nimport Icon from './Icon.js';\n\nconst createLucideIcon = (iconName, iconNode) => {\n const Component = forwardRef(\n ({ className, ...props }, ref) => createElement(Icon, {\n ref,\n iconNode,\n className: mergeClasses(\n `lucide-${toKebabCase(toPascalCase(iconName))}`,\n `lucide-${iconName}`,\n className\n ),\n ...props\n })\n );\n Component.displayName = toPascalCase(iconName);\n return Component;\n};\n\nexport { createLucideIcon as default };\n//# sourceMappingURL=createLucideIcon.js.map\n"],"names":["mergeClasses","classes","className","index","array","toKebabCase","string","toCamelCase","match","p1","p2","toPascalCase","camelCase","defaultAttributes","hasA11yProp","props","prop","LucideContext","createContext","useLucideContext","useContext","Icon","forwardRef","color","size","strokeWidth","absoluteStrokeWidth","children","iconNode","rest","ref","contextSize","contextStrokeWidth","contextAbsoluteStrokeWidth","contextColor","contextClass","calculatedStrokeWidth","createElement","tag","attrs","createLucideIcon","iconName","Component"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8]}