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

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 (852) hide show
  1. package/dist/atomic/_atomic.esm.js +1 -1
  2. package/dist/atomic/atomic.esm.js.map +1 -1
  3. package/dist/atomic/components/_index.d.ts +0 -4
  4. package/dist/atomic/components/_index.js +35 -4
  5. package/dist/atomic/components/atomic-category-facet.js +1 -1
  6. package/dist/atomic/components/atomic-citation.js +1 -1
  7. package/dist/atomic/components/atomic-facet-manager.js +1 -1
  8. package/dist/atomic/components/atomic-facet.js +1 -1
  9. package/dist/atomic/components/atomic-folded-result-list.js +1 -2
  10. package/dist/atomic/components/atomic-folded-result-list.js.map +1 -1
  11. package/dist/atomic/components/atomic-format-currency.js +1 -1
  12. package/dist/atomic/components/atomic-format-number.js +1 -1
  13. package/dist/atomic/components/atomic-format-unit.js +1 -1
  14. package/dist/atomic/components/atomic-generated-answer-feedback-modal.js +1 -1
  15. package/dist/atomic/components/atomic-html2.js +1 -1
  16. package/dist/atomic/components/atomic-insight-edit-toggle.js +1 -1
  17. package/dist/atomic/components/atomic-insight-facet.js +1 -1
  18. package/dist/atomic/components/atomic-insight-folded-result-list.js +2 -3
  19. package/dist/atomic/components/atomic-insight-folded-result-list.js.map +1 -1
  20. package/dist/atomic/components/atomic-insight-full-search-button.js +1 -1
  21. package/dist/atomic/components/atomic-insight-history-toggle.js +1 -1
  22. package/dist/atomic/components/atomic-insight-no-results.js +1 -1
  23. package/dist/atomic/components/atomic-insight-numeric-facet.js +1 -1
  24. package/dist/atomic/components/atomic-insight-pager.js +3 -3
  25. package/dist/atomic/components/atomic-insight-query-error.js +1 -1
  26. package/dist/atomic/components/atomic-insight-refine-modal2.js +2 -2
  27. package/dist/atomic/components/atomic-insight-refine-toggle.js +1 -1
  28. package/dist/atomic/components/atomic-insight-result-attach-to-case-indicator.js +1 -1
  29. package/dist/atomic/components/atomic-insight-result-children.js +1 -1
  30. package/dist/atomic/components/atomic-insight-result-list.js +2 -3
  31. package/dist/atomic/components/atomic-insight-result-list.js.map +1 -1
  32. package/dist/atomic/components/atomic-insight-result-quickview-action.js +1 -1
  33. package/dist/atomic/components/atomic-insight-result2.js +1 -1
  34. package/dist/atomic/components/atomic-insight-search-box.js +43 -4
  35. package/dist/atomic/components/atomic-insight-search-box.js.map +1 -1
  36. package/dist/atomic/components/atomic-insight-smart-snippet-feedback-modal2.js +2 -2
  37. package/dist/atomic/components/atomic-insight-tabs.js +1 -1
  38. package/dist/atomic/components/atomic-insight-user-actions-session2.js +1 -1
  39. package/dist/atomic/components/atomic-insight-user-actions-toggle.js +1 -1
  40. package/dist/atomic/components/atomic-ipx-body2.js +2 -2
  41. package/dist/atomic/components/atomic-ipx-button.js +2 -2
  42. package/dist/atomic/components/atomic-ipx-embedded.js +1 -1
  43. package/dist/atomic/components/atomic-ipx-modal.js +2 -2
  44. package/dist/atomic/components/atomic-ipx-recs-list.js +2 -3
  45. package/dist/atomic/components/atomic-ipx-recs-list.js.map +1 -1
  46. package/dist/atomic/components/atomic-ipx-refine-modal2.js +1 -1
  47. package/dist/atomic/components/atomic-ipx-refine-toggle.js +1 -1
  48. package/dist/atomic/components/atomic-ipx-result-link.js +1 -1
  49. package/dist/atomic/components/atomic-ipx-tabs.js +1 -1
  50. package/dist/atomic/components/atomic-load-more-results.js +1 -1
  51. package/dist/atomic/components/atomic-no-results.js +1 -1
  52. package/dist/atomic/components/atomic-numeric-facet.js +1 -1
  53. package/dist/atomic/components/atomic-query-error.js +1 -1
  54. package/dist/atomic/components/atomic-quickview-modal2.js +1 -1
  55. package/dist/atomic/components/atomic-quickview.js +1 -1
  56. package/dist/atomic/components/atomic-recs-error.js +1 -1
  57. package/dist/atomic/components/atomic-recs-interface.js +1 -1
  58. package/dist/atomic/components/atomic-recs-list.js +2 -3
  59. package/dist/atomic/components/atomic-recs-list.js.map +1 -1
  60. package/dist/atomic/components/atomic-refine-modal2.js +1 -1
  61. package/dist/atomic/components/atomic-refine-toggle.js +1 -1
  62. package/dist/atomic/components/atomic-result-children.js +1 -1
  63. package/dist/atomic/components/atomic-result-fields-list.js +1 -1
  64. package/dist/atomic/components/atomic-result-link.js +1 -1
  65. package/dist/atomic/components/atomic-result-list.js +2 -3
  66. package/dist/atomic/components/atomic-result-list.js.map +1 -1
  67. package/dist/atomic/components/atomic-result-placeholder2.js +2 -2
  68. package/dist/atomic/components/atomic-result-table-placeholder2.js +1 -1
  69. package/dist/atomic/components/atomic-search-box.js +4 -10
  70. package/dist/atomic/components/atomic-search-box.js.map +1 -1
  71. package/dist/atomic/components/atomic-smart-snippet-answer2.js +1 -1
  72. package/dist/atomic/components/atomic-smart-snippet-collapse-wrapper2.js +2 -2
  73. package/dist/atomic/components/atomic-smart-snippet-expandable-answer2.js +1 -1
  74. package/dist/atomic/components/atomic-smart-snippet-feedback-modal2.js +2 -2
  75. package/dist/atomic/components/atomic-smart-snippet-source2.js +1 -1
  76. package/dist/atomic/components/atomic-sort-dropdown.js +2 -2
  77. package/dist/atomic/components/atomic-sort-expression.js +1 -1
  78. package/dist/atomic/components/atomic-stencil-facet-date-input.js +3 -3
  79. package/dist/atomic/components/atomic-suggestion-renderer2.js +1 -1
  80. package/dist/atomic/components/atomic-tab-manager.js +1 -1
  81. package/dist/atomic/components/components/common/item-list/item-template-provider.js +28 -0
  82. package/dist/atomic/components/components/common/suggestions/query-suggestions.js +11 -16
  83. package/dist/atomic/components/{atomic-search-box-instant-results.js → components/search/atomic-search-box-instant-results/atomic-search-box-instant-results.js} +81 -94
  84. package/dist/atomic/components/components/search/atomic-search-box-query-suggestions/atomic-search-box-query-suggestions.js +104 -0
  85. package/dist/atomic/components/components/search/index.js +2 -0
  86. package/dist/atomic/components/components/search/lazy-index.js +2 -0
  87. package/dist/atomic/components/facet-number-input.js +2 -2
  88. package/dist/atomic/components/global/environment.js +1 -1
  89. package/dist/atomic/components/index.js.map +1 -1
  90. package/dist/atomic/components/item-template-provider.js +27 -1
  91. package/dist/atomic/components/item-template-provider.js.map +1 -1
  92. package/dist/atomic/components/show-hide-button.js +1 -1
  93. package/dist/atomic/components/stencil-button.js +44 -2
  94. package/dist/atomic/components/stencil-button.js.map +1 -1
  95. package/dist/atomic/components/stencil-radio-button.js +1 -2
  96. package/dist/atomic/components/stencil-radio-button.js.map +1 -1
  97. package/dist/atomic/components/tab-button.js +1 -1
  98. package/dist/atomic/components/tab-popover.js +1 -1
  99. package/dist/atomic/index.esm.js +1 -1
  100. package/dist/atomic/index.esm.js.map +1 -1
  101. package/dist/atomic/{p-1d6d0186.entry.js → p-0035e3da.entry.js} +2 -2
  102. package/dist/atomic/p-01eda62a.entry.js +2 -0
  103. package/dist/atomic/{p-5b65473e.entry.js.map → p-01eda62a.entry.js.map} +1 -1
  104. package/dist/atomic/p-02f2ac0b.entry.js +2 -0
  105. package/dist/atomic/{p-e46e05cb.entry.js.map → p-02f2ac0b.entry.js.map} +1 -1
  106. package/dist/atomic/p-066df32a.entry.js +2 -0
  107. package/dist/atomic/{p-86bba9db.entry.js.map → p-066df32a.entry.js.map} +1 -1
  108. package/dist/atomic/p-06bc57be.entry.js +2 -0
  109. package/dist/atomic/{p-cc963c10.entry.js.map → p-06bc57be.entry.js.map} +1 -1
  110. package/dist/atomic/{p-a0ebbbdf.entry.js → p-06c22903.entry.js} +2 -2
  111. package/dist/atomic/{p-f7b4ce31.entry.js → p-0714b56d.entry.js} +2 -2
  112. package/dist/atomic/{p-8b1b1784.entry.js.map → p-0714b56d.entry.js.map} +1 -1
  113. package/dist/atomic/{p-3272a04b.entry.js → p-0fb717b5.entry.js} +2 -2
  114. package/dist/atomic/p-104d7a84.entry.js +2 -0
  115. package/dist/atomic/{p-733a8082.entry.js.map → p-104d7a84.entry.js.map} +1 -1
  116. package/dist/atomic/{p-bc43df67.entry.js → p-118db20a.entry.js} +2 -2
  117. package/dist/atomic/p-1936bfc8.entry.js +2 -0
  118. package/dist/atomic/p-25ee4bab.entry.js +2 -0
  119. package/dist/atomic/{p-039bd7df.entry.js.map → p-25ee4bab.entry.js.map} +1 -1
  120. package/dist/atomic/p-27746cac.entry.js +2 -0
  121. package/dist/atomic/{p-850fa320.entry.js.map → p-27746cac.entry.js.map} +1 -1
  122. package/dist/atomic/p-2c5841a0.js +2 -0
  123. package/dist/atomic/p-2c5841a0.js.map +1 -0
  124. package/dist/atomic/{p-752f4533.entry.js → p-2eac7c46.entry.js} +2 -2
  125. package/dist/atomic/{p-2e9ecdf5.entry.js.map → p-2eac7c46.entry.js.map} +1 -1
  126. package/dist/atomic/{p-21dd38ad.js → p-2f3e40c8.js} +2 -2
  127. package/dist/atomic/p-3282ccf8.entry.js +2 -0
  128. package/dist/atomic/{p-cd021c46.entry.js.map → p-3282ccf8.entry.js.map} +1 -1
  129. package/dist/atomic/p-33b3b967.entry.js +2 -0
  130. package/dist/atomic/{p-12be5e47.entry.js.map → p-33b3b967.entry.js.map} +1 -1
  131. package/dist/atomic/p-37182242.entry.js +2 -0
  132. package/dist/atomic/{p-7afa3c6a.entry.js.map → p-37182242.entry.js.map} +1 -1
  133. package/dist/atomic/p-3becda0c.entry.js +2 -0
  134. package/dist/atomic/{p-b0a20358.entry.js.map → p-3becda0c.entry.js.map} +1 -1
  135. package/dist/atomic/{p-6819f12c.entry.js → p-3f3f6b14.entry.js} +2 -2
  136. package/dist/atomic/p-4206b797.entry.js +2 -0
  137. package/dist/atomic/{p-32544f8a.entry.js.map → p-4206b797.entry.js.map} +1 -1
  138. package/dist/atomic/p-458697db.entry.js +2 -0
  139. package/dist/atomic/{p-390deb3d.entry.js.map → p-458697db.entry.js.map} +1 -1
  140. package/dist/atomic/p-4778132c.entry.js +2 -0
  141. package/dist/atomic/{p-b0f6a52e.entry.js.map → p-4778132c.entry.js.map} +1 -1
  142. package/dist/atomic/p-4bc0dc09.entry.js +2 -0
  143. package/dist/atomic/{p-c52c9e67.entry.js.map → p-4bc0dc09.entry.js.map} +1 -1
  144. package/dist/atomic/{p-4a73e01b.js → p-4c85b2fb.js} +2 -2
  145. package/dist/atomic/{p-baebeae3.js → p-4dfa349e.js} +2 -2
  146. package/dist/atomic/{p-039bd7df.entry.js → p-530396d4.entry.js} +2 -2
  147. package/dist/atomic/{p-9c97d77d.entry.js.map → p-530396d4.entry.js.map} +1 -1
  148. package/dist/atomic/{p-044de1f9.entry.js → p-534aa5f7.entry.js} +2 -2
  149. package/dist/atomic/p-582ce205.entry.js +2 -0
  150. package/dist/atomic/{p-5a644e15.entry.js.map → p-582ce205.entry.js.map} +1 -1
  151. package/dist/atomic/p-5d36515f.entry.js +2 -0
  152. package/dist/atomic/{p-951bdd73.entry.js.map → p-5d36515f.entry.js.map} +1 -1
  153. package/dist/atomic/p-5dbe3b4c.entry.js +2 -0
  154. package/dist/atomic/{p-99d0c865.entry.js.map → p-5dbe3b4c.entry.js.map} +1 -1
  155. package/dist/atomic/{p-4651cceb.js → p-5e5599f3.js} +2 -2
  156. package/dist/atomic/p-5eaee0be.entry.js +2 -0
  157. package/dist/atomic/{p-6d323b9a.entry.js.map → p-5eaee0be.entry.js.map} +1 -1
  158. package/dist/atomic/{p-f65ca329.entry.js → p-609d0550.entry.js} +2 -2
  159. package/dist/atomic/{p-1f903f31.entry.js → p-6489c611.entry.js} +2 -2
  160. package/dist/atomic/{p-3b632123.entry.js.map → p-6489c611.entry.js.map} +1 -1
  161. package/dist/atomic/p-66beb63a.entry.js +2 -0
  162. package/dist/atomic/{p-74380cbc.entry.js.map → p-66beb63a.entry.js.map} +1 -1
  163. package/dist/atomic/{p-e2fdbbd9.js → p-67b314f4.js} +2 -2
  164. package/dist/atomic/p-690cb10f.entry.js +2 -0
  165. package/dist/atomic/{p-c51d050f.entry.js.map → p-690cb10f.entry.js.map} +1 -1
  166. package/dist/atomic/p-6ca16a70.entry.js +2 -0
  167. package/dist/atomic/{p-d5f4597b.entry.js.map → p-6ca16a70.entry.js.map} +1 -1
  168. package/dist/atomic/p-6da5e67e.entry.js +2 -0
  169. package/dist/atomic/{p-9d492524.entry.js.map → p-6da5e67e.entry.js.map} +1 -1
  170. package/dist/atomic/p-6f93d6d6.entry.js +2 -0
  171. package/dist/atomic/{p-43fc38fb.entry.js.map → p-6f93d6d6.entry.js.map} +1 -1
  172. package/dist/atomic/p-72bdaa9d.js +2 -0
  173. package/dist/atomic/{p-9ce62a67.js.map → p-72bdaa9d.js.map} +1 -1
  174. package/dist/atomic/{p-f3eaea67.entry.js → p-72cdb9d8.entry.js} +2 -2
  175. package/dist/atomic/{p-953fe202.entry.js.map → p-72cdb9d8.entry.js.map} +1 -1
  176. package/dist/atomic/p-798598a4.entry.js +2 -0
  177. package/dist/atomic/{p-2ab385b8.entry.js.map → p-798598a4.entry.js.map} +1 -1
  178. package/dist/atomic/{p-b58c1424.js → p-7bc6b014.js} +2 -2
  179. package/dist/atomic/p-7bf809eb.entry.js +2 -0
  180. package/dist/atomic/p-7d639646.js +2 -0
  181. package/dist/atomic/{p-b72d3af6.entry.js → p-80e51963.entry.js} +2 -2
  182. package/dist/atomic/{p-5e6ff8f8.entry.js → p-81b00c43.entry.js} +2 -2
  183. package/dist/atomic/p-847cdfd5.entry.js +2 -0
  184. package/dist/atomic/{p-f7b4ce31.entry.js.map → p-847cdfd5.entry.js.map} +1 -1
  185. package/dist/atomic/{p-e809b959.entry.js → p-84ac45b4.entry.js} +2 -2
  186. package/dist/atomic/{p-7b8607e0.entry.js.map → p-84ac45b4.entry.js.map} +1 -1
  187. package/dist/atomic/{p-52663c66.entry.js → p-875eb57b.entry.js} +2 -2
  188. package/dist/atomic/{p-43fc38fb.entry.js → p-87eafe2f.entry.js} +2 -2
  189. package/dist/atomic/p-87eafe2f.entry.js.map +1 -0
  190. package/dist/atomic/p-895da76b.entry.js +2 -0
  191. package/dist/atomic/{p-84a6ee68.entry.js.map → p-895da76b.entry.js.map} +1 -1
  192. package/dist/atomic/{p-44d96103.entry.js → p-8d1f7884.entry.js} +2 -2
  193. package/dist/atomic/p-8d63a0c4.entry.js +2 -0
  194. package/dist/atomic/{p-06463927.entry.js.map → p-8d63a0c4.entry.js.map} +1 -1
  195. package/dist/atomic/{p-d8caa4d8.entry.js → p-90ace4cd.entry.js} +2 -2
  196. package/dist/atomic/p-91260e2b.entry.js +2 -0
  197. package/dist/atomic/{p-030c0435.entry.js.map → p-91260e2b.entry.js.map} +1 -1
  198. package/dist/atomic/p-9389337e.entry.js +2 -0
  199. package/dist/atomic/{p-13ac0c72.entry.js.map → p-9389337e.entry.js.map} +1 -1
  200. package/dist/atomic/p-9392b7da.entry.js +2 -0
  201. package/dist/atomic/{p-e1052201.entry.js.map → p-9392b7da.entry.js.map} +1 -1
  202. package/dist/atomic/p-98790c52.entry.js +2 -0
  203. package/dist/atomic/{p-15697c4b.entry.js.map → p-98790c52.entry.js.map} +1 -1
  204. package/dist/atomic/p-98c7ae7f.entry.js +2 -0
  205. package/dist/atomic/{p-f25c9582.entry.js.map → p-98c7ae7f.entry.js.map} +1 -1
  206. package/dist/atomic/{p-3291adda.entry.js → p-9c556664.entry.js} +2 -2
  207. package/dist/atomic/{p-24bb7b3d.entry.js → p-9f01593d.entry.js} +2 -2
  208. package/dist/atomic/{p-dbfd92ab.entry.js → p-a48ae7ab.entry.js} +2 -2
  209. package/dist/atomic/{p-f56b1fd6.js → p-a8c6b43b.js} +2 -2
  210. package/dist/atomic/p-a9016629.entry.js +2 -0
  211. package/dist/atomic/{p-d944704c.entry.js.map → p-a9016629.entry.js.map} +1 -1
  212. package/dist/atomic/p-a9d9e80e.js +2 -0
  213. package/dist/atomic/{p-40345c70.js → p-aa290a01.js} +2 -2
  214. package/dist/atomic/p-ab3da44d.entry.js +2 -0
  215. package/dist/atomic/{p-7c87512d.entry.js.map → p-ab3da44d.entry.js.map} +1 -1
  216. package/dist/atomic/p-acd72087.entry.js +2 -0
  217. package/dist/atomic/{p-e809b959.entry.js.map → p-acd72087.entry.js.map} +1 -1
  218. package/dist/atomic/p-ae071697.entry.js +2 -0
  219. package/dist/atomic/{p-443f3422.entry.js.map → p-ae071697.entry.js.map} +1 -1
  220. package/dist/atomic/{p-ee19b388.entry.js → p-ae346172.entry.js} +2 -2
  221. package/dist/atomic/{p-93b392fa.entry.js.map → p-ae346172.entry.js.map} +1 -1
  222. package/dist/atomic/p-b93c93f7.entry.js +2 -0
  223. package/dist/atomic/{p-ee19b388.entry.js.map → p-b93c93f7.entry.js.map} +1 -1
  224. package/dist/atomic/{p-64dfda2d.js → p-b93d0580.js} +2 -2
  225. package/dist/atomic/p-bb0e0b5d.entry.js +2 -0
  226. package/dist/atomic/{p-3e1b3a6d.entry.js.map → p-bb0e0b5d.entry.js.map} +1 -1
  227. package/dist/atomic/p-c45361ac.entry.js +2 -0
  228. package/dist/atomic/{p-ff263c5e.entry.js.map → p-c45361ac.entry.js.map} +1 -1
  229. package/dist/atomic/{p-c51d050f.entry.js → p-c82dd1aa.entry.js} +2 -2
  230. package/dist/atomic/{p-bef3a536.entry.js.map → p-c82dd1aa.entry.js.map} +1 -1
  231. package/dist/atomic/{p-efd33bd9.js → p-cbbc91ef.js} +2 -2
  232. package/dist/atomic/{p-cee86cff.entry.js → p-cbec8d32.entry.js} +2 -2
  233. package/dist/atomic/{p-bef3a536.entry.js → p-cd047d6d.entry.js} +2 -2
  234. package/dist/atomic/{p-5d4e9821.entry.js.map → p-cd047d6d.entry.js.map} +1 -1
  235. package/dist/atomic/{p-aa0139e0.js → p-cdfcb38c.js} +2 -2
  236. package/dist/atomic/p-ceca3fb8.entry.js +2 -0
  237. package/dist/atomic/{p-fdaf9f6c.entry.js.map → p-ceca3fb8.entry.js.map} +1 -1
  238. package/dist/atomic/{p-06463927.entry.js → p-cf0a69e5.entry.js} +2 -2
  239. package/dist/atomic/{p-752f4533.entry.js.map → p-cf0a69e5.entry.js.map} +1 -1
  240. package/dist/atomic/p-d0937472.entry.js +2 -0
  241. package/dist/atomic/{p-99bb5042.entry.js.map → p-d0937472.entry.js.map} +1 -1
  242. package/dist/atomic/{p-229018fa.entry.js → p-d1fbb20a.entry.js} +2 -2
  243. package/dist/atomic/p-d3d0ac7c.entry.js +2 -0
  244. package/dist/atomic/{p-52878b95.entry.js.map → p-d3d0ac7c.entry.js.map} +1 -1
  245. package/dist/atomic/p-d6bc0fb4.entry.js +2 -0
  246. package/dist/atomic/{p-c1cd0a45.entry.js.map → p-d6bc0fb4.entry.js.map} +1 -1
  247. package/dist/atomic/{p-ddfbc97a.js → p-d7f0c2c5.js} +2 -2
  248. package/dist/atomic/{p-1c8bcadf.entry.js → p-d8d346f3.entry.js} +2 -2
  249. package/dist/atomic/{p-26e0c1f8.entry.js → p-dbc08e9e.entry.js} +2 -2
  250. package/dist/atomic/{p-bca5b379.js → p-dc8c49c8.js} +2 -2
  251. package/dist/atomic/{p-f0e695ab.js → p-dda4be4d.js} +2 -2
  252. package/dist/atomic/p-de53197d.js +2 -0
  253. package/dist/atomic/p-de53197d.js.map +1 -0
  254. package/dist/atomic/p-e0d103ba.entry.js +2 -0
  255. package/dist/atomic/{p-cd4394fe.entry.js.map → p-e0d103ba.entry.js.map} +1 -1
  256. package/dist/atomic/{p-9b447b7d.js → p-e49423b4.js} +2 -2
  257. package/dist/atomic/p-e62caa78.entry.js +2 -0
  258. package/dist/atomic/{p-fdd6264f.entry.js.map → p-e62caa78.entry.js.map} +1 -1
  259. package/dist/atomic/{p-254846bb.js → p-e6f167c9.js} +2 -2
  260. package/dist/atomic/p-e8180b21.entry.js +2 -0
  261. package/dist/atomic/{p-8aec7860.js → p-e9feab84.js} +2 -2
  262. package/dist/atomic/{p-b0a20358.entry.js → p-f04c86b4.entry.js} +2 -2
  263. package/dist/atomic/{p-bf0a780e.entry.js.map → p-f04c86b4.entry.js.map} +1 -1
  264. package/dist/atomic/p-f0e60a0c.entry.js +2 -0
  265. package/dist/atomic/{p-c0491e26.entry.js.map → p-f0e60a0c.entry.js.map} +1 -1
  266. package/dist/atomic/p-f12325cc.entry.js +2 -0
  267. package/dist/atomic/{p-1f903f31.entry.js.map → p-f12325cc.entry.js.map} +1 -1
  268. package/dist/atomic/{p-ed413091.entry.js → p-f44e1bd3.entry.js} +2 -2
  269. package/dist/atomic/{p-c1cd0a45.entry.js → p-f5a0fdc8.entry.js} +2 -2
  270. package/dist/atomic/{p-eca826bd.entry.js.map → p-f5a0fdc8.entry.js.map} +1 -1
  271. package/dist/atomic/{p-2e13e2c0.entry.js → p-f654697b.entry.js} +2 -2
  272. package/dist/atomic/p-fa83768b.entry.js +2 -0
  273. package/dist/atomic/{p-bfb2e085.entry.js.map → p-fa83768b.entry.js.map} +1 -1
  274. package/dist/atomic/{p-c5bd7f8d.entry.js → p-fb5598e9.entry.js} +2 -2
  275. package/dist/atomic/p-fd7a8926.entry.js +2 -0
  276. package/dist/atomic/{p-498771d3.entry.js.map → p-fd7a8926.entry.js.map} +1 -1
  277. package/dist/atomic/{p-c52c9e67.entry.js → p-ff23598b.entry.js} +2 -2
  278. package/dist/atomic/{p-f8f80cbe.entry.js.map → p-ff23598b.entry.js.map} +1 -1
  279. package/dist/cjs/_index.cjs.js +35 -2
  280. package/dist/cjs/_loader.cjs.js +1 -1
  281. package/dist/cjs/atomic-automatic-facet_2.cjs.entry.js +3 -4
  282. package/dist/cjs/atomic-automatic-facet_2.cjs.entry.js.map +1 -1
  283. package/dist/cjs/atomic-breadbox.cjs.entry.js +1 -2
  284. package/dist/cjs/atomic-breadbox.cjs.entry.js.map +1 -1
  285. package/dist/cjs/atomic-category-facet.cjs.entry.js +6 -7
  286. package/dist/cjs/atomic-category-facet.cjs.entry.js.map +1 -1
  287. package/dist/cjs/atomic-citation.cjs.entry.js +1 -1
  288. package/dist/cjs/atomic-color-facet.cjs.entry.js +5 -6
  289. package/dist/cjs/atomic-color-facet.cjs.entry.js.map +1 -1
  290. package/dist/cjs/atomic-facet-manager.cjs.entry.js +1 -1
  291. package/dist/cjs/atomic-facet-number-input.cjs.entry.js +3 -4
  292. package/dist/cjs/atomic-facet-number-input.cjs.entry.js.map +1 -1
  293. package/dist/cjs/atomic-facet.cjs.entry.js +9 -10
  294. package/dist/cjs/atomic-facet.cjs.entry.js.map +1 -1
  295. package/dist/cjs/atomic-folded-result-list.cjs.entry.js +2 -3
  296. package/dist/cjs/atomic-folded-result-list.cjs.entry.js.map +1 -1
  297. package/dist/cjs/atomic-format-currency.cjs.entry.js +1 -1
  298. package/dist/cjs/atomic-format-number.cjs.entry.js +1 -1
  299. package/dist/cjs/atomic-format-unit.cjs.entry.js +1 -1
  300. package/dist/cjs/atomic-generated-answer-feedback-modal.cjs.entry.js +4 -5
  301. package/dist/cjs/atomic-generated-answer-feedback-modal.cjs.entry.js.map +1 -1
  302. package/dist/cjs/atomic-generated-answer.cjs.entry.js +2 -3
  303. package/dist/cjs/atomic-generated-answer.cjs.entry.js.map +1 -1
  304. package/dist/cjs/atomic-html.cjs.entry.js +1 -1
  305. package/dist/cjs/atomic-insight-edit-toggle.cjs.entry.js +3 -4
  306. package/dist/cjs/atomic-insight-edit-toggle.cjs.entry.js.map +1 -1
  307. package/dist/cjs/atomic-insight-facet.cjs.entry.js +8 -9
  308. package/dist/cjs/atomic-insight-facet.cjs.entry.js.map +1 -1
  309. package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js +2 -3
  310. package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js.map +1 -1
  311. package/dist/cjs/atomic-insight-full-search-button.cjs.entry.js +3 -4
  312. package/dist/cjs/atomic-insight-full-search-button.cjs.entry.js.map +1 -1
  313. package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js +2 -3
  314. package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js.map +1 -1
  315. package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js +3 -4
  316. package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js.map +1 -1
  317. package/dist/cjs/atomic-insight-no-results.cjs.entry.js +1 -1
  318. package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js +6 -7
  319. package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js.map +1 -1
  320. package/dist/cjs/atomic-insight-pager.cjs.entry.js +5 -6
  321. package/dist/cjs/atomic-insight-pager.cjs.entry.js.map +1 -1
  322. package/dist/cjs/atomic-insight-query-error.cjs.entry.js +3 -4
  323. package/dist/cjs/atomic-insight-query-error.cjs.entry.js.map +1 -1
  324. package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js +4 -5
  325. package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js.map +1 -1
  326. package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js +3 -4
  327. package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js.map +1 -1
  328. package/dist/cjs/atomic-insight-result-action.cjs.entry.js +2 -3
  329. package/dist/cjs/atomic-insight-result-action.cjs.entry.js.map +1 -1
  330. package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js +2 -3
  331. package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js.map +1 -1
  332. package/dist/cjs/atomic-insight-result-attach-to-case-indicator.cjs.entry.js +1 -1
  333. package/dist/cjs/atomic-insight-result-children.cjs.entry.js +4 -6
  334. package/dist/cjs/atomic-insight-result-children.cjs.entry.js.map +1 -1
  335. package/dist/cjs/atomic-insight-result-list.cjs.entry.js +2 -3
  336. package/dist/cjs/atomic-insight-result-list.cjs.entry.js.map +1 -1
  337. package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js +3 -4
  338. package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js.map +1 -1
  339. package/dist/cjs/atomic-insight-result.cjs.entry.js +1 -1
  340. package/dist/cjs/atomic-insight-search-box.cjs.entry.js +46 -9
  341. package/dist/cjs/atomic-insight-search-box.cjs.entry.js.map +1 -1
  342. package/dist/cjs/atomic-insight-smart-snippet-feedback-modal.cjs.entry.js +4 -5
  343. package/dist/cjs/atomic-insight-smart-snippet-feedback-modal.cjs.entry.js.map +1 -1
  344. package/dist/cjs/atomic-insight-smart-snippet-suggestions.cjs.entry.js +2 -3
  345. package/dist/cjs/atomic-insight-smart-snippet-suggestions.cjs.entry.js.map +1 -1
  346. package/dist/cjs/atomic-insight-smart-snippet.cjs.entry.js +3 -4
  347. package/dist/cjs/atomic-insight-smart-snippet.cjs.entry.js.map +1 -1
  348. package/dist/cjs/atomic-insight-tab.cjs.entry.js +1 -2
  349. package/dist/cjs/atomic-insight-tab.cjs.entry.js.map +1 -1
  350. package/dist/cjs/atomic-insight-tabs.cjs.entry.js +1 -1
  351. package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js +4 -5
  352. package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js.map +1 -1
  353. package/dist/cjs/atomic-insight-user-actions-modal.cjs.entry.js +1 -2
  354. package/dist/cjs/atomic-insight-user-actions-modal.cjs.entry.js.map +1 -1
  355. package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js +2 -3
  356. package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js.map +1 -1
  357. package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js +3 -4
  358. package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js.map +1 -1
  359. package/dist/cjs/atomic-ipx-body.cjs.entry.js +2 -2
  360. package/dist/cjs/atomic-ipx-button.cjs.entry.js +3 -4
  361. package/dist/cjs/atomic-ipx-button.cjs.entry.js.map +1 -1
  362. package/dist/cjs/atomic-ipx-embedded.cjs.entry.js +1 -1
  363. package/dist/cjs/atomic-ipx-modal.cjs.entry.js +2 -2
  364. package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +5 -7
  365. package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js.map +1 -1
  366. package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js +3 -4
  367. package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js.map +1 -1
  368. package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js +3 -4
  369. package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js.map +1 -1
  370. package/dist/cjs/atomic-ipx-result-link.cjs.entry.js +1 -1
  371. package/dist/cjs/atomic-ipx-tab.cjs.entry.js +1 -2
  372. package/dist/cjs/atomic-ipx-tab.cjs.entry.js.map +1 -1
  373. package/dist/cjs/atomic-ipx-tabs.cjs.entry.js +1 -1
  374. package/dist/cjs/atomic-load-more-results.cjs.entry.js +2 -3
  375. package/dist/cjs/atomic-load-more-results.cjs.entry.js.map +1 -1
  376. package/dist/cjs/atomic-no-results.cjs.entry.js +2 -3
  377. package/dist/cjs/atomic-no-results.cjs.entry.js.map +1 -1
  378. package/dist/cjs/atomic-numeric-facet.cjs.entry.js +6 -7
  379. package/dist/cjs/atomic-numeric-facet.cjs.entry.js.map +1 -1
  380. package/dist/cjs/atomic-popover.cjs.entry.js +1 -2
  381. package/dist/cjs/atomic-popover.cjs.entry.js.map +1 -1
  382. package/dist/cjs/atomic-query-error.cjs.entry.js +3 -4
  383. package/dist/cjs/atomic-query-error.cjs.entry.js.map +1 -1
  384. package/dist/cjs/atomic-quickview-modal.cjs.entry.js +3 -4
  385. package/dist/cjs/atomic-quickview-modal.cjs.entry.js.map +1 -1
  386. package/dist/cjs/atomic-quickview.cjs.entry.js +2 -3
  387. package/dist/cjs/atomic-quickview.cjs.entry.js.map +1 -1
  388. package/dist/cjs/atomic-rating-facet.cjs.entry.js +4 -5
  389. package/dist/cjs/atomic-rating-facet.cjs.entry.js.map +1 -1
  390. package/dist/cjs/atomic-rating-range-facet.cjs.entry.js +3 -4
  391. package/dist/cjs/atomic-rating-range-facet.cjs.entry.js.map +1 -1
  392. package/dist/cjs/atomic-recs-error.cjs.entry.js +3 -4
  393. package/dist/cjs/atomic-recs-error.cjs.entry.js.map +1 -1
  394. package/dist/cjs/atomic-recs-interface.cjs.entry.js +1 -1
  395. package/dist/cjs/atomic-recs-list.cjs.entry.js +5 -7
  396. package/dist/cjs/atomic-recs-list.cjs.entry.js.map +1 -1
  397. package/dist/cjs/atomic-refine-modal.cjs.entry.js +3 -4
  398. package/dist/cjs/atomic-refine-modal.cjs.entry.js.map +1 -1
  399. package/dist/cjs/atomic-refine-toggle.cjs.entry.js +2 -3
  400. package/dist/cjs/atomic-refine-toggle.cjs.entry.js.map +1 -1
  401. package/dist/cjs/atomic-result-children.cjs.entry.js +4 -6
  402. package/dist/cjs/atomic-result-children.cjs.entry.js.map +1 -1
  403. package/dist/cjs/atomic-result-fields-list.cjs.entry.js +1 -1
  404. package/dist/cjs/atomic-result-link.cjs.entry.js +1 -1
  405. package/dist/cjs/atomic-result-list.cjs.entry.js +2 -3
  406. package/dist/cjs/atomic-result-list.cjs.entry.js.map +1 -1
  407. package/dist/cjs/atomic-result-placeholder_8.cjs.entry.js +3 -3
  408. package/dist/cjs/atomic-search-box.cjs.entry.js +5 -6
  409. package/dist/cjs/atomic-search-box.cjs.entry.js.map +1 -1
  410. package/dist/cjs/atomic-segmented-facet-scrollable.cjs.entry.js +1 -2
  411. package/dist/cjs/atomic-segmented-facet-scrollable.cjs.entry.js.map +1 -1
  412. package/dist/cjs/atomic-segmented-facet.cjs.entry.js +1 -2
  413. package/dist/cjs/atomic-segmented-facet.cjs.entry.js.map +1 -1
  414. package/dist/cjs/atomic-smart-snippet-answer_2.cjs.entry.js +2 -2
  415. package/dist/cjs/atomic-smart-snippet-collapse-wrapper_2.cjs.entry.js +3 -3
  416. package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js +4 -5
  417. package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js.map +1 -1
  418. package/dist/cjs/atomic-smart-snippet-suggestions.cjs.entry.js +2 -3
  419. package/dist/cjs/atomic-smart-snippet-suggestions.cjs.entry.js.map +1 -1
  420. package/dist/cjs/atomic-smart-snippet.cjs.entry.js +3 -4
  421. package/dist/cjs/atomic-smart-snippet.cjs.entry.js.map +1 -1
  422. package/dist/cjs/atomic-sort-dropdown.cjs.entry.js +2 -2
  423. package/dist/cjs/atomic-sort-expression.cjs.entry.js +1 -1
  424. package/dist/cjs/atomic-stencil-facet-date-input.cjs.entry.js +4 -5
  425. package/dist/cjs/atomic-stencil-facet-date-input.cjs.entry.js.map +1 -1
  426. package/dist/cjs/atomic-suggestion-renderer.cjs.entry.js +1 -1
  427. package/dist/cjs/atomic-tab-bar_2.cjs.entry.js +2 -3
  428. package/dist/cjs/atomic-tab-bar_2.cjs.entry.js.map +1 -1
  429. package/dist/cjs/atomic-tab-button.cjs.entry.js +2 -3
  430. package/dist/cjs/atomic-tab-button.cjs.entry.js.map +1 -1
  431. package/dist/cjs/atomic-tab-manager.cjs.entry.js +1 -1
  432. package/dist/cjs/atomic-timeframe-facet.cjs.entry.js +4 -5
  433. package/dist/cjs/atomic-timeframe-facet.cjs.entry.js.map +1 -1
  434. package/dist/cjs/atomic.cjs.js +1 -1
  435. package/dist/cjs/{facet-placeholder-5beb1e14.js → facet-placeholder-28bdf849.js} +2 -2
  436. package/dist/cjs/{facet-placeholder-5beb1e14.js.map → facet-placeholder-28bdf849.js.map} +1 -1
  437. package/dist/cjs/{generated-answer-common-51e5b253.js → generated-answer-common-0d1fc031.js} +2 -2
  438. package/dist/cjs/{generated-answer-common-51e5b253.js.map → generated-answer-common-0d1fc031.js.map} +1 -1
  439. package/dist/cjs/index-757bc886.js +4 -12
  440. package/dist/cjs/index.cjs.js.map +1 -1
  441. package/dist/cjs/{item-template-provider-470c1774.js → item-template-provider-c639f39c.js} +29 -1
  442. package/dist/cjs/item-template-provider-c639f39c.js.map +1 -0
  443. package/dist/cjs/{show-hide-button-cbf030a3.js → show-hide-button-12eb762b.js} +4 -4
  444. package/dist/cjs/{show-hide-button-cbf030a3.js.map → show-hide-button-12eb762b.js.map} +1 -1
  445. package/dist/cjs/{smart-snippet-common-6a18743b.js → smart-snippet-common-9d247110.js} +3 -3
  446. package/dist/cjs/{smart-snippet-common-6a18743b.js.map → smart-snippet-common-9d247110.js.map} +1 -1
  447. package/dist/cjs/{smart-snippet-feedback-modal-common-6048b7af.js → smart-snippet-feedback-modal-common-43bc6145.js} +2 -2
  448. package/dist/cjs/{smart-snippet-feedback-modal-common-6048b7af.js.map → smart-snippet-feedback-modal-common-43bc6145.js.map} +1 -1
  449. package/dist/cjs/{smart-snippet-suggestions-common-0a7adbfa.js → smart-snippet-suggestions-common-4dba10d1.js} +2 -2
  450. package/dist/cjs/{smart-snippet-suggestions-common-0a7adbfa.js.map → smart-snippet-suggestions-common-4dba10d1.js.map} +1 -1
  451. package/dist/cjs/{stencil-button-62b500e4.js → stencil-button-aa0f9cb5.js} +48 -4
  452. package/dist/cjs/stencil-button-aa0f9cb5.js.map +1 -0
  453. package/dist/cjs/{stencil-carousel-a605d26f.js → stencil-carousel-ecc37fcf.js} +2 -2
  454. package/dist/cjs/{stencil-carousel-a605d26f.js.map → stencil-carousel-ecc37fcf.js.map} +1 -1
  455. package/dist/cjs/{stencil-facet-search-matches-61418287.js → stencil-facet-search-matches-f77a8c78.js} +2 -2
  456. package/dist/cjs/{stencil-facet-search-matches-61418287.js.map → stencil-facet-search-matches-f77a8c78.js.map} +1 -1
  457. package/dist/cjs/{stencil-facet-show-more-less-8da6af80.js → stencil-facet-show-more-less-52a679a0.js} +2 -2
  458. package/dist/cjs/{stencil-facet-show-more-less-8da6af80.js.map → stencil-facet-show-more-less-52a679a0.js.map} +1 -1
  459. package/dist/cjs/{stencil-facet-value-c8a1fe99.js → stencil-facet-value-ad8037c7.js} +4 -4
  460. package/dist/cjs/{stencil-facet-value-c8a1fe99.js.map → stencil-facet-value-ad8037c7.js.map} +1 -1
  461. package/dist/cjs/{stencil-facet-value-box-dc7013fa.js → stencil-facet-value-box-8f6ae2b0.js} +2 -2
  462. package/dist/cjs/{stencil-facet-value-box-dc7013fa.js.map → stencil-facet-value-box-8f6ae2b0.js.map} +1 -1
  463. package/dist/cjs/{stencil-facet-value-checkbox-58251c1b.js → stencil-facet-value-checkbox-58bb59b9.js} +2 -2
  464. package/dist/cjs/{stencil-facet-value-checkbox-58251c1b.js.map → stencil-facet-value-checkbox-58bb59b9.js.map} +1 -1
  465. package/dist/cjs/{stencil-facet-value-link-8587369b.js → stencil-facet-value-link-e24cd431.js} +2 -2
  466. package/dist/cjs/{stencil-facet-value-link-8587369b.js.map → stencil-facet-value-link-e24cd431.js.map} +1 -1
  467. package/dist/cjs/{stencil-iconButton-0f5e02fb.js → stencil-iconButton-12f18eff.js} +2 -2
  468. package/dist/cjs/{stencil-iconButton-0f5e02fb.js.map → stencil-iconButton-12f18eff.js.map} +1 -1
  469. package/dist/cjs/{stencil-link-e392d9fa.js → stencil-link-f9b71cbd.js} +2 -2
  470. package/dist/cjs/{stencil-link-e392d9fa.js.map → stencil-link-f9b71cbd.js.map} +1 -1
  471. package/dist/cjs/{stencil-modal-0c2539a2.js → stencil-modal-c8184bfa.js} +2 -2
  472. package/dist/cjs/{stencil-modal-0c2539a2.js.map → stencil-modal-c8184bfa.js.map} +1 -1
  473. package/dist/cjs/{stencil-radio-button-4f4ddc4d.js → stencil-radio-button-eb67a30a.js} +4 -5
  474. package/dist/cjs/stencil-radio-button-eb67a30a.js.map +1 -0
  475. package/dist/cjs/{stencil-suggestion-manager-df2e5c45.js → stencil-suggestion-manager-83efa596.js} +2 -2
  476. package/dist/cjs/{stencil-suggestion-manager-df2e5c45.js.map → stencil-suggestion-manager-83efa596.js.map} +1 -1
  477. package/dist/cjs/{stencil-values-container-239826f6.js → stencil-values-container-0cf24782.js} +3 -3
  478. package/dist/cjs/{stencil-values-container-239826f6.js.map → stencil-values-container-0cf24782.js.map} +1 -1
  479. package/dist/cjs/{timeframe-facet-common-cbd1b4c6.js → timeframe-facet-common-b08ffe64.js} +3 -3
  480. package/dist/cjs/{timeframe-facet-common-cbd1b4c6.js.map → timeframe-facet-common-b08ffe64.js.map} +1 -1
  481. package/dist/cjs/version.cjs.js +2 -2
  482. package/dist/esm/_index.js +35 -2
  483. package/dist/esm/_loader.js +1 -1
  484. package/dist/esm/atomic-automatic-facet_2.entry.js +3 -4
  485. package/dist/esm/atomic-automatic-facet_2.entry.js.map +1 -1
  486. package/dist/esm/atomic-breadbox.entry.js +1 -2
  487. package/dist/esm/atomic-breadbox.entry.js.map +1 -1
  488. package/dist/esm/atomic-category-facet.entry.js +6 -7
  489. package/dist/esm/atomic-category-facet.entry.js.map +1 -1
  490. package/dist/esm/atomic-citation.entry.js +1 -1
  491. package/dist/esm/atomic-color-facet.entry.js +5 -6
  492. package/dist/esm/atomic-color-facet.entry.js.map +1 -1
  493. package/dist/esm/atomic-facet-manager.entry.js +1 -1
  494. package/dist/esm/atomic-facet-number-input.entry.js +3 -4
  495. package/dist/esm/atomic-facet-number-input.entry.js.map +1 -1
  496. package/dist/esm/atomic-facet.entry.js +9 -10
  497. package/dist/esm/atomic-facet.entry.js.map +1 -1
  498. package/dist/esm/atomic-folded-result-list.entry.js +1 -2
  499. package/dist/esm/atomic-folded-result-list.entry.js.map +1 -1
  500. package/dist/esm/atomic-format-currency.entry.js +1 -1
  501. package/dist/esm/atomic-format-number.entry.js +1 -1
  502. package/dist/esm/atomic-format-unit.entry.js +1 -1
  503. package/dist/esm/atomic-generated-answer-feedback-modal.entry.js +4 -5
  504. package/dist/esm/atomic-generated-answer-feedback-modal.entry.js.map +1 -1
  505. package/dist/esm/atomic-generated-answer.entry.js +2 -3
  506. package/dist/esm/atomic-generated-answer.entry.js.map +1 -1
  507. package/dist/esm/atomic-html.entry.js +1 -1
  508. package/dist/esm/atomic-insight-edit-toggle.entry.js +3 -4
  509. package/dist/esm/atomic-insight-edit-toggle.entry.js.map +1 -1
  510. package/dist/esm/atomic-insight-facet.entry.js +8 -9
  511. package/dist/esm/atomic-insight-facet.entry.js.map +1 -1
  512. package/dist/esm/atomic-insight-folded-result-list.entry.js +2 -3
  513. package/dist/esm/atomic-insight-folded-result-list.entry.js.map +1 -1
  514. package/dist/esm/atomic-insight-full-search-button.entry.js +3 -4
  515. package/dist/esm/atomic-insight-full-search-button.entry.js.map +1 -1
  516. package/dist/esm/atomic-insight-generated-answer.entry.js +2 -3
  517. package/dist/esm/atomic-insight-generated-answer.entry.js.map +1 -1
  518. package/dist/esm/atomic-insight-history-toggle.entry.js +3 -4
  519. package/dist/esm/atomic-insight-history-toggle.entry.js.map +1 -1
  520. package/dist/esm/atomic-insight-no-results.entry.js +1 -1
  521. package/dist/esm/atomic-insight-numeric-facet.entry.js +6 -7
  522. package/dist/esm/atomic-insight-numeric-facet.entry.js.map +1 -1
  523. package/dist/esm/atomic-insight-pager.entry.js +5 -6
  524. package/dist/esm/atomic-insight-pager.entry.js.map +1 -1
  525. package/dist/esm/atomic-insight-query-error.entry.js +3 -4
  526. package/dist/esm/atomic-insight-query-error.entry.js.map +1 -1
  527. package/dist/esm/atomic-insight-refine-modal.entry.js +4 -5
  528. package/dist/esm/atomic-insight-refine-modal.entry.js.map +1 -1
  529. package/dist/esm/atomic-insight-refine-toggle.entry.js +3 -4
  530. package/dist/esm/atomic-insight-refine-toggle.entry.js.map +1 -1
  531. package/dist/esm/atomic-insight-result-action.entry.js +2 -3
  532. package/dist/esm/atomic-insight-result-action.entry.js.map +1 -1
  533. package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js +2 -3
  534. package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js.map +1 -1
  535. package/dist/esm/atomic-insight-result-attach-to-case-indicator.entry.js +1 -1
  536. package/dist/esm/atomic-insight-result-children.entry.js +4 -6
  537. package/dist/esm/atomic-insight-result-children.entry.js.map +1 -1
  538. package/dist/esm/atomic-insight-result-list.entry.js +2 -3
  539. package/dist/esm/atomic-insight-result-list.entry.js.map +1 -1
  540. package/dist/esm/atomic-insight-result-quickview-action.entry.js +3 -4
  541. package/dist/esm/atomic-insight-result-quickview-action.entry.js.map +1 -1
  542. package/dist/esm/atomic-insight-result.entry.js +1 -1
  543. package/dist/esm/atomic-insight-search-box.entry.js +45 -8
  544. package/dist/esm/atomic-insight-search-box.entry.js.map +1 -1
  545. package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js +4 -5
  546. package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js.map +1 -1
  547. package/dist/esm/atomic-insight-smart-snippet-suggestions.entry.js +2 -3
  548. package/dist/esm/atomic-insight-smart-snippet-suggestions.entry.js.map +1 -1
  549. package/dist/esm/atomic-insight-smart-snippet.entry.js +3 -4
  550. package/dist/esm/atomic-insight-smart-snippet.entry.js.map +1 -1
  551. package/dist/esm/atomic-insight-tab.entry.js +1 -2
  552. package/dist/esm/atomic-insight-tab.entry.js.map +1 -1
  553. package/dist/esm/atomic-insight-tabs.entry.js +1 -1
  554. package/dist/esm/atomic-insight-timeframe-facet.entry.js +4 -5
  555. package/dist/esm/atomic-insight-timeframe-facet.entry.js.map +1 -1
  556. package/dist/esm/atomic-insight-user-actions-modal.entry.js +1 -2
  557. package/dist/esm/atomic-insight-user-actions-modal.entry.js.map +1 -1
  558. package/dist/esm/atomic-insight-user-actions-session_2.entry.js +2 -3
  559. package/dist/esm/atomic-insight-user-actions-session_2.entry.js.map +1 -1
  560. package/dist/esm/atomic-insight-user-actions-toggle.entry.js +3 -4
  561. package/dist/esm/atomic-insight-user-actions-toggle.entry.js.map +1 -1
  562. package/dist/esm/atomic-ipx-body.entry.js +2 -2
  563. package/dist/esm/atomic-ipx-button.entry.js +3 -4
  564. package/dist/esm/atomic-ipx-button.entry.js.map +1 -1
  565. package/dist/esm/atomic-ipx-embedded.entry.js +1 -1
  566. package/dist/esm/atomic-ipx-modal.entry.js +2 -2
  567. package/dist/esm/atomic-ipx-recs-list.entry.js +4 -6
  568. package/dist/esm/atomic-ipx-recs-list.entry.js.map +1 -1
  569. package/dist/esm/atomic-ipx-refine-modal.entry.js +3 -4
  570. package/dist/esm/atomic-ipx-refine-modal.entry.js.map +1 -1
  571. package/dist/esm/atomic-ipx-refine-toggle.entry.js +3 -4
  572. package/dist/esm/atomic-ipx-refine-toggle.entry.js.map +1 -1
  573. package/dist/esm/atomic-ipx-result-link.entry.js +1 -1
  574. package/dist/esm/atomic-ipx-tab.entry.js +1 -2
  575. package/dist/esm/atomic-ipx-tab.entry.js.map +1 -1
  576. package/dist/esm/atomic-ipx-tabs.entry.js +1 -1
  577. package/dist/esm/atomic-load-more-results.entry.js +2 -3
  578. package/dist/esm/atomic-load-more-results.entry.js.map +1 -1
  579. package/dist/esm/atomic-no-results.entry.js +2 -3
  580. package/dist/esm/atomic-no-results.entry.js.map +1 -1
  581. package/dist/esm/atomic-numeric-facet.entry.js +6 -7
  582. package/dist/esm/atomic-numeric-facet.entry.js.map +1 -1
  583. package/dist/esm/atomic-popover.entry.js +1 -2
  584. package/dist/esm/atomic-popover.entry.js.map +1 -1
  585. package/dist/esm/atomic-query-error.entry.js +3 -4
  586. package/dist/esm/atomic-query-error.entry.js.map +1 -1
  587. package/dist/esm/atomic-quickview-modal.entry.js +3 -4
  588. package/dist/esm/atomic-quickview-modal.entry.js.map +1 -1
  589. package/dist/esm/atomic-quickview.entry.js +2 -3
  590. package/dist/esm/atomic-quickview.entry.js.map +1 -1
  591. package/dist/esm/atomic-rating-facet.entry.js +4 -5
  592. package/dist/esm/atomic-rating-facet.entry.js.map +1 -1
  593. package/dist/esm/atomic-rating-range-facet.entry.js +3 -4
  594. package/dist/esm/atomic-rating-range-facet.entry.js.map +1 -1
  595. package/dist/esm/atomic-recs-error.entry.js +3 -4
  596. package/dist/esm/atomic-recs-error.entry.js.map +1 -1
  597. package/dist/esm/atomic-recs-interface.entry.js +1 -1
  598. package/dist/esm/atomic-recs-list.entry.js +4 -6
  599. package/dist/esm/atomic-recs-list.entry.js.map +1 -1
  600. package/dist/esm/atomic-refine-modal.entry.js +3 -4
  601. package/dist/esm/atomic-refine-modal.entry.js.map +1 -1
  602. package/dist/esm/atomic-refine-toggle.entry.js +2 -3
  603. package/dist/esm/atomic-refine-toggle.entry.js.map +1 -1
  604. package/dist/esm/atomic-result-children.entry.js +4 -6
  605. package/dist/esm/atomic-result-children.entry.js.map +1 -1
  606. package/dist/esm/atomic-result-fields-list.entry.js +1 -1
  607. package/dist/esm/atomic-result-link.entry.js +1 -1
  608. package/dist/esm/atomic-result-list.entry.js +2 -3
  609. package/dist/esm/atomic-result-list.entry.js.map +1 -1
  610. package/dist/esm/atomic-result-placeholder_8.entry.js +3 -3
  611. package/dist/esm/atomic-search-box.entry.js +5 -6
  612. package/dist/esm/atomic-search-box.entry.js.map +1 -1
  613. package/dist/esm/atomic-segmented-facet-scrollable.entry.js +1 -2
  614. package/dist/esm/atomic-segmented-facet-scrollable.entry.js.map +1 -1
  615. package/dist/esm/atomic-segmented-facet.entry.js +1 -2
  616. package/dist/esm/atomic-segmented-facet.entry.js.map +1 -1
  617. package/dist/esm/atomic-smart-snippet-answer_2.entry.js +2 -2
  618. package/dist/esm/atomic-smart-snippet-collapse-wrapper_2.entry.js +3 -3
  619. package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js +4 -5
  620. package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js.map +1 -1
  621. package/dist/esm/atomic-smart-snippet-suggestions.entry.js +2 -3
  622. package/dist/esm/atomic-smart-snippet-suggestions.entry.js.map +1 -1
  623. package/dist/esm/atomic-smart-snippet.entry.js +3 -4
  624. package/dist/esm/atomic-smart-snippet.entry.js.map +1 -1
  625. package/dist/esm/atomic-sort-dropdown.entry.js +2 -2
  626. package/dist/esm/atomic-sort-expression.entry.js +1 -1
  627. package/dist/esm/atomic-stencil-facet-date-input.entry.js +4 -5
  628. package/dist/esm/atomic-stencil-facet-date-input.entry.js.map +1 -1
  629. package/dist/esm/atomic-suggestion-renderer.entry.js +1 -1
  630. package/dist/esm/atomic-tab-bar_2.entry.js +2 -3
  631. package/dist/esm/atomic-tab-bar_2.entry.js.map +1 -1
  632. package/dist/esm/atomic-tab-button.entry.js +2 -3
  633. package/dist/esm/atomic-tab-button.entry.js.map +1 -1
  634. package/dist/esm/atomic-tab-manager.entry.js +1 -1
  635. package/dist/esm/atomic-timeframe-facet.entry.js +4 -5
  636. package/dist/esm/atomic-timeframe-facet.entry.js.map +1 -1
  637. package/dist/esm/atomic.js +1 -1
  638. package/dist/esm/{facet-placeholder-a4a46474.js → facet-placeholder-5c76d381.js} +2 -2
  639. package/dist/esm/{facet-placeholder-a4a46474.js.map → facet-placeholder-5c76d381.js.map} +1 -1
  640. package/dist/esm/{generated-answer-common-d5cc6e86.js → generated-answer-common-50a58790.js} +2 -2
  641. package/dist/esm/{generated-answer-common-d5cc6e86.js.map → generated-answer-common-50a58790.js.map} +1 -1
  642. package/dist/esm/index-3f35faca.js +4 -12
  643. package/dist/esm/index.js.map +1 -1
  644. package/dist/esm/{item-template-provider-35bf0685.js → item-template-provider-d9ddb19d.js} +28 -2
  645. package/dist/esm/item-template-provider-d9ddb19d.js.map +1 -0
  646. package/dist/esm/{show-hide-button-8ed8d405.js → show-hide-button-4765764b.js} +3 -3
  647. package/dist/esm/{show-hide-button-8ed8d405.js.map → show-hide-button-4765764b.js.map} +1 -1
  648. package/dist/esm/{smart-snippet-common-f2a5e84f.js → smart-snippet-common-bf32e4ba.js} +3 -3
  649. package/dist/esm/{smart-snippet-common-f2a5e84f.js.map → smart-snippet-common-bf32e4ba.js.map} +1 -1
  650. package/dist/esm/{smart-snippet-feedback-modal-common-63373ffc.js → smart-snippet-feedback-modal-common-9d74c0b9.js} +2 -2
  651. package/dist/esm/{smart-snippet-feedback-modal-common-63373ffc.js.map → smart-snippet-feedback-modal-common-9d74c0b9.js.map} +1 -1
  652. package/dist/esm/{smart-snippet-suggestions-common-eff6fbfa.js → smart-snippet-suggestions-common-9375b247.js} +2 -2
  653. package/dist/esm/{smart-snippet-suggestions-common-eff6fbfa.js.map → smart-snippet-suggestions-common-9375b247.js.map} +1 -1
  654. package/dist/esm/{stencil-button-e72b213d.js → stencil-button-49254c75.js} +45 -3
  655. package/dist/esm/stencil-button-49254c75.js.map +1 -0
  656. package/dist/esm/{stencil-carousel-ae19a5d0.js → stencil-carousel-5402db5e.js} +2 -2
  657. package/dist/esm/{stencil-carousel-ae19a5d0.js.map → stencil-carousel-5402db5e.js.map} +1 -1
  658. package/dist/esm/{stencil-facet-search-matches-b639b93f.js → stencil-facet-search-matches-f36e9ae9.js} +2 -2
  659. package/dist/esm/{stencil-facet-search-matches-b639b93f.js.map → stencil-facet-search-matches-f36e9ae9.js.map} +1 -1
  660. package/dist/esm/{stencil-facet-show-more-less-4932bd9f.js → stencil-facet-show-more-less-557b4107.js} +2 -2
  661. package/dist/esm/{stencil-facet-show-more-less-4932bd9f.js.map → stencil-facet-show-more-less-557b4107.js.map} +1 -1
  662. package/dist/esm/{stencil-facet-value-6e80b694.js → stencil-facet-value-665ca72b.js} +4 -4
  663. package/dist/esm/{stencil-facet-value-6e80b694.js.map → stencil-facet-value-665ca72b.js.map} +1 -1
  664. package/dist/esm/{stencil-facet-value-box-b26edef5.js → stencil-facet-value-box-cd4a6aa8.js} +2 -2
  665. package/dist/esm/{stencil-facet-value-box-b26edef5.js.map → stencil-facet-value-box-cd4a6aa8.js.map} +1 -1
  666. package/dist/esm/{stencil-facet-value-checkbox-f9dbff9d.js → stencil-facet-value-checkbox-13802512.js} +2 -2
  667. package/dist/esm/{stencil-facet-value-checkbox-f9dbff9d.js.map → stencil-facet-value-checkbox-13802512.js.map} +1 -1
  668. package/dist/esm/{stencil-facet-value-link-bef908e3.js → stencil-facet-value-link-cf3f9c2d.js} +2 -2
  669. package/dist/esm/{stencil-facet-value-link-bef908e3.js.map → stencil-facet-value-link-cf3f9c2d.js.map} +1 -1
  670. package/dist/esm/{stencil-iconButton-b4568792.js → stencil-iconButton-65d8387c.js} +2 -2
  671. package/dist/esm/{stencil-iconButton-b4568792.js.map → stencil-iconButton-65d8387c.js.map} +1 -1
  672. package/dist/esm/{stencil-link-78fd0a0d.js → stencil-link-982cba05.js} +2 -2
  673. package/dist/esm/{stencil-link-78fd0a0d.js.map → stencil-link-982cba05.js.map} +1 -1
  674. package/dist/esm/{stencil-modal-47c54d0e.js → stencil-modal-99e93edd.js} +2 -2
  675. package/dist/esm/{stencil-modal-47c54d0e.js.map → stencil-modal-99e93edd.js.map} +1 -1
  676. package/dist/esm/{stencil-radio-button-a5c62a36.js → stencil-radio-button-8d40e86f.js} +2 -3
  677. package/dist/esm/stencil-radio-button-8d40e86f.js.map +1 -0
  678. package/dist/esm/{stencil-suggestion-manager-b192ac22.js → stencil-suggestion-manager-c1c4298e.js} +2 -2
  679. package/dist/esm/{stencil-suggestion-manager-b192ac22.js.map → stencil-suggestion-manager-c1c4298e.js.map} +1 -1
  680. package/dist/esm/{stencil-values-container-6a1e9ed6.js → stencil-values-container-53c1232c.js} +3 -3
  681. package/dist/esm/{stencil-values-container-6a1e9ed6.js.map → stencil-values-container-53c1232c.js.map} +1 -1
  682. package/dist/esm/{timeframe-facet-common-cee99a11.js → timeframe-facet-common-33642d0d.js} +3 -3
  683. package/dist/esm/{timeframe-facet-common-cee99a11.js.map → timeframe-facet-common-33642d0d.js.map} +1 -1
  684. package/dist/esm/version.js +2 -2
  685. package/dist/types/components/search/{search-box-suggestions/atomic-search-box-instant-results → atomic-search-box-instant-results}/atomic-search-box-instant-results.d.ts +18 -10
  686. package/dist/types/components/search/{search-box-suggestions/atomic-search-box-query-suggestions → atomic-search-box-query-suggestions}/atomic-search-box-query-suggestions.d.ts +15 -6
  687. package/dist/types/components/search/index.d.ts +2 -0
  688. package/dist/types/components.d.ts +0 -121
  689. package/docs/atomic-docs.json +14 -339
  690. package/package.json +8 -5
  691. package/dist/atomic/components/atomic-search-box-instant-results.d.ts +0 -11
  692. package/dist/atomic/components/atomic-search-box-instant-results.js.map +0 -1
  693. package/dist/atomic/components/atomic-search-box-query-suggestions.d.ts +0 -11
  694. package/dist/atomic/components/atomic-search-box-query-suggestions.js +0 -8
  695. package/dist/atomic/components/atomic-search-box-query-suggestions.js.map +0 -1
  696. package/dist/atomic/components/atomic-search-box-query-suggestions2.js +0 -89
  697. package/dist/atomic/components/atomic-search-box-query-suggestions2.js.map +0 -1
  698. package/dist/atomic/components/stencil-button-style.js +0 -46
  699. package/dist/atomic/components/stencil-button-style.js.map +0 -1
  700. package/dist/atomic/components/stencil-placeholders.js +0 -30
  701. package/dist/atomic/components/stencil-placeholders.js.map +0 -1
  702. package/dist/atomic/components/stencil-query-suggestions.js +0 -45
  703. package/dist/atomic/components/stencil-query-suggestions.js.map +0 -1
  704. package/dist/atomic/components/suggestions-events.js +0 -40
  705. package/dist/atomic/components/suggestions-events.js.map +0 -1
  706. package/dist/atomic/p-030c0435.entry.js +0 -2
  707. package/dist/atomic/p-05f1ff6f.entry.js +0 -2
  708. package/dist/atomic/p-12be5e47.entry.js +0 -2
  709. package/dist/atomic/p-13ac0c72.entry.js +0 -2
  710. package/dist/atomic/p-15697c4b.entry.js +0 -2
  711. package/dist/atomic/p-1a093634.js +0 -2
  712. package/dist/atomic/p-1a093634.js.map +0 -1
  713. package/dist/atomic/p-21ab6f55.js +0 -2
  714. package/dist/atomic/p-21ab6f55.js.map +0 -1
  715. package/dist/atomic/p-2ab385b8.entry.js +0 -2
  716. package/dist/atomic/p-2e9ecdf5.entry.js +0 -2
  717. package/dist/atomic/p-32544f8a.entry.js +0 -2
  718. package/dist/atomic/p-390deb3d.entry.js +0 -2
  719. package/dist/atomic/p-3b632123.entry.js +0 -2
  720. package/dist/atomic/p-3e1b3a6d.entry.js +0 -2
  721. package/dist/atomic/p-443f3422.entry.js +0 -2
  722. package/dist/atomic/p-498771d3.entry.js +0 -2
  723. package/dist/atomic/p-4b7a19db.js +0 -2
  724. package/dist/atomic/p-4b7a19db.js.map +0 -1
  725. package/dist/atomic/p-52878b95.entry.js +0 -2
  726. package/dist/atomic/p-5a644e15.entry.js +0 -2
  727. package/dist/atomic/p-5b65473e.entry.js +0 -2
  728. package/dist/atomic/p-5b8cc4bc.entry.js +0 -2
  729. package/dist/atomic/p-5d4e9821.entry.js +0 -2
  730. package/dist/atomic/p-5e6efd8e.js +0 -2
  731. package/dist/atomic/p-659bddc4.js +0 -2
  732. package/dist/atomic/p-659bddc4.js.map +0 -1
  733. package/dist/atomic/p-6d323b9a.entry.js +0 -2
  734. package/dist/atomic/p-733a8082.entry.js +0 -2
  735. package/dist/atomic/p-74380cbc.entry.js +0 -2
  736. package/dist/atomic/p-7afa3c6a.entry.js +0 -2
  737. package/dist/atomic/p-7b8607e0.entry.js +0 -2
  738. package/dist/atomic/p-7c87512d.entry.js +0 -2
  739. package/dist/atomic/p-84a6ee68.entry.js +0 -2
  740. package/dist/atomic/p-850fa320.entry.js +0 -2
  741. package/dist/atomic/p-86bba9db.entry.js +0 -2
  742. package/dist/atomic/p-8b1b1784.entry.js +0 -2
  743. package/dist/atomic/p-93b392fa.entry.js +0 -2
  744. package/dist/atomic/p-951bdd73.entry.js +0 -2
  745. package/dist/atomic/p-953fe202.entry.js +0 -2
  746. package/dist/atomic/p-99bb5042.entry.js +0 -2
  747. package/dist/atomic/p-99d0c865.entry.js +0 -2
  748. package/dist/atomic/p-9c97d77d.entry.js +0 -2
  749. package/dist/atomic/p-9ce62a67.js +0 -2
  750. package/dist/atomic/p-9d492524.entry.js +0 -2
  751. package/dist/atomic/p-ac03c9a7.js +0 -2
  752. package/dist/atomic/p-b0f6a52e.entry.js +0 -2
  753. package/dist/atomic/p-b85c2c46.entry.js +0 -2
  754. package/dist/atomic/p-b85c2c46.entry.js.map +0 -1
  755. package/dist/atomic/p-bf0a780e.entry.js +0 -2
  756. package/dist/atomic/p-bfb2e085.entry.js +0 -2
  757. package/dist/atomic/p-c0491e26.entry.js +0 -2
  758. package/dist/atomic/p-cc963c10.entry.js +0 -2
  759. package/dist/atomic/p-cd021c46.entry.js +0 -2
  760. package/dist/atomic/p-cd4394fe.entry.js +0 -2
  761. package/dist/atomic/p-cef8175c.js +0 -2
  762. package/dist/atomic/p-cef8175c.js.map +0 -1
  763. package/dist/atomic/p-d5f4597b.entry.js +0 -2
  764. package/dist/atomic/p-d944704c.entry.js +0 -2
  765. package/dist/atomic/p-da3fdf6d.js +0 -2
  766. package/dist/atomic/p-da3fdf6d.js.map +0 -1
  767. package/dist/atomic/p-e1052201.entry.js +0 -2
  768. package/dist/atomic/p-e46e05cb.entry.js +0 -2
  769. package/dist/atomic/p-eca826bd.entry.js +0 -2
  770. package/dist/atomic/p-f25c9582.entry.js +0 -2
  771. package/dist/atomic/p-f3eaea67.entry.js.map +0 -1
  772. package/dist/atomic/p-f4818e53.entry.js +0 -2
  773. package/dist/atomic/p-f77a5952.entry.js +0 -2
  774. package/dist/atomic/p-f77a5952.entry.js.map +0 -1
  775. package/dist/atomic/p-f8f80cbe.entry.js +0 -2
  776. package/dist/atomic/p-fdaf9f6c.entry.js +0 -2
  777. package/dist/atomic/p-fdd6264f.entry.js +0 -2
  778. package/dist/atomic/p-ff263c5e.entry.js +0 -2
  779. package/dist/cjs/atomic-search-box-instant-results.cjs.entry.js +0 -195
  780. package/dist/cjs/atomic-search-box-instant-results.cjs.entry.js.map +0 -1
  781. package/dist/cjs/atomic-search-box-query-suggestions.cjs.entry.js +0 -76
  782. package/dist/cjs/atomic-search-box-query-suggestions.cjs.entry.js.map +0 -1
  783. package/dist/cjs/item-template-provider-470c1774.js.map +0 -1
  784. package/dist/cjs/stencil-button-62b500e4.js.map +0 -1
  785. package/dist/cjs/stencil-button-style-ba779fe2.js +0 -49
  786. package/dist/cjs/stencil-button-style-ba779fe2.js.map +0 -1
  787. package/dist/cjs/stencil-placeholders-17e73823.js +0 -33
  788. package/dist/cjs/stencil-placeholders-17e73823.js.map +0 -1
  789. package/dist/cjs/stencil-query-suggestions-6c623e4a.js +0 -50
  790. package/dist/cjs/stencil-query-suggestions-6c623e4a.js.map +0 -1
  791. package/dist/cjs/stencil-radio-button-4f4ddc4d.js.map +0 -1
  792. package/dist/cjs/suggestions-events-63dd0640.js +0 -42
  793. package/dist/cjs/suggestions-events-63dd0640.js.map +0 -1
  794. package/dist/esm/atomic-search-box-instant-results.entry.js +0 -191
  795. package/dist/esm/atomic-search-box-instant-results.entry.js.map +0 -1
  796. package/dist/esm/atomic-search-box-query-suggestions.entry.js +0 -72
  797. package/dist/esm/atomic-search-box-query-suggestions.entry.js.map +0 -1
  798. package/dist/esm/item-template-provider-35bf0685.js.map +0 -1
  799. package/dist/esm/stencil-button-e72b213d.js.map +0 -1
  800. package/dist/esm/stencil-button-style-0bc80040.js +0 -46
  801. package/dist/esm/stencil-button-style-0bc80040.js.map +0 -1
  802. package/dist/esm/stencil-placeholders-43360a82.js +0 -30
  803. package/dist/esm/stencil-placeholders-43360a82.js.map +0 -1
  804. package/dist/esm/stencil-query-suggestions-4810c05e.js +0 -45
  805. package/dist/esm/stencil-query-suggestions-4810c05e.js.map +0 -1
  806. package/dist/esm/stencil-radio-button-a5c62a36.js.map +0 -1
  807. package/dist/esm/suggestions-events-b7a6f007.js +0 -40
  808. package/dist/esm/suggestions-events-b7a6f007.js.map +0 -1
  809. /package/dist/atomic/{p-1d6d0186.entry.js.map → p-0035e3da.entry.js.map} +0 -0
  810. /package/dist/atomic/{p-a0ebbbdf.entry.js.map → p-06c22903.entry.js.map} +0 -0
  811. /package/dist/atomic/{p-3272a04b.entry.js.map → p-0fb717b5.entry.js.map} +0 -0
  812. /package/dist/atomic/{p-bc43df67.entry.js.map → p-118db20a.entry.js.map} +0 -0
  813. /package/dist/atomic/{p-f4818e53.entry.js.map → p-1936bfc8.entry.js.map} +0 -0
  814. /package/dist/atomic/{p-21dd38ad.js.map → p-2f3e40c8.js.map} +0 -0
  815. /package/dist/atomic/{p-6819f12c.entry.js.map → p-3f3f6b14.entry.js.map} +0 -0
  816. /package/dist/atomic/{p-4a73e01b.js.map → p-4c85b2fb.js.map} +0 -0
  817. /package/dist/atomic/{p-baebeae3.js.map → p-4dfa349e.js.map} +0 -0
  818. /package/dist/atomic/{p-044de1f9.entry.js.map → p-534aa5f7.entry.js.map} +0 -0
  819. /package/dist/atomic/{p-4651cceb.js.map → p-5e5599f3.js.map} +0 -0
  820. /package/dist/atomic/{p-f65ca329.entry.js.map → p-609d0550.entry.js.map} +0 -0
  821. /package/dist/atomic/{p-e2fdbbd9.js.map → p-67b314f4.js.map} +0 -0
  822. /package/dist/atomic/{p-b58c1424.js.map → p-7bc6b014.js.map} +0 -0
  823. /package/dist/atomic/{p-05f1ff6f.entry.js.map → p-7bf809eb.entry.js.map} +0 -0
  824. /package/dist/atomic/{p-ac03c9a7.js.map → p-7d639646.js.map} +0 -0
  825. /package/dist/atomic/{p-b72d3af6.entry.js.map → p-80e51963.entry.js.map} +0 -0
  826. /package/dist/atomic/{p-5e6ff8f8.entry.js.map → p-81b00c43.entry.js.map} +0 -0
  827. /package/dist/atomic/{p-52663c66.entry.js.map → p-875eb57b.entry.js.map} +0 -0
  828. /package/dist/atomic/{p-44d96103.entry.js.map → p-8d1f7884.entry.js.map} +0 -0
  829. /package/dist/atomic/{p-d8caa4d8.entry.js.map → p-90ace4cd.entry.js.map} +0 -0
  830. /package/dist/atomic/{p-3291adda.entry.js.map → p-9c556664.entry.js.map} +0 -0
  831. /package/dist/atomic/{p-24bb7b3d.entry.js.map → p-9f01593d.entry.js.map} +0 -0
  832. /package/dist/atomic/{p-dbfd92ab.entry.js.map → p-a48ae7ab.entry.js.map} +0 -0
  833. /package/dist/atomic/{p-f56b1fd6.js.map → p-a8c6b43b.js.map} +0 -0
  834. /package/dist/atomic/{p-5e6efd8e.js.map → p-a9d9e80e.js.map} +0 -0
  835. /package/dist/atomic/{p-40345c70.js.map → p-aa290a01.js.map} +0 -0
  836. /package/dist/atomic/{p-64dfda2d.js.map → p-b93d0580.js.map} +0 -0
  837. /package/dist/atomic/{p-efd33bd9.js.map → p-cbbc91ef.js.map} +0 -0
  838. /package/dist/atomic/{p-cee86cff.entry.js.map → p-cbec8d32.entry.js.map} +0 -0
  839. /package/dist/atomic/{p-aa0139e0.js.map → p-cdfcb38c.js.map} +0 -0
  840. /package/dist/atomic/{p-229018fa.entry.js.map → p-d1fbb20a.entry.js.map} +0 -0
  841. /package/dist/atomic/{p-ddfbc97a.js.map → p-d7f0c2c5.js.map} +0 -0
  842. /package/dist/atomic/{p-1c8bcadf.entry.js.map → p-d8d346f3.entry.js.map} +0 -0
  843. /package/dist/atomic/{p-26e0c1f8.entry.js.map → p-dbc08e9e.entry.js.map} +0 -0
  844. /package/dist/atomic/{p-bca5b379.js.map → p-dc8c49c8.js.map} +0 -0
  845. /package/dist/atomic/{p-f0e695ab.js.map → p-dda4be4d.js.map} +0 -0
  846. /package/dist/atomic/{p-9b447b7d.js.map → p-e49423b4.js.map} +0 -0
  847. /package/dist/atomic/{p-254846bb.js.map → p-e6f167c9.js.map} +0 -0
  848. /package/dist/atomic/{p-5b8cc4bc.entry.js.map → p-e8180b21.entry.js.map} +0 -0
  849. /package/dist/atomic/{p-8aec7860.js.map → p-e9feab84.js.map} +0 -0
  850. /package/dist/atomic/{p-ed413091.entry.js.map → p-f44e1bd3.entry.js.map} +0 -0
  851. /package/dist/atomic/{p-2e13e2c0.entry.js.map → p-f654697b.entry.js.map} +0 -0
  852. /package/dist/atomic/{p-c5bd7f8d.entry.js.map → p-fb5598e9.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"stencil-suggestion-manager-df2e5c45.js","mappings":"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","names":["h","Button","debounce","forceUpdate","isNullOrUndefined","elementHasQuery","DOMPurify","elementHasNoQuery"],"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\n/**\n * @deprecated should only be used for Stencil components.\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\n/**\n * @deprecated should only be used for Stencil components.\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')}\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\n/**\n * @deprecated should only be used for Stencil components.\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"],"version":3}
