@alfadocs/ui-kit 1.67.0 → 1.69.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 (307) hide show
  1. package/dist/_chunks/{address-fields-CJtu7LQU.js → address-fields-BUPRs3n-.js} +3 -3
  2. package/dist/_chunks/{agenda-card-DR9gDdKp.js → agenda-card-BDuvreCe.js} +2 -2
  3. package/dist/_chunks/{agenda-tray-DGB1Zup-.js → agenda-tray-CfwylhWf.js} +3 -3
  4. package/dist/_chunks/{ai-credits-exhausted-notice-DfAgfZDF.js → ai-credits-exhausted-notice-Bg8NpW2K.js} +2 -2
  5. package/dist/_chunks/{ai-permission-notice-qsdm4Sx4.js → ai-permission-notice-C00i6VhY.js} +2 -2
  6. package/dist/_chunks/{ai-prompt-input-DSGSe4LH.js → ai-prompt-input-DzgyoKyk.js} +141 -139
  7. package/dist/_chunks/{alert-DjsJMGRE.js → alert-9kEwDza3.js} +122 -112
  8. package/dist/_chunks/{alia-sidebar-qe0quZkB.js → alia-sidebar-DEMMoefU.js} +4 -4
  9. package/dist/_chunks/{anamnesis-card-CsUBOG32.js → anamnesis-card-Bey9qQu4.js} +2 -2
  10. package/dist/_chunks/{anamnesis-summary-card-CMzBLTiN.js → anamnesis-summary-card-DQ3iE1gD.js} +2 -2
  11. package/dist/_chunks/{anamnesis-summary-rows-BQ_EokKz.js → anamnesis-summary-rows-rNwSrNWZ.js} +393 -389
  12. package/dist/_chunks/{appointment-card-CL32sux-.js → appointment-card-5JMWi9_f.js} +2 -2
  13. package/dist/_chunks/{appointment-peek-B5mcDcXt.js → appointment-peek-CpcqB8oO.js} +3 -3
  14. package/dist/_chunks/{appointment-timeline-CCqjORFb.js → appointment-timeline-VFP6HoXT.js} +4 -4
  15. package/dist/_chunks/{appointment-tray-qtpJt8e0.js → appointment-tray-B3PDER3I.js} +3 -3
  16. package/dist/_chunks/{audio-recorder-B11RR-rC.js → audio-recorder-4Ll0pwYK.js} +3 -3
  17. package/dist/_chunks/{auth-form-parts-DwUTH6YN.js → auth-form-parts-B40zvD-a.js} +2 -2
  18. package/dist/_chunks/avatar-BPiPL7ND.js +199 -0
  19. package/dist/_chunks/{balance-badge-cell-DZNthHO1.js → balance-badge-cell-BG3DMly4.js} +4 -4
  20. package/dist/_chunks/{bishop-score-CaNTrikJ.js → bishop-score-Df8nF1qg.js} +2 -2
  21. package/dist/_chunks/{booking-tTVxKPQY.js → booking-B1pDbERi.js} +377 -335
  22. package/dist/_chunks/{calendar-BhN-jisv.js → calendar-BvOM8rG3.js} +2 -2
  23. package/dist/_chunks/{calendar-workspace-MRrzcxAy.js → calendar-workspace-Ct8_454k.js} +18 -18
  24. package/dist/_chunks/{chat-message-fRLZ95O5.js → chat-message-C2VXQMoB.js} +3 -3
  25. package/dist/_chunks/{clinical-note-card-BnFTIs6x.js → clinical-note-card-Caidqcwa.js} +2 -2
  26. package/dist/_chunks/{code-block-vwEv1jEa.js → code-block-RSKdF3E-.js} +35 -35
  27. package/dist/_chunks/{color-picker-BsggJovx.js → color-picker-AcaWuKah.js} +99 -95
  28. package/dist/_chunks/{combobox-U5yfO6o0.js → combobox-vF9O-QoG.js} +92 -83
  29. package/dist/_chunks/{connection-status--wYsgreh.js → connection-status-BOZC5QU5.js} +2 -2
  30. package/dist/_chunks/{contact-profile-card-C4-OCshj.js → contact-profile-card-CAwwOqHl.js} +40 -40
  31. package/dist/_chunks/{control-room-rail-DUerqHeo.js → control-room-rail-BB6rCDWI.js} +3 -3
  32. package/dist/_chunks/{country-select-DF5Bd_mn.js → country-select-CSE2Zm_s.js} +2 -2
  33. package/dist/_chunks/dashboard-grid-7JzaiKnk.js +1487 -0
  34. package/dist/_chunks/{data-table-COoCQ4n_.js → data-table-Cty4-Jht.js} +3 -3
  35. package/dist/_chunks/{dependent-selector-DBr1AhLg.js → dependent-selector-C4kOgO8b.js} +2 -2
  36. package/dist/_chunks/{description-list-Q8640NHu.js → description-list-DQQ2OA_t.js} +68 -66
  37. package/dist/_chunks/{document-preview-VyQOjFVL.js → document-preview-513f3iPn.js} +4 -4
  38. package/dist/_chunks/{document-scanner-CXH_GYh4.js → document-scanner-Bd3wbzpI.js} +2 -2
  39. package/dist/_chunks/{editable-description-ChGNdYY8.js → editable-description-DnAFi360.js} +2 -2
  40. package/dist/_chunks/{entity-summary-Bj-Wxq7Y.js → entity-summary-C2B8yNmc.js} +4 -4
  41. package/dist/_chunks/{error-summary-PUE5Zxp9.js → error-summary-mGxIyDAY.js} +2 -2
  42. package/dist/_chunks/{face-scheme-DAD-mXzM.js → face-scheme-CSJdRNad.js} +248 -244
  43. package/dist/_chunks/{file-manager-RiV7-OEE.js → file-manager-D4cPnRhL.js} +3 -3
  44. package/dist/_chunks/{forgot-password-form-CPOfRE0C.js → forgot-password-form-Dqi7R-NL.js} +4 -4
  45. package/dist/_chunks/format-number-DdzqwMs1.js +13 -0
  46. package/dist/_chunks/{freemium-paywall-6DO7noHX.js → freemium-paywall-C73C8Rgd.js} +2 -2
  47. package/dist/_chunks/{gestational-age-calculator-CZYa2D6m.js → gestational-age-calculator-Du53p8MH.js} +2 -2
  48. package/dist/_chunks/{header-settings-BSH9Gk0J.js → header-settings-DlUbvAUx.js} +37 -36
  49. package/dist/_chunks/{heatmap-C1TeC7wT.js → heatmap-DbZIQg14.js} +4 -4
  50. package/dist/_chunks/{help-me-write-templates-Bw3Q58x-.js → help-me-write-templates-5WkUfvc_.js} +3 -3
  51. package/dist/_chunks/{kit-extensions-DWs1UEXb.js → kit-extensions-CYvLL4ee.js} +3 -3
  52. package/dist/_chunks/length-token-DwMnGEYT.js +24 -0
  53. package/dist/_chunks/{link-cell-renderer-CtTsvfPY.js → link-cell-renderer-DtIsQWDO.js} +4 -4
  54. package/dist/_chunks/{login-dev-card-A-CL3mjt.js → login-dev-card-vEL-o5wq.js} +3 -3
  55. package/dist/_chunks/{map-view-BuVfJMEa.js → map-view-CtohteZD.js} +300 -191
  56. package/dist/_chunks/{marketplace-app-shell-DtSX8sYb.js → marketplace-app-shell-CcLQ0Dn-.js} +4 -4
  57. package/dist/_chunks/{message-card-A3mJNqfy.js → message-card-C_ksqIYM.js} +2 -2
  58. package/dist/_chunks/{message-tray-Ft6vSr71.js → message-tray-DCoQ4GQb.js} +3 -3
  59. package/dist/_chunks/{multi-select-CMaAQQgb.js → multi-select-BOad3za9.js} +110 -98
  60. package/dist/_chunks/{muscle-scheme-YoN3rYXV.js → muscle-scheme-C66WlCxG.js} +2 -2
  61. package/dist/_chunks/{note-timeline-DDqNU46n.js → note-timeline-KzL52MmB.js} +2 -2
  62. package/dist/_chunks/{notes-panel-IdsmqRFC.js → notes-panel-BXN46XkF.js} +6 -6
  63. package/dist/_chunks/notice-group-DkYzKyAZ.js +291 -0
  64. package/dist/_chunks/{notification-tray-BR3seWA7.js → notification-tray-Cp18MW5b.js} +2 -2
  65. package/dist/_chunks/{operator-hero-3_RG4Dkj.js → operator-hero-6aAIQaFZ.js} +83 -66
  66. package/dist/_chunks/{optical-prescription-CxfMsbxi.js → optical-prescription-D5c7FBlT.js} +526 -510
  67. package/dist/_chunks/panel-header-CbtlTe85.js +190 -0
  68. package/dist/_chunks/{panel-subview-yP4qIbKS.js → panel-subview-BPU7220K.js} +2 -2
  69. package/dist/_chunks/{patient-details-C-EWQTms.js → patient-details-qWOsn1MX.js} +5 -5
  70. package/dist/_chunks/{patient-field-row-lY-Tb5Mo.js → patient-field-row-CAl5ydtX.js} +5 -5
  71. package/dist/_chunks/{patient-search-DpAKidZ5.js → patient-search-BADdx3M1.js} +2 -2
  72. package/dist/_chunks/{patient-summary-card-Bpto_VCD.js → patient-summary-card-BhuRh9AE.js} +4 -4
  73. package/dist/_chunks/{payment-automation-upsell-BQ307qEX.js → payment-automation-upsell-CiwF5UrC.js} +2 -2
  74. package/dist/_chunks/{payment-form-XKtinW8r.js → payment-form-PBuh8PIa.js} +2 -2
  75. package/dist/_chunks/{payment-request-card-0DjQgVgX.js → payment-request-card-bysjRZrP.js} +2 -2
  76. package/dist/_chunks/{pdf-viewer-BvoVMjH4.js → pdf-viewer-gAsNUsA8.js} +2 -2
  77. package/dist/_chunks/{periodontal-risk-chart-CPy7CNFe.js → periodontal-risk-chart-B7S9OmPC.js} +97 -89
  78. package/dist/_chunks/practice-profile-hero-qfrsFQI_.js +236 -0
  79. package/dist/_chunks/{practice-results-BrUDDMXC.js → practice-results-BzThnpnm.js} +328 -298
  80. package/dist/_chunks/{pregnancy-dating-B8wo4l_r.js → pregnancy-dating-EFcFUJkQ.js} +2 -2
  81. package/dist/_chunks/{privacy-mask-Ch7743uk.js → privacy-mask-CCz9zuIh.js} +2 -2
  82. package/dist/_chunks/{product-hub-panel-C_ZosrBt.js → product-hub-panel-YuFbNPlT.js} +2 -2
  83. package/dist/_chunks/progress-notice-DiHWZ8Ms.js +279 -0
  84. package/dist/_chunks/{province-select-Bd20Z9Br.js → province-select-CDjs5obD.js} +2 -2
  85. package/dist/_chunks/{radiograph-panel.agent-8Ewv8-d7.js → radiograph-panel.agent-4UllIoTQ.js} +2 -2
  86. package/dist/_chunks/{rating-C1Vrmpsi.js → rating-CGYpg5dj.js} +43 -44
  87. package/dist/_chunks/{registration-form-BxwqUZzk.js → registration-form-1B0PTDal.js} +4 -4
  88. package/dist/_chunks/{reviews-panel-AvsVgtJu.js → reviews-panel-sbsVmmCA.js} +30 -8
  89. package/dist/_chunks/{rich-text-editor-aCIoptbg.js → rich-text-editor-56dSsyZI.js} +3 -3
  90. package/dist/_chunks/{select-k4gBdS8N.js → select-4S-eYZUf.js} +244 -214
  91. package/dist/_chunks/{sign-document-D1P1nUQA.js → sign-document-BiOTs1P4.js} +2 -2
  92. package/dist/_chunks/{signature-request-3u6TvRt2.js → signature-request-DAmNj_uq.js} +5 -5
  93. package/dist/_chunks/skeleton-tTWJpvAq.js +415 -0
  94. package/dist/_chunks/{slot-grid-dj5f6R2w.js → slot-grid-D_gix9mJ.js} +2 -2
  95. package/dist/_chunks/{streaming-text-zFViGexf.js → streaming-text-DbqKTsmj.js} +2 -2
  96. package/dist/_chunks/{tabs-2x3L13jn.js → tabs-BTj-2qMZ.js} +2 -2
  97. package/dist/_chunks/{task-card-BS7Uqevr.js → task-card-Ci2XbLmq.js} +2 -2
  98. package/dist/_chunks/{task-editor-Bb5MMcid.js → task-editor-BomyxGoZ.js} +8 -8
  99. package/dist/_chunks/{task-tray-eQU4KJcA.js → task-tray-Dnc72nl-.js} +3 -3
  100. package/dist/_chunks/{tasks-panel-BOb57Ysw.js → tasks-panel-ATz9JDy8.js} +6 -6
  101. package/dist/_chunks/{theme-toggle-Ctb77x6O.js → theme-toggle-DT_Jn4DC.js} +147 -138
  102. package/dist/_chunks/{timeline-DEIuHrWz.js → timeline-wUuTDFY_.js} +2 -2
  103. package/dist/_chunks/{tool-rail-C-03rH2I.js → tool-rail-C-M3eVdY.js} +2 -2
  104. package/dist/_chunks/{transcript-panel-XudW5l6l.js → transcript-panel-CoHHpcFg.js} +2 -2
  105. package/dist/_chunks/{treatment-receipt-Cpm8tqQN.js → treatment-receipt-pFqWFyD_.js} +2 -2
  106. package/dist/_chunks/{unit-converter-BPZ0Ldkb.js → unit-converter-CIoTmCmP.js} +2 -2
  107. package/dist/_chunks/{use-appointment-details-read-CVSPoP5j.js → use-appointment-details-read-1gjZuup4.js} +13 -13
  108. package/dist/_chunks/use-dismissed-CTOWqA0e.js +177 -0
  109. package/dist/_chunks/{voice-control-panel-BJIEbDq6.js → voice-control-panel-B8Lrk0C4.js} +4 -4
  110. package/dist/_chunks/{warning-stack-BdY-0bd3.js → warning-stack-BhHUmRiD.js} +2 -2
  111. package/dist/_chunks/{workflow-map-CYbRD9ek.js → workflow-map-ln4_OG8A.js} +2 -2
  112. package/dist/_chunks/workflow-webhook-action-Ct8tFYi7.js +691 -0
  113. package/dist/agent-catalog.json +271 -4
  114. package/dist/agent-i18n/en.json +34 -1
  115. package/dist/components/_shared/code-block.d.ts +6 -0
  116. package/dist/components/_shared/format-number.d.ts +20 -0
  117. package/dist/components/_shared/length-token.d.ts +12 -0
  118. package/dist/components/_shared/option.d.ts +1 -0
  119. package/dist/components/address-fields/index.js +1 -1
  120. package/dist/components/agenda-card/index.js +1 -1
  121. package/dist/components/agenda-tray/index.js +1 -1
  122. package/dist/components/ai-credits-notice/index.js +1 -1
  123. package/dist/components/ai-permission-notice/index.js +1 -1
  124. package/dist/components/ai-prompt-input/index.js +1 -1
  125. package/dist/components/alert/alert.d.ts +26 -0
  126. package/dist/components/alert/index.js +1 -1
  127. package/dist/components/anamnesis-card/index.js +1 -1
  128. package/dist/components/anamnesis-summary-card/index.js +1 -1
  129. package/dist/components/appointment-card/index.js +2 -2
  130. package/dist/components/appointment-details-panel/index.js +1 -1
  131. package/dist/components/appointment-peek/index.js +1 -1
  132. package/dist/components/appointment-timeline/index.js +1 -1
  133. package/dist/components/audio-recorder/index.js +1 -1
  134. package/dist/components/avatar/avatar.d.ts +2 -0
  135. package/dist/components/avatar/index.js +1 -1
  136. package/dist/components/bishop-score/index.js +1 -1
  137. package/dist/components/booking/index.js +1 -1
  138. package/dist/components/calendar/index.js +1 -1
  139. package/dist/components/chat-message/index.js +1 -1
  140. package/dist/components/clinical-note-card/index.js +1 -1
  141. package/dist/components/color-picker/index.js +1 -1
  142. package/dist/components/combobox/index.js +1 -1
  143. package/dist/components/connection-status/index.js +1 -1
  144. package/dist/components/contact-profile-card/index.js +1 -1
  145. package/dist/components/control-room-rail/index.js +1 -1
  146. package/dist/components/country-select/index.js +1 -1
  147. package/dist/components/dashboard-grid/dashboard-grid.d.ts +20 -1
  148. package/dist/components/dashboard-grid/index.js +1 -1
  149. package/dist/components/data-table/index.js +2 -2
  150. package/dist/components/dependent-selector/index.js +1 -1
  151. package/dist/components/description-list/index.js +1 -1
  152. package/dist/components/document-preview/index.js +1 -1
  153. package/dist/components/document-scanner/index.js +1 -1
  154. package/dist/components/editable-description/index.js +1 -1
  155. package/dist/components/entity-summary/index.js +1 -1
  156. package/dist/components/error-summary/index.js +1 -1
  157. package/dist/components/face-scheme/index.js +1 -1
  158. package/dist/components/file-manager/index.js +1 -1
  159. package/dist/components/freemium-paywall/index.js +1 -1
  160. package/dist/components/gestational-age-calculator/index.js +1 -1
  161. package/dist/components/header-settings/index.js +1 -1
  162. package/dist/components/heatmap/index.js +1 -1
  163. package/dist/components/index.d.ts +5 -2
  164. package/dist/components/map-view/index.d.ts +1 -1
  165. package/dist/components/map-view/index.js +1 -1
  166. package/dist/components/map-view/map-view.d.ts +51 -0
  167. package/dist/components/message-card/index.js +1 -1
  168. package/dist/components/message-tray/index.js +1 -1
  169. package/dist/components/multi-select/index.js +1 -1
  170. package/dist/components/muscle-scheme/index.js +1 -1
  171. package/dist/components/note-timeline/index.js +1 -1
  172. package/dist/components/notes-panel/index.js +1 -1
  173. package/dist/components/notice-group/index.d.ts +3 -0
  174. package/dist/components/notice-group/index.js +6 -0
  175. package/dist/components/notice-group/notice-group.agent.d.ts +4 -0
  176. package/dist/components/notice-group/notice-group.d.ts +43 -0
  177. package/dist/components/notification-tray/index.js +1 -1
  178. package/dist/components/operator-hero/index.js +1 -1
  179. package/dist/components/optical-prescription/index.js +1 -1
  180. package/dist/components/optical-prescription/optical-prescription-data.d.ts +8 -8
  181. package/dist/components/panel-header/index.js +1 -1
  182. package/dist/components/panel-header/panel-header.d.ts +10 -0
  183. package/dist/components/panel-subview/index.js +1 -1
  184. package/dist/components/patient-details/index.js +1 -1
  185. package/dist/components/patient-search/index.js +1 -1
  186. package/dist/components/patient-summary-card/index.js +1 -1
  187. package/dist/components/patient-table/index.js +1 -1
  188. package/dist/components/payment-card/index.js +1 -1
  189. package/dist/components/payment-form/index.js +1 -1
  190. package/dist/components/pdf-viewer/index.js +1 -1
  191. package/dist/components/periodontal-risk-chart/index.js +1 -1
  192. package/dist/components/practice-profile-hero/index.js +1 -1
  193. package/dist/components/practice-profile-hero/practice-profile-hero.d.ts +4 -1
  194. package/dist/components/practice-results/index.js +1 -1
  195. package/dist/components/practice-results/practice-results.d.ts +10 -2
  196. package/dist/components/pregnancy-dating/index.js +1 -1
  197. package/dist/components/product-hub-tray/index.js +1 -1
  198. package/dist/components/progress-notice/index.d.ts +3 -0
  199. package/dist/components/progress-notice/index.js +6 -0
  200. package/dist/components/progress-notice/progress-notice.agent.d.ts +4 -0
  201. package/dist/components/progress-notice/progress-notice.d.ts +81 -0
  202. package/dist/components/province-select/index.js +1 -1
  203. package/dist/components/radiograph-panel/index.js +1 -1
  204. package/dist/components/rating/index.js +1 -1
  205. package/dist/components/reviews-panel/index.js +1 -1
  206. package/dist/components/rich-text-editor/index.js +2 -2
  207. package/dist/components/select/index.js +1 -1
  208. package/dist/components/select/select.d.ts +6 -0
  209. package/dist/components/sign-document/index.js +1 -1
  210. package/dist/components/skeleton/index.d.ts +1 -1
  211. package/dist/components/skeleton/index.js +1 -1
  212. package/dist/components/skeleton/skeleton.d.ts +41 -1
  213. package/dist/components/skeleton-scheme/index.js +1 -1
  214. package/dist/components/slot-grid/index.js +1 -1
  215. package/dist/components/streaming-text/index.js +1 -1
  216. package/dist/components/tabs/index.js +1 -1
  217. package/dist/components/task-card/index.js +1 -1
  218. package/dist/components/task-editor/index.js +1 -1
  219. package/dist/components/task-tray/index.js +1 -1
  220. package/dist/components/tasks-panel/index.js +1 -1
  221. package/dist/components/theme-toggle/index.js +1 -1
  222. package/dist/components/timeline/index.js +1 -1
  223. package/dist/components/tool-rail/index.js +1 -1
  224. package/dist/components/transcript-panel/index.js +1 -1
  225. package/dist/components/treatment-receipt/index.js +1 -1
  226. package/dist/components/unit-converter/index.js +1 -1
  227. package/dist/components/voice-control-panel/index.js +1 -1
  228. package/dist/components/warning-stack/index.js +1 -1
  229. package/dist/components/workflow/index.js +1 -1
  230. package/dist/hooks/index.d.ts +1 -0
  231. package/dist/hooks/index.js +81 -76
  232. package/dist/hooks/use-dismissed.d.ts +58 -0
  233. package/dist/i18n/locales/ar.d.ts +77 -0
  234. package/dist/i18n/locales/ar.js +77 -0
  235. package/dist/i18n/locales/de.d.ts +77 -0
  236. package/dist/i18n/locales/de.js +77 -0
  237. package/dist/i18n/locales/el.d.ts +77 -0
  238. package/dist/i18n/locales/el.js +77 -0
  239. package/dist/i18n/locales/en.d.ts +77 -0
  240. package/dist/i18n/locales/en.js +77 -0
  241. package/dist/i18n/locales/es.d.ts +77 -0
  242. package/dist/i18n/locales/es.js +77 -0
  243. package/dist/i18n/locales/fr.d.ts +77 -0
  244. package/dist/i18n/locales/fr.js +77 -0
  245. package/dist/i18n/locales/hi.d.ts +77 -0
  246. package/dist/i18n/locales/hi.js +77 -0
  247. package/dist/i18n/locales/it.d.ts +77 -0
  248. package/dist/i18n/locales/it.js +77 -0
  249. package/dist/i18n/locales/ja.d.ts +77 -0
  250. package/dist/i18n/locales/ja.js +77 -0
  251. package/dist/i18n/locales/nl.d.ts +77 -0
  252. package/dist/i18n/locales/nl.js +77 -0
  253. package/dist/i18n/locales/pl.d.ts +77 -0
  254. package/dist/i18n/locales/pl.js +77 -0
  255. package/dist/i18n/locales/pt.d.ts +77 -0
  256. package/dist/i18n/locales/pt.js +77 -0
  257. package/dist/i18n/locales/ro.d.ts +77 -0
  258. package/dist/i18n/locales/ro.js +77 -0
  259. package/dist/i18n/locales/ru.d.ts +77 -0
  260. package/dist/i18n/locales/ru.js +77 -0
  261. package/dist/i18n/locales/sq.d.ts +77 -0
  262. package/dist/i18n/locales/sq.js +77 -0
  263. package/dist/i18n/locales/sv.d.ts +77 -0
  264. package/dist/i18n/locales/sv.js +77 -0
  265. package/dist/i18n/locales/tr.d.ts +77 -0
  266. package/dist/i18n/locales/tr.js +77 -0
  267. package/dist/i18n/locales/zh.d.ts +77 -0
  268. package/dist/i18n/locales/zh.js +77 -0
  269. package/dist/index.js +1197 -1183
  270. package/dist/locales/ar.json +77 -0
  271. package/dist/locales/de.json +77 -0
  272. package/dist/locales/el.json +77 -0
  273. package/dist/locales/en.json +77 -0
  274. package/dist/locales/es.json +77 -0
  275. package/dist/locales/fr.json +77 -0
  276. package/dist/locales/hi.json +77 -0
  277. package/dist/locales/it.json +77 -0
  278. package/dist/locales/ja.json +77 -0
  279. package/dist/locales/nl.json +77 -0
  280. package/dist/locales/pl.json +77 -0
  281. package/dist/locales/pt.json +77 -0
  282. package/dist/locales/ro.json +77 -0
  283. package/dist/locales/ru.json +77 -0
  284. package/dist/locales/sq.json +77 -0
  285. package/dist/locales/sv.json +77 -0
  286. package/dist/locales/tr.json +77 -0
  287. package/dist/locales/zh.json +77 -0
  288. package/dist/patterns/alia-assistant/index.js +1 -1
  289. package/dist/patterns/anamnesis/index.js +1 -1
  290. package/dist/patterns/calendar/index.js +1 -1
  291. package/dist/patterns/forgot-password-form/index.js +1 -1
  292. package/dist/patterns/help-me-write-templates/index.js +2 -2
  293. package/dist/patterns/login-form/index.js +1 -1
  294. package/dist/patterns/marketplace-app-shell/index.js +1 -1
  295. package/dist/patterns/payment-automation-upsell/index.js +1 -1
  296. package/dist/patterns/registration-form/index.js +1 -1
  297. package/dist/patterns/signature-request/index.js +1 -1
  298. package/dist/patterns/workflow-webhook-action/index.d.ts +3 -0
  299. package/dist/patterns/workflow-webhook-action/index.js +6 -0
  300. package/dist/patterns/workflow-webhook-action/workflow-webhook-action.d.ts +93 -0
  301. package/dist/tokens.css +1 -1
  302. package/package.json +13 -1
  303. package/dist/_chunks/avatar-WZY3eGE7.js +0 -123
  304. package/dist/_chunks/dashboard-grid-B2MB7SRS.js +0 -1428
  305. package/dist/_chunks/panel-header-BJkaUwnl.js +0 -128
  306. package/dist/_chunks/practice-profile-hero-Dfc0F60y.js +0 -193
  307. package/dist/_chunks/skeleton-B1KTdJ4N.js +0 -116
