@alfadocs/ui-kit 1.54.2 → 1.55.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 (621) hide show
  1. package/dist/_chunks/{accordion-C11v9ouP.js → accordion-Ch3xp0mX.js} +9 -9
  2. package/dist/_chunks/{actions-cell-renderer-CjzSqMgn.js → actions-cell-renderer-Dj1ZkvJj.js} +4 -4
  3. package/dist/_chunks/{address-autocomplete-BBZ0u_U1.js → address-autocomplete-bPR2mNBt.js} +2 -2
  4. package/dist/_chunks/address-fields-BfjxS05Z.js +298 -0
  5. package/dist/_chunks/{agenda-card-CakEvwnM.js → agenda-card-DauvvKX6.js} +2 -2
  6. package/dist/_chunks/{agenda-tray-B8vuZKjH.js → agenda-tray-ZKhDxlfw.js} +24 -24
  7. package/dist/_chunks/{ai-credits-notice-D9_qP2xc.js → ai-credits-notice-BoNJtOuE.js} +4 -4
  8. package/dist/_chunks/ai-fab-pill-BOu96kCx.js +30 -0
  9. package/dist/_chunks/{ai-permission-notice-Cr6o1f0f.js → ai-permission-notice-5vpblPCx.js} +3 -3
  10. package/dist/_chunks/{ai-prompt-input-DkL8W-nt.js → ai-prompt-input-Beh-O_rJ.js} +4 -4
  11. package/dist/_chunks/{alia-sidebar-DSUQ2RpK.js → alia-sidebar-DS0b54Mv.js} +12 -12
  12. package/dist/_chunks/{anamnesis-card-BT1tMt5O.js → anamnesis-card-BSlAhaoG.js} +4 -4
  13. package/dist/_chunks/{anamnesis-summary-card-Bv0CZ-mk.js → anamnesis-summary-card-2YfIYY2j.js} +2 -2
  14. package/dist/_chunks/{anamnesis-summary-rows-BMjSBqhS.js → anamnesis-summary-rows-Dtw5Hpg4.js} +425 -424
  15. package/dist/_chunks/{antenatal-schedule-timeline-BZzgjfyd.js → antenatal-schedule-timeline-Kf2Yg8uo.js} +4 -4
  16. package/dist/_chunks/{app-frame-Cos-GSfw.js → app-frame-B-0O9CrU.js} +40 -38
  17. package/dist/_chunks/{appointment-card-CA2ynsmN.js → appointment-card-Dh3fAcyf.js} +12 -12
  18. package/dist/_chunks/{appointment-peek-Cbrg36wj.js → appointment-peek-BIZaDeCi.js} +6 -6
  19. package/dist/_chunks/{appointment-timeline-CssAJLpL.js → appointment-timeline-DmqYEIT9.js} +32 -33
  20. package/dist/_chunks/{appointment-tray-EQUjllVy.js → appointment-tray-CyI_p3zU.js} +28 -28
  21. package/dist/_chunks/{appointment-workflow-status-DrWCNLbB.js → appointment-workflow-status-DMjuIK90.js} +2 -2
  22. package/dist/_chunks/{audio-recorder-BM68r6fe.js → audio-recorder-DWKKjGPt.js} +5 -6
  23. package/dist/_chunks/{auth-form-parts-Celi-TLV.js → auth-form-parts-CravOf0L.js} +6 -5
  24. package/dist/_chunks/{autocomplete-BXm1rnT0.js → autocomplete-DosDnGie.js} +3 -3
  25. package/dist/_chunks/{avatar-DYtwj1-R.js → avatar-WZY3eGE7.js} +10 -10
  26. package/dist/_chunks/{balance-badge-cell-BDX1Krdv.js → balance-badge-cell-zP-iN-Pd.js} +5 -5
  27. package/dist/_chunks/{benefit-card-DB1Kdrmc.js → benefit-card-BWBClvdF.js} +46 -45
  28. package/dist/_chunks/{bishop-score-CGAVpIWL.js → bishop-score-BxA20j9T.js} +5 -5
  29. package/dist/_chunks/{bmi-calculator-g_wjo4nq.js → bmi-calculator-DTZhRhXe.js} +5 -5
  30. package/dist/_chunks/{booking-BN7TXe27.js → booking-uZO10TLK.js} +1553 -1458
  31. package/dist/_chunks/{button-CYPx2xFq.js → button-Bn16lcFM.js} +10 -7
  32. package/dist/_chunks/{button-group-CpEycMps.js → button-group-CWlwR-A5.js} +3 -3
  33. package/dist/_chunks/{calendar-BwF5nQuW.js → calendar-6-24PQ1u.js} +4 -4
  34. package/dist/_chunks/{calendar-workspace-BbZIx2PT.js → calendar-workspace-DVajSkKA.js} +868 -883
  35. package/dist/_chunks/{card-DPmk26CL.js → card-DMO2nkt4.js} +45 -42
  36. package/dist/_chunks/{care-plan-card-BqI-_B4T.js → care-plan-card-Ddjh5Doc.js} +5 -5
  37. package/dist/_chunks/{care-plan-entry-card-CbsZmfQM.js → care-plan-entry-card-0rpR-4Te.js} +5 -5
  38. package/dist/_chunks/{care-plan-header-BIS4CGcp.js → care-plan-header-BeMYMiI7.js} +3 -3
  39. package/dist/_chunks/{carousel.agent-DW9iPLdy.js → carousel.agent-D3xthzTf.js} +44 -45
  40. package/dist/_chunks/{chart-C134Ibwm.js → chart-C2RBJERE.js} +3 -3
  41. package/dist/_chunks/{chat-container-CAfyTxat.js → chat-container-baxzy8k8.js} +21 -22
  42. package/dist/_chunks/{chat-input-Bg99kcl3.js → chat-input-PtrSu1ZC.js} +27 -27
  43. package/dist/_chunks/{chat-message-D4rvLoIJ.js → chat-message-CmGUcajG.js} +4 -4
  44. package/dist/_chunks/city-input-BC_nYINn.js +185 -0
  45. package/dist/_chunks/{clinical-note-card-gmWXEwSu.js → clinical-note-card-14JIoUR0.js} +3 -3
  46. package/dist/_chunks/{code-block-CRVa-Thh.js → code-block-BQgK70mO.js} +2 -2
  47. package/dist/_chunks/{collapsible-CTjxzGuF.js → collapsible-DVPM46bq.js} +27 -27
  48. package/dist/_chunks/{color-picker-Bu0wM8xv.js → color-picker-BRQ4Y9SO.js} +3 -3
  49. package/dist/_chunks/{combobox-DppVSuUm.js → combobox-U5yfO6o0.js} +262 -218
  50. package/dist/_chunks/{connection-status-BwTnjnUj.js → connection-status-ncTjUPt6.js} +4 -4
  51. package/dist/_chunks/{contact-card-CIVCcicP.js → contact-card-CmK05vNb.js} +2 -2
  52. package/dist/_chunks/{contact-profile-card-B-HzocbB.js → contact-profile-card-C5DbP_X3.js} +4 -4
  53. package/dist/_chunks/{control-room-rail-g4vNSPFi.js → control-room-rail-Tx2jW250.js} +3 -3
  54. package/dist/_chunks/{copy-field-CiIuVbKe.js → copy-field-CvTIuA_p.js} +3 -3
  55. package/dist/_chunks/{country-select-r3QC7cVA.js → country-select-DF5Bd_mn.js} +2 -2
  56. package/dist/_chunks/{cycle-calculator-CwDEdmda.js → cycle-calculator-Dgfqr4Q4.js} +7 -7
  57. package/dist/_chunks/{dashboard-grid--rkojX6m.js → dashboard-grid-SAGoyCtL.js} +71 -71
  58. package/dist/_chunks/{data-table-DeUoJzNn.js → data-table-C6T31E33.js} +244 -240
  59. package/dist/_chunks/{data-table-tabs-BfEmXvUk.js → data-table-tabs-Xhg5G0gU.js} +4 -4
  60. package/dist/_chunks/{date-picker-variants-B3AFKDSu.js → date-picker-variants-BnF-sHzq.js} +19 -10
  61. package/dist/_chunks/{date-picker-BnhBmcH6.js → date-picker-wRAcq2lt.js} +49 -49
  62. package/dist/_chunks/{date-range-picker-Dg050N1d.js → date-range-picker-BOvHwWO5.js} +5 -5
  63. package/dist/_chunks/{date-time-picker-Ckl6ezCL.js → date-time-picker-CLeLKuv9.js} +5 -5
  64. package/dist/_chunks/{dependent-selector-CPiolWiw.js → dependent-selector-Bet3XAFj.js} +2 -2
  65. package/dist/_chunks/{description-list-BKQMUiXv.js → description-list-DkLeHiew.js} +2 -2
  66. package/dist/_chunks/{dev-bypass-button-Y1s7gPSD.js → dev-bypass-button-BhGn6evf.js} +2 -2
  67. package/dist/_chunks/{document-preview-C_6R_VZK.js → document-preview-uoTekVR7.js} +5 -5
  68. package/dist/_chunks/{document-scanner-pADVX447.js → document-scanner-CQS9kv84.js} +17 -17
  69. package/dist/_chunks/{dropdown-menu-B5mgV1kV.js → dropdown-menu-BQSNVp4x.js} +2 -2
  70. package/dist/_chunks/{due-date-calculator-_0Dz_d7n.js → due-date-calculator-DXDJbUzo.js} +8 -8
  71. package/dist/_chunks/{editable-currency-cell-renderer-CfFp_1hI.js → editable-currency-cell-renderer-CmYcMuwi.js} +4 -4
  72. package/dist/_chunks/{editable-description-CCrAEJMq.js → editable-description-DuJlvltc.js} +3 -3
  73. package/dist/_chunks/editor-overlay-NMxzcO6J.js +90 -0
  74. package/dist/_chunks/{email-input-Cmeo4zdT.js → email-input-C7THAwh2.js} +3 -3
  75. package/dist/_chunks/{empty-state-CgvmPPvW.js → empty-state-gNG3qYCX.js} +2 -2
  76. package/dist/_chunks/{entity-card-D1Yrh9wf.js → entity-card-fpm-KUKc.js} +26 -27
  77. package/dist/_chunks/{entity-summary-C3E4JKVr.js → entity-summary-DcB0fIiv.js} +5 -5
  78. package/dist/_chunks/{error-boundary-Bzjk9Q2l.js → error-boundary-ChowhO6w.js} +2 -2
  79. package/dist/_chunks/error-page-CpuYbpOB.js +344 -0
  80. package/dist/_chunks/{error-page-illustration-bFti0VEc.js → error-page-illustration-BdJLuMdV.js} +12 -12
  81. package/dist/_chunks/error-summary-BhM8FEkl.js +101 -0
  82. package/dist/_chunks/{face-scheme-pZgT26gB.js → face-scheme-BicuUA2K.js} +8 -8
  83. package/dist/_chunks/{fetal-weight-CbE61Uyk.js → fetal-weight-BWaqqjea.js} +5 -5
  84. package/dist/_chunks/{field-array-DGiIHCdy.js → field-array-BO-kaKFK.js} +3 -3
  85. package/dist/_chunks/{file-manager-DdsAd4TQ.js → file-manager-dIJQUZvq.js} +52 -52
  86. package/dist/_chunks/{finished-terminal-BguGAUdg.js → finished-terminal-CPSDrIMB.js} +3 -3
  87. package/dist/_chunks/{fiscal-code-input-DNA_SbQx.js → fiscal-code-input-DesSQ6Fh.js} +168 -168
  88. package/dist/_chunks/floating-clearance-nIx9fFLy.js +20 -0
  89. package/dist/_chunks/forgot-password-form-DEx-M_QR.js +234 -0
  90. package/dist/_chunks/{form-field-D9WfDpYB.js → form-field-Ani72sVY.js} +72 -61
  91. package/dist/_chunks/format-price-BKle6Xwt.js +52 -0
  92. package/dist/_chunks/{freemium-paywall-CtUCj-ND.js → freemium-paywall-B6ojVXq7.js} +44 -42
  93. package/dist/_chunks/{gestational-age-calculator-BMkoLJGR.js → gestational-age-calculator-BfGpt3du.js} +9 -9
  94. package/dist/_chunks/glass-surface-CPok0jEe.js +20 -0
  95. package/dist/_chunks/{hcg-doubling-BtW2pBJX.js → hcg-doubling-BIYyI2Yo.js} +7 -7
  96. package/dist/_chunks/{header--a4ZTiM5.js → header-B9552pLh.js} +15 -14
  97. package/dist/_chunks/{header-settings-kkVm9VP3.js → header-settings-ge_3gYEq.js} +4 -4
  98. package/dist/_chunks/heatmap-BARGZZt2.js +2865 -0
  99. package/dist/_chunks/{help-me-write-templates-Cy-iO5AU.js → help-me-write-templates-B7L3zGsE.js} +28 -28
  100. package/dist/_chunks/{hover-card-CcRSI4gy.js → hover-card-BnTueNS2.js} +2 -2
  101. package/dist/_chunks/{iban-input-CpOUMMR-.js → iban-input-B9L2QDHh.js} +2 -2
  102. package/dist/_chunks/{icon-button-mKIvw90h.js → icon-button-COX76Jdj.js} +2 -2
  103. package/dist/_chunks/{icon-button-group-BsQkbCX4.js → icon-button-group-C5hhI-R5.js} +3 -3
  104. package/dist/_chunks/{icon-picker-CSViTQL9.js → icon-picker-DWrqmI1c.js} +20 -20
  105. package/dist/_chunks/{image-cropper-CNBGkG7P.js → image-cropper-D0kkQ4lG.js} +2 -2
  106. package/dist/_chunks/{info-tip-Czh1izZ6.js → info-tip-B0jmIt6M.js} +2 -2
  107. package/dist/_chunks/{input-surface-xyERuLU_.js → input-surface-iBmxVBfr.js} +11 -12
  108. package/dist/_chunks/{insert-result-BuWQl11Z.js → insert-result-C1C2OCc3.js} +2 -2
  109. package/dist/_chunks/intl-locale-ySteXlDD.js +23 -0
  110. package/dist/_chunks/{kbd-BLovyx1R.js → kbd-Bx7eQv9f.js} +70 -66
  111. package/dist/_chunks/{key-value-pair-BkXjt88Z.js → key-value-pair-Ax8IJr1M.js} +2 -2
  112. package/dist/_chunks/{kit-extensions-Kca1tkfP.js → kit-extensions-C9-v8Dih.js} +6 -6
  113. package/dist/_chunks/{link-cell-renderer-D-xv2HMS.js → link-cell-renderer-DlBVPMTi.js} +9 -9
  114. package/dist/_chunks/{locale-picker-BhNIgeXA.js → locale-picker-DfNSdOpy.js} +4 -4
  115. package/dist/_chunks/login-dev-card-DmZ1B0lB.js +309 -0
  116. package/dist/_chunks/{logo-CuaqxTGK.js → logo-hIsyVE96.js} +19 -19
  117. package/dist/_chunks/{map-view-CQmqQJwK.js → map-view-CO2v0hfp.js} +9 -9
  118. package/dist/_chunks/{marketplace-app-shell-DbEfoNxe.js → marketplace-app-shell-Dcx-JEjg.js} +11 -11
  119. package/dist/_chunks/{message-card-C1buKlzM.js → message-card-DVo8-dOm.js} +36 -28
  120. package/dist/_chunks/{message-tray-DyBVqlGj.js → message-tray-BB95DA82.js} +5 -5
  121. package/dist/_chunks/{money-GypsuFk2.js → money-CeClE1nH.js} +2 -2
  122. package/dist/_chunks/multi-select-BT23EnSA.js +688 -0
  123. package/dist/_chunks/{muscle-scheme-DfYQ0Z3v.js → muscle-scheme-BDgIaGeW.js} +2 -2
  124. package/dist/_chunks/{nav-grid-BPbmzHY0.js → nav-grid-BqCPH8sm.js} +16 -17
  125. package/dist/_chunks/{notes-panel-BPb-2ZnJ.js → notes-panel-I8ntrrUW.js} +54 -53
  126. package/dist/_chunks/{notification-card-DubeUbVJ.js → notification-card-BGCIL6Mu.js} +56 -48
  127. package/dist/_chunks/{notification-tray-DJ0gtfu6.js → notification-tray-__sJXnsz.js} +5 -5
  128. package/dist/_chunks/{number-input-DRDRYZJg.js → number-input-CVwI1ltI.js} +2 -2
  129. package/dist/_chunks/{operator-hero-BnBPxwOi.js → operator-hero-Dyd2IGbR.js} +4 -4
  130. package/dist/_chunks/{optical-prescription-DBvebioV.js → optical-prescription-Do6e3wfs.js} +5 -5
  131. package/dist/_chunks/option-row-Dc7BrbK8.js +37 -0
  132. package/dist/_chunks/{otp-input-BedEqmIV.js → otp-input-CGMu30_e.js} +2 -2
  133. package/dist/_chunks/{pagination-CzEkpfti.js → pagination-BR1_GfD_.js} +2 -2
  134. package/dist/_chunks/{panel-subview-D8HGXaUa.js → panel-subview-BT-Apwgb.js} +3 -3
  135. package/dist/_chunks/{parse-DeDYl04y.js → parse-jZ-i8Xgj.js} +2 -2
  136. package/dist/_chunks/{password-input-B7pQTk7l.js → password-input-BokZ_rnT.js} +162 -140
  137. package/dist/_chunks/{patient-details-BP9r_lNS.js → patient-details-DsTtjpuX.js} +6 -6
  138. package/dist/_chunks/{patient-field-row-BK9JjbzA.js → patient-field-row-BvZ9luz-.js} +212 -211
  139. package/dist/_chunks/{patient-search-Dm3w0jWw.js → patient-search-D5xlXmd2.js} +5 -5
  140. package/dist/_chunks/{patient-summary-card-DGbRLzF1.js → patient-summary-card-3dspc2tR.js} +7 -7
  141. package/dist/_chunks/{payment-automation-upsell-DNiraNhF.js → payment-automation-upsell-DEUfM7EU.js} +5 -5
  142. package/dist/_chunks/{payment-form-B08gHZIY.js → payment-form-v6zZuV1_.js} +60 -56
  143. package/dist/_chunks/{payment-request-card-CR7SjsRs.js → payment-request-card-DAGqh9Yx.js} +5 -5
  144. package/dist/_chunks/{pdf-viewer-zv7pkUPA.js → pdf-viewer-C3minW5b.js} +5 -5
  145. package/dist/_chunks/periodontal-chart-BqwLxy2m.js +1413 -0
  146. package/dist/_chunks/{periodontal-chart-card-Djr3en8Q.js → periodontal-chart-card-CWZ1YM1h.js} +3 -3
  147. package/dist/_chunks/{periodontal-diagnosis-DmVIqXtC.js → periodontal-diagnosis-C9IuvLId.js} +2 -2
  148. package/dist/_chunks/{periodontal-risk-chart-C1Y5f-md.js → periodontal-risk-chart-D3DjIymT.js} +2 -2
  149. package/dist/_chunks/{phone-input-BzeUr49H.js → phone-input-DxkHMYmu.js} +139 -139
  150. package/dist/_chunks/{popover-9_v-7fJc.js → popover-BI3oV3eY.js} +2 -2
  151. package/dist/_chunks/{postal-code-input-BmbqjkfD.js → postal-code-input-CfZOnIkW.js} +2 -2
  152. package/dist/_chunks/{practice-profile-hero-Bc3AyBiM.js → practice-profile-hero-C8RPACCi.js} +3 -3
  153. package/dist/_chunks/{practice-results-D3liWOz1.js → practice-results-DxOgbPDy.js} +9 -9
  154. package/dist/_chunks/{pregnancy-dating-DV3o2PPl.js → pregnancy-dating-R3q5n1Wh.js} +10 -10
  155. package/dist/_chunks/{pregnancy-weight-gain-BLjWgtS9.js → pregnancy-weight-gain-DwmNklDU.js} +5 -5
  156. package/dist/_chunks/{privacy-lock-KDPKiTpH.js → privacy-lock-WkUgwIj_.js} +4 -4
  157. package/dist/_chunks/{privacy-mask-H8yYwgIb.js → privacy-mask-ChIjELJC.js} +3 -3
  158. package/dist/_chunks/{product-hub-panel-M5X3TYzq.js → product-hub-panel-BSSiGGG4.js} +49 -49
  159. package/dist/_chunks/{progress-TIAsNHQW.js → progress-D_g_Sl2g.js} +3 -5
  160. package/dist/_chunks/{province-select-DtF2ukoC.js → province-select-Bd20Z9Br.js} +2 -2
  161. package/dist/_chunks/{public-footer-Bfs81Qzp.js → public-footer-CxpG6J1M.js} +93 -90
  162. package/dist/_chunks/{public-header.agent-CrXkGtTF.js → public-header.agent-BWusjxY8.js} +3 -3
  163. package/dist/_chunks/{qr-code-Ofx7ryyu.js → qr-code-DHEma21c.js} +47 -48
  164. package/dist/_chunks/{radiograph-panel.agent-C4j6eoQn.js → radiograph-panel.agent-BA90I3Mu.js} +8 -8
  165. package/dist/_chunks/registration-form-D7iNqMBF.js +819 -0
  166. package/dist/_chunks/{reviews-panel-CyxZ0VmZ.js → reviews-panel-CDcK6W3b.js} +6 -6
  167. package/dist/_chunks/{rich-text-editor-CCCSEPlG.js → rich-text-editor-Blp4smUr.js} +791 -799
  168. package/dist/_chunks/{scroll-area-BZOvUhwQ.js → scroll-area-ZtFCv9K7.js} +56 -46
  169. package/dist/_chunks/{search-bar-D695TCDH.js → search-bar-DQJS0wJN.js} +209 -199
  170. package/dist/_chunks/search-input-BAlDd05M.js +246 -0
  171. package/dist/_chunks/{section-card-XR2bW1Ie.js → section-card-ChJdOlBU.js} +2 -2
  172. package/dist/_chunks/{select-DHPmASkG.js → select-Ce5RMk93.js} +274 -236
  173. package/dist/_chunks/{session-countdown-DWUVDDox.js → session-countdown-CBINYw8H.js} +3 -3
  174. package/dist/_chunks/{sheet-BTgxkDJS.js → sheet-CNFW8mYZ.js} +3 -3
  175. package/dist/_chunks/{sidebar-2GBc0ZUa.js → sidebar-DLsG2AIk.js} +123 -124
  176. package/dist/_chunks/{sign-document-B_3U-S6g.js → sign-document-B6HlyCGV.js} +22 -22
  177. package/dist/_chunks/{sign-in-with-alfadocs-button-DFmgQuDo.js → sign-in-with-alfadocs-button-D91_x8DX.js} +4 -4
  178. package/dist/_chunks/{signature-capture-F6KViBF_.js → signature-capture-Chqh62Pc.js} +19 -20
  179. package/dist/_chunks/{signature-field-DLDznGnB.js → signature-field-Y01UB5DA.js} +2 -2
  180. package/dist/_chunks/{signature-request-BdolmJk4.js → signature-request-rgMsgo-C.js} +8 -8
  181. package/dist/_chunks/{signed-out-frame-dz1rLJ65.js → signed-out-frame-B2GTIeqA.js} +51 -51
  182. package/dist/_chunks/sliders-horizontal-D-F97cnE.js +22 -0
  183. package/dist/_chunks/{slot-grid-kCDoV3k4.js → slot-grid-sVZriOiQ.js} +4 -4
  184. package/dist/_chunks/{social-sign-in-button-BMGNlUWs.js → social-sign-in-button-yUqwhnPZ.js} +2 -2
  185. package/dist/_chunks/{spinner-a0FTYX9Q.js → spinner-CoflYlEx.js} +2 -2
  186. package/dist/_chunks/{stat-Ce9ymEKm.js → stat-51CDL4au.js} +25 -26
  187. package/dist/_chunks/state-backed-text-input-DECQy5aA.js +12 -0
  188. package/dist/_chunks/{stepper-accordion-BPNS6J6B.js → stepper-accordion-D7lnBGh2.js} +49 -49
  189. package/dist/_chunks/{streaming-text-BAPn_sZs.js → streaming-text-BKZmbW1Q.js} +31 -32
  190. package/dist/_chunks/subDays-DlMw8Xng.js +8 -0
  191. package/dist/_chunks/{tab-bar-DRKiomgj.js → tab-bar-Bm-rJB7Y.js} +7 -8
  192. package/dist/_chunks/{tabs-yIY-RySP.js → tabs-I2wf_nC7.js} +3 -3
  193. package/dist/_chunks/{task-card-C02Km4Gb.js → task-card-BMXMh3uE.js} +9 -9
  194. package/dist/_chunks/{task-editor-Dl27rI3J.js → task-editor-Ctxsa1BY.js} +155 -157
  195. package/dist/_chunks/{task-tray-By6DPwbT.js → task-tray-DsBO-AaP.js} +31 -31
  196. package/dist/_chunks/{tasks-panel-BkN9sROF.js → tasks-panel-CdgZQQgG.js} +130 -131
  197. package/dist/_chunks/{text-area-CDuItrvL.js → text-area-COMVJ1yE.js} +106 -96
  198. package/dist/_chunks/text-input-CaG9ApoE.js +333 -0
  199. package/dist/_chunks/{theme-toggle-BAHz3itd.js → theme-toggle-PpFcFoYK.js} +4 -4
  200. package/dist/_chunks/time-picker-DVfyAR81.js +871 -0
  201. package/dist/_chunks/{timeline-CVLjybJ3.js → timeline-DG8wAlAx.js} +3 -3
  202. package/dist/_chunks/{toast-UMUvXFsA.js → toast-CPqguP7G.js} +2 -2
  203. package/dist/_chunks/{token-insert-menu-DgtBIbNu.js → token-insert-menu-B-pWFDKX.js} +3 -3
  204. package/dist/_chunks/{tool-rail-CwXN-sDC.js → tool-rail-Bwyuw_Ot.js} +113 -110
  205. package/dist/_chunks/{tooth-scheme-BAMhwCZe.js → tooth-scheme-BAO_voUO.js} +97 -97
  206. package/dist/_chunks/{transcript-panel-CLgtyVbR.js → transcript-panel-CjsiDB1K.js} +4 -4
  207. package/dist/_chunks/{treatment-receipt-DF2Slh-x.js → treatment-receipt-BSVOfStA.js} +2 -2
  208. package/dist/_chunks/{typing-indicator-BmwMQSxw.js → typing-indicator-B1RkE8jD.js} +16 -15
  209. package/dist/_chunks/{unit-converter-CXNr5P4J.js → unit-converter-DS4UB_59.js} +5 -5
  210. package/dist/_chunks/{use-appointment-details-read-BEbLseXW.js → use-appointment-details-read-DinTrRIW.js} +214 -214
  211. package/dist/_chunks/use-dom-value-DTxHhQAN.js +16 -0
  212. package/dist/_chunks/{use-prism-DaspP8w-.js → use-prism-DBOiELx7.js} +9 -9
  213. package/dist/_chunks/use-registration-submit-eWAECgUC.js +171 -0
  214. package/dist/_chunks/use-state-backed-input-C7ESmxKB.js +59 -0
  215. package/dist/_chunks/voice-control-panel-Bg1eklL0.js +1009 -0
  216. package/dist/_chunks/{wallet-pay-button-Dew8Pmgq.js → wallet-pay-button-DFP5FW0D.js} +2 -2
  217. package/dist/_chunks/{warning-stack-B_v_qMBI.js → warning-stack-ubD0IZCy.js} +25 -25
  218. package/dist/_chunks/{widget-picker-BCbwD5Z1.js → widget-picker-D8RiWrJd.js} +38 -38
  219. package/dist/_chunks/{workflow-map-PzamnfJK.js → workflow-map-D3mezmGB.js} +8 -8
  220. package/dist/_chunks/{workflow-status-DDnsIrLt.js → workflow-status-BT27_fQp.js} +3 -3
  221. package/dist/agent-catalog.json +584 -14
  222. package/dist/agent-i18n/en.json +51 -10
  223. package/dist/components/_shared/ai-fab-pill.d.ts +18 -0
  224. package/dist/components/_shared/floating-clearance.d.ts +12 -0
  225. package/dist/components/_shared/glass-surface.d.ts +22 -0
  226. package/dist/components/_shared/input-surface.d.ts +1 -1
  227. package/dist/components/_shared/intl-locale.d.ts +7 -0
  228. package/dist/components/_shared/option-row.d.ts +30 -0
  229. package/dist/components/_shared/option.d.ts +2 -0
  230. package/dist/components/_shared/state-backed-text-input.d.ts +16 -0
  231. package/dist/components/_shared/use-dom-value.d.ts +20 -0
  232. package/dist/components/_shared/use-state-backed-input.d.ts +31 -0
  233. package/dist/components/accordion/index.js +1 -1
  234. package/dist/components/address-autocomplete/index.js +1 -1
  235. package/dist/components/address-fields/address-fields.d.ts +4 -0
  236. package/dist/components/address-fields/index.js +1 -1
  237. package/dist/components/agenda-card/index.js +1 -1
  238. package/dist/components/agenda-tray/index.js +1 -1
  239. package/dist/components/ai-credits-notice/index.js +1 -1
  240. package/dist/components/ai-permission-notice/ai-permission-notice.d.ts +34 -0
  241. package/dist/components/ai-permission-notice/index.d.ts +1 -1
  242. package/dist/components/ai-permission-notice/index.js +1 -1
  243. package/dist/components/ai-prompt-input/index.js +1 -1
  244. package/dist/components/anamnesis-card/index.js +1 -1
  245. package/dist/components/anamnesis-summary-card/index.js +1 -1
  246. package/dist/components/app-frame/index.js +1 -1
  247. package/dist/components/appointment-card/index.js +2 -2
  248. package/dist/components/appointment-details-panel/index.js +1 -1
  249. package/dist/components/appointment-peek/index.js +1 -1
  250. package/dist/components/appointment-timeline/index.js +1 -1
  251. package/dist/components/audio-recorder/index.js +1 -1
  252. package/dist/components/autocomplete/index.js +1 -1
  253. package/dist/components/avatar/index.js +1 -1
  254. package/dist/components/benefit-card/index.js +1 -1
  255. package/dist/components/bishop-score/index.js +1 -1
  256. package/dist/components/bmi-calculator/index.js +1 -1
  257. package/dist/components/booking/booking-types.d.ts +10 -5
  258. package/dist/components/booking/index.js +1 -1
  259. package/dist/components/booking/payment.d.ts +19 -0
  260. package/dist/components/button/index.js +2 -2
  261. package/dist/components/button-group/index.js +1 -1
  262. package/dist/components/calendar/index.js +1 -1
  263. package/dist/components/card/index.js +1 -1
  264. package/dist/components/care-plan-card/index.js +1 -1
  265. package/dist/components/care-plan-entry-card/index.js +1 -1
  266. package/dist/components/care-plan-header/index.js +1 -1
  267. package/dist/components/carousel/index.js +1 -1
  268. package/dist/components/chart/index.js +1 -1
  269. package/dist/components/chat-container/index.js +1 -1
  270. package/dist/components/chat-input/index.js +1 -1
  271. package/dist/components/chat-message/index.js +1 -1
  272. package/dist/components/city-input/index.js +1 -1
  273. package/dist/components/clinical-note-card/index.js +1 -1
  274. package/dist/components/collapsible/index.js +1 -1
  275. package/dist/components/color-picker/index.js +1 -1
  276. package/dist/components/combobox/combobox.d.ts +6 -0
  277. package/dist/components/combobox/index.js +1 -1
  278. package/dist/components/connection-status/index.js +1 -1
  279. package/dist/components/contact-card/index.js +1 -1
  280. package/dist/components/contact-profile-card/index.js +1 -1
  281. package/dist/components/control-room-rail/index.js +1 -1
  282. package/dist/components/copy-field/index.js +1 -1
  283. package/dist/components/country-select/index.js +1 -1
  284. package/dist/components/cycle-calculator/index.js +1 -1
  285. package/dist/components/dashboard-grid/index.js +1 -1
  286. package/dist/components/data-table/index.js +4 -4
  287. package/dist/components/data-table-tabs/index.js +1 -1
  288. package/dist/components/date-picker/date-picker.d.ts +3 -3
  289. package/dist/components/date-picker/index.js +1 -1
  290. package/dist/components/date-range-picker/date-range-picker.d.ts +3 -3
  291. package/dist/components/date-range-picker/index.js +1 -1
  292. package/dist/components/date-time-picker/index.js +1 -1
  293. package/dist/components/dependent-selector/index.js +1 -1
  294. package/dist/components/description-list/index.js +1 -1
  295. package/dist/components/dev-bypass-button/index.js +1 -1
  296. package/dist/components/document-preview/index.js +1 -1
  297. package/dist/components/document-scanner/index.js +1 -1
  298. package/dist/components/dropdown-menu/index.js +1 -1
  299. package/dist/components/due-date-calculator/index.js +2 -2
  300. package/dist/components/editable-description/index.js +1 -1
  301. package/dist/components/editor-overlay/index.js +1 -1
  302. package/dist/components/email-input/email-input.d.ts +1 -1
  303. package/dist/components/email-input/index.js +1 -1
  304. package/dist/components/empty-state/index.js +1 -1
  305. package/dist/components/entity-summary/index.js +1 -1
  306. package/dist/components/error-boundary/index.js +1 -1
  307. package/dist/components/error-summary/error-summary.d.ts +50 -0
  308. package/dist/components/error-summary/index.d.ts +2 -0
  309. package/dist/components/error-summary/index.js +5 -0
  310. package/dist/components/face-scheme/index.js +1 -1
  311. package/dist/components/fetal-weight/index.js +1 -1
  312. package/dist/components/field-array/index.js +1 -1
  313. package/dist/components/file-manager/index.js +1 -1
  314. package/dist/components/finished-terminal/index.js +1 -1
  315. package/dist/components/fiscal-code-input/index.js +1 -1
  316. package/dist/components/form-field/form-field-context.d.ts +5 -0
  317. package/dist/components/form-field/form-field.d.ts +9 -0
  318. package/dist/components/form-field/index.js +1 -1
  319. package/dist/components/freemium-paywall/index.js +1 -1
  320. package/dist/components/gestational-age-calculator/index.js +1 -1
  321. package/dist/components/hcg-doubling/index.js +1 -1
  322. package/dist/components/header/index.js +1 -1
  323. package/dist/components/header-settings/index.js +1 -1
  324. package/dist/components/heatmap/heatmap-context.d.ts +21 -0
  325. package/dist/components/heatmap/heatmap-format.d.ts +59 -0
  326. package/dist/components/heatmap/heatmap-grid.d.ts +66 -0
  327. package/dist/components/heatmap/heatmap-legend.d.ts +36 -0
  328. package/dist/components/heatmap/heatmap-model.d.ts +152 -0
  329. package/dist/components/heatmap/heatmap-scale.d.ts +125 -0
  330. package/dist/components/heatmap/heatmap-table-view.d.ts +35 -0
  331. package/dist/components/heatmap/heatmap-tooltip.d.ts +40 -0
  332. package/dist/components/heatmap/heatmap-variants.d.ts +87 -0
  333. package/dist/components/heatmap/heatmap-window.d.ts +54 -0
  334. package/dist/components/heatmap/heatmap.agent.d.ts +4 -0
  335. package/dist/components/heatmap/heatmap.d.ts +186 -0
  336. package/dist/components/heatmap/index.d.ts +8 -0
  337. package/dist/components/heatmap/index.js +8 -0
  338. package/dist/components/hover-card/index.js +1 -1
  339. package/dist/components/iban-input/index.js +1 -1
  340. package/dist/components/icon-button/index.js +1 -1
  341. package/dist/components/icon-button-group/index.js +1 -1
  342. package/dist/components/icon-picker/index.js +1 -1
  343. package/dist/components/image-cropper/index.js +1 -1
  344. package/dist/components/index.d.ts +3 -0
  345. package/dist/components/info-tip/index.js +1 -1
  346. package/dist/components/kbd/index.js +1 -1
  347. package/dist/components/key-value-pair/index.js +1 -1
  348. package/dist/components/locale-picker/index.js +1 -1
  349. package/dist/components/logo/index.js +1 -1
  350. package/dist/components/map-view/index.js +1 -1
  351. package/dist/components/message-card/index.js +1 -1
  352. package/dist/components/message-tray/index.js +1 -1
  353. package/dist/components/money/index.js +1 -1
  354. package/dist/components/multi-select/index.js +1 -1
  355. package/dist/components/multi-select/multi-select.d.ts +6 -0
  356. package/dist/components/muscle-scheme/index.js +1 -1
  357. package/dist/components/nav-grid/index.js +1 -1
  358. package/dist/components/notes-panel/index.js +1 -1
  359. package/dist/components/notification-card/index.js +1 -1
  360. package/dist/components/notification-tray/index.js +1 -1
  361. package/dist/components/number-input/index.js +1 -1
  362. package/dist/components/operator-hero/index.js +1 -1
  363. package/dist/components/optical-prescription/index.js +1 -1
  364. package/dist/components/otp-input/index.js +1 -1
  365. package/dist/components/pagination/index.js +1 -1
  366. package/dist/components/panel-subview/index.js +1 -1
  367. package/dist/components/password-input/index.js +1 -1
  368. package/dist/components/patient-details/index.js +1 -1
  369. package/dist/components/patient-search/index.js +1 -1
  370. package/dist/components/patient-summary-card/index.js +1 -1
  371. package/dist/components/patient-table/index.js +1 -1
  372. package/dist/components/payment-card/index.js +1 -1
  373. package/dist/components/payment-form/index.js +1 -1
  374. package/dist/components/pdf-viewer/index.js +1 -1
  375. package/dist/components/periodontal-chart/index.d.ts +1 -1
  376. package/dist/components/periodontal-chart/index.js +1 -1
  377. package/dist/components/periodontal-chart/periodontal-chart.d.ts +44 -1
  378. package/dist/components/periodontal-chart-card/index.js +1 -1
  379. package/dist/components/periodontal-diagnosis/index.js +1 -1
  380. package/dist/components/periodontal-risk-chart/index.js +1 -1
  381. package/dist/components/phone-input/index.js +1 -1
  382. package/dist/components/popover/index.js +1 -1
  383. package/dist/components/postal-code-input/index.js +1 -1
  384. package/dist/components/practice-profile-hero/index.js +1 -1
  385. package/dist/components/practice-results/index.js +1 -1
  386. package/dist/components/pregnancy-dating/index.js +1 -1
  387. package/dist/components/pregnancy-weight-gain/index.js +1 -1
  388. package/dist/components/privacy-lock/index.js +1 -1
  389. package/dist/components/product-hub-tray/index.js +1 -1
  390. package/dist/components/progress/index.js +1 -1
  391. package/dist/components/province-select/index.js +1 -1
  392. package/dist/components/public-footer/index.js +1 -1
  393. package/dist/components/public-header/index.js +1 -1
  394. package/dist/components/qr-code/index.js +1 -1
  395. package/dist/components/radiograph-panel/index.js +1 -1
  396. package/dist/components/reviews-panel/index.js +1 -1
  397. package/dist/components/rich-text-editor/index.js +2 -2
  398. package/dist/components/rich-text-editor/rich-text-editor.d.ts +5 -20
  399. package/dist/components/scroll-area/index.js +1 -1
  400. package/dist/components/scroll-area/scroll-area.d.ts +17 -1
  401. package/dist/components/search-bar/index.js +1 -1
  402. package/dist/components/search-input/index.js +1 -1
  403. package/dist/components/section-card/index.js +1 -1
  404. package/dist/components/select/index.js +1 -1
  405. package/dist/components/select/select.d.ts +41 -0
  406. package/dist/components/session-countdown/index.js +1 -1
  407. package/dist/components/sheet/index.js +1 -1
  408. package/dist/components/sidebar/index.js +1 -1
  409. package/dist/components/sign-document/index.js +1 -1
  410. package/dist/components/sign-in-with-alfadocs-button/index.js +1 -1
  411. package/dist/components/signature-capture/index.js +1 -1
  412. package/dist/components/signature-field/index.js +1 -1
  413. package/dist/components/skeleton-scheme/index.js +1 -1
  414. package/dist/components/slot-grid/index.js +1 -1
  415. package/dist/components/social-sign-in-button/index.js +1 -1
  416. package/dist/components/spinner/index.js +1 -1
  417. package/dist/components/stat/index.js +1 -1
  418. package/dist/components/stepper-accordion/index.js +1 -1
  419. package/dist/components/streaming-text/index.js +1 -1
  420. package/dist/components/tab-bar/index.js +1 -1
  421. package/dist/components/tabs/index.js +1 -1
  422. package/dist/components/task-card/index.js +1 -1
  423. package/dist/components/task-editor/index.js +1 -1
  424. package/dist/components/task-tray/index.js +1 -1
  425. package/dist/components/tasks-panel/index.js +1 -1
  426. package/dist/components/text-area/index.js +1 -1
  427. package/dist/components/text-input/index.js +1 -1
  428. package/dist/components/text-input/text-input.d.ts +13 -0
  429. package/dist/components/theme-toggle/index.js +1 -1
  430. package/dist/components/time-picker/index.js +1 -1
  431. package/dist/components/time-picker/time-picker.d.ts +26 -5
  432. package/dist/components/timeline/index.js +1 -1
  433. package/dist/components/toast/index.js +1 -1
  434. package/dist/components/token-insert-menu/index.js +1 -1
  435. package/dist/components/tool-rail/index.js +1 -1
  436. package/dist/components/tooth-scheme/index.js +1 -1
  437. package/dist/components/transcript-panel/index.js +1 -1
  438. package/dist/components/treatment-receipt/index.js +1 -1
  439. package/dist/components/typing-indicator/index.js +1 -1
  440. package/dist/components/unit-converter/index.js +1 -1
  441. package/dist/components/voice-control-panel/index.d.ts +5 -0
  442. package/dist/components/voice-control-panel/index.js +6 -0
  443. package/dist/components/voice-control-panel/voice-control-panel.agent.d.ts +4 -0
  444. package/dist/components/voice-control-panel/voice-control-panel.d.ts +179 -0
  445. package/dist/components/wallet-pay-button/index.js +1 -1
  446. package/dist/components/warning-stack/index.js +1 -1
  447. package/dist/components/widget-picker/index.js +1 -1
  448. package/dist/components/workflow/index.js +1 -1
  449. package/dist/components/workflow-status/index.js +2 -2
  450. package/dist/error-pages/400.ar.html +1 -1
  451. package/dist/error-pages/400.de.html +1 -1
  452. package/dist/error-pages/400.el.html +1 -1
  453. package/dist/error-pages/400.en.html +1 -1
  454. package/dist/error-pages/400.es.html +1 -1
  455. package/dist/error-pages/400.fr.html +1 -1
  456. package/dist/error-pages/400.hi.html +1 -1
  457. package/dist/error-pages/400.html +1 -1
  458. package/dist/error-pages/400.it.html +1 -1
  459. package/dist/error-pages/400.ja.html +1 -1
  460. package/dist/error-pages/400.nl.html +1 -1
  461. package/dist/error-pages/400.pl.html +1 -1
  462. package/dist/error-pages/400.pt.html +1 -1
  463. package/dist/error-pages/400.ro.html +1 -1
  464. package/dist/error-pages/400.ru.html +1 -1
  465. package/dist/error-pages/400.sq.html +1 -1
  466. package/dist/error-pages/400.sv.html +1 -1
  467. package/dist/error-pages/400.tr.html +1 -1
  468. package/dist/error-pages/400.zh.html +1 -1
  469. package/dist/error-pages/410.ar.html +1 -1
  470. package/dist/error-pages/410.de.html +1 -1
  471. package/dist/error-pages/410.el.html +1 -1
  472. package/dist/error-pages/410.en.html +1 -1
  473. package/dist/error-pages/410.es.html +1 -1
  474. package/dist/error-pages/410.fr.html +1 -1
  475. package/dist/error-pages/410.hi.html +1 -1
  476. package/dist/error-pages/410.html +1 -1
  477. package/dist/error-pages/410.it.html +1 -1
  478. package/dist/error-pages/410.ja.html +1 -1
  479. package/dist/error-pages/410.nl.html +1 -1
  480. package/dist/error-pages/410.pl.html +1 -1
  481. package/dist/error-pages/410.pt.html +1 -1
  482. package/dist/error-pages/410.ro.html +1 -1
  483. package/dist/error-pages/410.ru.html +1 -1
  484. package/dist/error-pages/410.sq.html +1 -1
  485. package/dist/error-pages/410.sv.html +1 -1
  486. package/dist/error-pages/410.tr.html +1 -1
  487. package/dist/error-pages/410.zh.html +1 -1
  488. package/dist/error-pages/419.ar.html +1 -1
  489. package/dist/error-pages/419.de.html +1 -1
  490. package/dist/error-pages/419.el.html +1 -1
  491. package/dist/error-pages/419.en.html +1 -1
  492. package/dist/error-pages/419.es.html +1 -1
  493. package/dist/error-pages/419.fr.html +1 -1
  494. package/dist/error-pages/419.hi.html +1 -1
  495. package/dist/error-pages/419.html +1 -1
  496. package/dist/error-pages/419.it.html +1 -1
  497. package/dist/error-pages/419.ja.html +1 -1
  498. package/dist/error-pages/419.nl.html +1 -1
  499. package/dist/error-pages/419.pl.html +1 -1
  500. package/dist/error-pages/419.pt.html +1 -1
  501. package/dist/error-pages/419.ro.html +1 -1
  502. package/dist/error-pages/419.ru.html +1 -1
  503. package/dist/error-pages/419.sq.html +1 -1
  504. package/dist/error-pages/419.sv.html +1 -1
  505. package/dist/error-pages/419.tr.html +1 -1
  506. package/dist/error-pages/419.zh.html +1 -1
  507. package/dist/error-pages/429.ar.html +1 -1
  508. package/dist/error-pages/429.de.html +1 -1
  509. package/dist/error-pages/429.el.html +1 -1
  510. package/dist/error-pages/429.en.html +1 -1
  511. package/dist/error-pages/429.es.html +1 -1
  512. package/dist/error-pages/429.fr.html +1 -1
  513. package/dist/error-pages/429.hi.html +1 -1
  514. package/dist/error-pages/429.html +1 -1
  515. package/dist/error-pages/429.it.html +1 -1
  516. package/dist/error-pages/429.ja.html +1 -1
  517. package/dist/error-pages/429.nl.html +1 -1
  518. package/dist/error-pages/429.pl.html +1 -1
  519. package/dist/error-pages/429.pt.html +1 -1
  520. package/dist/error-pages/429.ro.html +1 -1
  521. package/dist/error-pages/429.ru.html +1 -1
  522. package/dist/error-pages/429.sq.html +1 -1
  523. package/dist/error-pages/429.sv.html +1 -1
  524. package/dist/error-pages/429.tr.html +1 -1
  525. package/dist/error-pages/429.zh.html +1 -1
  526. package/dist/hooks/index.js +1 -1
  527. package/dist/hooks/use-field-match.d.ts +3 -2
  528. package/dist/host-compat.css +9 -2
  529. package/dist/host-legacy.css +86 -0
  530. package/dist/i18n/locales/ar.d.ts +121 -1
  531. package/dist/i18n/locales/ar.js +122 -2
  532. package/dist/i18n/locales/de.d.ts +121 -1
  533. package/dist/i18n/locales/de.js +122 -2
  534. package/dist/i18n/locales/el.d.ts +121 -1
  535. package/dist/i18n/locales/el.js +122 -2
  536. package/dist/i18n/locales/en.d.ts +121 -1
  537. package/dist/i18n/locales/en.js +122 -2
  538. package/dist/i18n/locales/es.d.ts +121 -1
  539. package/dist/i18n/locales/es.js +122 -2
  540. package/dist/i18n/locales/fr.d.ts +121 -1
  541. package/dist/i18n/locales/fr.js +122 -2
  542. package/dist/i18n/locales/hi.d.ts +121 -1
  543. package/dist/i18n/locales/hi.js +122 -2
  544. package/dist/i18n/locales/it.d.ts +121 -1
  545. package/dist/i18n/locales/it.js +122 -2
  546. package/dist/i18n/locales/ja.d.ts +121 -1
  547. package/dist/i18n/locales/ja.js +122 -2
  548. package/dist/i18n/locales/nl.d.ts +121 -1
  549. package/dist/i18n/locales/nl.js +122 -2
  550. package/dist/i18n/locales/pl.d.ts +121 -1
  551. package/dist/i18n/locales/pl.js +122 -2
  552. package/dist/i18n/locales/pt.d.ts +121 -1
  553. package/dist/i18n/locales/pt.js +122 -2
  554. package/dist/i18n/locales/ro.d.ts +121 -1
  555. package/dist/i18n/locales/ro.js +122 -2
  556. package/dist/i18n/locales/ru.d.ts +121 -1
  557. package/dist/i18n/locales/ru.js +122 -2
  558. package/dist/i18n/locales/sq.d.ts +121 -1
  559. package/dist/i18n/locales/sq.js +122 -2
  560. package/dist/i18n/locales/sv.d.ts +121 -1
  561. package/dist/i18n/locales/sv.js +122 -2
  562. package/dist/i18n/locales/tr.d.ts +121 -1
  563. package/dist/i18n/locales/tr.js +122 -2
  564. package/dist/i18n/locales/zh.d.ts +121 -1
  565. package/dist/i18n/locales/zh.js +122 -2
  566. package/dist/index.js +763 -753
  567. package/dist/locales/ar.json +122 -2
  568. package/dist/locales/de.json +122 -2
  569. package/dist/locales/el.json +122 -2
  570. package/dist/locales/en.json +122 -2
  571. package/dist/locales/es.json +122 -2
  572. package/dist/locales/fr.json +122 -2
  573. package/dist/locales/hi.json +122 -2
  574. package/dist/locales/it.json +122 -2
  575. package/dist/locales/ja.json +122 -2
  576. package/dist/locales/nl.json +122 -2
  577. package/dist/locales/pl.json +122 -2
  578. package/dist/locales/pt.json +122 -2
  579. package/dist/locales/ro.json +122 -2
  580. package/dist/locales/ru.json +122 -2
  581. package/dist/locales/sq.json +122 -2
  582. package/dist/locales/sv.json +122 -2
  583. package/dist/locales/tr.json +122 -2
  584. package/dist/locales/zh.json +122 -2
  585. package/dist/patterns/_shared/auth-form-parts.d.ts +4 -0
  586. package/dist/patterns/_shared/use-error-summary.d.ts +34 -0
  587. package/dist/patterns/alia-assistant/index.js +1 -1
  588. package/dist/patterns/anamnesis/index.js +1 -1
  589. package/dist/patterns/calendar/index.js +1 -1
  590. package/dist/patterns/error-page/error-page.d.ts +29 -5
  591. package/dist/patterns/error-page/index.js +2 -2
  592. package/dist/patterns/forgot-password-form/forgot-password-form.d.ts +3 -2
  593. package/dist/patterns/forgot-password-form/index.js +1 -1
  594. package/dist/patterns/help-me-write-templates/index.js +1 -1
  595. package/dist/patterns/login-form/index.js +1 -1
  596. package/dist/patterns/login-form/login-form.d.ts +5 -4
  597. package/dist/patterns/marketplace-app-shell/index.js +1 -1
  598. package/dist/patterns/payment-automation-upsell/index.js +1 -1
  599. package/dist/patterns/registration-form/index.d.ts +1 -1
  600. package/dist/patterns/registration-form/index.js +1 -1
  601. package/dist/patterns/registration-form/registration-form.d.ts +19 -2
  602. package/dist/patterns/signature-request/index.js +1 -1
  603. package/dist/patterns/signed-out-frame/index.js +1 -1
  604. package/dist/tokens.css +10 -13
  605. package/package.json +19 -2
  606. package/dist/_chunks/address-fields-1pD-8hML.js +0 -292
  607. package/dist/_chunks/city-input-DyxVWSRQ.js +0 -170
  608. package/dist/_chunks/editor-overlay-CWV0chPV.js +0 -93
  609. package/dist/_chunks/error-page-C15GfNEj.js +0 -312
  610. package/dist/_chunks/forgot-password-form-DVVOBEGj.js +0 -203
  611. package/dist/_chunks/format-price-DAbh61Lz.js +0 -51
  612. package/dist/_chunks/intl-locale-CXM-B8EP.js +0 -16
  613. package/dist/_chunks/login-dev-card-q7iTojvV.js +0 -275
  614. package/dist/_chunks/multi-select-CVb6PJOK.js +0 -638
  615. package/dist/_chunks/periodontal-chart-5nLsSuRM.js +0 -1305
  616. package/dist/_chunks/registration-form-CBDeXzlk.js +0 -748
  617. package/dist/_chunks/search-input-Tl-RkS5x.js +0 -237
  618. package/dist/_chunks/subDays-XBMBTVOO.js +0 -8
  619. package/dist/_chunks/text-input-lZ2-t-p2.js +0 -283
  620. package/dist/_chunks/time-picker-DKKmpFh3.js +0 -425
  621. package/dist/_chunks/use-registration-submit-DxCWic5_.js +0 -141
