@coveo/atomic 3.34.0-pre.d34e47bc86 → 3.34.0-pre.d729012f68

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 (1009) 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 -8
  4. package/dist/atomic/components/_index.js +1 -5
  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-citation.js +1 -1
  8. package/dist/atomic/components/atomic-facet-manager.js +1 -1
  9. package/dist/atomic/components/atomic-facet.js +1 -1
  10. package/dist/atomic/components/atomic-folded-result-list.js +1 -2
  11. package/dist/atomic/components/atomic-folded-result-list.js.map +1 -1
  12. package/dist/atomic/components/atomic-format-currency.js +1 -1
  13. package/dist/atomic/components/atomic-format-number.js +1 -1
  14. package/dist/atomic/components/atomic-format-unit.js +1 -1
  15. package/dist/atomic/components/atomic-generated-answer-feedback-modal.js +1 -1
  16. package/dist/atomic/components/atomic-html2.js +1 -1
  17. package/dist/atomic/components/atomic-insight-edit-toggle.js +1 -1
  18. package/dist/atomic/components/atomic-insight-facet.js +1 -1
  19. package/dist/atomic/components/atomic-insight-folded-result-list.js +2 -3
  20. package/dist/atomic/components/atomic-insight-folded-result-list.js.map +1 -1
  21. package/dist/atomic/components/atomic-insight-full-search-button.js +1 -1
  22. package/dist/atomic/components/atomic-insight-history-toggle.js +2 -2
  23. package/dist/atomic/components/atomic-insight-history-toggle.js.map +1 -1
  24. package/dist/atomic/components/atomic-insight-no-results.js +1 -1
  25. package/dist/atomic/components/atomic-insight-numeric-facet.js +1 -1
  26. package/dist/atomic/components/atomic-insight-pager.js +41 -5
  27. package/dist/atomic/components/atomic-insight-pager.js.map +1 -1
  28. package/dist/atomic/components/atomic-insight-query-error.js +1 -1
  29. package/dist/atomic/components/atomic-insight-refine-modal2.js +2 -2
  30. package/dist/atomic/components/atomic-insight-refine-toggle.js +1 -1
  31. package/dist/atomic/components/atomic-insight-result-attach-to-case-indicator.js +1 -1
  32. package/dist/atomic/components/atomic-insight-result-children.js +1 -1
  33. package/dist/atomic/components/atomic-insight-result-list.js +2 -3
  34. package/dist/atomic/components/atomic-insight-result-list.js.map +1 -1
  35. package/dist/atomic/components/atomic-insight-result-quickview-action.js +1 -1
  36. package/dist/atomic/components/atomic-insight-result2.js +1 -1
  37. package/dist/atomic/components/atomic-insight-search-box.js +2 -2
  38. package/dist/atomic/components/atomic-insight-smart-snippet-feedback-modal2.js +2 -2
  39. package/dist/atomic/components/atomic-insight-tabs.js +1 -1
  40. package/dist/atomic/components/atomic-insight-user-actions-session2.js +1 -1
  41. package/dist/atomic/components/atomic-insight-user-actions-toggle.js +2 -2
  42. package/dist/atomic/components/atomic-insight-user-actions-toggle.js.map +1 -1
  43. package/dist/atomic/components/atomic-ipx-body2.js +2 -2
  44. package/dist/atomic/components/atomic-ipx-button.js +2 -2
  45. package/dist/atomic/components/atomic-ipx-embedded.js +1 -1
  46. package/dist/atomic/components/atomic-ipx-modal.js +2 -2
  47. package/dist/atomic/components/atomic-ipx-recs-list.js +2 -3
  48. package/dist/atomic/components/atomic-ipx-recs-list.js.map +1 -1
  49. package/dist/atomic/components/atomic-ipx-refine-modal2.js +1 -1
  50. package/dist/atomic/components/atomic-ipx-refine-toggle.js +1 -1
  51. package/dist/atomic/components/atomic-ipx-result-link.js +1 -1
  52. package/dist/atomic/components/atomic-ipx-tabs.js +1 -1
  53. package/dist/{esm/sections-ae00b53a.js → atomic/components/atomic-layout-section-utils.js} +1 -1
  54. package/dist/atomic/components/atomic-layout-section-utils.js.map +1 -0
  55. package/dist/atomic/components/atomic-load-more-results.js +1 -1
  56. package/dist/atomic/components/atomic-no-results.js +1 -1
  57. package/dist/atomic/components/atomic-numeric-facet.js +1 -1
  58. package/dist/atomic/components/atomic-query-error.js +1 -1
  59. package/dist/atomic/components/atomic-quickview-modal2.js +23 -23
  60. package/dist/atomic/components/atomic-quickview-modal2.js.map +1 -1
  61. package/dist/atomic/components/atomic-quickview.js +1 -1
  62. package/dist/atomic/components/atomic-recs-error.js +1 -1
  63. package/dist/atomic/components/atomic-recs-list.js +2 -3
  64. package/dist/atomic/components/atomic-recs-list.js.map +1 -1
  65. package/dist/atomic/components/atomic-refine-modal2.js +2 -2
  66. package/dist/atomic/components/atomic-refine-modal2.js.map +1 -1
  67. package/dist/atomic/components/atomic-refine-toggle.js +1 -1
  68. package/dist/atomic/components/atomic-result-children.js +1 -1
  69. package/dist/atomic/components/atomic-result-fields-list.js +1 -1
  70. package/dist/atomic/components/atomic-result-link.js +1 -1
  71. package/dist/atomic/components/atomic-result-list.js +2 -3
  72. package/dist/atomic/components/atomic-result-list.js.map +1 -1
  73. package/dist/atomic/components/atomic-result-placeholder2.js +2 -2
  74. package/dist/atomic/components/atomic-result-table-placeholder2.js +1 -1
  75. package/dist/atomic/components/atomic-search-box-query-suggestions.js +1 -1
  76. package/dist/atomic/components/atomic-search-box-query-suggestions2.js +38 -3
  77. package/dist/atomic/components/atomic-search-box-query-suggestions2.js.map +1 -1
  78. package/dist/atomic/components/atomic-search-box.js +5 -11
  79. package/dist/atomic/components/atomic-search-box.js.map +1 -1
  80. package/dist/atomic/components/atomic-smart-snippet-answer2.js +1 -1
  81. package/dist/atomic/components/atomic-smart-snippet-collapse-wrapper2.js +2 -2
  82. package/dist/atomic/components/atomic-smart-snippet-expandable-answer2.js +1 -1
  83. package/dist/atomic/components/atomic-smart-snippet-feedback-modal2.js +2 -2
  84. package/dist/atomic/components/atomic-smart-snippet-source2.js +1 -1
  85. package/dist/atomic/components/atomic-sort-dropdown.js +2 -2
  86. package/dist/atomic/components/atomic-sort-expression.js +1 -1
  87. package/dist/atomic/components/atomic-stencil-facet-date-input.js +3 -3
  88. package/dist/atomic/components/atomic-suggestion-renderer2.js +1 -1
  89. package/dist/atomic/components/atomic-tab-manager.js +1 -1
  90. package/dist/atomic/components/clock.js +2 -2
  91. package/dist/atomic/components/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.js +17 -32
  92. package/dist/atomic/components/components/commerce/atomic-commerce-pager/atomic-commerce-pager.js +25 -11
  93. package/dist/atomic/components/components/common/atomic-layout-section/layout.js +1 -1
  94. package/dist/atomic/components/components/common/item-list/item-template-provider.js +28 -0
  95. package/dist/atomic/components/components/common/layout/display-options.js +1 -1
  96. package/dist/atomic/components/components/common/layout/{sections.js → item-layout-sections.js} +1 -1
  97. package/dist/atomic/components/components/common/product-template/product-template-common.js +1 -1
  98. package/dist/atomic/components/components/common/validate-props-controller/validate-props-controller.js +50 -0
  99. package/dist/atomic/components/components/insight/atomic-insight-layout/insight-layout.js +1 -1
  100. package/dist/atomic/components/components/search/atomic-pager/atomic-pager.js +188 -0
  101. package/dist/atomic/components/components/search/atomic-relevance-inspector/atomic-relevance-inspector.js +100 -0
  102. package/dist/atomic/components/{atomic-search-box-instant-results.js → components/search/atomic-search-box-instant-results/atomic-search-box-instant-results.js} +85 -87
  103. package/dist/atomic/components/components/search/atomic-search-box-recent-queries/atomic-search-box-recent-queries.js +137 -0
  104. package/dist/atomic/components/components/search/atomic-search-interface/atomic-search-interface.js +17 -24
  105. package/dist/atomic/components/components/search/index.js +4 -0
  106. package/dist/atomic/components/components/search/lazy-index.js +4 -0
  107. package/dist/atomic/components/display-options.js +1 -1
  108. package/dist/atomic/components/display-options.js.map +1 -1
  109. package/dist/atomic/components/facet-number-input.js +2 -2
  110. package/dist/atomic/components/global/environment.js +1 -1
  111. package/dist/atomic/components/index.js.map +1 -1
  112. package/dist/atomic/components/insight-layout.js +1 -1
  113. package/dist/atomic/components/insight-layout.js.map +1 -1
  114. package/dist/atomic/components/{sections2.js → item-layout-sections.js} +1 -1
  115. package/dist/atomic/components/item-layout-sections.js.map +1 -0
  116. package/dist/atomic/components/item-template-provider.js +21 -1
  117. package/dist/atomic/components/item-template-provider.js.map +1 -1
  118. package/dist/atomic/components/result-template-common.js +1 -1
  119. package/dist/atomic/components/result-template-common.js.map +1 -1
  120. package/dist/atomic/components/show-hide-button.js +1 -1
  121. package/dist/atomic/components/stencil-button.js +44 -2
  122. package/dist/atomic/components/stencil-button.js.map +1 -1
  123. package/dist/atomic/components/stencil-radio-button.js +1 -2
  124. package/dist/atomic/components/stencil-radio-button.js.map +1 -1
  125. package/dist/atomic/components/tab-button.js +1 -1
  126. package/dist/atomic/components/tab-popover.js +1 -1
  127. package/dist/atomic/components/utils/compare-utils.js +49 -0
  128. package/dist/atomic/p-003fd435.entry.js +2 -0
  129. package/dist/atomic/{p-aa616502.entry.js.map → p-003fd435.entry.js.map} +1 -1
  130. package/dist/atomic/{p-f073a78d.entry.js → p-03e57267.entry.js} +2 -2
  131. package/dist/atomic/p-049357e3.entry.js +2 -0
  132. package/dist/atomic/{p-a130b00b.entry.js.map → p-049357e3.entry.js.map} +1 -1
  133. package/dist/atomic/{p-3c9289b5.js → p-04ebb7ba.js} +2 -2
  134. package/dist/atomic/p-0738db8b.entry.js +2 -0
  135. package/dist/atomic/{p-998393ec.entry.js.map → p-0738db8b.entry.js.map} +1 -1
  136. package/dist/atomic/{p-0f449e9d.entry.js → p-091c589b.entry.js} +2 -2
  137. package/dist/atomic/{p-5d0a3045.js → p-0ab0ceaa.js} +2 -2
  138. package/dist/atomic/{p-8acb1466.entry.js → p-0ae232d5.entry.js} +2 -2
  139. package/dist/atomic/{p-b7cd0342.entry.js → p-0baced30.entry.js} +2 -2
  140. package/dist/atomic/{p-2caa1859.js → p-0e62bdd6.js} +2 -2
  141. package/dist/atomic/p-0e62bdd6.js.map +1 -0
  142. package/dist/atomic/{p-74862002.js → p-0e6f1e14.js} +2 -2
  143. package/dist/atomic/p-0eeda119.entry.js +2 -0
  144. package/dist/atomic/{p-9faad55b.entry.js.map → p-0eeda119.entry.js.map} +1 -1
  145. package/dist/atomic/p-0efabb24.entry.js +2 -0
  146. package/dist/atomic/{p-97829295.entry.js.map → p-0efabb24.entry.js.map} +1 -1
  147. package/dist/atomic/{p-16f4ce98.js → p-0fb39501.js} +2 -2
  148. package/dist/atomic/p-11c2bd3d.entry.js +2 -0
  149. package/dist/atomic/{p-89d8bb0d.entry.js.map → p-11c2bd3d.entry.js.map} +1 -1
  150. package/dist/atomic/p-12bd6e6e.entry.js +2 -0
  151. package/dist/atomic/{p-59b15bd6.entry.js.map → p-12bd6e6e.entry.js.map} +1 -1
  152. package/dist/atomic/{p-d2e8a2d4.js → p-134b7370.js} +2 -2
  153. package/dist/atomic/p-14c7da7d.entry.js +2 -0
  154. package/dist/atomic/p-14c7da7d.entry.js.map +1 -0
  155. package/dist/atomic/{p-ef78082a.js → p-15580d9e.js} +2 -2
  156. package/dist/atomic/p-1ce53a49.entry.js +2 -0
  157. package/dist/atomic/{p-20019654.entry.js.map → p-1ce53a49.entry.js.map} +1 -1
  158. package/dist/atomic/{p-30c09377.entry.js → p-1da7a80f.entry.js} +2 -2
  159. package/dist/atomic/{p-f9dd14b2.entry.js.map → p-1da7a80f.entry.js.map} +1 -1
  160. package/dist/atomic/p-1e678b66.entry.js +2 -0
  161. package/dist/atomic/{p-ce5b896e.entry.js.map → p-1e678b66.entry.js.map} +1 -1
  162. package/dist/atomic/{p-7709fba4.js → p-2250f505.js} +2 -2
  163. package/dist/atomic/p-2250f505.js.map +1 -0
  164. package/dist/atomic/{p-baff6c43.js → p-25660266.js} +2 -2
  165. package/dist/atomic/p-28779acf.entry.js +2 -0
  166. package/dist/atomic/{p-cb3fd0f4.entry.js.map → p-28779acf.entry.js.map} +1 -1
  167. package/dist/atomic/p-2917a899.entry.js +2 -0
  168. package/dist/atomic/p-2917a899.entry.js.map +1 -0
  169. package/dist/atomic/p-2ad5b803.entry.js +2 -0
  170. package/dist/atomic/{p-23d4dc54.entry.js.map → p-2ad5b803.entry.js.map} +1 -1
  171. package/dist/atomic/{p-1201bf3d.entry.js → p-2c084024.entry.js} +2 -2
  172. package/dist/atomic/{p-ee957926.entry.js.map → p-2c084024.entry.js.map} +1 -1
  173. package/dist/atomic/p-2e792916.entry.js +2 -0
  174. package/dist/atomic/{p-4ca51934.entry.js → p-2f258b2c.entry.js} +2 -2
  175. package/dist/atomic/{p-6289adc7.entry.js → p-2f33c5fe.entry.js} +2 -2
  176. package/dist/atomic/{p-93601dc0.entry.js.map → p-2f33c5fe.entry.js.map} +1 -1
  177. package/dist/{esm/atomic-pager.entry.js → atomic/p-2fcbcbcb.entry.js} +2 -117
  178. package/dist/atomic/{p-6abd5b2b.entry.js.map → p-2fcbcbcb.entry.js.map} +1 -1
  179. package/dist/atomic/p-30ea57e8.entry.js +2 -0
  180. package/dist/atomic/{p-3a01a398.entry.js.map → p-30ea57e8.entry.js.map} +1 -1
  181. package/dist/atomic/{p-e3edbf14.entry.js → p-331ad989.entry.js} +2 -2
  182. package/dist/atomic/{p-dbc09018.js → p-340130de.js} +2 -2
  183. package/dist/atomic/{p-df1d50c8.entry.js → p-349c1be8.entry.js} +2 -2
  184. package/dist/atomic/{p-d6e04719.entry.js → p-373448df.entry.js} +2 -2
  185. package/dist/atomic/p-3957401e.entry.js +2 -0
  186. package/dist/atomic/{p-9b2561e8.entry.js.map → p-3957401e.entry.js.map} +1 -1
  187. package/dist/atomic/p-3e32650c.entry.js +2 -0
  188. package/dist/atomic/{p-cdeb5f2a.entry.js.map → p-3e32650c.entry.js.map} +1 -1
  189. package/dist/atomic/{p-037eee11.js → p-3f0e7549.js} +2 -2
  190. package/dist/atomic/p-3f9292b8.entry.js +2 -0
  191. package/dist/atomic/{p-74822069.entry.js.map → p-3f9292b8.entry.js.map} +1 -1
  192. package/dist/atomic/{p-85145c88.entry.js → p-40c113f1.entry.js} +2 -2
  193. package/dist/atomic/{p-a1ee594f.entry.js → p-42b1d51a.entry.js} +2 -2
  194. package/dist/atomic/{p-7cced247.entry.js.map → p-42b1d51a.entry.js.map} +1 -1
  195. package/dist/atomic/p-44cb020c.entry.js +2 -0
  196. package/dist/atomic/p-44cb020c.entry.js.map +1 -0
  197. package/dist/atomic/{p-0f39889d.entry.js → p-455ceefd.entry.js} +2 -2
  198. package/dist/atomic/{p-b6415814.entry.js.map → p-455ceefd.entry.js.map} +1 -1
  199. package/dist/atomic/p-496bcc16.entry.js +2 -0
  200. package/dist/atomic/{p-b320f270.entry.js.map → p-496bcc16.entry.js.map} +1 -1
  201. package/dist/atomic/{p-8103bad3.entry.js → p-49e0400f.entry.js} +2 -2
  202. package/dist/atomic/p-4aec93dd.entry.js +2 -0
  203. package/dist/atomic/{p-1435fb6f.entry.js.map → p-4aec93dd.entry.js.map} +1 -1
  204. package/dist/atomic/{p-f8b608ba.js → p-4bf14d26.js} +2 -2
  205. package/dist/atomic/p-4d9c1439.entry.js +2 -0
  206. package/dist/atomic/{p-4bdc6d5a.entry.js.map → p-4d9c1439.entry.js.map} +1 -1
  207. package/dist/atomic/{p-44ef70b6.entry.js → p-501dbf28.entry.js} +2 -2
  208. package/dist/atomic/p-51fc7578.entry.js +2 -0
  209. package/dist/atomic/{p-fafd5042.entry.js.map → p-51fc7578.entry.js.map} +1 -1
  210. package/dist/atomic/{p-723f76a1.entry.js → p-568393c0.entry.js} +2 -2
  211. package/dist/atomic/{p-2e4628bb.entry.js → p-5dcebd1d.entry.js} +2 -2
  212. package/dist/atomic/{p-62afcf79.entry.js → p-5e9f6f9e.entry.js} +2 -2
  213. package/dist/atomic/{p-367ec37d.entry.js.map → p-5e9f6f9e.entry.js.map} +1 -1
  214. package/dist/atomic/{p-7cced247.entry.js → p-5efd6d67.entry.js} +2 -2
  215. package/dist/atomic/{p-4ae14373.entry.js.map → p-5efd6d67.entry.js.map} +1 -1
  216. package/dist/atomic/p-6185cbeb.entry.js +2 -0
  217. package/dist/atomic/{p-00069a4b.entry.js.map → p-6185cbeb.entry.js.map} +1 -1
  218. package/dist/atomic/p-62e85c20.entry.js +2 -0
  219. package/dist/atomic/p-6425492a.entry.js +2 -0
  220. package/dist/atomic/{p-f936f55e.entry.js.map → p-6425492a.entry.js.map} +1 -1
  221. package/dist/atomic/p-65251cfd.entry.js +2 -0
  222. package/dist/atomic/{p-f76b7ac3.entry.js.map → p-65251cfd.entry.js.map} +1 -1
  223. package/dist/atomic/{p-60498b8e.js → p-68013132.js} +2 -2
  224. package/dist/atomic/p-6c0b388d.entry.js +2 -0
  225. package/dist/atomic/{p-7e9a1a1a.entry.js.map → p-6c0b388d.entry.js.map} +1 -1
  226. package/dist/atomic/{p-c724e6d8.entry.js → p-6e533608.entry.js} +2 -2
  227. package/dist/atomic/p-6efb1f5a.entry.js +2 -0
  228. package/dist/atomic/{p-24fd7df6.entry.js.map → p-6efb1f5a.entry.js.map} +1 -1
  229. package/dist/atomic/{p-93da1f4e.entry.js → p-6f34dd3a.entry.js} +2 -2
  230. package/dist/atomic/p-72382fe2.entry.js +2 -0
  231. package/dist/atomic/{p-4723ffa5.entry.js.map → p-72382fe2.entry.js.map} +1 -1
  232. package/dist/atomic/p-74a87ca1.entry.js +2 -0
  233. package/dist/atomic/{p-30411cd4.entry.js.map → p-74a87ca1.entry.js.map} +1 -1
  234. package/dist/atomic/p-75c37247.js +2 -0
  235. package/dist/atomic/p-75c37247.js.map +1 -0
  236. package/dist/atomic/{p-0610b3e7.entry.js → p-76185607.entry.js} +2 -2
  237. package/dist/atomic/{p-0c0b8d41.entry.js → p-768b172e.entry.js} +2 -2
  238. package/dist/atomic/{p-5c73ebc4.js → p-76cf6545.js} +2 -2
  239. package/dist/atomic/{p-c7af4b9e.entry.js → p-77c4a1ec.entry.js} +2 -2
  240. package/dist/atomic/{p-fdd0aa42.entry.js.map → p-77c4a1ec.entry.js.map} +1 -1
  241. package/dist/atomic/p-7e36bdf2.entry.js +2 -0
  242. package/dist/atomic/{p-62afcf79.entry.js.map → p-7e36bdf2.entry.js.map} +1 -1
  243. package/dist/atomic/{p-a4d277c7.entry.js → p-7fd5b6ac.entry.js} +2 -2
  244. package/dist/atomic/{p-4ae14373.entry.js → p-82833c17.entry.js} +2 -2
  245. package/dist/atomic/{p-c7af4b9e.entry.js.map → p-82833c17.entry.js.map} +1 -1
  246. package/dist/atomic/{p-f9608731.entry.js → p-852a4b38.entry.js} +2 -2
  247. package/dist/atomic/{p-fe59fb2d.entry.js.map → p-852a4b38.entry.js.map} +1 -1
  248. package/dist/atomic/{p-b4ad3036.entry.js → p-85453a90.entry.js} +2 -2
  249. package/dist/atomic/p-8588e8d7.entry.js +2 -0
  250. package/dist/atomic/p-859f9def.entry.js +2 -0
  251. package/dist/atomic/{p-dbc0ce5c.entry.js.map → p-859f9def.entry.js.map} +1 -1
  252. package/dist/atomic/p-874cd83b.entry.js +2 -0
  253. package/dist/atomic/{p-406a288c.entry.js.map → p-874cd83b.entry.js.map} +1 -1
  254. package/dist/atomic/p-87f89279.entry.js +2 -0
  255. package/dist/atomic/{p-1db20a4a.entry.js.map → p-87f89279.entry.js.map} +1 -1
  256. package/dist/atomic/p-8be21e4a.js +2 -0
  257. package/dist/atomic/p-8be21e4a.js.map +1 -0
  258. package/dist/atomic/{p-fafd5042.entry.js → p-8ec02657.entry.js} +2 -2
  259. package/dist/atomic/{p-fa658ef2.entry.js.map → p-8ec02657.entry.js.map} +1 -1
  260. package/dist/atomic/p-8f69b018.entry.js +2 -0
  261. package/dist/atomic/{p-5606819d.entry.js.map → p-8f69b018.entry.js.map} +1 -1
  262. package/dist/atomic/{p-f71b14b2.entry.js → p-9260dd7d.entry.js} +2 -2
  263. package/dist/atomic/{p-00a6ab8c.entry.js → p-9359fd97.entry.js} +2 -2
  264. package/dist/atomic/{p-503ecb6d.js → p-962cbae8.js} +2 -2
  265. package/dist/atomic/{p-577d34ba.entry.js → p-9878ce63.entry.js} +2 -2
  266. package/dist/atomic/{p-ed8e5c4d.entry.js → p-98dd6df1.entry.js} +2 -2
  267. package/dist/atomic/{p-d2d22ab2.entry.js → p-998533bd.entry.js} +2 -2
  268. package/dist/atomic/p-9cc4752e.entry.js +2 -0
  269. package/dist/atomic/{p-4b9a166f.entry.js.map → p-9cc4752e.entry.js.map} +1 -1
  270. package/dist/atomic/{p-5ca21deb.js → p-9ce6063d.js} +2 -2
  271. package/dist/atomic/{p-a428960a.js → p-9dcd5606.js} +2 -2
  272. package/dist/atomic/{p-0b5efb51.entry.js → p-a1e5f767.entry.js} +2 -2
  273. package/dist/atomic/p-a340496e.entry.js +2 -0
  274. package/dist/atomic/{p-47ab6c9f.entry.js.map → p-a340496e.entry.js.map} +1 -1
  275. package/dist/atomic/{p-3622ed6c.js → p-a83c992f.js} +2 -2
  276. package/dist/atomic/p-aee3b2e7.entry.js +2 -0
  277. package/dist/atomic/{p-fe3cd55b.entry.js → p-b2897ed7.entry.js} +2 -2
  278. package/dist/atomic/p-b44addb5.entry.js +2 -0
  279. package/dist/atomic/{p-5f706e3d.entry.js.map → p-b44addb5.entry.js.map} +1 -1
  280. package/dist/atomic/p-b56a3967.entry.js +2 -0
  281. package/dist/atomic/{p-a1ee594f.entry.js.map → p-b56a3967.entry.js.map} +1 -1
  282. package/dist/atomic/{p-36f63642.entry.js → p-bc0ca1fd.entry.js} +2 -2
  283. package/dist/atomic/{p-23d4dc54.entry.js → p-be49928d.entry.js} +2 -2
  284. package/dist/atomic/{p-a1522fe5.entry.js.map → p-be49928d.entry.js.map} +1 -1
  285. package/dist/atomic/{p-45c76d98.entry.js → p-be5f724c.entry.js} +2 -2
  286. package/dist/atomic/{p-0402ee69.entry.js.map → p-be5f724c.entry.js.map} +1 -1
  287. package/dist/atomic/p-beb2ad8e.js +2 -0
  288. package/dist/atomic/{p-82398f4a.js.map → p-beb2ad8e.js.map} +1 -1
  289. package/dist/atomic/p-bf769441.entry.js +2 -0
  290. package/dist/atomic/{p-f9608731.entry.js.map → p-bf769441.entry.js.map} +1 -1
  291. package/dist/atomic/{p-a9383817.entry.js → p-c17c0209.entry.js} +2 -2
  292. package/dist/atomic/{p-93601dc0.entry.js → p-c7aeaa81.entry.js} +2 -2
  293. package/dist/atomic/{p-dfc385b7.entry.js.map → p-c7aeaa81.entry.js.map} +1 -1
  294. package/dist/atomic/{p-8a488991.js → p-ca0e9cd6.js} +2 -2
  295. package/dist/atomic/{p-30411cd4.entry.js → p-ca8dd828.entry.js} +2 -2
  296. package/dist/atomic/{p-6098b906.entry.js.map → p-ca8dd828.entry.js.map} +1 -1
  297. package/dist/atomic/{p-9c7dbbdf.js → p-cc2b2231.js} +1 -1
  298. package/dist/atomic/p-cc2b2231.js.map +1 -0
  299. package/dist/atomic/{p-20cbcfb9.js → p-d365883e.js} +2 -2
  300. package/dist/atomic/{p-2c6f895f.js → p-d4cbd9b1.js} +2 -2
  301. package/dist/atomic/p-d9e60e2b.entry.js +2 -0
  302. package/dist/atomic/p-d9e60e2b.entry.js.map +1 -0
  303. package/dist/atomic/p-da96bb4b.entry.js +2 -0
  304. package/dist/atomic/{p-740cd5bc.entry.js.map → p-da96bb4b.entry.js.map} +1 -1
  305. package/dist/atomic/{p-97748161.js → p-dc28ee14.js} +1 -1
  306. package/dist/{esm/sections-d787040b.js.map → atomic/p-dc28ee14.js.map} +1 -1
  307. package/dist/atomic/{p-367ec37d.entry.js → p-dd604349.entry.js} +2 -2
  308. package/dist/atomic/{p-97538903.entry.js.map → p-dd604349.entry.js.map} +1 -1
  309. package/dist/atomic/{p-c280cd05.js → p-e1cc5150.js} +1 -1
  310. package/dist/atomic/{p-3e38aea6.entry.js → p-e235d7fd.entry.js} +2 -2
  311. package/dist/atomic/{p-30c09377.entry.js.map → p-e235d7fd.entry.js.map} +1 -1
  312. package/dist/atomic/p-e5147a1b.entry.js +2 -0
  313. package/dist/atomic/{p-345c425d.entry.js.map → p-e5147a1b.entry.js.map} +1 -1
  314. package/dist/atomic/{p-27b8404c.js → p-e62fc40e.js} +2 -2
  315. package/dist/atomic/p-e62fc40e.js.map +1 -0
  316. package/dist/atomic/p-e6df0308.entry.js +2 -0
  317. package/dist/atomic/{p-0f39889d.entry.js.map → p-e6df0308.entry.js.map} +1 -1
  318. package/dist/atomic/{p-d1795580.entry.js → p-e7a25b00.entry.js} +2 -2
  319. package/dist/atomic/p-e7b6e3cd.entry.js +2 -0
  320. package/dist/atomic/{p-6289adc7.entry.js.map → p-e7b6e3cd.entry.js.map} +1 -1
  321. package/dist/atomic/p-ebcc0702.entry.js +2 -0
  322. package/dist/atomic/{p-3857d6a3.entry.js.map → p-ebcc0702.entry.js.map} +1 -1
  323. package/dist/atomic/p-f216c09e.entry.js +2 -0
  324. package/dist/atomic/{p-4830b9bb.entry.js.map → p-f216c09e.entry.js.map} +1 -1
  325. package/dist/atomic/{p-93f1d551.entry.js → p-f3b3788c.entry.js} +2 -2
  326. package/dist/atomic/{p-dd35e7ad.entry.js → p-f696f3df.entry.js} +2 -2
  327. package/dist/atomic/p-f909d016.entry.js +2 -0
  328. package/dist/atomic/{p-cafa4083.entry.js.map → p-f909d016.entry.js.map} +1 -1
  329. package/dist/atomic/{p-edd4d5f7.js → p-ff96225e.js} +2 -2
  330. package/dist/cjs/_loader.cjs.js +1 -1
  331. package/dist/cjs/{analytics-config-c90ee350.js → analytics-config-36a2f31c.js} +2 -2
  332. package/dist/cjs/{analytics-config-c90ee350.js.map → analytics-config-36a2f31c.js.map} +1 -1
  333. package/dist/cjs/atomic-automatic-facet_2.cjs.entry.js +3 -4
  334. package/dist/cjs/atomic-automatic-facet_2.cjs.entry.js.map +1 -1
  335. package/dist/cjs/atomic-breadbox.cjs.entry.js +1 -2
  336. package/dist/cjs/atomic-breadbox.cjs.entry.js.map +1 -1
  337. package/dist/cjs/atomic-category-facet.cjs.entry.js +6 -7
  338. package/dist/cjs/atomic-category-facet.cjs.entry.js.map +1 -1
  339. package/dist/cjs/atomic-citation.cjs.entry.js +1 -1
  340. package/dist/cjs/atomic-color-facet.cjs.entry.js +5 -6
  341. package/dist/cjs/atomic-color-facet.cjs.entry.js.map +1 -1
  342. package/dist/cjs/atomic-facet-manager.cjs.entry.js +1 -1
  343. package/dist/cjs/atomic-facet-number-input.cjs.entry.js +3 -4
  344. package/dist/cjs/atomic-facet-number-input.cjs.entry.js.map +1 -1
  345. package/dist/cjs/atomic-facet.cjs.entry.js +9 -10
  346. package/dist/cjs/atomic-facet.cjs.entry.js.map +1 -1
  347. package/dist/cjs/atomic-field-condition.cjs.entry.js +2 -2
  348. package/dist/cjs/atomic-folded-result-list.cjs.entry.js +4 -5
  349. package/dist/cjs/atomic-folded-result-list.cjs.entry.js.map +1 -1
  350. package/dist/cjs/atomic-format-currency.cjs.entry.js +1 -1
  351. package/dist/cjs/atomic-format-number.cjs.entry.js +1 -1
  352. package/dist/cjs/atomic-format-unit.cjs.entry.js +1 -1
  353. package/dist/cjs/atomic-generated-answer-feedback-modal.cjs.entry.js +4 -5
  354. package/dist/cjs/atomic-generated-answer-feedback-modal.cjs.entry.js.map +1 -1
  355. package/dist/cjs/atomic-generated-answer.cjs.entry.js +2 -3
  356. package/dist/cjs/atomic-generated-answer.cjs.entry.js.map +1 -1
  357. package/dist/cjs/atomic-html.cjs.entry.js +1 -1
  358. package/dist/cjs/atomic-insight-edit-toggle.cjs.entry.js +3 -4
  359. package/dist/cjs/atomic-insight-edit-toggle.cjs.entry.js.map +1 -1
  360. package/dist/cjs/atomic-insight-facet.cjs.entry.js +8 -9
  361. package/dist/cjs/atomic-insight-facet.cjs.entry.js.map +1 -1
  362. package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js +4 -5
  363. package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js.map +1 -1
  364. package/dist/cjs/atomic-insight-full-search-button.cjs.entry.js +3 -4
  365. package/dist/cjs/atomic-insight-full-search-button.cjs.entry.js.map +1 -1
  366. package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js +2 -3
  367. package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js.map +1 -1
  368. package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js +4 -5
  369. package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js.map +1 -1
  370. package/dist/cjs/atomic-insight-interface.cjs.entry.js +3 -3
  371. package/dist/cjs/atomic-insight-layout.cjs.entry.js +2 -2
  372. package/dist/cjs/atomic-insight-no-results.cjs.entry.js +1 -1
  373. package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js +6 -7
  374. package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js.map +1 -1
  375. package/dist/cjs/atomic-insight-pager.cjs.entry.js +41 -8
  376. package/dist/cjs/atomic-insight-pager.cjs.entry.js.map +1 -1
  377. package/dist/cjs/atomic-insight-query-error.cjs.entry.js +3 -4
  378. package/dist/cjs/atomic-insight-query-error.cjs.entry.js.map +1 -1
  379. package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js +4 -5
  380. package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js.map +1 -1
  381. package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js +3 -4
  382. package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js.map +1 -1
  383. package/dist/cjs/atomic-insight-result-action.cjs.entry.js +2 -3
  384. package/dist/cjs/atomic-insight-result-action.cjs.entry.js.map +1 -1
  385. package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js +2 -3
  386. package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js.map +1 -1
  387. package/dist/cjs/atomic-insight-result-attach-to-case-indicator.cjs.entry.js +1 -1
  388. package/dist/cjs/atomic-insight-result-children-template.cjs.entry.js +2 -2
  389. package/dist/cjs/atomic-insight-result-children.cjs.entry.js +4 -6
  390. package/dist/cjs/atomic-insight-result-children.cjs.entry.js.map +1 -1
  391. package/dist/cjs/atomic-insight-result-list.cjs.entry.js +4 -5
  392. package/dist/cjs/atomic-insight-result-list.cjs.entry.js.map +1 -1
  393. package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js +3 -4
  394. package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js.map +1 -1
  395. package/dist/cjs/atomic-insight-result-template.cjs.entry.js +2 -2
  396. package/dist/cjs/atomic-insight-result.cjs.entry.js +3 -3
  397. package/dist/cjs/atomic-insight-search-box.cjs.entry.js +4 -5
  398. package/dist/cjs/atomic-insight-search-box.cjs.entry.js.map +1 -1
  399. package/dist/cjs/atomic-insight-smart-snippet-feedback-modal.cjs.entry.js +4 -5
  400. package/dist/cjs/atomic-insight-smart-snippet-feedback-modal.cjs.entry.js.map +1 -1
  401. package/dist/cjs/atomic-insight-smart-snippet-suggestions.cjs.entry.js +2 -3
  402. package/dist/cjs/atomic-insight-smart-snippet-suggestions.cjs.entry.js.map +1 -1
  403. package/dist/cjs/atomic-insight-smart-snippet.cjs.entry.js +3 -4
  404. package/dist/cjs/atomic-insight-smart-snippet.cjs.entry.js.map +1 -1
  405. package/dist/cjs/atomic-insight-tab.cjs.entry.js +1 -2
  406. package/dist/cjs/atomic-insight-tab.cjs.entry.js.map +1 -1
  407. package/dist/cjs/atomic-insight-tabs.cjs.entry.js +1 -1
  408. package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js +4 -5
  409. package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js.map +1 -1
  410. package/dist/cjs/atomic-insight-user-actions-modal.cjs.entry.js +1 -2
  411. package/dist/cjs/atomic-insight-user-actions-modal.cjs.entry.js.map +1 -1
  412. package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js +2 -3
  413. package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js.map +1 -1
  414. package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js +4 -5
  415. package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js.map +1 -1
  416. package/dist/cjs/atomic-ipx-body.cjs.entry.js +2 -2
  417. package/dist/cjs/atomic-ipx-button.cjs.entry.js +3 -4
  418. package/dist/cjs/atomic-ipx-button.cjs.entry.js.map +1 -1
  419. package/dist/cjs/atomic-ipx-embedded.cjs.entry.js +1 -1
  420. package/dist/cjs/atomic-ipx-modal.cjs.entry.js +2 -2
  421. package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +7 -9
  422. package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js.map +1 -1
  423. package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js +3 -4
  424. package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js.map +1 -1
  425. package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js +3 -4
  426. package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js.map +1 -1
  427. package/dist/cjs/atomic-ipx-result-link.cjs.entry.js +1 -1
  428. package/dist/cjs/atomic-ipx-tab.cjs.entry.js +1 -2
  429. package/dist/cjs/atomic-ipx-tab.cjs.entry.js.map +1 -1
  430. package/dist/cjs/atomic-ipx-tabs.cjs.entry.js +1 -1
  431. package/dist/cjs/{sections-4b4af2f8.js → atomic-layout-section-utils-08b4fbcd.js} +1 -1
  432. package/dist/cjs/atomic-layout-section-utils-08b4fbcd.js.map +1 -0
  433. package/dist/cjs/atomic-load-more-results.cjs.entry.js +2 -3
  434. package/dist/cjs/atomic-load-more-results.cjs.entry.js.map +1 -1
  435. package/dist/cjs/atomic-no-results.cjs.entry.js +2 -3
  436. package/dist/cjs/atomic-no-results.cjs.entry.js.map +1 -1
  437. package/dist/cjs/atomic-numeric-facet.cjs.entry.js +6 -7
  438. package/dist/cjs/atomic-numeric-facet.cjs.entry.js.map +1 -1
  439. package/dist/cjs/atomic-popover.cjs.entry.js +1 -2
  440. package/dist/cjs/atomic-popover.cjs.entry.js.map +1 -1
  441. package/dist/cjs/atomic-query-error.cjs.entry.js +3 -4
  442. package/dist/cjs/atomic-query-error.cjs.entry.js.map +1 -1
  443. package/dist/cjs/atomic-quickview-modal.cjs.entry.js +25 -26
  444. package/dist/cjs/atomic-quickview-modal.cjs.entry.js.map +1 -1
  445. package/dist/cjs/atomic-quickview.cjs.entry.js +2 -3
  446. package/dist/cjs/atomic-quickview.cjs.entry.js.map +1 -1
  447. package/dist/cjs/atomic-rating-facet.cjs.entry.js +4 -5
  448. package/dist/cjs/atomic-rating-facet.cjs.entry.js.map +1 -1
  449. package/dist/cjs/atomic-rating-range-facet.cjs.entry.js +3 -4
  450. package/dist/cjs/atomic-rating-range-facet.cjs.entry.js.map +1 -1
  451. package/dist/cjs/atomic-recs-error.cjs.entry.js +3 -4
  452. package/dist/cjs/atomic-recs-error.cjs.entry.js.map +1 -1
  453. package/dist/cjs/atomic-recs-interface.cjs.entry.js +1 -1
  454. package/dist/cjs/atomic-recs-list.cjs.entry.js +7 -9
  455. package/dist/cjs/atomic-recs-list.cjs.entry.js.map +1 -1
  456. package/dist/cjs/atomic-recs-result-template.cjs.entry.js +2 -2
  457. package/dist/cjs/atomic-recs-result.cjs.entry.js +2 -2
  458. package/dist/cjs/atomic-refine-modal.cjs.entry.js +6 -7
  459. package/dist/cjs/atomic-refine-modal.cjs.entry.js.map +1 -1
  460. package/dist/cjs/atomic-refine-toggle.cjs.entry.js +2 -3
  461. package/dist/cjs/atomic-refine-toggle.cjs.entry.js.map +1 -1
  462. package/dist/cjs/atomic-result-children-template.cjs.entry.js +2 -2
  463. package/dist/cjs/atomic-result-children.cjs.entry.js +4 -6
  464. package/dist/cjs/atomic-result-children.cjs.entry.js.map +1 -1
  465. package/dist/cjs/atomic-result-fields-list.cjs.entry.js +1 -1
  466. package/dist/cjs/atomic-result-link.cjs.entry.js +1 -1
  467. package/dist/cjs/atomic-result-list.cjs.entry.js +4 -5
  468. package/dist/cjs/atomic-result-list.cjs.entry.js.map +1 -1
  469. package/dist/cjs/atomic-result-placeholder_8.cjs.entry.js +5 -5
  470. package/dist/cjs/atomic-result-template.cjs.entry.js +2 -2
  471. package/dist/cjs/atomic-result.cjs.entry.js +2 -2
  472. package/dist/cjs/atomic-search-box-query-suggestions.cjs.entry.js +76 -0
  473. package/dist/cjs/atomic-search-box-query-suggestions.cjs.entry.js.map +1 -0
  474. package/dist/cjs/atomic-search-box.cjs.entry.js +5 -6
  475. package/dist/cjs/atomic-search-box.cjs.entry.js.map +1 -1
  476. package/dist/cjs/atomic-segmented-facet-scrollable.cjs.entry.js +1 -2
  477. package/dist/cjs/atomic-segmented-facet-scrollable.cjs.entry.js.map +1 -1
  478. package/dist/cjs/atomic-segmented-facet.cjs.entry.js +1 -2
  479. package/dist/cjs/atomic-segmented-facet.cjs.entry.js.map +1 -1
  480. package/dist/cjs/atomic-smart-snippet-answer_2.cjs.entry.js +2 -2
  481. package/dist/cjs/atomic-smart-snippet-collapse-wrapper_2.cjs.entry.js +3 -3
  482. package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js +4 -5
  483. package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js.map +1 -1
  484. package/dist/cjs/atomic-smart-snippet-suggestions.cjs.entry.js +2 -3
  485. package/dist/cjs/atomic-smart-snippet-suggestions.cjs.entry.js.map +1 -1
  486. package/dist/cjs/atomic-smart-snippet.cjs.entry.js +3 -4
  487. package/dist/cjs/atomic-smart-snippet.cjs.entry.js.map +1 -1
  488. package/dist/cjs/atomic-sort-dropdown.cjs.entry.js +2 -2
  489. package/dist/cjs/atomic-sort-expression.cjs.entry.js +1 -1
  490. package/dist/cjs/atomic-stencil-facet-date-input.cjs.entry.js +4 -5
  491. package/dist/cjs/atomic-stencil-facet-date-input.cjs.entry.js.map +1 -1
  492. package/dist/cjs/atomic-suggestion-renderer.cjs.entry.js +1 -1
  493. package/dist/cjs/atomic-tab-bar_2.cjs.entry.js +2 -3
  494. package/dist/cjs/atomic-tab-bar_2.cjs.entry.js.map +1 -1
  495. package/dist/cjs/atomic-tab-button.cjs.entry.js +2 -3
  496. package/dist/cjs/atomic-tab-button.cjs.entry.js.map +1 -1
  497. package/dist/cjs/atomic-tab-manager.cjs.entry.js +1 -1
  498. package/dist/cjs/atomic-timeframe-facet.cjs.entry.js +4 -5
  499. package/dist/cjs/atomic-timeframe-facet.cjs.entry.js.map +1 -1
  500. package/dist/cjs/atomic.cjs.js +1 -1
  501. package/dist/cjs/clock-7aeb19d0.js +7 -0
  502. package/dist/cjs/clock-7aeb19d0.js.map +1 -0
  503. package/dist/cjs/{display-options-14f05862.js → display-options-69531e8d.js} +4 -4
  504. package/dist/cjs/display-options-69531e8d.js.map +1 -0
  505. package/dist/cjs/{facet-placeholder-22074f05.js → facet-placeholder-21821057.js} +2 -2
  506. package/dist/cjs/{facet-placeholder-22074f05.js.map → facet-placeholder-21821057.js.map} +1 -1
  507. package/dist/cjs/{generated-answer-common-3c400311.js → generated-answer-common-4410c9e0.js} +2 -2
  508. package/dist/cjs/{generated-answer-common-3c400311.js.map → generated-answer-common-4410c9e0.js.map} +1 -1
  509. package/dist/cjs/index-757bc886.js +6 -18
  510. package/dist/cjs/{insight-layout-355a94dd.js → insight-layout-b6ff92fd.js} +11 -11
  511. package/dist/cjs/insight-layout-b6ff92fd.js.map +1 -0
  512. package/dist/cjs/{sections-fbb93b53.js → item-layout-sections-b09ba4b3.js} +1 -1
  513. package/dist/cjs/item-layout-sections-b09ba4b3.js.map +1 -0
  514. package/dist/cjs/{item-template-provider-470c1774.js → item-template-provider-e82736d7.js} +23 -1
  515. package/dist/cjs/item-template-provider-e82736d7.js.map +1 -0
  516. package/dist/cjs/{result-template-common-88359dad.js → result-template-common-84bd4057.js} +3 -3
  517. package/dist/cjs/result-template-common-84bd4057.js.map +1 -0
  518. package/dist/cjs/{show-hide-button-c4717f52.js → show-hide-button-2a630d6f.js} +4 -4
  519. package/dist/cjs/{show-hide-button-c4717f52.js.map → show-hide-button-2a630d6f.js.map} +1 -1
  520. package/dist/cjs/{smart-snippet-common-1fd0dad5.js → smart-snippet-common-524d635f.js} +3 -3
  521. package/dist/cjs/{smart-snippet-common-1fd0dad5.js.map → smart-snippet-common-524d635f.js.map} +1 -1
  522. package/dist/cjs/{smart-snippet-feedback-modal-common-9721e3c4.js → smart-snippet-feedback-modal-common-3b7e3c7e.js} +2 -2
  523. package/dist/cjs/{smart-snippet-feedback-modal-common-9721e3c4.js.map → smart-snippet-feedback-modal-common-3b7e3c7e.js.map} +1 -1
  524. package/dist/cjs/{smart-snippet-suggestions-common-024c89b7.js → smart-snippet-suggestions-common-a6fb3bfd.js} +2 -2
  525. package/dist/cjs/{smart-snippet-suggestions-common-024c89b7.js.map → smart-snippet-suggestions-common-a6fb3bfd.js.map} +1 -1
  526. package/dist/cjs/{stencil-button-94b89acc.js → stencil-button-a114783e.js} +48 -4
  527. package/dist/cjs/stencil-button-a114783e.js.map +1 -0
  528. package/dist/cjs/{stencil-carousel-a8df6f3c.js → stencil-carousel-254b4ea7.js} +2 -2
  529. package/dist/cjs/{stencil-carousel-a8df6f3c.js.map → stencil-carousel-254b4ea7.js.map} +1 -1
  530. package/dist/cjs/{stencil-facet-search-matches-101e0ede.js → stencil-facet-search-matches-9e841241.js} +2 -2
  531. package/dist/cjs/{stencil-facet-search-matches-101e0ede.js.map → stencil-facet-search-matches-9e841241.js.map} +1 -1
  532. package/dist/cjs/{stencil-facet-show-more-less-70f4d20d.js → stencil-facet-show-more-less-04f33b99.js} +2 -2
  533. package/dist/cjs/{stencil-facet-show-more-less-70f4d20d.js.map → stencil-facet-show-more-less-04f33b99.js.map} +1 -1
  534. package/dist/cjs/{stencil-facet-value-e67c9332.js → stencil-facet-value-507f7653.js} +4 -4
  535. package/dist/cjs/{stencil-facet-value-e67c9332.js.map → stencil-facet-value-507f7653.js.map} +1 -1
  536. package/dist/cjs/{stencil-facet-value-box-11aa05dd.js → stencil-facet-value-box-e8b01b77.js} +2 -2
  537. package/dist/cjs/{stencil-facet-value-box-11aa05dd.js.map → stencil-facet-value-box-e8b01b77.js.map} +1 -1
  538. package/dist/cjs/{stencil-facet-value-checkbox-62f07459.js → stencil-facet-value-checkbox-daaef38c.js} +2 -2
  539. package/dist/cjs/{stencil-facet-value-checkbox-62f07459.js.map → stencil-facet-value-checkbox-daaef38c.js.map} +1 -1
  540. package/dist/cjs/{stencil-facet-value-link-8a095034.js → stencil-facet-value-link-98e3fe34.js} +2 -2
  541. package/dist/cjs/{stencil-facet-value-link-8a095034.js.map → stencil-facet-value-link-98e3fe34.js.map} +1 -1
  542. package/dist/cjs/{stencil-iconButton-738b1548.js → stencil-iconButton-c8727a20.js} +2 -2
  543. package/dist/cjs/{stencil-iconButton-738b1548.js.map → stencil-iconButton-c8727a20.js.map} +1 -1
  544. package/dist/cjs/{stencil-link-9336b8c1.js → stencil-link-2e32315d.js} +2 -2
  545. package/dist/cjs/{stencil-link-9336b8c1.js.map → stencil-link-2e32315d.js.map} +1 -1
  546. package/dist/cjs/{stencil-modal-9035ea2a.js → stencil-modal-9a4a9927.js} +2 -2
  547. package/dist/cjs/{stencil-modal-9035ea2a.js.map → stencil-modal-9a4a9927.js.map} +1 -1
  548. package/dist/cjs/{stencil-radio-button-ea7e71d3.js → stencil-radio-button-cbcc483e.js} +4 -5
  549. package/dist/cjs/stencil-radio-button-cbcc483e.js.map +1 -0
  550. package/dist/cjs/{stencil-suggestion-manager-2cba6d69.js → stencil-suggestion-manager-3e1cf81e.js} +2 -2
  551. package/dist/cjs/{stencil-suggestion-manager-2cba6d69.js.map → stencil-suggestion-manager-3e1cf81e.js.map} +1 -1
  552. package/dist/cjs/{stencil-values-container-9f50ec1a.js → stencil-values-container-ead94950.js} +3 -3
  553. package/dist/cjs/{stencil-values-container-9f50ec1a.js.map → stencil-values-container-ead94950.js.map} +1 -1
  554. package/dist/cjs/{timeframe-facet-common-b5535cca.js → timeframe-facet-common-f7321195.js} +3 -3
  555. package/dist/cjs/{timeframe-facet-common-b5535cca.js.map → timeframe-facet-common-f7321195.js.map} +1 -1
  556. package/dist/cjs/version.cjs.js +2 -2
  557. package/dist/esm/_loader.js +1 -1
  558. package/dist/esm/{analytics-config-77dd2f9a.js → analytics-config-3ff814d6.js} +2 -2
  559. package/dist/esm/{analytics-config-77dd2f9a.js.map → analytics-config-3ff814d6.js.map} +1 -1
  560. package/dist/esm/atomic-automatic-facet_2.entry.js +3 -4
  561. package/dist/esm/atomic-automatic-facet_2.entry.js.map +1 -1
  562. package/dist/esm/atomic-breadbox.entry.js +1 -2
  563. package/dist/esm/atomic-breadbox.entry.js.map +1 -1
  564. package/dist/esm/atomic-category-facet.entry.js +6 -7
  565. package/dist/esm/atomic-category-facet.entry.js.map +1 -1
  566. package/dist/esm/atomic-citation.entry.js +1 -1
  567. package/dist/esm/atomic-color-facet.entry.js +5 -6
  568. package/dist/esm/atomic-color-facet.entry.js.map +1 -1
  569. package/dist/esm/atomic-facet-manager.entry.js +1 -1
  570. package/dist/esm/atomic-facet-number-input.entry.js +3 -4
  571. package/dist/esm/atomic-facet-number-input.entry.js.map +1 -1
  572. package/dist/esm/atomic-facet.entry.js +9 -10
  573. package/dist/esm/atomic-facet.entry.js.map +1 -1
  574. package/dist/esm/atomic-field-condition.entry.js +2 -2
  575. package/dist/esm/atomic-folded-result-list.entry.js +3 -4
  576. package/dist/esm/atomic-folded-result-list.entry.js.map +1 -1
  577. package/dist/esm/atomic-format-currency.entry.js +1 -1
  578. package/dist/esm/atomic-format-number.entry.js +1 -1
  579. package/dist/esm/atomic-format-unit.entry.js +1 -1
  580. package/dist/esm/atomic-generated-answer-feedback-modal.entry.js +4 -5
  581. package/dist/esm/atomic-generated-answer-feedback-modal.entry.js.map +1 -1
  582. package/dist/esm/atomic-generated-answer.entry.js +2 -3
  583. package/dist/esm/atomic-generated-answer.entry.js.map +1 -1
  584. package/dist/esm/atomic-html.entry.js +1 -1
  585. package/dist/esm/atomic-insight-edit-toggle.entry.js +3 -4
  586. package/dist/esm/atomic-insight-edit-toggle.entry.js.map +1 -1
  587. package/dist/esm/atomic-insight-facet.entry.js +8 -9
  588. package/dist/esm/atomic-insight-facet.entry.js.map +1 -1
  589. package/dist/esm/atomic-insight-folded-result-list.entry.js +4 -5
  590. package/dist/esm/atomic-insight-folded-result-list.entry.js.map +1 -1
  591. package/dist/esm/atomic-insight-full-search-button.entry.js +3 -4
  592. package/dist/esm/atomic-insight-full-search-button.entry.js.map +1 -1
  593. package/dist/esm/atomic-insight-generated-answer.entry.js +2 -3
  594. package/dist/esm/atomic-insight-generated-answer.entry.js.map +1 -1
  595. package/dist/esm/atomic-insight-history-toggle.entry.js +4 -5
  596. package/dist/esm/atomic-insight-history-toggle.entry.js.map +1 -1
  597. package/dist/esm/atomic-insight-interface.entry.js +3 -3
  598. package/dist/esm/atomic-insight-layout.entry.js +2 -2
  599. package/dist/esm/atomic-insight-no-results.entry.js +1 -1
  600. package/dist/esm/atomic-insight-numeric-facet.entry.js +6 -7
  601. package/dist/esm/atomic-insight-numeric-facet.entry.js.map +1 -1
  602. package/dist/esm/atomic-insight-pager.entry.js +41 -8
  603. package/dist/esm/atomic-insight-pager.entry.js.map +1 -1
  604. package/dist/esm/atomic-insight-query-error.entry.js +3 -4
  605. package/dist/esm/atomic-insight-query-error.entry.js.map +1 -1
  606. package/dist/esm/atomic-insight-refine-modal.entry.js +4 -5
  607. package/dist/esm/atomic-insight-refine-modal.entry.js.map +1 -1
  608. package/dist/esm/atomic-insight-refine-toggle.entry.js +3 -4
  609. package/dist/esm/atomic-insight-refine-toggle.entry.js.map +1 -1
  610. package/dist/esm/atomic-insight-result-action.entry.js +2 -3
  611. package/dist/esm/atomic-insight-result-action.entry.js.map +1 -1
  612. package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js +2 -3
  613. package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js.map +1 -1
  614. package/dist/esm/atomic-insight-result-attach-to-case-indicator.entry.js +1 -1
  615. package/dist/esm/atomic-insight-result-children-template.entry.js +2 -2
  616. package/dist/esm/atomic-insight-result-children.entry.js +4 -6
  617. package/dist/esm/atomic-insight-result-children.entry.js.map +1 -1
  618. package/dist/esm/atomic-insight-result-list.entry.js +4 -5
  619. package/dist/esm/atomic-insight-result-list.entry.js.map +1 -1
  620. package/dist/esm/atomic-insight-result-quickview-action.entry.js +3 -4
  621. package/dist/esm/atomic-insight-result-quickview-action.entry.js.map +1 -1
  622. package/dist/esm/atomic-insight-result-template.entry.js +2 -2
  623. package/dist/esm/atomic-insight-result.entry.js +3 -3
  624. package/dist/esm/atomic-insight-search-box.entry.js +4 -5
  625. package/dist/esm/atomic-insight-search-box.entry.js.map +1 -1
  626. package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js +4 -5
  627. package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js.map +1 -1
  628. package/dist/esm/atomic-insight-smart-snippet-suggestions.entry.js +2 -3
  629. package/dist/esm/atomic-insight-smart-snippet-suggestions.entry.js.map +1 -1
  630. package/dist/esm/atomic-insight-smart-snippet.entry.js +3 -4
  631. package/dist/esm/atomic-insight-smart-snippet.entry.js.map +1 -1
  632. package/dist/esm/atomic-insight-tab.entry.js +1 -2
  633. package/dist/esm/atomic-insight-tab.entry.js.map +1 -1
  634. package/dist/esm/atomic-insight-tabs.entry.js +1 -1
  635. package/dist/esm/atomic-insight-timeframe-facet.entry.js +4 -5
  636. package/dist/esm/atomic-insight-timeframe-facet.entry.js.map +1 -1
  637. package/dist/esm/atomic-insight-user-actions-modal.entry.js +1 -2
  638. package/dist/esm/atomic-insight-user-actions-modal.entry.js.map +1 -1
  639. package/dist/esm/atomic-insight-user-actions-session_2.entry.js +2 -3
  640. package/dist/esm/atomic-insight-user-actions-session_2.entry.js.map +1 -1
  641. package/dist/esm/atomic-insight-user-actions-toggle.entry.js +4 -5
  642. package/dist/esm/atomic-insight-user-actions-toggle.entry.js.map +1 -1
  643. package/dist/esm/atomic-ipx-body.entry.js +2 -2
  644. package/dist/esm/atomic-ipx-button.entry.js +3 -4
  645. package/dist/esm/atomic-ipx-button.entry.js.map +1 -1
  646. package/dist/esm/atomic-ipx-embedded.entry.js +1 -1
  647. package/dist/esm/atomic-ipx-modal.entry.js +2 -2
  648. package/dist/esm/atomic-ipx-recs-list.entry.js +6 -8
  649. package/dist/esm/atomic-ipx-recs-list.entry.js.map +1 -1
  650. package/dist/esm/atomic-ipx-refine-modal.entry.js +3 -4
  651. package/dist/esm/atomic-ipx-refine-modal.entry.js.map +1 -1
  652. package/dist/esm/atomic-ipx-refine-toggle.entry.js +3 -4
  653. package/dist/esm/atomic-ipx-refine-toggle.entry.js.map +1 -1
  654. package/dist/esm/atomic-ipx-result-link.entry.js +1 -1
  655. package/dist/esm/atomic-ipx-tab.entry.js +1 -2
  656. package/dist/esm/atomic-ipx-tab.entry.js.map +1 -1
  657. package/dist/esm/atomic-ipx-tabs.entry.js +1 -1
  658. package/dist/{atomic/components/sections.js → esm/atomic-layout-section-utils-c8ca7445.js} +1 -1
  659. package/dist/esm/atomic-layout-section-utils-c8ca7445.js.map +1 -0
  660. package/dist/esm/atomic-load-more-results.entry.js +2 -3
  661. package/dist/esm/atomic-load-more-results.entry.js.map +1 -1
  662. package/dist/esm/atomic-no-results.entry.js +2 -3
  663. package/dist/esm/atomic-no-results.entry.js.map +1 -1
  664. package/dist/esm/atomic-numeric-facet.entry.js +6 -7
  665. package/dist/esm/atomic-numeric-facet.entry.js.map +1 -1
  666. package/dist/esm/atomic-popover.entry.js +1 -2
  667. package/dist/esm/atomic-popover.entry.js.map +1 -1
  668. package/dist/esm/atomic-query-error.entry.js +3 -4
  669. package/dist/esm/atomic-query-error.entry.js.map +1 -1
  670. package/dist/esm/atomic-quickview-modal.entry.js +25 -26
  671. package/dist/esm/atomic-quickview-modal.entry.js.map +1 -1
  672. package/dist/esm/atomic-quickview.entry.js +2 -3
  673. package/dist/esm/atomic-quickview.entry.js.map +1 -1
  674. package/dist/esm/atomic-rating-facet.entry.js +4 -5
  675. package/dist/esm/atomic-rating-facet.entry.js.map +1 -1
  676. package/dist/esm/atomic-rating-range-facet.entry.js +3 -4
  677. package/dist/esm/atomic-rating-range-facet.entry.js.map +1 -1
  678. package/dist/esm/atomic-recs-error.entry.js +3 -4
  679. package/dist/esm/atomic-recs-error.entry.js.map +1 -1
  680. package/dist/esm/atomic-recs-interface.entry.js +1 -1
  681. package/dist/esm/atomic-recs-list.entry.js +6 -8
  682. package/dist/esm/atomic-recs-list.entry.js.map +1 -1
  683. package/dist/esm/atomic-recs-result-template.entry.js +2 -2
  684. package/dist/esm/atomic-recs-result.entry.js +2 -2
  685. package/dist/esm/atomic-refine-modal.entry.js +4 -5
  686. package/dist/esm/atomic-refine-modal.entry.js.map +1 -1
  687. package/dist/esm/atomic-refine-toggle.entry.js +2 -3
  688. package/dist/esm/atomic-refine-toggle.entry.js.map +1 -1
  689. package/dist/esm/atomic-result-children-template.entry.js +2 -2
  690. package/dist/esm/atomic-result-children.entry.js +4 -6
  691. package/dist/esm/atomic-result-children.entry.js.map +1 -1
  692. package/dist/esm/atomic-result-fields-list.entry.js +1 -1
  693. package/dist/esm/atomic-result-link.entry.js +1 -1
  694. package/dist/esm/atomic-result-list.entry.js +4 -5
  695. package/dist/esm/atomic-result-list.entry.js.map +1 -1
  696. package/dist/esm/atomic-result-placeholder_8.entry.js +5 -5
  697. package/dist/esm/atomic-result-template.entry.js +2 -2
  698. package/dist/esm/atomic-result.entry.js +2 -2
  699. package/dist/esm/atomic-search-box-query-suggestions.entry.js +72 -0
  700. package/dist/esm/atomic-search-box-query-suggestions.entry.js.map +1 -0
  701. package/dist/esm/atomic-search-box.entry.js +5 -6
  702. package/dist/esm/atomic-search-box.entry.js.map +1 -1
  703. package/dist/esm/atomic-segmented-facet-scrollable.entry.js +1 -2
  704. package/dist/esm/atomic-segmented-facet-scrollable.entry.js.map +1 -1
  705. package/dist/esm/atomic-segmented-facet.entry.js +1 -2
  706. package/dist/esm/atomic-segmented-facet.entry.js.map +1 -1
  707. package/dist/esm/atomic-smart-snippet-answer_2.entry.js +2 -2
  708. package/dist/esm/atomic-smart-snippet-collapse-wrapper_2.entry.js +3 -3
  709. package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js +4 -5
  710. package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js.map +1 -1
  711. package/dist/esm/atomic-smart-snippet-suggestions.entry.js +2 -3
  712. package/dist/esm/atomic-smart-snippet-suggestions.entry.js.map +1 -1
  713. package/dist/esm/atomic-smart-snippet.entry.js +3 -4
  714. package/dist/esm/atomic-smart-snippet.entry.js.map +1 -1
  715. package/dist/esm/atomic-sort-dropdown.entry.js +2 -2
  716. package/dist/esm/atomic-sort-expression.entry.js +1 -1
  717. package/dist/esm/atomic-stencil-facet-date-input.entry.js +4 -5
  718. package/dist/esm/atomic-stencil-facet-date-input.entry.js.map +1 -1
  719. package/dist/esm/atomic-suggestion-renderer.entry.js +1 -1
  720. package/dist/esm/atomic-tab-bar_2.entry.js +2 -3
  721. package/dist/esm/atomic-tab-bar_2.entry.js.map +1 -1
  722. package/dist/esm/atomic-tab-button.entry.js +2 -3
  723. package/dist/esm/atomic-tab-button.entry.js.map +1 -1
  724. package/dist/esm/atomic-tab-manager.entry.js +1 -1
  725. package/dist/esm/atomic-timeframe-facet.entry.js +4 -5
  726. package/dist/esm/atomic-timeframe-facet.entry.js.map +1 -1
  727. package/dist/esm/atomic.js +1 -1
  728. package/dist/esm/clock-b1f5d7f7.js +5 -0
  729. package/dist/esm/clock-b1f5d7f7.js.map +1 -0
  730. package/dist/esm/{display-options-c16840c6.js → display-options-1199eed5.js} +2 -2
  731. package/dist/esm/display-options-1199eed5.js.map +1 -0
  732. package/dist/esm/{facet-placeholder-4959a92a.js → facet-placeholder-cf7007ee.js} +2 -2
  733. package/dist/esm/{facet-placeholder-4959a92a.js.map → facet-placeholder-cf7007ee.js.map} +1 -1
  734. package/dist/esm/{generated-answer-common-9d0c5ada.js → generated-answer-common-7a072444.js} +2 -2
  735. package/dist/esm/{generated-answer-common-9d0c5ada.js.map → generated-answer-common-7a072444.js.map} +1 -1
  736. package/dist/esm/index-3f35faca.js +6 -18
  737. package/dist/esm/{insight-layout-776b87f2.js → insight-layout-a1e4b795.js} +2 -2
  738. package/dist/esm/insight-layout-a1e4b795.js.map +1 -0
  739. package/dist/esm/{sections-d787040b.js → item-layout-sections-8afb5049.js} +1 -1
  740. package/dist/esm/item-layout-sections-8afb5049.js.map +1 -0
  741. package/dist/esm/{item-template-provider-35bf0685.js → item-template-provider-6e736120.js} +22 -2
  742. package/dist/esm/item-template-provider-6e736120.js.map +1 -0
  743. package/dist/esm/{result-template-common-ac9fecab.js → result-template-common-995b94f8.js} +2 -2
  744. package/dist/esm/result-template-common-995b94f8.js.map +1 -0
  745. package/dist/esm/{show-hide-button-35eb419d.js → show-hide-button-706d82d9.js} +3 -3
  746. package/dist/esm/{show-hide-button-35eb419d.js.map → show-hide-button-706d82d9.js.map} +1 -1
  747. package/dist/esm/{smart-snippet-common-5ed4bdfa.js → smart-snippet-common-01b7411b.js} +3 -3
  748. package/dist/esm/{smart-snippet-common-5ed4bdfa.js.map → smart-snippet-common-01b7411b.js.map} +1 -1
  749. package/dist/esm/{smart-snippet-feedback-modal-common-835aa607.js → smart-snippet-feedback-modal-common-50d66179.js} +2 -2
  750. package/dist/esm/{smart-snippet-feedback-modal-common-835aa607.js.map → smart-snippet-feedback-modal-common-50d66179.js.map} +1 -1
  751. package/dist/esm/{smart-snippet-suggestions-common-10bd1697.js → smart-snippet-suggestions-common-54b6498b.js} +2 -2
  752. package/dist/esm/{smart-snippet-suggestions-common-10bd1697.js.map → smart-snippet-suggestions-common-54b6498b.js.map} +1 -1
  753. package/dist/esm/{stencil-button-1a29a5df.js → stencil-button-5f84efcc.js} +45 -3
  754. package/dist/esm/stencil-button-5f84efcc.js.map +1 -0
  755. package/dist/esm/{stencil-carousel-e1f25f7c.js → stencil-carousel-4264cd9b.js} +2 -2
  756. package/dist/esm/{stencil-carousel-e1f25f7c.js.map → stencil-carousel-4264cd9b.js.map} +1 -1
  757. package/dist/esm/{stencil-facet-search-matches-872d94d2.js → stencil-facet-search-matches-7299e897.js} +2 -2
  758. package/dist/esm/{stencil-facet-search-matches-872d94d2.js.map → stencil-facet-search-matches-7299e897.js.map} +1 -1
  759. package/dist/esm/{stencil-facet-show-more-less-e575f20f.js → stencil-facet-show-more-less-202207c3.js} +2 -2
  760. package/dist/esm/{stencil-facet-show-more-less-e575f20f.js.map → stencil-facet-show-more-less-202207c3.js.map} +1 -1
  761. package/dist/esm/{stencil-facet-value-box-b0dc7e73.js → stencil-facet-value-box-85126921.js} +2 -2
  762. package/dist/esm/{stencil-facet-value-box-b0dc7e73.js.map → stencil-facet-value-box-85126921.js.map} +1 -1
  763. package/dist/esm/{stencil-facet-value-30dc9b6c.js → stencil-facet-value-c4509dd2.js} +4 -4
  764. package/dist/esm/{stencil-facet-value-30dc9b6c.js.map → stencil-facet-value-c4509dd2.js.map} +1 -1
  765. package/dist/esm/{stencil-facet-value-checkbox-0637f7f8.js → stencil-facet-value-checkbox-053e00d6.js} +2 -2
  766. package/dist/esm/{stencil-facet-value-checkbox-0637f7f8.js.map → stencil-facet-value-checkbox-053e00d6.js.map} +1 -1
  767. package/dist/esm/{stencil-facet-value-link-88512e29.js → stencil-facet-value-link-41281838.js} +2 -2
  768. package/dist/esm/{stencil-facet-value-link-88512e29.js.map → stencil-facet-value-link-41281838.js.map} +1 -1
  769. package/dist/esm/{stencil-iconButton-ba40899c.js → stencil-iconButton-ff8c8cf7.js} +2 -2
  770. package/dist/esm/{stencil-iconButton-ba40899c.js.map → stencil-iconButton-ff8c8cf7.js.map} +1 -1
  771. package/dist/esm/{stencil-link-b676e261.js → stencil-link-feb82bc0.js} +2 -2
  772. package/dist/esm/{stencil-link-b676e261.js.map → stencil-link-feb82bc0.js.map} +1 -1
  773. package/dist/esm/{stencil-modal-467f7f33.js → stencil-modal-ec1562dc.js} +2 -2
  774. package/dist/esm/{stencil-modal-467f7f33.js.map → stencil-modal-ec1562dc.js.map} +1 -1
  775. package/dist/esm/{stencil-radio-button-cae5f40a.js → stencil-radio-button-4b36e45d.js} +2 -3
  776. package/dist/esm/stencil-radio-button-4b36e45d.js.map +1 -0
  777. package/dist/esm/{stencil-suggestion-manager-376f83e8.js → stencil-suggestion-manager-95694bcb.js} +2 -2
  778. package/dist/esm/{stencil-suggestion-manager-376f83e8.js.map → stencil-suggestion-manager-95694bcb.js.map} +1 -1
  779. package/dist/esm/{stencil-values-container-55a7e816.js → stencil-values-container-7e1b4094.js} +3 -3
  780. package/dist/esm/{stencil-values-container-55a7e816.js.map → stencil-values-container-7e1b4094.js.map} +1 -1
  781. package/dist/esm/{timeframe-facet-common-eb1016d2.js → timeframe-facet-common-f4a20f8b.js} +3 -3
  782. package/dist/esm/{timeframe-facet-common-eb1016d2.js.map → timeframe-facet-common-f4a20f8b.js.map} +1 -1
  783. package/dist/esm/version.js +2 -2
  784. package/dist/types/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.d.ts +2 -3
  785. package/dist/types/components/commerce/atomic-commerce-pager/atomic-commerce-pager.d.ts +5 -3
  786. package/dist/types/components/common/atomic-layout-section/atomic-layout-section.d.ts +1 -1
  787. package/dist/types/components/common/facets/facet-search/facet-search-input-guard.d.ts +1 -1
  788. package/dist/types/components/common/no-items/guard.d.ts +1 -1
  789. package/dist/types/components/common/refine-modal/guard.d.ts +1 -1
  790. package/dist/types/components/common/sort/sort-guard.d.ts +1 -1
  791. package/dist/types/components/common/validate-props-controller/validate-props-controller.d.ts +32 -0
  792. package/dist/types/components/search/atomic-pager/atomic-pager.d.ts +28 -16
  793. package/dist/types/components/search/atomic-relevance-inspector/atomic-relevance-inspector.d.ts +18 -8
  794. package/dist/types/components/search/{search-box-suggestions/atomic-search-box-instant-results → atomic-search-box-instant-results}/atomic-search-box-instant-results.d.ts +18 -10
  795. package/dist/types/components/search/atomic-search-box-recent-queries/atomic-search-box-recent-queries.d.ts +45 -0
  796. package/dist/types/components/search/atomic-search-interface/atomic-search-interface.d.ts +6 -3
  797. package/dist/types/components/search/index.d.ts +4 -0
  798. package/dist/types/components.d.ts +0 -239
  799. package/dist/types/directives/hierarchical-path.d.ts +1 -1
  800. package/dist/types/utils/compare-utils.d.ts +9 -0
  801. package/docs/atomic-docs.json +32 -608
  802. package/package.json +3 -3
  803. package/dist/atomic/components/atomic-pager.d.ts +0 -11
  804. package/dist/atomic/components/atomic-pager.js +0 -134
  805. package/dist/atomic/components/atomic-pager.js.map +0 -1
  806. package/dist/atomic/components/atomic-relevance-inspector.d.ts +0 -11
  807. package/dist/atomic/components/atomic-relevance-inspector.js +0 -53
  808. package/dist/atomic/components/atomic-relevance-inspector.js.map +0 -1
  809. package/dist/atomic/components/atomic-search-box-instant-results.d.ts +0 -11
  810. package/dist/atomic/components/atomic-search-box-instant-results.js.map +0 -1
  811. package/dist/atomic/components/atomic-search-box-recent-queries.d.ts +0 -11
  812. package/dist/atomic/components/atomic-search-box-recent-queries.js +0 -8
  813. package/dist/atomic/components/atomic-search-box-recent-queries.js.map +0 -1
  814. package/dist/atomic/components/atomic-search-box-recent-queries2.js +0 -183
  815. package/dist/atomic/components/atomic-search-box-recent-queries2.js.map +0 -1
  816. package/dist/atomic/components/sections.js.map +0 -1
  817. package/dist/atomic/components/sections2.js.map +0 -1
  818. package/dist/atomic/components/stencil-button-style.js +0 -46
  819. package/dist/atomic/components/stencil-button-style.js.map +0 -1
  820. package/dist/atomic/components/stencil-pager-navigation.js +0 -42
  821. package/dist/atomic/components/stencil-pager-navigation.js.map +0 -1
  822. package/dist/atomic/components/stencil-placeholders.js +0 -24
  823. package/dist/atomic/components/stencil-placeholders.js.map +0 -1
  824. package/dist/atomic/components/suggestions-events.js +0 -40
  825. package/dist/atomic/components/suggestions-events.js.map +0 -1
  826. package/dist/atomic/p-00069a4b.entry.js +0 -2
  827. package/dist/atomic/p-0402ee69.entry.js +0 -2
  828. package/dist/atomic/p-0edea6f9.entry.js +0 -2
  829. package/dist/atomic/p-10b5e0f3.entry.js +0 -2
  830. package/dist/atomic/p-1201bf3d.entry.js.map +0 -1
  831. package/dist/atomic/p-1435fb6f.entry.js +0 -2
  832. package/dist/atomic/p-145e3a1c.entry.js +0 -2
  833. package/dist/atomic/p-145e3a1c.entry.js.map +0 -1
  834. package/dist/atomic/p-1db20a4a.entry.js +0 -2
  835. package/dist/atomic/p-20019654.entry.js +0 -2
  836. package/dist/atomic/p-211d7d6a.js +0 -2
  837. package/dist/atomic/p-211d7d6a.js.map +0 -1
  838. package/dist/atomic/p-21ab6f55.js +0 -2
  839. package/dist/atomic/p-21ab6f55.js.map +0 -1
  840. package/dist/atomic/p-24fd7df6.entry.js +0 -2
  841. package/dist/atomic/p-250f34d4.entry.js +0 -2
  842. package/dist/atomic/p-27b8404c.js.map +0 -1
  843. package/dist/atomic/p-2caa1859.js.map +0 -1
  844. package/dist/atomic/p-345c425d.entry.js +0 -2
  845. package/dist/atomic/p-3857d6a3.entry.js +0 -2
  846. package/dist/atomic/p-3a01a398.entry.js +0 -2
  847. package/dist/atomic/p-3e38aea6.entry.js.map +0 -1
  848. package/dist/atomic/p-406a288c.entry.js +0 -2
  849. package/dist/atomic/p-45c76d98.entry.js.map +0 -1
  850. package/dist/atomic/p-4723ffa5.entry.js +0 -2
  851. package/dist/atomic/p-47ab6c9f.entry.js +0 -2
  852. package/dist/atomic/p-4830b9bb.entry.js +0 -2
  853. package/dist/atomic/p-4b9a166f.entry.js +0 -2
  854. package/dist/atomic/p-4bdc6d5a.entry.js +0 -2
  855. package/dist/atomic/p-516b8165.entry.js +0 -2
  856. package/dist/atomic/p-516b8165.entry.js.map +0 -1
  857. package/dist/atomic/p-5606819d.entry.js +0 -2
  858. package/dist/atomic/p-59b15bd6.entry.js +0 -2
  859. package/dist/atomic/p-5f706e3d.entry.js +0 -2
  860. package/dist/atomic/p-6098b906.entry.js +0 -2
  861. package/dist/atomic/p-6abd5b2b.entry.js +0 -2
  862. package/dist/atomic/p-740cd5bc.entry.js +0 -2
  863. package/dist/atomic/p-74822069.entry.js +0 -2
  864. package/dist/atomic/p-7709fba4.js.map +0 -1
  865. package/dist/atomic/p-7e9a1a1a.entry.js +0 -2
  866. package/dist/atomic/p-82398f4a.js +0 -2
  867. package/dist/atomic/p-89d8bb0d.entry.js +0 -2
  868. package/dist/atomic/p-8e5e00b4.js +0 -2
  869. package/dist/atomic/p-8e5e00b4.js.map +0 -1
  870. package/dist/atomic/p-97538903.entry.js +0 -2
  871. package/dist/atomic/p-97748161.js.map +0 -1
  872. package/dist/atomic/p-97829295.entry.js +0 -2
  873. package/dist/atomic/p-998393ec.entry.js +0 -2
  874. package/dist/atomic/p-9b2561e8.entry.js +0 -2
  875. package/dist/atomic/p-9c7dbbdf.js.map +0 -1
  876. package/dist/atomic/p-9faad55b.entry.js +0 -2
  877. package/dist/atomic/p-a130b00b.entry.js +0 -2
  878. package/dist/atomic/p-a1522fe5.entry.js +0 -2
  879. package/dist/atomic/p-aa616502.entry.js +0 -2
  880. package/dist/atomic/p-b320f270.entry.js +0 -2
  881. package/dist/atomic/p-b6415814.entry.js +0 -2
  882. package/dist/atomic/p-b93ccff9.js +0 -2
  883. package/dist/atomic/p-b93ccff9.js.map +0 -1
  884. package/dist/atomic/p-c2b4b401.entry.js +0 -2
  885. package/dist/atomic/p-cafa4083.entry.js +0 -2
  886. package/dist/atomic/p-cb3fd0f4.entry.js +0 -2
  887. package/dist/atomic/p-cdeb5f2a.entry.js +0 -2
  888. package/dist/atomic/p-ce5b896e.entry.js +0 -2
  889. package/dist/atomic/p-cef8175c.js +0 -2
  890. package/dist/atomic/p-cef8175c.js.map +0 -1
  891. package/dist/atomic/p-d8028950.entry.js +0 -2
  892. package/dist/atomic/p-d8028950.entry.js.map +0 -1
  893. package/dist/atomic/p-dbc0ce5c.entry.js +0 -2
  894. package/dist/atomic/p-dfc385b7.entry.js +0 -2
  895. package/dist/atomic/p-ee957926.entry.js +0 -2
  896. package/dist/atomic/p-f76b7ac3.entry.js +0 -2
  897. package/dist/atomic/p-f936f55e.entry.js +0 -2
  898. package/dist/atomic/p-f9dd14b2.entry.js +0 -2
  899. package/dist/atomic/p-fa658ef2.entry.js +0 -2
  900. package/dist/atomic/p-fb1a1e2e.entry.js +0 -2
  901. package/dist/atomic/p-fb1a1e2e.entry.js.map +0 -1
  902. package/dist/atomic/p-fdd0aa42.entry.js +0 -2
  903. package/dist/atomic/p-fe59fb2d.entry.js +0 -2
  904. package/dist/cjs/atomic-pager.cjs.entry.js +0 -121
  905. package/dist/cjs/atomic-pager.cjs.entry.js.map +0 -1
  906. package/dist/cjs/atomic-relevance-inspector.cjs.entry.js +0 -38
  907. package/dist/cjs/atomic-relevance-inspector.cjs.entry.js.map +0 -1
  908. package/dist/cjs/atomic-search-box-instant-results.cjs.entry.js +0 -186
  909. package/dist/cjs/atomic-search-box-instant-results.cjs.entry.js.map +0 -1
  910. package/dist/cjs/atomic-search-box-query-suggestions_2.cjs.entry.js +0 -234
  911. package/dist/cjs/atomic-search-box-query-suggestions_2.cjs.entry.js.map +0 -1
  912. package/dist/cjs/clock-f03ff827.js +0 -7
  913. package/dist/cjs/clock-f03ff827.js.map +0 -1
  914. package/dist/cjs/display-options-14f05862.js.map +0 -1
  915. package/dist/cjs/insight-layout-355a94dd.js.map +0 -1
  916. package/dist/cjs/item-template-provider-470c1774.js.map +0 -1
  917. package/dist/cjs/result-template-common-88359dad.js.map +0 -1
  918. package/dist/cjs/sections-4b4af2f8.js.map +0 -1
  919. package/dist/cjs/sections-fbb93b53.js.map +0 -1
  920. package/dist/cjs/stencil-button-94b89acc.js.map +0 -1
  921. package/dist/cjs/stencil-button-style-ba779fe2.js +0 -49
  922. package/dist/cjs/stencil-button-style-ba779fe2.js.map +0 -1
  923. package/dist/cjs/stencil-pager-navigation-c20b8a95.js +0 -48
  924. package/dist/cjs/stencil-pager-navigation-c20b8a95.js.map +0 -1
  925. package/dist/cjs/stencil-placeholders-b8c896fa.js +0 -27
  926. package/dist/cjs/stencil-placeholders-b8c896fa.js.map +0 -1
  927. package/dist/cjs/stencil-radio-button-ea7e71d3.js.map +0 -1
  928. package/dist/esm/atomic-pager.entry.js.map +0 -1
  929. package/dist/esm/atomic-relevance-inspector.entry.js +0 -34
  930. package/dist/esm/atomic-relevance-inspector.entry.js.map +0 -1
  931. package/dist/esm/atomic-search-box-instant-results.entry.js +0 -182
  932. package/dist/esm/atomic-search-box-instant-results.entry.js.map +0 -1
  933. package/dist/esm/atomic-search-box-query-suggestions_2.entry.js +0 -229
  934. package/dist/esm/atomic-search-box-query-suggestions_2.entry.js.map +0 -1
  935. package/dist/esm/clock-add3e9a5.js +0 -5
  936. package/dist/esm/clock-add3e9a5.js.map +0 -1
  937. package/dist/esm/display-options-c16840c6.js.map +0 -1
  938. package/dist/esm/insight-layout-776b87f2.js.map +0 -1
  939. package/dist/esm/item-template-provider-35bf0685.js.map +0 -1
  940. package/dist/esm/result-template-common-ac9fecab.js.map +0 -1
  941. package/dist/esm/sections-ae00b53a.js.map +0 -1
  942. package/dist/esm/stencil-button-1a29a5df.js.map +0 -1
  943. package/dist/esm/stencil-button-style-0bc80040.js +0 -46
  944. package/dist/esm/stencil-button-style-0bc80040.js.map +0 -1
  945. package/dist/esm/stencil-pager-navigation-7261a834.js +0 -42
  946. package/dist/esm/stencil-pager-navigation-7261a834.js.map +0 -1
  947. package/dist/esm/stencil-placeholders-58a0c818.js +0 -24
  948. package/dist/esm/stencil-placeholders-58a0c818.js.map +0 -1
  949. package/dist/esm/stencil-radio-button-cae5f40a.js.map +0 -1
  950. package/dist/types/components/search/search-box-suggestions/atomic-search-box-recent-queries/atomic-search-box-recent-queries.d.ts +0 -37
  951. /package/dist/atomic/components/components/common/atomic-layout-section/{sections.js → atomic-layout-section-utils.js} +0 -0
  952. /package/dist/atomic/{p-f073a78d.entry.js.map → p-03e57267.entry.js.map} +0 -0
  953. /package/dist/atomic/{p-3c9289b5.js.map → p-04ebb7ba.js.map} +0 -0
  954. /package/dist/atomic/{p-0f449e9d.entry.js.map → p-091c589b.entry.js.map} +0 -0
  955. /package/dist/atomic/{p-5d0a3045.js.map → p-0ab0ceaa.js.map} +0 -0
  956. /package/dist/atomic/{p-8acb1466.entry.js.map → p-0ae232d5.entry.js.map} +0 -0
  957. /package/dist/atomic/{p-b7cd0342.entry.js.map → p-0baced30.entry.js.map} +0 -0
  958. /package/dist/atomic/{p-74862002.js.map → p-0e6f1e14.js.map} +0 -0
  959. /package/dist/atomic/{p-16f4ce98.js.map → p-0fb39501.js.map} +0 -0
  960. /package/dist/atomic/{p-d2e8a2d4.js.map → p-134b7370.js.map} +0 -0
  961. /package/dist/atomic/{p-ef78082a.js.map → p-15580d9e.js.map} +0 -0
  962. /package/dist/atomic/{p-baff6c43.js.map → p-25660266.js.map} +0 -0
  963. /package/dist/atomic/{p-0edea6f9.entry.js.map → p-2e792916.entry.js.map} +0 -0
  964. /package/dist/atomic/{p-4ca51934.entry.js.map → p-2f258b2c.entry.js.map} +0 -0
  965. /package/dist/atomic/{p-e3edbf14.entry.js.map → p-331ad989.entry.js.map} +0 -0
  966. /package/dist/atomic/{p-dbc09018.js.map → p-340130de.js.map} +0 -0
  967. /package/dist/atomic/{p-df1d50c8.entry.js.map → p-349c1be8.entry.js.map} +0 -0
  968. /package/dist/atomic/{p-d6e04719.entry.js.map → p-373448df.entry.js.map} +0 -0
  969. /package/dist/atomic/{p-037eee11.js.map → p-3f0e7549.js.map} +0 -0
  970. /package/dist/atomic/{p-85145c88.entry.js.map → p-40c113f1.entry.js.map} +0 -0
  971. /package/dist/atomic/{p-8103bad3.entry.js.map → p-49e0400f.entry.js.map} +0 -0
  972. /package/dist/atomic/{p-f8b608ba.js.map → p-4bf14d26.js.map} +0 -0
  973. /package/dist/atomic/{p-44ef70b6.entry.js.map → p-501dbf28.entry.js.map} +0 -0
  974. /package/dist/atomic/{p-723f76a1.entry.js.map → p-568393c0.entry.js.map} +0 -0
  975. /package/dist/atomic/{p-2e4628bb.entry.js.map → p-5dcebd1d.entry.js.map} +0 -0
  976. /package/dist/atomic/{p-250f34d4.entry.js.map → p-62e85c20.entry.js.map} +0 -0
  977. /package/dist/atomic/{p-60498b8e.js.map → p-68013132.js.map} +0 -0
  978. /package/dist/atomic/{p-c724e6d8.entry.js.map → p-6e533608.entry.js.map} +0 -0
  979. /package/dist/atomic/{p-93da1f4e.entry.js.map → p-6f34dd3a.entry.js.map} +0 -0
  980. /package/dist/atomic/{p-0610b3e7.entry.js.map → p-76185607.entry.js.map} +0 -0
  981. /package/dist/atomic/{p-0c0b8d41.entry.js.map → p-768b172e.entry.js.map} +0 -0
  982. /package/dist/atomic/{p-5c73ebc4.js.map → p-76cf6545.js.map} +0 -0
  983. /package/dist/atomic/{p-a4d277c7.entry.js.map → p-7fd5b6ac.entry.js.map} +0 -0
  984. /package/dist/atomic/{p-b4ad3036.entry.js.map → p-85453a90.entry.js.map} +0 -0
  985. /package/dist/atomic/{p-10b5e0f3.entry.js.map → p-8588e8d7.entry.js.map} +0 -0
  986. /package/dist/atomic/{p-f71b14b2.entry.js.map → p-9260dd7d.entry.js.map} +0 -0
  987. /package/dist/atomic/{p-00a6ab8c.entry.js.map → p-9359fd97.entry.js.map} +0 -0
  988. /package/dist/atomic/{p-503ecb6d.js.map → p-962cbae8.js.map} +0 -0
  989. /package/dist/atomic/{p-577d34ba.entry.js.map → p-9878ce63.entry.js.map} +0 -0
  990. /package/dist/atomic/{p-ed8e5c4d.entry.js.map → p-98dd6df1.entry.js.map} +0 -0
  991. /package/dist/atomic/{p-d2d22ab2.entry.js.map → p-998533bd.entry.js.map} +0 -0
  992. /package/dist/atomic/{p-5ca21deb.js.map → p-9ce6063d.js.map} +0 -0
  993. /package/dist/atomic/{p-a428960a.js.map → p-9dcd5606.js.map} +0 -0
  994. /package/dist/atomic/{p-0b5efb51.entry.js.map → p-a1e5f767.entry.js.map} +0 -0
  995. /package/dist/atomic/{p-3622ed6c.js.map → p-a83c992f.js.map} +0 -0
  996. /package/dist/atomic/{p-c2b4b401.entry.js.map → p-aee3b2e7.entry.js.map} +0 -0
  997. /package/dist/atomic/{p-fe3cd55b.entry.js.map → p-b2897ed7.entry.js.map} +0 -0
  998. /package/dist/atomic/{p-36f63642.entry.js.map → p-bc0ca1fd.entry.js.map} +0 -0
  999. /package/dist/atomic/{p-a9383817.entry.js.map → p-c17c0209.entry.js.map} +0 -0
  1000. /package/dist/atomic/{p-8a488991.js.map → p-ca0e9cd6.js.map} +0 -0
  1001. /package/dist/atomic/{p-20cbcfb9.js.map → p-d365883e.js.map} +0 -0
  1002. /package/dist/atomic/{p-2c6f895f.js.map → p-d4cbd9b1.js.map} +0 -0
  1003. /package/dist/atomic/{p-c280cd05.js.map → p-e1cc5150.js.map} +0 -0
  1004. /package/dist/atomic/{p-d1795580.entry.js.map → p-e7a25b00.entry.js.map} +0 -0
  1005. /package/dist/atomic/{p-93f1d551.entry.js.map → p-f3b3788c.entry.js.map} +0 -0
  1006. /package/dist/atomic/{p-dd35e7ad.entry.js.map → p-f696f3df.entry.js.map} +0 -0
  1007. /package/dist/atomic/{p-edd4d5f7.js.map → p-ff96225e.js.map} +0 -0
  1008. /package/dist/types/components/common/atomic-layout-section/{sections.d.ts → atomic-layout-section-utils.d.ts} +0 -0
  1009. /package/dist/types/components/common/layout/{sections.d.ts → item-layout-sections.d.ts} +0 -0