@@ -1,52 +1,53 @@
1
1
  import { jsx as a, jsxs as C, Fragment as Ir } from "react/jsx-runtime";
2
- import { forwardRef as Ui, useId as Vi, useRef as N, useState as T, useCallback as g, useMemo as xn, useEffect as ne, useImperativeHandle as Yi } from "react";
2
+ import { forwardRef as Vi, useId as Yi, useRef as N, useState as T, useCallback as g, useMemo as xn, useEffect as ne, useImperativeHandle as Xi } from "react";
3
3
  import * as Fe from "@radix-ui/react-tooltip";
4
- import { c as Xi } from "./index-D2ZczOXr.js";
5
- import { useTranslation as qi } from "react-i18next";
6
- import { u as Gi } from "./registry-DvAUVLHh.js";
7
- import { m as tt, M as Ji, A as Qi } from "./annotation-marker-D-M7y4R1.js";
4
+ import { c as qi } from "./index-D2ZczOXr.js";
5
+ import { useTranslation as Gi } from "react-i18next";
6
+ import { u as Ji } from "./registry-DvAUVLHh.js";
7
+ import { m as tt, M as Qi, A as es } from "./annotation-marker-D-M7y4R1.js";
8
8
  import { B as P } from "./button-D-MQxsA_.js";
9
9
  import { I as Ke } from "./icon-button-C_1TgRiK.js";
10
- import { B as es } from "./button-group-DCOJhvm3.js";
11
- import { C as ts } from "./combobox-U5yfO6o0.js";
10
+ import { B as ts } from "./button-group-DCOJhvm3.js";
11
+ import { C as ns } from "./combobox-vF9O-QoG.js";
12
12
  import { I as vn } from "./icon-button-group-NIHji7_y.js";