1
+ {"file":"stencil-suggestion-manager-83efa596.js","mappings":"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","names":["h","Button","debounce","forceUpdate","isNullOrUndefined","elementHasQuery","DOMPurify","elementHasNoQuery"],"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\n/**\n * @deprecated should only be used for Stencil components.\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\n/**\n * @deprecated should only be used for Stencil components.\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')}\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\n/**\n * @deprecated should only be used for Stencil components.\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"],"version":3}
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
3
  const index = require('./index-757bc886.js');
4
- const stencilFacetValueCheckbox = require('./stencil-facet-value-checkbox-58251c1b.js');
4
+ const stencilFacetValueCheckbox = require('./stencil-facet-value-checkbox-58bb59b9.js');
5
5
  const stencilFacetValueLabelHighlight = require('./stencil-facet-value-label-highlight-16ea0e83.js');
6
- const stencilFacetValueLink = require('./stencil-facet-value-link-8587369b.js');
6
+ const stencilFacetValueLink = require('./stencil-facet-value-link-e24cd431.js');
7
7
  const fieldUtils = require('./field-utils-a715deca.js');
8
8
  const stencilFacetValuesGroup = require('./stencil-facet-values-group-332a2362.js');
9
9
 
@@ -60,4 +60,4 @@ exports.NumericFacetValueLink = NumericFacetValueLink;
60
60
  exports.NumericFacetValuesContainer = NumericFacetValuesContainer;
