@coveo/atomic 3.31.2-pre.17c841327c → 3.31.2-pre.1c8be76f9e

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 (310) 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 -6
  4. package/dist/atomic/components/_index.js +0 -3
  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-numeric-facet.js +1 -1
  12. package/dist/atomic/components/atomic-quickview-modal2.js +1 -1
  13. package/dist/atomic/components/atomic-quickview.js +1 -1
  14. package/dist/atomic/components/atomic-result-children.js +1 -1
  15. package/dist/atomic/components/atomic-result-fields-list.js +1 -1
  16. package/dist/atomic/components/atomic-result-link.js +1 -1
  17. package/dist/atomic/components/atomic-result-list.js +1 -1
  18. package/dist/atomic/components/atomic-search-box-query-suggestions2.js +1 -1
  19. package/dist/atomic/components/atomic-search-box-recent-queries2.js +1 -1
  20. package/dist/atomic/components/atomic-search-interface.js +1 -7
  21. package/dist/atomic/components/atomic-search-interface.js.map +1 -1
  22. package/dist/atomic/components/atomic-smart-snippet-feedback-modal2.js +2 -2
  23. package/dist/atomic/components/atomic-sort-dropdown.js +2 -2
  24. package/dist/atomic/components/atomic-sort-expression.js +1 -1
  25. package/dist/atomic/components/atomic-tab-manager.js +1 -1
  26. package/dist/atomic/components/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.tw.css.js +1 -1
  27. package/dist/atomic/components/components/commerce/atomic-commerce-interface/analytics-config.js +2 -0
  28. package/dist/atomic/components/components/commerce/atomic-commerce-interface/atomic-commerce-interface.js +21 -27
  29. package/dist/atomic/components/components/commerce/atomic-commerce-interface/atomic-commerce-interface.tw.css.js +1 -1
  30. package/dist/atomic/components/components/commerce/atomic-commerce-layout/atomic-commerce-layout.tw.css.js +1 -1
  31. package/dist/atomic/components/components/commerce/atomic-commerce-load-more-products/atomic-commerce-load-more-products.tw.css.js +1 -1
  32. package/dist/atomic/components/components/commerce/atomic-commerce-product-list/atomic-commerce-product-list.tw.css.js +1 -1
  33. package/dist/atomic/components/components/commerce/atomic-commerce-query-summary/atomic-commerce-query-summary.tw.css.js +1 -1
  34. package/dist/atomic/components/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.js +22 -36
  35. package/dist/atomic/components/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.tw.css.js +1 -1
  36. package/dist/atomic/components/components/commerce/atomic-commerce-recommendation-list/atomic-commerce-recommendation-list.tw.css.js +1 -1
  37. package/dist/atomic/components/components/commerce/atomic-commerce-refine-modal/atomic-commerce-refine-modal.tw.css.js +1 -1
  38. package/dist/atomic/components/components/commerce/atomic-commerce-refine-toggle/atomic-commerce-refine-toggle.tw.css.js +1 -1
  39. package/dist/atomic/components/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.js +3 -0
  40. package/dist/atomic/components/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.tw.css.js +1 -1
  41. package/dist/atomic/components/components/commerce/atomic-commerce-sort-dropdown/atomic-commerce-sort-dropdown.tw.css.js +1 -1
  42. package/dist/atomic/components/components/commerce/atomic-product/atomic-product.tw.css.js +1 -1
  43. package/dist/atomic/components/components/commerce/atomic-product-children/atomic-product-children.tw.css.js +1 -1
  44. package/dist/atomic/components/components/commerce/atomic-product-description/atomic-product-description.js +149 -0
  45. package/dist/atomic/components/components/commerce/atomic-product-description/atomic-product-description.tw.css.js +3 -0
  46. package/dist/atomic/components/components/commerce/atomic-product-excerpt/atomic-product-excerpt.tw.css.js +1 -1
  47. package/dist/atomic/components/components/commerce/atomic-product-field-condition/atomic-product-field-condition.js +70 -0
  48. package/dist/atomic/components/components/commerce/atomic-product-link/atomic-product-link.tw.css.js +1 -1
  49. package/dist/atomic/components/components/commerce/atomic-product-multi-value-text/atomic-product-multi-value-text.tw.css.js +1 -1
  50. package/dist/atomic/components/components/commerce/atomic-product-price/atomic-product-price.tw.css.js +1 -1
  51. package/dist/atomic/components/components/commerce/atomic-product-template/atomic-product-template.js +2 -0
  52. package/dist/atomic/components/components/commerce/index.js +2 -0
  53. package/dist/atomic/components/components/commerce/lazy-index.js +2 -0
  54. package/dist/atomic/components/components/common/atomic-aria-live/atomic-aria-live.js +102 -0
  55. package/dist/atomic/components/components/common/atomic-icon/atomic-icon.tw.css.js +1 -1
  56. package/dist/atomic/components/components/common/facets/facet-common.tw.css.js +1 -1
  57. package/dist/atomic/components/components/common/facets/facet-search/facet-search.tw.css.js +1 -1
  58. package/dist/atomic/components/components/common/facets/facet-value-box/facet-value-box.tw.css.js +1 -1
  59. package/dist/atomic/components/components/common/facets/facet-value-checkbox/facet-value-checkbox.tw.css.js +1 -1
  60. package/dist/atomic/components/components/common/facets/facet-value-exclude/facet-value-exclude.tw.css.js +1 -1
  61. package/dist/atomic/components/components/common/index.js +1 -0
  62. package/dist/atomic/components/components/common/interface/analytics-config.js +38 -0
  63. package/dist/atomic/components/components/common/interface/interface-controller.js +89 -0
  64. package/dist/atomic/components/components/common/lazy-index.js +1 -0
  65. package/dist/atomic/components/components/common/refine-modal/refine-modal-common.tw.css.js +1 -1
  66. package/dist/atomic/components/debounce-utils.js +1 -34
  67. package/dist/atomic/components/debounce-utils.js.map +1 -1
  68. package/dist/atomic/components/global/environment.js +1 -1
  69. package/dist/atomic/components/global/tailwind.default.css.js +1 -1
  70. package/dist/atomic/components/index.js.map +1 -1
  71. package/dist/atomic/components/stencil-accessibility-utils.js.map +1 -1
  72. package/dist/atomic/components/stencil-facet-show-more-less.js +7 -1
  73. package/dist/atomic/components/stencil-facet-show-more-less.js.map +1 -1
  74. package/dist/atomic/components/themes/accessible.css.js +1 -1
  75. package/dist/atomic/components/themes/coveo.css.js +1 -1
  76. package/dist/atomic/components/utils/coveo.tw.css.js +1 -1
  77. package/dist/atomic/components/utils/tailwind-utilities/aspect-square.tw.css.js +1 -1
  78. package/dist/atomic/components/utils/tailwind-utilities/components.tw.css.js +1 -1
  79. package/dist/atomic/components/utils/tailwind-utilities/hide-scrollbar.tw.css.js +1 -1
  80. package/dist/atomic/components/utils/tailwind-utilities/link-style.tw.css.js +1 -1
  81. package/dist/atomic/components/utils/tailwind-utilities/set-font-size.tw.css.js +1 -1
  82. package/dist/atomic/components/utils/tailwind-utilities/utilities.tw.css.js +1 -1
  83. package/dist/atomic/components/utils/tailwind.global.tw.css.js +1 -1
  84. package/dist/atomic/p-01c91b69.js +2 -0
  85. package/dist/atomic/p-01c91b69.js.map +1 -0
  86. package/dist/atomic/{p-1b491649.entry.js → p-0af927f0.entry.js} +2 -2
  87. package/dist/atomic/{p-b043958c.entry.js → p-0b9cd281.entry.js} +2 -2
  88. package/dist/atomic/{p-e44ba87e.entry.js → p-0f5ae66e.entry.js} +2 -2
  89. package/dist/atomic/{p-cedf8775.entry.js → p-16aba904.entry.js} +2 -2
  90. package/dist/atomic/{p-0674783d.entry.js → p-1b329f85.entry.js} +2 -2
  91. package/dist/atomic/p-271cf67e.entry.js +2 -0
  92. package/dist/atomic/p-271cf67e.entry.js.map +1 -0
  93. package/dist/atomic/p-306161d1.entry.js +2 -0
  94. package/dist/atomic/p-417b1b64.js +2 -0
  95. package/dist/atomic/{p-c100197d.js.map → p-417b1b64.js.map} +1 -1
  96. package/dist/atomic/p-44a3c052.entry.js +2 -0
  97. package/dist/atomic/{p-e215ba76.entry.js.map → p-44a3c052.entry.js.map} +1 -1
  98. package/dist/atomic/{p-a0445771.entry.js → p-4c5702ba.entry.js} +2 -2
  99. package/dist/atomic/{p-acc4d5de.js → p-53bcc515.js} +2 -2
  100. package/dist/atomic/{p-776f50d5.js → p-5cb01552.js} +2 -2
  101. package/dist/atomic/{p-e2560da8.entry.js → p-5f64bbe0.entry.js} +2 -2
  102. package/dist/atomic/{p-fc73190d.entry.js → p-6638ca39.entry.js} +2 -2
  103. package/dist/atomic/{p-1176959c.entry.js → p-6f8ae3d2.entry.js} +2 -2
  104. package/dist/atomic/{p-0ed0e8b8.entry.js → p-731f82ed.entry.js} +2 -2
  105. package/dist/atomic/{p-25f8b8d8.entry.js → p-7a07530d.entry.js} +2 -2
  106. package/dist/atomic/{p-c8d47706.entry.js → p-7a5d346b.entry.js} +2 -2
  107. package/dist/atomic/p-8434625a.entry.js +2 -0
  108. package/dist/atomic/{p-8bb323e8.entry.js.map → p-8434625a.entry.js.map} +1 -1
  109. package/dist/atomic/{p-5b888121.entry.js → p-89721f11.entry.js} +2 -2
  110. package/dist/atomic/p-91477908.entry.js +2 -0
  111. package/dist/atomic/{p-3f881919.entry.js.map → p-91477908.entry.js.map} +1 -1
  112. package/dist/atomic/p-91d52cad.entry.js +2 -0
  113. package/dist/atomic/{p-4e77fe24.entry.js.map → p-91d52cad.entry.js.map} +1 -1
  114. package/dist/atomic/p-96a6f84f.js.map +1 -1
  115. package/dist/atomic/{p-69a8be1e.entry.js → p-9e77e09f.entry.js} +2 -2
  116. package/dist/atomic/{p-11dd759c.entry.js → p-b1f7ac63.entry.js} +2 -2
  117. package/dist/atomic/{p-f44742b1.entry.js → p-b573855a.entry.js} +2 -2
  118. package/dist/atomic/{p-5fc9f751.entry.js → p-bf5d5c79.entry.js} +2 -2
  119. package/dist/atomic/{p-716e9e1d.entry.js → p-c0025d4c.entry.js} +2 -2
  120. package/dist/atomic/{p-494c57a0.entry.js → p-e406cacd.entry.js} +2 -2
  121. package/dist/atomic/p-e8ba8acd.entry.js +2 -0
  122. package/dist/atomic/{p-0873c1b8.entry.js.map → p-e8ba8acd.entry.js.map} +1 -1
  123. package/dist/atomic/p-f0e861c5.entry.js +2 -0
  124. package/dist/atomic/{p-391c26ba.entry.js → p-f9bfd18b.entry.js} +2 -2
  125. package/dist/cjs/_loader.cjs.js +1 -1
  126. package/dist/cjs/{analytics-config-7b57d912.js → analytics-config-aabaf235.js} +2 -2
  127. package/dist/cjs/{analytics-config-7b57d912.js.map → analytics-config-aabaf235.js.map} +1 -1
  128. package/dist/cjs/atomic-category-facet.cjs.entry.js +2 -3
  129. package/dist/cjs/atomic-category-facet.cjs.entry.js.map +1 -1
  130. package/dist/cjs/atomic-color-facet.cjs.entry.js +1 -2
  131. package/dist/cjs/atomic-color-facet.cjs.entry.js.map +1 -1
  132. package/dist/cjs/atomic-commerce-category-facet_4.cjs.entry.js +1 -2
  133. package/dist/cjs/atomic-commerce-category-facet_4.cjs.entry.js.map +1 -1
  134. package/dist/cjs/atomic-facet.cjs.entry.js +2 -3
  135. package/dist/cjs/atomic-facet.cjs.entry.js.map +1 -1
  136. package/dist/cjs/atomic-format-currency.cjs.entry.js +1 -1
  137. package/dist/cjs/atomic-format-number.cjs.entry.js +1 -1
  138. package/dist/cjs/atomic-format-unit.cjs.entry.js +1 -1
  139. package/dist/cjs/atomic-generated-answer.cjs.entry.js +1 -1
  140. package/dist/cjs/atomic-insight-facet.cjs.entry.js +1 -2
  141. package/dist/cjs/atomic-insight-facet.cjs.entry.js.map +1 -1
  142. package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js +1 -1
  143. package/dist/cjs/atomic-insight-interface.cjs.entry.js +1 -1
  144. package/dist/cjs/atomic-insight-search-box.cjs.entry.js +2 -2
  145. package/dist/cjs/atomic-numeric-facet.cjs.entry.js +1 -1
  146. package/dist/cjs/atomic-quickview-modal.cjs.entry.js +1 -1
  147. package/dist/cjs/atomic-quickview.cjs.entry.js +1 -1
  148. package/dist/cjs/atomic-recs-interface.cjs.entry.js +1 -1
  149. package/dist/cjs/{atomic-aria-live_2.cjs.entry.js → atomic-relevance-inspector.cjs.entry.js} +1 -68
  150. package/dist/cjs/atomic-relevance-inspector.cjs.entry.js.map +1 -0
  151. package/dist/cjs/atomic-result-children.cjs.entry.js +1 -1
  152. package/dist/cjs/atomic-result-fields-list.cjs.entry.js +1 -1
  153. package/dist/cjs/atomic-result-link.cjs.entry.js +1 -1
  154. package/dist/cjs/atomic-result-list.cjs.entry.js +1 -1
  155. package/dist/cjs/atomic-search-box-query-suggestions_2.cjs.entry.js +2 -2
  156. package/dist/cjs/atomic-search-box.cjs.entry.js +2 -2
  157. package/dist/cjs/atomic-search-interface.cjs.entry.js +1 -1
  158. package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js +2 -2
  159. package/dist/cjs/atomic-sort-dropdown.cjs.entry.js +2 -2
  160. package/dist/cjs/atomic-sort-expression.cjs.entry.js +1 -1
  161. package/dist/cjs/atomic-tab-manager.cjs.entry.js +1 -1
  162. package/dist/cjs/atomic.cjs.js +1 -1
  163. package/dist/cjs/debounce-utils-d26bcad4.js +15 -0
  164. package/dist/cjs/debounce-utils-d26bcad4.js.map +1 -0
  165. package/dist/cjs/index-757bc886.js +4 -12
  166. package/dist/cjs/stencil-accessibility-utils-aa4c9f6c.js.map +1 -1
  167. package/dist/cjs/{stencil-facet-show-more-less-21d22973.js → stencil-facet-show-more-less-541e1544.js} +10 -4
  168. package/dist/cjs/stencil-facet-show-more-less-541e1544.js.map +1 -0
  169. package/dist/cjs/{stencil-suggestion-manager-6f778cf0.js → stencil-suggestion-manager-5fa3ac70.js} +2 -2
  170. package/dist/cjs/{stencil-suggestion-manager-6f778cf0.js.map → stencil-suggestion-manager-5fa3ac70.js.map} +1 -1
  171. package/dist/cjs/version.cjs.js +2 -2
  172. package/dist/esm/_loader.js +1 -1
  173. package/dist/esm/{analytics-config-c1a826fb.js → analytics-config-8adc1641.js} +2 -2
  174. package/dist/esm/{analytics-config-c1a826fb.js.map → analytics-config-8adc1641.js.map} +1 -1
  175. package/dist/esm/atomic-category-facet.entry.js +2 -3
  176. package/dist/esm/atomic-category-facet.entry.js.map +1 -1
  177. package/dist/esm/atomic-color-facet.entry.js +1 -2
  178. package/dist/esm/atomic-color-facet.entry.js.map +1 -1
  179. package/dist/esm/atomic-commerce-category-facet_4.entry.js +1 -2
  180. package/dist/esm/atomic-commerce-category-facet_4.entry.js.map +1 -1
  181. package/dist/esm/atomic-facet.entry.js +2 -3
  182. package/dist/esm/atomic-facet.entry.js.map +1 -1
  183. package/dist/esm/atomic-format-currency.entry.js +1 -1
  184. package/dist/esm/atomic-format-number.entry.js +1 -1
  185. package/dist/esm/atomic-format-unit.entry.js +1 -1
  186. package/dist/esm/atomic-generated-answer.entry.js +1 -1
  187. package/dist/esm/atomic-insight-facet.entry.js +1 -2
  188. package/dist/esm/atomic-insight-facet.entry.js.map +1 -1
  189. package/dist/esm/atomic-insight-generated-answer.entry.js +1 -1
  190. package/dist/esm/atomic-insight-interface.entry.js +1 -1
  191. package/dist/esm/atomic-insight-search-box.entry.js +2 -2
  192. package/dist/esm/atomic-numeric-facet.entry.js +1 -1
  193. package/dist/esm/atomic-quickview-modal.entry.js +1 -1
  194. package/dist/esm/atomic-quickview.entry.js +1 -1
  195. package/dist/esm/atomic-recs-interface.entry.js +1 -1
  196. package/dist/esm/{atomic-aria-live_2.entry.js → atomic-relevance-inspector.entry.js} +3 -69
  197. package/dist/esm/atomic-relevance-inspector.entry.js.map +1 -0
  198. package/dist/esm/atomic-result-children.entry.js +1 -1
  199. package/dist/esm/atomic-result-fields-list.entry.js +1 -1
  200. package/dist/esm/atomic-result-link.entry.js +1 -1
  201. package/dist/esm/atomic-result-list.entry.js +1 -1
  202. package/dist/esm/atomic-search-box-query-suggestions_2.entry.js +2 -2
  203. package/dist/esm/atomic-search-box.entry.js +2 -2
  204. package/dist/esm/atomic-search-interface.entry.js +1 -1
  205. package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js +2 -2
  206. package/dist/esm/atomic-sort-dropdown.entry.js +2 -2
  207. package/dist/esm/atomic-sort-expression.entry.js +1 -1
  208. package/dist/esm/atomic-tab-manager.entry.js +1 -1
  209. package/dist/esm/atomic.js +1 -1
  210. package/dist/esm/debounce-utils-8619dece.js +13 -0
  211. package/dist/esm/{debounce-utils-efa015c0.js.map → debounce-utils-8619dece.js.map} +1 -1
  212. package/dist/esm/index-3f35faca.js +4 -12
  213. package/dist/esm/stencil-accessibility-utils-bc273be5.js.map +1 -1
  214. package/dist/esm/{stencil-facet-show-more-less-4b023ee3.js → stencil-facet-show-more-less-1198472f.js} +8 -2
  215. package/dist/esm/stencil-facet-show-more-less-1198472f.js.map +1 -0
  216. package/dist/esm/{stencil-suggestion-manager-91706623.js → stencil-suggestion-manager-f52c6e39.js} +2 -2
  217. package/dist/esm/{stencil-suggestion-manager-91706623.js.map → stencil-suggestion-manager-f52c6e39.js.map} +1 -1
  218. package/dist/esm/version.js +2 -2
  219. package/dist/types/components/commerce/atomic-commerce-interface/atomic-commerce-interface.d.ts +3 -4
  220. package/dist/types/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.d.ts +5 -6
  221. package/dist/types/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.d.ts +3 -0
  222. package/dist/types/components/commerce/atomic-product-description/atomic-product-description.d.ts +21 -10
  223. package/dist/types/components/commerce/atomic-product-field-condition/atomic-product-field-condition.d.ts +24 -13
  224. package/dist/types/components/commerce/atomic-product-template/atomic-product-template.d.ts +2 -0
  225. package/dist/types/components/commerce/index.d.ts +2 -0
  226. package/dist/types/components/common/atomic-aria-live/atomic-aria-live.d.ts +38 -0
  227. package/dist/types/components/common/index.d.ts +1 -0
  228. package/dist/types/components/common/interface/i18n.d.ts +1 -1
  229. package/dist/types/components/common/interface/{interface-common.d.ts → interface-controller.d.ts} +14 -11
  230. package/dist/types/components.d.ts +0 -147
  231. package/dist/types/utils/accessibility-utils.d.ts +2 -1
  232. package/dist/types/utils/stencil-accessibility-utils.d.ts +2 -1
  233. package/docs/atomic-docs.json +31 -320
  234. package/package.json +6 -6
  235. package/dist/atomic/components/atomic-aria-live.d.ts +0 -11
  236. package/dist/atomic/components/atomic-aria-live.js +0 -8
  237. package/dist/atomic/components/atomic-aria-live.js.map +0 -1
  238. package/dist/atomic/components/atomic-aria-live2.js +0 -87
  239. package/dist/atomic/components/atomic-aria-live2.js.map +0 -1
  240. package/dist/atomic/components/atomic-product-description.d.ts +0 -11
  241. package/dist/atomic/components/atomic-product-description.js +0 -153
  242. package/dist/atomic/components/atomic-product-description.js.map +0 -1
  243. package/dist/atomic/components/atomic-product-field-condition.d.ts +0 -11
  244. package/dist/atomic/components/atomic-product-field-condition.js +0 -131
  245. package/dist/atomic/components/atomic-product-field-condition.js.map +0 -1
  246. package/dist/atomic/components/components/common/interface/interface-common.js +0 -95
  247. package/dist/atomic/components/plus.js +0 -10
  248. package/dist/atomic/components/plus.js.map +0 -1
  249. package/dist/atomic/p-0873c1b8.entry.js +0 -2
  250. package/dist/atomic/p-37b7705c.js +0 -2
  251. package/dist/atomic/p-37b7705c.js.map +0 -1
  252. package/dist/atomic/p-3f2442d3.entry.js +0 -2
  253. package/dist/atomic/p-3f2442d3.entry.js.map +0 -1
  254. package/dist/atomic/p-3f881919.entry.js +0 -2
  255. package/dist/atomic/p-4e77fe24.entry.js +0 -2
  256. package/dist/atomic/p-8bb323e8.entry.js +0 -2
  257. package/dist/atomic/p-8f20d930.js +0 -2
  258. package/dist/atomic/p-8f20d930.js.map +0 -1
  259. package/dist/atomic/p-a0b3c6e2.entry.js +0 -2
  260. package/dist/atomic/p-a0b3c6e2.entry.js.map +0 -1
  261. package/dist/atomic/p-c100197d.js +0 -2
  262. package/dist/atomic/p-e215ba76.entry.js +0 -2
  263. package/dist/atomic/p-e790d557.entry.js +0 -2
  264. package/dist/atomic/p-efd2bb5f.entry.js +0 -2
  265. package/dist/atomic/p-f2d31b97.entry.js +0 -2
  266. package/dist/atomic/p-f2d31b97.entry.js.map +0 -1
  267. package/dist/cjs/atomic-aria-live_2.cjs.entry.js.map +0 -1
  268. package/dist/cjs/atomic-product-description.cjs.entry.js +0 -141
  269. package/dist/cjs/atomic-product-description.cjs.entry.js.map +0 -1
  270. package/dist/cjs/atomic-product-field-condition.cjs.entry.js +0 -119
  271. package/dist/cjs/atomic-product-field-condition.cjs.entry.js.map +0 -1
  272. package/dist/cjs/debounce-utils-e014935f.js +0 -49
  273. package/dist/cjs/debounce-utils-e014935f.js.map +0 -1
  274. package/dist/cjs/plus-07843914.js +0 -13
  275. package/dist/cjs/plus-07843914.js.map +0 -1
  276. package/dist/cjs/stencil-facet-show-more-less-21d22973.js.map +0 -1
  277. package/dist/esm/atomic-aria-live_2.entry.js.map +0 -1
  278. package/dist/esm/atomic-product-description.entry.js +0 -137
  279. package/dist/esm/atomic-product-description.entry.js.map +0 -1
  280. package/dist/esm/atomic-product-field-condition.entry.js +0 -115
  281. package/dist/esm/atomic-product-field-condition.entry.js.map +0 -1
  282. package/dist/esm/debounce-utils-efa015c0.js +0 -46
  283. package/dist/esm/plus-00840ff6.js +0 -10
  284. package/dist/esm/plus-00840ff6.js.map +0 -1
  285. package/dist/esm/stencil-facet-show-more-less-4b023ee3.js.map +0 -1
  286. package/dist/types/components/search/atomic-search-interface/atomic-aria-live.d.ts +0 -23
  287. /package/dist/atomic/{p-1b491649.entry.js.map → p-0af927f0.entry.js.map} +0 -0
  288. /package/dist/atomic/{p-b043958c.entry.js.map → p-0b9cd281.entry.js.map} +0 -0
  289. /package/dist/atomic/{p-e44ba87e.entry.js.map → p-0f5ae66e.entry.js.map} +0 -0
  290. /package/dist/atomic/{p-cedf8775.entry.js.map → p-16aba904.entry.js.map} +0 -0
  291. /package/dist/atomic/{p-0674783d.entry.js.map → p-1b329f85.entry.js.map} +0 -0
  292. /package/dist/atomic/{p-efd2bb5f.entry.js.map → p-306161d1.entry.js.map} +0 -0
  293. /package/dist/atomic/{p-a0445771.entry.js.map → p-4c5702ba.entry.js.map} +0 -0
  294. /package/dist/atomic/{p-acc4d5de.js.map → p-53bcc515.js.map} +0 -0
  295. /package/dist/atomic/{p-776f50d5.js.map → p-5cb01552.js.map} +0 -0
  296. /package/dist/atomic/{p-e2560da8.entry.js.map → p-5f64bbe0.entry.js.map} +0 -0
  297. /package/dist/atomic/{p-fc73190d.entry.js.map → p-6638ca39.entry.js.map} +0 -0
  298. /package/dist/atomic/{p-1176959c.entry.js.map → p-6f8ae3d2.entry.js.map} +0 -0
  299. /package/dist/atomic/{p-0ed0e8b8.entry.js.map → p-731f82ed.entry.js.map} +0 -0
  300. /package/dist/atomic/{p-25f8b8d8.entry.js.map → p-7a07530d.entry.js.map} +0 -0
  301. /package/dist/atomic/{p-c8d47706.entry.js.map → p-7a5d346b.entry.js.map} +0 -0
  302. /package/dist/atomic/{p-5b888121.entry.js.map → p-89721f11.entry.js.map} +0 -0
  303. /package/dist/atomic/{p-69a8be1e.entry.js.map → p-9e77e09f.entry.js.map} +0 -0
  304. /package/dist/atomic/{p-11dd759c.entry.js.map → p-b1f7ac63.entry.js.map} +0 -0
  305. /package/dist/atomic/{p-f44742b1.entry.js.map → p-b573855a.entry.js.map} +0 -0
  306. /package/dist/atomic/{p-5fc9f751.entry.js.map → p-bf5d5c79.entry.js.map} +0 -0
  307. /package/dist/atomic/{p-716e9e1d.entry.js.map → p-c0025d4c.entry.js.map} +0 -0
  308. /package/dist/atomic/{p-494c57a0.entry.js.map → p-e406cacd.entry.js.map} +0 -0
  309. /package/dist/atomic/{p-e790d557.entry.js.map → p-f0e861c5.entry.js.map} +0 -0
  310. /package/dist/atomic/{p-391c26ba.entry.js.map → p-f9bfd18b.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"atomic-search-interface.js","mappings":"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","names":["AtomicSearchInterface","i18next"],"sources":["src/components/search/atomic-search-interface/analytics-config.ts","src/components/search/atomic-search-interface/store.ts","src/components/search/atomic-search-interface/atomic-search-interface.pcss?tag=atomic-search-interface&encapsulation=shadow","src/components/search/atomic-search-interface/atomic-search-interface.tsx"],"sourcesContent":["import type {\n AnalyticsConfiguration,\n SearchEngineConfiguration,\n} from '@coveo/headless';\nimport {\n type AnalyticsPayload,\n augmentAnalyticsConfigWithAtomicVersion,\n augmentAnalyticsConfigWithDocument,\n augmentAnalyticsWithAtomicVersion,\n augmentWithExternalMiddleware,\n getNextAnalyticsConfig,\n} from '../../common/interface/analytics-config';\nimport type {createSearchStore} from './store';\n\nexport function getAnalyticsConfig(\n searchEngineConfig: SearchEngineConfiguration,\n enabled: boolean,\n store: ReturnType<typeof createSearchStore>\n): AnalyticsConfiguration {\n switch (searchEngineConfig.analytics?.analyticsMode) {\n case 'next':\n return getNextAnalyticsConfig(searchEngineConfig, enabled);\n default:\n return getLegacyAnalyticsConfig(searchEngineConfig, enabled, store);\n }\n}\n\nfunction getLegacyAnalyticsConfig(\n searchEngineConfig: SearchEngineConfiguration,\n enabled: boolean,\n store: ReturnType<typeof createSearchStore>\n): AnalyticsConfiguration {\n const analyticsClientMiddleware = (\n event: string,\n payload: AnalyticsPayload\n ) => augmentAnalytics(event, payload, store, searchEngineConfig);\n\n const defaultConfiguration: AnalyticsConfiguration = {\n analyticsClientMiddleware,\n enabled,\n ...augmentAnalyticsConfigWithDocument(),\n };\n\n const immutableConfiguration: AnalyticsConfiguration = {\n ...augmentAnalyticsConfigWithAtomicVersion(),\n };\n\n if (searchEngineConfig.analytics) {\n return {\n ...defaultConfiguration,\n ...searchEngineConfig.analytics,\n analyticsClientMiddleware,\n ...immutableConfiguration,\n };\n }\n\n return {\n ...defaultConfiguration,\n ...immutableConfiguration,\n };\n}\n\nfunction augmentAnalytics(\n event: string,\n payload: AnalyticsPayload,\n store: ReturnType<typeof createSearchStore>,\n config: SearchEngineConfiguration\n) {\n let result = augmentWithExternalMiddleware(event, payload, config);\n result = augmentAnalyticsWithAtomicVersion(result);\n result = augmentAnalyticsWithFacetTitles(result, store);\n return result;\n}\n\nfunction augmentAnalyticsWithFacetTitles(\n payload: AnalyticsPayload,\n store: ReturnType<typeof createSearchStore>\n) {\n const allFacets = store.getAllFacets();\n const getAtomicFacetLabelOrOriginalTitle = (\n facetId: string,\n originalTitle: string\n ) => (allFacets[facetId] ? allFacets[facetId].label() : originalTitle);\n\n if (payload.facetState) {\n payload.facetState = payload.facetState.map(\n (analyticsFacetState: {id: string; title: string}) => {\n const {id, title: originalTitle} = analyticsFacetState;\n return {\n ...analyticsFacetState,\n title: getAtomicFacetLabelOrOriginalTitle(id, originalTitle),\n };\n }\n );\n }\n\n if (\n payload.customData?.facetTitle &&\n payload.customData.facetId &&\n payload.customData.facetTitle\n ) {\n payload.customData.facetTitle = getAtomicFacetLabelOrOriginalTitle(\n payload.customData.facetId,\n payload.customData.facetTitle\n );\n }\n return payload;\n}\n","import type {\n DateFacetValue,\n NumericFacetValue,\n SearchEngine,\n SortCriterion,\n} from '@coveo/headless';\nimport {DEFAULT_MOBILE_BREAKPOINT} from '../../../utils/replace-breakpoint';\nimport type {\n FacetInfo,\n FacetStore,\n FacetType,\n FacetValueFormat,\n} from '../../common/facets/facet-common-store';\nimport {\n type BaseStore,\n createBaseStore,\n getFacetElements,\n type ResultListInfo,\n registerFacet,\n setLoadingFlag,\n unsetLoadingFlag,\n waitUntilAppLoaded,\n} from '../../common/interface/store';\nimport {makeDesktopQuery} from '../atomic-layout/search-layout';\n\nexport interface SortDropdownOption {\n tabs: {included: string[] | string; excluded: string[] | string};\n expression: string;\n criteria: SortCriterion[];\n label: string;\n}\n\ninterface FacetInfoMap {\n [facetId: string]:\n | FacetInfo\n | (FacetInfo & FacetValueFormat<NumericFacetValue>)\n | (FacetInfo & FacetValueFormat<DateFacetValue>);\n}\n\ninterface Data {\n loadingFlags: string[];\n iconAssetsPath: string;\n resultList: ResultListInfo | undefined;\n mobileBreakpoint: string;\n facets: FacetStore<FacetInfo>;\n numericFacets: FacetStore<FacetInfo & FacetValueFormat<NumericFacetValue>>;\n dateFacets: FacetStore<FacetInfo & FacetValueFormat<DateFacetValue>>;\n categoryFacets: FacetStore<FacetInfo>;\n facetElements: HTMLElement[];\n fieldsToInclude: string[];\n sortOptions: SortDropdownOption[];\n}\n\nexport type SearchStore = BaseStore<Data> & {\n unsetLoadingFlag(loadingFlag: string): void;\n setLoadingFlag(flag: string): void;\n isMobile(): boolean;\n registerFacet<T extends FacetType, U extends string>(\n facetType: T,\n data: Data[T][U] & {facetId: U; element: HTMLElement}\n ): void;\n getFacetElements(): HTMLElement[];\n waitUntilAppLoaded(callback: () => void): void;\n getUniqueIDFromEngine(engine: SearchEngine): string;\n hasLoadingFlag(loadingFlag: string): boolean;\n getAllFacets(): FacetInfoMap;\n addFieldsToInclude(fields: string[]): void;\n};\n\nexport function createSearchStore(): SearchStore {\n const store = createBaseStore<Data>({\n loadingFlags: [],\n iconAssetsPath: '',\n resultList: undefined,\n mobileBreakpoint: DEFAULT_MOBILE_BREAKPOINT,\n facets: {},\n numericFacets: {},\n dateFacets: {},\n categoryFacets: {},\n facetElements: [],\n fieldsToInclude: [],\n sortOptions: [],\n });\n\n return {\n ...store,\n\n unsetLoadingFlag(loadingFlag: string) {\n unsetLoadingFlag(store, loadingFlag);\n },\n\n setLoadingFlag(loadingFlag: string) {\n setLoadingFlag(store, loadingFlag);\n },\n\n isMobile() {\n return !window.matchMedia(makeDesktopQuery(store.state.mobileBreakpoint))\n .matches;\n },\n\n registerFacet<T extends FacetType, U extends string>(\n facetType: T,\n data: Data[T][U] & {facetId: U; element: HTMLElement}\n ) {\n registerFacet(store, facetType, data);\n },\n\n getFacetElements() {\n return getFacetElements(store);\n },\n\n waitUntilAppLoaded(callback: () => void) {\n waitUntilAppLoaded(store, callback);\n },\n\n getUniqueIDFromEngine(engine: SearchEngine): string {\n return engine.state.search.response.searchUid;\n },\n\n hasLoadingFlag(loadingFlag: string) {\n return store.state.loadingFlags.indexOf(loadingFlag) !== -1;\n },\n\n getAllFacets() {\n return {\n ...store.state.facets,\n ...store.state.dateFacets,\n ...store.state.categoryFacets,\n ...store.state.numericFacets,\n };\n },\n\n addFieldsToInclude(fields) {\n const currentFields = store.state.fieldsToInclude;\n store.state.fieldsToInclude = [...currentFields, ...fields];\n },\n };\n}\n","@import '../../../global/global.pcss';\n\n:host {\n display: block;\n height: inherit;\n width: inherit;\n & > slot {\n height: inherit;\n }\n}\n","import {markParentAsReady} from '@/src/utils/init-queue';\nimport {\n LogLevel,\n Unsubscribe,\n buildUrlManager,\n UrlManager,\n buildSearchEngine,\n SearchEngine,\n SearchEngineConfiguration,\n SearchStatus,\n buildSearchStatus,\n loadSearchConfigurationActions,\n loadQueryActions,\n EcommerceDefaultFieldsToInclude,\n loadFieldActions,\n} from '@coveo/headless';\nimport {\n Component,\n Prop,\n h,\n Listen,\n Method,\n Watch,\n Element,\n State,\n setNonce,\n} from '@stencil/core';\nimport i18next, {i18n} from 'i18next';\nimport {InitializeEvent} from '../../../utils/initialization-utils';\nimport {\n SafeStorage,\n StandaloneSearchBoxData,\n StorageItems,\n} from '../../../utils/local-storage-utils';\nimport {ArrayProp} from '../../../utils/props-utils';\nimport {\n StencilBaseAtomicInterface,\n CommonAtomicInterfaceHelper,\n mismatchedInterfaceAndEnginePropError,\n} from '../../common/interface/interface-common-stencil';\nimport {\n errorSelector,\n firstSearchExecutedSelector,\n noResultsSelector,\n} from '../atomic-layout/search-layout';\nimport {getAnalyticsConfig} from './analytics-config';\nimport type {Bindings as _Bindings} from './interfaces';\nimport {createSearchStore, SearchStore} from './store';\n\nconst FirstSearchExecutedFlag = 'firstSearchExecuted';\nexport type InitializationOptions = SearchEngineConfiguration;\nexport type Bindings = _Bindings;\n\n/**\n * The `atomic-search-interface` component is the parent to all other atomic components in a search page. It handles the headless search engine and localization configurations.\n */\n@Component({\n tag: 'atomic-search-interface',\n styleUrl: 'atomic-search-interface.pcss',\n shadow: true,\n assetsDirs: ['lang'],\n})\nexport class AtomicSearchInterface\n implements StencilBaseAtomicInterface<SearchEngine>\n{\n private urlManager!: UrlManager;\n private searchStatus!: SearchStatus;\n private unsubscribeUrlManager: Unsubscribe = () => {};\n private unsubscribeSearchStatus: Unsubscribe = () => {};\n private initialized = false;\n private store: SearchStore;\n private commonInterfaceHelper: CommonAtomicInterfaceHelper<SearchEngine>;\n\n @Element() public host!: HTMLAtomicSearchInterfaceElement;\n\n @State() public error?: Error;\n @State() relevanceInspectorIsOpen = false;\n\n /**\n * A list of non-default fields to include in the query results.\n *\n * Specify the property as an array using a JSON string representation:\n * ```html\n * <atomic-search-interface fields-to-include='[\"fieldA\", \"fieldB\"]'></atomic-search-interface>\n * ```\n */\n @ArrayProp()\n @Prop({mutable: true})\n public fieldsToInclude: string[] | string = '[]';\n\n /**\n * The search interface [query pipeline](https://docs.coveo.com/en/180/).\n *\n * If the search interface is initialized using [`initializeWithSearchEngine`](https://docs.coveo.com/en/atomic/latest/reference/components/atomic-search-interface/#initializewithsearchengine), the query pipeline should instead be configured in the target engine.\n */\n @Prop({reflect: true, mutable: true}) public pipeline?: string;\n\n /**\n * The search interface [search hub](https://docs.coveo.com/en/1342/).\n *\n * If the search interface is initialized using [`initializeWithSearchEngine`](https://docs.coveo.com/en/atomic/latest/reference/components/atomic-search-interface/#initializewithsearchengine, the search hub should instead be configured in the target engine.\n */\n @Prop({reflect: true, mutable: true}) public searchHub?: string;\n\n /**\n * Whether analytics should be enabled.\n */\n @Prop({reflect: true}) public analytics = true;\n\n /**\n * The [tz database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) identifier of the time zone to use to correctly interpret dates in the query expression, facets, and result items.\n * By default, the timezone will be [guessed](https://day.js.org/docs/en/timezone/guessing-user-timezone).\n *\n * Example: \"America/Montreal\"\n */\n @Prop({reflect: true}) public timezone?: string;\n\n /**\n * The severity level of the messages to log in the console.\n */\n @Prop({reflect: true}) public logLevel?: LogLevel;\n\n /**\n * The search interface i18next instance.\n */\n @Prop() public i18n: i18n;\n\n /**\n * The search interface language.\n */\n @Prop({reflect: true}) public language = 'en';\n\n /**\n * The search interface headless engine.\n */\n @Prop({mutable: true}) public engine?: SearchEngine;\n\n /**\n * Whether the state should be reflected in the URL parameters.\n */\n @Prop({reflect: true}) public reflectStateInUrl = true;\n\n /**\n * The CSS selector for the container where the interface will scroll back to.\n */\n @Prop({reflect: true}) public scrollContainer = 'atomic-search-interface';\n\n /**\n * The language assets path. By default, this will be a relative URL pointing to `./lang`.\n *\n * Example: \"/mypublicpath/languages\"\n *\n */\n @Prop({reflect: true}) public languageAssetsPath = './lang';\n\n /**\n * The icon assets path. By default, this will be a relative URL pointing to `./assets`.\n *\n * Example: \"/mypublicpath/icons\"\n *\n */\n @Prop({reflect: true}) public iconAssetsPath = './assets';\n\n /**\n * Whether the relevance inspector shortcut should be enabled for this interface.\n *\n * The relevance inspector can be opened by holding the Alt key (Option on Mac) while over the interface, and performing a double click.\n *\n * The relevance inspector allows to troubleshoot and debug queries.\n */\n @Prop({reflect: true}) public enableRelevanceInspector = true;\n\n /**\n * The value to set the [nonce](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/nonce) attribute to on inline script and style elements generated by this interface and its child components.\n * If your application is served with a Content Security Policy (CSP) that doesn't include the `script-src: 'unsafe-inline'` or `style-src: 'unsafe-inline'` directives,\n * you should ensure that your application server generates a new nonce on every page load and uses the generated value to set this prop and serve the corresponding CSP response headers\n * (i.e., script-src 'nonce-<YOUR_GENERATED_NONCE>' and style-src 'nonce-<YOUR_GENERATED_NONCE>').\n * Otherwise you may see console errors such as\n * - Refused to execute inline script because it violates the following Content Security Policy directive: [...]\n * - Refused to apply inline style because it violates the following Content Security Policy directive: [...].\n * @example:\n * ```html\n * <script nonce=\"<YOUR_GENERATED_NONCE>\">\n * import {setNonce} from '@coveo/atomic';\n * setNonce('<YOUR_GENERATED_NONCE>');\n * </script>\n * ```\n */\n @Prop({reflect: true}) public CspNonce?: string;\n\n private i18Initialized: Promise<void>;\n private componentWillLoadCalledPromise: Promise<void>;\n private componentWillLoadResolver: () => void;\n public constructor() {\n this.initRelevanceInspector();\n this.commonInterfaceHelper = new CommonAtomicInterfaceHelper(\n this,\n 'CoveoAtomic'\n );\n this.store = createSearchStore();\n ({\n promise: this.componentWillLoadCalledPromise,\n resolve: this.componentWillLoadResolver,\n } = Promise.withResolvers<void>());\n const {promise, resolve} = Promise.withResolvers<void>();\n this.i18Initialized = promise;\n this.i18n = i18next.createInstance(undefined, resolve);\n }\n\n public connectedCallback() {\n this.store.setLoadingFlag(FirstSearchExecutedFlag);\n this.updateMobileBreakpoint();\n }\n\n componentWillLoad() {\n if (this.CspNonce) {\n setNonce(this.CspNonce);\n }\n this.initAriaLive();\n this.initFieldsToInclude();\n this.componentWillLoadResolver();\n }\n\n public updateSearchConfiguration(\n updatedProp: 'searchHub' | 'pipeline',\n newValue: string | undefined\n ) {\n if (!this.commonInterfaceHelper.engineIsCreated(this.engine)) {\n return;\n }\n\n if (this.engine.state[updatedProp] === newValue) {\n return;\n }\n\n const {updateSearchConfiguration} = loadSearchConfigurationActions(\n this.engine\n );\n this.engine.dispatch(\n updateSearchConfiguration({\n [updatedProp]: newValue,\n })\n );\n }\n\n @Watch('searchHub')\n public updateSearchHub() {\n this.updateSearchConfiguration('searchHub', this.searchHub ?? 'default');\n }\n\n @Watch('pipeline')\n public updatePipeline() {\n this.updateSearchConfiguration('pipeline', this.pipeline);\n }\n\n @Watch('analytics')\n public toggleAnalytics() {\n if (!this.commonInterfaceHelper.engineIsCreated(this.engine)) {\n return;\n }\n\n this.commonInterfaceHelper.onAnalyticsChange();\n }\n\n @Watch('language')\n public updateLanguage() {\n if (!this.commonInterfaceHelper.engineIsCreated(this.engine)) {\n return;\n }\n\n const {updateSearchConfiguration} = loadSearchConfigurationActions(\n this.engine\n );\n this.engine.dispatch(\n updateSearchConfiguration({\n locale: this.language,\n })\n );\n return this.commonInterfaceHelper.onLanguageChange();\n }\n\n @Watch('iconAssetsPath')\n public updateIconAssetsPath() {\n this.store.state.iconAssetsPath = this.iconAssetsPath;\n }\n\n public disconnectedCallback() {\n this.unsubscribeUrlManager();\n this.unsubscribeSearchStatus();\n window.removeEventListener('hashchange', this.onHashChange);\n }\n\n @Listen('atomic/initializeComponent')\n public handleInitialization(event: InitializeEvent) {\n this.commonInterfaceHelper.onComponentInitializing(event);\n }\n\n @Listen('atomic/scrollToTop')\n public scrollToTop() {\n const scrollContainerElement = document.querySelector(this.scrollContainer);\n if (!scrollContainerElement) {\n this.bindings.engine.logger.warn(\n `Could not find the scroll container with the selector \"${this.scrollContainer}\". This will prevent UX interactions that require a scroll from working correctly. Please check the CSS selector in the scrollContainer option`\n );\n return;\n }\n\n scrollContainerElement.scrollIntoView({behavior: 'smooth'});\n }\n\n @Listen('atomic/relevanceInspector/close')\n public closeRelevanceInspector() {\n this.relevanceInspectorIsOpen = false;\n }\n\n /**\n * Initializes the connection with the headless search engine using options for `accessToken` (required), `organizationId` (required), `environment` (defaults to `prod`), and `renewAccessToken`.\n */\n @Method() public initialize(options: InitializationOptions) {\n return this.internalInitialization(() => this.initEngine(options));\n }\n\n /**\n * Initializes the connection with an already preconfigured [headless search engine](https://docs.coveo.com/en/headless/latest/reference/search/), as opposed to the `initialize` method, which will internally create a new search engine instance.\n * This bypasses the properties set on the component, such as analytics, searchHub, pipeline, language, timezone & logLevel.\n */\n @Method() public initializeWithSearchEngine(engine: SearchEngine) {\n if (this.pipeline && this.pipeline !== engine.state.pipeline) {\n console.warn(\n mismatchedInterfaceAndEnginePropError('search', 'query pipeline')\n );\n }\n if (this.searchHub && this.searchHub !== engine.state.searchHub) {\n console.warn(\n mismatchedInterfaceAndEnginePropError('search', 'search hub')\n );\n }\n return this.internalInitialization(() => (this.engine = engine));\n }\n\n /**\n *\n * Executes the first search and logs the interface load event to analytics, after initializing connection to the headless search engine.\n */\n @Method() public async executeFirstSearch() {\n if (!this.commonInterfaceHelper.engineIsCreated(this.engine)) {\n return;\n }\n\n if (!this.initialized) {\n console.error(\n 'You have to wait until the \"initialize\" promise is fulfilled before executing a search.',\n this.host\n );\n return;\n }\n\n const safeStorage = new SafeStorage();\n const standaloneSearchBoxData =\n safeStorage.getParsedJSON<StandaloneSearchBoxData | null>(\n StorageItems.STANDALONE_SEARCH_BOX_DATA,\n null\n );\n\n if (!standaloneSearchBoxData) {\n this.engine.executeFirstSearch();\n return;\n }\n\n safeStorage.removeItem(StorageItems.STANDALONE_SEARCH_BOX_DATA);\n const {updateQuery} = loadQueryActions(this.engine!);\n const {value, enableQuerySyntax, analytics} = standaloneSearchBoxData;\n this.engine!.dispatch(updateQuery({q: value, enableQuerySyntax}));\n this.engine.executeFirstSearchAfterStandaloneSearchBoxRedirect(analytics);\n }\n\n public get bindings(): Bindings {\n return {\n engine: this.engine!,\n i18n: this.i18n,\n store: this.store,\n interfaceElement: this.host,\n createStyleElement: () => {\n const styleTag = document.createElement('style');\n if (this.CspNonce) {\n styleTag.setAttribute('nonce', this.CspNonce);\n }\n return styleTag;\n },\n createScriptElement: () => {\n const styleTag = document.createElement('script');\n if (this.CspNonce) {\n styleTag.setAttribute('nonce', this.CspNonce);\n }\n return styleTag;\n },\n };\n }\n\n private initFieldsToInclude() {\n const fields = EcommerceDefaultFieldsToInclude.concat(this.fieldsToInclude);\n this.store.addFieldsToInclude(fields);\n }\n\n public registerFieldsToInclude() {\n this.engine?.dispatch(\n loadFieldActions(this.engine!).registerFieldsToInclude(\n this.store.state.fieldsToInclude\n )\n );\n }\n\n private updateMobileBreakpoint() {\n const breakpoint = this.host.querySelector(\n 'atomic-search-layout'\n )?.mobileBreakpoint;\n if (breakpoint) {\n this.store.state.mobileBreakpoint = breakpoint;\n }\n }\n\n private initEngine(options: InitializationOptions) {\n const searchConfig = this.getSearchConfiguration(options);\n const analyticsConfig = getAnalyticsConfig(\n options,\n this.analytics,\n this.store\n );\n try {\n this.engine = buildSearchEngine({\n configuration: {\n ...options,\n search: searchConfig,\n analytics: analyticsConfig,\n },\n loggerOptions: {\n level: this.logLevel,\n },\n });\n } catch (error) {\n this.error = error as Error;\n throw error;\n }\n }\n\n private getSearchConfiguration(options: InitializationOptions) {\n const searchConfigFromProps = {\n searchHub: this.searchHub ?? 'default',\n pipeline: this.pipeline,\n locale: this.language,\n timezone: this.timezone,\n };\n\n if (options.search) {\n return {\n ...searchConfigFromProps,\n ...options.search,\n };\n }\n\n return searchConfigFromProps;\n }\n\n private get fragment() {\n return window.location.hash.slice(1);\n }\n\n private initUrlManager() {\n if (!this.reflectStateInUrl) {\n return;\n }\n\n this.urlManager = buildUrlManager(this.engine!, {\n initialState: {fragment: this.fragment},\n });\n\n this.unsubscribeUrlManager = this.urlManager.subscribe(() =>\n this.updateHash()\n );\n\n window.addEventListener('hashchange', this.onHashChange);\n }\n\n private initAriaLive() {\n if (\n Array.from(this.host.children).some(\n (element) => element.tagName === 'ATOMIC-ARIA-LIVE'\n )\n ) {\n return;\n }\n const ariaLive = document.createElement('atomic-aria-live');\n this.host.prepend(ariaLive);\n }\n\n private initRelevanceInspector() {\n if (this.enableRelevanceInspector) {\n this.host.addEventListener('dblclick', (e) => {\n if (e.altKey) {\n this.relevanceInspectorIsOpen = !this.relevanceInspectorIsOpen;\n }\n });\n }\n }\n\n private initSearchStatus() {\n this.searchStatus = buildSearchStatus(this.engine!);\n this.unsubscribeSearchStatus = this.searchStatus.subscribe(() => {\n const hasNoResultsAfterInitialSearch =\n !this.searchStatus.state.hasResults &&\n this.searchStatus.state.firstSearchExecuted &&\n !this.searchStatus.state.hasError;\n\n this.host.classList.toggle(\n noResultsSelector,\n hasNoResultsAfterInitialSearch\n );\n\n this.host.classList.toggle(\n errorSelector,\n this.searchStatus.state.hasError\n );\n\n this.host.classList.toggle(\n firstSearchExecutedSelector,\n this.searchStatus.state.firstSearchExecuted\n );\n\n if (\n this.searchStatus.state.firstSearchExecuted &&\n this.store.hasLoadingFlag(FirstSearchExecutedFlag)\n ) {\n this.store.unsetLoadingFlag(FirstSearchExecutedFlag);\n }\n });\n }\n\n private updateHash() {\n const newFragment = this.urlManager.state.fragment;\n\n if (!this.searchStatus.state.firstSearchExecuted) {\n history.replaceState(null, document.title, `#${newFragment}`);\n this.bindings.engine.logger.info(`History replaceState #${newFragment}`);\n\n return;\n }\n\n history.pushState(null, document.title, `#${newFragment}`);\n this.bindings.engine.logger.info(`History pushState #${newFragment}`);\n }\n\n private onHashChange = () => {\n this.urlManager.synchronize(this.fragment);\n };\n\n private async internalInitialization(initEngine: () => void) {\n await this.componentWillLoadCalledPromise;\n await Promise.all([\n this.commonInterfaceHelper.onInitialization(initEngine),\n this.i18Initialized,\n ]);\n await this.updateLanguage();\n markParentAsReady(this.host);\n this.pipeline = this.engine!.state.pipeline;\n this.searchHub = this.engine!.state.searchHub;\n this.initSearchStatus();\n this.initUrlManager();\n this.initialized = true;\n }\n\n public render() {\n return [\n this.engine && this.enableRelevanceInspector && (\n <atomic-relevance-inspector\n open={this.relevanceInspectorIsOpen}\n bindings={this.bindings}\n ></atomic-relevance-inspector>\n ),\n <slot></slot>,\n ];\n }\n}\n"],"version":3}
