@coveo/atomic 3.35.0-pre.946549b45a → 3.35.0-pre.965230d496

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 (716) hide show
  1. package/dist/atomic/_atomic.esm.js +1 -1
  2. package/dist/atomic/components/atomic-category-facet.js +17 -7
  3. package/dist/atomic/components/atomic-category-facet.js.map +1 -1
  4. package/dist/atomic/components/atomic-external.js +0 -1
  5. package/dist/atomic/components/atomic-external.js.map +1 -1
  6. package/dist/atomic/components/atomic-field-condition.js +1 -1
  7. package/dist/atomic/components/atomic-field-condition.js.map +1 -1
  8. package/dist/atomic/components/atomic-insight-result-children-template.js +1 -1
  9. package/dist/atomic/components/atomic-insight-result-children-template.js.map +1 -1
  10. package/dist/atomic/components/atomic-insight-result-template.js +1 -1
  11. package/dist/atomic/components/atomic-insight-result-template.js.map +1 -1
  12. package/dist/atomic/components/atomic-recs-interface.js +1 -1
  13. package/dist/atomic/components/atomic-recs-result-template.js +1 -1
  14. package/dist/atomic/components/atomic-recs-result-template.js.map +1 -1
  15. package/dist/atomic/components/atomic-result-children-template.js +1 -1
  16. package/dist/atomic/components/atomic-result-children-template.js.map +1 -1
  17. package/dist/atomic/components/atomic-result-list.js.map +1 -1
  18. package/dist/atomic/components/atomic-result-template.js +1 -1
  19. package/dist/atomic/components/atomic-result-template.js.map +1 -1
  20. package/dist/atomic/components/atomic-search-box.js +7 -3
  21. package/dist/atomic/components/atomic-search-box.js.map +1 -1
  22. package/dist/atomic/components/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.js +3 -1
  23. package/dist/atomic/components/components/commerce/atomic-commerce-category-facet/atomic-commerce-category-facet.js +3 -0
  24. package/dist/atomic/components/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.js +5 -0
  25. package/dist/atomic/components/components/commerce/atomic-commerce-search-box-recent-queries/atomic-commerce-search-box-recent-queries.js +3 -0
  26. package/dist/atomic/components/components/commerce/atomic-product-field-condition/atomic-product-field-condition.js +3 -4
  27. package/dist/atomic/components/components/commerce/atomic-product-template/atomic-product-template.js +3 -4
  28. package/dist/atomic/components/components/common/breadbox/breadcrumb-button.js +6 -1
  29. package/dist/atomic/components/components/common/facets/category-facet/all-categories-button.js +3 -2
  30. package/dist/atomic/components/components/common/facets/category-facet/all-categories-localized-label.js +9 -0
  31. package/dist/atomic/components/components/common/facets/category-facet/search-value.js +6 -1
  32. package/dist/atomic/components/components/common/item-list/table-layout.js +1 -1
  33. package/dist/atomic/components/components/common/{template-controller/template-utils.js → product-template/product-template-common.js} +12 -11
  34. package/dist/atomic/components/components/common/product-template/product-template-controller.js +81 -10
  35. package/dist/atomic/components/components/common/search-box/text-area-clear-button.js +1 -1
  36. package/dist/atomic/components/dom-utils.js +0 -2
  37. package/dist/atomic/components/dom-utils.js.map +1 -1
  38. package/dist/atomic/components/global/environment.js +1 -1
  39. package/dist/atomic/components/{stencil-result-template-common.js → result-template-common.js} +1 -1
  40. package/dist/atomic/components/result-template-common.js.map +1 -0
  41. package/dist/atomic/components/stencil-suggestion-manager.js +1 -1
  42. package/dist/atomic/components/stencil-suggestion-manager.js.map +1 -1
  43. package/dist/atomic/components/table-element-utils.js.map +1 -1
  44. package/dist/atomic/components/utils/dom-utils.js +0 -5
  45. package/dist/atomic/index.esm.js +1 -1
  46. package/dist/atomic/index.esm.js.map +1 -1
  47. package/dist/atomic/lang/cs.json +1 -1
  48. package/dist/atomic/lang/da.json +1 -1
  49. package/dist/atomic/lang/de.json +1 -1
  50. package/dist/atomic/lang/dev.json +1 -1
  51. package/dist/atomic/lang/el.json +1 -1
  52. package/dist/atomic/lang/en.json +1 -1
  53. package/dist/atomic/lang/es.json +1 -1
  54. package/dist/atomic/lang/fi.json +1 -1
  55. package/dist/atomic/lang/fr.json +1 -1
  56. package/dist/atomic/lang/hu.json +1 -1
  57. package/dist/atomic/lang/id.json +1 -1
  58. package/dist/atomic/lang/it.json +1 -1
  59. package/dist/atomic/lang/ja.json +1 -1
  60. package/dist/atomic/lang/ko.json +1 -1
  61. package/dist/atomic/lang/nl.json +1 -1
  62. package/dist/atomic/lang/no.json +1 -1
  63. package/dist/atomic/lang/pl.json +1 -1
  64. package/dist/atomic/lang/pt-BR.json +1 -1
  65. package/dist/atomic/lang/pt.json +1 -1
  66. package/dist/atomic/lang/ru.json +1 -1
  67. package/dist/atomic/lang/sv.json +1 -1
  68. package/dist/atomic/lang/th.json +1 -1
  69. package/dist/atomic/lang/tr.json +1 -1
  70. package/dist/atomic/lang/zh-CN.json +1 -1
  71. package/dist/atomic/lang/zh-TW.json +1 -1
  72. package/dist/atomic/lang/zh.json +1 -1
  73. package/dist/atomic/{p-64bf37c9.entry.js → p-0035e3da.entry.js} +2 -2
  74. package/dist/atomic/p-01eda62a.entry.js +2 -0
  75. package/dist/atomic/{p-601b8ab7.entry.js.map → p-01eda62a.entry.js.map} +1 -1
  76. package/dist/atomic/p-025a346a.js +1 -1
  77. package/dist/atomic/{p-b3fb5a74.entry.js → p-02f2ac0b.entry.js} +2 -2
  78. package/dist/atomic/{p-0de79f5f.entry.js → p-066df32a.entry.js} +2 -2
  79. package/dist/atomic/{p-e40cac9e.entry.js → p-06bc57be.entry.js} +2 -2
  80. package/dist/atomic/p-0714b56d.entry.js +2 -0
  81. package/dist/atomic/{p-4219863f.entry.js.map → p-0714b56d.entry.js.map} +1 -1
  82. package/dist/atomic/{p-060e1a2c.entry.js → p-104d7a84.entry.js} +2 -2
  83. package/dist/atomic/p-1936bfc8.entry.js +2 -0
  84. package/dist/atomic/{p-e2d99a33.entry.js.map → p-1936bfc8.entry.js.map} +1 -1
  85. package/dist/atomic/{p-d537096a.js → p-1fca38e1.js} +2 -2
  86. package/dist/atomic/{p-f7c3528f.entry.js → p-2033533c.entry.js} +2 -2
  87. package/dist/atomic/{p-070acab5.entry.js → p-25ee4bab.entry.js} +2 -2
  88. package/dist/atomic/{p-6a3efd75.entry.js.map → p-25ee4bab.entry.js.map} +1 -1
  89. package/dist/atomic/p-268ce7ca.entry.js +2 -0
  90. package/dist/atomic/{p-a715255f.entry.js.map → p-268ce7ca.entry.js.map} +1 -1
  91. package/dist/atomic/{p-9c104243.entry.js → p-27746cac.entry.js} +2 -2
  92. package/dist/atomic/{p-d67c59f0.entry.js → p-2c8d8e83.entry.js} +2 -2
  93. package/dist/atomic/p-2c8d8e83.entry.js.map +1 -0
  94. package/dist/atomic/p-2c94b87e.js +2 -0
  95. package/dist/atomic/p-2c94b87e.js.map +1 -0
  96. package/dist/atomic/{p-484df738.entry.js → p-2eac7c46.entry.js} +2 -2
  97. package/dist/atomic/{p-55eae6bc.entry.js → p-3282ccf8.entry.js} +2 -2
  98. package/dist/atomic/{p-5c12aebe.entry.js → p-33b3b967.entry.js} +2 -2
  99. package/dist/atomic/{p-12636f55.entry.js → p-36270a85.entry.js} +2 -2
  100. package/dist/atomic/{p-1fe5514d.entry.js → p-37182242.entry.js} +2 -2
  101. package/dist/atomic/{p-fc60a035.entry.js → p-388dcf68.entry.js} +2 -2
  102. package/dist/atomic/{p-7c5c836e.entry.js → p-3becda0c.entry.js} +2 -2
  103. package/dist/atomic/{p-201b58b3.js → p-3dc06261.js} +2 -2
  104. package/dist/atomic/p-3ec45f9c.entry.js +2 -0
  105. package/dist/atomic/{p-419de484.entry.js.map → p-3ec45f9c.entry.js.map} +1 -1
  106. package/dist/atomic/p-3f3f6b14.entry.js +2 -0
  107. package/dist/atomic/{p-de4dfbec.entry.js.map → p-3f3f6b14.entry.js.map} +1 -1
  108. package/dist/atomic/{p-3b52e039.js → p-4080f740.js} +2 -2
  109. package/dist/atomic/{p-2eb2676d.entry.js → p-4206b797.entry.js} +2 -2
  110. package/dist/atomic/{p-084e4c5c.entry.js → p-458697db.entry.js} +2 -2
  111. package/dist/atomic/p-47002021.entry.js +2 -0
  112. package/dist/atomic/{p-e4f7e454.entry.js.map → p-47002021.entry.js.map} +1 -1
  113. package/dist/atomic/{p-de7950d9.entry.js → p-4778132c.entry.js} +2 -2
  114. package/dist/atomic/{p-e0d8e122.entry.js → p-4ba1eb36.entry.js} +2 -2
  115. package/dist/atomic/p-4ba1eb36.entry.js.map +1 -0
  116. package/dist/atomic/{p-ef9257fa.entry.js → p-4bc0dc09.entry.js} +2 -2
  117. package/dist/atomic/p-4cf97b0a.entry.js +2 -0
  118. package/dist/atomic/{p-3e81928e.entry.js.map → p-4cf97b0a.entry.js.map} +1 -1
  119. package/dist/atomic/{p-f959d5a1.entry.js → p-530396d4.entry.js} +2 -2
  120. package/dist/atomic/{p-078926b2.entry.js → p-582ce205.entry.js} +2 -2
  121. package/dist/atomic/p-5a9460ab.entry.js +2 -0
  122. package/dist/atomic/{p-1e01224b.entry.js.map → p-5a9460ab.entry.js.map} +1 -1
  123. package/dist/atomic/p-5e5599f3.js +1 -1
  124. package/dist/atomic/{p-851709f5.entry.js → p-5eaee0be.entry.js} +2 -2
  125. package/dist/atomic/p-609d0550.entry.js +2 -0
  126. package/dist/atomic/{p-ddfcae3b.entry.js.map → p-609d0550.entry.js.map} +1 -1
  127. package/dist/atomic/{p-63423f6b.entry.js → p-6489c611.entry.js} +2 -2
  128. package/dist/atomic/{p-f7b70070.entry.js → p-66beb63a.entry.js} +2 -2
  129. package/dist/atomic/{p-070acab5.entry.js.map → p-66beb63a.entry.js.map} +1 -1
  130. package/dist/atomic/{p-e0c9ddd5.entry.js → p-67f62282.entry.js} +2 -2
  131. package/dist/atomic/p-690cb10f.entry.js +2 -0
  132. package/dist/atomic/{p-d5421c6b.entry.js.map → p-690cb10f.entry.js.map} +1 -1
  133. package/dist/atomic/p-6a3b139f.entry.js +2 -0
  134. package/dist/atomic/{p-7f137439.entry.js.map → p-6a3b139f.entry.js.map} +1 -1
  135. package/dist/atomic/{p-54235369.entry.js → p-6ca16a70.entry.js} +2 -2
  136. package/dist/atomic/p-6d0e9fad.entry.js +2 -0
  137. package/dist/atomic/{p-30c064ed.entry.js.map → p-6d0e9fad.entry.js.map} +1 -1
  138. package/dist/atomic/{p-edb34365.entry.js → p-6da5e67e.entry.js} +2 -2
  139. package/dist/atomic/p-6f93d6d6.entry.js +2 -0
  140. package/dist/atomic/{p-a5b65a11.entry.js.map → p-6f93d6d6.entry.js.map} +1 -1
  141. package/dist/atomic/{p-d7eb9531.entry.js → p-77727995.entry.js} +2 -2
  142. package/dist/atomic/p-798598a4.entry.js +2 -0
  143. package/dist/atomic/{p-a81f3714.entry.js.map → p-798598a4.entry.js.map} +1 -1
  144. package/dist/atomic/p-7bf809eb.entry.js +2 -0
  145. package/dist/atomic/{p-798b20e3.entry.js.map → p-7bf809eb.entry.js.map} +1 -1
  146. package/dist/atomic/{p-bb3a2ec9.entry.js → p-81b00c43.entry.js} +2 -2
  147. package/dist/atomic/{p-cb378159.entry.js → p-847cdfd5.entry.js} +2 -2
  148. package/dist/atomic/{p-1cd42a4e.entry.js → p-84ac45b4.entry.js} +2 -2
  149. package/dist/atomic/p-875eb57b.entry.js +2 -0
  150. package/dist/atomic/{p-2dab3401.entry.js.map → p-875eb57b.entry.js.map} +1 -1
  151. package/dist/atomic/{p-939aac48.entry.js → p-895da76b.entry.js} +2 -2
  152. package/dist/atomic/{p-af358e98.entry.js → p-8b0cf1d4.entry.js} +2 -2
  153. package/dist/atomic/p-8b0cf1d4.entry.js.map +1 -0
  154. package/dist/atomic/{p-3cc5717d.entry.js → p-8d1f7884.entry.js} +2 -2
  155. package/dist/atomic/{p-44bf0e38.entry.js → p-8d63a0c4.entry.js} +2 -2
  156. package/dist/atomic/{p-f4ff8e62.entry.js.map → p-8d63a0c4.entry.js.map} +1 -1
  157. package/dist/atomic/p-8e964890.entry.js +2 -0
  158. package/dist/atomic/{p-3dadbb3a.entry.js.map → p-8e964890.entry.js.map} +1 -1
  159. package/dist/atomic/{p-5363fc15.entry.js → p-90ace4cd.entry.js} +2 -2
  160. package/dist/atomic/{p-396308f6.entry.js → p-91260e2b.entry.js} +2 -2
  161. package/dist/atomic/p-9389337e.entry.js +2 -0
  162. package/dist/atomic/{p-d0b9f281.entry.js.map → p-9389337e.entry.js.map} +1 -1
  163. package/dist/atomic/{p-043e25e1.entry.js → p-9392b7da.entry.js} +2 -2
  164. package/dist/atomic/{p-a0f803cf.entry.js → p-9519e656.entry.js} +2 -2
  165. package/dist/atomic/p-98790c52.entry.js +2 -0
  166. package/dist/atomic/{p-ea1a448d.entry.js.map → p-98790c52.entry.js.map} +1 -1
  167. package/dist/atomic/{p-1b5acaf7.entry.js → p-9aad555a.entry.js} +2 -2
  168. package/dist/atomic/{p-4c58b5ee.js → p-9ae68e86.js} +2 -2
  169. package/dist/atomic/p-9ae68e86.js.map +1 -0
  170. package/dist/atomic/p-a48ae7ab.entry.js +2 -0
  171. package/dist/atomic/{p-4a172f6c.entry.js.map → p-a48ae7ab.entry.js.map} +1 -1
  172. package/dist/atomic/{p-b9909a73.entry.js → p-a78cbb80.entry.js} +2 -2
  173. package/dist/atomic/p-a78cbb80.entry.js.map +1 -0
  174. package/dist/atomic/{p-6fc8bf11.entry.js → p-a9016629.entry.js} +2 -2
  175. package/dist/atomic/p-a9016629.entry.js.map +1 -0
  176. package/dist/atomic/p-ab3da44d.entry.js +2 -0
  177. package/dist/atomic/{p-8fe875c1.entry.js.map → p-ab3da44d.entry.js.map} +1 -1
  178. package/dist/atomic/{p-be0518ae.js → p-acd1a1d3.js} +1 -1
  179. package/dist/atomic/p-acd1a1d3.js.map +1 -0
  180. package/dist/atomic/{p-944d38f4.entry.js → p-acd72087.entry.js} +2 -2
  181. package/dist/atomic/{p-9afbdee1.entry.js → p-ae071697.entry.js} +2 -2
  182. package/dist/atomic/{p-2d4b229d.entry.js → p-ae346172.entry.js} +2 -2
  183. package/dist/atomic/{p-1fabc1e7.entry.js → p-b06de6f8.entry.js} +2 -2
  184. package/dist/atomic/p-b93c93f7.entry.js +2 -0
  185. package/dist/atomic/{p-c966da1f.entry.js.map → p-b93c93f7.entry.js.map} +1 -1
  186. package/dist/atomic/{p-f3c0122f.entry.js → p-b9eeac20.entry.js} +2 -2
  187. package/dist/atomic/p-b9eeac20.entry.js.map +1 -0
  188. package/dist/atomic/{p-e9afb6ee.entry.js → p-bb0e0b5d.entry.js} +2 -2
  189. package/dist/atomic/p-c3451367.js +2 -0
  190. package/dist/atomic/{p-c8df6cfb.entry.js → p-c402cc93.entry.js} +2 -2
  191. package/dist/atomic/{p-d0e5fd5e.entry.js.map → p-c402cc93.entry.js.map} +1 -1
  192. package/dist/atomic/{p-127e1891.entry.js → p-c45361ac.entry.js} +2 -2
  193. package/dist/atomic/p-c82dd1aa.entry.js +2 -0
  194. package/dist/atomic/{p-c8df6cfb.entry.js.map → p-c82dd1aa.entry.js.map} +1 -1
  195. package/dist/atomic/p-c9074946.js +2 -0
  196. package/dist/atomic/p-c9074946.js.map +1 -0
  197. package/dist/atomic/{p-f983e811.js → p-cae02339.js} +2 -2
  198. package/dist/atomic/p-cbec8d32.entry.js +2 -0
  199. package/dist/atomic/{p-dcbef3e1.entry.js.map → p-cbec8d32.entry.js.map} +1 -1
  200. package/dist/atomic/{p-f20fe78c.entry.js → p-cd047d6d.entry.js} +2 -2
  201. package/dist/atomic/{p-79ae5adc.entry.js → p-ceca3fb8.entry.js} +2 -2
  202. package/dist/atomic/{p-62215819.entry.js → p-cf0a69e5.entry.js} +2 -2
  203. package/dist/atomic/{p-d4e0d62c.entry.js → p-d0937472.entry.js} +2 -2
  204. package/dist/atomic/{p-52c8c827.entry.js → p-d3d0ac7c.entry.js} +2 -2
  205. package/dist/atomic/{p-96d988a8.entry.js → p-d5402772.entry.js} +2 -2
  206. package/dist/atomic/{p-aa0d5996.entry.js → p-d8d346f3.entry.js} +2 -2
  207. package/dist/atomic/{p-888c2a4e.entry.js → p-da141605.entry.js} +2 -2
  208. package/dist/atomic/{p-8eb03300.entry.js → p-da87ef51.entry.js} +2 -2
  209. package/dist/atomic/p-da87ef51.entry.js.map +1 -0
  210. package/dist/atomic/{p-07323ee1.entry.js → p-dbc08e9e.entry.js} +2 -2
  211. package/dist/atomic/{p-d25c5ce7.entry.js → p-dd258eaa.entry.js} +2 -2
  212. package/dist/atomic/p-dd258eaa.entry.js.map +1 -0
  213. package/dist/atomic/{p-5c21cdbd.entry.js → p-e0d103ba.entry.js} +2 -2
  214. package/dist/atomic/p-e1dbe31d.entry.js +2 -0
  215. package/dist/atomic/{p-7627f6e0.entry.js.map → p-e1dbe31d.entry.js.map} +1 -1
  216. package/dist/atomic/{p-892dc31b.entry.js → p-e62caa78.entry.js} +2 -2
  217. package/dist/atomic/p-e8180b21.entry.js +2 -0
  218. package/dist/atomic/{p-4255ba1c.entry.js → p-f04c86b4.entry.js} +2 -2
  219. package/dist/atomic/{p-2da9105b.entry.js → p-f12325cc.entry.js} +2 -2
  220. package/dist/atomic/p-f44e1bd3.entry.js +2 -0
  221. package/dist/atomic/{p-f7b70070.entry.js.map → p-f44e1bd3.entry.js.map} +1 -1
  222. package/dist/atomic/{p-4f6585c0.entry.js → p-f5a0fdc8.entry.js} +2 -2
  223. package/dist/atomic/{p-f746c040.entry.js → p-f654697b.entry.js} +2 -2
  224. package/dist/atomic/{p-6cc3f4e6.entry.js → p-f800678c.entry.js} +2 -2
  225. package/dist/atomic/p-fa83768b.entry.js +2 -0
  226. package/dist/atomic/{p-f1624191.entry.js.map → p-fa83768b.entry.js.map} +1 -1
  227. package/dist/atomic/{p-0ff3cddc.entry.js → p-fb517fba.entry.js} +2 -2
  228. package/dist/atomic/p-fb517fba.entry.js.map +1 -0
  229. package/dist/atomic/{p-ea1a448d.entry.js → p-fb5598e9.entry.js} +2 -2
  230. package/dist/atomic/{p-44bf0e38.entry.js.map → p-fb5598e9.entry.js.map} +1 -1
  231. package/dist/atomic/{p-8347e7a1.entry.js → p-fd7a8926.entry.js} +2 -2
  232. package/dist/atomic/{p-03e01aef.js → p-ff2d324d.js} +2 -2
  233. package/dist/cjs/_index.cjs.js +5 -7
  234. package/dist/cjs/atomic-automatic-facet_2.cjs.entry.js +5 -5
  235. package/dist/cjs/atomic-breadbox.cjs.entry.js +5 -5
  236. package/dist/cjs/atomic-category-facet.cjs.entry.js +23 -13
  237. package/dist/cjs/atomic-category-facet.cjs.entry.js.map +1 -1
  238. package/dist/cjs/atomic-color-facet.cjs.entry.js +5 -5
  239. package/dist/cjs/atomic-did-you-mean.cjs.entry.js +3 -5
  240. package/dist/cjs/atomic-did-you-mean.cjs.entry.js.map +1 -1
  241. package/dist/cjs/atomic-external.cjs.entry.js +2 -4
  242. package/dist/cjs/atomic-external.cjs.entry.js.map +1 -1
  243. package/dist/cjs/atomic-facet-manager.cjs.entry.js +3 -5
  244. package/dist/cjs/atomic-facet-manager.cjs.entry.js.map +1 -1
  245. package/dist/cjs/atomic-facet.cjs.entry.js +6 -6
  246. package/dist/cjs/atomic-field-condition.cjs.entry.js +6 -6
  247. package/dist/cjs/atomic-field-condition.cjs.entry.js.map +1 -1
  248. package/dist/cjs/atomic-folded-result-list.cjs.entry.js +6 -6
  249. package/dist/cjs/atomic-generated-answer-feedback-modal.cjs.entry.js +6 -6
  250. package/dist/cjs/atomic-generated-answer.cjs.entry.js +5 -5
  251. package/dist/cjs/atomic-html.cjs.entry.js +3 -3
  252. package/dist/cjs/atomic-insight-facet.cjs.entry.js +6 -6
  253. package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js +6 -6
  254. package/dist/cjs/atomic-insight-full-search-button.cjs.entry.js +3 -5
  255. package/dist/cjs/atomic-insight-full-search-button.cjs.entry.js.map +1 -1
  256. package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js +5 -5
  257. package/dist/cjs/atomic-insight-layout.cjs.entry.js +5 -5
  258. package/dist/cjs/atomic-insight-no-results.cjs.entry.js +5 -5
  259. package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js +6 -6
  260. package/dist/cjs/atomic-insight-pager.cjs.entry.js +5 -5
  261. package/dist/cjs/atomic-insight-query-error.cjs.entry.js +5 -5
  262. package/dist/cjs/atomic-insight-query-summary.cjs.entry.js +5 -5
  263. package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js +5 -5
  264. package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js +3 -5
  265. package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js.map +1 -1
  266. package/dist/cjs/atomic-insight-result-action.cjs.entry.js +5 -7
  267. package/dist/cjs/atomic-insight-result-action.cjs.entry.js.map +1 -1
  268. package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js +5 -7
  269. package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js.map +1 -1
  270. package/dist/cjs/atomic-insight-result-attach-to-case-indicator.cjs.entry.js +5 -7
  271. package/dist/cjs/atomic-insight-result-attach-to-case-indicator.cjs.entry.js.map +1 -1
  272. package/dist/cjs/atomic-insight-result-children-template.cjs.entry.js +5 -5
  273. package/dist/cjs/atomic-insight-result-children-template.cjs.entry.js.map +1 -1
  274. package/dist/cjs/atomic-insight-result-children.cjs.entry.js +5 -5
  275. package/dist/cjs/atomic-insight-result-list.cjs.entry.js +6 -6
  276. package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js +7 -7
  277. package/dist/cjs/atomic-insight-result-template.cjs.entry.js +5 -5
  278. package/dist/cjs/atomic-insight-result-template.cjs.entry.js.map +1 -1
  279. package/dist/cjs/atomic-insight-result.cjs.entry.js +4 -4
  280. package/dist/cjs/atomic-insight-search-box.cjs.entry.js +4 -4
  281. package/dist/cjs/atomic-insight-smart-snippet-feedback-modal.cjs.entry.js +4 -4
  282. package/dist/cjs/atomic-insight-smart-snippet-suggestions.cjs.entry.js +5 -5
  283. package/dist/cjs/atomic-insight-smart-snippet.cjs.entry.js +4 -4
  284. package/dist/cjs/atomic-insight-tab.cjs.entry.js +5 -5
  285. package/dist/cjs/atomic-insight-tabs.cjs.entry.js +3 -5
  286. package/dist/cjs/atomic-insight-tabs.cjs.entry.js.map +1 -1
  287. package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js +5 -5
  288. package/dist/cjs/atomic-insight-user-actions-modal.cjs.entry.js +3 -5
  289. package/dist/cjs/atomic-insight-user-actions-modal.cjs.entry.js.map +1 -1
  290. package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js +3 -4
  291. package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js.map +1 -1
  292. package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js +3 -5
  293. package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js.map +1 -1
  294. package/dist/cjs/atomic-ipx-body.cjs.entry.js +6 -6
  295. package/dist/cjs/atomic-ipx-button.cjs.entry.js +3 -5
  296. package/dist/cjs/atomic-ipx-button.cjs.entry.js.map +1 -1
  297. package/dist/cjs/atomic-ipx-embedded.cjs.entry.js +6 -6
  298. package/dist/cjs/atomic-ipx-modal.cjs.entry.js +6 -6
  299. package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +6 -6
  300. package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js +5 -5
  301. package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js +3 -5
  302. package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js.map +1 -1
  303. package/dist/cjs/atomic-ipx-result-link.cjs.entry.js +5 -7
  304. package/dist/cjs/atomic-ipx-result-link.cjs.entry.js.map +1 -1
  305. package/dist/cjs/atomic-ipx-tab.cjs.entry.js +5 -5
  306. package/dist/cjs/atomic-ipx-tabs.cjs.entry.js +3 -5
  307. package/dist/cjs/atomic-ipx-tabs.cjs.entry.js.map +1 -1
  308. package/dist/cjs/atomic-load-more-results.cjs.entry.js +5 -5
  309. package/dist/cjs/atomic-no-results.cjs.entry.js +5 -5
  310. package/dist/cjs/atomic-notifications.cjs.entry.js +5 -5
  311. package/dist/cjs/atomic-numeric-facet.cjs.entry.js +6 -6
  312. package/dist/cjs/atomic-popover.cjs.entry.js +3 -5
  313. package/dist/cjs/atomic-popover.cjs.entry.js.map +1 -1
  314. package/dist/cjs/atomic-query-error.cjs.entry.js +5 -5
  315. package/dist/cjs/atomic-quickview-modal.cjs.entry.js +3 -5
  316. package/dist/cjs/atomic-quickview-modal.cjs.entry.js.map +1 -1
  317. package/dist/cjs/atomic-quickview.cjs.entry.js +7 -7
  318. package/dist/cjs/atomic-rating-facet.cjs.entry.js +5 -5
  319. package/dist/cjs/atomic-rating-range-facet.cjs.entry.js +5 -5
  320. package/dist/cjs/atomic-recs-error.cjs.entry.js +5 -5
  321. package/dist/cjs/atomic-recs-interface.cjs.entry.js +1 -1
  322. package/dist/cjs/atomic-recs-list.cjs.entry.js +6 -6
  323. package/dist/cjs/atomic-recs-result-template.cjs.entry.js +5 -5
  324. package/dist/cjs/atomic-recs-result-template.cjs.entry.js.map +1 -1
  325. package/dist/cjs/atomic-recs-result.cjs.entry.js +4 -4
  326. package/dist/cjs/atomic-refine-modal.cjs.entry.js +5 -5
  327. package/dist/cjs/atomic-refine-toggle.cjs.entry.js +3 -5
  328. package/dist/cjs/atomic-refine-toggle.cjs.entry.js.map +1 -1
  329. package/dist/cjs/atomic-result-badge.cjs.entry.js +3 -5
  330. package/dist/cjs/atomic-result-badge.cjs.entry.js.map +1 -1
  331. package/dist/cjs/atomic-result-children-template.cjs.entry.js +4 -4
  332. package/dist/cjs/atomic-result-children-template.cjs.entry.js.map +1 -1
  333. package/dist/cjs/atomic-result-children.cjs.entry.js +6 -6
  334. package/dist/cjs/atomic-result-date.cjs.entry.js +5 -6
  335. package/dist/cjs/atomic-result-date.cjs.entry.js.map +1 -1
  336. package/dist/cjs/atomic-result-fields-list.cjs.entry.js +3 -5
  337. package/dist/cjs/atomic-result-fields-list.cjs.entry.js.map +1 -1
  338. package/dist/cjs/atomic-result-html.cjs.entry.js +5 -7
  339. package/dist/cjs/atomic-result-html.cjs.entry.js.map +1 -1
  340. package/dist/cjs/atomic-result-icon.cjs.entry.js +3 -3
  341. package/dist/cjs/atomic-result-image.cjs.entry.js +5 -7
  342. package/dist/cjs/atomic-result-image.cjs.entry.js.map +1 -1
  343. package/dist/cjs/atomic-result-link.cjs.entry.js +5 -7
  344. package/dist/cjs/atomic-result-link.cjs.entry.js.map +1 -1
  345. package/dist/cjs/atomic-result-list.cjs.entry.js +7 -7
  346. package/dist/cjs/atomic-result-list.cjs.entry.js.map +1 -1
  347. package/dist/cjs/atomic-result-localized-text.cjs.entry.js +7 -7
  348. package/dist/cjs/atomic-result-multi-value-text.cjs.entry.js +7 -7
  349. package/dist/cjs/atomic-result-number.cjs.entry.js +5 -7
  350. package/dist/cjs/atomic-result-number.cjs.entry.js.map +1 -1
  351. package/dist/cjs/atomic-result-printable-uri.cjs.entry.js +7 -7
  352. package/dist/cjs/atomic-result-rating.cjs.entry.js +5 -7
  353. package/dist/cjs/atomic-result-rating.cjs.entry.js.map +1 -1
  354. package/dist/cjs/atomic-result-template.cjs.entry.js +4 -4
  355. package/dist/cjs/atomic-result-template.cjs.entry.js.map +1 -1
  356. package/dist/cjs/atomic-result-text_2.cjs.entry.js +5 -7
  357. package/dist/cjs/atomic-result-text_2.cjs.entry.js.map +1 -1
  358. package/dist/cjs/atomic-result-timespan.cjs.entry.js +5 -6
  359. package/dist/cjs/atomic-result-timespan.cjs.entry.js.map +1 -1
  360. package/dist/cjs/atomic-result.cjs.entry.js +4 -4
  361. package/dist/cjs/atomic-search-box.cjs.entry.js +14 -10
  362. package/dist/cjs/atomic-search-box.cjs.entry.js.map +1 -1
  363. package/dist/cjs/atomic-segmented-facet-scrollable.cjs.entry.js +3 -5
  364. package/dist/cjs/atomic-segmented-facet-scrollable.cjs.entry.js.map +1 -1
  365. package/dist/cjs/atomic-segmented-facet.cjs.entry.js +5 -5
  366. package/dist/cjs/atomic-smart-snippet-answer_2.cjs.entry.js +3 -3
  367. package/dist/cjs/atomic-smart-snippet-collapse-wrapper_2.cjs.entry.js +3 -5
  368. package/dist/cjs/atomic-smart-snippet-collapse-wrapper_2.cjs.entry.js.map +1 -1
  369. package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js +4 -4
  370. package/dist/cjs/atomic-smart-snippet-suggestions.cjs.entry.js +4 -4
  371. package/dist/cjs/atomic-smart-snippet.cjs.entry.js +3 -3
  372. package/dist/cjs/atomic-sort-dropdown.cjs.entry.js +5 -5
  373. package/dist/cjs/atomic-tab-bar_2.cjs.entry.js +3 -5
  374. package/dist/cjs/atomic-tab-bar_2.cjs.entry.js.map +1 -1
  375. package/dist/cjs/atomic-tab-manager.cjs.entry.js +3 -5
  376. package/dist/cjs/atomic-tab-manager.cjs.entry.js.map +1 -1
  377. package/dist/cjs/atomic-timeframe-facet.cjs.entry.js +5 -5
  378. package/dist/cjs/{dom-utils-99b6ae8e.js → dom-utils-d4790328.js} +1 -3
  379. package/dist/cjs/dom-utils-d4790328.js.map +1 -0
  380. package/dist/cjs/{facet-guard-86d4d9eb.js → facet-guard-0e8cbe50.js} +2 -2
  381. package/dist/cjs/{facet-guard-86d4d9eb.js.map → facet-guard-0e8cbe50.js.map} +1 -1
  382. package/dist/cjs/index.cjs.js.map +1 -1
  383. package/dist/cjs/{initialization-lit-stencil-common-utils-4aa43394.js → initialization-lit-stencil-common-utils-730030b0.js} +2 -2
  384. package/dist/cjs/{initialization-lit-stencil-common-utils-4aa43394.js.map → initialization-lit-stencil-common-utils-730030b0.js.map} +1 -1
  385. package/dist/cjs/{initialization-utils-bd73b57a.js → initialization-utils-92f1b080.js} +3 -3
  386. package/dist/cjs/{initialization-utils-bd73b57a.js.map → initialization-utils-92f1b080.js.map} +1 -1
  387. package/dist/cjs/{replace-breakpoint-utils-929b72a8.js → replace-breakpoint-utils-47f2eaa4.js} +2 -2
  388. package/dist/cjs/{replace-breakpoint-utils-929b72a8.js.map → replace-breakpoint-utils-47f2eaa4.js.map} +1 -1
  389. package/dist/cjs/{stencil-result-template-common-9906bb6a.js → result-template-common-bc03b2ad.js} +2 -2
  390. package/dist/cjs/result-template-common-bc03b2ad.js.map +1 -0
  391. package/dist/cjs/{stencil-item-decorators-ac2e8fa8.js → stencil-item-decorators-43a96f33.js} +2 -2
  392. package/dist/cjs/{stencil-item-decorators-ac2e8fa8.js.map → stencil-item-decorators-43a96f33.js.map} +1 -1
  393. package/dist/cjs/stencil-item-list-common-b08abf21.js +1 -1
  394. package/dist/cjs/{stencil-result-template-decorators-3a5f1319.js → stencil-result-template-decorators-28b05aaf.js} +2 -2
  395. package/dist/cjs/{stencil-result-template-decorators-3a5f1319.js.map → stencil-result-template-decorators-28b05aaf.js.map} +1 -1
  396. package/dist/cjs/{stencil-suggestion-manager-83efa596.js → stencil-suggestion-manager-62c42aa3.js} +2 -2
  397. package/dist/cjs/stencil-suggestion-manager-62c42aa3.js.map +1 -0
  398. package/dist/cjs/{table-element-utils-2cc6dc82.js → table-element-utils-4865b735.js} +1 -1
  399. package/dist/cjs/table-element-utils-4865b735.js.map +1 -0
  400. package/dist/cjs/timeframe-facet-common-b08ffe64.js +1 -1
  401. package/dist/cjs/version.cjs.js +2 -2
  402. package/dist/esm/_index.js +5 -7
  403. package/dist/esm/atomic-automatic-facet_2.entry.js +5 -5
  404. package/dist/esm/atomic-breadbox.entry.js +5 -5
  405. package/dist/esm/atomic-category-facet.entry.js +23 -13
  406. package/dist/esm/atomic-category-facet.entry.js.map +1 -1
  407. package/dist/esm/atomic-color-facet.entry.js +5 -5
  408. package/dist/esm/atomic-did-you-mean.entry.js +3 -5
  409. package/dist/esm/atomic-did-you-mean.entry.js.map +1 -1
  410. package/dist/esm/atomic-external.entry.js +2 -4
  411. package/dist/esm/atomic-external.entry.js.map +1 -1
  412. package/dist/esm/atomic-facet-manager.entry.js +3 -5
  413. package/dist/esm/atomic-facet-manager.entry.js.map +1 -1
  414. package/dist/esm/atomic-facet.entry.js +6 -6
  415. package/dist/esm/atomic-field-condition.entry.js +5 -5
  416. package/dist/esm/atomic-field-condition.entry.js.map +1 -1
  417. package/dist/esm/atomic-folded-result-list.entry.js +6 -6
  418. package/dist/esm/atomic-generated-answer-feedback-modal.entry.js +6 -6
  419. package/dist/esm/atomic-generated-answer.entry.js +5 -5
  420. package/dist/esm/atomic-html.entry.js +3 -3
  421. package/dist/esm/atomic-insight-facet.entry.js +6 -6
  422. package/dist/esm/atomic-insight-folded-result-list.entry.js +6 -6
  423. package/dist/esm/atomic-insight-full-search-button.entry.js +3 -5
  424. package/dist/esm/atomic-insight-full-search-button.entry.js.map +1 -1
  425. package/dist/esm/atomic-insight-generated-answer.entry.js +5 -5
  426. package/dist/esm/atomic-insight-layout.entry.js +5 -5
  427. package/dist/esm/atomic-insight-no-results.entry.js +5 -5
  428. package/dist/esm/atomic-insight-numeric-facet.entry.js +6 -6
  429. package/dist/esm/atomic-insight-pager.entry.js +5 -5
  430. package/dist/esm/atomic-insight-query-error.entry.js +5 -5
  431. package/dist/esm/atomic-insight-query-summary.entry.js +5 -5
  432. package/dist/esm/atomic-insight-refine-modal.entry.js +5 -5
  433. package/dist/esm/atomic-insight-refine-toggle.entry.js +3 -5
  434. package/dist/esm/atomic-insight-refine-toggle.entry.js.map +1 -1
  435. package/dist/esm/atomic-insight-result-action.entry.js +5 -7
  436. package/dist/esm/atomic-insight-result-action.entry.js.map +1 -1
  437. package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js +5 -7
  438. package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js.map +1 -1
  439. package/dist/esm/atomic-insight-result-attach-to-case-indicator.entry.js +5 -7
  440. package/dist/esm/atomic-insight-result-attach-to-case-indicator.entry.js.map +1 -1
  441. package/dist/esm/atomic-insight-result-children-template.entry.js +2 -2
  442. package/dist/esm/atomic-insight-result-children-template.entry.js.map +1 -1
  443. package/dist/esm/atomic-insight-result-children.entry.js +5 -5
  444. package/dist/esm/atomic-insight-result-list.entry.js +6 -6
  445. package/dist/esm/atomic-insight-result-quickview-action.entry.js +7 -7
  446. package/dist/esm/atomic-insight-result-template.entry.js +2 -2
  447. package/dist/esm/atomic-insight-result-template.entry.js.map +1 -1
  448. package/dist/esm/atomic-insight-result.entry.js +4 -4
  449. package/dist/esm/atomic-insight-search-box.entry.js +4 -4
  450. package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js +4 -4
  451. package/dist/esm/atomic-insight-smart-snippet-suggestions.entry.js +5 -5
  452. package/dist/esm/atomic-insight-smart-snippet.entry.js +4 -4
  453. package/dist/esm/atomic-insight-tab.entry.js +5 -5
  454. package/dist/esm/atomic-insight-tabs.entry.js +3 -5
  455. package/dist/esm/atomic-insight-tabs.entry.js.map +1 -1
  456. package/dist/esm/atomic-insight-timeframe-facet.entry.js +5 -5
  457. package/dist/esm/atomic-insight-user-actions-modal.entry.js +3 -5
  458. package/dist/esm/atomic-insight-user-actions-modal.entry.js.map +1 -1
  459. package/dist/esm/atomic-insight-user-actions-session_2.entry.js +3 -4
  460. package/dist/esm/atomic-insight-user-actions-session_2.entry.js.map +1 -1
  461. package/dist/esm/atomic-insight-user-actions-toggle.entry.js +3 -5
  462. package/dist/esm/atomic-insight-user-actions-toggle.entry.js.map +1 -1
  463. package/dist/esm/atomic-ipx-body.entry.js +6 -6
  464. package/dist/esm/atomic-ipx-button.entry.js +3 -5
  465. package/dist/esm/atomic-ipx-button.entry.js.map +1 -1
  466. package/dist/esm/atomic-ipx-embedded.entry.js +6 -6
  467. package/dist/esm/atomic-ipx-modal.entry.js +6 -6
  468. package/dist/esm/atomic-ipx-recs-list.entry.js +6 -6
  469. package/dist/esm/atomic-ipx-refine-modal.entry.js +5 -5
  470. package/dist/esm/atomic-ipx-refine-toggle.entry.js +3 -5
  471. package/dist/esm/atomic-ipx-refine-toggle.entry.js.map +1 -1
  472. package/dist/esm/atomic-ipx-result-link.entry.js +5 -7
  473. package/dist/esm/atomic-ipx-result-link.entry.js.map +1 -1
  474. package/dist/esm/atomic-ipx-tab.entry.js +5 -5
  475. package/dist/esm/atomic-ipx-tabs.entry.js +3 -5
  476. package/dist/esm/atomic-ipx-tabs.entry.js.map +1 -1
  477. package/dist/esm/atomic-load-more-results.entry.js +5 -5
  478. package/dist/esm/atomic-no-results.entry.js +5 -5
  479. package/dist/esm/atomic-notifications.entry.js +5 -5
  480. package/dist/esm/atomic-numeric-facet.entry.js +6 -6
  481. package/dist/esm/atomic-popover.entry.js +3 -5
  482. package/dist/esm/atomic-popover.entry.js.map +1 -1
  483. package/dist/esm/atomic-query-error.entry.js +5 -5
  484. package/dist/esm/atomic-quickview-modal.entry.js +3 -5
  485. package/dist/esm/atomic-quickview-modal.entry.js.map +1 -1
  486. package/dist/esm/atomic-quickview.entry.js +7 -7
  487. package/dist/esm/atomic-rating-facet.entry.js +5 -5
  488. package/dist/esm/atomic-rating-range-facet.entry.js +5 -5
  489. package/dist/esm/atomic-recs-error.entry.js +5 -5
  490. package/dist/esm/atomic-recs-interface.entry.js +1 -1
  491. package/dist/esm/atomic-recs-list.entry.js +6 -6
  492. package/dist/esm/atomic-recs-result-template.entry.js +2 -2
  493. package/dist/esm/atomic-recs-result-template.entry.js.map +1 -1
  494. package/dist/esm/atomic-recs-result.entry.js +4 -4
  495. package/dist/esm/atomic-refine-modal.entry.js +5 -5
  496. package/dist/esm/atomic-refine-toggle.entry.js +3 -5
  497. package/dist/esm/atomic-refine-toggle.entry.js.map +1 -1
  498. package/dist/esm/atomic-result-badge.entry.js +3 -5
  499. package/dist/esm/atomic-result-badge.entry.js.map +1 -1
  500. package/dist/esm/atomic-result-children-template.entry.js +2 -2
  501. package/dist/esm/atomic-result-children-template.entry.js.map +1 -1
  502. package/dist/esm/atomic-result-children.entry.js +6 -6
  503. package/dist/esm/atomic-result-date.entry.js +5 -6
  504. package/dist/esm/atomic-result-date.entry.js.map +1 -1
  505. package/dist/esm/atomic-result-fields-list.entry.js +3 -5
  506. package/dist/esm/atomic-result-fields-list.entry.js.map +1 -1
  507. package/dist/esm/atomic-result-html.entry.js +5 -7
  508. package/dist/esm/atomic-result-html.entry.js.map +1 -1
  509. package/dist/esm/atomic-result-icon.entry.js +3 -3
  510. package/dist/esm/atomic-result-image.entry.js +5 -7
  511. package/dist/esm/atomic-result-image.entry.js.map +1 -1
  512. package/dist/esm/atomic-result-link.entry.js +5 -7
  513. package/dist/esm/atomic-result-link.entry.js.map +1 -1
  514. package/dist/esm/atomic-result-list.entry.js +7 -7
  515. package/dist/esm/atomic-result-list.entry.js.map +1 -1
  516. package/dist/esm/atomic-result-localized-text.entry.js +7 -7
  517. package/dist/esm/atomic-result-multi-value-text.entry.js +7 -7
  518. package/dist/esm/atomic-result-number.entry.js +5 -7
  519. package/dist/esm/atomic-result-number.entry.js.map +1 -1
  520. package/dist/esm/atomic-result-printable-uri.entry.js +7 -7
  521. package/dist/esm/atomic-result-rating.entry.js +5 -7
  522. package/dist/esm/atomic-result-rating.entry.js.map +1 -1
  523. package/dist/esm/atomic-result-template.entry.js +2 -2
  524. package/dist/esm/atomic-result-template.entry.js.map +1 -1
  525. package/dist/esm/atomic-result-text_2.entry.js +5 -7
  526. package/dist/esm/atomic-result-text_2.entry.js.map +1 -1
  527. package/dist/esm/atomic-result-timespan.entry.js +5 -6
  528. package/dist/esm/atomic-result-timespan.entry.js.map +1 -1
  529. package/dist/esm/atomic-result.entry.js +4 -4
  530. package/dist/esm/atomic-search-box.entry.js +14 -10
  531. package/dist/esm/atomic-search-box.entry.js.map +1 -1
  532. package/dist/esm/atomic-segmented-facet-scrollable.entry.js +3 -5
  533. package/dist/esm/atomic-segmented-facet-scrollable.entry.js.map +1 -1
  534. package/dist/esm/atomic-segmented-facet.entry.js +5 -5
  535. package/dist/esm/atomic-smart-snippet-answer_2.entry.js +3 -3
  536. package/dist/esm/atomic-smart-snippet-collapse-wrapper_2.entry.js +3 -5
  537. package/dist/esm/atomic-smart-snippet-collapse-wrapper_2.entry.js.map +1 -1
  538. package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js +4 -4
  539. package/dist/esm/atomic-smart-snippet-suggestions.entry.js +4 -4
  540. package/dist/esm/atomic-smart-snippet.entry.js +3 -3
  541. package/dist/esm/atomic-sort-dropdown.entry.js +5 -5
  542. package/dist/esm/atomic-tab-bar_2.entry.js +3 -5
  543. package/dist/esm/atomic-tab-bar_2.entry.js.map +1 -1
  544. package/dist/esm/atomic-tab-manager.entry.js +3 -5
  545. package/dist/esm/atomic-tab-manager.entry.js.map +1 -1
  546. package/dist/esm/atomic-timeframe-facet.entry.js +5 -5
  547. package/dist/esm/{dom-utils-7444dea4.js → dom-utils-f6086cd3.js} +1 -3
  548. package/dist/esm/dom-utils-f6086cd3.js.map +1 -0
  549. package/dist/esm/{facet-guard-9dfe4a77.js → facet-guard-3bb4a306.js} +2 -2
  550. package/dist/esm/{facet-guard-9dfe4a77.js.map → facet-guard-3bb4a306.js.map} +1 -1
  551. package/dist/esm/index.js.map +1 -1
  552. package/dist/esm/{initialization-lit-stencil-common-utils-8013d595.js → initialization-lit-stencil-common-utils-804fe146.js} +2 -2
  553. package/dist/esm/{initialization-lit-stencil-common-utils-8013d595.js.map → initialization-lit-stencil-common-utils-804fe146.js.map} +1 -1
  554. package/dist/esm/{initialization-utils-39016e9b.js → initialization-utils-ffbc4136.js} +3 -3
  555. package/dist/esm/{initialization-utils-39016e9b.js.map → initialization-utils-ffbc4136.js.map} +1 -1
  556. package/dist/esm/{replace-breakpoint-utils-0f20353d.js → replace-breakpoint-utils-13ff9ca5.js} +2 -2
  557. package/dist/esm/{replace-breakpoint-utils-0f20353d.js.map → replace-breakpoint-utils-13ff9ca5.js.map} +1 -1
  558. package/dist/esm/{stencil-result-template-common-7dc3918a.js → result-template-common-47799c7c.js} +2 -2
  559. package/dist/esm/result-template-common-47799c7c.js.map +1 -0
  560. package/dist/esm/{stencil-item-decorators-33feff1a.js → stencil-item-decorators-6c453c11.js} +2 -2
  561. package/dist/esm/{stencil-item-decorators-33feff1a.js.map → stencil-item-decorators-6c453c11.js.map} +1 -1
  562. package/dist/esm/stencil-item-list-common-d2833d51.js +1 -1
  563. package/dist/esm/{stencil-result-template-decorators-3874fa73.js → stencil-result-template-decorators-f989bc6b.js} +2 -2
  564. package/dist/esm/{stencil-result-template-decorators-3874fa73.js.map → stencil-result-template-decorators-f989bc6b.js.map} +1 -1
  565. package/dist/esm/{stencil-suggestion-manager-c1c4298e.js → stencil-suggestion-manager-3d2eea75.js} +2 -2
  566. package/dist/esm/stencil-suggestion-manager-3d2eea75.js.map +1 -0
  567. package/dist/esm/{table-element-utils-1dbc5ef6.js → table-element-utils-49d22ec6.js} +1 -1
  568. package/dist/esm/table-element-utils-49d22ec6.js.map +1 -0
  569. package/dist/esm/timeframe-facet-common-33642d0d.js +1 -1
  570. package/dist/esm/version.js +2 -2
  571. package/dist/types/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.d.ts +1 -0
  572. package/dist/types/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.d.ts +1 -0
  573. package/dist/types/components/commerce/atomic-commerce-search-box-recent-queries/atomic-commerce-search-box-recent-queries.d.ts +1 -0
  574. package/dist/types/components/common/breadbox/breadcrumb-button.d.ts +2 -0
  575. package/dist/types/components/common/facets/category-facet/all-categories-button.d.ts +2 -0
  576. package/dist/types/components/common/facets/category-facet/all-categories-localized-label.d.ts +6 -0
  577. package/dist/types/components/common/facets/category-facet/search-value.d.ts +1 -0
  578. package/dist/types/components/common/facets/category-facet/stencil-all-categories-button.d.ts +2 -0
  579. package/dist/types/components/common/facets/category-facet/stencil-search-value.d.ts +1 -0
  580. package/dist/types/components/common/product-template/product-template-common.d.ts +6 -0
  581. package/dist/types/components/common/product-template/product-template-controller.d.ts +19 -5
  582. package/dist/types/components/common/product-template/stencil-product-template-common.d.ts +1 -1
  583. package/dist/types/components/insight/result-templates/atomic-insight-result-children-template/atomic-insight-result-children-template.d.ts +1 -1
  584. package/dist/types/components/search/atomic-search-box/atomic-search-box.d.ts +1 -0
  585. package/dist/types/components/search/result-templates/atomic-result-children-template/atomic-result-children-template.d.ts +1 -1
  586. package/dist/types/directives/hierarchical-path.d.ts +1 -1
  587. package/dist/types/utils/dom-utils.d.ts +0 -1
  588. package/docs/atomic-docs.json +1 -1
  589. package/package.json +3 -3
  590. package/dist/atomic/components/components/common/template-controller/base-template-controller.js +0 -91
  591. package/dist/atomic/components/stencil-result-template-common.js.map +0 -1
  592. package/dist/atomic/p-0ff3cddc.entry.js.map +0 -1
  593. package/dist/atomic/p-1e01224b.entry.js +0 -2
  594. package/dist/atomic/p-2dab3401.entry.js +0 -2
  595. package/dist/atomic/p-30c064ed.entry.js +0 -2
  596. package/dist/atomic/p-3dadbb3a.entry.js +0 -2
  597. package/dist/atomic/p-3e81928e.entry.js +0 -2
  598. package/dist/atomic/p-419de484.entry.js +0 -2
  599. package/dist/atomic/p-4219863f.entry.js +0 -2
  600. package/dist/atomic/p-4a172f6c.entry.js +0 -2
  601. package/dist/atomic/p-4c58b5ee.js.map +0 -1
  602. package/dist/atomic/p-601b8ab7.entry.js +0 -2
  603. package/dist/atomic/p-6a3efd75.entry.js +0 -2
  604. package/dist/atomic/p-6ef684df.js +0 -2
  605. package/dist/atomic/p-6ef684df.js.map +0 -1
  606. package/dist/atomic/p-6fc8bf11.entry.js.map +0 -1
  607. package/dist/atomic/p-7627f6e0.entry.js +0 -2
  608. package/dist/atomic/p-798b20e3.entry.js +0 -2
  609. package/dist/atomic/p-7f137439.entry.js +0 -2
  610. package/dist/atomic/p-81310591.js +0 -2
  611. package/dist/atomic/p-8eb03300.entry.js.map +0 -1
  612. package/dist/atomic/p-8fe875c1.entry.js +0 -2
  613. package/dist/atomic/p-a5b65a11.entry.js +0 -2
  614. package/dist/atomic/p-a715255f.entry.js +0 -2
  615. package/dist/atomic/p-a81f3714.entry.js +0 -2
  616. package/dist/atomic/p-aa290a01.js +0 -2
  617. package/dist/atomic/p-aa290a01.js.map +0 -1
  618. package/dist/atomic/p-af358e98.entry.js.map +0 -1
  619. package/dist/atomic/p-b9909a73.entry.js.map +0 -1
  620. package/dist/atomic/p-be0518ae.js.map +0 -1
  621. package/dist/atomic/p-c966da1f.entry.js +0 -2
  622. package/dist/atomic/p-d0b9f281.entry.js +0 -2
  623. package/dist/atomic/p-d0e5fd5e.entry.js +0 -2
  624. package/dist/atomic/p-d25c5ce7.entry.js.map +0 -1
  625. package/dist/atomic/p-d5421c6b.entry.js +0 -2
  626. package/dist/atomic/p-d67c59f0.entry.js.map +0 -1
  627. package/dist/atomic/p-dcbef3e1.entry.js +0 -2
  628. package/dist/atomic/p-ddfcae3b.entry.js +0 -2
  629. package/dist/atomic/p-de4dfbec.entry.js +0 -2
  630. package/dist/atomic/p-e0d8e122.entry.js.map +0 -1
  631. package/dist/atomic/p-e2d99a33.entry.js +0 -2
  632. package/dist/atomic/p-e4f7e454.entry.js +0 -2
  633. package/dist/atomic/p-f1624191.entry.js +0 -2
  634. package/dist/atomic/p-f3c0122f.entry.js.map +0 -1
  635. package/dist/atomic/p-f4ff8e62.entry.js +0 -2
  636. package/dist/atomic/p-f8f7ebc9.entry.js +0 -2
  637. package/dist/cjs/dom-utils-99b6ae8e.js.map +0 -1
  638. package/dist/cjs/stencil-result-template-common-9906bb6a.js.map +0 -1
  639. package/dist/cjs/stencil-suggestion-manager-83efa596.js.map +0 -1
  640. package/dist/cjs/table-element-utils-2cc6dc82.js.map +0 -1
  641. package/dist/esm/dom-utils-7444dea4.js.map +0 -1
  642. package/dist/esm/stencil-result-template-common-7dc3918a.js.map +0 -1
  643. package/dist/esm/stencil-suggestion-manager-c1c4298e.js.map +0 -1
  644. package/dist/esm/table-element-utils-1dbc5ef6.js.map +0 -1
  645. package/dist/types/components/common/result-templates/result-template-controller.d.ts +0 -12
  646. package/dist/types/components/common/template-controller/base-template-controller.d.ts +0 -34
  647. package/dist/types/components/common/template-controller/template-utils.d.ts +0 -11
  648. /package/dist/atomic/components/components/{common → search/atomic-table-result}/table-element-utils.js +0 -0
  649. /package/dist/atomic/{p-64bf37c9.entry.js.map → p-0035e3da.entry.js.map} +0 -0
  650. /package/dist/atomic/{p-b3fb5a74.entry.js.map → p-02f2ac0b.entry.js.map} +0 -0
  651. /package/dist/atomic/{p-0de79f5f.entry.js.map → p-066df32a.entry.js.map} +0 -0
  652. /package/dist/atomic/{p-e40cac9e.entry.js.map → p-06bc57be.entry.js.map} +0 -0
  653. /package/dist/atomic/{p-060e1a2c.entry.js.map → p-104d7a84.entry.js.map} +0 -0
  654. /package/dist/atomic/{p-d537096a.js.map → p-1fca38e1.js.map} +0 -0
  655. /package/dist/atomic/{p-f7c3528f.entry.js.map → p-2033533c.entry.js.map} +0 -0
  656. /package/dist/atomic/{p-9c104243.entry.js.map → p-27746cac.entry.js.map} +0 -0
  657. /package/dist/atomic/{p-484df738.entry.js.map → p-2eac7c46.entry.js.map} +0 -0
  658. /package/dist/atomic/{p-55eae6bc.entry.js.map → p-3282ccf8.entry.js.map} +0 -0
  659. /package/dist/atomic/{p-5c12aebe.entry.js.map → p-33b3b967.entry.js.map} +0 -0
  660. /package/dist/atomic/{p-12636f55.entry.js.map → p-36270a85.entry.js.map} +0 -0
  661. /package/dist/atomic/{p-1fe5514d.entry.js.map → p-37182242.entry.js.map} +0 -0
  662. /package/dist/atomic/{p-fc60a035.entry.js.map → p-388dcf68.entry.js.map} +0 -0
  663. /package/dist/atomic/{p-7c5c836e.entry.js.map → p-3becda0c.entry.js.map} +0 -0
  664. /package/dist/atomic/{p-201b58b3.js.map → p-3dc06261.js.map} +0 -0
  665. /package/dist/atomic/{p-3b52e039.js.map → p-4080f740.js.map} +0 -0
  666. /package/dist/atomic/{p-2eb2676d.entry.js.map → p-4206b797.entry.js.map} +0 -0
  667. /package/dist/atomic/{p-084e4c5c.entry.js.map → p-458697db.entry.js.map} +0 -0
  668. /package/dist/atomic/{p-de7950d9.entry.js.map → p-4778132c.entry.js.map} +0 -0
  669. /package/dist/atomic/{p-ef9257fa.entry.js.map → p-4bc0dc09.entry.js.map} +0 -0
  670. /package/dist/atomic/{p-f959d5a1.entry.js.map → p-530396d4.entry.js.map} +0 -0
  671. /package/dist/atomic/{p-078926b2.entry.js.map → p-582ce205.entry.js.map} +0 -0
  672. /package/dist/atomic/{p-851709f5.entry.js.map → p-5eaee0be.entry.js.map} +0 -0
  673. /package/dist/atomic/{p-63423f6b.entry.js.map → p-6489c611.entry.js.map} +0 -0
  674. /package/dist/atomic/{p-e0c9ddd5.entry.js.map → p-67f62282.entry.js.map} +0 -0
  675. /package/dist/atomic/{p-54235369.entry.js.map → p-6ca16a70.entry.js.map} +0 -0
  676. /package/dist/atomic/{p-edb34365.entry.js.map → p-6da5e67e.entry.js.map} +0 -0
  677. /package/dist/atomic/{p-d7eb9531.entry.js.map → p-77727995.entry.js.map} +0 -0
  678. /package/dist/atomic/{p-bb3a2ec9.entry.js.map → p-81b00c43.entry.js.map} +0 -0
  679. /package/dist/atomic/{p-cb378159.entry.js.map → p-847cdfd5.entry.js.map} +0 -0
  680. /package/dist/atomic/{p-1cd42a4e.entry.js.map → p-84ac45b4.entry.js.map} +0 -0
  681. /package/dist/atomic/{p-939aac48.entry.js.map → p-895da76b.entry.js.map} +0 -0
  682. /package/dist/atomic/{p-3cc5717d.entry.js.map → p-8d1f7884.entry.js.map} +0 -0
  683. /package/dist/atomic/{p-5363fc15.entry.js.map → p-90ace4cd.entry.js.map} +0 -0
  684. /package/dist/atomic/{p-396308f6.entry.js.map → p-91260e2b.entry.js.map} +0 -0
  685. /package/dist/atomic/{p-043e25e1.entry.js.map → p-9392b7da.entry.js.map} +0 -0
  686. /package/dist/atomic/{p-a0f803cf.entry.js.map → p-9519e656.entry.js.map} +0 -0
  687. /package/dist/atomic/{p-1b5acaf7.entry.js.map → p-9aad555a.entry.js.map} +0 -0
  688. /package/dist/atomic/{p-944d38f4.entry.js.map → p-acd72087.entry.js.map} +0 -0
  689. /package/dist/atomic/{p-9afbdee1.entry.js.map → p-ae071697.entry.js.map} +0 -0
  690. /package/dist/atomic/{p-2d4b229d.entry.js.map → p-ae346172.entry.js.map} +0 -0
  691. /package/dist/atomic/{p-1fabc1e7.entry.js.map → p-b06de6f8.entry.js.map} +0 -0
  692. /package/dist/atomic/{p-e9afb6ee.entry.js.map → p-bb0e0b5d.entry.js.map} +0 -0
  693. /package/dist/atomic/{p-81310591.js.map → p-c3451367.js.map} +0 -0
  694. /package/dist/atomic/{p-127e1891.entry.js.map → p-c45361ac.entry.js.map} +0 -0
  695. /package/dist/atomic/{p-f983e811.js.map → p-cae02339.js.map} +0 -0
  696. /package/dist/atomic/{p-f20fe78c.entry.js.map → p-cd047d6d.entry.js.map} +0 -0
  697. /package/dist/atomic/{p-79ae5adc.entry.js.map → p-ceca3fb8.entry.js.map} +0 -0
  698. /package/dist/atomic/{p-62215819.entry.js.map → p-cf0a69e5.entry.js.map} +0 -0
  699. /package/dist/atomic/{p-d4e0d62c.entry.js.map → p-d0937472.entry.js.map} +0 -0
  700. /package/dist/atomic/{p-52c8c827.entry.js.map → p-d3d0ac7c.entry.js.map} +0 -0
  701. /package/dist/atomic/{p-96d988a8.entry.js.map → p-d5402772.entry.js.map} +0 -0
  702. /package/dist/atomic/{p-aa0d5996.entry.js.map → p-d8d346f3.entry.js.map} +0 -0
  703. /package/dist/atomic/{p-888c2a4e.entry.js.map → p-da141605.entry.js.map} +0 -0
  704. /package/dist/atomic/{p-07323ee1.entry.js.map → p-dbc08e9e.entry.js.map} +0 -0
  705. /package/dist/atomic/{p-5c21cdbd.entry.js.map → p-e0d103ba.entry.js.map} +0 -0
  706. /package/dist/atomic/{p-892dc31b.entry.js.map → p-e62caa78.entry.js.map} +0 -0
  707. /package/dist/atomic/{p-f8f7ebc9.entry.js.map → p-e8180b21.entry.js.map} +0 -0
  708. /package/dist/atomic/{p-4255ba1c.entry.js.map → p-f04c86b4.entry.js.map} +0 -0
  709. /package/dist/atomic/{p-2da9105b.entry.js.map → p-f12325cc.entry.js.map} +0 -0
  710. /package/dist/atomic/{p-4f6585c0.entry.js.map → p-f5a0fdc8.entry.js.map} +0 -0
  711. /package/dist/atomic/{p-f746c040.entry.js.map → p-f654697b.entry.js.map} +0 -0
  712. /package/dist/atomic/{p-6cc3f4e6.entry.js.map → p-f800678c.entry.js.map} +0 -0
  713. /package/dist/atomic/{p-8347e7a1.entry.js.map → p-fd7a8926.entry.js.map} +0 -0
  714. /package/dist/atomic/{p-03e01aef.js.map → p-ff2d324d.js.map} +0 -0
  715. /package/dist/types/components/common/result-templates/{stencil-result-template-common.d.ts → result-template-common.d.ts} +0 -0
  716. /package/dist/types/components/{common → search/atomic-table-result}/table-element-utils.d.ts +0 -0
