@coveo/atomic 3.45.0 → 3.45.1

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 (730) 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 -16
  4. package/dist/atomic/components/_index.js +21 -10
  5. package/dist/atomic/components/atomic-generated-answer-feedback-modal.js +2 -2
  6. package/dist/atomic/components/atomic-generated-answer-feedback-modal.js.map +1 -1
  7. package/dist/atomic/components/atomic-insight-facet.js +2 -2
  8. package/dist/atomic/components/atomic-insight-facet.js.map +1 -1
  9. package/dist/atomic/components/atomic-insight-folded-result-list.js +2 -2
  10. package/dist/atomic/components/atomic-insight-folded-result-list.js.map +1 -1
  11. package/dist/atomic/components/atomic-insight-generated-answer.js +11 -2
  12. package/dist/atomic/components/atomic-insight-generated-answer.js.map +1 -1
  13. package/dist/atomic/components/atomic-insight-numeric-facet.js +2 -2
  14. package/dist/atomic/components/atomic-insight-numeric-facet.js.map +1 -1
  15. package/dist/atomic/components/atomic-insight-refine-modal.js +121 -1
  16. package/dist/atomic/components/atomic-insight-refine-modal.js.map +1 -1
  17. package/dist/atomic/components/atomic-insight-result-action-bar.js +1 -1
  18. package/dist/atomic/components/atomic-insight-result-action-bar.js.map +1 -1
  19. package/dist/atomic/components/atomic-insight-result-action.js +1 -1
  20. package/dist/atomic/components/atomic-insight-result-action.js.map +1 -1
  21. package/dist/atomic/components/atomic-insight-result-attach-to-case-action.js +1 -1
  22. package/dist/atomic/components/atomic-insight-result-attach-to-case-action.js.map +1 -1
  23. package/dist/atomic/components/atomic-insight-result-attach-to-case-indicator.js +2 -2
  24. package/dist/atomic/components/atomic-insight-result-attach-to-case-indicator.js.map +1 -1
  25. package/dist/atomic/components/atomic-insight-result-children-template.js +1 -1
  26. package/dist/atomic/components/atomic-insight-result-children.js +2 -2
  27. package/dist/atomic/components/atomic-insight-result-children.js.map +1 -1
  28. package/dist/atomic/components/atomic-insight-result-list.js +2 -2
  29. package/dist/atomic/components/atomic-insight-result-list.js.map +1 -1
  30. package/dist/atomic/components/atomic-insight-result-quickview-action.js +2 -2
  31. package/dist/atomic/components/atomic-insight-result-quickview-action.js.map +1 -1
  32. package/dist/atomic/components/atomic-insight-result2.js +1 -1
  33. package/dist/atomic/components/atomic-insight-result2.js.map +1 -1
  34. package/dist/atomic/components/atomic-insight-smart-snippet-suggestions.js +1 -1
  35. package/dist/atomic/components/atomic-insight-smart-snippet-suggestions.js.map +1 -1
  36. package/dist/atomic/components/atomic-insight-smart-snippet.js +2 -8
  37. package/dist/atomic/components/atomic-insight-smart-snippet.js.map +1 -1
  38. package/dist/atomic/components/atomic-insight-timeframe-facet.js +206 -6
  39. package/dist/atomic/components/atomic-insight-timeframe-facet.js.map +1 -1
  40. package/dist/atomic/components/atomic-insight-user-actions-modal.js +1 -1
  41. package/dist/atomic/components/atomic-insight-user-actions-modal.js.map +1 -1
  42. package/dist/atomic/components/atomic-insight-user-actions-session2.js +4 -3
  43. package/dist/atomic/components/atomic-insight-user-actions-session2.js.map +1 -1
  44. package/dist/atomic/components/atomic-insight-user-actions-timeline2.js +1 -1
  45. package/dist/atomic/components/atomic-insight-user-actions-timeline2.js.map +1 -1
  46. package/dist/atomic/components/atomic-ipx-body2.js +3 -3
  47. package/dist/atomic/components/atomic-ipx-body2.js.map +1 -1
  48. package/dist/atomic/components/atomic-ipx-embedded.js +2 -2
  49. package/dist/atomic/components/atomic-ipx-embedded.js.map +1 -1
  50. package/dist/atomic/components/atomic-ipx-modal.js +3 -3
  51. package/dist/atomic/components/atomic-ipx-modal.js.map +1 -1
  52. package/dist/atomic/components/atomic-ipx-recs-list.js +3 -9
  53. package/dist/atomic/components/atomic-ipx-recs-list.js.map +1 -1
  54. package/dist/atomic/components/atomic-ipx-refine-modal2.js +2 -2
  55. package/dist/atomic/components/atomic-ipx-refine-modal2.js.map +1 -1
  56. package/dist/atomic/components/atomic-ipx-refine-toggle.js +7 -3
  57. package/dist/atomic/components/atomic-ipx-refine-toggle.js.map +1 -1
  58. package/dist/atomic/components/atomic-ipx-result-link.js +2 -2
  59. package/dist/atomic/components/atomic-ipx-result-link.js.map +1 -1
  60. package/dist/atomic/components/atomic-quickview-modal2.js +3 -3
  61. package/dist/atomic/components/atomic-quickview-modal2.js.map +1 -1
  62. package/dist/atomic/components/atomic-recs-list.js +3 -9
  63. package/dist/atomic/components/atomic-recs-list.js.map +1 -1
  64. package/dist/atomic/components/atomic-suggestion-renderer.js +116 -1
  65. package/dist/atomic/components/atomic-suggestion-renderer.js.map +1 -1
  66. package/dist/atomic/components/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.js +1 -1
  67. package/dist/atomic/components/components/commerce/atomic-commerce-category-facet/atomic-commerce-category-facet.js +1 -1
  68. package/dist/atomic/components/components/commerce/atomic-commerce-product-list/atomic-commerce-product-list.js +2 -2
  69. package/dist/atomic/components/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.js +1 -1
  70. package/dist/atomic/components/components/commerce/atomic-commerce-search-box-instant-products/atomic-commerce-search-box-instant-products.js +1 -1
  71. package/dist/atomic/components/components/commerce/atomic-commerce-search-box-query-suggestions/atomic-commerce-search-box-query-suggestions.js +2 -2
  72. package/dist/atomic/components/components/commerce/atomic-commerce-search-box-recent-queries/atomic-commerce-search-box-recent-queries.js +2 -2
  73. package/dist/atomic/components/components/commerce/atomic-product-children/atomic-product-children.js +1 -1
  74. package/dist/atomic/components/components/commerce/atomic-product-description/atomic-product-description.js +1 -1
  75. package/dist/atomic/components/components/commerce/atomic-product-excerpt/atomic-product-excerpt.js +1 -1
  76. package/dist/atomic/components/components/commerce/atomic-product-image/atomic-product-image.js +2 -2
  77. package/dist/atomic/components/components/commerce/atomic-product-link/atomic-product-link.js +5 -4
  78. package/dist/atomic/components/components/commerce/atomic-product-link/atomic-product-link.tw.css.js +3 -0
  79. package/dist/atomic/components/components/commerce/atomic-product-multi-value-text/atomic-product-multi-value-text.js +2 -2
  80. package/dist/atomic/components/components/commerce/atomic-product-template/atomic-product-template.js +2 -2
  81. package/dist/atomic/components/components/common/atomic-citation/atomic-citation.js +222 -0
  82. package/dist/atomic/components/components/common/atomic-citation/atomic-citation.tw.css.js +3 -0
  83. package/dist/atomic/components/components/common/atomic-citation/citation-anchoring-utils.js +24 -0
  84. package/dist/atomic/components/components/common/atomic-modal/atomic-modal.js +1 -1
  85. package/dist/atomic/components/components/common/atomic-smart-snippet-expandable-answer/atomic-smart-snippet-expandable-answer.js +0 -2
  86. package/dist/atomic/components/components/common/atomic-tab-button/atomic-tab-button.js +1 -0
  87. package/dist/atomic/components/components/common/facets/facet-search/facet-search-matches.js +1 -1
  88. package/dist/atomic/components/components/common/facets/facet-show-more-less/facet-show-more-less.js +1 -1
  89. package/dist/atomic/components/components/common/facets/numeric-facet/value-link.js +2 -2
  90. package/dist/atomic/components/components/common/generated-answer/render-citations.js +1 -0
  91. package/dist/atomic/components/components/common/index.js +1 -0
  92. package/dist/atomic/components/components/common/item-link/item-link.js +2 -4
  93. package/dist/atomic/components/components/common/lazy-index.js +1 -0
  94. package/dist/atomic/components/components/common/suggestions/query-suggestions.js +3 -2
  95. package/dist/atomic/components/components/common/validate-props-controller/validate-props-controller.js +1 -1
  96. package/dist/atomic/components/components/insight/atomic-insight-history-toggle/atomic-insight-history-toggle.js +55 -0
  97. package/dist/atomic/components/components/insight/atomic-insight-interface/atomic-insight-interface.js +1 -2
  98. package/dist/atomic/components/components/insight/atomic-insight-refine-toggle/atomic-insight-refine-toggle.js +108 -0
  99. package/dist/atomic/components/components/insight/atomic-insight-result-template/atomic-insight-result-template.js +2 -2
  100. package/dist/atomic/components/components/insight/atomic-insight-search-box/atomic-insight-search-box.js +334 -0
  101. package/dist/atomic/components/components/insight/atomic-insight-search-box/atomic-insight-search-box.tw.css.js +3 -0
  102. package/dist/atomic/components/components/insight/atomic-insight-smart-snippet-feedback-modal/atomic-insight-smart-snippet-feedback-modal.js +168 -0
  103. package/dist/atomic/components/components/insight/atomic-insight-smart-snippet-feedback-modal/atomic-insight-smart-snippet-feedback-modal.tw.css.js +3 -0
  104. package/dist/atomic/components/components/insight/index.js +4 -0
  105. package/dist/atomic/components/components/insight/lazy-index.js +4 -0
  106. package/dist/atomic/components/components/ipx/atomic-ipx-button/atomic-ipx-button.js +189 -0
  107. package/dist/atomic/components/components/ipx/index.js +1 -0
  108. package/dist/atomic/components/components/ipx/lazy-index.js +1 -0
  109. package/dist/atomic/components/components/recommendations/atomic-recs-result/atomic-recs-result.js +232 -0
  110. package/dist/atomic/components/components/recommendations/atomic-recs-result-template/atomic-recs-result-template.js +3 -2
  111. package/dist/atomic/components/components/recommendations/index.js +1 -0
  112. package/dist/atomic/components/components/recommendations/lazy-index.js +1 -0
  113. package/dist/atomic/components/components/search/atomic-automatic-facet/atomic-automatic-facet.js +1 -1
  114. package/dist/atomic/components/components/search/atomic-automatic-facet-generator/atomic-automatic-facet-generator.js +1 -1
  115. package/dist/atomic/components/components/search/atomic-breadbox/atomic-breadbox.js +1 -1
  116. package/dist/atomic/components/components/search/atomic-category-facet/atomic-category-facet.js +2 -2
  117. package/dist/atomic/components/components/search/atomic-format-currency/atomic-format-currency.js +2 -2
  118. package/dist/atomic/components/components/search/atomic-format-number/atomic-format-number.js +2 -2
  119. package/dist/atomic/components/components/search/atomic-format-unit/atomic-format-unit.js +2 -2
  120. package/dist/atomic/components/components/search/atomic-generated-answer/atomic-generated-answer.js +2 -2
  121. package/dist/atomic/components/components/search/atomic-notifications/atomic-notifications.js +1 -1
  122. package/dist/atomic/components/components/search/atomic-rating-facet/atomic-rating-facet.js +2 -2
  123. package/dist/atomic/components/components/search/atomic-result-children-template/atomic-result-children-template.js +2 -2
  124. package/dist/atomic/components/components/search/atomic-result-icon/atomic-result-icon.js +1 -1
  125. package/dist/atomic/components/components/search/atomic-result-link/atomic-result-link.js +5 -5
  126. package/dist/atomic/components/components/search/atomic-result-link/atomic-result-link.tw.css.js +3 -0
  127. package/dist/atomic/components/components/search/atomic-result-multi-value-text/atomic-result-multi-value-text.js +1 -1
  128. package/dist/atomic/components/components/search/atomic-result-printable-uri/atomic-result-printable-uri.js +1 -1
  129. package/dist/atomic/components/components/search/atomic-result-section-bottom-metadata/atomic-result-section-bottom-metadata.js +1 -1
  130. package/dist/atomic/components/components/search/atomic-result-template/atomic-result-template.js +2 -2
  131. package/dist/atomic/components/components/search/atomic-search-box/atomic-search-box.js +1 -1
  132. package/dist/atomic/components/components/search/atomic-search-box-instant-results/atomic-search-box-instant-results.js +1 -1
  133. package/dist/atomic/components/components/search/atomic-search-box-query-suggestions/atomic-search-box-query-suggestions.js +2 -2
  134. package/dist/atomic/components/components/search/atomic-search-box-recent-queries/atomic-search-box-recent-queries.js +2 -2
  135. package/dist/atomic/components/components/search/atomic-segmented-facet-scrollable/atomic-segmented-facet-scrollable.js +1 -1
  136. package/dist/atomic/components/components/search/atomic-smart-snippet-suggestions/atomic-smart-snippet-suggestions.js +2 -1
  137. package/dist/atomic/components/components/search/atomic-tab-manager/atomic-tab-manager.js +4 -2
  138. package/dist/atomic/components/components/search/atomic-timeframe-facet/atomic-timeframe-facet.js +340 -0
  139. package/dist/atomic/components/components/search/index.js +1 -0
  140. package/dist/atomic/components/components/search/lazy-index.js +1 -0
  141. package/dist/atomic/components/decorators/binding-guard.js +2 -2
  142. package/dist/atomic/components/display-options.js +1 -1
  143. package/dist/atomic/components/dom-utils.js +1 -6
  144. package/dist/atomic/components/dom-utils.js.map +1 -1
  145. package/dist/atomic/components/event-utils.js +1 -1
  146. package/dist/atomic/components/global/environment.js +1 -1
  147. package/dist/atomic/components/index.js.map +1 -1
  148. package/dist/atomic/components/item-layout-sections.js +1 -1
  149. package/dist/atomic/components/props-utils.js +3 -32
  150. package/dist/atomic/components/props-utils.js.map +1 -1
  151. package/dist/atomic/components/stencil-accessibility-utils.js +1 -1
  152. package/dist/atomic/components/stencil-facet-values-group.js +4 -1
  153. package/dist/atomic/components/stencil-facet-values-group.js.map +1 -1
  154. package/dist/atomic/components/utils/custom-element-tags.js +8 -0
  155. package/dist/atomic/components/utils/tailwind.global.tw.css.js +1 -1
  156. package/dist/atomic/components/utils.js +1 -7
  157. package/dist/atomic/components/utils.js.map +1 -1
  158. package/dist/atomic/index.esm.js +1 -1
  159. package/dist/atomic/index.esm.js.map +1 -1
  160. package/dist/atomic/{p-0313d2aa.entry.js → p-003c01a8.entry.js} +2 -2
  161. package/dist/atomic/{p-0313d2aa.entry.js.map → p-003c01a8.entry.js.map} +1 -1
  162. package/dist/atomic/p-068f7167.entry.js +2 -0
  163. package/dist/atomic/{p-09f9f4a7.entry.js.map → p-068f7167.entry.js.map} +1 -1
  164. package/dist/atomic/{p-2b2fd228.js → p-0e8cf2d4.js} +2 -2
  165. package/dist/atomic/p-14185d40.entry.js +2 -0
  166. package/dist/atomic/{p-7031a4ad.entry.js.map → p-14185d40.entry.js.map} +1 -1
  167. package/dist/atomic/{p-c32ffba8.js → p-15d2af30.js} +2 -2
  168. package/dist/atomic/p-17b405c5.entry.js +2 -0
  169. package/dist/atomic/{p-817f3432.entry.js.map → p-17b405c5.entry.js.map} +1 -1
  170. package/dist/atomic/p-1ad6cda9.js +2 -0
  171. package/dist/atomic/p-1ad6cda9.js.map +1 -0
  172. package/dist/atomic/p-20231cc9.entry.js +2 -0
  173. package/dist/atomic/p-20231cc9.entry.js.map +1 -0
  174. package/dist/atomic/{p-6b3dab6d.js → p-25ce51f6.js} +2 -2
  175. package/dist/atomic/{p-6b524885.js → p-28c8ff94.js} +2 -2
  176. package/dist/atomic/p-2b79c22a.entry.js +2 -0
  177. package/dist/atomic/p-2b79c22a.entry.js.map +1 -0
  178. package/dist/atomic/p-33dd50ca.js +2 -0
  179. package/dist/atomic/p-33dd50ca.js.map +1 -0
  180. package/dist/atomic/{p-63e4559e.entry.js → p-37eed01f.entry.js} +2 -2
  181. package/dist/atomic/p-445d10ac.entry.js +2 -0
  182. package/dist/atomic/{p-2d4a855d.entry.js.map → p-445d10ac.entry.js.map} +1 -1
  183. package/dist/atomic/{p-f5efc3e6.js → p-4619d854.js} +2 -2
  184. package/dist/atomic/p-4b3f9949.js +9 -0
  185. package/dist/atomic/p-4b3f9949.js.map +1 -0
  186. package/dist/atomic/p-51ea347a.entry.js +2 -0
  187. package/dist/atomic/{p-337a579e.entry.js.map → p-51ea347a.entry.js.map} +1 -1
  188. package/dist/atomic/p-5266d7aa.entry.js +2 -0
  189. package/dist/atomic/{p-67ee257c.entry.js.map → p-5266d7aa.entry.js.map} +1 -1
  190. package/dist/atomic/{p-98cbe076.js → p-5c374d71.js} +2 -2
  191. package/dist/atomic/p-5c7a3e32.entry.js +2 -0
  192. package/dist/atomic/p-5c7a3e32.entry.js.map +1 -0
  193. package/dist/atomic/p-60d0b592.entry.js +2 -0
  194. package/dist/atomic/{p-2eb1f9b6.entry.js.map → p-60d0b592.entry.js.map} +1 -1
  195. package/dist/atomic/p-6138b4fc.entry.js +2 -0
  196. package/dist/atomic/{p-42a7430c.entry.js.map → p-6138b4fc.entry.js.map} +1 -1
  197. package/dist/atomic/p-62a34ad3.js +2 -0
  198. package/dist/atomic/{p-2a60a64b.js → p-7169f45e.js} +2 -2
  199. package/dist/atomic/{p-8bfd7567.entry.js → p-71b98e69.entry.js} +2 -2
  200. package/dist/atomic/{p-8bfd7567.entry.js.map → p-71b98e69.entry.js.map} +1 -1
  201. package/dist/atomic/{p-0eb714c6.js → p-7312bb94.js} +2 -2
  202. package/dist/atomic/{p-7a15debe.entry.js → p-7589819b.entry.js} +2 -2
  203. package/dist/atomic/{p-7a15debe.entry.js.map → p-7589819b.entry.js.map} +1 -1
  204. package/dist/atomic/p-833e29ff.entry.js +2 -0
  205. package/dist/atomic/{p-5b3e31e7.entry.js.map → p-833e29ff.entry.js.map} +1 -1
  206. package/dist/atomic/{p-4fa81f5f.js → p-8a49c2cf.js} +2 -2
  207. package/dist/atomic/p-8da9af0c.entry.js +2 -0
  208. package/dist/atomic/{p-004c7869.entry.js.map → p-8da9af0c.entry.js.map} +1 -1
  209. package/dist/atomic/p-9e400bc4.entry.js +2 -0
  210. package/dist/atomic/{p-84c6c317.entry.js.map → p-9e400bc4.entry.js.map} +1 -1
  211. package/dist/atomic/{p-452813b0.js → p-9f3a46b1.js} +2 -2
  212. package/dist/atomic/p-a06212cc.entry.js +2 -0
  213. package/dist/atomic/{p-66c0ba83.entry.js.map → p-a06212cc.entry.js.map} +1 -1
  214. package/dist/atomic/{p-4f7577cb.entry.js → p-a6819371.entry.js} +2 -2
  215. package/dist/atomic/p-a6819371.entry.js.map +1 -0
  216. package/dist/atomic/p-a868522c.entry.js +2 -0
  217. package/dist/atomic/{p-4009470f.entry.js.map → p-a868522c.entry.js.map} +1 -1
  218. package/dist/atomic/{p-43cbacac.js → p-af7f18d4.js} +2 -2
  219. package/dist/atomic/{p-d8705a4b.js → p-b043d6b0.js} +2 -2
  220. package/dist/atomic/{p-f4902f66.entry.js → p-b34fdf83.entry.js} +2 -2
  221. package/dist/atomic/p-c0f7eaa4.entry.js +2 -0
  222. package/dist/atomic/{p-79a06d99.entry.js.map → p-c0f7eaa4.entry.js.map} +1 -1
  223. package/dist/atomic/{p-1fca38e1.js → p-c940c4be.js} +2 -2
  224. package/dist/atomic/{p-de10ed2b.entry.js → p-cc0d69b9.entry.js} +2 -2
  225. package/dist/atomic/{p-de10ed2b.entry.js.map → p-cc0d69b9.entry.js.map} +1 -1
  226. package/dist/atomic/{p-a14f40f2.js → p-cd6373b9.js} +2 -2
  227. package/dist/atomic/p-ce24b256.entry.js +2 -0
  228. package/dist/atomic/{p-fd30ed04.entry.js.map → p-ce24b256.entry.js.map} +1 -1
  229. package/dist/atomic/p-d33e0ae2.entry.js +2 -0
  230. package/dist/atomic/{p-2e9191a0.entry.js.map → p-d33e0ae2.entry.js.map} +1 -1
  231. package/dist/atomic/p-ea761c89.entry.js +2 -0
  232. package/dist/atomic/p-ea761c89.entry.js.map +1 -0
  233. package/dist/atomic/p-eb430e57.js +2 -0
  234. package/dist/atomic/p-eb430e57.js.map +1 -0
  235. package/dist/atomic/p-f0dbdace.entry.js +2 -0
  236. package/dist/atomic/{p-341cbb51.entry.js.map → p-f0dbdace.entry.js.map} +1 -1
  237. package/dist/atomic/p-f1e163f6.entry.js +2 -0
  238. package/dist/atomic/{p-ef3d7069.entry.js.map → p-f1e163f6.entry.js.map} +1 -1
  239. package/dist/atomic/p-fc7cf109.js +2 -0
  240. package/dist/atomic/p-fcf299de.entry.js +2 -0
  241. package/dist/atomic/p-fcf299de.entry.js.map +1 -0
  242. package/dist/atomic/p-fd620b0f.entry.js +2 -0
  243. package/dist/atomic/{p-e5c9cb6f.entry.js.map → p-fd620b0f.entry.js.map} +1 -1
  244. package/dist/atomic/{p-8b42c664.entry.js → p-ffca7de3.entry.js} +2 -2
  245. package/dist/atomic/{p-8b42c664.entry.js.map → p-ffca7de3.entry.js.map} +1 -1
  246. package/dist/cjs/_index.cjs.js +27 -9
  247. package/dist/cjs/_loader.cjs.js +1 -1
  248. package/dist/cjs/atomic-generated-answer-feedback-modal.cjs.entry.js +11 -11
  249. package/dist/cjs/atomic-generated-answer-feedback-modal.cjs.entry.js.map +1 -1
  250. package/dist/cjs/atomic-insight-facet.cjs.entry.js +12 -13
  251. package/dist/cjs/atomic-insight-facet.cjs.entry.js.map +1 -1
  252. package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js +11 -11
  253. package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js.map +1 -1
  254. package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js +19 -10
  255. package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js.map +1 -1
  256. package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js +13 -14
  257. package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js.map +1 -1
  258. package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js +10 -10
  259. package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js.map +1 -1
  260. package/dist/cjs/atomic-insight-result-action-bar.cjs.entry.js +2 -2
  261. package/dist/cjs/atomic-insight-result-action-bar.cjs.entry.js.map +1 -1
  262. package/dist/cjs/atomic-insight-result-action.cjs.entry.js +9 -9
  263. package/dist/cjs/atomic-insight-result-action.cjs.entry.js.map +1 -1
  264. package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js +9 -9
  265. package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js.map +1 -1
  266. package/dist/cjs/atomic-insight-result-attach-to-case-indicator.cjs.entry.js +8 -8
  267. package/dist/cjs/atomic-insight-result-attach-to-case-indicator.cjs.entry.js.map +1 -1
  268. package/dist/cjs/atomic-insight-result-children-template.cjs.entry.js +3 -3
  269. package/dist/cjs/atomic-insight-result-children.cjs.entry.js +9 -9
  270. package/dist/cjs/atomic-insight-result-children.cjs.entry.js.map +1 -1
  271. package/dist/cjs/atomic-insight-result-list.cjs.entry.js +11 -11
  272. package/dist/cjs/atomic-insight-result-list.cjs.entry.js.map +1 -1
  273. package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js +12 -12
  274. package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js.map +1 -1
  275. package/dist/cjs/atomic-insight-result.cjs.entry.js +8 -8
  276. package/dist/cjs/atomic-insight-result.cjs.entry.js.map +1 -1
  277. package/dist/cjs/atomic-insight-smart-snippet-suggestions.cjs.entry.js +7 -7
  278. package/dist/cjs/atomic-insight-smart-snippet-suggestions.cjs.entry.js.map +1 -1
  279. package/dist/cjs/atomic-insight-smart-snippet.cjs.entry.js +8 -8
  280. package/dist/cjs/atomic-insight-smart-snippet.cjs.entry.js.map +1 -1
  281. package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js +214 -19
  282. package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js.map +1 -1
  283. package/dist/cjs/atomic-insight-user-actions-modal.cjs.entry.js +6 -6
  284. package/dist/cjs/atomic-insight-user-actions-modal.cjs.entry.js.map +1 -1
  285. package/dist/cjs/atomic-insight-user-actions-session.cjs.entry.js +10 -9
  286. package/dist/cjs/atomic-insight-user-actions-session.cjs.entry.js.map +1 -1
  287. package/dist/cjs/atomic-insight-user-actions-timeline.cjs.entry.js +6 -6
  288. package/dist/cjs/atomic-insight-user-actions-timeline.cjs.entry.js.map +1 -1
  289. package/dist/cjs/atomic-ipx-body.cjs.entry.js +9 -9
  290. package/dist/cjs/atomic-ipx-body.cjs.entry.js.map +1 -1
  291. package/dist/cjs/atomic-ipx-embedded.cjs.entry.js +8 -8
  292. package/dist/cjs/atomic-ipx-embedded.cjs.entry.js.map +1 -1
  293. package/dist/cjs/atomic-ipx-modal.cjs.entry.js +9 -9
  294. package/dist/cjs/atomic-ipx-modal.cjs.entry.js.map +1 -1
  295. package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +13 -13
  296. package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js.map +1 -1
  297. package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js +9 -9
  298. package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js.map +1 -1
  299. package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js +13 -9
  300. package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js.map +1 -1
  301. package/dist/cjs/atomic-ipx-result-link.cjs.entry.js +8 -8
  302. package/dist/cjs/atomic-ipx-result-link.cjs.entry.js.map +1 -1
  303. package/dist/cjs/atomic-quickview-modal.cjs.entry.js +9 -9
  304. package/dist/cjs/atomic-quickview-modal.cjs.entry.js.map +1 -1
  305. package/dist/cjs/atomic-recs-list.cjs.entry.js +13 -13
  306. package/dist/cjs/atomic-recs-list.cjs.entry.js.map +1 -1
  307. package/dist/cjs/atomic-stencil-facet-date-input.cjs.entry.js +2 -2
  308. package/dist/cjs/atomic-suggestion-renderer.cjs.entry.js +6 -2
  309. package/dist/cjs/atomic-suggestion-renderer.cjs.entry.js.map +1 -1
  310. package/dist/cjs/atomic.cjs.js +1 -1
  311. package/dist/cjs/{display-options-1df77bd7.js → display-options-384d10a5.js} +5 -5
  312. package/dist/cjs/{display-options-1df77bd7.js.map → display-options-384d10a5.js.map} +1 -1
  313. package/dist/cjs/{dom-utils-d4790328.js → dom-utils-cd217508.js} +1 -7
  314. package/dist/cjs/dom-utils-cd217508.js.map +1 -0
  315. package/dist/cjs/{event-utils-49230a63.js → event-utils-6ba7f590.js} +1 -2
  316. package/dist/cjs/event-utils-6ba7f590.js.map +1 -0
  317. package/dist/cjs/index-0a91838f.js +4 -36
  318. package/dist/cjs/index.cjs.js.map +1 -1
  319. package/dist/cjs/{initialization-lit-stencil-common-utils-8443d821.js → initialization-lit-stencil-common-utils-e66ddf82.js} +3 -3
  320. package/dist/cjs/{initialization-lit-stencil-common-utils-8443d821.js.map → initialization-lit-stencil-common-utils-e66ddf82.js.map} +1 -1
  321. package/dist/cjs/{initialization-utils-18fa7055.js → initialization-utils-fc17b06d.js} +4 -4
  322. package/dist/cjs/{initialization-utils-18fa7055.js.map → initialization-utils-fc17b06d.js.map} +1 -1
  323. package/dist/cjs/{item-layout-sections-4d2fca2a.js → item-layout-sections-747c102b.js} +2 -2
  324. package/dist/cjs/{item-layout-sections-4d2fca2a.js.map → item-layout-sections-747c102b.js.map} +1 -1
  325. package/dist/cjs/{popover-type-8bc9854f.js → popover-type-dfe5ee7d.js} +2 -2
  326. package/dist/cjs/{popover-type-8bc9854f.js.map → popover-type-dfe5ee7d.js.map} +1 -1
  327. package/dist/cjs/{props-utils-63c8e1dc.js → props-utils-81f782bd.js} +3 -33
  328. package/dist/cjs/props-utils-81f782bd.js.map +1 -0
  329. package/dist/cjs/{replace-breakpoint-utils-47f2eaa4.js → replace-breakpoint-utils-00c32323.js} +2 -2
  330. package/dist/cjs/{replace-breakpoint-utils-47f2eaa4.js.map → replace-breakpoint-utils-00c32323.js.map} +1 -1
  331. package/dist/cjs/{stencil-accessibility-utils-2e57c7ca.js → stencil-accessibility-utils-0c0e88a9.js} +3 -3
  332. package/dist/cjs/{stencil-accessibility-utils-2e57c7ca.js.map → stencil-accessibility-utils-0c0e88a9.js.map} +1 -1
  333. package/dist/cjs/{stencil-button-c0586199.js → stencil-button-61811640.js} +2 -2
  334. package/dist/cjs/{stencil-button-c0586199.js.map → stencil-button-61811640.js.map} +1 -1
  335. package/dist/cjs/{stencil-carousel-01fe150d.js → stencil-carousel-eef6c01f.js} +2 -2
  336. package/dist/cjs/{stencil-carousel-01fe150d.js.map → stencil-carousel-eef6c01f.js.map} +1 -1
  337. package/dist/cjs/{stencil-facet-value-checkbox-bc37b35c.js → stencil-facet-value-checkbox-8aa3f25a.js} +4 -4
  338. package/dist/cjs/{stencil-facet-value-checkbox-bc37b35c.js.map → stencil-facet-value-checkbox-8aa3f25a.js.map} +1 -1
  339. package/dist/cjs/{stencil-facet-values-group-afaa9362.js → stencil-facet-values-group-4941df59.js} +7 -4
  340. package/dist/cjs/stencil-facet-values-group-4941df59.js.map +1 -0
  341. package/dist/cjs/{stencil-iconButton-10c8c2e7.js → stencil-iconButton-f33f668c.js} +2 -2
  342. package/dist/cjs/{stencil-iconButton-10c8c2e7.js.map → stencil-iconButton-f33f668c.js.map} +1 -1
  343. package/dist/cjs/{stencil-item-decorators-3cfb37d5.js → stencil-item-decorators-60e21571.js} +3 -3
  344. package/dist/cjs/{stencil-item-decorators-3cfb37d5.js.map → stencil-item-decorators-60e21571.js.map} +1 -1
  345. package/dist/cjs/{stencil-modal-28d19d3d.js → stencil-modal-3c66faca.js} +3 -3
  346. package/dist/cjs/{stencil-modal-28d19d3d.js.map → stencil-modal-3c66faca.js.map} +1 -1
  347. package/dist/cjs/{stencil-radio-button-e48e4166.js → stencil-radio-button-bc2441e3.js} +2 -2
  348. package/dist/cjs/{stencil-radio-button-e48e4166.js.map → stencil-radio-button-bc2441e3.js.map} +1 -1
  349. package/dist/cjs/{stencil-result-template-decorators-251652cc.js → stencil-result-template-decorators-b8a9f27d.js} +2 -2
  350. package/dist/cjs/{stencil-result-template-decorators-251652cc.js.map → stencil-result-template-decorators-b8a9f27d.js.map} +1 -1
  351. package/dist/cjs/{utils-ea9d23f2.js → utils-b455e068.js} +1 -8
  352. package/dist/cjs/utils-b455e068.js.map +1 -0
  353. package/dist/cjs/version.cjs.js +2 -2
  354. package/dist/esm/_index.js +26 -8
  355. package/dist/esm/_loader.js +1 -1
  356. package/dist/esm/atomic-generated-answer-feedback-modal.entry.js +11 -11
  357. package/dist/esm/atomic-generated-answer-feedback-modal.entry.js.map +1 -1
  358. package/dist/esm/atomic-insight-facet.entry.js +12 -13
  359. package/dist/esm/atomic-insight-facet.entry.js.map +1 -1
  360. package/dist/esm/atomic-insight-folded-result-list.entry.js +11 -11
  361. package/dist/esm/atomic-insight-folded-result-list.entry.js.map +1 -1
  362. package/dist/esm/atomic-insight-generated-answer.entry.js +18 -9
  363. package/dist/esm/atomic-insight-generated-answer.entry.js.map +1 -1
  364. package/dist/esm/atomic-insight-numeric-facet.entry.js +13 -14
  365. package/dist/esm/atomic-insight-numeric-facet.entry.js.map +1 -1
  366. package/dist/esm/atomic-insight-refine-modal.entry.js +10 -10
  367. package/dist/esm/atomic-insight-refine-modal.entry.js.map +1 -1
  368. package/dist/esm/atomic-insight-result-action-bar.entry.js +2 -2
  369. package/dist/esm/atomic-insight-result-action-bar.entry.js.map +1 -1
  370. package/dist/esm/atomic-insight-result-action.entry.js +9 -9
  371. package/dist/esm/atomic-insight-result-action.entry.js.map +1 -1
  372. package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js +9 -9
  373. package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js.map +1 -1
  374. package/dist/esm/atomic-insight-result-attach-to-case-indicator.entry.js +8 -8
  375. package/dist/esm/atomic-insight-result-attach-to-case-indicator.entry.js.map +1 -1
  376. package/dist/esm/atomic-insight-result-children-template.entry.js +3 -3
  377. package/dist/esm/atomic-insight-result-children.entry.js +9 -9
  378. package/dist/esm/atomic-insight-result-children.entry.js.map +1 -1
  379. package/dist/esm/atomic-insight-result-list.entry.js +11 -11
  380. package/dist/esm/atomic-insight-result-list.entry.js.map +1 -1
  381. package/dist/esm/atomic-insight-result-quickview-action.entry.js +12 -12
  382. package/dist/esm/atomic-insight-result-quickview-action.entry.js.map +1 -1
  383. package/dist/esm/atomic-insight-result.entry.js +8 -8
  384. package/dist/esm/atomic-insight-result.entry.js.map +1 -1
  385. package/dist/esm/atomic-insight-smart-snippet-suggestions.entry.js +7 -7
  386. package/dist/esm/atomic-insight-smart-snippet-suggestions.entry.js.map +1 -1
  387. package/dist/esm/atomic-insight-smart-snippet.entry.js +8 -8
  388. package/dist/esm/atomic-insight-smart-snippet.entry.js.map +1 -1
  389. package/dist/esm/atomic-insight-timeframe-facet.entry.js +214 -19
  390. package/dist/esm/atomic-insight-timeframe-facet.entry.js.map +1 -1
  391. package/dist/esm/atomic-insight-user-actions-modal.entry.js +6 -6
  392. package/dist/esm/atomic-insight-user-actions-modal.entry.js.map +1 -1
  393. package/dist/esm/atomic-insight-user-actions-session.entry.js +9 -8
  394. package/dist/esm/atomic-insight-user-actions-session.entry.js.map +1 -1
  395. package/dist/esm/atomic-insight-user-actions-timeline.entry.js +6 -6
  396. package/dist/esm/atomic-insight-user-actions-timeline.entry.js.map +1 -1
  397. package/dist/esm/atomic-ipx-body.entry.js +9 -9
  398. package/dist/esm/atomic-ipx-body.entry.js.map +1 -1
  399. package/dist/esm/atomic-ipx-embedded.entry.js +8 -8
  400. package/dist/esm/atomic-ipx-embedded.entry.js.map +1 -1
  401. package/dist/esm/atomic-ipx-modal.entry.js +9 -9
  402. package/dist/esm/atomic-ipx-modal.entry.js.map +1 -1
  403. package/dist/esm/atomic-ipx-recs-list.entry.js +13 -13
  404. package/dist/esm/atomic-ipx-recs-list.entry.js.map +1 -1
  405. package/dist/esm/atomic-ipx-refine-modal.entry.js +9 -9
  406. package/dist/esm/atomic-ipx-refine-modal.entry.js.map +1 -1
  407. package/dist/esm/atomic-ipx-refine-toggle.entry.js +13 -9
  408. package/dist/esm/atomic-ipx-refine-toggle.entry.js.map +1 -1
  409. package/dist/esm/atomic-ipx-result-link.entry.js +8 -8
  410. package/dist/esm/atomic-ipx-result-link.entry.js.map +1 -1
  411. package/dist/esm/atomic-quickview-modal.entry.js +9 -9
  412. package/dist/esm/atomic-quickview-modal.entry.js.map +1 -1
  413. package/dist/esm/atomic-recs-list.entry.js +13 -13
  414. package/dist/esm/atomic-recs-list.entry.js.map +1 -1
  415. package/dist/esm/atomic-stencil-facet-date-input.entry.js +2 -2
  416. package/dist/esm/atomic-suggestion-renderer.entry.js +5 -1
  417. package/dist/esm/atomic-suggestion-renderer.entry.js.map +1 -1
  418. package/dist/esm/atomic.js +1 -1
  419. package/dist/esm/{display-options-76ae4a7b.js → display-options-793661be.js} +5 -5
  420. package/dist/esm/{display-options-76ae4a7b.js.map → display-options-793661be.js.map} +1 -1
  421. package/dist/esm/{dom-utils-f6086cd3.js → dom-utils-1543d0e9.js} +2 -7
  422. package/dist/esm/dom-utils-1543d0e9.js.map +1 -0
  423. package/dist/esm/{event-utils-40fded47.js → event-utils-ca52c462.js} +2 -2
  424. package/dist/esm/{event-utils-40fded47.js.map → event-utils-ca52c462.js.map} +1 -1
  425. package/dist/esm/index-d03d85cb.js +4 -36
  426. package/dist/esm/index.js.map +1 -1
  427. package/dist/esm/{initialization-lit-stencil-common-utils-1ee26198.js → initialization-lit-stencil-common-utils-58a20779.js} +3 -3
  428. package/dist/esm/{initialization-lit-stencil-common-utils-1ee26198.js.map → initialization-lit-stencil-common-utils-58a20779.js.map} +1 -1
  429. package/dist/esm/{initialization-utils-264915a2.js → initialization-utils-651b038f.js} +4 -4
  430. package/dist/esm/{initialization-utils-264915a2.js.map → initialization-utils-651b038f.js.map} +1 -1
  431. package/dist/esm/{item-layout-sections-e01eb1eb.js → item-layout-sections-879f1c3f.js} +2 -2
  432. package/dist/esm/{item-layout-sections-e01eb1eb.js.map → item-layout-sections-879f1c3f.js.map} +1 -1
  433. package/dist/esm/{popover-type-dff88f57.js → popover-type-4a2d4796.js} +2 -2
  434. package/dist/esm/{popover-type-dff88f57.js.map → popover-type-4a2d4796.js.map} +1 -1
  435. package/dist/esm/{props-utils-bddde105.js → props-utils-3560dc78.js} +4 -33
  436. package/dist/esm/props-utils-3560dc78.js.map +1 -0
  437. package/dist/esm/{replace-breakpoint-utils-13ff9ca5.js → replace-breakpoint-utils-f12f6e47.js} +2 -2
  438. package/dist/esm/{replace-breakpoint-utils-13ff9ca5.js.map → replace-breakpoint-utils-f12f6e47.js.map} +1 -1
  439. package/dist/esm/{stencil-accessibility-utils-97f2cc29.js → stencil-accessibility-utils-347a9222.js} +3 -3
  440. package/dist/esm/{stencil-accessibility-utils-97f2cc29.js.map → stencil-accessibility-utils-347a9222.js.map} +1 -1
  441. package/dist/esm/{stencil-button-052bf55b.js → stencil-button-9db0f69f.js} +2 -2
  442. package/dist/esm/{stencil-button-052bf55b.js.map → stencil-button-9db0f69f.js.map} +1 -1
  443. package/dist/esm/{stencil-carousel-15d48c0d.js → stencil-carousel-7856f406.js} +2 -2
  444. package/dist/esm/{stencil-carousel-15d48c0d.js.map → stencil-carousel-7856f406.js.map} +1 -1
  445. package/dist/esm/{stencil-facet-value-checkbox-f4b4b157.js → stencil-facet-value-checkbox-90f21885.js} +4 -4
  446. package/dist/esm/{stencil-facet-value-checkbox-f4b4b157.js.map → stencil-facet-value-checkbox-90f21885.js.map} +1 -1
  447. package/dist/esm/{stencil-facet-values-group-9add8d35.js → stencil-facet-values-group-79d71457.js} +6 -3
  448. package/dist/esm/stencil-facet-values-group-79d71457.js.map +1 -0
  449. package/dist/esm/{stencil-iconButton-9e9e6576.js → stencil-iconButton-cf073305.js} +2 -2
  450. package/dist/esm/{stencil-iconButton-9e9e6576.js.map → stencil-iconButton-cf073305.js.map} +1 -1
  451. package/dist/esm/{stencil-item-decorators-9a4086d6.js → stencil-item-decorators-a9ef9261.js} +3 -3
  452. package/dist/esm/{stencil-item-decorators-9a4086d6.js.map → stencil-item-decorators-a9ef9261.js.map} +1 -1
  453. package/dist/esm/{stencil-modal-d506778a.js → stencil-modal-8704f835.js} +3 -3
  454. package/dist/esm/{stencil-modal-d506778a.js.map → stencil-modal-8704f835.js.map} +1 -1
  455. package/dist/esm/{stencil-radio-button-52c4b049.js → stencil-radio-button-04060ca2.js} +2 -2
  456. package/dist/esm/{stencil-radio-button-52c4b049.js.map → stencil-radio-button-04060ca2.js.map} +1 -1
  457. package/dist/esm/{stencil-result-template-decorators-5e987020.js → stencil-result-template-decorators-92779fb2.js} +2 -2
  458. package/dist/esm/{stencil-result-template-decorators-5e987020.js.map → stencil-result-template-decorators-92779fb2.js.map} +1 -1
  459. package/dist/esm/{utils-50226fe0.js → utils-d8fc65c4.js} +2 -8
  460. package/dist/esm/utils-d8fc65c4.js.map +1 -0
  461. package/dist/esm/version.js +2 -2
  462. package/dist/types/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.d.ts +2 -2
  463. package/dist/types/components/commerce/atomic-commerce-category-facet/atomic-commerce-category-facet.d.ts +2 -2
  464. package/dist/types/components/commerce/atomic-commerce-product-list/atomic-commerce-product-list.d.ts +2 -2
  465. package/dist/types/components/commerce/atomic-commerce-search-box-instant-products/atomic-commerce-search-box-instant-products.d.ts +1 -1
  466. package/dist/types/components/commerce/atomic-commerce-search-box-query-suggestions/atomic-commerce-search-box-query-suggestions.d.ts +1 -1
  467. package/dist/types/components/commerce/atomic-commerce-search-box-recent-queries/atomic-commerce-search-box-recent-queries.d.ts +1 -1
  468. package/dist/types/components/commerce/atomic-product-children/atomic-product-children.d.ts +2 -2
  469. package/dist/types/components/commerce/atomic-product-description/atomic-product-description.d.ts +2 -2
  470. package/dist/types/components/commerce/atomic-product-excerpt/atomic-product-excerpt.d.ts +2 -2
  471. package/dist/types/components/commerce/atomic-product-image/atomic-product-image.d.ts +2 -2
  472. package/dist/types/components/commerce/atomic-product-link/atomic-product-link.tw.css.d.ts +2 -0
  473. package/dist/types/components/commerce/atomic-product-multi-value-text/atomic-product-multi-value-text.d.ts +3 -3
  474. package/dist/types/components/commerce/atomic-product-template/atomic-product-template.d.ts +1 -1
  475. package/dist/types/components/commerce/product-template-component-utils/context/stencil-product-template-decorators.d.ts +1 -1
  476. package/dist/types/components/common/{generated-answer/atomic-citation → atomic-citation}/atomic-citation.d.ts +23 -7
  477. package/dist/types/components/common/atomic-citation/atomic-citation.tw.css.d.ts +2 -0
  478. package/dist/types/components/common/atomic-layout-section/atomic-layout-section.d.ts +2 -2
  479. package/dist/types/components/common/atomic-modal/atomic-modal.d.ts +1 -1
  480. package/dist/types/components/common/generated-answer/render-citations.d.ts +1 -0
  481. package/dist/types/components/common/index.d.ts +1 -0
  482. package/dist/types/components/common/item-link/item-link.d.ts +2 -1
  483. package/dist/types/components/common/item-list/display-wrapper.d.ts +1 -1
  484. package/dist/types/components/common/sort/sort-guard.d.ts +1 -1
  485. package/dist/types/components/common/suggestions/query-suggestions.d.ts +6 -1
  486. package/dist/types/components/common/validate-props-controller/validate-props-controller.d.ts +1 -1
  487. package/dist/types/components/insight/atomic-insight-history-toggle/atomic-insight-history-toggle.d.ts +19 -2
  488. package/dist/types/components/insight/atomic-insight-refine-toggle/atomic-insight-refine-toggle.d.ts +24 -10
  489. package/dist/types/components/insight/atomic-insight-result-template/atomic-insight-result-template.d.ts +1 -1
  490. package/dist/types/components/insight/atomic-insight-search-box/atomic-insight-search-box.d.ts +31 -12
  491. package/dist/types/components/insight/atomic-insight-search-box/atomic-insight-search-box.tw.css.d.ts +2 -0
  492. package/dist/types/components/insight/atomic-insight-smart-snippet-feedback-modal/atomic-insight-smart-snippet-feedback-modal.d.ts +58 -0
  493. package/dist/types/components/insight/atomic-insight-smart-snippet-feedback-modal/atomic-insight-smart-snippet-feedback-modal.tw.css.d.ts +2 -0
  494. package/dist/types/components/insight/atomic-insight-timeframe-facet/atomic-insight-timeframe-facet.d.ts +1 -1
  495. package/dist/types/components/insight/index.d.ts +4 -0
  496. package/dist/types/components/ipx/atomic-ipx-button/atomic-ipx-button.d.ts +25 -8
  497. package/dist/types/components/ipx/index.d.ts +1 -0
  498. package/dist/types/components/recommendations/atomic-recs-result/atomic-recs-result.d.ts +44 -33
  499. package/dist/types/components/recommendations/atomic-recs-result-template/atomic-recs-result-template.d.ts +2 -1
  500. package/dist/types/components/recommendations/index.d.ts +1 -0
  501. package/dist/types/components/search/atomic-automatic-facet/atomic-automatic-facet.d.ts +2 -2
  502. package/dist/types/components/search/atomic-automatic-facet-generator/atomic-automatic-facet-generator.d.ts +2 -2
  503. package/dist/types/components/search/atomic-breadbox/atomic-breadbox.d.ts +2 -2
  504. package/dist/types/components/search/atomic-category-facet/atomic-category-facet.d.ts +2 -2
  505. package/dist/types/components/search/atomic-field-condition/atomic-field-condition.d.ts +4 -4
  506. package/dist/types/components/search/atomic-format-currency/atomic-format-currency.d.ts +1 -1
  507. package/dist/types/components/search/atomic-format-number/atomic-format-number.d.ts +1 -1
  508. package/dist/types/components/search/atomic-format-unit/atomic-format-unit.d.ts +1 -1
  509. package/dist/types/components/search/atomic-generated-answer/atomic-generated-answer.d.ts +2 -2
  510. package/dist/types/components/search/atomic-notifications/atomic-notifications.d.ts +2 -2
  511. package/dist/types/components/search/atomic-rating-facet/atomic-rating-facet.d.ts +2 -2
  512. package/dist/types/components/search/atomic-result-children-template/atomic-result-children-template.d.ts +1 -1
  513. package/dist/types/components/search/atomic-result-icon/atomic-result-icon.d.ts +2 -2
  514. package/dist/types/components/search/atomic-result-link/atomic-result-link.tw.css.d.ts +2 -0
  515. package/dist/types/components/search/atomic-result-multi-value-text/atomic-result-multi-value-text.d.ts +1 -1
  516. package/dist/types/components/search/atomic-result-section-bottom-metadata/atomic-result-section-bottom-metadata.d.ts +1 -1
  517. package/dist/types/components/search/atomic-result-template/atomic-result-template.d.ts +1 -1
  518. package/dist/types/components/search/atomic-search-box-instant-results/atomic-search-box-instant-results.d.ts +1 -1
  519. package/dist/types/components/search/atomic-search-box-query-suggestions/atomic-search-box-query-suggestions.d.ts +1 -1
  520. package/dist/types/components/search/atomic-search-box-recent-queries/atomic-search-box-recent-queries.d.ts +1 -1
  521. package/dist/types/components/search/atomic-segmented-facet-scrollable/atomic-segmented-facet-scrollable.d.ts +2 -2
  522. package/dist/types/components/search/atomic-smart-snippet-suggestions/atomic-smart-snippet-suggestions.d.ts +2 -1
  523. package/dist/types/components/search/atomic-tab-manager/atomic-tab-manager.d.ts +1 -1
  524. package/dist/types/components/search/{facets/atomic-timeframe-facet → atomic-timeframe-facet}/atomic-timeframe-facet.d.ts +37 -40
  525. package/dist/types/components/search/index.d.ts +1 -0
  526. package/dist/types/components.d.ts +6 -459
  527. package/dist/types/decorators/types.d.ts +3 -3
  528. package/docs/atomic-docs.json +10 -991
  529. package/package.json +5 -4
  530. package/dist/atomic/components/atomic-citation.d.ts +0 -11
  531. package/dist/atomic/components/atomic-citation.js +0 -1958
  532. package/dist/atomic/components/atomic-citation.js.map +0 -1
  533. package/dist/atomic/components/atomic-insight-history-toggle.d.ts +0 -11
  534. package/dist/atomic/components/atomic-insight-history-toggle.js +0 -46
  535. package/dist/atomic/components/atomic-insight-history-toggle.js.map +0 -1
  536. package/dist/atomic/components/atomic-insight-refine-modal2.js +0 -125
  537. package/dist/atomic/components/atomic-insight-refine-modal2.js.map +0 -1
  538. package/dist/atomic/components/atomic-insight-refine-toggle.d.ts +0 -11
  539. package/dist/atomic/components/atomic-insight-refine-toggle.js +0 -107
  540. package/dist/atomic/components/atomic-insight-refine-toggle.js.map +0 -1
  541. package/dist/atomic/components/atomic-insight-search-box.d.ts +0 -11
  542. package/dist/atomic/components/atomic-insight-search-box.js +0 -724
  543. package/dist/atomic/components/atomic-insight-search-box.js.map +0 -1
  544. package/dist/atomic/components/atomic-insight-smart-snippet-feedback-modal.d.ts +0 -11
  545. package/dist/atomic/components/atomic-insight-smart-snippet-feedback-modal.js +0 -8
  546. package/dist/atomic/components/atomic-insight-smart-snippet-feedback-modal.js.map +0 -1
  547. package/dist/atomic/components/atomic-insight-smart-snippet-feedback-modal2.js +0 -170
  548. package/dist/atomic/components/atomic-insight-smart-snippet-feedback-modal2.js.map +0 -1
  549. package/dist/atomic/components/atomic-ipx-button.d.ts +0 -11
  550. package/dist/atomic/components/atomic-ipx-button.js +0 -168
  551. package/dist/atomic/components/atomic-ipx-button.js.map +0 -1
  552. package/dist/atomic/components/atomic-recs-result.d.ts +0 -11
  553. package/dist/atomic/components/atomic-recs-result.js +0 -8
  554. package/dist/atomic/components/atomic-recs-result.js.map +0 -1
  555. package/dist/atomic/components/atomic-recs-result2.js +0 -155
  556. package/dist/atomic/components/atomic-recs-result2.js.map +0 -1
  557. package/dist/atomic/components/atomic-suggestion-renderer2.js +0 -123
  558. package/dist/atomic/components/atomic-suggestion-renderer2.js.map +0 -1
  559. package/dist/atomic/components/atomic-timeframe-facet.d.ts +0 -11
  560. package/dist/atomic/components/atomic-timeframe-facet.js +0 -303
  561. package/dist/atomic/components/atomic-timeframe-facet.js.map +0 -1
  562. package/dist/atomic/components/debounce-utils.js +0 -13
  563. package/dist/atomic/components/debounce-utils.js.map +0 -1
  564. package/dist/atomic/components/filter.js +0 -8
  565. package/dist/atomic/components/filter.js.map +0 -1
  566. package/dist/atomic/components/search.js +0 -5
  567. package/dist/atomic/components/search.js.map +0 -1
  568. package/dist/atomic/components/stencil-timeframe-facet-common.js +0 -208
  569. package/dist/atomic/components/stencil-timeframe-facet-common.js.map +0 -1
  570. package/dist/atomic/components/string-utils.js +0 -13
  571. package/dist/atomic/components/string-utils.js.map +0 -1
  572. package/dist/atomic/p-004c7869.entry.js +0 -2
  573. package/dist/atomic/p-00b326bb.js +0 -2
  574. package/dist/atomic/p-01c91b69.js +0 -2
  575. package/dist/atomic/p-01c91b69.js.map +0 -1
  576. package/dist/atomic/p-0263f784.entry.js +0 -2
  577. package/dist/atomic/p-0263f784.entry.js.map +0 -1
  578. package/dist/atomic/p-09f9f4a7.entry.js +0 -2
  579. package/dist/atomic/p-0a051b8d.js +0 -2
  580. package/dist/atomic/p-0a051b8d.js.map +0 -1
  581. package/dist/atomic/p-12ef929d.entry.js +0 -2
  582. package/dist/atomic/p-12ef929d.entry.js.map +0 -1
  583. package/dist/atomic/p-25e57bd6.entry.js +0 -2
  584. package/dist/atomic/p-25e57bd6.entry.js.map +0 -1
  585. package/dist/atomic/p-2d4a855d.entry.js +0 -2
  586. package/dist/atomic/p-2e9191a0.entry.js +0 -2
  587. package/dist/atomic/p-2eb1f9b6.entry.js +0 -2
  588. package/dist/atomic/p-337a579e.entry.js +0 -2
  589. package/dist/atomic/p-341cbb51.entry.js +0 -2
  590. package/dist/atomic/p-3443303e.js +0 -2
  591. package/dist/atomic/p-4009470f.entry.js +0 -2
  592. package/dist/atomic/p-42a7430c.entry.js +0 -2
  593. package/dist/atomic/p-47053bf3.entry.js +0 -2
  594. package/dist/atomic/p-47053bf3.entry.js.map +0 -1
  595. package/dist/atomic/p-4f7577cb.entry.js.map +0 -1
  596. package/dist/atomic/p-512d2286.entry.js +0 -2
  597. package/dist/atomic/p-512d2286.entry.js.map +0 -1
  598. package/dist/atomic/p-5b3e31e7.entry.js +0 -2
  599. package/dist/atomic/p-6292386d.js +0 -2
  600. package/dist/atomic/p-6292386d.js.map +0 -1
  601. package/dist/atomic/p-66c0ba83.entry.js +0 -2
  602. package/dist/atomic/p-67ee257c.entry.js +0 -2
  603. package/dist/atomic/p-7031a4ad.entry.js +0 -2
  604. package/dist/atomic/p-79a06d99.entry.js +0 -2
  605. package/dist/atomic/p-7bc209e6.js +0 -9
  606. package/dist/atomic/p-7bc209e6.js.map +0 -1
  607. package/dist/atomic/p-817f3432.entry.js +0 -2
  608. package/dist/atomic/p-84c6c317.entry.js +0 -2
  609. package/dist/atomic/p-8954a4d7.js +0 -2
  610. package/dist/atomic/p-8954a4d7.js.map +0 -1
  611. package/dist/atomic/p-8f5830b4.js +0 -2
  612. package/dist/atomic/p-8f5830b4.js.map +0 -1
  613. package/dist/atomic/p-c4663e77.entry.js +0 -2
  614. package/dist/atomic/p-c4663e77.entry.js.map +0 -1
  615. package/dist/atomic/p-c9074946.js +0 -2
  616. package/dist/atomic/p-c9074946.js.map +0 -1
  617. package/dist/atomic/p-cd493a84.entry.js +0 -2
  618. package/dist/atomic/p-cd493a84.entry.js.map +0 -1
  619. package/dist/atomic/p-cd9adfcb.entry.js +0 -2
  620. package/dist/atomic/p-cd9adfcb.entry.js.map +0 -1
  621. package/dist/atomic/p-cfb3c589.js +0 -2
  622. package/dist/atomic/p-cfb3c589.js.map +0 -1
  623. package/dist/atomic/p-d2e34a09.js +0 -2
  624. package/dist/atomic/p-d2e34a09.js.map +0 -1
  625. package/dist/atomic/p-d44ae182.entry.js +0 -2
  626. package/dist/atomic/p-d44ae182.entry.js.map +0 -1
  627. package/dist/atomic/p-dab69c52.entry.js +0 -2
  628. package/dist/atomic/p-dab69c52.entry.js.map +0 -1
  629. package/dist/atomic/p-de3c9046.js +0 -2
  630. package/dist/atomic/p-de3c9046.js.map +0 -1
  631. package/dist/atomic/p-e5c9cb6f.entry.js +0 -2
  632. package/dist/atomic/p-ec23c480.entry.js +0 -2
  633. package/dist/atomic/p-ec23c480.entry.js.map +0 -1
  634. package/dist/atomic/p-ef3d7069.entry.js +0 -2
  635. package/dist/atomic/p-f10fec3f.js +0 -2
  636. package/dist/atomic/p-f10fec3f.js.map +0 -1
  637. package/dist/atomic/p-f1e02fa6.entry.js +0 -2
  638. package/dist/atomic/p-f1e02fa6.entry.js.map +0 -1
  639. package/dist/atomic/p-f48f321f.entry.js +0 -2
  640. package/dist/atomic/p-f48f321f.entry.js.map +0 -1
  641. package/dist/atomic/p-fd30ed04.entry.js +0 -2
  642. package/dist/cjs/atomic-citation.cjs.entry.js +0 -1936
  643. package/dist/cjs/atomic-citation.cjs.entry.js.map +0 -1
  644. package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js +0 -31
  645. package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js.map +0 -1
  646. package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js +0 -87
  647. package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js.map +0 -1
  648. package/dist/cjs/atomic-insight-search-box.cjs.entry.js +0 -684
  649. package/dist/cjs/atomic-insight-search-box.cjs.entry.js.map +0 -1
  650. package/dist/cjs/atomic-insight-smart-snippet-feedback-modal.cjs.entry.js +0 -157
  651. package/dist/cjs/atomic-insight-smart-snippet-feedback-modal.cjs.entry.js.map +0 -1
  652. package/dist/cjs/atomic-ipx-button.cjs.entry.js +0 -151
  653. package/dist/cjs/atomic-ipx-button.cjs.entry.js.map +0 -1
  654. package/dist/cjs/atomic-recs-result.cjs.entry.js +0 -138
  655. package/dist/cjs/atomic-recs-result.cjs.entry.js.map +0 -1
  656. package/dist/cjs/atomic-timeframe-facet.cjs.entry.js +0 -284
  657. package/dist/cjs/atomic-timeframe-facet.cjs.entry.js.map +0 -1
  658. package/dist/cjs/debounce-utils-d26bcad4.js +0 -15
  659. package/dist/cjs/debounce-utils-d26bcad4.js.map +0 -1
  660. package/dist/cjs/device-utils-b9b45662.js +0 -14
  661. package/dist/cjs/device-utils-b9b45662.js.map +0 -1
  662. package/dist/cjs/dom-utils-d4790328.js.map +0 -1
  663. package/dist/cjs/event-utils-49230a63.js.map +0 -1
  664. package/dist/cjs/filter-52d344d2.js +0 -10
  665. package/dist/cjs/filter-52d344d2.js.map +0 -1
  666. package/dist/cjs/props-utils-63c8e1dc.js.map +0 -1
  667. package/dist/cjs/search-a4774f02.js +0 -7
  668. package/dist/cjs/search-a4774f02.js.map +0 -1
  669. package/dist/cjs/stencil-facet-values-group-afaa9362.js.map +0 -1
  670. package/dist/cjs/stencil-timeframe-facet-common-240ee0a9.js +0 -210
  671. package/dist/cjs/stencil-timeframe-facet-common-240ee0a9.js.map +0 -1
  672. package/dist/cjs/string-utils-bdf08f8c.js +0 -16
  673. package/dist/cjs/string-utils-bdf08f8c.js.map +0 -1
  674. package/dist/cjs/suggestions-utils-61000808.js +0 -25
  675. package/dist/cjs/suggestions-utils-61000808.js.map +0 -1
  676. package/dist/cjs/utils-ea9d23f2.js.map +0 -1
  677. package/dist/esm/atomic-citation.entry.js +0 -1932
  678. package/dist/esm/atomic-citation.entry.js.map +0 -1
  679. package/dist/esm/atomic-insight-history-toggle.entry.js +0 -27
  680. package/dist/esm/atomic-insight-history-toggle.entry.js.map +0 -1
  681. package/dist/esm/atomic-insight-refine-toggle.entry.js +0 -83
  682. package/dist/esm/atomic-insight-refine-toggle.entry.js.map +0 -1
  683. package/dist/esm/atomic-insight-search-box.entry.js +0 -680
  684. package/dist/esm/atomic-insight-search-box.entry.js.map +0 -1
  685. package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js +0 -153
  686. package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js.map +0 -1
  687. package/dist/esm/atomic-ipx-button.entry.js +0 -147
  688. package/dist/esm/atomic-ipx-button.entry.js.map +0 -1
  689. package/dist/esm/atomic-recs-result.entry.js +0 -134
  690. package/dist/esm/atomic-recs-result.entry.js.map +0 -1
  691. package/dist/esm/atomic-timeframe-facet.entry.js +0 -280
  692. package/dist/esm/atomic-timeframe-facet.entry.js.map +0 -1
  693. package/dist/esm/debounce-utils-8619dece.js +0 -13
  694. package/dist/esm/debounce-utils-8619dece.js.map +0 -1
  695. package/dist/esm/device-utils-58c97096.js +0 -11
  696. package/dist/esm/device-utils-58c97096.js.map +0 -1
  697. package/dist/esm/dom-utils-f6086cd3.js.map +0 -1
  698. package/dist/esm/filter-582b47e0.js +0 -8
  699. package/dist/esm/filter-582b47e0.js.map +0 -1
  700. package/dist/esm/props-utils-bddde105.js.map +0 -1
  701. package/dist/esm/search-64cc84a9.js +0 -5
  702. package/dist/esm/search-64cc84a9.js.map +0 -1
  703. package/dist/esm/stencil-facet-values-group-9add8d35.js.map +0 -1
  704. package/dist/esm/stencil-timeframe-facet-common-db88e6b0.js +0 -208
  705. package/dist/esm/stencil-timeframe-facet-common-db88e6b0.js.map +0 -1
  706. package/dist/esm/string-utils-5f5a23a8.js +0 -13
  707. package/dist/esm/string-utils-5f5a23a8.js.map +0 -1
  708. package/dist/esm/suggestions-utils-591559a0.js +0 -22
  709. package/dist/esm/suggestions-utils-591559a0.js.map +0 -1
  710. package/dist/esm/utils-50226fe0.js.map +0 -1
  711. package/dist/types/components/insight/smart-snippets/atomic-insight-smart-snippet-feedback-modal/atomic-insight-smart-snippet-feedback-modal.d.ts +0 -24
  712. /package/dist/atomic/{p-2b2fd228.js.map → p-0e8cf2d4.js.map} +0 -0
  713. /package/dist/atomic/{p-c32ffba8.js.map → p-15d2af30.js.map} +0 -0
  714. /package/dist/atomic/{p-6b3dab6d.js.map → p-25ce51f6.js.map} +0 -0
  715. /package/dist/atomic/{p-6b524885.js.map → p-28c8ff94.js.map} +0 -0
  716. /package/dist/atomic/{p-63e4559e.entry.js.map → p-37eed01f.entry.js.map} +0 -0
  717. /package/dist/atomic/{p-f5efc3e6.js.map → p-4619d854.js.map} +0 -0
  718. /package/dist/atomic/{p-98cbe076.js.map → p-5c374d71.js.map} +0 -0
  719. /package/dist/atomic/{p-3443303e.js.map → p-62a34ad3.js.map} +0 -0
  720. /package/dist/atomic/{p-2a60a64b.js.map → p-7169f45e.js.map} +0 -0
  721. /package/dist/atomic/{p-0eb714c6.js.map → p-7312bb94.js.map} +0 -0
  722. /package/dist/atomic/{p-4fa81f5f.js.map → p-8a49c2cf.js.map} +0 -0
  723. /package/dist/atomic/{p-452813b0.js.map → p-9f3a46b1.js.map} +0 -0
  724. /package/dist/atomic/{p-43cbacac.js.map → p-af7f18d4.js.map} +0 -0
  725. /package/dist/atomic/{p-d8705a4b.js.map → p-b043d6b0.js.map} +0 -0
  726. /package/dist/atomic/{p-f4902f66.entry.js.map → p-b34fdf83.entry.js.map} +0 -0
  727. /package/dist/atomic/{p-1fca38e1.js.map → p-c940c4be.js.map} +0 -0
  728. /package/dist/atomic/{p-a14f40f2.js.map → p-cd6373b9.js.map} +0 -0
  729. /package/dist/atomic/{p-00b326bb.js.map → p-fc7cf109.js.map} +0 -0
  730. /package/dist/types/components/common/{generated-answer/atomic-citation → atomic-citation}/citation-anchoring-utils.d.ts +0 -0