1
+ {"file":"atomic-search-interface.js","mappings":"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","names":["AtomicSearchInterface","i18next"],"sources":["src/components/search/atomic-search-interface/analytics-config.ts","src/components/search/atomic-search-interface/store.ts","src/components/search/atomic-search-interface/atomic-search-interface.pcss?tag=atomic-search-interface&encapsulation=shadow","src/components/search/atomic-search-interface/atomic-search-interface.tsx"],"sourcesContent":["import type {\n AnalyticsConfiguration,\n SearchEngineConfiguration,\n} from '@coveo/headless';\nimport {\n type AnalyticsPayload,\n augmentAnalyticsConfigWithAtomicVersion,\n augmentAnalyticsConfigWithDocument,\n augmentAnalyticsWithAtomicVersion,\n augmentWithExternalMiddleware,\n getNextAnalyticsConfig,\n} from '../../common/interface/analytics-config';\nimport type {createSearchStore} from './store';\n\nexport function getAnalyticsConfig(\n searchEngineConfig: SearchEngineConfiguration,\n enabled: boolean,\n store: ReturnType<typeof createSearchStore>\n): AnalyticsConfiguration {\n switch (searchEngineConfig.analytics?.analyticsMode) {\n case 'next':\n return getNextAnalyticsConfig(searchEngineConfig, enabled);\n default:\n return getLegacyAnalyticsConfig(searchEngineConfig, enabled, store);\n }\n}\n\nfunction getLegacyAnalyticsConfig(\n searchEngineConfig: SearchEngineConfiguration,\n enabled: boolean,\n store: ReturnType<typeof createSearchStore>\n): AnalyticsConfiguration {\n const analyticsClientMiddleware = (\n event: string,\n payload: AnalyticsPayload\n ) => augmentAnalytics(event, payload, store, searchEngineConfig);\n\n const defaultConfiguration: AnalyticsConfiguration = {\n analyticsClientMiddleware,\n enabled,\n ...augmentAnalyticsConfigWithDocument(),\n };\n\n const immutableConfiguration: AnalyticsConfiguration = {\n ...augmentAnalyticsConfigWithAtomicVersion(),\n };\n\n if (searchEngineConfig.analytics) {\n return {\n ...defaultConfiguration,\n ...searchEngineConfig.analytics,\n analyticsClientMiddleware,\n ...immutableConfiguration,\n };\n }\n\n return {\n ...defaultConfiguration,\n ...immutableConfiguration,\n };\n}\n\nfunction augmentAnalytics(\n event: string,\n payload: AnalyticsPayload,\n store: ReturnType<typeof createSearchStore>,\n config: SearchEngineConfiguration\n) {\n let result = augmentWithExternalMiddleware(event, payload, config);\n result = augmentAnalyticsWithAtomicVersion(result);\n result = augmentAnalyticsWithFacetTitles(result, store);\n return result;\n}\n\nfunction augmentAnalyticsWithFacetTitles(\n payload: AnalyticsPayload,\n store: ReturnType<typeof createSearchStore>\n) {\n const allFacets = store.getAllFacets();\n const getAtomicFacetLabelOrOriginalTitle = (\n facetId: string,\n originalTitle: string\n ) => (allFacets[facetId] ? allFacets[facetId].label() : originalTitle);\n\n if (payload.facetState) {\n payload.facetState = payload.facetState.map(\n (analyticsFacetState: {id: string; title: string}) => {\n const {id, title: originalTitle} = analyticsFacetState;\n return {\n ...analyticsFacetState,\n title: getAtomicFacetLabelOrOriginalTitle(id, originalTitle),\n };\n }\n );\n }\n\n if (\n payload.customData?.facetTitle &&\n payload.customData.facetId &&\n payload.customData.facetTitle\n ) {\n payload.customData.facetTitle = getAtomicFacetLabelOrOriginalTitle(\n payload.customData.facetId,\n payload.customData.facetTitle\n );\n }\n return payload;\n}\n","import type {\n DateFacetValue,\n NumericFacetValue,\n SearchEngine,\n SortCriterion,\n} from '@coveo/headless';\nimport {DEFAULT_MOBILE_BREAKPOINT} from '../../../utils/replace-breakpoint';\nimport type {\n FacetInfo,\n FacetStore,\n FacetType,\n FacetValueFormat,\n} from '../../common/facets/facet-common-store';\nimport {\n type BaseStore,\n createBaseStore,\n getFacetElements,\n type ResultListInfo,\n registerFacet,\n setLoadingFlag,\n unsetLoadingFlag,\n waitUntilAppLoaded,\n} from '../../common/interface/store';\nimport {makeDesktopQuery} from '../atomic-layout/search-layout';\n\nexport interface SortDropdownOption {\n tabs: {included: string[] | string; excluded: string[] | string};\n expression: string;\n criteria: SortCriterion[];\n label: string;\n}\n\ninterface FacetInfoMap {\n [facetId: string]:\n | FacetInfo\n | (FacetInfo & FacetValueFormat<NumericFacetValue>)\n | (FacetInfo & FacetValueFormat<DateFacetValue>);\n}\n\ninterface Data {\n loadingFlags: string[];\n iconAssetsPath: string;\n resultList: ResultListInfo | undefined;\n mobileBreakpoint: string;\n facets: FacetStore<FacetInfo>;\n numericFacets: FacetStore<FacetInfo & FacetValueFormat<NumericFacetValue>>;\n dateFacets: FacetStore<FacetInfo & FacetValueFormat<DateFacetValue>>;\n categoryFacets: FacetStore<FacetInfo>;\n facetElements: HTMLElement[];\n fieldsToInclude: string[];\n sortOptions: SortDropdownOption[];\n}\n\nexport type SearchStore = BaseStore<Data> & {\n unsetLoadingFlag(loadingFlag: string): void;\n setLoadingFlag(flag: string): void;\n isMobile(): boolean;\n registerFacet<T extends FacetType, U extends string>(\n facetType: T,\n data: Data[T][U] & {facetId: U; element: HTMLElement}\n ): void;\n getFacetElements(): HTMLElement[];\n waitUntilAppLoaded(callback: () => void): void;\n getUniqueIDFromEngine(engine: SearchEngine): string;\n hasLoadingFlag(loadingFlag: string): boolean;\n getAllFacets(): FacetInfoMap;\n addFieldsToInclude(fields: string[]): void;\n};\n\nexport function createSearchStore(): SearchStore {\n const store = createBaseStore<Data>({\n loadingFlags: [],\n iconAssetsPath: '',\n resultList: undefined,\n mobileBreakpoint: DEFAULT_MOBILE_BREAKPOINT,\n facets: {},\n numericFacets: {},\n dateFacets: {},\n categoryFacets: {},\n facetElements: [],\n fieldsToInclude: [],\n sortOptions: [],\n });\n\n return {\n ...store,\n\n unsetLoadingFlag(loadingFlag: string) {\n unsetLoadingFlag(store, loadingFlag);\n },\n\n setLoadingFlag(loadingFlag: string) {\n setLoadingFlag(store, loadingFlag);\n },\n\n isMobile() {\n return !window.matchMedia(makeDesktopQuery(store.state.mobileBreakpoint))\n .matches;\n },\n\n registerFacet<T extends FacetType, U extends string>(\n facetType: T,\n data: Data[T][U] & {facetId: U; element: HTMLElement}\n ) {\n registerFacet(store, facetType, data);\n },\n\n getFacetElements() {\n return getFacetElements(store);\n },\n\n waitUntilAppLoaded(callback: () => void) {\n waitUntilAppLoaded(store, callback);\n },\n\n getUniqueIDFromEngine(engine: SearchEngine): string {\n return engine.state.search.response.searchUid;\n },\n\n hasLoadingFlag(loadingFlag: string) {\n return store.state.loadingFlags.indexOf(loadingFlag) !== -1;\n },\n\n getAllFacets() {\n return {\n ...store.state.facets,\n ...store.state.dateFacets,\n ...store.state.categoryFacets,\n ...store.state.numericFacets,\n };\n },\n\n addFieldsToInclude(fields) {\n const currentFields = store.state.fieldsToInclude;\n store.state.fieldsToInclude = [...currentFields, ...fields];\n },\n };\n}\n","@import '../../../global/global.pcss';\n\n:host {\n display: block;\n height: inherit;\n width: inherit;\n & > slot {\n height: inherit;\n }\n}\n","import {markParentAsReady} from '@/src/utils/init-queue';\nimport {\n LogLevel,\n Unsubscribe,\n buildUrlManager,\n UrlManager,\n buildSearchEngine,\n SearchEngine,\n SearchEngineConfiguration,\n SearchStatus,\n buildSearchStatus,\n loadSearchConfigurationActions,\n loadQueryActions,\n EcommerceDefaultFieldsToInclude,\n loadFieldActions,\n} from '@coveo/headless';\nimport {\n Component,\n Prop,\n h,\n Listen,\n Method,\n Watch,\n Element,\n State,\n setNonce,\n} from '@stencil/core';\nimport i18next, {i18n} from 'i18next';\nimport {InitializeEvent} from '../../../utils/initialization-utils';\nimport {\n SafeStorage,\n StandaloneSearchBoxData,\n StorageItems,\n} from '../../../utils/local-storage-utils';\nimport {ArrayProp} from '../../../utils/props-utils';\nimport {\n StencilBaseAtomicInterface,\n CommonAtomicInterfaceHelper,\n mismatchedInterfaceAndEnginePropError,\n} from '../../common/interface/interface-common-stencil';\nimport {\n errorSelector,\n firstSearchExecutedSelector,\n noResultsSelector,\n} from '../atomic-layout/search-layout';\nimport {getAnalyticsConfig} from './analytics-config';\nimport type {Bindings as _Bindings} from './interfaces';\nimport {createSearchStore, SearchStore} from './store';\n\nconst FirstSearchExecutedFlag = 'firstSearchExecuted';\nexport type InitializationOptions = SearchEngineConfiguration;\nexport type Bindings = _Bindings;\n\n/**\n * The `atomic-search-interface` component is the parent to all other atomic components in a search page. It handles the headless search engine and localization configurations.\n */\n@Component({\n tag: 'atomic-search-interface',\n styleUrl: 'atomic-search-interface.pcss',\n shadow: true,\n assetsDirs: ['lang'],\n})\nexport class AtomicSearchInterface\n implements StencilBaseAtomicInterface<SearchEngine>\n{\n private urlManager!: UrlManager;\n private searchStatus!: SearchStatus;\n private unsubscribeUrlManager: Unsubscribe = () => {};\n private unsubscribeSearchStatus: Unsubscribe = () => {};\n private initialized = false;\n private store: SearchStore;\n private commonInterfaceHelper: CommonAtomicInterfaceHelper<SearchEngine>;\n\n @Element() public host!: HTMLAtomicSearchInterfaceElement;\n\n @State() public error?: Error;\n @State() relevanceInspectorIsOpen = false;\n\n /**\n * A list of non-default fields to include in the query results.\n *\n * Specify the property as an array using a JSON string representation:\n * ```html\n * <atomic-search-interface fields-to-include='[\"fieldA\", \"fieldB\"]'></atomic-search-interface>\n * ```\n */\n @ArrayProp()\n @Prop({mutable: true})\n public fieldsToInclude: string[] | string = '[]';\n\n /**\n * The search interface [query pipeline](https://docs.coveo.com/en/180/).\n *\n * If the search interface is initialized using [`initializeWithSearchEngine`](https://docs.coveo.com/en/atomic/latest/reference/components/atomic-search-interface/#initializewithsearchengine), the query pipeline should instead be configured in the target engine.\n */\n @Prop({reflect: true, mutable: true}) public pipeline?: string;\n\n /**\n * The search interface [search hub](https://docs.coveo.com/en/1342/).\n *\n * If the search interface is initialized using [`initializeWithSearchEngine`](https://docs.coveo.com/en/atomic/latest/reference/components/atomic-search-interface/#initializewithsearchengine, the search hub should instead be configured in the target engine.\n */\n @Prop({reflect: true, mutable: true}) public searchHub?: string;\n\n /**\n * Whether analytics should be enabled.\n */\n @Prop({reflect: true}) public analytics = true;\n\n /**\n * The [tz database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) identifier of the time zone to use to correctly interpret dates in the query expression, facets, and result items.\n * By default, the timezone will be [guessed](https://day.js.org/docs/en/timezone/guessing-user-timezone).\n *\n * Example: \"America/Montreal\"\n */\n @Prop({reflect: true}) public timezone?: string;\n\n /**\n * The severity level of the messages to log in the console.\n */\n @Prop({reflect: true}) public logLevel?: LogLevel;\n\n /**\n * The search interface i18next instance.\n */\n @Prop() public i18n: i18n;\n\n /**\n * The search interface language.\n */\n @Prop({reflect: true}) public language = 'en';\n\n /**\n * The search interface headless engine.\n */\n @Prop({mutable: true}) public engine?: SearchEngine;\n\n /**\n * Whether the state should be reflected in the URL parameters.\n */\n @Prop({reflect: true}) public reflectStateInUrl = true;\n\n /**\n * The CSS selector for the container where the interface will scroll back to.\n */\n @Prop({reflect: true}) public scrollContainer = 'atomic-search-interface';\n\n /**\n * The language assets path. By default, this will be a relative URL pointing to `./lang`.\n *\n * Example: \"/mypublicpath/languages\"\n *\n */\n @Prop({reflect: true}) public languageAssetsPath = './lang';\n\n /**\n * The icon assets path. By default, this will be a relative URL pointing to `./assets`.\n *\n * Example: \"/mypublicpath/icons\"\n *\n */\n @Prop({reflect: true}) public iconAssetsPath = './assets';\n\n /**\n * Whether the relevance inspector shortcut should be enabled for this interface.\n *\n * The relevance inspector can be opened by holding the Alt key (Option on Mac) while over the interface, and performing a double click.\n *\n * The relevance inspector allows to troubleshoot and debug queries.\n */\n @Prop({reflect: true}) public enableRelevanceInspector = true;\n\n /**\n * The value to set the [nonce](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/nonce) attribute to on inline script and style elements generated by this interface and its child components.\n * If your application is served with a Content Security Policy (CSP) that doesn't include the `script-src: 'unsafe-inline'` or `style-src: 'unsafe-inline'` directives,\n * you should ensure that your application server generates a new nonce on every page load and uses the generated value to set this prop and serve the corresponding CSP response headers\n * (i.e., script-src 'nonce-<YOUR_GENERATED_NONCE>' and style-src 'nonce-<YOUR_GENERATED_NONCE>').\n * Otherwise you may see console errors such as\n * - Refused to execute inline script because it violates the following Content Security Policy directive: [...]\n * - Refused to apply inline style because it violates the following Content Security Policy directive: [...].\n * @example:\n * ```html\n * <script nonce=\"<YOUR_GENERATED_NONCE>\">\n * import {setNonce} from '@coveo/atomic';\n * setNonce('<YOUR_GENERATED_NONCE>');\n * </script>\n * ```\n */\n @Prop({reflect: true}) public CspNonce?: string;\n\n private i18Initialized: Promise<void>;\n private componentWillLoadCalledPromise: Promise<void>;\n private componentWillLoadResolver: () => void;\n public constructor() {\n this.initRelevanceInspector();\n this.commonInterfaceHelper = new CommonAtomicInterfaceHelper(\n this,\n 'CoveoAtomic'\n );\n this.store = createSearchStore();\n ({\n promise: this.componentWillLoadCalledPromise,\n resolve: this.componentWillLoadResolver,\n } = Promise.withResolvers<void>());\n const {promise, resolve} = Promise.withResolvers<void>();\n this.i18Initialized = promise;\n this.i18n = i18next.createInstance(undefined, resolve);\n }\n\n public connectedCallback() {\n this.store.setLoadingFlag(FirstSearchExecutedFlag);\n this.updateMobileBreakpoint();\n }\n\n componentWillLoad() {\n if (this.CspNonce) {\n setNonce(this.CspNonce);\n }\n this.initAriaLive();\n this.initFieldsToInclude();\n this.componentWillLoadResolver();\n }\n\n public updateSearchConfiguration(\n updatedProp: 'searchHub' | 'pipeline',\n newValue: string | undefined\n ) {\n if (!this.commonInterfaceHelper.engineIsCreated(this.engine)) {\n return;\n }\n\n if (this.engine.state[updatedProp] === newValue) {\n return;\n }\n\n const {updateSearchConfiguration} = loadSearchConfigurationActions(\n this.engine\n );\n this.engine.dispatch(\n updateSearchConfiguration({\n [updatedProp]: newValue,\n })\n );\n }\n\n @Watch('searchHub')\n public updateSearchHub() {\n this.updateSearchConfiguration('searchHub', this.searchHub ?? 'default');\n }\n\n @Watch('pipeline')\n public updatePipeline() {\n this.updateSearchConfiguration('pipeline', this.pipeline);\n }\n\n @Watch('analytics')\n public toggleAnalytics() {\n if (!this.commonInterfaceHelper.engineIsCreated(this.engine)) {\n return;\n }\n\n this.commonInterfaceHelper.onAnalyticsChange();\n }\n\n @Watch('language')\n public updateLanguage() {\n if (!this.commonInterfaceHelper.engineIsCreated(this.engine)) {\n return;\n }\n\n const {updateSearchConfiguration} = loadSearchConfigurationActions(\n this.engine\n );\n this.engine.dispatch(\n updateSearchConfiguration({\n locale: this.language,\n })\n );\n return this.commonInterfaceHelper.onLanguageChange();\n }\n\n @Watch('iconAssetsPath')\n public updateIconAssetsPath() {\n this.store.state.iconAssetsPath = this.iconAssetsPath;\n }\n\n public disconnectedCallback() {\n this.unsubscribeUrlManager();\n this.unsubscribeSearchStatus();\n window.removeEventListener('hashchange', this.onHashChange);\n }\n\n @Listen('atomic/initializeComponent')\n public handleInitialization(event: InitializeEvent) {\n this.commonInterfaceHelper.onComponentInitializing(event);\n }\n\n @Listen('atomic/scrollToTop')\n public scrollToTop() {\n const scrollContainerElement = document.querySelector(this.scrollContainer);\n if (!scrollContainerElement) {\n this.bindings.engine.logger.warn(\n `Could not find the scroll container with the selector \"${this.scrollContainer}\". This will prevent UX interactions that require a scroll from working correctly. Please check the CSS selector in the scrollContainer option`\n );\n return;\n }\n\n scrollContainerElement.scrollIntoView({behavior: 'smooth'});\n }\n\n @Listen('atomic/relevanceInspector/close')\n public closeRelevanceInspector() {\n this.relevanceInspectorIsOpen = false;\n }\n\n /**\n * Initializes the connection with the headless search engine using options for `accessToken` (required), `organizationId` (required), `environment` (defaults to `prod`), and `renewAccessToken`.\n */\n @Method() public initialize(options: InitializationOptions) {\n return this.internalInitialization(() => this.initEngine(options));\n }\n\n /**\n * Initializes the connection with an already preconfigured [headless search engine](https://docs.coveo.com/en/headless/latest/reference/search/), as opposed to the `initialize` method, which will internally create a new search engine instance.\n * This bypasses the properties set on the component, such as analytics, searchHub, pipeline, language, timezone & logLevel.\n */\n @Method() public initializeWithSearchEngine(engine: SearchEngine) {\n if (this.pipeline && this.pipeline !== engine.state.pipeline) {\n console.warn(\n mismatchedInterfaceAndEnginePropError('search', 'query pipeline')\n );\n }\n if (this.searchHub && this.searchHub !== engine.state.searchHub) {\n console.warn(\n mismatchedInterfaceAndEnginePropError('search', 'search hub')\n );\n }\n return this.internalInitialization(() => (this.engine = engine));\n }\n\n /**\n *\n * Executes the first search and logs the interface load event to analytics, after initializing connection to the headless search engine.\n */\n @Method() public async executeFirstSearch() {\n if (!this.commonInterfaceHelper.engineIsCreated(this.engine)) {\n return;\n }\n\n if (!this.initialized) {\n console.error(\n 'You have to wait until the \"initialize\" promise is fulfilled before executing a search.',\n this.host\n );\n return;\n }\n\n const safeStorage = new SafeStorage();\n const standaloneSearchBoxData =\n safeStorage.getParsedJSON<StandaloneSearchBoxData | null>(\n StorageItems.STANDALONE_SEARCH_BOX_DATA,\n null\n );\n\n if (!standaloneSearchBoxData) {\n this.engine.executeFirstSearch();\n return;\n }\n\n safeStorage.removeItem(StorageItems.STANDALONE_SEARCH_BOX_DATA);\n const {updateQuery} = loadQueryActions(this.engine!);\n const {value, enableQuerySyntax, analytics} = standaloneSearchBoxData;\n this.engine!.dispatch(updateQuery({q: value, enableQuerySyntax}));\n this.engine.executeFirstSearchAfterStandaloneSearchBoxRedirect(analytics);\n }\n\n public get bindings(): Bindings {\n return {\n engine: this.engine!,\n i18n: this.i18n,\n store: this.store,\n interfaceElement: this.host,\n createStyleElement: () => {\n const styleTag = document.createElement('style');\n if (this.CspNonce) {\n styleTag.setAttribute('nonce', this.CspNonce);\n }\n return styleTag;\n },\n createScriptElement: () => {\n const styleTag = document.createElement('script');\n if (this.CspNonce) {\n styleTag.setAttribute('nonce', this.CspNonce);\n }\n return styleTag;\n },\n };\n }\n\n private initFieldsToInclude() {\n const fields = EcommerceDefaultFieldsToInclude.concat(this.fieldsToInclude);\n this.store.addFieldsToInclude(fields);\n }\n\n public registerFieldsToInclude() {\n this.engine?.dispatch(\n loadFieldActions(this.engine!).registerFieldsToInclude(\n this.store.state.fieldsToInclude\n )\n );\n }\n\n private updateMobileBreakpoint() {\n const breakpoint = this.host.querySelector(\n 'atomic-search-layout'\n )?.mobileBreakpoint;\n if (breakpoint) {\n this.store.state.mobileBreakpoint = breakpoint;\n }\n }\n\n private initEngine(options: InitializationOptions) {\n const searchConfig = this.getSearchConfiguration(options);\n const analyticsConfig = getAnalyticsConfig(\n options,\n this.analytics,\n this.store\n );\n try {\n this.engine = buildSearchEngine({\n configuration: {\n ...options,\n search: searchConfig,\n analytics: analyticsConfig,\n },\n loggerOptions: {\n level: this.logLevel,\n },\n });\n } catch (error) {\n this.error = error as Error;\n throw error;\n }\n }\n\n private getSearchConfiguration(options: InitializationOptions) {\n const searchConfigFromProps = {\n searchHub: this.searchHub ?? 'default',\n pipeline: this.pipeline,\n locale: this.language,\n timezone: this.timezone,\n };\n\n if (options.search) {\n return {\n ...searchConfigFromProps,\n ...options.search,\n };\n }\n\n return searchConfigFromProps;\n }\n\n private get fragment() {\n return window.location.hash.slice(1);\n }\n\n private initUrlManager() {\n if (!this.reflectStateInUrl) {\n return;\n }\n\n this.urlManager = buildUrlManager(this.engine!, {\n initialState: {fragment: this.fragment},\n });\n\n this.unsubscribeUrlManager = this.urlManager.subscribe(() =>\n this.updateHash()\n );\n\n window.addEventListener('hashchange', this.onHashChange);\n }\n\n private initAriaLive() {\n if (\n Array.from(this.host.children).some(\n (element) => element.tagName === 'ATOMIC-ARIA-LIVE'\n )\n ) {\n return;\n }\n const ariaLive = document.createElement('atomic-aria-live');\n this.host.prepend(ariaLive);\n }\n\n private initRelevanceInspector() {\n if (this.enableRelevanceInspector) {\n this.host.addEventListener('dblclick', (e) => {\n if (e.altKey) {\n this.relevanceInspectorIsOpen = !this.relevanceInspectorIsOpen;\n }\n });\n }\n }\n\n private initSearchStatus() {\n this.searchStatus = buildSearchStatus(this.engine!);\n this.unsubscribeSearchStatus = this.searchStatus.subscribe(() => {\n const hasNoResultsAfterInitialSearch =\n !this.searchStatus.state.hasResults &&\n this.searchStatus.state.firstSearchExecuted &&\n !this.searchStatus.state.hasError;\n\n this.host.classList.toggle(\n noResultsSelector,\n hasNoResultsAfterInitialSearch\n );\n\n this.host.classList.toggle(\n errorSelector,\n this.searchStatus.state.hasError\n );\n\n this.host.classList.toggle(\n firstSearchExecutedSelector,\n this.searchStatus.state.firstSearchExecuted\n );\n\n if (\n this.searchStatus.state.firstSearchExecuted &&\n this.store.hasLoadingFlag(FirstSearchExecutedFlag)\n ) {\n this.store.unsetLoadingFlag(FirstSearchExecutedFlag);\n }\n });\n }\n\n private updateHash() {\n const newFragment = this.urlManager.state.fragment;\n\n if (!this.searchStatus.state.firstSearchExecuted) {\n history.replaceState(null, document.title, `#${newFragment}`);\n this.bindings.engine.logger.info(`History replaceState #${newFragment}`);\n\n return;\n }\n\n history.pushState(null, document.title, `#${newFragment}`);\n this.bindings.engine.logger.info(`History pushState #${newFragment}`);\n }\n\n private onHashChange = () => {\n this.urlManager.synchronize(this.fragment);\n };\n\n private async internalInitialization(initEngine: () => void) {\n await this.componentWillLoadCalledPromise;\n await Promise.all([\n this.commonInterfaceHelper.onInitialization(initEngine),\n this.i18Initialized,\n ]);\n await this.updateLanguage();\n markParentAsReady(this.host);\n this.pipeline = this.engine!.state.pipeline;\n this.searchHub = this.engine!.state.searchHub;\n this.initSearchStatus();\n this.initUrlManager();\n this.initialized = true;\n }\n\n public render() {\n return [\n this.engine && this.enableRelevanceInspector && (\n <atomic-relevance-inspector\n open={this.relevanceInspectorIsOpen}\n bindings={this.bindings}\n ></atomic-relevance-inspector>\n ),\n <slot></slot>,\n ];\n }\n}\n"],"version":3}
@@ -45,9 +45,9 @@ const AtomicSmartSnippetFeedbackModal = /*@__PURE__*/ proxyCustomElement(class A
45
45
  }