@@ -1 +1 @@
1
- {"file":"replace-breakpoint-utils-0f20353d.js","mappings":";;AAEO,MAAM,yBAAyB,GAAG,QAAQ,CAAC;AAElD,SAAS,iBAAiB,CAAC,KAAa,EAAE,gBAAwB;IAChE,MAAM,KAAK,GAAG,IAAI,MAAM,CACtB,iBAAiB,yBAAyB,mBAAmB,yBAAyB,KAAK,EAC3F,GAAG,CACJ,CAAC;IACF,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,aAAa,gBAAgB,GAAG,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAoB,EAAE,gBAAwB;IACvE,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,EAAE,kBAAkB,CAAC;IAC3D,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE;QACvC,OAAO;KACR;IAED,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;SAC7C,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC;SAC3B,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAoB,EAAE,UAAkB;IACnE,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC5D,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO;KACR;IAED,QAAQ,CAAC,WAAW,GAAG,iBAAiB,CAAC,QAAQ,CAAC,WAAY,EAAE,UAAU,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,OAAO,GAAG,CAAC,sBAAsB,EAAE,uBAAuB,CAAC,CAAC;SAElD,iBAAiB,CAAC,OAAoB;IACpD,MAAM,MAAM,GAAyB,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAE1E,IAAI,CAAC,MAAM,EAAE,gBAAgB,EAAE;QAC7B,OAAO;KACR;IAED,IAAI,MAAM,CAAC,gBAAgB,KAAK,yBAAyB,EAAE;QACzD,OAAO;KACR;IAED,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACpD,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;AACxD;;;;","names":[],"sources":["src/utils/replace-breakpoint-utils.ts"],"sourcesContent":["import {closest} from './dom-utils';\n\nexport const DEFAULT_MOBILE_BREAKPOINT = '1024px';\n\nfunction replaceMediaQuery(style: string, mobileBreakpoint: string) {\n const regex = new RegExp(\n `\\\\(min-width: ${DEFAULT_MOBILE_BREAKPOINT}\\\\)|\\\\(width >= ${DEFAULT_MOBILE_BREAKPOINT}\\\\)`,\n 'g'\n );\n return style.replace(regex, `(width >= ${mobileBreakpoint})`);\n}\n\nfunction replaceStyleSheet(element: HTMLElement, mobileBreakpoint: string) {\n const stylesheets = element.shadowRoot?.adoptedStyleSheets;\n if (!stylesheets || !stylesheets.length) {\n return;\n }\n\n const stylesheet = stylesheets[0];\n const style = Object.values(stylesheet.cssRules)\n .map((rule) => rule.cssText)\n .join('');\n stylesheet.replaceSync(replaceMediaQuery(style, mobileBreakpoint));\n}\n\nfunction replateStyleContent(element: HTMLElement, breakpoint: string) {\n const styleTag = element.shadowRoot?.querySelector('style');\n if (!styleTag) {\n return;\n }\n\n styleTag.textContent = replaceMediaQuery(styleTag.textContent!, breakpoint);\n}\n\nconst layouts = ['atomic-search-layout', 'atomic-insight-layout'];\ntype LayoutElement = HTMLElement & {mobileBreakpoint: string};\nexport function updateBreakpoints(element: HTMLElement) {\n const layout: LayoutElement | null = closest(element, layouts.join(', '));\n\n if (!layout?.mobileBreakpoint) {\n return;\n }\n\n if (layout.mobileBreakpoint === DEFAULT_MOBILE_BREAKPOINT) {\n return;\n }\n\n replaceStyleSheet(element, layout.mobileBreakpoint);\n replateStyleContent(element, layout.mobileBreakpoint);\n}\n"],"version":3}
1
+ {"file":"replace-breakpoint-utils-13ff9ca5.js","mappings":";;AAEO,MAAM,yBAAyB,GAAG,QAAQ,CAAC;AAElD,SAAS,iBAAiB,CAAC,KAAa,EAAE,gBAAwB;IAChE,MAAM,KAAK,GAAG,IAAI,MAAM,CACtB,iBAAiB,yBAAyB,mBAAmB,yBAAyB,KAAK,EAC3F,GAAG,CACJ,CAAC;IACF,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,aAAa,gBAAgB,GAAG,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAoB,EAAE,gBAAwB;IACvE,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,EAAE,kBAAkB,CAAC;IAC3D,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE;QACvC,OAAO;KACR;IAED,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;SAC7C,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC;SAC3B,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAoB,EAAE,UAAkB;IACnE,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC5D,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO;KACR;IAED,QAAQ,CAAC,WAAW,GAAG,iBAAiB,CAAC,QAAQ,CAAC,WAAY,EAAE,UAAU,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,OAAO,GAAG,CAAC,sBAAsB,EAAE,uBAAuB,CAAC,CAAC;SAElD,iBAAiB,CAAC,OAAoB;IACpD,MAAM,MAAM,GAAyB,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAE1E,IAAI,CAAC,MAAM,EAAE,gBAAgB,EAAE;QAC7B,OAAO;KACR;IAED,IAAI,MAAM,CAAC,gBAAgB,KAAK,yBAAyB,EAAE;QACzD,OAAO;KACR;IAED,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACpD,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;AACxD;;;;","names":[],"sources":["src/utils/replace-breakpoint-utils.ts"],"sourcesContent":["import {closest} from './dom-utils';\n\nexport const DEFAULT_MOBILE_BREAKPOINT = '1024px';\n\nfunction replaceMediaQuery(style: string, mobileBreakpoint: string) {\n const regex = new RegExp(\n `\\\\(min-width: ${DEFAULT_MOBILE_BREAKPOINT}\\\\)|\\\\(width >= ${DEFAULT_MOBILE_BREAKPOINT}\\\\)`,\n 'g'\n );\n return style.replace(regex, `(width >= ${mobileBreakpoint})`);\n}\n\nfunction replaceStyleSheet(element: HTMLElement, mobileBreakpoint: string) {\n const stylesheets = element.shadowRoot?.adoptedStyleSheets;\n if (!stylesheets || !stylesheets.length) {\n return;\n }\n\n const stylesheet = stylesheets[0];\n const style = Object.values(stylesheet.cssRules)\n .map((rule) => rule.cssText)\n .join('');\n stylesheet.replaceSync(replaceMediaQuery(style, mobileBreakpoint));\n}\n\nfunction replateStyleContent(element: HTMLElement, breakpoint: string) {\n const styleTag = element.shadowRoot?.querySelector('style');\n if (!styleTag) {\n return;\n }\n\n styleTag.textContent = replaceMediaQuery(styleTag.textContent!, breakpoint);\n}\n\nconst layouts = ['atomic-search-layout', 'atomic-insight-layout'];\ntype LayoutElement = HTMLElement & {mobileBreakpoint: string};\nexport function updateBreakpoints(element: HTMLElement) {\n const layout: LayoutElement | null = closest(element, layouts.join(', '));\n\n if (!layout?.mobileBreakpoint) {\n return;\n }\n\n if (layout.mobileBreakpoint === DEFAULT_MOBILE_BREAKPOINT) {\n return;\n }\n\n replaceStyleSheet(element, layout.mobileBreakpoint);\n replateStyleContent(element, layout.mobileBreakpoint);\n}\n"],"version":3}
@@ -1,7 +1,7 @@
1
1
  import { ResultTemplatesHelpers } from '@coveo/headless';