13
13
  import { S as Ar } from "./state-backed-text-input-Cgh4ms3p.js";
14
14
  import { C as Ze } from "./card-BA4Ig_kn.js";
15
15
  import { S as Tt } from "./separator-CYU_bGFn.js";
16
- import { S as ns } from "./slider-pZ95bEm7.js";
17
- import { S as rs } from "./switch-D--x7n6h.js";
16
+ import { S as rs } from "./slider-pZ95bEm7.js";
17
+ import { S as is } from "./switch-D--x7n6h.js";
18
+ import { a as ss } from "./format-number-DdzqwMs1.js";
18
19
  import { c as Be } from "./createLucideIcon-DhHxpK9K.js";
19
- import { T as is } from "./type-ggmfVs23.js";
20
- import { C as ss } from "./circle-j7oZoouK.js";
21
- import { S as os } from "./square-DASBRZ0U.js";
22
- import { M as as } from "./minus-BQDHq1c1.js";
23
- import { A as cs } from "./arrow-up-right-C2v_MKsK.js";
24
- import { H as ls, U as ds } from "./undo-2-CYNAzclj.js";
25
- import { M as us } from "./map-pin-BaY37-Km.js";
26
- import { E as fs } from "./eraser-CHOGQfVv.js";
27
- import { T as hs } from "./trash-2-uumy3fy1.js";
28
- import { C as ms } from "./camera-VSklPDCv.js";
29
- import { U as ps } from "./upload-BfT2hzMg.js";
30
- import { Z as gs, a as ys } from "./zoom-out-Dnif4kJx.js";
31
- import { M as xs } from "./maximize-2-BYd2Kti7.js";
20
+ import { T as os } from "./type-ggmfVs23.js";
21
+ import { C as as } from "./circle-j7oZoouK.js";
22
+ import { S as cs } from "./square-DASBRZ0U.js";
23
+ import { M as ls } from "./minus-BQDHq1c1.js";
24
+ import { A as ds } from "./arrow-up-right-C2v_MKsK.js";
25
+ import { H as us, U as fs } from "./undo-2-CYNAzclj.js";
26
+ import { M as hs } from "./map-pin-BaY37-Km.js";
27
+ import { E as ms } from "./eraser-CHOGQfVv.js";
28
+ import { T as ps } from "./trash-2-uumy3fy1.js";
29
+ import { C as gs } from "./camera-VSklPDCv.js";
30
+ import { U as ys } from "./upload-BfT2hzMg.js";
31
+ import { Z as xs, a as vs } from "./zoom-out-Dnif4kJx.js";
32
+ import { M as ws } from "./maximize-2-BYd2Kti7.js";
32
33
  /**
33
34
  * @license lucide-react v1.22.0 - ISC
34
35
  *
35
36
  * This source code is licensed under the ISC license.
36
37
  * See the LICENSE file in the root directory of this source tree.
37
38
  */
38
- const vs = [
39
+ const ks = [
39
40
  ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
40
41
  ["path", { d: "M9 3v18", key: "fh3hqa" }],
41
42
  ["path", { d: "M15 3v18", key: "14nvp0" }]
42
- ], ws = Be("columns-3", vs);
43
+ ], bs = Be("columns-3", ks);
43
44
  /**
44
45
  * @license lucide-react v1.22.0 - ISC
45
46
  *
46
47
  * This source code is licensed under the ISC license.
47
48
  * See the LICENSE file in the root directory of this source tree.
48
49
  */
