@coveo/atomic 3.34.0-pre.86c4aef0f1 → 3.34.0-pre.9195dfb0e8

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 (401) hide show
  1. package/dist/atomic/_atomic.esm.js +1 -1
  2. package/dist/atomic/atomic.esm.js.map +1 -1
  3. package/dist/atomic/components/_index.d.ts +0 -4
  4. package/dist/atomic/components/_index.js +0 -2
  5. package/dist/atomic/components/analytics-config.js +1 -1
  6. package/dist/atomic/components/atomic-category-facet.js +7 -17
  7. package/dist/atomic/components/atomic-category-facet.js.map +1 -1
  8. package/dist/atomic/components/atomic-facet.js +1 -1
  9. package/dist/atomic/components/atomic-format-currency.js +1 -1
  10. package/dist/atomic/components/atomic-format-number.js +1 -1
  11. package/dist/atomic/components/atomic-format-unit.js +1 -1
  12. package/dist/atomic/components/atomic-insight-history-toggle.js +2 -2
  13. package/dist/atomic/components/atomic-insight-history-toggle.js.map +1 -1
  14. package/dist/atomic/components/atomic-insight-user-actions-toggle.js +2 -2
  15. package/dist/atomic/components/atomic-insight-user-actions-toggle.js.map +1 -1
  16. package/dist/{esm/sections-ae00b53a.js → atomic/components/atomic-layout-section-utils.js} +1 -1
  17. package/dist/atomic/components/atomic-layout-section-utils.js.map +1 -0
  18. package/dist/atomic/components/atomic-numeric-facet.js +1 -1
  19. package/dist/atomic/components/atomic-quickview-modal2.js +23 -23
  20. package/dist/atomic/components/atomic-quickview-modal2.js.map +1 -1
  21. package/dist/atomic/components/atomic-quickview.js +1 -1
  22. package/dist/atomic/components/atomic-refine-modal2.js +2 -2
  23. package/dist/atomic/components/atomic-refine-modal2.js.map +1 -1
  24. package/dist/atomic/components/atomic-result-children.js +1 -1
  25. package/dist/atomic/components/atomic-result-fields-list.js +1 -1
  26. package/dist/atomic/components/atomic-result-link.js +1 -1
  27. package/dist/atomic/components/atomic-result-list.js +1 -1
  28. package/dist/atomic/components/atomic-result-table-placeholder2.js +1 -1
  29. package/dist/atomic/components/atomic-search-box-query-suggestions2.js +1 -1
  30. package/dist/atomic/components/atomic-search-box.js +9 -11
  31. package/dist/atomic/components/atomic-search-box.js.map +1 -1
  32. package/dist/atomic/components/atomic-smart-snippet-feedback-modal2.js +2 -2
  33. package/dist/atomic/components/atomic-sort-dropdown.js +2 -2
  34. package/dist/atomic/components/atomic-sort-expression.js +1 -1
  35. package/dist/atomic/components/atomic-tab-manager.js +1 -1
  36. package/dist/atomic/components/clock.js +2 -2
  37. package/dist/atomic/components/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.js +20 -33
  38. package/dist/atomic/components/components/commerce/atomic-commerce-category-facet/atomic-commerce-category-facet.js +0 -2
  39. package/dist/atomic/components/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.js +5 -0
  40. package/dist/atomic/components/components/commerce/atomic-commerce-search-box-recent-queries/atomic-commerce-search-box-recent-queries.js +3 -0
  41. package/dist/atomic/components/components/common/atomic-layout-section/layout.js +1 -1
  42. package/dist/atomic/components/components/common/breadbox/breadcrumb-button.js +6 -1
  43. package/dist/atomic/components/components/common/facets/category-facet/all-categories-button.js +2 -3
  44. package/dist/atomic/components/components/common/layout/display-options.js +1 -1
  45. package/dist/atomic/components/components/common/layout/{sections.js → item-layout-sections.js} +1 -1
  46. package/dist/atomic/components/components/common/product-template/product-template-common.js +1 -1
  47. package/dist/atomic/components/components/common/search-box/text-area-clear-button.js +1 -1
  48. package/dist/atomic/components/components/common/validate-props-controller/validate-props-controller.js +50 -0
  49. package/dist/atomic/components/components/insight/atomic-insight-layout/insight-layout.js +1 -1
  50. package/dist/atomic/components/components/search/atomic-relevance-inspector/atomic-relevance-inspector.js +100 -0
  51. package/dist/atomic/components/components/search/atomic-search-box-recent-queries/atomic-search-box-recent-queries.js +137 -0
  52. package/dist/atomic/components/components/search/atomic-search-interface/atomic-search-interface.js +17 -24
  53. package/dist/atomic/components/components/search/index.js +2 -0
  54. package/dist/atomic/components/components/search/lazy-index.js +2 -0
  55. package/dist/atomic/components/display-options.js +1 -1
  56. package/dist/atomic/components/display-options.js.map +1 -1
  57. package/dist/atomic/components/global/environment.js +1 -1
  58. package/dist/atomic/components/index.js.map +1 -1
  59. package/dist/atomic/components/insight-layout.js +1 -1
  60. package/dist/atomic/components/insight-layout.js.map +1 -1
  61. package/dist/atomic/components/{sections2.js → item-layout-sections.js} +1 -1
  62. package/dist/atomic/components/item-layout-sections.js.map +1 -0
  63. package/dist/atomic/components/result-template-common.js +1 -1
  64. package/dist/atomic/components/result-template-common.js.map +1 -1
  65. package/dist/atomic/components/stencil-suggestion-manager.js +1 -1
  66. package/dist/atomic/components/stencil-suggestion-manager.js.map +1 -1
  67. package/dist/atomic/components/utils/compare-utils.js +49 -0
  68. package/dist/atomic/lang/cs.json +1 -1
  69. package/dist/atomic/lang/da.json +1 -1
  70. package/dist/atomic/lang/de.json +1 -1
  71. package/dist/atomic/lang/dev.json +1 -1
  72. package/dist/atomic/lang/el.json +1 -1
  73. package/dist/atomic/lang/en.json +1 -1
  74. package/dist/atomic/lang/es.json +1 -1
  75. package/dist/atomic/lang/fi.json +1 -1
  76. package/dist/atomic/lang/fr.json +1 -1
  77. package/dist/atomic/lang/hu.json +1 -1
  78. package/dist/atomic/lang/id.json +1 -1
  79. package/dist/atomic/lang/it.json +1 -1
  80. package/dist/atomic/lang/ja.json +1 -1
  81. package/dist/atomic/lang/ko.json +1 -1
  82. package/dist/atomic/lang/nl.json +1 -1
  83. package/dist/atomic/lang/no.json +1 -1
  84. package/dist/atomic/lang/pl.json +1 -1
  85. package/dist/atomic/lang/pt-BR.json +1 -1
  86. package/dist/atomic/lang/pt.json +1 -1
  87. package/dist/atomic/lang/ru.json +1 -1
  88. package/dist/atomic/lang/sv.json +1 -1
  89. package/dist/atomic/lang/th.json +1 -1
  90. package/dist/atomic/lang/tr.json +1 -1
  91. package/dist/atomic/lang/zh-CN.json +1 -1
  92. package/dist/atomic/lang/zh-TW.json +1 -1
  93. package/dist/atomic/lang/zh.json +1 -1
  94. package/dist/atomic/{p-475124d2.entry.js → p-01511388.entry.js} +2 -2
  95. package/dist/atomic/{p-2caa1859.js → p-0e62bdd6.js} +2 -2
  96. package/dist/atomic/p-0e62bdd6.js.map +1 -0
  97. package/dist/atomic/{p-60800b2f.entry.js → p-0ed76e65.entry.js} +2 -2
  98. package/dist/atomic/{p-5f706e3d.entry.js → p-170c7da6.entry.js} +2 -2
  99. package/dist/atomic/{p-3857d6a3.entry.js → p-1bbaf206.entry.js} +2 -2
  100. package/dist/atomic/{p-4723ffa5.entry.js → p-20b33c18.entry.js} +2 -2
  101. package/dist/atomic/{p-7709fba4.js → p-2250f505.js} +2 -2
  102. package/dist/atomic/p-2250f505.js.map +1 -0
  103. package/dist/atomic/p-2559747d.js +2 -0
  104. package/dist/atomic/p-2559747d.js.map +1 -0
  105. package/dist/atomic/{p-16f6c1f3.entry.js → p-2fb49fe8.entry.js} +2 -2
  106. package/dist/atomic/{p-13391e75.entry.js → p-3549a469.entry.js} +2 -2
  107. package/dist/atomic/{p-bd3542d2.entry.js → p-36112c34.entry.js} +2 -2
  108. package/dist/atomic/p-36112c34.entry.js.map +1 -0
  109. package/dist/atomic/{p-d6e04719.entry.js → p-373448df.entry.js} +2 -2
  110. package/dist/atomic/{p-88af4470.entry.js → p-40c1dfcb.entry.js} +2 -2
  111. package/dist/atomic/{p-7c3c5f07.entry.js → p-4f4c9a03.entry.js} +2 -2
  112. package/dist/atomic/p-4f4c9a03.entry.js.map +1 -0
  113. package/dist/atomic/{p-20764605.entry.js → p-52d5461a.entry.js} +2 -2
  114. package/dist/atomic/{p-406a288c.entry.js → p-6078667f.entry.js} +2 -2
  115. package/dist/atomic/p-62e85c20.entry.js +2 -0
  116. package/dist/atomic/{p-1a8255f6.entry.js → p-634e4c7b.entry.js} +2 -2
  117. package/dist/atomic/p-6f1bffa2.entry.js +2 -0
  118. package/dist/atomic/p-6f1bffa2.entry.js.map +1 -0
  119. package/dist/atomic/{p-93da1f4e.entry.js → p-6f34dd3a.entry.js} +2 -2
  120. package/dist/atomic/{p-0c0b8d41.entry.js → p-768b172e.entry.js} +2 -2
  121. package/dist/atomic/{p-3cbab25b.entry.js → p-7e971d15.entry.js} +2 -2
  122. package/dist/atomic/{p-a4d277c7.entry.js → p-7fd5b6ac.entry.js} +2 -2
  123. package/dist/atomic/{p-dbcef3a9.entry.js → p-87f69e53.entry.js} +2 -2
  124. package/dist/atomic/{p-6289adc7.entry.js → p-9239be63.entry.js} +2 -2
  125. package/dist/atomic/{p-f71b14b2.entry.js → p-9260dd7d.entry.js} +2 -2
  126. package/dist/atomic/{p-ed8e5c4d.entry.js → p-98dd6df1.entry.js} +2 -2
  127. package/dist/atomic/{p-86bde026.entry.js → p-9a6ec803.entry.js} +2 -2
  128. package/dist/atomic/{p-0b5efb51.entry.js → p-a1e5f767.entry.js} +2 -2
  129. package/dist/atomic/{p-a1522fe5.entry.js → p-a5c05055.entry.js} +2 -2
  130. package/dist/atomic/{p-1db20a4a.entry.js → p-a5f66ecd.entry.js} +2 -2
  131. package/dist/atomic/{p-e4de6bb0.entry.js → p-a64be882.entry.js} +2 -2
  132. package/dist/atomic/{p-7ec6dd3e.entry.js → p-af1b4924.entry.js} +2 -2
  133. package/dist/atomic/{p-e398835b.entry.js → p-b2b9e83f.entry.js} +2 -2
  134. package/dist/atomic/{p-8fdef8a3.entry.js → p-b313058c.entry.js} +2 -2
  135. package/dist/atomic/{p-51f4b423.entry.js → p-b6ae0244.entry.js} +2 -2
  136. package/dist/atomic/p-b6ae0244.entry.js.map +1 -0
  137. package/dist/atomic/{p-3a7a1a00.entry.js → p-bbfe727a.entry.js} +2 -2
  138. package/dist/atomic/{p-97ce3384.entry.js → p-be2a43f4.entry.js} +2 -2
  139. package/dist/atomic/{p-5a8dc372.js → p-bffc7f0d.js} +2 -2
  140. package/dist/atomic/{p-577d34ba.entry.js → p-c4fb6426.entry.js} +2 -2
  141. package/dist/atomic/{p-4601eb93.entry.js → p-c91fe6ec.entry.js} +2 -2
  142. package/dist/atomic/p-c91fe6ec.entry.js.map +1 -0
  143. package/dist/atomic/{p-9c7dbbdf.js → p-cc2b2231.js} +1 -1
  144. package/dist/atomic/p-cc2b2231.js.map +1 -0
  145. package/dist/atomic/{p-a5714bc4.entry.js → p-d211a422.entry.js} +2 -2
  146. package/dist/atomic/{p-9faad55b.entry.js → p-dc128135.entry.js} +2 -2
  147. package/dist/atomic/{p-97748161.js → p-dc28ee14.js} +1 -1
  148. package/dist/{esm/sections-d787040b.js.map → atomic/p-dc28ee14.js.map} +1 -1
  149. package/dist/atomic/{p-c280cd05.js → p-e1cc5150.js} +1 -1
  150. package/dist/atomic/{p-27b8404c.js → p-e62fc40e.js} +2 -2
  151. package/dist/atomic/p-e62fc40e.js.map +1 -0
  152. package/dist/atomic/{p-d1795580.entry.js → p-e7a25b00.entry.js} +2 -2
  153. package/dist/cjs/_loader.cjs.js +1 -1
  154. package/dist/cjs/{analytics-config-ce45ef8d.js → analytics-config-6e6cc1a2.js} +2 -2
  155. package/dist/cjs/{analytics-config-ce45ef8d.js.map → analytics-config-6e6cc1a2.js.map} +1 -1
  156. package/dist/cjs/atomic-category-facet.cjs.entry.js +7 -17
  157. package/dist/cjs/atomic-category-facet.cjs.entry.js.map +1 -1
  158. package/dist/cjs/atomic-facet.cjs.entry.js +1 -1
  159. package/dist/cjs/atomic-field-condition.cjs.entry.js +2 -2
  160. package/dist/cjs/atomic-folded-result-list.cjs.entry.js +2 -2
  161. package/dist/cjs/atomic-format-currency.cjs.entry.js +1 -1
  162. package/dist/cjs/atomic-format-number.cjs.entry.js +1 -1
  163. package/dist/cjs/atomic-format-unit.cjs.entry.js +1 -1
  164. package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js +2 -2
  165. package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js +2 -2
  166. package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js.map +1 -1
  167. package/dist/cjs/atomic-insight-interface.cjs.entry.js +3 -3
  168. package/dist/cjs/atomic-insight-layout.cjs.entry.js +2 -2
  169. package/dist/cjs/atomic-insight-result-children-template.cjs.entry.js +2 -2
  170. package/dist/cjs/atomic-insight-result-list.cjs.entry.js +2 -2
  171. package/dist/cjs/atomic-insight-result-template.cjs.entry.js +2 -2
  172. package/dist/cjs/atomic-insight-result.cjs.entry.js +2 -2
  173. package/dist/cjs/atomic-insight-search-box.cjs.entry.js +1 -1
  174. package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js +2 -2
  175. package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js.map +1 -1
  176. package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +2 -2
  177. package/dist/cjs/{sections-4b4af2f8.js → atomic-layout-section-utils-08b4fbcd.js} +1 -1
  178. package/dist/cjs/atomic-layout-section-utils-08b4fbcd.js.map +1 -0
  179. package/dist/cjs/atomic-numeric-facet.cjs.entry.js +1 -1
  180. package/dist/cjs/atomic-quickview-modal.cjs.entry.js +23 -23
  181. package/dist/cjs/atomic-quickview-modal.cjs.entry.js.map +1 -1
  182. package/dist/cjs/atomic-quickview.cjs.entry.js +1 -1
  183. package/dist/cjs/atomic-recs-interface.cjs.entry.js +1 -1
  184. package/dist/cjs/atomic-recs-list.cjs.entry.js +2 -2
  185. package/dist/cjs/atomic-recs-result-template.cjs.entry.js +2 -2
  186. package/dist/cjs/atomic-recs-result.cjs.entry.js +2 -2
  187. package/dist/cjs/atomic-refine-modal.cjs.entry.js +4 -4
  188. package/dist/cjs/atomic-refine-modal.cjs.entry.js.map +1 -1
  189. package/dist/cjs/atomic-result-children-template.cjs.entry.js +2 -2
  190. package/dist/cjs/atomic-result-children.cjs.entry.js +1 -1
  191. package/dist/cjs/atomic-result-fields-list.cjs.entry.js +1 -1
  192. package/dist/cjs/atomic-result-link.cjs.entry.js +1 -1
  193. package/dist/cjs/atomic-result-list.cjs.entry.js +3 -3
  194. package/dist/cjs/atomic-result-placeholder_8.cjs.entry.js +3 -3
  195. package/dist/cjs/atomic-result-template.cjs.entry.js +2 -2
  196. package/dist/cjs/atomic-result.cjs.entry.js +2 -2
  197. package/dist/cjs/atomic-search-box-query-suggestions.cjs.entry.js +76 -0
  198. package/dist/cjs/atomic-search-box-query-suggestions.cjs.entry.js.map +1 -0
  199. package/dist/cjs/atomic-search-box.cjs.entry.js +8 -4
  200. package/dist/cjs/atomic-search-box.cjs.entry.js.map +1 -1
  201. package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js +2 -2
  202. package/dist/cjs/atomic-sort-dropdown.cjs.entry.js +2 -2
  203. package/dist/cjs/atomic-sort-expression.cjs.entry.js +1 -1
  204. package/dist/cjs/atomic-tab-manager.cjs.entry.js +1 -1
  205. package/dist/cjs/atomic.cjs.js +1 -1
  206. package/dist/cjs/clock-7aeb19d0.js +7 -0
  207. package/dist/cjs/clock-7aeb19d0.js.map +1 -0
  208. package/dist/cjs/{display-options-14f05862.js → display-options-69531e8d.js} +4 -4
  209. package/dist/cjs/display-options-69531e8d.js.map +1 -0
  210. package/dist/cjs/index-757bc886.js +2 -6
  211. package/dist/cjs/{insight-layout-355a94dd.js → insight-layout-b6ff92fd.js} +11 -11
  212. package/dist/cjs/insight-layout-b6ff92fd.js.map +1 -0
  213. package/dist/cjs/{sections-fbb93b53.js → item-layout-sections-b09ba4b3.js} +1 -1
  214. package/dist/cjs/item-layout-sections-b09ba4b3.js.map +1 -0
  215. package/dist/cjs/{result-template-common-88359dad.js → result-template-common-84bd4057.js} +3 -3
  216. package/dist/cjs/result-template-common-84bd4057.js.map +1 -0
  217. package/dist/cjs/{stencil-suggestion-manager-2cba6d69.js → stencil-suggestion-manager-88cb88f2.js} +2 -2
  218. package/dist/cjs/stencil-suggestion-manager-88cb88f2.js.map +1 -0
  219. package/dist/cjs/version.cjs.js +1 -1
  220. package/dist/esm/_loader.js +1 -1
  221. package/dist/esm/{analytics-config-e2f3579b.js → analytics-config-4fa26cbf.js} +2 -2
  222. package/dist/esm/{analytics-config-e2f3579b.js.map → analytics-config-4fa26cbf.js.map} +1 -1
  223. package/dist/esm/atomic-category-facet.entry.js +7 -17
  224. package/dist/esm/atomic-category-facet.entry.js.map +1 -1
  225. package/dist/esm/atomic-facet.entry.js +1 -1
  226. package/dist/esm/atomic-field-condition.entry.js +2 -2
  227. package/dist/esm/atomic-folded-result-list.entry.js +2 -2
  228. package/dist/esm/atomic-format-currency.entry.js +1 -1
  229. package/dist/esm/atomic-format-number.entry.js +1 -1
  230. package/dist/esm/atomic-format-unit.entry.js +1 -1
  231. package/dist/esm/atomic-insight-folded-result-list.entry.js +2 -2
  232. package/dist/esm/atomic-insight-history-toggle.entry.js +2 -2
  233. package/dist/esm/atomic-insight-history-toggle.entry.js.map +1 -1
  234. package/dist/esm/atomic-insight-interface.entry.js +3 -3
  235. package/dist/esm/atomic-insight-layout.entry.js +2 -2
  236. package/dist/esm/atomic-insight-result-children-template.entry.js +2 -2
  237. package/dist/esm/atomic-insight-result-list.entry.js +2 -2
  238. package/dist/esm/atomic-insight-result-template.entry.js +2 -2
  239. package/dist/esm/atomic-insight-result.entry.js +2 -2
  240. package/dist/esm/atomic-insight-search-box.entry.js +1 -1
  241. package/dist/esm/atomic-insight-user-actions-toggle.entry.js +2 -2
  242. package/dist/esm/atomic-insight-user-actions-toggle.entry.js.map +1 -1
  243. package/dist/esm/atomic-ipx-recs-list.entry.js +2 -2
  244. package/dist/{atomic/components/sections.js → esm/atomic-layout-section-utils-c8ca7445.js} +1 -1
  245. package/dist/esm/atomic-layout-section-utils-c8ca7445.js.map +1 -0
  246. package/dist/esm/atomic-numeric-facet.entry.js +1 -1
  247. package/dist/esm/atomic-quickview-modal.entry.js +23 -23
  248. package/dist/esm/atomic-quickview-modal.entry.js.map +1 -1
  249. package/dist/esm/atomic-quickview.entry.js +1 -1
  250. package/dist/esm/atomic-recs-interface.entry.js +1 -1
  251. package/dist/esm/atomic-recs-list.entry.js +2 -2
  252. package/dist/esm/atomic-recs-result-template.entry.js +2 -2
  253. package/dist/esm/atomic-recs-result.entry.js +2 -2
  254. package/dist/esm/atomic-refine-modal.entry.js +2 -2
  255. package/dist/esm/atomic-refine-modal.entry.js.map +1 -1
  256. package/dist/esm/atomic-result-children-template.entry.js +2 -2
  257. package/dist/esm/atomic-result-children.entry.js +1 -1
  258. package/dist/esm/atomic-result-fields-list.entry.js +1 -1
  259. package/dist/esm/atomic-result-link.entry.js +1 -1
  260. package/dist/esm/atomic-result-list.entry.js +3 -3
  261. package/dist/esm/atomic-result-placeholder_8.entry.js +3 -3
  262. package/dist/esm/atomic-result-template.entry.js +2 -2
  263. package/dist/esm/atomic-result.entry.js +2 -2
  264. package/dist/esm/atomic-search-box-query-suggestions.entry.js +72 -0
  265. package/dist/esm/atomic-search-box-query-suggestions.entry.js.map +1 -0
  266. package/dist/esm/atomic-search-box.entry.js +8 -4
  267. package/dist/esm/atomic-search-box.entry.js.map +1 -1
  268. package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js +2 -2
  269. package/dist/esm/atomic-sort-dropdown.entry.js +2 -2
  270. package/dist/esm/atomic-sort-expression.entry.js +1 -1
  271. package/dist/esm/atomic-tab-manager.entry.js +1 -1
  272. package/dist/esm/atomic.js +1 -1
  273. package/dist/esm/clock-b1f5d7f7.js +5 -0
  274. package/dist/esm/clock-b1f5d7f7.js.map +1 -0
  275. package/dist/esm/{display-options-c16840c6.js → display-options-1199eed5.js} +2 -2
  276. package/dist/esm/display-options-1199eed5.js.map +1 -0
  277. package/dist/esm/index-3f35faca.js +2 -6
  278. package/dist/esm/{insight-layout-776b87f2.js → insight-layout-a1e4b795.js} +2 -2
  279. package/dist/esm/insight-layout-a1e4b795.js.map +1 -0
  280. package/dist/esm/{sections-d787040b.js → item-layout-sections-8afb5049.js} +1 -1
  281. package/dist/esm/item-layout-sections-8afb5049.js.map +1 -0
  282. package/dist/esm/{result-template-common-ac9fecab.js → result-template-common-995b94f8.js} +2 -2
  283. package/dist/esm/result-template-common-995b94f8.js.map +1 -0
  284. package/dist/esm/{stencil-suggestion-manager-376f83e8.js → stencil-suggestion-manager-1f4ed8d0.js} +2 -2
  285. package/dist/esm/stencil-suggestion-manager-1f4ed8d0.js.map +1 -0
  286. package/dist/esm/version.js +1 -1
  287. package/dist/types/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.d.ts +4 -3
  288. package/dist/types/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.d.ts +1 -0
  289. package/dist/types/components/commerce/atomic-commerce-search-box-recent-queries/atomic-commerce-search-box-recent-queries.d.ts +2 -0
  290. package/dist/types/components/common/atomic-layout-section/atomic-layout-section.d.ts +1 -1
  291. package/dist/types/components/common/breadbox/breadcrumb-button.d.ts +2 -0
  292. package/dist/types/components/common/facets/category-facet/all-categories-button.d.ts +0 -2
  293. package/dist/types/components/common/facets/category-facet/stencil-all-categories-button.d.ts +0 -2
  294. package/dist/types/components/common/facets/category-facet/stencil-search-value.d.ts +0 -1
  295. package/dist/types/components/common/facets/facet-search/facet-search-input-guard.d.ts +1 -1
  296. package/dist/types/components/common/no-items/guard.d.ts +1 -1
  297. package/dist/types/components/common/refine-modal/guard.d.ts +1 -1
  298. package/dist/types/components/common/sort/sort-guard.d.ts +1 -1
  299. package/dist/types/components/common/validate-props-controller/validate-props-controller.d.ts +32 -0
  300. package/dist/types/components/search/atomic-relevance-inspector/atomic-relevance-inspector.d.ts +18 -8
  301. package/dist/types/components/search/atomic-search-box/atomic-search-box.d.ts +1 -0
  302. package/dist/types/components/search/atomic-search-box-recent-queries/atomic-search-box-recent-queries.d.ts +45 -0
  303. package/dist/types/components/search/atomic-search-interface/atomic-search-interface.d.ts +6 -3
  304. package/dist/types/components/search/index.d.ts +2 -0
  305. package/dist/types/components.d.ts +0 -102
  306. package/dist/types/utils/compare-utils.d.ts +9 -0
  307. package/docs/atomic-docs.json +1 -185
  308. package/package.json +1 -1
  309. package/dist/atomic/components/atomic-relevance-inspector.d.ts +0 -11
  310. package/dist/atomic/components/atomic-relevance-inspector.js +0 -53
  311. package/dist/atomic/components/atomic-relevance-inspector.js.map +0 -1
  312. package/dist/atomic/components/atomic-search-box-recent-queries.d.ts +0 -11
  313. package/dist/atomic/components/atomic-search-box-recent-queries.js +0 -8
  314. package/dist/atomic/components/atomic-search-box-recent-queries.js.map +0 -1
  315. package/dist/atomic/components/atomic-search-box-recent-queries2.js +0 -183
  316. package/dist/atomic/components/atomic-search-box-recent-queries2.js.map +0 -1
  317. package/dist/atomic/components/components/common/facets/category-facet/all-categories-localized-label.js +0 -9
  318. package/dist/atomic/components/sections.js.map +0 -1
  319. package/dist/atomic/components/sections2.js.map +0 -1
  320. package/dist/atomic/p-16f4ce98.js +0 -2
  321. package/dist/atomic/p-16f4ce98.js.map +0 -1
  322. package/dist/atomic/p-250f34d4.entry.js +0 -2
  323. package/dist/atomic/p-27b8404c.js.map +0 -1
  324. package/dist/atomic/p-2caa1859.js.map +0 -1
  325. package/dist/atomic/p-4601eb93.entry.js.map +0 -1
  326. package/dist/atomic/p-51f4b423.entry.js.map +0 -1
  327. package/dist/atomic/p-7709fba4.js.map +0 -1
  328. package/dist/atomic/p-7c3c5f07.entry.js.map +0 -1
  329. package/dist/atomic/p-97748161.js.map +0 -1
  330. package/dist/atomic/p-9c7dbbdf.js.map +0 -1
  331. package/dist/atomic/p-bd3542d2.entry.js.map +0 -1
  332. package/dist/atomic/p-de687bed.entry.js +0 -2
  333. package/dist/atomic/p-de687bed.entry.js.map +0 -1
  334. package/dist/atomic/p-df4397ab.entry.js +0 -2
  335. package/dist/atomic/p-df4397ab.entry.js.map +0 -1
  336. package/dist/cjs/atomic-relevance-inspector.cjs.entry.js +0 -38
  337. package/dist/cjs/atomic-relevance-inspector.cjs.entry.js.map +0 -1
  338. package/dist/cjs/atomic-search-box-query-suggestions_2.cjs.entry.js +0 -234
  339. package/dist/cjs/atomic-search-box-query-suggestions_2.cjs.entry.js.map +0 -1
  340. package/dist/cjs/clock-f03ff827.js +0 -7
  341. package/dist/cjs/clock-f03ff827.js.map +0 -1
  342. package/dist/cjs/display-options-14f05862.js.map +0 -1
  343. package/dist/cjs/insight-layout-355a94dd.js.map +0 -1
  344. package/dist/cjs/result-template-common-88359dad.js.map +0 -1
  345. package/dist/cjs/sections-4b4af2f8.js.map +0 -1
  346. package/dist/cjs/sections-fbb93b53.js.map +0 -1
  347. package/dist/cjs/stencil-suggestion-manager-2cba6d69.js.map +0 -1
  348. package/dist/esm/atomic-relevance-inspector.entry.js +0 -34
  349. package/dist/esm/atomic-relevance-inspector.entry.js.map +0 -1
  350. package/dist/esm/atomic-search-box-query-suggestions_2.entry.js +0 -229
  351. package/dist/esm/atomic-search-box-query-suggestions_2.entry.js.map +0 -1
  352. package/dist/esm/clock-add3e9a5.js +0 -5
  353. package/dist/esm/clock-add3e9a5.js.map +0 -1
  354. package/dist/esm/display-options-c16840c6.js.map +0 -1
  355. package/dist/esm/insight-layout-776b87f2.js.map +0 -1
  356. package/dist/esm/result-template-common-ac9fecab.js.map +0 -1
  357. package/dist/esm/sections-ae00b53a.js.map +0 -1
  358. package/dist/esm/stencil-suggestion-manager-376f83e8.js.map +0 -1
  359. package/dist/types/components/common/facets/category-facet/all-categories-localized-label.d.ts +0 -6
  360. package/dist/types/components/common/facets/category-facet/stencil-all-categories-localized-label.d.ts +0 -6
  361. package/dist/types/components/search/search-box-suggestions/atomic-search-box-recent-queries/atomic-search-box-recent-queries.d.ts +0 -37
  362. /package/dist/atomic/components/components/common/atomic-layout-section/{sections.js → atomic-layout-section-utils.js} +0 -0
  363. /package/dist/atomic/{p-475124d2.entry.js.map → p-01511388.entry.js.map} +0 -0
  364. /package/dist/atomic/{p-60800b2f.entry.js.map → p-0ed76e65.entry.js.map} +0 -0
  365. /package/dist/atomic/{p-5f706e3d.entry.js.map → p-170c7da6.entry.js.map} +0 -0
  366. /package/dist/atomic/{p-3857d6a3.entry.js.map → p-1bbaf206.entry.js.map} +0 -0
  367. /package/dist/atomic/{p-4723ffa5.entry.js.map → p-20b33c18.entry.js.map} +0 -0
  368. /package/dist/atomic/{p-16f6c1f3.entry.js.map → p-2fb49fe8.entry.js.map} +0 -0
  369. /package/dist/atomic/{p-13391e75.entry.js.map → p-3549a469.entry.js.map} +0 -0
  370. /package/dist/atomic/{p-d6e04719.entry.js.map → p-373448df.entry.js.map} +0 -0
  371. /package/dist/atomic/{p-88af4470.entry.js.map → p-40c1dfcb.entry.js.map} +0 -0
  372. /package/dist/atomic/{p-20764605.entry.js.map → p-52d5461a.entry.js.map} +0 -0
  373. /package/dist/atomic/{p-406a288c.entry.js.map → p-6078667f.entry.js.map} +0 -0
  374. /package/dist/atomic/{p-250f34d4.entry.js.map → p-62e85c20.entry.js.map} +0 -0
  375. /package/dist/atomic/{p-1a8255f6.entry.js.map → p-634e4c7b.entry.js.map} +0 -0
  376. /package/dist/atomic/{p-93da1f4e.entry.js.map → p-6f34dd3a.entry.js.map} +0 -0
  377. /package/dist/atomic/{p-0c0b8d41.entry.js.map → p-768b172e.entry.js.map} +0 -0
  378. /package/dist/atomic/{p-3cbab25b.entry.js.map → p-7e971d15.entry.js.map} +0 -0
  379. /package/dist/atomic/{p-a4d277c7.entry.js.map → p-7fd5b6ac.entry.js.map} +0 -0
  380. /package/dist/atomic/{p-dbcef3a9.entry.js.map → p-87f69e53.entry.js.map} +0 -0
  381. /package/dist/atomic/{p-6289adc7.entry.js.map → p-9239be63.entry.js.map} +0 -0
  382. /package/dist/atomic/{p-f71b14b2.entry.js.map → p-9260dd7d.entry.js.map} +0 -0
  383. /package/dist/atomic/{p-ed8e5c4d.entry.js.map → p-98dd6df1.entry.js.map} +0 -0
  384. /package/dist/atomic/{p-86bde026.entry.js.map → p-9a6ec803.entry.js.map} +0 -0
  385. /package/dist/atomic/{p-0b5efb51.entry.js.map → p-a1e5f767.entry.js.map} +0 -0
  386. /package/dist/atomic/{p-a1522fe5.entry.js.map → p-a5c05055.entry.js.map} +0 -0
  387. /package/dist/atomic/{p-1db20a4a.entry.js.map → p-a5f66ecd.entry.js.map} +0 -0
  388. /package/dist/atomic/{p-e4de6bb0.entry.js.map → p-a64be882.entry.js.map} +0 -0
  389. /package/dist/atomic/{p-7ec6dd3e.entry.js.map → p-af1b4924.entry.js.map} +0 -0
  390. /package/dist/atomic/{p-e398835b.entry.js.map → p-b2b9e83f.entry.js.map} +0 -0
  391. /package/dist/atomic/{p-8fdef8a3.entry.js.map → p-b313058c.entry.js.map} +0 -0
  392. /package/dist/atomic/{p-3a7a1a00.entry.js.map → p-bbfe727a.entry.js.map} +0 -0
  393. /package/dist/atomic/{p-97ce3384.entry.js.map → p-be2a43f4.entry.js.map} +0 -0
  394. /package/dist/atomic/{p-5a8dc372.js.map → p-bffc7f0d.js.map} +0 -0
  395. /package/dist/atomic/{p-577d34ba.entry.js.map → p-c4fb6426.entry.js.map} +0 -0
  396. /package/dist/atomic/{p-a5714bc4.entry.js.map → p-d211a422.entry.js.map} +0 -0
  397. /package/dist/atomic/{p-9faad55b.entry.js.map → p-dc128135.entry.js.map} +0 -0
  398. /package/dist/atomic/{p-c280cd05.js.map → p-e1cc5150.js.map} +0 -0
  399. /package/dist/atomic/{p-d1795580.entry.js.map → p-e7a25b00.entry.js.map} +0 -0
  400. /package/dist/types/components/common/atomic-layout-section/{sections.d.ts → atomic-layout-section-utils.d.ts} +0 -0
  401. /package/dist/types/components/common/layout/{sections.d.ts → item-layout-sections.d.ts} +0 -0