@@ -1,55 +1,56 @@
1
- import { jsx as s, jsxs as v, Fragment as ne } from "react/jsx-runtime";
2
- import { forwardRef as us, useId as Pt, useRef as E, useCallback as ue, useState as Q, useEffect as q, useMemo as R, Fragment as Ps, useImperativeHandle as Vs } from "react";
3
- import { c as bt } from "./index-D2ZczOXr.js";
4
- import { useTranslation as G, Trans as $s } from "react-i18next";
5
- import { u as qs } from "./registry-DvAUVLHh.js";
6
- import { A as ee } from "./alert-BhCstf2h.js";
7
- import { B as Xe } from "./button-CYPx2xFq.js";
8
- import { C as rt } from "./checkbox--ndmyokr.js";
9
- import { C as Ks } from "./checkbox-group-B0oZHNT3.js";
10
- import { D as zs } from "./date-picker-BnhBmcH6.js";
11
- import { E as js } from "./email-input-Cmeo4zdT.js";
12
- import { F as Ue } from "./form-field-D9WfDpYB.js";
13
- import { P as Us } from "./phone-input-BzeUr49H.js";
14
- import { T as Gs } from "./text-area-CDuItrvL.js";
15
- import { T as Dt } from "./text-input-lZ2-t-p2.js";
16
- import { A as Hs } from "./address-fields-1pD-8hML.js";
17
- import { S as ps } from "./spinner-a0FTYX9Q.js";
18
- import { a as yt } from "./format-price-DAbh61Lz.js";
19
- import { C as Js } from "./credit-card-D9XZsHGA.js";
20
- import { B as ms } from "./badge-hnBt8o7n.js";
21
- import { I as ns } from "./icon-button-mKIvw90h.js";
22
- import { S as Vt } from "./select-DHPmASkG.js";
23
- import { C as Yt } from "./combobox-DppVSuUm.js";
24
- import { M as Zt } from "./multi-select-CVb6PJOK.js";
25
- import { S as Et } from "./skeleton-B1KTdJ4N.js";
26
- import { E as fs } from "./empty-state-CgvmPPvW.js";
27
- import { S as Ws } from "./stepper-accordion-BPNS6J6B.js";
28
- import { S as Ys } from "./stepper-progress-D6H8wQiV.js";
29
- import { S as Zs } from "./slot-grid-kCDoV3k4.js";
30
- import { p as le } from "./parseISO-y3LncvfO.js";
31
- import { C as Xs } from "./chevron-down-DWE7GSq9.js";
32
- import { r as at, f as Bt, b as is } from "./format-D-1gTdHF.js";
33
- import { x as gs, d as ot, a as Ut, i as Qs, s as ht, m as en, y as Ot } from "./date-picker-variants-B3AFKDSu.js";
34
- import { s as tn } from "./subDays-XBMBTVOO.js";
35
- import { C as sn } from "./chevron-left-B8cOyH-V.js";
36
- import { C as nn } from "./chevron-right-I9AeSxH2.js";
37
- import { c as ke } from "./createLucideIcon-DhHxpK9K.js";
38
- import { M as rn, S as an } from "./sun-Bj9Mr553.js";
39
- import { S as on } from "./stethoscope-sZXGC43m.js";
40
- import { H as cn } from "./heart-pulse-BCppJyN2.js";
41
- import { E as dn } from "./eye-BjhN2nYf.js";
42
- import { B as ln } from "./baby-Dku-Xvg9.js";
43
- import { S as un } from "./scan-line-CNseIHQ0.js";
44
- import { A as pn } from "./astroid-BN4f5VXU.js";
45
- import { C as mn } from "./clipboard-check-BeAGxDVT.js";
1
+ import { jsx as s, jsxs as v, Fragment as ae } from "react/jsx-runtime";
2
+ import { forwardRef as ms, useId as Rt, useRef as _, useCallback as ye, useState as se, useEffect as K, useMemo as L, Fragment as qs, useImperativeHandle as Ks } from "react";
3
+ import { c as It } from "./index-D2ZczOXr.js";
4
+ import { useTranslation as W, Trans as zs } from "react-i18next";
5
+ import { u as js } from "./registry-DvAUVLHh.js";
6
+ import { A as ie } from "./alert-BhCstf2h.js";
7
+ import { B as et } from "./button-Bn16lcFM.js";
8
+ import { C as at } from "./checkbox--ndmyokr.js";
9
+ import { C as Us } from "./checkbox-group-B0oZHNT3.js";
10
+ import { D as Hs } from "./date-picker-wRAcq2lt.js";
11
+ import { E as Gs } from "./email-input-C7THAwh2.js";
12
+ import { F as Ge } from "./form-field-Ani72sVY.js";
13
+ import { P as Js } from "./phone-input-DxkHMYmu.js";
14
+ import { T as Ws } from "./text-area-COMVJ1yE.js";
15
+ import { T as Tt } from "./text-input-CaG9ApoE.js";
16
+ import { A as Ys } from "./address-fields-BfjxS05Z.js";
17
+ import { S as fs } from "./spinner-CoflYlEx.js";
18
+ import { a as Pt } from "./format-price-BKle6Xwt.js";
19
+ import { C as Zs } from "./credit-card-D9XZsHGA.js";
20
+ import { B as gs } from "./badge-hnBt8o7n.js";
21
+ import { I as is } from "./icon-button-COX76Jdj.js";
22
+ import { S as Vt } from "./select-Ce5RMk93.js";
23
+ import { C as Qt } from "./combobox-U5yfO6o0.js";
24
+ import { M as Xt } from "./multi-select-BT23EnSA.js";
25
+ import { c as Qs } from "./option-row-Dc7BrbK8.js";
26
+ import { S as Lt } from "./skeleton-B1KTdJ4N.js";
27
+ import { E as hs } from "./empty-state-gNG3qYCX.js";
28
+ import { S as Xs } from "./stepper-accordion-D7lnBGh2.js";
29
+ import { S as en } from "./stepper-progress-D6H8wQiV.js";
30
+ import { S as tn } from "./slot-grid-sVZriOiQ.js";
31
+ import { p as be } from "./parseISO-y3LncvfO.js";
32
+ import { C as sn } from "./chevron-down-DWE7GSq9.js";
33
+ import { r as ct, f as _t, b as rs } from "./format-D-1gTdHF.js";
34
+ import { x as vs, d as dt, a as Gt, i as nn, s as xt, m as rn, y as Ot } from "./date-picker-variants-BnF-sHzq.js";
35
+ import { s as on } from "./subDays-DlMw8Xng.js";
36
+ import { C as an } from "./chevron-left-B8cOyH-V.js";
37
+ import { C as cn } from "./chevron-right-I9AeSxH2.js";
38
+ import { c as Oe } from "./createLucideIcon-DhHxpK9K.js";
39
+ import { M as dn, S as ln } from "./sun-Bj9Mr553.js";
40
+ import { S as un } from "./stethoscope-sZXGC43m.js";
41
+ import { H as pn } from "./heart-pulse-BCppJyN2.js";
42
+ import { E as mn } from "./eye-BjhN2nYf.js";
43
+ import { B as fn } from "./baby-Dku-Xvg9.js";
44
+ import { S as gn } from "./scan-line-CNseIHQ0.js";
45
+ import { A as hn } from "./astroid-BN4f5VXU.js";
46
+ import { C as vn } from "./clipboard-check-BeAGxDVT.js";
46
47
  /**
47
48
  * @license lucide-react v1.22.0 - ISC
48
49
  *
49
50
  * This source code is licensed under the ISC license.
50
51
  * See the LICENSE file in the root directory of this source tree.
51
52
  */
