@coveo/atomic 3.28.1-pre.86ce689cb5 → 3.28.1-pre.ae49fae5bb
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.
- package/dist/atomic/_atomic.esm.js +1 -1
- package/dist/atomic/autoloader/index.cjs.js +9 -9
- package/dist/atomic/autoloader/index.esm.js +9 -9
- package/dist/atomic/components/_index.js +4 -4
- package/dist/atomic/components/analytics-config.js +1 -1
- package/dist/atomic/components/analytics-config.js.map +1 -1
- package/dist/atomic/components/atomic-breadbox.js.map +1 -1
- package/dist/atomic/components/atomic-insight-interface.js +0 -1
- package/dist/atomic/components/atomic-insight-interface.js.map +1 -1
- package/dist/atomic/components/atomic-insight-search-box.js +4 -6
- package/dist/atomic/components/atomic-insight-search-box.js.map +1 -1
- package/dist/atomic/components/atomic-no-results.js.map +1 -1
- package/dist/atomic/components/atomic-product-field-condition.js.map +1 -1
- package/dist/atomic/components/atomic-quickview-modal2.js +18 -8
- package/dist/atomic/components/atomic-quickview-modal2.js.map +1 -1
- package/dist/atomic/components/atomic-recs-interface.js +0 -1
- package/dist/atomic/components/atomic-recs-interface.js.map +1 -1
- package/dist/atomic/components/atomic-result-localized-text.js.map +1 -1
- package/dist/atomic/components/atomic-results-per-page.js +1 -1
- package/dist/atomic/components/atomic-results-per-page.js.map +1 -1
- package/dist/atomic/components/atomic-search-box.js +7 -7
- package/dist/atomic/components/atomic-search-box.js.map +1 -1
- package/dist/atomic/components/atomic-search-interface.js +1 -3
- package/dist/atomic/components/atomic-search-interface.js.map +1 -1
- package/dist/atomic/components/cloned-facet-elements.js.map +1 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.js +13 -15
- package/dist/atomic/components/components/commerce/atomic-commerce-did-you-mean/atomic-commerce-did-you-mean.js +5 -4
- package/dist/atomic/components/components/commerce/atomic-commerce-interface/atomic-commerce-interface.js +7 -5
- package/dist/atomic/components/components/commerce/atomic-commerce-layout/atomic-commerce-layout.js +2 -2
- package/dist/atomic/components/components/commerce/atomic-commerce-layout/atomic-commerce-layout.tw.css.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-load-more-products/atomic-commerce-load-more-products.js +4 -4
- package/dist/atomic/components/components/commerce/atomic-commerce-no-products/atomic-commerce-no-products.js +5 -5
- package/dist/atomic/components/components/commerce/atomic-commerce-pager/atomic-commerce-pager.js +11 -11
- package/dist/atomic/components/components/commerce/atomic-commerce-product-list/atomic-commerce-product-list.js +9 -9
- package/dist/atomic/components/components/commerce/atomic-commerce-product-list/atomic-commerce-product-list.tw.css.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-products-per-page/atomic-commerce-products-per-page.js +3 -3
- package/dist/atomic/components/components/commerce/atomic-commerce-query-summary/atomic-commerce-query-summary.js +3 -3
- package/dist/atomic/components/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.js +7 -5
- package/dist/atomic/components/components/commerce/atomic-commerce-recommendation-list/atomic-commerce-recommendation-list.js +8 -9
- package/dist/atomic/components/components/commerce/atomic-commerce-recommendation-list/atomic-commerce-recommendation-list.tw.css.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-refine-toggle/atomic-commerce-refine-toggle.js +8 -6
- package/dist/atomic/components/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.js +18 -14
- package/dist/atomic/components/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.tw.css.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-search-box-instant-products/atomic-commerce-search-box-instant-products.js +4 -4
- package/dist/atomic/components/components/commerce/atomic-commerce-search-box-query-suggestions/atomic-commerce-search-box-query-suggestions.js +3 -3
- package/dist/atomic/components/components/commerce/atomic-commerce-search-box-recent-queries/atomic-commerce-search-box-recent-queries.js +3 -3
- package/dist/atomic/components/components/commerce/atomic-commerce-sort-dropdown/atomic-commerce-sort-dropdown.js +3 -3
- package/dist/atomic/components/components/commerce/atomic-commerce-text/atomic-commerce-text.js +2 -2
- package/dist/atomic/components/components/commerce/atomic-product/atomic-product.js +9 -5
- package/dist/atomic/components/components/commerce/atomic-product/atomic-product.tw.css.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-product-template/atomic-product-template.js +2 -2
- package/dist/atomic/components/components/commerce/atomic-product-text/atomic-product-text.js +7 -5
- package/dist/atomic/components/components/commerce/product-template-component-utils/product-utils.js +1 -1
- package/dist/atomic/components/components/common/atomic-component-error/atomic-component-error.js +1 -1
- package/dist/atomic/components/components/common/atomic-icon/atomic-icon.js +7 -7
- package/dist/atomic/components/components/common/atomic-icon/atomic-icon.tw.css.js +1 -1
- package/dist/atomic/components/components/common/breadbox/breadcrumb-button.js +1 -1
- package/dist/atomic/components/components/common/breadbox/breadcrumb-container.js +1 -1
- package/dist/atomic/components/components/common/breadbox/breadcrumb-content.js +1 -1
- package/dist/atomic/components/components/common/button.js +1 -1
- package/dist/atomic/components/components/common/carousel.js +2 -2
- package/dist/atomic/components/components/common/facets/facet-value-checkbox/facet-value-checkbox.tw.css.js +1 -1
- package/dist/atomic/components/components/common/interface/i18n.js +1 -1
- package/dist/atomic/components/components/common/interface/interface-common.js +2 -2
- package/dist/atomic/components/components/common/items-per-page/validate.js +1 -1
- package/dist/atomic/components/components/common/layout/display-options.js +6 -9
- package/dist/atomic/components/components/common/no-items/guard.js +1 -1
- package/dist/atomic/components/components/common/no-items/no-items.js +1 -1
- package/dist/atomic/components/components/common/pager/pager-guard.js +1 -1
- package/dist/atomic/components/components/common/query-correction/auto-correction.js +1 -1
- package/dist/atomic/components/components/common/query-correction/correction.js +1 -1
- package/dist/atomic/components/components/common/query-correction/trigger-correction.js +1 -1
- package/dist/atomic/components/components/common/query-summary/container.js +1 -1
- package/dist/atomic/components/components/common/radio-button.js +3 -3
- package/dist/atomic/components/components/common/refine-modal/guard.js +1 -1
- package/dist/atomic/components/components/common/search-box/search-box-wrapper.js +1 -1
- package/dist/atomic/components/components/common/suggestions/suggestion-manager.js +18 -20
- package/dist/atomic/components/components/common/suggestions/suggestions-common.js +2 -2
- package/dist/atomic/components/components/context/bindings-context.js +1 -1
- package/dist/atomic/components/components/index.js +2 -2
- package/dist/atomic/components/components/insight/atomic-insight-layout/insight-layout.js +1 -1
- package/dist/atomic/components/date-utils.js.map +1 -1
- package/dist/atomic/components/decorators/bind-state.js +3 -3
- package/dist/atomic/components/decorators/bindings.js +1 -1
- package/dist/atomic/components/decorators/commerce/product-template-decorators.js +1 -1
- package/dist/atomic/components/decorators/with-tailwind-styles.js +5 -5
- package/dist/atomic/components/directives/display-if.js +1 -1
- package/dist/atomic/components/directives/multi-class-map.js +1 -1
- package/dist/atomic/components/display-options.js +6 -9
- package/dist/atomic/components/display-options.js.map +1 -1
- package/dist/atomic/components/field-utils.js.map +1 -1
- package/dist/atomic/components/global/environment.js +1 -1
- package/dist/atomic/components/global/tailwind.default.css.js +1 -1
- package/dist/atomic/components/index.js.map +1 -1
- package/dist/atomic/components/init-queue.js.map +1 -1
- package/dist/atomic/components/insight-layout.js.map +1 -1
- package/dist/atomic/components/item-template-provider.js.map +1 -1
- package/dist/atomic/components/item.js.map +1 -1
- package/dist/atomic/components/local-storage-utils.js +0 -1
- package/dist/atomic/components/local-storage-utils.js.map +1 -1
- package/dist/atomic/components/mixins/bindings-mixin.js +3 -2
- package/dist/atomic/components/mixins/children-update-complete-mixin.js +0 -4
- package/dist/atomic/components/mixins/commerce-layout-mixin.js +1 -1
- package/dist/atomic/components/popover-type.js.map +1 -1
- package/dist/atomic/components/product-utils.js +1 -1
- package/dist/atomic/components/product-utils.js.map +1 -1
- package/dist/atomic/components/props-utils.js +3 -2
- package/dist/atomic/components/props-utils.js.map +1 -1
- package/dist/atomic/components/result-utils.js.map +1 -1
- package/dist/atomic/components/ripple.js +4 -4
- package/dist/atomic/components/ripple.js.map +1 -1
- package/dist/atomic/components/sections.js.map +1 -1
- package/dist/atomic/components/stencil-facet-show-more-less.js.map +1 -1
- package/dist/atomic/components/stencil-facet-value-label-highlight.js.map +1 -1
- package/dist/atomic/components/stencil-link.js.map +1 -1
- package/dist/atomic/components/stencil-suggestion-manager.js +18 -20
- package/dist/atomic/components/stencil-suggestion-manager.js.map +1 -1
- package/dist/atomic/components/suggestions-common.js +2 -2
- package/dist/atomic/components/suggestions-common.js.map +1 -1
- package/dist/atomic/components/utils/accessibility-utils.js +10 -6
- package/dist/atomic/components/utils/local-storage-utils.js +0 -1
- package/dist/atomic/components/utils/props-utils.js +3 -2
- package/dist/atomic/components/utils/ripple.js +4 -4
- package/dist/atomic/components/utils/tailwind-utilities/components.tw.css.js +1 -1
- package/dist/atomic/components/utils/tailwind.global.tw.css.js +1 -1
- package/dist/atomic/components/utils/utils.js +1 -1
- package/dist/atomic/components/utils.js +1 -1
- package/dist/atomic/components/utils.js.map +1 -1
- package/dist/atomic/components/values-container.js.map +1 -1
- package/dist/atomic/index.esm.js +1 -1
- package/dist/atomic/index.esm.js.map +1 -1
- package/dist/atomic/p-000b4bce.entry.js +2 -0
- package/dist/atomic/p-000b4bce.entry.js.map +1 -0
- package/dist/atomic/p-022e2c88.entry.js +2 -0
- package/dist/atomic/p-0297467f.entry.js +2 -0
- package/dist/atomic/p-02dc6f22.entry.js +2 -0
- package/dist/atomic/p-034a21aa.js +2 -0
- package/dist/atomic/p-03e139a8.entry.js +2 -0
- package/dist/atomic/p-05de7ca3.js.map +1 -1
- package/dist/atomic/p-06b55a5e.js +2 -0
- package/dist/atomic/p-0b705c31.entry.js +2 -0
- package/dist/atomic/p-0d1f928f.entry.js +2 -0
- package/dist/atomic/p-0ed66827.entry.js +2 -0
- package/dist/atomic/p-0f506869.js +2 -0
- package/dist/atomic/p-0f506869.js.map +1 -0
- package/dist/atomic/p-0fe2face.entry.js +2 -0
- package/dist/atomic/p-10bfcc08.entry.js +2 -0
- package/dist/atomic/p-10e8d6e9.entry.js +2 -0
- package/dist/atomic/p-1192c7ba.js +2 -0
- package/dist/atomic/p-1234c69e.js.map +1 -1
- package/dist/atomic/p-12bd4457.entry.js +2 -0
- package/dist/atomic/p-1519454c.entry.js +2 -0
- package/dist/atomic/p-1697fe78.entry.js +2 -0
- package/dist/atomic/p-186a5f0d.entry.js +2 -0
- package/dist/atomic/p-1cf33009.js +2 -0
- package/dist/atomic/p-214cbca8.js +2 -0
- package/dist/atomic/p-22b3c655.entry.js +2 -0
- package/dist/atomic/p-237b6498.entry.js +2 -0
- package/dist/atomic/p-261cc069.entry.js +2 -0
- package/dist/atomic/p-263f6746.entry.js +2 -0
- package/dist/atomic/p-26a0e19e.js +2 -0
- package/dist/atomic/p-26d0a8d6.entry.js +2 -0
- package/dist/atomic/p-27fc83ff.entry.js +2 -0
- package/dist/atomic/p-28a6dd9b.js +2 -0
- package/dist/atomic/p-29242cf4.entry.js +2 -0
- package/dist/atomic/p-2be3757d.js +2 -0
- package/dist/atomic/p-2caa1859.js.map +1 -1
- package/dist/atomic/p-2edbbd2c.entry.js +2 -0
- package/dist/atomic/p-2f6d4b52.entry.js +2 -0
- package/dist/atomic/p-2f89eaa5.entry.js +2 -0
- package/dist/atomic/p-2fcbc513.entry.js +2 -0
- package/dist/atomic/p-3116ec7b.entry.js +2 -0
- package/dist/atomic/p-33aeda20.entry.js +2 -0
- package/dist/atomic/p-37d04bd3.entry.js +2 -0
- package/dist/atomic/p-3835716f.entry.js +2 -0
- package/dist/atomic/p-3b92373f.entry.js +2 -0
- package/dist/atomic/p-3bcfc0a2.entry.js +2 -0
- package/dist/atomic/p-406f7e5a.js.map +1 -1
- package/dist/atomic/p-40a6b242.entry.js +2 -0
- package/dist/atomic/p-436c41dd.js +2 -0
- package/dist/atomic/p-43c60cfc.entry.js +2 -0
- package/dist/atomic/p-43c60cfc.entry.js.map +1 -0
- package/dist/atomic/p-463916e1.entry.js +2 -0
- package/dist/atomic/p-463916e1.entry.js.map +1 -0
- package/dist/atomic/p-47156866.entry.js +2 -0
- package/dist/atomic/p-47307bf9.entry.js +2 -0
- package/dist/atomic/p-47591d90.entry.js +2 -0
- package/dist/atomic/p-492520bf.js +2 -0
- package/dist/atomic/p-492520bf.js.map +1 -0
- package/dist/atomic/p-4b93d185.entry.js +2 -0
- package/dist/atomic/p-4cae32ae.entry.js +2 -0
- package/dist/atomic/p-4cae32ae.entry.js.map +1 -0
- package/dist/atomic/p-4fe614d1.entry.js +2 -0
- package/dist/atomic/p-506bb38b.js +2 -0
- package/dist/atomic/p-54fca818.js.map +1 -1
- package/dist/atomic/p-55d2bcf3.js.map +1 -1
- package/dist/atomic/p-56e2b35d.entry.js +2 -0
- package/dist/atomic/p-57b6b64c.entry.js +2 -0
- package/dist/atomic/p-57b6b64c.entry.js.map +1 -0
- package/dist/atomic/p-58193542.entry.js +2 -0
- package/dist/atomic/p-58d3adeb.entry.js +2 -0
- package/dist/atomic/p-5a397a22.entry.js +2 -0
- package/dist/atomic/p-5a62a764.entry.js +2 -0
- package/dist/atomic/p-5a9d6ec0.entry.js +2 -0
- package/dist/atomic/p-5a9d6ec0.entry.js.map +1 -0
- package/dist/atomic/p-5b836652.js +2 -0
- package/dist/atomic/p-5c040ebc.entry.js +2 -0
- package/dist/atomic/p-5cafb3fe.js +2 -0
- package/dist/atomic/p-5d7fee77.entry.js +2 -0
- package/dist/atomic/p-5db46842.js +2 -0
- package/dist/atomic/p-5fa99042.js +2 -0
- package/dist/atomic/p-5fb33957.entry.js +2 -0
- package/dist/atomic/p-607fee37.entry.js +2 -0
- package/dist/atomic/p-609451bf.entry.js +2 -0
- package/dist/atomic/p-6195bd9a.entry.js +2 -0
- package/dist/atomic/p-62d16036.entry.js +2 -0
- package/dist/atomic/p-639696da.entry.js +2 -0
- package/dist/atomic/p-67425787.js +2 -0
- package/dist/atomic/p-67425787.js.map +1 -0
- package/dist/atomic/p-67438aff.entry.js +2 -0
- package/dist/atomic/p-67439395.entry.js +2 -0
- package/dist/atomic/p-6776811d.js +2 -0
- package/dist/atomic/p-6776811d.js.map +1 -0
- package/dist/atomic/p-6e592bf0.entry.js +2 -0
- package/dist/atomic/p-7163256b.js +2 -0
- package/dist/atomic/p-7163256b.js.map +1 -0
- package/dist/atomic/p-71743e67.entry.js +2 -0
- package/dist/atomic/p-79075abe.js +2 -0
- package/dist/atomic/p-7e80de89.entry.js +2 -0
- package/dist/atomic/p-83b61fc7.entry.js +2 -0
- package/dist/atomic/p-8471090e.entry.js +2 -0
- package/dist/atomic/p-8596426c.js +2 -0
- package/dist/atomic/p-85b0eb2c.entry.js +2 -0
- package/dist/atomic/p-871bd105.entry.js +2 -0
- package/dist/atomic/p-893058c6.entry.js +2 -0
- package/dist/atomic/p-93116ce1.js +2 -0
- package/dist/atomic/p-934470ac.entry.js +2 -0
- package/dist/atomic/p-93e9272d.entry.js +2 -0
- package/dist/atomic/p-946fe85f.js +2 -0
- package/dist/atomic/p-946fe85f.js.map +1 -0
- package/dist/atomic/p-95e4c09e.entry.js +2 -0
- package/dist/atomic/p-97cb6aa3.entry.js +2 -0
- package/dist/atomic/p-9957b28c.js +2 -0
- package/dist/atomic/p-9bb2603f.entry.js +2 -0
- package/dist/atomic/p-9c7dbbdf.js.map +1 -1
- package/dist/atomic/p-9dae1cd8.entry.js +2 -0
- package/dist/atomic/p-9f3ecfe5.js +2 -0
- package/dist/atomic/p-9ff8fec2.entry.js +2 -0
- package/dist/atomic/p-a06e88d4.entry.js +2 -0
- package/dist/atomic/p-a3dabead.js +2 -0
- package/dist/atomic/p-a4003b93.entry.js +2 -0
- package/dist/atomic/p-a5aaa14c.entry.js +2 -0
- package/dist/atomic/p-a6d8b6b3.js +2 -0
- package/dist/atomic/p-a6d8b6b3.js.map +1 -0
- package/dist/atomic/p-a96a297e.js +2 -0
- package/dist/atomic/p-aaa324cd.entry.js +2 -0
- package/dist/atomic/p-aaf5add5.entry.js +2 -0
- package/dist/atomic/p-aba83a12.entry.js +2 -0
- package/dist/atomic/p-acc4d5de.js +2 -0
- package/dist/atomic/p-acc4d5de.js.map +1 -0
- package/dist/atomic/p-ad38f245.js +2 -0
- package/dist/atomic/p-ae067eb1.entry.js +2 -0
- package/dist/atomic/p-afa720bd.entry.js +2 -0
- package/dist/atomic/p-afa720bd.entry.js.map +1 -0
- package/dist/atomic/p-b01bce99.entry.js +2 -0
- package/dist/atomic/p-b05020dd.entry.js +2 -0
- package/dist/atomic/p-b05020dd.entry.js.map +1 -0
- package/dist/atomic/p-b0d10266.entry.js +2 -0
- package/dist/atomic/p-b3b4f0cb.entry.js +2 -0
- package/dist/atomic/p-b7488ef9.entry.js +2 -0
- package/dist/atomic/p-b875f4b6.entry.js +2 -0
- package/dist/atomic/p-b95cacb0.entry.js +2 -0
- package/dist/atomic/p-b973f6f4.entry.js +2 -0
- package/dist/atomic/p-bb5786e8.js +2 -0
- package/dist/atomic/p-bdca7ff9.entry.js +2 -0
- package/dist/atomic/p-bf460507.entry.js +2 -0
- package/dist/atomic/p-c030a2f0.entry.js +2 -0
- package/dist/atomic/p-c030a2f0.entry.js.map +1 -0
- package/dist/atomic/p-c100197d.js +2 -0
- package/dist/atomic/p-c100197d.js.map +1 -0
- package/dist/atomic/p-c10060a9.entry.js +2 -0
- package/dist/atomic/p-c20f8897.entry.js +2 -0
- package/dist/atomic/p-c2a0f838.entry.js +2 -0
- package/dist/atomic/p-c3d0cd58.entry.js +2 -0
- package/dist/atomic/p-c67f8f3d.entry.js +2 -0
- package/dist/atomic/p-c75a15a1.entry.js +2 -0
- package/dist/atomic/p-c9cbc469.entry.js +2 -0
- package/dist/atomic/p-ca98cb79.entry.js +2 -0
- package/dist/atomic/p-cb1905a6.entry.js +2 -0
- package/dist/atomic/p-cc11dfe5.entry.js +2 -0
- package/dist/atomic/p-cd65617e.entry.js +2 -0
- package/dist/atomic/p-cef8175c.js.map +1 -1
- package/dist/atomic/p-d044ff5f.js +2 -0
- package/dist/atomic/p-d28ce9d0.entry.js +2 -0
- package/dist/atomic/p-d2bac479.js +2 -0
- package/dist/atomic/p-d2bac479.js.map +1 -0
- package/dist/atomic/p-d38b2556.entry.js +2 -0
- package/dist/atomic/p-d4c2b7c0.js.map +1 -1
- package/dist/atomic/p-d61e65c5.entry.js +2 -0
- package/dist/atomic/p-d625f03b.entry.js +2 -0
- package/dist/atomic/p-d625f03b.entry.js.map +1 -0
- package/dist/atomic/p-d6d8927c.entry.js +2 -0
- package/dist/atomic/p-d917f9a3.js +2 -0
- package/dist/atomic/p-da1d8792.js +2 -0
- package/dist/atomic/p-ddb5a587.entry.js +2 -0
- package/dist/atomic/p-de544499.entry.js +2 -0
- package/dist/atomic/p-e3abb9bf.entry.js +2 -0
- package/dist/atomic/p-e467bb89.entry.js +2 -0
- package/dist/atomic/p-e5434c27.entry.js +2 -0
- package/dist/atomic/p-ea30c2c5.entry.js +2 -0
- package/dist/atomic/p-ec0b64a5.entry.js +2 -0
- package/dist/atomic/p-ec2161f4.entry.js +2 -0
- package/dist/atomic/p-ec2161f4.entry.js.map +1 -0
- package/dist/atomic/p-ed21f076.js +2 -0
- package/dist/atomic/p-ed21f076.js.map +1 -0
- package/dist/atomic/p-ef905286.js +2 -0
- package/dist/atomic/p-ef905286.js.map +1 -0
- package/dist/atomic/p-f04692e0.entry.js +2 -0
- package/dist/atomic/p-f1630863.js +2 -0
- package/dist/atomic/p-f1630863.js.map +1 -0
- package/dist/atomic/p-f20b2d62.entry.js +2 -0
- package/dist/atomic/p-f3dd836a.js.map +1 -1
- package/dist/atomic/p-f5054252.entry.js +2 -0
- package/dist/atomic/p-f7b4d419.entry.js +2 -0
- package/dist/atomic/p-f8cd64b9.js +2 -0
- package/dist/atomic/p-fa1abdd2.entry.js +2 -0
- package/dist/atomic/p-fc0e5c34.js +2 -0
- package/dist/atomic/p-fc2cceb3.entry.js +2 -0
- package/dist/atomic/p-fe735188.entry.js +2 -0
- package/dist/atomic/p-fe7f8010.entry.js +2 -0
- package/dist/cjs/_index.cjs.js +8 -8
- package/dist/cjs/analytics-config-2caffe75.js +2988 -0
- package/dist/cjs/analytics-config-2caffe75.js.map +1 -0
- package/dist/cjs/atomic-aria-live_2.cjs.entry.js +3 -3
- package/dist/cjs/atomic-automatic-facet_2.cjs.entry.js +6 -6
- package/dist/cjs/atomic-breadbox.cjs.entry.js +4 -4
- package/dist/cjs/atomic-breadbox.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-category-facet.cjs.entry.js +10 -10
- package/dist/cjs/atomic-color-facet.cjs.entry.js +9 -9
- package/dist/cjs/atomic-commerce-category-facet_6.cjs.entry.js +14 -14
- package/dist/cjs/atomic-commerce-facets.cjs.entry.js +2 -2
- package/dist/cjs/atomic-commerce-query-error.cjs.entry.js +5 -5
- package/dist/cjs/atomic-commerce-refine-modal.cjs.entry.js +4 -4
- package/dist/cjs/atomic-facet-number-input.cjs.entry.js +2 -2
- package/dist/cjs/atomic-facet.cjs.entry.js +13 -13
- package/dist/cjs/atomic-field-condition.cjs.entry.js +4 -4
- package/dist/cjs/atomic-focus-trap_2.cjs.entry.js +2 -2
- package/dist/cjs/atomic-folded-result-list.cjs.entry.js +7 -7
- package/dist/cjs/atomic-generated-answer-feedback-modal.cjs.entry.js +5 -5
- package/dist/cjs/atomic-generated-answer.cjs.entry.js +7 -7
- package/dist/cjs/atomic-insight-edit-toggle.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-facet.cjs.entry.js +10 -10
- package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js +6 -6
- package/dist/cjs/atomic-insight-full-search-button.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js +6 -6
- package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-interface.cjs.entry.js +4 -5
- package/dist/cjs/atomic-insight-interface.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-layout.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-no-results.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js +9 -9
- package/dist/cjs/atomic-insight-pager.cjs.entry.js +5 -5
- package/dist/cjs/atomic-insight-query-error.cjs.entry.js +5 -5
- package/dist/cjs/atomic-insight-query-summary.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js +6 -6
- package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-result-action-bar.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-result-action.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-result-children-template.cjs.entry.js +4 -4
- package/dist/cjs/atomic-insight-result-children.cjs.entry.js +4 -4
- package/dist/cjs/atomic-insight-result-list.cjs.entry.js +6 -6
- package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js +5 -5
- package/dist/cjs/atomic-insight-result-template.cjs.entry.js +4 -4
- package/dist/cjs/atomic-insight-result.cjs.entry.js +5 -5
- package/dist/cjs/atomic-insight-search-box.cjs.entry.js +10 -12
- package/dist/cjs/atomic-insight-search-box.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-smart-snippet-feedback-modal.cjs.entry.js +4 -4
- package/dist/cjs/atomic-insight-smart-snippet-suggestions.cjs.entry.js +4 -4
- package/dist/cjs/atomic-insight-smart-snippet.cjs.entry.js +5 -5
- package/dist/cjs/atomic-insight-tab.cjs.entry.js +4 -4
- package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js +8 -8
- package/dist/cjs/atomic-insight-user-actions-modal.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js +3 -3
- package/dist/cjs/atomic-ipx-body.cjs.entry.js +1 -1
- package/dist/cjs/atomic-ipx-button.cjs.entry.js +2 -2
- package/dist/cjs/atomic-ipx-embedded.cjs.entry.js +1 -1
- package/dist/cjs/atomic-ipx-modal.cjs.entry.js +1 -1
- package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +9 -9
- package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js +6 -6
- package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js +3 -3
- package/dist/cjs/atomic-ipx-tab.cjs.entry.js +4 -4
- package/dist/cjs/atomic-load-more-results.cjs.entry.js +4 -4
- package/dist/cjs/atomic-no-results.cjs.entry.js +4 -4
- package/dist/cjs/atomic-no-results.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-notifications.cjs.entry.js +2 -2
- package/dist/cjs/atomic-numeric-facet.cjs.entry.js +9 -9
- package/dist/cjs/atomic-pager.cjs.entry.js +6 -6
- package/dist/cjs/atomic-popover.cjs.entry.js +2 -2
- package/dist/cjs/atomic-product-children.cjs.entry.js +2 -2
- package/dist/cjs/atomic-product-description.cjs.entry.js +3 -3
- package/dist/cjs/atomic-product-excerpt.cjs.entry.js +3 -3
- package/dist/cjs/atomic-product-field-condition.cjs.entry.js +2 -2
- package/dist/cjs/atomic-product-field-condition.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-product-image.cjs.entry.js +2 -2
- package/dist/cjs/atomic-product-link.cjs.entry.js +2 -2
- package/dist/cjs/atomic-product-multi-value-text.cjs.entry.js +1 -1
- package/dist/cjs/atomic-product-numeric-field-value.cjs.entry.js +2 -2
- package/dist/cjs/atomic-product-price.cjs.entry.js +1 -1
- package/dist/cjs/atomic-product-section-actions.cjs.entry.js +2 -2
- package/dist/cjs/atomic-product-section-badges.cjs.entry.js +2 -2
- package/dist/cjs/atomic-product-section-bottom-metadata.cjs.entry.js +2 -2
- package/dist/cjs/atomic-product-section-children.cjs.entry.js +2 -2
- package/dist/cjs/atomic-product-section-description.cjs.entry.js +2 -2
- package/dist/cjs/atomic-product-section-emphasized.cjs.entry.js +2 -2
- package/dist/cjs/atomic-product-section-metadata.cjs.entry.js +2 -2
- package/dist/cjs/atomic-product-section-name.cjs.entry.js +2 -2
- package/dist/cjs/atomic-product-section-visual.cjs.entry.js +2 -2
- package/dist/cjs/atomic-query-error.cjs.entry.js +5 -5
- package/dist/cjs/atomic-query-summary.cjs.entry.js +2 -2
- package/dist/cjs/atomic-quickview-modal.cjs.entry.js +21 -11
- package/dist/cjs/atomic-quickview-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-quickview.cjs.entry.js +4 -4
- package/dist/cjs/atomic-rating-facet.cjs.entry.js +8 -8
- package/dist/cjs/atomic-rating-range-facet.cjs.entry.js +7 -7
- package/dist/cjs/atomic-recs-error.cjs.entry.js +5 -5
- package/dist/cjs/atomic-recs-interface.cjs.entry.js +4 -5
- package/dist/cjs/atomic-recs-interface.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-recs-list.cjs.entry.js +9 -9
- package/dist/cjs/atomic-recs-result-template.cjs.entry.js +4 -4
- package/dist/cjs/atomic-recs-result.cjs.entry.js +5 -5
- package/dist/cjs/atomic-refine-modal.cjs.entry.js +6 -6
- package/dist/cjs/atomic-refine-toggle.cjs.entry.js +2 -2
- package/dist/cjs/atomic-result-children-template.cjs.entry.js +4 -4
- package/dist/cjs/atomic-result-children.cjs.entry.js +4 -4
- package/dist/cjs/atomic-result-icon.cjs.entry.js +1 -1
- package/dist/cjs/atomic-result-list.cjs.entry.js +7 -7
- package/dist/cjs/atomic-result-localized-text.cjs.entry.js +2 -2
- package/dist/cjs/atomic-result-localized-text.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-multi-value-text.cjs.entry.js +1 -1
- package/dist/cjs/atomic-result-placeholder_8.cjs.entry.js +4 -4
- package/dist/cjs/atomic-result-printable-uri.cjs.entry.js +2 -2
- package/dist/cjs/atomic-result-section-children.cjs.entry.js +2 -2
- package/dist/cjs/atomic-result-section-emphasized.cjs.entry.js +2 -2
- package/dist/cjs/atomic-result-section-title-metadata.cjs.entry.js +2 -2
- package/dist/cjs/atomic-result-template.cjs.entry.js +4 -4
- package/dist/cjs/atomic-result.cjs.entry.js +5 -5
- package/dist/cjs/atomic-results-per-page.cjs.entry.js +5 -5
- package/dist/cjs/atomic-results-per-page.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-search-box-instant-results.cjs.entry.js +1 -1
- package/dist/cjs/atomic-search-box-query-suggestions_2.cjs.entry.js +3 -3
- package/dist/cjs/atomic-search-box.cjs.entry.js +14 -14
- package/dist/cjs/atomic-search-box.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-search-interface.cjs.entry.js +6 -8
- package/dist/cjs/atomic-search-interface.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-search-layout.cjs.entry.js +1 -1
- package/dist/cjs/atomic-segmented-facet-scrollable.cjs.entry.js +2 -2
- package/dist/cjs/atomic-segmented-facet.cjs.entry.js +4 -4
- package/dist/cjs/atomic-smart-snippet-answer_2.cjs.entry.js +1 -1
- package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js +4 -4
- package/dist/cjs/atomic-smart-snippet-suggestions.cjs.entry.js +4 -4
- package/dist/cjs/atomic-smart-snippet.cjs.entry.js +6 -6
- package/dist/cjs/atomic-sort-dropdown.cjs.entry.js +1 -1
- package/dist/cjs/atomic-sort-expression.cjs.entry.js +2 -2
- package/dist/cjs/atomic-tab-bar_2.cjs.entry.js +2 -2
- package/dist/cjs/atomic-tab-button.cjs.entry.js +2 -2
- package/dist/cjs/atomic-timeframe-facet.cjs.entry.js +8 -8
- package/dist/cjs/cloned-facet-elements-70cd1601.js +28 -0
- package/dist/cjs/cloned-facet-elements-70cd1601.js.map +1 -0
- package/dist/cjs/date-utils-f0803dd3.js.map +1 -1
- package/dist/cjs/display-options-14f05862.js +87 -0
- package/dist/cjs/display-options-14f05862.js.map +1 -0
- package/dist/cjs/field-utils-a715deca.js.map +1 -1
- package/dist/cjs/generated-answer-common-d86e4f6b.js +2929 -0
- package/dist/cjs/generated-answer-common-d86e4f6b.js.map +1 -0
- package/dist/cjs/iconButton-bf5b24cf.js +15 -0
- package/dist/cjs/iconButton-bf5b24cf.js.map +1 -0
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/init-queue-a18aa323.js.map +1 -1
- package/dist/cjs/insight-layout-355a94dd.js.map +1 -1
- package/dist/cjs/item-c460c5a3.js.map +1 -1
- package/dist/cjs/item-section-utils-8579462c.js +11 -0
- package/dist/cjs/item-section-utils-8579462c.js.map +1 -0
- package/dist/cjs/item-template-provider-470c1774.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/local-storage-utils-380ce22b.js +64 -0
- package/dist/cjs/local-storage-utils-380ce22b.js.map +1 -0
- package/dist/cjs/popover-type-b1385b27.js.map +1 -1
- package/dist/cjs/product-utils-4bd389b3.js +36 -0
- package/dist/cjs/product-utils-4bd389b3.js.map +1 -0
- package/dist/cjs/props-utils-dd638419.js +86 -0
- package/dist/cjs/props-utils-dd638419.js.map +1 -0
- package/dist/cjs/result-template-common-88359dad.js +119 -0
- package/dist/cjs/result-template-common-88359dad.js.map +1 -0
- package/dist/cjs/result-utils-f5ee91df.js.map +1 -1
- package/dist/cjs/ripple-4070d750.js +47 -0
- package/dist/cjs/ripple-4070d750.js.map +1 -0
- package/dist/cjs/sections-4b4af2f8.js.map +1 -1
- package/dist/cjs/sections-fbb93b53.js +44 -0
- package/dist/cjs/sections-fbb93b53.js.map +1 -0
- package/dist/cjs/show-hide-button-2fb7407f.js +103 -0
- package/dist/cjs/show-hide-button-2fb7407f.js.map +1 -0
- package/dist/cjs/smart-snippet-common-abb0cdce.js +60 -0
- package/dist/cjs/smart-snippet-common-abb0cdce.js.map +1 -0
- package/dist/cjs/smart-snippet-feedback-modal-common-c29844fa.js +66 -0
- package/dist/cjs/smart-snippet-feedback-modal-common-c29844fa.js.map +1 -0
- package/dist/cjs/smart-snippet-suggestions-common-f0d8677b.js +36 -0
- package/dist/cjs/smart-snippet-suggestions-common-f0d8677b.js.map +1 -0
- package/dist/cjs/stencil-accessibility-utils-aa4c9f6c.js +164 -0
- package/dist/cjs/stencil-accessibility-utils-aa4c9f6c.js.map +1 -0
- package/dist/cjs/stencil-button-aa4c0879.js +48 -0
- package/dist/cjs/stencil-button-aa4c0879.js.map +1 -0
- package/dist/cjs/stencil-carousel-cb870e4d.js +34 -0
- package/dist/cjs/stencil-carousel-cb870e4d.js.map +1 -0
- package/dist/cjs/stencil-expandable-text-34b8f701.js +38 -0
- package/dist/cjs/stencil-expandable-text-34b8f701.js.map +1 -0
- package/dist/cjs/stencil-facet-header-60732c1b.js +36 -0
- package/dist/cjs/stencil-facet-header-60732c1b.js.map +1 -0
- package/dist/cjs/stencil-facet-search-matches-f2fd2b83.js +59 -0
- package/dist/cjs/stencil-facet-search-matches-f2fd2b83.js.map +1 -0
- package/dist/cjs/stencil-facet-search-value-a464968e.js +27 -0
- package/dist/cjs/stencil-facet-search-value-a464968e.js.map +1 -0
- package/dist/cjs/stencil-facet-show-more-less-21d22973.js +49 -0
- package/dist/cjs/stencil-facet-show-more-less-21d22973.js.map +1 -0
- package/dist/cjs/stencil-facet-value-a4da653b.js +41 -0
- package/dist/cjs/stencil-facet-value-a4da653b.js.map +1 -0
- package/dist/cjs/stencil-facet-value-box-2949669d.js +26 -0
- package/dist/cjs/stencil-facet-value-box-2949669d.js.map +1 -0
- package/dist/cjs/stencil-facet-value-checkbox-49e6843d.js +104 -0
- package/dist/cjs/stencil-facet-value-checkbox-49e6843d.js.map +1 -0
- package/dist/cjs/stencil-facet-value-label-highlight-c2421e8f.js.map +1 -1
- package/dist/cjs/stencil-facet-value-link-089a2160.js +29 -0
- package/dist/cjs/stencil-facet-value-link-089a2160.js.map +1 -0
- package/dist/cjs/stencil-item-list-common-013ad9a0.js +67 -0
- package/dist/cjs/stencil-item-list-common-013ad9a0.js.map +1 -0
- package/dist/cjs/stencil-link-37587e3a.js +904 -0
- package/dist/cjs/stencil-link-37587e3a.js.map +1 -0
- package/dist/cjs/stencil-modal-33439a14.js +38 -0
- package/dist/cjs/stencil-modal-33439a14.js.map +1 -0
- package/dist/cjs/stencil-pager-navigation-54ce337f.js +48 -0
- package/dist/cjs/stencil-pager-navigation-54ce337f.js.map +1 -0
- package/dist/cjs/stencil-radio-button-b7440398.js +78 -0
- package/dist/cjs/stencil-radio-button-b7440398.js.map +1 -0
- package/dist/cjs/stencil-sort-7d3e410e.js +43 -0
- package/dist/cjs/stencil-sort-7d3e410e.js.map +1 -0
- package/dist/cjs/stencil-suggestion-manager-6f778cf0.js +419 -0
- package/dist/cjs/stencil-suggestion-manager-6f778cf0.js.map +1 -0
- package/dist/cjs/store-82abd941.js +110 -0
- package/dist/cjs/store-82abd941.js.map +1 -0
- package/dist/cjs/suggestions-common-4ed06099.js +46 -0
- package/dist/cjs/suggestions-common-4ed06099.js.map +1 -0
- package/dist/cjs/timeframe-facet-common-bd2f9c45.js +215 -0
- package/dist/cjs/timeframe-facet-common-bd2f9c45.js.map +1 -0
- package/dist/cjs/utils-7153ae6b.js +190 -0
- package/dist/cjs/utils-7153ae6b.js.map +1 -0
- package/dist/cjs/value-as-tree-container-d9952f1f.js +135 -0
- package/dist/cjs/value-as-tree-container-d9952f1f.js.map +1 -0
- package/dist/cjs/values-container-dfa0c20b.js +57 -0
- package/dist/cjs/values-container-dfa0c20b.js.map +1 -0
- package/dist/cjs/version.cjs.js +2 -2
- package/dist/esm/_index.js +5 -5
- package/dist/esm/analytics-config-4ecd50a4.js +2979 -0
- package/dist/esm/analytics-config-4ecd50a4.js.map +1 -0
- package/dist/esm/atomic-aria-live_2.entry.js +3 -3
- package/dist/esm/atomic-automatic-facet_2.entry.js +6 -6
- package/dist/esm/atomic-breadbox.entry.js +4 -4
- package/dist/esm/atomic-breadbox.entry.js.map +1 -1
- package/dist/esm/atomic-category-facet.entry.js +10 -10
- package/dist/esm/atomic-color-facet.entry.js +9 -9
- package/dist/esm/atomic-commerce-category-facet_6.entry.js +14 -14
- package/dist/esm/atomic-commerce-facets.entry.js +2 -2
- package/dist/esm/atomic-commerce-query-error.entry.js +5 -5
- package/dist/esm/atomic-commerce-refine-modal.entry.js +4 -4
- package/dist/esm/atomic-facet-number-input.entry.js +2 -2
- package/dist/esm/atomic-facet.entry.js +13 -13
- package/dist/esm/atomic-field-condition.entry.js +4 -4
- package/dist/esm/atomic-focus-trap_2.entry.js +2 -2
- package/dist/esm/atomic-folded-result-list.entry.js +7 -7
- package/dist/esm/atomic-generated-answer-feedback-modal.entry.js +5 -5
- package/dist/esm/atomic-generated-answer.entry.js +7 -7
- package/dist/esm/atomic-insight-edit-toggle.entry.js +3 -3
- package/dist/esm/atomic-insight-facet.entry.js +10 -10
- package/dist/esm/atomic-insight-folded-result-list.entry.js +6 -6
- package/dist/esm/atomic-insight-full-search-button.entry.js +3 -3
- package/dist/esm/atomic-insight-generated-answer.entry.js +6 -6
- package/dist/esm/atomic-insight-history-toggle.entry.js +3 -3
- package/dist/esm/atomic-insight-interface.entry.js +4 -5
- package/dist/esm/atomic-insight-interface.entry.js.map +1 -1
- package/dist/esm/atomic-insight-layout.entry.js +1 -1
- package/dist/esm/atomic-insight-no-results.entry.js +2 -2
- package/dist/esm/atomic-insight-numeric-facet.entry.js +9 -9
- package/dist/esm/atomic-insight-pager.entry.js +5 -5
- package/dist/esm/atomic-insight-query-error.entry.js +5 -5
- package/dist/esm/atomic-insight-query-summary.entry.js +2 -2
- package/dist/esm/atomic-insight-refine-modal.entry.js +6 -6
- package/dist/esm/atomic-insight-refine-toggle.entry.js +3 -3
- package/dist/esm/atomic-insight-result-action-bar.entry.js +2 -2
- package/dist/esm/atomic-insight-result-action.entry.js +3 -3
- package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js +3 -3
- package/dist/esm/atomic-insight-result-children-template.entry.js +4 -4
- package/dist/esm/atomic-insight-result-children.entry.js +4 -4
- package/dist/esm/atomic-insight-result-list.entry.js +6 -6
- package/dist/esm/atomic-insight-result-quickview-action.entry.js +5 -5
- package/dist/esm/atomic-insight-result-template.entry.js +4 -4
- package/dist/esm/atomic-insight-result.entry.js +5 -5
- package/dist/esm/atomic-insight-search-box.entry.js +10 -12
- package/dist/esm/atomic-insight-search-box.entry.js.map +1 -1
- package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js +4 -4
- package/dist/esm/atomic-insight-smart-snippet-suggestions.entry.js +4 -4
- package/dist/esm/atomic-insight-smart-snippet.entry.js +5 -5
- package/dist/esm/atomic-insight-tab.entry.js +4 -4
- package/dist/esm/atomic-insight-timeframe-facet.entry.js +8 -8
- package/dist/esm/atomic-insight-user-actions-modal.entry.js +2 -2
- package/dist/esm/atomic-insight-user-actions-session_2.entry.js +2 -2
- package/dist/esm/atomic-insight-user-actions-toggle.entry.js +3 -3
- package/dist/esm/atomic-ipx-body.entry.js +1 -1
- package/dist/esm/atomic-ipx-button.entry.js +2 -2
- package/dist/esm/atomic-ipx-embedded.entry.js +1 -1
- package/dist/esm/atomic-ipx-modal.entry.js +1 -1
- package/dist/esm/atomic-ipx-recs-list.entry.js +9 -9
- package/dist/esm/atomic-ipx-refine-modal.entry.js +6 -6
- package/dist/esm/atomic-ipx-refine-toggle.entry.js +3 -3
- package/dist/esm/atomic-ipx-tab.entry.js +4 -4
- package/dist/esm/atomic-load-more-results.entry.js +4 -4
- package/dist/esm/atomic-no-results.entry.js +4 -4
- package/dist/esm/atomic-no-results.entry.js.map +1 -1
- package/dist/esm/atomic-notifications.entry.js +2 -2
- package/dist/esm/atomic-numeric-facet.entry.js +9 -9
- package/dist/esm/atomic-pager.entry.js +6 -6
- package/dist/esm/atomic-popover.entry.js +2 -2
- package/dist/esm/atomic-product-children.entry.js +2 -2
- package/dist/esm/atomic-product-description.entry.js +3 -3
- package/dist/esm/atomic-product-excerpt.entry.js +3 -3
- package/dist/esm/atomic-product-field-condition.entry.js +2 -2
- package/dist/esm/atomic-product-field-condition.entry.js.map +1 -1
- package/dist/esm/atomic-product-image.entry.js +2 -2
- package/dist/esm/atomic-product-link.entry.js +2 -2
- package/dist/esm/atomic-product-multi-value-text.entry.js +1 -1
- package/dist/esm/atomic-product-numeric-field-value.entry.js +2 -2
- package/dist/esm/atomic-product-price.entry.js +1 -1
- package/dist/esm/atomic-product-section-actions.entry.js +2 -2
- package/dist/esm/atomic-product-section-badges.entry.js +2 -2
- package/dist/esm/atomic-product-section-bottom-metadata.entry.js +2 -2
- package/dist/esm/atomic-product-section-children.entry.js +2 -2
- package/dist/esm/atomic-product-section-description.entry.js +2 -2
- package/dist/esm/atomic-product-section-emphasized.entry.js +2 -2
- package/dist/esm/atomic-product-section-metadata.entry.js +2 -2
- package/dist/esm/atomic-product-section-name.entry.js +2 -2
- package/dist/esm/atomic-product-section-visual.entry.js +2 -2
- package/dist/esm/atomic-query-error.entry.js +5 -5
- package/dist/esm/atomic-query-summary.entry.js +2 -2
- package/dist/esm/atomic-quickview-modal.entry.js +21 -11
- package/dist/esm/atomic-quickview-modal.entry.js.map +1 -1
- package/dist/esm/atomic-quickview.entry.js +4 -4
- package/dist/esm/atomic-rating-facet.entry.js +8 -8
- package/dist/esm/atomic-rating-range-facet.entry.js +7 -7
- package/dist/esm/atomic-recs-error.entry.js +5 -5
- package/dist/esm/atomic-recs-interface.entry.js +4 -5
- package/dist/esm/atomic-recs-interface.entry.js.map +1 -1
- package/dist/esm/atomic-recs-list.entry.js +9 -9
- package/dist/esm/atomic-recs-result-template.entry.js +4 -4
- package/dist/esm/atomic-recs-result.entry.js +5 -5
- package/dist/esm/atomic-refine-modal.entry.js +6 -6
- package/dist/esm/atomic-refine-toggle.entry.js +2 -2
- package/dist/esm/atomic-result-children-template.entry.js +4 -4
- package/dist/esm/atomic-result-children.entry.js +4 -4
- package/dist/esm/atomic-result-icon.entry.js +1 -1
- package/dist/esm/atomic-result-list.entry.js +7 -7
- package/dist/esm/atomic-result-localized-text.entry.js +2 -2
- package/dist/esm/atomic-result-localized-text.entry.js.map +1 -1
- package/dist/esm/atomic-result-multi-value-text.entry.js +1 -1
- package/dist/esm/atomic-result-placeholder_8.entry.js +4 -4
- package/dist/esm/atomic-result-printable-uri.entry.js +2 -2
- package/dist/esm/atomic-result-section-children.entry.js +2 -2
- package/dist/esm/atomic-result-section-emphasized.entry.js +2 -2
- package/dist/esm/atomic-result-section-title-metadata.entry.js +2 -2
- package/dist/esm/atomic-result-template.entry.js +4 -4
- package/dist/esm/atomic-result.entry.js +5 -5
- package/dist/esm/atomic-results-per-page.entry.js +5 -5
- package/dist/esm/atomic-results-per-page.entry.js.map +1 -1
- package/dist/esm/atomic-search-box-instant-results.entry.js +1 -1
- package/dist/esm/atomic-search-box-query-suggestions_2.entry.js +3 -3
- package/dist/esm/atomic-search-box.entry.js +14 -14
- package/dist/esm/atomic-search-box.entry.js.map +1 -1
- package/dist/esm/atomic-search-interface.entry.js +6 -8
- package/dist/esm/atomic-search-interface.entry.js.map +1 -1
- package/dist/esm/atomic-search-layout.entry.js +1 -1
- package/dist/esm/atomic-segmented-facet-scrollable.entry.js +2 -2
- package/dist/esm/atomic-segmented-facet.entry.js +4 -4
- package/dist/esm/atomic-smart-snippet-answer_2.entry.js +1 -1
- package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js +4 -4
- package/dist/esm/atomic-smart-snippet-suggestions.entry.js +4 -4
- package/dist/esm/atomic-smart-snippet.entry.js +6 -6
- package/dist/esm/atomic-sort-dropdown.entry.js +1 -1
- package/dist/esm/atomic-sort-expression.entry.js +2 -2
- package/dist/esm/atomic-tab-bar_2.entry.js +2 -2
- package/dist/esm/atomic-tab-button.entry.js +2 -2
- package/dist/esm/atomic-timeframe-facet.entry.js +8 -8
- package/dist/esm/cloned-facet-elements-cb9ef91b.js +26 -0
- package/dist/esm/cloned-facet-elements-cb9ef91b.js.map +1 -0
- package/dist/esm/date-utils-e07b72d6.js.map +1 -1
- package/dist/esm/display-options-e07c9a5b.js +83 -0
- package/dist/esm/display-options-e07c9a5b.js.map +1 -0
- package/dist/esm/field-utils-f0146383.js.map +1 -1
- package/dist/esm/generated-answer-common-dfb9a828.js +2927 -0
- package/dist/esm/generated-answer-common-dfb9a828.js.map +1 -0
- package/dist/esm/iconButton-2e6938c5.js +13 -0
- package/dist/esm/iconButton-2e6938c5.js.map +1 -0
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/init-queue-fbe942c3.js.map +1 -1
- package/dist/esm/insight-layout-776b87f2.js.map +1 -1
- package/dist/esm/item-813944d1.js.map +1 -1
- package/dist/esm/item-section-utils-32bbb943.js +9 -0
- package/dist/esm/item-section-utils-32bbb943.js.map +1 -0
- package/dist/esm/item-template-provider-35bf0685.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/local-storage-utils-410269e6.js +62 -0
- package/dist/esm/local-storage-utils-410269e6.js.map +1 -0
- package/dist/esm/popover-type-895c0e24.js.map +1 -1
- package/dist/esm/product-utils-9dcbe57e.js +33 -0
- package/dist/esm/product-utils-9dcbe57e.js.map +1 -0
- package/dist/esm/props-utils-03d9fdf9.js +83 -0
- package/dist/esm/props-utils-03d9fdf9.js.map +1 -0
- package/dist/esm/result-template-common-5d59a9b5.js +115 -0
- package/dist/esm/result-template-common-5d59a9b5.js.map +1 -0
- package/dist/esm/result-utils-9d382fdb.js.map +1 -1
- package/dist/esm/ripple-b1f0b09d.js +45 -0
- package/dist/esm/ripple-b1f0b09d.js.map +1 -0
- package/dist/esm/sections-ae00b53a.js.map +1 -1
- package/dist/esm/sections-ef7bfd7a.js +41 -0
- package/dist/esm/sections-ef7bfd7a.js.map +1 -0
- package/dist/esm/show-hide-button-caaec7b0.js +96 -0
- package/dist/esm/show-hide-button-caaec7b0.js.map +1 -0
- package/dist/esm/smart-snippet-common-fb774198.js +54 -0
- package/dist/esm/smart-snippet-common-fb774198.js.map +1 -0
- package/dist/esm/smart-snippet-feedback-modal-common-d72f9043.js +58 -0
- package/dist/esm/smart-snippet-feedback-modal-common-d72f9043.js.map +1 -0
- package/dist/esm/smart-snippet-suggestions-common-25d34a7b.js +29 -0
- package/dist/esm/smart-snippet-suggestions-common-25d34a7b.js.map +1 -0
- package/dist/esm/stencil-accessibility-utils-2d41d4cd.js +160 -0
- package/dist/esm/stencil-accessibility-utils-2d41d4cd.js.map +1 -0
- package/dist/esm/stencil-button-2a8cc429.js +46 -0
- package/dist/esm/stencil-button-2a8cc429.js.map +1 -0
- package/dist/esm/stencil-carousel-a0eb523c.js +32 -0
- package/dist/esm/stencil-carousel-a0eb523c.js.map +1 -0
- package/dist/esm/stencil-expandable-text-f3d562dc.js +36 -0
- package/dist/esm/stencil-expandable-text-f3d562dc.js.map +1 -0
- package/dist/esm/stencil-facet-header-6a0bb1d4.js +33 -0
- package/dist/esm/stencil-facet-header-6a0bb1d4.js.map +1 -0
- package/dist/esm/stencil-facet-search-matches-7e6acab2.js +56 -0
- package/dist/esm/stencil-facet-search-matches-7e6acab2.js.map +1 -0
- package/dist/esm/stencil-facet-search-value-6a3f8ef6.js +24 -0
- package/dist/esm/stencil-facet-search-value-6a3f8ef6.js.map +1 -0
- package/dist/esm/stencil-facet-show-more-less-4b023ee3.js +46 -0
- package/dist/esm/stencil-facet-show-more-less-4b023ee3.js.map +1 -0
- package/dist/esm/stencil-facet-value-325f019d.js +39 -0
- package/dist/esm/stencil-facet-value-325f019d.js.map +1 -0
- package/dist/esm/stencil-facet-value-box-30a3003f.js +24 -0
- package/dist/esm/stencil-facet-value-box-30a3003f.js.map +1 -0
- package/dist/esm/stencil-facet-value-checkbox-5a90f933.js +102 -0
- package/dist/esm/stencil-facet-value-checkbox-5a90f933.js.map +1 -0
- package/dist/esm/stencil-facet-value-label-highlight-b4083ffd.js.map +1 -1
- package/dist/esm/stencil-facet-value-link-b3b194b7.js +27 -0
- package/dist/esm/stencil-facet-value-link-b3b194b7.js.map +1 -0
- package/dist/esm/stencil-item-list-common-7eaed4dd.js +64 -0
- package/dist/esm/stencil-item-list-common-7eaed4dd.js.map +1 -0
- package/dist/esm/stencil-link-d52947a6.js +894 -0
- package/dist/esm/stencil-link-d52947a6.js.map +1 -0
- package/dist/esm/stencil-modal-01e42232.js +36 -0
- package/dist/esm/stencil-modal-01e42232.js.map +1 -0
- package/dist/esm/stencil-pager-navigation-e906e3ae.js +42 -0
- package/dist/esm/stencil-pager-navigation-e906e3ae.js.map +1 -0
- package/dist/esm/stencil-radio-button-022ec547.js +76 -0
- package/dist/esm/stencil-radio-button-022ec547.js.map +1 -0
- package/dist/esm/stencil-sort-7a7ebea2.js +38 -0
- package/dist/esm/stencil-sort-7a7ebea2.js.map +1 -0
- package/dist/esm/stencil-suggestion-manager-91706623.js +414 -0
- package/dist/esm/stencil-suggestion-manager-91706623.js.map +1 -0
- package/dist/esm/store-e14e2958.js +101 -0
- package/dist/esm/store-e14e2958.js.map +1 -0
- package/dist/esm/suggestions-common-111b574e.js +42 -0
- package/dist/esm/suggestions-common-111b574e.js.map +1 -0
- package/dist/esm/timeframe-facet-common-8d7fa83e.js +213 -0
- package/dist/esm/timeframe-facet-common-8d7fa83e.js.map +1 -0
- package/dist/esm/utils-7ac76ba7.js +168 -0
- package/dist/esm/utils-7ac76ba7.js.map +1 -0
- package/dist/esm/value-as-tree-container-817faf3b.js +125 -0
- package/dist/esm/value-as-tree-container-817faf3b.js.map +1 -0
- package/dist/esm/values-container-29bf9f6b.js +53 -0
- package/dist/esm/values-container-29bf9f6b.js.map +1 -0
- package/dist/esm/version.js +2 -2
- package/dist/types/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.d.ts +4 -4
- package/dist/types/components/commerce/atomic-commerce-did-you-mean/atomic-commerce-did-you-mean.d.ts +3 -3
- package/dist/types/components/commerce/atomic-commerce-interface/analytics-config.d.ts +1 -1
- package/dist/types/components/commerce/atomic-commerce-interface/atomic-commerce-interface.d.ts +6 -6
- package/dist/types/components/commerce/atomic-commerce-interface/store.d.ts +2 -2
- package/dist/types/components/commerce/atomic-commerce-load-more-products/atomic-commerce-load-more-products.d.ts +4 -4
- package/dist/types/components/commerce/atomic-commerce-no-products/atomic-commerce-no-products.d.ts +4 -4
- package/dist/types/components/commerce/atomic-commerce-pager/atomic-commerce-pager.d.ts +3 -3
- package/dist/types/components/commerce/atomic-commerce-product-list/atomic-commerce-product-list.d.ts +4 -5
- package/dist/types/components/commerce/atomic-commerce-products-per-page/atomic-commerce-products-per-page.d.ts +3 -3
- package/dist/types/components/commerce/atomic-commerce-query-summary/atomic-commerce-query-summary.d.ts +4 -4
- package/dist/types/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.d.ts +6 -6
- package/dist/types/components/commerce/atomic-commerce-recommendation-interface/store.d.ts +1 -1
- package/dist/types/components/commerce/atomic-commerce-recommendation-list/atomic-commerce-recommendation-list.d.ts +6 -6
- package/dist/types/components/commerce/atomic-commerce-refine-toggle/atomic-commerce-refine-toggle.d.ts +3 -3
- package/dist/types/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.d.ts +4 -4
- package/dist/types/components/commerce/atomic-commerce-search-box-instant-products/atomic-commerce-search-box-instant-products.d.ts +6 -6
- package/dist/types/components/commerce/atomic-commerce-search-box-query-suggestions/atomic-commerce-search-box-query-suggestions.d.ts +4 -4
- package/dist/types/components/commerce/atomic-commerce-search-box-recent-queries/atomic-commerce-search-box-recent-queries.d.ts +4 -4
- package/dist/types/components/commerce/atomic-commerce-sort-dropdown/atomic-commerce-sort-dropdown.d.ts +4 -4
- package/dist/types/components/commerce/atomic-commerce-text/atomic-commerce-text.d.ts +2 -2
- package/dist/types/components/commerce/atomic-product/atomic-product.d.ts +8 -8
- package/dist/types/components/commerce/atomic-product-children/select-child-product-event.d.ts +1 -1
- package/dist/types/components/commerce/atomic-product-template/atomic-product-template.d.ts +2 -2
- package/dist/types/components/commerce/atomic-product-text/atomic-product-text.d.ts +2 -2
- package/dist/types/components/commerce/product-list/product-template-provider.d.ts +3 -3
- package/dist/types/components/commerce/product-list/stencil-product-template-provider.d.ts +3 -3
- package/dist/types/components/commerce/product-template-component-utils/product-utils.d.ts +2 -2
- package/dist/types/components/commerce/sort/option.d.ts +3 -3
- package/dist/types/components/common/atomic-icon/atomic-icon.d.ts +3 -3
- package/dist/types/components/common/atomic-layout-section/atomic-layout-section.d.ts +1 -1
- package/dist/types/components/common/atomic-layout-section/sections.d.ts +1 -1
- package/dist/types/components/common/atomic-result-placeholder/item-placeholders.d.ts +2 -2
- package/dist/types/components/common/breadbox/breadcrumb-button.d.ts +3 -3
- package/dist/types/components/common/breadbox/breadcrumb-clear-all.d.ts +2 -2
- package/dist/types/components/common/breadbox/breadcrumb-container.d.ts +2 -2
- package/dist/types/components/common/breadbox/breadcrumb-content.d.ts +3 -3
- package/dist/types/components/common/breadbox/breadcrumb-show-less.d.ts +2 -2
- package/dist/types/components/common/breadbox/breadcrumb-show-more.d.ts +2 -2
- package/dist/types/components/common/breadbox/breadcrumb-types.d.ts +1 -1
- package/dist/types/components/common/breadbox/breadcrumb-utils.d.ts +1 -1
- package/dist/types/components/common/button.d.ts +3 -3
- package/dist/types/components/common/carousel.d.ts +2 -2
- package/dist/types/components/common/checkbox.d.ts +2 -2
- package/dist/types/components/common/expandable-text/expandable-text.d.ts +1 -1
- package/dist/types/components/common/facets/facet-common-store.d.ts +1 -1
- package/dist/types/components/common/facets/facet-common.d.ts +3 -3
- package/dist/types/components/common/facets/facet-container/facet-container.d.ts +1 -1
- package/dist/types/components/common/facets/facet-header/facet-header.d.ts +2 -2
- package/dist/types/components/common/facets/facet-search/facet-search-aria-live.d.ts +2 -2
- package/dist/types/components/common/facets/facet-search/facet-search-input.d.ts +2 -2
- package/dist/types/components/common/facets/facet-search/facet-search-matches.d.ts +2 -2
- package/dist/types/components/common/facets/facet-show-more-less/facet-show-more-less.d.ts +2 -2
- package/dist/types/components/common/facets/facet-value/facet-value.d.ts +2 -2
- package/dist/types/components/common/facets/facet-value-box/facet-value-box.d.ts +2 -2
- package/dist/types/components/common/facets/facet-value-checkbox/facet-value-checkbox.d.ts +2 -2
- package/dist/types/components/common/facets/facet-value-exclude/facet-value-exclude.d.ts +1 -1
- package/dist/types/components/common/facets/facet-value-label-highlight/facet-value-label-highlight.d.ts +1 -1
- package/dist/types/components/common/facets/facet-value-link/facet-value-link.d.ts +3 -3
- package/dist/types/components/common/facets/facet-values-group/facet-values-group.d.ts +2 -2
- package/dist/types/components/common/facets/numeric-facet/formatter.d.ts +2 -2
- package/dist/types/components/common/facets/popover/popover-type.d.ts +1 -1
- package/dist/types/components/common/fieldset-group.d.ts +1 -1
- package/dist/types/components/common/heading.d.ts +1 -1
- package/dist/types/components/common/interface/analytics-config.d.ts +3 -4
- package/dist/types/components/common/interface/bindings.d.ts +8 -8
- package/dist/types/components/common/interface/i18n.d.ts +1 -1
- package/dist/types/components/common/interface/interface-common.d.ts +2 -2
- package/dist/types/components/common/interface/item.d.ts +3 -3
- package/dist/types/components/common/interface/stencil-i18n.d.ts +3 -3
- package/dist/types/components/common/item-list/context/child-templates-context-controller.d.ts +3 -3
- package/dist/types/components/common/item-list/context/interactive-item-context-controller.d.ts +2 -2
- package/dist/types/components/common/item-list/context/item-context-controller.d.ts +2 -2
- package/dist/types/components/common/item-list/context/item-display-config-context-controller.d.ts +2 -2
- package/dist/types/components/common/item-list/display-wrapper.d.ts +2 -2
- package/dist/types/components/common/item-list/grid-layout.d.ts +1 -1
- package/dist/types/components/common/item-list/item-list-common.d.ts +8 -8
- package/dist/types/components/common/item-list/item-template-provider.d.ts +4 -4
- package/dist/types/components/common/item-list/table-layout.d.ts +4 -4
- package/dist/types/components/common/item-text/item-text-fallback.d.ts +1 -1
- package/dist/types/components/common/item-text/item-text-highlighted.d.ts +2 -2
- package/dist/types/components/common/items-per-page/choices.d.ts +2 -2
- package/dist/types/components/common/items-per-page/label.d.ts +1 -1
- package/dist/types/components/common/load-more/button.d.ts +2 -2
- package/dist/types/components/common/load-more/container.d.ts +1 -1
- package/dist/types/components/common/load-more/progress-bar.d.ts +1 -1
- package/dist/types/components/common/load-more/summary.d.ts +2 -2
- package/dist/types/components/common/no-items/container.d.ts +1 -1
- package/dist/types/components/common/no-items/magnifying-glass.d.ts +1 -1
- package/dist/types/components/common/no-items/no-items.d.ts +2 -2
- package/dist/types/components/common/no-items/tips.d.ts +2 -2
- package/dist/types/components/common/no-items/utils.d.ts +1 -1
- package/dist/types/components/common/pager/pager-buttons.d.ts +4 -4
- package/dist/types/components/common/pager/pager-guard.d.ts +1 -1
- package/dist/types/components/common/pager/pager-navigation.d.ts +2 -2
- package/dist/types/components/common/product-template/product-template-common.d.ts +1 -1
- package/dist/types/components/common/product-template/product-template-controller.d.ts +2 -2
- package/dist/types/components/common/query-correction/auto-correction.d.ts +2 -2
- package/dist/types/components/common/query-correction/correction.d.ts +2 -2
- package/dist/types/components/common/query-correction/trigger-correction.d.ts +2 -2
- package/dist/types/components/common/query-error/description.d.ts +1 -1
- package/dist/types/components/common/query-error/details.d.ts +1 -1
- package/dist/types/components/common/query-error/icon.d.ts +1 -1
- package/dist/types/components/common/query-error/link.d.ts +2 -2
- package/dist/types/components/common/query-error/show-more.d.ts +3 -3
- package/dist/types/components/common/query-error/title.d.ts +1 -1
- package/dist/types/components/common/query-error/utils.d.ts +1 -1
- package/dist/types/components/common/query-summary/container.d.ts +1 -1
- package/dist/types/components/common/query-summary/guard.d.ts +1 -1
- package/dist/types/components/common/query-summary/utils.d.ts +1 -1
- package/dist/types/components/common/radio-button.d.ts +3 -3
- package/dist/types/components/common/refine-modal/body.d.ts +1 -1
- package/dist/types/components/common/refine-modal/button.d.ts +3 -3
- package/dist/types/components/common/refine-modal/filters.d.ts +2 -2
- package/dist/types/components/common/refine-modal/modal.d.ts +2 -2
- package/dist/types/components/common/refine-modal/sort.d.ts +2 -2
- package/dist/types/components/common/search-box/search-box-wrapper.d.ts +1 -1
- package/dist/types/components/common/search-box/search-text-area.d.ts +3 -3
- package/dist/types/components/common/search-box/submit-button.d.ts +2 -2
- package/dist/types/components/common/search-box/text-area-clear-button.d.ts +3 -3
- package/dist/types/components/common/sort/label.d.ts +2 -2
- package/dist/types/components/common/sort/option.d.ts +2 -2
- package/dist/types/components/common/sort/select.d.ts +2 -2
- package/dist/types/components/common/sort/sort-guard.d.ts +1 -1
- package/dist/types/components/common/suggestions/instant-item.d.ts +2 -2
- package/dist/types/components/common/suggestions/query-suggestions.d.ts +2 -2
- package/dist/types/components/common/suggestions/recent-queries.d.ts +2 -2
- package/dist/types/components/common/suggestions/stencil-suggestion-manager.d.ts +8 -8
- package/dist/types/components/common/suggestions/suggestion-manager.d.ts +9 -9
- package/dist/types/components/common/suggestions/suggestions-common.d.ts +4 -4
- package/dist/types/components/common/triStateCheckbox.d.ts +3 -3
- package/dist/types/components/context/bindings-context.d.ts +1 -1
- package/dist/types/components/index.d.ts +2 -2
- package/dist/types/components/insight/atomic-insight-interface/analytics-config.d.ts +1 -1
- package/dist/types/components/insight/atomic-insight-interface/store.d.ts +3 -3
- package/dist/types/components/recommendations/atomic-recs-interface/analytics-config.d.ts +1 -1
- package/dist/types/components/recommendations/atomic-recs-interface/store.d.ts +1 -1
- package/dist/types/components/search/atomic-search-interface/analytics-config.d.ts +2 -2
- package/dist/types/components/search/atomic-search-interface/interfaces.d.ts +3 -3
- package/dist/types/components/search/atomic-search-interface/store.d.ts +3 -3
- package/dist/types/components/search/result-template-components/atomic-result-localized-text/atomic-result-localized-text.d.ts +2 -2
- package/dist/types/components/search/result-template-components/quickview-preview-bar/quickview-preview-bar.d.ts +2 -2
- package/dist/types/decorators/binding-guard.d.ts +1 -1
- package/dist/types/decorators/bindings.d.ts +3 -3
- package/dist/types/decorators/commerce/product-template-decorators.d.ts +4 -5
- package/dist/types/decorators/error-guard.d.ts +2 -2
- package/dist/types/decorators/light-dom.d.ts +1 -1
- package/dist/types/decorators/types.d.ts +4 -4
- package/dist/types/decorators/with-tailwind-styles.d.ts +2 -2
- package/dist/types/directives/display-if.d.ts +1 -1
- package/dist/types/directives/localized-string.d.ts +3 -3
- package/dist/types/index.d.ts +10 -11
- package/dist/types/mixins/bindings-mixin.d.ts +1 -1
- package/dist/types/mixins/children-update-complete-mixin.d.ts +1 -1
- package/dist/types/mixins/commerce-layout-mixin.d.ts +2 -2
- package/dist/types/utils/accessibility-utils.d.ts +4 -4
- package/dist/types/utils/date-utils.d.ts +1 -1
- package/dist/types/utils/field-utils.d.ts +1 -1
- package/dist/types/utils/functional-component-utils.d.ts +13 -23
- package/dist/types/utils/init-queue.d.ts +1 -1
- package/dist/types/utils/local-storage-utils.d.ts +1 -2
- package/dist/types/utils/props-utils.d.ts +2 -2
- package/dist/types/utils/result-utils.d.ts +3 -3
- package/dist/types/utils/ripple.d.ts +1 -1
- package/docs/atomic-docs.json +2 -2
- package/package.json +4 -4
- package/dist/atomic/p-014f08aa.entry.js +0 -2
- package/dist/atomic/p-0165218d.entry.js +0 -2
- package/dist/atomic/p-0175c55f.entry.js +0 -2
- package/dist/atomic/p-03ade4a7.entry.js +0 -2
- package/dist/atomic/p-047321f0.entry.js +0 -2
- package/dist/atomic/p-0487f24f.js +0 -2
- package/dist/atomic/p-0671d433.js +0 -2
- package/dist/atomic/p-0685f8b0.entry.js +0 -2
- package/dist/atomic/p-097af865.entry.js +0 -2
- package/dist/atomic/p-09b18ca4.entry.js +0 -2
- package/dist/atomic/p-0b14ec61.entry.js +0 -2
- package/dist/atomic/p-0c23dddc.entry.js +0 -2
- package/dist/atomic/p-11504251.entry.js +0 -2
- package/dist/atomic/p-173ed16a.entry.js +0 -2
- package/dist/atomic/p-19921bbf.js +0 -2
- package/dist/atomic/p-19d13940.js +0 -2
- package/dist/atomic/p-19d13940.js.map +0 -1
- package/dist/atomic/p-19d1f307.entry.js +0 -2
- package/dist/atomic/p-1a7300d7.entry.js +0 -2
- package/dist/atomic/p-1d02a670.js +0 -2
- package/dist/atomic/p-1d3438c4.js +0 -2
- package/dist/atomic/p-1ecdaf71.entry.js +0 -2
- package/dist/atomic/p-237bc29e.entry.js +0 -2
- package/dist/atomic/p-23961f4c.entry.js +0 -2
- package/dist/atomic/p-23961f4c.entry.js.map +0 -1
- package/dist/atomic/p-26fe8e6c.entry.js +0 -2
- package/dist/atomic/p-27f9809d.entry.js +0 -2
- package/dist/atomic/p-2bfabcc5.entry.js +0 -2
- package/dist/atomic/p-2c3f0d6a.entry.js +0 -2
- package/dist/atomic/p-2d15692f.entry.js +0 -2
- package/dist/atomic/p-2d99a682.js +0 -2
- package/dist/atomic/p-2d99a682.js.map +0 -1
- package/dist/atomic/p-2f5c14fb.js +0 -2
- package/dist/atomic/p-31d2304f.entry.js +0 -2
- package/dist/atomic/p-32bb65e8.entry.js +0 -2
- package/dist/atomic/p-33864a0f.entry.js +0 -2
- package/dist/atomic/p-34ec2c11.js +0 -2
- package/dist/atomic/p-34ec2c11.js.map +0 -1
- package/dist/atomic/p-372de994.entry.js +0 -2
- package/dist/atomic/p-3763941c.js +0 -2
- package/dist/atomic/p-3763941c.js.map +0 -1
- package/dist/atomic/p-3b29117a.entry.js +0 -2
- package/dist/atomic/p-3cf9cf86.js +0 -2
- package/dist/atomic/p-3d520bcc.entry.js +0 -2
- package/dist/atomic/p-3fdb9f0e.entry.js +0 -2
- package/dist/atomic/p-40d341e1.entry.js +0 -2
- package/dist/atomic/p-433c9489.entry.js +0 -2
- package/dist/atomic/p-4692f2c1.entry.js +0 -2
- package/dist/atomic/p-474aa256.entry.js +0 -2
- package/dist/atomic/p-47def3b7.js +0 -2
- package/dist/atomic/p-4876f46c.js +0 -2
- package/dist/atomic/p-4acda4b7.entry.js +0 -2
- package/dist/atomic/p-4acda4b7.entry.js.map +0 -1
- package/dist/atomic/p-4e9f72bc.entry.js +0 -2
- package/dist/atomic/p-50bd7c4b.entry.js +0 -2
- package/dist/atomic/p-531e72ca.entry.js +0 -2
- package/dist/atomic/p-531e72ca.entry.js.map +0 -1
- package/dist/atomic/p-560ce63e.entry.js +0 -2
- package/dist/atomic/p-595eddb0.entry.js +0 -2
- package/dist/atomic/p-5a5310cc.entry.js +0 -2
- package/dist/atomic/p-5bbdcdd1.entry.js +0 -2
- package/dist/atomic/p-5bbdcdd1.entry.js.map +0 -1
- package/dist/atomic/p-5c51370e.js +0 -2
- package/dist/atomic/p-5e1681ed.entry.js +0 -2
- package/dist/atomic/p-5f97d504.js +0 -2
- package/dist/atomic/p-603f1043.entry.js +0 -2
- package/dist/atomic/p-628ea1a4.js +0 -2
- package/dist/atomic/p-668e9785.entry.js +0 -2
- package/dist/atomic/p-6943b53e.entry.js +0 -2
- package/dist/atomic/p-69454f47.entry.js +0 -2
- package/dist/atomic/p-6b697f66.js +0 -2
- package/dist/atomic/p-6e4ac9f4.entry.js +0 -2
- package/dist/atomic/p-716d245c.entry.js +0 -2
- package/dist/atomic/p-734868d0.entry.js +0 -2
- package/dist/atomic/p-748dd9f4.entry.js +0 -2
- package/dist/atomic/p-7555ad6d.js +0 -2
- package/dist/atomic/p-76ad46e7.entry.js +0 -2
- package/dist/atomic/p-76ad46e7.entry.js.map +0 -1
- package/dist/atomic/p-798eb1c5.entry.js +0 -2
- package/dist/atomic/p-7a311bb0.entry.js +0 -2
- package/dist/atomic/p-7a311bb0.entry.js.map +0 -1
- package/dist/atomic/p-7ec2a99d.entry.js +0 -2
- package/dist/atomic/p-827a5ded.entry.js +0 -2
- package/dist/atomic/p-86489983.js +0 -2
- package/dist/atomic/p-86489983.js.map +0 -1
- package/dist/atomic/p-868526e7.entry.js +0 -2
- package/dist/atomic/p-874b20ec.entry.js +0 -2
- package/dist/atomic/p-880b0fd9.entry.js +0 -2
- package/dist/atomic/p-89c6b9bf.entry.js +0 -2
- package/dist/atomic/p-8b4250bf.js +0 -2
- package/dist/atomic/p-8c0eadfd.js +0 -2
- package/dist/atomic/p-8fc48376.entry.js +0 -2
- package/dist/atomic/p-9068b6c5.js +0 -2
- package/dist/atomic/p-914dcfb4.entry.js +0 -2
- package/dist/atomic/p-9344b574.entry.js +0 -2
- package/dist/atomic/p-93477748.entry.js +0 -2
- package/dist/atomic/p-93933c71.entry.js +0 -2
- package/dist/atomic/p-956772cf.entry.js +0 -2
- package/dist/atomic/p-96810f19.js +0 -2
- package/dist/atomic/p-96c7f620.entry.js +0 -2
- package/dist/atomic/p-97e42a30.js +0 -2
- package/dist/atomic/p-9872b71b.entry.js +0 -2
- package/dist/atomic/p-98eb935d.entry.js +0 -2
- package/dist/atomic/p-9fcd55ab.entry.js +0 -2
- package/dist/atomic/p-a1c4ac09.js +0 -2
- package/dist/atomic/p-a1c4ac09.js.map +0 -1
- package/dist/atomic/p-a1de0d55.entry.js +0 -2
- package/dist/atomic/p-a213f510.js +0 -2
- package/dist/atomic/p-a213f510.js.map +0 -1
- package/dist/atomic/p-a357d6cb.entry.js +0 -2
- package/dist/atomic/p-a357d6cb.entry.js.map +0 -1
- package/dist/atomic/p-a7301a38.js +0 -2
- package/dist/atomic/p-a7693fec.entry.js +0 -2
- package/dist/atomic/p-a7693fec.entry.js.map +0 -1
- package/dist/atomic/p-a7e47b6e.entry.js +0 -2
- package/dist/atomic/p-a8a7cc1c.js +0 -2
- package/dist/atomic/p-a9e79702.js +0 -2
- package/dist/atomic/p-a9e79702.js.map +0 -1
- package/dist/atomic/p-ab2aea58.entry.js +0 -2
- package/dist/atomic/p-adc65b62.entry.js +0 -2
- package/dist/atomic/p-aef0d17e.entry.js +0 -2
- package/dist/atomic/p-afa00611.entry.js +0 -2
- package/dist/atomic/p-aff75086.entry.js +0 -2
- package/dist/atomic/p-b342a594.entry.js +0 -2
- package/dist/atomic/p-b36266fe.js +0 -2
- package/dist/atomic/p-b49e86ab.entry.js +0 -2
- package/dist/atomic/p-b4b863ae.entry.js +0 -2
- package/dist/atomic/p-b5b43bc0.js +0 -2
- package/dist/atomic/p-b67d4d03.entry.js +0 -2
- package/dist/atomic/p-b6c3bdf0.entry.js +0 -2
- package/dist/atomic/p-b8bcfbf9.entry.js +0 -2
- package/dist/atomic/p-b9e742da.entry.js +0 -2
- package/dist/atomic/p-b9e742da.entry.js.map +0 -1
- package/dist/atomic/p-bb9b33ba.entry.js +0 -2
- package/dist/atomic/p-bc373a88.entry.js +0 -2
- package/dist/atomic/p-bc9b5688.entry.js +0 -2
- package/dist/atomic/p-bd2cc968.entry.js +0 -2
- package/dist/atomic/p-bd49de18.entry.js +0 -2
- package/dist/atomic/p-bead2526.entry.js +0 -2
- package/dist/atomic/p-bef1b7bf.entry.js +0 -2
- package/dist/atomic/p-c17c537e.entry.js +0 -2
- package/dist/atomic/p-c2922642.js +0 -2
- package/dist/atomic/p-c451feb8.entry.js +0 -2
- package/dist/atomic/p-c666ba42.entry.js +0 -2
- package/dist/atomic/p-c7e042b4.entry.js +0 -2
- package/dist/atomic/p-c8ea949e.entry.js +0 -2
- package/dist/atomic/p-cd30e2c6.entry.js +0 -2
- package/dist/atomic/p-cf2d1d13.js +0 -2
- package/dist/atomic/p-cf2d1d13.js.map +0 -1
- package/dist/atomic/p-cf5c8c3e.entry.js +0 -2
- package/dist/atomic/p-d1cc3448.entry.js +0 -2
- package/dist/atomic/p-d2e7a1dd.entry.js +0 -2
- package/dist/atomic/p-d37a9b77.entry.js +0 -2
- package/dist/atomic/p-d4367e6f.entry.js +0 -2
- package/dist/atomic/p-d4bc1d85.entry.js +0 -2
- package/dist/atomic/p-d5016dc8.entry.js +0 -2
- package/dist/atomic/p-d5a37316.entry.js +0 -2
- package/dist/atomic/p-d61a44e7.js +0 -2
- package/dist/atomic/p-d76c5232.entry.js +0 -2
- package/dist/atomic/p-d915fc24.js +0 -2
- package/dist/atomic/p-dc6c5565.entry.js +0 -2
- package/dist/atomic/p-dd9ae088.entry.js +0 -2
- package/dist/atomic/p-df4386fe.entry.js +0 -2
- package/dist/atomic/p-e3c4b00c.entry.js +0 -2
- package/dist/atomic/p-e4dd908f.entry.js +0 -2
- package/dist/atomic/p-e53be9cc.entry.js +0 -2
- package/dist/atomic/p-e53be9cc.entry.js.map +0 -1
- package/dist/atomic/p-e590285f.entry.js +0 -2
- package/dist/atomic/p-e6d318eb.js +0 -2
- package/dist/atomic/p-e6d318eb.js.map +0 -1
- package/dist/atomic/p-e8b3138c.entry.js +0 -2
- package/dist/atomic/p-e8f3e0e8.js +0 -2
- package/dist/atomic/p-e8f3e0e8.js.map +0 -1
- package/dist/atomic/p-eae48c57.entry.js +0 -2
- package/dist/atomic/p-ee9bad62.entry.js +0 -2
- package/dist/atomic/p-eeacc8bf.entry.js +0 -2
- package/dist/atomic/p-ef91ea1e.entry.js +0 -2
- package/dist/atomic/p-f18093e4.entry.js +0 -2
- package/dist/atomic/p-f32669de.entry.js +0 -2
- package/dist/atomic/p-f45d8b3e.js +0 -2
- package/dist/atomic/p-f45d8b3e.js.map +0 -1
- package/dist/atomic/p-f5982205.js +0 -2
- package/dist/atomic/p-f7133a5a.js +0 -2
- package/dist/atomic/p-f7133a5a.js.map +0 -1
- package/dist/atomic/p-f88d2adf.entry.js +0 -2
- package/dist/atomic/p-f88d2adf.entry.js.map +0 -1
- package/dist/atomic/p-f8bb96c4.entry.js +0 -2
- package/dist/atomic/p-f9f835cd.js +0 -2
- package/dist/atomic/p-fab584fa.entry.js +0 -2
- package/dist/cjs/analytics-config-af28b088.js +0 -2988
- package/dist/cjs/analytics-config-af28b088.js.map +0 -1
- package/dist/cjs/cloned-facet-elements-dc857666.js +0 -28
- package/dist/cjs/cloned-facet-elements-dc857666.js.map +0 -1
- package/dist/cjs/display-options-a75460d7.js +0 -90
- package/dist/cjs/display-options-a75460d7.js.map +0 -1
- package/dist/cjs/generated-answer-common-877cabec.js +0 -2929
- package/dist/cjs/generated-answer-common-877cabec.js.map +0 -1
- package/dist/cjs/iconButton-c1cd4b3f.js +0 -15
- package/dist/cjs/iconButton-c1cd4b3f.js.map +0 -1
- package/dist/cjs/item-section-utils-66318831.js +0 -11
- package/dist/cjs/item-section-utils-66318831.js.map +0 -1
- package/dist/cjs/local-storage-utils-84663077.js +0 -65
- package/dist/cjs/local-storage-utils-84663077.js.map +0 -1
- package/dist/cjs/product-utils-f6c780e3.js +0 -36
- package/dist/cjs/product-utils-f6c780e3.js.map +0 -1
- package/dist/cjs/props-utils-66dfcd3a.js +0 -85
- package/dist/cjs/props-utils-66dfcd3a.js.map +0 -1
- package/dist/cjs/result-template-common-0e531f3b.js +0 -119
- package/dist/cjs/result-template-common-0e531f3b.js.map +0 -1
- package/dist/cjs/ripple-fb3f3438.js +0 -47
- package/dist/cjs/ripple-fb3f3438.js.map +0 -1
- package/dist/cjs/sections-59d6ac14.js +0 -44
- package/dist/cjs/sections-59d6ac14.js.map +0 -1
- package/dist/cjs/show-hide-button-b6fee434.js +0 -103
- package/dist/cjs/show-hide-button-b6fee434.js.map +0 -1
- package/dist/cjs/smart-snippet-common-001e499a.js +0 -60
- package/dist/cjs/smart-snippet-common-001e499a.js.map +0 -1
- package/dist/cjs/smart-snippet-feedback-modal-common-c7e766e1.js +0 -66
- package/dist/cjs/smart-snippet-feedback-modal-common-c7e766e1.js.map +0 -1
- package/dist/cjs/smart-snippet-suggestions-common-d2c3e537.js +0 -36
- package/dist/cjs/smart-snippet-suggestions-common-d2c3e537.js.map +0 -1
- package/dist/cjs/stencil-accessibility-utils-a5d1a814.js +0 -164
- package/dist/cjs/stencil-accessibility-utils-a5d1a814.js.map +0 -1
- package/dist/cjs/stencil-button-ac56f2c3.js +0 -48
- package/dist/cjs/stencil-button-ac56f2c3.js.map +0 -1
- package/dist/cjs/stencil-carousel-99b645ca.js +0 -34
- package/dist/cjs/stencil-carousel-99b645ca.js.map +0 -1
- package/dist/cjs/stencil-expandable-text-80915f74.js +0 -38
- package/dist/cjs/stencil-expandable-text-80915f74.js.map +0 -1
- package/dist/cjs/stencil-facet-header-a3dd9de0.js +0 -36
- package/dist/cjs/stencil-facet-header-a3dd9de0.js.map +0 -1
- package/dist/cjs/stencil-facet-search-matches-6eb982ff.js +0 -59
- package/dist/cjs/stencil-facet-search-matches-6eb982ff.js.map +0 -1
- package/dist/cjs/stencil-facet-search-value-5dba7422.js +0 -27
- package/dist/cjs/stencil-facet-search-value-5dba7422.js.map +0 -1
- package/dist/cjs/stencil-facet-show-more-less-8d757b5d.js +0 -49
- package/dist/cjs/stencil-facet-show-more-less-8d757b5d.js.map +0 -1
- package/dist/cjs/stencil-facet-value-5f8a0792.js +0 -41
- package/dist/cjs/stencil-facet-value-5f8a0792.js.map +0 -1
- package/dist/cjs/stencil-facet-value-box-87cb3490.js +0 -26
- package/dist/cjs/stencil-facet-value-box-87cb3490.js.map +0 -1
- package/dist/cjs/stencil-facet-value-checkbox-3554634d.js +0 -104
- package/dist/cjs/stencil-facet-value-checkbox-3554634d.js.map +0 -1
- package/dist/cjs/stencil-facet-value-link-e81ec312.js +0 -29
- package/dist/cjs/stencil-facet-value-link-e81ec312.js.map +0 -1
- package/dist/cjs/stencil-item-list-common-5a566a7b.js +0 -67
- package/dist/cjs/stencil-item-list-common-5a566a7b.js.map +0 -1
- package/dist/cjs/stencil-link-fbb2ab5c.js +0 -904
- package/dist/cjs/stencil-link-fbb2ab5c.js.map +0 -1
- package/dist/cjs/stencil-modal-b61125d5.js +0 -38
- package/dist/cjs/stencil-modal-b61125d5.js.map +0 -1
- package/dist/cjs/stencil-pager-navigation-c90ad41f.js +0 -48
- package/dist/cjs/stencil-pager-navigation-c90ad41f.js.map +0 -1
- package/dist/cjs/stencil-radio-button-0d881f57.js +0 -78
- package/dist/cjs/stencil-radio-button-0d881f57.js.map +0 -1
- package/dist/cjs/stencil-sort-c97ba893.js +0 -43
- package/dist/cjs/stencil-sort-c97ba893.js.map +0 -1
- package/dist/cjs/stencil-suggestion-manager-0407f393.js +0 -421
- package/dist/cjs/stencil-suggestion-manager-0407f393.js.map +0 -1
- package/dist/cjs/store-116fd400.js +0 -110
- package/dist/cjs/store-116fd400.js.map +0 -1
- package/dist/cjs/suggestions-common-ce8cd93f.js +0 -46
- package/dist/cjs/suggestions-common-ce8cd93f.js.map +0 -1
- package/dist/cjs/timeframe-facet-common-d9078836.js +0 -215
- package/dist/cjs/timeframe-facet-common-d9078836.js.map +0 -1
- package/dist/cjs/utils-b6642872.js +0 -190
- package/dist/cjs/utils-b6642872.js.map +0 -1
- package/dist/cjs/value-as-tree-container-c7acc7fe.js +0 -135
- package/dist/cjs/value-as-tree-container-c7acc7fe.js.map +0 -1
- package/dist/cjs/values-container-7f0fda83.js +0 -57
- package/dist/cjs/values-container-7f0fda83.js.map +0 -1
- package/dist/esm/analytics-config-aaa7ac85.js +0 -2979
- package/dist/esm/analytics-config-aaa7ac85.js.map +0 -1
- package/dist/esm/cloned-facet-elements-016d7d12.js +0 -26
- package/dist/esm/cloned-facet-elements-016d7d12.js.map +0 -1
- package/dist/esm/display-options-9133df57.js +0 -86
- package/dist/esm/display-options-9133df57.js.map +0 -1
- package/dist/esm/generated-answer-common-e82619d8.js +0 -2927
- package/dist/esm/generated-answer-common-e82619d8.js.map +0 -1
- package/dist/esm/iconButton-50f7ed11.js +0 -13
- package/dist/esm/iconButton-50f7ed11.js.map +0 -1
- package/dist/esm/item-section-utils-30596045.js +0 -9
- package/dist/esm/item-section-utils-30596045.js.map +0 -1
- package/dist/esm/local-storage-utils-c8dbf1ef.js +0 -63
- package/dist/esm/local-storage-utils-c8dbf1ef.js.map +0 -1
- package/dist/esm/product-utils-85109d2e.js +0 -33
- package/dist/esm/product-utils-85109d2e.js.map +0 -1
- package/dist/esm/props-utils-8a93fa7a.js +0 -82
- package/dist/esm/props-utils-8a93fa7a.js.map +0 -1
- package/dist/esm/result-template-common-f15d240a.js +0 -115
- package/dist/esm/result-template-common-f15d240a.js.map +0 -1
- package/dist/esm/ripple-81f137d8.js +0 -45
- package/dist/esm/ripple-81f137d8.js.map +0 -1
- package/dist/esm/sections-9a7f76dc.js +0 -41
- package/dist/esm/sections-9a7f76dc.js.map +0 -1
- package/dist/esm/show-hide-button-6fd5edfb.js +0 -96
- package/dist/esm/show-hide-button-6fd5edfb.js.map +0 -1
- package/dist/esm/smart-snippet-common-815f5c77.js +0 -54
- package/dist/esm/smart-snippet-common-815f5c77.js.map +0 -1
- package/dist/esm/smart-snippet-feedback-modal-common-6a7d4732.js +0 -58
- package/dist/esm/smart-snippet-feedback-modal-common-6a7d4732.js.map +0 -1
- package/dist/esm/smart-snippet-suggestions-common-79e78c0c.js +0 -29
- package/dist/esm/smart-snippet-suggestions-common-79e78c0c.js.map +0 -1
- package/dist/esm/stencil-accessibility-utils-b0ddad00.js +0 -160
- package/dist/esm/stencil-accessibility-utils-b0ddad00.js.map +0 -1
- package/dist/esm/stencil-button-45a5cdb4.js +0 -46
- package/dist/esm/stencil-button-45a5cdb4.js.map +0 -1
- package/dist/esm/stencil-carousel-b6ba4055.js +0 -32
- package/dist/esm/stencil-carousel-b6ba4055.js.map +0 -1
- package/dist/esm/stencil-expandable-text-957d599c.js +0 -36
- package/dist/esm/stencil-expandable-text-957d599c.js.map +0 -1
- package/dist/esm/stencil-facet-header-8a22d37d.js +0 -33
- package/dist/esm/stencil-facet-header-8a22d37d.js.map +0 -1
- package/dist/esm/stencil-facet-search-matches-fb39731f.js +0 -56
- package/dist/esm/stencil-facet-search-matches-fb39731f.js.map +0 -1
- package/dist/esm/stencil-facet-search-value-94220891.js +0 -24
- package/dist/esm/stencil-facet-search-value-94220891.js.map +0 -1
- package/dist/esm/stencil-facet-show-more-less-cf037727.js +0 -46
- package/dist/esm/stencil-facet-show-more-less-cf037727.js.map +0 -1
- package/dist/esm/stencil-facet-value-2718b630.js +0 -39
- package/dist/esm/stencil-facet-value-2718b630.js.map +0 -1
- package/dist/esm/stencil-facet-value-box-7962f245.js +0 -24
- package/dist/esm/stencil-facet-value-box-7962f245.js.map +0 -1
- package/dist/esm/stencil-facet-value-checkbox-41863899.js +0 -102
- package/dist/esm/stencil-facet-value-checkbox-41863899.js.map +0 -1
- package/dist/esm/stencil-facet-value-link-77d619b8.js +0 -27
- package/dist/esm/stencil-facet-value-link-77d619b8.js.map +0 -1
- package/dist/esm/stencil-item-list-common-f47702a8.js +0 -64
- package/dist/esm/stencil-item-list-common-f47702a8.js.map +0 -1
- package/dist/esm/stencil-link-32a27dfb.js +0 -894
- package/dist/esm/stencil-link-32a27dfb.js.map +0 -1
- package/dist/esm/stencil-modal-31d0f681.js +0 -36
- package/dist/esm/stencil-modal-31d0f681.js.map +0 -1
- package/dist/esm/stencil-pager-navigation-30cc379b.js +0 -42
- package/dist/esm/stencil-pager-navigation-30cc379b.js.map +0 -1
- package/dist/esm/stencil-radio-button-a53ba264.js +0 -76
- package/dist/esm/stencil-radio-button-a53ba264.js.map +0 -1
- package/dist/esm/stencil-sort-9b438c1a.js +0 -38
- package/dist/esm/stencil-sort-9b438c1a.js.map +0 -1
- package/dist/esm/stencil-suggestion-manager-fd9c754b.js +0 -416
- package/dist/esm/stencil-suggestion-manager-fd9c754b.js.map +0 -1
- package/dist/esm/store-748e58ad.js +0 -101
- package/dist/esm/store-748e58ad.js.map +0 -1
- package/dist/esm/suggestions-common-9cbaa15f.js +0 -42
- package/dist/esm/suggestions-common-9cbaa15f.js.map +0 -1
- package/dist/esm/timeframe-facet-common-de762ec7.js +0 -213
- package/dist/esm/timeframe-facet-common-de762ec7.js.map +0 -1
- package/dist/esm/utils-d616a00c.js +0 -168
- package/dist/esm/utils-d616a00c.js.map +0 -1
- package/dist/esm/value-as-tree-container-513acbf2.js +0 -125
- package/dist/esm/value-as-tree-container-513acbf2.js.map +0 -1
- package/dist/esm/values-container-e12461a1.js +0 -53
- package/dist/esm/values-container-e12461a1.js.map +0 -1
- /package/dist/atomic/{p-3fdb9f0e.entry.js.map → p-022e2c88.entry.js.map} +0 -0
- /package/dist/atomic/{p-372de994.entry.js.map → p-0297467f.entry.js.map} +0 -0
- /package/dist/atomic/{p-b8bcfbf9.entry.js.map → p-02dc6f22.entry.js.map} +0 -0
- /package/dist/atomic/{p-1d02a670.js.map → p-034a21aa.js.map} +0 -0
- /package/dist/atomic/{p-716d245c.entry.js.map → p-03e139a8.entry.js.map} +0 -0
- /package/dist/atomic/{p-47def3b7.js.map → p-06b55a5e.js.map} +0 -0
- /package/dist/atomic/{p-31d2304f.entry.js.map → p-0b705c31.entry.js.map} +0 -0
- /package/dist/atomic/{p-c17c537e.entry.js.map → p-0d1f928f.entry.js.map} +0 -0
- /package/dist/atomic/{p-ee9bad62.entry.js.map → p-0ed66827.entry.js.map} +0 -0
- /package/dist/atomic/{p-89c6b9bf.entry.js.map → p-0fe2face.entry.js.map} +0 -0
- /package/dist/atomic/{p-e3c4b00c.entry.js.map → p-10bfcc08.entry.js.map} +0 -0
- /package/dist/atomic/{p-b67d4d03.entry.js.map → p-10e8d6e9.entry.js.map} +0 -0
- /package/dist/atomic/{p-d915fc24.js.map → p-1192c7ba.js.map} +0 -0
- /package/dist/atomic/{p-bc9b5688.entry.js.map → p-12bd4457.entry.js.map} +0 -0
- /package/dist/atomic/{p-19d1f307.entry.js.map → p-1519454c.entry.js.map} +0 -0
- /package/dist/atomic/{p-93477748.entry.js.map → p-1697fe78.entry.js.map} +0 -0
- /package/dist/atomic/{p-c451feb8.entry.js.map → p-186a5f0d.entry.js.map} +0 -0
- /package/dist/atomic/{p-a7301a38.js.map → p-1cf33009.js.map} +0 -0
- /package/dist/atomic/{p-5f97d504.js.map → p-214cbca8.js.map} +0 -0
- /package/dist/atomic/{p-afa00611.entry.js.map → p-22b3c655.entry.js.map} +0 -0
- /package/dist/atomic/{p-1ecdaf71.entry.js.map → p-237b6498.entry.js.map} +0 -0
- /package/dist/atomic/{p-e4dd908f.entry.js.map → p-261cc069.entry.js.map} +0 -0
- /package/dist/atomic/{p-914dcfb4.entry.js.map → p-263f6746.entry.js.map} +0 -0
- /package/dist/atomic/{p-0487f24f.js.map → p-26a0e19e.js.map} +0 -0
- /package/dist/atomic/{p-eeacc8bf.entry.js.map → p-26d0a8d6.entry.js.map} +0 -0
- /package/dist/atomic/{p-d1cc3448.entry.js.map → p-27fc83ff.entry.js.map} +0 -0
- /package/dist/atomic/{p-f5982205.js.map → p-28a6dd9b.js.map} +0 -0
- /package/dist/atomic/{p-2c3f0d6a.entry.js.map → p-29242cf4.entry.js.map} +0 -0
- /package/dist/atomic/{p-2f5c14fb.js.map → p-2be3757d.js.map} +0 -0
- /package/dist/atomic/{p-c7e042b4.entry.js.map → p-2edbbd2c.entry.js.map} +0 -0
- /package/dist/atomic/{p-df4386fe.entry.js.map → p-2f6d4b52.entry.js.map} +0 -0
- /package/dist/atomic/{p-cd30e2c6.entry.js.map → p-2f89eaa5.entry.js.map} +0 -0
- /package/dist/atomic/{p-bb9b33ba.entry.js.map → p-2fcbc513.entry.js.map} +0 -0
- /package/dist/atomic/{p-560ce63e.entry.js.map → p-3116ec7b.entry.js.map} +0 -0
- /package/dist/atomic/{p-e590285f.entry.js.map → p-33aeda20.entry.js.map} +0 -0
- /package/dist/atomic/{p-433c9489.entry.js.map → p-37d04bd3.entry.js.map} +0 -0
- /package/dist/atomic/{p-bd2cc968.entry.js.map → p-3835716f.entry.js.map} +0 -0
- /package/dist/atomic/{p-014f08aa.entry.js.map → p-3b92373f.entry.js.map} +0 -0
- /package/dist/atomic/{p-9872b71b.entry.js.map → p-3bcfc0a2.entry.js.map} +0 -0
- /package/dist/atomic/{p-bef1b7bf.entry.js.map → p-40a6b242.entry.js.map} +0 -0
- /package/dist/atomic/{p-0671d433.js.map → p-436c41dd.js.map} +0 -0
- /package/dist/atomic/{p-827a5ded.entry.js.map → p-47156866.entry.js.map} +0 -0
- /package/dist/atomic/{p-0175c55f.entry.js.map → p-47307bf9.entry.js.map} +0 -0
- /package/dist/atomic/{p-40d341e1.entry.js.map → p-47591d90.entry.js.map} +0 -0
- /package/dist/atomic/{p-d5a37316.entry.js.map → p-4b93d185.entry.js.map} +0 -0
- /package/dist/atomic/{p-0685f8b0.entry.js.map → p-4fe614d1.entry.js.map} +0 -0
- /package/dist/atomic/{p-7555ad6d.js.map → p-506bb38b.js.map} +0 -0
- /package/dist/atomic/{p-4692f2c1.entry.js.map → p-56e2b35d.entry.js.map} +0 -0
- /package/dist/atomic/{p-798eb1c5.entry.js.map → p-58193542.entry.js.map} +0 -0
- /package/dist/atomic/{p-7ec2a99d.entry.js.map → p-58d3adeb.entry.js.map} +0 -0
- /package/dist/atomic/{p-aef0d17e.entry.js.map → p-5a397a22.entry.js.map} +0 -0
- /package/dist/atomic/{p-eae48c57.entry.js.map → p-5a62a764.entry.js.map} +0 -0
- /package/dist/atomic/{p-9068b6c5.js.map → p-5b836652.js.map} +0 -0
- /package/dist/atomic/{p-d4367e6f.entry.js.map → p-5c040ebc.entry.js.map} +0 -0
- /package/dist/atomic/{p-5c51370e.js.map → p-5cafb3fe.js.map} +0 -0
- /package/dist/atomic/{p-3b29117a.entry.js.map → p-5d7fee77.entry.js.map} +0 -0
- /package/dist/atomic/{p-1d3438c4.js.map → p-5db46842.js.map} +0 -0
- /package/dist/atomic/{p-97e42a30.js.map → p-5fa99042.js.map} +0 -0
- /package/dist/atomic/{p-9344b574.entry.js.map → p-5fb33957.entry.js.map} +0 -0
- /package/dist/atomic/{p-9fcd55ab.entry.js.map → p-607fee37.entry.js.map} +0 -0
- /package/dist/atomic/{p-ab2aea58.entry.js.map → p-609451bf.entry.js.map} +0 -0
- /package/dist/atomic/{p-956772cf.entry.js.map → p-6195bd9a.entry.js.map} +0 -0
- /package/dist/atomic/{p-b49e86ab.entry.js.map → p-62d16036.entry.js.map} +0 -0
- /package/dist/atomic/{p-d4bc1d85.entry.js.map → p-639696da.entry.js.map} +0 -0
- /package/dist/atomic/{p-bc373a88.entry.js.map → p-67438aff.entry.js.map} +0 -0
- /package/dist/atomic/{p-11504251.entry.js.map → p-67439395.entry.js.map} +0 -0
- /package/dist/atomic/{p-09b18ca4.entry.js.map → p-6e592bf0.entry.js.map} +0 -0
- /package/dist/atomic/{p-fab584fa.entry.js.map → p-71743e67.entry.js.map} +0 -0
- /package/dist/atomic/{p-8b4250bf.js.map → p-79075abe.js.map} +0 -0
- /package/dist/atomic/{p-237bc29e.entry.js.map → p-7e80de89.entry.js.map} +0 -0
- /package/dist/atomic/{p-595eddb0.entry.js.map → p-83b61fc7.entry.js.map} +0 -0
- /package/dist/atomic/{p-734868d0.entry.js.map → p-8471090e.entry.js.map} +0 -0
- /package/dist/atomic/{p-19921bbf.js.map → p-8596426c.js.map} +0 -0
- /package/dist/atomic/{p-98eb935d.entry.js.map → p-85b0eb2c.entry.js.map} +0 -0
- /package/dist/atomic/{p-2d15692f.entry.js.map → p-871bd105.entry.js.map} +0 -0
- /package/dist/atomic/{p-96c7f620.entry.js.map → p-893058c6.entry.js.map} +0 -0
- /package/dist/atomic/{p-b5b43bc0.js.map → p-93116ce1.js.map} +0 -0
- /package/dist/atomic/{p-868526e7.entry.js.map → p-934470ac.entry.js.map} +0 -0
- /package/dist/atomic/{p-f8bb96c4.entry.js.map → p-93e9272d.entry.js.map} +0 -0
- /package/dist/atomic/{p-33864a0f.entry.js.map → p-95e4c09e.entry.js.map} +0 -0
- /package/dist/atomic/{p-d2e7a1dd.entry.js.map → p-97cb6aa3.entry.js.map} +0 -0
- /package/dist/atomic/{p-3cf9cf86.js.map → p-9957b28c.js.map} +0 -0
- /package/dist/atomic/{p-d37a9b77.entry.js.map → p-9bb2603f.entry.js.map} +0 -0
- /package/dist/atomic/{p-0165218d.entry.js.map → p-9dae1cd8.entry.js.map} +0 -0
- /package/dist/atomic/{p-628ea1a4.js.map → p-9f3ecfe5.js.map} +0 -0
- /package/dist/atomic/{p-27f9809d.entry.js.map → p-9ff8fec2.entry.js.map} +0 -0
- /package/dist/atomic/{p-2bfabcc5.entry.js.map → p-a06e88d4.entry.js.map} +0 -0
- /package/dist/atomic/{p-8c0eadfd.js.map → p-a3dabead.js.map} +0 -0
- /package/dist/atomic/{p-d5016dc8.entry.js.map → p-a4003b93.entry.js.map} +0 -0
- /package/dist/atomic/{p-f32669de.entry.js.map → p-a5aaa14c.entry.js.map} +0 -0
- /package/dist/atomic/{p-d61a44e7.js.map → p-a96a297e.js.map} +0 -0
- /package/dist/atomic/{p-668e9785.entry.js.map → p-aaa324cd.entry.js.map} +0 -0
- /package/dist/atomic/{p-880b0fd9.entry.js.map → p-aaf5add5.entry.js.map} +0 -0
- /package/dist/atomic/{p-474aa256.entry.js.map → p-aba83a12.entry.js.map} +0 -0
- /package/dist/atomic/{p-f9f835cd.js.map → p-ad38f245.js.map} +0 -0
- /package/dist/atomic/{p-e8b3138c.entry.js.map → p-ae067eb1.entry.js.map} +0 -0
- /package/dist/atomic/{p-b342a594.entry.js.map → p-b01bce99.entry.js.map} +0 -0
- /package/dist/atomic/{p-32bb65e8.entry.js.map → p-b0d10266.entry.js.map} +0 -0
- /package/dist/atomic/{p-097af865.entry.js.map → p-b3b4f0cb.entry.js.map} +0 -0
- /package/dist/atomic/{p-5a5310cc.entry.js.map → p-b7488ef9.entry.js.map} +0 -0
- /package/dist/atomic/{p-b6c3bdf0.entry.js.map → p-b875f4b6.entry.js.map} +0 -0
- /package/dist/atomic/{p-93933c71.entry.js.map → p-b95cacb0.entry.js.map} +0 -0
- /package/dist/atomic/{p-6e4ac9f4.entry.js.map → p-b973f6f4.entry.js.map} +0 -0
- /package/dist/atomic/{p-c2922642.js.map → p-bb5786e8.js.map} +0 -0
- /package/dist/atomic/{p-adc65b62.entry.js.map → p-bdca7ff9.entry.js.map} +0 -0
- /package/dist/atomic/{p-26fe8e6c.entry.js.map → p-bf460507.entry.js.map} +0 -0
- /package/dist/atomic/{p-603f1043.entry.js.map → p-c10060a9.entry.js.map} +0 -0
- /package/dist/atomic/{p-047321f0.entry.js.map → p-c20f8897.entry.js.map} +0 -0
- /package/dist/atomic/{p-f18093e4.entry.js.map → p-c2a0f838.entry.js.map} +0 -0
- /package/dist/atomic/{p-ef91ea1e.entry.js.map → p-c3d0cd58.entry.js.map} +0 -0
- /package/dist/atomic/{p-69454f47.entry.js.map → p-c67f8f3d.entry.js.map} +0 -0
- /package/dist/atomic/{p-a1de0d55.entry.js.map → p-c75a15a1.entry.js.map} +0 -0
- /package/dist/atomic/{p-0c23dddc.entry.js.map → p-c9cbc469.entry.js.map} +0 -0
- /package/dist/atomic/{p-0b14ec61.entry.js.map → p-ca98cb79.entry.js.map} +0 -0
- /package/dist/atomic/{p-c666ba42.entry.js.map → p-cb1905a6.entry.js.map} +0 -0
- /package/dist/atomic/{p-dd9ae088.entry.js.map → p-cc11dfe5.entry.js.map} +0 -0
- /package/dist/atomic/{p-748dd9f4.entry.js.map → p-cd65617e.entry.js.map} +0 -0
- /package/dist/atomic/{p-b36266fe.js.map → p-d044ff5f.js.map} +0 -0
- /package/dist/atomic/{p-a7e47b6e.entry.js.map → p-d28ce9d0.entry.js.map} +0 -0
- /package/dist/atomic/{p-bead2526.entry.js.map → p-d38b2556.entry.js.map} +0 -0
- /package/dist/atomic/{p-1a7300d7.entry.js.map → p-d61e65c5.entry.js.map} +0 -0
- /package/dist/atomic/{p-173ed16a.entry.js.map → p-d6d8927c.entry.js.map} +0 -0
- /package/dist/atomic/{p-6b697f66.js.map → p-d917f9a3.js.map} +0 -0
- /package/dist/atomic/{p-4876f46c.js.map → p-da1d8792.js.map} +0 -0
- /package/dist/atomic/{p-bd49de18.entry.js.map → p-ddb5a587.entry.js.map} +0 -0
- /package/dist/atomic/{p-b4b863ae.entry.js.map → p-de544499.entry.js.map} +0 -0
- /package/dist/atomic/{p-8fc48376.entry.js.map → p-e3abb9bf.entry.js.map} +0 -0
- /package/dist/atomic/{p-dc6c5565.entry.js.map → p-e467bb89.entry.js.map} +0 -0
- /package/dist/atomic/{p-6943b53e.entry.js.map → p-e5434c27.entry.js.map} +0 -0
- /package/dist/atomic/{p-3d520bcc.entry.js.map → p-ea30c2c5.entry.js.map} +0 -0
- /package/dist/atomic/{p-03ade4a7.entry.js.map → p-ec0b64a5.entry.js.map} +0 -0
- /package/dist/atomic/{p-5e1681ed.entry.js.map → p-f04692e0.entry.js.map} +0 -0
- /package/dist/atomic/{p-d76c5232.entry.js.map → p-f20b2d62.entry.js.map} +0 -0
- /package/dist/atomic/{p-50bd7c4b.entry.js.map → p-f5054252.entry.js.map} +0 -0
- /package/dist/atomic/{p-aff75086.entry.js.map → p-f7b4d419.entry.js.map} +0 -0
- /package/dist/atomic/{p-96810f19.js.map → p-f8cd64b9.js.map} +0 -0
- /package/dist/atomic/{p-874b20ec.entry.js.map → p-fa1abdd2.entry.js.map} +0 -0
- /package/dist/atomic/{p-a8a7cc1c.js.map → p-fc0e5c34.js.map} +0 -0
- /package/dist/atomic/{p-4e9f72bc.entry.js.map → p-fc2cceb3.entry.js.map} +0 -0
- /package/dist/atomic/{p-cf5c8c3e.entry.js.map → p-fe735188.entry.js.map} +0 -0
- /package/dist/atomic/{p-c8ea949e.entry.js.map → p-fe7f8010.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"atomic-quickview-modal2.js","mappings":"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","names":["ArrowDown"],"sources":["src/components/search/result-template-components/atomic-quickview-sidebar/atomic-quickview-sidebar.tsx","src/components/search/result-template-components/quickview-iframe/quickview-iframe.tsx","src/components/search/result-template-components/quickview-preview-bar/quickview-preview-bar.ts","src/utils/color-utils.ts","src/components/search/result-template-components/quickview-word-highlight/quickview-word-highlight.tsx","src/components/search/result-template-components/atomic-quickview-modal/atomic-quickview-modal.pcss?tag=atomic-quickview-modal&encapsulation=shadow","src/components/search/result-template-components/atomic-quickview-modal/atomic-quickview-modal.tsx"],"sourcesContent":["import {Fragment, FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport Add from '../../../../images/add.svg';\nimport ArrowDown from '../../../../images/arrow-bottom-rounded.svg';\nimport ArrowUp from '../../../../images/arrow-top-rounded.svg';\nimport MinimizeIcon from '../../../../images/menu.svg';\nimport Remove from '../../../../images/remove.svg';\nimport {IconButton} from '../../../common/iconButton';\nimport {StencilCheckbox} from '../../../common/stencil-checkbox';\nimport {FieldsetGroup} from '../../../common/stencil-fieldset-group';\nimport type {HighlightKeywords} from '../atomic-quickview-modal/atomic-quickview-modal';\nimport {QuickviewWordHighlight} from '../quickview-word-highlight/quickview-word-highlight';\n\nconst identifierKeywordsSection = 'coveo-quickview-sidebar-keywords';\n\nexport interface QuickviewSidebarProps {\n words: Record<string, QuickviewWordHighlight>;\n i18n: i18n;\n highlightKeywords: HighlightKeywords;\n onHighlightKeywords: (highlight: HighlightKeywords) => void;\n minimized: boolean;\n onMinimize: (minimize: boolean) => void;\n}\n\nexport const QuickviewSidebar: FunctionalComponent<QuickviewSidebarProps> = (\n props\n) => {\n const {words, minimized} = props;\n const numberOfWords = Object.values(words).length;\n\n if (numberOfWords === 0) {\n return;\n }\n\n const minimizeButton = (\n <MinimizeButton {...props} wordsLength={numberOfWords} />\n );\n\n return (\n <div class=\"border-neutral h-full border-r p-4\">\n {minimized && minimizeButton}\n <div class=\"flex items-center justify-between\">\n <div class=\"flex items-center\">\n <HighlightKeywordsCheckbox {...props} />\n </div>\n {!minimized && <div>{minimizeButton}</div>}\n </div>\n\n {!minimized && <Keywords {...props} words={words} />}\n </div>\n );\n};\n\nconst MinimizeButton: FunctionalComponent<\n Pick<\n QuickviewSidebarProps,\n 'i18n' | 'minimized' | 'onMinimize' | 'highlightKeywords'\n > & {wordsLength: number}\n> = ({i18n, minimized, onMinimize, highlightKeywords, wordsLength}) => (\n <IconButton\n partPrefix=\"sidebar-minimize\"\n icon={MinimizeIcon}\n style=\"text-transparent\"\n title={i18n.t('quickview-toggle-navigation')}\n ariaLabel={i18n.t('quickview-toggle-navigation')}\n onClick={() => onMinimize(!minimized)}\n badge={\n highlightKeywords && minimized ? <slot>{wordsLength}</slot> : undefined\n }\n class={`w-fit ${minimized ? '' : 'ml-auto'}`}\n ariaExpanded={(!minimized).toString()}\n ariaControls={identifierKeywordsSection}\n />\n);\n\nconst HighlightKeywordsCheckbox: FunctionalComponent<\n Pick<\n QuickviewSidebarProps,\n 'i18n' | 'highlightKeywords' | 'onHighlightKeywords' | 'minimized'\n >\n> = ({i18n, highlightKeywords, onHighlightKeywords, minimized}) => (\n <Fragment>\n <StencilCheckbox\n text={i18n.t('keywords-highlight')}\n class=\"mr-2\"\n id=\"atomic-quickview-sidebar-highlight-keywords\"\n checked={!highlightKeywords.highlightNone}\n onToggle={(checked) =>\n onHighlightKeywords({\n ...highlightKeywords,\n highlightNone: !checked,\n })\n }\n ></StencilCheckbox>\n {!minimized && (\n <label\n class=\"cursor-pointer font-bold whitespace-nowrap\"\n htmlFor=\"atomic-quickview-sidebar-highlight-keywords\"\n >\n {i18n.t('keywords-highlight')}\n </label>\n )}\n </Fragment>\n);\n\nconst Keywords: FunctionalComponent<\n Pick<\n QuickviewSidebarProps,\n 'i18n' | 'onHighlightKeywords' | 'highlightKeywords'\n > & {\n words: Record<string, QuickviewWordHighlight>;\n }\n> = ({words, i18n, highlightKeywords, onHighlightKeywords}) => {\n return (\n <div id={identifierKeywordsSection}>\n {Object.values(words).map((keyword) => {\n const wordIsEnabled =\n !highlightKeywords.highlightNone &&\n (highlightKeywords.keywords[keyword.text] === undefined ||\n highlightKeywords.keywords[keyword.text].enabled === true);\n\n return (\n <div\n key={keyword.text}\n class=\"my-4 flex w-100 items-center justify-between gap-x-2\"\n >\n <div\n class={`bg-background border-neutral flex grow items-center overflow-x-auto rounded-lg border ${\n !wordIsEnabled ? 'pointer-events-none opacity-50' : ''\n }`}\n >\n <div\n class=\"flex grow items-center border-r p-4\"\n aria-hidden=\"true\"\n >\n <div\n class=\"mr-2 h-5 w-5 flex-none\"\n style={{backgroundColor: keyword.color}}\n ></div>\n <div class=\"mr-2 grow whitespace-nowrap\">{keyword.text}</div>\n <div class=\"flex-none\">\n (\n {new Intl.NumberFormat(i18n.language, {\n notation: 'compact',\n }).format(keyword.occurrences)}\n )\n </div>\n </div>\n <FieldsetGroup\n label={i18n.t('quickview-navigate-keywords', {\n occurrences: keyword.occurrences,\n keyword: keyword.text,\n })}\n >\n <div class=\"flex px-2\">\n <IconButton\n partPrefix=\"sidebar-next\"\n icon={ArrowDown}\n disabled={!wordIsEnabled}\n style=\"text-transparent\"\n class=\"border-0\"\n ariaLabel={i18n.t('next')}\n title={i18n.t('next')}\n onClick={() => keyword.navigateForward()}\n />\n <IconButton\n partPrefix=\"sidebar-previous\"\n icon={ArrowUp}\n disabled={!wordIsEnabled}\n style=\"text-transparent\"\n class=\"border-0\"\n ariaLabel={i18n.t('previous')}\n title={i18n.t('previous')}\n onClick={() => keyword.navigateBackward()}\n />\n </div>\n </FieldsetGroup>\n </div>\n <IconButton\n partPrefix=\"sidebar-remove-word\"\n class={`${\n highlightKeywords.highlightNone\n ? 'pointer-events-none opacity-50'\n : ''\n }`}\n tabIndex={highlightKeywords.highlightNone ? '-1' : '0'}\n ariaPressed={(!wordIsEnabled).toString()}\n style=\"text-transparent\"\n icon={wordIsEnabled ? Remove : Add}\n ariaLabel={i18n.t('quickview-remove-word')}\n onClick={() => {\n onHighlightKeywords({\n ...highlightKeywords,\n keywords: {\n ...highlightKeywords.keywords,\n [keyword.text]: {\n enabled: !wordIsEnabled,\n indexIdentifier: keyword.indexIdentifier,\n },\n },\n });\n }}\n />\n </div>\n );\n })}\n </div>\n );\n};\n","import {SearchEngine} from '@coveo/headless';\nimport {FunctionalComponent, h} from '@stencil/core';\n\nconst documentIdentifierInIframe = 'CoveoDocIdentifier';\n\nconst writeDocument = (documentWriter: Document, content: string) => {\n documentWriter.open();\n documentWriter.write(content);\n documentWriter.close();\n if (documentWriter.scrollingElement) {\n documentWriter.scrollingElement.scrollTop = 0;\n }\n};\n\nconst currentResultAlreadyWrittenToDocument = (\n documentWriter: Document,\n uniqueIdentifier: string\n) => {\n const currentDocIdentifier = documentWriter.getElementById(\n documentIdentifierInIframe\n );\n\n return (\n currentDocIdentifier &&\n currentDocIdentifier.textContent === uniqueIdentifier\n );\n};\n\nconst ensureSameResultIsNotOverwritten = (\n documentWriter: Document,\n uniqueIdentifier: string\n) => {\n const docIdentifier = documentWriter.createElement('div');\n docIdentifier.style.display = 'none';\n docIdentifier.setAttribute('aria-hidden', 'true');\n docIdentifier.id = documentIdentifierInIframe;\n docIdentifier.textContent = uniqueIdentifier;\n documentWriter.body.appendChild(docIdentifier);\n};\n\nconst warnAboutLimitedUsageQuickview = (logger?: SearchEngine['logger']) => {\n logger?.warn(\n 'Quickview initialized in restricted mode due to incompatible sandboxing environment. Keywords hit navigation will be disabled.'\n );\n};\n\nexport const QuickviewIframe: FunctionalComponent<{\n content?: string;\n onSetIframeRef: (ref: HTMLIFrameElement) => void;\n uniqueIdentifier?: string;\n sandbox?: string;\n src?: string;\n logger?: SearchEngine['logger'];\n}> = ({onSetIframeRef, uniqueIdentifier, content, sandbox, src, logger}) => {\n // When a document is written with document.open/document.write/document.close\n // it is not synchronous and the content of the iframe is only available to be queried at the end of the current call stack.\n // This add a \"wait\" (setTimeout 0) before calling the `onSetIframeRef` from the parent modal quickview\n const waitForIframeContentToBeWritten = () => {\n return new Promise((resolve) => setTimeout(resolve));\n };\n\n return (\n <iframe\n src=\"about:blank\"\n class=\"h-full w-full\"\n sandbox={sandbox}\n ref={async (el) => {\n const iframeRef = el as HTMLIFrameElement;\n\n if (!uniqueIdentifier || !content) {\n return;\n }\n\n const documentWriter = iframeRef.contentDocument;\n if (!documentWriter) {\n if (src) {\n warnAboutLimitedUsageQuickview(logger);\n iframeRef.src = src;\n }\n\n return;\n }\n if (\n currentResultAlreadyWrittenToDocument(\n documentWriter,\n uniqueIdentifier\n )\n ) {\n return;\n }\n\n writeDocument(documentWriter, content);\n ensureSameResultIsNotOverwritten(documentWriter, uniqueIdentifier);\n\n await waitForIframeContentToBeWritten();\n onSetIframeRef(iframeRef);\n }}\n ></iframe>\n );\n};\n","import {HighlightKeywords} from '../atomic-quickview-modal/atomic-quickview-modal';\nimport {QuickviewWordHighlight} from '../quickview-word-highlight/quickview-word-highlight';\n\nconst buildPreviewBar = (documentWriter: Document) => {\n const previewBarId = 'CoveoPreviewBar';\n const bar =\n documentWriter.getElementById(previewBarId) ||\n documentWriter.createElement('div');\n\n bar.id = previewBarId;\n bar.innerHTML = '';\n bar.style.position = 'fixed';\n bar.style.top = '0';\n bar.style.right = '0';\n bar.style.width = '15px';\n bar.style.height = '100%';\n bar.setAttribute('aria-hidden', 'true');\n return bar;\n};\n\nconst buildPreviewUnit = (\n documentWriter: Document,\n word: QuickviewWordHighlight,\n wordElement: HTMLElement,\n docHeight: number,\n highlightKeywords: HighlightKeywords\n) => {\n const previewUnit = documentWriter.createElement('div');\n if (highlightKeywords.keywords[word.text]?.enabled === false) {\n previewUnit.style.display = 'none';\n return previewUnit;\n }\n\n const elementPosition = wordElement.getBoundingClientRect().top;\n\n previewUnit.style.position = 'absolute';\n previewUnit.style.top = `${(elementPosition / docHeight) * 100}%`;\n previewUnit.style.width = '100%';\n previewUnit.style.height = '1px';\n previewUnit.style.border = `1px solid ${word.previewBorderColor}`;\n previewUnit.style.backgroundColor = word.color;\n return previewUnit;\n};\n\nexport const buildQuickviewPreviewBar = (\n words: Record<string, QuickviewWordHighlight>,\n highlightKeywords: HighlightKeywords,\n iframe?: HTMLIFrameElement\n) => {\n if (!iframe) {\n return;\n }\n const documentWriter = iframe.contentDocument;\n if (!documentWriter) {\n return;\n }\n const bar = buildPreviewBar(documentWriter);\n if (highlightKeywords.highlightNone) {\n bar.remove();\n return;\n }\n const docHeight = documentWriter.body.scrollHeight;\n\n Object.values(words).forEach((word) => {\n word.elements.forEach((wordElement) => {\n const previewUnit = buildPreviewUnit(\n documentWriter,\n word,\n wordElement,\n docHeight,\n highlightKeywords\n );\n\n bar.appendChild(previewUnit);\n });\n });\n documentWriter.body.appendChild(bar);\n};\n","export const rgbToHsv = (r: number, g: number, b: number) => {\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n\n let h: number;\n const v = max;\n\n const d = max - min;\n const s = max === 0 ? 0 : d / max;\n\n if (max === min) {\n h = 0;\n } else {\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n default:\n h = (r - g) / d + 4;\n break;\n }\n h /= 6;\n }\n\n return {h, s, v};\n};\n\nexport const hsvToRgb = (h: number, s: number, v: number) => {\n let r, g, b;\n\n const i = Math.floor(h * 6);\n const f = h * 6 - i;\n const p = v * (1 - s);\n const q = v * (1 - f * s);\n const t = v * (1 - (1 - f) * s);\n\n switch (i % 6) {\n case 0:\n (r = v), (g = t), (b = p);\n break;\n case 1:\n (r = q), (g = v), (b = p);\n break;\n case 2:\n (r = p), (g = v), (b = t);\n break;\n case 3:\n (r = p), (g = q), (b = v);\n break;\n case 4:\n (r = t), (g = p), (b = v);\n break;\n case 5:\n default:\n (r = v), (g = p), (b = q);\n break;\n }\n\n return {\n r: Math.round(r),\n g: Math.round(g),\n b: Math.round(b),\n };\n};\n","import {TermsToHighlight} from '@coveo/headless';\nimport {hsvToRgb, rgbToHsv} from '../../../../utils/color-utils';\n\nexport const HIGHLIGHT_PREFIX = 'CoveoHighlight';\nexport class QuickviewWordHighlight {\n public text: string;\n public indexIdentifier: string;\n public occurrences = 0;\n public color: string;\n public focusedColor: string;\n public previewBorderColor: string;\n public elements: HTMLElement[] = [];\n\n private currentNavigationPosition = -1;\n\n constructor(\n private stemmingInfoFromIndex: TermsToHighlight,\n keywordElementInIframe: HTMLElement\n ) {\n const parsed = this.parseKeywordIdentifier(keywordElementInIframe);\n if (!parsed) {\n throw 'Invalid keyword identifier for quickview';\n }\n\n this.text = this.getText(keywordElementInIframe);\n this.indexIdentifier = `${parsed.keywordIdentifier}`;\n this.color = keywordElementInIframe.style.backgroundColor;\n this.focusedColor = this.computeInvertedColor();\n this.previewBorderColor = this.computeSaturatedColor();\n\n this.addElement(keywordElementInIframe);\n }\n\n public addElement(keywordElementInIframe: HTMLElement) {\n this.occurrences++;\n this.elements.push(keywordElementInIframe);\n }\n\n public navigateForward() {\n this.currentNavigationPosition++;\n if (this.currentNavigationPosition >= this.elements.length) {\n this.currentNavigationPosition = 0;\n }\n this.highlightNavigation();\n this.putElementIntoView();\n return this.elements[this.currentNavigationPosition];\n }\n\n public navigateBackward() {\n this.currentNavigationPosition--;\n if (this.currentNavigationPosition < 0) {\n this.currentNavigationPosition = this.elements.length - 1;\n }\n this.highlightNavigation();\n this.putElementIntoView();\n return this.elements[this.currentNavigationPosition];\n }\n\n private isTaggedWord(element: HTMLElement) {\n return element.nodeName.toLowerCase() === 'coveotaggedword';\n }\n\n private highlightNavigation() {\n const currentElement = this.elements[this.currentNavigationPosition];\n const otherElements = this.elements.filter((el) => el !== currentElement);\n currentElement.style.color = this.color;\n currentElement.style.backgroundColor = this.focusedColor;\n otherElements.forEach((element) => {\n element.style.color = '';\n element.style.backgroundColor = this.color;\n });\n }\n\n private putElementIntoView() {\n const element = this.elements[this.currentNavigationPosition];\n element.scrollIntoView();\n }\n\n private getText(element: HTMLElement) {\n const innerTextOfHTMLElement = this.getHighlightedInnerText(element);\n return this.resolveOriginalTerm(innerTextOfHTMLElement).trim();\n }\n\n private resolveOriginalTerm(highlight: string): string {\n // First try to find either an exact match between the highlight and the original non-stemmed keyword.\n // Otherwise try to find a match between the highlight and the stemming keyword expansions\n // If nothing is found (which should not normally happen...), simply return the highlight keyword as is.\n\n const found = Object.keys(this.stemmingInfoFromIndex).find(\n (originalTerm) => {\n const originalTermMatch =\n originalTerm.toLowerCase() === highlight.toLowerCase();\n if (originalTermMatch) {\n return true;\n }\n const stemmingExpansions = this.stemmingInfoFromIndex[originalTerm];\n if (!stemmingExpansions) {\n return false;\n }\n\n const stemmingExpansionMatch = stemmingExpansions.find(\n (stemmingExpansion) =>\n stemmingExpansion.toLowerCase() === highlight.toLowerCase()\n );\n return stemmingExpansionMatch;\n }\n );\n return found || highlight;\n }\n\n private getHighlightedInnerText(element: HTMLElement): string {\n if (!this.isTaggedWord(element)) {\n return this.getTextOfHTMLElement(element);\n }\n\n const children = Array.from(element.children) as HTMLElement[];\n if (children.length >= 1) {\n return this.getTextOfHTMLElement(children[0]);\n }\n\n return '';\n }\n\n private parseKeywordIdentifier(element: HTMLElement) {\n const parts = element.id\n .substring(HIGHLIGHT_PREFIX.length + 1)\n .match(/^([0-9]+)\\.([0-9]+)\\.([0-9]+)$/);\n\n if (!parts || parts.length <= 3) {\n return null;\n }\n\n return {\n keywordIdentifier: parts[1],\n keywordTermPart: parseInt(parts[3], 10),\n };\n }\n\n private getTextOfHTMLElement(el: HTMLElement) {\n return el.innerText || el.textContent || '';\n }\n\n private computeInvertedColor() {\n const {r, g, b} = this.extractRgb();\n return `rgb(${255 - r}, ${255 - g}, ${255 - b})`;\n }\n\n private computeSaturatedColor() {\n const {r, g, b} = this.extractRgb();\n const {h, s, v} = rgbToHsv(r, g, b);\n let newSaturation = s * 2;\n if (newSaturation > 1) {\n newSaturation = 1;\n }\n const {\n r: rSaturated,\n g: gSaturated,\n b: bSaturated,\n } = hsvToRgb(h, newSaturation, v);\n return `rgb(${rSaturated}, ${gSaturated}, ${bSaturated})`;\n }\n\n private extractRgb() {\n const rgbExtracted = this.color.match(/\\d+/g);\n if (!rgbExtracted) {\n return {r: 255, g: 255, b: 255};\n }\n\n return {\n r: parseInt(rgbExtracted[0], 10),\n g: parseInt(rgbExtracted[1], 10),\n b: parseInt(rgbExtracted[2], 10),\n };\n }\n}\n\nexport const getWordsHighlights = (\n stemmingInfoFromIndex: TermsToHighlight,\n iframe?: HTMLIFrameElement\n) => {\n const wordsHighlights: Record<string, QuickviewWordHighlight> = {};\n if (!iframe) {\n return wordsHighlights;\n }\n\n iframe.contentDocument?.body\n .querySelectorAll(`[id^=\"${HIGHLIGHT_PREFIX}\"]`)\n .forEach((el) => {\n const wordHTMLElementToHighlight = el as HTMLElement;\n\n const wordHighlight = new QuickviewWordHighlight(\n stemmingInfoFromIndex,\n wordHTMLElementToHighlight\n );\n\n if (!wordHighlight.text) {\n return;\n }\n\n const alreadyScannedKeyword =\n wordsHighlights[wordHighlight.indexIdentifier];\n\n if (alreadyScannedKeyword) {\n alreadyScannedKeyword.addElement(wordHTMLElementToHighlight);\n } else {\n wordsHighlights[wordHighlight.indexIdentifier] = wordHighlight;\n }\n });\n\n return wordsHighlights;\n};\n","@import '../../../../global/global.pcss';\n@import '../../../../utils/tailwind-utilities/link-style.tw.css';\n\n.atomic-quickview-modal {\n &::part(backdrop) {\n grid-template-columns: 1fr max(80vw, 30rem) 1fr;\n }\n &::part(body),\n &::part(header),\n &::part(footer) {\n @apply max-w-full;\n }\n\n &::part(footer) {\n @apply flex justify-center;\n }\n\n &::part(body-wrapper) {\n @apply h-full overflow-hidden p-0;\n }\n\n &::part(body) {\n @apply h-full;\n }\n\n &::part(backdrop) {\n grid-template-rows: 1fr 100% 3fr;\n }\n\n &::part(header-wrapper) {\n @apply bg-neutral-light;\n }\n\n a {\n @apply link-style;\n }\n}\n","import {\n buildInteractiveResult,\n Result,\n InteractiveResult,\n TermsToHighlight,\n} from '@coveo/headless';\nimport {\n Component,\n Event,\n EventEmitter,\n h,\n Prop,\n State,\n Watch,\n Method,\n VNode,\n Fragment,\n} from '@stencil/core';\nimport CloseIcon from '../../../../images/close.svg';\nimport {\n InitializableComponent,\n InitializeBindings,\n} from '../../../../utils/initialization-utils';\nimport {ATOMIC_MODAL_EXPORT_PARTS} from '../../../common/atomic-modal/export-parts';\nimport {IconButton} from '../../../common/iconButton';\nimport {LinkWithItemAnalytics} from '../../../common/item-link/item-link';\nimport {Button} from '../../../common/stencil-button';\nimport {Bindings} from '../../atomic-search-interface/atomic-search-interface';\nimport {QuickviewSidebar} from '../atomic-quickview-sidebar/atomic-quickview-sidebar';\nimport {QuickviewIframe} from '../quickview-iframe/quickview-iframe';\nimport {buildQuickviewPreviewBar} from '../quickview-preview-bar/quickview-preview-bar';\nimport {\n getWordsHighlights,\n HIGHLIGHT_PREFIX,\n QuickviewWordHighlight,\n} from '../quickview-word-highlight/quickview-word-highlight';\n\nexport interface HighlightKeywords {\n highlightNone: boolean;\n keywords: {\n [text: string]: {\n indexIdentifier: string;\n enabled: boolean;\n };\n };\n}\n\n/**\n * The modal opened when clicking on a quickview button.\n * Do not use this component directly; use `atomic-quickview` instead.\n *\n * @part backdrop - The transparent backdrop hiding the content behind the modal.\n * @part container - The modal's outermost container with the outline and background.\n * @part header-wrapper - The wrapper around the header.\n * @part header - The header at the top of the modal.\n * @part header-ruler - The horizontal ruler underneath the header.\n * @part body-wrapper - The wrapper around the body.\n * @part body - The body of the modal, between the header and the footer.\n * @part footer-wrapper - The wrapper with a shadow or background color around the footer.\n * @part footer - The footer at the bottom of the modal.\n * @part quickview-modal-header-icon - The close icon of the modal.\n * @part quickview-modal-header-title - The title of the modal.\n */\n@Component({\n tag: 'atomic-quickview-modal',\n styleUrl: 'atomic-quickview-modal.pcss',\n shadow: true,\n})\nexport class AtomicQuickviewModal implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n @State() public error!: Error;\n\n @State() private highlightKeywords: HighlightKeywords = {\n highlightNone: false,\n keywords: {},\n };\n @Watch('highlightKeywords')\n watchHighlightKeywords() {\n this.handleHighlightsScripts();\n }\n\n @Event({eventName: 'atomic/quickview/next'}) nextQuickview?: EventEmitter;\n @Event({eventName: 'atomic/quickview/previous'})\n previousQuickview?: EventEmitter;\n\n @State() private minimizeSidebar = false;\n @State() private words: Record<string, QuickviewWordHighlight> = {};\n private iframeRef?: HTMLIFrameElement;\n\n @Prop({mutable: true, reflect: false}) content?: string;\n @Prop({mutable: true, reflect: false}) result?: Result;\n @Prop() current?: number;\n @Prop() total?: number;\n @Prop() sandbox?: string;\n @Prop() modalCloseCallback?: () => void;\n\n private interactiveResult?: InteractiveResult;\n\n public componentWillLoad(): void {\n this.minimizeSidebar = this.bindings.store.isMobile();\n }\n\n @Method()\n public async reset() {\n this.highlightKeywords = {\n highlightNone: false,\n keywords: {},\n };\n this.minimizeSidebar = false;\n this.iframeRef = undefined;\n this.content = undefined;\n this.result = undefined;\n this.interactiveResult = undefined;\n }\n\n private renderHeader() {\n let headerContent: VNode | null = null;\n if (this.result) {\n this.interactiveResult = buildInteractiveResult(this.bindings.engine, {\n options: {result: this.result},\n });\n headerContent = (\n <Fragment>\n <LinkWithItemAnalytics\n href={this.result?.clickUri}\n onSelect={() => this.interactiveResult?.select()}\n onBeginDelayedSelect={() =>\n this.interactiveResult?.beginDelayedSelect()\n }\n onCancelPendingSelect={() =>\n this.interactiveResult?.cancelPendingSelect()\n }\n className=\"truncate\"\n part=\"quickview-modal-header-title\"\n >\n {this.result.title}\n </LinkWithItemAnalytics>\n <IconButton\n partPrefix=\"quickview-modal-header\"\n icon={CloseIcon}\n onClick={() => this.onClose()}\n ariaLabel={this.bindings.i18n.t('close')}\n style=\"text-transparent\"\n title={this.bindings.i18n.t('close')}\n />\n </Fragment>\n );\n }\n return (\n <div slot=\"header\" class=\"flex w-full items-center justify-between\">\n {headerContent}\n </div>\n );\n }\n\n private renderBody() {\n return (\n <div slot=\"body\" class=\"grid h-full grid-cols-[min-content_auto]\">\n <div\n class=\"h-full overflow-y-auto\"\n style={{backgroundColor: 'var(--atomic-neutral-light)'}}\n >\n <QuickviewSidebar\n words={this.words}\n i18n={this.bindings.i18n}\n highlightKeywords={this.highlightKeywords}\n onHighlightKeywords={(highlight) =>\n (this.highlightKeywords = highlight)\n }\n minimized={this.minimizeSidebar}\n onMinimize={(minimize) => (this.minimizeSidebar = minimize)}\n />\n </div>\n <div class=\"relative overflow-auto\">\n <QuickviewIframe\n logger={this.logger}\n src={this.quickviewSrc}\n sandbox={this.sandbox}\n uniqueIdentifier={this.quickviewUniqueIdentifier}\n content={this.content}\n onSetIframeRef={async (ref) => {\n this.iframeRef = ref;\n this.words = getWordsHighlights(\n this.termsToHighlight,\n this.iframeRef\n );\n this.handleHighlightsScripts();\n }}\n />\n {buildQuickviewPreviewBar(\n this.words,\n this.highlightKeywords,\n this.iframeRef\n )}\n </div>\n </div>\n );\n }\n\n private renderFooter() {\n return (\n <div slot=\"footer\" class=\"flex items-center gap-2\">\n <Button\n class=\"p-2\"\n style=\"square-neutral\"\n onClick={() => this.previousQuickview?.emit()}\n disabled={this.current === 1}\n text={this.bindings.i18n.t('quickview-previous')}\n ></Button>\n <p class=\"text-center\">\n {this.bindings.i18n.t('showing-results-of', {\n first: this.current,\n total: this.total,\n })}\n </p>\n <Button\n class=\"p-2\"\n style=\"square-neutral\"\n onClick={() => this.nextQuickview?.emit()}\n disabled={this.current === this.total}\n text={this.bindings.i18n.t('quickview-next')}\n ></Button>\n </div>\n );\n }\n\n private onClose() {\n this.content = undefined;\n this.result = undefined;\n this.modalCloseCallback && this.modalCloseCallback();\n }\n\n private get isOpen() {\n return !!this.content && !!this.result;\n }\n\n private get highlightScriptId() {\n return 'CoveoDisableHighlightStyle';\n }\n\n private get logger() {\n return this.bindings.engine.logger;\n }\n\n private get quickviewSrc() {\n return this.bindings.engine.state.resultPreview?.contentURL;\n }\n\n private enableHighlights() {\n this.removeDisableHighlightScript();\n }\n\n private enableHighlightsSpecificKeyword(identifier: string) {\n this.removeDisableHighlightScript(identifier);\n }\n\n private disableHighlights() {\n this.createDisableHighlightScript();\n }\n\n private disableHighlightsSpecificKeyword(identifier: string) {\n this.createDisableHighlightScript(identifier);\n }\n\n private removeDisableHighlightScript(identifier?: string) {\n const doc = this.iframeRef?.contentWindow?.document;\n if (!doc) {\n return;\n }\n doc\n .getElementById(\n `${this.highlightScriptId}${identifier ? `:${identifier}` : ''}`\n )\n ?.remove();\n }\n\n private createDisableHighlightScript(identifier?: string) {\n const doc = this.iframeRef?.contentWindow?.document;\n if (!doc) {\n return;\n }\n\n const head = doc.head;\n const scriptId = `${this.highlightScriptId}${\n identifier ? `:${identifier}` : ''\n }`;\n const style =\n doc.getElementById(scriptId) || this.bindings.createStyleElement();\n style.setAttribute('id', scriptId);\n head.appendChild(style);\n style.appendChild(\n doc.createTextNode(`[id^=\"${HIGHLIGHT_PREFIX}${\n identifier ? `:${identifier}` : ''\n }\"] {\n background-color: inherit !important;\n color: inherit !important;\n }`)\n );\n }\n\n private get termsToHighlight() {\n const flatPhrasesToHighlight: TermsToHighlight = {};\n\n const phrasesToHighlight =\n this.bindings.engine.state.search.response.phrasesToHighlight;\n\n Object.entries(phrasesToHighlight).forEach(([phrase, keywords]) => {\n flatPhrasesToHighlight[phrase] = Object.entries(keywords).flatMap(\n ([keywordEntry, keywordStemming]) => {\n return [keywordEntry, ...keywordStemming];\n }\n );\n });\n\n return {\n ...this.bindings.engine.state.search.response.termsToHighlight,\n ...flatPhrasesToHighlight,\n };\n }\n\n private get requestId() {\n return this.bindings.engine.state.search.requestId;\n }\n\n private get quickviewUniqueIdentifier() {\n return this.result?.uniqueId + this.requestId;\n }\n\n private handleHighlightsScripts() {\n if (!this.highlightKeywords.highlightNone) {\n this.enableHighlights();\n } else {\n this.disableHighlights();\n }\n Object.values(this.highlightKeywords.keywords).forEach((word) => {\n if (word.enabled) {\n this.enableHighlightsSpecificKeyword(word.indexIdentifier);\n } else {\n this.disableHighlightsSpecificKeyword(word.indexIdentifier);\n }\n });\n }\n\n public render() {\n return (\n <atomic-modal\n fullscreen={this.bindings.store.isMobile()}\n class={'atomic-quickview-modal'}\n isOpen={this.isOpen}\n close={() => this.onClose()}\n exportparts={ATOMIC_MODAL_EXPORT_PARTS}\n >\n {this.renderHeader()}\n {this.renderBody()}\n {this.renderFooter()}\n </atomic-modal>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"atomic-quickview-modal2.js","mappings":";;;;;;;;;;;;;;;;;;;;;AAaA,MAAM,yBAAyB,GAAG,kCAAkC,CAAC;AAW9D,MAAM,gBAAgB,GAA+C,CAC1E,KAAK;IAEL,MAAM,EAAC,KAAK,EAAE,SAAS,EAAC,GAAG,KAAK,CAAC;IACjC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;IAElD,IAAI,aAAa,KAAK,CAAC,EAAE;QACvB,OAAO;KACR;IAED,MAAM,cAAc,IAClB,EAAC,cAAc,OAAK,KAAK,EAAE,WAAW,EAAE,aAAa,GAAI,CAC1D,CAAC;IAEF,QACE,WAAK,KAAK,EAAC,oCAAoC;QAC5C,SAAS,IAAI,cAAc;QAC5B,WAAK,KAAK,EAAC,mCAAmC;YAC5C,WAAK,KAAK,EAAC,mBAAmB;gBAC5B,EAAC,yBAAyB,OAAK,KAAK,GAAI,CACpC;YACL,CAAC,SAAS,IAAI,eAAM,cAAc,CAAO,CACtC;QAEL,CAAC,SAAS,IAAI,EAAC,QAAQ,OAAK,KAAK,EAAE,KAAK,EAAE,KAAK,GAAI,CAChD,EACN;AACJ,CAAC,CAAC;AAEF,MAAM,cAAc,GAKhB,CAAC,EAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,iBAAiB,EAAE,WAAW,EAAC,MAChE,EAAC,UAAU,IACT,UAAU,EAAC,kBAAkB,EAC7B,IAAI,EAAE,YAAY,EAClB,KAAK,EAAC,kBAAkB,EACxB,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,6BAA6B,CAAC,EAC5C,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,6BAA6B,CAAC,EAChD,OAAO,EAAE,MAAM,UAAU,CAAC,CAAC,SAAS,CAAC,EACrC,KAAK,EACH,iBAAiB,IAAI,SAAS,GAAG,gBAAO,WAAW,CAAQ,GAAG,SAAS,EAEzE,KAAK,EAAE,SAAS,SAAS,GAAG,EAAE,GAAG,SAAS,EAAE,EAC5C,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,EACrC,YAAY,EAAE,yBAAyB,GACvC,CACH,CAAC;AAEF,MAAM,yBAAyB,GAK3B,CAAC,EAAC,IAAI,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,SAAS,EAAC,MAC5D,EAAC,QAAQ;IACP,EAAC,eAAe,IACd,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAC,EAClC,KAAK,EAAC,MAAM,EACZ,EAAE,EAAC,6CAA6C,EAChD,OAAO,EAAE,CAAC,iBAAiB,CAAC,aAAa,EACzC,QAAQ,EAAE,CAAC,OAAO,KAChB,mBAAmB,CAAC;YAClB,GAAG,iBAAiB;YACpB,aAAa,EAAE,CAAC,OAAO;SACxB,CAAC,GAEa;IAClB,CAAC,SAAS,KACT,aACE,KAAK,EAAC,4CAA4C,EAClD,OAAO,EAAC,6CAA6C,IAEpD,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAC,CACvB,CACT,CACQ,CACZ,CAAC;AAEF,MAAM,QAAQ,GAOV,CAAC,EAAC,KAAK,EAAE,IAAI,EAAE,iBAAiB,EAAE,mBAAmB,EAAC;IACxD,QACE,WAAK,EAAE,EAAE,yBAAyB,IAC/B,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO;QAChC,MAAM,aAAa,GACjB,CAAC,iBAAiB,CAAC,aAAa;aAC/B,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,SAAS;gBACrD,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC;QAE/D,QACE,WACE,GAAG,EAAE,OAAO,CAAC,IAAI,EACjB,KAAK,EAAC,sDAAsD;YAE5D,WACE,KAAK,EAAE,yFACL,CAAC,aAAa,GAAG,gCAAgC,GAAG,EACtD,EAAE;gBAEF,WACE,KAAK,EAAC,qCAAqC,iBAC/B,MAAM;oBAElB,WACE,KAAK,EAAC,wBAAwB,EAC9B,KAAK,EAAE,EAAC,eAAe,EAAE,OAAO,CAAC,KAAK,EAAC,GAClC;oBACP,WAAK,KAAK,EAAC,6BAA6B,IAAE,OAAO,CAAC,IAAI,CAAO;oBAC7D,WAAK,KAAK,EAAC,WAAW;;wBAEnB,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE;4BACpC,QAAQ,EAAE,SAAS;yBACpB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;4BAE1B,CACF;gBACN,EAAC,aAAa,IACZ,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,6BAA6B,EAAE;wBAC3C,WAAW,EAAE,OAAO,CAAC,WAAW;wBAChC,OAAO,EAAE,OAAO,CAAC,IAAI;qBACtB,CAAC;oBAEF,WAAK,KAAK,EAAC,WAAW;wBACpB,EAAC,UAAU,IACT,UAAU,EAAC,cAAc,EACzB,IAAI,EAAEA,eAAS,EACf,QAAQ,EAAE,CAAC,aAAa,EACxB,KAAK,EAAC,kBAAkB,EACxB,KAAK,EAAC,UAAU,EAChB,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EACzB,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EACrB,OAAO,EAAE,MAAM,OAAO,CAAC,eAAe,EAAE,GACxC;wBACF,EAAC,UAAU,IACT,UAAU,EAAC,kBAAkB,EAC7B,IAAI,EAAE,OAAO,EACb,QAAQ,EAAE,CAAC,aAAa,EACxB,KAAK,EAAC,kBAAkB,EACxB,KAAK,EAAC,UAAU,EAChB,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,EAC7B,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,EACzB,OAAO,EAAE,MAAM,OAAO,CAAC,gBAAgB,EAAE,GACzC,CACE,CACQ,CACZ;YACN,EAAC,UAAU,IACT,UAAU,EAAC,qBAAqB,EAChC,KAAK,EAAE,GACL,iBAAiB,CAAC,aAAa;sBAC3B,gCAAgC;sBAChC,EACN,EAAE,EACF,QAAQ,EAAE,iBAAiB,CAAC,aAAa,GAAG,IAAI,GAAG,GAAG,EACtD,WAAW,EAAE,CAAC,CAAC,aAAa,EAAE,QAAQ,EAAE,EACxC,KAAK,EAAC,kBAAkB,EACxB,IAAI,EAAE,aAAa,GAAG,MAAM,GAAG,GAAG,EAClC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,uBAAuB,CAAC,EAC1C,OAAO,EAAE;oBACP,mBAAmB,CAAC;wBAClB,GAAG,iBAAiB;wBACpB,QAAQ,EAAE;4BACR,GAAG,iBAAiB,CAAC,QAAQ;4BAC7B,CAAC,OAAO,CAAC,IAAI,GAAG;gCACd,OAAO,EAAE,CAAC,aAAa;gCACvB,eAAe,EAAE,OAAO,CAAC,eAAe;6BACzC;yBACF;qBACF,CAAC,CAAC;iBACJ,GACD,CACE,EACN;KACH,CAAC,CACE,EACN;AACJ,CAAC;;AC7MD,MAAM,0BAA0B,GAAG,oBAAoB,CAAC;AAExD,MAAM,aAAa,GAAG,CAAC,cAAwB,EAAE,OAAe;IAC9D,cAAc,CAAC,IAAI,EAAE,CAAC;IACtB,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC9B,cAAc,CAAC,KAAK,EAAE,CAAC;IACvB,IAAI,cAAc,CAAC,gBAAgB,EAAE;QACnC,cAAc,CAAC,gBAAgB,CAAC,SAAS,GAAG,CAAC,CAAC;KAC/C;AACH,CAAC,CAAC;AAEF,MAAM,qCAAqC,GAAG,CAC5C,cAAwB,EACxB,gBAAwB;IAExB,MAAM,oBAAoB,GAAG,cAAc,CAAC,cAAc,CACxD,0BAA0B,CAC3B,CAAC;IAEF,QACE,oBAAoB;QACpB,oBAAoB,CAAC,WAAW,KAAK,gBAAgB,EACrD;AACJ,CAAC,CAAC;AAEF,MAAM,gCAAgC,GAAG,CACvC,cAAwB,EACxB,gBAAwB;IAExB,MAAM,aAAa,GAAG,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1D,aAAa,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;IACrC,aAAa,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IAClD,aAAa,CAAC,EAAE,GAAG,0BAA0B,CAAC;IAC9C,aAAa,CAAC,WAAW,GAAG,gBAAgB,CAAC;IAC7C,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;AACjD,CAAC,CAAC;AAEF,MAAM,8BAA8B,GAAG,CAAC,MAA+B;IACrE,MAAM,EAAE,IAAI,CACV,gIAAgI,CACjI,CAAC;AACJ,CAAC,CAAC;AAEK,MAAM,eAAe,GAOvB,CAAC,EAAC,cAAc,EAAE,gBAAgB,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAC;;;;IAIrE,MAAM,+BAA+B,GAAG;QACtC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;KACtD,CAAC;IAEF,QACE,cACE,GAAG,EAAC,aAAa,EACjB,KAAK,EAAC,eAAe,EACrB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,OAAO,EAAE;YACZ,MAAM,SAAS,GAAG,EAAuB,CAAC;YAE1C,IAAI,CAAC,gBAAgB,IAAI,CAAC,OAAO,EAAE;gBACjC,OAAO;aACR;YAED,MAAM,cAAc,GAAG,SAAS,CAAC,eAAe,CAAC;YACjD,IAAI,CAAC,cAAc,EAAE;gBACnB,IAAI,GAAG,EAAE;oBACP,8BAA8B,CAAC,MAAM,CAAC,CAAC;oBACvC,SAAS,CAAC,GAAG,GAAG,GAAG,CAAC;iBACrB;gBAED,OAAO;aACR;YACD,IACE,qCAAqC,CACnC,cAAc,EACd,gBAAgB,CACjB,EACD;gBACA,OAAO;aACR;YAED,aAAa,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;YACvC,gCAAgC,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;YAEnE,MAAM,+BAA+B,EAAE,CAAC;YACxC,cAAc,CAAC,SAAS,CAAC,CAAC;SAC3B,GACO,EACV;AACJ,CAAC;;AChGD,MAAM,eAAe,GAAG,CAAC,cAAwB;IAC/C,MAAM,YAAY,GAAG,iBAAiB,CAAC;IACvC,MAAM,GAAG,GACP,cAAc,CAAC,cAAc,CAAC,YAAY,CAAC;QAC3C,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAEtC,GAAG,CAAC,EAAE,GAAG,YAAY,CAAC;IACtB,GAAG,CAAC,SAAS,GAAG,EAAE,CAAC;IACnB,GAAG,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC7B,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC;IACpB,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC;IACtB,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;IACzB,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IAC1B,GAAG,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACxC,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACvB,cAAwB,EACxB,IAA4B,EAC5B,WAAwB,EACxB,SAAiB,EACjB,iBAAoC;IAEpC,MAAM,WAAW,GAAG,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACxD,IAAI,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,KAAK,EAAE;QAC5D,WAAW,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QACnC,OAAO,WAAW,CAAC;KACpB;IAED,MAAM,eAAe,GAAG,WAAW,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC;IAEhE,WAAW,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC;IACxC,WAAW,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,eAAe,GAAG,SAAS,IAAI,GAAG,GAAG,CAAC;IAClE,WAAW,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;IACjC,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;IACjC,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,aAAa,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAClE,WAAW,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC;IAC/C,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AAEK,MAAM,wBAAwB,GAAG,CACtC,KAA6C,EAC7C,iBAAoC,EACpC,MAA0B;IAE1B,IAAI,CAAC,MAAM,EAAE;QACX,OAAO;KACR;IACD,MAAM,cAAc,GAAG,MAAM,CAAC,eAAe,CAAC;IAC9C,IAAI,CAAC,cAAc,EAAE;QACnB,OAAO;KACR;IACD,MAAM,GAAG,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;IAC5C,IAAI,iBAAiB,CAAC,aAAa,EAAE;QACnC,GAAG,CAAC,MAAM,EAAE,CAAC;QACb,OAAO;KACR;IACD,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC;IAEnD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI;QAChC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,WAAW;YAChC,MAAM,WAAW,GAAG,gBAAgB,CAClC,cAAc,EACd,IAAI,EACJ,WAAW,EACX,SAAS,EACT,iBAAiB,CAClB,CAAC;YAEF,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;SAC9B,CAAC,CAAC;KACJ,CAAC,CAAC;IACH,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;AACvC,CAAC;;AC7EM,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IACtD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9B,IAAI,CAAS,CAAC;IACd,MAAM,CAAC,GAAG,GAAG,CAAC;IAEd,MAAM,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;IACpB,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;IAElC,IAAI,GAAG,KAAK,GAAG,EAAE;QACf,CAAC,GAAG,CAAC,CAAC;KACP;SAAM;QACL,QAAQ,GAAG;YACT,KAAK,CAAC;gBACJ,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;gBAClC,MAAM;YACR,KAAK,CAAC;gBACJ,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACpB,MAAM;YACR;gBACE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACpB,MAAM;SACT;QACD,CAAC,IAAI,CAAC,CAAC;KACR;IAED,OAAO,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAC,CAAC;AACnB,CAAC,CAAC;AAEK,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IACtD,IAAI,CAAS,EAAE,CAAS,EAAE,CAAS,CAAC;IAEpC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACtB,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAEhC,QAAQ,CAAC,GAAG,CAAC;QACX,KAAK,CAAC;YACJ,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,MAAM;QACR,KAAK,CAAC;YACJ,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,MAAM;QACR,KAAK,CAAC;YACJ,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,MAAM;QACR,KAAK,CAAC;YACJ,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,MAAM;QACR,KAAK,CAAC;YACJ,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,MAAM;QACR;YACE,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,MAAM;KACT;IAED,OAAO;QACL,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAChB,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAChB,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;KACjB,CAAC;AACJ,CAAC;;AC1EM,MAAM,gBAAgB,GAAG,gBAAgB,CAAC;MACpC,sBAAsB;IAWjC,YACU,qBAAuC,EAC/C,sBAAmC;QAD3B,0BAAqB,GAArB,qBAAqB,CAAkB;QAT1C,gBAAW,GAAG,CAAC,CAAC;QAIhB,aAAQ,GAAkB,EAAE,CAAC;QAE5B,8BAAyB,GAAG,CAAC,CAAC,CAAC;QAMrC,MAAM,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC,sBAAsB,CAAC,CAAC;QACnE,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,0CAA0C,CAAC;SAClD;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QACjD,IAAI,CAAC,eAAe,GAAG,GAAG,MAAM,CAAC,iBAAiB,EAAE,CAAC;QACrD,IAAI,CAAC,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,eAAe,CAAC;QAC1D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAChD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAEvD,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC;KACzC;IAEM,UAAU,CAAC,sBAAmC;QACnD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;KAC5C;IAEM,eAAe;QACpB,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,yBAAyB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YAC1D,IAAI,CAAC,yBAAyB,GAAG,CAAC,CAAC;SACpC;QACD,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;KACtD;IAEM,gBAAgB;QACrB,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,yBAAyB,GAAG,CAAC,EAAE;YACtC,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;SAC3D;QACD,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;KACtD;IAEO,YAAY,CAAC,OAAoB;QACvC,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,iBAAiB,CAAC;KAC7D;IAEO,mBAAmB;QACzB,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACrE,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,cAAc,CAAC,CAAC;QAC1E,cAAc,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxC,cAAc,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC;QACzD,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO;YAC5B,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;YACzB,OAAO,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC;SAC5C,CAAC,CAAC;KACJ;IAEO,kBAAkB;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QAC9D,OAAO,CAAC,cAAc,EAAE,CAAC;KAC1B;IAEO,OAAO,CAAC,OAAoB;QAClC,MAAM,sBAAsB,GAAG,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,CAAC,IAAI,EAAE,CAAC;KAChE;IAEO,mBAAmB,CAAC,SAAiB;;;;QAK3C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,CACxD,CAAC,YAAY;YACX,MAAM,iBAAiB,GACrB,YAAY,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,CAAC;YACzD,IAAI,iBAAiB,EAAE;gBACrB,OAAO,IAAI,CAAC;aACb;YACD,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;YACpE,IAAI,CAAC,kBAAkB,EAAE;gBACvB,OAAO,KAAK,CAAC;aACd;YAED,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,IAAI,CACpD,CAAC,iBAAiB,KAChB,iBAAiB,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,CAC9D,CAAC;YACF,OAAO,sBAAsB,CAAC;SAC/B,CACF,CAAC;QACF,OAAO,KAAK,IAAI,SAAS,CAAC;KAC3B;IAEO,uBAAuB,CAAC,OAAoB;QAClD,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE;YAC/B,OAAO,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;SAC3C;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAkB,CAAC;QAC/D,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE;YACxB,OAAO,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;SAC/C;QAED,OAAO,EAAE,CAAC;KACX;IAEO,sBAAsB,CAAC,OAAoB;QACjD,MAAM,KAAK,GAAG,OAAO,CAAC,EAAE;aACrB,SAAS,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;aACtC,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAE3C,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;YAC/B,OAAO,IAAI,CAAC;SACb;QAED,OAAO;YACL,iBAAiB,EAAE,KAAK,CAAC,CAAC,CAAC;YAC3B,eAAe,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;SACxC,CAAC;KACH;IAEO,oBAAoB,CAAC,EAAe;QAC1C,OAAO,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC;KAC7C;IAEO,oBAAoB;QAC1B,MAAM,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACpC,OAAO,OAAO,GAAG,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC;KAClD;IAEO,qBAAqB;QAC3B,MAAM,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACpC,MAAM,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACpC,IAAI,aAAa,GAAG,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,aAAa,GAAG,CAAC,EAAE;YACrB,aAAa,GAAG,CAAC,CAAC;SACnB;QACD,MAAM,EACJ,CAAC,EAAE,UAAU,EACb,CAAC,EAAE,UAAU,EACb,CAAC,EAAE,UAAU,GACd,GAAG,QAAQ,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;QAClC,OAAO,OAAO,UAAU,KAAK,UAAU,KAAK,UAAU,GAAG,CAAC;KAC3D;IAEO,UAAU;QAChB,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,YAAY,EAAE;YACjB,OAAO,EAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAC,CAAC;SACjC;QAED,OAAO;YACL,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAChC,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAChC,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;SACjC,CAAC;KACH;CACF;AAEM,MAAM,kBAAkB,GAAG,CAChC,qBAAuC,EACvC,MAA0B;IAE1B,MAAM,eAAe,GAA2C,EAAE,CAAC;IACnE,IAAI,CAAC,MAAM,EAAE;QACX,OAAO,eAAe,CAAC;KACxB;IAED,MAAM,CAAC,eAAe,EAAE,IAAI;SACzB,gBAAgB,CAAC,SAAS,gBAAgB,IAAI,CAAC;SAC/C,OAAO,CAAC,CAAC,EAAE;QACV,MAAM,0BAA0B,GAAG,EAAiB,CAAC;QAErD,MAAM,aAAa,GAAG,IAAI,sBAAsB,CAC9C,qBAAqB,EACrB,0BAA0B,CAC3B,CAAC;QAEF,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;YACvB,OAAO;SACR;QAED,MAAM,qBAAqB,GACzB,eAAe,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QAEjD,IAAI,qBAAqB,EAAE;YACzB,qBAAqB,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAAC;SAC9D;aAAM;YACL,eAAe,CAAC,aAAa,CAAC,eAAe,CAAC,GAAG,aAAa,CAAC;SAChE;KACF,CAAC,CAAC;IAEL,OAAO,eAAe,CAAC;AACzB,CAAC;;AClND,MAAM,uBAAuB,GAAG,il4DAAil4D,CAAC;AACln4D,mCAAe,uBAAuB;;;;;;;;;;;;MCmEzB,oBAAoB;;;;;;;QAId,sBAAiB,GAAsB;YACtD,aAAa,EAAE,KAAK;YACpB,QAAQ,EAAE,EAAE;SACb,CAAC;QAUe,oBAAe,GAAG,KAAK,CAAC;QACxB,UAAK,GAA2C,EAAE,CAAC;;iCAdZ;YACtD,aAAa,EAAE,KAAK;YACpB,QAAQ,EAAE,EAAE;SACb;+BAUkC,KAAK;qBACyB,EAAE;;;;;;;;IATnE,sBAAsB;QACpB,IAAI,CAAC,uBAAuB,EAAE,CAAC;KAChC;IAmBM,iBAAiB;QACtB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;KACvD;IAGM,MAAM,KAAK;QAChB,IAAI,CAAC,iBAAiB,GAAG;YACvB,aAAa,EAAE,KAAK;YACpB,QAAQ,EAAE,EAAE;SACb,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;KACpC;IAEO,YAAY;QAClB,IAAI,aAAa,GAAiB,IAAI,CAAC;QACvC,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,IAAI,CAAC,iBAAiB,GAAG,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;gBACpE,OAAO,EAAE,EAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAC;aAC/B,CAAC,CAAC;YACH,aAAa,IACX,EAAC,QAAQ,QACP,EAAC,qBAAqB,IACpB,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAC3B,QAAQ,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE,MAAM,EAAE,EAChD,oBAAoB,EAAE,MACpB,IAAI,CAAC,iBAAiB,EAAE,kBAAkB,EAAE,EAE9C,qBAAqB,EAAE,MACrB,IAAI,CAAC,iBAAiB,EAAE,mBAAmB,EAAE,EAE/C,SAAS,EAAC,UAAU,EACpB,IAAI,EAAC,8BAA8B,IAElC,IAAI,CAAC,MAAM,CAAC,KAAK,CACI,EACxB,EAAC,UAAU,IACT,UAAU,EAAC,wBAAwB,EACnC,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,MAAM,IAAI,CAAC,OAAO,EAAE,EAC7B,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EACxC,KAAK,EAAC,kBAAkB,EACxB,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,GACpC,CACO,CACZ,CAAC;SACH;QACD,QACE,WAAK,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAC,0CAA0C,IAChE,aAAa,CACV,EACN;KACH;IAEO,UAAU;QAChB,QACE,WAAK,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,0CAA0C,IAC/D,WACE,KAAK,EAAC,wBAAwB,EAC9B,KAAK,EAAE,EAAC,eAAe,EAAE,6BAA6B,EAAC,IAEvD,EAAC,gBAAgB,IACf,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EACxB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EACzC,mBAAmB,EAAE,CAAC,SAAS,MAC5B,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC,EAEtC,SAAS,EAAE,IAAI,CAAC,eAAe,EAC/B,UAAU,EAAE,CAAC,QAAQ,MAAM,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,GAC3D,CACE,EACN,WAAK,KAAK,EAAC,wBAAwB,IACjC,EAAC,eAAe,IACd,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,GAAG,EAAE,IAAI,CAAC,YAAY,EACtB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,gBAAgB,EAAE,IAAI,CAAC,yBAAyB,EAChD,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,cAAc,EAAE,OAAO,GAAG;gBACxB,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;gBACrB,IAAI,CAAC,KAAK,GAAG,kBAAkB,CAC7B,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,SAAS,CACf,CAAC;gBACF,IAAI,CAAC,uBAAuB,EAAE,CAAC;aAChC,GACD,EACD,wBAAwB,CACvB,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,SAAS,CACf,CACG,CACF,EACN;KACH;IAEO,YAAY;QAClB,QACE,WAAK,IAAI,EAAC,QAAQ,EAAC,KAAK,EAAC,yBAAyB,IAChD,EAAC,MAAM,IACL,KAAK,EAAC,KAAK,EACX,KAAK,EAAC,gBAAgB,EACtB,OAAO,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE,IAAI,EAAE,EAC7C,QAAQ,EAAE,IAAI,CAAC,OAAO,KAAK,CAAC,EAC5B,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAC,GACxC,EACV,SAAG,KAAK,EAAC,aAAa,IACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,oBAAoB,EAAE;YAC1C,KAAK,EAAE,IAAI,CAAC,OAAO;YACnB,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC,CACA,EACJ,EAAC,MAAM,IACL,KAAK,EAAC,KAAK,EACX,KAAK,EAAC,gBAAgB,EACtB,OAAO,EAAE,MAAM,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,EACzC,QAAQ,EAAE,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,KAAK,EACrC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,GACpC,CACN,EACN;KACH;IAEO,OAAO;QACb,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;KACtD;IAED,IAAY,MAAM;QAChB,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;KACxC;IAED,IAAY,iBAAiB;QAC3B,OAAO,4BAA4B,CAAC;KACrC;IAED,IAAY,MAAM;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;KACpC;IAED,IAAY,YAAY;QACtB,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,UAAU,CAAC;KAC7D;IAEO,gBAAgB;QACtB,IAAI,CAAC,4BAA4B,EAAE,CAAC;KACrC;IAEO,+BAA+B,CAAC,UAAkB;QACxD,IAAI,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAC;KAC/C;IAEO,iBAAiB;QACvB,IAAI,CAAC,4BAA4B,EAAE,CAAC;KACrC;IAEO,gCAAgC,CAAC,UAAkB;QACzD,IAAI,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAC;KAC/C;IAEO,4BAA4B,CAAC,UAAmB;QACtD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,QAAQ,CAAC;QACpD,IAAI,CAAC,GAAG,EAAE;YACR,OAAO;SACR;QACD,GAAG;aACA,cAAc,CACb,GAAG,IAAI,CAAC,iBAAiB,GAAG,UAAU,GAAG,IAAI,UAAU,EAAE,GAAG,EAAE,EAAE,CACjE;cACC,MAAM,EAAE,CAAC;KACd;IAEO,4BAA4B,CAAC,UAAmB;QACtD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,QAAQ,CAAC;QACpD,IAAI,CAAC,GAAG,EAAE;YACR,OAAO;SACR;QAED,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QACtB,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,iBAAiB,GACxC,UAAU,GAAG,IAAI,UAAU,EAAE,GAAG,EAClC,EAAE,CAAC;QACH,MAAM,KAAK,GACT,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC;QACrE,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACxB,KAAK,CAAC,WAAW,CACf,GAAG,CAAC,cAAc,CAAC,SAAS,gBAAgB,GAC1C,UAAU,GAAG,IAAI,UAAU,EAAE,GAAG,EAClC;;;MAGA,CAAC,CACF,CAAC;KACH;IAED,IAAY,gBAAgB;QAC1B,MAAM,sBAAsB,GAAqB,EAAE,CAAC;QAEpD,MAAM,kBAAkB,GACtB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QAEhE,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC;YAC5D,sBAAsB,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAC/D,CAAC,CAAC,YAAY,EAAE,eAAe,CAAC;gBAC9B,OAAO,CAAC,YAAY,EAAE,GAAG,eAAe,CAAC,CAAC;aAC3C,CACF,CAAC;SACH,CAAC,CAAC;QAEH,OAAO;YACL,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB;YAC9D,GAAG,sBAAsB;SAC1B,CAAC;KACH;IAED,IAAY,SAAS;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC;KACpD;IAED,IAAY,yBAAyB;QACnC,OAAO,IAAI,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;KAC/C;IAEO,uBAAuB;QAC7B,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE;YACzC,IAAI,CAAC,gBAAgB,EAAE,CAAC;SACzB;aAAM;YACL,IAAI,CAAC,iBAAiB,EAAE,CAAC;SAC1B;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI;YAC1D,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;aAC5D;iBAAM;gBACL,IAAI,CAAC,gCAAgC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;aAC7D;SACF,CAAC,CAAC;KACJ;IAEM,MAAM;QACX,QACE,qEACE,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,EAC1C,KAAK,EAAE,wBAAwB,EAC/B,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,MAAM,IAAI,CAAC,OAAO,EAAE,EAC3B,WAAW,EAAE,yBAAyB,IAErC,IAAI,CAAC,YAAY,EAAE,EACnB,IAAI,CAAC,UAAU,EAAE,EACjB,IAAI,CAAC,YAAY,EAAE,CACP,EACf;KACH;;;;;;;;;;;;;;;;;;;;AAhS4B;IAA5B,kBAAkB,EAAE;sDAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["ArrowDown"],"sources":["src/components/search/result-template-components/atomic-quickview-sidebar/atomic-quickview-sidebar.tsx","src/components/search/result-template-components/quickview-iframe/quickview-iframe.tsx","src/components/search/result-template-components/quickview-preview-bar/quickview-preview-bar.ts","src/utils/color-utils.ts","src/components/search/result-template-components/quickview-word-highlight/quickview-word-highlight.tsx","src/components/search/result-template-components/atomic-quickview-modal/atomic-quickview-modal.pcss?tag=atomic-quickview-modal&encapsulation=shadow","src/components/search/result-template-components/atomic-quickview-modal/atomic-quickview-modal.tsx"],"sourcesContent":["import {Fragment, FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport Add from '../../../../images/add.svg';\nimport ArrowDown from '../../../../images/arrow-bottom-rounded.svg';\nimport ArrowUp from '../../../../images/arrow-top-rounded.svg';\nimport MinimizeIcon from '../../../../images/menu.svg';\nimport Remove from '../../../../images/remove.svg';\nimport {IconButton} from '../../../common/iconButton';\nimport {StencilCheckbox} from '../../../common/stencil-checkbox';\nimport {FieldsetGroup} from '../../../common/stencil-fieldset-group';\nimport type {HighlightKeywords} from '../atomic-quickview-modal/atomic-quickview-modal';\nimport {QuickviewWordHighlight} from '../quickview-word-highlight/quickview-word-highlight';\n\nconst identifierKeywordsSection = 'coveo-quickview-sidebar-keywords';\n\nexport interface QuickviewSidebarProps {\n words: Record<string, QuickviewWordHighlight>;\n i18n: i18n;\n highlightKeywords: HighlightKeywords;\n onHighlightKeywords: (highlight: HighlightKeywords) => void;\n minimized: boolean;\n onMinimize: (minimize: boolean) => void;\n}\n\nexport const QuickviewSidebar: FunctionalComponent<QuickviewSidebarProps> = (\n props\n) => {\n const {words, minimized} = props;\n const numberOfWords = Object.values(words).length;\n\n if (numberOfWords === 0) {\n return;\n }\n\n const minimizeButton = (\n <MinimizeButton {...props} wordsLength={numberOfWords} />\n );\n\n return (\n <div class=\"border-neutral h-full border-r p-4\">\n {minimized && minimizeButton}\n <div class=\"flex items-center justify-between\">\n <div class=\"flex items-center\">\n <HighlightKeywordsCheckbox {...props} />\n </div>\n {!minimized && <div>{minimizeButton}</div>}\n </div>\n\n {!minimized && <Keywords {...props} words={words} />}\n </div>\n );\n};\n\nconst MinimizeButton: FunctionalComponent<\n Pick<\n QuickviewSidebarProps,\n 'i18n' | 'minimized' | 'onMinimize' | 'highlightKeywords'\n > & {wordsLength: number}\n> = ({i18n, minimized, onMinimize, highlightKeywords, wordsLength}) => (\n <IconButton\n partPrefix=\"sidebar-minimize\"\n icon={MinimizeIcon}\n style=\"text-transparent\"\n title={i18n.t('quickview-toggle-navigation')}\n ariaLabel={i18n.t('quickview-toggle-navigation')}\n onClick={() => onMinimize(!minimized)}\n badge={\n highlightKeywords && minimized ? <slot>{wordsLength}</slot> : undefined\n }\n class={`w-fit ${minimized ? '' : 'ml-auto'}`}\n ariaExpanded={(!minimized).toString()}\n ariaControls={identifierKeywordsSection}\n />\n);\n\nconst HighlightKeywordsCheckbox: FunctionalComponent<\n Pick<\n QuickviewSidebarProps,\n 'i18n' | 'highlightKeywords' | 'onHighlightKeywords' | 'minimized'\n >\n> = ({i18n, highlightKeywords, onHighlightKeywords, minimized}) => (\n <Fragment>\n <StencilCheckbox\n text={i18n.t('keywords-highlight')}\n class=\"mr-2\"\n id=\"atomic-quickview-sidebar-highlight-keywords\"\n checked={!highlightKeywords.highlightNone}\n onToggle={(checked) =>\n onHighlightKeywords({\n ...highlightKeywords,\n highlightNone: !checked,\n })\n }\n ></StencilCheckbox>\n {!minimized && (\n <label\n class=\"cursor-pointer font-bold whitespace-nowrap\"\n htmlFor=\"atomic-quickview-sidebar-highlight-keywords\"\n >\n {i18n.t('keywords-highlight')}\n </label>\n )}\n </Fragment>\n);\n\nconst Keywords: FunctionalComponent<\n Pick<\n QuickviewSidebarProps,\n 'i18n' | 'onHighlightKeywords' | 'highlightKeywords'\n > & {\n words: Record<string, QuickviewWordHighlight>;\n }\n> = ({words, i18n, highlightKeywords, onHighlightKeywords}) => {\n return (\n <div id={identifierKeywordsSection}>\n {Object.values(words).map((keyword) => {\n const wordIsEnabled =\n !highlightKeywords.highlightNone &&\n (highlightKeywords.keywords[keyword.text] === undefined ||\n highlightKeywords.keywords[keyword.text].enabled === true);\n\n return (\n <div\n key={keyword.text}\n class=\"my-4 flex w-100 items-center justify-between gap-x-2\"\n >\n <div\n class={`bg-background border-neutral flex grow items-center overflow-x-auto rounded-lg border ${\n !wordIsEnabled ? 'pointer-events-none opacity-50' : ''\n }`}\n >\n <div\n class=\"flex grow items-center border-r p-4\"\n aria-hidden=\"true\"\n >\n <div\n class=\"mr-2 h-5 w-5 flex-none\"\n style={{backgroundColor: keyword.color}}\n ></div>\n <div class=\"mr-2 grow whitespace-nowrap\">{keyword.text}</div>\n <div class=\"flex-none\">\n (\n {new Intl.NumberFormat(i18n.language, {\n notation: 'compact',\n }).format(keyword.occurrences)}\n )\n </div>\n </div>\n <FieldsetGroup\n label={i18n.t('quickview-navigate-keywords', {\n occurrences: keyword.occurrences,\n keyword: keyword.text,\n })}\n >\n <div class=\"flex px-2\">\n <IconButton\n partPrefix=\"sidebar-next\"\n icon={ArrowDown}\n disabled={!wordIsEnabled}\n style=\"text-transparent\"\n class=\"border-0\"\n ariaLabel={i18n.t('next')}\n title={i18n.t('next')}\n onClick={() => keyword.navigateForward()}\n />\n <IconButton\n partPrefix=\"sidebar-previous\"\n icon={ArrowUp}\n disabled={!wordIsEnabled}\n style=\"text-transparent\"\n class=\"border-0\"\n ariaLabel={i18n.t('previous')}\n title={i18n.t('previous')}\n onClick={() => keyword.navigateBackward()}\n />\n </div>\n </FieldsetGroup>\n </div>\n <IconButton\n partPrefix=\"sidebar-remove-word\"\n class={`${\n highlightKeywords.highlightNone\n ? 'pointer-events-none opacity-50'\n : ''\n }`}\n tabIndex={highlightKeywords.highlightNone ? '-1' : '0'}\n ariaPressed={(!wordIsEnabled).toString()}\n style=\"text-transparent\"\n icon={wordIsEnabled ? Remove : Add}\n ariaLabel={i18n.t('quickview-remove-word')}\n onClick={() => {\n onHighlightKeywords({\n ...highlightKeywords,\n keywords: {\n ...highlightKeywords.keywords,\n [keyword.text]: {\n enabled: !wordIsEnabled,\n indexIdentifier: keyword.indexIdentifier,\n },\n },\n });\n }}\n />\n </div>\n );\n })}\n </div>\n );\n};\n","import {SearchEngine} from '@coveo/headless';\nimport {FunctionalComponent, h} from '@stencil/core';\n\nconst documentIdentifierInIframe = 'CoveoDocIdentifier';\n\nconst writeDocument = (documentWriter: Document, content: string) => {\n documentWriter.open();\n documentWriter.write(content);\n documentWriter.close();\n if (documentWriter.scrollingElement) {\n documentWriter.scrollingElement.scrollTop = 0;\n }\n};\n\nconst currentResultAlreadyWrittenToDocument = (\n documentWriter: Document,\n uniqueIdentifier: string\n) => {\n const currentDocIdentifier = documentWriter.getElementById(\n documentIdentifierInIframe\n );\n\n return (\n currentDocIdentifier &&\n currentDocIdentifier.textContent === uniqueIdentifier\n );\n};\n\nconst ensureSameResultIsNotOverwritten = (\n documentWriter: Document,\n uniqueIdentifier: string\n) => {\n const docIdentifier = documentWriter.createElement('div');\n docIdentifier.style.display = 'none';\n docIdentifier.setAttribute('aria-hidden', 'true');\n docIdentifier.id = documentIdentifierInIframe;\n docIdentifier.textContent = uniqueIdentifier;\n documentWriter.body.appendChild(docIdentifier);\n};\n\nconst warnAboutLimitedUsageQuickview = (logger?: SearchEngine['logger']) => {\n logger?.warn(\n 'Quickview initialized in restricted mode due to incompatible sandboxing environment. Keywords hit navigation will be disabled.'\n );\n};\n\nexport const QuickviewIframe: FunctionalComponent<{\n content?: string;\n onSetIframeRef: (ref: HTMLIFrameElement) => void;\n uniqueIdentifier?: string;\n sandbox?: string;\n src?: string;\n logger?: SearchEngine['logger'];\n}> = ({onSetIframeRef, uniqueIdentifier, content, sandbox, src, logger}) => {\n // When a document is written with document.open/document.write/document.close\n // it is not synchronous and the content of the iframe is only available to be queried at the end of the current call stack.\n // This add a \"wait\" (setTimeout 0) before calling the `onSetIframeRef` from the parent modal quickview\n const waitForIframeContentToBeWritten = () => {\n return new Promise((resolve) => setTimeout(resolve));\n };\n\n return (\n <iframe\n src=\"about:blank\"\n class=\"h-full w-full\"\n sandbox={sandbox}\n ref={async (el) => {\n const iframeRef = el as HTMLIFrameElement;\n\n if (!uniqueIdentifier || !content) {\n return;\n }\n\n const documentWriter = iframeRef.contentDocument;\n if (!documentWriter) {\n if (src) {\n warnAboutLimitedUsageQuickview(logger);\n iframeRef.src = src;\n }\n\n return;\n }\n if (\n currentResultAlreadyWrittenToDocument(\n documentWriter,\n uniqueIdentifier\n )\n ) {\n return;\n }\n\n writeDocument(documentWriter, content);\n ensureSameResultIsNotOverwritten(documentWriter, uniqueIdentifier);\n\n await waitForIframeContentToBeWritten();\n onSetIframeRef(iframeRef);\n }}\n ></iframe>\n );\n};\n","import type {HighlightKeywords} from '../atomic-quickview-modal/atomic-quickview-modal';\nimport type {QuickviewWordHighlight} from '../quickview-word-highlight/quickview-word-highlight';\n\nconst buildPreviewBar = (documentWriter: Document) => {\n const previewBarId = 'CoveoPreviewBar';\n const bar =\n documentWriter.getElementById(previewBarId) ||\n documentWriter.createElement('div');\n\n bar.id = previewBarId;\n bar.innerHTML = '';\n bar.style.position = 'fixed';\n bar.style.top = '0';\n bar.style.right = '0';\n bar.style.width = '15px';\n bar.style.height = '100%';\n bar.setAttribute('aria-hidden', 'true');\n return bar;\n};\n\nconst buildPreviewUnit = (\n documentWriter: Document,\n word: QuickviewWordHighlight,\n wordElement: HTMLElement,\n docHeight: number,\n highlightKeywords: HighlightKeywords\n) => {\n const previewUnit = documentWriter.createElement('div');\n if (highlightKeywords.keywords[word.text]?.enabled === false) {\n previewUnit.style.display = 'none';\n return previewUnit;\n }\n\n const elementPosition = wordElement.getBoundingClientRect().top;\n\n previewUnit.style.position = 'absolute';\n previewUnit.style.top = `${(elementPosition / docHeight) * 100}%`;\n previewUnit.style.width = '100%';\n previewUnit.style.height = '1px';\n previewUnit.style.border = `1px solid ${word.previewBorderColor}`;\n previewUnit.style.backgroundColor = word.color;\n return previewUnit;\n};\n\nexport const buildQuickviewPreviewBar = (\n words: Record<string, QuickviewWordHighlight>,\n highlightKeywords: HighlightKeywords,\n iframe?: HTMLIFrameElement\n) => {\n if (!iframe) {\n return;\n }\n const documentWriter = iframe.contentDocument;\n if (!documentWriter) {\n return;\n }\n const bar = buildPreviewBar(documentWriter);\n if (highlightKeywords.highlightNone) {\n bar.remove();\n return;\n }\n const docHeight = documentWriter.body.scrollHeight;\n\n Object.values(words).forEach((word) => {\n word.elements.forEach((wordElement) => {\n const previewUnit = buildPreviewUnit(\n documentWriter,\n word,\n wordElement,\n docHeight,\n highlightKeywords\n );\n\n bar.appendChild(previewUnit);\n });\n });\n documentWriter.body.appendChild(bar);\n};\n","export const rgbToHsv = (r: number, g: number, b: number) => {\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n\n let h: number;\n const v = max;\n\n const d = max - min;\n const s = max === 0 ? 0 : d / max;\n\n if (max === min) {\n h = 0;\n } else {\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n default:\n h = (r - g) / d + 4;\n break;\n }\n h /= 6;\n }\n\n return {h, s, v};\n};\n\nexport const hsvToRgb = (h: number, s: number, v: number) => {\n let r: number, g: number, b: number;\n\n const i = Math.floor(h * 6);\n const f = h * 6 - i;\n const p = v * (1 - s);\n const q = v * (1 - f * s);\n const t = v * (1 - (1 - f) * s);\n\n switch (i % 6) {\n case 0:\n r = v;\n g = t;\n b = p;\n break;\n case 1:\n r = q;\n g = v;\n b = p;\n break;\n case 2:\n r = p;\n g = v;\n b = t;\n break;\n case 3:\n r = p;\n g = q;\n b = v;\n break;\n case 4:\n r = t;\n g = p;\n b = v;\n break;\n default:\n r = v;\n g = p;\n b = q;\n break;\n }\n\n return {\n r: Math.round(r),\n g: Math.round(g),\n b: Math.round(b),\n };\n};\n","import {TermsToHighlight} from '@coveo/headless';\nimport {hsvToRgb, rgbToHsv} from '../../../../utils/color-utils';\n\nexport const HIGHLIGHT_PREFIX = 'CoveoHighlight';\nexport class QuickviewWordHighlight {\n public text: string;\n public indexIdentifier: string;\n public occurrences = 0;\n public color: string;\n public focusedColor: string;\n public previewBorderColor: string;\n public elements: HTMLElement[] = [];\n\n private currentNavigationPosition = -1;\n\n constructor(\n private stemmingInfoFromIndex: TermsToHighlight,\n keywordElementInIframe: HTMLElement\n ) {\n const parsed = this.parseKeywordIdentifier(keywordElementInIframe);\n if (!parsed) {\n throw 'Invalid keyword identifier for quickview';\n }\n\n this.text = this.getText(keywordElementInIframe);\n this.indexIdentifier = `${parsed.keywordIdentifier}`;\n this.color = keywordElementInIframe.style.backgroundColor;\n this.focusedColor = this.computeInvertedColor();\n this.previewBorderColor = this.computeSaturatedColor();\n\n this.addElement(keywordElementInIframe);\n }\n\n public addElement(keywordElementInIframe: HTMLElement) {\n this.occurrences++;\n this.elements.push(keywordElementInIframe);\n }\n\n public navigateForward() {\n this.currentNavigationPosition++;\n if (this.currentNavigationPosition >= this.elements.length) {\n this.currentNavigationPosition = 0;\n }\n this.highlightNavigation();\n this.putElementIntoView();\n return this.elements[this.currentNavigationPosition];\n }\n\n public navigateBackward() {\n this.currentNavigationPosition--;\n if (this.currentNavigationPosition < 0) {\n this.currentNavigationPosition = this.elements.length - 1;\n }\n this.highlightNavigation();\n this.putElementIntoView();\n return this.elements[this.currentNavigationPosition];\n }\n\n private isTaggedWord(element: HTMLElement) {\n return element.nodeName.toLowerCase() === 'coveotaggedword';\n }\n\n private highlightNavigation() {\n const currentElement = this.elements[this.currentNavigationPosition];\n const otherElements = this.elements.filter((el) => el !== currentElement);\n currentElement.style.color = this.color;\n currentElement.style.backgroundColor = this.focusedColor;\n otherElements.forEach((element) => {\n element.style.color = '';\n element.style.backgroundColor = this.color;\n });\n }\n\n private putElementIntoView() {\n const element = this.elements[this.currentNavigationPosition];\n element.scrollIntoView();\n }\n\n private getText(element: HTMLElement) {\n const innerTextOfHTMLElement = this.getHighlightedInnerText(element);\n return this.resolveOriginalTerm(innerTextOfHTMLElement).trim();\n }\n\n private resolveOriginalTerm(highlight: string): string {\n // First try to find either an exact match between the highlight and the original non-stemmed keyword.\n // Otherwise try to find a match between the highlight and the stemming keyword expansions\n // If nothing is found (which should not normally happen...), simply return the highlight keyword as is.\n\n const found = Object.keys(this.stemmingInfoFromIndex).find(\n (originalTerm) => {\n const originalTermMatch =\n originalTerm.toLowerCase() === highlight.toLowerCase();\n if (originalTermMatch) {\n return true;\n }\n const stemmingExpansions = this.stemmingInfoFromIndex[originalTerm];\n if (!stemmingExpansions) {\n return false;\n }\n\n const stemmingExpansionMatch = stemmingExpansions.find(\n (stemmingExpansion) =>\n stemmingExpansion.toLowerCase() === highlight.toLowerCase()\n );\n return stemmingExpansionMatch;\n }\n );\n return found || highlight;\n }\n\n private getHighlightedInnerText(element: HTMLElement): string {\n if (!this.isTaggedWord(element)) {\n return this.getTextOfHTMLElement(element);\n }\n\n const children = Array.from(element.children) as HTMLElement[];\n if (children.length >= 1) {\n return this.getTextOfHTMLElement(children[0]);\n }\n\n return '';\n }\n\n private parseKeywordIdentifier(element: HTMLElement) {\n const parts = element.id\n .substring(HIGHLIGHT_PREFIX.length + 1)\n .match(/^([0-9]+)\\.([0-9]+)\\.([0-9]+)$/);\n\n if (!parts || parts.length <= 3) {\n return null;\n }\n\n return {\n keywordIdentifier: parts[1],\n keywordTermPart: parseInt(parts[3], 10),\n };\n }\n\n private getTextOfHTMLElement(el: HTMLElement) {\n return el.innerText || el.textContent || '';\n }\n\n private computeInvertedColor() {\n const {r, g, b} = this.extractRgb();\n return `rgb(${255 - r}, ${255 - g}, ${255 - b})`;\n }\n\n private computeSaturatedColor() {\n const {r, g, b} = this.extractRgb();\n const {h, s, v} = rgbToHsv(r, g, b);\n let newSaturation = s * 2;\n if (newSaturation > 1) {\n newSaturation = 1;\n }\n const {\n r: rSaturated,\n g: gSaturated,\n b: bSaturated,\n } = hsvToRgb(h, newSaturation, v);\n return `rgb(${rSaturated}, ${gSaturated}, ${bSaturated})`;\n }\n\n private extractRgb() {\n const rgbExtracted = this.color.match(/\\d+/g);\n if (!rgbExtracted) {\n return {r: 255, g: 255, b: 255};\n }\n\n return {\n r: parseInt(rgbExtracted[0], 10),\n g: parseInt(rgbExtracted[1], 10),\n b: parseInt(rgbExtracted[2], 10),\n };\n }\n}\n\nexport const getWordsHighlights = (\n stemmingInfoFromIndex: TermsToHighlight,\n iframe?: HTMLIFrameElement\n) => {\n const wordsHighlights: Record<string, QuickviewWordHighlight> = {};\n if (!iframe) {\n return wordsHighlights;\n }\n\n iframe.contentDocument?.body\n .querySelectorAll(`[id^=\"${HIGHLIGHT_PREFIX}\"]`)\n .forEach((el) => {\n const wordHTMLElementToHighlight = el as HTMLElement;\n\n const wordHighlight = new QuickviewWordHighlight(\n stemmingInfoFromIndex,\n wordHTMLElementToHighlight\n );\n\n if (!wordHighlight.text) {\n return;\n }\n\n const alreadyScannedKeyword =\n wordsHighlights[wordHighlight.indexIdentifier];\n\n if (alreadyScannedKeyword) {\n alreadyScannedKeyword.addElement(wordHTMLElementToHighlight);\n } else {\n wordsHighlights[wordHighlight.indexIdentifier] = wordHighlight;\n }\n });\n\n return wordsHighlights;\n};\n","@import '../../../../global/global.pcss';\n@import '../../../../utils/tailwind-utilities/link-style.tw.css';\n\n.atomic-quickview-modal {\n &::part(backdrop) {\n grid-template-columns: 1fr max(80vw, 30rem) 1fr;\n }\n &::part(body),\n &::part(header),\n &::part(footer) {\n @apply max-w-full;\n }\n\n &::part(footer) {\n @apply flex justify-center;\n }\n\n &::part(body-wrapper) {\n @apply h-full overflow-hidden p-0;\n }\n\n &::part(body) {\n @apply h-full;\n }\n\n &::part(backdrop) {\n grid-template-rows: 1fr 100% 3fr;\n }\n\n &::part(header-wrapper) {\n @apply bg-neutral-light;\n }\n\n a {\n @apply link-style;\n }\n}\n","import {\n buildInteractiveResult,\n Result,\n InteractiveResult,\n TermsToHighlight,\n} from '@coveo/headless';\nimport {\n Component,\n Event,\n EventEmitter,\n h,\n Prop,\n State,\n Watch,\n Method,\n VNode,\n Fragment,\n} from '@stencil/core';\nimport CloseIcon from '../../../../images/close.svg';\nimport {\n InitializableComponent,\n InitializeBindings,\n} from '../../../../utils/initialization-utils';\nimport {ATOMIC_MODAL_EXPORT_PARTS} from '../../../common/atomic-modal/export-parts';\nimport {IconButton} from '../../../common/iconButton';\nimport {LinkWithItemAnalytics} from '../../../common/item-link/item-link';\nimport {Button} from '../../../common/stencil-button';\nimport {Bindings} from '../../atomic-search-interface/atomic-search-interface';\nimport {QuickviewSidebar} from '../atomic-quickview-sidebar/atomic-quickview-sidebar';\nimport {QuickviewIframe} from '../quickview-iframe/quickview-iframe';\nimport {buildQuickviewPreviewBar} from '../quickview-preview-bar/quickview-preview-bar';\nimport {\n getWordsHighlights,\n HIGHLIGHT_PREFIX,\n QuickviewWordHighlight,\n} from '../quickview-word-highlight/quickview-word-highlight';\n\nexport interface HighlightKeywords {\n highlightNone: boolean;\n keywords: {\n [text: string]: {\n indexIdentifier: string;\n enabled: boolean;\n };\n };\n}\n\n/**\n * The modal opened when clicking on a quickview button.\n * Do not use this component directly; use `atomic-quickview` instead.\n *\n * @part backdrop - The transparent backdrop hiding the content behind the modal.\n * @part container - The modal's outermost container with the outline and background.\n * @part header-wrapper - The wrapper around the header.\n * @part header - The header at the top of the modal.\n * @part header-ruler - The horizontal ruler underneath the header.\n * @part body-wrapper - The wrapper around the body.\n * @part body - The body of the modal, between the header and the footer.\n * @part footer-wrapper - The wrapper with a shadow or background color around the footer.\n * @part footer - The footer at the bottom of the modal.\n * @part quickview-modal-header-icon - The close icon of the modal.\n * @part quickview-modal-header-title - The title of the modal.\n */\n@Component({\n tag: 'atomic-quickview-modal',\n styleUrl: 'atomic-quickview-modal.pcss',\n shadow: true,\n})\nexport class AtomicQuickviewModal implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n @State() public error!: Error;\n\n @State() private highlightKeywords: HighlightKeywords = {\n highlightNone: false,\n keywords: {},\n };\n @Watch('highlightKeywords')\n watchHighlightKeywords() {\n this.handleHighlightsScripts();\n }\n\n @Event({eventName: 'atomic/quickview/next'}) nextQuickview?: EventEmitter;\n @Event({eventName: 'atomic/quickview/previous'})\n previousQuickview?: EventEmitter;\n\n @State() private minimizeSidebar = false;\n @State() private words: Record<string, QuickviewWordHighlight> = {};\n private iframeRef?: HTMLIFrameElement;\n\n @Prop({mutable: true, reflect: false}) content?: string;\n @Prop({mutable: true, reflect: false}) result?: Result;\n @Prop() current?: number;\n @Prop() total?: number;\n @Prop() sandbox?: string;\n @Prop() modalCloseCallback?: () => void;\n\n private interactiveResult?: InteractiveResult;\n\n public componentWillLoad(): void {\n this.minimizeSidebar = this.bindings.store.isMobile();\n }\n\n @Method()\n public async reset() {\n this.highlightKeywords = {\n highlightNone: false,\n keywords: {},\n };\n this.minimizeSidebar = false;\n this.iframeRef = undefined;\n this.content = undefined;\n this.result = undefined;\n this.interactiveResult = undefined;\n }\n\n private renderHeader() {\n let headerContent: VNode | null = null;\n if (this.result) {\n this.interactiveResult = buildInteractiveResult(this.bindings.engine, {\n options: {result: this.result},\n });\n headerContent = (\n <Fragment>\n <LinkWithItemAnalytics\n href={this.result?.clickUri}\n onSelect={() => this.interactiveResult?.select()}\n onBeginDelayedSelect={() =>\n this.interactiveResult?.beginDelayedSelect()\n }\n onCancelPendingSelect={() =>\n this.interactiveResult?.cancelPendingSelect()\n }\n className=\"truncate\"\n part=\"quickview-modal-header-title\"\n >\n {this.result.title}\n </LinkWithItemAnalytics>\n <IconButton\n partPrefix=\"quickview-modal-header\"\n icon={CloseIcon}\n onClick={() => this.onClose()}\n ariaLabel={this.bindings.i18n.t('close')}\n style=\"text-transparent\"\n title={this.bindings.i18n.t('close')}\n />\n </Fragment>\n );\n }\n return (\n <div slot=\"header\" class=\"flex w-full items-center justify-between\">\n {headerContent}\n </div>\n );\n }\n\n private renderBody() {\n return (\n <div slot=\"body\" class=\"grid h-full grid-cols-[min-content_auto]\">\n <div\n class=\"h-full overflow-y-auto\"\n style={{backgroundColor: 'var(--atomic-neutral-light)'}}\n >\n <QuickviewSidebar\n words={this.words}\n i18n={this.bindings.i18n}\n highlightKeywords={this.highlightKeywords}\n onHighlightKeywords={(highlight) =>\n (this.highlightKeywords = highlight)\n }\n minimized={this.minimizeSidebar}\n onMinimize={(minimize) => (this.minimizeSidebar = minimize)}\n />\n </div>\n <div class=\"relative overflow-auto\">\n <QuickviewIframe\n logger={this.logger}\n src={this.quickviewSrc}\n sandbox={this.sandbox}\n uniqueIdentifier={this.quickviewUniqueIdentifier}\n content={this.content}\n onSetIframeRef={async (ref) => {\n this.iframeRef = ref;\n this.words = getWordsHighlights(\n this.termsToHighlight,\n this.iframeRef\n );\n this.handleHighlightsScripts();\n }}\n />\n {buildQuickviewPreviewBar(\n this.words,\n this.highlightKeywords,\n this.iframeRef\n )}\n </div>\n </div>\n );\n }\n\n private renderFooter() {\n return (\n <div slot=\"footer\" class=\"flex items-center gap-2\">\n <Button\n class=\"p-2\"\n style=\"square-neutral\"\n onClick={() => this.previousQuickview?.emit()}\n disabled={this.current === 1}\n text={this.bindings.i18n.t('quickview-previous')}\n ></Button>\n <p class=\"text-center\">\n {this.bindings.i18n.t('showing-results-of', {\n first: this.current,\n total: this.total,\n })}\n </p>\n <Button\n class=\"p-2\"\n style=\"square-neutral\"\n onClick={() => this.nextQuickview?.emit()}\n disabled={this.current === this.total}\n text={this.bindings.i18n.t('quickview-next')}\n ></Button>\n </div>\n );\n }\n\n private onClose() {\n this.content = undefined;\n this.result = undefined;\n this.modalCloseCallback && this.modalCloseCallback();\n }\n\n private get isOpen() {\n return !!this.content && !!this.result;\n }\n\n private get highlightScriptId() {\n return 'CoveoDisableHighlightStyle';\n }\n\n private get logger() {\n return this.bindings.engine.logger;\n }\n\n private get quickviewSrc() {\n return this.bindings.engine.state.resultPreview?.contentURL;\n }\n\n private enableHighlights() {\n this.removeDisableHighlightScript();\n }\n\n private enableHighlightsSpecificKeyword(identifier: string) {\n this.removeDisableHighlightScript(identifier);\n }\n\n private disableHighlights() {\n this.createDisableHighlightScript();\n }\n\n private disableHighlightsSpecificKeyword(identifier: string) {\n this.createDisableHighlightScript(identifier);\n }\n\n private removeDisableHighlightScript(identifier?: string) {\n const doc = this.iframeRef?.contentWindow?.document;\n if (!doc) {\n return;\n }\n doc\n .getElementById(\n `${this.highlightScriptId}${identifier ? `:${identifier}` : ''}`\n )\n ?.remove();\n }\n\n private createDisableHighlightScript(identifier?: string) {\n const doc = this.iframeRef?.contentWindow?.document;\n if (!doc) {\n return;\n }\n\n const head = doc.head;\n const scriptId = `${this.highlightScriptId}${\n identifier ? `:${identifier}` : ''\n }`;\n const style =\n doc.getElementById(scriptId) || this.bindings.createStyleElement();\n style.setAttribute('id', scriptId);\n head.appendChild(style);\n style.appendChild(\n doc.createTextNode(`[id^=\"${HIGHLIGHT_PREFIX}${\n identifier ? `:${identifier}` : ''\n }\"] {\n background-color: inherit !important;\n color: inherit !important;\n }`)\n );\n }\n\n private get termsToHighlight() {\n const flatPhrasesToHighlight: TermsToHighlight = {};\n\n const phrasesToHighlight =\n this.bindings.engine.state.search.response.phrasesToHighlight;\n\n Object.entries(phrasesToHighlight).forEach(([phrase, keywords]) => {\n flatPhrasesToHighlight[phrase] = Object.entries(keywords).flatMap(\n ([keywordEntry, keywordStemming]) => {\n return [keywordEntry, ...keywordStemming];\n }\n );\n });\n\n return {\n ...this.bindings.engine.state.search.response.termsToHighlight,\n ...flatPhrasesToHighlight,\n };\n }\n\n private get requestId() {\n return this.bindings.engine.state.search.requestId;\n }\n\n private get quickviewUniqueIdentifier() {\n return this.result?.uniqueId + this.requestId;\n }\n\n private handleHighlightsScripts() {\n if (!this.highlightKeywords.highlightNone) {\n this.enableHighlights();\n } else {\n this.disableHighlights();\n }\n Object.values(this.highlightKeywords.keywords).forEach((word) => {\n if (word.enabled) {\n this.enableHighlightsSpecificKeyword(word.indexIdentifier);\n } else {\n this.disableHighlightsSpecificKeyword(word.indexIdentifier);\n }\n });\n }\n\n public render() {\n return (\n <atomic-modal\n fullscreen={this.bindings.store.isMobile()}\n class={'atomic-quickview-modal'}\n isOpen={this.isOpen}\n close={() => this.onClose()}\n exportparts={ATOMIC_MODAL_EXPORT_PARTS}\n >\n {this.renderHeader()}\n {this.renderBody()}\n {this.renderFooter()}\n </atomic-modal>\n );\n }\n}\n"],"version":3}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"atomic-recs-interface.js","mappings":"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","names":["AtomicRecsInterface","i18next"],"sources":["src/components/recommendations/atomic-recs-interface/analytics-config.ts","src/components/recommendations/atomic-recs-interface/store.ts","src/components/recommendations/atomic-recs-interface/atomic-recs-interface.pcss?tag=atomic-recs-interface&encapsulation=shadow","src/components/recommendations/atomic-recs-interface/atomic-recs-interface.tsx"],"sourcesContent":["import {\n AnalyticsConfiguration,\n RecommendationEngineConfiguration,\n} from '@coveo/headless/recommendation';\nimport {\n AnalyticsPayload,\n augmentAnalyticsWithAtomicVersion,\n augmentWithExternalMiddleware,\n augmentAnalyticsConfigWithDocument,\n augmentAnalyticsConfigWithAtomicVersion,\n getNextAnalyticsConfig,\n} from '../../common/interface/analytics-config';\n\nexport function getAnalyticsConfig(\n recsConfig: RecommendationEngineConfiguration,\n enabled: boolean\n): AnalyticsConfiguration {\n switch (recsConfig.analytics?.analyticsMode) {\n case 'next':\n return getNextAnalyticsConfig(recsConfig, enabled);\n case 'legacy':\n default:\n return getLegacyAnalyticsConfig(recsConfig, enabled);\n }\n}\n\nfunction getLegacyAnalyticsConfig(\n recsConfig: RecommendationEngineConfiguration,\n enabled: boolean\n): AnalyticsConfiguration {\n const analyticsClientMiddleware = (\n event: string,\n payload: AnalyticsPayload\n ) => augmentAnalytics(event, payload, recsConfig);\n\n const defaultAnalyticsConfig: AnalyticsConfiguration = {\n analyticsClientMiddleware,\n enabled,\n ...augmentAnalyticsConfigWithDocument(),\n ...augmentAnalyticsConfigWithAtomicVersion(),\n };\n\n if (recsConfig.analytics) {\n return {\n ...defaultAnalyticsConfig,\n ...recsConfig.analytics,\n analyticsClientMiddleware,\n };\n }\n return defaultAnalyticsConfig;\n}\n\nfunction augmentAnalytics(\n event: string,\n payload: AnalyticsPayload,\n recsConfig: RecommendationEngineConfiguration\n) {\n let result = augmentWithExternalMiddleware(event, payload, recsConfig);\n result = augmentAnalyticsWithAtomicVersion(result);\n return result;\n}\n","import {RecommendationEngine} from '@coveo/headless/recommendation';\nimport {\n BaseStore,\n createBaseStore,\n ResultListInfo,\n setLoadingFlag,\n unsetLoadingFlag,\n} from '../../common/interface/store';\n\ninterface Data {\n loadingFlags: string[];\n iconAssetsPath: string;\n resultList: ResultListInfo | undefined;\n}\n\nexport type RecsStore = BaseStore<Data> & {\n unsetLoadingFlag(loadingFlag: string): void;\n setLoadingFlag(flag: string): void;\n};\n\nexport function createRecsStore(): RecsStore {\n const store = createBaseStore<Data>({\n loadingFlags: [],\n iconAssetsPath: '',\n resultList: undefined,\n });\n\n return {\n ...store,\n\n unsetLoadingFlag(loadingFlag: string) {\n unsetLoadingFlag(store, loadingFlag);\n },\n\n setLoadingFlag(loadingFlag: string) {\n setLoadingFlag(store, loadingFlag);\n },\n\n getUniqueIDFromEngine(engine: RecommendationEngine): string {\n return engine.state.recommendation.searchUid;\n },\n };\n}\n","@import '../../../global/global.pcss';\n\n:host {\n display: block;\n}\n","import {markParentAsReady} from '@/src/utils/init-queue';\nimport {\n RecommendationEngine,\n RecommendationEngineConfiguration,\n loadFieldActions,\n EcommerceDefaultFieldsToInclude,\n buildRecommendationEngine,\n loadRecommendationActions,\n loadSearchConfigurationActions,\n LogLevel as RecsLogLevel,\n} from '@coveo/headless/recommendation';\nimport {\n Component,\n Element,\n h,\n Listen,\n Method,\n Prop,\n Watch,\n State,\n setNonce,\n} from '@stencil/core';\nimport i18next, {i18n} from 'i18next';\nimport {InitializeEvent} from '../../../utils/initialization-utils';\nimport {ArrayProp} from '../../../utils/props-utils';\nimport {CommonBindings} from '../../common/interface/bindings';\nimport {\n StencilBaseAtomicInterface,\n CommonAtomicInterfaceHelper,\n mismatchedInterfaceAndEnginePropError,\n} from '../../common/interface/interface-common-stencil';\nimport {getAnalyticsConfig} from './analytics-config';\nimport {createRecsStore, RecsStore} from './store';\n\nconst FirstRecommendationExecutedFlag = 'firstRecommendationExecuted';\nexport type RecsInitializationOptions = RecommendationEngineConfiguration;\nexport type RecsBindings = CommonBindings<\n RecommendationEngine,\n RecsStore,\n HTMLAtomicRecsInterfaceElement\n>;\n\n/**\n * The `atomic-recs-interface` component is the parent to all other atomic components in a recommendation interface. It handles the headless recommendation engine and localization configurations.\n * @slot default - The default slot where you can add child components to the recommendation interface.\n *\n */\n@Component({\n tag: 'atomic-recs-interface',\n styleUrl: 'atomic-recs-interface.pcss',\n shadow: true,\n})\nexport class AtomicRecsInterface\n implements StencilBaseAtomicInterface<RecommendationEngine>\n{\n private store = createRecsStore();\n private commonInterfaceHelper: CommonAtomicInterfaceHelper<RecommendationEngine>;\n private initialized = false;\n\n @Element() public host!: HTMLAtomicRecsInterfaceElement;\n\n @State() public error?: Error;\n\n /**\n * The recommendation interface [query pipeline](https://docs.coveo.com/en/180/).\n *\n * If the recommendation interface is initialized using [`initializeWithRecommendationEngine`](https://docs.coveo.com/en/atomic/latest/reference/recommendation-components/atomic-recs-interface/#initializewithrecommendationengine), the query pipeline should instead be configured in the target engine.\n */\n @Prop({reflect: true, mutable: true}) public pipeline?: string;\n\n /**\n * The recommendation interface [search hub](https://docs.coveo.com/en/1342/).\n *\n * If the recommendation interface is initialized using [`initializeWithRecommendationEngine`](https://docs.coveo.com/en/atomic/latest/reference/recommendation-components/atomic-recs-interface/#initializewithrecommendationengine), the search hub should instead be configured in the target engine.\n */\n @Prop({reflect: true, mutable: true}) public searchHub?: string;\n\n /**\n * The [tz database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) identifier of the time zone to use to correctly interpret dates in the query expression, facets, and result items.\n * By default, the timezone will be [guessed](https://day.js.org/docs/en/timezone/guessing-user-timezone).\n *\n * Example: \"America/Montreal\"\n */\n @Prop({reflect: true}) public timezone?: string;\n\n /**\n * The recommendation interface headless engine.\n */\n @Prop({mutable: true}) public engine?: RecommendationEngine;\n\n /**\n * Whether analytics should be enabled.\n */\n @Prop({reflect: true}) public analytics = true;\n\n /**\n * The recommendation interface i18next instance.\n */\n @Prop() public i18n: i18n;\n\n /**\n * The severity level of the messages to log in the console.\n */\n @Prop({reflect: true}) public logLevel?: RecsLogLevel;\n\n /**\n * The recommendation interface language.\n */\n @Prop({reflect: true}) public language = 'en';\n\n /**\n * A list of non-default fields to include in the query results.\n *\n * Specify the property as an array using a JSON string representation:\n * ```html\n * <atomic-recs-interface fields-to-include='[\"fieldA\", \"fieldB\"]'></atomic-recs-interface>\n * ```\n */\n @ArrayProp()\n @Prop({mutable: true})\n public fieldsToInclude: string[] | string = '[]';\n\n /**\n * The language assets path. By default, this will be a relative URL pointing to `./lang`.\n *\n * Example: \"/mypublicpath/languages\"\n *\n */\n @Prop({reflect: true}) public languageAssetsPath = './lang';\n\n /**\n * The icon assets path. By default, this will be a relative URL pointing to `./assets`.\n *\n * Example: \"/mypublicpath/icons\"\n *\n */\n @Prop({reflect: true}) public iconAssetsPath = './assets';\n\n /**\n * The value to set the [nonce](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/nonce) attribute to on inline script and style elements generated by this interface and its child components.\n * If your application is served with a Content Security Policy (CSP) that doesn't include the `script-src: 'unsafe-inline'` or `style-src: 'unsafe-inline'` directives,\n * you should ensure that your application server generates a new nonce on every page load and uses the generated value to set this prop and serve the corresponding CSP response headers\n * (i.e., script-src 'nonce-<YOUR_GENERATED_NONCE>' and style-src 'nonce-<YOUR_GENERATED_NONCE>').\n * Otherwise you may see console errors such as\n * - Refused to execute inline script because it violates the following Content Security Policy directive: [...]\n * - Refused to apply inline style because it violates the following Content Security Policy directive: [...].\n * @example:\n * ```html\n * <script nonce=\"<YOUR_GENERATED_NONCE>\">\n * import {setNonce} from '@coveo/atomic';\n * setNonce('<YOUR_GENERATED_NONCE>');\n * </script>\n * ```\n */\n @Prop({reflect: true}) public CspNonce?: string;\n\n private i18Initialized: Promise<void>;\n private componentWillLoadCalledPromise: Promise<void>;\n private componentWillLoadResolver: () => void;\n\n public constructor() {\n this.commonInterfaceHelper = new CommonAtomicInterfaceHelper(\n this,\n 'CoveoAtomicRecs'\n );\n ({\n promise: this.componentWillLoadCalledPromise,\n resolve: this.componentWillLoadResolver,\n } = Promise.withResolvers<void>());\n const {promise, resolve} = Promise.withResolvers<void>();\n this.i18Initialized = promise;\n this.i18n = i18next.createInstance(undefined, resolve);\n }\n\n public get bindings(): RecsBindings {\n return {\n engine: this.engine!,\n i18n: this.i18n,\n store: this.store,\n interfaceElement: this.host,\n };\n }\n\n public connectedCallback() {\n this.store.setLoadingFlag(FirstRecommendationExecutedFlag);\n }\n\n componentWillLoad() {\n if (this.CspNonce) {\n setNonce(this.CspNonce);\n }\n this.componentWillLoadResolver();\n }\n\n /**\n * Initializes the connection with the headless recommendation engine using options for `accessToken` (required), `organizationId` (required), `environment` (defaults to `prod`), and `renewAccessToken`.\n */\n @Method() public initialize(options: RecsInitializationOptions) {\n return this.internalInitialization(() => this.initEngine(options));\n }\n\n /**\n * Initializes the connection with an already preconfigured headless recommendation engine.\n * This bypasses the properties set on the component, such as analytics, recommendation, searchHub, language, timezone & logLevel.\n */\n @Method() public initializeWithRecommendationEngine(\n engine: RecommendationEngine\n ) {\n if (this.pipeline && this.pipeline !== engine.state.pipeline) {\n console.warn(\n mismatchedInterfaceAndEnginePropError(\n 'recommendation',\n 'query pipeline'\n )\n );\n }\n if (this.searchHub && this.searchHub !== engine.state.searchHub) {\n console.warn(\n mismatchedInterfaceAndEnginePropError('recommendation', 'search hub')\n );\n }\n return this.internalInitialization(() => (this.engine = engine));\n }\n\n /**\n *\n * Fetches new recommendations.\n */\n @Method() public async getRecommendations() {\n if (!this.commonInterfaceHelper.engineIsCreated(this.engine)) {\n return;\n }\n\n if (!this.initialized) {\n console.error(\n 'You have to wait until the \"initialize\" promise is fulfilled before executing a search.',\n this.host\n );\n return;\n }\n\n this.engine!.dispatch(\n loadRecommendationActions(this.engine!).getRecommendations()\n );\n }\n\n @Watch('iconAssetsPath')\n public updateIconAssetsPath() {\n this.store.state.iconAssetsPath = this.iconAssetsPath;\n }\n\n @Listen('atomic/initializeComponent')\n public handleInitialization(event: InitializeEvent) {\n this.commonInterfaceHelper.onComponentInitializing(event);\n }\n\n @Watch('language')\n public updateLanguage() {\n if (!this.commonInterfaceHelper.engineIsCreated(this.engine)) {\n return;\n }\n\n const {updateSearchConfiguration} = loadSearchConfigurationActions(\n this.engine\n );\n this.engine.dispatch(\n updateSearchConfiguration({\n locale: this.language,\n })\n );\n return this.commonInterfaceHelper.onLanguageChange();\n }\n\n @Watch('analytics')\n public toggleAnalytics() {\n if (!this.commonInterfaceHelper.engineIsCreated(this.engine)) {\n return;\n }\n\n this.commonInterfaceHelper.onAnalyticsChange();\n }\n\n public registerFieldsToInclude() {\n const fields = EcommerceDefaultFieldsToInclude.concat(\n [...this.fieldsToInclude].filter((field) => !!field)\n );\n this.engine!.dispatch(\n loadFieldActions(this.engine!).registerFieldsToInclude(fields)\n );\n }\n\n private async internalInitialization(initEngine: () => void) {\n await this.componentWillLoadCalledPromise;\n await Promise.all([\n this.commonInterfaceHelper.onInitialization(initEngine),\n this.i18Initialized,\n ]);\n await this.updateLanguage();\n markParentAsReady(this.host);\n this.pipeline = this.engine!.state.pipeline;\n this.searchHub = this.engine!.state.searchHub;\n this.store.unsetLoadingFlag(FirstRecommendationExecutedFlag);\n this.initialized = true;\n }\n\n private initEngine(options: RecsInitializationOptions) {\n const analyticsConfig = getAnalyticsConfig(options, this.analytics);\n try {\n this.engine = buildRecommendationEngine({\n configuration: {\n pipeline: this.pipeline,\n searchHub: this.searchHub ?? 'default',\n locale: this.language,\n timezone: this.timezone,\n ...options,\n analytics: analyticsConfig,\n },\n loggerOptions: {\n level: this.logLevel,\n },\n });\n } catch (error) {\n this.error = error as Error;\n throw error;\n }\n }\n\n public render() {\n return this.engine && <slot></slot>;\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"atomic-recs-interface.js","mappings":"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","names":["AtomicRecsInterface","i18next"],"sources":["src/components/recommendations/atomic-recs-interface/analytics-config.ts","src/components/recommendations/atomic-recs-interface/store.ts","src/components/recommendations/atomic-recs-interface/atomic-recs-interface.pcss?tag=atomic-recs-interface&encapsulation=shadow","src/components/recommendations/atomic-recs-interface/atomic-recs-interface.tsx"],"sourcesContent":["import type {\n AnalyticsConfiguration,\n RecommendationEngineConfiguration,\n} from '@coveo/headless/recommendation';\nimport {\n type AnalyticsPayload,\n augmentAnalyticsConfigWithAtomicVersion,\n augmentAnalyticsConfigWithDocument,\n augmentAnalyticsWithAtomicVersion,\n augmentWithExternalMiddleware,\n getNextAnalyticsConfig,\n} from '../../common/interface/analytics-config';\n\nexport function getAnalyticsConfig(\n recsConfig: RecommendationEngineConfiguration,\n enabled: boolean\n): AnalyticsConfiguration {\n switch (recsConfig.analytics?.analyticsMode) {\n case 'next':\n return getNextAnalyticsConfig(recsConfig, enabled);\n default:\n return getLegacyAnalyticsConfig(recsConfig, enabled);\n }\n}\n\nfunction getLegacyAnalyticsConfig(\n recsConfig: RecommendationEngineConfiguration,\n enabled: boolean\n): AnalyticsConfiguration {\n const analyticsClientMiddleware = (\n event: string,\n payload: AnalyticsPayload\n ) => augmentAnalytics(event, payload, recsConfig);\n\n const defaultAnalyticsConfig: AnalyticsConfiguration = {\n analyticsClientMiddleware,\n enabled,\n ...augmentAnalyticsConfigWithDocument(),\n ...augmentAnalyticsConfigWithAtomicVersion(),\n };\n\n if (recsConfig.analytics) {\n return {\n ...defaultAnalyticsConfig,\n ...recsConfig.analytics,\n analyticsClientMiddleware,\n };\n }\n return defaultAnalyticsConfig;\n}\n\nfunction augmentAnalytics(\n event: string,\n payload: AnalyticsPayload,\n recsConfig: RecommendationEngineConfiguration\n) {\n let result = augmentWithExternalMiddleware(event, payload, recsConfig);\n result = augmentAnalyticsWithAtomicVersion(result);\n return result;\n}\n","import type {RecommendationEngine} from '@coveo/headless/recommendation';\nimport {\n type BaseStore,\n createBaseStore,\n type ResultListInfo,\n setLoadingFlag,\n unsetLoadingFlag,\n} from '../../common/interface/store';\n\ninterface Data {\n loadingFlags: string[];\n iconAssetsPath: string;\n resultList: ResultListInfo | undefined;\n}\n\nexport type RecsStore = BaseStore<Data> & {\n unsetLoadingFlag(loadingFlag: string): void;\n setLoadingFlag(flag: string): void;\n};\n\nexport function createRecsStore(): RecsStore {\n const store = createBaseStore<Data>({\n loadingFlags: [],\n iconAssetsPath: '',\n resultList: undefined,\n });\n\n return {\n ...store,\n\n unsetLoadingFlag(loadingFlag: string) {\n unsetLoadingFlag(store, loadingFlag);\n },\n\n setLoadingFlag(loadingFlag: string) {\n setLoadingFlag(store, loadingFlag);\n },\n\n getUniqueIDFromEngine(engine: RecommendationEngine): string {\n return engine.state.recommendation.searchUid;\n },\n };\n}\n","@import '../../../global/global.pcss';\n\n:host {\n display: block;\n}\n","import {markParentAsReady} from '@/src/utils/init-queue';\nimport {\n RecommendationEngine,\n RecommendationEngineConfiguration,\n loadFieldActions,\n EcommerceDefaultFieldsToInclude,\n buildRecommendationEngine,\n loadRecommendationActions,\n loadSearchConfigurationActions,\n LogLevel as RecsLogLevel,\n} from '@coveo/headless/recommendation';\nimport {\n Component,\n Element,\n h,\n Listen,\n Method,\n Prop,\n Watch,\n State,\n setNonce,\n} from '@stencil/core';\nimport i18next, {i18n} from 'i18next';\nimport {InitializeEvent} from '../../../utils/initialization-utils';\nimport {ArrayProp} from '../../../utils/props-utils';\nimport {CommonBindings} from '../../common/interface/bindings';\nimport {\n StencilBaseAtomicInterface,\n CommonAtomicInterfaceHelper,\n mismatchedInterfaceAndEnginePropError,\n} from '../../common/interface/interface-common-stencil';\nimport {getAnalyticsConfig} from './analytics-config';\nimport {createRecsStore, RecsStore} from './store';\n\nconst FirstRecommendationExecutedFlag = 'firstRecommendationExecuted';\nexport type RecsInitializationOptions = RecommendationEngineConfiguration;\nexport type RecsBindings = CommonBindings<\n RecommendationEngine,\n RecsStore,\n HTMLAtomicRecsInterfaceElement\n>;\n\n/**\n * The `atomic-recs-interface` component is the parent to all other atomic components in a recommendation interface. It handles the headless recommendation engine and localization configurations.\n * @slot default - The default slot where you can add child components to the recommendation interface.\n *\n */\n@Component({\n tag: 'atomic-recs-interface',\n styleUrl: 'atomic-recs-interface.pcss',\n shadow: true,\n})\nexport class AtomicRecsInterface\n implements StencilBaseAtomicInterface<RecommendationEngine>\n{\n private store = createRecsStore();\n private commonInterfaceHelper: CommonAtomicInterfaceHelper<RecommendationEngine>;\n private initialized = false;\n\n @Element() public host!: HTMLAtomicRecsInterfaceElement;\n\n @State() public error?: Error;\n\n /**\n * The recommendation interface [query pipeline](https://docs.coveo.com/en/180/).\n *\n * If the recommendation interface is initialized using [`initializeWithRecommendationEngine`](https://docs.coveo.com/en/atomic/latest/reference/recommendation-components/atomic-recs-interface/#initializewithrecommendationengine), the query pipeline should instead be configured in the target engine.\n */\n @Prop({reflect: true, mutable: true}) public pipeline?: string;\n\n /**\n * The recommendation interface [search hub](https://docs.coveo.com/en/1342/).\n *\n * If the recommendation interface is initialized using [`initializeWithRecommendationEngine`](https://docs.coveo.com/en/atomic/latest/reference/recommendation-components/atomic-recs-interface/#initializewithrecommendationengine), the search hub should instead be configured in the target engine.\n */\n @Prop({reflect: true, mutable: true}) public searchHub?: string;\n\n /**\n * The [tz database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) identifier of the time zone to use to correctly interpret dates in the query expression, facets, and result items.\n * By default, the timezone will be [guessed](https://day.js.org/docs/en/timezone/guessing-user-timezone).\n *\n * Example: \"America/Montreal\"\n */\n @Prop({reflect: true}) public timezone?: string;\n\n /**\n * The recommendation interface headless engine.\n */\n @Prop({mutable: true}) public engine?: RecommendationEngine;\n\n /**\n * Whether analytics should be enabled.\n */\n @Prop({reflect: true}) public analytics = true;\n\n /**\n * The recommendation interface i18next instance.\n */\n @Prop() public i18n: i18n;\n\n /**\n * The severity level of the messages to log in the console.\n */\n @Prop({reflect: true}) public logLevel?: RecsLogLevel;\n\n /**\n * The recommendation interface language.\n */\n @Prop({reflect: true}) public language = 'en';\n\n /**\n * A list of non-default fields to include in the query results.\n *\n * Specify the property as an array using a JSON string representation:\n * ```html\n * <atomic-recs-interface fields-to-include='[\"fieldA\", \"fieldB\"]'></atomic-recs-interface>\n * ```\n */\n @ArrayProp()\n @Prop({mutable: true})\n public fieldsToInclude: string[] | string = '[]';\n\n /**\n * The language assets path. By default, this will be a relative URL pointing to `./lang`.\n *\n * Example: \"/mypublicpath/languages\"\n *\n */\n @Prop({reflect: true}) public languageAssetsPath = './lang';\n\n /**\n * The icon assets path. By default, this will be a relative URL pointing to `./assets`.\n *\n * Example: \"/mypublicpath/icons\"\n *\n */\n @Prop({reflect: true}) public iconAssetsPath = './assets';\n\n /**\n * The value to set the [nonce](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/nonce) attribute to on inline script and style elements generated by this interface and its child components.\n * If your application is served with a Content Security Policy (CSP) that doesn't include the `script-src: 'unsafe-inline'` or `style-src: 'unsafe-inline'` directives,\n * you should ensure that your application server generates a new nonce on every page load and uses the generated value to set this prop and serve the corresponding CSP response headers\n * (i.e., script-src 'nonce-<YOUR_GENERATED_NONCE>' and style-src 'nonce-<YOUR_GENERATED_NONCE>').\n * Otherwise you may see console errors such as\n * - Refused to execute inline script because it violates the following Content Security Policy directive: [...]\n * - Refused to apply inline style because it violates the following Content Security Policy directive: [...].\n * @example:\n * ```html\n * <script nonce=\"<YOUR_GENERATED_NONCE>\">\n * import {setNonce} from '@coveo/atomic';\n * setNonce('<YOUR_GENERATED_NONCE>');\n * </script>\n * ```\n */\n @Prop({reflect: true}) public CspNonce?: string;\n\n private i18Initialized: Promise<void>;\n private componentWillLoadCalledPromise: Promise<void>;\n private componentWillLoadResolver: () => void;\n\n public constructor() {\n this.commonInterfaceHelper = new CommonAtomicInterfaceHelper(\n this,\n 'CoveoAtomicRecs'\n );\n ({\n promise: this.componentWillLoadCalledPromise,\n resolve: this.componentWillLoadResolver,\n } = Promise.withResolvers<void>());\n const {promise, resolve} = Promise.withResolvers<void>();\n this.i18Initialized = promise;\n this.i18n = i18next.createInstance(undefined, resolve);\n }\n\n public get bindings(): RecsBindings {\n return {\n engine: this.engine!,\n i18n: this.i18n,\n store: this.store,\n interfaceElement: this.host,\n };\n }\n\n public connectedCallback() {\n this.store.setLoadingFlag(FirstRecommendationExecutedFlag);\n }\n\n componentWillLoad() {\n if (this.CspNonce) {\n setNonce(this.CspNonce);\n }\n this.componentWillLoadResolver();\n }\n\n /**\n * Initializes the connection with the headless recommendation engine using options for `accessToken` (required), `organizationId` (required), `environment` (defaults to `prod`), and `renewAccessToken`.\n */\n @Method() public initialize(options: RecsInitializationOptions) {\n return this.internalInitialization(() => this.initEngine(options));\n }\n\n /**\n * Initializes the connection with an already preconfigured headless recommendation engine.\n * This bypasses the properties set on the component, such as analytics, recommendation, searchHub, language, timezone & logLevel.\n */\n @Method() public initializeWithRecommendationEngine(\n engine: RecommendationEngine\n ) {\n if (this.pipeline && this.pipeline !== engine.state.pipeline) {\n console.warn(\n mismatchedInterfaceAndEnginePropError(\n 'recommendation',\n 'query pipeline'\n )\n );\n }\n if (this.searchHub && this.searchHub !== engine.state.searchHub) {\n console.warn(\n mismatchedInterfaceAndEnginePropError('recommendation', 'search hub')\n );\n }\n return this.internalInitialization(() => (this.engine = engine));\n }\n\n /**\n *\n * Fetches new recommendations.\n */\n @Method() public async getRecommendations() {\n if (!this.commonInterfaceHelper.engineIsCreated(this.engine)) {\n return;\n }\n\n if (!this.initialized) {\n console.error(\n 'You have to wait until the \"initialize\" promise is fulfilled before executing a search.',\n this.host\n );\n return;\n }\n\n this.engine!.dispatch(\n loadRecommendationActions(this.engine!).getRecommendations()\n );\n }\n\n @Watch('iconAssetsPath')\n public updateIconAssetsPath() {\n this.store.state.iconAssetsPath = this.iconAssetsPath;\n }\n\n @Listen('atomic/initializeComponent')\n public handleInitialization(event: InitializeEvent) {\n this.commonInterfaceHelper.onComponentInitializing(event);\n }\n\n @Watch('language')\n public updateLanguage() {\n if (!this.commonInterfaceHelper.engineIsCreated(this.engine)) {\n return;\n }\n\n const {updateSearchConfiguration} = loadSearchConfigurationActions(\n this.engine\n );\n this.engine.dispatch(\n updateSearchConfiguration({\n locale: this.language,\n })\n );\n return this.commonInterfaceHelper.onLanguageChange();\n }\n\n @Watch('analytics')\n public toggleAnalytics() {\n if (!this.commonInterfaceHelper.engineIsCreated(this.engine)) {\n return;\n }\n\n this.commonInterfaceHelper.onAnalyticsChange();\n }\n\n public registerFieldsToInclude() {\n const fields = EcommerceDefaultFieldsToInclude.concat(\n [...this.fieldsToInclude].filter((field) => !!field)\n );\n this.engine!.dispatch(\n loadFieldActions(this.engine!).registerFieldsToInclude(fields)\n );\n }\n\n private async internalInitialization(initEngine: () => void) {\n await this.componentWillLoadCalledPromise;\n await Promise.all([\n this.commonInterfaceHelper.onInitialization(initEngine),\n this.i18Initialized,\n ]);\n await this.updateLanguage();\n markParentAsReady(this.host);\n this.pipeline = this.engine!.state.pipeline;\n this.searchHub = this.engine!.state.searchHub;\n this.store.unsetLoadingFlag(FirstRecommendationExecutedFlag);\n this.initialized = true;\n }\n\n private initEngine(options: RecsInitializationOptions) {\n const analyticsConfig = getAnalyticsConfig(options, this.analytics);\n try {\n this.engine = buildRecommendationEngine({\n configuration: {\n pipeline: this.pipeline,\n searchHub: this.searchHub ?? 'default',\n locale: this.language,\n timezone: this.timezone,\n ...options,\n analytics: analyticsConfig,\n },\n loggerOptions: {\n level: this.logLevel,\n },\n });\n } catch (error) {\n this.error = error as Error;\n throw error;\n }\n }\n\n public render() {\n return this.engine && <slot></slot>;\n }\n}\n"],"version":3}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"atomic-result-localized-text.js","mappings":";;;;;;;;;;;;;;;;;MA+BaA,2BAAyB;;;;;;;QAYjB,UAAK,GAA2B,EAAE,CAAC;;;qBAAH,EAAE;;;IAMrD,MAAM;QACJ,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE;YAC1C,GAAG,IAAI,CAAC,gBAAgB,EAAE;YAC1B,GAAG,IAAI,CAAC,eAAe,EAAE;SAC1B,CAAC,CAAC;KACJ;IAEO,gBAAgB;QACtB,MAAM,GAAG,GAA4B,EAAE,CAAC;QACxC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YACxC,OAAO,GAAG,CAAC;SACZ;QACD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,aAAa,CAAC;YAC5D,MAAM,aAAa,GAAG,sBAAsB,CAAC,iBAAiB,CAC5D,IAAI,CAAC,MAAM,EACX,SAAS,CACV,CAAC;YACF,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,EAAE;gBACrC,GAAG,CAAC,aAAa,CAAC,GAAG,aAAa,CAAC;aACpC;SACF,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;KACZ;IAEO,eAAe;QACrB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,OAAO,EAAE,CAAC;SACX;QACD,OAAO;YACL,KAAK,EACF,sBAAsB,CAAC,iBAAiB,CACvC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,UAAW,CACN,IAAI,CAAC;SACpB,CAAC;KACH;;;;;;;AArD4B;IAA5B,kBAAkB,EAAE;6DAA4B;AAGxB;IAAxB,aAAa,EAAE;2DAAyB;AAQtB;IAAV,OAAO,EAAE;0DAAoC;;;;;;;;;;;;;;;;;;;;","names":["AtomicResultLocalizedText"],"sources":["src/components/search/result-template-components/atomic-result-localized-text/atomic-result-localized-text.ts"],"sourcesContent":["import {isNullOrUndefined} from '@coveo/bueno';\nimport {Result, ResultTemplatesHelpers} from '@coveo/headless';\nimport {Component, Prop, State} from '@stencil/core';\nimport {\n InitializableComponent,\n InitializeBindings,\n} from '../../../../utils/initialization-utils';\nimport {MapProp} from '../../../../utils/props-utils';\nimport {Bindings} from '../../atomic-search-interface/atomic-search-interface';\nimport {ResultContext} from '../result-template-decorators';\n\n/**\n * The `atomic-result-localized-text` component renders a target i18n localized string using the values of a target field.\n *\n * Given this i18n configuration:\n * ```\n * searchInterface.i18n.addResourceBundle('en', 'translation', {\n * classic_book_advert: 'Classic book from {{name}}',\n * });\n * ```\n *\n * The component could be configured in such a way to replace `{{name}}` with the `author` field value from the result item:\n * ```\n * <atomic-result-localized-text locale-key=\"classic_book_advert\" field-author=\"name\"></atomic-result-localized-text>\n * ```\n *\n * @MapProp name: field;attr: field;docs: The field from which to extract the target string and the variable used to map it to the target i18n parameter. For example, the following configuration extracts the value of `author` from a result, and assign it to the i18n parameter `name`: `field-author=\"name\"`;type: Record<string, string> ;default: {}\n */\n@Component({\n tag: 'atomic-result-localized-text',\n})\nexport class AtomicResultLocalizedText implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n @State() public error!: Error;\n\n @ResultContext() private result!: Result;\n /**\n * The i18n translation key.\n */\n @Prop() localeKey!: string;\n /**\n * The field value to dynamically evaluate.\n */\n @Prop() @MapProp() field: Record<string, string> = {};\n /**\n * The numerical field value used to determine whether to use the singular or plural value of a translation.\n * */\n @Prop() fieldCount?: string;\n\n render() {\n return this.bindings.i18n.t(this.localeKey, {\n ...this.parseFieldValues(),\n ...this.parseFieldCount(),\n });\n }\n\n private parseFieldValues() {\n const ret: Record<string, unknown> = {};\n if (Object.keys(this.field).length === 0) {\n return ret;\n }\n Object.entries(this.field).forEach(([fieldName, i18nParameter]) => {\n const fieldValueRaw = ResultTemplatesHelpers.getResultProperty(\n this.result,\n fieldName\n );\n if (!isNullOrUndefined(fieldValueRaw)) {\n ret[i18nParameter] = fieldValueRaw;\n }\n });\n\n return ret;\n }\n\n private parseFieldCount() {\n if (!this.fieldCount) {\n return {};\n }\n return {\n count:\n (ResultTemplatesHelpers.getResultProperty(\n this.result,\n this.fieldCount!\n ) as number) ?? 1,\n };\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"atomic-result-localized-text.js","mappings":";;;;;;;;;;;;;;;;;MA+BaA,2BAAyB;;;;;;;QAYjB,UAAK,GAA2B,EAAE,CAAC;;;qBAAH,EAAE;;;IAMrD,MAAM;QACJ,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE;YAC1C,GAAG,IAAI,CAAC,gBAAgB,EAAE;YAC1B,GAAG,IAAI,CAAC,eAAe,EAAE;SAC1B,CAAC,CAAC;KACJ;IAEO,gBAAgB;QACtB,MAAM,GAAG,GAA4B,EAAE,CAAC;QACxC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YACxC,OAAO,GAAG,CAAC;SACZ;QACD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,aAAa,CAAC;YAC5D,MAAM,aAAa,GAAG,sBAAsB,CAAC,iBAAiB,CAC5D,IAAI,CAAC,MAAM,EACX,SAAS,CACV,CAAC;YACF,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,EAAE;gBACrC,GAAG,CAAC,aAAa,CAAC,GAAG,aAAa,CAAC;aACpC;SACF,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;KACZ;IAEO,eAAe;QACrB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,OAAO,EAAE,CAAC;SACX;QACD,OAAO;YACL,KAAK,EACF,sBAAsB,CAAC,iBAAiB,CACvC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,UAAW,CACN,IAAI,CAAC;SACpB,CAAC;KACH;;;;;;;AArD4B;IAA5B,kBAAkB,EAAE;6DAA4B;AAGxB;IAAxB,aAAa,EAAE;2DAAyB;AAQtB;IAAV,OAAO,EAAE;0DAAoC;;;;;;;;;;;;;;;;;;;;","names":["AtomicResultLocalizedText"],"sources":["src/components/search/result-template-components/atomic-result-localized-text/atomic-result-localized-text.ts"],"sourcesContent":["import {isNullOrUndefined} from '@coveo/bueno';\nimport {type Result, ResultTemplatesHelpers} from '@coveo/headless';\nimport {Component, Prop, State} from '@stencil/core';\nimport {\n type InitializableComponent,\n InitializeBindings,\n} from '../../../../utils/initialization-utils';\nimport {MapProp} from '../../../../utils/props-utils';\nimport type {Bindings} from '../../atomic-search-interface/atomic-search-interface';\nimport {ResultContext} from '../result-template-decorators';\n\n/**\n * The `atomic-result-localized-text` component renders a target i18n localized string using the values of a target field.\n *\n * Given this i18n configuration:\n * ```\n * searchInterface.i18n.addResourceBundle('en', 'translation', {\n * classic_book_advert: 'Classic book from {{name}}',\n * });\n * ```\n *\n * The component could be configured in such a way to replace `{{name}}` with the `author` field value from the result item:\n * ```\n * <atomic-result-localized-text locale-key=\"classic_book_advert\" field-author=\"name\"></atomic-result-localized-text>\n * ```\n *\n * @MapProp name: field;attr: field;docs: The field from which to extract the target string and the variable used to map it to the target i18n parameter. For example, the following configuration extracts the value of `author` from a result, and assign it to the i18n parameter `name`: `field-author=\"name\"`;type: Record<string, string> ;default: {}\n */\n@Component({\n tag: 'atomic-result-localized-text',\n})\nexport class AtomicResultLocalizedText implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n @State() public error!: Error;\n\n @ResultContext() private result!: Result;\n /**\n * The i18n translation key.\n */\n @Prop() localeKey!: string;\n /**\n * The field value to dynamically evaluate.\n */\n @Prop() @MapProp() field: Record<string, string> = {};\n /**\n * The numerical field value used to determine whether to use the singular or plural value of a translation.\n * */\n @Prop() fieldCount?: string;\n\n render() {\n return this.bindings.i18n.t(this.localeKey, {\n ...this.parseFieldValues(),\n ...this.parseFieldCount(),\n });\n }\n\n private parseFieldValues() {\n const ret: Record<string, unknown> = {};\n if (Object.keys(this.field).length === 0) {\n return ret;\n }\n Object.entries(this.field).forEach(([fieldName, i18nParameter]) => {\n const fieldValueRaw = ResultTemplatesHelpers.getResultProperty(\n this.result,\n fieldName\n );\n if (!isNullOrUndefined(fieldValueRaw)) {\n ret[i18nParameter] = fieldValueRaw;\n }\n });\n\n return ret;\n }\n\n private parseFieldCount() {\n if (!this.fieldCount) {\n return {};\n }\n return {\n count:\n (ResultTemplatesHelpers.getResultProperty(\n this.result,\n this.fieldCount!\n ) as number) ?? 1,\n };\n }\n}\n"],"version":3}
|
|
@@ -56,7 +56,7 @@ const Label = (_, children) => {
|
|
|
56
56
|
function convertChoicesToNumbers(choices) {
|
|
57
57
|
return choices.split(',').map((choice) => {
|
|
58
58
|
const parsedChoice = parseInt(choice);
|
|
59
|
-
if (isNaN(parsedChoice)) {
|
|
59
|
+
if (Number.isNaN(parsedChoice)) {
|
|
60
60
|
throw new ChoiceIsNaNError(choice);
|
|
61
61
|
}
|
|
62
62
|
if (parsedChoice <= 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"atomic-results-per-page.js","mappings":"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","names":["AtomicResultsPerPage"],"sources":["src/components/common/items-per-page/error.ts","src/components/common/items-per-page/stencil-choices.tsx","src/components/common/items-per-page/stencil-label.tsx","src/components/common/items-per-page/validate.ts","src/components/search/atomic-results-per-page/atomic-results-per-page.pcss?tag=atomic-results-per-page&encapsulation=shadow","src/components/search/atomic-results-per-page/atomic-results-per-page.tsx"],"sourcesContent":["export class ChoiceIsNaNError extends Error {\n constructor(choice: string) {\n super(\n `The choice value \"${choice}\" from the \"choicesDisplayed\" option is not a number.`\n );\n this.name = 'ChoiceIsNaNError';\n }\n}\n\nexport class InitialChoiceNotInChoicesError extends Error {\n constructor(initialChoice: number, choices: number[]) {\n super(\n `The initial choice value \"${initialChoice}\" is not included in the choices ${choices}.`\n );\n this.name = 'InitialChoiceNotInChoicesError';\n }\n}\n\nexport class ChoiceIsNonPositiveError extends Error {\n constructor(choice: number) {\n super(\n `The choice value \"${choice}\" from the \"choicesDisplayed\" option is not positive (<= 0).`\n );\n this.name = 'ChoiceIsNonPositiveError';\n }\n}\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {RadioButton} from '../stencil-radio-button';\n\ninterface ChoicesProps {\n label: string;\n groupName: string;\n pageSize: number;\n choices: number[];\n lang: string;\n scrollToTopEvent: () => {};\n setItemSize: (size: number) => void;\n focusOnFirstResultAfterNextSearch: () => Promise<void> | undefined;\n focusOnNextNewResult: () => void | undefined;\n}\n\nexport const Choices: FunctionalComponent<ChoicesProps> = ({\n label,\n groupName,\n pageSize,\n choices,\n lang,\n scrollToTopEvent,\n setItemSize,\n focusOnFirstResultAfterNextSearch,\n focusOnNextNewResult,\n}) => {\n const focusOnProperResultDependingOnChoice = (choice: number) => {\n if (choice < pageSize) {\n focusOnFirstResultAfterNextSearch()?.then(() => scrollToTopEvent());\n } else if (choice > pageSize) {\n focusOnNextNewResult();\n }\n };\n\n return (\n <div\n part=\"buttons\"\n role=\"radiogroup\"\n aria-label={label}\n class=\"flex flex-wrap gap-2\"\n >\n {choices.map((choice) => {\n const isSelected = pageSize === choice;\n const parts = ['button'];\n if (isSelected) {\n parts.push('active-button');\n }\n const text = choice.toLocaleString(lang);\n return (\n <RadioButton\n key={'choice'}\n groupName={groupName}\n style=\"outline-neutral\"\n checked={isSelected}\n ariaLabel={text}\n onChecked={() => {\n focusOnProperResultDependingOnChoice(choice);\n setItemSize(choice);\n }}\n class=\"btn-page focus-visible:bg-neutral-light\"\n part={parts.join(' ')}\n text={text}\n selectWhenFocused={false}\n ></RadioButton>\n );\n })}\n </div>\n );\n};\n","import {FunctionalComponent, h} from '@stencil/core';\n\nexport const Label: FunctionalComponent = (_, children) => {\n return (\n <span\n part=\"label\"\n class=\"text-on-background mr-3 self-start text-lg leading-10\"\n aria-hidden=\"true\"\n >\n {children}\n </span>\n );\n};\n","import {\n ChoiceIsNaNError,\n ChoiceIsNonPositiveError,\n InitialChoiceNotInChoicesError,\n} from './error';\n\nexport function convertChoicesToNumbers(choices: string) {\n return choices.split(',').map((choice) => {\n const parsedChoice = parseInt(choice);\n if (isNaN(parsedChoice)) {\n throw new ChoiceIsNaNError(choice);\n }\n if (parsedChoice <= 0) {\n throw new ChoiceIsNonPositiveError(parsedChoice);\n }\n\n return parsedChoice;\n });\n}\n\nexport function validateInitialChoice(\n initialChoice: number,\n choices: number[]\n): number {\n if (!choices.includes(initialChoice)) {\n throw new InitialChoiceNotInChoicesError(initialChoice, choices);\n }\n\n return initialChoice;\n}\n","@import '../../../global/global.pcss';\n","import {\n ResultsPerPage,\n buildResultsPerPage,\n ResultsPerPageState,\n buildSearchStatus,\n SearchStatus,\n SearchStatusState,\n} from '@coveo/headless';\nimport {Component, Event, EventEmitter, h, Prop, State} from '@stencil/core';\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 ChoiceIsNaNError,\n InitialChoiceNotInChoicesError,\n} from '../../common/items-per-page/error';\nimport {Choices} from '../../common/items-per-page/stencil-choices';\nimport {Label} from '../../common/items-per-page/stencil-label';\nimport {\n convertChoicesToNumbers,\n validateInitialChoice,\n} from '../../common/items-per-page/validate';\nimport {PagerGuard} from '../../common/pager/stencil-pager-guard';\nimport {FieldsetGroup} from '../../common/stencil-fieldset-group';\nimport {Bindings} from '../atomic-search-interface/atomic-search-interface';\n\n/**\n * The `atomic-results-per-page` component determines how many results to display per page.\n *\n * @part label - The \"Results per page\" label.\n * @part buttons - The list of buttons.\n * @part button - The result per page button.\n * @part active-button - The active result per page button.\n */\n@Component({\n tag: 'atomic-results-per-page',\n styleUrl: 'atomic-results-per-page.pcss',\n shadow: true,\n})\nexport class AtomicResultsPerPage implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n private resultPerPage!: ResultsPerPage;\n public searchStatus!: SearchStatus;\n private choices!: number[];\n private readonly radioGroupName = randomID('atomic-results-per-page-');\n\n @State()\n @BindStateToController('resultPerPage')\n public resultPerPageState!: ResultsPerPageState;\n @BindStateToController('searchStatus')\n @State()\n private searchStatusState!: SearchStatusState;\n @State() public error!: Error;\n @State() private isAppLoaded = false;\n\n /**\n * A list of choices for the number of results to display per page, separated by commas.\n */\n @Prop({reflect: true}) choicesDisplayed = '10,25,50,100';\n /**\n * The initial selection for the number of result per page. This should be part of the `choicesDisplayed` option. By default, this is set to the first value in `choicesDisplayed`.\n * @type {number}\n */\n @Prop({mutable: true, reflect: true}) initialChoice?: number;\n\n @Event({\n eventName: 'atomic/scrollToTop',\n })\n private scrollToTopEvent!: EventEmitter;\n\n public initialize() {\n try {\n this.choices = convertChoicesToNumbers(this.choicesDisplayed);\n this.initialChoice = this.initialChoice ?? this.choices[0];\n validateInitialChoice(this.initialChoice, this.choices);\n } catch (error) {\n if (\n error instanceof ChoiceIsNaNError ||\n error instanceof InitialChoiceNotInChoicesError\n ) {\n this.bindings.engine.logger.error(error.message, this);\n throw error;\n }\n }\n\n this.searchStatus = buildSearchStatus(this.bindings.engine);\n this.resultPerPage = buildResultsPerPage(this.bindings.engine, {\n initialState: {numberOfResults: this.initialChoice},\n });\n createAppLoadedListener(this.bindings.store, (isAppLoaded) => {\n this.isAppLoaded = isAppLoaded;\n });\n }\n\n private get label() {\n return this.bindings.i18n.t('results-per-page');\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 <div class=\"flex items-center\" role=\"toolbar\" aria-label={this.label}>\n <Label>{this.label}</Label>\n <FieldsetGroup label={this.label}>\n <Choices\n label={this.label}\n groupName={this.radioGroupName}\n pageSize={this.resultPerPageState.numberOfResults}\n choices={this.choices}\n lang={this.bindings.i18n.language}\n scrollToTopEvent={this.scrollToTopEvent.emit}\n setItemSize={this.resultPerPage.set}\n focusOnFirstResultAfterNextSearch={() =>\n this.bindings.store.state.resultList?.focusOnFirstResultAfterNextSearch()\n }\n focusOnNextNewResult={() =>\n this.bindings.store.state.resultList?.focusOnNextNewResult()\n }\n ></Choices>\n </FieldsetGroup>\n </div>\n </PagerGuard>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"atomic-results-per-page.js","mappings":"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","names":["AtomicResultsPerPage"],"sources":["src/components/common/items-per-page/error.ts","src/components/common/items-per-page/stencil-choices.tsx","src/components/common/items-per-page/stencil-label.tsx","src/components/common/items-per-page/validate.ts","src/components/search/atomic-results-per-page/atomic-results-per-page.pcss?tag=atomic-results-per-page&encapsulation=shadow","src/components/search/atomic-results-per-page/atomic-results-per-page.tsx"],"sourcesContent":["export class ChoiceIsNaNError extends Error {\n constructor(choice: string) {\n super(\n `The choice value \"${choice}\" from the \"choicesDisplayed\" option is not a number.`\n );\n this.name = 'ChoiceIsNaNError';\n }\n}\n\nexport class InitialChoiceNotInChoicesError extends Error {\n constructor(initialChoice: number, choices: number[]) {\n super(\n `The initial choice value \"${initialChoice}\" is not included in the choices ${choices}.`\n );\n this.name = 'InitialChoiceNotInChoicesError';\n }\n}\n\nexport class ChoiceIsNonPositiveError extends Error {\n constructor(choice: number) {\n super(\n `The choice value \"${choice}\" from the \"choicesDisplayed\" option is not positive (<= 0).`\n );\n this.name = 'ChoiceIsNonPositiveError';\n }\n}\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {RadioButton} from '../stencil-radio-button';\n\ninterface ChoicesProps {\n label: string;\n groupName: string;\n pageSize: number;\n choices: number[];\n lang: string;\n scrollToTopEvent: () => {};\n setItemSize: (size: number) => void;\n focusOnFirstResultAfterNextSearch: () => Promise<void> | undefined;\n focusOnNextNewResult: () => void | undefined;\n}\n\nexport const Choices: FunctionalComponent<ChoicesProps> = ({\n label,\n groupName,\n pageSize,\n choices,\n lang,\n scrollToTopEvent,\n setItemSize,\n focusOnFirstResultAfterNextSearch,\n focusOnNextNewResult,\n}) => {\n const focusOnProperResultDependingOnChoice = (choice: number) => {\n if (choice < pageSize) {\n focusOnFirstResultAfterNextSearch()?.then(() => scrollToTopEvent());\n } else if (choice > pageSize) {\n focusOnNextNewResult();\n }\n };\n\n return (\n <div\n part=\"buttons\"\n role=\"radiogroup\"\n aria-label={label}\n class=\"flex flex-wrap gap-2\"\n >\n {choices.map((choice) => {\n const isSelected = pageSize === choice;\n const parts = ['button'];\n if (isSelected) {\n parts.push('active-button');\n }\n const text = choice.toLocaleString(lang);\n return (\n <RadioButton\n key={'choice'}\n groupName={groupName}\n style=\"outline-neutral\"\n checked={isSelected}\n ariaLabel={text}\n onChecked={() => {\n focusOnProperResultDependingOnChoice(choice);\n setItemSize(choice);\n }}\n class=\"btn-page focus-visible:bg-neutral-light\"\n part={parts.join(' ')}\n text={text}\n selectWhenFocused={false}\n ></RadioButton>\n );\n })}\n </div>\n );\n};\n","import {FunctionalComponent, h} from '@stencil/core';\n\nexport const Label: FunctionalComponent = (_, children) => {\n return (\n <span\n part=\"label\"\n class=\"text-on-background mr-3 self-start text-lg leading-10\"\n aria-hidden=\"true\"\n >\n {children}\n </span>\n );\n};\n","import {\n ChoiceIsNaNError,\n ChoiceIsNonPositiveError,\n InitialChoiceNotInChoicesError,\n} from './error';\n\nexport function convertChoicesToNumbers(choices: string) {\n return choices.split(',').map((choice) => {\n const parsedChoice = parseInt(choice);\n if (Number.isNaN(parsedChoice)) {\n throw new ChoiceIsNaNError(choice);\n }\n if (parsedChoice <= 0) {\n throw new ChoiceIsNonPositiveError(parsedChoice);\n }\n\n return parsedChoice;\n });\n}\n\nexport function validateInitialChoice(\n initialChoice: number,\n choices: number[]\n): number {\n if (!choices.includes(initialChoice)) {\n throw new InitialChoiceNotInChoicesError(initialChoice, choices);\n }\n\n return initialChoice;\n}\n","@import '../../../global/global.pcss';\n","import {\n ResultsPerPage,\n buildResultsPerPage,\n ResultsPerPageState,\n buildSearchStatus,\n SearchStatus,\n SearchStatusState,\n} from '@coveo/headless';\nimport {Component, Event, EventEmitter, h, Prop, State} from '@stencil/core';\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 ChoiceIsNaNError,\n InitialChoiceNotInChoicesError,\n} from '../../common/items-per-page/error';\nimport {Choices} from '../../common/items-per-page/stencil-choices';\nimport {Label} from '../../common/items-per-page/stencil-label';\nimport {\n convertChoicesToNumbers,\n validateInitialChoice,\n} from '../../common/items-per-page/validate';\nimport {PagerGuard} from '../../common/pager/stencil-pager-guard';\nimport {FieldsetGroup} from '../../common/stencil-fieldset-group';\nimport {Bindings} from '../atomic-search-interface/atomic-search-interface';\n\n/**\n * The `atomic-results-per-page` component determines how many results to display per page.\n *\n * @part label - The \"Results per page\" label.\n * @part buttons - The list of buttons.\n * @part button - The result per page button.\n * @part active-button - The active result per page button.\n */\n@Component({\n tag: 'atomic-results-per-page',\n styleUrl: 'atomic-results-per-page.pcss',\n shadow: true,\n})\nexport class AtomicResultsPerPage implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n private resultPerPage!: ResultsPerPage;\n public searchStatus!: SearchStatus;\n private choices!: number[];\n private readonly radioGroupName = randomID('atomic-results-per-page-');\n\n @State()\n @BindStateToController('resultPerPage')\n public resultPerPageState!: ResultsPerPageState;\n @BindStateToController('searchStatus')\n @State()\n private searchStatusState!: SearchStatusState;\n @State() public error!: Error;\n @State() private isAppLoaded = false;\n\n /**\n * A list of choices for the number of results to display per page, separated by commas.\n */\n @Prop({reflect: true}) choicesDisplayed = '10,25,50,100';\n /**\n * The initial selection for the number of result per page. This should be part of the `choicesDisplayed` option. By default, this is set to the first value in `choicesDisplayed`.\n * @type {number}\n */\n @Prop({mutable: true, reflect: true}) initialChoice?: number;\n\n @Event({\n eventName: 'atomic/scrollToTop',\n })\n private scrollToTopEvent!: EventEmitter;\n\n public initialize() {\n try {\n this.choices = convertChoicesToNumbers(this.choicesDisplayed);\n this.initialChoice = this.initialChoice ?? this.choices[0];\n validateInitialChoice(this.initialChoice, this.choices);\n } catch (error) {\n if (\n error instanceof ChoiceIsNaNError ||\n error instanceof InitialChoiceNotInChoicesError\n ) {\n this.bindings.engine.logger.error(error.message, this);\n throw error;\n }\n }\n\n this.searchStatus = buildSearchStatus(this.bindings.engine);\n this.resultPerPage = buildResultsPerPage(this.bindings.engine, {\n initialState: {numberOfResults: this.initialChoice},\n });\n createAppLoadedListener(this.bindings.store, (isAppLoaded) => {\n this.isAppLoaded = isAppLoaded;\n });\n }\n\n private get label() {\n return this.bindings.i18n.t('results-per-page');\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 <div class=\"flex items-center\" role=\"toolbar\" aria-label={this.label}>\n <Label>{this.label}</Label>\n <FieldsetGroup label={this.label}>\n <Choices\n label={this.label}\n groupName={this.radioGroupName}\n pageSize={this.resultPerPageState.numberOfResults}\n choices={this.choices}\n lang={this.bindings.i18n.language}\n scrollToTopEvent={this.scrollToTopEvent.emit}\n setItemSize={this.resultPerPage.set}\n focusOnFirstResultAfterNextSearch={() =>\n this.bindings.store.state.resultList?.focusOnFirstResultAfterNextSearch()\n }\n focusOnNextNewResult={() =>\n this.bindings.store.state.resultList?.focusOnNextNewResult()\n }\n ></Choices>\n </FieldsetGroup>\n </div>\n </PagerGuard>\n );\n }\n}\n"],"version":3}
|
|
@@ -286,7 +286,7 @@ const AtomicSearchBox$1 = /*@__PURE__*/ proxyCustomElement(class AtomicSearchBox
|
|
|
286
286
|
}
|
|
287
287
|
this.searchBox.submit();
|
|
288
288
|
}
|
|
289
|
-
onKeyDown(e) {
|
|
289
|
+
async onKeyDown(e) {
|
|
290
290
|
if (this.isSearchDisabledForEndUser(this.searchBoxState.value)) {
|
|
291
291
|
return;
|
|
292
292
|
}
|
|
@@ -299,12 +299,12 @@ const AtomicSearchBox$1 = /*@__PURE__*/ proxyCustomElement(class AtomicSearchBox
|
|
|
299
299
|
break;
|
|
300
300
|
case 'ArrowDown':
|
|
301
301
|
e.preventDefault();
|
|
302
|
-
this.suggestionManager.focusNextValue();
|
|
302
|
+
await this.suggestionManager.focusNextValue();
|
|
303
303
|
this.announceNewActiveSuggestionToScreenReader();
|
|
304
304
|
break;
|
|
305
305
|
case 'ArrowUp':
|
|
306
306
|
e.preventDefault();
|
|
307
|
-
this.suggestionManager.focusPreviousValue();
|
|
307
|
+
await this.suggestionManager.focusPreviousValue();
|
|
308
308
|
this.announceNewActiveSuggestionToScreenReader();
|
|
309
309
|
break;
|
|
310
310
|
case 'ArrowRight':
|
|
@@ -422,18 +422,18 @@ const AtomicSearchBox$1 = /*@__PURE__*/ proxyCustomElement(class AtomicSearchBox
|
|
|
422
422
|
if (!this.suggestionManager.suggestions.length) {
|
|
423
423
|
this.registerSearchboxSuggestionEvents();
|
|
424
424
|
}
|
|
425
|
-
return (h(Host, { key: '
|
|
426
|
-
h(SearchBoxWrapper, { key: '
|
|
425
|
+
return (h(Host, { key: 'e798bd30adce545de62eada41b8ab5b93ff5a80b' }, this.renderAbsolutePositionSpacer(), [
|
|
426
|
+
h(SearchBoxWrapper, { key: '9d50eeb97bdd2c6feb03252cc888877310ac5696', disabled: isDisabled, onFocusout: (event) => {
|
|
427
427
|
if (!isFocusingOut(event)) {
|
|
428
428
|
return;
|
|
429
429
|
}
|
|
430
430
|
this.suggestionManager.clearSuggestions();
|
|
431
431
|
this.isExpanded = false;
|
|
432
|
-
} }, this.renderTextBox(searchLabel), h(SubmitButton, { key: '
|
|
432
|
+
} }, this.renderTextBox(searchLabel), h(SubmitButton, { key: '34d3de5a9bc2ed8563163fdeeabfa86fbc2b03ed', bindings: this.bindings, disabled: isDisabled, onClick: () => {
|
|
433
433
|
this.searchBox.submit();
|
|
434
434
|
this.suggestionManager.clearSuggestions();
|
|
435
435
|
} }), this.renderSuggestions()),
|
|
436
|
-
!this.suggestionManager.suggestions.length && (h("slot", { key: '
|
|
436
|
+
!this.suggestionManager.suggestions.length && (h("slot", { key: 'ed8818d8e561beabb520d75aca589f96aeb408cf' }, h("atomic-search-box-recent-queries", { key: 'f598266d6fc8a2e38757fb6a4afc174fd14ceb0b' }), h("atomic-search-box-query-suggestions", { key: 'd35ced56404ff5cc2f227349b8a868da5b594029' }))),
|
|
437
437
|
]));
|
|
438
438
|
}
|
|
439
439
|
get host() { return this; }
|