@coveo/atomic 3.35.0-pre.e38c46e295 → 3.35.0-pre.e757e0d8ec

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 (1184) hide show
  1. package/dist/atomic/_atomic.esm.js +1 -1
  2. package/dist/atomic/components/_index.js +19 -19
  3. package/dist/atomic/components/atomic-breadbox.js +18 -0
  4. package/dist/atomic/components/atomic-breadbox.js.map +1 -1
  5. package/dist/atomic/components/atomic-category-facet.js +27 -0
  6. package/dist/atomic/components/atomic-category-facet.js.map +1 -1
  7. package/dist/atomic/components/atomic-color-facet.js +3 -0
  8. package/dist/atomic/components/atomic-color-facet.js.map +1 -1
  9. package/dist/atomic/components/atomic-did-you-mean.js +12 -1
  10. package/dist/atomic/components/atomic-did-you-mean.js.map +1 -1
  11. package/dist/atomic/components/atomic-facet.js +6 -0
  12. package/dist/atomic/components/atomic-facet.js.map +1 -1
  13. package/dist/atomic/components/atomic-field-condition.js +1 -1
  14. package/dist/atomic/components/atomic-field-condition.js.map +1 -1
  15. package/dist/atomic/components/atomic-generated-answer.js +1 -1
  16. package/dist/atomic/components/atomic-generated-answer.js.map +1 -1
  17. package/dist/atomic/components/atomic-insight-generated-answer.js +1 -1
  18. package/dist/atomic/components/atomic-insight-generated-answer.js.map +1 -1
  19. package/dist/atomic/components/atomic-insight-pager.js +5 -5
  20. package/dist/atomic/components/atomic-insight-pager.js.map +1 -1
  21. package/dist/atomic/components/atomic-insight-query-summary.js +9 -0
  22. package/dist/atomic/components/atomic-insight-query-summary.js.map +1 -1
  23. package/dist/atomic/components/atomic-insight-result-action.js +2 -2
  24. package/dist/atomic/components/atomic-insight-result-action.js.map +1 -1
  25. package/dist/atomic/components/atomic-insight-result-attach-to-case-action.js +2 -2
  26. package/dist/atomic/components/atomic-insight-result-attach-to-case-action.js.map +1 -1
  27. package/dist/atomic/components/atomic-insight-result-attach-to-case-indicator.js +2 -2
  28. package/dist/atomic/components/atomic-insight-result-attach-to-case-indicator.js.map +1 -1
  29. package/dist/atomic/components/atomic-insight-result-quickview-action.js +2 -2
  30. package/dist/atomic/components/atomic-insight-result-quickview-action.js.map +1 -1
  31. package/dist/atomic/components/atomic-insight-user-actions-session2.js +3 -0
  32. package/dist/atomic/components/atomic-insight-user-actions-session2.js.map +1 -1
  33. package/dist/atomic/components/atomic-ipx-result-link.js +2 -2
  34. package/dist/atomic/components/atomic-ipx-result-link.js.map +1 -1
  35. package/dist/atomic/components/atomic-load-more-results.js +13 -1
  36. package/dist/atomic/components/atomic-load-more-results.js.map +1 -1
  37. package/dist/atomic/components/atomic-no-results.js +3 -0
  38. package/dist/atomic/components/atomic-no-results.js.map +1 -1
  39. package/dist/atomic/components/atomic-quickview-modal2.js +4 -1
  40. package/dist/atomic/components/atomic-quickview-modal2.js.map +1 -1
  41. package/dist/atomic/components/atomic-quickview.js +2 -2
  42. package/dist/atomic/components/atomic-quickview.js.map +1 -1
  43. package/dist/atomic/components/atomic-recs-interface.js +1 -1
  44. package/dist/atomic/components/atomic-refine-modal2.js +12 -0
  45. package/dist/atomic/components/atomic-refine-modal2.js.map +1 -1
  46. package/dist/atomic/components/atomic-refine-toggle.js +6 -0
  47. package/dist/atomic/components/atomic-refine-toggle.js.map +1 -1
  48. package/dist/atomic/components/atomic-result-badge.js +1 -1
  49. package/dist/atomic/components/atomic-result-badge.js.map +1 -1
  50. package/dist/atomic/components/atomic-result-children.js +2 -2
  51. package/dist/atomic/components/atomic-result-children.js.map +1 -1
  52. package/dist/atomic/components/atomic-result-date.js +1 -1
  53. package/dist/atomic/components/atomic-result-date.js.map +1 -1
  54. package/dist/atomic/components/atomic-result-fields-list.js +2 -2
  55. package/dist/atomic/components/atomic-result-fields-list.js.map +1 -1
  56. package/dist/atomic/components/atomic-result-html.js +1 -1
  57. package/dist/atomic/components/atomic-result-html.js.map +1 -1
  58. package/dist/atomic/components/atomic-result-icon.js +1 -1
  59. package/dist/atomic/components/atomic-result-icon.js.map +1 -1
  60. package/dist/atomic/components/atomic-result-image.js +1 -1
  61. package/dist/atomic/components/atomic-result-image.js.map +1 -1
  62. package/dist/atomic/components/atomic-result-link.js +2 -2
  63. package/dist/atomic/components/atomic-result-link.js.map +1 -1
  64. package/dist/atomic/components/atomic-result-list.js +12 -0
  65. package/dist/atomic/components/atomic-result-list.js.map +1 -1
  66. package/dist/atomic/components/atomic-result-localized-text.js +1 -1
  67. package/dist/atomic/components/atomic-result-localized-text.js.map +1 -1
  68. package/dist/atomic/components/atomic-result-multi-value-text.js +1 -1
  69. package/dist/atomic/components/atomic-result-multi-value-text.js.map +1 -1
  70. package/dist/atomic/components/atomic-result-number.js +1 -1
  71. package/dist/atomic/components/atomic-result-number.js.map +1 -1
  72. package/dist/atomic/components/atomic-result-printable-uri.js +1 -1
  73. package/dist/atomic/components/atomic-result-printable-uri.js.map +1 -1
  74. package/dist/atomic/components/atomic-result-rating.js +1 -1
  75. package/dist/atomic/components/atomic-result-rating.js.map +1 -1
  76. package/dist/atomic/components/atomic-result-text2.js +7 -1
  77. package/dist/atomic/components/atomic-result-text2.js.map +1 -1
  78. package/dist/atomic/components/atomic-result-timespan.js +1 -1
  79. package/dist/atomic/components/atomic-result-timespan.js.map +1 -1
  80. package/dist/atomic/components/atomic-result2.js.map +1 -1
  81. package/dist/atomic/components/atomic-search-box-instant-results.js +9 -0
  82. package/dist/atomic/components/atomic-search-box-instant-results.js.map +1 -1
  83. package/dist/atomic/components/atomic-search-box.js +6 -7
  84. package/dist/atomic/components/atomic-search-box.js.map +1 -1
  85. package/dist/atomic/components/atomic-segmented-facet.js +3 -0
  86. package/dist/atomic/components/atomic-segmented-facet.js.map +1 -1
  87. package/dist/atomic/components/atomic-smart-snippet-source2.js +1 -1
  88. package/dist/atomic/components/atomic-smart-snippet-source2.js.map +1 -1
  89. package/dist/atomic/components/atomic-sort-dropdown.js +15 -0
  90. package/dist/atomic/components/atomic-sort-dropdown.js.map +1 -1
  91. package/dist/atomic/components/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.js +1 -3
  92. package/dist/atomic/components/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.js +0 -5
  93. package/dist/atomic/components/components/commerce/atomic-commerce-search-box-recent-queries/atomic-commerce-search-box-recent-queries.js +0 -3
  94. package/dist/atomic/components/components/commerce/atomic-product-children/atomic-product-children.js +1 -1
  95. package/dist/atomic/components/components/commerce/atomic-product-description/atomic-product-description.js +1 -1
  96. package/dist/atomic/components/components/commerce/atomic-product-excerpt/atomic-product-excerpt.js +1 -1
  97. package/dist/atomic/components/components/commerce/atomic-product-field-condition/atomic-product-field-condition.js +1 -1
  98. package/dist/atomic/components/components/commerce/atomic-product-image/atomic-product-image.js +1 -1
  99. package/dist/atomic/components/components/commerce/atomic-product-link/atomic-product-link.js +2 -1
  100. package/dist/atomic/components/components/commerce/atomic-product-multi-value-text/atomic-product-multi-value-text.js +1 -1
  101. package/dist/atomic/components/components/commerce/atomic-product-numeric-field-value/atomic-product-numeric-field-value.js +1 -1
  102. package/dist/atomic/components/components/commerce/atomic-product-price/atomic-product-price.js +1 -1
  103. package/dist/atomic/components/components/commerce/atomic-product-rating/atomic-product-rating.js +1 -1
  104. package/dist/atomic/components/components/commerce/atomic-product-text/atomic-product-text.js +1 -1
  105. package/dist/atomic/components/components/commerce/product-template-component-utils/context/interactive-product-context-controller.js +25 -0
  106. package/dist/atomic/components/components/commerce/product-template-component-utils/context/product-context-controller.js +29 -0
  107. package/dist/atomic/components/components/common/breadbox/breadcrumb-button.js +1 -6
  108. package/dist/atomic/components/components/common/search-box/text-area-clear-button.js +1 -1
  109. package/dist/atomic/components/facet-guard.js +3 -0
  110. package/dist/atomic/components/facet-guard.js.map +1 -1
  111. package/dist/atomic/components/facet-placeholder.js +3 -0
  112. package/dist/atomic/components/facet-placeholder.js.map +1 -1
  113. package/dist/atomic/components/generated-answer-common.js +27 -0
  114. package/dist/atomic/components/generated-answer-common.js.map +1 -1
  115. package/dist/atomic/components/global/environment.js +1 -1
  116. package/dist/atomic/components/index.js.map +1 -1
  117. package/dist/atomic/components/item-list-guard.js +3 -0
  118. package/dist/atomic/components/item-list-guard.js.map +1 -1
  119. package/dist/atomic/components/show-hide-button.js +12 -0
  120. package/dist/atomic/components/show-hide-button.js.map +1 -1
  121. package/dist/atomic/components/smart-snippet-common.js +15 -0
  122. package/dist/atomic/components/smart-snippet-common.js.map +1 -1
  123. package/dist/atomic/components/smart-snippet-feedback-modal-common.js +21 -0
  124. package/dist/atomic/components/smart-snippet-feedback-modal-common.js.map +1 -1
  125. package/dist/atomic/components/smart-snippet-suggestions-common.js +18 -0
  126. package/dist/atomic/components/smart-snippet-suggestions-common.js.map +1 -1
  127. package/dist/atomic/components/stencil-button.js +1 -1
  128. package/dist/atomic/components/stencil-button.js.map +1 -1
  129. package/dist/atomic/components/stencil-carousel.js +3 -0
  130. package/dist/atomic/components/stencil-carousel.js.map +1 -1
  131. package/dist/atomic/components/stencil-checkbox.js +1 -1
  132. package/dist/atomic/components/stencil-checkbox.js.map +1 -1
  133. package/dist/atomic/components/stencil-display-grid.js +3 -0
  134. package/dist/atomic/components/stencil-display-grid.js.map +1 -1
  135. package/dist/atomic/components/stencil-display-wrapper.js +6 -0
  136. package/dist/atomic/components/stencil-display-wrapper.js.map +1 -1
  137. package/dist/atomic/components/stencil-facet-header.js +6 -0
  138. package/dist/atomic/components/stencil-facet-header.js.map +1 -1
  139. package/dist/atomic/components/stencil-facet-search-matches.js +6 -0
  140. package/dist/atomic/components/stencil-facet-search-matches.js.map +1 -1
  141. package/dist/atomic/components/stencil-facet-show-more-less.js +3 -0
  142. package/dist/atomic/components/stencil-facet-show-more-less.js.map +1 -1
  143. package/dist/atomic/components/stencil-facet-value-box.js +3 -0
  144. package/dist/atomic/components/stencil-facet-value-box.js.map +1 -1
  145. package/dist/atomic/components/stencil-facet-value-checkbox.js +7 -2
  146. package/dist/atomic/components/stencil-facet-value-checkbox.js.map +1 -1
  147. package/dist/atomic/components/stencil-facet-value-label-highlight.js +3 -0
  148. package/dist/atomic/components/stencil-facet-value-label-highlight.js.map +1 -1
  149. package/dist/atomic/components/stencil-facet-value-link.js +3 -0
  150. package/dist/atomic/components/stencil-facet-value-link.js.map +1 -1
  151. package/dist/atomic/components/stencil-facet-value.js +3 -0
  152. package/dist/atomic/components/stencil-facet-value.js.map +1 -1
  153. package/dist/atomic/components/stencil-facet-values-group.js +3 -0
  154. package/dist/atomic/components/stencil-facet-values-group.js.map +1 -1
  155. package/dist/atomic/components/stencil-fieldset-group.js +3 -0
  156. package/dist/atomic/components/stencil-fieldset-group.js.map +1 -1
  157. package/dist/atomic/components/stencil-heading.js +1 -1
  158. package/dist/atomic/components/stencil-heading.js.map +1 -1
  159. package/dist/atomic/components/stencil-iconButton.js +3 -0
  160. package/dist/atomic/components/stencil-iconButton.js.map +1 -1
  161. package/dist/atomic/components/stencil-item-link.js +3 -0
  162. package/dist/atomic/components/stencil-item-link.js.map +1 -1
  163. package/dist/atomic/components/stencil-link.js +24 -1
  164. package/dist/atomic/components/stencil-link.js.map +1 -1
  165. package/dist/atomic/components/stencil-magnifying-glass.js +6 -0
  166. package/dist/atomic/components/stencil-magnifying-glass.js.map +1 -1
  167. package/dist/atomic/components/stencil-modal.js +3 -0
  168. package/dist/atomic/components/stencil-modal.js.map +1 -1
  169. package/dist/atomic/components/stencil-placeholders.js +6 -0
  170. package/dist/atomic/components/stencil-placeholders.js.map +1 -1
  171. package/dist/atomic/components/stencil-query-suggestions.js +12 -0
  172. package/dist/atomic/components/stencil-query-suggestions.js.map +1 -1
  173. package/dist/atomic/components/stencil-radio-button.js +1 -1
  174. package/dist/atomic/components/stencil-radio-button.js.map +1 -1
  175. package/dist/atomic/components/stencil-rating.js +5 -2
  176. package/dist/atomic/components/stencil-rating.js.map +1 -1
  177. package/dist/atomic/components/{result-template-decorators.js → stencil-result-template-decorators.js} +6 -2
  178. package/dist/atomic/components/stencil-result-template-decorators.js.map +1 -0
  179. package/dist/atomic/components/stencil-suggestion-manager.js +10 -1
  180. package/dist/atomic/components/stencil-suggestion-manager.js.map +1 -1
  181. package/dist/atomic/components/stencil-tips.js +9 -0
  182. package/dist/atomic/components/stencil-tips.js.map +1 -1
  183. package/dist/atomic/components/stencil-values-container.js +6 -0
  184. package/dist/atomic/components/stencil-values-container.js.map +1 -1
  185. package/dist/atomic/index.esm.js +1 -1
  186. package/dist/atomic/index.esm.js.map +1 -1
  187. package/dist/atomic/lang/cs.json +1 -1
  188. package/dist/atomic/lang/da.json +1 -1
  189. package/dist/atomic/lang/de.json +1 -1
  190. package/dist/atomic/lang/dev.json +1 -1
  191. package/dist/atomic/lang/el.json +1 -1
  192. package/dist/atomic/lang/en.json +1 -1
  193. package/dist/atomic/lang/es.json +1 -1
  194. package/dist/atomic/lang/fi.json +1 -1
  195. package/dist/atomic/lang/fr.json +1 -1
  196. package/dist/atomic/lang/hu.json +1 -1
  197. package/dist/atomic/lang/id.json +1 -1
  198. package/dist/atomic/lang/it.json +1 -1
  199. package/dist/atomic/lang/ja.json +1 -1
  200. package/dist/atomic/lang/ko.json +1 -1
  201. package/dist/atomic/lang/nl.json +1 -1
  202. package/dist/atomic/lang/no.json +1 -1
  203. package/dist/atomic/lang/pl.json +1 -1
  204. package/dist/atomic/lang/pt-BR.json +1 -1
  205. package/dist/atomic/lang/pt.json +1 -1
  206. package/dist/atomic/lang/ru.json +1 -1
  207. package/dist/atomic/lang/sv.json +1 -1
  208. package/dist/atomic/lang/th.json +1 -1
  209. package/dist/atomic/lang/tr.json +1 -1
  210. package/dist/atomic/lang/zh-CN.json +1 -1
  211. package/dist/atomic/lang/zh-TW.json +1 -1
  212. package/dist/atomic/lang/zh.json +1 -1
  213. package/dist/atomic/{p-851b9735.entry.js → p-030c0435.entry.js} +2 -2
  214. package/dist/atomic/p-030c0435.entry.js.map +1 -0
  215. package/dist/atomic/{p-5606819d.entry.js → p-039bd7df.entry.js} +2 -2
  216. package/dist/atomic/{p-448091f7.entry.js → p-06463927.entry.js} +2 -2
  217. package/dist/atomic/p-06463927.entry.js.map +1 -0
  218. package/dist/atomic/{p-187193bb.js → p-0ed25035.js} +1 -1
  219. package/dist/atomic/p-0ed25035.js.map +1 -0
  220. package/dist/atomic/{p-66166975.entry.js → p-12be5e47.entry.js} +2 -2
  221. package/dist/atomic/p-12be5e47.entry.js.map +1 -0
  222. package/dist/atomic/{p-22b76c96.entry.js → p-13ac0c72.entry.js} +2 -2
  223. package/dist/atomic/{p-77d00da1.entry.js → p-15697c4b.entry.js} +2 -2
  224. package/dist/atomic/{p-b93ccff9.js → p-1a093634.js} +1 -1
  225. package/dist/atomic/p-1a093634.js.map +1 -0
  226. package/dist/atomic/{p-a5bac939.js → p-1b11f219.js} +1 -1
  227. package/dist/atomic/p-1b11f219.js.map +1 -0
  228. package/dist/atomic/{p-14bad769.entry.js → p-1d6d0186.entry.js} +2 -2
  229. package/dist/atomic/{p-48bab1a6.entry.js → p-1f903f31.entry.js} +2 -2
  230. package/dist/atomic/{p-db3b11ca.entry.js → p-2033533c.entry.js} +2 -2
  231. package/dist/atomic/{p-db3b11ca.entry.js.map → p-2033533c.entry.js.map} +1 -1
  232. package/dist/atomic/{p-d2e8a2d4.js → p-21dd38ad.js} +2 -2
  233. package/dist/atomic/p-21dd38ad.js.map +1 -0
  234. package/dist/atomic/{p-47b41b27.entry.js → p-24bb7b3d.entry.js} +2 -2
  235. package/dist/atomic/p-254846bb.js +2 -0
  236. package/dist/atomic/p-254846bb.js.map +1 -0
  237. package/dist/atomic/{p-4069d801.entry.js → p-268ce7ca.entry.js} +2 -2
  238. package/dist/atomic/p-268ce7ca.entry.js.map +1 -0
  239. package/dist/atomic/{p-6439156c.entry.js → p-2ab385b8.entry.js} +2 -2
  240. package/dist/atomic/p-2ab385b8.entry.js.map +1 -0
  241. package/dist/atomic/{p-6698d5e9.entry.js → p-2e9ecdf5.entry.js} +2 -2
  242. package/dist/atomic/{p-76c14d82.entry.js → p-32544f8a.entry.js} +2 -2
  243. package/dist/atomic/{p-e988f378.js → p-3881d7ec.js} +1 -1
  244. package/dist/atomic/p-3881d7ec.js.map +1 -0
  245. package/dist/atomic/{p-a6dde0f6.entry.js → p-390deb3d.entry.js} +2 -2
  246. package/dist/atomic/{p-2f437b47.entry.js → p-3b632123.entry.js} +2 -2
  247. package/dist/atomic/{p-7da7b187.js → p-3c2b932c.js} +1 -1
  248. package/dist/atomic/p-3c2b932c.js.map +1 -0
  249. package/dist/atomic/{p-21ab7750.entry.js → p-3e1b3a6d.entry.js} +2 -2
  250. package/dist/atomic/{p-21ab7750.entry.js.map → p-3e1b3a6d.entry.js.map} +1 -1
  251. package/dist/atomic/{p-e9dc8e90.entry.js → p-3ec45f9c.entry.js} +2 -2
  252. package/dist/atomic/p-3ec45f9c.entry.js.map +1 -0
  253. package/dist/atomic/p-40345c70.js +2 -0
  254. package/dist/atomic/p-40345c70.js.map +1 -0
  255. package/dist/atomic/{p-18684d4c.js → p-4080f740.js} +1 -1
  256. package/dist/atomic/p-4080f740.js.map +1 -0
  257. package/dist/atomic/{p-3a01a398.entry.js → p-43fc38fb.entry.js} +2 -2
  258. package/dist/atomic/{p-dd24c66a.entry.js → p-443f3422.entry.js} +2 -2
  259. package/dist/atomic/{p-b29d121c.js → p-4651cceb.js} +2 -2
  260. package/dist/atomic/{p-400c28b6.entry.js → p-498771d3.entry.js} +2 -2
  261. package/dist/atomic/{p-f8b608ba.js → p-4a73e01b.js} +2 -2
  262. package/dist/atomic/p-4a73e01b.js.map +1 -0
  263. package/dist/atomic/{p-190ddaca.entry.js → p-4cf97b0a.entry.js} +2 -2
  264. package/dist/atomic/p-4cf97b0a.entry.js.map +1 -0
  265. package/dist/atomic/{p-15547bd5.entry.js → p-52663c66.entry.js} +2 -2
  266. package/dist/atomic/p-52663c66.entry.js.map +1 -0
  267. package/dist/atomic/{p-558f2191.entry.js → p-52878b95.entry.js} +2 -2
  268. package/dist/atomic/{p-c8190eb9.entry.js → p-5a644e15.entry.js} +2 -2
  269. package/dist/atomic/{p-78427c6a.entry.js → p-5a9460ab.entry.js} +2 -2
  270. package/dist/atomic/p-5a9460ab.entry.js.map +1 -0
  271. package/dist/atomic/{p-dea22a8d.entry.js → p-5b65473e.entry.js} +2 -2
  272. package/dist/atomic/p-5b65473e.entry.js.map +1 -0
  273. package/dist/atomic/{p-479cb38a.entry.js → p-5d4e9821.entry.js} +2 -2
  274. package/dist/atomic/p-5e6efd8e.js +2 -0
  275. package/dist/atomic/p-5e6efd8e.js.map +1 -0
  276. package/dist/atomic/{p-82cd6398.entry.js → p-5e6ff8f8.entry.js} +2 -2
  277. package/dist/atomic/{p-82cd6398.entry.js.map → p-5e6ff8f8.entry.js.map} +1 -1
  278. package/dist/atomic/{p-2c6f895f.js → p-64dfda2d.js} +2 -2
  279. package/dist/atomic/p-64dfda2d.js.map +1 -0
  280. package/dist/atomic/{p-af93b44c.js → p-659bddc4.js} +1 -1
  281. package/dist/atomic/p-659bddc4.js.map +1 -0
  282. package/dist/atomic/{p-955092ed.entry.js → p-67f62282.entry.js} +2 -2
  283. package/dist/atomic/p-67f62282.entry.js.map +1 -0
  284. package/dist/atomic/{p-1ff7a9da.entry.js → p-6a3b139f.entry.js} +2 -2
  285. package/dist/atomic/p-6a3b139f.entry.js.map +1 -0
  286. package/dist/atomic/p-6d0e9fad.entry.js.map +1 -1
  287. package/dist/atomic/{p-b84108f3.entry.js → p-6d323b9a.entry.js} +2 -2
  288. package/dist/atomic/{p-088d634c.entry.js → p-733a8082.entry.js} +2 -2
  289. package/dist/atomic/{p-b1b583a0.entry.js → p-74380cbc.entry.js} +2 -2
  290. package/dist/atomic/{p-35c2ee5f.entry.js → p-752f4533.entry.js} +2 -2
  291. package/dist/atomic/{p-bd2703e9.js → p-7a7ce0d5.js} +1 -1
  292. package/dist/atomic/p-7a7ce0d5.js.map +1 -0
  293. package/dist/atomic/{p-ef8f2239.entry.js → p-7afa3c6a.entry.js} +2 -2
  294. package/dist/atomic/{p-db2d92c5.entry.js → p-7b8607e0.entry.js} +2 -2
  295. package/dist/atomic/{p-7741124a.entry.js → p-7c87512d.entry.js} +2 -2
  296. package/dist/atomic/{p-f0c657f4.entry.js → p-84a6ee68.entry.js} +2 -2
  297. package/dist/atomic/p-84a6ee68.entry.js.map +1 -0
  298. package/dist/atomic/{p-8d5228da.entry.js → p-850fa320.entry.js} +2 -2
  299. package/dist/atomic/p-850fa320.entry.js.map +1 -0
  300. package/dist/atomic/{p-33245038.entry.js → p-86bba9db.entry.js} +2 -2
  301. package/dist/atomic/{p-5d0a3045.js → p-8aec7860.js} +2 -2
  302. package/dist/atomic/p-8aec7860.js.map +1 -0
  303. package/dist/atomic/{p-e49ad083.entry.js → p-8b1b1784.entry.js} +2 -2
  304. package/dist/atomic/p-8b1b1784.entry.js.map +1 -0
  305. package/dist/atomic/{p-b3f6561d.entry.js → p-8e964890.entry.js} +2 -2
  306. package/dist/atomic/p-8e964890.entry.js.map +1 -0
  307. package/dist/atomic/{p-bd01acd5.entry.js → p-93b392fa.entry.js} +2 -2
  308. package/dist/atomic/p-93b392fa.entry.js.map +1 -0
  309. package/dist/atomic/{p-318c96f5.entry.js → p-9519e656.entry.js} +2 -2
  310. package/dist/atomic/{p-70747efa.entry.js → p-951bdd73.entry.js} +2 -2
  311. package/dist/atomic/{p-81bdbd07.entry.js → p-953fe202.entry.js} +2 -2
  312. package/dist/atomic/p-953fe202.entry.js.map +1 -0
  313. package/dist/atomic/{p-5a83b7e5.entry.js → p-99bb5042.entry.js} +2 -2
  314. package/dist/atomic/{p-fc71835d.entry.js → p-99d0c865.entry.js} +2 -2
  315. package/dist/atomic/p-9aad555a.entry.js.map +1 -1
  316. package/dist/atomic/{p-5c73ebc4.js → p-9b447b7d.js} +2 -2
  317. package/dist/atomic/p-9b447b7d.js.map +1 -0
  318. package/dist/atomic/{p-b628ed03.entry.js → p-9c97d77d.entry.js} +2 -2
  319. package/dist/atomic/p-9c97d77d.entry.js.map +1 -0
  320. package/dist/atomic/{p-82398f4a.js → p-9ce62a67.js} +2 -2
  321. package/dist/atomic/p-9ce62a67.js.map +1 -0
  322. package/dist/atomic/{p-80290dd3.entry.js → p-9d492524.entry.js} +2 -2
  323. package/dist/atomic/{p-4b1dc787.js → p-a24a63d6.js} +1 -1
  324. package/dist/atomic/p-a24a63d6.js.map +1 -0
  325. package/dist/atomic/{p-8a488991.js → p-aa0139e0.js} +2 -2
  326. package/dist/atomic/p-aa0139e0.js.map +1 -0
  327. package/dist/atomic/p-ac03c9a7.js +2 -0
  328. package/dist/atomic/{p-5a2ef889.js.map → p-ac03c9a7.js.map} +1 -1
  329. package/dist/atomic/{p-d0ab0125.entry.js → p-b0a20358.entry.js} +2 -2
  330. package/dist/atomic/{p-0ee7cab8.entry.js → p-b0f6a52e.entry.js} +2 -2
  331. package/dist/atomic/{p-c619df9b.js → p-b58c1424.js} +2 -2
  332. package/dist/atomic/p-b58c1424.js.map +1 -0
  333. package/dist/atomic/{p-017aa785.entry.js → p-b72d3af6.entry.js} +2 -2
  334. package/dist/atomic/p-b85c2c46.entry.js.map +1 -1
  335. package/dist/atomic/{p-66d48d1a.js → p-b8e66e99.js} +1 -1
  336. package/dist/atomic/p-b8e66e99.js.map +1 -0
  337. package/dist/atomic/{p-037eee11.js → p-baebeae3.js} +2 -2
  338. package/dist/atomic/p-baebeae3.js.map +1 -0
  339. package/dist/atomic/{p-a428960a.js → p-bca5b379.js} +2 -2
  340. package/dist/atomic/p-bca5b379.js.map +1 -0
  341. package/dist/atomic/{p-e6871a3f.entry.js → p-bef3a536.entry.js} +2 -2
  342. package/dist/atomic/{p-7fe23afc.entry.js → p-bf0a780e.entry.js} +2 -2
  343. package/dist/atomic/{p-9b2561e8.entry.js → p-bfb2e085.entry.js} +2 -2
  344. package/dist/atomic/{p-f1241140.entry.js → p-c0491e26.entry.js} +2 -2
  345. package/dist/atomic/{p-e276c7e0.entry.js → p-c1cd0a45.entry.js} +2 -2
  346. package/dist/atomic/{p-1f059522.js → p-c3451367.js} +1 -1
  347. package/dist/atomic/p-c3451367.js.map +1 -0
  348. package/dist/atomic/{p-852cc16d.entry.js → p-c402cc93.entry.js} +2 -2
  349. package/dist/atomic/p-c402cc93.entry.js.map +1 -0
  350. package/dist/atomic/{p-c2a5dac0.entry.js → p-c51d050f.entry.js} +2 -2
  351. package/dist/atomic/p-c51d050f.entry.js.map +1 -0
  352. package/dist/atomic/{p-1910eb7f.entry.js → p-c52c9e67.entry.js} +2 -2
  353. package/dist/atomic/{p-5cab535b.entry.js → p-c5bd7f8d.entry.js} +2 -2
  354. package/dist/atomic/p-c5bd7f8d.entry.js.map +1 -0
  355. package/dist/atomic/{p-7cb0050f.js → p-c727ec2d.js} +1 -1
  356. package/dist/atomic/p-c727ec2d.js.map +1 -0
  357. package/dist/atomic/{p-ae69f519.entry.js → p-cc963c10.entry.js} +2 -2
  358. package/dist/atomic/{p-ae69f519.entry.js.map → p-cc963c10.entry.js.map} +1 -1
  359. package/dist/atomic/p-ccb5ae69.js +2 -0
  360. package/dist/atomic/p-ccb5ae69.js.map +1 -0
  361. package/dist/atomic/{p-df8d38ca.entry.js → p-cd021c46.entry.js} +2 -2
  362. package/dist/atomic/p-cd021c46.entry.js.map +1 -0
  363. package/dist/atomic/{p-e455330c.entry.js → p-cd4394fe.entry.js} +2 -2
  364. package/dist/atomic/{p-c5164dbf.entry.js → p-cee86cff.entry.js} +2 -2
  365. package/dist/atomic/p-cee86cff.entry.js.map +1 -0
  366. package/dist/atomic/{p-4cb91ee7.entry.js → p-d5402772.entry.js} +2 -2
  367. package/dist/atomic/p-d5402772.entry.js.map +1 -0
  368. package/dist/atomic/{p-f37dea9e.entry.js → p-d5f4597b.entry.js} +2 -2
  369. package/dist/atomic/{p-307e7fd5.js → p-d72be8c2.js} +1 -1
  370. package/dist/atomic/p-d72be8c2.js.map +1 -0
  371. package/dist/atomic/p-d8caa4d8.entry.js.map +1 -1
  372. package/dist/atomic/{p-3bd8469f.entry.js → p-d944704c.entry.js} +2 -2
  373. package/dist/atomic/p-d944704c.entry.js.map +1 -0
  374. package/dist/atomic/{p-e6dc9de7.entry.js → p-da141605.entry.js} +2 -2
  375. package/dist/atomic/p-da141605.entry.js.map +1 -0
  376. package/dist/atomic/{p-8e5e00b4.js → p-da3fdf6d.js} +1 -1
  377. package/dist/atomic/p-da3fdf6d.js.map +1 -0
  378. package/dist/atomic/{p-57049cd2.entry.js → p-dbfd92ab.entry.js} +2 -2
  379. package/dist/atomic/p-dbfd92ab.entry.js.map +1 -0
  380. package/dist/atomic/{p-a1798150.entry.js → p-dd258eaa.entry.js} +2 -2
  381. package/dist/atomic/p-dd258eaa.entry.js.map +1 -0
  382. package/dist/atomic/{p-74862002.js → p-ddfbc97a.js} +2 -2
  383. package/dist/atomic/p-ddfbc97a.js.map +1 -0
  384. package/dist/atomic/{p-d4c2b7c0.js → p-defc2481.js} +1 -1
  385. package/dist/atomic/{p-d4c2b7c0.js.map → p-defc2481.js.map} +1 -1
  386. package/dist/atomic/{p-7242b46e.entry.js → p-e1052201.entry.js} +2 -2
  387. package/dist/atomic/{p-945ddd53.entry.js → p-e1dbe31d.entry.js} +2 -2
  388. package/dist/atomic/p-e1dbe31d.entry.js.map +1 -0
  389. package/dist/atomic/{p-dbc09018.js → p-e2fdbbd9.js} +2 -2
  390. package/dist/atomic/p-e2fdbbd9.js.map +1 -0
  391. package/dist/atomic/{p-874f0a4c.entry.js → p-e46e05cb.entry.js} +2 -2
  392. package/dist/atomic/{p-be5d3c54.js → p-e5e2aa64.js} +1 -1
  393. package/dist/atomic/p-e5e2aa64.js.map +1 -0
  394. package/dist/atomic/{p-182f9112.entry.js → p-e809b959.entry.js} +2 -2
  395. package/dist/atomic/p-e809b959.entry.js.map +1 -0
  396. package/dist/atomic/{p-0535b93d.entry.js → p-eca826bd.entry.js} +2 -2
  397. package/dist/atomic/p-eca826bd.entry.js.map +1 -0
  398. package/dist/atomic/{p-a54f3f24.entry.js → p-ee19b388.entry.js} +2 -2
  399. package/dist/atomic/{p-baff6c43.js → p-efd33bd9.js} +2 -2
  400. package/dist/atomic/p-efd33bd9.js.map +1 -0
  401. package/dist/atomic/{p-20cbcfb9.js → p-f0e695ab.js} +2 -2
  402. package/dist/atomic/p-f0e695ab.js.map +1 -0
  403. package/dist/atomic/{p-7045745d.entry.js → p-f25c9582.entry.js} +2 -2
  404. package/dist/atomic/{p-567b2841.entry.js → p-f3eaea67.entry.js} +2 -2
  405. package/dist/atomic/{p-ef78082a.js → p-f56b1fd6.js} +2 -2
  406. package/dist/atomic/p-f56b1fd6.js.map +1 -0
  407. package/dist/atomic/{p-e8176ac8.entry.js → p-f77a5952.entry.js} +2 -2
  408. package/dist/atomic/{p-8b0d881e.entry.js → p-f7b4ce31.entry.js} +2 -2
  409. package/dist/atomic/p-f7b4ce31.entry.js.map +1 -0
  410. package/dist/atomic/p-f800678c.entry.js.map +1 -1
  411. package/dist/atomic/{p-9e6462cf.entry.js → p-f8f80cbe.entry.js} +2 -2
  412. package/dist/atomic/p-f8f80cbe.entry.js.map +1 -0
  413. package/dist/atomic/{p-99d4c4bf.entry.js → p-fdaf9f6c.entry.js} +2 -2
  414. package/dist/atomic/{p-fd1ef9e3.entry.js → p-fdd6264f.entry.js} +2 -2
  415. package/dist/atomic/{p-2f517a54.entry.js → p-ff263c5e.entry.js} +2 -2
  416. package/dist/atomic/p-ff263c5e.entry.js.map +1 -0
  417. package/dist/cjs/_index.cjs.js +20 -20
  418. package/dist/cjs/atomic-automatic-facet_2.cjs.entry.js +8 -8
  419. package/dist/cjs/atomic-breadbox.cjs.entry.js +19 -1
  420. package/dist/cjs/atomic-breadbox.cjs.entry.js.map +1 -1
  421. package/dist/cjs/atomic-category-facet.cjs.entry.js +37 -10
  422. package/dist/cjs/atomic-category-facet.cjs.entry.js.map +1 -1
  423. package/dist/cjs/atomic-citation.cjs.entry.js +2 -2
  424. package/dist/cjs/atomic-color-facet.cjs.entry.js +12 -9
  425. package/dist/cjs/atomic-color-facet.cjs.entry.js.map +1 -1
  426. package/dist/cjs/atomic-did-you-mean.cjs.entry.js +12 -1
  427. package/dist/cjs/atomic-did-you-mean.cjs.entry.js.map +1 -1
  428. package/dist/cjs/atomic-facet-number-input.cjs.entry.js +1 -1
  429. package/dist/cjs/atomic-facet.cjs.entry.js +20 -14
  430. package/dist/cjs/atomic-facet.cjs.entry.js.map +1 -1
  431. package/dist/cjs/atomic-field-condition.cjs.entry.js +2 -2
  432. package/dist/cjs/atomic-field-condition.cjs.entry.js.map +1 -1
  433. package/dist/cjs/atomic-folded-result-list.cjs.entry.js +3 -3
  434. package/dist/cjs/atomic-generated-answer-feedback-modal.cjs.entry.js +4 -4
  435. package/dist/cjs/atomic-generated-answer.cjs.entry.js +4 -4
  436. package/dist/cjs/atomic-generated-answer.cjs.entry.js.map +1 -1
  437. package/dist/cjs/atomic-insight-edit-toggle.cjs.entry.js +2 -2
  438. package/dist/cjs/atomic-insight-facet.cjs.entry.js +13 -13
  439. package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js +3 -3
  440. package/dist/cjs/atomic-insight-full-search-button.cjs.entry.js +2 -2
  441. package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js +4 -4
  442. package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js.map +1 -1
  443. package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js +2 -2
  444. package/dist/cjs/atomic-insight-no-results.cjs.entry.js +2 -2
  445. package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js +11 -11
  446. package/dist/cjs/atomic-insight-pager.cjs.entry.js +7 -7
  447. package/dist/cjs/atomic-insight-pager.cjs.entry.js.map +1 -1
  448. package/dist/cjs/atomic-insight-query-error.cjs.entry.js +2 -2
  449. package/dist/cjs/atomic-insight-query-summary.cjs.entry.js +9 -0
  450. package/dist/cjs/atomic-insight-query-summary.cjs.entry.js.map +1 -1
  451. package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js +2 -2
  452. package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js +2 -2
  453. package/dist/cjs/atomic-insight-result-action.cjs.entry.js +5 -5
  454. package/dist/cjs/atomic-insight-result-action.cjs.entry.js.map +1 -1
  455. package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js +5 -5
  456. package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js.map +1 -1
  457. package/dist/cjs/atomic-insight-result-attach-to-case-indicator.cjs.entry.js +3 -3
  458. package/dist/cjs/atomic-insight-result-attach-to-case-indicator.cjs.entry.js.map +1 -1
  459. package/dist/cjs/atomic-insight-result-children.cjs.entry.js +3 -3
  460. package/dist/cjs/atomic-insight-result-list.cjs.entry.js +3 -3
  461. package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js +5 -5
  462. package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js.map +1 -1
  463. package/dist/cjs/atomic-insight-search-box.cjs.entry.js +3 -3
  464. package/dist/cjs/atomic-insight-smart-snippet-feedback-modal.cjs.entry.js +2 -2
  465. package/dist/cjs/atomic-insight-smart-snippet-suggestions.cjs.entry.js +3 -3
  466. package/dist/cjs/atomic-insight-smart-snippet.cjs.entry.js +4 -4
  467. package/dist/cjs/atomic-insight-tab.cjs.entry.js +1 -1
  468. package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js +8 -8
  469. package/dist/cjs/atomic-insight-user-actions-modal.cjs.entry.js +1 -1
  470. package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js +5 -2
  471. package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js.map +1 -1
  472. package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js +2 -2
  473. package/dist/cjs/atomic-ipx-button.cjs.entry.js +1 -1
  474. package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +6 -6
  475. package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js +2 -2
  476. package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js +2 -2
  477. package/dist/cjs/atomic-ipx-result-link.cjs.entry.js +5 -5
  478. package/dist/cjs/atomic-ipx-result-link.cjs.entry.js.map +1 -1
  479. package/dist/cjs/atomic-ipx-tab.cjs.entry.js +1 -1
  480. package/dist/cjs/atomic-load-more-results.cjs.entry.js +14 -2
  481. package/dist/cjs/atomic-load-more-results.cjs.entry.js.map +1 -1
  482. package/dist/cjs/atomic-no-results.cjs.entry.js +6 -3
  483. package/dist/cjs/atomic-no-results.cjs.entry.js.map +1 -1
  484. package/dist/cjs/atomic-notifications.cjs.entry.js +1 -1
  485. package/dist/cjs/atomic-numeric-facet.cjs.entry.js +11 -11
  486. package/dist/cjs/atomic-popover.cjs.entry.js +1 -1
  487. package/dist/cjs/atomic-query-error.cjs.entry.js +2 -2
  488. package/dist/cjs/atomic-quickview-modal.cjs.entry.js +9 -6
  489. package/dist/cjs/atomic-quickview-modal.cjs.entry.js.map +1 -1
  490. package/dist/cjs/atomic-quickview.cjs.entry.js +4 -4
  491. package/dist/cjs/atomic-quickview.cjs.entry.js.map +1 -1
  492. package/dist/cjs/atomic-rating-facet.cjs.entry.js +9 -9
  493. package/dist/cjs/atomic-rating-range-facet.cjs.entry.js +7 -7
  494. package/dist/cjs/atomic-recs-error.cjs.entry.js +2 -2
  495. package/dist/cjs/atomic-recs-interface.cjs.entry.js +1 -1
  496. package/dist/cjs/atomic-recs-list.cjs.entry.js +6 -6
  497. package/dist/cjs/atomic-refine-modal.cjs.entry.js +14 -2
  498. package/dist/cjs/atomic-refine-modal.cjs.entry.js.map +1 -1
  499. package/dist/cjs/atomic-refine-toggle.cjs.entry.js +7 -1
  500. package/dist/cjs/atomic-refine-toggle.cjs.entry.js.map +1 -1
  501. package/dist/cjs/atomic-result-badge.cjs.entry.js +2 -2
  502. package/dist/cjs/atomic-result-badge.cjs.entry.js.map +1 -1
  503. package/dist/cjs/atomic-result-children.cjs.entry.js +6 -6
  504. package/dist/cjs/atomic-result-children.cjs.entry.js.map +1 -1
  505. package/dist/cjs/atomic-result-date.cjs.entry.js +2 -2
  506. package/dist/cjs/atomic-result-date.cjs.entry.js.map +1 -1
  507. package/dist/cjs/atomic-result-fields-list.cjs.entry.js +3 -3
  508. package/dist/cjs/atomic-result-fields-list.cjs.entry.js.map +1 -1
  509. package/dist/cjs/atomic-result-html.cjs.entry.js +2 -2
  510. package/dist/cjs/atomic-result-html.cjs.entry.js.map +1 -1
  511. package/dist/cjs/atomic-result-icon.cjs.entry.js +2 -2
  512. package/dist/cjs/atomic-result-icon.cjs.entry.js.map +1 -1
  513. package/dist/cjs/atomic-result-image.cjs.entry.js +2 -2
  514. package/dist/cjs/atomic-result-image.cjs.entry.js.map +1 -1
  515. package/dist/cjs/atomic-result-link.cjs.entry.js +5 -5
  516. package/dist/cjs/atomic-result-link.cjs.entry.js.map +1 -1
  517. package/dist/cjs/atomic-result-list.cjs.entry.js +16 -4
  518. package/dist/cjs/atomic-result-list.cjs.entry.js.map +1 -1
  519. package/dist/cjs/atomic-result-localized-text.cjs.entry.js +3 -3
  520. package/dist/cjs/atomic-result-localized-text.cjs.entry.js.map +1 -1
  521. package/dist/cjs/atomic-result-multi-value-text.cjs.entry.js +2 -2
  522. package/dist/cjs/atomic-result-multi-value-text.cjs.entry.js.map +1 -1
  523. package/dist/cjs/atomic-result-number.cjs.entry.js +2 -2
  524. package/dist/cjs/atomic-result-number.cjs.entry.js.map +1 -1
  525. package/dist/cjs/atomic-result-printable-uri.cjs.entry.js +3 -3
  526. package/dist/cjs/atomic-result-printable-uri.cjs.entry.js.map +1 -1
  527. package/dist/cjs/atomic-result-rating.cjs.entry.js +3 -3
  528. package/dist/cjs/atomic-result-rating.cjs.entry.js.map +1 -1
  529. package/dist/cjs/atomic-result-text_2.cjs.entry.js +8 -2
  530. package/dist/cjs/atomic-result-text_2.cjs.entry.js.map +1 -1
  531. package/dist/cjs/atomic-result-timespan.cjs.entry.js +2 -2
  532. package/dist/cjs/atomic-result-timespan.cjs.entry.js.map +1 -1
  533. package/dist/cjs/atomic-result.cjs.entry.js.map +1 -1
  534. package/dist/cjs/atomic-search-box-instant-results.cjs.entry.js +9 -0
  535. package/dist/cjs/atomic-search-box-instant-results.cjs.entry.js.map +1 -1
  536. package/dist/cjs/atomic-search-box-query-suggestions.cjs.entry.js +1 -1
  537. package/dist/cjs/atomic-search-box.cjs.entry.js +8 -9
  538. package/dist/cjs/atomic-search-box.cjs.entry.js.map +1 -1
  539. package/dist/cjs/atomic-segmented-facet-scrollable.cjs.entry.js +1 -1
  540. package/dist/cjs/atomic-segmented-facet.cjs.entry.js +6 -3
  541. package/dist/cjs/atomic-segmented-facet.cjs.entry.js.map +1 -1
  542. package/dist/cjs/atomic-smart-snippet-answer_2.cjs.entry.js +2 -2
  543. package/dist/cjs/atomic-smart-snippet-answer_2.cjs.entry.js.map +1 -1
  544. package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js +2 -2
  545. package/dist/cjs/atomic-smart-snippet-suggestions.cjs.entry.js +3 -3
  546. package/dist/cjs/atomic-smart-snippet.cjs.entry.js +4 -4
  547. package/dist/cjs/atomic-sort-dropdown.cjs.entry.js +15 -0
  548. package/dist/cjs/atomic-sort-dropdown.cjs.entry.js.map +1 -1
  549. package/dist/cjs/atomic-stencil-facet-date-input.cjs.entry.js +1 -1
  550. package/dist/cjs/atomic-tab-bar_2.cjs.entry.js +1 -1
  551. package/dist/cjs/atomic-tab-button.cjs.entry.js +1 -1
  552. package/dist/cjs/atomic-timeframe-facet.cjs.entry.js +8 -8
  553. package/dist/cjs/{facet-guard-328b588d.js → facet-guard-0e8cbe50.js} +4 -1
  554. package/dist/cjs/facet-guard-0e8cbe50.js.map +1 -0
  555. package/dist/cjs/{facet-placeholder-22074f05.js → facet-placeholder-5beb1e14.js} +12 -3
  556. package/dist/cjs/facet-placeholder-5beb1e14.js.map +1 -0
  557. package/dist/cjs/{generated-answer-common-3c400311.js → generated-answer-common-51e5b253.js} +30 -3
  558. package/dist/cjs/generated-answer-common-51e5b253.js.map +1 -0
  559. package/dist/cjs/index.cjs.js.map +1 -1
  560. package/dist/cjs/{item-list-guard-506b695a.js → item-list-guard-71a3f994.js} +4 -1
  561. package/dist/cjs/item-list-guard-71a3f994.js.map +1 -0
  562. package/dist/cjs/{show-hide-button-c4717f52.js → show-hide-button-cbf030a3.js} +15 -3
  563. package/dist/cjs/show-hide-button-cbf030a3.js.map +1 -0
  564. package/dist/cjs/{smart-snippet-common-1fd0dad5.js → smart-snippet-common-6a18743b.js} +19 -4
  565. package/dist/cjs/smart-snippet-common-6a18743b.js.map +1 -0
  566. package/dist/cjs/{smart-snippet-feedback-modal-common-9721e3c4.js → smart-snippet-feedback-modal-common-6048b7af.js} +23 -2
  567. package/dist/cjs/smart-snippet-feedback-modal-common-6048b7af.js.map +1 -0
  568. package/dist/cjs/{smart-snippet-suggestions-common-024c89b7.js → smart-snippet-suggestions-common-0a7adbfa.js} +21 -3
  569. package/dist/cjs/smart-snippet-suggestions-common-0a7adbfa.js.map +1 -0
  570. package/dist/cjs/{stencil-button-94b89acc.js → stencil-button-62b500e4.js} +2 -2
  571. package/dist/cjs/{stencil-button-94b89acc.js.map → stencil-button-62b500e4.js.map} +1 -1
  572. package/dist/cjs/{stencil-carousel-a8df6f3c.js → stencil-carousel-a605d26f.js} +5 -2
  573. package/dist/cjs/stencil-carousel-a605d26f.js.map +1 -0
  574. package/dist/cjs/{stencil-checkbox-81c51bbd.js → stencil-checkbox-6a2ad8d3.js} +2 -2
  575. package/dist/cjs/stencil-checkbox-6a2ad8d3.js.map +1 -0
  576. package/dist/cjs/{stencil-display-grid-93c5802a.js → stencil-display-grid-1f4e15ba.js} +4 -1
  577. package/dist/cjs/stencil-display-grid-1f4e15ba.js.map +1 -0
  578. package/dist/cjs/{stencil-display-wrapper-498de571.js → stencil-display-wrapper-b5c56fe9.js} +7 -1
  579. package/dist/cjs/stencil-display-wrapper-b5c56fe9.js.map +1 -0
  580. package/dist/cjs/{stencil-facet-search-matches-101e0ede.js → stencil-facet-search-matches-61418287.js} +9 -3
  581. package/dist/cjs/stencil-facet-search-matches-61418287.js.map +1 -0
  582. package/dist/cjs/{stencil-facet-show-more-less-70f4d20d.js → stencil-facet-show-more-less-8da6af80.js} +6 -3
  583. package/dist/cjs/stencil-facet-show-more-less-8da6af80.js.map +1 -0
  584. package/dist/cjs/{stencil-facet-value-box-11aa05dd.js → stencil-facet-value-box-dc7013fa.js} +5 -2
  585. package/dist/cjs/stencil-facet-value-box-dc7013fa.js.map +1 -0
  586. package/dist/cjs/{stencil-facet-value-5957b403.js → stencil-facet-value-c8a1fe99.js} +8 -5
  587. package/dist/cjs/stencil-facet-value-c8a1fe99.js.map +1 -0
  588. package/dist/cjs/{stencil-facet-value-checkbox-fed178ad.js → stencil-facet-value-checkbox-58251c1b.js} +10 -5
  589. package/dist/cjs/stencil-facet-value-checkbox-58251c1b.js.map +1 -0
  590. package/dist/cjs/{stencil-facet-value-label-highlight-c2421e8f.js → stencil-facet-value-label-highlight-16ea0e83.js} +4 -1
  591. package/dist/cjs/stencil-facet-value-label-highlight-16ea0e83.js.map +1 -0
  592. package/dist/cjs/{stencil-facet-value-link-8a095034.js → stencil-facet-value-link-8587369b.js} +5 -2
  593. package/dist/cjs/stencil-facet-value-link-8587369b.js.map +1 -0
  594. package/dist/cjs/{stencil-facet-values-group-07b50fc0.js → stencil-facet-values-group-332a2362.js} +5 -2
  595. package/dist/cjs/stencil-facet-values-group-332a2362.js.map +1 -0
  596. package/dist/cjs/{stencil-fieldset-group-3b25c138.js → stencil-fieldset-group-cc350109.js} +4 -1
  597. package/dist/cjs/stencil-fieldset-group-cc350109.js.map +1 -0
  598. package/dist/cjs/{stencil-heading-2faee1f7.js → stencil-heading-7e57d2eb.js} +2 -2
  599. package/dist/cjs/stencil-heading-7e57d2eb.js.map +1 -0
  600. package/dist/cjs/{stencil-iconButton-738b1548.js → stencil-iconButton-0f5e02fb.js} +5 -2
  601. package/dist/cjs/stencil-iconButton-0f5e02fb.js.map +1 -0
  602. package/dist/cjs/{stencil-item-link-9feaef61.js → stencil-item-link-3f38d5be.js} +4 -1
  603. package/dist/cjs/stencil-item-link-3f38d5be.js.map +1 -0
  604. package/dist/cjs/{stencil-link-9336b8c1.js → stencil-link-e392d9fa.js} +26 -3
  605. package/dist/cjs/stencil-link-e392d9fa.js.map +1 -0
  606. package/dist/cjs/{stencil-magnifying-glass-c1d386a1.js → stencil-magnifying-glass-e09449a3.js} +7 -1
  607. package/dist/cjs/stencil-magnifying-glass-e09449a3.js.map +1 -0
  608. package/dist/cjs/{stencil-modal-9035ea2a.js → stencil-modal-0c2539a2.js} +5 -2
  609. package/dist/cjs/stencil-modal-0c2539a2.js.map +1 -0
  610. package/dist/cjs/{stencil-placeholders-b8c896fa.js → stencil-placeholders-17e73823.js} +7 -1
  611. package/dist/cjs/stencil-placeholders-17e73823.js.map +1 -0
  612. package/dist/cjs/{stencil-query-suggestions-03268ecc.js → stencil-query-suggestions-6c623e4a.js} +13 -1
  613. package/dist/cjs/stencil-query-suggestions-6c623e4a.js.map +1 -0
  614. package/dist/cjs/{stencil-radio-button-ea7e71d3.js → stencil-radio-button-4f4ddc4d.js} +3 -3
  615. package/dist/cjs/stencil-radio-button-4f4ddc4d.js.map +1 -0
  616. package/dist/cjs/{stencil-rating-a40e50dd.js → stencil-rating-2b9b6345.js} +6 -3
  617. package/dist/cjs/stencil-rating-2b9b6345.js.map +1 -0
  618. package/dist/cjs/{result-template-decorators-432d11a9.js → stencil-result-template-decorators-28b05aaf.js} +6 -2
  619. package/dist/cjs/stencil-result-template-decorators-28b05aaf.js.map +1 -0
  620. package/dist/cjs/{stencil-suggestion-manager-88cb88f2.js → stencil-suggestion-manager-df2e5c45.js} +12 -3
  621. package/dist/cjs/stencil-suggestion-manager-df2e5c45.js.map +1 -0
  622. package/dist/cjs/{stencil-tips-e913f891.js → stencil-tips-ecad2e9f.js} +10 -1
  623. package/dist/cjs/stencil-tips-ecad2e9f.js.map +1 -0
  624. package/dist/cjs/{stencil-values-container-d20f9b28.js → stencil-values-container-239826f6.js} +11 -5
  625. package/dist/cjs/stencil-values-container-239826f6.js.map +1 -0
  626. package/dist/cjs/{timeframe-facet-common-4ea96ccb.js → timeframe-facet-common-cbd1b4c6.js} +5 -5
  627. package/dist/cjs/{timeframe-facet-common-4ea96ccb.js.map → timeframe-facet-common-cbd1b4c6.js.map} +1 -1
  628. package/dist/cjs/version.cjs.js +1 -1
  629. package/dist/esm/_index.js +19 -19
  630. package/dist/esm/atomic-automatic-facet_2.entry.js +8 -8
  631. package/dist/esm/atomic-breadbox.entry.js +19 -1
  632. package/dist/esm/atomic-breadbox.entry.js.map +1 -1
  633. package/dist/esm/atomic-category-facet.entry.js +37 -10
  634. package/dist/esm/atomic-category-facet.entry.js.map +1 -1
  635. package/dist/esm/atomic-citation.entry.js +2 -2
  636. package/dist/esm/atomic-color-facet.entry.js +12 -9
  637. package/dist/esm/atomic-color-facet.entry.js.map +1 -1
  638. package/dist/esm/atomic-did-you-mean.entry.js +12 -1
  639. package/dist/esm/atomic-did-you-mean.entry.js.map +1 -1
  640. package/dist/esm/atomic-facet-number-input.entry.js +1 -1
  641. package/dist/esm/atomic-facet.entry.js +20 -14
  642. package/dist/esm/atomic-facet.entry.js.map +1 -1
  643. package/dist/esm/atomic-field-condition.entry.js +1 -1
  644. package/dist/esm/atomic-field-condition.entry.js.map +1 -1
  645. package/dist/esm/atomic-folded-result-list.entry.js +3 -3
  646. package/dist/esm/atomic-generated-answer-feedback-modal.entry.js +4 -4
  647. package/dist/esm/atomic-generated-answer.entry.js +4 -4
  648. package/dist/esm/atomic-generated-answer.entry.js.map +1 -1
  649. package/dist/esm/atomic-insight-edit-toggle.entry.js +2 -2
  650. package/dist/esm/atomic-insight-facet.entry.js +13 -13
  651. package/dist/esm/atomic-insight-folded-result-list.entry.js +3 -3
  652. package/dist/esm/atomic-insight-full-search-button.entry.js +2 -2
  653. package/dist/esm/atomic-insight-generated-answer.entry.js +4 -4
  654. package/dist/esm/atomic-insight-generated-answer.entry.js.map +1 -1
  655. package/dist/esm/atomic-insight-history-toggle.entry.js +2 -2
  656. package/dist/esm/atomic-insight-no-results.entry.js +2 -2
  657. package/dist/esm/atomic-insight-numeric-facet.entry.js +11 -11
  658. package/dist/esm/atomic-insight-pager.entry.js +7 -7
  659. package/dist/esm/atomic-insight-pager.entry.js.map +1 -1
  660. package/dist/esm/atomic-insight-query-error.entry.js +2 -2
  661. package/dist/esm/atomic-insight-query-summary.entry.js +9 -0
  662. package/dist/esm/atomic-insight-query-summary.entry.js.map +1 -1
  663. package/dist/esm/atomic-insight-refine-modal.entry.js +2 -2
  664. package/dist/esm/atomic-insight-refine-toggle.entry.js +2 -2
  665. package/dist/esm/atomic-insight-result-action.entry.js +4 -4
  666. package/dist/esm/atomic-insight-result-action.entry.js.map +1 -1
  667. package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js +4 -4
  668. package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js.map +1 -1
  669. package/dist/esm/atomic-insight-result-attach-to-case-indicator.entry.js +2 -2
  670. package/dist/esm/atomic-insight-result-attach-to-case-indicator.entry.js.map +1 -1
  671. package/dist/esm/atomic-insight-result-children.entry.js +3 -3
  672. package/dist/esm/atomic-insight-result-list.entry.js +3 -3
  673. package/dist/esm/atomic-insight-result-quickview-action.entry.js +4 -4
  674. package/dist/esm/atomic-insight-result-quickview-action.entry.js.map +1 -1
  675. package/dist/esm/atomic-insight-search-box.entry.js +3 -3
  676. package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js +2 -2
  677. package/dist/esm/atomic-insight-smart-snippet-suggestions.entry.js +3 -3
  678. package/dist/esm/atomic-insight-smart-snippet.entry.js +4 -4
  679. package/dist/esm/atomic-insight-tab.entry.js +1 -1
  680. package/dist/esm/atomic-insight-timeframe-facet.entry.js +8 -8
  681. package/dist/esm/atomic-insight-user-actions-modal.entry.js +1 -1
  682. package/dist/esm/atomic-insight-user-actions-session_2.entry.js +5 -2
  683. package/dist/esm/atomic-insight-user-actions-session_2.entry.js.map +1 -1
  684. package/dist/esm/atomic-insight-user-actions-toggle.entry.js +2 -2
  685. package/dist/esm/atomic-ipx-button.entry.js +1 -1
  686. package/dist/esm/atomic-ipx-recs-list.entry.js +6 -6
  687. package/dist/esm/atomic-ipx-refine-modal.entry.js +2 -2
  688. package/dist/esm/atomic-ipx-refine-toggle.entry.js +2 -2
  689. package/dist/esm/atomic-ipx-result-link.entry.js +3 -3
  690. package/dist/esm/atomic-ipx-result-link.entry.js.map +1 -1
  691. package/dist/esm/atomic-ipx-tab.entry.js +1 -1
  692. package/dist/esm/atomic-load-more-results.entry.js +14 -2
  693. package/dist/esm/atomic-load-more-results.entry.js.map +1 -1
  694. package/dist/esm/atomic-no-results.entry.js +6 -3
  695. package/dist/esm/atomic-no-results.entry.js.map +1 -1
  696. package/dist/esm/atomic-notifications.entry.js +1 -1
  697. package/dist/esm/atomic-numeric-facet.entry.js +11 -11
  698. package/dist/esm/atomic-popover.entry.js +1 -1
  699. package/dist/esm/atomic-query-error.entry.js +2 -2
  700. package/dist/esm/atomic-quickview-modal.entry.js +9 -6
  701. package/dist/esm/atomic-quickview-modal.entry.js.map +1 -1
  702. package/dist/esm/atomic-quickview.entry.js +3 -3
  703. package/dist/esm/atomic-quickview.entry.js.map +1 -1
  704. package/dist/esm/atomic-rating-facet.entry.js +9 -9
  705. package/dist/esm/atomic-rating-range-facet.entry.js +7 -7
  706. package/dist/esm/atomic-recs-error.entry.js +2 -2
  707. package/dist/esm/atomic-recs-interface.entry.js +1 -1
  708. package/dist/esm/atomic-recs-list.entry.js +6 -6
  709. package/dist/esm/atomic-refine-modal.entry.js +14 -2
  710. package/dist/esm/atomic-refine-modal.entry.js.map +1 -1
  711. package/dist/esm/atomic-refine-toggle.entry.js +7 -1
  712. package/dist/esm/atomic-refine-toggle.entry.js.map +1 -1
  713. package/dist/esm/atomic-result-badge.entry.js +1 -1
  714. package/dist/esm/atomic-result-badge.entry.js.map +1 -1
  715. package/dist/esm/atomic-result-children.entry.js +5 -5
  716. package/dist/esm/atomic-result-children.entry.js.map +1 -1
  717. package/dist/esm/atomic-result-date.entry.js +1 -1
  718. package/dist/esm/atomic-result-date.entry.js.map +1 -1
  719. package/dist/esm/atomic-result-fields-list.entry.js +2 -2
  720. package/dist/esm/atomic-result-fields-list.entry.js.map +1 -1
  721. package/dist/esm/atomic-result-html.entry.js +1 -1
  722. package/dist/esm/atomic-result-html.entry.js.map +1 -1
  723. package/dist/esm/atomic-result-icon.entry.js +1 -1
  724. package/dist/esm/atomic-result-icon.entry.js.map +1 -1
  725. package/dist/esm/atomic-result-image.entry.js +1 -1
  726. package/dist/esm/atomic-result-image.entry.js.map +1 -1
  727. package/dist/esm/atomic-result-link.entry.js +3 -3
  728. package/dist/esm/atomic-result-link.entry.js.map +1 -1
  729. package/dist/esm/atomic-result-list.entry.js +16 -4
  730. package/dist/esm/atomic-result-list.entry.js.map +1 -1
  731. package/dist/esm/atomic-result-localized-text.entry.js +2 -2
  732. package/dist/esm/atomic-result-localized-text.entry.js.map +1 -1
  733. package/dist/esm/atomic-result-multi-value-text.entry.js +1 -1
  734. package/dist/esm/atomic-result-multi-value-text.entry.js.map +1 -1
  735. package/dist/esm/atomic-result-number.entry.js +1 -1
  736. package/dist/esm/atomic-result-number.entry.js.map +1 -1
  737. package/dist/esm/atomic-result-printable-uri.entry.js +2 -2
  738. package/dist/esm/atomic-result-printable-uri.entry.js.map +1 -1
  739. package/dist/esm/atomic-result-rating.entry.js +2 -2
  740. package/dist/esm/atomic-result-rating.entry.js.map +1 -1
  741. package/dist/esm/atomic-result-text_2.entry.js +7 -1
  742. package/dist/esm/atomic-result-text_2.entry.js.map +1 -1
  743. package/dist/esm/atomic-result-timespan.entry.js +1 -1
  744. package/dist/esm/atomic-result-timespan.entry.js.map +1 -1
  745. package/dist/esm/atomic-result.entry.js.map +1 -1
  746. package/dist/esm/atomic-search-box-instant-results.entry.js +9 -0
  747. package/dist/esm/atomic-search-box-instant-results.entry.js.map +1 -1
  748. package/dist/esm/atomic-search-box-query-suggestions.entry.js +1 -1
  749. package/dist/esm/atomic-search-box.entry.js +8 -9
  750. package/dist/esm/atomic-search-box.entry.js.map +1 -1
  751. package/dist/esm/atomic-segmented-facet-scrollable.entry.js +1 -1
  752. package/dist/esm/atomic-segmented-facet.entry.js +6 -3
  753. package/dist/esm/atomic-segmented-facet.entry.js.map +1 -1
  754. package/dist/esm/atomic-smart-snippet-answer_2.entry.js +2 -2
  755. package/dist/esm/atomic-smart-snippet-answer_2.entry.js.map +1 -1
  756. package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js +2 -2
  757. package/dist/esm/atomic-smart-snippet-suggestions.entry.js +3 -3
  758. package/dist/esm/atomic-smart-snippet.entry.js +4 -4
  759. package/dist/esm/atomic-sort-dropdown.entry.js +15 -0
  760. package/dist/esm/atomic-sort-dropdown.entry.js.map +1 -1
  761. package/dist/esm/atomic-stencil-facet-date-input.entry.js +1 -1
  762. package/dist/esm/atomic-tab-bar_2.entry.js +1 -1
  763. package/dist/esm/atomic-tab-button.entry.js +1 -1
  764. package/dist/esm/atomic-timeframe-facet.entry.js +8 -8
  765. package/dist/esm/{facet-guard-4b795e90.js → facet-guard-3bb4a306.js} +4 -1
  766. package/dist/esm/facet-guard-3bb4a306.js.map +1 -0
  767. package/dist/esm/{facet-placeholder-4959a92a.js → facet-placeholder-a4a46474.js} +12 -3
  768. package/dist/esm/facet-placeholder-a4a46474.js.map +1 -0
  769. package/dist/esm/{generated-answer-common-9d0c5ada.js → generated-answer-common-d5cc6e86.js} +30 -3
  770. package/dist/esm/generated-answer-common-d5cc6e86.js.map +1 -0
  771. package/dist/esm/index.js.map +1 -1
  772. package/dist/esm/{item-list-guard-22b0711a.js → item-list-guard-8cd62b09.js} +4 -1
  773. package/dist/esm/item-list-guard-8cd62b09.js.map +1 -0
  774. package/dist/esm/{show-hide-button-35eb419d.js → show-hide-button-8ed8d405.js} +15 -3
  775. package/dist/esm/show-hide-button-8ed8d405.js.map +1 -0
  776. package/dist/esm/{smart-snippet-common-5ed4bdfa.js → smart-snippet-common-f2a5e84f.js} +19 -4
  777. package/dist/esm/smart-snippet-common-f2a5e84f.js.map +1 -0
  778. package/dist/esm/{smart-snippet-feedback-modal-common-835aa607.js → smart-snippet-feedback-modal-common-63373ffc.js} +23 -2
  779. package/dist/esm/smart-snippet-feedback-modal-common-63373ffc.js.map +1 -0
  780. package/dist/esm/{smart-snippet-suggestions-common-10bd1697.js → smart-snippet-suggestions-common-eff6fbfa.js} +21 -3
  781. package/dist/esm/smart-snippet-suggestions-common-eff6fbfa.js.map +1 -0
  782. package/dist/esm/{stencil-button-1a29a5df.js → stencil-button-e72b213d.js} +2 -2
  783. package/dist/esm/{stencil-button-1a29a5df.js.map → stencil-button-e72b213d.js.map} +1 -1
  784. package/dist/esm/{stencil-carousel-e1f25f7c.js → stencil-carousel-ae19a5d0.js} +5 -2
  785. package/dist/esm/stencil-carousel-ae19a5d0.js.map +1 -0
  786. package/dist/esm/{stencil-checkbox-9d8fe5f6.js → stencil-checkbox-d165d303.js} +2 -2
  787. package/dist/esm/stencil-checkbox-d165d303.js.map +1 -0
  788. package/dist/esm/{stencil-display-grid-b9eb7397.js → stencil-display-grid-ebbdd169.js} +4 -1
  789. package/dist/esm/stencil-display-grid-ebbdd169.js.map +1 -0
  790. package/dist/esm/{stencil-display-wrapper-5b32e77c.js → stencil-display-wrapper-8cb4e48e.js} +7 -1
  791. package/dist/esm/stencil-display-wrapper-8cb4e48e.js.map +1 -0
  792. package/dist/esm/{stencil-facet-search-matches-872d94d2.js → stencil-facet-search-matches-b639b93f.js} +9 -3
  793. package/dist/esm/stencil-facet-search-matches-b639b93f.js.map +1 -0
  794. package/dist/esm/{stencil-facet-show-more-less-e575f20f.js → stencil-facet-show-more-less-4932bd9f.js} +6 -3
  795. package/dist/esm/stencil-facet-show-more-less-4932bd9f.js.map +1 -0
  796. package/dist/esm/{stencil-facet-value-9deafe8e.js → stencil-facet-value-6e80b694.js} +8 -5
  797. package/dist/esm/stencil-facet-value-6e80b694.js.map +1 -0
  798. package/dist/esm/{stencil-facet-value-box-b0dc7e73.js → stencil-facet-value-box-b26edef5.js} +5 -2
  799. package/dist/esm/stencil-facet-value-box-b26edef5.js.map +1 -0
  800. package/dist/esm/{stencil-facet-value-checkbox-c0df7c4e.js → stencil-facet-value-checkbox-f9dbff9d.js} +10 -5
  801. package/dist/esm/stencil-facet-value-checkbox-f9dbff9d.js.map +1 -0
  802. package/dist/esm/{stencil-facet-value-label-highlight-b4083ffd.js → stencil-facet-value-label-highlight-f4518687.js} +4 -1
  803. package/dist/esm/stencil-facet-value-label-highlight-f4518687.js.map +1 -0
  804. package/dist/esm/{stencil-facet-value-link-88512e29.js → stencil-facet-value-link-bef908e3.js} +5 -2
  805. package/dist/esm/stencil-facet-value-link-bef908e3.js.map +1 -0
  806. package/dist/esm/{stencil-facet-values-group-1108573d.js → stencil-facet-values-group-fefc8abb.js} +5 -2
  807. package/dist/esm/stencil-facet-values-group-fefc8abb.js.map +1 -0
  808. package/dist/esm/{stencil-fieldset-group-5fa357cd.js → stencil-fieldset-group-e02988dc.js} +4 -1
  809. package/dist/esm/stencil-fieldset-group-e02988dc.js.map +1 -0
  810. package/dist/esm/{stencil-heading-2b28a9b9.js → stencil-heading-c701a05a.js} +2 -2
  811. package/dist/esm/stencil-heading-c701a05a.js.map +1 -0
  812. package/dist/esm/{stencil-iconButton-ba40899c.js → stencil-iconButton-b4568792.js} +5 -2
  813. package/dist/esm/stencil-iconButton-b4568792.js.map +1 -0
  814. package/dist/esm/{stencil-item-link-5a3f8f23.js → stencil-item-link-0183987b.js} +4 -1
  815. package/dist/esm/stencil-item-link-0183987b.js.map +1 -0
  816. package/dist/esm/{stencil-link-b676e261.js → stencil-link-78fd0a0d.js} +26 -3
  817. package/dist/esm/stencil-link-78fd0a0d.js.map +1 -0
  818. package/dist/esm/{stencil-magnifying-glass-041294b6.js → stencil-magnifying-glass-f6e9c08b.js} +7 -1
  819. package/dist/esm/stencil-magnifying-glass-f6e9c08b.js.map +1 -0
  820. package/dist/esm/{stencil-modal-467f7f33.js → stencil-modal-47c54d0e.js} +5 -2
  821. package/dist/esm/stencil-modal-47c54d0e.js.map +1 -0
  822. package/dist/esm/{stencil-placeholders-58a0c818.js → stencil-placeholders-43360a82.js} +7 -1
  823. package/dist/esm/stencil-placeholders-43360a82.js.map +1 -0
  824. package/dist/esm/{stencil-query-suggestions-5d6a46d7.js → stencil-query-suggestions-4810c05e.js} +13 -1
  825. package/dist/esm/stencil-query-suggestions-4810c05e.js.map +1 -0
  826. package/dist/esm/{stencil-radio-button-cae5f40a.js → stencil-radio-button-a5c62a36.js} +3 -3
  827. package/dist/esm/stencil-radio-button-a5c62a36.js.map +1 -0
  828. package/dist/esm/{stencil-rating-2d6963a3.js → stencil-rating-8e6bcc27.js} +6 -3
  829. package/dist/esm/stencil-rating-8e6bcc27.js.map +1 -0
  830. package/dist/esm/{result-template-decorators-2ed76ea9.js → stencil-result-template-decorators-f989bc6b.js} +6 -2
  831. package/dist/esm/stencil-result-template-decorators-f989bc6b.js.map +1 -0
  832. package/dist/esm/{stencil-suggestion-manager-1f4ed8d0.js → stencil-suggestion-manager-b192ac22.js} +12 -3
  833. package/dist/esm/stencil-suggestion-manager-b192ac22.js.map +1 -0
  834. package/dist/esm/{stencil-tips-be95482d.js → stencil-tips-3b4426a3.js} +10 -1
  835. package/dist/esm/stencil-tips-3b4426a3.js.map +1 -0
  836. package/dist/esm/{stencil-values-container-9b9cd73f.js → stencil-values-container-6a1e9ed6.js} +11 -5
  837. package/dist/esm/stencil-values-container-6a1e9ed6.js.map +1 -0
  838. package/dist/esm/{timeframe-facet-common-55fc72f3.js → timeframe-facet-common-cee99a11.js} +5 -5
  839. package/dist/esm/{timeframe-facet-common-55fc72f3.js.map → timeframe-facet-common-cee99a11.js.map} +1 -1
  840. package/dist/esm/version.js +1 -1
  841. package/dist/types/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.d.ts +0 -2
  842. package/dist/types/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.d.ts +0 -1
  843. package/dist/types/components/commerce/atomic-commerce-search-box-recent-queries/atomic-commerce-search-box-recent-queries.d.ts +0 -2
  844. package/dist/types/components/commerce/atomic-product/atomic-product.d.ts +1 -1
  845. package/dist/types/components/commerce/product-template-component-utils/context/fetch-product-context.d.ts +12 -0
  846. package/dist/types/components/commerce/product-template-component-utils/context/interactive-product-context-controller.d.ts +27 -0
  847. package/dist/types/components/commerce/product-template-component-utils/context/product-context-controller.d.ts +33 -0
  848. package/dist/types/components/commerce/product-template-component-utils/{stencil-product-template-decorators.d.ts → context/stencil-product-template-decorators.d.ts} +1 -1
  849. package/dist/types/components/common/atomic-rating/stencil-rating.d.ts +5 -2
  850. package/dist/types/components/common/atomic-result-placeholder/stencil-placeholders.d.ts +6 -0
  851. package/dist/types/components/common/breadbox/breadcrumb-button.d.ts +0 -2
  852. package/dist/types/components/common/breadbox/stencil-breadcrumb-button.d.ts +5 -1
  853. package/dist/types/components/common/breadbox/stencil-breadcrumb-clear-all.d.ts +5 -1
  854. package/dist/types/components/common/breadbox/stencil-breadcrumb-container.d.ts +5 -1
  855. package/dist/types/components/common/breadbox/stencil-breadcrumb-content.d.ts +5 -1
  856. package/dist/types/components/common/breadbox/stencil-breadcrumb-show-less.d.ts +5 -1
  857. package/dist/types/components/common/breadbox/stencil-breadcrumb-show-more.d.ts +5 -1
  858. package/dist/types/components/common/facets/category-facet/stencil-child-value-link.d.ts +3 -0
  859. package/dist/types/components/common/facets/category-facet/stencil-children-as-tree-container.d.ts +3 -0
  860. package/dist/types/components/common/facets/category-facet/stencil-parent-as-tree-container.d.ts +5 -1
  861. package/dist/types/components/common/facets/category-facet/stencil-parent-button.d.ts +3 -0
  862. package/dist/types/components/common/facets/category-facet/stencil-parent-value-link.d.ts +3 -0
  863. package/dist/types/components/common/facets/category-facet/stencil-search-results-container.d.ts +3 -0
  864. package/dist/types/components/common/facets/category-facet/stencil-search-value.d.ts +3 -0
  865. package/dist/types/components/common/facets/category-facet/stencil-value-as-tree-container.d.ts +3 -0
  866. package/dist/types/components/common/facets/category-facet/stencil-value-link.d.ts +6 -0
  867. package/dist/types/components/common/facets/facet-container/stencil-facet-container.d.ts +3 -0
  868. package/dist/types/components/common/facets/facet-guard.d.ts +3 -0
  869. package/dist/types/components/common/facets/facet-header/stencil-facet-header.d.ts +5 -1
  870. package/dist/types/components/common/facets/facet-placeholder/facet-placeholder.d.ts +5 -1
  871. package/dist/types/components/common/facets/facet-search/stencil-facet-search-input-guard.d.ts +3 -0
  872. package/dist/types/components/common/facets/facet-search/stencil-facet-search-input.d.ts +3 -0
  873. package/dist/types/components/common/facets/facet-search/stencil-facet-search-matches.d.ts +3 -0
  874. package/dist/types/components/common/facets/facet-search/stencil-facet-search-value.d.ts +3 -0
  875. package/dist/types/components/common/facets/facet-show-more-less/stencil-facet-show-more-less.d.ts +3 -0
  876. package/dist/types/components/common/facets/facet-value/stencil-facet-value.d.ts +6 -0
  877. package/dist/types/components/common/facets/facet-value-box/stencil-facet-value-box.d.ts +3 -0
  878. package/dist/types/components/common/facets/facet-value-checkbox/stencil-facet-value-checkbox.d.ts +3 -0
  879. package/dist/types/components/common/facets/facet-value-exclude/stencil-facet-value-exclude.d.ts +5 -1
  880. package/dist/types/components/common/facets/facet-value-label-highlight/stencil-facet-value-label-highlight.d.ts +3 -0
  881. package/dist/types/components/common/facets/facet-value-link/stencil-facet-value-link.d.ts +5 -1
  882. package/dist/types/components/common/facets/facet-values-group/stencil-facet-values-group.d.ts +5 -1
  883. package/dist/types/components/common/facets/numeric-facet/stencil-value-link.d.ts +3 -0
  884. package/dist/types/components/common/facets/numeric-facet/stencil-values-container.d.ts +3 -0
  885. package/dist/types/components/common/generated-answer/copy-button.d.ts +3 -0
  886. package/dist/types/components/common/generated-answer/feedback-button.d.ts +3 -0
  887. package/dist/types/components/common/generated-answer/generated-content/generated-markdown-content.d.ts +3 -0
  888. package/dist/types/components/common/generated-answer/generated-content/generated-text-content.d.ts +3 -0
  889. package/dist/types/components/common/generated-answer/generated-content-container.d.ts +3 -0
  890. package/dist/types/components/common/generated-answer/retry-prompt.d.ts +3 -0
  891. package/dist/types/components/common/generated-answer/show-button.d.ts +3 -0
  892. package/dist/types/components/common/generated-answer/source-citations.d.ts +3 -0
  893. package/dist/types/components/common/item-link/stencil-item-link.d.ts +4 -1
  894. package/dist/types/components/common/item-list/item-display-guard.d.ts +5 -1
  895. package/dist/types/components/common/item-list/item-list-guard.d.ts +5 -1
  896. package/dist/types/components/common/item-list/stencil-display-grid.d.ts +5 -1
  897. package/dist/types/components/common/item-list/stencil-display-table.d.ts +12 -3
  898. package/dist/types/components/common/item-list/stencil-display-wrapper.d.ts +5 -1
  899. package/dist/types/components/common/item-text/stencil-item-text-fallback.d.ts +5 -1
  900. package/dist/types/components/common/item-text/stencil-item-text-highlighted.d.ts +5 -1
  901. package/dist/types/components/common/load-more/guard.d.ts +5 -1
  902. package/dist/types/components/common/load-more/stencil-button.d.ts +1 -4
  903. package/dist/types/components/common/load-more/stencil-container.d.ts +3 -0
  904. package/dist/types/components/common/load-more/stencil-progress-bar.d.ts +3 -0
  905. package/dist/types/components/common/load-more/stencil-summary.d.ts +3 -0
  906. package/dist/types/components/common/no-items/cancel.d.ts +3 -0
  907. package/dist/types/components/common/no-items/stencil-container.d.ts +3 -0
  908. package/dist/types/components/common/no-items/stencil-guard.d.ts +3 -0
  909. package/dist/types/components/common/no-items/stencil-magnifying-glass.d.ts +3 -0
  910. package/dist/types/components/common/no-items/stencil-no-items.d.ts +3 -0
  911. package/dist/types/components/common/no-items/stencil-tips.d.ts +3 -0
  912. package/dist/types/components/common/pager/stencil-pager-buttons.d.ts +8 -16
  913. package/dist/types/components/common/pager/stencil-pager-navigation.d.ts +3 -5
  914. package/dist/types/components/common/query-correction/stencil-auto-correction.d.ts +3 -0
  915. package/dist/types/components/common/query-correction/stencil-correction.d.ts +3 -0
  916. package/dist/types/components/common/query-correction/stencil-guard.d.ts +3 -0
  917. package/dist/types/components/common/query-correction/stencil-trigger-correction.d.ts +3 -0
  918. package/dist/types/components/common/query-error/stencil-container.d.ts +3 -0
  919. package/dist/types/components/common/query-error/stencil-description.d.ts +3 -0
  920. package/dist/types/components/common/query-error/stencil-details.d.ts +3 -0
  921. package/dist/types/components/common/query-error/stencil-guard.d.ts +3 -0
  922. package/dist/types/components/common/query-error/stencil-icon.d.ts +3 -0
  923. package/dist/types/components/common/query-error/stencil-link.d.ts +3 -0
  924. package/dist/types/components/common/query-error/stencil-show-more.d.ts +3 -0
  925. package/dist/types/components/common/query-error/stencil-title.d.ts +3 -0
  926. package/dist/types/components/common/query-summary/stencil-container.d.ts +3 -0
  927. package/dist/types/components/common/query-summary/stencil-guard.d.ts +3 -0
  928. package/dist/types/components/common/query-summary/stencil-utils.d.ts +3 -10
  929. package/dist/types/components/common/refine-modal/stencil-body.d.ts +3 -0
  930. package/dist/types/components/common/refine-modal/stencil-button.d.ts +3 -0
  931. package/dist/types/components/common/refine-modal/stencil-filters.d.ts +6 -0
  932. package/dist/types/components/common/refine-modal/stencil-guard.d.ts +3 -0
  933. package/dist/types/components/common/refine-modal/stencil-modal.d.ts +3 -0
  934. package/dist/types/components/common/refine-modal/stencil-sort.d.ts +3 -0
  935. package/dist/types/components/common/result-children/children-wrapper.d.ts +3 -0
  936. package/dist/types/components/common/result-children/collection-guard.d.ts +3 -0
  937. package/dist/types/components/common/result-children/guard.d.ts +3 -0
  938. package/dist/types/components/common/result-children/show-hide-button.d.ts +3 -0
  939. package/dist/types/components/common/search-box/stencil-search-box-wrapper.d.ts +3 -0
  940. package/dist/types/components/common/search-box/stencil-search-text-area.d.ts +3 -0
  941. package/dist/types/components/common/search-box/stencil-submit-button.d.ts +3 -0
  942. package/dist/types/components/common/search-box/stencil-text-area-clear-button.d.ts +3 -0
  943. package/dist/types/components/common/smart-snippets/atomic-smart-snippet/smart-snippet-common.d.ts +16 -6
  944. package/dist/types/components/common/smart-snippets/atomic-smart-snippet-feedback-banner.d.ts +3 -0
  945. package/dist/types/components/common/smart-snippets/atomic-smart-snippet-feedback-modal/smart-snippet-feedback-modal-common.d.ts +21 -0
  946. package/dist/types/components/common/smart-snippets/atomic-smart-snippet-source.d.ts +1 -1
  947. package/dist/types/components/common/smart-snippets/atomic-smart-snippet-suggestions/smart-snippet-suggestions-common.d.ts +18 -0
  948. package/dist/types/components/common/sort/container.d.ts +3 -0
  949. package/dist/types/components/common/sort/stencil-guard.d.ts +3 -0
  950. package/dist/types/components/common/sort/stencil-label.d.ts +3 -0
  951. package/dist/types/components/common/sort/stencil-option.d.ts +5 -1
  952. package/dist/types/components/common/sort/stencil-select.d.ts +3 -0
  953. package/dist/types/components/common/stencil-button.d.ts +2 -2
  954. package/dist/types/components/common/stencil-carousel.d.ts +5 -1
  955. package/dist/types/components/common/stencil-checkbox.d.ts +2 -2
  956. package/dist/types/components/common/stencil-fieldset-group.d.ts +5 -1
  957. package/dist/types/components/common/stencil-heading.d.ts +1 -1
  958. package/dist/types/components/common/stencil-iconButton.d.ts +5 -1
  959. package/dist/types/components/common/stencil-radio-button.d.ts +2 -2
  960. package/dist/types/components/common/stencil-triStateCheckbox.d.ts +3 -3
  961. package/dist/types/components/common/suggestions/stencil-instant-item.d.ts +9 -0
  962. package/dist/types/components/common/suggestions/stencil-query-suggestions.d.ts +12 -0
  963. package/dist/types/components/common/switch.d.ts +5 -1
  964. package/dist/types/components/common/tabs/tab-guard.d.ts +3 -0
  965. package/dist/types/components/insight/user-actions/atomic-insight-user-actions-session/user-action.d.ts +3 -0
  966. package/dist/types/components/search/atomic-result/atomic-result.d.ts +1 -1
  967. package/dist/types/components/search/atomic-search-box/atomic-search-box.d.ts +0 -1
  968. package/dist/types/components/search/facets/color-facet-checkbox/color-facet-checkbox.d.ts +3 -0
  969. package/dist/types/components/search/facets/facet-segmented-value/facet-segmented-value.d.ts +3 -0
  970. package/dist/types/components/search/result-template-component-utils/context/fetch-result-context.d.ts +8 -0
  971. package/dist/types/components/search/result-template-component-utils/context/interactive-result-context-controller.d.ts +12 -0
  972. package/dist/types/components/search/result-template-component-utils/context/result-context-controller.d.ts +18 -0
  973. package/dist/types/components/search/{result-template-components/result-template-decorators.d.ts → result-template-component-utils/context/stencil-result-template-decorators.d.ts} +6 -2
  974. package/dist/types/components/search/result-template-components/atomic-quickview-sidebar/atomic-quickview-sidebar.d.ts +2 -1
  975. package/dist/types/components/search/result-template-components/quickview-iframe/quickview-iframe.d.ts +3 -0
  976. package/dist/types/directives/hierarchical-path.d.ts +1 -1
  977. package/dist/types/index.d.ts +3 -3
  978. package/docs/atomic-docs.json +1 -1
  979. package/package.json +1 -1
  980. package/dist/atomic/components/components/common/item-list/fetch-item-context.js +0 -15
  981. package/dist/atomic/components/decorators/commerce/product-template-decorators.js +0 -68
  982. package/dist/atomic/components/result-template-decorators.js.map +0 -1
  983. package/dist/atomic/p-037eee11.js.map +0 -1
  984. package/dist/atomic/p-0535b93d.entry.js.map +0 -1
  985. package/dist/atomic/p-15547bd5.entry.js.map +0 -1
  986. package/dist/atomic/p-182f9112.entry.js.map +0 -1
  987. package/dist/atomic/p-18684d4c.js.map +0 -1
  988. package/dist/atomic/p-187193bb.js.map +0 -1
  989. package/dist/atomic/p-190ddaca.entry.js.map +0 -1
  990. package/dist/atomic/p-1f059522.js.map +0 -1
  991. package/dist/atomic/p-1ff7a9da.entry.js.map +0 -1
  992. package/dist/atomic/p-20cbcfb9.js.map +0 -1
  993. package/dist/atomic/p-2559747d.js +0 -2
  994. package/dist/atomic/p-2559747d.js.map +0 -1
  995. package/dist/atomic/p-2a02812b.js +0 -2
  996. package/dist/atomic/p-2a02812b.js.map +0 -1
  997. package/dist/atomic/p-2c6f895f.js.map +0 -1
  998. package/dist/atomic/p-2f517a54.entry.js.map +0 -1
  999. package/dist/atomic/p-307e7fd5.js.map +0 -1
  1000. package/dist/atomic/p-3bd8469f.entry.js.map +0 -1
  1001. package/dist/atomic/p-4069d801.entry.js.map +0 -1
  1002. package/dist/atomic/p-448091f7.entry.js.map +0 -1
  1003. package/dist/atomic/p-4b1dc787.js.map +0 -1
  1004. package/dist/atomic/p-4cb91ee7.entry.js.map +0 -1
  1005. package/dist/atomic/p-57049cd2.entry.js.map +0 -1
  1006. package/dist/atomic/p-5a2ef889.js +0 -2
  1007. package/dist/atomic/p-5c73ebc4.js.map +0 -1
  1008. package/dist/atomic/p-5cab535b.entry.js.map +0 -1
  1009. package/dist/atomic/p-5d0a3045.js.map +0 -1
  1010. package/dist/atomic/p-60498b8e.js +0 -2
  1011. package/dist/atomic/p-60498b8e.js.map +0 -1
  1012. package/dist/atomic/p-6439156c.entry.js.map +0 -1
  1013. package/dist/atomic/p-66166975.entry.js.map +0 -1
  1014. package/dist/atomic/p-66d48d1a.js.map +0 -1
  1015. package/dist/atomic/p-74862002.js.map +0 -1
  1016. package/dist/atomic/p-78427c6a.entry.js.map +0 -1
  1017. package/dist/atomic/p-7cb0050f.js.map +0 -1
  1018. package/dist/atomic/p-7da7b187.js.map +0 -1
  1019. package/dist/atomic/p-81bdbd07.entry.js.map +0 -1
  1020. package/dist/atomic/p-82398f4a.js.map +0 -1
  1021. package/dist/atomic/p-851b9735.entry.js.map +0 -1
  1022. package/dist/atomic/p-852cc16d.entry.js.map +0 -1
  1023. package/dist/atomic/p-8a488991.js.map +0 -1
  1024. package/dist/atomic/p-8b0d881e.entry.js.map +0 -1
  1025. package/dist/atomic/p-8d5228da.entry.js.map +0 -1
  1026. package/dist/atomic/p-8e5e00b4.js.map +0 -1
  1027. package/dist/atomic/p-945ddd53.entry.js.map +0 -1
  1028. package/dist/atomic/p-955092ed.entry.js.map +0 -1
  1029. package/dist/atomic/p-9e6462cf.entry.js.map +0 -1
  1030. package/dist/atomic/p-a1798150.entry.js.map +0 -1
  1031. package/dist/atomic/p-a428960a.js.map +0 -1
  1032. package/dist/atomic/p-a5bac939.js.map +0 -1
  1033. package/dist/atomic/p-af93b44c.js.map +0 -1
  1034. package/dist/atomic/p-b3f6561d.entry.js.map +0 -1
  1035. package/dist/atomic/p-b628ed03.entry.js.map +0 -1
  1036. package/dist/atomic/p-b93ccff9.js.map +0 -1
  1037. package/dist/atomic/p-baff6c43.js.map +0 -1
  1038. package/dist/atomic/p-bd01acd5.entry.js.map +0 -1
  1039. package/dist/atomic/p-bd2703e9.js.map +0 -1
  1040. package/dist/atomic/p-be5d3c54.js.map +0 -1
  1041. package/dist/atomic/p-c2a5dac0.entry.js.map +0 -1
  1042. package/dist/atomic/p-c5164dbf.entry.js.map +0 -1
  1043. package/dist/atomic/p-c619df9b.js.map +0 -1
  1044. package/dist/atomic/p-ca37969c.js +0 -2
  1045. package/dist/atomic/p-ca37969c.js.map +0 -1
  1046. package/dist/atomic/p-d2e8a2d4.js.map +0 -1
  1047. package/dist/atomic/p-dbc09018.js.map +0 -1
  1048. package/dist/atomic/p-dea22a8d.entry.js.map +0 -1
  1049. package/dist/atomic/p-df8d38ca.entry.js.map +0 -1
  1050. package/dist/atomic/p-e49ad083.entry.js.map +0 -1
  1051. package/dist/atomic/p-e6dc9de7.entry.js.map +0 -1
  1052. package/dist/atomic/p-e988f378.js.map +0 -1
  1053. package/dist/atomic/p-e9dc8e90.entry.js.map +0 -1
  1054. package/dist/atomic/p-ef78082a.js.map +0 -1
  1055. package/dist/atomic/p-f0c657f4.entry.js.map +0 -1
  1056. package/dist/atomic/p-f8b608ba.js.map +0 -1
  1057. package/dist/cjs/facet-guard-328b588d.js.map +0 -1
  1058. package/dist/cjs/facet-placeholder-22074f05.js.map +0 -1
  1059. package/dist/cjs/generated-answer-common-3c400311.js.map +0 -1
  1060. package/dist/cjs/item-list-guard-506b695a.js.map +0 -1
  1061. package/dist/cjs/result-template-decorators-432d11a9.js.map +0 -1
  1062. package/dist/cjs/show-hide-button-c4717f52.js.map +0 -1
  1063. package/dist/cjs/smart-snippet-common-1fd0dad5.js.map +0 -1
  1064. package/dist/cjs/smart-snippet-feedback-modal-common-9721e3c4.js.map +0 -1
  1065. package/dist/cjs/smart-snippet-suggestions-common-024c89b7.js.map +0 -1
  1066. package/dist/cjs/stencil-carousel-a8df6f3c.js.map +0 -1
  1067. package/dist/cjs/stencil-checkbox-81c51bbd.js.map +0 -1
  1068. package/dist/cjs/stencil-display-grid-93c5802a.js.map +0 -1
  1069. package/dist/cjs/stencil-display-wrapper-498de571.js.map +0 -1
  1070. package/dist/cjs/stencil-facet-search-matches-101e0ede.js.map +0 -1
  1071. package/dist/cjs/stencil-facet-show-more-less-70f4d20d.js.map +0 -1
  1072. package/dist/cjs/stencil-facet-value-5957b403.js.map +0 -1
  1073. package/dist/cjs/stencil-facet-value-box-11aa05dd.js.map +0 -1
  1074. package/dist/cjs/stencil-facet-value-checkbox-fed178ad.js.map +0 -1
  1075. package/dist/cjs/stencil-facet-value-label-highlight-c2421e8f.js.map +0 -1
  1076. package/dist/cjs/stencil-facet-value-link-8a095034.js.map +0 -1
  1077. package/dist/cjs/stencil-facet-values-group-07b50fc0.js.map +0 -1
  1078. package/dist/cjs/stencil-fieldset-group-3b25c138.js.map +0 -1
  1079. package/dist/cjs/stencil-heading-2faee1f7.js.map +0 -1
  1080. package/dist/cjs/stencil-iconButton-738b1548.js.map +0 -1
  1081. package/dist/cjs/stencil-item-link-9feaef61.js.map +0 -1
  1082. package/dist/cjs/stencil-link-9336b8c1.js.map +0 -1
  1083. package/dist/cjs/stencil-magnifying-glass-c1d386a1.js.map +0 -1
  1084. package/dist/cjs/stencil-modal-9035ea2a.js.map +0 -1
  1085. package/dist/cjs/stencil-placeholders-b8c896fa.js.map +0 -1
  1086. package/dist/cjs/stencil-query-suggestions-03268ecc.js.map +0 -1
  1087. package/dist/cjs/stencil-radio-button-ea7e71d3.js.map +0 -1
  1088. package/dist/cjs/stencil-rating-a40e50dd.js.map +0 -1
  1089. package/dist/cjs/stencil-suggestion-manager-88cb88f2.js.map +0 -1
  1090. package/dist/cjs/stencil-tips-e913f891.js.map +0 -1
  1091. package/dist/cjs/stencil-values-container-d20f9b28.js.map +0 -1
  1092. package/dist/esm/facet-guard-4b795e90.js.map +0 -1
  1093. package/dist/esm/facet-placeholder-4959a92a.js.map +0 -1
  1094. package/dist/esm/generated-answer-common-9d0c5ada.js.map +0 -1
  1095. package/dist/esm/item-list-guard-22b0711a.js.map +0 -1
  1096. package/dist/esm/result-template-decorators-2ed76ea9.js.map +0 -1
  1097. package/dist/esm/show-hide-button-35eb419d.js.map +0 -1
  1098. package/dist/esm/smart-snippet-common-5ed4bdfa.js.map +0 -1
  1099. package/dist/esm/smart-snippet-feedback-modal-common-835aa607.js.map +0 -1
  1100. package/dist/esm/smart-snippet-suggestions-common-10bd1697.js.map +0 -1
  1101. package/dist/esm/stencil-carousel-e1f25f7c.js.map +0 -1
  1102. package/dist/esm/stencil-checkbox-9d8fe5f6.js.map +0 -1
  1103. package/dist/esm/stencil-display-grid-b9eb7397.js.map +0 -1
  1104. package/dist/esm/stencil-display-wrapper-5b32e77c.js.map +0 -1
  1105. package/dist/esm/stencil-facet-search-matches-872d94d2.js.map +0 -1
  1106. package/dist/esm/stencil-facet-show-more-less-e575f20f.js.map +0 -1
  1107. package/dist/esm/stencil-facet-value-9deafe8e.js.map +0 -1
  1108. package/dist/esm/stencil-facet-value-box-b0dc7e73.js.map +0 -1
  1109. package/dist/esm/stencil-facet-value-checkbox-c0df7c4e.js.map +0 -1
  1110. package/dist/esm/stencil-facet-value-label-highlight-b4083ffd.js.map +0 -1
  1111. package/dist/esm/stencil-facet-value-link-88512e29.js.map +0 -1
  1112. package/dist/esm/stencil-facet-values-group-1108573d.js.map +0 -1
  1113. package/dist/esm/stencil-fieldset-group-5fa357cd.js.map +0 -1
  1114. package/dist/esm/stencil-heading-2b28a9b9.js.map +0 -1
  1115. package/dist/esm/stencil-iconButton-ba40899c.js.map +0 -1
  1116. package/dist/esm/stencil-item-link-5a3f8f23.js.map +0 -1
  1117. package/dist/esm/stencil-link-b676e261.js.map +0 -1
  1118. package/dist/esm/stencil-magnifying-glass-041294b6.js.map +0 -1
  1119. package/dist/esm/stencil-modal-467f7f33.js.map +0 -1
  1120. package/dist/esm/stencil-placeholders-58a0c818.js.map +0 -1
  1121. package/dist/esm/stencil-query-suggestions-5d6a46d7.js.map +0 -1
  1122. package/dist/esm/stencil-radio-button-cae5f40a.js.map +0 -1
  1123. package/dist/esm/stencil-rating-2d6963a3.js.map +0 -1
  1124. package/dist/esm/stencil-suggestion-manager-1f4ed8d0.js.map +0 -1
  1125. package/dist/esm/stencil-tips-be95482d.js.map +0 -1
  1126. package/dist/esm/stencil-values-container-9b9cd73f.js.map +0 -1
  1127. package/dist/types/components/common/expandable-text/stencil-expandable-text.d.ts +0 -13
  1128. package/dist/types/components/common/generated-answer/typing-loader.d.ts +0 -2
  1129. package/dist/types/components/common/image-carousel/stencil-image-carousel-indicators.d.ts +0 -12
  1130. package/dist/types/components/common/image-carousel/stencil-image-carousel.d.ts +0 -15
  1131. package/dist/types/components/common/items-per-page/stencil-choices.d.ts +0 -14
  1132. package/dist/types/components/common/items-per-page/stencil-label.d.ts +0 -2
  1133. package/dist/types/components/common/pager/stencil-pager-guard.d.ts +0 -13
  1134. package/dist/types/components/common/suggestions/stencil-recent-queries.d.ts +0 -20
  1135. package/dist/types/decorators/commerce/product-template-decorators.d.ts +0 -68
  1136. /package/dist/atomic/{p-5606819d.entry.js.map → p-039bd7df.entry.js.map} +0 -0
  1137. /package/dist/atomic/{p-22b76c96.entry.js.map → p-13ac0c72.entry.js.map} +0 -0
  1138. /package/dist/atomic/{p-77d00da1.entry.js.map → p-15697c4b.entry.js.map} +0 -0
  1139. /package/dist/atomic/{p-14bad769.entry.js.map → p-1d6d0186.entry.js.map} +0 -0
  1140. /package/dist/atomic/{p-48bab1a6.entry.js.map → p-1f903f31.entry.js.map} +0 -0
  1141. /package/dist/atomic/{p-47b41b27.entry.js.map → p-24bb7b3d.entry.js.map} +0 -0
  1142. /package/dist/atomic/{p-6698d5e9.entry.js.map → p-2e9ecdf5.entry.js.map} +0 -0
  1143. /package/dist/atomic/{p-76c14d82.entry.js.map → p-32544f8a.entry.js.map} +0 -0
  1144. /package/dist/atomic/{p-a6dde0f6.entry.js.map → p-390deb3d.entry.js.map} +0 -0
  1145. /package/dist/atomic/{p-2f437b47.entry.js.map → p-3b632123.entry.js.map} +0 -0
  1146. /package/dist/atomic/{p-3a01a398.entry.js.map → p-43fc38fb.entry.js.map} +0 -0
  1147. /package/dist/atomic/{p-dd24c66a.entry.js.map → p-443f3422.entry.js.map} +0 -0
  1148. /package/dist/atomic/{p-b29d121c.js.map → p-4651cceb.js.map} +0 -0
  1149. /package/dist/atomic/{p-400c28b6.entry.js.map → p-498771d3.entry.js.map} +0 -0
  1150. /package/dist/atomic/{p-558f2191.entry.js.map → p-52878b95.entry.js.map} +0 -0
  1151. /package/dist/atomic/{p-c8190eb9.entry.js.map → p-5a644e15.entry.js.map} +0 -0
  1152. /package/dist/atomic/{p-479cb38a.entry.js.map → p-5d4e9821.entry.js.map} +0 -0
  1153. /package/dist/atomic/{p-b84108f3.entry.js.map → p-6d323b9a.entry.js.map} +0 -0
  1154. /package/dist/atomic/{p-088d634c.entry.js.map → p-733a8082.entry.js.map} +0 -0
  1155. /package/dist/atomic/{p-b1b583a0.entry.js.map → p-74380cbc.entry.js.map} +0 -0
  1156. /package/dist/atomic/{p-35c2ee5f.entry.js.map → p-752f4533.entry.js.map} +0 -0
  1157. /package/dist/atomic/{p-ef8f2239.entry.js.map → p-7afa3c6a.entry.js.map} +0 -0
  1158. /package/dist/atomic/{p-db2d92c5.entry.js.map → p-7b8607e0.entry.js.map} +0 -0
  1159. /package/dist/atomic/{p-7741124a.entry.js.map → p-7c87512d.entry.js.map} +0 -0
  1160. /package/dist/atomic/{p-33245038.entry.js.map → p-86bba9db.entry.js.map} +0 -0
  1161. /package/dist/atomic/{p-318c96f5.entry.js.map → p-9519e656.entry.js.map} +0 -0
  1162. /package/dist/atomic/{p-70747efa.entry.js.map → p-951bdd73.entry.js.map} +0 -0
  1163. /package/dist/atomic/{p-5a83b7e5.entry.js.map → p-99bb5042.entry.js.map} +0 -0
  1164. /package/dist/atomic/{p-fc71835d.entry.js.map → p-99d0c865.entry.js.map} +0 -0
  1165. /package/dist/atomic/{p-80290dd3.entry.js.map → p-9d492524.entry.js.map} +0 -0
  1166. /package/dist/atomic/{p-d0ab0125.entry.js.map → p-b0a20358.entry.js.map} +0 -0
  1167. /package/dist/atomic/{p-0ee7cab8.entry.js.map → p-b0f6a52e.entry.js.map} +0 -0
  1168. /package/dist/atomic/{p-017aa785.entry.js.map → p-b72d3af6.entry.js.map} +0 -0
  1169. /package/dist/atomic/{p-e6871a3f.entry.js.map → p-bef3a536.entry.js.map} +0 -0
  1170. /package/dist/atomic/{p-7fe23afc.entry.js.map → p-bf0a780e.entry.js.map} +0 -0
  1171. /package/dist/atomic/{p-9b2561e8.entry.js.map → p-bfb2e085.entry.js.map} +0 -0
  1172. /package/dist/atomic/{p-f1241140.entry.js.map → p-c0491e26.entry.js.map} +0 -0
  1173. /package/dist/atomic/{p-e276c7e0.entry.js.map → p-c1cd0a45.entry.js.map} +0 -0
  1174. /package/dist/atomic/{p-1910eb7f.entry.js.map → p-c52c9e67.entry.js.map} +0 -0
  1175. /package/dist/atomic/{p-e455330c.entry.js.map → p-cd4394fe.entry.js.map} +0 -0
  1176. /package/dist/atomic/{p-f37dea9e.entry.js.map → p-d5f4597b.entry.js.map} +0 -0
  1177. /package/dist/atomic/{p-7242b46e.entry.js.map → p-e1052201.entry.js.map} +0 -0
  1178. /package/dist/atomic/{p-874f0a4c.entry.js.map → p-e46e05cb.entry.js.map} +0 -0
  1179. /package/dist/atomic/{p-a54f3f24.entry.js.map → p-ee19b388.entry.js.map} +0 -0
  1180. /package/dist/atomic/{p-7045745d.entry.js.map → p-f25c9582.entry.js.map} +0 -0
  1181. /package/dist/atomic/{p-567b2841.entry.js.map → p-f3eaea67.entry.js.map} +0 -0
  1182. /package/dist/atomic/{p-e8176ac8.entry.js.map → p-f77a5952.entry.js.map} +0 -0
  1183. /package/dist/atomic/{p-99d4c4bf.entry.js.map → p-fdaf9f6c.entry.js.map} +0 -0
  1184. /package/dist/atomic/{p-fd1ef9e3.entry.js.map → p-fdd6264f.entry.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"names":["SearchBoxWrapper","props","children","getClasses","baseClasses","focusClasses","disabled","join","h","part","class","onFocusout","TextAreaClearButton","inputRef","bindings","onClick","defaultButtonProps","Button","style","focus","ariaLabel","i18n","t","icon","ClearSlim","getPopupAttributes","autocomplete","autocapitalize","autocorrect","activeDescendant","id","syncTextWithReplica","elem","value","parent","parentNode","dataset","replicatedValue","resetReplicaText","collapseTextArea","classList","remove","expandTextArea","add","SearchTextArea","textAreaRef","loading","onInput","onFocus","onBlur","onChange","onKeyDown","onKeyUp","onClear","popup","defaultInputProps","placeholder","rows","e","key","shiftKey","preventDefault","target","promiseTimeout","prom","ms","timeout","Promise","_","reject","setTimeout","Error","race","then","clearTimeout","SuggestionManager","constructor","ownerSearchBoxProps","this","suggestions","leftSuggestionElements","rightSuggestionElements","leftPanel","undefined","rightPanel","suggestedQuery","keyboardActiveDescendant","queryDataAttribute","suggestionEvents","previousActiveDescendantElement","leftSuggestions","rightSuggestions","triggerSuggestions","debounce","executeQuerySuggestion","getSuggestionDelay","partialSuggestionBindings","clearSuggestions","getSuggestions","getSuggestionElements","allSuggestionElements","activeDescendantElement","hasActiveDescendant","querySelector","onSubmit","clickOnActiveElement","updateActiveDescendant","forceUpdate","getHost","updateKeyboardActiveDescendant","click","isRightPanelInFocus","isNullOrUndefined","panelInFocus","initializeSuggestions","map","event","registerSuggestionsFromEvent","stopPropagation","push","detail","registerSuggestions","isDoubleList","Boolean","length","focusPanel","side","panel","firstElementChild","panelHasActiveDescendant","contains","newValue","updateDescendants","clearSuggestionElements","focusNextValue","hasSuggestions","nextOrFirstValue","focusValue","scrollActiveDescendantIntoView","updateQueryFromSuggestion","onSuggestionMouseOver","item","thisPanel","query","updateSuggestedQuery","onSuggestionClick","updateOwnerSearchboxQuery","onSelect","focusPreviousValue","firstValue","previousOrLastValue","settled","allSettled","suggestion","resolve","getSuggestionTimeout","fulfilledSuggestions","forEach","j","status","getLogger","warn","splitSuggestions","isDefault","filter","sort","sortSuggestions","getAndFilterLeftSuggestionElements","defaultSuggestedQuery","find","elementHasQuery","lastValue","lastElementChild","firstChild","parentOfActiveDescendant","parentElement","previousElementSibling","a","b","position","nextElementSibling","scrollIntoView","block","getAttribute","getSearchBoxValue","updateQuery","onSuggestedQueryChange","updateSuggestionElements","isPanelInFocus","escaped","DOMPurify","sanitize","CSS","escape","closest","suggestionElements","filterOnDuplicate","Set","out","suggestionElement","has","elements","flatMap","renderItems","max","getNumberOfSuggestionsToDisplay","elementHasNoQuery","slice","newPrevDescendantElement"],"sources":["src/components/common/search-box/stencil-search-box-wrapper.tsx","src/components/common/search-box/stencil-text-area-clear-button.tsx","src/components/common/search-box/stencil-search-text-area.tsx","src/utils/promise-utils.ts","src/components/common/suggestions/stencil-suggestion-manager.ts"],"sourcesContent":["import {FunctionalComponent, h} from '@stencil/core';\n\ninterface Props {\n disabled: boolean;\n onFocusout?: (event: FocusEvent) => void;\n}\n\nexport const SearchBoxWrapper: FunctionalComponent<Props> = (\n props,\n children\n) => {\n const getClasses = () => {\n const baseClasses =\n 'flex bg-background w-full border border-neutral rounded-md focus-within:ring-3 absolute top-0 left-0';\n const focusClasses = props.disabled\n ? 'focus-within:border-disabled focus-within:ring-neutral'\n : 'focus-within:border-primary focus-within:ring-ring-primary';\n\n return [baseClasses, focusClasses].join(' ');\n };\n\n return (\n <div part=\"wrapper\" class={getClasses()} onFocusout={props.onFocusout}>\n {children}\n </div>\n );\n};\n","import {FunctionalComponent, h} from '@stencil/core';\nimport ClearSlim from '../../../images/clear-slim.svg';\nimport {AnyBindings} from '../interface/bindings';\nimport {Button, StencilButtonProps} from '../stencil-button';\n\ninterface Props extends Partial<StencilButtonProps> {\n bindings: AnyBindings;\n inputRef: HTMLInputElement | HTMLTextAreaElement | null;\n}\n\nexport const TextAreaClearButton: FunctionalComponent<Props> = ({\n inputRef,\n bindings,\n onClick,\n ...defaultButtonProps\n}) => (\n <div\n part=\"clear-button-wrapper\"\n class=\"ml-2 flex items-center justify-center py-2\"\n >\n <Button\n style=\"text-transparent\"\n part=\"clear-button\"\n class=\"text-neutral-dark flex h-8 w-8 shrink-0 items-center justify-center\"\n onClick={() => {\n onClick?.();\n inputRef?.focus();\n }}\n ariaLabel={bindings.i18n.t('clear-search')}\n {...defaultButtonProps}\n >\n <atomic-icon\n part=\"clear-icon\"\n icon={ClearSlim}\n class=\"h-4 w-4\"\n ></atomic-icon>\n </Button>\n </div>\n);\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {JSXBase} from '@stencil/core/internal';\nimport {AnyBindings} from '../interface/bindings';\nimport {TextAreaClearButton} from './stencil-text-area-clear-button';\n\ninterface Props extends JSXBase.TextareaHTMLAttributes<HTMLTextAreaElement> {\n textAreaRef: HTMLTextAreaElement;\n loading: boolean;\n bindings: AnyBindings;\n value: string;\n ariaLabel: string;\n onClear(): void;\n popup?: {\n id: string;\n activeDescendant: string;\n expanded: boolean;\n hasSuggestions: boolean;\n };\n}\n\nfunction getPopupAttributes(props: Required<Props>['popup']) {\n return {\n autocomplete: 'off',\n autocapitalize: 'off',\n autocorrect: 'off',\n ...(props.activeDescendant && {\n 'aria-activedescendant': props.activeDescendant,\n }),\n 'aria-autocomplete': 'both',\n 'aria-haspopup': 'true',\n 'aria-controls': props.id,\n };\n}\n\nfunction syncTextWithReplica(elem: HTMLTextAreaElement, value?: string) {\n const parent = elem?.parentNode as HTMLElement;\n if (!parent) {\n return;\n }\n if (elem.value === '\\n') {\n return;\n }\n parent.dataset.replicatedValue = value ?? elem.value;\n}\n\nfunction resetReplicaText(elem: HTMLTextAreaElement) {\n const parent = elem?.parentNode as HTMLElement;\n if (parent) {\n delete parent.dataset.replicatedValue;\n }\n}\n\nfunction collapseTextArea(elem: HTMLTextAreaElement) {\n const parent = elem?.parentNode as HTMLElement;\n if (parent) {\n parent.classList.remove('expanded');\n }\n}\n\nfunction expandTextArea(elem: HTMLTextAreaElement) {\n const parent = elem?.parentNode as HTMLElement;\n if (parent) {\n parent.classList.add('expanded');\n }\n}\n\nexport const SearchTextArea: FunctionalComponent<Props> = ({\n textAreaRef,\n loading,\n bindings,\n onInput,\n onFocus,\n onBlur,\n onChange,\n onKeyDown,\n onKeyUp,\n value,\n ariaLabel,\n onClear,\n popup,\n ...defaultInputProps\n}) => (\n <div class=\"flex grow overflow-hidden\">\n <div part=\"textarea-expander\" class=\"grid grow overflow-hidden\">\n <textarea\n part=\"textarea\"\n aria-label={ariaLabel}\n placeholder={bindings.i18n.t('search')}\n class=\"placeholder-neutral-dark\"\n rows={1}\n onInput={(e) => {\n onInput?.(e);\n syncTextWithReplica(textAreaRef);\n }}\n onKeyDown={(e) => {\n syncTextWithReplica(textAreaRef);\n if (e.key === 'Enter') {\n if (e.shiftKey) {\n return;\n }\n e.preventDefault();\n }\n onKeyDown?.(e);\n }}\n onKeyUp={(e) => {\n onKeyUp?.(e);\n if (e.key === 'Enter') {\n e.preventDefault();\n return;\n }\n syncTextWithReplica(textAreaRef);\n }}\n onBlur={(e) => {\n onBlur?.(e);\n collapseTextArea(textAreaRef);\n syncTextWithReplica(textAreaRef);\n }}\n onChange={(e) => {\n onChange?.(e);\n syncTextWithReplica(textAreaRef);\n }}\n onFocus={(e) => {\n onFocus?.(e);\n const target = e.target as HTMLTextAreaElement;\n syncTextWithReplica(textAreaRef ?? target);\n expandTextArea(textAreaRef ?? target);\n }}\n autocomplete=\"off\"\n {...(popup && getPopupAttributes(popup))}\n {...defaultInputProps}\n value={value}\n />\n </div>\n\n {loading && (\n <div class=\"searchbox-button-wrapper ml-2 flex items-center justify-center\">\n <span\n part=\"loading\"\n class=\"loading mr-2 grid h-5 w-5 animate-spin place-items-center rounded-full bg-linear-to-r\"\n ></span>\n </div>\n )}\n {!loading && value && (\n <TextAreaClearButton\n inputRef={textAreaRef}\n bindings={bindings}\n onClick={() => {\n onClear();\n resetReplicaText(textAreaRef);\n }}\n />\n )}\n </div>\n);\n","export function promiseTimeout<T>(prom: T | Promise<T>, ms: number) {\n let id: NodeJS.Timeout;\n const timeout = new Promise((_, reject) => {\n id = setTimeout(() => {\n reject(new Error('Promise timed out.'));\n }, ms);\n });\n return Promise.race([prom, timeout]).then(() => {\n clearTimeout(id);\n });\n}\n","import {isNullOrUndefined} from '@coveo/bueno';\nimport {forceUpdate} from '@stencil/core';\nimport DOMPurify from 'dompurify';\nimport {debounce} from '../../../utils/debounce-utils';\nimport {promiseTimeout} from '../../../utils/promise-utils';\nimport type {\n SearchBoxSuggestionElement,\n SearchBoxSuggestionsBindings,\n SearchBoxSuggestionsEvent,\n} from './suggestions-types';\nimport {elementHasNoQuery, elementHasQuery} from './suggestions-utils';\n\n/**\n * List of suggestions that will be displayed along other lists (e.g recent queries) when the search box's input is selected.\n */\nexport interface SearchBoxSuggestions {\n /**\n * The search box will sort the position of suggestions using this value, the lowest value being first.\n * By default, the DOM position will be used.\n */\n position: number;\n /**\n * Whether the suggestions should be listed in the right or left panel. By default, the suggestions are listed in the right panel.\n */\n panel?: 'left' | 'right';\n /**\n * Method that returns the list of elements which will be rendered in the list of suggestions.\n */\n renderItems(): SearchBoxSuggestionElement[];\n /**\n * Hook called when the user changes the search box's input value. This can lead to all the query suggestions being updated.\n */\n onInput?(): Promise<unknown>;\n /**\n * Hook called when the current suggested query changes as the user navigates the list of suggestions.\n * This is used for instant results, which are rendered based on the current suggested query.\n * @param q The new current suggested query.\n */\n onSuggestedQueryChange?(q: string): Promise<unknown>;\n}\n\ninterface SearchBoxProps {\n getSearchBoxValue: () => string;\n updateQuery: (suggestedQuery: string) => void;\n getSuggestionTimeout: () => number;\n getNumberOfSuggestionsToDisplay: () => number;\n getSuggestionDelay: () => number;\n getLogger: () => Pick<typeof console, 'warn'>;\n getHost: () => HTMLElement;\n}\n\nexport class SuggestionManager<SearchBoxController> {\n public suggestions: SearchBoxSuggestions[] = [];\n public leftSuggestionElements: SearchBoxSuggestionElement[] = [];\n public rightSuggestionElements: SearchBoxSuggestionElement[] = [];\n public leftPanel: HTMLElement | undefined = undefined;\n public rightPanel: HTMLElement | undefined = undefined;\n public triggerSuggestions: () => Promise<void>;\n public activeDescendant = '';\n public suggestedQuery = '';\n public keyboardActiveDescendant = '';\n\n private queryDataAttribute = 'data-query';\n private suggestionEvents: SearchBoxSuggestionsEvent<SearchBoxController>[] =\n [];\n\n private previousActiveDescendantElement: HTMLElement | null = null;\n private leftSuggestions: SearchBoxSuggestions[] = [];\n private rightSuggestions: SearchBoxSuggestions[] = [];\n\n constructor(private ownerSearchBoxProps: SearchBoxProps) {\n this.triggerSuggestions = debounce(\n () => this.executeQuerySuggestion(),\n this.ownerSearchBoxProps.getSuggestionDelay()\n );\n }\n\n public get partialSuggestionBindings(): Pick<\n SearchBoxSuggestionsBindings<SearchBoxController>,\n | 'suggestedQuery'\n | 'clearSuggestions'\n | 'triggerSuggestions'\n | 'getSuggestions'\n | 'getSuggestionElements'\n > {\n return {\n suggestedQuery: () => this.suggestedQuery,\n clearSuggestions: () => this.clearSuggestions(),\n triggerSuggestions: () => this.triggerSuggestions(),\n getSuggestions: () => this.suggestions,\n getSuggestionElements: () => this.allSuggestionElements,\n };\n }\n\n public get activeDescendantElement(): HTMLElement | null {\n if (!this.hasActiveDescendant) {\n return null;\n }\n\n return (\n this.leftPanel?.querySelector(`#${this.activeDescendant}`) ||\n this.rightPanel?.querySelector(`#${this.activeDescendant}`) ||\n null\n );\n }\n\n public onSubmit() {\n this.clickOnActiveElement();\n this.clearSuggestions();\n }\n\n public updateActiveDescendant(id = '') {\n this.activeDescendant = id;\n forceUpdate(this.ownerSearchBoxProps.getHost());\n }\n\n public updateKeyboardActiveDescendant(id = '') {\n this.keyboardActiveDescendant = id;\n }\n\n public clickOnActiveElement() {\n this.activeDescendantElement?.click();\n this.updateActiveDescendant();\n }\n\n public isRightPanelInFocus() {\n if (\n isNullOrUndefined(this.panelInFocus) ||\n isNullOrUndefined(this.rightPanel)\n ) {\n return false;\n }\n\n return this.panelInFocus === this.rightPanel;\n }\n\n public initializeSuggestions(\n bindings: SearchBoxSuggestionsBindings<SearchBoxController>\n ) {\n this.suggestions = this.suggestionEvents.map((event) => event(bindings));\n }\n\n public registerSuggestionsFromEvent(\n event: CustomEvent<SearchBoxSuggestionsEvent<SearchBoxController>>,\n bindings: SearchBoxSuggestionsBindings<SearchBoxController>\n ) {\n event.preventDefault();\n event.stopPropagation();\n this.suggestionEvents.push(event.detail);\n this.suggestions.push(event.detail(bindings));\n }\n\n public registerSuggestions(suggestions: SearchBoxSuggestions) {\n this.suggestions.push(suggestions);\n }\n\n public get isDoubleList() {\n return Boolean(\n this.leftSuggestionElements.length && this.rightSuggestionElements.length\n );\n }\n\n public focusPanel(side: 'left' | 'right') {\n const panel = side === 'left' ? this.leftPanel : this.rightPanel;\n\n if (this.panelInFocus === panel) {\n return;\n }\n if (panel?.firstElementChild) {\n const panelHasActiveDescendant =\n this.previousActiveDescendantElement &&\n panel.contains(this.previousActiveDescendantElement);\n const newValue = panelHasActiveDescendant\n ? this.previousActiveDescendantElement!\n : (panel.firstElementChild as HTMLElement);\n this.updateDescendants(newValue.id);\n }\n }\n\n public clearSuggestions() {\n this.clearSuggestionElements();\n this.updateActiveDescendant();\n }\n\n public async focusNextValue() {\n if (!this.hasSuggestions || !this.nextOrFirstValue) {\n return;\n }\n\n await this.focusValue(this.nextOrFirstValue as HTMLElement);\n }\n\n public async focusValue(value: HTMLElement) {\n this.updateKeyboardActiveDescendant(value.id);\n this.updateActiveDescendant(value.id);\n this.scrollActiveDescendantIntoView();\n await this.updateQueryFromSuggestion();\n }\n\n public async onSuggestionMouseOver(\n item: SearchBoxSuggestionElement,\n side: 'left' | 'right',\n id: string\n ) {\n const thisPanel = side === 'left' ? this.leftPanel : this.rightPanel;\n // When hovering, always reset the keyboard active descendant\n this.updateKeyboardActiveDescendant();\n if (this.panelInFocus === thisPanel) {\n this.updateActiveDescendant(id);\n } else {\n this.updateDescendants(id);\n }\n if (item.query) {\n await this.updateSuggestedQuery(item.query);\n }\n }\n\n public async onSuggestionClick(item: SearchBoxSuggestionElement, e: Event) {\n if (item.query) {\n this.clearSuggestions();\n await this.updateOwnerSearchboxQuery(item.query);\n }\n item.onSelect?.(e);\n }\n\n public get hasSuggestions() {\n return !!this.allSuggestionElements.length;\n }\n\n public get allSuggestionElements() {\n return [...this.leftSuggestionElements, ...this.rightSuggestionElements];\n }\n\n public async focusPreviousValue() {\n if (this.firstValue === this.activeDescendantElement) {\n this.updateKeyboardActiveDescendant();\n this.updateActiveDescendant();\n return;\n }\n\n if (!this.hasSuggestions || !this.previousOrLastValue) {\n return;\n }\n\n await this.focusValue(this.previousOrLastValue as HTMLElement);\n }\n\n public get hasActiveDescendant() {\n return this.activeDescendant !== '';\n }\n\n private async executeQuerySuggestion() {\n this.updateActiveDescendant();\n const settled = await Promise.allSettled(\n this.suggestions.map((suggestion) =>\n promiseTimeout(\n suggestion.onInput ? suggestion.onInput() : Promise.resolve(),\n this.ownerSearchBoxProps.getSuggestionTimeout()\n )\n )\n );\n\n const fulfilledSuggestions: SearchBoxSuggestions[] = [];\n\n settled.forEach((prom, j) => {\n if (prom.status === 'fulfilled') {\n fulfilledSuggestions.push(this.suggestions[j]);\n } else {\n this.ownerSearchBoxProps\n .getLogger()\n .warn(\n 'Some query suggestions are not being shown because the promise timed out.'\n );\n }\n });\n\n const splitSuggestions = (side: 'left' | 'right', isDefault = false) =>\n fulfilledSuggestions\n .filter(\n (suggestion) =>\n suggestion.panel === side || (!suggestion.panel && isDefault)\n )\n .sort(this.sortSuggestions);\n\n this.leftSuggestions = splitSuggestions('left', true);\n this.leftSuggestionElements = this.getAndFilterLeftSuggestionElements();\n\n this.rightSuggestions = splitSuggestions('right');\n this.rightSuggestionElements = this.getSuggestionElements(\n this.rightSuggestions\n );\n\n const defaultSuggestedQuery =\n this.allSuggestionElements.find(elementHasQuery)?.query || '';\n\n await this.updateSuggestedQuery(defaultSuggestedQuery);\n }\n\n private get lastValue() {\n return this.panelInFocus?.lastElementChild;\n }\n\n private get previousOrLastValue() {\n if (!this.hasActiveDescendant) {\n return this.lastValue?.firstChild;\n }\n\n const parentOfActiveDescendant =\n this.activeDescendantElement?.parentElement;\n return (\n parentOfActiveDescendant?.previousElementSibling?.firstChild ||\n this.firstValue?.firstChild\n );\n }\n\n private sortSuggestions(a: SearchBoxSuggestions, b: SearchBoxSuggestions) {\n return a.position - b.position;\n }\n\n private get nextOrFirstValue() {\n if (!this.hasActiveDescendant) {\n return this.firstValue?.firstChild;\n }\n\n const parentOfActiveDescendant =\n this.activeDescendantElement?.parentElement;\n return (\n parentOfActiveDescendant?.nextElementSibling?.firstChild ||\n this.firstValue?.firstChild\n );\n }\n\n private get firstValue() {\n return this.panelInFocus?.firstElementChild;\n }\n\n private get panelInFocus() {\n if (this.leftPanel?.contains(this.activeDescendantElement)) {\n return this.leftPanel;\n }\n if (this.rightPanel?.contains(this.activeDescendantElement)) {\n return this.rightPanel;\n }\n return this.leftPanel || this.rightPanel;\n }\n\n private scrollActiveDescendantIntoView() {\n this.activeDescendantElement?.scrollIntoView({\n block: 'nearest',\n });\n }\n\n private async updateQueryFromSuggestion() {\n const suggestedQuery = this.activeDescendantElement?.getAttribute(\n this.queryDataAttribute\n );\n await this.updateOwnerSearchboxQuery(suggestedQuery || '');\n }\n\n private async updateOwnerSearchboxQuery(query: string) {\n if (query && this.ownerSearchBoxProps.getSearchBoxValue() !== query) {\n this.ownerSearchBoxProps.updateQuery(query);\n await this.updateSuggestedQuery(query);\n }\n }\n\n private async updateSuggestedQuery(suggestedQuery: string) {\n await Promise.allSettled(\n this.suggestions.map((suggestion) =>\n promiseTimeout(\n suggestion.onSuggestedQueryChange\n ? suggestion.onSuggestedQueryChange(suggestedQuery)\n : Promise.resolve(),\n this.ownerSearchBoxProps.getSuggestionTimeout()\n )\n )\n );\n this.suggestedQuery = suggestedQuery;\n this.updateSuggestionElements(suggestedQuery);\n forceUpdate(this.ownerSearchBoxProps.getHost());\n }\n\n private updateSuggestionElements(query: string) {\n if (!this.isPanelInFocus(this.leftPanel, query)) {\n this.leftSuggestionElements = this.getAndFilterLeftSuggestionElements();\n }\n\n if (!this.isPanelInFocus(this.rightPanel, query)) {\n this.rightSuggestionElements = this.getSuggestionElements(\n this.rightSuggestions\n );\n }\n }\n\n public forceUpdate() {\n this.updateSuggestionElements(this.suggestedQuery);\n forceUpdate(this.ownerSearchBoxProps.getHost());\n }\n\n private isPanelInFocus(\n panel: HTMLElement | undefined,\n query: string\n ): boolean {\n if (!this.activeDescendantElement) {\n return false;\n }\n\n if (query) {\n const escaped = DOMPurify.sanitize(query);\n return !!panel?.querySelector(\n `[${this.queryDataAttribute}=\"${CSS.escape(escaped)}\"]`\n );\n }\n\n return this.activeDescendantElement?.closest('ul') === panel;\n }\n\n private getAndFilterLeftSuggestionElements() {\n const suggestionElements = this.getSuggestionElements(this.leftSuggestions);\n const filterOnDuplicate = new Set();\n\n const out = suggestionElements.filter((suggestionElement) => {\n if (isNullOrUndefined(suggestionElement.query)) {\n return true;\n }\n if (filterOnDuplicate.has(suggestionElement.query)) {\n return false;\n } else {\n filterOnDuplicate.add(suggestionElement.query);\n return true;\n }\n });\n\n return out;\n }\n\n private getSuggestionElements(suggestions: SearchBoxSuggestions[]) {\n const elements = suggestions.flatMap((suggestion) =>\n suggestion.renderItems()\n );\n\n const max =\n this.ownerSearchBoxProps.getNumberOfSuggestionsToDisplay() +\n elements.filter(elementHasNoQuery).length;\n\n return elements.slice(0, max);\n }\n\n private updateDescendants(activeDescendant = '') {\n const newPrevDescendantElement = this.activeDescendantElement;\n this.previousActiveDescendantElement = newPrevDescendantElement;\n this.updateActiveDescendant(activeDescendant);\n }\n\n private clearSuggestionElements() {\n this.leftSuggestionElements = [];\n this.rightSuggestionElements = [];\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{h as e}from"./p-dc3df5ce.js";import{F as r}from"./p-4b1dc787.js";const s=(s,t)=>{if(!s.label){return t}const a=s.i18n.t(s.label);const c=s.query===undefined?s.i18n.t("facet-values",{label:a}):s.i18n.t("facet-search-results",{query:s.query,label:a});return e(r,{label:c},t)};export{s as F};
2
- //# sourceMappingURL=p-2a02812b.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["FacetValuesGroup","props","children","label","facetDisplayLabel","i18n","t","groupLabel","query","undefined","h","FieldsetGroup"],"sources":["src/components/common/facets/facet-values-group/stencil-facet-values-group.tsx"],"sourcesContent":["import {h, FunctionalComponent} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {FieldsetGroup} from '../../stencil-fieldset-group';\n\nexport interface FacetValuesGroupProps {\n i18n: i18n;\n label?: string;\n query?: string;\n}\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"],"mappings":"8EAUaA,EAA+D,CAC1EC,EACAC,KAEA,IAAKD,EAAME,MAAO,CAChB,OAAOD,C,CAET,MAAME,EAAoBH,EAAMI,KAAKC,EAAEL,EAAME,OAC7C,MAAMI,EACJN,EAAMO,QAAUC,UACZR,EAAMI,KAAKC,EAAE,eAAgB,CAACH,MAAOC,IACrCH,EAAMI,KAAKC,EAAE,uBAAwB,CACnCE,MAAOP,EAAMO,MACbL,MAAOC,IAGf,OAAOM,EAACC,EAAa,CAACR,MAAOI,GAAaL,EAAyB,S","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["announceFacetSearchResultsWithAriaLive","facet","label","setAriaLive","i18n","prevState","state","facetSearch","subscribe","shouldUpdateFacetSearchComponent","query","t","count","values","length","FacetShowMoreLess","props","showMore","showMoreFacetValues","showLess","showLessFacetValues","btnClasses","iconClasses","canShowLessValues","canShowMoreValues","h","class","Button","style","part","ariaLabel","onClick","onShowLess","ref","showLessRef","icon","MinusIcon","onShowMore","showMoreRef","PlusIcon"],"sources":["src/components/common/facets/facet-search/facet-search-aria-live.ts","src/components/common/facets/facet-show-more-less/stencil-facet-show-more-less.tsx"],"sourcesContent":["import type {Facet, FacetSearchState} from '@coveo/headless';\nimport type {i18n} from 'i18next';\nimport {shouldUpdateFacetSearchComponent} from './facet-search-utils';\n\nexport function announceFacetSearchResultsWithAriaLive(\n facet: Pick<Facet, 'subscribe'> & {state: {facetSearch: FacetSearchState}},\n label: string,\n setAriaLive: (msg: string) => void,\n i18n: i18n\n) {\n let prevState = facet.state.facetSearch;\n facet.subscribe(() => {\n if (\n shouldUpdateFacetSearchComponent(facet.state.facetSearch, prevState) &&\n facet.state.facetSearch.query\n ) {\n prevState = facet.state.facetSearch;\n\n setAriaLive(\n i18n.t('facet-search-results-count', {\n count: facet.state.facetSearch.values.length,\n label,\n })\n );\n }\n });\n}\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport MinusIcon from '../../../../images/minus.svg';\nimport PlusIcon from '../../../../images/plus.svg';\nimport {Button} from '../../stencil-button';\n\ninterface FacetShowMoreProps {\n label: string;\n i18n: i18n;\n canShowLessValues: boolean;\n canShowMoreValues: boolean;\n onShowMore(): void;\n onShowLess(): void;\n showMoreRef?: (element?: HTMLButtonElement) => void;\n showLessRef?: (element?: HTMLButtonElement) => void;\n}\n\nexport const FacetShowMoreLess: FunctionalComponent<FacetShowMoreProps> = (\n props\n) => {\n const label = props.i18n.t(props.label);\n const showMore = props.i18n.t('show-more');\n const showMoreFacetValues = props.i18n.t('show-more-facet-values', {\n label,\n });\n const showLess = props.i18n.t('show-less');\n const showLessFacetValues = props.i18n.t('show-less-facet-values', {\n label,\n });\n const btnClasses = 'flex items-baseline text-left p-2 text-sm max-w-full';\n const iconClasses = 'w-2 h-2 mr-1';\n if (!props.canShowLessValues && !props.canShowMoreValues) {\n return;\n }\n\n return (\n <div class=\"mt-2\">\n <Button\n style=\"text-primary\"\n part=\"show-less\"\n class={`${btnClasses} ${props.canShowLessValues ? '' : 'hidden'}`}\n ariaLabel={showLessFacetValues}\n onClick={() => props.onShowLess()}\n ref={props.showLessRef}\n >\n <atomic-icon\n part=\"show-more-less-icon\"\n class={iconClasses}\n icon={MinusIcon}\n ></atomic-icon>\n <span class=\"truncate\">{showLess}</span>\n </Button>\n <Button\n style=\"text-primary\"\n part=\"show-more\"\n class={`${btnClasses} ${props.canShowMoreValues ? '' : 'hidden'}`}\n ariaLabel={showMoreFacetValues}\n onClick={() => props.onShowMore()}\n ref={props.showMoreRef}\n >\n <atomic-icon\n part=\"show-more-less-icon\"\n class={iconClasses}\n icon={PlusIcon}\n ></atomic-icon>\n <span class=\"truncate\">{showMore}</span>\n </Button>\n </div>\n );\n};\n"],"mappings":"gHAIgBA,EACdC,EACAC,EACAC,EACAC,GAEA,IAAIC,EAAYJ,EAAMK,MAAMC,YAC5BN,EAAMO,WAAU,KACd,GACEC,EAAiCR,EAAMK,MAAMC,YAAaF,IAC1DJ,EAAMK,MAAMC,YAAYG,MACxB,CACAL,EAAYJ,EAAMK,MAAMC,YAExBJ,EACEC,EAAKO,EAAE,6BAA8B,CACnCC,MAAOX,EAAMK,MAAMC,YAAYM,OAAOC,OACtCZ,U,IAKV,C,wQCTaa,EACXC,IAEA,MAAMd,EAAQc,EAAMZ,KAAKO,EAAEK,EAAMd,OACjC,MAAMe,EAAWD,EAAMZ,KAAKO,EAAE,aAC9B,MAAMO,EAAsBF,EAAMZ,KAAKO,EAAE,yBAA0B,CACjET,UAEF,MAAMiB,EAAWH,EAAMZ,KAAKO,EAAE,aAC9B,MAAMS,EAAsBJ,EAAMZ,KAAKO,EAAE,yBAA0B,CACjET,UAEF,MAAMmB,EAAa,uDACnB,MAAMC,EAAc,eACpB,IAAKN,EAAMO,oBAAsBP,EAAMQ,kBAAmB,CACxD,M,CAGF,OACEC,EAAA,OAAKC,MAAM,QACTD,EAACE,EAAM,CACLC,MAAM,eACNC,KAAK,YACLH,MAAO,GAAGL,KAAcL,EAAMO,kBAAoB,GAAK,WACvDO,UAAWV,EACXW,QAAS,IAAMf,EAAMgB,aACrBC,IAAKjB,EAAMkB,aAEXT,EAAA,eACEI,KAAK,sBACLH,MAAOJ,EACPa,KAAMC,IAERX,EAAA,QAAMC,MAAM,YAAYP,IAE1BM,EAACE,EAAM,CACLC,MAAM,eACNC,KAAK,YACLH,MAAO,GAAGL,KAAcL,EAAMQ,kBAAoB,GAAK,WACvDM,UAAWZ,EACXa,QAAS,IAAMf,EAAMqB,aACrBJ,IAAKjB,EAAMsB,aAEXb,EAAA,eACEI,KAAK,sBACLH,MAAOJ,EACPa,KAAMI,IAERd,EAAA,QAAMC,MAAM,YAAYT,IAEtB,S","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["FacetSegmentedValue","props","compactCount","Intl","NumberFormat","i18n","language","notation","format","numberOfResults","count","toLocaleString","ariaLabel","t","value","displayValue","formattedCount","h","key","Button","style","part","isSelected","onClick","class","ariaPressed","toString","title","text","atomicSegmentedFacetCss","AtomicSegmentedFacetStyle0","AtomicSegmentedFacet","this","tabsIncluded","tabsExcluded","filterFacetCount","injectionDepth","numberOfValues","sortCriteria","dependsOn","allowedValues","customSort","initialize","length","console","warn","searchStatus","buildSearchStatus","bindings","engine","tabManager","buildTabManager","facet","buildFacet","options","facetOptions","facetId","state","dependenciesManager","buildFacetConditionsManager","conditions","parseDependsOn","disconnectedCallback","stopWatching","renderValuesContainer","children","classes","FacetValuesGroup","label","renderValue","facetValue","getFieldValueCaption","field","searchQuery","facetState","facetSearch","query","renderValues","values","map","toggleSingleSelect","renderLabel","hasBreadcrumbs","undefined","tabs","included","excluded","render","hasError","enabled","Hidden","firstSearchExecuted","__decorate","InitializeBindings","BindStateToController","ArrayProp","MapProp"],"sources":["src/components/search/facets/facet-segmented-value/facet-segmented-value.tsx","src/components/search/facets/atomic-segmented-facet/atomic-segmented-facet.pcss?tag=atomic-segmented-facet&encapsulation=shadow","src/components/search/facets/atomic-segmented-facet/atomic-segmented-facet.tsx"],"sourcesContent":["import {FunctionalComponent, h} from '@stencil/core';\nimport {FacetValueProps} from '../../../common/facets/stencil-facet-common';\nimport {Button} from '../../../common/stencil-button';\n\nexport const FacetSegmentedValue: FunctionalComponent<FacetValueProps> = (\n props\n) => {\n const compactCount = new Intl.NumberFormat(props.i18n.language, {\n notation: 'compact',\n }).format(props.numberOfResults);\n\n const count = props.numberOfResults.toLocaleString(props.i18n.language);\n\n const ariaLabel = props.i18n.t('facet-value', {\n value: props.displayValue,\n count: props.numberOfResults,\n formattedCount: count,\n });\n\n return (\n <li key={props.displayValue}>\n <Button\n style=\"square-neutral\"\n part={`value-box${props.isSelected ? ' value-box-selected' : ''}`}\n onClick={() => props.onClick()}\n class={`value-box group box-border flex h-full items-center p-2 ${\n props.isSelected\n ? 'selected border-primary shadow-inner-primary'\n : 'hover:border-primary-light focus-visible:border-primary-light'\n }`}\n ariaPressed={props.isSelected.toString()}\n ariaLabel={ariaLabel}\n >\n <span\n title={props.displayValue}\n part=\"value-label\"\n class={`value-label truncate ${\n props.isSelected\n ? 'text-primary'\n : 'group-hover:text-primary-light group-focus:text-primary'\n }`}\n >\n {props.displayValue}\n </span>\n <span\n title={count}\n part=\"value-count\"\n class={`value-box-count mt-0 w-auto truncate pl-1 text-sm ${\n props.isSelected\n ? 'text-primary'\n : 'text-neutral-dark group-hover:text-primary-light group-focus:text-primary'\n }`}\n >\n {props.i18n.t('between-parentheses', {\n text: compactCount,\n })}\n </span>\n </Button>\n </li>\n );\n};\n","@import '../../../common/facets/facet-common.pcss';\n@import '../facet-segmented-value/facet-segmented-value.pcss';\n","import {\n buildFacet,\n buildFacetConditionsManager,\n buildSearchStatus,\n CategoryFacetValueRequest,\n Facet,\n FacetConditionsManager,\n FacetOptions,\n FacetSortCriterion,\n FacetState,\n FacetValue,\n FacetValueRequest,\n SearchStatus,\n SearchStatusState,\n buildTabManager,\n TabManager,\n TabManagerState,\n} from '@coveo/headless';\nimport {Component, h, Prop, State, VNode} from '@stencil/core';\nimport {getFieldValueCaption} from '../../../../utils/field-utils';\nimport {\n BindStateToController,\n InitializableComponent,\n InitializeBindings,\n} from '../../../../utils/initialization-utils';\nimport {ArrayProp, MapProp} from '../../../../utils/props-utils';\nimport {parseDependsOn} from '../../../common/facets/depends-on';\nimport {FacetValuesGroup} from '../../../common/facets/facet-values-group/stencil-facet-values-group';\nimport {Hidden} from '../../../common/stencil-hidden';\nimport {Bindings} from '../../atomic-search-interface/atomic-search-interface';\nimport {FacetSegmentedValue} from '../facet-segmented-value/facet-segmented-value';\n\n/**\n * The `atomic-segmented-facet` displays a horizontal facet of the results for the current query.\n * @part segmented-container - The container that holds the segmented facets.\n * @part label - The facet value label.\n * @part values - The facet values container.\n * @part value-box - The facet value.\n * @part value-box-selected - The selected facet value.\n * @part placeholder - The placeholder displayed when the facet is loading.\n */\n@Component({\n tag: 'atomic-segmented-facet',\n styleUrl: 'atomic-segmented-facet.pcss',\n shadow: true,\n})\nexport class AtomicSegmentedFacet implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n public searchStatus!: SearchStatus;\n public tabManager!: TabManager;\n @State()\n public searchStatusState!: SearchStatusState;\n @BindStateToController('tabManager')\n @State()\n public tabManagerState!: TabManagerState;\n @BindStateToController('facet')\n @State()\n public facetState!: FacetState;\n public facet!: Facet;\n @State() public error!: Error;\n\n /**\n * Specifies a unique identifier for the facet.\n */\n @Prop({mutable: true, reflect: true}) public facetId?: string;\n /**\n * The field whose values you want to display in the facet.\n */\n @Prop({reflect: true}) public field!: string;\n /**\n * The non-localized label for the facet.\n * Used in the `atomic-breadbox` component through the bindings store.\n */\n @Prop({reflect: true}) public label?: string;\n /**\n * The tabs on which the facet can be displayed. This property should not be used at the same time as `tabs-excluded`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-timeframe-facet tabs-included='[\"tabIDA\", \"tabIDB\"]'></atomic-timeframe-facet>\n * ```\n * If you don't set this property, the facet can be displayed on any tab. Otherwise, the facet can only be displayed on the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsIncluded: string[] | string = '[]';\n\n /**\n * The tabs on which this facet must not be displayed. This property should not be used at the same time as `tabs-included`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-timeframe-facet tabs-excluded='[\"tabIDA\", \"tabIDB\"]'></atomic-timeframe-facet>\n * ```\n * If you don't set this property, the facet can be displayed on any tab. Otherwise, the facet won't be displayed on any of the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsExcluded: string[] | string = '[]';\n\n /**\n * Whether to exclude the parents of folded results when estimating the result count for each facet value.\n *\n *\n * Note: Resulting count is only an estimation, in some cases this value could be incorrect.\n */\n @Prop({reflect: true}) public filterFacetCount = true;\n /**\n * The maximum number of results to scan in the index to ensure that the facet lists all potential facet values.\n * Note: A high injectionDepth may negatively impact the facet request performance.\n * Minimum: `0`\n * Default: `1000`\n */\n @Prop() public injectionDepth = 1000;\n /**\n * The number of values to request for this facet.\n * Also determines the number of additional values to request each time more values are shown.\n */\n @Prop({reflect: true}) public numberOfValues = 6;\n /**\n * The sort criterion to apply to the returned facet values.\n * Possible values are 'score', 'alphanumeric', 'alphanumericDescending', 'occurrences', alphanumericNatural', 'alphanumericNaturalDescending' and 'automatic'.\n */\n @Prop({reflect: true}) public sortCriteria: FacetSortCriterion = 'automatic';\n\n /**\n * The required facets and values for this facet to be displayed.\n * Examples:\n * ```html\n * <atomic-segmented-facet facet-id=\"abc\" field=\"objecttype\" ...></atomic-segmented-facet>\n *\n * <!-- To show the facet when any value is selected in the facet with id \"abc\": -->\n * <atomic-segmented-facet\n * depends-on-abc\n * ...\n * ></atomic-segmented-facet>\n *\n * <!-- To show the facet when value \"doc\" is selected in the facet with id \"abc\": -->\n * <atomic-facet\n * depends-on-abc=\"doc\"\n * ...\n * ></atomic-segmented-facet>\n * ```\n */\n @MapProp() @Prop() public dependsOn: Record<string, string> = {};\n /**\n * Specifies an explicit list of `allowedValues` in the Search API request. This list is in the form of a JSON string.\n *\n * If you specify a list of values for this option, the facet only uses these values (if they are available in\n * the current result set).\n *\n * Example:\n *\n * The following facet only uses the `Contact`, `Account`, and `File` values of the `objecttype` field. Even if the\n * current result set contains other `objecttype` values, such as `Message` or `Product`, the facet does not use\n * them.\n *\n * ```html\n * <atomic-segmented-facet field=\"objecttype\" allowed-values='[\"Contact\",\"Account\",\"File\"]'></atomic-segmented-facet>\n * ```\n *\n * The maximum amount of allowed values is 25.\n *\n * The default value is `undefined`, and the facet uses all available values for its `field` in the current result set.\n */\n @ArrayProp()\n @Prop({mutable: true})\n public allowedValues: string[] | string = '[]';\n\n /**\n * Identifies the facet values that must appear at the top, in this order.\n * This parameter can be used in conjunction with the `sortCriteria` parameter.\n *\n * Facet values not part of the `customSort` list will be sorted according to the `sortCriteria`.\n *\n * Example:\n *\n * The following facet will sort the `Contact`, `Account`, and `File` values at the top of the list for the `objecttype` field.\n *\n * If there are more than these 3 values available, the rest of the list will be sorted using `occurrences`.\n *\n * ```html\n * <atomic-segmented-facet field=\"objecttype\" custom-sort='[\"Contact\",\"Account\",\"File\"]' sort-criteria='occurrences'></atomic-segmented-facet>\n * ```\n * The maximum amount of custom sort values is 25.\n *\n * The default value is `undefined`, and the facet values will be sorted using only the `sortCriteria`.\n */\n @ArrayProp()\n @Prop({mutable: true})\n public customSort: string[] | string = '[]';\n\n private dependenciesManager!: FacetConditionsManager;\n\n public initialize() {\n if (\n [...this.tabsIncluded].length > 0 &&\n [...this.tabsExcluded].length > 0\n ) {\n console.warn(\n 'Values for both \"tabs-included\" and \"tabs-excluded\" have been provided. This is could lead to unexpected behaviors.'\n );\n }\n this.searchStatus = buildSearchStatus(this.bindings.engine);\n this.tabManager = buildTabManager(this.bindings.engine);\n\n this.facet = buildFacet(this.bindings.engine, {options: this.facetOptions});\n this.facetId = this.facet.state.facetId;\n this.dependenciesManager = buildFacetConditionsManager(\n this.bindings.engine,\n {\n facetId: this.facetId!,\n conditions: parseDependsOn<\n FacetValueRequest | CategoryFacetValueRequest\n >(this.dependsOn),\n }\n );\n }\n\n disconnectedCallback() {\n this.dependenciesManager.stopWatching();\n }\n\n private renderValuesContainer(children: VNode[]) {\n const classes = 'box-container flex h-10';\n return (\n <FacetValuesGroup i18n={this.bindings.i18n} label={this.label}>\n <ul class={classes} part=\"values\">\n {children}\n </ul>\n </FacetValuesGroup>\n );\n }\n\n private renderValue(facetValue: FacetValue, onClick: () => void) {\n const displayValue = getFieldValueCaption(\n this.field,\n facetValue.value,\n this.bindings.i18n\n );\n const isSelected = facetValue.state !== 'idle';\n\n return (\n <FacetSegmentedValue\n displayValue={displayValue}\n numberOfResults={facetValue.numberOfResults}\n isSelected={isSelected}\n i18n={this.bindings.i18n}\n onClick={onClick}\n searchQuery={this.facetState.facetSearch.query}\n ></FacetSegmentedValue>\n );\n }\n\n private renderValues() {\n return this.renderValuesContainer(\n this.facetState.values.map((value) =>\n this.renderValue(value, () => this.facet.toggleSingleSelect(value))\n )\n );\n }\n\n private renderLabel() {\n if (!this.label) {\n return;\n }\n return (\n <b class=\"mr-2\" part=\"label\">\n {this.label}:\n </b>\n );\n }\n\n private get facetOptions(): FacetOptions {\n return {\n facetId: this.facetId,\n field: this.field,\n numberOfValues: this.numberOfValues,\n sortCriteria: this.sortCriteria,\n facetSearch: {numberOfValues: this.numberOfValues},\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n hasBreadcrumbs: false,\n allowedValues: this.allowedValues.length\n ? [...this.allowedValues]\n : undefined,\n customSort: this.customSort.length ? [...this.customSort] : undefined,\n tabs: {\n included: [...this.tabsIncluded],\n excluded: [...this.tabsExcluded],\n },\n };\n }\n\n public render() {\n if (this.searchStatus.state.hasError || !this.facet.state.enabled) {\n return <Hidden></Hidden>;\n }\n\n if (!this.searchStatus.state.firstSearchExecuted) {\n return (\n <div\n part=\"placeholder\"\n aria-hidden\n class=\"bg-neutral h-8 w-48 animate-pulse rounded\"\n ></div>\n );\n }\n\n if (!this.facetState.values.length) {\n return <Hidden></Hidden>;\n }\n\n return (\n <div\n part=\"segmented-container\"\n class=\"mr-2 flex h-10 items-center whitespace-nowrap\"\n >\n {this.renderLabel()}\n {this.renderValues()}\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["FieldValueIsNaNError","Error","constructor","field","value","super","this","name","Rating","props","width","numberOfActiveIcons","numberOfTotalIcons","toString","iconSize","renderIcon","active","h","icon","class","style","height","part","emptyIconDisplay","i","push","filledIconDisplay","role","i18n","t","count","max","computeNumberOfStars","valueAsNumber","parseFloat","Number","isNaN"],"sources":["src/components/commerce/product-template-component-utils/error.ts","src/components/common/atomic-rating/stencil-rating.tsx"],"sourcesContent":["export class FieldValueIsNaNError extends Error {\n constructor(field: string, value?: {}) {\n super(`Could not parse \"${value}\" from field \"${field}\" as a number.`);\n this.name = 'FieldValueIsNaNError';\n }\n}\n","import {FunctionalComponent, h, VNode} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {FieldValueIsNaNError} from '../../commerce/product-template-component-utils/error';\n\ninterface RatingProps {\n i18n: i18n;\n numberOfTotalIcons: number;\n numberOfActiveIcons: number;\n icon: string;\n iconSize?: number;\n}\n/** \n * @deprecated Use `renderRating` instead. \n*/\nexport const Rating: FunctionalComponent<RatingProps> = (props) => {\n const width =\n ((props.numberOfActiveIcons / props.numberOfTotalIcons) * 100).toString() +\n '%';\n const iconSize = `${props.iconSize ?? 0.75}rem`;\n\n const renderIcon = (active: boolean) => {\n return (\n <atomic-icon\n icon={props.icon}\n class={`shrink-0 ${active ? 'icon-active' : 'icon-inactive'}`}\n style={{width: iconSize, height: iconSize}}\n part=\"value-rating-icon\"\n ></atomic-icon>\n );\n };\n\n const emptyIconDisplay = () => {\n const emptyIconDisplay: VNode[] = [];\n for (let i = 0; i < props.numberOfTotalIcons; i++) {\n emptyIconDisplay.push(renderIcon(false));\n }\n return emptyIconDisplay;\n };\n\n const filledIconDisplay = () => {\n const filledIconDisplay: VNode[] = [];\n for (let i = 0; i < props.numberOfTotalIcons; i++) {\n filledIconDisplay.push(renderIcon(true));\n }\n return filledIconDisplay;\n };\n\n return (\n <div\n class=\"relative w-max\"\n part=\"value-rating\"\n role=\"img\"\n aria-label={props.i18n.t('stars', {\n count: props.numberOfActiveIcons,\n max: props.numberOfTotalIcons,\n })}\n >\n <div class=\"z-0 flex gap-0.5\">{emptyIconDisplay()}</div>\n <div\n class=\"absolute top-0 left-0 z-1 flex gap-0.5 overflow-hidden\"\n style={{width}}\n >\n {filledIconDisplay()}\n </div>\n </div>\n );\n};\n\nexport const computeNumberOfStars = (\n value: unknown,\n field: string\n): number | null => {\n if (value === null) {\n return null;\n }\n const valueAsNumber = parseFloat(`${value}`);\n if (Number.isNaN(valueAsNumber)) {\n throw new FieldValueIsNaNError(field, value);\n }\n return valueAsNumber;\n};\n"],"mappings":"65BAAaA,UAA6BC,MACxC,WAAAC,CAAYC,EAAeC,GACzBC,MAAM,oBAAoBD,kBAAsBD,mBAChDG,KAAKC,KAAO,sB,QCWHC,EAA4CC,IACvD,MAAMC,GACFD,EAAME,oBAAsBF,EAAMG,mBAAsB,KAAKC,WAC/D,IACF,MAAMC,EAAW,GAAGL,EAAMK,UAAY,SAEtC,MAAMC,EAAcC,GAEhBC,EAAA,eACEC,KAAMT,EAAMS,KACZC,MAAO,YAAYH,EAAS,cAAgB,kBAC5CI,MAAO,CAACV,MAAOI,EAAUO,OAAQP,GACjCQ,KAAK,sBAKX,MAAMC,EAAmB,KACvB,MAAMA,EAA4B,GAClC,IAAK,IAAIC,EAAI,EAAGA,EAAIf,EAAMG,mBAAoBY,IAAK,CACjDD,EAAiBE,KAAKV,EAAW,O,CAEnC,OAAOQ,CAAgB,EAGzB,MAAMG,EAAoB,KACxB,MAAMA,EAA6B,GACnC,IAAK,IAAIF,EAAI,EAAGA,EAAIf,EAAMG,mBAAoBY,IAAK,CACjDE,EAAkBD,KAAKV,EAAW,M,CAEpC,OAAOW,CAAiB,EAG1B,OACET,EAAA,OACEE,MAAM,iBACNG,KAAK,eACLK,KAAK,MAAK,aACElB,EAAMmB,KAAKC,EAAE,QAAS,CAChCC,MAAOrB,EAAME,oBACboB,IAAKtB,EAAMG,sBAGbK,EAAA,OAAKE,MAAM,oBAAoBI,KAC/BN,EAAA,OACEE,MAAM,yDACNC,MAAO,CAACV,UAEPgB,KAEC,E,MAIGM,EAAuB,CAClC5B,EACAD,KAEA,GAAIC,IAAU,KAAM,CAClB,OAAO,I,CAET,MAAM6B,EAAgBC,WAAW,GAAG9B,KACpC,GAAI+B,OAAOC,MAAMH,GAAgB,CAC/B,MAAM,IAAIjC,EAAqBG,EAAOC,E,CAExC,OAAO6B,CAAa,S","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["getFieldTableColumns","props","itemRenderingFunction","getFieldTableColumnsFromRenderingFunction","getFieldTableColumnsFromHTMLTemplate","contentOfRenderingFunction","document","createElement","contentOfRenderingFunctionAsString","firstItem","innerHTML","Array","from","querySelectorAll","tableElementTagName","templateContentForFirstItem","DisplayTable","children","fieldColumns","length","logger","error","host","h","class","listClasses","part","map","column","value","getAttribute","DisplayTableRow","key","rowIndex","setRef","ref","element","DisplayTableData","renderItem","TabGuard","tabsIncluded","tabsExcluded","activeTab","shouldDisplayOnCurrentTab","Hidden","Fragment","atomicResultListCss","AtomicResultListStyle0","AtomicResultList","this","loadingFlag","randomID","resultTemplateRegistered","isAppLoaded","templateHasError","display","density","imageSize","setRenderFunction","resultRenderingFunction","focusTarget","nextNewResultTarget","FocusTargetController","initialize","includes","console","warn","tabManager","buildTabManager","bindings","engine","resultList","buildResultList","resultsPerPage","buildResultsPerPage","itemTemplateProvider","ItemTemplateProvider","includeDefaultTemplate","templateElements","getResultTemplateRegistered","getTemplateHasError","setResultTemplateRegistered","setTemplateHasError","resultListCommon","ItemListCommon","engineSubscribe","subscribe","getCurrentNumberOfItems","resultListState","results","getIsLoading","isLoading","nextNewItemTarget","store","createAppLoadedListener","watchTabManagerState","newValue","oldValue","unsetLoadingFlag","render","updateBreakpoints","computeListDisplayClasses","tabManagerState","ItemListGuard","hasError","hasTemplate","firstRequestExecuted","firstSearchExecuted","hasItems","hasResults","DisplayWrapper","ResultsPlaceholdersGuard","displayPlaceholders","numberOfPlaceholders","resultsPerPageState","numberOfResults","ItemDisplayGuard","renderAsTable","renderAsGrid","renderAsList","getPropsForAtomicResult","result","interactiveResult","buildInteractiveResult","options","renderingFunction","getResultId","uniqueId","searchResponseId","content","getTemplateContent","linkContent","getLinkTemplateContent","getEmptyLinkTemplateContent","getItemListDisplayClasses","i","propsForAtomicResult","DisplayGrid","selectorForItem","item","setNewResultRef","propsForTableColumns","__decorate","InitializeBindings","BindStateToController","ArrayProp"],"sources":["src/components/common/item-list/stencil-display-table.tsx","src/components/common/tabs/tab-guard.tsx","src/components/search/result-lists/atomic-result-list/atomic-result-list.pcss?tag=atomic-result-list&encapsulation=shadow","src/components/search/result-lists/atomic-result-list/atomic-result-list.tsx"],"sourcesContent":["// The Lit equivalent of this file is table-layout.ts\nimport {FunctionalComponent, VNode, h} from '@stencil/core';\nimport {tableElementTagName} from '../../search/atomic-table-result/table-element-utils.js';\nimport {AnyItem} from './unfolded-item.js';\nimport {ItemRenderingFunction} from './stencil-item-list-common.js';\n\ninterface TableColumnsProps {\n templateContentForFirstItem: DocumentFragment;\n firstItem: AnyItem;\n itemRenderingFunction?: ItemRenderingFunction;\n}\n\nexport interface DisplayTableProps extends TableColumnsProps {\n logger: Pick<Console, 'error'>;\n host: HTMLElement;\n listClasses: string;\n}\n\nexport interface TableDataProps extends TableColumnsProps {\n key: string;\n}\n\nexport interface DisplayTableRowProps {\n key: string;\n rowIndex: number;\n setRef: (element?: HTMLElement) => void;\n}\n\nconst getFieldTableColumns = (props: TableColumnsProps) => {\n if (props.itemRenderingFunction) {\n return getFieldTableColumnsFromRenderingFunction(props);\n }\n return getFieldTableColumnsFromHTMLTemplate(props);\n};\n\nconst getFieldTableColumnsFromRenderingFunction = (\n props: Pick<TableColumnsProps, 'itemRenderingFunction' | 'firstItem'>\n): HTMLAtomicTableElementElement[] => {\n const contentOfRenderingFunction = document.createElement('div');\n\n const contentOfRenderingFunctionAsString = props.itemRenderingFunction!(\n props.firstItem,\n document.createElement('div')\n );\n contentOfRenderingFunction.innerHTML = contentOfRenderingFunctionAsString;\n\n return Array.from(\n contentOfRenderingFunction.querySelectorAll(tableElementTagName)\n );\n};\n\nconst getFieldTableColumnsFromHTMLTemplate = (\n props: Pick<DisplayTableProps, 'templateContentForFirstItem'>\n): HTMLAtomicTableElementElement[] =>\n Array.from(\n props.templateContentForFirstItem.querySelectorAll(tableElementTagName)\n );\n\nexport const DisplayTable: FunctionalComponent<DisplayTableProps> = (\n props,\n children\n) => {\n const fieldColumns = getFieldTableColumns(props);\n\n if (!fieldColumns.length) {\n props.logger.error(\n 'atomic-table-element elements missing in the template to display columns.',\n props.host\n );\n }\n\n return (\n <table class={`list-root ${props.listClasses}`} part=\"result-table\">\n <thead part=\"result-table-heading\">\n <tr part=\"result-table-heading-row\">\n {fieldColumns.map((column) => (\n <th part=\"result-table-heading-cell\">\n <atomic-text value={column.getAttribute('label')!}></atomic-text>\n </th>\n ))}\n </tr>\n </thead>\n <tbody part=\"result-table-body\">{...children}</tbody>\n </table>\n );\n};\n\nexport const DisplayTableRow: FunctionalComponent<DisplayTableRowProps> = (\n {key, rowIndex, setRef},\n children\n) => {\n return (\n <tr\n key={key}\n part={\n 'result-table-row ' +\n (rowIndex % 2 === 1 ? 'result-table-row-even' : 'result-table-row-odd')\n }\n ref={(element) => setRef(element)}\n >\n {...children}\n </tr>\n );\n};\n\nexport const DisplayTableData: FunctionalComponent<\n TableDataProps & {\n renderItem: (content: HTMLAtomicTableElementElement) => VNode;\n }\n> = (props) => {\n const fieldColumns = getFieldTableColumns(props);\n\n return fieldColumns.map((column) => {\n const key = column.getAttribute('label')! + props.key;\n return (\n <td key={key} part=\"result-table-cell\">\n {props.renderItem(column)}\n </td>\n );\n });\n};\n","import {Fragment, FunctionalComponent, h} from '@stencil/core';\nimport {shouldDisplayOnCurrentTab} from '../../../utils/tab-utils';\nimport {Hidden} from '../stencil-hidden';\n\ninterface TabGuardProps {\n tabsIncluded: string | string[];\n tabsExcluded: string | string[];\n activeTab: string;\n}\n\nexport const TabGuard: FunctionalComponent<TabGuardProps> = (\n {tabsIncluded, tabsExcluded, activeTab},\n children\n) => {\n if (\n !shouldDisplayOnCurrentTab([...tabsIncluded], [...tabsExcluded], activeTab)\n ) {\n return <Hidden></Hidden>;\n }\n return <Fragment>{...children}</Fragment>;\n};\n","@import '../../../../global/global.pcss';\n@import '../../../common/item-list/styles/placeholders.pcss';\n@import '../../../common/item-list/styles/table-display.pcss';\n@import '../../../common/item-list/styles/list-display.pcss';\n@import '../../../common/item-list/styles/grid-display.pcss';\n\natomic-result:not(.hydrated) {\n visibility: hidden;\n}\n","import {\n ResultList,\n ResultListState,\n buildResultList,\n ResultsPerPageState,\n ResultsPerPage,\n buildResultsPerPage,\n buildInteractiveResult,\n Result,\n TabManager,\n TabManagerState,\n buildTabManager,\n} from '@coveo/headless';\nimport {Component, Element, State, Prop, Method, h, Watch} from '@stencil/core';\nimport {\n BindStateToController,\n InitializableComponent,\n InitializeBindings,\n} from '../../../../utils/initialization-utils';\nimport {ArrayProp} from '../../../../utils/props-utils';\nimport {FocusTargetController} from '../../../../utils/stencil-accessibility-utils';\nimport {randomID} from '../../../../utils/utils';\nimport {ResultsPlaceholdersGuard} from '../../../common/atomic-result-placeholder/stencil-placeholders';\nimport {createAppLoadedListener} from '../../../common/interface/store';\nimport {ItemDisplayGuard} from '../../../common/item-list/item-display-guard';\nimport {ItemListGuard} from '../../../common/item-list/item-list-guard';\nimport {ItemTemplateProvider} from '../../../common/item-list/item-template-provider';\nimport {DisplayGrid} from '../../../common/item-list/stencil-display-grid';\nimport {\n DisplayTableData,\n DisplayTable,\n DisplayTableRow,\n} from '../../../common/item-list/stencil-display-table';\nimport {DisplayWrapper} from '../../../common/item-list/stencil-display-wrapper';\nimport {\n ItemListCommon,\n ItemRenderingFunction,\n} from '../../../common/item-list/stencil-item-list-common';\nimport {\n ItemDisplayDensity,\n ItemDisplayImageSize,\n ItemDisplayLayout,\n getItemListDisplayClasses,\n} from '../../../common/layout/display-options';\nimport {TabGuard} from '../../../common/tabs/tab-guard';\nimport {Bindings} from '../../atomic-search-interface/atomic-search-interface';\n\n/**\n * The `atomic-result-list` component is responsible for displaying query results by applying one or more result templates.\n *\n * @slot default - The default slot where the result templates are inserted.\n * @part result-list - The element containing every result of a result list\n * @part outline - The element displaying an outline or a divider around a result\n * @part result-list-grid-clickable-container - The parent of the result & the clickable link encompassing it, when results are displayed as a grid\n * @part result-list-grid-clickable - The clickable link encompassing the result when results are displayed as a grid\n * @part result-table - The element of the result table containing a heading and a body\n * @part result-table-heading - The element containing the row of cells in the result table's heading\n * @part result-table-heading-row - The element containing cells of the result table's heading\n * @part result-table-heading-cell - The element representing a cell of the result table's heading\n * @part result-table-body - The element containing the rows of the result table's body\n * @part result-table-row - The element containing the cells of a row in the result table's body\n * @part result-table-row-odd - The element containing the cells of an odd row in the result table's body\n * @part result-table-row-even - The element containing the cells of an even row in the result table's body\n * @part result-table-cell - The element representing a cell of the result table's body\n */\n@Component({\n tag: 'atomic-result-list',\n styleUrl: 'atomic-result-list.pcss',\n shadow: true,\n})\nexport class AtomicResultList implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n public resultList!: ResultList;\n public resultsPerPage!: ResultsPerPage;\n private loadingFlag = randomID('firstResultLoaded-');\n private itemRenderingFunction: ItemRenderingFunction;\n private nextNewResultTarget?: FocusTargetController;\n private itemTemplateProvider!: ItemTemplateProvider;\n private resultListCommon!: ItemListCommon;\n\n @Element() public host!: HTMLDivElement;\n\n @BindStateToController('resultList')\n @State()\n private resultListState!: ResultListState;\n @BindStateToController('resultsPerPage')\n @State()\n private resultsPerPageState!: ResultsPerPageState;\n public tabManager!: TabManager;\n @BindStateToController('tabManager')\n @State()\n public tabManagerState!: TabManagerState;\n @State() private resultTemplateRegistered = false;\n @State() public error!: Error;\n @State() private isAppLoaded = false;\n\n @State() private templateHasError = false;\n\n /**\n * The desired layout to use when displaying results. Layouts affect how many results to display per row and how visually distinct they are from each other.\n */\n @Prop({reflect: true}) public display: ItemDisplayLayout = 'list';\n /**\n * The spacing of various elements in the result list, including the gap between results, the gap between parts of a result, and the font sizes of different parts in a result.\n */\n @Prop({reflect: true}) public density: ItemDisplayDensity = 'normal';\n\n /**\n * The expected size of the image displayed in the results.\n */\n @Prop({reflect: true, mutable: true})\n public imageSize: ItemDisplayImageSize = 'icon';\n\n /**\n * The tabs on which the result list can be displayed. This property should not be used at the same time as `tabs-excluded`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-result-list tabs-included='[\"tabIDA\", \"tabIDB\"]'></atomic-result-list snippet>\n * ```\n * If you don't set this property, the result list can be displayed on any tab. Otherwise, the result list can only be displayed on the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsIncluded: string[] | string = '[]';\n\n /**\n * The tabs on which this result list must not be displayed. This property should not be used at the same time as `tabs-included`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-result-list tabs-excluded='[\"tabIDA\", \"tabIDB\"]'></atomic-result-list>\n * ```\n * If you don't set this property, the result list can be displayed on any tab. Otherwise, the result list won't be displayed on any of the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsExcluded: string[] | string = '[]';\n\n /**\n * Sets a rendering function to bypass the standard HTML template mechanism for rendering results.\n * You can use this function while working with web frameworks that don't use plain HTML syntax, e.g., React, Angular or Vue.\n *\n * Do not use this method if you integrate Atomic in a plain HTML deployment.\n *\n * @param resultRenderingFunction\n */\n @Method() public async setRenderFunction(\n resultRenderingFunction: ItemRenderingFunction\n ) {\n this.itemRenderingFunction = resultRenderingFunction;\n }\n\n public get focusTarget() {\n if (!this.nextNewResultTarget) {\n this.nextNewResultTarget = new FocusTargetController(this);\n }\n return this.nextNewResultTarget;\n }\n\n public initialize() {\n if (this.host.innerHTML.includes('<atomic-result-children')) {\n console.warn(\n 'Folded results will not render any children for the \"atomic-result-list\". Please use \"atomic-folded-result-list\" instead.'\n );\n }\n this.tabManager = buildTabManager(this.bindings.engine);\n this.resultList = buildResultList(this.bindings.engine);\n this.resultsPerPage = buildResultsPerPage(this.bindings.engine);\n this.itemTemplateProvider = new ItemTemplateProvider({\n includeDefaultTemplate: true,\n templateElements: Array.from(\n this.host.querySelectorAll('atomic-result-template')\n ),\n getResultTemplateRegistered: () => this.resultTemplateRegistered,\n getTemplateHasError: () => this.templateHasError,\n setResultTemplateRegistered: (value: boolean) => {\n this.resultTemplateRegistered = value;\n },\n setTemplateHasError: (value: boolean) => {\n this.templateHasError = value;\n },\n bindings: this.bindings,\n });\n\n this.resultListCommon = new ItemListCommon({\n engineSubscribe: this.bindings.engine.subscribe,\n getCurrentNumberOfItems: () => this.resultListState.results.length,\n getIsLoading: () => this.resultListState.isLoading,\n host: this.host,\n loadingFlag: this.loadingFlag,\n nextNewItemTarget: this.focusTarget,\n store: this.bindings.store,\n });\n createAppLoadedListener(this.bindings.store, (isAppLoaded) => {\n this.isAppLoaded = isAppLoaded;\n });\n }\n\n @Watch('tabManagerState')\n watchTabManagerState(\n newValue: {activeTab: string},\n oldValue: {activeTab: string}\n ) {\n if (newValue?.activeTab !== oldValue?.activeTab) {\n this.bindings.store.unsetLoadingFlag(this.loadingFlag);\n }\n }\n\n public render() {\n this.resultListCommon.updateBreakpoints();\n const listClasses = this.computeListDisplayClasses();\n\n return (\n <TabGuard\n tabsIncluded={this.tabsIncluded}\n tabsExcluded={this.tabsExcluded}\n activeTab={this.tabManagerState.activeTab}\n >\n <ItemListGuard\n hasError={this.resultListState.hasError}\n hasTemplate={this.resultTemplateRegistered}\n templateHasError={this.itemTemplateProvider.hasError}\n firstRequestExecuted={this.resultListState.firstSearchExecuted}\n hasItems={this.resultListState.hasResults}\n >\n <DisplayWrapper display={this.display} listClasses={listClasses}>\n <ResultsPlaceholdersGuard\n density={this.density}\n display={this.display}\n imageSize={this.imageSize}\n displayPlaceholders={!this.isAppLoaded}\n numberOfPlaceholders={this.resultsPerPageState.numberOfResults}\n ></ResultsPlaceholdersGuard>\n <ItemDisplayGuard\n firstRequestExecuted={this.resultListState.firstSearchExecuted}\n hasItems={this.resultListState.hasResults}\n >\n {this.display === 'table'\n ? this.renderAsTable()\n : this.display === 'grid'\n ? this.renderAsGrid()\n : this.renderAsList()}\n </ItemDisplayGuard>\n </DisplayWrapper>\n </ItemListGuard>\n </TabGuard>\n );\n }\n\n private getPropsForAtomicResult(result: Result) {\n return {\n interactiveResult: buildInteractiveResult(this.bindings.engine, {\n options: {result},\n }),\n result,\n renderingFunction: this.itemRenderingFunction,\n loadingFlag: this.loadingFlag,\n key: this.resultListCommon.getResultId(\n result.uniqueId,\n this.resultListState.searchResponseId,\n this.density,\n this.imageSize\n ),\n content: this.itemTemplateProvider.getTemplateContent(result),\n linkContent:\n this.display === 'grid'\n ? this.itemTemplateProvider.getLinkTemplateContent(result)\n : this.itemTemplateProvider.getEmptyLinkTemplateContent(),\n store: this.bindings.store,\n density: this.density,\n imageSize: this.imageSize,\n display: this.display,\n };\n }\n\n private computeListDisplayClasses() {\n const displayPlaceholders = !this.isAppLoaded;\n\n return getItemListDisplayClasses(\n this.display,\n this.density,\n this.imageSize,\n this.resultListState.firstSearchExecuted &&\n this.resultListState.isLoading,\n displayPlaceholders\n );\n }\n\n private renderAsGrid() {\n return this.resultListState.results.map((result, i) => {\n const propsForAtomicResult = this.getPropsForAtomicResult(result);\n return (\n <DisplayGrid\n selectorForItem=\"atomic-result\"\n item={result}\n {...propsForAtomicResult.interactiveResult}\n setRef={(element) =>\n element && this.resultListCommon.setNewResultRef(element, i)\n }\n >\n <atomic-result {...this} {...propsForAtomicResult}></atomic-result>\n </DisplayGrid>\n );\n });\n }\n\n private renderAsTable() {\n if (!this.resultListState.hasResults) {\n return;\n }\n const listClasses = this.computeListDisplayClasses();\n const firstItem = this.resultListState.results[0];\n\n const propsForTableColumns = {\n firstItem,\n templateContentForFirstItem:\n this.itemTemplateProvider.getTemplateContent(firstItem),\n };\n\n return (\n <DisplayTable\n {...propsForTableColumns}\n listClasses={listClasses}\n logger={this.bindings.engine.logger}\n itemRenderingFunction={this.itemRenderingFunction}\n host={this.host}\n >\n {this.resultListState.results.map((result, i) => {\n const propsForAtomicResult = this.getPropsForAtomicResult(result);\n return (\n <DisplayTableRow\n {...propsForAtomicResult}\n rowIndex={i}\n setRef={(element) =>\n element && this.resultListCommon.setNewResultRef(element, i)\n }\n >\n <DisplayTableData\n {...propsForTableColumns}\n {...propsForAtomicResult}\n renderItem={(content) => {\n return (\n <atomic-result\n {...propsForAtomicResult}\n content={content}\n ></atomic-result>\n );\n }}\n ></DisplayTableData>\n </DisplayTableRow>\n );\n })}\n </DisplayTable>\n );\n }\n\n private renderAsList() {\n return this.resultListState.results.map((result, i) => {\n const propsForAtomicResult = this.getPropsForAtomicResult(result);\n return (\n <atomic-result\n {...propsForAtomicResult}\n ref={(element) =>\n element && this.resultListCommon.setNewResultRef(element, i)\n }\n part=\"outline\"\n ></atomic-result>\n );\n });\n }\n}\n"],"mappings":"u5BA4BA,MAAMA,EAAwBC,IAC5B,GAAIA,EAAMC,sBAAuB,CAC/B,OAAOC,EAA0CF,E,CAEnD,OAAOG,EAAqCH,EAAM,EAGpD,MAAME,EACJF,IAEA,MAAMI,EAA6BC,SAASC,cAAc,OAE1D,MAAMC,EAAqCP,EAAMC,sBAC/CD,EAAMQ,UACNH,SAASC,cAAc,QAEzBF,EAA2BK,UAAYF,EAEvC,OAAOG,MAAMC,KACXP,EAA2BQ,iBAAiBC,GAC7C,EAGH,MAAMV,EACJH,GAEAU,MAAMC,KACJX,EAAMc,4BAA4BF,iBAAiBC,IAGhD,MAAME,EAAuD,CAClEf,EACAgB,KAEA,MAAMC,EAAelB,EAAqBC,GAE1C,IAAKiB,EAAaC,OAAQ,CACxBlB,EAAMmB,OAAOC,MACX,4EACApB,EAAMqB,K,CAIV,OACEC,EAAA,SAAOC,MAAO,aAAavB,EAAMwB,cAAeC,KAAK,gBACnDH,EAAA,SAAOG,KAAK,wBACVH,EAAA,MAAIG,KAAK,4BACNR,EAAaS,KAAKC,GACjBL,EAAA,MAAIG,KAAK,6BACPH,EAAA,eAAaM,MAAOD,EAAOE,aAAa,gBAKhDP,EAAA,SAAOG,KAAK,wBAAwBT,GAC9B,EAIL,MAAMc,EAA6D,EACvEC,MAAKC,WAAUC,UAChBjB,IAGEM,EAAA,MACES,IAAKA,EACLN,KACE,qBACCO,EAAW,IAAM,EAAI,wBAA0B,wBAElDE,IAAMC,GAAYF,EAAOE,OAErBnB,GAKH,MAAMoB,EAIRpC,IACH,MAAMiB,EAAelB,EAAqBC,GAE1C,OAAOiB,EAAaS,KAAKC,IACvB,MAAMI,EAAMJ,EAAOE,aAAa,SAAY7B,EAAM+B,IAClD,OACET,EAAA,MAAIS,IAAKA,EAAKN,KAAK,qBAChBzB,EAAMqC,WAAWV,GACf,GAEP,EC7GG,MAAMW,EAA+C,EACzDC,eAAcC,eAAcC,aAC7BzB,KAEA,IACG0B,EAA0B,IAAIH,GAAe,IAAIC,GAAeC,GACjE,CACA,OAAOnB,EAACqB,EAAM,K,CAEhB,OAAOrB,EAACsB,EAAQ,QAAK5B,EAAoB,ECnB3C,MAAM6B,EAAsB,w8jMAC5B,MAAAC,EAAeD,E,iXCqEFE,EAAgB,M,yBAInBC,KAAAC,YAAcC,EAAS,sBAkBdF,KAAAG,yBAA2B,MAE3BH,KAAAI,YAAc,MAEdJ,KAAAK,iBAAmB,MAKNL,KAAAM,QAA6B,OAI7BN,KAAAO,QAA8B,SAMrDP,KAAAQ,UAAkC,OAalCR,KAAAT,aAAkC,KAalCS,KAAAR,aAAkC,K,+HA7CG,M,sCAEb,M,sBAEK,M,aAKuB,O,aAIC,S,eAMnB,O,kBAaA,K,kBAaA,I,CAUxB,uBAAMiB,CACrBC,GAEAV,KAAK/C,sBAAwByD,C,CAG/B,eAAWC,GACT,IAAKX,KAAKY,oBAAqB,CAC7BZ,KAAKY,oBAAsB,IAAIC,EAAsBb,K,CAEvD,OAAOA,KAAKY,mB,CAGP,UAAAE,GACL,GAAId,KAAK3B,KAAKZ,UAAUsD,SAAS,2BAA4B,CAC3DC,QAAQC,KACN,4H,CAGJjB,KAAKkB,WAAaC,EAAgBnB,KAAKoB,SAASC,QAChDrB,KAAKsB,WAAaC,EAAgBvB,KAAKoB,SAASC,QAChDrB,KAAKwB,eAAiBC,EAAoBzB,KAAKoB,SAASC,QACxDrB,KAAK0B,qBAAuB,IAAIC,EAAqB,CACnDC,uBAAwB,KACxBC,iBAAkBnE,MAAMC,KACtBqC,KAAK3B,KAAKT,iBAAiB,2BAE7BkE,4BAA6B,IAAM9B,KAAKG,yBACxC4B,oBAAqB,IAAM/B,KAAKK,iBAChC2B,4BAA8BpD,IAC5BoB,KAAKG,yBAA2BvB,CAAK,EAEvCqD,oBAAsBrD,IACpBoB,KAAKK,iBAAmBzB,CAAK,EAE/BwC,SAAUpB,KAAKoB,WAGjBpB,KAAKkC,iBAAmB,IAAIC,EAAe,CACzCC,gBAAiBpC,KAAKoB,SAASC,OAAOgB,UACtCC,wBAAyB,IAAMtC,KAAKuC,gBAAgBC,QAAQtE,OAC5DuE,aAAc,IAAMzC,KAAKuC,gBAAgBG,UACzCrE,KAAM2B,KAAK3B,KACX4B,YAAaD,KAAKC,YAClB0C,kBAAmB3C,KAAKW,YACxBiC,MAAO5C,KAAKoB,SAASwB,QAEvBC,EAAwB7C,KAAKoB,SAASwB,OAAQxC,IAC5CJ,KAAKI,YAAcA,CAAW,G,CAKlC,oBAAA0C,CACEC,EACAC,GAEA,GAAID,GAAUtD,YAAcuD,GAAUvD,UAAW,CAC/CO,KAAKoB,SAASwB,MAAMK,iBAAiBjD,KAAKC,Y,EAIvC,MAAAiD,GACLlD,KAAKkC,iBAAiBiB,oBACtB,MAAM3E,EAAcwB,KAAKoD,4BAEzB,OACE9E,EAACgB,EAAQ,CAAAP,IAAA,2CACPQ,aAAcS,KAAKT,aACnBC,aAAcQ,KAAKR,aACnBC,UAAWO,KAAKqD,gBAAgB5D,WAEhCnB,EAACgF,EAAa,CAAAvE,IAAA,2CACZwE,SAAUvD,KAAKuC,gBAAgBgB,SAC/BC,YAAaxD,KAAKG,yBAClBE,iBAAkBL,KAAK0B,qBAAqB6B,SAC5CE,qBAAsBzD,KAAKuC,gBAAgBmB,oBAC3CC,SAAU3D,KAAKuC,gBAAgBqB,YAE/BtF,EAACuF,EAAc,CAAA9E,IAAA,2CAACuB,QAASN,KAAKM,QAAS9B,YAAaA,GAClDF,EAACwF,EAAwB,CAAA/E,IAAA,2CACvBwB,QAASP,KAAKO,QACdD,QAASN,KAAKM,QACdE,UAAWR,KAAKQ,UAChBuD,qBAAsB/D,KAAKI,YAC3B4D,qBAAsBhE,KAAKiE,oBAAoBC,kBAEjD5F,EAAC6F,EAAgB,CAAApF,IAAA,2CACf0E,qBAAsBzD,KAAKuC,gBAAgBmB,oBAC3CC,SAAU3D,KAAKuC,gBAAgBqB,YAE9B5D,KAAKM,UAAY,QACdN,KAAKoE,gBACLpE,KAAKM,UAAY,OACfN,KAAKqE,eACLrE,KAAKsE,kB,CAQf,uBAAAC,CAAwBC,GAC9B,MAAO,CACLC,kBAAmBC,EAAuB1E,KAAKoB,SAASC,OAAQ,CAC9DsD,QAAS,CAACH,YAEZA,SACAI,kBAAmB5E,KAAK/C,sBACxBgD,YAAaD,KAAKC,YAClBlB,IAAKiB,KAAKkC,iBAAiB2C,YACzBL,EAAOM,SACP9E,KAAKuC,gBAAgBwC,iBACrB/E,KAAKO,QACLP,KAAKQ,WAEPwE,QAAShF,KAAK0B,qBAAqBuD,mBAAmBT,GACtDU,YACElF,KAAKM,UAAY,OACbN,KAAK0B,qBAAqByD,uBAAuBX,GACjDxE,KAAK0B,qBAAqB0D,8BAChCxC,MAAO5C,KAAKoB,SAASwB,MACrBrC,QAASP,KAAKO,QACdC,UAAWR,KAAKQ,UAChBF,QAASN,KAAKM,Q,CAIV,yBAAA8C,GACN,MAAMW,GAAuB/D,KAAKI,YAElC,OAAOiF,EACLrF,KAAKM,QACLN,KAAKO,QACLP,KAAKQ,UACLR,KAAKuC,gBAAgBmB,qBACnB1D,KAAKuC,gBAAgBG,UACvBqB,E,CAII,YAAAM,GACN,OAAOrE,KAAKuC,gBAAgBC,QAAQ9D,KAAI,CAAC8F,EAAQc,KAC/C,MAAMC,EAAuBvF,KAAKuE,wBAAwBC,GAC1D,OACElG,EAACkH,EAAW,CACVC,gBAAgB,gBAChBC,KAAMlB,KACFe,EAAqBd,kBACzBxF,OAASE,GACPA,GAAWa,KAAKkC,iBAAiByD,gBAAgBxG,EAASmG,IAG5DhH,EAAA,oBAAmB0B,QAAUuF,IACjB,G,CAKZ,aAAAnB,GACN,IAAKpE,KAAKuC,gBAAgBqB,WAAY,CACpC,M,CAEF,MAAMpF,EAAcwB,KAAKoD,4BACzB,MAAM5F,EAAYwC,KAAKuC,gBAAgBC,QAAQ,GAE/C,MAAMoD,EAAuB,CAC3BpI,YACAM,4BACEkC,KAAK0B,qBAAqBuD,mBAAmBzH,IAGjD,OACEc,EAACP,EAAY,IACP6H,EACJpH,YAAaA,EACbL,OAAQ6B,KAAKoB,SAASC,OAAOlD,OAC7BlB,sBAAuB+C,KAAK/C,sBAC5BoB,KAAM2B,KAAK3B,MAEV2B,KAAKuC,gBAAgBC,QAAQ9D,KAAI,CAAC8F,EAAQc,KACzC,MAAMC,EAAuBvF,KAAKuE,wBAAwBC,GAC1D,OACElG,EAACQ,EAAe,IACVyG,EACJvG,SAAUsG,EACVrG,OAASE,GACPA,GAAWa,KAAKkC,iBAAiByD,gBAAgBxG,EAASmG,IAG5DhH,EAACc,EAAgB,IACXwG,KACAL,EACJlG,WAAa2F,GAET1G,EAAA,oBACMiH,EACJP,QAASA,MAKD,I,CAOpB,YAAAV,GACN,OAAOtE,KAAKuC,gBAAgBC,QAAQ9D,KAAI,CAAC8F,EAAQc,KAC/C,MAAMC,EAAuBvF,KAAKuE,wBAAwBC,GAC1D,OACElG,EAAA,oBACMiH,EACJrG,IAAMC,GACJA,GAAWa,KAAKkC,iBAAiByD,gBAAgBxG,EAASmG,GAE5D7G,KAAK,WACU,G,oGAxSMoH,EAAA,CAA5BC,K,+BAaOD,EAAA,CAFPE,EAAsB,e,sCAKfF,EAAA,CAFPE,EAAsB,mB,0CAMhBF,EAAA,CAFNE,EAAsB,e,sCAmChBF,EAAA,CAFNG,K,mCAeMH,EAAA,CAFNG,K","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["atomicResultBadgeCss","AtomicResultBadgeStyle0","AtomicResultBadge","renderIcon","h","part","icon","this","class","getTextContent","field","undefined","label","value","renderText","renderBadge","componentWillRender","hasValue","ResultTemplatesHelpers","getResultProperty","result","host","remove","render","__decorate","ResultContext"],"sources":["src/components/search/result-template-components/atomic-result-badge/atomic-result-badge.pcss?tag=atomic-result-badge&encapsulation=shadow","src/components/search/result-template-components/atomic-result-badge/atomic-result-badge.tsx"],"sourcesContent":["@import '../../../../global/global.pcss';\n\n:host {\n display: inline-flex;\n place-items: center;\n height: var(--row-height, auto);\n word-break: break-word;\n}\n","import {Result, ResultTemplatesHelpers} from '@coveo/headless';\nimport {Component, Element, Prop, h} from '@stencil/core';\nimport {ResultContext} from '../result-template-decorators';\n\n/**\n * The `atomic-result-badge` element renders a badge to highlight special features of a result.\n *\n * A badge can either display:\n * * Text:\n * ```html\n * <atomic-result-badge label=\"trending\"></atomic-result-badge>\n * ```\n * * The contents of a single-value field:\n * ```html\n * <atomic-result-badge field=\"objecttype\"></atomic-result-badge>\n * ```\n * * An icon:\n * ```html\n * <atomic-result-badge icon=\"https://my-website.fake/star.svg\"></atomic-result-badge>\n * ```\n * * Slotted elements:\n * ```html\n * <atomic-result-badge icon=\"https://my-website.fake/stopwatch.svg\">\n * Deal ends in <my-dynamic-countdown></my-dynamic-countdown>\n * </atomic-result-badge>\n * ```\n *\n * The contents of a multi-value field can be displayed as in the following example:\n * ```html\n * <atomic-result-badge icon=\"https://my-website.fake/language.svg\">\n * <atomic-result-multi-value-text field=\"language\"></atomic-result-multi-value-text>\n * </atomic-result-badge>\n * ```\n *\n * @part result-badge-element - The decorative outer-most element with the background color and text color.\n * @part result-badge-icon - The icon displayed at the left-end of the badge, if present.\n * @part result-badge-label - The wrapper around the contents at the right-end of the badge. This may be text, a field or slotted elements depending on which was configured.\n * @slot default - The element(s) to display inside the badge, instead of a field or label.\n */\n@Component({\n tag: 'atomic-result-badge',\n styleUrl: 'atomic-result-badge.pcss',\n shadow: true,\n})\nexport class AtomicResultBadge {\n @ResultContext() private result!: Result;\n @Element() host!: HTMLElement;\n /**\n * The field to display in the badge.\n *\n * Not compatible with `label`, slotted elements nor multi-value fields.\n */\n @Prop({reflect: true}) public field?: string;\n\n /**\n * The text to display in the badge.\n *\n * Not compatible with `field` nor slotted elements.\n */\n @Prop({reflect: true}) public label?: string;\n\n /**\n * Specifies an icon to display at the left-end of the badge.\n * This can be used in conjunction with `field`, `label` or slotted elements.\n *\n * - Use a value that starts with `http://`, `https://`, `./`, or `../`, to fetch and display an icon from a given location.\n * - Use a value that starts with `assets://`, to display an icon from the Atomic package.\n * - Use a stringified SVG to display it directly\n */\n @Prop({reflect: true}) public icon?: string;\n\n private renderIcon() {\n return (\n <atomic-icon\n part=\"result-badge-icon\"\n icon={this.icon!}\n class=\"h-3 w-3 fill-current\"\n ></atomic-icon>\n );\n }\n\n private getTextContent() {\n if (this.field !== undefined) {\n return <atomic-result-text field={this.field}></atomic-result-text>;\n }\n if (this.label !== undefined) {\n return <atomic-text value={this.label}></atomic-text>;\n }\n return <slot></slot>;\n }\n\n private renderText() {\n return <span part=\"result-badge-label\">{this.getTextContent()}</span>;\n }\n\n private renderBadge() {\n return (\n <div\n part=\"result-badge-element\"\n class=\"bg-neutral-light text-neutral-dark inline-flex h-full place-items-center space-x-1.5 rounded-full px-3\"\n >\n {this.icon && this.renderIcon()}\n {this.renderText()}\n </div>\n );\n }\n\n componentWillRender() {\n if (this.field) {\n const hasValue =\n ResultTemplatesHelpers.getResultProperty(this.result, this.field) !==\n null;\n if (!hasValue) {\n this.host.remove();\n }\n }\n }\n\n render() {\n return this.renderBadge();\n }\n}\n"],"mappings":"uNAAA,MAAMA,EAAuB,2kjEAC7B,MAAAC,EAAeD,E,iXC2CFE,EAAiB,M,uFA2BpB,UAAAC,GACN,OACEC,EAAA,eACEC,KAAK,oBACLC,KAAMC,KAAKD,KACXE,MAAM,wB,CAKJ,cAAAC,GACN,GAAIF,KAAKG,QAAUC,UAAW,CAC5B,OAAOP,EAAA,sBAAoBM,MAAOH,KAAKG,O,CAEzC,GAAIH,KAAKK,QAAUD,UAAW,CAC5B,OAAOP,EAAA,eAAaS,MAAON,KAAKK,O,CAElC,OAAOR,EAAA,Y,CAGD,UAAAU,GACN,OAAOV,EAAA,QAAMC,KAAK,sBAAsBE,KAAKE,iB,CAGvC,WAAAM,GACN,OACEX,EAAA,OACEC,KAAK,uBACLG,MAAM,0GAELD,KAAKD,MAAQC,KAAKJ,aAClBI,KAAKO,a,CAKZ,mBAAAE,GACE,GAAIT,KAAKG,MAAO,CACd,MAAMO,EACJC,EAAuBC,kBAAkBZ,KAAKa,OAAQb,KAAKG,SAC3D,KACF,IAAKO,EAAU,CACbV,KAAKc,KAAKC,Q,GAKhB,MAAAC,GACE,OAAOhB,KAAKQ,a,6BA1EWS,EAAA,CAAxBC,K","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["atomicInsightResultAttachToCaseActionCss","AtomicInsightResultAttachToCaseActionStyle0","AtomicInsightResultAttachToCaseAction","initialize","caseId","this","bindings","engine","state","insightCaseContext","attachToCase","buildAttachToCase","options","result","onClick","isAttached","detach","emit","callback","attach","getIcon","DetachIcon","AttachIcon","getTooltip","i18n","t","render","h","IconButton","key","partPrefix","style","icon","title","__decorate","InitializeBindings","ResultContext","BindStateToController"],"sources":["src/components/insight/atomic-insight-result-attach-to-case-action/atomic-insight-result-attach-to-case-action.pcss?tag=atomic-insight-result-attach-to-case-action","src/components/insight/atomic-insight-result-attach-to-case-action/atomic-insight-result-attach-to-case-action.tsx"],"sourcesContent":["@import '../../../global/global.pcss';\n","import {AttachToCase, buildAttachToCase, Result} from '@coveo/headless/insight';\nimport {Component, Event, State, h, Element, EventEmitter} from '@stencil/core';\nimport AttachIcon from '../../../images/attach.svg';\nimport DetachIcon from '../../../images/detach.svg';\nimport {\n BindStateToController,\n InitializableComponent,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {IconButton} from '../../common/stencil-iconButton';\nimport {ResultContext} from '../../search/result-template-components/result-template-decorators';\nimport {InsightBindings} from '../atomic-insight-interface/atomic-insight-interface';\n\nexport interface InsightResultAttachToCaseEvent {\n callback: () => void;\n result: Result;\n}\n/**\n * @internal\n * The `atomic-insight-result-attach-to-case-action` component can be nested inside a `atomic-insight-result-actions` to render an interactive button that will emit an `atomic/insight/attachToCase/attach` or `atomic/insight/attachToCase/detach` JavaScript event, based on its current state, when clicked.\n *\n * @part result-action-container - The result action container\n * @part result-action-button - The result action button\n * @part result-action-icon - The result action icon\n */\n@Component({\n tag: 'atomic-insight-result-attach-to-case-action',\n styleUrl: 'atomic-insight-result-attach-to-case-action.pcss',\n})\nexport class AtomicInsightResultAttachToCaseAction\n implements InitializableComponent<InsightBindings>\n{\n @InitializeBindings() public bindings!: InsightBindings;\n @ResultContext() private result!: Result;\n\n @Element() host!: HTMLElement;\n @State() public error!: Error;\n\n public attachToCase!: AttachToCase;\n\n @BindStateToController('attachToCase')\n @State()\n public attachToCaseState!: {};\n\n @Event({\n eventName: 'atomic/insight/attachToCase/attach',\n composed: true,\n cancelable: true,\n bubbles: true,\n })\n private attach!: EventEmitter<InsightResultAttachToCaseEvent>;\n\n @Event({\n eventName: 'atomic/insight/attachToCase/detach',\n composed: true,\n cancelable: true,\n bubbles: true,\n })\n private detach!: EventEmitter<InsightResultAttachToCaseEvent>;\n\n public initialize() {\n const caseId: string =\n this.bindings.engine.state.insightCaseContext?.caseId || '';\n this.attachToCase = buildAttachToCase(this.bindings.engine, {\n options: {\n result: this.result,\n caseId: caseId,\n },\n });\n }\n\n private onClick() {\n if (this.attachToCase.isAttached()) {\n this.detach.emit({\n callback: this.attachToCase.detach,\n result: this.result,\n });\n } else {\n this.attach.emit({\n callback: this.attachToCase.attach,\n result: this.result,\n });\n }\n }\n\n private getIcon() {\n return this.attachToCase.isAttached() ? DetachIcon : AttachIcon;\n }\n\n private getTooltip() {\n return this.attachToCase.isAttached()\n ? this.bindings.i18n.t('detach-from-case')\n : this.bindings.i18n.t('attach-to-case');\n }\n\n public render() {\n return (\n <IconButton\n partPrefix=\"result-action\"\n style=\"outline-neutral\"\n icon={this.getIcon()}\n title={this.getTooltip()}\n onClick={() => this.onClick()}\n />\n );\n }\n}\n"],"mappings":"62GAAA,MAAMA,EAA2C,+8iEACjD,MAAAC,EAAeD,E,iXC4BFE,EAAqC,M,qMA+BzC,UAAAC,GACL,MAAMC,EACJC,KAAKC,SAASC,OAAOC,MAAMC,oBAAoBL,QAAU,GAC3DC,KAAKK,aAAeC,EAAkBN,KAAKC,SAASC,OAAQ,CAC1DK,QAAS,CACPC,OAAQR,KAAKQ,OACbT,OAAQA,I,CAKN,OAAAU,GACN,GAAIT,KAAKK,aAAaK,aAAc,CAClCV,KAAKW,OAAOC,KAAK,CACfC,SAAUb,KAAKK,aAAaM,OAC5BH,OAAQR,KAAKQ,Q,KAEV,CACLR,KAAKc,OAAOF,KAAK,CACfC,SAAUb,KAAKK,aAAaS,OAC5BN,OAAQR,KAAKQ,Q,EAKX,OAAAO,GACN,OAAOf,KAAKK,aAAaK,aAAeM,EAAaC,C,CAG/C,UAAAC,GACN,OAAOlB,KAAKK,aAAaK,aACrBV,KAAKC,SAASkB,KAAKC,EAAE,oBACrBpB,KAAKC,SAASkB,KAAKC,EAAE,iB,CAGpB,MAAAC,GACL,OACEC,EAACC,EAAU,CAAAC,IAAA,2CACTC,WAAW,gBACXC,MAAM,kBACNC,KAAM3B,KAAKe,UACXa,MAAO5B,KAAKkB,aACZT,QAAS,IAAMT,KAAKS,W,6BAtEGoB,EAAA,CAA5BC,K,+BACwBD,EAAA,CAAxBE,K,6BASMF,EAAA,CAFNG,EAAsB,iB","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["FieldsetGroup","label","children","h","class"],"sources":["src/components/common/stencil-fieldset-group.tsx"],"sourcesContent":["import {h, FunctionalComponent} from '@stencil/core';\n\nexport interface GroupProps {\n label: string;\n}\n\nexport const FieldsetGroup: FunctionalComponent<GroupProps> = (\n {label},\n children\n) => (\n <fieldset class=\"contents\">\n <legend class=\"sr-only\">{label}</legend>\n {children}\n </fieldset>\n);\n"],"mappings":"0CAMaA,EAAiD,EAC3DC,SACDC,IAEAC,EAAA,YAAUC,MAAM,YACdD,EAAA,UAAQC,MAAM,WAAWH,GACxBC,U","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["atomicResultMultiValueTextCss","AtomicResultMultiValueTextStyle0","AtomicResultMultiValueText","this","maxValuesToDisplay","delimiter","sortedValues","initialize","breadcrumbManager","buildBreadcrumbManager","bindings","engine","resultValues","value","ResultTemplatesHelpers","getResultProperty","result","field","Array","isArray","map","v","trim","error","Error","split","facetSelectedValues","state","facetBreadcrumbs","filter","facet","reduce","values","updateSortedValues","allValues","allValuesSet","Set","firstValues","has","from","set","add","getShouldDisplayLabel","length","getNumberOfValuesToDisplay","Math","min","renderValue","label","getFieldValueCaption","i18n","kebabValue","titleToKebab","h","key","part","name","renderSeparator","beforeValue","afterValue","class","renderMoreLabel","t","renderListItems","numberOfValuesToDisplay","nodes","i","push","componentWillRender","render","host","remove","__decorate","InitializeBindings","ResultContext"],"sources":["src/components/search/result-template-components/atomic-result-multi-value-text/atomic-result-multi-value-text.pcss?tag=atomic-result-multi-value-text&encapsulation=shadow","src/components/search/result-template-components/atomic-result-multi-value-text/atomic-result-multi-value-text.tsx"],"sourcesContent":[":host {\n > ul {\n display: flex;\n list-style: none;\n margin: 0;\n padding: 0;\n\n li {\n display: inline-block;\n }\n }\n}\n\n.separator {\n &::before {\n display: inline;\n content: ',\\00a0';\n }\n}\n","import {\n BreadcrumbManager,\n buildBreadcrumbManager,\n Result,\n ResultTemplatesHelpers,\n} from '@coveo/headless';\nimport {Component, Element, Prop, h, State, VNode} from '@stencil/core';\nimport {getFieldValueCaption} from '../../../../utils/field-utils';\nimport {InitializeBindings} from '../../../../utils/initialization-utils';\nimport {titleToKebab} from '../../../../utils/utils';\nimport {Bindings} from '../../atomic-search-interface/atomic-search-interface';\nimport {ResultContext} from '../result-template-decorators';\n\n/**\n * The `atomic-result-multi-value-text` component renders the values of a multi-value string field.\n * @part result-multi-value-text-list - The list of field values.\n * @part result-multi-value-text-separator - The separator to display between each of the field values.\n * @part result-multi-value-text-value - A field value.\n * @part result-multi-value-text-value-more - A label indicating some values were omitted.\n * @slot result-multi-value-text-value-* - A custom caption value that's specified for a given part of a multi-text field value. For example, if you want to use `Off-Campus Resident` as a caption value for `Off-campus apartment` in `Off-campus apartment;On-campus apartment`, you'd use `<span slot=\"result-multi-value-text-value-off-campus-apartment\">Off-Campus Resident</span>`). The suffix of this slot corresponds with the field value, written in kebab case.\n */\n@Component({\n tag: 'atomic-result-multi-value-text',\n styleUrl: 'atomic-result-multi-value-text.pcss',\n shadow: true,\n})\nexport class AtomicResultMultiValueText {\n public breadcrumbManager!: BreadcrumbManager;\n\n @InitializeBindings() public bindings!: Bindings;\n @ResultContext() private result!: Result;\n\n @Element() host!: HTMLElement;\n\n @State() public error!: Error;\n\n /**\n * The field that the component should use.\n * The component will try to find this field in the `Result.raw` object unless it finds it in the `Result` object first.\n * Make sure this field is present in the `fieldsToInclude` property of the `atomic-search-interface` component.\n */\n @Prop({reflect: true}) public field!: string;\n\n /**\n * The maximum number of field values to display.\n * If there are _n_ more values than the specified maximum, the last displayed value will be \"_n_ more...\".\n */\n @Prop({reflect: true}) public maxValuesToDisplay = 3;\n\n /**\n * The delimiter used to separate values when the field isn't indexed as a multi value field.\n */\n @Prop({reflect: true}) public delimiter: string | null = null;\n\n private sortedValues: string[] | null = null;\n\n public initialize() {\n this.breadcrumbManager = buildBreadcrumbManager(this.bindings.engine);\n }\n\n private get resultValues() {\n const value = ResultTemplatesHelpers.getResultProperty(\n this.result,\n this.field\n );\n\n if (value === null) {\n return null;\n }\n\n if (Array.isArray(value)) {\n return value.map((v) => `${v}`.trim());\n }\n\n if (typeof value !== 'string' || value.trim() === '') {\n this.error = new Error(\n `Could not parse \"${value}\" from field \"${this.field}\" as a string array.`\n );\n return null;\n }\n\n return this.delimiter\n ? value.split(this.delimiter).map((value) => value.trim())\n : [value];\n }\n\n private get facetSelectedValues() {\n return this.breadcrumbManager.state.facetBreadcrumbs\n .filter((facet) => facet.field === this.field)\n .reduce(\n (values, facet) => [\n ...values,\n ...facet.values.map(({value}) => value.value),\n ],\n [] as string[]\n );\n }\n\n private updateSortedValues() {\n const allValues = this.resultValues;\n if (allValues === null) {\n this.sortedValues = null;\n return;\n }\n const allValuesSet = new Set(allValues);\n const firstValues = this.facetSelectedValues.filter((value) =>\n allValuesSet.has(value)\n );\n this.sortedValues = Array.from(\n allValues.reduce((set, value) => set.add(value), new Set(firstValues))\n );\n }\n\n private getShouldDisplayLabel(values: string[]) {\n return (\n this.maxValuesToDisplay > 0 && values.length > this.maxValuesToDisplay\n );\n }\n\n private getNumberOfValuesToDisplay(values: string[]) {\n return Math.min(values.length, this.maxValuesToDisplay);\n }\n\n private renderValue(value: string) {\n const label = getFieldValueCaption(this.field, value, this.bindings.i18n);\n const kebabValue = titleToKebab(value);\n return (\n <li key={value} part=\"result-multi-value-text-value\">\n <slot name={`result-multi-value-text-value-${kebabValue}`}>\n {label}\n </slot>\n </li>\n );\n }\n\n private renderSeparator(beforeValue: string, afterValue: string) {\n return (\n <li\n aria-hidden=\"true\"\n part=\"result-multi-value-text-separator\"\n key={`${beforeValue}~${afterValue}`}\n class=\"separator\"\n ></li>\n );\n }\n\n private renderMoreLabel(value: number) {\n return (\n <li key=\"more-field-values\" part=\"result-multi-value-text-value-more\">\n {this.bindings.i18n.t('n-more', {value})}\n </li>\n );\n }\n\n private renderListItems(values: string[]) {\n const numberOfValuesToDisplay = this.getNumberOfValuesToDisplay(values);\n\n const nodes: VNode[] = [];\n for (let i = 0; i < numberOfValuesToDisplay; i++) {\n if (i > 0) {\n nodes.push(this.renderSeparator(values[i - 1], values[i]));\n }\n nodes.push(this.renderValue(values[i]));\n }\n if (this.getShouldDisplayLabel(values)) {\n nodes.push(\n this.renderSeparator(\n values[numberOfValuesToDisplay - 1],\n 'more-field-values'\n )\n );\n nodes.push(this.renderMoreLabel(values.length - numberOfValuesToDisplay));\n }\n return nodes;\n }\n\n public componentWillRender() {\n this.updateSortedValues();\n }\n\n public render() {\n if (this.sortedValues === null) {\n this.host.remove();\n return;\n }\n return (\n <ul part=\"result-multi-value-text-list\">\n {...this.renderListItems(this.sortedValues)}\n </ul>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["atomicIpxResultLinkCss","AtomicIpxResultLinkStyle0","AtomicIPXResultLink","initialize","this","host","dispatchEvent","buildCustomEvent","stopPropagation","actionsHistoryActions","loadIPXActionsHistoryActions","bindings","engine","connectedCallback","slotName","hasDefaultSlot","getDefaultSlotFromHost","linkAttributes","getAttributesFromLinkSlot","onSelect","resultPermanentId","result","raw","permanentid","action","addPageViewEntryInActionsHistory","dispatch","interactiveResult","select","render","href","isUndefined","hrefTemplate","clickUri","buildStringTemplateFromResult","h","LinkWithItemAnalytics","key","onBeginDelayedSelect","beginDelayedSelect","onCancelPendingSelect","cancelPendingSelect","attributes","field","default","__decorate","InitializeBindings","ResultContext","InteractiveResultContext"],"sources":["src/components/ipx/atomic-ipx-result-link/atomic-ipx-result-link.pcss?tag=atomic-ipx-result-link","src/components/ipx/atomic-ipx-result-link/atomic-ipx-result-link.tsx"],"sourcesContent":["@import '../../../global/global.pcss';\n@reference '../../../utils/tailwind-utilities/link-style.css';\n\natomic-ipx-result-link {\n a {\n @apply link-style;\n }\n}\n","import {isUndefined} from '@coveo/bueno';\nimport {\n IPXActionsHistoryActionCreators,\n InteractiveResult,\n loadIPXActionsHistoryActions,\n} from '@coveo/headless';\nimport {Component, h, Prop, Element} from '@stencil/core';\nimport {buildCustomEvent} from '../../../utils/event-utils';\nimport {\n InitializableComponent,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {buildStringTemplateFromResult} from '../../../utils/result-utils';\nimport {getDefaultSlotFromHost} from '../../../utils/slot-utils';\nimport {AnyUnfoldedItem} from '../../common/item-list/unfolded-item';\nimport {getAttributesFromLinkSlot} from '../../common/item-link/attributes-slot';\nimport {LinkWithItemAnalytics} from '../../common/item-link/stencil-item-link';\nimport {RecsBindings} from '../../recommendations/atomic-recs-interface/atomic-recs-interface';\nimport {\n ResultContext,\n InteractiveResultContext,\n} from '../../search/result-template-components/result-template-decorators';\n\n/**\n * The `atomic-ipx-result-link` component automatically transforms a search result title into a clickable link that points to the original item. It is an experimental internal component not intended for general use.\n * @slot default - Lets you display alternative content inside the link\n * @slot attributes - Lets you pass [attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attributes) down to the link element, overriding other attributes, to be used exclusively with an \"a\" tag such as `<a slot=\"attributes\" target=\"_blank\" download></a>`.\n * @internal\n */\n@Component({\n tag: 'atomic-ipx-result-link',\n styleUrl: 'atomic-ipx-result-link.pcss',\n shadow: false,\n})\nexport class AtomicIPXResultLink\n implements InitializableComponent<RecsBindings>\n{\n @InitializeBindings() public bindings!: RecsBindings;\n public error!: Error;\n\n @ResultContext() private result!: AnyUnfoldedItem;\n @InteractiveResultContext() private interactiveResult!: InteractiveResult;\n\n @Element() private host!: HTMLElement;\n\n /**\n * Specifies a template literal from which to generate the `href` attribute value (see\n * [Template literals](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Template_literals)).\n *\n * The template literal can reference any number of result properties from the parent result. It can also reference the window object.\n *\n * For example, the following markup generates an `href` value such as `http://uri.com?id=itemTitle`, using the result's `clickUri` and `itemtitle` fields.\n * ```html\n * <atomic-ipx-result-link href-template='${clickUri}?id=${raw.itemtitle}'></atomic-ipx-result-link>\n * ```\n */\n @Prop({reflect: true}) hrefTemplate?: string;\n\n private hasDefaultSlot!: boolean;\n private linkAttributes?: Attr[];\n private stopPropagation?: boolean;\n private actionsHistoryActions?: IPXActionsHistoryActionCreators;\n\n public initialize() {\n this.host.dispatchEvent(\n buildCustomEvent(\n 'atomic/resolveStopPropagation',\n (stopPropagation: boolean) => {\n this.stopPropagation = stopPropagation;\n }\n )\n );\n this.actionsHistoryActions = loadIPXActionsHistoryActions(\n this.bindings.engine\n );\n }\n\n public connectedCallback() {\n const slotName = 'attributes';\n this.hasDefaultSlot = !!getDefaultSlotFromHost(this.host);\n this.linkAttributes = getAttributesFromLinkSlot(this.host, slotName);\n }\n\n public async onSelect() {\n const resultPermanentId = this.result.raw.permanentid;\n if (resultPermanentId && this.actionsHistoryActions) {\n const action =\n this.actionsHistoryActions.addPageViewEntryInActionsHistory(\n resultPermanentId\n );\n this.bindings.engine.dispatch(action);\n }\n this.interactiveResult.select();\n }\n\n public render() {\n const href = isUndefined(this.hrefTemplate)\n ? this.result.clickUri\n : buildStringTemplateFromResult(\n this.hrefTemplate,\n this.result,\n this.bindings\n );\n\n return (\n <LinkWithItemAnalytics\n href={href}\n onSelect={() => this.onSelect()}\n onBeginDelayedSelect={() => this.interactiveResult.beginDelayedSelect()}\n onCancelPendingSelect={() =>\n this.interactiveResult.cancelPendingSelect()\n }\n attributes={this.linkAttributes}\n stopPropagation={this.stopPropagation}\n >\n {this.hasDefaultSlot ? (\n <slot />\n ) : (\n <atomic-result-text\n field=\"title\"\n default=\"no-title\"\n ></atomic-result-text>\n )}\n </LinkWithItemAnalytics>\n );\n }\n}\n"],"mappings":"uhBAAA,MAAMA,EAAyB,yzkEAC/B,MAAAC,EAAeD,E,iXCiCFE,EAAmB,M,qDA6BvB,UAAAC,GACLC,KAAKC,KAAKC,cACRC,EACE,iCACCC,IACCJ,KAAKI,gBAAkBA,CAAe,KAI5CJ,KAAKK,sBAAwBC,EAC3BN,KAAKO,SAASC,O,CAIX,iBAAAC,GACL,MAAMC,EAAW,aACjBV,KAAKW,iBAAmBC,EAAuBZ,KAAKC,MACpDD,KAAKa,eAAiBC,EAA0Bd,KAAKC,KAAMS,E,CAGtD,cAAMK,GACX,MAAMC,EAAoBhB,KAAKiB,OAAOC,IAAIC,YAC1C,GAAIH,GAAqBhB,KAAKK,sBAAuB,CACnD,MAAMe,EACJpB,KAAKK,sBAAsBgB,iCACzBL,GAEJhB,KAAKO,SAASC,OAAOc,SAASF,E,CAEhCpB,KAAKuB,kBAAkBC,Q,CAGlB,MAAAC,GACL,MAAMC,EAAOC,EAAY3B,KAAK4B,cAC1B5B,KAAKiB,OAAOY,SACZC,EACE9B,KAAK4B,aACL5B,KAAKiB,OACLjB,KAAKO,UAGX,OACEwB,EAACC,EAAqB,CAAAC,IAAA,2CACpBP,KAAMA,EACNX,SAAU,IAAMf,KAAKe,WACrBmB,qBAAsB,IAAMlC,KAAKuB,kBAAkBY,qBACnDC,sBAAuB,IACrBpC,KAAKuB,kBAAkBc,sBAEzBC,WAAYtC,KAAKa,eACjBT,gBAAiBJ,KAAKI,iBAErBJ,KAAKW,eACJoB,EAAA,aAEAA,EAAA,sBACEQ,MAAM,QACNC,QAAQ,a,6BAnFWC,EAAA,CAA5BC,K,+BAGwBD,EAAA,CAAxBE,K,6BACmCF,EAAA,CAAnCG,K","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{h as e}from"./p-dc3df5ce.js";import{F as s}from"./p-c619df9b.js";import{F as t}from"./p-d4c2b7c0.js";import{F as a}from"./p-74862002.js";import{g as c}from"./p-55d2bcf3.js";import{F as l}from"./p-2a02812b.js";const r=({manualRanges:e,field:s,i18n:t,facetValue:a,logger:l,formatter:r})=>{const i=e.find((e=>n(e,a)))?.label;return i?c(s,i,t):t.t("to",{start:o(a.start,t,l,r),end:o(a.end,t,l,r)})};const o=(e,s,t,a)=>{try{return a(e,s.languages)}catch(s){t.error(`atomic-numeric-facet facet value "${e}" could not be formatted correctly.`,s);return e}};const n=(e,s)=>e.start===s.start&&e.end===s.end&&e.endInclusive===s.endInclusive;const i=c=>{const{facetValue:l,displayValuesAs:o,i18n:n,onClick:i}=c;const u=r(c);const m=l.state==="selected";switch(o){case"checkbox":return e(s,{displayValue:u,numberOfResults:l.numberOfResults,isSelected:m,i18n:n,onClick:()=>i()},e(t,{displayValue:u,isSelected:m}));case"link":return e(a,{displayValue:u,numberOfResults:l.numberOfResults,isSelected:m,i18n:n,onClick:i},e(t,{displayValue:u,isSelected:m}))}};const u=({i18n:s,label:t},a)=>e(l,{i18n:s,label:t},e("ul",{class:"mt-3",part:"values"},a));export{i as N,u as a,r as f};
2
- //# sourceMappingURL=p-5a2ef889.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["FacetValueBox","props","children","compactCount","Intl","NumberFormat","i18n","language","notation","format","numberOfResults","count","toLocaleString","ariaLabel","t","value","displayValue","formattedCount","h","key","Button","style","part","isSelected","onClick","class","ariaPressed","toString","ref","buttonRef","title","text"],"sources":["src/components/common/facets/facet-value-box/stencil-facet-value-box.tsx"],"sourcesContent":["import {FunctionalComponent, h} from '@stencil/core';\nimport {Button} from '../../stencil-button';\nimport {FacetValueProps} from '../stencil-facet-common';\n\nexport const FacetValueBox: FunctionalComponent<FacetValueProps> = (\n props,\n children\n) => {\n const compactCount = new Intl.NumberFormat(props.i18n.language, {\n notation: 'compact',\n }).format(props.numberOfResults);\n\n const count = props.numberOfResults.toLocaleString(props.i18n.language);\n\n const ariaLabel = props.i18n.t('facet-value', {\n value: props.displayValue,\n count: props.numberOfResults,\n formattedCount: compactCount,\n });\n\n return (\n <li key={props.displayValue}>\n <Button\n style=\"outline-bg-neutral\"\n part={`value-box${props.isSelected ? ' value-box-selected' : ''}`}\n onClick={() => props.onClick()}\n class={`value-box group box-border h-full w-full items-center p-2 ${\n props.isSelected ? 'selected' : ''\n }`}\n ariaPressed={props.isSelected.toString()}\n ariaLabel={ariaLabel}\n ref={props.buttonRef}\n >\n {children}\n <span\n title={count}\n part=\"value-count\"\n class=\"value-box-count text-neutral-dark mt-1 w-full truncate text-sm\"\n >\n {props.i18n.t('between-parentheses', {\n text: compactCount,\n })}\n </span>\n </Button>\n </li>\n );\n};\n"],"mappings":"8EAIaA,EAAsD,CACjEC,EACAC,KAEA,MAAMC,EAAe,IAAIC,KAAKC,aAAaJ,EAAMK,KAAKC,SAAU,CAC9DC,SAAU,YACTC,OAAOR,EAAMS,iBAEhB,MAAMC,EAAQV,EAAMS,gBAAgBE,eAAeX,EAAMK,KAAKC,UAE9D,MAAMM,EAAYZ,EAAMK,KAAKQ,EAAE,cAAe,CAC5CC,MAAOd,EAAMe,aACbL,MAAOV,EAAMS,gBACbO,eAAgBd,IAGlB,OACEe,EAAA,MAAIC,IAAKlB,EAAMe,cACbE,EAACE,EAAM,CACLC,MAAM,qBACNC,KAAM,YAAYrB,EAAMsB,WAAa,sBAAwB,KAC7DC,QAAS,IAAMvB,EAAMuB,UACrBC,MAAO,6DACLxB,EAAMsB,WAAa,WAAa,KAElCG,YAAazB,EAAMsB,WAAWI,WAC9Bd,UAAWA,EACXe,IAAK3B,EAAM4B,WAEV3B,EACDgB,EAAA,QACEY,MAAOnB,EACPW,KAAK,cACLG,MAAM,kEAELxB,EAAMK,KAAKQ,EAAE,sBAAuB,CACnCiB,KAAM5B,MAIT,S","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["atomicResultFieldsListCss","AtomicResultFieldsListStyle0","AtomicResultFieldsList","constructor","hostRef","this","updatingChildren","rows","connectedCallback","window","ResizeObserver","resizeObserver","update","observe","host","parentElement","disconnectedCallback","disconnect","componentDidRender","showDividers","showChildren","hideChildrenToFit","hideDividersAtEndOfRows","hostChildren","Array","from","children","isOverflowing","scrollWidth","clientWidth","scrollHeight","clientHeight","getSortedChildrenBySize","sort","a","b","offsetWidth","hide","element","style","display","show","isChildHidden","setHideDivider","hideDivider","classList","toggle","forEach","child","i","length","previousChild","filter","row","offsetTop","indexOf","push","render","h","Host","key","__decorate","ResultContext"],"sources":["src/components/search/result-template-components/atomic-result-fields-list/atomic-result-fields-list.pcss?tag=atomic-result-fields-list","src/components/search/result-template-components/atomic-result-fields-list/atomic-result-fields-list.tsx"],"sourcesContent":["@import '../../../../global/global.pcss';\n\natomic-result-fields-list {\n display: flex;\n flex-wrap: wrap;\n width: 100%;\n height: 100%;\n\n > * {\n &::after {\n display: block;\n content: ' ';\n width: 1px;\n height: 1rem;\n margin: 0 1rem;\n @apply bg-neutral;\n vertical-align: middle;\n }\n\n &.hide-divider::after {\n visibility: hidden;\n }\n }\n}\n","import {Result} from '@coveo/headless';\nimport {Component, h, Element, Host} from '@stencil/core';\nimport {ResultContext} from '../result-template-decorators';\n\n/**\n * The `atomic-result-fields-list` component selectively renders its children to ensure they fit the parent element and adds dividers between them.\n * @slot default - The children to render.\n */\n@Component({\n tag: 'atomic-result-fields-list',\n styleUrl: 'atomic-result-fields-list.pcss',\n shadow: false,\n})\nexport class AtomicResultFieldsList {\n @ResultContext()\n protected result!: Result;\n\n private resizeObserver?: ResizeObserver;\n\n private updatingChildren = false;\n private rows: number[] = [];\n @Element() private host!: HTMLElement;\n\n public connectedCallback() {\n if (window.ResizeObserver) {\n this.resizeObserver = new ResizeObserver(() => this.update());\n this.resizeObserver.observe(this.host.parentElement!);\n }\n }\n\n public disconnectedCallback() {\n this.resizeObserver?.disconnect();\n }\n\n public componentDidRender() {\n this.update();\n }\n\n public update() {\n if (this.updatingChildren) {\n return;\n }\n this.updatingChildren = true;\n this.showDividers();\n this.showChildren();\n this.hideChildrenToFit();\n this.hideDividersAtEndOfRows();\n this.updatingChildren = false;\n }\n\n private get hostChildren() {\n return Array.from(this.host.children) as HTMLElement[];\n }\n\n private get isOverflowing() {\n return (\n this.host.scrollWidth > this.host.clientWidth ||\n this.host.scrollHeight > this.host.clientHeight\n );\n }\n\n private getSortedChildrenBySize() {\n return this.hostChildren.sort((a, b) => a.offsetWidth - b.offsetWidth);\n }\n\n private hide(element: HTMLElement) {\n element.style.display = 'none';\n }\n\n private show(element: HTMLElement) {\n element.style.display = '';\n }\n\n private isChildHidden(element: HTMLElement) {\n return element.style.display === 'none';\n }\n\n private setHideDivider(element: HTMLElement, hideDivider: boolean) {\n element.classList.toggle('hide-divider', hideDivider);\n }\n\n private showChildren() {\n this.hostChildren.forEach((child) => this.show(child));\n }\n\n private showDividers() {\n this.hostChildren.forEach((child) => this.setHideDivider(child, false));\n }\n\n private hideChildrenToFit() {\n const children = this.getSortedChildrenBySize();\n for (let i = children.length - 1; this.isOverflowing && i >= 0; i--) {\n this.hide(children[i]);\n }\n }\n\n private hideDividersAtEndOfRows() {\n this.rows = [];\n let previousChild: HTMLElement | null = null;\n this.hostChildren\n .filter((child) => !this.isChildHidden(child))\n .forEach((child) => {\n const row = child.offsetTop;\n if (this.rows.indexOf(row) === -1) {\n this.rows.push(row);\n if (previousChild) {\n this.setHideDivider(previousChild, true);\n }\n }\n previousChild = child;\n });\n if (previousChild) {\n this.setHideDivider(previousChild, true);\n }\n }\n\n render() {\n return <Host></Host>;\n }\n}\n"],"mappings":"qKAAA,MAAMA,EAA4B,g1jEAClC,MAAAC,EAAeD,E,iXCYFE,EAAsB,MALnC,WAAAC,CAAAC,G,UAWUC,KAAAC,iBAAmB,MACnBD,KAAAE,KAAiB,E,CAGlB,iBAAAC,GACL,GAAIC,OAAOC,eAAgB,CACzBL,KAAKM,eAAiB,IAAID,gBAAe,IAAML,KAAKO,WACpDP,KAAKM,eAAeE,QAAQR,KAAKS,KAAKC,c,EAInC,oBAAAC,GACLX,KAAKM,gBAAgBM,Y,CAGhB,kBAAAC,GACLb,KAAKO,Q,CAGA,MAAAA,GACL,GAAIP,KAAKC,iBAAkB,CACzB,M,CAEFD,KAAKC,iBAAmB,KACxBD,KAAKc,eACLd,KAAKe,eACLf,KAAKgB,oBACLhB,KAAKiB,0BACLjB,KAAKC,iBAAmB,K,CAG1B,gBAAYiB,GACV,OAAOC,MAAMC,KAAKpB,KAAKS,KAAKY,S,CAG9B,iBAAYC,GACV,OACEtB,KAAKS,KAAKc,YAAcvB,KAAKS,KAAKe,aAClCxB,KAAKS,KAAKgB,aAAezB,KAAKS,KAAKiB,Y,CAI/B,uBAAAC,GACN,OAAO3B,KAAKkB,aAAaU,MAAK,CAACC,EAAGC,IAAMD,EAAEE,YAAcD,EAAEC,a,CAGpD,IAAAC,CAAKC,GACXA,EAAQC,MAAMC,QAAU,M,CAGlB,IAAAC,CAAKH,GACXA,EAAQC,MAAMC,QAAU,E,CAGlB,aAAAE,CAAcJ,GACpB,OAAOA,EAAQC,MAAMC,UAAY,M,CAG3B,cAAAG,CAAeL,EAAsBM,GAC3CN,EAAQO,UAAUC,OAAO,eAAgBF,E,CAGnC,YAAAxB,GACNf,KAAKkB,aAAawB,SAASC,GAAU3C,KAAKoC,KAAKO,I,CAGzC,YAAA7B,GACNd,KAAKkB,aAAawB,SAASC,GAAU3C,KAAKsC,eAAeK,EAAO,Q,CAG1D,iBAAA3B,GACN,MAAMK,EAAWrB,KAAK2B,0BACtB,IAAK,IAAIiB,EAAIvB,EAASwB,OAAS,EAAG7C,KAAKsB,eAAiBsB,GAAK,EAAGA,IAAK,CACnE5C,KAAKgC,KAAKX,EAASuB,G,EAIf,uBAAA3B,GACNjB,KAAKE,KAAO,GACZ,IAAI4C,EAAoC,KACxC9C,KAAKkB,aACF6B,QAAQJ,IAAW3C,KAAKqC,cAAcM,KACtCD,SAASC,IACR,MAAMK,EAAML,EAAMM,UAClB,GAAIjD,KAAKE,KAAKgD,QAAQF,MAAU,EAAG,CACjChD,KAAKE,KAAKiD,KAAKH,GACf,GAAIF,EAAe,CACjB9C,KAAKsC,eAAeQ,EAAe,K,EAGvCA,EAAgBH,CAAK,IAEzB,GAAIG,EAAe,CACjB9C,KAAKsC,eAAeQ,EAAe,K,EAIvC,MAAAM,GACE,OAAOC,EAACC,EAAI,CAAAC,IAAA,4C,6BAtGJC,EAAA,CADTC,K","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["SmartSnippetSuggestionsWrapper","headingLevel","i18n","children","h","part","class","Heading","level","t","SmartSnippetSuggestionsQuestionWrapper","expanded","key","SmartSnippetSuggestionsQuestion","ariaControls","onClick","question","atomicIcon","Button","style","getQuestionPart","ariaExpanded","undefined","SmartSnippetSuggestionsAnswerAndSourceWrapper","id","SmartSnippetSuggestionsFooter","base"],"sources":["src/components/common/smart-snippets/atomic-smart-snippet-suggestions/smart-snippet-suggestions-common.tsx"],"sourcesContent":["import {FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {Button} from '../../stencil-button';\nimport {Heading} from '../../stencil-heading';\n\nexport const SmartSnippetSuggestionsWrapper: FunctionalComponent<{\n headingLevel: number;\n i18n: i18n;\n}> = ({headingLevel, i18n}, children) => {\n return (\n <aside\n part=\"container\"\n class=\"bg-background border-neutral text-on-background overflow-hidden rounded-lg border\"\n >\n <Heading\n level={headingLevel}\n part=\"heading\"\n class=\"border-neutral border-b px-6 py-4 text-xl leading-8\"\n >\n {i18n.t('smart-snippet-people-also-ask')}\n </Heading>\n <ul part=\"questions\" class=\"divide-neutral divide-y\">\n {children}\n </ul>\n </aside>\n );\n};\n\nexport const SmartSnippetSuggestionsQuestionWrapper: FunctionalComponent<{\n expanded: boolean;\n key: string;\n}> = ({expanded, key}, children) => {\n return (\n <li\n key={key}\n part={`question-answer-${expanded ? 'expanded' : 'collapsed'}`}\n class=\"flex flex-col\"\n >\n <article class=\"contents\">{children}</article>\n </li>\n );\n};\n\nexport const SmartSnippetSuggestionsQuestion: FunctionalComponent<{\n ariaControls: string;\n expanded: boolean;\n headingLevel?: number;\n onClick: (event: MouseEvent) => void;\n question: string;\n}> = (\n {ariaControls, expanded, headingLevel, onClick, question},\n atomicIcon\n) => {\n return (\n <Button\n style=\"text-neutral\"\n part={getQuestionPart('button', expanded)}\n onClick={onClick}\n class=\"flex items-center px-4\"\n ariaExpanded={expanded ? 'true' : undefined}\n ariaControls={expanded ? ariaControls : undefined}\n >\n {atomicIcon}\n <Heading\n level={headingLevel ? headingLevel + 1 : 0}\n class=\"py-4 text-left text-xl font-bold\"\n part={getQuestionPart('text', expanded)}\n >\n {question}\n </Heading>\n </Button>\n );\n};\n\nexport const SmartSnippetSuggestionsAnswerAndSourceWrapper: FunctionalComponent<{\n expanded: boolean;\n id: string;\n}> = ({id}, children) => {\n return (\n <div part=\"answer-and-source\" class=\"pr-6 pb-6 pl-10\" id={id}>\n {children}\n </div>\n );\n};\n\nexport const SmartSnippetSuggestionsFooter: FunctionalComponent<{\n i18n: i18n;\n}> = ({i18n}, children) => {\n return (\n <footer part=\"footer\" aria-label={i18n.t('smart-snippet-source')}>\n {children}\n </footer>\n );\n};\n\nexport const getQuestionPart = (base: string, expanded: boolean) =>\n `question-${base}-${expanded ? 'expanded' : 'collapsed'}`;\n"],"mappings":"kHAKaA,EAGR,EAAEC,eAAcC,QAAOC,IAExBC,EAAA,SACEC,KAAK,YACLC,MAAM,qFAENF,EAACG,EAAO,CACNC,MAAOP,EACPI,KAAK,UACLC,MAAM,uDAELJ,EAAKO,EAAE,kCAEVL,EAAA,MAAIC,KAAK,YAAYC,MAAM,2BACxBH,I,MAMIO,EAGR,EAAEC,WAAUC,OAAMT,IAEnBC,EAAA,MACEQ,IAAKA,EACLP,KAAM,mBAAmBM,EAAW,WAAa,cACjDL,MAAM,iBAENF,EAAA,WAASE,MAAM,YAAYH,I,MAKpBU,EAMR,EACFC,eAAcH,WAAUV,eAAcc,UAASC,YAChDC,IAGEb,EAACc,EAAM,CACLC,MAAM,eACNd,KAAMe,EAAgB,SAAUT,GAChCI,QAASA,EACTT,MAAM,yBACNe,aAAcV,EAAW,OAASW,UAClCR,aAAcH,EAAWG,EAAeQ,WAEvCL,EACDb,EAACG,EAAO,CACNC,MAAOP,EAAeA,EAAe,EAAI,EACzCK,MAAM,mCACND,KAAMe,EAAgB,OAAQT,IAE7BK,I,MAMIO,EAGR,EAAEC,MAAKrB,IAERC,EAAA,OAAKC,KAAK,oBAAoBC,MAAM,kBAAkBkB,GAAIA,GACvDrB,G,MAKMsB,EAER,EAAEvB,QAAOC,IAEVC,EAAA,UAAQC,KAAK,SAAQ,aAAaH,EAAKO,EAAE,yBACtCN,G,MAKMiB,EAAkB,CAACM,EAAcf,IAC5C,YAAYe,KAAQf,EAAW,WAAa,qB","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{h as a}from"./p-dc3df5ce.js";import{A as e}from"./p-b700cfe1.js";import{A as t}from"./p-35fb03be.js";import{C as l}from"./p-fafae456.js";import{B as r}from"./p-b93ccff9.js";import{H as s}from"./p-66d48d1a.js";const o=(e,t)=>a("div",{class:"bg-background border-neutral rounded-lg border p-4",part:"facet"},t);const n=o=>{const n=o.i18n.t(o.label);const c=o.i18n.t("expand-facet",{label:n});const i=o.i18n.t("collapse-facet",{label:n});const p=o.i18n.t("clear-filters",{count:o.numberOfActiveValues});const d=o.i18n.t("clear-filters-for-facet",{count:o.numberOfActiveValues,label:n});return[a(r,{style:"text-transparent",part:"label-button",class:"flex w-full justify-between rounded-none px-2 py-1 text-lg font-bold",ariaLabel:o.isCollapsed?c:i,onClick:()=>o.onToggleCollapse(),ariaExpanded:(!o.isCollapsed).toString(),ref:o.headerRef},a(s,{level:o.headingLevel,class:"truncate"},n),a("atomic-icon",{part:"label-button-icon",class:"ml-4 w-3 shrink-0 self-center",icon:o.isCollapsed?e:t})),o.onClearFilters&&o.numberOfActiveValues>0&&a(r,{style:"text-primary",part:"clear-button",class:"flex max-w-full items-baseline p-2 text-sm",ariaLabel:d,onClick:()=>o.onClearFilters()},a("atomic-icon",{part:"clear-button-icon",class:"mr-1 h-2 w-2",icon:l}),a("span",null,p))]};const c=({numberOfValues:e,isCollapsed:t})=>{const l=[];for(let t=0;t<e;t++){l.push(a("div",{class:"bg-neutral mt-4 flex h-5",style:{width:"100%",opacity:"0.5"}}))}return a("div",{part:"placeholder",class:"bg-background border-neutral mb-4 animate-pulse rounded-lg border p-7","aria-hidden":"true"},a("div",{class:"bg-neutral h-8 rounded",style:{width:"75%"}}),!t&&a("div",{class:"mt-7"},l))};export{n as F,o as a,c as b};
2
- //# sourceMappingURL=p-60498b8e.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["FacetContainer","_","children","h","class","part","FacetHeader","props","label","i18n","t","expandFacet","collapseFacet","clearFilters","count","numberOfActiveValues","clearFiltersForFacet","Button","style","ariaLabel","isCollapsed","onClick","onToggleCollapse","ariaExpanded","toString","ref","headerRef","Heading","level","headingLevel","icon","ArrowBottomIcon","ArrowTopIcon","onClearFilters","CloseIcon","FacetPlaceholder","numberOfValues","facetValues","i","push","width","opacity"],"sources":["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/facet-placeholder.tsx"],"sourcesContent":["import {FunctionalComponent, h} from '@stencil/core';\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\nexport interface 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\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\nexport interface FacetPlaceholderProps {\n numberOfValues: number;\n isCollapsed: boolean;\n}\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"],"mappings":"8NAEaA,EAAsC,CAACC,EAAGC,IACrDC,EAAA,OAAKC,MAAM,qDAAqDC,KAAK,SAClEH,G,MCeQI,EAAsDC,IACjE,MAAMC,EAAQD,EAAME,KAAKC,EAAEH,EAAMC,OACjC,MAAMG,EAAcJ,EAAME,KAAKC,EAAE,eAAgB,CAACF,UAClD,MAAMI,EAAgBL,EAAME,KAAKC,EAAE,iBAAkB,CAACF,UACtD,MAAMK,EAAeN,EAAME,KAAKC,EAAE,gBAAiB,CACjDI,MAAOP,EAAMQ,uBAEf,MAAMC,EAAuBT,EAAME,KAAKC,EAAE,0BAA2B,CACnEI,MAAOP,EAAMQ,qBACbP,UAGF,MAAO,CACLL,EAACc,EAAM,CACLC,MAAM,mBACNb,KAAK,eACLD,MAAM,uEACNe,UAAWZ,EAAMa,YAAcT,EAAcC,EAC7CS,QAAS,IAAMd,EAAMe,mBACrBC,eAAgBhB,EAAMa,aAAaI,WACnCC,IAAKlB,EAAMmB,WAEXvB,EAACwB,EAAO,CAACC,MAAOrB,EAAMsB,aAAczB,MAAM,YACvCI,GAEHL,EAAA,eACEE,KAAK,oBACLD,MAAM,gCACN0B,KAAMvB,EAAMa,YAAcW,EAAkBC,KAGhDzB,EAAM0B,gBAAkB1B,EAAMQ,qBAAuB,GACnDZ,EAACc,EAAM,CACLC,MAAM,eACNb,KAAK,eACLD,MAAM,6CACNe,UAAWH,EACXK,QAAS,IAAMd,EAAM0B,kBAErB9B,EAAA,eACEE,KAAK,oBACLD,MAAM,eACN0B,KAAMI,IAER/B,EAAA,YAAOU,IAGZ,E,MC3DUsB,EAA+D,EAC1EC,iBACAhB,kBAEA,MAAMiB,EAAc,GACpB,IAAK,IAAIC,EAAI,EAAGA,EAAIF,EAAgBE,IAAK,CACvCD,EAAYE,KACVpC,EAAA,OACEC,MAAM,2BACNc,MAAO,CAACsB,MAAO,OAAQC,QAAS,S,CAKtC,OACEtC,EAAA,OACEE,KAAK,cACLD,MAAM,wEAAuE,cACjE,QAEZD,EAAA,OAAKC,MAAM,yBAAyBc,MAAO,CAACsB,MAAO,UACjDpB,GAAejB,EAAA,OAAKC,MAAM,QAAQiC,GAChC,S","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["icons","SEARCH","SearchIcon","CLICK","DocumentIcon","VIEW","QuickviewIcon","CUSTOM","PointIcon","TICKET_CREATION","BookmarkIcon","UserAction","bindings","action","renderActionTimestamp","hours","minutes","parseTimestampToDateDetails","timestamp","formattedHours","String","padStart","formattedMinutes","renderIcon","iconClasses","includes","actionType","h","icon","class","renderActionTitle","i18n","t","eventData","value","type","query","href","document","contentIdValue","target","title","searchHub","atomicInsightUserActionsSessionCss","AtomicInsightUserActionsSessionStyle0","AtomicInsightUserActionsSession","this","userActionsToDisplay","userActionsAfterCaseCreation","areActionsAfterCaseCreationVisible","connectedCallback","prepareUserActionsToDisplay","caseCreationIndex","userActions","findIndex","isCaseCreationSession","slice","showActionsAfterCaseCreation","renderSessionStartDate","year","month","dayOfWeek","day","startTimestamp","formatedStartDate","Flag","renderActions","actions","map","renderShowMoreActionsButton","btnClasses","label","count","length","ThreeDotsIcon","Button","style","part","ariaLabel","onClick","bind","render","isShowMoreActionsButtonVisible","key","__decorate","InitializeBindings","atomicInsightUserActionsTimelineCss","AtomicInsightUserActionsTimelineStyle0","AtomicInsightUserActionsTimeline","excludedCustomActions","followingSessionsAreVisible","precedingSessionsAreVisible","initialize","buildInsightUserActions","engine","options","ticketCreationDate","ticketCreationDateTime","fetchUserActions","userId","toggleFollowingSessions","togglePrecedingSessions","renderSessions","sessions","renderSeparator","testId","start","renderToggleFollowingSessionsButton","ArrowDownIcon","ArrowUpIcon","renderTogglePrecedingSessionsButton","renderFollowingSessionsSection","userActionsState","timeline","followingSessions","renderPrecedingSessionsSection","precedingSessions","renderTimeline","session","renderNoUserActionsScreen","NoItemsContainer","MagnifyingGlass","areUserActionsAvailable","hasError","error","BindStateToController"],"sources":["src/components/insight/user-actions/atomic-insight-user-actions-session/user-action.tsx","src/components/insight/user-actions/atomic-insight-user-actions-session/atomic-insight-user-actions-session.pcss?tag=atomic-insight-user-actions-session&encapsulation=shadow","src/components/insight/user-actions/atomic-insight-user-actions-session/atomic-insight-user-actions-session.tsx","src/components/insight/user-actions/atomic-insight-user-actions-timeline/atomic-insight-user-actions-timeline.pcss?tag=atomic-insight-user-actions-timeline&encapsulation=shadow","src/components/insight/user-actions/atomic-insight-user-actions-timeline/atomic-insight-user-actions-timeline.tsx"],"sourcesContent":["import {UserAction as IUserAction} from '@coveo/headless/insight';\nimport {FunctionalComponent, h} from '@stencil/core';\nimport BookmarkIcon from '../../../../images/bookmark.svg';\nimport DocumentIcon from '../../../../images/document.svg';\nimport PointIcon from '../../../../images/point.svg';\nimport QuickviewIcon from '../../../../images/quickview.svg';\nimport SearchIcon from '../../../../images/search.svg';\nimport {parseTimestampToDateDetails} from '../../../../utils/date-utils';\nimport {InsightBindings} from '../../atomic-insight-interface/atomic-insight-interface';\n\nconst icons = {\n SEARCH: SearchIcon,\n CLICK: DocumentIcon,\n VIEW: QuickviewIcon,\n CUSTOM: PointIcon,\n TICKET_CREATION: BookmarkIcon,\n};\n\ninterface UserAction {\n action: IUserAction;\n bindings: InsightBindings;\n}\n\nexport const UserAction: FunctionalComponent<UserAction> = ({\n bindings,\n action,\n}) => {\n const renderActionTimestamp = () => {\n const {hours, minutes} = parseTimestampToDateDetails(action.timestamp);\n\n const formattedHours = String(hours).padStart(2, '0');\n const formattedMinutes = String(minutes).padStart(2, '0');\n\n return `${formattedHours}:${formattedMinutes}`;\n };\n\n const renderIcon = () => {\n const iconClasses = `w-3 h-3 ${['CLICK', 'VIEW'].includes(action.actionType) ? 'text-primary' : ''}`;\n\n return (\n <atomic-icon\n icon={icons[action.actionType]}\n class={iconClasses}\n ></atomic-icon>\n );\n };\n\n const renderActionTitle = () => {\n switch (action.actionType) {\n case 'TICKET_CREATION':\n return (\n <div class=\"ticket-creation-action__text text-xs font-semibold\">\n {bindings.i18n.t('ticket-created')}\n </div>\n );\n case 'CUSTOM':\n return (\n <div class=\"text-xs font-semibold\">\n {action.eventData?.value ?? action.eventData?.type}\n </div>\n );\n case 'SEARCH':\n return (\n <div class=\"text-xs font-semibold\">\n {action.query || bindings.i18n.t('empty-search')}\n </div>\n );\n case 'VIEW':\n return (\n <a\n href={action.document?.contentIdValue}\n class=\"text-primary text-xs font-semibold\"\n target=\"_blank\"\n >\n {action.document?.title}\n </a>\n );\n case 'CLICK':\n return (\n <div class=\"text-xs font-semibold\">{action.document?.title}</div>\n );\n default:\n return null;\n }\n };\n\n return (\n <div class=\"flex\">\n <div class=\"flex-none pr-2\">\n <div class=\"flex justify-center py-1\">{renderIcon()}</div>\n <div class=\"flex justify-center py-1\">\n <div class=\"user-action__separator h-7 w-0.5 rounded\"></div>\n </div>\n </div>\n <div class=\"flex-1\">\n {renderActionTitle()}\n <div class=\"text-neutral-dark text-xxs flex py-2 font-light\">\n <div>{renderActionTimestamp()}</div>\n <div class=\"px-2\">{action.searchHub}</div>\n </div>\n </div>\n </div>\n );\n};\n","@import '../../../../global/global.pcss';\n\n.session-start-icon__container {\n background-color: #fbb439;\n}\n\n.user-action__separator {\n @apply bg-neutral;\n}\n\n.ticket-creation-action__text {\n @apply text-success;\n}\n\n.text-xxs {\n font-size: 0.625rem;\n}\n","import {UserAction as IUserAction} from '@coveo/headless/insight';\nimport {Component, h, Prop, Watch, State} from '@stencil/core';\nimport Flag from '../../../../images/flag.svg';\nimport ThreeDotsIcon from '../../../../images/three-dots.svg';\nimport {parseTimestampToDateDetails} from '../../../../utils/date-utils';\nimport {InitializeBindings} from '../../../../utils/initialization-utils';\nimport {Button} from '../../../common/stencil-button';\nimport {InsightBindings} from '../../atomic-insight-interface/atomic-insight-interface';\nimport {UserAction} from './user-action';\n\nexport type UserActionType =\n | 'SEARCH'\n | 'CLICK'\n | 'TICKET_CREATION'\n | 'VIEW'\n | 'CUSTOM';\n\n/**\n * @internal\n * The `AtomicInsightUserActionSession` component displays all the user actions that took place during a specific user session.\n * @category Insight Panel\n * @example\n * <atomic-insight-user-actions-session userActions={actions} startTimestamp={1723035731}></atomic-insight-user-actions-session>\n */\n@Component({\n tag: 'atomic-insight-user-actions-session',\n styleUrl: 'atomic-insight-user-actions-session.pcss',\n shadow: true,\n})\nexport class AtomicInsightUserActionsSession {\n @InitializeBindings() public bindings!: InsightBindings;\n @State() public error!: Error;\n\n /**\n * The start time of the session as a Unix timestamp.\n */\n @Prop() public startTimestamp!: number;\n /**\n * The list of user actions performed during the session.\n */\n @Prop() public userActions!: Array<IUserAction>;\n\n private userActionsToDisplay: Array<IUserAction> = [];\n private userActionsAfterCaseCreation: Array<IUserAction> = [];\n @State() areActionsAfterCaseCreationVisible = false;\n\n connectedCallback() {\n this.prepareUserActionsToDisplay();\n }\n\n @Watch('userActions')\n prepareUserActionsToDisplay() {\n const caseCreationIndex = this.userActions.findIndex(\n ({actionType}) => actionType === 'TICKET_CREATION'\n );\n const isCaseCreationSession = caseCreationIndex !== -1;\n\n if (!isCaseCreationSession) {\n this.userActionsToDisplay = this.userActions;\n this.userActionsAfterCaseCreation = [];\n } else {\n this.userActionsToDisplay = this.userActions.slice(caseCreationIndex);\n this.userActionsAfterCaseCreation = this.userActions.slice(\n 0,\n caseCreationIndex\n );\n }\n }\n\n showActionsAfterCaseCreation() {\n this.areActionsAfterCaseCreationVisible = true;\n }\n\n renderSessionStartDate() {\n const caseCreationIndex = this.userActions.findIndex(\n ({actionType}) => actionType === 'TICKET_CREATION'\n );\n const isCaseCreationSession = caseCreationIndex !== -1;\n\n const {year, month, dayOfWeek, day} = parseTimestampToDateDetails(\n this.startTimestamp\n );\n\n const formatedStartDate = `${dayOfWeek}. ${month} ${day}, ${year}`;\n return (\n <div class=\"flex items-center px-2 pb-3\">\n {isCaseCreationSession ? (\n <div class=\"session-start-icon__container mr-2 flex h-5 w-5 items-center justify-center rounded-full\">\n <atomic-icon icon={Flag} class=\"h-3 w-3\"></atomic-icon>\n </div>\n ) : null}\n\n <div class=\"flex-1 font-semibold\">{formatedStartDate}</div>\n </div>\n );\n }\n\n renderActions(actions: Array<IUserAction>) {\n return (\n <ol class=\"px-3\">\n {actions?.map((action) => (\n <UserAction action={action} bindings={this.bindings}></UserAction>\n ))}\n </ol>\n );\n }\n\n renderShowMoreActionsButton() {\n const btnClasses = 'flex items-center p-1 max-w-full';\n const label = this.bindings.i18n.t('more-actions-in-session', {\n count: this.userActionsAfterCaseCreation.length,\n });\n return (\n <div\n data-testid=\"show-more-actions-button\"\n class=\"flex items-center px-3 pb-3\"\n >\n <div class=\"flex justify-center pr-2\">\n <atomic-icon icon={ThreeDotsIcon} class=\"h-3 w-3\"></atomic-icon>\n </div>\n <div class=\"flex-1\">\n <Button\n style=\"text-primary\"\n part=\"show-more-actions-button\"\n class={btnClasses}\n ariaLabel={label}\n onClick={this.showActionsAfterCaseCreation.bind(this)}\n >\n <span class=\"truncate text-xs font-light\">{label}</span>\n </Button>\n </div>\n </div>\n );\n }\n\n public render() {\n const isShowMoreActionsButtonVisible =\n !this.areActionsAfterCaseCreationVisible &&\n !!this.userActionsAfterCaseCreation.length;\n\n return (\n <div>\n {this.renderSessionStartDate()}\n\n {this.areActionsAfterCaseCreationVisible && (\n <div data-testid=\"more-actions-section\">\n {this.renderActions(this.userActionsAfterCaseCreation)}\n </div>\n )}\n\n {isShowMoreActionsButtonVisible && this.renderShowMoreActionsButton()}\n\n {this.renderActions(this.userActionsToDisplay)}\n </div>\n );\n }\n}\n","@import '../../../../global/global.pcss';\n\n.separator {\n height: 1px;\n background-color: #e0e1dd;\n}\n","import {\n buildUserActions as buildInsightUserActions,\n UserActions as InsightUserActions,\n UserActionsState as InsightUserActionsState,\n UserSession as InsightUserSession,\n} from '@coveo/headless/insight';\nimport {Component, h, State, Prop} from '@stencil/core';\nimport ArrowDownIcon from '../../../../images/big-arrow-down.svg';\nimport ArrowUpIcon from '../../../../images/big-arrow-up.svg';\nimport {\n InitializableComponent,\n InitializeBindings,\n BindStateToController,\n} from '../../../../utils/initialization-utils';\nimport {NoItemsContainer} from '../../../common/no-items/stencil-container';\nimport {MagnifyingGlass} from '../../../common/no-items/stencil-magnifying-glass';\nimport {Button} from '../../../common/stencil-button';\nimport {InsightBindings} from '../../atomic-insight-interface/atomic-insight-interface';\n\n/**\n * Internal component used by the `atomic-insight-user-actions-modal`. Do not use directly.\n * \n * This component displays all the actions performed by a user around the time they created a case.\n * The actions are grouped into multiple sessions, including the session during which the case was created,\n * the sessions preceding the case creation and the sessions following the case creation.\n *\n * @component\n * @example\n * <AtomicInsightUserActionsTimeline userId={'123'} caseCreationDate={'2024-08-15T10:00:00Z'} />\n *\n */\n@Component({\n tag: 'atomic-insight-user-actions-timeline',\n styleUrl: 'atomic-insight-user-actions-timeline.pcss',\n shadow: true,\n})\nexport class AtomicInsightUserActionsTimeline\n implements InitializableComponent<InsightBindings>\n{\n @InitializeBindings() public bindings!: InsightBindings;\n public userActions!: InsightUserActions;\n\n @BindStateToController('userActions')\n @State()\n public userActionsState!: InsightUserActionsState;\n public error!: Error;\n\n /**\n * The ID of the user whose actions are being displayed. For example in email format \"someone@company.com\".\n */\n @Prop() public userId!: string;\n /**\n * The date and time when the case was created. For example \"2024-01-01T00:00:00Z\"\n */\n @Prop() public ticketCreationDateTime!: string;\n /**\n * The names of custom events to exclude.\n */\n @Prop() public excludedCustomActions: string[] = [];\n\n public initialize() {\n this.userActions = buildInsightUserActions(this.bindings.engine, {\n options: {\n ticketCreationDate: this.ticketCreationDateTime,\n excludedCustomActions: this.excludedCustomActions,\n },\n });\n\n this.userActions.fetchUserActions(this.userId);\n }\n\n @State() followingSessionsAreVisible = false;\n @State() precedingSessionsAreVisible = false;\n\n private toggleFollowingSessions() {\n this.followingSessionsAreVisible = !this.followingSessionsAreVisible;\n }\n\n private togglePrecedingSessions() {\n this.precedingSessionsAreVisible = !this.precedingSessionsAreVisible;\n }\n\n private renderSessions(\n sessions: Array<InsightUserSession> | undefined,\n renderSeparator?: Function,\n testId?: string\n ) {\n return (\n <div>\n {sessions?.map(({actions, start}) => [\n <div class=\"mt-4\">\n <atomic-insight-user-actions-session\n startTimestamp={start}\n userActions={actions}\n data-testid={testId}\n ></atomic-insight-user-actions-session>\n </div>,\n renderSeparator ? renderSeparator() : null,\n ])}\n </div>\n );\n }\n\n private renderToggleFollowingSessionsButton() {\n const btnClasses = 'flex items-center text-left p-2 text-sm max-w-full';\n const iconClasses = 'h-3 w-3 mr-1';\n const label = this.followingSessionsAreVisible\n ? this.bindings.i18n.t('hide-following-sessions')\n : this.bindings.i18n.t('show-following-sessions');\n const icon = this.followingSessionsAreVisible ? ArrowDownIcon : ArrowUpIcon;\n\n return (\n <div class=\"flex justify-center p-2\">\n <Button\n style=\"text-primary\"\n part=\"toggle-following-sessions\"\n class={btnClasses}\n ariaLabel={label}\n onClick={this.toggleFollowingSessions.bind(this)}\n >\n <atomic-icon\n part=\"toggle-following-sessions-icon\"\n class={iconClasses}\n icon={icon}\n ></atomic-icon>\n <span class=\"truncate\">{label}</span>\n </Button>\n </div>\n );\n }\n\n private renderTogglePrecedingSessionsButton() {\n const btnClasses = 'flex items-center text-left p-2 text-sm max-w-full';\n const iconClasses = 'h-3 w-3 mr-1';\n const label = this.precedingSessionsAreVisible\n ? this.bindings.i18n.t('hide-preceding-sessions')\n : this.bindings.i18n.t('show-preceding-sessions');\n const icon = this.precedingSessionsAreVisible ? ArrowUpIcon : ArrowDownIcon;\n\n return (\n <div class=\"flex justify-center p-2\">\n <Button\n style=\"text-primary\"\n part=\"toggle-preceding-sessions\"\n class={btnClasses}\n ariaLabel={label}\n onClick={this.togglePrecedingSessions.bind(this)}\n >\n <atomic-icon\n part=\"toggle-preceding-sessions-icon\"\n class={iconClasses}\n icon={icon}\n ></atomic-icon>\n <span class=\"truncate\">{label}</span>\n </Button>\n </div>\n );\n }\n\n private renderFollowingSessionsSection() {\n if (!this.userActionsState.timeline?.followingSessions?.length) {\n return null;\n }\n return [\n this.renderToggleFollowingSessionsButton(),\n <div class=\"separator mx-1 rounded\"></div>,\n this.followingSessionsAreVisible\n ? this.renderSessions(\n this.userActionsState.timeline?.followingSessions,\n () => <div class=\"separator mx-1 mt-4 rounded\"></div>,\n 'following-session'\n )\n : null,\n ];\n }\n\n private renderPrecedingSessionsSection() {\n if (!this.userActionsState.timeline?.precedingSessions?.length) {\n return null;\n }\n return [\n <div class=\"separator mx-1 mt-4 rounded\"></div>,\n this.precedingSessionsAreVisible\n ? this.renderSessions(\n this.userActionsState.timeline?.precedingSessions,\n () => <div class=\"separator mx-1 mt-4 rounded\"></div>,\n 'preceding-session'\n )\n : null,\n this.renderTogglePrecedingSessionsButton(),\n ];\n }\n\n private renderTimeline() {\n return (\n <div>\n {this.renderFollowingSessionsSection()}\n <div class=\"mt-4\">\n <atomic-insight-user-actions-session\n // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain\n startTimestamp={this.userActionsState.timeline?.session?.start!}\n // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain\n userActions={this.userActionsState?.timeline?.session?.actions!}\n data-testid=\"active-session\"\n ></atomic-insight-user-actions-session>\n </div>\n {this.renderPrecedingSessionsSection()}\n </div>\n );\n }\n\n private renderNoUserActionsScreen() {\n return (\n <div class=\"my-6 py-3\" data-testid=\"user-actions-error\">\n <NoItemsContainer>\n <MagnifyingGlass />\n <div class=\"my-2 max-w-full text-center text-2xl font-light\">\n {this.bindings.i18n.t('no-user-actions-available')}\n </div>\n <div class=\"text-neutral-dark my-2 text-center text-lg\">\n {this.bindings.i18n.t('no-user-actions-associated-with-params')}\n </div>\n </NoItemsContainer>\n </div>\n );\n }\n\n render() {\n const areUserActionsAvailable = this.userActionsState.timeline?.session;\n const hasError = this.userActionsState.error;\n\n if (areUserActionsAvailable && !hasError) {\n return this.renderTimeline();\n }\n return this.renderNoUserActionsScreen();\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["ELLIPSIS","SEPARATOR","limitPath","path","pathLimit","length","join","ellipsedPath","slice","joinBreadcrumbValues","breadcrumb","Array","isArray","formattedValue","getFirstBreadcrumbValue","BreadcrumbButton","props","children","classNames","fullValue","value","title","label","isExclusion","state","h","class","key","Button","ref","setRef","part","style","ariaLabel","i18n","t","onClick","onSelectBreadcrumb","BreadcrumbClearAll","text","BreadcrumbContainer","isCollapsed","BreadcrumbContent","activeColor","Fragment","content","icon","CloseIcon","BreadcrumbShowLess","onShowLess","BreadcrumbShowMore","onShowMore","numberOfCollapsedBreadcrumbs","atomicBreadboxCss","AtomicBreadboxStyle0","AtomicBreadbox","this","lastRemovedBreadcrumbIndex","numberOfBreadcrumbs","initialize","validateProps","breadcrumbManager","buildBreadcrumbManager","bindings","engine","facetManager","buildFacetManager","window","ResizeObserver","resizeObserver","adaptBreadcrumbs","observe","host","parentElement","Schema","NumberValue","default","min","required","validate","disconnectedCallback","disconnect","focusTargets","breadcrumbRemovedFocus","FocusTargetController","breadcrumbShowLessFocus","breadcrumbShowMoreFocus","breadcrumbs","from","shadowRoot","querySelectorAll","hide","element","display","show","showAllBreadcrumbs","forEach","hideOverflowingBreadcrumbs","hiddenBreadcrumbs","i","isOverflowing","updateShowMoreValue","updateShowLessDisplay","showLess","offsetTop","listElement","querySelector","scrollWidth","clientWidth","showMore","textContent","toLocaleString","language","setAttribute","facetBreadcrumbs","breadcrumbManagerState","map","facetId","field","values","flat","filter","store","facets","deselect","getFieldValueCaption","categoryFacetBreadcrumbs","categoryFacets","pathValue","numericFacetBreadcrumbs","numericFacets","format","dateFacetBreadcrumbs","dateFacets","automaticFacetBreadcrumbs","flatMap","allBreadcrumbs","renderBreadcrumbs","sortedBreadcrumbs","sort","a","b","indexA","facetManagerState","facetIds","indexOf","indexB","index","isLastBreadcrumb","setTarget","firstExpandedBreadcrumbIndex","resultList","focusOnFirstResultAfterNextSearch","focusAfterSearch","render","Hidden","el","focusOnNextTarget","async","deselectAll","componentDidRender","__decorate","InitializeBindings","BindStateToController"],"sources":["src/components/common/breadbox/breadcrumb-utils.ts","src/components/common/breadbox/stencil-breadcrumb-button.tsx","src/components/common/breadbox/stencil-breadcrumb-clear-all.tsx","src/components/common/breadbox/stencil-breadcrumb-container.tsx","src/components/common/breadbox/stencil-breadcrumb-content.tsx","src/components/common/breadbox/stencil-breadcrumb-show-less.tsx","src/components/common/breadbox/stencil-breadcrumb-show-more.tsx","src/components/search/atomic-breadbox/atomic-breadbox.pcss?tag=atomic-breadbox&encapsulation=shadow","src/components/search/atomic-breadbox/atomic-breadbox.tsx"],"sourcesContent":["import type {Breadcrumb} from './breadcrumb-types';\n\nconst ELLIPSIS = '...';\nconst SEPARATOR = ' / ';\n\nfunction limitPath(path: string[], pathLimit: number) {\n if (path.length <= pathLimit) {\n return path.join(SEPARATOR);\n }\n\n if (pathLimit === 1 && path.length > 1) {\n return [ELLIPSIS, path[path.length - 1]].join(SEPARATOR);\n }\n\n const ellipsedPath = [path[0], ELLIPSIS, ...path.slice(-(pathLimit - 1))];\n return ellipsedPath.join(SEPARATOR);\n}\n\nexport function joinBreadcrumbValues(breadcrumb: Breadcrumb) {\n return Array.isArray(breadcrumb.formattedValue)\n ? breadcrumb.formattedValue.join(SEPARATOR)\n : breadcrumb.formattedValue;\n}\n\nexport function getFirstBreadcrumbValue(\n breadcrumb: Breadcrumb,\n pathLimit: number\n) {\n return Array.isArray(breadcrumb.formattedValue)\n ? limitPath(breadcrumb.formattedValue, pathLimit)\n : breadcrumb.formattedValue;\n}\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {Button} from '../stencil-button';\nimport {Breadcrumb} from './breadcrumb-types';\nimport {\n joinBreadcrumbValues,\n getFirstBreadcrumbValue,\n} from './breadcrumb-utils';\n\nexport interface BreadcrumbButtonProps {\n onSelectBreadcrumb: () => void;\n setRef: (el: HTMLButtonElement) => void;\n pathLimit: number;\n breadcrumb: Breadcrumb;\n i18n: i18n;\n}\n\nexport const BreadcrumbButton: FunctionalComponent<BreadcrumbButtonProps> = (\n props,\n children\n) => {\n const classNames = [\n 'py-2',\n 'px-3',\n 'flex',\n 'items-center',\n 'rounded-xl',\n 'group',\n ];\n\n const fullValue = joinBreadcrumbValues(props.breadcrumb);\n const value = getFirstBreadcrumbValue(props.breadcrumb, props.pathLimit);\n const title = `${props.breadcrumb.label}: ${fullValue}`;\n const isExclusion = props.breadcrumb.state === 'excluded';\n\n return (\n <li class=\"breadcrumb\" key={value}>\n <Button\n ref={props.setRef}\n part=\"breadcrumb-button\"\n style={isExclusion ? 'outline-error' : 'outline-bg-neutral'}\n class={classNames.join(' ')}\n title={title}\n ariaLabel={props.i18n.t(\n isExclusion\n ? 'remove-exclusion-filter-on'\n : 'remove-inclusion-filter-on',\n {\n value: title,\n }\n )}\n onClick={props.onSelectBreadcrumb}\n >\n {children}\n </Button>\n </li>\n );\n};\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {Button} from '../stencil-button';\n\nexport interface BreadcrumbClearAllProps {\n setRef: (el: HTMLButtonElement) => void;\n onClick: ((event?: MouseEvent | undefined) => void) | undefined;\n isCollapsed: boolean;\n i18n: i18n;\n}\n\nexport const BreadcrumbClearAll: FunctionalComponent<\n BreadcrumbClearAllProps\n> = (props) => {\n return (\n <li key=\"clear-all\">\n <Button\n ref={props.setRef}\n part=\"clear\"\n style=\"text-primary\"\n text={props.i18n.t('clear')}\n class=\"rounded-xl p-2\"\n ariaLabel={props.i18n.t('clear-all-filters')}\n onClick={props.onClick}\n ></Button>\n </li>\n );\n};\n","import {h, FunctionalComponent} from '@stencil/core';\nimport {i18n} from 'i18next';\n\nexport interface BreadcrumbContainerProps {\n isCollapsed: boolean;\n i18n: i18n;\n}\n\nexport const BreadcrumbContainer: FunctionalComponent<\n BreadcrumbContainerProps\n> = (props, children) => {\n return (\n <div part=\"container\" class=\"text-on-background flex text-sm\">\n <span part=\"label\" class=\"py-2.5 pr-2 pl-0 font-bold\">\n {props.i18n.t('with-colon', {\n text: props.i18n.t('filters'),\n })}\n </span>\n <div part=\"breadcrumb-list-container\" class=\"relative grow\">\n <ul\n part=\"breadcrumb-list\"\n class={`flex gap-1 ${\n props.isCollapsed ? 'absolute w-full flex-nowrap' : 'flex-wrap'\n }`}\n >\n {children}\n </ul>\n </div>\n </div>\n );\n};\n","import {h, FunctionalComponent, Fragment} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport CloseIcon from '../../../images/close.svg';\nimport {Breadcrumb} from './breadcrumb-types';\nimport {getFirstBreadcrumbValue} from './breadcrumb-utils';\n\nexport interface BreadcrumbContentProps {\n pathLimit: number;\n isCollapsed: boolean;\n i18n: i18n;\n breadcrumb: Breadcrumb;\n}\n\nexport const BreadcrumbContent: FunctionalComponent<BreadcrumbContentProps> = (\n props\n) => {\n const value = getFirstBreadcrumbValue(props.breadcrumb, props.pathLimit);\n const isExclusion = props.breadcrumb.state === 'excluded';\n const activeColor = isExclusion ? 'error' : 'primary';\n return (\n <Fragment>\n <span\n part=\"breadcrumb-label\"\n class={`max-w-[30ch] truncate group-hover:text-${activeColor} group-focus-visible:text-${activeColor} ${props.breadcrumb.state}`}\n >\n {props.i18n.t('with-colon', {text: props.breadcrumb.label})}\n </span>\n <span\n part=\"breadcrumb-value\"\n class={`ml-1 ${\n props.breadcrumb.content\n ? ''\n : `max-w-[30ch] truncate ${props.breadcrumb.state}`\n }`}\n >\n {props.breadcrumb.content ?? value}\n </span>\n <atomic-icon\n part=\"breadcrumb-clear\"\n class=\"mt-px ml-2 h-2.5 w-2.5\"\n icon={CloseIcon}\n ></atomic-icon>\n </Fragment>\n );\n};\n","import {h, FunctionalComponent} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {Button} from '../stencil-button';\n\nexport interface BreadcrumbShowLessProps {\n onShowLess: () => void;\n setRef: (el: HTMLButtonElement) => void;\n isCollapsed: boolean;\n i18n: i18n;\n}\n\nexport const BreadcrumbShowLess: FunctionalComponent<\n BreadcrumbShowLessProps\n> = (props) => {\n if (props.isCollapsed) {\n return;\n }\n\n return (\n <li key=\"show-less\">\n <Button\n ref={props.setRef}\n part=\"show-less\"\n style=\"outline-primary\"\n text={props.i18n.t('show-less')}\n class=\"rounded-xl p-2\"\n onClick={props.onShowLess}\n ></Button>\n </li>\n );\n};\n","import {h, FunctionalComponent} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {Button} from '../stencil-button';\n\nexport interface BreadcrumbShowMoreProps {\n setRef: (el: HTMLButtonElement) => void;\n onShowMore: () => void;\n numberOfCollapsedBreadcrumbs: number;\n isCollapsed: boolean;\n i18n: i18n;\n}\n\nexport const BreadcrumbShowMore: FunctionalComponent<\n BreadcrumbShowMoreProps\n> = (props) => {\n if (!props.isCollapsed) {\n return;\n }\n return (\n <li key=\"show-more\">\n <Button\n ref={props.setRef}\n part=\"show-more\"\n style=\"outline-primary\"\n class=\"rounded-xl p-2 whitespace-nowrap\"\n onClick={props.onShowMore}\n ariaLabel={props.i18n.t('show-n-more-filters', {\n value: props.numberOfCollapsedBreadcrumbs,\n })}\n ></Button>\n </li>\n );\n};\n","@import '../../../global/global.pcss';\n@import '../../common/atomic-rating/atomic-rating.pcss';\n\n[part='breadcrumb-label'].excluded,\n[part='breadcrumb-value'].excluded {\n text-decoration: line-through;\n @apply text-error;\n}\n","import {NumberValue, Schema} from '@coveo/bueno';\nimport {\n BreadcrumbManagerState,\n BreadcrumbManager,\n buildBreadcrumbManager,\n FacetManager,\n FacetManagerState,\n buildFacetManager,\n} from '@coveo/headless';\nimport {Component, h, State, Element, Prop} from '@stencil/core';\nimport {getFieldValueCaption} from '../../../utils/field-utils';\nimport {\n InitializableComponent,\n BindStateToController,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {FocusTargetController} from '../../../utils/stencil-accessibility-utils';\nimport {Breadcrumb as BreadboxBreadcrumb} from '../../common/breadbox/breadcrumb-types';\nimport {BreadcrumbButton} from '../../common/breadbox/stencil-breadcrumb-button';\nimport {BreadcrumbClearAll} from '../../common/breadbox/stencil-breadcrumb-clear-all';\nimport {BreadcrumbContainer} from '../../common/breadbox/stencil-breadcrumb-container';\nimport {BreadcrumbContent} from '../../common/breadbox/stencil-breadcrumb-content';\nimport {BreadcrumbShowLess} from '../../common/breadbox/stencil-breadcrumb-show-less';\nimport {BreadcrumbShowMore} from '../../common/breadbox/stencil-breadcrumb-show-more';\nimport {Hidden} from '../../common/stencil-hidden';\nimport {Bindings} from '../atomic-search-interface/atomic-search-interface';\n\n/**\n * The `atomic-breadbox` component creates breadcrumbs that display a summary of the currently active facet values.\n *\n * @part container - The container of the whole component, list & label.\n * @part breadcrumb-list-container - The container of the list of breadcrumb buttons.\n * @part breadcrumb-list - The list of breadcrumb buttons.\n * @part breadcrumb-button - A single breadcrumb button.\n * @part breadcrumb-label - The breadcrumb label, associated with the facet.\n * @part breadcrumb-value - The breadcrumb formatted value.\n * @part breadcrumb-clear - The button to clear individual filters.\n * @part show-more - The button to display all breadcrumbs.\n * @part show-less - The button to display less breadcrumbs.\n * @part label - The \"Filters\" label.\n * @part clear - The button to clear all filters.\n */\n@Component({\n tag: 'atomic-breadbox',\n styleUrl: 'atomic-breadbox.pcss',\n shadow: true,\n})\nexport class AtomicBreadbox implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n private breadcrumbManager!: BreadcrumbManager;\n private resizeObserver?: ResizeObserver;\n private showMore!: HTMLButtonElement;\n private showLess!: HTMLButtonElement;\n private lastRemovedBreadcrumbIndex = 0;\n private numberOfBreadcrumbs = 0;\n private numberOfCollapsedBreadcrumbs = 0;\n private firstExpandedBreadcrumbIndex?: number;\n facetManager!: FacetManager;\n\n @Element() private host!: HTMLElement;\n\n @BindStateToController('breadcrumbManager')\n @State()\n private breadcrumbManagerState!: BreadcrumbManagerState;\n @BindStateToController('facetManager')\n @State()\n public facetManagerState!: FacetManagerState;\n @State() public error!: Error;\n @State() private isCollapsed = true;\n\n private breadcrumbRemovedFocus?: FocusTargetController;\n\n private breadcrumbShowMoreFocus?: FocusTargetController;\n\n private breadcrumbShowLessFocus?: FocusTargetController;\n\n /**\n * This prop allows you to control the display depth\n * of the path by specifying the number of parent or ancestor\n * breadcrumbs links relative to the currently selected value.\n *\n * If the path size is equal to or less than the pathLimit, all values in\n * the path will be displayed without truncation.\n *\n * If the path size exceeds the pathLimit, it will truncate the path by\n * replacing the middle values with ellipses ('...').\n *\n * Minimum: `1`\n * @defaultValue `3`\n */\n @Prop() public pathLimit = 3;\n\n public initialize() {\n this.validateProps();\n this.breadcrumbManager = buildBreadcrumbManager(this.bindings.engine);\n this.facetManager = buildFacetManager(this.bindings.engine);\n\n if (window.ResizeObserver) {\n this.resizeObserver = new ResizeObserver(() => this.adaptBreadcrumbs());\n this.resizeObserver.observe(this.host.parentElement!);\n }\n }\n\n private validateProps() {\n new Schema({\n pathLimit: new NumberValue({\n default: 3,\n min: 1,\n required: false,\n }),\n }).validate({\n pathLimit: this.pathLimit,\n });\n }\n\n public disconnectedCallback() {\n this.resizeObserver?.disconnect();\n }\n\n private get focusTargets() {\n if (!this.breadcrumbRemovedFocus) {\n this.breadcrumbRemovedFocus = new FocusTargetController(this);\n }\n if (!this.breadcrumbShowLessFocus) {\n this.breadcrumbShowLessFocus = new FocusTargetController(this);\n }\n if (!this.breadcrumbShowMoreFocus) {\n this.breadcrumbShowMoreFocus = new FocusTargetController(this);\n }\n return {\n breadcrumbRemovedFocus: this.breadcrumbRemovedFocus,\n breadcrumbShowLessFocus: this.breadcrumbShowLessFocus,\n breadcrumbShowMoreFocus: this.breadcrumbShowMoreFocus,\n };\n }\n\n private get breadcrumbs() {\n return Array.from(\n this.host.shadowRoot!.querySelectorAll('li.breadcrumb')\n ) as HTMLElement[];\n }\n\n private hide(element: HTMLElement) {\n element.style.display = 'none';\n }\n\n private show(element: HTMLElement) {\n element.style.display = '';\n }\n\n private showAllBreadcrumbs() {\n this.breadcrumbs.forEach((breadcrumb) => this.show(breadcrumb));\n }\n\n private hideOverflowingBreadcrumbs() {\n let hiddenBreadcrumbs = 0;\n for (\n let i = this.breadcrumbs.length - 1;\n this.isOverflowing && i >= 0;\n i--\n ) {\n this.hide(this.breadcrumbs[i]);\n hiddenBreadcrumbs++;\n }\n this.updateShowMoreValue(hiddenBreadcrumbs);\n }\n\n private updateShowLessDisplay() {\n this.show(this.showLess);\n if (this.showLess.offsetTop === 0) {\n this.hide(this.showLess);\n }\n }\n\n private adaptBreadcrumbs() {\n if (!this.breadcrumbs.length) {\n return;\n }\n this.showAllBreadcrumbs();\n\n if (!this.isCollapsed) {\n this.updateShowLessDisplay();\n return;\n }\n\n this.updateShowMoreValue(this.breadcrumbs.length);\n this.hideOverflowingBreadcrumbs();\n }\n\n private get isOverflowing() {\n const listElement = this.host.shadowRoot!.querySelector('ul');\n if (!listElement) {\n return false;\n }\n return listElement.scrollWidth > listElement.clientWidth;\n }\n\n private updateShowMoreValue(value: number) {\n this.numberOfCollapsedBreadcrumbs = value;\n if (value === 0) {\n this.hide(this.showMore);\n return;\n }\n\n this.show(this.showMore);\n this.showMore.textContent = `+ ${value.toLocaleString(\n this.bindings.i18n.language\n )}`;\n\n this.showMore.setAttribute(\n 'aria-label',\n this.bindings.i18n.t('show-n-more-filters', {\n value,\n })\n );\n }\n\n private get facetBreadcrumbs(): BreadboxBreadcrumb[] {\n return this.breadcrumbManagerState.facetBreadcrumbs\n .map(({facetId, field, values}) =>\n values.map((value) => ({value, facetId, field}))\n )\n .flat()\n .filter(({facetId}) => this.bindings.store.state.facets[facetId])\n .map(({value, facetId, field}) => ({\n facetId,\n label: this.bindings.store.state.facets[facetId]?.label(),\n state: value.value.state,\n deselect: value.deselect,\n formattedValue: [\n getFieldValueCaption(field, value.value.value, this.bindings.i18n),\n ],\n }));\n }\n\n private get categoryFacetBreadcrumbs(): BreadboxBreadcrumb[] {\n return this.breadcrumbManagerState.categoryFacetBreadcrumbs.map(\n ({facetId, field, path, deselect}) => ({\n facetId,\n label: this.bindings.store.state.categoryFacets[facetId].label(),\n deselect: deselect,\n formattedValue: path.map((pathValue) =>\n getFieldValueCaption(field, pathValue.value, this.bindings.i18n)\n ),\n })\n );\n }\n\n private get numericFacetBreadcrumbs(): BreadboxBreadcrumb[] {\n return this.breadcrumbManagerState.numericFacetBreadcrumbs\n .map(({facetId, field, values}) =>\n values.map((value) => ({value, facetId, field}))\n )\n .flat()\n .map(({value, facetId}) => ({\n facetId,\n label: this.bindings.store.state.numericFacets[facetId].label(),\n state: value.value.state,\n deselect: value.deselect,\n formattedValue: [\n this.bindings.store.state.numericFacets[facetId].format(value.value),\n ],\n content: this.bindings.store.state.numericFacets[facetId].content?.(\n value.value\n ),\n }));\n }\n\n private get dateFacetBreadcrumbs(): BreadboxBreadcrumb[] {\n return this.breadcrumbManagerState.dateFacetBreadcrumbs\n .map(({facetId, field, values}) =>\n values.map((value) => ({value, facetId, field}))\n )\n .flat()\n .map(({value, facetId}) => ({\n facetId,\n label: this.bindings.store.state.dateFacets[facetId].label(),\n state: value.value.state,\n deselect: value.deselect,\n formattedValue: [\n this.bindings.store.state.dateFacets[facetId].format(value.value),\n ],\n }));\n }\n\n private get automaticFacetBreadcrumbs(): BreadboxBreadcrumb[] {\n return this.breadcrumbManagerState.automaticFacetBreadcrumbs\n .flatMap(({facetId, field, label, values}) =>\n values.map((value) => ({value, facetId, field, label}))\n )\n .map(({value, facetId, field, label}) => ({\n facetId,\n state: value.value.state,\n label: label ? label : field,\n deselect: value.deselect,\n formattedValue: [\n getFieldValueCaption(field, value.value.value, this.bindings.i18n),\n ],\n }));\n }\n\n private get allBreadcrumbs(): BreadboxBreadcrumb[] {\n return [\n ...this.facetBreadcrumbs,\n ...this.categoryFacetBreadcrumbs,\n ...this.numericFacetBreadcrumbs,\n ...this.dateFacetBreadcrumbs,\n ...this.automaticFacetBreadcrumbs,\n ];\n }\n\n private renderBreadcrumbs(allBreadcrumbs: BreadboxBreadcrumb[]) {\n const sortedBreadcrumbs = allBreadcrumbs.sort((a, b) => {\n const indexA = this.facetManagerState.facetIds.indexOf(a.facetId);\n const indexB = this.facetManagerState.facetIds.indexOf(b.facetId);\n return indexA - indexB;\n });\n this.numberOfBreadcrumbs = sortedBreadcrumbs.length;\n\n return [\n sortedBreadcrumbs.map((breadcrumb, index) => {\n const isLastBreadcrumb = this.allBreadcrumbs.length === 1;\n return (\n <BreadcrumbButton\n setRef={(ref) => {\n if (this.lastRemovedBreadcrumbIndex === index) {\n this.focusTargets.breadcrumbRemovedFocus.setTarget(ref);\n }\n if (this.firstExpandedBreadcrumbIndex === index) {\n this.focusTargets.breadcrumbShowMoreFocus.setTarget(ref);\n }\n }}\n pathLimit={this.pathLimit}\n breadcrumb={breadcrumb}\n onSelectBreadcrumb={() => {\n if (isLastBreadcrumb) {\n this.bindings.store.state.resultList?.focusOnFirstResultAfterNextSearch();\n } else if (this.numberOfBreadcrumbs > 1) {\n this.focusTargets.breadcrumbRemovedFocus.focusAfterSearch();\n }\n\n this.lastRemovedBreadcrumbIndex = index;\n breadcrumb.deselect();\n }}\n i18n={this.bindings.i18n}\n >\n <BreadcrumbContent\n pathLimit={this.pathLimit}\n isCollapsed={this.isCollapsed}\n i18n={this.bindings.i18n}\n breadcrumb={breadcrumb}\n ></BreadcrumbContent>\n </BreadcrumbButton>\n );\n }),\n ];\n }\n\n public render() {\n const allBreadcrumbs = this.allBreadcrumbs;\n\n if (!allBreadcrumbs.length) {\n return <Hidden></Hidden>;\n }\n\n return (\n <BreadcrumbContainer\n isCollapsed={this.isCollapsed}\n i18n={this.bindings.i18n}\n >\n {this.renderBreadcrumbs(allBreadcrumbs)}\n <BreadcrumbShowMore\n setRef={(el) => {\n this.showMore = el;\n }}\n onShowMore={() => {\n this.firstExpandedBreadcrumbIndex =\n this.numberOfBreadcrumbs - this.numberOfCollapsedBreadcrumbs;\n this.focusTargets.breadcrumbShowMoreFocus.focusOnNextTarget();\n this.isCollapsed = false;\n }}\n isCollapsed={this.isCollapsed}\n i18n={this.bindings.i18n}\n numberOfCollapsedBreadcrumbs={this.numberOfCollapsedBreadcrumbs}\n ></BreadcrumbShowMore>\n <BreadcrumbShowLess\n setRef={(el) => {\n this.showLess = el;\n }}\n onShowLess={() => {\n this.focusTargets.breadcrumbShowLessFocus.focusOnNextTarget();\n this.isCollapsed = true;\n }}\n isCollapsed={this.isCollapsed}\n i18n={this.bindings.i18n}\n ></BreadcrumbShowLess>\n <BreadcrumbClearAll\n setRef={() => {\n const isFocusTarget =\n this.lastRemovedBreadcrumbIndex === this.numberOfBreadcrumbs;\n\n isFocusTarget\n ? this.focusTargets.breadcrumbRemovedFocus.setTarget\n : undefined;\n }}\n onClick={async () => {\n this.breadcrumbManager.deselectAll();\n this.bindings.store.state.resultList?.focusOnFirstResultAfterNextSearch();\n }}\n isCollapsed={this.isCollapsed}\n i18n={this.bindings.i18n}\n ></BreadcrumbClearAll>\n </BreadcrumbContainer>\n );\n }\n\n public componentDidRender() {\n this.adaptBreadcrumbs();\n }\n}\n"],"mappings":"kkBAEA,MAAMA,EAAW,MACjB,MAAMC,EAAY,MAElB,SAASC,EAAUC,EAAgBC,GACjC,GAAID,EAAKE,QAAUD,EAAW,CAC5B,OAAOD,EAAKG,KAAKL,E,CAGnB,GAAIG,IAAc,GAAKD,EAAKE,OAAS,EAAG,CACtC,MAAO,CAACL,EAAUG,EAAKA,EAAKE,OAAS,IAAIC,KAAKL,E,CAGhD,MAAMM,EAAe,CAACJ,EAAK,GAAIH,KAAaG,EAAKK,QAAQJ,EAAY,KACrE,OAAOG,EAAaD,KAAKL,EAC3B,C,SAEgBQ,EAAqBC,GACnC,OAAOC,MAAMC,QAAQF,EAAWG,gBAC5BH,EAAWG,eAAeP,KAAKL,GAC/BS,EAAWG,cACjB,C,SAEgBC,EACdJ,EACAN,GAEA,OAAOO,MAAMC,QAAQF,EAAWG,gBAC5BX,EAAUQ,EAAWG,eAAgBT,GACrCM,EAAWG,cACjB,CCdO,MAAME,EAA+D,CAC1EC,EACAC,KAEA,MAAMC,EAAa,CACjB,OACA,OACA,OACA,eACA,aACA,SAGF,MAAMC,EAAYV,EAAqBO,EAAMN,YAC7C,MAAMU,EAAQN,EAAwBE,EAAMN,WAAYM,EAAMZ,WAC9D,MAAMiB,EAAQ,GAAGL,EAAMN,WAAWY,UAAUH,IAC5C,MAAMI,EAAcP,EAAMN,WAAWc,QAAU,WAE/C,OACEC,EAAA,MAAIC,MAAM,aAAaC,IAAKP,GAC1BK,EAACG,EAAM,CACLC,IAAKb,EAAMc,OACXC,KAAK,oBACLC,MAAOT,EAAc,gBAAkB,qBACvCG,MAAOR,EAAWZ,KAAK,KACvBe,MAAOA,EACPY,UAAWjB,EAAMkB,KAAKC,EACpBZ,EACI,6BACA,6BACJ,CACEH,MAAOC,IAGXe,QAASpB,EAAMqB,oBAEdpB,GAEA,EC5CF,MAAMqB,EAERtB,GAEDS,EAAA,MAAIE,IAAI,aACNF,EAACG,EAAM,CACLC,IAAKb,EAAMc,OACXC,KAAK,QACLC,MAAM,eACNO,KAAMvB,EAAMkB,KAAKC,EAAE,SACnBT,MAAM,iBACNO,UAAWjB,EAAMkB,KAAKC,EAAE,qBACxBC,QAASpB,EAAMoB,WCfhB,MAAMI,EAET,CAACxB,EAAOC,IAERQ,EAAA,OAAKM,KAAK,YAAYL,MAAM,mCAC1BD,EAAA,QAAMM,KAAK,QAAQL,MAAM,8BACtBV,EAAMkB,KAAKC,EAAE,aAAc,CAC1BI,KAAMvB,EAAMkB,KAAKC,EAAE,cAGvBV,EAAA,OAAKM,KAAK,4BAA4BL,MAAM,iBAC1CD,EAAA,MACEM,KAAK,kBACLL,MAAO,cACLV,EAAMyB,YAAc,8BAAgC,eAGrDxB,KCZJ,MAAMyB,EACX1B,IAEA,MAAMI,EAAQN,EAAwBE,EAAMN,WAAYM,EAAMZ,WAC9D,MAAMmB,EAAcP,EAAMN,WAAWc,QAAU,WAC/C,MAAMmB,EAAcpB,EAAc,QAAU,UAC5C,OACEE,EAACmB,EAAQ,KACPnB,EAAA,QACEM,KAAK,mBACLL,MAAO,0CAA0CiB,8BAAwCA,KAAe3B,EAAMN,WAAWc,SAExHR,EAAMkB,KAAKC,EAAE,aAAc,CAACI,KAAMvB,EAAMN,WAAWY,SAEtDG,EAAA,QACEM,KAAK,mBACLL,MAAO,QACLV,EAAMN,WAAWmC,QACb,GACA,yBAAyB7B,EAAMN,WAAWc,WAG/CR,EAAMN,WAAWmC,SAAWzB,GAE/BK,EAAA,eACEM,KAAK,mBACLL,MAAM,yBACNoB,KAAMC,IAEC,EC/BR,MAAMC,EAERhC,IACH,GAAIA,EAAMyB,YAAa,CACrB,M,CAGF,OACEhB,EAAA,MAAIE,IAAI,aACNF,EAACG,EAAM,CACLC,IAAKb,EAAMc,OACXC,KAAK,YACLC,MAAM,kBACNO,KAAMvB,EAAMkB,KAAKC,EAAE,aACnBT,MAAM,iBACNU,QAASpB,EAAMiC,aAEd,EChBF,MAAMC,EAERlC,IACH,IAAKA,EAAMyB,YAAa,CACtB,M,CAEF,OACEhB,EAAA,MAAIE,IAAI,aACNF,EAACG,EAAM,CACLC,IAAKb,EAAMc,OACXC,KAAK,YACLC,MAAM,kBACNN,MAAM,mCACNU,QAASpB,EAAMmC,WACflB,UAAWjB,EAAMkB,KAAKC,EAAE,sBAAuB,CAC7Cf,MAAOJ,EAAMoC,iCAGd,EC9BT,MAAMC,EAAoB,k4jEAC1B,MAAAC,EAAeD,E,iXC8CFE,EAAc,M,yBAMjBC,KAAAC,2BAA6B,EAC7BD,KAAAE,oBAAsB,EACtBF,KAAAJ,6BAA+B,EAatBI,KAAAf,YAAc,KAsBhBe,KAAApD,UAAY,E,6GAtBI,K,eAsBJ,C,CAEpB,UAAAuD,GACLH,KAAKI,gBACLJ,KAAKK,kBAAoBC,EAAuBN,KAAKO,SAASC,QAC9DR,KAAKS,aAAeC,EAAkBV,KAAKO,SAASC,QAEpD,GAAIG,OAAOC,eAAgB,CACzBZ,KAAKa,eAAiB,IAAID,gBAAe,IAAMZ,KAAKc,qBACpDd,KAAKa,eAAeE,QAAQf,KAAKgB,KAAKC,c,EAIlC,aAAAb,GACN,IAAIc,EAAO,CACTtE,UAAW,IAAIuE,EAAY,CACzBC,QAAS,EACTC,IAAK,EACLC,SAAU,UAEXC,SAAS,CACV3E,UAAWoD,KAAKpD,W,CAIb,oBAAA4E,GACLxB,KAAKa,gBAAgBY,Y,CAGvB,gBAAYC,GACV,IAAK1B,KAAK2B,uBAAwB,CAChC3B,KAAK2B,uBAAyB,IAAIC,EAAsB5B,K,CAE1D,IAAKA,KAAK6B,wBAAyB,CACjC7B,KAAK6B,wBAA0B,IAAID,EAAsB5B,K,CAE3D,IAAKA,KAAK8B,wBAAyB,CACjC9B,KAAK8B,wBAA0B,IAAIF,EAAsB5B,K,CAE3D,MAAO,CACL2B,uBAAwB3B,KAAK2B,uBAC7BE,wBAAyB7B,KAAK6B,wBAC9BC,wBAAyB9B,KAAK8B,wB,CAIlC,eAAYC,GACV,OAAO5E,MAAM6E,KACXhC,KAAKgB,KAAKiB,WAAYC,iBAAiB,iB,CAInC,IAAAC,CAAKC,GACXA,EAAQ5D,MAAM6D,QAAU,M,CAGlB,IAAAC,CAAKF,GACXA,EAAQ5D,MAAM6D,QAAU,E,CAGlB,kBAAAE,GACNvC,KAAK+B,YAAYS,SAAStF,GAAe8C,KAAKsC,KAAKpF,I,CAG7C,0BAAAuF,GACN,IAAIC,EAAoB,EACxB,IACE,IAAIC,EAAI3C,KAAK+B,YAAYlF,OAAS,EAClCmD,KAAK4C,eAAiBD,GAAK,EAC3BA,IACA,CACA3C,KAAKmC,KAAKnC,KAAK+B,YAAYY,IAC3BD,G,CAEF1C,KAAK6C,oBAAoBH,E,CAGnB,qBAAAI,GACN9C,KAAKsC,KAAKtC,KAAK+C,UACf,GAAI/C,KAAK+C,SAASC,YAAc,EAAG,CACjChD,KAAKmC,KAAKnC,KAAK+C,S,EAIX,gBAAAjC,GACN,IAAKd,KAAK+B,YAAYlF,OAAQ,CAC5B,M,CAEFmD,KAAKuC,qBAEL,IAAKvC,KAAKf,YAAa,CACrBe,KAAK8C,wBACL,M,CAGF9C,KAAK6C,oBAAoB7C,KAAK+B,YAAYlF,QAC1CmD,KAAKyC,4B,CAGP,iBAAYG,GACV,MAAMK,EAAcjD,KAAKgB,KAAKiB,WAAYiB,cAAc,MACxD,IAAKD,EAAa,CAChB,OAAO,K,CAET,OAAOA,EAAYE,YAAcF,EAAYG,W,CAGvC,mBAAAP,CAAoBjF,GAC1BoC,KAAKJ,6BAA+BhC,EACpC,GAAIA,IAAU,EAAG,CACfoC,KAAKmC,KAAKnC,KAAKqD,UACf,M,CAGFrD,KAAKsC,KAAKtC,KAAKqD,UACfrD,KAAKqD,SAASC,YAAc,KAAK1F,EAAM2F,eACrCvD,KAAKO,SAAS7B,KAAK8E,YAGrBxD,KAAKqD,SAASI,aACZ,aACAzD,KAAKO,SAAS7B,KAAKC,EAAE,sBAAuB,CAC1Cf,U,CAKN,oBAAY8F,GACV,OAAO1D,KAAK2D,uBAAuBD,iBAChCE,KAAI,EAAEC,UAASC,QAAOC,YACrBA,EAAOH,KAAKhG,IAAK,CAAOA,QAAOiG,UAASC,cAEzCE,OACAC,QAAO,EAAEJ,aAAa7D,KAAKO,SAAS2D,MAAMlG,MAAMmG,OAAON,KACvDD,KAAI,EAAEhG,QAAOiG,UAASC,YAAM,CAC3BD,UACA/F,MAAOkC,KAAKO,SAAS2D,MAAMlG,MAAMmG,OAAON,IAAU/F,QAClDE,MAAOJ,EAAMA,MAAMI,MACnBoG,SAAUxG,EAAMwG,SAChB/G,eAAgB,CACdgH,EAAqBP,EAAOlG,EAAMA,MAAMA,MAAOoC,KAAKO,SAAS7B,U,CAKrE,4BAAY4F,GACV,OAAOtE,KAAK2D,uBAAuBW,yBAAyBV,KAC1D,EAAEC,UAASC,QAAOnH,OAAMyH,eAAS,CAC/BP,UACA/F,MAAOkC,KAAKO,SAAS2D,MAAMlG,MAAMuG,eAAeV,GAAS/F,QACzDsG,SAAUA,EACV/G,eAAgBV,EAAKiH,KAAKY,GACxBH,EAAqBP,EAAOU,EAAU5G,MAAOoC,KAAKO,SAAS7B,W,CAMnE,2BAAY+F,GACV,OAAOzE,KAAK2D,uBAAuBc,wBAChCb,KAAI,EAAEC,UAASC,QAAOC,YACrBA,EAAOH,KAAKhG,IAAK,CAAOA,QAAOiG,UAASC,cAEzCE,OACAJ,KAAI,EAAEhG,QAAOiG,cAAQ,CACpBA,UACA/F,MAAOkC,KAAKO,SAAS2D,MAAMlG,MAAM0G,cAAcb,GAAS/F,QACxDE,MAAOJ,EAAMA,MAAMI,MACnBoG,SAAUxG,EAAMwG,SAChB/G,eAAgB,CACd2C,KAAKO,SAAS2D,MAAMlG,MAAM0G,cAAcb,GAASc,OAAO/G,EAAMA,QAEhEyB,QAASW,KAAKO,SAAS2D,MAAMlG,MAAM0G,cAAcb,GAASxE,UACxDzB,EAAMA,U,CAKd,wBAAYgH,GACV,OAAO5E,KAAK2D,uBAAuBiB,qBAChChB,KAAI,EAAEC,UAASC,QAAOC,YACrBA,EAAOH,KAAKhG,IAAK,CAAOA,QAAOiG,UAASC,cAEzCE,OACAJ,KAAI,EAAEhG,QAAOiG,cAAQ,CACpBA,UACA/F,MAAOkC,KAAKO,SAAS2D,MAAMlG,MAAM6G,WAAWhB,GAAS/F,QACrDE,MAAOJ,EAAMA,MAAMI,MACnBoG,SAAUxG,EAAMwG,SAChB/G,eAAgB,CACd2C,KAAKO,SAAS2D,MAAMlG,MAAM6G,WAAWhB,GAASc,OAAO/G,EAAMA,W,CAKnE,6BAAYkH,GACV,OAAO9E,KAAK2D,uBAAuBmB,0BAChCC,SAAQ,EAAElB,UAASC,QAAOhG,QAAOiG,YAChCA,EAAOH,KAAKhG,IAAK,CAAOA,QAAOiG,UAASC,QAAOhG,cAEhD8F,KAAI,EAAEhG,QAAOiG,UAASC,QAAOhG,YAAM,CAClC+F,UACA7F,MAAOJ,EAAMA,MAAMI,MACnBF,MAAOA,EAAQA,EAAQgG,EACvBM,SAAUxG,EAAMwG,SAChB/G,eAAgB,CACdgH,EAAqBP,EAAOlG,EAAMA,MAAMA,MAAOoC,KAAKO,SAAS7B,U,CAKrE,kBAAYsG,GACV,MAAO,IACFhF,KAAK0D,oBACL1D,KAAKsE,4BACLtE,KAAKyE,2BACLzE,KAAK4E,wBACL5E,KAAK8E,0B,CAIJ,iBAAAG,CAAkBD,GACxB,MAAME,EAAoBF,EAAeG,MAAK,CAACC,EAAGC,KAChD,MAAMC,EAAStF,KAAKuF,kBAAkBC,SAASC,QAAQL,EAAEvB,SACzD,MAAM6B,EAAS1F,KAAKuF,kBAAkBC,SAASC,QAAQJ,EAAExB,SACzD,OAAOyB,EAASI,CAAM,IAExB1F,KAAKE,oBAAsBgF,EAAkBrI,OAE7C,MAAO,CACLqI,EAAkBtB,KAAI,CAAC1G,EAAYyI,KACjC,MAAMC,EAAmB5F,KAAKgF,eAAenI,SAAW,EACxD,OACEoB,EAACV,EAAgB,CACfe,OAASD,IACP,GAAI2B,KAAKC,6BAA+B0F,EAAO,CAC7C3F,KAAK0B,aAAaC,uBAAuBkE,UAAUxH,E,CAErD,GAAI2B,KAAK8F,+BAAiCH,EAAO,CAC/C3F,KAAK0B,aAAaI,wBAAwB+D,UAAUxH,E,GAGxDzB,UAAWoD,KAAKpD,UAChBM,WAAYA,EACZ2B,mBAAoB,KAClB,GAAI+G,EAAkB,CACpB5F,KAAKO,SAAS2D,MAAMlG,MAAM+H,YAAYC,mC,MACjC,GAAIhG,KAAKE,oBAAsB,EAAG,CACvCF,KAAK0B,aAAaC,uBAAuBsE,kB,CAG3CjG,KAAKC,2BAA6B0F,EAClCzI,EAAWkH,UAAU,EAEvB1F,KAAMsB,KAAKO,SAAS7B,MAEpBT,EAACiB,EAAiB,CAChBtC,UAAWoD,KAAKpD,UAChBqC,YAAae,KAAKf,YAClBP,KAAMsB,KAAKO,SAAS7B,KACpBxB,WAAYA,IAEG,I,CAMpB,MAAAgJ,GACL,MAAMlB,EAAiBhF,KAAKgF,eAE5B,IAAKA,EAAenI,OAAQ,CAC1B,OAAOoB,EAACkI,EAAM,K,CAGhB,OACElI,EAACe,EAAmB,CAClBC,YAAae,KAAKf,YAClBP,KAAMsB,KAAKO,SAAS7B,MAEnBsB,KAAKiF,kBAAkBD,GACxB/G,EAACyB,EAAkB,CACjBpB,OAAS8H,IACPpG,KAAKqD,SAAW+C,CAAE,EAEpBzG,WAAY,KACVK,KAAK8F,6BACH9F,KAAKE,oBAAsBF,KAAKJ,6BAClCI,KAAK0B,aAAaI,wBAAwBuE,oBAC1CrG,KAAKf,YAAc,KAAK,EAE1BA,YAAae,KAAKf,YAClBP,KAAMsB,KAAKO,SAAS7B,KACpBkB,6BAA8BI,KAAKJ,+BAErC3B,EAACuB,EAAkB,CACjBlB,OAAS8H,IACPpG,KAAK+C,SAAWqD,CAAE,EAEpB3G,WAAY,KACVO,KAAK0B,aAAaG,wBAAwBwE,oBAC1CrG,KAAKf,YAAc,IAAI,EAEzBA,YAAae,KAAKf,YAClBP,KAAMsB,KAAKO,SAAS7B,OAEtBT,EAACa,EAAkB,CACjBR,OAAQ,OAQRM,QAAS0H,UACPtG,KAAKK,kBAAkBkG,cACvBvG,KAAKO,SAAS2D,MAAMlG,MAAM+H,YAAYC,mCAAmC,EAE3E/G,YAAae,KAAKf,YAClBP,KAAMsB,KAAKO,SAAS7B,O,CAMrB,kBAAA8H,GACLxG,KAAKc,kB,6BAjXsB2F,EAAA,CAA5BC,K,+BAeOD,EAAA,CAFPE,EAAsB,sB,6CAKhBF,EAAA,CAFNE,EAAsB,iB","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["Heading","level","htmlProps","children","HeadingTag","h"],"sources":["src/components/common/stencil-heading.tsx"],"sourcesContent":["import {h, FunctionalComponent} from '@stencil/core';\nimport {JSXBase} from '@stencil/core/internal';\nimport {HeadingProps} from './heading';\n\n/**\n * @deprecated Should only be used for Stencil components; for Lit components, use the heading function instead.\n */\nexport const Heading: FunctionalComponent<\n Pick<HeadingProps, 'level'> & JSXBase.HTMLAttributes<HTMLHeadingElement>\n> = ({level, ...htmlProps}, children) => {\n const HeadingTag = level > 0 && level <= 6 ? `h${level}` : 'div';\n return <HeadingTag {...htmlProps}>{children}</HeadingTag>;\n};\n"],"mappings":"0CAOaA,EAET,EAAEC,WAAUC,GAAYC,KAC1B,MAAMC,EAAaH,EAAQ,GAAKA,GAAS,EAAI,IAAIA,IAAU,MAC3D,OAAOI,EAACD,EAAU,IAAKF,GAAYC,EAAsB,S","ignoreList":[]}