@coveo/atomic 3.34.0-pre.4a147a2f19 → 3.34.0-pre.4aac7c5056

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 (428) 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 +1 -1
  7. package/dist/atomic/components/atomic-facet.js +1 -1
  8. package/dist/atomic/components/atomic-format-currency.js +1 -1
  9. package/dist/atomic/components/atomic-format-number.js +1 -1
  10. package/dist/atomic/components/atomic-format-unit.js +1 -1
  11. package/dist/atomic/components/atomic-insight-history-toggle.js +2 -2
  12. package/dist/atomic/components/atomic-insight-history-toggle.js.map +1 -1
  13. package/dist/atomic/components/atomic-insight-user-actions-toggle.js +2 -2
  14. package/dist/atomic/components/atomic-insight-user-actions-toggle.js.map +1 -1
  15. package/dist/atomic/components/atomic-ipx-result-link.js +3 -3
  16. package/dist/atomic/components/atomic-ipx-result-link.js.map +1 -1
  17. package/dist/{esm/sections-ae00b53a.js → atomic/components/atomic-layout-section-utils.js} +1 -1
  18. package/dist/atomic/components/atomic-layout-section-utils.js.map +1 -0
  19. package/dist/atomic/components/atomic-numeric-facet.js +1 -1
  20. package/dist/atomic/components/atomic-quickview-modal2.js +23 -23
  21. package/dist/atomic/components/atomic-quickview-modal2.js.map +1 -1
  22. package/dist/atomic/components/atomic-quickview.js +1 -1
  23. package/dist/atomic/components/atomic-refine-modal2.js +2 -2
  24. package/dist/atomic/components/atomic-refine-modal2.js.map +1 -1
  25. package/dist/atomic/components/atomic-result-children.js +1 -1
  26. package/dist/atomic/components/atomic-result-fields-list.js +1 -1
  27. package/dist/atomic/components/atomic-result-link.js +3 -3
  28. package/dist/atomic/components/atomic-result-link.js.map +1 -1
  29. package/dist/atomic/components/atomic-result-list.js +1 -1
  30. package/dist/atomic/components/atomic-result-table-placeholder2.js +1 -1
  31. package/dist/atomic/components/atomic-search-box-query-suggestions2.js +1 -1
  32. package/dist/atomic/components/atomic-search-box.js +7 -13
  33. package/dist/atomic/components/atomic-search-box.js.map +1 -1
  34. package/dist/atomic/components/atomic-smart-snippet-feedback-modal2.js +2 -2
  35. package/dist/atomic/components/atomic-sort-dropdown.js +2 -2
  36. package/dist/atomic/components/atomic-sort-expression.js +1 -1
  37. package/dist/atomic/components/atomic-tab-manager.js +1 -1
  38. package/dist/atomic/components/attributes-slot.js +3 -8
  39. package/dist/atomic/components/attributes-slot.js.map +1 -1
  40. package/dist/atomic/components/clock.js +2 -2
  41. package/dist/atomic/components/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.js +17 -32
  42. package/dist/atomic/components/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.js +3 -6
  43. package/dist/atomic/components/components/commerce/atomic-product/atomic-product.js +26 -58
  44. package/dist/atomic/components/components/common/atomic-layout-section/layout.js +1 -1
  45. package/dist/atomic/components/components/common/item-link/attributes-slot.js +3 -8
  46. package/dist/atomic/components/components/common/layout/custom-render-controller.js +37 -0
  47. package/dist/atomic/components/components/common/layout/display-options.js +1 -1
  48. package/dist/atomic/components/components/common/layout/item-layout-controller.js +103 -0
  49. package/dist/atomic/components/components/common/layout/{sections.js → item-layout-sections.js} +1 -1
  50. package/dist/atomic/components/components/common/product-template/product-template-common.js +1 -1
  51. package/dist/atomic/components/components/common/validate-props-controller/validate-props-controller.js +50 -0
  52. package/dist/atomic/components/components/insight/atomic-insight-layout/insight-layout.js +1 -1
  53. package/dist/atomic/components/components/search/atomic-relevance-inspector/atomic-relevance-inspector.js +100 -0
  54. package/dist/atomic/components/components/search/atomic-search-box-recent-queries/atomic-search-box-recent-queries.js +137 -0
  55. package/dist/atomic/components/components/search/atomic-search-interface/atomic-search-interface.js +17 -24
  56. package/dist/atomic/components/components/search/index.js +2 -0
  57. package/dist/atomic/components/components/search/lazy-index.js +2 -0
  58. package/dist/atomic/components/display-options.js +1 -1
  59. package/dist/atomic/components/display-options.js.map +1 -1
  60. package/dist/atomic/components/generated-answer-common.js +3 -2
  61. package/dist/atomic/components/generated-answer-common.js.map +1 -1
  62. package/dist/atomic/components/global/environment.js +1 -1
  63. package/dist/atomic/components/index.js.map +1 -1
  64. package/dist/atomic/components/insight-layout.js +1 -1
  65. package/dist/atomic/components/insight-layout.js.map +1 -1
  66. package/dist/atomic/components/{sections2.js → item-layout-sections.js} +1 -1
  67. package/dist/atomic/components/item-layout-sections.js.map +1 -0
  68. package/dist/atomic/components/result-template-common.js +1 -1
  69. package/dist/atomic/components/result-template-common.js.map +1 -1
  70. package/dist/atomic/components/slot-utils.js +23 -6
  71. package/dist/atomic/components/slot-utils.js.map +1 -1
  72. package/dist/atomic/components/utils/compare-utils.js +49 -0
  73. package/dist/atomic/components/utils/slot-utils.js +22 -5
  74. package/dist/atomic/{p-06349e36.entry.js → p-01511388.entry.js} +2 -2
  75. package/dist/atomic/p-01511388.entry.js.map +1 -0
  76. package/dist/atomic/{p-2caa1859.js → p-0e62bdd6.js} +2 -2
  77. package/dist/atomic/p-0e62bdd6.js.map +1 -0
  78. package/dist/atomic/{p-60800b2f.entry.js → p-0ed76e65.entry.js} +2 -2
  79. package/dist/atomic/{p-5f706e3d.entry.js → p-170c7da6.entry.js} +2 -2
  80. package/dist/atomic/p-1891bbcf.js +2 -0
  81. package/dist/atomic/p-1891bbcf.js.map +1 -0
  82. package/dist/atomic/{p-3857d6a3.entry.js → p-1bbaf206.entry.js} +2 -2
  83. package/dist/atomic/{p-4723ffa5.entry.js → p-20b33c18.entry.js} +2 -2
  84. package/dist/atomic/{p-6d52fad7.js → p-20cbcfb9.js} +2 -2
  85. package/dist/atomic/p-20cbcfb9.js.map +1 -0
  86. package/dist/atomic/{p-7709fba4.js → p-2250f505.js} +2 -2
  87. package/dist/atomic/p-2250f505.js.map +1 -0
  88. package/dist/atomic/{p-0aec5665.entry.js → p-2e4628bb.entry.js} +2 -2
  89. package/dist/atomic/p-2e4628bb.entry.js.map +1 -0
  90. package/dist/atomic/{p-16f6c1f3.entry.js → p-2fb49fe8.entry.js} +2 -2
  91. package/dist/atomic/{p-13391e75.entry.js → p-3549a469.entry.js} +2 -2
  92. package/dist/atomic/{p-bd3542d2.entry.js → p-36112c34.entry.js} +2 -2
  93. package/dist/atomic/p-36112c34.entry.js.map +1 -0
  94. package/dist/atomic/{p-d6e04719.entry.js → p-373448df.entry.js} +2 -2
  95. package/dist/atomic/{p-88af4470.entry.js → p-40c1dfcb.entry.js} +2 -2
  96. package/dist/atomic/{p-875fc491.entry.js → p-45159342.entry.js} +2 -2
  97. package/dist/atomic/{p-b2f5f6cb.entry.js → p-47ab6c9f.entry.js} +2 -2
  98. package/dist/atomic/{p-7c3c5f07.entry.js → p-4f4c9a03.entry.js} +2 -2
  99. package/dist/atomic/p-4f4c9a03.entry.js.map +1 -0
  100. package/dist/atomic/{p-20764605.entry.js → p-52d5461a.entry.js} +2 -2
  101. package/dist/atomic/{p-2925bd87.entry.js → p-59b15bd6.entry.js} +2 -2
  102. package/dist/atomic/{p-406a288c.entry.js → p-6078667f.entry.js} +2 -2
  103. package/dist/atomic/p-62e85c20.entry.js +2 -0
  104. package/dist/atomic/p-6f1bffa2.entry.js +2 -0
  105. package/dist/atomic/p-6f1bffa2.entry.js.map +1 -0
  106. package/dist/atomic/{p-93da1f4e.entry.js → p-6f34dd3a.entry.js} +2 -2
  107. package/dist/atomic/{p-0c0b8d41.entry.js → p-768b172e.entry.js} +2 -2
  108. package/dist/atomic/{p-3cbab25b.entry.js → p-7e971d15.entry.js} +2 -2
  109. package/dist/atomic/{p-a4d277c7.entry.js → p-7fd5b6ac.entry.js} +2 -2
  110. package/dist/atomic/{p-644f71e2.entry.js → p-83d3857f.entry.js} +2 -2
  111. package/dist/atomic/p-83d3857f.entry.js.map +1 -0
  112. package/dist/atomic/{p-36ab8440.js → p-87a6faea.js} +2 -2
  113. package/dist/atomic/{p-dbcef3a9.entry.js → p-87f69e53.entry.js} +2 -2
  114. package/dist/atomic/{p-6289adc7.entry.js → p-9239be63.entry.js} +2 -2
  115. package/dist/atomic/{p-f71b14b2.entry.js → p-9260dd7d.entry.js} +2 -2
  116. package/dist/atomic/{p-ed8e5c4d.entry.js → p-98dd6df1.entry.js} +2 -2
  117. package/dist/atomic/{p-86bde026.entry.js → p-9a6ec803.entry.js} +2 -2
  118. package/dist/atomic/{p-0b5efb51.entry.js → p-a1e5f767.entry.js} +2 -2
  119. package/dist/atomic/{p-1db20a4a.entry.js → p-a5f66ecd.entry.js} +2 -2
  120. package/dist/atomic/{p-7ec6dd3e.entry.js → p-af1b4924.entry.js} +2 -2
  121. package/dist/atomic/{p-e398835b.entry.js → p-b2b9e83f.entry.js} +2 -2
  122. package/dist/atomic/p-b309aadd.js +2 -0
  123. package/dist/atomic/p-b309aadd.js.map +1 -0
  124. package/dist/atomic/{p-8fdef8a3.entry.js → p-b313058c.entry.js} +2 -2
  125. package/dist/atomic/{p-0bdd730f.entry.js → p-b6ae0244.entry.js} +2 -2
  126. package/dist/atomic/{p-3a7a1a00.entry.js → p-bbfe727a.entry.js} +2 -2
  127. package/dist/atomic/{p-97ce3384.entry.js → p-be2a43f4.entry.js} +2 -2
  128. package/dist/atomic/{p-e01d5fdd.entry.js → p-c25f1437.entry.js} +2 -2
  129. package/dist/atomic/{p-577d34ba.entry.js → p-c4fb6426.entry.js} +2 -2
  130. package/dist/atomic/{p-55211c25.entry.js → p-cafa4083.entry.js} +2 -2
  131. package/dist/atomic/{p-4701feae.entry.js → p-cb3fd0f4.entry.js} +2 -2
  132. package/dist/atomic/{p-9c7dbbdf.js → p-cc2b2231.js} +1 -1
  133. package/dist/atomic/p-cc2b2231.js.map +1 -0
  134. package/dist/atomic/{p-f11c8293.entry.js → p-ce5b896e.entry.js} +2 -2
  135. package/dist/atomic/{p-a5714bc4.entry.js → p-d211a422.entry.js} +2 -2
  136. package/dist/atomic/{p-9faad55b.entry.js → p-dc128135.entry.js} +2 -2
  137. package/dist/atomic/{p-97748161.js → p-dc28ee14.js} +1 -1
  138. package/dist/{esm/sections-d787040b.js.map → atomic/p-dc28ee14.js.map} +1 -1
  139. package/dist/atomic/{p-c280cd05.js → p-e1cc5150.js} +1 -1
  140. package/dist/atomic/{p-27b8404c.js → p-e62fc40e.js} +2 -2
  141. package/dist/atomic/p-e62fc40e.js.map +1 -0
  142. package/dist/atomic/{p-d1795580.entry.js → p-e7a25b00.entry.js} +2 -2
  143. package/dist/atomic/{p-7f977dca.entry.js → p-f76b7ac3.entry.js} +2 -2
  144. package/dist/atomic/{p-e3af2029.entry.js → p-f956cadf.entry.js} +2 -2
  145. package/dist/cjs/_loader.cjs.js +1 -1
  146. package/dist/cjs/{analytics-config-66bd2ca7.js → analytics-config-f093753d.js} +2 -2
  147. package/dist/cjs/{analytics-config-66bd2ca7.js.map → analytics-config-f093753d.js.map} +1 -1
  148. package/dist/cjs/atomic-category-facet.cjs.entry.js +1 -1
  149. package/dist/cjs/atomic-facet.cjs.entry.js +1 -1
  150. package/dist/cjs/atomic-field-condition.cjs.entry.js +2 -2
  151. package/dist/cjs/atomic-folded-result-list.cjs.entry.js +2 -2
  152. package/dist/cjs/atomic-format-currency.cjs.entry.js +1 -1
  153. package/dist/cjs/atomic-format-number.cjs.entry.js +1 -1
  154. package/dist/cjs/atomic-format-unit.cjs.entry.js +1 -1
  155. package/dist/cjs/atomic-generated-answer.cjs.entry.js +2 -2
  156. package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js +2 -2
  157. package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js +2 -2
  158. package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js +2 -2
  159. package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js.map +1 -1
  160. package/dist/cjs/atomic-insight-interface.cjs.entry.js +3 -3
  161. package/dist/cjs/atomic-insight-layout.cjs.entry.js +2 -2
  162. package/dist/cjs/atomic-insight-result-children-template.cjs.entry.js +2 -2
  163. package/dist/cjs/atomic-insight-result-list.cjs.entry.js +2 -2
  164. package/dist/cjs/atomic-insight-result-template.cjs.entry.js +2 -2
  165. package/dist/cjs/atomic-insight-result.cjs.entry.js +2 -2
  166. package/dist/cjs/atomic-insight-smart-snippet-suggestions.cjs.entry.js +2 -2
  167. package/dist/cjs/atomic-insight-smart-snippet.cjs.entry.js +2 -2
  168. package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js +2 -2
  169. package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js.map +1 -1
  170. package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +2 -2
  171. package/dist/cjs/atomic-ipx-result-link.cjs.entry.js +4 -4
  172. package/dist/cjs/atomic-ipx-result-link.cjs.entry.js.map +1 -1
  173. package/dist/cjs/{sections-4b4af2f8.js → atomic-layout-section-utils-08b4fbcd.js} +1 -1
  174. package/dist/cjs/atomic-layout-section-utils-08b4fbcd.js.map +1 -0
  175. package/dist/cjs/atomic-numeric-facet.cjs.entry.js +1 -1
  176. package/dist/cjs/atomic-quickview-modal.cjs.entry.js +23 -23
  177. package/dist/cjs/atomic-quickview-modal.cjs.entry.js.map +1 -1
  178. package/dist/cjs/atomic-quickview.cjs.entry.js +1 -1
  179. package/dist/cjs/atomic-recs-interface.cjs.entry.js +1 -1
  180. package/dist/cjs/atomic-recs-list.cjs.entry.js +2 -2
  181. package/dist/cjs/atomic-recs-result-template.cjs.entry.js +2 -2
  182. package/dist/cjs/atomic-recs-result.cjs.entry.js +2 -2
  183. package/dist/cjs/atomic-refine-modal.cjs.entry.js +4 -4
  184. package/dist/cjs/atomic-refine-modal.cjs.entry.js.map +1 -1
  185. package/dist/cjs/atomic-result-children-template.cjs.entry.js +2 -2
  186. package/dist/cjs/atomic-result-children.cjs.entry.js +1 -1
  187. package/dist/cjs/atomic-result-fields-list.cjs.entry.js +1 -1
  188. package/dist/cjs/atomic-result-link.cjs.entry.js +4 -4
  189. package/dist/cjs/atomic-result-link.cjs.entry.js.map +1 -1
  190. package/dist/cjs/atomic-result-list.cjs.entry.js +3 -3
  191. package/dist/cjs/atomic-result-placeholder_8.cjs.entry.js +3 -3
  192. package/dist/cjs/atomic-result-printable-uri.cjs.entry.js +2 -2
  193. package/dist/cjs/atomic-result-template.cjs.entry.js +2 -2
  194. package/dist/cjs/atomic-result.cjs.entry.js +2 -2
  195. package/dist/cjs/atomic-search-box-query-suggestions.cjs.entry.js +76 -0
  196. package/dist/cjs/atomic-search-box-query-suggestions.cjs.entry.js.map +1 -0
  197. package/dist/cjs/atomic-search-box.cjs.entry.js +5 -5
  198. package/dist/cjs/atomic-search-box.cjs.entry.js.map +1 -1
  199. package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js +2 -2
  200. package/dist/cjs/atomic-smart-snippet-suggestions.cjs.entry.js +2 -2
  201. package/dist/cjs/atomic-smart-snippet.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/{attributes-slot-afccc1fd.js → attributes-slot-4e7d7a75.js} +4 -9
  207. package/dist/cjs/attributes-slot-4e7d7a75.js.map +1 -0
  208. package/dist/cjs/clock-7aeb19d0.js +7 -0
  209. package/dist/cjs/clock-7aeb19d0.js.map +1 -0
  210. package/dist/cjs/{display-options-14f05862.js → display-options-69531e8d.js} +4 -4
  211. package/dist/cjs/display-options-69531e8d.js.map +1 -0
  212. package/dist/cjs/{generated-answer-common-57443e50.js → generated-answer-common-3c400311.js} +4 -3
  213. package/dist/cjs/generated-answer-common-3c400311.js.map +1 -0
  214. package/dist/cjs/index-757bc886.js +2 -6
  215. package/dist/cjs/{insight-layout-355a94dd.js → insight-layout-b6ff92fd.js} +11 -11
  216. package/dist/cjs/insight-layout-b6ff92fd.js.map +1 -0
  217. package/dist/cjs/{sections-fbb93b53.js → item-layout-sections-b09ba4b3.js} +1 -1
  218. package/dist/cjs/item-layout-sections-b09ba4b3.js.map +1 -0
  219. package/dist/cjs/{result-template-common-88359dad.js → result-template-common-84bd4057.js} +3 -3
  220. package/dist/cjs/result-template-common-84bd4057.js.map +1 -0
  221. package/dist/cjs/slot-utils-a30cb814.js +40 -0
  222. package/dist/cjs/slot-utils-a30cb814.js.map +1 -0
  223. package/dist/cjs/version.cjs.js +2 -2
  224. package/dist/esm/_loader.js +1 -1
  225. package/dist/esm/{analytics-config-d050ec34.js → analytics-config-3ce26b8b.js} +2 -2
  226. package/dist/esm/{analytics-config-d050ec34.js.map → analytics-config-3ce26b8b.js.map} +1 -1
  227. package/dist/esm/atomic-category-facet.entry.js +1 -1
  228. package/dist/esm/atomic-facet.entry.js +1 -1
  229. package/dist/esm/atomic-field-condition.entry.js +2 -2
  230. package/dist/esm/atomic-folded-result-list.entry.js +2 -2
  231. package/dist/esm/atomic-format-currency.entry.js +1 -1
  232. package/dist/esm/atomic-format-number.entry.js +1 -1
  233. package/dist/esm/atomic-format-unit.entry.js +1 -1
  234. package/dist/esm/atomic-generated-answer.entry.js +2 -2
  235. package/dist/esm/atomic-insight-folded-result-list.entry.js +2 -2
  236. package/dist/esm/atomic-insight-generated-answer.entry.js +2 -2
  237. package/dist/esm/atomic-insight-history-toggle.entry.js +2 -2
  238. package/dist/esm/atomic-insight-history-toggle.entry.js.map +1 -1
  239. package/dist/esm/atomic-insight-interface.entry.js +3 -3
  240. package/dist/esm/atomic-insight-layout.entry.js +2 -2
  241. package/dist/esm/atomic-insight-result-children-template.entry.js +2 -2
  242. package/dist/esm/atomic-insight-result-list.entry.js +2 -2
  243. package/dist/esm/atomic-insight-result-template.entry.js +2 -2
  244. package/dist/esm/atomic-insight-result.entry.js +2 -2
  245. package/dist/esm/atomic-insight-smart-snippet-suggestions.entry.js +2 -2
  246. package/dist/esm/atomic-insight-smart-snippet.entry.js +2 -2
  247. package/dist/esm/atomic-insight-user-actions-toggle.entry.js +2 -2
  248. package/dist/esm/atomic-insight-user-actions-toggle.entry.js.map +1 -1
  249. package/dist/esm/atomic-ipx-recs-list.entry.js +2 -2
  250. package/dist/esm/atomic-ipx-result-link.entry.js +4 -4
  251. package/dist/esm/atomic-ipx-result-link.entry.js.map +1 -1
  252. package/dist/{atomic/components/sections.js → esm/atomic-layout-section-utils-c8ca7445.js} +1 -1
  253. package/dist/esm/atomic-layout-section-utils-c8ca7445.js.map +1 -0
  254. package/dist/esm/atomic-numeric-facet.entry.js +1 -1
  255. package/dist/esm/atomic-quickview-modal.entry.js +23 -23
  256. package/dist/esm/atomic-quickview-modal.entry.js.map +1 -1
  257. package/dist/esm/atomic-quickview.entry.js +1 -1
  258. package/dist/esm/atomic-recs-interface.entry.js +1 -1
  259. package/dist/esm/atomic-recs-list.entry.js +2 -2
  260. package/dist/esm/atomic-recs-result-template.entry.js +2 -2
  261. package/dist/esm/atomic-recs-result.entry.js +2 -2
  262. package/dist/esm/atomic-refine-modal.entry.js +2 -2
  263. package/dist/esm/atomic-refine-modal.entry.js.map +1 -1
  264. package/dist/esm/atomic-result-children-template.entry.js +2 -2
  265. package/dist/esm/atomic-result-children.entry.js +1 -1
  266. package/dist/esm/atomic-result-fields-list.entry.js +1 -1
  267. package/dist/esm/atomic-result-link.entry.js +4 -4
  268. package/dist/esm/atomic-result-link.entry.js.map +1 -1
  269. package/dist/esm/atomic-result-list.entry.js +3 -3
  270. package/dist/esm/atomic-result-placeholder_8.entry.js +3 -3
  271. package/dist/esm/atomic-result-printable-uri.entry.js +2 -2
  272. package/dist/esm/atomic-result-template.entry.js +2 -2
  273. package/dist/esm/atomic-result.entry.js +2 -2
  274. package/dist/esm/atomic-search-box-query-suggestions.entry.js +72 -0
  275. package/dist/esm/atomic-search-box-query-suggestions.entry.js.map +1 -0
  276. package/dist/esm/atomic-search-box.entry.js +5 -5
  277. package/dist/esm/atomic-search-box.entry.js.map +1 -1
  278. package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js +2 -2
  279. package/dist/esm/atomic-smart-snippet-suggestions.entry.js +2 -2
  280. package/dist/esm/atomic-smart-snippet.entry.js +2 -2
  281. package/dist/esm/atomic-sort-dropdown.entry.js +2 -2
  282. package/dist/esm/atomic-sort-expression.entry.js +1 -1
  283. package/dist/esm/atomic-tab-manager.entry.js +1 -1
  284. package/dist/esm/atomic.js +1 -1
  285. package/dist/esm/{attributes-slot-7bf61dda.js → attributes-slot-cb60f29b.js} +4 -9
  286. package/dist/esm/attributes-slot-cb60f29b.js.map +1 -0
  287. package/dist/esm/clock-b1f5d7f7.js +5 -0
  288. package/dist/esm/clock-b1f5d7f7.js.map +1 -0
  289. package/dist/esm/{display-options-c16840c6.js → display-options-1199eed5.js} +2 -2
  290. package/dist/esm/display-options-1199eed5.js.map +1 -0
  291. package/dist/esm/{generated-answer-common-8b06a33d.js → generated-answer-common-9d0c5ada.js} +4 -3
  292. package/dist/esm/generated-answer-common-9d0c5ada.js.map +1 -0
  293. package/dist/esm/index-3f35faca.js +2 -6
  294. package/dist/esm/{insight-layout-776b87f2.js → insight-layout-a1e4b795.js} +2 -2
  295. package/dist/esm/insight-layout-a1e4b795.js.map +1 -0
  296. package/dist/esm/{sections-d787040b.js → item-layout-sections-8afb5049.js} +1 -1
  297. package/dist/esm/item-layout-sections-8afb5049.js.map +1 -0
  298. package/dist/esm/{result-template-common-ac9fecab.js → result-template-common-995b94f8.js} +2 -2
  299. package/dist/esm/result-template-common-995b94f8.js.map +1 -0
  300. package/dist/esm/slot-utils-dcf4fc27.js +37 -0
  301. package/dist/esm/slot-utils-dcf4fc27.js.map +1 -0
  302. package/dist/esm/version.js +2 -2
  303. package/dist/types/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.d.ts +2 -3
  304. package/dist/types/components/commerce/atomic-product/atomic-product.d.ts +4 -16
  305. package/dist/types/components/common/atomic-layout-section/atomic-layout-section.d.ts +1 -1
  306. package/dist/types/components/common/facets/facet-search/facet-search-input-guard.d.ts +1 -1
  307. package/dist/types/components/common/layout/custom-render-controller.d.ts +25 -0
  308. package/dist/types/components/common/layout/item-layout-controller.d.ts +47 -0
  309. package/dist/types/components/common/no-items/guard.d.ts +1 -1
  310. package/dist/types/components/common/refine-modal/guard.d.ts +1 -1
  311. package/dist/types/components/common/sort/sort-guard.d.ts +1 -1
  312. package/dist/types/components/common/validate-props-controller/validate-props-controller.d.ts +32 -0
  313. package/dist/types/components/search/atomic-relevance-inspector/atomic-relevance-inspector.d.ts +18 -8
  314. package/dist/types/components/search/atomic-search-box-recent-queries/atomic-search-box-recent-queries.d.ts +45 -0
  315. package/dist/types/components/search/atomic-search-interface/atomic-search-interface.d.ts +6 -3
  316. package/dist/types/components/search/index.d.ts +2 -0
  317. package/dist/types/components.d.ts +0 -102
  318. package/dist/types/directives/hierarchical-path.d.ts +1 -1
  319. package/dist/types/utils/compare-utils.d.ts +9 -0
  320. package/dist/types/utils/slot-utils.d.ts +2 -2
  321. package/docs/atomic-docs.json +1 -185
  322. package/package.json +12 -9
  323. package/dist/atomic/components/atomic-relevance-inspector.d.ts +0 -11
  324. package/dist/atomic/components/atomic-relevance-inspector.js +0 -53
  325. package/dist/atomic/components/atomic-relevance-inspector.js.map +0 -1
  326. package/dist/atomic/components/atomic-search-box-recent-queries.d.ts +0 -11
  327. package/dist/atomic/components/atomic-search-box-recent-queries.js +0 -8
  328. package/dist/atomic/components/atomic-search-box-recent-queries.js.map +0 -1
  329. package/dist/atomic/components/atomic-search-box-recent-queries2.js +0 -183
  330. package/dist/atomic/components/atomic-search-box-recent-queries2.js.map +0 -1
  331. package/dist/atomic/components/sections.js.map +0 -1
  332. package/dist/atomic/components/sections2.js.map +0 -1
  333. package/dist/atomic/p-06349e36.entry.js.map +0 -1
  334. package/dist/atomic/p-0aec5665.entry.js.map +0 -1
  335. package/dist/atomic/p-250f34d4.entry.js +0 -2
  336. package/dist/atomic/p-27b8404c.js.map +0 -1
  337. package/dist/atomic/p-2caa1859.js.map +0 -1
  338. package/dist/atomic/p-644f71e2.entry.js.map +0 -1
  339. package/dist/atomic/p-6d52fad7.js.map +0 -1
  340. package/dist/atomic/p-7709fba4.js.map +0 -1
  341. package/dist/atomic/p-7c3c5f07.entry.js.map +0 -1
  342. package/dist/atomic/p-97748161.js.map +0 -1
  343. package/dist/atomic/p-9c7dbbdf.js.map +0 -1
  344. package/dist/atomic/p-a62f2bf9.js +0 -2
  345. package/dist/atomic/p-a62f2bf9.js.map +0 -1
  346. package/dist/atomic/p-bd3542d2.entry.js.map +0 -1
  347. package/dist/atomic/p-de687bed.entry.js +0 -2
  348. package/dist/atomic/p-de687bed.entry.js.map +0 -1
  349. package/dist/atomic/p-df4397ab.entry.js +0 -2
  350. package/dist/atomic/p-df4397ab.entry.js.map +0 -1
  351. package/dist/atomic/p-e7ca5aea.js +0 -2
  352. package/dist/atomic/p-e7ca5aea.js.map +0 -1
  353. package/dist/cjs/atomic-relevance-inspector.cjs.entry.js +0 -38
  354. package/dist/cjs/atomic-relevance-inspector.cjs.entry.js.map +0 -1
  355. package/dist/cjs/atomic-search-box-query-suggestions_2.cjs.entry.js +0 -234
  356. package/dist/cjs/atomic-search-box-query-suggestions_2.cjs.entry.js.map +0 -1
  357. package/dist/cjs/attributes-slot-afccc1fd.js.map +0 -1
  358. package/dist/cjs/clock-f03ff827.js +0 -7
  359. package/dist/cjs/clock-f03ff827.js.map +0 -1
  360. package/dist/cjs/display-options-14f05862.js.map +0 -1
  361. package/dist/cjs/generated-answer-common-57443e50.js.map +0 -1
  362. package/dist/cjs/insight-layout-355a94dd.js.map +0 -1
  363. package/dist/cjs/result-template-common-88359dad.js.map +0 -1
  364. package/dist/cjs/sections-4b4af2f8.js.map +0 -1
  365. package/dist/cjs/sections-fbb93b53.js.map +0 -1
  366. package/dist/cjs/slot-utils-086dacac.js +0 -23
  367. package/dist/cjs/slot-utils-086dacac.js.map +0 -1
  368. package/dist/esm/atomic-relevance-inspector.entry.js +0 -34
  369. package/dist/esm/atomic-relevance-inspector.entry.js.map +0 -1
  370. package/dist/esm/atomic-search-box-query-suggestions_2.entry.js +0 -229
  371. package/dist/esm/atomic-search-box-query-suggestions_2.entry.js.map +0 -1
  372. package/dist/esm/attributes-slot-7bf61dda.js.map +0 -1
  373. package/dist/esm/clock-add3e9a5.js +0 -5
  374. package/dist/esm/clock-add3e9a5.js.map +0 -1
  375. package/dist/esm/display-options-c16840c6.js.map +0 -1
  376. package/dist/esm/generated-answer-common-8b06a33d.js.map +0 -1
  377. package/dist/esm/insight-layout-776b87f2.js.map +0 -1
  378. package/dist/esm/result-template-common-ac9fecab.js.map +0 -1
  379. package/dist/esm/sections-ae00b53a.js.map +0 -1
  380. package/dist/esm/slot-utils-3a3874a2.js +0 -20
  381. package/dist/esm/slot-utils-3a3874a2.js.map +0 -1
  382. package/dist/types/components/search/search-box-suggestions/atomic-search-box-recent-queries/atomic-search-box-recent-queries.d.ts +0 -37
  383. /package/dist/atomic/components/components/common/atomic-layout-section/{sections.js → atomic-layout-section-utils.js} +0 -0
  384. /package/dist/atomic/{p-60800b2f.entry.js.map → p-0ed76e65.entry.js.map} +0 -0
  385. /package/dist/atomic/{p-5f706e3d.entry.js.map → p-170c7da6.entry.js.map} +0 -0
  386. /package/dist/atomic/{p-3857d6a3.entry.js.map → p-1bbaf206.entry.js.map} +0 -0
  387. /package/dist/atomic/{p-4723ffa5.entry.js.map → p-20b33c18.entry.js.map} +0 -0
  388. /package/dist/atomic/{p-16f6c1f3.entry.js.map → p-2fb49fe8.entry.js.map} +0 -0
  389. /package/dist/atomic/{p-13391e75.entry.js.map → p-3549a469.entry.js.map} +0 -0
  390. /package/dist/atomic/{p-d6e04719.entry.js.map → p-373448df.entry.js.map} +0 -0
  391. /package/dist/atomic/{p-88af4470.entry.js.map → p-40c1dfcb.entry.js.map} +0 -0
  392. /package/dist/atomic/{p-875fc491.entry.js.map → p-45159342.entry.js.map} +0 -0
  393. /package/dist/atomic/{p-b2f5f6cb.entry.js.map → p-47ab6c9f.entry.js.map} +0 -0
  394. /package/dist/atomic/{p-20764605.entry.js.map → p-52d5461a.entry.js.map} +0 -0
  395. /package/dist/atomic/{p-2925bd87.entry.js.map → p-59b15bd6.entry.js.map} +0 -0
  396. /package/dist/atomic/{p-406a288c.entry.js.map → p-6078667f.entry.js.map} +0 -0
  397. /package/dist/atomic/{p-250f34d4.entry.js.map → p-62e85c20.entry.js.map} +0 -0
  398. /package/dist/atomic/{p-93da1f4e.entry.js.map → p-6f34dd3a.entry.js.map} +0 -0
  399. /package/dist/atomic/{p-0c0b8d41.entry.js.map → p-768b172e.entry.js.map} +0 -0
  400. /package/dist/atomic/{p-3cbab25b.entry.js.map → p-7e971d15.entry.js.map} +0 -0
  401. /package/dist/atomic/{p-a4d277c7.entry.js.map → p-7fd5b6ac.entry.js.map} +0 -0
  402. /package/dist/atomic/{p-36ab8440.js.map → p-87a6faea.js.map} +0 -0
  403. /package/dist/atomic/{p-dbcef3a9.entry.js.map → p-87f69e53.entry.js.map} +0 -0
  404. /package/dist/atomic/{p-6289adc7.entry.js.map → p-9239be63.entry.js.map} +0 -0
  405. /package/dist/atomic/{p-f71b14b2.entry.js.map → p-9260dd7d.entry.js.map} +0 -0
  406. /package/dist/atomic/{p-ed8e5c4d.entry.js.map → p-98dd6df1.entry.js.map} +0 -0
  407. /package/dist/atomic/{p-86bde026.entry.js.map → p-9a6ec803.entry.js.map} +0 -0
  408. /package/dist/atomic/{p-0b5efb51.entry.js.map → p-a1e5f767.entry.js.map} +0 -0
  409. /package/dist/atomic/{p-1db20a4a.entry.js.map → p-a5f66ecd.entry.js.map} +0 -0
  410. /package/dist/atomic/{p-7ec6dd3e.entry.js.map → p-af1b4924.entry.js.map} +0 -0
  411. /package/dist/atomic/{p-e398835b.entry.js.map → p-b2b9e83f.entry.js.map} +0 -0
  412. /package/dist/atomic/{p-8fdef8a3.entry.js.map → p-b313058c.entry.js.map} +0 -0
  413. /package/dist/atomic/{p-0bdd730f.entry.js.map → p-b6ae0244.entry.js.map} +0 -0
  414. /package/dist/atomic/{p-3a7a1a00.entry.js.map → p-bbfe727a.entry.js.map} +0 -0
  415. /package/dist/atomic/{p-97ce3384.entry.js.map → p-be2a43f4.entry.js.map} +0 -0
  416. /package/dist/atomic/{p-e01d5fdd.entry.js.map → p-c25f1437.entry.js.map} +0 -0
  417. /package/dist/atomic/{p-577d34ba.entry.js.map → p-c4fb6426.entry.js.map} +0 -0
  418. /package/dist/atomic/{p-55211c25.entry.js.map → p-cafa4083.entry.js.map} +0 -0
  419. /package/dist/atomic/{p-4701feae.entry.js.map → p-cb3fd0f4.entry.js.map} +0 -0
  420. /package/dist/atomic/{p-f11c8293.entry.js.map → p-ce5b896e.entry.js.map} +0 -0
  421. /package/dist/atomic/{p-a5714bc4.entry.js.map → p-d211a422.entry.js.map} +0 -0
  422. /package/dist/atomic/{p-9faad55b.entry.js.map → p-dc128135.entry.js.map} +0 -0
  423. /package/dist/atomic/{p-c280cd05.js.map → p-e1cc5150.js.map} +0 -0
  424. /package/dist/atomic/{p-d1795580.entry.js.map → p-e7a25b00.entry.js.map} +0 -0
  425. /package/dist/atomic/{p-7f977dca.entry.js.map → p-f76b7ac3.entry.js.map} +0 -0
  426. /package/dist/atomic/{p-e3af2029.entry.js.map → p-f956cadf.entry.js.map} +0 -0
  427. /package/dist/types/components/common/atomic-layout-section/{sections.d.ts → atomic-layout-section-utils.d.ts} +0 -0
  428. /package/dist/types/components/common/layout/{sections.d.ts → item-layout-sections.d.ts} +0 -0