46
46
  render() {
47
47
  updateBreakpoints(this.host);
48
- return (h("atomic-modal", { key: '836bcadd40b303488223df26d7c0f5554f2db6c6', fullscreen: false, source: this.source, container: this.host, isOpen: this.isOpen, close: () => this.close(), exportparts: ATOMIC_MODAL_EXPORT_PARTS }, h(SmartSnippetFeedbackModalHeader, { key: '1217615617e3f41ef061461116f5d054040d977a', i18n: this.bindings.i18n }), h(SmartSnippetFeedbackModalBody, { key: '084f5eed70bdaab992ae6d1573a753cc8da0bc28', formId: this.formId, onSubmit: (e) => this.sendFeedback(e) }, h(SmartSnippetFeebackModalOptions, { key: 'b94fbcad5e3881854282c6df35b6552c558452ed', i18n: this.bindings.i18n }, smartSnippetFeedbackOptions.map(({ id, localeKey, correspondingAnswer }) => (h(SmartSnippetFeedbackModalOption, { correspondingAnswer: correspondingAnswer, currentAnswer: this.currentAnswer, i18n: this.bindings.i18n, id: id, localeKey: localeKey, onChange: () => {
48
+ return (h("atomic-modal", { key: 'd726b6918e6b72aaa16a0f1ba6336a217354a0fe', fullscreen: false, source: this.source, container: this.host, isOpen: this.isOpen, close: () => this.close(), exportparts: ATOMIC_MODAL_EXPORT_PARTS }, h(SmartSnippetFeedbackModalHeader, { key: '0393d4dc998024b0b21b7434c30c02154bac49f9', i18n: this.bindings.i18n }), h(SmartSnippetFeedbackModalBody, { key: '910e898aa43e41bf655d66377f0b01915cdcfa56', formId: this.formId, onSubmit: (e) => this.sendFeedback(e) }, h(SmartSnippetFeebackModalOptions, { key: 'ed05bc844a7c992842c6c766b47a20dbb262f03b', i18n: this.bindings.i18n }, smartSnippetFeedbackOptions.map(({ id, localeKey, correspondingAnswer }) => (h(SmartSnippetFeedbackModalOption, { correspondingAnswer: correspondingAnswer, currentAnswer: this.currentAnswer, i18n: this.bindings.i18n, id: id, localeKey: localeKey, onChange: () => {
49
49
  this.currentAnswer = correspondingAnswer;
50
- } })))), h(SmartSnippetFeedbackModalDetails, { key: 'e19ba2cf9a1ea90b369d9ec39e7a0b54f0a9ad4c', currentAnswer: this.currentAnswer, i18n: this.bindings.i18n, setDetailsInputRef: (ref) => (this.detailsInputRef = ref) })), h(SmartSnippetFeedbackModalFooter, { key: 'b8d8fc82351c15d659328c373f1e51d5e5393f01', formId: this.formId, i18n: this.bindings.i18n, onClick: () => this.close() })));
50
+ } })))), h(SmartSnippetFeedbackModalDetails, { key: '69872a59dd3d8b9a717c44cc5134ef2d26abe31b', currentAnswer: this.currentAnswer, i18n: this.bindings.i18n, setDetailsInputRef: (ref) => (this.detailsInputRef = ref) })), h(SmartSnippetFeedbackModalFooter, { key: 'a7ee465cc5c0823b5dd082189a923e692efeac29', formId: this.formId, i18n: this.bindings.i18n, onClick: () => this.close() })));
51
51
  }
