@semiont/cli 0.5.4 → 0.5.6

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 (207) hide show
  1. package/dist/cli.mjs +34053 -23196
  2. package/dist/dashboard/dashboard.css +1 -1
  3. package/dist/dashboard/dashboard.css.map +2 -2
  4. package/dist/dashboard/dashboard.js +1 -1
  5. package/dist/dashboard/dashboard.js.map +1 -1
  6. package/dist/frontend/dist/assets/{ArrowsRightLeftIcon-eQUXtsyS.js → ArrowsRightLeftIcon-C7eE1lVN.js} +2 -2
  7. package/dist/frontend/dist/assets/{ArrowsRightLeftIcon-eQUXtsyS.js.map → ArrowsRightLeftIcon-C7eE1lVN.js.map} +1 -1
  8. package/dist/frontend/dist/assets/{ChevronLeftIcon-QLs1eT1j.js → ChevronLeftIcon-BItMAxjy.js} +2 -2
  9. package/dist/frontend/dist/assets/{ChevronLeftIcon-QLs1eT1j.js.map → ChevronLeftIcon-BItMAxjy.js.map} +1 -1
  10. package/dist/frontend/dist/assets/{CommandLineIcon-BEeeWFhQ.js → CommandLineIcon-BxjxKXBi.js} +2 -2
  11. package/dist/frontend/dist/assets/{CommandLineIcon-BEeeWFhQ.js.map → CommandLineIcon-BxjxKXBi.js.map} +1 -1
  12. package/dist/frontend/dist/assets/CookiePreferences-D8IJVuy6.js +2 -0
  13. package/dist/frontend/dist/assets/CookiePreferences-D8IJVuy6.js.map +1 -0
  14. package/dist/frontend/dist/assets/KeyboardShortcutsContext-CK1G6PDA.js +2 -0
  15. package/dist/frontend/dist/assets/KeyboardShortcutsContext-CK1G6PDA.js.map +1 -0
  16. package/dist/frontend/dist/assets/PdfAnnotationCanvas.client-NIMALXNZ-DSgLF5FC.js +2 -0
  17. package/dist/frontend/dist/assets/PdfAnnotationCanvas.client-NIMALXNZ-DSgLF5FC.js.map +1 -0
  18. package/dist/frontend/dist/assets/ToolbarPanels-NRWKiMDt.js +2 -0
  19. package/dist/frontend/dist/assets/ToolbarPanels-NRWKiMDt.js.map +1 -0
  20. package/dist/frontend/dist/assets/{XMarkIcon-CddZGiiz.js → XMarkIcon-D1vU4NLc.js} +2 -2
  21. package/dist/frontend/dist/assets/{XMarkIcon-CddZGiiz.js.map → XMarkIcon-D1vU4NLc.js.map} +1 -1
  22. package/dist/frontend/dist/assets/{ar-U2EXWUMQ-Ds9Pt3_I.js → ar-U2EXWUMQ-DLzNfNaf.js} +1 -1
  23. package/dist/frontend/dist/assets/{ar-U2EXWUMQ-Ds9Pt3_I.js.map → ar-U2EXWUMQ-DLzNfNaf.js.map} +1 -1
  24. package/dist/frontend/dist/assets/{bn-DRJGV772-BUYrNEk8.js → bn-DRJGV772-DCr9yExq.js} +1 -1
  25. package/dist/frontend/dist/assets/{bn-DRJGV772-BUYrNEk8.js.map → bn-DRJGV772-DCr9yExq.js.map} +1 -1
  26. package/dist/frontend/dist/assets/client-BO0_JrNY.js +2 -0
  27. package/dist/frontend/dist/assets/{client-DvALJ3DL.js.map → client-BO0_JrNY.js.map} +1 -1
  28. package/dist/frontend/dist/assets/client-CAT3EReo.js +2 -0
  29. package/dist/frontend/dist/assets/{client-DxlEW_QJ.js.map → client-CAT3EReo.js.map} +1 -1
  30. package/dist/frontend/dist/assets/client-Dy6LkcEO.js +2 -0
  31. package/dist/frontend/dist/assets/client-Dy6LkcEO.js.map +1 -0
  32. package/dist/frontend/dist/assets/client-U9wADwaz.js +2 -0
  33. package/dist/frontend/dist/assets/client-U9wADwaz.js.map +1 -0
  34. package/dist/frontend/dist/assets/{cs-PTWDM23V-DfbMzFEw.js → cs-PTWDM23V-B-bd38Gd.js} +1 -1
  35. package/dist/frontend/dist/assets/{cs-PTWDM23V-DfbMzFEw.js.map → cs-PTWDM23V-B-bd38Gd.js.map} +1 -1
  36. package/dist/frontend/dist/assets/{da-KSNIKYSS-BMtq201F.js → da-KSNIKYSS-PYsa_WK_.js} +1 -1
  37. package/dist/frontend/dist/assets/{da-KSNIKYSS-BMtq201F.js.map → da-KSNIKYSS-PYsa_WK_.js.map} +1 -1
  38. package/dist/frontend/dist/assets/{de-F2XBEWFY-ChjoYEH0.js → de-F2XBEWFY-nteWWMw7.js} +1 -1
  39. package/dist/frontend/dist/assets/{de-F2XBEWFY-ChjoYEH0.js.map → de-F2XBEWFY-nteWWMw7.js.map} +1 -1
  40. package/dist/frontend/dist/assets/{el-DLD2GWAP-ClFunpNV.js → el-DLD2GWAP-BsnAib-u.js} +1 -1
  41. package/dist/frontend/dist/assets/{el-DLD2GWAP-ClFunpNV.js.map → el-DLD2GWAP-BsnAib-u.js.map} +1 -1
  42. package/dist/frontend/dist/assets/en-L45VK7BS-CYlxuSdI.js +1 -0
  43. package/dist/frontend/dist/assets/{es-WLPYWGB5-C53vYarX.js → es-WLPYWGB5-CJcYln9_.js} +1 -1
  44. package/dist/frontend/dist/assets/{es-WLPYWGB5-C53vYarX.js.map → es-WLPYWGB5-CJcYln9_.js.map} +1 -1
  45. package/dist/frontend/dist/assets/{fa-BAXHSDZG-DJia4XF_.js → fa-BAXHSDZG-CrevfoWS.js} +1 -1
  46. package/dist/frontend/dist/assets/{fa-BAXHSDZG-DJia4XF_.js.map → fa-BAXHSDZG-CrevfoWS.js.map} +1 -1
  47. package/dist/frontend/dist/assets/{fi-FCHSYVOT-D2etzjyC.js → fi-FCHSYVOT-CDPbzSNL.js} +1 -1
  48. package/dist/frontend/dist/assets/{fi-FCHSYVOT-D2etzjyC.js.map → fi-FCHSYVOT-CDPbzSNL.js.map} +1 -1
  49. package/dist/frontend/dist/assets/{fr-3UERBSL6-Bi8o9u26.js → fr-3UERBSL6-DQW-5XX3.js} +1 -1
  50. package/dist/frontend/dist/assets/{fr-3UERBSL6-Bi8o9u26.js.map → fr-3UERBSL6-DQW-5XX3.js.map} +1 -1
  51. package/dist/frontend/dist/assets/{he-F6F3FV2K-CwGkucCK.js → he-F6F3FV2K-Dx6fB_nt.js} +1 -1
  52. package/dist/frontend/dist/assets/{he-F6F3FV2K-CwGkucCK.js.map → he-F6F3FV2K-Dx6fB_nt.js.map} +1 -1
  53. package/dist/frontend/dist/assets/{hi-4BK6IK7Q-fsSpyO-Z.js → hi-4BK6IK7Q-DFKESnIA.js} +1 -1
  54. package/dist/frontend/dist/assets/{hi-4BK6IK7Q-fsSpyO-Z.js.map → hi-4BK6IK7Q-DFKESnIA.js.map} +1 -1
  55. package/dist/frontend/dist/assets/i18n-X0oNIUcF.js +2 -0
  56. package/dist/frontend/dist/assets/i18n-X0oNIUcF.js.map +1 -0
  57. package/dist/frontend/dist/assets/{id-7ECCWP3J-MhvUbYNG.js → id-7ECCWP3J-DW6nWlLy.js} +1 -1
  58. package/dist/frontend/dist/assets/{id-7ECCWP3J-MhvUbYNG.js.map → id-7ECCWP3J-DW6nWlLy.js.map} +1 -1
  59. package/dist/frontend/dist/assets/index-4ZdXX6QX.js +141 -0
  60. package/dist/frontend/dist/assets/index-4ZdXX6QX.js.map +1 -0
  61. package/dist/frontend/dist/assets/index-D8uACGGo.css +1 -0
  62. package/dist/frontend/dist/assets/{it-234Z6XK6-n-8MkFtz.js → it-234Z6XK6-Bk6UsHAr.js} +1 -1
  63. package/dist/frontend/dist/assets/{it-234Z6XK6-n-8MkFtz.js.map → it-234Z6XK6-Bk6UsHAr.js.map} +1 -1
  64. package/dist/frontend/dist/assets/{ja-PJWQI4OQ-CbrcVSYZ.js → ja-PJWQI4OQ-DriKTV93.js} +1 -1
  65. package/dist/frontend/dist/assets/{ja-PJWQI4OQ-CbrcVSYZ.js.map → ja-PJWQI4OQ-DriKTV93.js.map} +1 -1
  66. package/dist/frontend/dist/assets/{ko-APUEW2RS-CLubHAbf.js → ko-APUEW2RS-Dtb4rfsd.js} +1 -1
  67. package/dist/frontend/dist/assets/{ko-APUEW2RS-CLubHAbf.js.map → ko-APUEW2RS-Dtb4rfsd.js.map} +1 -1
  68. package/dist/frontend/dist/assets/layout-CULnxUJ3.js +2 -0
  69. package/dist/frontend/dist/assets/{layout-e6QyrD0Y.js.map → layout-CULnxUJ3.js.map} +1 -1
  70. package/dist/frontend/dist/assets/layout-CvFPeLpC.js +2 -0
  71. package/dist/frontend/dist/assets/layout-CvFPeLpC.js.map +1 -0
  72. package/dist/frontend/dist/assets/layout-Dc6P9OQi.js +2 -0
  73. package/dist/frontend/dist/assets/{layout-BhnmJA6O.js.map → layout-Dc6P9OQi.js.map} +1 -1
  74. package/dist/frontend/dist/assets/layout-jEsUSQuF.js +2 -0
  75. package/dist/frontend/dist/assets/layout-jEsUSQuF.js.map +1 -0
  76. package/dist/frontend/dist/assets/{ms-PJBZWZWD-Bu45eJYe.js → ms-PJBZWZWD-DO0k7uWp.js} +1 -1
  77. package/dist/frontend/dist/assets/{ms-PJBZWZWD-Bu45eJYe.js.map → ms-PJBZWZWD-DO0k7uWp.js.map} +1 -1
  78. package/dist/frontend/dist/assets/{nl-L4C3ZBCU-bLU3oN_N.js → nl-L4C3ZBCU-CJP-Eqv_.js} +1 -1
  79. package/dist/frontend/dist/assets/{nl-L4C3ZBCU-bLU3oN_N.js.map → nl-L4C3ZBCU-CJP-Eqv_.js.map} +1 -1
  80. package/dist/frontend/dist/assets/{no-QE5N5KNG-BCG75Nm1.js → no-QE5N5KNG-bwKXK3U3.js} +1 -1
  81. package/dist/frontend/dist/assets/{no-QE5N5KNG-BCG75Nm1.js.map → no-QE5N5KNG-bwKXK3U3.js.map} +1 -1
  82. package/dist/frontend/dist/assets/not-found-s74NFmqb.js +2 -0
  83. package/dist/frontend/dist/assets/not-found-s74NFmqb.js.map +1 -0
  84. package/dist/frontend/dist/assets/page-6nYrYD6e.js +2 -0
  85. package/dist/frontend/dist/assets/page-6nYrYD6e.js.map +1 -0
  86. package/dist/frontend/dist/assets/page-B7FPl-yZ.js +2 -0
  87. package/dist/frontend/dist/assets/{page-C5gTlI4M.js.map → page-B7FPl-yZ.js.map} +1 -1
  88. package/dist/frontend/dist/assets/page-BDMoqEKR.js +2 -0
  89. package/dist/frontend/dist/assets/page-BDMoqEKR.js.map +1 -0
  90. package/dist/frontend/dist/assets/page-BFFn9Is-.js +2 -0
  91. package/dist/frontend/dist/assets/page-BFFn9Is-.js.map +1 -0
  92. package/dist/frontend/dist/assets/page-BXLfU1Yt.js +2 -0
  93. package/dist/frontend/dist/assets/{page-D6oe9LkY.js.map → page-BXLfU1Yt.js.map} +1 -1
  94. package/dist/frontend/dist/assets/{page-A6_MoyUb2.js → page-BwSljb_b2.js} +2 -2
  95. package/dist/frontend/dist/assets/page-BwSljb_b2.js.map +1 -0
  96. package/dist/frontend/dist/assets/page-BxKo1QmK.js +2 -0
  97. package/dist/frontend/dist/assets/page-BxKo1QmK.js.map +1 -0
  98. package/dist/frontend/dist/assets/page-ByC3SzfF.js +2 -0
  99. package/dist/frontend/dist/assets/{page-CXhfUrZM.js.map → page-ByC3SzfF.js.map} +1 -1
  100. package/dist/frontend/dist/assets/{page-CXVPWK3i.js → page-CIqeAC82.js} +2 -2
  101. package/dist/frontend/dist/assets/page-CIqeAC82.js.map +1 -0
  102. package/dist/frontend/dist/assets/page-CQJ6mG0Q.js +2 -0
  103. package/dist/frontend/dist/assets/{page-DVCVvH_S.js.map → page-CQJ6mG0Q.js.map} +1 -1
  104. package/dist/frontend/dist/assets/page-CwwGdzWc.js +8 -0
  105. package/dist/frontend/dist/assets/page-CwwGdzWc.js.map +1 -0
  106. package/dist/frontend/dist/assets/page-D2bs8Qye.js +2 -0
  107. package/dist/frontend/dist/assets/{page-CkHE2rPM.js.map → page-D2bs8Qye.js.map} +1 -1
  108. package/dist/frontend/dist/assets/page-DEnKQojs.js +2 -0
  109. package/dist/frontend/dist/assets/{page-D1veR3Kp.js.map → page-DEnKQojs.js.map} +1 -1
  110. package/dist/frontend/dist/assets/page-DHe0RTHk.js +2 -0
  111. package/dist/frontend/dist/assets/{page-BrSlkHj9.js.map → page-DHe0RTHk.js.map} +1 -1
  112. package/dist/frontend/dist/assets/page-DIlYsvOT.js +2 -0
  113. package/dist/frontend/dist/assets/{page-BOhOKDMk.js.map → page-DIlYsvOT.js.map} +1 -1
  114. package/dist/frontend/dist/assets/page-DrOU7JkL.js +2 -0
  115. package/dist/frontend/dist/assets/{page-DbwiMF1N.js.map → page-DrOU7JkL.js.map} +1 -1
  116. package/dist/frontend/dist/assets/page-Vfo8w1RS.js +2 -0
  117. package/dist/frontend/dist/assets/{page-7cCGgkUd.js.map → page-Vfo8w1RS.js.map} +1 -1
  118. package/dist/frontend/dist/assets/page-dVggAE3y.js +2 -0
  119. package/dist/frontend/dist/assets/{page-8sXDEos5.js.map → page-dVggAE3y.js.map} +1 -1
  120. package/dist/frontend/dist/assets/{pl-5Q2D23PD-DgP2517z.js → pl-5Q2D23PD-zmHOkhlb.js} +1 -1
  121. package/dist/frontend/dist/assets/{pl-5Q2D23PD-DgP2517z.js.map → pl-5Q2D23PD-zmHOkhlb.js.map} +1 -1
  122. package/dist/frontend/dist/assets/{pt-AIGUOIOC-CN21pR38.js → pt-AIGUOIOC-q0F8hEMQ.js} +1 -1
  123. package/dist/frontend/dist/assets/{pt-AIGUOIOC-CN21pR38.js.map → pt-AIGUOIOC-q0F8hEMQ.js.map} +1 -1
  124. package/dist/frontend/dist/assets/{ro-T56CSHTY-mCdsn9QL.js → ro-T56CSHTY-B5UVxb8p.js} +1 -1
  125. package/dist/frontend/dist/assets/{ro-T56CSHTY-mCdsn9QL.js.map → ro-T56CSHTY-B5UVxb8p.js.map} +1 -1
  126. package/dist/frontend/dist/assets/{routing-DW1ehi64.js → routing-B8sg1WUP.js} +2 -2
  127. package/dist/frontend/dist/assets/{routing-DW1ehi64.js.map → routing-B8sg1WUP.js.map} +1 -1
  128. package/dist/frontend/dist/assets/routing-CfZBmnyE.js +2 -0
  129. package/dist/frontend/dist/assets/{routing-Bcj1FhkC.js.map → routing-CfZBmnyE.js.map} +1 -1
  130. package/dist/frontend/dist/assets/{sv-L4TJQ2UH-Cj1jmTXz.js → sv-L4TJQ2UH-BP84WWpf.js} +1 -1
  131. package/dist/frontend/dist/assets/{sv-L4TJQ2UH-Cj1jmTXz.js.map → sv-L4TJQ2UH-BP84WWpf.js.map} +1 -1
  132. package/dist/frontend/dist/assets/{th-6O7Y6O2Q-Db0HgJLY.js → th-6O7Y6O2Q-DkoryWDb.js} +1 -1
  133. package/dist/frontend/dist/assets/{th-6O7Y6O2Q-Db0HgJLY.js.map → th-6O7Y6O2Q-DkoryWDb.js.map} +1 -1
  134. package/dist/frontend/dist/assets/{tr-D4CQCSNO-B0u3f4nL.js → tr-D4CQCSNO-DT8ORhAV.js} +1 -1
  135. package/dist/frontend/dist/assets/{tr-D4CQCSNO-B0u3f4nL.js.map → tr-D4CQCSNO-DT8ORhAV.js.map} +1 -1
  136. package/dist/frontend/dist/assets/{uk-2HMQG6ND-Dx2FfvV4.js → uk-2HMQG6ND-ItxxukFO.js} +1 -1
  137. package/dist/frontend/dist/assets/{uk-2HMQG6ND-Dx2FfvV4.js.map → uk-2HMQG6ND-ItxxukFO.js.map} +1 -1
  138. package/dist/frontend/dist/assets/{vendor-0HjOURbh.js → vendor-Bd-5Ya9C.js} +5 -5
  139. package/dist/frontend/dist/assets/{vendor-0HjOURbh.js.map → vendor-Bd-5Ya9C.js.map} +1 -1
  140. package/dist/frontend/dist/assets/{vi-XVJ4RUEJ-CeoZ1h3m.js → vi-XVJ4RUEJ-D1cjj8yP.js} +1 -1
  141. package/dist/frontend/dist/assets/{vi-XVJ4RUEJ-CeoZ1h3m.js.map → vi-XVJ4RUEJ-D1cjj8yP.js.map} +1 -1
  142. package/dist/frontend/dist/assets/web-BxhHxuus.js +2 -0
  143. package/dist/frontend/dist/assets/web-BxhHxuus.js.map +1 -0
  144. package/dist/frontend/dist/assets/{zh-K2KDPGHK-BriluvPe.js → zh-K2KDPGHK-j1v7CkF4.js} +1 -1
  145. package/dist/frontend/dist/assets/{zh-K2KDPGHK-BriluvPe.js.map → zh-K2KDPGHK-j1v7CkF4.js.map} +1 -1
  146. package/dist/frontend/dist/index.html +5 -7
  147. package/dist/frontend/package.json +1 -1
  148. package/package.json +34 -33
  149. package/dist/frontend/dist/assets/CookiePreferences-CMgprW9V.js +0 -2
  150. package/dist/frontend/dist/assets/CookiePreferences-CMgprW9V.js.map +0 -1
  151. package/dist/frontend/dist/assets/KeyboardShortcutsContext-BRLeqQUj.js +0 -2
  152. package/dist/frontend/dist/assets/KeyboardShortcutsContext-BRLeqQUj.js.map +0 -1
  153. package/dist/frontend/dist/assets/PdfAnnotationCanvas.client-CN3C3S55-DsCya3j0.js +0 -2
  154. package/dist/frontend/dist/assets/PdfAnnotationCanvas.client-CN3C3S55-DsCya3j0.js.map +0 -1
  155. package/dist/frontend/dist/assets/ToolbarPanels-CRGQDX-L.js +0 -2
  156. package/dist/frontend/dist/assets/ToolbarPanels-CRGQDX-L.js.map +0 -1
  157. package/dist/frontend/dist/assets/chunk-GERSK2DY-D2Q8aVeK.js +0 -2
  158. package/dist/frontend/dist/assets/chunk-GERSK2DY-D2Q8aVeK.js.map +0 -1
  159. package/dist/frontend/dist/assets/chunk-K6BJDL2I-CcwOtHVB.js +0 -2
  160. package/dist/frontend/dist/assets/chunk-K6BJDL2I-CcwOtHVB.js.map +0 -1
  161. package/dist/frontend/dist/assets/client-DkMJxPA7.js +0 -2
  162. package/dist/frontend/dist/assets/client-DkMJxPA7.js.map +0 -1
  163. package/dist/frontend/dist/assets/client-DvALJ3DL.js +0 -2
  164. package/dist/frontend/dist/assets/client-DxlEW_QJ.js +0 -2
  165. package/dist/frontend/dist/assets/client-uEoQ8iJO.js +0 -2
  166. package/dist/frontend/dist/assets/client-uEoQ8iJO.js.map +0 -1
  167. package/dist/frontend/dist/assets/en-L45VK7BS-C9ArL-E1.js +0 -1
  168. package/dist/frontend/dist/assets/i18n-B53Yefbh.js +0 -2
  169. package/dist/frontend/dist/assets/i18n-B53Yefbh.js.map +0 -1
  170. package/dist/frontend/dist/assets/index-95t-6XJg.css +0 -1
  171. package/dist/frontend/dist/assets/index-DjtRDlfn.js +0 -141
  172. package/dist/frontend/dist/assets/index-DjtRDlfn.js.map +0 -1
  173. package/dist/frontend/dist/assets/layout-BhnmJA6O.js +0 -2
  174. package/dist/frontend/dist/assets/layout-DolG9tOf.js +0 -2
  175. package/dist/frontend/dist/assets/layout-DolG9tOf.js.map +0 -1
  176. package/dist/frontend/dist/assets/layout-e6QyrD0Y.js +0 -2
  177. package/dist/frontend/dist/assets/layout-xDEqzpvE.js +0 -2
  178. package/dist/frontend/dist/assets/layout-xDEqzpvE.js.map +0 -1
  179. package/dist/frontend/dist/assets/not-found-4iuCkpA7.js +0 -2
  180. package/dist/frontend/dist/assets/not-found-4iuCkpA7.js.map +0 -1
  181. package/dist/frontend/dist/assets/page-6YupxiP8.js +0 -8
  182. package/dist/frontend/dist/assets/page-6YupxiP8.js.map +0 -1
  183. package/dist/frontend/dist/assets/page-7cCGgkUd.js +0 -2
  184. package/dist/frontend/dist/assets/page-8sXDEos5.js +0 -2
  185. package/dist/frontend/dist/assets/page-A6_MoyUb2.js.map +0 -1
  186. package/dist/frontend/dist/assets/page-B9EYfbrY.js +0 -2
  187. package/dist/frontend/dist/assets/page-B9EYfbrY.js.map +0 -1
  188. package/dist/frontend/dist/assets/page-BOhOKDMk.js +0 -2
  189. package/dist/frontend/dist/assets/page-BioSV21A.js +0 -2
  190. package/dist/frontend/dist/assets/page-BioSV21A.js.map +0 -1
  191. package/dist/frontend/dist/assets/page-Bl8sZu8k.js +0 -2
  192. package/dist/frontend/dist/assets/page-Bl8sZu8k.js.map +0 -1
  193. package/dist/frontend/dist/assets/page-BrSlkHj9.js +0 -2
  194. package/dist/frontend/dist/assets/page-C5gTlI4M.js +0 -2
  195. package/dist/frontend/dist/assets/page-CXVPWK3i.js.map +0 -1
  196. package/dist/frontend/dist/assets/page-CXhfUrZM.js +0 -2
  197. package/dist/frontend/dist/assets/page-CkHE2rPM.js +0 -2
  198. package/dist/frontend/dist/assets/page-D0bYoQZI.js +0 -2
  199. package/dist/frontend/dist/assets/page-D0bYoQZI.js.map +0 -1
  200. package/dist/frontend/dist/assets/page-D1veR3Kp.js +0 -2
  201. package/dist/frontend/dist/assets/page-D6oe9LkY.js +0 -2
  202. package/dist/frontend/dist/assets/page-DVCVvH_S.js +0 -2
  203. package/dist/frontend/dist/assets/page-DbwiMF1N.js +0 -2
  204. package/dist/frontend/dist/assets/routing-Bcj1FhkC.js +0 -2
  205. package/dist/frontend/dist/assets/web-Dr6mdA1A.js +0 -2
  206. package/dist/frontend/dist/assets/web-Dr6mdA1A.js.map +0 -1
  207. /package/dist/frontend/dist/assets/{rolldown-runtime-jpDsebLB.js → rolldown-runtime-Bh1tDfsg.js} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"i18n-B53Yefbh.js","names":["isString","loadNamespaces","loadLanguages","hasLoadedNamespace","isString","hasLoadedNamespace"],"sources":["../../../../node_modules/react/cjs/react.production.js","../../../../node_modules/react/index.js","../../../../node_modules/react-i18next/dist/es/utils.js","../../../../node_modules/react-i18next/dist/es/unescape.js","../../../../node_modules/react-i18next/dist/es/defaults.js","../../../../node_modules/react-i18next/dist/es/i18nInstance.js","../../../../node_modules/react-i18next/dist/es/initReactI18next.js","../../../../node_modules/react-i18next/dist/es/context.js","../../../../node_modules/react-i18next/dist/es/useTranslation.js","../../../../node_modules/i18next/dist/esm/i18next.js"],"sourcesContent":["/**\n * @license React\n * react.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nfunction getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable) return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n}\nvar ReactNoopUpdateQueue = {\n isMounted: function () {\n return !1;\n },\n enqueueForceUpdate: function () {},\n enqueueReplaceState: function () {},\n enqueueSetState: function () {}\n },\n assign = Object.assign,\n emptyObject = {};\nfunction Component(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nComponent.prototype.isReactComponent = {};\nComponent.prototype.setState = function (partialState, callback) {\n if (\n \"object\" !== typeof partialState &&\n \"function\" !== typeof partialState &&\n null != partialState\n )\n throw Error(\n \"takes an object of state variables to update or a function which returns an object of state variables.\"\n );\n this.updater.enqueueSetState(this, partialState, callback, \"setState\");\n};\nComponent.prototype.forceUpdate = function (callback) {\n this.updater.enqueueForceUpdate(this, callback, \"forceUpdate\");\n};\nfunction ComponentDummy() {}\nComponentDummy.prototype = Component.prototype;\nfunction PureComponent(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nvar pureComponentPrototype = (PureComponent.prototype = new ComponentDummy());\npureComponentPrototype.constructor = PureComponent;\nassign(pureComponentPrototype, Component.prototype);\npureComponentPrototype.isPureReactComponent = !0;\nvar isArrayImpl = Array.isArray;\nfunction noop() {}\nvar ReactSharedInternals = { H: null, A: null, T: null, S: null },\n hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction ReactElement(type, key, props) {\n var refProp = props.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== refProp ? refProp : null,\n props: props\n };\n}\nfunction cloneAndReplaceKey(oldElement, newKey) {\n return ReactElement(oldElement.type, newKey, oldElement.props);\n}\nfunction isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n}\nfunction escape(key) {\n var escaperLookup = { \"=\": \"=0\", \":\": \"=2\" };\n return (\n \"$\" +\n key.replace(/[=:]/g, function (match) {\n return escaperLookup[match];\n })\n );\n}\nvar userProvidedKeyEscapeRegex = /\\/+/g;\nfunction getElementKey(element, index) {\n return \"object\" === typeof element && null !== element && null != element.key\n ? escape(\"\" + element.key)\n : index.toString(36);\n}\nfunction resolveThenable(thenable) {\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n default:\n switch (\n (\"string\" === typeof thenable.status\n ? thenable.then(noop, noop)\n : ((thenable.status = \"pending\"),\n thenable.then(\n function (fulfilledValue) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"fulfilled\"),\n (thenable.value = fulfilledValue));\n },\n function (error) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"rejected\"), (thenable.reason = error));\n }\n )),\n thenable.status)\n ) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n }\n }\n throw thenable;\n}\nfunction mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {\n var type = typeof children;\n if (\"undefined\" === type || \"boolean\" === type) children = null;\n var invokeCallback = !1;\n if (null === children) invokeCallback = !0;\n else\n switch (type) {\n case \"bigint\":\n case \"string\":\n case \"number\":\n invokeCallback = !0;\n break;\n case \"object\":\n switch (children.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n invokeCallback = !0;\n break;\n case REACT_LAZY_TYPE:\n return (\n (invokeCallback = children._init),\n mapIntoArray(\n invokeCallback(children._payload),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n )\n );\n }\n }\n if (invokeCallback)\n return (\n (callback = callback(children)),\n (invokeCallback =\n \"\" === nameSoFar ? \".\" + getElementKey(children, 0) : nameSoFar),\n isArrayImpl(callback)\n ? ((escapedPrefix = \"\"),\n null != invokeCallback &&\n (escapedPrefix =\n invokeCallback.replace(userProvidedKeyEscapeRegex, \"$&/\") + \"/\"),\n mapIntoArray(callback, array, escapedPrefix, \"\", function (c) {\n return c;\n }))\n : null != callback &&\n (isValidElement(callback) &&\n (callback = cloneAndReplaceKey(\n callback,\n escapedPrefix +\n (null == callback.key ||\n (children && children.key === callback.key)\n ? \"\"\n : (\"\" + callback.key).replace(\n userProvidedKeyEscapeRegex,\n \"$&/\"\n ) + \"/\") +\n invokeCallback\n )),\n array.push(callback)),\n 1\n );\n invokeCallback = 0;\n var nextNamePrefix = \"\" === nameSoFar ? \".\" : nameSoFar + \":\";\n if (isArrayImpl(children))\n for (var i = 0; i < children.length; i++)\n (nameSoFar = children[i]),\n (type = nextNamePrefix + getElementKey(nameSoFar, i)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (((i = getIteratorFn(children)), \"function\" === typeof i))\n for (\n children = i.call(children), i = 0;\n !(nameSoFar = children.next()).done;\n\n )\n (nameSoFar = nameSoFar.value),\n (type = nextNamePrefix + getElementKey(nameSoFar, i++)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (\"object\" === type) {\n if (\"function\" === typeof children.then)\n return mapIntoArray(\n resolveThenable(children),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n );\n array = String(children);\n throw Error(\n \"Objects are not valid as a React child (found: \" +\n (\"[object Object]\" === array\n ? \"object with keys {\" + Object.keys(children).join(\", \") + \"}\"\n : array) +\n \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n return invokeCallback;\n}\nfunction mapChildren(children, func, context) {\n if (null == children) return children;\n var result = [],\n count = 0;\n mapIntoArray(children, result, \"\", \"\", function (child) {\n return func.call(context, child, count++);\n });\n return result;\n}\nfunction lazyInitializer(payload) {\n if (-1 === payload._status) {\n var ctor = payload._result;\n ctor = ctor();\n ctor.then(\n function (moduleObject) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 1), (payload._result = moduleObject);\n },\n function (error) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 2), (payload._result = error);\n }\n );\n -1 === payload._status && ((payload._status = 0), (payload._result = ctor));\n }\n if (1 === payload._status) return payload._result.default;\n throw payload._result;\n}\nvar reportGlobalError =\n \"function\" === typeof reportError\n ? reportError\n : function (error) {\n if (\n \"object\" === typeof window &&\n \"function\" === typeof window.ErrorEvent\n ) {\n var event = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message:\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.message\n ? String(error.message)\n : String(error),\n error: error\n });\n if (!window.dispatchEvent(event)) return;\n } else if (\n \"object\" === typeof process &&\n \"function\" === typeof process.emit\n ) {\n process.emit(\"uncaughtException\", error);\n return;\n }\n console.error(error);\n },\n Children = {\n map: mapChildren,\n forEach: function (children, forEachFunc, forEachContext) {\n mapChildren(\n children,\n function () {\n forEachFunc.apply(this, arguments);\n },\n forEachContext\n );\n },\n count: function (children) {\n var n = 0;\n mapChildren(children, function () {\n n++;\n });\n return n;\n },\n toArray: function (children) {\n return (\n mapChildren(children, function (child) {\n return child;\n }) || []\n );\n },\n only: function (children) {\n if (!isValidElement(children))\n throw Error(\n \"React.Children.only expected to receive a single React element child.\"\n );\n return children;\n }\n };\nexports.Activity = REACT_ACTIVITY_TYPE;\nexports.Children = Children;\nexports.Component = Component;\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.Profiler = REACT_PROFILER_TYPE;\nexports.PureComponent = PureComponent;\nexports.StrictMode = REACT_STRICT_MODE_TYPE;\nexports.Suspense = REACT_SUSPENSE_TYPE;\nexports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =\n ReactSharedInternals;\nexports.__COMPILER_RUNTIME = {\n __proto__: null,\n c: function (size) {\n return ReactSharedInternals.H.useMemoCache(size);\n }\n};\nexports.cache = function (fn) {\n return function () {\n return fn.apply(null, arguments);\n };\n};\nexports.cacheSignal = function () {\n return null;\n};\nexports.cloneElement = function (element, config, children) {\n if (null === element || void 0 === element)\n throw Error(\n \"The argument must be a React element, but you passed \" + element + \".\"\n );\n var props = assign({}, element.props),\n key = element.key;\n if (null != config)\n for (propName in (void 0 !== config.key && (key = \"\" + config.key), config))\n !hasOwnProperty.call(config, propName) ||\n \"key\" === propName ||\n \"__self\" === propName ||\n \"__source\" === propName ||\n (\"ref\" === propName && void 0 === config.ref) ||\n (props[propName] = config[propName]);\n var propName = arguments.length - 2;\n if (1 === propName) props.children = children;\n else if (1 < propName) {\n for (var childArray = Array(propName), i = 0; i < propName; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n return ReactElement(element.type, key, props);\n};\nexports.createContext = function (defaultValue) {\n defaultValue = {\n $$typeof: REACT_CONTEXT_TYPE,\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n _threadCount: 0,\n Provider: null,\n Consumer: null\n };\n defaultValue.Provider = defaultValue;\n defaultValue.Consumer = {\n $$typeof: REACT_CONSUMER_TYPE,\n _context: defaultValue\n };\n return defaultValue;\n};\nexports.createElement = function (type, config, children) {\n var propName,\n props = {},\n key = null;\n if (null != config)\n for (propName in (void 0 !== config.key && (key = \"\" + config.key), config))\n hasOwnProperty.call(config, propName) &&\n \"key\" !== propName &&\n \"__self\" !== propName &&\n \"__source\" !== propName &&\n (props[propName] = config[propName]);\n var childrenLength = arguments.length - 2;\n if (1 === childrenLength) props.children = children;\n else if (1 < childrenLength) {\n for (var childArray = Array(childrenLength), i = 0; i < childrenLength; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n if (type && type.defaultProps)\n for (propName in ((childrenLength = type.defaultProps), childrenLength))\n void 0 === props[propName] &&\n (props[propName] = childrenLength[propName]);\n return ReactElement(type, key, props);\n};\nexports.createRef = function () {\n return { current: null };\n};\nexports.forwardRef = function (render) {\n return { $$typeof: REACT_FORWARD_REF_TYPE, render: render };\n};\nexports.isValidElement = isValidElement;\nexports.lazy = function (ctor) {\n return {\n $$typeof: REACT_LAZY_TYPE,\n _payload: { _status: -1, _result: ctor },\n _init: lazyInitializer\n };\n};\nexports.memo = function (type, compare) {\n return {\n $$typeof: REACT_MEMO_TYPE,\n type: type,\n compare: void 0 === compare ? null : compare\n };\n};\nexports.startTransition = function (scope) {\n var prevTransition = ReactSharedInternals.T,\n currentTransition = {};\n ReactSharedInternals.T = currentTransition;\n try {\n var returnValue = scope(),\n onStartTransitionFinish = ReactSharedInternals.S;\n null !== onStartTransitionFinish &&\n onStartTransitionFinish(currentTransition, returnValue);\n \"object\" === typeof returnValue &&\n null !== returnValue &&\n \"function\" === typeof returnValue.then &&\n returnValue.then(noop, reportGlobalError);\n } catch (error) {\n reportGlobalError(error);\n } finally {\n null !== prevTransition &&\n null !== currentTransition.types &&\n (prevTransition.types = currentTransition.types),\n (ReactSharedInternals.T = prevTransition);\n }\n};\nexports.unstable_useCacheRefresh = function () {\n return ReactSharedInternals.H.useCacheRefresh();\n};\nexports.use = function (usable) {\n return ReactSharedInternals.H.use(usable);\n};\nexports.useActionState = function (action, initialState, permalink) {\n return ReactSharedInternals.H.useActionState(action, initialState, permalink);\n};\nexports.useCallback = function (callback, deps) {\n return ReactSharedInternals.H.useCallback(callback, deps);\n};\nexports.useContext = function (Context) {\n return ReactSharedInternals.H.useContext(Context);\n};\nexports.useDebugValue = function () {};\nexports.useDeferredValue = function (value, initialValue) {\n return ReactSharedInternals.H.useDeferredValue(value, initialValue);\n};\nexports.useEffect = function (create, deps) {\n return ReactSharedInternals.H.useEffect(create, deps);\n};\nexports.useEffectEvent = function (callback) {\n return ReactSharedInternals.H.useEffectEvent(callback);\n};\nexports.useId = function () {\n return ReactSharedInternals.H.useId();\n};\nexports.useImperativeHandle = function (ref, create, deps) {\n return ReactSharedInternals.H.useImperativeHandle(ref, create, deps);\n};\nexports.useInsertionEffect = function (create, deps) {\n return ReactSharedInternals.H.useInsertionEffect(create, deps);\n};\nexports.useLayoutEffect = function (create, deps) {\n return ReactSharedInternals.H.useLayoutEffect(create, deps);\n};\nexports.useMemo = function (create, deps) {\n return ReactSharedInternals.H.useMemo(create, deps);\n};\nexports.useOptimistic = function (passthrough, reducer) {\n return ReactSharedInternals.H.useOptimistic(passthrough, reducer);\n};\nexports.useReducer = function (reducer, initialArg, init) {\n return ReactSharedInternals.H.useReducer(reducer, initialArg, init);\n};\nexports.useRef = function (initialValue) {\n return ReactSharedInternals.H.useRef(initialValue);\n};\nexports.useState = function (initialState) {\n return ReactSharedInternals.H.useState(initialState);\n};\nexports.useSyncExternalStore = function (\n subscribe,\n getSnapshot,\n getServerSnapshot\n) {\n return ReactSharedInternals.H.useSyncExternalStore(\n subscribe,\n getSnapshot,\n getServerSnapshot\n );\n};\nexports.useTransition = function () {\n return ReactSharedInternals.H.useTransition();\n};\nexports.version = \"19.2.4\";\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","export const warn = (i18n, code, msg, rest) => {\n const args = [msg, {\n code,\n ...(rest || {})\n }];\n if (i18n?.services?.logger?.forward) {\n return i18n.services.logger.forward(args, 'warn', 'react-i18next::', true);\n }\n if (isString(args[0])) args[0] = `react-i18next:: ${args[0]}`;\n if (i18n?.services?.logger?.warn) {\n i18n.services.logger.warn(...args);\n } else if (console?.warn) {\n console.warn(...args);\n }\n};\nconst alreadyWarned = {};\nexport const warnOnce = (i18n, code, msg, rest) => {\n if (isString(msg) && alreadyWarned[msg]) return;\n if (isString(msg)) alreadyWarned[msg] = new Date();\n warn(i18n, code, msg, rest);\n};\nconst loadedClb = (i18n, cb) => () => {\n if (i18n.isInitialized) {\n cb();\n } else {\n const initialized = () => {\n setTimeout(() => {\n i18n.off('initialized', initialized);\n }, 0);\n cb();\n };\n i18n.on('initialized', initialized);\n }\n};\nexport const loadNamespaces = (i18n, ns, cb) => {\n i18n.loadNamespaces(ns, loadedClb(i18n, cb));\n};\nexport const loadLanguages = (i18n, lng, ns, cb) => {\n if (isString(ns)) ns = [ns];\n if (i18n.options.preload && i18n.options.preload.indexOf(lng) > -1) return loadNamespaces(i18n, ns, cb);\n ns.forEach(n => {\n if (i18n.options.ns.indexOf(n) < 0) i18n.options.ns.push(n);\n });\n i18n.loadLanguages(lng, loadedClb(i18n, cb));\n};\nexport const hasLoadedNamespace = (ns, i18n, options = {}) => {\n if (!i18n.languages || !i18n.languages.length) {\n warnOnce(i18n, 'NO_LANGUAGES', 'i18n.languages were undefined or empty', {\n languages: i18n.languages\n });\n return true;\n }\n return i18n.hasLoadedNamespace(ns, {\n lng: options.lng,\n precheck: (i18nInstance, loadNotPending) => {\n if (options.bindI18n && options.bindI18n.indexOf('languageChanging') > -1 && i18nInstance.services.backendConnector.backend && i18nInstance.isLanguageChangingTo && !loadNotPending(i18nInstance.isLanguageChangingTo, ns)) return false;\n }\n });\n};\nexport const getDisplayName = Component => Component.displayName || Component.name || (isString(Component) && Component.length > 0 ? Component : 'Unknown');\nexport const isString = obj => typeof obj === 'string';\nexport const isObject = obj => typeof obj === 'object' && obj !== null;","const matchHtmlEntity = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g;\nconst htmlEntities = {\n '&amp;': '&',\n '&#38;': '&',\n '&lt;': '<',\n '&#60;': '<',\n '&gt;': '>',\n '&#62;': '>',\n '&apos;': \"'\",\n '&#39;': \"'\",\n '&quot;': '\"',\n '&#34;': '\"',\n '&nbsp;': ' ',\n '&#160;': ' ',\n '&copy;': '©',\n '&#169;': '©',\n '&reg;': '®',\n '&#174;': '®',\n '&hellip;': '…',\n '&#8230;': '…',\n '&#x2F;': '/',\n '&#47;': '/'\n};\nconst unescapeHtmlEntity = m => htmlEntities[m];\nexport const unescape = text => text.replace(matchHtmlEntity, unescapeHtmlEntity);","import { unescape } from './unescape.js';\nlet defaultOptions = {\n bindI18n: 'languageChanged',\n bindI18nStore: '',\n transEmptyNodeValue: '',\n transSupportBasicHtmlNodes: true,\n transWrapTextNodes: '',\n transKeepBasicHtmlNodesFor: ['br', 'strong', 'i', 'p'],\n useSuspense: true,\n unescape\n};\nexport const setDefaults = (options = {}) => {\n defaultOptions = {\n ...defaultOptions,\n ...options\n };\n};\nexport const getDefaults = () => defaultOptions;","let i18nInstance;\nexport const setI18n = instance => {\n i18nInstance = instance;\n};\nexport const getI18n = () => i18nInstance;","import { setDefaults } from './defaults.js';\nimport { setI18n } from './i18nInstance.js';\nexport const initReactI18next = {\n type: '3rdParty',\n init(instance) {\n setDefaults(instance.options.react);\n setI18n(instance);\n }\n};","import { createContext } from 'react';\nimport { getDefaults, setDefaults } from './defaults.js';\nimport { getI18n, setI18n } from './i18nInstance.js';\nimport { initReactI18next } from './initReactI18next.js';\nexport { getDefaults, setDefaults, getI18n, setI18n, initReactI18next };\nexport const I18nContext = createContext();\nexport class ReportNamespaces {\n constructor() {\n this.usedNamespaces = {};\n }\n addUsedNamespaces(namespaces) {\n namespaces.forEach(ns => {\n if (!this.usedNamespaces[ns]) this.usedNamespaces[ns] = true;\n });\n }\n getUsedNamespaces() {\n return Object.keys(this.usedNamespaces);\n }\n}\nexport const composeInitialProps = ForComponent => async ctx => {\n const componentsInitialProps = (await ForComponent.getInitialProps?.(ctx)) ?? {};\n const i18nInitialProps = getInitialProps();\n return {\n ...componentsInitialProps,\n ...i18nInitialProps\n };\n};\nexport const getInitialProps = () => {\n const i18n = getI18n();\n const namespaces = i18n.reportNamespaces?.getUsedNamespaces() ?? [];\n const ret = {};\n const initialI18nStore = {};\n i18n.languages.forEach(l => {\n initialI18nStore[l] = {};\n namespaces.forEach(ns => {\n initialI18nStore[l][ns] = i18n.getResourceBundle(l, ns) || {};\n });\n });\n ret.initialI18nStore = initialI18nStore;\n ret.initialLanguage = i18n.language;\n return ret;\n};","import { useState, useEffect, useContext, useRef, useCallback } from 'react';\nimport { getI18n, getDefaults, ReportNamespaces, I18nContext } from './context.js';\nimport { warnOnce, loadNamespaces, loadLanguages, hasLoadedNamespace, isString, isObject } from './utils.js';\nconst usePrevious = (value, ignore) => {\n const ref = useRef();\n useEffect(() => {\n ref.current = ignore ? ref.current : value;\n }, [value, ignore]);\n return ref.current;\n};\nconst alwaysNewT = (i18n, language, namespace, keyPrefix) => i18n.getFixedT(language, namespace, keyPrefix);\nconst useMemoizedT = (i18n, language, namespace, keyPrefix) => useCallback(alwaysNewT(i18n, language, namespace, keyPrefix), [i18n, language, namespace, keyPrefix]);\nexport const useTranslation = (ns, props = {}) => {\n const {\n i18n: i18nFromProps\n } = props;\n const {\n i18n: i18nFromContext,\n defaultNS: defaultNSFromContext\n } = useContext(I18nContext) || {};\n const i18n = i18nFromProps || i18nFromContext || getI18n();\n if (i18n && !i18n.reportNamespaces) i18n.reportNamespaces = new ReportNamespaces();\n if (!i18n) {\n warnOnce(i18n, 'NO_I18NEXT_INSTANCE', 'useTranslation: You will need to pass in an i18next instance by using initReactI18next');\n const notReadyT = (k, optsOrDefaultValue) => {\n if (isString(optsOrDefaultValue)) return optsOrDefaultValue;\n if (isObject(optsOrDefaultValue) && isString(optsOrDefaultValue.defaultValue)) return optsOrDefaultValue.defaultValue;\n return Array.isArray(k) ? k[k.length - 1] : k;\n };\n const retNotReady = [notReadyT, {}, false];\n retNotReady.t = notReadyT;\n retNotReady.i18n = {};\n retNotReady.ready = false;\n return retNotReady;\n }\n if (i18n.options.react?.wait) warnOnce(i18n, 'DEPRECATED_OPTION', 'useTranslation: It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.');\n const i18nOptions = {\n ...getDefaults(),\n ...i18n.options.react,\n ...props\n };\n const {\n useSuspense,\n keyPrefix\n } = i18nOptions;\n let namespaces = ns || defaultNSFromContext || i18n.options?.defaultNS;\n namespaces = isString(namespaces) ? [namespaces] : namespaces || ['translation'];\n i18n.reportNamespaces.addUsedNamespaces?.(namespaces);\n const ready = (i18n.isInitialized || i18n.initializedStoreOnce) && namespaces.every(n => hasLoadedNamespace(n, i18n, i18nOptions));\n const memoGetT = useMemoizedT(i18n, props.lng || null, i18nOptions.nsMode === 'fallback' ? namespaces : namespaces[0], keyPrefix);\n const getT = () => memoGetT;\n const getNewT = () => alwaysNewT(i18n, props.lng || null, i18nOptions.nsMode === 'fallback' ? namespaces : namespaces[0], keyPrefix);\n const [t, setT] = useState(getT);\n let joinedNS = namespaces.join();\n if (props.lng) joinedNS = `${props.lng}${joinedNS}`;\n const previousJoinedNS = usePrevious(joinedNS);\n const isMounted = useRef(true);\n useEffect(() => {\n const {\n bindI18n,\n bindI18nStore\n } = i18nOptions;\n isMounted.current = true;\n if (!ready && !useSuspense) {\n if (props.lng) {\n loadLanguages(i18n, props.lng, namespaces, () => {\n if (isMounted.current) setT(getNewT);\n });\n } else {\n loadNamespaces(i18n, namespaces, () => {\n if (isMounted.current) setT(getNewT);\n });\n }\n }\n if (ready && previousJoinedNS && previousJoinedNS !== joinedNS && isMounted.current) {\n setT(getNewT);\n }\n const boundReset = () => {\n if (isMounted.current) setT(getNewT);\n };\n if (bindI18n) i18n?.on(bindI18n, boundReset);\n if (bindI18nStore) i18n?.store.on(bindI18nStore, boundReset);\n return () => {\n isMounted.current = false;\n if (i18n && bindI18n) bindI18n?.split(' ').forEach(e => i18n.off(e, boundReset));\n if (bindI18nStore && i18n) bindI18nStore.split(' ').forEach(e => i18n.store.off(e, boundReset));\n };\n }, [i18n, joinedNS]);\n useEffect(() => {\n if (isMounted.current && ready) {\n setT(getT);\n }\n }, [i18n, keyPrefix, ready]);\n const ret = [t, i18n, ready];\n ret.t = t;\n ret.i18n = i18n;\n ret.ready = ready;\n if (ready) return ret;\n if (!ready && !useSuspense) return ret;\n throw new Promise(resolve => {\n if (props.lng) {\n loadLanguages(i18n, props.lng, namespaces, () => resolve());\n } else {\n loadNamespaces(i18n, namespaces, () => resolve());\n }\n });\n};","const isString = obj => typeof obj === 'string';\nconst defer = () => {\n let res;\n let rej;\n const promise = new Promise((resolve, reject) => {\n res = resolve;\n rej = reject;\n });\n promise.resolve = res;\n promise.reject = rej;\n return promise;\n};\nconst makeString = object => {\n if (object == null) return '';\n return '' + object;\n};\nconst copy = (a, s, t) => {\n a.forEach(m => {\n if (s[m]) t[m] = s[m];\n });\n};\nconst lastOfPathSeparatorRegExp = /###/g;\nconst cleanKey = key => key && key.indexOf('###') > -1 ? key.replace(lastOfPathSeparatorRegExp, '.') : key;\nconst canNotTraverseDeeper = object => !object || isString(object);\nconst getLastOfPath = (object, path, Empty) => {\n const stack = !isString(path) ? path : path.split('.');\n let stackIndex = 0;\n while (stackIndex < stack.length - 1) {\n if (canNotTraverseDeeper(object)) return {};\n const key = cleanKey(stack[stackIndex]);\n if (!object[key] && Empty) object[key] = new Empty();\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n object = object[key];\n } else {\n object = {};\n }\n ++stackIndex;\n }\n if (canNotTraverseDeeper(object)) return {};\n return {\n obj: object,\n k: cleanKey(stack[stackIndex])\n };\n};\nconst setPath = (object, path, newValue) => {\n const {\n obj,\n k\n } = getLastOfPath(object, path, Object);\n if (obj !== undefined || path.length === 1) {\n obj[k] = newValue;\n return;\n }\n let e = path[path.length - 1];\n let p = path.slice(0, path.length - 1);\n let last = getLastOfPath(object, p, Object);\n while (last.obj === undefined && p.length) {\n e = `${p[p.length - 1]}.${e}`;\n p = p.slice(0, p.length - 1);\n last = getLastOfPath(object, p, Object);\n if (last?.obj && typeof last.obj[`${last.k}.${e}`] !== 'undefined') {\n last.obj = undefined;\n }\n }\n last.obj[`${last.k}.${e}`] = newValue;\n};\nconst pushPath = (object, path, newValue, concat) => {\n const {\n obj,\n k\n } = getLastOfPath(object, path, Object);\n obj[k] = obj[k] || [];\n obj[k].push(newValue);\n};\nconst getPath = (object, path) => {\n const {\n obj,\n k\n } = getLastOfPath(object, path);\n if (!obj) return undefined;\n if (!Object.prototype.hasOwnProperty.call(obj, k)) return undefined;\n return obj[k];\n};\nconst getPathWithDefaults = (data, defaultData, key) => {\n const value = getPath(data, key);\n if (value !== undefined) {\n return value;\n }\n return getPath(defaultData, key);\n};\nconst deepExtend = (target, source, overwrite) => {\n for (const prop in source) {\n if (prop !== '__proto__' && prop !== 'constructor') {\n if (prop in target) {\n if (isString(target[prop]) || target[prop] instanceof String || isString(source[prop]) || source[prop] instanceof String) {\n if (overwrite) target[prop] = source[prop];\n } else {\n deepExtend(target[prop], source[prop], overwrite);\n }\n } else {\n target[prop] = source[prop];\n }\n }\n }\n return target;\n};\nconst regexEscape = str => str.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, '\\\\$&');\nvar _entityMap = {\n '&': '&amp;',\n '<': '&lt;',\n '>': '&gt;',\n '\"': '&quot;',\n \"'\": '&#39;',\n '/': '&#x2F;'\n};\nconst escape = data => {\n if (isString(data)) {\n return data.replace(/[&<>\"'\\/]/g, s => _entityMap[s]);\n }\n return data;\n};\nclass RegExpCache {\n constructor(capacity) {\n this.capacity = capacity;\n this.regExpMap = new Map();\n this.regExpQueue = [];\n }\n getRegExp(pattern) {\n const regExpFromCache = this.regExpMap.get(pattern);\n if (regExpFromCache !== undefined) {\n return regExpFromCache;\n }\n const regExpNew = new RegExp(pattern);\n if (this.regExpQueue.length === this.capacity) {\n this.regExpMap.delete(this.regExpQueue.shift());\n }\n this.regExpMap.set(pattern, regExpNew);\n this.regExpQueue.push(pattern);\n return regExpNew;\n }\n}\nconst chars = [' ', ',', '?', '!', ';'];\nconst looksLikeObjectPathRegExpCache = new RegExpCache(20);\nconst looksLikeObjectPath = (key, nsSeparator, keySeparator) => {\n nsSeparator = nsSeparator || '';\n keySeparator = keySeparator || '';\n const possibleChars = chars.filter(c => nsSeparator.indexOf(c) < 0 && keySeparator.indexOf(c) < 0);\n if (possibleChars.length === 0) return true;\n const r = looksLikeObjectPathRegExpCache.getRegExp(`(${possibleChars.map(c => c === '?' ? '\\\\?' : c).join('|')})`);\n let matched = !r.test(key);\n if (!matched) {\n const ki = key.indexOf(keySeparator);\n if (ki > 0 && !r.test(key.substring(0, ki))) {\n matched = true;\n }\n }\n return matched;\n};\nconst deepFind = function (obj, path) {\n let keySeparator = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '.';\n if (!obj) return undefined;\n if (obj[path]) {\n if (!Object.prototype.hasOwnProperty.call(obj, path)) return undefined;\n return obj[path];\n }\n const tokens = path.split(keySeparator);\n let current = obj;\n for (let i = 0; i < tokens.length;) {\n if (!current || typeof current !== 'object') {\n return undefined;\n }\n let next;\n let nextPath = '';\n for (let j = i; j < tokens.length; ++j) {\n if (j !== i) {\n nextPath += keySeparator;\n }\n nextPath += tokens[j];\n next = current[nextPath];\n if (next !== undefined) {\n if (['string', 'number', 'boolean'].indexOf(typeof next) > -1 && j < tokens.length - 1) {\n continue;\n }\n i += j - i + 1;\n break;\n }\n }\n current = next;\n }\n return current;\n};\nconst getCleanedCode = code => code?.replace('_', '-');\n\nconst consoleLogger = {\n type: 'logger',\n log(args) {\n this.output('log', args);\n },\n warn(args) {\n this.output('warn', args);\n },\n error(args) {\n this.output('error', args);\n },\n output(type, args) {\n console?.[type]?.apply?.(console, args);\n }\n};\nclass Logger {\n constructor(concreteLogger) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.init(concreteLogger, options);\n }\n init(concreteLogger) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.prefix = options.prefix || 'i18next:';\n this.logger = concreteLogger || consoleLogger;\n this.options = options;\n this.debug = options.debug;\n }\n log() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return this.forward(args, 'log', '', true);\n }\n warn() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n return this.forward(args, 'warn', '', true);\n }\n error() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n return this.forward(args, 'error', '');\n }\n deprecate() {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n return this.forward(args, 'warn', 'WARNING DEPRECATED: ', true);\n }\n forward(args, lvl, prefix, debugOnly) {\n if (debugOnly && !this.debug) return null;\n if (isString(args[0])) args[0] = `${prefix}${this.prefix} ${args[0]}`;\n return this.logger[lvl](args);\n }\n create(moduleName) {\n return new Logger(this.logger, {\n ...{\n prefix: `${this.prefix}:${moduleName}:`\n },\n ...this.options\n });\n }\n clone(options) {\n options = options || this.options;\n options.prefix = options.prefix || this.prefix;\n return new Logger(this.logger, options);\n }\n}\nvar baseLogger = new Logger();\n\nclass EventEmitter {\n constructor() {\n this.observers = {};\n }\n on(events, listener) {\n events.split(' ').forEach(event => {\n if (!this.observers[event]) this.observers[event] = new Map();\n const numListeners = this.observers[event].get(listener) || 0;\n this.observers[event].set(listener, numListeners + 1);\n });\n return this;\n }\n off(event, listener) {\n if (!this.observers[event]) return;\n if (!listener) {\n delete this.observers[event];\n return;\n }\n this.observers[event].delete(listener);\n }\n emit(event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n if (this.observers[event]) {\n const cloned = Array.from(this.observers[event].entries());\n cloned.forEach(_ref => {\n let [observer, numTimesAdded] = _ref;\n for (let i = 0; i < numTimesAdded; i++) {\n observer(...args);\n }\n });\n }\n if (this.observers['*']) {\n const cloned = Array.from(this.observers['*'].entries());\n cloned.forEach(_ref2 => {\n let [observer, numTimesAdded] = _ref2;\n for (let i = 0; i < numTimesAdded; i++) {\n observer.apply(observer, [event, ...args]);\n }\n });\n }\n }\n}\n\nclass ResourceStore extends EventEmitter {\n constructor(data) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n ns: ['translation'],\n defaultNS: 'translation'\n };\n super();\n this.data = data || {};\n this.options = options;\n if (this.options.keySeparator === undefined) {\n this.options.keySeparator = '.';\n }\n if (this.options.ignoreJSONStructure === undefined) {\n this.options.ignoreJSONStructure = true;\n }\n }\n addNamespaces(ns) {\n if (this.options.ns.indexOf(ns) < 0) {\n this.options.ns.push(ns);\n }\n }\n removeNamespaces(ns) {\n const index = this.options.ns.indexOf(ns);\n if (index > -1) {\n this.options.ns.splice(index, 1);\n }\n }\n getResource(lng, ns, key) {\n let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n const keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n const ignoreJSONStructure = options.ignoreJSONStructure !== undefined ? options.ignoreJSONStructure : this.options.ignoreJSONStructure;\n let path;\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n } else {\n path = [lng, ns];\n if (key) {\n if (Array.isArray(key)) {\n path.push(...key);\n } else if (isString(key) && keySeparator) {\n path.push(...key.split(keySeparator));\n } else {\n path.push(key);\n }\n }\n }\n const result = getPath(this.data, path);\n if (!result && !ns && !key && lng.indexOf('.') > -1) {\n lng = path[0];\n ns = path[1];\n key = path.slice(2).join('.');\n }\n if (result || !ignoreJSONStructure || !isString(key)) return result;\n return deepFind(this.data?.[lng]?.[ns], key, keySeparator);\n }\n addResource(lng, ns, key, value) {\n let options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {\n silent: false\n };\n const keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n let path = [lng, ns];\n if (key) path = path.concat(keySeparator ? key.split(keySeparator) : key);\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n value = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n setPath(this.data, path, value);\n if (!options.silent) this.emit('added', lng, ns, key, value);\n }\n addResources(lng, ns, resources) {\n let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {\n silent: false\n };\n for (const m in resources) {\n if (isString(resources[m]) || Array.isArray(resources[m])) this.addResource(lng, ns, m, resources[m], {\n silent: true\n });\n }\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n addResourceBundle(lng, ns, resources, deep, overwrite) {\n let options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {\n silent: false,\n skipCopy: false\n };\n let path = [lng, ns];\n if (lng.indexOf('.') > -1) {\n path = lng.split('.');\n deep = resources;\n resources = ns;\n ns = path[1];\n }\n this.addNamespaces(ns);\n let pack = getPath(this.data, path) || {};\n if (!options.skipCopy) resources = JSON.parse(JSON.stringify(resources));\n if (deep) {\n deepExtend(pack, resources, overwrite);\n } else {\n pack = {\n ...pack,\n ...resources\n };\n }\n setPath(this.data, path, pack);\n if (!options.silent) this.emit('added', lng, ns, resources);\n }\n removeResourceBundle(lng, ns) {\n if (this.hasResourceBundle(lng, ns)) {\n delete this.data[lng][ns];\n }\n this.removeNamespaces(ns);\n this.emit('removed', lng, ns);\n }\n hasResourceBundle(lng, ns) {\n return this.getResource(lng, ns) !== undefined;\n }\n getResourceBundle(lng, ns) {\n if (!ns) ns = this.options.defaultNS;\n return this.getResource(lng, ns);\n }\n getDataByLanguage(lng) {\n return this.data[lng];\n }\n hasLanguageSomeTranslations(lng) {\n const data = this.getDataByLanguage(lng);\n const n = data && Object.keys(data) || [];\n return !!n.find(v => data[v] && Object.keys(data[v]).length > 0);\n }\n toJSON() {\n return this.data;\n }\n}\n\nvar postProcessor = {\n processors: {},\n addPostProcessor(module) {\n this.processors[module.name] = module;\n },\n handle(processors, value, key, options, translator) {\n processors.forEach(processor => {\n value = this.processors[processor]?.process(value, key, options, translator) ?? value;\n });\n return value;\n }\n};\n\nconst checkedLoadedFor = {};\nconst shouldHandleAsObject = res => !isString(res) && typeof res !== 'boolean' && typeof res !== 'number';\nclass Translator extends EventEmitter {\n constructor(services) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n super();\n copy(['resourceStore', 'languageUtils', 'pluralResolver', 'interpolator', 'backendConnector', 'i18nFormat', 'utils'], services, this);\n this.options = options;\n if (this.options.keySeparator === undefined) {\n this.options.keySeparator = '.';\n }\n this.logger = baseLogger.create('translator');\n }\n changeLanguage(lng) {\n if (lng) this.language = lng;\n }\n exists(key) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n if (key == null) {\n return false;\n }\n const resolved = this.resolve(key, options);\n return resolved?.res !== undefined;\n }\n extractFromKey(key, options) {\n let nsSeparator = options.nsSeparator !== undefined ? options.nsSeparator : this.options.nsSeparator;\n if (nsSeparator === undefined) nsSeparator = ':';\n const keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n let namespaces = options.ns || this.options.defaultNS || [];\n const wouldCheckForNsInKey = nsSeparator && key.indexOf(nsSeparator) > -1;\n const seemsNaturalLanguage = !this.options.userDefinedKeySeparator && !options.keySeparator && !this.options.userDefinedNsSeparator && !options.nsSeparator && !looksLikeObjectPath(key, nsSeparator, keySeparator);\n if (wouldCheckForNsInKey && !seemsNaturalLanguage) {\n const m = key.match(this.interpolator.nestingRegexp);\n if (m && m.length > 0) {\n return {\n key,\n namespaces: isString(namespaces) ? [namespaces] : namespaces\n };\n }\n const parts = key.split(nsSeparator);\n if (nsSeparator !== keySeparator || nsSeparator === keySeparator && this.options.ns.indexOf(parts[0]) > -1) namespaces = parts.shift();\n key = parts.join(keySeparator);\n }\n return {\n key,\n namespaces: isString(namespaces) ? [namespaces] : namespaces\n };\n }\n translate(keys, options, lastKey) {\n if (typeof options !== 'object' && this.options.overloadTranslationOptionHandler) {\n options = this.options.overloadTranslationOptionHandler(arguments);\n }\n if (typeof options === 'object') options = {\n ...options\n };\n if (!options) options = {};\n if (keys == null) return '';\n if (!Array.isArray(keys)) keys = [String(keys)];\n const returnDetails = options.returnDetails !== undefined ? options.returnDetails : this.options.returnDetails;\n const keySeparator = options.keySeparator !== undefined ? options.keySeparator : this.options.keySeparator;\n const {\n key,\n namespaces\n } = this.extractFromKey(keys[keys.length - 1], options);\n const namespace = namespaces[namespaces.length - 1];\n const lng = options.lng || this.language;\n const appendNamespaceToCIMode = options.appendNamespaceToCIMode || this.options.appendNamespaceToCIMode;\n if (lng?.toLowerCase() === 'cimode') {\n if (appendNamespaceToCIMode) {\n const nsSeparator = options.nsSeparator || this.options.nsSeparator;\n if (returnDetails) {\n return {\n res: `${namespace}${nsSeparator}${key}`,\n usedKey: key,\n exactUsedKey: key,\n usedLng: lng,\n usedNS: namespace,\n usedParams: this.getUsedParamsDetails(options)\n };\n }\n return `${namespace}${nsSeparator}${key}`;\n }\n if (returnDetails) {\n return {\n res: key,\n usedKey: key,\n exactUsedKey: key,\n usedLng: lng,\n usedNS: namespace,\n usedParams: this.getUsedParamsDetails(options)\n };\n }\n return key;\n }\n const resolved = this.resolve(keys, options);\n let res = resolved?.res;\n const resUsedKey = resolved?.usedKey || key;\n const resExactUsedKey = resolved?.exactUsedKey || key;\n const noObject = ['[object Number]', '[object Function]', '[object RegExp]'];\n const joinArrays = options.joinArrays !== undefined ? options.joinArrays : this.options.joinArrays;\n const handleAsObjectInI18nFormat = !this.i18nFormat || this.i18nFormat.handleAsObject;\n const needsPluralHandling = options.count !== undefined && !isString(options.count);\n const hasDefaultValue = Translator.hasDefaultValue(options);\n const defaultValueSuffix = needsPluralHandling ? this.pluralResolver.getSuffix(lng, options.count, options) : '';\n const defaultValueSuffixOrdinalFallback = options.ordinal && needsPluralHandling ? this.pluralResolver.getSuffix(lng, options.count, {\n ordinal: false\n }) : '';\n const needsZeroSuffixLookup = needsPluralHandling && !options.ordinal && options.count === 0;\n const defaultValue = needsZeroSuffixLookup && options[`defaultValue${this.options.pluralSeparator}zero`] || options[`defaultValue${defaultValueSuffix}`] || options[`defaultValue${defaultValueSuffixOrdinalFallback}`] || options.defaultValue;\n let resForObjHndl = res;\n if (handleAsObjectInI18nFormat && !res && hasDefaultValue) {\n resForObjHndl = defaultValue;\n }\n const handleAsObject = shouldHandleAsObject(resForObjHndl);\n const resType = Object.prototype.toString.apply(resForObjHndl);\n if (handleAsObjectInI18nFormat && resForObjHndl && handleAsObject && noObject.indexOf(resType) < 0 && !(isString(joinArrays) && Array.isArray(resForObjHndl))) {\n if (!options.returnObjects && !this.options.returnObjects) {\n if (!this.options.returnedObjectHandler) {\n this.logger.warn('accessing an object - but returnObjects options is not enabled!');\n }\n const r = this.options.returnedObjectHandler ? this.options.returnedObjectHandler(resUsedKey, resForObjHndl, {\n ...options,\n ns: namespaces\n }) : `key '${key} (${this.language})' returned an object instead of string.`;\n if (returnDetails) {\n resolved.res = r;\n resolved.usedParams = this.getUsedParamsDetails(options);\n return resolved;\n }\n return r;\n }\n if (keySeparator) {\n const resTypeIsArray = Array.isArray(resForObjHndl);\n const copy = resTypeIsArray ? [] : {};\n const newKeyToUse = resTypeIsArray ? resExactUsedKey : resUsedKey;\n for (const m in resForObjHndl) {\n if (Object.prototype.hasOwnProperty.call(resForObjHndl, m)) {\n const deepKey = `${newKeyToUse}${keySeparator}${m}`;\n if (hasDefaultValue && !res) {\n copy[m] = this.translate(deepKey, {\n ...options,\n defaultValue: shouldHandleAsObject(defaultValue) ? defaultValue[m] : undefined,\n ...{\n joinArrays: false,\n ns: namespaces\n }\n });\n } else {\n copy[m] = this.translate(deepKey, {\n ...options,\n ...{\n joinArrays: false,\n ns: namespaces\n }\n });\n }\n if (copy[m] === deepKey) copy[m] = resForObjHndl[m];\n }\n }\n res = copy;\n }\n } else if (handleAsObjectInI18nFormat && isString(joinArrays) && Array.isArray(res)) {\n res = res.join(joinArrays);\n if (res) res = this.extendTranslation(res, keys, options, lastKey);\n } else {\n let usedDefault = false;\n let usedKey = false;\n if (!this.isValidLookup(res) && hasDefaultValue) {\n usedDefault = true;\n res = defaultValue;\n }\n if (!this.isValidLookup(res)) {\n usedKey = true;\n res = key;\n }\n const missingKeyNoValueFallbackToKey = options.missingKeyNoValueFallbackToKey || this.options.missingKeyNoValueFallbackToKey;\n const resForMissing = missingKeyNoValueFallbackToKey && usedKey ? undefined : res;\n const updateMissing = hasDefaultValue && defaultValue !== res && this.options.updateMissing;\n if (usedKey || usedDefault || updateMissing) {\n this.logger.log(updateMissing ? 'updateKey' : 'missingKey', lng, namespace, key, updateMissing ? defaultValue : res);\n if (keySeparator) {\n const fk = this.resolve(key, {\n ...options,\n keySeparator: false\n });\n if (fk && fk.res) this.logger.warn('Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.');\n }\n let lngs = [];\n const fallbackLngs = this.languageUtils.getFallbackCodes(this.options.fallbackLng, options.lng || this.language);\n if (this.options.saveMissingTo === 'fallback' && fallbackLngs && fallbackLngs[0]) {\n for (let i = 0; i < fallbackLngs.length; i++) {\n lngs.push(fallbackLngs[i]);\n }\n } else if (this.options.saveMissingTo === 'all') {\n lngs = this.languageUtils.toResolveHierarchy(options.lng || this.language);\n } else {\n lngs.push(options.lng || this.language);\n }\n const send = (l, k, specificDefaultValue) => {\n const defaultForMissing = hasDefaultValue && specificDefaultValue !== res ? specificDefaultValue : resForMissing;\n if (this.options.missingKeyHandler) {\n this.options.missingKeyHandler(l, namespace, k, defaultForMissing, updateMissing, options);\n } else if (this.backendConnector?.saveMissing) {\n this.backendConnector.saveMissing(l, namespace, k, defaultForMissing, updateMissing, options);\n }\n this.emit('missingKey', l, namespace, k, res);\n };\n if (this.options.saveMissing) {\n if (this.options.saveMissingPlurals && needsPluralHandling) {\n lngs.forEach(language => {\n const suffixes = this.pluralResolver.getSuffixes(language, options);\n if (needsZeroSuffixLookup && options[`defaultValue${this.options.pluralSeparator}zero`] && suffixes.indexOf(`${this.options.pluralSeparator}zero`) < 0) {\n suffixes.push(`${this.options.pluralSeparator}zero`);\n }\n suffixes.forEach(suffix => {\n send([language], key + suffix, options[`defaultValue${suffix}`] || defaultValue);\n });\n });\n } else {\n send(lngs, key, defaultValue);\n }\n }\n }\n res = this.extendTranslation(res, keys, options, resolved, lastKey);\n if (usedKey && res === key && this.options.appendNamespaceToMissingKey) res = `${namespace}:${key}`;\n if ((usedKey || usedDefault) && this.options.parseMissingKeyHandler) {\n res = this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey ? `${namespace}:${key}` : key, usedDefault ? res : undefined);\n }\n }\n if (returnDetails) {\n resolved.res = res;\n resolved.usedParams = this.getUsedParamsDetails(options);\n return resolved;\n }\n return res;\n }\n extendTranslation(res, key, options, resolved, lastKey) {\n var _this = this;\n if (this.i18nFormat?.parse) {\n res = this.i18nFormat.parse(res, {\n ...this.options.interpolation.defaultVariables,\n ...options\n }, options.lng || this.language || resolved.usedLng, resolved.usedNS, resolved.usedKey, {\n resolved\n });\n } else if (!options.skipInterpolation) {\n if (options.interpolation) this.interpolator.init({\n ...options,\n ...{\n interpolation: {\n ...this.options.interpolation,\n ...options.interpolation\n }\n }\n });\n const skipOnVariables = isString(res) && (options?.interpolation?.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables);\n let nestBef;\n if (skipOnVariables) {\n const nb = res.match(this.interpolator.nestingRegexp);\n nestBef = nb && nb.length;\n }\n let data = options.replace && !isString(options.replace) ? options.replace : options;\n if (this.options.interpolation.defaultVariables) data = {\n ...this.options.interpolation.defaultVariables,\n ...data\n };\n res = this.interpolator.interpolate(res, data, options.lng || this.language || resolved.usedLng, options);\n if (skipOnVariables) {\n const na = res.match(this.interpolator.nestingRegexp);\n const nestAft = na && na.length;\n if (nestBef < nestAft) options.nest = false;\n }\n if (!options.lng && resolved && resolved.res) options.lng = this.language || resolved.usedLng;\n if (options.nest !== false) res = this.interpolator.nest(res, function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (lastKey?.[0] === args[0] && !options.context) {\n _this.logger.warn(`It seems you are nesting recursively key: ${args[0]} in key: ${key[0]}`);\n return null;\n }\n return _this.translate(...args, key);\n }, options);\n if (options.interpolation) this.interpolator.reset();\n }\n const postProcess = options.postProcess || this.options.postProcess;\n const postProcessorNames = isString(postProcess) ? [postProcess] : postProcess;\n if (res != null && postProcessorNames?.length && options.applyPostProcessor !== false) {\n res = postProcessor.handle(postProcessorNames, res, key, this.options && this.options.postProcessPassResolved ? {\n i18nResolved: {\n ...resolved,\n usedParams: this.getUsedParamsDetails(options)\n },\n ...options\n } : options, this);\n }\n return res;\n }\n resolve(keys) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n let found;\n let usedKey;\n let exactUsedKey;\n let usedLng;\n let usedNS;\n if (isString(keys)) keys = [keys];\n keys.forEach(k => {\n if (this.isValidLookup(found)) return;\n const extracted = this.extractFromKey(k, options);\n const key = extracted.key;\n usedKey = key;\n let namespaces = extracted.namespaces;\n if (this.options.fallbackNS) namespaces = namespaces.concat(this.options.fallbackNS);\n const needsPluralHandling = options.count !== undefined && !isString(options.count);\n const needsZeroSuffixLookup = needsPluralHandling && !options.ordinal && options.count === 0;\n const needsContextHandling = options.context !== undefined && (isString(options.context) || typeof options.context === 'number') && options.context !== '';\n const codes = options.lngs ? options.lngs : this.languageUtils.toResolveHierarchy(options.lng || this.language, options.fallbackLng);\n namespaces.forEach(ns => {\n if (this.isValidLookup(found)) return;\n usedNS = ns;\n if (!checkedLoadedFor[`${codes[0]}-${ns}`] && this.utils?.hasLoadedNamespace && !this.utils?.hasLoadedNamespace(usedNS)) {\n checkedLoadedFor[`${codes[0]}-${ns}`] = true;\n this.logger.warn(`key \"${usedKey}\" for languages \"${codes.join(', ')}\" won't get resolved as namespace \"${usedNS}\" was not yet loaded`, 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n }\n codes.forEach(code => {\n if (this.isValidLookup(found)) return;\n usedLng = code;\n const finalKeys = [key];\n if (this.i18nFormat?.addLookupKeys) {\n this.i18nFormat.addLookupKeys(finalKeys, key, code, ns, options);\n } else {\n let pluralSuffix;\n if (needsPluralHandling) pluralSuffix = this.pluralResolver.getSuffix(code, options.count, options);\n const zeroSuffix = `${this.options.pluralSeparator}zero`;\n const ordinalPrefix = `${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;\n if (needsPluralHandling) {\n finalKeys.push(key + pluralSuffix);\n if (options.ordinal && pluralSuffix.indexOf(ordinalPrefix) === 0) {\n finalKeys.push(key + pluralSuffix.replace(ordinalPrefix, this.options.pluralSeparator));\n }\n if (needsZeroSuffixLookup) {\n finalKeys.push(key + zeroSuffix);\n }\n }\n if (needsContextHandling) {\n const contextKey = `${key}${this.options.contextSeparator}${options.context}`;\n finalKeys.push(contextKey);\n if (needsPluralHandling) {\n finalKeys.push(contextKey + pluralSuffix);\n if (options.ordinal && pluralSuffix.indexOf(ordinalPrefix) === 0) {\n finalKeys.push(contextKey + pluralSuffix.replace(ordinalPrefix, this.options.pluralSeparator));\n }\n if (needsZeroSuffixLookup) {\n finalKeys.push(contextKey + zeroSuffix);\n }\n }\n }\n }\n let possibleKey;\n while (possibleKey = finalKeys.pop()) {\n if (!this.isValidLookup(found)) {\n exactUsedKey = possibleKey;\n found = this.getResource(code, ns, possibleKey, options);\n }\n }\n });\n });\n });\n return {\n res: found,\n usedKey,\n exactUsedKey,\n usedLng,\n usedNS\n };\n }\n isValidLookup(res) {\n return res !== undefined && !(!this.options.returnNull && res === null) && !(!this.options.returnEmptyString && res === '');\n }\n getResource(code, ns, key) {\n let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n if (this.i18nFormat?.getResource) return this.i18nFormat.getResource(code, ns, key, options);\n return this.resourceStore.getResource(code, ns, key, options);\n }\n getUsedParamsDetails() {\n let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n const optionsKeys = ['defaultValue', 'ordinal', 'context', 'replace', 'lng', 'lngs', 'fallbackLng', 'ns', 'keySeparator', 'nsSeparator', 'returnObjects', 'returnDetails', 'joinArrays', 'postProcess', 'interpolation'];\n const useOptionsReplaceForData = options.replace && !isString(options.replace);\n let data = useOptionsReplaceForData ? options.replace : options;\n if (useOptionsReplaceForData && typeof options.count !== 'undefined') {\n data.count = options.count;\n }\n if (this.options.interpolation.defaultVariables) {\n data = {\n ...this.options.interpolation.defaultVariables,\n ...data\n };\n }\n if (!useOptionsReplaceForData) {\n data = {\n ...data\n };\n for (const key of optionsKeys) {\n delete data[key];\n }\n }\n return data;\n }\n static hasDefaultValue(options) {\n const prefix = 'defaultValue';\n for (const option in options) {\n if (Object.prototype.hasOwnProperty.call(options, option) && prefix === option.substring(0, prefix.length) && undefined !== options[option]) {\n return true;\n }\n }\n return false;\n }\n}\n\nclass LanguageUtil {\n constructor(options) {\n this.options = options;\n this.supportedLngs = this.options.supportedLngs || false;\n this.logger = baseLogger.create('languageUtils');\n }\n getScriptPartFromCode(code) {\n code = getCleanedCode(code);\n if (!code || code.indexOf('-') < 0) return null;\n const p = code.split('-');\n if (p.length === 2) return null;\n p.pop();\n if (p[p.length - 1].toLowerCase() === 'x') return null;\n return this.formatLanguageCode(p.join('-'));\n }\n getLanguagePartFromCode(code) {\n code = getCleanedCode(code);\n if (!code || code.indexOf('-') < 0) return code;\n const p = code.split('-');\n return this.formatLanguageCode(p[0]);\n }\n formatLanguageCode(code) {\n if (isString(code) && code.indexOf('-') > -1) {\n let formattedCode;\n try {\n formattedCode = Intl.getCanonicalLocales(code)[0];\n } catch (e) {}\n if (formattedCode && this.options.lowerCaseLng) {\n formattedCode = formattedCode.toLowerCase();\n }\n if (formattedCode) return formattedCode;\n if (this.options.lowerCaseLng) {\n return code.toLowerCase();\n }\n return code;\n }\n return this.options.cleanCode || this.options.lowerCaseLng ? code.toLowerCase() : code;\n }\n isSupportedCode(code) {\n if (this.options.load === 'languageOnly' || this.options.nonExplicitSupportedLngs) {\n code = this.getLanguagePartFromCode(code);\n }\n return !this.supportedLngs || !this.supportedLngs.length || this.supportedLngs.indexOf(code) > -1;\n }\n getBestMatchFromCodes(codes) {\n if (!codes) return null;\n let found;\n codes.forEach(code => {\n if (found) return;\n const cleanedLng = this.formatLanguageCode(code);\n if (!this.options.supportedLngs || this.isSupportedCode(cleanedLng)) found = cleanedLng;\n });\n if (!found && this.options.supportedLngs) {\n codes.forEach(code => {\n if (found) return;\n const lngOnly = this.getLanguagePartFromCode(code);\n if (this.isSupportedCode(lngOnly)) return found = lngOnly;\n found = this.options.supportedLngs.find(supportedLng => {\n if (supportedLng === lngOnly) return supportedLng;\n if (supportedLng.indexOf('-') < 0 && lngOnly.indexOf('-') < 0) return;\n if (supportedLng.indexOf('-') > 0 && lngOnly.indexOf('-') < 0 && supportedLng.substring(0, supportedLng.indexOf('-')) === lngOnly) return supportedLng;\n if (supportedLng.indexOf(lngOnly) === 0 && lngOnly.length > 1) return supportedLng;\n });\n });\n }\n if (!found) found = this.getFallbackCodes(this.options.fallbackLng)[0];\n return found;\n }\n getFallbackCodes(fallbacks, code) {\n if (!fallbacks) return [];\n if (typeof fallbacks === 'function') fallbacks = fallbacks(code);\n if (isString(fallbacks)) fallbacks = [fallbacks];\n if (Array.isArray(fallbacks)) return fallbacks;\n if (!code) return fallbacks.default || [];\n let found = fallbacks[code];\n if (!found) found = fallbacks[this.getScriptPartFromCode(code)];\n if (!found) found = fallbacks[this.formatLanguageCode(code)];\n if (!found) found = fallbacks[this.getLanguagePartFromCode(code)];\n if (!found) found = fallbacks.default;\n return found || [];\n }\n toResolveHierarchy(code, fallbackCode) {\n const fallbackCodes = this.getFallbackCodes(fallbackCode || this.options.fallbackLng || [], code);\n const codes = [];\n const addCode = c => {\n if (!c) return;\n if (this.isSupportedCode(c)) {\n codes.push(c);\n } else {\n this.logger.warn(`rejecting language code not found in supportedLngs: ${c}`);\n }\n };\n if (isString(code) && (code.indexOf('-') > -1 || code.indexOf('_') > -1)) {\n if (this.options.load !== 'languageOnly') addCode(this.formatLanguageCode(code));\n if (this.options.load !== 'languageOnly' && this.options.load !== 'currentOnly') addCode(this.getScriptPartFromCode(code));\n if (this.options.load !== 'currentOnly') addCode(this.getLanguagePartFromCode(code));\n } else if (isString(code)) {\n addCode(this.formatLanguageCode(code));\n }\n fallbackCodes.forEach(fc => {\n if (codes.indexOf(fc) < 0) addCode(this.formatLanguageCode(fc));\n });\n return codes;\n }\n}\n\nconst suffixesOrder = {\n zero: 0,\n one: 1,\n two: 2,\n few: 3,\n many: 4,\n other: 5\n};\nconst dummyRule = {\n select: count => count === 1 ? 'one' : 'other',\n resolvedOptions: () => ({\n pluralCategories: ['one', 'other']\n })\n};\nclass PluralResolver {\n constructor(languageUtils) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.languageUtils = languageUtils;\n this.options = options;\n this.logger = baseLogger.create('pluralResolver');\n this.pluralRulesCache = {};\n }\n addRule(lng, obj) {\n this.rules[lng] = obj;\n }\n clearCache() {\n this.pluralRulesCache = {};\n }\n getRule(code) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const cleanedCode = getCleanedCode(code === 'dev' ? 'en' : code);\n const type = options.ordinal ? 'ordinal' : 'cardinal';\n const cacheKey = JSON.stringify({\n cleanedCode,\n type\n });\n if (cacheKey in this.pluralRulesCache) {\n return this.pluralRulesCache[cacheKey];\n }\n let rule;\n try {\n rule = new Intl.PluralRules(cleanedCode, {\n type\n });\n } catch (err) {\n if (!Intl) {\n this.logger.error('No Intl support, please use an Intl polyfill!');\n return dummyRule;\n }\n if (!code.match(/-|_/)) return dummyRule;\n const lngPart = this.languageUtils.getLanguagePartFromCode(code);\n rule = this.getRule(lngPart, options);\n }\n this.pluralRulesCache[cacheKey] = rule;\n return rule;\n }\n needsPlural(code) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n let rule = this.getRule(code, options);\n if (!rule) rule = this.getRule('dev', options);\n return rule?.resolvedOptions().pluralCategories.length > 1;\n }\n getPluralFormsOfKey(code, key) {\n let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return this.getSuffixes(code, options).map(suffix => `${key}${suffix}`);\n }\n getSuffixes(code) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n let rule = this.getRule(code, options);\n if (!rule) rule = this.getRule('dev', options);\n if (!rule) return [];\n return rule.resolvedOptions().pluralCategories.sort((pluralCategory1, pluralCategory2) => suffixesOrder[pluralCategory1] - suffixesOrder[pluralCategory2]).map(pluralCategory => `${this.options.prepend}${options.ordinal ? `ordinal${this.options.prepend}` : ''}${pluralCategory}`);\n }\n getSuffix(code, count) {\n let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n const rule = this.getRule(code, options);\n if (rule) {\n return `${this.options.prepend}${options.ordinal ? `ordinal${this.options.prepend}` : ''}${rule.select(count)}`;\n }\n this.logger.warn(`no plural rule found for: ${code}`);\n return this.getSuffix('dev', count, options);\n }\n}\n\nconst deepFindWithDefaults = function (data, defaultData, key) {\n let keySeparator = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '.';\n let ignoreJSONStructure = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;\n let path = getPathWithDefaults(data, defaultData, key);\n if (!path && ignoreJSONStructure && isString(key)) {\n path = deepFind(data, key, keySeparator);\n if (path === undefined) path = deepFind(defaultData, key, keySeparator);\n }\n return path;\n};\nconst regexSafe = val => val.replace(/\\$/g, '$$$$');\nclass Interpolator {\n constructor() {\n let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n this.logger = baseLogger.create('interpolator');\n this.options = options;\n this.format = options?.interpolation?.format || (value => value);\n this.init(options);\n }\n init() {\n let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (!options.interpolation) options.interpolation = {\n escapeValue: true\n };\n const {\n escape: escape$1,\n escapeValue,\n useRawValueToEscape,\n prefix,\n prefixEscaped,\n suffix,\n suffixEscaped,\n formatSeparator,\n unescapeSuffix,\n unescapePrefix,\n nestingPrefix,\n nestingPrefixEscaped,\n nestingSuffix,\n nestingSuffixEscaped,\n nestingOptionsSeparator,\n maxReplaces,\n alwaysFormat\n } = options.interpolation;\n this.escape = escape$1 !== undefined ? escape$1 : escape;\n this.escapeValue = escapeValue !== undefined ? escapeValue : true;\n this.useRawValueToEscape = useRawValueToEscape !== undefined ? useRawValueToEscape : false;\n this.prefix = prefix ? regexEscape(prefix) : prefixEscaped || '{{';\n this.suffix = suffix ? regexEscape(suffix) : suffixEscaped || '}}';\n this.formatSeparator = formatSeparator || ',';\n this.unescapePrefix = unescapeSuffix ? '' : unescapePrefix || '-';\n this.unescapeSuffix = this.unescapePrefix ? '' : unescapeSuffix || '';\n this.nestingPrefix = nestingPrefix ? regexEscape(nestingPrefix) : nestingPrefixEscaped || regexEscape('$t(');\n this.nestingSuffix = nestingSuffix ? regexEscape(nestingSuffix) : nestingSuffixEscaped || regexEscape(')');\n this.nestingOptionsSeparator = nestingOptionsSeparator || ',';\n this.maxReplaces = maxReplaces || 1000;\n this.alwaysFormat = alwaysFormat !== undefined ? alwaysFormat : false;\n this.resetRegExp();\n }\n reset() {\n if (this.options) this.init(this.options);\n }\n resetRegExp() {\n const getOrResetRegExp = (existingRegExp, pattern) => {\n if (existingRegExp?.source === pattern) {\n existingRegExp.lastIndex = 0;\n return existingRegExp;\n }\n return new RegExp(pattern, 'g');\n };\n this.regexp = getOrResetRegExp(this.regexp, `${this.prefix}(.+?)${this.suffix}`);\n this.regexpUnescape = getOrResetRegExp(this.regexpUnescape, `${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`);\n this.nestingRegexp = getOrResetRegExp(this.nestingRegexp, `${this.nestingPrefix}(.+?)${this.nestingSuffix}`);\n }\n interpolate(str, data, lng, options) {\n let match;\n let value;\n let replaces;\n const defaultData = this.options && this.options.interpolation && this.options.interpolation.defaultVariables || {};\n const handleFormat = key => {\n if (key.indexOf(this.formatSeparator) < 0) {\n const path = deepFindWithDefaults(data, defaultData, key, this.options.keySeparator, this.options.ignoreJSONStructure);\n return this.alwaysFormat ? this.format(path, undefined, lng, {\n ...options,\n ...data,\n interpolationkey: key\n }) : path;\n }\n const p = key.split(this.formatSeparator);\n const k = p.shift().trim();\n const f = p.join(this.formatSeparator).trim();\n return this.format(deepFindWithDefaults(data, defaultData, k, this.options.keySeparator, this.options.ignoreJSONStructure), f, lng, {\n ...options,\n ...data,\n interpolationkey: k\n });\n };\n this.resetRegExp();\n const missingInterpolationHandler = options?.missingInterpolationHandler || this.options.missingInterpolationHandler;\n const skipOnVariables = options?.interpolation?.skipOnVariables !== undefined ? options.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables;\n const todos = [{\n regex: this.regexpUnescape,\n safeValue: val => regexSafe(val)\n }, {\n regex: this.regexp,\n safeValue: val => this.escapeValue ? regexSafe(this.escape(val)) : regexSafe(val)\n }];\n todos.forEach(todo => {\n replaces = 0;\n while (match = todo.regex.exec(str)) {\n const matchedVar = match[1].trim();\n value = handleFormat(matchedVar);\n if (value === undefined) {\n if (typeof missingInterpolationHandler === 'function') {\n const temp = missingInterpolationHandler(str, match, options);\n value = isString(temp) ? temp : '';\n } else if (options && Object.prototype.hasOwnProperty.call(options, matchedVar)) {\n value = '';\n } else if (skipOnVariables) {\n value = match[0];\n continue;\n } else {\n this.logger.warn(`missed to pass in variable ${matchedVar} for interpolating ${str}`);\n value = '';\n }\n } else if (!isString(value) && !this.useRawValueToEscape) {\n value = makeString(value);\n }\n const safeValue = todo.safeValue(value);\n str = str.replace(match[0], safeValue);\n if (skipOnVariables) {\n todo.regex.lastIndex += value.length;\n todo.regex.lastIndex -= match[0].length;\n } else {\n todo.regex.lastIndex = 0;\n }\n replaces++;\n if (replaces >= this.maxReplaces) {\n break;\n }\n }\n });\n return str;\n }\n nest(str, fc) {\n let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n let match;\n let value;\n let clonedOptions;\n const handleHasOptions = (key, inheritedOptions) => {\n const sep = this.nestingOptionsSeparator;\n if (key.indexOf(sep) < 0) return key;\n const c = key.split(new RegExp(`${sep}[ ]*{`));\n let optionsString = `{${c[1]}`;\n key = c[0];\n optionsString = this.interpolate(optionsString, clonedOptions);\n const matchedSingleQuotes = optionsString.match(/'/g);\n const matchedDoubleQuotes = optionsString.match(/\"/g);\n if ((matchedSingleQuotes?.length ?? 0) % 2 === 0 && !matchedDoubleQuotes || matchedDoubleQuotes.length % 2 !== 0) {\n optionsString = optionsString.replace(/'/g, '\"');\n }\n try {\n clonedOptions = JSON.parse(optionsString);\n if (inheritedOptions) clonedOptions = {\n ...inheritedOptions,\n ...clonedOptions\n };\n } catch (e) {\n this.logger.warn(`failed parsing options string in nesting for key ${key}`, e);\n return `${key}${sep}${optionsString}`;\n }\n if (clonedOptions.defaultValue && clonedOptions.defaultValue.indexOf(this.prefix) > -1) delete clonedOptions.defaultValue;\n return key;\n };\n while (match = this.nestingRegexp.exec(str)) {\n let formatters = [];\n clonedOptions = {\n ...options\n };\n clonedOptions = clonedOptions.replace && !isString(clonedOptions.replace) ? clonedOptions.replace : clonedOptions;\n clonedOptions.applyPostProcessor = false;\n delete clonedOptions.defaultValue;\n let doReduce = false;\n if (match[0].indexOf(this.formatSeparator) !== -1 && !/{.*}/.test(match[1])) {\n const r = match[1].split(this.formatSeparator).map(elem => elem.trim());\n match[1] = r.shift();\n formatters = r;\n doReduce = true;\n }\n value = fc(handleHasOptions.call(this, match[1].trim(), clonedOptions), clonedOptions);\n if (value && match[0] === str && !isString(value)) return value;\n if (!isString(value)) value = makeString(value);\n if (!value) {\n this.logger.warn(`missed to resolve ${match[1]} for nesting ${str}`);\n value = '';\n }\n if (doReduce) {\n value = formatters.reduce((v, f) => this.format(v, f, options.lng, {\n ...options,\n interpolationkey: match[1].trim()\n }), value.trim());\n }\n str = str.replace(match[0], value);\n this.regexp.lastIndex = 0;\n }\n return str;\n }\n}\n\nconst parseFormatStr = formatStr => {\n let formatName = formatStr.toLowerCase().trim();\n const formatOptions = {};\n if (formatStr.indexOf('(') > -1) {\n const p = formatStr.split('(');\n formatName = p[0].toLowerCase().trim();\n const optStr = p[1].substring(0, p[1].length - 1);\n if (formatName === 'currency' && optStr.indexOf(':') < 0) {\n if (!formatOptions.currency) formatOptions.currency = optStr.trim();\n } else if (formatName === 'relativetime' && optStr.indexOf(':') < 0) {\n if (!formatOptions.range) formatOptions.range = optStr.trim();\n } else {\n const opts = optStr.split(';');\n opts.forEach(opt => {\n if (opt) {\n const [key, ...rest] = opt.split(':');\n const val = rest.join(':').trim().replace(/^'+|'+$/g, '');\n const trimmedKey = key.trim();\n if (!formatOptions[trimmedKey]) formatOptions[trimmedKey] = val;\n if (val === 'false') formatOptions[trimmedKey] = false;\n if (val === 'true') formatOptions[trimmedKey] = true;\n if (!isNaN(val)) formatOptions[trimmedKey] = parseInt(val, 10);\n }\n });\n }\n }\n return {\n formatName,\n formatOptions\n };\n};\nconst createCachedFormatter = fn => {\n const cache = {};\n return (val, lng, options) => {\n let optForCache = options;\n if (options && options.interpolationkey && options.formatParams && options.formatParams[options.interpolationkey] && options[options.interpolationkey]) {\n optForCache = {\n ...optForCache,\n [options.interpolationkey]: undefined\n };\n }\n const key = lng + JSON.stringify(optForCache);\n let formatter = cache[key];\n if (!formatter) {\n formatter = fn(getCleanedCode(lng), options);\n cache[key] = formatter;\n }\n return formatter(val);\n };\n};\nclass Formatter {\n constructor() {\n let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n this.logger = baseLogger.create('formatter');\n this.options = options;\n this.formats = {\n number: createCachedFormatter((lng, opt) => {\n const formatter = new Intl.NumberFormat(lng, {\n ...opt\n });\n return val => formatter.format(val);\n }),\n currency: createCachedFormatter((lng, opt) => {\n const formatter = new Intl.NumberFormat(lng, {\n ...opt,\n style: 'currency'\n });\n return val => formatter.format(val);\n }),\n datetime: createCachedFormatter((lng, opt) => {\n const formatter = new Intl.DateTimeFormat(lng, {\n ...opt\n });\n return val => formatter.format(val);\n }),\n relativetime: createCachedFormatter((lng, opt) => {\n const formatter = new Intl.RelativeTimeFormat(lng, {\n ...opt\n });\n return val => formatter.format(val, opt.range || 'day');\n }),\n list: createCachedFormatter((lng, opt) => {\n const formatter = new Intl.ListFormat(lng, {\n ...opt\n });\n return val => formatter.format(val);\n })\n };\n this.init(options);\n }\n init(services) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n interpolation: {}\n };\n this.formatSeparator = options.interpolation.formatSeparator || ',';\n }\n add(name, fc) {\n this.formats[name.toLowerCase().trim()] = fc;\n }\n addCached(name, fc) {\n this.formats[name.toLowerCase().trim()] = createCachedFormatter(fc);\n }\n format(value, format, lng) {\n let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n const formats = format.split(this.formatSeparator);\n if (formats.length > 1 && formats[0].indexOf('(') > 1 && formats[0].indexOf(')') < 0 && formats.find(f => f.indexOf(')') > -1)) {\n const lastIndex = formats.findIndex(f => f.indexOf(')') > -1);\n formats[0] = [formats[0], ...formats.splice(1, lastIndex)].join(this.formatSeparator);\n }\n const result = formats.reduce((mem, f) => {\n const {\n formatName,\n formatOptions\n } = parseFormatStr(f);\n if (this.formats[formatName]) {\n let formatted = mem;\n try {\n const valOptions = options?.formatParams?.[options.interpolationkey] || {};\n const l = valOptions.locale || valOptions.lng || options.locale || options.lng || lng;\n formatted = this.formats[formatName](mem, l, {\n ...formatOptions,\n ...options,\n ...valOptions\n });\n } catch (error) {\n this.logger.warn(error);\n }\n return formatted;\n } else {\n this.logger.warn(`there was no format function for ${formatName}`);\n }\n return mem;\n }, value);\n return result;\n }\n}\n\nconst removePending = (q, name) => {\n if (q.pending[name] !== undefined) {\n delete q.pending[name];\n q.pendingCount--;\n }\n};\nclass Connector extends EventEmitter {\n constructor(backend, store, services) {\n let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n super();\n this.backend = backend;\n this.store = store;\n this.services = services;\n this.languageUtils = services.languageUtils;\n this.options = options;\n this.logger = baseLogger.create('backendConnector');\n this.waitingReads = [];\n this.maxParallelReads = options.maxParallelReads || 10;\n this.readingCalls = 0;\n this.maxRetries = options.maxRetries >= 0 ? options.maxRetries : 5;\n this.retryTimeout = options.retryTimeout >= 1 ? options.retryTimeout : 350;\n this.state = {};\n this.queue = [];\n this.backend?.init?.(services, options.backend, options);\n }\n queueLoad(languages, namespaces, options, callback) {\n const toLoad = {};\n const pending = {};\n const toLoadLanguages = {};\n const toLoadNamespaces = {};\n languages.forEach(lng => {\n let hasAllNamespaces = true;\n namespaces.forEach(ns => {\n const name = `${lng}|${ns}`;\n if (!options.reload && this.store.hasResourceBundle(lng, ns)) {\n this.state[name] = 2;\n } else if (this.state[name] < 0) ; else if (this.state[name] === 1) {\n if (pending[name] === undefined) pending[name] = true;\n } else {\n this.state[name] = 1;\n hasAllNamespaces = false;\n if (pending[name] === undefined) pending[name] = true;\n if (toLoad[name] === undefined) toLoad[name] = true;\n if (toLoadNamespaces[ns] === undefined) toLoadNamespaces[ns] = true;\n }\n });\n if (!hasAllNamespaces) toLoadLanguages[lng] = true;\n });\n if (Object.keys(toLoad).length || Object.keys(pending).length) {\n this.queue.push({\n pending,\n pendingCount: Object.keys(pending).length,\n loaded: {},\n errors: [],\n callback\n });\n }\n return {\n toLoad: Object.keys(toLoad),\n pending: Object.keys(pending),\n toLoadLanguages: Object.keys(toLoadLanguages),\n toLoadNamespaces: Object.keys(toLoadNamespaces)\n };\n }\n loaded(name, err, data) {\n const s = name.split('|');\n const lng = s[0];\n const ns = s[1];\n if (err) this.emit('failedLoading', lng, ns, err);\n if (!err && data) {\n this.store.addResourceBundle(lng, ns, data, undefined, undefined, {\n skipCopy: true\n });\n }\n this.state[name] = err ? -1 : 2;\n if (err && data) this.state[name] = 0;\n const loaded = {};\n this.queue.forEach(q => {\n pushPath(q.loaded, [lng], ns);\n removePending(q, name);\n if (err) q.errors.push(err);\n if (q.pendingCount === 0 && !q.done) {\n Object.keys(q.loaded).forEach(l => {\n if (!loaded[l]) loaded[l] = {};\n const loadedKeys = q.loaded[l];\n if (loadedKeys.length) {\n loadedKeys.forEach(n => {\n if (loaded[l][n] === undefined) loaded[l][n] = true;\n });\n }\n });\n q.done = true;\n if (q.errors.length) {\n q.callback(q.errors);\n } else {\n q.callback();\n }\n }\n });\n this.emit('loaded', loaded);\n this.queue = this.queue.filter(q => !q.done);\n }\n read(lng, ns, fcName) {\n let tried = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;\n let wait = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : this.retryTimeout;\n let callback = arguments.length > 5 ? arguments[5] : undefined;\n if (!lng.length) return callback(null, {});\n if (this.readingCalls >= this.maxParallelReads) {\n this.waitingReads.push({\n lng,\n ns,\n fcName,\n tried,\n wait,\n callback\n });\n return;\n }\n this.readingCalls++;\n const resolver = (err, data) => {\n this.readingCalls--;\n if (this.waitingReads.length > 0) {\n const next = this.waitingReads.shift();\n this.read(next.lng, next.ns, next.fcName, next.tried, next.wait, next.callback);\n }\n if (err && data && tried < this.maxRetries) {\n setTimeout(() => {\n this.read.call(this, lng, ns, fcName, tried + 1, wait * 2, callback);\n }, wait);\n return;\n }\n callback(err, data);\n };\n const fc = this.backend[fcName].bind(this.backend);\n if (fc.length === 2) {\n try {\n const r = fc(lng, ns);\n if (r && typeof r.then === 'function') {\n r.then(data => resolver(null, data)).catch(resolver);\n } else {\n resolver(null, r);\n }\n } catch (err) {\n resolver(err);\n }\n return;\n }\n return fc(lng, ns, resolver);\n }\n prepareLoading(languages, namespaces) {\n let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n let callback = arguments.length > 3 ? arguments[3] : undefined;\n if (!this.backend) {\n this.logger.warn('No backend was added via i18next.use. Will not load resources.');\n return callback && callback();\n }\n if (isString(languages)) languages = this.languageUtils.toResolveHierarchy(languages);\n if (isString(namespaces)) namespaces = [namespaces];\n const toLoad = this.queueLoad(languages, namespaces, options, callback);\n if (!toLoad.toLoad.length) {\n if (!toLoad.pending.length) callback();\n return null;\n }\n toLoad.toLoad.forEach(name => {\n this.loadOne(name);\n });\n }\n load(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {}, callback);\n }\n reload(languages, namespaces, callback) {\n this.prepareLoading(languages, namespaces, {\n reload: true\n }, callback);\n }\n loadOne(name) {\n let prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n const s = name.split('|');\n const lng = s[0];\n const ns = s[1];\n this.read(lng, ns, 'read', undefined, undefined, (err, data) => {\n if (err) this.logger.warn(`${prefix}loading namespace ${ns} for language ${lng} failed`, err);\n if (!err && data) this.logger.log(`${prefix}loaded namespace ${ns} for language ${lng}`, data);\n this.loaded(name, err, data);\n });\n }\n saveMissing(languages, namespace, key, fallbackValue, isUpdate) {\n let options = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};\n let clb = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : () => {};\n if (this.services?.utils?.hasLoadedNamespace && !this.services?.utils?.hasLoadedNamespace(namespace)) {\n this.logger.warn(`did not save key \"${key}\" as the namespace \"${namespace}\" was not yet loaded`, 'This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!');\n return;\n }\n if (key === undefined || key === null || key === '') return;\n if (this.backend?.create) {\n const opts = {\n ...options,\n isUpdate\n };\n const fc = this.backend.create.bind(this.backend);\n if (fc.length < 6) {\n try {\n let r;\n if (fc.length === 5) {\n r = fc(languages, namespace, key, fallbackValue, opts);\n } else {\n r = fc(languages, namespace, key, fallbackValue);\n }\n if (r && typeof r.then === 'function') {\n r.then(data => clb(null, data)).catch(clb);\n } else {\n clb(null, r);\n }\n } catch (err) {\n clb(err);\n }\n } else {\n fc(languages, namespace, key, fallbackValue, clb, opts);\n }\n }\n if (!languages || !languages[0]) return;\n this.store.addResource(languages[0], namespace, key, fallbackValue);\n }\n}\n\nconst get = () => ({\n debug: false,\n initAsync: true,\n ns: ['translation'],\n defaultNS: ['translation'],\n fallbackLng: ['dev'],\n fallbackNS: false,\n supportedLngs: false,\n nonExplicitSupportedLngs: false,\n load: 'all',\n preload: false,\n simplifyPluralSuffix: true,\n keySeparator: '.',\n nsSeparator: ':',\n pluralSeparator: '_',\n contextSeparator: '_',\n partialBundledLanguages: false,\n saveMissing: false,\n updateMissing: false,\n saveMissingTo: 'fallback',\n saveMissingPlurals: true,\n missingKeyHandler: false,\n missingInterpolationHandler: false,\n postProcess: false,\n postProcessPassResolved: false,\n returnNull: false,\n returnEmptyString: true,\n returnObjects: false,\n joinArrays: false,\n returnedObjectHandler: false,\n parseMissingKeyHandler: false,\n appendNamespaceToMissingKey: false,\n appendNamespaceToCIMode: false,\n overloadTranslationOptionHandler: args => {\n let ret = {};\n if (typeof args[1] === 'object') ret = args[1];\n if (isString(args[1])) ret.defaultValue = args[1];\n if (isString(args[2])) ret.tDescription = args[2];\n if (typeof args[2] === 'object' || typeof args[3] === 'object') {\n const options = args[3] || args[2];\n Object.keys(options).forEach(key => {\n ret[key] = options[key];\n });\n }\n return ret;\n },\n interpolation: {\n escapeValue: true,\n format: value => value,\n prefix: '{{',\n suffix: '}}',\n formatSeparator: ',',\n unescapePrefix: '-',\n nestingPrefix: '$t(',\n nestingSuffix: ')',\n nestingOptionsSeparator: ',',\n maxReplaces: 1000,\n skipOnVariables: true\n }\n});\nconst transformOptions = options => {\n if (isString(options.ns)) options.ns = [options.ns];\n if (isString(options.fallbackLng)) options.fallbackLng = [options.fallbackLng];\n if (isString(options.fallbackNS)) options.fallbackNS = [options.fallbackNS];\n if (options.supportedLngs?.indexOf?.('cimode') < 0) {\n options.supportedLngs = options.supportedLngs.concat(['cimode']);\n }\n if (typeof options.initImmediate === 'boolean') options.initAsync = options.initImmediate;\n return options;\n};\n\nconst noop = () => {};\nconst bindMemberFunctions = inst => {\n const mems = Object.getOwnPropertyNames(Object.getPrototypeOf(inst));\n mems.forEach(mem => {\n if (typeof inst[mem] === 'function') {\n inst[mem] = inst[mem].bind(inst);\n }\n });\n};\nclass I18n extends EventEmitter {\n constructor() {\n let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n let callback = arguments.length > 1 ? arguments[1] : undefined;\n super();\n this.options = transformOptions(options);\n this.services = {};\n this.logger = baseLogger;\n this.modules = {\n external: []\n };\n bindMemberFunctions(this);\n if (callback && !this.isInitialized && !options.isClone) {\n if (!this.options.initAsync) {\n this.init(options, callback);\n return this;\n }\n setTimeout(() => {\n this.init(options, callback);\n }, 0);\n }\n }\n init() {\n var _this = this;\n let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n let callback = arguments.length > 1 ? arguments[1] : undefined;\n this.isInitializing = true;\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n if (options.defaultNS == null && options.ns) {\n if (isString(options.ns)) {\n options.defaultNS = options.ns;\n } else if (options.ns.indexOf('translation') < 0) {\n options.defaultNS = options.ns[0];\n }\n }\n const defOpts = get();\n this.options = {\n ...defOpts,\n ...this.options,\n ...transformOptions(options)\n };\n this.options.interpolation = {\n ...defOpts.interpolation,\n ...this.options.interpolation\n };\n if (options.keySeparator !== undefined) {\n this.options.userDefinedKeySeparator = options.keySeparator;\n }\n if (options.nsSeparator !== undefined) {\n this.options.userDefinedNsSeparator = options.nsSeparator;\n }\n const createClassOnDemand = ClassOrObject => {\n if (!ClassOrObject) return null;\n if (typeof ClassOrObject === 'function') return new ClassOrObject();\n return ClassOrObject;\n };\n if (!this.options.isClone) {\n if (this.modules.logger) {\n baseLogger.init(createClassOnDemand(this.modules.logger), this.options);\n } else {\n baseLogger.init(null, this.options);\n }\n let formatter;\n if (this.modules.formatter) {\n formatter = this.modules.formatter;\n } else {\n formatter = Formatter;\n }\n const lu = new LanguageUtil(this.options);\n this.store = new ResourceStore(this.options.resources, this.options);\n const s = this.services;\n s.logger = baseLogger;\n s.resourceStore = this.store;\n s.languageUtils = lu;\n s.pluralResolver = new PluralResolver(lu, {\n prepend: this.options.pluralSeparator,\n simplifyPluralSuffix: this.options.simplifyPluralSuffix\n });\n if (formatter && (!this.options.interpolation.format || this.options.interpolation.format === defOpts.interpolation.format)) {\n s.formatter = createClassOnDemand(formatter);\n s.formatter.init(s, this.options);\n this.options.interpolation.format = s.formatter.format.bind(s.formatter);\n }\n s.interpolator = new Interpolator(this.options);\n s.utils = {\n hasLoadedNamespace: this.hasLoadedNamespace.bind(this)\n };\n s.backendConnector = new Connector(createClassOnDemand(this.modules.backend), s.resourceStore, s, this.options);\n s.backendConnector.on('*', function (event) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n _this.emit(event, ...args);\n });\n if (this.modules.languageDetector) {\n s.languageDetector = createClassOnDemand(this.modules.languageDetector);\n if (s.languageDetector.init) s.languageDetector.init(s, this.options.detection, this.options);\n }\n if (this.modules.i18nFormat) {\n s.i18nFormat = createClassOnDemand(this.modules.i18nFormat);\n if (s.i18nFormat.init) s.i18nFormat.init(this);\n }\n this.translator = new Translator(this.services, this.options);\n this.translator.on('*', function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n _this.emit(event, ...args);\n });\n this.modules.external.forEach(m => {\n if (m.init) m.init(this);\n });\n }\n this.format = this.options.interpolation.format;\n if (!callback) callback = noop;\n if (this.options.fallbackLng && !this.services.languageDetector && !this.options.lng) {\n const codes = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n if (codes.length > 0 && codes[0] !== 'dev') this.options.lng = codes[0];\n }\n if (!this.services.languageDetector && !this.options.lng) {\n this.logger.warn('init: no languageDetector is used and no lng is defined');\n }\n const storeApi = ['getResource', 'hasResourceBundle', 'getResourceBundle', 'getDataByLanguage'];\n storeApi.forEach(fcName => {\n this[fcName] = function () {\n return _this.store[fcName](...arguments);\n };\n });\n const storeApiChained = ['addResource', 'addResources', 'addResourceBundle', 'removeResourceBundle'];\n storeApiChained.forEach(fcName => {\n this[fcName] = function () {\n _this.store[fcName](...arguments);\n return _this;\n };\n });\n const deferred = defer();\n const load = () => {\n const finish = (err, t) => {\n this.isInitializing = false;\n if (this.isInitialized && !this.initializedStoreOnce) this.logger.warn('init: i18next is already initialized. You should call init just once!');\n this.isInitialized = true;\n if (!this.options.isClone) this.logger.log('initialized', this.options);\n this.emit('initialized', this.options);\n deferred.resolve(t);\n callback(err, t);\n };\n if (this.languages && !this.isInitialized) return finish(null, this.t.bind(this));\n this.changeLanguage(this.options.lng, finish);\n };\n if (this.options.resources || !this.options.initAsync) {\n load();\n } else {\n setTimeout(load, 0);\n }\n return deferred;\n }\n loadResources(language) {\n let callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n let usedCallback = callback;\n const usedLng = isString(language) ? language : this.language;\n if (typeof language === 'function') usedCallback = language;\n if (!this.options.resources || this.options.partialBundledLanguages) {\n if (usedLng?.toLowerCase() === 'cimode' && (!this.options.preload || this.options.preload.length === 0)) return usedCallback();\n const toLoad = [];\n const append = lng => {\n if (!lng) return;\n if (lng === 'cimode') return;\n const lngs = this.services.languageUtils.toResolveHierarchy(lng);\n lngs.forEach(l => {\n if (l === 'cimode') return;\n if (toLoad.indexOf(l) < 0) toLoad.push(l);\n });\n };\n if (!usedLng) {\n const fallbacks = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);\n fallbacks.forEach(l => append(l));\n } else {\n append(usedLng);\n }\n this.options.preload?.forEach?.(l => append(l));\n this.services.backendConnector.load(toLoad, this.options.ns, e => {\n if (!e && !this.resolvedLanguage && this.language) this.setResolvedLanguage(this.language);\n usedCallback(e);\n });\n } else {\n usedCallback(null);\n }\n }\n reloadResources(lngs, ns, callback) {\n const deferred = defer();\n if (typeof lngs === 'function') {\n callback = lngs;\n lngs = undefined;\n }\n if (typeof ns === 'function') {\n callback = ns;\n ns = undefined;\n }\n if (!lngs) lngs = this.languages;\n if (!ns) ns = this.options.ns;\n if (!callback) callback = noop;\n this.services.backendConnector.reload(lngs, ns, err => {\n deferred.resolve();\n callback(err);\n });\n return deferred;\n }\n use(module) {\n if (!module) throw new Error('You are passing an undefined module! Please check the object you are passing to i18next.use()');\n if (!module.type) throw new Error('You are passing a wrong module! Please check the object you are passing to i18next.use()');\n if (module.type === 'backend') {\n this.modules.backend = module;\n }\n if (module.type === 'logger' || module.log && module.warn && module.error) {\n this.modules.logger = module;\n }\n if (module.type === 'languageDetector') {\n this.modules.languageDetector = module;\n }\n if (module.type === 'i18nFormat') {\n this.modules.i18nFormat = module;\n }\n if (module.type === 'postProcessor') {\n postProcessor.addPostProcessor(module);\n }\n if (module.type === 'formatter') {\n this.modules.formatter = module;\n }\n if (module.type === '3rdParty') {\n this.modules.external.push(module);\n }\n return this;\n }\n setResolvedLanguage(l) {\n if (!l || !this.languages) return;\n if (['cimode', 'dev'].indexOf(l) > -1) return;\n for (let li = 0; li < this.languages.length; li++) {\n const lngInLngs = this.languages[li];\n if (['cimode', 'dev'].indexOf(lngInLngs) > -1) continue;\n if (this.store.hasLanguageSomeTranslations(lngInLngs)) {\n this.resolvedLanguage = lngInLngs;\n break;\n }\n }\n }\n changeLanguage(lng, callback) {\n var _this2 = this;\n this.isLanguageChangingTo = lng;\n const deferred = defer();\n this.emit('languageChanging', lng);\n const setLngProps = l => {\n this.language = l;\n this.languages = this.services.languageUtils.toResolveHierarchy(l);\n this.resolvedLanguage = undefined;\n this.setResolvedLanguage(l);\n };\n const done = (err, l) => {\n if (l) {\n setLngProps(l);\n this.translator.changeLanguage(l);\n this.isLanguageChangingTo = undefined;\n this.emit('languageChanged', l);\n this.logger.log('languageChanged', l);\n } else {\n this.isLanguageChangingTo = undefined;\n }\n deferred.resolve(function () {\n return _this2.t(...arguments);\n });\n if (callback) callback(err, function () {\n return _this2.t(...arguments);\n });\n };\n const setLng = lngs => {\n if (!lng && !lngs && this.services.languageDetector) lngs = [];\n const l = isString(lngs) ? lngs : this.services.languageUtils.getBestMatchFromCodes(lngs);\n if (l) {\n if (!this.language) {\n setLngProps(l);\n }\n if (!this.translator.language) this.translator.changeLanguage(l);\n this.services.languageDetector?.cacheUserLanguage?.(l);\n }\n this.loadResources(l, err => {\n done(err, l);\n });\n };\n if (!lng && this.services.languageDetector && !this.services.languageDetector.async) {\n setLng(this.services.languageDetector.detect());\n } else if (!lng && this.services.languageDetector && this.services.languageDetector.async) {\n if (this.services.languageDetector.detect.length === 0) {\n this.services.languageDetector.detect().then(setLng);\n } else {\n this.services.languageDetector.detect(setLng);\n }\n } else {\n setLng(lng);\n }\n return deferred;\n }\n getFixedT(lng, ns, keyPrefix) {\n var _this3 = this;\n const fixedT = function (key, opts) {\n let options;\n if (typeof opts !== 'object') {\n for (var _len3 = arguments.length, rest = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n rest[_key3 - 2] = arguments[_key3];\n }\n options = _this3.options.overloadTranslationOptionHandler([key, opts].concat(rest));\n } else {\n options = {\n ...opts\n };\n }\n options.lng = options.lng || fixedT.lng;\n options.lngs = options.lngs || fixedT.lngs;\n options.ns = options.ns || fixedT.ns;\n if (options.keyPrefix !== '') options.keyPrefix = options.keyPrefix || keyPrefix || fixedT.keyPrefix;\n const keySeparator = _this3.options.keySeparator || '.';\n let resultKey;\n if (options.keyPrefix && Array.isArray(key)) {\n resultKey = key.map(k => `${options.keyPrefix}${keySeparator}${k}`);\n } else {\n resultKey = options.keyPrefix ? `${options.keyPrefix}${keySeparator}${key}` : key;\n }\n return _this3.t(resultKey, options);\n };\n if (isString(lng)) {\n fixedT.lng = lng;\n } else {\n fixedT.lngs = lng;\n }\n fixedT.ns = ns;\n fixedT.keyPrefix = keyPrefix;\n return fixedT;\n }\n t() {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n return this.translator?.translate(...args);\n }\n exists() {\n for (var _len5 = arguments.length, args = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {\n args[_key5] = arguments[_key5];\n }\n return this.translator?.exists(...args);\n }\n setDefaultNamespace(ns) {\n this.options.defaultNS = ns;\n }\n hasLoadedNamespace(ns) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (!this.isInitialized) {\n this.logger.warn('hasLoadedNamespace: i18next was not initialized', this.languages);\n return false;\n }\n if (!this.languages || !this.languages.length) {\n this.logger.warn('hasLoadedNamespace: i18n.languages were undefined or empty', this.languages);\n return false;\n }\n const lng = options.lng || this.resolvedLanguage || this.languages[0];\n const fallbackLng = this.options ? this.options.fallbackLng : false;\n const lastLng = this.languages[this.languages.length - 1];\n if (lng.toLowerCase() === 'cimode') return true;\n const loadNotPending = (l, n) => {\n const loadState = this.services.backendConnector.state[`${l}|${n}`];\n return loadState === -1 || loadState === 0 || loadState === 2;\n };\n if (options.precheck) {\n const preResult = options.precheck(this, loadNotPending);\n if (preResult !== undefined) return preResult;\n }\n if (this.hasResourceBundle(lng, ns)) return true;\n if (!this.services.backendConnector.backend || this.options.resources && !this.options.partialBundledLanguages) return true;\n if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;\n return false;\n }\n loadNamespaces(ns, callback) {\n const deferred = defer();\n if (!this.options.ns) {\n if (callback) callback();\n return Promise.resolve();\n }\n if (isString(ns)) ns = [ns];\n ns.forEach(n => {\n if (this.options.ns.indexOf(n) < 0) this.options.ns.push(n);\n });\n this.loadResources(err => {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n loadLanguages(lngs, callback) {\n const deferred = defer();\n if (isString(lngs)) lngs = [lngs];\n const preloaded = this.options.preload || [];\n const newLngs = lngs.filter(lng => preloaded.indexOf(lng) < 0 && this.services.languageUtils.isSupportedCode(lng));\n if (!newLngs.length) {\n if (callback) callback();\n return Promise.resolve();\n }\n this.options.preload = preloaded.concat(newLngs);\n this.loadResources(err => {\n deferred.resolve();\n if (callback) callback(err);\n });\n return deferred;\n }\n dir(lng) {\n if (!lng) lng = this.resolvedLanguage || (this.languages?.length > 0 ? this.languages[0] : this.language);\n if (!lng) return 'rtl';\n const rtlLngs = ['ar', 'shu', 'sqr', 'ssh', 'xaa', 'yhd', 'yud', 'aao', 'abh', 'abv', 'acm', 'acq', 'acw', 'acx', 'acy', 'adf', 'ads', 'aeb', 'aec', 'afb', 'ajp', 'apc', 'apd', 'arb', 'arq', 'ars', 'ary', 'arz', 'auz', 'avl', 'ayh', 'ayl', 'ayn', 'ayp', 'bbz', 'pga', 'he', 'iw', 'ps', 'pbt', 'pbu', 'pst', 'prp', 'prd', 'ug', 'ur', 'ydd', 'yds', 'yih', 'ji', 'yi', 'hbo', 'men', 'xmn', 'fa', 'jpr', 'peo', 'pes', 'prs', 'dv', 'sam', 'ckb'];\n const languageUtils = this.services?.languageUtils || new LanguageUtil(get());\n return rtlLngs.indexOf(languageUtils.getLanguagePartFromCode(lng)) > -1 || lng.toLowerCase().indexOf('-arab') > 1 ? 'rtl' : 'ltr';\n }\n static createInstance() {\n let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n let callback = arguments.length > 1 ? arguments[1] : undefined;\n return new I18n(options, callback);\n }\n cloneInstance() {\n let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n let callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;\n const forkResourceStore = options.forkResourceStore;\n if (forkResourceStore) delete options.forkResourceStore;\n const mergedOptions = {\n ...this.options,\n ...options,\n ...{\n isClone: true\n }\n };\n const clone = new I18n(mergedOptions);\n if (options.debug !== undefined || options.prefix !== undefined) {\n clone.logger = clone.logger.clone(options);\n }\n const membersToCopy = ['store', 'services', 'language'];\n membersToCopy.forEach(m => {\n clone[m] = this[m];\n });\n clone.services = {\n ...this.services\n };\n clone.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n if (forkResourceStore) {\n const clonedData = Object.keys(this.store.data).reduce((prev, l) => {\n prev[l] = {\n ...this.store.data[l]\n };\n return Object.keys(prev[l]).reduce((acc, n) => {\n acc[n] = {\n ...prev[l][n]\n };\n return acc;\n }, {});\n }, {});\n clone.store = new ResourceStore(clonedData, mergedOptions);\n clone.services.resourceStore = clone.store;\n }\n clone.translator = new Translator(clone.services, mergedOptions);\n clone.translator.on('*', function (event) {\n for (var _len6 = arguments.length, args = new Array(_len6 > 1 ? _len6 - 1 : 0), _key6 = 1; _key6 < _len6; _key6++) {\n args[_key6 - 1] = arguments[_key6];\n }\n clone.emit(event, ...args);\n });\n clone.init(mergedOptions, callback);\n clone.translator.options = mergedOptions;\n clone.translator.backendConnector.services.utils = {\n hasLoadedNamespace: clone.hasLoadedNamespace.bind(clone)\n };\n return clone;\n }\n toJSON() {\n return {\n options: this.options,\n store: this.store,\n language: this.language,\n languages: this.languages,\n resolvedLanguage: this.resolvedLanguage\n };\n }\n}\nconst instance = I18n.createInstance();\ninstance.createInstance = I18n.createInstance;\n\nconst createInstance = instance.createInstance;\nconst dir = instance.dir;\nconst init = instance.init;\nconst loadResources = instance.loadResources;\nconst reloadResources = instance.reloadResources;\nconst use = instance.use;\nconst changeLanguage = instance.changeLanguage;\nconst getFixedT = instance.getFixedT;\nconst t = instance.t;\nconst exists = instance.exists;\nconst setDefaultNamespace = instance.setDefaultNamespace;\nconst hasLoadedNamespace = instance.hasLoadedNamespace;\nconst loadNamespaces = instance.loadNamespaces;\nconst loadLanguages = instance.loadLanguages;\n\nexport { changeLanguage, createInstance, instance as default, dir, exists, getFixedT, hasLoadedNamespace, init, loadLanguages, loadNamespaces, loadResources, reloadResources, setDefaultNamespace, t, use };\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9],"mappings":"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"}