@alfadocs/ui-kit 0.0.20 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (549) hide show
  1. package/dist/_chunks/accordion-BJD1aM67.js +117 -0
  2. package/dist/_chunks/accordion-BJD1aM67.js.map +1 -0
  3. package/dist/_chunks/agenda-card-Bld47Eul.js +130 -0
  4. package/dist/_chunks/agenda-card-Bld47Eul.js.map +1 -0
  5. package/dist/_chunks/agenda-tray-D86cNIJ0.js +119 -0
  6. package/dist/_chunks/agenda-tray-D86cNIJ0.js.map +1 -0
  7. package/dist/_chunks/ai-prompt-input-CdYwt2VP.js +379 -0
  8. package/dist/_chunks/ai-prompt-input-CdYwt2VP.js.map +1 -0
  9. package/dist/_chunks/{alert-C5ud6CfE.js → alert-ETrF7Q8J.js} +51 -51
  10. package/dist/_chunks/alert-ETrF7Q8J.js.map +1 -0
  11. package/dist/_chunks/apexcharts-theme-BkSShpEy.js +48 -0
  12. package/dist/_chunks/apexcharts-theme-BkSShpEy.js.map +1 -0
  13. package/dist/_chunks/{app-frame-CmIUp9BD.js → app-frame-uq2Gy0vs.js} +37 -37
  14. package/dist/_chunks/app-frame-uq2Gy0vs.js.map +1 -0
  15. package/dist/_chunks/aspect-ratio-BqU4itGW.js +56 -0
  16. package/dist/_chunks/aspect-ratio-BqU4itGW.js.map +1 -0
  17. package/dist/_chunks/{audio-recorder-GkGNtW2X.js → audio-recorder-D2UEBF9B.js} +98 -98
  18. package/dist/_chunks/audio-recorder-D2UEBF9B.js.map +1 -0
  19. package/dist/_chunks/{audio-visualiser-CIO3yy23.js → audio-visualiser-B4u4goV5.js} +46 -46
  20. package/dist/_chunks/audio-visualiser-B4u4goV5.js.map +1 -0
  21. package/dist/_chunks/{autocomplete.agent-kb0nmr6F.js → autocomplete.agent-Bi6CiRKa.js} +111 -111
  22. package/dist/_chunks/autocomplete.agent-Bi6CiRKa.js.map +1 -0
  23. package/dist/_chunks/{avatar-BsV7vRA6.js → avatar-BAhxbDEu.js} +38 -38
  24. package/dist/_chunks/avatar-BAhxbDEu.js.map +1 -0
  25. package/dist/_chunks/badge-zDghajh8.js +104 -0
  26. package/dist/_chunks/badge-zDghajh8.js.map +1 -0
  27. package/dist/_chunks/{balance-cell-renderer-BQwN51rT.js → balance-cell-renderer-BGyvZWjB.js} +123 -124
  28. package/dist/_chunks/balance-cell-renderer-BGyvZWjB.js.map +1 -0
  29. package/dist/_chunks/{breadcrumb-DnO6eHSS.js → breadcrumb-pdUacgm1.js} +40 -40
  30. package/dist/_chunks/breadcrumb-pdUacgm1.js.map +1 -0
  31. package/dist/_chunks/button-DmiGFnNA.js +119 -0
  32. package/dist/_chunks/button-DmiGFnNA.js.map +1 -0
  33. package/dist/_chunks/{button-group-CI7LFxt3.js → button-group-BtTHSyU0.js} +24 -24
  34. package/dist/_chunks/button-group-BtTHSyU0.js.map +1 -0
  35. package/dist/_chunks/{calendar-BIXVzhkL.js → calendar-BkDeDTaX.js} +333 -290
  36. package/dist/_chunks/calendar-BkDeDTaX.js.map +1 -0
  37. package/dist/_chunks/card-DeItIBcV.js +158 -0
  38. package/dist/_chunks/card-DeItIBcV.js.map +1 -0
  39. package/dist/_chunks/{chart.agent-DkmVXNsI.js → chart.agent-BdS-_8MO.js} +66 -64
  40. package/dist/_chunks/chart.agent-BdS-_8MO.js.map +1 -0
  41. package/dist/_chunks/chat-container-Co8HpB64.js +174 -0
  42. package/dist/_chunks/chat-container-Co8HpB64.js.map +1 -0
  43. package/dist/_chunks/{chat-input-aphxDjZL.js → chat-input-3rstZhHR.js} +57 -57
  44. package/dist/_chunks/chat-input-3rstZhHR.js.map +1 -0
  45. package/dist/_chunks/{chat-message-CdJSD18D.js → chat-message-dDMVSYBs.js} +66 -66
  46. package/dist/_chunks/chat-message-dDMVSYBs.js.map +1 -0
  47. package/dist/_chunks/checkbox-DMzgtnqw.js +116 -0
  48. package/dist/_chunks/checkbox-DMzgtnqw.js.map +1 -0
  49. package/dist/_chunks/{checkbox-group-D1aqVI0-.js → checkbox-group-DBnIBRT_.js} +34 -34
  50. package/dist/_chunks/checkbox-group-DBnIBRT_.js.map +1 -0
  51. package/dist/_chunks/{collapsible-jBFm7Ah8.js → collapsible-DPGQnHZh.js} +16 -16
  52. package/dist/_chunks/collapsible-DPGQnHZh.js.map +1 -0
  53. package/dist/_chunks/{color-picker-CiotzQJF.js → color-picker-OKKF3Dww.js} +158 -158
  54. package/dist/_chunks/color-picker-OKKF3Dww.js.map +1 -0
  55. package/dist/_chunks/{combobox.agent-B6RwDSct.js → combobox.agent-CfeB-IZ1.js} +107 -107
  56. package/dist/_chunks/combobox.agent-CfeB-IZ1.js.map +1 -0
  57. package/dist/_chunks/{command-palette.agent-B87_OkmC.js → command-palette.agent-XLfSGHCL.js} +27 -27
  58. package/dist/_chunks/command-palette.agent-XLfSGHCL.js.map +1 -0
  59. package/dist/_chunks/{date-picker-CdPuI3dK.js → date-picker-DXx8oSJb.js} +5 -5
  60. package/dist/_chunks/{date-picker-CdPuI3dK.js.map → date-picker-DXx8oSJb.js.map} +1 -1
  61. package/dist/_chunks/{date-range-picker-DfK4cjln.js → date-range-picker-C3CbY__H.js} +29 -29
  62. package/dist/_chunks/{date-range-picker-DfK4cjln.js.map → date-range-picker-C3CbY__H.js.map} +1 -1
  63. package/dist/_chunks/{date-time-picker-CX_FMsLG.js → date-time-picker-Bn3FPeAc.js} +58 -58
  64. package/dist/_chunks/date-time-picker-Bn3FPeAc.js.map +1 -0
  65. package/dist/_chunks/description-list-B1CL3RTG.js +187 -0
  66. package/dist/_chunks/description-list-B1CL3RTG.js.map +1 -0
  67. package/dist/_chunks/{dialog.agent-B276rAQF.js → dialog.agent-D9WeIWi2.js} +39 -39
  68. package/dist/_chunks/dialog.agent-D9WeIWi2.js.map +1 -0
  69. package/dist/_chunks/dropdown-menu-BnVUeVG3.js +210 -0
  70. package/dist/_chunks/dropdown-menu-BnVUeVG3.js.map +1 -0
  71. package/dist/_chunks/{empty-state-DiG7vYBM.js → empty-state-DV96gCnp.js} +37 -37
  72. package/dist/_chunks/empty-state-DV96gCnp.js.map +1 -0
  73. package/dist/_chunks/{file-upload.agent-BMow5yDY.js → file-upload.agent-DYFnqdxw.js} +185 -185
  74. package/dist/_chunks/file-upload.agent-DYFnqdxw.js.map +1 -0
  75. package/dist/_chunks/{flag-ChP784EM.js → flag-C3BUEwHH.js} +14 -14
  76. package/dist/_chunks/{flag-ChP784EM.js.map → flag-C3BUEwHH.js.map} +1 -1
  77. package/dist/_chunks/floating-action-button-RigP2E7o.js +95 -0
  78. package/dist/_chunks/floating-action-button-RigP2E7o.js.map +1 -0
  79. package/dist/_chunks/form-field-DI5LY5aG.js +121 -0
  80. package/dist/_chunks/form-field-DI5LY5aG.js.map +1 -0
  81. package/dist/_chunks/freemium-paywall-D0GiUFOe.js +197 -0
  82. package/dist/_chunks/freemium-paywall-D0GiUFOe.js.map +1 -0
  83. package/dist/_chunks/{header-BpKaSL_v.js → header-CW2oRd5H.js} +111 -111
  84. package/dist/_chunks/header-CW2oRd5H.js.map +1 -0
  85. package/dist/_chunks/icon-button-C482ii4y.js +45 -0
  86. package/dist/_chunks/icon-button-C482ii4y.js.map +1 -0
  87. package/dist/_chunks/{icon-button-group-tERESY-n.js → icon-button-group-BnhkUWUg.js} +56 -56
  88. package/dist/_chunks/icon-button-group-BnhkUWUg.js.map +1 -0
  89. package/dist/_chunks/{kbd-0iPlQjgC.js → kbd-DTcIjYA7.js} +52 -52
  90. package/dist/_chunks/kbd-DTcIjYA7.js.map +1 -0
  91. package/dist/_chunks/{key-value-pair--Je59tAF.js → key-value-pair-DDhSYdDL.js} +26 -26
  92. package/dist/_chunks/key-value-pair-DDhSYdDL.js.map +1 -0
  93. package/dist/_chunks/leo-sidebar-gXXcGPKk.js +755 -0
  94. package/dist/_chunks/leo-sidebar-gXXcGPKk.js.map +1 -0
  95. package/dist/_chunks/{list-n8vI8Yvn.js → list-Cwe8mcmh.js} +96 -96
  96. package/dist/_chunks/list-Cwe8mcmh.js.map +1 -0
  97. package/dist/_chunks/live-region-COggO6x6.js +57 -0
  98. package/dist/_chunks/live-region-COggO6x6.js.map +1 -0
  99. package/dist/_chunks/{logo-UNWYb9p7.js → logo-3wrZGpwg.js} +29 -29
  100. package/dist/_chunks/logo-3wrZGpwg.js.map +1 -0
  101. package/dist/_chunks/{matrix-rain-Q7xTEpKu.js → matrix-rain-gsHqSvW7.js} +75 -75
  102. package/dist/_chunks/matrix-rain-gsHqSvW7.js.map +1 -0
  103. package/dist/_chunks/message-card-DID3cXUW.js +275 -0
  104. package/dist/_chunks/message-card-DID3cXUW.js.map +1 -0
  105. package/dist/_chunks/message-tray-CVMLBnVp.js +302 -0
  106. package/dist/_chunks/message-tray-CVMLBnVp.js.map +1 -0
  107. package/dist/_chunks/{multi-select.agent-Cf4pU636.js → multi-select.agent-BUKYZJfp.js} +126 -126
  108. package/dist/_chunks/multi-select.agent-BUKYZJfp.js.map +1 -0
  109. package/dist/_chunks/{navigation-menu-DBDsAmXc.js → navigation-menu-NjwxyshT.js} +68 -97
  110. package/dist/_chunks/navigation-menu-NjwxyshT.js.map +1 -0
  111. package/dist/_chunks/notification-card-BZ33fq8H.js +255 -0
  112. package/dist/_chunks/notification-card-BZ33fq8H.js.map +1 -0
  113. package/dist/_chunks/{notification-tray-CNWPuPZp.js → notification-tray-CnEd7B2q.js} +96 -96
  114. package/dist/_chunks/notification-tray-CnEd7B2q.js.map +1 -0
  115. package/dist/_chunks/{number-input-B1Th0DdC.js → number-input-D7rSa_ef.js} +73 -73
  116. package/dist/_chunks/number-input-D7rSa_ef.js.map +1 -0
  117. package/dist/_chunks/{otp-input-CmoBuZ4K.js → otp-input-C9R9sC74.js} +42 -42
  118. package/dist/_chunks/otp-input-C9R9sC74.js.map +1 -0
  119. package/dist/_chunks/{pagination.agent-B5KLDCMN.js → pagination.agent-D75FB6XP.js} +106 -106
  120. package/dist/_chunks/pagination.agent-D75FB6XP.js.map +1 -0
  121. package/dist/_chunks/{password-input-DnjNh-hQ.js → password-input-C6PvKyQV.js} +59 -59
  122. package/dist/_chunks/password-input-C6PvKyQV.js.map +1 -0
  123. package/dist/_chunks/{patient-shell-D0RaWDMR.js → patient-shell-CGsmI5LJ.js} +9 -9
  124. package/dist/_chunks/{patient-shell-D0RaWDMR.js.map → patient-shell-CGsmI5LJ.js.map} +1 -1
  125. package/dist/_chunks/{payment-form-Cf7U6r5L.js → payment-form-l3j-gA-t.js} +108 -108
  126. package/dist/_chunks/payment-form-l3j-gA-t.js.map +1 -0
  127. package/dist/_chunks/{pdf-viewer.agent-DXjgDItg.js → pdf-viewer.agent-DuGfSoep.js} +234 -233
  128. package/dist/_chunks/pdf-viewer.agent-DuGfSoep.js.map +1 -0
  129. package/dist/_chunks/{phone-input-C2dtIuxW.js → phone-input-ZWa_FU4R.js} +112 -112
  130. package/dist/_chunks/phone-input-ZWa_FU4R.js.map +1 -0
  131. package/dist/_chunks/{popover-D1woU9mP.js → popover-CMr1pTPO.js} +58 -58
  132. package/dist/_chunks/popover-CMr1pTPO.js.map +1 -0
  133. package/dist/_chunks/{privacy-lock-C1X42Sit.js → privacy-lock-DdpkKNM2.js} +37 -36
  134. package/dist/_chunks/privacy-lock-DdpkKNM2.js.map +1 -0
  135. package/dist/_chunks/{progress-DL3-izuO.js → progress-D4ELgHG3.js} +43 -43
  136. package/dist/_chunks/progress-D4ELgHG3.js.map +1 -0
  137. package/dist/_chunks/radio-B_gvGU29.js +106 -0
  138. package/dist/_chunks/radio-B_gvGU29.js.map +1 -0
  139. package/dist/_chunks/radio-group-Bn8Wt0yc.js +88 -0
  140. package/dist/_chunks/radio-group-Bn8Wt0yc.js.map +1 -0
  141. package/dist/_chunks/{react-day-picker-DQKDiJ37.js → react-day-picker-d0MHsyCj.js} +174 -174
  142. package/dist/_chunks/{react-day-picker-DQKDiJ37.js.map → react-day-picker-d0MHsyCj.js.map} +1 -1
  143. package/dist/_chunks/{resizable.agent-DVk_jJur.js → resizable.agent-DBpPGNdy.js} +122 -122
  144. package/dist/_chunks/resizable.agent-DBpPGNdy.js.map +1 -0
  145. package/dist/_chunks/{rich-text-editor.agent-BOjF4Xao.js → rich-text-editor.agent-C1_E7_7t.js} +225 -225
  146. package/dist/_chunks/rich-text-editor.agent-C1_E7_7t.js.map +1 -0
  147. package/dist/_chunks/scroll-area-Ba99pJ_R.js +144 -0
  148. package/dist/_chunks/scroll-area-Ba99pJ_R.js.map +1 -0
  149. package/dist/_chunks/{search-bar-DgSOAajC.js → search-bar-VoTqJhRp.js} +131 -131
  150. package/dist/_chunks/search-bar-VoTqJhRp.js.map +1 -0
  151. package/dist/_chunks/search-input-D6rarD0_.js +197 -0
  152. package/dist/_chunks/search-input-D6rarD0_.js.map +1 -0
  153. package/dist/_chunks/select-DbxWF3O_.js +320 -0
  154. package/dist/_chunks/select-DbxWF3O_.js.map +1 -0
  155. package/dist/_chunks/{separator-DExI4amU.js → separator-BRQHi8s0.js} +17 -17
  156. package/dist/_chunks/separator-BRQHi8s0.js.map +1 -0
  157. package/dist/_chunks/sheet-DyWqluiS.js +188 -0
  158. package/dist/_chunks/sheet-DyWqluiS.js.map +1 -0
  159. package/dist/_chunks/sidebar-B52iGGNV.js +1076 -0
  160. package/dist/_chunks/sidebar-B52iGGNV.js.map +1 -0
  161. package/dist/_chunks/{sign-in-with-alfadocs-button-BBL11-Rt.js → sign-in-with-alfadocs-button-BU7MP5Hg.js} +4 -4
  162. package/dist/_chunks/{sign-in-with-alfadocs-button-BBL11-Rt.js.map → sign-in-with-alfadocs-button-BU7MP5Hg.js.map} +1 -1
  163. package/dist/_chunks/{signature-capture.agent-L_1_-zVR.js → signature-capture.agent-4htVctJ2.js} +163 -163
  164. package/dist/_chunks/signature-capture.agent-4htVctJ2.js.map +1 -0
  165. package/dist/_chunks/skeleton-ClO1v5GE.js +95 -0
  166. package/dist/_chunks/skeleton-ClO1v5GE.js.map +1 -0
  167. package/dist/_chunks/skip-link-CASJkBOe.js +68 -0
  168. package/dist/_chunks/skip-link-CASJkBOe.js.map +1 -0
  169. package/dist/_chunks/slider-n8JWpJvT.js +273 -0
  170. package/dist/_chunks/slider-n8JWpJvT.js.map +1 -0
  171. package/dist/_chunks/slot-grid-BRAkqChA.js +491 -0
  172. package/dist/_chunks/slot-grid-BRAkqChA.js.map +1 -0
  173. package/dist/_chunks/{sparkline.agent-BDTXzTy9.js → sparkline.agent-BLY1IMyW.js} +45 -45
  174. package/dist/_chunks/sparkline.agent-BLY1IMyW.js.map +1 -0
  175. package/dist/_chunks/{spinner-77xUGpuX.js → spinner-CoAOGcDa.js} +40 -40
  176. package/dist/_chunks/spinner-CoAOGcDa.js.map +1 -0
  177. package/dist/_chunks/stat-D76MNHzK.js +208 -0
  178. package/dist/_chunks/stat-D76MNHzK.js.map +1 -0
  179. package/dist/_chunks/{stepper-accordion-BkvqQWPI.js → stepper-accordion-DHQ80A4v.js} +33 -33
  180. package/dist/_chunks/stepper-accordion-DHQ80A4v.js.map +1 -0
  181. package/dist/_chunks/{stepper-calendar-BQMjrwzo.js → stepper-calendar-vtWwa2bY.js} +159 -159
  182. package/dist/_chunks/stepper-calendar-vtWwa2bY.js.map +1 -0
  183. package/dist/_chunks/stepper-progress-DMZ5w5VR.js +128 -0
  184. package/dist/_chunks/stepper-progress-DMZ5w5VR.js.map +1 -0
  185. package/dist/_chunks/streaming-text-D0cW8pwq.js +104 -0
  186. package/dist/_chunks/streaming-text-D0cW8pwq.js.map +1 -0
  187. package/dist/_chunks/suggestion-chip-BgNFpPEE.js +157 -0
  188. package/dist/_chunks/suggestion-chip-BgNFpPEE.js.map +1 -0
  189. package/dist/_chunks/switch-DtLPKO0p.js +137 -0
  190. package/dist/_chunks/switch-DtLPKO0p.js.map +1 -0
  191. package/dist/_chunks/{tabs.agent-FsGU3sZL.js → tabs.agent-BDUlyPbJ.js} +101 -101
  192. package/dist/_chunks/tabs.agent-BDUlyPbJ.js.map +1 -0
  193. package/dist/_chunks/tag-CfSZZN2f.js +194 -0
  194. package/dist/_chunks/tag-CfSZZN2f.js.map +1 -0
  195. package/dist/_chunks/task-card-B5xfiFg5.js +112 -0
  196. package/dist/_chunks/task-card-B5xfiFg5.js.map +1 -0
  197. package/dist/_chunks/task-tray-BnpiodZ4.js +99 -0
  198. package/dist/_chunks/task-tray-BnpiodZ4.js.map +1 -0
  199. package/dist/_chunks/text-area-BqbruBWx.js +152 -0
  200. package/dist/_chunks/text-area-BqbruBWx.js.map +1 -0
  201. package/dist/_chunks/text-input-lh6kRXZS.js +187 -0
  202. package/dist/_chunks/text-input-lh6kRXZS.js.map +1 -0
  203. package/dist/_chunks/theme-toggle-BHKMiORD.js +326 -0
  204. package/dist/_chunks/theme-toggle-BHKMiORD.js.map +1 -0
  205. package/dist/_chunks/{time-picker-BapZq0OY.js → time-picker-DbpAmPux.js} +102 -102
  206. package/dist/_chunks/time-picker-DbpAmPux.js.map +1 -0
  207. package/dist/_chunks/timeline-vjsUeuq1.js +219 -0
  208. package/dist/_chunks/timeline-vjsUeuq1.js.map +1 -0
  209. package/dist/_chunks/{timestamp-BLM-jjdw.js → timestamp-DmSt92P1.js} +30 -30
  210. package/dist/_chunks/timestamp-DmSt92P1.js.map +1 -0
  211. package/dist/_chunks/{toast-DSCqnDRl.js → toast-DllSITLf.js} +151 -151
  212. package/dist/_chunks/{toast-DSCqnDRl.js.map → toast-DllSITLf.js.map} +1 -1
  213. package/dist/_chunks/{tooltip-DF6WjD1r.js → tooltip-Dp3u8jGz.js} +30 -30
  214. package/dist/_chunks/tooltip-Dp3u8jGz.js.map +1 -0
  215. package/dist/_chunks/{tooth-scheme.agent-CFKl3iQr.js → tooth-scheme.agent-BRqxWa1D.js} +75 -75
  216. package/dist/_chunks/tooth-scheme.agent-BRqxWa1D.js.map +1 -0
  217. package/dist/_chunks/transcript-panel-Bg1BTMSr.js +265 -0
  218. package/dist/_chunks/transcript-panel-Bg1BTMSr.js.map +1 -0
  219. package/dist/_chunks/typing-indicator-BRg22Rqr.js +81 -0
  220. package/dist/_chunks/typing-indicator-BRg22Rqr.js.map +1 -0
  221. package/dist/_chunks/use-locale-BuXR_Zl9.js +32 -0
  222. package/dist/_chunks/use-locale-BuXR_Zl9.js.map +1 -0
  223. package/dist/_chunks/visually-hidden-Y3jcdCv-.js +21 -0
  224. package/dist/_chunks/visually-hidden-Y3jcdCv-.js.map +1 -0
  225. package/dist/_chunks/{warning-stack-Cyf_81SL.js → warning-stack-B9N9yWet.js} +38 -38
  226. package/dist/_chunks/warning-stack-B9N9yWet.js.map +1 -0
  227. package/dist/_chunks/{workflow-map-Uf-hHAO3.js → workflow-map-gBhL_Wrs.js} +385 -385
  228. package/dist/_chunks/workflow-map-gBhL_Wrs.js.map +1 -0
  229. package/dist/agent-catalog.json +1 -1
  230. package/dist/components/_shared/index.d.ts +2 -0
  231. package/dist/components/_shared/index.d.ts.map +1 -1
  232. package/dist/components/_shared/use-focus-trap.d.ts +32 -0
  233. package/dist/components/_shared/use-focus-trap.d.ts.map +1 -0
  234. package/dist/components/_shared/use-neutralize-hidden-focus.d.ts +3 -0
  235. package/dist/components/_shared/use-neutralize-hidden-focus.d.ts.map +1 -0
  236. package/dist/components/accordion/index.js +1 -1
  237. package/dist/components/agenda-card/index.js +1 -1
  238. package/dist/components/agenda-tray/index.js +1 -1
  239. package/dist/components/ai-prompt-input/index.js +1 -1
  240. package/dist/components/alert/index.js +1 -1
  241. package/dist/components/app-frame/index.js +1 -1
  242. package/dist/components/aspect-ratio/index.js +1 -1
  243. package/dist/components/audio-recorder/index.js +1 -1
  244. package/dist/components/audio-visualiser/index.js +1 -1
  245. package/dist/components/autocomplete/index.js +1 -1
  246. package/dist/components/avatar/index.js +1 -1
  247. package/dist/components/badge/index.js +1 -1
  248. package/dist/components/breadcrumb/index.js +1 -1
  249. package/dist/components/button/index.js +2 -2
  250. package/dist/components/button-group/index.js +1 -1
  251. package/dist/components/calendar/calendar.d.ts.map +1 -1
  252. package/dist/components/calendar/index.js +1 -1
  253. package/dist/components/card/index.js +1 -1
  254. package/dist/components/chart/chart.d.ts.map +1 -1
  255. package/dist/components/chart/index.js +1 -1
  256. package/dist/components/chat-container/index.js +1 -1
  257. package/dist/components/chat-input/index.js +1 -1
  258. package/dist/components/chat-message/index.js +1 -1
  259. package/dist/components/checkbox/index.js +1 -1
  260. package/dist/components/checkbox-group/index.js +1 -1
  261. package/dist/components/collapsible/index.js +1 -1
  262. package/dist/components/color-picker/index.js +1 -1
  263. package/dist/components/combobox/index.js +1 -1
  264. package/dist/components/command-palette/index.js +1 -1
  265. package/dist/components/data-table/index.js +1 -1
  266. package/dist/components/data-table/toolbar.d.ts.map +1 -1
  267. package/dist/components/date-picker/index.js +1 -1
  268. package/dist/components/date-range-picker/index.js +1 -1
  269. package/dist/components/date-time-picker/index.js +1 -1
  270. package/dist/components/description-list/index.js +1 -1
  271. package/dist/components/dialog/index.js +1 -1
  272. package/dist/components/dropdown-menu/index.js +1 -1
  273. package/dist/components/empty-state/index.js +1 -1
  274. package/dist/components/file-upload/index.js +1 -1
  275. package/dist/components/flag/index.js +1 -1
  276. package/dist/components/floating-action-button/index.js +1 -1
  277. package/dist/components/form-field/index.js +1 -1
  278. package/dist/components/freemium-paywall/index.js +1 -1
  279. package/dist/components/header/index.js +1 -1
  280. package/dist/components/icon-button/index.d.ts +3 -0
  281. package/dist/components/icon-button/index.d.ts.map +1 -0
  282. package/dist/components/icon-button/index.js +5 -0
  283. package/dist/components/icon-button/index.js.map +1 -0
  284. package/dist/components/icon-button-group/index.js +1 -1
  285. package/dist/components/index.d.ts +8 -2
  286. package/dist/components/index.d.ts.map +1 -1
  287. package/dist/components/kbd/index.js +1 -1
  288. package/dist/components/key-value-pair/index.js +1 -1
  289. package/dist/components/list/index.js +1 -1
  290. package/dist/components/live-region/index.d.ts +3 -0
  291. package/dist/components/live-region/index.d.ts.map +1 -0
  292. package/dist/components/live-region/index.js +5 -0
  293. package/dist/components/live-region/index.js.map +1 -0
  294. package/dist/components/live-region/live-region.d.ts +49 -0
  295. package/dist/components/live-region/live-region.d.ts.map +1 -0
  296. package/dist/components/logo/index.js +1 -1
  297. package/dist/components/matrix-rain/index.js +1 -1
  298. package/dist/components/message-card/index.js +1 -1
  299. package/dist/components/message-tray/index.js +1 -1
  300. package/dist/components/multi-select/index.js +1 -1
  301. package/dist/components/navigation-menu/index.d.ts +4 -2
  302. package/dist/components/navigation-menu/index.d.ts.map +1 -1
  303. package/dist/components/navigation-menu/index.js +3 -2
  304. package/dist/components/navigation-menu/index.js.map +1 -1
  305. package/dist/components/navigation-menu/navigation-menu.d.ts +2 -6
  306. package/dist/components/navigation-menu/navigation-menu.d.ts.map +1 -1
  307. package/dist/components/notification-card/index.js +1 -1
  308. package/dist/components/notification-tray/index.js +1 -1
  309. package/dist/components/number-input/index.js +1 -1
  310. package/dist/components/otp-input/index.js +1 -1
  311. package/dist/components/pagination/index.js +1 -1
  312. package/dist/components/password-input/index.js +1 -1
  313. package/dist/components/payment-form/index.js +1 -1
  314. package/dist/components/pdf-viewer/index.js +1 -1
  315. package/dist/components/pdf-viewer/pdf-viewer.d.ts.map +1 -1
  316. package/dist/components/phone-input/index.js +1 -1
  317. package/dist/components/popover/index.js +1 -1
  318. package/dist/components/privacy-lock/index.js +1 -1
  319. package/dist/components/privacy-lock/privacy-lock.d.ts.map +1 -1
  320. package/dist/components/progress/index.js +1 -1
  321. package/dist/components/radio/index.d.ts +3 -0
  322. package/dist/components/radio/index.d.ts.map +1 -0
  323. package/dist/components/radio/index.js +5 -0
  324. package/dist/components/radio/index.js.map +1 -0
  325. package/dist/components/radio-group/index.js +4 -3
  326. package/dist/components/radio-group/index.js.map +1 -1
  327. package/dist/components/resizable/index.js +1 -1
  328. package/dist/components/rich-text-editor/index.js +1 -1
  329. package/dist/components/scroll-area/index.js +1 -1
  330. package/dist/components/search-bar/index.js +1 -1
  331. package/dist/components/search-input/index.js +1 -1
  332. package/dist/components/select/index.js +1 -1
  333. package/dist/components/separator/index.js +1 -1
  334. package/dist/components/sheet/index.js +1 -1
  335. package/dist/components/sidebar/index.js +1 -1
  336. package/dist/components/sign-in-with-alfadocs-button/index.js +1 -1
  337. package/dist/components/signature-capture/index.js +1 -1
  338. package/dist/components/skeleton/index.js +1 -1
  339. package/dist/components/skip-link/index.d.ts +2 -0
  340. package/dist/components/skip-link/index.d.ts.map +1 -0
  341. package/dist/components/skip-link/index.js +5 -0
  342. package/dist/components/skip-link/index.js.map +1 -0
  343. package/dist/components/skip-link/skip-link.d.ts +34 -0
  344. package/dist/components/skip-link/skip-link.d.ts.map +1 -0
  345. package/dist/components/slider/index.js +1 -1
  346. package/dist/components/slot-grid/index.js +1 -1
  347. package/dist/components/sparkline/index.js +1 -1
  348. package/dist/components/sparkline/sparkline.d.ts.map +1 -1
  349. package/dist/components/spinner/index.js +1 -1
  350. package/dist/components/stat/index.js +1 -1
  351. package/dist/components/stepper-accordion/index.js +1 -1
  352. package/dist/components/stepper-calendar/index.js +1 -1
  353. package/dist/components/stepper-progress/index.js +1 -1
  354. package/dist/components/streaming-text/index.js +1 -1
  355. package/dist/components/suggestion-chip/index.js +1 -1
  356. package/dist/components/switch/index.js +1 -1
  357. package/dist/components/tabs/index.js +1 -1
  358. package/dist/components/tag/index.js +1 -1
  359. package/dist/components/task-card/index.js +1 -1
  360. package/dist/components/task-tray/index.js +1 -1
  361. package/dist/components/text-area/index.js +1 -1
  362. package/dist/components/text-input/index.js +1 -1
  363. package/dist/components/theme-toggle/index.d.ts +3 -0
  364. package/dist/components/theme-toggle/index.d.ts.map +1 -0
  365. package/dist/components/theme-toggle/index.js +5 -0
  366. package/dist/components/theme-toggle/index.js.map +1 -0
  367. package/dist/components/theme-toggle/theme-toggle.d.ts +34 -0
  368. package/dist/components/theme-toggle/theme-toggle.d.ts.map +1 -0
  369. package/dist/components/time-picker/index.js +1 -1
  370. package/dist/components/timeline/index.js +1 -1
  371. package/dist/components/timestamp/index.js +1 -1
  372. package/dist/components/toast/index.js +1 -1
  373. package/dist/components/tooltip/index.js +1 -1
  374. package/dist/components/tooth-scheme/index.js +1 -1
  375. package/dist/components/transcript-panel/index.js +1 -1
  376. package/dist/components/typing-indicator/index.js +1 -1
  377. package/dist/components/visually-hidden/index.d.ts +2 -0
  378. package/dist/components/visually-hidden/index.d.ts.map +1 -0
  379. package/dist/components/visually-hidden/index.js +5 -0
  380. package/dist/components/visually-hidden/index.js.map +1 -0
  381. package/dist/components/visually-hidden/visually-hidden.d.ts +11 -0
  382. package/dist/components/visually-hidden/visually-hidden.d.ts.map +1 -0
  383. package/dist/components/warning-stack/index.js +1 -1
  384. package/dist/components/workflow/index.js +1 -1
  385. package/dist/hooks/index.d.ts +3 -0
  386. package/dist/hooks/index.d.ts.map +1 -1
  387. package/dist/hooks/index.js +10 -7
  388. package/dist/hooks/index.js.map +1 -1
  389. package/dist/hooks/use-locale.d.ts +27 -0
  390. package/dist/hooks/use-locale.d.ts.map +1 -0
  391. package/dist/hooks/use-media-query.d.ts +17 -0
  392. package/dist/hooks/use-media-query.d.ts.map +1 -0
  393. package/dist/i18n/config.js +59 -2
  394. package/dist/i18n/config.js.map +1 -1
  395. package/dist/i18n/resources.d.ts +57 -0
  396. package/dist/i18n/resources.d.ts.map +1 -1
  397. package/dist/index.js +442 -431
  398. package/dist/index.js.map +1 -1
  399. package/dist/locales/de.json +19 -0
  400. package/dist/locales/en.json +19 -0
  401. package/dist/locales/it.json +19 -0
  402. package/dist/patterns/leo-assistant/index.js +1 -1
  403. package/dist/patterns/patient-shell/index.js +1 -1
  404. package/dist/tokens.css +2 -2
  405. package/package.json +4 -2
  406. package/dist/_chunks/accordion-Dgcd38U_.js +0 -117
  407. package/dist/_chunks/accordion-Dgcd38U_.js.map +0 -1
  408. package/dist/_chunks/agenda-card-B2gq-gTq.js +0 -130
  409. package/dist/_chunks/agenda-card-B2gq-gTq.js.map +0 -1
  410. package/dist/_chunks/agenda-tray-twa8g_87.js +0 -119
  411. package/dist/_chunks/agenda-tray-twa8g_87.js.map +0 -1
  412. package/dist/_chunks/ai-prompt-input-C6IY_Eds.js +0 -379
  413. package/dist/_chunks/ai-prompt-input-C6IY_Eds.js.map +0 -1
  414. package/dist/_chunks/alert-C5ud6CfE.js.map +0 -1
  415. package/dist/_chunks/apexcharts-theme-cpBYmCcr.js +0 -17
  416. package/dist/_chunks/apexcharts-theme-cpBYmCcr.js.map +0 -1
  417. package/dist/_chunks/app-frame-CmIUp9BD.js.map +0 -1
  418. package/dist/_chunks/aspect-ratio-Bo3cZXmR.js +0 -56
  419. package/dist/_chunks/aspect-ratio-Bo3cZXmR.js.map +0 -1
  420. package/dist/_chunks/audio-recorder-GkGNtW2X.js.map +0 -1
  421. package/dist/_chunks/audio-visualiser-CIO3yy23.js.map +0 -1
  422. package/dist/_chunks/autocomplete.agent-kb0nmr6F.js.map +0 -1
  423. package/dist/_chunks/avatar-BsV7vRA6.js.map +0 -1
  424. package/dist/_chunks/badge--CmSr7ok.js +0 -104
  425. package/dist/_chunks/badge--CmSr7ok.js.map +0 -1
  426. package/dist/_chunks/balance-cell-renderer-BQwN51rT.js.map +0 -1
  427. package/dist/_chunks/breadcrumb-DnO6eHSS.js.map +0 -1
  428. package/dist/_chunks/button-CXL8bA8G.js +0 -119
  429. package/dist/_chunks/button-CXL8bA8G.js.map +0 -1
  430. package/dist/_chunks/button-group-CI7LFxt3.js.map +0 -1
  431. package/dist/_chunks/calendar-BIXVzhkL.js.map +0 -1
  432. package/dist/_chunks/card-n97MNPP2.js +0 -158
  433. package/dist/_chunks/card-n97MNPP2.js.map +0 -1
  434. package/dist/_chunks/chart.agent-DkmVXNsI.js.map +0 -1
  435. package/dist/_chunks/chat-container-SR3UWxbL.js +0 -174
  436. package/dist/_chunks/chat-container-SR3UWxbL.js.map +0 -1
  437. package/dist/_chunks/chat-input-aphxDjZL.js.map +0 -1
  438. package/dist/_chunks/chat-message-CdJSD18D.js.map +0 -1
  439. package/dist/_chunks/checkbox-CfiZ0FZc.js +0 -116
  440. package/dist/_chunks/checkbox-CfiZ0FZc.js.map +0 -1
  441. package/dist/_chunks/checkbox-group-D1aqVI0-.js.map +0 -1
  442. package/dist/_chunks/collapsible-jBFm7Ah8.js.map +0 -1
  443. package/dist/_chunks/color-picker-CiotzQJF.js.map +0 -1
  444. package/dist/_chunks/combobox.agent-B6RwDSct.js.map +0 -1
  445. package/dist/_chunks/command-palette.agent-B87_OkmC.js.map +0 -1
  446. package/dist/_chunks/date-time-picker-CX_FMsLG.js.map +0 -1
  447. package/dist/_chunks/description-list-C5UPZgX6.js +0 -187
  448. package/dist/_chunks/description-list-C5UPZgX6.js.map +0 -1
  449. package/dist/_chunks/dialog.agent-B276rAQF.js.map +0 -1
  450. package/dist/_chunks/dropdown-menu-CJKvK7VG.js +0 -210
  451. package/dist/_chunks/dropdown-menu-CJKvK7VG.js.map +0 -1
  452. package/dist/_chunks/empty-state-DiG7vYBM.js.map +0 -1
  453. package/dist/_chunks/file-upload.agent-BMow5yDY.js.map +0 -1
  454. package/dist/_chunks/floating-action-button-BM9ib-Wf.js +0 -95
  455. package/dist/_chunks/floating-action-button-BM9ib-Wf.js.map +0 -1
  456. package/dist/_chunks/form-field-B4bwrccN.js +0 -121
  457. package/dist/_chunks/form-field-B4bwrccN.js.map +0 -1
  458. package/dist/_chunks/freemium-paywall-DVyNsQHS.js +0 -197
  459. package/dist/_chunks/freemium-paywall-DVyNsQHS.js.map +0 -1
  460. package/dist/_chunks/header-BpKaSL_v.js.map +0 -1
  461. package/dist/_chunks/icon-button-C1vpylg3.js +0 -45
  462. package/dist/_chunks/icon-button-C1vpylg3.js.map +0 -1
  463. package/dist/_chunks/icon-button-group-tERESY-n.js.map +0 -1
  464. package/dist/_chunks/kbd-0iPlQjgC.js.map +0 -1
  465. package/dist/_chunks/key-value-pair--Je59tAF.js.map +0 -1
  466. package/dist/_chunks/leo-sidebar-9A9AWBxX.js +0 -755
  467. package/dist/_chunks/leo-sidebar-9A9AWBxX.js.map +0 -1
  468. package/dist/_chunks/list-n8vI8Yvn.js.map +0 -1
  469. package/dist/_chunks/logo-UNWYb9p7.js.map +0 -1
  470. package/dist/_chunks/matrix-rain-Q7xTEpKu.js.map +0 -1
  471. package/dist/_chunks/message-card-g5VS5Q80.js +0 -275
  472. package/dist/_chunks/message-card-g5VS5Q80.js.map +0 -1
  473. package/dist/_chunks/message-tray-CAk-iibU.js +0 -302
  474. package/dist/_chunks/message-tray-CAk-iibU.js.map +0 -1
  475. package/dist/_chunks/multi-select.agent-Cf4pU636.js.map +0 -1
  476. package/dist/_chunks/navigation-menu-DBDsAmXc.js.map +0 -1
  477. package/dist/_chunks/notification-card-CQxJporb.js +0 -255
  478. package/dist/_chunks/notification-card-CQxJporb.js.map +0 -1
  479. package/dist/_chunks/notification-tray-CNWPuPZp.js.map +0 -1
  480. package/dist/_chunks/number-input-B1Th0DdC.js.map +0 -1
  481. package/dist/_chunks/otp-input-CmoBuZ4K.js.map +0 -1
  482. package/dist/_chunks/pagination.agent-B5KLDCMN.js.map +0 -1
  483. package/dist/_chunks/password-input-DnjNh-hQ.js.map +0 -1
  484. package/dist/_chunks/payment-form-Cf7U6r5L.js.map +0 -1
  485. package/dist/_chunks/pdf-viewer.agent-DXjgDItg.js.map +0 -1
  486. package/dist/_chunks/phone-input-C2dtIuxW.js.map +0 -1
  487. package/dist/_chunks/popover-D1woU9mP.js.map +0 -1
  488. package/dist/_chunks/privacy-lock-C1X42Sit.js.map +0 -1
  489. package/dist/_chunks/progress-DL3-izuO.js.map +0 -1
  490. package/dist/_chunks/radio-group-CXN9qNPe.js +0 -185
  491. package/dist/_chunks/radio-group-CXN9qNPe.js.map +0 -1
  492. package/dist/_chunks/resizable.agent-DVk_jJur.js.map +0 -1
  493. package/dist/_chunks/rich-text-editor.agent-BOjF4Xao.js.map +0 -1
  494. package/dist/_chunks/scroll-area-DXn-YWHY.js +0 -144
  495. package/dist/_chunks/scroll-area-DXn-YWHY.js.map +0 -1
  496. package/dist/_chunks/search-bar-DgSOAajC.js.map +0 -1
  497. package/dist/_chunks/search-input-D4tC_Prn.js +0 -197
  498. package/dist/_chunks/search-input-D4tC_Prn.js.map +0 -1
  499. package/dist/_chunks/select-B4m4upMg.js +0 -320
  500. package/dist/_chunks/select-B4m4upMg.js.map +0 -1
  501. package/dist/_chunks/separator-DExI4amU.js.map +0 -1
  502. package/dist/_chunks/sheet-D6XOx0fK.js +0 -188
  503. package/dist/_chunks/sheet-D6XOx0fK.js.map +0 -1
  504. package/dist/_chunks/sidebar-r645O-k9.js +0 -1076
  505. package/dist/_chunks/sidebar-r645O-k9.js.map +0 -1
  506. package/dist/_chunks/signature-capture.agent-L_1_-zVR.js.map +0 -1
  507. package/dist/_chunks/skeleton-vbTWUntB.js +0 -95
  508. package/dist/_chunks/skeleton-vbTWUntB.js.map +0 -1
  509. package/dist/_chunks/slider-B3DBwmcm.js +0 -273
  510. package/dist/_chunks/slider-B3DBwmcm.js.map +0 -1
  511. package/dist/_chunks/slot-grid-DL_Tuj0p.js +0 -491
  512. package/dist/_chunks/slot-grid-DL_Tuj0p.js.map +0 -1
  513. package/dist/_chunks/sparkline.agent-BDTXzTy9.js.map +0 -1
  514. package/dist/_chunks/spinner-77xUGpuX.js.map +0 -1
  515. package/dist/_chunks/stat-CrumvZWf.js +0 -208
  516. package/dist/_chunks/stat-CrumvZWf.js.map +0 -1
  517. package/dist/_chunks/stepper-accordion-BkvqQWPI.js.map +0 -1
  518. package/dist/_chunks/stepper-calendar-BQMjrwzo.js.map +0 -1
  519. package/dist/_chunks/stepper-progress-Bwfl-0rV.js +0 -128
  520. package/dist/_chunks/stepper-progress-Bwfl-0rV.js.map +0 -1
  521. package/dist/_chunks/streaming-text-Cu9YQe_1.js +0 -104
  522. package/dist/_chunks/streaming-text-Cu9YQe_1.js.map +0 -1
  523. package/dist/_chunks/suggestion-chip-XkxDJiPW.js +0 -157
  524. package/dist/_chunks/suggestion-chip-XkxDJiPW.js.map +0 -1
  525. package/dist/_chunks/switch-DyC0ThNT.js +0 -137
  526. package/dist/_chunks/switch-DyC0ThNT.js.map +0 -1
  527. package/dist/_chunks/tabs.agent-FsGU3sZL.js.map +0 -1
  528. package/dist/_chunks/tag-BucAvfTX.js +0 -194
  529. package/dist/_chunks/tag-BucAvfTX.js.map +0 -1
  530. package/dist/_chunks/task-card-uxjApfcg.js +0 -112
  531. package/dist/_chunks/task-card-uxjApfcg.js.map +0 -1
  532. package/dist/_chunks/task-tray-BdfM3p8N.js +0 -99
  533. package/dist/_chunks/task-tray-BdfM3p8N.js.map +0 -1
  534. package/dist/_chunks/text-area-CKxZ7cS3.js +0 -152
  535. package/dist/_chunks/text-area-CKxZ7cS3.js.map +0 -1
  536. package/dist/_chunks/text-input-D16CcMlL.js +0 -187
  537. package/dist/_chunks/text-input-D16CcMlL.js.map +0 -1
  538. package/dist/_chunks/time-picker-BapZq0OY.js.map +0 -1
  539. package/dist/_chunks/timeline-D3VOf4RT.js +0 -219
  540. package/dist/_chunks/timeline-D3VOf4RT.js.map +0 -1
  541. package/dist/_chunks/timestamp-BLM-jjdw.js.map +0 -1
  542. package/dist/_chunks/tooltip-DF6WjD1r.js.map +0 -1
  543. package/dist/_chunks/tooth-scheme.agent-CFKl3iQr.js.map +0 -1
  544. package/dist/_chunks/transcript-panel-aI14fHYA.js +0 -265
  545. package/dist/_chunks/transcript-panel-aI14fHYA.js.map +0 -1
  546. package/dist/_chunks/typing-indicator-BTVDEpnd.js +0 -81
  547. package/dist/_chunks/typing-indicator-BTVDEpnd.js.map +0 -1
  548. package/dist/_chunks/warning-stack-Cyf_81SL.js.map +0 -1
  549. package/dist/_chunks/workflow-map-Uf-hHAO3.js.map +0 -1
