@alfadocs/ui-kit-debug 1.90.2 → 1.92.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 (284) hide show
  1. package/README.md +24 -0
  2. package/dist/_chunks/{agenda-card-BDuvreCe.js → agenda-card-BhY342MA.js} +2 -2
  3. package/dist/_chunks/{agenda-card-BDuvreCe.js.map → agenda-card-BhY342MA.js.map} +1 -1
  4. package/dist/_chunks/{agenda-tray-D-jvptdo.js → agenda-tray-BmxBGEci.js} +2 -2
  5. package/dist/_chunks/{agenda-tray-D-jvptdo.js.map → agenda-tray-BmxBGEci.js.map} +1 -1
  6. package/dist/_chunks/{alia-sidebar-CsTRAxC8.js → alia-sidebar-ovRX_oti.js} +3 -3
  7. package/dist/_chunks/{alia-sidebar-CsTRAxC8.js.map → alia-sidebar-ovRX_oti.js.map} +1 -1
  8. package/dist/_chunks/{appointment-card-5JMWi9_f.js → appointment-card-Bstc1p7a.js} +2 -2
  9. package/dist/_chunks/{appointment-card-5JMWi9_f.js.map → appointment-card-Bstc1p7a.js.map} +1 -1
  10. package/dist/_chunks/{appointment-peek-39BwVMUf.js → appointment-peek-C0kKqnFk.js} +2 -2
  11. package/dist/_chunks/{appointment-peek-39BwVMUf.js.map → appointment-peek-C0kKqnFk.js.map} +1 -1
  12. package/dist/_chunks/{appointment-timeline-1-Za2miy.js → appointment-timeline-rbt9AwHO.js} +2 -2
  13. package/dist/_chunks/{appointment-timeline-1-Za2miy.js.map → appointment-timeline-rbt9AwHO.js.map} +1 -1
  14. package/dist/_chunks/{appointment-tray-Dwc8MSIQ.js → appointment-tray-6zd8RLIL.js} +2 -2
  15. package/dist/_chunks/{appointment-tray-Dwc8MSIQ.js.map → appointment-tray-6zd8RLIL.js.map} +1 -1
  16. package/dist/_chunks/{avatar-BPiPL7ND.js → avatar-a6042Ox2.js} +52 -52
  17. package/dist/_chunks/avatar-a6042Ox2.js.map +1 -0
  18. package/dist/_chunks/{balance-badge-cell-D9VhFp0L.js → balance-badge-cell-BtJvre1-.js} +2 -2
  19. package/dist/_chunks/{balance-badge-cell-D9VhFp0L.js.map → balance-badge-cell-BtJvre1-.js.map} +1 -1
  20. package/dist/_chunks/{calendar-ClB-jWH1.js → calendar-CmiMS4FJ.js} +2 -2
  21. package/dist/_chunks/{calendar-ClB-jWH1.js.map → calendar-CmiMS4FJ.js.map} +1 -1
  22. package/dist/_chunks/{calendar-appointment-editor-dialog-CiAGAX2t.js → calendar-appointment-editor-dialog-sJKLoVJ2.js} +7 -7
  23. package/dist/_chunks/{calendar-appointment-editor-dialog-CiAGAX2t.js.map → calendar-appointment-editor-dialog-sJKLoVJ2.js.map} +1 -1
  24. package/dist/_chunks/{care-plan-card-BYCPNDvA.js → care-plan-card-DD9rEWYN.js} +2 -2
  25. package/dist/_chunks/{care-plan-card-BYCPNDvA.js.map → care-plan-card-DD9rEWYN.js.map} +1 -1
  26. package/dist/_chunks/{care-plan-header-BzsAg6oY.js → care-plan-header-CXUJQt8Q.js} +2 -2
  27. package/dist/_chunks/{care-plan-header-BzsAg6oY.js.map → care-plan-header-CXUJQt8Q.js.map} +1 -1
  28. package/dist/_chunks/{chat-message-CmFJdEre.js → chat-message-LRO_6Ee3.js} +2 -2
  29. package/dist/_chunks/{chat-message-CmFJdEre.js.map → chat-message-LRO_6Ee3.js.map} +1 -1
  30. package/dist/_chunks/{clinical-note-card-Caidqcwa.js → clinical-note-card-Cut2lNmu.js} +3 -3
  31. package/dist/_chunks/{clinical-note-card-Caidqcwa.js.map → clinical-note-card-Cut2lNmu.js.map} +1 -1
  32. package/dist/_chunks/{contact-card-Czu60UvU.js → contact-card-ClvEDM9e.js} +2 -2
  33. package/dist/_chunks/{contact-card-Czu60UvU.js.map → contact-card-ClvEDM9e.js.map} +1 -1
  34. package/dist/_chunks/{contact-profile-card-Da1vmJQI.js → contact-profile-card-CX45mZA3.js} +106 -95
  35. package/dist/_chunks/contact-profile-card-CX45mZA3.js.map +1 -0
  36. package/dist/_chunks/{dependent-selector-C4kOgO8b.js → dependent-selector-CyNi7M_f.js} +2 -2
  37. package/dist/_chunks/{dependent-selector-C4kOgO8b.js.map → dependent-selector-CyNi7M_f.js.map} +1 -1
  38. package/dist/_chunks/{entity-summary-BLxzSSXK.js → entity-summary-B_bOloqP.js} +3 -3
  39. package/dist/_chunks/{entity-summary-BLxzSSXK.js.map → entity-summary-B_bOloqP.js.map} +1 -1
  40. package/dist/_chunks/error-page-B0fGNTRB.js +419 -0
  41. package/dist/_chunks/error-page-B0fGNTRB.js.map +1 -0
  42. package/dist/_chunks/{languages-CZqBaPwI.js → languages-CGLX6Qpe.js} +3 -15
  43. package/dist/_chunks/languages-CGLX6Qpe.js.map +1 -0
  44. package/dist/_chunks/link-DtCfnLnF.js +332 -0
  45. package/dist/_chunks/link-DtCfnLnF.js.map +1 -0
  46. package/dist/_chunks/{link-cell-renderer-CnCgudvq.js → link-cell-renderer-BS3V4LA6.js} +2 -2
  47. package/dist/_chunks/{link-cell-renderer-CnCgudvq.js.map → link-cell-renderer-BS3V4LA6.js.map} +1 -1
  48. package/dist/_chunks/{marketplace-app-shell-CmZx0Oam.js → marketplace-app-shell-CJQtx3sv.js} +2 -2
  49. package/dist/_chunks/{marketplace-app-shell-CmZx0Oam.js.map → marketplace-app-shell-CJQtx3sv.js.map} +1 -1
  50. package/dist/_chunks/{message-card-CvCnCssc.js → message-card-B6SduXJv.js} +2 -2
  51. package/dist/_chunks/{message-card-CvCnCssc.js.map → message-card-B6SduXJv.js.map} +1 -1
  52. package/dist/_chunks/{message-tray-IJYvy6Cf.js → message-tray-Cllf-v0G.js} +2 -2
  53. package/dist/_chunks/{message-tray-IJYvy6Cf.js.map → message-tray-Cllf-v0G.js.map} +1 -1
  54. package/dist/_chunks/{nav-grid-Oc4aCPrg.js → nav-grid-D2xVcHTO.js} +2 -2
  55. package/dist/_chunks/{nav-grid-Oc4aCPrg.js.map → nav-grid-D2xVcHTO.js.map} +1 -1
  56. package/dist/_chunks/{note-attachment-DIlIQ7JF.js → note-attachment-cnj2JRrg.js} +2 -2
  57. package/dist/_chunks/{note-attachment-DIlIQ7JF.js.map → note-attachment-cnj2JRrg.js.map} +1 -1
  58. package/dist/_chunks/{note-timeline-KzL52MmB.js → note-timeline-BrjHBQfx.js} +2 -2
  59. package/dist/_chunks/{note-timeline-KzL52MmB.js.map → note-timeline-BrjHBQfx.js.map} +1 -1
  60. package/dist/_chunks/{notes-panel-Dywo6R55.js → notes-panel-ib7I3aNf.js} +2 -2
  61. package/dist/_chunks/{notes-panel-Dywo6R55.js.map → notes-panel-ib7I3aNf.js.map} +1 -1
  62. package/dist/_chunks/{operator-hero-6aAIQaFZ.js → operator-hero-C_5B-8Qp.js} +43 -41
  63. package/dist/_chunks/operator-hero-C_5B-8Qp.js.map +1 -0
  64. package/dist/_chunks/{patient-details-BUr7Oemx.js → patient-details-BjcUpD9S.js} +3 -3
  65. package/dist/_chunks/{patient-details-BUr7Oemx.js.map → patient-details-BjcUpD9S.js.map} +1 -1
  66. package/dist/_chunks/{patient-field-row-bJk8Q_qr.js → patient-field-row-B0tdiaWi.js} +2 -2
  67. package/dist/_chunks/{patient-field-row-bJk8Q_qr.js.map → patient-field-row-B0tdiaWi.js.map} +1 -1
  68. package/dist/_chunks/{patient-summary-card-CCQZ8X37.js → patient-summary-card-Cvv6_Ugk.js} +4 -4
  69. package/dist/_chunks/{patient-summary-card-CCQZ8X37.js.map → patient-summary-card-Cvv6_Ugk.js.map} +1 -1
  70. package/dist/_chunks/{payment-request-card-MndSlVoK.js → payment-request-card-BfGauFY0.js} +2 -2
  71. package/dist/_chunks/{payment-request-card-MndSlVoK.js.map → payment-request-card-BfGauFY0.js.map} +1 -1
  72. package/dist/_chunks/{practice-profile-hero-qfrsFQI_.js → practice-profile-hero-ClzE-4CB.js} +76 -73
  73. package/dist/_chunks/practice-profile-hero-ClzE-4CB.js.map +1 -0
  74. package/dist/_chunks/{practice-results-DQuOfqej.js → practice-results-Bls-mygM.js} +620 -595
  75. package/dist/_chunks/practice-results-Bls-mygM.js.map +1 -0
  76. package/dist/_chunks/{product-hub-panel-Blag8t8f.js → product-hub-panel-bHi7lkVD.js} +2 -2
  77. package/dist/_chunks/{product-hub-panel-Blag8t8f.js.map → product-hub-panel-bHi7lkVD.js.map} +1 -1
  78. package/dist/_chunks/public-footer-IoRWoAMz.js +596 -0
  79. package/dist/_chunks/public-footer-IoRWoAMz.js.map +1 -0
  80. package/dist/_chunks/reserved.agent-C1gLyK2R.js +4610 -0
  81. package/dist/_chunks/reserved.agent-C1gLyK2R.js.map +1 -0
  82. package/dist/_chunks/{signature-request-DjY-X62H.js → signature-request-DvhyrRpn.js} +3 -3
  83. package/dist/_chunks/{signature-request-DjY-X62H.js.map → signature-request-DvhyrRpn.js.map} +1 -1
  84. package/dist/_chunks/{signed-out-frame-G-3ATOdu.js → signed-out-frame-CgRXOUzi.js} +2 -2
  85. package/dist/_chunks/{signed-out-frame-G-3ATOdu.js.map → signed-out-frame-CgRXOUzi.js.map} +1 -1
  86. package/dist/_chunks/{slot-grid-DrwynKeN.js → slot-grid-B-IAFX3C.js} +180 -169
  87. package/dist/_chunks/slot-grid-B-IAFX3C.js.map +1 -0
  88. package/dist/_chunks/{timeline-wUuTDFY_.js → timeline-BcYHdP56.js} +2 -2
  89. package/dist/_chunks/{timeline-wUuTDFY_.js.map → timeline-BcYHdP56.js.map} +1 -1
  90. package/dist/_chunks/{use-appointment-details-read-BytPq3Ux.js → use-appointment-details-read-D8vDg0sg.js} +5 -5
  91. package/dist/_chunks/{use-appointment-details-read-BytPq3Ux.js.map → use-appointment-details-read-D8vDg0sg.js.map} +1 -1
  92. package/dist/ag-grid.css +2746 -0
  93. package/dist/agent-catalog.json +16 -2
  94. package/dist/apexcharts.css +40 -0
  95. package/dist/components/_shared/social-brand-icons.d.ts +29 -0
  96. package/dist/components/_shared/social-brand-icons.d.ts.map +1 -0
  97. package/dist/components/agenda-card/index.js +1 -1
  98. package/dist/components/agenda-tray/index.js +1 -1
  99. package/dist/components/appointment-card/index.js +2 -2
  100. package/dist/components/appointment-details-panel/index.js +1 -1
  101. package/dist/components/appointment-peek/index.js +1 -1
  102. package/dist/components/appointment-timeline/index.js +1 -1
  103. package/dist/components/avatar/avatar.d.ts +14 -0
  104. package/dist/components/avatar/avatar.d.ts.map +1 -1
  105. package/dist/components/avatar/index.js +1 -1
  106. package/dist/components/booking/booking-types.d.ts +26 -0
  107. package/dist/components/booking/booking-types.d.ts.map +1 -1
  108. package/dist/components/booking/booking.d.ts.map +1 -1
  109. package/dist/components/booking/details-form.d.ts.map +1 -1
  110. package/dist/components/booking/index.d.ts +3 -0
  111. package/dist/components/booking/index.d.ts.map +1 -1
  112. package/dist/components/booking/index.js +6 -4
  113. package/dist/components/booking/reserved.agent.d.ts +4 -0
  114. package/dist/components/booking/reserved.agent.d.ts.map +1 -0
  115. package/dist/components/booking/reserved.d.ts +9 -6
  116. package/dist/components/booking/reserved.d.ts.map +1 -1
  117. package/dist/components/booking/slot-load-state.d.ts +11 -0
  118. package/dist/components/booking/slot-load-state.d.ts.map +1 -0
  119. package/dist/components/calendar/index.js +1 -1
  120. package/dist/components/care-plan-card/index.js +1 -1
  121. package/dist/components/care-plan-header/index.js +1 -1
  122. package/dist/components/chat-message/index.js +1 -1
  123. package/dist/components/clinical-note-card/index.js +1 -1
  124. package/dist/components/contact-card/index.js +1 -1
  125. package/dist/components/contact-profile-card/index.js +1 -1
  126. package/dist/components/data-table/index.js +1 -1
  127. package/dist/components/dependent-selector/index.js +1 -1
  128. package/dist/components/entity-summary/index.js +1 -1
  129. package/dist/components/link/index.js +1 -1
  130. package/dist/components/link/link.d.ts +10 -1
  131. package/dist/components/link/link.d.ts.map +1 -1
  132. package/dist/components/link/social-url.d.ts +71 -0
  133. package/dist/components/link/social-url.d.ts.map +1 -0
  134. package/dist/components/message-card/index.js +1 -1
  135. package/dist/components/message-tray/index.js +1 -1
  136. package/dist/components/nav-grid/index.js +1 -1
  137. package/dist/components/note-timeline/index.js +1 -1
  138. package/dist/components/notes-panel/index.js +1 -1
  139. package/dist/components/operator-hero/index.js +1 -1
  140. package/dist/components/operator-hero/operator-hero.d.ts +6 -0
  141. package/dist/components/operator-hero/operator-hero.d.ts.map +1 -1
  142. package/dist/components/patient-details/index.js +1 -1
  143. package/dist/components/patient-summary-card/index.js +1 -1
  144. package/dist/components/patient-table/index.js +1 -1
  145. package/dist/components/payment-card/index.js +1 -1
  146. package/dist/components/practice-profile-hero/index.js +1 -1
  147. package/dist/components/practice-profile-hero/practice-profile-hero.d.ts +6 -0
  148. package/dist/components/practice-profile-hero/practice-profile-hero.d.ts.map +1 -1
  149. package/dist/components/practice-results/index.js +1 -1
  150. package/dist/components/practice-results/practice-results.d.ts +9 -3
  151. package/dist/components/practice-results/practice-results.d.ts.map +1 -1
  152. package/dist/components/product-hub-tray/index.js +1 -1
  153. package/dist/components/public-footer/index.js +1 -1
  154. package/dist/components/public-footer/public-footer.d.ts +13 -1
  155. package/dist/components/public-footer/public-footer.d.ts.map +1 -1
  156. package/dist/components/public-footer/socials.d.ts +6 -5
  157. package/dist/components/public-footer/socials.d.ts.map +1 -1
  158. package/dist/components/slot-grid/index.js +1 -1
  159. package/dist/components/slot-grid/slot-grid.d.ts +2 -0
  160. package/dist/components/slot-grid/slot-grid.d.ts.map +1 -1
  161. package/dist/components/timeline/index.js +1 -1
  162. package/dist/core.css +2 -0
  163. package/dist/fullcalendar.css +56 -0
  164. package/dist/i18n/config.d.ts.map +1 -1
  165. package/dist/i18n/config.js +225 -97
  166. package/dist/i18n/config.js.map +1 -1
  167. package/dist/i18n/locales/ar.d.ts +4 -0
  168. package/dist/i18n/locales/ar.d.ts.map +1 -1
  169. package/dist/i18n/locales/ar.js +6 -2
  170. package/dist/i18n/locales/ar.js.map +1 -1
  171. package/dist/i18n/locales/de.d.ts +4 -0
  172. package/dist/i18n/locales/de.d.ts.map +1 -1
  173. package/dist/i18n/locales/de.js +6 -2
  174. package/dist/i18n/locales/de.js.map +1 -1
  175. package/dist/i18n/locales/el.d.ts +4 -0
  176. package/dist/i18n/locales/el.d.ts.map +1 -1
  177. package/dist/i18n/locales/el.js +6 -2
  178. package/dist/i18n/locales/el.js.map +1 -1
  179. package/dist/i18n/locales/en.d.ts +6 -2
  180. package/dist/i18n/locales/en.d.ts.map +1 -1
  181. package/dist/i18n/locales/en.js +5 -1
  182. package/dist/i18n/locales/en.js.map +1 -1
  183. package/dist/i18n/locales/es.d.ts +4 -0
  184. package/dist/i18n/locales/es.d.ts.map +1 -1
  185. package/dist/i18n/locales/es.js +6 -2
  186. package/dist/i18n/locales/es.js.map +1 -1
  187. package/dist/i18n/locales/fr.d.ts +4 -0
  188. package/dist/i18n/locales/fr.d.ts.map +1 -1
  189. package/dist/i18n/locales/fr.js +6 -2
  190. package/dist/i18n/locales/fr.js.map +1 -1
  191. package/dist/i18n/locales/hi.d.ts +4 -0
  192. package/dist/i18n/locales/hi.d.ts.map +1 -1
  193. package/dist/i18n/locales/hi.js +6 -2
  194. package/dist/i18n/locales/hi.js.map +1 -1
  195. package/dist/i18n/locales/it.d.ts +4 -0
  196. package/dist/i18n/locales/it.d.ts.map +1 -1
  197. package/dist/i18n/locales/it.js +6 -2
  198. package/dist/i18n/locales/it.js.map +1 -1
  199. package/dist/i18n/locales/ja.d.ts +4 -0
  200. package/dist/i18n/locales/ja.d.ts.map +1 -1
  201. package/dist/i18n/locales/ja.js +6 -2
  202. package/dist/i18n/locales/ja.js.map +1 -1
  203. package/dist/i18n/locales/nl.d.ts +4 -0
  204. package/dist/i18n/locales/nl.d.ts.map +1 -1
  205. package/dist/i18n/locales/nl.js +6 -2
  206. package/dist/i18n/locales/nl.js.map +1 -1
  207. package/dist/i18n/locales/pl.d.ts +4 -0
  208. package/dist/i18n/locales/pl.d.ts.map +1 -1
  209. package/dist/i18n/locales/pl.js +6 -2
  210. package/dist/i18n/locales/pl.js.map +1 -1
  211. package/dist/i18n/locales/pt.d.ts +4 -0
  212. package/dist/i18n/locales/pt.d.ts.map +1 -1
  213. package/dist/i18n/locales/pt.js +6 -2
  214. package/dist/i18n/locales/pt.js.map +1 -1
  215. package/dist/i18n/locales/ro.d.ts +4 -0
  216. package/dist/i18n/locales/ro.d.ts.map +1 -1
  217. package/dist/i18n/locales/ro.js +6 -2
  218. package/dist/i18n/locales/ro.js.map +1 -1
  219. package/dist/i18n/locales/ru.d.ts +4 -0
  220. package/dist/i18n/locales/ru.d.ts.map +1 -1
  221. package/dist/i18n/locales/ru.js +6 -2
  222. package/dist/i18n/locales/ru.js.map +1 -1
  223. package/dist/i18n/locales/sq.d.ts +4 -0
  224. package/dist/i18n/locales/sq.d.ts.map +1 -1
  225. package/dist/i18n/locales/sq.js +6 -2
  226. package/dist/i18n/locales/sq.js.map +1 -1
  227. package/dist/i18n/locales/sv.d.ts +4 -0
  228. package/dist/i18n/locales/sv.d.ts.map +1 -1
  229. package/dist/i18n/locales/sv.js +6 -2
  230. package/dist/i18n/locales/sv.js.map +1 -1
  231. package/dist/i18n/locales/tr.d.ts +4 -0
  232. package/dist/i18n/locales/tr.d.ts.map +1 -1
  233. package/dist/i18n/locales/tr.js +6 -2
  234. package/dist/i18n/locales/tr.js.map +1 -1
  235. package/dist/i18n/locales/zh.d.ts +4 -0
  236. package/dist/i18n/locales/zh.d.ts.map +1 -1
  237. package/dist/i18n/locales/zh.js +6 -2
  238. package/dist/i18n/locales/zh.js.map +1 -1
  239. package/dist/index.js +473 -471
  240. package/dist/locales/ar.json +6 -2
  241. package/dist/locales/de.json +6 -2
  242. package/dist/locales/el.json +6 -2
  243. package/dist/locales/en.json +5 -1
  244. package/dist/locales/es.json +6 -2
  245. package/dist/locales/fr.json +6 -2
  246. package/dist/locales/hi.json +6 -2
  247. package/dist/locales/it.json +6 -2
  248. package/dist/locales/ja.json +6 -2
  249. package/dist/locales/nl.json +6 -2
  250. package/dist/locales/pl.json +6 -2
  251. package/dist/locales/pt.json +6 -2
  252. package/dist/locales/ro.json +6 -2
  253. package/dist/locales/ru.json +6 -2
  254. package/dist/locales/sq.json +6 -2
  255. package/dist/locales/sv.json +6 -2
  256. package/dist/locales/tr.json +6 -2
  257. package/dist/locales/zh.json +6 -2
  258. package/dist/patterns/alia-assistant/index.js +1 -1
  259. package/dist/patterns/calendar/index.js +1 -1
  260. package/dist/patterns/error-page/error-page-english.d.ts +71 -0
  261. package/dist/patterns/error-page/error-page-english.d.ts.map +1 -0
  262. package/dist/patterns/error-page/error-page.d.ts.map +1 -1
  263. package/dist/patterns/error-page/index.js +1 -1
  264. package/dist/patterns/marketplace-app-shell/index.js +1 -1
  265. package/dist/patterns/signature-request/index.js +1 -1
  266. package/dist/patterns/signed-out-frame/index.js +1 -1
  267. package/dist/redactor.css +54 -0
  268. package/dist/tokens.css +1 -1
  269. package/package.json +10 -3
  270. package/dist/_chunks/avatar-BPiPL7ND.js.map +0 -1
  271. package/dist/_chunks/booking-CcE_oviI.js +0 -4373
  272. package/dist/_chunks/booking-CcE_oviI.js.map +0 -1
  273. package/dist/_chunks/contact-profile-card-Da1vmJQI.js.map +0 -1
  274. package/dist/_chunks/error-page-Bhai-spN.js +0 -344
  275. package/dist/_chunks/error-page-Bhai-spN.js.map +0 -1
  276. package/dist/_chunks/languages-CZqBaPwI.js.map +0 -1
  277. package/dist/_chunks/link-N5_YpLtm.js +0 -138
  278. package/dist/_chunks/link-N5_YpLtm.js.map +0 -1
  279. package/dist/_chunks/operator-hero-6aAIQaFZ.js.map +0 -1
  280. package/dist/_chunks/practice-profile-hero-qfrsFQI_.js.map +0 -1
  281. package/dist/_chunks/practice-results-DQuOfqej.js.map +0 -1
  282. package/dist/_chunks/public-footer-CXOrdAaS.js +0 -568
  283. package/dist/_chunks/public-footer-CXOrdAaS.js.map +0 -1
  284. package/dist/_chunks/slot-grid-DrwynKeN.js.map +0 -1