52
52
  close() {
53
53
  this.isOpen = false;
@@ -117,8 +117,8 @@ const AtomicSortDropdown$1 = /*@__PURE__*/ proxyCustomElement(class AtomicSortDr
117
117
  const { hasError, hasResults, firstSearchExecuted } = this.searchStatusState;
118
118
  const { bindings: { i18n }, id, } = this;
119
119
  return [
120
- h(SortGuard, { key: 'c4710486ab41fc6759c07d5850c8e83bb9a37160', firstSearchExecuted: firstSearchExecuted, hasError: hasError, hasResults: hasResults }, h(SortContainer, { key: '653c93dbd9d5b3535f8ddb808f4cdfba0026613c' }, h(SortLabel, { key: 'a9c6c2a860400c3f6c07eda8be3a34a2469bec71', i18n: i18n, id: id }), h(SortSelect, { key: '8f4826457092ffb87bc9292a9d8276b232f3d99b', i18n: i18n, id: id, onSelect: (evt) => this.select(evt) }, this.options.map(({ label, criteria, expression }) => (h(SortOption, { i18n: i18n, label: label, selected: this.sort.isSortedBy(criteria), value: expression })))))),
121
- h("slot", { key: 'd36b41c41973b6fda29d7ba6b0ec3c1eacde7224' }),
120
+ h(SortGuard, { key: '6f57a441536912eb9cfa9e0543aab1cada17652f', firstSearchExecuted: firstSearchExecuted, hasError: hasError, hasResults: hasResults }, h(SortContainer, { key: 'a96a5e0baf52f81b52b5718a175e78e81a901eda' }, h(SortLabel, { key: '8da2be7f92dc9701d3463733521e0ff83c0bbf18', i18n: i18n, id: id }), h(SortSelect, { key: '10c05dfbe5a75e110d94241937daf2abaf43782d', i18n: i18n, id: id, onSelect: (evt) => this.select(evt) }, this.options.map(({ label, criteria, expression }) => (h(SortOption, { i18n: i18n, label: label, selected: this.sort.isSortedBy(criteria), value: expression })))))),
121
+ h("slot", { key: 'bd0023f80fbfb23471410a1ab776d88825799f8f' }),
122
122
  ];
123
123
  }
124
124
  get host() { return this; }
@@ -47,7 +47,7 @@ const AtomicSortExpression$1 = /*@__PURE__*/ proxyCustomElement(class AtomicSort
47
47
  const dropdownComponent = 'atomic-sort-dropdown';
48
48
  if (!this.host.closest(dropdownComponent)) {
49
49
  const error = new Error(`The "${this.host.nodeName.toLowerCase()}" component has to be used inside an ${dropdownComponent} element.`);
50
- return (h("atomic-component-error", { key: '278d83f4f6b5d95041fe199f0a911e360eb5823c', element: this.host, error: error }));
50
+ return (h("atomic-component-error", { key: '31fb9732117546df8d9701fe32794ab9657f2321', element: this.host, error: error }));
51
51
  }
52
52
  }
53
53
  get host() { return this; }
@@ -59,7 +59,7 @@ const AtomicTabManager$1 = /*@__PURE__*/ proxyCustomElement(class AtomicTabManag
59
59
  });