@@ -1,50 +1,50 @@
1
- import { jsx as a, jsxs as D, Fragment as G } from "react/jsx-runtime";
1
+ import { jsx as s, jsxs as D, Fragment as G } from "react/jsx-runtime";
2
2
  import { forwardRef as U, useState as V, useEffect as O, useRef as W, useId as J, useMemo as X, useCallback as _ } from "react";
3
3
  import { c as P } from "./index-D2ZczOXr.js";
4
4
  import { useTranslation as E } from "react-i18next";
5
5
  import * as j from "@radix-ui/react-popover";
6
- import { S as Y } from "./search-input-D4tC_Prn.js";
6
+ import { S as Y } from "./search-input-D6rarD0_.js";
7
7
  import { S as Z } from "./search-BonnQsHv.js";
8
8
  import { n as L } from "./normalize-diacritics-BNGbFNlJ.js";
9
9
  import { u as ee } from "./use-debounced-callback-BisrB-Fq.js";
10
- function ae() {
10
+ function se() {
11
11
  if (typeof navigator > "u") return !1;
12
- const t = navigator.userAgentData, r = (t == null ? void 0 : t.platform) ?? navigator.platform ?? "";
13
- return /mac/i.test(r);
12
+ const r = navigator.userAgentData, a = (r == null ? void 0 : r.platform) ?? navigator.platform ?? "";
13
+ return /mac/i.test(a);
14
14
  }
15
- const re = P(
15
+ const ae = P(
16
16
  [
17
- "inline-flex items-center gap-[var(--spacing-sm)]",
18
- "rounded-[var(--radius-md)]",
19
- "ps-[var(--spacing-sm)] pe-[var(--spacing-sm)]",
17
+ "ds:inline-flex ds:items-center ds:gap-[var(--spacing-sm)]",
18
+ "ds:rounded-[var(--radius-md)]",
19
+ "ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)]",
20
20
  // Same visual language as <SearchInput> so the launcher truly looks
21
21
  // like an input. --muted-foreground over --background meets AA 4.5:1
22
22
  // in every theme; --muted is a mid-tone not suitable as a surface.
23
- "bg-[var(--background)] border border-[color:var(--border)]",
24
- "text-[color:var(--muted-foreground)]",
23
+ "ds:bg-[var(--background)] ds:border ds:border-[color:var(--border)]",
24
+ "ds:text-[color:var(--muted-foreground)]",
25
25
  // Opaque hover — mix 20% muted into --background so the launcher stays a
26
26
  // solid surface even when placed over a brand-tinted parent (e.g. the
27
27
  // Header's `brand` variant).
28
- "hover:bg-[color-mix(in_srgb,var(--muted)_20%,var(--background))]",
29
- "transition-colors motion-reduce:transition-none",
30
- "focus-visible:outline-[length:var(--focus-ring-width)]",
31
- "focus-visible:outline-solid",
32
- "focus-visible:outline-[color:var(--ring)]",
33
- "focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
34
- "forced-colors:focus-visible:outline-[CanvasText]",
35
- "min-h-[var(--min-target-size)]",
36
- "disabled:opacity-50 disabled:cursor-not-allowed"
28
+ "ds:hover:bg-[color-mix(in_srgb,var(--muted)_20%,var(--background))]",
29
+ "ds:transition-colors ds:motion-reduce:transition-none",
30
+ "ds:focus-visible:outline-[length:var(--focus-ring-width)]",
31
+ "ds:focus-visible:outline-solid",
32
+ "ds:focus-visible:outline-[color:var(--ring)]",
33
+ "ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
34
+ "ds:forced-colors:focus-visible:outline-[CanvasText]",
35
+ "ds:min-h-[var(--min-target-size)]",
36
+ "ds:disabled:opacity-50 ds:disabled:cursor-not-allowed"
37
37
  ].join(" "),
38
38
  {
39
39
  variants: {
40
40
  size: {
41
- sm: "text-[length:var(--font-size-sm)]",
42
- md: "text-[length:var(--font-size-base)]",
43
- lg: "text-[length:var(--font-size-lg)]"
41
+ sm: "ds:text-[length:var(--font-size-sm)]",
42
+ md: "ds:text-[length:var(--font-size-base)]",
43
+ lg: "ds:text-[length:var(--font-size-lg)]"
44
44
  },
45
45
  density: {
46
46
  default: "",
47
- compact: "min-h-0 h-8"
47
+ compact: "ds:min-h-0 ds:h-8"
48
48
  }
49
49
  },
50
50
  defaultVariants: {
@@ -52,10 +52,10 @@ const re = P(
52
52
  density: "default"
53
53
  }
54
54
  }
55
- ), te = P(
55
+ ), re = P(
56
56
  [
57
- "inline-flex flex-col",
58
- "w-full"
57
+ "ds:inline-flex ds:flex-col",
58
+ "ds:w-full"
59
59
  ].join(" "),
60
60
  {
61
61
  variants: {
@@ -76,97 +76,97 @@ const re = P(
76
76
  }
77
77
  ), B = P(
78
78
  [
79
- "hidden md:inline-flex items-center gap-[calc(var(--spacing-xs)/2)]",
80
- "ms-auto",
81
- "rounded-[var(--radius-sm)]",
82
- "border border-[color:var(--border)]",
83
- "bg-[var(--background)]",
84
- "ps-[calc(var(--spacing-xs)/1.2)] pe-[calc(var(--spacing-xs)/1.2)]",
85
- "py-[calc(var(--spacing-xs)/2)]",
79
+ "ds:hidden ds:md:inline-flex ds:items-center ds:gap-[calc(var(--spacing-xs)/2)]",
80
+ "ds:ms-auto",
81
+ "ds:rounded-[var(--radius-sm)]",
82
+ "ds:border ds:border-[color:var(--border)]",
83
+ "ds:bg-[var(--background)]",
84
+ "ds:ps-[calc(var(--spacing-xs)/1.2)] ds:pe-[calc(var(--spacing-xs)/1.2)]",
85
+ "ds:py-[calc(var(--spacing-xs)/2)]",
86
86
  // Use full --foreground (not --muted-foreground) so axe's contrast
87
87
  // check clears 4.5:1 even against the 1px --border edge region.
88
- "text-[length:var(--font-size-xs)] text-[color:var(--foreground)]",
89
- "font-[family-name:var(--font-mono)]"
88
+ "ds:text-[length:var(--font-size-xs)] ds:text-[color:var(--foreground)]",
89
+ "ds:font-[family-name:var(--font-mono)]"
90
90
  ].join(" ")
91
- ), ne = P(
91
+ ), te = P(
92
92
  [
93
- "z-[var(--z-dropdown)]",
94
- "rounded-[var(--radius-md)]",
95
- "border border-[color:var(--border)]",
96
- "bg-[var(--popover)] text-[color:var(--popover-foreground)]",
97
- "shadow-[var(--shadow-lg)]",
98
- "p-[var(--spacing-xs)]",
93
+ "ds:z-[var(--z-dropdown)]",
94
+ "ds:rounded-[var(--radius-md)]",
95
+ "ds:border ds:border-[color:var(--border)]",
96
+ "ds:bg-[var(--popover)] ds:text-[color:var(--popover-foreground)]",
97
+ "ds:shadow-[var(--shadow-lg)]",
98
+ "ds:p-[var(--spacing-xs)]",
99
99
  // Motion gates — reduced-motion honoured via .theme-accessible's 0ms
100
100
  // animation-duration token.
101
- "data-[state=open]:animate-in data-[state=closed]:animate-out",
102
- "data-[state=open]:fade-in data-[state=closed]:fade-out",
103
- "motion-reduce:animate-none"
101
+ "ds:data-[state=open]:animate-in ds:data-[state=closed]:animate-out",
102
+ "ds:data-[state=open]:fade-in ds:data-[state=closed]:fade-out",
103
+ "ds:motion-reduce:animate-none"
104
104
  ].join(" ")
105
105
  );
106
- function ge(t, r) {
107
- const o = L(t.trim());
108
- return o === "" ? r : r.map((s) => ({
109
- ...s,
110
- items: s.items.filter(
106
+ function ge(r, a) {
107
+ const o = L(r.trim());
108
+ return o === "" ? a : a.map((n) => ({
109
+ ...n,
110
+ items: n.items.filter(
111
111
  (p) => L(p.label).includes(o)
112
112
  )
113
- })).filter((s) => s.items.length > 0);
113
+ })).filter((n) => n.items.length > 0);
114
114
  }
115
- const se = U(
116
- (t, r) => {
115
+ const ne = U(
116
+ (r, a) => {
117
117
  const {
118
118
  mode: o = "launcher",
119
- size: s = "md",
119
+ size: n = "md",
120
120
  density: p = "default",
121
121
  topLevel: y = !1,
122
122
  placeholder: i,
123
123
  shortcutHint: h = !0,
124
124
  className: v,
125
- onOpenCommandPalette: n,
125
+ onOpenCommandPalette: t,
126
126
  value: g,
127
127
  defaultValue: z,
128
128
  onQueryChange: k,
129
- results: l,
129
+ results: d,
130
130
  onSelect: b,
131
131
  debounceMs: C,
132
- ...c
133
- } = t, { t: d } = E(), [R, I] = V(!1);
132
+ ...l
133
+ } = r, { t: c } = E(), [R, I] = V(!1);
134
134
  O(() => {
135
- I(ae());
135
+ I(se());
136
136
  }, []);
137
137
  const S = R ? "⌘K" : "Ctrl+K", u = "Meta+K Control+K", m = y ? { role: "search" } : { role: void 0 };
138
138
  if (o === "launcher") {
139
- const N = i ?? d("search.placeholder", "Search…");
140
- return /* @__PURE__ */ a("div", { ref: r, ...m, className: v, children: /* @__PURE__ */ D(
139
+ const N = i ?? c("search.placeholder", "Search…");
140
+ return /* @__PURE__ */ s("div", { ref: a, ...m, className: v, children: /* @__PURE__ */ D(
141
141
  "button",
142
142
  {
143
143
  type: "button",
144
- onClick: n,
144
+ onClick: t,
145
145
  "aria-haspopup": "dialog",
146
- "aria-label": d("search.open", "Open search"),
146
+ "aria-label": c("search.open", "Open search"),
147
147
  "aria-keyshortcuts": u,
148
- className: re({ size: s, density: p }),
149
- ...c,
148
+ className: ae({ size: n, density: p }),
149
+ ...l,
150
150
  children: [
151
- /* @__PURE__ */ a(
151
+ /* @__PURE__ */ s(
152
152
  Z,
153
153
  {
154
154
  "aria-hidden": !0,
155
- className: "size-4 shrink-0",
155
+ className: "ds:size-4 ds:shrink-0",
156
156
  focusable: "false"
157
157
  }
158
158
  ),
159
- /* @__PURE__ */ a("span", { "aria-hidden": "true", className: "truncate text-start", children: N }),
160
- h ? /* @__PURE__ */ a("kbd", { className: B(), children: S }) : null
159
+ /* @__PURE__ */ s("span", { "aria-hidden": "true", className: "ds:truncate ds:text-start", children: N }),
160
+ h ? /* @__PURE__ */ s("kbd", { className: B(), children: S }) : null
161
161
  ]
162
162
  }
163
163
  ) });
164
164
  }
165
- return /* @__PURE__ */ a(
165
+ return /* @__PURE__ */ s(
166
166
  oe,
167
167
  {
168
- forwardedRef: r,
169
- size: s,
168
+ forwardedRef: a,
169
+ size: n,
170
170
  density: p,
171
171
  landmarkProps: m,
172
172
  placeholder: i,
@@ -174,45 +174,45 @@ const se = U(
174
174
  shortcutLabel: S,
175
175
  ariaKeyshortcuts: u,
176
176
  className: v,
177
- ...t
177
+ ...r
178
178
  }
179
179
  );
180
180
  }
181
181
  );
182
- se.displayName = "SearchBar";
183
- function oe(t) {
182
+ ne.displayName = "SearchBar";
183
+ function oe(r) {
184
184
  const {
185
- forwardedRef: r,
185
+ forwardedRef: a,
186
186
  size: o,
187
- density: s,
187
+ density: n,
188
188
  landmarkProps: p,
189
189
  placeholder: y,
190
190
  shortcutHint: i,
191
191
  shortcutLabel: h,
192
192
  ariaKeyshortcuts: v,
193
- className: n,
193
+ className: t,
194
194
  value: g,
195
195
  defaultValue: z,
196
196
  onQueryChange: k,
197
- results: l,
197
+ results: d,
198
198
  onSelect: b,
199
199
  debounceMs: C = 150
200
- } = t, { t: c } = E(), d = g !== void 0, [R, I] = V(z ?? ""), S = d ? g ?? "" : R, [u, m] = V(!1), [x, N] = V(0), H = W(null), M = J(), $ = ee((e) => {
200
+ } = r, { t: l } = E(), c = g !== void 0, [R, I] = V(z ?? ""), S = c ? g ?? "" : R, [u, m] = V(!1), [x, N] = V(0), H = W(null), M = J(), $ = ee((e) => {
201
201
  k == null || k(e);
202
- }, C), f = X(() => l ? l.flatMap((e) => e.items) : [], [l]);
202
+ }, C), f = X(() => d ? d.flatMap((e) => e.items) : [], [d]);
203
203
  O(() => {
204
204
  x > f.length - 1 && N(0);
205
205
  }, [f.length, x]);
206
206
  const q = _(
207
207
  (e) => {
208
- d || I(e), $(e), m(e.trim().length > 0);
208
+ c || I(e), $(e), m(e.trim().length > 0);
209
209
  },
210
- [$, d]
210
+ [$, c]
211
211
  ), A = _(
212
212
  (e) => {
213
- b == null || b(e), m(!1), d || I("");
213
+ b == null || b(e), m(!1), c || I("");
214
214
  },
215
- [b, d]
215
+ [b, c]
216
216
  ), F = _(
217
217
  (e) => {
218
218
  if (!(e.nativeEvent.isComposing || e.keyCode === 229)) {
@@ -234,21 +234,21 @@ function oe(t) {
234
234
  }
235
235
  },
236
236
  [u, f, x, A]
237
- ), Q = y ?? c("search.placeholder", "Search…"), K = f.length > 0, T = u && K ? `${M}-option-${x}` : void 0;
238
- return /* @__PURE__ */ a(j.Root, { open: u && K, onOpenChange: m, children: /* @__PURE__ */ D(
237
+ ), Q = y ?? l("search.placeholder", "Search…"), K = f.length > 0, T = u && K ? `${M}-option-${x}` : void 0;
238
+ return /* @__PURE__ */ s(j.Root, { open: u && K, onOpenChange: m, children: /* @__PURE__ */ D(
239
239
  "div",
240
240
  {
241
- ref: r,
241
+ ref: a,
242
242
  ...p,
243
- className: [te({ size: o, density: s }), n].filter(Boolean).join(" "),
243
+ className: [re({ size: o, density: n }), t].filter(Boolean).join(" "),
244
244
  children: [
245
- /* @__PURE__ */ a(j.Anchor, { asChild: !0, children: /* @__PURE__ */ D(
245
+ /* @__PURE__ */ s(j.Anchor, { asChild: !0, children: /* @__PURE__ */ D(
246
246
  "div",
247
247
  {
248
- className: "relative flex items-center",
248
+ className: "ds:relative ds:flex ds:items-center",
249
249
  onKeyDown: F,
250
250
  children: [
251
- /* @__PURE__ */ a(
251
+ /* @__PURE__ */ s(
252
252
  Y,
253
253
  {
254
254
  ref: H,
@@ -256,7 +256,7 @@ function oe(t) {
256
256
  value: S,
257
257
  onInput: q,
258
258
  placeholder: Q,
259
- "aria-label": c("search.label", "Search"),
259
+ "aria-label": l("search.label", "Search"),
260
260
  "aria-keyshortcuts": v,
261
261
  role: "combobox",
262
262
  "aria-expanded": u && K,
@@ -264,13 +264,13 @@ function oe(t) {
264
264
  "aria-activedescendant": T
265
265
  }
266
266
  ),
267
- i ? /* @__PURE__ */ a(
267
+ i ? /* @__PURE__ */ s(
268
268
  "kbd",
269
269
  {
270
270
  className: [
271
271
  B(),
272
- "absolute end-[var(--spacing-sm)] top-1/2 -translate-y-1/2",
273
- "pointer-events-none"
272
+ "ds:absolute ds:end-[var(--spacing-sm)] ds:top-1/2 ds:-translate-y-1/2",
273
+ "ds:pointer-events-none"
274
274
  ].join(" "),
275
275
  children: h
276
276
  }
@@ -278,37 +278,37 @@ function oe(t) {
278
278
  ]
279
279
  }
280
280
  ) }),
281
- /* @__PURE__ */ a(j.Portal, { children: /* @__PURE__ */ a(
281
+ /* @__PURE__ */ s(j.Portal, { children: /* @__PURE__ */ s(
282
282
  j.Content,
283
283
  {
284
284
  side: "bottom",
285
285
  align: "start",
286
286
  sideOffset: 4,
287
- "aria-label": c("search.resultsLabel", "Search results"),
287
+ "aria-label": l("search.resultsLabel", "Search results"),
288
288
  onOpenAutoFocus: (e) => e.preventDefault(),
289
289
  className: [
290
- ne(),
291
- "w-[var(--radix-popover-trigger-width)]"
290
+ te(),
291
+ "ds:w-[var(--radix-popover-trigger-width)]"
292
292
  ].join(" "),
293
- children: /* @__PURE__ */ a(
293
+ children: /* @__PURE__ */ s(
294
294
  "div",
295
295
  {
296
296
  id: M,
297
297
  role: "listbox",
298
- "aria-label": c("search.resultsLabel", "Search results"),
299
- className: "flex flex-col gap-[calc(var(--spacing-xs)/2)]",
300
- children: l && l.length > 0 ? ie(
301
- l,
298
+ "aria-label": l("search.resultsLabel", "Search results"),
299
+ className: "ds:flex ds:flex-col ds:gap-[calc(var(--spacing-xs)/2)]",
300
+ children: d && d.length > 0 ? ie(
301
+ d,
302
302
  x,
303
303
  M,
304
304
  A,
305
305
  N
306
- ) : /* @__PURE__ */ a(
306
+ ) : /* @__PURE__ */ s(
307
307
  "div",
308
308
  {
309
309
  role: "presentation",
310
- className: "p-[var(--spacing-sm)] type-body-sm text-[color:var(--foreground)]",
311
- children: c("search.noResults", "No results for “{{query}}”", {
310
+ className: "ds:p-[var(--spacing-sm)] type-body-sm ds:text-[color:var(--foreground)]",
311
+ children: l("search.noResults", "No results for “{{query}}”", {
312
312
  query: S
313
313
  })
314
314
  }
@@ -321,9 +321,9 @@ function oe(t) {
321
321
  }
322
322
  ) });
323
323
  }
324
- function ie(t, r, o, s, p) {
324
+ function ie(r, a, o, n, p) {
325
325
  let y = 0;
326
- return t.map((i, h) => {
326
+ return r.map((i, h) => {
327
327
  const v = i.heading ? `${o}-group-${h}-heading` : void 0;
328
328
  return /* @__PURE__ */ D(
329
329
  "div",
@@ -331,19 +331,19 @@ function ie(t, r, o, s, p) {
331
331
  role: i.heading ? "group" : "presentation",
332
332
  "aria-labelledby": v,
333
333
  children: [
334
- i.heading ? /* @__PURE__ */ a(
334
+ i.heading ? /* @__PURE__ */ s(
335
335
  "div",
336
336
  {
337
337
  id: v,
338
338
  "aria-hidden": "true",
339
- className: "ps-[var(--spacing-sm)] pe-[var(--spacing-sm)] pt-[var(--spacing-xs)] pb-[var(--spacing-xs)] type-eyebrow text-[color:var(--foreground)]",
339
+ className: "ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)] ds:pt-[var(--spacing-xs)] ds:pb-[var(--spacing-xs)] type-eyebrow ds:text-[color:var(--foreground)]",
340
340
  children: i.heading
341
341
  }
342
342
  ) : null,
343
- i.items.map((n) => {
343
+ i.items.map((t) => {
344
344
  const g = y;
345
345
  y += 1;
346
- const z = g === r, k = `${o}-option-${g}`, l = le(n.href), b = [
346
+ const z = g === a, k = `${o}-option-${g}`, d = de(t.href), b = [
347
347
  "flex items-center gap-[var(--spacing-sm)]",
348
348
  "ps-[var(--spacing-sm)] pe-[var(--spacing-sm)]",
349
349
  "pt-[var(--spacing-xs)] pb-[var(--spacing-xs)]",
@@ -353,29 +353,29 @@ function ie(t, r, o, s, p) {
353
353
  "min-h-[var(--min-target-size)]",
354
354
  z ? "bg-[var(--muted)]/40" : ""
355
355
  ].join(" "), C = /* @__PURE__ */ D(G, { children: [
356
- n.icon ? /* @__PURE__ */ a(
356
+ t.icon ? /* @__PURE__ */ s(
357
357
  "span",
358
358
  {
359
359
  "aria-hidden": "true",
360
- className: "inline-flex size-4 shrink-0 items-center justify-center",
361
- children: n.icon
360
+ className: "ds:inline-flex ds:size-4 ds:shrink-0 ds:items-center ds:justify-center",
361
+ children: t.icon
362
362
  }
363
363
  ) : null,
364
- /* @__PURE__ */ a("span", { className: "flex-1 text-[length:var(--font-size-sm)]", children: n.label }),
365
- n.meta ? /* @__PURE__ */ a("span", { className: "ms-auto type-meta text-[color:var(--foreground)]", children: n.meta }) : null
366
- ] }), c = {
364
+ /* @__PURE__ */ s("span", { className: "ds:flex-1 ds:text-[length:var(--font-size-sm)]", children: t.label }),
365
+ t.meta ? /* @__PURE__ */ s("span", { className: "ds:ms-auto type-meta ds:text-[color:var(--foreground)]", children: t.meta }) : null
366
+ ] }), l = {
367
367
  id: k,
368
368
  role: "option",
369
369
  "aria-selected": z,
370
370
  // onMouseDown rather than onClick so we trigger before the
371
371
  // input loses focus to the pointer-down on the popover.
372
- onMouseDown: (d) => {
373
- d.preventDefault(), s(n);
372
+ onMouseDown: (c) => {
373
+ c.preventDefault(), n(t);
374
374
  },
375
375
  onMouseEnter: () => p(g),
376
376
  className: b
377
377
  };
378
- return l ? /* @__PURE__ */ a("a", { href: l, ...c, children: C }, n.id) : /* @__PURE__ */ a("div", { ...c, children: C }, n.id);
378
+ return d ? /* @__PURE__ */ s("a", { href: d, ...l, children: C }, t.id) : /* @__PURE__ */ s("div", { ...l, children: C }, t.id);
379
379
  })
380
380
  ]
381
381
  },
@@ -383,14 +383,14 @@ function ie(t, r, o, s, p) {
383
383
  );
384
384
  });
385
385
  }
386
- function le(t) {
387
- if (!t) return;
388
- const r = t.trim();
389
- if (r !== "" && (/^(https?:|mailto:|tel:)/i.test(r) || /^(\/|\.\/|\.\.\/)/.test(r)))
390
- return r;
386
+ function de(r) {
387
+ if (!r) return;
388
+ const a = r.trim();
389
+ if (a !== "" && (/^(https?:|mailto:|tel:)/i.test(a) || /^(\/|\.\/|\.\.\/)/.test(a)))
390
+ return a;
391
391
  }
392
392
  export {
393
- se as S,
393
+ ne as S,
394
394
  ge as f
395
395
  };
396
- //# sourceMappingURL=search-bar-DgSOAajC.js.map
396
+ //# sourceMappingURL=search-bar-VoTqJhRp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-bar-VoTqJhRp.js","sources":["../../src/components/search-bar/search-bar.tsx"],"sourcesContent":["import {\n forwardRef,\n useCallback,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n type HTMLAttributes,\n type KeyboardEvent as ReactKeyboardEvent,\n type ReactNode,\n} from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport { Search } from 'lucide-react';\nimport * as RadixPopover from '@radix-ui/react-popover';\nimport { SearchInput } from '../search-input/search-input';\nimport { useDebouncedCallback, normalizeDiacritics } from '../_shared';\n\n/* ------------------------------------------------------------------ */\n/* Shortcut detection */\n/* ------------------------------------------------------------------ */\n\nfunction isMacLike(): boolean {\n if (typeof navigator === 'undefined') return false;\n // Prefer `userAgentData.platform` where supported; fall back to the\n // deprecated `navigator.platform`. Both are strings; we just look for\n // `mac`.\n const uaData = (navigator as unknown as {\n userAgentData?: { platform?: string };\n }).userAgentData;\n const platformString = uaData?.platform ?? navigator.platform ?? '';\n return /mac/i.test(platformString);\n}\n\n/* ------------------------------------------------------------------ */\n/* CVA */\n/* ------------------------------------------------------------------ */\n\nconst launcherVariants = cva(\n [\n 'ds:inline-flex ds:items-center ds:gap-[var(--spacing-sm)]',\n 'ds:rounded-[var(--radius-md)]',\n 'ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)]',\n // Same visual language as <SearchInput> so the launcher truly looks\n // like an input. --muted-foreground over --background meets AA 4.5:1\n // in every theme; --muted is a mid-tone not suitable as a surface.\n 'ds:bg-[var(--background)] ds:border ds:border-[color:var(--border)]',\n 'ds:text-[color:var(--muted-foreground)]',\n // Opaque hover — mix 20% muted into --background so the launcher stays a\n // solid surface even when placed over a brand-tinted parent (e.g. the\n // Header's `brand` variant).\n 'ds:hover:bg-[color-mix(in_srgb,var(--muted)_20%,var(--background))]',\n 'ds:transition-colors ds:motion-reduce:transition-none',\n 'ds:focus-visible:outline-[length:var(--focus-ring-width)]',\n 'ds:focus-visible:outline-solid',\n 'ds:focus-visible:outline-[color:var(--ring)]',\n 'ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]',\n 'ds:forced-colors:focus-visible:outline-[CanvasText]',\n 'ds:min-h-[var(--min-target-size)]',\n 'ds:disabled:opacity-50 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 density: {\n default: '',\n compact: 'ds:min-h-0 ds:h-8',\n },\n },\n defaultVariants: {\n size: 'md',\n density: 'default',\n },\n },\n);\n\nconst inlineWrapperVariants = cva(\n [\n 'ds:inline-flex ds:flex-col',\n 'ds:w-full',\n ].join(' '),\n {\n variants: {\n size: {\n sm: '',\n md: '',\n lg: '',\n },\n density: {\n default: '',\n compact: '',\n },\n },\n defaultVariants: {\n size: 'md',\n density: 'default',\n },\n },\n);\n\nconst shortcutPillVariants = cva(\n [\n 'ds:hidden ds:md:inline-flex ds:items-center ds:gap-[calc(var(--spacing-xs)/2)]',\n 'ds:ms-auto',\n 'ds:rounded-[var(--radius-sm)]',\n 'ds:border ds:border-[color:var(--border)]',\n 'ds:bg-[var(--background)]',\n 'ds:ps-[calc(var(--spacing-xs)/1.2)] ds:pe-[calc(var(--spacing-xs)/1.2)]',\n 'ds:py-[calc(var(--spacing-xs)/2)]',\n // Use full --foreground (not --muted-foreground) so axe's contrast\n // check clears 4.5:1 even against the 1px --border edge region.\n 'ds:text-[length:var(--font-size-xs)] ds:text-[color:var(--foreground)]',\n 'ds:font-[family-name:var(--font-mono)]',\n ].join(' '),\n);\n\nconst popoverContentVariants = cva(\n [\n 'ds:z-[var(--z-dropdown)]',\n 'ds:rounded-[var(--radius-md)]',\n 'ds:border ds:border-[color:var(--border)]',\n 'ds:bg-[var(--popover)] ds:text-[color:var(--popover-foreground)]',\n 'ds:shadow-[var(--shadow-lg)]',\n 'ds:p-[var(--spacing-xs)]',\n // Motion gates — reduced-motion honoured via .theme-accessible's 0ms\n // animation-duration token.\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);\n\n/* ------------------------------------------------------------------ */\n/* Public types */\n/* ------------------------------------------------------------------ */\n\nexport interface SearchBarResultItem {\n id: string;\n /** Display label. */\n label: string;\n /** Optional icon rendered on inline-start (aria-hidden). */\n icon?: ReactNode;\n /** Optional right-aligned meta text (tag, count, section label). */\n meta?: string;\n /** Optional href — the list renders anchors when present. */\n href?: string;\n}\n\nexport interface SearchBarResultGroup {\n /** Heading displayed above the items (aria-hidden=\"true\" — visual only). */\n heading?: string;\n items: SearchBarResultItem[];\n}\n\ntype SharedProps = {\n size?: 'sm' | 'md' | 'lg';\n density?: 'default' | 'compact';\n /** `true` wraps in <search role=\"search\"> when this is the page's primary search. */\n topLevel?: boolean;\n placeholder?: string;\n /** Platform-aware shortcut pill — default `true` (hidden below `md` breakpoint). */\n shortcutHint?: boolean;\n className?: string;\n};\n\ntype LauncherProps = SharedProps & {\n mode?: 'launcher';\n /** Called on click / Enter / global Cmd/Ctrl+K. */\n onOpenCommandPalette: () => void;\n // Not used in launcher mode.\n value?: never;\n defaultValue?: never;\n onQueryChange?: never;\n results?: never;\n onSelect?: never;\n debounceMs?: never;\n};\n\ntype InlineProps = SharedProps & {\n mode: 'inline';\n value?: string;\n defaultValue?: string;\n onQueryChange?: (query: string) => void;\n /** Groups of results rendered in the popover. */\n results?: SearchBarResultGroup[];\n onSelect?: (item: SearchBarResultItem) => void;\n debounceMs?: number;\n // Not used in inline mode.\n onOpenCommandPalette?: never;\n};\n\nexport type SearchBarProps = (LauncherProps | InlineProps) &\n Omit<\n HTMLAttributes<HTMLDivElement>,\n 'role' | 'onChange' | 'children' | 'defaultValue' | 'results'\n > &\n VariantProps<typeof launcherVariants>;\n\n/* ------------------------------------------------------------------ */\n/* Helpers */\n/* ------------------------------------------------------------------ */\n\nexport function filterSearchResults(\n query: string,\n groups: SearchBarResultGroup[],\n): SearchBarResultGroup[] {\n const needle = normalizeDiacritics(query.trim());\n if (needle === '') return groups;\n return groups\n .map((g) => ({\n ...g,\n items: g.items.filter((item) =>\n normalizeDiacritics(item.label).includes(needle),\n ),\n }))\n .filter((g) => g.items.length > 0);\n}\n\n/* ------------------------------------------------------------------ */\n/* SearchBar */\n/* ------------------------------------------------------------------ */\n\nexport const SearchBar = forwardRef<HTMLDivElement, SearchBarProps>(\n (props, ref) => {\n // Strip every API prop from `...rest` so nothing leaks to the DOM as\n // an unknown attribute (React warns in DEV and some become invalid\n // HTML in production).\n const {\n mode = 'launcher',\n size = 'md',\n density = 'default',\n topLevel = false,\n placeholder,\n shortcutHint = true,\n className,\n onOpenCommandPalette,\n value: _value,\n defaultValue: _defaultValue,\n onQueryChange: _onQueryChange,\n results: _results,\n onSelect: _onSelect,\n debounceMs: _debounceMs,\n ...rest\n } = props as SearchBarProps & { className?: string };\n // silence unused-var warnings for the destructured siblings we only\n // needed to peel off the spread target.\n void _value;\n void _defaultValue;\n void _onQueryChange;\n void _results;\n void _onSelect;\n void _debounceMs;\n\n const { t } = useTranslation();\n const [isMac, setIsMac] = useState(false);\n useEffect(() => {\n setIsMac(isMacLike());\n }, []);\n\n const shortcutLabel = isMac ? '\\u2318K' : 'Ctrl+K';\n // Advertise the shortcut on the launcher button. The binding itself\n // lives in `useCommandPalette()` (CommandPalette owns its open state);\n // duplicating the listener here would cause a double-fire.\n const ariaKeyshortcuts = 'Meta+K Control+K';\n\n /* ---- Landmark role --------------------------------------------- */\n const landmarkProps = topLevel\n ? { role: 'search' as const }\n : { role: undefined };\n\n /* ---- LAUNCHER MODE -------------------------------------------- */\n if (mode === 'launcher') {\n const resolvedPlaceholder =\n placeholder ?? t('search.placeholder', 'Search\\u2026');\n return (\n <div ref={ref} {...landmarkProps} className={className}>\n <button\n type=\"button\"\n onClick={onOpenCommandPalette}\n aria-haspopup=\"dialog\"\n aria-label={t('search.open', 'Open search')}\n aria-keyshortcuts={ariaKeyshortcuts}\n className={launcherVariants({ size, density })}\n {...(rest as HTMLAttributes<HTMLButtonElement>)}\n >\n <Search\n aria-hidden\n className=\"ds:size-4 ds:shrink-0\"\n focusable=\"false\"\n />\n <span aria-hidden=\"true\" className=\"ds:truncate ds:text-start\">\n {resolvedPlaceholder}\n </span>\n {shortcutHint ? (\n <kbd className={shortcutPillVariants()}>{shortcutLabel}</kbd>\n ) : null}\n </button>\n </div>\n );\n }\n\n /* ---- INLINE MODE ---------------------------------------------- */\n const inlineProps = props as InlineProps;\n return (\n <InlineSearchBar\n forwardedRef={ref}\n size={size}\n density={density}\n landmarkProps={landmarkProps}\n placeholder={placeholder}\n shortcutHint={shortcutHint}\n shortcutLabel={shortcutLabel}\n ariaKeyshortcuts={ariaKeyshortcuts}\n className={className}\n {...inlineProps}\n />\n );\n },\n);\n\nSearchBar.displayName = 'SearchBar';\n\n/* ------------------------------------------------------------------ */\n/* InlineSearchBar — internal */\n/* ------------------------------------------------------------------ */\n\ninterface InlineInternalProps extends InlineProps {\n forwardedRef: React.ForwardedRef<HTMLDivElement>;\n size: 'sm' | 'md' | 'lg';\n density: 'default' | 'compact';\n landmarkProps: { role?: 'search' };\n shortcutHint: boolean;\n shortcutLabel: string;\n ariaKeyshortcuts: string;\n className?: string;\n}\n\nfunction InlineSearchBar(props: InlineInternalProps): ReactNode {\n const {\n forwardedRef,\n size,\n density,\n landmarkProps,\n placeholder,\n shortcutHint,\n shortcutLabel,\n ariaKeyshortcuts,\n className,\n value,\n defaultValue,\n onQueryChange,\n results,\n onSelect,\n debounceMs = 150,\n } = props;\n\n const { t } = useTranslation();\n const isControlled = value !== undefined;\n const [internalValue, setInternalValue] = useState(defaultValue ?? '');\n const query = isControlled ? (value ?? '') : internalValue;\n\n const [open, setOpen] = useState(false);\n const [activeIndex, setActiveIndex] = useState(0);\n const inputRef = useRef<HTMLInputElement | null>(null);\n const listboxId = useId();\n\n const debouncedQueryChange = useDebouncedCallback((next: string) => {\n onQueryChange?.(next);\n }, debounceMs);\n\n const flatResults = useMemo<SearchBarResultItem[]>(() => {\n if (!results) return [];\n return results.flatMap((g) => g.items);\n }, [results]);\n\n // Reset active index whenever the result count changes.\n useEffect(() => {\n if (activeIndex > flatResults.length - 1) setActiveIndex(0);\n }, [flatResults.length, activeIndex]);\n\n const handleInput = useCallback(\n (raw: string) => {\n if (!isControlled) setInternalValue(raw);\n debouncedQueryChange(raw);\n setOpen(raw.trim().length > 0);\n },\n [debouncedQueryChange, isControlled],\n );\n\n const commit = useCallback(\n (item: SearchBarResultItem) => {\n onSelect?.(item);\n setOpen(false);\n if (!isControlled) setInternalValue('');\n },\n [onSelect, isControlled],\n );\n\n const handleKeyDown = useCallback(\n (event: ReactKeyboardEvent<HTMLDivElement>) => {\n if (event.nativeEvent.isComposing || event.keyCode === 229) return;\n if (!open && event.key === 'ArrowDown' && flatResults.length > 0) {\n event.preventDefault();\n setOpen(true);\n return;\n }\n if (!open) return;\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n setActiveIndex((i) => (i + 1) % Math.max(flatResults.length, 1));\n } else if (event.key === 'ArrowUp') {\n event.preventDefault();\n setActiveIndex(\n (i) =>\n (i - 1 + Math.max(flatResults.length, 1)) %\n Math.max(flatResults.length, 1),\n );\n } else if (event.key === 'Enter') {\n const item = flatResults[activeIndex];\n if (item) {\n event.preventDefault();\n commit(item);\n }\n } else if (event.key === 'Escape') {\n event.preventDefault();\n setOpen(false);\n }\n },\n [open, flatResults, activeIndex, commit],\n );\n\n const resolvedPlaceholder =\n placeholder ?? t('search.placeholder', 'Search\\u2026');\n\n const hasResults = flatResults.length > 0;\n // aria-activedescendant may only reference an element that actually exists\n // in the DOM — so only set it when the popover is open AND there are\n // results to land on. Referencing a non-existent option is an a11y\n // violation (aria-valid-attr-value).\n const activeDescendantId =\n open && hasResults ? `${listboxId}-option-${activeIndex}` : undefined;\n\n return (\n <RadixPopover.Root open={open && hasResults} onOpenChange={setOpen}>\n <div\n ref={forwardedRef}\n {...landmarkProps}\n className={[inlineWrapperVariants({ size, density }), className]\n .filter(Boolean)\n .join(' ')}\n >\n <RadixPopover.Anchor asChild>\n <div\n className=\"ds:relative ds:flex ds:items-center\"\n onKeyDown={handleKeyDown}\n >\n <SearchInput\n ref={inputRef}\n size={size}\n value={query}\n onInput={handleInput}\n placeholder={resolvedPlaceholder}\n aria-label={t('search.label', 'Search')}\n aria-keyshortcuts={ariaKeyshortcuts}\n role=\"combobox\"\n aria-expanded={open && hasResults}\n aria-controls={listboxId}\n aria-activedescendant={activeDescendantId}\n />\n {shortcutHint ? (\n <kbd\n className={[\n shortcutPillVariants(),\n 'ds:absolute ds:end-[var(--spacing-sm)] ds:top-1/2 ds:-translate-y-1/2',\n 'ds:pointer-events-none',\n ].join(' ')}\n >\n {shortcutLabel}\n </kbd>\n ) : null}\n </div>\n </RadixPopover.Anchor>\n <RadixPopover.Portal>\n <RadixPopover.Content\n side=\"bottom\"\n align=\"start\"\n sideOffset={4}\n aria-label={t('search.resultsLabel', 'Search results')}\n onOpenAutoFocus={(e) => e.preventDefault()}\n // Width matches the anchor via Radix's CSS variable. Applied\n // as a Tailwind arbitrary-value class so no inline style is\n // needed (23-constraints §4).\n className={[\n popoverContentVariants(),\n 'ds:w-[var(--radix-popover-trigger-width)]',\n ].join(' ')}\n >\n {/* listbox uses <div> rather than <ul> so the option role\n children don't trip the `<ul> must only contain <li>` axe\n rule. Options are direct descendants of the listbox root\n per the WAI-ARIA listbox pattern. */}\n <div\n id={listboxId}\n role=\"listbox\"\n aria-label={t('search.resultsLabel', 'Search results')}\n className=\"ds:flex ds:flex-col ds:gap-[calc(var(--spacing-xs)/2)]\"\n >\n {results && results.length > 0 ? (\n renderGroups(\n results,\n activeIndex,\n listboxId,\n commit,\n setActiveIndex,\n )\n ) : (\n <div\n role=\"presentation\"\n className=\"ds:p-[var(--spacing-sm)] type-body-sm ds:text-[color:var(--foreground)]\"\n >\n {t('search.noResults', 'No results for \\u201C{{query}}\\u201D', {\n query,\n })}\n </div>\n )}\n </div>\n </RadixPopover.Content>\n </RadixPopover.Portal>\n </div>\n </RadixPopover.Root>\n );\n}\n\nfunction renderGroups(\n groups: SearchBarResultGroup[],\n activeIndex: number,\n listboxId: string,\n onCommit: (item: SearchBarResultItem) => void,\n setActive: (index: number) => void,\n): ReactNode {\n let flatIndex = 0;\n // Flatten groups + headings into a single-level sequence of divs at the\n // listbox root. `role=\"group\"` wrappers keep the visual grouping while\n // keeping options as direct descendants of the listbox.\n return groups.map((group, gi) => {\n const headingId = group.heading ? `${listboxId}-group-${gi}-heading` : undefined;\n return (\n <div\n key={`g-${gi}`}\n role={group.heading ? 'group' : 'presentation'}\n aria-labelledby={headingId}\n >\n {group.heading ? (\n <div\n id={headingId}\n aria-hidden=\"true\"\n className=\"ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)] ds:pt-[var(--spacing-xs)] ds:pb-[var(--spacing-xs)] type-eyebrow ds:text-[color:var(--foreground)]\"\n >\n {group.heading}\n </div>\n ) : null}\n {group.items.map((item) => {\n const myIndex = flatIndex;\n flatIndex += 1;\n const isActive = myIndex === activeIndex;\n const optionId = `${listboxId}-option-${myIndex}`;\n const safeHref = safeNavigationHref(item.href);\n const commonClass = [\n 'flex items-center gap-[var(--spacing-sm)]',\n 'ps-[var(--spacing-sm)] pe-[var(--spacing-sm)]',\n 'pt-[var(--spacing-xs)] pb-[var(--spacing-xs)]',\n 'rounded-[var(--radius-sm)]',\n 'cursor-pointer',\n 'no-underline text-[color:var(--foreground)]',\n 'min-h-[var(--min-target-size)]',\n isActive ? 'bg-[var(--muted)]/40' : '',\n ].join(' ');\n const body = (\n <>\n {item.icon ? (\n <span\n aria-hidden=\"true\"\n className=\"ds:inline-flex ds:size-4 ds:shrink-0 ds:items-center ds:justify-center\"\n >\n {item.icon}\n </span>\n ) : null}\n <span className=\"ds:flex-1 ds:text-[length:var(--font-size-sm)]\">\n {item.label}\n </span>\n {item.meta ? (\n <span className=\"ds:ms-auto type-meta ds:text-[color:var(--foreground)]\">\n {item.meta}\n </span>\n ) : null}\n </>\n );\n const shared = {\n id: optionId,\n role: 'option' as const,\n 'aria-selected': isActive,\n // onMouseDown rather than onClick so we trigger before the\n // input loses focus to the pointer-down on the popover.\n onMouseDown: (e: React.MouseEvent) => {\n e.preventDefault();\n onCommit(item);\n },\n onMouseEnter: () => setActive(myIndex),\n className: commonClass,\n };\n if (safeHref) {\n return (\n <a key={item.id} href={safeHref} {...shared}>\n {body}\n </a>\n );\n }\n return (\n <div key={item.id} {...shared}>\n {body}\n </div>\n );\n })}\n </div>\n );\n });\n}\n\n/**\n * Allow-list for result-item `href` strings. Same allow-list as the\n * chat-message token renderer: http(s) + mailto + tel + same-origin\n * relative paths. Anything else (including `javascript:` and `data:`)\n * returns `undefined`, causing the renderer to fall back to a <div>.\n */\nfunction safeNavigationHref(href: string | undefined): string | undefined {\n if (!href) return undefined;\n const trimmed = href.trim();\n if (trimmed === '') return undefined;\n if (/^(https?:|mailto:|tel:)/i.test(trimmed)) return trimmed;\n // Same-origin relative paths are safe because the browser resolves\n // against `window.location`. Leading `/` or `./` or `../` qualify.\n if (/^(\\/|\\.\\/|\\.\\.\\/)/.test(trimmed)) return trimmed;\n return undefined;\n}\n"],"names":["isMacLike","uaData","platformString","launcherVariants","cva","inlineWrapperVariants","shortcutPillVariants","popoverContentVariants","filterSearchResults","query","groups","needle","normalizeDiacritics","g","item","SearchBar","forwardRef","props","ref","mode","size","density","topLevel","placeholder","shortcutHint","className","onOpenCommandPalette","_value","_defaultValue","_onQueryChange","_results","_onSelect","_debounceMs","rest","t","useTranslation","isMac","setIsMac","useState","useEffect","shortcutLabel","ariaKeyshortcuts","landmarkProps","resolvedPlaceholder","jsx","jsxs","Search","InlineSearchBar","forwardedRef","value","defaultValue","onQueryChange","results","onSelect","debounceMs","isControlled","internalValue","setInternalValue","open","setOpen","activeIndex","setActiveIndex","inputRef","useRef","listboxId","useId","debouncedQueryChange","useDebouncedCallback","next","flatResults","useMemo","handleInput","useCallback","raw","commit","handleKeyDown","event","i","hasResults","activeDescendantId","RadixPopover","SearchInput","renderGroups","onCommit","setActive","flatIndex","group","gi","headingId","myIndex","isActive","optionId","safeHref","safeNavigationHref","commonClass","body","Fragment","shared","e","href","trimmed"],"mappings":"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"}