@@ -38,4 +38,4 @@ function containsSections(content) {
38
38
 
39
39
  export { containsSections as c, isResultSectionNode as i };
40
40
 
41
- //# sourceMappingURL=sections-d787040b.js.map
41
+ //# sourceMappingURL=item-layout-sections-8afb5049.js.map
@@ -0,0 +1 @@
1
+ {"file":"item-layout-sections-8afb5049.js","mappings":";;AAEA,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IAChC,8BAA8B;IAC9B,8BAA8B;IAC9B,+BAA+B;IAC/B,6BAA6B;IAC7B,sCAAsC;IACtC,kCAAkC;IAClC,+BAA+B;IAC/B,uCAAuC;IACvC,gCAAgC;CACxB,CAAC,CAAC;AAEZ,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,+BAA+B;IAC/B,+BAA+B;IAC/B,gCAAgC;IAChC,6BAA6B;IAC7B,iCAAiC;IACjC,mCAAmC;IACnC,oCAAoC;IACpC,wCAAwC;IACxC,iCAAiC;CACzB,CAAC,CAAC;AAEZ,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,iBAAiB,EAAE,GAAG,kBAAkB,CAAC,CAAC,CAAC;SAMvD,mBAAmB,CAAC,OAAa;IAC/C,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;QAC3B,OAAO,KAAK,CAAC;KACd;IACD,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAwB,CAAC,CAAC;AAC1E,CAAC;SAEe,gBAAgB,CAAC,OAA2C;IAC1E,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;KAC1E;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC;AACzE;;;;","names":[],"sources":["src/components/common/layout/item-layout-sections.ts"],"sourcesContent":["import {isElementNode} from '@/src/utils/utils';\n\nconst resultSectionTags = new Set([\n 'atomic-result-section-visual',\n 'atomic-result-section-badges',\n 'atomic-result-section-actions',\n 'atomic-result-section-title',\n 'atomic-result-section-title-metadata',\n 'atomic-result-section-emphasized',\n 'atomic-result-section-excerpt',\n 'atomic-result-section-bottom-metadata',\n 'atomic-result-section-children',\n] as const);\n\nconst productSectionTags = new Set([\n 'atomic-product-section-visual',\n 'atomic-product-section-badges',\n 'atomic-product-section-actions',\n 'atomic-product-section-name',\n 'atomic-product-section-metadata',\n 'atomic-product-section-emphasized',\n 'atomic-product-section-description',\n 'atomic-product-section-bottom-metadata',\n 'atomic-product-section-children',\n] as const);\n\nconst allTags = new Set([...resultSectionTags, ...productSectionTags]);\n\ntype SetValueType<T> = T extends Set<infer U> ? U : never;\n\nexport type ItemSectionTagName = SetValueType<typeof allTags>;\n\nexport function isResultSectionNode(element: Node) {\n if (!isElementNode(element)) {\n return false;\n }\n return allTags.has(element.tagName.toLowerCase() as ItemSectionTagName);\n}\n\nexport function containsSections(content: string | NodeList | HTMLCollection) {\n if (typeof content === 'string') {\n return Array.from(allTags.values()).some((tag) => content.includes(tag));\n }\n return Array.from(content).some((child) => isResultSectionNode(child));\n}\n"],"version":3}
@@ -2,7 +2,7 @@ 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-7161486d.js';
4
4
  import { t as tableElementTagName } from './table-element-utils-49d22ec6.js';
5
- import { i as isResultSectionNode } from './sections-d787040b.js';
5
+ import { i as isResultSectionNode } from './item-layout-sections-8afb5049.js';
6
6
 
7
7
  function getTemplateNodeType(node) {
8
8
  if (isResultSectionNode(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=result-template-common-ac9fecab.js.map
115
+ //# sourceMappingURL=result-template-common-995b94f8.js.map
@@ -0,0 +1 @@
1
+ {"file":"result-template-common-995b94f8.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}
@@ -32,7 +32,7 @@ const TextAreaClearButton = ({ inputRef, bindings, onClick, ...defaultButtonProp
32
32
  h(Button, { style: "text-transparent", part: "clear-button", class: "text-neutral-dark flex h-8 w-8 shrink-0 items-center justify-center", onClick: () => {
33
33
  onClick?.();
34
34
  inputRef?.focus();
35
- }, ariaLabel: bindings.i18n.t('clear'), ...defaultButtonProps },
35
+ }, ariaLabel: bindings.i18n.t('clear-search'), ...defaultButtonProps },
36
36
  h("atomic-icon", { part: "clear-icon", icon: ClearSlim, class: "h-4 w-4" }))));
37
37
 
38
38
  function getPopupAttributes(props) {
@@ -411,4 +411,4 @@ class SuggestionManager {
411
411
 
412
412
  export { SuggestionManager as S, SearchSlimIcon as a, SearchTextArea as b, SearchBoxWrapper as c };
413
413
 
414
- //# sourceMappingURL=stencil-suggestion-manager-376f83e8.js.map
414
+ //# sourceMappingURL=stencil-suggestion-manager-1f4ed8d0.js.map
@@ -0,0 +1 @@
1
+ {"file":"stencil-suggestion-manager-1f4ed8d0.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\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\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-search')}\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\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}
@@ -1,2 +1,2 @@
1
1
  export const headlessVersion = '3.31.1';
2
- export const atomicVersion = '3.34.0-pre.86c4aef0f1';
2
+ export const atomicVersion = '3.34.0-pre.9195dfb0e8';
@@ -1,7 +1,8 @@
1
1
  import { type BreadcrumbManager, type BreadcrumbManagerState, type Context, type ContextState } from '@coveo/headless/commerce';
2
2
  import { type CSSResultGroup, LitElement } from 'lit';
3
+ import type { CommerceBindings } from "../atomic-commerce-interface/atomic-commerce-interface";
3
4
  import type { InitializableComponent } from "../../../decorators/types";
4
- import type { CommerceBindings } from '../atomic-commerce-interface/atomic-commerce-interface';
5
+ import { AriaLiveRegionController } from "../../../utils/accessibility-utils";
5
6
  /**
6
7
  * The `atomic-commerce-breadbox` component creates breadcrumbs that display a summary of the currently active facet values.
7
8
  *
@@ -36,6 +37,7 @@ export declare class AtomicCommerceBreadbox extends LitElement implements Initia
36
37
  error: Error;
37
38
  private isCollapsed;
38
39
  private showMoreText;
40
+ protected breadboxAriaMessage: AriaLiveRegionController;
39
41
  /**
40
42
  * This prop allows you to control the display depth
41
43
  * of the path by specifying the number of parent or ancestor
@@ -51,10 +53,9 @@ export declare class AtomicCommerceBreadbox extends LitElement implements Initia
51
53
  * @defaultValue `3`
52
54
  */
53
55
  pathLimit: number;
56
+ constructor();
54
57
  initialize(): void;
55
- willUpdate(changedProperties: Map<string, unknown>): void;
56
58
  updated(): void;
57
- private validateProps;
58
59
  disconnectedCallback(): void;
59
60
  private get breadcrumbs();
60
61
  private get showMoreButton();
@@ -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 {
@@ -1,6 +1,7 @@
1
1
  import { type SearchBox } from '@coveo/headless/commerce';
2
2
  import { LitElement } from 'lit';
3
3
  import type { SearchBoxSuggestionsComponent } from "../../../decorators/types";
4
+ import { AriaLiveRegionController } from "../../../utils/accessibility-utils";
4
5
  import type { SearchBoxSuggestions, SearchBoxSuggestionsBindings } from '../../common/suggestions/suggestions-types';
5
6
  import type { CommerceBindings } from '../atomic-commerce-interface/atomic-commerce-interface';
6
7
  /**
@@ -27,6 +28,7 @@ export declare class AtomicCommerceSearchBoxRecentQueries extends LitElement imp
27
28
  * The maximum number of suggestions to display initially, when the input field is empty.
28
29
  */
29
30
  maxWithoutQuery?: number;
31
+ protected searchBoxAriaMessage: AriaLiveRegionController;
30
32
  connectedCallback(): void;
31
33
  initialize(): SearchBoxSuggestions;
32
34
  private retrieveLocalStorage;
@@ -1,5 +1,5 @@
1
1
  import { LitElement } from 'lit';
2
- import type { Section } from './sections';
2
+ import type { Section } from './atomic-layout-section-utils';
3
3
  declare const AtomicLayoutSection_base: import("../../../mixins/mixin-common").Constructor<{
4
4
  injectStyles(dynamicStyles?: import("lit").CSSResultGroup): Promise<void>;
5
5
  }> & typeof LitElement;
@@ -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,8 +3,6 @@ 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;
8
6
  onClick(): void;
9
7
  }
10
8
  export declare const renderCategoryFacetAllCategoryButton: FunctionalComponent<CategoryFacetAllCategoryButtonProps>;
@@ -3,8 +3,6 @@ import { i18n } from 'i18next';
3
3
  interface CategoryFacetAllCategoryButtonProps {
4
4
  i18n: i18n;
5
5
  onClick(): void;
6
- facetId?: string;
7
- field: string;
8
6
  }
9
7
  /**
10
8
  * @deprecated should only be used for Stencil components.
@@ -8,7 +8,6 @@ interface CategoryFacetSearchValueProps {
8
8
  };
9
9
  i18n: i18n;
10
10
  field: string;
11
- facetId?: string;
12
11
  onClick(): void;
13
12
  searchQuery: string;
14
13
  }
@@ -6,7 +6,7 @@ export interface FacetSearchInputGuardProps {
6
6
  numberOfDisplayedValues: number;
7
7
  }
8
8
  declare class FacetSearchInputGuardDirective extends Directive {
9
- render({ canShowMoreValues, numberOfDisplayedValues, withSearch, }: FacetSearchInputGuardProps, content: () => unknown): typeof nothing | import("lit-html").TemplateResult<1>;
9
+ render({ canShowMoreValues, numberOfDisplayedValues, withSearch, }: FacetSearchInputGuardProps, content: () => unknown): import("lit-html").TemplateResult<1> | typeof nothing;
10
10
  }
11
11
  export declare const facetSearchInputGuard: (values_0: FacetSearchInputGuardProps, content: () => unknown) => import("lit-html/directive.js").DirectiveResult<typeof FacetSearchInputGuardDirective>;
12
12
  export {};
@@ -6,7 +6,7 @@ interface NoItemsGuardProps {
6
6
  hasResults: boolean;
7
7
  }
8
8
  declare class NoItemsGuardDirective extends Directive {
9
- render({ firstSearchExecuted, isLoading, hasResults }: NoItemsGuardProps, content: () => unknown): typeof nothing | import("lit-html").TemplateResult<1>;
9
+ render({ firstSearchExecuted, isLoading, hasResults }: NoItemsGuardProps, content: () => unknown): import("lit-html").TemplateResult<1> | typeof nothing;
10
10
  }
11
11
  export declare const noItemsGuard: (values_0: NoItemsGuardProps, content: () => unknown) => import("lit-html/directive.js").DirectiveResult<typeof NoItemsGuardDirective>;
12
12
  export {};
@@ -6,7 +6,7 @@ export interface RefineToggleGuardProps {
6
6
  hasItems: boolean;
7
7
  }
8
8
  declare class RefineToggleGuardDirective extends Directive {
9
- render({ hasError, firstRequestExecuted, hasItems }: RefineToggleGuardProps, content: () => unknown): typeof nothing | import("lit-html").TemplateResult<1>;
9
+ render({ hasError, firstRequestExecuted, hasItems }: RefineToggleGuardProps, content: () => unknown): import("lit-html").TemplateResult<1> | typeof nothing;
10
10
  }
11
11
  export declare const refineToggleGuard: (values_0: RefineToggleGuardProps, content: () => unknown) => import("lit-html/directive.js").DirectiveResult<typeof RefineToggleGuardDirective>;
12
12
  export {};
@@ -5,5 +5,5 @@ interface SortGuardProps {
5
5
  hasError: boolean;
6
6
  isLoading: boolean;
7
7
  }
8
- export declare const sortGuard: ({ firstSearchExecuted, hasError, hasResults, isLoading }: SortGuardProps, sortTemplate: () => TemplateResult) => typeof nothing | TemplateResult | typeof noChange;
8
+ export declare const sortGuard: ({ firstSearchExecuted, hasError, hasResults, isLoading }: SortGuardProps, sortTemplate: () => TemplateResult) => TemplateResult | typeof nothing | typeof noChange;
9
9
  export {};
@@ -0,0 +1,32 @@
1
+ import type { Schema } from '@coveo/bueno';
2
+ import type { ReactiveController, ReactiveControllerHost } from 'lit';
3
+ /**
4
+ * A reactive controller that validates the props of a Lit component against a
5
+ * provided Bueno schema.
6
+ *
7
+ * It validates the props when the host is connected to the DOM and whenever
8
+ * the host updates, revalidating only if the props have changed since the last
9
+ * validation.
10
+ *
11
+ * If validation fails, the controller sets the `error` property on the host.
12
+ */
13
+ export declare class ValidatePropsController<TProps extends Record<string, unknown>> implements ReactiveController {
14
+ private host;
15
+ private getProps;
16
+ private schema;
17
+ private currentProps?;
18
+ private previousProps?;
19
+ /**
20
+ * Creates a `ValidatePropsController`.
21
+ *
22
+ * @param host The host element.
23
+ * @param getProps A function that returns the current props to validate.
24
+ * @param schema The Bueno schema to validate the props against.
25
+ */
26
+ constructor(host: ReactiveControllerHost & HTMLElement & {
27
+ error: Error;
28
+ }, getProps: () => TProps, schema: Schema<TProps>);
29
+ hostConnected(): void;
30
+ hostUpdate(): void;
31
+ private _validateProps;
32
+ }
@@ -1,15 +1,25 @@
1
- import { EventEmitter } from '../../../stencil-public-runtime';
2
- import { Bindings } from '../atomic-search-interface/atomic-search-interface';
1
+ import { LitElement } from 'lit';
2
+ import "../../common/atomic-modal/atomic-modal";
3
+ import type { Bindings } from "../atomic-search-interface/interfaces";
4
+ import type { InitializableComponent } from "../../../decorators/types.js";
3
5
  /**
4
6
  * The `atomic-relevance-inspector` component is used internally to offer insight on search page relevance, as well as information to help troubleshoot issues during development.
7
+ *
8
+ * @internal
5
9
  */
6
- export declare class AtomicRelevanceInspector {
7
- /**
8
- * The Atomic interface bindings, namely the headless search engine and i18n instances.
9
- */
10
+ export declare class AtomicRelevanceInspector extends LitElement implements InitializableComponent<Bindings> {
10
11
  bindings: Bindings;
12
+ error: Error;
11
13
  open: boolean;
12
- closeRelevanceInspector: EventEmitter<null> | undefined;
13
- render(): any;
14
+ initialize: () => void;
15
+ disconnectedCallback(): void;
16
+ render(): import("lit-html").TemplateResult<1>;
17
+ private handleRelevanceInspectorDoubleClick;
18
+ private handleCloseRelevanceInspector;
14
19
  private get adminHref();
15
20
  }
21
+ declare global {
22
+ interface HTMLElementTagNameMap {
23
+ 'atomic-relevance-inspector': AtomicRelevanceInspector;
24
+ }
25
+ }
@@ -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;
@@ -0,0 +1,45 @@
1
+ import { type SearchBox } from '@coveo/headless';
2
+ import { LitElement } from 'lit';
3
+ import type { SearchBoxSuggestionsComponent } from "../../../decorators/types";
4
+ import type { SearchBoxSuggestions, SearchBoxSuggestionsBindings } from '../../common/suggestions/suggestions-types';
5
+ import type { Bindings } from '../atomic-search-interface/interfaces';
6
+ /**
7
+ * The `atomic-search-box-recent-queries` component can be added as a child of an `atomic-search-box` component, allowing for the configuration of recent query suggestions.
8
+ */
9
+ export declare class AtomicSearchBoxRecentQueries extends LitElement implements SearchBoxSuggestionsComponent<Bindings> {
10
+ bindings: SearchBoxSuggestionsBindings<SearchBox, Bindings>;
11
+ private recentQueriesList;
12
+ private storage;
13
+ error: Error;
14
+ /**
15
+ * The SVG icon to display.
16
+ *
17
+ * - Use a value that starts with `http://`, `https://`, `./`, or `../`, to fetch and display an icon from a given location.
18
+ * - Use a value that starts with `assets://`, to display an icon from the Atomic package.
19
+ * - Use a stringified SVG to display it directly.
20
+ */
21
+ icon?: string;
22
+ /**
23
+ * The maximum number of suggestions to display when the user types in the input field.
24
+ */
25
+ maxWithQuery: number;
26
+ /**
27
+ * The maximum number of suggestions to display initially, when the input field is empty.
28
+ */
29
+ maxWithoutQuery?: number;
30
+ connectedCallback(): void;
31
+ initialize(): SearchBoxSuggestions;
32
+ private retrieveLocalStorage;
33
+ private updateLocalStorage;
34
+ private warnUser;
35
+ private disableFeature;
36
+ private renderItems;
37
+ private renderClear;
38
+ private renderItem;
39
+ render(): import("lit-html").TemplateResult<1>;
40
+ }
41
+ declare global {
42
+ interface HTMLElementTagNameMap {
43
+ 'atomic-search-box-recent-queries': AtomicSearchBoxRecentQueries;
44
+ }
45
+ }
@@ -3,6 +3,7 @@ import { type i18n } from 'i18next';
3
3
  import { type CSSResultGroup, LitElement } from 'lit';
4
4
  import type { CommonBindings, NonceBindings } from "../../common/interface/bindings";
5
5
  import { type BaseAtomicInterface } from "../../common/interface/interface-controller";
6
+ import "../atomic-relevance-inspector/atomic-relevance-inspector";
6
7
  import { type SearchStore } from './store';
7
8
  import "../../common/atomic-modal/atomic-modal";
8
9
  export type InitializationOptions = SearchEngineConfiguration;
@@ -16,7 +17,6 @@ declare const AtomicSearchInterface_base: typeof LitElement;
16
17
  export declare class AtomicSearchInterface extends AtomicSearchInterface_base implements BaseAtomicInterface<SearchEngine> {
17
18
  bindings: Bindings;
18
19
  error: Error;
19
- relevanceInspectorIsOpen: boolean;
20
20
  urlManager: UrlManager;
21
21
  searchStatus: SearchStatus;
22
22
  private unsubscribeUrlManager;
@@ -24,6 +24,7 @@ export declare class AtomicSearchInterface extends AtomicSearchInterface_base im
24
24
  private initialized;
25
25
  private store;
26
26
  private interfaceController;
27
+ private relevanceInspector?;
27
28
  static styles: CSSResultGroup;
28
29
  /**
29
30
  * A list of non-default fields to include in the query results.
@@ -120,6 +121,9 @@ export declare class AtomicSearchInterface extends AtomicSearchInterface_base im
120
121
  disconnectedCallback(): void;
121
122
  private handleInitialization;
122
123
  scrollToTop(): void;
124
+ /**
125
+ * @deprecated provided for backward compatibility. set the 'open' property directly on the relevance inspector instead.
126
+ */
123
127
  closeRelevanceInspector(): void;
124
128
  /**
125
129
  * Initializes the connection with the headless search engine using options for `accessToken` (required), `organizationId` (required), `environment` (defaults to `prod`), and `renewAccessToken`.
@@ -143,13 +147,12 @@ export declare class AtomicSearchInterface extends AtomicSearchInterface_base im
143
147
  updateIconAssetsPath(): void;
144
148
  private getBindings;
145
149
  private initFieldsToInclude;
150
+ private updateFieldsToInclude;
146
151
  registerFieldsToInclude(): void;
147
152
  private initEngine;
148
153
  private getSearchConfiguration;
149
154
  private get fragment();
150
155
  private initUrlManager;
151
- private handleRelevanceInspectorDoubleClick;
152
- private initRelevanceInspector;
153
156
  private initSearchStatus;
154
157
  private updateHash;
155
158
  private onHashChange;
@@ -1,5 +1,7 @@
1
1
  export { AtomicPager } from './atomic-pager/atomic-pager.js';
2
2
  export { AtomicQuerySummary } from './atomic-query-summary/atomic-query-summary.js';
3
+ export { AtomicRelevanceInspector } from './atomic-relevance-inspector/atomic-relevance-inspector.js';
3
4
  export { AtomicResultsPerPage } from './atomic-results-per-page/atomic-results-per-page.js';
5
+ export { AtomicSearchBoxRecentQueries } from './atomic-search-box-recent-queries/atomic-search-box-recent-queries.js';
4
6
  export { AtomicSearchInterface } from './atomic-search-interface/atomic-search-interface.js';
5
7
  export { AtomicSearchLayout } from './atomic-search-layout/atomic-search-layout.js';