52
- const fn = [
53
+ const bn = [
53
54
  [
54
55
  "path",
55
56
  {
@@ -57,14 +58,14 @@ const fn = [
57
58
  key: "169zse"
58
59
  }
59
60
  ]
60
- ], gn = ke("activity", fn);
61
+ ], yn = Oe("activity", bn);
61
62
  /**
62
63
  * @license lucide-react v1.22.0 - ISC
63
64
  *
64
65
  * This source code is licensed under the ISC license.
65
66
  * See the LICENSE file in the root directory of this source tree.
66
67
  */
67
- const hn = [
68
+ const kn = [
68
69
  [
69
70
  "path",
70
71
  {
@@ -72,14 +73,14 @@ const hn = [
72
73
  key: "w610uw"
73
74
  }
74
75
  ]
75
- ], vn = ke("bone", hn);
76
+ ], Sn = Oe("bone", kn);
76
77
  /**
77
78
  * @license lucide-react v1.22.0 - ISC
78
79
  *
79
80
  * This source code is licensed under the ISC license.
80
81
  * See the LICENSE file in the root directory of this source tree.
81
82
  */
82
- const bn = [
83
+ const xn = [
83
84
  ["path", { d: "M12 18V5", key: "adv99a" }],
84
85
  ["path", { d: "M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4", key: "1e3is1" }],
85
86
  ["path", { d: "M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5", key: "1gqd8o" }],
@@ -88,14 +89,14 @@ const bn = [
88
89
  ["path", { d: "M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517", key: "1gq6am" }],
89
90
  ["path", { d: "M6 18a4 4 0 0 1-2-7.464", key: "k1g0md" }],
90
91
  ["path", { d: "M6.003 5.125a4 4 0 0 0-2.526 5.77", key: "q97ue3" }]
91
- ], yn = ke("brain", bn);
92
+ ], In = Oe("brain", xn);
92
93
  /**
93
94
  * @license lucide-react v1.22.0 - ISC
94
95
  *
95
96
  * This source code is licensed under the ISC license.
96
97
  * See the LICENSE file in the root directory of this source tree.
97
98
  */
98
- const kn = [
99
+ const Nn = [
99
100
  ["rect", { width: "18", height: "18", x: "3", y: "4", rx: "2", key: "1hopcy" }],
100
101
  ["path", { d: "M16 2v4", key: "4m81vk" }],
101
102
  ["path", { d: "M3 10h18", key: "8toen8" }],
@@ -104,76 +105,76 @@ const kn = [
104
105
  ["path", { d: "M13 18H7", key: "bb0bb7" }],
105
106
  ["path", { d: "M7 14h.01", key: "1qa3f1" }],
106
107
  ["path", { d: "M17 18h.01", key: "1bdyru" }]
107
- ], Sn = ke("calendar-range", kn);
108
+ ], wn = Oe("calendar-range", Nn);
108
109
  /**
109
110
  * @license lucide-react v1.22.0 - ISC
110
111
  *
111
112
  * This source code is licensed under the ISC license.
112
113
  * See the LICENSE file in the root directory of this source tree.
113
114
  */
114
- const xn = [
115
+ const Cn = [
115
116
  ["path", { d: "M6 8.5a6.5 6.5 0 1 1 13 0c0 6-6 6-6 10a3.5 3.5 0 1 1-7 0", key: "1dfaln" }],
116
117
  ["path", { d: "M15 8.5a2.5 2.5 0 0 0-5 0v1a2 2 0 1 1 0 4", key: "1qnva7" }]
117
- ], In = ke("ear", xn);
118
+ ], An = Oe("ear", Cn);
118
119
  /**
119
120
  * @license lucide-react v1.22.0 - ISC
120
121
  *
121
122
  * This source code is licensed under the ISC license.
122
123
  * See the LICENSE file in the root directory of this source tree.
123
124
  */
124
- const Nn = [
125
+ const Tn = [
125
126
  ["path", { d: "M6 18h8", key: "1borvv" }],
126
127
  ["path", { d: "M3 22h18", key: "8prr45" }],
127
128
  ["path", { d: "M14 22a7 7 0 1 0 0-14h-1", key: "1jwaiy" }],
128
129
  ["path", { d: "M9 14h2", key: "197e7h" }],
129
130
  ["path", { d: "M9 12a2 2 0 0 1-2-2V6h6v4a2 2 0 0 1-2 2Z", key: "1bmzmy" }],
130
131
  ["path", { d: "M12 6V3a1 1 0 0 0-1-1H9a1 1 0 0 0-1 1v3", key: "1drr47" }]
131
- ], wn = ke("microscope", Nn);
132
+ ], On = Oe("microscope", Tn);
132
133
  /**
133
134
  * @license lucide-react v1.22.0 - ISC
134
135
  *
135
136
  * This source code is licensed under the ISC license.
136
137
  * See the LICENSE file in the root directory of this source tree.
137
138
  */
138
- const Cn = [
139
+ const Dn = [
139
140
  [
140
141
  "path",
141
142
  { d: "m10.5 20.5 10-10a4.95 4.95 0 1 0-7-7l-10 10a4.95 4.95 0 1 0 7 7Z", key: "wa1lgi" }
142
143
  ],
143
144
  ["path", { d: "m8.5 8.5 7 7", key: "rvfmvr" }]
144
- ], An = ke("pill", Cn);
145
+ ], En = Oe("pill", Dn);
145
146
  /**
146
147
  * @license lucide-react v1.22.0 - ISC
147
148
  *
148
149
  * This source code is licensed under the ISC license.
149
150
  * See the LICENSE file in the root directory of this source tree.
150
151
  */
151
- const Tn = [
152
+ const Fn = [
152
153
  ["circle", { cx: "6", cy: "6", r: "3", key: "1lh9wr" }],
153
154
  ["path", { d: "M8.12 8.12 12 12", key: "1alkpv" }],
154
155
  ["path", { d: "M20 4 8.12 15.88", key: "xgtan2" }],
155
156
  ["circle", { cx: "6", cy: "18", r: "3", key: "fqmcym" }],
156
157
  ["path", { d: "M14.8 14.8 20 20", key: "ptml3r" }]
157
- ], Dn = ke("scissors", Tn);
158
+ ], Mn = Oe("scissors", Fn);
158
159
  /**
159
160
  * @license lucide-react v1.22.0 - ISC
160
161
  *
161
162
  * This source code is licensed under the ISC license.
162
163
  * See the LICENSE file in the root directory of this source tree.
163
164
  */
164
- const On = [
165
+ const _n = [
165
166
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
166
167
  ["path", { d: "M8 14s1.5 2 4 2 4-2 4-2", key: "1y1vjs" }],
167
168
  ["line", { x1: "9", x2: "9.01", y1: "9", y2: "9", key: "yxxnd0" }],
168
169
  ["line", { x1: "15", x2: "15.01", y1: "9", y2: "9", key: "1p4y9e" }]
169
- ], Mn = ke("smile", On);
170
+ ], Ln = Oe("smile", _n);
170
171
  /**
171
172
  * @license lucide-react v1.22.0 - ISC
172
173
  *
173
174
  * This source code is licensed under the ISC license.
174
175
  * See the LICENSE file in the root directory of this source tree.
175
176
  */
176
- const Fn = [
177
+ const Bn = [
177
178
  ["path", { d: "M12 10V2", key: "16sf7g" }],
178
179
  ["path", { d: "m4.93 10.93 1.41 1.41", key: "2a7f42" }],
179
180
  ["path", { d: "M2 18h2", key: "j10viu" }],
@@ -182,25 +183,25 @@ const Fn = [
182
183
  ["path", { d: "M22 22H2", key: "19qnx5" }],
183
184
  ["path", { d: "m16 6-4 4-4-4", key: "6wukr" }],
184
185
  ["path", { d: "M16 18a4 4 0 0 0-8 0", key: "1lzouq" }]
185
- ], _n = ke("sunset", Fn);
186
+ ], Rn = Oe("sunset", Bn);
186
187
  /**
187
188
  * @license lucide-react v1.22.0 - ISC
188
189
  *
189
190
  * This source code is licensed under the ISC license.
190
191
  * See the LICENSE file in the root directory of this source tree.
191
192
  */
192
- const Ln = [
193
+ const Pn = [
193
194
  ["path", { d: "m18 2 4 4", key: "22kx64" }],
194
195
  ["path", { d: "m17 7 3-3", key: "1w1zoj" }],
195
196
  ["path", { d: "M19 9 8.7 19.3c-1 1-2.5 1-3.4 0l-.6-.6c-1-1-1-2.5 0-3.4L15 5", key: "1exhtz" }],
196
197
  ["path", { d: "m9 11 4 4", key: "rovt3i" }],
197
198
  ["path", { d: "m5 19-3 3", key: "59f2uf" }],
198
199
  ["path", { d: "m14 4 6 6", key: "yqp9t2" }]
199
- ], rs = ke("syringe", Ln);
200
- function Bn(e, t, n) {
201
- return gs(e, -1, n);
200
+ ], os = Oe("syringe", Pn);
201
+ function Vn(e, t, n) {
202
+ return vs(e, -1, n);
202
203
  }
203
- const En = {
204
+ const $n = {
204
205
  id: "booking",
205
206
  // `view_change` removed (0.69): the layout `variant` is a fixed prop — the
206
207
  // handle exposes only `getVariant` (state), no action mutates it. The flow's
@@ -275,29 +276,29 @@ const En = {
275
276
  description: "Sourced from the id prop."
276
277
  }
277
278
  }
278
- }, Jt = [
279
+ }, Yt = [
279
280
  "email",
280
281
  "whatsapp",
281
282
  "sms"
282
- ], Ce = "all", Rn = "de";
283
- function Pn(e) {
283
+ ], _e = "all", qn = "de";
284
+ function Kn(e) {
284
285
  const t = e.lockedOperatorId;
285
286
  return [...t ? e.operatorsByService ? e.specialties.filter(
286
287
  (r) => e.services.some(
287
288
  (i) => {
288
- var a;
289
- return i.specialtyId === r.id && ((a = i.operatorIds) == null ? void 0 : a.includes(t));
289
+ var o;
290
+ return i.specialtyId === r.id && ((o = i.operatorIds) == null ? void 0 : o.includes(t));
290
291
  }
291
292
  )
292
293
  ) : e.specialties.filter((r) => {
293
294
  var i;
294
295
  return (i = r.operatorIds) == null ? void 0 : i.includes(t);
295
296
  }) : e.specialties].sort((r, i) => {
296
- const a = r.sequenceNumber ?? Number.POSITIVE_INFINITY, c = i.sequenceNumber ?? Number.POSITIVE_INFINITY;
297
- return a - c;
297
+ const o = r.sequenceNumber ?? Number.POSITIVE_INFINITY, c = i.sequenceNumber ?? Number.POSITIVE_INFINITY;
298
+ return o - c;
298
299
  });
299
300
  }
300
- function Vn(e) {
301
+ function zn(e) {
301
302
  let t = e.services;
302
303
  if (e.lockedOperatorId && (t = t.filter(
303
304
  (r) => {
@@ -305,65 +306,65 @@ function Vn(e) {
305
306
  return (i = r.operatorIds) == null ? void 0 : i.includes(e.lockedOperatorId);
306
307
  }
307
308
  )), e.useSpecialties === void 0 ? e.specialties.length > 0 : e.useSpecialties) {
308
- const r = Ge(e.value);
309
+ const r = Je(e.value);
309
310
  r.length > 0 && (t = t.filter(
310
311
  (i) => i.specialtyId !== void 0 && r.includes(i.specialtyId)
311
312
  ));
312
313
  }
313
314
  return t;
314
315
  }
315
- function $n(e) {
316
- const t = e.useSpecialties === void 0 ? e.specialties.length > 0 : e.useSpecialties, n = _e(e.value);
316
+ function jn(e) {
317
+ const t = e.useSpecialties === void 0 ? e.specialties.length > 0 : e.useSpecialties, n = qe(e.value);
317
318
  if ((!t || e.operatorsByService) && n.length > 0)
318
319
  return e.operators.filter(
319
320
  (r) => {
320
321
  var i;
321
- return (i = r.appointmentBookingReasonIds) == null ? void 0 : i.some((a) => n.includes(a));
322
+ return (i = r.appointmentBookingReasonIds) == null ? void 0 : i.some((o) => n.includes(o));
322
323
  }
323
324
  );
324
325
  if (t) {
325
- const r = Ge(e.value);
326
+ const r = Je(e.value);
326
327
  if (r.length > 0)
327
328
  return e.operators.filter(
328
329
  (i) => {
329
- var a;
330
- return (a = i.specialtyIds) == null ? void 0 : a.some((c) => r.includes(c));
330
+ var o;
331
+ return (o = i.specialtyIds) == null ? void 0 : o.some((c) => r.includes(c));
331
332
  }
332
333
  );
333
334
  }
334
335
  return [];
335
336
  }
336
- function qn(e, t) {
337
- const n = e.country === Rn, r = !n || e.value.insuranceType !== void 0, a = (e.useSpecialties === void 0 ? e.specialties.length > 0 : e.useSpecialties) && r, c = Ge(e.value).length > 0, p = !a || c, m = _e(e.value).length > 0, g = !p || m, l = t.operators, o = !!e.allowOperatorSelection && g && m && !e.lockedOperatorId && l.length > 1, u = g && m, I = (!u || e.value.date !== void 0) && e.value.date !== void 0, M = (!I || e.value.slotKey !== void 0) && e.value.slotKey !== void 0, w = m && l.length === 0;
337
+ function Un(e, t) {
338
+ const n = e.country === qn, r = !n || e.value.insuranceType !== void 0, o = (e.useSpecialties === void 0 ? e.specialties.length > 0 : e.useSpecialties) && r, c = Je(e.value).length > 0, m = !o || c, p = qe(e.value).length > 0, g = !m || p, l = t.operators, a = !!e.allowOperatorSelection && g && p && !e.lockedOperatorId && l.length > 1, u = g && p, x = (!u || e.value.date !== void 0) && e.value.date !== void 0, E = (!x || e.value.slotKey !== void 0) && e.value.slotKey !== void 0, N = p && l.length === 0;
338
339
  return {
339
340
  insurance: n,
340
- specialty: a,
341
- service: p,
342
- operator: o,
341
+ specialty: o,
342
+ service: m,
343
+ operator: a,
343
344
  date: u,
344
- slot: I,
345
- details: M,
346
- onboardingIncomplete: w
345
+ slot: x,
346
+ details: E,
347
+ onboardingIncomplete: N
347
348
  };
348
349
  }
349
- function Kn(e, t) {
350
+ function Hn(e, t) {
350
351
  const n = [];
351
352
  return t.insurance && n.push(1), t.specialty && n.push(2), n.push(3), t.operator && n.push(4), n.push(5), n.push(6), n.push(7), {
352
353
  currentStep: n.find(
353
- (i) => !Fe(i, e.value)
354
+ (i) => !$e(i, e.value)
354
355
  ) ?? 7,
355
356
  visibleSteps: n
356
357
  };
357
358
  }
358
- function Fe(e, t) {
359
+ function $e(e, t) {
359
360
  switch (e) {
360
361
  case 1:
361
362
  return t.insuranceType !== void 0;
362
363
  // 0.34.0: array-or-single — satisfied when EITHER form is present.
363
364
  case 2:
364
- return Ge(t).length > 0;
365
+ return Je(t).length > 0;
365
366
  case 3:
366
- return _e(t).length > 0;
367
+ return qe(t).length > 0;
367
368
  // Always satisfied, like its gate: "no preference" is a valid answer,
368
369
  // whether it is the `'all'` sentinel or an empty multi-select.
369
370
  case 4:
@@ -377,30 +378,30 @@ function Fe(e, t) {
377
378
  return !1;
378
379
  }
379
380
  }
380
- function zn(e) {
381
+ function Gn(e) {
381
382
  const t = {
382
- specialties: Pn(e),
383
- services: Vn(e),
384
- operators: $n(e)
385
- }, n = qn(e, t), { currentStep: r, visibleSteps: i } = Kn(e, n);
386
- let a;
383
+ specialties: Kn(e),
384
+ services: zn(e),
385
+ operators: jn(e)
386
+ }, n = Un(e, t), { currentStep: r, visibleSteps: i } = Hn(e, n);
387
+ let o;
387
388
  if (e.value.date && e.value.slotKey) {
388
389
  const g = e.availableSlots[e.value.date];
389
- g && (a = g.find((l) => l.key === e.value.slotKey));
390
+ g && (o = g.find((l) => l.key === e.value.slotKey));
390
391
  }
391
- const c = _e(e.value), f = c.length > 0 ? e.services.find((g) => g.id === c[0]) : void 0, p = Ge(e.value).length > 0, m = c.length > 0 && e.value.date !== void 0 && e.value.slotKey !== void 0 && (!n.insurance || e.value.insuranceType !== void 0) && (!n.specialty || p);
392
+ const c = qe(e.value), f = c.length > 0 ? e.services.find((g) => g.id === c[0]) : void 0, m = Je(e.value).length > 0, p = c.length > 0 && e.value.date !== void 0 && e.value.slotKey !== void 0 && (!n.insurance || e.value.insuranceType !== void 0) && (!n.specialty || m);
392
393
  return {
393
394
  gates: n,
394
395
  filtered: t,
395
396
  currentStep: r,
396
397
  totalSteps: i.length,
397
398
  visibleSteps: i,
398
- isReadyToSubmit: m,
399
+ isReadyToSubmit: p,
399
400
  durationMin: f == null ? void 0 : f.durationMin,
400
- selectedSlot: a
401
+ selectedSlot: o
401
402
  };
402
403
  }
403
- function hs(e, t) {
404
+ function bs(e, t) {
404
405
  return {
405
406
  ...e,
406
407
  insuranceType: t,
@@ -412,7 +413,7 @@ function hs(e, t) {
412
413
  details: void 0
413
414
  };
414
415
  }
415
- function vs(e, t) {
416
+ function ys(e, t) {
416
417
  return {
417
418
  ...e,
418
419
  specialtyId: t,
@@ -426,7 +427,7 @@ function vs(e, t) {
426
427
  details: void 0
427
428
  };
428
429
  }
429
- function bs(e, t) {
430
+ function ks(e, t) {
430
431
  return {
431
432
  ...e,
432
433
  specialtyId: void 0,
@@ -440,7 +441,7 @@ function bs(e, t) {
440
441
  details: void 0
441
442
  };
442
443
  }
443
- function ys(e, t) {
444
+ function Ss(e, t) {
444
445
  return {
445
446
  ...e,
446
447
  serviceId: t,
@@ -448,27 +449,27 @@ function ys(e, t) {
448
449
  // Default the operator to the "All operators" sentinel so a patient
449
450
  // who doesn't care about picking lands on a satisfied step 4 without
450
451
  // any further input.
451
- operatorId: t ? Ce : void 0,
452
+ operatorId: t ? _e : void 0,
452
453
  operatorIds: void 0,
453
454
  date: void 0,
454
455
  slotKey: void 0,
455
456
  details: void 0
456
457
  };
457
458
  }
458
- function ks(e, t) {
459
+ function xs(e, t) {
459
460
  const n = !!t && t.length > 0;
460
461
  return {
461
462
  ...e,
462
463
  serviceId: void 0,
463
464
  serviceIds: t,
464
- operatorId: n ? Ce : void 0,
465
+ operatorId: n ? _e : void 0,
465
466
  operatorIds: void 0,
466
467
  date: void 0,
467
468
  slotKey: void 0,
468
469
  details: void 0
469
470
  };
470
471
  }
471
- function Ss(e, t) {
472
+ function Is(e, t) {
472
473
  return {
473
474
  ...e,
474
475
  operatorId: t,
@@ -478,7 +479,7 @@ function Ss(e, t) {
478
479
  details: void 0
479
480
  };
480
481
  }
481
- function xs(e, t) {
482
+ function Ns(e, t) {
482
483
  return {
483
484
  ...e,
484
485
  operatorId: void 0,
@@ -488,13 +489,13 @@ function xs(e, t) {
488
489
  details: void 0
489
490
  };
490
491
  }
491
- function Ge(e) {
492
+ function Je(e) {
492
493
  return e.specialtyIds && e.specialtyIds.length > 0 ? e.specialtyIds : e.specialtyId ? [e.specialtyId] : [];
493
494
  }
494
- function _e(e) {
495
+ function qe(e) {
495
496
  return e.serviceIds && e.serviceIds.length > 0 ? e.serviceIds : e.serviceId ? [e.serviceId] : [];
496
497
  }
497
- function Wt(e) {
498
+ function Zt(e) {
498
499
  return e.operatorIds && e.operatorIds.length > 0 ? e.operatorIds : e.operatorId ? [e.operatorId] : [];
499
500
  }
500
501
  function $t(e, t) {
@@ -506,49 +507,49 @@ function $t(e, t) {
506
507
  // since the user has already filled some fields.
507
508
  };
508
509
  }
509
- function Is(e, t) {
510
+ function ws(e, t) {
510
511
  return {
511
512
  ...e,
512
513
  slotKey: t
513
514
  };
514
515
  }
515
- function jn(e, t) {
516
+ function Jn(e, t) {
516
517
  let n = e;
517
518
  if (t.lockedOperatorId && n.operatorId !== t.lockedOperatorId && (n = { ...n, operatorId: t.lockedOperatorId }), (t.useSpecialties === void 0 ? t.specialties.length > 0 : t.useSpecialties) && t.specialties.length === 1 && n.specialtyId === void 0 && n.specialtyIds === void 0 && (n = { ...n, specialtyId: t.specialties[0].id }), t.autoSelectSingleService) {
518
- const i = Ge(n), a = i.length > 0 ? t.services.filter(
519
+ const i = Je(n), o = i.length > 0 ? t.services.filter(
519
520
  (c) => c.specialtyId && i.includes(c.specialtyId)
520
521
  ) : t.services;
521
- a.length === 1 && n.serviceId === void 0 && n.serviceIds === void 0 && (n = { ...n, serviceId: a[0].id }, n.operatorId === void 0 && n.operatorIds === void 0 && (n = { ...n, operatorId: Ce }));
522
+ o.length === 1 && n.serviceId === void 0 && n.serviceIds === void 0 && (n = { ...n, serviceId: o[0].id }, n.operatorId === void 0 && n.operatorIds === void 0 && (n = { ...n, operatorId: _e }));
522
523
  }
523
524
  return n;
524
525
  }
525
- function Ns(e) {
526
- if (e.operatorId && e.operatorId !== Ce)
526
+ function Cs(e) {
527
+ if (e.operatorId && e.operatorId !== _e)
527
528
  return e.operatorId;
528
529
  }
529
- function Un(e) {
530
+ function Wn(e) {
530
531
  if (!e) return !1;
531
532
  const t = e.trim();
532
533
  return /^\+?\d[\d\s\-()]{6,}$/.test(t);
533
534
  }
534
- function ws(e) {
535
+ function As(e) {
535
536
  const t = e && e.length > 0 ? e : ["email"], n = new Set(t);
536
- return Jt.filter((r) => n.has(r));
537
+ return Yt.filter((r) => n.has(r));
537
538
  }
538
- function Gn(e, t, n) {
539
- const r = ws(e), i = new Set(r);
539
+ function Yn(e, t, n) {
540
+ const r = As(e), i = new Set(r);
540
541
  if (n)
541
- return Jt.filter(
542
- (m) => n.includes(m) && i.has(m)
542
+ return Yt.filter(
543
+ (p) => n.includes(p) && i.has(p)
543
544
  );
544
- const a = [];
545
- i.has("email") && a.push("email");
546
- const c = Un(t), f = i.has("whatsapp");
547
- f && c && a.push("whatsapp"), !f && i.has("sms") && a.push("sms");
548
- const p = new Set(a);
549
- return Jt.filter((m) => p.has(m));
550
- }
551
- const Hn = /https?:\/\/(?:(?![.,;:!?'»›]https?:\/\/)[^\s<>"\u060C\u061B\u061F\u06D4\u2000-\u206F\u3000-\u303F\uFF00-\uFFEF])+/gi, Jn = /* @__PURE__ */ new Set([
545
+ const o = [];
546
+ i.has("email") && o.push("email");
547
+ const c = Wn(t), f = i.has("whatsapp");
548
+ f && c && o.push("whatsapp"), !f && i.has("sms") && o.push("sms");
549
+ const m = new Set(o);
550
+ return Yt.filter((p) => m.has(p));
551
+ }
552
+ const Zn = /https?:\/\/(?:(?![.,;:!?'»›]https?:\/\/)[^\s<>"\u060C\u061B\u061F\u06D4\u2000-\u206F\u3000-\u303F\uFF00-\uFFEF])+/gi, Qn = /* @__PURE__ */ new Set([
552
553
  ".",
553
554
  ",",
554
555
  ";",
@@ -558,15 +559,15 @@ const Hn = /https?:\/\/(?:(?![.,;:!?'»›]https?:\/\/)[^\s<>"\u060C\u061B\u061F
558
559
  "'",
559
560
  "»",
560
561
  "›"
561
- ]), Wn = { ")": "(", "]": "[", "}": "{" }, as = (e, t) => e.split(t).length - 1;
562
- function Yn(e) {
562
+ ]), Xn = { ")": "(", "]": "[", "}": "{" }, as = (e, t) => e.split(t).length - 1;
563
+ function ei(e) {
563
564
  const t = {};
564
- for (const [r, i] of Object.entries(Wn))
565
+ for (const [r, i] of Object.entries(Xn))
565
566
  t[r] = as(e, r) - as(e, i);
566
567
  let n = e.length;
567
568
  for (; n > 0; ) {
568
569
  const r = e[n - 1];
569
- if (Jn.has(r))
570
+ if (Qn.has(r))
570
571
  n -= 1;
571
572
  else if (r in t && t[r] > 0)
572
573
  t[r] -= 1, n -= 1;
@@ -575,12 +576,12 @@ function Yn(e) {
575
576
  }
576
577
  return e.slice(0, n);
577
578
  }
578
- const Zn = /[\u0600-\u06FF\u3040-\u30FF\u3400-\u9FFF\uAC00-\uD7AF]/, Xn = /[A-Za-z0-9]/;
579
- function Qn(e) {
580
- const t = e.search(Zn);
581
- return t > 0 && Xn.test(e[t - 1]) ? e.slice(0, t) : e;
579
+ const ti = /[\u0600-\u06FF\u3040-\u30FF\u3400-\u9FFF\uAC00-\uD7AF]/, si = /[A-Za-z0-9]/;
580
+ function ni(e) {
581
+ const t = e.search(ti);
582
+ return t > 0 && si.test(e[t - 1]) ? e.slice(0, t) : e;
582
583
  }
583
- function ei(e) {
584
+ function ii(e) {
584
585
  try {
585
586
  const { protocol: t, hostname: n } = new URL(e);
586
587
  return (t === "http:" || t === "https:") && n !== "";
@@ -588,21 +589,21 @@ function ei(e) {
588
589
  return !1;
589
590
  }
590
591
  }
591
- function ti(e) {
592
+ function ri(e) {
592
593
  const t = [];
593
594
  let n = 0;
594
595
  const r = (i) => {
595
596
  if (i === "") return;
596
- const a = t[t.length - 1];
597
- (a == null ? void 0 : a.kind) === "text" ? a.text += i : t.push({ kind: "text", text: i });
597
+ const o = t[t.length - 1];
598
+ (o == null ? void 0 : o.kind) === "text" ? o.text += i : t.push({ kind: "text", text: i });
598
599
  };
599
- for (const i of e.matchAll(Hn)) {
600
- const a = i.index ?? 0, c = Yn(Qn(i[0]));
601
- ei(c) && (r(e.slice(n, a)), t.push({ kind: "link", text: c, href: c }), n = a + c.length);
600
+ for (const i of e.matchAll(Zn)) {
601
+ const o = i.index ?? 0, c = ei(ni(i[0]));
602
+ ii(c) && (r(e.slice(n, o)), t.push({ kind: "link", text: c, href: c }), n = o + c.length);
602
603
  }
603
604
  return r(e.slice(n)), t;
604
605
  }
605
- const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 300, Gt = "ds:rounded-[var(--radius-sm)] ds:underline ds:text-[var(--foreground)] ds:focus-visible:outline-solid ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-[var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]", Mt = (e) => e && /^https?:\/\//i.test(e) ? e : void 0, ii = (e, t) => ({
606
+ const cs = 500, oi = /^[A-Z0-9]{16}$/, ai = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, ds = 300, Jt = "ds:rounded-[var(--radius-sm)] ds:underline ds:text-[var(--foreground)] ds:focus-visible:outline-solid ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-[var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]", Dt = (e) => e && /^https?:\/\//i.test(e) ? e : void 0, ci = (e, t) => ({
606
607
  street: (e == null ? void 0 : e.address.line1) ?? "",
607
608
  city: (e == null ? void 0 : e.address.city) ?? "",
608
609
  postcode: (e == null ? void 0 : e.address.postalCode) ?? "",
@@ -610,7 +611,7 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
610
611
  // The practice's country only until the patient has an address at all.
611
612
  country: (e ? e.address.country : t).toLowerCase(),
612
613
  formatted: ""
613
- }), ri = (e, t, n = null) => ({
614
+ }), di = (e, t, n = null) => ({
614
615
  name: t,
615
616
  address: {
616
617
  line1: e.street,
@@ -620,25 +621,25 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
620
621
  postalCode: e.postcode,
621
622
  country: e.country.toUpperCase()
622
623
  }
623
- }), ai = bt("ds:flex ds:flex-col ds:border", {
624
+ }), li = It("ds:flex ds:flex-col ds:border", {
624
625
  variants: {
625
626
  noticeStyle: {
626
627
  plain: "ds:gap-[var(--spacing-xs)] ds:rounded-[var(--radius-md)] ds:border-[var(--border)] ds:bg-[var(--muted)] ds:p-[var(--spacing-sm)]",
627
628
  highlighted: "ds:gap-[var(--spacing-sm)] ds:rounded-[var(--radius-lg)] ds:border-[color-mix(in_srgb,var(--primary)_30%,var(--border))] ds:bg-[color-mix(in_srgb,var(--primary)_8%,var(--card))] ds:p-[var(--spacing-md)]"
628
629
  }
629
630
  },
630
- defaultVariants: { noticeStyle: "plain" }
631
- }), oi = ["it", "ch", "de", "at", "fr", "sm"], vt = {
631
+ defaultVariants: { noticeStyle: "highlighted" }
632
+ }), ui = ["it", "ch", "de", "at", "fr", "sm"], V = {
632
633
  country: "billing.country",
633
634
  street: "billing.street",
634
635
  city: "billing.city",
635
636
  postcode: "billing.postcode",
636
637
  province: "billing.province"
637
- }, Cs = /^\d{5}$/, ci = (e) => {
638
+ }, Ts = /^\d{5}$/, pi = (e) => {
638
639
  if (!e) return !1;
639
- const { line1: t, city: n, postalCode: r, country: i, state: a } = e.address;
640
- return !t.trim() || !n.trim() || !r.trim() || !i.trim() ? !1 : i.toUpperCase() !== "IT" ? !0 : !!a.trim() && Cs.test(r.trim());
641
- }, di = (e, t) => {
640
+ const { line1: t, city: n, postalCode: r, country: i, state: o } = e.address;
641
+ return !t.trim() || !n.trim() || !r.trim() || !i.trim() ? !1 : i.toUpperCase() !== "IT" ? !0 : !!o.trim() && Ts.test(r.trim());
642
+ }, mi = (e, t) => {
642
643
  var n;
643
644
  return {
644
645
  name: t,
@@ -651,229 +652,268 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
651
652
  country: e.address.country.trim().toUpperCase()
652
653
  }
653
654
  };
654
- }, Ft = { state: "idle" }, Xt = us(
655
+ }, Et = { state: "idle" }, ls = [
656
+ "firstName",
657
+ "lastName",
658
+ "email",
659
+ "mobilePhone",
660
+ "codiceFiscale",
661
+ "dateOfBirth",
662
+ "insuranceNumber",
663
+ V.country,
664
+ V.street,
665
+ V.city,
666
+ V.postcode,
667
+ V.province
668
+ ], fi = /* @__PURE__ */ new Set(), es = ms(
655
669
  ({
656
670
  value: e,
657
671
  onChange: t,
658
672
  onSubmit: n,
659
673
  requireCodiceFiscale: r = !1,
660
674
  requireDateOfBirth: i = !1,
661
- requireInsuranceNumber: a = !1,
675
+ requireInsuranceNumber: o = !1,
662
676
  insuranceType: c,
663
677
  showNote: f = !1,
664
- showReturningPatientFlag: p = !1,
665
- privacyPolicyUrl: m,
678
+ showReturningPatientFlag: m = !1,
679
+ privacyPolicyUrl: p,
666
680
  termsUrl: g,
667
681
  practiceConsent: l,
668
- payment: o,
682
+ payment: a,
669
683
  paymentTermsUrl: u,
670
- paymentBlocked: k = !1,
671
- billingInDetails: I = !1,
672
- paymentNoticeStyle: N = "plain",
673
- criticalInformationToAccept: M,
674
- validateCodiceFiscale: w,
675
- validateInsuranceNumber: x,
676
- submitting: S = !1,
677
- summarySlot: A,
678
- defaultPhoneCountry: D,
684
+ paymentBlocked: y = !1,
685
+ billingInDetails: x = !1,
686
+ paymentNoticeStyle: k = "highlighted",
687
+ criticalInformationToAccept: E,
688
+ validateCodiceFiscale: N,
689
+ validateInsuranceNumber: S,
690
+ submitting: I = !1,
691
+ summarySlot: C,
692
+ defaultPhoneCountry: O,
679
693
  confirmationChannels: T,
680
694
  defaultConfirmationChannels: h,
681
- submitError: C
695
+ submitError: w
682
696
  }, $) => {
683
- var je, Ct, ft, At, gt;
684
- const { t: b, i18n: pe } = G("ui"), F = Pt(), z = E(null), _ = ue(
697
+ var A, B, R, J, ne;
698
+ const { t: b, i18n: ke } = W("ui"), F = Rt(), G = _(null), M = ye(
685
699
  (d) => {
686
- z.current = d, typeof $ == "function" ? $(d) : $ && ($.current = d);
700
+ G.current = d, typeof $ == "function" ? $(d) : $ && ($.current = d);
687
701
  },
688
702
  [$]
689
- ), [me, dt] = Q(0);
690
- q(() => {
691
- var O;
692
- if (me === 0) return;
693
- const d = (O = z.current) == null ? void 0 : O.querySelectorAll(
703
+ ), [Se, ut] = se(0);
704
+ K(() => {
705
+ var D;
706
+ if (Se === 0) return;
707
+ const d = (D = G.current) == null ? void 0 : D.querySelectorAll(
694
708
  '[aria-invalid="true"], [role="checkbox"][aria-required="true"][aria-checked="false"], [data-unanswered] [role="checkbox"]'
695
709
  );
696
- for (const y of d ?? [])
697
- if (y.focus(), document.activeElement === y) return;
698
- }, [me]);
699
- const fe = E(!1), [He, Le] = Q(!1), [H, Be] = Q(!1), ge = S || He, [J, ae] = Q(Ft), [he, Se] = Q(Ft), [W, Ae] = Q({}), ie = ue(
700
- (d) => Ae((O) => ({ ...O, [d]: !0 })),
710
+ for (const U of d ?? [])
711
+ if (U.focus(), document.activeElement === U) return;
712
+ }, [Se]);
713
+ const fe = _(!1), [We, Ke] = se(!1), [Z, ze] = se(!1), ce = I || We, [X, ge] = se(Et), [xe, De] = se(Et), [ee, Le] = se({}), de = ye(
714
+ (d) => Le((D) => ({ ...D, [d]: !0 })),
701
715
  []
702
- ), oe = E(null), te = E(
716
+ ), [Be, Ie] = se(fi), Q = _(null), je = _(
703
717
  null
704
718
  );
705
- q(
719
+ K(
706
720
  () => () => {
707
- oe.current && clearTimeout(oe.current), te.current && clearTimeout(te.current);
721
+ Q.current && clearTimeout(Q.current), je.current && clearTimeout(je.current);
708
722
  },
709
723
  []
710
724
  );
711
- const L = ue(
725
+ const q = ye(
712
726
  (d) => {
713
- Be(!1), t({ ...e, ...d });
727
+ ze(!1), t({ ...e, ...d });
714
728
  },
715
729
  [e, t]
716
- ), xe = o ? JSON.stringify([
717
- o.serviceId,
718
- o.kind,
719
- o.amountCents,
720
- o.currencyCode,
730
+ ), le = a ? JSON.stringify([
731
+ a.serviceId,
732
+ a.kind,
733
+ a.amountCents,
734
+ a.currencyCode,
721
735
  u
722
- ]) : void 0, [Kt, Ee] = Q(
723
- () => e.paymentAccepted ? xe : void 0
724
- ), kt = E(xe), Qe = !!(o && e.paymentAccepted && Kt === xe);
725
- q(() => {
726
- kt.current !== xe && (kt.current = xe, Ee(void 0), e.paymentAccepted !== void 0 && L({ paymentAccepted: o ? !1 : void 0 }));
727
- }, [xe, o, L, e.paymentAccepted]);
728
- const Re = typeof (l == null ? void 0 : l.label) == "string" && l.label.trim() !== "", Ie = l && Re ? JSON.stringify([
736
+ ]) : void 0, [Kt, tt] = se(
737
+ () => e.paymentAccepted ? le : void 0
738
+ ), st = _(le), Nt = !!(a && e.paymentAccepted && Kt === le);
739
+ K(() => {
740
+ st.current !== le && (st.current = le, tt(void 0), e.paymentAccepted !== void 0 && q({ paymentAccepted: a ? !1 : void 0 }));
741
+ }, [le, a, q, e.paymentAccepted]);
742
+ const nt = typeof (l == null ? void 0 : l.label) == "string" && l.label.trim() !== "", z = l && nt ? JSON.stringify([
729
743
  l.label,
730
744
  l.url ?? null,
731
745
  l.required
732
- ]) : void 0, [zt, Z] = Q(
733
- () => e.practiceConsentAccepted ? Ie : void 0
734
- ), St = E(Ie), se = !!(Ie !== void 0 && e.practiceConsentAccepted && zt === Ie);
735
- q(() => {
736
- St.current !== Ie && (St.current = Ie, Z(void 0), e.practiceConsentAccepted !== void 0 && L({ practiceConsentAccepted: void 0 }));
737
- }, [Ie, L, e.practiceConsentAccepted]);
738
- const Te = o ? yt(o.amountCents, o.currencyCode, pe.language) : "", Ne = Mt(u), ve = I && !!o && !k, B = r, et = (D || "it").toLowerCase(), Je = !ve || ci(e.billing), We = ii(e.billing, et), X = We.country === "it", we = E(null), Pe = E(
746
+ ]) : void 0, [zt, ue] = se(
747
+ () => e.practiceConsentAccepted ? z : void 0
748
+ ), Ye = _(z), Ne = !!(z !== void 0 && e.practiceConsentAccepted && zt === z);
749
+ K(() => {
750
+ Ye.current !== z && (Ye.current = z, ue(void 0), e.practiceConsentAccepted !== void 0 && q({ practiceConsentAccepted: void 0 }));
751
+ }, [z, q, e.practiceConsentAccepted]);
752
+ const Ee = a ? Pt(a.amountCents, a.currencyCode, ke.language) : "", P = Dt(u), we = x && !!a && !y, he = r, wt = (O || "it").toLowerCase(), pe = !we || pi(e.billing), ve = ci(e.billing, wt), Ze = ve.country === "it", pt = _(null), re = _(
739
753
  null
740
- ), Ve = (je = e.billing) == null ? void 0 : je.address.line1.trim(), ce = ((ft = (Ct = e.billing) == null ? void 0 : Ct.address.line2) == null ? void 0 : ft.trim()) || null;
741
- q(() => {
754
+ ), Re = (A = e.billing) == null ? void 0 : A.address.line1.trim(), it = ((R = (B = e.billing) == null ? void 0 : B.address.line2) == null ? void 0 : R.trim()) || null;
755
+ K(() => {
742
756
  var d;
743
- Ve !== void 0 && ce ? Pe.current = { street: Ve, line2: ce } : (Ve === void 0 || Ve === ((d = Pe.current) == null ? void 0 : d.street)) && (Pe.current = null);
744
- }, [Ve, ce]);
745
- const De = (d) => W[vt[d]] ? We[d].trim() ? (
746
- // The one format the block itself checks: an Italian CAP.
747
- d === "postcode" && X && !Cs.test(We.postcode.trim()) ? b("inputs.postalCode.invalid") : void 0
748
- ) : b("booking.details.fieldRequired") : void 0, xt = ue(
749
- () => Ae(
750
- (d) => d[vt.province] ? d : {
757
+ Re !== void 0 && it ? re.current = { street: Re, line2: it } : (Re === void 0 || Re === ((d = re.current) == null ? void 0 : d.street)) && (re.current = null);
758
+ }, [Re, it]);
759
+ const Qe = (d) => (
760
+ // Nothing for a block not shown, nor for a province outside Italy.
761
+ !we || !ee[V[d]] || d === "province" && !Ze ? void 0 : ve[d].trim() ? (
762
+ // The one format the block itself checks: an Italian CAP.
763
+ d === "postcode" && Ze && !Ts.test(ve.postcode.trim()) ? b("inputs.postalCode.invalid") : void 0
764
+ ) : b("booking.details.fieldRequired")
765
+ ), jt = ye(
766
+ () => Le(
767
+ (d) => d[V.province] ? d : {
751
768
  ...d,
752
769
  codiceFiscale: !0,
753
770
  ...Object.fromEntries(
754
- Object.values(vt).map((O) => [O, !0])
771
+ Object.values(V).map((D) => [D, !0])
755
772
  )
756
773
  }
757
774
  ),
758
775
  []
759
- ), tt = R(
760
- () => ws(T),
776
+ ), Fe = L(
777
+ () => As(T),
761
778
  [T]
762
- ), $e = !o && !k && tt.length >= 2, qe = E(!1);
763
- q(() => {
764
- if (o || k) return;
765
- if (!$e) {
766
- e.confirmationChannels !== void 0 && L({ confirmationChannels: void 0 });
779
+ ), Ce = !a && !y && Fe.length >= 2, H = _(!1);
780
+ K(() => {
781
+ if (a || y) return;
782
+ if (!Ce) {
783
+ e.confirmationChannels !== void 0 && q({ confirmationChannels: void 0 });
767
784
  return;
768
785
  }
769
786
  if (e.confirmationChannels !== void 0) {
770
- qe.current = !0;
787
+ H.current = !0;
771
788
  return;
772
789
  }
773
- const d = Gn(
774
- tt,
790
+ const d = Yn(
791
+ Fe,
775
792
  e.mobilePhone,
776
793
  h
777
794
  );
778
- qe.current = !0, L({ confirmationChannels: d });
795
+ H.current = !0, q({ confirmationChannels: d });
779
796
  }, [
780
- $e,
781
- o,
782
- k,
783
- tt,
797
+ Ce,
798
+ a,
799
+ y,
800
+ Fe,
784
801
  e.mobilePhone,
785
802
  h
786
803
  ]);
787
- const Oe = R(
804
+ const j = L(
788
805
  () => e.confirmationChannels ?? [],
789
806
  [e.confirmationChannels]
790
- ), K = $e && Oe.length === 0, j = E(w), lt = E(x);
791
- q(() => {
792
- j.current = w, lt.current = x;
793
- }, [w, x]);
794
- const st = !!w, ut = !!x;
795
- q(() => {
807
+ ), mt = Ce && j.length === 0, rt = _(N), ft = _(S);
808
+ K(() => {
809
+ rt.current = N, ft.current = S;
810
+ }, [N, S]);
811
+ const gt = !!N, ht = !!S;
812
+ K(() => {
796
813
  const d = e.codiceFiscale;
797
- if (!B || !st || !d) {
798
- ae(Ft);
814
+ if (!he || !gt || !d) {
815
+ ge(Et);
799
816
  return;
800
817
  }
801
- if (!si.test(d)) {
802
- ae({
818
+ if (!oi.test(d)) {
819
+ ge({
803
820
  state: "invalid",
804
821
  hint: b("booking.details.codiceFiscale.invalidFormat")
805
822
  });
806
823
  return;
807
824
  }
808
- ae({ state: "pending" });
809
- let O = !0;
810
- return oe.current && clearTimeout(oe.current), oe.current = setTimeout(async () => {
825
+ ge({ state: "pending" });
826
+ let D = !0;
827
+ return Q.current && clearTimeout(Q.current), Q.current = setTimeout(async () => {
811
828
  try {
812
- const y = j.current;
813
- if (!y) return;
814
- const P = await y(d);
815
- O && ae({
816
- state: P.valid ? "valid" : "invalid",
817
- hint: P.hint,
829
+ const U = rt.current;
830
+ if (!U) return;
831
+ const ns = await U(d);
832
+ D && ge({
833
+ state: ns.valid ? "valid" : "invalid",
834
+ hint: ns.hint,
818
835
  value: d
819
836
  });
820
837
  } catch {
821
- O && ae({
838
+ D && ge({
822
839
  state: "invalid",
823
840
  hint: b("booking.details.codiceFiscale.unavailable"),
824
841
  value: d
825
842
  });
826
843
  }
827
- }, cs), () => {
828
- O = !1, oe.current && clearTimeout(oe.current);
844
+ }, ds), () => {
845
+ D = !1, Q.current && clearTimeout(Q.current);
829
846
  };
830
- }, [B, st, e.codiceFiscale, b]);
831
- const Ke = a && c === "public";
832
- q(() => {
847
+ }, [he, gt, e.codiceFiscale, b]);
848
+ const Ue = o && c === "public";
849
+ K(() => {
833
850
  const d = e.insuranceNumber;
834
- if (!Ke || !ut || !d) {
835
- Se(Ft);
851
+ if (!Ue || !ht || !d) {
852
+ De(Et);
836
853
  return;
837
854
  }
838
- Se({ state: "pending" }), te.current && clearTimeout(te.current), te.current = setTimeout(() => {
839
- const O = lt.current;
840
- O && O(d).then(
841
- (y) => Se(
842
- y.valid ? { state: "valid" } : { state: "invalid", hint: y.hint }
855
+ De({ state: "pending" }), je.current && clearTimeout(je.current), je.current = setTimeout(() => {
856
+ const D = ft.current;
857
+ D && D(d).then(
858
+ (U) => De(
859
+ U.valid ? { state: "valid" } : { state: "invalid", hint: U.hint }
843
860
  )
844
861
  ).catch(
845
- () => Se({
862
+ () => De({
846
863
  state: "invalid",
847
864
  hint: b("booking.details.insuranceNumber.unavailable")
848
865
  })
849
866
  );
850
- }, cs);
851
- }, [Ke, ut, e.insuranceNumber, b]);
852
- const nt = R(
853
- () => !!(e.email && ni.test(e.email)),
867
+ }, ds);
868
+ }, [Ue, ht, e.insuranceNumber, b]);
869
+ const ot = L(
870
+ () => !!(e.email && ai.test(e.email)),
854
871
  [e.email]
855
- ), it = R(
872
+ ), Pe = L(
856
873
  () => !!(e.mobilePhone && e.mobilePhone.length >= 6),
857
874
  [e.mobilePhone]
858
- ), It = R(() => {
859
- var d, O;
860
- return !(!((d = e.firstName) != null && d.trim()) || !((O = e.lastName) != null && O.trim()) || !nt || !it || B && (J.state !== "valid" || J.value !== e.codiceFiscale) || !Je || i && !e.dateOfBirth || Ke && he.state !== "valid");
875
+ ), Ct = L(() => {
876
+ var d, D;
877
+ return !(!((d = e.firstName) != null && d.trim()) || !((D = e.lastName) != null && D.trim()) || !ot || !Pe || he && (X.state !== "valid" || X.value !== e.codiceFiscale) || !pe || i && !e.dateOfBirth || Ue && xe.state !== "valid");
861
878
  }, [
862
879
  e.firstName,
863
880
  e.lastName,
864
- nt,
865
- it,
866
- B,
867
- Je,
868
- J.state,
869
- J.value,
881
+ ot,
882
+ Pe,
883
+ he,
884
+ pe,
885
+ X.state,
886
+ X.value,
870
887
  e.codiceFiscale,
871
888
  i,
872
889
  e.dateOfBirth,
873
- Ke,
874
- he.state
875
- ]), Me = M != null && M.trim() ? M : void 0, pt = Me !== void 0, Ye = !pt || !!e.criticalInformationAccepted, Nt = !Re || !(l != null && l.required) || se, jt = !!(e.privacyConsent && e.termsConsent && Ye && Nt), be = !$e || Oe.length > 0, wt = It && jt && be && (!o || Qe) && !k && !ge, mt = async (d) => {
876
- if (d.preventDefault(), Ae({
890
+ Ue,
891
+ xe.state
892
+ ]), Ve = E != null && E.trim() ? E : void 0, vt = Ve !== void 0, Ut = !vt || !!e.criticalInformationAccepted, Ae = !nt || !(l != null && l.required) || Ne, Ht = !!(e.privacyConsent && e.termsConsent && Ut && Ae), bt = !Ce || j.length > 0, Me = Ct && Ht && bt && (!a || Nt) && !y && !ce, me = !Me && !ce && !y, He = `${F}-submit-hint`, te = {
893
+ firstName: ee.firstName && !((J = e.firstName) != null && J.trim()) ? b("booking.details.firstName.required") : void 0,
894
+ lastName: ee.lastName && !((ne = e.lastName) != null && ne.trim()) ? b("booking.details.lastName.required") : void 0,
895
+ email: ee.email && !ot ? b("booking.details.email.invalid") : void 0,
896
+ mobilePhone: ee.mobilePhone && !Pe ? b("booking.details.mobilePhone.invalid") : void 0,
897
+ codiceFiscale: ee.codiceFiscale && X.state === "invalid" ? X.hint ?? b("booking.details.codiceFiscale.invalid") : ee.codiceFiscale && !e.codiceFiscale ? b("booking.details.fieldRequired") : void 0,
898
+ dateOfBirth: ee.dateOfBirth && !e.dateOfBirth ? b("booking.details.dateOfBirth.required") : void 0,
899
+ insuranceNumber: ee.insuranceNumber && xe.state === "invalid" ? xe.hint ?? b("booking.details.insuranceNumber.invalid") : void 0,
900
+ [V.country]: Qe("country"),
901
+ [V.street]: Qe("street"),
902
+ [V.city]: Qe("city"),
903
+ [V.postcode]: Qe("postcode"),
904
+ [V.province]: Qe("province")
905
+ }, yt = ls.filter(
906
+ (d) => Be.has(d) && te[d] !== void 0
907
+ );
908
+ yt.length !== Be.size && Ie(new Set(yt));
909
+ const oe = (d) => !Be.has(d), At = async (d) => {
910
+ if (d.preventDefault(), !ce && !fe.current && !Me && Ie(
911
+ new Set(
912
+ ls.filter(
913
+ (U) => Be.has(U) || !te[U]
914
+ )
915
+ )
916
+ ), Le({
877
917
  firstName: !0,
878
918
  lastName: !0,
879
919
  email: !0,
@@ -882,14 +922,14 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
882
922
  dateOfBirth: !0,
883
923
  insuranceNumber: !0,
884
924
  ...Object.fromEntries(
885
- Object.values(vt).map((y) => [y, !0])
925
+ Object.values(V).map((U) => [U, !0])
886
926
  )
887
- }), ge || fe.current) return;
888
- if (!wt) {
889
- dt((y) => y + 1);
927
+ }), ce || fe.current) return;
928
+ if (!Me) {
929
+ ut((U) => U + 1);
890
930
  return;
891
931
  }
892
- const O = {
932
+ const D = {
893
933
  firstName: e.firstName.trim(),
894
934
  lastName: e.lastName.trim(),
895
935
  email: e.email.trim(),
@@ -898,11 +938,11 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
898
938
  termsConsent: !0,
899
939
  // Only present when the service carried text to accept — a
900
940
  // reason without it leaves the key out of the payload entirely.
901
- ...pt ? { criticalInformationAccepted: !0 } : {},
941
+ ...vt ? { criticalInformationAccepted: !0 } : {},
902
942
  // Sent whenever the practice's box is shown, ticked or not, so the
903
943
  // server can record the answer; left out when there is no box.
904
- ...Re ? { practiceConsentAccepted: se } : {},
905
- ...o ? { paymentAccepted: !0 } : {},
944
+ ...nt ? { practiceConsentAccepted: Ne } : {},
945
+ ...a ? { paymentAccepted: !0 } : {},
906
946
  codiceFiscale: e.codiceFiscale,
907
947
  dateOfBirth: e.dateOfBirth,
908
948
  insuranceNumber: e.insuranceNumber,
@@ -911,45 +951,46 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
911
951
  // Only include when the picker was visible; otherwise the single
912
952
  // implicit channel is inferred backend-side from the practice
913
953
  // config.
914
- confirmationChannels: $e ? Oe : void 0,
915
- ...ve && e.billing ? {
916
- billing: di(
954
+ confirmationChannels: Ce ? j : void 0,
955
+ ...we && e.billing ? {
956
+ billing: mi(
917
957
  e.billing,
918
958
  `${e.firstName.trim()} ${e.lastName.trim()}`
919
959
  )
920
960
  } : {}
921
961
  };
922
- fe.current = !0, Le(!0), Be(!1);
962
+ fe.current = !0, Ke(!0), ze(!1);
923
963
  try {
924
- await n(O);
964
+ await n(D);
925
965
  } catch {
926
- Be(!0);
966
+ ze(!0);
927
967
  } finally {
928
- fe.current = !1, Le(!1);
968
+ fe.current = !1, Ke(!1);
929
969
  }
930
- }, ze = /* @__PURE__ */ s(
931
- Ue,
970
+ }, kt = /* @__PURE__ */ s(
971
+ Ge,
932
972
  {
933
973
  label: b("booking.details.codiceFiscale.label"),
934
974
  required: !0,
935
- description: J.state === "pending" ? b("booking.details.codiceFiscale.checking") : b("booking.details.codiceFiscale.helper"),
936
- error: W.codiceFiscale && J.state === "invalid" ? J.hint ?? b("booking.details.codiceFiscale.invalid") : W.codiceFiscale && !e.codiceFiscale ? b("booking.details.fieldRequired") : void 0,
975
+ description: X.state === "pending" ? b("booking.details.codiceFiscale.checking") : b("booking.details.codiceFiscale.helper"),
976
+ error: te.codiceFiscale,
977
+ announceError: oe("codiceFiscale"),
937
978
  children: /* @__PURE__ */ s(
938
- Dt,
979
+ Tt,
939
980
  {
940
981
  value: e.codiceFiscale ?? "",
941
982
  maxLength: 16,
942
- onChange: (d) => L({
983
+ onChange: (d) => q({
943
984
  codiceFiscale: d.target.value.slice(0, 16).toUpperCase()
944
985
  }),
945
- onBlur: () => ie("codiceFiscale")
986
+ onBlur: () => de("codiceFiscale")
946
987
  }
947
988
  )
948
989
  }
949
- ), re = (d, O) => {
950
- const y = Mt(O);
951
- return y ? /* @__PURE__ */ s(
952
- $s,
990
+ ), St = (d, D) => {
991
+ const U = Dt(D);
992
+ return U ? /* @__PURE__ */ s(
993
+ zs,
953
994
  {
954
995
  ns: "ui",
955
996
  i18nKey: d,
@@ -964,10 +1005,10 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
964
1005
  /* @__PURE__ */ s(
965
1006
  "a",
966
1007
  {
967
- href: y,
1008
+ href: U,
968
1009
  target: "_blank",
969
1010
  rel: "noopener noreferrer",
970
- className: Gt
1011
+ className: Jt
971
1012
  }
972
1013
  )
973
1014
  )
@@ -978,49 +1019,51 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
978
1019
  return /* @__PURE__ */ v(
979
1020
  "form",
980
1021
  {
981
- ref: _,
1022
+ ref: M,
982
1023
  id: F,
983
1024
  noValidate: !0,
984
- onSubmit: mt,
1025
+ onSubmit: At,
985
1026
  onFocus: (d) => {
986
- const O = we.current;
987
- !O || !d.currentTarget.contains(d.target) || !O.contains(d.target) && O.compareDocumentPosition(d.target) & Node.DOCUMENT_POSITION_FOLLOWING && xt();
1027
+ const D = pt.current;
1028
+ !D || !d.currentTarget.contains(d.target) || !D.contains(d.target) && D.compareDocumentPosition(d.target) & Node.DOCUMENT_POSITION_FOLLOWING && jt();
988
1029
  },
989
- "aria-busy": ge || void 0,
1030
+ "aria-busy": ce || void 0,
990
1031
  className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]",
991
1032
  children: [
992
- A,
1033
+ C,
993
1034
  /* @__PURE__ */ v("div", { className: "ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-sm)] ds:sm:grid-cols-2", children: [
994
1035
  /* @__PURE__ */ s(
995
- Ue,
1036
+ Ge,
996
1037
  {
997
1038
  label: b("booking.details.firstName.label"),
998
1039
  required: !0,
999
- error: W.firstName && !((At = e.firstName) != null && At.trim()) ? b("booking.details.firstName.required") : void 0,
1040
+ error: te.firstName,
1041
+ announceError: oe("firstName"),
1000
1042
  children: /* @__PURE__ */ s(
1001
- Dt,
1043
+ Tt,
1002
1044
  {
1003
1045
  autoComplete: "given-name",
1004
1046
  value: e.firstName ?? "",
1005
- onChange: (d) => L({ firstName: d.target.value }),
1006
- onBlur: () => ie("firstName")
1047
+ onChange: (d) => q({ firstName: d.target.value }),
1048
+ onBlur: () => de("firstName")
1007
1049
  }
1008
1050
  )
1009
1051
  }
1010
1052
  ),
1011
1053
  /* @__PURE__ */ s(
1012
- Ue,
1054
+ Ge,
1013
1055
  {
1014
1056
  label: b("booking.details.lastName.label"),
1015
1057
  required: !0,
1016
- error: W.lastName && !((gt = e.lastName) != null && gt.trim()) ? b("booking.details.lastName.required") : void 0,
1058
+ error: te.lastName,
1059
+ announceError: oe("lastName"),
1017
1060
  children: /* @__PURE__ */ s(
1018
- Dt,
1061
+ Tt,
1019
1062
  {
1020
1063
  autoComplete: "family-name",
1021
1064
  value: e.lastName ?? "",
1022
- onChange: (d) => L({ lastName: d.target.value }),
1023
- onBlur: () => ie("lastName")
1065
+ onChange: (d) => q({ lastName: d.target.value }),
1066
+ onBlur: () => de("lastName")
1024
1067
  }
1025
1068
  )
1026
1069
  }
@@ -1028,92 +1071,96 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
1028
1071
  ] }),
1029
1072
  /* @__PURE__ */ v("div", { className: "ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-sm)] ds:sm:grid-cols-2", children: [
1030
1073
  /* @__PURE__ */ s(
1031
- Ue,
1074
+ Ge,
1032
1075
  {
1033
1076
  label: b("booking.details.email.label"),
1034
1077
  required: !0,
1035
- error: W.email && !nt ? b("booking.details.email.invalid") : void 0,
1078
+ error: te.email,
1079
+ announceError: oe("email"),
1036
1080
  children: /* @__PURE__ */ s(
1037
- js,
1081
+ Gs,
1038
1082
  {
1039
1083
  value: e.email ?? "",
1040
- onChange: (d) => L({ email: d.target.value }),
1041
- onBlur: () => ie("email")
1084
+ onChange: (d) => q({ email: d.target.value }),
1085
+ onBlur: () => de("email")
1042
1086
  }
1043
1087
  )
1044
1088
  }
1045
1089
  ),
1046
1090
  /* @__PURE__ */ s(
1047
- Ue,
1091
+ Ge,
1048
1092
  {
1049
1093
  label: b("booking.details.mobilePhone.label"),
1050
1094
  required: !0,
1051
- error: W.mobilePhone && !it ? b("booking.details.mobilePhone.invalid") : void 0,
1095
+ error: te.mobilePhone,
1096
+ announceError: oe("mobilePhone"),
1052
1097
  children: /* @__PURE__ */ s(
1053
- Us,
1098
+ Js,
1054
1099
  {
1055
1100
  value: e.mobilePhone ?? "",
1056
- defaultCountry: D == null ? void 0 : D.toUpperCase(),
1101
+ defaultCountry: O == null ? void 0 : O.toUpperCase(),
1057
1102
  onChange: (d) => {
1058
- L({ mobilePhone: d }), ie("mobilePhone");
1103
+ q({ mobilePhone: d }), de("mobilePhone");
1059
1104
  }
1060
1105
  }
1061
1106
  )
1062
1107
  }
1063
1108
  )
1064
1109
  ] }),
1065
- B && !ve || i ? /* @__PURE__ */ v("div", { className: "ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-sm)] ds:sm:grid-cols-2", children: [
1066
- B && !ve ? ze : null,
1110
+ he && !we || i ? /* @__PURE__ */ v("div", { className: "ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-sm)] ds:sm:grid-cols-2", children: [
1111
+ he && !we ? kt : null,
1067
1112
  i ? /* @__PURE__ */ s(
1068
- Ue,
1113
+ Ge,
1069
1114
  {
1070
1115
  label: b("booking.details.dateOfBirth.label"),
1071
1116
  required: !0,
1072
- error: W.dateOfBirth && !e.dateOfBirth ? b("booking.details.dateOfBirth.required") : void 0,
1117
+ error: te.dateOfBirth,
1118
+ announceError: oe("dateOfBirth"),
1073
1119
  children: /* @__PURE__ */ s(
1074
- zs,
1120
+ Hs,
1075
1121
  {
1076
1122
  value: e.dateOfBirth ? new Date(e.dateOfBirth) : void 0,
1077
1123
  onChange: (d) => {
1078
- L({
1124
+ q({
1079
1125
  dateOfBirth: d ? d.toISOString().slice(0, 10) : void 0
1080
- }), ie("dateOfBirth");
1126
+ }), de("dateOfBirth");
1081
1127
  }
1082
1128
  }
1083
1129
  )
1084
1130
  }
1085
1131
  ) : null
1086
1132
  ] }) : null,
1087
- Ke ? /* @__PURE__ */ s(
1088
- Ue,
1133
+ Ue ? /* @__PURE__ */ s(
1134
+ Ge,
1089
1135
  {
1090
1136
  label: b("booking.details.insuranceNumber.label"),
1091
1137
  required: !0,
1092
- description: he.state === "pending" ? b("booking.details.insuranceNumber.checking") : void 0,
1093
- error: W.insuranceNumber && he.state === "invalid" ? he.hint ?? b("booking.details.insuranceNumber.invalid") : void 0,
1138
+ description: xe.state === "pending" ? b("booking.details.insuranceNumber.checking") : void 0,
1139
+ error: te.insuranceNumber,
1140
+ announceError: oe("insuranceNumber"),
1094
1141
  children: /* @__PURE__ */ s(
1095
- Dt,
1142
+ Tt,
1096
1143
  {
1097
1144
  value: e.insuranceNumber ?? "",
1098
- onChange: (d) => L({ insuranceNumber: d.target.value }),
1099
- onBlur: () => ie("insuranceNumber")
1145
+ onChange: (d) => q({ insuranceNumber: d.target.value }),
1146
+ onBlur: () => de("insuranceNumber")
1100
1147
  }
1101
1148
  )
1102
1149
  }
1103
1150
  ) : null,
1104
- ve ? /* @__PURE__ */ v(
1151
+ we ? /* @__PURE__ */ v(
1105
1152
  "div",
1106
1153
  {
1107
- ref: we,
1154
+ ref: pt,
1108
1155
  "data-component": "booking-billing",
1109
1156
  role: "group",
1110
1157
  "aria-labelledby": `${F}-billing-heading`,
1111
1158
  "aria-describedby": `${F}-billing-intro`,
1112
1159
  className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)] ds:rounded-[var(--radius-md)] ds:border ds:border-[var(--border)] ds:p-[var(--spacing-sm)]",
1113
1160
  onBlur: (d) => {
1114
- var y;
1115
- const O = (y = d.target.closest("[data-address-field]")) == null ? void 0 : y.getAttribute("data-address-field");
1116
- (O === "street" || O === "city" || O === "postcode") && ie(vt[O]);
1161
+ var U;
1162
+ const D = (U = d.target.closest("[data-address-field]")) == null ? void 0 : U.getAttribute("data-address-field");
1163
+ (D === "street" || D === "city" || D === "postcode") && de(V[D]);
1117
1164
  },
1118
1165
  children: [
1119
1166
  /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-2xs)]", children: [
@@ -1134,36 +1181,43 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
1134
1181
  }
1135
1182
  )
1136
1183
  ] }),
1137
- B ? ze : null,
1184
+ he ? kt : null,
1138
1185
  /* @__PURE__ */ s(
1139
- Hs,
1186
+ Ys,
1140
1187
  {
1141
- value: We,
1188
+ value: ve,
1142
1189
  onChange: (d) => {
1143
- var O;
1190
+ var D;
1144
1191
  return (
1145
1192
  // The name is set from the patient's own on submit.
1146
- L({
1147
- billing: ri(
1193
+ q({
1194
+ billing: di(
1148
1195
  d,
1149
1196
  "",
1150
1197
  // A second line belongs to its street: it goes when the
1151
1198
  // patient writes another, and returns with the first.
1152
- d.street.trim() === ((O = Pe.current) == null ? void 0 : O.street) ? Pe.current.line2 : null
1199
+ d.street.trim() === ((D = re.current) == null ? void 0 : D.street) ? re.current.line2 : null
1153
1200
  )
1154
1201
  })
1155
1202
  );
1156
1203
  },
1157
- popularCountries: oi,
1204
+ popularCountries: ui,
1158
1205
  layout: "grid",
1159
- fields: X ? void 0 : ["street", "city", "postcode"],
1160
- required: X ? ["country", "street", "city", "postcode", "province"] : ["country", "street", "city", "postcode"],
1206
+ fields: Ze ? void 0 : ["street", "city", "postcode"],
1207
+ required: Ze ? ["country", "street", "city", "postcode", "province"] : ["country", "street", "city", "postcode"],
1161
1208
  errors: {
1162
- country: De("country"),
1163
- street: De("street"),
1164
- city: De("city"),
1165
- postcode: De("postcode"),
1166
- province: X ? De("province") : void 0
1209
+ country: te[V.country],
1210
+ street: te[V.street],
1211
+ city: te[V.city],
1212
+ postcode: te[V.postcode],
1213
+ province: te[V.province]
1214
+ },
1215
+ announceErrors: {
1216
+ country: oe(V.country),
1217
+ street: oe(V.street),
1218
+ city: oe(V.city),
1219
+ postcode: oe(V.postcode),
1220
+ province: oe(V.province)
1167
1221
  }
1168
1222
  }
1169
1223
  )
@@ -1171,32 +1225,32 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
1171
1225
  }
1172
1226
  ) : null,
1173
1227
  f ? /* @__PURE__ */ s(
1174
- Ue,
1228
+ Ge,
1175
1229
  {
1176
1230
  label: b("booking.details.note.label"),
1177
1231
  description: b("booking.details.note.helper", {
1178
- max: os
1232
+ max: cs
1179
1233
  }),
1180
1234
  children: /* @__PURE__ */ s(
1181
- Gs,
1235
+ Ws,
1182
1236
  {
1183
1237
  value: e.note ?? "",
1184
- maxLength: os,
1238
+ maxLength: cs,
1185
1239
  rows: 3,
1186
- onChange: (d) => L({ note: d.target.value })
1240
+ onChange: (d) => q({ note: d.target.value })
1187
1241
  }
1188
1242
  )
1189
1243
  }
1190
1244
  ) : null,
1191
- p ? /* @__PURE__ */ s(
1192
- rt,
1245
+ m ? /* @__PURE__ */ s(
1246
+ at,
1193
1247
  {
1194
1248
  checked: !!e.returningPatient,
1195
- onCheckedChange: (d) => L({ returningPatient: d === !0 }),
1249
+ onCheckedChange: (d) => q({ returningPatient: d === !0 }),
1196
1250
  label: b("booking.details.returningPatient.label")
1197
1251
  }
1198
1252
  ) : null,
1199
- Me !== void 0 ? /* @__PURE__ */ v(
1253
+ Ve !== void 0 ? /* @__PURE__ */ v(
1200
1254
  "div",
1201
1255
  {
1202
1256
  "data-component": "booking-critical-information",
@@ -1212,26 +1266,26 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
1212
1266
  children: b("booking.details.criticalInformation.heading")
1213
1267
  }
1214
1268
  ),
1215
- /* @__PURE__ */ s("p", { className: "type-body-sm ds:m-0 ds:whitespace-pre-wrap ds:break-words ds:text-[var(--foreground)]", children: ti(Me).map(
1216
- (d, O) => d.kind === "link" ? /* @__PURE__ */ s(
1269
+ /* @__PURE__ */ s("p", { className: "type-body-sm ds:m-0 ds:whitespace-pre-wrap ds:break-words ds:text-[var(--foreground)]", children: ri(Ve).map(
1270
+ (d, D) => d.kind === "link" ? /* @__PURE__ */ s(
1217
1271
  "a",
1218
1272
  {
1219
1273
  href: d.href,
1220
1274
  target: "_blank",
1221
1275
  rel: "noopener noreferrer",
1222
- className: Gt,
1276
+ className: Jt,
1223
1277
  children: d.text
1224
1278
  },
1225
- O
1226
- ) : /* @__PURE__ */ s(Ps, { children: d.text }, O)
1279
+ D
1280
+ ) : /* @__PURE__ */ s(qs, { children: d.text }, D)
1227
1281
  ) }),
1228
1282
  /* @__PURE__ */ s(
1229
- rt,
1283
+ at,
1230
1284
  {
1231
1285
  checked: !!e.criticalInformationAccepted,
1232
- onCheckedChange: (d) => L({ criticalInformationAccepted: d === !0 }),
1286
+ onCheckedChange: (d) => q({ criticalInformationAccepted: d === !0 }),
1233
1287
  "aria-required": !0,
1234
- label: /* @__PURE__ */ v(ne, { children: [
1288
+ label: /* @__PURE__ */ v(ae, { children: [
1235
1289
  b("booking.details.criticalInformation.accept"),
1236
1290
  /* @__PURE__ */ s(
1237
1291
  "span",
@@ -1247,19 +1301,19 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
1247
1301
  ]
1248
1302
  }
1249
1303
  ) : null,
1250
- o ? /* @__PURE__ */ v(
1304
+ a ? /* @__PURE__ */ v(
1251
1305
  "div",
1252
1306
  {
1253
1307
  "data-component": "booking-payment-notice",
1254
1308
  role: "group",
1255
1309
  "aria-labelledby": `${F}-payment-heading`,
1256
- "data-notice-style": N,
1257
- className: ai({
1258
- noticeStyle: N
1310
+ "data-notice-style": k,
1311
+ className: li({
1312
+ noticeStyle: k
1259
1313
  }),
1260
1314
  children: [
1261
- N === "highlighted" ? /* @__PURE__ */ v("div", { className: "ds:flex ds:items-center ds:gap-[var(--spacing-sm)]", children: [
1262
- /* @__PURE__ */ s("span", { className: "ds:flex ds:size-9 ds:shrink-0 ds:items-center ds:justify-center ds:rounded-full ds:bg-[var(--primary)] ds:text-[var(--primary-foreground)]", children: /* @__PURE__ */ s(Js, { "aria-hidden": "true", className: "ds:size-5" }) }),
1315
+ k === "highlighted" ? /* @__PURE__ */ v("div", { className: "ds:flex ds:items-center ds:gap-[var(--spacing-sm)]", children: [
1316
+ /* @__PURE__ */ s("span", { className: "ds:flex ds:size-9 ds:shrink-0 ds:items-center ds:justify-center ds:rounded-full ds:bg-[var(--primary)] ds:text-[var(--primary-foreground)]", children: /* @__PURE__ */ s(Zs, { "aria-hidden": "true", className: "ds:size-5" }) }),
1263
1317
  /* @__PURE__ */ s(
1264
1318
  "h3",
1265
1319
  {
@@ -1273,7 +1327,7 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
1273
1327
  {
1274
1328
  "aria-hidden": "true",
1275
1329
  className: "type-title-card ds:shrink-0 ds:text-[var(--foreground)]",
1276
- children: Te
1330
+ children: Ee
1277
1331
  }
1278
1332
  )
1279
1333
  ] }) : /* @__PURE__ */ s(
@@ -1284,11 +1338,11 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
1284
1338
  children: b("booking.payment.noticeTitle")
1285
1339
  }
1286
1340
  ),
1287
- /* @__PURE__ */ s("p", { className: "type-body-sm ds:m-0", children: b("booking.payment.noticeBody", { amount: Te }) }),
1288
- Ne ? /* @__PURE__ */ s(
1341
+ /* @__PURE__ */ s("p", { className: "type-body-sm ds:m-0", children: b("booking.payment.noticeBody", { amount: Ee }) }),
1342
+ P ? /* @__PURE__ */ s(
1289
1343
  "a",
1290
1344
  {
1291
- href: Ne,
1345
+ href: P,
1292
1346
  target: "_blank",
1293
1347
  rel: "noopener noreferrer",
1294
1348
  className: "type-body-sm ds:inline-flex ds:items-center ds:self-start ds:min-h-[var(--min-target-size)] ds:rounded-[var(--radius-sm)] ds:underline ds:text-[var(--foreground)] ds:focus-visible:outline-solid ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-[var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
@@ -1296,17 +1350,17 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
1296
1350
  }
1297
1351
  ) : null,
1298
1352
  /* @__PURE__ */ s(
1299
- rt,
1353
+ at,
1300
1354
  {
1301
- checked: Qe,
1355
+ checked: Nt,
1302
1356
  onCheckedChange: (d) => {
1303
- Ee(
1304
- d === !0 ? xe : void 0
1305
- ), L({ paymentAccepted: d === !0 });
1357
+ tt(
1358
+ d === !0 ? le : void 0
1359
+ ), q({ paymentAccepted: d === !0 });
1306
1360
  },
1307
1361
  "aria-required": !0,
1308
- label: /* @__PURE__ */ v(ne, { children: [
1309
- b("booking.payment.accept", { amount: Te }),
1362
+ label: /* @__PURE__ */ v(ae, { children: [
1363
+ b("booking.payment.accept", { amount: Ee }),
1310
1364
  /* @__PURE__ */ s(
1311
1365
  "span",
1312
1366
  {
@@ -1323,15 +1377,15 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
1323
1377
  ) : null,
1324
1378
  /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
1325
1379
  /* @__PURE__ */ s(
1326
- rt,
1380
+ at,
1327
1381
  {
1328
1382
  checked: !!e.privacyConsent,
1329
- onCheckedChange: (d) => L({ privacyConsent: d === !0 }),
1383
+ onCheckedChange: (d) => q({ privacyConsent: d === !0 }),
1330
1384
  "aria-required": !0,
1331
- label: /* @__PURE__ */ v(ne, { children: [
1332
- re(
1385
+ label: /* @__PURE__ */ v(ae, { children: [
1386
+ St(
1333
1387
  "booking.details.consent.privacy.label",
1334
- m
1388
+ p
1335
1389
  ),
1336
1390
  /* @__PURE__ */ s(
1337
1391
  "span",
@@ -1345,13 +1399,13 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
1345
1399
  }
1346
1400
  ),
1347
1401
  /* @__PURE__ */ s(
1348
- rt,
1402
+ at,
1349
1403
  {
1350
1404
  checked: !!e.termsConsent,
1351
- onCheckedChange: (d) => L({ termsConsent: d === !0 }),
1405
+ onCheckedChange: (d) => q({ termsConsent: d === !0 }),
1352
1406
  "aria-required": !0,
1353
- label: /* @__PURE__ */ v(ne, { children: [
1354
- re(
1407
+ label: /* @__PURE__ */ v(ae, { children: [
1408
+ St(
1355
1409
  "booking.details.consent.terms.label",
1356
1410
  g
1357
1411
  ),
@@ -1366,24 +1420,24 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
1366
1420
  ] })
1367
1421
  }
1368
1422
  ),
1369
- l && Re ? /* @__PURE__ */ s(
1370
- rt,
1423
+ l && nt ? /* @__PURE__ */ s(
1424
+ at,
1371
1425
  {
1372
- checked: se,
1426
+ checked: Ne,
1373
1427
  onCheckedChange: (d) => {
1374
- Z(
1375
- d === !0 ? Ie : void 0
1376
- ), L({ practiceConsentAccepted: d === !0 });
1428
+ ue(
1429
+ d === !0 ? z : void 0
1430
+ ), q({ practiceConsentAccepted: d === !0 });
1377
1431
  },
1378
1432
  "aria-required": l.required || void 0,
1379
- label: /* @__PURE__ */ v(ne, { children: [
1380
- Mt(l.url) ? /* @__PURE__ */ s(
1433
+ label: /* @__PURE__ */ v(ae, { children: [
1434
+ Dt(l.url) ? /* @__PURE__ */ s(
1381
1435
  "a",
1382
1436
  {
1383
- href: Mt(l.url),
1437
+ href: Dt(l.url),
1384
1438
  target: "_blank",
1385
1439
  rel: "noopener noreferrer",
1386
- className: Gt,
1440
+ className: Jt,
1387
1441
  children: l.label
1388
1442
  }
1389
1443
  ) : l.label,
@@ -1399,53 +1453,65 @@ const os = 500, si = /^[A-Z0-9]{16}$/, ni = /^[^\s@]+@[^\s@]+\.[^\s@]+$/, cs = 3
1399
1453
  }
1400
1454
  ) : null
1401
1455
  ] }),
1402
- $e ? /* @__PURE__ */ s(
1456
+ Ce ? /* @__PURE__ */ s(
1403
1457
  "div",
1404
1458
  {
1405
1459
  "data-component": "booking-confirmation-channels",
1406
- "data-unanswered": K || void 0,
1460
+ "data-unanswered": mt || void 0,
1407
1461
  className: "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]",
1408
1462
  children: /* @__PURE__ */ s(
1409
- Ks,
1463
+ Us,
1410
1464
  {
1411
1465
  label: b("booking.confirmation.heading"),
1412
1466
  helperText: b("booking.confirmation.helper"),
1413
- value: Oe,
1414
- onChange: (d) => L({
1467
+ value: j,
1468
+ onChange: (d) => q({
1415
1469
  confirmationChannels: d
1416
1470
  }),
1417
1471
  orientation: "vertical",
1418
- options: tt.map((d) => ({
1472
+ options: Fe.map((d) => ({
1419
1473
  value: d,
1420
1474
  label: b(`booking.confirmation.channel.${d}`)
1421
1475
  })),
1422
- error: K ? b("booking.confirmation.atLeastOne") : void 0
1476
+ error: mt ? b("booking.confirmation.atLeastOne") : void 0
1423
1477
  }
1424
1478
  )
1425
1479
  }
1426
1480
  ) : null,
1427
- C || H || k ? /* @__PURE__ */ s(ee, { variant: "error", children: /* @__PURE__ */ s(ee.Description, { children: C ?? b(
1428
- k ? "booking.payment.unavailable" : "booking.payment.submitFailed"
1481
+ w || Z || y ? /* @__PURE__ */ s(ie, { variant: "error", children: /* @__PURE__ */ s(ie.Description, { children: w ?? b(
1482
+ y ? "booking.payment.unavailable" : "booking.payment.submitFailed"
1429
1483
  ) }) }) : null,
1430
- /* @__PURE__ */ s(
1431
- Xe,
1432
- {
1433
- intent: "primary",
1434
- size: "md",
1435
- type: "submit",
1436
- disabled: ge || k,
1437
- "aria-disabled": !wt || void 0,
1438
- startIcon: ge ? /* @__PURE__ */ s(ps, { variant: "pulse", size: "sm" }) : void 0,
1439
- children: o ? b("booking.payment.submit", { amount: Te }) : b("booking.details.submit")
1440
- }
1441
- )
1484
+ /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
1485
+ me ? /* @__PURE__ */ s(
1486
+ "p",
1487
+ {
1488
+ id: He,
1489
+ "data-slot": "submit-hint",
1490
+ className: "type-body-sm ds:m-0 ds:text-[var(--muted-foreground)]",
1491
+ children: b("booking.details.submitHint")
1492
+ }
1493
+ ) : null,
1494
+ /* @__PURE__ */ s(
1495
+ et,
1496
+ {
1497
+ intent: "primary",
1498
+ size: "md",
1499
+ type: "submit",
1500
+ disabled: ce || y,
1501
+ "aria-disabled": !Me || void 0,
1502
+ "aria-describedby": me ? He : void 0,
1503
+ startIcon: ce ? /* @__PURE__ */ s(fs, { variant: "pulse", size: "sm" }) : void 0,
1504
+ children: a ? b("booking.payment.submit", { amount: Ee }) : b("booking.details.submit")
1505
+ }
1506
+ )
1507
+ ] })
1442
1508
  ]
1443
1509
  }
1444
1510
  );
1445
1511
  }
1446
1512
  );
1447
- Xt.displayName = "BookingDetailsForm";
1448
- function Qt(e) {
1513
+ es.displayName = "BookingDetailsForm";
1514
+ function Os(e) {
1449
1515
  const t = e.payment;
1450
1516
  if (!t) return;
1451
1517
  const n = (t.currencyCode ?? "EUR").toUpperCase();
@@ -1457,19 +1523,29 @@ function Qt(e) {
1457
1523
  currencyCode: n
1458
1524
  };
1459
1525
  }
1460
- function li(e, t, n) {
1526
+ function gi(e) {
1527
+ var i;
1528
+ const t = (i = e.priceLabel) != null && i.trim() ? e.priceLabel : void 0, n = t ? { label: t } : void 0;
1529
+ if (!e.payment) return { price: n };
1530
+ const r = Os(e);
1531
+ return r ? {
1532
+ price: n ?? (r.kind === "full" ? { amount: r } : void 0),
1533
+ payment: r
1534
+ } : { price: n, payment: "unavailable" };
1535
+ }
1536
+ function hi(e, t, n) {
1461
1537
  const r = e.filter(
1462
- (a) => t.includes(a.id)
1538
+ (o) => t.includes(o.id)
1463
1539
  ), i = (n == null ? void 0 : n.serviceId) ?? (t.length === 1 ? t[0] : void 0);
1464
1540
  if (i) {
1465
- const a = r.find((f) => f.id === i);
1466
- if (!a) return { blocked: !0 };
1467
- const c = Qt(a);
1468
- return { payment: c, blocked: !!(a.payment && !c) };
1541
+ const o = r.find((f) => f.id === i);
1542
+ if (!o) return { blocked: !0 };
1543
+ const c = Os(o);
1544
+ return { payment: c, blocked: !!(o.payment && !c) };
1469
1545
  }
1470
- return { blocked: r.some((a) => !!a.payment) };
1546
+ return { blocked: r.some((o) => !!o.payment) };
1471
1547
  }
1472
- function _t(e) {
1548
+ function Ft(e) {
1473
1549
  return e ? JSON.stringify([
1474
1550
  e.serviceId,
1475
1551
  e.kind,
@@ -1477,135 +1553,135 @@ function _t(e) {
1477
1553
  e.currencyCode
1478
1554
  ]) : "";
1479
1555
  }
1480
- function ui({
1556
+ function vi({
1481
1557
  services: e,
1482
1558
  value: t,
1483
1559
  availableSlots: n,
1484
1560
  onSubmit: r,
1485
1561
  onChange: i,
1486
- paymentState: a,
1562
+ paymentState: o,
1487
1563
  submitting: c,
1488
1564
  paymentTermsUrl: f,
1489
- renderPayment: p
1565
+ renderPayment: m
1490
1566
  }) {
1491
- var fe, He, Le;
1492
- const m = JSON.stringify([
1567
+ var fe, We, Ke;
1568
+ const p = JSON.stringify([
1493
1569
  t.insuranceType,
1494
1570
  t.specialtyId,
1495
1571
  t.specialtyIds,
1496
- _e(t),
1572
+ qe(t),
1497
1573
  t.operatorId,
1498
1574
  t.operatorIds,
1499
1575
  t.date,
1500
1576
  t.slotKey
1501
- ]), g = E(
1577
+ ]), g = _(
1502
1578
  void 0
1503
- ), o = (t.date ? (fe = n[t.date]) == null ? void 0 : fe.find((H) => H.key === t.slotKey) : void 0) ?? (((He = g.current) == null ? void 0 : He.selection) === m ? g.current.slot : void 0), u = li(
1579
+ ), a = (t.date ? (fe = n[t.date]) == null ? void 0 : fe.find((Z) => Z.key === t.slotKey) : void 0) ?? (((We = g.current) == null ? void 0 : We.selection) === p ? g.current.slot : void 0), u = hi(
1504
1580
  e,
1505
- _e(t),
1506
- o
1507
- ), k = u.blocked || !!(u.payment && !p), I = JSON.stringify([
1508
- m,
1509
- o == null ? void 0 : o.serviceId,
1510
- _t(u.payment),
1581
+ qe(t),
1582
+ a
1583
+ ), y = u.blocked || !!(u.payment && !m), x = JSON.stringify([
1584
+ p,
1585
+ a == null ? void 0 : a.serviceId,
1586
+ Ft(u.payment),
1511
1587
  f,
1512
- k
1513
- ]), N = u.payment ? JSON.stringify([_t(u.payment), f]) : "", M = E(void 0), w = !!((Le = t.details) != null && Le.paymentAccepted);
1514
- q(() => {
1515
- if (!w) M.current = void 0;
1516
- else if (N) M.current === void 0 ? M.current = N : M.current !== N && (M.current = void 0, i({
1588
+ y
1589
+ ]), k = u.payment ? JSON.stringify([Ft(u.payment), f]) : "", E = _(void 0), N = !!((Ke = t.details) != null && Ke.paymentAccepted);
1590
+ K(() => {
1591
+ if (!N) E.current = void 0;
1592
+ else if (k) E.current === void 0 ? E.current = k : E.current !== k && (E.current = void 0, i({
1517
1593
  ...t,
1518
1594
  details: { ...t.details, paymentAccepted: !1 }
1519
1595
  }));
1520
1596
  else return;
1521
- }, [w, N, i, t]);
1522
- const x = E(I);
1523
- x.current = I;
1524
- const [S, A] = Q({ status: "idle" }), D = E(0), T = E(!1), h = E(!0), C = E(!1), $ = E(void 0), b = E(I);
1525
- q(() => (h.current = !0, () => {
1526
- h.current = !1, D.current += 1;
1597
+ }, [N, k, i, t]);
1598
+ const S = _(x);
1599
+ S.current = x;
1600
+ const [I, C] = se({ status: "idle" }), O = _(0), T = _(!1), h = _(!0), w = _(!1), $ = _(void 0), b = _(x);
1601
+ K(() => (h.current = !0, () => {
1602
+ h.current = !1, O.current += 1;
1527
1603
  }), []);
1528
- const pe = S.status === "payment" || S.status === "success";
1529
- q(() => {
1530
- b.current === I || C.current || pe || (b.current = I, D.current += 1, T.current = !1, A({ status: "idle" }));
1531
- }, [I, pe]);
1532
- const F = pe || b.current === I ? S.session : void 0, z = R(
1533
- () => F && (a == null ? void 0 : a.sessionId) === F.id ? a : F ? { sessionId: F.id, status: "ready" } : void 0,
1534
- [F, a]
1604
+ const ke = I.status === "payment" || I.status === "success";
1605
+ K(() => {
1606
+ b.current === x || w.current || ke || (b.current = x, O.current += 1, T.current = !1, C({ status: "idle" }));
1607
+ }, [x, ke]);
1608
+ const F = ke || b.current === x ? I.session : void 0, G = L(
1609
+ () => F && (o == null ? void 0 : o.sessionId) === F.id ? o : F ? { sessionId: F.id, status: "ready" } : void 0,
1610
+ [F, o]
1535
1611
  );
1536
- F && z && "phase" in z && z.phase === "completion" && ($.current = F.id);
1537
- const _ = R(
1538
- () => F && $.current === F.id && z && z.status !== "paid" && (!("phase" in z) || z.phase !== "completion") ? {
1612
+ F && G && "phase" in G && G.phase === "completion" && ($.current = F.id);
1613
+ const M = L(
1614
+ () => F && $.current === F.id && G && G.status !== "paid" && (!("phase" in G) || G.phase !== "completion") ? {
1539
1615
  sessionId: F.id,
1540
1616
  status: "processing",
1541
1617
  phase: "completion"
1542
- } : z,
1543
- [F, z]
1618
+ } : G,
1619
+ [F, G]
1544
1620
  );
1545
- q(() => {
1546
- !F || !_ || C.current || (_.status === "paid" ? (C.current = !0, A((H) => ({ ...H, status: "success" }))) : _.status === "cancelled" && (D.current += 1, T.current = !1, g.current = void 0, i({
1621
+ K(() => {
1622
+ !F || !M || w.current || (M.status === "paid" ? (w.current = !0, C((Z) => ({ ...Z, status: "success" }))) : M.status === "cancelled" && (O.current += 1, T.current = !1, g.current = void 0, i({
1547
1623
  ...t,
1548
1624
  details: { ...t.details, paymentAccepted: !1 }
1549
- }), A({ status: "idle", cancelled: !0 })));
1550
- }, [F, _, i, t]);
1551
- const me = () => {
1552
- D.current += 1, T.current = !1, C.current = !1, $.current = void 0, g.current = void 0, b.current = x.current, A({ status: "idle" });
1553
- }, dt = async (H) => {
1554
- var Se, W, Ae, ie, oe;
1555
- if (!(o != null && o.available) || k || c || T.current || S.status === "payment" || C.current || u.payment && !H.paymentAccepted) return;
1556
- T.current = !0, g.current = { selection: m, slot: { ...o } };
1557
- const Be = ++D.current, ge = I;
1558
- b.current = ge;
1559
- const J = {
1560
- slot: { ...o, meta: o.meta ? { ...o.meta } : void 0 },
1625
+ }), C({ status: "idle", cancelled: !0 })));
1626
+ }, [F, M, i, t]);
1627
+ const Se = () => {
1628
+ O.current += 1, T.current = !1, w.current = !1, $.current = void 0, g.current = void 0, b.current = S.current, C({ status: "idle" });
1629
+ }, ut = async (Z) => {
1630
+ var De, ee, Le, de, Be;
1631
+ if (!(a != null && a.available) || y || c || T.current || I.status === "payment" || w.current || u.payment && !Z.paymentAccepted) return;
1632
+ T.current = !0, g.current = { selection: p, slot: { ...a } };
1633
+ const ze = ++O.current, ce = x;
1634
+ b.current = ce;
1635
+ const X = {
1636
+ slot: { ...a, meta: a.meta ? { ...a.meta } : void 0 },
1561
1637
  value: {
1562
1638
  ...t,
1563
- serviceIds: (Se = t.serviceIds) == null ? void 0 : Se.slice(),
1564
- specialtyIds: (W = t.specialtyIds) == null ? void 0 : W.slice(),
1565
- operatorIds: (Ae = t.operatorIds) == null ? void 0 : Ae.slice(),
1566
- operatorId: Ns(t) ?? t.operatorId,
1567
- details: { ...H }
1639
+ serviceIds: (De = t.serviceIds) == null ? void 0 : De.slice(),
1640
+ specialtyIds: (ee = t.specialtyIds) == null ? void 0 : ee.slice(),
1641
+ operatorIds: (Le = t.operatorIds) == null ? void 0 : Le.slice(),
1642
+ operatorId: Cs(t) ?? t.operatorId,
1643
+ details: { ...Z }
1568
1644
  },
1569
1645
  details: {
1570
- ...H,
1571
- confirmationChannels: (ie = H.confirmationChannels) == null ? void 0 : ie.slice()
1646
+ ...Z,
1647
+ confirmationChannels: (de = Z.confirmationChannels) == null ? void 0 : de.slice()
1572
1648
  },
1573
1649
  ...u.payment ? { payment: { ...u.payment } } : {}
1574
- }, ae = () => h.current && D.current === Be && x.current === ge;
1575
- A({ status: "submitting" });
1576
- let he = !1;
1650
+ }, ge = () => h.current && O.current === ze && S.current === ce;
1651
+ C({ status: "submitting" });
1652
+ let xe = !1;
1577
1653
  try {
1578
- const te = await r(J);
1579
- if (!ae()) return;
1580
- if (J.payment) {
1581
- const L = te == null ? void 0 : te.paymentSession;
1582
- if (!((oe = L == null ? void 0 : L.id) != null && oe.trim()) || _t(L.payment) !== _t(J.payment)) {
1583
- A({ status: "error" });
1654
+ const Ie = await r(X);
1655
+ if (!ge()) return;
1656
+ if (X.payment) {
1657
+ const Q = Ie == null ? void 0 : Ie.paymentSession;
1658
+ if (!((Be = Q == null ? void 0 : Q.id) != null && Be.trim()) || Ft(Q.payment) !== Ft(X.payment)) {
1659
+ C({ status: "error" });
1584
1660
  return;
1585
1661
  }
1586
- he = !0, A({
1662
+ xe = !0, C({
1587
1663
  status: "payment",
1588
- snapshot: J,
1589
- session: { id: L.id, payment: { ...L.payment } }
1664
+ snapshot: X,
1665
+ session: { id: Q.id, payment: { ...Q.payment } }
1590
1666
  });
1591
- } else te != null && te.paymentSession ? A({ status: "error" }) : (C.current = !0, A({ status: "success", snapshot: J }));
1667
+ } else Ie != null && Ie.paymentSession ? C({ status: "error" }) : (w.current = !0, C({ status: "success", snapshot: X }));
1592
1668
  } catch {
1593
- ae() && A({ status: "error" });
1669
+ ge() && C({ status: "error" });
1594
1670
  } finally {
1595
- ae() && !he && (T.current = !1);
1671
+ ge() && !xe && (T.current = !1);
1596
1672
  }
1597
1673
  };
1598
1674
  return {
1599
- ...S,
1675
+ ...I,
1600
1676
  payment: u.payment,
1601
- blocked: k,
1602
- state: _,
1677
+ blocked: y,
1678
+ state: M,
1603
1679
  activeSession: F,
1604
- submit: dt,
1605
- reset: me
1680
+ submit: ut,
1681
+ reset: Se
1606
1682
  };
1607
1683
  }
1608
- const pi = bt(
1684
+ const bi = It(
1609
1685
  "ds:flex ds:w-full ds:flex-col ds:text-[var(--foreground)]",
1610
1686
  {
1611
1687
  variants: {
@@ -1633,44 +1709,57 @@ const pi = bt(
1633
1709
  },
1634
1710
  defaultVariants: { variant: "inline-list", surface: "flat" }
1635
1711
  }
1636
- ), mi = [
1712
+ ), yi = [
1637
1713
  [
1638
1714
  /\b(estetic|aesthetic|botox|filler|mesoterap|chirurgia\s*plastic)/i,
1639
- rs
1715
+ os
1640
1716
  ],
1641
- [/\b(cardio|ecg|elettrocardio|ecocardio|cuore|heart)/i, cn],
1642
- [/\b(dent|odonto|tooth|teeth|pulizia|igien|smile)/i, Mn],
1643
- [/\b(oftalmo|ocul|ophthal|vision|occhi|eye)/i, dn],
1644
- [/\b(otorin|udito|orecchi|hearing|ear)/i, In],
1645
- [/\b(neuro|brain|cervello)/i, yn],
1646
- [/\b(pediatr|child|bambin)/i, ln],
1647
- [/\b(ortop|ortho|osteo|skeleton|ossa|bone)/i, vn],
1648
- [/\b(lab|analis|test|sang|esami)/i, wn],
1649
- [/\b(farmaco|pharm|pillol|refill)/i, An],
1650
- [/\b(chirurg|surg|intervent|operat)/i, Dn],
1651
- [/\b(scan|rx|x-?ray|raggi|imag|radio|risonan|ecograf|ultras)/i, un],
1652
- [/\b(vacc|inject|inie|punto)/i, rs],
1653
- [/\b(derma|skin|pelle)/i, pn],
1654
- [/\b(prima\s*visit|first\s*visit|consult|consulto|valutaz)/i, mn],
1655
- [/\b(general|medicin|family|control|check[-\s]?up)/i, gn]
1717
+ [/\b(cardio|ecg|elettrocardio|ecocardio|cuore|heart)/i, pn],
1718
+ [/\b(dent|odonto|tooth|teeth|pulizia|igien|smile)/i, Ln],
1719
+ [/\b(oftalmo|ocul|ophthal|vision|occhi|eye)/i, mn],
1720
+ [/\b(otorin|udito|orecchi|hearing|ear)/i, An],
1721
+ [/\b(neuro|brain|cervello)/i, In],
1722
+ [/\b(pediatr|child|bambin)/i, fn],
1723
+ [/\b(ortop|ortho|osteo|skeleton|ossa|bone)/i, Sn],
1724
+ [/\b(lab|analis|test|sang|esami)/i, On],
1725
+ [/\b(farmaco|pharm|pillol|refill)/i, En],
1726
+ [/\b(chirurg|surg|intervent|operat)/i, Mn],
1727
+ [/\b(scan|rx|x-?ray|raggi|imag|radio|risonan|ecograf|ultras)/i, gn],
1728
+ [/\b(vacc|inject|inie|punto)/i, os],
1729
+ [/\b(derma|skin|pelle)/i, hn],
1730
+ [/\b(prima\s*visit|first\s*visit|consult|consulto|valutaz)/i, vn],
1731
+ [/\b(general|medicin|family|control|check[-\s]?up)/i, yn]
1656
1732
  ];
1657
- function fi(e) {
1658
- for (const [t, n] of mi)
1733
+ function ki(e) {
1734
+ for (const [t, n] of yi)
1659
1735
  if (t.test(e)) return n;
1660
1736
  return null;
1661
1737
  }
1662
- function gi(e) {
1663
- const t = fi(e.label) ?? on;
1738
+ function Si(e) {
1739
+ const t = ki(e.label) ?? un;
1664
1740
  return /* @__PURE__ */ s(t, { "aria-hidden": "true", className: "ds:size-5" });
1665
1741
  }
1666
- function As(e) {
1667
- var t;
1668
- return (t = e.priceLabel) != null && t.trim() ? e.priceLabel : void 0;
1742
+ function Ds() {
1743
+ const { t: e, i18n: t } = W("ui");
1744
+ return (n) => {
1745
+ const r = gi(n), i = (c) => Pt(c.amountCents, c.currencyCode, t.language), o = r.price ? "label" in r.price ? r.price.label : i(r.price.amount) : void 0;
1746
+ return r.payment === "unavailable" ? {
1747
+ price: o,
1748
+ payment: e("booking.payment.unavailable"),
1749
+ paymentTone: "error"
1750
+ } : {
1751
+ price: o,
1752
+ payment: r.payment ? e(`booking.payment.${r.payment.kind}`, {
1753
+ amount: i(r.payment)
1754
+ }) : void 0,
1755
+ paymentTone: "default"
1756
+ };
1757
+ };
1669
1758
  }
1670
- function Ze(e) {
1671
- return Bt(e, "yyyy-MM-dd");
1759
+ function Xe(e) {
1760
+ return _t(e, "yyyy-MM-dd");
1672
1761
  }
1673
- const hi = [
1762
+ const xi = [
1674
1763
  "ds:relative ds:flex ds:items-center ds:justify-center",
1675
1764
  "ds:min-h-[var(--min-target-size)] ds:min-w-[var(--min-target-size)]",
1676
1765
  "ds:rounded-[var(--radius-sm)]",
@@ -1680,7 +1769,7 @@ const hi = [
1680
1769
  "ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid",
1681
1770
  "ds:focus-visible:outline-[var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
1682
1771
  "ds:forced-colors:focus-visible:outline-[CanvasText]"
1683
- ].join(" "), vi = bt(hi, {
1772
+ ].join(" "), Ii = It(xi, {
1684
1773
  variants: {
1685
1774
  state: {
1686
1775
  available: "ds:cursor-pointer ds:text-[var(--foreground)] ds:hover:bg-[var(--muted)]/30",
@@ -1691,116 +1780,116 @@ const hi = [
1691
1780
  },
1692
1781
  defaultVariants: { state: "unavailable" }
1693
1782
  });
1694
- function bi({
1783
+ function Ni({
1695
1784
  availableDates: e,
1696
1785
  selectedDate: t,
1697
1786
  onSelectDate: n,
1698
1787
  locale: r,
1699
1788
  loading: i
1700
1789
  }) {
1701
- const { t: a } = G("ui"), c = R(() => t ? ht(le(t)) : e.length > 0 ? ht(le(e[0])) : ht(/* @__PURE__ */ new Date()), [t, e]), [f, p] = Q(c), [m, g] = Q(null), l = R(() => {
1702
- const w = ht(f), x = en(f), S = w.getDay(), A = x.getDate(), D = [];
1703
- for (let T = S; T > 0; T -= 1) {
1704
- const h = new Date(w);
1705
- h.setDate(w.getDate() - T), D.push(h);
1790
+ const { t: o } = W("ui"), c = L(() => t ? xt(be(t)) : e.length > 0 ? xt(be(e[0])) : xt(/* @__PURE__ */ new Date()), [t, e]), [f, m] = se(c), [p, g] = se(null), l = L(() => {
1791
+ const N = xt(f), S = rn(f), I = N.getDay(), C = S.getDate(), O = [];
1792
+ for (let T = I; T > 0; T -= 1) {
1793
+ const h = new Date(N);
1794
+ h.setDate(N.getDate() - T), O.push(h);
1706
1795
  }
1707
- for (let T = 0; T < A; T += 1) {
1708
- const h = new Date(w);
1709
- h.setDate(w.getDate() + T), D.push(h);
1796
+ for (let T = 0; T < C; T += 1) {
1797
+ const h = new Date(N);
1798
+ h.setDate(N.getDate() + T), O.push(h);
1710
1799
  }
1711
- for (; D.length < 42; ) {
1712
- const T = D[D.length - 1], h = new Date(T);
1713
- h.setDate(T.getDate() + 1), D.push(h);
1800
+ for (; O.length < 42; ) {
1801
+ const T = O[O.length - 1], h = new Date(T);
1802
+ h.setDate(T.getDate() + 1), O.push(h);
1714
1803
  }
1715
- return D;
1716
- }, [f]), o = R(() => {
1804
+ return O;
1805
+ }, [f]), a = L(() => {
1717
1806
  try {
1718
1807
  return new Intl.DateTimeFormat(r, {
1719
1808
  month: "long",
1720
1809
  year: "numeric"
1721
1810
  }).format(f);
1722
1811
  } catch {
1723
- return Bt(f, "MMMM yyyy");
1812
+ return _t(f, "MMMM yyyy");
1724
1813
  }
1725
- }, [f, r]), u = R(() => {
1726
- const w = new Date(2024, 0, 7);
1727
- return Array.from({ length: 7 }, (x, S) => {
1728
- const A = new Date(w);
1729
- A.setDate(w.getDate() + S);
1814
+ }, [f, r]), u = L(() => {
1815
+ const N = new Date(2024, 0, 7);
1816
+ return Array.from({ length: 7 }, (S, I) => {
1817
+ const C = new Date(N);
1818
+ C.setDate(N.getDate() + I);
1730
1819
  try {
1731
- return new Intl.DateTimeFormat(r, { weekday: "short" }).format(A);
1820
+ return new Intl.DateTimeFormat(r, { weekday: "short" }).format(C);
1732
1821
  } catch {
1733
- return Bt(A, "EEE");
1822
+ return _t(C, "EEE");
1734
1823
  }
1735
1824
  });
1736
- }, [r]), k = R(() => new Set(e), [e]), I = ue(
1737
- (w) => k.has(Ze(w)),
1738
- [k]
1739
- ), N = R(() => {
1740
- if (m) return m;
1741
- if (t) return le(t);
1742
- const w = l.find(
1743
- (x) => Ot(x, f) && I(x)
1825
+ }, [r]), y = L(() => new Set(e), [e]), x = ye(
1826
+ (N) => y.has(Xe(N)),
1827
+ [y]
1828
+ ), k = L(() => {
1829
+ if (p) return p;
1830
+ if (t) return be(t);
1831
+ const N = l.find(
1832
+ (S) => Ot(S, f) && x(S)
1744
1833
  );
1745
- return w || (l.find((x) => Ot(x, f)) ?? null);
1746
- }, [m, t, l, f, I]), M = ue(
1747
- (w, x) => {
1748
- let S = null;
1749
- switch (w.key) {
1834
+ return N || (l.find((S) => Ot(S, f)) ?? null);
1835
+ }, [p, t, l, f, x]), E = ye(
1836
+ (N, S) => {
1837
+ let I = null;
1838
+ switch (N.key) {
1750
1839
  case "ArrowLeft":
1751
- S = new Date(x), S.setDate(x.getDate() - 1);
1840
+ I = new Date(S), I.setDate(S.getDate() - 1);
1752
1841
  break;
1753
1842
  case "ArrowRight":
1754
- S = new Date(x), S.setDate(x.getDate() + 1);
1843
+ I = new Date(S), I.setDate(S.getDate() + 1);
1755
1844
  break;
1756
1845
  case "ArrowUp":
1757
- S = new Date(x), S.setDate(x.getDate() - 7);
1846
+ I = new Date(S), I.setDate(S.getDate() - 7);
1758
1847
  break;
1759
1848
  case "ArrowDown":
1760
- S = new Date(x), S.setDate(x.getDate() + 7);
1849
+ I = new Date(S), I.setDate(S.getDate() + 7);
1761
1850
  break;
1762
1851
  case "Home":
1763
- S = new Date(x), S.setDate(x.getDate() - x.getDay());
1852
+ I = new Date(S), I.setDate(S.getDate() - S.getDay());
1764
1853
  break;
1765
1854
  case "End":
1766
- S = new Date(x), S.setDate(x.getDate() + (6 - x.getDay()));
1855
+ I = new Date(S), I.setDate(S.getDate() + (6 - S.getDay()));
1767
1856
  break;
1768
1857
  case "Enter":
1769
1858
  case " ": {
1770
- w.preventDefault(), I(x) && n(Ze(x));
1859
+ N.preventDefault(), x(S) && n(Xe(S));
1771
1860
  return;
1772
1861
  }
1773
1862
  default:
1774
1863
  return;
1775
1864
  }
1776
- S && (w.preventDefault(), Ot(S, f) || p(ht(S)), g(S));
1865
+ I && (N.preventDefault(), Ot(I, f) || m(xt(I)), g(I));
1777
1866
  },
1778
- [I, n, f]
1867
+ [x, n, f]
1779
1868
  );
1780
1869
  return i ? /* @__PURE__ */ v(
1781
1870
  "div",
1782
1871
  {
1783
1872
  role: "status",
1784
1873
  "aria-live": "polite",
1785
- "aria-label": a("common.loading"),
1874
+ "aria-label": o("common.loading"),
1786
1875
  className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]",
1787
1876
  children: [
1788
- /* @__PURE__ */ s(Et, { variant: "text", width: "40%" }),
1789
- /* @__PURE__ */ s("div", { className: "ds:grid ds:grid-cols-7 ds:gap-[var(--spacing-2xs)]", children: Array.from({ length: 42 }, (w, x) => /* @__PURE__ */ s(Et, { variant: "rounded", height: "2.5rem" }, `mg-skel-${x}`)) })
1877
+ /* @__PURE__ */ s(Lt, { variant: "text", width: "40%" }),
1878
+ /* @__PURE__ */ s("div", { className: "ds:grid ds:grid-cols-7 ds:gap-[var(--spacing-2xs)]", children: Array.from({ length: 42 }, (N, S) => /* @__PURE__ */ s(Lt, { variant: "rounded", height: "2.5rem" }, `mg-skel-${S}`)) })
1790
1879
  ]
1791
1880
  }
1792
1881
  ) : /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
1793
1882
  /* @__PURE__ */ v("div", { className: "ds:flex ds:items-center ds:justify-between ds:gap-[var(--spacing-sm)]", children: [
1794
1883
  /* @__PURE__ */ s(
1795
- ns,
1884
+ is,
1796
1885
  {
1797
- icon: /* @__PURE__ */ s(sn, {}),
1798
- "aria-label": a("booking.previousMonth"),
1886
+ icon: /* @__PURE__ */ s(an, {}),
1887
+ "aria-label": o("booking.previousMonth"),
1799
1888
  size: "sm",
1800
1889
  intent: "ghost",
1801
1890
  flipIconInRtl: !0,
1802
1891
  onClick: () => {
1803
- p((w) => Bn(w)), g(null);
1892
+ m((N) => Vn(N)), g(null);
1804
1893
  }
1805
1894
  }
1806
1895
  ),
@@ -1809,19 +1898,19 @@ function bi({
1809
1898
  {
1810
1899
  className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)]",
1811
1900
  "aria-live": "polite",
1812
- children: o
1901
+ children: a
1813
1902
  }
1814
1903
  ),
1815
1904
  /* @__PURE__ */ s(
1816
- ns,
1905
+ is,
1817
1906
  {
1818
- icon: /* @__PURE__ */ s(nn, {}),
1819
- "aria-label": a("booking.nextMonth"),
1907
+ icon: /* @__PURE__ */ s(cn, {}),
1908
+ "aria-label": o("booking.nextMonth"),
1820
1909
  size: "sm",
1821
1910
  intent: "ghost",
1822
1911
  flipIconInRtl: !0,
1823
1912
  onClick: () => {
1824
- p((w) => gs(w, 1)), g(null);
1913
+ m((N) => vs(N, 1)), g(null);
1825
1914
  }
1826
1915
  }
1827
1916
  )
@@ -1830,7 +1919,7 @@ function bi({
1830
1919
  "div",
1831
1920
  {
1832
1921
  role: "grid",
1833
- "aria-label": a("booking.monthGridLabel"),
1922
+ "aria-label": o("booking.monthGridLabel"),
1834
1923
  className: "ds:flex ds:flex-col ds:gap-[var(--spacing-2xs)]",
1835
1924
  children: [
1836
1925
  /* @__PURE__ */ s(
@@ -1838,30 +1927,30 @@ function bi({
1838
1927
  {
1839
1928
  role: "row",
1840
1929
  className: "ds:grid ds:grid-cols-7 ds:gap-[var(--spacing-2xs)]",
1841
- children: u.map((w, x) => /* @__PURE__ */ s(
1930
+ children: u.map((N, S) => /* @__PURE__ */ s(
1842
1931
  "div",
1843
1932
  {
1844
1933
  role: "columnheader",
1845
1934
  className: "type-meta ds:text-center ds:text-[var(--muted-foreground)] ds:font-[var(--font-weight-medium)]",
1846
- children: w
1935
+ children: N
1847
1936
  },
1848
- `wd-${x}`
1937
+ `wd-${S}`
1849
1938
  ))
1850
1939
  }
1851
1940
  ),
1852
- Array.from({ length: 6 }, (w, x) => /* @__PURE__ */ s(
1941
+ Array.from({ length: 6 }, (N, S) => /* @__PURE__ */ s(
1853
1942
  "div",
1854
1943
  {
1855
1944
  role: "row",
1856
1945
  className: "ds:grid ds:grid-cols-7 ds:gap-[var(--spacing-2xs)]",
1857
- children: l.slice(x * 7, x * 7 + 7).map((S, A) => {
1858
- const D = x * 7 + A, T = Ot(S, f), h = T && I(S), C = t ? is(S, le(t)) : !1, $ = T ? C ? "selected" : h ? "available" : "unavailable" : "outside", b = N ? is(N, S) : !1, pe = (() => {
1946
+ children: l.slice(S * 7, S * 7 + 7).map((I, C) => {
1947
+ const O = S * 7 + C, T = Ot(I, f), h = T && x(I), w = t ? rs(I, be(t)) : !1, $ = T ? w ? "selected" : h ? "available" : "unavailable" : "outside", b = k ? rs(k, I) : !1, ke = (() => {
1859
1948
  try {
1860
1949
  return new Intl.DateTimeFormat(r, {
1861
1950
  dateStyle: "full"
1862
- }).format(S);
1951
+ }).format(I);
1863
1952
  } catch {
1864
- return Bt(S, "PPP");
1953
+ return _t(I, "PPP");
1865
1954
  }
1866
1955
  })();
1867
1956
  return /* @__PURE__ */ s(
@@ -1869,30 +1958,30 @@ function bi({
1869
1958
  {
1870
1959
  type: "button",
1871
1960
  role: "gridcell",
1872
- "aria-label": pe,
1873
- "aria-selected": C || void 0,
1961
+ "aria-label": ke,
1962
+ "aria-selected": w || void 0,
1874
1963
  "aria-disabled": !h || void 0,
1875
1964
  tabIndex: b ? 0 : -1,
1876
1965
  disabled: !h,
1877
1966
  onClick: () => {
1878
- h && n(Ze(S));
1967
+ h && n(Xe(I));
1879
1968
  },
1880
- onKeyDown: (F) => M(F, S),
1881
- className: vi({ state: $ }),
1882
- children: /* @__PURE__ */ s("span", { "aria-hidden": "true", children: S.getDate() })
1969
+ onKeyDown: (F) => E(F, I),
1970
+ className: Ii({ state: $ }),
1971
+ children: /* @__PURE__ */ s("span", { "aria-hidden": "true", children: I.getDate() })
1883
1972
  },
1884
- `mg-cell-${D}`
1973
+ `mg-cell-${O}`
1885
1974
  );
1886
1975
  })
1887
1976
  },
1888
- `mg-row-${x}`
1977
+ `mg-row-${S}`
1889
1978
  ))
1890
1979
  ]
1891
1980
  }
1892
1981
  )
1893
1982
  ] });
1894
1983
  }
1895
- const yi = bt(
1984
+ const wi = It(
1896
1985
  [
1897
1986
  "ds:relative ds:flex ds:w-full ds:items-center ds:gap-[var(--spacing-md)]",
1898
1987
  "ds:min-h-[var(--min-target-size)]",
@@ -1918,53 +2007,53 @@ const yi = bt(
1918
2007
  defaultVariants: { state: "idle" }
1919
2008
  }
1920
2009
  );
1921
- function ki({
2010
+ function Ci({
1922
2011
  services: e,
1923
2012
  selectedServiceId: t,
1924
2013
  onSelect: n,
1925
2014
  showDuration: r
1926
2015
  }) {
1927
- const { t: i, i18n: a } = G("ui"), c = Pt(), [f, p] = Q(() => {
2016
+ const { t: i } = W("ui"), o = Ds(), c = Rt(), [f, m] = se(() => {
1928
2017
  if (t) {
1929
- const o = e.findIndex((u) => u.id === t);
1930
- if (o >= 0) return o;
2018
+ const a = e.findIndex((u) => u.id === t);
2019
+ if (a >= 0) return a;
1931
2020
  }
1932
2021
  return 0;
1933
- }), m = E(/* @__PURE__ */ new Map()), g = ue((o) => {
2022
+ }), p = _(/* @__PURE__ */ new Map()), g = ye((a) => {
1934
2023
  var u;
1935
- (u = m.current.get(o)) == null || u.focus();
1936
- }, []), l = ue(
1937
- (o, u, k) => {
1938
- const I = e.length;
1939
- if (I !== 0)
1940
- switch (o.key) {
2024
+ (u = p.current.get(a)) == null || u.focus();
2025
+ }, []), l = ye(
2026
+ (a, u, y) => {
2027
+ const x = e.length;
2028
+ if (x !== 0)
2029
+ switch (a.key) {
1941
2030
  case "ArrowDown":
1942
2031
  case "ArrowRight": {
1943
- o.preventDefault();
1944
- const N = (u + 1) % I;
1945
- p(N), g(N);
2032
+ a.preventDefault();
2033
+ const k = (u + 1) % x;
2034
+ m(k), g(k);
1946
2035
  break;
1947
2036
  }
1948
2037
  case "ArrowUp":
1949
2038
  case "ArrowLeft": {
1950
- o.preventDefault();
1951
- const N = (u - 1 + I) % I;
1952
- p(N), g(N);
2039
+ a.preventDefault();
2040
+ const k = (u - 1 + x) % x;
2041
+ m(k), g(k);
1953
2042
  break;
1954
2043
  }
1955
2044
  case "Home": {
1956
- o.preventDefault(), p(0), g(0);
2045
+ a.preventDefault(), m(0), g(0);
1957
2046
  break;
1958
2047
  }
1959
2048
  case "End": {
1960
- o.preventDefault();
1961
- const N = I - 1;
1962
- p(N), g(N);
2049
+ a.preventDefault();
2050
+ const k = x - 1;
2051
+ m(k), g(k);
1963
2052
  break;
1964
2053
  }
1965
2054
  case "Enter":
1966
2055
  case " ": {
1967
- o.preventDefault(), n(k);
2056
+ a.preventDefault(), n(y);
1968
2057
  break;
1969
2058
  }
1970
2059
  }
@@ -1978,36 +2067,37 @@ function ki({
1978
2067
  "aria-label": i("booking.serviceListLabel"),
1979
2068
  id: c,
1980
2069
  className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]",
1981
- children: e.map((o, u) => {
1982
- const k = t === o.id, I = f === u, N = Qt(o), M = o.payment ? N ? i(`booking.payment.${N.kind}`, {
1983
- amount: yt(
1984
- N.amountCents,
1985
- N.currencyCode,
1986
- a.language
1987
- )
1988
- }) : i("booking.payment.unavailable") : As(o), w = M ? i("booking.serviceCardLabelPrice", {
1989
- label: o.label,
1990
- price: M
2070
+ children: e.map((a, u) => {
2071
+ const y = t === a.id, x = f === u, { price: k, payment: E, paymentTone: N } = o(a), S = k ? E ? i("booking.serviceCardLabelPayment", {
2072
+ label: a.label,
2073
+ price: k,
2074
+ payment: E
2075
+ }) : i("booking.serviceCardLabelPrice", {
2076
+ label: a.label,
2077
+ price: k
2078
+ }) : E ? i("booking.serviceCardLabelPaymentNoPrice", {
2079
+ label: a.label,
2080
+ payment: E
1991
2081
  }) : r ? i("booking.serviceCardLabel", {
1992
- label: o.label,
1993
- duration: o.durationMin
1994
- }) : o.label, x = gi(o);
2082
+ label: a.label,
2083
+ duration: a.durationMin
2084
+ }) : a.label, I = Si(a);
1995
2085
  return /* @__PURE__ */ v(
1996
2086
  "button",
1997
2087
  {
1998
- ref: (S) => {
1999
- S ? m.current.set(u, S) : m.current.delete(u);
2088
+ ref: (C) => {
2089
+ C ? p.current.set(u, C) : p.current.delete(u);
2000
2090
  },
2001
2091
  type: "button",
2002
2092
  role: "radio",
2003
- "aria-checked": k,
2004
- "aria-label": w,
2005
- tabIndex: I ? 0 : -1,
2006
- onClick: () => n(o.id),
2007
- onFocus: () => p(u),
2008
- onKeyDown: (S) => l(S, u, o.id),
2009
- className: yi({
2010
- state: k ? "selected" : "idle"
2093
+ "aria-checked": y,
2094
+ "aria-label": S,
2095
+ tabIndex: x ? 0 : -1,
2096
+ onClick: () => n(a.id),
2097
+ onFocus: () => m(u),
2098
+ onKeyDown: (C) => l(C, u, a.id),
2099
+ className: wi({
2100
+ state: y ? "selected" : "idle"
2011
2101
  }),
2012
2102
  children: [
2013
2103
  /* @__PURE__ */ s(
@@ -2015,32 +2105,38 @@ function ki({
2015
2105
  {
2016
2106
  "aria-hidden": "true",
2017
2107
  className: "ds:flex ds:size-10 ds:shrink-0 ds:items-center ds:justify-center ds:rounded-[var(--radius-sm)] ds:bg-[var(--primary)]/10 ds:text-[var(--primary)]",
2018
- children: x
2108
+ children: I
2019
2109
  }
2020
2110
  ),
2021
2111
  /* @__PURE__ */ v("span", { className: "ds:flex ds:min-w-0 ds:flex-1 ds:flex-col ds:gap-[var(--spacing-2xs)]", children: [
2022
- /* @__PURE__ */ s("span", { className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)]", children: o.label }),
2023
- M || !r ? null : /* @__PURE__ */ s("span", { className: "type-meta ds:text-[var(--muted-foreground)]", children: i("booking.serviceSummary", {
2024
- minutes: o.durationMin
2112
+ /* @__PURE__ */ s("span", { className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)] ds:break-words", children: a.label }),
2113
+ E ? /* @__PURE__ */ s(
2114
+ "span",
2115
+ {
2116
+ className: Qs({ tone: N }),
2117
+ children: E
2118
+ }
2119
+ ) : k || !r ? null : /* @__PURE__ */ s("span", { className: "type-meta ds:text-[var(--muted-foreground)]", children: i("booking.serviceSummary", {
2120
+ minutes: a.durationMin
2025
2121
  }) })
2026
2122
  ] }),
2027
- M ? /* @__PURE__ */ s(
2123
+ k ? /* @__PURE__ */ s(
2028
2124
  "span",
2029
2125
  {
2030
2126
  "aria-hidden": "true",
2031
2127
  className: "ds:inline-flex ds:shrink-0 ds:items-center ds:ms-auto",
2032
- children: /* @__PURE__ */ s(ms, { variant: "accentSoft", size: "lg", children: M })
2128
+ children: /* @__PURE__ */ s(gs, { variant: "accentSoft", size: "lg", children: k })
2033
2129
  }
2034
2130
  ) : null
2035
2131
  ]
2036
2132
  },
2037
- o.id
2133
+ a.id
2038
2134
  );
2039
2135
  })
2040
2136
  }
2041
2137
  );
2042
2138
  }
2043
- const Si = bt(
2139
+ const Ai = It(
2044
2140
  [
2045
2141
  "ds:inline-flex ds:items-center ds:justify-center ds:gap-[var(--spacing-2xs)]",
2046
2142
  "ds:min-h-[var(--min-target-size)]",
@@ -2066,58 +2162,58 @@ const Si = bt(
2066
2162
  defaultVariants: { state: "idle" }
2067
2163
  }
2068
2164
  );
2069
- function xi(e) {
2165
+ function Ti(e) {
2070
2166
  const [t] = e.split(":").map((r) => parseInt(r, 10)), n = Number.isFinite(t) ? t : 0;
2071
2167
  return n < 12 ? "morning" : n < 17 ? "afternoon" : "evening";
2072
2168
  }
2073
- const Ii = {
2074
- morning: an,
2075
- afternoon: _n,
2076
- evening: rn
2169
+ const Oi = {
2170
+ morning: ln,
2171
+ afternoon: Rn,
2172
+ evening: dn
2077
2173
  };
2078
- function Ni({
2174
+ function Di({
2079
2175
  date: e,
2080
2176
  slots: t,
2081
2177
  selectedSlotKey: n,
2082
2178
  onSelect: r,
2083
2179
  loading: i,
2084
- locale: a
2180
+ locale: o
2085
2181
  }) {
2086
- const { t: c } = G("ui"), f = R(() => {
2182
+ const { t: c } = W("ui"), f = L(() => {
2087
2183
  try {
2088
- return new Intl.DateTimeFormat(a, {
2184
+ return new Intl.DateTimeFormat(o, {
2089
2185
  weekday: "long",
2090
2186
  day: "numeric",
2091
2187
  month: "long"
2092
- }).format(le(e));
2188
+ }).format(be(e));
2093
2189
  } catch {
2094
2190
  return e;
2095
2191
  }
2096
- }, [e, a]), p = R(() => {
2192
+ }, [e, o]), m = L(() => {
2097
2193
  const l = {
2098
2194
  morning: [],
2099
2195
  afternoon: [],
2100
2196
  evening: []
2101
2197
  };
2102
- for (const o of t)
2103
- l[xi(o.time)].push(o);
2198
+ for (const a of t)
2199
+ l[Ti(a.time)].push(a);
2104
2200
  return l;
2105
- }, [t]), m = t.filter((l) => l.available).length, g = ["morning", "afternoon", "evening"];
2201
+ }, [t]), p = t.filter((l) => l.available).length, g = ["morning", "afternoon", "evening"];
2106
2202
  return i ? /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
2107
- /* @__PURE__ */ s(Et, { variant: "text", width: "60%" }),
2203
+ /* @__PURE__ */ s(Lt, { variant: "text", width: "60%" }),
2108
2204
  [0, 1].map((l) => /* @__PURE__ */ s(
2109
2205
  "div",
2110
2206
  {
2111
2207
  className: "ds:grid ds:grid-cols-3 ds:gap-[var(--spacing-xs)]",
2112
- children: [0, 1, 2].map((o) => /* @__PURE__ */ s(Et, { variant: "rounded", height: "44px" }, o))
2208
+ children: [0, 1, 2].map((a) => /* @__PURE__ */ s(Lt, { variant: "rounded", height: "44px" }, a))
2113
2209
  },
2114
2210
  l
2115
2211
  ))
2116
- ] }) : m === 0 ? /* @__PURE__ */ s(fs, { variant: "no-results", title: c("booking.noSlotsForDate") }) : /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
2212
+ ] }) : p === 0 ? /* @__PURE__ */ s(hs, { variant: "no-results", title: c("booking.noSlotsForDate") }) : /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
2117
2213
  /* @__PURE__ */ v("div", { className: "ds:flex ds:items-baseline ds:justify-between ds:gap-[var(--spacing-sm)]", children: [
2118
2214
  /* @__PURE__ */ v("div", { className: "ds:flex ds:items-center ds:gap-[var(--spacing-xs)]", children: [
2119
2215
  /* @__PURE__ */ s(
2120
- Sn,
2216
+ wn,
2121
2217
  {
2122
2218
  "aria-hidden": "true",
2123
2219
  className: "ds:size-4 ds:text-[color:var(--accent)]"
@@ -2125,12 +2221,12 @@ function Ni({
2125
2221
  ),
2126
2222
  /* @__PURE__ */ s("h3", { className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)] ds:m-0", children: f })
2127
2223
  ] }),
2128
- /* @__PURE__ */ s("span", { className: "type-meta ds:text-[var(--muted-foreground)]", children: c("booking.slotsAvailable", { count: m }) })
2224
+ /* @__PURE__ */ s("span", { className: "type-meta ds:text-[var(--muted-foreground)]", children: c("booking.slotsAvailable", { count: p }) })
2129
2225
  ] }),
2130
2226
  g.map((l) => {
2131
- const o = p[l];
2132
- if (o.length === 0) return null;
2133
- const u = Ii[l];
2227
+ const a = m[l];
2228
+ if (a.length === 0) return null;
2229
+ const u = Oi[l];
2134
2230
  return /* @__PURE__ */ v(
2135
2231
  "div",
2136
2232
  {
@@ -2146,23 +2242,23 @@ function Ni({
2146
2242
  role: "group",
2147
2243
  "aria-label": c(`booking.timeOfDay.${l}`),
2148
2244
  className: "ds:grid ds:grid-cols-3 ds:gap-[var(--spacing-xs)] ds:sm:grid-cols-4",
2149
- children: o.map((k) => {
2150
- const I = k.key === n, N = k.available ? I ? "selected" : "idle" : "unavailable";
2245
+ children: a.map((y) => {
2246
+ const x = y.key === n, k = y.available ? x ? "selected" : "idle" : "unavailable";
2151
2247
  return /* @__PURE__ */ s(
2152
2248
  "button",
2153
2249
  {
2154
2250
  type: "button",
2155
- "data-slot-id": k.key,
2156
- disabled: !k.available,
2157
- "aria-pressed": I,
2251
+ "data-slot-id": y.key,
2252
+ disabled: !y.available,
2253
+ "aria-pressed": x,
2158
2254
  "aria-label": c("booking.slotAvailableLabel", {
2159
- time: k.time
2255
+ time: y.time
2160
2256
  }),
2161
- onClick: () => k.available && r(k),
2162
- className: Si({ state: N }),
2163
- children: k.time
2257
+ onClick: () => y.available && r(y),
2258
+ className: Ai({ state: k }),
2259
+ children: y.time
2164
2260
  },
2165
- k.key
2261
+ y.key
2166
2262
  );
2167
2263
  })
2168
2264
  }
@@ -2174,152 +2270,152 @@ function Ni({
2174
2270
  })
2175
2271
  ] });
2176
2272
  }
2177
- const Lt = 4;
2178
- function wi({
2273
+ const Mt = 4;
2274
+ function Ei({
2179
2275
  availableDates: e,
2180
2276
  availableSlots: t,
2181
2277
  value: n,
2182
2278
  onChange: r,
2183
2279
  onDateSelect: i,
2184
- onWindowChange: a,
2280
+ onWindowChange: o,
2185
2281
  loadingDates: c,
2186
2282
  loadingSlots: f,
2187
- locale: p,
2188
- agentIdBase: m
2283
+ locale: m,
2284
+ agentIdBase: p
2189
2285
  }) {
2190
- const g = R(() => at(/* @__PURE__ */ new Date()), []), [l, o] = Q(() => {
2286
+ const g = L(() => ct(/* @__PURE__ */ new Date()), []), [l, a] = se(() => {
2191
2287
  if (n.date) {
2192
- const h = at(le(n.date));
2193
- if (!ot(g, h)) return h;
2288
+ const h = ct(be(n.date));
2289
+ if (!dt(g, h)) return h;
2194
2290
  }
2195
2291
  if (e.length > 0) {
2196
- const h = at(le(e[0]));
2197
- if (ot(h, g)) return h;
2292
+ const h = ct(be(e[0]));
2293
+ if (dt(h, g)) return h;
2198
2294
  }
2199
2295
  return g;
2200
- }), u = R(
2201
- () => Ut(l, Lt - 1),
2296
+ }), u = L(
2297
+ () => Gt(l, Mt - 1),
2202
2298
  [l]
2203
- ), k = R(() => Array.from({ length: Lt }, (h, C) => {
2204
- const $ = Ut(l, C), b = Ze($), F = (t[b] ?? []).map((z) => ({
2205
- id: z.key,
2299
+ ), y = L(() => Array.from({ length: Mt }, (h, w) => {
2300
+ const $ = Gt(l, w), b = Xe($), F = (t[b] ?? []).map((G) => ({
2301
+ id: G.key,
2206
2302
  // SlotGrid formats `start` as a time via Intl.DateTimeFormat —
2207
2303
  // compose a full ISO from the column's date + the slot's HH:mm
2208
2304
  // so the locale-formatter has a real timestamp to work with.
2209
- start: `${b}T${z.time}:00`,
2210
- available: z.available
2305
+ start: `${b}T${G.time}:00`,
2306
+ available: G.available
2211
2307
  }));
2212
2308
  return { date: b, slots: F };
2213
- }), [l, t]), I = ot(l, g), N = !0, M = ue(() => {
2214
- o((h) => {
2215
- const C = tn(h, Lt);
2216
- return ot(g, C) ? g : C;
2309
+ }), [l, t]), x = dt(l, g), k = !0, E = ye(() => {
2310
+ a((h) => {
2311
+ const w = on(h, Mt);
2312
+ return dt(g, w) ? g : w;
2217
2313
  });
2218
- }, [g]), w = ue(() => {
2219
- o((h) => Ut(h, Lt));
2314
+ }, [g]), N = ye(() => {
2315
+ a((h) => Gt(h, Mt));
2220
2316
  }, []);
2221
- q(() => {
2317
+ K(() => {
2222
2318
  if (e.length === 0) return;
2223
- const h = at(le(e[0]));
2224
- !ot(h, g) || e.some(($) => {
2225
- const b = at(le($));
2226
- return !ot(b, u) && !Qs(b, l);
2227
- }) || o(h);
2228
- }, [e]), q(() => {
2229
- a == null || a(Ze(l), Ze(u));
2230
- }, [l, u, a]);
2231
- const x = ue(
2232
- (h, C) => {
2233
- const $ = typeof C.date == "string" ? C.date : Ze(C.date);
2319
+ const h = ct(be(e[0]));
2320
+ !dt(h, g) || e.some(($) => {
2321
+ const b = ct(be($));
2322
+ return !dt(b, u) && !nn(b, l);
2323
+ }) || a(h);
2324
+ }, [e]), K(() => {
2325
+ o == null || o(Xe(l), Xe(u));
2326
+ }, [l, u, o]);
2327
+ const S = ye(
2328
+ (h, w) => {
2329
+ const $ = typeof w.date == "string" ? w.date : Xe(w.date);
2234
2330
  r({
2235
- ...Is($t(n, $), h.id)
2331
+ ...ws($t(n, $), h.id)
2236
2332
  }), i == null || i($);
2237
2333
  },
2238
2334
  [r, i, n]
2239
- ), S = c || f ? "loading" : "default", A = k.some((h) => h.slots.length > 0), D = e[0];
2335
+ ), I = c || f ? "loading" : "default", C = y.some((h) => h.slots.length > 0), O = e[0];
2240
2336
  return /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
2241
- !A && !!D ? /* @__PURE__ */ s(
2242
- es,
2337
+ !C && !!O ? /* @__PURE__ */ s(
2338
+ ts,
2243
2339
  {
2244
- nextAvailableDate: D,
2245
- onJump: () => o(at(le(D))),
2246
- locale: p
2340
+ nextAvailableDate: O,
2341
+ onJump: () => a(ct(be(O))),
2342
+ locale: m
2247
2343
  }
2248
2344
  ) : null,
2249
2345
  /* @__PURE__ */ s(
2250
- Zs,
2346
+ tn,
2251
2347
  {
2252
- id: m ? `${m}-slots` : void 0,
2253
- days: k,
2254
- state: S,
2348
+ id: p ? `${p}-slots` : void 0,
2349
+ days: y,
2350
+ state: I,
2255
2351
  selectedSlotId: n.slotKey,
2256
2352
  maxInitialSlotsPerDay: 6,
2257
- locale: p,
2258
- hasPrevious: I,
2259
- hasNext: N,
2260
- onSlotSelect: x,
2261
- onPreviousDays: M,
2262
- onNextDays: w
2353
+ locale: m,
2354
+ hasPrevious: x,
2355
+ hasNext: k,
2356
+ onSlotSelect: S,
2357
+ onPreviousDays: E,
2358
+ onNextDays: N
2263
2359
  }
2264
2360
  )
2265
2361
  ] });
2266
2362
  }
2267
- function Ts(e) {
2363
+ function Es(e) {
2268
2364
  const {
2269
2365
  inputs: t,
2270
2366
  value: n,
2271
2367
  onChange: r,
2272
2368
  onDateSelect: i,
2273
- onWindowChange: a,
2369
+ onWindowChange: o,
2274
2370
  loadingDates: c,
2275
2371
  loadingSlots: f,
2276
- locale: p,
2277
- datePickerStyle: m,
2372
+ locale: m,
2373
+ datePickerStyle: p,
2278
2374
  agentIdBase: g
2279
2375
  } = e;
2280
- return m === "four-day-grid" ? /* @__PURE__ */ s(
2281
- wi,
2376
+ return p === "four-day-grid" ? /* @__PURE__ */ s(
2377
+ Ei,
2282
2378
  {
2283
2379
  availableDates: t.availableDates,
2284
2380
  availableSlots: t.availableSlots,
2285
2381
  value: n,
2286
2382
  onChange: r,
2287
2383
  onDateSelect: i,
2288
- onWindowChange: a,
2384
+ onWindowChange: o,
2289
2385
  loadingDates: c,
2290
2386
  loadingSlots: f,
2291
- locale: p,
2387
+ locale: m,
2292
2388
  agentIdBase: g
2293
2389
  }
2294
2390
  ) : /* @__PURE__ */ s(
2295
- bi,
2391
+ Ni,
2296
2392
  {
2297
2393
  availableDates: t.availableDates,
2298
2394
  selectedDate: n.date,
2299
2395
  onSelectDate: (l) => {
2300
2396
  r($t(n, l)), i == null || i(l);
2301
2397
  },
2302
- locale: p,
2398
+ locale: m,
2303
2399
  loading: c ?? f
2304
2400
  }
2305
2401
  );
2306
2402
  }
2307
- function Ds(e) {
2308
- const { inputs: t, value: n, onChange: r, loadingSlots: i, locale: a, datePickerStyle: c } = e;
2403
+ function Fs(e) {
2404
+ const { inputs: t, value: n, onChange: r, loadingSlots: i, locale: o, datePickerStyle: c } = e;
2309
2405
  return c === "four-day-grid" || !n.date ? null : /* @__PURE__ */ s(
2310
- Ni,
2406
+ Di,
2311
2407
  {
2312
2408
  date: n.date,
2313
2409
  slots: t.availableSlots[n.date] ?? [],
2314
2410
  selectedSlotKey: n.slotKey,
2315
- onSelect: (f) => r(Is(n, f.key)),
2411
+ onSelect: (f) => r(ws(n, f.key)),
2316
2412
  loading: i,
2317
- locale: a
2413
+ locale: o
2318
2414
  }
2319
2415
  );
2320
2416
  }
2321
- function Os({ value: e, onChange: t }) {
2322
- const { t: n } = G("ui"), r = [
2417
+ function Ms({ value: e, onChange: t }) {
2418
+ const { t: n } = W("ui"), r = [
2323
2419
  { value: "private", label: n("booking.insurance.private") },
2324
2420
  { value: "public", label: n("booking.insurance.public") }
2325
2421
  ];
@@ -2339,22 +2435,22 @@ function Os({ value: e, onChange: t }) {
2339
2435
  )
2340
2436
  ] });
2341
2437
  }
2342
- function Ms({
2438
+ function _s({
2343
2439
  specialties: e,
2344
2440
  value: t,
2345
2441
  valueIds: n,
2346
2442
  onChange: r,
2347
2443
  onChangeIds: i,
2348
- pickerStyle: a = "select"
2444
+ pickerStyle: o = "select"
2349
2445
  }) {
2350
- const { t: c } = G("ui"), f = e.map((m) => ({
2351
- value: m.id,
2352
- label: m.label
2353
- })), p = /* @__PURE__ */ s("h3", { className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)] ds:m-0", children: c("booking.specialty.heading") });
2354
- return a === "multi-select" && i ? /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
2355
- p,
2446
+ const { t: c } = W("ui"), f = e.map((p) => ({
2447
+ value: p.id,
2448
+ label: p.label
2449
+ })), m = /* @__PURE__ */ s("h3", { className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)] ds:m-0", children: c("booking.specialty.heading") });
2450
+ return o === "multi-select" && i ? /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
2451
+ m,
2356
2452
  /* @__PURE__ */ s(
2357
- Zt,
2453
+ Xt,
2358
2454
  {
2359
2455
  options: f,
2360
2456
  value: n ?? [],
@@ -2364,104 +2460,103 @@ function Ms({
2364
2460
  allowClear: !0
2365
2461
  }
2366
2462
  )
2367
- ] }) : a === "combobox" ? /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
2368
- p,
2463
+ ] }) : o === "combobox" ? /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
2464
+ m,
2369
2465
  /* @__PURE__ */ s(
2370
- Yt,
2466
+ Qt,
2371
2467
  {
2372
2468
  options: f,
2373
2469
  value: t ?? "",
2374
- onValueChange: (m) => r(m === "" ? "" : m),
2470
+ onValueChange: (p) => r(p === "" ? "" : p),
2375
2471
  placeholder: c("booking.specialty.placeholder"),
2376
2472
  "aria-label": c("booking.specialty.heading"),
2377
2473
  clearable: !0
2378
2474
  }
2379
2475
  )
2380
2476
  ] }) : /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
2381
- p,
2477
+ m,
2382
2478
  /* @__PURE__ */ s(
2383
2479
  Vt,
2384
2480
  {
2385
2481
  options: f,
2386
2482
  value: t ?? "",
2387
- onValueChange: (m) => r(m),
2483
+ onValueChange: (p) => r(p),
2388
2484
  placeholder: c("booking.specialty.placeholder"),
2389
2485
  "aria-label": c("booking.specialty.heading")
2390
2486
  }
2391
2487
  )
2392
2488
  ] });
2393
2489
  }
2394
- function Fs({
2490
+ function Ls({
2395
2491
  services: e,
2396
2492
  value: t,
2397
2493
  valueIds: n,
2398
2494
  onChange: r,
2399
2495
  onChangeIds: i,
2400
- pickerStyle: a,
2496
+ pickerStyle: o,
2401
2497
  compact: c,
2402
2498
  showDuration: f
2403
2499
  }) {
2404
- const { t: p, i18n: m } = G("ui"), g = a ?? (c ? "select" : "cards"), l = e.map((u) => {
2405
- const k = Qt(u), I = u.payment ? k ? p(`booking.payment.${k.kind}`, {
2406
- amount: yt(
2407
- k.amountCents,
2408
- k.currencyCode,
2409
- m.language
2410
- )
2411
- }) : p("booking.payment.unavailable") : As(u);
2412
- return I ? {
2413
- value: u.id,
2414
- label: u.label,
2415
- endContent: /* @__PURE__ */ s(ms, { variant: "accentSoft", size: "lg", children: I })
2416
- } : {
2500
+ const { t: m } = W("ui"), p = Ds(), g = o ?? (c ? "select" : "cards"), l = e.map((u) => {
2501
+ const { price: y, payment: x, paymentTone: k } = p(u);
2502
+ return {
2417
2503
  value: u.id,
2418
- label: f ? `${u.label} · ${p("booking.serviceSummary", {
2504
+ label: y || x || !f ? u.label : `${u.label} · ${m("booking.serviceSummary", {
2419
2505
  minutes: u.durationMin
2420
- })}` : u.label
2506
+ })}`,
2507
+ ...y ? {
2508
+ endContent: /* @__PURE__ */ s(gs, { variant: "accentSoft", size: "lg", children: y })
2509
+ } : {},
2510
+ ...x ? { description: x, descriptionTone: k } : {}
2421
2511
  };
2422
- }), o = /* @__PURE__ */ s("h3", { className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)] ds:m-0", children: p("booking.service.heading") });
2512
+ }), a = /* @__PURE__ */ s("h3", { className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)] ds:m-0", children: m("booking.service.heading") });
2423
2513
  return g === "multi-select" && i ? /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
2424
- o,
2514
+ a,
2425
2515
  /* @__PURE__ */ s(
2426
- Zt,
2516
+ Xt,
2427
2517
  {
2428
2518
  options: l,
2429
2519
  value: n ?? [],
2430
2520
  onChange: i,
2431
- placeholder: p("booking.service.placeholder"),
2432
- "aria-label": p("booking.service.heading"),
2433
- allowClear: !0
2521
+ placeholder: m("booking.service.placeholder"),
2522
+ "aria-label": m("booking.service.heading"),
2523
+ allowClear: !0,
2524
+ wrapOptionLabels: !0
2434
2525
  }
2435
2526
  )
2436
2527
  ] }) : g === "combobox" ? /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
2437
- o,
2528
+ a,
2438
2529
  /* @__PURE__ */ s(
2439
- Yt,
2530
+ Qt,
2440
2531
  {
2441
2532
  options: l,
2442
2533
  value: t ?? "",
2443
2534
  onValueChange: (u) => r(u === "" ? "" : u),
2444
- placeholder: p("booking.service.placeholder"),
2445
- "aria-label": p("booking.service.heading"),
2446
- clearable: !0
2535
+ placeholder: m("booking.service.placeholder"),
2536
+ "aria-label": m("booking.service.heading"),
2537
+ clearable: !0,
2538
+ wrapOptionLabels: !0
2447
2539
  }
2448
2540
  )
2449
2541
  ] }) : g === "select" ? /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
2450
- o,
2542
+ a,
2451
2543
  /* @__PURE__ */ s(
2452
2544
  Vt,
2453
2545
  {
2454
2546
  options: l,
2455
2547
  value: t ?? "",
2456
2548
  onValueChange: (u) => r(u),
2457
- placeholder: p("booking.service.placeholder"),
2458
- "aria-label": p("booking.service.heading")
2549
+ placeholder: m("booking.service.placeholder"),
2550
+ "aria-label": m("booking.service.heading"),
2551
+ showDescriptions: !0,
2552
+ descriptionInName: !0,
2553
+ wrapOptionLabels: !0
2459
2554
  }
2460
2555
  )
2461
2556
  ] }) : /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
2462
- o,
2557
+ a,
2463
2558
  /* @__PURE__ */ s(
2464
- ki,
2559
+ Ci,
2465
2560
  {
2466
2561
  services: e,
2467
2562
  selectedServiceId: t,
@@ -2471,26 +2566,26 @@ function Fs({
2471
2566
  )
2472
2567
  ] });
2473
2568
  }
2474
- function _s({
2569
+ function Bs({
2475
2570
  operators: e,
2476
2571
  value: t,
2477
2572
  valueIds: n,
2478
2573
  onChange: r,
2479
2574
  onChangeIds: i,
2480
- pickerStyle: a = "select"
2575
+ pickerStyle: o = "select"
2481
2576
  }) {
2482
- const { t: c } = G("ui"), f = /* @__PURE__ */ s("h3", { className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)] ds:m-0", children: c("booking.operator.heading") });
2483
- if (a === "multi-select" && i) {
2484
- const m = e.map((g) => ({
2577
+ const { t: c } = W("ui"), f = /* @__PURE__ */ s("h3", { className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)] ds:m-0", children: c("booking.operator.heading") });
2578
+ if (o === "multi-select" && i) {
2579
+ const p = e.map((g) => ({
2485
2580
  value: g.id,
2486
2581
  label: g.name
2487
2582
  }));
2488
2583
  return /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
2489
2584
  f,
2490
2585
  /* @__PURE__ */ s(
2491
- Zt,
2586
+ Xt,
2492
2587
  {
2493
- options: m,
2588
+ options: p,
2494
2589
  value: n ?? [],
2495
2590
  onChange: i,
2496
2591
  placeholder: c("booking.operator.placeholder"),
@@ -2500,18 +2595,18 @@ function _s({
2500
2595
  )
2501
2596
  ] });
2502
2597
  }
2503
- const p = [
2504
- { value: Ce, label: c("booking.operator.all") },
2505
- ...e.map((m) => ({ value: m.id, label: m.name }))
2598
+ const m = [
2599
+ { value: _e, label: c("booking.operator.all") },
2600
+ ...e.map((p) => ({ value: p.id, label: p.name }))
2506
2601
  ];
2507
- return a === "combobox" ? /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
2602
+ return o === "combobox" ? /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
2508
2603
  f,
2509
2604
  /* @__PURE__ */ s(
2510
- Yt,
2605
+ Qt,
2511
2606
  {
2512
- options: p,
2513
- value: t ?? Ce,
2514
- onValueChange: (m) => r(m === "" ? Ce : m),
2607
+ options: m,
2608
+ value: t ?? _e,
2609
+ onValueChange: (p) => r(p === "" ? _e : p),
2515
2610
  placeholder: c("booking.operator.placeholder"),
2516
2611
  "aria-label": c("booking.operator.heading"),
2517
2612
  clearable: !0
@@ -2522,151 +2617,151 @@ function _s({
2522
2617
  /* @__PURE__ */ s(
2523
2618
  Vt,
2524
2619
  {
2525
- options: p,
2526
- value: t ?? Ce,
2527
- onValueChange: (m) => r(m),
2620
+ options: m,
2621
+ value: t ?? _e,
2622
+ onValueChange: (p) => r(p),
2528
2623
  placeholder: c("booking.operator.placeholder"),
2529
2624
  "aria-label": c("booking.operator.heading")
2530
2625
  }
2531
2626
  )
2532
2627
  ] });
2533
2628
  }
2534
- function Ls({
2629
+ function Rs({
2535
2630
  customSlot: e
2536
2631
  }) {
2537
- const { t } = G("ui");
2538
- return e ? /* @__PURE__ */ s(ne, { children: e }) : /* @__PURE__ */ v(ee, { variant: "warning", children: [
2539
- /* @__PURE__ */ s(ee.Title, { as: "h4", children: t("booking.onboardingIncomplete.title") }),
2540
- /* @__PURE__ */ s(ee.Description, { children: t("booking.onboardingIncomplete.description") })
2632
+ const { t } = W("ui");
2633
+ return e ? /* @__PURE__ */ s(ae, { children: e }) : /* @__PURE__ */ v(ie, { variant: "warning", children: [
2634
+ /* @__PURE__ */ s(ie.Title, { as: "h4", children: t("booking.onboardingIncomplete.title") }),
2635
+ /* @__PURE__ */ s(ie.Description, { children: t("booking.onboardingIncomplete.description") })
2541
2636
  ] });
2542
2637
  }
2543
- function es({
2638
+ function ts({
2544
2639
  nextAvailableDate: e,
2545
2640
  onJump: t,
2546
2641
  locale: n
2547
2642
  }) {
2548
- const { t: r } = G("ui"), i = R(() => {
2643
+ const { t: r } = W("ui"), i = L(() => {
2549
2644
  try {
2550
2645
  return new Intl.DateTimeFormat(n, { dateStyle: "long" }).format(
2551
- le(e)
2646
+ be(e)
2552
2647
  );
2553
2648
  } catch {
2554
2649
  return e;
2555
2650
  }
2556
2651
  }, [e, n]);
2557
- return /* @__PURE__ */ v(ee, { variant: "info", children: [
2558
- /* @__PURE__ */ s(ee.Description, { children: r("booking.nextAvailable.description", { date: i }) }),
2559
- /* @__PURE__ */ s(ee.Action, { children: /* @__PURE__ */ s(Xe, { intent: "secondary", size: "sm", onClick: t, children: r("booking.nextAvailable.cta") }) })
2652
+ return /* @__PURE__ */ v(ie, { variant: "info", children: [
2653
+ /* @__PURE__ */ s(ie.Description, { children: r("booking.nextAvailable.description", { date: i }) }),
2654
+ /* @__PURE__ */ s(ie.Action, { children: /* @__PURE__ */ s(et, { intent: "secondary", size: "sm", onClick: t, children: r("booking.nextAvailable.cta") }) })
2560
2655
  ] });
2561
2656
  }
2562
- function Ci({
2657
+ function Fi({
2563
2658
  payment: e,
2564
2659
  snapshot: t,
2565
2660
  operators: n,
2566
2661
  specialties: r,
2567
2662
  services: i,
2568
- locale: a,
2663
+ locale: o,
2569
2664
  mode: c,
2570
2665
  showModify: f,
2571
- onReset: p,
2572
- onModify: m,
2666
+ onReset: m,
2667
+ onModify: p,
2573
2668
  focusWasLost: g
2574
2669
  }) {
2575
- const { t: l } = G("ui"), o = E(null);
2576
- q(() => {
2577
- const A = o.current, D = document.activeElement, T = A == null ? void 0 : A.closest('[data-component="booking"]');
2578
- !e || !A || (D && (T != null && T.contains(D)) || g()) && A.focus();
2670
+ const { t: l } = W("ui"), a = _(null);
2671
+ K(() => {
2672
+ const C = a.current, O = document.activeElement, T = C == null ? void 0 : C.closest('[data-component="booking"]');
2673
+ !e || !C || (O && (T != null && T.contains(O)) || g()) && C.focus();
2579
2674
  }, []);
2580
- const k = (t.details.confirmationChannels ?? ["email"]).map(
2581
- (A) => l(`booking.confirmation.channel.${A}`)
2582
- ), I = e ? yt(e.amountCents, e.currencyCode, a) : "", N = e ? l(
2675
+ const y = (t.details.confirmationChannels ?? ["email"]).map(
2676
+ (C) => l(`booking.confirmation.channel.${C}`)
2677
+ ), x = e ? Pt(e.amountCents, e.currencyCode, o) : "", k = e ? l(
2583
2678
  c === "demo" ? "booking.payment.paidDemo" : "booking.payment.paidBody",
2584
- { amount: I }
2585
- ) : c === "demo" ? l("booking.success.descriptionDemo") : k.length > 1 ? l("booking.success.descriptionMultiple", {
2586
- channels: k.join(" · ")
2587
- }) : l("booking.success.descriptionSingle", { channel: k[0] }), M = R(() => {
2679
+ { amount: x }
2680
+ ) : c === "demo" ? l("booking.success.descriptionDemo") : y.length > 1 ? l("booking.success.descriptionMultiple", {
2681
+ channels: y.join(" · ")
2682
+ }) : l("booking.success.descriptionSingle", { channel: y[0] }), E = L(() => {
2588
2683
  if (t.date)
2589
2684
  try {
2590
- return new Intl.DateTimeFormat(a, {
2685
+ return new Intl.DateTimeFormat(o, {
2591
2686
  weekday: "long",
2592
2687
  day: "numeric",
2593
2688
  month: "long"
2594
- }).format(le(t.date));
2689
+ }).format(be(t.date));
2595
2690
  } catch {
2596
2691
  return t.date;
2597
2692
  }
2598
- }, [t.date, a]), w = R(() => {
2599
- const D = (t.operatorIds && t.operatorIds.length > 0 ? t.operatorIds : t.operatorId ? [t.operatorId] : []).filter((T) => T !== Ce).map((T) => {
2693
+ }, [t.date, o]), N = L(() => {
2694
+ const O = (t.operatorIds && t.operatorIds.length > 0 ? t.operatorIds : t.operatorId ? [t.operatorId] : []).filter((T) => T !== _e).map((T) => {
2600
2695
  var h;
2601
- return (h = n.find((C) => C.id === T)) == null ? void 0 : h.name;
2696
+ return (h = n.find((w) => w.id === T)) == null ? void 0 : h.name;
2602
2697
  }).filter((T) => T !== void 0);
2603
- if (D.length === 0) return "";
2698
+ if (O.length === 0) return "";
2604
2699
  try {
2605
- return new Intl.ListFormat(a === "en" ? "en-GB" : a, {
2700
+ return new Intl.ListFormat(o === "en" ? "en-GB" : o, {
2606
2701
  style: "long",
2607
2702
  type: "conjunction"
2608
- }).format(D);
2703
+ }).format(O);
2609
2704
  } catch {
2610
- return D.join(", ");
2705
+ return O.join(", ");
2611
2706
  }
2612
- }, [t.operatorIds, t.operatorId, n, a]), x = t.specialtyId ? r.find((A) => A.id === t.specialtyId) : void 0, S = t.serviceId ? i.find((A) => A.id === t.serviceId) : void 0;
2707
+ }, [t.operatorIds, t.operatorId, n, o]), S = t.specialtyId ? r.find((C) => C.id === t.specialtyId) : void 0, I = t.serviceId ? i.find((C) => C.id === t.serviceId) : void 0;
2613
2708
  return /* @__PURE__ */ v(
2614
2709
  "div",
2615
2710
  {
2616
2711
  "data-component": "booking-success",
2617
2712
  className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]",
2618
2713
  children: [
2619
- /* @__PURE__ */ v(ee, { variant: "success", children: [
2714
+ /* @__PURE__ */ v(ie, { variant: "success", children: [
2620
2715
  /* @__PURE__ */ s(
2621
- ee.Title,
2716
+ ie.Title,
2622
2717
  {
2623
2718
  as: "h3",
2624
- ref: o,
2719
+ ref: a,
2625
2720
  tabIndex: e ? -1 : void 0,
2626
- className: e ? Rt : void 0,
2721
+ className: e ? Bt : void 0,
2627
2722
  children: l(
2628
2723
  e ? c === "demo" ? "booking.payment.paidDemoTitle" : "booking.payment.paidTitle" : "booking.success.heading"
2629
2724
  )
2630
2725
  }
2631
2726
  ),
2632
- /* @__PURE__ */ s(ee.Description, { children: N })
2727
+ /* @__PURE__ */ s(ie.Description, { children: k })
2633
2728
  ] }),
2634
2729
  /* @__PURE__ */ s("div", { className: "ds:rounded-[var(--radius-md)] ds:bg-[var(--secondary)] ds:p-[var(--spacing-md)]", children: /* @__PURE__ */ v("dl", { className: "ds:grid ds:grid-cols-[auto_minmax(0,1fr)] ds:gap-x-[var(--spacing-md)] ds:gap-y-[var(--spacing-xs)] ds:m-0", children: [
2635
- e && c !== "demo" ? /* @__PURE__ */ v(ne, { children: [
2730
+ e && c !== "demo" ? /* @__PURE__ */ v(ae, { children: [
2636
2731
  /* @__PURE__ */ s("dt", { className: "type-label ds:text-[var(--muted-foreground)]", children: l("booking.payment.summaryPaid") }),
2637
- /* @__PURE__ */ s("dd", { className: "type-body ds:m-0 ds:text-[var(--foreground)]", children: I })
2732
+ /* @__PURE__ */ s("dd", { className: "type-body ds:m-0 ds:text-[var(--foreground)]", children: x })
2638
2733
  ] }) : null,
2639
- x ? /* @__PURE__ */ v(ne, { children: [
2734
+ S ? /* @__PURE__ */ v(ae, { children: [
2640
2735
  /* @__PURE__ */ s("dt", { className: "type-label ds:text-[var(--muted-foreground)]", children: l("booking.success.summarySpecialty") }),
2641
- /* @__PURE__ */ s("dd", { className: "type-body ds:m-0 ds:text-[var(--foreground)]", children: x.label })
2736
+ /* @__PURE__ */ s("dd", { className: "type-body ds:m-0 ds:text-[var(--foreground)]", children: S.label })
2642
2737
  ] }) : null,
2643
- S ? /* @__PURE__ */ v(ne, { children: [
2738
+ I ? /* @__PURE__ */ v(ae, { children: [
2644
2739
  /* @__PURE__ */ s("dt", { className: "type-label ds:text-[var(--muted-foreground)]", children: l("booking.success.summaryService") }),
2645
- /* @__PURE__ */ s("dd", { className: "type-body ds:m-0 ds:text-[var(--foreground)]", children: S.label })
2740
+ /* @__PURE__ */ s("dd", { className: "type-body ds:m-0 ds:text-[var(--foreground)]", children: I.label })
2646
2741
  ] }) : null,
2647
- M ? /* @__PURE__ */ v(ne, { children: [
2742
+ E ? /* @__PURE__ */ v(ae, { children: [
2648
2743
  /* @__PURE__ */ s("dt", { className: "type-label ds:text-[var(--muted-foreground)]", children: l("booking.success.summaryDate") }),
2649
- /* @__PURE__ */ s("dd", { className: "type-body ds:m-0 ds:text-[var(--foreground)]", children: M })
2744
+ /* @__PURE__ */ s("dd", { className: "type-body ds:m-0 ds:text-[var(--foreground)]", children: E })
2650
2745
  ] }) : null,
2651
2746
  /* @__PURE__ */ s("dt", { className: "type-label ds:text-[var(--muted-foreground)]", children: l("booking.success.summaryTime") }),
2652
2747
  /* @__PURE__ */ s("dd", { className: "type-body ds:m-0 ds:text-[var(--foreground)]", children: t.slot.time }),
2653
- w ? /* @__PURE__ */ v(ne, { children: [
2748
+ N ? /* @__PURE__ */ v(ae, { children: [
2654
2749
  /* @__PURE__ */ s("dt", { className: "type-label ds:text-[var(--muted-foreground)]", children: l("booking.success.summaryProvider") }),
2655
- /* @__PURE__ */ s("dd", { className: "type-body ds:m-0 ds:text-[var(--foreground)]", children: w })
2750
+ /* @__PURE__ */ s("dd", { className: "type-body ds:m-0 ds:text-[var(--foreground)]", children: N })
2656
2751
  ] }) : null
2657
2752
  ] }) }),
2658
2753
  /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-sm)]", children: [
2659
- /* @__PURE__ */ s(Xe, { intent: "secondary", size: "md", onClick: p, children: l("booking.success.bookAnother") }),
2660
- f ? /* @__PURE__ */ s(Xe, { intent: "ghost", size: "md", onClick: m, children: l("booking.success.modifyBooking") }) : null
2754
+ /* @__PURE__ */ s(et, { intent: "secondary", size: "md", onClick: m, children: l("booking.success.bookAnother") }),
2755
+ f ? /* @__PURE__ */ s(et, { intent: "ghost", size: "md", onClick: p, children: l("booking.success.modifyBooking") }) : null
2661
2756
  ] })
2662
2757
  ]
2663
2758
  }
2664
2759
  );
2665
2760
  }
2666
- function Bs({ customSlot: e }) {
2667
- const { t } = G("ui");
2668
- return e ? /* @__PURE__ */ s(ne, { children: e }) : /* @__PURE__ */ s(
2669
- fs,
2761
+ function Ps({ customSlot: e }) {
2762
+ const { t } = W("ui");
2763
+ return e ? /* @__PURE__ */ s(ae, { children: e }) : /* @__PURE__ */ s(
2764
+ hs,
2670
2765
  {
2671
2766
  variant: "no-results",
2672
2767
  title: t("booking.emptyServices.title"),
@@ -2674,14 +2769,14 @@ function Bs({ customSlot: e }) {
2674
2769
  }
2675
2770
  );
2676
2771
  }
2677
- const Es = "data-booking-step-active", Ai = `[${Es}]`, Rt = [
2772
+ const Vs = "data-booking-step-active", Mi = `[${Vs}]`, Bt = [
2678
2773
  "ds:focus-visible:outline-[length:var(--focus-ring-width)]",
2679
2774
  "ds:focus-visible:outline-solid",
2680
2775
  "ds:focus-visible:outline-[var(--ring)]",
2681
2776
  "ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
2682
2777
  "ds:forced-colors:focus-visible:outline-[CanvasText]"
2683
2778
  ].join(" ");
2684
- function U({
2779
+ function Y({
2685
2780
  step: e,
2686
2781
  active: t,
2687
2782
  className: n,
@@ -2693,255 +2788,255 @@ function U({
2693
2788
  {
2694
2789
  id: r,
2695
2790
  "data-booking-step": String(e),
2696
- ...t ? { [Es]: "" } : null,
2791
+ ...t ? { [Vs]: "" } : null,
2697
2792
  tabIndex: -1,
2698
- className: n ? `${n} ${Rt}` : Rt,
2793
+ className: n ? `${n} ${Bt}` : Bt,
2699
2794
  children: i
2700
2795
  }
2701
2796
  );
2702
2797
  }
2703
- function ts(e, t) {
2798
+ function ss(e, t) {
2704
2799
  return t === "four-day-grid" ? e.filter((n) => n !== 6) : e;
2705
2800
  }
2706
- function Ti(e) {
2801
+ function _i(e) {
2707
2802
  const {
2708
2803
  cascade: t,
2709
2804
  inputs: n,
2710
2805
  value: r,
2711
2806
  onChange: i,
2712
- onSubmit: a,
2807
+ onSubmit: o,
2713
2808
  emptyServicesSlot: c,
2714
2809
  onboardingIncompleteSlot: f,
2715
- loadingDates: p,
2716
- loadingSlots: m,
2810
+ loadingDates: m,
2811
+ loadingSlots: p,
2717
2812
  onDateSelect: g,
2718
2813
  onWindowChange: l,
2719
- datePickerStyle: o,
2814
+ datePickerStyle: a,
2720
2815
  specialtyPickerStyle: u,
2721
- servicePickerStyle: k,
2722
- showServiceDuration: I,
2723
- operatorPickerStyle: N,
2724
- submitting: M,
2725
- locale: w,
2726
- detailsProps: x,
2727
- agentIdBase: S,
2728
- activeStep: A
2729
- } = e, { t: D } = G("ui"), T = ct(A, o), h = (C, $) => ({
2730
- step: C,
2731
- active: C === T,
2816
+ servicePickerStyle: y,
2817
+ showServiceDuration: x,
2818
+ operatorPickerStyle: k,
2819
+ submitting: E,
2820
+ locale: N,
2821
+ detailsProps: S,
2822
+ agentIdBase: I,
2823
+ activeStep: C
2824
+ } = e, { t: O } = W("ui"), T = lt(C, a), h = (w, $) => ({
2825
+ step: w,
2826
+ active: w === T,
2732
2827
  className: $
2733
2828
  });
2734
2829
  return /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
2735
- t.gates.insurance ? /* @__PURE__ */ s(U, { ...h(1), children: /* @__PURE__ */ s(
2736
- Os,
2830
+ t.gates.insurance ? /* @__PURE__ */ s(Y, { ...h(1), children: /* @__PURE__ */ s(
2831
+ Ms,
2737
2832
  {
2738
2833
  value: r.insuranceType,
2739
- onChange: (C) => i(hs(r, C))
2834
+ onChange: (w) => i(bs(r, w))
2740
2835
  }
2741
2836
  ) }) : null,
2742
- t.gates.specialty ? /* @__PURE__ */ s(U, { ...h(2), children: /* @__PURE__ */ s(
2743
- Ms,
2837
+ t.gates.specialty ? /* @__PURE__ */ s(Y, { ...h(2), children: /* @__PURE__ */ s(
2838
+ _s,
2744
2839
  {
2745
2840
  specialties: t.filtered.specialties,
2746
2841
  value: r.specialtyId,
2747
2842
  valueIds: r.specialtyIds,
2748
- onChange: (C) => i(vs(r, C)),
2749
- onChangeIds: (C) => i(bs(r, C)),
2843
+ onChange: (w) => i(ys(r, w)),
2844
+ onChangeIds: (w) => i(ks(r, w)),
2750
2845
  pickerStyle: u
2751
2846
  }
2752
2847
  ) }) : null,
2753
- t.gates.service ? /* @__PURE__ */ s(U, { ...h(3), children: t.filtered.services.length === 0 ? /* @__PURE__ */ s(Bs, { customSlot: c }) : /* @__PURE__ */ s(
2754
- Fs,
2848
+ t.gates.service ? /* @__PURE__ */ s(Y, { ...h(3), children: t.filtered.services.length === 0 ? /* @__PURE__ */ s(Ps, { customSlot: c }) : /* @__PURE__ */ s(
2849
+ Ls,
2755
2850
  {
2756
2851
  services: t.filtered.services,
2757
2852
  value: r.serviceId,
2758
2853
  valueIds: r.serviceIds,
2759
- onChange: (C) => i(ys(r, C)),
2760
- onChangeIds: (C) => i(ks(r, C)),
2761
- pickerStyle: k,
2762
- showDuration: I
2854
+ onChange: (w) => i(Ss(r, w)),
2855
+ onChangeIds: (w) => i(xs(r, w)),
2856
+ pickerStyle: y,
2857
+ showDuration: x
2763
2858
  }
2764
2859
  ) }) : null,
2765
- t.gates.onboardingIncomplete ? /* @__PURE__ */ s(Ls, { customSlot: f }) : null,
2766
- t.gates.operator ? /* @__PURE__ */ s(U, { ...h(4), children: /* @__PURE__ */ s(
2767
- _s,
2860
+ t.gates.onboardingIncomplete ? /* @__PURE__ */ s(Rs, { customSlot: f }) : null,
2861
+ t.gates.operator ? /* @__PURE__ */ s(Y, { ...h(4), children: /* @__PURE__ */ s(
2862
+ Bs,
2768
2863
  {
2769
2864
  operators: t.filtered.operators,
2770
2865
  value: r.operatorId,
2771
2866
  valueIds: r.operatorIds,
2772
- onChange: (C) => i(Ss(r, C)),
2773
- onChangeIds: (C) => i(xs(r, C)),
2774
- pickerStyle: N
2867
+ onChange: (w) => i(Is(r, w)),
2868
+ onChangeIds: (w) => i(Ns(r, w)),
2869
+ pickerStyle: k
2775
2870
  }
2776
2871
  ) }) : null,
2777
2872
  t.gates.date ? /* @__PURE__ */ v(
2778
- U,
2873
+ Y,
2779
2874
  {
2780
2875
  ...h(5, "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]"),
2781
2876
  children: [
2782
- /* @__PURE__ */ s("h3", { className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)] ds:m-0", children: D("booking.date.heading") }),
2877
+ /* @__PURE__ */ s("h3", { className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)] ds:m-0", children: O("booking.date.heading") }),
2783
2878
  n.availableDates.length === 0 && n.nextAvailableDate ? /* @__PURE__ */ s(
2784
- es,
2879
+ ts,
2785
2880
  {
2786
2881
  nextAvailableDate: n.nextAvailableDate,
2787
2882
  onJump: () => i($t(r, n.nextAvailableDate)),
2788
- locale: w
2883
+ locale: N
2789
2884
  }
2790
- ) : Ts({
2885
+ ) : Es({
2791
2886
  inputs: n,
2792
2887
  value: r,
2793
2888
  onChange: i,
2794
2889
  onDateSelect: g,
2795
2890
  onWindowChange: l,
2796
- loadingDates: p,
2797
- loadingSlots: m,
2798
- locale: w,
2799
- datePickerStyle: o,
2800
- agentIdBase: S
2891
+ loadingDates: m,
2892
+ loadingSlots: p,
2893
+ locale: N,
2894
+ datePickerStyle: a,
2895
+ agentIdBase: I
2801
2896
  })
2802
2897
  ]
2803
2898
  }
2804
2899
  ) : null,
2805
- t.gates.slot && r.date && o === "month-calendar" ? /* @__PURE__ */ v(
2806
- U,
2900
+ t.gates.slot && r.date && a === "month-calendar" ? /* @__PURE__ */ v(
2901
+ Y,
2807
2902
  {
2808
2903
  ...h(6, "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]"),
2809
2904
  children: [
2810
- /* @__PURE__ */ s("h3", { className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)] ds:m-0", children: D("booking.slot.heading") }),
2811
- Ds({
2905
+ /* @__PURE__ */ s("h3", { className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)] ds:m-0", children: O("booking.slot.heading") }),
2906
+ Fs({
2812
2907
  inputs: n,
2813
2908
  value: r,
2814
2909
  onChange: i,
2815
- loadingSlots: m,
2816
- locale: w,
2817
- datePickerStyle: o
2910
+ loadingSlots: p,
2911
+ locale: N,
2912
+ datePickerStyle: a
2818
2913
  })
2819
2914
  ]
2820
2915
  }
2821
2916
  ) : null,
2822
- t.gates.details && t.selectedSlot ? /* @__PURE__ */ s(U, { ...h(7), children: /* @__PURE__ */ s(
2823
- Xt,
2917
+ t.gates.details && t.selectedSlot ? /* @__PURE__ */ s(Y, { ...h(7), children: /* @__PURE__ */ s(
2918
+ es,
2824
2919
  {
2825
- ...x,
2920
+ ...S,
2826
2921
  value: r.details ?? {},
2827
- onChange: (C) => i({ ...r, details: C }),
2828
- onSubmit: a,
2829
- submitting: M,
2922
+ onChange: (w) => i({ ...r, details: w }),
2923
+ onSubmit: o,
2924
+ submitting: E,
2830
2925
  defaultPhoneCountry: e.policy.country
2831
2926
  }
2832
2927
  ) }) : null
2833
2928
  ] });
2834
2929
  }
2835
- function ye(e, t, n = {}) {
2930
+ function Te(e, t, n = {}) {
2836
2931
  const {
2837
2932
  cascade: r,
2838
2933
  inputs: i,
2839
- value: a,
2934
+ value: o,
2840
2935
  onChange: c,
2841
2936
  onSubmit: f,
2842
- emptyServicesSlot: p,
2843
- onboardingIncompleteSlot: m,
2937
+ emptyServicesSlot: m,
2938
+ onboardingIncompleteSlot: p,
2844
2939
  loadingDates: g,
2845
2940
  loadingSlots: l,
2846
- onDateSelect: o,
2941
+ onDateSelect: a,
2847
2942
  onWindowChange: u,
2848
- datePickerStyle: k,
2849
- specialtyPickerStyle: I,
2850
- servicePickerStyle: N,
2851
- showServiceDuration: M,
2852
- operatorPickerStyle: w,
2853
- submitting: x,
2854
- locale: S,
2855
- detailsProps: A,
2856
- policy: D,
2943
+ datePickerStyle: y,
2944
+ specialtyPickerStyle: x,
2945
+ servicePickerStyle: k,
2946
+ showServiceDuration: E,
2947
+ operatorPickerStyle: N,
2948
+ submitting: S,
2949
+ locale: I,
2950
+ detailsProps: C,
2951
+ policy: O,
2857
2952
  agentIdBase: T
2858
2953
  } = t;
2859
2954
  switch (e) {
2860
2955
  case 1:
2861
2956
  return /* @__PURE__ */ s(
2862
- Os,
2957
+ Ms,
2863
2958
  {
2864
- value: a.insuranceType,
2865
- onChange: (h) => c(hs(a, h))
2959
+ value: o.insuranceType,
2960
+ onChange: (h) => c(bs(o, h))
2866
2961
  }
2867
2962
  );
2868
2963
  case 2:
2869
2964
  return /* @__PURE__ */ s(
2870
- Ms,
2965
+ _s,
2871
2966
  {
2872
2967
  specialties: r.filtered.specialties,
2873
- value: a.specialtyId,
2874
- valueIds: a.specialtyIds,
2875
- onChange: (h) => c(vs(a, h)),
2876
- onChangeIds: (h) => c(bs(a, h)),
2877
- pickerStyle: I
2968
+ value: o.specialtyId,
2969
+ valueIds: o.specialtyIds,
2970
+ onChange: (h) => c(ys(o, h)),
2971
+ onChangeIds: (h) => c(ks(o, h)),
2972
+ pickerStyle: x
2878
2973
  }
2879
2974
  );
2880
2975
  case 3:
2881
- return r.filtered.services.length === 0 ? /* @__PURE__ */ s(Bs, { customSlot: p }) : r.gates.onboardingIncomplete ? /* @__PURE__ */ s(Ls, { customSlot: m }) : /* @__PURE__ */ s(
2882
- Fs,
2976
+ return r.filtered.services.length === 0 ? /* @__PURE__ */ s(Ps, { customSlot: m }) : r.gates.onboardingIncomplete ? /* @__PURE__ */ s(Rs, { customSlot: p }) : /* @__PURE__ */ s(
2977
+ Ls,
2883
2978
  {
2884
2979
  services: r.filtered.services,
2885
- value: a.serviceId,
2886
- valueIds: a.serviceIds,
2887
- onChange: (h) => c(ys(a, h)),
2888
- onChangeIds: (h) => c(ks(a, h)),
2889
- pickerStyle: N,
2980
+ value: o.serviceId,
2981
+ valueIds: o.serviceIds,
2982
+ onChange: (h) => c(Ss(o, h)),
2983
+ onChangeIds: (h) => c(xs(o, h)),
2984
+ pickerStyle: k,
2890
2985
  compact: n.compactService,
2891
- showDuration: M
2986
+ showDuration: E
2892
2987
  }
2893
2988
  );
2894
2989
  case 4:
2895
2990
  return /* @__PURE__ */ s(
2896
- _s,
2991
+ Bs,
2897
2992
  {
2898
2993
  operators: r.filtered.operators,
2899
- value: a.operatorId,
2900
- valueIds: a.operatorIds,
2901
- onChange: (h) => c(Ss(a, h)),
2902
- onChangeIds: (h) => c(xs(a, h)),
2903
- pickerStyle: w
2994
+ value: o.operatorId,
2995
+ valueIds: o.operatorIds,
2996
+ onChange: (h) => c(Is(o, h)),
2997
+ onChangeIds: (h) => c(Ns(o, h)),
2998
+ pickerStyle: N
2904
2999
  }
2905
3000
  );
2906
3001
  case 5:
2907
3002
  return i.availableDates.length === 0 && i.nextAvailableDate ? /* @__PURE__ */ s(
2908
- es,
3003
+ ts,
2909
3004
  {
2910
3005
  nextAvailableDate: i.nextAvailableDate,
2911
- onJump: () => c($t(a, i.nextAvailableDate)),
2912
- locale: S
3006
+ onJump: () => c($t(o, i.nextAvailableDate)),
3007
+ locale: I
2913
3008
  }
2914
- ) : Ts({
3009
+ ) : Es({
2915
3010
  inputs: i,
2916
- value: a,
3011
+ value: o,
2917
3012
  onChange: c,
2918
- onDateSelect: o,
3013
+ onDateSelect: a,
2919
3014
  onWindowChange: u,
2920
3015
  loadingDates: g,
2921
3016
  loadingSlots: l,
2922
- locale: S,
2923
- datePickerStyle: k,
3017
+ locale: I,
3018
+ datePickerStyle: y,
2924
3019
  agentIdBase: T
2925
3020
  });
2926
3021
  case 6:
2927
- return Ds({
3022
+ return Fs({
2928
3023
  inputs: i,
2929
- value: a,
3024
+ value: o,
2930
3025
  onChange: c,
2931
3026
  loadingSlots: l,
2932
- locale: S,
2933
- datePickerStyle: k
3027
+ locale: I,
3028
+ datePickerStyle: y
2934
3029
  });
2935
3030
  case 7:
2936
3031
  return r.selectedSlot ? /* @__PURE__ */ s(
2937
- Xt,
3032
+ es,
2938
3033
  {
2939
- ...A,
2940
- value: a.details ?? {},
2941
- onChange: (h) => c({ ...a, details: h }),
3034
+ ...C,
3035
+ value: o.details ?? {},
3036
+ onChange: (h) => c({ ...o, details: h }),
2942
3037
  onSubmit: f,
2943
- submitting: x,
2944
- defaultPhoneCountry: D.country
3038
+ submitting: S,
3039
+ defaultPhoneCountry: O.country
2945
3040
  }
2946
3041
  ) : null;
2947
3042
  /* c8 ignore next 2 */
@@ -2950,8 +3045,8 @@ function ye(e, t, n = {}) {
2950
3045
  }
2951
3046
  }
2952
3047
  function qt() {
2953
- const { t: e } = G("ui");
2954
- return R(
3048
+ const { t: e } = W("ui");
3049
+ return L(
2955
3050
  () => ({
2956
3051
  1: e("booking.insurance.heading"),
2957
3052
  2: e("booking.specialty.heading"),
@@ -2964,74 +3059,74 @@ function qt() {
2964
3059
  [e]
2965
3060
  );
2966
3061
  }
2967
- function ct(e, t) {
3062
+ function lt(e, t) {
2968
3063
  return t === "four-day-grid" && e === 6 ? 5 : e;
2969
3064
  }
2970
- function Di(e) {
2971
- const { cascade: t, value: n, activeStep: r, setActiveStep: i, datePickerStyle: a } = e, c = qt(), { t: f } = G("ui"), p = f("booking.operator.all"), m = R(
2972
- () => ts(t.visibleSteps, a),
2973
- [t.visibleSteps, a]
2974
- ), g = ct(r, a), l = Math.max(0, m.indexOf(g)), o = R(
2975
- () => m.map((u) => ({
3065
+ function Li(e) {
3066
+ const { cascade: t, value: n, activeStep: r, setActiveStep: i, datePickerStyle: o } = e, c = qt(), { t: f } = W("ui"), m = f("booking.operator.all"), p = L(
3067
+ () => ss(t.visibleSteps, o),
3068
+ [t.visibleSteps, o]
3069
+ ), g = lt(r, o), l = Math.max(0, p.indexOf(g)), a = L(
3070
+ () => p.map((u) => ({
2976
3071
  label: c[u],
2977
- summary: Rs(u, n, t, p),
2978
- status: Oi(u, n, t),
2979
- content: /* @__PURE__ */ s(U, { step: u, active: u === g, children: ye(u, e, { compactService: !0 }) })
3072
+ summary: $s(u, n, t, m),
3073
+ status: Bi(u, n, t),
3074
+ content: /* @__PURE__ */ s(Y, { step: u, active: u === g, children: Te(u, e, { compactService: !0 }) })
2980
3075
  })),
2981
3076
  [
2982
- m,
3077
+ p,
2983
3078
  n,
2984
3079
  c,
2985
3080
  t,
2986
3081
  e,
2987
3082
  g,
2988
- p
3083
+ m
2989
3084
  ]
2990
3085
  );
2991
3086
  return /* @__PURE__ */ s(
2992
- Ws,
3087
+ Xs,
2993
3088
  {
2994
3089
  activeStep: l,
2995
- steps: o,
3090
+ steps: a,
2996
3091
  onStepChange: (u) => {
2997
- const k = m[u];
2998
- k && i(k);
3092
+ const y = p[u];
3093
+ y && i(y);
2999
3094
  }
3000
3095
  }
3001
3096
  );
3002
3097
  }
3003
- function Oi(e, t, n) {
3004
- return Fe(e, t) && e < n.currentStep ? "completed" : e <= n.currentStep ? "unlocked" : void 0;
3098
+ function Bi(e, t, n) {
3099
+ return $e(e, t) && e < n.currentStep ? "completed" : e <= n.currentStep ? "unlocked" : void 0;
3005
3100
  }
3006
- function ds(e, t) {
3007
- return e !== 4 ? Fe(e, t) : t.operatorIds && t.operatorIds.length > 0 ? !0 : Ns(t) !== void 0;
3101
+ function us(e, t) {
3102
+ return e !== 4 ? $e(e, t) : t.operatorIds && t.operatorIds.length > 0 ? !0 : Cs(t) !== void 0;
3008
3103
  }
3009
- function Ht(e, t) {
3104
+ function Wt(e, t) {
3010
3105
  const n = e.map((r) => {
3011
3106
  var i;
3012
- return (i = t.find((a) => a.id === r)) == null ? void 0 : i.label;
3107
+ return (i = t.find((o) => o.id === r)) == null ? void 0 : i.label;
3013
3108
  }).filter((r) => r !== void 0);
3014
3109
  return n.length > 0 ? n.join(", ") : void 0;
3015
3110
  }
3016
- function Rs(e, t, n, r) {
3111
+ function $s(e, t, n, r) {
3017
3112
  var i;
3018
- if (Fe(e, t))
3113
+ if ($e(e, t))
3019
3114
  switch (e) {
3020
3115
  case 1:
3021
3116
  return t.insuranceType;
3022
3117
  case 2:
3023
- return Ht(
3024
- Ge(t),
3118
+ return Wt(
3119
+ Je(t),
3025
3120
  n.filtered.specialties
3026
3121
  );
3027
3122
  case 3:
3028
- return Ht(_e(t), n.filtered.services);
3123
+ return Wt(qe(t), n.filtered.services);
3029
3124
  case 4: {
3030
- const c = Wt(t).filter((p) => p !== Ce), f = Ht(
3125
+ const c = Zt(t).filter((m) => m !== _e), f = Wt(
3031
3126
  c,
3032
- n.filtered.operators.map((p) => ({
3033
- id: p.id,
3034
- label: p.name
3127
+ n.filtered.operators.map((m) => ({
3128
+ id: m.id,
3129
+ label: m.name
3035
3130
  }))
3036
3131
  );
3037
3132
  return f !== void 0 ? f : c.length === 0 ? r : void 0;
@@ -3044,50 +3139,50 @@ function Rs(e, t, n, r) {
3044
3139
  return;
3045
3140
  }
3046
3141
  }
3047
- function Mi(e) {
3048
- const { cascade: t, value: n, activeStep: r, setActiveStep: i } = e, { t: a } = G("ui"), c = qt(), f = a("booking.operator.all"), p = `${Pt()}-filter`, m = ct(r, e.datePickerStyle), g = t.visibleSteps.filter(
3142
+ function Ri(e) {
3143
+ const { cascade: t, value: n, activeStep: r, setActiveStep: i } = e, { t: o } = W("ui"), c = qt(), f = o("booking.operator.all"), m = `${Rt()}-filter`, p = lt(r, e.datePickerStyle), g = t.visibleSteps.filter(
3049
3144
  (u) => u === 1 || u === 2 || u === 3 || u === 4
3050
3145
  ), l = g.some(
3051
- (u) => !Fe(u, n)
3052
- ), o = g.some(
3146
+ (u) => !$e(u, n)
3147
+ ), a = g.some(
3053
3148
  (u) => u === r
3054
- ) ? r : g.find((u) => !Fe(u, n));
3149
+ ) ? r : g.find((u) => !$e(u, n));
3055
3150
  return /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
3056
3151
  g.length > 0 ? /* @__PURE__ */ s(
3057
3152
  "div",
3058
3153
  {
3059
3154
  role: "group",
3060
- "aria-label": a("booking.filtersLabel"),
3155
+ "aria-label": o("booking.filtersLabel"),
3061
3156
  className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]",
3062
3157
  children: g.map((u) => {
3063
- const k = Rs(
3158
+ const y = $s(
3064
3159
  u,
3065
3160
  n,
3066
3161
  t,
3067
3162
  f
3068
- ), I = u === o, N = Fe(u, n);
3163
+ ), x = u === a, k = $e(u, n);
3069
3164
  return /* @__PURE__ */ s(
3070
- Xe,
3165
+ et,
3071
3166
  {
3072
- intent: I ? "primary" : "outline",
3167
+ intent: x ? "primary" : "outline",
3073
3168
  size: "sm",
3074
3169
  endIcon: /* @__PURE__ */ s(
3075
- Xs,
3170
+ sn,
3076
3171
  {
3077
3172
  "aria-hidden": "true",
3078
- className: I ? "ds:rotate-180" : void 0
3173
+ className: x ? "ds:rotate-180" : void 0
3079
3174
  }
3080
3175
  ),
3081
- "aria-expanded": N ? I : void 0,
3082
- "aria-controls": N && I ? p : void 0,
3083
- "aria-current": !N && I ? "step" : void 0,
3176
+ "aria-expanded": k ? x : void 0,
3177
+ "aria-controls": k && x ? m : void 0,
3178
+ "aria-current": !k && x ? "step" : void 0,
3084
3179
  onClick: () => i(
3085
- N && I ? t.currentStep : u
3180
+ k && x ? t.currentStep : u
3086
3181
  ),
3087
- children: k ? /* @__PURE__ */ v(ne, { children: [
3182
+ children: y ? /* @__PURE__ */ v(ae, { children: [
3088
3183
  c[u],
3089
3184
  ": ",
3090
- k
3185
+ y
3091
3186
  ] }) : c[u]
3092
3187
  },
3093
3188
  `csc-${u}`
@@ -3095,13 +3190,13 @@ function Mi(e) {
3095
3190
  })
3096
3191
  }
3097
3192
  ) : null,
3098
- o !== void 0 ? /* @__PURE__ */ s(
3099
- U,
3193
+ a !== void 0 ? /* @__PURE__ */ s(
3194
+ Y,
3100
3195
  {
3101
- step: o,
3102
- active: o === m,
3103
- id: p,
3104
- children: ye(o, e, { compactService: !0 })
3196
+ step: a,
3197
+ active: a === p,
3198
+ id: m,
3199
+ children: Te(a, e, { compactService: !0 })
3105
3200
  }
3106
3201
  ) : null,
3107
3202
  !l && t.gates.date ? (
@@ -3109,32 +3204,32 @@ function Mi(e) {
3109
3204
  // historic 2-col date|slot split collapses to a single column
3110
3205
  // so the picker spans the full width instead of orphaning an
3111
3206
  // empty right cell.
3112
- e.datePickerStyle === "four-day-grid" ? /* @__PURE__ */ s(U, { step: 5, active: m === 5, children: ye(5, e) }) : /* @__PURE__ */ v("div", { className: "ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-md)] ds:md:grid-cols-2", children: [
3207
+ e.datePickerStyle === "four-day-grid" ? /* @__PURE__ */ s(Y, { step: 5, active: p === 5, children: Te(5, e) }) : /* @__PURE__ */ v("div", { className: "ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-md)] ds:md:grid-cols-2", children: [
3113
3208
  /* @__PURE__ */ s(
3114
- U,
3209
+ Y,
3115
3210
  {
3116
3211
  step: 5,
3117
- active: m === 5,
3212
+ active: p === 5,
3118
3213
  className: "ds:min-w-0",
3119
- children: ye(5, e)
3214
+ children: Te(5, e)
3120
3215
  }
3121
3216
  ),
3122
3217
  n.date ? /* @__PURE__ */ s(
3123
- U,
3218
+ Y,
3124
3219
  {
3125
3220
  step: 6,
3126
- active: m === 6,
3221
+ active: p === 6,
3127
3222
  className: "ds:min-w-0",
3128
- children: ye(6, e)
3223
+ children: Te(6, e)
3129
3224
  }
3130
3225
  ) : /* @__PURE__ */ s("div", { className: "ds:min-w-0" })
3131
3226
  ] })
3132
3227
  ) : null,
3133
- t.gates.details ? /* @__PURE__ */ s(U, { step: 7, active: m === 7, children: ye(7, e) }) : null
3228
+ t.gates.details ? /* @__PURE__ */ s(Y, { step: 7, active: p === 7, children: Te(7, e) }) : null
3134
3229
  ] });
3135
3230
  }
3136
- function Fi(e) {
3137
- const { cascade: t, datePickerStyle: n, activeStep: r } = e, i = ct(r, n), a = t.visibleSteps.filter(
3231
+ function Pi(e) {
3232
+ const { cascade: t, datePickerStyle: n, activeStep: r } = e, i = lt(r, n), o = t.visibleSteps.filter(
3138
3233
  (f) => f === 1 || f === 2 || f === 3 || f === 4
3139
3234
  );
3140
3235
  return /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
@@ -3143,51 +3238,51 @@ function Fi(e) {
3143
3238
  {
3144
3239
  className: n === "four-day-grid" ? "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]" : "ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-md)] ds:md:grid-cols-2",
3145
3240
  children: [
3146
- /* @__PURE__ */ s("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: a.map((f) => /* @__PURE__ */ s(U, { step: f, active: f === i, children: ye(f, e, { compactService: !0 }) }, `fbf-${f}`)) }),
3241
+ /* @__PURE__ */ s("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: o.map((f) => /* @__PURE__ */ s(Y, { step: f, active: f === i, children: Te(f, e, { compactService: !0 }) }, `fbf-${f}`)) }),
3147
3242
  /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
3148
- t.gates.date ? /* @__PURE__ */ s(U, { step: 5, active: i === 5, children: ye(5, e) }) : null,
3149
- t.gates.slot && e.value.date && n === "month-calendar" ? /* @__PURE__ */ s(U, { step: 6, active: i === 6, children: ye(6, e) }) : null
3243
+ t.gates.date ? /* @__PURE__ */ s(Y, { step: 5, active: i === 5, children: Te(5, e) }) : null,
3244
+ t.gates.slot && e.value.date && n === "month-calendar" ? /* @__PURE__ */ s(Y, { step: 6, active: i === 6, children: Te(6, e) }) : null
3150
3245
  ] })
3151
3246
  ]
3152
3247
  }
3153
3248
  ),
3154
- t.gates.details ? /* @__PURE__ */ s(U, { step: 7, active: i === 7, children: ye(7, e) }) : null
3249
+ t.gates.details ? /* @__PURE__ */ s(Y, { step: 7, active: i === 7, children: Te(7, e) }) : null
3155
3250
  ] });
3156
3251
  }
3157
- function _i(e) {
3158
- const { cascade: t, value: n, activeStep: r, setActiveStep: i, datePickerStyle: a } = e, { t: c } = G("ui"), f = qt(), p = R(
3159
- () => ts(t.visibleSteps, a),
3160
- [t.visibleSteps, a]
3161
- ), m = ct(r, a), g = Math.max(0, p.indexOf(m)), l = p.length, o = R(
3162
- () => p.map((N) => ({ label: f[N] })),
3163
- [p, f]
3164
- ), u = g > 0, k = m === 5 && a === "four-day-grid", I = g < l - 1 && Fe(m, n) && (!k || Fe(6, n));
3252
+ function Vi(e) {
3253
+ const { cascade: t, value: n, activeStep: r, setActiveStep: i, datePickerStyle: o } = e, { t: c } = W("ui"), f = qt(), m = L(
3254
+ () => ss(t.visibleSteps, o),
3255
+ [t.visibleSteps, o]
3256
+ ), p = lt(r, o), g = Math.max(0, m.indexOf(p)), l = m.length, a = L(
3257
+ () => m.map((k) => ({ label: f[k] })),
3258
+ [m, f]
3259
+ ), u = g > 0, y = p === 5 && o === "four-day-grid", x = g < l - 1 && $e(p, n) && (!y || $e(6, n));
3165
3260
  return /* @__PURE__ */ v("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
3166
- /* @__PURE__ */ s(Ys, { activeStep: g, steps: o }),
3167
- /* @__PURE__ */ s(U, { step: m, active: !0, children: ye(m, e, { compactService: !0 }) }),
3261
+ /* @__PURE__ */ s(en, { activeStep: g, steps: a }),
3262
+ /* @__PURE__ */ s(Y, { step: p, active: !0, children: Te(p, e, { compactService: !0 }) }),
3168
3263
  /* @__PURE__ */ v("div", { className: "ds:flex ds:items-center ds:justify-between ds:gap-[var(--spacing-sm)]", children: [
3169
3264
  /* @__PURE__ */ s(
3170
- Xe,
3265
+ et,
3171
3266
  {
3172
3267
  intent: "ghost",
3173
3268
  size: "md",
3174
3269
  disabled: !u,
3175
3270
  onClick: () => {
3176
- const N = p[g - 1];
3177
- N && i(N);
3271
+ const k = m[g - 1];
3272
+ k && i(k);
3178
3273
  },
3179
3274
  children: c("booking.actions.back")
3180
3275
  }
3181
3276
  ),
3182
- m < 7 ? /* @__PURE__ */ s(
3183
- Xe,
3277
+ p < 7 ? /* @__PURE__ */ s(
3278
+ et,
3184
3279
  {
3185
3280
  intent: "primary",
3186
3281
  size: "md",
3187
- disabled: !I,
3282
+ disabled: !x,
3188
3283
  onClick: () => {
3189
- const N = p[g + 1];
3190
- N && i(N);
3284
+ const k = m[g + 1];
3285
+ k && i(k);
3191
3286
  },
3192
3287
  children: c("booking.actions.next")
3193
3288
  }
@@ -3195,11 +3290,11 @@ function _i(e) {
3195
3290
  ] })
3196
3291
  ] });
3197
3292
  }
3198
- const Li = [], Bi = [];
3199
- function ls() {
3293
+ const $i = [], qi = [];
3294
+ function ps() {
3200
3295
  return typeof window < "u" && typeof window.matchMedia == "function" && window.matchMedia("(prefers-reduced-motion: reduce)").matches;
3201
3296
  }
3202
- const Ei = us(
3297
+ const Ki = ms(
3203
3298
  ({
3204
3299
  variant: e = "inline-list",
3205
3300
  country: t,
@@ -3209,483 +3304,483 @@ const Ei = us(
3209
3304
  useSpecialties: n,
3210
3305
  allowOperatorSelection: r = !1,
3211
3306
  lockedOperatorId: i,
3212
- operatorsByService: a = !1,
3307
+ operatorsByService: o = !1,
3213
3308
  autoSelectSingleService: c = !1,
3214
3309
  specialties: f,
3215
- services: p,
3216
- operators: m,
3310
+ services: m,
3311
+ operators: p,
3217
3312
  availableDates: g,
3218
3313
  availableSlots: l,
3219
- nextAvailableDate: o,
3314
+ nextAvailableDate: a,
3220
3315
  requireCodiceFiscale: u,
3221
- requireDateOfBirth: k,
3222
- requireInsuranceNumber: I,
3223
- billingInDetails: N = !1,
3224
- paymentNoticeStyle: M = "plain",
3225
- showNote: w,
3226
- showReturningPatientFlag: x,
3227
- privacyPolicyUrl: S,
3228
- termsUrl: A,
3229
- practiceConsent: D,
3316
+ requireDateOfBirth: y,
3317
+ requireInsuranceNumber: x,
3318
+ billingInDetails: k = !1,
3319
+ paymentNoticeStyle: E = "highlighted",
3320
+ showNote: N,
3321
+ showReturningPatientFlag: S,
3322
+ privacyPolicyUrl: I,
3323
+ termsUrl: C,
3324
+ practiceConsent: O,
3230
3325
  paymentTermsUrl: T,
3231
3326
  paymentState: h,
3232
- renderPayment: C,
3327
+ renderPayment: w,
3233
3328
  renderPaymentCompletion: $,
3234
3329
  validateCodiceFiscale: b,
3235
- validateInsuranceNumber: pe,
3330
+ validateInsuranceNumber: ke,
3236
3331
  confirmationChannels: F,
3237
- defaultConfirmationChannels: z,
3238
- value: _,
3239
- onChange: me,
3240
- onSubmit: dt,
3332
+ defaultConfirmationChannels: G,
3333
+ value: M,
3334
+ onChange: Se,
3335
+ onSubmit: ut,
3241
3336
  onStepChange: fe,
3242
- onDateSelect: He,
3243
- onWindowChange: Le,
3244
- datePickerStyle: H = "month-calendar",
3245
- specialtyPickerStyle: Be,
3246
- servicePickerStyle: ge,
3247
- showServiceDuration: J = !0,
3248
- operatorPickerStyle: ae,
3249
- loadingDates: he,
3250
- loadingSlots: Se,
3251
- submitting: W,
3252
- submitError: Ae,
3253
- mode: ie = "live",
3254
- showModifyOnSuccess: oe = !0,
3255
- surface: te = "flat",
3256
- emptyServicesSlot: L,
3257
- onboardingIncompleteSlot: xe,
3258
- "aria-label": Kt,
3259
- id: Ee,
3260
- className: kt,
3261
- onFocus: Qe,
3262
- onBlur: Re,
3263
- ...Ie
3264
- }, zt) => {
3265
- var gt, d, O;
3266
- const { t: Z, i18n: St } = G("ui"), se = e ?? "inline-list", Te = St.language ?? "en", Ne = f ?? Li, ve = m ?? Bi;
3267
- q(() => {
3268
- const y = jn(_, {
3337
+ onDateSelect: We,
3338
+ onWindowChange: Ke,
3339
+ datePickerStyle: Z = "month-calendar",
3340
+ specialtyPickerStyle: ze,
3341
+ servicePickerStyle: ce,
3342
+ showServiceDuration: X = !0,
3343
+ operatorPickerStyle: ge,
3344
+ loadingDates: xe,
3345
+ loadingSlots: De,
3346
+ submitting: ee,
3347
+ submitError: Le,
3348
+ mode: de = "live",
3349
+ showModifyOnSuccess: Be = !0,
3350
+ surface: Ie = "flat",
3351
+ emptyServicesSlot: Q,
3352
+ onboardingIncompleteSlot: je,
3353
+ "aria-label": q,
3354
+ id: le,
3355
+ className: Kt,
3356
+ onFocus: tt,
3357
+ onBlur: st,
3358
+ ...Nt
3359
+ }, nt) => {
3360
+ var At, kt, St;
3361
+ const { t: z, i18n: zt } = W("ui"), ue = e ?? "inline-list", Ye = zt.language ?? "en", Ne = f ?? $i, Ee = p ?? qi;
3362
+ K(() => {
3363
+ const A = Jn(M, {
3269
3364
  useSpecialties: n,
3270
3365
  lockedOperatorId: i,
3271
3366
  autoSelectSingleService: c,
3272
3367
  specialties: Ne,
3273
- services: p
3368
+ services: m
3274
3369
  });
3275
- (y.specialtyId !== _.specialtyId || y.operatorId !== _.operatorId || y.serviceId !== _.serviceId) && me(y);
3370
+ (A.specialtyId !== M.specialtyId || A.operatorId !== M.operatorId || A.serviceId !== M.serviceId) && Se(A);
3276
3371
  }, [
3277
3372
  i,
3278
3373
  n,
3279
3374
  c,
3280
3375
  Ne,
3281
- p
3376
+ m
3282
3377
  ]);
3283
- const B = R(
3284
- () => zn({
3378
+ const P = L(
3379
+ () => Gn({
3285
3380
  country: t,
3286
3381
  useSpecialties: n,
3287
3382
  allowOperatorSelection: r,
3288
3383
  lockedOperatorId: i,
3289
- operatorsByService: a,
3384
+ operatorsByService: o,
3290
3385
  specialties: Ne,
3291
- services: p,
3292
- operators: ve,
3386
+ services: m,
3387
+ operators: Ee,
3293
3388
  availableSlots: l,
3294
- value: _
3389
+ value: M
3295
3390
  }),
3296
3391
  [
3297
3392
  t,
3298
3393
  n,
3299
3394
  r,
3300
3395
  i,
3301
- a,
3396
+ o,
3302
3397
  c,
3303
3398
  Ne,
3304
- p,
3305
- ve,
3399
+ m,
3400
+ Ee,
3306
3401
  g,
3307
3402
  l,
3308
- _
3403
+ M
3309
3404
  ]
3310
- ), et = R(
3405
+ ), we = L(
3311
3406
  () => [
3312
- JSON.stringify(_.insuranceType),
3313
- JSON.stringify(Ge(_)),
3314
- JSON.stringify(_e(_)),
3315
- JSON.stringify(Wt(_)),
3316
- JSON.stringify(_.date),
3317
- JSON.stringify(_.slotKey)
3407
+ JSON.stringify(M.insuranceType),
3408
+ JSON.stringify(Je(M)),
3409
+ JSON.stringify(qe(M)),
3410
+ JSON.stringify(Zt(M)),
3411
+ JSON.stringify(M.date),
3412
+ JSON.stringify(M.slotKey)
3318
3413
  ],
3319
- [_]
3320
- ), Je = se === "progress", We = ue(
3321
- (y) => {
3322
- if (y === 4 && B.visibleSteps.includes(4) && Wt(_).length === 0)
3323
- return Math.min(4, B.currentStep);
3324
- if (!Je) return B.currentStep;
3325
- const P = B.visibleSteps.find(
3326
- (V) => V > y && !ds(V, _)
3414
+ [M]
3415
+ ), he = ue === "progress", wt = ye(
3416
+ (A) => {
3417
+ if (A === 4 && P.visibleSteps.includes(4) && Zt(M).length === 0)
3418
+ return Math.min(4, P.currentStep);
3419
+ if (!he) return P.currentStep;
3420
+ const B = P.visibleSteps.find(
3421
+ (R) => R > A && !us(R, M)
3327
3422
  );
3328
- return P === void 0 ? B.currentStep : Math.min(P, B.currentStep);
3423
+ return B === void 0 ? P.currentStep : Math.min(B, P.currentStep);
3329
3424
  },
3330
- [Je, B.visibleSteps, B.currentStep, _]
3331
- ), [X, we] = Q(
3332
- B.currentStep
3333
- ), Pe = E(et), Ve = E(B.visibleSteps);
3334
- q(() => {
3335
- const y = Pe.current, P = Ve.current;
3336
- Pe.current = et, Ve.current = B.visibleSteps;
3337
- const V = et.findIndex(
3338
- (de, ss) => de !== y[ss]
3425
+ [he, P.visibleSteps, P.currentStep, M]
3426
+ ), [pe, ve] = se(
3427
+ P.currentStep
3428
+ ), Ze = _(we), pt = _(P.visibleSteps);
3429
+ K(() => {
3430
+ const A = Ze.current, B = pt.current;
3431
+ Ze.current = we, pt.current = P.visibleSteps;
3432
+ const R = we.findIndex(
3433
+ (ne, d) => ne !== A[d]
3339
3434
  );
3340
- if (V !== -1) {
3341
- we(We(V + 1));
3435
+ if (R !== -1) {
3436
+ ve(wt(R + 1));
3342
3437
  return;
3343
3438
  }
3344
- const Y = Je ? B.visibleSteps.find(
3345
- (de) => de < X && !P.includes(de) && !ds(de, _)
3439
+ const J = he ? P.visibleSteps.find(
3440
+ (ne) => ne < pe && !B.includes(ne) && !us(ne, M)
3346
3441
  ) : void 0;
3347
- if (Y !== void 0) {
3348
- we(Y);
3442
+ if (J !== void 0) {
3443
+ ve(J);
3349
3444
  return;
3350
3445
  }
3351
- B.visibleSteps.includes(X) || we(B.currentStep);
3446
+ P.visibleSteps.includes(pe) || ve(P.currentStep);
3352
3447
  }, [
3353
- et,
3354
- We,
3355
- Je,
3356
- B.currentStep,
3357
- B.visibleSteps,
3358
- X,
3359
- _
3448
+ we,
3449
+ wt,
3450
+ he,
3451
+ P.currentStep,
3452
+ P.visibleSteps,
3453
+ pe,
3454
+ M
3360
3455
  ]);
3361
- const ce = E(null), De = R(
3362
- () => ts(B.visibleSteps, H),
3363
- [B.visibleSteps, H]
3364
- ), xt = qt(), [tt, $e] = Q(""), qe = E(null), Oe = E(null);
3365
- q(() => {
3366
- const y = ct(X, H);
3367
- if (Oe.current === null) {
3368
- Oe.current = y;
3456
+ const re = _(null), Re = L(
3457
+ () => ss(P.visibleSteps, Z),
3458
+ [P.visibleSteps, Z]
3459
+ ), it = qt(), [Qe, jt] = se(""), Fe = _(null), Ce = _(null);
3460
+ K(() => {
3461
+ const A = lt(pe, Z);
3462
+ if (Ce.current === null) {
3463
+ Ce.current = A;
3369
3464
  return;
3370
3465
  }
3371
- if (Oe.current === y) return;
3372
- Oe.current = y;
3373
- const P = De.indexOf(y);
3374
- $e(
3375
- P === -1 ? "" : Z("booking.stepAnnouncement", {
3376
- current: P + 1,
3377
- total: De.length,
3378
- label: xt[y]
3466
+ if (Ce.current === A) return;
3467
+ Ce.current = A;
3468
+ const B = Re.indexOf(A);
3469
+ jt(
3470
+ B === -1 ? "" : z("booking.stepAnnouncement", {
3471
+ current: B + 1,
3472
+ total: Re.length,
3473
+ label: it[A]
3379
3474
  })
3380
3475
  );
3381
- const V = qe.current;
3382
- if (!V || V.isConnected) return;
3383
- const Y = ce.current;
3384
- if (!Y) return;
3385
- const de = document.activeElement;
3386
- if (!(de === null || de === document.body || !Y.contains(de))) return;
3387
- const Tt = Y.querySelector(Ai) ?? Y;
3388
- if (Tt.focus({ preventScroll: !0 }), typeof Tt.scrollIntoView == "function")
3476
+ const R = Fe.current;
3477
+ if (!R || R.isConnected) return;
3478
+ const J = re.current;
3479
+ if (!J) return;
3480
+ const ne = document.activeElement;
3481
+ if (!(ne === null || ne === document.body || !J.contains(ne))) return;
3482
+ const D = J.querySelector(Mi) ?? J;
3483
+ if (D.focus({ preventScroll: !0 }), typeof D.scrollIntoView == "function")
3389
3484
  try {
3390
- Tt.scrollIntoView({
3391
- behavior: ls() ? "auto" : "smooth",
3485
+ D.scrollIntoView({
3486
+ behavior: ps() ? "auto" : "smooth",
3392
3487
  block: "nearest"
3393
3488
  });
3394
3489
  } catch {
3395
- Tt.scrollIntoView();
3490
+ D.scrollIntoView();
3396
3491
  }
3397
- }, [X, H, De, xt, Z]);
3398
- const K = ui({
3399
- services: p,
3400
- value: _,
3492
+ }, [pe, Z, Re, it, z]);
3493
+ const H = vi({
3494
+ services: m,
3495
+ value: M,
3401
3496
  availableSlots: l,
3402
- onSubmit: dt,
3403
- onChange: me,
3497
+ onSubmit: ut,
3498
+ onChange: Se,
3404
3499
  paymentState: h,
3405
- submitting: W,
3500
+ submitting: ee,
3406
3501
  paymentTermsUrl: T,
3407
- renderPayment: C
3408
- }), j = K.status, lt = K.submit, st = E(K.reset);
3409
- st.current = K.reset;
3410
- const ut = Pt(), Ke = E(null), nt = E(null), it = ((gt = K.state) == null ? void 0 : gt.status) === "failed", It = K.state && "phase" in K.state && K.state.phase === "completion";
3411
- q(() => {
3412
- var y, P;
3502
+ renderPayment: w
3503
+ }), j = H.status, mt = H.submit, rt = _(H.reset);
3504
+ rt.current = H.reset;
3505
+ const ft = Rt(), gt = _(null), ht = _(null), Ue = ((At = H.state) == null ? void 0 : At.status) === "failed", ot = H.state && "phase" in H.state && H.state.phase === "completion";
3506
+ K(() => {
3507
+ var A, B;
3413
3508
  if (j === "payment") {
3414
- const V = document.activeElement;
3415
- (!It || !V || V === document.body || !((y = ce.current) != null && y.contains(V))) && ((P = Ke.current) == null || P.focus());
3509
+ const R = document.activeElement;
3510
+ (!ot || !R || R === document.body || !((A = re.current) != null && A.contains(R))) && ((B = gt.current) == null || B.focus());
3416
3511
  }
3417
- }, [j, It]), q(() => {
3418
- var y;
3419
- j === "payment" && it && ((y = nt.current) == null || y.focus());
3420
- }, [j, it]), Vs(zt, () => ce.current, []);
3421
- const Me = j === "success" ? 8 : j === "payment" ? 7 : B.currentStep, pt = E(null);
3422
- q(() => {
3423
- if (Me !== pt.current && (pt.current = Me, fe == null || fe(Me), Me === 8 && ce.current))
3512
+ }, [j, ot]), K(() => {
3513
+ var A;
3514
+ j === "payment" && Ue && ((A = ht.current) == null || A.focus());
3515
+ }, [j, Ue]), Ks(nt, () => re.current, []);
3516
+ const Pe = j === "success" ? 8 : j === "payment" ? 7 : P.currentStep, Ct = _(null);
3517
+ K(() => {
3518
+ if (Pe !== Ct.current && (Ct.current = Pe, fe == null || fe(Pe), Pe === 8 && re.current))
3424
3519
  try {
3425
- ce.current.scrollIntoView({
3426
- behavior: ls() ? "auto" : "smooth",
3520
+ re.current.scrollIntoView({
3521
+ behavior: ps() ? "auto" : "smooth",
3427
3522
  block: "start"
3428
3523
  });
3429
3524
  } catch {
3430
- ce.current.scrollIntoView();
3525
+ re.current.scrollIntoView();
3431
3526
  }
3432
- }, [Me, fe]);
3433
- const Ye = E({ activeStep: X, cascade: B, submitState: j });
3434
- q(() => {
3435
- Ye.current = { activeStep: X, cascade: B, submitState: j };
3436
- }, [X, B, j]);
3437
- const Nt = R(
3527
+ }, [Pe, fe]);
3528
+ const Ve = _({ activeStep: pe, cascade: P, submitState: j });
3529
+ K(() => {
3530
+ Ve.current = { activeStep: pe, cascade: P, submitState: j };
3531
+ }, [pe, P, j]);
3532
+ const vt = L(
3438
3533
  () => ({
3439
- getVariant: () => se,
3534
+ getVariant: () => ue,
3440
3535
  getCurrentStep: () => {
3441
- const y = Ye.current;
3442
- return y.submitState === "success" ? 8 : y.submitState === "payment" ? 7 : y.activeStep;
3536
+ const A = Ve.current;
3537
+ return A.submitState === "success" ? 8 : A.submitState === "payment" ? 7 : A.activeStep;
3443
3538
  },
3444
3539
  reset: () => {
3445
- Ye.current.submitState !== "payment" && (me({}), st.current(), we(1));
3540
+ Ve.current.submitState !== "payment" && (Se({}), rt.current(), ve(1));
3446
3541
  },
3447
- goToStep: (y) => {
3448
- const P = Ye.current, V = P.cascade.visibleSteps.includes(y), Y = P.cascade.currentStep, de = P.submitState === "payment" ? 7 : !V || y > Y ? Y : y;
3449
- Ye.current = { ...P, activeStep: de }, we(de);
3542
+ goToStep: (A) => {
3543
+ const B = Ve.current, R = B.cascade.visibleSteps.includes(A), J = B.cascade.currentStep, ne = B.submitState === "payment" ? 7 : !R || A > J ? J : A;
3544
+ Ve.current = { ...B, activeStep: ne }, ve(ne);
3450
3545
  }
3451
3546
  }),
3452
- [se, me]
3547
+ [ue, Se]
3453
3548
  );
3454
- qs(En, Nt, Ee);
3455
- const jt = Kt ?? Z("booking.regionLabel"), be = K.snapshot, wt = j === "success" && be ? /* @__PURE__ */ s(
3456
- Ci,
3549
+ js($n, vt, le);
3550
+ const Ut = q ?? z("booking.regionLabel"), Ae = H.snapshot, Ht = j === "success" && Ae ? /* @__PURE__ */ s(
3551
+ Fi,
3457
3552
  {
3458
- payment: be.payment,
3553
+ payment: Ae.payment,
3459
3554
  snapshot: {
3460
- ...be.value,
3461
- slot: be.slot,
3462
- details: be.details,
3463
- serviceId: ((d = be.payment) == null ? void 0 : d.serviceId) ?? be.slot.serviceId ?? be.value.serviceId
3555
+ ...Ae.value,
3556
+ slot: Ae.slot,
3557
+ details: Ae.details,
3558
+ serviceId: ((kt = Ae.payment) == null ? void 0 : kt.serviceId) ?? Ae.slot.serviceId ?? Ae.value.serviceId
3464
3559
  },
3465
- operators: ve,
3560
+ operators: Ee,
3466
3561
  specialties: Ne,
3467
- services: p,
3468
- locale: Te,
3469
- mode: ie,
3470
- showModify: oe && !be.payment,
3471
- onReset: () => Nt.reset(),
3562
+ services: m,
3563
+ locale: Ye,
3564
+ mode: de,
3565
+ showModify: Be && !Ae.payment,
3566
+ onReset: () => vt.reset(),
3472
3567
  focusWasLost: () => {
3473
- const y = qe.current, P = document.activeElement;
3474
- return !!(y && !y.isConnected) && (!P || P === document.body);
3568
+ const A = Fe.current, B = document.activeElement;
3569
+ return !!(A && !A.isConnected) && (!B || B === document.body);
3475
3570
  },
3476
3571
  onModify: () => {
3477
- st.current(), we(7);
3572
+ rt.current(), ve(7);
3478
3573
  }
3479
3574
  }
3480
- ) : null, mt = K.activeSession, ze = K.state, re = mt && ze ? {
3481
- session: mt,
3482
- payment: mt.payment,
3483
- state: ze,
3484
- billing: (O = K.snapshot) == null ? void 0 : O.details.billing
3485
- } : void 0, je = ze && "phase" in ze && ze.phase === "completion", Ct = j === "payment" && re ? /* @__PURE__ */ v(
3575
+ ) : null, bt = H.activeSession, Me = H.state, me = bt && Me ? {
3576
+ session: bt,
3577
+ payment: bt.payment,
3578
+ state: Me,
3579
+ billing: (St = H.snapshot) == null ? void 0 : St.details.billing
3580
+ } : void 0, He = Me && "phase" in Me && Me.phase === "completion", te = j === "payment" && me ? /* @__PURE__ */ v(
3486
3581
  "section",
3487
3582
  {
3488
- "aria-labelledby": ut,
3583
+ "aria-labelledby": ft,
3489
3584
  "data-component": "booking-payment",
3490
- "data-payment-status": re.state.status,
3585
+ "data-payment-status": me.state.status,
3491
3586
  className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]",
3492
3587
  children: [
3493
3588
  /* @__PURE__ */ s(
3494
3589
  "h3",
3495
3590
  {
3496
- ref: Ke,
3497
- id: ut,
3591
+ ref: gt,
3592
+ id: ft,
3498
3593
  tabIndex: -1,
3499
3594
  className: "type-title-card ds:m-0",
3500
- children: Z(
3501
- je ? "booking.payment.confirming" : "booking.payment.heading"
3595
+ children: z(
3596
+ He ? "booking.payment.confirming" : "booking.payment.heading"
3502
3597
  )
3503
3598
  }
3504
3599
  ),
3505
- je ? null : /* @__PURE__ */ s("p", { className: "type-body ds:m-0", children: Z("booking.payment.noticeBody", {
3506
- amount: yt(
3507
- re.payment.amountCents,
3508
- re.payment.currencyCode,
3509
- Te
3600
+ He ? null : /* @__PURE__ */ s("p", { className: "type-body ds:m-0", children: z("booking.payment.noticeBody", {
3601
+ amount: Pt(
3602
+ me.payment.amountCents,
3603
+ me.payment.currencyCode,
3604
+ Ye
3510
3605
  )
3511
3606
  }) }),
3512
3607
  /* @__PURE__ */ s(
3513
3608
  "p",
3514
3609
  {
3515
3610
  role: "status",
3516
- className: re.state.status === "processing" ? "type-body ds:m-0 ds:flex ds:items-center ds:gap-[var(--spacing-sm)]" : "ds:sr-only",
3517
- children: re.state.status === "processing" ? /* @__PURE__ */ v(ne, { children: [
3518
- /* @__PURE__ */ s(ps, { variant: "pulse", size: "lg", "aria-hidden": "true" }),
3519
- /* @__PURE__ */ s("span", { children: Z(
3520
- je ? "booking.payment.confirming" : "booking.payment.processing"
3611
+ className: me.state.status === "processing" ? "type-body ds:m-0 ds:flex ds:items-center ds:gap-[var(--spacing-sm)]" : "ds:sr-only",
3612
+ children: me.state.status === "processing" ? /* @__PURE__ */ v(ae, { children: [
3613
+ /* @__PURE__ */ s(fs, { variant: "pulse", size: "lg", "aria-hidden": "true" }),
3614
+ /* @__PURE__ */ s("span", { children: z(
3615
+ He ? "booking.payment.confirming" : "booking.payment.processing"
3521
3616
  ) })
3522
3617
  ] }) : null
3523
3618
  }
3524
3619
  ),
3525
- re.state.status === "failed" ? /* @__PURE__ */ s(
3526
- ee,
3620
+ me.state.status === "failed" ? /* @__PURE__ */ s(
3621
+ ie,
3527
3622
  {
3528
- ref: nt,
3623
+ ref: ht,
3529
3624
  variant: "error",
3530
3625
  tabIndex: -1,
3531
- className: Rt,
3532
- children: /* @__PURE__ */ s(ee.Description, { children: re.state.error ?? Z(
3533
- je ? "booking.payment.completionFailed" : "booking.payment.failed"
3626
+ className: Bt,
3627
+ children: /* @__PURE__ */ s(ie.Description, { children: me.state.error ?? z(
3628
+ He ? "booking.payment.completionFailed" : "booking.payment.failed"
3534
3629
  ) })
3535
3630
  }
3536
3631
  ) : null,
3537
- je ? $ == null ? void 0 : $(re) : C == null ? void 0 : C(re)
3632
+ He ? $ == null ? void 0 : $(me) : w == null ? void 0 : w(me)
3538
3633
  ]
3539
3634
  }
3540
- ) : null, ft = R(() => {
3541
- const y = new Set(_e(_)), P = p.filter((V) => y.has(V.id)).map((V) => {
3542
- var Y;
3635
+ ) : null, yt = L(() => {
3636
+ const A = new Set(qe(M)), B = m.filter((R) => A.has(R.id)).map((R) => {
3637
+ var J;
3543
3638
  return {
3544
- label: V.label,
3545
- text: ((Y = V.criticalInformationToAccept) == null ? void 0 : Y.trim()) ?? ""
3639
+ label: R.label,
3640
+ text: ((J = R.criticalInformationToAccept) == null ? void 0 : J.trim()) ?? ""
3546
3641
  };
3547
- }).filter((V) => V.text.length > 0);
3548
- if (P.length !== 0)
3549
- return P.length === 1 ? P[0].text : P.map((V) => `${V.label}: ${V.text}`).join(`
3642
+ }).filter((R) => R.text.length > 0);
3643
+ if (B.length !== 0)
3644
+ return B.length === 1 ? B[0].text : B.map((R) => `${R.label}: ${R.text}`).join(`
3550
3645
 
3551
3646
  `);
3552
- }, [p, _]), At = R(() => {
3647
+ }, [m, M]), oe = L(() => {
3553
3648
  if (j === "success" || j === "payment") return null;
3554
- const y = se === "accordion" ? Di : se === "calendar" ? Mi : se === "flexible" ? Fi : se === "progress" ? _i : Ti, P = {
3555
- cascade: B,
3649
+ const A = ue === "accordion" ? Li : ue === "calendar" ? Ri : ue === "flexible" ? Pi : ue === "progress" ? Vi : _i, B = {
3650
+ cascade: P,
3556
3651
  inputs: {
3557
3652
  specialties: Ne,
3558
- services: p,
3559
- operators: ve,
3653
+ services: m,
3654
+ operators: Ee,
3560
3655
  availableDates: g,
3561
3656
  availableSlots: l,
3562
- nextAvailableDate: o
3657
+ nextAvailableDate: a
3563
3658
  },
3564
- value: _,
3565
- onChange: me,
3566
- onSubmit: lt,
3659
+ value: M,
3660
+ onChange: Se,
3661
+ onSubmit: mt,
3567
3662
  policy: { country: t, lockedOperatorId: i },
3568
3663
  detailsProps: {
3569
3664
  requireCodiceFiscale: u,
3570
- requireDateOfBirth: k,
3571
- requireInsuranceNumber: I,
3572
- insuranceType: _.insuranceType,
3573
- showNote: w,
3574
- showReturningPatientFlag: x,
3575
- privacyPolicyUrl: S,
3576
- termsUrl: A,
3577
- practiceConsent: D,
3578
- criticalInformationToAccept: ft,
3579
- payment: K.payment,
3665
+ requireDateOfBirth: y,
3666
+ requireInsuranceNumber: x,
3667
+ insuranceType: M.insuranceType,
3668
+ showNote: N,
3669
+ showReturningPatientFlag: S,
3670
+ privacyPolicyUrl: I,
3671
+ termsUrl: C,
3672
+ practiceConsent: O,
3673
+ criticalInformationToAccept: yt,
3674
+ payment: H.payment,
3580
3675
  paymentTermsUrl: T,
3581
- paymentBlocked: K.blocked,
3582
- billingInDetails: N,
3583
- paymentNoticeStyle: M,
3676
+ paymentBlocked: H.blocked,
3677
+ billingInDetails: k,
3678
+ paymentNoticeStyle: E,
3584
3679
  validateCodiceFiscale: b,
3585
- validateInsuranceNumber: pe,
3680
+ validateInsuranceNumber: ke,
3586
3681
  confirmationChannels: F,
3587
- defaultConfirmationChannels: z,
3588
- submitError: Ae ?? (j === "error" ? Z("booking.payment.submitFailed") : void 0)
3682
+ defaultConfirmationChannels: G,
3683
+ submitError: Le ?? (j === "error" ? z("booking.payment.submitFailed") : void 0)
3589
3684
  },
3590
- emptyServicesSlot: L,
3591
- onboardingIncompleteSlot: xe,
3592
- loadingDates: he,
3593
- loadingSlots: Se,
3594
- onDateSelect: He,
3595
- onWindowChange: Le,
3596
- datePickerStyle: H,
3597
- specialtyPickerStyle: Be,
3598
- servicePickerStyle: ge,
3599
- showServiceDuration: J,
3600
- operatorPickerStyle: ae,
3601
- submitting: W || j === "submitting",
3602
- locale: Te,
3603
- activeStep: X,
3604
- setActiveStep: we,
3605
- agentIdBase: Ee
3685
+ emptyServicesSlot: Q,
3686
+ onboardingIncompleteSlot: je,
3687
+ loadingDates: xe,
3688
+ loadingSlots: De,
3689
+ onDateSelect: We,
3690
+ onWindowChange: Ke,
3691
+ datePickerStyle: Z,
3692
+ specialtyPickerStyle: ze,
3693
+ servicePickerStyle: ce,
3694
+ showServiceDuration: X,
3695
+ operatorPickerStyle: ge,
3696
+ submitting: ee || j === "submitting",
3697
+ locale: Ye,
3698
+ activeStep: pe,
3699
+ setActiveStep: ve,
3700
+ agentIdBase: le
3606
3701
  };
3607
- return /* @__PURE__ */ s(y, { ...P });
3702
+ return /* @__PURE__ */ s(A, { ...B });
3608
3703
  }, [
3609
3704
  j,
3610
- K.payment,
3611
- K.blocked,
3705
+ H.payment,
3706
+ H.blocked,
3612
3707
  T,
3613
- Z,
3614
- se,
3615
- B,
3708
+ z,
3709
+ ue,
3710
+ P,
3616
3711
  Ne,
3617
- p,
3618
- ve,
3712
+ m,
3713
+ Ee,
3619
3714
  g,
3620
3715
  l,
3621
- o,
3622
- _,
3623
- me,
3624
- lt,
3716
+ a,
3717
+ M,
3718
+ Se,
3719
+ mt,
3625
3720
  t,
3626
3721
  i,
3627
3722
  u,
3723
+ y,
3724
+ x,
3628
3725
  k,
3629
- I,
3726
+ E,
3727
+ Le,
3630
3728
  N,
3631
- M,
3632
- Ae,
3633
- w,
3634
- x,
3635
3729
  S,
3636
- A,
3637
- D,
3638
- ft,
3730
+ I,
3731
+ C,
3732
+ O,
3733
+ yt,
3639
3734
  b,
3640
- pe,
3735
+ ke,
3641
3736
  F,
3642
- z,
3643
- L,
3737
+ G,
3738
+ Q,
3739
+ je,
3644
3740
  xe,
3645
- he,
3646
- Se,
3647
- He,
3648
- Le,
3649
- H,
3650
- Be,
3651
- ge,
3652
- J,
3653
- ae,
3654
- W,
3655
- Te,
3741
+ De,
3742
+ We,
3743
+ Ke,
3744
+ Z,
3745
+ ze,
3746
+ ce,
3656
3747
  X,
3657
- Ee
3748
+ ge,
3749
+ ee,
3750
+ Ye,
3751
+ pe,
3752
+ le
3658
3753
  ]);
3659
3754
  return /* @__PURE__ */ v(
3660
3755
  "div",
3661
3756
  {
3662
- ref: ce,
3757
+ ref: re,
3663
3758
  role: "region",
3664
- "aria-label": jt,
3665
- id: Ee,
3759
+ "aria-label": Ut,
3760
+ id: le,
3666
3761
  "data-component": "booking",
3667
- "data-component-id": Ee,
3668
- "data-variant": se,
3669
- className: pi({
3670
- variant: se,
3671
- surface: te,
3672
- className: kt
3762
+ "data-component-id": le,
3763
+ "data-variant": ue,
3764
+ className: bi({
3765
+ variant: ue,
3766
+ surface: Ie,
3767
+ className: Kt
3673
3768
  }),
3674
3769
  tabIndex: -1,
3675
- onFocus: (y) => {
3676
- qe.current = y.target, Qe == null || Qe(y);
3770
+ onFocus: (A) => {
3771
+ Fe.current = A.target, tt == null || tt(A);
3677
3772
  },
3678
- onBlur: (y) => {
3679
- const P = y.target;
3773
+ onBlur: (A) => {
3774
+ const B = A.target;
3680
3775
  window.setTimeout(() => {
3681
- var Y;
3682
- const V = document.activeElement;
3683
- qe.current === P && P.isConnected && !(V && ((Y = ce.current) != null && Y.contains(V))) && (qe.current = null);
3684
- }), Re == null || Re(y);
3776
+ var J;
3777
+ const R = document.activeElement;
3778
+ Fe.current === B && B.isConnected && !(R && ((J = re.current) != null && J.contains(R))) && (Fe.current = null);
3779
+ }), st == null || st(A);
3685
3780
  },
3686
- ...Ie,
3781
+ ...Nt,
3687
3782
  children: [
3688
- /* @__PURE__ */ s("div", { role: "status", className: "ds:sr-only", children: tt }),
3783
+ /* @__PURE__ */ s("div", { role: "status", className: "ds:sr-only", children: Qe }),
3689
3784
  /* @__PURE__ */ v(
3690
3785
  "div",
3691
3786
  {
@@ -3698,23 +3793,23 @@ const Ei = us(
3698
3793
  "ds:pt-[var(--spacing-md)] ds:pb-[var(--spacing-md)]"
3699
3794
  ].join(" "),
3700
3795
  children: [
3701
- /* @__PURE__ */ s("h2", { className: "type-title-card ds:text-[var(--foreground)] ds:m-0", children: Z("booking.regionLabel") }),
3702
- /* @__PURE__ */ s("p", { className: "type-body-sm ds:text-[var(--foreground)] ds:m-0", children: Z("booking.headingSubtitle") })
3796
+ /* @__PURE__ */ s("h2", { className: "type-title-card ds:text-[var(--foreground)] ds:m-0", children: z("booking.regionLabel") }),
3797
+ /* @__PURE__ */ s("p", { className: "type-body-sm ds:text-[var(--foreground)] ds:m-0", children: z("booking.headingSubtitle") })
3703
3798
  ]
3704
3799
  }
3705
3800
  ),
3706
- K.cancelled ? /* @__PURE__ */ s(ee, { variant: "info", children: /* @__PURE__ */ s(ee.Description, { children: Z("booking.payment.cancelled") }) }) : null,
3707
- wt ?? Ct ?? At
3801
+ H.cancelled ? /* @__PURE__ */ s(ie, { variant: "info", children: /* @__PURE__ */ s(ie.Description, { children: z("booking.payment.cancelled") }) }) : null,
3802
+ Ht ?? te ?? oe
3708
3803
  ]
3709
3804
  }
3710
3805
  );
3711
3806
  }
3712
3807
  );
3713
- Ei.displayName = "Booking";
3808
+ Ki.displayName = "Booking";
3714
3809
  export {
3715
- Ei as B,
3716
- Jt as C,
3717
- Ce as O,
3718
- En as b
3810
+ Ki as B,
3811
+ Yt as C,
3812
+ _e as O,
3813
+ $n as b
3719
3814
  };
3720
- //# sourceMappingURL=booking-BN7TXe27.js.map
3815
+ //# sourceMappingURL=booking-uZO10TLK.js.map