61
61
  exports.formatHumanReadable = formatHumanReadable;
62
62
 
63
- //# sourceMappingURL=stencil-values-container-239826f6.js.map
63
+ //# sourceMappingURL=stencil-values-container-0cf24782.js.map
@@ -1 +1 @@
1
- {"file":"stencil-values-container-239826f6.js","mappings":";;;;;;;;;MAqBa,mBAAmB,GAAG,CAAC,EAClC,YAAY,EACZ,KAAK,EACL,IAAI,EACJ,UAAU,EACV,MAAM,EACN,SAAS,GACa;IACtB,MAAM,gBAAgB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,KAC/C,cAAc,CAAC,KAAK,EAAE,UAAU,CAAC,CAClC,EAAE,KAAK,CAAC;IACT,OAAO,gBAAgB;UACnBA,+BAAoB,CAAC,KAAK,EAAE,gBAAgB,EAAE,IAAI,CAAC;UACnD,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE;YACX,KAAK,EAAE,qBAAqB,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC;YACvE,GAAG,EAAE,qBAAqB,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC;SACpE,CAAC,CAAC;AACT,EAAE;AAEK,MAAM,qBAAqB,GAAG,CACnC,KAAa,EACb,IAAmC,EACnC,MAAuC,EACvC,SAA6C;IAE7C,IAAI;QACF,OAAO,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,SAAqB,CAAC,CAAC;KACrD;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,CAAC,KAAK,CACV,qCAAqC,KAAK,qCAAqC,EAC/E,KAAK,CACN,CAAC;QACF,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CACrB,UAA2B,EAC3B,WAA4B;IAE5B,QACE,UAAU,CAAC,KAAK,KAAK,WAAW,CAAC,KAAK;QACtC,UAAU,CAAC,GAAG,KAAK,WAAW,CAAC,GAAG;QAClC,UAAU,CAAC,YAAY,KAAK,WAAW,CAAC,YAAY,EACpD;AACJ,CAAC;;ACtDD;;;MAGa,qBAAqB,GAE9B,CAAC,KAAK;IACR,MAAM,EAAC,UAAU,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAC,GAAG,KAAK,CAAC;IAC3D,MAAM,YAAY,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,KAAK,UAAU,CAAC;IACnD,QAAQ,eAAe;QACrB,KAAK,UAAU;YACb,QACEC,QAACC,4CAAkB,IACjB,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,UAAU,CAAC,eAAe,EAC3C,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,MAAM,OAAO,EAAE;gBAExBD,QAACE,wDAAwB,IACvB,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,GACI,CACT,EACrB;QACJ,KAAK,MAAM;YACT,QACEF,QAACG,oCAAc,IACb,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,UAAU,CAAC,eAAe,EAC3C,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO;gBAEhBH,QAACE,wDAAwB,IACvB,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,GACI,CACb,EACjB;KACL;AACH;;AC5CA;;;MAGa,2BAA2B,GAEpC,CAAC,EAAC,IAAI,EAAE,KAAK,EAAC,EAAE,QAAQ;IAC1B,QACEF,QAACI,wCAAgB,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK;QACxCJ,gBAAI,KAAK,EAAC,MAAM,EAAC,IAAI,EAAC,QAAQ,IAC3B,QAAQ,CACN,CACY,EACnB;AACJ;;;;;;","names":["getFieldValueCaption","h","FacetValueCheckbox","FacetValueLabelHighlight","FacetValueLink","FacetValuesGroup"],"sources":["src/components/common/facets/numeric-facet/formatter.ts","src/components/common/facets/numeric-facet/stencil-value-link.tsx","src/components/common/facets/numeric-facet/stencil-values-container.tsx"],"sourcesContent":["import type {i18n} from 'i18next';\nimport {getFieldValueCaption} from '../../../../utils/field-utils';\nimport type {NumberFormatter} from '../../formats/format-common';\n\nexport interface FacetValueRange {\n endInclusive: boolean;\n start: number;\n end: number;\n label?: string;\n state: 'selected' | 'idle' | 'excluded';\n}\n\nexport interface FormatFacetValueRange {\n field: string;\n facetValue: FacetValueRange & {numberOfResults: number};\n manualRanges: FacetValueRange[];\n i18n: i18n;\n logger: Pick<Console, 'error'>;\n formatter: NumberFormatter;\n}\n\nexport const formatHumanReadable = ({\n manualRanges,\n field,\n i18n,\n facetValue,\n logger,\n formatter,\n}: FormatFacetValueRange) => {\n const manualRangeLabel = manualRanges.find((range) =>\n areRangesEqual(range, facetValue)\n )?.label;\n return manualRangeLabel\n ? getFieldValueCaption(field, manualRangeLabel, i18n)\n : i18n.t('to', {\n start: formatNumberLocalized(facetValue.start, i18n, logger, formatter),\n end: formatNumberLocalized(facetValue.end, i18n, logger, formatter),\n });\n};\n\nexport const formatNumberLocalized = (\n value: number,\n i18n: FormatFacetValueRange['i18n'],\n logger: FormatFacetValueRange['logger'],\n formatter: FormatFacetValueRange['formatter']\n) => {\n try {\n return formatter(value, i18n.languages as string[]);\n } catch (error) {\n logger.error(\n `atomic-numeric-facet facet value \"${value}\" could not be formatted correctly.`,\n error\n );\n return value;\n }\n};\n\nconst areRangesEqual = (\n firstRange: FacetValueRange,\n secondRange: FacetValueRange\n) => {\n return (\n firstRange.start === secondRange.start &&\n firstRange.end === secondRange.end &&\n firstRange.endInclusive === secondRange.endInclusive\n );\n};\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {FacetValueCheckbox} from '../facet-value-checkbox/stencil-facet-value-checkbox';\nimport {FacetValueLabelHighlight} from '../facet-value-label-highlight/stencil-facet-value-label-highlight';\nimport {FacetValueLink} from '../facet-value-link/stencil-facet-value-link';\nimport {FormatFacetValueRange, formatHumanReadable} from './formatter';\n\ninterface NumericFacetValueLinkProps extends FormatFacetValueRange {\n onClick: () => void;\n logger: Pick<Console, 'error'>;\n displayValuesAs: 'checkbox' | 'link';\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const NumericFacetValueLink: FunctionalComponent<\n NumericFacetValueLinkProps\n> = (props) => {\n const {facetValue, displayValuesAs, i18n, onClick} = props;\n const displayValue = formatHumanReadable(props);\n const isSelected = facetValue.state === 'selected';\n switch (displayValuesAs) {\n case 'checkbox':\n return (\n <FacetValueCheckbox\n displayValue={displayValue}\n numberOfResults={facetValue.numberOfResults}\n isSelected={isSelected}\n i18n={i18n}\n onClick={() => onClick()}\n >\n <FacetValueLabelHighlight\n displayValue={displayValue}\n isSelected={isSelected}\n ></FacetValueLabelHighlight>\n </FacetValueCheckbox>\n );\n case 'link':\n return (\n <FacetValueLink\n displayValue={displayValue}\n numberOfResults={facetValue.numberOfResults}\n isSelected={isSelected}\n i18n={i18n}\n onClick={onClick}\n >\n <FacetValueLabelHighlight\n displayValue={displayValue}\n isSelected={isSelected}\n ></FacetValueLabelHighlight>\n </FacetValueLink>\n );\n }\n};\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {FacetValuesGroup} from '../facet-values-group/stencil-facet-values-group';\n\ninterface NumericFacetValuesContainerProps {\n i18n: i18n;\n label: string;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const NumericFacetValuesContainer: FunctionalComponent<\n NumericFacetValuesContainerProps\n> = ({i18n, label}, children) => {\n return (\n <FacetValuesGroup i18n={i18n} label={label}>\n <ul class=\"mt-3\" part=\"values\">\n {children}\n </ul>\n </FacetValuesGroup>\n );\n};\n"],"version":3}
1
+ {"file":"stencil-values-container-0cf24782.js","mappings":";;;;;;;;;MAqBa,mBAAmB,GAAG,CAAC,EAClC,YAAY,EACZ,KAAK,EACL,IAAI,EACJ,UAAU,EACV,MAAM,EACN,SAAS,GACa;IACtB,MAAM,gBAAgB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,KAC/C,cAAc,CAAC,KAAK,EAAE,UAAU,CAAC,CAClC,EAAE,KAAK,CAAC;IACT,OAAO,gBAAgB;UACnBA,+BAAoB,CAAC,KAAK,EAAE,gBAAgB,EAAE,IAAI,CAAC;UACnD,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE;YACX,KAAK,EAAE,qBAAqB,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC;YACvE,GAAG,EAAE,qBAAqB,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC;SACpE,CAAC,CAAC;AACT,EAAE;AAEK,MAAM,qBAAqB,GAAG,CACnC,KAAa,EACb,IAAmC,EACnC,MAAuC,EACvC,SAA6C;IAE7C,IAAI;QACF,OAAO,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,SAAqB,CAAC,CAAC;KACrD;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,CAAC,KAAK,CACV,qCAAqC,KAAK,qCAAqC,EAC/E,KAAK,CACN,CAAC;QACF,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CACrB,UAA2B,EAC3B,WAA4B;IAE5B,QACE,UAAU,CAAC,KAAK,KAAK,WAAW,CAAC,KAAK;QACtC,UAAU,CAAC,GAAG,KAAK,WAAW,CAAC,GAAG;QAClC,UAAU,CAAC,YAAY,KAAK,WAAW,CAAC,YAAY,EACpD;AACJ,CAAC;;ACtDD;;;MAGa,qBAAqB,GAE9B,CAAC,KAAK;IACR,MAAM,EAAC,UAAU,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAC,GAAG,KAAK,CAAC;IAC3D,MAAM,YAAY,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,KAAK,UAAU,CAAC;IACnD,QAAQ,eAAe;QACrB,KAAK,UAAU;YACb,QACEC,QAACC,4CAAkB,IACjB,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,UAAU,CAAC,eAAe,EAC3C,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,MAAM,OAAO,EAAE;gBAExBD,QAACE,wDAAwB,IACvB,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,GACI,CACT,EACrB;QACJ,KAAK,MAAM;YACT,QACEF,QAACG,oCAAc,IACb,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,UAAU,CAAC,eAAe,EAC3C,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO;gBAEhBH,QAACE,wDAAwB,IACvB,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,GACI,CACb,EACjB;KACL;AACH;;AC5CA;;;MAGa,2BAA2B,GAEpC,CAAC,EAAC,IAAI,EAAE,KAAK,EAAC,EAAE,QAAQ;IAC1B,QACEF,QAACI,wCAAgB,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK;QACxCJ,gBAAI,KAAK,EAAC,MAAM,EAAC,IAAI,EAAC,QAAQ,IAC3B,QAAQ,CACN,CACY,EACnB;AACJ;;;;;;","names":["getFieldValueCaption","h","FacetValueCheckbox","FacetValueLabelHighlight","FacetValueLink","FacetValuesGroup"],"sources":["src/components/common/facets/numeric-facet/formatter.ts","src/components/common/facets/numeric-facet/stencil-value-link.tsx","src/components/common/facets/numeric-facet/stencil-values-container.tsx"],"sourcesContent":["import type {i18n} from 'i18next';\nimport {getFieldValueCaption} from '../../../../utils/field-utils';\nimport type {NumberFormatter} from '../../formats/format-common';\n\nexport interface FacetValueRange {\n endInclusive: boolean;\n start: number;\n end: number;\n label?: string;\n state: 'selected' | 'idle' | 'excluded';\n}\n\nexport interface FormatFacetValueRange {\n field: string;\n facetValue: FacetValueRange & {numberOfResults: number};\n manualRanges: FacetValueRange[];\n i18n: i18n;\n logger: Pick<Console, 'error'>;\n formatter: NumberFormatter;\n}\n\nexport const formatHumanReadable = ({\n manualRanges,\n field,\n i18n,\n facetValue,\n logger,\n formatter,\n}: FormatFacetValueRange) => {\n const manualRangeLabel = manualRanges.find((range) =>\n areRangesEqual(range, facetValue)\n )?.label;\n return manualRangeLabel\n ? getFieldValueCaption(field, manualRangeLabel, i18n)\n : i18n.t('to', {\n start: formatNumberLocalized(facetValue.start, i18n, logger, formatter),\n end: formatNumberLocalized(facetValue.end, i18n, logger, formatter),\n });\n};\n\nexport const formatNumberLocalized = (\n value: number,\n i18n: FormatFacetValueRange['i18n'],\n logger: FormatFacetValueRange['logger'],\n formatter: FormatFacetValueRange['formatter']\n) => {\n try {\n return formatter(value, i18n.languages as string[]);\n } catch (error) {\n logger.error(\n `atomic-numeric-facet facet value \"${value}\" could not be formatted correctly.`,\n error\n );\n return value;\n }\n};\n\nconst areRangesEqual = (\n firstRange: FacetValueRange,\n secondRange: FacetValueRange\n) => {\n return (\n firstRange.start === secondRange.start &&\n firstRange.end === secondRange.end &&\n firstRange.endInclusive === secondRange.endInclusive\n );\n};\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {FacetValueCheckbox} from '../facet-value-checkbox/stencil-facet-value-checkbox';\nimport {FacetValueLabelHighlight} from '../facet-value-label-highlight/stencil-facet-value-label-highlight';\nimport {FacetValueLink} from '../facet-value-link/stencil-facet-value-link';\nimport {FormatFacetValueRange, formatHumanReadable} from './formatter';\n\ninterface NumericFacetValueLinkProps extends FormatFacetValueRange {\n onClick: () => void;\n logger: Pick<Console, 'error'>;\n displayValuesAs: 'checkbox' | 'link';\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const NumericFacetValueLink: FunctionalComponent<\n NumericFacetValueLinkProps\n> = (props) => {\n const {facetValue, displayValuesAs, i18n, onClick} = props;\n const displayValue = formatHumanReadable(props);\n const isSelected = facetValue.state === 'selected';\n switch (displayValuesAs) {\n case 'checkbox':\n return (\n <FacetValueCheckbox\n displayValue={displayValue}\n numberOfResults={facetValue.numberOfResults}\n isSelected={isSelected}\n i18n={i18n}\n onClick={() => onClick()}\n >\n <FacetValueLabelHighlight\n displayValue={displayValue}\n isSelected={isSelected}\n ></FacetValueLabelHighlight>\n </FacetValueCheckbox>\n );\n case 'link':\n return (\n <FacetValueLink\n displayValue={displayValue}\n numberOfResults={facetValue.numberOfResults}\n isSelected={isSelected}\n i18n={i18n}\n onClick={onClick}\n >\n <FacetValueLabelHighlight\n displayValue={displayValue}\n isSelected={isSelected}\n ></FacetValueLabelHighlight>\n </FacetValueLink>\n );\n }\n};\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {FacetValuesGroup} from '../facet-values-group/stencil-facet-values-group';\n\ninterface NumericFacetValuesContainerProps {\n i18n: i18n;\n label: string;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const NumericFacetValuesContainer: FunctionalComponent<\n NumericFacetValuesContainerProps\n> = ({i18n, label}, children) => {\n return (\n <FacetValuesGroup i18n={i18n} label={label}>\n <ul class=\"mt-3\" part=\"values\">\n {children}\n </ul>\n </FacetValuesGroup>\n );\n};\n"],"version":3}
@@ -5,9 +5,9 @@ const dateUtils = require('./date-utils-f0803dd3.js');
5
5
  const fieldUtils = require('./field-utils-a715deca.js');