2
2
  import { h } from './index-3f35faca.js';
3
3
  import { a as aggregate, i as isVisualNode, b as isElementNode } from './utils-6400ebde.js';
4
- import { t as tableElementTagName } from './table-element-utils-1dbc5ef6.js';
4
+ import { t as tableElementTagName } from './table-element-utils-49d22ec6.js';
5
5
  import { i as isResultSectionNode } from './item-layout-sections-26123790.js';
6
6
 
7
7
  function getTemplateNodeType(node) {
@@ -112,4 +112,4 @@ function makeDefinedConditions(ifDefined, ifNotDefined) {
112
112
 
113
113
  export { ResultTemplateCommon as R, makeDefinedConditions as a, makeMatchConditions as m };
114
114
 
115
- //# sourceMappingURL=stencil-result-template-common-7dc3918a.js.map
115
+ //# sourceMappingURL=result-template-common-47799c7c.js.map
@@ -0,0 +1 @@
1
+ {"file":"result-template-common-47799c7c.js","mappings":"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","names":[],"sources":["src/components/common/result-templates/result-template-common.tsx"],"sourcesContent":["import {\n ResultTemplate,\n ResultTemplateCondition,\n ResultTemplatesHelpers,\n} from '@coveo/headless';\nimport {h} from '@stencil/core';\nimport {aggregate, isElementNode, isVisualNode} from '../../../utils/utils';\nimport {tableElementTagName} from '../../search/atomic-table-result/table-element-utils';\nimport {ItemTarget} from '../layout/display-options';\nimport {isResultSectionNode} from '../layout/item-layout-sections';\n\nexport type TemplateContent = DocumentFragment;\n\ninterface ResultTemplateCommonProps {\n allowEmpty?: boolean;\n host: HTMLDivElement;\n validParents: string[];\n setError: (error: Error) => void;\n}\n\ntype TemplateNodeType =\n | 'section'\n | 'metadata'\n | 'table-column-definition'\n | 'other';\n\nexport function getTemplateNodeType(node: Node): TemplateNodeType {\n if (isResultSectionNode(node)) {\n return 'section';\n }\n if (!isVisualNode(node)) {\n return 'metadata';\n }\n if (\n isElementNode(node) &&\n node.tagName.toLowerCase() === tableElementTagName\n ) {\n return 'table-column-definition';\n }\n return 'other';\n}\n\nfunction groupNodesByType(nodes: NodeList) {\n return aggregate(Array.from(nodes), (node) => getTemplateNodeType(node));\n}\n\nexport class ResultTemplateCommon {\n private host: HTMLDivElement;\n public matchConditions: ResultTemplateCondition[] = [];\n private gridCellLinkTarget: ItemTarget = '_self';\n\n constructor({\n host,\n setError,\n validParents,\n allowEmpty = false,\n }: ResultTemplateCommonProps) {\n this.host = host;\n this.validateTemplate(host, setError, validParents, allowEmpty);\n }\n\n validateTemplate(\n host: HTMLDivElement,\n setError: (error: Error) => void,\n validParents: string[],\n allowEmpty = true\n ) {\n const hasValidParent = validParents\n .map((p) => p.toUpperCase())\n .includes(host.parentElement?.nodeName || '');\n const tagName = host.nodeName.toLowerCase();\n\n if (!hasValidParent) {\n setError(\n new Error(\n `The \"${tagName}\" component has to be the child of one of the following: ${validParents\n .map((p) => `\"${p.toLowerCase()}\"`)\n .join(', ')}.`\n )\n );\n return;\n }\n\n if (\n host.parentElement?.attributes.getNamedItem('display')?.value === 'grid'\n ) {\n this.gridCellLinkTarget = host.parentElement?.attributes.getNamedItem(\n 'grid-cell-link-target'\n )?.value as ItemTarget;\n }\n\n const template = host.querySelector<HTMLTemplateElement>(\n 'template:not([slot])'\n );\n if (!template) {\n setError(\n new Error(\n `The \"${tagName}\" component has to contain a \"template\" element as a child.`\n )\n );\n return;\n }\n\n if (!allowEmpty && !template.innerHTML.trim()) {\n setError(\n new Error(`The \"template\" tag inside \"${tagName}\" cannot be empty.`)\n );\n return;\n }\n\n if (template.content.querySelector('script')) {\n console.warn(\n 'Any \"script\" tags defined inside of \"template\" elements are not supported and will not be executed when the results are rendered.',\n host\n );\n }\n\n const {section: sectionNodes, other: otherNodes} = groupNodesByType(\n template.content.childNodes\n );\n if (sectionNodes?.length && otherNodes?.length) {\n console.warn(\n 'Result templates should only contain section elements or non-section elements. Future updates could unpredictably affect this result template.',\n host,\n {sectionNodes, otherNodes}\n );\n }\n }\n\n getTemplate(\n conditions: ResultTemplateCondition[],\n error: Error\n ): ResultTemplate<TemplateContent> | null {\n if (error) {\n return null;\n }\n\n return {\n conditions: conditions.concat(this.matchConditions),\n content: getTemplateElement(this.host).content!,\n linkContent: this.getLinkTemplateElement(this.host).content!,\n priority: 1,\n };\n }\n\n renderIfError(error: Error) {\n if (error) {\n return (\n <atomic-component-error\n element={this.host}\n error={error}\n ></atomic-component-error>\n );\n }\n }\n\n getDefaultLinkTemplateElement() {\n const linkTemplate = document.createElement('template');\n linkTemplate.innerHTML = `<atomic-result-link>${this.gridCellLinkTarget ? `<a slot=\"attributes\" target=\"${this.gridCellLinkTarget}\"></a>` : ''}</atomic-result-link>`;\n return linkTemplate;\n }\n\n getLinkTemplateElement(host: HTMLElement) {\n return (\n host.querySelector<HTMLTemplateElement>('template[slot=\"link\"]') ??\n this.getDefaultLinkTemplateElement()\n );\n }\n}\n\nfunction getTemplateElement(host: HTMLElement) {\n return host.querySelector<HTMLTemplateElement>('template:not([slot])')!;\n}\n\nexport function makeMatchConditions(\n mustMatch: Record<string, string[]>,\n mustNotMatch: Record<string, string[]>\n): ResultTemplateCondition[] {\n const conditions: ResultTemplateCondition[] = [];\n for (const field in mustMatch) {\n conditions.push(\n ResultTemplatesHelpers.fieldMustMatch(field, mustMatch[field])\n );\n }\n\n for (const field in mustNotMatch) {\n conditions.push(\n ResultTemplatesHelpers.fieldMustNotMatch(field, mustNotMatch[field])\n );\n }\n return conditions;\n}\n\nexport function makeDefinedConditions(\n ifDefined?: string,\n ifNotDefined?: string\n): ResultTemplateCondition[] {\n const conditions: ResultTemplateCondition[] = [];\n if (ifDefined) {\n const fieldNames = ifDefined.split(',');\n conditions.push(ResultTemplatesHelpers.fieldsMustBeDefined(fieldNames));\n }\n\n if (ifNotDefined) {\n const fieldNames = ifNotDefined.split(',');\n conditions.push(ResultTemplatesHelpers.fieldsMustNotBeDefined(fieldNames));\n }\n return conditions;\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
- import { c as closest } from './dom-utils-7444dea4.js';
1
+ import { c as closest } from './dom-utils-f6086cd3.js';
2
2
  import { g as getElement } from './index-3f35faca.js';
3
3
  import { b as buildCustomEvent } from './event-utils-8de63ec3.js';
4
4
 
@@ -139,4 +139,4 @@ function ItemDisplayConfigContext() {
139
139
 
140
140
  export { ChildTemplatesContext as C, ItemContext as I, InteractiveItemContext as a, ItemDisplayConfigContext as b, itemContext as i };
141
141
 
142
- //# sourceMappingURL=stencil-item-decorators-33feff1a.js.map
142
+ //# sourceMappingURL=stencil-item-decorators-6c453c11.js.map
@@ -1 +1 @@
1
- {"file":"stencil-item-decorators-33feff1a.js","mappings":"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","names":[],"sources":["src/components/common/item-list/stencil-item-decorators.tsx"],"sourcesContent":["import {closest} from '@/src/utils/dom-utils';\nimport {ComponentInterface, getElement} from '@stencil/core';\nimport {buildCustomEvent} from '../../../utils/event-utils';\nimport {AnyItem} from './unfolded-item';\nimport {\n ItemDisplayDensity,\n ItemDisplayImageSize,\n} from '../layout/display-options';\nimport {ItemTemplateProvider} from './item-template-provider';\n\nexport class MissingParentError extends Error {\n constructor(elementName: string, parentName: string) {\n super(\n `The \"${elementName}\" element must be the child of an \"${parentName}\" element.`\n );\n }\n}\n/**\n * @deprecated should only be used for Stencil components. For Lit components, use `ItemContext` from \\@/src/decorators/item-list/item-context.js.\n */\nexport function ItemContext(\n opts: {parentName: string; folded: boolean} = {\n parentName: 'atomic-result',\n folded: false,\n }\n) {\n return (component: ComponentInterface, itemVariable: string) => {\n const {connectedCallback, componentWillRender, render} = component;\n component.connectedCallback = function () {\n const element = getElement(this);\n const event = buildCustomEvent(\n itemContextEventName,\n (item: Record<string, unknown>) => {\n this[itemVariable] = extractFolded(item, opts.folded);\n }\n );\n\n const canceled = element.dispatchEvent(event);\n if (canceled) {\n this.error = new MissingParentError(\n element.nodeName.toLowerCase(),\n opts.parentName\n );\n return;\n }\n return connectedCallback && connectedCallback.call(this);\n };\n\n component.componentWillRender = function () {\n if (this.error) {\n return;\n }\n\n return componentWillRender && componentWillRender.call(this);\n };\n\n component.render = function () {\n if (this.error) {\n const element = getElement(this);\n element.remove();\n console.error(\n 'Result component is in error and has been removed from the DOM',\n this.error,\n this,\n element\n );\n return;\n }\n return render && render.call(this);\n };\n };\n}\n\n/**\n * @deprecated should only be used for Stencil components. For Lit components, use `InteractiveItemContext` from \\@/src/decorators/item-list/interactive-item-context.js.\n */\nexport function InteractiveItemContext() {\n return (component: ComponentInterface, interactiveItemVariable: string) => {\n const {connectedCallback} = component;\n component.connectedCallback = function () {\n const element = getElement(this);\n const event = buildCustomEvent(\n interactiveItemContextEventName,\n (item: AnyItem) => {\n this[interactiveItemVariable] = item;\n }\n );\n element.dispatchEvent(event);\n return connectedCallback && connectedCallback.call(this);\n };\n };\n}\n\ntype ItemContextEventHandler<T> = (item: T) => void;\nexport type ItemContextEvent<T> = CustomEvent<ItemContextEventHandler<T>>;\nconst itemContextEventName = 'atomic/resolveResult';\nexport type InteractiveItemContextEvent = CustomEvent<\n (interactiveItem: unknown) => void\n>;\nconst interactiveItemContextEventName = 'atomic/resolveInteractiveResult';\n\n/**\n * @deprecated should only be used for Stencil components. For Lit components, use `itemContext` from \\@/src/components/common/item-list/item-context.js.\n */\nexport function itemContext<T>(element: Element, parentName: string) {\n return new Promise<T>((resolve, reject) => {\n const event = buildCustomEvent<ItemContextEventHandler<T>>(\n itemContextEventName,\n (item: T) => {\n return resolve(item);\n }\n );\n element.dispatchEvent(event);\n\n if (!closest(element, parentName)) {\n reject(\n new MissingParentError(element.nodeName.toLowerCase(), parentName)\n );\n }\n });\n}\n\nfunction extractFolded(item: Record<string, unknown>, returnFolded: boolean) {\n if (returnFolded) {\n if ('children' in item) {\n return item;\n } else {\n return {children: [], result: item};\n }\n }\n\n if ('children' in item && 'result' in item) {\n return item.result;\n }\n return item;\n}\n\ntype ChildTemplatesContextEventHandler = (\n itemTemplateProvider?: ItemTemplateProvider\n) => void;\nexport type ChildTemplatesContextEvent =\n CustomEvent<ChildTemplatesContextEventHandler>;\nconst childTemplatesContextEventName = 'atomic/resolveChildTemplates';\n\ninterface AtomicItemChildren {\n itemTemplateProvider?: ItemTemplateProvider;\n}\n\n/**\n * @deprecated should only be used for Stencil components. For Lit components, use `ChildTemplatesContext` from \\@/src/decorators/item-list/child-templates-context.js.\n */\nexport function ChildTemplatesContext() {\n return (component: ComponentInterface, itemTemplateProviderProp: string) => {\n const {componentWillRender} = component;\n component.componentWillRender = function () {\n const element = getElement(this);\n const event = buildCustomEvent(\n childTemplatesContextEventName,\n (itemTemplateProvider?: ItemTemplateProvider) => {\n const component = this as AtomicItemChildren;\n if (component.itemTemplateProvider) {\n return;\n }\n\n this[itemTemplateProviderProp] = itemTemplateProvider;\n }\n );\n\n const canceled = element.dispatchEvent(event);\n if (canceled) {\n this[itemTemplateProviderProp] = null;\n return;\n }\n return componentWillRender && componentWillRender.call(this);\n };\n };\n}\n\nexport type DisplayConfig = {\n density: ItemDisplayDensity;\n imageSize: ItemDisplayImageSize;\n};\n\ntype ItemDisplayConfigContextEventHandler = (config: DisplayConfig) => void;\nexport type ItemDisplayConfigContextEvent =\n CustomEvent<ItemDisplayConfigContextEventHandler>;\nconst itemDisplayConfigContextEventName = 'atomic/resolveResultDisplayConfig';\n\n/**\n * @deprecated should only be used for Stencil components. For Lit components, use `ItemDisplayConfigContext` from \\@/src/decorators/item-list/item-display-config-context.js.\n */\nexport function ItemDisplayConfigContext() {\n return (component: ComponentInterface, itemVariable: string) => {\n const {componentWillRender} = component;\n component.componentWillRender = function () {\n const element = getElement(this);\n const event = buildCustomEvent(\n itemDisplayConfigContextEventName,\n (config: DisplayConfig) => {\n this[itemVariable] = config;\n }\n );\n\n const canceled = element.dispatchEvent(event);\n if (canceled) {\n return;\n }\n return componentWillRender && componentWillRender.call(this);\n };\n };\n}\n"],"version":3}
1
+ {"file":"stencil-item-decorators-6c453c11.js","mappings":"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","names":[],"sources":["src/components/common/item-list/stencil-item-decorators.tsx"],"sourcesContent":["import {closest} from '@/src/utils/dom-utils';\nimport {ComponentInterface, getElement} from '@stencil/core';\nimport {buildCustomEvent} from '../../../utils/event-utils';\nimport {AnyItem} from './unfolded-item';\nimport {\n ItemDisplayDensity,\n ItemDisplayImageSize,\n} from '../layout/display-options';\nimport {ItemTemplateProvider} from './item-template-provider';\n\nexport class MissingParentError extends Error {\n constructor(elementName: string, parentName: string) {\n super(\n `The \"${elementName}\" element must be the child of an \"${parentName}\" element.`\n );\n }\n}\n/**\n * @deprecated should only be used for Stencil components. For Lit components, use `ItemContext` from \\@/src/decorators/item-list/item-context.js.\n */\nexport function ItemContext(\n opts: {parentName: string; folded: boolean} = {\n parentName: 'atomic-result',\n folded: false,\n }\n) {\n return (component: ComponentInterface, itemVariable: string) => {\n const {connectedCallback, componentWillRender, render} = component;\n component.connectedCallback = function () {\n const element = getElement(this);\n const event = buildCustomEvent(\n itemContextEventName,\n (item: Record<string, unknown>) => {\n this[itemVariable] = extractFolded(item, opts.folded);\n }\n );\n\n const canceled = element.dispatchEvent(event);\n if (canceled) {\n this.error = new MissingParentError(\n element.nodeName.toLowerCase(),\n opts.parentName\n );\n return;\n }\n return connectedCallback && connectedCallback.call(this);\n };\n\n component.componentWillRender = function () {\n if (this.error) {\n return;\n }\n\n return componentWillRender && componentWillRender.call(this);\n };\n\n component.render = function () {\n if (this.error) {\n const element = getElement(this);\n element.remove();\n console.error(\n 'Result component is in error and has been removed from the DOM',\n this.error,\n this,\n element\n );\n return;\n }\n return render && render.call(this);\n };\n };\n}\n\n/**\n * @deprecated should only be used for Stencil components. For Lit components, use `InteractiveItemContext` from \\@/src/decorators/item-list/interactive-item-context.js.\n */\nexport function InteractiveItemContext() {\n return (component: ComponentInterface, interactiveItemVariable: string) => {\n const {connectedCallback} = component;\n component.connectedCallback = function () {\n const element = getElement(this);\n const event = buildCustomEvent(\n interactiveItemContextEventName,\n (item: AnyItem) => {\n this[interactiveItemVariable] = item;\n }\n );\n element.dispatchEvent(event);\n return connectedCallback && connectedCallback.call(this);\n };\n };\n}\n\ntype ItemContextEventHandler<T> = (item: T) => void;\nexport type ItemContextEvent<T> = CustomEvent<ItemContextEventHandler<T>>;\nconst itemContextEventName = 'atomic/resolveResult';\nexport type InteractiveItemContextEvent = CustomEvent<\n (interactiveItem: unknown) => void\n>;\nconst interactiveItemContextEventName = 'atomic/resolveInteractiveResult';\n\n/**\n * @deprecated should only be used for Stencil components. For Lit components, use `itemContext` from \\@/src/components/common/item-list/item-context.js.\n */\nexport function itemContext<T>(element: Element, parentName: string) {\n return new Promise<T>((resolve, reject) => {\n const event = buildCustomEvent<ItemContextEventHandler<T>>(\n itemContextEventName,\n (item: T) => {\n return resolve(item);\n }\n );\n element.dispatchEvent(event);\n\n if (!closest(element, parentName)) {\n reject(\n new MissingParentError(element.nodeName.toLowerCase(), parentName)\n );\n }\n });\n}\n\nfunction extractFolded(item: Record<string, unknown>, returnFolded: boolean) {\n if (returnFolded) {\n if ('children' in item) {\n return item;\n } else {\n return {children: [], result: item};\n }\n }\n\n if ('children' in item && 'result' in item) {\n return item.result;\n }\n return item;\n}\n\ntype ChildTemplatesContextEventHandler = (\n itemTemplateProvider?: ItemTemplateProvider\n) => void;\nexport type ChildTemplatesContextEvent =\n CustomEvent<ChildTemplatesContextEventHandler>;\nconst childTemplatesContextEventName = 'atomic/resolveChildTemplates';\n\ninterface AtomicItemChildren {\n itemTemplateProvider?: ItemTemplateProvider;\n}\n\n/**\n * @deprecated should only be used for Stencil components. For Lit components, use `ChildTemplatesContext` from \\@/src/decorators/item-list/child-templates-context.js.\n */\nexport function ChildTemplatesContext() {\n return (component: ComponentInterface, itemTemplateProviderProp: string) => {\n const {componentWillRender} = component;\n component.componentWillRender = function () {\n const element = getElement(this);\n const event = buildCustomEvent(\n childTemplatesContextEventName,\n (itemTemplateProvider?: ItemTemplateProvider) => {\n const component = this as AtomicItemChildren;\n if (component.itemTemplateProvider) {\n return;\n }\n\n this[itemTemplateProviderProp] = itemTemplateProvider;\n }\n );\n\n const canceled = element.dispatchEvent(event);\n if (canceled) {\n this[itemTemplateProviderProp] = null;\n return;\n }\n return componentWillRender && componentWillRender.call(this);\n };\n };\n}\n\nexport type DisplayConfig = {\n density: ItemDisplayDensity;\n imageSize: ItemDisplayImageSize;\n};\n\ntype ItemDisplayConfigContextEventHandler = (config: DisplayConfig) => void;\nexport type ItemDisplayConfigContextEvent =\n CustomEvent<ItemDisplayConfigContextEventHandler>;\nconst itemDisplayConfigContextEventName = 'atomic/resolveResultDisplayConfig';\n\n/**\n * @deprecated should only be used for Stencil components. For Lit components, use `ItemDisplayConfigContext` from \\@/src/decorators/item-list/item-display-config-context.js.\n */\nexport function ItemDisplayConfigContext() {\n return (component: ComponentInterface, itemVariable: string) => {\n const {componentWillRender} = component;\n component.componentWillRender = function () {\n const element = getElement(this);\n const event = buildCustomEvent(\n itemDisplayConfigContextEventName,\n (config: DisplayConfig) => {\n this[itemVariable] = config;\n }\n );\n\n const canceled = element.dispatchEvent(event);\n if (canceled) {\n return;\n }\n return componentWillRender && componentWillRender.call(this);\n };\n };\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
- import { u as updateBreakpoints } from './replace-breakpoint-utils-0f20353d.js';
1
+ import { u as updateBreakpoints } from './replace-breakpoint-utils-13ff9ca5.js';
2
2
  import { g as getFirstFocusableDescendant } from './stencil-accessibility-utils-ae75044b.js';
3
3
  import { o as once, d as defer } from './utils-6400ebde.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { I as ItemContext, a as InteractiveItemContext, i as itemContext } from './stencil-item-decorators-33feff1a.js';
1
+ import { I as ItemContext, a as InteractiveItemContext, i as itemContext } from './stencil-item-decorators-6c453c11.js';
2
2
 
3
3
  /**
4
4
  * A [StencilJS property decorator](https://stenciljs.com/) to be used for result template components.
@@ -35,4 +35,4 @@ function resultContext(element) {
35
35
 
36
36
  export { InteractiveResultContext as I, ResultContext as R, resultContext as r };
37
37
 
38
- //# sourceMappingURL=stencil-result-template-decorators-3874fa73.js.map
38
+ //# sourceMappingURL=stencil-result-template-decorators-f989bc6b.js.map
@@ -1 +1 @@
1
- {"file":"stencil-result-template-decorators-3874fa73.js","mappings":";;AASA;;;;;;;;;;;SAWgB,aAAa,CAAC,OAA0B,EAAC,MAAM,EAAE,KAAK,EAAC;IACrE,OAAO,WAAW,CAAC,EAAC,UAAU,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAC,CAAC,CAAC;AACzE,CAAC;SAEe,wBAAwB;IACtC,OAAO,sBAAsB,EAAE,CAAC;AAClC,CAAC;AAKD;;;;;;;;;;;;SAYgB,aAAa,CAC3B,OAAgB;IAEhB,OAAO,WAAW,CAAI,OAAO,EAAE,eAAe,CAAC,CAAC;AAClD;;;;","names":[],"sources":["src/components/search/result-template-component-utils/context/stencil-result-template-decorators.tsx"],"sourcesContent":["import {FoldedResult, Result} from '@coveo/headless';\nimport {\n InteractiveItemContext,\n InteractiveItemContextEvent,\n ItemContext,\n ItemContextEvent,\n itemContext,\n} from '@/src/components/common/item-list/stencil-item-decorators';\n\n/**\n * A [StencilJS property decorator](https://stenciljs.com/) to be used for result template components.\n * This allows the Stencil component to fetch the current result from its rendered parent, the `atomic-result` component.\n *\n * Example:\n * @ResultContext() private result!: Result;\n *\n * For more information and examples, view the \"Utilities\" section of the readme.\n * \n * @deprecated should only be used for Stencil components. For Lit components, use `createResultContextController` from \\@/src/components/search/result-template-component-utils/context/result-context-controller.ts\n */\nexport function ResultContext(opts: {folded: boolean} = {folded: false}) {\n return ItemContext({parentName: 'atomic-result', folded: opts.folded});\n}\n\nexport function InteractiveResultContext() {\n return InteractiveItemContext();\n}\n\nexport type ResultContextEvent<T = Result> = ItemContextEvent<T>;\nexport type InteractiveResultContextEvent = InteractiveItemContextEvent;\n\n/**\n * Retrieves `Result` on a rendered `atomic-result`.\n *\n * This method is useful for building custom result template elements, see [Create a Result List](https://docs.coveo.com/en/atomic/latest/cc-search/create-custom-components/native-components/#custom-result-template-component-example) for more information.\n *\n * You should use the method in the [connectedCallback lifecycle method](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements#using_the_lifecycle_callbacks).\n *\n * @param element The element that the event is dispatched to, which must be the child of a rendered \"atomic-result\" element.\n * @returns A promise that resolves on initialization of the parent \"atomic-result\" element, or rejects when there is no parent \"atomic-result\" element.\n * \n * @deprecated should only be used for Stencil components. For Lit components, use `fetchResultContext` from \\@/src/components/search/result-template-component-utils/context/fetch-result-context.ts\n */\nexport function resultContext<T extends Result | FoldedResult = Result>(\n element: Element\n) {\n return itemContext<T>(element, 'atomic-result');\n}\n"],"version":3}
1
+ {"file":"stencil-result-template-decorators-f989bc6b.js","mappings":";;AASA;;;;;;;;;;;SAWgB,aAAa,CAAC,OAA0B,EAAC,MAAM,EAAE,KAAK,EAAC;IACrE,OAAO,WAAW,CAAC,EAAC,UAAU,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAC,CAAC,CAAC;AACzE,CAAC;SAEe,wBAAwB;IACtC,OAAO,sBAAsB,EAAE,CAAC;AAClC,CAAC;AAKD;;;;;;;;;;;;SAYgB,aAAa,CAC3B,OAAgB;IAEhB,OAAO,WAAW,CAAI,OAAO,EAAE,eAAe,CAAC,CAAC;AAClD;;;;","names":[],"sources":["src/components/search/result-template-component-utils/context/stencil-result-template-decorators.tsx"],"sourcesContent":["import {FoldedResult, Result} from '@coveo/headless';\nimport {\n InteractiveItemContext,\n InteractiveItemContextEvent,\n ItemContext,\n ItemContextEvent,\n itemContext,\n} from '@/src/components/common/item-list/stencil-item-decorators';\n\n/**\n * A [StencilJS property decorator](https://stenciljs.com/) to be used for result template components.\n * This allows the Stencil component to fetch the current result from its rendered parent, the `atomic-result` component.\n *\n * Example:\n * @ResultContext() private result!: Result;\n *\n * For more information and examples, view the \"Utilities\" section of the readme.\n * \n * @deprecated should only be used for Stencil components. For Lit components, use `createResultContextController` from \\@/src/components/search/result-template-component-utils/context/result-context-controller.ts\n */\nexport function ResultContext(opts: {folded: boolean} = {folded: false}) {\n return ItemContext({parentName: 'atomic-result', folded: opts.folded});\n}\n\nexport function InteractiveResultContext() {\n return InteractiveItemContext();\n}\n\nexport type ResultContextEvent<T = Result> = ItemContextEvent<T>;\nexport type InteractiveResultContextEvent = InteractiveItemContextEvent;\n\n/**\n * Retrieves `Result` on a rendered `atomic-result`.\n *\n * This method is useful for building custom result template elements, see [Create a Result List](https://docs.coveo.com/en/atomic/latest/cc-search/create-custom-components/native-components/#custom-result-template-component-example) for more information.\n *\n * You should use the method in the [connectedCallback lifecycle method](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements#using_the_lifecycle_callbacks).\n *\n * @param element The element that the event is dispatched to, which must be the child of a rendered \"atomic-result\" element.\n * @returns A promise that resolves on initialization of the parent \"atomic-result\" element, or rejects when there is no parent \"atomic-result\" element.\n * \n * @deprecated should only be used for Stencil components. For Lit components, use `fetchResultContext` from \\@/src/components/search/result-template-component-utils/context/fetch-result-context.ts\n */\nexport function resultContext<T extends Result | FoldedResult = Result>(\n element: Element\n) {\n return itemContext<T>(element, 'atomic-result');\n}\n"],"version":3}
@@ -38,7 +38,7 @@ const TextAreaClearButton = ({ inputRef, bindings, onClick, ...defaultButtonProp
38
38
  h(Button, { style: "text-transparent", part: "clear-button", class: "text-neutral-dark flex h-8 w-8 shrink-0 items-center justify-center", onClick: () => {
39
39
  onClick?.();
40
40
  inputRef?.focus();
41
- }, ariaLabel: bindings.i18n.t('clear'), ...defaultButtonProps },
41
+ }, ariaLabel: bindings.i18n.t('clear-searchbox'), ...defaultButtonProps },
42
42
  h("atomic-icon", { part: "clear-icon", icon: ClearSlim, class: "h-4 w-4" }))));
43
43
 
44
44
  function getPopupAttributes(props) {
@@ -420,4 +420,4 @@ class SuggestionManager {
420
420
 
421
421
  export { SuggestionManager as S, SearchSlimIcon as a, SearchTextArea as b, SearchBoxWrapper as c };
422
422
 
423
- //# sourceMappingURL=stencil-suggestion-manager-c1c4298e.js.map
423
+ //# sourceMappingURL=stencil-suggestion-manager-3d2eea75.js.map
@@ -0,0 +1 @@
1
+ {"file":"stencil-suggestion-manager-3d2eea75.js","mappings":"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","names":[],"sources":["src/components/common/search-box/stencil-search-box-wrapper.tsx","src/components/common/search-box/stencil-text-area-clear-button.tsx","src/components/common/search-box/stencil-search-text-area.tsx","src/utils/promise-utils.ts","src/components/common/suggestions/stencil-suggestion-manager.ts"],"sourcesContent":["import {FunctionalComponent, h} from '@stencil/core';\n\ninterface Props {\n disabled: boolean;\n onFocusout?: (event: FocusEvent) => void;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const SearchBoxWrapper: FunctionalComponent<Props> = (\n props,\n children\n) => {\n const getClasses = () => {\n const baseClasses =\n 'flex bg-background w-full border border-neutral rounded-md focus-within:ring-3 absolute top-0 left-0';\n const focusClasses = props.disabled\n ? 'focus-within:border-disabled focus-within:ring-neutral'\n : 'focus-within:border-primary focus-within:ring-ring-primary';\n\n return [baseClasses, focusClasses].join(' ');\n };\n\n return (\n <div part=\"wrapper\" class={getClasses()} onFocusout={props.onFocusout}>\n {children}\n </div>\n );\n};\n","import {FunctionalComponent, h} from '@stencil/core';\nimport ClearSlim from '../../../images/clear-slim.svg';\nimport {AnyBindings} from '../interface/bindings';\nimport {Button, StencilButtonProps} from '../stencil-button';\n\ninterface Props extends Partial<StencilButtonProps> {\n bindings: AnyBindings;\n inputRef: HTMLInputElement | HTMLTextAreaElement | null;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const TextAreaClearButton: FunctionalComponent<Props> = ({\n inputRef,\n bindings,\n onClick,\n ...defaultButtonProps\n}) => (\n <div\n part=\"clear-button-wrapper\"\n class=\"ml-2 flex items-center justify-center py-2\"\n >\n <Button\n style=\"text-transparent\"\n part=\"clear-button\"\n class=\"text-neutral-dark flex h-8 w-8 shrink-0 items-center justify-center\"\n onClick={() => {\n onClick?.();\n inputRef?.focus();\n }}\n ariaLabel={bindings.i18n.t('clear-searchbox')}\n {...defaultButtonProps}\n >\n <atomic-icon\n part=\"clear-icon\"\n icon={ClearSlim}\n class=\"h-4 w-4\"\n ></atomic-icon>\n </Button>\n </div>\n);\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {JSXBase} from '@stencil/core/internal';\nimport {AnyBindings} from '../interface/bindings';\nimport {TextAreaClearButton} from './stencil-text-area-clear-button';\n\ninterface Props extends JSXBase.TextareaHTMLAttributes<HTMLTextAreaElement> {\n textAreaRef: HTMLTextAreaElement;\n loading: boolean;\n bindings: AnyBindings;\n value: string;\n ariaLabel: string;\n onClear(): void;\n popup?: {\n id: string;\n activeDescendant: string;\n expanded: boolean;\n hasSuggestions: boolean;\n };\n}\n\nfunction getPopupAttributes(props: Required<Props>['popup']) {\n return {\n autocomplete: 'off',\n autocapitalize: 'off',\n autocorrect: 'off',\n ...(props.activeDescendant && {\n 'aria-activedescendant': props.activeDescendant,\n }),\n 'aria-autocomplete': 'both',\n 'aria-haspopup': 'true',\n 'aria-controls': props.id,\n };\n}\n\nfunction syncTextWithReplica(elem: HTMLTextAreaElement, value?: string) {\n const parent = elem?.parentNode as HTMLElement;\n if (!parent) {\n return;\n }\n if (elem.value === '\\n') {\n return;\n }\n parent.dataset.replicatedValue = value ?? elem.value;\n}\n\nfunction resetReplicaText(elem: HTMLTextAreaElement) {\n const parent = elem?.parentNode as HTMLElement;\n if (parent) {\n delete parent.dataset.replicatedValue;\n }\n}\n\nfunction collapseTextArea(elem: HTMLTextAreaElement) {\n const parent = elem?.parentNode as HTMLElement;\n if (parent) {\n parent.classList.remove('expanded');\n }\n}\n\nfunction expandTextArea(elem: HTMLTextAreaElement) {\n const parent = elem?.parentNode as HTMLElement;\n if (parent) {\n parent.classList.add('expanded');\n }\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const SearchTextArea: FunctionalComponent<Props> = ({\n textAreaRef,\n loading,\n bindings,\n onInput,\n onFocus,\n onBlur,\n onChange,\n onKeyDown,\n onKeyUp,\n value,\n ariaLabel,\n onClear,\n popup,\n ...defaultInputProps\n}) => (\n <div class=\"flex grow overflow-hidden\">\n <div part=\"textarea-expander\" class=\"grid grow overflow-hidden\">\n <textarea\n part=\"textarea\"\n aria-label={ariaLabel}\n placeholder={bindings.i18n.t('search')}\n class=\"placeholder-neutral-dark\"\n rows={1}\n onInput={(e) => {\n onInput?.(e);\n syncTextWithReplica(textAreaRef);\n }}\n onKeyDown={(e) => {\n syncTextWithReplica(textAreaRef);\n if (e.key === 'Enter') {\n if (e.shiftKey) {\n return;\n }\n e.preventDefault();\n }\n onKeyDown?.(e);\n }}\n onKeyUp={(e) => {\n onKeyUp?.(e);\n if (e.key === 'Enter') {\n e.preventDefault();\n return;\n }\n syncTextWithReplica(textAreaRef);\n }}\n onBlur={(e) => {\n onBlur?.(e);\n collapseTextArea(textAreaRef);\n syncTextWithReplica(textAreaRef);\n }}\n onChange={(e) => {\n onChange?.(e);\n syncTextWithReplica(textAreaRef);\n }}\n onFocus={(e) => {\n onFocus?.(e);\n const target = e.target as HTMLTextAreaElement;\n syncTextWithReplica(textAreaRef ?? target);\n expandTextArea(textAreaRef ?? target);\n }}\n autocomplete=\"off\"\n {...(popup && getPopupAttributes(popup))}\n {...defaultInputProps}\n value={value}\n />\n </div>\n\n {loading && (\n <div class=\"searchbox-button-wrapper ml-2 flex items-center justify-center\">\n <span\n part=\"loading\"\n class=\"loading mr-2 grid h-5 w-5 animate-spin place-items-center rounded-full bg-linear-to-r\"\n ></span>\n </div>\n )}\n {!loading && value && (\n <TextAreaClearButton\n inputRef={textAreaRef}\n bindings={bindings}\n onClick={() => {\n onClear();\n resetReplicaText(textAreaRef);\n }}\n />\n )}\n </div>\n);\n","export function promiseTimeout<T>(prom: T | Promise<T>, ms: number) {\n let id: NodeJS.Timeout;\n const timeout = new Promise((_, reject) => {\n id = setTimeout(() => {\n reject(new Error('Promise timed out.'));\n }, ms);\n });\n return Promise.race([prom, timeout]).then(() => {\n clearTimeout(id);\n });\n}\n","import {isNullOrUndefined} from '@coveo/bueno';\nimport {forceUpdate} from '@stencil/core';\nimport DOMPurify from 'dompurify';\nimport {debounce} from '../../../utils/debounce-utils';\nimport {promiseTimeout} from '../../../utils/promise-utils';\nimport type {\n SearchBoxSuggestionElement,\n SearchBoxSuggestionsBindings,\n SearchBoxSuggestionsEvent,\n} from './suggestions-types';\nimport {elementHasNoQuery, elementHasQuery} from './suggestions-utils';\n\n/**\n * List of suggestions that will be displayed along other lists (e.g recent queries) when the search box's input is selected.\n */\nexport interface SearchBoxSuggestions {\n /**\n * The search box will sort the position of suggestions using this value, the lowest value being first.\n * By default, the DOM position will be used.\n */\n position: number;\n /**\n * Whether the suggestions should be listed in the right or left panel. By default, the suggestions are listed in the right panel.\n */\n panel?: 'left' | 'right';\n /**\n * Method that returns the list of elements which will be rendered in the list of suggestions.\n */\n renderItems(): SearchBoxSuggestionElement[];\n /**\n * Hook called when the user changes the search box's input value. This can lead to all the query suggestions being updated.\n */\n onInput?(): Promise<unknown>;\n /**\n * Hook called when the current suggested query changes as the user navigates the list of suggestions.\n * This is used for instant results, which are rendered based on the current suggested query.\n * @param q The new current suggested query.\n */\n onSuggestedQueryChange?(q: string): Promise<unknown>;\n}\n\ninterface SearchBoxProps {\n getSearchBoxValue: () => string;\n updateQuery: (suggestedQuery: string) => void;\n getSuggestionTimeout: () => number;\n getNumberOfSuggestionsToDisplay: () => number;\n getSuggestionDelay: () => number;\n getLogger: () => Pick<typeof console, 'warn'>;\n getHost: () => HTMLElement;\n}\n\nexport class SuggestionManager<SearchBoxController> {\n public suggestions: SearchBoxSuggestions[] = [];\n public leftSuggestionElements: SearchBoxSuggestionElement[] = [];\n public rightSuggestionElements: SearchBoxSuggestionElement[] = [];\n public leftPanel: HTMLElement | undefined = undefined;\n public rightPanel: HTMLElement | undefined = undefined;\n public triggerSuggestions: () => Promise<void>;\n public activeDescendant = '';\n public suggestedQuery = '';\n public keyboardActiveDescendant = '';\n\n private queryDataAttribute = 'data-query';\n private suggestionEvents: SearchBoxSuggestionsEvent<SearchBoxController>[] =\n [];\n\n private previousActiveDescendantElement: HTMLElement | null = null;\n private leftSuggestions: SearchBoxSuggestions[] = [];\n private rightSuggestions: SearchBoxSuggestions[] = [];\n\n constructor(private ownerSearchBoxProps: SearchBoxProps) {\n this.triggerSuggestions = debounce(\n () => this.executeQuerySuggestion(),\n this.ownerSearchBoxProps.getSuggestionDelay()\n );\n }\n\n public get partialSuggestionBindings(): Pick<\n SearchBoxSuggestionsBindings<SearchBoxController>,\n | 'suggestedQuery'\n | 'clearSuggestions'\n | 'triggerSuggestions'\n | 'getSuggestions'\n | 'getSuggestionElements'\n > {\n return {\n suggestedQuery: () => this.suggestedQuery,\n clearSuggestions: () => this.clearSuggestions(),\n triggerSuggestions: () => this.triggerSuggestions(),\n getSuggestions: () => this.suggestions,\n getSuggestionElements: () => this.allSuggestionElements,\n };\n }\n\n public get activeDescendantElement(): HTMLElement | null {\n if (!this.hasActiveDescendant) {\n return null;\n }\n\n return (\n this.leftPanel?.querySelector(`#${this.activeDescendant}`) ||\n this.rightPanel?.querySelector(`#${this.activeDescendant}`) ||\n null\n );\n }\n\n public onSubmit() {\n this.clickOnActiveElement();\n this.clearSuggestions();\n }\n\n public updateActiveDescendant(id = '') {\n this.activeDescendant = id;\n forceUpdate(this.ownerSearchBoxProps.getHost());\n }\n\n public updateKeyboardActiveDescendant(id = '') {\n this.keyboardActiveDescendant = id;\n }\n\n public clickOnActiveElement() {\n this.activeDescendantElement?.click();\n this.updateActiveDescendant();\n }\n\n public isRightPanelInFocus() {\n if (\n isNullOrUndefined(this.panelInFocus) ||\n isNullOrUndefined(this.rightPanel)\n ) {\n return false;\n }\n\n return this.panelInFocus === this.rightPanel;\n }\n\n public initializeSuggestions(\n bindings: SearchBoxSuggestionsBindings<SearchBoxController>\n ) {\n this.suggestions = this.suggestionEvents.map((event) => event(bindings));\n }\n\n public registerSuggestionsFromEvent(\n event: CustomEvent<SearchBoxSuggestionsEvent<SearchBoxController>>,\n bindings: SearchBoxSuggestionsBindings<SearchBoxController>\n ) {\n event.preventDefault();\n event.stopPropagation();\n this.suggestionEvents.push(event.detail);\n this.suggestions.push(event.detail(bindings));\n }\n\n public registerSuggestions(suggestions: SearchBoxSuggestions) {\n this.suggestions.push(suggestions);\n }\n\n public get isDoubleList() {\n return Boolean(\n this.leftSuggestionElements.length && this.rightSuggestionElements.length\n );\n }\n\n public focusPanel(side: 'left' | 'right') {\n const panel = side === 'left' ? this.leftPanel : this.rightPanel;\n\n if (this.panelInFocus === panel) {\n return;\n }\n if (panel?.firstElementChild) {\n const panelHasActiveDescendant =\n this.previousActiveDescendantElement &&\n panel.contains(this.previousActiveDescendantElement);\n const newValue = panelHasActiveDescendant\n ? this.previousActiveDescendantElement!\n : (panel.firstElementChild as HTMLElement);\n this.updateDescendants(newValue.id);\n }\n }\n\n public clearSuggestions() {\n this.clearSuggestionElements();\n this.updateActiveDescendant();\n }\n\n public async focusNextValue() {\n if (!this.hasSuggestions || !this.nextOrFirstValue) {\n return;\n }\n\n await this.focusValue(this.nextOrFirstValue as HTMLElement);\n }\n\n public async focusValue(value: HTMLElement) {\n this.updateKeyboardActiveDescendant(value.id);\n this.updateActiveDescendant(value.id);\n this.scrollActiveDescendantIntoView();\n await this.updateQueryFromSuggestion();\n }\n\n public async onSuggestionMouseOver(\n item: SearchBoxSuggestionElement,\n side: 'left' | 'right',\n id: string\n ) {\n const thisPanel = side === 'left' ? this.leftPanel : this.rightPanel;\n // When hovering, always reset the keyboard active descendant\n this.updateKeyboardActiveDescendant();\n if (this.panelInFocus === thisPanel) {\n this.updateActiveDescendant(id);\n } else {\n this.updateDescendants(id);\n }\n if (item.query) {\n await this.updateSuggestedQuery(item.query);\n }\n }\n\n public async onSuggestionClick(item: SearchBoxSuggestionElement, e: Event) {\n if (item.query) {\n this.clearSuggestions();\n await this.updateOwnerSearchboxQuery(item.query);\n }\n item.onSelect?.(e);\n }\n\n public get hasSuggestions() {\n return !!this.allSuggestionElements.length;\n }\n\n public get allSuggestionElements() {\n return [...this.leftSuggestionElements, ...this.rightSuggestionElements];\n }\n\n public async focusPreviousValue() {\n if (this.firstValue === this.activeDescendantElement) {\n this.updateKeyboardActiveDescendant();\n this.updateActiveDescendant();\n return;\n }\n\n if (!this.hasSuggestions || !this.previousOrLastValue) {\n return;\n }\n\n await this.focusValue(this.previousOrLastValue as HTMLElement);\n }\n\n public get hasActiveDescendant() {\n return this.activeDescendant !== '';\n }\n\n private async executeQuerySuggestion() {\n this.updateActiveDescendant();\n const settled = await Promise.allSettled(\n this.suggestions.map((suggestion) =>\n promiseTimeout(\n suggestion.onInput ? suggestion.onInput() : Promise.resolve(),\n this.ownerSearchBoxProps.getSuggestionTimeout()\n )\n )\n );\n\n const fulfilledSuggestions: SearchBoxSuggestions[] = [];\n\n settled.forEach((prom, j) => {\n if (prom.status === 'fulfilled') {\n fulfilledSuggestions.push(this.suggestions[j]);\n } else {\n this.ownerSearchBoxProps\n .getLogger()\n .warn(\n 'Some query suggestions are not being shown because the promise timed out.'\n );\n }\n });\n\n const splitSuggestions = (side: 'left' | 'right', isDefault = false) =>\n fulfilledSuggestions\n .filter(\n (suggestion) =>\n suggestion.panel === side || (!suggestion.panel && isDefault)\n )\n .sort(this.sortSuggestions);\n\n this.leftSuggestions = splitSuggestions('left', true);\n this.leftSuggestionElements = this.getAndFilterLeftSuggestionElements();\n\n this.rightSuggestions = splitSuggestions('right');\n this.rightSuggestionElements = this.getSuggestionElements(\n this.rightSuggestions\n );\n\n const defaultSuggestedQuery =\n this.allSuggestionElements.find(elementHasQuery)?.query || '';\n\n await this.updateSuggestedQuery(defaultSuggestedQuery);\n }\n\n private get lastValue() {\n return this.panelInFocus?.lastElementChild;\n }\n\n private get previousOrLastValue() {\n if (!this.hasActiveDescendant) {\n return this.lastValue?.firstChild;\n }\n\n const parentOfActiveDescendant =\n this.activeDescendantElement?.parentElement;\n return (\n parentOfActiveDescendant?.previousElementSibling?.firstChild ||\n this.firstValue?.firstChild\n );\n }\n\n private sortSuggestions(a: SearchBoxSuggestions, b: SearchBoxSuggestions) {\n return a.position - b.position;\n }\n\n private get nextOrFirstValue() {\n if (!this.hasActiveDescendant) {\n return this.firstValue?.firstChild;\n }\n\n const parentOfActiveDescendant =\n this.activeDescendantElement?.parentElement;\n return (\n parentOfActiveDescendant?.nextElementSibling?.firstChild ||\n this.firstValue?.firstChild\n );\n }\n\n private get firstValue() {\n return this.panelInFocus?.firstElementChild;\n }\n\n private get panelInFocus() {\n if (this.leftPanel?.contains(this.activeDescendantElement)) {\n return this.leftPanel;\n }\n if (this.rightPanel?.contains(this.activeDescendantElement)) {\n return this.rightPanel;\n }\n return this.leftPanel || this.rightPanel;\n }\n\n private scrollActiveDescendantIntoView() {\n this.activeDescendantElement?.scrollIntoView({\n block: 'nearest',\n });\n }\n\n private async updateQueryFromSuggestion() {\n const suggestedQuery = this.activeDescendantElement?.getAttribute(\n this.queryDataAttribute\n );\n await this.updateOwnerSearchboxQuery(suggestedQuery || '');\n }\n\n private async updateOwnerSearchboxQuery(query: string) {\n if (query && this.ownerSearchBoxProps.getSearchBoxValue() !== query) {\n this.ownerSearchBoxProps.updateQuery(query);\n await this.updateSuggestedQuery(query);\n }\n }\n\n private async updateSuggestedQuery(suggestedQuery: string) {\n await Promise.allSettled(\n this.suggestions.map((suggestion) =>\n promiseTimeout(\n suggestion.onSuggestedQueryChange\n ? suggestion.onSuggestedQueryChange(suggestedQuery)\n : Promise.resolve(),\n this.ownerSearchBoxProps.getSuggestionTimeout()\n )\n )\n );\n this.suggestedQuery = suggestedQuery;\n this.updateSuggestionElements(suggestedQuery);\n forceUpdate(this.ownerSearchBoxProps.getHost());\n }\n\n private updateSuggestionElements(query: string) {\n if (!this.isPanelInFocus(this.leftPanel, query)) {\n this.leftSuggestionElements = this.getAndFilterLeftSuggestionElements();\n }\n\n if (!this.isPanelInFocus(this.rightPanel, query)) {\n this.rightSuggestionElements = this.getSuggestionElements(\n this.rightSuggestions\n );\n }\n }\n\n public forceUpdate() {\n this.updateSuggestionElements(this.suggestedQuery);\n forceUpdate(this.ownerSearchBoxProps.getHost());\n }\n\n private isPanelInFocus(\n panel: HTMLElement | undefined,\n query: string\n ): boolean {\n if (!this.activeDescendantElement) {\n return false;\n }\n\n if (query) {\n const escaped = DOMPurify.sanitize(query);\n return !!panel?.querySelector(\n `[${this.queryDataAttribute}=\"${CSS.escape(escaped)}\"]`\n );\n }\n\n return this.activeDescendantElement?.closest('ul') === panel;\n }\n\n private getAndFilterLeftSuggestionElements() {\n const suggestionElements = this.getSuggestionElements(this.leftSuggestions);\n const filterOnDuplicate = new Set();\n\n const out = suggestionElements.filter((suggestionElement) => {\n if (isNullOrUndefined(suggestionElement.query)) {\n return true;\n }\n if (filterOnDuplicate.has(suggestionElement.query)) {\n return false;\n } else {\n filterOnDuplicate.add(suggestionElement.query);\n return true;\n }\n });\n\n return out;\n }\n\n private getSuggestionElements(suggestions: SearchBoxSuggestions[]) {\n const elements = suggestions.flatMap((suggestion) =>\n suggestion.renderItems()\n );\n\n const max =\n this.ownerSearchBoxProps.getNumberOfSuggestionsToDisplay() +\n elements.filter(elementHasNoQuery).length;\n\n return elements.slice(0, max);\n }\n\n private updateDescendants(activeDescendant = '') {\n const newPrevDescendantElement = this.activeDescendantElement;\n this.previousActiveDescendantElement = newPrevDescendantElement;\n this.updateActiveDescendant(activeDescendant);\n }\n\n private clearSuggestionElements() {\n this.leftSuggestionElements = [];\n this.rightSuggestionElements = [];\n }\n}\n"],"version":3}
@@ -2,4 +2,4 @@ const tableElementTagName = 'atomic-table-element';
2
2
 
3
3
  export { tableElementTagName as t };
4
4
 
5
- //# sourceMappingURL=table-element-utils-1dbc5ef6.js.map
5
+ //# sourceMappingURL=table-element-utils-49d22ec6.js.map
@@ -0,0 +1 @@
1
+ {"file":"table-element-utils-49d22ec6.js","mappings":"MAAa,mBAAmB,GAAG;;;;","names":[],"sources":["src/components/search/atomic-table-result/table-element-utils.ts"],"sourcesContent":["export const tableElementTagName = 'atomic-table-element';\n"],"version":3}
@@ -2,7 +2,7 @@ import { h } from './index-3f35faca.js';
2
2
  import { p as parseDate } from './date-utils-e07b72d6.js';
3
3
  import { g as getFieldValueCaption } from './field-utils-f0146383.js';
4
4
  import { r as randomID } from './utils-6400ebde.js';
5
- import { H as Hidden } from './initialization-utils-39016e9b.js';
5
+ import { H as Hidden } from './initialization-utils-ffbc4136.js';
6
6
  import { F as FacetHeader, b as FacetPlaceholder, a as FacetContainer } from './facet-placeholder-5c76d381.js';
7
7
  import { F as FacetValueLabelHighlight } from './stencil-facet-value-label-highlight-f4518687.js';
8
8
  import { F as FacetValueLink } from './stencil-facet-value-link-cf3f9c2d.js';
@@ -1,2 +1,2 @@
1
- export const headlessVersion = '3.31.3-pre.946549b45a';
2
- export const atomicVersion = '3.35.0-pre.946549b45a';
1
+ export const headlessVersion = '3.31.3-pre.965230d496';
2
+ export const atomicVersion = '3.35.0-pre.965230d496';
@@ -36,6 +36,7 @@ export declare class AtomicCommerceBreadbox extends LitElement implements Initia
36
36
  error: Error;
37
37
  private isCollapsed;
38
38
  private showMoreText;
39
+ private breadboxAriaMessage;
39
40
  /**
40
41
  * This prop allows you to control the display depth
41
42
  * of the path by specifying the number of parent or ancestor
@@ -139,6 +139,7 @@ export declare class AtomicCommerceSearchBox extends LitElement implements Initi
139
139
  private renderSuggestion;
140
140
  private renderSlotContent;
141
141
  render(): import("lit-html").TemplateResult<1>;
142
+ private announceClearSearchBoxToScreenReader;
142
143
  }
143
144
  declare global {
144
145
  interface HTMLElementTagNameMap {
@@ -27,6 +27,7 @@ export declare class AtomicCommerceSearchBoxRecentQueries extends LitElement imp
27
27
  * The maximum number of suggestions to display initially, when the input field is empty.
28
28
  */
29
29
  maxWithoutQuery?: number;
30
+ private searchBoxAriaMessage;
30
31
  connectedCallback(): void;
31
32
  initialize(): SearchBoxSuggestions;
32
33
  private retrieveLocalStorage;
@@ -1,4 +1,5 @@
1
1
  import type { i18n } from 'i18next';
2
+ import type { AriaLiveRegionController } from "../../../utils/accessibility-utils";
2
3
  import type { FunctionalComponentWithChildren } from "../../../utils/functional-component-utils";
3
4
  import type { Breadcrumb } from './breadcrumb-types';
4
5
  export interface BreadcrumbButtonProps {
@@ -7,5 +8,6 @@ export interface BreadcrumbButtonProps {
7
8
  pathLimit: number;
8
9
  breadcrumb: Breadcrumb;
9
10
  i18n: i18n;
11
+ ariaController: AriaLiveRegionController;
10
12
  }
11
13
  export declare const renderBreadcrumbButton: FunctionalComponentWithChildren<BreadcrumbButtonProps>;
@@ -3,6 +3,8 @@ import type { i18n } from 'i18next';
3
3
  import type { FunctionalComponent } from "../../../../utils/functional-component-utils";
4
4
  export interface CategoryFacetAllCategoryButtonProps {
5
5
  i18n: i18n;
6
+ facetId?: string;
7
+ field: string;
6
8
  onClick(): void;
7
9
  }
8
10
  export declare const renderCategoryFacetAllCategoryButton: FunctionalComponent<CategoryFacetAllCategoryButtonProps>;
@@ -0,0 +1,6 @@
1
+ import type { i18n } from 'i18next';
2
+ export declare const getAllCategoriesLocalizedLabel: ({ facetId, field, i18n, }: {
3
+ facetId?: string;
4
+ field: string;
5
+ i18n: i18n;
6
+ }) => string;
@@ -9,6 +9,7 @@ interface CategoryFacetSearchValueProps {
9
9
  };
10
10
  i18n: i18n;
11
11
  field: string;
12
+ facetId?: string;
12
13
  onClick(): void;
13
14
  searchQuery: string;
14
15
  }
@@ -3,6 +3,8 @@ import { i18n } from 'i18next';
3
3
  interface CategoryFacetAllCategoryButtonProps {
4
4
  i18n: i18n;
5
5
  onClick(): void;
6
+ facetId?: string;
7
+ field: string;
6
8
  }
7
9
  /**
8
10
  * @deprecated should only be used for Stencil components.
@@ -8,6 +8,7 @@ interface CategoryFacetSearchValueProps {
8
8
  };
9
9
  i18n: i18n;
10
10
  field: string;
11
+ facetId?: string;
11
12
  onClick(): void;
12
13
  searchQuery: string;
13
14
  }
@@ -0,0 +1,6 @@
1
+ import { type ProductTemplateCondition } from '@coveo/headless/commerce';
2
+ type TemplateNodeType = 'section' | 'metadata' | 'table-column-definition' | 'other';
3
+ export declare function getTemplateNodeType(node: Node): TemplateNodeType;
4
+ export declare function makeMatchConditions(mustMatch: Record<string, string[]>, mustNotMatch: Record<string, string[]>): ProductTemplateCondition[];
5
+ export declare function makeDefinedConditions(ifDefined?: string, ifNotDefined?: string): ProductTemplateCondition[];
6
+ export {};
@@ -1,12 +1,26 @@
1
1
  import type { ProductTemplate, ProductTemplateCondition } from '@coveo/headless/commerce';
2
- import type { ReactiveControllerHost } from 'lit';
3
- import { BaseTemplateController, type TemplateContent } from "../template-controller/base-template-controller";
2
+ import type { ReactiveController, ReactiveControllerHost } from 'lit';
3
+ export type TemplateContent = DocumentFragment;
4
4
  type ProductTemplateHost = ReactiveControllerHost & HTMLElement & {
5
- error?: Error;
5
+ error: Error;
6
6
  };
7
- export declare class ProductTemplateController extends BaseTemplateController<ProductTemplateCondition> {
7
+ export declare class ProductTemplateController implements ReactiveController {
8
+ private host;
9
+ private validParents;
10
+ private allowEmpty;
11
+ matchConditions: ProductTemplateCondition[];
12
+ private gridCellLinkTarget?;
13
+ private static readonly ERRORS;
14
+ private static readonly WARNINGS;
8
15
  constructor(host: ProductTemplateHost, validParents: string[], allowEmpty?: boolean);
16
+ hostConnected(): void;
17
+ setError(error: Error): void;
18
+ validateTemplate(): void;
9
19
  getTemplate(conditions: ProductTemplateCondition[]): ProductTemplate<TemplateContent> | null;
10
- protected getDefaultLinkTemplateElement(): HTMLTemplateElement;
20
+ getDefaultLinkTemplateElement(): HTMLTemplateElement;
21
+ getLinkTemplateElement(host: HTMLElement): HTMLTemplateElement;
22
+ private get parentElement();
23
+ private get template();
24
+ private parentAttr;
11
25
  }
12
26
  export {};
@@ -1,5 +1,5 @@
1
1
  import { ProductTemplate, ProductTemplateCondition } from '@coveo/headless/commerce';
2
- export { makeMatchConditions } from '../template-controller/template-utils';
2
+ export { makeMatchConditions } from './product-template-common';
3
3
  export type TemplateContent = DocumentFragment;
4
4
  interface ProductTemplateCommonProps {
5
5
  allowEmpty?: boolean;
@@ -1,5 +1,5 @@
1
1
  import { ResultTemplate, ResultTemplateCondition } from '@coveo/headless';
2
- import { ResultTemplateCommon } from '../../../common/result-templates/stencil-result-template-common';
2
+ import { ResultTemplateCommon } from '../../../common/result-templates/result-template-common';
3
3
  /**
4
4
  * @internal
5
5
  */
@@ -160,6 +160,7 @@ export declare class AtomicSearchBox implements InitializableComponent<Bindings>
160
160
  private isSearchDisabledForEndUser;
161
161
  private getSearchInputLabel;
162
162
  private announceNewActiveSuggestionToScreenReader;
163
+ private announceClearSearchBoxToScreenReader;
163
164
  private announceNewSuggestionsToScreenReader;
164
165
  private renderSlotContent;
165
166
  render(): any;
@@ -1,5 +1,5 @@
1
1
  import { ResultTemplate, ResultTemplateCondition } from '@coveo/headless';
2
- import { ResultTemplateCommon } from '../../../common/result-templates/stencil-result-template-common';
2
+ import { ResultTemplateCommon } from '../../../common/result-templates/result-template-common';
3
3
  /**
4
4
  * The `atomic-result-children-template` component determines the format of the child results, depending on the conditions that are defined for each template. A `template` element must be the child of an `atomic-result-children-template`, and an `atomic-result-children` must be the parent of each `atomic-result-children-template`.
5
5
  *
@@ -12,7 +12,7 @@ export interface HierarchicalPathProps {
12
12
  }
13
13
  declare class HierarchicalPathDirective extends Directive {
14
14
  constructor(partInfo: PartInfo);
15
- render(props: HierarchicalPathProps): string | TemplateResult | TemplateResult<1>[];
15
+ render(props: HierarchicalPathProps): string | TemplateResult<1>[] | TemplateResult;
16
16
  private getEllipsedPath;
17
17
  }
18
18
  export declare const hierarchicalPath: (props: HierarchicalPathProps) => import("lit-html/directive.js").DirectiveResult<typeof HierarchicalPathDirective>;
@@ -1,6 +1,5 @@
1
1
  export declare function rectEquals(r1: DOMRect, r2: DOMRect): boolean;
2
2
  export declare function parentNodeToString(node: ParentNode): string;
3
- export declare function groupNodesByType(nodes: NodeList): Record<import("@/src/components/common/template-controller/template-utils").TemplateNodeType, Node[] | undefined>;
4
3
  export declare function closest<K extends keyof HTMLElementTagNameMap>(element: Element | null, selector: K): HTMLElementTagNameMap[K] | null;
5
4
  export declare function closest<K extends keyof SVGElementTagNameMap>(element: Element | null, selector: K): SVGElementTagNameMap[K] | null;
6
5
  export declare function closest<E extends Element = Element>(element: Element | null, selector: string): E | null;
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2025-10-09T14:23:33",
2
+ "timestamp": "2025-10-10T15:12:03",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
5
  "version": "4.20.0",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@coveo/atomic",
3
3
  "type": "module",
4
- "version": "3.35.0-pre.946549b45a",
4
+ "version": "3.35.0-pre.965230d496",
5
5
  "description": "A web-component library for building modern UIs interfacing with the Coveo platform",
6
6
  "homepage": "https://docs.coveo.com/en/atomic/latest/",
7
7
  "repository": {
@@ -81,7 +81,7 @@
81
81
  },
82
82
  "dependencies": {
83
83
  "@coveo/bueno": "1.1.3",
84
- "@coveo/headless": "3.31.3-pre.946549b45a",
84
+ "@coveo/headless": "3.31.3-pre.965230d496",
85
85
  "@lit/context": "1.1.6",
86
86
  "@open-wc/lit-helpers": "0.7.0",
87
87
  "@popperjs/core": "2.11.8",
@@ -153,7 +153,7 @@
153
153
  },
154
154
  "peerDependencies": {
155
155
  "@coveo/bueno": "1.1.3",
156
- "@coveo/headless": "3.31.3-pre.946549b45a",
156
+ "@coveo/headless": "3.31.3-pre.965230d496",
157
157
  "typescript": ">=5.0.0"
158
158
  },
159
159
  "peerDependenciesMeta": {
@@ -1,91 +0,0 @@
1
- import { groupNodesByType } from "../../../utils/dom-utils";
2
- export class BaseTemplateController {
3
- constructor(host, validParents, allowEmpty = false) {
4
- this.host = host;
5
- this.validParents = validParents;
6
- this.allowEmpty = allowEmpty;
7
- this.matchConditions = [];
8
- this.host.addController(this);
9
- }
10
- hostConnected() {
11
- this.validateTemplate();
12
- }
13
- getLinkTemplateElement(host) {
14
- return (host.querySelector('template[slot="link"]') ??
15
- this.getDefaultLinkTemplateElement());
16
- }
17
- getBaseTemplate(conditions) {
18
- if (this.host.error) {
19
- return null;
20
- }
21
- return {
22
- conditions: conditions.concat(this.matchConditions),
23
- content: this.getTemplateElement().content,
24
- linkContent: this.getLinkTemplateElement(this.host).content,
25
- priority: 1,
26
- };
27
- }
28
- get currentGridCellLinkTarget() {
29
- return this.gridCellLinkTarget;
30
- }
31
- setError(error) {
32
- this.host.error = error;
33
- }
34
- get parentElement() {
35
- return this.host.parentElement;
36
- }
37
- get template() {
38
- return this.host.querySelector('template');
39
- }
40
- parentAttr(attribute) {
41
- return this.parentElement?.attributes.getNamedItem(attribute)?.value;
42
- }
43
- validateTemplate() {
44
- const hasValidParent = this.validParents
45
- .map((p) => p.toUpperCase())
46
- .includes(this.parentElement?.nodeName || '');
47
- const tagName = this.host.nodeName.toLowerCase();
48
- if (!hasValidParent) {
49
- this.setError(new Error(BaseTemplateController.ERRORS.invalidParent(tagName, this.validParents)));
50
- return;
51
- }
52
- if (this.parentAttr('display') === 'grid') {
53
- this.gridCellLinkTarget = this.parentAttr('grid-cell-link-target');
54
- }
55
- if (!this.template) {
56
- this.setError(new Error(BaseTemplateController.ERRORS.missingTemplate(tagName)));
57
- return;
58
- }
59
- if (!this.allowEmpty && !this.template.innerHTML.trim()) {
60
- this.setError(new Error(BaseTemplateController.ERRORS.emptyTemplate(tagName)));
61
- return;
62
- }
63
- const warnings = this.getWarnings();
64
- if (this.template.content.querySelector('script')) {
65
- console.warn(warnings.scriptTag, this.host);
66
- }
67
- const { section, other } = groupNodesByType(this.template.content.childNodes);
68
- if (section?.length && other?.length) {
69
- console.warn(warnings.sectionMix, this.host, {
70
- section,
71
- other,
72
- });
73
- }
74
- }
75
- getWarnings() {
76
- return {
77
- scriptTag: 'Any "script" tags defined inside of "template" elements are not supported and will not be executed when the items are rendered.',
78
- sectionMix: 'Item templates should only contain section elements or non-section elements, not both. Future updates could unpredictably affect this item template.',
79
- };
80
- }
81
- getTemplateElement() {
82
- return this.host.querySelector('template:not([slot])');
83
- }
84
- }
85
- BaseTemplateController.ERRORS = {
86
- invalidParent: (tagName, validParents) => `The "${tagName}" component has to be the child of one of the following: ${validParents
87
- .map((p) => `"${p.toLowerCase()}"`)
88
- .join(', ')}.`,
89
- missingTemplate: (tagName) => `The "${tagName}" component must contain a "template" element as a child.`,
90
- emptyTemplate: (tagName) => `The "template" tag inside "${tagName}" cannot be empty.`,
91
- };