@alfadocs/ui-kit-debug 1.90.2 → 1.91.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 (272) hide show
  1. package/dist/_chunks/{agenda-card-BDuvreCe.js → agenda-card-BhY342MA.js} +2 -2
  2. package/dist/_chunks/{agenda-card-BDuvreCe.js.map → agenda-card-BhY342MA.js.map} +1 -1
  3. package/dist/_chunks/{agenda-tray-D-jvptdo.js → agenda-tray-BmxBGEci.js} +2 -2
  4. package/dist/_chunks/{agenda-tray-D-jvptdo.js.map → agenda-tray-BmxBGEci.js.map} +1 -1
  5. package/dist/_chunks/{alia-sidebar-CsTRAxC8.js → alia-sidebar-ovRX_oti.js} +3 -3
  6. package/dist/_chunks/{alia-sidebar-CsTRAxC8.js.map → alia-sidebar-ovRX_oti.js.map} +1 -1
  7. package/dist/_chunks/{appointment-card-5JMWi9_f.js → appointment-card-Bstc1p7a.js} +2 -2
  8. package/dist/_chunks/{appointment-card-5JMWi9_f.js.map → appointment-card-Bstc1p7a.js.map} +1 -1
  9. package/dist/_chunks/{appointment-peek-39BwVMUf.js → appointment-peek-C0kKqnFk.js} +2 -2
  10. package/dist/_chunks/{appointment-peek-39BwVMUf.js.map → appointment-peek-C0kKqnFk.js.map} +1 -1
  11. package/dist/_chunks/{appointment-timeline-1-Za2miy.js → appointment-timeline-rbt9AwHO.js} +2 -2
  12. package/dist/_chunks/{appointment-timeline-1-Za2miy.js.map → appointment-timeline-rbt9AwHO.js.map} +1 -1
  13. package/dist/_chunks/{appointment-tray-Dwc8MSIQ.js → appointment-tray-6zd8RLIL.js} +2 -2
  14. package/dist/_chunks/{appointment-tray-Dwc8MSIQ.js.map → appointment-tray-6zd8RLIL.js.map} +1 -1
  15. package/dist/_chunks/{avatar-BPiPL7ND.js → avatar-a6042Ox2.js} +52 -52
  16. package/dist/_chunks/avatar-a6042Ox2.js.map +1 -0
  17. package/dist/_chunks/{balance-badge-cell-D9VhFp0L.js → balance-badge-cell-BtJvre1-.js} +2 -2
  18. package/dist/_chunks/{balance-badge-cell-D9VhFp0L.js.map → balance-badge-cell-BtJvre1-.js.map} +1 -1
  19. package/dist/_chunks/booking-opt_h7Uc.js +4590 -0
  20. package/dist/_chunks/booking-opt_h7Uc.js.map +1 -0
  21. package/dist/_chunks/{calendar-ClB-jWH1.js → calendar-CmiMS4FJ.js} +2 -2
  22. package/dist/_chunks/{calendar-ClB-jWH1.js.map → calendar-CmiMS4FJ.js.map} +1 -1
  23. package/dist/_chunks/{calendar-appointment-editor-dialog-CiAGAX2t.js → calendar-appointment-editor-dialog-sJKLoVJ2.js} +7 -7
  24. package/dist/_chunks/{calendar-appointment-editor-dialog-CiAGAX2t.js.map → calendar-appointment-editor-dialog-sJKLoVJ2.js.map} +1 -1
  25. package/dist/_chunks/{care-plan-card-BYCPNDvA.js → care-plan-card-DD9rEWYN.js} +2 -2
  26. package/dist/_chunks/{care-plan-card-BYCPNDvA.js.map → care-plan-card-DD9rEWYN.js.map} +1 -1
  27. package/dist/_chunks/{care-plan-header-BzsAg6oY.js → care-plan-header-CXUJQt8Q.js} +2 -2
  28. package/dist/_chunks/{care-plan-header-BzsAg6oY.js.map → care-plan-header-CXUJQt8Q.js.map} +1 -1
  29. package/dist/_chunks/{chat-message-CmFJdEre.js → chat-message-LRO_6Ee3.js} +2 -2
  30. package/dist/_chunks/{chat-message-CmFJdEre.js.map → chat-message-LRO_6Ee3.js.map} +1 -1
  31. package/dist/_chunks/{clinical-note-card-Caidqcwa.js → clinical-note-card-Cut2lNmu.js} +3 -3
  32. package/dist/_chunks/{clinical-note-card-Caidqcwa.js.map → clinical-note-card-Cut2lNmu.js.map} +1 -1
  33. package/dist/_chunks/{contact-card-Czu60UvU.js → contact-card-ClvEDM9e.js} +2 -2
  34. package/dist/_chunks/{contact-card-Czu60UvU.js.map → contact-card-ClvEDM9e.js.map} +1 -1
  35. package/dist/_chunks/{contact-profile-card-Da1vmJQI.js → contact-profile-card-CX45mZA3.js} +106 -95
  36. package/dist/_chunks/contact-profile-card-CX45mZA3.js.map +1 -0
  37. package/dist/_chunks/{dependent-selector-C4kOgO8b.js → dependent-selector-CyNi7M_f.js} +2 -2
  38. package/dist/_chunks/{dependent-selector-C4kOgO8b.js.map → dependent-selector-CyNi7M_f.js.map} +1 -1
  39. package/dist/_chunks/{entity-summary-BLxzSSXK.js → entity-summary-B_bOloqP.js} +3 -3
  40. package/dist/_chunks/{entity-summary-BLxzSSXK.js.map → entity-summary-B_bOloqP.js.map} +1 -1
  41. package/dist/_chunks/error-page-B0fGNTRB.js +419 -0
  42. package/dist/_chunks/error-page-B0fGNTRB.js.map +1 -0
  43. package/dist/_chunks/{languages-CZqBaPwI.js → languages-CGLX6Qpe.js} +3 -15
  44. package/dist/_chunks/languages-CGLX6Qpe.js.map +1 -0
  45. package/dist/_chunks/link-DtCfnLnF.js +332 -0
  46. package/dist/_chunks/link-DtCfnLnF.js.map +1 -0
  47. package/dist/_chunks/{link-cell-renderer-CnCgudvq.js → link-cell-renderer-BS3V4LA6.js} +2 -2
  48. package/dist/_chunks/{link-cell-renderer-CnCgudvq.js.map → link-cell-renderer-BS3V4LA6.js.map} +1 -1
  49. package/dist/_chunks/{marketplace-app-shell-CmZx0Oam.js → marketplace-app-shell-CJQtx3sv.js} +2 -2
  50. package/dist/_chunks/{marketplace-app-shell-CmZx0Oam.js.map → marketplace-app-shell-CJQtx3sv.js.map} +1 -1
  51. package/dist/_chunks/{message-card-CvCnCssc.js → message-card-B6SduXJv.js} +2 -2
  52. package/dist/_chunks/{message-card-CvCnCssc.js.map → message-card-B6SduXJv.js.map} +1 -1
  53. package/dist/_chunks/{message-tray-IJYvy6Cf.js → message-tray-Cllf-v0G.js} +2 -2
  54. package/dist/_chunks/{message-tray-IJYvy6Cf.js.map → message-tray-Cllf-v0G.js.map} +1 -1
  55. package/dist/_chunks/{nav-grid-Oc4aCPrg.js → nav-grid-D2xVcHTO.js} +2 -2
  56. package/dist/_chunks/{nav-grid-Oc4aCPrg.js.map → nav-grid-D2xVcHTO.js.map} +1 -1
  57. package/dist/_chunks/{note-attachment-DIlIQ7JF.js → note-attachment-cnj2JRrg.js} +2 -2
  58. package/dist/_chunks/{note-attachment-DIlIQ7JF.js.map → note-attachment-cnj2JRrg.js.map} +1 -1
  59. package/dist/_chunks/{note-timeline-KzL52MmB.js → note-timeline-BrjHBQfx.js} +2 -2
  60. package/dist/_chunks/{note-timeline-KzL52MmB.js.map → note-timeline-BrjHBQfx.js.map} +1 -1
  61. package/dist/_chunks/{notes-panel-Dywo6R55.js → notes-panel-ib7I3aNf.js} +2 -2
  62. package/dist/_chunks/{notes-panel-Dywo6R55.js.map → notes-panel-ib7I3aNf.js.map} +1 -1
  63. package/dist/_chunks/{operator-hero-6aAIQaFZ.js → operator-hero-C_5B-8Qp.js} +43 -41
  64. package/dist/_chunks/operator-hero-C_5B-8Qp.js.map +1 -0
  65. package/dist/_chunks/{patient-details-BUr7Oemx.js → patient-details-BjcUpD9S.js} +3 -3
  66. package/dist/_chunks/{patient-details-BUr7Oemx.js.map → patient-details-BjcUpD9S.js.map} +1 -1
  67. package/dist/_chunks/{patient-field-row-bJk8Q_qr.js → patient-field-row-B0tdiaWi.js} +2 -2
  68. package/dist/_chunks/{patient-field-row-bJk8Q_qr.js.map → patient-field-row-B0tdiaWi.js.map} +1 -1
  69. package/dist/_chunks/{patient-summary-card-CCQZ8X37.js → patient-summary-card-Cvv6_Ugk.js} +4 -4
  70. package/dist/_chunks/{patient-summary-card-CCQZ8X37.js.map → patient-summary-card-Cvv6_Ugk.js.map} +1 -1
  71. package/dist/_chunks/{payment-request-card-MndSlVoK.js → payment-request-card-BfGauFY0.js} +2 -2
  72. package/dist/_chunks/{payment-request-card-MndSlVoK.js.map → payment-request-card-BfGauFY0.js.map} +1 -1
  73. package/dist/_chunks/{practice-profile-hero-qfrsFQI_.js → practice-profile-hero-ClzE-4CB.js} +76 -73
  74. package/dist/_chunks/practice-profile-hero-ClzE-4CB.js.map +1 -0
  75. package/dist/_chunks/{practice-results-DQuOfqej.js → practice-results-CQ_KvEXK.js} +517 -514
  76. package/dist/_chunks/practice-results-CQ_KvEXK.js.map +1 -0
  77. package/dist/_chunks/{product-hub-panel-Blag8t8f.js → product-hub-panel-bHi7lkVD.js} +2 -2
  78. package/dist/_chunks/{product-hub-panel-Blag8t8f.js.map → product-hub-panel-bHi7lkVD.js.map} +1 -1
  79. package/dist/_chunks/public-footer-IoRWoAMz.js +596 -0
  80. package/dist/_chunks/public-footer-IoRWoAMz.js.map +1 -0
  81. package/dist/_chunks/{signature-request-DjY-X62H.js → signature-request-DvhyrRpn.js} +3 -3
  82. package/dist/_chunks/{signature-request-DjY-X62H.js.map → signature-request-DvhyrRpn.js.map} +1 -1
  83. package/dist/_chunks/{signed-out-frame-G-3ATOdu.js → signed-out-frame-CgRXOUzi.js} +2 -2
  84. package/dist/_chunks/{signed-out-frame-G-3ATOdu.js.map → signed-out-frame-CgRXOUzi.js.map} +1 -1
  85. package/dist/_chunks/{slot-grid-DrwynKeN.js → slot-grid-B-IAFX3C.js} +180 -169
  86. package/dist/_chunks/slot-grid-B-IAFX3C.js.map +1 -0
  87. package/dist/_chunks/{timeline-wUuTDFY_.js → timeline-BcYHdP56.js} +2 -2
  88. package/dist/_chunks/{timeline-wUuTDFY_.js.map → timeline-BcYHdP56.js.map} +1 -1
  89. package/dist/_chunks/{use-appointment-details-read-BytPq3Ux.js → use-appointment-details-read-D8vDg0sg.js} +5 -5
  90. package/dist/_chunks/{use-appointment-details-read-BytPq3Ux.js.map → use-appointment-details-read-D8vDg0sg.js.map} +1 -1
  91. package/dist/agent-catalog.json +2 -2
  92. package/dist/components/_shared/social-brand-icons.d.ts +29 -0
  93. package/dist/components/_shared/social-brand-icons.d.ts.map +1 -0
  94. package/dist/components/agenda-card/index.js +1 -1
  95. package/dist/components/agenda-tray/index.js +1 -1
  96. package/dist/components/appointment-card/index.js +2 -2
  97. package/dist/components/appointment-details-panel/index.js +1 -1
  98. package/dist/components/appointment-peek/index.js +1 -1
  99. package/dist/components/appointment-timeline/index.js +1 -1
  100. package/dist/components/avatar/avatar.d.ts +14 -0
  101. package/dist/components/avatar/avatar.d.ts.map +1 -1
  102. package/dist/components/avatar/index.js +1 -1
  103. package/dist/components/booking/booking-types.d.ts +26 -0
  104. package/dist/components/booking/booking-types.d.ts.map +1 -1
  105. package/dist/components/booking/booking.d.ts.map +1 -1
  106. package/dist/components/booking/details-form.d.ts.map +1 -1
  107. package/dist/components/booking/index.js +1 -1
  108. package/dist/components/booking/slot-load-state.d.ts +11 -0
  109. package/dist/components/booking/slot-load-state.d.ts.map +1 -0
  110. package/dist/components/calendar/index.js +1 -1
  111. package/dist/components/care-plan-card/index.js +1 -1
  112. package/dist/components/care-plan-header/index.js +1 -1
  113. package/dist/components/chat-message/index.js +1 -1
  114. package/dist/components/clinical-note-card/index.js +1 -1
  115. package/dist/components/contact-card/index.js +1 -1
  116. package/dist/components/contact-profile-card/index.js +1 -1
  117. package/dist/components/data-table/index.js +1 -1
  118. package/dist/components/dependent-selector/index.js +1 -1
  119. package/dist/components/entity-summary/index.js +1 -1
  120. package/dist/components/link/index.js +1 -1
  121. package/dist/components/link/link.d.ts +10 -1
  122. package/dist/components/link/link.d.ts.map +1 -1
  123. package/dist/components/link/social-url.d.ts +71 -0
  124. package/dist/components/link/social-url.d.ts.map +1 -0
  125. package/dist/components/message-card/index.js +1 -1
  126. package/dist/components/message-tray/index.js +1 -1
  127. package/dist/components/nav-grid/index.js +1 -1
  128. package/dist/components/note-timeline/index.js +1 -1
  129. package/dist/components/notes-panel/index.js +1 -1
  130. package/dist/components/operator-hero/index.js +1 -1
  131. package/dist/components/operator-hero/operator-hero.d.ts +6 -0
  132. package/dist/components/operator-hero/operator-hero.d.ts.map +1 -1
  133. package/dist/components/patient-details/index.js +1 -1
  134. package/dist/components/patient-summary-card/index.js +1 -1
  135. package/dist/components/patient-table/index.js +1 -1
  136. package/dist/components/payment-card/index.js +1 -1
  137. package/dist/components/practice-profile-hero/index.js +1 -1
  138. package/dist/components/practice-profile-hero/practice-profile-hero.d.ts +6 -0
  139. package/dist/components/practice-profile-hero/practice-profile-hero.d.ts.map +1 -1
  140. package/dist/components/practice-results/index.js +1 -1
  141. package/dist/components/practice-results/practice-results.d.ts +8 -2
  142. package/dist/components/practice-results/practice-results.d.ts.map +1 -1
  143. package/dist/components/product-hub-tray/index.js +1 -1
  144. package/dist/components/public-footer/index.js +1 -1
  145. package/dist/components/public-footer/public-footer.d.ts +13 -1
  146. package/dist/components/public-footer/public-footer.d.ts.map +1 -1
  147. package/dist/components/public-footer/socials.d.ts +6 -5
  148. package/dist/components/public-footer/socials.d.ts.map +1 -1
  149. package/dist/components/slot-grid/index.js +1 -1
  150. package/dist/components/slot-grid/slot-grid.d.ts +2 -0
  151. package/dist/components/slot-grid/slot-grid.d.ts.map +1 -1
  152. package/dist/components/timeline/index.js +1 -1
  153. package/dist/i18n/config.d.ts.map +1 -1
  154. package/dist/i18n/config.js +224 -96
  155. package/dist/i18n/config.js.map +1 -1
  156. package/dist/i18n/locales/ar.d.ts +3 -0
  157. package/dist/i18n/locales/ar.d.ts.map +1 -1
  158. package/dist/i18n/locales/ar.js +4 -1
  159. package/dist/i18n/locales/ar.js.map +1 -1
  160. package/dist/i18n/locales/de.d.ts +3 -0
  161. package/dist/i18n/locales/de.d.ts.map +1 -1
  162. package/dist/i18n/locales/de.js +4 -1
  163. package/dist/i18n/locales/de.js.map +1 -1
  164. package/dist/i18n/locales/el.d.ts +3 -0
  165. package/dist/i18n/locales/el.d.ts.map +1 -1
  166. package/dist/i18n/locales/el.js +4 -1
  167. package/dist/i18n/locales/el.js.map +1 -1
  168. package/dist/i18n/locales/en.d.ts +3 -0
  169. package/dist/i18n/locales/en.d.ts.map +1 -1
  170. package/dist/i18n/locales/en.js +3 -0
  171. package/dist/i18n/locales/en.js.map +1 -1
  172. package/dist/i18n/locales/es.d.ts +3 -0
  173. package/dist/i18n/locales/es.d.ts.map +1 -1
  174. package/dist/i18n/locales/es.js +4 -1
  175. package/dist/i18n/locales/es.js.map +1 -1
  176. package/dist/i18n/locales/fr.d.ts +3 -0
  177. package/dist/i18n/locales/fr.d.ts.map +1 -1
  178. package/dist/i18n/locales/fr.js +4 -1
  179. package/dist/i18n/locales/fr.js.map +1 -1
  180. package/dist/i18n/locales/hi.d.ts +3 -0
  181. package/dist/i18n/locales/hi.d.ts.map +1 -1
  182. package/dist/i18n/locales/hi.js +4 -1
  183. package/dist/i18n/locales/hi.js.map +1 -1
  184. package/dist/i18n/locales/it.d.ts +3 -0
  185. package/dist/i18n/locales/it.d.ts.map +1 -1
  186. package/dist/i18n/locales/it.js +4 -1
  187. package/dist/i18n/locales/it.js.map +1 -1
  188. package/dist/i18n/locales/ja.d.ts +3 -0
  189. package/dist/i18n/locales/ja.d.ts.map +1 -1
  190. package/dist/i18n/locales/ja.js +4 -1
  191. package/dist/i18n/locales/ja.js.map +1 -1
  192. package/dist/i18n/locales/nl.d.ts +3 -0
  193. package/dist/i18n/locales/nl.d.ts.map +1 -1
  194. package/dist/i18n/locales/nl.js +4 -1
  195. package/dist/i18n/locales/nl.js.map +1 -1
  196. package/dist/i18n/locales/pl.d.ts +3 -0
  197. package/dist/i18n/locales/pl.d.ts.map +1 -1
  198. package/dist/i18n/locales/pl.js +4 -1
  199. package/dist/i18n/locales/pl.js.map +1 -1
  200. package/dist/i18n/locales/pt.d.ts +3 -0
  201. package/dist/i18n/locales/pt.d.ts.map +1 -1
  202. package/dist/i18n/locales/pt.js +4 -1
  203. package/dist/i18n/locales/pt.js.map +1 -1
  204. package/dist/i18n/locales/ro.d.ts +3 -0
  205. package/dist/i18n/locales/ro.d.ts.map +1 -1
  206. package/dist/i18n/locales/ro.js +4 -1
  207. package/dist/i18n/locales/ro.js.map +1 -1
  208. package/dist/i18n/locales/ru.d.ts +3 -0
  209. package/dist/i18n/locales/ru.d.ts.map +1 -1
  210. package/dist/i18n/locales/ru.js +4 -1
  211. package/dist/i18n/locales/ru.js.map +1 -1
  212. package/dist/i18n/locales/sq.d.ts +3 -0
  213. package/dist/i18n/locales/sq.d.ts.map +1 -1
  214. package/dist/i18n/locales/sq.js +4 -1
  215. package/dist/i18n/locales/sq.js.map +1 -1
  216. package/dist/i18n/locales/sv.d.ts +3 -0
  217. package/dist/i18n/locales/sv.d.ts.map +1 -1
  218. package/dist/i18n/locales/sv.js +4 -1
  219. package/dist/i18n/locales/sv.js.map +1 -1
  220. package/dist/i18n/locales/tr.d.ts +3 -0
  221. package/dist/i18n/locales/tr.d.ts.map +1 -1
  222. package/dist/i18n/locales/tr.js +4 -1
  223. package/dist/i18n/locales/tr.js.map +1 -1
  224. package/dist/i18n/locales/zh.d.ts +3 -0
  225. package/dist/i18n/locales/zh.d.ts.map +1 -1
  226. package/dist/i18n/locales/zh.js +4 -1
  227. package/dist/i18n/locales/zh.js.map +1 -1
  228. package/dist/index.js +42 -42
  229. package/dist/locales/ar.json +4 -1
  230. package/dist/locales/de.json +4 -1
  231. package/dist/locales/el.json +4 -1
  232. package/dist/locales/en.json +3 -0
  233. package/dist/locales/es.json +4 -1
  234. package/dist/locales/fr.json +4 -1
  235. package/dist/locales/hi.json +4 -1
  236. package/dist/locales/it.json +4 -1
  237. package/dist/locales/ja.json +4 -1
  238. package/dist/locales/nl.json +4 -1
  239. package/dist/locales/pl.json +4 -1
  240. package/dist/locales/pt.json +4 -1
  241. package/dist/locales/ro.json +4 -1
  242. package/dist/locales/ru.json +4 -1
  243. package/dist/locales/sq.json +4 -1
  244. package/dist/locales/sv.json +4 -1
  245. package/dist/locales/tr.json +4 -1
  246. package/dist/locales/zh.json +4 -1
  247. package/dist/patterns/alia-assistant/index.js +1 -1
  248. package/dist/patterns/calendar/index.js +1 -1
  249. package/dist/patterns/error-page/error-page-english.d.ts +71 -0
  250. package/dist/patterns/error-page/error-page-english.d.ts.map +1 -0
  251. package/dist/patterns/error-page/error-page.d.ts.map +1 -1
  252. package/dist/patterns/error-page/index.js +1 -1
  253. package/dist/patterns/marketplace-app-shell/index.js +1 -1
  254. package/dist/patterns/signature-request/index.js +1 -1
  255. package/dist/patterns/signed-out-frame/index.js +1 -1
  256. package/dist/tokens.css +1 -1
  257. package/package.json +1 -1
  258. package/dist/_chunks/avatar-BPiPL7ND.js.map +0 -1
  259. package/dist/_chunks/booking-CcE_oviI.js +0 -4373
  260. package/dist/_chunks/booking-CcE_oviI.js.map +0 -1
  261. package/dist/_chunks/contact-profile-card-Da1vmJQI.js.map +0 -1
  262. package/dist/_chunks/error-page-Bhai-spN.js +0 -344
  263. package/dist/_chunks/error-page-Bhai-spN.js.map +0 -1
  264. package/dist/_chunks/languages-CZqBaPwI.js.map +0 -1
  265. package/dist/_chunks/link-N5_YpLtm.js +0 -138
  266. package/dist/_chunks/link-N5_YpLtm.js.map +0 -1
  267. package/dist/_chunks/operator-hero-6aAIQaFZ.js.map +0 -1
  268. package/dist/_chunks/practice-profile-hero-qfrsFQI_.js.map +0 -1
  269. package/dist/_chunks/practice-results-DQuOfqej.js.map +0 -1
  270. package/dist/_chunks/public-footer-CXOrdAaS.js +0 -568
  271. package/dist/_chunks/public-footer-CXOrdAaS.js.map +0 -1
  272. package/dist/_chunks/slot-grid-DrwynKeN.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sources":["../../src/i18n/supported-locales.ts","../../src/i18n/registerUiBundle.ts","../../src/i18n/config.ts"],"sourcesContent":["/**\n * Locales that ship a JSON bundle. Consumer apps register these via\n * `i18n.addResourceBundle(locale, 'ui', bundle)` — see docs/06-i18n.mdx.\n * Locales not listed here fall back to English through i18next's own\n * `fallbackLng` resolution.\n */\nexport const LOCALES_WITH_BUNDLES = [\n 'en',\n 'it',\n 'de',\n 'ar',\n 'fr',\n 'es',\n 'pt',\n 'nl',\n 'ro',\n 'sq',\n 'tr',\n 'pl',\n 'sv',\n 'ru',\n 'el',\n 'ja',\n 'zh',\n 'hi',\n] as const;\n","import i18next, { type i18n as I18nInstance } from 'i18next';\n\n/**\n * Register or extend the `ui` namespace bundle for a locale.\n *\n * Adds missing keys to the installed i18next singleton without overwriting\n * existing translations. All 18 kit locales ship already. Load a bundled\n * locale at any time: loading fills missing keys and preserves existing values.\n * Keep app copy in the host namespace. Request upstream language review for\n * corrections to existing kit strings; this helper does not overwrite them.\n */\nexport function registerUiBundle(\n locale: string,\n bundle: Record<string, unknown>,\n instance: I18nInstance = i18next,\n): void {\n instance.addResourceBundle(\n locale,\n 'ui',\n bundle,\n /* deep */ true,\n /* overwrite */ false,\n );\n}\n","import i18next, { type i18n as I18nInstance } from 'i18next';\nimport { initReactI18next } from 'react-i18next';\nimport { enUi } from './locales/en.ts';\n\nconst IS_DEV = import.meta.env?.DEV === true;\n\nconst LOADERS: Record<string, () => Promise<Record<string, unknown>>> = {\n it: () => import('./locales/it.ts').then((m) => m.itUi),\n de: () => import('./locales/de.ts').then((m) => m.deUi),\n ar: () => import('./locales/ar.ts').then((m) => m.arUi),\n fr: () => import('./locales/fr.ts').then((m) => m.frUi),\n es: () => import('./locales/es.ts').then((m) => m.esUi),\n pt: () => import('./locales/pt.ts').then((m) => m.ptUi),\n nl: () => import('./locales/nl.ts').then((m) => m.nlUi),\n ro: () => import('./locales/ro.ts').then((m) => m.roUi),\n sq: () => import('./locales/sq.ts').then((m) => m.sqUi),\n tr: () => import('./locales/tr.ts').then((m) => m.trUi),\n pl: () => import('./locales/pl.ts').then((m) => m.plUi),\n sv: () => import('./locales/sv.ts').then((m) => m.svUi),\n ru: () => import('./locales/ru.ts').then((m) => m.ruUi),\n el: () => import('./locales/el.ts').then((m) => m.elUi),\n ja: () => import('./locales/ja.ts').then((m) => m.jaUi),\n zh: () => import('./locales/zh.ts').then((m) => m.zhUi),\n hi: () => import('./locales/hi.ts').then((m) => m.hiUi),\n};\n\n// Completion belongs to a resource bundle, not just a language code. A host\n// can register a partial bundle or replace its store with a later init().\ninterface InstanceState {\n languageRequest: number;\n completed: Map<string, unknown>;\n pending: Map<string, Promise<void>>;\n}\nconst instances = new WeakMap<I18nInstance, InstanceState>();\n\n/** Resolve a translation language without changing the host's formatting tag. */\nexport function resolveUiLanguage(code: string): string | undefined {\n if (!code) return undefined;\n const base = code.toLowerCase().replaceAll('_', '-').split('-')[0];\n return base === 'en' || Object.hasOwn(LOADERS, base) ? base : undefined;\n}\n\nfunction registerEnglish(instance: I18nInstance): void {\n instance.addResourceBundle('en', 'ui', enUi, true, false);\n}\n\nfunction attachInstance(instance: I18nInstance): InstanceState {\n const existing = instances.get(instance);\n if (existing) return existing;\n const state: InstanceState = {\n languageRequest: 0,\n completed: new Map(),\n pending: new Map(),\n };\n instances.set(instance, state);\n const originalChangeLanguage = instance.changeLanguage.bind(instance);\n instance.changeLanguage = (lng, callback) => {\n const request = ++state.languageRequest;\n if (!lng) return originalChangeLanguage(lng, callback);\n // Kit bundles must not trigger i18next's existing-resource shortcut for\n // a language the host explicitly excludes through supportedLngs.\n const languageUtils = instance.services.languageUtils as {\n getBestMatchFromCodes: (codes: string[]) => string | undefined;\n };\n const base = resolveUiLanguage(lng);\n const regionalResources = instance.getDataByLanguage(lng);\n const hostOwnsRegion =\n base &&\n base !== lng &&\n resolutionChain(lng, instance).includes(base) &&\n regionalResources &&\n Object.keys(regionalResources).some(\n (namespace) =>\n namespace !== 'ui' ||\n state.completed.get(lng) !== instance.getResourceBundle(lng, 'ui'),\n );\n const selected =\n instance.options.supportedLngs && !hostOwnsRegion\n ? languageUtils.getBestMatchFromCodes([lng])\n : lng;\n if (!selected) {\n const translate = instance.t.bind(instance);\n callback?.(null, translate);\n return Promise.resolve(translate);\n }\n return loadResolutionChain(selected, instance).then(\n () => {\n // A cold import must not overtake a newer, already loaded selection.\n if (request !== state.languageRequest) {\n const translate = instance.t.bind(instance);\n callback?.(null, translate);\n return translate;\n }\n return originalChangeLanguage(selected, callback);\n },\n (error: unknown) => {\n callback?.(error, instance.t.bind(instance));\n throw error;\n },\n );\n };\n instance.on('initialized', () => {\n registerEnglish(instance);\n // i18next events cannot be awaited. Hosts await initialiseUiI18n() before\n // rendering; this opportunistic load also restores ordinary re-init usage.\n void loadResolutionChain(instance.language, instance).catch(\n (error: unknown) => {\n if (IS_DEV)\n console.warn('[i18n] Could not restore the UI locale.', error);\n },\n );\n });\n return state;\n}\n\n/** Delegate fallback and supported-language rules to i18next itself. */\nfunction resolutionChain(code: string, instance: I18nInstance): string[] {\n const languageUtils = instance.services.languageUtils as {\n toResolveHierarchy: (language: string) => string[];\n };\n return languageUtils.toResolveHierarchy(code);\n}\n\nasync function loadResolutionChain(\n code: string,\n instance: I18nInstance,\n): Promise<void> {\n await Promise.all(\n [...new Set([code, ...resolutionChain(code, instance)])]\n .filter(Boolean)\n .map((language) => loadLocale(language, instance)),\n );\n}\n\n/**\n * Merge a complete kit bundle, keeping host overrides. Regional tags share\n * their base translation bundle; the instance language remains untouched.\n * Lazy-import failures reject and can be retried.\n */\nexport async function loadLocale(\n code: string,\n instance: I18nInstance = i18next,\n): Promise<void> {\n if (!instance.isInitialized) {\n throw new Error(\n 'Initialise the host i18next instance before loading UI locales.',\n );\n }\n const language = resolveUiLanguage(code);\n if (!language) return;\n const state = attachInstance(instance);\n // currentOnly and region-only supportedLngs can exclude the base language.\n // Register the requested tag too in that case, without changing host policy.\n const targets =\n code !== language && !resolutionChain(code, instance).includes(language)\n ? [language, code]\n : [language];\n if (\n targets.every((target) => {\n const resource = instance.getResourceBundle(target, 'ui');\n return resource && state.completed.get(target) === resource;\n })\n )\n return;\n const requestKey = targets.join(':');\n const pending = state.pending.get(requestKey);\n if (pending) return pending;\n const request = (async () => {\n const bundle = language === 'en' ? enUi : await LOADERS[language]();\n instance.addResourceBundle(language, 'ui', bundle, true, false);\n for (const target of targets) {\n if (target !== language)\n instance.addResourceBundle(\n target,\n 'ui',\n instance.getResourceBundle(language, 'ui'),\n true,\n false,\n );\n state.completed.set(target, instance.getResourceBundle(target, 'ui'));\n }\n })();\n state.pending.set(requestKey, request);\n try {\n await request;\n } finally {\n state.pending.delete(requestKey);\n }\n}\n\n/**\n * Await after host init(), before rendering. Also supports createInstance()\n * hosts: pass this same instance to I18nextProvider. Never reinitialises a host.\n */\nexport async function initialiseUiI18n(\n instance: I18nInstance = i18next,\n): Promise<void> {\n if (!instance.isInitialized) {\n throw new Error(\n 'Initialise the host i18next instance before setting up UI translations.',\n );\n }\n attachInstance(instance);\n await loadLocale('en', instance);\n await loadResolutionChain(instance.language, instance);\n}\n\n/** Load the requested bundle before changing language. */\nexport async function setLocale(\n code: string,\n instance: I18nInstance = i18next,\n): Promise<void> {\n attachInstance(instance);\n await instance.changeLanguage(code);\n}\n\n/** Load all 18 bundles on a singleton or provider instance. */\nexport async function loadAllLocales(\n instance: I18nInstance = i18next,\n): Promise<void> {\n await Promise.all(\n ['en', ...Object.keys(LOADERS)].map((code) => loadLocale(code, instance)),\n );\n}\n\n// Bootstrap only a genuinely uninitialised singleton. A library must preserve\n// a consumer's default namespace, language, fallbacks and application resources.\nif (!i18next.isInitialized) {\n void i18next.use(initReactI18next).init({\n lng: 'en',\n fallbackLng: 'en',\n ns: ['ui'],\n defaultNS: 'ui',\n partialBundledLanguages: true,\n debug: IS_DEV,\n saveMissing: IS_DEV,\n missingKeyHandler: IS_DEV\n ? (lngs, ns, key) => {\n console.warn(\n `[i18n] Missing key \"${key}\" in namespace \"${ns}\" for locales [${lngs.join(', ')}].`,\n );\n }\n : undefined,\n interpolation: { escapeValue: false },\n resources: { en: { ui: enUi } },\n });\n}\nregisterEnglish(i18next);\nattachInstance(i18next);\nvoid initialiseUiI18n().catch((error: unknown) => {\n if (IS_DEV)\n console.warn('[i18n] Could not load the initial UI locale.', error);\n});\n\nexport default i18next;\nexport { LOCALES_WITH_BUNDLES } from './supported-locales';\nexport { registerUiBundle } from './registerUiBundle';\n"],"names":["LOCALES_WITH_BUNDLES","registerUiBundle","locale","bundle","instance","i18next","IS_DEV","LOADERS","m","instances","resolveUiLanguage","code","base","registerEnglish","enUi","attachInstance","existing","state","originalChangeLanguage","lng","callback","request","languageUtils","regionalResources","hostOwnsRegion","resolutionChain","namespace","selected","translate","loadResolutionChain","error","language","loadLocale","targets","target","resource","requestKey","pending","initialiseUiI18n","setLocale","loadAllLocales","initReactI18next"],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sources":["../../src/i18n/supported-locales.ts","../../src/i18n/registerUiBundle.ts","../../src/i18n/config.ts"],"sourcesContent":["/**\n * Locales that ship a JSON bundle. Consumer apps register these via\n * `i18n.addResourceBundle(locale, 'ui', bundle)` — see docs/06-i18n.mdx.\n * Locales not listed here fall back to English through i18next's own\n * `fallbackLng` resolution.\n */\nexport const LOCALES_WITH_BUNDLES = [\n 'en',\n 'it',\n 'de',\n 'ar',\n 'fr',\n 'es',\n 'pt',\n 'nl',\n 'ro',\n 'sq',\n 'tr',\n 'pl',\n 'sv',\n 'ru',\n 'el',\n 'ja',\n 'zh',\n 'hi',\n] as const;\n","import i18next, { type i18n as I18nInstance } from 'i18next';\n\n/**\n * Register or extend the `ui` namespace bundle for a locale.\n *\n * Adds missing keys to the installed i18next singleton without overwriting\n * existing translations. All 18 kit locales ship already. Load a bundled\n * locale at any time: loading fills missing keys and preserves existing values.\n * Keep app copy in the host namespace. Request upstream language review for\n * corrections to existing kit strings; this helper does not overwrite them.\n */\nexport function registerUiBundle(\n locale: string,\n bundle: Record<string, unknown>,\n instance: I18nInstance = i18next,\n): void {\n instance.addResourceBundle(\n locale,\n 'ui',\n bundle,\n /* deep */ true,\n /* overwrite */ false,\n );\n}\n","import i18next, { type i18n as I18nInstance } from 'i18next';\nimport { initReactI18next } from 'react-i18next';\n\nconst IS_DEV = import.meta.env?.DEV === true;\n\n// English is a lazy chunk like every other locale: nothing in this module\n// graph imports `./locales/en.ts` statically, so a consumer that runs in\n// Italian never downloads it (HTP-7057).\nconst LOADERS: Record<string, () => Promise<Record<string, unknown>>> = {\n en: () => import('./locales/en.ts').then((m) => m.enUi),\n it: () => import('./locales/it.ts').then((m) => m.itUi),\n de: () => import('./locales/de.ts').then((m) => m.deUi),\n ar: () => import('./locales/ar.ts').then((m) => m.arUi),\n fr: () => import('./locales/fr.ts').then((m) => m.frUi),\n es: () => import('./locales/es.ts').then((m) => m.esUi),\n pt: () => import('./locales/pt.ts').then((m) => m.ptUi),\n nl: () => import('./locales/nl.ts').then((m) => m.nlUi),\n ro: () => import('./locales/ro.ts').then((m) => m.roUi),\n sq: () => import('./locales/sq.ts').then((m) => m.sqUi),\n tr: () => import('./locales/tr.ts').then((m) => m.trUi),\n pl: () => import('./locales/pl.ts').then((m) => m.plUi),\n sv: () => import('./locales/sv.ts').then((m) => m.svUi),\n ru: () => import('./locales/ru.ts').then((m) => m.ruUi),\n el: () => import('./locales/el.ts').then((m) => m.elUi),\n ja: () => import('./locales/ja.ts').then((m) => m.jaUi),\n zh: () => import('./locales/zh.ts').then((m) => m.zhUi),\n hi: () => import('./locales/hi.ts').then((m) => m.hiUi),\n};\n\n// Completion belongs to a resource bundle, not just a language code. A host\n// can register a partial bundle or replace its store with a later init().\ninterface InstanceState {\n languageRequest: number;\n /** changeLanguage() calls whose bundle is still on its way. */\n changing: number;\n completed: Map<string, unknown>;\n /** Kit languages whose last load failed and has not been retried to success. */\n failed: Set<string>;\n pending: Map<string, Promise<void>>;\n /** Callers waiting for the active language's bundle to be in the store. */\n waiters: Set<() => void>;\n /** Kit languages a reader asked for, so their arrival redraws them. */\n requested: Set<string>;\n}\nconst instances = new WeakMap<I18nInstance, InstanceState>();\n\n/** Resolve a translation language without changing the host's formatting tag. */\nexport function resolveUiLanguage(code: string): string | undefined {\n if (!code) return undefined;\n const base = code.toLowerCase().replaceAll('_', '-').split('-')[0];\n return Object.hasOwn(LOADERS, base) ? base : undefined;\n}\n\nfunction attachInstance(instance: I18nInstance): InstanceState {\n const existing = instances.get(instance);\n if (existing) return existing;\n const state: InstanceState = {\n languageRequest: 0,\n changing: 0,\n completed: new Map(),\n failed: new Set(),\n pending: new Map(),\n waiters: new Set(),\n requested: new Set(),\n };\n instances.set(instance, state);\n installReadiness(instance, state);\n const originalChangeLanguage = instance.changeLanguage.bind(instance);\n instance.changeLanguage = (lng, callback) => {\n const request = ++state.languageRequest;\n if (!lng) return originalChangeLanguage(lng, callback);\n // Kit bundles must not trigger i18next's existing-resource shortcut for\n // a language the host explicitly excludes through supportedLngs.\n const languageUtils = instance.services.languageUtils as {\n getBestMatchFromCodes: (codes: string[]) => string | undefined;\n };\n const base = resolveUiLanguage(lng);\n const regionalResources = instance.getDataByLanguage(lng);\n const hostOwnsRegion =\n base &&\n base !== lng &&\n resolutionChain(lng, instance).includes(base) &&\n regionalResources &&\n Object.keys(regionalResources).some(\n (namespace) =>\n namespace !== 'ui' ||\n state.completed.get(lng) !== instance.getResourceBundle(lng, 'ui'),\n );\n const selected =\n instance.options.supportedLngs && !hostOwnsRegion\n ? languageUtils.getBestMatchFromCodes([lng])\n : lng;\n if (!selected) {\n const translate = instance.t.bind(instance);\n callback?.(null, translate);\n return Promise.resolve(translate);\n }\n state.changing++;\n return loadResolutionChain(selected, instance)\n .then(\n () => {\n // A cold import must not overtake a newer, already loaded selection.\n if (request !== state.languageRequest) {\n const translate = instance.t.bind(instance);\n callback?.(null, translate);\n return translate;\n }\n return originalChangeLanguage(selected, callback);\n },\n (error: unknown) => {\n callback?.(error, instance.t.bind(instance));\n throw error;\n },\n )\n .finally(() => {\n state.changing--;\n });\n };\n instance.on('initialized', () => {\n // i18next events cannot be awaited. Hosts await initialiseUiI18n() before\n // rendering; this opportunistic load also restores ordinary re-init usage.\n void restoreActiveLanguage(instance).catch((error: unknown) => {\n if (IS_DEV)\n console.warn('[i18n] Could not restore the UI locale.', error);\n });\n settleWaiters(state);\n });\n instance.on('languageChanged', () => settleWaiters(state));\n return state;\n}\n\n/**\n * Never suspend, and never draw a raw key, while a kit bundle is on the way\n * (HTP-7057).\n *\n * Without a backend, i18next calls every namespace loaded, so react-i18next\n * never suspends for `ui`. That is deliberate: a suspend with no `<Suspense>`\n * above it throws during a synchronous React 18 render (legacy\n * `ReactDOM.render`, `flushSync`, a root or state update in a click handler)\n * and unmounts the root. Instead:\n *\n * - `t()` returns an empty string for the `ui` namespace while the active\n * language's bundle is not in the store (see `blankWhilePending`);\n * - the first reader of a missing bundle starts its load, and the arrival of\n * the bundle emits `languageChanged`, which react-i18next listens to, so\n * mounted components redraw with text.\n *\n * A language switch is not affected: the kit changes language only after the\n * new bundle is in the store, so the old text stays on screen.\n */\nfunction installReadiness(instance: I18nInstance, state: InstanceState): void {\n const hasLoadedNamespace = instance.hasLoadedNamespace.bind(instance);\n instance.hasLoadedNamespace = (ns, options) => {\n const answer = hasLoadedNamespace(ns, options);\n if (usesUi(ns) && instance.isInitialized)\n requestUi(\n instance,\n state,\n typeof options?.lng === 'string' ? options.lng : instance.language,\n );\n return answer;\n };\n const translate = instance.t.bind(instance) as unknown as (\n ...args: unknown[]\n ) => unknown;\n instance.t = ((...args: unknown[]) => {\n const result = translate(...args);\n return typeof result === 'string' &&\n blankWhilePending(instance, state, args)\n ? ''\n : result;\n }) as unknown as typeof instance.t;\n const loadNamespaces = instance.loadNamespaces.bind(instance);\n instance.loadNamespaces = (ns, callback) =>\n usesUi(ns)\n ? whenUiReady(instance, state).then(() => loadNamespaces(ns, callback))\n : loadNamespaces(ns, callback);\n // react-i18next asks for `useTranslation('ui', { lng })` through\n // loadLanguages(). Load that language's kit bundle first. A failed load\n // settles too: the request never rejects.\n const loadLanguages = instance.loadLanguages.bind(instance);\n instance.loadLanguages = (lngs, callback) => {\n const wanted = (Array.isArray(lngs) ? lngs : [lngs])\n .map((code) => firstKitLanguage(code, instance))\n .filter((code): code is string => Boolean(code));\n const ui = ([] as string[]).concat(instance.options.ns ?? []);\n if (!instance.isInitialized || wanted.length === 0 || !ui.includes('ui'))\n return loadLanguages(lngs, callback);\n return Promise.all(\n wanted.map((code) => ensureLocale(code, instance).catch(() => false)),\n ).then(() => loadLanguages(lngs, callback));\n };\n}\n\n/**\n * True when this `t()` call reads the `ui` namespace of a language whose kit\n * bundle has not landed. The one place that decides \"blank\".\n */\nfunction blankWhilePending(\n instance: I18nInstance,\n state: InstanceState,\n args: unknown[],\n): boolean {\n if (!instance.isInitialized) return false;\n const options = [args[1], args[2]].find(\n (arg): arg is { ns?: unknown; lng?: unknown } =>\n typeof arg === 'object' && arg !== null,\n );\n const key = Array.isArray(args[0]) ? args[0][0] : args[0];\n const prefix =\n typeof key === 'string' && key.includes(':') ? key.split(':')[0] : '';\n const ns = prefix || options?.ns || instance.options.defaultNS;\n if (!ns || !usesUi(ns as string | readonly string[])) return false;\n const lng =\n typeof options?.lng === 'string' ? options.lng : instance.language;\n if (isUiReady(instance, lng)) return false;\n // Whoever reads text first starts the load.\n requestUi(instance, state, lng);\n return true;\n}\n\n/**\n * Start loading the bundle a reader is waiting for, if nothing is. Safe to\n * call from render: loads are shared, and a failed one counts as settled.\n */\nfunction requestUi(\n instance: I18nInstance,\n state: InstanceState,\n code: string | undefined,\n): void {\n if (!code || isUiReady(instance, code)) return;\n const first = firstKitLanguage(code, instance);\n if (!first) return;\n // A language change in flight loads its own bundle (see restoreActiveLanguage).\n if (code === instance.language && state.changing > 0) return;\n state.requested.add(first);\n ensureLocale(first, instance).catch((error: unknown) => {\n if (IS_DEV) console.warn('[i18n] Could not load the UI locale.', error);\n });\n}\n\nconst usesUi = (ns: string | readonly string[]): boolean =>\n typeof ns === 'string' ? ns === 'ui' : ns.includes('ui');\n\n/**\n * True when `code` needs no kit bundle, or its load has settled: the bundle is\n * in the store, a host registered the kit's own bundle, or the load failed\n * and the store has been left to fall back (see `degrade`). False means kit\n * text for `code` is blank for now.\n */\nfunction isUiReady(instance: I18nInstance, code: string | undefined): boolean {\n if (!code) return true;\n const first = firstKitLanguage(code, instance);\n if (!first) return true;\n const state = attachInstance(instance);\n return bundleTargets(first, instance).every(\n (target) =>\n isBundleCurrent(target, instance, state) ||\n state.failed.has(target) ||\n isHostBundle(target, instance),\n );\n}\n\n/**\n * A `ui` bundle the host registered itself, for example the JSON from\n * `@alfadocs/ui-kit/locales/<lang>`. It counts as ready when it is a whole\n * bundle (it holds the `common` and `errorPage` groups); a partial one, such\n * as a few keys added with registerUiBundle(), does not.\n */\nfunction isHostBundle(target: string, instance: I18nInstance): boolean {\n const resource = instance.getResourceBundle(target, 'ui') as\n | Record<string, unknown>\n | undefined;\n return Boolean(resource?.common && resource.errorPage);\n}\n\n/**\n * Resolve when the active language's bundle is in the store. If nothing is\n * loading it, start the load. A failed load settles every waiter too (see\n * `degrade`): a component renders from what the store holds and never stays\n * blank. The host still sees the rejection from its own awaited call, and a\n * retry that succeeds redraws the components.\n */\nfunction whenUiReady(\n instance: I18nInstance,\n state: InstanceState,\n): Promise<void> {\n if (instance.isInitialized && isUiReady(instance, instance.language))\n return Promise.resolve();\n return new Promise((resolve) => {\n const waiter = () => {\n if (instance.isInitialized && isUiReady(instance, instance.language)) {\n state.waiters.delete(waiter);\n resolve();\n }\n };\n state.waiters.add(waiter);\n if (instance.isInitialized && state.changing === 0) {\n restoreActiveLanguage(instance).catch((error: unknown) => {\n if (IS_DEV) console.warn('[i18n] Could not load the UI locale.', error);\n });\n }\n });\n}\n\nfunction settleWaiters(state: InstanceState): void {\n for (const waiter of [...state.waiters]) waiter();\n}\n\n/** Delegate fallback and supported-language rules to i18next itself. */\nfunction resolutionChain(code: string, instance: I18nInstance): string[] {\n const languageUtils = instance.services.languageUtils as {\n toResolveHierarchy: (language: string) => string[];\n };\n return languageUtils.toResolveHierarchy(code);\n}\n\n/**\n * Load the first kit-covered language in the resolution chain. Every kit\n * bundle is complete (check:i18n-parity), so a later fallback such as English\n * can never supply a missing `ui` key and is not downloaded. English loads\n * only when it is the active language, or when nothing before it in the chain\n * has a kit bundle (for example Korean falling back to English).\n */\nasync function loadResolutionChain(\n code: string,\n instance: I18nInstance,\n): Promise<boolean> {\n const first = firstKitLanguage(code, instance);\n return first ? ensureLocale(first, instance) : false;\n}\n\nfunction firstKitLanguage(\n code: string,\n instance: I18nInstance,\n): string | undefined {\n return [...new Set([code, ...resolutionChain(code, instance)])]\n .filter(Boolean)\n .find((language) => resolveUiLanguage(language));\n}\n\n/**\n * The language tags a kit bundle is registered under. currentOnly and\n * region-only supportedLngs can exclude the base language, so the requested\n * tag is registered too in that case, without changing host policy.\n */\nfunction bundleTargets(code: string, instance: I18nInstance): string[] {\n const language = resolveUiLanguage(code) as string;\n return code !== language &&\n !resolutionChain(code, instance).includes(language)\n ? [language, code]\n : [language];\n}\n\nfunction isBundleCurrent(\n target: string,\n instance: I18nInstance,\n state: InstanceState,\n): boolean {\n const resource = instance.getResourceBundle(target, 'ui');\n return Boolean(resource) && state.completed.get(target) === resource;\n}\n\n/**\n * Load the active language's bundle. `ensureLocale` tells mounted components\n * when it arrives (react-i18next redraws on `languageChanged`, not on\n * resources being added).\n */\nasync function restoreActiveLanguage(instance: I18nInstance): Promise<void> {\n // A language change in flight loads its own bundle. Loading the language\n // that is about to be left would fetch a bundle nobody needs (English, on\n // a host that starts in English and then switches to Italian).\n if (attachInstance(instance).changing > 0) return;\n await loadResolutionChain(instance.language, instance);\n}\n\n/**\n * Merge a complete kit bundle, keeping host overrides. Regional tags share\n * their base translation bundle; the instance language remains untouched.\n * Lazy-import failures reject and can be retried.\n */\nexport async function loadLocale(\n code: string,\n instance: I18nInstance = i18next,\n): Promise<void> {\n await ensureLocale(code, instance);\n}\n\n/** Resolves true when this call loaded a bundle, false when it was a no-op. */\nasync function ensureLocale(\n code: string,\n instance: I18nInstance,\n): Promise<boolean> {\n if (!instance.isInitialized) {\n throw new Error(\n 'Initialise the host i18next instance before loading UI locales.',\n );\n }\n const language = resolveUiLanguage(code);\n if (!language) return false;\n const state = attachInstance(instance);\n const targets = bundleTargets(code, instance);\n if (targets.every((target) => isBundleCurrent(target, instance, state)))\n return false;\n const requestKey = targets.join(':');\n const pending = state.pending.get(requestKey);\n if (pending) return pending.then(() => false);\n const request = (async () => {\n try {\n const bundle = await LOADERS[language]();\n instance.addResourceBundle(language, 'ui', bundle, true, false);\n for (const target of targets) {\n if (target !== language)\n instance.addResourceBundle(\n target,\n 'ui',\n instance.getResourceBundle(language, 'ui'),\n true,\n false,\n );\n state.completed.set(target, instance.getResourceBundle(target, 'ui'));\n }\n } catch (error) {\n await degrade(language, targets, instance, state);\n throw error;\n }\n // Redraw the components that were blank, or showing a fallback, for it.\n const retried = targets.some((target) => state.failed.delete(target));\n const wasAsked = state.requested.delete(language);\n settleWaiters(state);\n if (\n retried ||\n wasAsked ||\n firstKitLanguage(instance.language, instance) === language\n )\n instance.emit('languageChanged', instance.language);\n })();\n state.pending.set(requestKey, request);\n try {\n await request;\n } finally {\n state.pending.delete(requestKey);\n }\n return true;\n}\n\n/**\n * A kit bundle failed to load (offline, a flaky CDN, a stale chunk hash).\n * Settle the waiters so no text stays blank, and leave the store\n * able to answer, in this order:\n *\n * 1. English, tried once, because it is the usual `fallbackLng`. Skipped when\n * English is the one that failed.\n * 2. Any kit language whose bundle is in the store, added to the end of the\n * instance's `fallbackLng` chain, so the text is readable though not in the\n * visitor's language.\n * 3. The kit's built-in minimum, when nothing is loaded at all: a missing\n * `ui` key reads as its last segment, written as words (\"common.saveAll\"\n * shows \"Save all\"), never as the raw key. The host's own\n * `parseMissingKeyHandler`, if it set one, is left alone.\n */\nasync function degrade(\n language: string,\n targets: string[],\n instance: I18nInstance,\n state: InstanceState,\n): Promise<void> {\n // A language nobody is showing or waiting for needs no fallback: the page\n // keeps what it has, and an Italian page never fetches English.\n const wanted =\n state.waiters.size > 0 ||\n state.requested.has(language) ||\n firstKitLanguage(instance.language, instance) === language;\n state.requested.delete(language);\n if (!wanted) {\n for (const target of targets) state.failed.add(target);\n return;\n }\n try {\n if (language !== 'en' && !usableLanguages(instance, state).includes('en'))\n await ensureLocale('en', instance).catch(() => false);\n const usable = usableLanguages(instance, state);\n if (usable.length > 0) addFallbackLanguage(instance, usable[0]);\n else installBuiltInMinimum(instance);\n } finally {\n // Only now is the failure \"settled\": until the fallback is in place the\n // components stay held back, so none draws a raw key in between.\n for (const target of targets) state.failed.add(target);\n settleWaiters(state);\n if (instance.isInitialized)\n instance.emit('languageChanged', instance.language);\n }\n}\n\n/** Kit languages with a bundle in the store, loaded or host-registered. */\nfunction usableLanguages(\n instance: I18nInstance,\n state: InstanceState,\n): string[] {\n return Object.keys(LOADERS).filter(\n (code) =>\n isBundleCurrent(code, instance, state) || isHostBundle(code, instance),\n );\n}\n\nfunction addFallbackLanguage(instance: I18nInstance, code: string): void {\n const current = instance.options.fallbackLng as unknown;\n const list = (value: unknown): string[] =>\n typeof value === 'string' ? [value] : Array.isArray(value) ? value : [];\n if (typeof current === 'function' || current === false) return;\n if (current && typeof current === 'object' && !Array.isArray(current)) {\n const map = current as Record<string, string[]>;\n if (!list(map.default).includes(code))\n map.default = [...list(map.default), code];\n return;\n }\n if (!list(current).includes(code))\n instance.options.fallbackLng = [...list(current), code];\n}\n\nfunction installBuiltInMinimum(instance: I18nInstance): void {\n if (instance.options.parseMissingKeyHandler) return;\n instance.options.parseMissingKeyHandler = (\n key: string,\n defaultValue?: string,\n options?: { ns?: string | readonly string[] },\n ): string => {\n if (defaultValue !== undefined) return defaultValue;\n if (!options?.ns || !usesUi(options.ns)) return key;\n const last = key.split(/[.:]/).at(-1) ?? key;\n const words = last\n .replace(/([a-z0-9])([A-Z])/g, '$1 $2')\n .replaceAll('_', ' ')\n .toLowerCase();\n return words.charAt(0).toUpperCase() + words.slice(1);\n };\n}\n\n/**\n * Await after host init(), before rendering. Also supports createInstance()\n * hosts: pass this same instance to I18nextProvider. Never reinitialises a host.\n */\nexport async function initialiseUiI18n(\n instance: I18nInstance = i18next,\n): Promise<void> {\n if (!instance.isInitialized) {\n throw new Error(\n 'Initialise the host i18next instance before setting up UI translations.',\n );\n }\n attachInstance(instance);\n await loadResolutionChain(instance.language, instance);\n}\n\n/** Load the requested bundle before changing language. */\nexport async function setLocale(\n code: string,\n instance: I18nInstance = i18next,\n): Promise<void> {\n attachInstance(instance);\n await instance.changeLanguage(code);\n}\n\n/** Load all 18 bundles on a singleton or provider instance. */\nexport async function loadAllLocales(\n instance: I18nInstance = i18next,\n): Promise<void> {\n await Promise.all(\n Object.keys(LOADERS).map((code) => loadLocale(code, instance)),\n );\n}\n\n// Bootstrap only a genuinely uninitialised singleton. A library must preserve\n// a consumer's default namespace, language, fallbacks and application resources.\nif (!i18next.isInitialized) {\n void i18next.use(initReactI18next).init({\n lng: 'en',\n fallbackLng: 'en',\n ns: ['ui'],\n defaultNS: 'ui',\n partialBundledLanguages: true,\n debug: IS_DEV,\n saveMissing: IS_DEV,\n missingKeyHandler: IS_DEV\n ? (lngs, ns, key) => {\n console.warn(\n `[i18n] Missing key \"${key}\" in namespace \"${ns}\" for locales [${lngs.join(', ')}].`,\n );\n }\n : undefined,\n interpolation: { escapeValue: false },\n // English arrives through the lazy loader below, like every other locale.\n resources: {},\n });\n}\nattachInstance(i18next);\n// One microtask later, so a host that calls setLocale() in the same script\n// (before it renders) has its language change in flight, and the default\n// English is not fetched for an Italian page.\nvoid Promise.resolve()\n .then(() =>\n i18next.isInitialized ? restoreActiveLanguage(i18next) : undefined,\n )\n .catch((error: unknown) => {\n if (IS_DEV)\n console.warn('[i18n] Could not load the initial UI locale.', error);\n });\n\nexport default i18next;\nexport { LOCALES_WITH_BUNDLES } from './supported-locales';\nexport { registerUiBundle } from './registerUiBundle';\n"],"names":["LOCALES_WITH_BUNDLES","registerUiBundle","locale","bundle","instance","i18next","IS_DEV","LOADERS","m","instances","resolveUiLanguage","code","base","attachInstance","existing","state","installReadiness","originalChangeLanguage","lng","callback","request","languageUtils","regionalResources","hostOwnsRegion","resolutionChain","namespace","selected","translate","loadResolutionChain","error","restoreActiveLanguage","settleWaiters","hasLoadedNamespace","ns","options","answer","usesUi","requestUi","args","result","blankWhilePending","loadNamespaces","whenUiReady","loadLanguages","lngs","wanted","firstKitLanguage","ui","ensureLocale","arg","key","isUiReady","first","bundleTargets","target","isBundleCurrent","isHostBundle","resource","resolve","waiter","language","loadLocale","targets","requestKey","pending","degrade","retried","wasAsked","usableLanguages","usable","addFallbackLanguage","current","list","value","map","installBuiltInMinimum","defaultValue","words","initialiseUiI18n","setLocale","loadAllLocales","initReactI18next"],"mappings":"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"}
