@coveo/atomic 3.35.0-pre.b3e173655a → 3.35.0-pre.d735e0b324

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 (742) hide show
  1. package/dist/atomic/_atomic.esm.js +1 -1
  2. package/dist/atomic/atomic.esm.js.map +1 -1
  3. package/dist/atomic/components/_index.d.ts +0 -2
  4. package/dist/atomic/components/_index.js +0 -1
  5. package/dist/atomic/components/atomic-category-facet.js +1 -1
  6. package/dist/atomic/components/atomic-citation.js +1 -1
  7. package/dist/atomic/components/atomic-facet-manager.js +1 -1
  8. package/dist/atomic/components/atomic-facet.js +1 -1
  9. package/dist/atomic/components/atomic-format-currency.js +1 -1
  10. package/dist/atomic/components/atomic-format-number.js +1 -1
  11. package/dist/atomic/components/atomic-format-unit.js +1 -1
  12. package/dist/atomic/components/atomic-generated-answer-feedback-modal.js +1 -1
  13. package/dist/atomic/components/atomic-html2.js +1 -1
  14. package/dist/atomic/components/atomic-insight-edit-toggle.js +1 -1
  15. package/dist/atomic/components/atomic-insight-facet.js +1 -1
  16. package/dist/atomic/components/atomic-insight-folded-result-list.js +1 -1
  17. package/dist/atomic/components/atomic-insight-full-search-button.js +1 -1
  18. package/dist/atomic/components/atomic-insight-history-toggle.js +1 -1
  19. package/dist/atomic/components/atomic-insight-layout.js +82 -1
  20. package/dist/atomic/components/atomic-insight-layout.js.map +1 -1
  21. package/dist/atomic/components/atomic-insight-no-results.js +1 -1
  22. package/dist/atomic/components/atomic-insight-numeric-facet.js +1 -1
  23. package/dist/atomic/components/atomic-insight-pager.js +3 -3
  24. package/dist/atomic/components/atomic-insight-query-error.js +1 -1
  25. package/dist/atomic/components/atomic-insight-refine-modal2.js +2 -2
  26. package/dist/atomic/components/atomic-insight-refine-toggle.js +1 -1
  27. package/dist/atomic/components/atomic-insight-result-action.js +1 -1
  28. package/dist/atomic/components/atomic-insight-result-attach-to-case-action.js +1 -1
  29. package/dist/atomic/components/atomic-insight-result-attach-to-case-indicator.js +1 -1
  30. package/dist/atomic/components/atomic-insight-result-children.js +1 -1
  31. package/dist/atomic/components/atomic-insight-result-list.js +1 -1
  32. package/dist/atomic/components/atomic-insight-result-quickview-action.js +1 -1
  33. package/dist/atomic/components/atomic-insight-result2.js +1 -1
  34. package/dist/atomic/components/atomic-insight-search-box.js +2 -2
  35. package/dist/atomic/components/atomic-insight-smart-snippet-feedback-modal2.js +2 -2
  36. package/dist/atomic/components/atomic-insight-tabs.js +1 -1
  37. package/dist/atomic/components/atomic-insight-user-actions-session2.js +1 -1
  38. package/dist/atomic/components/atomic-insight-user-actions-toggle.js +1 -1
  39. package/dist/atomic/components/atomic-ipx-body2.js +2 -2
  40. package/dist/atomic/components/atomic-ipx-button.js +2 -2
  41. package/dist/atomic/components/atomic-ipx-embedded.js +1 -1
  42. package/dist/atomic/components/atomic-ipx-modal.js +2 -2
  43. package/dist/atomic/components/atomic-ipx-recs-list.js +1 -1
  44. package/dist/atomic/components/atomic-ipx-refine-modal2.js +1 -1
  45. package/dist/atomic/components/atomic-ipx-refine-toggle.js +1 -1
  46. package/dist/atomic/components/atomic-ipx-result-link.js +1 -1
  47. package/dist/atomic/components/atomic-ipx-tabs.js +1 -1
  48. package/dist/atomic/components/atomic-load-more-results.js +1 -1
  49. package/dist/atomic/components/atomic-no-results.js +1 -1
  50. package/dist/atomic/components/atomic-numeric-facet.js +1 -1
  51. package/dist/atomic/components/atomic-query-error.js +1 -1
  52. package/dist/atomic/components/atomic-quickview-modal2.js +1 -1
  53. package/dist/atomic/components/atomic-quickview.js +1 -1
  54. package/dist/atomic/components/atomic-recs-error.js +1 -1
  55. package/dist/atomic/components/atomic-recs-interface.js +2915 -3
  56. package/dist/atomic/components/atomic-recs-interface.js.map +1 -1
  57. package/dist/atomic/components/atomic-recs-list.js +1 -1
  58. package/dist/atomic/components/atomic-refine-modal2.js +1 -1
  59. package/dist/atomic/components/atomic-refine-toggle.js +1 -1
  60. package/dist/atomic/components/atomic-result-children.js +1 -1
  61. package/dist/atomic/components/atomic-result-fields-list.js +1 -1
  62. package/dist/atomic/components/atomic-result-link.js +1 -1
  63. package/dist/atomic/components/atomic-result-list.js +1 -1
  64. package/dist/atomic/components/atomic-result-placeholder2.js +2 -2
  65. package/dist/atomic/components/atomic-result-table-placeholder2.js +1 -1
  66. package/dist/atomic/components/atomic-search-box-instant-results.js +1 -1
  67. package/dist/atomic/components/atomic-search-box-query-suggestions2.js +1 -1
  68. package/dist/atomic/components/atomic-search-box.js +7 -3
  69. package/dist/atomic/components/atomic-search-box.js.map +1 -1
  70. package/dist/atomic/components/atomic-smart-snippet-answer2.js +1 -1
  71. package/dist/atomic/components/atomic-smart-snippet-collapse-wrapper2.js +2 -2
  72. package/dist/atomic/components/atomic-smart-snippet-expandable-answer2.js +1 -1
  73. package/dist/atomic/components/atomic-smart-snippet-feedback-modal2.js +2 -2
  74. package/dist/atomic/components/atomic-smart-snippet-source2.js +1 -1
  75. package/dist/atomic/components/atomic-sort-dropdown.js +2 -2
  76. package/dist/atomic/components/atomic-sort-expression.js +1 -1
  77. package/dist/atomic/components/atomic-stencil-facet-date-input.js +3 -3
  78. package/dist/atomic/components/atomic-suggestion-renderer2.js +1 -1
  79. package/dist/atomic/components/atomic-tab-manager.js +1 -1
  80. package/dist/atomic/components/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.js +3 -1
  81. package/dist/atomic/components/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.js +5 -0
  82. package/dist/atomic/components/components/commerce/atomic-commerce-search-box-recent-queries/atomic-commerce-search-box-recent-queries.js +3 -0
  83. package/dist/atomic/components/components/common/breadbox/breadcrumb-button.js +6 -1
  84. package/dist/atomic/components/components/common/search-box/text-area-clear-button.js +1 -1
  85. package/dist/atomic/components/components/insight/atomic-insight-interface/analytics-config.js +31 -0
  86. package/dist/atomic/components/components/insight/atomic-insight-interface/atomic-insight-interface.js +258 -0
  87. package/dist/atomic/components/components/insight/index.js +2 -1
  88. package/dist/atomic/components/components/insight/lazy-index.js +3 -1
  89. package/dist/atomic/components/facet-number-input.js +2 -2
  90. package/dist/atomic/components/global/environment.js +1 -1
  91. package/dist/atomic/components/index.js.map +1 -1
  92. package/dist/atomic/components/item-section-utils.js +1 -1
  93. package/dist/atomic/components/replace-breakpoint-utils.js +1 -1
  94. package/dist/atomic/components/replace-breakpoint-utils.js.map +1 -1
  95. package/dist/atomic/components/stencil-suggestion-manager.js +1 -1
  96. package/dist/atomic/components/stencil-suggestion-manager.js.map +1 -1
  97. package/dist/atomic/components/store.js +2 -30
  98. package/dist/atomic/components/store.js.map +1 -1
  99. package/dist/atomic/components/tab-button.js +1 -1
  100. package/dist/atomic/components/tab-popover.js +1 -1
  101. package/dist/atomic/components/utils.js +1 -17
  102. package/dist/atomic/components/utils.js.map +1 -1
  103. package/dist/atomic/lang/cs.json +1 -1
  104. package/dist/atomic/lang/da.json +1 -1
  105. package/dist/atomic/lang/de.json +1 -1
  106. package/dist/atomic/lang/dev.json +1 -1
  107. package/dist/atomic/lang/el.json +1 -1
  108. package/dist/atomic/lang/en.json +1 -1
  109. package/dist/atomic/lang/es.json +1 -1
  110. package/dist/atomic/lang/fi.json +1 -1
  111. package/dist/atomic/lang/fr.json +1 -1
  112. package/dist/atomic/lang/hu.json +1 -1
  113. package/dist/atomic/lang/id.json +1 -1
  114. package/dist/atomic/lang/it.json +1 -1
  115. package/dist/atomic/lang/ja.json +1 -1
  116. package/dist/atomic/lang/ko.json +1 -1
  117. package/dist/atomic/lang/nl.json +1 -1
  118. package/dist/atomic/lang/no.json +1 -1
  119. package/dist/atomic/lang/pl.json +1 -1
  120. package/dist/atomic/lang/pt-BR.json +1 -1
  121. package/dist/atomic/lang/pt.json +1 -1
  122. package/dist/atomic/lang/ru.json +1 -1
  123. package/dist/atomic/lang/sv.json +1 -1
  124. package/dist/atomic/lang/th.json +1 -1
  125. package/dist/atomic/lang/tr.json +1 -1
  126. package/dist/atomic/lang/zh-CN.json +1 -1
  127. package/dist/atomic/lang/zh-TW.json +1 -1
  128. package/dist/atomic/lang/zh.json +1 -1
  129. package/dist/atomic/{p-27cf779a.js → p-025a346a.js} +2 -2
  130. package/dist/atomic/{p-7e971d15.entry.js → p-044de1f9.entry.js} +2 -2
  131. package/dist/atomic/{p-fe59fb2d.entry.js → p-0535b93d.entry.js} +2 -2
  132. package/dist/atomic/{p-31a13850.js → p-0580b866.js} +2 -2
  133. package/dist/atomic/{p-0edea6f9.entry.js → p-05f1ff6f.entry.js} +2 -2
  134. package/dist/atomic/{p-3e9db2b5.entry.js → p-088d634c.entry.js} +2 -2
  135. package/dist/atomic/p-0948a187.entry.js +2 -0
  136. package/dist/atomic/p-0948a187.entry.js.map +1 -0
  137. package/dist/atomic/{p-4bdc6d5a.entry.js → p-0ee7cab8.entry.js} +2 -2
  138. package/dist/atomic/{p-0f449e9d.entry.js → p-14bad769.entry.js} +2 -2
  139. package/dist/atomic/{p-01511388.entry.js → p-15547bd5.entry.js} +2 -2
  140. package/dist/atomic/{p-b313058c.entry.js → p-182f9112.entry.js} +2 -2
  141. package/dist/atomic/{p-00069a4b.entry.js → p-1910eb7f.entry.js} +2 -2
  142. package/dist/atomic/{p-85145c88.entry.js → p-1c8bcadf.entry.js} +2 -2
  143. package/dist/atomic/p-1fca38e1.js +2 -0
  144. package/dist/atomic/{p-26598ee0.js.map → p-1fca38e1.js.map} +1 -1
  145. package/dist/atomic/{p-cafa4083.entry.js → p-21ab7750.entry.js} +2 -2
  146. package/dist/atomic/{p-9a6ec803.entry.js → p-229018fa.entry.js} +2 -2
  147. package/dist/atomic/{p-89d8bb0d.entry.js → p-22b76c96.entry.js} +2 -2
  148. package/dist/atomic/p-2559747d.js +2 -0
  149. package/dist/atomic/p-2559747d.js.map +1 -0
  150. package/dist/atomic/{p-36f63642.entry.js → p-26e0c1f8.entry.js} +2 -2
  151. package/dist/atomic/{p-c4fb6426.entry.js → p-2e13e2c0.entry.js} +2 -2
  152. package/dist/atomic/{p-6098b906.entry.js → p-2f437b47.entry.js} +2 -2
  153. package/dist/atomic/{p-998393ec.entry.js → p-2f517a54.entry.js} +2 -2
  154. package/dist/atomic/{p-06284430.entry.js → p-318c96f5.entry.js} +2 -2
  155. package/dist/atomic/{p-0ed76e65.entry.js → p-3272a04b.entry.js} +2 -2
  156. package/dist/atomic/{p-d211a422.entry.js → p-3291adda.entry.js} +2 -2
  157. package/dist/atomic/{p-dbc0ce5c.entry.js → p-33245038.entry.js} +2 -2
  158. package/dist/atomic/{p-fa658ef2.entry.js → p-35c2ee5f.entry.js} +2 -2
  159. package/dist/atomic/p-36270a85.entry.js +2 -0
  160. package/dist/atomic/p-36270a85.entry.js.map +1 -0
  161. package/dist/atomic/{p-3d55fce6.entry.js → p-36e2c945.entry.js} +2 -2
  162. package/dist/atomic/{p-af1b4924.entry.js → p-3bd8469f.entry.js} +2 -2
  163. package/dist/atomic/{p-e62fc40e.js → p-3ef52afa.js} +2 -2
  164. package/dist/atomic/{p-170c7da6.entry.js → p-400c28b6.entry.js} +2 -2
  165. package/dist/atomic/{p-fafd5042.entry.js → p-448091f7.entry.js} +2 -2
  166. package/dist/atomic/{p-fe3cd55b.entry.js → p-44d96103.entry.js} +2 -2
  167. package/dist/atomic/{p-da845e35.entry.js → p-463336ca.entry.js} +2 -2
  168. package/dist/atomic/{p-f9dd14b2.entry.js → p-479cb38a.entry.js} +2 -2
  169. package/dist/atomic/{p-a9383817.entry.js → p-47b41b27.entry.js} +2 -2
  170. package/dist/atomic/{p-be2a43f4.entry.js → p-48bab1a6.entry.js} +2 -2
  171. package/dist/atomic/{p-0c8e7d5f.entry.js → p-4cb91ee7.entry.js} +2 -2
  172. package/dist/atomic/{p-23d4dc54.entry.js → p-558f2191.entry.js} +2 -2
  173. package/dist/atomic/{p-8572a953.entry.js → p-55c41e00.entry.js} +2 -2
  174. package/dist/atomic/p-567b2841.entry.js +2 -0
  175. package/dist/atomic/{p-a1522fe5.entry.js.map → p-567b2841.entry.js.map} +1 -1
  176. package/dist/atomic/{p-2e4628bb.entry.js → p-57049cd2.entry.js} +2 -2
  177. package/dist/atomic/{p-edd4d5f7.js → p-5a2ef889.js} +2 -2
  178. package/dist/atomic/{p-dc128135.entry.js → p-5a83b7e5.entry.js} +2 -2
  179. package/dist/atomic/{p-10b5e0f3.entry.js → p-5b8cc4bc.entry.js} +2 -2
  180. package/dist/atomic/{p-87f69e53.entry.js → p-5cab535b.entry.js} +2 -2
  181. package/dist/atomic/p-5d0fc7e2.js +2 -0
  182. package/dist/atomic/{p-740cd5bc.entry.js → p-6439156c.entry.js} +2 -2
  183. package/dist/atomic/{p-7e9a1a1a.entry.js → p-66166975.entry.js} +2 -2
  184. package/dist/atomic/{p-97538903.entry.js → p-6698d5e9.entry.js} +2 -2
  185. package/dist/atomic/{p-0610b3e7.entry.js → p-6819f12c.entry.js} +2 -2
  186. package/dist/atomic/p-6b3429d3.js +2 -0
  187. package/dist/atomic/{p-6078667f.entry.js → p-7045745d.entry.js} +2 -2
  188. package/dist/atomic/{p-a130b00b.entry.js → p-70747efa.entry.js} +2 -2
  189. package/dist/atomic/{p-4830b9bb.entry.js → p-7242b46e.entry.js} +2 -2
  190. package/dist/atomic/{p-3af2fca0.js → p-7427daa3.js} +2 -2
  191. package/dist/atomic/{p-b320f270.entry.js → p-76c14d82.entry.js} +2 -2
  192. package/dist/atomic/{p-1435fb6f.entry.js → p-7741124a.entry.js} +2 -2
  193. package/dist/atomic/{p-cdeb5f2a.entry.js → p-77d00da1.entry.js} +2 -2
  194. package/dist/atomic/{p-519d9abd.entry.js → p-7fd58269.entry.js} +2 -2
  195. package/dist/atomic/p-7fe23afc.entry.js +2 -0
  196. package/dist/atomic/{p-c7af4b9e.entry.js.map → p-7fe23afc.entry.js.map} +1 -1
  197. package/dist/atomic/{p-f76b7ac3.entry.js → p-80290dd3.entry.js} +2 -2
  198. package/dist/atomic/{p-b6ae0244.entry.js → p-81bdbd07.entry.js} +2 -2
  199. package/dist/atomic/{p-dc28ee14.js → p-828ab4ff.js} +2 -2
  200. package/dist/atomic/{p-723f76a1.entry.js → p-82cd6398.entry.js} +2 -2
  201. package/dist/atomic/{p-fdcd187d.entry.js → p-851b9735.entry.js} +2 -2
  202. package/dist/atomic/{p-40c1dfcb.entry.js → p-874f0a4c.entry.js} +2 -2
  203. package/dist/atomic/{p-373448df.entry.js → p-8b0cf1d4.entry.js} +2 -2
  204. package/dist/atomic/{p-36112c34.entry.js → p-8b0d881e.entry.js} +2 -2
  205. package/dist/atomic/{p-ee957926.entry.js → p-8d5228da.entry.js} +2 -2
  206. package/dist/atomic/{p-c25f1437.entry.js → p-955092ed.entry.js} +2 -2
  207. package/dist/atomic/{p-47ab6c9f.entry.js → p-99d4c4bf.entry.js} +2 -2
  208. package/dist/atomic/{p-edede7d1.entry.js → p-9aad555a.entry.js} +2 -2
  209. package/dist/atomic/{p-2250f505.js → p-9ae68e86.js} +2 -2
  210. package/dist/atomic/{p-83d3857f.entry.js → p-9e6462cf.entry.js} +2 -2
  211. package/dist/atomic/p-9e6462cf.entry.js.map +1 -0
  212. package/dist/atomic/{p-00a6ab8c.entry.js → p-a0ebbbdf.entry.js} +2 -2
  213. package/dist/atomic/{p-7fd5b6ac.entry.js → p-a1798150.entry.js} +2 -2
  214. package/dist/atomic/{p-9239be63.entry.js → p-a54f3f24.entry.js} +2 -2
  215. package/dist/atomic/{p-24fd7df6.entry.js → p-a6dde0f6.entry.js} +2 -2
  216. package/dist/atomic/{p-a1e5f767.entry.js → p-a78cbb80.entry.js} +2 -2
  217. package/dist/atomic/p-aaa5a853.js +2 -0
  218. package/dist/atomic/p-aaa5a853.js.map +1 -0
  219. package/dist/atomic/{p-59b15bd6.entry.js → p-ae69f519.entry.js} +2 -2
  220. package/dist/atomic/{p-98dd6df1.entry.js → p-b06de6f8.entry.js} +2 -2
  221. package/dist/atomic/{p-fdd0aa42.entry.js → p-b1b583a0.entry.js} +2 -2
  222. package/dist/atomic/{p-3c9289b5.js → p-b29d121c.js} +2 -2
  223. package/dist/atomic/p-b628ed03.entry.js +2 -0
  224. package/dist/atomic/{p-a1ee594f.entry.js.map → p-b628ed03.entry.js.map} +1 -1
  225. package/dist/atomic/{p-cb3fd0f4.entry.js → p-b84108f3.entry.js} +2 -2
  226. package/dist/atomic/{p-fb1a1e2e.entry.js → p-b85c2c46.entry.js} +2 -2
  227. package/dist/atomic/{p-9260dd7d.entry.js → p-b9eeac20.entry.js} +2 -2
  228. package/dist/atomic/{p-b2b9e83f.entry.js → p-bc43df67.entry.js} +2 -2
  229. package/dist/atomic/{p-93601dc0.entry.js → p-bd01acd5.entry.js} +2 -2
  230. package/dist/atomic/{p-416d088e.entry.js → p-be011bd1.entry.js} +2 -2
  231. package/dist/atomic/{p-4f4c9a03.entry.js → p-c2a5dac0.entry.js} +2 -2
  232. package/dist/atomic/{p-93f1d551.entry.js → p-c5164dbf.entry.js} +2 -2
  233. package/dist/atomic/{p-3622ed6c.js → p-c619df9b.js} +2 -2
  234. package/dist/atomic/{p-1bbaf206.entry.js → p-c8190eb9.entry.js} +2 -2
  235. package/dist/atomic/{p-5ca21deb.js → p-ca37969c.js} +2 -2
  236. package/dist/atomic/{p-7cced247.entry.js → p-d0ab0125.entry.js} +2 -2
  237. package/dist/atomic/{p-2fb49fe8.entry.js → p-d8caa4d8.entry.js} +2 -2
  238. package/dist/atomic/{p-62e85c20.entry.js → p-da87ef51.entry.js} +2 -2
  239. package/dist/atomic/{p-367ec37d.entry.js → p-db2d92c5.entry.js} +2 -2
  240. package/dist/atomic/{p-dbf0c5a3.entry.js → p-db3b11ca.entry.js} +2 -2
  241. package/dist/atomic/{p-20b33c18.entry.js → p-dd24c66a.entry.js} +2 -2
  242. package/dist/atomic/{p-0f39889d.entry.js → p-dea22a8d.entry.js} +2 -2
  243. package/dist/atomic/{p-bbfe727a.entry.js → p-df8d38ca.entry.js} +2 -2
  244. package/dist/atomic/{p-f9608731.entry.js → p-e276c7e0.entry.js} +2 -2
  245. package/dist/atomic/{p-ce5b896e.entry.js → p-e455330c.entry.js} +2 -2
  246. package/dist/atomic/{p-59f043a0.entry.js → p-e49ad083.entry.js} +2 -2
  247. package/dist/atomic/{p-30c09377.entry.js → p-e6871a3f.entry.js} +2 -2
  248. package/dist/atomic/{p-c9f1790d.entry.js → p-e6dc9de7.entry.js} +2 -2
  249. package/dist/atomic/{p-6f1bffa2.entry.js → p-e8176ac8.entry.js} +2 -2
  250. package/dist/atomic/{p-52d5461a.entry.js → p-ed413091.entry.js} +2 -2
  251. package/dist/atomic/p-ef8f2239.entry.js +2 -0
  252. package/dist/atomic/{p-345c425d.entry.js.map → p-ef8f2239.entry.js.map} +1 -1
  253. package/dist/atomic/{p-3549a469.entry.js → p-f0c657f4.entry.js} +2 -2
  254. package/dist/atomic/{p-f936f55e.entry.js → p-f1241140.entry.js} +2 -2
  255. package/dist/atomic/p-f37dea9e.entry.js +2 -0
  256. package/dist/atomic/{p-b6415814.entry.js.map → p-f37dea9e.entry.js.map} +1 -1
  257. package/dist/atomic/p-f4818e53.entry.js +2 -0
  258. package/dist/atomic/p-f537c5af.js +2 -0
  259. package/dist/atomic/p-f537c5af.js.map +1 -0
  260. package/dist/atomic/{p-dd35e7ad.entry.js → p-f65ca329.entry.js} +2 -2
  261. package/dist/atomic/{p-6f34dd3a.entry.js → p-f800678c.entry.js} +2 -2
  262. package/dist/atomic/{p-e7a25b00.entry.js → p-fb517fba.entry.js} +2 -2
  263. package/dist/atomic/{p-97829295.entry.js → p-fc71835d.entry.js} +2 -2
  264. package/dist/atomic/{p-a5f66ecd.entry.js → p-fd1ef9e3.entry.js} +2 -2
  265. package/dist/cjs/_loader.cjs.js +1 -1
  266. package/dist/cjs/atomic-automatic-facet_2.cjs.entry.js +3 -3
  267. package/dist/cjs/atomic-breadbox.cjs.entry.js +2 -2
  268. package/dist/cjs/atomic-category-facet.cjs.entry.js +4 -4
  269. package/dist/cjs/atomic-citation.cjs.entry.js +1 -1
  270. package/dist/cjs/atomic-color-facet.cjs.entry.js +3 -3
  271. package/dist/cjs/atomic-facet-manager.cjs.entry.js +1 -1
  272. package/dist/cjs/atomic-facet-number-input.cjs.entry.js +2 -2
  273. package/dist/cjs/atomic-facet.cjs.entry.js +6 -6
  274. package/dist/cjs/atomic-field-condition.cjs.entry.js +4 -4
  275. package/dist/cjs/atomic-focus-trap.cjs.entry.js +2 -2
  276. package/dist/cjs/atomic-folded-result-list.cjs.entry.js +8 -8
  277. package/dist/cjs/atomic-format-currency.cjs.entry.js +1 -1
  278. package/dist/cjs/atomic-format-number.cjs.entry.js +1 -1
  279. package/dist/cjs/atomic-format-unit.cjs.entry.js +1 -1
  280. package/dist/cjs/atomic-generated-answer-feedback-modal.cjs.entry.js +3 -3
  281. package/dist/cjs/atomic-generated-answer.cjs.entry.js +3 -3
  282. package/dist/cjs/atomic-html.cjs.entry.js +1 -1
  283. package/dist/cjs/atomic-insight-edit-toggle.cjs.entry.js +1 -1
  284. package/dist/cjs/atomic-insight-facet.cjs.entry.js +5 -5
  285. package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js +8 -8
  286. package/dist/cjs/atomic-insight-full-search-button.cjs.entry.js +1 -1
  287. package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js +2 -2
  288. package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js +1 -1
  289. package/dist/cjs/atomic-insight-layout.cjs.entry.js +85 -5
  290. package/dist/cjs/atomic-insight-layout.cjs.entry.js.map +1 -1
  291. package/dist/cjs/atomic-insight-no-results.cjs.entry.js +3 -3
  292. package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js +6 -6
  293. package/dist/cjs/atomic-insight-pager.cjs.entry.js +4 -4
  294. package/dist/cjs/atomic-insight-query-error.cjs.entry.js +3 -3
  295. package/dist/cjs/atomic-insight-query-summary.cjs.entry.js +2 -2
  296. package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js +4 -5
  297. package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js.map +1 -1
  298. package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js +1 -1
  299. package/dist/cjs/atomic-insight-result-action-bar.cjs.entry.js +2 -2
  300. package/dist/cjs/atomic-insight-result-action.cjs.entry.js +1 -1
  301. package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js +1 -1
  302. package/dist/cjs/atomic-insight-result-attach-to-case-indicator.cjs.entry.js +1 -1
  303. package/dist/cjs/atomic-insight-result-children-template.cjs.entry.js +4 -4
  304. package/dist/cjs/atomic-insight-result-children.cjs.entry.js +2 -2
  305. package/dist/cjs/atomic-insight-result-list.cjs.entry.js +8 -8
  306. package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js +3 -3
  307. package/dist/cjs/atomic-insight-result-template.cjs.entry.js +4 -4
  308. package/dist/cjs/atomic-insight-result.cjs.entry.js +7 -7
  309. package/dist/cjs/atomic-insight-search-box.cjs.entry.js +5 -5
  310. package/dist/cjs/atomic-insight-smart-snippet-feedback-modal.cjs.entry.js +4 -4
  311. package/dist/cjs/atomic-insight-smart-snippet-suggestions.cjs.entry.js +1 -1
  312. package/dist/cjs/atomic-insight-smart-snippet.cjs.entry.js +1 -1
  313. package/dist/cjs/atomic-insight-tab.cjs.entry.js +2 -2
  314. package/dist/cjs/atomic-insight-tabs.cjs.entry.js +1 -1
  315. package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js +4 -4
  316. package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js +1 -1
  317. package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js +1 -1
  318. package/dist/cjs/atomic-ipx-body.cjs.entry.js +4 -4
  319. package/dist/cjs/atomic-ipx-button.cjs.entry.js +2 -2
  320. package/dist/cjs/atomic-ipx-embedded.cjs.entry.js +3 -3
  321. package/dist/cjs/atomic-ipx-modal.cjs.entry.js +4 -4
  322. package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +8 -8
  323. package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js +3 -4
  324. package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js.map +1 -1
  325. package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js +1 -1
  326. package/dist/cjs/atomic-ipx-result-link.cjs.entry.js +1 -1
  327. package/dist/cjs/atomic-ipx-tab.cjs.entry.js +1 -2
  328. package/dist/cjs/atomic-ipx-tab.cjs.entry.js.map +1 -1
  329. package/dist/cjs/atomic-ipx-tabs.cjs.entry.js +1 -1
  330. package/dist/cjs/atomic-load-more-results.cjs.entry.js +2 -3
  331. package/dist/cjs/atomic-load-more-results.cjs.entry.js.map +1 -1
  332. package/dist/cjs/atomic-no-results.cjs.entry.js +3 -3
  333. package/dist/cjs/atomic-notifications.cjs.entry.js +2 -2
  334. package/dist/cjs/atomic-numeric-facet.cjs.entry.js +6 -6
  335. package/dist/cjs/atomic-query-error.cjs.entry.js +3 -3
  336. package/dist/cjs/atomic-quickview-modal.cjs.entry.js +1 -1
  337. package/dist/cjs/atomic-quickview.cjs.entry.js +3 -3
  338. package/dist/cjs/atomic-rating-facet.cjs.entry.js +4 -4
  339. package/dist/cjs/atomic-rating-range-facet.cjs.entry.js +3 -3
  340. package/dist/cjs/atomic-recs-error.cjs.entry.js +3 -3
  341. package/dist/cjs/atomic-recs-interface.cjs.entry.js +2927 -18
  342. package/dist/cjs/atomic-recs-interface.cjs.entry.js.map +1 -1
  343. package/dist/cjs/atomic-recs-list.cjs.entry.js +8 -8
  344. package/dist/cjs/atomic-recs-result-template.cjs.entry.js +4 -4
  345. package/dist/cjs/atomic-recs-result.cjs.entry.js +6 -6
  346. package/dist/cjs/atomic-refine-modal.cjs.entry.js +3 -3
  347. package/dist/cjs/atomic-refine-toggle.cjs.entry.js +1 -1
  348. package/dist/cjs/atomic-result-children-template.cjs.entry.js +4 -4
  349. package/dist/cjs/atomic-result-children.cjs.entry.js +2 -2
  350. package/dist/cjs/atomic-result-fields-list.cjs.entry.js +1 -1
  351. package/dist/cjs/atomic-result-icon.cjs.entry.js +1 -1
  352. package/dist/cjs/atomic-result-link.cjs.entry.js +1 -1
  353. package/dist/cjs/atomic-result-list.cjs.entry.js +9 -9
  354. package/dist/cjs/atomic-result-localized-text.cjs.entry.js +2 -2
  355. package/dist/cjs/atomic-result-multi-value-text.cjs.entry.js +1 -1
  356. package/dist/cjs/atomic-result-placeholder_8.cjs.entry.js +7 -7
  357. package/dist/cjs/atomic-result-printable-uri.cjs.entry.js +2 -2
  358. package/dist/cjs/atomic-result-section-children.cjs.entry.js +2 -2
  359. package/dist/cjs/atomic-result-section-emphasized.cjs.entry.js +2 -2
  360. package/dist/cjs/atomic-result-section-title-metadata.cjs.entry.js +2 -2
  361. package/dist/cjs/atomic-result-template.cjs.entry.js +4 -4
  362. package/dist/cjs/atomic-result.cjs.entry.js +6 -6
  363. package/dist/cjs/atomic-search-box-instant-results.cjs.entry.js +1 -1
  364. package/dist/cjs/atomic-search-box-query-suggestions.cjs.entry.js +1 -1
  365. package/dist/cjs/atomic-search-box.cjs.entry.js +11 -7
  366. package/dist/cjs/atomic-search-box.cjs.entry.js.map +1 -1
  367. package/dist/cjs/atomic-segmented-facet.cjs.entry.js +2 -2
  368. package/dist/cjs/atomic-smart-snippet-answer_2.cjs.entry.js +3 -3
  369. package/dist/cjs/atomic-smart-snippet-collapse-wrapper_2.cjs.entry.js +3 -3
  370. package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js +4 -4
  371. package/dist/cjs/atomic-smart-snippet-suggestions.cjs.entry.js +1 -1
  372. package/dist/cjs/atomic-smart-snippet.cjs.entry.js +2 -2
  373. package/dist/cjs/atomic-sort-dropdown.cjs.entry.js +3 -3
  374. package/dist/cjs/atomic-sort-expression.cjs.entry.js +3 -3
  375. package/dist/cjs/atomic-stencil-facet-date-input.cjs.entry.js +3 -3
  376. package/dist/cjs/atomic-suggestion-renderer.cjs.entry.js +1 -1
  377. package/dist/cjs/atomic-tab-bar_2.cjs.entry.js +1 -1
  378. package/dist/cjs/atomic-tab-button.cjs.entry.js +1 -1
  379. package/dist/cjs/atomic-tab-manager.cjs.entry.js +1 -1
  380. package/dist/cjs/atomic-timeframe-facet.cjs.entry.js +4 -4
  381. package/dist/cjs/atomic.cjs.js +1 -1
  382. package/dist/cjs/{cloned-facet-elements-70cd1601.js → cloned-facet-elements-3c7ea837.js} +2 -2
  383. package/dist/cjs/{cloned-facet-elements-70cd1601.js.map → cloned-facet-elements-3c7ea837.js.map} +1 -1
  384. package/dist/cjs/{display-options-69531e8d.js → display-options-10f84088.js} +2 -2
  385. package/dist/cjs/{display-options-69531e8d.js.map → display-options-10f84088.js.map} +1 -1
  386. package/dist/cjs/index-757bc886.js +0 -4
  387. package/dist/cjs/{item-layout-sections-b09ba4b3.js → item-layout-sections-73e27d24.js} +2 -2
  388. package/dist/cjs/{item-layout-sections-b09ba4b3.js.map → item-layout-sections-73e27d24.js.map} +1 -1
  389. package/dist/cjs/{item-section-utils-8579462c.js → item-section-utils-37848715.js} +2 -2
  390. package/dist/cjs/{item-section-utils-8579462c.js.map → item-section-utils-37848715.js.map} +1 -1
  391. package/dist/cjs/{props-utils-1e4ba1b0.js → props-utils-15a042f3.js} +2 -2
  392. package/dist/cjs/{props-utils-1e4ba1b0.js.map → props-utils-15a042f3.js.map} +1 -1
  393. package/dist/cjs/{replace-breakpoint-utils-7a084f54.js → replace-breakpoint-utils-47f2eaa4.js} +1 -2
  394. package/dist/cjs/replace-breakpoint-utils-47f2eaa4.js.map +1 -0
  395. package/dist/cjs/{result-template-common-84bd4057.js → result-template-common-bc03b2ad.js} +3 -3
  396. package/dist/cjs/{result-template-common-84bd4057.js.map → result-template-common-bc03b2ad.js.map} +1 -1
  397. package/dist/cjs/{stencil-accessibility-utils-aa4c9f6c.js → stencil-accessibility-utils-86cc7071.js} +2 -2
  398. package/dist/cjs/{stencil-accessibility-utils-aa4c9f6c.js.map → stencil-accessibility-utils-86cc7071.js.map} +1 -1
  399. package/dist/cjs/{stencil-facet-value-e67c9332.js → stencil-facet-value-5957b403.js} +2 -2
  400. package/dist/cjs/{stencil-facet-value-e67c9332.js.map → stencil-facet-value-5957b403.js.map} +1 -1
  401. package/dist/cjs/{stencil-facet-value-checkbox-62f07459.js → stencil-facet-value-checkbox-fed178ad.js} +2 -2
  402. package/dist/cjs/{stencil-facet-value-checkbox-62f07459.js.map → stencil-facet-value-checkbox-fed178ad.js.map} +1 -1
  403. package/dist/cjs/{stencil-item-list-common-17bd1046.js → stencil-item-list-common-b08abf21.js} +4 -4
  404. package/dist/cjs/{stencil-item-list-common-17bd1046.js.map → stencil-item-list-common-b08abf21.js.map} +1 -1
  405. package/dist/cjs/{stencil-suggestion-manager-2cba6d69.js → stencil-suggestion-manager-88cb88f2.js} +2 -2
  406. package/dist/cjs/stencil-suggestion-manager-88cb88f2.js.map +1 -0
  407. package/dist/cjs/{stencil-values-container-9f50ec1a.js → stencil-values-container-d20f9b28.js} +2 -2
  408. package/dist/cjs/{stencil-values-container-9f50ec1a.js.map → stencil-values-container-d20f9b28.js.map} +1 -1
  409. package/dist/cjs/{store-82abd941.js → store-7927ea61.js} +2 -33
  410. package/dist/cjs/store-7927ea61.js.map +1 -0
  411. package/dist/cjs/{timeframe-facet-common-b5535cca.js → timeframe-facet-common-4ea96ccb.js} +2 -2
  412. package/dist/cjs/{timeframe-facet-common-b5535cca.js.map → timeframe-facet-common-4ea96ccb.js.map} +1 -1
  413. package/dist/cjs/{utils-7153ae6b.js → utils-12b49e87.js} +1 -18
  414. package/dist/cjs/utils-12b49e87.js.map +1 -0
  415. package/dist/cjs/version.cjs.js +1 -1
  416. package/dist/esm/_loader.js +1 -1
  417. package/dist/esm/atomic-automatic-facet_2.entry.js +3 -3
  418. package/dist/esm/atomic-breadbox.entry.js +2 -2
  419. package/dist/esm/atomic-category-facet.entry.js +4 -4
  420. package/dist/esm/atomic-citation.entry.js +1 -1
  421. package/dist/esm/atomic-color-facet.entry.js +3 -3
  422. package/dist/esm/atomic-facet-manager.entry.js +1 -1
  423. package/dist/esm/atomic-facet-number-input.entry.js +2 -2
  424. package/dist/esm/atomic-facet.entry.js +6 -6
  425. package/dist/esm/atomic-field-condition.entry.js +4 -4
  426. package/dist/esm/atomic-focus-trap.entry.js +2 -2
  427. package/dist/esm/atomic-folded-result-list.entry.js +8 -8
  428. package/dist/esm/atomic-format-currency.entry.js +1 -1
  429. package/dist/esm/atomic-format-number.entry.js +1 -1
  430. package/dist/esm/atomic-format-unit.entry.js +1 -1
  431. package/dist/esm/atomic-generated-answer-feedback-modal.entry.js +3 -3
  432. package/dist/esm/atomic-generated-answer.entry.js +3 -3
  433. package/dist/esm/atomic-html.entry.js +1 -1
  434. package/dist/esm/atomic-insight-edit-toggle.entry.js +1 -1
  435. package/dist/esm/atomic-insight-facet.entry.js +5 -5
  436. package/dist/esm/atomic-insight-folded-result-list.entry.js +8 -8
  437. package/dist/esm/atomic-insight-full-search-button.entry.js +1 -1
  438. package/dist/esm/atomic-insight-generated-answer.entry.js +2 -2
  439. package/dist/esm/atomic-insight-history-toggle.entry.js +1 -1
  440. package/dist/esm/atomic-insight-layout.entry.js +83 -3
  441. package/dist/esm/atomic-insight-layout.entry.js.map +1 -1
  442. package/dist/esm/atomic-insight-no-results.entry.js +3 -3
  443. package/dist/esm/atomic-insight-numeric-facet.entry.js +6 -6
  444. package/dist/esm/atomic-insight-pager.entry.js +4 -4
  445. package/dist/esm/atomic-insight-query-error.entry.js +3 -3
  446. package/dist/esm/atomic-insight-query-summary.entry.js +2 -2
  447. package/dist/esm/atomic-insight-refine-modal.entry.js +4 -5
  448. package/dist/esm/atomic-insight-refine-modal.entry.js.map +1 -1
  449. package/dist/esm/atomic-insight-refine-toggle.entry.js +1 -1
  450. package/dist/esm/atomic-insight-result-action-bar.entry.js +2 -2
  451. package/dist/esm/atomic-insight-result-action.entry.js +1 -1
  452. package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js +1 -1
  453. package/dist/esm/atomic-insight-result-attach-to-case-indicator.entry.js +1 -1
  454. package/dist/esm/atomic-insight-result-children-template.entry.js +4 -4
  455. package/dist/esm/atomic-insight-result-children.entry.js +2 -2
  456. package/dist/esm/atomic-insight-result-list.entry.js +8 -8
  457. package/dist/esm/atomic-insight-result-quickview-action.entry.js +3 -3
  458. package/dist/esm/atomic-insight-result-template.entry.js +4 -4
  459. package/dist/esm/atomic-insight-result.entry.js +7 -7
  460. package/dist/esm/atomic-insight-search-box.entry.js +5 -5
  461. package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js +4 -4
  462. package/dist/esm/atomic-insight-smart-snippet-suggestions.entry.js +1 -1
  463. package/dist/esm/atomic-insight-smart-snippet.entry.js +1 -1
  464. package/dist/esm/atomic-insight-tab.entry.js +2 -2
  465. package/dist/esm/atomic-insight-tabs.entry.js +1 -1
  466. package/dist/esm/atomic-insight-timeframe-facet.entry.js +4 -4
  467. package/dist/esm/atomic-insight-user-actions-session_2.entry.js +1 -1
  468. package/dist/esm/atomic-insight-user-actions-toggle.entry.js +1 -1
  469. package/dist/esm/atomic-ipx-body.entry.js +4 -4
  470. package/dist/esm/atomic-ipx-button.entry.js +2 -2
  471. package/dist/esm/atomic-ipx-embedded.entry.js +3 -3
  472. package/dist/esm/atomic-ipx-modal.entry.js +4 -4
  473. package/dist/esm/atomic-ipx-recs-list.entry.js +8 -8
  474. package/dist/esm/atomic-ipx-refine-modal.entry.js +3 -4
  475. package/dist/esm/atomic-ipx-refine-modal.entry.js.map +1 -1
  476. package/dist/esm/atomic-ipx-refine-toggle.entry.js +1 -1
  477. package/dist/esm/atomic-ipx-result-link.entry.js +1 -1
  478. package/dist/esm/atomic-ipx-tab.entry.js +1 -2
  479. package/dist/esm/atomic-ipx-tab.entry.js.map +1 -1
  480. package/dist/esm/atomic-ipx-tabs.entry.js +1 -1
  481. package/dist/esm/atomic-load-more-results.entry.js +2 -3
  482. package/dist/esm/atomic-load-more-results.entry.js.map +1 -1
  483. package/dist/esm/atomic-no-results.entry.js +3 -3
  484. package/dist/esm/atomic-notifications.entry.js +2 -2
  485. package/dist/esm/atomic-numeric-facet.entry.js +6 -6
  486. package/dist/esm/atomic-query-error.entry.js +3 -3
  487. package/dist/esm/atomic-quickview-modal.entry.js +1 -1
  488. package/dist/esm/atomic-quickview.entry.js +3 -3
  489. package/dist/esm/atomic-rating-facet.entry.js +4 -4
  490. package/dist/esm/atomic-rating-range-facet.entry.js +3 -3
  491. package/dist/esm/atomic-recs-error.entry.js +3 -3
  492. package/dist/esm/atomic-recs-interface.entry.js +2919 -10
  493. package/dist/esm/atomic-recs-interface.entry.js.map +1 -1
  494. package/dist/esm/atomic-recs-list.entry.js +8 -8
  495. package/dist/esm/atomic-recs-result-template.entry.js +4 -4
  496. package/dist/esm/atomic-recs-result.entry.js +6 -6
  497. package/dist/esm/atomic-refine-modal.entry.js +3 -3
  498. package/dist/esm/atomic-refine-toggle.entry.js +1 -1
  499. package/dist/esm/atomic-result-children-template.entry.js +4 -4
  500. package/dist/esm/atomic-result-children.entry.js +2 -2
  501. package/dist/esm/atomic-result-fields-list.entry.js +1 -1
  502. package/dist/esm/atomic-result-icon.entry.js +1 -1
  503. package/dist/esm/atomic-result-link.entry.js +1 -1
  504. package/dist/esm/atomic-result-list.entry.js +9 -9
  505. package/dist/esm/atomic-result-localized-text.entry.js +2 -2
  506. package/dist/esm/atomic-result-multi-value-text.entry.js +1 -1
  507. package/dist/esm/atomic-result-placeholder_8.entry.js +7 -7
  508. package/dist/esm/atomic-result-printable-uri.entry.js +2 -2
  509. package/dist/esm/atomic-result-section-children.entry.js +2 -2
  510. package/dist/esm/atomic-result-section-emphasized.entry.js +2 -2
  511. package/dist/esm/atomic-result-section-title-metadata.entry.js +2 -2
  512. package/dist/esm/atomic-result-template.entry.js +4 -4
  513. package/dist/esm/atomic-result.entry.js +6 -6
  514. package/dist/esm/atomic-search-box-instant-results.entry.js +1 -1
  515. package/dist/esm/atomic-search-box-query-suggestions.entry.js +1 -1
  516. package/dist/esm/atomic-search-box.entry.js +11 -7
  517. package/dist/esm/atomic-search-box.entry.js.map +1 -1
  518. package/dist/esm/atomic-segmented-facet.entry.js +2 -2
  519. package/dist/esm/atomic-smart-snippet-answer_2.entry.js +3 -3
  520. package/dist/esm/atomic-smart-snippet-collapse-wrapper_2.entry.js +3 -3
  521. package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js +4 -4
  522. package/dist/esm/atomic-smart-snippet-suggestions.entry.js +1 -1
  523. package/dist/esm/atomic-smart-snippet.entry.js +2 -2
  524. package/dist/esm/atomic-sort-dropdown.entry.js +3 -3
  525. package/dist/esm/atomic-sort-expression.entry.js +3 -3
  526. package/dist/esm/atomic-stencil-facet-date-input.entry.js +3 -3
  527. package/dist/esm/atomic-suggestion-renderer.entry.js +1 -1
  528. package/dist/esm/atomic-tab-bar_2.entry.js +1 -1
  529. package/dist/esm/atomic-tab-button.entry.js +1 -1
  530. package/dist/esm/atomic-tab-manager.entry.js +1 -1
  531. package/dist/esm/atomic-timeframe-facet.entry.js +4 -4
  532. package/dist/esm/atomic.js +1 -1
  533. package/dist/esm/{cloned-facet-elements-807b566b.js → cloned-facet-elements-82071d0c.js} +2 -2
  534. package/dist/esm/{cloned-facet-elements-807b566b.js.map → cloned-facet-elements-82071d0c.js.map} +1 -1
  535. package/dist/esm/{display-options-1199eed5.js → display-options-b7c33617.js} +2 -2
  536. package/dist/esm/{display-options-1199eed5.js.map → display-options-b7c33617.js.map} +1 -1
  537. package/dist/esm/index-3f35faca.js +0 -4
  538. package/dist/esm/{item-layout-sections-8afb5049.js → item-layout-sections-26123790.js} +2 -2
  539. package/dist/esm/{item-layout-sections-8afb5049.js.map → item-layout-sections-26123790.js.map} +1 -1
  540. package/dist/esm/{item-section-utils-46828f30.js → item-section-utils-d8aa24b7.js} +2 -2
  541. package/dist/esm/{item-section-utils-46828f30.js.map → item-section-utils-d8aa24b7.js.map} +1 -1
  542. package/dist/esm/{props-utils-e97ad6bd.js → props-utils-6040b5d2.js} +2 -2
  543. package/dist/esm/{props-utils-e97ad6bd.js.map → props-utils-6040b5d2.js.map} +1 -1
  544. package/dist/esm/{replace-breakpoint-utils-7a336631.js → replace-breakpoint-utils-13ff9ca5.js} +2 -2
  545. package/dist/esm/replace-breakpoint-utils-13ff9ca5.js.map +1 -0
  546. package/dist/esm/{result-template-common-995b94f8.js → result-template-common-47799c7c.js} +3 -3
  547. package/dist/esm/{result-template-common-995b94f8.js.map → result-template-common-47799c7c.js.map} +1 -1
  548. package/dist/esm/{stencil-accessibility-utils-196a08f3.js → stencil-accessibility-utils-ae75044b.js} +2 -2
  549. package/dist/esm/{stencil-accessibility-utils-196a08f3.js.map → stencil-accessibility-utils-ae75044b.js.map} +1 -1
  550. package/dist/esm/{stencil-facet-value-30dc9b6c.js → stencil-facet-value-9deafe8e.js} +2 -2
  551. package/dist/esm/{stencil-facet-value-30dc9b6c.js.map → stencil-facet-value-9deafe8e.js.map} +1 -1
  552. package/dist/esm/{stencil-facet-value-checkbox-0637f7f8.js → stencil-facet-value-checkbox-c0df7c4e.js} +2 -2
  553. package/dist/esm/{stencil-facet-value-checkbox-0637f7f8.js.map → stencil-facet-value-checkbox-c0df7c4e.js.map} +1 -1
  554. package/dist/esm/{stencil-item-list-common-fc95e16b.js → stencil-item-list-common-d2833d51.js} +4 -4
  555. package/dist/esm/{stencil-item-list-common-fc95e16b.js.map → stencil-item-list-common-d2833d51.js.map} +1 -1
  556. package/dist/esm/{stencil-suggestion-manager-376f83e8.js → stencil-suggestion-manager-1f4ed8d0.js} +2 -2
  557. package/dist/esm/stencil-suggestion-manager-1f4ed8d0.js.map +1 -0
  558. package/dist/esm/{stencil-values-container-55a7e816.js → stencil-values-container-9b9cd73f.js} +2 -2
  559. package/dist/esm/{stencil-values-container-55a7e816.js.map → stencil-values-container-9b9cd73f.js.map} +1 -1
  560. package/dist/esm/{store-015afa83.js → store-7d2c2a8c.js} +3 -31
  561. package/dist/esm/store-7d2c2a8c.js.map +1 -0
  562. package/dist/esm/{timeframe-facet-common-eb1016d2.js → timeframe-facet-common-55fc72f3.js} +2 -2
  563. package/dist/esm/{timeframe-facet-common-eb1016d2.js.map → timeframe-facet-common-55fc72f3.js.map} +1 -1
  564. package/dist/esm/{utils-7161486d.js → utils-6400ebde.js} +2 -18
  565. package/dist/esm/utils-6400ebde.js.map +1 -0
  566. package/dist/esm/version.js +1 -1
  567. package/dist/types/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.d.ts +2 -0
  568. package/dist/types/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.d.ts +1 -0
  569. package/dist/types/components/commerce/atomic-commerce-search-box-recent-queries/atomic-commerce-search-box-recent-queries.d.ts +2 -0
  570. package/dist/types/components/common/breadbox/breadcrumb-button.d.ts +2 -0
  571. package/dist/types/components/insight/atomic-insight-interface/atomic-insight-interface.d.ts +35 -42
  572. package/dist/types/components/insight/index.d.ts +1 -1
  573. package/dist/types/components/search/atomic-search-box/atomic-search-box.d.ts +1 -0
  574. package/dist/types/components.d.ts +4 -113
  575. package/dist/types/directives/hierarchical-path.d.ts +1 -1
  576. package/docs/atomic-docs.json +6 -421
  577. package/package.json +1 -1
  578. package/dist/atomic/components/analytics-config.js +0 -2918
  579. package/dist/atomic/components/analytics-config.js.map +0 -1
  580. package/dist/atomic/components/atomic-insight-interface.d.ts +0 -11
  581. package/dist/atomic/components/atomic-insight-interface.js +0 -332
  582. package/dist/atomic/components/atomic-insight-interface.js.map +0 -1
  583. package/dist/atomic/components/insight-layout.js +0 -87
  584. package/dist/atomic/components/insight-layout.js.map +0 -1
  585. package/dist/atomic/p-0e62bdd6.js +0 -2
  586. package/dist/atomic/p-0e62bdd6.js.map +0 -1
  587. package/dist/atomic/p-16f4ce98.js +0 -2
  588. package/dist/atomic/p-16f4ce98.js.map +0 -1
  589. package/dist/atomic/p-26598ee0.js +0 -2
  590. package/dist/atomic/p-28e882e8.js +0 -2
  591. package/dist/atomic/p-2e721bf7.entry.js +0 -2
  592. package/dist/atomic/p-2e721bf7.entry.js.map +0 -1
  593. package/dist/atomic/p-345c425d.entry.js +0 -2
  594. package/dist/atomic/p-4913eb5c.js +0 -2
  595. package/dist/atomic/p-4913eb5c.js.map +0 -1
  596. package/dist/atomic/p-5387f396.entry.js +0 -2
  597. package/dist/atomic/p-5387f396.entry.js.map +0 -1
  598. package/dist/atomic/p-56c97c3e.js +0 -2
  599. package/dist/atomic/p-768b172e.entry.js +0 -2
  600. package/dist/atomic/p-768b172e.entry.js.map +0 -1
  601. package/dist/atomic/p-83d3857f.entry.js.map +0 -1
  602. package/dist/atomic/p-a12e1c59.js +0 -2
  603. package/dist/atomic/p-a12e1c59.js.map +0 -1
  604. package/dist/atomic/p-a1522fe5.entry.js +0 -2
  605. package/dist/atomic/p-a1ee594f.entry.js +0 -2
  606. package/dist/atomic/p-b6415814.entry.js +0 -2
  607. package/dist/atomic/p-c2b4b401.entry.js +0 -2
  608. package/dist/atomic/p-c7af4b9e.entry.js +0 -2
  609. package/dist/atomic/p-cc0bf58b.js +0 -2
  610. package/dist/atomic/p-cc0bf58b.js.map +0 -1
  611. package/dist/cjs/analytics-config-c215586d.js +0 -2927
  612. package/dist/cjs/analytics-config-c215586d.js.map +0 -1
  613. package/dist/cjs/atomic-insight-interface.cjs.entry.js +0 -307
  614. package/dist/cjs/atomic-insight-interface.cjs.entry.js.map +0 -1
  615. package/dist/cjs/insight-layout-b6ff92fd.js +0 -90
  616. package/dist/cjs/insight-layout-b6ff92fd.js.map +0 -1
  617. package/dist/cjs/replace-breakpoint-utils-7a084f54.js.map +0 -1
  618. package/dist/cjs/stencil-suggestion-manager-2cba6d69.js.map +0 -1
  619. package/dist/cjs/store-82abd941.js.map +0 -1
  620. package/dist/cjs/utils-7153ae6b.js.map +0 -1
  621. package/dist/esm/analytics-config-f3ba6c2b.js +0 -2918
  622. package/dist/esm/analytics-config-f3ba6c2b.js.map +0 -1
  623. package/dist/esm/atomic-insight-interface.entry.js +0 -303
  624. package/dist/esm/atomic-insight-interface.entry.js.map +0 -1
  625. package/dist/esm/insight-layout-a1e4b795.js +0 -87
  626. package/dist/esm/insight-layout-a1e4b795.js.map +0 -1
  627. package/dist/esm/replace-breakpoint-utils-7a336631.js.map +0 -1
  628. package/dist/esm/stencil-suggestion-manager-376f83e8.js.map +0 -1
  629. package/dist/esm/store-015afa83.js.map +0 -1
  630. package/dist/esm/utils-7161486d.js.map +0 -1
  631. /package/dist/atomic/{p-27cf779a.js.map → p-025a346a.js.map} +0 -0
  632. /package/dist/atomic/{p-7e971d15.entry.js.map → p-044de1f9.entry.js.map} +0 -0
  633. /package/dist/atomic/{p-fe59fb2d.entry.js.map → p-0535b93d.entry.js.map} +0 -0
  634. /package/dist/atomic/{p-31a13850.js.map → p-0580b866.js.map} +0 -0
  635. /package/dist/atomic/{p-0edea6f9.entry.js.map → p-05f1ff6f.entry.js.map} +0 -0
  636. /package/dist/atomic/{p-3e9db2b5.entry.js.map → p-088d634c.entry.js.map} +0 -0
  637. /package/dist/atomic/{p-4bdc6d5a.entry.js.map → p-0ee7cab8.entry.js.map} +0 -0
  638. /package/dist/atomic/{p-0f449e9d.entry.js.map → p-14bad769.entry.js.map} +0 -0
  639. /package/dist/atomic/{p-01511388.entry.js.map → p-15547bd5.entry.js.map} +0 -0
  640. /package/dist/atomic/{p-b313058c.entry.js.map → p-182f9112.entry.js.map} +0 -0
  641. /package/dist/atomic/{p-00069a4b.entry.js.map → p-1910eb7f.entry.js.map} +0 -0
  642. /package/dist/atomic/{p-85145c88.entry.js.map → p-1c8bcadf.entry.js.map} +0 -0
  643. /package/dist/atomic/{p-cafa4083.entry.js.map → p-21ab7750.entry.js.map} +0 -0
  644. /package/dist/atomic/{p-9a6ec803.entry.js.map → p-229018fa.entry.js.map} +0 -0
  645. /package/dist/atomic/{p-89d8bb0d.entry.js.map → p-22b76c96.entry.js.map} +0 -0
  646. /package/dist/atomic/{p-36f63642.entry.js.map → p-26e0c1f8.entry.js.map} +0 -0
  647. /package/dist/atomic/{p-c4fb6426.entry.js.map → p-2e13e2c0.entry.js.map} +0 -0
  648. /package/dist/atomic/{p-6098b906.entry.js.map → p-2f437b47.entry.js.map} +0 -0
  649. /package/dist/atomic/{p-998393ec.entry.js.map → p-2f517a54.entry.js.map} +0 -0
  650. /package/dist/atomic/{p-06284430.entry.js.map → p-318c96f5.entry.js.map} +0 -0
  651. /package/dist/atomic/{p-0ed76e65.entry.js.map → p-3272a04b.entry.js.map} +0 -0
  652. /package/dist/atomic/{p-d211a422.entry.js.map → p-3291adda.entry.js.map} +0 -0
  653. /package/dist/atomic/{p-dbc0ce5c.entry.js.map → p-33245038.entry.js.map} +0 -0
  654. /package/dist/atomic/{p-fa658ef2.entry.js.map → p-35c2ee5f.entry.js.map} +0 -0
  655. /package/dist/atomic/{p-3d55fce6.entry.js.map → p-36e2c945.entry.js.map} +0 -0
  656. /package/dist/atomic/{p-af1b4924.entry.js.map → p-3bd8469f.entry.js.map} +0 -0
  657. /package/dist/atomic/{p-e62fc40e.js.map → p-3ef52afa.js.map} +0 -0
  658. /package/dist/atomic/{p-170c7da6.entry.js.map → p-400c28b6.entry.js.map} +0 -0
  659. /package/dist/atomic/{p-fafd5042.entry.js.map → p-448091f7.entry.js.map} +0 -0
  660. /package/dist/atomic/{p-fe3cd55b.entry.js.map → p-44d96103.entry.js.map} +0 -0
  661. /package/dist/atomic/{p-da845e35.entry.js.map → p-463336ca.entry.js.map} +0 -0
  662. /package/dist/atomic/{p-f9dd14b2.entry.js.map → p-479cb38a.entry.js.map} +0 -0
  663. /package/dist/atomic/{p-a9383817.entry.js.map → p-47b41b27.entry.js.map} +0 -0
  664. /package/dist/atomic/{p-be2a43f4.entry.js.map → p-48bab1a6.entry.js.map} +0 -0
  665. /package/dist/atomic/{p-0c8e7d5f.entry.js.map → p-4cb91ee7.entry.js.map} +0 -0
  666. /package/dist/atomic/{p-23d4dc54.entry.js.map → p-558f2191.entry.js.map} +0 -0
  667. /package/dist/atomic/{p-8572a953.entry.js.map → p-55c41e00.entry.js.map} +0 -0
  668. /package/dist/atomic/{p-2e4628bb.entry.js.map → p-57049cd2.entry.js.map} +0 -0
  669. /package/dist/atomic/{p-edd4d5f7.js.map → p-5a2ef889.js.map} +0 -0
  670. /package/dist/atomic/{p-dc128135.entry.js.map → p-5a83b7e5.entry.js.map} +0 -0
  671. /package/dist/atomic/{p-10b5e0f3.entry.js.map → p-5b8cc4bc.entry.js.map} +0 -0
  672. /package/dist/atomic/{p-87f69e53.entry.js.map → p-5cab535b.entry.js.map} +0 -0
  673. /package/dist/atomic/{p-56c97c3e.js.map → p-5d0fc7e2.js.map} +0 -0
  674. /package/dist/atomic/{p-740cd5bc.entry.js.map → p-6439156c.entry.js.map} +0 -0
  675. /package/dist/atomic/{p-7e9a1a1a.entry.js.map → p-66166975.entry.js.map} +0 -0
  676. /package/dist/atomic/{p-97538903.entry.js.map → p-6698d5e9.entry.js.map} +0 -0
  677. /package/dist/atomic/{p-0610b3e7.entry.js.map → p-6819f12c.entry.js.map} +0 -0
  678. /package/dist/atomic/{p-28e882e8.js.map → p-6b3429d3.js.map} +0 -0
  679. /package/dist/atomic/{p-6078667f.entry.js.map → p-7045745d.entry.js.map} +0 -0
  680. /package/dist/atomic/{p-a130b00b.entry.js.map → p-70747efa.entry.js.map} +0 -0
  681. /package/dist/atomic/{p-4830b9bb.entry.js.map → p-7242b46e.entry.js.map} +0 -0
  682. /package/dist/atomic/{p-3af2fca0.js.map → p-7427daa3.js.map} +0 -0
  683. /package/dist/atomic/{p-b320f270.entry.js.map → p-76c14d82.entry.js.map} +0 -0
  684. /package/dist/atomic/{p-1435fb6f.entry.js.map → p-7741124a.entry.js.map} +0 -0
  685. /package/dist/atomic/{p-cdeb5f2a.entry.js.map → p-77d00da1.entry.js.map} +0 -0
  686. /package/dist/atomic/{p-519d9abd.entry.js.map → p-7fd58269.entry.js.map} +0 -0
  687. /package/dist/atomic/{p-f76b7ac3.entry.js.map → p-80290dd3.entry.js.map} +0 -0
  688. /package/dist/atomic/{p-b6ae0244.entry.js.map → p-81bdbd07.entry.js.map} +0 -0
  689. /package/dist/atomic/{p-dc28ee14.js.map → p-828ab4ff.js.map} +0 -0
  690. /package/dist/atomic/{p-723f76a1.entry.js.map → p-82cd6398.entry.js.map} +0 -0
  691. /package/dist/atomic/{p-fdcd187d.entry.js.map → p-851b9735.entry.js.map} +0 -0
  692. /package/dist/atomic/{p-40c1dfcb.entry.js.map → p-874f0a4c.entry.js.map} +0 -0
  693. /package/dist/atomic/{p-373448df.entry.js.map → p-8b0cf1d4.entry.js.map} +0 -0
  694. /package/dist/atomic/{p-36112c34.entry.js.map → p-8b0d881e.entry.js.map} +0 -0
  695. /package/dist/atomic/{p-ee957926.entry.js.map → p-8d5228da.entry.js.map} +0 -0
  696. /package/dist/atomic/{p-c25f1437.entry.js.map → p-955092ed.entry.js.map} +0 -0
  697. /package/dist/atomic/{p-47ab6c9f.entry.js.map → p-99d4c4bf.entry.js.map} +0 -0
  698. /package/dist/atomic/{p-edede7d1.entry.js.map → p-9aad555a.entry.js.map} +0 -0
  699. /package/dist/atomic/{p-2250f505.js.map → p-9ae68e86.js.map} +0 -0
  700. /package/dist/atomic/{p-00a6ab8c.entry.js.map → p-a0ebbbdf.entry.js.map} +0 -0
  701. /package/dist/atomic/{p-7fd5b6ac.entry.js.map → p-a1798150.entry.js.map} +0 -0
  702. /package/dist/atomic/{p-9239be63.entry.js.map → p-a54f3f24.entry.js.map} +0 -0
  703. /package/dist/atomic/{p-24fd7df6.entry.js.map → p-a6dde0f6.entry.js.map} +0 -0
  704. /package/dist/atomic/{p-a1e5f767.entry.js.map → p-a78cbb80.entry.js.map} +0 -0
  705. /package/dist/atomic/{p-59b15bd6.entry.js.map → p-ae69f519.entry.js.map} +0 -0
  706. /package/dist/atomic/{p-98dd6df1.entry.js.map → p-b06de6f8.entry.js.map} +0 -0
  707. /package/dist/atomic/{p-fdd0aa42.entry.js.map → p-b1b583a0.entry.js.map} +0 -0
  708. /package/dist/atomic/{p-3c9289b5.js.map → p-b29d121c.js.map} +0 -0
  709. /package/dist/atomic/{p-cb3fd0f4.entry.js.map → p-b84108f3.entry.js.map} +0 -0
  710. /package/dist/atomic/{p-fb1a1e2e.entry.js.map → p-b85c2c46.entry.js.map} +0 -0
  711. /package/dist/atomic/{p-9260dd7d.entry.js.map → p-b9eeac20.entry.js.map} +0 -0
  712. /package/dist/atomic/{p-b2b9e83f.entry.js.map → p-bc43df67.entry.js.map} +0 -0
  713. /package/dist/atomic/{p-93601dc0.entry.js.map → p-bd01acd5.entry.js.map} +0 -0
  714. /package/dist/atomic/{p-416d088e.entry.js.map → p-be011bd1.entry.js.map} +0 -0
  715. /package/dist/atomic/{p-4f4c9a03.entry.js.map → p-c2a5dac0.entry.js.map} +0 -0
  716. /package/dist/atomic/{p-93f1d551.entry.js.map → p-c5164dbf.entry.js.map} +0 -0
  717. /package/dist/atomic/{p-3622ed6c.js.map → p-c619df9b.js.map} +0 -0
  718. /package/dist/atomic/{p-1bbaf206.entry.js.map → p-c8190eb9.entry.js.map} +0 -0
  719. /package/dist/atomic/{p-5ca21deb.js.map → p-ca37969c.js.map} +0 -0
  720. /package/dist/atomic/{p-7cced247.entry.js.map → p-d0ab0125.entry.js.map} +0 -0
  721. /package/dist/atomic/{p-2fb49fe8.entry.js.map → p-d8caa4d8.entry.js.map} +0 -0
  722. /package/dist/atomic/{p-62e85c20.entry.js.map → p-da87ef51.entry.js.map} +0 -0
  723. /package/dist/atomic/{p-367ec37d.entry.js.map → p-db2d92c5.entry.js.map} +0 -0
  724. /package/dist/atomic/{p-dbf0c5a3.entry.js.map → p-db3b11ca.entry.js.map} +0 -0
  725. /package/dist/atomic/{p-20b33c18.entry.js.map → p-dd24c66a.entry.js.map} +0 -0
  726. /package/dist/atomic/{p-0f39889d.entry.js.map → p-dea22a8d.entry.js.map} +0 -0
  727. /package/dist/atomic/{p-bbfe727a.entry.js.map → p-df8d38ca.entry.js.map} +0 -0
  728. /package/dist/atomic/{p-f9608731.entry.js.map → p-e276c7e0.entry.js.map} +0 -0
  729. /package/dist/atomic/{p-ce5b896e.entry.js.map → p-e455330c.entry.js.map} +0 -0
  730. /package/dist/atomic/{p-59f043a0.entry.js.map → p-e49ad083.entry.js.map} +0 -0
  731. /package/dist/atomic/{p-30c09377.entry.js.map → p-e6871a3f.entry.js.map} +0 -0
  732. /package/dist/atomic/{p-c9f1790d.entry.js.map → p-e6dc9de7.entry.js.map} +0 -0
  733. /package/dist/atomic/{p-6f1bffa2.entry.js.map → p-e8176ac8.entry.js.map} +0 -0
  734. /package/dist/atomic/{p-52d5461a.entry.js.map → p-ed413091.entry.js.map} +0 -0
  735. /package/dist/atomic/{p-3549a469.entry.js.map → p-f0c657f4.entry.js.map} +0 -0
  736. /package/dist/atomic/{p-f936f55e.entry.js.map → p-f1241140.entry.js.map} +0 -0
  737. /package/dist/atomic/{p-c2b4b401.entry.js.map → p-f4818e53.entry.js.map} +0 -0
  738. /package/dist/atomic/{p-dd35e7ad.entry.js.map → p-f65ca329.entry.js.map} +0 -0
  739. /package/dist/atomic/{p-6f34dd3a.entry.js.map → p-f800678c.entry.js.map} +0 -0
  740. /package/dist/atomic/{p-e7a25b00.entry.js.map → p-fb517fba.entry.js.map} +0 -0
  741. /package/dist/atomic/{p-97829295.entry.js.map → p-fc71835d.entry.js.map} +0 -0
  742. /package/dist/atomic/{p-a5f66ecd.entry.js.map → p-fd1ef9e3.entry.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"names":["isString","obj","defer","res","rej","promise","Promise","resolve","reject","makeString","object","copy","a","s","t","forEach","m","lastOfPathSeparatorRegExp","cleanKey","key","indexOf","replace","canNotTraverseDeeper","getLastOfPath","path","Empty","stack","split","stackIndex","length","Object","prototype","hasOwnProperty","call","k","setPath","newValue","undefined","e","p","slice","last","pushPath","concat","push","getPath","getPathWithDefaults","data","defaultData","value","deepExtend","target","source","overwrite","prop","String","regexEscape","str","_entityMap","escape","RegExpCache","constructor","capacity","this","regExpMap","Map","regExpQueue","getRegExp","pattern","regExpFromCache","get","regExpNew","RegExp","delete","shift","set","chars","looksLikeObjectPathRegExpCache","looksLikeObjectPath","nsSeparator","keySeparator","possibleChars","filter","c","r","map","join","matched","test","ki","substring","deepFind","tokens","current","i","next","nextPath","j","getCleanedCode","code","consoleLogger","type","log","args","output","warn","error","console","apply","Logger","concreteLogger","options","init","prefix","logger","debug","forward","deprecate","lvl","debugOnly","create","moduleName","clone","baseLogger","EventEmitter","observers","on","events","listener","event","numListeners","off","emit","cloned","Array","from","entries","observer","numTimesAdded","ResourceStore","ns","defaultNS","super","ignoreJSONStructure","addNamespaces","removeNamespaces","index","splice","getResource","lng","isArray","result","addResource","silent","addResources","resources","addResourceBundle","deep","skipCopy","pack","JSON","parse","stringify","removeResourceBundle","hasResourceBundle","getResourceBundle","getDataByLanguage","hasLanguageSomeTranslations","n","keys","find","v","toJSON","postProcessor","processors","addPostProcessor","module","name","handle","translator","processor","process","checkedLoadedFor","shouldHandleAsObject","Translator","services","changeLanguage","language","exists","o","interpolation","opt","resolved","extractFromKey","namespaces","wouldCheckForNsInKey","seemsNaturalLanguage","userDefinedKeySeparator","userDefinedNsSeparator","match","interpolator","nestingRegexp","parts","translate","lastKey","overloadTranslationOptionHandler","arguments","returnDetails","namespace","appendNamespaceToCIMode","toLowerCase","usedKey","exactUsedKey","usedLng","usedNS","usedParams","getUsedParamsDetails","resUsedKey","resExactUsedKey","noObject","joinArrays","handleAsObjectInI18nFormat","i18nFormat","handleAsObject","needsPluralHandling","count","hasDefaultValue","defaultValueSuffix","pluralResolver","getSuffix","defaultValueSuffixOrdinalFallback","ordinal","needsZeroSuffixLookup","defaultValue","pluralSeparator","resForObjHndl","resType","toString","returnObjects","returnedObjectHandler","resTypeIsArray","newKeyToUse","deepKey","extendTranslation","usedDefault","isValidLookup","missingKeyNoValueFallbackToKey","resForMissing","updateMissing","fk","lngs","fallbackLngs","languageUtils","getFallbackCodes","fallbackLng","saveMissingTo","toResolveHierarchy","send","l","specificDefaultValue","defaultForMissing","missingKeyHandler","backendConnector","saveMissing","saveMissingPlurals","suffixes","getSuffixes","suffix","appendNamespaceToMissingKey","parseMissingKeyHandler","defaultVariables","skipInterpolation","skipOnVariables","nestBef","nb","interpolate","na","nestAft","nest","context","reset","postProcess","postProcessorNames","applyPostProcessor","postProcessPassResolved","i18nResolved","found","extracted","fallbackNS","needsContextHandling","codes","utils","hasLoadedNamespace","finalKeys","addLookupKeys","pluralSuffix","zeroSuffix","ordinalPrefix","contextKey","contextSeparator","possibleKey","pop","returnNull","returnEmptyString","resourceStore","optionsKeys","useOptionsReplaceForData","option","LanguageUtil","supportedLngs","getScriptPartFromCode","formatLanguageCode","getLanguagePartFromCode","formattedCode","Intl","getCanonicalLocales","lowerCaseLng","cleanCode","isSupportedCode","load","nonExplicitSupportedLngs","getBestMatchFromCodes","cleanedLng","lngScOnly","lngOnly","supportedLng","fallbacks","default","fallbackCode","fallbackCodes","addCode","fc","suffixesOrder","zero","one","two","few","many","other","dummyRule","select","resolvedOptions","pluralCategories","PluralResolver","pluralRulesCache","addRule","rules","clearCache","getRule","cleanedCode","cacheKey","rule","PluralRules","err","lngPart","needsPlural","getPluralFormsOfKey","sort","pluralCategory1","pluralCategory2","pluralCategory","prepend","deepFindWithDefaults","regexSafe","val","Interpolator","format","escapeValue","escape$1","useRawValueToEscape","prefixEscaped","suffixEscaped","formatSeparator","unescapeSuffix","unescapePrefix","nestingPrefix","nestingPrefixEscaped","nestingSuffix","nestingSuffixEscaped","nestingOptionsSeparator","maxReplaces","alwaysFormat","resetRegExp","getOrResetRegExp","existingRegExp","lastIndex","regexp","regexpUnescape","replaces","handleFormat","interpolationkey","trim","f","missingInterpolationHandler","todos","regex","safeValue","todo","exec","matchedVar","temp","clonedOptions","handleHasOptions","inheritedOptions","sep","optionsString","matchedSingleQuotes","matchedDoubleQuotes","formatters","keyEndIndex","lastIndexOf","elem","Boolean","reduce","parseFormatStr","formatStr","formatName","formatOptions","optStr","currency","range","opts","rest","trimmedKey","isNaN","parseInt","createCachedFormatter","fn","cache","optForCache","formatParams","frm","createNonCachedFormatter","Formatter","cf","cacheInBuiltFormats","formats","number","formatter","NumberFormat","style","datetime","DateTimeFormat","relativetime","RelativeTimeFormat","list","ListFormat","add","addCached","findIndex","mem","formatted","valOptions","locale","removePending","q","pending","pendingCount","Connector","backend","store","waitingReads","maxParallelReads","readingCalls","maxRetries","retryTimeout","state","queue","queueLoad","languages","callback","toLoad","toLoadLanguages","toLoadNamespaces","hasAllNamespaces","reload","loaded","errors","done","loadedKeys","read","fcName","tried","wait","resolver","setTimeout","bind","then","catch","prepareLoading","loadOne","fallbackValue","isUpdate","clb","initAsync","preload","simplifyPluralSuffix","partialBundledLanguages","ret","tDescription","transformOptions","initImmediate","noop","bindMemberFunctions","inst","mems","getOwnPropertyNames","getPrototypeOf","I18n","modules","external","isInitialized","isClone","isInitializing","defOpts","createClassOnDemand","ClassOrObject","lu","usingLegacyFormatFunction","languageDetector","detection","storeApi","storeApiChained","deferred","finish","initializedStoreOnce","loadResources","usedCallback","append","resolvedLanguage","setResolvedLanguage","reloadResources","use","Error","li","lngInLngs","unshift","isLanguageChangingTo","setLngProps","setLng","fl","cacheUserLanguage","async","detect","getFixedT","keyPrefix","fixedT","resultKey","setDefaultNamespace","lastLng","loadNotPending","loadState","precheck","preResult","loadNamespaces","loadLanguages","preloaded","newLngs","dir","Locale","getTextInfo","ti","direction","rtlLngs","createInstance","cloneInstance","forkResourceStore","mergedOptions","membersToCopy","clonedData","prev","acc","instance","getWindow","window","getAtomicEnvironment","headlessVersion","version","getAtomicVersion","setCoveoGlobal","globalVariableName","locales","af","import","am","ar","az","be","b","bg","bi","bm","bn","bo","br","bs","ca","cs","cv","cy","d","da","de","dv","el","eo","en","et","es","eu","fa","fo","fi","fr","fy","ga","g","gd","gl","gu","he","h","hi","hr","hu","ht","id","is","it","ja","jv","ka","kk","km","kn","ko","ku","ky","lb","lo","lt","lv","me","mi","mk","ml","mn","mr","ms","mt","my","ne","nl","pl","pt","rn","ro","ru","rw","sd","se","si","sk","sl","sq","ss","sr","sv","sw","ta","te","tet","tg","th","tk","tlh","tr","tzl","tzm","u","uk","ur","uz","vi","x","yo","y","z","zh","nn","resolveLanguage","languageInput","includes","regionlessLanguage","loadDayjsLocale","dayjs","_","_typeof","Symbol","iterator","hasXMLHttpRequest","XMLHttpRequest","isPromise","maybePromise","makePromise","ownKeys","getOwnPropertySymbols","getOwnPropertyDescriptor","enumerable","_objectSpread","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","configurable","writable","_toPrimitive","toPrimitive","TypeError","Number","fetchApi","fetch","global","XmlHttpRequestApi","ActiveXObjectApi","ActiveXObject","mod","addQueryString","url","params","queryString","paramName","encodeURIComponent","fetchIt","fetchOptions","altFetch","response","ok","statusText","status","text","altResponse","omitFetchOptions","requestWithFetch","payload","queryStringParams","headers","customHeaders","versions","node","platform","arch","reqOptions","requestOptions","method","body","alternateFetch","message","requestWithXmlHttpRequest","open","crossDomain","setRequestHeader","withCredentials","overrideMimeType","onreadystatechange","readyState","responseText","request","_classCallCheck","_defineProperties","_createClass","getDefaults","loadPath","addPath","parsePayload","parseLoadPayload","reloadInterval","mode","credentials","Backend","allOptions","_this","timer","setInterval","unref","readMulti","_readAny","loadUrlLanguages","loadUrlNamespaces","_this2","resolvedLoadPath","loadUrl","_this3","errorMessage","isNetworkError","term","parseErr","_this4","finished","dataArray","resArray","_this5","_this$services","currentLanguage","getAssetPath","baseUrl","URL","document","baseURI","href","assetUrl","origin","location","pathname","i18nTranslationNamespace","isI18nLocaleAvailable","availableLocales","i18nBackendOptions","atomicInterface","languageAssetsPath","_options","_payload","fetchUrl","searchParams","urlParams","URLSearchParams","json","init18n","i18n","logLevel","DOMPurify","sanitize","compatibilityJSON","mismatchedInterfaceAndEnginePropError","interfaceKind","configurationName","CommonAtomicInterfaceHelper","hangingComponentsInitialization","VERSION","connectedCallback","originalConnectedCallback","render","originalRender","i18nPromise","element","host","onComponentInitializing","preventDefault","stopPropagation","engine","detail","bindings","onInitialization","initEngine","interfaceTagname","updateIconAssetsPath","registerFieldsToInclude","initComponents","onAnalyticsChange","analytics","engineIsCreated","disableAnalytics","enableAnalytics","onLanguageChange","withResolvers","tagName","augmentWithExternalMiddleware","config","analyticsClientMiddleware","augmentAnalyticsWithAtomicVersion","customData","coveoAtomicVersion","augmentAnalyticsConfigWithDocument","documentLocation","referrer","originLevel3","versionMatcher","augmentAnalyticsConfigWithAtomicVersion","getNextAnalyticsConfig","searchEngineConfig","enabled","configuration","analyticsConfiguration","assign"],"sources":["../../node_modules/i18next/dist/esm/i18next.js","src/global/environment.ts","src/generated/dayjs-locales-data.ts","src/utils/dayjs-locales.ts","../../node_modules/i18next-http-backend/esm/utils.js","../../node_modules/i18next-http-backend/esm/request.js","../../node_modules/i18next-http-backend/esm/index.js","src/utils/stencil-asset-path-utils.ts","src/components/common/interface/stencil-i18n.ts","src/components/common/interface/interface-common-stencil.tsx","src/components/common/interface/analytics-config.ts"],"sourcesContent":["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 = (obj, path, keySeparator = '.') => {\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, options = {}) {\n this.init(concreteLogger, options);\n }\n init(concreteLogger, options = {}) {\n this.prefix = options.prefix || 'i18next:';\n this.logger = concreteLogger || consoleLogger;\n this.options = options;\n this.debug = options.debug;\n }\n log(...args) {\n return this.forward(args, 'log', '', true);\n }\n warn(...args) {\n return this.forward(args, 'warn', '', true);\n }\n error(...args) {\n return this.forward(args, 'error', '');\n }\n deprecate(...args) {\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, ...args) {\n if (this.observers[event]) {\n const cloned = Array.from(this.observers[event].entries());\n cloned.forEach(([observer, numTimesAdded]) => {\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(([observer, numTimesAdded]) => {\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, options = {\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, options = {}) {\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, options = {\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, options = {\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, options = {\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, options = {}) {\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, o = {\n interpolation: {}\n }) {\n const opt = {\n ...o\n };\n if (key == null) return false;\n const resolved = this.resolve(key, opt);\n return resolved?.res !== undefined;\n }\n extractFromKey(key, opt) {\n let nsSeparator = opt.nsSeparator !== undefined ? opt.nsSeparator : this.options.nsSeparator;\n if (nsSeparator === undefined) nsSeparator = ':';\n const keySeparator = opt.keySeparator !== undefined ? opt.keySeparator : this.options.keySeparator;\n let namespaces = opt.ns || this.options.defaultNS || [];\n const wouldCheckForNsInKey = nsSeparator && key.indexOf(nsSeparator) > -1;\n const seemsNaturalLanguage = !this.options.userDefinedKeySeparator && !opt.keySeparator && !this.options.userDefinedNsSeparator && !opt.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, o, lastKey) {\n let opt = typeof o === 'object' ? {\n ...o\n } : o;\n if (typeof opt !== 'object' && this.options.overloadTranslationOptionHandler) {\n opt = this.options.overloadTranslationOptionHandler(arguments);\n }\n if (typeof options === 'object') opt = {\n ...opt\n };\n if (!opt) opt = {};\n if (keys == null) return '';\n if (!Array.isArray(keys)) keys = [String(keys)];\n const returnDetails = opt.returnDetails !== undefined ? opt.returnDetails : this.options.returnDetails;\n const keySeparator = opt.keySeparator !== undefined ? opt.keySeparator : this.options.keySeparator;\n const {\n key,\n namespaces\n } = this.extractFromKey(keys[keys.length - 1], opt);\n const namespace = namespaces[namespaces.length - 1];\n let nsSeparator = opt.nsSeparator !== undefined ? opt.nsSeparator : this.options.nsSeparator;\n if (nsSeparator === undefined) nsSeparator = ':';\n const lng = opt.lng || this.language;\n const appendNamespaceToCIMode = opt.appendNamespaceToCIMode || this.options.appendNamespaceToCIMode;\n if (lng?.toLowerCase() === 'cimode') {\n if (appendNamespaceToCIMode) {\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(opt)\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(opt)\n };\n }\n return key;\n }\n const resolved = this.resolve(keys, opt);\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 = opt.joinArrays !== undefined ? opt.joinArrays : this.options.joinArrays;\n const handleAsObjectInI18nFormat = !this.i18nFormat || this.i18nFormat.handleAsObject;\n const needsPluralHandling = opt.count !== undefined && !isString(opt.count);\n const hasDefaultValue = Translator.hasDefaultValue(opt);\n const defaultValueSuffix = needsPluralHandling ? this.pluralResolver.getSuffix(lng, opt.count, opt) : '';\n const defaultValueSuffixOrdinalFallback = opt.ordinal && needsPluralHandling ? this.pluralResolver.getSuffix(lng, opt.count, {\n ordinal: false\n }) : '';\n const needsZeroSuffixLookup = needsPluralHandling && !opt.ordinal && opt.count === 0;\n const defaultValue = needsZeroSuffixLookup && opt[`defaultValue${this.options.pluralSeparator}zero`] || opt[`defaultValue${defaultValueSuffix}`] || opt[`defaultValue${defaultValueSuffixOrdinalFallback}`] || opt.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 (!opt.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 ...opt,\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(opt);\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 ...opt,\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 ...opt,\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, opt, 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 = opt.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 ...opt,\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, opt.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(opt.lng || this.language);\n } else {\n lngs.push(opt.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, opt);\n } else if (this.backendConnector?.saveMissing) {\n this.backendConnector.saveMissing(l, namespace, k, defaultForMissing, updateMissing, opt);\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, opt);\n if (needsZeroSuffixLookup && opt[`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, opt[`defaultValue${suffix}`] || defaultValue);\n });\n });\n } else {\n send(lngs, key, defaultValue);\n }\n }\n }\n res = this.extendTranslation(res, keys, opt, resolved, lastKey);\n if (usedKey && res === key && this.options.appendNamespaceToMissingKey) {\n res = `${namespace}${nsSeparator}${key}`;\n }\n if ((usedKey || usedDefault) && this.options.parseMissingKeyHandler) {\n res = this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey ? `${namespace}${nsSeparator}${key}` : key, usedDefault ? res : undefined, opt);\n }\n }\n if (returnDetails) {\n resolved.res = res;\n resolved.usedParams = this.getUsedParamsDetails(opt);\n return resolved;\n }\n return res;\n }\n extendTranslation(res, key, opt, resolved, lastKey) {\n if (this.i18nFormat?.parse) {\n res = this.i18nFormat.parse(res, {\n ...this.options.interpolation.defaultVariables,\n ...opt\n }, opt.lng || this.language || resolved.usedLng, resolved.usedNS, resolved.usedKey, {\n resolved\n });\n } else if (!opt.skipInterpolation) {\n if (opt.interpolation) this.interpolator.init({\n ...opt,\n ...{\n interpolation: {\n ...this.options.interpolation,\n ...opt.interpolation\n }\n }\n });\n const skipOnVariables = isString(res) && (opt?.interpolation?.skipOnVariables !== undefined ? opt.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 = opt.replace && !isString(opt.replace) ? opt.replace : opt;\n if (this.options.interpolation.defaultVariables) data = {\n ...this.options.interpolation.defaultVariables,\n ...data\n };\n res = this.interpolator.interpolate(res, data, opt.lng || this.language || resolved.usedLng, opt);\n if (skipOnVariables) {\n const na = res.match(this.interpolator.nestingRegexp);\n const nestAft = na && na.length;\n if (nestBef < nestAft) opt.nest = false;\n }\n if (!opt.lng && resolved && resolved.res) opt.lng = this.language || resolved.usedLng;\n if (opt.nest !== false) res = this.interpolator.nest(res, (...args) => {\n if (lastKey?.[0] === args[0] && !opt.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 }, opt);\n if (opt.interpolation) this.interpolator.reset();\n }\n const postProcess = opt.postProcess || this.options.postProcess;\n const postProcessorNames = isString(postProcess) ? [postProcess] : postProcess;\n if (res != null && postProcessorNames?.length && opt.applyPostProcessor !== false) {\n res = postProcessor.handle(postProcessorNames, res, key, this.options && this.options.postProcessPassResolved ? {\n i18nResolved: {\n ...resolved,\n usedParams: this.getUsedParamsDetails(opt)\n },\n ...opt\n } : opt, this);\n }\n return res;\n }\n resolve(keys, opt = {}) {\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, opt);\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 = opt.count !== undefined && !isString(opt.count);\n const needsZeroSuffixLookup = needsPluralHandling && !opt.ordinal && opt.count === 0;\n const needsContextHandling = opt.context !== undefined && (isString(opt.context) || typeof opt.context === 'number') && opt.context !== '';\n const codes = opt.lngs ? opt.lngs : this.languageUtils.toResolveHierarchy(opt.lng || this.language, opt.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, opt);\n } else {\n let pluralSuffix;\n if (needsPluralHandling) pluralSuffix = this.pluralResolver.getSuffix(code, opt.count, opt);\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 (opt.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}${opt.context}`;\n finalKeys.push(contextKey);\n if (needsPluralHandling) {\n finalKeys.push(contextKey + pluralSuffix);\n if (opt.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, opt);\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, options = {}) {\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(options = {}) {\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 lngScOnly = this.getScriptPartFromCode(code);\n if (this.isSupportedCode(lngScOnly)) return found = lngScOnly;\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 === false ? [] : 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, options = {}) {\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, options = {}) {\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, options = {}) {\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, options = {}) {\n return this.getSuffixes(code, options).map(suffix => `${key}${suffix}`);\n }\n getSuffixes(code, options = {}) {\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, options = {}) {\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 = (data, defaultData, key, keySeparator = '.', ignoreJSONStructure = 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(options = {}) {\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(options = {}) {\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, options = {}) {\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 const keyEndIndex = /{.*}/.test(match[1]) ? match[1].lastIndexOf('}') + 1 : match[1].indexOf(this.formatSeparator);\n if (keyEndIndex !== -1) {\n formatters = match[1].slice(keyEndIndex).split(this.formatSeparator).map(elem => elem.trim()).filter(Boolean);\n match[1] = match[1].slice(0, keyEndIndex);\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 (formatters.length) {\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 (v, l, o) => {\n let optForCache = o;\n if (o && o.interpolationkey && o.formatParams && o.formatParams[o.interpolationkey] && o[o.interpolationkey]) {\n optForCache = {\n ...optForCache,\n [o.interpolationkey]: undefined\n };\n }\n const key = l + JSON.stringify(optForCache);\n let frm = cache[key];\n if (!frm) {\n frm = fn(getCleanedCode(l), o);\n cache[key] = frm;\n }\n return frm(v);\n };\n};\nconst createNonCachedFormatter = fn => (v, l, o) => fn(getCleanedCode(l), o)(v);\nclass Formatter {\n constructor(options = {}) {\n this.logger = baseLogger.create('formatter');\n this.options = options;\n this.init(options);\n }\n init(services, options = {\n interpolation: {}\n }) {\n this.formatSeparator = options.interpolation.formatSeparator || ',';\n const cf = options.cacheInBuiltFormats ? createCachedFormatter : createNonCachedFormatter;\n this.formats = {\n number: cf((lng, opt) => {\n const formatter = new Intl.NumberFormat(lng, {\n ...opt\n });\n return val => formatter.format(val);\n }),\n currency: cf((lng, opt) => {\n const formatter = new Intl.NumberFormat(lng, {\n ...opt,\n style: 'currency'\n });\n return val => formatter.format(val);\n }),\n datetime: cf((lng, opt) => {\n const formatter = new Intl.DateTimeFormat(lng, {\n ...opt\n });\n return val => formatter.format(val);\n }),\n relativetime: cf((lng, opt) => {\n const formatter = new Intl.RelativeTimeFormat(lng, {\n ...opt\n });\n return val => formatter.format(val, opt.range || 'day');\n }),\n list: cf((lng, opt) => {\n const formatter = new Intl.ListFormat(lng, {\n ...opt\n });\n return val => formatter.format(val);\n })\n };\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, options = {}) {\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, options = {}) {\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, tried = 0, wait = this.retryTimeout, callback) {\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, options = {}, callback) {\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, prefix = '') {\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, options = {}, clb = () => {}) {\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 cacheInBuiltFormats: true\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(options = {}, callback) {\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(options = {}, callback) {\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 const usingLegacyFormatFunction = this.options.interpolation.format && this.options.interpolation.format !== defOpts.interpolation.format;\n if (usingLegacyFormatFunction) {\n this.logger.warn(`init: you are still using the legacy format function, please use the new approach: https://www.i18next.com/translation-function/formatting`);\n }\n if (formatter && (!this.options.interpolation.format || this.options.interpolation.format === defOpts.interpolation.format)) {\n s.formatter = createClassOnDemand(formatter);\n if (s.formatter.init) 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('*', (event, ...args) => {\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('*', (event, ...args) => {\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] = (...args) => this.store[fcName](...args);\n });\n const storeApiChained = ['addResource', 'addResources', 'addResourceBundle', 'removeResourceBundle'];\n storeApiChained.forEach(fcName => {\n this[fcName] = (...args) => {\n this.store[fcName](...args);\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, callback = 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 if (!this.resolvedLanguage && this.languages.indexOf(l) < 0 && this.store.hasLanguageSomeTranslations(l)) {\n this.resolvedLanguage = l;\n this.languages.unshift(l);\n }\n }\n changeLanguage(lng, callback) {\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 if (this.isLanguageChangingTo === lng) {\n setLngProps(l);\n this.translator.changeLanguage(l);\n this.isLanguageChangingTo = undefined;\n this.emit('languageChanged', l);\n this.logger.log('languageChanged', l);\n }\n } else {\n this.isLanguageChangingTo = undefined;\n }\n deferred.resolve((...args) => this.t(...args));\n if (callback) callback(err, (...args) => this.t(...args));\n };\n const setLng = lngs => {\n if (!lng && !lngs && this.services.languageDetector) lngs = [];\n const fl = isString(lngs) ? lngs : lngs && lngs[0];\n const l = this.store.hasLanguageSomeTranslations(fl) ? fl : this.services.languageUtils.getBestMatchFromCodes(isString(lngs) ? [lngs] : 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 const fixedT = (key, opts, ...rest) => {\n let o;\n if (typeof opts !== 'object') {\n o = this.options.overloadTranslationOptionHandler([key, opts].concat(rest));\n } else {\n o = {\n ...opts\n };\n }\n o.lng = o.lng || fixedT.lng;\n o.lngs = o.lngs || fixedT.lngs;\n o.ns = o.ns || fixedT.ns;\n if (o.keyPrefix !== '') o.keyPrefix = o.keyPrefix || keyPrefix || fixedT.keyPrefix;\n const keySeparator = this.options.keySeparator || '.';\n let resultKey;\n if (o.keyPrefix && Array.isArray(key)) {\n resultKey = key.map(k => `${o.keyPrefix}${keySeparator}${k}`);\n } else {\n resultKey = o.keyPrefix ? `${o.keyPrefix}${keySeparator}${key}` : key;\n }\n return this.t(resultKey, o);\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(...args) {\n return this.translator?.translate(...args);\n }\n exists(...args) {\n return this.translator?.exists(...args);\n }\n setDefaultNamespace(ns) {\n this.options.defaultNS = ns;\n }\n hasLoadedNamespace(ns, options = {}) {\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 try {\n const l = new Intl.Locale(lng);\n if (l && l.getTextInfo) {\n const ti = l.getTextInfo();\n if (ti && ti.direction) return ti.direction;\n }\n } catch (e) {}\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 if (lng.toLowerCase().indexOf('-latn') > 1) return 'ltr';\n return rtlLngs.indexOf(languageUtils.getLanguagePartFromCode(lng)) > -1 || lng.toLowerCase().indexOf('-arab') > 1 ? 'rtl' : 'ltr';\n }\n static createInstance(options = {}, callback) {\n return new I18n(options, callback);\n }\n cloneInstance(options = {}, callback = 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 prev[l] = Object.keys(prev[l]).reduce((acc, n) => {\n acc[n] = {\n ...prev[l][n]\n };\n return acc;\n }, prev[l]);\n return prev;\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('*', (event, ...args) => {\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","interface AtomicEnvironment {\n version: string;\n headlessVersion: string;\n}\n\ndeclare global {\n interface Window {\n [anyGlobalVariable: string]: AtomicEnvironment;\n }\n}\n\nfunction getWindow() {\n return window;\n}\n\nexport function getAtomicEnvironment(\n headlessVersion: string\n): AtomicEnvironment {\n return {\n version: process.env.VERSION!,\n headlessVersion,\n };\n}\n\nexport function getAtomicVersion(): string {\n return getAtomicEnvironment('').version;\n}\n\nexport function setCoveoGlobal(\n globalVariableName: string,\n headlessVersion: string\n) {\n if (getWindow()[globalVariableName]) {\n return;\n }\n getWindow()[globalVariableName] = getAtomicEnvironment(headlessVersion);\n}\n","export const locales: Record<string, () => Promise<unknown>> = {\n af: () => import('dayjs/locale/af'),\n am: () => import('dayjs/locale/am'),\n 'ar-DZ': () => import('dayjs/locale/ar-dz'),\n 'ar-IQ': () => import('dayjs/locale/ar-iq'),\n 'ar-KW': () => import('dayjs/locale/ar-kw'),\n 'ar-LY': () => import('dayjs/locale/ar-ly'),\n 'ar-MA': () => import('dayjs/locale/ar-ma'),\n 'ar-SA': () => import('dayjs/locale/ar-sa'),\n 'ar-TN': () => import('dayjs/locale/ar-tn'),\n ar: () => import('dayjs/locale/ar'),\n az: () => import('dayjs/locale/az'),\n be: () => import('dayjs/locale/be'),\n bg: () => import('dayjs/locale/bg'),\n bi: () => import('dayjs/locale/bi'),\n bm: () => import('dayjs/locale/bm'),\n 'bn-BD': () => import('dayjs/locale/bn-bd'),\n bn: () => import('dayjs/locale/bn'),\n bo: () => import('dayjs/locale/bo'),\n br: () => import('dayjs/locale/br'),\n bs: () => import('dayjs/locale/bs'),\n ca: () => import('dayjs/locale/ca'),\n cs: () => import('dayjs/locale/cs'),\n cv: () => import('dayjs/locale/cv'),\n cy: () => import('dayjs/locale/cy'),\n 'de-AT': () => import('dayjs/locale/de-at'),\n da: () => import('dayjs/locale/da'),\n 'de-CH': () => import('dayjs/locale/de-ch'),\n de: () => import('dayjs/locale/de'),\n dv: () => import('dayjs/locale/dv'),\n el: () => import('dayjs/locale/el'),\n 'en-AU': () => import('dayjs/locale/en-au'),\n 'en-CA': () => import('dayjs/locale/en-ca'),\n 'en-GB': () => import('dayjs/locale/en-gb'),\n 'en-IE': () => import('dayjs/locale/en-ie'),\n 'en-IL': () => import('dayjs/locale/en-il'),\n 'en-IN': () => import('dayjs/locale/en-in'),\n 'en-NZ': () => import('dayjs/locale/en-nz'),\n 'en-SG': () => import('dayjs/locale/en-sg'),\n 'en-TT': () => import('dayjs/locale/en-tt'),\n eo: () => import('dayjs/locale/eo'),\n en: () => import('dayjs/locale/en'),\n 'es-DO': () => import('dayjs/locale/es-do'),\n 'es-MX': () => import('dayjs/locale/es-mx'),\n 'es-PR': () => import('dayjs/locale/es-pr'),\n 'es-US': () => import('dayjs/locale/es-us'),\n et: () => import('dayjs/locale/et'),\n es: () => import('dayjs/locale/es'),\n eu: () => import('dayjs/locale/eu'),\n fa: () => import('dayjs/locale/fa'),\n fo: () => import('dayjs/locale/fo'),\n fi: () => import('dayjs/locale/fi'),\n 'fr-CA': () => import('dayjs/locale/fr-ca'),\n 'fr-CH': () => import('dayjs/locale/fr-ch'),\n fr: () => import('dayjs/locale/fr'),\n fy: () => import('dayjs/locale/fy'),\n ga: () => import('dayjs/locale/ga'),\n gd: () => import('dayjs/locale/gd'),\n 'gom-LATN': () => import('dayjs/locale/gom-latn'),\n gl: () => import('dayjs/locale/gl'),\n gu: () => import('dayjs/locale/gu'),\n he: () => import('dayjs/locale/he'),\n hi: () => import('dayjs/locale/hi'),\n hr: () => import('dayjs/locale/hr'),\n hu: () => import('dayjs/locale/hu'),\n ht: () => import('dayjs/locale/ht'),\n 'hy-AM': () => import('dayjs/locale/hy-am'),\n id: () => import('dayjs/locale/id'),\n is: () => import('dayjs/locale/is'),\n 'it-CH': () => import('dayjs/locale/it-ch'),\n it: () => import('dayjs/locale/it'),\n ja: () => import('dayjs/locale/ja'),\n jv: () => import('dayjs/locale/jv'),\n ka: () => import('dayjs/locale/ka'),\n kk: () => import('dayjs/locale/kk'),\n km: () => import('dayjs/locale/km'),\n kn: () => import('dayjs/locale/kn'),\n ko: () => import('dayjs/locale/ko'),\n ku: () => import('dayjs/locale/ku'),\n ky: () => import('dayjs/locale/ky'),\n lb: () => import('dayjs/locale/lb'),\n lo: () => import('dayjs/locale/lo'),\n lt: () => import('dayjs/locale/lt'),\n lv: () => import('dayjs/locale/lv'),\n me: () => import('dayjs/locale/me'),\n mi: () => import('dayjs/locale/mi'),\n mk: () => import('dayjs/locale/mk'),\n ml: () => import('dayjs/locale/ml'),\n mn: () => import('dayjs/locale/mn'),\n mr: () => import('dayjs/locale/mr'),\n 'ms-MY': () => import('dayjs/locale/ms-my'),\n ms: () => import('dayjs/locale/ms'),\n mt: () => import('dayjs/locale/mt'),\n my: () => import('dayjs/locale/my'),\n nb: () => import('dayjs/locale/nb'),\n ne: () => import('dayjs/locale/ne'),\n 'nl-BE': () => import('dayjs/locale/nl-be'),\n nl: () => import('dayjs/locale/nl'),\n pl: () => import('dayjs/locale/pl'),\n 'pt-BR': () => import('dayjs/locale/pt-br'),\n pt: () => import('dayjs/locale/pt'),\n rn: () => import('dayjs/locale/rn'),\n ro: () => import('dayjs/locale/ro'),\n ru: () => import('dayjs/locale/ru'),\n rw: () => import('dayjs/locale/rw'),\n sd: () => import('dayjs/locale/sd'),\n se: () => import('dayjs/locale/se'),\n si: () => import('dayjs/locale/si'),\n sk: () => import('dayjs/locale/sk'),\n sl: () => import('dayjs/locale/sl'),\n sq: () => import('dayjs/locale/sq'),\n 'sr-CYRL': () => import('dayjs/locale/sr-cyrl'),\n ss: () => import('dayjs/locale/ss'),\n 'sv-FI': () => import('dayjs/locale/sv-fi'),\n sr: () => import('dayjs/locale/sr'),\n sv: () => import('dayjs/locale/sv'),\n sw: () => import('dayjs/locale/sw'),\n ta: () => import('dayjs/locale/ta'),\n te: () => import('dayjs/locale/te'),\n tet: () => import('dayjs/locale/tet'),\n tg: () => import('dayjs/locale/tg'),\n th: () => import('dayjs/locale/th'),\n tk: () => import('dayjs/locale/tk'),\n 'tl-PH': () => import('dayjs/locale/tl-ph'),\n tlh: () => import('dayjs/locale/tlh'),\n tr: () => import('dayjs/locale/tr'),\n tzl: () => import('dayjs/locale/tzl'),\n 'tzm-LATN': () => import('dayjs/locale/tzm-latn'),\n tzm: () => import('dayjs/locale/tzm'),\n 'ug-CN': () => import('dayjs/locale/ug-cn'),\n uk: () => import('dayjs/locale/uk'),\n ur: () => import('dayjs/locale/ur'),\n 'uz-LATN': () => import('dayjs/locale/uz-latn'),\n uz: () => import('dayjs/locale/uz'),\n vi: () => import('dayjs/locale/vi'),\n 'x-PSEUDO': () => import('dayjs/locale/x-pseudo'),\n yo: () => import('dayjs/locale/yo'),\n 'zh-CN': () => import('dayjs/locale/zh-cn'),\n 'zh-HK': () => import('dayjs/locale/zh-hk'),\n 'zh-TW': () => import('dayjs/locale/zh-tw'),\n zh: () => import('dayjs/locale/zh'),\n 'oc-LNC': () => import('dayjs/locale/oc-lnc'),\n nn: () => import('dayjs/locale/nn'),\n 'pa-IN': () => import('dayjs/locale/pa-in'),\n};\n","import dayjs from 'dayjs';\nimport {locales} from '../generated/dayjs-locales-data';\n\nconst warn = (language: string) =>\n console.warn(`Cannot load dayjs locale file for \"${language}\"`);\n\nconst resolveLanguage = (languageInput: string) => {\n if (locales[languageInput]) {\n return languageInput;\n }\n\n if (languageInput.includes('-')) {\n const regionlessLanguage = languageInput.split('-')[0];\n if (locales[regionlessLanguage]) {\n return regionlessLanguage;\n }\n }\n\n return languageInput;\n};\n\nexport function loadDayjsLocale(languageInput: string) {\n const language = resolveLanguage(languageInput);\n if (!locales[language]) {\n warn(language);\n return;\n }\n\n try {\n locales[language]().then(() => dayjs.locale(language));\n } catch (_) {\n warn(language);\n }\n}\n","function _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nvar arr = [];\nvar each = arr.forEach;\nvar slice = arr.slice;\nexport function defaults(obj) {\n each.call(slice.call(arguments, 1), function (source) {\n if (source) {\n for (var prop in source) {\n if (obj[prop] === undefined) obj[prop] = source[prop];\n }\n }\n });\n return obj;\n}\nexport function hasXMLHttpRequest() {\n return typeof XMLHttpRequest === 'function' || (typeof XMLHttpRequest === \"undefined\" ? \"undefined\" : _typeof(XMLHttpRequest)) === 'object';\n}\nfunction isPromise(maybePromise) {\n return !!maybePromise && typeof maybePromise.then === 'function';\n}\nexport function makePromise(maybePromise) {\n if (isPromise(maybePromise)) {\n return maybePromise;\n }\n return Promise.resolve(maybePromise);\n}","function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nimport { hasXMLHttpRequest } from './utils.js';\nvar fetchApi = typeof fetch === 'function' ? fetch : undefined;\nif (typeof global !== 'undefined' && global.fetch) {\n fetchApi = global.fetch;\n} else if (typeof window !== 'undefined' && window.fetch) {\n fetchApi = window.fetch;\n}\nvar XmlHttpRequestApi;\nif (hasXMLHttpRequest()) {\n if (typeof global !== 'undefined' && global.XMLHttpRequest) {\n XmlHttpRequestApi = global.XMLHttpRequest;\n } else if (typeof window !== 'undefined' && window.XMLHttpRequest) {\n XmlHttpRequestApi = window.XMLHttpRequest;\n }\n}\nvar ActiveXObjectApi;\nif (typeof ActiveXObject === 'function') {\n if (typeof global !== 'undefined' && global.ActiveXObject) {\n ActiveXObjectApi = global.ActiveXObject;\n } else if (typeof window !== 'undefined' && window.ActiveXObject) {\n ActiveXObjectApi = window.ActiveXObject;\n }\n}\nif (typeof fetchApi !== 'function') fetchApi = undefined;\nif (!fetchApi && !XmlHttpRequestApi && !ActiveXObjectApi) {\n try {\n import('cross-fetch').then(function (mod) {\n fetchApi = mod.default;\n }).catch(function () {});\n } catch (e) {}\n}\nvar addQueryString = function addQueryString(url, params) {\n if (params && _typeof(params) === 'object') {\n var queryString = '';\n for (var paramName in params) {\n queryString += '&' + encodeURIComponent(paramName) + '=' + encodeURIComponent(params[paramName]);\n }\n if (!queryString) return url;\n url = url + (url.indexOf('?') !== -1 ? '&' : '?') + queryString.slice(1);\n }\n return url;\n};\nvar fetchIt = function fetchIt(url, fetchOptions, callback, altFetch) {\n var resolver = function resolver(response) {\n if (!response.ok) return callback(response.statusText || 'Error', {\n status: response.status\n });\n response.text().then(function (data) {\n callback(null, {\n status: response.status,\n data: data\n });\n }).catch(callback);\n };\n if (altFetch) {\n var altResponse = altFetch(url, fetchOptions);\n if (altResponse instanceof Promise) {\n altResponse.then(resolver).catch(callback);\n return;\n }\n }\n if (typeof fetch === 'function') {\n fetch(url, fetchOptions).then(resolver).catch(callback);\n } else {\n fetchApi(url, fetchOptions).then(resolver).catch(callback);\n }\n};\nvar omitFetchOptions = false;\nvar requestWithFetch = function requestWithFetch(options, url, payload, callback) {\n if (options.queryStringParams) {\n url = addQueryString(url, options.queryStringParams);\n }\n var headers = _objectSpread({}, typeof options.customHeaders === 'function' ? options.customHeaders() : options.customHeaders);\n if (typeof window === 'undefined' && typeof global !== 'undefined' && typeof global.process !== 'undefined' && global.process.versions && global.process.versions.node) {\n headers['User-Agent'] = \"i18next-http-backend (node/\".concat(global.process.version, \"; \").concat(global.process.platform, \" \").concat(global.process.arch, \")\");\n }\n if (payload) headers['Content-Type'] = 'application/json';\n var reqOptions = typeof options.requestOptions === 'function' ? options.requestOptions(payload) : options.requestOptions;\n var fetchOptions = _objectSpread({\n method: payload ? 'POST' : 'GET',\n body: payload ? options.stringify(payload) : undefined,\n headers: headers\n }, omitFetchOptions ? {} : reqOptions);\n var altFetch = typeof options.alternateFetch === 'function' && options.alternateFetch.length >= 1 ? options.alternateFetch : undefined;\n try {\n fetchIt(url, fetchOptions, callback, altFetch);\n } catch (e) {\n if (!reqOptions || Object.keys(reqOptions).length === 0 || !e.message || e.message.indexOf('not implemented') < 0) {\n return callback(e);\n }\n try {\n Object.keys(reqOptions).forEach(function (opt) {\n delete fetchOptions[opt];\n });\n fetchIt(url, fetchOptions, callback, altFetch);\n omitFetchOptions = true;\n } catch (err) {\n callback(err);\n }\n }\n};\nvar requestWithXmlHttpRequest = function requestWithXmlHttpRequest(options, url, payload, callback) {\n if (payload && _typeof(payload) === 'object') {\n payload = addQueryString('', payload).slice(1);\n }\n if (options.queryStringParams) {\n url = addQueryString(url, options.queryStringParams);\n }\n try {\n var x = XmlHttpRequestApi ? new XmlHttpRequestApi() : new ActiveXObjectApi('MSXML2.XMLHTTP.3.0');\n x.open(payload ? 'POST' : 'GET', url, 1);\n if (!options.crossDomain) {\n x.setRequestHeader('X-Requested-With', 'XMLHttpRequest');\n }\n x.withCredentials = !!options.withCredentials;\n if (payload) {\n x.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');\n }\n if (x.overrideMimeType) {\n x.overrideMimeType('application/json');\n }\n var h = options.customHeaders;\n h = typeof h === 'function' ? h() : h;\n if (h) {\n for (var i in h) {\n x.setRequestHeader(i, h[i]);\n }\n }\n x.onreadystatechange = function () {\n x.readyState > 3 && callback(x.status >= 400 ? x.statusText : null, {\n status: x.status,\n data: x.responseText\n });\n };\n x.send(payload);\n } catch (e) {\n console && console.log(e);\n }\n};\nvar request = function request(options, url, payload, callback) {\n if (typeof payload === 'function') {\n callback = payload;\n payload = undefined;\n }\n callback = callback || function () {};\n if (fetchApi && url.indexOf('file:') !== 0) {\n return requestWithFetch(options, url, payload, callback);\n }\n if (hasXMLHttpRequest() || typeof ActiveXObject === 'function') {\n return requestWithXmlHttpRequest(options, url, payload, callback);\n }\n callback(new Error('No fetch and no xhr implementation found!'));\n};\nexport default request;","function _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\"); }\nfunction _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, \"value\" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }\nfunction _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, \"prototype\", { writable: !1 }), e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport { makePromise } from './utils.js';\nimport request from './request.js';\nvar getDefaults = function getDefaults() {\n return {\n loadPath: '/locales/{{lng}}/{{ns}}.json',\n addPath: '/locales/add/{{lng}}/{{ns}}',\n parse: function parse(data) {\n return JSON.parse(data);\n },\n stringify: JSON.stringify,\n parsePayload: function parsePayload(namespace, key, fallbackValue) {\n return _defineProperty({}, key, fallbackValue || '');\n },\n parseLoadPayload: function parseLoadPayload(languages, namespaces) {\n return undefined;\n },\n request: request,\n reloadInterval: typeof window !== 'undefined' ? false : 60 * 60 * 1000,\n customHeaders: {},\n queryStringParams: {},\n crossDomain: false,\n withCredentials: false,\n overrideMimeType: false,\n requestOptions: {\n mode: 'cors',\n credentials: 'same-origin',\n cache: 'default'\n }\n };\n};\nvar Backend = function () {\n function Backend(services) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var allOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n _classCallCheck(this, Backend);\n this.services = services;\n this.options = options;\n this.allOptions = allOptions;\n this.type = 'backend';\n this.init(services, options, allOptions);\n }\n return _createClass(Backend, [{\n key: \"init\",\n value: function init(services) {\n var _this = this;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var allOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n this.services = services;\n this.options = _objectSpread(_objectSpread(_objectSpread({}, getDefaults()), this.options || {}), options);\n this.allOptions = allOptions;\n if (this.services && this.options.reloadInterval) {\n var timer = setInterval(function () {\n return _this.reload();\n }, this.options.reloadInterval);\n if (_typeof(timer) === 'object' && typeof timer.unref === 'function') timer.unref();\n }\n }\n }, {\n key: \"readMulti\",\n value: function readMulti(languages, namespaces, callback) {\n this._readAny(languages, languages, namespaces, namespaces, callback);\n }\n }, {\n key: \"read\",\n value: function read(language, namespace, callback) {\n this._readAny([language], language, [namespace], namespace, callback);\n }\n }, {\n key: \"_readAny\",\n value: function _readAny(languages, loadUrlLanguages, namespaces, loadUrlNamespaces, callback) {\n var _this2 = this;\n var loadPath = this.options.loadPath;\n if (typeof this.options.loadPath === 'function') {\n loadPath = this.options.loadPath(languages, namespaces);\n }\n loadPath = makePromise(loadPath);\n loadPath.then(function (resolvedLoadPath) {\n if (!resolvedLoadPath) return callback(null, {});\n var url = _this2.services.interpolator.interpolate(resolvedLoadPath, {\n lng: languages.join('+'),\n ns: namespaces.join('+')\n });\n _this2.loadUrl(url, callback, loadUrlLanguages, loadUrlNamespaces);\n });\n }\n }, {\n key: \"loadUrl\",\n value: function loadUrl(url, callback, languages, namespaces) {\n var _this3 = this;\n var lng = typeof languages === 'string' ? [languages] : languages;\n var ns = typeof namespaces === 'string' ? [namespaces] : namespaces;\n var payload = this.options.parseLoadPayload(lng, ns);\n this.options.request(this.options, url, payload, function (err, res) {\n if (res && (res.status >= 500 && res.status < 600 || !res.status)) return callback('failed loading ' + url + '; status code: ' + res.status, true);\n if (res && res.status >= 400 && res.status < 500) return callback('failed loading ' + url + '; status code: ' + res.status, false);\n if (!res && err && err.message) {\n var errorMessage = err.message.toLowerCase();\n var isNetworkError = ['failed', 'fetch', 'network', 'load'].find(function (term) {\n return errorMessage.indexOf(term) > -1;\n });\n if (isNetworkError) {\n return callback('failed loading ' + url + ': ' + err.message, true);\n }\n }\n if (err) return callback(err, false);\n var ret, parseErr;\n try {\n if (typeof res.data === 'string') {\n ret = _this3.options.parse(res.data, languages, namespaces);\n } else {\n ret = res.data;\n }\n } catch (e) {\n parseErr = 'failed parsing ' + url + ' to json';\n }\n if (parseErr) return callback(parseErr, false);\n callback(null, ret);\n });\n }\n }, {\n key: \"create\",\n value: function create(languages, namespace, key, fallbackValue, callback) {\n var _this4 = this;\n if (!this.options.addPath) return;\n if (typeof languages === 'string') languages = [languages];\n var payload = this.options.parsePayload(namespace, key, fallbackValue);\n var finished = 0;\n var dataArray = [];\n var resArray = [];\n languages.forEach(function (lng) {\n var addPath = _this4.options.addPath;\n if (typeof _this4.options.addPath === 'function') {\n addPath = _this4.options.addPath(lng, namespace);\n }\n var url = _this4.services.interpolator.interpolate(addPath, {\n lng: lng,\n ns: namespace\n });\n _this4.options.request(_this4.options, url, payload, function (data, res) {\n finished += 1;\n dataArray.push(data);\n resArray.push(res);\n if (finished === languages.length) {\n if (typeof callback === 'function') callback(dataArray, resArray);\n }\n });\n });\n }\n }, {\n key: \"reload\",\n value: function reload() {\n var _this5 = this;\n var _this$services = this.services,\n backendConnector = _this$services.backendConnector,\n languageUtils = _this$services.languageUtils,\n logger = _this$services.logger;\n var currentLanguage = backendConnector.language;\n if (currentLanguage && currentLanguage.toLowerCase() === 'cimode') return;\n var toLoad = [];\n var append = function append(lng) {\n var lngs = languageUtils.toResolveHierarchy(lng);\n lngs.forEach(function (l) {\n if (toLoad.indexOf(l) < 0) toLoad.push(l);\n });\n };\n append(currentLanguage);\n if (this.allOptions.preload) this.allOptions.preload.forEach(function (l) {\n return append(l);\n });\n toLoad.forEach(function (lng) {\n _this5.allOptions.ns.forEach(function (ns) {\n backendConnector.read(lng, ns, 'read', null, null, function (err, data) {\n if (err) logger.warn(\"loading namespace \".concat(ns, \" for language \").concat(lng, \" failed\"), err);\n if (!err && data) logger.log(\"loaded namespace \".concat(ns, \" for language \").concat(lng), data);\n backendConnector.loaded(\"\".concat(lng, \"|\").concat(ns), err, data);\n });\n });\n });\n }\n }]);\n}();\nBackend.type = 'backend';\nexport default Backend;","import {getResourceUrl} from './stencil-resource-url';\n\nexport function getAssetPath(path: string): string {\n const resourceUrl = getResourceUrl();\n const baseUrl =\n resourceUrl !== undefined\n ? new URL('./', resourceUrl).href\n : new URL('./', window.document.baseURI).href;\n const assetUrl = new URL(path, baseUrl);\n\n return assetUrl.origin !== window.location.origin\n ? assetUrl.href\n : assetUrl.pathname;\n}\n","import DOMPurify from 'dompurify';\nimport Backend, {type HttpBackendOptions} from 'i18next-http-backend';\nimport {getAssetPath} from '@/src/utils/stencil-asset-path-utils';\nimport availableLocales from '../../../generated/availableLocales.json';\nimport type {AnyEngineType} from './bindings';\nimport type {StencilBaseAtomicInterface} from './interface-common-stencil';\n\nexport const i18nTranslationNamespace = 'translation';\n\nfunction isI18nLocaleAvailable(locale: string) {\n return availableLocales.includes(locale.toLowerCase());\n}\n\nexport function i18nBackendOptions(\n atomicInterface: StencilBaseAtomicInterface<AnyEngineType>\n): HttpBackendOptions {\n return {\n loadPath: `${getAssetPath(\n atomicInterface.languageAssetsPath\n )}/{{lng}}.json?lng={{lng}}&ns={{ns}}`,\n request: async (_options, url, _payload, callback) => {\n try {\n const [fetchUrl, searchParams] = url.split('?');\n const urlParams = new URLSearchParams(searchParams);\n const lng = urlParams.get('lng')!;\n const ns = urlParams.get('ns')!;\n\n if (!isI18nLocaleAvailable(lng)) {\n throw new Error(`Unsupported locale \"${lng}\"`);\n }\n\n if (ns !== i18nTranslationNamespace) {\n throw new Error(`Unsupported namespace \"${ns}\"`);\n }\n\n const response = await fetch(fetchUrl);\n if (response.status !== 200 && response.status !== 304) {\n throw new Error(\n `Unsuccessful request returned status \"${response.status}\"`\n );\n }\n\n callback(null, {\n status: response.status,\n data: await response.json(),\n });\n } catch (error) {\n callback(error, {status: 404, data: ''});\n }\n },\n };\n}\n\nexport function init18n(\n atomicInterface: StencilBaseAtomicInterface<AnyEngineType>\n) {\n return atomicInterface.i18n.use(Backend).init({\n debug: atomicInterface.logLevel === 'debug',\n lng: atomicInterface.language,\n nsSeparator: '___',\n fallbackLng: 'en',\n backend: i18nBackendOptions(atomicInterface),\n interpolation: {\n escape: (str) => DOMPurify.sanitize(str),\n },\n compatibilityJSON: 'v4',\n });\n}\n\ndeclare module 'i18next' {\n interface CustomTypeOptions {\n resources: Record<string, Record<string, string>>;\n }\n}\n","import {setCoveoGlobal} from '@/src/global/environment.js';\nimport {loadDayjsLocale} from '@/src/utils/dayjs-locales.js';\nimport {InitializeEvent} from '@/src/utils/initialization-utils.js';\nimport {LogLevel, VERSION} from '@coveo/headless';\nimport {ComponentInterface, h} from '@stencil/core';\nimport {i18n, TFunction} from 'i18next';\nimport Backend from 'i18next-http-backend';\nimport {AnyBindings, AnyEngineType} from './bindings';\nimport {i18nBackendOptions, i18nTranslationNamespace} from './stencil-i18n';\nimport {init18n} from './stencil-i18n';\n\nexport interface StencilBaseAtomicInterface<EngineType extends AnyEngineType>\n extends ComponentInterface {\n analytics: boolean;\n i18n: i18n;\n engine?: EngineType;\n languageAssetsPath: string;\n iconAssetsPath: string;\n logLevel?: LogLevel;\n language?: string;\n host: HTMLElement;\n bindings: AnyBindings;\n error?: Error;\n updateIconAssetsPath(): void;\n registerFieldsToInclude?: () => void; // Fix: Removed the question mark and added a semicolon.\n}\n\nexport const mismatchedInterfaceAndEnginePropError = (\n interfaceKind: 'search' | 'recommendation',\n configurationName: 'query pipeline' | 'search hub'\n) =>\n `A ${configurationName} is configured on the ${interfaceKind} interface element, but the ${interfaceKind} interface was initialized with an engine. You should only configure the ${configurationName} in the target engine.`;\n\nexport class CommonAtomicInterfaceHelper<Engine extends AnyEngineType> {\n private i18nPromise!: Promise<TFunction>;\n private hangingComponentsInitialization: InitializeEvent[] = [];\n\n constructor(\n private atomicInterface: StencilBaseAtomicInterface<Engine>,\n globalVariableName: string\n ) {\n setCoveoGlobal(VERSION, globalVariableName);\n\n const {\n connectedCallback: originalConnectedCallback,\n render: originalRender,\n } = atomicInterface;\n\n atomicInterface.connectedCallback = () => {\n this.i18nPromise = init18n(atomicInterface);\n\n return (\n originalConnectedCallback &&\n originalConnectedCallback.call(atomicInterface)\n );\n };\n\n atomicInterface.render = () => {\n if (atomicInterface.error) {\n return (\n <atomic-component-error\n element={atomicInterface.host}\n error={atomicInterface.error}\n ></atomic-component-error>\n );\n }\n\n return originalRender && originalRender.call(atomicInterface);\n };\n }\n\n public onComponentInitializing(event: InitializeEvent) {\n event.preventDefault();\n event.stopPropagation();\n\n if (this.atomicInterface.engine) {\n event.detail(this.atomicInterface.bindings);\n return;\n }\n\n this.hangingComponentsInitialization.push(event);\n }\n\n public async onInitialization(initEngine: () => void) {\n if (this.atomicInterface.engine) {\n this.atomicInterface.engine.logger.warn(\n `The ${this.interfaceTagname} component \"initialize\" has already been called.`,\n this.atomicInterface.host\n );\n return;\n }\n\n this.atomicInterface.updateIconAssetsPath();\n initEngine();\n if (this.atomicInterface.registerFieldsToInclude) {\n this.atomicInterface.registerFieldsToInclude();\n }\n loadDayjsLocale(this.language);\n await this.i18nPromise;\n this.initComponents();\n }\n\n public onAnalyticsChange() {\n const {engine, analytics} = this.atomicInterface;\n if (!this.engineIsCreated(engine)) {\n return;\n }\n\n if (!analytics) {\n engine.disableAnalytics();\n return;\n }\n\n engine.enableAnalytics();\n }\n\n public onLanguageChange() {\n const {i18n, language} = this.atomicInterface;\n\n loadDayjsLocale(this.language);\n const {resolve, promise} = Promise.withResolvers<void>();\n new Backend(i18n.services, i18nBackendOptions(this.atomicInterface)).read(\n this.language,\n i18nTranslationNamespace,\n async (_: unknown, data: unknown) => {\n i18n.addResourceBundle(\n this.language,\n i18nTranslationNamespace,\n data,\n true,\n false\n );\n await i18n.changeLanguage(language);\n resolve();\n }\n );\n return promise;\n }\n\n public engineIsCreated(engine?: Engine): engine is Engine {\n if (!engine) {\n console.error(\n `You have to call \"initialize\" on the ${this.interfaceTagname} component before modifying the props or calling other public methods.`,\n this.atomicInterface.host\n );\n return false;\n }\n\n return true;\n }\n\n private get interfaceTagname() {\n return this.atomicInterface.host.tagName.toLowerCase();\n }\n\n private initComponents() {\n this.hangingComponentsInitialization.forEach((event) =>\n event.detail(this.atomicInterface.bindings)\n );\n }\n\n private get language() {\n return this.atomicInterface.language || 'en';\n }\n}\n","import type {\n AnalyticsClientSendEventHook,\n AnalyticsConfiguration,\n EngineConfiguration,\n SearchEngineConfiguration,\n} from '@coveo/headless';\nimport type {InsightEngineConfiguration} from '@coveo/headless/insight';\nimport type {RecommendationEngineConfiguration} from '@coveo/headless/recommendation';\nimport {getAtomicVersion} from '../../../global/environment';\n\nexport type AnalyticsPayload = Parameters<AnalyticsClientSendEventHook>[1];\n\nexport function augmentWithExternalMiddleware(\n event: string,\n payload: AnalyticsPayload,\n config:\n | InsightEngineConfiguration\n | SearchEngineConfiguration\n | RecommendationEngineConfiguration\n) {\n if (config.analytics?.analyticsClientMiddleware) {\n return config.analytics.analyticsClientMiddleware(event, payload);\n }\n return payload;\n}\n\nexport function augmentAnalyticsWithAtomicVersion(payload: AnalyticsPayload) {\n if (payload.customData) {\n payload.customData.coveoAtomicVersion = getAtomicVersion();\n }\n return payload;\n}\n\nexport function augmentAnalyticsConfigWithDocument(): AnalyticsConfiguration {\n return {\n documentLocation: document.location.href,\n ...(document.referrer && {originLevel3: document.referrer}),\n };\n}\n\nconst versionMatcher = /^(\\d+\\.\\d+\\.\\d+)/;\n\nexport function augmentAnalyticsConfigWithAtomicVersion(): Required<\n Pick<AnalyticsConfiguration, 'source'>\n> {\n return {\n source: {\n '@coveo/atomic': versionMatcher.exec(getAtomicVersion())?.[0] || '0.0.0',\n },\n };\n}\n\nexport function getNextAnalyticsConfig(\n searchEngineConfig: EngineConfiguration,\n enabled: boolean\n): AnalyticsConfiguration {\n const configuration: AnalyticsConfiguration = {\n enabled,\n documentLocation: document.location.href,\n ...(document.referrer && {originLevel3: document.referrer}),\n };\n\n const analyticsConfiguration = searchEngineConfig.analytics ?? {};\n Object.assign(\n analyticsConfiguration,\n augmentAnalyticsConfigWithAtomicVersion()\n );\n Object.assign(configuration, analyticsConfiguration);\n\n return configuration;\n}\n"],"mappings":"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","ignoreList":[]}