@@ -0,0 +1,137 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
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
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { buildRecentQueriesList, } from '@coveo/headless';
8
+ import { html, LitElement, nothing } from 'lit';
9
+ import { customElement, property, state } from 'lit/decorators.js';
10
+ import { errorGuard } from "../../../decorators/error-guard";
11
+ import { SafeStorage, StorageItems } from "../../../utils/local-storage-utils";
12
+ import { once } from "../../../utils/utils";
13
+ const Clock = "<svg fill=\"none\" stroke=\"currentColor\" stroke-linejoin=\"round\" stroke-linecap=\"round\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><circle cx=\"8\" cy=\"8\" r=\"7.5\"/><path d=\"m8.5 4.5v4\"/><path d=\"m10.3066 10.1387-1.80932-1.5768\"/></svg>";
14
+ import { getPartialRecentQueryClearElement, getPartialRecentQueryElement, renderRecentQuery, renderRecentQueryClear, } from '../../common/suggestions/recent-queries';
15
+ import { dispatchSearchBoxSuggestionsEvent } from '../../common/suggestions/suggestions-events';
16
+ /**
17
+ * The `atomic-search-box-recent-queries` component can be added as a child of an `atomic-search-box` component, allowing for the configuration of recent query suggestions.
18
+ */
19
+ let AtomicSearchBoxRecentQueries = class AtomicSearchBoxRecentQueries extends LitElement {
20
+ constructor() {
21
+ super(...arguments);
22
+ /**
23
+ * The maximum number of suggestions to display when the user types in the input field.
24
+ */
25
+ this.maxWithQuery = 3;
26
+ this.warnUser = once(() => this.bindings.engine.logger.warn('The recent queries feature is deactivated because analytics are disabled.'));
27
+ }
28
+ connectedCallback() {
29
+ super.connectedCallback();
30
+ try {
31
+ dispatchSearchBoxSuggestionsEvent((bindings) => {
32
+ this.bindings = bindings;
33
+ return this.initialize();
34
+ }, this, ['atomic-search-box']);
35
+ }
36
+ catch (error) {
37
+ this.error = error;
38
+ }
39
+ }
40
+ initialize() {
41
+ this.storage = new SafeStorage();
42
+ this.recentQueriesList = buildRecentQueriesList(this.bindings.engine, {
43
+ initialState: { queries: this.retrieveLocalStorage() },
44
+ options: {
45
+ maxLength: 1000,
46
+ clearFilters: this.bindings.clearFilters,
47
+ },
48
+ });
49
+ this.recentQueriesList.subscribe(() => this.updateLocalStorage());
50
+ return {
51
+ position: Array.from(this.parentNode.children).indexOf(this),
52
+ renderItems: () => this.renderItems(),
53
+ };
54
+ }
55
+ retrieveLocalStorage() {
56
+ return this.storage.getParsedJSON(StorageItems.RECENT_QUERIES, []);
57
+ }
58
+ updateLocalStorage() {
59
+ if (!this.recentQueriesList.state.analyticsEnabled) {
60
+ return this.disableFeature();
61
+ }
62
+ return this.storage.setJSON(StorageItems.RECENT_QUERIES, this.recentQueriesList.state.queries);
63
+ }
64
+ disableFeature() {
65
+ this.warnUser();
66
+ this.storage.removeItem(StorageItems.RECENT_QUERIES);
67
+ }
68
+ renderItems() {
69
+ if (!this.recentQueriesList.state.analyticsEnabled) {
70
+ return [];
71
+ }
72
+ const query = this.bindings.searchBoxController.state.value;
73
+ const hasQuery = query !== '';
74
+ const max = hasQuery ? this.maxWithQuery : this.maxWithoutQuery;
75
+ const filteredQueries = this.recentQueriesList.state.queries
76
+ .filter((recentQuery) => recentQuery.toLowerCase().startsWith(query.toLowerCase()))
77
+ .slice(0, max);
78
+ const suggestionElements = filteredQueries.map((value) => this.renderItem(value));
79
+ if (suggestionElements.length) {
80
+ suggestionElements.unshift(this.renderClear());
81
+ }
82
+ return suggestionElements;
83
+ }
84
+ renderClear() {
85
+ const partialItem = getPartialRecentQueryClearElement(this.bindings.i18n);
86
+ return {
87
+ ...partialItem,
88
+ content: renderRecentQueryClear({ i18n: this.bindings.i18n }),
89
+ onSelect: () => {
90
+ this.recentQueriesList.clear();
91
+ this.bindings.triggerSuggestions();
92
+ },
93
+ };
94
+ }
95
+ renderItem(value) {
96
+ const query = this.bindings.searchBoxController.state.value;
97
+ const partialItem = getPartialRecentQueryElement(value, this.bindings.i18n);
98
+ return {
99
+ ...partialItem,
100
+ content: renderRecentQuery({
101
+ icon: this.icon || Clock,
102
+ query,
103
+ value,
104
+ }),
105
+ onSelect: () => {
106
+ if (this.bindings.isStandalone) {
107
+ this.bindings.searchBoxController.updateText(value);
108
+ this.bindings.searchBoxController.submit();
109
+ return;
110
+ }
111
+ this.recentQueriesList.executeRecentQuery(this.recentQueriesList.state.queries.indexOf(value));
112
+ },
113
+ };
114
+ }
115
+ render() {
116
+ return html `${nothing}`;
117
+ }
118
+ };
119
+ __decorate([
120
+ state()
121
+ ], AtomicSearchBoxRecentQueries.prototype, "error", void 0);
122
+ __decorate([
123
+ property()
124
+ ], AtomicSearchBoxRecentQueries.prototype, "icon", void 0);
125
+ __decorate([
126
+ property({ type: Number, attribute: 'max-with-query', reflect: true })
127
+ ], AtomicSearchBoxRecentQueries.prototype, "maxWithQuery", void 0);
128
+ __decorate([
129
+ property({ type: Number, attribute: 'max-without-query', reflect: true })
130
+ ], AtomicSearchBoxRecentQueries.prototype, "maxWithoutQuery", void 0);
131
+ __decorate([
132
+ errorGuard()
133
+ ], AtomicSearchBoxRecentQueries.prototype, "render", null);
134
+ AtomicSearchBoxRecentQueries = __decorate([
135
+ customElement('atomic-search-box-recent-queries')
136
+ ], AtomicSearchBoxRecentQueries);
137
+ export { AtomicSearchBoxRecentQueries };
@@ -8,7 +8,7 @@ import { buildSearchEngine, buildSearchStatus, buildUrlManager, EcommerceDefault
8
8
  import { provide } from '@lit/context';
9
9
  import i18next from 'i18next';
10
10
  import { css, html, LitElement } from 'lit';
11
- import { customElement, property, state } from 'lit/decorators.js';
11
+ import { customElement, property, query, state } from 'lit/decorators.js';
12
12
  import { when } from 'lit/directives/when.js';
13
13
  import { InterfaceController, } from "../../common/interface/interface-controller";
14
14
  import { MobileBreakpointController } from "../../common/layout/mobile-breakpoint-controller";
@@ -21,6 +21,7 @@ import { withTailwindStyles } from "../../../decorators/with-tailwind-styles.js"
21
21
  import { ChildrenUpdateCompleteMixin } from "../../../mixins/children-update-complete-mixin";
22
22
  import { markParentAsReady } from "../../../utils/init-queue";
23
23
  import { SafeStorage, StorageItems, } from "../../../utils/local-storage-utils";
24
+ import "../atomic-relevance-inspector/atomic-relevance-inspector";
24
25
  import { getAnalyticsConfig } from './analytics-config';
25
26
  import { createSearchStore } from './store';
26
27
  // TODO - Remove once all components that use atomic-modal have been migrated.
@@ -35,7 +36,6 @@ let AtomicSearchInterface = class AtomicSearchInterface extends ChildrenUpdateCo
35
36
  constructor() {
36
37
  super();
37
38
  this.bindings = {};
38
- this.relevanceInspectorIsOpen = false;
39
39
  this.unsubscribeUrlManager = () => { };
40
40
  this.unsubscribeSearchStatus = () => { };
41
41
  this.initialized = false;
@@ -105,11 +105,6 @@ let AtomicSearchInterface = class AtomicSearchInterface extends ChildrenUpdateCo
105
105
  this.handleInitialization = (event) => {
106
106
  this.interfaceController.onComponentInitializing(event);
107
107
  };
108
- this.handleRelevanceInspectorDoubleClick = (e) => {
109
- if (e.altKey) {
110
- this.relevanceInspectorIsOpen = !this.relevanceInspectorIsOpen;
111
- }
112
- };
113
108
  this.onHashChange = () => {
114
109
  this.urlManager.synchronize(this.fragment);
115
110
  };
@@ -122,15 +117,13 @@ let AtomicSearchInterface = class AtomicSearchInterface extends ChildrenUpdateCo
122
117
  connectedCallback() {
123
118
  super.connectedCallback();
124
119
  this.store.setLoadingFlag(FirstSearchExecutedFlag);
125
- this.initRelevanceInspector();
126
120
  this.addEventListener('atomic/initializeComponent', this.handleInitialization);
127
121
  this.addEventListener('atomic/scrollToTop', this.scrollToTop);
128
- this.addEventListener('atomic/relevanceInspector/close', this.closeRelevanceInspector);
129
122
  }
130
123
  willUpdate(changedProperties) {
131
124
  super.willUpdate(changedProperties);
132
125
  if (changedProperties.has('fieldsToInclude')) {
133
- this.initFieldsToInclude();
126
+ this.updateFieldsToInclude();
134
127
  }
135
128
  }
136
129
  disconnectedCallback() {
@@ -144,8 +137,6 @@ let AtomicSearchInterface = class AtomicSearchInterface extends ChildrenUpdateCo
144
137
  window.removeEventListener('hashchange', this.onHashChange);
145
138
  this.removeEventListener('atomic/initializeComponent', this.handleInitialization);
146
139
  this.removeEventListener('atomic/scrollToTop', this.scrollToTop);
147
- this.removeEventListener('atomic/relevanceInspector/close', this.closeRelevanceInspector);
148
- this.removeEventListener('dblclick', this.handleRelevanceInspectorDoubleClick);
149
140
  }
150
141
  // TODO - (v4) KIT-4991: Make private.
151
142
  scrollToTop() {
@@ -156,8 +147,13 @@ let AtomicSearchInterface = class AtomicSearchInterface extends ChildrenUpdateCo
156
147
  }
157
148
  scrollContainerElement.scrollIntoView({ behavior: 'smooth' });
158
149
  }
150
+ /**
151
+ * @deprecated provided for backward compatibility. set the 'open' property directly on the relevance inspector instead.
152
+ */
159
153
  closeRelevanceInspector() {
160
- this.relevanceInspectorIsOpen = false;
154
+ if (this.relevanceInspector) {
155
+ this.relevanceInspector.open = false;
156
+ }
161
157
  }
162
158
  /**
163
159
  * Initializes the connection with the headless search engine using options for `accessToken` (required), `organizationId` (required), `environment` (defaults to `prod`), and `renewAccessToken`.
@@ -260,6 +256,11 @@ let AtomicSearchInterface = class AtomicSearchInterface extends ChildrenUpdateCo
260
256
  const fields = EcommerceDefaultFieldsToInclude.concat(this.fieldsToInclude);
261
257
  this.store.addFieldsToInclude(fields);
262
258
  }
259
+ updateFieldsToInclude() {
260
+ this.store.state.fieldsToInclude = [];
261
+ this.initFieldsToInclude();
262
+ this.registerFieldsToInclude();
263
+ }
263
264
  registerFieldsToInclude() {
264
265
  this.engine?.dispatch(loadFieldActions(this.engine).registerFieldsToInclude(this.store.state.fieldsToInclude));
265
266
  }
@@ -314,11 +315,6 @@ let AtomicSearchInterface = class AtomicSearchInterface extends ChildrenUpdateCo
314
315
  this.unsubscribeUrlManager = this.urlManager.subscribe(() => this.updateHash());
315
316
  window.addEventListener('hashchange', this.onHashChange);
316
317
  }
317
- initRelevanceInspector() {
318
- if (this.enableRelevanceInspector && !this.disableRelevanceInspector) {
319
- this.addEventListener('dblclick', this.handleRelevanceInspectorDoubleClick);
320
- }
321
- }
322
318
  initSearchStatus() {
323
319
  this.searchStatus = buildSearchStatus(this.engine);
324
320
  this.unsubscribeSearchStatus = this.searchStatus.subscribe(() => {
@@ -363,10 +359,7 @@ let AtomicSearchInterface = class AtomicSearchInterface extends ChildrenUpdateCo
363
359
  return html `
364
360
  ${when(this.bindings?.engine &&
365
361
  this.enableRelevanceInspector &&
366
- !this.disableRelevanceInspector, () => html `<atomic-relevance-inspector
367
- ?open=${this.relevanceInspectorIsOpen}
368
- .bindings=${this.bindings}
369
- ></atomic-relevance-inspector>`)}
362
+ !this.disableRelevanceInspector, () => html `<atomic-relevance-inspector></atomic-relevance-inspector>`)}
370
363
  <slot></slot>
371
364
  `;
372
365
  }
@@ -382,8 +375,8 @@ __decorate([
382
375
  state()
383
376
  ], AtomicSearchInterface.prototype, "error", void 0);
384
377
  __decorate([
385
- state()
386
- ], AtomicSearchInterface.prototype, "relevanceInspectorIsOpen", void 0);
378
+ query('atomic-relevance-inspector')
379
+ ], AtomicSearchInterface.prototype, "relevanceInspector", void 0);
387
380
  __decorate([
388
381
  property({
389
382
  type: Array,
@@ -1,5 +1,9 @@
1
1
  // Auto-generated file
2
+ export { AtomicPager } from './atomic-pager/atomic-pager.js';
2
3
  export { AtomicQuerySummary } from './atomic-query-summary/atomic-query-summary.js';
4
+ export { AtomicRelevanceInspector } from './atomic-relevance-inspector/atomic-relevance-inspector.js';
3
5
  export { AtomicResultsPerPage } from './atomic-results-per-page/atomic-results-per-page.js';
6
+ export { AtomicSearchBoxInstantResults } from './atomic-search-box-instant-results/atomic-search-box-instant-results.js';
7
+ export { AtomicSearchBoxRecentQueries } from './atomic-search-box-recent-queries/atomic-search-box-recent-queries.js';
4
8
  export { AtomicSearchInterface } from './atomic-search-interface/atomic-search-interface.js';
5
9
  export { AtomicSearchLayout } from './atomic-search-layout/atomic-search-layout.js';
@@ -1,7 +1,11 @@
1
1
  // Auto-generated file
2
2
  export default {
3
+ 'atomic-pager': async () => await import('./atomic-pager/atomic-pager.js'),
3
4
  'atomic-query-summary': async () => await import('./atomic-query-summary/atomic-query-summary.js'),
5
+ 'atomic-relevance-inspector': async () => await import('./atomic-relevance-inspector/atomic-relevance-inspector.js'),
4
6
  'atomic-results-per-page': async () => await import('./atomic-results-per-page/atomic-results-per-page.js'),
7
+ 'atomic-search-box-instant-results': async () => await import('./atomic-search-box-instant-results/atomic-search-box-instant-results.js'),
8
+ 'atomic-search-box-recent-queries': async () => await import('./atomic-search-box-recent-queries/atomic-search-box-recent-queries.js'),
5
9
  'atomic-search-interface': async () => await import('./atomic-search-interface/atomic-search-interface.js'),
6
10
  'atomic-search-layout': async () => await import('./atomic-search-layout/atomic-search-layout.js'),
7
11
  };
@@ -1,4 +1,4 @@
1
- import { c as containsSections } from './sections2.js';
1
+ import { c as containsSections } from './item-layout-sections.js';
2
2
 
3
3
  function getDisplayClass(display) {
4
4
  switch (display) {
@@ -1 +1 @@
1
- {"file":"display-options.js","mappings":";;AAQA,SAAS,eAAe,CAAC,OAA0B;IACjD,QAAQ,OAAO;QACb,KAAK,MAAM;YACT,OAAO,cAAc,CAAC;QACxB,KAAK,OAAO;YACV,OAAO,eAAe,CAAC;QACzB;YACE,OAAO,cAAc,CAAC;KACzB;AACH,CAAC;AAED,SAAS,eAAe,CAAC,OAA2B;IAClD,QAAQ,OAAO;QACb,KAAK,aAAa;YAChB,OAAO,qBAAqB,CAAC;QAC/B,KAAK,SAAS;YACZ,OAAO,iBAAiB,CAAC;QAC3B;YACE,OAAO,gBAAgB,CAAC;KAC3B;AACH,CAAC;AAED,SAAS,aAAa,CAAC,KAA2B;IAChD,QAAQ,KAAK;QACX,KAAK,OAAO;YACV,OAAO,aAAa,CAAC;QACvB,KAAK,OAAO;YACV,OAAO,aAAa,CAAC;QACvB,KAAK,MAAM;YACT,OAAO,YAAY,CAAC;QACtB;YACE,OAAO,YAAY,CAAC;KACvB;AACH,CAAC;SAEe,yBAAyB,CACvC,OAA0B,EAC1B,OAA2B,EAC3B,KAA2B,EAC3B,SAAkB,EAClB,YAAqB;IAErB,MAAM,OAAO,GAAG,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAE/D,IAAI,SAAS,EAAE;QACb,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KACzB;IAED,IAAI,YAAY,EAAE;QAChB,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;KAC7B;IACD,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC;SAEe,qBAAqB,CACnC,OAA0B,EAC1B,OAA2B,EAC3B,KAA2B;IAE3B,MAAM,OAAO,GAAG;QACd,eAAe,CAAC,OAAO,CAAC;QACxB,eAAe,CAAC,OAAO,CAAC;QACxB,aAAa,CAAC,KAAK,CAAC;KACrB,CAAC;IACF,OAAO,OAAO,CAAC;AACjB,CAAC;MAEY,UAAU;IAMrB,YACE,QAAwB,EACxB,OAA0B,EAC1B,OAA2B,EAC3B,SAA+B;QAE/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC5B;IAEO,wBAAwB;QAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAC/B,8BAA8B,CAC/B,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;QAC9B,IAAI,CAAC,SAAS,EAAE;YACd,OAAO,SAAS,CAAC;SAClB;QACD,OAAO,SAAiC,CAAC;KAC1C;IAEO,UAAU,CAAC,OAA2B;QAC5C,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CACnC,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,OAAO,CACvD,CAAC;KACH;IAEM,UAAU,CAAC,WAAoB;QACpC,MAAM,OAAO,GAAG,qBAAqB,CACnC,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,wBAAwB,EAAE,IAAI,IAAI,CAAC,SAAS,CAClD,CAAC;QACF,IACE,WAAW;cACP,gBAAgB,CAAC,WAAW,CAAC;cAC7B,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,EACnC;YACA,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;SAC/B;QACD,OAAO,OAAO,CAAC;KAChB;;;;;","names":[],"sources":["src/components/common/layout/display-options.ts"],"sourcesContent":["import {containsSections, type ItemSectionTagName} from './sections';\n\nexport type ItemDisplayBasicLayout = 'list' | 'grid';\nexport type ItemDisplayLayout = ItemDisplayBasicLayout | 'table';\nexport type ItemDisplayDensity = 'comfortable' | 'normal' | 'compact';\nexport type ItemDisplayImageSize = 'large' | 'small' | 'icon' | 'none';\nexport type ItemTarget = '_self' | '_blank' | '_parent' | '_top';\n\nfunction getDisplayClass(display: ItemDisplayLayout) {\n switch (display) {\n case 'grid':\n return 'display-grid';\n case 'table':\n return 'display-table';\n default:\n return 'display-list';\n }\n}\n\nfunction getDensityClass(density: ItemDisplayDensity) {\n switch (density) {\n case 'comfortable':\n return 'density-comfortable';\n case 'compact':\n return 'density-compact';\n default:\n return 'density-normal';\n }\n}\n\nfunction getImageClass(image: ItemDisplayImageSize) {\n switch (image) {\n case 'large':\n return 'image-large';\n case 'small':\n return 'image-small';\n case 'none':\n return 'image-none';\n default:\n return 'image-icon';\n }\n}\n\nexport function getItemListDisplayClasses(\n display: ItemDisplayLayout,\n density: ItemDisplayDensity,\n image: ItemDisplayImageSize,\n isLoading: boolean,\n isAppLoading: boolean\n) {\n const classes = getItemDisplayClasses(display, density, image);\n\n if (isLoading) {\n classes.push('loading');\n }\n\n if (isAppLoading) {\n classes.push('placeholder');\n }\n return classes.join(' ');\n}\n\nexport function getItemDisplayClasses(\n display: ItemDisplayLayout,\n density: ItemDisplayDensity,\n image: ItemDisplayImageSize\n) {\n const classes = [\n getDisplayClass(display),\n getDensityClass(density),\n getImageClass(image),\n ];\n return classes;\n}\n\nexport class ItemLayout {\n private children: HTMLCollection;\n private density: ItemDisplayDensity;\n private imageSize: ItemDisplayImageSize;\n private display: ItemDisplayLayout;\n\n constructor(\n children: HTMLCollection,\n display: ItemDisplayLayout,\n density: ItemDisplayDensity,\n imageSize: ItemDisplayImageSize\n ) {\n this.children = children;\n this.display = display;\n this.density = density;\n this.imageSize = imageSize;\n }\n\n private getImageSizeFromSections() {\n const imageSize = this.getSection(\n 'atomic-result-section-visual'\n )?.getAttribute('image-size');\n if (!imageSize) {\n return undefined;\n }\n return imageSize as ItemDisplayImageSize;\n }\n\n private getSection(section: ItemSectionTagName) {\n return Array.from(this.children).find(\n (element) => element.tagName.toLowerCase() === section\n );\n }\n\n public getClasses(HTMLContent?: string) {\n const classes = getItemDisplayClasses(\n this.display,\n this.density,\n this.getImageSizeFromSections() ?? this.imageSize\n );\n if (\n HTMLContent\n ? containsSections(HTMLContent)\n : containsSections(this.children)\n ) {\n classes.push('with-sections');\n }\n return classes;\n }\n}\n"],"version":3}
1
+ {"file":"display-options.js","mappings":";;AAWA,SAAS,eAAe,CAAC,OAA0B;IACjD,QAAQ,OAAO;QACb,KAAK,MAAM;YACT,OAAO,cAAc,CAAC;QACxB,KAAK,OAAO;YACV,OAAO,eAAe,CAAC;QACzB;YACE,OAAO,cAAc,CAAC;KACzB;AACH,CAAC;AAED,SAAS,eAAe,CAAC,OAA2B;IAClD,QAAQ,OAAO;QACb,KAAK,aAAa;YAChB,OAAO,qBAAqB,CAAC;QAC/B,KAAK,SAAS;YACZ,OAAO,iBAAiB,CAAC;QAC3B;YACE,OAAO,gBAAgB,CAAC;KAC3B;AACH,CAAC;AAED,SAAS,aAAa,CAAC,KAA2B;IAChD,QAAQ,KAAK;QACX,KAAK,OAAO;YACV,OAAO,aAAa,CAAC;QACvB,KAAK,OAAO;YACV,OAAO,aAAa,CAAC;QACvB,KAAK,MAAM;YACT,OAAO,YAAY,CAAC;QACtB;YACE,OAAO,YAAY,CAAC;KACvB;AACH,CAAC;SAEe,yBAAyB,CACvC,OAA0B,EAC1B,OAA2B,EAC3B,KAA2B,EAC3B,SAAkB,EAClB,YAAqB;IAErB,MAAM,OAAO,GAAG,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAE/D,IAAI,SAAS,EAAE;QACb,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KACzB;IAED,IAAI,YAAY,EAAE;QAChB,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;KAC7B;IACD,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC;SAEe,qBAAqB,CACnC,OAA0B,EAC1B,OAA2B,EAC3B,KAA2B;IAE3B,MAAM,OAAO,GAAG;QACd,eAAe,CAAC,OAAO,CAAC;QACxB,eAAe,CAAC,OAAO,CAAC;QACxB,aAAa,CAAC,KAAK,CAAC;KACrB,CAAC;IACF,OAAO,OAAO,CAAC;AACjB,CAAC;MAEY,UAAU;IAMrB,YACE,QAAwB,EACxB,OAA0B,EAC1B,OAA2B,EAC3B,SAA+B;QAE/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC5B;IAEO,wBAAwB;QAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAC/B,8BAA8B,CAC/B,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;QAC9B,IAAI,CAAC,SAAS,EAAE;YACd,OAAO,SAAS,CAAC;SAClB;QACD,OAAO,SAAiC,CAAC;KAC1C;IAEO,UAAU,CAAC,OAA2B;QAC5C,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CACnC,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,OAAO,CACvD,CAAC;KACH;IAEM,UAAU,CAAC,WAAoB;QACpC,MAAM,OAAO,GAAG,qBAAqB,CACnC,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,wBAAwB,EAAE,IAAI,IAAI,CAAC,SAAS,CAClD,CAAC;QACF,IACE,WAAW;cACP,gBAAgB,CAAC,WAAW,CAAC;cAC7B,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,EACnC;YACA,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;SAC/B;QACD,OAAO,OAAO,CAAC;KAChB;;;;;","names":[],"sources":["src/components/common/layout/display-options.ts"],"sourcesContent":["import {\n containsSections,\n type ItemSectionTagName,\n} from './item-layout-sections';\n\nexport type ItemDisplayBasicLayout = 'list' | 'grid';\nexport type ItemDisplayLayout = ItemDisplayBasicLayout | 'table';\nexport type ItemDisplayDensity = 'comfortable' | 'normal' | 'compact';\nexport type ItemDisplayImageSize = 'large' | 'small' | 'icon' | 'none';\nexport type ItemTarget = '_self' | '_blank' | '_parent' | '_top';\n\nfunction getDisplayClass(display: ItemDisplayLayout) {\n switch (display) {\n case 'grid':\n return 'display-grid';\n case 'table':\n return 'display-table';\n default:\n return 'display-list';\n }\n}\n\nfunction getDensityClass(density: ItemDisplayDensity) {\n switch (density) {\n case 'comfortable':\n return 'density-comfortable';\n case 'compact':\n return 'density-compact';\n default:\n return 'density-normal';\n }\n}\n\nfunction getImageClass(image: ItemDisplayImageSize) {\n switch (image) {\n case 'large':\n return 'image-large';\n case 'small':\n return 'image-small';\n case 'none':\n return 'image-none';\n default:\n return 'image-icon';\n }\n}\n\nexport function getItemListDisplayClasses(\n display: ItemDisplayLayout,\n density: ItemDisplayDensity,\n image: ItemDisplayImageSize,\n isLoading: boolean,\n isAppLoading: boolean\n) {\n const classes = getItemDisplayClasses(display, density, image);\n\n if (isLoading) {\n classes.push('loading');\n }\n\n if (isAppLoading) {\n classes.push('placeholder');\n }\n return classes.join(' ');\n}\n\nexport function getItemDisplayClasses(\n display: ItemDisplayLayout,\n density: ItemDisplayDensity,\n image: ItemDisplayImageSize\n) {\n const classes = [\n getDisplayClass(display),\n getDensityClass(density),\n getImageClass(image),\n ];\n return classes;\n}\n\nexport class ItemLayout {\n private children: HTMLCollection;\n private density: ItemDisplayDensity;\n private imageSize: ItemDisplayImageSize;\n private display: ItemDisplayLayout;\n\n constructor(\n children: HTMLCollection,\n display: ItemDisplayLayout,\n density: ItemDisplayDensity,\n imageSize: ItemDisplayImageSize\n ) {\n this.children = children;\n this.display = display;\n this.density = density;\n this.imageSize = imageSize;\n }\n\n private getImageSizeFromSections() {\n const imageSize = this.getSection(\n 'atomic-result-section-visual'\n )?.getAttribute('image-size');\n if (!imageSize) {\n return undefined;\n }\n return imageSize as ItemDisplayImageSize;\n }\n\n private getSection(section: ItemSectionTagName) {\n return Array.from(this.children).find(\n (element) => element.tagName.toLowerCase() === section\n );\n }\n\n public getClasses(HTMLContent?: string) {\n const classes = getItemDisplayClasses(\n this.display,\n this.density,\n this.getImageSizeFromSections() ?? this.imageSize\n );\n if (\n HTMLContent\n ? containsSections(HTMLContent)\n : containsSections(this.children)\n ) {\n classes.push('with-sections');\n }\n return classes;\n }\n}\n"],"version":3}
@@ -42,11 +42,11 @@ const FacetNumberInput = /*@__PURE__*/ proxyCustomElement(class FacetNumberInput
42
42
  const inputClasses = 'p-2.5 input-primary placeholder-neutral-dark min-w-0 mr-1';
43
43
  const labelClasses = 'text-neutral-dark text-sm';
44
44
  const step = this.type === 'integer' ? '1' : 'any';
45
- return (h("form", { key: '3afc8c27aad7fc2f3f280a8e5305dfdbc5291f74', class: "mt-4 gap-y-0.5 px-2", part: "input-form", onSubmit: (e) => {
45
+ return (h("form", { key: '86d1c2d7802d76a450c70e9b912a3625b58598e9', class: "mt-4 gap-y-0.5 px-2", part: "input-form", onSubmit: (e) => {
46
46
  e.preventDefault();
47
47
  this.apply();
48
48
  return false;
49
- } }, h("label", { key: '9749444397b017e575f1cbc598ef8d4e440dc8b0', part: "label-start", class: labelClasses, htmlFor: `${this.filterState.facetId}_start` }, minText), h("input", { key: '94b1e3e64ec6ef14aff52ecf8e18c52bc987c7a7', part: "input-start", id: `${this.filterState.facetId}_start`, type: "number", step: step, ref: (ref) => (this.startRef = ref), class: inputClasses, "aria-label": minAria, required: true, min: Number.MIN_SAFE_INTEGER, max: this.end, value: this.filterState.range?.start, onInput: (e) => (this.start = e.target.valueAsNumber) }), h("label", { key: '89da4fb4747fb9d0cba5251dd3972677867301de', part: "label-end", class: labelClasses, htmlFor: `${this.filterState.facetId}_end` }, maxText), h("input", { key: '17813e5183986382376d765716ed60bff74de98c', part: "input-end", id: `${this.filterState.facetId}_end`, type: "number", step: step, ref: (ref) => (this.endRef = ref), class: inputClasses, "aria-label": maxAria, required: true, min: this.start, max: Number.MAX_SAFE_INTEGER, value: this.filterState.range?.end, onInput: (e) => (this.end = e.target.valueAsNumber) }), h(Button, { key: 'a98a7d0b356bb5c3eeec2512d96fd5bedc3605a6', style: "outline-primary", type: "submit", part: "input-apply-button", class: "flex-none truncate p-2.5", ariaLabel: applyAria, text: apply })));
49
+ } }, h("label", { key: '4efbfd89bcef3fcb8069262be2f8e29e4c9ba4d5', part: "label-start", class: labelClasses, htmlFor: `${this.filterState.facetId}_start` }, minText), h("input", { key: 'aec5064d6ab22483bc8a4d0b2a21a1c7938d892d', part: "input-start", id: `${this.filterState.facetId}_start`, type: "number", step: step, ref: (ref) => (this.startRef = ref), class: inputClasses, "aria-label": minAria, required: true, min: Number.MIN_SAFE_INTEGER, max: this.end, value: this.filterState.range?.start, onInput: (e) => (this.start = e.target.valueAsNumber) }), h("label", { key: '4ace78b18cd98b105cf2d662061067baec719c24', part: "label-end", class: labelClasses, htmlFor: `${this.filterState.facetId}_end` }, maxText), h("input", { key: '5f607bf1dc3a62e3c80b58a27314814b70450839', part: "input-end", id: `${this.filterState.facetId}_end`, type: "number", step: step, ref: (ref) => (this.endRef = ref), class: inputClasses, "aria-label": maxAria, required: true, min: this.start, max: Number.MAX_SAFE_INTEGER, value: this.filterState.range?.end, onInput: (e) => (this.end = e.target.valueAsNumber) }), h(Button, { key: '3901070b4c6f0d81fe653a8b03eac8420945c463', style: "outline-primary", type: "submit", part: "input-apply-button", class: "flex-none truncate p-2.5", ariaLabel: applyAria, text: apply })));
50
50
  }
51
51
  static get style() { return AtomicFacetNumberInputStyle0; }
52
52
  }, [0, "atomic-facet-number-input", {
@@ -3,7 +3,7 @@ function getWindow() {
3
3
  }
4
4
  export function getAtomicEnvironment(headlessVersion) {
5
5
  return {
6
- version: "3.34.0-pre.d34e47bc86",
6
+ version: "3.34.0-pre.d729012f68",
7
7
  headlessVersion,
8
8
  };
9
9
  }
@@ -1 +1 @@
1
- {"file":"index.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;;;;;;;;;;;;SAYgB,cAAc,CAAoB,OAAgB;IAChE,OAAO,WAAW,CAAI,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACnD;;MCHa,kBAAmB,SAAQ,KAAK;IAC3C,YAAY,WAAmB,EAAE,UAAkB;QACjD,KAAK,CACH,QAAQ,WAAW,sCAAsC,UAAU,YAAY,CAChF,CAAC;KACH;;;ACfH,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;SAIpC,gBAAgB,CAAI,OAAgB,EAAE,UAAkB;IACtE,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM;QACpC,MAAM,KAAK,GAAG,gBAAgB,CAC5B,oBAAoB,EACpB,CAAC,IAAO;YACN,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;SACtB,CACF,CAAC;QACF,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAE7B,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE;YACjC,MAAM,CACJ,IAAI,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,UAAU,CAAC,CACnE,CAAC;SACH;KACF,CAAC,CAAC;AACL;;ACoDA;;;;;;;;;;SAUgB,mBAAmB,CAAoB,OAAgB;IACrE,OAAO,gBAAgB,CAAI,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACxD;;;;","names":[],"sources":["src/components/commerce/product-template-component-utils/stencil-product-template-decorators.tsx","src/components/common/item-list/context/item-context-controller.ts","src/components/common/item-list/fetch-item-context.ts","src/decorators/commerce/product-template-decorators.ts"],"sourcesContent":["import {Product} from '@coveo/headless/commerce';\nimport {itemContext} from '../../common/item-list/stencil-item-decorators';\n\n/**\n * Retrieves `Product` on a rendered `atomic-product`.\n *\n * This method is useful for building custom product template elements, see [Create a Product List](https://docs.coveo.com/en/atomic/latest/cc-search/create-custom-components/native-components/#custom-product-template-component-example) for more information.\n *\n * You should use the method in the [connectedCallback lifecycle method](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements#using_the_lifecycle_callbacks).\n *\n * @param element - The element that the event is dispatched to, which must be the child of a rendered \"atomic-product\".\n * @returns A promise that resolves on initialization of the parent \"atomic-product\" element, or rejects when there is no parent \"atomic-product\" element.\n *\n * @deprecated should only be used for Stencil components. For Lit components, use `fetchProductContext` from \\@/src/decorators/commerce/product-template-decorators.ts\n */\nexport function productContext<T extends Product>(element: Element) {\n return itemContext<T>(element, 'atomic-product');\n}\n","import type {LitElement, ReactiveController, ReactiveControllerHost} from 'lit';\nimport type {InitializableComponent} from '@/src/decorators/types.js';\nimport {buildCustomEvent} from '@/src/utils/event-utils';\n\ntype LitElementWithError = Omit<\n Pick<InitializableComponent, 'error'>,\n 'error'\n> &\n LitElement & {\n error: Error | null;\n };\n\nconst itemContextEventName = 'atomic/resolveResult';\n\nexport class MissingParentError extends Error {\n constructor(elementName: string, parentName: string) {\n super(\n `The \"${elementName}\" element must be the child of an \"${parentName}\" element.`\n );\n }\n}\n\nfunction extractFolded<T = Record<string, unknown>>(\n item: Record<string, unknown>,\n returnFolded: boolean\n): T {\n if (returnFolded) {\n if ('children' in item) {\n return item as T;\n } else {\n return {children: [], result: item} as T;\n }\n }\n\n if ('children' in item && 'result' in item) {\n return item.result as T;\n }\n return item as T;\n}\n\n/**\n * A reactive controller that manages item context data from parent components.\n * Handles fetching item data via custom events and manages error states.\n */\nexport class ItemContextController<T = Record<string, unknown>>\n implements ReactiveController\n{\n private host: ReactiveControllerHost & LitElementWithError;\n private parentName: string;\n private folded: boolean;\n private _item: T | null = null;\n private _error: MissingParentError | null = null;\n\n constructor(\n host: ReactiveControllerHost & LitElementWithError,\n options: {parentName?: string; folded?: boolean} = {}\n ) {\n this.host = host;\n this.parentName = options.parentName ?? 'atomic-result';\n this.folded = options.folded ?? false;\n host.addController(this);\n }\n\n get item(): T | null {\n return this._error ? null : this._item;\n }\n\n get error(): MissingParentError | null {\n return this._error;\n }\n\n get hasError(): boolean {\n return this._error !== null;\n }\n\n hostConnected(): void {\n this._resolveItemContext();\n }\n\n private _resolveItemContext(): void {\n const event = buildCustomEvent(\n itemContextEventName,\n (item: Record<string, unknown>) => {\n this._item = extractFolded<T>(item, this.folded);\n this._error = null;\n this.host.error = null;\n this.host.requestUpdate();\n }\n );\n\n const canceled = this.host.dispatchEvent(event);\n if (canceled) {\n const elementName = (this.host as Element).nodeName.toLowerCase();\n this._error = new MissingParentError(elementName, this.parentName);\n this._item = null;\n this.host.error = this._error;\n this.host.requestUpdate();\n }\n }\n}\n\ntype ItemContextEventHandler<T> = (item: T) => void;\nexport type ItemContextEvent<T> = CustomEvent<ItemContextEventHandler<T>>;\n","import {closest} from '../../../utils/dom-utils.js';\nimport {buildCustomEvent} from '../../../utils/event-utils.js';\nimport {MissingParentError} from './context/item-context-controller.js';\n\nconst itemContextEventName = 'atomic/resolveResult';\n\ntype ItemContextEventHandler<T> = (item: T) => void;\n\nexport function fetchItemContext<T>(element: Element, parentName: string) {\n return new Promise<T>((resolve, reject) => {\n const event = buildCustomEvent<ItemContextEventHandler<T>>(\n itemContextEventName,\n (item: T) => {\n return resolve(item);\n }\n );\n element.dispatchEvent(event);\n\n if (!closest(element, parentName)) {\n reject(\n new MissingParentError(element.nodeName.toLowerCase(), parentName)\n );\n }\n });\n}\n","import type {InteractiveProduct, Product} from '@coveo/headless/commerce';\nimport type {LitElement} from 'lit';\nimport {\n InteractiveItemContextController,\n type InteractiveItemContextEvent,\n} from '@/src/components/common/item-list/context/interactive-item-context-controller';\nimport {\n ItemContextController,\n type ItemContextEvent,\n} from '@/src/components/common/item-list/context/item-context-controller';\nimport {fetchItemContext} from '@/src/components/common/item-list/fetch-item-context';\n\n/**\n * Creates a [Lit reactive controller](https://lit.dev/docs/composition/controllers/) for managing product context in product template components.\n *\n * @param host - The Lit component instance\n * @param options - Configuration options\n * @returns ItemContextController instance configured for atomic-product\n *\n * @example\n * ```typescript\n * @customElement('my-product-component')\n * export class MyProductComponent extends LitElement {\n * private productController = createProductContextController(this);\n *\n * @state() product!: Product;\n *\n * render() {\n * this.product = this.productController.item;\n * return html`<div>${this.product?.ec_name}</div>`;\n * }\n * }\n * ```\n */\nexport function createProductContextController(\n host: LitElement & {error: Error | null},\n options: {folded?: boolean} = {}\n): ItemContextController<Product> {\n return new ItemContextController<Product>(host, {\n parentName: 'atomic-product',\n folded: options.folded ?? false,\n });\n}\n\n/**\n * Creates a [Lit reactive controller](https://lit.dev/docs/composition/controllers/) for managing interactive product context in product template components.\n *\n * @param host - The Lit component instance\n * @returns InteractiveItemContextController instance\n *\n * @example\n * ```typescript\n * @customElement('my-interactive-product-component')\n * export class MyInteractiveProductComponent extends LitElement {\n * private interactiveProductController = createInteractiveProductContextController(this);\n *\n * @state() product!: Product;\n *\n * render() {\n * this.product = this.interactiveProductController.interactiveItem;\n * return html`<div>${this.product?.ec_name}</div>`;\n * }\n * }\n * ```\n */\nexport function createInteractiveProductContextController(\n host: LitElement & {error: Error}\n): InteractiveItemContextController<InteractiveProduct> {\n return new InteractiveItemContextController<InteractiveProduct>(host);\n}\n\nexport type ProductContextEvent<T = Product> = ItemContextEvent<T>;\nexport type InteractiveProductContextEvent<\n T extends InteractiveProduct = InteractiveProduct,\n> = InteractiveItemContextEvent<T>;\n\n/**\n * Retrieves `Product` on a rendered `atomic-product`.\n *\n * This utility function is useful for building custom product template elements, see [Create a Product List](https://docs.coveo.com/en/atomic/latest/cc-search/create-custom-components/native-components/#custom-product-template-component-example) for more information.\n *\n * You should use the utility function in the [`connectedCallback` lifecycle method](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements#using_the_lifecycle_callbacks).\n *\n * @param element - The element that the event is dispatched to, which must be the child of a rendered `atomic-product`.\n * @returns A promise that resolves on initialization of the parent `atomic-product` element, or rejects when there is no parent `atomic-product` element.\n */\nexport function fetchProductContext<T extends Product>(element: Element) {\n return fetchItemContext<T>(element, 'atomic-product');\n}\n"],"version":3}
1
+ {"file":"index.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;;;;;;;;;;;;SAYgB,cAAc,CAAoB,OAAgB;IAChE,OAAO,WAAW,CAAI,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACnD;;MCHa,kBAAmB,SAAQ,KAAK;IAC3C,YAAY,WAAmB,EAAE,UAAkB;QACjD,KAAK,CACH,QAAQ,WAAW,sCAAsC,UAAU,YAAY,CAChF,CAAC;KACH;;;ACfH,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;SAIpC,gBAAgB,CAAI,OAAgB,EAAE,UAAkB;IACtE,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM;QACpC,MAAM,KAAK,GAAG,gBAAgB,CAC5B,oBAAoB,EACpB,CAAC,IAAO;YACN,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;SACtB,CACF,CAAC;QACF,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAE7B,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE;YACjC,MAAM,CACJ,IAAI,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,UAAU,CAAC,CACnE,CAAC;SACH;KACF,CAAC,CAAC;AACL;;ACoDA;;;;;;;;;;SAUgB,mBAAmB,CAAoB,OAAgB;IACrE,OAAO,gBAAgB,CAAI,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACxD;;;;","names":[],"sources":["src/components/commerce/product-template-component-utils/stencil-product-template-decorators.tsx","src/components/common/item-list/context/item-context-controller.ts","src/components/common/item-list/fetch-item-context.ts","src/decorators/commerce/product-template-decorators.ts"],"sourcesContent":["import {Product} from '@coveo/headless/commerce';\nimport {itemContext} from '../../common/item-list/stencil-item-decorators';\n\n/**\n * Retrieves `Product` on a rendered `atomic-product`.\n *\n * This method is useful for building custom product template elements, see [Create a Product List](https://docs.coveo.com/en/atomic/latest/cc-search/create-custom-components/native-components/#custom-product-template-component-example) for more information.\n *\n * You should use the method in the [connectedCallback lifecycle method](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements#using_the_lifecycle_callbacks).\n *\n * @param element - The element that the event is dispatched to, which must be the child of a rendered \"atomic-product\".\n * @returns A promise that resolves on initialization of the parent \"atomic-product\" element, or rejects when there is no parent \"atomic-product\" element.\n *\n * @deprecated should only be used for Stencil components. For Lit components, use `fetchProductContext` from \\@/src/decorators/commerce/product-template-decorators.ts\n */\nexport function productContext<T extends Product>(element: Element) {\n return itemContext<T>(element, 'atomic-product');\n}\n","import type {LitElement, ReactiveController, ReactiveControllerHost} from 'lit';\nimport type {InitializableComponent} from '@/src/decorators/types.js';\nimport {buildCustomEvent} from '@/src/utils/event-utils';\n\ntype LitElementWithError = Omit<\n Pick<InitializableComponent, 'error'>,\n 'error'\n> &\n LitElement & {\n error: Error | null;\n };\n\nconst itemContextEventName = 'atomic/resolveResult';\n\nexport class MissingParentError extends Error {\n constructor(elementName: string, parentName: string) {\n super(\n `The \"${elementName}\" element must be the child of an \"${parentName}\" element.`\n );\n }\n}\n\nfunction extractFolded<T = Record<string, unknown>>(\n item: Record<string, unknown>,\n returnFolded: boolean\n): T {\n if (returnFolded) {\n if ('children' in item) {\n return item as T;\n } else {\n return {children: [], result: item} as T;\n }\n }\n\n if ('children' in item && 'result' in item) {\n return item.result as T;\n }\n return item as T;\n}\n\n/**\n * A reactive controller that manages item context data from parent components.\n * Handles fetching item data via custom events and manages error states.\n */\nexport class ItemContextController<T = Record<string, unknown>>\n implements ReactiveController\n{\n private host: ReactiveControllerHost & LitElementWithError;\n private parentName: string;\n private folded: boolean;\n private _item: T | null = null;\n private _error: MissingParentError | null = null;\n\n constructor(\n host: ReactiveControllerHost & LitElementWithError,\n options: {parentName?: string; folded?: boolean} = {}\n ) {\n this.host = host;\n this.parentName = options.parentName ?? 'atomic-result';\n this.folded = options.folded ?? false;\n host.addController(this);\n }\n\n get item(): T | null {\n return this._error ? null : this._item;\n }\n\n get error(): MissingParentError | null {\n return this._error;\n }\n\n get hasError(): boolean {\n return this._error !== null;\n }\n\n hostConnected(): void {\n this._resolveItemContext();\n }\n\n private _resolveItemContext(): void {\n const event = buildCustomEvent(\n itemContextEventName,\n (item: Record<string, unknown>) => {\n this._item = extractFolded<T>(item, this.folded);\n this._error = null;\n this.host.error = null;\n this.host.requestUpdate();\n }\n );\n\n const canceled = this.host.dispatchEvent(event);\n if (canceled) {\n const elementName = (this.host as Element).nodeName.toLowerCase();\n this._error = new MissingParentError(elementName, this.parentName);\n this._item = null;\n this.host.error = this._error;\n this.host.requestUpdate();\n }\n }\n}\n\ntype ItemContextEventHandler<T> = (item: T) => void;\nexport type ItemContextEvent<T> = CustomEvent<ItemContextEventHandler<T>>;\n","import {closest} from '../../../utils/dom-utils.js';\nimport {buildCustomEvent} from '../../../utils/event-utils.js';\nimport {MissingParentError} from './context/item-context-controller.js';\n\nconst itemContextEventName = 'atomic/resolveResult';\n\ntype ItemContextEventHandler<T> = (item: T) => void;\n\nexport function fetchItemContext<T>(element: Element, parentName: string) {\n return new Promise<T>((resolve, reject) => {\n const event = buildCustomEvent<ItemContextEventHandler<T>>(\n itemContextEventName,\n (item: T) => {\n return resolve(item);\n }\n );\n element.dispatchEvent(event);\n\n if (!closest(element, parentName)) {\n reject(\n new MissingParentError(element.nodeName.toLowerCase(), parentName)\n );\n }\n });\n}\n","import type {InteractiveProduct, Product} from '@coveo/headless/commerce';\nimport type {LitElement} from 'lit';\nimport {\n InteractiveItemContextController,\n type InteractiveItemContextEvent,\n} from '@/src/components/common/item-list/context/interactive-item-context-controller';\nimport {\n ItemContextController,\n type ItemContextEvent,\n} from '@/src/components/common/item-list/context/item-context-controller';\nimport {fetchItemContext} from '@/src/components/common/item-list/fetch-item-context';\n\n/**\n * Creates a [Lit reactive controller](https://lit.dev/docs/composition/controllers/) for managing product context in product template components.\n *\n * @param host - The Lit component instance\n * @param options - Configuration options\n * @returns ItemContextController instance configured for atomic-product\n *\n * @example\n * ```typescript\n * @customElement('my-product-component')\n * export class MyProductComponent extends LitElement {\n * private productController = createProductContextController(this);\n *\n * @state() product!: Product;\n *\n * render() {\n * this.product = this.productController.item;\n * return html`<div>${this.product?.ec_name}</div>`;\n * }\n * }\n * ```\n */\nexport function createProductContextController(\n host: LitElement & {error: Error | null},\n options: {folded?: boolean} = {}\n): ItemContextController<Product> {\n return new ItemContextController<Product>(host, {\n parentName: 'atomic-product',\n folded: options.folded ?? false,\n });\n}\n\n/**\n * Creates a [Lit reactive controller](https://lit.dev/docs/composition/controllers/) for managing interactive product context in product template components.\n *\n * @param host - The Lit component instance\n * @returns InteractiveItemContextController instance\n *\n * @example\n * ```typescript\n * @customElement('my-interactive-product-component')\n * export class MyInteractiveProductComponent extends LitElement {\n * private interactiveProductController = createInteractiveProductContextController(this);\n *\n * @state() product!: Product;\n *\n * render() {\n * this.product = this.interactiveProductController.interactiveItem;\n * return html`<div>${this.product?.ec_name}</div>`;\n * }\n * }\n * ```\n */\nexport function createInteractiveProductContextController(\n host: LitElement & {error: Error}\n): InteractiveItemContextController<InteractiveProduct> {\n return new InteractiveItemContextController<InteractiveProduct>(host);\n}\n\nexport type ProductContextEvent<T = Product> = ItemContextEvent<T>;\nexport type InteractiveProductContextEvent<\n T extends InteractiveProduct = InteractiveProduct,\n> = InteractiveItemContextEvent<T>;\n\n/**\n * Retrieves `Product` on a rendered `atomic-product`.\n *\n * This utility function is useful for building custom product template elements, see [Create a Product List](https://docs.coveo.com/en/atomic/latest/cc-search/create-custom-components/native-components/#custom-product-template-component-example) for more information.\n *\n * You should use the utility function in the [`connectedCallback` lifecycle method](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements#using_the_lifecycle_callbacks).\n *\n * @param element - The element that the event is dispatched to, which must be the child of a rendered `atomic-product`.\n * @returns A promise that resolves on initialization of the parent `atomic-product` element, or rejects when there is no parent `atomic-product` element.\n */\nexport function fetchProductContext<T extends Product>(element: Element) {\n return fetchItemContext<T>(element, 'atomic-product');\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
- import { f as findSection, s as sectionSelector } from './sections.js';
1
+ import { f as findSection, s as sectionSelector } from './atomic-layout-section-utils.js';
2
2
 
3
3
  const tabsSelector = 'atomic-insight-tabs';
4
4
  const refineModalSelector = 'atomic-insight-refine-modal';
@@ -1 +1 @@
1
- {"file":"insight-layout.js","mappings":";;AAKA,MAAM,YAAY,GAAG,qBAAqB,CAAC;AAC3C,MAAM,mBAAmB,GAAG,6BAA6B,CAAC;AAC1D,MAAM,iBAAiB,GAAG,2BAA2B,CAAC;AACtD,MAAM,eAAe,GAAG;IACtB,8BAA8B;IAC9B,4BAA4B;IAC5B,+BAA+B;CAChC,CAAC;AACF,MAAM,qBAAqB,GAAG;IAC5B,0CAA0C;IAC1C,8BAA8B;CAC/B,CAAC;AACF,MAAM,uBAAuB,GAAG,iCAAiC,CAAC;SAElD,gBAAgB,CAAC,gBAAwB;IACvD,OAAO,+BAA+B,gBAAgB,GAAG,CAAC;AAC5D,CAAC;SAEe,kBAAkB,CAAC,OAAoB,EAAE,MAAe;IACtE,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;IACtB,MAAM,cAAc,GAAG,yBAAyB,EAAE,EAAE,CAAC;IAErD,MAAM,OAAO,GAAG,OAAO,CACrB,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,aAAa,CAAC,YAAY,CAAC,CAC5D,CAAC;IAEF,MAAM,cAAc,GAAG,MAAM;UACzB;IACF,cAAc;;;;;;IAMd,cAAc,IAAI,mBAAmB;;IAErC;UACE,EAAE,CAAC;IAEP,MAAM,MAAM,GAAG,GAAG,eAAe,CAAC,QAAQ,CAAC;;;;;;;;;;;QAWrC,CAAC,OAAO,GAAG,yBAAyB,GAAG,EAAE;;;MAG3C,eAAe,CAAC,QAAQ,CAAC,IAAI,iBAAiB;;;;;MAK9C,eAAe,CAAC,GAAG,CACnB,CAAC,cAAc,KAAK,GAAG,eAAe,CAAC,QAAQ,CAAC,IAAI,cAAc;;MAElE,CACD;;MAEC,eAAe,CAAC,QAAQ,CAAC,IAAI,YAAY;;;KAG1C,CAAC;IAEJ,MAAM,MAAM,GAAG,GAAG,eAAe,CAAC,QAAQ,CAAC;;;KAGxC,CAAC;IAEJ,MAAM,OAAO,GAAG;MACZ,eAAe,CAAC,SAAS,CAAC;;;;MAI1B,eAAe,CAAC,SAAS,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC;;;;MAI7D,eAAe,CAAC,SAAS,CAAC,IAAI,uBAAuB;;;;KAItD,CAAC;IAEJ,OAAO,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;SAC7C,MAAM,CAAC,CAAC,WAAW,KAAK,WAAW,KAAK,EAAE,CAAC;SAC3C,IAAI,CAAC,MAAM,CAAC,CAAC;AAClB;;;;","names":[],"sources":["src/components/insight/atomic-insight-layout/insight-layout.ts"],"sourcesContent":["import {\n findSection,\n sectionSelector,\n} from '../../common/atomic-layout-section/sections';\n\nconst tabsSelector = 'atomic-insight-tabs';\nconst refineModalSelector = 'atomic-insight-refine-modal';\nconst searchBoxSelector = 'atomic-insight-search-box';\nconst toggleSelectors = [\n 'atomic-insight-refine-toggle',\n 'atomic-insight-edit-toggle',\n 'atomic-insight-history-toggle',\n];\nconst smartSnippetSelectors = [\n 'atomic-insight-smart-snippet-suggestions',\n 'atomic-insight-smart-snippet',\n];\nconst generatedAnswerSelector = 'atomic-insight-generated-answer';\n\nexport function makeDesktopQuery(mobileBreakpoint: string) {\n return `only screen and (min-width: ${mobileBreakpoint})`;\n}\n\nexport function buildInsightLayout(element: HTMLElement, widget: boolean) {\n const id = element.id;\n const layoutSelector = `atomic-insight-layout#${id}`;\n\n const hasTabs = Boolean(\n findSection(element, 'search')?.querySelector(tabsSelector)\n );\n\n const interfaceStyle = widget\n ? `\n ${layoutSelector} {\n display: grid;\n grid-template-rows: auto auto 8fr 1fr;\n max-height: 100%;\n box-sizing: border-box;\n }\n ${layoutSelector} ${refineModalSelector} {\n grid-row-start: 5;\n }`\n : '';\n\n const search = `${sectionSelector('search')} {\n width: 100%;\n display: flex;\n flex-wrap: wrap;\n grid-gap: 0.5rem;\n background: var(--atomic-neutral-light);\n padding-top: 1.5rem;\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n box-sizing: border-box;\n min-width: 0;\n ${!hasTabs ? 'padding-bottom: 1.5rem;' : ''}\n }\n\n ${sectionSelector('search')} ${searchBoxSelector} {\n flex-grow: 1;\n height: 2.6rem;\n }\n\n ${toggleSelectors.map(\n (toggleSelector) => `${sectionSelector('search')} ${toggleSelector} {\n flex-shrink: 0;\n }`\n )}\n\n ${sectionSelector('search')} ${tabsSelector} {\n width: 100%;\n }\n `;\n\n const facets = `${sectionSelector('facets')} {\n display: none;\n }\n `;\n\n const results = `\n ${sectionSelector('results')} {\n overflow: auto;\n }\n\n ${sectionSelector('results')} ${smartSnippetSelectors.join(',')} {\n padding: 1.5rem 1.5rem 0px;\n }\n\n ${sectionSelector('results')} ${generatedAnswerSelector} {\n margin-left: 1.5rem;\n margin-right: 1.5rem;\n }\n `;\n\n return [interfaceStyle, search, facets, results]\n .filter((declaration) => declaration !== '')\n .join('\\n\\n');\n}\n"],"version":3}
1
+ {"file":"insight-layout.js","mappings":";;AAKA,MAAM,YAAY,GAAG,qBAAqB,CAAC;AAC3C,MAAM,mBAAmB,GAAG,6BAA6B,CAAC;AAC1D,MAAM,iBAAiB,GAAG,2BAA2B,CAAC;AACtD,MAAM,eAAe,GAAG;IACtB,8BAA8B;IAC9B,4BAA4B;IAC5B,+BAA+B;CAChC,CAAC;AACF,MAAM,qBAAqB,GAAG;IAC5B,0CAA0C;IAC1C,8BAA8B;CAC/B,CAAC;AACF,MAAM,uBAAuB,GAAG,iCAAiC,CAAC;SAElD,gBAAgB,CAAC,gBAAwB;IACvD,OAAO,+BAA+B,gBAAgB,GAAG,CAAC;AAC5D,CAAC;SAEe,kBAAkB,CAAC,OAAoB,EAAE,MAAe;IACtE,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;IACtB,MAAM,cAAc,GAAG,yBAAyB,EAAE,EAAE,CAAC;IAErD,MAAM,OAAO,GAAG,OAAO,CACrB,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,aAAa,CAAC,YAAY,CAAC,CAC5D,CAAC;IAEF,MAAM,cAAc,GAAG,MAAM;UACzB;IACF,cAAc;;;;;;IAMd,cAAc,IAAI,mBAAmB;;IAErC;UACE,EAAE,CAAC;IAEP,MAAM,MAAM,GAAG,GAAG,eAAe,CAAC,QAAQ,CAAC;;;;;;;;;;;QAWrC,CAAC,OAAO,GAAG,yBAAyB,GAAG,EAAE;;;MAG3C,eAAe,CAAC,QAAQ,CAAC,IAAI,iBAAiB;;;;;MAK9C,eAAe,CAAC,GAAG,CACnB,CAAC,cAAc,KAAK,GAAG,eAAe,CAAC,QAAQ,CAAC,IAAI,cAAc;;MAElE,CACD;;MAEC,eAAe,CAAC,QAAQ,CAAC,IAAI,YAAY;;;KAG1C,CAAC;IAEJ,MAAM,MAAM,GAAG,GAAG,eAAe,CAAC,QAAQ,CAAC;;;KAGxC,CAAC;IAEJ,MAAM,OAAO,GAAG;MACZ,eAAe,CAAC,SAAS,CAAC;;;;MAI1B,eAAe,CAAC,SAAS,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC;;;;MAI7D,eAAe,CAAC,SAAS,CAAC,IAAI,uBAAuB;;;;KAItD,CAAC;IAEJ,OAAO,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;SAC7C,MAAM,CAAC,CAAC,WAAW,KAAK,WAAW,KAAK,EAAE,CAAC;SAC3C,IAAI,CAAC,MAAM,CAAC,CAAC;AAClB;;;;","names":[],"sources":["src/components/insight/atomic-insight-layout/insight-layout.ts"],"sourcesContent":["import {\n findSection,\n sectionSelector,\n} from '../../common/atomic-layout-section/atomic-layout-section-utils';\n\nconst tabsSelector = 'atomic-insight-tabs';\nconst refineModalSelector = 'atomic-insight-refine-modal';\nconst searchBoxSelector = 'atomic-insight-search-box';\nconst toggleSelectors = [\n 'atomic-insight-refine-toggle',\n 'atomic-insight-edit-toggle',\n 'atomic-insight-history-toggle',\n];\nconst smartSnippetSelectors = [\n 'atomic-insight-smart-snippet-suggestions',\n 'atomic-insight-smart-snippet',\n];\nconst generatedAnswerSelector = 'atomic-insight-generated-answer';\n\nexport function makeDesktopQuery(mobileBreakpoint: string) {\n return `only screen and (min-width: ${mobileBreakpoint})`;\n}\n\nexport function buildInsightLayout(element: HTMLElement, widget: boolean) {\n const id = element.id;\n const layoutSelector = `atomic-insight-layout#${id}`;\n\n const hasTabs = Boolean(\n findSection(element, 'search')?.querySelector(tabsSelector)\n );\n\n const interfaceStyle = widget\n ? `\n ${layoutSelector} {\n display: grid;\n grid-template-rows: auto auto 8fr 1fr;\n max-height: 100%;\n box-sizing: border-box;\n }\n ${layoutSelector} ${refineModalSelector} {\n grid-row-start: 5;\n }`\n : '';\n\n const search = `${sectionSelector('search')} {\n width: 100%;\n display: flex;\n flex-wrap: wrap;\n grid-gap: 0.5rem;\n background: var(--atomic-neutral-light);\n padding-top: 1.5rem;\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n box-sizing: border-box;\n min-width: 0;\n ${!hasTabs ? 'padding-bottom: 1.5rem;' : ''}\n }\n\n ${sectionSelector('search')} ${searchBoxSelector} {\n flex-grow: 1;\n height: 2.6rem;\n }\n\n ${toggleSelectors.map(\n (toggleSelector) => `${sectionSelector('search')} ${toggleSelector} {\n flex-shrink: 0;\n }`\n )}\n\n ${sectionSelector('search')} ${tabsSelector} {\n width: 100%;\n }\n `;\n\n const facets = `${sectionSelector('facets')} {\n display: none;\n }\n `;\n\n const results = `\n ${sectionSelector('results')} {\n overflow: auto;\n }\n\n ${sectionSelector('results')} ${smartSnippetSelectors.join(',')} {\n padding: 1.5rem 1.5rem 0px;\n }\n\n ${sectionSelector('results')} ${generatedAnswerSelector} {\n margin-left: 1.5rem;\n margin-right: 1.5rem;\n }\n `;\n\n return [interfaceStyle, search, facets, results]\n .filter((declaration) => declaration !== '')\n .join('\\n\\n');\n}\n"],"version":3}
@@ -38,4 +38,4 @@ function containsSections(content) {
38
38
 
39
39
  export { containsSections as c, isResultSectionNode as i };
40
40
 
41
- //# sourceMappingURL=sections2.js.map
41
+ //# sourceMappingURL=item-layout-sections.js.map
@@ -0,0 +1 @@
1
+ {"file":"item-layout-sections.js","mappings":";;AAEA,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IAChC,8BAA8B;IAC9B,8BAA8B;IAC9B,+BAA+B;IAC/B,6BAA6B;IAC7B,sCAAsC;IACtC,kCAAkC;IAClC,+BAA+B;IAC/B,uCAAuC;IACvC,gCAAgC;CACxB,CAAC,CAAC;AAEZ,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,+BAA+B;IAC/B,+BAA+B;IAC/B,gCAAgC;IAChC,6BAA6B;IAC7B,iCAAiC;IACjC,mCAAmC;IACnC,oCAAoC;IACpC,wCAAwC;IACxC,iCAAiC;CACzB,CAAC,CAAC;AAEZ,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,iBAAiB,EAAE,GAAG,kBAAkB,CAAC,CAAC,CAAC;SAMvD,mBAAmB,CAAC,OAAa;IAC/C,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;QAC3B,OAAO,KAAK,CAAC;KACd;IACD,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAwB,CAAC,CAAC;AAC1E,CAAC;SAEe,gBAAgB,CAAC,OAA2C;IAC1E,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;KAC1E;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC;AACzE;;;;","names":[],"sources":["src/components/common/layout/item-layout-sections.ts"],"sourcesContent":["import {isElementNode} from '@/src/utils/utils';\n\nconst resultSectionTags = new Set([\n 'atomic-result-section-visual',\n 'atomic-result-section-badges',\n 'atomic-result-section-actions',\n 'atomic-result-section-title',\n 'atomic-result-section-title-metadata',\n 'atomic-result-section-emphasized',\n 'atomic-result-section-excerpt',\n 'atomic-result-section-bottom-metadata',\n 'atomic-result-section-children',\n] as const);\n\nconst productSectionTags = new Set([\n 'atomic-product-section-visual',\n 'atomic-product-section-badges',\n 'atomic-product-section-actions',\n 'atomic-product-section-name',\n 'atomic-product-section-metadata',\n 'atomic-product-section-emphasized',\n 'atomic-product-section-description',\n 'atomic-product-section-bottom-metadata',\n 'atomic-product-section-children',\n] as const);\n\nconst allTags = new Set([...resultSectionTags, ...productSectionTags]);\n\ntype SetValueType<T> = T extends Set<infer U> ? U : never;\n\nexport type ItemSectionTagName = SetValueType<typeof allTags>;\n\nexport function isResultSectionNode(element: Node) {\n if (!isElementNode(element)) {\n return false;\n }\n return allTags.has(element.tagName.toLowerCase() as ItemSectionTagName);\n}\n\nexport function containsSections(content: string | NodeList | HTMLCollection) {\n if (typeof content === 'string') {\n return Array.from(allTags.values()).some((tag) => content.includes(tag));\n }\n return Array.from(content).some((child) => isResultSectionNode(child));\n}\n"],"version":3}
@@ -1,5 +1,25 @@
1
+ import { h } from '@stencil/core/internal/client';
1
2
  import { buildResultTemplatesManager } from '@coveo/headless';
2
3
 
4
+ // The Lit equivalent of this file is item-placeholders.ts. The Lit version doesn't include the placeholder guard.
5
+ const ResultsPlaceholdersGuard = (props) => {
6
+ if (!props.displayPlaceholders) {
7
+ return;
8
+ }
9
+ switch (props.display) {
10
+ case 'table':
11
+ return h(TableDisplayResultsPlaceholder, { ...props });
12
+ default:
13
+ return h(ResultsPlaceholder, { ...props });
14
+ }
15
+ };
16
+ const ResultsPlaceholder = (props) => {
17
+ return Array.from({ length: props.numberOfPlaceholders }, (_, i) => (h("atomic-result-placeholder", { key: `placeholder-${i}`, density: props.density, display: props.display || 'list', imageSize: props.imageSize })));
18
+ };
19
+ const TableDisplayResultsPlaceholder = (props) => {
20
+ return (h("atomic-result-table-placeholder", { density: props.density, imageSize: props.imageSize, rows: props.numberOfPlaceholders }));
21
+ };
22
+
3
23
  class TemplateProvider {
4
24
  constructor(props, buildManager) {
5
25
  this.props = props;
@@ -68,6 +88,6 @@ class ItemTemplateProvider extends TemplateProvider {
68
88
  }
69
89
  }
70
90
 
71
- export { ItemTemplateProvider as I };
91
+ export { ItemTemplateProvider as I, ResultsPlaceholdersGuard as R, ResultsPlaceholder as a };
72
92
 
73
93
  //# sourceMappingURL=item-template-provider.js.map
@@ -1 +1 @@
1
- {"file":"item-template-provider.js","mappings":";;MAesB,gBAAgB;IAapC,YACU,KAAsC,EACtC,YAIP;QALO,UAAK,GAAL,KAAK,CAAiC;QACtC,iBAAY,GAAZ,YAAY,CAInB;QAED,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAC3C,IAAI,CAAC,uBAAuB,EAAE,CAAC;KAChC;IAEO,MAAM,uBAAuB;QACnC,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,GAAG,CACvC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,qBAAqB;YAC1D,IAAI,EAAE,aAAa,IAAI,qBAAqB,CAAC,EAAE;gBAC7C,MAAM,cAAc,CAAC,WAAW,CAC7B,qBAAqC,CAAC,OAAO,CAAC,WAAW,EAAE,CAC7D,CAAC;aACH;YAED,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,WAAW,EAAE,CAAC;YAC3D,IAAI,CAAC,QAAQ,EAAE;gBACb,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;aACtC;YACD,OAAO,QAAQ,CAAC;SACjB,CAAC,CACH,CAAC;QAEF,MAAM,SAAS,GAAG,CAChB,CAAC,eAAe,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,sBAAsB;cACxD,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;cAC5B,EAAE,EACN,MAAM,CACN,eAAe,CAAC,MAAM,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAI1C,CACJ,CAAC;QAEF,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,GAAG,SAAS,CAAC,CAAC;QACrD,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;KAC9C;IAEM,kBAAkB,CAAC,IAAc;QACtC,OAAO,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,IAAI,CAAE,CAAC;KACnD;IAEM,sBAAsB,CAAC,IAAc;QAC1C,OAAO,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,IAAI,CAAE,CAAC;KACvD;IAEM,2BAA2B;QAChC,OAAO,QAAQ,CAAC,sBAAsB,EAAE,CAAC;KAC1C;IAED,IAAW,mBAAmB;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,2BAA2B,EAAE,CAAC;KACjD;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;KACzC;;;MC/EU,oBAAqB,SAAQ,gBAAwB;IAChE,YACE,KAA8D,EACtD,kBAA+B;QAEvC,KAAK,CAAC,KAAK,EAAE,MAAM,2BAA2B,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QAF/D,uBAAkB,GAAlB,kBAAkB,CAAa;KAGxC;;IAGS,mBAAmB;QAK3B,MAAM,OAAO,GAAG,QAAQ,CAAC,sBAAsB,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;QAC5D,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAE5B,MAAM,WAAW,GAAG,QAAQ,CAAC,sBAAsB,EAAE,CAAC;QACtD,MAAM,UAAU,GAAG;;QAEf,IAAI,CAAC,kBAAkB,GAAG,gCAAgC,IAAI,CAAC,kBAAkB,QAAQ,GAAG,EAAE;;KAEjG,CAAC;QACF,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACxD,YAAY,CAAC,SAAS,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;QAC3C,WAAW,CAAC,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC9C,OAAO;YACL,OAAO;YACP,WAAW;YACX,UAAU,EAAE,EAAE;SACf,CAAC;KACH;;;;;","names":[],"sources":["src/components/common/template-provider/template-provider.ts","src/components/common/item-list/item-template-provider.ts"],"sourcesContent":["import type {Template, TemplatesManager} from '@coveo/headless';\n\nexport interface TemplateElement<ItemType> extends HTMLElement {\n getTemplate(): Promise<Template<ItemType, DocumentFragment> | null>;\n}\n\nexport interface TemplateProviderProps<ItemType> {\n getResultTemplateRegistered(): boolean;\n setResultTemplateRegistered(value: boolean): void;\n getTemplateHasError(): boolean;\n setTemplateHasError(value: boolean): void;\n templateElements: TemplateElement<ItemType>[];\n includeDefaultTemplate: boolean;\n}\n\nexport abstract class TemplateProvider<ItemType> {\n private templateManager: TemplatesManager<\n ItemType,\n DocumentFragment,\n DocumentFragment\n >;\n\n protected abstract makeDefaultTemplate(): Template<\n ItemType,\n DocumentFragment,\n DocumentFragment\n >;\n\n constructor(\n private props: TemplateProviderProps<ItemType>,\n private buildManager: () => TemplatesManager<\n ItemType,\n DocumentFragment,\n DocumentFragment\n >\n ) {\n this.templateManager = this.buildManager();\n this.registerResultTemplates();\n }\n\n private async registerResultTemplates() {\n const customTemplates = await Promise.all(\n this.props.templateElements.map(async (resultTemplateElement) => {\n if (!('getTemplate' in resultTemplateElement)) {\n await customElements.whenDefined(\n (resultTemplateElement as HTMLElement).tagName.toLowerCase()\n );\n }\n\n const template = await resultTemplateElement.getTemplate();\n if (!template) {\n this.props.setTemplateHasError(true);\n }\n return template;\n })\n );\n\n const templates = (\n !customTemplates.length && this.props.includeDefaultTemplate\n ? [this.makeDefaultTemplate()]\n : []\n ).concat(\n customTemplates.filter((template) => template) as Template<\n ItemType,\n DocumentFragment,\n DocumentFragment\n >[]\n );\n\n this.templateManager.registerTemplates(...templates);\n this.props.setResultTemplateRegistered(true);\n }\n\n public getTemplateContent(item: ItemType) {\n return this.templateManager.selectTemplate(item)!;\n }\n\n public getLinkTemplateContent(item: ItemType) {\n return this.templateManager.selectLinkTemplate(item)!;\n }\n\n public getEmptyLinkTemplateContent() {\n return document.createDocumentFragment();\n }\n\n public get templatesRegistered() {\n return this.props.getResultTemplateRegistered();\n }\n\n public get hasError() {\n return this.props.getTemplateHasError();\n }\n}\n","import {\n buildResultTemplatesManager,\n type Result,\n type Template,\n} from '@coveo/headless';\nimport type {AnyBindings} from '../interface/bindings';\nimport type {ItemTarget} from '../layout/display-options';\nimport {\n TemplateProvider,\n type TemplateProviderProps,\n} from '../template-provider/template-provider';\n\nexport class ItemTemplateProvider extends TemplateProvider<Result> {\n constructor(\n props: TemplateProviderProps<Result> & {bindings: AnyBindings},\n private gridCellLinkTarget?: ItemTarget\n ) {\n super(props, () => buildResultTemplatesManager(props.bindings.engine));\n }\n\n // TODO: Add JSX support for default template\n protected makeDefaultTemplate(): Template<\n Result,\n DocumentFragment,\n DocumentFragment\n > {\n const content = document.createDocumentFragment();\n const linkEl = document.createElement('atomic-result-link');\n content.appendChild(linkEl);\n\n const linkContent = document.createDocumentFragment();\n const linkMarkup = `\n <atomic-result-link>\n ${this.gridCellLinkTarget ? `<a slot=\"attributes\" target=\"${this.gridCellLinkTarget}\"></a>` : ''}\n </atomic-result-link>\n `;\n const linkTemplate = document.createElement('template');\n linkTemplate.innerHTML = linkMarkup.trim();\n linkContent.appendChild(linkTemplate.content);\n return {\n content,\n linkContent,\n conditions: [],\n };\n }\n}\n"],"version":3}
1
+ {"file":"item-template-provider.js","mappings":"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","names":[],"sources":["src/components/common/atomic-result-placeholder/stencil-placeholders.tsx","src/components/common/template-provider/template-provider.ts","src/components/common/item-list/item-template-provider.ts"],"sourcesContent":["// The Lit equivalent of this file is item-placeholders.ts. The Lit version doesn't include the placeholder guard.\nimport {FunctionalComponent, h} from '@stencil/core';\nimport {\n ItemDisplayDensity,\n ItemDisplayImageSize,\n ItemDisplayLayout,\n} from '../layout/display-options.js';\n\ninterface ResultPlaceholderProps {\n density: ItemDisplayDensity;\n imageSize: ItemDisplayImageSize;\n display: ItemDisplayLayout;\n numberOfPlaceholders: number;\n}\n\ninterface ResultPlaceholderGuardProps extends ResultPlaceholderProps {\n displayPlaceholders: boolean;\n}\n\nexport const ResultsPlaceholdersGuard: FunctionalComponent<\n ResultPlaceholderGuardProps\n> = (props) => {\n if (!props.displayPlaceholders) {\n return;\n }\n switch (props.display) {\n case 'table':\n return <TableDisplayResultsPlaceholder {...props} />;\n default:\n return <ResultsPlaceholder {...props} />;\n }\n};\n\nexport const ResultsPlaceholder: FunctionalComponent<ResultPlaceholderProps> = (\n props\n) => {\n return Array.from({length: props.numberOfPlaceholders}, (_, i) => (\n <atomic-result-placeholder\n key={`placeholder-${i}`}\n density={props.density}\n display={props.display || 'list'}\n imageSize={props.imageSize}\n ></atomic-result-placeholder>\n ));\n};\n\nconst TableDisplayResultsPlaceholder: FunctionalComponent<\n ResultPlaceholderProps\n> = (props) => {\n return (\n <atomic-result-table-placeholder\n density={props.density}\n imageSize={props.imageSize}\n rows={props.numberOfPlaceholders}\n ></atomic-result-table-placeholder>\n );\n};\n","import type {Template, TemplatesManager} from '@coveo/headless';\n\nexport interface TemplateElement<ItemType> extends HTMLElement {\n getTemplate(): Promise<Template<ItemType, DocumentFragment> | null>;\n}\n\nexport interface TemplateProviderProps<ItemType> {\n getResultTemplateRegistered(): boolean;\n setResultTemplateRegistered(value: boolean): void;\n getTemplateHasError(): boolean;\n setTemplateHasError(value: boolean): void;\n templateElements: TemplateElement<ItemType>[];\n includeDefaultTemplate: boolean;\n}\n\nexport abstract class TemplateProvider<ItemType> {\n private templateManager: TemplatesManager<\n ItemType,\n DocumentFragment,\n DocumentFragment\n >;\n\n protected abstract makeDefaultTemplate(): Template<\n ItemType,\n DocumentFragment,\n DocumentFragment\n >;\n\n constructor(\n private props: TemplateProviderProps<ItemType>,\n private buildManager: () => TemplatesManager<\n ItemType,\n DocumentFragment,\n DocumentFragment\n >\n ) {\n this.templateManager = this.buildManager();\n this.registerResultTemplates();\n }\n\n private async registerResultTemplates() {\n const customTemplates = await Promise.all(\n this.props.templateElements.map(async (resultTemplateElement) => {\n if (!('getTemplate' in resultTemplateElement)) {\n await customElements.whenDefined(\n (resultTemplateElement as HTMLElement).tagName.toLowerCase()\n );\n }\n\n const template = await resultTemplateElement.getTemplate();\n if (!template) {\n this.props.setTemplateHasError(true);\n }\n return template;\n })\n );\n\n const templates = (\n !customTemplates.length && this.props.includeDefaultTemplate\n ? [this.makeDefaultTemplate()]\n : []\n ).concat(\n customTemplates.filter((template) => template) as Template<\n ItemType,\n DocumentFragment,\n DocumentFragment\n >[]\n );\n\n this.templateManager.registerTemplates(...templates);\n this.props.setResultTemplateRegistered(true);\n }\n\n public getTemplateContent(item: ItemType) {\n return this.templateManager.selectTemplate(item)!;\n }\n\n public getLinkTemplateContent(item: ItemType) {\n return this.templateManager.selectLinkTemplate(item)!;\n }\n\n public getEmptyLinkTemplateContent() {\n return document.createDocumentFragment();\n }\n\n public get templatesRegistered() {\n return this.props.getResultTemplateRegistered();\n }\n\n public get hasError() {\n return this.props.getTemplateHasError();\n }\n}\n","import {\n buildResultTemplatesManager,\n type Result,\n type Template,\n} from '@coveo/headless';\nimport type {AnyBindings} from '../interface/bindings';\nimport type {ItemTarget} from '../layout/display-options';\nimport {\n TemplateProvider,\n type TemplateProviderProps,\n} from '../template-provider/template-provider';\n\nexport class ItemTemplateProvider extends TemplateProvider<Result> {\n constructor(\n props: TemplateProviderProps<Result> & {bindings: AnyBindings},\n private gridCellLinkTarget?: ItemTarget\n ) {\n super(props, () => buildResultTemplatesManager(props.bindings.engine));\n }\n\n // TODO: Add JSX support for default template\n protected makeDefaultTemplate(): Template<\n Result,\n DocumentFragment,\n DocumentFragment\n > {\n const content = document.createDocumentFragment();\n const linkEl = document.createElement('atomic-result-link');\n content.appendChild(linkEl);\n\n const linkContent = document.createDocumentFragment();\n const linkMarkup = `\n <atomic-result-link>\n ${this.gridCellLinkTarget ? `<a slot=\"attributes\" target=\"${this.gridCellLinkTarget}\"></a>` : ''}\n </atomic-result-link>\n `;\n const linkTemplate = document.createElement('template');\n linkTemplate.innerHTML = linkMarkup.trim();\n linkContent.appendChild(linkTemplate.content);\n return {\n content,\n linkContent,\n conditions: [],\n };\n }\n}\n"],"version":3}
@@ -2,7 +2,7 @@ import { ResultTemplatesHelpers } from '@coveo/headless';
2
2
  import { h } from '@stencil/core/internal/client';
3
3
  import { l as aggregate, m as isVisualNode, n as isElementNode } from './utils.js';
4
4
  import { t as tableElementTagName } from './table-element-utils.js';
5
- import { i as isResultSectionNode } from './sections2.js';
5
+ import { i as isResultSectionNode } from './item-layout-sections.js';
6
6
 
7
7
  function getTemplateNodeType(node) {
8
8
  if (isResultSectionNode(node)) {
@@ -1 +1 @@
1
- {"file":"result-template-common.js","mappings":"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","names":[],"sources":["src/components/common/result-templates/result-template-common.tsx"],"sourcesContent":["import {\n ResultTemplate,\n ResultTemplateCondition,\n ResultTemplatesHelpers,\n} from '@coveo/headless';\nimport {h} from '@stencil/core';\nimport {aggregate, isElementNode, isVisualNode} from '../../../utils/utils';\nimport {tableElementTagName} from '../../search/atomic-table-result/table-element-utils';\nimport {ItemTarget} from '../layout/display-options';\nimport {isResultSectionNode} from '../layout/sections';\n\nexport type TemplateContent = DocumentFragment;\n\ninterface ResultTemplateCommonProps {\n allowEmpty?: boolean;\n host: HTMLDivElement;\n validParents: string[];\n setError: (error: Error) => void;\n}\n\ntype TemplateNodeType =\n | 'section'\n | 'metadata'\n | 'table-column-definition'\n | 'other';\n\nexport function getTemplateNodeType(node: Node): TemplateNodeType {\n if (isResultSectionNode(node)) {\n return 'section';\n }\n if (!isVisualNode(node)) {\n return 'metadata';\n }\n if (\n isElementNode(node) &&\n node.tagName.toLowerCase() === tableElementTagName\n ) {\n return 'table-column-definition';\n }\n return 'other';\n}\n\nfunction groupNodesByType(nodes: NodeList) {\n return aggregate(Array.from(nodes), (node) => getTemplateNodeType(node));\n}\n\nexport class ResultTemplateCommon {\n private host: HTMLDivElement;\n public matchConditions: ResultTemplateCondition[] = [];\n private gridCellLinkTarget: ItemTarget = '_self';\n\n constructor({\n host,\n setError,\n validParents,\n allowEmpty = false,\n }: ResultTemplateCommonProps) {\n this.host = host;\n this.validateTemplate(host, setError, validParents, allowEmpty);\n }\n\n validateTemplate(\n host: HTMLDivElement,\n setError: (error: Error) => void,\n validParents: string[],\n allowEmpty = true\n ) {\n const hasValidParent = validParents\n .map((p) => p.toUpperCase())\n .includes(host.parentElement?.nodeName || '');\n const tagName = host.nodeName.toLowerCase();\n\n if (!hasValidParent) {\n setError(\n new Error(\n `The \"${tagName}\" component has to be the child of one of the following: ${validParents\n .map((p) => `\"${p.toLowerCase()}\"`)\n .join(', ')}.`\n )\n );\n return;\n }\n\n if (\n host.parentElement?.attributes.getNamedItem('display')?.value === 'grid'\n ) {\n this.gridCellLinkTarget = host.parentElement?.attributes.getNamedItem(\n 'grid-cell-link-target'\n )?.value as ItemTarget;\n }\n\n const template = host.querySelector<HTMLTemplateElement>(\n 'template:not([slot])'\n );\n if (!template) {\n setError(\n new Error(\n `The \"${tagName}\" component has to contain a \"template\" element as a child.`\n )\n );\n return;\n }\n\n if (!allowEmpty && !template.innerHTML.trim()) {\n setError(\n new Error(`The \"template\" tag inside \"${tagName}\" cannot be empty.`)\n );\n return;\n }\n\n if (template.content.querySelector('script')) {\n console.warn(\n 'Any \"script\" tags defined inside of \"template\" elements are not supported and will not be executed when the results are rendered.',\n host\n );\n }\n\n const {section: sectionNodes, other: otherNodes} = groupNodesByType(\n template.content.childNodes\n );\n if (sectionNodes?.length && otherNodes?.length) {\n console.warn(\n 'Result templates should only contain section elements or non-section elements. Future updates could unpredictably affect this result template.',\n host,\n {sectionNodes, otherNodes}\n );\n }\n }\n\n getTemplate(\n conditions: ResultTemplateCondition[],\n error: Error\n ): ResultTemplate<TemplateContent> | null {\n if (error) {\n return null;\n }\n\n return {\n conditions: conditions.concat(this.matchConditions),\n content: getTemplateElement(this.host).content!,\n linkContent: this.getLinkTemplateElement(this.host).content!,\n priority: 1,\n };\n }\n\n renderIfError(error: Error) {\n if (error) {\n return (\n <atomic-component-error\n element={this.host}\n error={error}\n ></atomic-component-error>\n );\n }\n }\n\n getDefaultLinkTemplateElement() {\n const linkTemplate = document.createElement('template');\n linkTemplate.innerHTML = `<atomic-result-link>${this.gridCellLinkTarget ? `<a slot=\"attributes\" target=\"${this.gridCellLinkTarget}\"></a>` : ''}</atomic-result-link>`;\n return linkTemplate;\n }\n\n getLinkTemplateElement(host: HTMLElement) {\n return (\n host.querySelector<HTMLTemplateElement>('template[slot=\"link\"]') ??\n this.getDefaultLinkTemplateElement()\n );\n }\n}\n\nfunction getTemplateElement(host: HTMLElement) {\n return host.querySelector<HTMLTemplateElement>('template:not([slot])')!;\n}\n\nexport function makeMatchConditions(\n mustMatch: Record<string, string[]>,\n mustNotMatch: Record<string, string[]>\n): ResultTemplateCondition[] {\n const conditions: ResultTemplateCondition[] = [];\n for (const field in mustMatch) {\n conditions.push(\n ResultTemplatesHelpers.fieldMustMatch(field, mustMatch[field])\n );\n }\n\n for (const field in mustNotMatch) {\n conditions.push(\n ResultTemplatesHelpers.fieldMustNotMatch(field, mustNotMatch[field])\n );\n }\n return conditions;\n}\n\nexport function makeDefinedConditions(\n ifDefined?: string,\n ifNotDefined?: string\n): ResultTemplateCondition[] {\n const conditions: ResultTemplateCondition[] = [];\n if (ifDefined) {\n const fieldNames = ifDefined.split(',');\n conditions.push(ResultTemplatesHelpers.fieldsMustBeDefined(fieldNames));\n }\n\n if (ifNotDefined) {\n const fieldNames = ifNotDefined.split(',');\n conditions.push(ResultTemplatesHelpers.fieldsMustNotBeDefined(fieldNames));\n }\n return conditions;\n}\n"],"version":3}
1
+ {"file":"result-template-common.js","mappings":"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","names":[],"sources":["src/components/common/result-templates/result-template-common.tsx"],"sourcesContent":["import {\n ResultTemplate,\n ResultTemplateCondition,\n ResultTemplatesHelpers,\n} from '@coveo/headless';\nimport {h} from '@stencil/core';\nimport {aggregate, isElementNode, isVisualNode} from '../../../utils/utils';\nimport {tableElementTagName} from '../../search/atomic-table-result/table-element-utils';\nimport {ItemTarget} from '../layout/display-options';\nimport {isResultSectionNode} from '../layout/item-layout-sections';\n\nexport type TemplateContent = DocumentFragment;\n\ninterface ResultTemplateCommonProps {\n allowEmpty?: boolean;\n host: HTMLDivElement;\n validParents: string[];\n setError: (error: Error) => void;\n}\n\ntype TemplateNodeType =\n | 'section'\n | 'metadata'\n | 'table-column-definition'\n | 'other';\n\nexport function getTemplateNodeType(node: Node): TemplateNodeType {\n if (isResultSectionNode(node)) {\n return 'section';\n }\n if (!isVisualNode(node)) {\n return 'metadata';\n }\n if (\n isElementNode(node) &&\n node.tagName.toLowerCase() === tableElementTagName\n ) {\n return 'table-column-definition';\n }\n return 'other';\n}\n\nfunction groupNodesByType(nodes: NodeList) {\n return aggregate(Array.from(nodes), (node) => getTemplateNodeType(node));\n}\n\nexport class ResultTemplateCommon {\n private host: HTMLDivElement;\n public matchConditions: ResultTemplateCondition[] = [];\n private gridCellLinkTarget: ItemTarget = '_self';\n\n constructor({\n host,\n setError,\n validParents,\n allowEmpty = false,\n }: ResultTemplateCommonProps) {\n this.host = host;\n this.validateTemplate(host, setError, validParents, allowEmpty);\n }\n\n validateTemplate(\n host: HTMLDivElement,\n setError: (error: Error) => void,\n validParents: string[],\n allowEmpty = true\n ) {\n const hasValidParent = validParents\n .map((p) => p.toUpperCase())\n .includes(host.parentElement?.nodeName || '');\n const tagName = host.nodeName.toLowerCase();\n\n if (!hasValidParent) {\n setError(\n new Error(\n `The \"${tagName}\" component has to be the child of one of the following: ${validParents\n .map((p) => `\"${p.toLowerCase()}\"`)\n .join(', ')}.`\n )\n );\n return;\n }\n\n if (\n host.parentElement?.attributes.getNamedItem('display')?.value === 'grid'\n ) {\n this.gridCellLinkTarget = host.parentElement?.attributes.getNamedItem(\n 'grid-cell-link-target'\n )?.value as ItemTarget;\n }\n\n const template = host.querySelector<HTMLTemplateElement>(\n 'template:not([slot])'\n );\n if (!template) {\n setError(\n new Error(\n `The \"${tagName}\" component has to contain a \"template\" element as a child.`\n )\n );\n return;\n }\n\n if (!allowEmpty && !template.innerHTML.trim()) {\n setError(\n new Error(`The \"template\" tag inside \"${tagName}\" cannot be empty.`)\n );\n return;\n }\n\n if (template.content.querySelector('script')) {\n console.warn(\n 'Any \"script\" tags defined inside of \"template\" elements are not supported and will not be executed when the results are rendered.',\n host\n );\n }\n\n const {section: sectionNodes, other: otherNodes} = groupNodesByType(\n template.content.childNodes\n );\n if (sectionNodes?.length && otherNodes?.length) {\n console.warn(\n 'Result templates should only contain section elements or non-section elements. Future updates could unpredictably affect this result template.',\n host,\n {sectionNodes, otherNodes}\n );\n }\n }\n\n getTemplate(\n conditions: ResultTemplateCondition[],\n error: Error\n ): ResultTemplate<TemplateContent> | null {\n if (error) {\n return null;\n }\n\n return {\n conditions: conditions.concat(this.matchConditions),\n content: getTemplateElement(this.host).content!,\n linkContent: this.getLinkTemplateElement(this.host).content!,\n priority: 1,\n };\n }\n\n renderIfError(error: Error) {\n if (error) {\n return (\n <atomic-component-error\n element={this.host}\n error={error}\n ></atomic-component-error>\n );\n }\n }\n\n getDefaultLinkTemplateElement() {\n const linkTemplate = document.createElement('template');\n linkTemplate.innerHTML = `<atomic-result-link>${this.gridCellLinkTarget ? `<a slot=\"attributes\" target=\"${this.gridCellLinkTarget}\"></a>` : ''}</atomic-result-link>`;\n return linkTemplate;\n }\n\n getLinkTemplateElement(host: HTMLElement) {\n return (\n host.querySelector<HTMLTemplateElement>('template[slot=\"link\"]') ??\n this.getDefaultLinkTemplateElement()\n );\n }\n}\n\nfunction getTemplateElement(host: HTMLElement) {\n return host.querySelector<HTMLTemplateElement>('template:not([slot])')!;\n}\n\nexport function makeMatchConditions(\n mustMatch: Record<string, string[]>,\n mustNotMatch: Record<string, string[]>\n): ResultTemplateCondition[] {\n const conditions: ResultTemplateCondition[] = [];\n for (const field in mustMatch) {\n conditions.push(\n ResultTemplatesHelpers.fieldMustMatch(field, mustMatch[field])\n );\n }\n\n for (const field in mustNotMatch) {\n conditions.push(\n ResultTemplatesHelpers.fieldMustNotMatch(field, mustNotMatch[field])\n );\n }\n return conditions;\n}\n\nexport function makeDefinedConditions(\n ifDefined?: string,\n ifNotDefined?: string\n): ResultTemplateCondition[] {\n const conditions: ResultTemplateCondition[] = [];\n if (ifDefined) {\n const fieldNames = ifDefined.split(',');\n conditions.push(ResultTemplatesHelpers.fieldsMustBeDefined(fieldNames));\n }\n\n if (ifNotDefined) {\n const fieldNames = ifNotDefined.split(',');\n conditions.push(ResultTemplatesHelpers.fieldsMustNotBeDefined(fieldNames));\n }\n return conditions;\n}\n"],"version":3}
@@ -1,6 +1,6 @@
1
1
  import { getElement, h, Fragment } from '@stencil/core/internal/client';
2
2
  import { b as buildCustomEvent } from './event-utils.js';
3
- import { a as ResultsPlaceholder } from './stencil-placeholders.js';
3
+ import { a as ResultsPlaceholder } from './item-template-provider.js';
4
4
  import { B as Button } from './stencil-button.js';
5
5
 
6
6
  const foldedItemListContextEventName = 'atomic/resolveFoldedResultList';