@alfadocs/ui-kit-debug 0.70.0 → 0.72.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 (1434) hide show
  1. package/dist/_chunks/accordion-C11v9ouP.js +250 -0
  2. package/dist/_chunks/accordion-C11v9ouP.js.map +1 -0
  3. package/dist/_chunks/address-autocomplete-Bq-1n1UX.js +496 -0
  4. package/dist/_chunks/address-autocomplete-Bq-1n1UX.js.map +1 -0
  5. package/dist/_chunks/address-fields-COyjgqxA.js +246 -0
  6. package/dist/_chunks/address-fields-COyjgqxA.js.map +1 -0
  7. package/dist/_chunks/agenda-card-BCGaQazD.js +147 -0
  8. package/dist/_chunks/agenda-card-BCGaQazD.js.map +1 -0
  9. package/dist/_chunks/agenda-tray-loL2A3Cx.js +215 -0
  10. package/dist/_chunks/agenda-tray-loL2A3Cx.js.map +1 -0
  11. package/dist/_chunks/ai-consent-banner-Bke9m8VS.js +170 -0
  12. package/dist/_chunks/ai-consent-banner-Bke9m8VS.js.map +1 -0
  13. package/dist/_chunks/ai-prompt-input-TVI95hJD.js +500 -0
  14. package/dist/_chunks/ai-prompt-input-TVI95hJD.js.map +1 -0
  15. package/dist/_chunks/alert-KJbsPYkI.js +314 -0
  16. package/dist/_chunks/alert-KJbsPYkI.js.map +1 -0
  17. package/dist/_chunks/alia-sidebar-BV5lBSFR.js +1183 -0
  18. package/dist/_chunks/alia-sidebar-BV5lBSFR.js.map +1 -0
  19. package/dist/_chunks/anamnesis-card-CWO4Ui9c.js +156 -0
  20. package/dist/_chunks/anamnesis-card-CWO4Ui9c.js.map +1 -0
  21. package/dist/_chunks/annotation-marker-qt5R9WZX.js.map +1 -1
  22. package/dist/_chunks/antenatal-schedule-timeline-CY-VsLok.js +413 -0
  23. package/dist/_chunks/antenatal-schedule-timeline-CY-VsLok.js.map +1 -0
  24. package/dist/_chunks/app-frame-DIEMIC5V.js +132 -0
  25. package/dist/_chunks/app-frame-DIEMIC5V.js.map +1 -0
  26. package/dist/_chunks/appointment-card-Cy4FOkGP.js +311 -0
  27. package/dist/_chunks/appointment-card-Cy4FOkGP.js.map +1 -0
  28. package/dist/_chunks/appointment-timeline-BWAPPk8F.js +388 -0
  29. package/dist/_chunks/appointment-timeline-BWAPPk8F.js.map +1 -0
  30. package/dist/_chunks/appointment-tray-D3mk04TT.js +193 -0
  31. package/dist/_chunks/appointment-tray-D3mk04TT.js.map +1 -0
  32. package/dist/_chunks/ar-BOqyIfoY.js +399 -0
  33. package/dist/_chunks/ar-BOqyIfoY.js.map +1 -0
  34. package/dist/_chunks/astroid-BN4f5VXU.js +20 -0
  35. package/dist/_chunks/astroid-BN4f5VXU.js.map +1 -0
  36. package/dist/_chunks/audio-recorder-BbjG55dP.js +450 -0
  37. package/dist/_chunks/audio-recorder-BbjG55dP.js.map +1 -0
  38. package/dist/_chunks/autocomplete-BrONKN8l.js +516 -0
  39. package/dist/_chunks/autocomplete-BrONKN8l.js.map +1 -0
  40. package/dist/_chunks/bishop-score-C6eoak_j.js +304 -0
  41. package/dist/_chunks/bishop-score-C6eoak_j.js.map +1 -0
  42. package/dist/_chunks/bmi-calculator-BmQfoEGP.js +434 -0
  43. package/dist/_chunks/bmi-calculator-BmQfoEGP.js.map +1 -0
  44. package/dist/_chunks/booking-B62CMY5k.js +2695 -0
  45. package/dist/_chunks/booking-B62CMY5k.js.map +1 -0
  46. package/dist/_chunks/breadcrumb-agut0PwN.js +393 -0
  47. package/dist/_chunks/breadcrumb-agut0PwN.js.map +1 -0
  48. package/dist/_chunks/button-group-CvEnVzY7.js +119 -0
  49. package/dist/_chunks/button-group-CvEnVzY7.js.map +1 -0
  50. package/dist/_chunks/calculator-dialog-DuXMQSdm.js +40 -0
  51. package/dist/_chunks/calculator-dialog-DuXMQSdm.js.map +1 -0
  52. package/dist/_chunks/calendar-DeAlFPsF.js +1050 -0
  53. package/dist/_chunks/calendar-DeAlFPsF.js.map +1 -0
  54. package/dist/_chunks/calendar-clock-hbObjfGY.js +19 -0
  55. package/dist/_chunks/calendar-clock-hbObjfGY.js.map +1 -0
  56. package/dist/_chunks/calendar-days-BGWklvE-.js +23 -0
  57. package/dist/_chunks/calendar-days-BGWklvE-.js.map +1 -0
  58. package/dist/_chunks/care-plan-card-DhXbfGzE.js +256 -0
  59. package/dist/_chunks/care-plan-card-DhXbfGzE.js.map +1 -0
  60. package/dist/_chunks/care-plan-entry-card-D3YGD6rj.js +322 -0
  61. package/dist/_chunks/care-plan-entry-card-D3YGD6rj.js.map +1 -0
  62. package/dist/_chunks/care-plan-header-DtQxyfOb.js +198 -0
  63. package/dist/_chunks/care-plan-header-DtQxyfOb.js.map +1 -0
  64. package/dist/_chunks/carousel.agent-j7hWxJWr.js +1754 -0
  65. package/dist/_chunks/carousel.agent-j7hWxJWr.js.map +1 -0
  66. package/dist/_chunks/chat-container-BVCoN06N.js +234 -0
  67. package/dist/_chunks/chat-container-BVCoN06N.js.map +1 -0
  68. package/dist/_chunks/chat-input-Btq_uuMZ.js +368 -0
  69. package/dist/_chunks/chat-input-Btq_uuMZ.js.map +1 -0
  70. package/dist/_chunks/chat-message-DXjjM8z9.js +239 -0
  71. package/dist/_chunks/chat-message-DXjjM8z9.js.map +1 -0
  72. package/dist/_chunks/check-DrFSN__t.js +12 -0
  73. package/dist/_chunks/check-DrFSN__t.js.map +1 -0
  74. package/dist/_chunks/checkbox-group-CfqMv57d.js +213 -0
  75. package/dist/_chunks/checkbox-group-CfqMv57d.js.map +1 -0
  76. package/dist/_chunks/chevron-down-DWE7GSq9.js +12 -0
  77. package/dist/_chunks/chevron-down-DWE7GSq9.js.map +1 -0
  78. package/dist/_chunks/chevron-left-B8cOyH-V.js +12 -0
  79. package/dist/_chunks/chevron-left-B8cOyH-V.js.map +1 -0
  80. package/dist/_chunks/chevron-right-I9AeSxH2.js +12 -0
  81. package/dist/_chunks/chevron-right-I9AeSxH2.js.map +1 -0
  82. package/dist/_chunks/chevron-up-umRGgtJA.js +12 -0
  83. package/dist/_chunks/chevron-up-umRGgtJA.js.map +1 -0
  84. package/dist/_chunks/chevrons-right-DIHg7Xqi.js +26 -0
  85. package/dist/_chunks/chevrons-right-DIHg7Xqi.js.map +1 -0
  86. package/dist/_chunks/circle-alert-rGDZ73Wh.js +16 -0
  87. package/dist/_chunks/circle-alert-rGDZ73Wh.js.map +1 -0
  88. package/dist/_chunks/circle-check-BN6rz4NV.js +15 -0
  89. package/dist/_chunks/circle-check-BN6rz4NV.js.map +1 -0
  90. package/dist/_chunks/circle-j7oZoouK.js +12 -0
  91. package/dist/_chunks/circle-j7oZoouK.js.map +1 -0
  92. package/dist/_chunks/circle-x-W8Enq3i4.js +16 -0
  93. package/dist/_chunks/circle-x-W8Enq3i4.js.map +1 -0
  94. package/dist/_chunks/city-input-towzBenY.js +169 -0
  95. package/dist/_chunks/city-input-towzBenY.js.map +1 -0
  96. package/dist/_chunks/clinical-note-card-C7F_24IC.js +436 -0
  97. package/dist/_chunks/clinical-note-card-C7F_24IC.js.map +1 -0
  98. package/dist/_chunks/clipboard-check-BeAGxDVT.js +22 -0
  99. package/dist/_chunks/clipboard-check-BeAGxDVT.js.map +1 -0
  100. package/dist/_chunks/clock-Drd4Wtis.js +15 -0
  101. package/dist/_chunks/clock-Drd4Wtis.js.map +1 -0
  102. package/dist/_chunks/code-block-Cwi7e3HM.js +106 -0
  103. package/dist/_chunks/code-block-Cwi7e3HM.js.map +1 -0
  104. package/dist/_chunks/color-picker-D-tUwxxT.js +718 -0
  105. package/dist/_chunks/color-picker-D-tUwxxT.js.map +1 -0
  106. package/dist/_chunks/columns-2-8lq4-b8e.js +15 -0
  107. package/dist/_chunks/columns-2-8lq4-b8e.js.map +1 -0
  108. package/dist/_chunks/combobox-DiMLItyu.js +513 -0
  109. package/dist/_chunks/combobox-DiMLItyu.js.map +1 -0
  110. package/dist/_chunks/command-palette-DQl_SNEv.js +473 -0
  111. package/dist/_chunks/command-palette-DQl_SNEv.js.map +1 -0
  112. package/dist/_chunks/connection-status-0HajXMXM.js +108 -0
  113. package/dist/_chunks/connection-status-0HajXMXM.js.map +1 -0
  114. package/dist/_chunks/contact-card-0hnFJwrz.js +121 -0
  115. package/dist/_chunks/contact-card-0hnFJwrz.js.map +1 -0
  116. package/dist/_chunks/contact-profile-card-IggiUVpN.js +333 -0
  117. package/dist/_chunks/contact-profile-card-IggiUVpN.js.map +1 -0
  118. package/dist/_chunks/control-room-rail-DaGcsdZ6.js +333 -0
  119. package/dist/_chunks/control-room-rail-DaGcsdZ6.js.map +1 -0
  120. package/dist/_chunks/copy-field-PAp0-Wr5.js +268 -0
  121. package/dist/_chunks/copy-field-PAp0-Wr5.js.map +1 -0
  122. package/dist/_chunks/copy-vRpqqHtY.js +15 -0
  123. package/dist/_chunks/copy-vRpqqHtY.js.map +1 -0
  124. package/dist/_chunks/country-select-DYHDLEjG.js +709 -0
  125. package/dist/_chunks/country-select-DYHDLEjG.js.map +1 -0
  126. package/dist/_chunks/createLucideIcon-DhHxpK9K.js +117 -0
  127. package/dist/_chunks/createLucideIcon-DhHxpK9K.js.map +1 -0
  128. package/dist/_chunks/cycle-calculator-BNILyVas.js +252 -0
  129. package/dist/_chunks/cycle-calculator-BNILyVas.js.map +1 -0
  130. package/dist/_chunks/date-picker-CVkD_lOi.js +1845 -0
  131. package/dist/_chunks/date-picker-CVkD_lOi.js.map +1 -0
  132. package/dist/_chunks/date-picker-variants-DLg-ZrIo.js +3224 -0
  133. package/dist/_chunks/date-picker-variants-DLg-ZrIo.js.map +1 -0
  134. package/dist/_chunks/date-range-picker-Dw12DgV8.js +324 -0
  135. package/dist/_chunks/date-range-picker-Dw12DgV8.js.map +1 -0
  136. package/dist/_chunks/date-time-picker-Cd_OJtOy.js +336 -0
  137. package/dist/_chunks/date-time-picker-Cd_OJtOy.js.map +1 -0
  138. package/dist/_chunks/de-DFLsUxeV.js +477 -0
  139. package/dist/_chunks/de-DFLsUxeV.js.map +1 -0
  140. package/dist/_chunks/dependent-selector-DyFpdzZV.js +338 -0
  141. package/dist/_chunks/dependent-selector-DyFpdzZV.js.map +1 -0
  142. package/dist/_chunks/description-list-CmBVxIF5.js +319 -0
  143. package/dist/_chunks/description-list-CmBVxIF5.js.map +1 -0
  144. package/dist/_chunks/dialog-UbKJCi1X.js +230 -0
  145. package/dist/_chunks/dialog-UbKJCi1X.js.map +1 -0
  146. package/dist/_chunks/document-scanner-B23j4w7X.js +711 -0
  147. package/dist/_chunks/document-scanner-B23j4w7X.js.map +1 -0
  148. package/dist/_chunks/download-CfYKJO_j.js +16 -0
  149. package/dist/_chunks/download-CfYKJO_j.js.map +1 -0
  150. package/dist/_chunks/dropdown-menu-DU-Hrf33.js +355 -0
  151. package/dist/_chunks/dropdown-menu-DU-Hrf33.js.map +1 -0
  152. package/dist/_chunks/due-date-calculator-CmdAl_JO.js +256 -0
  153. package/dist/_chunks/due-date-calculator-CmdAl_JO.js.map +1 -0
  154. package/dist/_chunks/editable-currency-cell-renderer-z9fJFw6Z.js +410 -0
  155. package/dist/_chunks/editable-currency-cell-renderer-z9fJFw6Z.js.map +1 -0
  156. package/dist/_chunks/editor-overlay-BIOzr8v7.js +88 -0
  157. package/dist/_chunks/editor-overlay-BIOzr8v7.js.map +1 -0
  158. package/dist/_chunks/el-OVjBKytp.js +373 -0
  159. package/dist/_chunks/el-OVjBKytp.js.map +1 -0
  160. package/dist/_chunks/ellipsis-dRo9ouSU.js +16 -0
  161. package/dist/_chunks/ellipsis-dRo9ouSU.js.map +1 -0
  162. package/dist/_chunks/email-input-Dpe63k0K.js +397 -0
  163. package/dist/_chunks/email-input-Dpe63k0K.js.map +1 -0
  164. package/dist/_chunks/entity-summary-DpGziDv5.js +277 -0
  165. package/dist/_chunks/entity-summary-DpGziDv5.js.map +1 -0
  166. package/dist/_chunks/es-DKDNrHXG.js +373 -0
  167. package/dist/_chunks/es-DKDNrHXG.js.map +1 -0
  168. package/dist/_chunks/external-link-CY6zAXXU.js +16 -0
  169. package/dist/_chunks/external-link-CY6zAXXU.js.map +1 -0
  170. package/dist/_chunks/eye-BjhN2nYf.js +21 -0
  171. package/dist/_chunks/eye-BjhN2nYf.js.map +1 -0
  172. package/dist/_chunks/eye-off-C_4xkbRP.js +29 -0
  173. package/dist/_chunks/eye-off-C_4xkbRP.js.map +1 -0
  174. package/dist/_chunks/face-scheme-DOZO3M_c.js +1450 -0
  175. package/dist/_chunks/face-scheme-DOZO3M_c.js.map +1 -0
  176. package/dist/_chunks/face_detection_yunet_2023mar-BnsRs4bD.js +5 -0
  177. package/dist/_chunks/face_detection_yunet_2023mar-BnsRs4bD.js.map +1 -0
  178. package/dist/_chunks/fetal-weight-CVAH8sJ3.js +122 -0
  179. package/dist/_chunks/fetal-weight-CVAH8sJ3.js.map +1 -0
  180. package/dist/_chunks/field-array-CDzc3hTM.js +146 -0
  181. package/dist/_chunks/field-array-CDzc3hTM.js.map +1 -0
  182. package/dist/_chunks/field-value-Dj3i52H2.js +415 -0
  183. package/dist/_chunks/field-value-Dj3i52H2.js.map +1 -0
  184. package/dist/_chunks/file-spreadsheet-DmwyfV4O.js +25 -0
  185. package/dist/_chunks/file-spreadsheet-DmwyfV4O.js.map +1 -0
  186. package/dist/_chunks/file-text-5yv6r2ls.js +24 -0
  187. package/dist/_chunks/file-text-5yv6r2ls.js.map +1 -0
  188. package/dist/_chunks/file-upload-Kw1rdvFw.js +819 -0
  189. package/dist/_chunks/file-upload-Kw1rdvFw.js.map +1 -0
  190. package/dist/_chunks/finished-terminal-Di4gtZ50.js +122 -0
  191. package/dist/_chunks/finished-terminal-Di4gtZ50.js.map +1 -0
  192. package/dist/_chunks/fiscal-code-input-DKNXFXs3.js +553 -0
  193. package/dist/_chunks/fiscal-code-input-DKNXFXs3.js.map +1 -0
  194. package/dist/_chunks/form-field-M5UpX65Z.js +123 -0
  195. package/dist/_chunks/form-field-M5UpX65Z.js.map +1 -0
  196. package/dist/_chunks/fr-BfMvQh-v.js +338 -0
  197. package/dist/_chunks/fr-BfMvQh-v.js.map +1 -0
  198. package/dist/_chunks/freemium-paywall-DFoeedwh.js +275 -0
  199. package/dist/_chunks/freemium-paywall-DFoeedwh.js.map +1 -0
  200. package/dist/_chunks/gestational-age-calculator-BwCBPAGX.js +311 -0
  201. package/dist/_chunks/gestational-age-calculator-BwCBPAGX.js.map +1 -0
  202. package/dist/_chunks/globe-sHBW1JN5.js +16 -0
  203. package/dist/_chunks/globe-sHBW1JN5.js.map +1 -0
  204. package/dist/_chunks/grip-vertical-onSb1JXO.js +19 -0
  205. package/dist/_chunks/grip-vertical-onSb1JXO.js.map +1 -0
  206. package/dist/_chunks/hash-CSQ9SChR.js +17 -0
  207. package/dist/_chunks/hash-CSQ9SChR.js.map +1 -0
  208. package/dist/_chunks/hcg-doubling-CSsWxEJc.js +170 -0
  209. package/dist/_chunks/hcg-doubling-CSsWxEJc.js.map +1 -0
  210. package/dist/_chunks/header-DaXWDw0M.js +297 -0
  211. package/dist/_chunks/header-DaXWDw0M.js.map +1 -0
  212. package/dist/_chunks/header-settings-B0G_u-wV.js +284 -0
  213. package/dist/_chunks/header-settings-B0G_u-wV.js.map +1 -0
  214. package/dist/_chunks/heart--qCA4ffe.js +20 -0
  215. package/dist/_chunks/heart--qCA4ffe.js.map +1 -0
  216. package/dist/_chunks/heart-pulse-BCppJyN2.js +21 -0
  217. package/dist/_chunks/heart-pulse-BCppJyN2.js.map +1 -0
  218. package/dist/_chunks/hi-C0GEMwlD.js +433 -0
  219. package/dist/_chunks/hi-C0GEMwlD.js.map +1 -0
  220. package/dist/_chunks/iban-input-DXIA8Ln_.js +436 -0
  221. package/dist/_chunks/iban-input-DXIA8Ln_.js.map +1 -0
  222. package/dist/_chunks/icon-picker-Di6uYDG-.js +272 -0
  223. package/dist/_chunks/icon-picker-Di6uYDG-.js.map +1 -0
  224. package/dist/_chunks/image-B_5MNK0x.js +16 -0
  225. package/dist/_chunks/image-B_5MNK0x.js.map +1 -0
  226. package/dist/_chunks/image-cropper-CdmWFrMC.js +367 -0
  227. package/dist/_chunks/image-cropper-CdmWFrMC.js.map +1 -0
  228. package/dist/_chunks/info-CGn22peZ.js +16 -0
  229. package/dist/_chunks/info-CGn22peZ.js.map +1 -0
  230. package/dist/_chunks/insert-result-C7xSDb8q.js +742 -0
  231. package/dist/_chunks/insert-result-C7xSDb8q.js.map +1 -0
  232. package/dist/_chunks/isSameWeek-HddDAyJG.js +14 -0
  233. package/dist/_chunks/isSameWeek-HddDAyJG.js.map +1 -0
  234. package/dist/_chunks/it-5f4hiT2e.js +401 -0
  235. package/dist/_chunks/it-5f4hiT2e.js.map +1 -0
  236. package/dist/_chunks/ja-U0_2inl_.js +366 -0
  237. package/dist/_chunks/ja-U0_2inl_.js.map +1 -0
  238. package/dist/_chunks/key-value-pair-Byyyc_9J.js +144 -0
  239. package/dist/_chunks/key-value-pair-Byyyc_9J.js.map +1 -0
  240. package/dist/_chunks/languages-CGLX6Qpe.js +19 -0
  241. package/dist/_chunks/languages-CGLX6Qpe.js.map +1 -0
  242. package/dist/_chunks/layers-DcAENmsZ.js +34 -0
  243. package/dist/_chunks/layers-DcAENmsZ.js.map +1 -0
  244. package/dist/_chunks/link-CPb_pZPr.js +129 -0
  245. package/dist/_chunks/link-CPb_pZPr.js.map +1 -0
  246. package/dist/_chunks/link-cell-renderer-BCppbMec.js +2185 -0
  247. package/dist/_chunks/link-cell-renderer-BCppbMec.js.map +1 -0
  248. package/dist/_chunks/locale-picker-DzF7Q5Y8.js +739 -0
  249. package/dist/_chunks/locale-picker-DzF7Q5Y8.js.map +1 -0
  250. package/dist/_chunks/lock-ClAFG1gy.js +15 -0
  251. package/dist/_chunks/lock-ClAFG1gy.js.map +1 -0
  252. package/dist/_chunks/log-out-oDS6zO5d.js +16 -0
  253. package/dist/_chunks/log-out-oDS6zO5d.js.map +1 -0
  254. package/dist/_chunks/mail-BqXVF2zH.js +15 -0
  255. package/dist/_chunks/mail-BqXVF2zH.js.map +1 -0
  256. package/dist/_chunks/map-pin-BaY37-Km.js +21 -0
  257. package/dist/_chunks/map-pin-BaY37-Km.js.map +1 -0
  258. package/dist/_chunks/map-view-ByPvWG_9.js +378 -0
  259. package/dist/_chunks/map-view-ByPvWG_9.js.map +1 -0
  260. package/dist/_chunks/marketplace-app-shell-BCYiOvKZ.js +513 -0
  261. package/dist/_chunks/marketplace-app-shell-BCYiOvKZ.js.map +1 -0
  262. package/dist/_chunks/maximize-2-BYd2Kti7.js +17 -0
  263. package/dist/_chunks/maximize-2-BYd2Kti7.js.map +1 -0
  264. package/dist/_chunks/menu-Op71AWIC.js +16 -0
  265. package/dist/_chunks/menu-Op71AWIC.js.map +1 -0
  266. package/dist/_chunks/message-card-BZnnffyB.js +319 -0
  267. package/dist/_chunks/message-card-BZnnffyB.js.map +1 -0
  268. package/dist/_chunks/message-circle-Bepl9JT5.js +20 -0
  269. package/dist/_chunks/message-circle-Bepl9JT5.js.map +1 -0
  270. package/dist/_chunks/message-tray-cUHOCdU0.js +494 -0
  271. package/dist/_chunks/message-tray-cUHOCdU0.js.map +1 -0
  272. package/dist/_chunks/mic-CUklMZGF.js +16 -0
  273. package/dist/_chunks/mic-CUklMZGF.js.map +1 -0
  274. package/dist/_chunks/monitor-xXSrufmP.js +16 -0
  275. package/dist/_chunks/monitor-xXSrufmP.js.map +1 -0
  276. package/dist/_chunks/multi-select-D5QLBJM1.js +614 -0
  277. package/dist/_chunks/multi-select-D5QLBJM1.js.map +1 -0
  278. package/dist/_chunks/muscle-scheme-B9MIkuj0.js +1714 -0
  279. package/dist/_chunks/muscle-scheme-B9MIkuj0.js.map +1 -0
  280. package/dist/_chunks/nav-grid-gRudLsPX.js +169 -0
  281. package/dist/_chunks/nav-grid-gRudLsPX.js.map +1 -0
  282. package/dist/_chunks/navigation-menu-D3VndouD.js +310 -0
  283. package/dist/_chunks/navigation-menu-D3VndouD.js.map +1 -0
  284. package/dist/_chunks/nl-CDVnnx1U.js +326 -0
  285. package/dist/_chunks/nl-CDVnnx1U.js.map +1 -0
  286. package/dist/_chunks/notes-panel-CMyjUXD4.js +324 -0
  287. package/dist/_chunks/notes-panel-CMyjUXD4.js.map +1 -0
  288. package/dist/_chunks/notification-card-BHJ07FkH.js +290 -0
  289. package/dist/_chunks/notification-card-BHJ07FkH.js.map +1 -0
  290. package/dist/_chunks/notification-tray-Dzm1c3Wy.js +499 -0
  291. package/dist/_chunks/notification-tray-Dzm1c3Wy.js.map +1 -0
  292. package/dist/_chunks/number-input-DjWzmlEY.js +350 -0
  293. package/dist/_chunks/number-input-DjWzmlEY.js.map +1 -0
  294. package/dist/_chunks/operator-hero-DVy0RGoD.js +202 -0
  295. package/dist/_chunks/operator-hero-DVy0RGoD.js.map +1 -0
  296. package/dist/_chunks/optical-prescription-Bmlbuopi.js +653 -0
  297. package/dist/_chunks/optical-prescription-Bmlbuopi.js.map +1 -0
  298. package/dist/_chunks/pagination-EkD5SiCK.js +486 -0
  299. package/dist/_chunks/pagination-EkD5SiCK.js.map +1 -0
  300. package/dist/_chunks/panel-header-D313n_9-.js +105 -0
  301. package/dist/_chunks/panel-header-D313n_9-.js.map +1 -0
  302. package/dist/_chunks/patient-details-pU_E5xM2.js +778 -0
  303. package/dist/_chunks/patient-details-pU_E5xM2.js.map +1 -0
  304. package/dist/_chunks/patient-search-X9SUZGpy.js +1167 -0
  305. package/dist/_chunks/patient-search-X9SUZGpy.js.map +1 -0
  306. package/dist/_chunks/patient-shell-oiIRqEAl.js +162 -0
  307. package/dist/_chunks/patient-shell-oiIRqEAl.js.map +1 -0
  308. package/dist/_chunks/patient-summary-card--t3BjTdU.js +452 -0
  309. package/dist/_chunks/patient-summary-card--t3BjTdU.js.map +1 -0
  310. package/dist/_chunks/patient-table-BgWgNIMf.js +1110 -0
  311. package/dist/_chunks/patient-table-BgWgNIMf.js.map +1 -0
  312. package/dist/_chunks/payment-form-DL9xk9BA.js +690 -0
  313. package/dist/_chunks/payment-form-DL9xk9BA.js.map +1 -0
  314. package/dist/_chunks/payment-request-card-2ts7ITxd.js +467 -0
  315. package/dist/_chunks/payment-request-card-2ts7ITxd.js.map +1 -0
  316. package/dist/_chunks/pdf-viewer-DF3VMaPo.js +1005 -0
  317. package/dist/_chunks/pdf-viewer-DF3VMaPo.js.map +1 -0
  318. package/dist/_chunks/pencil-B1sKKyuT.js +21 -0
  319. package/dist/_chunks/pencil-B1sKKyuT.js.map +1 -0
  320. package/dist/_chunks/periodontal-chart-card-6c6Lt4ws.js +455 -0
  321. package/dist/_chunks/periodontal-chart-card-6c6Lt4ws.js.map +1 -0
  322. package/dist/_chunks/permission-matrix-BIJrGEmz.js +174 -0
  323. package/dist/_chunks/permission-matrix-BIJrGEmz.js.map +1 -0
  324. package/dist/_chunks/phone-FceYcIFQ.js +20 -0
  325. package/dist/_chunks/phone-FceYcIFQ.js.map +1 -0
  326. package/dist/_chunks/phone-input-dtnrvnZf.js +580 -0
  327. package/dist/_chunks/phone-input-dtnrvnZf.js.map +1 -0
  328. package/dist/_chunks/pl-BWNumNrg.js +514 -0
  329. package/dist/_chunks/pl-BWNumNrg.js.map +1 -0
  330. package/dist/_chunks/plus-DzMQ_c6b.js +15 -0
  331. package/dist/_chunks/plus-DzMQ_c6b.js.map +1 -0
  332. package/dist/_chunks/popover-uJ6BvEU3.js +302 -0
  333. package/dist/_chunks/popover-uJ6BvEU3.js.map +1 -0
  334. package/dist/_chunks/position-grid-CcvqHaKN.js +169 -0
  335. package/dist/_chunks/position-grid-CcvqHaKN.js.map +1 -0
  336. package/dist/_chunks/postal-code-input-BznBxVxf.js +192 -0
  337. package/dist/_chunks/postal-code-input-BznBxVxf.js.map +1 -0
  338. package/dist/_chunks/practice-results-CSEHTH2V.js +1609 -0
  339. package/dist/_chunks/practice-results-CSEHTH2V.js.map +1 -0
  340. package/dist/_chunks/pregnancy-dating-CxVAA6_4.js +421 -0
  341. package/dist/_chunks/pregnancy-dating-CxVAA6_4.js.map +1 -0
  342. package/dist/_chunks/pregnancy-weight-gain-C7zyrwow.js +322 -0
  343. package/dist/_chunks/pregnancy-weight-gain-C7zyrwow.js.map +1 -0
  344. package/dist/_chunks/printer-rkK0T1gi.js +22 -0
  345. package/dist/_chunks/printer-rkK0T1gi.js.map +1 -0
  346. package/dist/_chunks/privacy-lock-DrRmK8C7.js +197 -0
  347. package/dist/_chunks/privacy-lock-DrRmK8C7.js.map +1 -0
  348. package/dist/_chunks/product-hub-panel-CaZqttvm.js +678 -0
  349. package/dist/_chunks/product-hub-panel-CaZqttvm.js.map +1 -0
  350. package/dist/_chunks/province-select-BDywtmL-.js +261 -0
  351. package/dist/_chunks/province-select-BDywtmL-.js.map +1 -0
  352. package/dist/_chunks/pt-zqdQuryr.js +370 -0
  353. package/dist/_chunks/pt-zqdQuryr.js.map +1 -0
  354. package/dist/_chunks/public-footer.agent-BKkK3T3V.js +596 -0
  355. package/dist/_chunks/public-footer.agent-BKkK3T3V.js.map +1 -0
  356. package/dist/_chunks/public-header.agent-C-opZaOw.js +597 -0
  357. package/dist/_chunks/public-header.agent-C-opZaOw.js.map +1 -0
  358. package/dist/_chunks/radio-group-CI-6SmSw.js +167 -0
  359. package/dist/_chunks/radio-group-CI-6SmSw.js.map +1 -0
  360. package/dist/_chunks/radiograph-panel.agent-D1x33moc.js +553 -0
  361. package/dist/_chunks/radiograph-panel.agent-D1x33moc.js.map +1 -0
  362. package/dist/_chunks/rating-BYbUowdK.js +171 -0
  363. package/dist/_chunks/rating-BYbUowdK.js.map +1 -0
  364. package/dist/_chunks/refresh-cw-DnI0cLFC.js +17 -0
  365. package/dist/_chunks/refresh-cw-DnI0cLFC.js.map +1 -0
  366. package/dist/_chunks/reviews-panel-liUj6OPX.js +559 -0
  367. package/dist/_chunks/reviews-panel-liUj6OPX.js.map +1 -0
  368. package/dist/_chunks/rich-text-editor-DUgznqOf.js +2621 -0
  369. package/dist/_chunks/rich-text-editor-DUgznqOf.js.map +1 -0
  370. package/dist/_chunks/ro-CornQr64.js +361 -0
  371. package/dist/_chunks/ro-CornQr64.js.map +1 -0
  372. package/dist/_chunks/rotate-ccw-BBQnIVTr.js +15 -0
  373. package/dist/_chunks/rotate-ccw-BBQnIVTr.js.map +1 -0
  374. package/dist/_chunks/ru-CKAXNYVD.js +561 -0
  375. package/dist/_chunks/ru-CKAXNYVD.js.map +1 -0
  376. package/dist/_chunks/scan-line-CNseIHQ0.js +18 -0
  377. package/dist/_chunks/scan-line-CNseIHQ0.js.map +1 -0
  378. package/dist/_chunks/scroll-area-BZOvUhwQ.js +169 -0
  379. package/dist/_chunks/scroll-area-BZOvUhwQ.js.map +1 -0
  380. package/dist/_chunks/search-QbWPlY5f.js +15 -0
  381. package/dist/_chunks/search-QbWPlY5f.js.map +1 -0
  382. package/dist/_chunks/search-bar-CJj6sI9m.js +612 -0
  383. package/dist/_chunks/search-bar-CJj6sI9m.js.map +1 -0
  384. package/dist/_chunks/search-input-B7GmlPIE.js +237 -0
  385. package/dist/_chunks/search-input-B7GmlPIE.js.map +1 -0
  386. package/dist/_chunks/select-BmCbJMJS.js +442 -0
  387. package/dist/_chunks/select-BmCbJMJS.js.map +1 -0
  388. package/dist/_chunks/send-C5kDJ-Mz.js +21 -0
  389. package/dist/_chunks/send-C5kDJ-Mz.js.map +1 -0
  390. package/dist/_chunks/session-countdown-qr8EO5QY.js +214 -0
  391. package/dist/_chunks/session-countdown-qr8EO5QY.js.map +1 -0
  392. package/dist/_chunks/settings-d25ju_6L.js +21 -0
  393. package/dist/_chunks/settings-d25ju_6L.js.map +1 -0
  394. package/dist/_chunks/sheet-B_X54aZo.js +296 -0
  395. package/dist/_chunks/sheet-B_X54aZo.js.map +1 -0
  396. package/dist/_chunks/shield-check-DCJALLVh.js +21 -0
  397. package/dist/_chunks/shield-check-DCJALLVh.js.map +1 -0
  398. package/dist/_chunks/sidebar-B0OBmJrC.js +1311 -0
  399. package/dist/_chunks/sidebar-B0OBmJrC.js.map +1 -0
  400. package/dist/_chunks/sign-document-nK03S73h.js +370 -0
  401. package/dist/_chunks/sign-document-nK03S73h.js.map +1 -0
  402. package/dist/_chunks/signature-field-jgwYgUhO.js +197 -0
  403. package/dist/_chunks/signature-field-jgwYgUhO.js.map +1 -0
  404. package/dist/_chunks/smart-date-CsPlilQA.js +114 -0
  405. package/dist/_chunks/smart-date-CsPlilQA.js.map +1 -0
  406. package/dist/_chunks/sq-CIIvqXZv.js +355 -0
  407. package/dist/_chunks/sq-CIIvqXZv.js.map +1 -0
  408. package/dist/_chunks/square-DASBRZ0U.js +14 -0
  409. package/dist/_chunks/square-DASBRZ0U.js.map +1 -0
  410. package/dist/_chunks/square-check-big-dj0o8yA3.js +18 -0
  411. package/dist/_chunks/square-check-big-dj0o8yA3.js.map +1 -0
  412. package/dist/_chunks/star-Bf9L2Uot.js +20 -0
  413. package/dist/_chunks/star-Bf9L2Uot.js.map +1 -0
  414. package/dist/_chunks/stepper-accordion-BeVMZPuG.js +247 -0
  415. package/dist/_chunks/stepper-accordion-BeVMZPuG.js.map +1 -0
  416. package/dist/_chunks/stethoscope-sZXGC43m.js +18 -0
  417. package/dist/_chunks/stethoscope-sZXGC43m.js.map +1 -0
  418. package/dist/_chunks/streaming-text-Cedc05ya.js +131 -0
  419. package/dist/_chunks/streaming-text-Cedc05ya.js.map +1 -0
  420. package/dist/_chunks/subDays-DGSOp9d9.js +8 -0
  421. package/dist/_chunks/subDays-DGSOp9d9.js.map +1 -0
  422. package/dist/_chunks/sun-Bj9Mr553.js +38 -0
  423. package/dist/_chunks/sun-Bj9Mr553.js.map +1 -0
  424. package/dist/_chunks/sv-Kpk1pzjz.js +376 -0
  425. package/dist/_chunks/sv-Kpk1pzjz.js.map +1 -0
  426. package/dist/_chunks/tab-bar-Axhk6xzx.js +262 -0
  427. package/dist/_chunks/tab-bar-Axhk6xzx.js.map +1 -0
  428. package/dist/_chunks/tabs-DVQ941Sj.js +408 -0
  429. package/dist/_chunks/tabs-DVQ941Sj.js.map +1 -0
  430. package/dist/_chunks/tag-3wgkwwDB.js +258 -0
  431. package/dist/_chunks/tag-3wgkwwDB.js.map +1 -0
  432. package/dist/_chunks/task-card-BUgK6yZT.js +189 -0
  433. package/dist/_chunks/task-card-BUgK6yZT.js.map +1 -0
  434. package/dist/_chunks/task-tray-DP5A3Qnc.js +251 -0
  435. package/dist/_chunks/task-tray-DP5A3Qnc.js.map +1 -0
  436. package/dist/_chunks/tasks-panel-BuxaYtEF.js +757 -0
  437. package/dist/_chunks/tasks-panel-BuxaYtEF.js.map +1 -0
  438. package/dist/_chunks/text-input-CUvCb6ST.js +283 -0
  439. package/dist/_chunks/text-input-CUvCb6ST.js.map +1 -0
  440. package/dist/_chunks/theme-toggle-dtdy5EaL.js +367 -0
  441. package/dist/_chunks/theme-toggle-dtdy5EaL.js.map +1 -0
  442. package/dist/_chunks/timeline-r-8IUoBS.js +294 -0
  443. package/dist/_chunks/timeline-r-8IUoBS.js.map +1 -0
  444. package/dist/_chunks/toast.agent-BSxl057x.js +1005 -0
  445. package/dist/_chunks/toast.agent-BSxl057x.js.map +1 -0
  446. package/dist/_chunks/token-insert-menu-Pok4nExI.js +147 -0
  447. package/dist/_chunks/token-insert-menu-Pok4nExI.js.map +1 -0
  448. package/dist/_chunks/tool-rail-BZx0-yIr.js +524 -0
  449. package/dist/_chunks/tool-rail-BZx0-yIr.js.map +1 -0
  450. package/dist/_chunks/tooth-scheme-D_rso4uu.js +2133 -0
  451. package/dist/_chunks/tooth-scheme-D_rso4uu.js.map +1 -0
  452. package/dist/_chunks/tr-DHaeLFxG.js +378 -0
  453. package/dist/_chunks/tr-DHaeLFxG.js.map +1 -0
  454. package/dist/_chunks/transaction-chip-B6iWoVmU.js +225 -0
  455. package/dist/_chunks/transaction-chip-B6iWoVmU.js.map +1 -0
  456. package/dist/_chunks/transcript-panel-BGkEhvHO.js +374 -0
  457. package/dist/_chunks/transcript-panel-BGkEhvHO.js.map +1 -0
  458. package/dist/_chunks/trash-2-uumy3fy1.js +18 -0
  459. package/dist/_chunks/trash-2-uumy3fy1.js.map +1 -0
  460. package/dist/_chunks/triangle-alert-CBnO6nq_.js +22 -0
  461. package/dist/_chunks/triangle-alert-CBnO6nq_.js.map +1 -0
  462. package/dist/_chunks/unit-converter-fEqluT8b.js +337 -0
  463. package/dist/_chunks/unit-converter-fEqluT8b.js.map +1 -0
  464. package/dist/_chunks/use-edge-resize-ZnGG7gyO.js.map +1 -1
  465. package/dist/_chunks/use-password-requirements-Bwtqx1qN.js +453 -0
  466. package/dist/_chunks/use-password-requirements-Bwtqx1qN.js.map +1 -0
  467. package/dist/_chunks/user-B12p7bVF.js +15 -0
  468. package/dist/_chunks/user-B12p7bVF.js.map +1 -0
  469. package/dist/_chunks/user-cog-BTn98Arm.js +24 -0
  470. package/dist/_chunks/user-cog-BTn98Arm.js.map +1 -0
  471. package/dist/_chunks/users-BjS_Gg1E.js +17 -0
  472. package/dist/_chunks/users-BjS_Gg1E.js.map +1 -0
  473. package/dist/_chunks/video-BheNGvsu.js +21 -0
  474. package/dist/_chunks/video-BheNGvsu.js.map +1 -0
  475. package/dist/_chunks/warning-stack-BaMI7-n7.js +268 -0
  476. package/dist/_chunks/warning-stack-BaMI7-n7.js.map +1 -0
  477. package/dist/_chunks/workflow-map-qWsgCldq.js +1356 -0
  478. package/dist/_chunks/workflow-map-qWsgCldq.js.map +1 -0
  479. package/dist/_chunks/x-B5YnXwCz.js +15 -0
  480. package/dist/_chunks/x-B5YnXwCz.js.map +1 -0
  481. package/dist/_chunks/zh-CN-BncsTBwM.js +388 -0
  482. package/dist/_chunks/zh-CN-BncsTBwM.js.map +1 -0
  483. package/dist/_chunks/zoom-out-Dnif4kJx.js +29 -0
  484. package/dist/_chunks/zoom-out-Dnif4kJx.js.map +1 -0
  485. package/dist/agent-catalog.json +6621 -3629
  486. package/dist/agent-i18n/en.json +313 -23
  487. package/dist/components/_shared/option.d.ts +2 -0
  488. package/dist/components/_shared/option.d.ts.map +1 -1
  489. package/dist/components/_shared/patient-fields.d.ts +1 -1
  490. package/dist/components/_shared/patient-fields.d.ts.map +1 -1
  491. package/dist/components/accordion/index.js +1 -1
  492. package/dist/components/address-autocomplete/index.js +1 -1
  493. package/dist/components/address-fields/address-fields.agent.d.ts +9 -0
  494. package/dist/components/address-fields/address-fields.agent.d.ts.map +1 -0
  495. package/dist/components/address-fields/address-fields.d.ts +29 -0
  496. package/dist/components/address-fields/address-fields.d.ts.map +1 -0
  497. package/dist/components/address-fields/index.d.ts +5 -0
  498. package/dist/components/address-fields/index.d.ts.map +1 -0
  499. package/dist/components/address-fields/index.js +6 -0
  500. package/dist/components/agenda-card/index.js +1 -1
  501. package/dist/components/agenda-tray/index.js +1 -1
  502. package/dist/components/ai-consent-banner/index.js +1 -1
  503. package/dist/components/ai-prompt-input/index.js +1 -1
  504. package/dist/components/alert/index.js +1 -1
  505. package/dist/components/anamnesis-card/index.js +1 -1
  506. package/dist/components/annotation-marker/annotation-marker.d.ts +1 -1
  507. package/dist/components/app-frame/app-frame.d.ts +2 -2
  508. package/dist/components/app-frame/app-frame.d.ts.map +1 -1
  509. package/dist/components/app-frame/index.js +1 -1
  510. package/dist/components/appointment-card/appointment-card.d.ts.map +1 -1
  511. package/dist/components/appointment-card/index.js +2 -2
  512. package/dist/components/appointment-timeline/appointment-timeline.d.ts.map +1 -1
  513. package/dist/components/appointment-timeline/index.js +1 -1
  514. package/dist/components/audio-recorder/index.js +1 -1
  515. package/dist/components/autocomplete/autocomplete.d.ts +10 -0
  516. package/dist/components/autocomplete/autocomplete.d.ts.map +1 -1
  517. package/dist/components/autocomplete/index.js +1 -1
  518. package/dist/components/bishop-score/index.js +1 -1
  519. package/dist/components/bmi-calculator/index.js +1 -1
  520. package/dist/components/booking/index.js +1 -1
  521. package/dist/components/breadcrumb/index.js +1 -1
  522. package/dist/components/button-group/button-group.d.ts.map +1 -1
  523. package/dist/components/button-group/index.js +1 -1
  524. package/dist/components/calculator-dialog/index.js +1 -1
  525. package/dist/components/calendar/index.js +1 -1
  526. package/dist/components/care-plan-card/index.js +1 -1
  527. package/dist/components/care-plan-entry-card/index.js +1 -1
  528. package/dist/components/care-plan-header/care-plan-header.d.ts +16 -5
  529. package/dist/components/care-plan-header/care-plan-header.d.ts.map +1 -1
  530. package/dist/components/care-plan-header/index.js +1 -1
  531. package/dist/components/carousel/index.js +1 -1
  532. package/dist/components/chat-container/index.js +1 -1
  533. package/dist/components/chat-input/index.js +1 -1
  534. package/dist/components/chat-message/chat-message.d.ts +1 -1
  535. package/dist/components/chat-message/chat-message.d.ts.map +1 -1
  536. package/dist/components/chat-message/index.js +1 -1
  537. package/dist/components/checkbox-group/index.js +1 -1
  538. package/dist/components/city-input/city-input.agent.d.ts +8 -0
  539. package/dist/components/city-input/city-input.agent.d.ts.map +1 -0
  540. package/dist/components/city-input/city-input.d.ts +57 -0
  541. package/dist/components/city-input/city-input.d.ts.map +1 -0
  542. package/dist/components/city-input/index.d.ts +5 -0
  543. package/dist/components/city-input/index.d.ts.map +1 -0
  544. package/dist/components/city-input/index.js +6 -0
  545. package/dist/components/clinical-note-card/index.js +1 -1
  546. package/dist/components/color-picker/index.js +1 -1
  547. package/dist/components/combobox/combobox.d.ts +17 -0
  548. package/dist/components/combobox/combobox.d.ts.map +1 -1
  549. package/dist/components/combobox/index.js +1 -1
  550. package/dist/components/command-palette/index.js +1 -1
  551. package/dist/components/connection-status/connection-status.agent.d.ts +4 -0
  552. package/dist/components/connection-status/connection-status.agent.d.ts.map +1 -0
  553. package/dist/components/connection-status/connection-status.d.ts +36 -0
  554. package/dist/components/connection-status/connection-status.d.ts.map +1 -0
  555. package/dist/components/connection-status/index.d.ts +4 -0
  556. package/dist/components/connection-status/index.d.ts.map +1 -0
  557. package/dist/components/connection-status/index.js +6 -0
  558. package/dist/components/connection-status/index.js.map +1 -0
  559. package/dist/components/contact-card/index.js +1 -1
  560. package/dist/components/contact-profile-card/index.js +1 -1
  561. package/dist/components/control-room-rail/control-room-context.d.ts +5 -5
  562. package/dist/components/control-room-rail/control-room-context.d.ts.map +1 -1
  563. package/dist/components/control-room-rail/control-room-rail.agent.d.ts +4 -0
  564. package/dist/components/control-room-rail/control-room-rail.agent.d.ts.map +1 -0
  565. package/dist/components/control-room-rail/control-room-rail.d.ts +5 -5
  566. package/dist/components/control-room-rail/control-room-rail.d.ts.map +1 -1
  567. package/dist/components/control-room-rail/index.d.ts +1 -0
  568. package/dist/components/control-room-rail/index.d.ts.map +1 -1
  569. package/dist/components/control-room-rail/index.js +4 -3
  570. package/dist/components/copy-field/index.js +1 -1
  571. package/dist/components/counter/counter.d.ts +1 -1
  572. package/dist/components/country-select/country-select.agent.d.ts +8 -0
  573. package/dist/components/country-select/country-select.agent.d.ts.map +1 -0
  574. package/dist/components/country-select/country-select.d.ts +51 -0
  575. package/dist/components/country-select/country-select.d.ts.map +1 -0
  576. package/dist/components/country-select/index.d.ts +6 -0
  577. package/dist/components/country-select/index.d.ts.map +1 -0
  578. package/dist/components/country-select/index.js +9 -0
  579. package/dist/components/country-select/index.js.map +1 -0
  580. package/dist/components/country-select/iso-3166.d.ts +15 -0
  581. package/dist/components/country-select/iso-3166.d.ts.map +1 -0
  582. package/dist/components/cycle-calculator/index.js +1 -1
  583. package/dist/components/data-table/cell-renderers/reorder-cell-renderer.d.ts +34 -0
  584. package/dist/components/data-table/cell-renderers/reorder-cell-renderer.d.ts.map +1 -0
  585. package/dist/components/data-table/filters/select-filter.d.ts.map +1 -1
  586. package/dist/components/data-table/index.d.ts +2 -0
  587. package/dist/components/data-table/index.d.ts.map +1 -1
  588. package/dist/components/data-table/index.js +13 -11
  589. package/dist/components/date-picker/index.js +1 -1
  590. package/dist/components/date-range-picker/index.js +1 -1
  591. package/dist/components/date-time-picker/index.js +1 -1
  592. package/dist/components/dependent-selector/index.js +1 -1
  593. package/dist/components/description-list/index.js +1 -1
  594. package/dist/components/dialog/index.js +1 -1
  595. package/dist/components/document-scanner/index.js +1 -1
  596. package/dist/components/dropdown-menu/index.js +1 -1
  597. package/dist/components/due-date-calculator/index.js +2 -2
  598. package/dist/components/editor-overlay/index.js +1 -1
  599. package/dist/components/email-input/index.js +1 -1
  600. package/dist/components/entity-summary/entity-summary.agent.d.ts +4 -0
  601. package/dist/components/entity-summary/entity-summary.agent.d.ts.map +1 -0
  602. package/dist/components/entity-summary/entity-summary.d.ts +53 -4
  603. package/dist/components/entity-summary/entity-summary.d.ts.map +1 -1
  604. package/dist/components/entity-summary/index.js +1 -1
  605. package/dist/components/face-scheme/detect-face-landmarks.d.ts +26 -0
  606. package/dist/components/face-scheme/detect-face-landmarks.d.ts.map +1 -0
  607. package/dist/components/face-scheme/detect-face-yunet.d.ts +28 -0
  608. package/dist/components/face-scheme/detect-face-yunet.d.ts.map +1 -0
  609. package/dist/components/face-scheme/face-scheme-data.d.ts +113 -0
  610. package/dist/components/face-scheme/face-scheme-data.d.ts.map +1 -0
  611. package/dist/components/face-scheme/face-scheme-zones.d.ts +11 -0
  612. package/dist/components/face-scheme/face-scheme-zones.d.ts.map +1 -0
  613. package/dist/components/face-scheme/face-scheme.agent.d.ts +4 -0
  614. package/dist/components/face-scheme/face-scheme.agent.d.ts.map +1 -0
  615. package/dist/components/face-scheme/face-scheme.d.ts +144 -0
  616. package/dist/components/face-scheme/face-scheme.d.ts.map +1 -0
  617. package/dist/components/face-scheme/index.d.ts +7 -0
  618. package/dist/components/face-scheme/index.d.ts.map +1 -0
  619. package/dist/components/face-scheme/index.js +17 -0
  620. package/dist/components/face-scheme/index.js.map +1 -0
  621. package/dist/components/fetal-weight/index.js +1 -1
  622. package/dist/components/field-array/field-array.agent.d.ts +4 -0
  623. package/dist/components/field-array/field-array.agent.d.ts.map +1 -0
  624. package/dist/components/field-array/field-array.d.ts +45 -0
  625. package/dist/components/field-array/field-array.d.ts.map +1 -0
  626. package/dist/components/field-array/index.d.ts +4 -0
  627. package/dist/components/field-array/index.d.ts.map +1 -0
  628. package/dist/components/field-array/index.js +6 -0
  629. package/dist/components/field-array/index.js.map +1 -0
  630. package/dist/components/file-upload/index.js +1 -1
  631. package/dist/components/finished-terminal/index.js +1 -1
  632. package/dist/components/fiscal-code-input/index.js +1 -1
  633. package/dist/components/form-field/index.js +1 -1
  634. package/dist/components/freemium-paywall/freemium-paywall.d.ts +1 -1
  635. package/dist/components/freemium-paywall/index.js +1 -1
  636. package/dist/components/gestational-age-calculator/index.js +1 -1
  637. package/dist/components/hcg-doubling/index.js +1 -1
  638. package/dist/components/header/index.js +1 -1
  639. package/dist/components/header-settings/index.js +1 -1
  640. package/dist/components/iban-input/iban-input.agent.d.ts +4 -0
  641. package/dist/components/iban-input/iban-input.agent.d.ts.map +1 -0
  642. package/dist/components/iban-input/iban-input.d.ts +51 -0
  643. package/dist/components/iban-input/iban-input.d.ts.map +1 -0
  644. package/dist/components/iban-input/index.d.ts +5 -0
  645. package/dist/components/iban-input/index.d.ts.map +1 -0
  646. package/dist/components/iban-input/index.js +13 -0
  647. package/dist/components/iban-input/index.js.map +1 -0
  648. package/dist/components/iban-input/is-valid-iban.d.ts +31 -0
  649. package/dist/components/iban-input/is-valid-iban.d.ts.map +1 -0
  650. package/dist/components/icon-picker/icon-picker.agent.d.ts +4 -0
  651. package/dist/components/icon-picker/icon-picker.agent.d.ts.map +1 -0
  652. package/dist/components/icon-picker/icon-picker.d.ts +41 -0
  653. package/dist/components/icon-picker/icon-picker.d.ts.map +1 -0
  654. package/dist/components/icon-picker/index.d.ts +4 -0
  655. package/dist/components/icon-picker/index.d.ts.map +1 -0
  656. package/dist/components/icon-picker/index.js +6 -0
  657. package/dist/components/icon-picker/index.js.map +1 -0
  658. package/dist/components/image-cropper/crop-geometry.d.ts +30 -0
  659. package/dist/components/image-cropper/crop-geometry.d.ts.map +1 -0
  660. package/dist/components/image-cropper/image-cropper.agent.d.ts +4 -0
  661. package/dist/components/image-cropper/image-cropper.agent.d.ts.map +1 -0
  662. package/dist/components/image-cropper/image-cropper.d.ts +32 -0
  663. package/dist/components/image-cropper/image-cropper.d.ts.map +1 -0
  664. package/dist/components/image-cropper/index.d.ts +5 -0
  665. package/dist/components/image-cropper/index.d.ts.map +1 -0
  666. package/dist/components/image-cropper/index.js +11 -0
  667. package/dist/components/image-cropper/index.js.map +1 -0
  668. package/dist/components/index.d.ts +19 -2
  669. package/dist/components/index.d.ts.map +1 -1
  670. package/dist/components/key-value-pair/index.js +1 -1
  671. package/dist/components/link/index.js +1 -1
  672. package/dist/components/locale-picker/index.js +1 -1
  673. package/dist/components/map-view/index.js +1 -1
  674. package/dist/components/message-card/index.js +1 -1
  675. package/dist/components/message-card/message-card.d.ts +14 -0
  676. package/dist/components/message-card/message-card.d.ts.map +1 -1
  677. package/dist/components/message-tray/index.js +1 -1
  678. package/dist/components/message-tray/message-tray.agent.d.ts.map +1 -1
  679. package/dist/components/message-tray/message-tray.d.ts +4 -0
  680. package/dist/components/message-tray/message-tray.d.ts.map +1 -1
  681. package/dist/components/multi-select/index.js +1 -1
  682. package/dist/components/multi-select/multi-select.d.ts.map +1 -1
  683. package/dist/components/muscle-scheme/index.d.ts +6 -0
  684. package/dist/components/muscle-scheme/index.d.ts.map +1 -0
  685. package/dist/components/muscle-scheme/index.js +16 -0
  686. package/dist/components/muscle-scheme/index.js.map +1 -0
  687. package/dist/components/muscle-scheme/muscle-paths.d.ts +22 -0
  688. package/dist/components/muscle-scheme/muscle-paths.d.ts.map +1 -0
  689. package/dist/components/muscle-scheme/muscle-scheme-data.d.ts +107 -0
  690. package/dist/components/muscle-scheme/muscle-scheme-data.d.ts.map +1 -0
  691. package/dist/components/muscle-scheme/muscle-scheme.agent.d.ts +6 -0
  692. package/dist/components/muscle-scheme/muscle-scheme.agent.d.ts.map +1 -0
  693. package/dist/components/muscle-scheme/muscle-scheme.d.ts +66 -0
  694. package/dist/components/muscle-scheme/muscle-scheme.d.ts.map +1 -0
  695. package/dist/components/nav-grid/index.d.ts +4 -0
  696. package/dist/components/nav-grid/index.d.ts.map +1 -0
  697. package/dist/components/nav-grid/index.js +7 -0
  698. package/dist/components/nav-grid/index.js.map +1 -0
  699. package/dist/components/nav-grid/nav-grid.agent.d.ts +4 -0
  700. package/dist/components/nav-grid/nav-grid.agent.d.ts.map +1 -0
  701. package/dist/components/nav-grid/nav-grid.d.ts +41 -0
  702. package/dist/components/nav-grid/nav-grid.d.ts.map +1 -0
  703. package/dist/components/navigation-menu/index.js +1 -1
  704. package/dist/components/notes-panel/index.js +1 -1
  705. package/dist/components/notes-panel/notes-panel.agent.d.ts +4 -0
  706. package/dist/components/notes-panel/notes-panel.agent.d.ts.map +1 -0
  707. package/dist/components/notes-panel/notes-panel.d.ts +30 -0
  708. package/dist/components/notes-panel/notes-panel.d.ts.map +1 -1
  709. package/dist/components/notification-card/index.js +1 -1
  710. package/dist/components/notification-card/notification-card.d.ts +15 -0
  711. package/dist/components/notification-card/notification-card.d.ts.map +1 -1
  712. package/dist/components/notification-tray/index.js +1 -1
  713. package/dist/components/notification-tray/notification-tray.agent.d.ts.map +1 -1
  714. package/dist/components/notification-tray/notification-tray.d.ts +4 -0
  715. package/dist/components/notification-tray/notification-tray.d.ts.map +1 -1
  716. package/dist/components/number-input/index.js +1 -1
  717. package/dist/components/operator-hero/index.js +1 -1
  718. package/dist/components/optical-prescription/index.d.ts +6 -0
  719. package/dist/components/optical-prescription/index.d.ts.map +1 -0
  720. package/dist/components/optical-prescription/index.js +38 -0
  721. package/dist/components/optical-prescription/index.js.map +1 -0
  722. package/dist/components/optical-prescription/optical-prescription-data.d.ts +106 -0
  723. package/dist/components/optical-prescription/optical-prescription-data.d.ts.map +1 -0
  724. package/dist/components/optical-prescription/optical-prescription.agent.d.ts +6 -0
  725. package/dist/components/optical-prescription/optical-prescription.agent.d.ts.map +1 -0
  726. package/dist/components/optical-prescription/optical-prescription.d.ts +43 -0
  727. package/dist/components/optical-prescription/optical-prescription.d.ts.map +1 -0
  728. package/dist/components/pagination/index.js +1 -1
  729. package/dist/components/panel-header/index.d.ts +3 -0
  730. package/dist/components/panel-header/index.d.ts.map +1 -0
  731. package/dist/components/panel-header/index.js +7 -0
  732. package/dist/components/panel-header/index.js.map +1 -0
  733. package/dist/components/panel-header/panel-header.d.ts +41 -0
  734. package/dist/components/panel-header/panel-header.d.ts.map +1 -0
  735. package/dist/components/password-input/index.js +1 -1
  736. package/dist/components/patient-details/index.js +1 -1
  737. package/dist/components/patient-details/patient-details.d.ts.map +1 -1
  738. package/dist/components/patient-search/index.js +1 -1
  739. package/dist/components/patient-summary-card/index.js +1 -1
  740. package/dist/components/patient-summary-card/patient-summary-card.d.ts.map +1 -1
  741. package/dist/components/patient-table/index.js +1 -1
  742. package/dist/components/payment-card/index.js +1 -1
  743. package/dist/components/payment-form/index.js +1 -1
  744. package/dist/components/pdf-viewer/index.js +1 -1
  745. package/dist/components/periodontal-chart-card/index.js +1 -1
  746. package/dist/components/permission-matrix/index.d.ts +4 -0
  747. package/dist/components/permission-matrix/index.d.ts.map +1 -0
  748. package/dist/components/permission-matrix/index.js +7 -0
  749. package/dist/components/permission-matrix/index.js.map +1 -0
  750. package/dist/components/permission-matrix/permission-matrix.agent.d.ts +4 -0
  751. package/dist/components/permission-matrix/permission-matrix.agent.d.ts.map +1 -0
  752. package/dist/components/permission-matrix/permission-matrix.d.ts +47 -0
  753. package/dist/components/permission-matrix/permission-matrix.d.ts.map +1 -0
  754. package/dist/components/phone-input/index.js +1 -1
  755. package/dist/components/popover/index.js +1 -1
  756. package/dist/components/position-grid/index.d.ts +4 -0
  757. package/dist/components/position-grid/index.d.ts.map +1 -0
  758. package/dist/components/position-grid/index.js +7 -0
  759. package/dist/components/position-grid/index.js.map +1 -0
  760. package/dist/components/position-grid/position-grid.agent.d.ts +4 -0
  761. package/dist/components/position-grid/position-grid.agent.d.ts.map +1 -0
  762. package/dist/components/position-grid/position-grid.d.ts +39 -0
  763. package/dist/components/position-grid/position-grid.d.ts.map +1 -0
  764. package/dist/components/postal-code-input/index.d.ts +5 -0
  765. package/dist/components/postal-code-input/index.d.ts.map +1 -0
  766. package/dist/components/postal-code-input/index.js +6 -0
  767. package/dist/components/postal-code-input/index.js.map +1 -0
  768. package/dist/components/postal-code-input/postal-code-input.agent.d.ts +8 -0
  769. package/dist/components/postal-code-input/postal-code-input.agent.d.ts.map +1 -0
  770. package/dist/components/postal-code-input/postal-code-input.d.ts +27 -0
  771. package/dist/components/postal-code-input/postal-code-input.d.ts.map +1 -0
  772. package/dist/components/practice-results/index.js +1 -1
  773. package/dist/components/pregnancy-dating/index.js +1 -1
  774. package/dist/components/pregnancy-weight-gain/index.js +1 -1
  775. package/dist/components/privacy-lock/index.js +1 -1
  776. package/dist/components/product-hub-tray/index.js +1 -1
  777. package/dist/components/product-hub-tray/product-hub-tray.d.ts +13 -1
  778. package/dist/components/product-hub-tray/product-hub-tray.d.ts.map +1 -1
  779. package/dist/components/province-select/index.d.ts +6 -0
  780. package/dist/components/province-select/index.d.ts.map +1 -0
  781. package/dist/components/province-select/index.js +7 -0
  782. package/dist/components/province-select/index.js.map +1 -0
  783. package/dist/components/province-select/it-provinces.d.ts +8 -0
  784. package/dist/components/province-select/it-provinces.d.ts.map +1 -0
  785. package/dist/components/province-select/province-select.agent.d.ts +8 -0
  786. package/dist/components/province-select/province-select.agent.d.ts.map +1 -0
  787. package/dist/components/province-select/province-select.d.ts +38 -0
  788. package/dist/components/province-select/province-select.d.ts.map +1 -0
  789. package/dist/components/public-footer/index.js +1 -1
  790. package/dist/components/public-footer/public-footer.d.ts +1 -1
  791. package/dist/components/public-header/index.js +1 -1
  792. package/dist/components/radio-group/index.js +1 -1
  793. package/dist/components/radiograph-panel/index.js +1 -1
  794. package/dist/components/radiograph-panel/radiograph-panel.d.ts.map +1 -1
  795. package/dist/components/rating/index.js +1 -1
  796. package/dist/components/reviews-panel/index.js +1 -1
  797. package/dist/components/reviews-panel/reviews-panel.d.ts.map +1 -1
  798. package/dist/components/rich-text-editor/editor-toolbar.d.ts +17 -0
  799. package/dist/components/rich-text-editor/editor-toolbar.d.ts.map +1 -1
  800. package/dist/components/rich-text-editor/index.js +1 -1
  801. package/dist/components/rich-text-editor/rich-text-editor.agent.d.ts.map +1 -1
  802. package/dist/components/rich-text-editor/rich-text-editor.d.ts.map +1 -1
  803. package/dist/components/scroll-area/index.js +1 -1
  804. package/dist/components/search-bar/index.js +1 -1
  805. package/dist/components/search-input/index.js +1 -1
  806. package/dist/components/select/index.js +1 -1
  807. package/dist/components/select/select.d.ts +8 -2
  808. package/dist/components/select/select.d.ts.map +1 -1
  809. package/dist/components/session-countdown/index.js +1 -1
  810. package/dist/components/sheet/index.js +1 -1
  811. package/dist/components/sheet/sheet.d.ts.map +1 -1
  812. package/dist/components/sidebar/index.js +1 -1
  813. package/dist/components/sidebar/sidebar.d.ts.map +1 -1
  814. package/dist/components/sign-document/index.js +1 -1
  815. package/dist/components/signature-field/index.js +1 -1
  816. package/dist/components/skeleton/skeleton.d.ts +1 -1
  817. package/dist/components/smart-date/index.js +1 -1
  818. package/dist/components/stepper-accordion/index.js +1 -1
  819. package/dist/components/streaming-text/index.js +1 -1
  820. package/dist/components/tab-bar/index.js +1 -1
  821. package/dist/components/tabs/index.js +1 -1
  822. package/dist/components/tag/index.js +1 -1
  823. package/dist/components/task-card/index.js +1 -1
  824. package/dist/components/task-card/task-card.d.ts +14 -6
  825. package/dist/components/task-card/task-card.d.ts.map +1 -1
  826. package/dist/components/task-tray/index.js +1 -1
  827. package/dist/components/tasks-panel/index.d.ts +4 -0
  828. package/dist/components/tasks-panel/index.d.ts.map +1 -0
  829. package/dist/components/tasks-panel/index.js +6 -0
  830. package/dist/components/tasks-panel/index.js.map +1 -0
  831. package/dist/components/tasks-panel/tasks-panel.agent.d.ts +4 -0
  832. package/dist/components/tasks-panel/tasks-panel.agent.d.ts.map +1 -0
  833. package/dist/components/tasks-panel/tasks-panel.d.ts +152 -0
  834. package/dist/components/tasks-panel/tasks-panel.d.ts.map +1 -0
  835. package/dist/components/text-input/index.js +1 -1
  836. package/dist/components/theme-toggle/index.js +1 -1
  837. package/dist/components/timeline/index.js +1 -1
  838. package/dist/components/toast/index.js +1 -1
  839. package/dist/components/token-insert-menu/index.d.ts +4 -0
  840. package/dist/components/token-insert-menu/index.d.ts.map +1 -0
  841. package/dist/components/token-insert-menu/index.js +6 -0
  842. package/dist/components/token-insert-menu/index.js.map +1 -0
  843. package/dist/components/token-insert-menu/token-insert-menu.agent.d.ts +4 -0
  844. package/dist/components/token-insert-menu/token-insert-menu.agent.d.ts.map +1 -0
  845. package/dist/components/token-insert-menu/token-insert-menu.d.ts +33 -0
  846. package/dist/components/token-insert-menu/token-insert-menu.d.ts.map +1 -0
  847. package/dist/components/tool-rail/index.d.ts +4 -0
  848. package/dist/components/tool-rail/index.d.ts.map +1 -0
  849. package/dist/components/tool-rail/index.js +6 -0
  850. package/dist/components/tool-rail/index.js.map +1 -0
  851. package/dist/components/tool-rail/tool-rail.agent.d.ts +4 -0
  852. package/dist/components/tool-rail/tool-rail.agent.d.ts.map +1 -0
  853. package/dist/components/tool-rail/tool-rail.d.ts +160 -0
  854. package/dist/components/tool-rail/tool-rail.d.ts.map +1 -0
  855. package/dist/components/tooth-scheme/index.js +1 -1
  856. package/dist/components/tooth-scheme/tooth-scheme.d.ts +9 -0
  857. package/dist/components/tooth-scheme/tooth-scheme.d.ts.map +1 -1
  858. package/dist/components/transaction-chip/index.js +1 -1
  859. package/dist/components/transcript-panel/index.js +1 -1
  860. package/dist/components/transcript-panel/transcript-panel.d.ts +2 -2
  861. package/dist/components/transcript-panel/transcript-panel.d.ts.map +1 -1
  862. package/dist/components/unit-converter/index.js +1 -1
  863. package/dist/components/warning-stack/index.js +1 -1
  864. package/dist/components/workflow/index.js +1 -1
  865. package/dist/hooks/use-edge-resize.d.ts +2 -2
  866. package/dist/i18n/locales/ar.d.ts +306 -100
  867. package/dist/i18n/locales/ar.d.ts.map +1 -1
  868. package/dist/i18n/locales/ar.js +298 -112
  869. package/dist/i18n/locales/ar.js.map +1 -1
  870. package/dist/i18n/locales/de.d.ts +306 -100
  871. package/dist/i18n/locales/de.d.ts.map +1 -1
  872. package/dist/i18n/locales/de.js +300 -112
  873. package/dist/i18n/locales/de.js.map +1 -1
  874. package/dist/i18n/locales/el.d.ts +306 -100
  875. package/dist/i18n/locales/el.d.ts.map +1 -1
  876. package/dist/i18n/locales/el.js +305 -112
  877. package/dist/i18n/locales/el.js.map +1 -1
  878. package/dist/i18n/locales/en.d.ts +306 -100
  879. package/dist/i18n/locales/en.d.ts.map +1 -1
  880. package/dist/i18n/locales/en.js +311 -112
  881. package/dist/i18n/locales/en.js.map +1 -1
  882. package/dist/i18n/locales/es.d.ts +306 -100
  883. package/dist/i18n/locales/es.d.ts.map +1 -1
  884. package/dist/i18n/locales/es.js +297 -112
  885. package/dist/i18n/locales/es.js.map +1 -1
  886. package/dist/i18n/locales/fr.d.ts +306 -100
  887. package/dist/i18n/locales/fr.d.ts.map +1 -1
  888. package/dist/i18n/locales/fr.js +300 -112
  889. package/dist/i18n/locales/fr.js.map +1 -1
  890. package/dist/i18n/locales/hi.d.ts +306 -100
  891. package/dist/i18n/locales/hi.d.ts.map +1 -1
  892. package/dist/i18n/locales/hi.js +296 -112
  893. package/dist/i18n/locales/hi.js.map +1 -1
  894. package/dist/i18n/locales/it.d.ts +306 -100
  895. package/dist/i18n/locales/it.d.ts.map +1 -1
  896. package/dist/i18n/locales/it.js +300 -112
  897. package/dist/i18n/locales/it.js.map +1 -1
  898. package/dist/i18n/locales/ja.d.ts +306 -100
  899. package/dist/i18n/locales/ja.d.ts.map +1 -1
  900. package/dist/i18n/locales/ja.js +301 -112
  901. package/dist/i18n/locales/ja.js.map +1 -1
  902. package/dist/i18n/locales/nl.d.ts +306 -100
  903. package/dist/i18n/locales/nl.d.ts.map +1 -1
  904. package/dist/i18n/locales/nl.js +293 -112
  905. package/dist/i18n/locales/nl.js.map +1 -1
  906. package/dist/i18n/locales/pl.d.ts +306 -100
  907. package/dist/i18n/locales/pl.d.ts.map +1 -1
  908. package/dist/i18n/locales/pl.js +301 -112
  909. package/dist/i18n/locales/pl.js.map +1 -1
  910. package/dist/i18n/locales/pt.d.ts +306 -100
  911. package/dist/i18n/locales/pt.d.ts.map +1 -1
  912. package/dist/i18n/locales/pt.js +305 -112
  913. package/dist/i18n/locales/pt.js.map +1 -1
  914. package/dist/i18n/locales/ro.d.ts +306 -100
  915. package/dist/i18n/locales/ro.d.ts.map +1 -1
  916. package/dist/i18n/locales/ro.js +305 -112
  917. package/dist/i18n/locales/ro.js.map +1 -1
  918. package/dist/i18n/locales/ru.d.ts +306 -100
  919. package/dist/i18n/locales/ru.d.ts.map +1 -1
  920. package/dist/i18n/locales/ru.js +298 -112
  921. package/dist/i18n/locales/ru.js.map +1 -1
  922. package/dist/i18n/locales/sq.d.ts +306 -100
  923. package/dist/i18n/locales/sq.d.ts.map +1 -1
  924. package/dist/i18n/locales/sq.js +302 -112
  925. package/dist/i18n/locales/sq.js.map +1 -1
  926. package/dist/i18n/locales/sv.d.ts +306 -100
  927. package/dist/i18n/locales/sv.d.ts.map +1 -1
  928. package/dist/i18n/locales/sv.js +300 -112
  929. package/dist/i18n/locales/sv.js.map +1 -1
  930. package/dist/i18n/locales/tr.d.ts +306 -100
  931. package/dist/i18n/locales/tr.d.ts.map +1 -1
  932. package/dist/i18n/locales/tr.js +298 -112
  933. package/dist/i18n/locales/tr.js.map +1 -1
  934. package/dist/i18n/locales/zh.d.ts +306 -100
  935. package/dist/i18n/locales/zh.d.ts.map +1 -1
  936. package/dist/i18n/locales/zh.js +293 -112
  937. package/dist/i18n/locales/zh.js.map +1 -1
  938. package/dist/index.js +881 -765
  939. package/dist/index.js.map +1 -1
  940. package/dist/locales/ar.json +311 -105
  941. package/dist/locales/de.json +311 -105
  942. package/dist/locales/el.json +311 -105
  943. package/dist/locales/en.json +311 -105
  944. package/dist/locales/es.json +311 -105
  945. package/dist/locales/fr.json +311 -105
  946. package/dist/locales/hi.json +311 -105
  947. package/dist/locales/it.json +311 -105
  948. package/dist/locales/ja.json +311 -105
  949. package/dist/locales/nl.json +311 -105
  950. package/dist/locales/pl.json +311 -105
  951. package/dist/locales/pt.json +311 -105
  952. package/dist/locales/ro.json +311 -105
  953. package/dist/locales/ru.json +311 -105
  954. package/dist/locales/sq.json +311 -105
  955. package/dist/locales/sv.json +311 -105
  956. package/dist/locales/tr.json +311 -105
  957. package/dist/locales/zh.json +311 -105
  958. package/dist/patterns/alia-assistant/alia-asteroid-icon.d.ts +18 -0
  959. package/dist/patterns/alia-assistant/alia-asteroid-icon.d.ts.map +1 -0
  960. package/dist/patterns/alia-assistant/alia-chat-surface.d.ts.map +1 -1
  961. package/dist/patterns/alia-assistant/alia-sidebar.d.ts.map +1 -1
  962. package/dist/patterns/alia-assistant/alia-types.d.ts +9 -0
  963. package/dist/patterns/alia-assistant/alia-types.d.ts.map +1 -1
  964. package/dist/patterns/alia-assistant/index.js +1 -1
  965. package/dist/patterns/marketplace-app-shell/index.js +1 -1
  966. package/dist/patterns/patient-shell/index.js +1 -1
  967. package/dist/tokens.css +15 -1
  968. package/package.json +77 -9
  969. package/dist/_chunks/accordion-DnIa7OHX.js +0 -250
  970. package/dist/_chunks/accordion-DnIa7OHX.js.map +0 -1
  971. package/dist/_chunks/address-autocomplete-BEX9PXty.js +0 -496
  972. package/dist/_chunks/address-autocomplete-BEX9PXty.js.map +0 -1
  973. package/dist/_chunks/agenda-card-BQ-IKAru.js +0 -147
  974. package/dist/_chunks/agenda-card-BQ-IKAru.js.map +0 -1
  975. package/dist/_chunks/agenda-tray-CGXRk58j.js +0 -215
  976. package/dist/_chunks/agenda-tray-CGXRk58j.js.map +0 -1
  977. package/dist/_chunks/ai-consent-banner-Be-h9mRI.js +0 -170
  978. package/dist/_chunks/ai-consent-banner-Be-h9mRI.js.map +0 -1
  979. package/dist/_chunks/ai-prompt-input-CuhTo9mh.js +0 -500
  980. package/dist/_chunks/ai-prompt-input-CuhTo9mh.js.map +0 -1
  981. package/dist/_chunks/ai-tools-rail-B5NEghsp.js +0 -511
  982. package/dist/_chunks/ai-tools-rail-B5NEghsp.js.map +0 -1
  983. package/dist/_chunks/alert-CHYZ96tR.js +0 -314
  984. package/dist/_chunks/alert-CHYZ96tR.js.map +0 -1
  985. package/dist/_chunks/alia-sidebar-B47qRQb5.js +0 -1126
  986. package/dist/_chunks/alia-sidebar-B47qRQb5.js.map +0 -1
  987. package/dist/_chunks/anamnesis-card-DvYCa16e.js +0 -156
  988. package/dist/_chunks/anamnesis-card-DvYCa16e.js.map +0 -1
  989. package/dist/_chunks/anatomy-scheme-CJB6dI6p.js +0 -2445
  990. package/dist/_chunks/anatomy-scheme-CJB6dI6p.js.map +0 -1
  991. package/dist/_chunks/antenatal-schedule-timeline-CwXrQRm1.js +0 -413
  992. package/dist/_chunks/antenatal-schedule-timeline-CwXrQRm1.js.map +0 -1
  993. package/dist/_chunks/app-frame-BYx1gcV7.js +0 -121
  994. package/dist/_chunks/app-frame-BYx1gcV7.js.map +0 -1
  995. package/dist/_chunks/appointment-card-C06aZqA7.js +0 -310
  996. package/dist/_chunks/appointment-card-C06aZqA7.js.map +0 -1
  997. package/dist/_chunks/appointment-timeline-BJM0S_Fg.js +0 -386
  998. package/dist/_chunks/appointment-timeline-BJM0S_Fg.js.map +0 -1
  999. package/dist/_chunks/appointment-tray-DRRw5ROi.js +0 -193
  1000. package/dist/_chunks/appointment-tray-DRRw5ROi.js.map +0 -1
  1001. package/dist/_chunks/ar-Cn5Fq48Z.js +0 -399
  1002. package/dist/_chunks/ar-Cn5Fq48Z.js.map +0 -1
  1003. package/dist/_chunks/audio-recorder-Cpdk5qpQ.js +0 -450
  1004. package/dist/_chunks/audio-recorder-Cpdk5qpQ.js.map +0 -1
  1005. package/dist/_chunks/autocomplete-DOeGouCL.js +0 -494
  1006. package/dist/_chunks/autocomplete-DOeGouCL.js.map +0 -1
  1007. package/dist/_chunks/bishop-score-DnYWtZa_.js +0 -304
  1008. package/dist/_chunks/bishop-score-DnYWtZa_.js.map +0 -1
  1009. package/dist/_chunks/bmi-calculator-zjeY4E7J.js +0 -434
  1010. package/dist/_chunks/bmi-calculator-zjeY4E7J.js.map +0 -1
  1011. package/dist/_chunks/booking-DUBI0oqt.js +0 -2711
  1012. package/dist/_chunks/booking-DUBI0oqt.js.map +0 -1
  1013. package/dist/_chunks/breadcrumb-CchdeG7d.js +0 -393
  1014. package/dist/_chunks/breadcrumb-CchdeG7d.js.map +0 -1
  1015. package/dist/_chunks/button-group-Ciq6J4IW.js +0 -122
  1016. package/dist/_chunks/button-group-Ciq6J4IW.js.map +0 -1
  1017. package/dist/_chunks/calculator-dialog-BR5iU0kf.js +0 -40
  1018. package/dist/_chunks/calculator-dialog-BR5iU0kf.js.map +0 -1
  1019. package/dist/_chunks/calendar-B6soK1Yb.js +0 -17
  1020. package/dist/_chunks/calendar-B6soK1Yb.js.map +0 -1
  1021. package/dist/_chunks/calendar-CZUjL8SZ.js +0 -1050
  1022. package/dist/_chunks/calendar-CZUjL8SZ.js.map +0 -1
  1023. package/dist/_chunks/calendar-clock-CYkcqdwl.js +0 -19
  1024. package/dist/_chunks/calendar-clock-CYkcqdwl.js.map +0 -1
  1025. package/dist/_chunks/calendar-days-C4BmpCZg.js +0 -23
  1026. package/dist/_chunks/calendar-days-C4BmpCZg.js.map +0 -1
  1027. package/dist/_chunks/care-plan-card-C5sTfY9G.js +0 -256
  1028. package/dist/_chunks/care-plan-card-C5sTfY9G.js.map +0 -1
  1029. package/dist/_chunks/care-plan-entry-card-CXnxGCWA.js +0 -322
  1030. package/dist/_chunks/care-plan-entry-card-CXnxGCWA.js.map +0 -1
  1031. package/dist/_chunks/care-plan-header-BUwqDTtz.js +0 -206
  1032. package/dist/_chunks/care-plan-header-BUwqDTtz.js.map +0 -1
  1033. package/dist/_chunks/carousel.agent-4v8Emr9E.js +0 -1754
  1034. package/dist/_chunks/carousel.agent-4v8Emr9E.js.map +0 -1
  1035. package/dist/_chunks/chat-container-DWho5hPR.js +0 -234
  1036. package/dist/_chunks/chat-container-DWho5hPR.js.map +0 -1
  1037. package/dist/_chunks/chat-input-BcXTetgM.js +0 -368
  1038. package/dist/_chunks/chat-input-BcXTetgM.js.map +0 -1
  1039. package/dist/_chunks/chat-message-3V54YipB.js +0 -237
  1040. package/dist/_chunks/chat-message-3V54YipB.js.map +0 -1
  1041. package/dist/_chunks/check-DPdL_Sm7.js +0 -12
  1042. package/dist/_chunks/check-DPdL_Sm7.js.map +0 -1
  1043. package/dist/_chunks/checkbox-group-PqNmQ-cE.js +0 -213
  1044. package/dist/_chunks/checkbox-group-PqNmQ-cE.js.map +0 -1
  1045. package/dist/_chunks/chevron-down-BX_NP2Yh.js +0 -12
  1046. package/dist/_chunks/chevron-down-BX_NP2Yh.js.map +0 -1
  1047. package/dist/_chunks/chevron-left-CX1jqD2M.js +0 -12
  1048. package/dist/_chunks/chevron-left-CX1jqD2M.js.map +0 -1
  1049. package/dist/_chunks/chevron-right-BrpYejk0.js +0 -12
  1050. package/dist/_chunks/chevron-right-BrpYejk0.js.map +0 -1
  1051. package/dist/_chunks/chevron-up-zOEDrmBB.js +0 -12
  1052. package/dist/_chunks/chevron-up-zOEDrmBB.js.map +0 -1
  1053. package/dist/_chunks/chevrons-right-d9MwesPG.js +0 -26
  1054. package/dist/_chunks/chevrons-right-d9MwesPG.js.map +0 -1
  1055. package/dist/_chunks/circle-BkqTgYmt.js +0 -12
  1056. package/dist/_chunks/circle-BkqTgYmt.js.map +0 -1
  1057. package/dist/_chunks/circle-alert-ChA9opNA.js +0 -16
  1058. package/dist/_chunks/circle-alert-ChA9opNA.js.map +0 -1
  1059. package/dist/_chunks/circle-check-9AeSgJD_.js +0 -15
  1060. package/dist/_chunks/circle-check-9AeSgJD_.js.map +0 -1
  1061. package/dist/_chunks/circle-x-Du2CmjaU.js +0 -16
  1062. package/dist/_chunks/circle-x-Du2CmjaU.js.map +0 -1
  1063. package/dist/_chunks/clinical-note-card-BUvNMNGL.js +0 -436
  1064. package/dist/_chunks/clinical-note-card-BUvNMNGL.js.map +0 -1
  1065. package/dist/_chunks/clock-21AGPWJ5.js +0 -15
  1066. package/dist/_chunks/clock-21AGPWJ5.js.map +0 -1
  1067. package/dist/_chunks/code-block-BBWHhIc8.js +0 -106
  1068. package/dist/_chunks/code-block-BBWHhIc8.js.map +0 -1
  1069. package/dist/_chunks/color-picker-C_fZl6sA.js +0 -718
  1070. package/dist/_chunks/color-picker-C_fZl6sA.js.map +0 -1
  1071. package/dist/_chunks/columns-2-BTOBZbep.js +0 -15
  1072. package/dist/_chunks/columns-2-BTOBZbep.js.map +0 -1
  1073. package/dist/_chunks/combobox-Clum7gJ1.js +0 -496
  1074. package/dist/_chunks/combobox-Clum7gJ1.js.map +0 -1
  1075. package/dist/_chunks/command-palette-CJzmc5pC.js +0 -473
  1076. package/dist/_chunks/command-palette-CJzmc5pC.js.map +0 -1
  1077. package/dist/_chunks/contact-card-Cf8Ktyt3.js +0 -121
  1078. package/dist/_chunks/contact-card-Cf8Ktyt3.js.map +0 -1
  1079. package/dist/_chunks/contact-profile-card-DDPwRFiP.js +0 -333
  1080. package/dist/_chunks/contact-profile-card-DDPwRFiP.js.map +0 -1
  1081. package/dist/_chunks/control-room-rail-Y8ryLYsP.js +0 -229
  1082. package/dist/_chunks/control-room-rail-Y8ryLYsP.js.map +0 -1
  1083. package/dist/_chunks/copy-B00HK7tj.js +0 -15
  1084. package/dist/_chunks/copy-B00HK7tj.js.map +0 -1
  1085. package/dist/_chunks/copy-field-Bjw9u2cV.js +0 -268
  1086. package/dist/_chunks/copy-field-Bjw9u2cV.js.map +0 -1
  1087. package/dist/_chunks/createLucideIcon-CrFbzy84.js +0 -117
  1088. package/dist/_chunks/createLucideIcon-CrFbzy84.js.map +0 -1
  1089. package/dist/_chunks/cycle-calculator-CCmPwcBl.js +0 -252
  1090. package/dist/_chunks/cycle-calculator-CCmPwcBl.js.map +0 -1
  1091. package/dist/_chunks/date-picker-Dl9RKxaV.js +0 -1845
  1092. package/dist/_chunks/date-picker-Dl9RKxaV.js.map +0 -1
  1093. package/dist/_chunks/date-picker-variants-DAcSLTua.js +0 -3224
  1094. package/dist/_chunks/date-picker-variants-DAcSLTua.js.map +0 -1
  1095. package/dist/_chunks/date-range-picker-CTUeR6Bj.js +0 -324
  1096. package/dist/_chunks/date-range-picker-CTUeR6Bj.js.map +0 -1
  1097. package/dist/_chunks/date-time-picker-BhoogS5Q.js +0 -336
  1098. package/dist/_chunks/date-time-picker-BhoogS5Q.js.map +0 -1
  1099. package/dist/_chunks/de-CrJs4ZsX.js +0 -477
  1100. package/dist/_chunks/de-CrJs4ZsX.js.map +0 -1
  1101. package/dist/_chunks/dependent-selector-DUV4thxX.js +0 -338
  1102. package/dist/_chunks/dependent-selector-DUV4thxX.js.map +0 -1
  1103. package/dist/_chunks/description-list-gkNGWk5G.js +0 -319
  1104. package/dist/_chunks/description-list-gkNGWk5G.js.map +0 -1
  1105. package/dist/_chunks/dialog-ZNuboNmy.js +0 -230
  1106. package/dist/_chunks/dialog-ZNuboNmy.js.map +0 -1
  1107. package/dist/_chunks/document-scanner-C_AxLooF.js +0 -711
  1108. package/dist/_chunks/document-scanner-C_AxLooF.js.map +0 -1
  1109. package/dist/_chunks/download-CDF1sbL9.js +0 -16
  1110. package/dist/_chunks/download-CDF1sbL9.js.map +0 -1
  1111. package/dist/_chunks/dropdown-menu-qrxjymfw.js +0 -355
  1112. package/dist/_chunks/dropdown-menu-qrxjymfw.js.map +0 -1
  1113. package/dist/_chunks/due-date-calculator-Brdj-euS.js +0 -256
  1114. package/dist/_chunks/due-date-calculator-Brdj-euS.js.map +0 -1
  1115. package/dist/_chunks/editable-currency-cell-renderer-C9twtALM.js +0 -328
  1116. package/dist/_chunks/editable-currency-cell-renderer-C9twtALM.js.map +0 -1
  1117. package/dist/_chunks/editor-overlay-wYm22wZK.js +0 -88
  1118. package/dist/_chunks/editor-overlay-wYm22wZK.js.map +0 -1
  1119. package/dist/_chunks/el-DHdMOIhL.js +0 -373
  1120. package/dist/_chunks/el-DHdMOIhL.js.map +0 -1
  1121. package/dist/_chunks/ellipsis-rgGdiK_9.js +0 -16
  1122. package/dist/_chunks/ellipsis-rgGdiK_9.js.map +0 -1
  1123. package/dist/_chunks/email-input-DJ7EXklP.js +0 -397
  1124. package/dist/_chunks/email-input-DJ7EXklP.js.map +0 -1
  1125. package/dist/_chunks/entity-summary-BxRjFh_4.js +0 -138
  1126. package/dist/_chunks/entity-summary-BxRjFh_4.js.map +0 -1
  1127. package/dist/_chunks/es-DCATCfqo.js +0 -373
  1128. package/dist/_chunks/es-DCATCfqo.js.map +0 -1
  1129. package/dist/_chunks/external-link-C6F25E6k.js +0 -16
  1130. package/dist/_chunks/external-link-C6F25E6k.js.map +0 -1
  1131. package/dist/_chunks/eye-LHlSU38h.js +0 -21
  1132. package/dist/_chunks/eye-LHlSU38h.js.map +0 -1
  1133. package/dist/_chunks/eye-off-xEXDAh5z.js +0 -29
  1134. package/dist/_chunks/eye-off-xEXDAh5z.js.map +0 -1
  1135. package/dist/_chunks/fetal-weight-DNCkyeVo.js +0 -122
  1136. package/dist/_chunks/fetal-weight-DNCkyeVo.js.map +0 -1
  1137. package/dist/_chunks/field-value-NXYczdpO.js +0 -415
  1138. package/dist/_chunks/field-value-NXYczdpO.js.map +0 -1
  1139. package/dist/_chunks/file-spreadsheet-zUkY8rJ2.js +0 -25
  1140. package/dist/_chunks/file-spreadsheet-zUkY8rJ2.js.map +0 -1
  1141. package/dist/_chunks/file-text-DSNuv2B8.js +0 -24
  1142. package/dist/_chunks/file-text-DSNuv2B8.js.map +0 -1
  1143. package/dist/_chunks/file-upload-DwZcAK8D.js +0 -819
  1144. package/dist/_chunks/file-upload-DwZcAK8D.js.map +0 -1
  1145. package/dist/_chunks/finished-terminal-VjZ_-eDD.js +0 -122
  1146. package/dist/_chunks/finished-terminal-VjZ_-eDD.js.map +0 -1
  1147. package/dist/_chunks/fiscal-code-input-Cf-8O4Fj.js +0 -553
  1148. package/dist/_chunks/fiscal-code-input-Cf-8O4Fj.js.map +0 -1
  1149. package/dist/_chunks/form-field-BOm9hK35.js +0 -123
  1150. package/dist/_chunks/form-field-BOm9hK35.js.map +0 -1
  1151. package/dist/_chunks/fr-BfGEMshF.js +0 -338
  1152. package/dist/_chunks/fr-BfGEMshF.js.map +0 -1
  1153. package/dist/_chunks/freemium-paywall-WYlNO7yT.js +0 -275
  1154. package/dist/_chunks/freemium-paywall-WYlNO7yT.js.map +0 -1
  1155. package/dist/_chunks/gestational-age-calculator-CF2ISaYQ.js +0 -311
  1156. package/dist/_chunks/gestational-age-calculator-CF2ISaYQ.js.map +0 -1
  1157. package/dist/_chunks/globe-BkEFMNSg.js +0 -16
  1158. package/dist/_chunks/globe-BkEFMNSg.js.map +0 -1
  1159. package/dist/_chunks/grip-vertical-Dlg0_k5C.js +0 -19
  1160. package/dist/_chunks/grip-vertical-Dlg0_k5C.js.map +0 -1
  1161. package/dist/_chunks/hash-CysBBS_N.js +0 -17
  1162. package/dist/_chunks/hash-CysBBS_N.js.map +0 -1
  1163. package/dist/_chunks/hcg-doubling-C7bmuaU3.js +0 -170
  1164. package/dist/_chunks/hcg-doubling-C7bmuaU3.js.map +0 -1
  1165. package/dist/_chunks/header-CNszv2WQ.js +0 -297
  1166. package/dist/_chunks/header-CNszv2WQ.js.map +0 -1
  1167. package/dist/_chunks/header-settings-DJqoAl5m.js +0 -284
  1168. package/dist/_chunks/header-settings-DJqoAl5m.js.map +0 -1
  1169. package/dist/_chunks/heart-C0faivFf.js +0 -20
  1170. package/dist/_chunks/heart-C0faivFf.js.map +0 -1
  1171. package/dist/_chunks/heart-pulse-CvuyFKHB.js +0 -21
  1172. package/dist/_chunks/heart-pulse-CvuyFKHB.js.map +0 -1
  1173. package/dist/_chunks/hi-CBFRXEIm.js +0 -433
  1174. package/dist/_chunks/hi-CBFRXEIm.js.map +0 -1
  1175. package/dist/_chunks/image-C6RM5hfF.js +0 -16
  1176. package/dist/_chunks/image-C6RM5hfF.js.map +0 -1
  1177. package/dist/_chunks/info-B9XNKn05.js +0 -16
  1178. package/dist/_chunks/info-B9XNKn05.js.map +0 -1
  1179. package/dist/_chunks/insert-result-njqBthzT.js +0 -742
  1180. package/dist/_chunks/insert-result-njqBthzT.js.map +0 -1
  1181. package/dist/_chunks/isSameWeek-I3DfXUp1.js +0 -14
  1182. package/dist/_chunks/isSameWeek-I3DfXUp1.js.map +0 -1
  1183. package/dist/_chunks/it-nz6vAKwG.js +0 -401
  1184. package/dist/_chunks/it-nz6vAKwG.js.map +0 -1
  1185. package/dist/_chunks/ja-DQcqdAEJ.js +0 -366
  1186. package/dist/_chunks/ja-DQcqdAEJ.js.map +0 -1
  1187. package/dist/_chunks/key-value-pair-BrgbMfbF.js +0 -144
  1188. package/dist/_chunks/key-value-pair-BrgbMfbF.js.map +0 -1
  1189. package/dist/_chunks/languages-DsVf_WzT.js +0 -19
  1190. package/dist/_chunks/languages-DsVf_WzT.js.map +0 -1
  1191. package/dist/_chunks/layers-pzGcbLPj.js +0 -34
  1192. package/dist/_chunks/layers-pzGcbLPj.js.map +0 -1
  1193. package/dist/_chunks/link-DrD_cRUg.js +0 -129
  1194. package/dist/_chunks/link-DrD_cRUg.js.map +0 -1
  1195. package/dist/_chunks/link-cell-renderer-CTXqtXV-.js +0 -2184
  1196. package/dist/_chunks/link-cell-renderer-CTXqtXV-.js.map +0 -1
  1197. package/dist/_chunks/locale-picker-ChYYSX2N.js +0 -739
  1198. package/dist/_chunks/locale-picker-ChYYSX2N.js.map +0 -1
  1199. package/dist/_chunks/lock-CKOIn0IK.js +0 -15
  1200. package/dist/_chunks/lock-CKOIn0IK.js.map +0 -1
  1201. package/dist/_chunks/log-out-616hnn2-.js +0 -16
  1202. package/dist/_chunks/log-out-616hnn2-.js.map +0 -1
  1203. package/dist/_chunks/mail-C8irm52s.js +0 -15
  1204. package/dist/_chunks/mail-C8irm52s.js.map +0 -1
  1205. package/dist/_chunks/map-pin-B8STOPMJ.js +0 -21
  1206. package/dist/_chunks/map-pin-B8STOPMJ.js.map +0 -1
  1207. package/dist/_chunks/map-view-BkOoGoX2.js +0 -378
  1208. package/dist/_chunks/map-view-BkOoGoX2.js.map +0 -1
  1209. package/dist/_chunks/marketplace-app-shell-Skhfp6vK.js +0 -513
  1210. package/dist/_chunks/marketplace-app-shell-Skhfp6vK.js.map +0 -1
  1211. package/dist/_chunks/maximize-2-Cm9OUQ2m.js +0 -17
  1212. package/dist/_chunks/maximize-2-Cm9OUQ2m.js.map +0 -1
  1213. package/dist/_chunks/menu-XRhW3_99.js +0 -16
  1214. package/dist/_chunks/menu-XRhW3_99.js.map +0 -1
  1215. package/dist/_chunks/message-card-Bx4GmLvf.js +0 -277
  1216. package/dist/_chunks/message-card-Bx4GmLvf.js.map +0 -1
  1217. package/dist/_chunks/message-circle-C23eicgb.js +0 -20
  1218. package/dist/_chunks/message-circle-C23eicgb.js.map +0 -1
  1219. package/dist/_chunks/message-tray-DwrBLJlf.js +0 -457
  1220. package/dist/_chunks/message-tray-DwrBLJlf.js.map +0 -1
  1221. package/dist/_chunks/mic-B4Gog3Gi.js +0 -16
  1222. package/dist/_chunks/mic-B4Gog3Gi.js.map +0 -1
  1223. package/dist/_chunks/monitor-D-SFdbrU.js +0 -16
  1224. package/dist/_chunks/monitor-D-SFdbrU.js.map +0 -1
  1225. package/dist/_chunks/multi-select-BdHHDrRN.js +0 -602
  1226. package/dist/_chunks/multi-select-BdHHDrRN.js.map +0 -1
  1227. package/dist/_chunks/navigation-menu-DRUi6sSj.js +0 -310
  1228. package/dist/_chunks/navigation-menu-DRUi6sSj.js.map +0 -1
  1229. package/dist/_chunks/nl-L5SuDjyl.js +0 -326
  1230. package/dist/_chunks/nl-L5SuDjyl.js.map +0 -1
  1231. package/dist/_chunks/notes-panel-ay8_lPrA.js +0 -158
  1232. package/dist/_chunks/notes-panel-ay8_lPrA.js.map +0 -1
  1233. package/dist/_chunks/notification-card-D2jiKSJJ.js +0 -259
  1234. package/dist/_chunks/notification-card-D2jiKSJJ.js.map +0 -1
  1235. package/dist/_chunks/notification-tray-AEun6DN2.js +0 -464
  1236. package/dist/_chunks/notification-tray-AEun6DN2.js.map +0 -1
  1237. package/dist/_chunks/number-input-DxphVG_A.js +0 -350
  1238. package/dist/_chunks/number-input-DxphVG_A.js.map +0 -1
  1239. package/dist/_chunks/operator-hero-CR0Rqh4-.js +0 -202
  1240. package/dist/_chunks/operator-hero-CR0Rqh4-.js.map +0 -1
  1241. package/dist/_chunks/pagination-D58kglCr.js +0 -486
  1242. package/dist/_chunks/pagination-D58kglCr.js.map +0 -1
  1243. package/dist/_chunks/patient-details-Dlhqb5ig.js +0 -675
  1244. package/dist/_chunks/patient-details-Dlhqb5ig.js.map +0 -1
  1245. package/dist/_chunks/patient-search-Be6cLrHR.js +0 -1167
  1246. package/dist/_chunks/patient-search-Be6cLrHR.js.map +0 -1
  1247. package/dist/_chunks/patient-shell-DV3XEtIB.js +0 -162
  1248. package/dist/_chunks/patient-shell-DV3XEtIB.js.map +0 -1
  1249. package/dist/_chunks/patient-summary-card-WySCMwwA.js +0 -437
  1250. package/dist/_chunks/patient-summary-card-WySCMwwA.js.map +0 -1
  1251. package/dist/_chunks/patient-table-CHxf3Oqk.js +0 -1110
  1252. package/dist/_chunks/patient-table-CHxf3Oqk.js.map +0 -1
  1253. package/dist/_chunks/payment-form-CxqIXqw7.js +0 -690
  1254. package/dist/_chunks/payment-form-CxqIXqw7.js.map +0 -1
  1255. package/dist/_chunks/payment-request-card-BcZJwu9z.js +0 -467
  1256. package/dist/_chunks/payment-request-card-BcZJwu9z.js.map +0 -1
  1257. package/dist/_chunks/pdf-viewer-QfebdLOd.js +0 -1005
  1258. package/dist/_chunks/pdf-viewer-QfebdLOd.js.map +0 -1
  1259. package/dist/_chunks/pencil-CfQX-0Qc.js +0 -21
  1260. package/dist/_chunks/pencil-CfQX-0Qc.js.map +0 -1
  1261. package/dist/_chunks/periodontal-chart-card-hRRJY1NN.js +0 -455
  1262. package/dist/_chunks/periodontal-chart-card-hRRJY1NN.js.map +0 -1
  1263. package/dist/_chunks/phone-Bi5yUm4I.js +0 -20
  1264. package/dist/_chunks/phone-Bi5yUm4I.js.map +0 -1
  1265. package/dist/_chunks/phone-input-DjU-XmO_.js +0 -580
  1266. package/dist/_chunks/phone-input-DjU-XmO_.js.map +0 -1
  1267. package/dist/_chunks/pl-YAn5z2wR.js +0 -514
  1268. package/dist/_chunks/pl-YAn5z2wR.js.map +0 -1
  1269. package/dist/_chunks/plus-CYKNmfuA.js +0 -15
  1270. package/dist/_chunks/plus-CYKNmfuA.js.map +0 -1
  1271. package/dist/_chunks/popover-B2qCDhJC.js +0 -302
  1272. package/dist/_chunks/popover-B2qCDhJC.js.map +0 -1
  1273. package/dist/_chunks/practice-results-C6qDfxos.js +0 -1609
  1274. package/dist/_chunks/practice-results-C6qDfxos.js.map +0 -1
  1275. package/dist/_chunks/pregnancy-dating-CRVWswD-.js +0 -421
  1276. package/dist/_chunks/pregnancy-dating-CRVWswD-.js.map +0 -1
  1277. package/dist/_chunks/pregnancy-weight-gain-BUNpTsH-.js +0 -322
  1278. package/dist/_chunks/pregnancy-weight-gain-BUNpTsH-.js.map +0 -1
  1279. package/dist/_chunks/printer-CeVEWfQq.js +0 -22
  1280. package/dist/_chunks/printer-CeVEWfQq.js.map +0 -1
  1281. package/dist/_chunks/privacy-lock-BzMLQu-j.js +0 -197
  1282. package/dist/_chunks/privacy-lock-BzMLQu-j.js.map +0 -1
  1283. package/dist/_chunks/product-hub-panel-e6pW220e.js +0 -638
  1284. package/dist/_chunks/product-hub-panel-e6pW220e.js.map +0 -1
  1285. package/dist/_chunks/pt-D9xdT5KQ.js +0 -370
  1286. package/dist/_chunks/pt-D9xdT5KQ.js.map +0 -1
  1287. package/dist/_chunks/public-footer.agent-D0cFbjWl.js +0 -596
  1288. package/dist/_chunks/public-footer.agent-D0cFbjWl.js.map +0 -1
  1289. package/dist/_chunks/public-header.agent-DqkqA-ca.js +0 -597
  1290. package/dist/_chunks/public-header.agent-DqkqA-ca.js.map +0 -1
  1291. package/dist/_chunks/radio-group-BPt7pKZW.js +0 -167
  1292. package/dist/_chunks/radio-group-BPt7pKZW.js.map +0 -1
  1293. package/dist/_chunks/radiograph-panel.agent-CAX-C3g3.js +0 -558
  1294. package/dist/_chunks/radiograph-panel.agent-CAX-C3g3.js.map +0 -1
  1295. package/dist/_chunks/rating-BRD7O74e.js +0 -171
  1296. package/dist/_chunks/rating-BRD7O74e.js.map +0 -1
  1297. package/dist/_chunks/refresh-cw-CC8jSKMr.js +0 -17
  1298. package/dist/_chunks/refresh-cw-CC8jSKMr.js.map +0 -1
  1299. package/dist/_chunks/reviews-panel-Dq7LMDcH.js +0 -555
  1300. package/dist/_chunks/reviews-panel-Dq7LMDcH.js.map +0 -1
  1301. package/dist/_chunks/rich-text-editor-DlCqPixb.js +0 -2158
  1302. package/dist/_chunks/rich-text-editor-DlCqPixb.js.map +0 -1
  1303. package/dist/_chunks/ro-Cp--52bT.js +0 -361
  1304. package/dist/_chunks/ro-Cp--52bT.js.map +0 -1
  1305. package/dist/_chunks/rotate-ccw-BWANpitO.js +0 -15
  1306. package/dist/_chunks/rotate-ccw-BWANpitO.js.map +0 -1
  1307. package/dist/_chunks/ru-BM8eX_Zz.js +0 -561
  1308. package/dist/_chunks/ru-BM8eX_Zz.js.map +0 -1
  1309. package/dist/_chunks/scan-line-lGioFwLC.js +0 -18
  1310. package/dist/_chunks/scan-line-lGioFwLC.js.map +0 -1
  1311. package/dist/_chunks/scroll-area-5wNK0Cyz.js +0 -169
  1312. package/dist/_chunks/scroll-area-5wNK0Cyz.js.map +0 -1
  1313. package/dist/_chunks/search-BonnQsHv.js +0 -15
  1314. package/dist/_chunks/search-BonnQsHv.js.map +0 -1
  1315. package/dist/_chunks/search-bar-C_T3pBJn.js +0 -612
  1316. package/dist/_chunks/search-bar-C_T3pBJn.js.map +0 -1
  1317. package/dist/_chunks/search-input-DQvGxR74.js +0 -237
  1318. package/dist/_chunks/search-input-DQvGxR74.js.map +0 -1
  1319. package/dist/_chunks/select-DMLG44F5.js +0 -430
  1320. package/dist/_chunks/select-DMLG44F5.js.map +0 -1
  1321. package/dist/_chunks/send-CySZIRPJ.js +0 -21
  1322. package/dist/_chunks/send-CySZIRPJ.js.map +0 -1
  1323. package/dist/_chunks/session-countdown-X1Ki6i0M.js +0 -214
  1324. package/dist/_chunks/session-countdown-X1Ki6i0M.js.map +0 -1
  1325. package/dist/_chunks/settings-ca2Yi9R8.js +0 -21
  1326. package/dist/_chunks/settings-ca2Yi9R8.js.map +0 -1
  1327. package/dist/_chunks/sheet-BxsE7eQm.js +0 -285
  1328. package/dist/_chunks/sheet-BxsE7eQm.js.map +0 -1
  1329. package/dist/_chunks/shield-check-BjCGH_Sr.js +0 -21
  1330. package/dist/_chunks/shield-check-BjCGH_Sr.js.map +0 -1
  1331. package/dist/_chunks/sidebar-DY9jGjgt.js +0 -1299
  1332. package/dist/_chunks/sidebar-DY9jGjgt.js.map +0 -1
  1333. package/dist/_chunks/sign-document-By6hMOra.js +0 -370
  1334. package/dist/_chunks/sign-document-By6hMOra.js.map +0 -1
  1335. package/dist/_chunks/signature-field-Dy1JRjzE.js +0 -197
  1336. package/dist/_chunks/signature-field-Dy1JRjzE.js.map +0 -1
  1337. package/dist/_chunks/smart-date-CWikAqZx.js +0 -114
  1338. package/dist/_chunks/smart-date-CWikAqZx.js.map +0 -1
  1339. package/dist/_chunks/sparkles-CuYXqQLg.js +0 -23
  1340. package/dist/_chunks/sparkles-CuYXqQLg.js.map +0 -1
  1341. package/dist/_chunks/sq-XRpr0r49.js +0 -355
  1342. package/dist/_chunks/sq-XRpr0r49.js.map +0 -1
  1343. package/dist/_chunks/square-CZoGU14v.js +0 -14
  1344. package/dist/_chunks/square-CZoGU14v.js.map +0 -1
  1345. package/dist/_chunks/square-check-big-Jr-0202D.js +0 -18
  1346. package/dist/_chunks/square-check-big-Jr-0202D.js.map +0 -1
  1347. package/dist/_chunks/star-vav0SJ9e.js +0 -20
  1348. package/dist/_chunks/star-vav0SJ9e.js.map +0 -1
  1349. package/dist/_chunks/stepper-accordion-DC-H-8v4.js +0 -247
  1350. package/dist/_chunks/stepper-accordion-DC-H-8v4.js.map +0 -1
  1351. package/dist/_chunks/stethoscope-DT5qCW8Y.js +0 -18
  1352. package/dist/_chunks/stethoscope-DT5qCW8Y.js.map +0 -1
  1353. package/dist/_chunks/streaming-text-BB9mvK4m.js +0 -131
  1354. package/dist/_chunks/streaming-text-BB9mvK4m.js.map +0 -1
  1355. package/dist/_chunks/subDays-BcYv1Lxi.js +0 -8
  1356. package/dist/_chunks/subDays-BcYv1Lxi.js.map +0 -1
  1357. package/dist/_chunks/sun-BuXE0xUS.js +0 -38
  1358. package/dist/_chunks/sun-BuXE0xUS.js.map +0 -1
  1359. package/dist/_chunks/sv-Z3APomE8.js +0 -376
  1360. package/dist/_chunks/sv-Z3APomE8.js.map +0 -1
  1361. package/dist/_chunks/tab-bar-Bv9nGNdO.js +0 -262
  1362. package/dist/_chunks/tab-bar-Bv9nGNdO.js.map +0 -1
  1363. package/dist/_chunks/tabs-BxcOziCo.js +0 -408
  1364. package/dist/_chunks/tabs-BxcOziCo.js.map +0 -1
  1365. package/dist/_chunks/tag-BQXwuJq1.js +0 -258
  1366. package/dist/_chunks/tag-BQXwuJq1.js.map +0 -1
  1367. package/dist/_chunks/task-card-BwY9jaV1.js +0 -124
  1368. package/dist/_chunks/task-card-BwY9jaV1.js.map +0 -1
  1369. package/dist/_chunks/task-tray-qOEQflu4.js +0 -251
  1370. package/dist/_chunks/task-tray-qOEQflu4.js.map +0 -1
  1371. package/dist/_chunks/text-input-B-OWQ1Je.js +0 -283
  1372. package/dist/_chunks/text-input-B-OWQ1Je.js.map +0 -1
  1373. package/dist/_chunks/theme-toggle-XB6o_lgs.js +0 -367
  1374. package/dist/_chunks/theme-toggle-XB6o_lgs.js.map +0 -1
  1375. package/dist/_chunks/timeline-CqA4nKTI.js +0 -294
  1376. package/dist/_chunks/timeline-CqA4nKTI.js.map +0 -1
  1377. package/dist/_chunks/toast.agent-57UzyR9U.js +0 -1005
  1378. package/dist/_chunks/toast.agent-57UzyR9U.js.map +0 -1
  1379. package/dist/_chunks/tooth-scheme-BhQoPNBD.js +0 -2131
  1380. package/dist/_chunks/tooth-scheme-BhQoPNBD.js.map +0 -1
  1381. package/dist/_chunks/tr-e0-P4FON.js +0 -378
  1382. package/dist/_chunks/tr-e0-P4FON.js.map +0 -1
  1383. package/dist/_chunks/transaction-chip-CscoQbxF.js +0 -225
  1384. package/dist/_chunks/transaction-chip-CscoQbxF.js.map +0 -1
  1385. package/dist/_chunks/transcript-panel-3THQX6nJ.js +0 -362
  1386. package/dist/_chunks/transcript-panel-3THQX6nJ.js.map +0 -1
  1387. package/dist/_chunks/trash-2-rPAKaRgB.js +0 -18
  1388. package/dist/_chunks/trash-2-rPAKaRgB.js.map +0 -1
  1389. package/dist/_chunks/triangle-alert-CBPUIzQo.js +0 -22
  1390. package/dist/_chunks/triangle-alert-CBPUIzQo.js.map +0 -1
  1391. package/dist/_chunks/unit-converter-YEpD9evj.js +0 -337
  1392. package/dist/_chunks/unit-converter-YEpD9evj.js.map +0 -1
  1393. package/dist/_chunks/use-password-requirements-BXvS2MBS.js +0 -453
  1394. package/dist/_chunks/use-password-requirements-BXvS2MBS.js.map +0 -1
  1395. package/dist/_chunks/user-CPxpqFjJ.js +0 -15
  1396. package/dist/_chunks/user-CPxpqFjJ.js.map +0 -1
  1397. package/dist/_chunks/user-cog-BS_qc8nA.js +0 -24
  1398. package/dist/_chunks/user-cog-BS_qc8nA.js.map +0 -1
  1399. package/dist/_chunks/users-MBVtUzwd.js +0 -17
  1400. package/dist/_chunks/users-MBVtUzwd.js.map +0 -1
  1401. package/dist/_chunks/video-BAeICxCT.js +0 -21
  1402. package/dist/_chunks/video-BAeICxCT.js.map +0 -1
  1403. package/dist/_chunks/warning-stack--sTrrBDA.js +0 -268
  1404. package/dist/_chunks/warning-stack--sTrrBDA.js.map +0 -1
  1405. package/dist/_chunks/workflow-map-Dy8mLCqF.js +0 -1368
  1406. package/dist/_chunks/workflow-map-Dy8mLCqF.js.map +0 -1
  1407. package/dist/_chunks/x-CCcI3eJp.js +0 -15
  1408. package/dist/_chunks/x-CCcI3eJp.js.map +0 -1
  1409. package/dist/_chunks/zh-CN-B-igM5gY.js +0 -388
  1410. package/dist/_chunks/zh-CN-B-igM5gY.js.map +0 -1
  1411. package/dist/_chunks/zoom-out-CgVtf2Wx.js +0 -29
  1412. package/dist/_chunks/zoom-out-CgVtf2Wx.js.map +0 -1
  1413. package/dist/components/ai-tools-rail/ai-tools-rail.agent.d.ts +0 -4
  1414. package/dist/components/ai-tools-rail/ai-tools-rail.agent.d.ts.map +0 -1
  1415. package/dist/components/ai-tools-rail/ai-tools-rail.d.ts +0 -143
  1416. package/dist/components/ai-tools-rail/ai-tools-rail.d.ts.map +0 -1
  1417. package/dist/components/ai-tools-rail/index.d.ts +0 -4
  1418. package/dist/components/ai-tools-rail/index.d.ts.map +0 -1
  1419. package/dist/components/ai-tools-rail/index.js +0 -6
  1420. package/dist/components/anatomy-scheme/anatomy-face-paths.d.ts +0 -15
  1421. package/dist/components/anatomy-scheme/anatomy-face-paths.d.ts.map +0 -1
  1422. package/dist/components/anatomy-scheme/anatomy-muscle-paths.d.ts +0 -20
  1423. package/dist/components/anatomy-scheme/anatomy-muscle-paths.d.ts.map +0 -1
  1424. package/dist/components/anatomy-scheme/anatomy-scheme-data.d.ts +0 -121
  1425. package/dist/components/anatomy-scheme/anatomy-scheme-data.d.ts.map +0 -1
  1426. package/dist/components/anatomy-scheme/anatomy-scheme.agent.d.ts +0 -6
  1427. package/dist/components/anatomy-scheme/anatomy-scheme.agent.d.ts.map +0 -1
  1428. package/dist/components/anatomy-scheme/anatomy-scheme.d.ts +0 -69
  1429. package/dist/components/anatomy-scheme/anatomy-scheme.d.ts.map +0 -1
  1430. package/dist/components/anatomy-scheme/index.d.ts +0 -6
  1431. package/dist/components/anatomy-scheme/index.d.ts.map +0 -1
  1432. package/dist/components/anatomy-scheme/index.js +0 -17
  1433. /package/dist/components/{ai-tools-rail → address-fields}/index.js.map +0 -0
  1434. /package/dist/components/{anatomy-scheme → city-input}/index.js.map +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"carousel.agent-4v8Emr9E.js","sources":["../../node_modules/embla-carousel-reactive-utils/esm/embla-carousel-reactive-utils.esm.js","../../node_modules/embla-carousel/esm/embla-carousel.esm.js","../../node_modules/embla-carousel-react/esm/embla-carousel-react.esm.js","../../src/components/carousel/carousel.tsx","../../src/components/carousel/carousel.agent.ts"],"sourcesContent":["function isObject(subject) {\n return Object.prototype.toString.call(subject) === '[object Object]';\n}\nfunction isRecord(subject) {\n return isObject(subject) || Array.isArray(subject);\n}\nfunction canUseDOM() {\n return !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n}\nfunction areOptionsEqual(optionsA, optionsB) {\n const optionsAKeys = Object.keys(optionsA);\n const optionsBKeys = Object.keys(optionsB);\n if (optionsAKeys.length !== optionsBKeys.length) return false;\n const breakpointsA = JSON.stringify(Object.keys(optionsA.breakpoints || {}));\n const breakpointsB = JSON.stringify(Object.keys(optionsB.breakpoints || {}));\n if (breakpointsA !== breakpointsB) return false;\n return optionsAKeys.every(key => {\n const valueA = optionsA[key];\n const valueB = optionsB[key];\n if (typeof valueA === 'function') return `${valueA}` === `${valueB}`;\n if (!isRecord(valueA) || !isRecord(valueB)) return valueA === valueB;\n return areOptionsEqual(valueA, valueB);\n });\n}\nfunction sortAndMapPluginToOptions(plugins) {\n return plugins.concat().sort((a, b) => a.name > b.name ? 1 : -1).map(plugin => plugin.options);\n}\nfunction arePluginsEqual(pluginsA, pluginsB) {\n if (pluginsA.length !== pluginsB.length) return false;\n const optionsA = sortAndMapPluginToOptions(pluginsA);\n const optionsB = sortAndMapPluginToOptions(pluginsB);\n return optionsA.every((optionA, index) => {\n const optionB = optionsB[index];\n return areOptionsEqual(optionA, optionB);\n });\n}\n\nexport { areOptionsEqual, arePluginsEqual, canUseDOM, sortAndMapPluginToOptions };\n//# sourceMappingURL=embla-carousel-reactive-utils.esm.js.map\n","function isNumber(subject) {\n return typeof subject === 'number';\n}\nfunction isString(subject) {\n return typeof subject === 'string';\n}\nfunction isBoolean(subject) {\n return typeof subject === 'boolean';\n}\nfunction isObject(subject) {\n return Object.prototype.toString.call(subject) === '[object Object]';\n}\nfunction mathAbs(n) {\n return Math.abs(n);\n}\nfunction mathSign(n) {\n return Math.sign(n);\n}\nfunction deltaAbs(valueB, valueA) {\n return mathAbs(valueB - valueA);\n}\nfunction factorAbs(valueB, valueA) {\n if (valueB === 0 || valueA === 0) return 0;\n if (mathAbs(valueB) <= mathAbs(valueA)) return 0;\n const diff = deltaAbs(mathAbs(valueB), mathAbs(valueA));\n return mathAbs(diff / valueB);\n}\nfunction roundToTwoDecimals(num) {\n return Math.round(num * 100) / 100;\n}\nfunction arrayKeys(array) {\n return objectKeys(array).map(Number);\n}\nfunction arrayLast(array) {\n return array[arrayLastIndex(array)];\n}\nfunction arrayLastIndex(array) {\n return Math.max(0, array.length - 1);\n}\nfunction arrayIsLastIndex(array, index) {\n return index === arrayLastIndex(array);\n}\nfunction arrayFromNumber(n, startAt = 0) {\n return Array.from(Array(n), (_, i) => startAt + i);\n}\nfunction objectKeys(object) {\n return Object.keys(object);\n}\nfunction objectsMergeDeep(objectA, objectB) {\n return [objectA, objectB].reduce((mergedObjects, currentObject) => {\n objectKeys(currentObject).forEach(key => {\n const valueA = mergedObjects[key];\n const valueB = currentObject[key];\n const areObjects = isObject(valueA) && isObject(valueB);\n mergedObjects[key] = areObjects ? objectsMergeDeep(valueA, valueB) : valueB;\n });\n return mergedObjects;\n }, {});\n}\nfunction isMouseEvent(evt, ownerWindow) {\n return typeof ownerWindow.MouseEvent !== 'undefined' && evt instanceof ownerWindow.MouseEvent;\n}\n\nfunction Alignment(align, viewSize) {\n const predefined = {\n start,\n center,\n end\n };\n function start() {\n return 0;\n }\n function center(n) {\n return end(n) / 2;\n }\n function end(n) {\n return viewSize - n;\n }\n function measure(n, index) {\n if (isString(align)) return predefined[align](n);\n return align(viewSize, n, index);\n }\n const self = {\n measure\n };\n return self;\n}\n\nfunction EventStore() {\n let listeners = [];\n function add(node, type, handler, options = {\n passive: true\n }) {\n let removeListener;\n if ('addEventListener' in node) {\n node.addEventListener(type, handler, options);\n removeListener = () => node.removeEventListener(type, handler, options);\n } else {\n const legacyMediaQueryList = node;\n legacyMediaQueryList.addListener(handler);\n removeListener = () => legacyMediaQueryList.removeListener(handler);\n }\n listeners.push(removeListener);\n return self;\n }\n function clear() {\n listeners = listeners.filter(remove => remove());\n }\n const self = {\n add,\n clear\n };\n return self;\n}\n\nfunction Animations(ownerDocument, ownerWindow, update, render) {\n const documentVisibleHandler = EventStore();\n const fixedTimeStep = 1000 / 60;\n let lastTimeStamp = null;\n let accumulatedTime = 0;\n let animationId = 0;\n function init() {\n documentVisibleHandler.add(ownerDocument, 'visibilitychange', () => {\n if (ownerDocument.hidden) reset();\n });\n }\n function destroy() {\n stop();\n documentVisibleHandler.clear();\n }\n function animate(timeStamp) {\n if (!animationId) return;\n if (!lastTimeStamp) {\n lastTimeStamp = timeStamp;\n update();\n update();\n }\n const timeElapsed = timeStamp - lastTimeStamp;\n lastTimeStamp = timeStamp;\n accumulatedTime += timeElapsed;\n while (accumulatedTime >= fixedTimeStep) {\n update();\n accumulatedTime -= fixedTimeStep;\n }\n const alpha = accumulatedTime / fixedTimeStep;\n render(alpha);\n if (animationId) {\n animationId = ownerWindow.requestAnimationFrame(animate);\n }\n }\n function start() {\n if (animationId) return;\n animationId = ownerWindow.requestAnimationFrame(animate);\n }\n function stop() {\n ownerWindow.cancelAnimationFrame(animationId);\n lastTimeStamp = null;\n accumulatedTime = 0;\n animationId = 0;\n }\n function reset() {\n lastTimeStamp = null;\n accumulatedTime = 0;\n }\n const self = {\n init,\n destroy,\n start,\n stop,\n update,\n render\n };\n return self;\n}\n\nfunction Axis(axis, contentDirection) {\n const isRightToLeft = contentDirection === 'rtl';\n const isVertical = axis === 'y';\n const scroll = isVertical ? 'y' : 'x';\n const cross = isVertical ? 'x' : 'y';\n const sign = !isVertical && isRightToLeft ? -1 : 1;\n const startEdge = getStartEdge();\n const endEdge = getEndEdge();\n function measureSize(nodeRect) {\n const {\n height,\n width\n } = nodeRect;\n return isVertical ? height : width;\n }\n function getStartEdge() {\n if (isVertical) return 'top';\n return isRightToLeft ? 'right' : 'left';\n }\n function getEndEdge() {\n if (isVertical) return 'bottom';\n return isRightToLeft ? 'left' : 'right';\n }\n function direction(n) {\n return n * sign;\n }\n const self = {\n scroll,\n cross,\n startEdge,\n endEdge,\n measureSize,\n direction\n };\n return self;\n}\n\nfunction Limit(min = 0, max = 0) {\n const length = mathAbs(min - max);\n function reachedMin(n) {\n return n < min;\n }\n function reachedMax(n) {\n return n > max;\n }\n function reachedAny(n) {\n return reachedMin(n) || reachedMax(n);\n }\n function constrain(n) {\n if (!reachedAny(n)) return n;\n return reachedMin(n) ? min : max;\n }\n function removeOffset(n) {\n if (!length) return n;\n return n - length * Math.ceil((n - max) / length);\n }\n const self = {\n length,\n max,\n min,\n constrain,\n reachedAny,\n reachedMax,\n reachedMin,\n removeOffset\n };\n return self;\n}\n\nfunction Counter(max, start, loop) {\n const {\n constrain\n } = Limit(0, max);\n const loopEnd = max + 1;\n let counter = withinLimit(start);\n function withinLimit(n) {\n return !loop ? constrain(n) : mathAbs((loopEnd + n) % loopEnd);\n }\n function get() {\n return counter;\n }\n function set(n) {\n counter = withinLimit(n);\n return self;\n }\n function add(n) {\n return clone().set(get() + n);\n }\n function clone() {\n return Counter(max, get(), loop);\n }\n const self = {\n get,\n set,\n add,\n clone\n };\n return self;\n}\n\nfunction DragHandler(axis, rootNode, ownerDocument, ownerWindow, target, dragTracker, location, animation, scrollTo, scrollBody, scrollTarget, index, eventHandler, percentOfView, dragFree, dragThreshold, skipSnaps, baseFriction, watchDrag) {\n const {\n cross: crossAxis,\n direction\n } = axis;\n const focusNodes = ['INPUT', 'SELECT', 'TEXTAREA'];\n const nonPassiveEvent = {\n passive: false\n };\n const initEvents = EventStore();\n const dragEvents = EventStore();\n const goToNextThreshold = Limit(50, 225).constrain(percentOfView.measure(20));\n const snapForceBoost = {\n mouse: 300,\n touch: 400\n };\n const freeForceBoost = {\n mouse: 500,\n touch: 600\n };\n const baseSpeed = dragFree ? 43 : 25;\n let isMoving = false;\n let startScroll = 0;\n let startCross = 0;\n let pointerIsDown = false;\n let preventScroll = false;\n let preventClick = false;\n let isMouse = false;\n function init(emblaApi) {\n if (!watchDrag) return;\n function downIfAllowed(evt) {\n if (isBoolean(watchDrag) || watchDrag(emblaApi, evt)) down(evt);\n }\n const node = rootNode;\n initEvents.add(node, 'dragstart', evt => evt.preventDefault(), nonPassiveEvent).add(node, 'touchmove', () => undefined, nonPassiveEvent).add(node, 'touchend', () => undefined).add(node, 'touchstart', downIfAllowed).add(node, 'mousedown', downIfAllowed).add(node, 'touchcancel', up).add(node, 'contextmenu', up).add(node, 'click', click, true);\n }\n function destroy() {\n initEvents.clear();\n dragEvents.clear();\n }\n function addDragEvents() {\n const node = isMouse ? ownerDocument : rootNode;\n dragEvents.add(node, 'touchmove', move, nonPassiveEvent).add(node, 'touchend', up).add(node, 'mousemove', move, nonPassiveEvent).add(node, 'mouseup', up);\n }\n function isFocusNode(node) {\n const nodeName = node.nodeName || '';\n return focusNodes.includes(nodeName);\n }\n function forceBoost() {\n const boost = dragFree ? freeForceBoost : snapForceBoost;\n const type = isMouse ? 'mouse' : 'touch';\n return boost[type];\n }\n function allowedForce(force, targetChanged) {\n const next = index.add(mathSign(force) * -1);\n const baseForce = scrollTarget.byDistance(force, !dragFree).distance;\n if (dragFree || mathAbs(force) < goToNextThreshold) return baseForce;\n if (skipSnaps && targetChanged) return baseForce * 0.5;\n return scrollTarget.byIndex(next.get(), 0).distance;\n }\n function down(evt) {\n const isMouseEvt = isMouseEvent(evt, ownerWindow);\n isMouse = isMouseEvt;\n preventClick = dragFree && isMouseEvt && !evt.buttons && isMoving;\n isMoving = deltaAbs(target.get(), location.get()) >= 2;\n if (isMouseEvt && evt.button !== 0) return;\n if (isFocusNode(evt.target)) return;\n pointerIsDown = true;\n dragTracker.pointerDown(evt);\n scrollBody.useFriction(0).useDuration(0);\n target.set(location);\n addDragEvents();\n startScroll = dragTracker.readPoint(evt);\n startCross = dragTracker.readPoint(evt, crossAxis);\n eventHandler.emit('pointerDown');\n }\n function move(evt) {\n const isTouchEvt = !isMouseEvent(evt, ownerWindow);\n if (isTouchEvt && evt.touches.length >= 2) return up(evt);\n const lastScroll = dragTracker.readPoint(evt);\n const lastCross = dragTracker.readPoint(evt, crossAxis);\n const diffScroll = deltaAbs(lastScroll, startScroll);\n const diffCross = deltaAbs(lastCross, startCross);\n if (!preventScroll && !isMouse) {\n if (!evt.cancelable) return up(evt);\n preventScroll = diffScroll > diffCross;\n if (!preventScroll) return up(evt);\n }\n const diff = dragTracker.pointerMove(evt);\n if (diffScroll > dragThreshold) preventClick = true;\n scrollBody.useFriction(0.3).useDuration(0.75);\n animation.start();\n target.add(direction(diff));\n evt.preventDefault();\n }\n function up(evt) {\n const currentLocation = scrollTarget.byDistance(0, false);\n const targetChanged = currentLocation.index !== index.get();\n const rawForce = dragTracker.pointerUp(evt) * forceBoost();\n const force = allowedForce(direction(rawForce), targetChanged);\n const forceFactor = factorAbs(rawForce, force);\n const speed = baseSpeed - 10 * forceFactor;\n const friction = baseFriction + forceFactor / 50;\n preventScroll = false;\n pointerIsDown = false;\n dragEvents.clear();\n scrollBody.useDuration(speed).useFriction(friction);\n scrollTo.distance(force, !dragFree);\n isMouse = false;\n eventHandler.emit('pointerUp');\n }\n function click(evt) {\n if (preventClick) {\n evt.stopPropagation();\n evt.preventDefault();\n preventClick = false;\n }\n }\n function pointerDown() {\n return pointerIsDown;\n }\n const self = {\n init,\n destroy,\n pointerDown\n };\n return self;\n}\n\nfunction DragTracker(axis, ownerWindow) {\n const logInterval = 170;\n let startEvent;\n let lastEvent;\n function readTime(evt) {\n return evt.timeStamp;\n }\n function readPoint(evt, evtAxis) {\n const property = evtAxis || axis.scroll;\n const coord = `client${property === 'x' ? 'X' : 'Y'}`;\n return (isMouseEvent(evt, ownerWindow) ? evt : evt.touches[0])[coord];\n }\n function pointerDown(evt) {\n startEvent = evt;\n lastEvent = evt;\n return readPoint(evt);\n }\n function pointerMove(evt) {\n const diff = readPoint(evt) - readPoint(lastEvent);\n const expired = readTime(evt) - readTime(startEvent) > logInterval;\n lastEvent = evt;\n if (expired) startEvent = evt;\n return diff;\n }\n function pointerUp(evt) {\n if (!startEvent || !lastEvent) return 0;\n const diffDrag = readPoint(lastEvent) - readPoint(startEvent);\n const diffTime = readTime(evt) - readTime(startEvent);\n const expired = readTime(evt) - readTime(lastEvent) > logInterval;\n const force = diffDrag / diffTime;\n const isFlick = diffTime && !expired && mathAbs(force) > 0.1;\n return isFlick ? force : 0;\n }\n const self = {\n pointerDown,\n pointerMove,\n pointerUp,\n readPoint\n };\n return self;\n}\n\nfunction NodeRects() {\n function measure(node) {\n const {\n offsetTop,\n offsetLeft,\n offsetWidth,\n offsetHeight\n } = node;\n const offset = {\n top: offsetTop,\n right: offsetLeft + offsetWidth,\n bottom: offsetTop + offsetHeight,\n left: offsetLeft,\n width: offsetWidth,\n height: offsetHeight\n };\n return offset;\n }\n const self = {\n measure\n };\n return self;\n}\n\nfunction PercentOfView(viewSize) {\n function measure(n) {\n return viewSize * (n / 100);\n }\n const self = {\n measure\n };\n return self;\n}\n\nfunction ResizeHandler(container, eventHandler, ownerWindow, slides, axis, watchResize, nodeRects) {\n const observeNodes = [container].concat(slides);\n let resizeObserver;\n let containerSize;\n let slideSizes = [];\n let destroyed = false;\n function readSize(node) {\n return axis.measureSize(nodeRects.measure(node));\n }\n function init(emblaApi) {\n if (!watchResize) return;\n containerSize = readSize(container);\n slideSizes = slides.map(readSize);\n function defaultCallback(entries) {\n for (const entry of entries) {\n if (destroyed) return;\n const isContainer = entry.target === container;\n const slideIndex = slides.indexOf(entry.target);\n const lastSize = isContainer ? containerSize : slideSizes[slideIndex];\n const newSize = readSize(isContainer ? container : slides[slideIndex]);\n const diffSize = mathAbs(newSize - lastSize);\n if (diffSize >= 0.5) {\n emblaApi.reInit();\n eventHandler.emit('resize');\n break;\n }\n }\n }\n resizeObserver = new ResizeObserver(entries => {\n if (isBoolean(watchResize) || watchResize(emblaApi, entries)) {\n defaultCallback(entries);\n }\n });\n ownerWindow.requestAnimationFrame(() => {\n observeNodes.forEach(node => resizeObserver.observe(node));\n });\n }\n function destroy() {\n destroyed = true;\n if (resizeObserver) resizeObserver.disconnect();\n }\n const self = {\n init,\n destroy\n };\n return self;\n}\n\nfunction ScrollBody(location, offsetLocation, previousLocation, target, baseDuration, baseFriction) {\n let scrollVelocity = 0;\n let scrollDirection = 0;\n let scrollDuration = baseDuration;\n let scrollFriction = baseFriction;\n let rawLocation = location.get();\n let rawLocationPrevious = 0;\n function seek() {\n const displacement = target.get() - location.get();\n const isInstant = !scrollDuration;\n let scrollDistance = 0;\n if (isInstant) {\n scrollVelocity = 0;\n previousLocation.set(target);\n location.set(target);\n scrollDistance = displacement;\n } else {\n previousLocation.set(location);\n scrollVelocity += displacement / scrollDuration;\n scrollVelocity *= scrollFriction;\n rawLocation += scrollVelocity;\n location.add(scrollVelocity);\n scrollDistance = rawLocation - rawLocationPrevious;\n }\n scrollDirection = mathSign(scrollDistance);\n rawLocationPrevious = rawLocation;\n return self;\n }\n function settled() {\n const diff = target.get() - offsetLocation.get();\n return mathAbs(diff) < 0.001;\n }\n function duration() {\n return scrollDuration;\n }\n function direction() {\n return scrollDirection;\n }\n function velocity() {\n return scrollVelocity;\n }\n function useBaseDuration() {\n return useDuration(baseDuration);\n }\n function useBaseFriction() {\n return useFriction(baseFriction);\n }\n function useDuration(n) {\n scrollDuration = n;\n return self;\n }\n function useFriction(n) {\n scrollFriction = n;\n return self;\n }\n const self = {\n direction,\n duration,\n velocity,\n seek,\n settled,\n useBaseFriction,\n useBaseDuration,\n useFriction,\n useDuration\n };\n return self;\n}\n\nfunction ScrollBounds(limit, location, target, scrollBody, percentOfView) {\n const pullBackThreshold = percentOfView.measure(10);\n const edgeOffsetTolerance = percentOfView.measure(50);\n const frictionLimit = Limit(0.1, 0.99);\n let disabled = false;\n function shouldConstrain() {\n if (disabled) return false;\n if (!limit.reachedAny(target.get())) return false;\n if (!limit.reachedAny(location.get())) return false;\n return true;\n }\n function constrain(pointerDown) {\n if (!shouldConstrain()) return;\n const edge = limit.reachedMin(location.get()) ? 'min' : 'max';\n const diffToEdge = mathAbs(limit[edge] - location.get());\n const diffToTarget = target.get() - location.get();\n const friction = frictionLimit.constrain(diffToEdge / edgeOffsetTolerance);\n target.subtract(diffToTarget * friction);\n if (!pointerDown && mathAbs(diffToTarget) < pullBackThreshold) {\n target.set(limit.constrain(target.get()));\n scrollBody.useDuration(25).useBaseFriction();\n }\n }\n function toggleActive(active) {\n disabled = !active;\n }\n const self = {\n shouldConstrain,\n constrain,\n toggleActive\n };\n return self;\n}\n\nfunction ScrollContain(viewSize, contentSize, snapsAligned, containScroll, pixelTolerance) {\n const scrollBounds = Limit(-contentSize + viewSize, 0);\n const snapsBounded = measureBounded();\n const scrollContainLimit = findScrollContainLimit();\n const snapsContained = measureContained();\n function usePixelTolerance(bound, snap) {\n return deltaAbs(bound, snap) <= 1;\n }\n function findScrollContainLimit() {\n const startSnap = snapsBounded[0];\n const endSnap = arrayLast(snapsBounded);\n const min = snapsBounded.lastIndexOf(startSnap);\n const max = snapsBounded.indexOf(endSnap) + 1;\n return Limit(min, max);\n }\n function measureBounded() {\n return snapsAligned.map((snapAligned, index) => {\n const {\n min,\n max\n } = scrollBounds;\n const snap = scrollBounds.constrain(snapAligned);\n const isFirst = !index;\n const isLast = arrayIsLastIndex(snapsAligned, index);\n if (isFirst) return max;\n if (isLast) return min;\n if (usePixelTolerance(min, snap)) return min;\n if (usePixelTolerance(max, snap)) return max;\n return snap;\n }).map(scrollBound => parseFloat(scrollBound.toFixed(3)));\n }\n function measureContained() {\n if (contentSize <= viewSize + pixelTolerance) return [scrollBounds.max];\n if (containScroll === 'keepSnaps') return snapsBounded;\n const {\n min,\n max\n } = scrollContainLimit;\n return snapsBounded.slice(min, max);\n }\n const self = {\n snapsContained,\n scrollContainLimit\n };\n return self;\n}\n\nfunction ScrollLimit(contentSize, scrollSnaps, loop) {\n const max = scrollSnaps[0];\n const min = loop ? max - contentSize : arrayLast(scrollSnaps);\n const limit = Limit(min, max);\n const self = {\n limit\n };\n return self;\n}\n\nfunction ScrollLooper(contentSize, limit, location, vectors) {\n const jointSafety = 0.1;\n const min = limit.min + jointSafety;\n const max = limit.max + jointSafety;\n const {\n reachedMin,\n reachedMax\n } = Limit(min, max);\n function shouldLoop(direction) {\n if (direction === 1) return reachedMax(location.get());\n if (direction === -1) return reachedMin(location.get());\n return false;\n }\n function loop(direction) {\n if (!shouldLoop(direction)) return;\n const loopDistance = contentSize * (direction * -1);\n vectors.forEach(v => v.add(loopDistance));\n }\n const self = {\n loop\n };\n return self;\n}\n\nfunction ScrollProgress(limit) {\n const {\n max,\n length\n } = limit;\n function get(n) {\n const currentLocation = n - max;\n return length ? currentLocation / -length : 0;\n }\n const self = {\n get\n };\n return self;\n}\n\nfunction ScrollSnaps(axis, alignment, containerRect, slideRects, slidesToScroll) {\n const {\n startEdge,\n endEdge\n } = axis;\n const {\n groupSlides\n } = slidesToScroll;\n const alignments = measureSizes().map(alignment.measure);\n const snaps = measureUnaligned();\n const snapsAligned = measureAligned();\n function measureSizes() {\n return groupSlides(slideRects).map(rects => arrayLast(rects)[endEdge] - rects[0][startEdge]).map(mathAbs);\n }\n function measureUnaligned() {\n return slideRects.map(rect => containerRect[startEdge] - rect[startEdge]).map(snap => -mathAbs(snap));\n }\n function measureAligned() {\n return groupSlides(snaps).map(g => g[0]).map((snap, index) => snap + alignments[index]);\n }\n const self = {\n snaps,\n snapsAligned\n };\n return self;\n}\n\nfunction SlideRegistry(containSnaps, containScroll, scrollSnaps, scrollContainLimit, slidesToScroll, slideIndexes) {\n const {\n groupSlides\n } = slidesToScroll;\n const {\n min,\n max\n } = scrollContainLimit;\n const slideRegistry = createSlideRegistry();\n function createSlideRegistry() {\n const groupedSlideIndexes = groupSlides(slideIndexes);\n const doNotContain = !containSnaps || containScroll === 'keepSnaps';\n if (scrollSnaps.length === 1) return [slideIndexes];\n if (doNotContain) return groupedSlideIndexes;\n return groupedSlideIndexes.slice(min, max).map((group, index, groups) => {\n const isFirst = !index;\n const isLast = arrayIsLastIndex(groups, index);\n if (isFirst) {\n const range = arrayLast(groups[0]) + 1;\n return arrayFromNumber(range);\n }\n if (isLast) {\n const range = arrayLastIndex(slideIndexes) - arrayLast(groups)[0] + 1;\n return arrayFromNumber(range, arrayLast(groups)[0]);\n }\n return group;\n });\n }\n const self = {\n slideRegistry\n };\n return self;\n}\n\nfunction ScrollTarget(loop, scrollSnaps, contentSize, limit, targetVector) {\n const {\n reachedAny,\n removeOffset,\n constrain\n } = limit;\n function minDistance(distances) {\n return distances.concat().sort((a, b) => mathAbs(a) - mathAbs(b))[0];\n }\n function findTargetSnap(target) {\n const distance = loop ? removeOffset(target) : constrain(target);\n const ascDiffsToSnaps = scrollSnaps.map((snap, index) => ({\n diff: shortcut(snap - distance, 0),\n index\n })).sort((d1, d2) => mathAbs(d1.diff) - mathAbs(d2.diff));\n const {\n index\n } = ascDiffsToSnaps[0];\n return {\n index,\n distance\n };\n }\n function shortcut(target, direction) {\n const targets = [target, target + contentSize, target - contentSize];\n if (!loop) return target;\n if (!direction) return minDistance(targets);\n const matchingTargets = targets.filter(t => mathSign(t) === direction);\n if (matchingTargets.length) return minDistance(matchingTargets);\n return arrayLast(targets) - contentSize;\n }\n function byIndex(index, direction) {\n const diffToSnap = scrollSnaps[index] - targetVector.get();\n const distance = shortcut(diffToSnap, direction);\n return {\n index,\n distance\n };\n }\n function byDistance(distance, snap) {\n const target = targetVector.get() + distance;\n const {\n index,\n distance: targetSnapDistance\n } = findTargetSnap(target);\n const reachedBound = !loop && reachedAny(target);\n if (!snap || reachedBound) return {\n index,\n distance\n };\n const diffToSnap = scrollSnaps[index] - targetSnapDistance;\n const snapDistance = distance + shortcut(diffToSnap, 0);\n return {\n index,\n distance: snapDistance\n };\n }\n const self = {\n byDistance,\n byIndex,\n shortcut\n };\n return self;\n}\n\nfunction ScrollTo(animation, indexCurrent, indexPrevious, scrollBody, scrollTarget, targetVector, eventHandler) {\n function scrollTo(target) {\n const distanceDiff = target.distance;\n const indexDiff = target.index !== indexCurrent.get();\n targetVector.add(distanceDiff);\n if (distanceDiff) {\n if (scrollBody.duration()) {\n animation.start();\n } else {\n animation.update();\n animation.render(1);\n animation.update();\n }\n }\n if (indexDiff) {\n indexPrevious.set(indexCurrent.get());\n indexCurrent.set(target.index);\n eventHandler.emit('select');\n }\n }\n function distance(n, snap) {\n const target = scrollTarget.byDistance(n, snap);\n scrollTo(target);\n }\n function index(n, direction) {\n const targetIndex = indexCurrent.clone().set(n);\n const target = scrollTarget.byIndex(targetIndex.get(), direction);\n scrollTo(target);\n }\n const self = {\n distance,\n index\n };\n return self;\n}\n\nfunction SlideFocus(root, slides, slideRegistry, scrollTo, scrollBody, eventStore, eventHandler, watchFocus) {\n const focusListenerOptions = {\n passive: true,\n capture: true\n };\n let lastTabPressTime = 0;\n function init(emblaApi) {\n if (!watchFocus) return;\n function defaultCallback(index) {\n const nowTime = new Date().getTime();\n const diffTime = nowTime - lastTabPressTime;\n if (diffTime > 10) return;\n eventHandler.emit('slideFocusStart');\n root.scrollLeft = 0;\n const group = slideRegistry.findIndex(group => group.includes(index));\n if (!isNumber(group)) return;\n scrollBody.useDuration(0);\n scrollTo.index(group, 0);\n eventHandler.emit('slideFocus');\n }\n eventStore.add(document, 'keydown', registerTabPress, false);\n slides.forEach((slide, slideIndex) => {\n eventStore.add(slide, 'focus', evt => {\n if (isBoolean(watchFocus) || watchFocus(emblaApi, evt)) {\n defaultCallback(slideIndex);\n }\n }, focusListenerOptions);\n });\n }\n function registerTabPress(event) {\n if (event.code === 'Tab') lastTabPressTime = new Date().getTime();\n }\n const self = {\n init\n };\n return self;\n}\n\nfunction Vector1D(initialValue) {\n let value = initialValue;\n function get() {\n return value;\n }\n function set(n) {\n value = normalizeInput(n);\n }\n function add(n) {\n value += normalizeInput(n);\n }\n function subtract(n) {\n value -= normalizeInput(n);\n }\n function normalizeInput(n) {\n return isNumber(n) ? n : n.get();\n }\n const self = {\n get,\n set,\n add,\n subtract\n };\n return self;\n}\n\nfunction Translate(axis, container) {\n const translate = axis.scroll === 'x' ? x : y;\n const containerStyle = container.style;\n let previousTarget = null;\n let disabled = false;\n function x(n) {\n return `translate3d(${n}px,0px,0px)`;\n }\n function y(n) {\n return `translate3d(0px,${n}px,0px)`;\n }\n function to(target) {\n if (disabled) return;\n const newTarget = roundToTwoDecimals(axis.direction(target));\n if (newTarget === previousTarget) return;\n containerStyle.transform = translate(newTarget);\n previousTarget = newTarget;\n }\n function toggleActive(active) {\n disabled = !active;\n }\n function clear() {\n if (disabled) return;\n containerStyle.transform = '';\n if (!container.getAttribute('style')) container.removeAttribute('style');\n }\n const self = {\n clear,\n to,\n toggleActive\n };\n return self;\n}\n\nfunction SlideLooper(axis, viewSize, contentSize, slideSizes, slideSizesWithGaps, snaps, scrollSnaps, location, slides) {\n const roundingSafety = 0.5;\n const ascItems = arrayKeys(slideSizesWithGaps);\n const descItems = arrayKeys(slideSizesWithGaps).reverse();\n const loopPoints = startPoints().concat(endPoints());\n function removeSlideSizes(indexes, from) {\n return indexes.reduce((a, i) => {\n return a - slideSizesWithGaps[i];\n }, from);\n }\n function slidesInGap(indexes, gap) {\n return indexes.reduce((a, i) => {\n const remainingGap = removeSlideSizes(a, gap);\n return remainingGap > 0 ? a.concat([i]) : a;\n }, []);\n }\n function findSlideBounds(offset) {\n return snaps.map((snap, index) => ({\n start: snap - slideSizes[index] + roundingSafety + offset,\n end: snap + viewSize - roundingSafety + offset\n }));\n }\n function findLoopPoints(indexes, offset, isEndEdge) {\n const slideBounds = findSlideBounds(offset);\n return indexes.map(index => {\n const initial = isEndEdge ? 0 : -contentSize;\n const altered = isEndEdge ? contentSize : 0;\n const boundEdge = isEndEdge ? 'end' : 'start';\n const loopPoint = slideBounds[index][boundEdge];\n return {\n index,\n loopPoint,\n slideLocation: Vector1D(-1),\n translate: Translate(axis, slides[index]),\n target: () => location.get() > loopPoint ? initial : altered\n };\n });\n }\n function startPoints() {\n const gap = scrollSnaps[0];\n const indexes = slidesInGap(descItems, gap);\n return findLoopPoints(indexes, contentSize, false);\n }\n function endPoints() {\n const gap = viewSize - scrollSnaps[0] - 1;\n const indexes = slidesInGap(ascItems, gap);\n return findLoopPoints(indexes, -contentSize, true);\n }\n function canLoop() {\n return loopPoints.every(({\n index\n }) => {\n const otherIndexes = ascItems.filter(i => i !== index);\n return removeSlideSizes(otherIndexes, viewSize) <= 0.1;\n });\n }\n function loop() {\n loopPoints.forEach(loopPoint => {\n const {\n target,\n translate,\n slideLocation\n } = loopPoint;\n const shiftLocation = target();\n if (shiftLocation === slideLocation.get()) return;\n translate.to(shiftLocation);\n slideLocation.set(shiftLocation);\n });\n }\n function clear() {\n loopPoints.forEach(loopPoint => loopPoint.translate.clear());\n }\n const self = {\n canLoop,\n clear,\n loop,\n loopPoints\n };\n return self;\n}\n\nfunction SlidesHandler(container, eventHandler, watchSlides) {\n let mutationObserver;\n let destroyed = false;\n function init(emblaApi) {\n if (!watchSlides) return;\n function defaultCallback(mutations) {\n for (const mutation of mutations) {\n if (mutation.type === 'childList') {\n emblaApi.reInit();\n eventHandler.emit('slidesChanged');\n break;\n }\n }\n }\n mutationObserver = new MutationObserver(mutations => {\n if (destroyed) return;\n if (isBoolean(watchSlides) || watchSlides(emblaApi, mutations)) {\n defaultCallback(mutations);\n }\n });\n mutationObserver.observe(container, {\n childList: true\n });\n }\n function destroy() {\n if (mutationObserver) mutationObserver.disconnect();\n destroyed = true;\n }\n const self = {\n init,\n destroy\n };\n return self;\n}\n\nfunction SlidesInView(container, slides, eventHandler, threshold) {\n const intersectionEntryMap = {};\n let inViewCache = null;\n let notInViewCache = null;\n let intersectionObserver;\n let destroyed = false;\n function init() {\n intersectionObserver = new IntersectionObserver(entries => {\n if (destroyed) return;\n entries.forEach(entry => {\n const index = slides.indexOf(entry.target);\n intersectionEntryMap[index] = entry;\n });\n inViewCache = null;\n notInViewCache = null;\n eventHandler.emit('slidesInView');\n }, {\n root: container.parentElement,\n threshold\n });\n slides.forEach(slide => intersectionObserver.observe(slide));\n }\n function destroy() {\n if (intersectionObserver) intersectionObserver.disconnect();\n destroyed = true;\n }\n function createInViewList(inView) {\n return objectKeys(intersectionEntryMap).reduce((list, slideIndex) => {\n const index = parseInt(slideIndex);\n const {\n isIntersecting\n } = intersectionEntryMap[index];\n const inViewMatch = inView && isIntersecting;\n const notInViewMatch = !inView && !isIntersecting;\n if (inViewMatch || notInViewMatch) list.push(index);\n return list;\n }, []);\n }\n function get(inView = true) {\n if (inView && inViewCache) return inViewCache;\n if (!inView && notInViewCache) return notInViewCache;\n const slideIndexes = createInViewList(inView);\n if (inView) inViewCache = slideIndexes;\n if (!inView) notInViewCache = slideIndexes;\n return slideIndexes;\n }\n const self = {\n init,\n destroy,\n get\n };\n return self;\n}\n\nfunction SlideSizes(axis, containerRect, slideRects, slides, readEdgeGap, ownerWindow) {\n const {\n measureSize,\n startEdge,\n endEdge\n } = axis;\n const withEdgeGap = slideRects[0] && readEdgeGap;\n const startGap = measureStartGap();\n const endGap = measureEndGap();\n const slideSizes = slideRects.map(measureSize);\n const slideSizesWithGaps = measureWithGaps();\n function measureStartGap() {\n if (!withEdgeGap) return 0;\n const slideRect = slideRects[0];\n return mathAbs(containerRect[startEdge] - slideRect[startEdge]);\n }\n function measureEndGap() {\n if (!withEdgeGap) return 0;\n const style = ownerWindow.getComputedStyle(arrayLast(slides));\n return parseFloat(style.getPropertyValue(`margin-${endEdge}`));\n }\n function measureWithGaps() {\n return slideRects.map((rect, index, rects) => {\n const isFirst = !index;\n const isLast = arrayIsLastIndex(rects, index);\n if (isFirst) return slideSizes[index] + startGap;\n if (isLast) return slideSizes[index] + endGap;\n return rects[index + 1][startEdge] - rect[startEdge];\n }).map(mathAbs);\n }\n const self = {\n slideSizes,\n slideSizesWithGaps,\n startGap,\n endGap\n };\n return self;\n}\n\nfunction SlidesToScroll(axis, viewSize, slidesToScroll, loop, containerRect, slideRects, startGap, endGap, pixelTolerance) {\n const {\n startEdge,\n endEdge,\n direction\n } = axis;\n const groupByNumber = isNumber(slidesToScroll);\n function byNumber(array, groupSize) {\n return arrayKeys(array).filter(i => i % groupSize === 0).map(i => array.slice(i, i + groupSize));\n }\n function bySize(array) {\n if (!array.length) return [];\n return arrayKeys(array).reduce((groups, rectB, index) => {\n const rectA = arrayLast(groups) || 0;\n const isFirst = rectA === 0;\n const isLast = rectB === arrayLastIndex(array);\n const edgeA = containerRect[startEdge] - slideRects[rectA][startEdge];\n const edgeB = containerRect[startEdge] - slideRects[rectB][endEdge];\n const gapA = !loop && isFirst ? direction(startGap) : 0;\n const gapB = !loop && isLast ? direction(endGap) : 0;\n const chunkSize = mathAbs(edgeB - gapB - (edgeA + gapA));\n if (index && chunkSize > viewSize + pixelTolerance) groups.push(rectB);\n if (isLast) groups.push(array.length);\n return groups;\n }, []).map((currentSize, index, groups) => {\n const previousSize = Math.max(groups[index - 1] || 0);\n return array.slice(previousSize, currentSize);\n });\n }\n function groupSlides(array) {\n return groupByNumber ? byNumber(array, slidesToScroll) : bySize(array);\n }\n const self = {\n groupSlides\n };\n return self;\n}\n\nfunction Engine(root, container, slides, ownerDocument, ownerWindow, options, eventHandler) {\n // Options\n const {\n align,\n axis: scrollAxis,\n direction,\n startIndex,\n loop,\n duration,\n dragFree,\n dragThreshold,\n inViewThreshold,\n slidesToScroll: groupSlides,\n skipSnaps,\n containScroll,\n watchResize,\n watchSlides,\n watchDrag,\n watchFocus\n } = options;\n // Measurements\n const pixelTolerance = 2;\n const nodeRects = NodeRects();\n const containerRect = nodeRects.measure(container);\n const slideRects = slides.map(nodeRects.measure);\n const axis = Axis(scrollAxis, direction);\n const viewSize = axis.measureSize(containerRect);\n const percentOfView = PercentOfView(viewSize);\n const alignment = Alignment(align, viewSize);\n const containSnaps = !loop && !!containScroll;\n const readEdgeGap = loop || !!containScroll;\n const {\n slideSizes,\n slideSizesWithGaps,\n startGap,\n endGap\n } = SlideSizes(axis, containerRect, slideRects, slides, readEdgeGap, ownerWindow);\n const slidesToScroll = SlidesToScroll(axis, viewSize, groupSlides, loop, containerRect, slideRects, startGap, endGap, pixelTolerance);\n const {\n snaps,\n snapsAligned\n } = ScrollSnaps(axis, alignment, containerRect, slideRects, slidesToScroll);\n const contentSize = -arrayLast(snaps) + arrayLast(slideSizesWithGaps);\n const {\n snapsContained,\n scrollContainLimit\n } = ScrollContain(viewSize, contentSize, snapsAligned, containScroll, pixelTolerance);\n const scrollSnaps = containSnaps ? snapsContained : snapsAligned;\n const {\n limit\n } = ScrollLimit(contentSize, scrollSnaps, loop);\n // Indexes\n const index = Counter(arrayLastIndex(scrollSnaps), startIndex, loop);\n const indexPrevious = index.clone();\n const slideIndexes = arrayKeys(slides);\n // Animation\n const update = ({\n dragHandler,\n scrollBody,\n scrollBounds,\n options: {\n loop\n }\n }) => {\n if (!loop) scrollBounds.constrain(dragHandler.pointerDown());\n scrollBody.seek();\n };\n const render = ({\n scrollBody,\n translate,\n location,\n offsetLocation,\n previousLocation,\n scrollLooper,\n slideLooper,\n dragHandler,\n animation,\n eventHandler,\n scrollBounds,\n options: {\n loop\n }\n }, alpha) => {\n const shouldSettle = scrollBody.settled();\n const withinBounds = !scrollBounds.shouldConstrain();\n const hasSettled = loop ? shouldSettle : shouldSettle && withinBounds;\n const hasSettledAndIdle = hasSettled && !dragHandler.pointerDown();\n if (hasSettledAndIdle) animation.stop();\n const interpolatedLocation = location.get() * alpha + previousLocation.get() * (1 - alpha);\n offsetLocation.set(interpolatedLocation);\n if (loop) {\n scrollLooper.loop(scrollBody.direction());\n slideLooper.loop();\n }\n translate.to(offsetLocation.get());\n if (hasSettledAndIdle) eventHandler.emit('settle');\n if (!hasSettled) eventHandler.emit('scroll');\n };\n const animation = Animations(ownerDocument, ownerWindow, () => update(engine), alpha => render(engine, alpha));\n // Shared\n const friction = 0.68;\n const startLocation = scrollSnaps[index.get()];\n const location = Vector1D(startLocation);\n const previousLocation = Vector1D(startLocation);\n const offsetLocation = Vector1D(startLocation);\n const target = Vector1D(startLocation);\n const scrollBody = ScrollBody(location, offsetLocation, previousLocation, target, duration, friction);\n const scrollTarget = ScrollTarget(loop, scrollSnaps, contentSize, limit, target);\n const scrollTo = ScrollTo(animation, index, indexPrevious, scrollBody, scrollTarget, target, eventHandler);\n const scrollProgress = ScrollProgress(limit);\n const eventStore = EventStore();\n const slidesInView = SlidesInView(container, slides, eventHandler, inViewThreshold);\n const {\n slideRegistry\n } = SlideRegistry(containSnaps, containScroll, scrollSnaps, scrollContainLimit, slidesToScroll, slideIndexes);\n const slideFocus = SlideFocus(root, slides, slideRegistry, scrollTo, scrollBody, eventStore, eventHandler, watchFocus);\n // Engine\n const engine = {\n ownerDocument,\n ownerWindow,\n eventHandler,\n containerRect,\n slideRects,\n animation,\n axis,\n dragHandler: DragHandler(axis, root, ownerDocument, ownerWindow, target, DragTracker(axis, ownerWindow), location, animation, scrollTo, scrollBody, scrollTarget, index, eventHandler, percentOfView, dragFree, dragThreshold, skipSnaps, friction, watchDrag),\n eventStore,\n percentOfView,\n index,\n indexPrevious,\n limit,\n location,\n offsetLocation,\n previousLocation,\n options,\n resizeHandler: ResizeHandler(container, eventHandler, ownerWindow, slides, axis, watchResize, nodeRects),\n scrollBody,\n scrollBounds: ScrollBounds(limit, offsetLocation, target, scrollBody, percentOfView),\n scrollLooper: ScrollLooper(contentSize, limit, offsetLocation, [location, offsetLocation, previousLocation, target]),\n scrollProgress,\n scrollSnapList: scrollSnaps.map(scrollProgress.get),\n scrollSnaps,\n scrollTarget,\n scrollTo,\n slideLooper: SlideLooper(axis, viewSize, contentSize, slideSizes, slideSizesWithGaps, snaps, scrollSnaps, offsetLocation, slides),\n slideFocus,\n slidesHandler: SlidesHandler(container, eventHandler, watchSlides),\n slidesInView,\n slideIndexes,\n slideRegistry,\n slidesToScroll,\n target,\n translate: Translate(axis, container)\n };\n return engine;\n}\n\nfunction EventHandler() {\n let listeners = {};\n let api;\n function init(emblaApi) {\n api = emblaApi;\n }\n function getListeners(evt) {\n return listeners[evt] || [];\n }\n function emit(evt) {\n getListeners(evt).forEach(e => e(api, evt));\n return self;\n }\n function on(evt, cb) {\n listeners[evt] = getListeners(evt).concat([cb]);\n return self;\n }\n function off(evt, cb) {\n listeners[evt] = getListeners(evt).filter(e => e !== cb);\n return self;\n }\n function clear() {\n listeners = {};\n }\n const self = {\n init,\n emit,\n off,\n on,\n clear\n };\n return self;\n}\n\nconst defaultOptions = {\n align: 'center',\n axis: 'x',\n container: null,\n slides: null,\n containScroll: 'trimSnaps',\n direction: 'ltr',\n slidesToScroll: 1,\n inViewThreshold: 0,\n breakpoints: {},\n dragFree: false,\n dragThreshold: 10,\n loop: false,\n skipSnaps: false,\n duration: 25,\n startIndex: 0,\n active: true,\n watchDrag: true,\n watchResize: true,\n watchSlides: true,\n watchFocus: true\n};\n\nfunction OptionsHandler(ownerWindow) {\n function mergeOptions(optionsA, optionsB) {\n return objectsMergeDeep(optionsA, optionsB || {});\n }\n function optionsAtMedia(options) {\n const optionsAtMedia = options.breakpoints || {};\n const matchedMediaOptions = objectKeys(optionsAtMedia).filter(media => ownerWindow.matchMedia(media).matches).map(media => optionsAtMedia[media]).reduce((a, mediaOption) => mergeOptions(a, mediaOption), {});\n return mergeOptions(options, matchedMediaOptions);\n }\n function optionsMediaQueries(optionsList) {\n return optionsList.map(options => objectKeys(options.breakpoints || {})).reduce((acc, mediaQueries) => acc.concat(mediaQueries), []).map(ownerWindow.matchMedia);\n }\n const self = {\n mergeOptions,\n optionsAtMedia,\n optionsMediaQueries\n };\n return self;\n}\n\nfunction PluginsHandler(optionsHandler) {\n let activePlugins = [];\n function init(emblaApi, plugins) {\n activePlugins = plugins.filter(({\n options\n }) => optionsHandler.optionsAtMedia(options).active !== false);\n activePlugins.forEach(plugin => plugin.init(emblaApi, optionsHandler));\n return plugins.reduce((map, plugin) => Object.assign(map, {\n [plugin.name]: plugin\n }), {});\n }\n function destroy() {\n activePlugins = activePlugins.filter(plugin => plugin.destroy());\n }\n const self = {\n init,\n destroy\n };\n return self;\n}\n\nfunction EmblaCarousel(root, userOptions, userPlugins) {\n const ownerDocument = root.ownerDocument;\n const ownerWindow = ownerDocument.defaultView;\n const optionsHandler = OptionsHandler(ownerWindow);\n const pluginsHandler = PluginsHandler(optionsHandler);\n const mediaHandlers = EventStore();\n const eventHandler = EventHandler();\n const {\n mergeOptions,\n optionsAtMedia,\n optionsMediaQueries\n } = optionsHandler;\n const {\n on,\n off,\n emit\n } = eventHandler;\n const reInit = reActivate;\n let destroyed = false;\n let engine;\n let optionsBase = mergeOptions(defaultOptions, EmblaCarousel.globalOptions);\n let options = mergeOptions(optionsBase);\n let pluginList = [];\n let pluginApis;\n let container;\n let slides;\n function storeElements() {\n const {\n container: userContainer,\n slides: userSlides\n } = options;\n const customContainer = isString(userContainer) ? root.querySelector(userContainer) : userContainer;\n container = customContainer || root.children[0];\n const customSlides = isString(userSlides) ? container.querySelectorAll(userSlides) : userSlides;\n slides = [].slice.call(customSlides || container.children);\n }\n function createEngine(options) {\n const engine = Engine(root, container, slides, ownerDocument, ownerWindow, options, eventHandler);\n if (options.loop && !engine.slideLooper.canLoop()) {\n const optionsWithoutLoop = Object.assign({}, options, {\n loop: false\n });\n return createEngine(optionsWithoutLoop);\n }\n return engine;\n }\n function activate(withOptions, withPlugins) {\n if (destroyed) return;\n optionsBase = mergeOptions(optionsBase, withOptions);\n options = optionsAtMedia(optionsBase);\n pluginList = withPlugins || pluginList;\n storeElements();\n engine = createEngine(options);\n optionsMediaQueries([optionsBase, ...pluginList.map(({\n options\n }) => options)]).forEach(query => mediaHandlers.add(query, 'change', reActivate));\n if (!options.active) return;\n engine.translate.to(engine.location.get());\n engine.animation.init();\n engine.slidesInView.init();\n engine.slideFocus.init(self);\n engine.eventHandler.init(self);\n engine.resizeHandler.init(self);\n engine.slidesHandler.init(self);\n if (engine.options.loop) engine.slideLooper.loop();\n if (container.offsetParent && slides.length) engine.dragHandler.init(self);\n pluginApis = pluginsHandler.init(self, pluginList);\n }\n function reActivate(withOptions, withPlugins) {\n const startIndex = selectedScrollSnap();\n deActivate();\n activate(mergeOptions({\n startIndex\n }, withOptions), withPlugins);\n eventHandler.emit('reInit');\n }\n function deActivate() {\n engine.dragHandler.destroy();\n engine.eventStore.clear();\n engine.translate.clear();\n engine.slideLooper.clear();\n engine.resizeHandler.destroy();\n engine.slidesHandler.destroy();\n engine.slidesInView.destroy();\n engine.animation.destroy();\n pluginsHandler.destroy();\n mediaHandlers.clear();\n }\n function destroy() {\n if (destroyed) return;\n destroyed = true;\n mediaHandlers.clear();\n deActivate();\n eventHandler.emit('destroy');\n eventHandler.clear();\n }\n function scrollTo(index, jump, direction) {\n if (!options.active || destroyed) return;\n engine.scrollBody.useBaseFriction().useDuration(jump === true ? 0 : options.duration);\n engine.scrollTo.index(index, direction || 0);\n }\n function scrollNext(jump) {\n const next = engine.index.add(1).get();\n scrollTo(next, jump, -1);\n }\n function scrollPrev(jump) {\n const prev = engine.index.add(-1).get();\n scrollTo(prev, jump, 1);\n }\n function canScrollNext() {\n const next = engine.index.add(1).get();\n return next !== selectedScrollSnap();\n }\n function canScrollPrev() {\n const prev = engine.index.add(-1).get();\n return prev !== selectedScrollSnap();\n }\n function scrollSnapList() {\n return engine.scrollSnapList;\n }\n function scrollProgress() {\n return engine.scrollProgress.get(engine.offsetLocation.get());\n }\n function selectedScrollSnap() {\n return engine.index.get();\n }\n function previousScrollSnap() {\n return engine.indexPrevious.get();\n }\n function slidesInView() {\n return engine.slidesInView.get();\n }\n function slidesNotInView() {\n return engine.slidesInView.get(false);\n }\n function plugins() {\n return pluginApis;\n }\n function internalEngine() {\n return engine;\n }\n function rootNode() {\n return root;\n }\n function containerNode() {\n return container;\n }\n function slideNodes() {\n return slides;\n }\n const self = {\n canScrollNext,\n canScrollPrev,\n containerNode,\n internalEngine,\n destroy,\n off,\n on,\n emit,\n plugins,\n previousScrollSnap,\n reInit,\n rootNode,\n scrollNext,\n scrollPrev,\n scrollProgress,\n scrollSnapList,\n scrollTo,\n selectedScrollSnap,\n slideNodes,\n slidesInView,\n slidesNotInView\n };\n activate(userOptions, userPlugins);\n setTimeout(() => eventHandler.emit('init'), 0);\n return self;\n}\nEmblaCarousel.globalOptions = undefined;\n\nexport { EmblaCarousel as default };\n//# sourceMappingURL=embla-carousel.esm.js.map\n","import { useRef, useState, useCallback, useEffect } from 'react';\nimport { areOptionsEqual, arePluginsEqual, canUseDOM } from 'embla-carousel-reactive-utils';\nimport EmblaCarousel from 'embla-carousel';\n\nfunction useEmblaCarousel(options = {}, plugins = []) {\n const storedOptions = useRef(options);\n const storedPlugins = useRef(plugins);\n const [emblaApi, setEmblaApi] = useState();\n const [viewport, setViewport] = useState();\n const reInit = useCallback(() => {\n if (emblaApi) emblaApi.reInit(storedOptions.current, storedPlugins.current);\n }, [emblaApi]);\n useEffect(() => {\n if (areOptionsEqual(storedOptions.current, options)) return;\n storedOptions.current = options;\n reInit();\n }, [options, reInit]);\n useEffect(() => {\n if (arePluginsEqual(storedPlugins.current, plugins)) return;\n storedPlugins.current = plugins;\n reInit();\n }, [plugins, reInit]);\n useEffect(() => {\n if (canUseDOM() && viewport) {\n EmblaCarousel.globalOptions = useEmblaCarousel.globalOptions;\n const newEmblaApi = EmblaCarousel(viewport, storedOptions.current, storedPlugins.current);\n setEmblaApi(newEmblaApi);\n return () => newEmblaApi.destroy();\n } else {\n setEmblaApi(undefined);\n }\n }, [viewport, setEmblaApi]);\n return [setViewport, emblaApi];\n}\nuseEmblaCarousel.globalOptions = undefined;\n\nexport { useEmblaCarousel as default };\n//# sourceMappingURL=embla-carousel-react.esm.js.map\n","/* ------------------------------------------------------------------ */\n/* Carousel — horizontally-scrolling strip for homogeneous cards. */\n/* */\n/* Surfaces sets of cards (reviews, related practices, operator chips, */\n/* recent visits, …) where a fixed two-column grid feels cramped but a */\n/* vertical list reads as endless. First consumer: the booking */\n/* website's \"Opinioni dei pazienti\" strip on the studio profile page. */\n/* */\n/* Built on `embla-carousel-react` (~6 KB gzipped) which handles snap, */\n/* drag, keyboard, RTL, and reduced-motion. The kit wraps embla with */\n/* the canonical compound API + role/aria contract per */\n/* `src/docs/05-accessibility.mdx` §Carousel. */\n/* */\n/* DOM hierarchy (all `data-component=\"carousel\"` scoped to the root): */\n/* */\n/* <section role=\"region\" aria-roledescription=\"carousel\"> */\n/* <Carousel.Header? /> ← optional consumer-composed header */\n/* <ol role=\"presentation\"> ← the embla container */\n/* <li role=\"group\" aria-roledescription=\"slide\" */\n/* aria-label=\"N of M\"> ← Carousel.Item */\n/* <button aria-label=\"Previous slide\" ... /> ← Carousel.Controls */\n/* <ol role=\"tablist\"> ← indicators (dots) */\n/* <div aria-live=\"polite\" class=\"sr-only\">slide N of M</div> */\n/* </section> */\n/* ------------------------------------------------------------------ */\n\nimport {\n Children,\n createContext,\n forwardRef,\n isValidElement,\n useCallback,\n useContext,\n useEffect,\n useId,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n type ComponentPropsWithoutRef,\n type ReactElement,\n type ReactNode,\n} from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport useEmblaCarousel from 'embla-carousel-react';\nimport type { EmblaCarouselType, EmblaOptionsType } from 'embla-carousel';\nimport { ChevronLeft, ChevronRight } from 'lucide-react';\nimport { useTranslation } from 'react-i18next';\nimport { IconButton } from '../button/icon-button';\n\n/* ------------------------------------------------------------------ */\n/* Types */\n/* ------------------------------------------------------------------ */\n\nexport interface CarouselHandle {\n /** Programmatically focus + scroll to the item at index `i`. */\n scrollTo: (index: number) => void;\n /** Currently snapped item index (0-based). */\n getActiveIndex: () => number;\n /** Total slide count. */\n getCount: () => number;\n /** Scroll one slide to the previous direction. */\n scrollPrev: () => void;\n /** Scroll one slide to the next direction. */\n scrollNext: () => void;\n}\n\nexport interface CarouselProps\n extends\n Omit<ComponentPropsWithoutRef<'section'>, 'children'>,\n VariantProps<typeof rootVariants> {\n children: ReactNode;\n /** Accessible label (falls back to `t('carousel.label')`). */\n 'aria-label'?: string;\n /** Show prev / next IconButton pair in the header (visible ≥ md). */\n showControls?: boolean;\n /** Show dot indicators below the strip. */\n showIndicators?: boolean;\n /** Optional \"view all\" affordance on the trailing edge of the default header. */\n viewAllSlot?: ReactNode;\n /** Snap behaviour. Default `mandatory` aligns each item to the start. */\n snap?: 'mandatory' | 'proximity';\n /** Consumer-supplied instance id, surfaced as `data-component-id`. */\n id?: string;\n /**\n * Fade the inline edges of the viewport so offscreen slides on the\n * leading and trailing edges appear to dissolve into the surrounding\n * surface instead of being clipped abruptly. Defaults to `true`.\n *\n * The fade is conditionally suppressed when the carousel is at the\n * start of the strip (leading edge stays solid) or at the end\n * (trailing edge stays solid) — there is no offscreen content to\n * hint at in those positions, and a fade would just look like a\n * decorative haze.\n *\n * The gradient width is controlled by `--carousel-fade-distance`,\n * which defaults to `var(--spacing-xl)`. Consumers can override it\n * by setting the variable on the Carousel root via className, e.g.\n * `<Carousel className=\"ds:[--carousel-fade-distance:5rem]\" …>`.\n *\n * Automatically disabled under `prefers-reduced-motion`, the\n * `theme-accessible` palette, and Windows High Contrast Mode so the\n * mask never strips information from users who need it.\n */\n fadeEdges?: boolean;\n}\n\nexport interface CarouselItemProps extends ComponentPropsWithoutRef<'div'> {\n children: ReactNode;\n}\n\nexport interface CarouselHeaderProps extends ComponentPropsWithoutRef<'div'> {\n children: ReactNode;\n}\n\n/* ------------------------------------------------------------------ */\n/* CVA */\n/* ------------------------------------------------------------------ */\n\nconst rootVariants = cva(\n 'ds:relative ds:flex ds:flex-col ds:gap-[var(--spacing-md)]',\n {\n variants: {\n size: {\n sm: 'ds:[--carousel-item-inline-size:14rem]',\n md: 'ds:[--carousel-item-inline-size:20rem]',\n lg: 'ds:[--carousel-item-inline-size:28rem]',\n },\n },\n defaultVariants: { size: 'md' },\n },\n);\n\nconst itemVariants = cva(\n [\n 'ds:shrink-0 ds:basis-[var(--carousel-item-inline-size)]',\n 'ds:min-w-0',\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:rounded-[var(--radius-md)]',\n ].join(' '),\n);\n\n/* ------------------------------------------------------------------ */\n/* Context */\n/* ------------------------------------------------------------------ */\n\ninterface CarouselContextValue {\n api: EmblaCarouselType | undefined;\n activeIndex: number;\n count: number;\n canScrollPrev: boolean;\n canScrollNext: boolean;\n scrollPrev: () => void;\n scrollNext: () => void;\n scrollToIndex: (i: number) => void;\n trackId: string;\n}\n\nconst CarouselContext = createContext<CarouselContextValue | null>(null);\n\nfunction useCarouselContext(component: string): CarouselContextValue {\n const ctx = useContext(CarouselContext);\n if (!ctx) {\n throw new Error(\n `[Carousel] \\`${component}\\` must be rendered inside <Carousel>.`,\n );\n }\n return ctx;\n}\n\n/* ------------------------------------------------------------------ */\n/* Reduced motion */\n/* ------------------------------------------------------------------ */\n\nfunction usePrefersReducedMotion(): boolean {\n const [reduced, setReduced] = useState(() => {\n if (typeof window === 'undefined' || !window.matchMedia) return false;\n return window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n });\n useEffect(() => {\n if (typeof window === 'undefined' || !window.matchMedia) return;\n const mq = window.matchMedia('(prefers-reduced-motion: reduce)');\n const onChange = (): void => setReduced(mq.matches);\n mq.addEventListener('change', onChange);\n return () => mq.removeEventListener('change', onChange);\n }, []);\n return reduced;\n}\n\n/* ------------------------------------------------------------------ */\n/* Helpers — separate Carousel.Header from Carousel.Item children */\n/* ------------------------------------------------------------------ */\n\nfunction extractHeader(children: ReactNode): {\n header: ReactElement | null;\n items: ReactNode[];\n} {\n let header: ReactElement | null = null;\n const items: ReactNode[] = [];\n Children.forEach(children, (child) => {\n if (\n isValidElement(child) &&\n (child.type as { displayName?: string }).displayName === 'Carousel.Header'\n ) {\n header = child;\n } else {\n items.push(child);\n }\n });\n return { header, items };\n}\n\n/* ------------------------------------------------------------------ */\n/* Root */\n/* ------------------------------------------------------------------ */\n\nconst CarouselRoot = forwardRef<HTMLElement, CarouselProps>(\n (\n {\n children,\n size = 'md',\n showControls = true,\n showIndicators = true,\n viewAllSlot,\n snap = 'mandatory',\n fadeEdges = true,\n id,\n className,\n 'aria-label': ariaLabel,\n ...rest\n },\n ref,\n ) => {\n const { t } = useTranslation();\n const reduced = usePrefersReducedMotion();\n const autoTrackId = useId();\n const trackId = `${id ?? autoTrackId}-track`;\n const liveRegionId = `${id ?? autoTrackId}-live`;\n\n const emblaOptions = useMemo<EmblaOptionsType>(\n () => ({\n align: 'start',\n // `mandatory` → embla's default tight snap; `proximity` → free-scroll.\n dragFree: snap === 'proximity',\n // Reduced-motion disables embla's tween entirely (snap is instant).\n duration: reduced ? 0 : 25,\n // Prevents over-scroll at the ends so the last item snaps cleanly.\n containScroll: 'trimSnaps',\n }),\n [snap, reduced],\n );\n\n const [emblaRef, emblaApi] = useEmblaCarousel(emblaOptions);\n\n const [activeIndex, setActiveIndex] = useState(0);\n const [count, setCount] = useState(0);\n const [canScrollPrev, setCanScrollPrev] = useState(false);\n const [canScrollNext, setCanScrollNext] = useState(false);\n\n // Live region content — only set on programmatic / control-driven changes,\n // not on drag (per WCAG 4.1.3 / WAI carousel pattern guidance, drag\n // is user-initiated motion and announcing it is noisy).\n const [liveText, setLiveText] = useState('');\n const driverRef = useRef<'init' | 'drag' | 'control'>('init');\n\n useEffect(() => {\n if (!emblaApi) return;\n setCount(emblaApi.scrollSnapList().length);\n setActiveIndex(emblaApi.selectedScrollSnap());\n setCanScrollPrev(emblaApi.canScrollPrev());\n setCanScrollNext(emblaApi.canScrollNext());\n\n const onSelect = (): void => {\n const i = emblaApi.selectedScrollSnap();\n setActiveIndex(i);\n setCanScrollPrev(emblaApi.canScrollPrev());\n setCanScrollNext(emblaApi.canScrollNext());\n if (driverRef.current === 'control') {\n setLiveText(\n t('carousel.slideAnnouncement', {\n current: i + 1,\n total: emblaApi.scrollSnapList().length,\n }),\n );\n }\n };\n const onPointerDown = (): void => {\n driverRef.current = 'drag';\n };\n const onPointerUp = (): void => {\n // Reset to `init` so a follow-up arrow-key press is correctly\n // classified as control-driven for the live region.\n driverRef.current = 'init';\n };\n const onReInit = (): void => {\n setCount(emblaApi.scrollSnapList().length);\n setActiveIndex(emblaApi.selectedScrollSnap());\n setCanScrollPrev(emblaApi.canScrollPrev());\n setCanScrollNext(emblaApi.canScrollNext());\n };\n\n emblaApi.on('select', onSelect);\n emblaApi.on('pointerDown', onPointerDown);\n emblaApi.on('pointerUp', onPointerUp);\n emblaApi.on('reInit', onReInit);\n return () => {\n emblaApi.off('select', onSelect);\n emblaApi.off('pointerDown', onPointerDown);\n emblaApi.off('pointerUp', onPointerUp);\n emblaApi.off('reInit', onReInit);\n };\n }, [emblaApi, t]);\n\n const scrollPrev = useCallback((): void => {\n if (!emblaApi) return;\n driverRef.current = 'control';\n emblaApi.scrollPrev();\n }, [emblaApi]);\n\n const scrollNext = useCallback((): void => {\n if (!emblaApi) return;\n driverRef.current = 'control';\n emblaApi.scrollNext();\n }, [emblaApi]);\n\n const scrollToIndex = useCallback(\n (i: number): void => {\n if (!emblaApi) return;\n driverRef.current = 'control';\n emblaApi.scrollTo(i);\n },\n [emblaApi],\n );\n\n // Keyboard handler on the <section> root — kit-level focus convention.\n const onKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLElement>): void => {\n if (!emblaApi) return;\n switch (event.key) {\n case 'ArrowRight':\n event.preventDefault();\n // RTL flips arrow direction so the SR mental model stays\n // \"right arrow goes to the next visual slide\".\n emblaApi.scrollNext();\n driverRef.current = 'control';\n break;\n case 'ArrowLeft':\n event.preventDefault();\n emblaApi.scrollPrev();\n driverRef.current = 'control';\n break;\n case 'Home':\n event.preventDefault();\n emblaApi.scrollTo(0);\n driverRef.current = 'control';\n break;\n case 'End':\n event.preventDefault();\n emblaApi.scrollTo(emblaApi.scrollSnapList().length - 1);\n driverRef.current = 'control';\n break;\n case 'PageDown':\n case 'PageUp': {\n // Move by a viewport's worth — approximated via embla's\n // `slidesInView()` (visible indices). Step by their count\n // so a single PageDown advances by one screenful.\n event.preventDefault();\n const inView = emblaApi.slidesInView().length || 1;\n const direction = event.key === 'PageDown' ? 1 : -1;\n const target = Math.max(\n 0,\n Math.min(\n emblaApi.selectedScrollSnap() + direction * inView,\n emblaApi.scrollSnapList().length - 1,\n ),\n );\n emblaApi.scrollTo(target);\n driverRef.current = 'control';\n break;\n }\n default:\n break;\n }\n },\n [emblaApi],\n );\n\n useImperativeHandle(\n ref as React.Ref<CarouselHandle> | null | undefined,\n () => ({\n scrollTo: scrollToIndex,\n getActiveIndex: () => activeIndex,\n getCount: () => count,\n scrollPrev,\n scrollNext,\n }),\n [scrollToIndex, scrollPrev, scrollNext, activeIndex, count],\n );\n\n const { header, items } = extractHeader(children);\n // `count` comes from embla and is 0 on first paint (before init); use\n // the React children count as an immediate proxy so chrome visibility\n // doesn't flicker. Indicators stay tied to embla's snap count below\n // because those map to actual scroll positions.\n const itemCount = items.length;\n const displayedCount = Math.max(count, itemCount);\n\n // Default header is shown when (a) no consumer-composed Header AND\n // (b) at least one of `showControls` / `viewAllSlot` is active AND\n // (c) there's more than one slide (single-slide carousels skip chrome).\n const hasDefaultHeaderContent =\n (showControls && displayedCount > 1) || viewAllSlot != null;\n const renderDefaultHeader = header == null && hasDefaultHeaderContent;\n // Indicators reflect embla's snap count (which can be < item count\n // when slides overflow the viewport — that's the WAI carousel\n // pattern: dots map to scroll positions, not to slides). The row\n // hides for single-snap carousels.\n const showsIndicatorRow = showIndicators && count > 1;\n\n const contextValue = useMemo<CarouselContextValue>(\n () => ({\n api: emblaApi,\n activeIndex,\n count,\n canScrollPrev,\n canScrollNext,\n scrollPrev,\n scrollNext,\n scrollToIndex,\n trackId,\n }),\n [\n emblaApi,\n activeIndex,\n count,\n canScrollPrev,\n canScrollNext,\n scrollPrev,\n scrollNext,\n scrollToIndex,\n trackId,\n ],\n );\n\n return (\n <CarouselContext.Provider value={contextValue}>\n {/*\n A11y: the WAI APG carousel pattern uses a `<section>` (implicit\n role=region) with `aria-roledescription=\"carousel\"` and\n `tabIndex={0}` so users can land on the carousel as a single\n element and use Arrow / Home / End / PageUp / PageDown. Both\n jsx-a11y warnings below are intentional and match the APG\n example — controls/indicators remain individually tabbable.\n */}\n {/* eslint-disable jsx-a11y/no-noninteractive-tabindex, jsx-a11y/no-noninteractive-element-interactions -- WAI APG carousel pattern: section is keyboard-targetable so users can land on the carousel as a whole and use Arrow / Home / End / PageUp / PageDown. Controls + indicators remain individually tabbable. */}\n <section\n // forwardRef<HTMLElement> — the imperative handle owns the\n // CarouselHandle, so the DOM ref is not exposed via this signature.\n // Consumers that need the DOM node use the `id` prop + querySelector.\n {...rest}\n aria-label={ariaLabel ?? t('carousel.label', 'Carousel')}\n aria-roledescription={t('carousel.roleDescription', 'carousel')}\n tabIndex={0}\n onKeyDown={onKeyDown}\n data-component=\"carousel\"\n data-component-id={id}\n data-size={size}\n data-state={reduced ? 'reduced-motion' : undefined}\n className={rootVariants({ size, className })}\n >\n {header /* consumer-composed header */}\n {renderDefaultHeader ? (\n <div className=\"ds:flex ds:items-center ds:justify-between ds:gap-[var(--spacing-md)]\">\n <div className=\"ds:flex ds:items-center ds:gap-[var(--spacing-sm)] ds:ms-auto\">\n {viewAllSlot}\n {showControls && displayedCount > 1 ? (\n <DefaultControls />\n ) : null}\n </div>\n </div>\n ) : null}\n\n {/* embla container — the ref attaches to the SCROLL parent,\n and the immediate child must be a flex track holding items.\n\n Block-direction padding + negative outer margin gives the\n viewport room to render elevated slides' shadows without\n clipping (the `overflow-hidden` is required for embla's\n horizontal scroll). `--shadow-card` blurs ~30px with a\n ~10px offset, so the padding sits at `--spacing-xl` (32px)\n to comfortably contain that footprint. The negative margin\n neutralises the height bump so the indicator gap below\n and the header gap above stay where they were.\n\n Inline-edge fade: when `fadeEdges` is enabled, a mask-image\n linear-gradient softens the leading and trailing inline\n edges so half-visible slides dissolve into the surface\n instead of being guillotined at the viewport boundary.\n The fade width is parameterised via `--carousel-fade-distance`\n (default `var(--spacing-xl)`).\n\n The leading edge fades only when there is offscreen content\n in that direction (`canScrollPrev`) and the trailing edge\n fades only when `canScrollNext` — so at the start or end\n of the strip, the corresponding edge stays solid and the\n user does not see a phantom haze suggesting more content.\n\n Two CSS variables (`--carousel-mask-start` and\n `--carousel-mask-end`) keep the gradient logical: in LTR\n the start variable controls the LEFT side; in RTL it\n controls the RIGHT side (mapped via the `ds:rtl:` variants\n below). The block padding sits OUTSIDE the masked area so\n elevated-card shadows above and below the row are never\n clipped — the inline fade is the only thing the mask\n touches.\n\n Mask is disabled under reduced motion, the accessible\n theme, and forced-colors mode so it never strips content\n from users who depend on the unmasked rendering. */}\n <div\n ref={emblaRef}\n data-fade-start={fadeEdges && canScrollPrev ? 'true' : undefined}\n data-fade-end={fadeEdges && canScrollNext ? 'true' : undefined}\n className={[\n 'ds:overflow-hidden ds:py-[var(--spacing-xl)] ds:-my-[var(--spacing-xl)]',\n fadeEdges &&\n [\n // Mask edges default to solid black (no fade). Per-edge\n // overrides below switch to `transparent` only when the\n // logical leading/trailing edge has offscreen content,\n // and only on the CSS-space side that matches the\n // current writing direction.\n //\n // `black` here is the spec sentinel for \"fully opaque\n // mask\" — `mask-image` reads the alpha channel of its\n // image, so a uniform black gradient stop means\n // \"render this region of the masked element\". It is\n // not a brand colour, so it is correctly absent from\n // `src/tokens/index.css`.\n //\n // `--carousel-fade-distance` and `--carousel-mask-*`\n // are component-scoped CSS variables (set per-instance\n // on the viewport), not theme tokens — same pattern as\n // `--carousel-item-inline-size` above. Consumers can\n // widen the fade per-instance via\n // `className=\"ds:[--carousel-fade-distance:5rem]\"` on\n // the Carousel root; nothing in `tokens/index.css`\n // governs it because the value is purely visual chrome.\n 'ds:[--carousel-mask-start:black] ds:[--carousel-mask-end:black]',\n 'ds:ltr:data-[fade-start=true]:[--carousel-mask-start:transparent]',\n 'ds:ltr:data-[fade-end=true]:[--carousel-mask-end:transparent]',\n 'ds:rtl:data-[fade-start=true]:[--carousel-mask-end:transparent]',\n 'ds:rtl:data-[fade-end=true]:[--carousel-mask-start:transparent]',\n 'ds:[mask-image:linear-gradient(to_right,var(--carousel-mask-start)_0,black_var(--carousel-fade-distance,var(--spacing-xl)),black_calc(100%-var(--carousel-fade-distance,var(--spacing-xl))),var(--carousel-mask-end)_100%)]',\n 'ds:motion-reduce:[mask-image:none]',\n 'ds:[.theme-accessible_&]:[mask-image:none]',\n 'ds:forced-colors:[mask-image:none]',\n ].join(' '),\n ]\n .filter(Boolean)\n .join(' ')}\n >\n {/* Track is a plain `<div>` (not an `<ol>`) so each\n Carousel.Item can carry `role=\"group\"` per the WAI APG\n carousel pattern — `<ol>` + `<li role=\"group\">` trips\n axe's `aria-allowed-role`. The slide aria already\n announces position; the list semantic adds nothing. */}\n <div\n id={trackId}\n role=\"presentation\"\n className=\"ds:flex ds:gap-[var(--spacing-md)]\"\n >\n {Children.map(items, (child, index) => {\n if (!isValidElement(child)) return child;\n return (\n <CarouselItemSlot index={index} total={displayedCount}>\n {child}\n </CarouselItemSlot>\n );\n })}\n </div>\n </div>\n\n {showsIndicatorRow ? <CarouselIndicators /> : null}\n\n <div\n id={liveRegionId}\n role=\"status\"\n aria-live=\"polite\"\n aria-atomic=\"true\"\n className=\"ds:sr-only\"\n >\n {liveText}\n </div>\n </section>\n {/* eslint-enable jsx-a11y/no-noninteractive-tabindex, jsx-a11y/no-noninteractive-element-interactions */}\n </CarouselContext.Provider>\n );\n },\n);\nCarouselRoot.displayName = 'Carousel';\n\n/* ------------------------------------------------------------------ */\n/* Item (compositional) */\n/* ------------------------------------------------------------------ */\n\nconst CarouselItem = forwardRef<HTMLDivElement, CarouselItemProps>(\n ({ children, className, ...rest }, ref) => (\n <div\n ref={ref}\n {...rest}\n // WAI APG carousel pattern: each slide is programmatically focusable\n // (tabIndex=-1) so AT can land on it via the wrapping section's\n // arrow-key navigation. Not in the tab order itself.\n tabIndex={-1}\n className={itemVariants({ className })}\n >\n {children}\n </div>\n ),\n);\nCarouselItem.displayName = 'Carousel.Item';\n\n/* ------------------------------------------------------------------ */\n/* Item slot — wraps each consumer-provided Carousel.Item with the */\n/* role / aria-roledescription / aria-label=\"N of M\" attributes that */\n/* the WAI carousel pattern requires. Done as a wrapper rather than */\n/* having the consumer hand-author the attrs. */\n/* ------------------------------------------------------------------ */\n\ninterface ItemSlotProps {\n children: ReactElement;\n index: number;\n total: number;\n}\n\nfunction CarouselItemSlot({\n children,\n index,\n total,\n}: ItemSlotProps): ReactElement {\n const { t } = useTranslation();\n // Clone the consumer's <Carousel.Item> with the slide-position aria.\n const previousProps = children.props as Record<string, unknown>;\n const ariaLabel =\n (previousProps['aria-label'] as string | undefined) ??\n t('carousel.slideLabel', {\n current: index + 1,\n total,\n defaultValue: '{{current}} of {{total}}',\n });\n // Re-emit the consumer's <Carousel.Item> with the WAI carousel-pattern\n // slide role + aria-label, plus instance markers for the agent adapter.\n // `children` flows through from previousProps which is the consumer's\n // full <Carousel.Item> props object. `data-slide-*` is opaque to the\n // base `<li>` typing, so the spread is widened to a record.\n const innerProps = {\n ...previousProps,\n role: 'group',\n 'aria-roledescription': t('carousel.slideRoleDescription', 'slide'),\n 'aria-label': ariaLabel,\n 'data-slide-index': index,\n 'data-slide-id': (previousProps as { id?: string }).id,\n } as unknown as CarouselItemProps;\n return <CarouselItem {...innerProps} />;\n}\n\n/* ------------------------------------------------------------------ */\n/* Header (compositional) */\n/* ------------------------------------------------------------------ */\n\nconst CarouselHeader = forwardRef<HTMLDivElement, CarouselHeaderProps>(\n ({ children, className, ...rest }, ref) => (\n <div\n ref={ref}\n {...rest}\n className={[\n 'ds:flex ds:items-center ds:justify-between ds:gap-[var(--spacing-md)]',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n {children}\n </div>\n ),\n);\nCarouselHeader.displayName = 'Carousel.Header';\n\n/* ------------------------------------------------------------------ */\n/* Controls (compositional) — exported separately so consumers using */\n/* a custom <Carousel.Header> can drop prev/next where they want. */\n/* ------------------------------------------------------------------ */\n\nfunction DefaultControls(): ReactElement {\n return <CarouselControls />;\n}\n\nconst CarouselControls = forwardRef<\n HTMLDivElement,\n ComponentPropsWithoutRef<'div'>\n>(({ className, ...rest }, ref) => {\n const { t } = useTranslation();\n const { canScrollPrev, canScrollNext, scrollPrev, scrollNext, trackId } =\n useCarouselContext('Carousel.Controls');\n return (\n <div\n ref={ref}\n {...rest}\n // Visible from `md` up only — below the breakpoint, drag is the\n // primary affordance. Consumers wanting always-visible controls\n // can pass `className=\"ds:flex\"`.\n className={[\n 'ds:hidden ds:md:flex ds:items-center ds:gap-[var(--spacing-2xs)]',\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <IconButton\n size=\"sm\"\n intent=\"ghost\"\n flipIconInRtl\n icon={<ChevronLeft aria-hidden=\"true\" />}\n aria-controls={trackId}\n aria-label={t('carousel.previous', 'Previous slide')}\n disabled={!canScrollPrev}\n onClick={scrollPrev}\n />\n <IconButton\n size=\"sm\"\n intent=\"ghost\"\n flipIconInRtl\n icon={<ChevronRight aria-hidden=\"true\" />}\n aria-controls={trackId}\n aria-label={t('carousel.next', 'Next slide')}\n disabled={!canScrollNext}\n onClick={scrollNext}\n />\n </div>\n );\n});\nCarouselControls.displayName = 'Carousel.Controls';\n\n/* ------------------------------------------------------------------ */\n/* Indicators — dot pagination row, rendered automatically when */\n/* `showIndicators` is true and count > 1. */\n/* ------------------------------------------------------------------ */\n\nfunction CarouselIndicators(): ReactElement {\n const { t } = useTranslation();\n const { activeIndex, count, scrollToIndex, trackId } = useCarouselContext(\n 'Carousel.Indicators',\n );\n return (\n // `<div role=\"tablist\">` with direct `<button role=\"tab\">` children.\n // axe's `aria-required-children` rejects `<li>` wrappers between the\n // tablist and its tabs, and the list semantic adds nothing the\n // tablist role doesn't already convey. Matches the WAI APG carousel\n // pattern.\n // Each tab is wrapped in a `--min-target-size` hit area (44px in\n // standard, 48px in accessible) so the indicator row is actually\n // usable with a pointer — the visible dot stays small (10px) but\n // the touch / click target is full-size. The buttons themselves\n // get a `group/dot` scope so the inner dot can respond to the\n // outer button's :hover.\n <div\n role=\"tablist\"\n aria-label={t('carousel.indicatorsLabel', 'Slides')}\n className=\"ds:flex ds:items-center ds:justify-center ds:gap-[var(--spacing-2xs)]\"\n >\n {Array.from({ length: count }).map((_, i) => {\n const isActive = i === activeIndex;\n return (\n <button\n key={i}\n type=\"button\"\n role=\"tab\"\n aria-controls={trackId}\n aria-current={isActive ? 'true' : undefined}\n aria-label={t('carousel.goToSlide', {\n index: i + 1,\n defaultValue: 'Go to slide {{index}}',\n })}\n onClick={() => scrollToIndex(i)}\n data-active={isActive ? 'true' : undefined}\n className={[\n 'group/dot',\n 'ds:inline-flex ds:items-center ds:justify-center',\n 'ds:size-[length:var(--min-target-size)]',\n 'ds:rounded-[var(--radius-full)]',\n 'ds:cursor-pointer ds:bg-transparent ds:border-0',\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 ].join(' ')}\n >\n <span\n aria-hidden=\"true\"\n className={[\n 'ds:block ds:rounded-[var(--radius-full)]',\n 'ds:h-2.5',\n 'ds:transition-[background-color,inline-size] ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none',\n isActive\n ? 'ds:bg-[var(--primary)] ds:w-6'\n : 'ds:bg-[var(--border)] ds:w-2.5 ds:group-hover/dot:bg-[var(--muted-foreground)]',\n ].join(' ')}\n />\n </button>\n );\n })}\n </div>\n );\n}\n\n/* ------------------------------------------------------------------ */\n/* Public surface */\n/* ------------------------------------------------------------------ */\n\nexport const Carousel = Object.assign(CarouselRoot, {\n Header: CarouselHeader,\n Item: CarouselItem,\n Controls: CarouselControls,\n});\n","import type { AgentAdapter } from '../../agent/types';\nimport type { CarouselHandle } from './carousel';\n\nexport const carouselAgent: AgentAdapter<CarouselHandle> = {\n id: 'carousel',\n // Carousel navigation is pure ephemeral scroll state — `scroll` covers\n // both the absolute (scroll_to) and relative (scroll_prev/scroll_next)\n // moves. No `navigate` / `view_change`: nothing routes or changes view.\n capabilities: ['scroll'],\n state: {\n activeIndex: {\n type: 'number',\n descriptionKey: 'ui.agent.carousel.state.activeIndex',\n description: 'Zero-based index of the currently snapped slide.',\n read: (handle) => handle.getActiveIndex(),\n },\n count: {\n type: 'number',\n descriptionKey: 'ui.agent.carousel.state.count',\n description: 'Total slide count.',\n read: (handle) => handle.getCount(),\n },\n },\n actions: {\n scroll_to: {\n safety: 'read',\n argsType: '{ index: number }',\n argsSchema: {\n type: 'object',\n properties: {\n index: {\n type: 'integer',\n minimum: 0,\n description: 'Zero-based index of the slide to snap to.',\n },\n },\n required: ['index'],\n },\n idempotent: true,\n descriptionKey: 'ui.agent.carousel.actions.scrollTo',\n description: 'Scroll to the slide at the given index.',\n examples: [{ args: { index: 0 }, note: 'Snap back to the first slide.' }],\n invoke: (handle, args: { index: number }) => {\n handle.scrollTo(args.index);\n },\n },\n scroll_prev: {\n safety: 'read',\n descriptionKey: 'ui.agent.carousel.actions.scrollPrev',\n description: 'Scroll to the previous slide.',\n invoke: (handle) => {\n handle.scrollPrev();\n },\n },\n scroll_next: {\n safety: 'read',\n descriptionKey: 'ui.agent.carousel.actions.scrollNext',\n description: 'Scroll to the next slide.',\n invoke: (handle) => {\n handle.scrollNext();\n },\n },\n },\n domHooks: {\n root: { attr: 'data-component', value: 'carousel' },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description: 'Sourced from the id prop on Carousel.',\n },\n item: {\n attr: 'data-slide-id',\n description:\n 'Each Carousel.Item emits its `id` prop as `data-slide-id`. ' +\n '`data-slide-index` carries the zero-based position alongside.',\n },\n },\n};\n"],"names":["isObject","subject","isRecord","canUseDOM","areOptionsEqual","optionsA","optionsB","optionsAKeys","optionsBKeys","breakpointsA","breakpointsB","key","valueA","valueB","sortAndMapPluginToOptions","plugins","a","b","plugin","arePluginsEqual","pluginsA","pluginsB","optionA","index","optionB","isNumber","isString","isBoolean","mathAbs","n","mathSign","deltaAbs","factorAbs","diff","roundToTwoDecimals","num","arrayKeys","array","objectKeys","arrayLast","arrayLastIndex","arrayIsLastIndex","arrayFromNumber","startAt","_","i","object","objectsMergeDeep","objectA","objectB","mergedObjects","currentObject","areObjects","isMouseEvent","evt","ownerWindow","Alignment","align","viewSize","predefined","start","center","end","measure","EventStore","listeners","add","node","type","handler","options","removeListener","legacyMediaQueryList","self","clear","remove","Animations","ownerDocument","update","render","documentVisibleHandler","fixedTimeStep","lastTimeStamp","accumulatedTime","animationId","init","reset","destroy","stop","animate","timeStamp","timeElapsed","alpha","Axis","axis","contentDirection","isRightToLeft","isVertical","scroll","cross","sign","startEdge","getStartEdge","endEdge","getEndEdge","measureSize","nodeRect","height","width","direction","Limit","min","max","length","reachedMin","reachedMax","reachedAny","constrain","removeOffset","Counter","loop","loopEnd","counter","withinLimit","get","set","clone","DragHandler","rootNode","target","dragTracker","location","animation","scrollTo","scrollBody","scrollTarget","eventHandler","percentOfView","dragFree","dragThreshold","skipSnaps","baseFriction","watchDrag","crossAxis","focusNodes","nonPassiveEvent","initEvents","dragEvents","goToNextThreshold","snapForceBoost","freeForceBoost","baseSpeed","isMoving","startScroll","startCross","pointerIsDown","preventScroll","preventClick","isMouse","emblaApi","downIfAllowed","down","up","click","addDragEvents","move","isFocusNode","nodeName","forceBoost","allowedForce","force","targetChanged","next","baseForce","isMouseEvt","lastScroll","lastCross","diffScroll","diffCross","rawForce","forceFactor","speed","friction","pointerDown","DragTracker","startEvent","lastEvent","readTime","readPoint","evtAxis","coord","pointerMove","expired","pointerUp","diffDrag","diffTime","NodeRects","offsetTop","offsetLeft","offsetWidth","offsetHeight","PercentOfView","ResizeHandler","container","slides","watchResize","nodeRects","observeNodes","resizeObserver","containerSize","slideSizes","destroyed","readSize","defaultCallback","entries","entry","isContainer","slideIndex","lastSize","newSize","ScrollBody","offsetLocation","previousLocation","baseDuration","scrollVelocity","scrollDirection","scrollDuration","scrollFriction","rawLocation","rawLocationPrevious","seek","displacement","isInstant","scrollDistance","settled","duration","velocity","useBaseDuration","useDuration","useBaseFriction","useFriction","ScrollBounds","limit","pullBackThreshold","edgeOffsetTolerance","frictionLimit","disabled","shouldConstrain","edge","diffToEdge","diffToTarget","toggleActive","active","ScrollContain","contentSize","snapsAligned","containScroll","pixelTolerance","scrollBounds","snapsBounded","measureBounded","scrollContainLimit","findScrollContainLimit","snapsContained","measureContained","usePixelTolerance","bound","snap","startSnap","endSnap","snapAligned","isFirst","isLast","scrollBound","ScrollLimit","scrollSnaps","ScrollLooper","vectors","shouldLoop","loopDistance","v","ScrollProgress","currentLocation","ScrollSnaps","alignment","containerRect","slideRects","slidesToScroll","groupSlides","alignments","measureSizes","snaps","measureUnaligned","measureAligned","rects","rect","SlideRegistry","containSnaps","slideIndexes","slideRegistry","createSlideRegistry","groupedSlideIndexes","doNotContain","group","groups","range","ScrollTarget","targetVector","minDistance","distances","findTargetSnap","distance","ascDiffsToSnaps","shortcut","d1","d2","targets","matchingTargets","t","byIndex","diffToSnap","byDistance","targetSnapDistance","reachedBound","snapDistance","ScrollTo","indexCurrent","indexPrevious","distanceDiff","indexDiff","targetIndex","SlideFocus","root","eventStore","watchFocus","focusListenerOptions","lastTabPressTime","registerTabPress","slide","event","Vector1D","initialValue","value","normalizeInput","subtract","Translate","translate","x","y","containerStyle","previousTarget","to","newTarget","SlideLooper","slideSizesWithGaps","ascItems","descItems","loopPoints","startPoints","endPoints","removeSlideSizes","indexes","from","slidesInGap","gap","findSlideBounds","offset","findLoopPoints","isEndEdge","slideBounds","initial","altered","boundEdge","loopPoint","canLoop","otherIndexes","slideLocation","shiftLocation","SlidesHandler","watchSlides","mutationObserver","mutations","mutation","SlidesInView","threshold","intersectionEntryMap","inViewCache","notInViewCache","intersectionObserver","createInViewList","inView","list","isIntersecting","SlideSizes","readEdgeGap","withEdgeGap","startGap","measureStartGap","endGap","measureEndGap","measureWithGaps","slideRect","style","SlidesToScroll","groupByNumber","byNumber","groupSize","bySize","rectB","rectA","edgeA","edgeB","gapA","gapB","chunkSize","currentSize","previousSize","Engine","scrollAxis","startIndex","inViewThreshold","dragHandler","scrollLooper","slideLooper","shouldSettle","withinBounds","hasSettled","hasSettledAndIdle","interpolatedLocation","engine","startLocation","scrollProgress","slidesInView","slideFocus","EventHandler","api","getListeners","emit","e","on","cb","off","defaultOptions","OptionsHandler","mergeOptions","optionsAtMedia","matchedMediaOptions","media","mediaOption","optionsMediaQueries","optionsList","acc","mediaQueries","PluginsHandler","optionsHandler","activePlugins","map","EmblaCarousel","userOptions","userPlugins","pluginsHandler","mediaHandlers","reInit","reActivate","optionsBase","pluginList","pluginApis","storeElements","userContainer","userSlides","customSlides","createEngine","optionsWithoutLoop","activate","withOptions","withPlugins","query","selectedScrollSnap","deActivate","jump","scrollNext","scrollPrev","prev","canScrollNext","canScrollPrev","scrollSnapList","previousScrollSnap","slidesNotInView","internalEngine","containerNode","slideNodes","useEmblaCarousel","storedOptions","useRef","storedPlugins","setEmblaApi","useState","viewport","setViewport","useCallback","useEffect","newEmblaApi","rootVariants","cva","itemVariants","CarouselContext","createContext","useCarouselContext","component","ctx","useContext","usePrefersReducedMotion","reduced","setReduced","mq","onChange","extractHeader","children","header","items","Children","child","isValidElement","CarouselRoot","forwardRef","size","showControls","showIndicators","viewAllSlot","fadeEdges","id","className","ariaLabel","rest","ref","useTranslation","autoTrackId","useId","trackId","liveRegionId","emblaOptions","useMemo","emblaRef","activeIndex","setActiveIndex","count","setCount","setCanScrollPrev","setCanScrollNext","liveText","setLiveText","driverRef","onSelect","onPointerDown","onPointerUp","onReInit","scrollToIndex","onKeyDown","useImperativeHandle","itemCount","displayedCount","hasDefaultHeaderContent","renderDefaultHeader","showsIndicatorRow","contextValue","jsx","jsxs","DefaultControls","CarouselItemSlot","CarouselIndicators","CarouselItem","total","previousProps","innerProps","CarouselHeader","CarouselControls","IconButton","ChevronLeft","ChevronRight","isActive","Carousel","carouselAgent","handle","args"],"mappings":"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","x_google_ignoreList":[0,1,2]}
