@alfadocs/ui-kit-debug 0.64.0 → 0.66.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 (438) hide show
  1. package/dist/_chunks/{agenda-tray-DA6qj8BL.js → agenda-tray-Bh1KfEOG.js} +2 -2
  2. package/dist/_chunks/{agenda-tray-DA6qj8BL.js.map → agenda-tray-Bh1KfEOG.js.map} +1 -1
  3. package/dist/_chunks/{ai-consent-banner-DBKV27je.js → ai-consent-banner-Btzmk8OH.js} +3 -2
  4. package/dist/_chunks/{ai-consent-banner-DBKV27je.js.map → ai-consent-banner-Btzmk8OH.js.map} +1 -1
  5. package/dist/_chunks/{ai-prompt-input-Dx8eXoPm.js → ai-prompt-input-BwEACCPm.js} +2 -2
  6. package/dist/_chunks/{ai-prompt-input-Dx8eXoPm.js.map → ai-prompt-input-BwEACCPm.js.map} +1 -1
  7. package/dist/_chunks/{ai-tools-rail-7tC3GT4h.js → ai-tools-rail-DAfaW8eA.js} +65 -56
  8. package/dist/_chunks/ai-tools-rail-DAfaW8eA.js.map +1 -0
  9. package/dist/_chunks/{alia-sidebar-DlvyXgVC.js → alia-sidebar-CN8pA6c-.js} +7 -7
  10. package/dist/_chunks/{alia-sidebar-DlvyXgVC.js.map → alia-sidebar-CN8pA6c-.js.map} +1 -1
  11. package/dist/_chunks/{anamnesis-card-CmkBVAln.js → anamnesis-card-qeLYRG79.js} +2 -2
  12. package/dist/_chunks/{anamnesis-card-CmkBVAln.js.map → anamnesis-card-qeLYRG79.js.map} +1 -1
  13. package/dist/_chunks/{antenatal-schedule-timeline-CdiqkF05.js → antenatal-schedule-timeline-BfzFjEyb.js} +3 -3
  14. package/dist/_chunks/{antenatal-schedule-timeline-CdiqkF05.js.map → antenatal-schedule-timeline-BfzFjEyb.js.map} +1 -1
  15. package/dist/_chunks/{appointment-tray-BwDHhWWC.js → appointment-tray-BQnJEora.js} +2 -2
  16. package/dist/_chunks/{appointment-tray-BwDHhWWC.js.map → appointment-tray-BQnJEora.js.map} +1 -1
  17. package/dist/_chunks/{ar-C68WKG5a.js → ar-Cn5Fq48Z.js} +2 -2
  18. package/dist/_chunks/{ar-C68WKG5a.js.map → ar-Cn5Fq48Z.js.map} +1 -1
  19. package/dist/_chunks/{audio-recorder-CdXuT9ln.js → audio-recorder-DjXLP4aF.js} +2 -2
  20. package/dist/_chunks/{audio-recorder-CdXuT9ln.js.map → audio-recorder-DjXLP4aF.js.map} +1 -1
  21. package/dist/_chunks/{autocomplete-CDqxB68B.js → autocomplete-CcCFlVf-.js} +4 -4
  22. package/dist/_chunks/{autocomplete-CDqxB68B.js.map → autocomplete-CcCFlVf-.js.map} +1 -1
  23. package/dist/_chunks/{bishop-score-CzjSx-dm.js → bishop-score-DPN4Ched.js} +2 -2
  24. package/dist/_chunks/{bishop-score-CzjSx-dm.js.map → bishop-score-DPN4Ched.js.map} +1 -1
  25. package/dist/_chunks/{bmi-calculator-DA2NGmVK.js → bmi-calculator-DuUneHuZ.js} +2 -2
  26. package/dist/_chunks/{bmi-calculator-DA2NGmVK.js.map → bmi-calculator-DuUneHuZ.js.map} +1 -1
  27. package/dist/_chunks/{booking-ChfvWy3P.js → booking-L8-YP8BJ.js} +148 -148
  28. package/dist/_chunks/booking-L8-YP8BJ.js.map +1 -0
  29. package/dist/_chunks/calendar-B6soK1Yb.js +17 -0
  30. package/dist/_chunks/calendar-B6soK1Yb.js.map +1 -0
  31. package/dist/_chunks/{calendar-CkuJIg3s.js → calendar-oYWOCrnf.js} +1 -1
  32. package/dist/_chunks/{calendar-CkuJIg3s.js.map → calendar-oYWOCrnf.js.map} +1 -1
  33. package/dist/_chunks/{care-plan-card-DhZNoXs4.js → care-plan-card-D42WD4-T.js} +2 -2
  34. package/dist/_chunks/{care-plan-card-DhZNoXs4.js.map → care-plan-card-D42WD4-T.js.map} +1 -1
  35. package/dist/_chunks/{care-plan-entry-card-DW70yBOD.js → care-plan-entry-card-BukNI7Uy.js} +2 -2
  36. package/dist/_chunks/{care-plan-entry-card-DW70yBOD.js.map → care-plan-entry-card-BukNI7Uy.js.map} +1 -1
  37. package/dist/_chunks/{carousel.agent-DrX96W-1.js → carousel.agent-vt21A_el.js} +2 -2
  38. package/dist/_chunks/{carousel.agent-DrX96W-1.js.map → carousel.agent-vt21A_el.js.map} +1 -1
  39. package/dist/_chunks/{chat-input-CFwc7JxL.js → chat-input-B5zjNEUN.js} +2 -2
  40. package/dist/_chunks/{chat-input-CFwc7JxL.js.map → chat-input-B5zjNEUN.js.map} +1 -1
  41. package/dist/_chunks/{chat-message-Dm8U2RY1.js → chat-message-3V54YipB.js} +2 -2
  42. package/dist/_chunks/{chat-message-Dm8U2RY1.js.map → chat-message-3V54YipB.js.map} +1 -1
  43. package/dist/_chunks/{code-block-HoddNOKJ.js → code-block-BBWHhIc8.js} +2 -2
  44. package/dist/_chunks/{code-block-HoddNOKJ.js.map → code-block-BBWHhIc8.js.map} +1 -1
  45. package/dist/_chunks/columns-2-BTOBZbep.js +15 -0
  46. package/dist/_chunks/columns-2-BTOBZbep.js.map +1 -0
  47. package/dist/_chunks/{contact-profile-card-DvvVfAA2.js → contact-profile-card-CCeJmjbd.js} +2 -2
  48. package/dist/_chunks/{contact-profile-card-DvvVfAA2.js.map → contact-profile-card-CCeJmjbd.js.map} +1 -1
  49. package/dist/_chunks/{cycle-calculator-C_t1Hs8V.js → cycle-calculator-D6LTmtQt.js} +4 -4
  50. package/dist/_chunks/{cycle-calculator-C_t1Hs8V.js.map → cycle-calculator-D6LTmtQt.js.map} +1 -1
  51. package/dist/_chunks/{date-picker-BfHblqwA.js → date-picker-oGg5BnXL.js} +12 -11
  52. package/dist/_chunks/{date-picker-BfHblqwA.js.map → date-picker-oGg5BnXL.js.map} +1 -1
  53. package/dist/_chunks/{date-picker-variants-CXEAx3O_.js → date-picker-variants-DAcSLTua.js} +358 -372
  54. package/dist/_chunks/date-picker-variants-DAcSLTua.js.map +1 -0
  55. package/dist/_chunks/{date-range-picker-hcAMs1wO.js → date-range-picker-C5BWfH_T.js} +34 -25
  56. package/dist/_chunks/{date-range-picker-hcAMs1wO.js.map → date-range-picker-C5BWfH_T.js.map} +1 -1
  57. package/dist/_chunks/{date-time-picker-H-3Pwqlb.js → date-time-picker-Ze1My59T.js} +18 -17
  58. package/dist/_chunks/{date-time-picker-H-3Pwqlb.js.map → date-time-picker-Ze1My59T.js.map} +1 -1
  59. package/dist/_chunks/{de-DK4A9_a8.js → de-CrJs4ZsX.js} +2 -2
  60. package/dist/_chunks/{de-DK4A9_a8.js.map → de-CrJs4ZsX.js.map} +1 -1
  61. package/dist/_chunks/{description-list-BEbK2g93.js → description-list-gkNGWk5G.js} +2 -2
  62. package/dist/_chunks/{description-list-BEbK2g93.js.map → description-list-gkNGWk5G.js.map} +1 -1
  63. package/dist/_chunks/{due-date-calculator-Q8MIwEVV.js → due-date-calculator-CIG194vq.js} +4 -4
  64. package/dist/_chunks/{due-date-calculator-Q8MIwEVV.js.map → due-date-calculator-CIG194vq.js.map} +1 -1
  65. package/dist/_chunks/{editable-currency-cell-renderer-BQgaKFCz.js → editable-currency-cell-renderer-f3d0Rhue.js} +535 -535
  66. package/dist/_chunks/editable-currency-cell-renderer-f3d0Rhue.js.map +1 -0
  67. package/dist/_chunks/editor-overlay-wYm22wZK.js +88 -0
  68. package/dist/_chunks/editor-overlay-wYm22wZK.js.map +1 -0
  69. package/dist/_chunks/{el-B29HXhG5.js → el-DHdMOIhL.js} +6 -6
  70. package/dist/_chunks/{el-B29HXhG5.js.map → el-DHdMOIhL.js.map} +1 -1
  71. package/dist/_chunks/{es-BOwPVwWn.js → es-DCATCfqo.js} +2 -2
  72. package/dist/_chunks/{es-BOwPVwWn.js.map → es-DCATCfqo.js.map} +1 -1
  73. package/dist/_chunks/{fetal-weight-D1a6BmM-.js → fetal-weight-Xf8-ZoDy.js} +2 -2
  74. package/dist/_chunks/{fetal-weight-D1a6BmM-.js.map → fetal-weight-Xf8-ZoDy.js.map} +1 -1
  75. package/dist/_chunks/{fiscal-code-input-BZ0FxwUl.js → fiscal-code-input-DPtqluVb.js} +2 -2
  76. package/dist/_chunks/{fiscal-code-input-BZ0FxwUl.js.map → fiscal-code-input-DPtqluVb.js.map} +1 -1
  77. package/dist/_chunks/{fr-DoDBtn0T.js → fr-BfGEMshF.js} +2 -2
  78. package/dist/_chunks/{fr-DoDBtn0T.js.map → fr-BfGEMshF.js.map} +1 -1
  79. package/dist/_chunks/{freemium-paywall-gHGA44dW.js → freemium-paywall-CkWjv3o6.js} +2 -2
  80. package/dist/_chunks/{freemium-paywall-gHGA44dW.js.map → freemium-paywall-CkWjv3o6.js.map} +1 -1
  81. package/dist/_chunks/{gestational-age-calculator-D85E8lGN.js → gestational-age-calculator-BGsZaWXW.js} +6 -6
  82. package/dist/_chunks/{gestational-age-calculator-D85E8lGN.js.map → gestational-age-calculator-BGsZaWXW.js.map} +1 -1
  83. package/dist/_chunks/{hcg-doubling-Dg0Hr7ey.js → hcg-doubling-LH5i6oM7.js} +3 -3
  84. package/dist/_chunks/{hcg-doubling-Dg0Hr7ey.js.map → hcg-doubling-LH5i6oM7.js.map} +1 -1
  85. package/dist/_chunks/{header-Ce1Br27u.js → header-CNszv2WQ.js} +2 -2
  86. package/dist/_chunks/{header-Ce1Br27u.js.map → header-CNszv2WQ.js.map} +1 -1
  87. package/dist/_chunks/{header-settings-D5Z2B_Yz.js → header-settings-CNOqIhoW.js} +3 -3
  88. package/dist/_chunks/{header-settings-D5Z2B_Yz.js.map → header-settings-CNOqIhoW.js.map} +1 -1
  89. package/dist/_chunks/{hi-DGByrKby.js → hi-CBFRXEIm.js} +2 -2
  90. package/dist/_chunks/{hi-DGByrKby.js.map → hi-CBFRXEIm.js.map} +1 -1
  91. package/dist/_chunks/icon-button-LqoiKcUN.js +78 -0
  92. package/dist/_chunks/icon-button-LqoiKcUN.js.map +1 -0
  93. package/dist/_chunks/image-C6RM5hfF.js +16 -0
  94. package/dist/_chunks/image-C6RM5hfF.js.map +1 -0
  95. package/dist/_chunks/{insert-result-C1SYdueh.js → insert-result-njqBthzT.js} +115 -125
  96. package/dist/_chunks/insert-result-njqBthzT.js.map +1 -0
  97. package/dist/_chunks/{isSameWeek-B1odL2vR.js → isSameWeek-I3DfXUp1.js} +2 -2
  98. package/dist/_chunks/{isSameWeek-B1odL2vR.js.map → isSameWeek-I3DfXUp1.js.map} +1 -1
  99. package/dist/_chunks/{it-B16rEecm.js → it-nz6vAKwG.js} +7 -7
  100. package/dist/_chunks/{it-B16rEecm.js.map → it-nz6vAKwG.js.map} +1 -1
  101. package/dist/_chunks/{ja-B0viOgft.js → ja-DQcqdAEJ.js} +2 -2
  102. package/dist/_chunks/{ja-B0viOgft.js.map → ja-DQcqdAEJ.js.map} +1 -1
  103. package/dist/_chunks/{key-value-pair-CkQIb9EG.js → key-value-pair-BrgbMfbF.js} +2 -2
  104. package/dist/_chunks/{key-value-pair-CkQIb9EG.js.map → key-value-pair-BrgbMfbF.js.map} +1 -1
  105. package/dist/_chunks/{locale-picker-D99UyZVJ.js → locale-picker-C9JmBht3.js} +3 -3
  106. package/dist/_chunks/{locale-picker-D99UyZVJ.js.map → locale-picker-C9JmBht3.js.map} +1 -1
  107. package/dist/_chunks/{marketplace-app-shell-C4OYAC22.js → marketplace-app-shell-Cou6XnMJ.js} +5 -5
  108. package/dist/_chunks/{marketplace-app-shell-C4OYAC22.js.map → marketplace-app-shell-Cou6XnMJ.js.map} +1 -1
  109. package/dist/_chunks/{message-card-Dvl1TgaN.js → message-card-Bgcvfj6-.js} +2 -2
  110. package/dist/_chunks/{message-card-Dvl1TgaN.js.map → message-card-Bgcvfj6-.js.map} +1 -1
  111. package/dist/_chunks/{message-tray-Dl6GQaaV.js → message-tray-saAVMeHP.js} +3 -3
  112. package/dist/_chunks/{message-tray-Dl6GQaaV.js.map → message-tray-saAVMeHP.js.map} +1 -1
  113. package/dist/_chunks/{multi-select-DOLO3K_z.js → multi-select-BcPylvHR.js} +100 -90
  114. package/dist/_chunks/multi-select-BcPylvHR.js.map +1 -0
  115. package/dist/_chunks/{nl-cBxEX2QU.js → nl-L5SuDjyl.js} +2 -2
  116. package/dist/_chunks/{nl-cBxEX2QU.js.map → nl-L5SuDjyl.js.map} +1 -1
  117. package/dist/_chunks/{notification-card-CObnGdJu.js → notification-card-BiESdm8q.js} +2 -2
  118. package/dist/_chunks/{notification-card-CObnGdJu.js.map → notification-card-BiESdm8q.js.map} +1 -1
  119. package/dist/_chunks/{notification-tray-BWHDIjgd.js → notification-tray-DlgenTEe.js} +3 -3
  120. package/dist/_chunks/{notification-tray-BWHDIjgd.js.map → notification-tray-DlgenTEe.js.map} +1 -1
  121. package/dist/_chunks/{patient-search-CArmRKeg.js → patient-search-Bw9ONucF.js} +2 -2
  122. package/dist/_chunks/{patient-search-CArmRKeg.js.map → patient-search-Bw9ONucF.js.map} +1 -1
  123. package/dist/_chunks/{patient-shell-Coarf346.js → patient-shell-Tgpv0HND.js} +4 -4
  124. package/dist/_chunks/{patient-shell-Coarf346.js.map → patient-shell-Tgpv0HND.js.map} +1 -1
  125. package/dist/_chunks/{patient-summary-card-BnTqxcTr.js → patient-summary-card-Bgso0p_l.js} +2 -2
  126. package/dist/_chunks/{patient-summary-card-BnTqxcTr.js.map → patient-summary-card-Bgso0p_l.js.map} +1 -1
  127. package/dist/_chunks/{payment-form-DJ9vnzrT.js → payment-form-nXocS_MX.js} +11 -4
  128. package/dist/_chunks/{payment-form-DJ9vnzrT.js.map → payment-form-nXocS_MX.js.map} +1 -1
  129. package/dist/_chunks/{payment-request-card-B_lyobd0.js → payment-request-card-DBz3hVDz.js} +3 -3
  130. package/dist/_chunks/{payment-request-card-B_lyobd0.js.map → payment-request-card-DBz3hVDz.js.map} +1 -1
  131. package/dist/_chunks/{pdf-viewer-chMpwpA4.js → pdf-viewer-GsfNqeeT.js} +3 -3
  132. package/dist/_chunks/pdf-viewer-GsfNqeeT.js.map +1 -0
  133. package/dist/_chunks/{periodontal-chart-card-BYs9hax1.js → periodontal-chart-card-AYyHtU9K.js} +2 -2
  134. package/dist/_chunks/{periodontal-chart-card-BYs9hax1.js.map → periodontal-chart-card-AYyHtU9K.js.map} +1 -1
  135. package/dist/_chunks/phone-input-DVXhNlIl.js +563 -0
  136. package/dist/_chunks/phone-input-DVXhNlIl.js.map +1 -0
  137. package/dist/_chunks/{pl-DtS08ioY.js → pl-YAn5z2wR.js} +3 -3
  138. package/dist/_chunks/{pl-DtS08ioY.js.map → pl-YAn5z2wR.js.map} +1 -1
  139. package/dist/_chunks/{popover-Devce-tT.js → popover-DTbfAuR0.js} +2 -2
  140. package/dist/_chunks/{popover-Devce-tT.js.map → popover-DTbfAuR0.js.map} +1 -1
  141. package/dist/_chunks/{practice-results-CtfciF2v.js → practice-results-CVAgY2RZ.js} +3 -3
  142. package/dist/_chunks/{practice-results-CtfciF2v.js.map → practice-results-CVAgY2RZ.js.map} +1 -1
  143. package/dist/_chunks/{pregnancy-dating-7NUaAfob.js → pregnancy-dating-f9aJbiAk.js} +6 -6
  144. package/dist/_chunks/{pregnancy-dating-7NUaAfob.js.map → pregnancy-dating-f9aJbiAk.js.map} +1 -1
  145. package/dist/_chunks/{pregnancy-weight-gain-DI7X-0JX.js → pregnancy-weight-gain-BMRBeA8V.js} +2 -2
  146. package/dist/_chunks/{pregnancy-weight-gain-DI7X-0JX.js.map → pregnancy-weight-gain-BMRBeA8V.js.map} +1 -1
  147. package/dist/_chunks/{privacy-lock-BN3L-alb.js → privacy-lock-C7JyMf0y.js} +2 -2
  148. package/dist/_chunks/{privacy-lock-BN3L-alb.js.map → privacy-lock-C7JyMf0y.js.map} +1 -1
  149. package/dist/_chunks/{product-hub-panel-CkfZBA3t.js → product-hub-panel-CAXDFeGP.js} +2 -2
  150. package/dist/_chunks/{product-hub-panel-CkfZBA3t.js.map → product-hub-panel-CAXDFeGP.js.map} +1 -1
  151. package/dist/_chunks/{pt-yFXs1VvH.js → pt-D9xdT5KQ.js} +6 -6
  152. package/dist/_chunks/{pt-yFXs1VvH.js.map → pt-D9xdT5KQ.js.map} +1 -1
  153. package/dist/_chunks/{public-header.agent-CYQK6T6F.js → public-header.agent-BOhJgZEU.js} +3 -3
  154. package/dist/_chunks/{public-header.agent-CYQK6T6F.js.map → public-header.agent-BOhJgZEU.js.map} +1 -1
  155. package/dist/_chunks/{reviews-panel-CPrXu5TX.js → reviews-panel-DBktKm7i.js} +2 -2
  156. package/dist/_chunks/{reviews-panel-CPrXu5TX.js.map → reviews-panel-DBktKm7i.js.map} +1 -1
  157. package/dist/_chunks/rich-text-editor-B5XQNxe8.js +1586 -0
  158. package/dist/_chunks/rich-text-editor-B5XQNxe8.js.map +1 -0
  159. package/dist/_chunks/{ro-DsCzSrzR.js → ro-Cp--52bT.js} +2 -2
  160. package/dist/_chunks/{ro-DsCzSrzR.js.map → ro-Cp--52bT.js.map} +1 -1
  161. package/dist/_chunks/{ru-DgDxL0pc.js → ru-BM8eX_Zz.js} +3 -3
  162. package/dist/_chunks/{ru-DgDxL0pc.js.map → ru-BM8eX_Zz.js.map} +1 -1
  163. package/dist/_chunks/{search-bar-CvN_S0jW.js → search-bar-SY2BcV2N.js} +2 -2
  164. package/dist/_chunks/{search-bar-CvN_S0jW.js.map → search-bar-SY2BcV2N.js.map} +1 -1
  165. package/dist/_chunks/{search-input-D3aMvi4l.js → search-input-DbxrnHkW.js} +3 -3
  166. package/dist/_chunks/{search-input-D3aMvi4l.js.map → search-input-DbxrnHkW.js.map} +1 -1
  167. package/dist/_chunks/{sheet-xbzu4YiY.js → sheet-taJer-Ha.js} +2 -2
  168. package/dist/_chunks/{sheet-xbzu4YiY.js.map → sheet-taJer-Ha.js.map} +1 -1
  169. package/dist/_chunks/{sidebar-DPEHzxLZ.js → sidebar-BFwbx74W.js} +12 -1
  170. package/dist/_chunks/sidebar-BFwbx74W.js.map +1 -0
  171. package/dist/_chunks/{sign-document--nr5cxsB.js → sign-document-CdAiHiCh.js} +2 -2
  172. package/dist/_chunks/{sign-document--nr5cxsB.js.map → sign-document-CdAiHiCh.js.map} +1 -1
  173. package/dist/_chunks/{sign-in-with-alfadocs-button-BpAjVmsI.js → sign-in-with-alfadocs-button-LppxjlFt.js} +2 -2
  174. package/dist/_chunks/{sign-in-with-alfadocs-button-BpAjVmsI.js.map → sign-in-with-alfadocs-button-LppxjlFt.js.map} +1 -1
  175. package/dist/_chunks/{signature-field-DbhbpLha.js → signature-field-Dy1JRjzE.js} +10 -3
  176. package/dist/_chunks/{signature-field-DbhbpLha.js.map → signature-field-Dy1JRjzE.js.map} +1 -1
  177. package/dist/_chunks/{slot-grid-BlHHP9Qy.js → slot-grid-FsqumOaS.js} +2 -2
  178. package/dist/_chunks/{slot-grid-BlHHP9Qy.js.map → slot-grid-FsqumOaS.js.map} +1 -1
  179. package/dist/_chunks/smart-date-CWikAqZx.js +114 -0
  180. package/dist/_chunks/smart-date-CWikAqZx.js.map +1 -0
  181. package/dist/_chunks/{social-sign-in-button-uJYLM366.js → social-sign-in-button-dlpPI5l7.js} +2 -2
  182. package/dist/_chunks/{social-sign-in-button-uJYLM366.js.map → social-sign-in-button-dlpPI5l7.js.map} +1 -1
  183. package/dist/_chunks/{spinner-OjQNn8oN.js → spinner-hbwuKwMf.js} +10 -10
  184. package/dist/_chunks/{spinner-OjQNn8oN.js.map → spinner-hbwuKwMf.js.map} +1 -1
  185. package/dist/_chunks/{sq-DHlCYN67.js → sq-XRpr0r49.js} +6 -6
  186. package/dist/_chunks/{sq-DHlCYN67.js.map → sq-XRpr0r49.js.map} +1 -1
  187. package/dist/_chunks/{streaming-text-CfhDqtIT.js → streaming-text-BB9mvK4m.js} +2 -2
  188. package/dist/_chunks/{streaming-text-CfhDqtIT.js.map → streaming-text-BB9mvK4m.js.map} +1 -1
  189. package/dist/_chunks/subDays-BcYv1Lxi.js +8 -0
  190. package/dist/_chunks/{subDays-Bs00akhK.js.map → subDays-BcYv1Lxi.js.map} +1 -1
  191. package/dist/_chunks/{sv-O0QaQs_s.js → sv-Z3APomE8.js} +2 -2
  192. package/dist/_chunks/{sv-O0QaQs_s.js.map → sv-Z3APomE8.js.map} +1 -1
  193. package/dist/_chunks/{task-tray-Cb_hK4yb.js → task-tray-CAncV-QQ.js} +2 -2
  194. package/dist/_chunks/{task-tray-Cb_hK4yb.js.map → task-tray-CAncV-QQ.js.map} +1 -1
  195. package/dist/_chunks/{theme-toggle-DAW7uC0B.js → theme-toggle-DETmSu_h.js} +2 -2
  196. package/dist/_chunks/{theme-toggle-DAW7uC0B.js.map → theme-toggle-DETmSu_h.js.map} +1 -1
  197. package/dist/_chunks/{toast.agent-B0MCsvdZ.js → toast.agent-vuLRRn2a.js} +2 -2
  198. package/dist/_chunks/{toast.agent-B0MCsvdZ.js.map → toast.agent-vuLRRn2a.js.map} +1 -1
  199. package/dist/_chunks/{tooth-scheme-CiphQaON.js → tooth-scheme-BIx1O2aJ.js} +3 -3
  200. package/dist/_chunks/{tooth-scheme-CiphQaON.js.map → tooth-scheme-BIx1O2aJ.js.map} +1 -1
  201. package/dist/_chunks/{tr-BmNDRuio.js → tr-e0-P4FON.js} +2 -2
  202. package/dist/_chunks/{tr-BmNDRuio.js.map → tr-e0-P4FON.js.map} +1 -1
  203. package/dist/_chunks/{transcript-panel-B4HiC7ed.js → transcript-panel-CLHmv83g.js} +2 -2
  204. package/dist/_chunks/{transcript-panel-B4HiC7ed.js.map → transcript-panel-CLHmv83g.js.map} +1 -1
  205. package/dist/_chunks/trash-2-rPAKaRgB.js +18 -0
  206. package/dist/_chunks/trash-2-rPAKaRgB.js.map +1 -0
  207. package/dist/_chunks/{unit-converter-BIbXHIQA.js → unit-converter-C1V3ACM9.js} +2 -2
  208. package/dist/_chunks/{unit-converter-BIbXHIQA.js.map → unit-converter-C1V3ACM9.js.map} +1 -1
  209. package/dist/_chunks/{wallet-pay-button-DuDPBlCO.js → wallet-pay-button--dnR6NfJ.js} +2 -2
  210. package/dist/_chunks/{wallet-pay-button-DuDPBlCO.js.map → wallet-pay-button--dnR6NfJ.js.map} +1 -1
  211. package/dist/_chunks/{workflow-map-BJDUNYlX.js → workflow-map-Bt4Of5dT.js} +137 -149
  212. package/dist/_chunks/workflow-map-Bt4Of5dT.js.map +1 -0
  213. package/dist/_chunks/{zh-CN-CgVJZEzz.js → zh-CN-B-igM5gY.js} +3 -3
  214. package/dist/_chunks/{zh-CN-CgVJZEzz.js.map → zh-CN-B-igM5gY.js.map} +1 -1
  215. package/dist/agent-catalog.json +32 -1
  216. package/dist/components/agenda-tray/index.js +1 -1
  217. package/dist/components/ai-consent-banner/ai-consent-banner.d.ts.map +1 -1
  218. package/dist/components/ai-consent-banner/index.js +1 -1
  219. package/dist/components/ai-prompt-input/index.js +1 -1
  220. package/dist/components/ai-tools-rail/ai-tools-rail.d.ts.map +1 -1
  221. package/dist/components/ai-tools-rail/index.js +1 -1
  222. package/dist/components/anamnesis-card/index.js +1 -1
  223. package/dist/components/appointment-card/index.js +1 -1
  224. package/dist/components/audio-recorder/index.js +1 -1
  225. package/dist/components/autocomplete/index.js +1 -1
  226. package/dist/components/bishop-score/index.js +1 -1
  227. package/dist/components/bmi-calculator/index.js +1 -1
  228. package/dist/components/booking/details-form.d.ts.map +1 -1
  229. package/dist/components/booking/index.js +1 -1
  230. package/dist/components/button/icon-button.d.ts.map +1 -1
  231. package/dist/components/button/index.js +1 -1
  232. package/dist/components/calendar/index.js +1 -1
  233. package/dist/components/care-plan-card/index.js +1 -1
  234. package/dist/components/care-plan-entry-card/index.js +1 -1
  235. package/dist/components/carousel/index.js +1 -1
  236. package/dist/components/chat-input/index.js +1 -1
  237. package/dist/components/chat-message/index.js +1 -1
  238. package/dist/components/contact-profile-card/index.js +1 -1
  239. package/dist/components/cycle-calculator/index.js +1 -1
  240. package/dist/components/data-table/filters/date-range-filter.d.ts.map +1 -1
  241. package/dist/components/data-table/filters/select-filter.d.ts.map +1 -1
  242. package/dist/components/data-table/index.js +1 -1
  243. package/dist/components/date-picker/index.js +1 -1
  244. package/dist/components/date-range-picker/date-range-picker.d.ts.map +1 -1
  245. package/dist/components/date-range-picker/index.js +1 -1
  246. package/dist/components/date-time-picker/index.js +1 -1
  247. package/dist/components/description-list/index.js +1 -1
  248. package/dist/components/due-date-calculator/index.js +2 -2
  249. package/dist/components/editor-overlay/editor-overlay.d.ts +19 -0
  250. package/dist/components/editor-overlay/editor-overlay.d.ts.map +1 -0
  251. package/dist/components/editor-overlay/index.d.ts +3 -0
  252. package/dist/components/editor-overlay/index.d.ts.map +1 -0
  253. package/dist/components/editor-overlay/index.js +5 -0
  254. package/dist/components/editor-overlay/index.js.map +1 -0
  255. package/dist/components/fetal-weight/index.js +1 -1
  256. package/dist/components/fiscal-code-input/index.js +1 -1
  257. package/dist/components/freemium-paywall/index.js +1 -1
  258. package/dist/components/gestational-age-calculator/index.js +1 -1
  259. package/dist/components/hcg-doubling/index.js +1 -1
  260. package/dist/components/header/index.js +1 -1
  261. package/dist/components/header-settings/index.js +1 -1
  262. package/dist/components/icon-button/index.js +1 -1
  263. package/dist/components/index.d.ts +2 -0
  264. package/dist/components/index.d.ts.map +1 -1
  265. package/dist/components/key-value-pair/index.js +1 -1
  266. package/dist/components/locale-picker/index.js +1 -1
  267. package/dist/components/message-card/index.js +1 -1
  268. package/dist/components/message-tray/index.js +1 -1
  269. package/dist/components/multi-select/index.js +1 -1
  270. package/dist/components/multi-select/multi-select.d.ts.map +1 -1
  271. package/dist/components/notification-card/index.js +1 -1
  272. package/dist/components/notification-tray/index.js +1 -1
  273. package/dist/components/patient-search/index.js +1 -1
  274. package/dist/components/patient-summary-card/index.js +1 -1
  275. package/dist/components/payment-card/index.js +1 -1
  276. package/dist/components/payment-form/index.js +1 -1
  277. package/dist/components/payment-form/payment-form.d.ts.map +1 -1
  278. package/dist/components/pdf-viewer/index.js +1 -1
  279. package/dist/components/periodontal-chart-card/index.js +1 -1
  280. package/dist/components/phone-input/index.js +1 -1
  281. package/dist/components/phone-input/phone-input.d.ts +9 -0
  282. package/dist/components/phone-input/phone-input.d.ts.map +1 -1
  283. package/dist/components/popover/index.js +1 -1
  284. package/dist/components/practice-results/index.js +1 -1
  285. package/dist/components/pregnancy-dating/index.js +1 -1
  286. package/dist/components/pregnancy-weight-gain/index.js +1 -1
  287. package/dist/components/privacy-lock/index.js +1 -1
  288. package/dist/components/product-hub-tray/index.js +1 -1
  289. package/dist/components/public-header/index.js +1 -1
  290. package/dist/components/reviews-panel/index.js +1 -1
  291. package/dist/components/rich-text-editor/editor-toolbar.d.ts +26 -0
  292. package/dist/components/rich-text-editor/editor-toolbar.d.ts.map +1 -0
  293. package/dist/components/rich-text-editor/help-me-write-overlay.d.ts +25 -0
  294. package/dist/components/rich-text-editor/help-me-write-overlay.d.ts.map +1 -0
  295. package/dist/components/rich-text-editor/index.js +1 -1
  296. package/dist/components/rich-text-editor/rich-text-editor.agent.d.ts.map +1 -1
  297. package/dist/components/rich-text-editor/rich-text-editor.d.ts +43 -0
  298. package/dist/components/rich-text-editor/rich-text-editor.d.ts.map +1 -1
  299. package/dist/components/search-bar/index.js +1 -1
  300. package/dist/components/search-input/index.js +1 -1
  301. package/dist/components/sheet/index.js +1 -1
  302. package/dist/components/sidebar/index.js +1 -1
  303. package/dist/components/sidebar/sidebar.d.ts.map +1 -1
  304. package/dist/components/sign-document/index.js +1 -1
  305. package/dist/components/sign-in-with-alfadocs-button/index.js +1 -1
  306. package/dist/components/signature-field/index.js +1 -1
  307. package/dist/components/signature-field/signature-field.d.ts.map +1 -1
  308. package/dist/components/slot-grid/index.js +1 -1
  309. package/dist/components/smart-date/index.d.ts +3 -0
  310. package/dist/components/smart-date/index.d.ts.map +1 -0
  311. package/dist/components/smart-date/index.js +5 -0
  312. package/dist/components/smart-date/index.js.map +1 -0
  313. package/dist/components/smart-date/smart-date.d.ts +32 -0
  314. package/dist/components/smart-date/smart-date.d.ts.map +1 -0
  315. package/dist/components/social-sign-in-button/index.js +1 -1
  316. package/dist/components/spinner/index.js +1 -1
  317. package/dist/components/streaming-text/index.js +1 -1
  318. package/dist/components/task-tray/index.js +1 -1
  319. package/dist/components/theme-toggle/index.js +1 -1
  320. package/dist/components/toast/index.js +1 -1
  321. package/dist/components/tooth-scheme/index.js +1 -1
  322. package/dist/components/transcript-panel/index.js +1 -1
  323. package/dist/components/unit-converter/index.js +1 -1
  324. package/dist/components/wallet-pay-button/index.js +1 -1
  325. package/dist/components/workflow/index.js +1 -1
  326. package/dist/i18n/locales/ar.d.ts +60 -0
  327. package/dist/i18n/locales/ar.d.ts.map +1 -1
  328. package/dist/i18n/locales/ar.js +61 -1
  329. package/dist/i18n/locales/ar.js.map +1 -1
  330. package/dist/i18n/locales/de.d.ts +60 -0
  331. package/dist/i18n/locales/de.d.ts.map +1 -1
  332. package/dist/i18n/locales/de.js +61 -1
  333. package/dist/i18n/locales/de.js.map +1 -1
  334. package/dist/i18n/locales/el.d.ts +60 -0
  335. package/dist/i18n/locales/el.d.ts.map +1 -1
  336. package/dist/i18n/locales/el.js +61 -1
  337. package/dist/i18n/locales/el.js.map +1 -1
  338. package/dist/i18n/locales/en.d.ts +60 -0
  339. package/dist/i18n/locales/en.d.ts.map +1 -1
  340. package/dist/i18n/locales/en.js +65 -1
  341. package/dist/i18n/locales/en.js.map +1 -1
  342. package/dist/i18n/locales/es.d.ts +60 -0
  343. package/dist/i18n/locales/es.d.ts.map +1 -1
  344. package/dist/i18n/locales/es.js +61 -1
  345. package/dist/i18n/locales/es.js.map +1 -1
  346. package/dist/i18n/locales/fr.d.ts +60 -0
  347. package/dist/i18n/locales/fr.d.ts.map +1 -1
  348. package/dist/i18n/locales/fr.js +61 -1
  349. package/dist/i18n/locales/fr.js.map +1 -1
  350. package/dist/i18n/locales/hi.d.ts +60 -0
  351. package/dist/i18n/locales/hi.d.ts.map +1 -1
  352. package/dist/i18n/locales/hi.js +61 -1
  353. package/dist/i18n/locales/hi.js.map +1 -1
  354. package/dist/i18n/locales/it.d.ts +60 -0
  355. package/dist/i18n/locales/it.d.ts.map +1 -1
  356. package/dist/i18n/locales/it.js +61 -1
  357. package/dist/i18n/locales/it.js.map +1 -1
  358. package/dist/i18n/locales/ja.d.ts +60 -0
  359. package/dist/i18n/locales/ja.d.ts.map +1 -1
  360. package/dist/i18n/locales/ja.js +61 -1
  361. package/dist/i18n/locales/ja.js.map +1 -1
  362. package/dist/i18n/locales/nl.d.ts +60 -0
  363. package/dist/i18n/locales/nl.d.ts.map +1 -1
  364. package/dist/i18n/locales/nl.js +61 -1
  365. package/dist/i18n/locales/nl.js.map +1 -1
  366. package/dist/i18n/locales/pl.d.ts +60 -0
  367. package/dist/i18n/locales/pl.d.ts.map +1 -1
  368. package/dist/i18n/locales/pl.js +61 -1
  369. package/dist/i18n/locales/pl.js.map +1 -1
  370. package/dist/i18n/locales/pt.d.ts +60 -0
  371. package/dist/i18n/locales/pt.d.ts.map +1 -1
  372. package/dist/i18n/locales/pt.js +61 -1
  373. package/dist/i18n/locales/pt.js.map +1 -1
  374. package/dist/i18n/locales/ro.d.ts +60 -0
  375. package/dist/i18n/locales/ro.d.ts.map +1 -1
  376. package/dist/i18n/locales/ro.js +61 -1
  377. package/dist/i18n/locales/ro.js.map +1 -1
  378. package/dist/i18n/locales/ru.d.ts +60 -0
  379. package/dist/i18n/locales/ru.d.ts.map +1 -1
  380. package/dist/i18n/locales/ru.js +61 -1
  381. package/dist/i18n/locales/ru.js.map +1 -1
  382. package/dist/i18n/locales/sq.d.ts +60 -0
  383. package/dist/i18n/locales/sq.d.ts.map +1 -1
  384. package/dist/i18n/locales/sq.js +61 -1
  385. package/dist/i18n/locales/sq.js.map +1 -1
  386. package/dist/i18n/locales/sv.d.ts +60 -0
  387. package/dist/i18n/locales/sv.d.ts.map +1 -1
  388. package/dist/i18n/locales/sv.js +61 -1
  389. package/dist/i18n/locales/sv.js.map +1 -1
  390. package/dist/i18n/locales/tr.d.ts +60 -0
  391. package/dist/i18n/locales/tr.d.ts.map +1 -1
  392. package/dist/i18n/locales/tr.js +61 -1
  393. package/dist/i18n/locales/tr.js.map +1 -1
  394. package/dist/i18n/locales/zh.d.ts +60 -0
  395. package/dist/i18n/locales/zh.d.ts.map +1 -1
  396. package/dist/i18n/locales/zh.js +61 -1
  397. package/dist/i18n/locales/zh.js.map +1 -1
  398. package/dist/index.js +494 -490
  399. package/dist/index.js.map +1 -1
  400. package/dist/locales/ar.json +61 -1
  401. package/dist/locales/de.json +61 -1
  402. package/dist/locales/el.json +61 -1
  403. package/dist/locales/en.json +61 -1
  404. package/dist/locales/es.json +61 -1
  405. package/dist/locales/fr.json +61 -1
  406. package/dist/locales/hi.json +61 -1
  407. package/dist/locales/it.json +61 -1
  408. package/dist/locales/ja.json +61 -1
  409. package/dist/locales/nl.json +61 -1
  410. package/dist/locales/pl.json +61 -1
  411. package/dist/locales/pt.json +61 -1
  412. package/dist/locales/ro.json +61 -1
  413. package/dist/locales/ru.json +61 -1
  414. package/dist/locales/sq.json +61 -1
  415. package/dist/locales/sv.json +61 -1
  416. package/dist/locales/tr.json +61 -1
  417. package/dist/locales/zh.json +61 -1
  418. package/dist/patterns/alia-assistant/index.js +1 -1
  419. package/dist/patterns/marketplace-app-shell/index.js +1 -1
  420. package/dist/patterns/patient-shell/index.js +1 -1
  421. package/dist/tokens.css +36 -22
  422. package/package.json +10 -1
  423. package/dist/_chunks/ai-tools-rail-7tC3GT4h.js.map +0 -1
  424. package/dist/_chunks/booking-ChfvWy3P.js.map +0 -1
  425. package/dist/_chunks/date-picker-variants-CXEAx3O_.js.map +0 -1
  426. package/dist/_chunks/editable-currency-cell-renderer-BQgaKFCz.js.map +0 -1
  427. package/dist/_chunks/icon-button-CKEOrN37.js +0 -70
  428. package/dist/_chunks/icon-button-CKEOrN37.js.map +0 -1
  429. package/dist/_chunks/insert-result-C1SYdueh.js.map +0 -1
  430. package/dist/_chunks/multi-select-DOLO3K_z.js.map +0 -1
  431. package/dist/_chunks/pdf-viewer-chMpwpA4.js.map +0 -1
  432. package/dist/_chunks/phone-input-DfZbPPvh.js +0 -525
  433. package/dist/_chunks/phone-input-DfZbPPvh.js.map +0 -1
  434. package/dist/_chunks/rich-text-editor-B03qM22-.js +0 -334
  435. package/dist/_chunks/rich-text-editor-B03qM22-.js.map +0 -1
  436. package/dist/_chunks/sidebar-DPEHzxLZ.js.map +0 -1
  437. package/dist/_chunks/subDays-Bs00akhK.js +0 -8
  438. package/dist/_chunks/workflow-map-BJDUNYlX.js.map +0 -1
