@coveo/atomic 3.33.8-pre.fbe332fd49 → 3.33.9-pre.158cee9fec

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 (428) 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/autoloader/index.cjs.js +2 -2
  4. package/dist/atomic/autoloader/index.esm.js +2 -2
  5. package/dist/atomic/components/_index.d.ts +2 -2
  6. package/dist/atomic/components/_index.js +1 -1
  7. package/dist/atomic/components/analytics-config.js +1 -1
  8. package/dist/atomic/components/atomic-citation.js +1 -1
  9. package/dist/atomic/components/atomic-facet-manager.js +1 -1
  10. package/dist/atomic/components/atomic-generated-answer-feedback-modal.js +1 -1
  11. package/dist/atomic/components/atomic-html2.js +1 -1
  12. package/dist/atomic/components/atomic-insight-edit-toggle.js +1 -1
  13. package/dist/atomic/components/atomic-insight-facet.js +1 -1
  14. package/dist/atomic/components/atomic-insight-folded-result-list.js +1 -1
  15. package/dist/atomic/components/atomic-insight-full-search-button.js +1 -1
  16. package/dist/atomic/components/atomic-insight-history-toggle.js +1 -1
  17. package/dist/atomic/components/atomic-insight-interface.js +1 -1
  18. package/dist/atomic/components/atomic-insight-no-results.js +1 -1
  19. package/dist/atomic/components/atomic-insight-numeric-facet.js +1 -1
  20. package/dist/atomic/components/atomic-insight-pager.js +5 -41
  21. package/dist/atomic/components/atomic-insight-pager.js.map +1 -1
  22. package/dist/atomic/components/atomic-insight-query-error.js +1 -1
  23. package/dist/atomic/components/atomic-insight-refine-modal2.js +2 -2
  24. package/dist/atomic/components/atomic-insight-refine-toggle.js +1 -1
  25. package/dist/atomic/components/atomic-insight-result-action.js +1 -1
  26. package/dist/atomic/components/atomic-insight-result-attach-to-case-action.js +1 -1
  27. package/dist/atomic/components/atomic-insight-result-attach-to-case-indicator.js +1 -1
  28. package/dist/atomic/components/atomic-insight-result-children.js +1 -1
  29. package/dist/atomic/components/atomic-insight-result-list.js +1 -1
  30. package/dist/atomic/components/atomic-insight-result-quickview-action.js +1 -1
  31. package/dist/atomic/components/atomic-insight-result2.js +1 -1
  32. package/dist/atomic/components/atomic-insight-search-box.js +2 -2
  33. package/dist/atomic/components/atomic-insight-smart-snippet-feedback-modal2.js +2 -2
  34. package/dist/atomic/components/atomic-insight-tabs.js +1 -1
  35. package/dist/atomic/components/atomic-insight-user-actions-session2.js +1 -1
  36. package/dist/atomic/components/atomic-insight-user-actions-toggle.js +1 -1
  37. package/dist/atomic/components/atomic-ipx-body2.js +2 -2
  38. package/dist/atomic/components/atomic-ipx-button.js +2 -2
  39. package/dist/atomic/components/atomic-ipx-embedded.js +1 -1
  40. package/dist/atomic/components/atomic-ipx-modal.js +2 -2
  41. package/dist/atomic/components/atomic-ipx-recs-list.js +1 -1
  42. package/dist/atomic/components/atomic-ipx-refine-modal2.js +1 -1
  43. package/dist/atomic/components/atomic-ipx-refine-toggle.js +1 -1
  44. package/dist/atomic/components/atomic-ipx-result-link.js +1 -1
  45. package/dist/atomic/components/atomic-ipx-tabs.js +1 -1
  46. package/dist/atomic/components/atomic-load-more-results.js +1 -1
  47. package/dist/atomic/components/atomic-no-results.js +1 -1
  48. package/dist/atomic/components/atomic-numeric-facet.js +1 -0
  49. package/dist/atomic/components/atomic-numeric-facet.js.map +1 -1
  50. package/dist/atomic/components/atomic-pager.d.ts +11 -0
  51. package/dist/atomic/components/atomic-pager.js +134 -0
  52. package/dist/atomic/components/atomic-pager.js.map +1 -0
  53. package/dist/atomic/components/atomic-query-error.js +1 -1
  54. package/dist/atomic/components/atomic-recs-error.js +1 -1
  55. package/dist/atomic/components/atomic-recs-interface.js +1 -1
  56. package/dist/atomic/components/atomic-recs-list.js +1 -1
  57. package/dist/atomic/components/atomic-refine-modal2.js +1 -1
  58. package/dist/atomic/components/atomic-refine-toggle.js +1 -1
  59. package/dist/atomic/components/atomic-relevance-inspector.js +46 -1
  60. package/dist/atomic/components/atomic-relevance-inspector.js.map +1 -1
  61. package/dist/atomic/components/atomic-result-placeholder2.js +2 -2
  62. package/dist/atomic/components/atomic-result-table-placeholder2.js +1 -1
  63. package/dist/atomic/components/atomic-search-box-instant-results.js +1 -1
  64. package/dist/atomic/components/atomic-search-box.js +15 -4
  65. package/dist/atomic/components/atomic-search-box.js.map +1 -1
  66. package/dist/atomic/components/atomic-smart-snippet-answer2.js +1 -1
  67. package/dist/atomic/components/atomic-smart-snippet-collapse-wrapper2.js +2 -2
  68. package/dist/atomic/components/atomic-smart-snippet-expandable-answer2.js +1 -1
  69. package/dist/atomic/components/atomic-smart-snippet-source2.js +1 -1
  70. package/dist/atomic/components/atomic-stencil-facet-date-input.js +3 -3
  71. package/dist/atomic/components/atomic-suggestion-renderer2.js +1 -1
  72. package/dist/atomic/components/components/commerce/atomic-commerce-interface/atomic-commerce-interface.js +50 -8
  73. package/dist/atomic/components/components/commerce/atomic-commerce-query-summary/atomic-commerce-query-summary.js +2 -2
  74. package/dist/atomic/components/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.js +25 -10
  75. package/dist/atomic/components/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.js +12 -5
  76. package/dist/atomic/components/components/common/atomic-modal/atomic-modal.js +2 -0
  77. package/dist/atomic/components/components/common/formats/format-common.js +1 -1
  78. package/dist/atomic/components/components/search/atomic-search-interface/analytics-config.js +57 -0
  79. package/dist/atomic/components/components/search/atomic-search-interface/atomic-search-interface.js +496 -0
  80. package/dist/atomic/components/components/search/atomic-search-layout/atomic-search-layout.js +20 -9
  81. package/dist/atomic/components/components/search/index.js +1 -1
  82. package/dist/atomic/components/components/search/lazy-index.js +1 -1
  83. package/dist/atomic/components/depends-on.js +28 -28
  84. package/dist/atomic/components/depends-on.js.map +1 -1
  85. package/dist/atomic/components/facet-number-input.js +2 -2
  86. package/dist/atomic/components/format-common.js.map +1 -1
  87. package/dist/atomic/components/global/environment.js +1 -1
  88. package/dist/atomic/components/stencil-pager-navigation.js +42 -0
  89. package/dist/atomic/components/stencil-pager-navigation.js.map +1 -0
  90. package/dist/atomic/components/tab-button.js +1 -1
  91. package/dist/atomic/components/tab-popover.js +1 -1
  92. package/dist/atomic/{p-6329ff94.entry.js → p-004adbb8.entry.js} +2 -2
  93. package/dist/atomic/{p-d0f47b33.entry.js → p-00a6ab8c.entry.js} +2 -2
  94. package/dist/atomic/{p-3b20b011.entry.js → p-0610b3e7.entry.js} +2 -2
  95. package/dist/atomic/{p-ee6771f1.entry.js → p-07b6424c.entry.js} +2 -2
  96. package/dist/atomic/{p-2f8de0b9.entry.js → p-07fbb49a.entry.js} +2 -2
  97. package/dist/atomic/{p-811d6dcb.entry.js → p-0b3f6994.entry.js} +2 -2
  98. package/dist/atomic/{p-83c9244a.entry.js → p-0e27d4f2.entry.js} +2 -2
  99. package/dist/atomic/{p-c126ee6b.entry.js → p-0e5dc57f.entry.js} +2 -2
  100. package/dist/atomic/p-0edea6f9.entry.js +2 -0
  101. package/dist/atomic/{p-20341936.entry.js → p-10b5e0f3.entry.js} +2 -2
  102. package/dist/atomic/{p-2ca352f4.entry.js → p-15406648.entry.js} +2 -2
  103. package/dist/atomic/{p-a3efa89e.entry.js → p-160553ce.entry.js} +2 -2
  104. package/dist/atomic/p-211d7d6a.js +2 -0
  105. package/dist/atomic/p-211d7d6a.js.map +1 -0
  106. package/dist/atomic/p-25a96534.js.map +1 -1
  107. package/dist/atomic/{p-757de797.entry.js → p-2a4e9425.entry.js} +2 -2
  108. package/dist/atomic/{p-26a51a77.entry.js → p-3213225f.entry.js} +2 -2
  109. package/dist/atomic/{p-d11b2b24.entry.js → p-383f66dc.entry.js} +2 -2
  110. package/dist/atomic/{p-e1865f9f.entry.js → p-40fcbb35.entry.js} +2 -2
  111. package/dist/atomic/{p-e8d5e852.entry.js → p-41c5d5fa.entry.js} +2 -2
  112. package/dist/atomic/{p-e23b3334.entry.js → p-441b1a7b.entry.js} +2 -2
  113. package/dist/atomic/{p-e514cdb2.entry.js → p-4a74f4a3.entry.js} +2 -2
  114. package/dist/atomic/p-6de44060.entry.js +2 -0
  115. package/dist/atomic/p-6de44060.entry.js.map +1 -0
  116. package/dist/atomic/{p-c1999888.entry.js → p-754909fe.entry.js} +2 -2
  117. package/dist/atomic/p-79a9a372.entry.js +2 -0
  118. package/dist/atomic/{p-fb7ad34b.entry.js.map → p-79a9a372.entry.js.map} +1 -1
  119. package/dist/atomic/{p-36fab158.entry.js → p-7a6468a7.entry.js} +2 -2
  120. package/dist/atomic/{p-3a2c900c.entry.js → p-7b1a3cab.entry.js} +2 -2
  121. package/dist/atomic/{p-d93adf52.entry.js → p-7d63bf7b.entry.js} +2 -2
  122. package/dist/atomic/{p-d364064c.entry.js → p-7f40e57d.entry.js} +2 -2
  123. package/dist/atomic/{p-d785121d.entry.js → p-856e858c.entry.js} +2 -2
  124. package/dist/atomic/{p-e162805d.entry.js → p-8a7a23b7.entry.js} +2 -2
  125. package/dist/atomic/{p-604c4085.entry.js → p-8df7270f.entry.js} +2 -2
  126. package/dist/atomic/{p-8256cd44.entry.js → p-9147b0db.entry.js} +2 -2
  127. package/dist/atomic/{p-37374964.entry.js → p-9727f36b.entry.js} +2 -2
  128. package/dist/atomic/p-97829295.entry.js +2 -0
  129. package/dist/atomic/{p-31aa052e.entry.js → p-97e42c43.entry.js} +2 -2
  130. package/dist/atomic/{p-9883415e.entry.js → p-9b92b4e2.entry.js} +2 -2
  131. package/dist/atomic/{p-1ef658d8.entry.js → p-9d023f0b.entry.js} +2 -2
  132. package/dist/atomic/{p-40635c2d.entry.js → p-9e771351.entry.js} +2 -2
  133. package/dist/atomic/{p-035f8dc8.entry.js → p-a3fa6695.entry.js} +2 -2
  134. package/dist/atomic/{p-470f88ed.entry.js → p-a42e3b8f.entry.js} +2 -2
  135. package/dist/atomic/{p-f0c2dfe8.entry.js → p-abb14108.entry.js} +2 -2
  136. package/dist/atomic/{p-48f57fd8.entry.js → p-b0c50194.entry.js} +2 -2
  137. package/dist/atomic/{p-b0b17e21.entry.js → p-b4c34553.entry.js} +2 -2
  138. package/dist/atomic/{p-98c5b9b8.entry.js → p-b6377fb6.entry.js} +2 -2
  139. package/dist/atomic/{p-08794435.entry.js → p-ba650801.entry.js} +2 -2
  140. package/dist/atomic/{p-ea446721.entry.js → p-bd32625e.entry.js} +2 -2
  141. package/dist/atomic/{p-939eaaac.entry.js → p-bd99fcc1.entry.js} +2 -2
  142. package/dist/atomic/{p-534b6a0a.entry.js → p-bf1dff76.entry.js} +2 -2
  143. package/dist/atomic/{p-99b8d52d.entry.js → p-bf49fed3.entry.js} +2 -2
  144. package/dist/atomic/{p-3f912e98.entry.js → p-c08f4ee6.entry.js} +2 -2
  145. package/dist/atomic/p-c2b4b401.entry.js +2 -0
  146. package/dist/atomic/{p-a53c7821.entry.js → p-c538c8ac.entry.js} +2 -2
  147. package/dist/atomic/{p-ca762513.entry.js → p-c889adbd.entry.js} +2 -2
  148. package/dist/atomic/{p-43d708cb.entry.js → p-c9fe4f77.entry.js} +2 -2
  149. package/dist/atomic/{p-031670fe.js → p-cbeeff3c.js} +2 -2
  150. package/dist/atomic/{p-00e5bb15.entry.js → p-ce41c447.entry.js} +2 -2
  151. package/dist/atomic/{p-6f988841.entry.js → p-d282e943.entry.js} +2 -2
  152. package/dist/atomic/{p-6f988841.entry.js.map → p-d282e943.entry.js.map} +1 -1
  153. package/dist/atomic/p-d4ad7336.entry.js +2 -0
  154. package/dist/atomic/p-d4ad7336.entry.js.map +1 -0
  155. package/dist/atomic/{p-627e1265.entry.js → p-d50c96c2.entry.js} +2 -2
  156. package/dist/atomic/p-dafbe2ef.js +2 -0
  157. package/dist/atomic/p-dafbe2ef.js.map +1 -0
  158. package/dist/atomic/{p-bc0d6d3d.entry.js → p-dee60597.entry.js} +2 -2
  159. package/dist/atomic/{p-b2ff1330.entry.js → p-e1c99e2e.entry.js} +2 -2
  160. package/dist/atomic/{p-6e6d686e.entry.js → p-e3af1bb4.entry.js} +2 -2
  161. package/dist/atomic/{p-bf50b64d.entry.js → p-e6a7e7b2.entry.js} +2 -2
  162. package/dist/atomic/{p-594488f2.entry.js → p-f0012580.entry.js} +2 -2
  163. package/dist/atomic/{p-fbe37f4b.entry.js → p-f8d62605.entry.js} +2 -2
  164. package/dist/atomic/{p-bdbbb47b.entry.js → p-f8ded37c.entry.js} +2 -2
  165. package/dist/atomic/{p-fea7bf3b.entry.js → p-f936f55e.entry.js} +2 -2
  166. package/dist/atomic/{p-fbfe913d.entry.js → p-fb1a1e2e.entry.js} +2 -2
  167. package/dist/atomic/{p-3af5c567.entry.js → p-fd1326ad.entry.js} +2 -2
  168. package/dist/cjs/_loader.cjs.js +1 -1
  169. package/dist/cjs/{analytics-config-e3890e2c.js → analytics-config-b87d0e8c.js} +2 -2
  170. package/dist/cjs/{analytics-config-e3890e2c.js.map → analytics-config-b87d0e8c.js.map} +1 -1
  171. package/dist/cjs/atomic-category-facet.cjs.entry.js +1 -1
  172. package/dist/cjs/atomic-citation.cjs.entry.js +1 -1
  173. package/dist/cjs/atomic-color-facet.cjs.entry.js +1 -1
  174. package/dist/cjs/atomic-facet-manager.cjs.entry.js +1 -1
  175. package/dist/cjs/atomic-facet-number-input.cjs.entry.js +2 -2
  176. package/dist/cjs/atomic-facet.cjs.entry.js +1 -1
  177. package/dist/cjs/atomic-generated-answer-feedback-modal.cjs.entry.js +1 -1
  178. package/dist/cjs/atomic-html.cjs.entry.js +1 -1
  179. package/dist/cjs/atomic-insight-edit-toggle.cjs.entry.js +1 -1
  180. package/dist/cjs/atomic-insight-facet.cjs.entry.js +2 -2
  181. package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js +1 -1
  182. package/dist/cjs/atomic-insight-full-search-button.cjs.entry.js +1 -1
  183. package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js +1 -1
  184. package/dist/cjs/atomic-insight-interface.cjs.entry.js +2 -2
  185. package/dist/cjs/atomic-insight-no-results.cjs.entry.js +1 -1
  186. package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js +2 -2
  187. package/dist/cjs/atomic-insight-pager.cjs.entry.js +7 -41
  188. package/dist/cjs/atomic-insight-pager.cjs.entry.js.map +1 -1
  189. package/dist/cjs/atomic-insight-query-error.cjs.entry.js +1 -1
  190. package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js +2 -2
  191. package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js +1 -1
  192. package/dist/cjs/atomic-insight-result-action.cjs.entry.js +1 -1
  193. package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js +1 -1
  194. package/dist/cjs/atomic-insight-result-attach-to-case-indicator.cjs.entry.js +1 -1
  195. package/dist/cjs/atomic-insight-result-children.cjs.entry.js +1 -1
  196. package/dist/cjs/atomic-insight-result-list.cjs.entry.js +1 -1
  197. package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js +1 -1
  198. package/dist/cjs/atomic-insight-result.cjs.entry.js +1 -1
  199. package/dist/cjs/atomic-insight-search-box.cjs.entry.js +2 -2
  200. package/dist/cjs/atomic-insight-smart-snippet-feedback-modal.cjs.entry.js +2 -2
  201. package/dist/cjs/atomic-insight-tabs.cjs.entry.js +1 -1
  202. package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js +1 -1
  203. package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js +1 -1
  204. package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js +1 -1
  205. package/dist/cjs/atomic-ipx-body.cjs.entry.js +2 -2
  206. package/dist/cjs/atomic-ipx-button.cjs.entry.js +2 -2
  207. package/dist/cjs/atomic-ipx-embedded.cjs.entry.js +1 -1
  208. package/dist/cjs/atomic-ipx-modal.cjs.entry.js +2 -2
  209. package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +1 -1
  210. package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js +1 -1
  211. package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js +1 -1
  212. package/dist/cjs/atomic-ipx-result-link.cjs.entry.js +1 -1
  213. package/dist/cjs/atomic-ipx-tabs.cjs.entry.js +1 -1
  214. package/dist/cjs/atomic-load-more-results.cjs.entry.js +1 -1
  215. package/dist/cjs/atomic-no-results.cjs.entry.js +1 -1
  216. package/dist/cjs/atomic-numeric-facet.cjs.entry.js +2 -1
  217. package/dist/cjs/atomic-numeric-facet.cjs.entry.js.map +1 -1
  218. package/dist/cjs/atomic-pager.cjs.entry.js +121 -0
  219. package/dist/cjs/atomic-pager.cjs.entry.js.map +1 -0
  220. package/dist/cjs/atomic-query-error.cjs.entry.js +1 -1
  221. package/dist/cjs/atomic-rating-facet.cjs.entry.js +1 -1
  222. package/dist/cjs/atomic-rating-range-facet.cjs.entry.js +1 -1
  223. package/dist/cjs/atomic-recs-error.cjs.entry.js +1 -1
  224. package/dist/cjs/atomic-recs-interface.cjs.entry.js +2 -2
  225. package/dist/cjs/atomic-recs-list.cjs.entry.js +1 -1
  226. package/dist/cjs/atomic-refine-modal.cjs.entry.js +1 -1
  227. package/dist/cjs/atomic-refine-toggle.cjs.entry.js +1 -1
  228. package/dist/cjs/atomic-relevance-inspector.cjs.entry.js +2 -2
  229. package/dist/cjs/atomic-result-placeholder_8.cjs.entry.js +3 -3
  230. package/dist/cjs/atomic-search-box-instant-results.cjs.entry.js +1 -1
  231. package/dist/cjs/atomic-search-box.cjs.entry.js +15 -4
  232. package/dist/cjs/atomic-search-box.cjs.entry.js.map +1 -1
  233. package/dist/cjs/atomic-segmented-facet.cjs.entry.js +1 -1
  234. package/dist/cjs/atomic-smart-snippet-answer_2.cjs.entry.js +2 -2
  235. package/dist/cjs/atomic-smart-snippet-collapse-wrapper_2.cjs.entry.js +3 -3
  236. package/dist/cjs/atomic-stencil-facet-date-input.cjs.entry.js +3 -3
  237. package/dist/cjs/atomic-suggestion-renderer.cjs.entry.js +1 -1
  238. package/dist/cjs/atomic-tab-bar_2.cjs.entry.js +1 -1
  239. package/dist/cjs/atomic-tab-button.cjs.entry.js +1 -1
  240. package/dist/cjs/atomic-timeframe-facet.cjs.entry.js +1 -1
  241. package/dist/cjs/atomic.cjs.js +1 -1
  242. package/dist/cjs/depends-on-f0cf3617.js +68 -0
  243. package/dist/cjs/depends-on-f0cf3617.js.map +1 -0
  244. package/dist/cjs/format-common-4aa8aa88.js.map +1 -1
  245. package/dist/cjs/index-757bc886.js +8 -8
  246. package/dist/cjs/stencil-pager-navigation-c20b8a95.js +48 -0
  247. package/dist/cjs/stencil-pager-navigation-c20b8a95.js.map +1 -0
  248. package/dist/cjs/version.cjs.js +2 -2
  249. package/dist/esm/_loader.js +1 -1
  250. package/dist/esm/{analytics-config-76f4b38f.js → analytics-config-c8e57c0a.js} +2 -2
  251. package/dist/esm/{analytics-config-76f4b38f.js.map → analytics-config-c8e57c0a.js.map} +1 -1
  252. package/dist/esm/atomic-category-facet.entry.js +1 -1
  253. package/dist/esm/atomic-citation.entry.js +1 -1
  254. package/dist/esm/atomic-color-facet.entry.js +1 -1
  255. package/dist/esm/atomic-facet-manager.entry.js +1 -1
  256. package/dist/esm/atomic-facet-number-input.entry.js +2 -2
  257. package/dist/esm/atomic-facet.entry.js +1 -1
  258. package/dist/esm/atomic-generated-answer-feedback-modal.entry.js +1 -1
  259. package/dist/esm/atomic-html.entry.js +1 -1
  260. package/dist/esm/atomic-insight-edit-toggle.entry.js +1 -1
  261. package/dist/esm/atomic-insight-facet.entry.js +2 -2
  262. package/dist/esm/atomic-insight-folded-result-list.entry.js +1 -1
  263. package/dist/esm/atomic-insight-full-search-button.entry.js +1 -1
  264. package/dist/esm/atomic-insight-history-toggle.entry.js +1 -1
  265. package/dist/esm/atomic-insight-interface.entry.js +2 -2
  266. package/dist/esm/atomic-insight-no-results.entry.js +1 -1
  267. package/dist/esm/atomic-insight-numeric-facet.entry.js +2 -2
  268. package/dist/esm/atomic-insight-pager.entry.js +7 -41
  269. package/dist/esm/atomic-insight-pager.entry.js.map +1 -1
  270. package/dist/esm/atomic-insight-query-error.entry.js +1 -1
  271. package/dist/esm/atomic-insight-refine-modal.entry.js +2 -2
  272. package/dist/esm/atomic-insight-refine-toggle.entry.js +1 -1
  273. package/dist/esm/atomic-insight-result-action.entry.js +1 -1
  274. package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js +1 -1
  275. package/dist/esm/atomic-insight-result-attach-to-case-indicator.entry.js +1 -1
  276. package/dist/esm/atomic-insight-result-children.entry.js +1 -1
  277. package/dist/esm/atomic-insight-result-list.entry.js +1 -1
  278. package/dist/esm/atomic-insight-result-quickview-action.entry.js +1 -1
  279. package/dist/esm/atomic-insight-result.entry.js +1 -1
  280. package/dist/esm/atomic-insight-search-box.entry.js +2 -2
  281. package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js +2 -2
  282. package/dist/esm/atomic-insight-tabs.entry.js +1 -1
  283. package/dist/esm/atomic-insight-timeframe-facet.entry.js +1 -1
  284. package/dist/esm/atomic-insight-user-actions-session_2.entry.js +1 -1
  285. package/dist/esm/atomic-insight-user-actions-toggle.entry.js +1 -1
  286. package/dist/esm/atomic-ipx-body.entry.js +2 -2
  287. package/dist/esm/atomic-ipx-button.entry.js +2 -2
  288. package/dist/esm/atomic-ipx-embedded.entry.js +1 -1
  289. package/dist/esm/atomic-ipx-modal.entry.js +2 -2
  290. package/dist/esm/atomic-ipx-recs-list.entry.js +1 -1
  291. package/dist/esm/atomic-ipx-refine-modal.entry.js +1 -1
  292. package/dist/esm/atomic-ipx-refine-toggle.entry.js +1 -1
  293. package/dist/esm/atomic-ipx-result-link.entry.js +1 -1
  294. package/dist/esm/atomic-ipx-tabs.entry.js +1 -1
  295. package/dist/esm/atomic-load-more-results.entry.js +1 -1
  296. package/dist/esm/atomic-no-results.entry.js +1 -1
  297. package/dist/esm/atomic-numeric-facet.entry.js +2 -1
  298. package/dist/esm/atomic-numeric-facet.entry.js.map +1 -1
  299. package/dist/esm/atomic-pager.entry.js +117 -0
  300. package/dist/esm/atomic-pager.entry.js.map +1 -0
  301. package/dist/esm/atomic-query-error.entry.js +1 -1
  302. package/dist/esm/atomic-rating-facet.entry.js +1 -1
  303. package/dist/esm/atomic-rating-range-facet.entry.js +1 -1
  304. package/dist/esm/atomic-recs-error.entry.js +1 -1
  305. package/dist/esm/atomic-recs-interface.entry.js +2 -2
  306. package/dist/esm/atomic-recs-list.entry.js +1 -1
  307. package/dist/esm/atomic-refine-modal.entry.js +1 -1
  308. package/dist/esm/atomic-refine-toggle.entry.js +1 -1
  309. package/dist/esm/atomic-relevance-inspector.entry.js +2 -2
  310. package/dist/esm/atomic-result-placeholder_8.entry.js +3 -3
  311. package/dist/esm/atomic-search-box-instant-results.entry.js +1 -1
  312. package/dist/esm/atomic-search-box.entry.js +15 -4
  313. package/dist/esm/atomic-search-box.entry.js.map +1 -1
  314. package/dist/esm/atomic-segmented-facet.entry.js +1 -1
  315. package/dist/esm/atomic-smart-snippet-answer_2.entry.js +2 -2
  316. package/dist/esm/atomic-smart-snippet-collapse-wrapper_2.entry.js +3 -3
  317. package/dist/esm/atomic-stencil-facet-date-input.entry.js +3 -3
  318. package/dist/esm/atomic-suggestion-renderer.entry.js +1 -1
  319. package/dist/esm/atomic-tab-bar_2.entry.js +1 -1
  320. package/dist/esm/atomic-tab-button.entry.js +1 -1
  321. package/dist/esm/atomic-timeframe-facet.entry.js +1 -1
  322. package/dist/esm/atomic.js +1 -1
  323. package/dist/esm/depends-on-20dabb86.js +66 -0
  324. package/dist/esm/depends-on-20dabb86.js.map +1 -0
  325. package/dist/esm/format-common-274e0f7c.js.map +1 -1
  326. package/dist/esm/index-3f35faca.js +8 -8
  327. package/dist/esm/stencil-pager-navigation-7261a834.js +42 -0
  328. package/dist/esm/stencil-pager-navigation-7261a834.js.map +1 -0
  329. package/dist/esm/version.js +2 -2
  330. package/dist/types/components/commerce/atomic-commerce-interface/atomic-commerce-interface.d.ts +30 -2
  331. package/dist/types/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.d.ts +1 -0
  332. package/dist/types/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.d.ts +1 -0
  333. package/dist/types/components/search/atomic-pager/atomic-pager.d.ts +16 -26
  334. package/dist/types/components/search/atomic-search-box/atomic-search-box.d.ts +1 -0
  335. package/dist/types/components/search/atomic-search-interface/atomic-search-interface.d.ts +46 -44
  336. package/dist/types/components/search/atomic-search-interface/interfaces.d.ts +2 -1
  337. package/dist/types/components/search/atomic-search-layout/atomic-search-layout.d.ts +3 -1
  338. package/dist/types/components/search/index.d.ts +1 -1
  339. package/dist/types/components.d.ts +67 -165
  340. package/docs/atomic-docs.json +251 -648
  341. package/package.json +4 -4
  342. package/dist/atomic/components/atomic-relevance-inspector2.js +0 -50
  343. package/dist/atomic/components/atomic-relevance-inspector2.js.map +0 -1
  344. package/dist/atomic/components/atomic-search-interface.d.ts +0 -11
  345. package/dist/atomic/components/atomic-search-interface.js +0 -552
  346. package/dist/atomic/components/atomic-search-interface.js.map +0 -1
  347. package/dist/atomic/components/components/search/atomic-pager/atomic-pager.js +0 -175
  348. package/dist/atomic/p-0f13077e.js +0 -2
  349. package/dist/atomic/p-0f13077e.js.map +0 -1
  350. package/dist/atomic/p-1992b245.entry.js +0 -2
  351. package/dist/atomic/p-43c16eeb.entry.js +0 -2
  352. package/dist/atomic/p-43c16eeb.entry.js.map +0 -1
  353. package/dist/atomic/p-593903ec.entry.js +0 -2
  354. package/dist/atomic/p-593903ec.entry.js.map +0 -1
  355. package/dist/atomic/p-d24d34a7.entry.js +0 -2
  356. package/dist/atomic/p-e2afb475.entry.js +0 -2
  357. package/dist/atomic/p-fb7ad34b.entry.js +0 -2
  358. package/dist/cjs/atomic-search-interface.cjs.entry.js +0 -511
  359. package/dist/cjs/atomic-search-interface.cjs.entry.js.map +0 -1
  360. package/dist/cjs/depends-on-0d4e4f15.js +0 -68
  361. package/dist/cjs/depends-on-0d4e4f15.js.map +0 -1
  362. package/dist/esm/atomic-search-interface.entry.js +0 -507
  363. package/dist/esm/atomic-search-interface.entry.js.map +0 -1
  364. package/dist/esm/depends-on-d73b0ce3.js +0 -66
  365. package/dist/esm/depends-on-d73b0ce3.js.map +0 -1
  366. /package/dist/atomic/{p-6329ff94.entry.js.map → p-004adbb8.entry.js.map} +0 -0
  367. /package/dist/atomic/{p-d0f47b33.entry.js.map → p-00a6ab8c.entry.js.map} +0 -0
  368. /package/dist/atomic/{p-3b20b011.entry.js.map → p-0610b3e7.entry.js.map} +0 -0
  369. /package/dist/atomic/{p-ee6771f1.entry.js.map → p-07b6424c.entry.js.map} +0 -0
  370. /package/dist/atomic/{p-2f8de0b9.entry.js.map → p-07fbb49a.entry.js.map} +0 -0
  371. /package/dist/atomic/{p-811d6dcb.entry.js.map → p-0b3f6994.entry.js.map} +0 -0
  372. /package/dist/atomic/{p-83c9244a.entry.js.map → p-0e27d4f2.entry.js.map} +0 -0
  373. /package/dist/atomic/{p-c126ee6b.entry.js.map → p-0e5dc57f.entry.js.map} +0 -0
  374. /package/dist/atomic/{p-1992b245.entry.js.map → p-0edea6f9.entry.js.map} +0 -0
  375. /package/dist/atomic/{p-20341936.entry.js.map → p-10b5e0f3.entry.js.map} +0 -0
  376. /package/dist/atomic/{p-2ca352f4.entry.js.map → p-15406648.entry.js.map} +0 -0
  377. /package/dist/atomic/{p-a3efa89e.entry.js.map → p-160553ce.entry.js.map} +0 -0
  378. /package/dist/atomic/{p-757de797.entry.js.map → p-2a4e9425.entry.js.map} +0 -0
  379. /package/dist/atomic/{p-26a51a77.entry.js.map → p-3213225f.entry.js.map} +0 -0
  380. /package/dist/atomic/{p-d11b2b24.entry.js.map → p-383f66dc.entry.js.map} +0 -0
  381. /package/dist/atomic/{p-e1865f9f.entry.js.map → p-40fcbb35.entry.js.map} +0 -0
  382. /package/dist/atomic/{p-e8d5e852.entry.js.map → p-41c5d5fa.entry.js.map} +0 -0
  383. /package/dist/atomic/{p-e23b3334.entry.js.map → p-441b1a7b.entry.js.map} +0 -0
  384. /package/dist/atomic/{p-e514cdb2.entry.js.map → p-4a74f4a3.entry.js.map} +0 -0
  385. /package/dist/atomic/{p-c1999888.entry.js.map → p-754909fe.entry.js.map} +0 -0
  386. /package/dist/atomic/{p-36fab158.entry.js.map → p-7a6468a7.entry.js.map} +0 -0
  387. /package/dist/atomic/{p-3a2c900c.entry.js.map → p-7b1a3cab.entry.js.map} +0 -0
  388. /package/dist/atomic/{p-d93adf52.entry.js.map → p-7d63bf7b.entry.js.map} +0 -0
  389. /package/dist/atomic/{p-d364064c.entry.js.map → p-7f40e57d.entry.js.map} +0 -0
  390. /package/dist/atomic/{p-d785121d.entry.js.map → p-856e858c.entry.js.map} +0 -0
  391. /package/dist/atomic/{p-e162805d.entry.js.map → p-8a7a23b7.entry.js.map} +0 -0
  392. /package/dist/atomic/{p-604c4085.entry.js.map → p-8df7270f.entry.js.map} +0 -0
  393. /package/dist/atomic/{p-8256cd44.entry.js.map → p-9147b0db.entry.js.map} +0 -0
  394. /package/dist/atomic/{p-37374964.entry.js.map → p-9727f36b.entry.js.map} +0 -0
  395. /package/dist/atomic/{p-d24d34a7.entry.js.map → p-97829295.entry.js.map} +0 -0
  396. /package/dist/atomic/{p-31aa052e.entry.js.map → p-97e42c43.entry.js.map} +0 -0
  397. /package/dist/atomic/{p-9883415e.entry.js.map → p-9b92b4e2.entry.js.map} +0 -0
  398. /package/dist/atomic/{p-1ef658d8.entry.js.map → p-9d023f0b.entry.js.map} +0 -0
  399. /package/dist/atomic/{p-40635c2d.entry.js.map → p-9e771351.entry.js.map} +0 -0
  400. /package/dist/atomic/{p-035f8dc8.entry.js.map → p-a3fa6695.entry.js.map} +0 -0
  401. /package/dist/atomic/{p-470f88ed.entry.js.map → p-a42e3b8f.entry.js.map} +0 -0
  402. /package/dist/atomic/{p-f0c2dfe8.entry.js.map → p-abb14108.entry.js.map} +0 -0
  403. /package/dist/atomic/{p-48f57fd8.entry.js.map → p-b0c50194.entry.js.map} +0 -0
  404. /package/dist/atomic/{p-b0b17e21.entry.js.map → p-b4c34553.entry.js.map} +0 -0
  405. /package/dist/atomic/{p-98c5b9b8.entry.js.map → p-b6377fb6.entry.js.map} +0 -0
  406. /package/dist/atomic/{p-08794435.entry.js.map → p-ba650801.entry.js.map} +0 -0
  407. /package/dist/atomic/{p-ea446721.entry.js.map → p-bd32625e.entry.js.map} +0 -0
  408. /package/dist/atomic/{p-939eaaac.entry.js.map → p-bd99fcc1.entry.js.map} +0 -0
  409. /package/dist/atomic/{p-534b6a0a.entry.js.map → p-bf1dff76.entry.js.map} +0 -0
  410. /package/dist/atomic/{p-99b8d52d.entry.js.map → p-bf49fed3.entry.js.map} +0 -0
  411. /package/dist/atomic/{p-3f912e98.entry.js.map → p-c08f4ee6.entry.js.map} +0 -0
  412. /package/dist/atomic/{p-e2afb475.entry.js.map → p-c2b4b401.entry.js.map} +0 -0
  413. /package/dist/atomic/{p-a53c7821.entry.js.map → p-c538c8ac.entry.js.map} +0 -0
  414. /package/dist/atomic/{p-ca762513.entry.js.map → p-c889adbd.entry.js.map} +0 -0
  415. /package/dist/atomic/{p-43d708cb.entry.js.map → p-c9fe4f77.entry.js.map} +0 -0
  416. /package/dist/atomic/{p-031670fe.js.map → p-cbeeff3c.js.map} +0 -0
  417. /package/dist/atomic/{p-00e5bb15.entry.js.map → p-ce41c447.entry.js.map} +0 -0
  418. /package/dist/atomic/{p-627e1265.entry.js.map → p-d50c96c2.entry.js.map} +0 -0
  419. /package/dist/atomic/{p-bc0d6d3d.entry.js.map → p-dee60597.entry.js.map} +0 -0
  420. /package/dist/atomic/{p-b2ff1330.entry.js.map → p-e1c99e2e.entry.js.map} +0 -0
  421. /package/dist/atomic/{p-6e6d686e.entry.js.map → p-e3af1bb4.entry.js.map} +0 -0
  422. /package/dist/atomic/{p-bf50b64d.entry.js.map → p-e6a7e7b2.entry.js.map} +0 -0
  423. /package/dist/atomic/{p-594488f2.entry.js.map → p-f0012580.entry.js.map} +0 -0
  424. /package/dist/atomic/{p-fbe37f4b.entry.js.map → p-f8d62605.entry.js.map} +0 -0
  425. /package/dist/atomic/{p-bdbbb47b.entry.js.map → p-f8ded37c.entry.js.map} +0 -0
  426. /package/dist/atomic/{p-fea7bf3b.entry.js.map → p-f936f55e.entry.js.map} +0 -0
  427. /package/dist/atomic/{p-fbfe913d.entry.js.map → p-fb1a1e2e.entry.js.map} +0 -0
  428. /package/dist/atomic/{p-3af5c567.entry.js.map → p-fd1326ad.entry.js.map} +0 -0