@@ -1 +1 @@
1
- {"file":"stencil-facet-values-group.js","mappings":"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","names":["ArrowBottomIcon","ArrowTopIcon","escapeHtml"],"sources":["src/components/common/facets/depends-on.ts","src/components/common/facets/facet-container/stencil-facet-container.tsx","src/components/common/facets/facet-header/stencil-facet-header.tsx","src/components/common/facets/facet-placeholder/stencil-facet-placeholder.tsx","../../node_modules/.pnpm/escape-html@1.0.3/node_modules/escape-html/index.js","src/components/common/facets/facet-search/facet-search-utils.ts","src/utils/field-utils.ts","src/components/common/facets/facet-value-label-highlight/stencil-facet-value-label-highlight.tsx","src/components/common/facets/facet-value-link/stencil-facet-value-link.tsx","src/components/common/facets/facet-values-group/stencil-facet-values-group.tsx"],"sourcesContent":["type GenericCondition<AnyFacetValueRequest> = {\n parentFacetId: string;\n condition(parentValues: AnyFacetValueRequest[]): boolean;\n};\n\ninterface SimpleFacetValue {\n value: string;\n state: string;\n}\n\ninterface CategoryFacetValue extends SimpleFacetValue {\n children: SimpleFacetValue[];\n}\n\nexport function parseDependsOn<\n FacetValue extends SimpleFacetValue | CategoryFacetValue,\n>(dependsOn: Record<string, string>): GenericCondition<FacetValue>[] {\n if (Object.keys(dependsOn).length > 1) {\n throw \"Depending on multiple facets isn't supported\";\n }\n\n const entries = Object.entries(dependsOn);\n return entries.map(([parentFacetId, expectedValue]) => ({\n parentFacetId,\n condition: buildDependsOnCondition<FacetValue>(expectedValue),\n }));\n}\n\nfunction buildDependsOnCondition<\n FacetValue extends SimpleFacetValue | CategoryFacetValue,\n>(expectedValue: string): (values: FacetValue[]) => boolean {\n return (values: FacetValue[]) =>\n values.some((value) => {\n if (isCategoryFacetValue(value)) {\n return matchesCategoryFacetValue(\n value as CategoryFacetValue,\n expectedValue\n );\n }\n if (isSimpleFacetValue(value)) {\n return matchesSimpleFacetValue(\n value as SimpleFacetValue,\n expectedValue\n );\n }\n return false;\n });\n}\n\nfunction matchesCategoryFacetValue<FacetValue extends CategoryFacetValue>(\n value: FacetValue,\n expectedValue: string\n): boolean {\n const selectedValue = getSelectedCategoryFacetValueRequest(value);\n if (!selectedValue) {\n return false;\n }\n return !expectedValue || selectedValue.value === expectedValue;\n}\n\nfunction matchesSimpleFacetValue(\n value: SimpleFacetValue,\n expectedValue: string\n): boolean {\n if (value.state !== 'selected') {\n return false;\n }\n return !expectedValue || value.value === expectedValue;\n}\n\nfunction isCategoryFacetValue(request: unknown): request is CategoryFacetValue {\n const requestAsRecord = request as Record<string, unknown>;\n return (\n (requestAsRecord?.children &&\n Array.isArray(requestAsRecord.children) &&\n requestAsRecord?.state &&\n typeof requestAsRecord.state === 'string') === true\n );\n}\n\nfunction getSelectedCategoryFacetValueRequest(\n value: unknown\n): CategoryFacetValue | null {\n if (!isCategoryFacetValue(value)) {\n return null;\n }\n if (value.state === 'selected') {\n return value;\n }\n for (const child of value.children) {\n const selectedValue = getSelectedCategoryFacetValueRequest(child);\n if (selectedValue !== null) {\n return selectedValue;\n }\n }\n return null;\n}\n\nfunction isSimpleFacetValue(value: unknown): value is SimpleFacetValue {\n const asRecord = value as Record<string, unknown>;\n return (\n 'value' in asRecord &&\n typeof asRecord.value === 'string' &&\n !('children' in asRecord)\n );\n}\n","import {FunctionalComponent, h} from '@stencil/core';\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const FacetContainer: FunctionalComponent = (_, children) => (\n <div class=\"bg-background border-neutral rounded-lg border p-4\" part=\"facet\">\n {children}\n </div>\n);\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport ArrowBottomIcon from '../../../../images/arrow-bottom-rounded.svg';\nimport ArrowTopIcon from '../../../../images/arrow-top-rounded.svg';\nimport CloseIcon from '../../../../images/close.svg';\nimport {Button} from '../../stencil-button';\nimport {Heading} from '../../stencil-heading';\n\ninterface FacetHeaderProps {\n i18n: i18n;\n label: string;\n numberOfActiveValues: number;\n isCollapsed: boolean;\n headingLevel: number;\n onToggleCollapse(): void;\n onClearFilters?(): void;\n headerRef?: (element?: HTMLButtonElement) => void;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const FacetHeader: FunctionalComponent<FacetHeaderProps> = (props) => {\n const label = props.i18n.t(props.label);\n const expandFacet = props.i18n.t('expand-facet', {label});\n const collapseFacet = props.i18n.t('collapse-facet', {label});\n const clearFilters = props.i18n.t('clear-filters', {\n count: props.numberOfActiveValues,\n });\n const clearFiltersForFacet = props.i18n.t('clear-filters-for-facet', {\n count: props.numberOfActiveValues,\n label,\n });\n\n return [\n <Button\n style=\"text-transparent\"\n part=\"label-button\"\n class=\"flex w-full justify-between rounded-none px-2 py-1 text-lg font-bold\"\n ariaLabel={props.isCollapsed ? expandFacet : collapseFacet}\n onClick={() => props.onToggleCollapse()}\n ariaExpanded={(!props.isCollapsed).toString()}\n ref={props.headerRef}\n >\n <Heading level={props.headingLevel} class=\"truncate\">\n {label}\n </Heading>\n <atomic-icon\n part=\"label-button-icon\"\n class=\"ml-4 w-3 shrink-0 self-center\"\n icon={props.isCollapsed ? ArrowBottomIcon : ArrowTopIcon}\n ></atomic-icon>\n </Button>,\n props.onClearFilters && props.numberOfActiveValues > 0 && (\n <Button\n style=\"text-primary\"\n part=\"clear-button\"\n class=\"flex max-w-full items-baseline p-2 text-sm\"\n ariaLabel={clearFiltersForFacet}\n onClick={() => props.onClearFilters!()}\n >\n <atomic-icon\n part=\"clear-button-icon\"\n class=\"mr-1 h-2 w-2\"\n icon={CloseIcon}\n ></atomic-icon>\n <span>{clearFilters}</span>\n </Button>\n ),\n ];\n};\n","import {FunctionalComponent, h} from '@stencil/core';\n\ninterface FacetPlaceholderProps {\n numberOfValues: number;\n isCollapsed: boolean;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const FacetPlaceholder: FunctionalComponent<FacetPlaceholderProps> = ({\n numberOfValues,\n isCollapsed,\n}) => {\n const facetValues = [];\n for (let i = 0; i < numberOfValues; i++) {\n facetValues.push(\n <div\n class=\"bg-neutral mt-4 flex h-5\"\n style={{width: '100%', opacity: '0.5'}}\n ></div>\n );\n }\n\n return (\n <div\n part=\"placeholder\"\n class=\"bg-background border-neutral mb-4 animate-pulse rounded-lg border p-7\"\n aria-hidden=\"true\"\n >\n <div class=\"bg-neutral h-8 rounded\" style={{width: '75%'}}></div>\n {!isCollapsed && <div class=\"mt-7\">{facetValues}</div>}\n </div>\n );\n};\n","/*!\n * escape-html\n * Copyright(c) 2012-2013 TJ Holowaychuk\n * Copyright(c) 2015 Andreas Lubbe\n * Copyright(c) 2015 Tiancheng \"Timothy\" Gu\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module variables.\n * @private\n */\n\nvar matchHtmlRegExp = /[\"'&<>]/;\n\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = escapeHtml;\n\n/**\n * Escape special characters in the given string of html.\n *\n * @param {string} string The string to escape for inserting into HTML\n * @return {string}\n * @public\n */\n\nfunction escapeHtml(string) {\n var str = '' + string;\n var match = matchHtmlRegExp.exec(str);\n\n if (!match) {\n return str;\n }\n\n var escape;\n var html = '';\n var index = 0;\n var lastIndex = 0;\n\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34: // \"\n escape = '&quot;';\n break;\n case 38: // &\n escape = '&amp;';\n break;\n case 39: // '\n escape = '&#39;';\n break;\n case 60: // <\n escape = '&lt;';\n break;\n case 62: // >\n escape = '&gt;';\n break;\n default:\n continue;\n }\n\n if (lastIndex !== index) {\n html += str.substring(lastIndex, index);\n }\n\n lastIndex = index + 1;\n html += escape;\n }\n\n return lastIndex !== index\n ? html + str.substring(lastIndex, index)\n : html;\n}\n","import escapeHtml from 'escape-html';\nimport {regexEncode} from '../../../../utils/string-utils';\n\ninterface FacetSearchState {\n query: string;\n values: unknown[];\n isLoading: boolean;\n}\n\n/**\n * Meant to be used inside the `shouldUpdate` lifecycle method.\n * It prevents updating the facet between two matchless facet searches.\n * It also prevents updating the facet until the first search has loaded.\n */\nexport function shouldUpdateFacetSearchComponent(\n nextFacetSearchState: FacetSearchState,\n prevFacetSearchState: FacetSearchState\n) {\n const hasQuery = nextFacetSearchState.query !== '';\n const stillNoValues =\n !nextFacetSearchState.values.length && !prevFacetSearchState.values.length;\n const hasFinishedLoading =\n !nextFacetSearchState.isLoading && prevFacetSearchState.isLoading;\n\n if (hasQuery && stillNoValues) {\n return hasFinishedLoading;\n }\n\n return true;\n}\n\nexport function shouldDisplaySearchResults(facetSearchState: FacetSearchState) {\n const hasQuery = facetSearchState.query !== '';\n const isLoading = facetSearchState.isLoading;\n const hasValues = !!facetSearchState.values.length;\n\n if (!hasQuery) {\n return false;\n }\n\n if (hasValues) {\n return true;\n }\n\n return !isLoading;\n}\n\nexport function highlightSearchResult(resultValue: string, searchQuery = '') {\n const sanitizedResult = escapeHtml(resultValue);\n\n if (searchQuery.trim() === '') {\n return sanitizedResult;\n }\n\n const regex = new RegExp(`(${regexEncode(escapeHtml(searchQuery))})`, 'i');\n return escapeHtml(resultValue).replace(\n regex,\n '<span part=\"search-highlight\" class=\"font-bold\">$1</span>'\n );\n}\n","import type {i18n} from 'i18next';\n\nfunction getFieldCaptionNamespace(field: string) {\n return `caption-${field}`;\n}\n\nexport function getFieldCaptions(field: string, i18n: i18n) {\n return (\n i18n.getResourceBundle(i18n.language, getFieldCaptionNamespace(field)) || {}\n );\n}\n\nexport function getFieldValueCaption(\n field: string,\n facetValue: string,\n i18n: i18n\n) {\n return i18n.t(facetValue, {\n ns: getFieldCaptionNamespace(field),\n });\n}\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {highlightSearchResult} from '../facet-search/facet-search-utils';\n\ninterface FacetValueLabelHighlightProps {\n displayValue: string;\n searchQuery?: string;\n isSelected: boolean;\n isExcluded?: boolean;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const FacetValueLabelHighlight: FunctionalComponent<\n FacetValueLabelHighlightProps\n> = (props) => {\n return (\n // deepcode ignore ReactSetInnerHtml: This is not React code\n <span\n title={props.displayValue}\n part=\"value-label\"\n class={`value-label peer-hover:text-error truncate ${\n props.isSelected || !!props.isExcluded ? 'font-bold' : ''\n }`}\n innerHTML={highlightSearchResult(props.displayValue, props.searchQuery)}\n ></span>\n );\n};\n","import {FunctionalComponent, h, VNode} from '@stencil/core';\nimport {Button} from '../../stencil-button';\nimport {FacetValueProps} from '../stencil-facet-common';\n\ninterface FacetValueLinkProps extends FacetValueProps {\n subList?: VNode | VNode[];\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const FacetValueLink: FunctionalComponent<FacetValueLinkProps> = (\n props,\n children\n) => {\n const count = props.numberOfResults.toLocaleString(props.i18n.language);\n const ariaLabel = props.i18n.t('facet-value', {\n value: props.displayValue,\n count: props.numberOfResults,\n formattedCount: count,\n interpolation: {escapeValue: false},\n });\n\n let part =\n props.part ?? `value-link${props.isSelected ? ' value-link-selected' : ''}`;\n\n if (props.additionalPart) {\n part += ` ${props.additionalPart}`;\n }\n\n return (\n <li key={props.displayValue} class={props.class}>\n <Button\n style=\"text-neutral\"\n part={part}\n onClick={() => props.onClick()}\n class=\"group flex w-full items-center truncate px-2 py-2.5 text-left focus-visible:outline-none\"\n ariaPressed={props.isSelected.toString()}\n ariaLabel={ariaLabel}\n ref={props.buttonRef}\n >\n {children}\n <span part=\"value-count\" class=\"value-count\">\n {props.i18n.t('between-parentheses', {\n text: count,\n })}\n </span>\n </Button>\n {props.subList}\n </li>\n );\n};\n","import {h, FunctionalComponent} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {FieldsetGroup} from '../../stencil-fieldset-group';\n\ninterface FacetValuesGroupProps {\n i18n: i18n;\n label?: string;\n query?: string;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const FacetValuesGroup: FunctionalComponent<FacetValuesGroupProps> = (\n props,\n children\n) => {\n if (!props.label) {\n return children;\n }\n const facetDisplayLabel = props.i18n.t(props.label);\n const groupLabel =\n props.query === undefined\n ? props.i18n.t('facet-values', {label: facetDisplayLabel})\n : props.i18n.t('facet-search-results', {\n query: props.query,\n label: facetDisplayLabel,\n });\n\n return <FieldsetGroup label={groupLabel}>{children}</FieldsetGroup>;\n};\n"],"version":3}
1
+ {"file":"stencil-facet-values-group.js","mappings":"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","names":["ArrowBottomIcon","ArrowTopIcon","escapeHtml"],"sources":["src/components/common/facets/depends-on.ts","src/components/common/facets/facet-container/stencil-facet-container.tsx","src/components/common/facets/facet-header/stencil-facet-header.tsx","src/components/common/facets/facet-placeholder/stencil-facet-placeholder.tsx","../../node_modules/.pnpm/escape-html@1.0.3/node_modules/escape-html/index.js","src/utils/string-utils.ts","src/components/common/facets/facet-search/facet-search-utils.ts","src/utils/field-utils.ts","src/components/common/facets/facet-value-label-highlight/stencil-facet-value-label-highlight.tsx","src/components/common/facets/facet-value-link/stencil-facet-value-link.tsx","src/components/common/facets/facet-values-group/stencil-facet-values-group.tsx"],"sourcesContent":["type GenericCondition<AnyFacetValueRequest> = {\n parentFacetId: string;\n condition(parentValues: AnyFacetValueRequest[]): boolean;\n};\n\ninterface SimpleFacetValue {\n value: string;\n state: string;\n}\n\ninterface CategoryFacetValue extends SimpleFacetValue {\n children: SimpleFacetValue[];\n}\n\nexport function parseDependsOn<\n FacetValue extends SimpleFacetValue | CategoryFacetValue,\n>(dependsOn: Record<string, string>): GenericCondition<FacetValue>[] {\n if (Object.keys(dependsOn).length > 1) {\n throw \"Depending on multiple facets isn't supported\";\n }\n\n const entries = Object.entries(dependsOn);\n return entries.map(([parentFacetId, expectedValue]) => ({\n parentFacetId,\n condition: buildDependsOnCondition<FacetValue>(expectedValue),\n }));\n}\n\nfunction buildDependsOnCondition<\n FacetValue extends SimpleFacetValue | CategoryFacetValue,\n>(expectedValue: string): (values: FacetValue[]) => boolean {\n return (values: FacetValue[]) =>\n values.some((value) => {\n if (isCategoryFacetValue(value)) {\n return matchesCategoryFacetValue(\n value as CategoryFacetValue,\n expectedValue\n );\n }\n if (isSimpleFacetValue(value)) {\n return matchesSimpleFacetValue(\n value as SimpleFacetValue,\n expectedValue\n );\n }\n return false;\n });\n}\n\nfunction matchesCategoryFacetValue<FacetValue extends CategoryFacetValue>(\n value: FacetValue,\n expectedValue: string\n): boolean {\n const selectedValue = getSelectedCategoryFacetValueRequest(value);\n if (!selectedValue) {\n return false;\n }\n return !expectedValue || selectedValue.value === expectedValue;\n}\n\nfunction matchesSimpleFacetValue(\n value: SimpleFacetValue,\n expectedValue: string\n): boolean {\n if (value.state !== 'selected') {\n return false;\n }\n return !expectedValue || value.value === expectedValue;\n}\n\nfunction isCategoryFacetValue(request: unknown): request is CategoryFacetValue {\n const requestAsRecord = request as Record<string, unknown>;\n return (\n (requestAsRecord?.children &&\n Array.isArray(requestAsRecord.children) &&\n requestAsRecord?.state &&\n typeof requestAsRecord.state === 'string') === true\n );\n}\n\nfunction getSelectedCategoryFacetValueRequest(\n value: unknown\n): CategoryFacetValue | null {\n if (!isCategoryFacetValue(value)) {\n return null;\n }\n if (value.state === 'selected') {\n return value;\n }\n for (const child of value.children) {\n const selectedValue = getSelectedCategoryFacetValueRequest(child);\n if (selectedValue !== null) {\n return selectedValue;\n }\n }\n return null;\n}\n\nfunction isSimpleFacetValue(value: unknown): value is SimpleFacetValue {\n const asRecord = value as Record<string, unknown>;\n return (\n 'value' in asRecord &&\n typeof asRecord.value === 'string' &&\n !('children' in asRecord)\n );\n}\n","import {FunctionalComponent, h} from '@stencil/core';\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const FacetContainer: FunctionalComponent = (_, children) => (\n <div class=\"bg-background border-neutral rounded-lg border p-4\" part=\"facet\">\n {children}\n </div>\n);\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport ArrowBottomIcon from '../../../../images/arrow-bottom-rounded.svg';\nimport ArrowTopIcon from '../../../../images/arrow-top-rounded.svg';\nimport CloseIcon from '../../../../images/close.svg';\nimport {Button} from '../../stencil-button';\nimport {Heading} from '../../stencil-heading';\n\ninterface FacetHeaderProps {\n i18n: i18n;\n label: string;\n numberOfActiveValues: number;\n isCollapsed: boolean;\n headingLevel: number;\n onToggleCollapse(): void;\n onClearFilters?(): void;\n headerRef?: (element?: HTMLButtonElement) => void;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const FacetHeader: FunctionalComponent<FacetHeaderProps> = (props) => {\n const label = props.i18n.t(props.label);\n const expandFacet = props.i18n.t('expand-facet', {label});\n const collapseFacet = props.i18n.t('collapse-facet', {label});\n const clearFilters = props.i18n.t('clear-filters', {\n count: props.numberOfActiveValues,\n });\n const clearFiltersForFacet = props.i18n.t('clear-filters-for-facet', {\n count: props.numberOfActiveValues,\n label,\n });\n\n return [\n <Button\n style=\"text-transparent\"\n part=\"label-button\"\n class=\"flex w-full justify-between rounded-none px-2 py-1 text-lg font-bold\"\n ariaLabel={props.isCollapsed ? expandFacet : collapseFacet}\n onClick={() => props.onToggleCollapse()}\n ariaExpanded={(!props.isCollapsed).toString()}\n ref={props.headerRef}\n >\n <Heading level={props.headingLevel} class=\"truncate\">\n {label}\n </Heading>\n <atomic-icon\n part=\"label-button-icon\"\n class=\"ml-4 w-3 shrink-0 self-center\"\n icon={props.isCollapsed ? ArrowBottomIcon : ArrowTopIcon}\n ></atomic-icon>\n </Button>,\n props.onClearFilters && props.numberOfActiveValues > 0 && (\n <Button\n style=\"text-primary\"\n part=\"clear-button\"\n class=\"flex max-w-full items-baseline p-2 text-sm\"\n ariaLabel={clearFiltersForFacet}\n onClick={() => props.onClearFilters!()}\n >\n <atomic-icon\n part=\"clear-button-icon\"\n class=\"mr-1 h-2 w-2\"\n icon={CloseIcon}\n ></atomic-icon>\n <span>{clearFilters}</span>\n </Button>\n ),\n ];\n};\n","import {FunctionalComponent, h} from '@stencil/core';\n\ninterface FacetPlaceholderProps {\n numberOfValues: number;\n isCollapsed: boolean;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const FacetPlaceholder: FunctionalComponent<FacetPlaceholderProps> = ({\n numberOfValues,\n isCollapsed,\n}) => {\n const facetValues = [];\n for (let i = 0; i < numberOfValues; i++) {\n facetValues.push(\n <div\n class=\"bg-neutral mt-4 flex h-5\"\n style={{width: '100%', opacity: '0.5'}}\n ></div>\n );\n }\n\n return (\n <div\n part=\"placeholder\"\n class=\"bg-background border-neutral mb-4 animate-pulse rounded-lg border p-7\"\n aria-hidden=\"true\"\n >\n <div class=\"bg-neutral h-8 rounded\" style={{width: '75%'}}></div>\n {!isCollapsed && <div class=\"mt-7\">{facetValues}</div>}\n </div>\n );\n};\n","/*!\n * escape-html\n * Copyright(c) 2012-2013 TJ Holowaychuk\n * Copyright(c) 2015 Andreas Lubbe\n * Copyright(c) 2015 Tiancheng \"Timothy\" Gu\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module variables.\n * @private\n */\n\nvar matchHtmlRegExp = /[\"'&<>]/;\n\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = escapeHtml;\n\n/**\n * Escape special characters in the given string of html.\n *\n * @param {string} string The string to escape for inserting into HTML\n * @return {string}\n * @public\n */\n\nfunction escapeHtml(string) {\n var str = '' + string;\n var match = matchHtmlRegExp.exec(str);\n\n if (!match) {\n return str;\n }\n\n var escape;\n var html = '';\n var index = 0;\n var lastIndex = 0;\n\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34: // \"\n escape = '&quot;';\n break;\n case 38: // &\n escape = '&amp;';\n break;\n case 39: // '\n escape = '&#39;';\n break;\n case 60: // <\n escape = '&lt;';\n break;\n case 62: // >\n escape = '&gt;';\n break;\n default:\n continue;\n }\n\n if (lastIndex !== index) {\n html += str.substring(lastIndex, index);\n }\n\n lastIndex = index + 1;\n html += escape;\n }\n\n return lastIndex !== index\n ? html + str.substring(lastIndex, index)\n : html;\n}\n","export function regexEncode(value: string): string {\n return value.replace(/[-[\\]/{}()*+?.\\\\^$|]/g, '\\\\$&');\n}\n\nexport function encodeForDomAttribute(str: string) {\n return str\n .split('')\n .map((ch) => (ch.match(/(\\d|\\w)+/g) ? ch : ch.charCodeAt(0)))\n .join('');\n}\n","import escapeHtml from 'escape-html';\nimport {regexEncode} from '../../../../utils/string-utils';\n\ninterface FacetSearchState {\n query: string;\n values: unknown[];\n isLoading: boolean;\n}\n\n/**\n * Meant to be used inside the `shouldUpdate` lifecycle method.\n * It prevents updating the facet between two matchless facet searches.\n * It also prevents updating the facet until the first search has loaded.\n */\nexport function shouldUpdateFacetSearchComponent(\n nextFacetSearchState: FacetSearchState,\n prevFacetSearchState: FacetSearchState\n) {\n const hasQuery = nextFacetSearchState.query !== '';\n const stillNoValues =\n !nextFacetSearchState.values.length && !prevFacetSearchState.values.length;\n const hasFinishedLoading =\n !nextFacetSearchState.isLoading && prevFacetSearchState.isLoading;\n\n if (hasQuery && stillNoValues) {\n return hasFinishedLoading;\n }\n\n return true;\n}\n\nexport function shouldDisplaySearchResults(facetSearchState: FacetSearchState) {\n const hasQuery = facetSearchState.query !== '';\n const isLoading = facetSearchState.isLoading;\n const hasValues = !!facetSearchState.values.length;\n\n if (!hasQuery) {\n return false;\n }\n\n if (hasValues) {\n return true;\n }\n\n return !isLoading;\n}\n\nexport function highlightSearchResult(resultValue: string, searchQuery = '') {\n const sanitizedResult = escapeHtml(resultValue);\n\n if (searchQuery.trim() === '') {\n return sanitizedResult;\n }\n\n const regex = new RegExp(`(${regexEncode(escapeHtml(searchQuery))})`, 'i');\n return escapeHtml(resultValue).replace(\n regex,\n '<span part=\"search-highlight\" class=\"font-bold\">$1</span>'\n );\n}\n","import type {i18n} from 'i18next';\n\nfunction getFieldCaptionNamespace(field: string) {\n return `caption-${field}`;\n}\n\nexport function getFieldCaptions(field: string, i18n: i18n) {\n return (\n i18n.getResourceBundle(i18n.language, getFieldCaptionNamespace(field)) || {}\n );\n}\n\nexport function getFieldValueCaption(\n field: string,\n facetValue: string,\n i18n: i18n\n) {\n return i18n.t(facetValue, {\n ns: getFieldCaptionNamespace(field),\n });\n}\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {highlightSearchResult} from '../facet-search/facet-search-utils';\n\ninterface FacetValueLabelHighlightProps {\n displayValue: string;\n searchQuery?: string;\n isSelected: boolean;\n isExcluded?: boolean;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const FacetValueLabelHighlight: FunctionalComponent<\n FacetValueLabelHighlightProps\n> = (props) => {\n return (\n // deepcode ignore ReactSetInnerHtml: This is not React code\n <span\n title={props.displayValue}\n part=\"value-label\"\n class={`value-label peer-hover:text-error truncate ${\n props.isSelected || !!props.isExcluded ? 'font-bold' : ''\n }`}\n innerHTML={highlightSearchResult(props.displayValue, props.searchQuery)}\n ></span>\n );\n};\n","import {FunctionalComponent, h, VNode} from '@stencil/core';\nimport {Button} from '../../stencil-button';\nimport {FacetValueProps} from '../stencil-facet-common';\n\ninterface FacetValueLinkProps extends FacetValueProps {\n subList?: VNode | VNode[];\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const FacetValueLink: FunctionalComponent<FacetValueLinkProps> = (\n props,\n children\n) => {\n const count = props.numberOfResults.toLocaleString(props.i18n.language);\n const ariaLabel = props.i18n.t('facet-value', {\n value: props.displayValue,\n count: props.numberOfResults,\n formattedCount: count,\n interpolation: {escapeValue: false},\n });\n\n let part =\n props.part ?? `value-link${props.isSelected ? ' value-link-selected' : ''}`;\n\n if (props.additionalPart) {\n part += ` ${props.additionalPart}`;\n }\n\n return (\n <li key={props.displayValue} class={props.class}>\n <Button\n style=\"text-neutral\"\n part={part}\n onClick={() => props.onClick()}\n class=\"group flex w-full items-center truncate px-2 py-2.5 text-left focus-visible:outline-none\"\n ariaPressed={props.isSelected.toString()}\n ariaLabel={ariaLabel}\n ref={props.buttonRef}\n >\n {children}\n <span part=\"value-count\" class=\"value-count\">\n {props.i18n.t('between-parentheses', {\n text: count,\n })}\n </span>\n </Button>\n {props.subList}\n </li>\n );\n};\n","import {h, FunctionalComponent} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {FieldsetGroup} from '../../stencil-fieldset-group';\n\ninterface FacetValuesGroupProps {\n i18n: i18n;\n label?: string;\n query?: string;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const FacetValuesGroup: FunctionalComponent<FacetValuesGroupProps> = (\n props,\n children\n) => {\n if (!props.label) {\n return children;\n }\n const facetDisplayLabel = props.i18n.t(props.label);\n const groupLabel =\n props.query === undefined\n ? props.i18n.t('facet-values', {label: facetDisplayLabel})\n : props.i18n.t('facet-search-results', {\n query: props.query,\n label: facetDisplayLabel,\n });\n\n return <FieldsetGroup label={groupLabel}>{children}</FieldsetGroup>;\n};\n"],"version":3}
@@ -11,6 +11,7 @@ export const ATOMIC_CUSTOM_ELEMENT_TAGS = new Set([
11
11
  'atomic-automatic-facet-generator',
12
12
  'atomic-breadbox',
13
13
  'atomic-category-facet',
14
+ 'atomic-citation',
14
15
  'atomic-color-facet',
15
16
  'atomic-commerce-breadbox',
16
17
  'atomic-commerce-category-facet',
@@ -59,16 +60,21 @@ export const ATOMIC_CUSTOM_ELEMENT_TAGS = new Set([
59
60
  'atomic-insight-edit-toggle',
60
61
  'atomic-insight-full-search-button',
61
62
  'atomic-insight-generate-answer-button',
63
+ 'atomic-insight-history-toggle',
62
64
  'atomic-insight-interface',
63
65
  'atomic-insight-layout',
64
66
  'atomic-insight-no-results',
65
67
  'atomic-insight-pager',
66
68
  'atomic-insight-query-error',
67
69
  'atomic-insight-query-summary',
70
+ 'atomic-insight-refine-toggle',
68
71
  'atomic-insight-result-template',
72
+ 'atomic-insight-search-box',
73
+ 'atomic-insight-smart-snippet-feedback-modal',
69
74
  'atomic-insight-tab',
70
75
  'atomic-insight-tabs',
71
76
  'atomic-insight-user-actions-toggle',
77
+ 'atomic-ipx-button',
72
78
  'atomic-ipx-tab',
73
79
  'atomic-ipx-tabs',
74
80
  'atomic-layout-section',
@@ -109,6 +115,7 @@ export const ATOMIC_CUSTOM_ELEMENT_TAGS = new Set([
109
115
  'atomic-rating-range-facet',
110
116
  'atomic-recs-error',
111
117
  'atomic-recs-interface',
118
+ 'atomic-recs-result',
112
119
  'atomic-recs-result-template',
113
120
  'atomic-refine-modal',
114
121
  'atomic-refine-toggle',
@@ -169,6 +176,7 @@ export const ATOMIC_CUSTOM_ELEMENT_TAGS = new Set([
169
176
  'atomic-table-element',
170
177
  'atomic-text',
171
178
  'atomic-timeframe',
179
+ 'atomic-timeframe-facet',
172
180
  ]);
173
181
  /**
174
182
  * Waits for all Atomic custom element children to be defined.
@@ -2,7 +2,7 @@ const css = `/*! tailwindcss v4.1.13 | MIT License | https://tailwindcss.com */@
2
2
  --atomic-more-results-progress-bar-color-from,var(--atomic-primary-dark)
3
3
  );--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-more-results-progress-bar-color-to{--tw-gradient-to:var(
4
4
  --atomic-more-results-progress-bar-color-to,var(--atomic-primary-light)
5
- );--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.fill-current{fill:currentcolor}.stroke-\\[1\\.25\\]{stroke-width:1.25}.object-contain{object-fit:contain}.p-0{padding:calc(var(--spacing, .25rem)*0)}.p-1{padding:calc(var(--spacing, .25rem)*1)}.p-2{padding:calc(var(--spacing, .25rem)*2)}.p-2\\.5{padding:calc(var(--spacing, .25rem)*2.5)}.p-3{padding:calc(var(--spacing, .25rem)*3)}.p-3\\.5{padding:calc(var(--spacing, .25rem)*3.5)}.p-4{padding:calc(var(--spacing, .25rem)*4)}.p-6{padding:calc(var(--spacing, .25rem)*6)}.p-7{padding:calc(var(--spacing, .25rem)*7)}.p-8{padding:calc(var(--spacing, .25rem)*8)}.px-1{padding-inline:calc(var(--spacing, .25rem)*1)}.px-2{padding-inline:calc(var(--spacing, .25rem)*2)}.px-2\\.5{padding-inline:calc(var(--spacing, .25rem)*2.5)}.px-3{padding-inline:calc(var(--spacing, .25rem)*3)}.px-4{padding-inline:calc(var(--spacing, .25rem)*4)}.px-6{padding-inline:calc(var(--spacing, .25rem)*6)}.px-9{padding-inline:calc(var(--spacing, .25rem)*9)}.py-0\\.5{padding-block:calc(var(--spacing, .25rem)*.5)}.py-1{padding-block:calc(var(--spacing, .25rem)*1)}.py-1\\.5{padding-block:calc(var(--spacing, .25rem)*1.5)}.py-2{padding-block:calc(var(--spacing, .25rem)*2)}.py-2\\.5{padding-block:calc(var(--spacing, .25rem)*2.5)}.py-3{padding-block:calc(var(--spacing, .25rem)*3)}.py-3\\.5{padding-block:calc(var(--spacing, .25rem)*3.5)}.py-4{padding-block:calc(var(--spacing, .25rem)*4)}.py-4\\.5{padding-block:calc(var(--spacing, .25rem)*4.5)}.py-5{padding-block:calc(var(--spacing, .25rem)*5)}.py-6{padding-block:calc(var(--spacing, .25rem)*6)}.pt-0\\.5{padding-top:calc(var(--spacing, .25rem)*.5)}.pt-8{padding-top:calc(var(--spacing, .25rem)*8)}.pr-2{padding-right:calc(var(--spacing, .25rem)*2)}.pr-4{padding-right:calc(var(--spacing, .25rem)*4)}.pr-6{padding-right:calc(var(--spacing, .25rem)*6)}.pr-24{padding-right:calc(var(--spacing, .25rem)*24)}.pb-1{padding-bottom:calc(var(--spacing, .25rem)*1)}.pb-3{padding-bottom:calc(var(--spacing, .25rem)*3)}.pb-4{padding-bottom:calc(var(--spacing, .25rem)*4)}.pb-5{padding-bottom:calc(var(--spacing, .25rem)*5)}.pb-6{padding-bottom:calc(var(--spacing, .25rem)*6)}.pl-0{padding-left:calc(var(--spacing, .25rem)*0)}.pl-1{padding-left:calc(var(--spacing, .25rem)*1)}.pl-3{padding-left:calc(var(--spacing, .25rem)*3)}.pl-7{padding-left:calc(var(--spacing, .25rem)*7)}.pl-9{padding-left:calc(var(--spacing, .25rem)*9)}.pl-10{padding-left:calc(var(--spacing, .25rem)*10)}.text-center{text-align:center}.text-left{text-align:left}.align-baseline{vertical-align:baseline}.align-bottom{vertical-align:bottom}.align-middle{vertical-align:middle}.font-sans{font-family:var(--atomic-font-family)}.set-font-size-sm{--font-size:var(--atomic-text-sm);font-size:var(--font-size);--line-height:calc(var(--font-size)*var(--atomic-line-height-ratio));line-height:var(--line-height)}.text-2xl{font-size:var(--atomic-text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height,1.33333))}.text-base{font-size:var(--atomic-text-base);line-height:var(--tw-leading,var(--text-base--line-height,1.5))}.text-lg{font-size:var(--atomic-text-lg);line-height:var(--tw-leading,var(--text-lg--line-height,1.55556))}.text-sm{font-size:var(--atomic-text-sm);line-height:var(--tw-leading,var(--text-sm--line-height,1.42857))}.text-xl{font-size:var(--atomic-text-xl);line-height:var(--tw-leading,var(--text-xl--line-height,1.4))}.text-xs{line-height:var(--tw-leading,var(--text-xs--line-height,1.33333))}.text-xs,.text-xs\\/\\[1rem\\]{font-size:var(--text-xs,.75rem)}.text-xs\\/\\[1rem\\]{line-height:1rem}.leading-4{--tw-leading:calc(var(--spacing, 0.25rem)*4);line-height:calc(var(--spacing, .25rem)*4)}.leading-5{--tw-leading:calc(var(--spacing, 0.25rem)*5);line-height:calc(var(--spacing, .25rem)*5)}.leading-6{--tw-leading:calc(var(--spacing, 0.25rem)*6);line-height:calc(var(--spacing, .25rem)*6)}.leading-8{--tw-leading:calc(var(--spacing, 0.25rem)*8);line-height:calc(var(--spacing, .25rem)*8)}.leading-10{--tw-leading:calc(var(--spacing, 0.25rem)*10);line-height:calc(var(--spacing, .25rem)*10)}.leading-\\[1\\.5\\]{--tw-leading:1.5;line-height:1.5}.leading-\\[calc\\(1\\/\\.75\\)\\]{--tw-leading:1.33333;line-height:1.33333}.leading-\\[var\\(--line-height\\)\\]{--tw-leading:var(--line-height);line-height:var(--line-height)}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--atomic-font-bold);font-weight:var(--atomic-font-bold)}.font-light{--tw-font-weight:var(--font-weight-light,300);font-weight:var(--font-weight-light,300)}.font-medium{--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500)}.font-normal{--tw-font-weight:var(--atomic-font-normal);font-weight:var(--atomic-font-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.break-keep{word-break:keep-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.link-style{color:var(--atomic-on-background);&:focus-visible,&:hover{color:var(--atomic-primary);text-decoration:underline}&:focus{outline:none}&:visited{color:var(--atomic-visited)}}.text-\\[\\#54698D\\]{color:#54698d}.text-\\[inherit\\]{color:inherit}.text-black{color:var(--color-black,#000)}.text-error{color:var(--atomic-error)}.text-gray-500{color:var(--color-gray-500,oklch(55.1% .027 264.364))}.text-gray-600{color:var(--color-gray-600,oklch(44.6% .03 256.802))}.text-gray-700{color:var(--color-gray-700,oklch(37.3% .034 259.733))}.text-gray-900{color:var(--color-gray-900,oklch(21% .034 264.665))}.text-green-600{color:var(--color-green-600,oklch(62.7% .194 149.214))}.text-inline-code{color:var(--atomic-inline-code)}.text-neutral{color:var(--atomic-neutral)}.text-neutral-dark{color:var(--atomic-neutral-dark)}.text-on-background{color:var(--atomic-on-background)}.text-on-primary{color:var(--atomic-on-primary)}.text-primary{color:var(--atomic-primary)}.text-primary-light{color:var(--atomic-primary-light)}.text-rating-icon-active{color:var(--atomic-rating-icon-active-color,#f6ce3c)}.text-rating-icon-inactive{color:var(
5
+ );--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.fill-current{fill:currentcolor}.stroke-\\[1\\.25\\]{stroke-width:1.25}.object-contain{object-fit:contain}.p-0{padding:calc(var(--spacing, .25rem)*0)}.p-1{padding:calc(var(--spacing, .25rem)*1)}.p-2{padding:calc(var(--spacing, .25rem)*2)}.p-2\\.5{padding:calc(var(--spacing, .25rem)*2.5)}.p-3{padding:calc(var(--spacing, .25rem)*3)}.p-3\\.5{padding:calc(var(--spacing, .25rem)*3.5)}.p-4{padding:calc(var(--spacing, .25rem)*4)}.p-6{padding:calc(var(--spacing, .25rem)*6)}.p-7{padding:calc(var(--spacing, .25rem)*7)}.p-8{padding:calc(var(--spacing, .25rem)*8)}.px-1{padding-inline:calc(var(--spacing, .25rem)*1)}.px-2{padding-inline:calc(var(--spacing, .25rem)*2)}.px-2\\.5{padding-inline:calc(var(--spacing, .25rem)*2.5)}.px-3{padding-inline:calc(var(--spacing, .25rem)*3)}.px-4{padding-inline:calc(var(--spacing, .25rem)*4)}.px-6{padding-inline:calc(var(--spacing, .25rem)*6)}.px-9{padding-inline:calc(var(--spacing, .25rem)*9)}.py-0\\.5{padding-block:calc(var(--spacing, .25rem)*.5)}.py-1{padding-block:calc(var(--spacing, .25rem)*1)}.py-1\\.5{padding-block:calc(var(--spacing, .25rem)*1.5)}.py-2{padding-block:calc(var(--spacing, .25rem)*2)}.py-2\\.5{padding-block:calc(var(--spacing, .25rem)*2.5)}.py-3{padding-block:calc(var(--spacing, .25rem)*3)}.py-3\\.5{padding-block:calc(var(--spacing, .25rem)*3.5)}.py-4{padding-block:calc(var(--spacing, .25rem)*4)}.py-4\\.5{padding-block:calc(var(--spacing, .25rem)*4.5)}.py-5{padding-block:calc(var(--spacing, .25rem)*5)}.py-6{padding-block:calc(var(--spacing, .25rem)*6)}.pt-0\\.5{padding-top:calc(var(--spacing, .25rem)*.5)}.pt-8{padding-top:calc(var(--spacing, .25rem)*8)}.pr-2{padding-right:calc(var(--spacing, .25rem)*2)}.pr-4{padding-right:calc(var(--spacing, .25rem)*4)}.pr-6{padding-right:calc(var(--spacing, .25rem)*6)}.pr-24{padding-right:calc(var(--spacing, .25rem)*24)}.pb-1{padding-bottom:calc(var(--spacing, .25rem)*1)}.pb-3{padding-bottom:calc(var(--spacing, .25rem)*3)}.pb-4{padding-bottom:calc(var(--spacing, .25rem)*4)}.pb-5{padding-bottom:calc(var(--spacing, .25rem)*5)}.pb-6{padding-bottom:calc(var(--spacing, .25rem)*6)}.pl-0{padding-left:calc(var(--spacing, .25rem)*0)}.pl-1{padding-left:calc(var(--spacing, .25rem)*1)}.pl-3{padding-left:calc(var(--spacing, .25rem)*3)}.pl-7{padding-left:calc(var(--spacing, .25rem)*7)}.pl-9{padding-left:calc(var(--spacing, .25rem)*9)}.pl-10{padding-left:calc(var(--spacing, .25rem)*10)}.text-center{text-align:center}.text-left{text-align:left}.align-baseline{vertical-align:baseline}.align-bottom{vertical-align:bottom}.align-middle{vertical-align:middle}.font-sans{font-family:var(--atomic-font-family)}.set-font-size-sm{--font-size:var(--atomic-text-sm);font-size:var(--font-size);--line-height:calc(var(--font-size)*var(--atomic-line-height-ratio));line-height:var(--line-height)}.text-2xl{font-size:var(--atomic-text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height,1.33333))}.text-base{font-size:var(--atomic-text-base);line-height:var(--tw-leading,var(--text-base--line-height,1.5))}.text-lg{font-size:var(--atomic-text-lg);line-height:var(--tw-leading,var(--text-lg--line-height,1.55556))}.text-sm{font-size:var(--atomic-text-sm);line-height:var(--tw-leading,var(--text-sm--line-height,1.42857))}.text-xl{font-size:var(--atomic-text-xl);line-height:var(--tw-leading,var(--text-xl--line-height,1.4))}.text-xs{line-height:var(--tw-leading,var(--text-xs--line-height,1.33333))}.text-xs,.text-xs\\/\\[1rem\\]{font-size:var(--text-xs,.75rem)}.text-xs\\/\\[1rem\\]{line-height:1rem}.leading-4{--tw-leading:calc(var(--spacing, 0.25rem)*4);line-height:calc(var(--spacing, .25rem)*4)}.leading-5{--tw-leading:calc(var(--spacing, 0.25rem)*5);line-height:calc(var(--spacing, .25rem)*5)}.leading-6{--tw-leading:calc(var(--spacing, 0.25rem)*6);line-height:calc(var(--spacing, .25rem)*6)}.leading-8{--tw-leading:calc(var(--spacing, 0.25rem)*8);line-height:calc(var(--spacing, .25rem)*8)}.leading-10{--tw-leading:calc(var(--spacing, 0.25rem)*10);line-height:calc(var(--spacing, .25rem)*10)}.leading-\\[1\\.5\\]{--tw-leading:1.5;line-height:1.5}.leading-\\[calc\\(1\\/\\.75\\)\\]{--tw-leading:1.33333;line-height:1.33333}.leading-\\[var\\(--line-height\\)\\]{--tw-leading:var(--line-height);line-height:var(--line-height)}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--atomic-font-bold);font-weight:var(--atomic-font-bold)}.font-light{--tw-font-weight:var(--font-weight-light,300);font-weight:var(--font-weight-light,300)}.font-medium{--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500)}.font-normal{--tw-font-weight:var(--atomic-font-normal);font-weight:var(--atomic-font-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.break-keep{word-break:keep-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\\[\\#54698D\\]{color:#54698d}.text-\\[inherit\\]{color:inherit}.text-black{color:var(--color-black,#000)}.text-error{color:var(--atomic-error)}.text-gray-500{color:var(--color-gray-500,oklch(55.1% .027 264.364))}.text-gray-600{color:var(--color-gray-600,oklch(44.6% .03 256.802))}.text-gray-700{color:var(--color-gray-700,oklch(37.3% .034 259.733))}.text-gray-900{color:var(--color-gray-900,oklch(21% .034 264.665))}.text-green-600{color:var(--color-green-600,oklch(62.7% .194 149.214))}.text-inline-code{color:var(--atomic-inline-code)}.text-neutral{color:var(--atomic-neutral)}.text-neutral-dark{color:var(--atomic-neutral-dark)}.text-on-background{color:var(--atomic-on-background)}.text-on-primary{color:var(--atomic-on-primary)}.text-primary{color:var(--atomic-primary)}.text-primary-light{color:var(--atomic-primary-light)}.text-rating-icon-active{color:var(--atomic-rating-icon-active-color,#f6ce3c)}.text-rating-icon-inactive{color:var(
6
6
  --atomic-rating-icon-inactive-color,var(--atomic-neutral)
7
7
  )}.text-red-600{color:var(--color-red-600,oklch(57.7% .245 27.325))}.text-success{color:var(--atomic-success)}.text-transparent{color:transparent}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.placeholder-neutral-dark{&::placeholder{color:var(--atomic-neutral-dark)}}.opacity-0{opacity:0}.opacity-50{opacity:50%}.opacity-60{opacity:60%}.opacity-80{opacity:80%}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,rgba(0,0,0,.1)),0 1px 2px -1px var(--tw-shadow-color,rgba(0,0,0,.1))}.shadow,.shadow-inner-primary{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-inner-primary{--tw-shadow:inset 0 0 0 1px var(--tw-shadow-color,var(--atomic-primary))}.shadow-lg{--tw-shadow:0px 2px 8px var(--tw-shadow-color,hsla(180,6%,90%,.75))}.shadow-lg,.shadow-t-lg{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-t-lg{--tw-shadow:0px -2px 8px var(--tw-shadow-color,hsla(180,6%,90%,.75))}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.ring,.ring-3{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-3{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.ring-primary{--tw-ring-color:var(--atomic-primary)}.ring-ring-primary{--tw-ring-color:var(--atomic-ring-primary)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.outline-error{outline-color:var(--atomic-error)}.outline-neutral{outline-color:var(--atomic-neutral)}.outline-primary{outline-color:var(--atomic-primary)}.blur{--tw-blur:blur(8px)}.blur,.grayscale{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%)}.invert{--tw-invert:invert(100%)}.filter,.invert{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4,0,.2,1)))}.transition-\\[visibility\\]{transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));transition-property:visibility;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4,0,.2,1)))}.transition-all{transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4,0,.2,1)))}.transition-colors{transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4,0,.2,1)))}.transition-opacity{transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4,0,.2,1)))}.duration-200{--tw-duration:200ms;transition-duration:.2s}.duration-300{--tw-duration:300ms;transition-duration:.3s}.duration-500{--tw-duration:500ms;transition-duration:.5s}.ease-in-out{--tw-ease:var(--ease-in-out,cubic-bezier(0.4,0,0.2,1));transition-timing-function:var(--ease-in-out,cubic-bezier(.4,0,.2,1))}.\\[grid-area\\:modal\\]{grid-area:modal}.\\[scrollbar-gutter\\:stable_both-edges\\]{scrollbar-gutter:stable both-edges}.group-hover\\:visible{&:is(:where(.group):hover *){@media (hover:hover){visibility:visible}}}.group-hover\\:text-error{&:is(:where(.group):hover *){@media (hover:hover){color:var(--atomic-error)}}}.group-hover\\:text-primary{&:is(:where(.group):hover *){@media (hover:hover){color:var(--atomic-primary)}}}.group-hover\\:text-primary-light{&:is(:where(.group):hover *){@media (hover:hover){color:var(--atomic-primary-light)}}}.group-focus\\:text-primary{&:is(:where(.group):focus *){color:var(--atomic-primary)}}.group-focus\\:text-primary-light{&:is(:where(.group):focus *){color:var(--atomic-primary-light)}}.group-focus-visible\\:text-error{&:is(:where(.group):focus-visible *){color:var(--atomic-error)}}.group-focus-visible\\:text-primary{&:is(:where(.group):focus-visible *){color:var(--atomic-primary)}}.peer-focus-within\\:border-primary-light{&:is(:where(.peer):focus-within~*){border-color:var(--atomic-primary-light)}}.peer-focus-within\\:text-primary-light{&:is(:where(.peer):focus-within~*){color:var(--atomic-primary-light)}}.peer-hover\\:border-primary-light{&:is(:where(.peer):hover~*){@media (hover:hover){border-color:var(--atomic-primary-light)}}}.peer-hover\\:text-error{&:is(:where(.peer):hover~*){@media (hover:hover){color:var(--atomic-error)}}}.peer-hover\\:text-primary-light{&:is(:where(.peer):hover~*){@media (hover:hover){color:var(--atomic-primary-light)}}}.before\\:inline{&:before{content:var(--tw-content);display:inline}}.before\\:content-\\[\\'\\,\\\\00a0\\'\\]{&:before{--tw-content:",\\00a0";content:var(--tw-content)}}.after\\:absolute{&:after{content:var(--tw-content);position:absolute}}.after\\:-bottom-0\\.5{&:after{bottom:calc(var(--spacing, .25rem)*-.5);content:var(--tw-content)}}.after\\:block{&:after{content:var(--tw-content);display:block}}.after\\:h-1{&:after{content:var(--tw-content);height:calc(var(--spacing, .25rem)*1)}}.after\\:w-full{&:after{content:var(--tw-content);width:100%}}.after\\:rounded{&:after{border-radius:var(--atomic-border-radius);content:var(--tw-content)}}.after\\:bg-primary{&:after{background-color:var(--atomic-primary);content:var(--tw-content)}}.focus-within\\:border-disabled{&:focus-within{border-color:var(--atomic-disabled)}}.focus-within\\:border-primary{&:focus-within{border-color:var(--atomic-primary)}}.focus-within\\:ring-3{&:focus-within{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus-within\\:ring-neutral{&:focus-within{--tw-ring-color:var(--atomic-neutral)}}.focus-within\\:ring-ring-primary{&:focus-within{--tw-ring-color:var(--atomic-ring-primary)}}.hover\\:border{&:hover{@media (hover:hover){border-bottom-width:1px;border-left-width:1px;border-right-width:1px;border-style:var(--tw-border-style);border-top-width:1px}}}.hover\\:border-error{&:hover{@media (hover:hover){border-color:var(--atomic-error)}}}.hover\\:border-primary-light{&:hover{@media (hover:hover){border-color:var(--atomic-primary-light)}}}.hover\\:bg-error{&:hover{@media (hover:hover){background-color:var(--atomic-error)}}}.hover\\:bg-neutral-light{&:hover{@media (hover:hover){background-color:var(--atomic-neutral-light)}}}.hover\\:bg-primary-light{&:hover{@media (hover:hover){background-color:var(--atomic-primary-light)}}}.hover\\:bg-transparent{&:hover{@media (hover:hover){background-color:transparent}}}.hover\\:fill-white{&:hover{@media (hover:hover){fill:var(--color-white,#fff)}}}.hover\\:text-error{&:hover{@media (hover:hover){color:var(--atomic-error)}}}.hover\\:text-primary{&:hover{@media (hover:hover){color:var(--atomic-primary)}}}.hover\\:text-primary-light{&:hover{@media (hover:hover){color:var(--atomic-primary-light)}}}.hover\\:text-success{&:hover{@media (hover:hover){color:var(--atomic-success)}}}.hover\\:underline{&:hover{@media (hover:hover){text-decoration-line:underline}}}.hover\\:opacity-100{&:hover{@media (hover:hover){opacity:100%}}}.hover\\:shadow-sm{&:hover{@media (hover:hover){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,rgba(0,0,0,.1)),0 1px 2px -1px var(--tw-shadow-color,rgba(0,0,0,.1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}}.focus\\:opacity-100{&:focus{opacity:100%}}.focus\\:outline-hidden{&:focus{--tw-outline-style:none;outline-style:none;@media (forced-colors:active){outline:2px solid transparent;outline-offset:2px}}}.focus-visible\\:border{&:focus-visible{border-style:var(--tw-border-style);border-width:1px}}.focus-visible\\:border-error{&:focus-visible{border-color:var(--atomic-error)}}.focus-visible\\:border-primary{&:focus-visible{border-color:var(--atomic-primary)}}.focus-visible\\:border-primary-light{&:focus-visible{border-color:var(--atomic-primary-light)}}.focus-visible\\:bg-error{&:focus-visible{background-color:var(--atomic-error)}}.focus-visible\\:bg-neutral-light{&:focus-visible{background-color:var(--atomic-neutral-light)}}.focus-visible\\:bg-primary-light{&:focus-visible{background-color:var(--atomic-primary-light)}}.focus-visible\\:text-primary-light{&:focus-visible{color:var(--atomic-primary-light)}}.focus-visible\\:underline{&:focus-visible{text-decoration-line:underline}}.focus-visible\\:ring-2{&:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus-visible\\:outline-none{&:focus-visible{--tw-outline-style:none;outline-style:none}}.desktop\\:mt-2{@media (width >= 1024px){margin-top:calc(var(--spacing, .25rem)*2)}}.sm\\:px-6{@media (width >= 40rem){padding-inline:calc(var(--spacing, .25rem)*6)}}.\\[part\\=\\"breadcrumb-button\\"\\]\\:visible{&:is(part="breadcrumb-button"){visibility:visible}}}@layer theme, base, components, utilities;@layer components{.input-primary{background-color:var(--atomic-background);border-color:var(--atomic-neutral);border-radius:var(--atomic-border-radius);border-style:var(--tw-border-style);border-width:1px;&:hover{@media (hover:hover){border-color:var(--atomic-primary-light)}}&:focus-visible{border-color:var(--atomic-primary)}&:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}&:focus-visible{--tw-ring-color:var(--atomic-ring-primary)}&:focus-visible{--tw-outline-style:none;outline-style:none}}.btn-radio{-webkit-appearance:none;-moz-appearance:none;appearance:none;&:before{--tw-content:attr(value);content:var(--tw-content)}}.btn-primary{background-color:var(--atomic-primary);border-radius:var(--atomic-border-radius);color:var(--atomic-on-primary);&:hover{@media (hover:hover){background-color:var(--atomic-primary-light)}}&:focus-visible{background-color:var(--atomic-primary-light)}&:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}&:focus-visible{--tw-ring-color:var(--atomic-ring-primary)}&:focus-visible{--tw-outline-style:none;outline-style:none}&:disabled{background-color:var(--atomic-disabled);cursor:not-allowed}}.btn-outline-primary{background-color:var(--atomic-background);border-color:var(--atomic-neutral);border-radius:var(--atomic-border-radius);border-style:var(--tw-border-style);border-width:1px;color:var(--atomic-primary);&:hover{@media (hover:hover){border-color:var(--atomic-primary-light)}}&:hover{@media (hover:hover){color:var(--atomic-primary-light)}}&:focus-visible{border-color:var(--atomic-primary)}&:focus-visible{color:var(--atomic-primary)}&:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}&:focus-visible{--tw-ring-color:var(--atomic-ring-primary)}&:focus-visible{--tw-outline-style:none;outline-style:none}&:disabled{border-color:var(--atomic-neutral);color:var(--atomic-neutral);cursor:not-allowed}}.btn-text-primary{background-color:var(--atomic-background);border-radius:var(--atomic-border-radius);color:var(--atomic-primary);&:hover{@media (hover:hover){background-color:var(--atomic-neutral-light)}}&:focus-visible{background-color:var(--atomic-neutral-light)}&:focus-visible{--tw-outline-style:none;outline-style:none}}.btn-outline-neutral{background-color:var(--atomic-background);border-color:var(--atomic-neutral);border-radius:var(--atomic-border-radius);border-style:var(--tw-border-style);border-width:1px;color:var(--atomic-on-background);&:hover{@media (hover:hover){border-color:var(--atomic-primary)}}&:hover{@media (hover:hover){color:var(--atomic-primary)}}&:focus-visible{border-color:var(--atomic-primary)}&:focus-visible{color:var(--atomic-primary)}&:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}&:focus-visible{--tw-ring-color:var(--atomic-ring-primary)}&:focus-visible{--tw-outline-style:none;outline-style:none}&:disabled{border-color:var(--atomic-neutral);color:var(--atomic-on-background);cursor:not-allowed;opacity:50%}}.btn-outline-bg-neutral{background-color:var(--atomic-background);border-color:var(--atomic-neutral);border-radius:var(--atomic-border-radius);border-style:var(--tw-border-style);border-width:1px;color:var(--atomic-on-background);&:hover{@media (hover:hover){border-color:var(--atomic-primary)}}&:hover{@media (hover:hover){background-color:var(--atomic-neutral-light)}}&:hover{@media (hover:hover){color:var(--atomic-primary)}}&:focus-visible{border-color:var(--atomic-primary)}&:focus-visible{background-color:var(--atomic-neutral-light)}&:focus-visible{color:var(--atomic-primary)}&:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}&:focus-visible{--tw-ring-color:var(--atomic-ring-primary)}&:focus-visible{--tw-outline-style:none;outline-style:none}&:disabled{border-color:var(--atomic-neutral);color:var(--atomic-on-background);cursor:not-allowed;opacity:50%}}.btn-outline-bg-error{background-color:var(--atomic-background);border-color:var(--atomic-neutral);border-radius:var(--atomic-border-radius);border-style:var(--tw-border-style);border-width:1px;color:var(--atomic-on-background);&:hover{@media (hover:hover){border-color:var(--atomic-primary)}}&:hover{@media (hover:hover){background-color:var(--atomic-neutral-light)}}&:hover{@media (hover:hover){color:var(--atomic-primary)}}&:focus-visible{border-color:var(--atomic-primary)}&:focus-visible{background-color:var(--atomic-neutral-light)}&:focus-visible{color:var(--atomic-primary)}&:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}&:focus-visible{--tw-ring-color:var(--atomic-ring-primary)}&:focus-visible{--tw-outline-style:none;outline-style:none}&:disabled{border-color:var(--atomic-neutral);color:var(--atomic-on-background);cursor:not-allowed;opacity:50%}}.btn-outline-error{background-color:var(--atomic-background);border-color:var(--atomic-neutral);border-radius:var(--atomic-border-radius);border-style:var(--tw-border-style);border-width:1px;color:var(--atomic-on-background);&:hover{@media (hover:hover){border-color:var(--atomic-error)}}&:hover{@media (hover:hover){color:var(--atomic-error)}}&:focus-visible{border-color:var(--atomic-error)}&:focus-visible{color:var(--atomic-error)}&:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}&:focus-visible{--tw-ring-color:var(--atomic-ring-primary)}&:focus-visible{--tw-outline-style:none;outline-style:none}&:disabled{border-color:var(--atomic-neutral);color:var(--atomic-on-background);cursor:not-allowed;opacity:50%}}.btn-text-neutral{background-color:var(--atomic-background);border-radius:var(--atomic-border-radius);color:var(--atomic-on-background);&:hover{@media (hover:hover){background-color:var(--atomic-neutral-light)}}&:hover{@media (hover:hover){color:var(--atomic-primary)}}&:focus-visible{background-color:var(--atomic-neutral-light)}&:focus-visible{color:var(--atomic-primary)}&:focus-visible{--tw-outline-style:none;outline-style:none}}.btn-text-transparent{color:var(--atomic-on-background);&:hover{@media (hover:hover){color:var(--atomic-primary-light)}}&:focus-visible{color:var(--atomic-primary-light)}}.btn-square-neutral{background-color:var(--atomic-background);border-color:var(--atomic-neutral);border-style:var(--tw-border-style);border-width:1px;color:var(--atomic-on-background);&:hover{@media (hover:hover){background-color:var(--atomic-neutral-light)}}&:focus-visible{background-color:var(--atomic-neutral-light)}&:focus-visible{--tw-outline-style:none;outline-style:none}}.btn-page{border-style:var(--tw-border-style);border-width:0;display:grid;font-size:var(--atomic-text-lg);height:calc(var(--spacing, .25rem)*10);line-height:var(--tw-leading,var(--text-lg--line-height,1.55556));place-items:center;width:calc(var(--spacing, .25rem)*10);&:hover{@media (hover:hover){border-bottom-width:1px;border-left-width:1px;border-right-width:1px;border-style:var(--tw-border-style);border-top-width:1px}}&:focus-visible{border-style:var(--tw-border-style);border-width:1px}&.selected{border-color:var(--atomic-primary);border-style:var(--tw-border-style);border-width:2px;--tw-font-weight:var(--atomic-font-bold);font-weight:var(--atomic-font-bold)}}}@layer base{:host{display:block}:host,button,input,select{font-family:var(--atomic-font-family);font-size:var(--atomic-text-base);line-height:var(--tw-leading,var(--text-base--line-height,1.5));--tw-font-weight:var(--atomic-font-normal);font-weight:var(--atomic-font-normal)}button{cursor:pointer}:host(.atomic-hidden){display:none}.ripple{animation:ripple var(--animation-duration) linear;border-radius:50%;pointer-events:none;position:absolute;transform:scale(0)}.ripple-relative{position:relative}.ripple-parent{overflow:hidden}@keyframes ripple{to{opacity:0;transform:scale(4)}}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";initial-value:"";inherits:false}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{50%{opacity:.5}}@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:""}}}`;
8
8
  export default css;
@@ -63,12 +63,6 @@ function elementHasAncestorTag(el, tagName) {
63
63
  }
64
64
  return elementHasAncestorTag(parentElement, tagName);
65
65
  }
66
- function isFocusingOut(event) {
67
- return (document.hasFocus() &&
68
- (!(event.relatedTarget instanceof Node) ||
69
- (event.currentTarget instanceof Node &&
70
- !event.currentTarget.contains(event.relatedTarget))));
71
- }
72
66
  function aggregate(values, getKey) {
73
67
  return values.reduce((aggregatedValues, value, i) => {
74
68
  const key = getKey(value, i);
@@ -83,6 +77,6 @@ async function defer() {
83
77
  return new Promise((resolve) => setTimeout(resolve, 10));
84
78
  }
85
79
 
86
- export { aggregate as a, isVisualNode as b, containsVisualElement as c, isElementNode as d, elementHasAncestorTag as e, defer as f, camelToKebab as g, isFocusingOut as i, kebabToCamel as k, once as o, randomID as r };
80
+ export { aggregate as a, isElementNode as b, containsVisualElement as c, defer as d, elementHasAncestorTag as e, camelToKebab as f, isVisualNode as i, kebabToCamel as k, once as o, randomID as r };
87
81
 
88
82
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"file":"utils.js","mappings":"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","names":[],"sources":["src/utils/utils.ts"],"sourcesContent":["import DOMPurify from 'dompurify';\n\n/**\n * Returns a function that can be executed only once\n */\nexport function once<T extends unknown[], R>(fn: (...args: T) => R) {\n let result: R;\n let callable: ((...args: T) => R) | null = fn;\n return function (this: unknown, ...args: T) {\n if (callable) {\n result = callable.apply(this, args);\n callable = null; // Allow garbage collection\n }\n return result;\n };\n}\n\nexport function camelToKebab(value: string) {\n return value.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, '$1-$2').toLowerCase();\n}\n\nexport function kebabToCamel(value: string) {\n return value.replace(/-./g, (x) => x[1].toUpperCase());\n}\n\nexport function snakeToCamel(value: string) {\n return value\n .toLowerCase()\n .replace(/([_][a-z])/g, (group) => group.toUpperCase().replace('_', ''));\n}\n\nexport function titleToKebab(value: string) {\n return value.replace(/\\s/g, '-').toLowerCase();\n}\n\nexport function randomID(prepend?: string, length = 5) {\n const randomStr = Math.random()\n .toString(36)\n .substring(2, 2 + length);\n if (!prepend) {\n return randomStr;\n }\n return prepend + randomStr;\n}\n\nexport function getRandomArbitrary(min: number, max: number) {\n return Math.random() * (max - min) + min;\n}\n\nexport function parseXML(string: string) {\n return new window.DOMParser().parseFromString(string, 'text/xml');\n}\n\nexport function parseHTML(string: string) {\n return new window.DOMParser().parseFromString(string, 'text/html');\n}\n\nexport function isElementNode(node: Node): node is Element {\n return node.nodeType === Node.ELEMENT_NODE;\n}\n\nexport function isTextNode(node: Node): node is Text {\n return node.nodeType === Node.TEXT_NODE;\n}\n\nexport function isVisualNode(node: Node) {\n if (isElementNode(node)) {\n return !(node instanceof HTMLStyleElement);\n }\n if (isTextNode(node)) {\n return !!node.textContent?.trim();\n }\n return false;\n}\n\nexport function containsVisualElement(node: Node) {\n for (let i = 0; i < node.childNodes.length; i++) {\n const child = node.childNodes.item(i);\n if (isVisualNode(child)) {\n return true;\n }\n }\n return false;\n}\n\nexport function elementHasAncestorTag(\n el: HTMLElement,\n tagName: string\n): boolean {\n const parentElement = el.parentElement;\n if (!parentElement) {\n return false;\n }\n if (parentElement.tagName === tagName.toUpperCase()) {\n return true;\n }\n return elementHasAncestorTag(parentElement, tagName);\n}\n\nexport function sanitizeStyle(style: string) {\n const purifiedOuterHTML = DOMPurify.sanitize(`<style>${style}</style>`, {\n ALLOWED_TAGS: ['style'],\n ALLOWED_ATTR: [],\n FORCE_BODY: true,\n });\n const wrapperEl = document.createElement('div');\n // deepcode ignore ReactSetInnerHtml: sanitized by dompurify\n wrapperEl.innerHTML = purifiedOuterHTML;\n return wrapperEl.querySelector('style')?.innerHTML;\n}\n\nexport function getFocusedElement(\n rootElement: Document | ShadowRoot = document\n): Element | null {\n const activeElement = rootElement.activeElement;\n if (activeElement?.shadowRoot) {\n return getFocusedElement(activeElement.shadowRoot) ?? activeElement;\n }\n return activeElement;\n}\n\nexport function isFocusingOut(event: FocusEvent) {\n return (\n document.hasFocus() &&\n (!(event.relatedTarget instanceof Node) ||\n (event.currentTarget instanceof Node &&\n !event.currentTarget.contains(event.relatedTarget)))\n );\n}\n\n// https://terodox.tech/how-to-tell-if-an-element-is-in-the-dom-including-the-shadow-dom/\nexport function isInDocument(element: Node) {\n let currentElement = element;\n while (currentElement?.parentNode) {\n if (currentElement.parentNode === document) {\n return true;\n } else if (currentElement.parentNode instanceof ShadowRoot) {\n currentElement = currentElement.parentNode.host;\n } else {\n currentElement = currentElement.parentNode;\n }\n }\n return false;\n}\n\nexport function isPropValuesEqual<ObjectWithProperties extends object>(\n subject: ObjectWithProperties,\n target: ObjectWithProperties,\n propNames: (keyof ObjectWithProperties)[]\n) {\n return propNames.every((propName) => subject[propName] === target[propName]);\n}\n\nexport function getParent(element: Element | ShadowRoot) {\n if (element.parentNode) {\n return element.parentNode as Element | ShadowRoot;\n }\n if (element instanceof ShadowRoot) {\n return element.host;\n }\n return null;\n}\n\nexport function isAncestorOf(\n ancestor: Element | ShadowRoot,\n element: Element | ShadowRoot\n): boolean {\n if (element === ancestor) {\n return true;\n }\n if (\n element instanceof HTMLElement &&\n element.assignedSlot &&\n isAncestorOf(ancestor, element.assignedSlot)\n ) {\n return true;\n }\n const parent = getParent(element);\n return parent === null ? false : isAncestorOf(ancestor, parent);\n}\n\nexport function aggregate<V, K extends PropertyKey>(\n values: readonly V[],\n getKey: (value: V, index: number) => K\n): Record<K, V[] | undefined> {\n return values.reduce(\n (aggregatedValues, value, i) => {\n const key = getKey(value, i);\n if (!(key in aggregatedValues)) {\n aggregatedValues[key] = [];\n }\n aggregatedValues[key]!.push(value);\n return aggregatedValues;\n },\n <Record<K, V[] | undefined>>{}\n );\n}\n\n/**\n * Similar as a classic spread, but preserve all characteristics of properties (e.g. getter/setter).\n * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign#description\n * for an explanation why (spread & assign work similarly).\n * @param objects the objects to \"spread\" together\n * @returns the spread result\n */\nexport function spreadProperties<Output extends object = {}>(\n ...objects: object[]\n) {\n const returnObject = {};\n for (const obj of objects) {\n Object.defineProperties(\n returnObject,\n Object.getOwnPropertyDescriptors(obj)\n );\n }\n return returnObject as Output;\n}\n\nexport const sortByDocumentPosition = (a: Node, b: Node): 1 | -1 =>\n a.compareDocumentPosition(b) & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : 1;\n\nexport async function defer() {\n return new Promise<void>((resolve) => setTimeout(resolve, 10));\n}\n"],"version":3}
1
+ {"file":"utils.js","mappings":"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","names":[],"sources":["src/utils/utils.ts"],"sourcesContent":["import DOMPurify from 'dompurify';\n\n/**\n * Returns a function that can be executed only once\n */\nexport function once<T extends unknown[], R>(fn: (...args: T) => R) {\n let result: R;\n let callable: ((...args: T) => R) | null = fn;\n return function (this: unknown, ...args: T) {\n if (callable) {\n result = callable.apply(this, args);\n callable = null; // Allow garbage collection\n }\n return result;\n };\n}\n\nexport function camelToKebab(value: string) {\n return value.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, '$1-$2').toLowerCase();\n}\n\nexport function kebabToCamel(value: string) {\n return value.replace(/-./g, (x) => x[1].toUpperCase());\n}\n\nexport function snakeToCamel(value: string) {\n return value\n .toLowerCase()\n .replace(/([_][a-z])/g, (group) => group.toUpperCase().replace('_', ''));\n}\n\nexport function titleToKebab(value: string) {\n return value.replace(/\\s/g, '-').toLowerCase();\n}\n\nexport function randomID(prepend?: string, length = 5) {\n const randomStr = Math.random()\n .toString(36)\n .substring(2, 2 + length);\n if (!prepend) {\n return randomStr;\n }\n return prepend + randomStr;\n}\n\nexport function getRandomArbitrary(min: number, max: number) {\n return Math.random() * (max - min) + min;\n}\n\nexport function parseXML(string: string) {\n return new window.DOMParser().parseFromString(string, 'text/xml');\n}\n\nexport function parseHTML(string: string) {\n return new window.DOMParser().parseFromString(string, 'text/html');\n}\n\nexport function isElementNode(node: Node): node is Element {\n return node.nodeType === Node.ELEMENT_NODE;\n}\n\nexport function isTextNode(node: Node): node is Text {\n return node.nodeType === Node.TEXT_NODE;\n}\n\nexport function isVisualNode(node: Node) {\n if (isElementNode(node)) {\n return !(node instanceof HTMLStyleElement);\n }\n if (isTextNode(node)) {\n return !!node.textContent?.trim();\n }\n return false;\n}\n\nexport function containsVisualElement(node: Node) {\n for (let i = 0; i < node.childNodes.length; i++) {\n const child = node.childNodes.item(i);\n if (isVisualNode(child)) {\n return true;\n }\n }\n return false;\n}\n\nexport function elementHasAncestorTag(\n el: HTMLElement,\n tagName: string\n): boolean {\n const parentElement = el.parentElement;\n if (!parentElement) {\n return false;\n }\n if (parentElement.tagName === tagName.toUpperCase()) {\n return true;\n }\n return elementHasAncestorTag(parentElement, tagName);\n}\n\nexport function sanitizeStyle(style: string) {\n const purifiedOuterHTML = DOMPurify.sanitize(`<style>${style}</style>`, {\n ALLOWED_TAGS: ['style'],\n ALLOWED_ATTR: [],\n FORCE_BODY: true,\n });\n const wrapperEl = document.createElement('div');\n // deepcode ignore ReactSetInnerHtml: sanitized by dompurify\n wrapperEl.innerHTML = purifiedOuterHTML;\n return wrapperEl.querySelector('style')?.innerHTML;\n}\n\nexport function getFocusedElement(\n rootElement: Document | ShadowRoot = document\n): Element | null {\n const activeElement = rootElement.activeElement;\n if (activeElement?.shadowRoot) {\n return getFocusedElement(activeElement.shadowRoot) ?? activeElement;\n }\n return activeElement;\n}\n\nexport function isFocusingOut(event: FocusEvent) {\n return (\n document.hasFocus() &&\n (!(event.relatedTarget instanceof Node) ||\n (event.currentTarget instanceof Node &&\n !event.currentTarget.contains(event.relatedTarget)))\n );\n}\n\n// https://terodox.tech/how-to-tell-if-an-element-is-in-the-dom-including-the-shadow-dom/\nexport function isInDocument(element: Node) {\n let currentElement = element;\n while (currentElement?.parentNode) {\n if (currentElement.parentNode === document) {\n return true;\n } else if (currentElement.parentNode instanceof ShadowRoot) {\n currentElement = currentElement.parentNode.host;\n } else {\n currentElement = currentElement.parentNode;\n }\n }\n return false;\n}\n\nexport function isPropValuesEqual<ObjectWithProperties extends object>(\n subject: ObjectWithProperties,\n target: ObjectWithProperties,\n propNames: (keyof ObjectWithProperties)[]\n) {\n return propNames.every((propName) => subject[propName] === target[propName]);\n}\n\nexport function getParent(element: Element | ShadowRoot) {\n if (element.parentNode) {\n return element.parentNode as Element | ShadowRoot;\n }\n if (element instanceof ShadowRoot) {\n return element.host;\n }\n return null;\n}\n\nexport function isAncestorOf(\n ancestor: Element | ShadowRoot,\n element: Element | ShadowRoot\n): boolean {\n if (element === ancestor) {\n return true;\n }\n if (\n element instanceof HTMLElement &&\n element.assignedSlot &&\n isAncestorOf(ancestor, element.assignedSlot)\n ) {\n return true;\n }\n const parent = getParent(element);\n return parent === null ? false : isAncestorOf(ancestor, parent);\n}\n\nexport function aggregate<V, K extends PropertyKey>(\n values: readonly V[],\n getKey: (value: V, index: number) => K\n): Record<K, V[] | undefined> {\n return values.reduce(\n (aggregatedValues, value, i) => {\n const key = getKey(value, i);\n if (!(key in aggregatedValues)) {\n aggregatedValues[key] = [];\n }\n aggregatedValues[key]!.push(value);\n return aggregatedValues;\n },\n <Record<K, V[] | undefined>>{}\n );\n}\n\n/**\n * Similar as a classic spread, but preserve all characteristics of properties (e.g. getter/setter).\n * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign#description\n * for an explanation why (spread & assign work similarly).\n * @param objects the objects to \"spread\" together\n * @returns the spread result\n */\nexport function spreadProperties<Output extends object = {}>(\n ...objects: object[]\n) {\n const returnObject = {};\n for (const obj of objects) {\n Object.defineProperties(\n returnObject,\n Object.getOwnPropertyDescriptors(obj)\n );\n }\n return returnObject as Output;\n}\n\nexport const sortByDocumentPosition = (a: Node, b: Node): 1 | -1 =>\n a.compareDocumentPosition(b) & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : 1;\n\nexport async function defer() {\n return new Promise<void>((resolve) => setTimeout(resolve, 10));\n}\n"],"version":3}
@@ -1,2 +1,2 @@
1
- import{c as o}from"./p-c9074946.js";import{b as t}from"./p-2a60a64b.js";import{i as s}from"./p-d8705a4b.js";export{e as elementHasNoQuery,a as elementHasQuery}from"./p-0a051b8d.js";export{r as resultContext}from"./p-00b326bb.js";export{M as MissingInterfaceParentError,f as initializeBindings}from"./p-98cbe076.js";export{b as bindLogDocumentOpenOnResult}from"./p-74975270.js";import"./p-087c0db1.js";import"@coveo/headless";class n extends Error{constructor(e,o){super(`The "${e}" element must be the child of an "${o}" element.`)}}const i="atomic/resolveResult";function c(e,s){return new Promise(((r,a)=>{const c=t(i,(e=>r(e)));e.dispatchEvent(c);if(!o(e,s)){a(new n(e.nodeName.toLowerCase(),s))}}))}function m(e){return c(e,"atomic-product")}function p(e){return s(e,"atomic-product")}const l=(e,t,s=u)=>{const n=o(t,u.join(", "));if(!n){throw new Error(`The "${t.nodeName.toLowerCase()}" component was not handled, as it is not a child of the following elements: ${s.join(", ")}`)}void h(n,t,e)};const u=["atomic-search-box","atomic-insight-search-box","atomic-commerce-search-box"];const d=e=>"updateComplete"in e&&e.updateComplete instanceof Promise;const h=async(e,o,s)=>{await customElements.whenDefined(e.nodeName.toLowerCase());if(d(e)){await e.updateComplete}else if("componentOnReady"in e){await e.componentOnReady()}o.dispatchEvent(t("atomic/searchBoxSuggestion/register",s))};export{l as dispatchSearchBoxSuggestionsEvent,m as fetchProductContext,p as productContext};
1
+ import{c as o}from"./p-1ad6cda9.js";import{b as t}from"./p-7169f45e.js";import{i as e}from"./p-b043d6b0.js";export{r as resultContext}from"./p-fc7cf109.js";export{M as MissingInterfaceParentError,f as initializeBindings}from"./p-5c374d71.js";export{b as bindLogDocumentOpenOnResult}from"./p-74975270.js";import"./p-087c0db1.js";import"@coveo/headless";class n extends Error{constructor(o,t){super(`The "${o}" element must be the child of an "${t}" element.`)}}const s="atomic/resolveResult";function i(e,r){return new Promise(((i,c)=>{const a=t(s,(o=>i(o)));e.dispatchEvent(a);if(!o(e,r)){c(new n(e.nodeName.toLowerCase(),r))}}))}function c(o){return i(o,"atomic-product")}function a(o){return e(o,"atomic-product")}const m=(t,e,n=p)=>{const r=o(e,p.join(", "));if(!r){throw new Error(`The "${e.nodeName.toLowerCase()}" component was not handled, as it is not a child of the following elements: ${n.join(", ")}`)}void d(r,e,t)};const p=["atomic-search-box","atomic-insight-search-box","atomic-commerce-search-box"];const u=o=>"updateComplete"in o&&o.updateComplete instanceof Promise;const d=async(o,e,n)=>{await customElements.whenDefined(o.nodeName.toLowerCase());if(u(o)){await o.updateComplete}else if("componentOnReady"in o){await o.componentOnReady()}e.dispatchEvent(t("atomic/searchBoxSuggestion/register",n))};function l(o){return!o.query||o.query.trim()===""}function h(o){return!!o.query&&o.query.trim()!==""}export{m as dispatchSearchBoxSuggestionsEvent,l as elementHasNoQuery,h as elementHasQuery,c as fetchProductContext,a as productContext};
2
2
  //# sourceMappingURL=index.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["MissingParentError","Error","constructor","elementName","parentName","super","itemContextEventName","fetchItemContext","element","Promise","resolve","reject","event","buildCustomEvent","item","dispatchEvent","closest","nodeName","toLowerCase","fetchProductContext","productContext","itemContext","dispatchSearchBoxSuggestionsEvent","allowedSearchBoxElements","searchBoxElements","interfaceElement","join","dispatchSearchBoxSuggestionsEventEventually","isLitElementLoosely","candidate","updateComplete","async","customElements","whenDefined","componentOnReady"],"sources":["src/components/common/item-list/context/item-context-controller.ts","src/components/common/item-list/fetch-item-context.ts","src/components/commerce/product-template-component-utils/context/fetch-product-context.ts","src/components/commerce/product-template-component-utils/context/stencil-product-template-decorators.tsx","src/components/common/suggestions/suggestions-events.ts"],"sourcesContent":["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 {Product} from '@coveo/headless/commerce';\nimport {fetchItemContext} from '@/src/components/common/item-list/fetch-item-context';\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","import {Product} from '@coveo/headless/commerce';\nimport {itemContext} from '@/src/components/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/components/commerce/product-template-component-utils/context/fetch-product-context.ts\n */\nexport function productContext<T extends Product>(element: Element) {\n return itemContext<T>(element, 'atomic-product');\n}\n","import type {HTMLStencilElement} from '@stencil/core/internal';\nimport type {LitElement} from 'lit';\nimport {closest} from '../../../utils/dom-utils';\nimport {buildCustomEvent} from '../../../utils/event-utils';\nimport type {AnyBindings} from '../interface/bindings';\nimport type {SearchBoxSuggestionsEvent} from './suggestions-types';\n\n/**\n * Dispatches an event which retrieves the `SearchBoxSuggestionsBindings` on a configured parent search box.\n *\n * @param event Event sent from the registered query suggestions to the parent search box\n * @param element Element on which to dispatch the event, which must be the child of a configured search box\n * @param allowedSearchBoxElements Optional array of allowed search box element selectors\n *\n * @throws Error if the element is not a child of an allowed search box element\n */\nexport const dispatchSearchBoxSuggestionsEvent = <\n SearchBoxController,\n Bindings = AnyBindings,\n>(\n event: SearchBoxSuggestionsEvent<SearchBoxController, Bindings>,\n element: HTMLElement,\n allowedSearchBoxElements: readonly (typeof searchBoxElements)[number][] = searchBoxElements\n) => {\n const interfaceElement = closest(element, searchBoxElements.join(', '));\n if (!interfaceElement) {\n throw new Error(\n `The \"${element.nodeName.toLowerCase()}\" component was not handled, as it is not a child of the following elements: ${allowedSearchBoxElements.join(\n ', '\n )}`\n );\n }\n void dispatchSearchBoxSuggestionsEventEventually(\n interfaceElement,\n element,\n event\n );\n};\n\nconst searchBoxElements = [\n 'atomic-search-box',\n 'atomic-insight-search-box',\n 'atomic-commerce-search-box',\n] as const;\n\nconst isLitElementLoosely = (candidate: unknown): candidate is LitElement =>\n 'updateComplete' in (candidate as LitElement) &&\n (candidate as LitElement).updateComplete instanceof Promise;\n\nconst dispatchSearchBoxSuggestionsEventEventually = async <\n SearchBoxController,\n Bindings = AnyBindings,\n>(\n interfaceElement: Element,\n element: HTMLElement,\n event: SearchBoxSuggestionsEvent<SearchBoxController, Bindings>\n) => {\n await customElements.whenDefined(interfaceElement.nodeName.toLowerCase());\n if (isLitElementLoosely(interfaceElement)) {\n await interfaceElement.updateComplete;\n } else if ('componentOnReady' in interfaceElement) {\n await (interfaceElement as HTMLStencilElement).componentOnReady();\n }\n element.dispatchEvent(\n buildCustomEvent('atomic/searchBoxSuggestion/register', event)\n );\n};\n"],"mappings":"+aAcaA,UAA2BC,MACtC,WAAAC,CAAYC,EAAqBC,GAC/BC,MACE,QAAQF,uCAAiDC,c,ECb/D,MAAME,EAAuB,uB,SAIbC,EAAoBC,EAAkBJ,GACpD,OAAO,IAAIK,SAAW,CAACC,EAASC,KAC9B,MAAMC,EAAQC,EACZP,GACCQ,GACQJ,EAAQI,KAGnBN,EAAQO,cAAcH,GAEtB,IAAKI,EAAQR,EAASJ,GAAa,CACjCO,EACE,IAAIX,EAAmBQ,EAAQS,SAASC,cAAed,G,IAI/D,C,SCXgBe,EAAuCX,GACrD,OAAOD,EAAoBC,EAAS,iBACtC,C,SCAgBY,EAAkCZ,GAChD,OAAOa,EAAeb,EAAS,iBACjC,C,MCDac,EAAoC,CAI/CV,EACAJ,EACAe,EAA0EC,KAE1E,MAAMC,EAAmBT,EAAQR,EAASgB,EAAkBE,KAAK,OACjE,IAAKD,EAAkB,CACrB,MAAM,IAAIxB,MACR,QAAQO,EAAQS,SAASC,6FAA6FK,EAAyBG,KAC7I,Q,MAIDC,EACHF,EACAjB,EACAI,EACD,EAGH,MAAMY,EAAoB,CACxB,oBACA,4BACA,8BAGF,MAAMI,EAAuBC,GAC3B,mBAAqBA,GACpBA,EAAyBC,0BAA0BrB,QAEtD,MAAMkB,EAA8CI,MAIlDN,EACAjB,EACAI,WAEMoB,eAAeC,YAAYR,EAAiBR,SAASC,eAC3D,GAAIU,EAAoBH,GAAmB,OACnCA,EAAiBK,c,MAClB,GAAI,qBAAsBL,EAAkB,OAC1CA,EAAwCS,kB,CAEjD1B,EAAQO,cACNF,EAAiB,sCAAuCD,GACzD,S","ignoreList":[]}
1
+ {"version":3,"names":["MissingParentError","Error","constructor","elementName","parentName","super","itemContextEventName","fetchItemContext","element","Promise","resolve","reject","event","buildCustomEvent","item","dispatchEvent","closest","nodeName","toLowerCase","fetchProductContext","productContext","itemContext","dispatchSearchBoxSuggestionsEvent","allowedSearchBoxElements","searchBoxElements","interfaceElement","join","dispatchSearchBoxSuggestionsEventEventually","isLitElementLoosely","candidate","updateComplete","async","customElements","whenDefined","componentOnReady","elementHasNoQuery","el","query","trim","elementHasQuery"],"sources":["src/components/common/item-list/context/item-context-controller.ts","src/components/common/item-list/fetch-item-context.ts","src/components/commerce/product-template-component-utils/context/fetch-product-context.ts","src/components/commerce/product-template-component-utils/context/stencil-product-template-decorators.tsx","src/components/common/suggestions/suggestions-events.ts","src/components/common/suggestions/suggestions-utils.ts"],"sourcesContent":["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 {Product} from '@coveo/headless/commerce';\nimport {fetchItemContext} from '@/src/components/common/item-list/fetch-item-context';\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","import {Product} from '@coveo/headless/commerce';\nimport {itemContext} from '@/src/components/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/components/commerce/product-template-component-utils/context/fetch-product-context.ts\n */\nexport function productContext<T extends Product>(element: Element) {\n return itemContext<T>(element, 'atomic-product');\n}\n","import type {HTMLStencilElement} from '@stencil/core/internal';\nimport type {LitElement} from 'lit';\nimport {closest} from '../../../utils/dom-utils';\nimport {buildCustomEvent} from '../../../utils/event-utils';\nimport type {AnyBindings} from '../interface/bindings';\nimport type {SearchBoxSuggestionsEvent} from './suggestions-types';\n\n/**\n * Dispatches an event which retrieves the `SearchBoxSuggestionsBindings` on a configured parent search box.\n *\n * @param event Event sent from the registered query suggestions to the parent search box\n * @param element Element on which to dispatch the event, which must be the child of a configured search box\n * @param allowedSearchBoxElements Optional array of allowed search box element selectors\n *\n * @throws Error if the element is not a child of an allowed search box element\n */\nexport const dispatchSearchBoxSuggestionsEvent = <\n SearchBoxController,\n Bindings = AnyBindings,\n>(\n event: SearchBoxSuggestionsEvent<SearchBoxController, Bindings>,\n element: HTMLElement,\n allowedSearchBoxElements: readonly (typeof searchBoxElements)[number][] = searchBoxElements\n) => {\n const interfaceElement = closest(element, searchBoxElements.join(', '));\n if (!interfaceElement) {\n throw new Error(\n `The \"${element.nodeName.toLowerCase()}\" component was not handled, as it is not a child of the following elements: ${allowedSearchBoxElements.join(\n ', '\n )}`\n );\n }\n void dispatchSearchBoxSuggestionsEventEventually(\n interfaceElement,\n element,\n event\n );\n};\n\nconst searchBoxElements = [\n 'atomic-search-box',\n 'atomic-insight-search-box',\n 'atomic-commerce-search-box',\n] as const;\n\nconst isLitElementLoosely = (candidate: unknown): candidate is LitElement =>\n 'updateComplete' in (candidate as LitElement) &&\n (candidate as LitElement).updateComplete instanceof Promise;\n\nconst dispatchSearchBoxSuggestionsEventEventually = async <\n SearchBoxController,\n Bindings = AnyBindings,\n>(\n interfaceElement: Element,\n element: HTMLElement,\n event: SearchBoxSuggestionsEvent<SearchBoxController, Bindings>\n) => {\n await customElements.whenDefined(interfaceElement.nodeName.toLowerCase());\n if (isLitElementLoosely(interfaceElement)) {\n await interfaceElement.updateComplete;\n } else if ('componentOnReady' in interfaceElement) {\n await (interfaceElement as HTMLStencilElement).componentOnReady();\n }\n element.dispatchEvent(\n buildCustomEvent('atomic/searchBoxSuggestion/register', event)\n );\n};\n","import type {SearchBoxSuggestionElement} from './suggestions-types';\n\n/**\n * Checks if a search box suggestion element has no query.\n *\n * @param el - The search box suggestion element to check\n * @returns True if the element has no query or the query is whitespace-only\n */\nexport function elementHasNoQuery(el: SearchBoxSuggestionElement): boolean {\n return !el.query || el.query.trim() === '';\n}\n\n/**\n * Checks if a search box suggestion element has a query.\n *\n * @param el - The search box suggestion element to check\n * @returns True if the element has a non-empty, non-whitespace query\n */\nexport function elementHasQuery(el: SearchBoxSuggestionElement): boolean {\n return !!el.query && el.query.trim() !== '';\n}\n"],"mappings":"sWAcaA,UAA2BC,MACtC,WAAAC,CAAYC,EAAqBC,GAC/BC,MACE,QAAQF,uCAAiDC,c,ECb/D,MAAME,EAAuB,uB,SAIbC,EAAoBC,EAAkBJ,GACpD,OAAO,IAAIK,SAAW,CAACC,EAASC,KAC9B,MAAMC,EAAQC,EACZP,GACCQ,GACQJ,EAAQI,KAGnBN,EAAQO,cAAcH,GAEtB,IAAKI,EAAQR,EAASJ,GAAa,CACjCO,EACE,IAAIX,EAAmBQ,EAAQS,SAASC,cAAed,G,IAI/D,C,SCXgBe,EAAuCX,GACrD,OAAOD,EAAoBC,EAAS,iBACtC,C,SCAgBY,EAAkCZ,GAChD,OAAOa,EAAeb,EAAS,iBACjC,C,MCDac,EAAoC,CAI/CV,EACAJ,EACAe,EAA0EC,KAE1E,MAAMC,EAAmBT,EAAQR,EAASgB,EAAkBE,KAAK,OACjE,IAAKD,EAAkB,CACrB,MAAM,IAAIxB,MACR,QAAQO,EAAQS,SAASC,6FAA6FK,EAAyBG,KAC7I,Q,MAIDC,EACHF,EACAjB,EACAI,EACD,EAGH,MAAMY,EAAoB,CACxB,oBACA,4BACA,8BAGF,MAAMI,EAAuBC,GAC3B,mBAAqBA,GACpBA,EAAyBC,0BAA0BrB,QAEtD,MAAMkB,EAA8CI,MAIlDN,EACAjB,EACAI,WAEMoB,eAAeC,YAAYR,EAAiBR,SAASC,eAC3D,GAAIU,EAAoBH,GAAmB,OACnCA,EAAiBK,c,MAClB,GAAI,qBAAsBL,EAAkB,OAC1CA,EAAwCS,kB,CAEjD1B,EAAQO,cACNF,EAAiB,sCAAuCD,GACzD,E,SCzDauB,EAAkBC,GAChC,OAAQA,EAAGC,OAASD,EAAGC,MAAMC,SAAW,EAC1C,C,SAQgBC,EAAgBH,GAC9B,QAASA,EAAGC,OAASD,EAAGC,MAAMC,SAAW,EAC3C,Q","ignoreList":[]}