@@ -1,525 +0,0 @@
1
- import { jsxs as m, jsx as i } from "react/jsx-runtime";
2
- import { forwardRef as Fe, useContext as Ee, useMemo as h, useState as E, useRef as j, useEffect as ne, useCallback as oe } from "react";
3
- import { u as je } from "./use-isomorphic-layout-effect-BGfaCOP1.js";
4
- import * as D from "@radix-ui/react-popover";
5
- import { R as De, _ as y } from "./index-4xgbg-sn.js";
6
- import { c as G } from "./index-D2ZczOXr.js";
7
- import { useTranslation as Te } from "react-i18next";
8
- import { getCountries as Ae, parsePhoneNumberFromString as T, AsYouType as H, getCountryCallingCode as Be } from "libphonenumber-js/min";
9
- import { u as Le, F as Ke } from "./form-field-context-B3APVHKx.js";
10
- import { c as $e } from "./compose-refs-C0k0tdqF.js";
11
- import { n as _ } from "./normalize-diacritics-BNGbFNlJ.js";
12
- import { a as re } from "./flag-DZ6V7-hU.js";
13
- import { u as Me } from "./registry-nPAVE19X.js";
14
- import { C as qe } from "./chevron-down-BX_NP2Yh.js";
15
- const He = {
16
- id: "phone-input",
17
- capabilities: ["edit_inline"],
18
- state: {
19
- value: {
20
- type: "string",
21
- descriptionKey: "ui.agent.phoneInput.state.value",
22
- description: "Current E.164 phone number, or empty string when not yet valid.",
23
- read: (n) => n.getValue()
24
- },
25
- isEmpty: {
26
- type: "boolean",
27
- descriptionKey: "ui.agent.phoneInput.state.isEmpty",
28
- description: "Whether the input has no value.",
29
- read: (n) => n.getValue() === ""
30
- }
31
- },
32
- actions: {
33
- set_value: {
34
- safety: "write",
35
- argsType: "{ value: string }",
36
- descriptionKey: "ui.agent.phoneInput.actions.setValue",
37
- description: "Replace the phone number (E.164 or national format; parser will infer country).",
38
- invoke: (n, a) => {
39
- n.setValue(a.value);
40
- }
41
- },
42
- clear: {
43
- safety: "destructive",
44
- descriptionKey: "ui.agent.phoneInput.actions.clear",
45
- description: "Empty the input. Loses any typed value.",
46
- invoke: (n) => {
47
- n.clear();
48
- }
49
- },
50
- focus: {
51
- safety: "read",
52
- descriptionKey: "ui.agent.phoneInput.actions.focus",
53
- description: "Move keyboard focus to the phone-number input.",
54
- invoke: (n) => {
55
- n.focus();
56
- }
57
- }
58
- },
59
- domHooks: {
60
- root: {
61
- attr: "data-component",
62
- value: "phone-input",
63
- description: "Marks the PhoneInput wrapper."
64
- },
65
- instanceId: {
66
- attr: "data-component-id",
67
- sourceProp: "id",
68
- description: "Sourced from the id prop."
69
- }
70
- }
71
- }, _e = G(
72
- [
73
- "ds:group ds:relative ds:inline-flex ds:items-stretch ds:w-full",
74
- "ds:rounded-[var(--radius-sm)] ds:border ds:border-border ds:bg-input",
75
- "ds:shadow-[var(--shadow-input)]",
76
- "ds:text-foreground",
77
- "ds:transition-[colors,box-shadow] ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none",
78
- "ds:focus-within:outline-[length:var(--focus-ring-width)] ds:focus-within:outline-solid",
79
- "ds:focus-within:outline-ring ds:focus-within:outline-offset-[length:var(--focus-ring-offset)]",
80
- "ds:forced-colors:focus-within:outline-[CanvasText]",
81
- "ds:has-[:disabled]:cursor-not-allowed ds:has-[:disabled]:opacity-50"
82
- ].join(" "),
83
- {
84
- variants: {
85
- size: {
86
- sm: "ds:h-8 ds:text-[length:var(--font-size-sm)]",
87
- md: "ds:h-[var(--min-target-size)] ds:text-[length:var(--font-size-base)]",
88
- lg: "ds:h-12 ds:text-[length:var(--font-size-lg)]"
89
- },
90
- tone: {
91
- default: "",
92
- error: "ds:border-destructive ds:focus-within:outline-destructive"
93
- }
94
- },
95
- defaultVariants: {
96
- size: "md",
97
- tone: "default"
98
- }
99
- }
100
- ), Ge = G(
101
- [
102
- "ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]",
103
- "ds:bg-transparent ds:text-foreground",
104
- "ds:border-0 ds:border-e ds:border-e-border",
105
- "ds:rounded-s-[var(--radius-sm)]",
106
- "ds:transition-colors ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none",
107
- "ds:hover:bg-muted",
108
- "ds:focus:outline-none",
109
- "ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid",
110
- "ds:focus-visible:outline-ring ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
111
- "ds:forced-colors:focus-visible:outline-[CanvasText]",
112
- "ds:disabled:cursor-not-allowed"
113
- ].join(" "),
114
- {
115
- variants: {
116
- size: {
117
- sm: "ds:ps-3 ds:pe-2",
118
- md: "ds:ps-3 ds:pe-2",
119
- lg: "ds:ps-4 ds:pe-3"
120
- }
121
- },
122
- defaultVariants: { size: "md" }
123
- }
124
- ), Oe = G(
125
- [
126
- "ds:flex-1 ds:min-w-0 ds:bg-transparent ds:text-foreground ds:placeholder:text-muted-foreground",
127
- "ds:border-0 ds:outline-none",
128
- "ds:disabled:cursor-not-allowed",
129
- "ds:read-only:cursor-default"
130
- ].join(" "),
131
- {
132
- variants: {
133
- size: {
134
- sm: "ds:ps-2 ds:pe-3 ds:text-[length:var(--font-size-sm)]",
135
- md: "ds:ps-2 ds:pe-3 ds:text-[length:var(--font-size-base)]",
136
- lg: "ds:ps-3 ds:pe-4 ds:text-[length:var(--font-size-lg)]"
137
- }
138
- },
139
- defaultVariants: { size: "md" }
140
- }
141
- ), Ue = [
142
- "ds:z-[var(--z-popover)] ds:overflow-hidden ds:w-72",
143
- "ds:rounded-[var(--radius-md)] ds:border ds:border-border ds:bg-background ds:text-foreground",
144
- "ds:shadow-[var(--shadow-lg)]",
145
- "ds:animate-in ds:fade-in ds:zoom-in-95",
146
- "ds:data-[state=closed]:animate-out ds:data-[state=closed]:fade-out",
147
- "ds:data-[state=closed]:zoom-out-95",
148
- "ds:data-[side=bottom]:slide-in-from-top-2",
149
- "ds:data-[side=top]:slide-in-from-bottom-2",
150
- "ds:motion-reduce:animate-none"
151
- ].join(" "), We = [
152
- "ds:w-full ds:bg-transparent ds:text-foreground ds:placeholder:text-muted-foreground",
153
- "ds:border-0 ds:border-b ds:border-b-border ds:outline-none",
154
- "ds:ps-3 ds:pe-3 ds:py-2 ds:text-[var(--font-size-sm)]",
155
- "ds:focus:outline-none"
156
- ].join(" "), Ye = "ds:max-h-72 ds:overflow-y-auto ds:p-[var(--spacing-xs)]", Ze = [
157
- "ds:relative ds:flex ds:cursor-pointer ds:items-center ds:gap-[var(--spacing-sm)]",
158
- "ds:rounded-[var(--radius-sm)] ds:ps-3 ds:pe-3 ds:py-2 ds:text-[var(--font-size-sm)]",
159
- "ds:text-foreground ds:outline-none ds:select-none",
160
- "ds:data-[highlighted]:bg-muted ds:data-[highlighted]:text-foreground",
161
- "ds:data-[highlighted]:border-s-2 ds:data-[highlighted]:border-s-primary",
162
- "ds:aria-selected:bg-muted"
163
- ].join(" "), ae = [
164
- "ds:ps-3 ds:pe-3 ds:py-1.5",
165
- "type-eyebrow ds:text-muted-foreground"
166
- ].join(" "), Je = "ds:ps-3 ds:pe-3 ds:py-2 type-body-sm ds:text-muted-foreground", Qe = {
167
- sm: "ds:size-3.5",
168
- md: "ds:size-4",
169
- lg: "ds:size-5"
170
- }, ie = {
171
- sm: "sm",
172
- md: "md",
173
- lg: "lg"
174
- };
175
- function Xe(n, a) {
176
- let d = 0;
177
- for (let o = 0; o < a && o < n.length; o++)
178
- n[o] >= "0" && n[o] <= "9" && d++;
179
- return d;
180
- }
181
- function et(n, a) {
182
- if (a === 0) return 0;
183
- let d = 0;
184
- for (let o = 0; o < n.length; o++)
185
- if (n[o] >= "0" && n[o] <= "9" && (d++, d === a))
186
- return o + 1;
187
- return n.length;
188
- }
189
- function de(n, a, d, o) {
190
- if (n && a.has(n)) return n;
191
- if (d) {
192
- const f = typeof navigator < "u" ? navigator.language : void 0;
193
- if (f) {
194
- const r = f.match(/-([A-Za-z]{2})/);
195
- if (r) {
196
- const u = r[1].toUpperCase();
197
- if (a.has(u)) return u;
198
- }
199
- }
200
- try {
201
- const r = new Intl.Locale(o).region;
202
- if (r && a.has(r.toUpperCase()))
203
- return r.toUpperCase();
204
- } catch {
205
- }
206
- }
207
- return "IT";
208
- }
209
- function tt(n, a) {
210
- let d;
211
- try {
212
- d = new Intl.DisplayNames([n], { type: "region" });
213
- } catch {
214
- d = new Intl.DisplayNames(["en"], { type: "region" });
215
- }
216
- const o = a.map((r) => ({
217
- code: r,
218
- name: d.of(r) ?? r,
219
- dialCode: Be(r)
220
- })), f = new Intl.Collator(n);
221
- return o.sort((r, u) => f.compare(r.name, u.name));
222
- }
223
- const st = Fe(
224
- function({
225
- value: a,
226
- defaultValue: d,
227
- defaultCountry: o,
228
- detectBrowserCountry: f = !1,
229
- onChange: r,
230
- size: u = "md",
231
- tone: le = "default",
232
- disabled: ce,
233
- readOnly: O,
234
- placeholder: ue,
235
- popularCountries: R,
236
- className: pe,
237
- id: A,
238
- name: fe,
239
- required: me,
240
- "aria-label": he
241
- }, ge) {
242
- const { t: C, i18n: z } = Te(), x = Le(), N = Ee(Ke) !== null, g = h(
243
- () => new Set(Ae()),
244
- []
245
- ), B = h(() => {
246
- const e = de(
247
- o,
248
- g,
249
- f,
250
- z.language
251
- ), t = a ?? d;
252
- if (t) {
253
- const s = T(t);
254
- return s != null && s.country ? {
255
- country: s.country,
256
- display: s.formatNational(),
257
- pinned: !0
258
- } : { country: e, display: t, pinned: !1 };
259
- }
260
- return { country: e, display: "", pinned: !1 };
261
- }, []), [l, S] = E(B.country), [U, p] = E(
262
- B.display
263
- ), [L, K] = E(!1), [be, W] = E(""), Y = a !== void 0, $ = j(""), k = j(null), P = j(B.pinned), V = j(null), ve = $e(ge, V);
264
- ne(() => {
265
- if (P.current) return;
266
- const e = de(
267
- o,
268
- g,
269
- f,
270
- z.language
271
- );
272
- S((t) => t === e ? t : e);
273
- }, [
274
- z.language,
275
- o,
276
- g,
277
- f
278
- ]), ne(() => {
279
- if (!Y) return;
280
- const e = a ?? "";
281
- if (e === $.current) return;
282
- if (e === "") {
283
- p("");
284
- return;
285
- }
286
- const t = T(e);
287
- t != null && t.country ? (P.current = !0, S(t.country), p(t.formatNational())) : p(e);
288
- }, [a, Y]), je(() => {
289
- if (k.current == null) return;
290
- const e = k.current;
291
- k.current = null;
292
- const t = V.current;
293
- t && document.activeElement === t && t.setSelectionRange(e, e);
294
- });
295
- const b = oe(
296
- (e, t) => {
297
- const s = T(e, t), c = (s == null ? void 0 : s.number) ?? "";
298
- $.current = c, r == null || r(c, {
299
- country: t,
300
- isValid: (s == null ? void 0 : s.isValid()) ?? !1,
301
- isPossible: (s == null ? void 0 : s.isPossible()) ?? !1,
302
- type: s == null ? void 0 : s.getType()
303
- });
304
- },
305
- [r]
306
- ), ye = A ?? (N ? x.id : void 0), Z = (N ? x.disabled : !1) || !!ce, Ce = (N ? x.required : !1) || !!me, J = N ? x.invalid : !1, xe = J ? "error" : le, we = N && x.describedBy ? x.describedBy : void 0, ze = ue ?? C("inputs.phone.placeholder", "Phone number"), Ne = (e) => {
307
- if (O) return;
308
- const t = e.target, s = t.value, c = t.selectionStart ?? s.length, w = Xe(s, c), q = new H(l).input(s);
309
- k.current = et(q, w), p(q), b(q, l);
310
- }, Q = $, Ie = h(
311
- () => ({
312
- getValue: () => Q.current,
313
- setValue: (e) => {
314
- if (e === "") {
315
- p(""), b("", l);
316
- return;
317
- }
318
- const t = T(e);
319
- if (t != null && t.country)
320
- P.current = !0, S(t.country), p(t.formatNational()), b(t.formatNational(), t.country);
321
- else {
322
- const c = new H(l).input(e);
323
- p(c), b(c, l);
324
- }
325
- },
326
- clear: () => {
327
- p(""), b("", l);
328
- },
329
- focus: () => {
330
- var e;
331
- return (e = V.current) == null ? void 0 : e.focus();
332
- }
333
- }),
334
- [l, b, Q]
335
- );
336
- Me(He, Ie, A);
337
- const Re = (e) => {
338
- if (e === l) {
339
- K(!1);
340
- return;
341
- }
342
- const t = U.replace(/\D/g, ""), s = new H(e), c = t ? s.input(t) : "";
343
- P.current = !0, S(e), p(c), K(!1), W(""), b(c, e), requestAnimationFrame(() => {
344
- var w;
345
- (w = V.current) == null || w.focus();
346
- });
347
- }, v = h(
348
- () => tt(
349
- z.language,
350
- Array.from(g)
351
- ),
352
- [z.language, g]
353
- ), I = h(() => {
354
- if (!R || R.length === 0) return [];
355
- const e = new Map(v.map((t) => [t.code, t]));
356
- return R.filter((t) => g.has(t)).map((t) => e.get(t)).filter((t) => !!t);
357
- }, [R, v, g]), M = h(
358
- () => new Set(I.map((e) => e.code)),
359
- [I]
360
- ), Se = h(
361
- () => M.size > 0 ? v.filter((e) => !M.has(e.code)) : v,
362
- [v, M]
363
- ), F = h(
364
- () => v.find((e) => e.code === l),
365
- [v, l]
366
- ), X = F ? F.dialCode : "", ke = F ? F.name : l, ee = C("inputs.phone.countryPickerLabel", "Country"), Pe = `${ee}: ${ke}, +${X}`, Ve = oe(
367
- (e, t, s) => {
368
- const c = _(e), w = _(t), se = s == null ? void 0 : s.map(_);
369
- return De(
370
- c,
371
- w,
372
- se
373
- );
374
- },
375
- []
376
- ), te = (e) => {
377
- const t = `${e.name}, +${e.dialCode}`;
378
- return /* @__PURE__ */ m(
379
- y.Item,
380
- {
381
- value: e.code,
382
- keywords: [e.name, e.dialCode, `+${e.dialCode}`],
383
- onSelect: () => Re(e.code),
384
- className: Ze,
385
- "aria-label": t,
386
- children: [
387
- /* @__PURE__ */ i(re, { country: e.code, size: ie[u] }),
388
- /* @__PURE__ */ i("span", { className: "ds:flex-1 ds:truncate", children: e.name }),
389
- /* @__PURE__ */ m("bdi", { dir: "ltr", className: "ds:text-muted-foreground ds:tabular-nums", children: [
390
- "+",
391
- e.dialCode
392
- ] })
393
- ]
394
- },
395
- e.code
396
- );
397
- };
398
- return /* @__PURE__ */ m(
399
- "div",
400
- {
401
- "data-component": "phone-input",
402
- "data-component-id": A,
403
- "data-slot": "phone-input",
404
- className: _e({
405
- size: u,
406
- tone: xe,
407
- className: pe
408
- }),
409
- children: [
410
- /* @__PURE__ */ m(D.Root, { open: L, onOpenChange: K, children: [
411
- /* @__PURE__ */ i(D.Trigger, { asChild: !0, children: /* @__PURE__ */ m(
412
- "button",
413
- {
414
- type: "button",
415
- disabled: Z,
416
- "aria-haspopup": "listbox",
417
- "aria-expanded": L,
418
- "aria-label": Pe,
419
- className: Ge({ size: u }),
420
- children: [
421
- /* @__PURE__ */ i(re, { country: l, size: ie[u] }),
422
- /* @__PURE__ */ m("bdi", { dir: "ltr", className: "ds:tabular-nums", children: [
423
- "+",
424
- X
425
- ] }),
426
- /* @__PURE__ */ i(
427
- qe,
428
- {
429
- "aria-hidden": "true",
430
- className: [
431
- Qe[u],
432
- "ds:shrink-0 ds:text-muted-foreground",
433
- "ds:transition-transform ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none",
434
- L ? "ds:rotate-180" : ""
435
- ].join(" ")
436
- }
437
- )
438
- ]
439
- }
440
- ) }),
441
- /* @__PURE__ */ i(D.Portal, { children: /* @__PURE__ */ i(
442
- D.Content,
443
- {
444
- sideOffset: 6,
445
- align: "start",
446
- className: Ue,
447
- children: /* @__PURE__ */ m(y, { filter: Ve, shouldFilter: !0, loop: !0, label: ee, children: [
448
- /* @__PURE__ */ i(
449
- y.Input,
450
- {
451
- asChild: !0,
452
- value: be,
453
- onValueChange: W,
454
- children: /* @__PURE__ */ i(
455
- "input",
456
- {
457
- "data-phone-country-search": "true",
458
- type: "text",
459
- autoComplete: "off",
460
- autoCorrect: "off",
461
- spellCheck: !1,
462
- placeholder: C(
463
- "inputs.phone.searchCountry",
464
- "Search countries…"
465
- ),
466
- className: We
467
- }
468
- )
469
- }
470
- ),
471
- /* @__PURE__ */ m(y.List, { className: Ye, children: [
472
- /* @__PURE__ */ i(y.Empty, { className: Je, children: C("inputs.phone.noCountryFound", "No country found") }),
473
- I.length > 0 ? /* @__PURE__ */ i(
474
- y.Group,
475
- {
476
- heading: /* @__PURE__ */ i("span", { className: ae, children: C("inputs.phone.popularCountries", "Popular") }),
477
- children: I.map(te)
478
- }
479
- ) : null,
480
- /* @__PURE__ */ i(
481
- y.Group,
482
- {
483
- heading: I.length > 0 ? /* @__PURE__ */ i("span", { className: ae, children: C("inputs.phone.allCountries", "All countries") }) : void 0,
484
- children: Se.map(te)
485
- }
486
- )
487
- ] })
488
- ] })
489
- }
490
- ) })
491
- ] }),
492
- /* @__PURE__ */ i(
493
- "input",
494
- {
495
- ref: ve,
496
- id: ye,
497
- name: fe,
498
- type: "tel",
499
- inputMode: "tel",
500
- autoComplete: "tel-national",
501
- value: U,
502
- placeholder: ze,
503
- disabled: Z,
504
- readOnly: O,
505
- required: Ce,
506
- "aria-label": he,
507
- "aria-describedby": we,
508
- "aria-invalid": J || void 0,
509
- onChange: Ne,
510
- className: Oe({ size: u })
511
- }
512
- )
513
- ]
514
- }
515
- );
516
- }
517
- );
518
- st.displayName = "PhoneInput";
519
- export {
520
- st as P,
521
- Oe as a,
522
- Ge as c,
523
- _e as p
524
- };
525
- //# sourceMappingURL=phone-input-DfZbPPvh.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"phone-input-DfZbPPvh.js","sources":["../../src/components/phone-input/phone-input.agent.ts","../../src/components/phone-input/phone-input.tsx"],"sourcesContent":["/* -------------------------------------------------------------------- */\n/* Agent adapter — PhoneInput. */\n/* */\n/* See `src/docs/26-agent-readiness.mdx` for the contract. */\n/* -------------------------------------------------------------------- */\n\nimport type { AgentAdapter } from '../../agent/types';\nimport type { PhoneInputHandle } from './phone-input';\n\nexport const phoneInputAgent: AgentAdapter<PhoneInputHandle> = {\n id: 'phone-input',\n capabilities: ['edit_inline'],\n state: {\n value: {\n type: 'string',\n descriptionKey: 'ui.agent.phoneInput.state.value',\n description:\n 'Current E.164 phone number, or empty string when not yet valid.',\n read: (handle) => handle.getValue(),\n },\n isEmpty: {\n type: 'boolean',\n descriptionKey: 'ui.agent.phoneInput.state.isEmpty',\n description: 'Whether the input has no value.',\n read: (handle) => handle.getValue() === '',\n },\n },\n actions: {\n set_value: {\n safety: 'write',\n argsType: '{ value: string }',\n descriptionKey: 'ui.agent.phoneInput.actions.setValue',\n description:\n 'Replace the phone number (E.164 or national format; parser will infer country).',\n invoke: (handle, args: { value: string }) => {\n handle.setValue(args.value);\n },\n },\n clear: {\n safety: 'destructive',\n descriptionKey: 'ui.agent.phoneInput.actions.clear',\n description: 'Empty the input. Loses any typed value.',\n invoke: (handle) => {\n handle.clear();\n },\n },\n focus: {\n safety: 'read',\n descriptionKey: 'ui.agent.phoneInput.actions.focus',\n description: 'Move keyboard focus to the phone-number input.',\n invoke: (handle) => {\n handle.focus();\n },\n },\n },\n domHooks: {\n root: {\n attr: 'data-component',\n value: 'phone-input',\n description: 'Marks the PhoneInput wrapper.',\n },\n instanceId: {\n attr: 'data-component-id',\n sourceProp: 'id',\n description: 'Sourced from the id prop.',\n },\n },\n};\n","import {\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState,\n type ChangeEvent,\n} from 'react';\nimport { useAgentRegistration } from '../../agent';\nimport { phoneInputAgent } from './phone-input.agent';\nimport { useIsomorphicLayoutEffect } from '../../hooks/use-isomorphic-layout-effect';\n\n/** Agent-readiness curated handle for PhoneInput. */\nexport interface PhoneInputHandle {\n getValue: () => string;\n setValue: (value: string) => void;\n clear: () => void;\n focus: () => void;\n}\nimport * as Popover from '@radix-ui/react-popover';\nimport { Command, defaultFilter } from 'cmdk';\nimport { cva } from 'class-variance-authority';\nimport { useTranslation } from 'react-i18next';\nimport { ChevronDown } from 'lucide-react';\nimport {\n AsYouType,\n getCountries,\n getCountryCallingCode,\n parsePhoneNumberFromString,\n type CountryCode,\n} from 'libphonenumber-js/min';\nimport {\n FormFieldContext,\n useFormField,\n} from '../form-field/form-field-context';\nimport { composeRefs } from '../_shared/compose-refs';\nimport { normalizeDiacritics } from '../_shared/normalize-diacritics';\nimport { Flag } from '../flag';\n\nexport interface PhoneInputChangeMeta {\n country: CountryCode;\n isValid: boolean;\n isPossible: boolean;\n type?: string;\n}\n\nexport interface PhoneInputProps {\n value?: string;\n defaultValue?: string;\n /**\n * Country pre-selected when no value is supplied. Defaults to `IT`\n * (AlfaDocs's dominant user base is Italian). Pass a different\n * `CountryCode` to override, or enable `detectBrowserCountry` to\n * derive it from the browser locale.\n */\n defaultCountry?: CountryCode;\n /**\n * When true, infer the default country from `navigator.language` /\n * `Intl.Locale` before falling back to `defaultCountry` (or `IT`).\n * Off by default — most AlfaDocs flows should stay on IT regardless\n * of the visitor's browser locale.\n */\n detectBrowserCountry?: boolean;\n onChange?: (e164: string, meta: PhoneInputChangeMeta) => void;\n size?: 'sm' | 'md' | 'lg';\n tone?: 'default' | 'error';\n disabled?: boolean;\n readOnly?: boolean;\n placeholder?: string;\n popularCountries?: CountryCode[];\n className?: string;\n id?: string;\n name?: string;\n required?: boolean;\n 'aria-label'?: string;\n}\n\nconst phoneInputWrapperVariants = cva(\n [\n 'ds:group ds:relative ds:inline-flex ds:items-stretch ds:w-full',\n 'ds:rounded-[var(--radius-sm)] ds:border ds:border-border ds:bg-input',\n 'ds:shadow-[var(--shadow-input)]',\n 'ds:text-foreground',\n 'ds:transition-[colors,box-shadow] ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none',\n 'ds:focus-within:outline-[length:var(--focus-ring-width)] ds:focus-within:outline-solid',\n 'ds:focus-within:outline-ring ds:focus-within:outline-offset-[length:var(--focus-ring-offset)]',\n 'ds:forced-colors:focus-within:outline-[CanvasText]',\n 'ds:has-[:disabled]:cursor-not-allowed ds:has-[:disabled]:opacity-50',\n ].join(' '),\n {\n variants: {\n size: {\n sm: 'ds:h-8 ds:text-[length:var(--font-size-sm)]',\n md: 'ds:h-[var(--min-target-size)] ds:text-[length:var(--font-size-base)]',\n lg: 'ds:h-12 ds:text-[length:var(--font-size-lg)]',\n },\n tone: {\n default: '',\n error: 'ds:border-destructive ds:focus-within:outline-destructive',\n },\n },\n defaultVariants: {\n size: 'md',\n tone: 'default',\n },\n },\n);\n\nconst countryTriggerVariants = cva(\n [\n 'ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]',\n 'ds:bg-transparent ds:text-foreground',\n 'ds:border-0 ds:border-e ds:border-e-border',\n 'ds:rounded-s-[var(--radius-sm)]',\n 'ds:transition-colors ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none',\n 'ds:hover:bg-muted',\n 'ds:focus:outline-none',\n 'ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid',\n 'ds:focus-visible:outline-ring ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]',\n 'ds:forced-colors:focus-visible:outline-[CanvasText]',\n 'ds:disabled:cursor-not-allowed',\n ].join(' '),\n {\n variants: {\n size: {\n sm: 'ds:ps-3 ds:pe-2',\n md: 'ds:ps-3 ds:pe-2',\n lg: 'ds:ps-4 ds:pe-3',\n },\n },\n defaultVariants: { size: 'md' },\n },\n);\n\nconst phoneNumberInputVariants = cva(\n [\n 'ds:flex-1 ds:min-w-0 ds:bg-transparent ds:text-foreground ds:placeholder:text-muted-foreground',\n 'ds:border-0 ds:outline-none',\n 'ds:disabled:cursor-not-allowed',\n 'ds:read-only:cursor-default',\n ].join(' '),\n {\n variants: {\n size: {\n sm: 'ds:ps-2 ds:pe-3 ds:text-[length:var(--font-size-sm)]',\n md: 'ds:ps-2 ds:pe-3 ds:text-[length:var(--font-size-base)]',\n lg: 'ds:ps-3 ds:pe-4 ds:text-[length:var(--font-size-lg)]',\n },\n },\n defaultVariants: { size: 'md' },\n },\n);\n\nconst pickerContentClasses = [\n 'ds:z-[var(--z-popover)] ds:overflow-hidden ds:w-72',\n 'ds:rounded-[var(--radius-md)] ds:border ds:border-border ds:bg-background ds:text-foreground',\n 'ds:shadow-[var(--shadow-lg)]',\n 'ds:animate-in ds:fade-in ds:zoom-in-95',\n 'ds:data-[state=closed]:animate-out ds:data-[state=closed]:fade-out',\n 'ds:data-[state=closed]:zoom-out-95',\n 'ds:data-[side=bottom]:slide-in-from-top-2',\n 'ds:data-[side=top]:slide-in-from-bottom-2',\n 'ds:motion-reduce:animate-none',\n].join(' ');\n\nconst pickerSearchClasses = [\n 'ds:w-full ds:bg-transparent ds:text-foreground ds:placeholder:text-muted-foreground',\n 'ds:border-0 ds:border-b ds:border-b-border ds:outline-none',\n 'ds:ps-3 ds:pe-3 ds:py-2 ds:text-[var(--font-size-sm)]',\n 'ds:focus:outline-none',\n].join(' ');\n\nconst pickerListClasses =\n 'ds:max-h-72 ds:overflow-y-auto ds:p-[var(--spacing-xs)]';\n\nconst pickerItemClasses = [\n 'ds:relative ds:flex ds:cursor-pointer ds:items-center ds:gap-[var(--spacing-sm)]',\n 'ds:rounded-[var(--radius-sm)] ds:ps-3 ds:pe-3 ds:py-2 ds:text-[var(--font-size-sm)]',\n 'ds:text-foreground ds:outline-none ds:select-none',\n 'ds:data-[highlighted]:bg-muted ds:data-[highlighted]:text-foreground',\n 'ds:data-[highlighted]:border-s-2 ds:data-[highlighted]:border-s-primary',\n 'ds:aria-selected:bg-muted',\n].join(' ');\n\nconst pickerGroupHeadingClasses = [\n 'ds:ps-3 ds:pe-3 ds:py-1.5',\n 'type-eyebrow ds:text-muted-foreground',\n].join(' ');\n\nconst pickerEmptyClasses =\n 'ds:ps-3 ds:pe-3 ds:py-2 type-body-sm ds:text-muted-foreground';\n\nconst chevronSizeBySize = {\n sm: 'ds:size-3.5',\n md: 'ds:size-4',\n lg: 'ds:size-5',\n} as const;\n\nconst flagSizeBySize = {\n sm: 'sm',\n md: 'md',\n lg: 'lg',\n} as const satisfies Record<'sm' | 'md' | 'lg', 'sm' | 'md' | 'lg'>;\n\nfunction countDigitsBefore(str: string, position: number): number {\n let digits = 0;\n for (let i = 0; i < position && i < str.length; i++) {\n if (str[i] >= '0' && str[i] <= '9') digits++;\n }\n return digits;\n}\n\nfunction positionAfterDigits(str: string, targetDigits: number): number {\n if (targetDigits === 0) return 0;\n let count = 0;\n for (let i = 0; i < str.length; i++) {\n if (str[i] >= '0' && str[i] <= '9') {\n count++;\n if (count === targetDigits) return i + 1;\n }\n }\n return str.length;\n}\n\nfunction resolveDefaultCountry(\n explicit: CountryCode | undefined,\n supported: Set<string>,\n detectBrowser: boolean,\n locale: string,\n): CountryCode {\n if (explicit && supported.has(explicit)) return explicit;\n\n if (detectBrowser) {\n const fromNavigator =\n typeof navigator !== 'undefined' ? navigator.language : undefined;\n if (fromNavigator) {\n const match = fromNavigator.match(/-([A-Za-z]{2})/);\n if (match) {\n const candidate = match[1].toUpperCase();\n if (supported.has(candidate)) return candidate as CountryCode;\n }\n }\n\n try {\n const region = new Intl.Locale(locale).region;\n if (region && supported.has(region.toUpperCase())) {\n return region.toUpperCase() as CountryCode;\n }\n } catch {\n // Intl.Locale may throw on malformed BCP-47 — fall through.\n }\n }\n\n return 'IT';\n}\n\ninterface CountryRow {\n code: CountryCode;\n name: string;\n dialCode: string;\n}\n\nfunction buildCountryRows(\n locale: string,\n countries: CountryCode[],\n): CountryRow[] {\n let displayNames: Intl.DisplayNames;\n try {\n displayNames = new Intl.DisplayNames([locale], { type: 'region' });\n } catch {\n displayNames = new Intl.DisplayNames(['en'], { type: 'region' });\n }\n const rows = countries.map<CountryRow>((code) => ({\n code,\n name: displayNames.of(code) ?? code,\n dialCode: getCountryCallingCode(code),\n }));\n const collator = new Intl.Collator(locale);\n return rows.sort((a, b) => collator.compare(a.name, b.name));\n}\n\nexport const PhoneInput = forwardRef<HTMLInputElement, PhoneInputProps>(\n function PhoneInput(\n {\n value,\n defaultValue,\n defaultCountry,\n detectBrowserCountry = false,\n onChange,\n size = 'md',\n tone = 'default',\n disabled,\n readOnly,\n placeholder,\n popularCountries,\n className,\n id,\n name,\n required,\n 'aria-label': ariaLabel,\n },\n ref,\n ) {\n const { t, i18n } = useTranslation();\n const ctx = useFormField();\n const inFormField = useContext(FormFieldContext) !== null;\n\n const supportedCountries = useMemo(\n () => new Set(getCountries() as string[]),\n [],\n );\n\n const initialState = useMemo(() => {\n const resolvedCountry = resolveDefaultCountry(\n defaultCountry,\n supportedCountries,\n detectBrowserCountry,\n i18n.language,\n );\n const raw = value ?? defaultValue;\n if (raw) {\n const parsed = parsePhoneNumberFromString(raw);\n if (parsed?.country) {\n return {\n country: parsed.country,\n display: parsed.formatNational(),\n pinned: true,\n };\n }\n return { country: resolvedCountry, display: raw, pinned: false };\n }\n return { country: resolvedCountry, display: '', pinned: false };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const [country, setCountry] = useState<CountryCode>(initialState.country);\n const [displayValue, setDisplayValue] = useState<string>(\n initialState.display,\n );\n const [pickerOpen, setPickerOpen] = useState(false);\n const [pickerSearch, setPickerSearch] = useState('');\n\n const isControlled = value !== undefined;\n const lastEmittedRef = useRef<string>('');\n const pendingCaretRef = useRef<number | null>(null);\n // Pins the country once the user (or an incoming value) selects one,\n // so the locale-flip effect below stops re-resolving.\n const userSelectedCountryRef = useRef(initialState.pinned);\n\n const inputRef = useRef<HTMLInputElement | null>(null);\n const composedInputRef = composeRefs(ref, inputRef);\n\n // Re-resolve the country when i18n.language flips from the bootstrap\n // fallback to the real locale on first paint, unless the user has\n // already pinned a country.\n useEffect(() => {\n if (userSelectedCountryRef.current) return;\n const next = resolveDefaultCountry(\n defaultCountry,\n supportedCountries,\n detectBrowserCountry,\n i18n.language,\n );\n setCountry((prev) => (prev === next ? prev : next));\n }, [\n i18n.language,\n defaultCountry,\n supportedCountries,\n detectBrowserCountry,\n ]);\n\n // Sync state back from a controlled `value` prop change that did not\n // originate from this component (e.g. parent reset). Skip the sync when\n // the incoming value matches what we just emitted.\n useEffect(() => {\n if (!isControlled) return;\n const current = value ?? '';\n if (current === lastEmittedRef.current) return;\n if (current === '') {\n setDisplayValue('');\n return;\n }\n const parsed = parsePhoneNumberFromString(current);\n if (parsed?.country) {\n userSelectedCountryRef.current = true;\n setCountry(parsed.country);\n setDisplayValue(parsed.formatNational());\n } else {\n setDisplayValue(current);\n }\n }, [value, isControlled]);\n\n useIsomorphicLayoutEffect(() => {\n if (pendingCaretRef.current == null) return;\n const pos = pendingCaretRef.current;\n pendingCaretRef.current = null;\n const node = inputRef.current;\n if (node && document.activeElement === node) {\n node.setSelectionRange(pos, pos);\n }\n });\n\n const emit = useCallback(\n (nextDisplay: string, nextCountry: CountryCode) => {\n const parsed = parsePhoneNumberFromString(nextDisplay, nextCountry);\n const e164 = parsed?.number ?? '';\n lastEmittedRef.current = e164;\n onChange?.(e164, {\n country: nextCountry,\n isValid: parsed?.isValid() ?? false,\n isPossible: parsed?.isPossible() ?? false,\n type: parsed?.getType(),\n });\n },\n [onChange],\n );\n\n const inputId = id ?? (inFormField ? ctx.id : undefined);\n const effectiveDisabled =\n (inFormField ? ctx.disabled : false) || Boolean(disabled);\n const effectiveRequired =\n (inFormField ? ctx.required : false) || Boolean(required);\n const effectiveInvalid = inFormField ? ctx.invalid : false;\n const effectiveTone = effectiveInvalid ? 'error' : tone;\n const describedBy =\n inFormField && ctx.describedBy ? ctx.describedBy : undefined;\n\n const resolvedPlaceholder =\n placeholder ?? t('inputs.phone.placeholder', 'Phone number');\n\n const handleInputChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (readOnly) return;\n const target = event.target;\n const raw = target.value;\n const caret = target.selectionStart ?? raw.length;\n const digitsBefore = countDigitsBefore(raw, caret);\n\n const formatter = new AsYouType(country);\n const formatted = formatter.input(raw);\n\n pendingCaretRef.current = positionAfterDigits(formatted, digitsBefore);\n setDisplayValue(formatted);\n emit(formatted, country);\n };\n\n const lastEmittedRefForHandle = lastEmittedRef;\n const agentHandle = useMemo<PhoneInputHandle>(\n () => ({\n getValue: () => lastEmittedRefForHandle.current,\n setValue: (next) => {\n if (next === '') {\n setDisplayValue('');\n emit('', country);\n return;\n }\n const parsed = parsePhoneNumberFromString(next);\n if (parsed?.country) {\n userSelectedCountryRef.current = true;\n setCountry(parsed.country);\n setDisplayValue(parsed.formatNational());\n emit(parsed.formatNational(), parsed.country);\n } else {\n const formatter = new AsYouType(country);\n const formatted = formatter.input(next);\n setDisplayValue(formatted);\n emit(formatted, country);\n }\n },\n clear: () => {\n setDisplayValue('');\n emit('', country);\n },\n focus: () => inputRef.current?.focus(),\n }),\n [country, emit, lastEmittedRefForHandle],\n );\n useAgentRegistration(phoneInputAgent, agentHandle, id);\n\n const handleCountrySelect = (nextCountry: CountryCode) => {\n if (nextCountry === country) {\n setPickerOpen(false);\n return;\n }\n const digits = displayValue.replace(/\\D/g, '');\n const formatter = new AsYouType(nextCountry);\n const reformatted = digits ? formatter.input(digits) : '';\n userSelectedCountryRef.current = true;\n setCountry(nextCountry);\n setDisplayValue(reformatted);\n setPickerOpen(false);\n setPickerSearch('');\n emit(reformatted, nextCountry);\n requestAnimationFrame(() => {\n inputRef.current?.focus();\n });\n };\n\n const countryRows = useMemo(\n () =>\n buildCountryRows(\n i18n.language,\n Array.from(supportedCountries) as CountryCode[],\n ),\n [i18n.language, supportedCountries],\n );\n\n const popularRows = useMemo(() => {\n if (!popularCountries || popularCountries.length === 0) return [];\n const byCode = new Map(countryRows.map((row) => [row.code, row]));\n return popularCountries\n .filter((code): code is CountryCode => supportedCountries.has(code))\n .map((code) => byCode.get(code))\n .filter((row): row is CountryRow => Boolean(row));\n }, [popularCountries, countryRows, supportedCountries]);\n\n const popularCodes = useMemo(\n () => new Set(popularRows.map((row) => row.code)),\n [popularRows],\n );\n\n const remainingRows = useMemo(\n () =>\n popularCodes.size > 0\n ? countryRows.filter((row) => !popularCodes.has(row.code))\n : countryRows,\n [countryRows, popularCodes],\n );\n\n const selected = useMemo(\n () => countryRows.find((row) => row.code === country),\n [countryRows, country],\n );\n const selectedDialCode = selected ? selected.dialCode : '';\n const selectedName = selected ? selected.name : country;\n\n const triggerLabel = t('inputs.phone.countryPickerLabel', 'Country');\n const triggerAccessibleName = `${triggerLabel}: ${selectedName}, +${selectedDialCode}`;\n\n const filterFn = useCallback(\n (candidate: string, searchStr: string, keywords?: string[]) => {\n const normalizedCandidate = normalizeDiacritics(candidate);\n const normalizedSearch = normalizeDiacritics(searchStr);\n const normalizedKeywords = keywords?.map(normalizeDiacritics);\n return defaultFilter(\n normalizedCandidate,\n normalizedSearch,\n normalizedKeywords,\n );\n },\n [],\n );\n\n const renderRow = (row: CountryRow) => {\n const accessibleLabel = `${row.name}, +${row.dialCode}`;\n return (\n <Command.Item\n key={row.code}\n value={row.code}\n keywords={[row.name, row.dialCode, `+${row.dialCode}`]}\n onSelect={() => handleCountrySelect(row.code)}\n className={pickerItemClasses}\n aria-label={accessibleLabel}\n >\n <Flag country={row.code} size={flagSizeBySize[size]} />\n <span className=\"ds:flex-1 ds:truncate\">{row.name}</span>\n <bdi dir=\"ltr\" className=\"ds:text-muted-foreground ds:tabular-nums\">\n +{row.dialCode}\n </bdi>\n </Command.Item>\n );\n };\n\n return (\n <div\n data-component=\"phone-input\"\n data-component-id={id}\n data-slot=\"phone-input\"\n className={phoneInputWrapperVariants({\n size,\n tone: effectiveTone,\n className,\n })}\n >\n <Popover.Root open={pickerOpen} onOpenChange={setPickerOpen}>\n <Popover.Trigger asChild>\n <button\n type=\"button\"\n disabled={effectiveDisabled}\n aria-haspopup=\"listbox\"\n aria-expanded={pickerOpen}\n aria-label={triggerAccessibleName}\n className={countryTriggerVariants({ size })}\n >\n <Flag country={country} size={flagSizeBySize[size]} />\n <bdi dir=\"ltr\" className=\"ds:tabular-nums\">\n +{selectedDialCode}\n </bdi>\n <ChevronDown\n aria-hidden=\"true\"\n className={[\n chevronSizeBySize[size],\n 'ds:shrink-0 ds:text-muted-foreground',\n 'ds:transition-transform ds:duration-[var(--animation-duration)] ds:motion-reduce:transition-none',\n pickerOpen ? 'ds:rotate-180' : '',\n ].join(' ')}\n />\n </button>\n </Popover.Trigger>\n <Popover.Portal>\n <Popover.Content\n sideOffset={6}\n align=\"start\"\n className={pickerContentClasses}\n >\n <Command filter={filterFn} shouldFilter loop label={triggerLabel}>\n <Command.Input\n asChild\n value={pickerSearch}\n onValueChange={setPickerSearch}\n >\n <input\n data-phone-country-search=\"true\"\n type=\"text\"\n autoComplete=\"off\"\n autoCorrect=\"off\"\n spellCheck={false}\n placeholder={t(\n 'inputs.phone.searchCountry',\n 'Search countries…',\n )}\n className={pickerSearchClasses}\n />\n </Command.Input>\n <Command.List className={pickerListClasses}>\n <Command.Empty className={pickerEmptyClasses}>\n {t('inputs.phone.noCountryFound', 'No country found')}\n </Command.Empty>\n {popularRows.length > 0 ? (\n <Command.Group\n heading={\n <span className={pickerGroupHeadingClasses}>\n {t('inputs.phone.popularCountries', 'Popular')}\n </span>\n }\n >\n {popularRows.map(renderRow)}\n </Command.Group>\n ) : null}\n <Command.Group\n heading={\n popularRows.length > 0 ? (\n <span className={pickerGroupHeadingClasses}>\n {t('inputs.phone.allCountries', 'All countries')}\n </span>\n ) : undefined\n }\n >\n {remainingRows.map(renderRow)}\n </Command.Group>\n </Command.List>\n </Command>\n </Popover.Content>\n </Popover.Portal>\n </Popover.Root>\n <input\n ref={composedInputRef}\n id={inputId}\n name={name}\n type=\"tel\"\n inputMode=\"tel\"\n autoComplete=\"tel-national\"\n value={displayValue}\n placeholder={resolvedPlaceholder}\n disabled={effectiveDisabled}\n readOnly={readOnly}\n required={effectiveRequired}\n aria-label={ariaLabel}\n aria-describedby={describedBy}\n aria-invalid={effectiveInvalid || undefined}\n onChange={handleInputChange}\n className={phoneNumberInputVariants({ size })}\n />\n </div>\n );\n },\n);\n\nPhoneInput.displayName = 'PhoneInput';\n\nexport {\n phoneInputWrapperVariants,\n countryTriggerVariants,\n phoneNumberInputVariants,\n};\n"],"names":["phoneInputAgent","handle","args","phoneInputWrapperVariants","cva","countryTriggerVariants","phoneNumberInputVariants","pickerContentClasses","pickerSearchClasses","pickerListClasses","pickerItemClasses","pickerGroupHeadingClasses","pickerEmptyClasses","chevronSizeBySize","flagSizeBySize","countDigitsBefore","str","position","digits","i","positionAfterDigits","targetDigits","count","resolveDefaultCountry","explicit","supported","detectBrowser","locale","fromNavigator","match","candidate","region","buildCountryRows","countries","displayNames","rows","code","getCountryCallingCode","collator","a","b","PhoneInput","forwardRef","value","defaultValue","defaultCountry","detectBrowserCountry","onChange","size","tone","disabled","readOnly","placeholder","popularCountries","className","id","name","required","ariaLabel","ref","t","i18n","useTranslation","ctx","useFormField","inFormField","useContext","FormFieldContext","supportedCountries","useMemo","getCountries","initialState","resolvedCountry","raw","parsed","parsePhoneNumberFromString","country","setCountry","useState","displayValue","setDisplayValue","pickerOpen","setPickerOpen","pickerSearch","setPickerSearch","isControlled","lastEmittedRef","useRef","pendingCaretRef","userSelectedCountryRef","inputRef","composedInputRef","composeRefs","useEffect","next","prev","current","useIsomorphicLayoutEffect","pos","node","emit","useCallback","nextDisplay","nextCountry","e164","inputId","effectiveDisabled","effectiveRequired","effectiveInvalid","effectiveTone","describedBy","resolvedPlaceholder","handleInputChange","event","target","caret","digitsBefore","formatted","AsYouType","lastEmittedRefForHandle","agentHandle","_a","useAgentRegistration","handleCountrySelect","formatter","reformatted","countryRows","popularRows","byCode","row","popularCodes","remainingRows","selected","selectedDialCode","selectedName","triggerLabel","triggerAccessibleName","filterFn","searchStr","keywords","normalizedCandidate","normalizeDiacritics","normalizedSearch","normalizedKeywords","defaultFilter","renderRow","accessibleLabel","jsxs","Command","jsx","Flag","Popover","ChevronDown"],"mappings":"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"}