@@ -90,7 +90,7 @@ const AtomicLoadMoreResults$1 = /*@__PURE__*/ proxyCustomElement(class AtomicLoa
90
90
  render() {
91
91
  const { lastResult: from, total: to } = this.querySummaryState;
92
92
  const { i18n } = this.bindings;
93
- return (h(LoadMoreGuard, { key: '16da571d3a04ea139f60c9d8eb19ecc7c0f31911', hasResults: this.querySummaryState.hasResults, isLoaded: this.isAppLoaded }, h(LoadMoreContainer, { key: 'ed358d1f0e537b0db7eb669e62be1daf27e5da6f' }, h(LoadMoreSummary, { key: '78ba35d1d99d8a72537614004eddffd08be1c0e1', from: from, to: to, i18n: i18n }), h(LoadMoreProgressBar, { key: '4538e655f38d40724a8a4860abc41eb7a8763c51', from: from, to: to }), h(LoadMoreButton, { key: '9ec3982de14d60f7f5a27901498b876084f74552', i18n: i18n, moreAvailable: this.resultListState.moreResultsAvailable, onClick: () => this.onClick() }))));
93
+ return (h(LoadMoreGuard, { key: '4fe15341de8a0a1f93ceeddc90405b6a8fe03c09', hasResults: this.querySummaryState.hasResults, isLoaded: this.isAppLoaded }, h(LoadMoreContainer, { key: '0d0e5f28c687d5a0f9c730a8cc19ac67de19945f' }, h(LoadMoreSummary, { key: '587be2ebaef15a36ad8da1082defa1342b22acf9', from: from, to: to, i18n: i18n }), h(LoadMoreProgressBar, { key: '37e321328867badc762a9701a2700803dfa118e5', from: from, to: to }), h(LoadMoreButton, { key: 'ff8640f0efdc363da5c885581a451cad24dc9718', i18n: i18n, moreAvailable: this.resultListState.moreResultsAvailable, onClick: () => this.onClick() }))));
94
94
  }
95
95
  static get style() { return AtomicLoadMoreResultsStyle0; }
96
96
  }, [1, "atomic-load-more-results", {
@@ -59,7 +59,7 @@ const AtomicNoResults$1 = /*@__PURE__*/ proxyCustomElement(class AtomicNoResults
59
59
  render() {
60
60
  const { bindings: { i18n }, } = this;
61
61
  this.ariaMessage = getSummary(i18n, this.querySummaryState.query, this.searchStatusState.hasResults, 'no-results');
62
- return (h(NoItemsGuard, { key: '577feea512efff5e2ba89dcfaf69d668b1f087a5', ...this.searchStatusState }, h(NoItemsContainer, { key: '430316bf689f3c0b64b7426b5436ff7bafa5bf08' }, h(MagnifyingGlass, { key: '47fa8b86079bbc20992cfb8637a4d14445dc8d01' }), h(NoItems, { key: 'e2fd538a7d8819552f4243ac0816d440bcaaf3bc', query: this.querySummaryState.query, i18n: i18n, i18nKey: "no-results" }), h(SearchTips, { key: '488ddbb94ead0df2b0ca1a9802126578946560b8', i18n: i18n }), this.enableCancelLastAction && this.historyState.past.length ? (h(Cancel, { i18n: i18n, onClick: () => this.history.backOnNoResults() })) : null)));
62
+ return (h(NoItemsGuard, { key: '8bfbd5035a7dcef8269190bbd2d92699f60b40d2', ...this.searchStatusState }, h(NoItemsContainer, { key: '2883ffa2e8624b86ead143a49ec11a4e678f980f' }, h(MagnifyingGlass, { key: '3eadd782f16c9749a429dea559aad60ce4d083af' }), h(NoItems, { key: '89791b3595dff280aea99783c1c5d965e66b43fb', query: this.querySummaryState.query, i18n: i18n, i18nKey: "no-results" }), h(SearchTips, { key: '5724380ed5d9eb13e4e7eac36752e14f1207fc24', i18n: i18n }), this.enableCancelLastAction && this.historyState.past.length ? (h(Cancel, { i18n: i18n, onClick: () => this.history.backOnNoResults() })) : null)));
63
63
  }
64
64
  static get style() { return AtomicNoResultsStyle0; }
65
65
  }, [1, "atomic-no-results", {
@@ -339,6 +339,7 @@ const AtomicNumericFacet$1 = /*@__PURE__*/ proxyCustomElement(class AtomicNumeri
339
339
  }
340
340
  if (this.bindings.store.state.numericFacets[this.field]) {
341
341
  this.facetId = randomID(`${this.field}_`);
342
+ return;
342
343
  }
343
344
  this.facetId = this.field;
344
345
  }
@@ -1 +1 @@
1
- {"file":"atomic-numeric-facet.js","mappings":"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","names":["AtomicNumericFacet"],"sources":["src/components/search/facets/atomic-numeric-facet/atomic-numeric-facet.pcss?tag=atomic-numeric-facet&encapsulation=shadow","src/components/search/facets/atomic-numeric-facet/atomic-numeric-facet.tsx"],"sourcesContent":["@import '../../../common/facets/numeric-facet-common.pcss';\n","import {Schema, StringValue} from '@coveo/bueno';\nimport {\n buildFacetConditionsManager,\n FacetConditionsManager,\n buildNumericFacet,\n buildNumericFilter,\n buildNumericRange,\n buildSearchStatus,\n CategoryFacetValueRequest,\n FacetValueRequest,\n loadNumericFacetSetActions,\n NumericFacet,\n NumericFacetState,\n NumericFilter,\n NumericFilterState,\n RangeFacetRangeAlgorithm,\n RangeFacetSortCriterion,\n SearchStatus,\n SearchStatusState,\n NumericRangeRequest,\n buildTabManager,\n TabManager,\n TabManagerState,\n} from '@coveo/headless';\nimport {Component, Element, h, Listen, Prop, State} from '@stencil/core';\nimport {\n BindStateToController,\n InitializableComponent,\n InitializeBindings,\n} from '../../../../utils/initialization-utils';\nimport {ArrayProp, MapProp} from '../../../../utils/props-utils';\nimport {FocusTargetController} from '../../../../utils/stencil-accessibility-utils';\nimport {randomID} from '../../../../utils/utils';\nimport {parseDependsOn} from '../../../common/facets/depends-on';\nimport {FacetInfo} from '../../../common/facets/facet-common-store';\nimport {FacetContainer} from '../../../common/facets/facet-container/stencil-facet-container';\nimport {FacetGuard} from '../../../common/facets/facet-guard';\nimport {FacetHeader} from '../../../common/facets/facet-header/stencil-facet-header';\nimport {NumberInputType} from '../../../common/facets/facet-number-input/number-input-type';\nimport {FacetPlaceholder} from '../../../common/facets/facet-placeholder/facet-placeholder';\nimport {formatHumanReadable} from '../../../common/facets/numeric-facet/formatter';\nimport {NumericFacetValueLink} from '../../../common/facets/numeric-facet/stencil-value-link';\nimport {NumericFacetValuesContainer} from '../../../common/facets/numeric-facet/stencil-values-container';\nimport {initializePopover} from '../../../common/facets/popover/popover-type';\nimport {shouldDisplayInputForFacetRange} from '../../../common/facets/stencil-facet-common';\nimport {\n defaultNumberFormatter,\n NumberFormatter,\n} from '../../../common/formats/format-common';\nimport {Bindings} from '../../atomic-search-interface/atomic-search-interface';\n\n/**\n * A facet is a list of values for a certain field occurring in the results, ordered using a configurable criteria (e.g., ascending, descending).\n * An `atomic-numeric-facet` displays a facet of the results for the current query as numeric ranges.\n *\n * @part facet - The wrapper for the entire facet.\n * @part placeholder - The placeholder shown before the first search is executed.\n *\n * @part label-button - The button that displays the label and allows to expand/collapse the facet.\n * @part label-button-icon - The label button icon.\n * @part clear-button - The button that resets the actively selected facet values.\n * @part clear-button-icon - The clear button icon.\n *\n * @part values - The facet values container.\n * @part value-label - The facet value label, common for all displays.\n * @part value-count - The facet value count, common for all displays.\n *\n * @part value-checkbox - The facet value checkbox, available when display is 'checkbox'.\n * @part value-checkbox-checked - The checked facet value checkbox, available when display is 'checkbox'.\n * @part value-checkbox-label - The facet value checkbox clickable label, available when display is 'checkbox'.\n * @part value-checkbox-icon - The facet value checkbox icon, available when display is 'checkbox'.\n * @part value-link - The facet value when display is 'link'.\n * @part value-link-selected - The selected facet value when display is 'link'.\n\n * @part input-form - The form that comprises the labels, inputs, and 'apply' button for the custom numeric range.\n * @part label-start - The label for the starting value of the custom numeric range.\n * @part label-end - The label for the ending value of the custom numeric range.\n * @part input-start - The input for the starting value of the custom numeric range.\n * @part input-end - The input for the ending value of the custom numeric range.\n * @part input-apply-button - The apply button for the custom range.\n */\n@Component({\n tag: 'atomic-numeric-facet',\n styleUrl: './atomic-numeric-facet.pcss',\n shadow: true,\n})\nexport class AtomicNumericFacet implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n public facetForRange?: NumericFacet;\n public facetForInput?: NumericFacet;\n public filter!: NumericFilter;\n public searchStatus!: SearchStatus;\n public tabManager!: TabManager;\n @Element() private host!: HTMLElement;\n private manualRanges: (NumericRangeRequest & {label?: string})[] = [];\n private formatter: NumberFormatter = defaultNumberFormatter;\n private facetForRangeDependenciesManager?: FacetConditionsManager;\n private facetForInputDependenciesManager?: FacetConditionsManager;\n private filterDependenciesManager?: FacetConditionsManager;\n\n @BindStateToController('facetForRange')\n @State()\n public facetState!: NumericFacetState;\n @BindStateToController('filter')\n @State()\n public filterState?: NumericFilterState;\n @BindStateToController('searchStatus')\n @State()\n public searchStatusState!: SearchStatusState;\n @BindStateToController('tabManager')\n @State()\n public tabManagerState!: TabManagerState;\n @State() public error!: Error;\n @BindStateToController('facetForInput')\n @State()\n public facetForInputState?: NumericFacetState;\n\n /**\n * Specifies a unique identifier for the facet.\n */\n @Prop({mutable: true, reflect: true}) public facetId?: string;\n /**\n * The non-localized label for the facet.\n * Used in the `atomic-breadbox` component through the bindings store.\n */\n @Prop({reflect: true}) public label = 'no-label';\n /**\n * The field whose values you want to display in the facet.\n */\n @Prop({reflect: true}) public field!: string;\n /**\n * The tabs on which the facet can be displayed. This property should not be used at the same time as `tabs-excluded`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-timeframe-facet tabs-included='[\"tabIDA\", \"tabIDB\"]'></atomic-timeframe-facet>\n * ```\n * If you don't set this property, the facet can be displayed on any tab. Otherwise, the facet can only be displayed on the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsIncluded: string[] | string = '[]';\n\n /**\n * The tabs on which this facet must not be displayed. This property should not be used at the same time as `tabs-included`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-timeframe-facet tabs-excluded='[\"tabIDA\", \"tabIDB\"]'></atomic-timeframe-facet>\n * ```\n * If you don't set this property, the facet can be displayed on any tab. Otherwise, the facet won't be displayed on any of the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsExcluded: string[] | string = '[]';\n\n /**\n * The number of values to request for this facet, when there are no manual ranges.\n * If the number of values is 0, no ranges will be displayed.\n */\n @Prop({reflect: true}) public numberOfValues = 8;\n /**\n * Whether this facet should contain an input allowing users to set custom ranges.\n * Depending on the field, the input can allow either decimal or integer values.\n */\n @Prop({reflect: true}) public withInput?: NumberInputType;\n /**\n * The sort criterion to apply to the returned facet values.\n * Possible values are 'ascending' and 'descending'.\n */\n @Prop({reflect: true}) public sortCriteria: RangeFacetSortCriterion =\n 'ascending';\n /**\n * The algorithm that's used for generating the ranges of this facet when they aren't manually defined. The default value of `\"equiprobable\"` generates facet ranges which vary in size but have a more balanced number of results within each range. The value of `\"even\"` generates equally sized facet ranges across all of the results.\n */\n @Prop({reflect: true}) public rangeAlgorithm: RangeFacetRangeAlgorithm =\n 'equiprobable';\n /**\n * Whether to display the facet values as checkboxes (multiple selection) or links (single selection).\n * Possible values are 'checkbox' and 'link'.\n */\n @Prop({reflect: true}) public displayValuesAs: 'checkbox' | 'link' =\n 'checkbox';\n /**\n * Specifies whether the facet is collapsed. When the facet is the child of an `atomic-facet-manager` component, the facet manager controls this property.\n */\n @Prop({reflect: true, mutable: true}) public isCollapsed = false;\n /**\n * The [heading level](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements) to use for the heading over the facet, from 1 to 6.\n */\n @Prop({reflect: true}) public headingLevel = 0;\n /**\n * Whether to exclude the parents of folded results when estimating the result count for each facet value.\n *\n *\n * Note: Resulting count is only an estimation, in some cases this value could be incorrect.\n */\n @Prop({reflect: true}) public filterFacetCount = true;\n /**\n * The maximum number of results to scan in the index to ensure that the facet lists all potential facet values.\n * Note: A high injectionDepth may negatively impact the facet request performance.\n * Minimum: `0`\n * Default: `1000`\n */\n @Prop({reflect: true}) public injectionDepth = 1000;\n\n /**\n * The required facets and values for this facet to be displayed.\n * Examples:\n * ```html\n * <atomic-facet facet-id=\"abc\" field=\"objecttype\" ...></atomic-facet>\n *\n * <!-- To show the facet when any value is selected in the facet with id \"abc\": -->\n * <atomic-numeric-facet\n * depends-on-abc\n * ...\n * ></atomic-numeric-facet>\n *\n * <!-- To show the facet when value \"doc\" is selected in the facet with id \"abc\": -->\n * <atomic-numeric-facet\n * depends-on-abc=\"doc\"\n * ...\n * ></atomic-numeric-facet>\n * ```\n */\n @MapProp() @Prop() public dependsOn: Record<string, string> = {};\n\n private headerFocus?: FocusTargetController;\n\n private get focusTarget(): FocusTargetController {\n if (!this.headerFocus) {\n this.headerFocus = new FocusTargetController(this);\n }\n return this.headerFocus;\n }\n\n public initialize() {\n if (\n [...this.tabsIncluded].length > 0 &&\n [...this.tabsExcluded].length > 0\n ) {\n console.warn(\n 'Values for both \"tabs-included\" and \"tabs-excluded\" have been provided. This is could lead to unexpected behaviors.'\n );\n }\n this.validateProps();\n this.initializeTabManager();\n this.computeFacetId();\n this.initializeFacetForInput();\n this.initializeFacetForRange();\n this.initializeFilter();\n this.initializeSearchStatus();\n this.registerFacetToStore();\n }\n\n public disconnectedCallback() {\n if (this.host.isConnected) {\n return;\n }\n this.facetForRangeDependenciesManager?.stopWatching();\n this.facetForInputDependenciesManager?.stopWatching();\n this.filterDependenciesManager?.stopWatching();\n }\n\n private initializeSearchStatus() {\n this.searchStatus = buildSearchStatus(this.bindings.engine);\n }\n private initializeTabManager() {\n this.tabManager = buildTabManager(this.bindings.engine);\n }\n private initializeFacetForInput() {\n if (!this.withInput) {\n return;\n }\n this.facetForInput = buildNumericFacet(this.bindings.engine, {\n options: {\n numberOfValues: 1,\n generateAutomaticRanges: true,\n facetId: `${this.facetId}_input_range`,\n field: this.field,\n sortCriteria: this.sortCriteria,\n rangeAlgorithm: this.rangeAlgorithm,\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n tabs: {\n included: [...this.tabsIncluded],\n excluded: [...this.tabsExcluded],\n },\n },\n });\n\n this.facetForInputDependenciesManager = this.initializeDependenciesManager(\n this.facetForInput.state.facetId\n );\n\n return this.facetForInput;\n }\n\n private initializeFacetForRange() {\n if (this.numberOfValues <= 0) {\n return;\n }\n\n this.manualRanges = Array.from(\n this.host.querySelectorAll('atomic-numeric-range')\n ).map(({start, end, endInclusive, label}) => ({\n ...buildNumericRange({start, end, endInclusive}),\n label,\n }));\n\n this.facetForRange = buildNumericFacet(this.bindings.engine, {\n options: {\n facetId: this.facetId,\n field: this.field,\n numberOfValues: this.numberOfValues,\n sortCriteria: this.sortCriteria,\n rangeAlgorithm: this.rangeAlgorithm,\n currentValues: this.manualRanges,\n generateAutomaticRanges: !this.manualRanges.length,\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n tabs: {\n included: [...this.tabsIncluded],\n excluded: [...this.tabsExcluded],\n },\n },\n });\n\n this.facetForRangeDependenciesManager = this.initializeDependenciesManager(\n this.facetForRange.state.facetId\n );\n\n return this.facetForRange;\n }\n\n private initializeFilter() {\n if (!this.withInput) {\n return;\n }\n this.filter = buildNumericFilter(this.bindings.engine, {\n options: {\n facetId: `${this.facetId}_input`,\n field: this.field,\n tabs: {\n included: [...this.tabsIncluded],\n excluded: [...this.tabsExcluded],\n },\n },\n });\n\n this.filterDependenciesManager = this.initializeDependenciesManager(\n this.filter.state.facetId\n );\n }\n\n private initializeDependenciesManager(facetId: string) {\n return buildFacetConditionsManager(this.bindings.engine, {\n facetId,\n conditions: parseDependsOn<FacetValueRequest | CategoryFacetValueRequest>(\n this.dependsOn\n ),\n });\n }\n\n private registerFacetToStore() {\n const facetInfo: FacetInfo = {\n label: () => this.bindings.i18n.t(this.label),\n facetId: this.facetId!,\n element: this.host,\n isHidden: () => this.isHidden,\n };\n\n this.bindings.store.registerFacet('numericFacets', {\n ...facetInfo,\n format: (value) =>\n formatHumanReadable({\n facetValue: value,\n logger: this.bindings.engine.logger,\n i18n: this.bindings.i18n,\n field: this.field,\n manualRanges: this.manualRanges,\n formatter: this.formatter,\n }),\n });\n\n initializePopover(this.host, {\n ...facetInfo,\n hasValues: () => this.hasValues,\n numberOfActiveValues: () => this.numberOfSelectedValues,\n });\n\n if (this.filter) {\n this.bindings.store.state.numericFacets[this.filter.state.facetId] =\n this.bindings.store.state.numericFacets[this.facetId!];\n }\n }\n\n @Listen('atomic/numberFormat')\n public setFormat(event: CustomEvent<NumberFormatter>) {\n event.preventDefault();\n event.stopPropagation();\n this.formatter = event.detail;\n }\n\n @Listen('atomic/numberInputApply')\n public applyNumberInput() {\n this.facetId &&\n this.bindings.engine.dispatch(\n loadNumericFacetSetActions(\n this.bindings.engine\n ).deselectAllNumericFacetValues(this.facetId)\n );\n }\n\n public render() {\n const {\n searchStatusState: {firstSearchExecuted, hasError},\n bindings: {i18n},\n } = this;\n return (\n <FacetGuard\n enabled={this.enabled}\n firstSearchExecuted={firstSearchExecuted}\n hasError={hasError}\n hasResults={this.shouldRenderFacet}\n >\n {firstSearchExecuted ? (\n <FacetContainer>\n <FacetHeader\n i18n={i18n}\n label={this.label}\n onClearFilters={() => {\n this.focusTarget.focusAfterSearch();\n if (this.filterState?.range) {\n this.filter?.clear();\n return;\n }\n this.facetForRange?.deselectAll();\n }}\n numberOfActiveValues={this.numberOfSelectedValues}\n isCollapsed={this.isCollapsed}\n headingLevel={this.headingLevel}\n onToggleCollapse={() => (this.isCollapsed = !this.isCollapsed)}\n headerRef={(el) => this.focusTarget.setTarget(el)}\n />\n {!this.isCollapsed && [\n this.shouldRenderValues && this.renderValues(),\n this.shouldRenderInput && (\n <atomic-facet-number-input\n type={this.withInput!}\n bindings={this.bindings}\n label={this.label}\n filter={this.filter!}\n filterState={this.filter!.state}\n ></atomic-facet-number-input>\n ),\n ]}\n </FacetContainer>\n ) : (\n <FacetPlaceholder\n isCollapsed={this.isCollapsed}\n numberOfValues={this.numberOfValues}\n />\n )}\n </FacetGuard>\n );\n }\n\n private renderValues() {\n const {\n displayValuesAs,\n field,\n manualRanges,\n label,\n bindings: {\n i18n,\n engine: {logger},\n },\n formatter,\n } = this;\n\n return (\n <NumericFacetValuesContainer i18n={i18n} label={label}>\n {this.valuesToRender.map((value) => (\n <NumericFacetValueLink\n formatter={formatter}\n displayValuesAs={displayValuesAs}\n facetValue={value}\n field={field}\n i18n={i18n}\n logger={logger}\n manualRanges={manualRanges}\n onClick={() =>\n this.displayValuesAs === 'link'\n ? this.facetForRange!.toggleSingleSelect(value)\n : this.facetForRange!.toggleSelect(value)\n }\n />\n ))}\n </NumericFacetValuesContainer>\n );\n }\n\n private get numberOfSelectedValues() {\n if (this.filter?.state.range) {\n return 1;\n }\n\n return (\n this.facetForRange?.state.values.filter(({state}) => state === 'selected')\n .length || 0\n );\n }\n\n private get shouldRenderValues() {\n return (\n !this.hasInputRange &&\n this.numberOfValues > 0 &&\n !!this.valuesToRender.length\n );\n }\n\n private get hasInputRange() {\n return !!this.filter?.state.range;\n }\n\n private get valuesToRender() {\n return (\n this.facetForRange?.state.values.filter(\n (value) => value.numberOfResults || value.state !== 'idle'\n ) || []\n );\n }\n\n private get shouldRenderInput() {\n return shouldDisplayInputForFacetRange({\n hasInputRange: this.hasInputRange,\n searchStatusState: this.searchStatusState,\n facetValues: this.facetForInput?.state.values || [],\n hasInput: !!this.withInput,\n });\n }\n\n private computeFacetId() {\n if (this.facetId) {\n return;\n }\n\n if (this.bindings.store.state.numericFacets[this.field]) {\n this.facetId = randomID(`${this.field}_`);\n }\n\n this.facetId = this.field;\n }\n\n private get enabled() {\n return this.facetState?.enabled ?? this.filter?.state.enabled ?? true;\n }\n\n private get isHidden() {\n return !this.shouldRenderFacet || !this.enabled;\n }\n\n private get shouldRenderFacet() {\n return this.shouldRenderInput || this.shouldRenderValues;\n }\n\n private get hasValues() {\n if (this.facetForInput?.state.values.length) {\n return true;\n }\n\n return !!this.valuesToRender.length;\n }\n\n private validateProps() {\n new Schema({\n displayValuesAs: new StringValue({constrainTo: ['checkbox', 'link']}),\n withInput: new StringValue({constrainTo: ['integer', 'decimal']}),\n }).validate({\n displayValuesAs: this.displayValuesAs,\n withInput: this.withInput,\n });\n }\n}\n"],"version":3}
1
+ {"file":"atomic-numeric-facet.js","mappings":";;;;;;;;;;;;;;;;;AAAA,MAAM,qBAAqB,GAAG,4rwFAA4rwF,CAAC;AAC3twF,iCAAe,qBAAqB;;;;;;;;;;;;MCqFvBA,oBAAkB;;;;;QAQrB,iBAAY,GAA+C,EAAE,CAAC;QAC9D,cAAS,GAAoB,sBAAsB,CAAC;;;;;QA8B9B,UAAK,GAAG,UAAU,CAAC;;;;;;;;;;QAgB1C,iBAAY,GAAsB,IAAI,CAAC;;;;;;;;;;QAavC,iBAAY,GAAsB,IAAI,CAAC;;;;;QAMhB,mBAAc,GAAG,CAAC,CAAC;;;;;QAUnB,iBAAY,GACxC,WAAW,CAAC;;;;QAIgB,mBAAc,GAC1C,cAAc,CAAC;;;;;QAKa,oBAAe,GAC3C,UAAU,CAAC;;;;QAIgC,gBAAW,GAAG,KAAK,CAAC;;;;QAInC,iBAAY,GAAG,CAAC,CAAC;;;;;;;QAOjB,qBAAgB,GAAG,IAAI,CAAC;;;;;;;QAOxB,mBAAc,GAAG,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;QAqB1B,cAAS,GAA2B,EAAE,CAAC;;;;;;;;qBApG3B,UAAU;;4BAgBP,IAAI;4BAaJ,IAAI;8BAME,CAAC;;4BAW9C,WAAW;8BAKX,cAAc;+BAMd,UAAU;2BAI+C,KAAK;4BAInB,CAAC;gCAOG,IAAI;8BAON,IAAI;yBAqBW,EAAE;;IAIhE,IAAY,WAAW;QACrB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,IAAI,CAAC,WAAW,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC;SACpD;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;IAEM,UAAU;QACf,IACE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC;YACjC,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,EACjC;YACA,OAAO,CAAC,IAAI,CACV,qHAAqH,CACtH,CAAC;SACH;QACD,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,IAAI,CAAC,oBAAoB,EAAE,CAAC;KAC7B;IAEM,oBAAoB;QACzB,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACzB,OAAO;SACR;QACD,IAAI,CAAC,gCAAgC,EAAE,YAAY,EAAE,CAAC;QACtD,IAAI,CAAC,gCAAgC,EAAE,YAAY,EAAE,CAAC;QACtD,IAAI,CAAC,yBAAyB,EAAE,YAAY,EAAE,CAAC;KAChD;IAEO,sBAAsB;QAC5B,IAAI,CAAC,YAAY,GAAG,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;KAC7D;IACO,oBAAoB;QAC1B,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;KACzD;IACO,uBAAuB;QAC7B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,OAAO;SACR;QACD,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YAC3D,OAAO,EAAE;gBACP,cAAc,EAAE,CAAC;gBACjB,uBAAuB,EAAE,IAAI;gBAC7B,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,cAAc;gBACtC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,IAAI,EAAE;oBACJ,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;oBAChC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;iBACjC;aACF;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC,6BAA6B,CACxE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CACjC,CAAC;QAEF,OAAO,IAAI,CAAC,aAAa,CAAC;KAC3B;IAEO,uBAAuB;QAC7B,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,EAAE;YAC5B,OAAO;SACR;QAED,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,CAC5B,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CACnD,CAAC,GAAG,CAAC,CAAC,EAAC,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAC,MAAM;YAC5C,GAAG,iBAAiB,CAAC,EAAC,KAAK,EAAE,GAAG,EAAE,YAAY,EAAC,CAAC;YAChD,KAAK;SACN,CAAC,CAAC,CAAC;QAEJ,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YAC3D,OAAO,EAAE;gBACP,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,aAAa,EAAE,IAAI,CAAC,YAAY;gBAChC,uBAAuB,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM;gBAClD,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,IAAI,EAAE;oBACJ,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;oBAChC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;iBACjC;aACF;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC,6BAA6B,CACxE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CACjC,CAAC;QAEF,OAAO,IAAI,CAAC,aAAa,CAAC;KAC3B;IAEO,gBAAgB;QACtB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACnB,OAAO;SACR;QACD,IAAI,CAAC,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YACrD,OAAO,EAAE;gBACP,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,QAAQ;gBAChC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,IAAI,EAAE;oBACJ,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;oBAChC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;iBACjC;aACF;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,6BAA6B,CACjE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAC1B,CAAC;KACH;IAEO,6BAA6B,CAAC,OAAe;QACnD,OAAO,2BAA2B,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YACvD,OAAO;YACP,UAAU,EAAE,cAAc,CACxB,IAAI,CAAC,SAAS,CACf;SACF,CAAC,CAAC;KACJ;IAEO,oBAAoB;QAC1B,MAAM,SAAS,GAAc;YAC3B,KAAK,EAAE,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;YAC7C,OAAO,EAAE,IAAI,CAAC,OAAQ;YACtB,OAAO,EAAE,IAAI,CAAC,IAAI;YAClB,QAAQ,EAAE,MAAM,IAAI,CAAC,QAAQ;SAC9B,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,eAAe,EAAE;YACjD,GAAG,SAAS;YACZ,MAAM,EAAE,CAAC,KAAK,KACZ,mBAAmB,CAAC;gBAClB,UAAU,EAAE,KAAK;gBACjB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM;gBACnC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;gBACxB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;aAC1B,CAAC;SACL,CAAC,CAAC;QAEH,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE;YAC3B,GAAG,SAAS;YACZ,SAAS,EAAE,MAAM,IAAI,CAAC,SAAS;YAC/B,oBAAoB,EAAE,MAAM,IAAI,CAAC,sBAAsB;SACxD,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;gBAChE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,OAAQ,CAAC,CAAC;SAC1D;KACF;IAGM,SAAS,CAAC,KAAmC;QAClD,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC;KAC/B;IAGM,gBAAgB;QACrB,IAAI,CAAC,OAAO;YACV,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAC3B,0BAA0B,CACxB,IAAI,CAAC,QAAQ,CAAC,MAAM,CACrB,CAAC,6BAA6B,CAAC,IAAI,CAAC,OAAO,CAAC,CAC9C,CAAC;KACL;IAEM,MAAM;QACX,MAAM,EACJ,iBAAiB,EAAE,EAAC,mBAAmB,EAAE,QAAQ,EAAC,EAClD,QAAQ,EAAE,EAAC,IAAI,EAAC,GACjB,GAAG,IAAI,CAAC;QACT,QACE,EAAC,UAAU,qDACT,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,mBAAmB,EAAE,mBAAmB,EACxC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,IAAI,CAAC,iBAAiB,IAEjC,mBAAmB,IAClB,EAAC,cAAc,QACb,EAAC,WAAW,IACV,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,cAAc,EAAE;gBACd,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;gBACpC,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE;oBAC3B,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;oBACrB,OAAO;iBACR;gBACD,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC;aACnC,EACD,oBAAoB,EAAE,IAAI,CAAC,sBAAsB,EACjD,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,gBAAgB,EAAE,OAAO,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,EAC9D,SAAS,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC,GACjD,EACD,CAAC,IAAI,CAAC,WAAW,IAAI;YACpB,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,YAAY,EAAE;YAC9C,IAAI,CAAC,iBAAiB,KACpB,iCACE,IAAI,EAAE,IAAI,CAAC,SAAU,EACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,MAAM,EAAE,IAAI,CAAC,MAAO,EACpB,WAAW,EAAE,IAAI,CAAC,MAAO,CAAC,KAAK,GACJ,CAC9B;SACF,CACc,KAEjB,EAAC,gBAAgB,IACf,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,cAAc,EAAE,IAAI,CAAC,cAAc,GACnC,CACH,CACU,EACb;KACH;IAEO,YAAY;QAClB,MAAM,EACJ,eAAe,EACf,KAAK,EACL,YAAY,EACZ,KAAK,EACL,QAAQ,EAAE,EACR,IAAI,EACJ,MAAM,EAAE,EAAC,MAAM,EAAC,GACjB,EACD,SAAS,GACV,GAAG,IAAI,CAAC;QAET,QACE,EAAC,2BAA2B,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,IAClD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,MAC7B,EAAC,qBAAqB,IACpB,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,eAAe,EAChC,UAAU,EAAE,KAAK,EACjB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MACP,IAAI,CAAC,eAAe,KAAK,MAAM;kBAC3B,IAAI,CAAC,aAAc,CAAC,kBAAkB,CAAC,KAAK,CAAC;kBAC7C,IAAI,CAAC,aAAc,CAAC,YAAY,CAAC,KAAK,CAAC,GAE7C,CACH,CAAC,CAC0B,EAC9B;KACH;IAED,IAAY,sBAAsB;QAChC,IAAI,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE;YAC5B,OAAO,CAAC,CAAC;SACV;QAED,QACE,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAC,KAAK,EAAC,KAAK,KAAK,KAAK,UAAU,CAAC;aACvE,MAAM,IAAI,CAAC,EACd;KACH;IAED,IAAY,kBAAkB;QAC5B,QACE,CAAC,IAAI,CAAC,aAAa;YACnB,IAAI,CAAC,cAAc,GAAG,CAAC;YACvB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAC5B;KACH;IAED,IAAY,aAAa;QACvB,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC;KACnC;IAED,IAAY,cAAc;QACxB,QACE,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CACrC,CAAC,KAAK,KAAK,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,KAAK,KAAK,MAAM,CAC3D,IAAI,EAAE,EACP;KACH;IAED,IAAY,iBAAiB;QAC3B,OAAO,+BAA+B,CAAC;YACrC,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,WAAW,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE;YACnD,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS;SAC3B,CAAC,CAAC;KACJ;IAEO,cAAc;QACpB,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAO;SACR;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACvD,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;YAC1C,OAAO;SACR;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;KAC3B;IAED,IAAY,OAAO;QACjB,OAAO,IAAI,CAAC,UAAU,EAAE,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC;KACvE;IAED,IAAY,QAAQ;QAClB,OAAO,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;KACjD;IAED,IAAY,iBAAiB;QAC3B,OAAO,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,kBAAkB,CAAC;KAC1D;IAED,IAAY,SAAS;QACnB,IAAI,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE;YAC3C,OAAO,IAAI,CAAC;SACb;QAED,OAAO,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;KACrC;IAEO,aAAa;QACnB,IAAI,MAAM,CAAC;YACT,eAAe,EAAE,IAAI,WAAW,CAAC,EAAC,WAAW,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,EAAC,CAAC;YACrE,SAAS,EAAE,IAAI,WAAW,CAAC,EAAC,WAAW,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,EAAC,CAAC;SAClE,CAAC,CAAC,QAAQ,CAAC;YACV,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAC;KACJ;;;;;;;;;;;;;;;;;;;;;;;;;;AAjf4B;IAA5B,kBAAkB,EAAE;sDAA4B;AAe1C;IAFN,qBAAqB,CAAC,eAAe,CAAC;wDAED;AAG/B;IAFN,qBAAqB,CAAC,QAAQ,CAAC;yDAEQ;AAGjC;IAFN,qBAAqB,CAAC,cAAc,CAAC;+DAEO;AAGtC;IAFN,qBAAqB,CAAC,YAAY,CAAC;6DAEK;AAIlC;IAFN,qBAAqB,CAAC,eAAe,CAAC;gEAEO;AA0BvC;IAFN,SAAS,EAAE;0DAEkC;AAavC;IAFN,SAAS,EAAE;0DAEkC;AAuEpB;IAAzB,OAAO,EAAE;uDAAuD;;;;;;;;;;;;;;;;;;;;;;;;;","names":["AtomicNumericFacet"],"sources":["src/components/search/facets/atomic-numeric-facet/atomic-numeric-facet.pcss?tag=atomic-numeric-facet&encapsulation=shadow","src/components/search/facets/atomic-numeric-facet/atomic-numeric-facet.tsx"],"sourcesContent":["@import '../../../common/facets/numeric-facet-common.pcss';\n","import {Schema, StringValue} from '@coveo/bueno';\nimport {\n buildFacetConditionsManager,\n FacetConditionsManager,\n buildNumericFacet,\n buildNumericFilter,\n buildNumericRange,\n buildSearchStatus,\n CategoryFacetValueRequest,\n FacetValueRequest,\n loadNumericFacetSetActions,\n NumericFacet,\n NumericFacetState,\n NumericFilter,\n NumericFilterState,\n RangeFacetRangeAlgorithm,\n RangeFacetSortCriterion,\n SearchStatus,\n SearchStatusState,\n NumericRangeRequest,\n buildTabManager,\n TabManager,\n TabManagerState,\n} from '@coveo/headless';\nimport {Component, Element, h, Listen, Prop, State} from '@stencil/core';\nimport {\n BindStateToController,\n InitializableComponent,\n InitializeBindings,\n} from '../../../../utils/initialization-utils';\nimport {ArrayProp, MapProp} from '../../../../utils/props-utils';\nimport {FocusTargetController} from '../../../../utils/stencil-accessibility-utils';\nimport {randomID} from '../../../../utils/utils';\nimport {parseDependsOn} from '../../../common/facets/depends-on';\nimport {FacetInfo} from '../../../common/facets/facet-common-store';\nimport {FacetContainer} from '../../../common/facets/facet-container/stencil-facet-container';\nimport {FacetGuard} from '../../../common/facets/facet-guard';\nimport {FacetHeader} from '../../../common/facets/facet-header/stencil-facet-header';\nimport {NumberInputType} from '../../../common/facets/facet-number-input/number-input-type';\nimport {FacetPlaceholder} from '../../../common/facets/facet-placeholder/facet-placeholder';\nimport {formatHumanReadable} from '../../../common/facets/numeric-facet/formatter';\nimport {NumericFacetValueLink} from '../../../common/facets/numeric-facet/stencil-value-link';\nimport {NumericFacetValuesContainer} from '../../../common/facets/numeric-facet/stencil-values-container';\nimport {initializePopover} from '../../../common/facets/popover/popover-type';\nimport {shouldDisplayInputForFacetRange} from '../../../common/facets/stencil-facet-common';\nimport {\n defaultNumberFormatter,\n NumberFormatter,\n} from '../../../common/formats/format-common';\nimport {Bindings} from '../../atomic-search-interface/atomic-search-interface';\n\n/**\n * A facet is a list of values for a certain field occurring in the results, ordered using a configurable criteria (e.g., ascending, descending).\n * An `atomic-numeric-facet` displays a facet of the results for the current query as numeric ranges.\n *\n * @part facet - The wrapper for the entire facet.\n * @part placeholder - The placeholder shown before the first search is executed.\n *\n * @part label-button - The button that displays the label and allows to expand/collapse the facet.\n * @part label-button-icon - The label button icon.\n * @part clear-button - The button that resets the actively selected facet values.\n * @part clear-button-icon - The clear button icon.\n *\n * @part values - The facet values container.\n * @part value-label - The facet value label, common for all displays.\n * @part value-count - The facet value count, common for all displays.\n *\n * @part value-checkbox - The facet value checkbox, available when display is 'checkbox'.\n * @part value-checkbox-checked - The checked facet value checkbox, available when display is 'checkbox'.\n * @part value-checkbox-label - The facet value checkbox clickable label, available when display is 'checkbox'.\n * @part value-checkbox-icon - The facet value checkbox icon, available when display is 'checkbox'.\n * @part value-link - The facet value when display is 'link'.\n * @part value-link-selected - The selected facet value when display is 'link'.\n\n * @part input-form - The form that comprises the labels, inputs, and 'apply' button for the custom numeric range.\n * @part label-start - The label for the starting value of the custom numeric range.\n * @part label-end - The label for the ending value of the custom numeric range.\n * @part input-start - The input for the starting value of the custom numeric range.\n * @part input-end - The input for the ending value of the custom numeric range.\n * @part input-apply-button - The apply button for the custom range.\n */\n@Component({\n tag: 'atomic-numeric-facet',\n styleUrl: './atomic-numeric-facet.pcss',\n shadow: true,\n})\nexport class AtomicNumericFacet implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n public facetForRange?: NumericFacet;\n public facetForInput?: NumericFacet;\n public filter!: NumericFilter;\n public searchStatus!: SearchStatus;\n public tabManager!: TabManager;\n @Element() private host!: HTMLElement;\n private manualRanges: (NumericRangeRequest & {label?: string})[] = [];\n private formatter: NumberFormatter = defaultNumberFormatter;\n private facetForRangeDependenciesManager?: FacetConditionsManager;\n private facetForInputDependenciesManager?: FacetConditionsManager;\n private filterDependenciesManager?: FacetConditionsManager;\n\n @BindStateToController('facetForRange')\n @State()\n public facetState!: NumericFacetState;\n @BindStateToController('filter')\n @State()\n public filterState?: NumericFilterState;\n @BindStateToController('searchStatus')\n @State()\n public searchStatusState!: SearchStatusState;\n @BindStateToController('tabManager')\n @State()\n public tabManagerState!: TabManagerState;\n @State() public error!: Error;\n @BindStateToController('facetForInput')\n @State()\n public facetForInputState?: NumericFacetState;\n\n /**\n * Specifies a unique identifier for the facet.\n */\n @Prop({mutable: true, reflect: true}) public facetId?: string;\n /**\n * The non-localized label for the facet.\n * Used in the `atomic-breadbox` component through the bindings store.\n */\n @Prop({reflect: true}) public label = 'no-label';\n /**\n * The field whose values you want to display in the facet.\n */\n @Prop({reflect: true}) public field!: string;\n /**\n * The tabs on which the facet can be displayed. This property should not be used at the same time as `tabs-excluded`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-timeframe-facet tabs-included='[\"tabIDA\", \"tabIDB\"]'></atomic-timeframe-facet>\n * ```\n * If you don't set this property, the facet can be displayed on any tab. Otherwise, the facet can only be displayed on the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsIncluded: string[] | string = '[]';\n\n /**\n * The tabs on which this facet must not be displayed. This property should not be used at the same time as `tabs-included`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-timeframe-facet tabs-excluded='[\"tabIDA\", \"tabIDB\"]'></atomic-timeframe-facet>\n * ```\n * If you don't set this property, the facet can be displayed on any tab. Otherwise, the facet won't be displayed on any of the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsExcluded: string[] | string = '[]';\n\n /**\n * The number of values to request for this facet, when there are no manual ranges.\n * If the number of values is 0, no ranges will be displayed.\n */\n @Prop({reflect: true}) public numberOfValues = 8;\n /**\n * Whether this facet should contain an input allowing users to set custom ranges.\n * Depending on the field, the input can allow either decimal or integer values.\n */\n @Prop({reflect: true}) public withInput?: NumberInputType;\n /**\n * The sort criterion to apply to the returned facet values.\n * Possible values are 'ascending' and 'descending'.\n */\n @Prop({reflect: true}) public sortCriteria: RangeFacetSortCriterion =\n 'ascending';\n /**\n * The algorithm that's used for generating the ranges of this facet when they aren't manually defined. The default value of `\"equiprobable\"` generates facet ranges which vary in size but have a more balanced number of results within each range. The value of `\"even\"` generates equally sized facet ranges across all of the results.\n */\n @Prop({reflect: true}) public rangeAlgorithm: RangeFacetRangeAlgorithm =\n 'equiprobable';\n /**\n * Whether to display the facet values as checkboxes (multiple selection) or links (single selection).\n * Possible values are 'checkbox' and 'link'.\n */\n @Prop({reflect: true}) public displayValuesAs: 'checkbox' | 'link' =\n 'checkbox';\n /**\n * Specifies whether the facet is collapsed. When the facet is the child of an `atomic-facet-manager` component, the facet manager controls this property.\n */\n @Prop({reflect: true, mutable: true}) public isCollapsed = false;\n /**\n * The [heading level](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements) to use for the heading over the facet, from 1 to 6.\n */\n @Prop({reflect: true}) public headingLevel = 0;\n /**\n * Whether to exclude the parents of folded results when estimating the result count for each facet value.\n *\n *\n * Note: Resulting count is only an estimation, in some cases this value could be incorrect.\n */\n @Prop({reflect: true}) public filterFacetCount = true;\n /**\n * The maximum number of results to scan in the index to ensure that the facet lists all potential facet values.\n * Note: A high injectionDepth may negatively impact the facet request performance.\n * Minimum: `0`\n * Default: `1000`\n */\n @Prop({reflect: true}) public injectionDepth = 1000;\n\n /**\n * The required facets and values for this facet to be displayed.\n * Examples:\n * ```html\n * <atomic-facet facet-id=\"abc\" field=\"objecttype\" ...></atomic-facet>\n *\n * <!-- To show the facet when any value is selected in the facet with id \"abc\": -->\n * <atomic-numeric-facet\n * depends-on-abc\n * ...\n * ></atomic-numeric-facet>\n *\n * <!-- To show the facet when value \"doc\" is selected in the facet with id \"abc\": -->\n * <atomic-numeric-facet\n * depends-on-abc=\"doc\"\n * ...\n * ></atomic-numeric-facet>\n * ```\n */\n @MapProp() @Prop() public dependsOn: Record<string, string> = {};\n\n private headerFocus?: FocusTargetController;\n\n private get focusTarget(): FocusTargetController {\n if (!this.headerFocus) {\n this.headerFocus = new FocusTargetController(this);\n }\n return this.headerFocus;\n }\n\n public initialize() {\n if (\n [...this.tabsIncluded].length > 0 &&\n [...this.tabsExcluded].length > 0\n ) {\n console.warn(\n 'Values for both \"tabs-included\" and \"tabs-excluded\" have been provided. This is could lead to unexpected behaviors.'\n );\n }\n this.validateProps();\n this.initializeTabManager();\n this.computeFacetId();\n this.initializeFacetForInput();\n this.initializeFacetForRange();\n this.initializeFilter();\n this.initializeSearchStatus();\n this.registerFacetToStore();\n }\n\n public disconnectedCallback() {\n if (this.host.isConnected) {\n return;\n }\n this.facetForRangeDependenciesManager?.stopWatching();\n this.facetForInputDependenciesManager?.stopWatching();\n this.filterDependenciesManager?.stopWatching();\n }\n\n private initializeSearchStatus() {\n this.searchStatus = buildSearchStatus(this.bindings.engine);\n }\n private initializeTabManager() {\n this.tabManager = buildTabManager(this.bindings.engine);\n }\n private initializeFacetForInput() {\n if (!this.withInput) {\n return;\n }\n this.facetForInput = buildNumericFacet(this.bindings.engine, {\n options: {\n numberOfValues: 1,\n generateAutomaticRanges: true,\n facetId: `${this.facetId}_input_range`,\n field: this.field,\n sortCriteria: this.sortCriteria,\n rangeAlgorithm: this.rangeAlgorithm,\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n tabs: {\n included: [...this.tabsIncluded],\n excluded: [...this.tabsExcluded],\n },\n },\n });\n\n this.facetForInputDependenciesManager = this.initializeDependenciesManager(\n this.facetForInput.state.facetId\n );\n\n return this.facetForInput;\n }\n\n private initializeFacetForRange() {\n if (this.numberOfValues <= 0) {\n return;\n }\n\n this.manualRanges = Array.from(\n this.host.querySelectorAll('atomic-numeric-range')\n ).map(({start, end, endInclusive, label}) => ({\n ...buildNumericRange({start, end, endInclusive}),\n label,\n }));\n\n this.facetForRange = buildNumericFacet(this.bindings.engine, {\n options: {\n facetId: this.facetId,\n field: this.field,\n numberOfValues: this.numberOfValues,\n sortCriteria: this.sortCriteria,\n rangeAlgorithm: this.rangeAlgorithm,\n currentValues: this.manualRanges,\n generateAutomaticRanges: !this.manualRanges.length,\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n tabs: {\n included: [...this.tabsIncluded],\n excluded: [...this.tabsExcluded],\n },\n },\n });\n\n this.facetForRangeDependenciesManager = this.initializeDependenciesManager(\n this.facetForRange.state.facetId\n );\n\n return this.facetForRange;\n }\n\n private initializeFilter() {\n if (!this.withInput) {\n return;\n }\n this.filter = buildNumericFilter(this.bindings.engine, {\n options: {\n facetId: `${this.facetId}_input`,\n field: this.field,\n tabs: {\n included: [...this.tabsIncluded],\n excluded: [...this.tabsExcluded],\n },\n },\n });\n\n this.filterDependenciesManager = this.initializeDependenciesManager(\n this.filter.state.facetId\n );\n }\n\n private initializeDependenciesManager(facetId: string) {\n return buildFacetConditionsManager(this.bindings.engine, {\n facetId,\n conditions: parseDependsOn<FacetValueRequest | CategoryFacetValueRequest>(\n this.dependsOn\n ),\n });\n }\n\n private registerFacetToStore() {\n const facetInfo: FacetInfo = {\n label: () => this.bindings.i18n.t(this.label),\n facetId: this.facetId!,\n element: this.host,\n isHidden: () => this.isHidden,\n };\n\n this.bindings.store.registerFacet('numericFacets', {\n ...facetInfo,\n format: (value) =>\n formatHumanReadable({\n facetValue: value,\n logger: this.bindings.engine.logger,\n i18n: this.bindings.i18n,\n field: this.field,\n manualRanges: this.manualRanges,\n formatter: this.formatter,\n }),\n });\n\n initializePopover(this.host, {\n ...facetInfo,\n hasValues: () => this.hasValues,\n numberOfActiveValues: () => this.numberOfSelectedValues,\n });\n\n if (this.filter) {\n this.bindings.store.state.numericFacets[this.filter.state.facetId] =\n this.bindings.store.state.numericFacets[this.facetId!];\n }\n }\n\n @Listen('atomic/numberFormat')\n public setFormat(event: CustomEvent<NumberFormatter>) {\n event.preventDefault();\n event.stopPropagation();\n this.formatter = event.detail;\n }\n\n @Listen('atomic/numberInputApply')\n public applyNumberInput() {\n this.facetId &&\n this.bindings.engine.dispatch(\n loadNumericFacetSetActions(\n this.bindings.engine\n ).deselectAllNumericFacetValues(this.facetId)\n );\n }\n\n public render() {\n const {\n searchStatusState: {firstSearchExecuted, hasError},\n bindings: {i18n},\n } = this;\n return (\n <FacetGuard\n enabled={this.enabled}\n firstSearchExecuted={firstSearchExecuted}\n hasError={hasError}\n hasResults={this.shouldRenderFacet}\n >\n {firstSearchExecuted ? (\n <FacetContainer>\n <FacetHeader\n i18n={i18n}\n label={this.label}\n onClearFilters={() => {\n this.focusTarget.focusAfterSearch();\n if (this.filterState?.range) {\n this.filter?.clear();\n return;\n }\n this.facetForRange?.deselectAll();\n }}\n numberOfActiveValues={this.numberOfSelectedValues}\n isCollapsed={this.isCollapsed}\n headingLevel={this.headingLevel}\n onToggleCollapse={() => (this.isCollapsed = !this.isCollapsed)}\n headerRef={(el) => this.focusTarget.setTarget(el)}\n />\n {!this.isCollapsed && [\n this.shouldRenderValues && this.renderValues(),\n this.shouldRenderInput && (\n <atomic-facet-number-input\n type={this.withInput!}\n bindings={this.bindings}\n label={this.label}\n filter={this.filter!}\n filterState={this.filter!.state}\n ></atomic-facet-number-input>\n ),\n ]}\n </FacetContainer>\n ) : (\n <FacetPlaceholder\n isCollapsed={this.isCollapsed}\n numberOfValues={this.numberOfValues}\n />\n )}\n </FacetGuard>\n );\n }\n\n private renderValues() {\n const {\n displayValuesAs,\n field,\n manualRanges,\n label,\n bindings: {\n i18n,\n engine: {logger},\n },\n formatter,\n } = this;\n\n return (\n <NumericFacetValuesContainer i18n={i18n} label={label}>\n {this.valuesToRender.map((value) => (\n <NumericFacetValueLink\n formatter={formatter}\n displayValuesAs={displayValuesAs}\n facetValue={value}\n field={field}\n i18n={i18n}\n logger={logger}\n manualRanges={manualRanges}\n onClick={() =>\n this.displayValuesAs === 'link'\n ? this.facetForRange!.toggleSingleSelect(value)\n : this.facetForRange!.toggleSelect(value)\n }\n />\n ))}\n </NumericFacetValuesContainer>\n );\n }\n\n private get numberOfSelectedValues() {\n if (this.filter?.state.range) {\n return 1;\n }\n\n return (\n this.facetForRange?.state.values.filter(({state}) => state === 'selected')\n .length || 0\n );\n }\n\n private get shouldRenderValues() {\n return (\n !this.hasInputRange &&\n this.numberOfValues > 0 &&\n !!this.valuesToRender.length\n );\n }\n\n private get hasInputRange() {\n return !!this.filter?.state.range;\n }\n\n private get valuesToRender() {\n return (\n this.facetForRange?.state.values.filter(\n (value) => value.numberOfResults || value.state !== 'idle'\n ) || []\n );\n }\n\n private get shouldRenderInput() {\n return shouldDisplayInputForFacetRange({\n hasInputRange: this.hasInputRange,\n searchStatusState: this.searchStatusState,\n facetValues: this.facetForInput?.state.values || [],\n hasInput: !!this.withInput,\n });\n }\n\n private computeFacetId() {\n if (this.facetId) {\n return;\n }\n\n if (this.bindings.store.state.numericFacets[this.field]) {\n this.facetId = randomID(`${this.field}_`);\n return;\n }\n\n this.facetId = this.field;\n }\n\n private get enabled() {\n return this.facetState?.enabled ?? this.filter?.state.enabled ?? true;\n }\n\n private get isHidden() {\n return !this.shouldRenderFacet || !this.enabled;\n }\n\n private get shouldRenderFacet() {\n return this.shouldRenderInput || this.shouldRenderValues;\n }\n\n private get hasValues() {\n if (this.facetForInput?.state.values.length) {\n return true;\n }\n\n return !!this.valuesToRender.length;\n }\n\n private validateProps() {\n new Schema({\n displayValuesAs: new StringValue({constrainTo: ['checkbox', 'link']}),\n withInput: new StringValue({constrainTo: ['integer', 'decimal']}),\n }).validate({\n displayValuesAs: this.displayValuesAs,\n withInput: this.withInput,\n });\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../../types/components";
2
+
3
+ interface AtomicPager extends Components.AtomicPager, HTMLElement {}
4
+ export const AtomicPager: {
5
+ prototype: AtomicPager;
6
+ new (): AtomicPager;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,134 @@
1
+ import { h, Fragment, proxyCustomElement, HTMLElement, createEvent } from '@stencil/core/internal/client';
2
+ import { buildSearchStatus, buildPager } from '@coveo/headless';
3
+ import { A as ArrowLeftIcon } from './arrow-left-rounded.js';
4
+ import { A as ArrowRightIcon } from './arrow-right-rounded.js';
5
+ import { H as Hidden, I as InitializeBindings, B as BindStateToController } from './initialization-utils.js';
6
+ import { r as randomID } from './utils.js';
7
+ import { c as createAppLoadedListener } from './store.js';
8
+ import { P as PagerNavigation, a as PagerPreviousButton, b as PagerPageButtons, c as PagerPageButton, d as PagerNextButton } from './stencil-pager-navigation.js';
9
+
10
+ /**
11
+ * @deprecated use the lit equivalent
12
+ */
13
+ const PagerGuard = (props, children) => {
14
+ if (props.hasError || !props.isAppLoaded || !props.hasItems) {
15
+ return h(Hidden, null);
16
+ }
17
+ return h(Fragment, null, ...children);
18
+ };
19
+
20
+ const atomicPagerCss = "/*! tailwindcss v4.1.12 | MIT License | https://tailwindcss.com */\n@layer properties;\n@layer properties {\n *, :before, :after, ::backdrop {\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-translate-z: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-scale-z: 1;\n --tw-rotate-x: initial;\n --tw-rotate-y: initial;\n --tw-rotate-z: initial;\n --tw-skew-x: initial;\n --tw-skew-y: initial;\n --tw-space-x-reverse: 0;\n --tw-divide-y-reverse: 0;\n --tw-border-style: solid;\n --tw-gradient-position: initial;\n --tw-gradient-from: #0000;\n --tw-gradient-via: #0000;\n --tw-gradient-to: #0000;\n --tw-gradient-stops: initial;\n --tw-gradient-via-stops: initial;\n --tw-gradient-from-position: 0%;\n --tw-gradient-via-position: 50%;\n --tw-gradient-to-position: 100%;\n --tw-leading: initial;\n --tw-font-weight: initial;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-color: initial;\n --tw-shadow-alpha: 100%;\n --tw-inset-shadow: 0 0 #0000;\n --tw-inset-shadow-color: initial;\n --tw-inset-shadow-alpha: 100%;\n --tw-ring-color: initial;\n --tw-ring-shadow: 0 0 #0000;\n --tw-inset-ring-color: initial;\n --tw-inset-ring-shadow: 0 0 #0000;\n --tw-ring-inset: initial;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-outline-style: solid;\n --tw-blur: initial;\n --tw-brightness: initial;\n --tw-contrast: initial;\n --tw-grayscale: initial;\n --tw-hue-rotate: initial;\n --tw-invert: initial;\n --tw-opacity: initial;\n --tw-saturate: initial;\n --tw-sepia: initial;\n --tw-drop-shadow: initial;\n --tw-drop-shadow-color: initial;\n --tw-drop-shadow-alpha: 100%;\n --tw-drop-shadow-size: initial;\n --tw-duration: initial;\n --tw-ease: initial;\n --tw-content: \"\";\n }\n}\n@layer theme, base, components, utilities;\n@layer theme;\n@layer base {\n *, ::after, ::before, ::backdrop, ::file-selector-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n }\n html, :host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n font-family: var(--default-font-family, var(--atomic-font-family, ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"));\n font-feature-settings: var(--default-font-feature-settings, normal);\n font-variation-settings: var(--default-font-variation-settings, normal);\n -webkit-tap-highlight-color: transparent;\n }\n hr {\n height: 0;\n color: inherit;\n border-top-width: 1px;\n }\n abbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n }\n h1, h2, h3, h4, h5, h6 {\n font-size: inherit;\n font-weight: inherit;\n }\n a {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\n b, strong {\n font-weight: bolder;\n }\n code, kbd, samp, pre {\n font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace);\n font-feature-settings: var(--default-mono-font-feature-settings, normal);\n font-variation-settings: var(--default-mono-font-variation-settings, normal);\n font-size: 1em;\n }\n small {\n font-size: 80%;\n }\n sub, sup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n }\n sub {\n bottom: -0.25em;\n }\n sup {\n top: -0.5em;\n }\n table {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n }\n :-moz-focusring {\n outline: auto;\n }\n progress {\n vertical-align: baseline;\n }\n summary {\n display: list-item;\n }\n ol, ul, menu {\n list-style: none;\n }\n img, svg, video, canvas, audio, iframe, embed, object {\n display: block;\n vertical-align: middle;\n }\n img, video {\n max-width: 100%;\n height: auto;\n }\n button, input, select, optgroup, textarea, ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\n :where(select:is([multiple], [size])) optgroup {\n font-weight: bolder;\n }\n :where(select:is([multiple], [size])) optgroup option {\n padding-inline-start: 20px;\n }\n ::file-selector-button {\n margin-inline-end: 4px;\n }\n ::placeholder {\n opacity: 1;\n }\n @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {\n ::placeholder {\n color: currentcolor;\n }\n @supports (color: color-mix(in lab, red, red)) {\n ::placeholder {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n }\n textarea {\n resize: vertical;\n }\n ::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n ::-webkit-date-and-time-value {\n min-height: 1lh;\n text-align: inherit;\n }\n ::-webkit-datetime-edit {\n display: inline-flex;\n }\n ::-webkit-datetime-edit-fields-wrapper {\n padding: 0;\n }\n ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {\n padding-block: 0;\n }\n ::-webkit-calendar-picker-indicator {\n line-height: 1;\n }\n :-moz-ui-invalid {\n box-shadow: none;\n }\n button, input:where([type=\"button\"], [type=\"reset\"], [type=\"submit\"]), ::file-selector-button {\n appearance: button;\n }\n ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {\n height: auto;\n }\n [hidden]:where(:not([hidden=\"until-found\"])) {\n display: none !important;\n }\n}\n@layer utilities {\n .\\@container {\n container-type: inline-size;\n }\n .pointer-events-auto {\n pointer-events: auto;\n }\n .pointer-events-none {\n pointer-events: none;\n }\n .collapse {\n visibility: collapse;\n }\n .invisible {\n visibility: hidden;\n }\n .visible {\n visibility: visible;\n }\n .sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n }\n .absolute {\n position: absolute;\n }\n .fixed {\n position: fixed;\n }\n .relative {\n position: relative;\n }\n .static {\n position: static;\n }\n .sticky {\n position: sticky;\n }\n .inset-0 {\n inset: calc(0.25rem * 0);\n }\n .-top-2 {\n top: calc(0.25rem * -2);\n }\n .-top-4 {\n top: calc(0.25rem * -4);\n }\n .top-0 {\n top: calc(0.25rem * 0);\n }\n .top-1\\/2 {\n top: calc(1/2 * 100%);\n }\n .top-6 {\n top: calc(0.25rem * 6);\n }\n .top-\\[4px\\] {\n top: 4px;\n }\n .top-full {\n top: 100%;\n }\n .top-px {\n top: 1px;\n }\n .-right-2 {\n right: calc(0.25rem * -2);\n }\n .right-0 {\n right: calc(0.25rem * 0);\n }\n .right-2 {\n right: calc(0.25rem * 2);\n }\n .right-6 {\n right: calc(0.25rem * 6);\n }\n .right-12 {\n right: calc(0.25rem * 12);\n }\n .right-20 {\n right: calc(0.25rem * 20);\n }\n .right-px {\n right: 1px;\n }\n .bottom-0 {\n bottom: calc(0.25rem * 0);\n }\n .bottom-1 {\n bottom: calc(0.25rem * 1);\n }\n .bottom-2 {\n bottom: calc(0.25rem * 2);\n }\n .bottom-px {\n bottom: 1px;\n }\n .left-0 {\n left: calc(0.25rem * 0);\n }\n .left-1 {\n left: calc(0.25rem * 1);\n }\n .left-2 {\n left: calc(0.25rem * 2);\n }\n .left-\\[15px\\] {\n left: 15px;\n }\n .isolate {\n isolation: isolate;\n }\n .z-0 {\n z-index: 0;\n }\n .z-1 {\n z-index: 1;\n }\n .z-10 {\n z-index: 10;\n }\n .z-9998 {\n z-index: 9998;\n }\n .z-9999 {\n z-index: 9999;\n }\n .order-last {\n order: 9999;\n }\n .col-span-2 {\n grid-column: span 2 / span 2;\n }\n .container {\n width: 100%;\n }\n @media (width >= 1024px) {\n .container {\n max-width: 1024px;\n }\n }\n @media (width >= 40rem) {\n .container {\n max-width: 40rem;\n }\n }\n @media (width >= 48rem) {\n .container {\n max-width: 48rem;\n }\n }\n @media (width >= 64rem) {\n .container {\n max-width: 64rem;\n }\n }\n @media (width >= 80rem) {\n .container {\n max-width: 80rem;\n }\n }\n @media (width >= 96rem) {\n .container {\n max-width: 96rem;\n }\n }\n .m-0 {\n margin: calc(0.25rem * 0);\n }\n .m-2 {\n margin: calc(0.25rem * 2);\n }\n .mx-0 {\n margin-inline: calc(0.25rem * 0);\n }\n .mx-0\\.5 {\n margin-inline: calc(0.25rem * 0.5);\n }\n .mx-1 {\n margin-inline: calc(0.25rem * 1);\n }\n .mx-6 {\n margin-inline: calc(0.25rem * 6);\n }\n .mx-16 {\n margin-inline: calc(0.25rem * 16);\n }\n .mx-auto {\n margin-inline: auto;\n }\n .my-2 {\n margin-block: calc(0.25rem * 2);\n }\n .my-3 {\n margin-block: calc(0.25rem * 3);\n }\n .my-4 {\n margin-block: calc(0.25rem * 4);\n }\n .my-6 {\n margin-block: calc(0.25rem * 6);\n }\n .my-auto {\n margin-block: auto;\n }\n .mt-0 {\n margin-top: calc(0.25rem * 0);\n }\n .mt-1 {\n margin-top: calc(0.25rem * 1);\n }\n .mt-1\\.5 {\n margin-top: calc(0.25rem * 1.5);\n }\n .mt-2 {\n margin-top: calc(0.25rem * 2);\n }\n .mt-2\\.5 {\n margin-top: calc(0.25rem * 2.5);\n }\n .mt-3 {\n margin-top: calc(0.25rem * 3);\n }\n .mt-4 {\n margin-top: calc(0.25rem * 4);\n }\n .mt-6 {\n margin-top: calc(0.25rem * 6);\n }\n .mt-7 {\n margin-top: calc(0.25rem * 7);\n }\n .mt-8 {\n margin-top: calc(0.25rem * 8);\n }\n .mt-10 {\n margin-top: calc(0.25rem * 10);\n }\n .mt-px {\n margin-top: 1px;\n }\n .mr-0 {\n margin-right: calc(0.25rem * 0);\n }\n .mr-0\\.5 {\n margin-right: calc(0.25rem * 0.5);\n }\n .mr-1 {\n margin-right: calc(0.25rem * 1);\n }\n .mr-1\\.5 {\n margin-right: calc(0.25rem * 1.5);\n }\n .mr-2 {\n margin-right: calc(0.25rem * 2);\n }\n .mr-3 {\n margin-right: calc(0.25rem * 3);\n }\n .mr-6 {\n margin-right: calc(0.25rem * 6);\n }\n .mb-0 {\n margin-bottom: calc(0.25rem * 0);\n }\n .mb-1 {\n margin-bottom: calc(0.25rem * 1);\n }\n .mb-2 {\n margin-bottom: calc(0.25rem * 2);\n }\n .mb-3 {\n margin-bottom: calc(0.25rem * 3);\n }\n .mb-4 {\n margin-bottom: calc(0.25rem * 4);\n }\n .mb-6 {\n margin-bottom: calc(0.25rem * 6);\n }\n .ml-0\\.5 {\n margin-left: calc(0.25rem * 0.5);\n }\n .ml-1 {\n margin-left: calc(0.25rem * 1);\n }\n .ml-2 {\n margin-left: calc(0.25rem * 2);\n }\n .ml-4 {\n margin-left: calc(0.25rem * 4);\n }\n .ml-6 {\n margin-left: calc(0.25rem * 6);\n }\n .ml-auto {\n margin-left: auto;\n }\n .box-border {\n box-sizing: border-box;\n }\n .box-content {\n box-sizing: content-box;\n }\n .line-clamp-1 {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n }\n .line-clamp-2 {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n }\n .line-clamp-3 {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 3;\n }\n .line-clamp-4 {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 4;\n }\n .line-clamp-none {\n overflow: visible;\n display: block;\n -webkit-box-orient: horizontal;\n -webkit-line-clamp: unset;\n }\n .block {\n display: block;\n }\n .contents {\n display: contents;\n }\n .flex {\n display: flex;\n }\n .grid {\n display: grid;\n }\n .hidden {\n display: none;\n }\n .inline {\n display: inline;\n }\n .inline-block {\n display: inline-block;\n }\n .inline-flex {\n display: inline-flex;\n }\n .table {\n display: table;\n }\n .aspect-square-\\[auto\\] {\n aspect-ratio: 1 / 1;\n height: auto;\n }\n @supports not (aspect-ratio: 1 / 1) {\n .aspect-square-\\[auto\\] {\n height: auto;\n }\n }\n .aspect-square-\\[auto\\] {\n aspect-ratio: 1 / 1;\n height: auto;\n }\n @supports not (aspect-ratio: 1 / 1) {\n .aspect-square-\\[auto\\] {\n height: auto;\n }\n }\n .aspect-square {\n aspect-ratio: 1 / 1;\n }\n .size-\\[27px\\] {\n width: 27px;\n height: 27px;\n }\n .h-1 {\n height: calc(0.25rem * 1);\n }\n .h-2 {\n height: calc(0.25rem * 2);\n }\n .h-2\\.5 {\n height: calc(0.25rem * 2.5);\n }\n .h-3 {\n height: calc(0.25rem * 3);\n }\n .h-4 {\n height: calc(0.25rem * 4);\n }\n .h-5 {\n height: calc(0.25rem * 5);\n }\n .h-5\\/6 {\n height: calc(5/6 * 100%);\n }\n .h-6 {\n height: calc(0.25rem * 6);\n }\n .h-7 {\n height: calc(0.25rem * 7);\n }\n .h-8 {\n height: calc(0.25rem * 8);\n }\n .h-9 {\n height: calc(0.25rem * 9);\n }\n .h-10 {\n height: calc(0.25rem * 10);\n }\n .h-12 {\n height: calc(0.25rem * 12);\n }\n .h-\\[2\\.6rem\\] {\n height: 2.6rem;\n }\n .h-\\[9px\\] {\n height: 9px;\n }\n .h-auto {\n height: auto;\n }\n .h-full {\n height: 100%;\n }\n .max-h-96 {\n max-height: calc(0.25rem * 96);\n }\n .min-h-10 {\n min-height: calc(0.25rem * 10);\n }\n .min-lines-2 {\n min-height: calc(var(--line-height) * 2);\n }\n .min-lines-2 {\n min-height: calc(var(--line-height) * 2);\n }\n .min-lines-3 {\n min-height: calc(var(--line-height) * 3);\n }\n .min-lines-3 {\n min-height: calc(var(--line-height) * 3);\n }\n .w-0\\.5 {\n width: calc(0.25rem * 0.5);\n }\n .w-1 {\n width: calc(0.25rem * 1);\n }\n .w-1\\/2 {\n width: calc(1/2 * 100%);\n }\n .w-2 {\n width: calc(0.25rem * 2);\n }\n .w-2\\.5 {\n width: calc(0.25rem * 2.5);\n }\n .w-3 {\n width: calc(0.25rem * 3);\n }\n .w-3\\.5 {\n width: calc(0.25rem * 3.5);\n }\n .w-3\\/5 {\n width: calc(3/5 * 100%);\n }\n .w-4 {\n width: calc(0.25rem * 4);\n }\n .w-5 {\n width: calc(0.25rem * 5);\n }\n .w-5\\/6 {\n width: calc(5/6 * 100%);\n }\n .w-6 {\n width: calc(0.25rem * 6);\n }\n .w-7 {\n width: calc(0.25rem * 7);\n }\n .w-8 {\n width: calc(0.25rem * 8);\n }\n .w-9 {\n width: calc(0.25rem * 9);\n }\n .w-10 {\n width: calc(0.25rem * 10);\n }\n .w-12 {\n width: calc(0.25rem * 12);\n }\n .w-20 {\n width: calc(0.25rem * 20);\n }\n .w-26 {\n width: calc(0.25rem * 26);\n }\n .w-28 {\n width: calc(0.25rem * 28);\n }\n .w-32 {\n width: calc(0.25rem * 32);\n }\n .w-36 {\n width: calc(0.25rem * 36);\n }\n .w-44 {\n width: calc(0.25rem * 44);\n }\n .w-48 {\n width: calc(0.25rem * 48);\n }\n .w-60 {\n width: calc(0.25rem * 60);\n }\n .w-64 {\n width: calc(0.25rem * 64);\n }\n .w-72 {\n width: calc(0.25rem * 72);\n }\n .w-100 {\n width: calc(0.25rem * 100);\n }\n .w-\\[2\\.6rem\\] {\n width: 2.6rem;\n }\n .w-auto {\n width: auto;\n }\n .w-fit {\n width: fit-content;\n }\n .w-full {\n width: 100%;\n }\n .w-max {\n width: max-content;\n }\n .max-w-4\\/5 {\n max-width: calc(4/5 * 100%);\n }\n .max-w-60 {\n max-width: calc(0.25rem * 60);\n }\n .max-w-\\[30ch\\] {\n max-width: 30ch;\n }\n .max-w-full {\n max-width: 100%;\n }\n .max-w-lg {\n max-width: 32rem;\n }\n .max-w-max {\n max-width: max-content;\n }\n .min-w-0 {\n min-width: calc(0.25rem * 0);\n }\n .min-w-10 {\n min-width: calc(0.25rem * 10);\n }\n .min-w-20 {\n min-width: calc(0.25rem * 20);\n }\n .min-w-24 {\n min-width: calc(0.25rem * 24);\n }\n .min-w-full {\n min-width: 100%;\n }\n .flex-1 {\n flex: 1;\n }\n .flex-none {\n flex: none;\n }\n .flex-shrink {\n flex-shrink: 1;\n }\n .shrink-0 {\n flex-shrink: 0;\n }\n .flex-grow {\n flex-grow: 1;\n }\n .grow {\n flex-grow: 1;\n }\n .basis-1\\/2 {\n flex-basis: calc(1/2 * 100%);\n }\n .basis-8 {\n flex-basis: calc(0.25rem * 8);\n }\n .border-collapse {\n border-collapse: collapse;\n }\n .-translate-x-1\\/2 {\n --tw-translate-x: calc(calc(1/2 * 100%) * -1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n .translate-x-1\\/2 {\n --tw-translate-x: calc(1/2 * 100%);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n .-translate-y-1\\/2 {\n --tw-translate-y: calc(calc(1/2 * 100%) * -1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n .scale-75 {\n --tw-scale-x: 75%;\n --tw-scale-y: 75%;\n --tw-scale-z: 75%;\n scale: var(--tw-scale-x) var(--tw-scale-y);\n }\n .scale-100 {\n --tw-scale-x: 100%;\n --tw-scale-y: 100%;\n --tw-scale-z: 100%;\n scale: var(--tw-scale-x) var(--tw-scale-y);\n }\n .rotate-180 {\n rotate: 180deg;\n }\n .transform {\n transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);\n }\n .animate-pulse {\n animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n }\n .animate-spin {\n animation: spin 1s linear infinite;\n }\n .cursor-\\[inherit\\] {\n cursor: inherit;\n }\n .cursor-pointer {\n cursor: pointer;\n }\n .resize {\n resize: both;\n }\n .resize-none {\n resize: none;\n }\n .list-outside {\n list-style-position: outside;\n }\n .list-decimal {\n list-style-type: decimal;\n }\n .list-disc {\n list-style-type: disc;\n }\n .list-none {\n list-style-type: none;\n }\n .appearance-none {\n appearance: none;\n }\n .grid-cols-\\[min-content_1fr\\] {\n grid-template-columns: min-content 1fr;\n }\n .grid-cols-\\[min-content_auto\\] {\n grid-template-columns: min-content auto;\n }\n .flex-col {\n flex-direction: column;\n }\n .flex-row {\n flex-direction: row;\n }\n .flex-nowrap {\n flex-wrap: nowrap;\n }\n .flex-wrap {\n flex-wrap: wrap;\n }\n .place-items-center {\n place-items: center;\n }\n .content-center {\n align-content: center;\n }\n .items-baseline {\n align-items: baseline;\n }\n .items-center {\n align-items: center;\n }\n .items-start {\n align-items: flex-start;\n }\n .justify-between {\n justify-content: space-between;\n }\n .justify-center {\n justify-content: center;\n }\n .justify-end {\n justify-content: flex-end;\n }\n .gap-0\\.5 {\n gap: calc(0.25rem * 0.5);\n }\n .gap-1 {\n gap: calc(0.25rem * 1);\n }\n .gap-2 {\n gap: calc(0.25rem * 2);\n }\n .gap-3 {\n gap: calc(0.25rem * 3);\n }\n .gap-4 {\n gap: calc(0.25rem * 4);\n }\n .gap-8 {\n gap: calc(0.25rem * 8);\n }\n :where(.space-y-1 > :not(:last-child)) {\n --tw-space-y-reverse: 0;\n margin-block-start: calc(calc(0.25rem * 1) * var(--tw-space-y-reverse));\n margin-block-end: calc(calc(0.25rem * 1) * calc(1 - var(--tw-space-y-reverse)));\n }\n .gap-x-1\\.5 {\n column-gap: calc(0.25rem * 1.5);\n }\n .gap-x-2 {\n column-gap: calc(0.25rem * 2);\n }\n .gap-x-4 {\n column-gap: calc(0.25rem * 4);\n }\n :where(.space-x-1\\.5 > :not(:last-child)) {\n --tw-space-x-reverse: 0;\n margin-inline-start: calc(calc(0.25rem * 1.5) * var(--tw-space-x-reverse));\n margin-inline-end: calc(calc(0.25rem * 1.5) * calc(1 - var(--tw-space-x-reverse)));\n }\n .gap-y-0\\.5 {\n row-gap: calc(0.25rem * 0.5);\n }\n :where(.divide-y > :not(:last-child)) {\n --tw-divide-y-reverse: 0;\n border-bottom-style: var(--tw-border-style);\n border-top-style: var(--tw-border-style);\n border-top-width: calc(1px * var(--tw-divide-y-reverse));\n border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));\n }\n :where(.divide-neutral > :not(:last-child)) {\n border-color: var(--atomic-neutral);\n }\n .self-center {\n align-self: center;\n }\n .self-start {\n align-self: flex-start;\n }\n .truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .overflow-auto {\n overflow: auto;\n }\n .overflow-hidden {\n overflow: hidden;\n }\n .overflow-x-auto {\n overflow-x: auto;\n }\n .overflow-x-clip {\n overflow-x: clip;\n }\n .overflow-x-scroll {\n overflow-x: scroll;\n }\n .overflow-y-auto {\n overflow-y: auto;\n }\n .overflow-y-visible {\n overflow-y: visible;\n }\n .scroll-smooth {\n scroll-behavior: smooth;\n }\n .rounded {\n border-radius: var(--atomic-border-radius);\n }\n .rounded-3xl {\n border-radius: 1.5rem;\n }\n .rounded-full {\n border-radius: calc(infinity * 1px);\n }\n .rounded-lg {\n border-radius: var(--atomic-border-radius-lg);\n }\n .rounded-md {\n border-radius: var(--atomic-border-radius-md);\n }\n .rounded-none {\n border-radius: 0;\n }\n .rounded-sm {\n border-radius: var(--atomic-border-radius);\n }\n .rounded-xl {\n border-radius: var(--atomic-border-radius-xl);\n }\n .rounded-tl-none {\n border-top-left-radius: 0;\n }\n .rounded-r-none {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n .border {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n .border-0 {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n .border-t {\n border-top-style: var(--tw-border-style);\n border-top-width: 1px;\n }\n .border-r {\n border-right-style: var(--tw-border-style);\n border-right-width: 1px;\n }\n .border-b {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 1px;\n }\n .border-l {\n border-left-style: var(--tw-border-style);\n border-left-width: 1px;\n }\n .border-solid {\n --tw-border-style: solid;\n border-style: solid;\n }\n .border-gray-200 {\n border-color: oklch(0.928 0.006 264.531);\n }\n .border-neutral {\n border-color: var(--atomic-neutral);\n }\n .border-neutral-dark {\n border-color: var(--atomic-neutral-dark);\n }\n .border-neutral-dim {\n border-color: var(--atomic-neutral-dim);\n }\n .border-primary {\n border-color: var(--atomic-primary);\n }\n .border-primary-light {\n border-color: var(--atomic-primary-light);\n }\n .border-t-neutral {\n border-top-color: var(--atomic-neutral);\n }\n .border-b-neutral {\n border-bottom-color: var(--atomic-neutral);\n }\n .border-b-neutral-dim {\n border-bottom-color: var(--atomic-neutral-dim);\n }\n .border-l-neutral {\n border-left-color: var(--atomic-neutral);\n }\n .border-l-neutral-dim {\n border-left-color: var(--atomic-neutral-dim);\n }\n .bg-\\[\\#F1F2FF\\] {\n background-color: #F1F2FF;\n }\n .bg-\\[rgba\\(40\\,40\\,40\\,0\\.8\\)\\] {\n background-color: rgba(40,40,40,0.8);\n }\n .bg-background {\n background-color: var(--atomic-background);\n }\n .bg-error {\n background-color: var(--atomic-error);\n }\n .bg-gray-50 {\n background-color: oklch(0.985 0.002 247.839);\n }\n .bg-neutral {\n background-color: var(--atomic-neutral);\n }\n .bg-neutral-dark {\n background-color: var(--atomic-neutral-dark);\n }\n .bg-neutral-light {\n background-color: var(--atomic-neutral-light);\n }\n .bg-primary {\n background-color: var(--atomic-primary);\n }\n .bg-primary-background {\n background-color: var(--atomic-primary-background);\n }\n .bg-transparent {\n background-color: transparent;\n }\n .bg-white {\n background-color: #fff;\n }\n .bg-linear-to-l {\n --tw-gradient-position: to left;\n }\n @supports (background-image: linear-gradient(in lab, red, red)) {\n .bg-linear-to-l {\n --tw-gradient-position: to left in oklab;\n }\n }\n .bg-linear-to-l {\n background-image: linear-gradient(var(--tw-gradient-stops));\n }\n .bg-linear-to-r {\n --tw-gradient-position: to right;\n }\n @supports (background-image: linear-gradient(in lab, red, red)) {\n .bg-linear-to-r {\n --tw-gradient-position: to right in oklab;\n }\n }\n .bg-linear-to-r {\n background-image: linear-gradient(var(--tw-gradient-stops));\n }\n .from-background\\/60 {\n --tw-gradient-from: color-mix(in srgb, #ffffff 60%, transparent);\n }\n @supports (color: color-mix(in lab, red, red)) {\n .from-background\\/60 {\n --tw-gradient-from: color-mix(in oklab, var(--atomic-background) 60%, transparent);\n }\n }\n .from-background\\/60 {\n --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));\n }\n .from-more-results-progress-bar-color-from {\n --tw-gradient-from: var(\n --atomic-more-results-progress-bar-color-from,\n var(--atomic-primary-dark)\n );\n --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));\n }\n .to-more-results-progress-bar-color-to {\n --tw-gradient-to: var(\n --atomic-more-results-progress-bar-color-to,\n var(--atomic-primary-light)\n );\n --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));\n }\n .fill-current {\n fill: currentcolor;\n }\n .stroke-\\[1\\.25\\] {\n stroke-width: 1.25;\n }\n .object-contain {\n object-fit: contain;\n }\n .p-0 {\n padding: calc(0.25rem * 0);\n }\n .p-1 {\n padding: calc(0.25rem * 1);\n }\n .p-2 {\n padding: calc(0.25rem * 2);\n }\n .p-2\\.5 {\n padding: calc(0.25rem * 2.5);\n }\n .p-3 {\n padding: calc(0.25rem * 3);\n }\n .p-3\\.5 {\n padding: calc(0.25rem * 3.5);\n }\n .p-4 {\n padding: calc(0.25rem * 4);\n }\n .p-6 {\n padding: calc(0.25rem * 6);\n }\n .p-7 {\n padding: calc(0.25rem * 7);\n }\n .p-8 {\n padding: calc(0.25rem * 8);\n }\n .px-1 {\n padding-inline: calc(0.25rem * 1);\n }\n .px-2 {\n padding-inline: calc(0.25rem * 2);\n }\n .px-2\\.5 {\n padding-inline: calc(0.25rem * 2.5);\n }\n .px-3 {\n padding-inline: calc(0.25rem * 3);\n }\n .px-4 {\n padding-inline: calc(0.25rem * 4);\n }\n .px-6 {\n padding-inline: calc(0.25rem * 6);\n }\n .px-9 {\n padding-inline: calc(0.25rem * 9);\n }\n .py-0\\.5 {\n padding-block: calc(0.25rem * 0.5);\n }\n .py-1 {\n padding-block: calc(0.25rem * 1);\n }\n .py-1\\.5 {\n padding-block: calc(0.25rem * 1.5);\n }\n .py-2 {\n padding-block: calc(0.25rem * 2);\n }\n .py-2\\.5 {\n padding-block: calc(0.25rem * 2.5);\n }\n .py-3 {\n padding-block: calc(0.25rem * 3);\n }\n .py-3\\.5 {\n padding-block: calc(0.25rem * 3.5);\n }\n .py-4 {\n padding-block: calc(0.25rem * 4);\n }\n .py-4\\.5 {\n padding-block: calc(0.25rem * 4.5);\n }\n .py-5 {\n padding-block: calc(0.25rem * 5);\n }\n .py-6 {\n padding-block: calc(0.25rem * 6);\n }\n .pt-0\\.5 {\n padding-top: calc(0.25rem * 0.5);\n }\n .pt-8 {\n padding-top: calc(0.25rem * 8);\n }\n .pr-2 {\n padding-right: calc(0.25rem * 2);\n }\n .pr-6 {\n padding-right: calc(0.25rem * 6);\n }\n .pr-24 {\n padding-right: calc(0.25rem * 24);\n }\n .pb-1 {\n padding-bottom: calc(0.25rem * 1);\n }\n .pb-3 {\n padding-bottom: calc(0.25rem * 3);\n }\n .pb-4 {\n padding-bottom: calc(0.25rem * 4);\n }\n .pb-5 {\n padding-bottom: calc(0.25rem * 5);\n }\n .pb-6 {\n padding-bottom: calc(0.25rem * 6);\n }\n .pl-0 {\n padding-left: calc(0.25rem * 0);\n }\n .pl-1 {\n padding-left: calc(0.25rem * 1);\n }\n .pl-3 {\n padding-left: calc(0.25rem * 3);\n }\n .pl-7 {\n padding-left: calc(0.25rem * 7);\n }\n .pl-9 {\n padding-left: calc(0.25rem * 9);\n }\n .pl-10 {\n padding-left: calc(0.25rem * 10);\n }\n .text-center {\n text-align: center;\n }\n .text-left {\n text-align: left;\n }\n .align-baseline {\n vertical-align: baseline;\n }\n .align-bottom {\n vertical-align: bottom;\n }\n .align-middle {\n vertical-align: middle;\n }\n .font-sans {\n font-family: var(--atomic-font-family);\n }\n .set-font-size-sm {\n --font-size: var(--atomic-text-sm);\n font-size: var(--font-size);\n --line-height: calc(var(--font-size) * var(--atomic-line-height-ratio));\n line-height: var(--line-height);\n }\n .set-font-size-sm {\n --font-size: var(--atomic-text-sm);\n font-size: var(--font-size);\n --line-height: calc(var(--font-size) * var(--atomic-line-height-ratio));\n line-height: var(--line-height);\n }\n .text-2xl {\n font-size: var(--atomic-text-2xl);\n line-height: var(--tw-leading, calc(2 / 1.5));\n }\n .text-base {\n font-size: var(--atomic-text-base);\n line-height: var(--tw-leading, calc(1.5 / 1));\n }\n .text-lg {\n font-size: var(--atomic-text-lg);\n line-height: var(--tw-leading, calc(1.75 / 1.125));\n }\n .text-sm {\n font-size: var(--atomic-text-sm);\n line-height: var(--tw-leading, calc(1.25 / 0.875));\n }\n .text-xl {\n font-size: var(--atomic-text-xl);\n line-height: var(--tw-leading, calc(1.75 / 1.25));\n }\n .text-xs {\n font-size: 0.75rem;\n line-height: var(--tw-leading, calc(1 / 0.75));\n }\n .text-xs\\/\\[1rem\\] {\n font-size: 0.75rem;\n line-height: 1rem;\n }\n .leading-4 {\n --tw-leading: calc(0.25rem * 4);\n line-height: calc(0.25rem * 4);\n }\n .leading-5 {\n --tw-leading: calc(0.25rem * 5);\n line-height: calc(0.25rem * 5);\n }\n .leading-6 {\n --tw-leading: calc(0.25rem * 6);\n line-height: calc(0.25rem * 6);\n }\n .leading-8 {\n --tw-leading: calc(0.25rem * 8);\n line-height: calc(0.25rem * 8);\n }\n .leading-10 {\n --tw-leading: calc(0.25rem * 10);\n line-height: calc(0.25rem * 10);\n }\n .leading-\\[1\\.5\\] {\n --tw-leading: 1.5;\n line-height: 1.5;\n }\n .leading-\\[calc\\(1\\/\\.75\\)\\] {\n --tw-leading: calc(1 / .75);\n line-height: calc(1 / .75);\n }\n .leading-\\[var\\(--line-height\\)\\] {\n --tw-leading: var(--line-height);\n line-height: var(--line-height);\n }\n .leading-none {\n --tw-leading: 1;\n line-height: 1;\n }\n .font-bold {\n --tw-font-weight: var(--atomic-font-bold);\n font-weight: var(--atomic-font-bold);\n }\n .font-light {\n --tw-font-weight: 300;\n font-weight: 300;\n }\n .font-medium {\n --tw-font-weight: 500;\n font-weight: 500;\n }\n .font-normal {\n --tw-font-weight: var(--atomic-font-normal);\n font-weight: var(--atomic-font-normal);\n }\n .font-semibold {\n --tw-font-weight: 600;\n font-weight: 600;\n }\n .break-words {\n overflow-wrap: break-word;\n }\n .break-all {\n word-break: break-all;\n }\n .break-keep {\n word-break: keep-all;\n }\n .text-ellipsis {\n text-overflow: ellipsis;\n }\n .whitespace-normal {\n white-space: normal;\n }\n .whitespace-nowrap {\n white-space: nowrap;\n }\n .whitespace-pre-wrap {\n white-space: pre-wrap;\n }\n .text-\\[\\#54698D\\] {\n color: #54698D;\n }\n .text-\\[inherit\\] {\n color: inherit;\n }\n .text-black {\n color: #000;\n }\n .text-error {\n color: var(--atomic-error);\n }\n .text-gray-500 {\n color: oklch(0.551 0.027 264.364);\n }\n .text-gray-600 {\n color: oklch(0.446 0.03 256.802);\n }\n .text-gray-700 {\n color: oklch(0.373 0.034 259.733);\n }\n .text-gray-900 {\n color: oklch(0.21 0.034 264.665);\n }\n .text-green-600 {\n color: oklch(0.627 0.194 149.214);\n }\n .text-inline-code {\n color: var(--atomic-inline-code);\n }\n .text-neutral {\n color: var(--atomic-neutral);\n }\n .text-neutral-dark {\n color: var(--atomic-neutral-dark);\n }\n .text-on-background {\n color: var(--atomic-on-background);\n }\n .text-on-primary {\n color: var(--atomic-on-primary);\n }\n .text-primary {\n color: var(--atomic-primary);\n }\n .text-primary-light {\n color: var(--atomic-primary-light);\n }\n .text-rating-icon-active {\n color: var(--atomic-rating-icon-active-color, #f6ce3c);\n }\n .text-rating-icon-inactive {\n color: var(\n --atomic-rating-icon-inactive-color,\n var(--atomic-neutral)\n );\n }\n .text-success {\n color: var(--atomic-success);\n }\n .text-transparent {\n color: transparent;\n }\n .capitalize {\n text-transform: capitalize;\n }\n .lowercase {\n text-transform: lowercase;\n }\n .italic {\n font-style: italic;\n }\n .line-through {\n text-decoration-line: line-through;\n }\n .placeholder-neutral-dark::placeholder {\n color: var(--atomic-neutral-dark);\n }\n .opacity-0 {\n opacity: 0%;\n }\n .opacity-50 {\n opacity: 50%;\n }\n .opacity-80 {\n opacity: 80%;\n }\n .shadow {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .shadow-inner-primary {\n --tw-shadow: inset 0 0 0 1px var(--tw-shadow-color, var(--atomic-primary));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .shadow-lg {\n --tw-shadow: 0px 2px 8px var(--tw-shadow-color, rgba(229, 232, 232, 0.75));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .shadow-sm {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .shadow-t-lg {\n --tw-shadow: 0px -2px 8px var(--tw-shadow-color, rgba(229, 232, 232, 0.75));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .ring {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .ring-1 {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .ring-3 {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .ring-primary {\n --tw-ring-color: var(--atomic-primary);\n }\n .ring-primary-light {\n --tw-ring-color: var(--atomic-primary-light);\n }\n .ring-ring-primary {\n --tw-ring-color: var(--atomic-ring-primary);\n }\n .outline {\n outline-style: var(--tw-outline-style);\n outline-width: 1px;\n }\n .outline-error {\n outline-color: var(--atomic-error);\n }\n .outline-neutral {\n outline-color: var(--atomic-neutral);\n }\n .outline-primary {\n outline-color: var(--atomic-primary);\n }\n .blur {\n --tw-blur: blur(8px);\n filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);\n }\n .grayscale {\n --tw-grayscale: grayscale(100%);\n filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);\n }\n .invert {\n --tw-invert: invert(100%);\n filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);\n }\n .filter {\n filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);\n }\n .transition {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function, cubic-bezier(0.4, 0, 0.2, 1)));\n transition-duration: var(--tw-duration, var(--default-transition-duration, 150ms));\n }\n .transition-\\[visibility\\] {\n transition-property: visibility;\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function, cubic-bezier(0.4, 0, 0.2, 1)));\n transition-duration: var(--tw-duration, var(--default-transition-duration, 150ms));\n }\n .transition-all {\n transition-property: all;\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function, cubic-bezier(0.4, 0, 0.2, 1)));\n transition-duration: var(--tw-duration, var(--default-transition-duration, 150ms));\n }\n .transition-colors {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function, cubic-bezier(0.4, 0, 0.2, 1)));\n transition-duration: var(--tw-duration, var(--default-transition-duration, 150ms));\n }\n .transition-opacity {\n transition-property: opacity;\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function, cubic-bezier(0.4, 0, 0.2, 1)));\n transition-duration: var(--tw-duration, var(--default-transition-duration, 150ms));\n }\n .duration-200 {\n --tw-duration: 200ms;\n transition-duration: 200ms;\n }\n .duration-300 {\n --tw-duration: 300ms;\n transition-duration: 300ms;\n }\n .duration-500 {\n --tw-duration: 500ms;\n transition-duration: 500ms;\n }\n .ease-in-out {\n --tw-ease: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n }\n .\\[grid-area\\:modal\\] {\n grid-area: modal;\n }\n .\\[scrollbar-gutter\\:stable_both-edges\\] {\n scrollbar-gutter: stable both-edges;\n }\n @media (hover: hover) {\n .group-hover\\:visible:is(:where(.group):hover *) {\n visibility: visible;\n }\n }\n @media (hover: hover) {\n .group-hover\\:text-error:is(:where(.group):hover *) {\n color: var(--atomic-error);\n }\n }\n @media (hover: hover) {\n .group-hover\\:text-primary:is(:where(.group):hover *) {\n color: var(--atomic-primary);\n }\n }\n @media (hover: hover) {\n .group-hover\\:text-primary-light:is(:where(.group):hover *) {\n color: var(--atomic-primary-light);\n }\n }\n .group-focus\\:text-primary:is(:where(.group):focus *) {\n color: var(--atomic-primary);\n }\n .group-focus\\:text-primary-light:is(:where(.group):focus *) {\n color: var(--atomic-primary-light);\n }\n .group-focus-visible\\:text-error:is(:where(.group):focus-visible *) {\n color: var(--atomic-error);\n }\n .group-focus-visible\\:text-primary:is(:where(.group):focus-visible *) {\n color: var(--atomic-primary);\n }\n .peer-focus-within\\:border-primary-light:is(:where(.peer):focus-within ~ *) {\n border-color: var(--atomic-primary-light);\n }\n .peer-focus-within\\:text-primary-light:is(:where(.peer):focus-within ~ *) {\n color: var(--atomic-primary-light);\n }\n @media (hover: hover) {\n .peer-hover\\:border-primary-light:is(:where(.peer):hover ~ *) {\n border-color: var(--atomic-primary-light);\n }\n }\n @media (hover: hover) {\n .peer-hover\\:text-error:is(:where(.peer):hover ~ *) {\n color: var(--atomic-error);\n }\n }\n @media (hover: hover) {\n .peer-hover\\:text-primary-light:is(:where(.peer):hover ~ *) {\n color: var(--atomic-primary-light);\n }\n }\n .before\\:inline::before {\n content: var(--tw-content);\n display: inline;\n }\n .before\\:content-\\[\\'\\,\\\\00a0\\'\\]::before {\n content: var(--tw-content);\n --tw-content: ',\\00a0';\n content: var(--tw-content);\n }\n .after\\:absolute::after {\n content: var(--tw-content);\n position: absolute;\n }\n .after\\:-bottom-0\\.5::after {\n content: var(--tw-content);\n bottom: calc(0.25rem * -0.5);\n }\n .after\\:block::after {\n content: var(--tw-content);\n display: block;\n }\n .after\\:h-1::after {\n content: var(--tw-content);\n height: calc(0.25rem * 1);\n }\n .after\\:w-full::after {\n content: var(--tw-content);\n width: 100%;\n }\n .after\\:rounded::after {\n content: var(--tw-content);\n border-radius: var(--atomic-border-radius);\n }\n .after\\:bg-primary::after {\n content: var(--tw-content);\n background-color: var(--atomic-primary);\n }\n .focus-within\\:border-disabled:focus-within {\n border-color: var(--atomic-disabled);\n }\n .focus-within\\:border-primary:focus-within {\n border-color: var(--atomic-primary);\n }\n .focus-within\\:ring-3:focus-within {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .focus-within\\:ring-neutral:focus-within {\n --tw-ring-color: var(--atomic-neutral);\n }\n .focus-within\\:ring-ring-primary:focus-within {\n --tw-ring-color: var(--atomic-ring-primary);\n }\n @media (hover: hover) {\n .hover\\:border:hover {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n }\n @media (hover: hover) {\n .hover\\:border-error:hover {\n border-color: var(--atomic-error);\n }\n }\n @media (hover: hover) {\n .hover\\:border-primary-light:hover {\n border-color: var(--atomic-primary-light);\n }\n }\n @media (hover: hover) {\n .hover\\:bg-error:hover {\n background-color: var(--atomic-error);\n }\n }\n @media (hover: hover) {\n .hover\\:bg-neutral-light:hover {\n background-color: var(--atomic-neutral-light);\n }\n }\n @media (hover: hover) {\n .hover\\:bg-primary-light:hover {\n background-color: var(--atomic-primary-light);\n }\n }\n @media (hover: hover) {\n .hover\\:bg-transparent:hover {\n background-color: transparent;\n }\n }\n @media (hover: hover) {\n .hover\\:fill-white:hover {\n fill: #fff;\n }\n }\n @media (hover: hover) {\n .hover\\:text-primary-light:hover {\n color: var(--atomic-primary-light);\n }\n }\n @media (hover: hover) {\n .hover\\:underline:hover {\n text-decoration-line: underline;\n }\n }\n @media (hover: hover) {\n .hover\\:opacity-100:hover {\n opacity: 100%;\n }\n }\n @media (hover: hover) {\n .hover\\:shadow-sm:hover {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n .focus\\:opacity-100:focus {\n opacity: 100%;\n }\n .focus\\:outline-hidden:focus {\n --tw-outline-style: none;\n outline-style: none;\n }\n @media (forced-colors: active) {\n .focus\\:outline-hidden:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n }\n }\n .focus-visible\\:border:focus-visible {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n .focus-visible\\:border-error:focus-visible {\n border-color: var(--atomic-error);\n }\n .focus-visible\\:border-primary:focus-visible {\n border-color: var(--atomic-primary);\n }\n .focus-visible\\:border-primary-light:focus-visible {\n border-color: var(--atomic-primary-light);\n }\n .focus-visible\\:bg-error:focus-visible {\n background-color: var(--atomic-error);\n }\n .focus-visible\\:bg-neutral-light:focus-visible {\n background-color: var(--atomic-neutral-light);\n }\n .focus-visible\\:bg-primary-light:focus-visible {\n background-color: var(--atomic-primary-light);\n }\n .focus-visible\\:text-primary-light:focus-visible {\n color: var(--atomic-primary-light);\n }\n .focus-visible\\:underline:focus-visible {\n text-decoration-line: underline;\n }\n .focus-visible\\:ring-2:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .focus-visible\\:outline-none:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n @media (width >= 40rem) {\n .sm\\:px-6 {\n padding-inline: calc(0.25rem * 6);\n }\n }\n .\\[part\\=\\\"breadcrumb-button\\\"\\]\\:visible:is(part=\"breadcrumb-button\") {\n visibility: visible;\n }\n}\n@layer theme, base, components, utilities;\n@layer components {\n .input-primary {\n border-radius: var(--atomic-border-radius);\n border-style: var(--tw-border-style);\n border-width: 1px;\n border-color: var(--atomic-neutral);\n background-color: var(--atomic-background);\n }\n @media (hover: hover) {\n .input-primary:hover {\n border-color: var(--atomic-primary-light);\n }\n }\n .input-primary:focus-visible {\n border-color: var(--atomic-primary);\n }\n .input-primary:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .input-primary:focus-visible {\n --tw-ring-color: var(--atomic-ring-primary);\n }\n .input-primary:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n .btn-radio {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n }\n .btn-radio::before {\n content: var(--tw-content);\n --tw-content: attr(value);\n content: var(--tw-content);\n }\n .btn-primary {\n border-radius: var(--atomic-border-radius);\n background-color: var(--atomic-primary);\n color: var(--atomic-on-primary);\n }\n @media (hover: hover) {\n .btn-primary:hover {\n background-color: var(--atomic-primary-light);\n }\n }\n .btn-primary:focus-visible {\n background-color: var(--atomic-primary-light);\n }\n .btn-primary:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .btn-primary:focus-visible {\n --tw-ring-color: var(--atomic-ring-primary);\n }\n .btn-primary:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n .btn-primary:disabled {\n cursor: not-allowed;\n }\n .btn-primary:disabled {\n background-color: var(--atomic-disabled);\n }\n .btn-outline-primary {\n border-radius: var(--atomic-border-radius);\n border-style: var(--tw-border-style);\n border-width: 1px;\n border-color: var(--atomic-neutral);\n background-color: var(--atomic-background);\n color: var(--atomic-primary);\n }\n @media (hover: hover) {\n .btn-outline-primary:hover {\n border-color: var(--atomic-primary-light);\n }\n }\n @media (hover: hover) {\n .btn-outline-primary:hover {\n color: var(--atomic-primary-light);\n }\n }\n .btn-outline-primary:focus-visible {\n border-color: var(--atomic-primary);\n }\n .btn-outline-primary:focus-visible {\n color: var(--atomic-primary);\n }\n .btn-outline-primary:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .btn-outline-primary:focus-visible {\n --tw-ring-color: var(--atomic-ring-primary);\n }\n .btn-outline-primary:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n .btn-outline-primary:disabled {\n cursor: not-allowed;\n }\n .btn-outline-primary:disabled {\n border-color: var(--atomic-neutral);\n }\n .btn-outline-primary:disabled {\n color: var(--atomic-neutral);\n }\n .btn-text-primary {\n border-radius: var(--atomic-border-radius);\n background-color: var(--atomic-background);\n color: var(--atomic-primary);\n }\n @media (hover: hover) {\n .btn-text-primary:hover {\n background-color: var(--atomic-neutral-light);\n }\n }\n .btn-text-primary:focus-visible {\n background-color: var(--atomic-neutral-light);\n }\n .btn-text-primary:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n .btn-outline-neutral {\n border-radius: var(--atomic-border-radius);\n border-style: var(--tw-border-style);\n border-width: 1px;\n border-color: var(--atomic-neutral);\n background-color: var(--atomic-background);\n color: var(--atomic-on-background);\n }\n @media (hover: hover) {\n .btn-outline-neutral:hover {\n border-color: var(--atomic-primary);\n }\n }\n @media (hover: hover) {\n .btn-outline-neutral:hover {\n color: var(--atomic-primary);\n }\n }\n .btn-outline-neutral:focus-visible {\n border-color: var(--atomic-primary);\n }\n .btn-outline-neutral:focus-visible {\n color: var(--atomic-primary);\n }\n .btn-outline-neutral:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .btn-outline-neutral:focus-visible {\n --tw-ring-color: var(--atomic-ring-primary);\n }\n .btn-outline-neutral:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n .btn-outline-neutral:disabled {\n cursor: not-allowed;\n }\n .btn-outline-neutral:disabled {\n border-color: var(--atomic-neutral);\n }\n .btn-outline-neutral:disabled {\n color: var(--atomic-on-background);\n }\n .btn-outline-neutral:disabled {\n opacity: 50%;\n }\n .btn-outline-bg-neutral {\n border-radius: var(--atomic-border-radius);\n border-style: var(--tw-border-style);\n border-width: 1px;\n border-color: var(--atomic-neutral);\n background-color: var(--atomic-background);\n color: var(--atomic-on-background);\n }\n @media (hover: hover) {\n .btn-outline-bg-neutral:hover {\n border-color: var(--atomic-primary);\n }\n }\n @media (hover: hover) {\n .btn-outline-bg-neutral:hover {\n background-color: var(--atomic-neutral-light);\n }\n }\n @media (hover: hover) {\n .btn-outline-bg-neutral:hover {\n color: var(--atomic-primary);\n }\n }\n .btn-outline-bg-neutral:focus-visible {\n border-color: var(--atomic-primary);\n }\n .btn-outline-bg-neutral:focus-visible {\n background-color: var(--atomic-neutral-light);\n }\n .btn-outline-bg-neutral:focus-visible {\n color: var(--atomic-primary);\n }\n .btn-outline-bg-neutral:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .btn-outline-bg-neutral:focus-visible {\n --tw-ring-color: var(--atomic-ring-primary);\n }\n .btn-outline-bg-neutral:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n .btn-outline-bg-neutral:disabled {\n cursor: not-allowed;\n }\n .btn-outline-bg-neutral:disabled {\n border-color: var(--atomic-neutral);\n }\n .btn-outline-bg-neutral:disabled {\n color: var(--atomic-on-background);\n }\n .btn-outline-bg-neutral:disabled {\n opacity: 50%;\n }\n .btn-outline-bg-error {\n border-radius: var(--atomic-border-radius);\n border-style: var(--tw-border-style);\n border-width: 1px;\n border-color: var(--atomic-neutral);\n background-color: var(--atomic-background);\n color: var(--atomic-on-background);\n }\n @media (hover: hover) {\n .btn-outline-bg-error:hover {\n border-color: var(--atomic-primary);\n }\n }\n @media (hover: hover) {\n .btn-outline-bg-error:hover {\n background-color: var(--atomic-neutral-light);\n }\n }\n @media (hover: hover) {\n .btn-outline-bg-error:hover {\n color: var(--atomic-primary);\n }\n }\n .btn-outline-bg-error:focus-visible {\n border-color: var(--atomic-primary);\n }\n .btn-outline-bg-error:focus-visible {\n background-color: var(--atomic-neutral-light);\n }\n .btn-outline-bg-error:focus-visible {\n color: var(--atomic-primary);\n }\n .btn-outline-bg-error:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .btn-outline-bg-error:focus-visible {\n --tw-ring-color: var(--atomic-ring-primary);\n }\n .btn-outline-bg-error:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n .btn-outline-bg-error:disabled {\n cursor: not-allowed;\n }\n .btn-outline-bg-error:disabled {\n border-color: var(--atomic-neutral);\n }\n .btn-outline-bg-error:disabled {\n color: var(--atomic-on-background);\n }\n .btn-outline-bg-error:disabled {\n opacity: 50%;\n }\n .btn-outline-error {\n border-radius: var(--atomic-border-radius);\n border-style: var(--tw-border-style);\n border-width: 1px;\n border-color: var(--atomic-neutral);\n background-color: var(--atomic-background);\n color: var(--atomic-on-background);\n }\n @media (hover: hover) {\n .btn-outline-error:hover {\n border-color: var(--atomic-error);\n }\n }\n @media (hover: hover) {\n .btn-outline-error:hover {\n color: var(--atomic-error);\n }\n }\n .btn-outline-error:focus-visible {\n border-color: var(--atomic-error);\n }\n .btn-outline-error:focus-visible {\n color: var(--atomic-error);\n }\n .btn-outline-error:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n .btn-outline-error:focus-visible {\n --tw-ring-color: var(--atomic-ring-primary);\n }\n .btn-outline-error:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n .btn-outline-error:disabled {\n cursor: not-allowed;\n }\n .btn-outline-error:disabled {\n border-color: var(--atomic-neutral);\n }\n .btn-outline-error:disabled {\n color: var(--atomic-on-background);\n }\n .btn-outline-error:disabled {\n opacity: 50%;\n }\n .btn-text-neutral {\n border-radius: var(--atomic-border-radius);\n background-color: var(--atomic-background);\n color: var(--atomic-on-background);\n }\n @media (hover: hover) {\n .btn-text-neutral:hover {\n background-color: var(--atomic-neutral-light);\n }\n }\n @media (hover: hover) {\n .btn-text-neutral:hover {\n color: var(--atomic-primary);\n }\n }\n .btn-text-neutral:focus-visible {\n background-color: var(--atomic-neutral-light);\n }\n .btn-text-neutral:focus-visible {\n color: var(--atomic-primary);\n }\n .btn-text-neutral:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n .btn-text-transparent {\n color: var(--atomic-on-background);\n }\n @media (hover: hover) {\n .btn-text-transparent:hover {\n color: var(--atomic-primary-light);\n }\n }\n .btn-text-transparent:focus-visible {\n color: var(--atomic-primary-light);\n }\n .btn-square-neutral {\n border-style: var(--tw-border-style);\n border-width: 1px;\n border-color: var(--atomic-neutral);\n background-color: var(--atomic-background);\n color: var(--atomic-on-background);\n }\n @media (hover: hover) {\n .btn-square-neutral:hover {\n background-color: var(--atomic-neutral-light);\n }\n }\n .btn-square-neutral:focus-visible {\n background-color: var(--atomic-neutral-light);\n }\n .btn-square-neutral:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n .btn-page {\n display: grid;\n height: calc(0.25rem * 10);\n width: calc(0.25rem * 10);\n place-items: center;\n border-style: var(--tw-border-style);\n border-width: 0px;\n font-size: var(--atomic-text-lg);\n line-height: var(--tw-leading, calc(1.75 / 1.125));\n }\n @media (hover: hover) {\n .btn-page:hover {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n }\n .btn-page:focus-visible {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n .btn-page.selected {\n border-style: var(--tw-border-style);\n border-width: 2px;\n border-color: var(--atomic-primary);\n --tw-font-weight: var(--atomic-font-bold);\n font-weight: var(--atomic-font-bold);\n }\n}\n@layer base {\n :host {\n display: block;\n }\n :host, button, input, select {\n font-family: var(--atomic-font-family);\n font-size: var(--atomic-text-base);\n line-height: var(--tw-leading, calc(1.5 / 1));\n --tw-font-weight: var(--atomic-font-normal);\n font-weight: var(--atomic-font-normal);\n }\n button {\n cursor: pointer;\n }\n :host(.atomic-hidden) {\n display: none;\n }\n .ripple {\n position: absolute;\n pointer-events: none;\n transform: scale(0);\n border-radius: 50%;\n animation: ripple var(--animation-duration) linear;\n }\n .ripple-relative {\n position: relative;\n }\n .ripple-parent {\n overflow: hidden;\n }\n @keyframes ripple {\n to {\n transform: scale(4);\n opacity: 0;\n }\n }\n}\n@property --tw-translate-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-z {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-scale-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-scale-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-scale-z {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-rotate-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-z {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-space-y-reverse {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-space-x-reverse {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-divide-y-reverse {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-border-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-gradient-position {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-gradient-from {\n syntax: \"<color>\";\n inherits: false;\n initial-value: #0000;\n}\n@property --tw-gradient-via {\n syntax: \"<color>\";\n inherits: false;\n initial-value: #0000;\n}\n@property --tw-gradient-to {\n syntax: \"<color>\";\n inherits: false;\n initial-value: #0000;\n}\n@property --tw-gradient-stops {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-gradient-via-stops {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-gradient-from-position {\n syntax: \"<length-percentage>\";\n inherits: false;\n initial-value: 0%;\n}\n@property --tw-gradient-via-position {\n syntax: \"<length-percentage>\";\n inherits: false;\n initial-value: 50%;\n}\n@property --tw-gradient-to-position {\n syntax: \"<length-percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-leading {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-font-weight {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-inset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-ring-inset {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-offset-width {\n syntax: \"<length>\";\n inherits: false;\n initial-value: 0px;\n}\n@property --tw-ring-offset-color {\n syntax: \"*\";\n inherits: false;\n initial-value: #fff;\n}\n@property --tw-ring-offset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-outline-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-blur {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-brightness {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-contrast {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-grayscale {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-hue-rotate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-invert {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-opacity {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-saturate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-sepia {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-drop-shadow-size {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-duration {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ease {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-content {\n syntax: \"*\";\n initial-value: \"\";\n inherits: false;\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n@keyframes pulse {\n 50% {\n opacity: 0.5;\n }\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n@keyframes pulse {\n 50% {\n opacity: 0.5;\n }\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n@keyframes pulse {\n 50% {\n opacity: 0.5;\n }\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n@keyframes pulse {\n 50% {\n opacity: 0.5;\n }\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n@keyframes pulse {\n 50% {\n opacity: 0.5;\n }\n}\n@layer properties {\n @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {\n *, ::before, ::after, ::backdrop {\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-translate-z: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-scale-z: 1;\n --tw-rotate-x: initial;\n --tw-rotate-y: initial;\n --tw-rotate-z: initial;\n --tw-skew-x: initial;\n --tw-skew-y: initial;\n --tw-space-y-reverse: 0;\n --tw-space-x-reverse: 0;\n --tw-divide-y-reverse: 0;\n --tw-border-style: solid;\n --tw-gradient-position: initial;\n --tw-gradient-from: #0000;\n --tw-gradient-via: #0000;\n --tw-gradient-to: #0000;\n --tw-gradient-stops: initial;\n --tw-gradient-via-stops: initial;\n --tw-gradient-from-position: 0%;\n --tw-gradient-via-position: 50%;\n --tw-gradient-to-position: 100%;\n --tw-leading: initial;\n --tw-font-weight: initial;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-color: initial;\n --tw-shadow-alpha: 100%;\n --tw-inset-shadow: 0 0 #0000;\n --tw-inset-shadow-color: initial;\n --tw-inset-shadow-alpha: 100%;\n --tw-ring-color: initial;\n --tw-ring-shadow: 0 0 #0000;\n --tw-inset-ring-color: initial;\n --tw-inset-ring-shadow: 0 0 #0000;\n --tw-ring-inset: initial;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-outline-style: solid;\n --tw-blur: initial;\n --tw-brightness: initial;\n --tw-contrast: initial;\n --tw-grayscale: initial;\n --tw-hue-rotate: initial;\n --tw-invert: initial;\n --tw-opacity: initial;\n --tw-saturate: initial;\n --tw-sepia: initial;\n --tw-drop-shadow: initial;\n --tw-drop-shadow-color: initial;\n --tw-drop-shadow-alpha: 100%;\n --tw-drop-shadow-size: initial;\n --tw-duration: initial;\n --tw-ease: initial;\n --tw-content: \"\";\n }\n }\n}\n";
21
+ const AtomicPagerStyle0 = atomicPagerCss;
22
+
23
+ var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
24
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
25
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
26
+ r = Reflect.decorate(decorators, target, key, desc);
27
+ else
28
+ for (var i = decorators.length - 1; i >= 0; i--)
29
+ if (d = decorators[i])
30
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
31
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
32
+ };
33
+ const AtomicPager$1 = /*@__PURE__*/ proxyCustomElement(class AtomicPager extends HTMLElement {
34
+ constructor() {
35
+ super();
36
+ this.__registerHost();
37
+ this.__attachShadow();
38
+ this.scrollToTopEvent = createEvent(this, "atomic/scrollToTop", 7);
39
+ this.isAppLoaded = false;
40
+ /**
41
+ * Specifies how many page buttons to display in the pager.
42
+ */
43
+ this.numberOfPages = 5;
44
+ /**
45
+ * The SVG icon to use to display the Previous button.
46
+ *
47
+ * - Use a value that starts with `http://`, `https://`, `./`, or `../`, to fetch and display an icon from a given location.
48
+ * - Use a value that starts with `assets://`, to display an icon from the Atomic package.
49
+ * - Use a stringified SVG to display it directly.
50
+ */
51
+ this.previousButtonIcon = ArrowLeftIcon;
52
+ /**
53
+ * The SVG icon to use to display the Next button.
54
+ *
55
+ * - Use a value that starts with `http://`, `https://`, `./`, or `../`, to fetch and display an icon from a given location.
56
+ * - Use a value that starts with `assets://`, to display an icon from the Atomic package.
57
+ * - Use a stringified SVG to display it directly.
58
+ */
59
+ this.nextButtonIcon = ArrowRightIcon;
60
+ this.radioGroupName = randomID('atomic-pager-');
61
+ this.pagerState = undefined;
62
+ this.searchStatusState = undefined;
63
+ this.error = undefined;
64
+ this.isAppLoaded = false;
65
+ this.numberOfPages = 5;
66
+ this.previousButtonIcon = ArrowLeftIcon;
67
+ this.nextButtonIcon = ArrowRightIcon;
68
+ }
69
+ initialize() {
70
+ this.searchStatus = buildSearchStatus(this.bindings.engine);
71
+ this.pager = buildPager(this.bindings.engine, {
72
+ options: { numberOfPages: this.numberOfPages },
73
+ });
74
+ createAppLoadedListener(this.bindings.store, (isAppLoaded) => {
75
+ this.isAppLoaded = isAppLoaded;
76
+ });
77
+ }
78
+ render() {
79
+ return (h(PagerGuard, { key: '227984449aa93173867e06dde5d38b7f999647b3', hasError: this.searchStatusState.hasError, hasItems: this.searchStatusState.hasResults, isAppLoaded: this.isAppLoaded }, h(PagerNavigation, { key: '8de0c991a0435c307fcd6ea9d3afc2d360ba9c7a', i18n: this.bindings.i18n }, h(PagerPreviousButton, { key: '6cfc995533d08e90042a8c7ddce596352b0b64cd', icon: this.previousButtonIcon, disabled: !this.pagerState.hasPreviousPage, i18n: this.bindings.i18n, onClick: () => {
80
+ this.pager.previousPage();
81
+ this.focusOnFirstResultAndScrollToTop();
82
+ } }), h(PagerPageButtons, { key: '3110b9c8c348a9f52cf6568ef083dda6eca15d40', i18n: this.bindings.i18n }, this.pagerState.currentPages.map((pageNumber) => {
83
+ return (h(PagerPageButton, { isSelected: this.pager.isCurrentPage(pageNumber), ariaLabel: this.bindings.i18n.t('page-number', { pageNumber }), onChecked: () => {
84
+ this.pager.selectPage(pageNumber);
85
+ this.focusOnFirstResultAndScrollToTop();
86
+ }, page: pageNumber, groupName: this.radioGroupName, text: pageNumber.toLocaleString(this.bindings.i18n.language) }));
87
+ })), h(PagerNextButton, { key: '77d2397e1346753b18db870cb1d5fe8c5f67e07c', icon: this.nextButtonIcon, disabled: !this.pagerState.hasNextPage, i18n: this.bindings.i18n, onClick: () => {
88
+ this.pager.nextPage();
89
+ this.focusOnFirstResultAndScrollToTop();
90
+ } }))));
91
+ }
92
+ async focusOnFirstResultAndScrollToTop() {
93
+ await this.bindings.store.state.resultList?.focusOnFirstResultAfterNextSearch();
94
+ this.scrollToTopEvent.emit();
95
+ }
96
+ static get style() { return AtomicPagerStyle0; }
97
+ }, [1, "atomic-pager", {
98
+ "numberOfPages": [514, "number-of-pages"],
99
+ "previousButtonIcon": [513, "previous-button-icon"],
100
+ "nextButtonIcon": [513, "next-button-icon"],
101
+ "pagerState": [32],
102
+ "searchStatusState": [32],
103
+ "error": [32],
104
+ "isAppLoaded": [32]
105
+ }]);
106
+ __decorate([
107
+ InitializeBindings()
108
+ ], AtomicPager$1.prototype, "bindings", void 0);
109
+ __decorate([
110
+ BindStateToController('pager')
111
+ ], AtomicPager$1.prototype, "pagerState", void 0);
112
+ __decorate([
113
+ BindStateToController('searchStatus')
114
+ ], AtomicPager$1.prototype, "searchStatusState", void 0);
115
+ function defineCustomElement$1() {
116
+ if (typeof customElements === "undefined") {
117
+ return;
118
+ }
119
+ const components = ["atomic-pager"];
120
+ components.forEach(tagName => { switch (tagName) {
121
+ case "atomic-pager":
122
+ if (!customElements.get(tagName)) {
123
+ customElements.define(tagName, AtomicPager$1);
124
+ }
125
+ break;
126
+ } });
127
+ }
128
+
129
+ const AtomicPager = AtomicPager$1;
130
+ const defineCustomElement = defineCustomElement$1;
131
+
132
+ export { AtomicPager, defineCustomElement };
133
+
134
+ //# sourceMappingURL=atomic-pager.js.map
@@ -0,0 +1 @@
1
+ {"file":"atomic-pager.js","mappings":"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","names":["AtomicPager"],"sources":["src/components/common/pager/stencil-pager-guard.tsx","src/components/search/atomic-pager/atomic-pager.pcss?tag=atomic-pager&encapsulation=shadow","src/components/search/atomic-pager/atomic-pager.tsx"],"sourcesContent":["import {FunctionalComponent, h, Fragment} from '@stencil/core';\nimport {Hidden} from '../stencil-hidden';\n\n/**\n * @deprecated use the lit equivalent\n */\nexport interface PagerGuardProps {\n hasError: boolean;\n isAppLoaded: boolean;\n hasItems: boolean;\n}\n\n/**\n * @deprecated use the lit equivalent\n */\nexport const PagerGuard: FunctionalComponent<PagerGuardProps> = (\n props,\n children\n) => {\n if (props.hasError || !props.isAppLoaded || !props.hasItems) {\n return <Hidden />;\n }\n return <Fragment>{...children}</Fragment>;\n};\n","@import '../../../global/global.pcss';\n","import {\n buildPager,\n buildSearchStatus,\n Pager,\n PagerState,\n SearchStatus,\n SearchStatusState,\n} from '@coveo/headless';\nimport {Component, Event, EventEmitter, h, Prop, State} from '@stencil/core';\nimport ArrowLeftIcon from '../../../images/arrow-left-rounded.svg';\nimport ArrowRightIcon from '../../../images/arrow-right-rounded.svg';\nimport {\n BindStateToController,\n InitializableComponent,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {randomID} from '../../../utils/utils';\nimport {createAppLoadedListener} from '../../common/interface/store';\nimport {\n PagerNextButton,\n PagerPageButton,\n PagerPageButtons,\n PagerPreviousButton,\n} from '../../common/pager/stencil-pager-buttons';\nimport {PagerGuard} from '../../common/pager/stencil-pager-guard';\nimport {PagerNavigation} from '../../common/pager/stencil-pager-navigation';\nimport {Bindings} from '../atomic-search-interface/atomic-search-interface';\n\n/**\n * The `atomic-pager` provides buttons that allow the end user to navigate through the different result pages.\n *\n * @part buttons - The list of the next/previous buttons and page-buttons.\n * @part page-buttons - The list of page buttons.\n * @part page-button - The page button.\n * @part active-page-button - The active page button.\n * @part previous-button - The previous button.\n * @part next-button - The next button.\n * @part previous-button-icon - Icon of the previous button.\n * @part next-button-icon - Icon of the next button.\n */\n@Component({\n tag: 'atomic-pager',\n styleUrl: 'atomic-pager.pcss',\n shadow: true,\n})\nexport class AtomicPager implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n public pager!: Pager;\n public searchStatus!: SearchStatus;\n\n @BindStateToController('pager')\n @State()\n public pagerState!: PagerState;\n @BindStateToController('searchStatus')\n @State()\n public searchStatusState!: SearchStatusState;\n @State() error!: Error;\n @State() private isAppLoaded = false;\n\n @Event({\n eventName: 'atomic/scrollToTop',\n })\n private scrollToTopEvent!: EventEmitter;\n\n /**\n * Specifies how many page buttons to display in the pager.\n */\n @Prop({reflect: true}) numberOfPages = 5;\n\n /**\n * The SVG icon to use to display the Previous button.\n *\n * - Use a value that starts with `http://`, `https://`, `./`, or `../`, to fetch and display an icon from a given location.\n * - Use a value that starts with `assets://`, to display an icon from the Atomic package.\n * - Use a stringified SVG to display it directly.\n */\n @Prop({reflect: true}) previousButtonIcon: string = ArrowLeftIcon;\n\n /**\n * The SVG icon to use to display the Next button.\n *\n * - Use a value that starts with `http://`, `https://`, `./`, or `../`, to fetch and display an icon from a given location.\n * - Use a value that starts with `assets://`, to display an icon from the Atomic package.\n * - Use a stringified SVG to display it directly.\n */\n @Prop({reflect: true}) nextButtonIcon: string = ArrowRightIcon;\n\n private radioGroupName = randomID('atomic-pager-');\n\n public initialize() {\n this.searchStatus = buildSearchStatus(this.bindings.engine);\n this.pager = buildPager(this.bindings.engine, {\n options: {numberOfPages: this.numberOfPages},\n });\n createAppLoadedListener(this.bindings.store, (isAppLoaded) => {\n this.isAppLoaded = isAppLoaded;\n });\n }\n\n public render() {\n return (\n <PagerGuard\n hasError={this.searchStatusState.hasError}\n hasItems={this.searchStatusState.hasResults}\n isAppLoaded={this.isAppLoaded}\n >\n <PagerNavigation i18n={this.bindings.i18n}>\n <PagerPreviousButton\n icon={this.previousButtonIcon}\n disabled={!this.pagerState.hasPreviousPage}\n i18n={this.bindings.i18n}\n onClick={() => {\n this.pager.previousPage();\n this.focusOnFirstResultAndScrollToTop();\n }}\n />\n <PagerPageButtons i18n={this.bindings.i18n}>\n {this.pagerState.currentPages.map((pageNumber) => {\n return (\n <PagerPageButton\n isSelected={this.pager.isCurrentPage(pageNumber)}\n ariaLabel={this.bindings.i18n.t('page-number', {pageNumber})}\n onChecked={() => {\n this.pager.selectPage(pageNumber);\n this.focusOnFirstResultAndScrollToTop();\n }}\n page={pageNumber}\n groupName={this.radioGroupName}\n text={pageNumber.toLocaleString(this.bindings.i18n.language)}\n />\n );\n })}\n </PagerPageButtons>\n <PagerNextButton\n icon={this.nextButtonIcon}\n disabled={!this.pagerState.hasNextPage}\n i18n={this.bindings.i18n}\n onClick={() => {\n this.pager.nextPage();\n this.focusOnFirstResultAndScrollToTop();\n }}\n />\n </PagerNavigation>\n </PagerGuard>\n );\n }\n\n private async focusOnFirstResultAndScrollToTop() {\n await this.bindings.store.state.resultList?.focusOnFirstResultAfterNextSearch();\n this.scrollToTopEvent.emit();\n }\n}\n"],"version":3}
@@ -37,7 +37,7 @@ const AtomicQueryError$1 = /*@__PURE__*/ proxyCustomElement(class AtomicQueryErr
37
37
  if (hasError) {
38
38
  this.ariaMessage = getAriaMessageFromErrorType(i18n, organizationId, url, error?.type);
39
39
  }
40
- return (h(QueryErrorGuard, { key: '03bbb522c2940aba7bd608dc2f8c5f3ccfcdc4bb', hasError: hasError }, h(QueryErrorContainer, { key: '527e7454327429302b58c227bdec3b48fbbe4711' }, h(QueryErrorIcon, { key: '6f64bd01c47cbca966c9f579de76a2a0037918b7', errorType: error?.type }), h(QueryErrorTitle, { key: '434d6a8521b4e5684f3d4eef383d7eb202ee3a23', errorType: error?.type, i18n: i18n, organizationId: organizationId }), h(QueryErrorDescription, { key: 'e81443b64f891b0db01403b7962ce3694fc3c4b7', i18n: i18n, organizationId: organizationId, url: url, errorType: error?.type }), h(QueryErrorShowMore, { key: '40b280ffce9d9041425f8955d9ea0b1791d300bb', link: h(QueryErrorLink, { i18n: i18n, errorType: error?.type }), onShowMore: () => (this.showMoreInfo = !this.showMoreInfo), i18n: i18n }), h(QueryErrorDetails, { key: '26091175ee3103ea36f3acbcf3cda528590a376a', error: error, show: this.showMoreInfo }))));
40
+ return (h(QueryErrorGuard, { key: '4f08036db405768d78690793ba807f68fda0bca2', hasError: hasError }, h(QueryErrorContainer, { key: 'aa24aaace42497b0ebbac089326cb400906f0361' }, h(QueryErrorIcon, { key: '166945fa5677de1c73f9754b375793af137ffcf9', errorType: error?.type }), h(QueryErrorTitle, { key: '7ef15817b2cc4fa1eda1dcf707287db97b96df0b', errorType: error?.type, i18n: i18n, organizationId: organizationId }), h(QueryErrorDescription, { key: '2a63eea9990fcb143b253498b540f4b8ebf6bdfc', i18n: i18n, organizationId: organizationId, url: url, errorType: error?.type }), h(QueryErrorShowMore, { key: 'a8e1c8f8ad34b1c30c0a26ba4d30d931cc7b5be7', link: h(QueryErrorLink, { i18n: i18n, errorType: error?.type }), onShowMore: () => (this.showMoreInfo = !this.showMoreInfo), i18n: i18n }), h(QueryErrorDetails, { key: '6120f72236ac0109854c291c7a3e926de03baa81', error: error, show: this.showMoreInfo }))));
41
41
  }
42
42
  static get style() { return AtomicQueryErrorStyle0; }
43
43
  }, [1, "atomic-query-error", {
@@ -39,7 +39,7 @@ const AtomicRecsError$1 = /*@__PURE__*/ proxyCustomElement(class AtomicRecsError
39
39
  if (hasError) {
40
40
  this.ariaMessage = getAriaMessageFromErrorType(i18n, organizationId, url, error?.type);
41
41
  }
42
- return (h(QueryErrorGuard, { key: 'bd96ff0ec78a781cc59df122d5c1533a1b72c3b1', hasError: hasError }, h(QueryErrorContainer, { key: 'f106a588e20e0d31412395d4be1dc205d3d5b375' }, h(QueryErrorIcon, { key: 'aef2b698d929029bd6fd86c6dbf622ae4e2fc48d', errorType: error?.type }), h(QueryErrorTitle, { key: 'e2cacba56e0ba7849216af2b47358036d6ca4f1c', i18n: i18n, organizationId: organizationId }), h(QueryErrorDescription, { key: 'e4dbffb88e76fc2407f5ecb1f55d11d5ae7fbde6', i18n: i18n, organizationId: organizationId, url: url }), h(QueryErrorShowMore, { key: '908794b2048a4800bc13a9443ffaca4cefa6b4a8', link: h(QueryErrorLink, { i18n: i18n, errorType: error?.type }), onShowMore: () => (this.showMoreInfo = !this.showMoreInfo), i18n: i18n }), h(QueryErrorDetails, { key: '41a2fa38a138f2a50ad252d7b183782f8ece5bb6', error: error, show: this.showMoreInfo }))));
42
+ return (h(QueryErrorGuard, { key: '2760d893ecf538f37d122fafbfa671c2b10a85c8', hasError: hasError }, h(QueryErrorContainer, { key: 'c3eadee3f7192156db1872b65890d870e86ca3f2' }, h(QueryErrorIcon, { key: '67e18a9ad80f3ccb36ca99a43c35e03d6a72eb17', errorType: error?.type }), h(QueryErrorTitle, { key: '87820a49d69e3634a55832a49d50240d0b9a0a8f', i18n: i18n, organizationId: organizationId }), h(QueryErrorDescription, { key: '36b829a79672ac0128eb4fb0e80561fc45e2492f', i18n: i18n, organizationId: organizationId, url: url }), h(QueryErrorShowMore, { key: '2f27dc91389efc6c43933f03962558c74a386ce0', link: h(QueryErrorLink, { i18n: i18n, errorType: error?.type }), onShowMore: () => (this.showMoreInfo = !this.showMoreInfo), i18n: i18n }), h(QueryErrorDetails, { key: 'e2838213df178140d3620532ee8e0f1311abe393', error: error, show: this.showMoreInfo }))));
43
43
  }
44
44
  static get style() { return AtomicRecsErrorStyle0; }
45
45
  }, [1, "atomic-recs-error", {
@@ -242,7 +242,7 @@ const AtomicRecsInterface$1 = /*@__PURE__*/ proxyCustomElement(class AtomicRecsI
242
242
  }
243
243
  }
244
244
  render() {
245
- return this.engine && h("slot", { key: '83b64f57da68e94c0ba4a28639296d8e4c29b77a' });
245
+ return this.engine && h("slot", { key: '6c09dd16d3a246fa7fe865f1b05ac899086da019' });
246
246
  }
247
247
  get host() { return this; }
248
248
  static get watchers() { return {
@@ -262,7 +262,7 @@ const AtomicRecsList$1 = /*@__PURE__*/ proxyCustomElement(class AtomicRecsList e
262
262
  }))));
263
263
  }
264
264
  render() {
265
- return (h(Fragment, { key: '5604f9ef7a0969311b7db34f7c2735d935624223' }, this.renderHeading(), this.shouldRenderPagination ? (h(Carousel, { bindings: this.bindings, currentPage: this.currentPage, nextPage: () => this.nextPage(), previousPage: () => this.previousPage(), numberOfPages: this.numberOfPages }, this.renderListOfRecommendations())) : (this.renderListOfRecommendations())));
265
+ return (h(Fragment, { key: '799dbc1bfa0b5334b29ea7647c3e99bbeccb298b' }, this.renderHeading(), this.shouldRenderPagination ? (h(Carousel, { bindings: this.bindings, currentPage: this.currentPage, nextPage: () => this.nextPage(), previousPage: () => this.previousPage(), numberOfPages: this.numberOfPages }, this.renderListOfRecommendations())) : (this.renderListOfRecommendations())));
266
266
  }
267
267
  get host() { return this; }
268
268
  static get watchers() { return {
@@ -204,7 +204,7 @@ const AtomicRefineModal = /*@__PURE__*/ proxyCustomElement(class AtomicRefineMod
204
204
  return (h(RefineModalFiltersSection, { i18n: i18n, withFacets: hasFacetElements, withAutomaticFacets: hasAutomaticFacets }, this.breadcrumbManagerState.hasBreadcrumbs && (h(RefineModalFiltersClearButton, { i18n: i18n, onClick: () => this.breadcrumbManager.deselectAll() }))));
205
205
  }
206
206
  render() {
207
- return (h(RefineModal, { key: 'b24978bc166205334991a7cd364924dcc33a41f6', i18n: this.bindings.i18n, host: this.host, isOpen: this.isOpen, onClose: () => (this.isOpen = false), title: this.bindings.i18n.t('sort-and-filter'), numberOfItems: this.querySummaryState.total, openButton: this.openButton }, h(RefineModalBody, { key: '5ef9af05829d5b359005abc8ee7a584cf5c955d4' }, this.renderSort(), this.renderFilters())));
207
+ return (h(RefineModal, { key: '18a5154611c5a3d000f248fe1cd943f053b4f62a', i18n: this.bindings.i18n, host: this.host, isOpen: this.isOpen, onClose: () => (this.isOpen = false), title: this.bindings.i18n.t('sort-and-filter'), numberOfItems: this.querySummaryState.total, openButton: this.openButton }, h(RefineModalBody, { key: 'aa6c91f1069d2fec4c991b726e40a26b51917f7d' }, this.renderSort(), this.renderFilters())));
208
208
  }
209
209
  componentDidLoad() {
210
210
  this.host.style.display = '';
@@ -68,7 +68,7 @@ const AtomicRefineToggle$1 = /*@__PURE__*/ proxyCustomElement(class AtomicRefine
68
68
  this.modalRef && (this.modalRef.isOpen = true);
69
69
  }
70
70
  render() {
71
- return (h(RefineToggleGuard, { key: '312e1ac5b9c66596ae803bd31cc0348232b8f326', firstRequestExecuted: this.searchStatusState.firstSearchExecuted, hasError: this.searchStatusState.hasError, hasItems: this.searchStatusState.hasResults }, h(RefineToggleButton, { key: 'a9d05a44b082ccf83b6be5e84a076c0259b27a39', i18n: this.bindings.i18n, onClick: () => this.enableModal(), setRef: (button) => {
71
+ return (h(RefineToggleGuard, { key: '8875d9746ca79657fbe241a742188d007ec1c51e', firstRequestExecuted: this.searchStatusState.firstSearchExecuted, hasError: this.searchStatusState.hasError, hasItems: this.searchStatusState.hasResults }, h(RefineToggleButton, { key: '557cff1ed38269217df5d1880a40f030c3283929', i18n: this.bindings.i18n, onClick: () => this.enableModal(), setRef: (button) => {
72
72
  if (!button) {
73
73
  return;
74
74
  }