6
6
  const utils = require('./utils-12b49e87.js');
7
7
  const initializationUtils = require('./initialization-utils-92f1b080.js');
8
- const facetPlaceholder = require('./facet-placeholder-5beb1e14.js');
8
+ const facetPlaceholder = require('./facet-placeholder-28bdf849.js');
9
9
  const stencilFacetValueLabelHighlight = require('./stencil-facet-value-label-highlight-16ea0e83.js');
10
- const stencilFacetValueLink = require('./stencil-facet-value-link-8587369b.js');
10
+ const stencilFacetValueLink = require('./stencil-facet-value-link-e24cd431.js');
11
11
  const stencilFacetValuesGroup = require('./stencil-facet-values-group-332a2362.js');
12
12
  const popoverType = require('./popover-type-b1385b27.js');
13
13
  const stencilFacetCommon = require('./stencil-facet-common-c258bef8.js');
@@ -211,4 +211,4 @@ class TimeframeFacetCommon {
211
211
 
212
212
  exports.TimeframeFacetCommon = TimeframeFacetCommon;
213
213
 
214
- //# sourceMappingURL=timeframe-facet-common-cbd1b4c6.js.map
214
+ //# sourceMappingURL=timeframe-facet-common-b08ffe64.js.map
@@ -1 +1 @@
1
- {"file":"timeframe-facet-common-cbd1b4c6.js","mappings":"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","names":["randomID","shouldDisplayInputForFacetRange","initializePopover","getFieldValueCaption","parseDate","h","FacetValueLink","FacetValueLabelHighlight","FacetValuesGroup","FacetHeader","Hidden","FacetPlaceholder","FacetContainer"],"sources":["src/components/common/facets/timeframe-facet-common.tsx"],"sourcesContent":["import {FocusTargetController} from '@/src/utils/stencil-accessibility-utils';\nimport {\n DateFacet,\n DateFacetValue,\n DateFilter,\n DateRangeOptions,\n DateRangeRequest,\n FacetConditionsManager,\n RangeFacetSortCriterion,\n RelativeDate,\n RelativeDatePeriod,\n RelativeDateUnit,\n SearchStatusState,\n} from '@coveo/headless';\nimport {h, VNode} from '@stencil/core';\nimport {parseDate} from '../../../utils/date-utils';\nimport {getFieldValueCaption} from '../../../utils/field-utils';\nimport {randomID} from '../../../utils/utils';\nimport {InsightBindings} from '../../insight/atomic-insight-interface/atomic-insight-interface';\nimport {Bindings as SearchBindings} from '../../search/atomic-search-interface/atomic-search-interface';\nimport {Hidden} from '../stencil-hidden';\nimport {FacetInfo} from './facet-common-store';\nimport {FacetContainer} from './facet-container/stencil-facet-container';\nimport {FacetHeader} from './facet-header/stencil-facet-header';\nimport {FacetPlaceholder} from './facet-placeholder/facet-placeholder';\nimport {FacetValueLabelHighlight} from './facet-value-label-highlight/stencil-facet-value-label-highlight';\nimport {FacetValueLink} from './facet-value-link/stencil-facet-value-link';\nimport {FacetValuesGroup} from './facet-values-group/stencil-facet-values-group';\nimport {initializePopover} from './popover/popover-type';\nimport {shouldDisplayInputForFacetRange} from './stencil-facet-common';\n\nexport interface Timeframe {\n period: RelativeDatePeriod;\n unit?: RelativeDateUnit;\n amount?: number;\n label?: string;\n}\n\ninterface TimeframeFacetCommonOptions {\n facetId?: string;\n host: HTMLElement;\n bindings: SearchBindings | InsightBindings;\n label: string;\n field: string;\n headingLevel: number;\n dependsOn: Record<string, string>;\n withDatePicker: boolean;\n setFacetId(id: string): string;\n getSearchStatusState(): SearchStatusState;\n buildDependenciesManager(facetId: string): FacetConditionsManager;\n deserializeRelativeDate(date: string): RelativeDate;\n buildDateRange(config: DateRangeOptions): DateRangeRequest;\n initializeFacetForDatePicker(): DateFacet;\n initializeFacetForDateRange(values: DateRangeRequest[]): DateFacet;\n initializeFilter(): DateFilter;\n min?: string;\n max?: string;\n sortCriteria: RangeFacetSortCriterion;\n}\n\ninterface TimeframeFacetCommonRenderProps {\n hasError: boolean;\n firstSearchExecuted: boolean;\n isCollapsed: boolean;\n headerFocus: FocusTargetController;\n onToggleCollapse: () => boolean;\n}\n\nexport class TimeframeFacetCommon {\n private facetId?: string;\n private facetForDatePicker?: DateFacet;\n private facetForDateRange?: DateFacet;\n private filter?: DateFilter;\n private manualTimeframes: Timeframe[] = [];\n private facetForDateRangeDependenciesManager?: FacetConditionsManager;\n private facetForDatePickerDependenciesManager?: FacetConditionsManager;\n private filterDependenciesManager?: FacetConditionsManager;\n\n constructor(private props: TimeframeFacetCommonOptions) {\n this.facetId = this.determineFacetId;\n this.props.setFacetId(this.facetId);\n\n this.manualTimeframes = this.getManualTimeframes();\n\n // Initialize two facets: One that is actually used to display values for end users, which only exists\n // if we need to display something to the end user (ie: timeframes > 0)\n\n // A second facet is initialized only to verify the results count. It is never used to display results to end user.\n // It serves as a way to determine if the input should be rendered or not, independent of the ranges configured in the component\n if (this.manualTimeframes.length > 0) {\n this.facetForDateRange = this.props.initializeFacetForDateRange(\n this.currentValues\n );\n }\n\n if (this.props.withDatePicker) {\n this.facetForDatePicker = this.props.initializeFacetForDatePicker();\n this.facetForDatePickerDependenciesManager =\n this.props.buildDependenciesManager(\n this.facetForDatePicker.state.facetId\n );\n this.filter = this.props.initializeFilter();\n }\n\n if (this.facetForDateRange) {\n this.facetForDateRangeDependenciesManager =\n this.props.buildDependenciesManager(\n this.facetForDateRange?.state.facetId\n );\n }\n\n if (this.filter) {\n this.filterDependenciesManager = this.props.buildDependenciesManager(\n this.filter?.state.facetId\n );\n }\n\n this.registerFacetToStore();\n }\n\n private get determineFacetId() {\n if (this.props.facetId) {\n return this.props.facetId;\n }\n\n if (this.props.bindings.store.state.dateFacets[this.props.field]) {\n return randomID(`${this.props.field}_`);\n }\n\n return this.props.field;\n }\n\n private get enabled() {\n return (\n this.facetForDateRange?.state.enabled ??\n this.filter?.state.enabled ??\n true\n );\n }\n\n private get valuesToRender() {\n return (\n this.facetForDateRange?.state.values.filter(\n (value) => value.numberOfResults || value.state !== 'idle'\n ) || []\n );\n }\n\n private get shouldRenderValues() {\n return !this.hasInputRange && !!this.valuesToRender.length;\n }\n\n private get shouldRenderFacet() {\n return this.shouldRenderInput || this.shouldRenderValues;\n }\n\n private get shouldRenderInput() {\n return shouldDisplayInputForFacetRange({\n hasInput: this.props.withDatePicker,\n hasInputRange: this.hasInputRange,\n searchStatusState: this.props.getSearchStatusState(),\n facetValues: this.facetForDatePicker?.state?.values || [],\n });\n }\n\n private get hasValues() {\n if (this.facetForDatePicker?.state.values.length) {\n return true;\n }\n\n return !!this.valuesToRender.length;\n }\n\n private get numberOfSelectedValues() {\n if (this.filter?.state?.range) {\n return 1;\n }\n\n return (\n this.facetForDateRange?.state.values.filter(\n ({state}) => state === 'selected'\n ).length || 0\n );\n }\n\n private get hasInputRange() {\n return !!this.filter?.state.range;\n }\n\n public get currentValues(): DateRangeRequest[] {\n return this.manualTimeframes.map(({period, amount, unit}) =>\n period === 'past'\n ? this.props.buildDateRange({\n start: {period, unit, amount},\n end: {period: 'now'},\n })\n : this.props.buildDateRange({\n start: {period: 'now'},\n end: {period, unit, amount},\n })\n );\n }\n\n public disconnectedCallback() {\n if (this.props.host.isConnected) {\n return;\n }\n this.facetForDateRangeDependenciesManager?.stopWatching();\n this.facetForDatePickerDependenciesManager?.stopWatching();\n this.filterDependenciesManager?.stopWatching();\n }\n\n private get isHidden() {\n return !this.shouldRenderFacet || !this.enabled;\n }\n\n private registerFacetToStore() {\n const facetInfo: FacetInfo = {\n label: () => this.props.bindings.i18n.t(this.props.label),\n facetId: this.facetId!,\n element: this.props.host,\n isHidden: () => this.isHidden,\n };\n\n this.props.bindings.store.registerFacet('dateFacets', {\n ...facetInfo,\n format: (value) => this.formatFacetValue(value),\n });\n\n initializePopover(this.props.host, {\n ...facetInfo,\n hasValues: () => this.hasValues,\n numberOfActiveValues: () => this.numberOfSelectedValues,\n });\n\n if (this.filter) {\n this.props.bindings.store.state.dateFacets[this.filter.state.facetId] =\n this.props.bindings.store.state.dateFacets[this.facetId!];\n }\n }\n\n private getManualTimeframes(): Timeframe[] {\n return Array.from(this.props.host.querySelectorAll('atomic-timeframe')).map(\n ({label, amount, unit, period}) => ({\n label,\n amount,\n unit,\n period,\n })\n );\n }\n\n private formatFacetValue(facetValue: DateFacetValue) {\n try {\n const startDate = this.props.deserializeRelativeDate(facetValue.start);\n const relativeDate =\n startDate.period === 'past'\n ? startDate\n : this.props.deserializeRelativeDate(facetValue.end);\n const timeframe = this.getManualTimeframes().find(\n (timeframe) =>\n timeframe.period === relativeDate.period &&\n timeframe.unit === relativeDate.unit &&\n timeframe.amount === relativeDate.amount\n );\n\n if (timeframe?.label) {\n return getFieldValueCaption(\n this.props.field,\n timeframe.label,\n this.props.bindings.i18n\n );\n }\n return this.props.bindings.i18n.t(\n `${relativeDate.period}-${relativeDate.unit}`,\n {\n count: relativeDate.amount,\n }\n );\n } catch (error) {\n return this.props.bindings.i18n.t('to', {\n start: parseDate(facetValue.start).format('YYYY-MM-DD'),\n end: parseDate(facetValue.end).format('YYYY-MM-DD'),\n });\n }\n }\n private renderValues() {\n return this.renderValuesContainer(\n this.valuesToRender.map((value) => this.renderValue(value))\n );\n }\n private renderValue(facetValue: DateFacetValue) {\n const displayValue = this.formatFacetValue(facetValue);\n const isSelected = facetValue.state === 'selected';\n const isExcluded = facetValue.state === 'excluded';\n return (\n <FacetValueLink\n displayValue={displayValue}\n isSelected={isSelected}\n numberOfResults={facetValue.numberOfResults}\n i18n={this.props.bindings.i18n}\n onClick={() => this.facetForDateRange!.toggleSingleSelect(facetValue)}\n >\n <FacetValueLabelHighlight\n displayValue={displayValue}\n isSelected={isSelected}\n isExcluded={isExcluded}\n ></FacetValueLabelHighlight>\n </FacetValueLink>\n );\n }\n\n private renderValuesContainer(children: VNode[]) {\n return (\n <FacetValuesGroup\n i18n={this.props.bindings.i18n}\n label={this.props.label}\n >\n <ul class=\"mt-3\" part=\"values\">\n {children}\n </ul>\n </FacetValuesGroup>\n );\n }\n\n private renderHeader(\n isCollapsed: boolean,\n headerFocus: FocusTargetController,\n onToggleCollapse: () => void\n ) {\n return (\n <FacetHeader\n i18n={this.props.bindings.i18n}\n label={this.props.label}\n onClearFilters={() => {\n headerFocus.focusAfterSearch();\n if (this.filter?.state.range) {\n this.filter?.clear();\n return;\n }\n this.facetForDateRange?.deselectAll();\n }}\n numberOfActiveValues={this.numberOfSelectedValues}\n isCollapsed={isCollapsed}\n headingLevel={this.props.headingLevel}\n onToggleCollapse={onToggleCollapse}\n headerRef={(el) => headerFocus.setTarget(el)}\n ></FacetHeader>\n );\n }\n\n private renderDateInput() {\n return (\n <atomic-stencil-facet-date-input\n min={this.props.min}\n max={this.props.max}\n bindings={this.props.bindings}\n label={this.props.label}\n facetId={this.filter!.state!.facetId}\n rangeGetter={() => this.filter!.state.range}\n rangeSetter={(request: DateRangeRequest) => {\n this.filter!.setRange(request);\n }}\n ></atomic-stencil-facet-date-input>\n );\n }\n\n public render({\n hasError,\n firstSearchExecuted,\n isCollapsed,\n headerFocus,\n onToggleCollapse,\n }: TimeframeFacetCommonRenderProps) {\n if (hasError || !this.enabled) {\n return <Hidden></Hidden>;\n }\n\n if (!firstSearchExecuted) {\n return (\n <FacetPlaceholder\n numberOfValues={this.currentValues.length}\n isCollapsed={isCollapsed}\n ></FacetPlaceholder>\n );\n }\n\n if (!this.shouldRenderFacet) {\n return <Hidden></Hidden>;\n }\n\n return (\n <FacetContainer>\n {this.renderHeader(isCollapsed, headerFocus, onToggleCollapse)}\n {!isCollapsed && [\n this.shouldRenderValues && this.renderValues(),\n this.shouldRenderInput && this.renderDateInput(),\n ]}\n </FacetContainer>\n );\n }\n}\n"],"version":3}
1
+ {"file":"timeframe-facet-common-b08ffe64.js","mappings":"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","names":["randomID","shouldDisplayInputForFacetRange","initializePopover","getFieldValueCaption","parseDate","h","FacetValueLink","FacetValueLabelHighlight","FacetValuesGroup","FacetHeader","Hidden","FacetPlaceholder","FacetContainer"],"sources":["src/components/common/facets/timeframe-facet-common.tsx"],"sourcesContent":["import {FocusTargetController} from '@/src/utils/stencil-accessibility-utils';\nimport {\n DateFacet,\n DateFacetValue,\n DateFilter,\n DateRangeOptions,\n DateRangeRequest,\n FacetConditionsManager,\n RangeFacetSortCriterion,\n RelativeDate,\n RelativeDatePeriod,\n RelativeDateUnit,\n SearchStatusState,\n} from '@coveo/headless';\nimport {h, VNode} from '@stencil/core';\nimport {parseDate} from '../../../utils/date-utils';\nimport {getFieldValueCaption} from '../../../utils/field-utils';\nimport {randomID} from '../../../utils/utils';\nimport {InsightBindings} from '../../insight/atomic-insight-interface/atomic-insight-interface';\nimport {Bindings as SearchBindings} from '../../search/atomic-search-interface/atomic-search-interface';\nimport {Hidden} from '../stencil-hidden';\nimport {FacetInfo} from './facet-common-store';\nimport {FacetContainer} from './facet-container/stencil-facet-container';\nimport {FacetHeader} from './facet-header/stencil-facet-header';\nimport {FacetPlaceholder} from './facet-placeholder/facet-placeholder';\nimport {FacetValueLabelHighlight} from './facet-value-label-highlight/stencil-facet-value-label-highlight';\nimport {FacetValueLink} from './facet-value-link/stencil-facet-value-link';\nimport {FacetValuesGroup} from './facet-values-group/stencil-facet-values-group';\nimport {initializePopover} from './popover/popover-type';\nimport {shouldDisplayInputForFacetRange} from './stencil-facet-common';\n\nexport interface Timeframe {\n period: RelativeDatePeriod;\n unit?: RelativeDateUnit;\n amount?: number;\n label?: string;\n}\n\ninterface TimeframeFacetCommonOptions {\n facetId?: string;\n host: HTMLElement;\n bindings: SearchBindings | InsightBindings;\n label: string;\n field: string;\n headingLevel: number;\n dependsOn: Record<string, string>;\n withDatePicker: boolean;\n setFacetId(id: string): string;\n getSearchStatusState(): SearchStatusState;\n buildDependenciesManager(facetId: string): FacetConditionsManager;\n deserializeRelativeDate(date: string): RelativeDate;\n buildDateRange(config: DateRangeOptions): DateRangeRequest;\n initializeFacetForDatePicker(): DateFacet;\n initializeFacetForDateRange(values: DateRangeRequest[]): DateFacet;\n initializeFilter(): DateFilter;\n min?: string;\n max?: string;\n sortCriteria: RangeFacetSortCriterion;\n}\n\ninterface TimeframeFacetCommonRenderProps {\n hasError: boolean;\n firstSearchExecuted: boolean;\n isCollapsed: boolean;\n headerFocus: FocusTargetController;\n onToggleCollapse: () => boolean;\n}\n\nexport class TimeframeFacetCommon {\n private facetId?: string;\n private facetForDatePicker?: DateFacet;\n private facetForDateRange?: DateFacet;\n private filter?: DateFilter;\n private manualTimeframes: Timeframe[] = [];\n private facetForDateRangeDependenciesManager?: FacetConditionsManager;\n private facetForDatePickerDependenciesManager?: FacetConditionsManager;\n private filterDependenciesManager?: FacetConditionsManager;\n\n constructor(private props: TimeframeFacetCommonOptions) {\n this.facetId = this.determineFacetId;\n this.props.setFacetId(this.facetId);\n\n this.manualTimeframes = this.getManualTimeframes();\n\n // Initialize two facets: One that is actually used to display values for end users, which only exists\n // if we need to display something to the end user (ie: timeframes > 0)\n\n // A second facet is initialized only to verify the results count. It is never used to display results to end user.\n // It serves as a way to determine if the input should be rendered or not, independent of the ranges configured in the component\n if (this.manualTimeframes.length > 0) {\n this.facetForDateRange = this.props.initializeFacetForDateRange(\n this.currentValues\n );\n }\n\n if (this.props.withDatePicker) {\n this.facetForDatePicker = this.props.initializeFacetForDatePicker();\n this.facetForDatePickerDependenciesManager =\n this.props.buildDependenciesManager(\n this.facetForDatePicker.state.facetId\n );\n this.filter = this.props.initializeFilter();\n }\n\n if (this.facetForDateRange) {\n this.facetForDateRangeDependenciesManager =\n this.props.buildDependenciesManager(\n this.facetForDateRange?.state.facetId\n );\n }\n\n if (this.filter) {\n this.filterDependenciesManager = this.props.buildDependenciesManager(\n this.filter?.state.facetId\n );\n }\n\n this.registerFacetToStore();\n }\n\n private get determineFacetId() {\n if (this.props.facetId) {\n return this.props.facetId;\n }\n\n if (this.props.bindings.store.state.dateFacets[this.props.field]) {\n return randomID(`${this.props.field}_`);\n }\n\n return this.props.field;\n }\n\n private get enabled() {\n return (\n this.facetForDateRange?.state.enabled ??\n this.filter?.state.enabled ??\n true\n );\n }\n\n private get valuesToRender() {\n return (\n this.facetForDateRange?.state.values.filter(\n (value) => value.numberOfResults || value.state !== 'idle'\n ) || []\n );\n }\n\n private get shouldRenderValues() {\n return !this.hasInputRange && !!this.valuesToRender.length;\n }\n\n private get shouldRenderFacet() {\n return this.shouldRenderInput || this.shouldRenderValues;\n }\n\n private get shouldRenderInput() {\n return shouldDisplayInputForFacetRange({\n hasInput: this.props.withDatePicker,\n hasInputRange: this.hasInputRange,\n searchStatusState: this.props.getSearchStatusState(),\n facetValues: this.facetForDatePicker?.state?.values || [],\n });\n }\n\n private get hasValues() {\n if (this.facetForDatePicker?.state.values.length) {\n return true;\n }\n\n return !!this.valuesToRender.length;\n }\n\n private get numberOfSelectedValues() {\n if (this.filter?.state?.range) {\n return 1;\n }\n\n return (\n this.facetForDateRange?.state.values.filter(\n ({state}) => state === 'selected'\n ).length || 0\n );\n }\n\n private get hasInputRange() {\n return !!this.filter?.state.range;\n }\n\n public get currentValues(): DateRangeRequest[] {\n return this.manualTimeframes.map(({period, amount, unit}) =>\n period === 'past'\n ? this.props.buildDateRange({\n start: {period, unit, amount},\n end: {period: 'now'},\n })\n : this.props.buildDateRange({\n start: {period: 'now'},\n end: {period, unit, amount},\n })\n );\n }\n\n public disconnectedCallback() {\n if (this.props.host.isConnected) {\n return;\n }\n this.facetForDateRangeDependenciesManager?.stopWatching();\n this.facetForDatePickerDependenciesManager?.stopWatching();\n this.filterDependenciesManager?.stopWatching();\n }\n\n private get isHidden() {\n return !this.shouldRenderFacet || !this.enabled;\n }\n\n private registerFacetToStore() {\n const facetInfo: FacetInfo = {\n label: () => this.props.bindings.i18n.t(this.props.label),\n facetId: this.facetId!,\n element: this.props.host,\n isHidden: () => this.isHidden,\n };\n\n this.props.bindings.store.registerFacet('dateFacets', {\n ...facetInfo,\n format: (value) => this.formatFacetValue(value),\n });\n\n initializePopover(this.props.host, {\n ...facetInfo,\n hasValues: () => this.hasValues,\n numberOfActiveValues: () => this.numberOfSelectedValues,\n });\n\n if (this.filter) {\n this.props.bindings.store.state.dateFacets[this.filter.state.facetId] =\n this.props.bindings.store.state.dateFacets[this.facetId!];\n }\n }\n\n private getManualTimeframes(): Timeframe[] {\n return Array.from(this.props.host.querySelectorAll('atomic-timeframe')).map(\n ({label, amount, unit, period}) => ({\n label,\n amount,\n unit,\n period,\n })\n );\n }\n\n private formatFacetValue(facetValue: DateFacetValue) {\n try {\n const startDate = this.props.deserializeRelativeDate(facetValue.start);\n const relativeDate =\n startDate.period === 'past'\n ? startDate\n : this.props.deserializeRelativeDate(facetValue.end);\n const timeframe = this.getManualTimeframes().find(\n (timeframe) =>\n timeframe.period === relativeDate.period &&\n timeframe.unit === relativeDate.unit &&\n timeframe.amount === relativeDate.amount\n );\n\n if (timeframe?.label) {\n return getFieldValueCaption(\n this.props.field,\n timeframe.label,\n this.props.bindings.i18n\n );\n }\n return this.props.bindings.i18n.t(\n `${relativeDate.period}-${relativeDate.unit}`,\n {\n count: relativeDate.amount,\n }\n );\n } catch (error) {\n return this.props.bindings.i18n.t('to', {\n start: parseDate(facetValue.start).format('YYYY-MM-DD'),\n end: parseDate(facetValue.end).format('YYYY-MM-DD'),\n });\n }\n }\n private renderValues() {\n return this.renderValuesContainer(\n this.valuesToRender.map((value) => this.renderValue(value))\n );\n }\n private renderValue(facetValue: DateFacetValue) {\n const displayValue = this.formatFacetValue(facetValue);\n const isSelected = facetValue.state === 'selected';\n const isExcluded = facetValue.state === 'excluded';\n return (\n <FacetValueLink\n displayValue={displayValue}\n isSelected={isSelected}\n numberOfResults={facetValue.numberOfResults}\n i18n={this.props.bindings.i18n}\n onClick={() => this.facetForDateRange!.toggleSingleSelect(facetValue)}\n >\n <FacetValueLabelHighlight\n displayValue={displayValue}\n isSelected={isSelected}\n isExcluded={isExcluded}\n ></FacetValueLabelHighlight>\n </FacetValueLink>\n );\n }\n\n private renderValuesContainer(children: VNode[]) {\n return (\n <FacetValuesGroup\n i18n={this.props.bindings.i18n}\n label={this.props.label}\n >\n <ul class=\"mt-3\" part=\"values\">\n {children}\n </ul>\n </FacetValuesGroup>\n );\n }\n\n private renderHeader(\n isCollapsed: boolean,\n headerFocus: FocusTargetController,\n onToggleCollapse: () => void\n ) {\n return (\n <FacetHeader\n i18n={this.props.bindings.i18n}\n label={this.props.label}\n onClearFilters={() => {\n headerFocus.focusAfterSearch();\n if (this.filter?.state.range) {\n this.filter?.clear();\n return;\n }\n this.facetForDateRange?.deselectAll();\n }}\n numberOfActiveValues={this.numberOfSelectedValues}\n isCollapsed={isCollapsed}\n headingLevel={this.props.headingLevel}\n onToggleCollapse={onToggleCollapse}\n headerRef={(el) => headerFocus.setTarget(el)}\n ></FacetHeader>\n );\n }\n\n private renderDateInput() {\n return (\n <atomic-stencil-facet-date-input\n min={this.props.min}\n max={this.props.max}\n bindings={this.props.bindings}\n label={this.props.label}\n facetId={this.filter!.state!.facetId}\n rangeGetter={() => this.filter!.state.range}\n rangeSetter={(request: DateRangeRequest) => {\n this.filter!.setRange(request);\n }}\n ></atomic-stencil-facet-date-input>\n );\n }\n\n public render({\n hasError,\n firstSearchExecuted,\n isCollapsed,\n headerFocus,\n onToggleCollapse,\n }: TimeframeFacetCommonRenderProps) {\n if (hasError || !this.enabled) {\n return <Hidden></Hidden>;\n }\n\n if (!firstSearchExecuted) {\n return (\n <FacetPlaceholder\n numberOfValues={this.currentValues.length}\n isCollapsed={isCollapsed}\n ></FacetPlaceholder>\n );\n }\n\n if (!this.shouldRenderFacet) {\n return <Hidden></Hidden>;\n }\n\n return (\n <FacetContainer>\n {this.renderHeader(isCollapsed, headerFocus, onToggleCollapse)}\n {!isCollapsed && [\n this.shouldRenderValues && this.renderValues(),\n this.shouldRenderInput && this.renderDateInput(),\n ]}\n </FacetContainer>\n );\n }\n}\n"],"version":3}
@@ -1,2 +1,2 @@
1
- module.exports.headlessVersion = '3.31.2';
2
- module.exports.atomicVersion = '3.35.0-pre.e757e0d8ec';
1
+ module.exports.headlessVersion = '3.31.3-pre.e810c8aade';
2
+ module.exports.atomicVersion = '3.35.0-pre.e810c8aade';
@@ -1,7 +1,6 @@
1
1
  import { c as closest } from './dom-utils-f6086cd3.js';
2
2
  import { b as buildCustomEvent } from './event-utils-8de63ec3.js';
3
3
  import { i as itemContext } from './stencil-item-decorators-6c453c11.js';
4
- export { d as dispatchSearchBoxSuggestionsEvent } from './suggestions-events-b7a6f007.js';
5
4
  export { e as elementHasNoQuery, a as elementHasQuery } from './suggestions-utils-591559a0.js';
6
5
  export { r as resultContext } from './stencil-result-template-decorators-f989bc6b.js';
7
6
  export { i as initializeBindings } from './initialization-utils-ffbc4136.js';
@@ -60,6 +59,40 @@ function productContext(element) {
60
59
  return itemContext(element, 'atomic-product');
61
60
  }
62
61
 
63
- export { fetchProductContext, productContext };
62
+ /**
63
+ * Dispatches an event which retrieves the `SearchBoxSuggestionsBindings` on a configured parent search box.
64
+ *
65
+ * @param event Event sent from the registered query suggestions to the parent search box
66
+ * @param element Element on which to dispatch the event, which must be the child of a configured search box
67
+ * @param allowedSearchBoxElements Optional array of allowed search box element selectors
68
+ *
69
+ * @throws Error if the element is not a child of an allowed search box element
70
+ */
71
+ const dispatchSearchBoxSuggestionsEvent = (event, element, allowedSearchBoxElements = searchBoxElements) => {
72
+ const interfaceElement = closest(element, searchBoxElements.join(', '));
73
+ if (!interfaceElement) {
74
+ throw new Error(`The "${element.nodeName.toLowerCase()}" component was not handled, as it is not a child of the following elements: ${allowedSearchBoxElements.join(', ')}`);
75
+ }
76
+ void dispatchSearchBoxSuggestionsEventEventually(interfaceElement, element, event);
77
+ };
78
+ const searchBoxElements = [
79
+ 'atomic-search-box',
80
+ 'atomic-insight-search-box',
81
+ 'atomic-commerce-search-box',
82
+ ];
83
+ const isLitElementLoosely = (candidate) => 'updateComplete' in candidate &&
84
+ candidate.updateComplete instanceof Promise;
85
+ const dispatchSearchBoxSuggestionsEventEventually = async (interfaceElement, element, event) => {
86
+ await customElements.whenDefined(interfaceElement.nodeName.toLowerCase());
87
+ if (isLitElementLoosely(interfaceElement)) {
88
+ await interfaceElement.updateComplete;
89
+ }
90
+ else if ('componentOnReady' in interfaceElement) {
91
+ await interfaceElement.componentOnReady();
92
+ }
93
+ element.dispatchEvent(buildCustomEvent('atomic/searchBoxSuggestion/register', event));
94
+ };
95
+
96
+ export { dispatchSearchBoxSuggestionsEvent, fetchProductContext, productContext };
64
97
 
65
98
  //# sourceMappingURL=index.js.map