@@ -1,37 +1,37 @@
1
- import { jsx as t, jsxs as f, Fragment as rt } from "react/jsx-runtime";
2
- import { forwardRef as ot, useState as pe, useRef as T, useMemo as M, useImperativeHandle as lt, useCallback as $, useEffect as X } from "react";
3
- import { c as D } from "./index-D2ZczOXr.js";
4
- import { useTranslation as w } from "react-i18next";
5
- import { A as ee } from "./alert-9kEwDza3.js";
6
- import { A as Le } from "./avatar-BPiPL7ND.js";
7
- import { B as te } from "./button-DohK_Ak_.js";
8
- import { D as V } from "./dropdown-menu-D1we7oAY.js";
9
- import { E as ct } from "./empty-state-DwJ5YNzz.js";
10
- import { M as dt } from "./map-view-UrNgxBy3.js";
1
+ import { jsx as t, jsxs as h, Fragment as it } from "react/jsx-runtime";
2
+ import { forwardRef as st, useState as me, useRef as F, useMemo as M, useImperativeHandle as rt, useCallback as B, useEffect as J } from "react";
3
+ import { c as O } from "./index-D2ZczOXr.js";
4
+ import { useTranslation as C } from "react-i18next";
5
+ import { A as Y } from "./alert-9kEwDza3.js";
6
+ import { A as Le } from "./avatar-a6042Ox2.js";
7
+ import { B as ee } from "./button-DohK_Ak_.js";
8
+ import { D } from "./dropdown-menu-D1we7oAY.js";
9
+ import { E as ot } from "./empty-state-DwJ5YNzz.js";
10
+ import { M as ct } from "./map-view-UrNgxBy3.js";
11
11
  import { R as Pe } from "./rating-CGYpg5dj.js";
12
12
  import { S as I } from "./sheet-uZZXaO_S.js";
13
- import { S as ut } from "./skeleton-tTWJpvAq.js";
14
- import { S as mt } from "./spinner-CoflYlEx.js";
15
- import { B as O } from "./badge-BUk4RjTS.js";
16
- import { u as ft } from "./use-media-query-CcAx5SMM.js";
17
- import { b as pt, a as Re } from "./format-price-BcFBa-WP.js";
18
- import { u as ht } from "./registry-DvAUVLHh.js";
19
- import { c as gt } from "./createLucideIcon-DhHxpK9K.js";
20
- import { R as vt } from "./refresh-cw-DnI0cLFC.js";
13
+ import { S as lt } from "./skeleton-tTWJpvAq.js";
14
+ import { S as dt } from "./spinner-CoflYlEx.js";
15
+ import { B as z } from "./badge-BUk4RjTS.js";
16
+ import { u as ut } from "./use-media-query-CcAx5SMM.js";
17
+ import { b as mt, a as Ce } from "./format-price-BcFBa-WP.js";
18
+ import { u as ft } from "./registry-DvAUVLHh.js";
19
+ import { c as pt } from "./createLucideIcon-DhHxpK9K.js";
20
+ import { R as ht } from "./refresh-cw-DnI0cLFC.js";
21
21
  import { C as Ae } from "./chevron-down-DWE7GSq9.js";
22
- import { M as ae } from "./map-pin-BaY37-Km.js";
23
- import { L as Me, B as bt } from "./languages-CZqBaPwI.js";
24
- import { S as Te } from "./shield-check-DCJALLVh.js";
22
+ import { L as Me } from "./languages-CGLX6Qpe.js";
23
+ import { S as Fe } from "./shield-check-DCJALLVh.js";
25
24
  import { H as Ie } from "./heart--qCA4ffe.js";
26
- import { C as xt } from "./calendar-clock-hbObjfGY.js";
27
- import { C as yt } from "./calendar-plus-BFrIRE4r.js";
25
+ import { M as fe } from "./map-pin-BaY37-Km.js";
26
+ import { C as gt } from "./calendar-clock-hbObjfGY.js";
27
+ import { C as vt } from "./calendar-plus-BFrIRE4r.js";
28
28
  /**
29
29
  * @license lucide-react v1.22.0 - ISC
30
30
  *
31
31
  * This source code is licensed under the ISC license.
32
32
  * See the LICENSE file in the root directory of this source tree.
33
33
  */