@@ -2427,6 +2427,9 @@ export declare const arUi: {
2427
2427
  readonly stay: "ابقَ في هذه الصفحة";
2428
2428
  readonly stayed: "انتقل إلى منطقة المرضى عندما تكون مستعدًا للتأكيد.";
2429
2429
  };
2430
+ readonly slotsLoadError: "تعذّر تحميل الأوقات المتاحة. يُرجى المحاولة مرة أخرى.";
2431
+ readonly retrySlots: "حاول مرة أخرى";
2432
+ readonly emptySlotsDescription: "جرّب مقدم خدمة آخر أو تواصل مع العيادة.";
2430
2433
  };
2431
2434
  readonly patientSearch: {
2432
2435
  readonly regionLabel: "ابحث عن موعد";
@@ -1 +1 @@
1
- {"version":3,"file":"ar.d.ts","sourceRoot":"","sources":["../../../src/i18n/locales/ar.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA87LP,CAAC"}
1
+ {"version":3,"file":"ar.d.ts","sourceRoot":"","sources":["../../../src/i18n/locales/ar.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAo8LP,CAAC"}
@@ -2419,7 +2419,10 @@ const e = {
2419
2419
  goNow: "انتقل الآن",
2420
2420
  stay: "ابقَ في هذه الصفحة",
2421
2421
  stayed: "انتقل إلى منطقة المرضى عندما تكون مستعدًا للتأكيد."
2422
- }
2422
+ },
2423
+ slotsLoadError: "تعذّر تحميل الأوقات المتاحة. يُرجى المحاولة مرة أخرى.",
2424
+ retrySlots: "حاول مرة أخرى",
2425
+ emptySlotsDescription: "جرّب مقدم خدمة آخر أو تواصل مع العيادة."
2423
2426
  },
2424
2427
  patientSearch: {
2425
2428
  regionLabel: "ابحث عن موعد",