60
60
  }
61
61
  render() {
62
- return (h(Host, { key: '7cd0c527958f8e7d567757a2d7a58be8d1a9506a' }, h("atomic-tab-bar", { key: '7c6da82acd2aa8b2bca0099342cb45f63c6b9399' }, h("div", { key: 'cee2ac96ea7cabfa37139590d8279cb04edc75bf', role: "list", "aria-label": "tab-area", part: "tab-area", class: "border-neutral mb-2 flex w-full flex-row border-b" }, this.tabs.map((tab) => (h("atomic-tab-button", { active: this.tabManagerState.activeTab === tab.name, label: this.bindings.i18n.t(tab.label, {
62
+ return (h(Host, { key: '77c6567889c905ab19578a954d2c05785d08b601' }, h("atomic-tab-bar", { key: '5545d34dfdd6483dca6bc81644343bb8c9a2c995' }, h("div", { key: 'f155993bb038638df4503c31e2ecb8a59d1eafa8', role: "list", "aria-label": "tab-area", part: "tab-area", class: "border-neutral mb-2 flex w-full flex-row border-b" }, this.tabs.map((tab) => (h("atomic-tab-button", { active: this.tabManagerState.activeTab === tab.name, label: this.bindings.i18n.t(tab.label, {
63
63
  defaultValue: tab.label,
64
64
  }), select: () => {
65
65
  if (!tab.tabController.state.isActive) {
@@ -1,3 +1,3 @@
1
1
  const css = `/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */
2
2
  [part=breadcrumb-label].excluded,[part=breadcrumb-value].excluded{color:var(--atomic-error);text-decoration:line-through}[part=breadcrumb-value]:before{content:" "}`;
3
- export default [css];
3
+ export default css;
@@ -1,6 +1,8 @@
1
+ import { augmentAnalyticsConfigWithAtomicVersion } from '../../common/interface/analytics-config';
1
2
  export function getAnalyticsConfig(commerceEngineConfig, enabled) {
2
3
  return {
3
4
  enabled,
4
5
  ...commerceEngineConfig.analytics,
6
+ ...augmentAnalyticsConfigWithAtomicVersion(),
5
7
  };
6
8
  }
@@ -4,17 +4,20 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { buildCommerceEngine, buildContext, buildProductListing, buildSearch, loadQueryActions, } from '@coveo/headless/commerce';
7
+ import { buildCommerceEngine, buildContext, buildProductListing, buildSearch, loadConfigurationActions, loadQueryActions, } from '@coveo/headless/commerce';
8
8
  import { provide } from '@lit/context';
9
9
  import i18next from 'i18next';
10
10
  import { html, LitElement, unsafeCSS } from 'lit';
11
11
  import { customElement, property, state } from 'lit/decorators.js';
12
+ import { booleanConverter } from "../../../converters/boolean-converter";
13
+ import { errorGuard } from "../../../decorators/error-guard";
12
14
  import { watch } from "../../../decorators/watch";
13
15
  import { withTailwindStyles } from "../../../decorators/with-tailwind-styles.js";
14
16
  import { markParentAsReady } from "../../../utils/init-queue";
15
17
  import { SafeStorage, StorageItems, } from "../../../utils/local-storage-utils";
16
18
  import { ChildrenUpdateCompleteMixin } from '../../../mixins/children-update-complete-mixin';
17
- import { CommonAtomicInterfaceHelper, } from '../../common/interface/interface-common';
19
+ import { augmentAnalyticsConfigWithAtomicVersion } from '../../common/interface/analytics-config';
20
+ import { InterfaceController, } from '../../common/interface/interface-controller';
18
21
  import { bindingsContext } from '../../context/bindings-context';
19
22
  import { createCommerceStore, } from '../atomic-commerce-interface/store';
20
23
  import { errorSelector, firstSearchExecutedSelector, noProductsSelector, } from '../atomic-commerce-layout/commerce-layout';
@@ -34,6 +37,7 @@ let AtomicCommerceInterface = class AtomicCommerceInterface extends ChildrenUpda
34
37
  constructor() {
35
38
  super();
36
39
  this.initialized = false;
40
+ this.interfaceController = new InterfaceController(this, 'CoveoAtomic');
37
41
  /**
38
42
  * The type of the interface.
39
43
  * - 'search': Indicates that the interface is used for Search.
@@ -67,13 +71,12 @@ let AtomicCommerceInterface = class AtomicCommerceInterface extends ChildrenUpda
67
71
  */
68
72
  this.iconAssetsPath = './assets';
69
73
  this.handleInitialization = (event) => {
70
- this.commonInterfaceHelper.onComponentInitializing(event);
74
+ this.interfaceController.onComponentInitializing(event);
71
75
  };
72
76
  this.bindings = {};
73
77
  this.onHashChange = () => {
74
78
  this.urlManager.synchronize(this.fragment);
75
79
  };
76
- this.commonInterfaceHelper = new CommonAtomicInterfaceHelper(this, 'CoveoAtomic');
77
80
  this.store = createCommerceStore(this.type);
78
81
  const { promise, resolve } = Promise.withResolvers();
79
82
  this.i18Initialized = promise;
@@ -87,16 +90,16 @@ let AtomicCommerceInterface = class AtomicCommerceInterface extends ChildrenUpda
87
90
  this.addEventListener('atomic/scrollToTop', this.scrollToTop);
88
91
  }
89
92
  toggleAnalytics() {
90
- this.commonInterfaceHelper.onAnalyticsChange();
93
+ this.interfaceController.onAnalyticsChange();
91
94
  }
92
95
  updateLanguage() {
93
- if (!this.commonInterfaceHelper.engineIsCreated(this.engine) ||
96
+ if (!this.interfaceController.engineIsCreated(this.engine) ||
94
97
  !this.language ||
95
98
  !this.context) {
96
99
  return;
97
100
  }
98
101
  this.context.setLanguage(this.language);
99
- return this.commonInterfaceHelper.onLanguageChange();
102
+ return this.interfaceController.onLanguageChange();
100
103
  }
101
104
  updateIconAssetsPath() {
102
105
  this.store.state.iconAssetsPath = this.iconAssetsPath;
@@ -114,10 +117,6 @@ let AtomicCommerceInterface = class AtomicCommerceInterface extends ChildrenUpda
114
117
  window.removeEventListener('hashchange', this.onHashChange);
115
118
  this.removeEventListener('atomic/initializeComponent', this.handleInitialization);
116
119
  this.removeEventListener('atomic/scrollToTop', this.scrollToTop);
117
- const ariaLive = this.querySelector('atomic-aria-live');
118
- if (ariaLive) {
119
- ariaLive.remove();
120
- }
121
120
  }
122
121
  updateMobileBreakpoint() {
123
122
  const breakpoint = this.querySelector('atomic-commerce-layout')?.mobileBreakpoint;
@@ -144,6 +143,10 @@ let AtomicCommerceInterface = class AtomicCommerceInterface extends ChildrenUpda
144
143
  * This bypasses the properties set on the component, such as analytics and language.
145
144
  */
146
145
  initializeWithEngine(engine) {
146
+ engine.dispatch(loadConfigurationActions(engine).updateAnalyticsConfiguration({
147
+ trackingId: engine.configuration.analytics.trackingId,
148
+ ...augmentAnalyticsConfigWithAtomicVersion(),
149
+ }));
147
150
  return this.internalInitialization(() => {
148
151
  this.engine = engine;
149
152
  });
@@ -153,7 +156,7 @@ let AtomicCommerceInterface = class AtomicCommerceInterface extends ChildrenUpda
153
156
  * Executes the first request after initializing connection to the headless commerce engine.
154
157
  */
155
158
  async executeFirstRequest() {
156
- if (!this.commonInterfaceHelper.engineIsCreated(this.engine)) {
159
+ if (!this.interfaceController.engineIsCreated(this.engine)) {
157
160
  return;
158
161
  }
159
162
  if (!this.initialized) {
@@ -178,10 +181,9 @@ let AtomicCommerceInterface = class AtomicCommerceInterface extends ChildrenUpda
178
181
  }
179
182
  async internalInitialization(initEngine) {
180
183
  await Promise.all([
181
- this.commonInterfaceHelper.onInitialization(initEngine),
184
+ this.interfaceController.onInitialization(initEngine),
182
185
  this.i18Initialized,
183
186
  ]);
184
- this.initAriaLive();
185
187
  this.initContext();
186
188
  this.updateLanguage();
187
189
  this.bindings = this.getBindings();
@@ -222,13 +224,6 @@ let AtomicCommerceInterface = class AtomicCommerceInterface extends ChildrenUpda
222
224
  get fragment() {
223
225
  return window.location.hash.slice(1);
224
226
  }
225
- initAriaLive() {
226
- if (Array.from(this.children).some((element) => element.tagName === 'ATOMIC-ARIA-LIVE')) {
227
- return;
228
- }
229
- const ariaLive = document.createElement('atomic-aria-live');
230
- this.prepend(ariaLive);
231
- }
232
227
  initUrlManager() {
233
228
  if (!this.reflectStateInUrl) {
234
229
  return;
@@ -292,9 +287,7 @@ __decorate([
292
287
  __decorate([
293
288
  property({
294
289
  type: Boolean,
295
- converter: {
296
- fromAttribute: (value) => value !== 'false',
297
- },
290
+ converter: booleanConverter,
298
291
  reflect: true,
299
292
  })
300
293
  ], AtomicCommerceInterface.prototype, "analytics", void 0);
@@ -315,9 +308,7 @@ __decorate([
315
308
  type: Boolean,
316
309
  attribute: 'reflect-state-in-url',
317
310
  reflect: true,
318
- converter: {
319
- fromAttribute: (value) => value !== 'false',
320
- },
311
+ converter: booleanConverter,
321
312
  })
322
313
  ], AtomicCommerceInterface.prototype, "reflectStateInUrl", void 0);
323
314
  __decorate([
@@ -342,6 +333,9 @@ __decorate([
342
333
  state(),
343
334
  provide({ context: bindingsContext })
344
335
  ], AtomicCommerceInterface.prototype, "bindings", void 0);
336
+ __decorate([
337
+ errorGuard()
338
+ ], AtomicCommerceInterface.prototype, "render", null);
345
339
  AtomicCommerceInterface = __decorate([
346
340
  customElement('atomic-commerce-interface'),
347
341
  withTailwindStyles
@@ -1,2 +1,2 @@
1
1
  const css = `:host{height:inherit;width:inherit;display:block;&>slot{height:inherit}}`;
2
- export default [css];
2
+ export default css;
@@ -1,2 +1,2 @@
1
1
  const css = `.atomic-modal-opened{overflow-y:hidden}atomic-layout-section[section=search]{grid-area:atomic-section-search}atomic-layout-section[section=facets]{grid-area:atomic-section-facets}atomic-layout-section[section=main]{grid-area:atomic-section-main}atomic-layout-section[section=status]{grid-area:atomic-section-status}atomic-layout-section[section=pagination]{grid-area:atomic-section-pagination}atomic-commerce-layout{grid-template-areas:".atomic-section-search."".atomic-section-main.";grid-template-columns:var(--atomic-layout-spacing-x)minmax(0,1fr)var(--atomic-layout-spacing-x);width:100%;height:100%;display:none;& atomic-layout-section[section=search]{margin:var(--atomic-layout-spacing-y)0;max-width:var(--atomic-layout-max-search-box-input-width,678px);justify-self:center;width:100%;& atomic-commerce-search-box{&::part(suggestions-double-list){width:125%;max-width:var(--atomic-layout-max-search-box-double-suggestions-width,800px)}&::part(suggestions-left){flex-basis:var(--atomic-layout-search-box-left-suggestions-width,30%)}&::part(suggestions-right){flex-basis:calc(100% - var(--atomic-layout-search-box-left-suggestions-width,30%))}}}& atomic-layout-section[section=facets]{display:none;& atomic-commerce-facets *{margin-bottom:var(--atomic-layout-spacing-y)}}& atomic-layout-section[section=main]{margin-bottom:var(--atomic-layout-spacing-y)}& atomic-layout-section[section=horizontal-facets]{margin-bottom:var(--atomic-layout-spacing-y);flex-wrap:wrap;row-gap:.5rem;display:flex;&>atomic-popover{margin-right:.5rem;display:none}}& atomic-layout-section[section=horizontal-facets]>*{max-width:100%}& atomic-layout-section[section=status]{grid-template-areas:"atomic-breadbox atomic-breadbox""atomic-query-summary atomic-sort""atomic-did-you-mean atomic-did-you-mean""atomic-notifications atomic-notifications";justify-content:space-between;display:grid;& atomic-commerce-breadbox{grid-area:atomic-breadbox}& atomic-commerce-query-summary{grid-area:atomic-query-summary;align-self:center;overflow:hidden}& atomic-commerce-sort-dropdown{grid-area:atomic-sort;justify-self:end}& atomic-commerce-refine-toggle{grid-area:atomic-sort}& atomic-commerce-did-you-mean{grid-area:atomic-did-you-mean}& atomic-commerce-notifications{grid-area:atomic-notifications}}& atomic-layout-section[section=status]>*{margin-top:var(--atomic-layout-spacing-y)}& atomic-layout-section[section=pagination]{flex-direction:column;justify-content:space-between;align-items:center;display:flex;& atomic-commerce-load-more-products{width:100%}&:has(:only-child){justify-content:center}@media only screen and (width>=50rem){&{flex-direction:row}}}& atomic-layout-section[section=pagination]>*{margin-top:var(--atomic-layout-spacing-y)}}`;
2
- export default [css];
2
+ export default css;
@@ -1,3 +1,3 @@
1
1
  const css = `/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */
2
2
  @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%}}}.progress-bar{--tw-gradient-from:var(--atomic-more-results-progress-bar-color-from,var(--atomic-primary-dark));--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position));--tw-gradient-to:var(--atomic-more-results-progress-bar-color-to,var(--atomic-primary-light))}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}`;
3
- export default [css];
3
+ export default css;
@@ -1,3 +1,3 @@
1
1
  const css = `/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */
2
2
  @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid}}}.list-wrapper.placeholder{& .result-component,& table.list-root{display:none}}.list-wrapper:not(.placeholder){& atomic-result-placeholder,& atomic-result-table-placeholder{display:none}}.list-root.loading{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes pulse{50%{opacity:.5}}.list-wrapper.display-table{display:grid;overflow-x:auto}.list-root.display-table{border-spacing:0;border-collapse:separate;border-spacing:0;border-collapse:separate;border-spacing:0;border-collapse:separate;min-width:100%;& th,& td{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);font-family:var(--atomic-font-family);font-size:var(--atomic-text-sm);line-height:var(--tw-leading,calc(1.25/.875));white-space:nowrap;line-height:1rem;&:not(:first-child){border-left:none}&:first-child{min-width:19rem}}& th{background-color:var(--atomic-neutral-light);color:#000;padding:1rem var(--padding);text-align:left;border-bottom:none;font-weight:700;&:first-child{border-top-left-radius:var(--atomic-border-radius-xl)}&:last-child{border-top-right-radius:var(--atomic-border-radius-xl)}}& th,& td{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);font-family:var(--atomic-font-family);font-size:var(--atomic-text-sm);line-height:var(--tw-leading,calc(1.25/.875));white-space:nowrap;line-height:1rem;&:not(:first-child){border-left:none}&:first-child{min-width:19rem}}& th{background-color:var(--atomic-neutral-light);color:#000;padding:1rem var(--padding);text-align:left;border-bottom:none;font-weight:700;&:first-child{border-top-left-radius:var(--atomic-border-radius-xl)}&:last-child{border-top-right-radius:var(--atomic-border-radius-xl)}}& th,& td{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);font-family:var(--atomic-font-family);font-size:var(--atomic-text-sm);line-height:var(--tw-leading,calc(1.25/.875));white-space:nowrap;line-height:1rem;&:not(:first-child){border-left:none}&:first-child{min-width:19rem}}& th{background-color:var(--atomic-neutral-light);color:#000;padding:1rem var(--padding);text-align:left;border-bottom:none;font-weight:700;&:first-child{border-top-left-radius:var(--atomic-border-radius-xl)}&:last-child{border-top-right-radius:var(--atomic-border-radius-xl)}}& td{color:var(--atomic-neutral-dark);vertical-align:top;padding:var(--padding);border-top:none}&.density-comfortable{--padding:2rem}&.density-normal{--padding:1.5rem}&.density-compact{--padding:1rem}}[part~=divider]{margin-bottom:1rem;&:not(:last-child){border-bottom-color:var(--atomic-neutral);padding-bottom:1rem}}.list-root.display-list{flex-direction:column;display:flex;& .result-component,& atomic-result-placeholder{width:auto}@media (width>=1024px){&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}}@media not all and (width>=1024px){&.image-large{grid-template-columns:minmax(auto,35rem);justify-content:space-evenly;display:grid;&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}}&.image-small,&.image-icon,&.image-none{grid-row-gap:1rem;& [part~=outline]{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);border-radius:1rem;padding:1rem}& atomic-result-placeholder{border-color:#0000}}}}:host{& [part~=outline][part~=result-list-grid-clickable-container]{border:1px solid #0000;border-radius:1rem;padding:1rem;transition:all .12s ease-out;position:relative;&:hover{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);box-shadow:0px 10px 25px var(--atomic-neutral);cursor:pointer}}& [part~=outline][part~=result-list-grid-clickable-container]{border:1px solid #0000;border-radius:1rem;padding:1rem;transition:all .12s ease-out;position:relative;&:hover{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);box-shadow:0px 10px 25px var(--atomic-neutral);cursor:pointer}}& [part~=outline][part~=result-list-grid-clickable-container]{border:1px solid #0000;border-radius:1rem;padding:1rem;transition:all .12s ease-out;position:relative;&:hover{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);box-shadow:0px 10px 25px var(--atomic-neutral);cursor:pointer}}& [part=result-list-grid-clickable]:focus-visible{border-style:var(--tw-border-style);border-width:2px;border-color:var(--atomic-primary);color:var(--atomic-primary);cursor:pointer;text-align:center;border-radius:2px;text-decoration:underline;display:inline-block;position:absolute}& [part=result-list-grid-clickable]:not(:focus){clip:rect(1px,1px,1px,1px);padding:0;position:absolute;overflow:hidden}& .list-root.display-grid{justify-content:space-evenly;display:grid;& .result-component{box-sizing:border-box;height:100%}}& .list-root.display-grid{justify-content:space-evenly;display:grid;& .result-component{box-sizing:border-box;height:100%}}& .list-wrapper{word-break:break-word}& .list-root.display-grid{justify-content:space-evenly;display:grid;& .result-component{box-sizing:border-box;height:100%}}& .list-root.display-grid{@media (width>=1024px){&{grid-template-columns:repeat(auto-fit,minmax(17rem,1fr))}&.density-comfortable{grid-row-gap:4rem;grid-column-gap:1.5rem}&.density-normal,&.density-compact{grid-row-gap:3rem;grid-column-gap:1.5rem}&.image-large{grid-template-columns:repeat(auto-fill,minmax(19rem,1fr))}&.image-small{@media not all and (width>=1024px){&{grid-template-columns:repeat(3,1fr)}}@media (width>=1024px){&{grid-template-columns:repeat(3,1fr)}}@media (width>=1280px){&{grid-template-columns:repeat(4,1fr)}}}}}& .list-root.display-grid{@media (width>=1024px){&{grid-template-columns:repeat(auto-fit,minmax(17rem,1fr))}&.density-comfortable{grid-row-gap:4rem;grid-column-gap:1.5rem}&.density-normal,&.density-compact{grid-row-gap:3rem;grid-column-gap:1.5rem}&.image-large{grid-template-columns:repeat(auto-fill,minmax(19rem,1fr))}&.image-small{@media not all and (width>=1024px){&{grid-template-columns:repeat(3,1fr)}}@media (width>=1024px){&{grid-template-columns:repeat(3,1fr)}}@media (width>=1280px){&{grid-template-columns:repeat(4,1fr)}}}}}& .list-root.display-grid{@media (width>=1024px){&{grid-template-columns:repeat(auto-fit,minmax(17rem,1fr))}&.density-comfortable{grid-row-gap:4rem;grid-column-gap:1.5rem}&.density-normal,&.density-compact{grid-row-gap:3rem;grid-column-gap:1.5rem}&.image-large{grid-template-columns:repeat(auto-fill,minmax(19rem,1fr))}&.image-small{@media not all and (width>=1024px){&{grid-template-columns:repeat(3,1fr)}}@media (width>=1024px){&{grid-template-columns:repeat(3,1fr)}}@media (width>=1280px){&{grid-template-columns:repeat(4,1fr)}}}}}& .list-root.display-grid{@media not all and (width>=1024px){&.image-large{@media not all and (width>=768px){&{grid-template-columns:minmax(auto,35rem)}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}}@media (width>=768px){&{grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-template-columns:1fr 1fr}& [part~=outline]{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);border-radius:1rem;padding:1rem}& atomic-result-placeholder{border-color:#0000}}}&.image-small,&.image-icon,&.image-none{grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;& [part~=outline]{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);border-radius:1rem;padding:1rem}& atomic-result-placeholder{border-color:#0000}@media not all and (width>=640px){&{grid-template-columns:minmax(0,1fr)}}@media (width>=768px){&{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (width>=1024px){&{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}}}}}& .list-root.display-grid{@media not all and (width>=1024px){&.image-large{@media not all and (width>=768px){&{grid-template-columns:minmax(auto,35rem)}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}}@media (width>=768px){&{grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-template-columns:1fr 1fr}& [part~=outline]{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);border-radius:1rem;padding:1rem}& atomic-result-placeholder{border-color:#0000}}}&.image-small,&.image-icon,&.image-none{grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;& [part~=outline]{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);border-radius:1rem;padding:1rem}& atomic-result-placeholder{border-color:#0000}@media not all and (width>=640px){&{grid-template-columns:minmax(0,1fr)}}@media (width>=768px){&{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (width>=1024px){&{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}}}}}& .list-root.display-grid{@media not all and (width>=1024px){&.image-large{@media not all and (width>=768px){&{grid-template-columns:minmax(auto,35rem)}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}&.density-comfortable{& [part~=outline]{&:before{margin:2rem 0}}}&.density-normal{& [part~=outline]{&:before{margin:1.5rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.75rem 0}}}}&.density-compact{& [part~=outline]{&:before{margin:1rem 0}}@media not all and (width>=1024px){& [part~=outline]{&:before{margin:1.5rem 0}}}}& [part~=outline]{&:before{content:" ";background-color:var(--atomic-neutral);height:1px;display:block}&:first-of-type:before{display:none}}& atomic-result-placeholder{&:before{background-color:#0000}}}@media (width>=768px){&{grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-template-columns:1fr 1fr}& [part~=outline]{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);border-radius:1rem;padding:1rem}& atomic-result-placeholder{border-color:#0000}}}&.image-small,&.image-icon,&.image-none{grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;grid-column-gap:.5rem;grid-row-gap:.5rem;& [part~=outline]{border-style:var(--tw-border-style);border-width:1px;border-color:var(--atomic-neutral);border-radius:1rem;padding:1rem}& atomic-result-placeholder{border-color:#0000}@media not all and (width>=640px){&{grid-template-columns:minmax(0,1fr)}}@media (width>=768px){&{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (width>=1024px){&{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}}}}}}:host{& .result-link{color:var(--atomic-on-background);&:hover,&:focus-visible{color:var(--atomic-primary);text-decoration:underline}&:focus{outline:none}&:visited{color:var(--atomic-visited)}}& .result-grid{grid-template-columns:repeat(5,minmax(0,1fr));justify-items:center;& a{justify-content:center}}& .result-list{flex-direction:column;display:flex;& .result-item{flex-wrap:wrap;width:100%;max-width:600px;display:flex;& .result-details{align-content:center}}}}@media (width>=1024px){:host .result-grid{display:grid}}@media not all and (width>=1024px){:host .result-grid{flex-direction:column;display:flex}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}`;
3
- export default [css];
3
+ export default css;
@@ -1,2 +1,2 @@
1
1
  const css = `:host{overflow:hidden}`;
2
- export default [css];
2
+ export default css;