@@ -1,234 +0,0 @@
1
- import { jsxs as m, jsx as t } from "react/jsx-runtime";
2
- import { forwardRef as B, useRef as p, useState as C, useCallback as H, useImperativeHandle as L, useMemo as S, useEffect as j } from "react";
3
- import { c as w } from "./index-D2ZczOXr.js";
4
- import { useTranslation as E } from "react-i18next";
5
- import { u as M } from "./registry-DvAUVLHh.js";
6
- import { u as O } from "./index-CJE9uQmb.js";
7
- import { F as A } from "./floating-action-button-pojvb9gG.js";
8
- import { u as F } from "./use-prefers-reduced-motion-BMwIQRjB.js";
9
- import { u as K } from "./use-isomorphic-layout-effect-BGfaCOP1.js";
10
- import { C as P } from "./chevron-down-BX_NP2Yh.js";
11
- const $ = {
12
- id: "chat-container",
13
- // Scrolling the log viewport is pure ephemeral view state — `scroll`,
14
- // not `navigate` (nothing routes; the conversation stays in place).
15
- capabilities: ["scroll"],
16
- state: {},
17
- actions: {
18
- scroll_to_bottom: {
19
- safety: "read",
20
- argsType: "{ smooth?: boolean }",
21
- argsSchema: {
22
- type: "object",
23
- properties: {
24
- smooth: {
25
- type: "boolean",
26
- description: "Animate the scroll when true (default). Forced off under reduced motion."
27
- }
28
- }
29
- },
30
- idempotent: !0,
31
- descriptionKey: "ui.agent.chatContainer.actions.scrollToBottom",
32
- description: "Scroll the conversation viewport to the latest message.",
33
- invoke: (o, r) => {
34
- o.scrollToBottom(r);
35
- }
36
- }
37
- },
38
- domHooks: {
39
- root: { attr: "data-component", value: "chat-container" },
40
- instanceId: {
41
- attr: "data-component-id",
42
- sourceProp: "id",
43
- description: "Sourced from the id prop."
44
- }
45
- }
46
- }, D = w(
47
- "ds:relative ds:flex ds:w-full ds:flex-col ds:overflow-hidden ds:bg-background",
48
- {
49
- variants: {
50
- density: {
51
- default: "ds:gap-[var(--spacing-md)]",
52
- compact: "ds:gap-[var(--spacing-sm)]"
53
- }
54
- },
55
- defaultVariants: { density: "default" }
56
- }
57
- ), U = w(
58
- [
59
- "ds:flex-1 ds:min-h-0 ds:overflow-y-auto ds:overflow-x-hidden",
60
- "ds:ps-[var(--spacing-md)] ds:pe-[var(--spacing-md)]",
61
- "ds:pt-[var(--spacing-md)] ds:pb-[var(--spacing-md)]",
62
- "ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid",
63
- "ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
64
- "ds:scroll-smooth ds:motion-reduce:scroll-auto ds:[.theme-accessible_&]:scroll-auto",
65
- // Edge fade — content near the scroll boundaries fades into the
66
- // container surface instead of clipping abruptly against the header
67
- // or composer, so avatars / bubbles don't look "cut in half" as they
68
- // pass the viewport edge. Fade width matches the viewport padding so
69
- // a row can slide fully behind the mask before disappearing.
70
- // Disabled under HCM (mask strips content), reduced motion (less
71
- // decoration when motion is off), and the accessible theme.
72
- "ds:[mask-image:linear-gradient(to_bottom,transparent_0,black_var(--spacing-md),black_calc(100%-var(--spacing-md)),transparent_100%)]",
73
- "ds:motion-reduce:[mask-image:none]",
74
- "ds:[.theme-accessible_&]:[mask-image:none]",
75
- "ds:forced-colors:[mask-image:none]"
76
- ].join(" ")
77
- ), X = 100, Y = 48, Z = B(
78
- ({
79
- messages: o,
80
- composer: r,
81
- density: y = "default",
82
- className: k,
83
- id: u,
84
- onAutoScrollChange: i,
85
- showScrollToLatest: I = !1,
86
- ...N
87
- }, T) => {
88
- const { t: f } = E(), a = p(null), v = p(null), [c, _] = C(!0), h = F(), n = H(
89
- (e) => {
90
- const s = a.current;
91
- if (!s) return;
92
- const d = ((e == null ? void 0 : e.smooth) ?? !0) && !h;
93
- s.scrollTo({
94
- top: s.scrollHeight,
95
- behavior: d ? "smooth" : "auto"
96
- });
97
- },
98
- [h]
99
- ), g = p(null);
100
- L(T, () => g.current, []);
101
- const R = S(
102
- () => ({
103
- scrollToBottom: n,
104
- getScrollViewport: () => a.current
105
- }),
106
- [n]
107
- );
108
- M($, R, u), j(() => {
109
- const e = a.current, s = v.current;
110
- if (!e || !s) return;
111
- const d = new IntersectionObserver(
112
- (V) => {
113
- const x = V[0];
114
- _(x.isIntersecting), i == null || i(x.isIntersecting);
115
- },
116
- {
117
- root: e,
118
- // Fire when the sentinel is within BOTTOM_SLACK_PX of being visible.
119
- rootMargin: `0px 0px ${Y}px 0px`,
120
- threshold: 0
121
- }
122
- );
123
- return d.observe(s), () => d.disconnect();
124
- }, [i]);
125
- const z = o.length;
126
- K(() => {
127
- c && n({ smooth: !1 });
128
- }, [z, c, n]);
129
- const b = o.length > X, l = O({
130
- count: b ? o.length : 0,
131
- getScrollElement: () => a.current,
132
- estimateSize: () => 80,
133
- overscan: 6,
134
- getItemKey: (e) => {
135
- var s;
136
- return ((s = o[e]) == null ? void 0 : s.id) ?? e;
137
- }
138
- });
139
- return /* @__PURE__ */ m(
140
- "div",
141
- {
142
- ref: g,
143
- className: D({ density: y, className: k }),
144
- "data-component": "chat-container",
145
- "data-component-id": u,
146
- ...N,
147
- children: [
148
- /* @__PURE__ */ m("div", { className: "ds:relative ds:flex-1 ds:min-h-0 ds:flex ds:flex-col", children: [
149
- /* @__PURE__ */ m(
150
- "div",
151
- {
152
- ref: a,
153
- role: "log",
154
- "aria-live": "polite",
155
- "aria-relevant": "additions",
156
- "aria-label": f("chat.container"),
157
- tabIndex: 0,
158
- className: U(),
159
- children: [
160
- b ? /* @__PURE__ */ t(
161
- "ol",
162
- {
163
- className: "ds:relative ds:list-none ds:ps-0 ds:m-0",
164
- style: { blockSize: `${l.getTotalSize()}px` },
165
- children: l.getVirtualItems().map((e) => {
166
- const s = o[e.index];
167
- return s ? /* @__PURE__ */ t(
168
- "li",
169
- {
170
- "data-index": e.index,
171
- ref: l.measureElement,
172
- className: "ds:absolute ds:start-0 ds:end-0 ds:top-0 ds:w-full",
173
- style: { transform: `translateY(${e.start}px)` },
174
- children: /* @__PURE__ */ t("div", { className: "ds:pt-[var(--spacing-xs)] ds:pb-[var(--spacing-xs)]", children: s.node })
175
- },
176
- s.id
177
- ) : null;
178
- })
179
- }
180
- ) : /* @__PURE__ */ t("ol", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)] ds:list-none ds:ps-0 ds:m-0", children: o.map((e) => /* @__PURE__ */ t("li", { children: e.node }, e.id)) }),
181
- /* @__PURE__ */ t(
182
- "div",
183
- {
184
- ref: v,
185
- "aria-hidden": "true",
186
- className: "ds:h-1 ds:w-full"
187
- }
188
- )
189
- ]
190
- }
191
- ),
192
- I && !c ? /* @__PURE__ */ t(
193
- "div",
194
- {
195
- className: [
196
- "ds:pointer-events-none ds:absolute ds:inset-inline-end-0",
197
- // `bottom` is measured from the bottom of the scroll
198
- // column (i.e. the top edge of the composer slot). A
199
- // small spacing-md gap keeps the FAB clear of the
200
- // divider border above the composer.
201
- "ds:bottom-[var(--spacing-md)] ds:pe-[var(--spacing-md)]",
202
- // Enter animation — fade + scale in from 95%. The FAB only
203
- // unmounts when the user returns to bottom, so an exit
204
- // animation isn't justified (abrupt disappearance reads as
205
- // "task complete" when they've scrolled back).
206
- "ds:motion-safe:animate-in ds:motion-safe:fade-in-0 ds:motion-safe:zoom-in-95",
207
- "ds:duration-[var(--animation-duration)] ds:ease-[var(--ease-out)]"
208
- ].join(" "),
209
- children: /* @__PURE__ */ t("div", { className: "ds:pointer-events-auto", children: /* @__PURE__ */ t(
210
- A,
211
- {
212
- icon: /* @__PURE__ */ t(P, {}),
213
- "aria-label": f("chat.scrollToLatest"),
214
- size: "sm",
215
- variant: "secondary",
216
- position: "static",
217
- onClick: () => n({ smooth: !0 })
218
- }
219
- ) })
220
- }
221
- ) : null
222
- ] }),
223
- r ? /* @__PURE__ */ t("div", { className: "ds:shrink-0 ds:ps-[var(--spacing-md)] ds:pe-[var(--spacing-md)] ds:pt-[var(--spacing-sm)] ds:pb-[var(--spacing-sm)] ds:bg-background", children: r }) : null
224
- ]
225
- }
226
- );
227
- }
228
- );
229
- Z.displayName = "ChatContainer";
230
- export {
231
- Z as C,
232
- $ as c
233
- };
234
- //# sourceMappingURL=chat-container-DWho5hPR.js.map