34
- const kt = [
34
+ const bt = [
35
35
  [
36
36
  "path",
37
37
  {
@@ -41,7 +41,7 @@ const kt = [
41
41
  ],
42
42
  ["path", { d: "M15 5.764v15", key: "1pn4in" }],
43
43
  ["path", { d: "M9 3.236v15", key: "1uimfh" }]
44
- ], Ct = gt("map", kt), wt = {
44
+ ], xt = pt("map", bt), yt = {
45
45
  id: "practice-results",
46
46
  // `scroll` backs scroll_to_result; `pick` backs focus_pin (a non-persisting
47
47
  // pin highlight). The active variant is consumer-owned via props, so there is
@@ -120,17 +120,18 @@ const kt = [
120
120
  description: 'Stable result id emitted on each rendered result card. Used by scroll_to_result / focus_pin to address a single result. The non-focusable card group is labelled by the practice-result-{id}-name heading, which contains data-component="practice-result-name-link": a visible link to result.href that navigates without firing onResultSelect or click telemetry. Each card also carries up to two CTA anchors: data-component="practice-result-open-cta" (practice page; absent when the consumer sets showCardOpenButton=false) and data-component="practice-result-book-cta" (booking flow; data-slot-aware="true" when it deep-links to a next slot). Card content carries its own read-only hooks: data-component="practice-result-tagline", data-component="practice-result-description", and data-component="practice-result-price" (the kit-formatted first-visit cost: firstVisitPrice supports fixed, from and range amounts plus an optional practice-written label; it takes precedence over the older firstVisitPriceCents fixed-price field. Absent when neither price is set).'
121
121
  }
122
122
  }
123
- }, Rt = 13, Nt = [
123
+ }, wt = 13, kt = [
124
124
  "distance",
125
125
  "rating",
126
126
  "next-available",
127
+ "price",
127
128
  "relevance"
128
129
  ];
129
- function Fe(e, n, i) {
130
+ function Te(e, n, i) {
130
131
  const s = `languages.${e}`;
131
132
  return i.exists(s) ? n(s) : e.toUpperCase();
132
133
  }
133
- function H(e, n) {
134
+ function $(e, n) {
134
135
  if (typeof window > "u") return;
135
136
  const i = window.track;
136
137
  try {
@@ -138,28 +139,28 @@ function H(e, n) {
138
139
  } catch {
139
140
  }
140
141
  }
141
- function Q(e, n, i, s) {
142
- const r = e.findIndex((c) => c.id === n);
142
+ function Z(e, n, i, s) {
143
+ const r = e.findIndex((l) => l.id === n);
143
144
  if (r < 0) return;
144
145
  const a = e[r];
145
- a && (H("serp_result_clicked", { resultId: n, source: i, position: r }), s(a, i));
146
+ a && ($("serp_result_clicked", { resultId: n, source: i, position: r }), s(a, i));
146
147
  }
147
- function St(e, n) {
148
- const s = (n.lat - e.lat) * Math.PI / 180, r = (n.lng - e.lng) * Math.PI / 180, a = e.lat * Math.PI / 180, c = n.lat * Math.PI / 180, u = Math.sin(s / 2), o = Math.sin(r / 2), h = u * u + Math.cos(a) * Math.cos(c) * o * o;
149
- return 2 * 6371 * Math.asin(Math.min(1, Math.sqrt(h)));
148
+ function Ct(e, n) {
149
+ const s = (n.lat - e.lat) * Math.PI / 180, r = (n.lng - e.lng) * Math.PI / 180, a = e.lat * Math.PI / 180, l = n.lat * Math.PI / 180, u = Math.sin(s / 2), o = Math.sin(r / 2), p = u * u + Math.cos(a) * Math.cos(l) * o * o;
150
+ return 2 * 6371 * Math.asin(Math.min(1, Math.sqrt(p)));
150
151
  }
151
- function Lt(e, n, i) {
152
+ function Rt(e, n, i) {
152
153
  var r;
153
154
  const s = [];
154
155
  for (const a of e) {
155
- const c = a.field ?? a.key, u = (((r = i == null ? void 0 : i[a.key]) == null ? void 0 : r.length) ?? 0) > 0, o = a.type === "boolean" || a.type !== "options" && a.options.length === 0 && (u || n.some(
156
- (h) => typeof h[c] == "boolean"
156
+ const l = a.field ?? a.key, u = (((r = i == null ? void 0 : i[a.key]) == null ? void 0 : r.length) ?? 0) > 0, o = a.type === "boolean" || a.type !== "options" && a.options.length === 0 && (u || n.some(
157
+ (p) => typeof p[l] == "boolean"
157
158
  ));
158
- !o && a.options.length === 0 || s.push({ ...a, boolean: o, booleanField: c });
159
+ !o && a.options.length === 0 || s.push({ ...a, boolean: o, booleanField: l });
159
160
  }
160
161
  return s;
161
162
  }
162
- function Pt(e, n, i) {
163
+ function Nt(e, n, i) {
163
164
  return !n || Object.keys(n).length === 0 ? e : e.filter((s) => {
164
165
  for (const r of i) {
165
166
  const a = n[r.key];
@@ -168,28 +169,47 @@ function Pt(e, n, i) {
168
169
  if (s[r.booleanField] !== !0) return !1;
169
170
  continue;
170
171
  }
171
- const c = r.key === "insurance" ? s.insurances : r.key === "language" ? s.languages : s[r.key];
172
- if (!Array.isArray(c) || !(r.multi ? a.some((o) => c.includes(o)) : c.includes(a[0]))) return !1;
172
+ const l = r.key === "insurance" ? s.insurances : r.key === "language" ? s.languages : s[r.key];
173
+ if (!Array.isArray(l) || !(r.multi ? a.some((o) => l.includes(o)) : l.includes(a[0]))) return !1;
173
174
  }
174
175
  return !0;
175
176
  });
176
177
  }
177
- function At(e, n, i) {
178
+ function St(e) {
179
+ const n = e.firstVisitPrice && Number.isFinite(e.firstVisitPrice.minCents) ? e.firstVisitPrice.minCents : e.firstVisitPriceCents;
180
+ return n != null && Number.isFinite(n) && n >= 0 ? n : 1 / 0;
181
+ }
182
+ function Lt(e) {
183
+ return e.firstVisitPrice && Number.isFinite(e.firstVisitPrice.minCents) ? e.firstVisitPrice.kind === "fixed" : !0;
184
+ }
185
+ function Re(e, n) {
186
+ return e == null && n == null ? 0 : e == null ? 1 : n == null ? -1 : e - n;
187
+ }
188
+ function Pt(e, n, i) {
178
189
  const s = e.map((a) => {
179
- const c = a.location ? a.location.distanceKm ?? (i ? St(i, a.location) : void 0) : void 0;
180
- return { result: a, distanceKm: c };
181
- }), r = (a, c) => {
182
- var u, o, h, l;
190
+ const l = a.location ? a.location.distanceKm ?? (i ? Ct(i, a.location) : void 0) : void 0;
191
+ return {
192
+ result: a,
193
+ distanceKm: l,
194
+ price: n === "price" ? St(a) : void 0,
195
+ fixed: n === "price" ? Lt(a) : !1
196
+ };
197
+ }), r = (a, l) => {
198
+ var u, o, p, c;
183
199
  switch (n) {
184
200
  case "distance":
185
- return a.distanceKm == null && c.distanceKm == null ? 0 : a.distanceKm == null ? 1 : c.distanceKm == null ? -1 : a.distanceKm - c.distanceKm;
201
+ return Re(a.distanceKm, l.distanceKm);
202
+ case "price": {
203
+ const m = a.price ?? 1 / 0, f = l.price ?? 1 / 0;
204
+ return m !== f ? m - f : m !== 1 / 0 && a.fixed !== l.fixed ? a.fixed ? -1 : 1 : Re(a.distanceKm, l.distanceKm);
205
+ }
186
206
  case "rating": {
187
207
  const m = ((u = a.result.rating) == null ? void 0 : u.value) ?? -1;
188
- return (((o = c.result.rating) == null ? void 0 : o.value) ?? -1) - m;
208
+ return (((o = l.result.rating) == null ? void 0 : o.value) ?? -1) - m;
189
209
  }
190
210
  case "next-available": {
191
- const m = ((h = a.result.nextAvailableSlot) == null ? void 0 : h.dateTime) ?? "", p = ((l = c.result.nextAvailableSlot) == null ? void 0 : l.dateTime) ?? "";
192
- return !m && !p ? 0 : m ? p ? m.localeCompare(p) : -1 : 1;
211
+ const m = ((p = a.result.nextAvailableSlot) == null ? void 0 : p.dateTime) ?? "", f = ((c = l.result.nextAvailableSlot) == null ? void 0 : c.dateTime) ?? "";
212
+ return !m && !f ? 0 : m ? f ? m.localeCompare(f) : -1 : 1;
193
213
  }
194
214
  case "relevance":
195
215
  default:
@@ -197,24 +217,24 @@ function At(e, n, i) {
197
217
  }
198
218
  };
199
219
  return [...s].sort(r).map(
200
- ({ result: a, distanceKm: c }) => c != null && a.location ? {
220
+ ({ result: a, distanceKm: l }) => l != null && a.location ? {
201
221
  ...a,
202
- location: { ...a.location, distanceKm: c }
222
+ location: { ...a.location, distanceKm: l }
203
223
  } : a
204
224
  );
205
225
  }
206
226
  function Ne(e) {
207
227
  let n = -1 / 0, i = 1 / 0, s = -1 / 0, r = 1 / 0, a = !1;
208
- for (const c of e) {
209
- if (!c.location) continue;
228
+ for (const l of e) {
229
+ if (!l.location) continue;
210
230
  a = !0;
211
- const { lat: u, lng: o } = c.location;
231
+ const { lat: u, lng: o } = l.location;
212
232
  u > n && (n = u), u < i && (i = u), o > s && (s = o), o < r && (r = o);
213
233
  }
214
234
  if (a)
215
235
  return { north: n, south: i, east: s, west: r };
216
236
  }
217
- const Mt = D(
237
+ const At = O(
218
238
  "ds:flex ds:w-full ds:flex-col ds:text-[var(--foreground)] ds:gap-[var(--spacing-md)]",
219
239
  {
220
240
  variants: {
@@ -234,14 +254,14 @@ function _e({
234
254
  totalCount: s,
235
255
  searchCentreLabel: r
236
256
  }) {
237
- const { t: a } = w("ui"), c = `h${n}`;
257
+ const { t: a } = C("ui"), l = `h${n}`;
238
258
  if (!e && !i && s == null) return null;
239
259
  const u = s != null ? r ? a("practiceResults.results.heading", {
240
260
  count: s,
241
261
  place: r
242
262
  }) : a("practiceResults.results.summary", { count: s }) : void 0;
243
- return /* @__PURE__ */ f("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
244
- e ? /* @__PURE__ */ t(c, { className: "type-title-section ds:m-0 ds:text-[var(--foreground)]", children: e }) : null,
263
+ return /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
264
+ e ? /* @__PURE__ */ t(l, { className: "type-title-section ds:m-0 ds:text-[var(--foreground)]", children: e }) : null,
245
265
  i ? /* @__PURE__ */ t("p", { className: "type-body ds:m-0 ds:text-[var(--muted-foreground)]", children: i }) : null,
246
266
  u ? /* @__PURE__ */ t(
247
267
  "p",
@@ -253,7 +273,7 @@ function _e({
253
273
  ) : null
254
274
  ] });
255
275
  }
256
- const ne = D(
276
+ const te = O(
257
277
  [
258
278
  "ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]",
259
279
  "ds:min-h-[var(--min-target-size)]",
@@ -275,7 +295,7 @@ const ne = D(
275
295
  },
276
296
  defaultVariants: { state: "idle" }
277
297
  }
278
- ), Tt = D(
298
+ ), Mt = O(
279
299
  "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]",
280
300
  {
281
301
  variants: {
@@ -294,7 +314,7 @@ const ne = D(
294
314
  },
295
315
  defaultVariants: { placement: "inline" }
296
316
  }
297
- ), It = D(
317
+ ), Ft = O(
298
318
  [
299
319
  "ds:ms-[var(--spacing-xs)] ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]",
300
320
  "ds:min-h-[var(--min-target-size)] ds:ps-[var(--spacing-xs)] ds:pe-[var(--spacing-xs)]",
@@ -305,67 +325,67 @@ const ne = D(
305
325
  "ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]"
306
326
  ].join(" ")
307
327
  );
308
- function ze({
328
+ function Ve({
309
329
  facets: e,
310
330
  value: n,
311
331
  onChange: i,
312
332
  floating: s
313
333
  }) {
314
- const { t: r } = w("ui"), a = M(() => n ?? {}, [n]), c = M(
315
- () => Object.values(a).some((l) => l && l.length > 0),
334
+ const { t: r } = C("ui"), a = M(() => n ?? {}, [n]), l = M(
335
+ () => Object.values(a).some((c) => c && c.length > 0),
316
336
  [a]
317
- ), u = (l, m) => {
318
- const p = { ...a };
319
- m.length === 0 ? delete p[l] : p[l] = m, i(p), H("serp_filter_changed", { key: l, values: m });
320
- }, o = (l) => {
321
- var p;
322
- const m = (((p = a[l]) == null ? void 0 : p.length) ?? 0) > 0;
323
- u(l, m ? [] : ["true"]);
324
- }, h = (l, m) => {
325
- const p = a[l.key] ?? [], b = p.includes(m);
337
+ ), u = (c, m) => {
338
+ const f = { ...a };
339
+ m.length === 0 ? delete f[c] : f[c] = m, i(f), $("serp_filter_changed", { key: c, values: m });
340
+ }, o = (c) => {
341
+ var f;
342
+ const m = (((f = a[c]) == null ? void 0 : f.length) ?? 0) > 0;
343
+ u(c, m ? [] : ["true"]);
344
+ }, p = (c, m) => {
345
+ const f = a[c.key] ?? [], b = f.includes(m);
326
346
  let g;
327
- l.multi ? g = b ? p.filter((x) => x !== m) : [...p, m] : g = b ? [] : [m], u(l.key, g);
347
+ c.multi ? g = b ? f.filter((x) => x !== m) : [...f, m] : g = b ? [] : [m], u(c.key, g);
328
348
  };
329
- return e.length === 0 ? null : /* @__PURE__ */ f(
349
+ return e.length === 0 ? null : /* @__PURE__ */ h(
330
350
  "div",
331
351
  {
332
352
  "data-component": "practice-results-filters",
333
353
  role: "group",
334
354
  "aria-label": r("practiceResults.filters.label"),
335
- className: Tt({
355
+ className: Mt({
336
356
  placement: s ? "floating" : "inline"
337
357
  }),
338
358
  children: [
339
- e.map((l) => {
340
- const m = l.boolean, p = a[l.key] ?? [], b = p.length > 0;
359
+ e.map((c) => {
360
+ const m = c.boolean, f = a[c.key] ?? [], b = f.length > 0;
341
361
  if (m)
342
362
  return /* @__PURE__ */ t(
343
363
  "button",
344
364
  {
345
365
  type: "button",
346
366
  "aria-pressed": b,
347
- "aria-label": l.label,
348
- onClick: () => o(l.key),
349
- className: ne({
367
+ "aria-label": c.label,
368
+ onClick: () => o(c.key),
369
+ className: te({
350
370
  state: b ? "active" : "idle"
351
371
  }),
352
- children: /* @__PURE__ */ t("span", { children: l.label })
372
+ children: /* @__PURE__ */ t("span", { children: c.label })
353
373
  },
354
- l.key
374
+ c.key
355
375
  );
356
- const g = b ? ` (${p.length})` : "";
357
- return /* @__PURE__ */ f(V.Root, { children: [
358
- /* @__PURE__ */ t(V.Trigger, { asChild: !0, children: /* @__PURE__ */ f(
376
+ const g = b ? ` (${f.length})` : "";
377
+ return /* @__PURE__ */ h(D.Root, { children: [
378
+ /* @__PURE__ */ t(D.Trigger, { asChild: !0, children: /* @__PURE__ */ h(
359
379
  "button",
360
380
  {
361
381
  type: "button",
362
- "aria-label": `${l.label}${g}`,
363
- className: ne({
382
+ "aria-label": `${c.label}${g}`,
383
+ className: te({
364
384
  state: b ? "active" : "idle"
365
385
  }),
366
386
  children: [
367
- /* @__PURE__ */ f("span", { children: [
368
- l.label,
387
+ /* @__PURE__ */ h("span", { children: [
388
+ c.label,
369
389
  g
370
390
  ] }),
371
391
  /* @__PURE__ */ t(
@@ -378,27 +398,27 @@ function ze({
378
398
  ]
379
399
  }
380
400
  ) }),
381
- /* @__PURE__ */ t(V.Content, { sideOffset: 8, align: "start", children: l.options.map((x) => /* @__PURE__ */ t(
382
- V.CheckboxItem,
401
+ /* @__PURE__ */ t(D.Content, { sideOffset: 8, align: "start", children: c.options.map((x) => /* @__PURE__ */ t(
402
+ D.CheckboxItem,
383
403
  {
384
- checked: p.includes(x.value),
404
+ checked: f.includes(x.value),
385
405
  onSelect: (k) => {
386
- l.multi && k.preventDefault(), h(l, x.value);
406
+ c.multi && k.preventDefault(), p(c, x.value);
387
407
  },
388
408
  children: x.label
389
409
  },
390
410
  x.value
391
411
  )) })
392
- ] }, l.key);
412
+ ] }, c.key);
393
413
  }),
394
- c ? /* @__PURE__ */ t(
414
+ l ? /* @__PURE__ */ t(
395
415
  "button",
396
416
  {
397
417
  type: "button",
398
418
  onClick: () => {
399
- i({}), H("serp_filter_changed", { key: "*", values: [] });
419
+ i({}), $("serp_filter_changed", { key: "*", values: [] });
400
420
  },
401
- className: It(),
421
+ className: Ft(),
402
422
  children: r("practiceResults.filters.clear")
403
423
  }
404
424
  ) : null
@@ -406,8 +426,8 @@ function ze({
406
426
  }
407
427
  );
408
428
  }
409
- function me({ value: e, onChange: n }) {
410
- const { t: i } = w("ui"), s = (r) => {
429
+ function de({ value: e, onChange: n }) {
430
+ const { t: i } = C("ui"), s = (r) => {
411
431
  switch (r) {
412
432
  case "distance":
413
433
  return i("practiceResults.sort.distance");
@@ -415,20 +435,22 @@ function me({ value: e, onChange: n }) {
415
435
  return i("practiceResults.sort.rating");
416
436
  case "next-available":
417
437
  return i("practiceResults.sort.nextAvailable");
438
+ case "price":
439
+ return i("practiceResults.sort.price");
418
440
  case "relevance":
419
441
  default:
420
442
  return i("practiceResults.sort.relevance");
421
443
  }
422
444
  };
423
- return /* @__PURE__ */ f(V.Root, { children: [
424
- /* @__PURE__ */ t(V.Trigger, { asChild: !0, children: /* @__PURE__ */ f(
445
+ return /* @__PURE__ */ h(D.Root, { children: [
446
+ /* @__PURE__ */ t(D.Trigger, { asChild: !0, children: /* @__PURE__ */ h(
425
447
  "button",
426
448
  {
427
449
  type: "button",
428
450
  "aria-label": `${i("practiceResults.sort.label")}: ${s(e)}`,
429
- className: ne({ state: "idle" }),
451
+ className: te({ state: "idle" }),
430
452
  children: [
431
- /* @__PURE__ */ f("span", { children: [
453
+ /* @__PURE__ */ h("span", { children: [
432
454
  i("practiceResults.sort.label"),
433
455
  ": ",
434
456
  s(e)
@@ -437,30 +459,30 @@ function me({ value: e, onChange: n }) {
437
459
  ]
438
460
  }
439
461
  ) }),
440
- /* @__PURE__ */ t(V.Content, { sideOffset: 8, align: "end", children: /* @__PURE__ */ t(
441
- V.RadioGroup,
462
+ /* @__PURE__ */ t(D.Content, { sideOffset: 8, align: "end", children: /* @__PURE__ */ t(
463
+ D.RadioGroup,
442
464
  {
443
465
  value: e,
444
466
  onValueChange: (r) => {
445
467
  const a = r;
446
- a !== e && (n(a), H("serp_sort_changed", { sort: a }));
468
+ a !== e && (n(a), $("serp_sort_changed", { sort: a }));
447
469
  },
448
- children: Nt.map((r) => /* @__PURE__ */ t(V.RadioItem, { value: r, children: s(r) }, r))
470
+ children: kt.map((r) => /* @__PURE__ */ t(D.RadioItem, { value: r, children: s(r) }, r))
449
471
  }
450
472
  ) })
451
473
  ] });
452
474
  }
453
- function He({ distanceKm: e }) {
454
- const { t: n, i18n: i } = w("ui"), s = M(() => {
475
+ function It({ distanceKm: e }) {
476
+ const { t: n, i18n: i } = C("ui"), s = M(() => {
455
477
  if (e < 1) return n("practiceResults.distance.below");
456
478
  const r = new Intl.NumberFormat(i.language, {
457
479
  maximumFractionDigits: 1
458
480
  }).format(e);
459
481
  return n("practiceResults.distance.km", { distance: r });
460
482
  }, [e, n, i.language]);
461
- return /* @__PURE__ */ t(O, { variant: "neutral", leading: /* @__PURE__ */ t(ae, { "aria-hidden": "true" }), children: s });
483
+ return /* @__PURE__ */ t(z, { variant: "neutral", leading: /* @__PURE__ */ t(fe, { "aria-hidden": "true" }), children: s });
462
484
  }
463
- const Se = D(
485
+ const Se = O(
464
486
  [
465
487
  "ds:inline-size-[12rem] ds:block-size-[8rem] ds:shrink-0",
466
488
  "ds:rounded-[var(--radius-md)] ds:overflow-hidden"
@@ -479,7 +501,7 @@ const Se = D(
479
501
  defaultVariants: { state: "placeholder" }
480
502
  }
481
503
  );
482
- function Ft() {
504
+ function Tt() {
483
505
  if (typeof document > "u") return "4945a3";
484
506
  const e = getComputedStyle(document.documentElement).getPropertyValue("--map-marker-color").trim(), n = /^#?([0-9a-fA-F]{6})$/.exec(e);
485
507
  return n ? n[1] : "4945a3";
@@ -490,24 +512,24 @@ function _t({
490
512
  zoom: i = 14,
491
513
  address: s
492
514
  }) {
493
- const { t: r } = w("ui");
515
+ const { t: r } = C("ui");
494
516
  if (!e)
495
- return /* @__PURE__ */ f(
517
+ return /* @__PURE__ */ h(
496
518
  "div",
497
519
  {
498
520
  "aria-hidden": s ? void 0 : "true",
499
521
  className: Se({ state: "placeholder" }),
500
522
  children: [
501
- /* @__PURE__ */ t(ae, { "aria-hidden": "true", className: "ds:size-5 ds:shrink-0" }),
523
+ /* @__PURE__ */ t(fe, { "aria-hidden": "true", className: "ds:size-5 ds:shrink-0" }),
502
524
  s ? /* @__PURE__ */ t("span", { dir: "auto", className: "type-meta ds:[overflow-wrap:anywhere]", children: s }) : null
503
525
  ]
504
526
  }
505
527
  );
506
- const a = Ft(), c = `https://maps.googleapis.com/maps/api/staticmap?center=${n.lat},${n.lng}&zoom=${i}&size=240x160&scale=2&markers=color:0x${a}%7C${n.lat},${n.lng}&key=${encodeURIComponent(e)}`;
528
+ const a = Tt(), l = `https://maps.googleapis.com/maps/api/staticmap?center=${n.lat},${n.lng}&zoom=${i}&size=240x160&scale=2&markers=color:0x${a}%7C${n.lat},${n.lng}&key=${encodeURIComponent(e)}`;
507
529
  return /* @__PURE__ */ t(
508
530
  "img",
509
531
  {
510
- src: c,
532
+ src: l,
511
533
  alt: r("practiceResults.thumbnail.alt"),
512
534
  loading: "lazy",
513
535
  decoding: "async",
@@ -517,7 +539,7 @@ function _t({
517
539
  }
518
540
  );
519
541
  }
520
- function Be({ tagline: e }) {
542
+ function Vt({ tagline: e }) {
521
543
  return e ? /* @__PURE__ */ t(
522
544
  "span",
523
545
  {
@@ -528,7 +550,7 @@ function Be({ tagline: e }) {
528
550
  }
529
551
  ) : null;
530
552
  }
531
- const zt = D(
553
+ const Ht = O(
532
554
  "type-body-sm ds:m-0 ds:text-[var(--muted-foreground)] ds:whitespace-pre-line ds:break-words",
533
555
  {
534
556
  variants: {
@@ -540,7 +562,7 @@ const zt = D(
540
562
  defaultVariants: { density: "compact" }
541
563
  }
542
564
  );
543
- function $e({
565
+ function He({
544
566
  description: e,
545
567
  density: n
546
568
  }) {
@@ -549,91 +571,87 @@ function $e({
549
571
  {
550
572
  "data-component": "practice-result-description",
551
573
  dir: "auto",
552
- className: zt({ density: n }),
574
+ className: Ht({ density: n }),
553
575
  children: e
554
576
  }
555
577
  ) : null;
556
578
  }
557
- function Ht(e, n, i, s) {
579
+ function zt(e, n, i, s) {
558
580
  if (e.kind === "fixed")
559
- return pt(
581
+ return mt(
560
582
  e.minCents,
561
583
  n,
562
584
  i,
563
585
  s("common.freeOfCharge")
564
586
  );
565
- const r = Re(e.minCents, n, i);
587
+ const r = Ce(e.minCents, n, i);
566
588
  return e.kind === "range" && e.maxCents != null && Number.isFinite(e.maxCents) && e.maxCents > e.minCents ? s("practiceResults.card.priceRange", {
567
589
  min: r,
568
- max: Re(e.maxCents, n, i)
590
+ max: Ce(e.maxCents, n, i)
569
591
  }) : s("practiceResults.card.priceFrom", { price: r });
570
592
  }
571
- const Bt = D("ds:min-w-0", {
572
- variants: {
573
- practiceWritten: { true: "ds:truncate" }
593
+ const $t = O(
594
+ "ds:min-w-0 ds:max-w-full ds:[overflow-wrap:anywhere]",
595
+ {
596
+ variants: {
597
+ practiceWritten: { true: "ds:truncate" }
598
+ }
574
599
  }
575
- });
576
- function Ve({
600
+ );
601
+ function Bt({
577
602
  price: e,
578
603
  cents: n,
579
604
  currencyCode: i = "EUR"
580
605
  }) {
581
- var p;
582
- const { t: s, i18n: r } = w("ui"), a = e && Number.isFinite(e.minCents) ? e : void 0, c = (a == null ? void 0 : a.kind) ?? "fixed", u = (a == null ? void 0 : a.minCents) ?? n, o = a == null ? void 0 : a.maxCents, h = M(
583
- () => u == null ? void 0 : Ht(
584
- { kind: c, minCents: u, maxCents: o },
606
+ var f;
607
+ const { t: s, i18n: r } = C("ui"), a = e && Number.isFinite(e.minCents) ? e : void 0, l = (a == null ? void 0 : a.kind) ?? "fixed", u = (a == null ? void 0 : a.minCents) ?? n, o = a == null ? void 0 : a.maxCents, p = M(
608
+ () => u == null ? void 0 : zt(
609
+ { kind: l, minCents: u, maxCents: o },
585
610
  i,
586
611
  r.language ?? "en",
587
612
  s
588
613
  ),
589
- [c, u, o, i, r.language, s]
614
+ [l, u, o, i, r.language, s]
590
615
  );
591
- if (h === void 0) return null;
592
- const l = (p = a == null ? void 0 : a.label) == null ? void 0 : p.trim().replace(/:$/, "").trim(), m = l || s("practiceResults.card.firstVisitPrice");
593
- return /* @__PURE__ */ f(
616
+ if (p === void 0) return null;
617
+ const c = (f = a == null ? void 0 : a.label) == null ? void 0 : f.trim().replace(/:$/, "").trim(), m = c || s("practiceResults.card.firstVisitPrice");
618
+ return /* @__PURE__ */ h(
594
619
  "span",
595
620
  {
596
621
  "data-component": "practice-result-price",
597
- className: "type-body-sm ds:inline-flex ds:min-w-0 ds:max-w-full ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)] ds:text-[var(--muted-foreground)]",
622
+ className: "type-body-sm ds:flex ds:min-w-0 ds:max-w-full ds:flex-col ds:items-start ds:gap-[var(--spacing-xs)] ds:text-start ds:text-[var(--muted-foreground)] ds:sm:@min-[280px]/result-heading:max-w-[45%] ds:sm:@min-[280px]/result-heading:items-end ds:sm:@min-[280px]/result-heading:text-end",
598
623
  children: [
599
- /* @__PURE__ */ f("span", { className: "ds:inline-flex ds:min-w-0 ds:max-w-full ds:items-center ds:gap-[var(--spacing-xs)]", children: [
600
- /* @__PURE__ */ t(
601
- bt,
602
- {
603
- "aria-hidden": "true",
604
- className: "ds:size-4 ds:shrink-0 ds:text-[var(--primary)]"
605
- }
606
- ),
607
- /* @__PURE__ */ t(
608
- "span",
609
- {
610
- dir: "auto",
611
- title: m,
612
- className: Bt({
613
- practiceWritten: !!l
614
- }),
615
- children: m
616
- }
617
- )
618
- ] }),
619
- /* @__PURE__ */ t("span", { className: "ds:sr-only", children: ": " }),
620
624
  /* @__PURE__ */ t(
621
625
  "span",
622
626
  {
623
627
  dir: "auto",
624
- className: "ds:min-w-0 ds:[overflow-wrap:anywhere] ds:font-[var(--font-weight-medium)] ds:text-[var(--foreground)]",
625
- children: h
628
+ title: m,
629
+ className: $t({
630
+ practiceWritten: !!c
631
+ }),
632
+ children: m
633
+ }
634
+ ),
635
+ /* @__PURE__ */ t("span", { className: "ds:sr-only", children: ": " }),
636
+ /* @__PURE__ */ t(
637
+ z,
638
+ {
639
+ variant: "accentSoft",
640
+ size: "lg",
641
+ dir: "auto",
642
+ className: "ds:h-auto ds:min-h-6 ds:min-w-0 ds:max-w-full ds:whitespace-normal ds:[overflow-wrap:anywhere]",
643
+ children: p
626
644
  }
627
645
  )
628
646
  ]
629
647
  }
630
648
  );
631
649
  }
632
- function Oe({ time: e }) {
633
- const { t: n } = w("ui");
634
- return /* @__PURE__ */ f("span", { className: "type-body-sm ds:text-[var(--muted-foreground)] ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]", children: [
650
+ function ze({ time: e }) {
651
+ const { t: n } = C("ui");
652
+ return /* @__PURE__ */ h("span", { className: "type-body-sm ds:text-[var(--muted-foreground)] ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]", children: [
635
653
  /* @__PURE__ */ t(
636
- xt,
654
+ gt,
637
655
  {
638
656
  "aria-hidden": "true",
639
657
  className: "ds:size-4 ds:text-[var(--primary)]"
@@ -642,7 +660,7 @@ function Oe({ time: e }) {
642
660
  n("practiceResults.nextSlot.summary", { time: e })
643
661
  ] });
644
662
  }
645
- function De({
663
+ function $e({
646
664
  result: e,
647
665
  openLabel: n,
648
666
  bookLabel: i,
@@ -650,29 +668,29 @@ function De({
650
668
  onOpenClick: r,
651
669
  onBookClick: a
652
670
  }) {
653
- const { t: c } = w("ui"), u = e.nextAvailableSlot, o = (u == null ? void 0 : u.bookingHref) ?? e.bookingHref ?? e.href, h = u && s ? c("practiceResults.nextSlot.cta", { time: s }) : i;
654
- return /* @__PURE__ */ f("div", { className: "ds:mt-[var(--spacing-xs)] ds:flex ds:flex-wrap ds:items-center ds:justify-end ds:gap-[var(--spacing-xs)]", children: [
655
- n !== void 0 ? /* @__PURE__ */ t(te, { intent: "secondary", size: "sm", asChild: !0, onClick: r, children: /* @__PURE__ */ f("a", { href: e.href, "data-component": "practice-result-open-cta", children: [
671
+ const { t: l } = C("ui"), u = e.nextAvailableSlot, o = (u == null ? void 0 : u.bookingHref) ?? e.bookingHref ?? e.href, p = u && s ? l("practiceResults.nextSlot.cta", { time: s }) : i;
672
+ return /* @__PURE__ */ h("div", { className: "ds:mt-[var(--spacing-xs)] ds:flex ds:flex-wrap ds:items-center ds:justify-end ds:gap-[var(--spacing-xs)]", children: [
673
+ n !== void 0 ? /* @__PURE__ */ t(ee, { intent: "secondary", size: "sm", asChild: !0, onClick: r, children: /* @__PURE__ */ h("a", { href: e.href, "data-component": "practice-result-open-cta", children: [
656
674
  n,
657
675
  " ",
658
676
  /* @__PURE__ */ t("span", { className: "ds:sr-only", children: e.name })
659
677
  ] }) }) : null,
660
678
  /* @__PURE__ */ t(
661
- te,
679
+ ee,
662
680
  {
663
681
  intent: "primary",
664
682
  size: "sm",
665
683
  asChild: !0,
666
- startIcon: /* @__PURE__ */ t(yt, { "aria-hidden": "true" }),
684
+ startIcon: /* @__PURE__ */ t(vt, { "aria-hidden": "true" }),
667
685
  onClick: a,
668
- children: /* @__PURE__ */ f(
686
+ children: /* @__PURE__ */ h(
669
687
  "a",
670
688
  {
671
689
  href: o,
672
690
  "data-component": "practice-result-book-cta",
673
691
  "data-slot-aware": u ? "true" : void 0,
674
692
  children: [
675
- h,
693
+ p,
676
694
  " ",
677
695
  /* @__PURE__ */ t("span", { className: "ds:sr-only", children: e.name })
678
696
  ]
@@ -682,9 +700,9 @@ function De({
682
700
  )
683
701
  ] });
684
702
  }
685
- const Ke = D(
703
+ const Be = O(
686
704
  [
687
- "ds:relative ds:flex ds:w-full ds:cursor-pointer",
705
+ "ds:@container/result-card ds:relative ds:flex ds:w-full ds:cursor-pointer",
688
706
  "ds:rounded-[var(--radius-lg)]",
689
707
  "ds:bg-[var(--card)] ds:text-[var(--card-foreground)]",
690
708
  "ds:border ds:border-[color:var(--card-border)]",
@@ -710,64 +728,113 @@ const Ke = D(
710
728
  },
711
729
  defaultVariants: { density: "compact" }
712
730
  }
713
- ), $t = D([
731
+ ), Dt = O([
714
732
  "ds:text-[var(--foreground)] ds:no-underline ds:hover:underline",
715
733
  "ds:rounded-[var(--radius-xs)]",
716
734
  "ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid",
717
735
  "ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
718
736
  "ds:forced-colors:focus-visible:outline-[CanvasText]"
719
737
  ]);
720
- function Ee({
738
+ function Ot({
721
739
  result: e,
722
740
  headingLevel: n
723
741
  }) {
724
- const i = `h${ve(n)}`;
742
+ const i = `h${ge(n)}`;
725
743
  return /* @__PURE__ */ t(
726
744
  i,
727
745
  {
728
746
  id: `practice-result-${e.id}-name`,
729
747
  dir: "auto",
730
- className: "type-title-card ds:m-0 ds:text-[var(--foreground)]",
748
+ className: "type-title-card ds:m-0 ds:min-w-0 ds:[overflow-wrap:anywhere] ds:text-[var(--foreground)]",
731
749
  children: /* @__PURE__ */ t(
732
750
  "a",
733
751
  {
734
752
  href: e.href,
735
753
  dir: "auto",
736
754
  "data-component": "practice-result-name-link",
737
- className: $t(),
755
+ className: Dt(),
738
756
  children: e.name
739
757
  }
740
758
  )
741
759
  }
742
760
  );
743
761
  }
744
- function je(e) {
762
+ function De({
763
+ result: e,
764
+ headingLevel: n
765
+ }) {
766
+ var i, s;
767
+ return /* @__PURE__ */ t(
768
+ "div",
769
+ {
770
+ "data-component": "practice-result-heading",
771
+ className: "ds:@container/result-heading ds:min-w-0 ds:flex-1",
772
+ children: /* @__PURE__ */ h("div", { className: "ds:flex ds:min-w-0 ds:flex-col ds:items-start ds:gap-[var(--spacing-xs)] ds:sm:@min-[280px]/result-heading:flex-row ds:sm:@min-[280px]/result-heading:gap-[var(--spacing-md)]", children: [
773
+ /* @__PURE__ */ h("div", { className: "ds:flex ds:min-w-0 ds:w-full ds:flex-1 ds:flex-col ds:gap-[var(--spacing-2xs)]", children: [
774
+ /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]", children: [
775
+ /* @__PURE__ */ t(Ot, { result: e, headingLevel: n }),
776
+ ((i = e.location) == null ? void 0 : i.distanceKm) != null ? /* @__PURE__ */ t(It, { distanceKm: e.location.distanceKm }) : null
777
+ ] }),
778
+ e.subtitle ? /* @__PURE__ */ t("span", { className: "type-body-sm ds:text-[var(--muted-foreground)]", children: e.subtitle }) : null,
779
+ /* @__PURE__ */ t(Vt, { tagline: e.tagline }),
780
+ (s = e.location) != null && s.address ? /* @__PURE__ */ h(
781
+ "span",
782
+ {
783
+ "data-component": "practice-result-address",
784
+ className: "type-meta ds:text-[var(--muted-foreground)] ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]",
785
+ children: [
786
+ /* @__PURE__ */ t(fe, { "aria-hidden": "true", className: "ds:size-3.5 ds:shrink-0" }),
787
+ /* @__PURE__ */ t(
788
+ "span",
789
+ {
790
+ dir: "auto",
791
+ className: "ds:min-w-0 ds:[overflow-wrap:anywhere]",
792
+ children: e.location.address
793
+ }
794
+ )
795
+ ]
796
+ }
797
+ ) : null
798
+ ] }),
799
+ /* @__PURE__ */ t(
800
+ Bt,
801
+ {
802
+ price: e.firstVisitPrice,
803
+ cents: e.firstVisitPriceCents,
804
+ currencyCode: e.currencyCode
805
+ }
806
+ )
807
+ ] })
808
+ }
809
+ );
810
+ }
811
+ function Oe(e) {
745
812
  const n = e.target.closest(
746
813
  'a, button, [role="button"], input, select, textarea, label'
747
814
  );
748
815
  return n !== null && n !== e.currentTarget && e.currentTarget.contains(n);
749
816
  }
750
- function Vt({
817
+ function Et({
751
818
  result: e,
752
819
  headingLevel: n,
753
820
  highlighted: i,
754
821
  onSelect: s,
755
822
  onOpenClick: r,
756
823
  onHover: a,
757
- density: c = "compact",
824
+ density: l = "compact",
758
825
  openLabel: u,
759
826
  bookLabel: o,
760
- onBookClick: h,
761
- nextSlotText: l,
827
+ onBookClick: p,
828
+ nextSlotText: c,
762
829
  maxInsuranceChips: m = 3,
763
- maxLanguageChips: p = 4,
830
+ maxLanguageChips: f = 4,
764
831
  children: b
765
832
  }) {
766
- var Z, W, E, j, K, R;
767
- const { t: g, i18n: x } = w("ui"), k = e.rating, y = (Z = e.location) == null ? void 0 : Z.distanceKm, d = (((W = e.languages) == null ? void 0 : W.length) ?? 0) > 0, S = (((E = e.insurances) == null ? void 0 : E.length) ?? 0) > 0, N = e.specializedInFearPatients, L = d || S || N, C = (e.languages ?? []).slice(0, p), F = (((j = e.languages) == null ? void 0 : j.length) ?? 0) - C.length, A = (e.insurances ?? []).slice(0, m), G = (((K = e.insurances) == null ? void 0 : K.length) ?? 0) - A.length;
833
+ var q, U, G, E;
834
+ const { t: g, i18n: x } = C("ui"), k = e.rating, y = (((q = e.languages) == null ? void 0 : q.length) ?? 0) > 0, d = (((U = e.insurances) == null ? void 0 : U.length) ?? 0) > 0, w = e.specializedInFearPatients, P = y || d || w, S = (e.languages ?? []).slice(0, f), T = (((G = e.languages) == null ? void 0 : G.length) ?? 0) - S.length, _ = (e.insurances ?? []).slice(0, m), L = (((E = e.insurances) == null ? void 0 : E.length) ?? 0) - _.length;
768
835
  return (
769
836
  // eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events -- card is role="group" by design (axe nested-interactive); click handler is mouse-only sync.
770
- /* @__PURE__ */ f(
837
+ /* @__PURE__ */ h(
771
838
  "div",
772
839
  {
773
840
  "data-component": "practice-result-card",
@@ -775,36 +842,26 @@ function Vt({
775
842
  "data-highlighted": i ? "true" : "false",
776
843
  role: "group",
777
844
  "aria-labelledby": `practice-result-${e.id}-name`,
778
- onClick: (B) => {
779
- je(B) || s();
845
+ onClick: (A) => {
846
+ Oe(A) || s();
780
847
  },
781
848
  onMouseEnter: a,
782
849
  onFocus: a,
783
- className: Ke({ density: c }),
850
+ className: Be({ density: l }),
784
851
  children: [
785
852
  /* @__PURE__ */ t(
786
853
  Le,
787
854
  {
788
855
  src: e.imageUrl,
856
+ alt: e.imageAlt,
789
857
  name: e.name,
790
858
  size: "lg",
791
859
  shape: "rounded",
792
860
  ratio: "4:3"
793
861
  }
794
862
  ),
795
- /* @__PURE__ */ f("div", { className: "ds:flex ds:min-w-0 ds:flex-1 ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
796
- /* @__PURE__ */ f("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-2xs)]", children: [
797
- /* @__PURE__ */ f("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]", children: [
798
- /* @__PURE__ */ t(Ee, { result: e, headingLevel: n }),
799
- y != null ? /* @__PURE__ */ t(He, { distanceKm: y }) : null
800
- ] }),
801
- e.subtitle ? /* @__PURE__ */ t("span", { className: "type-body-sm ds:text-[var(--muted-foreground)]", children: e.subtitle }) : null,
802
- /* @__PURE__ */ t(Be, { tagline: e.tagline }),
803
- (R = e.location) != null && R.address ? /* @__PURE__ */ f("span", { className: "type-meta ds:text-[var(--muted-foreground)] ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]", children: [
804
- /* @__PURE__ */ t(ae, { "aria-hidden": "true", className: "ds:size-3.5 ds:shrink-0" }),
805
- /* @__PURE__ */ t("span", { dir: "auto", children: e.location.address })
806
- ] }) : null
807
- ] }),
863
+ /* @__PURE__ */ h("div", { className: "ds:flex ds:min-w-0 ds:flex-1 ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
864
+ /* @__PURE__ */ t(De, { result: e, headingLevel: n }),
808
865
  k && k.count > 0 ? /* @__PURE__ */ t(
809
866
  Pe,
810
867
  {
@@ -813,49 +870,41 @@ function Vt({
813
870
  size: "sm"
814
871
  }
815
872
  ) : null,
816
- L ? /* @__PURE__ */ f("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]", children: [
817
- C.map((B) => /* @__PURE__ */ t(
818
- O,
873
+ P ? /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]", children: [
874
+ S.map((A) => /* @__PURE__ */ t(
875
+ z,
819
876
  {
820
877
  variant: "neutral",
821
878
  leading: /* @__PURE__ */ t(Me, { "aria-hidden": "true" }),
822
- children: Fe(B, g, x)
879
+ children: Te(A, g, x)
823
880
  },
824
- `lang-${B}`
881
+ `lang-${A}`
825
882
  )),
826
- F > 0 ? /* @__PURE__ */ t(O, { variant: "neutral", children: `+${F}` }) : null,
827
- A.map((B) => /* @__PURE__ */ t(
828
- O,
883
+ T > 0 ? /* @__PURE__ */ t(z, { variant: "neutral", children: `+${T}` }) : null,
884
+ _.map((A) => /* @__PURE__ */ t(
885
+ z,
829
886
  {
830
887
  variant: "info",
831
- leading: /* @__PURE__ */ t(Te, { "aria-hidden": "true" }),
832
- children: B
888
+ leading: /* @__PURE__ */ t(Fe, { "aria-hidden": "true" }),
889
+ children: A
833
890
  },
834
- `ins-${B}`
891
+ `ins-${A}`
835
892
  )),
836
- G > 0 ? /* @__PURE__ */ t(O, { variant: "neutral", children: `+${G}` }) : null,
837
- N ? /* @__PURE__ */ t(O, { variant: "info", leading: /* @__PURE__ */ t(Ie, { "aria-hidden": "true" }), children: g("practiceResults.fearPatient.label") }) : null
893
+ L > 0 ? /* @__PURE__ */ t(z, { variant: "neutral", children: `+${L}` }) : null,
894
+ w ? /* @__PURE__ */ t(z, { variant: "info", leading: /* @__PURE__ */ t(Ie, { "aria-hidden": "true" }), children: g("practiceResults.fearPatient.label") }) : null
838
895
  ] }) : null,
839
- /* @__PURE__ */ t($e, { description: e.description, density: "compact" }),
840
- /* @__PURE__ */ t(
841
- Ve,
842
- {
843
- price: e.firstVisitPrice,
844
- cents: e.firstVisitPriceCents,
845
- currencyCode: e.currencyCode
846
- }
847
- ),
848
- e.nextAvailableSlot && l ? /* @__PURE__ */ t(Oe, { time: l }) : null,
896
+ /* @__PURE__ */ t(He, { description: e.description, density: "compact" }),
897
+ e.nextAvailableSlot && c ? /* @__PURE__ */ t(ze, { time: c }) : null,
849
898
  b,
850
899
  /* @__PURE__ */ t(
851
- De,
900
+ $e,
852
901
  {
853
902
  result: e,
854
903
  openLabel: u,
855
904
  bookLabel: o,
856
- nextSlotText: l,
905
+ nextSlotText: c,
857
906
  onOpenClick: r,
858
- onBookClick: h
907
+ onBookClick: p
859
908
  }
860
909
  )
861
910
  ] })
@@ -864,20 +913,20 @@ function Vt({
864
913
  )
865
914
  );
866
915
  }
867
- function Ot({
916
+ function jt({
868
917
  result: e,
869
918
  headingLevel: n,
870
919
  apiKey: i,
871
920
  highlighted: s,
872
921
  onSelect: r,
873
922
  onOpenClick: a,
874
- onBookClick: c,
923
+ onBookClick: l,
875
924
  onHover: u,
876
925
  openLabel: o,
877
- bookLabel: h
926
+ bookLabel: p
878
927
  }) {
879
- var d, S, N, L;
880
- const { t: l, i18n: m } = w("ui"), p = M(() => {
928
+ var y, d;
929
+ const { t: c, i18n: m } = C("ui"), f = M(() => {
881
930
  if (e.nextAvailableSlot)
882
931
  try {
883
932
  return new Intl.DateTimeFormat(m.language, {
@@ -888,10 +937,10 @@ function Ot({
888
937
  } catch {
889
938
  return e.nextAvailableSlot.dateTime;
890
939
  }
891
- }, [e.nextAvailableSlot, m.language]), b = (((d = e.languages) == null ? void 0 : d.length) ?? 0) > 0, g = (((S = e.insurances) == null ? void 0 : S.length) ?? 0) > 0, x = e.specializedInFearPatients, k = b || g || x, y = (N = e.location) == null ? void 0 : N.distanceKm;
940
+ }, [e.nextAvailableSlot, m.language]), b = (((y = e.languages) == null ? void 0 : y.length) ?? 0) > 0, g = (((d = e.insurances) == null ? void 0 : d.length) ?? 0) > 0, x = e.specializedInFearPatients, k = b || g || x;
892
941
  return (
893
942
  // eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events -- card is role="group" by design (axe nested-interactive); click handler is mouse-only sync.
894
- /* @__PURE__ */ f(
943
+ /* @__PURE__ */ h(
895
944
  "div",
896
945
  {
897
946
  "data-component": "practice-result-card",
@@ -900,14 +949,14 @@ function Ot({
900
949
  "data-highlighted": s ? "true" : "false",
901
950
  role: "group",
902
951
  "aria-labelledby": `practice-result-${e.id}-name`,
903
- onClick: (C) => {
904
- je(C) || r();
952
+ onClick: (w) => {
953
+ Oe(w) || r();
905
954
  },
906
955
  onMouseEnter: u,
907
956
  onFocus: u,
908
- className: Ke({ density: "rich" }),
957
+ className: Be({ density: "rich" }),
909
958
  children: [
910
- e.location ? /* @__PURE__ */ t(
959
+ e.location ? /* @__PURE__ */ t("div", { className: "ds:hidden ds:@min-[640px]/result-card:block", children: /* @__PURE__ */ t(
911
960
  _t,
912
961
  {
913
962
  apiKey: i,
@@ -917,86 +966,62 @@ function Ot({
917
966
  },
918
967
  address: e.location.address
919
968
  }
920
- ) : null,
921
- /* @__PURE__ */ f("div", { className: "ds:flex ds:min-w-0 ds:flex-1 ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
922
- /* @__PURE__ */ f("div", { className: "ds:flex ds:items-start ds:gap-[var(--spacing-md)]", children: [
969
+ ) }) : null,
970
+ /* @__PURE__ */ h("div", { className: "ds:flex ds:min-w-0 ds:flex-1 ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
971
+ /* @__PURE__ */ h("div", { className: "ds:flex ds:items-start ds:gap-[var(--spacing-md)]", children: [
923
972
  /* @__PURE__ */ t(
924
973
  Le,
925
974
  {
926
975
  src: e.imageUrl,
976
+ alt: e.imageAlt,
927
977
  name: e.name,
928
978
  size: "md",
929
979
  shape: "rounded",
930
980
  ratio: "4:3"
931
981
  }
932
982
  ),
933
- /* @__PURE__ */ f("div", { className: "ds:flex ds:min-w-0 ds:flex-1 ds:flex-col ds:gap-[var(--spacing-2xs)]", children: [
934
- /* @__PURE__ */ f("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]", children: [
935
- /* @__PURE__ */ t(Ee, { result: e, headingLevel: n }),
936
- y != null ? /* @__PURE__ */ t(He, { distanceKm: y }) : null
937
- ] }),
938
- e.subtitle ? /* @__PURE__ */ t("span", { className: "type-body-sm ds:text-[var(--muted-foreground)]", children: e.subtitle }) : null,
939
- /* @__PURE__ */ t(Be, { tagline: e.tagline }),
940
- (L = e.location) != null && L.address ? /* @__PURE__ */ f("span", { className: "type-meta ds:text-[var(--muted-foreground)] ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]", children: [
941
- /* @__PURE__ */ t(
942
- ae,
943
- {
944
- "aria-hidden": "true",
945
- className: "ds:size-3.5 ds:shrink-0"
946
- }
947
- ),
948
- /* @__PURE__ */ t("span", { dir: "auto", children: e.location.address })
949
- ] }) : null
950
- ] }),
951
- e.rating && e.rating.count > 0 ? /* @__PURE__ */ t(
952
- Pe,
953
- {
954
- value: e.rating.value,
955
- reviews: { count: e.rating.count },
956
- size: "md"
957
- }
958
- ) : null
983
+ /* @__PURE__ */ t(De, { result: e, headingLevel: n })
959
984
  ] }),
960
- k ? /* @__PURE__ */ f("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]", children: [
961
- b ? (e.languages ?? []).map((C) => /* @__PURE__ */ t(
962
- O,
985
+ e.rating && e.rating.count > 0 ? /* @__PURE__ */ t(
986
+ Pe,
987
+ {
988
+ value: e.rating.value,
989
+ reviews: { count: e.rating.count },
990
+ size: "md"
991
+ }
992
+ ) : null,
993
+ k ? /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]", children: [
994
+ b ? (e.languages ?? []).map((w) => /* @__PURE__ */ t(
995
+ z,
963
996
  {
964
997
  variant: "neutral",
965
998
  leading: /* @__PURE__ */ t(Me, { "aria-hidden": "true" }),
966
- children: Fe(C, l, m)
999
+ children: Te(w, c, m)
967
1000
  },
968
- `lang-${C}`
1001
+ `lang-${w}`
969
1002
  )) : null,
970
- g ? (e.insurances ?? []).map((C) => /* @__PURE__ */ t(
971
- O,
1003
+ g ? (e.insurances ?? []).map((w) => /* @__PURE__ */ t(
1004
+ z,
972
1005
  {
973
1006
  variant: "info",
974
- leading: /* @__PURE__ */ t(Te, { "aria-hidden": "true" }),
975
- children: C
1007
+ leading: /* @__PURE__ */ t(Fe, { "aria-hidden": "true" }),
1008
+ children: w
976
1009
  },
977
- `ins-${C}`
1010
+ `ins-${w}`
978
1011
  )) : null,
979
- x ? /* @__PURE__ */ t(O, { variant: "info", leading: /* @__PURE__ */ t(Ie, { "aria-hidden": "true" }), children: l("practiceResults.fearPatient.label") }) : null
1012
+ x ? /* @__PURE__ */ t(z, { variant: "info", leading: /* @__PURE__ */ t(Ie, { "aria-hidden": "true" }), children: c("practiceResults.fearPatient.label") }) : null
980
1013
  ] }) : null,
981
- /* @__PURE__ */ t($e, { description: e.description, density: "rich" }),
1014
+ /* @__PURE__ */ t(He, { description: e.description, density: "rich" }),
1015
+ e.nextAvailableSlot && f ? /* @__PURE__ */ t(ze, { time: f }) : null,
982
1016
  /* @__PURE__ */ t(
983
- Ve,
984
- {
985
- price: e.firstVisitPrice,
986
- cents: e.firstVisitPriceCents,
987
- currencyCode: e.currencyCode
988
- }
989
- ),
990
- e.nextAvailableSlot && p ? /* @__PURE__ */ t(Oe, { time: p }) : null,
991
- /* @__PURE__ */ t(
992
- De,
1017
+ $e,
993
1018
  {
994
1019
  result: e,
995
1020
  openLabel: o,
996
- bookLabel: h,
997
- nextSlotText: p,
1021
+ bookLabel: p,
1022
+ nextSlotText: f,
998
1023
  onOpenClick: a,
999
- onBookClick: c
1024
+ onBookClick: l
1000
1025
  }
1001
1026
  )
1002
1027
  ] })
@@ -1005,56 +1030,56 @@ function Ot({
1005
1030
  )
1006
1031
  );
1007
1032
  }
1008
- function he({
1033
+ function pe({
1009
1034
  results: e,
1010
1035
  headingLevel: n,
1011
1036
  highlightedId: i,
1012
1037
  onCardHover: s,
1013
1038
  onCardSelect: r,
1014
1039
  onCardOpenClick: a,
1015
- onCardBookClick: c,
1040
+ onCardBookClick: l,
1016
1041
  openLabel: u,
1017
1042
  bookLabel: o,
1018
- formatNextSlot: h,
1019
- onLoadMore: l,
1043
+ formatNextSlot: p,
1044
+ onLoadMore: c,
1020
1045
  loadingMore: m,
1021
- loadingSkeletons: p,
1046
+ loadingSkeletons: f,
1022
1047
  density: b = "compact",
1023
1048
  apiKey: g,
1024
1049
  containerRef: x
1025
1050
  }) {
1026
- const { t: k } = w("ui"), y = T(null);
1027
- return X(() => {
1028
- if (!l) return;
1051
+ const { t: k } = C("ui"), y = F(null);
1052
+ return J(() => {
1053
+ if (!c) return;
1029
1054
  const d = y.current;
1030
1055
  if (!d || typeof IntersectionObserver > "u") return;
1031
- const S = new IntersectionObserver(
1032
- (N) => {
1033
- for (const L of N)
1034
- L.isIntersecting && (H("serp_load_more", {
1056
+ const w = new IntersectionObserver(
1057
+ (P) => {
1058
+ for (const S of P)
1059
+ S.isIntersecting && ($("serp_load_more", {
1035
1060
  currentCount: e.length
1036
- }), l());
1061
+ }), c());
1037
1062
  },
1038
1063
  { root: null, rootMargin: "200px" }
1039
1064
  );
1040
- return S.observe(d), () => S.disconnect();
1041
- }, [l, e.length]), p ? /* @__PURE__ */ t(
1065
+ return w.observe(d), () => w.disconnect();
1066
+ }, [c, e.length]), f ? /* @__PURE__ */ t(
1042
1067
  "div",
1043
1068
  {
1044
1069
  role: "status",
1045
1070
  "aria-live": "polite",
1046
1071
  "aria-label": k("practiceResults.loading"),
1047
1072
  className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]",
1048
- children: Array.from({ length: 4 }).map((d, S) => /* @__PURE__ */ t(
1049
- ut,
1073
+ children: Array.from({ length: 4 }).map((d, w) => /* @__PURE__ */ t(
1074
+ lt,
1050
1075
  {
1051
1076
  variant: "rounded",
1052
1077
  height: b === "rich" ? "11rem" : "7rem"
1053
1078
  },
1054
- `pr-skel-${S}`
1079
+ `pr-skel-${w}`
1055
1080
  ))
1056
1081
  }
1057
- ) : /* @__PURE__ */ f(
1082
+ ) : /* @__PURE__ */ h(
1058
1083
  "div",
1059
1084
  {
1060
1085
  ref: x,
@@ -1064,7 +1089,7 @@ function he({
1064
1089
  className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)] ds:overflow-y-auto",
1065
1090
  children: [
1066
1091
  e.map((d) => /* @__PURE__ */ t("div", { role: "listitem", children: b === "rich" ? /* @__PURE__ */ t(
1067
- Ot,
1092
+ jt,
1068
1093
  {
1069
1094
  result: d,
1070
1095
  headingLevel: n,
@@ -1072,55 +1097,55 @@ function he({
1072
1097
  highlighted: i === d.id,
1073
1098
  onSelect: () => r(d.id),
1074
1099
  onOpenClick: () => a(d.id),
1075
- onBookClick: () => c(d.id),
1100
+ onBookClick: () => l(d.id),
1076
1101
  onHover: () => s(d.id),
1077
1102
  openLabel: u,
1078
1103
  bookLabel: o
1079
1104
  }
1080
1105
  ) : /* @__PURE__ */ t(
1081
- Vt,
1106
+ Et,
1082
1107
  {
1083
1108
  result: d,
1084
1109
  headingLevel: n,
1085
1110
  highlighted: i === d.id,
1086
1111
  onSelect: () => r(d.id),
1087
1112
  onOpenClick: () => a(d.id),
1088
- onBookClick: () => c(d.id),
1113
+ onBookClick: () => l(d.id),
1089
1114
  onHover: () => s(d.id),
1090
1115
  openLabel: u,
1091
1116
  bookLabel: o,
1092
- nextSlotText: h(d)
1117
+ nextSlotText: p(d)
1093
1118
  }
1094
1119
  ) }, d.id)),
1095
- l ? /* @__PURE__ */ t(
1120
+ c ? /* @__PURE__ */ t(
1096
1121
  "div",
1097
1122
  {
1098
1123
  ref: y,
1099
1124
  "aria-hidden": "true",
1100
1125
  className: "ds:flex ds:items-center ds:justify-center ds:py-[var(--spacing-md)]",
1101
- children: m ? /* @__PURE__ */ t(mt, { size: "md", variant: "pulse" }) : /* @__PURE__ */ t("span", { className: "ds:size-1" })
1126
+ children: m ? /* @__PURE__ */ t(dt, { size: "md", variant: "pulse" }) : /* @__PURE__ */ t("span", { className: "ds:size-1" })
1102
1127
  }
1103
1128
  ) : null
1104
1129
  ]
1105
1130
  }
1106
1131
  );
1107
1132
  }
1108
- function fe({
1133
+ function ue({
1109
1134
  results: e,
1110
1135
  searchCentre: n,
1111
1136
  zoom: i,
1112
1137
  apiKey: s,
1113
1138
  mapId: r,
1114
1139
  highlightedId: a,
1115
- onPinClick: c,
1140
+ onPinClick: l,
1116
1141
  onPinHover: u,
1117
1142
  onPinFirstInteract: o,
1118
- onBoundsChange: h,
1119
- consentGranted: l,
1143
+ onBoundsChange: p,
1144
+ consentGranted: c,
1120
1145
  onConsentRequest: m,
1121
- mapHandleRef: p
1146
+ mapHandleRef: f
1122
1147
  }) {
1123
- const { t: b } = w("ui"), g = M(
1148
+ const { t: b } = C("ui"), g = M(
1124
1149
  () => e.filter(
1125
1150
  (d) => !!d.location
1126
1151
  ).map((d) => ({
@@ -1146,19 +1171,19 @@ function fe({
1146
1171
  lng: (d.east + d.west) / 2
1147
1172
  } : { lat: 45.4642, lng: 9.19 };
1148
1173
  }, [e, n]);
1149
- return X(() => {
1150
- if (!h) return;
1174
+ return J(() => {
1175
+ if (!p) return;
1151
1176
  const d = Ne(e);
1152
- d && (h(d), H("serp_map_panned", { bounds: d }));
1153
- }, [e, h]), /* @__PURE__ */ t(
1177
+ d && (p(d), $("serp_map_panned", { bounds: d }));
1178
+ }, [e, p]), /* @__PURE__ */ t(
1154
1179
  "div",
1155
1180
  {
1156
1181
  "data-component": "practice-results-map-panel",
1157
1182
  className: "ds:relative ds:flex ds:size-full ds:min-h-[24rem] ds:flex-col",
1158
1183
  children: /* @__PURE__ */ t(
1159
- dt,
1184
+ ct,
1160
1185
  {
1161
- ref: p,
1186
+ ref: f,
1162
1187
  apiKey: s ?? "",
1163
1188
  mapId: r,
1164
1189
  center: y,
@@ -1167,10 +1192,10 @@ function fe({
1167
1192
  fitToPoints: x,
1168
1193
  fitKey: k,
1169
1194
  selectedMarkerId: a,
1170
- consentGranted: !!l,
1195
+ consentGranted: !!c,
1171
1196
  onConsentRequest: m,
1172
1197
  onMarkerClick: (d) => {
1173
- d != null && (u(d), o(d), c(d));
1198
+ d != null && (u(d), o(d), l(d));
1174
1199
  },
1175
1200
  ariaLabel: b("practiceResults.map.label"),
1176
1201
  size: "fill",
@@ -1181,24 +1206,24 @@ function fe({
1181
1206
  }
1182
1207
  );
1183
1208
  }
1184
- function ge({
1209
+ function he({
1185
1210
  variantBodyProps: e
1186
1211
  }) {
1187
- const { facets: n, value: i, onChange: s, heading: r, intro: a, totalCount: c, searchCentre: u } = e;
1188
- return /* @__PURE__ */ f("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
1212
+ const { facets: n, value: i, onChange: s, heading: r, intro: a, totalCount: l, searchCentre: u } = e;
1213
+ return /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
1189
1214
  /* @__PURE__ */ t(
1190
1215
  _e,
1191
1216
  {
1192
1217
  heading: r,
1193
1218
  headingLevel: e.headingLevel,
1194
1219
  intro: a,
1195
- totalCount: c,
1220
+ totalCount: l,
1196
1221
  searchCentreLabel: u == null ? void 0 : u.label
1197
1222
  }
1198
1223
  ),
1199
- n.length > 0 ? /* @__PURE__ */ f("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:justify-between ds:gap-[var(--spacing-sm)]", children: [
1224
+ n.length > 0 ? /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:justify-between ds:gap-[var(--spacing-sm)]", children: [
1200
1225
  /* @__PURE__ */ t(
1201
- ze,
1226
+ Ve,
1202
1227
  {
1203
1228
  facets: n,
1204
1229
  value: i.facets,
@@ -1206,14 +1231,14 @@ function ge({
1206
1231
  }
1207
1232
  ),
1208
1233
  /* @__PURE__ */ t(
1209
- me,
1234
+ de,
1210
1235
  {
1211
1236
  value: i.sort ?? "relevance",
1212
1237
  onChange: (o) => s({ ...i, sort: o })
1213
1238
  }
1214
1239
  )
1215
1240
  ] }) : /* @__PURE__ */ t("div", { className: "ds:flex ds:justify-end", children: /* @__PURE__ */ t(
1216
- me,
1241
+ de,
1217
1242
  {
1218
1243
  value: i.sort ?? "relevance",
1219
1244
  onChange: (o) => s({ ...i, sort: o })
@@ -1221,66 +1246,66 @@ function ge({
1221
1246
  ) })
1222
1247
  ] });
1223
1248
  }
1224
- function ve(e) {
1249
+ function ge(e) {
1225
1250
  return Math.min(e + 1, 6);
1226
1251
  }
1227
- function be({
1252
+ function ve({
1228
1253
  headingLevel: e
1229
1254
  }) {
1230
- const { t: n } = w("ui");
1255
+ const { t: n } = C("ui");
1231
1256
  return /* @__PURE__ */ t(
1232
- ct,
1257
+ ot,
1233
1258
  {
1234
1259
  variant: "no-results",
1235
- headingLevel: ve(e),
1260
+ headingLevel: ge(e),
1236
1261
  title: n("practiceResults.empty.title"),
1237
1262
  description: n("practiceResults.empty.description")
1238
1263
  }
1239
1264
  );
1240
1265
  }
1241
- function xe({
1266
+ function be({
1242
1267
  onRetry: e,
1243
1268
  headingLevel: n
1244
1269
  }) {
1245
- const { t: i } = w("ui"), s = ve(n);
1246
- return /* @__PURE__ */ f(ee, { variant: "error", children: [
1247
- /* @__PURE__ */ t(ee.Title, { as: `h${s}`, children: i("practiceResults.error.title") }),
1248
- /* @__PURE__ */ t(ee.Description, { children: i("practiceResults.error.description") }),
1249
- e ? /* @__PURE__ */ t(ee.Action, { children: /* @__PURE__ */ t(
1250
- te,
1270
+ const { t: i } = C("ui"), s = ge(n);
1271
+ return /* @__PURE__ */ h(Y, { variant: "error", children: [
1272
+ /* @__PURE__ */ t(Y.Title, { as: `h${s}`, children: i("practiceResults.error.title") }),
1273
+ /* @__PURE__ */ t(Y.Description, { children: i("practiceResults.error.description") }),
1274
+ e ? /* @__PURE__ */ t(Y.Action, { children: /* @__PURE__ */ t(
1275
+ ee,
1251
1276
  {
1252
1277
  intent: "secondary",
1253
1278
  size: "sm",
1254
- startIcon: /* @__PURE__ */ t(vt, { "aria-hidden": "true" }),
1279
+ startIcon: /* @__PURE__ */ t(ht, { "aria-hidden": "true" }),
1255
1280
  onClick: e,
1256
1281
  children: i("practiceResults.error.retry")
1257
1282
  }
1258
1283
  ) }) : null
1259
1284
  ] });
1260
1285
  }
1261
- function Dt(e) {
1286
+ function Kt(e) {
1262
1287
  const {
1263
1288
  results: n,
1264
1289
  apiKey: i,
1265
1290
  mapId: s,
1266
1291
  zoom: r,
1267
1292
  searchCentre: a,
1268
- onLoadMore: c,
1293
+ onLoadMore: l,
1269
1294
  loadingMore: u,
1270
1295
  loadingSkeletons: o,
1271
- emptyResultsSlot: h,
1272
- errorSlot: l,
1296
+ emptyResultsSlot: p,
1297
+ errorSlot: c,
1273
1298
  error: m,
1274
- onRetry: p,
1299
+ onRetry: f,
1275
1300
  highlightedId: b,
1276
1301
  onCardHover: g,
1277
1302
  onPinClick: x,
1278
1303
  consentGranted: k,
1279
1304
  onConsentRequest: y,
1280
1305
  onBoundsChange: d,
1281
- listContainerRef: S
1282
- } = e, { t: N } = w("ui"), [L, C] = pe(!1), F = m ? l ?? /* @__PURE__ */ t(xe, { onRetry: p, headingLevel: e.headingLevel }) : n.length === 0 && !o ? h ?? /* @__PURE__ */ t(be, { headingLevel: e.headingLevel }) : /* @__PURE__ */ t(
1283
- he,
1306
+ listContainerRef: w
1307
+ } = e, { t: P } = C("ui"), [S, T] = me(!1), _ = m ? c ?? /* @__PURE__ */ t(be, { onRetry: f, headingLevel: e.headingLevel }) : n.length === 0 && !o ? p ?? /* @__PURE__ */ t(ve, { headingLevel: e.headingLevel }) : /* @__PURE__ */ t(
1308
+ pe,
1284
1309
  {
1285
1310
  results: n,
1286
1311
  headingLevel: e.headingLevel,
@@ -1292,19 +1317,19 @@ function Dt(e) {
1292
1317
  openLabel: e.openLabel,
1293
1318
  bookLabel: e.bookLabel,
1294
1319
  formatNextSlot: e.formatNextSlot,
1295
- onLoadMore: c,
1320
+ onLoadMore: l,
1296
1321
  loadingMore: u,
1297
1322
  loadingSkeletons: o,
1298
1323
  density: "compact",
1299
- containerRef: S
1324
+ containerRef: w
1300
1325
  }
1301
1326
  );
1302
- return /* @__PURE__ */ f("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
1303
- /* @__PURE__ */ t(ge, { variantBodyProps: e }),
1304
- /* @__PURE__ */ f("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)] ds:lg:grid ds:lg:grid-cols-[55fr_45fr] ds:lg:gap-[var(--spacing-lg)] ds:lg:items-start", children: [
1305
- /* @__PURE__ */ t("div", { className: "ds:min-w-0", children: F }),
1327
+ return /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
1328
+ /* @__PURE__ */ t(he, { variantBodyProps: e }),
1329
+ /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)] ds:lg:grid ds:lg:grid-cols-[55fr_45fr] ds:lg:gap-[var(--spacing-lg)] ds:lg:items-start", children: [
1330
+ /* @__PURE__ */ t("div", { className: "ds:min-w-0", children: _ }),
1306
1331
  /* @__PURE__ */ t("div", { className: "ds:hidden ds:lg:block ds:sticky ds:top-[var(--spacing-md)] ds:h-[40rem]", children: /* @__PURE__ */ t(
1307
- fe,
1332
+ ue,
1308
1333
  {
1309
1334
  results: n,
1310
1335
  searchCentre: a,
@@ -1312,8 +1337,8 @@ function Dt(e) {
1312
1337
  apiKey: i,
1313
1338
  mapId: s,
1314
1339
  highlightedId: b,
1315
- onPinClick: (A) => {
1316
- Q(n, A, "pin", e.onResultSelect), x(A);
1340
+ onPinClick: (L) => {
1341
+ Z(n, L, "pin", e.onResultSelect), x(L);
1317
1342
  },
1318
1343
  onPinHover: g,
1319
1344
  onPinFirstInteract: e.onPinFirstInteract,
@@ -1325,22 +1350,22 @@ function Dt(e) {
1325
1350
  ) })
1326
1351
  ] }),
1327
1352
  /* @__PURE__ */ t("div", { className: "ds:flex ds:lg:hidden ds:sticky ds:bottom-[var(--spacing-md)] ds:justify-center", children: /* @__PURE__ */ t(
1328
- te,
1353
+ ee,
1329
1354
  {
1330
1355
  intent: "primary",
1331
1356
  size: "md",
1332
- startIcon: /* @__PURE__ */ t(Ct, { "aria-hidden": "true" }),
1333
- onClick: () => C(!0),
1334
- children: N("practiceResults.viewMap")
1357
+ startIcon: /* @__PURE__ */ t(xt, { "aria-hidden": "true" }),
1358
+ onClick: () => T(!0),
1359
+ children: P("practiceResults.viewMap")
1335
1360
  }
1336
1361
  ) }),
1337
- /* @__PURE__ */ t(I.Root, { open: L, onOpenChange: C, children: /* @__PURE__ */ f(I.Content, { side: "bottom", size: "lg", children: [
1338
- /* @__PURE__ */ t(I.Header, { children: /* @__PURE__ */ t(I.Title, { children: N("practiceResults.map.label") }) }),
1339
- /* @__PURE__ */ f(I.Body, { children: [
1340
- /* @__PURE__ */ t(I.Description, { className: "ds:sr-only", children: N("practiceResults.sheet.description") }),
1341
- /* @__PURE__ */ f("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
1362
+ /* @__PURE__ */ t(I.Root, { open: S, onOpenChange: T, children: /* @__PURE__ */ h(I.Content, { side: "bottom", size: "lg", children: [
1363
+ /* @__PURE__ */ t(I.Header, { children: /* @__PURE__ */ t(I.Title, { children: P("practiceResults.map.label") }) }),
1364
+ /* @__PURE__ */ h(I.Body, { children: [
1365
+ /* @__PURE__ */ t(I.Description, { className: "ds:sr-only", children: P("practiceResults.sheet.description") }),
1366
+ /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
1342
1367
  /* @__PURE__ */ t("div", { className: "ds:h-[20rem]", children: /* @__PURE__ */ t(
1343
- fe,
1368
+ ue,
1344
1369
  {
1345
1370
  results: n,
1346
1371
  searchCentre: a,
@@ -1348,8 +1373,8 @@ function Dt(e) {
1348
1373
  apiKey: i,
1349
1374
  mapId: s,
1350
1375
  highlightedId: b,
1351
- onPinClick: (A) => {
1352
- Q(n, A, "pin", e.onResultSelect), x(A);
1376
+ onPinClick: (L) => {
1377
+ Z(n, L, "pin", e.onResultSelect), x(L);
1353
1378
  },
1354
1379
  onPinHover: g,
1355
1380
  onPinFirstInteract: e.onPinFirstInteract,
@@ -1359,52 +1384,52 @@ function Dt(e) {
1359
1384
  mapHandleRef: e.mapHandleRef
1360
1385
  }
1361
1386
  ) }),
1362
- F
1387
+ _
1363
1388
  ] })
1364
1389
  ] })
1365
1390
  ] }) })
1366
1391
  ] });
1367
1392
  }
1368
- const Kt = {
1393
+ const qt = {
1369
1394
  peek: "sm",
1370
1395
  half: "md",
1371
1396
  full: "lg"
1372
- }, U = [
1397
+ }, K = [
1373
1398
  "peek",
1374
1399
  "half",
1375
1400
  "full"
1376
1401
  ];
1377
- function Et({ value: e, onChange: n }) {
1378
- const { t: i, i18n: s } = w("ui"), r = s.dir() === "rtl", a = T(
1402
+ function Ut({ value: e, onChange: n }) {
1403
+ const { t: i, i18n: s } = C("ui"), r = s.dir() === "rtl", a = F(
1379
1404
  /* @__PURE__ */ new Map()
1380
- ), c = $((o) => {
1381
- var h;
1382
- (h = a.current.get(o)) == null || h.focus();
1383
- }, []), u = $(
1384
- (o, h) => {
1385
- const l = U.indexOf(h), m = U.length, p = r ? "ArrowLeft" : "ArrowRight", b = r ? "ArrowRight" : "ArrowLeft";
1405
+ ), l = B((o) => {
1406
+ var p;
1407
+ (p = a.current.get(o)) == null || p.focus();
1408
+ }, []), u = B(
1409
+ (o, p) => {
1410
+ const c = K.indexOf(p), m = K.length, f = r ? "ArrowLeft" : "ArrowRight", b = r ? "ArrowRight" : "ArrowLeft";
1386
1411
  let g = null;
1387
1412
  switch (o.key) {
1388
- case p:
1413
+ case f:
1389
1414
  case "ArrowDown":
1390
- g = U[(l + 1) % m];
1415
+ g = K[(c + 1) % m];
1391
1416
  break;
1392
1417
  case b:
1393
1418
  case "ArrowUp":
1394
- g = U[(l - 1 + m) % m];
1419
+ g = K[(c - 1 + m) % m];
1395
1420
  break;
1396
1421
  case "Home":
1397
- g = U[0];
1422
+ g = K[0];
1398
1423
  break;
1399
1424
  case "End":
1400
- g = U[m - 1];
1425
+ g = K[m - 1];
1401
1426
  break;
1402
1427
  default:
1403
1428
  return;
1404
1429
  }
1405
- o.preventDefault(), g && g !== h && n(g), g && c(g);
1430
+ o.preventDefault(), g && g !== p && n(g), g && l(g);
1406
1431
  },
1407
- [c, r, n]
1432
+ [l, r, n]
1408
1433
  );
1409
1434
  return /* @__PURE__ */ t(
1410
1435
  "div",
@@ -1412,23 +1437,23 @@ function Et({ value: e, onChange: n }) {
1412
1437
  role: "radiogroup",
1413
1438
  "aria-label": i("practiceResults.sheet.snap.label"),
1414
1439
  className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]",
1415
- children: U.map((o) => {
1416
- const h = e === o;
1440
+ children: K.map((o) => {
1441
+ const p = e === o;
1417
1442
  return /* @__PURE__ */ t(
1418
1443
  "button",
1419
1444
  {
1420
- ref: (l) => {
1421
- l ? a.current.set(o, l) : a.current.delete(o);
1445
+ ref: (c) => {
1446
+ c ? a.current.set(o, c) : a.current.delete(o);
1422
1447
  },
1423
1448
  type: "button",
1424
1449
  role: "radio",
1425
- "aria-checked": h,
1450
+ "aria-checked": p,
1426
1451
  "aria-label": i(`practiceResults.sheet.snap.${o}`),
1427
- tabIndex: h ? 0 : -1,
1452
+ tabIndex: p ? 0 : -1,
1428
1453
  onClick: () => n(o),
1429
- onKeyDown: (l) => u(l, o),
1430
- className: ne({
1431
- state: h ? "active" : "idle"
1454
+ onKeyDown: (c) => u(c, o),
1455
+ className: te({
1456
+ state: p ? "active" : "idle"
1432
1457
  }),
1433
1458
  children: i(`practiceResults.sheet.snap.${o}`)
1434
1459
  },
@@ -1438,32 +1463,32 @@ function Et({ value: e, onChange: n }) {
1438
1463
  }
1439
1464
  );
1440
1465
  }
1441
- function jt(e) {
1466
+ function Gt(e) {
1442
1467
  const {
1443
1468
  results: n,
1444
1469
  apiKey: i,
1445
1470
  mapId: s,
1446
1471
  zoom: r,
1447
1472
  searchCentre: a,
1448
- onLoadMore: c,
1473
+ onLoadMore: l,
1449
1474
  loadingMore: u,
1450
1475
  loadingSkeletons: o,
1451
- emptyResultsSlot: h,
1452
- errorSlot: l,
1476
+ emptyResultsSlot: p,
1477
+ errorSlot: c,
1453
1478
  error: m,
1454
- onRetry: p,
1479
+ onRetry: f,
1455
1480
  highlightedId: b,
1456
1481
  onCardHover: g,
1457
1482
  onPinClick: x,
1458
1483
  consentGranted: k,
1459
1484
  onConsentRequest: y,
1460
1485
  onBoundsChange: d,
1461
- listContainerRef: S,
1462
- facets: N,
1463
- value: L,
1464
- onChange: C
1465
- } = e, { t: F } = w("ui"), [A, G] = pe("half"), Z = Kt[A], W = ft("(min-width: 1024px)"), E = m ? l ?? /* @__PURE__ */ t(xe, { onRetry: p, headingLevel: e.headingLevel }) : n.length === 0 && !o ? h ?? /* @__PURE__ */ t(be, { headingLevel: e.headingLevel }) : /* @__PURE__ */ t(
1466
- he,
1486
+ listContainerRef: w,
1487
+ facets: P,
1488
+ value: S,
1489
+ onChange: T
1490
+ } = e, { t: _ } = C("ui"), [L, q] = me("half"), U = qt[L], G = ut("(min-width: 1024px)"), E = m ? c ?? /* @__PURE__ */ t(be, { onRetry: f, headingLevel: e.headingLevel }) : n.length === 0 && !o ? p ?? /* @__PURE__ */ t(ve, { headingLevel: e.headingLevel }) : /* @__PURE__ */ t(
1491
+ pe,
1467
1492
  {
1468
1493
  results: n,
1469
1494
  headingLevel: e.headingLevel,
@@ -1475,15 +1500,15 @@ function jt(e) {
1475
1500
  openLabel: e.openLabel,
1476
1501
  bookLabel: e.bookLabel,
1477
1502
  formatNextSlot: e.formatNextSlot,
1478
- onLoadMore: c,
1503
+ onLoadMore: l,
1479
1504
  loadingMore: u,
1480
1505
  loadingSkeletons: o,
1481
1506
  density: "compact",
1482
1507
  apiKey: i,
1483
- containerRef: S
1508
+ containerRef: w
1484
1509
  }
1485
- ), j = /* @__PURE__ */ t(
1486
- fe,
1510
+ ), A = /* @__PURE__ */ t(
1511
+ ue,
1487
1512
  {
1488
1513
  results: n,
1489
1514
  searchCentre: a,
@@ -1491,8 +1516,8 @@ function jt(e) {
1491
1516
  apiKey: i,
1492
1517
  mapId: s,
1493
1518
  highlightedId: b,
1494
- onPinClick: (R) => {
1495
- Q(n, R, "pin", e.onResultSelect), x(R);
1519
+ onPinClick: (N) => {
1520
+ Z(n, N, "pin", e.onResultSelect), x(N);
1496
1521
  },
1497
1522
  onPinHover: g,
1498
1523
  onPinFirstInteract: e.onPinFirstInteract,
@@ -1501,16 +1526,16 @@ function jt(e) {
1501
1526
  onConsentRequest: y,
1502
1527
  mapHandleRef: e.mapHandleRef
1503
1528
  }
1504
- ), K = N.length > 0 ? /* @__PURE__ */ t("div", { className: "ds:absolute ds:start-[var(--spacing-md)] ds:top-[var(--spacing-md)] ds:max-w-[calc(100%-var(--spacing-lg))]", children: /* @__PURE__ */ t(
1505
- ze,
1529
+ ), W = P.length > 0 ? /* @__PURE__ */ t("div", { className: "ds:absolute ds:start-[var(--spacing-md)] ds:top-[var(--spacing-md)] ds:max-w-[calc(100%-var(--spacing-lg))]", children: /* @__PURE__ */ t(
1530
+ Ve,
1506
1531
  {
1507
- facets: N,
1508
- value: L.facets,
1509
- onChange: (R) => C({ ...L, facets: R }),
1532
+ facets: P,
1533
+ value: S.facets,
1534
+ onChange: (N) => T({ ...S, facets: N }),
1510
1535
  floating: !0
1511
1536
  }
1512
1537
  ) }) : null;
1513
- return /* @__PURE__ */ t("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: W ? (
1538
+ return /* @__PURE__ */ t("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: G ? (
1514
1539
  // Desktop: 65/35 map left + cards rail right. NO Sheet (the
1515
1540
  // Sheet would portal to body and occlude the desktop layout
1516
1541
  // regardless of the parent's `lg:hidden` class).
@@ -1528,10 +1553,10 @@ function jt(e) {
1528
1553
  // the map column is `lg:sticky lg:h-[44rem]` (stays visible
1529
1554
  // as the patient scrolls cards) and the rail renders at
1530
1555
  // natural height. Single page scroll.
1531
- /* @__PURE__ */ f(rt, { children: [
1532
- /* @__PURE__ */ t(ge, { variantBodyProps: e }),
1533
- /* @__PURE__ */ f("div", { className: "ds:grid ds:grid-cols-[65fr_35fr] ds:gap-[var(--spacing-lg)] ds:items-start", children: [
1534
- /* @__PURE__ */ t("div", { className: "ds:sticky ds:top-[var(--spacing-md)] ds:h-[44rem]", children: j }),
1556
+ /* @__PURE__ */ h(it, { children: [
1557
+ /* @__PURE__ */ t(he, { variantBodyProps: e }),
1558
+ /* @__PURE__ */ h("div", { className: "ds:grid ds:grid-cols-[65fr_35fr] ds:gap-[var(--spacing-lg)] ds:items-start", children: [
1559
+ /* @__PURE__ */ t("div", { className: "ds:sticky ds:top-[var(--spacing-md)] ds:h-[44rem]", children: A }),
1535
1560
  /* @__PURE__ */ t("div", { className: "ds:min-w-0", children: E })
1536
1561
  ] })
1537
1562
  ] })
@@ -1542,7 +1567,7 @@ function jt(e) {
1542
1567
  // via the snap radiogroup at the top of the sheet body. Filters
1543
1568
  // stay floating on mobile — the full-bleed map IS the viewport
1544
1569
  // chrome, so floating chips are the only place for them.
1545
- /* @__PURE__ */ f("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
1570
+ /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
1546
1571
  /* @__PURE__ */ t(
1547
1572
  _e,
1548
1573
  {
@@ -1553,37 +1578,37 @@ function jt(e) {
1553
1578
  searchCentreLabel: a == null ? void 0 : a.label
1554
1579
  }
1555
1580
  ),
1556
- /* @__PURE__ */ f("div", { className: "ds:relative ds:h-[60vh] ds:min-h-[20rem]", children: [
1557
- j,
1558
- K
1581
+ /* @__PURE__ */ h("div", { className: "ds:relative ds:h-[60vh] ds:min-h-[20rem]", children: [
1582
+ A,
1583
+ W
1559
1584
  ] }),
1560
1585
  /* @__PURE__ */ t(I.Root, { open: !0, children: /* @__PURE__ */ t(
1561
1586
  I.Content,
1562
1587
  {
1563
1588
  side: "bottom",
1564
- size: Z,
1565
- onEscapeKeyDown: (R) => R.preventDefault(),
1566
- onPointerDownOutside: (R) => R.preventDefault(),
1567
- onInteractOutside: (R) => R.preventDefault(),
1568
- children: /* @__PURE__ */ f(I.Body, { children: [
1569
- /* @__PURE__ */ t(I.Description, { className: "ds:sr-only", children: F("practiceResults.sheet.descriptionMapFirst") }),
1570
- /* @__PURE__ */ f("div", { className: "ds:flex ds:items-start ds:justify-between ds:gap-[var(--spacing-sm)] ds:pb-[var(--spacing-sm)]", children: [
1571
- /* @__PURE__ */ t(I.Title, { className: "type-title-card ds:m-0 ds:text-[var(--foreground)]", children: F("practiceResults.sheet.title", {
1589
+ size: U,
1590
+ onEscapeKeyDown: (N) => N.preventDefault(),
1591
+ onPointerDownOutside: (N) => N.preventDefault(),
1592
+ onInteractOutside: (N) => N.preventDefault(),
1593
+ children: /* @__PURE__ */ h(I.Body, { children: [
1594
+ /* @__PURE__ */ t(I.Description, { className: "ds:sr-only", children: _("practiceResults.sheet.descriptionMapFirst") }),
1595
+ /* @__PURE__ */ h("div", { className: "ds:flex ds:items-start ds:justify-between ds:gap-[var(--spacing-sm)] ds:pb-[var(--spacing-sm)]", children: [
1596
+ /* @__PURE__ */ t(I.Title, { className: "type-title-card ds:m-0 ds:text-[var(--foreground)]", children: _("practiceResults.sheet.title", {
1572
1597
  count: e.totalCount ?? n.length
1573
1598
  }) }),
1574
1599
  /* @__PURE__ */ t(
1575
- Et,
1600
+ Ut,
1576
1601
  {
1577
- value: A,
1578
- onChange: G
1602
+ value: L,
1603
+ onChange: q
1579
1604
  }
1580
1605
  )
1581
1606
  ] }),
1582
1607
  /* @__PURE__ */ t("div", { className: "ds:pb-[var(--spacing-sm)]", children: /* @__PURE__ */ t(
1583
- me,
1608
+ de,
1584
1609
  {
1585
- value: L.sort ?? "relevance",
1586
- onChange: (R) => C({ ...L, sort: R })
1610
+ value: S.sort ?? "relevance",
1611
+ onChange: (N) => T({ ...S, sort: N })
1587
1612
  }
1588
1613
  ) }),
1589
1614
  E
@@ -1593,26 +1618,26 @@ function jt(e) {
1593
1618
  ] })
1594
1619
  ) });
1595
1620
  }
1596
- function qt(e) {
1621
+ function Zt(e) {
1597
1622
  const {
1598
1623
  results: n,
1599
1624
  apiKey: i,
1600
1625
  onLoadMore: s,
1601
1626
  loadingMore: r,
1602
1627
  loadingSkeletons: a,
1603
- emptyResultsSlot: c,
1628
+ emptyResultsSlot: l,
1604
1629
  errorSlot: u,
1605
1630
  error: o,
1606
- onRetry: h,
1607
- highlightedId: l,
1631
+ onRetry: p,
1632
+ highlightedId: c,
1608
1633
  onCardHover: m,
1609
- listContainerRef: p
1610
- } = e, b = o ? u ?? /* @__PURE__ */ t(xe, { onRetry: h, headingLevel: e.headingLevel }) : n.length === 0 && !a ? c ?? /* @__PURE__ */ t(be, { headingLevel: e.headingLevel }) : /* @__PURE__ */ t(
1611
- he,
1634
+ listContainerRef: f
1635
+ } = e, b = o ? u ?? /* @__PURE__ */ t(be, { onRetry: p, headingLevel: e.headingLevel }) : n.length === 0 && !a ? l ?? /* @__PURE__ */ t(ve, { headingLevel: e.headingLevel }) : /* @__PURE__ */ t(
1636
+ pe,
1612
1637
  {
1613
1638
  results: n,
1614
1639
  headingLevel: e.headingLevel,
1615
- highlightedId: l,
1640
+ highlightedId: c,
1616
1641
  onCardHover: m,
1617
1642
  onCardSelect: e.onCardSelect,
1618
1643
  onCardOpenClick: e.onCardOpenClick,
@@ -1625,71 +1650,71 @@ function qt(e) {
1625
1650
  loadingSkeletons: a,
1626
1651
  density: "rich",
1627
1652
  apiKey: i,
1628
- containerRef: p
1653
+ containerRef: f
1629
1654
  }
1630
1655
  );
1631
- return /* @__PURE__ */ f("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
1632
- /* @__PURE__ */ t(ge, { variantBodyProps: e }),
1656
+ return /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
1657
+ /* @__PURE__ */ t(he, { variantBodyProps: e }),
1633
1658
  b
1634
1659
  ] });
1635
1660
  }
1636
- const Ut = ot(function({
1661
+ const Wt = st(function({
1637
1662
  variant: n = "split-list-map",
1638
1663
  results: i,
1639
1664
  totalCount: s,
1640
1665
  searchCentre: r,
1641
1666
  facets: a,
1642
- googleMapsApiKey: c,
1667
+ googleMapsApiKey: l,
1643
1668
  mapId: u,
1644
- defaultZoom: o = Rt,
1645
- onBoundsChange: h,
1646
- consentGranted: l,
1669
+ defaultZoom: o = wt,
1670
+ onBoundsChange: p,
1671
+ consentGranted: c,
1647
1672
  onConsentRequest: m,
1648
- skipConsentGate: p = !1,
1673
+ skipConsentGate: f = !1,
1649
1674
  onLoadMore: b,
1650
1675
  loadingMore: g,
1651
1676
  value: x,
1652
1677
  onChange: k,
1653
1678
  onResultSelect: y,
1654
1679
  loading: d,
1655
- emptyResultsSlot: S,
1656
- errorSlot: N,
1657
- error: L,
1658
- onRetry: C,
1659
- heading: F,
1660
- headingLevel: A = 2,
1661
- intro: G,
1662
- cardOpenButtonLabel: Z,
1663
- cardBookButtonLabel: W,
1680
+ emptyResultsSlot: w,
1681
+ errorSlot: P,
1682
+ error: S,
1683
+ onRetry: T,
1684
+ heading: _,
1685
+ headingLevel: L = 2,
1686
+ intro: q,
1687
+ cardOpenButtonLabel: U,
1688
+ cardBookButtonLabel: G,
1664
1689
  showCardOpenButton: E = !0,
1665
- "aria-label": j,
1666
- id: K,
1667
- className: R,
1668
- ...B
1669
- }, qe) {
1670
- const { t: ie, i18n: ye } = w("ui"), [Ue, J] = pe(null), Y = T(/* @__PURE__ */ new Set()), se = T(/* @__PURE__ */ new Set()), Ge = T(null), re = T(null), oe = M(
1690
+ "aria-label": A,
1691
+ id: W,
1692
+ className: N,
1693
+ ...Ee
1694
+ }, je) {
1695
+ const { t: ne, i18n: xe } = C("ui"), [Ke, Q] = me(null), X = F(/* @__PURE__ */ new Set()), ae = F(/* @__PURE__ */ new Set()), qe = F(null), ie = F(null), se = M(
1671
1696
  () => ({
1672
1697
  getVariant: () => n,
1673
1698
  scrollToResult: (v) => {
1674
- const z = re.current;
1675
- if (!z) return;
1676
- const P = z.querySelector(
1699
+ const H = ie.current;
1700
+ if (!H) return;
1701
+ const R = H.querySelector(
1677
1702
  `[data-component="practice-result-card"][data-result-id="${CSS.escape(v)}"]`
1678
1703
  );
1679
- P && (P.scrollIntoView({ behavior: "smooth", block: "nearest" }), J(v));
1704
+ R && (R.scrollIntoView({ behavior: "smooth", block: "nearest" }), Q(v));
1680
1705
  },
1681
1706
  focusPin: (v) => {
1682
- J(v);
1707
+ Q(v);
1683
1708
  }
1684
1709
  }),
1685
1710
  [n]
1686
1711
  );
1687
- lt(qe, () => oe, [oe]), ht(wt, oe, K);
1688
- const Ze = E ? Z ?? ie("practiceResults.card.open") : void 0, We = W ?? ie("practiceResults.card.book"), Qe = $(
1712
+ rt(je, () => se, [se]), ft(yt, se, W);
1713
+ const Ue = E ? U ?? ne("practiceResults.card.open") : void 0, Ge = G ?? ne("practiceResults.card.book"), Ze = B(
1689
1714
  (v) => {
1690
1715
  if (v.nextAvailableSlot)
1691
1716
  try {
1692
- return new Intl.DateTimeFormat(ye.language, {
1717
+ return new Intl.DateTimeFormat(xe.language, {
1693
1718
  weekday: "short",
1694
1719
  hour: "numeric",
1695
1720
  minute: "numeric"
@@ -1698,95 +1723,95 @@ const Ut = ot(function({
1698
1723
  return v.nextAvailableSlot.dateTime;
1699
1724
  }
1700
1725
  },
1701
- [ye.language]
1702
- ), ke = T(null);
1703
- X(() => {
1704
- ke.current !== n && (ke.current = n, H("serp_variant_exposed", {
1726
+ [xe.language]
1727
+ ), ye = F(null);
1728
+ J(() => {
1729
+ ye.current !== n && (ye.current = n, $("serp_variant_exposed", {
1705
1730
  variant: n,
1706
1731
  totalCount: s ?? i.length
1707
- }), Y.current = /* @__PURE__ */ new Set(), se.current = /* @__PURE__ */ new Set());
1732
+ }), X.current = /* @__PURE__ */ new Set(), ae.current = /* @__PURE__ */ new Set());
1708
1733
  }, [n]);
1709
- const le = T(!1), ce = M(
1710
- () => Lt(a ?? [], i, x.facets),
1734
+ const re = F(!1), oe = M(
1735
+ () => Rt(a ?? [], i, x.facets),
1711
1736
  [a, i, x.facets]
1712
- ), de = x.sort ?? (r ? "distance" : "relevance"), _ = M(() => {
1713
- const v = Pt(i, x.facets, ce);
1714
- return At(v, de, r);
1715
- }, [i, x.facets, ce, de, r]);
1716
- X(() => {
1717
- const v = _.length === 0;
1718
- v && !le.current ? (H("serp_empty_results", {
1737
+ ), ce = x.sort ?? (r ? "distance" : "relevance"), V = M(() => {
1738
+ const v = Nt(i, x.facets, oe);
1739
+ return Pt(v, ce, r);
1740
+ }, [i, x.facets, oe, ce, r]);
1741
+ J(() => {
1742
+ const v = V.length === 0;
1743
+ v && !re.current ? ($("serp_empty_results", {
1719
1744
  appliedFacets: x.facets ?? {}
1720
- }), le.current = !0) : v || (le.current = !1);
1721
- }, [_.length, x.facets]);
1722
- const q = T(null), Ce = T(null);
1723
- X(
1745
+ }), re.current = !0) : v || (re.current = !1);
1746
+ }, [V.length, x.facets]);
1747
+ const j = F(null), we = F(null);
1748
+ J(
1724
1749
  () => () => {
1725
- q.current && clearTimeout(q.current);
1750
+ j.current && clearTimeout(j.current);
1726
1751
  },
1727
1752
  []
1728
1753
  );
1729
- const Je = $((v) => {
1730
- J(v), !Y.current.has(v) && (Ce.current === v && q.current || (q.current && clearTimeout(q.current), Ce.current = v, q.current = setTimeout(() => {
1731
- Y.current.has(v) || (Y.current.add(v), H("serp_result_hovered_card", { resultId: v })), q.current = null;
1754
+ const We = B((v) => {
1755
+ Q(v), !X.current.has(v) && (we.current === v && j.current || (j.current && clearTimeout(j.current), we.current = v, j.current = setTimeout(() => {
1756
+ X.current.has(v) || (X.current.add(v), $("serp_result_hovered_card", { resultId: v })), j.current = null;
1732
1757
  }, 500)));
1733
- }, []), Xe = $((v) => {
1734
- J(v);
1735
- const z = re.current;
1736
- if (!z) return;
1737
- const P = z.querySelector(
1758
+ }, []), Qe = B((v) => {
1759
+ Q(v);
1760
+ const H = ie.current;
1761
+ if (!H) return;
1762
+ const R = H.querySelector(
1738
1763
  `[data-component="practice-result-card"][data-result-id="${CSS.escape(v)}"]`
1739
1764
  );
1740
- P == null || P.scrollIntoView({ behavior: "smooth", block: "nearest" });
1741
- }, []), Ye = $((v) => {
1742
- se.current.has(v) || (se.current.add(v), H("serp_result_hovered_pin", { resultId: v }));
1743
- }, []), we = T(null), et = $(
1765
+ R == null || R.scrollIntoView({ behavior: "smooth", block: "nearest" });
1766
+ }, []), Je = B((v) => {
1767
+ ae.current.has(v) || (ae.current.add(v), $("serp_result_hovered_pin", { resultId: v }));
1768
+ }, []), ke = F(null), Xe = B(
1744
1769
  (v) => {
1745
- J(v);
1746
- const z = _.find((P) => P.id === v);
1747
- if (z) {
1748
- if (z.location) {
1749
- const P = we.current;
1750
- P == null || P.panTo({
1751
- lat: z.location.lat,
1752
- lng: z.location.lng
1753
- }), P == null || P.setZoom(16);
1770
+ Q(v);
1771
+ const H = V.find((R) => R.id === v);
1772
+ if (H) {
1773
+ if (H.location) {
1774
+ const R = ke.current;
1775
+ R == null || R.panTo({
1776
+ lat: H.location.lat,
1777
+ lng: H.location.lng
1778
+ }), R == null || R.setZoom(16);
1754
1779
  }
1755
- Q(_, v, "card", y);
1780
+ Z(V, v, "card", y);
1756
1781
  }
1757
1782
  },
1758
- [_, y]
1759
- ), tt = $(
1783
+ [V, y]
1784
+ ), Ye = B(
1760
1785
  (v) => {
1761
- Q(
1762
- _,
1786
+ Z(
1787
+ V,
1763
1788
  v,
1764
1789
  "open-button",
1765
1790
  y
1766
1791
  );
1767
1792
  },
1768
- [_, y]
1769
- ), nt = $(
1793
+ [V, y]
1794
+ ), et = B(
1770
1795
  (v) => {
1771
- Q(
1772
- _,
1796
+ Z(
1797
+ V,
1773
1798
  v,
1774
1799
  "book-button",
1775
1800
  y
1776
1801
  );
1777
1802
  },
1778
- [_, y]
1779
- ), at = !!d && i.length === 0, ue = {
1780
- results: _,
1803
+ [V, y]
1804
+ ), tt = !!d && i.length === 0, le = {
1805
+ results: V,
1781
1806
  totalCount: s,
1782
1807
  searchCentre: r,
1783
- facets: ce,
1784
- value: { ...x, sort: de },
1808
+ facets: oe,
1809
+ value: { ...x, sort: ce },
1785
1810
  onChange: k,
1786
1811
  onResultSelect: y,
1787
1812
  onLoadMore: b,
1788
1813
  loadingMore: g,
1789
- apiKey: c,
1814
+ apiKey: l,
1790
1815
  mapId: u,
1791
1816
  zoom: o,
1792
1817
  // 0.31.4: when `skipConsentGate` is true the kit synthesises
@@ -1794,59 +1819,59 @@ const Ut = ot(function({
1794
1819
  // CMP at the page level is responsible for whether the Google Maps
1795
1820
  // loader script is present at all. `onConsentRequest` is dropped
1796
1821
  // because no placeholder renders — nothing to fire it from.
1797
- consentGranted: p ? !0 : l,
1798
- onConsentRequest: p ? void 0 : m,
1799
- onBoundsChange: h,
1800
- loadingSkeletons: at,
1801
- emptyResultsSlot: S,
1802
- errorSlot: N,
1803
- error: L,
1804
- onRetry: C,
1805
- heading: F,
1806
- headingLevel: A,
1807
- intro: G,
1808
- highlightedId: Ue,
1809
- onCardHover: Je,
1810
- onPinClick: Xe,
1811
- onPinFirstInteract: Ye,
1812
- onCardSelect: et,
1813
- onCardOpenClick: tt,
1814
- onCardBookClick: nt,
1815
- openLabel: Ze,
1816
- bookLabel: We,
1817
- formatNextSlot: Qe,
1818
- listContainerRef: Ge,
1819
- mapHandleRef: we
1820
- }, it = (() => {
1822
+ consentGranted: f ? !0 : c,
1823
+ onConsentRequest: f ? void 0 : m,
1824
+ onBoundsChange: p,
1825
+ loadingSkeletons: tt,
1826
+ emptyResultsSlot: w,
1827
+ errorSlot: P,
1828
+ error: S,
1829
+ onRetry: T,
1830
+ heading: _,
1831
+ headingLevel: L,
1832
+ intro: q,
1833
+ highlightedId: Ke,
1834
+ onCardHover: We,
1835
+ onPinClick: Qe,
1836
+ onPinFirstInteract: Je,
1837
+ onCardSelect: Xe,
1838
+ onCardOpenClick: Ye,
1839
+ onCardBookClick: et,
1840
+ openLabel: Ue,
1841
+ bookLabel: Ge,
1842
+ formatNextSlot: Ze,
1843
+ listContainerRef: qe,
1844
+ mapHandleRef: ke
1845
+ }, nt = (() => {
1821
1846
  switch (n) {
1822
1847
  case "map-first":
1823
- return /* @__PURE__ */ t(jt, { ...ue });
1848
+ return /* @__PURE__ */ t(Gt, { ...le });
1824
1849
  case "rich-cards":
1825
- return /* @__PURE__ */ t(qt, { ...ue });
1850
+ return /* @__PURE__ */ t(Zt, { ...le });
1826
1851
  case "split-list-map":
1827
1852
  default:
1828
- return /* @__PURE__ */ t(Dt, { ...ue });
1853
+ return /* @__PURE__ */ t(Kt, { ...le });
1829
1854
  }
1830
- })(), st = j ?? ie("practiceResults.regionLabel");
1855
+ })(), at = A ?? ne("practiceResults.regionLabel");
1831
1856
  return /* @__PURE__ */ t(
1832
1857
  "div",
1833
1858
  {
1834
- ref: re,
1859
+ ref: ie,
1835
1860
  role: "region",
1836
- "aria-label": st,
1837
- id: K,
1861
+ "aria-label": at,
1862
+ id: W,
1838
1863
  "data-component": "practice-results",
1839
- "data-component-id": K,
1864
+ "data-component-id": W,
1840
1865
  "data-variant": n,
1841
- className: Mt({ variant: n, className: R }),
1842
- ...B,
1843
- children: it
1866
+ className: At({ variant: n, className: N }),
1867
+ ...Ee,
1868
+ children: nt
1844
1869
  }
1845
1870
  );
1846
1871
  });
1847
- Ut.displayName = "PracticeResults";
1872
+ Wt.displayName = "PracticeResults";
1848
1873
  export {
1849
- Ut as P,
1850
- wt as p
1874
+ Wt as P,
1875
+ yt as p
1851
1876
  };
1852
- //# sourceMappingURL=practice-results-DQuOfqej.js.map
1877
+ //# sourceMappingURL=practice-results-Bls-mygM.js.map