@@ -324,10 +324,6 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
324
324
  return import(
325
325
  /* webpackMode: "lazy" */
326
326
  './atomic-refine-toggle.entry.js').then(processMod, consoleError);
327
- case 'atomic-relevance-inspector':
328
- return import(
329
- /* webpackMode: "lazy" */
330
- './atomic-relevance-inspector.entry.js').then(processMod, consoleError);
331
327
  case 'atomic-result-badge':
332
328
  return import(
333
329
  /* webpackMode: "lazy" */
@@ -492,10 +488,10 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
492
488
  return import(
493
489
  /* webpackMode: "lazy" */
494
490
  './atomic-refine-modal.entry.js').then(processMod, consoleError);
495
- case 'atomic-search-box-query-suggestions_2':
491
+ case 'atomic-search-box-query-suggestions':
496
492
  return import(
497
493
  /* webpackMode: "lazy" */
498
- './atomic-search-box-query-suggestions_2.entry.js').then(processMod, consoleError);
494
+ './atomic-search-box-query-suggestions.entry.js').then(processMod, consoleError);
499
495
  case 'atomic-smart-snippet-feedback-modal':
500
496
  return import(
501
497
  /* webpackMode: "lazy" */
@@ -1,4 +1,4 @@
1
- import { f as findSection, s as sectionSelector } from './sections-ae00b53a.js';
1
+ import { f as findSection, s as sectionSelector } from './atomic-layout-section-utils-c8ca7445.js';
2
2
 
3
3
  const tabsSelector = 'atomic-insight-tabs';
4
4
  const refineModalSelector = 'atomic-insight-refine-modal';
@@ -84,4 +84,4 @@ function buildInsightLayout(element, widget) {
84
84
 
85
85
  export { buildInsightLayout as b, makeDesktopQuery as m };
86
86
 
87
- //# sourceMappingURL=insight-layout-776b87f2.js.map
87
+ //# sourceMappingURL=insight-layout-a1e4b795.js.map
@@ -0,0 +1 @@
1
+ {"file":"insight-layout-a1e4b795.js","mappings":";;AAKA,MAAM,YAAY,GAAG,qBAAqB,CAAC;AAC3C,MAAM,mBAAmB,GAAG,6BAA6B,CAAC;AAC1D,MAAM,iBAAiB,GAAG,2BAA2B,CAAC;AACtD,MAAM,eAAe,GAAG;IACtB,8BAA8B;IAC9B,4BAA4B;IAC5B,+BAA+B;CAChC,CAAC;AACF,MAAM,qBAAqB,GAAG;IAC5B,0CAA0C;IAC1C,8BAA8B;CAC/B,CAAC;AACF,MAAM,uBAAuB,GAAG,iCAAiC,CAAC;SAElD,gBAAgB,CAAC,gBAAwB;IACvD,OAAO,+BAA+B,gBAAgB,GAAG,CAAC;AAC5D,CAAC;SAEe,kBAAkB,CAAC,OAAoB,EAAE,MAAe;IACtE,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;IACtB,MAAM,cAAc,GAAG,yBAAyB,EAAE,EAAE,CAAC;IAErD,MAAM,OAAO,GAAG,OAAO,CACrB,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,aAAa,CAAC,YAAY,CAAC,CAC5D,CAAC;IAEF,MAAM,cAAc,GAAG,MAAM;UACzB;IACF,cAAc;;;;;;IAMd,cAAc,IAAI,mBAAmB;;IAErC;UACE,EAAE,CAAC;IAEP,MAAM,MAAM,GAAG,GAAG,eAAe,CAAC,QAAQ,CAAC;;;;;;;;;;;QAWrC,CAAC,OAAO,GAAG,yBAAyB,GAAG,EAAE;;;MAG3C,eAAe,CAAC,QAAQ,CAAC,IAAI,iBAAiB;;;;;MAK9C,eAAe,CAAC,GAAG,CACnB,CAAC,cAAc,KAAK,GAAG,eAAe,CAAC,QAAQ,CAAC,IAAI,cAAc;;MAElE,CACD;;MAEC,eAAe,CAAC,QAAQ,CAAC,IAAI,YAAY;;;KAG1C,CAAC;IAEJ,MAAM,MAAM,GAAG,GAAG,eAAe,CAAC,QAAQ,CAAC;;;KAGxC,CAAC;IAEJ,MAAM,OAAO,GAAG;MACZ,eAAe,CAAC,SAAS,CAAC;;;;MAI1B,eAAe,CAAC,SAAS,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC;;;;MAI7D,eAAe,CAAC,SAAS,CAAC,IAAI,uBAAuB;;;;KAItD,CAAC;IAEJ,OAAO,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;SAC7C,MAAM,CAAC,CAAC,WAAW,KAAK,WAAW,KAAK,EAAE,CAAC;SAC3C,IAAI,CAAC,MAAM,CAAC,CAAC;AAClB;;;;","names":[],"sources":["src/components/insight/atomic-insight-layout/insight-layout.ts"],"sourcesContent":["import {\n findSection,\n sectionSelector,\n} from '../../common/atomic-layout-section/atomic-layout-section-utils';\n\nconst tabsSelector = 'atomic-insight-tabs';\nconst refineModalSelector = 'atomic-insight-refine-modal';\nconst searchBoxSelector = 'atomic-insight-search-box';\nconst toggleSelectors = [\n 'atomic-insight-refine-toggle',\n 'atomic-insight-edit-toggle',\n 'atomic-insight-history-toggle',\n];\nconst smartSnippetSelectors = [\n 'atomic-insight-smart-snippet-suggestions',\n 'atomic-insight-smart-snippet',\n];\nconst generatedAnswerSelector = 'atomic-insight-generated-answer';\n\nexport function makeDesktopQuery(mobileBreakpoint: string) {\n return `only screen and (min-width: ${mobileBreakpoint})`;\n}\n\nexport function buildInsightLayout(element: HTMLElement, widget: boolean) {\n const id = element.id;\n const layoutSelector = `atomic-insight-layout#${id}`;\n\n const hasTabs = Boolean(\n findSection(element, 'search')?.querySelector(tabsSelector)\n );\n\n const interfaceStyle = widget\n ? `\n ${layoutSelector} {\n display: grid;\n grid-template-rows: auto auto 8fr 1fr;\n max-height: 100%;\n box-sizing: border-box;\n }\n ${layoutSelector} ${refineModalSelector} {\n grid-row-start: 5;\n }`\n : '';\n\n const search = `${sectionSelector('search')} {\n width: 100%;\n display: flex;\n flex-wrap: wrap;\n grid-gap: 0.5rem;\n background: var(--atomic-neutral-light);\n padding-top: 1.5rem;\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n box-sizing: border-box;\n min-width: 0;\n ${!hasTabs ? 'padding-bottom: 1.5rem;' : ''}\n }\n\n ${sectionSelector('search')} ${searchBoxSelector} {\n flex-grow: 1;\n height: 2.6rem;\n }\n\n ${toggleSelectors.map(\n (toggleSelector) => `${sectionSelector('search')} ${toggleSelector} {\n flex-shrink: 0;\n }`\n )}\n\n ${sectionSelector('search')} ${tabsSelector} {\n width: 100%;\n }\n `;\n\n const facets = `${sectionSelector('facets')} {\n display: none;\n }\n `;\n\n const results = `\n ${sectionSelector('results')} {\n overflow: auto;\n }\n\n ${sectionSelector('results')} ${smartSnippetSelectors.join(',')} {\n padding: 1.5rem 1.5rem 0px;\n }\n\n ${sectionSelector('results')} ${generatedAnswerSelector} {\n margin-left: 1.5rem;\n margin-right: 1.5rem;\n }\n `;\n\n return [interfaceStyle, search, facets, results]\n .filter((declaration) => declaration !== '')\n .join('\\n\\n');\n}\n"],"version":3}
@@ -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}
@@ -0,0 +1,37 @@
1
+ function hasLightDOMSlotContent(element) {
2
+ return ('slotContent' in element &&
3
+ typeof element.slotContent === 'object');
4
+ }
5
+ function getNamedSlotFromHost(host, slotName) {
6
+ if (hasLightDOMSlotContent(host)) {
7
+ const targetLightDomSlotContent = host.slotContent[slotName];
8
+ if (!targetLightDomSlotContent) {
9
+ return;
10
+ }
11
+ return targetLightDomSlotContent.find((node) => node instanceof Element);
12
+ }
13
+ const children = Array.from(host.children);
14
+ const targetSlot = children.filter((child) => child.getAttribute('slot') === slotName);
15
+ if (!targetSlot.length) {
16
+ return;
17
+ }
18
+ if (targetSlot.length > 1) {
19
+ console.warn(`Element should only have 1 slot named "${slotName}".`, host);
20
+ }
21
+ return targetSlot[0];
22
+ }
23
+ function getDefaultSlotFromHost(host) {
24
+ const children = Array.from(host.children);
25
+ const defaultSlot = children.filter((child) => !child.hasAttribute('slot') || child.getAttribute('slot') === '');
26
+ if (!defaultSlot.length) {
27
+ return;
28
+ }
29
+ if (defaultSlot.length > 1) {
30
+ console.warn('Element should only have 1 default slot.', host);
31
+ }
32
+ return defaultSlot[0];
33
+ }
34
+
35
+ export { getDefaultSlotFromHost as a, getNamedSlotFromHost as g };
36
+
37
+ //# sourceMappingURL=slot-utils-dcf4fc27.js.map
@@ -0,0 +1 @@
1
+ {"file":"slot-utils-dcf4fc27.js","mappings":"AAEA,SAAS,sBAAsB,CAC7B,OAAoB;IAEpB,QACE,aAAa,IAAI,OAAO;QACxB,OAAQ,OAA2C,CAAC,WAAW,KAAK,QAAQ,EAC5E;AACJ,CAAC;SAEe,oBAAoB,CAAC,IAAiB,EAAE,QAAgB;IACtE,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE;QAChC,MAAM,yBAAyB,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE7D,IAAI,CAAC,yBAAyB,EAAE;YAC9B,OAAO;SACR;QAED,OAAO,yBAAyB,CAAC,IAAI,CACnC,CAAC,IAAe,KAAK,IAAI,YAAY,OAAO,CAC7C,CAAC;KACH;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAChC,CAAC,KAAK,KAAK,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,QAAQ,CACnD,CAAC;IAEF,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;QACtB,OAAO;KACR;IAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;QACzB,OAAO,CAAC,IAAI,CAAC,0CAA0C,QAAQ,IAAI,EAAE,IAAI,CAAC,CAAC;KAC5E;IAED,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;AACvB,CAAC;SAEe,sBAAsB,CAAC,IAAiB;IACtD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CACjC,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,CAC5E,CAAC;IAEF,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE;QACvB,OAAO;KACR;IAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;QAC1B,OAAO,CAAC,IAAI,CAAC,0CAA0C,EAAE,IAAI,CAAC,CAAC;KAChE;IAED,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;AACxB;;;;","names":[],"sources":["src/utils/slot-utils.ts"],"sourcesContent":["import type {LightDOMWithSlots} from '@/src/mixins/slots-for-no-shadow-dom-mixin';\n\nfunction hasLightDOMSlotContent(\n element: HTMLElement\n): element is HTMLElement & LightDOMWithSlots {\n return (\n 'slotContent' in element &&\n typeof (element as HTMLElement & LightDOMWithSlots).slotContent === 'object'\n );\n}\n\nexport function getNamedSlotFromHost(host: HTMLElement, slotName: string) {\n if (hasLightDOMSlotContent(host)) {\n const targetLightDomSlotContent = host.slotContent[slotName];\n\n if (!targetLightDomSlotContent) {\n return;\n }\n\n return targetLightDomSlotContent.find(\n (node: ChildNode) => node instanceof Element\n );\n }\n\n const children = Array.from(host.children);\n const targetSlot = children.filter(\n (child) => child.getAttribute('slot') === slotName\n );\n\n if (!targetSlot.length) {\n return;\n }\n\n if (targetSlot.length > 1) {\n console.warn(`Element should only have 1 slot named \"${slotName}\".`, host);\n }\n\n return targetSlot[0];\n}\n\nexport function getDefaultSlotFromHost(host: HTMLElement) {\n const children = Array.from(host.children);\n const defaultSlot = children.filter(\n (child) => !child.hasAttribute('slot') || child.getAttribute('slot') === ''\n );\n\n if (!defaultSlot.length) {\n return;\n }\n\n if (defaultSlot.length > 1) {\n console.warn('Element should only have 1 default slot.', host);\n }\n\n return defaultSlot[0];\n}\n"],"version":3}
@@ -1,2 +1,2 @@
1
- export const headlessVersion = '3.31.1';
2
- export const atomicVersion = '3.34.0-pre.4a147a2f19';
1
+ export const headlessVersion = '3.31.2-pre.4aac7c5056';
2
+ export const atomicVersion = '3.34.0-pre.4aac7c5056';
@@ -1,7 +1,7 @@
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
5
  /**
6
6
  * The `atomic-commerce-breadbox` component creates breadcrumbs that display a summary of the currently active facet values.
7
7
  *
@@ -51,10 +51,9 @@ export declare class AtomicCommerceBreadbox extends LitElement implements Initia
51
51
  * @defaultValue `3`
52
52
  */
53
53
  pathLimit: number;
54
+ constructor();
54
55
  initialize(): void;
55
- willUpdate(changedProperties: Map<string, unknown>): void;
56
56
  updated(): void;
57
- private validateProps;
58
57
  disconnectedCallback(): void;
59
58
  private get breadcrumbs();
60
59
  private get showMoreButton();
@@ -1,20 +1,19 @@
1
1
  import type { InteractiveProduct, Product } from '@coveo/headless/commerce';
2
2
  import { type CSSResultGroup, LitElement } from 'lit';
3
+ import type { CommerceStore } from "../atomic-commerce-interface/store";
4
+ import type { CommerceRecommendationStore } from "../atomic-commerce-recommendation-interface/store";
3
5
  import type { DisplayConfig } from "../../common/item-list/context/item-display-config-context-controller";
4
6
  import { type ItemRenderingFunction } from "../../common/item-list/item-list-common";
5
- import { type ItemDisplayDensity, type ItemDisplayImageSize, type ItemDisplayLayout } from "../../common/layout/display-options";
7
+ import type { ItemDisplayDensity, ItemDisplayImageSize, ItemDisplayLayout } from "../../common/layout/display-options";
6
8
  import type { InteractiveProductContextEvent, ProductContextEvent } from "../../../decorators/commerce/product-template-decorators";
7
- import type { CommerceStore } from '../atomic-commerce-interface/store';
8
- import type { CommerceRecommendationStore } from '../atomic-commerce-recommendation-interface/store';
9
9
  declare const AtomicProduct_base: typeof LitElement;
10
10
  /**
11
11
  * The `atomic-product` component is used internally by the `atomic-commerce-product-list` and `atomic-commerce-recommendation-list` components.
12
12
  */
13
13
  export declare class AtomicProduct extends AtomicProduct_base {
14
- private layout;
15
14
  private productRootRef?;
16
15
  private linkContainerRef?;
17
- private executedRenderingFunctionOnce;
16
+ private itemLayoutController;
18
17
  static styles: CSSResultGroup;
19
18
  /**
20
19
  * Whether `atomic-product-link` components nested in the `atomic-product` should stop click event propagation.
@@ -84,25 +83,14 @@ export declare class AtomicProduct extends AtomicProduct_base {
84
83
  clickLinkContainer: () => void;
85
84
  connectedCallback(): Promise<void>;
86
85
  disconnectedCallback(): void;
87
- private get isCustomRenderFunctionMode();
88
86
  private getContentHTML;
89
87
  private getLinkHTML;
90
- private shouldExecuteRenderFunction;
91
88
  render(): import("lit-html").TemplateResult<1>;
92
89
  firstUpdated(_changedProperties: Map<string, unknown>): void;
93
- private getCombinedClasses;
94
- private applyClassesToChildren;
95
- updated(_changedProperties: Map<string, unknown>): void;
96
90
  }
97
91
  declare global {
98
92
  interface HTMLElementTagNameMap {
99
93
  'atomic-product': AtomicProduct;
100
94
  }
101
- interface HTMLElementEventMap {
102
- 'atomic/resolveResult': ProductContextEvent;
103
- 'atomic/resolveInteractiveResult': InteractiveProductContextEvent;
104
- 'atomic/resolveStopPropagation': CustomEvent;
105
- 'atomic/resolveResultDisplayConfig': ProductContextEvent<DisplayConfig>;
106
- }
107
95
  }
108
96
  export {};
@@ -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;
@@ -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 {};
@@ -0,0 +1,25 @@
1
+ import type { LitElement, ReactiveController, ReactiveControllerHost } from 'lit';
2
+ import type { ItemRenderingFunction } from "../item-list/item-list-common";
3
+ import type { AnyItem } from "../item-list/unfolded-item";
4
+ export interface CustomRenderHost extends ReactiveControllerHost {
5
+ shadowRoot?: ShadowRoot | null;
6
+ }
7
+ export interface CustomRenderOptions {
8
+ renderingFunction: () => ItemRenderingFunction<AnyItem> | undefined;
9
+ itemData: () => AnyItem | undefined;
10
+ rootElementRef: () => HTMLElement | undefined;
11
+ linkContainerRef?: () => HTMLElement | undefined;
12
+ onRenderComplete?: (element: HTMLElement, output: string) => void;
13
+ }
14
+ /**
15
+ * A reactive controller that manages custom rendering function execution for item components.
16
+ */
17
+ export declare class CustomRenderController implements ReactiveController {
18
+ private options;
19
+ private hasExecutedRenderFunction;
20
+ constructor(host: CustomRenderHost & LitElement, options: CustomRenderOptions);
21
+ hostConnected(): void;
22
+ hostUpdated(): void;
23
+ private resetRenderState;
24
+ private executeRenderFunction;
25
+ }
@@ -0,0 +1,47 @@
1
+ import type { LitElement, ReactiveController, ReactiveControllerHost } from 'lit';
2
+ import type { ItemRenderingFunction } from "../item-list/item-list-common";
3
+ import type { AnyItem } from "../item-list/unfolded-item";
4
+ import { type ItemDisplayDensity, type ItemDisplayImageSize, type ItemDisplayLayout, ItemLayout } from './display-options';
5
+ export interface ItemLayoutHost extends ReactiveControllerHost {
6
+ shadowRoot?: ShadowRoot | null;
7
+ }
8
+ export interface LayoutDisplayConfig {
9
+ display: ItemDisplayLayout;
10
+ density: ItemDisplayDensity;
11
+ imageSize: ItemDisplayImageSize;
12
+ }
13
+ export interface ItemLayoutOptions {
14
+ elementPrefix: string;
15
+ renderingFunction: () => ItemRenderingFunction<AnyItem> | undefined;
16
+ content: () => ParentNode | undefined;
17
+ layoutConfig: () => LayoutDisplayConfig;
18
+ itemClasses: () => string;
19
+ }
20
+ /**
21
+ * A reactive controller that manages layout creation and class application for item components.
22
+ */
23
+ export declare class ItemLayoutController implements ReactiveController {
24
+ private host;
25
+ private options;
26
+ private layoutInstance;
27
+ constructor(host: ItemLayoutHost & LitElement, options: ItemLayoutOptions);
28
+ hostConnected(): void;
29
+ hostUpdated(): void;
30
+ /**
31
+ * Gets the current layout instance
32
+ */
33
+ getLayout(): ItemLayout | null;
34
+ /**
35
+ * Gets combined layout and extra classes
36
+ */
37
+ getCombinedClasses(additionalContent?: string): string[];
38
+ /**
39
+ * Applies layout classes to a specific element (useful for custom rendering)
40
+ */
41
+ applyLayoutClassesToElement(element: HTMLElement, additionalContent?: string): void;
42
+ private applyLayoutClasses;
43
+ private createLayout;
44
+ private hasCustomRenderFunction;
45
+ private addClassesToElements;
46
+ private observeAndApplyClasses;
47
+ }
@@ -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
+ }
@@ -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';