49
- const ks = [
50
+ const Cs = [
50
51
  [
51
52
  "path",
52
53
  {
@@ -54,14 +55,14 @@ const ks = [
54
55
  key: "edeuup"
55
56
  }
56
57
  ]
57
- ], bs = Be("mouse-pointer-2", ks);
58
+ ], Ss = Be("mouse-pointer-2", Cs);
58
59
  /**
59
60
  * @license lucide-react v1.22.0 - ISC
60
61
  *
61
62
  * This source code is licensed under the ISC license.
62
63
  * See the LICENSE file in the root directory of this source tree.
63
64
  */
64
- const Cs = [
65
+ const Ms = [
65
66
  [
66
67
  "path",
67
68
  {
@@ -69,14 +70,14 @@ const Cs = [
69
70
  key: "1a8usu"
70
71
  }
71
72
  ]
72
- ], Ss = Be("pen", Cs);
73
+ ], Ns = Be("pen", Ms);
73
74
  /**
74
75
  * @license lucide-react v1.22.0 - ISC
75
76
  *
76
77
  * This source code is licensed under the ISC license.
77
78
  * See the LICENSE file in the root directory of this source tree.
78
79
  */
79
- const Ms = [
80
+ const Is = [
80
81
  [
81
82
  "path",
82
83
  { d: "M13 7 8.7 2.7a2.41 2.41 0 0 0-3.4 0L2.7 5.3a2.41 2.41 0 0 0 0 3.4L7 13", key: "orapub" }
@@ -98,29 +99,29 @@ const Ms = [
98
99
  }
99
100
  ],
100
101
  ["path", { d: "m15 5 4 4", key: "1mk7zo" }]
101
- ], Ns = Be("pencil-ruler", Ms);
102
+ ], As = Be("pencil-ruler", Is);
102
103
  /**
103
104
  * @license lucide-react v1.22.0 - ISC
104
105
  *
105
106
  * This source code is licensed under the ISC license.
106
107
  * See the LICENSE file in the root directory of this source tree.
107
108
  */
108
- const Is = [
109
+ const Ts = [
109
110
  ["path", { d: "m19 16-3 3", key: "lp3y45" }],
110
111
  ["path", { d: "M2 21a8 8 0 0 1 12.664-6.5", key: "1ap0vn" }],
111
112
  ["path", { d: "M22 19h-6l3 3", key: "13fjle" }],
112
113
  ["circle", { cx: "10", cy: "8", r: "5", key: "o932ke" }]
113
- ], Tr = Be("user-round-arrow-left", Is);
114
+ ], Tr = Be("user-round-arrow-left", Ts);
114
115
  /**
115
116
  * @license lucide-react v1.22.0 - ISC
116
117
  *
117
118
  * This source code is licensed under the ISC license.
118
119
  * See the LICENSE file in the root directory of this source tree.
119
120
  */
120
- const As = [
121
+ const Es = [
121
122
  ["circle", { cx: "12", cy: "8", r: "5", key: "1hypcn" }],
122
123
  ["path", { d: "M20 21a8 8 0 0 0-16 0", key: "rfgkzh" }]
123
- ], Ts = Be("user-round", As), Es = {
124
+ ], zs = Be("user-round", Es), _s = {
124
125
  type: "string",
125
126
  enum: [
126
127
  "none",
@@ -137,13 +138,13 @@ const As = [
137
138
  }, ke = {
138
139
  type: "string",
139
140
  description: "Face-zone id (e.g. 'glabella', 'nasolabialFold', 'forehead', 'mandibularAngleLeft' on the front view; 'cheekbone', 'masseter', 'chin' on a profile view)."
140
- }, zs = {
141
+ }, Ls = {
141
142
  type: "string",
142
143
  enum: ["front", "profile-left", "profile-right"],
143
144
  description: "Active view id: 'front', 'profile-left', or 'profile-right'."
144
145
  }, nt = {
145
146
  enum: ["observation", "treatment", "concern", "note"]
146
- }, _s = {
147
+ }, Rs = {
147
148
  id: "face-scheme",
148
149
  // pick — focus a zone (transient); set_value / edit_inline — record / clear
149
150
  // findings on a zone; view_change — switch the active view (front / left /
@@ -338,7 +339,7 @@ const As = [
338
339
  argsType: "{ view: FaceViewId }",
339
340
  argsSchema: {
340
341
  type: "object",
341
- properties: { view: zs },
342
+ properties: { view: Ls },
342
343
  required: ["view"]
343
344
  },
344
345
  idempotent: !0,
@@ -370,7 +371,7 @@ const As = [
370
371
  argsType: "{ tool: FaceAnnotationTool | 'none' }",
371
372
  argsSchema: {
372
373
  type: "object",
373
- properties: { tool: Es },
374
+ properties: { tool: _s },
374
375
  required: ["tool"]
375
376
  },
376
377
  idempotent: !0,
@@ -504,7 +505,7 @@ const As = [
504
505
  description: 'Each clickable zone `<g>` carries its zone id as `data-zone` (plus `data-side` for the anatomical side, and `data-zone-selected="true"` while in the multi-selection). Each free-form annotation `<g>` carries `data-annotation` (its id), `data-annotation-kind`, `data-annotation-zone` (its linked zone id, when linked), and `data-selected="true"` while selected. The root `<div>` carries the active view id as `data-view` — only the zones for the active view are in the DOM.'
505
506
  }
506
507
  }
507
- }, Ls = "https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@0.10.18/vision_bundle.mjs", Rs = "https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@0.10.18/wasm", $s = "https://storage.googleapis.com/mediapipe-models/face_landmarker/face_landmarker/float16/1/face_landmarker.task", Fs = {
508
+ }, $s = "https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@0.10.18/vision_bundle.mjs", Fs = "https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@0.10.18/wasm", Ks = "https://storage.googleapis.com/mediapipe-models/face_landmarker/face_landmarker/float16/1/face_landmarker.task", Zs = {
508
509
  "right-eye": [33, 133],
509
510
  // subject's right eye, outer + inner corners
510
511
  "left-eye": [263, 362],
@@ -519,7 +520,7 @@ const As = [
519
520
  subnasale: [2]
520
521
  // base of the nose / top of the philtrum
521
522
  }, wn = /* @__PURE__ */ new Map();
522
- function Ks(n, r, o, l) {
523
+ function Os(n, r, o, l) {
523
524
  const d = `${n}|${r}|${o}`, c = wn.get(d);
524
525
  if (c) return c;
525
526
  l == null || l("loading");
@@ -536,23 +537,23 @@ function Ks(n, r, o, l) {
536
537
  })();
537
538
  return wn.set(d, m), m.catch(() => wn.delete(d)), m;
538
539
  }
539
- function Zs(n) {
540
+ function Ps(n) {
540
541
  const r = new Image();
541
542
  return r.crossOrigin = "anonymous", r.src = n, r.decode().then(() => r);
542
543
  }
543
- async function Os(n, r) {
544
+ async function Ds(n, r) {
544
545
  if (typeof window > "u" || typeof Image > "u")
545
546
  throw new Error("detectFaceLandmarks runs in the browser only.");
546
547
  const {
547
548
  viewWidth: o,
548
549
  viewHeight: l,
549
- visionModuleUrl: d = Ls,
550
- wasmBaseUrl: c = Rs,
551
- modelAssetPath: m = $s,
550
+ visionModuleUrl: d = $s,
551
+ wasmBaseUrl: c = Fs,
552
+ modelAssetPath: m = Ks,
552
553
  onStage: h
553
554
  } = r, [p, y] = await Promise.all([
554
- Zs(n),
555
- Ks(d, c, m, h)
555
+ Ps(n),
556
+ Os(d, c, m, h)
556
557
  ]);
557
558
  h == null || h("detecting");
558
559
  const b = y.detect(p).faceLandmarks[0];
@@ -561,7 +562,7 @@ async function Os(n, r) {
561
562
  x: L + R.x * v * w,
562
563
  y: X + R.y * k * w
563
564
  }), I = [];
564
- for (const [R, H] of Object.entries(Fs)) {
565
+ for (const [R, H] of Object.entries(Zs)) {
565
566
  let q = 0, pe = 0, re = 0;
566
567
  for (const be of H) {
567
568
  const le = b[be];
@@ -573,14 +574,14 @@ async function Os(n, r) {
573
574
  }
574
575
  return I.length >= 3 ? I : null;
575
576
  }
576
- const Ps = "https://cdn.jsdelivr.net/npm/onnxruntime-web@1.19.2/dist/ort.min.mjs", Ds = "https://cdn.jsdelivr.net/npm/onnxruntime-web@1.19.2/dist/", F = 640, Bs = [8, 16, 32], js = [
577
+ const Bs = "https://cdn.jsdelivr.net/npm/onnxruntime-web@1.19.2/dist/ort.min.mjs", js = "https://cdn.jsdelivr.net/npm/onnxruntime-web@1.19.2/dist/", F = 640, Ws = [8, 16, 32], Hs = [
577
578
  "right-eye",
578
579
  "left-eye",
579
580
  "nose-tip",
580
581
  "mouth-right",
581
582
  "mouth-left"
582
583
  ], kn = /* @__PURE__ */ new Map();
583
- async function Ws(n, r, o, l) {
584
+ async function Us(n, r, o, l) {
584
585
  const d = `${n}|${r}|${o}`, c = kn.get(d);
585
586
  if (c) return c;
586
587
  l == null || l("loading");
@@ -597,14 +598,14 @@ async function Ws(n, r, o, l) {
597
598
  })();
598
599
  return kn.set(d, m), m.catch(() => kn.delete(d)), m;
599
600
  }
600
- function Hs(n) {
601
+ function Vs(n) {
601
602
  const r = new Image();
602
603
  return r.crossOrigin = "anonymous", r.src = n, r.decode().then(() => r);
603
604
  }
604
- async function Us() {
605
+ async function Ys() {
605
606
  return (await import("./face_detection_yunet_2023mar-BnsRs4bD.js")).default;
606
607
  }
607
- function Vs(n, r) {
608
+ function Xs(n, r) {
608
609
  const o = r.naturalWidth || r.width, l = r.naturalHeight || r.height, d = Math.min(F / o, F / l), c = Math.round(o * d), m = Math.round(l * d), h = Math.floor((F - c) / 2), p = Math.floor((F - m) / 2), y = document.createElement("canvas");
609
610
  y.width = F, y.height = F;
610
611
  const S = y.getContext("2d");
@@ -621,7 +622,7 @@ function Vs(n, r) {
621
622
  };
622
623
  }
623
624
  const Er = (n) => 1 / (1 + Math.exp(-n));
624
- function Ys(n, r) {
625
+ function qs(n, r) {
625
626
  let o = !1;
626
627
  const l = n.cls_8.data;
627
628
  for (let c = 0; c < Math.min(l.length, 256); c++)
@@ -630,7 +631,7 @@ function Ys(n, r) {
630
631
  break;
631
632
  }
632
633
  let d = null;
633
- for (const c of Bs) {
634
+ for (const c of Ws) {
634
635
  const m = n[`cls_${c}`].data, h = n[`obj_${c}`].data, p = n[`kps_${c}`].data, y = F / c, S = F / c, b = y * S;
635
636
  for (let v = 0; v < b; v++) {
636
637
  let k = m[v], w = h[v];
@@ -648,29 +649,29 @@ function Ys(n, r) {
648
649
  }
649
650
  return d;
650
651
  }
651
- async function Xs(n, r) {
652
+ async function Gs(n, r) {
652
653
  if (typeof window > "u" || typeof Image > "u")
653
654
  throw new Error("detectFaceYuNet runs in the browser only.");
654
655
  const {
655
656
  viewWidth: o,
656
657
  viewHeight: l,
657
- ortModuleUrl: d = Ps,
658
- ortWasmBaseUrl: c = Ds,
659
- modelUrl: m = await Us(),
658
+ ortModuleUrl: d = Bs,
659
+ ortWasmBaseUrl: c = js,
660
+ modelUrl: m = await Ys(),
660
661
  scoreThreshold: h = 0.6,
661
662
  onStage: p
662
663
  } = r, [y, { ort: S, session: b }] = await Promise.all([
663
- Hs(n),
664
- Ws(d, c, m, p)
664
+ Vs(n),
665
+ Us(d, c, m, p)
665
666
  ]);
666
667
  p == null || p("detecting");
667
- const { tensor: v, scale: k, padX: w, padY: L } = Vs(S.Tensor, y), X = await b.run({ [b.inputNames[0]]: v }), $ = Ys(X, h);
668
+ const { tensor: v, scale: k, padX: w, padY: L } = Xs(S.Tensor, y), X = await b.run({ [b.inputNames[0]]: v }), $ = qs(X, h);
668
669
  if (!$) return null;
669
670
  const I = y.naturalWidth || y.width, R = y.naturalHeight || y.height, H = Math.max(o / I, l / R), q = (o - I * H) / 2, pe = (l - R * H) / 2;
670
671
  return $.keypoints.map(([re, be], le) => {
671
672
  const ge = (re - w) / k, ye = (be - L) / k;
672
673
  return {
673
- id: js[le],
674
+ id: Hs[le],
674
675
  photo: {
675
676
  x: q + ge * H,
676
677
  y: pe + ye * H
@@ -682,7 +683,7 @@ const bn = "0 0 808 944", Cn = { x: 404, y: 472 }, jr = {
682
683
  id: "faceContour",
683
684
  labelKey: "faceContour",
684
685
  d: "M688.38,439.4c-9.78,0-15.37,4.04-17.86,6.47,1.31-10.99,2.5-20.62,3.49-28.2,7.55-57.89,5.03-94.39,5.03-94.39-15.15-165.92-111.73-221.46-186.21-239.39h0s-.1-.02-.1-.02c-6.18-1.49-12.21-2.72-18.02-3.73l-.96-.2c-46.02-9.51-93.5-9.51-139.52,0l-.95.2c-5.82,1.01-11.85,2.24-18.04,3.73l-.08.02h0c-74.48,17.94-171.06,73.48-186.21,239.39,0,0-2.52,36.5,5.03,94.39,1,7.68,2.2,17.45,3.53,28.61-2.25-2.35-7.91-6.88-18.26-6.88-13.97,0-29.06,16.21-20.12,63.71,8.94,47.5,17.3,80.48,18.43,97.24,1.11,16.47,24.08,47.91,41.43,38.23.9,8.33,1.42,13.17,1.42,13.17,0,0,8.81,59.15,56.63,104.46,12.62,11.95,25.84,23.46,38.49,33.94,7.14-4.56,24-16.96,29.06-35.21.9-3.24,1.73-6.33,2.52-9.29,2.46-9.17,4.59-17.1,7.4-24.46,3.44-9.01,7.62-16.28,13.25-23.04-47.54-46.57-49.82-89.3-48.75-104.93-21.75-2.47-38.06-19.4-47.37-49.37-7.27-23.39-7.77-46.39-7.79-47.36-.02-1.34.43-2.57,1.21-3.54-.47-2.21-.65-3.58-.67-3.77-.28-2.23.97-4.38,3.05-5.24.34-.14.69-.23,1.04-.29.47-3.26,2.23-10.86,8.8-18.21,10.82-12.11,28.95-17.92,53.93-17.22,41.5,1.13,55.11,17.49,59.58,28.15,1.45.85,2.49,2.34,2.68,4.14,0,.05.02.21.05.45.22.48.36,1,.42,1.56.04.41.34,3.71.16,8.68.17,6.11.1,14.39-.75,23.68-.27,2.9-.6,5.73-.98,8.49,4.1-9.94,7.68-20.29,11.15-30.32l.31-.89-10.84-54.18c-2.15-3.39-8.76-12.5-21.75-19.51-21.63-11.68-51.16-12.3-85.4-1.8-2.58.79-5.32-.61-6.19-3.16l-53.03-154.45c-.88-1.09-1.31-2.52-1.05-4.01.26-1.43,6.68-35.35,39.46-69.52,19.15-19.96,43.37-35.84,72.01-47.21,35.3-14.02,77.45-21.18,125.28-21.27h0s.98,0,.98,0c47.83.1,89.98,7.25,125.28,21.27,28.63,11.37,52.86,27.26,72.01,47.21,30.62,31.92,38.24,63.61,39.32,68.82.29.8.42,1.35.47,1.59.17.87.11,1.77-.17,2.61l-53.21,154.96c-.88,2.55-3.62,3.95-6.19,3.16-34.24-10.5-63.77-9.88-85.4,1.8-11.42,6.17-17.92,13.96-20.78,18.06l-11.25,56.25.04.11c2.95,8.52,5.98,17.28,9.34,25.81-.14-1.26-.28-2.53-.4-3.82-.53-5.79-.75-11.19-.81-15.92-1.11-9.09-.51-15.85-.45-16.44.11-1.1.59-2.08,1.3-2.85.19-.72.52-1.37.96-1.94,3.86-10.54,16.77-28.3,60.04-29.48,24.93-.69,43.04,5.1,53.85,17.2,6.53,7.3,8.3,14.85,8.78,18.13.53.04,1.05.16,1.56.37,2.08.86,3.32,3.01,3.05,5.24-.02.14-.12.93-.37,2.25,1.7.96,2.84,2.8,2.8,4.89-.02.97-.52,23.97-7.79,47.36-8.99,28.91-24.49,45.69-45.11,49.05,1.16,15.29-.68,58.78-49.42,106.1,5.35,6.56,9.36,13.63,12.68,22.33,2.81,7.36,4.94,15.28,7.4,24.45.79,2.96,1.62,6.05,2.52,9.29,5.07,18.28,21.97,30.69,29.09,35.23,12.65-10.48,25.88-21.99,38.5-33.95,47.82-45.31,56.63-104.46,56.63-104.46,0,0,.51-4.77,1.4-13,17.31,9.1,39.99-22.04,41.09-38.41,1.13-16.77,9.49-49.74,18.43-97.24,8.94-47.5-6.15-63.71-20.12-63.71Z"
685
- }, qs = [
686
+ }, Js = [
686
687
  {
687
688
  id: "lateralNeckRight",
688
689
  labelKey: "lateralNeckRight",
@@ -859,7 +860,7 @@ const bn = "0 0 808 944", Cn = { x: 404, y: 472 }, jr = {
859
860
  cy: 487,
860
861
  side: "left"
861
862
  }
862
- ], Gs = [
863
+ ], Qs = [
863
864
  { id: "right-eye", labelKey: "rightEye", x: 268, y: 487 },
864
865
  { id: "left-eye", labelKey: "leftEye", x: 535, y: 487 },
865
866
  { id: "nose-tip", labelKey: "noseTip", x: 403, y: 620 },
@@ -958,8 +959,8 @@ const bn = "0 0 808 944", Cn = { x: 404, y: 472 }, jr = {
958
959
  pivot: Cn,
959
960
  contour: jr,
960
961
  // The generator guarantees every clickable zone carries cx/cy/side.
961
- zones: qs,
962
- landmarks: Gs
962
+ zones: Js,
963
+ landmarks: Qs
963
964
  },
964
965
  // The reshaped profile zones face +x; the right profile is the same mesh
965
966
  // mirrored. Both fit on the eye/nose-tip/mouth anchors — auto-detect and manual
@@ -987,7 +988,7 @@ const bn = "0 0 808 944", Cn = { x: 404, y: 472 }, jr = {
987
988
  landmarks: Lr,
988
989
  mirror: !0
989
990
  }
990
- }, Js = [
991
+ }, eo = [
991
992
  "front",
992
993
  "profile-left",
993
994
  "profile-right"
@@ -1001,7 +1002,7 @@ const bn = "0 0 808 944", Cn = { x: 404, y: 472 }, jr = {
1001
1002
  treatment: { shape: "square", tone: "success" },
1002
1003
  concern: { shape: "triangle", tone: "warning" },
1003
1004
  note: { shape: "diamond", tone: "neutral" }
1004
- }, Qs = [
1005
+ }, to = [
1005
1006
  "marker",
1006
1007
  "pen",
1007
1008
  "highlighter",
@@ -1010,7 +1011,7 @@ const bn = "0 0 808 944", Cn = { x: 404, y: 472 }, jr = {
1010
1011
  "rect",
1011
1012
  "ellipse",
1012
1013
  "text"
1013
- ], ia = {
1014
+ ], aa = {
1014
1015
  marker: "marker",
1015
1016
  pen: "pen",
1016
1017
  highlighter: "highlighter",
@@ -1020,13 +1021,13 @@ const bn = "0 0 808 944", Cn = { x: 404, y: 472 }, jr = {
1020
1021
  ellipse: "ellipse",
1021
1022
  text: "text"
1022
1023
  };
1023
- function sa(n) {
1024
+ function ca(n) {
1024
1025
  return n === "arrow" || n === "line" || n === "rect" || n === "ellipse";
1025
1026
  }
1026
- function oa(n) {
1027
+ function la(n) {
1027
1028
  return n === "pen" || n === "highlighter";
1028
1029
  }
1029
- function aa(n) {
1030
+ function da(n) {
1030
1031
  return n === "marker" || n === "text";
1031
1032
  }
1032
1033
  function Hr(n) {
@@ -1056,11 +1057,11 @@ function Nn(n, r, o) {
1056
1057
  }
1057
1058
  }
1058
1059
  }
1059
- function eo(n, r, o = 16) {
1060
+ function no(n, r, o = 16) {
1060
1061
  const l = r.x - n.x, d = r.y - n.y, c = Math.hypot(l, d) || 1, m = l / c, h = d / c, p = 0.5, y = Math.cos(p), S = Math.sin(p), b = r.x - o * (m * y - h * S), v = r.y - o * (h * y + m * S), k = r.x - o * (m * y + h * S), w = r.y - o * (h * y - m * S);
1061
1062
  return `M ${r.x} ${r.y} L ${b} ${v} M ${r.x} ${r.y} L ${k} ${w}`;
1062
1063
  }
1063
- function to(n) {
1064
+ function ro(n) {
1064
1065
  switch (n.kind) {
1065
1066
  case "marker":
1066
1067
  case "text":
@@ -1079,7 +1080,7 @@ function to(n) {
1079
1080
  }
1080
1081
  }
1081
1082
  }
1082
- function no(n) {
1083
+ function io(n) {
1083
1084
  switch (n.kind) {
1084
1085
  case "marker":
1085
1086
  case "text":
@@ -1096,8 +1097,8 @@ function no(n) {
1096
1097
  return { x: (n.from.x + n.to.x) / 2, y: (n.from.y + n.to.y) / 2 };
1097
1098
  }
1098
1099
  }
1099
- const ro = 28, Mn = 26;
1100
- function io(n, r = 30) {
1100
+ const so = 28, Mn = 26;
1101
+ function oo(n, r = 30) {
1101
1102
  switch (n.kind) {
1102
1103
  case "marker":
1103
1104
  return { type: "circle", cx: n.x, cy: n.y, r: Mn };
@@ -1131,13 +1132,13 @@ function rt(n, r) {
1131
1132
  y: n[1] * r.x + n[3] * r.y + n[5]
1132
1133
  };
1133
1134
  }
1134
- function so(n) {
1135
+ function ao(n) {
1135
1136
  const r = n[0] * n[3] - n[1] * n[2], o = n[3] / r, l = -n[1] / r, d = -n[2] / r, c = n[0] / r;
1136
1137
  return [o, l, d, c, -(o * n[4] + d * n[5]), -(l * n[4] + c * n[5])];
1137
1138
  }
1138
- const oo = 0.84;
1139
+ const co = 0.84;
1139
1140
  function $r(n, r, o, l = {}) {
1140
- const d = `0 0 ${o.width} ${o.height}`, c = l.fraction ?? oo;
1141
+ const d = `0 0 ${o.width} ${o.height}`, c = l.fraction ?? co;
1141
1142
  if (c <= 0 || c > 1) return d;
1142
1143
  const m = [
1143
1144
  { x: n.x, y: n.y },
@@ -1160,12 +1161,12 @@ function $r(n, r, o, l = {}) {
1160
1161
  const X = Math.min(Math.max(h + b / 2 - L / 2, 0), o.width - L), $ = Math.min(Math.max(p + v / 2 - w / 2, 0), o.height - w);
1161
1162
  return `${Math.round(X)} ${Math.round($)} ${Math.round(L)} ${Math.round(w)}`;
1162
1163
  }
1163
- const ao = 1, Ur = 8, it = { k: 1, fx: 0.5, fy: 0.5 }, De = (n) => Math.min(Math.max(n, 0), 1);
1164
+ const lo = 1, Ur = 8, it = { k: 1, fx: 0.5, fy: 0.5 }, De = (n) => Math.min(Math.max(n, 0), 1);
1164
1165
  function _t(n) {
1165
1166
  const [r = 0, o = 0, l = 0, d = 0] = n.split(/\s+/).map(Number);
1166
1167
  return { x: r, y: o, width: l, height: d };
1167
1168
  }
1168
- function co(n) {
1169
+ function uo(n) {
1169
1170
  return `${Math.round(n.x)} ${Math.round(n.y)} ${Math.round(n.width)} ${Math.round(n.height)}`;
1170
1171
  }
1171
1172
  function st(n, r) {
@@ -1179,7 +1180,7 @@ function st(n, r) {
1179
1180
  };
1180
1181
  }
1181
1182
  function Fr(n, r, o, l) {
1182
- const d = Math.min(Math.max(r.k * l, ao), Ur);
1183
+ const d = Math.min(Math.max(r.k * l, lo), Ur);
1183
1184
  if (d <= 1) return it;
1184
1185
  if (d === r.k || !Number.isFinite(d)) return r;
1185
1186
  const c = st(n, r), m = n.width / d, h = n.height / d, p = c.width > 0 ? De((o.x - c.x) / c.width) : 0.5, y = c.height > 0 ? De((o.y - c.y) / c.height) : 0.5, S = o.x - p * m, b = o.y - y * h, v = n.width - m, k = n.height - h;
@@ -1189,7 +1190,7 @@ function Fr(n, r, o, l) {
1189
1190
  fy: k > 0 ? De((b - n.y) / k) : 0.5
1190
1191
  };
1191
1192
  }
1192
- function lo(n, r, o, l) {
1193
+ function fo(n, r, o, l) {
1193
1194
  if (r.k <= 1) return r;
1194
1195
  const d = st(n, r), c = n.width - d.width, m = n.height - d.height;
1195
1196
  return {
@@ -1199,11 +1200,11 @@ function lo(n, r, o, l) {
1199
1200
  };
1200
1201
  }
1201
1202
  const Ft = Math.PI / 180;
1202
- function uo(n, r) {
1203
+ function ho(n, r) {
1203
1204
  const o = n.rotation * Ft, l = Math.cos(o), d = Math.sin(o), c = Math.tan(n.shear * Ft), m = n.scaleX * l, h = n.scaleX * d, p = n.scaleY * (c * l - d), y = n.scaleY * (c * d + l), S = n.translateX + r.x - (m * r.x + p * r.y), b = n.translateY + r.y - (h * r.x + y * r.y);
1204
1205
  return [m, h, p, y, S, b];
1205
1206
  }
1206
- function fo(n, r) {
1207
+ function mo(n, r) {
1207
1208
  const [o, l, d, c, m, h] = n, p = Math.hypot(o, l), y = Math.atan2(l, o) / Ft, S = o * c - l * d, b = p === 0 ? 0 : S / p, v = Math.atan2(o * d + l * c, S) / Ft, k = m - r.x + (o * r.x + d * r.y), w = h - r.y + (l * r.x + c * r.y);
1208
1209
  return { scaleX: p, scaleY: b, rotation: y, shear: v, translateX: k, translateY: w };
1209
1210
  }
@@ -1224,7 +1225,7 @@ function Kr(n, r) {
1224
1225
  ], [pe, re, be] = q(p, y, S), [le, ge, ye] = q(b, v, k);
1225
1226
  return [pe, le, re, ge, be, ye];
1226
1227
  }
1227
- function ho(n) {
1228
+ function po(n) {
1228
1229
  const r = (p) => {
1229
1230
  var y;
1230
1231
  return (y = n.find((S) => S.id === p)) == null ? void 0 : y.photo;
@@ -1237,14 +1238,14 @@ function ho(n) {
1237
1238
  { id: "mouth", photo: h(c, m) }
1238
1239
  ];
1239
1240
  }
1240
- function mo() {
1241
+ function go() {
1241
1242
  return typeof navigator < "u" && typeof navigator.mediaDevices < "u" && typeof navigator.mediaDevices.getUserMedia == "function";
1242
1243
  }
1243
- function po(n) {
1244
+ function yo(n) {
1244
1245
  const r = n instanceof Error ? n.name : "";
1245
1246
  return r === "NotAllowedError" || r === "SecurityError" ? "permission-denied" : r === "NotFoundError" || r === "OverconstrainedError" ? "no-camera" : r === "NotReadableError" || r === "AbortError" ? "not-readable" : "capture-failed";
1246
1247
  }
1247
- const go = {
1248
+ const xo = {
1248
1249
  "permission-denied": "faceScheme.capture.error.permissionDenied",
1249
1250
  "no-camera": "faceScheme.capture.error.noCamera",
1250
1251
  "not-readable": "faceScheme.capture.error.notReadable",
@@ -1264,32 +1265,32 @@ const go = {
1264
1265
  warning: "ds:[stroke:var(--warning)]",
1265
1266
  error: "ds:[stroke:var(--destructive)]",
1266
1267
  accent: "ds:[stroke:var(--accent)]"
1267
- }, yo = 13, xo = 5, vo = 24, Rt = 5, wo = 26, Zr = 30, $t = 14, Or = [], Pr = "__draft__", Dr = [
1268
+ }, vo = 13, wo = 5, ko = 24, Rt = 5, bo = 26, Zr = 30, $t = 14, Or = [], Pr = "__draft__", Dr = [
1268
1269
  "profile-left",
1269
1270
  "front",
1270
1271
  "profile-right"
1271
- ], ko = {
1272
+ ], Co = {
1272
1273
  "profile-left": /* @__PURE__ */ a(Tr, { "aria-hidden": "true" }),
1273
- front: /* @__PURE__ */ a(Ts, { "aria-hidden": "true" }),
1274
+ front: /* @__PURE__ */ a(zs, { "aria-hidden": "true" }),
1274
1275
  "profile-right": /* @__PURE__ */ a(Tr, { "aria-hidden": "true", className: "ds:-scale-x-100" })
1275
- }, bo = {
1276
- select: bs,
1277
- marker: us,
1278
- pen: Ss,
1279
- highlighter: ls,
1280
- arrow: cs,
1281
- line: as,
1282
- rect: os,
1283
- ellipse: ss,
1284
- text: is
1285
- }, Co = [
1276
+ }, So = {
1277
+ select: Ss,
1278
+ marker: hs,
1279
+ pen: Ns,
1280
+ highlighter: us,
1281
+ arrow: ds,
1282
+ line: ls,
1283
+ rect: cs,
1284
+ ellipse: as,
1285
+ text: os
1286
+ }, Mo = [
1286
1287
  "accent",
1287
1288
  "info",
1288
1289
  "success",
1289
1290
  "warning",
1290
1291
  "error",
1291
1292
  "neutral"
1292
- ], Br = Xi(
1293
+ ], Br = qi(
1293
1294
  [
1294
1295
  "ds:[vector-effect:non-scaling-stroke]",
1295
1296
  "ds:transition-[fill-opacity,stroke-opacity] ds:[transition-duration:var(--animation-duration)]",
@@ -1320,21 +1321,21 @@ const go = {
1320
1321
  ],
1321
1322
  defaultVariants: { interactive: !1, marked: !1, selected: !1 }
1322
1323
  }
1323
- ), So = {
1324
+ ), No = {
1324
1325
  scaleX: { min: 0.3, max: 1.8, step: 0.01 },
1325
1326
  scaleY: { min: 0.3, max: 1.8, step: 0.01 },
1326
1327
  rotation: { min: -20, max: 20, step: 0.5 },
1327
1328
  shear: { min: -20, max: 20, step: 0.5 },
1328
1329
  translateX: { min: -240, max: 240, step: 1 },
1329
1330
  translateY: { min: -240, max: 240, step: 1 }
1330
- }, Mo = [
1331
+ }, Io = [
1331
1332
  "scaleX",
1332
1333
  "scaleY",
1333
1334
  "rotation",
1334
1335
  "shear",
1335
1336
  "translateX",
1336
1337
  "translateY"
1337
- ], No = Ui(
1338
+ ], Ao = Vi(
1338
1339
  ({
1339
1340
  id: n,
1340
1341
  patientPhoto: r,
@@ -1379,20 +1380,20 @@ const go = {
1379
1380
  ariaLabel: Xr,
1380
1381
  className: qr
1381
1382
  }, Gr) => {
1382
- const { t: f } = qi("ui"), G = Vi(), lt = n ?? G, An = N(null), dt = N(null), ut = N(null), We = N(null), Tn = N(null), En = N(null), Ot = N(!1), Pt = l !== void 0, [Jr, Qr] = T(
1383
+ const { t: f, i18n: Jr } = Gi("ui"), G = Yi(), lt = n ?? G, An = N(null), dt = N(null), ut = N(null), We = N(null), Tn = N(null), En = N(null), Ot = N(!1), Pt = l !== void 0, [Qr, ei] = T(
1383
1384
  l ?? d
1384
- ), A = Pt ? l : Jr, K = N(A);
1385
+ ), A = Pt ? l : Qr, K = N(A);
1385
1386
  K.current = A;
1386
1387
  const ft = g(
1387
1388
  (e) => {
1388
- Pt || Qr(e), c == null || c(e);
1389
+ Pt || ei(e), c == null || c(e);
1389
1390
  },
1390
1391
  [Pt, c]
1391
- ), [Dt, ht] = T(be), zn = `${G}-panel`, [mt, _n] = T(h), [Ln, ei] = T(!0), M = Sn[A], [, , B, se] = M.viewBox.split(" ").map(Number), _ = p === "interactive", Ce = _ && Yr === "adjust", Bt = y !== void 0, [ti, ni] = T(S ?? {}), He = Bt ? y : ti, j = N(He);
1392
+ ), [Dt, ht] = T(be), zn = `${G}-panel`, [mt, _n] = T(h), [Ln, ti] = T(!0), M = Sn[A], [, , B, se] = M.viewBox.split(" ").map(Number), _ = p === "interactive", Ce = _ && Yr === "adjust", Bt = y !== void 0, [ni, ri] = T(S ?? {}), He = Bt ? y : ni, j = N(He);
1392
1393
  j.current = He;
1393
1394
  const oe = g(
1394
1395
  (e) => {
1395
- Bt || ni(e), b == null || b(e);
1396
+ Bt || ri(e), b == null || b(e);
1396
1397
  },
1397
1398
  [Bt, b]
1398
1399
  ), pt = g(
@@ -1417,16 +1418,16 @@ const go = {
1417
1418
  ) ? gt(e, t) : pt(e, t);
1418
1419
  },
1419
1420
  [pt, gt]
1420
- ), J = _ && w === "multi", yt = L !== void 0, [ri, ii] = T(
1421
+ ), J = _ && w === "multi", yt = L !== void 0, [ii, si] = T(
1421
1422
  X ?? []
1422
- ), U = yt ? L : ri, de = N(U);
1423
+ ), U = yt ? L : ii, de = N(U);
1423
1424
  de.current = U;
1424
1425
  const $n = xn(
1425
1426
  () => new Set(U),
1426
1427
  [U]
1427
1428
  ), Ee = g(
1428
1429
  (e) => {
1429
- yt || (de.current = e), yt || ii(e), $ == null || $(e);
1430
+ yt || (de.current = e), yt || si(e), $ == null || $(e);
1430
1431
  },
1431
1432
  [yt, $]
1432
1433
  ), Fn = g(
@@ -1463,27 +1464,27 @@ const go = {
1463
1464
  s && oe(i);
1464
1465
  },
1465
1466
  [oe]
1466
- ), Wt = D !== void 0, [si, oi] = T(
1467
+ ), Wt = D !== void 0, [oi, ai] = T(
1467
1468
  Vr ?? {}
1468
- ), vt = Wt ? D : si, Q = vt[A] ?? Pe, Ht = N(Q);
1469
+ ), vt = Wt ? D : oi, Q = vt[A] ?? Pe, Ht = N(Q);
1469
1470
  Ht.current = Q;
1470
1471
  const On = N(vt);
1471
1472
  On.current = vt;
1472
1473
  const ae = g(
1473
1474
  (e) => {
1474
1475
  const t = { ...On.current, [A]: e };
1475
- Wt || oi(t), ot == null || ot(t);
1476
+ Wt || ai(t), ot == null || ot(t);
1476
1477
  },
1477
1478
  [Wt, ot, A]
1478
1479
  ), Ut = xn(
1479
- () => fo(Q, M.pivot),
1480
+ () => mo(Q, M.pivot),
1480
1481
  [Q, M.pivot]
1481
1482
  ), ce = g(
1482
1483
  (e) => M.mirror ? { x: B - e.x, y: e.y } : e,
1483
1484
  [M.mirror, B]
1484
1485
  ), [Vt, Pn] = T(
1485
1486
  () => M.landmarks.map((e) => ce(rt(Q, e)))
1486
- ), wt = N(null), [ai, Dn] = T(null), Bn = N(null), [xe, Se] = T(it), Yt = N(xe);
1487
+ ), wt = N(null), [ci, Dn] = T(null), Bn = N(null), [xe, Se] = T(it), Yt = N(xe);
1487
1488
  Yt.current = xe;
1488
1489
  const kt = N(M.viewBox), ze = N(null);
1489
1490
  ne(() => {
@@ -1540,12 +1541,12 @@ const go = {
1540
1541
  } catch {
1541
1542
  }
1542
1543
  }
1543
- }, []), ci = g(
1544
+ }, []), li = g(
1544
1545
  (e) => (t) => {
1545
1546
  wt.current = e, Dn(Bn.current), t.currentTarget.setPointerCapture(t.pointerId);
1546
1547
  },
1547
1548
  []
1548
- ), li = g(
1549
+ ), di = g(
1549
1550
  (e) => {
1550
1551
  const t = wt.current;
1551
1552
  if (t === null) return;
@@ -1555,26 +1556,26 @@ const go = {
1555
1556
  ae(Kr(u, s.map(ce)));
1556
1557
  },
1557
1558
  [Vt, ve, M.landmarks, ae, ce]
1558
- ), di = g(() => {
1559
+ ), ui = g(() => {
1559
1560
  wt.current = null, Dn(null);
1560
1561
  }, []), [Ve, ue] = T("idle"), [Vn, _e] = T(
1561
1562
  null
1562
- ), [Yn, ui] = T({}), Me = (o == null ? void 0 : o[A]) ?? (A === "front" ? r : void 0), ee = Yn[A] ?? (Me == null ? void 0 : Me.src), Gt = I !== void 0, [fi, hi] = T(R ?? {}), Ct = Gt ? I : fi, W = N(Ct);
1563
+ ), [Yn, fi] = T({}), Me = (o == null ? void 0 : o[A]) ?? (A === "front" ? r : void 0), ee = Yn[A] ?? (Me == null ? void 0 : Me.src), Gt = I !== void 0, [hi, mi] = T(R ?? {}), Ct = Gt ? I : hi, W = N(Ct);
1563
1564
  W.current = Ct;
1564
1565
  const Ne = Ct[A] ?? Or, Z = g(
1565
1566
  (e) => {
1566
1567
  const t = { ...W.current };
1567
- e.length > 0 ? t[K.current] = e : delete t[K.current], W.current = t, Gt || hi(t), H == null || H(t);
1568
+ e.length > 0 ? t[K.current] = e : delete t[K.current], W.current = t, Gt || mi(t), H == null || H(t);
1568
1569
  },
1569
1570
  [Gt, H]
1570
- ), mi = N(0), Xn = g(
1571
- () => `${lt}-a${mi.current += 1}`,
1571
+ ), pi = N(0), Xn = g(
1572
+ () => `${lt}-a${pi.current += 1}`,
1572
1573
  [lt]
1573
- ), [Ie, pi] = T(null), te = N(null);
1574
+ ), [Ie, gi] = T(null), te = N(null);
1574
1575
  te.current = Ie;
1575
1576
  const O = g(
1576
1577
  (e) => {
1577
- te.current !== e && (te.current = e, pi(e), q == null || q(e));
1578
+ te.current !== e && (te.current = e, gi(e), q == null || q(e));
1578
1579
  },
1579
1580
  [q]
1580
1581
  ), qn = g(
@@ -1582,7 +1583,7 @@ const go = {
1582
1583
  const t = dt.current;
1583
1584
  if (!t) return null;
1584
1585
  const i = rt(
1585
- so(Ht.current),
1586
+ ao(Ht.current),
1586
1587
  ce(e)
1587
1588
  ), s = t.querySelectorAll(
1588
1589
  "[data-zone] > path:first-of-type"
@@ -1599,7 +1600,7 @@ const go = {
1599
1600
  [ce]
1600
1601
  ), Ae = g(
1601
1602
  (e) => {
1602
- const t = e.id ?? Xn(), i = { ...e, id: t }, s = i.zoneId === void 0 ? { ...i, zoneId: qn(no(i)) } : i, u = W.current[K.current] ?? [];
1603
+ const t = e.id ?? Xn(), i = { ...e, id: t }, s = i.zoneId === void 0 ? { ...i, zoneId: qn(io(i)) } : i, u = W.current[K.current] ?? [];
1603
1604
  return Z([...u, s]), O(t), t;
1604
1605
  },
1605
1606
  [Z, Xn, O, qn]
@@ -1622,18 +1623,18 @@ const go = {
1622
1623
  e.length > 0 && Z(e.slice(0, -1));
1623
1624
  }, [Z]), en = g(() => {
1624
1625
  (W.current[K.current] ?? []).length > 0 && Z([]);
1625
- }, [Z]), tn = le !== void 0, [gi, yi] = T(
1626
+ }, [Z]), tn = le !== void 0, [yi, xi] = T(
1626
1627
  ge
1627
- ), V = _ ? (tn ? le : gi) ?? null : null, nn = N(V);
1628
+ ), V = _ ? (tn ? le : yi) ?? null : null, nn = N(V);
1628
1629
  nn.current = V;
1629
1630
  const rn = g(
1630
1631
  (e) => {
1631
- tn || yi(e), ye == null || ye(e);
1632
+ tn || xi(e), ye == null || ye(e);
1632
1633
  },
1633
1634
  [tn, ye]
1634
- ), [sn, xi] = T(
1635
+ ), [sn, vi] = T(
1635
1636
  ie
1636
- ), [on, vi] = T(z), Gn = N(sn);
1637
+ ), [on, wi] = T(z), Gn = N(sn);
1637
1638
  Gn.current = sn;
1638
1639
  const Ye = N(on);
1639
1640
  Ye.current = on;
@@ -1656,7 +1657,7 @@ const go = {
1656
1657
  const e = te.current;
1657
1658
  e !== null && !Ne.some((t) => t.id === e) && O(null);
1658
1659
  }, [Ne, O]);
1659
- const qe = V !== null, wi = g(
1660
+ const qe = V !== null, ki = g(
1660
1661
  (e) => {
1661
1662
  var s, u;
1662
1663
  const t = nn.current;
@@ -1698,7 +1699,7 @@ const go = {
1698
1699
  });
1699
1700
  },
1700
1701
  [ve, Ae]
1701
- ), ki = g(
1702
+ ), bi = g(
1702
1703
  (e) => {
1703
1704
  if (!Nt.current) return;
1704
1705
  const t = ve(e.clientX, e.clientY);
@@ -1720,7 +1721,7 @@ const go = {
1720
1721
  Ae(s);
1721
1722
  },
1722
1723
  [Ae]
1723
- ), ln = Xe ? Ne.find((e) => e.id === Xe && e.kind === "text") : void 0, bi = g(
1724
+ ), ln = Xe ? Ne.find((e) => e.id === Xe && e.kind === "text") : void 0, Ci = g(
1724
1725
  (e) => {
1725
1726
  const t = cn.current;
1726
1727
  if (!t) return;
@@ -1747,7 +1748,7 @@ const go = {
1747
1748
  }, [Le]), un = g(async () => {
1748
1749
  var e;
1749
1750
  if (Kt) {
1750
- if (!mo()) {
1751
+ if (!go()) {
1751
1752
  _e("insecure-context"), ue("error");
1752
1753
  return;
1753
1754
  }
@@ -1774,15 +1775,15 @@ const go = {
1774
1775
  }
1775
1776
  ue("streaming");
1776
1777
  } catch (t) {
1777
- Le(), _e(po(t)), ue("error");
1778
+ Le(), _e(yo(t)), ue("error");
1778
1779
  }
1779
1780
  }
1780
1781
  }, [Kt, Zt, Le]), Ge = g(
1781
1782
  (e, t, i) => {
1782
- ui((s) => ({ ...s, [A]: e })), ct == null || ct({ src: e, width: t, height: i, view: A });
1783
+ fi((s) => ({ ...s, [A]: e })), ct == null || ct({ src: e, width: t, height: i, view: A });
1783
1784
  },
1784
1785
  [ct, A]
1785
- ), Ci = g(() => {
1786
+ ), Si = g(() => {
1786
1787
  const e = ut.current, t = (e == null ? void 0 : e.videoWidth) || (e == null ? void 0 : e.clientWidth) || 0, i = (e == null ? void 0 : e.videoHeight) || (e == null ? void 0 : e.clientHeight) || 0;
1787
1788
  if (!e || e.readyState < 2 || t === 0 || i === 0) {
1788
1789
  _e("capture-failed"), ue("error");
@@ -1802,7 +1803,7 @@ const go = {
1802
1803
  return;
1803
1804
  }
1804
1805
  Le(), Ge(s.toDataURL("image/jpeg", 0.92), t, i), ue("idle");
1805
- }, [Le, Ge]), Si = g(
1806
+ }, [Le, Ge]), Mi = g(
1806
1807
  (e) => {
1807
1808
  var s;
1808
1809
  const t = (s = e.target.files) == null ? void 0 : s[0];
@@ -1826,9 +1827,9 @@ const go = {
1826
1827
  var e;
1827
1828
  ir.current && !fe && ((e = En.current) == null || e.focus()), ir.current = fe;
1828
1829
  }, [fe]);
1829
- const [At, Mi] = T("idle"), Re = g(
1830
+ const [At, Ni] = T("idle"), Re = g(
1830
1831
  (e) => {
1831
- Mi(e), at == null || at(e);
1832
+ Ni(e), at == null || at(e);
1832
1833
  },
1833
1834
  [at]
1834
1835
  ), fn = g(async () => {
@@ -1839,7 +1840,7 @@ const go = {
1839
1840
  Re("loading");
1840
1841
  let i;
1841
1842
  if (M.id === "front")
1842
- i = await Os(ee, {
1843
+ i = await Ds(ee, {
1843
1844
  viewWidth: B,
1844
1845
  viewHeight: se,
1845
1846
  onStage: t,
@@ -1847,7 +1848,7 @@ const go = {
1847
1848
  modelAssetPath: e.modelAssetPath
1848
1849
  });
1849
1850
  else {
1850
- const s = await Xs(ee, {
1851
+ const s = await Gs(ee, {
1851
1852
  viewWidth: B,
1852
1853
  viewHeight: se,
1853
1854
  onStage: t,
@@ -1855,7 +1856,7 @@ const go = {
1855
1856
  ortWasmBaseUrl: e.ortWasmBaseUrl,
1856
1857
  modelUrl: e.yunetModelUrl
1857
1858
  });
1858
- i = s && ho(s);
1859
+ i = s && po(s);
1859
1860
  }
1860
1861
  return !i || i.length < 3 ? (Re("no-face"), !1) : (bt(i), Re("done"), !0);
1861
1862
  } catch {
@@ -1954,7 +1955,7 @@ const go = {
1954
1955
  qt
1955
1956
  ]
1956
1957
  );
1957
- Yi(Gr, () => hn, [hn]), Gi(_s, hn, lt);
1958
+ Xi(Gr, () => hn, [hn]), Ji(Rs, hn, lt);
1958
1959
  const or = g(
1959
1960
  (e) => {
1960
1961
  const t = f(`faceScheme.zone.${e.labelKey}`), i = j.current[e.id] ?? [];
@@ -1978,12 +1979,12 @@ const go = {
1978
1979
  Rn,
1979
1980
  v
1980
1981
  ]
1981
- ), Ni = Me != null && Me.altKey ? f(Me.altKey) : f("faceScheme.photo.defaultAlt"), Ii = M.mirror ? `translate(${B} 0) scale(-1 1) ${zt(Q)}` : zt(Q), Ai = g(
1982
+ ), Ii = Me != null && Me.altKey ? f(Me.altKey) : f("faceScheme.photo.defaultAlt"), Ai = M.mirror ? `translate(${B} 0) scale(-1 1) ${zt(Q)}` : zt(Q), Ti = g(
1982
1983
  (e, t) => {
1983
- ae(uo({ ...Ut, [e]: t }, M.pivot));
1984
+ ae(ho({ ...Ut, [e]: t }, M.pivot));
1984
1985
  },
1985
1986
  [ae, Ut, M.pivot]
1986
- ), cr = !!je && !!ee && M.landmarks.length > 0, mn = Kt, lr = m && Js.length > 1, Je = _ && pe, he = _ && re, pn = J || Je || Ce || he, dr = Dt && pn, we = mt === "all" && lr;
1987
+ ), cr = !!je && !!ee && M.landmarks.length > 0, mn = Kt, lr = m && eo.length > 1, Je = _ && pe, he = _ && re, pn = J || Je || Ce || he, dr = Dt && pn, we = mt === "all" && lr;
1987
1988
  ne(() => {
1988
1989
  Se(it);
1989
1990
  }, [A, he]), ne(() => {
@@ -2005,11 +2006,11 @@ const go = {
2005
2006
  };
2006
2007
  return e.addEventListener("wheel", t, { passive: !1 }), () => e.removeEventListener("wheel", t);
2007
2008
  }, [he, ve, we, A, fe]);
2008
- const Qe = dr && !we, Ti = Qe ? "ds:flex ds:flex-col ds:gap-[var(--spacing-md)] ds:lg:flex-row ds:lg:items-stretch ds:lg:justify-center" : "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", Ei = Qe ? "ds:flex ds:w-full ds:min-w-0 ds:flex-col ds:gap-[var(--spacing-sm)] ds:lg:w-[28rem] ds:lg:shrink-0" : "ds:flex ds:w-full ds:min-w-0 ds:flex-col ds:gap-[var(--spacing-sm)]", zi = Qe ? "ds:flex ds:w-full ds:flex-col ds:gap-[var(--spacing-md)] ds:lg:w-[28rem] ds:lg:shrink-0 ds:lg:self-stretch" : "ds:flex ds:w-full ds:flex-col ds:gap-[var(--spacing-md)]", _i = Qe ? "ds:lg:h-0 ds:lg:min-h-full" : void 0, Li = Qe ? "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)] ds:lg:min-h-0 ds:lg:flex-1 ds:lg:overflow-y-auto" : "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", ur = lr, Ri = ur || mn || pn, fr = pn ? /* @__PURE__ */ a(
2009
+ const Qe = dr && !we, Ei = Qe ? "ds:flex ds:flex-col ds:gap-[var(--spacing-md)] ds:lg:flex-row ds:lg:items-stretch ds:lg:justify-center" : "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", zi = Qe ? "ds:flex ds:w-full ds:min-w-0 ds:flex-col ds:gap-[var(--spacing-sm)] ds:lg:w-[28rem] ds:lg:shrink-0" : "ds:flex ds:w-full ds:min-w-0 ds:flex-col ds:gap-[var(--spacing-sm)]", _i = Qe ? "ds:flex ds:w-full ds:flex-col ds:gap-[var(--spacing-md)] ds:lg:w-[28rem] ds:lg:shrink-0 ds:lg:self-stretch" : "ds:flex ds:w-full ds:flex-col ds:gap-[var(--spacing-md)]", Li = Qe ? "ds:lg:h-0 ds:lg:min-h-full" : void 0, Ri = Qe ? "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)] ds:lg:min-h-0 ds:lg:flex-1 ds:lg:overflow-y-auto" : "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", ur = lr, $i = ur || mn || pn, fr = pn ? /* @__PURE__ */ a(
2009
2010
  Ke,
2010
2011
  {
2011
2012
  size: "sm",
2012
- icon: /* @__PURE__ */ a(Ns, { "aria-hidden": "true" }),
2013
+ icon: /* @__PURE__ */ a(As, { "aria-hidden": "true" }),
2013
2014
  "aria-label": f("faceScheme.panel.toggle"),
2014
2015
  "aria-expanded": Dt,
2015
2016
  "aria-controls": Dt ? zn : void 0,
@@ -2017,10 +2018,10 @@ const go = {
2017
2018
  onClick: () => ht((e) => !e)
2018
2019
  },
2019
2020
  "panel"
2020
- ) : null, $i = V ?? "select", hr = `${G}-draw`, mr = `${G}-fit`, pr = `${G}-zoom`, gr = `${G}-tools`, yr = `${G}-tones`, xr = `${G}-shapes`, Fi = `${G}-ann-zone`, et = Ie !== null ? Ne.find((e) => e.id === Ie) : void 0, Ki = M.zones.map((e) => ({
2021
+ ) : null, Fi = V ?? "select", hr = `${G}-draw`, mr = `${G}-fit`, pr = `${G}-zoom`, gr = `${G}-tools`, yr = `${G}-tones`, xr = `${G}-shapes`, Ki = `${G}-ann-zone`, et = Ie !== null ? Ne.find((e) => e.id === Ie) : void 0, Zi = M.zones.map((e) => ({
2021
2022
  value: e.id,
2022
2023
  label: f(`faceScheme.zone.${e.labelKey}`)
2023
- })), me = "ds:text-[length:var(--font-size-xs)] ds:font-medium ds:text-[var(--muted-foreground)]", vr = `${G}-zones`, wr = `${G}-zones-apply`, Zi = J ? /* @__PURE__ */ C(
2024
+ })), me = "ds:text-[length:var(--font-size-xs)] ds:font-medium ds:text-[var(--muted-foreground)]", vr = `${G}-zones`, wr = `${G}-zones-apply`, Oi = J ? /* @__PURE__ */ C(
2024
2025
  "div",
2025
2026
  {
2026
2027
  "data-testid": "face-scheme-zones",
@@ -2108,7 +2109,7 @@ const go = {
2108
2109
  )
2109
2110
  ]
2110
2111
  }
2111
- ) : null, Oi = Je ? /* @__PURE__ */ C(
2112
+ ) : null, Pi = Je ? /* @__PURE__ */ C(
2112
2113
  "div",
2113
2114
  {
2114
2115
  "data-testid": "face-scheme-toolbar",
@@ -2127,11 +2128,11 @@ const go = {
2127
2128
  size: "sm",
2128
2129
  "aria-labelledby": gr,
2129
2130
  className: "ds:self-start",
2130
- value: $i,
2131
+ value: Fi,
2131
2132
  onValueChange: (e) => rn(e === "select" ? null : e),
2132
- children: ["select", ...Qs].map(
2133
+ children: ["select", ...to].map(
2133
2134
  (e) => {
2134
- const t = bo[e];
2135
+ const t = So[e];
2135
2136
  return /* @__PURE__ */ a(
2136
2137
  Ke,
2137
2138
  {
@@ -2159,7 +2160,7 @@ const go = {
2159
2160
  value: on,
2160
2161
  onValueChange: (e) => {
2161
2162
  const t = e;
2162
- vi(t);
2163
+ wi(t);
2163
2164
  const i = te.current;
2164
2165
  if (i !== null) {
2165
2166
  const s = W.current[K.current] ?? [];
@@ -2170,7 +2171,7 @@ const go = {
2170
2171
  );
2171
2172
  }
2172
2173
  },
2173
- children: Co.map((e) => /* @__PURE__ */ a(
2174
+ children: Mo.map((e) => /* @__PURE__ */ a(
2174
2175
  Ke,
2175
2176
  {
2176
2177
  value: e,
@@ -2201,8 +2202,8 @@ const go = {
2201
2202
  "aria-labelledby": xr,
2202
2203
  className: "ds:self-start",
2203
2204
  value: sn,
2204
- onValueChange: (e) => xi(e),
2205
- children: Ji.map((e) => /* @__PURE__ */ a(
2205
+ onValueChange: (e) => vi(e),
2206
+ children: Qi.map((e) => /* @__PURE__ */ a(
2206
2207
  Ke,
2207
2208
  {
2208
2209
  value: e,
@@ -2228,7 +2229,7 @@ const go = {
2228
2229
  placeholder: f("faceScheme.annotate.textPlaceholder"),
2229
2230
  value: ln.text,
2230
2231
  autoFocus: !0,
2231
- onChange: (e) => bi(e.target.value),
2232
+ onChange: (e) => Ci(e.target.value),
2232
2233
  onKeyDown: (e) => {
2233
2234
  (e.key === "Enter" || e.key === "Escape") && (e.preventDefault(), rr());
2234
2235
  }
@@ -2237,7 +2238,7 @@ const go = {
2237
2238
  /* @__PURE__ */ a(P, { size: "sm", intent: "primary", onClick: rr, children: f("faceScheme.annotate.textDone") })
2238
2239
  ] }),
2239
2240
  et && /* @__PURE__ */ C("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
2240
- /* @__PURE__ */ a("span", { id: Fi, className: me, children: f("faceScheme.annotate.zoneLabel") }),
2241
+ /* @__PURE__ */ a("span", { id: Ki, className: me, children: f("faceScheme.annotate.zoneLabel") }),
2241
2242
  /* @__PURE__ */ a(
2242
2243
  "span",
2243
2244
  {
@@ -2247,10 +2248,10 @@ const go = {
2247
2248
  }
2248
2249
  ),
2249
2250
  /* @__PURE__ */ a(
2250
- ts,
2251
+ ns,
2251
2252
  {
2252
2253
  size: "sm",
2253
- options: Ki,
2254
+ options: Zi,
2254
2255
  value: et.zoneId ?? "",
2255
2256
  clearable: !0,
2256
2257
  placeholder: et.zoneId == null ? f("faceScheme.annotate.zoneNone") : f("faceScheme.annotate.zonePlaceholder"),
@@ -2265,7 +2266,7 @@ const go = {
2265
2266
  {
2266
2267
  size: "sm",
2267
2268
  intent: "outline",
2268
- startIcon: /* @__PURE__ */ a(fs, { "aria-hidden": "true" }),
2269
+ startIcon: /* @__PURE__ */ a(ms, { "aria-hidden": "true" }),
2269
2270
  onClick: () => {
2270
2271
  const e = te.current;
2271
2272
  e !== null && St(e);
@@ -2279,7 +2280,7 @@ const go = {
2279
2280
  {
2280
2281
  size: "sm",
2281
2282
  intent: "outline",
2282
- startIcon: /* @__PURE__ */ a(ds, { "aria-hidden": "true" }),
2283
+ startIcon: /* @__PURE__ */ a(fs, { "aria-hidden": "true" }),
2283
2284
  onClick: Qt,
2284
2285
  disabled: Ne.length === 0,
2285
2286
  children: f("faceScheme.annotate.undo")
@@ -2290,7 +2291,7 @@ const go = {
2290
2291
  {
2291
2292
  size: "sm",
2292
2293
  intent: "outline",
2293
- startIcon: /* @__PURE__ */ a(hs, { "aria-hidden": "true" }),
2294
+ startIcon: /* @__PURE__ */ a(ps, { "aria-hidden": "true" }),
2294
2295
  onClick: en,
2295
2296
  disabled: Ne.length === 0,
2296
2297
  children: f("faceScheme.annotate.clear")
@@ -2299,7 +2300,7 @@ const go = {
2299
2300
  ] })
2300
2301
  ]
2301
2302
  }
2302
- ) : null, Pi = (e) => {
2303
+ ) : null, Di = (e) => {
2303
2304
  const t = e.kind === "text" ? e.text.trim() ? f("faceScheme.annotate.labelText", { text: e.text }) : f("faceScheme.annotate.kind.text") : f(`faceScheme.annotate.kind.${e.kind}`);
2304
2305
  if (!e.zoneId) return t;
2305
2306
  const i = M.zones.find((s) => s.id === e.zoneId);
@@ -2314,7 +2315,7 @@ const go = {
2314
2315
  return /* @__PURE__ */ a(
2315
2316
  "path",
2316
2317
  {
2317
- d: tt(e.shape, e.x, e.y, yo),
2318
+ d: tt(e.shape, e.x, e.y, vo),
2318
2319
  className: Oe[t],
2319
2320
  pointerEvents: "none"
2320
2321
  }
@@ -2326,7 +2327,7 @@ const go = {
2326
2327
  {
2327
2328
  d: Hr(e.points),
2328
2329
  fill: "none",
2329
- strokeWidth: e.kind === "highlighter" ? vo : xo,
2330
+ strokeWidth: e.kind === "highlighter" ? ko : wo,
2330
2331
  strokeOpacity: e.kind === "highlighter" ? 0.35 : 1,
2331
2332
  strokeLinecap: "round",
2332
2333
  strokeLinejoin: "round",
@@ -2348,7 +2349,7 @@ const go = {
2348
2349
  /* @__PURE__ */ a(
2349
2350
  "path",
2350
2351
  {
2351
- d: eo(e.from, e.to, wo),
2352
+ d: no(e.from, e.to, bo),
2352
2353
  fill: "none",
2353
2354
  strokeWidth: Rt,
2354
2355
  strokeLinecap: "round",
@@ -2396,8 +2397,8 @@ const go = {
2396
2397
  }
2397
2398
  );
2398
2399
  }
2399
- }, Di = (e) => {
2400
- const t = io(e, Zr);
2400
+ }, Bi = (e) => {
2401
+ const t = oo(e, Zr);
2401
2402
  switch (t.type) {
2402
2403
  case "stroke":
2403
2404
  return /* @__PURE__ */ a(
@@ -2407,7 +2408,7 @@ const go = {
2407
2408
  d: t.d,
2408
2409
  fill: "none",
2409
2410
  stroke: "transparent",
2410
- strokeWidth: ro,
2411
+ strokeWidth: so,
2411
2412
  strokeLinecap: "round",
2412
2413
  strokeLinejoin: "round",
2413
2414
  pointerEvents: "stroke",
@@ -2449,9 +2450,9 @@ const go = {
2449
2450
  { mirror: M.mirror }
2450
2451
  ) : null;
2451
2452
  Bn.current = kr;
2452
- const yn = ee ? ai ?? kr ?? M.viewBox : we || !Ce ? M.schematicViewBox : M.viewBox;
2453
+ const yn = ee ? ci ?? kr ?? M.viewBox : we || !Ce ? M.schematicViewBox : M.viewBox;
2453
2454
  kt.current = yn;
2454
- const br = he && xe.k > 1, Bi = br ? co(st(_t(yn), xe)) : yn, Cr = br && V === null, Sr = (e) => {
2455
+ const br = he && xe.k > 1, ji = br ? uo(st(_t(yn), xe)) : yn, Cr = br && V === null, Sr = (e) => {
2455
2456
  if (e !== A) {
2456
2457
  const t = Sn[e], i = (o == null ? void 0 : o[e]) ?? (e === "front" ? r : void 0), s = Yn[e] ?? (i == null ? void 0 : i.src), u = vt[e] ?? Pe, x = t.mirror ? `translate(${B} 0) scale(-1 1) ${zt(u)}` : zt(u), Y = Ct[e] ?? Or;
2457
2458
  return /* @__PURE__ */ a(Ze, { variant: "elevated", interactive: !0, asChild: !0, children: /* @__PURE__ */ a(
@@ -2487,7 +2488,7 @@ const go = {
2487
2488
  }
2488
2489
  ),
2489
2490
  /* @__PURE__ */ a("g", { transform: x, children: t.zones.map((E) => {
2490
- const Te = He[E.id] ?? [], ji = Te.length > 0;
2491
+ const Te = He[E.id] ?? [], Wi = Te.length > 0;
2491
2492
  return /* @__PURE__ */ C("g", { children: [
2492
2493
  /* @__PURE__ */ a(
2493
2494
  "path",
@@ -2495,21 +2496,21 @@ const go = {
2495
2496
  d: E.d,
2496
2497
  className: Br({
2497
2498
  interactive: !1,
2498
- marked: ji,
2499
+ marked: Wi,
2499
2500
  // Cross-view selection stays visible on the
2500
2501
  // three-up previews (decorative, aria-hidden svg).
2501
2502
  selected: J && $n.has(E.id)
2502
2503
  })
2503
2504
  }
2504
2505
  ),
2505
- Te.map((Mr, Wi) => {
2506
- const Nr = Et[Mr.type], Hi = (Wi - (Te.length - 1) / 2) * 26;
2506
+ Te.map((Mr, Hi) => {
2507
+ const Nr = Et[Mr.type], Ui = (Hi - (Te.length - 1) / 2) * 26;
2507
2508
  return /* @__PURE__ */ a(
2508
2509
  "path",
2509
2510
  {
2510
2511
  d: tt(
2511
2512
  Nr.shape,
2512
- E.cx + Hi,
2513
+ E.cx + Ui,
2513
2514
  E.cy,
2514
2515
  11
2515
2516
  ),
@@ -2543,7 +2544,7 @@ const go = {
2543
2544
  {
2544
2545
  ref: dt,
2545
2546
  "data-testid": "face-scheme-svg",
2546
- viewBox: Bi,
2547
+ viewBox: ji,
2547
2548
  role: "group",
2548
2549
  "aria-label": f(`faceScheme.view.${M.labelKey}`),
2549
2550
  className: Cr ? "ds:block ds:h-auto ds:w-full ds:touch-none ds:cursor-grab" : "ds:block ds:h-auto ds:w-full ds:touch-none",
@@ -2575,7 +2576,7 @@ const go = {
2575
2576
  id: i.id,
2576
2577
  x: t.clientX,
2577
2578
  y: t.clientY
2578
- }, Se((Te) => lo(u, Te, Y, E));
2579
+ }, Se((Te) => fo(u, Te, Y, E));
2579
2580
  } : void 0,
2580
2581
  onPointerUp: he ? Un : void 0,
2581
2582
  onPointerCancel: he ? Un : void 0,
@@ -2593,10 +2594,10 @@ const go = {
2593
2594
  height: se,
2594
2595
  preserveAspectRatio: "xMidYMid slice",
2595
2596
  role: "img",
2596
- "aria-label": Ni
2597
+ "aria-label": Ii
2597
2598
  }
2598
2599
  ),
2599
- /* @__PURE__ */ a("g", { transform: Ii, children: M.zones.map((t) => {
2600
+ /* @__PURE__ */ a("g", { transform: Ai, children: M.zones.map((t) => {
2600
2601
  const i = He[t.id] ?? [], s = i.length > 0, u = J && $n.has(t.id);
2601
2602
  return /* @__PURE__ */ C(Fe.Root, { children: [
2602
2603
  /* @__PURE__ */ a(Fe.Trigger, { asChild: !0, children: /* @__PURE__ */ C(
@@ -2661,7 +2662,7 @@ const go = {
2661
2662
  }) }),
2662
2663
  /* @__PURE__ */ C("g", { "data-testid": "face-scheme-annotations", children: [
2663
2664
  Ne.map((t) => {
2664
- const i = to(t), s = Ie === t.id;
2665
+ const i = ro(t), s = Ie === t.id;
2665
2666
  return /* @__PURE__ */ C(
2666
2667
  "g",
2667
2668
  {
@@ -2670,7 +2671,7 @@ const go = {
2670
2671
  "data-annotation-zone": t.zoneId ?? void 0,
2671
2672
  "data-selected": s ? "true" : void 0,
2672
2673
  role: _ ? "button" : "img",
2673
- "aria-label": Pi(t),
2674
+ "aria-label": Di(t),
2674
2675
  "aria-pressed": _ ? s : void 0,
2675
2676
  tabIndex: _ ? 0 : -1,
2676
2677
  className: "ds:outline-none ds:[&:focus-visible>*:first-child]:[stroke-opacity:1] ds:[&[data-selected=true]>*:first-child]:[stroke-opacity:1] ds:[&[data-selected=true]>*:first-child]:[stroke-dasharray:6_4] ds:forced-colors:[&:focus-visible>*:first-child]:[stroke:CanvasText] ds:forced-colors:[&[data-selected=true]>*:first-child]:[stroke:CanvasText]",
@@ -2695,7 +2696,7 @@ const go = {
2695
2696
  }
2696
2697
  ),
2697
2698
  gn(t),
2698
- _ && V === null && Di(t)
2699
+ _ && V === null && Bi(t)
2699
2700
  ]
2700
2701
  },
2701
2702
  t.id
@@ -2714,8 +2715,8 @@ const go = {
2714
2715
  fill: "transparent",
2715
2716
  "aria-hidden": "true",
2716
2717
  className: qe ? "ds:cursor-crosshair ds:touch-none" : "ds:[pointer-events:none]",
2717
- onPointerDown: qe ? wi : void 0,
2718
- onPointerMove: qe ? ki : void 0,
2718
+ onPointerDown: qe ? ki : void 0,
2719
+ onPointerMove: qe ? bi : void 0,
2719
2720
  onPointerUp: qe ? nr : void 0,
2720
2721
  onPointerCancel: qe ? nr : void 0
2721
2722
  }
@@ -2730,9 +2731,9 @@ const go = {
2730
2731
  cy: s.y,
2731
2732
  r: 13,
2732
2733
  "data-handle": t.id,
2733
- onPointerDown: ci(i),
2734
- onPointerMove: li,
2735
- onPointerUp: di,
2734
+ onPointerDown: li(i),
2735
+ onPointerMove: di,
2736
+ onPointerUp: ui,
2736
2737
  className: "ds:[fill:var(--background)] ds:[fill-opacity:0.9] ds:[stroke:var(--accent)] ds:[stroke-width:2.5] ds:[vector-effect:non-scaling-stroke] ds:cursor-grab ds:touch-none"
2737
2738
  }
2738
2739
  ),
@@ -2762,7 +2763,7 @@ const go = {
2762
2763
  size: "sm",
2763
2764
  intent: t ? "primary" : void 0,
2764
2765
  "aria-pressed": t,
2765
- startIcon: ko[e],
2766
+ startIcon: Co[e],
2766
2767
  onClick: () => {
2767
2768
  ft(e), _n("single");
2768
2769
  },
@@ -2779,7 +2780,7 @@ const go = {
2779
2780
  size: "sm",
2780
2781
  intent: mt === "all" ? "primary" : void 0,
2781
2782
  "aria-pressed": mt === "all",
2782
- startIcon: /* @__PURE__ */ a(ws, { "aria-hidden": "true" }),
2783
+ startIcon: /* @__PURE__ */ a(bs, { "aria-hidden": "true" }),
2783
2784
  onClick: () => _n("all"),
2784
2785
  children: f("faceScheme.viewShort.all")
2785
2786
  },
@@ -2794,7 +2795,7 @@ const go = {
2794
2795
  ref: En,
2795
2796
  size: "sm",
2796
2797
  intent: "outline",
2797
- startIcon: /* @__PURE__ */ a(ms, { "aria-hidden": "true" }),
2798
+ startIcon: /* @__PURE__ */ a(gs, { "aria-hidden": "true" }),
2798
2799
  "data-overflow-pin": !0,
2799
2800
  onClick: () => void un(),
2800
2801
  disabled: Ve === "requesting",
@@ -2810,7 +2811,7 @@ const go = {
2810
2811
  {
2811
2812
  size: "sm",
2812
2813
  intent: "outline",
2813
- startIcon: /* @__PURE__ */ a(ps, { "aria-hidden": "true" }),
2814
+ startIcon: /* @__PURE__ */ a(ys, { "aria-hidden": "true" }),
2814
2815
  onClick: () => {
2815
2816
  var e;
2816
2817
  return (e = Tn.current) == null ? void 0 : e.click();
@@ -2827,13 +2828,13 @@ const go = {
2827
2828
  "data-component-id": lt,
2828
2829
  "data-view": A,
2829
2830
  "data-layout": we ? "all" : "single",
2830
- className: [Ti, qr].filter(Boolean).join(" "),
2831
+ className: [Ei, qr].filter(Boolean).join(" "),
2831
2832
  role: "group",
2832
2833
  "aria-label": Xr ?? f("faceScheme.ariaLabel"),
2833
2834
  children: [
2834
- /* @__PURE__ */ C("div", { className: Ei, children: [
2835
- !fe && Ri && /* @__PURE__ */ a(
2836
- es,
2835
+ /* @__PURE__ */ C("div", { className: zi, children: [
2836
+ !fe && $i && /* @__PURE__ */ a(
2837
+ ts,
2837
2838
  {
2838
2839
  toolbar: !0,
2839
2840
  label: f("faceScheme.viewSwitcherLabel"),
@@ -2851,7 +2852,7 @@ const go = {
2851
2852
  type: "file",
2852
2853
  accept: "image/*",
2853
2854
  capture: Zt,
2854
- onChange: Si,
2855
+ onChange: Mi,
2855
2856
  className: "ds:sr-only",
2856
2857
  "aria-hidden": "true",
2857
2858
  tabIndex: -1,
@@ -2867,7 +2868,7 @@ const go = {
2867
2868
  children: Ve === "requesting" ? f(
2868
2869
  "faceScheme.capture.requesting",
2869
2870
  "Waiting for camera permission…"
2870
- ) : Ve === "error" && Vn ? f(go[Vn]) : ""
2871
+ ) : Ve === "error" && Vn ? f(xo[Vn]) : ""
2871
2872
  }
2872
2873
  )
2873
2874
  ] }),
@@ -2894,7 +2895,7 @@ const go = {
2894
2895
  {
2895
2896
  size: "sm",
2896
2897
  intent: "primary",
2897
- onClick: () => Ci(),
2898
+ onClick: () => Si(),
2898
2899
  children: f("faceScheme.capture.capture")
2899
2900
  }
2900
2901
  ),
@@ -2921,7 +2922,7 @@ const go = {
2921
2922
  {
2922
2923
  className: "ds:flex ds:list-none ds:items-center",
2923
2924
  children: /* @__PURE__ */ a(
2924
- Qi,
2925
+ es,
2925
2926
  {
2926
2927
  shape: t.shape,
2927
2928
  tone: t.tone,
@@ -2936,17 +2937,17 @@ const go = {
2936
2937
  }
2937
2938
  ) }) })
2938
2939
  ] }),
2939
- dr && /* @__PURE__ */ a("div", { className: zi, children: /* @__PURE__ */ a(
2940
+ dr && /* @__PURE__ */ a("div", { className: _i, children: /* @__PURE__ */ a(
2940
2941
  Ze,
2941
2942
  {
2942
2943
  variant: "elevated",
2943
2944
  "data-testid": "face-scheme-panel",
2944
2945
  id: zn,
2945
- className: _i,
2946
- children: /* @__PURE__ */ C(Ze.Body, { className: Li, children: [
2947
- Zi,
2948
- J && (Je || Ce) && /* @__PURE__ */ a(Tt, {}),
2946
+ className: Li,
2947
+ children: /* @__PURE__ */ C(Ze.Body, { className: Ri, children: [
2949
2948
  Oi,
2949
+ J && (Je || Ce) && /* @__PURE__ */ a(Tt, {}),
2950
+ Pi,
2950
2951
  Je && Ce && /* @__PURE__ */ a(Tt, {}),
2951
2952
  Ce && /* @__PURE__ */ C(
2952
2953
  "div",
@@ -2958,8 +2959,8 @@ const go = {
2958
2959
  children: [
2959
2960
  /* @__PURE__ */ a("span", { id: mr, className: me, children: f("faceScheme.panel.fit") }),
2960
2961
  /* @__PURE__ */ a("p", { className: "ds:m-0 ds:text-[length:var(--font-size-xs)] ds:text-[var(--muted-foreground)]", children: f("faceScheme.registration.hint") }),
2961
- /* @__PURE__ */ a("div", { className: "ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-xs)] ds:sm:grid-cols-2", children: Mo.map((e) => {
2962
- const t = So[e], i = e === "scaleX" || e === "scaleY";
2962
+ /* @__PURE__ */ a("div", { className: "ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-xs)] ds:sm:grid-cols-2", children: Io.map((e) => {
2963
+ const t = No[e], i = e === "scaleX" || e === "scaleY";
2963
2964
  return /* @__PURE__ */ C(
2964
2965
  "div",
2965
2966
  {
@@ -2967,17 +2968,20 @@ const go = {
2967
2968
  children: [
2968
2969
  /* @__PURE__ */ a("span", { children: f(`faceScheme.registration.${e}`) }),
2969
2970
  /* @__PURE__ */ a(
2970
- ns,
2971
+ rs,
2971
2972
  {
2972
2973
  "aria-label": f(`faceScheme.registration.${e}`),
2973
2974
  value: [Ut[e]],
2974
2975
  min: t.min,
2975
2976
  max: t.max,
2976
2977
  step: t.step,
2977
- formatValue: (s) => i ? `${Math.round(s * 100)}%` : e === "rotation" || e === "shear" ? `${s.toFixed(1)}°` : `${Math.round(s)}`,
2978
+ formatValue: (s) => i ? `${Math.round(s * 100)}%` : e === "rotation" || e === "shear" ? `${ss(s, Jr.language, {
2979
+ minimumFractionDigits: 1,
2980
+ maximumFractionDigits: 1
2981
+ })}°` : `${Math.round(s)}`,
2978
2982
  onValueChange: (s) => {
2979
2983
  const u = s[0];
2980
- typeof u == "number" && Ai(e, u);
2984
+ typeof u == "number" && Ti(e, u);
2981
2985
  }
2982
2986
  }
2983
2987
  )
@@ -3035,7 +3039,7 @@ const go = {
3035
3039
  Ke,
3036
3040
  {
3037
3041
  size: "sm",
3038
- icon: /* @__PURE__ */ a(gs, { "aria-hidden": "true" }),
3042
+ icon: /* @__PURE__ */ a(xs, { "aria-hidden": "true" }),
3039
3043
  "aria-label": f("faceScheme.zoomOut"),
3040
3044
  disabled: xe.k <= 1,
3041
3045
  onClick: () => Wn(1 / 1.3)
@@ -3058,7 +3062,7 @@ const go = {
3058
3062
  Ke,
3059
3063
  {
3060
3064
  size: "sm",
3061
- icon: /* @__PURE__ */ a(ys, { "aria-hidden": "true" }),
3065
+ icon: /* @__PURE__ */ a(vs, { "aria-hidden": "true" }),
3062
3066
  "aria-label": f("faceScheme.zoomIn"),
3063
3067
  disabled: xe.k >= Ur,
3064
3068
  onClick: () => Wn(1.3)
@@ -3069,7 +3073,7 @@ const go = {
3069
3073
  {
3070
3074
  size: "sm",
3071
3075
  intent: "outline",
3072
- startIcon: /* @__PURE__ */ a(xs, { "aria-hidden": "true" }),
3076
+ startIcon: /* @__PURE__ */ a(ws, { "aria-hidden": "true" }),
3073
3077
  disabled: xe.k <= 1,
3074
3078
  onClick: qt,
3075
3079
  children: f("faceScheme.resetView")
@@ -3083,12 +3087,12 @@ const go = {
3083
3087
  In && /* @__PURE__ */ C(Ir, { children: [
3084
3088
  /* @__PURE__ */ a(Tt, {}),
3085
3089
  /* @__PURE__ */ a(
3086
- rs,
3090
+ is,
3087
3091
  {
3088
3092
  size: "sm",
3089
3093
  label: f("faceScheme.showLegend"),
3090
3094
  checked: Ln,
3091
- onCheckedChange: ei
3095
+ onCheckedChange: ti
3092
3096
  }
3093
3097
  )
3094
3098
  ] })
@@ -3100,31 +3104,31 @@ const go = {
3100
3104
  );
3101
3105
  }
3102
3106
  );
3103
- No.displayName = "FaceScheme";
3107
+ Ao.displayName = "FaceScheme";
3104
3108
  export {
3105
- ia as A,
3106
- Qs as F,
3109
+ aa as A,
3110
+ to as F,
3107
3111
  Pe as I,
3108
3112
  Et as a,
3109
3113
  Rr as b,
3110
3114
  Sn as c,
3111
- Js as d,
3112
- No as e,
3115
+ eo as d,
3116
+ Ao as e,
3113
3117
  zt as f,
3114
- no as g,
3115
- to as h,
3118
+ io as g,
3119
+ ro as h,
3116
3120
  rt as i,
3117
- eo as j,
3118
- uo as k,
3119
- fo as l,
3120
- Os as m,
3121
- _s as n,
3121
+ no as j,
3122
+ ho as k,
3123
+ mo as l,
3124
+ Ds as m,
3125
+ Rs as n,
3122
3126
  Hr as o,
3123
- so as p,
3124
- oa as q,
3125
- aa as r,
3126
- sa as s,
3127
+ ao as p,
3128
+ la as q,
3129
+ da as r,
3130
+ ca as s,
3127
3131
  Nn as t,
3128
3132
  Kr as u
3129
3133
  };
3130
- //# sourceMappingURL=face-scheme-DAD-mXzM.js.map
3134
+ //# sourceMappingURL=face-scheme-CSJdRNad.js.map