@coveo/atomic 3.35.0-pre.67ccca567a → 3.35.0-pre.8ec8876ceb
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/atomic.esm.js.map +1 -1
- package/dist/atomic/components/_index.d.ts +0 -2
- package/dist/atomic/components/_index.js +20 -22
- package/dist/atomic/components/atomic-breadbox.js +18 -0
- package/dist/atomic/components/atomic-breadbox.js.map +1 -1
- package/dist/atomic/components/atomic-category-facet.js +34 -17
- package/dist/atomic/components/atomic-category-facet.js.map +1 -1
- package/dist/atomic/components/atomic-color-facet.js +3 -0
- package/dist/atomic/components/atomic-color-facet.js.map +1 -1
- package/dist/atomic/components/atomic-did-you-mean.js +12 -1
- package/dist/atomic/components/atomic-did-you-mean.js.map +1 -1
- package/dist/atomic/components/atomic-facet.js +6 -0
- package/dist/atomic/components/atomic-facet.js.map +1 -1
- package/dist/atomic/components/atomic-field-condition.js +1 -1
- package/dist/atomic/components/atomic-field-condition.js.map +1 -1
- package/dist/atomic/components/atomic-generated-answer.js +1 -1
- package/dist/atomic/components/atomic-generated-answer.js.map +1 -1
- package/dist/atomic/components/atomic-insight-generated-answer.js +1 -1
- package/dist/atomic/components/atomic-insight-generated-answer.js.map +1 -1
- package/dist/atomic/components/atomic-insight-pager.js +5 -5
- package/dist/atomic/components/atomic-insight-pager.js.map +1 -1
- package/dist/atomic/components/atomic-insight-query-summary.js +9 -0
- package/dist/atomic/components/atomic-insight-query-summary.js.map +1 -1
- package/dist/atomic/components/atomic-insight-result-action.js +2 -2
- package/dist/atomic/components/atomic-insight-result-action.js.map +1 -1
- package/dist/atomic/components/atomic-insight-result-attach-to-case-action.js +2 -2
- package/dist/atomic/components/atomic-insight-result-attach-to-case-action.js.map +1 -1
- package/dist/atomic/components/atomic-insight-result-attach-to-case-indicator.js +2 -2
- package/dist/atomic/components/atomic-insight-result-attach-to-case-indicator.js.map +1 -1
- package/dist/atomic/components/atomic-insight-result-quickview-action.js +2 -2
- package/dist/atomic/components/atomic-insight-result-quickview-action.js.map +1 -1
- package/dist/atomic/components/atomic-insight-search-box.js +41 -2
- package/dist/atomic/components/atomic-insight-search-box.js.map +1 -1
- package/dist/atomic/components/atomic-insight-user-actions-session2.js +3 -0
- package/dist/atomic/components/atomic-insight-user-actions-session2.js.map +1 -1
- package/dist/atomic/components/atomic-ipx-result-link.js +2 -2
- package/dist/atomic/components/atomic-ipx-result-link.js.map +1 -1
- package/dist/atomic/components/atomic-load-more-results.js +13 -1
- package/dist/atomic/components/atomic-load-more-results.js.map +1 -1
- package/dist/atomic/components/atomic-no-results.js +3 -0
- package/dist/atomic/components/atomic-no-results.js.map +1 -1
- package/dist/atomic/components/atomic-quickview-modal2.js +4 -1
- package/dist/atomic/components/atomic-quickview-modal2.js.map +1 -1
- package/dist/atomic/components/atomic-quickview.js +2 -2
- package/dist/atomic/components/atomic-quickview.js.map +1 -1
- package/dist/atomic/components/atomic-recs-interface.js +1 -1
- package/dist/atomic/components/atomic-refine-modal2.js +12 -0
- package/dist/atomic/components/atomic-refine-modal2.js.map +1 -1
- package/dist/atomic/components/atomic-refine-toggle.js +6 -0
- package/dist/atomic/components/atomic-refine-toggle.js.map +1 -1
- package/dist/atomic/components/atomic-result-badge.js +1 -1
- package/dist/atomic/components/atomic-result-badge.js.map +1 -1
- package/dist/atomic/components/atomic-result-children.js +2 -2
- package/dist/atomic/components/atomic-result-children.js.map +1 -1
- package/dist/atomic/components/atomic-result-date.js +1 -1
- package/dist/atomic/components/atomic-result-date.js.map +1 -1
- package/dist/atomic/components/atomic-result-fields-list.js +2 -2
- package/dist/atomic/components/atomic-result-fields-list.js.map +1 -1
- package/dist/atomic/components/atomic-result-html.js +1 -1
- package/dist/atomic/components/atomic-result-html.js.map +1 -1
- package/dist/atomic/components/atomic-result-icon.js +1 -1
- package/dist/atomic/components/atomic-result-icon.js.map +1 -1
- package/dist/atomic/components/atomic-result-image.js +1 -1
- package/dist/atomic/components/atomic-result-image.js.map +1 -1
- package/dist/atomic/components/atomic-result-link.js +2 -2
- package/dist/atomic/components/atomic-result-link.js.map +1 -1
- package/dist/atomic/components/atomic-result-list.js +12 -0
- package/dist/atomic/components/atomic-result-list.js.map +1 -1
- package/dist/atomic/components/atomic-result-localized-text.js +1 -1
- package/dist/atomic/components/atomic-result-localized-text.js.map +1 -1
- package/dist/atomic/components/atomic-result-multi-value-text.js +1 -1
- package/dist/atomic/components/atomic-result-multi-value-text.js.map +1 -1
- package/dist/atomic/components/atomic-result-number.js +1 -1
- package/dist/atomic/components/atomic-result-number.js.map +1 -1
- package/dist/atomic/components/atomic-result-printable-uri.js +1 -1
- package/dist/atomic/components/atomic-result-printable-uri.js.map +1 -1
- package/dist/atomic/components/atomic-result-rating.js +1 -1
- package/dist/atomic/components/atomic-result-rating.js.map +1 -1
- package/dist/atomic/components/atomic-result-text2.js +7 -1
- package/dist/atomic/components/atomic-result-text2.js.map +1 -1
- package/dist/atomic/components/atomic-result-timespan.js +1 -1
- package/dist/atomic/components/atomic-result-timespan.js.map +1 -1
- package/dist/atomic/components/atomic-result2.js.map +1 -1
- package/dist/atomic/components/atomic-search-box-instant-results.js +46 -2
- package/dist/atomic/components/atomic-search-box-instant-results.js.map +1 -1
- package/dist/atomic/components/atomic-search-box.js +4 -7
- package/dist/atomic/components/atomic-search-box.js.map +1 -1
- package/dist/atomic/components/atomic-segmented-facet.js +3 -0
- package/dist/atomic/components/atomic-segmented-facet.js.map +1 -1
- package/dist/atomic/components/atomic-smart-snippet-feedback-modal2.js +2 -2
- package/dist/atomic/components/atomic-smart-snippet-source2.js +1 -1
- package/dist/atomic/components/atomic-smart-snippet-source2.js.map +1 -1
- package/dist/atomic/components/atomic-sort-dropdown.js +15 -0
- package/dist/atomic/components/atomic-sort-dropdown.js.map +1 -1
- package/dist/atomic/components/atomic-tab-manager.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-category-facet/atomic-commerce-category-facet.js +0 -3
- package/dist/atomic/components/components/commerce/atomic-product-children/atomic-product-children.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-product-description/atomic-product-description.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-product-excerpt/atomic-product-excerpt.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-product-field-condition/atomic-product-field-condition.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-product-image/atomic-product-image.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-product-link/atomic-product-link.js +2 -1
- package/dist/atomic/components/components/commerce/atomic-product-multi-value-text/atomic-product-multi-value-text.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-product-numeric-field-value/atomic-product-numeric-field-value.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-product-price/atomic-product-price.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-product-rating/atomic-product-rating.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-product-text/atomic-product-text.js +1 -1
- package/dist/atomic/components/components/commerce/product-template-component-utils/context/interactive-product-context-controller.js +25 -0
- package/dist/atomic/components/components/commerce/product-template-component-utils/context/product-context-controller.js +29 -0
- package/dist/atomic/components/components/common/facets/category-facet/all-categories-button.js +2 -3
- package/dist/atomic/components/components/common/facets/category-facet/search-value.js +1 -6
- package/dist/atomic/components/components/common/suggestions/query-suggestions.js +11 -16
- package/dist/atomic/components/components/search/atomic-search-box-query-suggestions/atomic-search-box-query-suggestions.js +104 -0
- package/dist/atomic/components/components/search/index.js +1 -0
- package/dist/atomic/components/components/search/lazy-index.js +1 -0
- package/dist/atomic/components/facet-guard.js +3 -0
- package/dist/atomic/components/facet-guard.js.map +1 -1
- package/dist/atomic/components/facet-placeholder.js +3 -0
- package/dist/atomic/components/facet-placeholder.js.map +1 -1
- package/dist/atomic/components/generated-answer-common.js +27 -0
- package/dist/atomic/components/generated-answer-common.js.map +1 -1
- package/dist/atomic/components/global/environment.js +1 -1
- package/dist/atomic/components/index.js.map +1 -1
- package/dist/atomic/components/item-list-guard.js +3 -0
- package/dist/atomic/components/item-list-guard.js.map +1 -1
- package/dist/atomic/components/show-hide-button.js +12 -0
- package/dist/atomic/components/show-hide-button.js.map +1 -1
- package/dist/atomic/components/smart-snippet-common.js +15 -0
- package/dist/atomic/components/smart-snippet-common.js.map +1 -1
- package/dist/atomic/components/smart-snippet-feedback-modal-common.js +21 -0
- package/dist/atomic/components/smart-snippet-feedback-modal-common.js.map +1 -1
- package/dist/atomic/components/smart-snippet-suggestions-common.js +18 -0
- package/dist/atomic/components/smart-snippet-suggestions-common.js.map +1 -1
- package/dist/atomic/components/stencil-button.js +1 -1
- package/dist/atomic/components/stencil-button.js.map +1 -1
- package/dist/atomic/components/stencil-carousel.js +3 -0
- package/dist/atomic/components/stencil-carousel.js.map +1 -1
- package/dist/atomic/components/stencil-checkbox.js +1 -1
- package/dist/atomic/components/stencil-checkbox.js.map +1 -1
- package/dist/atomic/components/stencil-display-grid.js +3 -0
- package/dist/atomic/components/stencil-display-grid.js.map +1 -1
- package/dist/atomic/components/stencil-display-wrapper.js +6 -0
- package/dist/atomic/components/stencil-display-wrapper.js.map +1 -1
- package/dist/atomic/components/stencil-facet-header.js +6 -0
- package/dist/atomic/components/stencil-facet-header.js.map +1 -1
- package/dist/atomic/components/stencil-facet-search-matches.js +6 -0
- package/dist/atomic/components/stencil-facet-search-matches.js.map +1 -1
- package/dist/atomic/components/stencil-facet-show-more-less.js +3 -0
- package/dist/atomic/components/stencil-facet-show-more-less.js.map +1 -1
- package/dist/atomic/components/stencil-facet-value-box.js +3 -0
- package/dist/atomic/components/stencil-facet-value-box.js.map +1 -1
- package/dist/atomic/components/stencil-facet-value-checkbox.js +7 -2
- package/dist/atomic/components/stencil-facet-value-checkbox.js.map +1 -1
- package/dist/atomic/components/stencil-facet-value-label-highlight.js +3 -0
- package/dist/atomic/components/stencil-facet-value-label-highlight.js.map +1 -1
- package/dist/atomic/components/stencil-facet-value-link.js +3 -0
- package/dist/atomic/components/stencil-facet-value-link.js.map +1 -1
- package/dist/atomic/components/stencil-facet-value.js +3 -0
- package/dist/atomic/components/stencil-facet-value.js.map +1 -1
- package/dist/atomic/components/stencil-facet-values-group.js +3 -0
- package/dist/atomic/components/stencil-facet-values-group.js.map +1 -1
- package/dist/atomic/components/stencil-fieldset-group.js +3 -0
- package/dist/atomic/components/stencil-fieldset-group.js.map +1 -1
- package/dist/atomic/components/stencil-heading.js +1 -1
- package/dist/atomic/components/stencil-heading.js.map +1 -1
- package/dist/atomic/components/stencil-iconButton.js +3 -0
- package/dist/atomic/components/stencil-iconButton.js.map +1 -1
- package/dist/atomic/components/stencil-item-link.js +3 -0
- package/dist/atomic/components/stencil-item-link.js.map +1 -1
- package/dist/atomic/components/stencil-link.js +24 -1
- package/dist/atomic/components/stencil-link.js.map +1 -1
- package/dist/atomic/components/stencil-magnifying-glass.js +6 -0
- package/dist/atomic/components/stencil-magnifying-glass.js.map +1 -1
- package/dist/atomic/components/stencil-modal.js +3 -0
- package/dist/atomic/components/stencil-modal.js.map +1 -1
- package/dist/atomic/components/stencil-placeholders.js +6 -0
- package/dist/atomic/components/stencil-placeholders.js.map +1 -1
- package/dist/atomic/components/stencil-radio-button.js +1 -1
- package/dist/atomic/components/stencil-radio-button.js.map +1 -1
- package/dist/atomic/components/stencil-rating.js +5 -2
- package/dist/atomic/components/stencil-rating.js.map +1 -1
- package/dist/atomic/components/{result-template-decorators.js → stencil-result-template-decorators.js} +6 -2
- package/dist/atomic/components/stencil-result-template-decorators.js.map +1 -0
- package/dist/atomic/components/stencil-suggestion-manager.js +9 -0
- package/dist/atomic/components/stencil-suggestion-manager.js.map +1 -1
- package/dist/atomic/components/stencil-tips.js +9 -0
- package/dist/atomic/components/stencil-tips.js.map +1 -1
- package/dist/atomic/components/stencil-values-container.js +6 -0
- package/dist/atomic/components/stencil-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-851b9735.entry.js → p-030c0435.entry.js} +2 -2
- package/dist/atomic/p-030c0435.entry.js.map +1 -0
- package/dist/atomic/{p-5606819d.entry.js → p-039bd7df.entry.js} +2 -2
- package/dist/atomic/{p-448091f7.entry.js → p-06463927.entry.js} +2 -2
- package/dist/atomic/p-06463927.entry.js.map +1 -0
- package/dist/atomic/{p-187193bb.js → p-0ed25035.js} +1 -1
- package/dist/atomic/p-0ed25035.js.map +1 -0
- package/dist/atomic/{p-66166975.entry.js → p-12be5e47.entry.js} +2 -2
- package/dist/atomic/p-12be5e47.entry.js.map +1 -0
- package/dist/atomic/{p-22b76c96.entry.js → p-13ac0c72.entry.js} +2 -2
- package/dist/atomic/{p-77d00da1.entry.js → p-15697c4b.entry.js} +2 -2
- package/dist/atomic/{p-b93ccff9.js → p-1a093634.js} +1 -1
- package/dist/atomic/p-1a093634.js.map +1 -0
- package/dist/atomic/{p-a5bac939.js → p-1b11f219.js} +1 -1
- package/dist/atomic/p-1b11f219.js.map +1 -0
- package/dist/atomic/{p-14bad769.entry.js → p-1d6d0186.entry.js} +2 -2
- package/dist/atomic/{p-48bab1a6.entry.js → p-1f903f31.entry.js} +2 -2
- package/dist/atomic/{p-db3b11ca.entry.js → p-2033533c.entry.js} +2 -2
- package/dist/atomic/{p-db3b11ca.entry.js.map → p-2033533c.entry.js.map} +1 -1
- package/dist/atomic/{p-d2e8a2d4.js → p-21dd38ad.js} +2 -2
- package/dist/atomic/p-21dd38ad.js.map +1 -0
- package/dist/atomic/{p-47b41b27.entry.js → p-24bb7b3d.entry.js} +2 -2
- package/dist/atomic/p-254846bb.js +2 -0
- package/dist/atomic/p-254846bb.js.map +1 -0
- package/dist/atomic/{p-4069d801.entry.js → p-268ce7ca.entry.js} +2 -2
- package/dist/atomic/p-268ce7ca.entry.js.map +1 -0
- package/dist/atomic/{p-6439156c.entry.js → p-2ab385b8.entry.js} +2 -2
- package/dist/atomic/p-2ab385b8.entry.js.map +1 -0
- package/dist/atomic/{p-6698d5e9.entry.js → p-2e9ecdf5.entry.js} +2 -2
- package/dist/atomic/{p-76c14d82.entry.js → p-32544f8a.entry.js} +2 -2
- package/dist/atomic/{p-e988f378.js → p-3881d7ec.js} +1 -1
- package/dist/atomic/p-3881d7ec.js.map +1 -0
- package/dist/atomic/{p-a6dde0f6.entry.js → p-390deb3d.entry.js} +2 -2
- package/dist/atomic/{p-2f437b47.entry.js → p-3b632123.entry.js} +2 -2
- package/dist/atomic/{p-7da7b187.js → p-3c2b932c.js} +1 -1
- package/dist/atomic/p-3c2b932c.js.map +1 -0
- package/dist/atomic/{p-21ab7750.entry.js → p-3e1b3a6d.entry.js} +2 -2
- package/dist/atomic/{p-21ab7750.entry.js.map → p-3e1b3a6d.entry.js.map} +1 -1
- package/dist/atomic/{p-e9dc8e90.entry.js → p-3ec45f9c.entry.js} +2 -2
- package/dist/atomic/p-3ec45f9c.entry.js.map +1 -0
- package/dist/atomic/{p-16f4ce98.js → p-40345c70.js} +2 -2
- package/dist/atomic/p-40345c70.js.map +1 -0
- package/dist/atomic/{p-18684d4c.js → p-4080f740.js} +1 -1
- package/dist/atomic/p-4080f740.js.map +1 -0
- package/dist/atomic/{p-3a01a398.entry.js → p-43fc38fb.entry.js} +2 -2
- package/dist/atomic/{p-dd24c66a.entry.js → p-443f3422.entry.js} +2 -2
- package/dist/atomic/{p-b29d121c.js → p-4651cceb.js} +2 -2
- package/dist/atomic/{p-400c28b6.entry.js → p-498771d3.entry.js} +2 -2
- package/dist/atomic/{p-f8b608ba.js → p-4a73e01b.js} +2 -2
- package/dist/atomic/p-4a73e01b.js.map +1 -0
- package/dist/atomic/{p-190ddaca.entry.js → p-4cf97b0a.entry.js} +2 -2
- package/dist/atomic/p-4cf97b0a.entry.js.map +1 -0
- package/dist/atomic/{p-15547bd5.entry.js → p-52663c66.entry.js} +2 -2
- package/dist/atomic/p-52663c66.entry.js.map +1 -0
- package/dist/atomic/{p-558f2191.entry.js → p-52878b95.entry.js} +2 -2
- package/dist/atomic/{p-c8190eb9.entry.js → p-5a644e15.entry.js} +2 -2
- package/dist/atomic/{p-78427c6a.entry.js → p-5a9460ab.entry.js} +2 -2
- package/dist/atomic/p-5a9460ab.entry.js.map +1 -0
- package/dist/atomic/{p-dea22a8d.entry.js → p-5b65473e.entry.js} +2 -2
- package/dist/atomic/p-5b65473e.entry.js.map +1 -0
- package/dist/atomic/{p-479cb38a.entry.js → p-5d4e9821.entry.js} +2 -2
- package/dist/atomic/p-5e6efd8e.js +2 -0
- package/dist/atomic/p-5e6efd8e.js.map +1 -0
- package/dist/atomic/{p-82cd6398.entry.js → p-5e6ff8f8.entry.js} +2 -2
- package/dist/atomic/{p-82cd6398.entry.js.map → p-5e6ff8f8.entry.js.map} +1 -1
- package/dist/atomic/p-63613c8a.entry.js +2 -0
- package/dist/atomic/p-63613c8a.entry.js.map +1 -0
- package/dist/atomic/{p-2c6f895f.js → p-64dfda2d.js} +2 -2
- package/dist/atomic/p-64dfda2d.js.map +1 -0
- package/dist/atomic/{p-955092ed.entry.js → p-67f62282.entry.js} +2 -2
- package/dist/atomic/p-67f62282.entry.js.map +1 -0
- package/dist/atomic/{p-1ff7a9da.entry.js → p-6a3b139f.entry.js} +2 -2
- package/dist/atomic/p-6a3b139f.entry.js.map +1 -0
- package/dist/atomic/p-6d0e9fad.entry.js.map +1 -1
- package/dist/atomic/{p-b84108f3.entry.js → p-6d323b9a.entry.js} +2 -2
- package/dist/atomic/{p-088d634c.entry.js → p-733a8082.entry.js} +2 -2
- package/dist/atomic/{p-b1b583a0.entry.js → p-74380cbc.entry.js} +2 -2
- package/dist/atomic/{p-35c2ee5f.entry.js → p-752f4533.entry.js} +2 -2
- package/dist/atomic/{p-c8e27f4e.entry.js → p-79863911.entry.js} +2 -2
- package/dist/atomic/{p-bd2703e9.js → p-7a7ce0d5.js} +1 -1
- package/dist/atomic/p-7a7ce0d5.js.map +1 -0
- package/dist/atomic/{p-ef8f2239.entry.js → p-7afa3c6a.entry.js} +2 -2
- package/dist/atomic/{p-db2d92c5.entry.js → p-7b8607e0.entry.js} +2 -2
- package/dist/atomic/{p-7741124a.entry.js → p-7c87512d.entry.js} +2 -2
- package/dist/atomic/{p-f0c657f4.entry.js → p-84a6ee68.entry.js} +2 -2
- package/dist/atomic/p-84a6ee68.entry.js.map +1 -0
- package/dist/atomic/{p-8d5228da.entry.js → p-850fa320.entry.js} +2 -2
- package/dist/atomic/p-850fa320.entry.js.map +1 -0
- package/dist/atomic/{p-33245038.entry.js → p-86bba9db.entry.js} +2 -2
- package/dist/atomic/{p-ed413091.entry.js → p-8a30d1e9.entry.js} +2 -2
- package/dist/atomic/{p-5d0a3045.js → p-8aec7860.js} +2 -2
- package/dist/atomic/p-8aec7860.js.map +1 -0
- package/dist/atomic/{p-e49ad083.entry.js → p-8b1b1784.entry.js} +2 -2
- package/dist/atomic/p-8b1b1784.entry.js.map +1 -0
- package/dist/atomic/{p-b3f6561d.entry.js → p-8e964890.entry.js} +2 -2
- package/dist/atomic/p-8e964890.entry.js.map +1 -0
- package/dist/atomic/{p-bd01acd5.entry.js → p-93b392fa.entry.js} +2 -2
- package/dist/atomic/p-93b392fa.entry.js.map +1 -0
- package/dist/atomic/{p-318c96f5.entry.js → p-9519e656.entry.js} +2 -2
- package/dist/atomic/{p-70747efa.entry.js → p-951bdd73.entry.js} +2 -2
- package/dist/atomic/{p-7d212157.entry.js → p-953fe202.entry.js} +2 -2
- package/dist/atomic/p-953fe202.entry.js.map +1 -0
- package/dist/atomic/{p-5a83b7e5.entry.js → p-99bb5042.entry.js} +2 -2
- package/dist/atomic/{p-fc71835d.entry.js → p-99d0c865.entry.js} +2 -2
- package/dist/atomic/p-9aad555a.entry.js.map +1 -1
- package/dist/atomic/{p-5c73ebc4.js → p-9b447b7d.js} +2 -2
- package/dist/atomic/p-9b447b7d.js.map +1 -0
- package/dist/atomic/{p-b628ed03.entry.js → p-9c97d77d.entry.js} +2 -2
- package/dist/atomic/p-9c97d77d.entry.js.map +1 -0
- package/dist/atomic/{p-82398f4a.js → p-9ce62a67.js} +2 -2
- package/dist/atomic/p-9ce62a67.js.map +1 -0
- package/dist/atomic/{p-80290dd3.entry.js → p-9d492524.entry.js} +2 -2
- package/dist/atomic/{p-4b1dc787.js → p-a24a63d6.js} +1 -1
- package/dist/atomic/p-a24a63d6.js.map +1 -0
- package/dist/atomic/{p-8a488991.js → p-aa0139e0.js} +2 -2
- package/dist/atomic/p-aa0139e0.js.map +1 -0
- package/dist/atomic/p-ac03c9a7.js +2 -0
- package/dist/atomic/{p-5a2ef889.js.map → p-ac03c9a7.js.map} +1 -1
- package/dist/atomic/{p-d0ab0125.entry.js → p-b0a20358.entry.js} +2 -2
- package/dist/atomic/{p-0ee7cab8.entry.js → p-b0f6a52e.entry.js} +2 -2
- package/dist/atomic/{p-c619df9b.js → p-b58c1424.js} +2 -2
- package/dist/atomic/p-b58c1424.js.map +1 -0
- package/dist/atomic/p-b85c2c46.entry.js.map +1 -1
- package/dist/atomic/{p-66d48d1a.js → p-b8e66e99.js} +1 -1
- package/dist/atomic/p-b8e66e99.js.map +1 -0
- package/dist/atomic/{p-037eee11.js → p-baebeae3.js} +2 -2
- package/dist/atomic/p-baebeae3.js.map +1 -0
- package/dist/atomic/{p-a428960a.js → p-bca5b379.js} +2 -2
- package/dist/atomic/p-bca5b379.js.map +1 -0
- package/dist/atomic/{p-e6871a3f.entry.js → p-bef3a536.entry.js} +2 -2
- package/dist/atomic/{p-7fe23afc.entry.js → p-bf0a780e.entry.js} +2 -2
- package/dist/atomic/{p-9b2561e8.entry.js → p-bfb2e085.entry.js} +2 -2
- package/dist/atomic/{p-f1241140.entry.js → p-c0491e26.entry.js} +2 -2
- package/dist/atomic/{p-e276c7e0.entry.js → p-c1cd0a45.entry.js} +2 -2
- package/dist/atomic/{p-1f059522.js → p-c3451367.js} +1 -1
- package/dist/atomic/p-c3451367.js.map +1 -0
- package/dist/atomic/{p-852cc16d.entry.js → p-c402cc93.entry.js} +2 -2
- package/dist/atomic/p-c402cc93.entry.js.map +1 -0
- package/dist/atomic/{p-c2a5dac0.entry.js → p-c51d050f.entry.js} +2 -2
- package/dist/atomic/p-c51d050f.entry.js.map +1 -0
- package/dist/atomic/{p-1910eb7f.entry.js → p-c52c9e67.entry.js} +2 -2
- package/dist/atomic/{p-5cab535b.entry.js → p-c5bd7f8d.entry.js} +2 -2
- package/dist/atomic/p-c5bd7f8d.entry.js.map +1 -0
- package/dist/atomic/{p-7cb0050f.js → p-c727ec2d.js} +1 -1
- package/dist/atomic/p-c727ec2d.js.map +1 -0
- package/dist/atomic/{p-ae69f519.entry.js → p-cc963c10.entry.js} +2 -2
- package/dist/atomic/{p-ae69f519.entry.js.map → p-cc963c10.entry.js.map} +1 -1
- package/dist/atomic/p-ccb5ae69.js +2 -0
- package/dist/atomic/p-ccb5ae69.js.map +1 -0
- package/dist/atomic/{p-df8d38ca.entry.js → p-cd021c46.entry.js} +2 -2
- package/dist/atomic/p-cd021c46.entry.js.map +1 -0
- package/dist/atomic/{p-e455330c.entry.js → p-cd4394fe.entry.js} +2 -2
- package/dist/atomic/{p-c5164dbf.entry.js → p-cee86cff.entry.js} +2 -2
- package/dist/atomic/p-cee86cff.entry.js.map +1 -0
- package/dist/atomic/{p-4cb91ee7.entry.js → p-d5402772.entry.js} +2 -2
- package/dist/atomic/p-d5402772.entry.js.map +1 -0
- package/dist/atomic/{p-f37dea9e.entry.js → p-d5f4597b.entry.js} +2 -2
- package/dist/atomic/{p-307e7fd5.js → p-d72be8c2.js} +1 -1
- package/dist/atomic/p-d72be8c2.js.map +1 -0
- package/dist/atomic/p-d8caa4d8.entry.js.map +1 -1
- package/dist/atomic/{p-3bd8469f.entry.js → p-d944704c.entry.js} +2 -2
- package/dist/atomic/p-d944704c.entry.js.map +1 -0
- package/dist/atomic/{p-e6dc9de7.entry.js → p-da141605.entry.js} +2 -2
- package/dist/atomic/p-da141605.entry.js.map +1 -0
- package/dist/atomic/{p-8e5e00b4.js → p-da3fdf6d.js} +1 -1
- package/dist/atomic/p-da3fdf6d.js.map +1 -0
- package/dist/atomic/{p-57049cd2.entry.js → p-dbfd92ab.entry.js} +2 -2
- package/dist/atomic/p-dbfd92ab.entry.js.map +1 -0
- package/dist/atomic/{p-a1798150.entry.js → p-dd258eaa.entry.js} +2 -2
- package/dist/atomic/p-dd258eaa.entry.js.map +1 -0
- package/dist/atomic/{p-74862002.js → p-ddfbc97a.js} +2 -2
- package/dist/atomic/p-ddfbc97a.js.map +1 -0
- package/dist/atomic/{p-d4c2b7c0.js → p-defc2481.js} +1 -1
- package/dist/atomic/{p-d4c2b7c0.js.map → p-defc2481.js.map} +1 -1
- package/dist/atomic/{p-7242b46e.entry.js → p-e1052201.entry.js} +2 -2
- package/dist/atomic/{p-945ddd53.entry.js → p-e1dbe31d.entry.js} +2 -2
- package/dist/atomic/p-e1dbe31d.entry.js.map +1 -0
- package/dist/atomic/{p-dbc09018.js → p-e2fdbbd9.js} +2 -2
- package/dist/atomic/p-e2fdbbd9.js.map +1 -0
- package/dist/atomic/{p-be5d3c54.js → p-e5e2aa64.js} +1 -1
- package/dist/atomic/p-e5e2aa64.js.map +1 -0
- package/dist/atomic/{p-182f9112.entry.js → p-e809b959.entry.js} +2 -2
- package/dist/atomic/p-e809b959.entry.js.map +1 -0
- package/dist/atomic/{p-0535b93d.entry.js → p-eca826bd.entry.js} +2 -2
- package/dist/atomic/p-eca826bd.entry.js.map +1 -0
- package/dist/atomic/{p-874f0a4c.entry.js → p-ed515fef.entry.js} +2 -2
- package/dist/atomic/{p-a54f3f24.entry.js → p-ee19b388.entry.js} +2 -2
- package/dist/atomic/{p-baff6c43.js → p-efd33bd9.js} +2 -2
- package/dist/atomic/p-efd33bd9.js.map +1 -0
- package/dist/atomic/{p-20cbcfb9.js → p-f0e695ab.js} +2 -2
- package/dist/atomic/p-f0e695ab.js.map +1 -0
- package/dist/atomic/{p-7045745d.entry.js → p-f25c9582.entry.js} +2 -2
- package/dist/atomic/{p-ef78082a.js → p-f56b1fd6.js} +2 -2
- package/dist/atomic/p-f56b1fd6.js.map +1 -0
- package/dist/atomic/{p-8b0d881e.entry.js → p-f7b4ce31.entry.js} +2 -2
- package/dist/atomic/p-f7b4ce31.entry.js.map +1 -0
- package/dist/atomic/p-f800678c.entry.js.map +1 -1
- package/dist/atomic/{p-36ff2bc3.entry.js → p-f8f80cbe.entry.js} +2 -2
- package/dist/atomic/p-f8f80cbe.entry.js.map +1 -0
- package/dist/atomic/{p-99d4c4bf.entry.js → p-fdaf9f6c.entry.js} +2 -2
- package/dist/atomic/{p-fd1ef9e3.entry.js → p-fdd6264f.entry.js} +2 -2
- package/dist/atomic/{p-2f517a54.entry.js → p-ff263c5e.entry.js} +2 -2
- package/dist/atomic/p-ff263c5e.entry.js.map +1 -0
- package/dist/cjs/_index.cjs.js +20 -20
- package/dist/cjs/_loader.cjs.js +1 -1
- package/dist/cjs/atomic-automatic-facet_2.cjs.entry.js +8 -8
- package/dist/cjs/atomic-breadbox.cjs.entry.js +19 -1
- package/dist/cjs/atomic-breadbox.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-category-facet.cjs.entry.js +44 -27
- package/dist/cjs/atomic-category-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-citation.cjs.entry.js +2 -2
- package/dist/cjs/atomic-color-facet.cjs.entry.js +12 -9
- package/dist/cjs/atomic-color-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-did-you-mean.cjs.entry.js +12 -1
- package/dist/cjs/atomic-did-you-mean.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-facet-number-input.cjs.entry.js +1 -1
- package/dist/cjs/atomic-facet.cjs.entry.js +20 -14
- package/dist/cjs/atomic-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-field-condition.cjs.entry.js +2 -2
- package/dist/cjs/atomic-field-condition.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-folded-result-list.cjs.entry.js +3 -3
- package/dist/cjs/atomic-generated-answer-feedback-modal.cjs.entry.js +4 -4
- package/dist/cjs/atomic-generated-answer.cjs.entry.js +4 -4
- package/dist/cjs/atomic-generated-answer.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-edit-toggle.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-facet.cjs.entry.js +13 -13
- package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-full-search-button.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js +4 -4
- package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-no-results.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js +11 -11
- package/dist/cjs/atomic-insight-pager.cjs.entry.js +7 -7
- package/dist/cjs/atomic-insight-pager.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-query-error.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-query-summary.cjs.entry.js +9 -0
- package/dist/cjs/atomic-insight-query-summary.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-result-action.cjs.entry.js +5 -5
- package/dist/cjs/atomic-insight-result-action.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js +5 -5
- package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-result-attach-to-case-indicator.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-result-attach-to-case-indicator.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-result-children.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-result-list.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js +5 -5
- package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-search-box.cjs.entry.js +44 -6
- 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 +2 -2
- package/dist/cjs/atomic-insight-smart-snippet-suggestions.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-smart-snippet.cjs.entry.js +4 -4
- package/dist/cjs/atomic-insight-tab.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js +8 -8
- package/dist/cjs/atomic-insight-user-actions-modal.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js +5 -2
- package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js +2 -2
- package/dist/cjs/atomic-ipx-button.cjs.entry.js +1 -1
- package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +6 -6
- package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js +2 -2
- package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js +2 -2
- package/dist/cjs/atomic-ipx-result-link.cjs.entry.js +5 -5
- package/dist/cjs/atomic-ipx-result-link.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-ipx-tab.cjs.entry.js +1 -1
- package/dist/cjs/atomic-load-more-results.cjs.entry.js +14 -2
- package/dist/cjs/atomic-load-more-results.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-no-results.cjs.entry.js +6 -3
- package/dist/cjs/atomic-no-results.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-notifications.cjs.entry.js +1 -1
- package/dist/cjs/atomic-numeric-facet.cjs.entry.js +11 -11
- package/dist/cjs/atomic-popover.cjs.entry.js +1 -1
- package/dist/cjs/atomic-query-error.cjs.entry.js +2 -2
- package/dist/cjs/atomic-quickview-modal.cjs.entry.js +9 -6
- 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-quickview.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-rating-facet.cjs.entry.js +9 -9
- package/dist/cjs/atomic-rating-range-facet.cjs.entry.js +7 -7
- package/dist/cjs/atomic-recs-error.cjs.entry.js +2 -2
- package/dist/cjs/atomic-recs-interface.cjs.entry.js +1 -1
- package/dist/cjs/atomic-recs-list.cjs.entry.js +6 -6
- package/dist/cjs/atomic-refine-modal.cjs.entry.js +14 -2
- package/dist/cjs/atomic-refine-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-refine-toggle.cjs.entry.js +7 -1
- package/dist/cjs/atomic-refine-toggle.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-badge.cjs.entry.js +2 -2
- package/dist/cjs/atomic-result-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-children.cjs.entry.js +6 -6
- package/dist/cjs/atomic-result-children.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-date.cjs.entry.js +2 -2
- package/dist/cjs/atomic-result-date.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-fields-list.cjs.entry.js +3 -3
- package/dist/cjs/atomic-result-fields-list.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-html.cjs.entry.js +2 -2
- package/dist/cjs/atomic-result-html.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-icon.cjs.entry.js +2 -2
- package/dist/cjs/atomic-result-icon.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-image.cjs.entry.js +2 -2
- package/dist/cjs/atomic-result-image.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-link.cjs.entry.js +5 -5
- package/dist/cjs/atomic-result-link.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-list.cjs.entry.js +16 -4
- package/dist/cjs/atomic-result-list.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-localized-text.cjs.entry.js +3 -3
- package/dist/cjs/atomic-result-localized-text.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-multi-value-text.cjs.entry.js +2 -2
- package/dist/cjs/atomic-result-multi-value-text.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-number.cjs.entry.js +2 -2
- package/dist/cjs/atomic-result-number.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-printable-uri.cjs.entry.js +3 -3
- package/dist/cjs/atomic-result-printable-uri.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-rating.cjs.entry.js +3 -3
- package/dist/cjs/atomic-result-rating.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-text_2.cjs.entry.js +8 -2
- package/dist/cjs/atomic-result-text_2.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-timespan.cjs.entry.js +2 -2
- package/dist/cjs/atomic-result-timespan.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-search-box-instant-results.cjs.entry.js +9 -0
- package/dist/cjs/atomic-search-box-instant-results.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-search-box.cjs.entry.js +5 -2
- package/dist/cjs/atomic-search-box.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-segmented-facet-scrollable.cjs.entry.js +1 -1
- package/dist/cjs/atomic-segmented-facet.cjs.entry.js +6 -3
- package/dist/cjs/atomic-segmented-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-smart-snippet-answer_2.cjs.entry.js +2 -2
- package/dist/cjs/atomic-smart-snippet-answer_2.cjs.entry.js.map +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 +3 -3
- package/dist/cjs/atomic-smart-snippet.cjs.entry.js +4 -4
- package/dist/cjs/atomic-sort-dropdown.cjs.entry.js +15 -0
- package/dist/cjs/atomic-sort-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-stencil-facet-date-input.cjs.entry.js +1 -1
- package/dist/cjs/atomic-tab-bar_2.cjs.entry.js +1 -1
- package/dist/cjs/atomic-tab-button.cjs.entry.js +1 -1
- package/dist/cjs/atomic-tab-manager.cjs.entry.js +1 -1
- package/dist/cjs/atomic-timeframe-facet.cjs.entry.js +8 -8
- package/dist/cjs/atomic.cjs.js +1 -1
- package/dist/cjs/{facet-guard-328b588d.js → facet-guard-0e8cbe50.js} +4 -1
- package/dist/cjs/facet-guard-0e8cbe50.js.map +1 -0
- package/dist/cjs/{facet-placeholder-22074f05.js → facet-placeholder-5beb1e14.js} +12 -3
- package/dist/cjs/facet-placeholder-5beb1e14.js.map +1 -0
- package/dist/cjs/{generated-answer-common-3c400311.js → generated-answer-common-51e5b253.js} +30 -3
- package/dist/cjs/generated-answer-common-51e5b253.js.map +1 -0
- package/dist/cjs/index-757bc886.js +0 -4
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/{item-list-guard-506b695a.js → item-list-guard-71a3f994.js} +4 -1
- package/dist/cjs/item-list-guard-71a3f994.js.map +1 -0
- package/dist/cjs/{show-hide-button-c4717f52.js → show-hide-button-cbf030a3.js} +15 -3
- package/dist/cjs/show-hide-button-cbf030a3.js.map +1 -0
- package/dist/cjs/{smart-snippet-common-1fd0dad5.js → smart-snippet-common-6a18743b.js} +19 -4
- package/dist/cjs/smart-snippet-common-6a18743b.js.map +1 -0
- package/dist/cjs/{smart-snippet-feedback-modal-common-9721e3c4.js → smart-snippet-feedback-modal-common-6048b7af.js} +23 -2
- package/dist/cjs/smart-snippet-feedback-modal-common-6048b7af.js.map +1 -0
- package/dist/cjs/{smart-snippet-suggestions-common-024c89b7.js → smart-snippet-suggestions-common-0a7adbfa.js} +21 -3
- package/dist/cjs/smart-snippet-suggestions-common-0a7adbfa.js.map +1 -0
- package/dist/cjs/{stencil-button-94b89acc.js → stencil-button-62b500e4.js} +2 -2
- package/dist/cjs/{stencil-button-94b89acc.js.map → stencil-button-62b500e4.js.map} +1 -1
- package/dist/cjs/{stencil-carousel-a8df6f3c.js → stencil-carousel-a605d26f.js} +5 -2
- package/dist/cjs/stencil-carousel-a605d26f.js.map +1 -0
- package/dist/cjs/{stencil-checkbox-81c51bbd.js → stencil-checkbox-6a2ad8d3.js} +2 -2
- package/dist/cjs/stencil-checkbox-6a2ad8d3.js.map +1 -0
- package/dist/cjs/{stencil-display-grid-93c5802a.js → stencil-display-grid-1f4e15ba.js} +4 -1
- package/dist/cjs/stencil-display-grid-1f4e15ba.js.map +1 -0
- package/dist/cjs/{stencil-display-wrapper-498de571.js → stencil-display-wrapper-b5c56fe9.js} +7 -1
- package/dist/cjs/stencil-display-wrapper-b5c56fe9.js.map +1 -0
- package/dist/cjs/{stencil-facet-search-matches-101e0ede.js → stencil-facet-search-matches-61418287.js} +9 -3
- package/dist/cjs/stencil-facet-search-matches-61418287.js.map +1 -0
- package/dist/cjs/{stencil-facet-show-more-less-70f4d20d.js → stencil-facet-show-more-less-8da6af80.js} +6 -3
- package/dist/cjs/stencil-facet-show-more-less-8da6af80.js.map +1 -0
- package/dist/cjs/{stencil-facet-value-box-11aa05dd.js → stencil-facet-value-box-dc7013fa.js} +5 -2
- package/dist/cjs/stencil-facet-value-box-dc7013fa.js.map +1 -0
- package/dist/cjs/{stencil-facet-value-5957b403.js → stencil-facet-value-c8a1fe99.js} +8 -5
- package/dist/cjs/stencil-facet-value-c8a1fe99.js.map +1 -0
- package/dist/cjs/{stencil-facet-value-checkbox-fed178ad.js → stencil-facet-value-checkbox-58251c1b.js} +10 -5
- package/dist/cjs/stencil-facet-value-checkbox-58251c1b.js.map +1 -0
- package/dist/cjs/{stencil-facet-value-label-highlight-c2421e8f.js → stencil-facet-value-label-highlight-16ea0e83.js} +4 -1
- package/dist/cjs/stencil-facet-value-label-highlight-16ea0e83.js.map +1 -0
- package/dist/cjs/{stencil-facet-value-link-8a095034.js → stencil-facet-value-link-8587369b.js} +5 -2
- package/dist/cjs/stencil-facet-value-link-8587369b.js.map +1 -0
- package/dist/cjs/{stencil-facet-values-group-07b50fc0.js → stencil-facet-values-group-332a2362.js} +5 -2
- package/dist/cjs/stencil-facet-values-group-332a2362.js.map +1 -0
- package/dist/cjs/{stencil-fieldset-group-3b25c138.js → stencil-fieldset-group-cc350109.js} +4 -1
- package/dist/cjs/stencil-fieldset-group-cc350109.js.map +1 -0
- package/dist/cjs/{stencil-heading-2faee1f7.js → stencil-heading-7e57d2eb.js} +2 -2
- package/dist/cjs/stencil-heading-7e57d2eb.js.map +1 -0
- package/dist/cjs/{stencil-iconButton-738b1548.js → stencil-iconButton-0f5e02fb.js} +5 -2
- package/dist/cjs/stencil-iconButton-0f5e02fb.js.map +1 -0
- package/dist/cjs/{stencil-item-link-9feaef61.js → stencil-item-link-3f38d5be.js} +4 -1
- package/dist/cjs/stencil-item-link-3f38d5be.js.map +1 -0
- package/dist/cjs/{stencil-link-9336b8c1.js → stencil-link-e392d9fa.js} +26 -3
- package/dist/cjs/stencil-link-e392d9fa.js.map +1 -0
- package/dist/cjs/{stencil-magnifying-glass-c1d386a1.js → stencil-magnifying-glass-e09449a3.js} +7 -1
- package/dist/cjs/stencil-magnifying-glass-e09449a3.js.map +1 -0
- package/dist/cjs/{stencil-modal-9035ea2a.js → stencil-modal-0c2539a2.js} +5 -2
- package/dist/cjs/stencil-modal-0c2539a2.js.map +1 -0
- package/dist/cjs/{stencil-placeholders-b8c896fa.js → stencil-placeholders-17e73823.js} +7 -1
- package/dist/cjs/stencil-placeholders-17e73823.js.map +1 -0
- package/dist/cjs/{stencil-radio-button-ea7e71d3.js → stencil-radio-button-4f4ddc4d.js} +3 -3
- package/dist/cjs/stencil-radio-button-4f4ddc4d.js.map +1 -0
- package/dist/cjs/{stencil-rating-a40e50dd.js → stencil-rating-2b9b6345.js} +6 -3
- package/dist/cjs/stencil-rating-2b9b6345.js.map +1 -0
- package/dist/cjs/{result-template-decorators-432d11a9.js → stencil-result-template-decorators-28b05aaf.js} +6 -2
- package/dist/cjs/stencil-result-template-decorators-28b05aaf.js.map +1 -0
- package/dist/cjs/{stencil-suggestion-manager-2cba6d69.js → stencil-suggestion-manager-df2e5c45.js} +11 -2
- package/dist/cjs/stencil-suggestion-manager-df2e5c45.js.map +1 -0
- package/dist/cjs/{stencil-tips-e913f891.js → stencil-tips-ecad2e9f.js} +10 -1
- package/dist/cjs/stencil-tips-ecad2e9f.js.map +1 -0
- package/dist/cjs/{stencil-values-container-d20f9b28.js → stencil-values-container-239826f6.js} +11 -5
- package/dist/cjs/stencil-values-container-239826f6.js.map +1 -0
- package/dist/cjs/{timeframe-facet-common-4ea96ccb.js → timeframe-facet-common-cbd1b4c6.js} +5 -5
- package/dist/cjs/{timeframe-facet-common-4ea96ccb.js.map → timeframe-facet-common-cbd1b4c6.js.map} +1 -1
- package/dist/cjs/version.cjs.js +1 -1
- package/dist/esm/_index.js +19 -19
- package/dist/esm/_loader.js +1 -1
- package/dist/esm/atomic-automatic-facet_2.entry.js +8 -8
- package/dist/esm/atomic-breadbox.entry.js +19 -1
- package/dist/esm/atomic-breadbox.entry.js.map +1 -1
- package/dist/esm/atomic-category-facet.entry.js +44 -27
- package/dist/esm/atomic-category-facet.entry.js.map +1 -1
- package/dist/esm/atomic-citation.entry.js +2 -2
- package/dist/esm/atomic-color-facet.entry.js +12 -9
- package/dist/esm/atomic-color-facet.entry.js.map +1 -1
- package/dist/esm/atomic-did-you-mean.entry.js +12 -1
- package/dist/esm/atomic-did-you-mean.entry.js.map +1 -1
- package/dist/esm/atomic-facet-number-input.entry.js +1 -1
- package/dist/esm/atomic-facet.entry.js +20 -14
- package/dist/esm/atomic-facet.entry.js.map +1 -1
- package/dist/esm/atomic-field-condition.entry.js +1 -1
- package/dist/esm/atomic-field-condition.entry.js.map +1 -1
- package/dist/esm/atomic-folded-result-list.entry.js +3 -3
- package/dist/esm/atomic-generated-answer-feedback-modal.entry.js +4 -4
- package/dist/esm/atomic-generated-answer.entry.js +4 -4
- package/dist/esm/atomic-generated-answer.entry.js.map +1 -1
- package/dist/esm/atomic-insight-edit-toggle.entry.js +2 -2
- package/dist/esm/atomic-insight-facet.entry.js +13 -13
- package/dist/esm/atomic-insight-folded-result-list.entry.js +3 -3
- package/dist/esm/atomic-insight-full-search-button.entry.js +2 -2
- package/dist/esm/atomic-insight-generated-answer.entry.js +4 -4
- package/dist/esm/atomic-insight-generated-answer.entry.js.map +1 -1
- package/dist/esm/atomic-insight-history-toggle.entry.js +2 -2
- package/dist/esm/atomic-insight-no-results.entry.js +2 -2
- package/dist/esm/atomic-insight-numeric-facet.entry.js +11 -11
- package/dist/esm/atomic-insight-pager.entry.js +7 -7
- package/dist/esm/atomic-insight-pager.entry.js.map +1 -1
- package/dist/esm/atomic-insight-query-error.entry.js +2 -2
- package/dist/esm/atomic-insight-query-summary.entry.js +9 -0
- package/dist/esm/atomic-insight-query-summary.entry.js.map +1 -1
- package/dist/esm/atomic-insight-refine-modal.entry.js +2 -2
- package/dist/esm/atomic-insight-refine-toggle.entry.js +2 -2
- package/dist/esm/atomic-insight-result-action.entry.js +4 -4
- package/dist/esm/atomic-insight-result-action.entry.js.map +1 -1
- package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js +4 -4
- package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js.map +1 -1
- package/dist/esm/atomic-insight-result-attach-to-case-indicator.entry.js +2 -2
- package/dist/esm/atomic-insight-result-attach-to-case-indicator.entry.js.map +1 -1
- package/dist/esm/atomic-insight-result-children.entry.js +3 -3
- package/dist/esm/atomic-insight-result-list.entry.js +3 -3
- package/dist/esm/atomic-insight-result-quickview-action.entry.js +4 -4
- package/dist/esm/atomic-insight-result-quickview-action.entry.js.map +1 -1
- package/dist/esm/atomic-insight-search-box.entry.js +43 -5
- package/dist/esm/atomic-insight-search-box.entry.js.map +1 -1
- package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js +2 -2
- package/dist/esm/atomic-insight-smart-snippet-suggestions.entry.js +3 -3
- package/dist/esm/atomic-insight-smart-snippet.entry.js +4 -4
- package/dist/esm/atomic-insight-tab.entry.js +1 -1
- package/dist/esm/atomic-insight-timeframe-facet.entry.js +8 -8
- package/dist/esm/atomic-insight-user-actions-modal.entry.js +1 -1
- package/dist/esm/atomic-insight-user-actions-session_2.entry.js +5 -2
- package/dist/esm/atomic-insight-user-actions-session_2.entry.js.map +1 -1
- package/dist/esm/atomic-insight-user-actions-toggle.entry.js +2 -2
- package/dist/esm/atomic-ipx-button.entry.js +1 -1
- package/dist/esm/atomic-ipx-recs-list.entry.js +6 -6
- package/dist/esm/atomic-ipx-refine-modal.entry.js +2 -2
- package/dist/esm/atomic-ipx-refine-toggle.entry.js +2 -2
- package/dist/esm/atomic-ipx-result-link.entry.js +3 -3
- package/dist/esm/atomic-ipx-result-link.entry.js.map +1 -1
- package/dist/esm/atomic-ipx-tab.entry.js +1 -1
- package/dist/esm/atomic-load-more-results.entry.js +14 -2
- package/dist/esm/atomic-load-more-results.entry.js.map +1 -1
- package/dist/esm/atomic-no-results.entry.js +6 -3
- package/dist/esm/atomic-no-results.entry.js.map +1 -1
- package/dist/esm/atomic-notifications.entry.js +1 -1
- package/dist/esm/atomic-numeric-facet.entry.js +11 -11
- package/dist/esm/atomic-popover.entry.js +1 -1
- package/dist/esm/atomic-query-error.entry.js +2 -2
- package/dist/esm/atomic-quickview-modal.entry.js +9 -6
- package/dist/esm/atomic-quickview-modal.entry.js.map +1 -1
- package/dist/esm/atomic-quickview.entry.js +3 -3
- package/dist/esm/atomic-quickview.entry.js.map +1 -1
- package/dist/esm/atomic-rating-facet.entry.js +9 -9
- package/dist/esm/atomic-rating-range-facet.entry.js +7 -7
- package/dist/esm/atomic-recs-error.entry.js +2 -2
- package/dist/esm/atomic-recs-interface.entry.js +1 -1
- package/dist/esm/atomic-recs-list.entry.js +6 -6
- package/dist/esm/atomic-refine-modal.entry.js +14 -2
- package/dist/esm/atomic-refine-modal.entry.js.map +1 -1
- package/dist/esm/atomic-refine-toggle.entry.js +7 -1
- package/dist/esm/atomic-refine-toggle.entry.js.map +1 -1
- package/dist/esm/atomic-result-badge.entry.js +1 -1
- package/dist/esm/atomic-result-badge.entry.js.map +1 -1
- package/dist/esm/atomic-result-children.entry.js +5 -5
- package/dist/esm/atomic-result-children.entry.js.map +1 -1
- package/dist/esm/atomic-result-date.entry.js +1 -1
- package/dist/esm/atomic-result-date.entry.js.map +1 -1
- package/dist/esm/atomic-result-fields-list.entry.js +2 -2
- package/dist/esm/atomic-result-fields-list.entry.js.map +1 -1
- package/dist/esm/atomic-result-html.entry.js +1 -1
- package/dist/esm/atomic-result-html.entry.js.map +1 -1
- package/dist/esm/atomic-result-icon.entry.js +1 -1
- package/dist/esm/atomic-result-icon.entry.js.map +1 -1
- package/dist/esm/atomic-result-image.entry.js +1 -1
- package/dist/esm/atomic-result-image.entry.js.map +1 -1
- package/dist/esm/atomic-result-link.entry.js +3 -3
- package/dist/esm/atomic-result-link.entry.js.map +1 -1
- package/dist/esm/atomic-result-list.entry.js +16 -4
- package/dist/esm/atomic-result-list.entry.js.map +1 -1
- 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-multi-value-text.entry.js.map +1 -1
- package/dist/esm/atomic-result-number.entry.js +1 -1
- package/dist/esm/atomic-result-number.entry.js.map +1 -1
- package/dist/esm/atomic-result-printable-uri.entry.js +2 -2
- package/dist/esm/atomic-result-printable-uri.entry.js.map +1 -1
- package/dist/esm/atomic-result-rating.entry.js +2 -2
- package/dist/esm/atomic-result-rating.entry.js.map +1 -1
- package/dist/esm/atomic-result-text_2.entry.js +7 -1
- package/dist/esm/atomic-result-text_2.entry.js.map +1 -1
- package/dist/esm/atomic-result-timespan.entry.js +1 -1
- package/dist/esm/atomic-result-timespan.entry.js.map +1 -1
- package/dist/esm/atomic-result.entry.js.map +1 -1
- package/dist/esm/atomic-search-box-instant-results.entry.js +9 -0
- package/dist/esm/atomic-search-box-instant-results.entry.js.map +1 -1
- package/dist/esm/atomic-search-box.entry.js +5 -2
- package/dist/esm/atomic-search-box.entry.js.map +1 -1
- package/dist/esm/atomic-segmented-facet-scrollable.entry.js +1 -1
- package/dist/esm/atomic-segmented-facet.entry.js +6 -3
- package/dist/esm/atomic-segmented-facet.entry.js.map +1 -1
- package/dist/esm/atomic-smart-snippet-answer_2.entry.js +2 -2
- package/dist/esm/atomic-smart-snippet-answer_2.entry.js.map +1 -1
- package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js +4 -4
- package/dist/esm/atomic-smart-snippet-suggestions.entry.js +3 -3
- package/dist/esm/atomic-smart-snippet.entry.js +4 -4
- package/dist/esm/atomic-sort-dropdown.entry.js +15 -0
- package/dist/esm/atomic-sort-dropdown.entry.js.map +1 -1
- package/dist/esm/atomic-stencil-facet-date-input.entry.js +1 -1
- package/dist/esm/atomic-tab-bar_2.entry.js +1 -1
- package/dist/esm/atomic-tab-button.entry.js +1 -1
- package/dist/esm/atomic-tab-manager.entry.js +1 -1
- package/dist/esm/atomic-timeframe-facet.entry.js +8 -8
- package/dist/esm/atomic.js +1 -1
- package/dist/esm/{facet-guard-4b795e90.js → facet-guard-3bb4a306.js} +4 -1
- package/dist/esm/facet-guard-3bb4a306.js.map +1 -0
- package/dist/esm/{facet-placeholder-4959a92a.js → facet-placeholder-a4a46474.js} +12 -3
- package/dist/esm/facet-placeholder-a4a46474.js.map +1 -0
- package/dist/esm/{generated-answer-common-9d0c5ada.js → generated-answer-common-d5cc6e86.js} +30 -3
- package/dist/esm/generated-answer-common-d5cc6e86.js.map +1 -0
- package/dist/esm/index-3f35faca.js +0 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/{item-list-guard-22b0711a.js → item-list-guard-8cd62b09.js} +4 -1
- package/dist/esm/item-list-guard-8cd62b09.js.map +1 -0
- package/dist/esm/{show-hide-button-35eb419d.js → show-hide-button-8ed8d405.js} +15 -3
- package/dist/esm/show-hide-button-8ed8d405.js.map +1 -0
- package/dist/esm/{smart-snippet-common-5ed4bdfa.js → smart-snippet-common-f2a5e84f.js} +19 -4
- package/dist/esm/smart-snippet-common-f2a5e84f.js.map +1 -0
- package/dist/esm/{smart-snippet-feedback-modal-common-835aa607.js → smart-snippet-feedback-modal-common-63373ffc.js} +23 -2
- package/dist/esm/smart-snippet-feedback-modal-common-63373ffc.js.map +1 -0
- package/dist/esm/{smart-snippet-suggestions-common-10bd1697.js → smart-snippet-suggestions-common-eff6fbfa.js} +21 -3
- package/dist/esm/smart-snippet-suggestions-common-eff6fbfa.js.map +1 -0
- package/dist/esm/{stencil-button-1a29a5df.js → stencil-button-e72b213d.js} +2 -2
- package/dist/esm/{stencil-button-1a29a5df.js.map → stencil-button-e72b213d.js.map} +1 -1
- package/dist/esm/{stencil-carousel-e1f25f7c.js → stencil-carousel-ae19a5d0.js} +5 -2
- package/dist/esm/stencil-carousel-ae19a5d0.js.map +1 -0
- package/dist/esm/{stencil-checkbox-9d8fe5f6.js → stencil-checkbox-d165d303.js} +2 -2
- package/dist/esm/stencil-checkbox-d165d303.js.map +1 -0
- package/dist/esm/{stencil-display-grid-b9eb7397.js → stencil-display-grid-ebbdd169.js} +4 -1
- package/dist/esm/stencil-display-grid-ebbdd169.js.map +1 -0
- package/dist/esm/{stencil-display-wrapper-5b32e77c.js → stencil-display-wrapper-8cb4e48e.js} +7 -1
- package/dist/esm/stencil-display-wrapper-8cb4e48e.js.map +1 -0
- package/dist/esm/{stencil-facet-search-matches-872d94d2.js → stencil-facet-search-matches-b639b93f.js} +9 -3
- package/dist/esm/stencil-facet-search-matches-b639b93f.js.map +1 -0
- package/dist/esm/{stencil-facet-show-more-less-e575f20f.js → stencil-facet-show-more-less-4932bd9f.js} +6 -3
- package/dist/esm/stencil-facet-show-more-less-4932bd9f.js.map +1 -0
- package/dist/esm/{stencil-facet-value-9deafe8e.js → stencil-facet-value-6e80b694.js} +8 -5
- package/dist/esm/stencil-facet-value-6e80b694.js.map +1 -0
- package/dist/esm/{stencil-facet-value-box-b0dc7e73.js → stencil-facet-value-box-b26edef5.js} +5 -2
- package/dist/esm/stencil-facet-value-box-b26edef5.js.map +1 -0
- package/dist/esm/{stencil-facet-value-checkbox-c0df7c4e.js → stencil-facet-value-checkbox-f9dbff9d.js} +10 -5
- package/dist/esm/stencil-facet-value-checkbox-f9dbff9d.js.map +1 -0
- package/dist/esm/{stencil-facet-value-label-highlight-b4083ffd.js → stencil-facet-value-label-highlight-f4518687.js} +4 -1
- package/dist/esm/stencil-facet-value-label-highlight-f4518687.js.map +1 -0
- package/dist/esm/{stencil-facet-value-link-88512e29.js → stencil-facet-value-link-bef908e3.js} +5 -2
- package/dist/esm/stencil-facet-value-link-bef908e3.js.map +1 -0
- package/dist/esm/{stencil-facet-values-group-1108573d.js → stencil-facet-values-group-fefc8abb.js} +5 -2
- package/dist/esm/stencil-facet-values-group-fefc8abb.js.map +1 -0
- package/dist/esm/{stencil-fieldset-group-5fa357cd.js → stencil-fieldset-group-e02988dc.js} +4 -1
- package/dist/esm/stencil-fieldset-group-e02988dc.js.map +1 -0
- package/dist/esm/{stencil-heading-2b28a9b9.js → stencil-heading-c701a05a.js} +2 -2
- package/dist/esm/stencil-heading-c701a05a.js.map +1 -0
- package/dist/esm/{stencil-iconButton-ba40899c.js → stencil-iconButton-b4568792.js} +5 -2
- package/dist/esm/stencil-iconButton-b4568792.js.map +1 -0
- package/dist/esm/{stencil-item-link-5a3f8f23.js → stencil-item-link-0183987b.js} +4 -1
- package/dist/esm/stencil-item-link-0183987b.js.map +1 -0
- package/dist/esm/{stencil-link-b676e261.js → stencil-link-78fd0a0d.js} +26 -3
- package/dist/esm/stencil-link-78fd0a0d.js.map +1 -0
- package/dist/esm/{stencil-magnifying-glass-041294b6.js → stencil-magnifying-glass-f6e9c08b.js} +7 -1
- package/dist/esm/stencil-magnifying-glass-f6e9c08b.js.map +1 -0
- package/dist/esm/{stencil-modal-467f7f33.js → stencil-modal-47c54d0e.js} +5 -2
- package/dist/esm/stencil-modal-47c54d0e.js.map +1 -0
- package/dist/esm/{stencil-placeholders-58a0c818.js → stencil-placeholders-43360a82.js} +7 -1
- package/dist/esm/stencil-placeholders-43360a82.js.map +1 -0
- package/dist/esm/{stencil-radio-button-cae5f40a.js → stencil-radio-button-a5c62a36.js} +3 -3
- package/dist/esm/stencil-radio-button-a5c62a36.js.map +1 -0
- package/dist/esm/{stencil-rating-2d6963a3.js → stencil-rating-8e6bcc27.js} +6 -3
- package/dist/esm/stencil-rating-8e6bcc27.js.map +1 -0
- package/dist/esm/{result-template-decorators-2ed76ea9.js → stencil-result-template-decorators-f989bc6b.js} +6 -2
- package/dist/esm/stencil-result-template-decorators-f989bc6b.js.map +1 -0
- package/dist/esm/{stencil-suggestion-manager-376f83e8.js → stencil-suggestion-manager-b192ac22.js} +11 -2
- package/dist/esm/stencil-suggestion-manager-b192ac22.js.map +1 -0
- package/dist/esm/{stencil-tips-be95482d.js → stencil-tips-3b4426a3.js} +10 -1
- package/dist/esm/stencil-tips-3b4426a3.js.map +1 -0
- package/dist/esm/{stencil-values-container-9b9cd73f.js → stencil-values-container-6a1e9ed6.js} +11 -5
- package/dist/esm/stencil-values-container-6a1e9ed6.js.map +1 -0
- package/dist/esm/{timeframe-facet-common-55fc72f3.js → timeframe-facet-common-cee99a11.js} +5 -5
- package/dist/esm/{timeframe-facet-common-55fc72f3.js.map → timeframe-facet-common-cee99a11.js.map} +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/types/components/commerce/atomic-product/atomic-product.d.ts +1 -1
- package/dist/types/components/commerce/product-template-component-utils/context/fetch-product-context.d.ts +12 -0
- package/dist/types/components/commerce/product-template-component-utils/context/interactive-product-context-controller.d.ts +27 -0
- package/dist/types/components/commerce/product-template-component-utils/context/product-context-controller.d.ts +33 -0
- package/dist/types/components/commerce/product-template-component-utils/{stencil-product-template-decorators.d.ts → context/stencil-product-template-decorators.d.ts} +1 -1
- package/dist/types/components/common/atomic-rating/stencil-rating.d.ts +5 -2
- package/dist/types/components/common/atomic-result-placeholder/stencil-placeholders.d.ts +6 -0
- package/dist/types/components/common/breadbox/stencil-breadcrumb-button.d.ts +5 -1
- package/dist/types/components/common/breadbox/stencil-breadcrumb-clear-all.d.ts +5 -1
- package/dist/types/components/common/breadbox/stencil-breadcrumb-container.d.ts +5 -1
- package/dist/types/components/common/breadbox/stencil-breadcrumb-content.d.ts +5 -1
- package/dist/types/components/common/breadbox/stencil-breadcrumb-show-less.d.ts +5 -1
- package/dist/types/components/common/breadbox/stencil-breadcrumb-show-more.d.ts +5 -1
- package/dist/types/components/common/facets/category-facet/all-categories-button.d.ts +0 -2
- package/dist/types/components/common/facets/category-facet/search-value.d.ts +0 -1
- package/dist/types/components/common/facets/category-facet/stencil-all-categories-button.d.ts +0 -2
- package/dist/types/components/common/facets/category-facet/stencil-child-value-link.d.ts +3 -0
- package/dist/types/components/common/facets/category-facet/stencil-children-as-tree-container.d.ts +3 -0
- package/dist/types/components/common/facets/category-facet/stencil-parent-as-tree-container.d.ts +5 -1
- package/dist/types/components/common/facets/category-facet/stencil-parent-button.d.ts +3 -0
- package/dist/types/components/common/facets/category-facet/stencil-parent-value-link.d.ts +3 -0
- package/dist/types/components/common/facets/category-facet/stencil-search-results-container.d.ts +3 -0
- package/dist/types/components/common/facets/category-facet/stencil-search-value.d.ts +3 -1
- package/dist/types/components/common/facets/category-facet/stencil-value-as-tree-container.d.ts +3 -0
- package/dist/types/components/common/facets/category-facet/stencil-value-link.d.ts +6 -0
- package/dist/types/components/common/facets/facet-container/stencil-facet-container.d.ts +3 -0
- package/dist/types/components/common/facets/facet-guard.d.ts +3 -0
- package/dist/types/components/common/facets/facet-header/stencil-facet-header.d.ts +5 -1
- package/dist/types/components/common/facets/facet-placeholder/facet-placeholder.d.ts +5 -1
- package/dist/types/components/common/facets/facet-search/stencil-facet-search-input-guard.d.ts +3 -0
- package/dist/types/components/common/facets/facet-search/stencil-facet-search-input.d.ts +3 -0
- package/dist/types/components/common/facets/facet-search/stencil-facet-search-matches.d.ts +3 -0
- package/dist/types/components/common/facets/facet-search/stencil-facet-search-value.d.ts +3 -0
- package/dist/types/components/common/facets/facet-show-more-less/stencil-facet-show-more-less.d.ts +3 -0
- package/dist/types/components/common/facets/facet-value/stencil-facet-value.d.ts +6 -0
- package/dist/types/components/common/facets/facet-value-box/stencil-facet-value-box.d.ts +3 -0
- package/dist/types/components/common/facets/facet-value-checkbox/stencil-facet-value-checkbox.d.ts +3 -0
- package/dist/types/components/common/facets/facet-value-exclude/stencil-facet-value-exclude.d.ts +5 -1
- package/dist/types/components/common/facets/facet-value-label-highlight/stencil-facet-value-label-highlight.d.ts +3 -0
- package/dist/types/components/common/facets/facet-value-link/stencil-facet-value-link.d.ts +5 -1
- package/dist/types/components/common/facets/facet-values-group/stencil-facet-values-group.d.ts +5 -1
- package/dist/types/components/common/facets/numeric-facet/stencil-value-link.d.ts +3 -0
- package/dist/types/components/common/facets/numeric-facet/stencil-values-container.d.ts +3 -0
- package/dist/types/components/common/generated-answer/copy-button.d.ts +3 -0
- package/dist/types/components/common/generated-answer/feedback-button.d.ts +3 -0
- package/dist/types/components/common/generated-answer/generated-content/generated-markdown-content.d.ts +3 -0
- package/dist/types/components/common/generated-answer/generated-content/generated-text-content.d.ts +3 -0
- package/dist/types/components/common/generated-answer/generated-content-container.d.ts +3 -0
- package/dist/types/components/common/generated-answer/retry-prompt.d.ts +3 -0
- package/dist/types/components/common/generated-answer/show-button.d.ts +3 -0
- package/dist/types/components/common/generated-answer/source-citations.d.ts +3 -0
- package/dist/types/components/common/item-link/stencil-item-link.d.ts +4 -1
- package/dist/types/components/common/item-list/item-display-guard.d.ts +5 -1
- package/dist/types/components/common/item-list/item-list-guard.d.ts +5 -1
- package/dist/types/components/common/item-list/stencil-display-grid.d.ts +5 -1
- package/dist/types/components/common/item-list/stencil-display-table.d.ts +12 -3
- package/dist/types/components/common/item-list/stencil-display-wrapper.d.ts +5 -1
- package/dist/types/components/common/item-text/stencil-item-text-fallback.d.ts +5 -1
- package/dist/types/components/common/item-text/stencil-item-text-highlighted.d.ts +5 -1
- package/dist/types/components/common/load-more/guard.d.ts +5 -1
- package/dist/types/components/common/load-more/stencil-button.d.ts +1 -4
- package/dist/types/components/common/load-more/stencil-container.d.ts +3 -0
- package/dist/types/components/common/load-more/stencil-progress-bar.d.ts +3 -0
- package/dist/types/components/common/load-more/stencil-summary.d.ts +3 -0
- package/dist/types/components/common/no-items/cancel.d.ts +3 -0
- package/dist/types/components/common/no-items/stencil-container.d.ts +3 -0
- package/dist/types/components/common/no-items/stencil-guard.d.ts +3 -0
- package/dist/types/components/common/no-items/stencil-magnifying-glass.d.ts +3 -0
- package/dist/types/components/common/no-items/stencil-no-items.d.ts +3 -0
- package/dist/types/components/common/no-items/stencil-tips.d.ts +3 -0
- package/dist/types/components/common/pager/stencil-pager-buttons.d.ts +8 -16
- package/dist/types/components/common/pager/stencil-pager-navigation.d.ts +3 -5
- package/dist/types/components/common/query-correction/stencil-auto-correction.d.ts +3 -0
- package/dist/types/components/common/query-correction/stencil-correction.d.ts +3 -0
- package/dist/types/components/common/query-correction/stencil-guard.d.ts +3 -0
- package/dist/types/components/common/query-correction/stencil-trigger-correction.d.ts +3 -0
- package/dist/types/components/common/query-error/stencil-container.d.ts +3 -0
- package/dist/types/components/common/query-error/stencil-description.d.ts +3 -0
- package/dist/types/components/common/query-error/stencil-details.d.ts +3 -0
- package/dist/types/components/common/query-error/stencil-guard.d.ts +3 -0
- package/dist/types/components/common/query-error/stencil-icon.d.ts +3 -0
- package/dist/types/components/common/query-error/stencil-link.d.ts +3 -0
- package/dist/types/components/common/query-error/stencil-show-more.d.ts +3 -0
- package/dist/types/components/common/query-error/stencil-title.d.ts +3 -0
- package/dist/types/components/common/query-summary/stencil-container.d.ts +3 -0
- package/dist/types/components/common/query-summary/stencil-guard.d.ts +3 -0
- package/dist/types/components/common/query-summary/stencil-utils.d.ts +3 -10
- package/dist/types/components/common/refine-modal/stencil-body.d.ts +3 -0
- package/dist/types/components/common/refine-modal/stencil-button.d.ts +3 -0
- package/dist/types/components/common/refine-modal/stencil-filters.d.ts +6 -0
- package/dist/types/components/common/refine-modal/stencil-guard.d.ts +3 -0
- package/dist/types/components/common/refine-modal/stencil-modal.d.ts +3 -0
- package/dist/types/components/common/refine-modal/stencil-sort.d.ts +3 -0
- package/dist/types/components/common/result-children/children-wrapper.d.ts +3 -0
- package/dist/types/components/common/result-children/collection-guard.d.ts +3 -0
- package/dist/types/components/common/result-children/guard.d.ts +3 -0
- package/dist/types/components/common/result-children/show-hide-button.d.ts +3 -0
- package/dist/types/components/common/search-box/stencil-search-box-wrapper.d.ts +3 -0
- package/dist/types/components/common/search-box/stencil-search-text-area.d.ts +3 -0
- package/dist/types/components/common/search-box/stencil-submit-button.d.ts +3 -0
- package/dist/types/components/common/search-box/stencil-text-area-clear-button.d.ts +3 -0
- package/dist/types/components/common/smart-snippets/atomic-smart-snippet/smart-snippet-common.d.ts +16 -6
- package/dist/types/components/common/smart-snippets/atomic-smart-snippet-feedback-banner.d.ts +3 -0
- package/dist/types/components/common/smart-snippets/atomic-smart-snippet-feedback-modal/smart-snippet-feedback-modal-common.d.ts +21 -0
- package/dist/types/components/common/smart-snippets/atomic-smart-snippet-source.d.ts +1 -1
- package/dist/types/components/common/smart-snippets/atomic-smart-snippet-suggestions/smart-snippet-suggestions-common.d.ts +18 -0
- package/dist/types/components/common/sort/container.d.ts +3 -0
- package/dist/types/components/common/sort/stencil-guard.d.ts +3 -0
- package/dist/types/components/common/sort/stencil-label.d.ts +3 -0
- package/dist/types/components/common/sort/stencil-option.d.ts +5 -1
- package/dist/types/components/common/sort/stencil-select.d.ts +3 -0
- package/dist/types/components/common/stencil-button.d.ts +2 -2
- package/dist/types/components/common/stencil-carousel.d.ts +5 -1
- package/dist/types/components/common/stencil-checkbox.d.ts +2 -2
- package/dist/types/components/common/stencil-fieldset-group.d.ts +5 -1
- package/dist/types/components/common/stencil-heading.d.ts +1 -1
- package/dist/types/components/common/stencil-iconButton.d.ts +5 -1
- package/dist/types/components/common/stencil-radio-button.d.ts +2 -2
- package/dist/types/components/common/stencil-triStateCheckbox.d.ts +3 -3
- package/dist/types/components/common/suggestions/stencil-instant-item.d.ts +9 -0
- package/dist/types/components/common/suggestions/stencil-query-suggestions.d.ts +12 -0
- package/dist/types/components/common/switch.d.ts +5 -1
- package/dist/types/components/common/tabs/tab-guard.d.ts +3 -0
- package/dist/types/components/insight/user-actions/atomic-insight-user-actions-session/user-action.d.ts +3 -0
- package/dist/types/components/search/atomic-result/atomic-result.d.ts +1 -1
- package/dist/types/components/search/{search-box-suggestions/atomic-search-box-query-suggestions → atomic-search-box-query-suggestions}/atomic-search-box-query-suggestions.d.ts +15 -6
- package/dist/types/components/search/facets/color-facet-checkbox/color-facet-checkbox.d.ts +3 -0
- package/dist/types/components/search/facets/facet-segmented-value/facet-segmented-value.d.ts +3 -0
- package/dist/types/components/search/index.d.ts +1 -0
- package/dist/types/components/search/result-template-component-utils/context/fetch-result-context.d.ts +8 -0
- package/dist/types/components/search/result-template-component-utils/context/interactive-result-context-controller.d.ts +12 -0
- package/dist/types/components/search/result-template-component-utils/context/result-context-controller.d.ts +18 -0
- package/dist/types/components/search/{result-template-components/result-template-decorators.d.ts → result-template-component-utils/context/stencil-result-template-decorators.d.ts} +6 -2
- package/dist/types/components/search/result-template-components/atomic-quickview-sidebar/atomic-quickview-sidebar.d.ts +2 -1
- package/dist/types/components/search/result-template-components/quickview-iframe/quickview-iframe.d.ts +3 -0
- package/dist/types/components.d.ts +0 -49
- package/dist/types/index.d.ts +3 -3
- package/docs/atomic-docs.json +3 -102
- package/package.json +1 -1
- package/dist/atomic/components/atomic-search-box-query-suggestions.d.ts +0 -11
- package/dist/atomic/components/atomic-search-box-query-suggestions.js +0 -8
- package/dist/atomic/components/atomic-search-box-query-suggestions.js.map +0 -1
- package/dist/atomic/components/atomic-search-box-query-suggestions2.js +0 -89
- package/dist/atomic/components/atomic-search-box-query-suggestions2.js.map +0 -1
- package/dist/atomic/components/components/common/facets/category-facet/all-categories-localized-label.js +0 -9
- package/dist/atomic/components/components/common/item-list/fetch-item-context.js +0 -15
- package/dist/atomic/components/decorators/commerce/product-template-decorators.js +0 -68
- package/dist/atomic/components/result-template-decorators.js.map +0 -1
- package/dist/atomic/components/stencil-query-suggestions.js +0 -33
- package/dist/atomic/components/stencil-query-suggestions.js.map +0 -1
- package/dist/atomic/components/suggestions-events.js +0 -40
- package/dist/atomic/components/suggestions-events.js.map +0 -1
- package/dist/atomic/p-037eee11.js.map +0 -1
- package/dist/atomic/p-0535b93d.entry.js.map +0 -1
- package/dist/atomic/p-15547bd5.entry.js.map +0 -1
- package/dist/atomic/p-16f4ce98.js.map +0 -1
- package/dist/atomic/p-182f9112.entry.js.map +0 -1
- package/dist/atomic/p-18684d4c.js.map +0 -1
- package/dist/atomic/p-187193bb.js.map +0 -1
- package/dist/atomic/p-190ddaca.entry.js.map +0 -1
- package/dist/atomic/p-1f059522.js.map +0 -1
- package/dist/atomic/p-1ff7a9da.entry.js.map +0 -1
- package/dist/atomic/p-20cbcfb9.js.map +0 -1
- package/dist/atomic/p-2a02812b.js +0 -2
- package/dist/atomic/p-2a02812b.js.map +0 -1
- package/dist/atomic/p-2c6f895f.js.map +0 -1
- package/dist/atomic/p-2f517a54.entry.js.map +0 -1
- package/dist/atomic/p-307e7fd5.js.map +0 -1
- package/dist/atomic/p-36ff2bc3.entry.js.map +0 -1
- package/dist/atomic/p-3bd8469f.entry.js.map +0 -1
- package/dist/atomic/p-4069d801.entry.js.map +0 -1
- package/dist/atomic/p-448091f7.entry.js.map +0 -1
- package/dist/atomic/p-4b1dc787.js.map +0 -1
- package/dist/atomic/p-4cb91ee7.entry.js.map +0 -1
- package/dist/atomic/p-57049cd2.entry.js.map +0 -1
- package/dist/atomic/p-5a2ef889.js +0 -2
- package/dist/atomic/p-5c73ebc4.js.map +0 -1
- package/dist/atomic/p-5cab535b.entry.js.map +0 -1
- package/dist/atomic/p-5d0a3045.js.map +0 -1
- package/dist/atomic/p-60498b8e.js +0 -2
- package/dist/atomic/p-60498b8e.js.map +0 -1
- package/dist/atomic/p-6439156c.entry.js.map +0 -1
- package/dist/atomic/p-66166975.entry.js.map +0 -1
- package/dist/atomic/p-66d48d1a.js.map +0 -1
- package/dist/atomic/p-74862002.js.map +0 -1
- package/dist/atomic/p-78427c6a.entry.js.map +0 -1
- package/dist/atomic/p-7cb0050f.js.map +0 -1
- package/dist/atomic/p-7d212157.entry.js.map +0 -1
- package/dist/atomic/p-7da7b187.js.map +0 -1
- package/dist/atomic/p-82398f4a.js.map +0 -1
- package/dist/atomic/p-851b9735.entry.js.map +0 -1
- package/dist/atomic/p-852cc16d.entry.js.map +0 -1
- package/dist/atomic/p-8a488991.js.map +0 -1
- package/dist/atomic/p-8b0d881e.entry.js.map +0 -1
- package/dist/atomic/p-8d5228da.entry.js.map +0 -1
- package/dist/atomic/p-8e5e00b4.js.map +0 -1
- package/dist/atomic/p-945ddd53.entry.js.map +0 -1
- package/dist/atomic/p-955092ed.entry.js.map +0 -1
- package/dist/atomic/p-a1798150.entry.js.map +0 -1
- package/dist/atomic/p-a428960a.js.map +0 -1
- package/dist/atomic/p-a5bac939.js.map +0 -1
- package/dist/atomic/p-af93b44c.js +0 -2
- package/dist/atomic/p-af93b44c.js.map +0 -1
- package/dist/atomic/p-b3f6561d.entry.js.map +0 -1
- package/dist/atomic/p-b628ed03.entry.js.map +0 -1
- package/dist/atomic/p-b93ccff9.js.map +0 -1
- package/dist/atomic/p-baff6c43.js.map +0 -1
- package/dist/atomic/p-bd01acd5.entry.js.map +0 -1
- package/dist/atomic/p-bd2703e9.js.map +0 -1
- package/dist/atomic/p-be5d3c54.js.map +0 -1
- package/dist/atomic/p-c2a5dac0.entry.js.map +0 -1
- package/dist/atomic/p-c5164dbf.entry.js.map +0 -1
- package/dist/atomic/p-c619df9b.js.map +0 -1
- package/dist/atomic/p-ca1425cc.entry.js +0 -2
- package/dist/atomic/p-ca1425cc.entry.js.map +0 -1
- package/dist/atomic/p-ca37969c.js +0 -2
- package/dist/atomic/p-ca37969c.js.map +0 -1
- package/dist/atomic/p-d2e8a2d4.js.map +0 -1
- package/dist/atomic/p-dbc09018.js.map +0 -1
- package/dist/atomic/p-dea22a8d.entry.js.map +0 -1
- package/dist/atomic/p-df8d38ca.entry.js.map +0 -1
- package/dist/atomic/p-e49ad083.entry.js.map +0 -1
- package/dist/atomic/p-e6dc9de7.entry.js.map +0 -1
- package/dist/atomic/p-e8176ac8.entry.js +0 -2
- package/dist/atomic/p-e8176ac8.entry.js.map +0 -1
- package/dist/atomic/p-e988f378.js.map +0 -1
- package/dist/atomic/p-e9dc8e90.entry.js.map +0 -1
- package/dist/atomic/p-ef78082a.js.map +0 -1
- package/dist/atomic/p-f0c657f4.entry.js.map +0 -1
- package/dist/atomic/p-f8b608ba.js.map +0 -1
- package/dist/cjs/atomic-search-box-query-suggestions.cjs.entry.js +0 -76
- package/dist/cjs/atomic-search-box-query-suggestions.cjs.entry.js.map +0 -1
- package/dist/cjs/facet-guard-328b588d.js.map +0 -1
- package/dist/cjs/facet-placeholder-22074f05.js.map +0 -1
- package/dist/cjs/generated-answer-common-3c400311.js.map +0 -1
- package/dist/cjs/item-list-guard-506b695a.js.map +0 -1
- package/dist/cjs/result-template-decorators-432d11a9.js.map +0 -1
- package/dist/cjs/show-hide-button-c4717f52.js.map +0 -1
- package/dist/cjs/smart-snippet-common-1fd0dad5.js.map +0 -1
- package/dist/cjs/smart-snippet-feedback-modal-common-9721e3c4.js.map +0 -1
- package/dist/cjs/smart-snippet-suggestions-common-024c89b7.js.map +0 -1
- package/dist/cjs/stencil-carousel-a8df6f3c.js.map +0 -1
- package/dist/cjs/stencil-checkbox-81c51bbd.js.map +0 -1
- package/dist/cjs/stencil-display-grid-93c5802a.js.map +0 -1
- package/dist/cjs/stencil-display-wrapper-498de571.js.map +0 -1
- package/dist/cjs/stencil-facet-search-matches-101e0ede.js.map +0 -1
- package/dist/cjs/stencil-facet-show-more-less-70f4d20d.js.map +0 -1
- package/dist/cjs/stencil-facet-value-5957b403.js.map +0 -1
- package/dist/cjs/stencil-facet-value-box-11aa05dd.js.map +0 -1
- package/dist/cjs/stencil-facet-value-checkbox-fed178ad.js.map +0 -1
- package/dist/cjs/stencil-facet-value-label-highlight-c2421e8f.js.map +0 -1
- package/dist/cjs/stencil-facet-value-link-8a095034.js.map +0 -1
- package/dist/cjs/stencil-facet-values-group-07b50fc0.js.map +0 -1
- package/dist/cjs/stencil-fieldset-group-3b25c138.js.map +0 -1
- package/dist/cjs/stencil-heading-2faee1f7.js.map +0 -1
- package/dist/cjs/stencil-iconButton-738b1548.js.map +0 -1
- package/dist/cjs/stencil-item-link-9feaef61.js.map +0 -1
- package/dist/cjs/stencil-link-9336b8c1.js.map +0 -1
- package/dist/cjs/stencil-magnifying-glass-c1d386a1.js.map +0 -1
- package/dist/cjs/stencil-modal-9035ea2a.js.map +0 -1
- package/dist/cjs/stencil-placeholders-b8c896fa.js.map +0 -1
- package/dist/cjs/stencil-query-suggestions-03268ecc.js +0 -38
- package/dist/cjs/stencil-query-suggestions-03268ecc.js.map +0 -1
- package/dist/cjs/stencil-radio-button-ea7e71d3.js.map +0 -1
- package/dist/cjs/stencil-rating-a40e50dd.js.map +0 -1
- package/dist/cjs/stencil-suggestion-manager-2cba6d69.js.map +0 -1
- package/dist/cjs/stencil-tips-e913f891.js.map +0 -1
- package/dist/cjs/stencil-values-container-d20f9b28.js.map +0 -1
- package/dist/esm/atomic-search-box-query-suggestions.entry.js +0 -72
- package/dist/esm/atomic-search-box-query-suggestions.entry.js.map +0 -1
- package/dist/esm/facet-guard-4b795e90.js.map +0 -1
- package/dist/esm/facet-placeholder-4959a92a.js.map +0 -1
- package/dist/esm/generated-answer-common-9d0c5ada.js.map +0 -1
- package/dist/esm/item-list-guard-22b0711a.js.map +0 -1
- package/dist/esm/result-template-decorators-2ed76ea9.js.map +0 -1
- package/dist/esm/show-hide-button-35eb419d.js.map +0 -1
- package/dist/esm/smart-snippet-common-5ed4bdfa.js.map +0 -1
- package/dist/esm/smart-snippet-feedback-modal-common-835aa607.js.map +0 -1
- package/dist/esm/smart-snippet-suggestions-common-10bd1697.js.map +0 -1
- package/dist/esm/stencil-carousel-e1f25f7c.js.map +0 -1
- package/dist/esm/stencil-checkbox-9d8fe5f6.js.map +0 -1
- package/dist/esm/stencil-display-grid-b9eb7397.js.map +0 -1
- package/dist/esm/stencil-display-wrapper-5b32e77c.js.map +0 -1
- package/dist/esm/stencil-facet-search-matches-872d94d2.js.map +0 -1
- package/dist/esm/stencil-facet-show-more-less-e575f20f.js.map +0 -1
- package/dist/esm/stencil-facet-value-9deafe8e.js.map +0 -1
- package/dist/esm/stencil-facet-value-box-b0dc7e73.js.map +0 -1
- package/dist/esm/stencil-facet-value-checkbox-c0df7c4e.js.map +0 -1
- package/dist/esm/stencil-facet-value-label-highlight-b4083ffd.js.map +0 -1
- package/dist/esm/stencil-facet-value-link-88512e29.js.map +0 -1
- package/dist/esm/stencil-facet-values-group-1108573d.js.map +0 -1
- package/dist/esm/stencil-fieldset-group-5fa357cd.js.map +0 -1
- package/dist/esm/stencil-heading-2b28a9b9.js.map +0 -1
- package/dist/esm/stencil-iconButton-ba40899c.js.map +0 -1
- package/dist/esm/stencil-item-link-5a3f8f23.js.map +0 -1
- package/dist/esm/stencil-link-b676e261.js.map +0 -1
- package/dist/esm/stencil-magnifying-glass-041294b6.js.map +0 -1
- package/dist/esm/stencil-modal-467f7f33.js.map +0 -1
- package/dist/esm/stencil-placeholders-58a0c818.js.map +0 -1
- package/dist/esm/stencil-query-suggestions-5d6a46d7.js +0 -33
- package/dist/esm/stencil-query-suggestions-5d6a46d7.js.map +0 -1
- package/dist/esm/stencil-radio-button-cae5f40a.js.map +0 -1
- package/dist/esm/stencil-rating-2d6963a3.js.map +0 -1
- package/dist/esm/stencil-suggestion-manager-376f83e8.js.map +0 -1
- package/dist/esm/stencil-tips-be95482d.js.map +0 -1
- package/dist/esm/stencil-values-container-9b9cd73f.js.map +0 -1
- package/dist/types/components/common/expandable-text/stencil-expandable-text.d.ts +0 -13
- package/dist/types/components/common/facets/category-facet/all-categories-localized-label.d.ts +0 -6
- package/dist/types/components/common/generated-answer/typing-loader.d.ts +0 -2
- package/dist/types/components/common/image-carousel/stencil-image-carousel-indicators.d.ts +0 -12
- package/dist/types/components/common/image-carousel/stencil-image-carousel.d.ts +0 -15
- package/dist/types/components/common/items-per-page/stencil-choices.d.ts +0 -14
- package/dist/types/components/common/items-per-page/stencil-label.d.ts +0 -2
- package/dist/types/components/common/pager/stencil-pager-guard.d.ts +0 -13
- package/dist/types/components/common/suggestions/stencil-recent-queries.d.ts +0 -20
- package/dist/types/decorators/commerce/product-template-decorators.d.ts +0 -68
- /package/dist/atomic/{p-5606819d.entry.js.map → p-039bd7df.entry.js.map} +0 -0
- /package/dist/atomic/{p-22b76c96.entry.js.map → p-13ac0c72.entry.js.map} +0 -0
- /package/dist/atomic/{p-77d00da1.entry.js.map → p-15697c4b.entry.js.map} +0 -0
- /package/dist/atomic/{p-14bad769.entry.js.map → p-1d6d0186.entry.js.map} +0 -0
- /package/dist/atomic/{p-48bab1a6.entry.js.map → p-1f903f31.entry.js.map} +0 -0
- /package/dist/atomic/{p-47b41b27.entry.js.map → p-24bb7b3d.entry.js.map} +0 -0
- /package/dist/atomic/{p-6698d5e9.entry.js.map → p-2e9ecdf5.entry.js.map} +0 -0
- /package/dist/atomic/{p-76c14d82.entry.js.map → p-32544f8a.entry.js.map} +0 -0
- /package/dist/atomic/{p-a6dde0f6.entry.js.map → p-390deb3d.entry.js.map} +0 -0
- /package/dist/atomic/{p-2f437b47.entry.js.map → p-3b632123.entry.js.map} +0 -0
- /package/dist/atomic/{p-3a01a398.entry.js.map → p-43fc38fb.entry.js.map} +0 -0
- /package/dist/atomic/{p-dd24c66a.entry.js.map → p-443f3422.entry.js.map} +0 -0
- /package/dist/atomic/{p-b29d121c.js.map → p-4651cceb.js.map} +0 -0
- /package/dist/atomic/{p-400c28b6.entry.js.map → p-498771d3.entry.js.map} +0 -0
- /package/dist/atomic/{p-558f2191.entry.js.map → p-52878b95.entry.js.map} +0 -0
- /package/dist/atomic/{p-c8190eb9.entry.js.map → p-5a644e15.entry.js.map} +0 -0
- /package/dist/atomic/{p-479cb38a.entry.js.map → p-5d4e9821.entry.js.map} +0 -0
- /package/dist/atomic/{p-b84108f3.entry.js.map → p-6d323b9a.entry.js.map} +0 -0
- /package/dist/atomic/{p-088d634c.entry.js.map → p-733a8082.entry.js.map} +0 -0
- /package/dist/atomic/{p-b1b583a0.entry.js.map → p-74380cbc.entry.js.map} +0 -0
- /package/dist/atomic/{p-35c2ee5f.entry.js.map → p-752f4533.entry.js.map} +0 -0
- /package/dist/atomic/{p-c8e27f4e.entry.js.map → p-79863911.entry.js.map} +0 -0
- /package/dist/atomic/{p-ef8f2239.entry.js.map → p-7afa3c6a.entry.js.map} +0 -0
- /package/dist/atomic/{p-db2d92c5.entry.js.map → p-7b8607e0.entry.js.map} +0 -0
- /package/dist/atomic/{p-7741124a.entry.js.map → p-7c87512d.entry.js.map} +0 -0
- /package/dist/atomic/{p-33245038.entry.js.map → p-86bba9db.entry.js.map} +0 -0
- /package/dist/atomic/{p-ed413091.entry.js.map → p-8a30d1e9.entry.js.map} +0 -0
- /package/dist/atomic/{p-318c96f5.entry.js.map → p-9519e656.entry.js.map} +0 -0
- /package/dist/atomic/{p-70747efa.entry.js.map → p-951bdd73.entry.js.map} +0 -0
- /package/dist/atomic/{p-5a83b7e5.entry.js.map → p-99bb5042.entry.js.map} +0 -0
- /package/dist/atomic/{p-fc71835d.entry.js.map → p-99d0c865.entry.js.map} +0 -0
- /package/dist/atomic/{p-80290dd3.entry.js.map → p-9d492524.entry.js.map} +0 -0
- /package/dist/atomic/{p-d0ab0125.entry.js.map → p-b0a20358.entry.js.map} +0 -0
- /package/dist/atomic/{p-0ee7cab8.entry.js.map → p-b0f6a52e.entry.js.map} +0 -0
- /package/dist/atomic/{p-e6871a3f.entry.js.map → p-bef3a536.entry.js.map} +0 -0
- /package/dist/atomic/{p-7fe23afc.entry.js.map → p-bf0a780e.entry.js.map} +0 -0
- /package/dist/atomic/{p-9b2561e8.entry.js.map → p-bfb2e085.entry.js.map} +0 -0
- /package/dist/atomic/{p-f1241140.entry.js.map → p-c0491e26.entry.js.map} +0 -0
- /package/dist/atomic/{p-e276c7e0.entry.js.map → p-c1cd0a45.entry.js.map} +0 -0
- /package/dist/atomic/{p-1910eb7f.entry.js.map → p-c52c9e67.entry.js.map} +0 -0
- /package/dist/atomic/{p-e455330c.entry.js.map → p-cd4394fe.entry.js.map} +0 -0
- /package/dist/atomic/{p-f37dea9e.entry.js.map → p-d5f4597b.entry.js.map} +0 -0
- /package/dist/atomic/{p-7242b46e.entry.js.map → p-e1052201.entry.js.map} +0 -0
- /package/dist/atomic/{p-874f0a4c.entry.js.map → p-ed515fef.entry.js.map} +0 -0
- /package/dist/atomic/{p-a54f3f24.entry.js.map → p-ee19b388.entry.js.map} +0 -0
- /package/dist/atomic/{p-7045745d.entry.js.map → p-f25c9582.entry.js.map} +0 -0
- /package/dist/atomic/{p-99d4c4bf.entry.js.map → p-fdaf9f6c.entry.js.map} +0 -0
- /package/dist/atomic/{p-fd1ef9e3.entry.js.map → p-fdd6264f.entry.js.map} +0 -0
@@ -1 +1 @@
|
|
1
|
-
{"file":"atomic-insight-user-actions-session2.js","mappings":"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","names":[],"sources":["src/components/insight/user-actions/atomic-insight-user-actions-session/user-action.tsx","src/components/insight/user-actions/atomic-insight-user-actions-session/atomic-insight-user-actions-session.pcss?tag=atomic-insight-user-actions-session&encapsulation=shadow","src/components/insight/user-actions/atomic-insight-user-actions-session/atomic-insight-user-actions-session.tsx"],"sourcesContent":["import {UserAction as IUserAction} from '@coveo/headless/insight';\nimport {FunctionalComponent, h} from '@stencil/core';\nimport BookmarkIcon from '../../../../images/bookmark.svg';\nimport DocumentIcon from '../../../../images/document.svg';\nimport PointIcon from '../../../../images/point.svg';\nimport QuickviewIcon from '../../../../images/quickview.svg';\nimport SearchIcon from '../../../../images/search.svg';\nimport {parseTimestampToDateDetails} from '../../../../utils/date-utils';\nimport {InsightBindings} from '../../atomic-insight-interface/atomic-insight-interface';\n\nconst icons = {\n SEARCH: SearchIcon,\n CLICK: DocumentIcon,\n VIEW: QuickviewIcon,\n CUSTOM: PointIcon,\n TICKET_CREATION: BookmarkIcon,\n};\n\ninterface UserAction {\n action: IUserAction;\n bindings: InsightBindings;\n}\n\nexport const UserAction: FunctionalComponent<UserAction> = ({\n bindings,\n action,\n}) => {\n const renderActionTimestamp = () => {\n const {hours, minutes} = parseTimestampToDateDetails(action.timestamp);\n\n const formattedHours = String(hours).padStart(2, '0');\n const formattedMinutes = String(minutes).padStart(2, '0');\n\n return `${formattedHours}:${formattedMinutes}`;\n };\n\n const renderIcon = () => {\n const iconClasses = `w-3 h-3 ${['CLICK', 'VIEW'].includes(action.actionType) ? 'text-primary' : ''}`;\n\n return (\n <atomic-icon\n icon={icons[action.actionType]}\n class={iconClasses}\n ></atomic-icon>\n );\n };\n\n const renderActionTitle = () => {\n switch (action.actionType) {\n case 'TICKET_CREATION':\n return (\n <div class=\"ticket-creation-action__text text-xs font-semibold\">\n {bindings.i18n.t('ticket-created')}\n </div>\n );\n case 'CUSTOM':\n return (\n <div class=\"text-xs font-semibold\">\n {action.eventData?.value ?? action.eventData?.type}\n </div>\n );\n case 'SEARCH':\n return (\n <div class=\"text-xs font-semibold\">\n {action.query || bindings.i18n.t('empty-search')}\n </div>\n );\n case 'VIEW':\n return (\n <a\n href={action.document?.contentIdValue}\n class=\"text-primary text-xs font-semibold\"\n target=\"_blank\"\n >\n {action.document?.title}\n </a>\n );\n case 'CLICK':\n return (\n <div class=\"text-xs font-semibold\">{action.document?.title}</div>\n );\n default:\n return null;\n }\n };\n\n return (\n <div class=\"flex\">\n <div class=\"flex-none pr-2\">\n <div class=\"flex justify-center py-1\">{renderIcon()}</div>\n <div class=\"flex justify-center py-1\">\n <div class=\"user-action__separator h-7 w-0.5 rounded\"></div>\n </div>\n </div>\n <div class=\"flex-1\">\n {renderActionTitle()}\n <div class=\"text-neutral-dark text-xxs flex py-2 font-light\">\n <div>{renderActionTimestamp()}</div>\n <div class=\"px-2\">{action.searchHub}</div>\n </div>\n </div>\n </div>\n );\n};\n","@import '../../../../global/global.pcss';\n\n.session-start-icon__container {\n background-color: #fbb439;\n}\n\n.user-action__separator {\n @apply bg-neutral;\n}\n\n.ticket-creation-action__text {\n @apply text-success;\n}\n\n.text-xxs {\n font-size: 0.625rem;\n}\n","import {UserAction as IUserAction} from '@coveo/headless/insight';\nimport {Component, h, Prop, Watch, State} from '@stencil/core';\nimport Flag from '../../../../images/flag.svg';\nimport ThreeDotsIcon from '../../../../images/three-dots.svg';\nimport {parseTimestampToDateDetails} from '../../../../utils/date-utils';\nimport {InitializeBindings} from '../../../../utils/initialization-utils';\nimport {Button} from '../../../common/stencil-button';\nimport {InsightBindings} from '../../atomic-insight-interface/atomic-insight-interface';\nimport {UserAction} from './user-action';\n\nexport type UserActionType =\n | 'SEARCH'\n | 'CLICK'\n | 'TICKET_CREATION'\n | 'VIEW'\n | 'CUSTOM';\n\n/**\n * @internal\n * The `AtomicInsightUserActionSession` component displays all the user actions that took place during a specific user session.\n * @category Insight Panel\n * @example\n * <atomic-insight-user-actions-session userActions={actions} startTimestamp={1723035731}></atomic-insight-user-actions-session>\n */\n@Component({\n tag: 'atomic-insight-user-actions-session',\n styleUrl: 'atomic-insight-user-actions-session.pcss',\n shadow: true,\n})\nexport class AtomicInsightUserActionsSession {\n @InitializeBindings() public bindings!: InsightBindings;\n @State() public error!: Error;\n\n /**\n * The start time of the session as a Unix timestamp.\n */\n @Prop() public startTimestamp!: number;\n /**\n * The list of user actions performed during the session.\n */\n @Prop() public userActions!: Array<IUserAction>;\n\n private userActionsToDisplay: Array<IUserAction> = [];\n private userActionsAfterCaseCreation: Array<IUserAction> = [];\n @State() areActionsAfterCaseCreationVisible = false;\n\n connectedCallback() {\n this.prepareUserActionsToDisplay();\n }\n\n @Watch('userActions')\n prepareUserActionsToDisplay() {\n const caseCreationIndex = this.userActions.findIndex(\n ({actionType}) => actionType === 'TICKET_CREATION'\n );\n const isCaseCreationSession = caseCreationIndex !== -1;\n\n if (!isCaseCreationSession) {\n this.userActionsToDisplay = this.userActions;\n this.userActionsAfterCaseCreation = [];\n } else {\n this.userActionsToDisplay = this.userActions.slice(caseCreationIndex);\n this.userActionsAfterCaseCreation = this.userActions.slice(\n 0,\n caseCreationIndex\n );\n }\n }\n\n showActionsAfterCaseCreation() {\n this.areActionsAfterCaseCreationVisible = true;\n }\n\n renderSessionStartDate() {\n const caseCreationIndex = this.userActions.findIndex(\n ({actionType}) => actionType === 'TICKET_CREATION'\n );\n const isCaseCreationSession = caseCreationIndex !== -1;\n\n const {year, month, dayOfWeek, day} = parseTimestampToDateDetails(\n this.startTimestamp\n );\n\n const formatedStartDate = `${dayOfWeek}. ${month} ${day}, ${year}`;\n return (\n <div class=\"flex items-center px-2 pb-3\">\n {isCaseCreationSession ? (\n <div class=\"session-start-icon__container mr-2 flex h-5 w-5 items-center justify-center rounded-full\">\n <atomic-icon icon={Flag} class=\"h-3 w-3\"></atomic-icon>\n </div>\n ) : null}\n\n <div class=\"flex-1 font-semibold\">{formatedStartDate}</div>\n </div>\n );\n }\n\n renderActions(actions: Array<IUserAction>) {\n return (\n <ol class=\"px-3\">\n {actions?.map((action) => (\n <UserAction action={action} bindings={this.bindings}></UserAction>\n ))}\n </ol>\n );\n }\n\n renderShowMoreActionsButton() {\n const btnClasses = 'flex items-center p-1 max-w-full';\n const label = this.bindings.i18n.t('more-actions-in-session', {\n count: this.userActionsAfterCaseCreation.length,\n });\n return (\n <div\n data-testid=\"show-more-actions-button\"\n class=\"flex items-center px-3 pb-3\"\n >\n <div class=\"flex justify-center pr-2\">\n <atomic-icon icon={ThreeDotsIcon} class=\"h-3 w-3\"></atomic-icon>\n </div>\n <div class=\"flex-1\">\n <Button\n style=\"text-primary\"\n part=\"show-more-actions-button\"\n class={btnClasses}\n ariaLabel={label}\n onClick={this.showActionsAfterCaseCreation.bind(this)}\n >\n <span class=\"truncate text-xs font-light\">{label}</span>\n </Button>\n </div>\n </div>\n );\n }\n\n public render() {\n const isShowMoreActionsButtonVisible =\n !this.areActionsAfterCaseCreationVisible &&\n !!this.userActionsAfterCaseCreation.length;\n\n return (\n <div>\n {this.renderSessionStartDate()}\n\n {this.areActionsAfterCaseCreationVisible && (\n <div data-testid=\"more-actions-section\">\n {this.renderActions(this.userActionsAfterCaseCreation)}\n </div>\n )}\n\n {isShowMoreActionsButtonVisible && this.renderShowMoreActionsButton()}\n\n {this.renderActions(this.userActionsToDisplay)}\n </div>\n );\n }\n}\n"],"version":3}
|
1
|
+
{"file":"atomic-insight-user-actions-session2.js","mappings":"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","names":[],"sources":["src/components/insight/user-actions/atomic-insight-user-actions-session/user-action.tsx","src/components/insight/user-actions/atomic-insight-user-actions-session/atomic-insight-user-actions-session.pcss?tag=atomic-insight-user-actions-session&encapsulation=shadow","src/components/insight/user-actions/atomic-insight-user-actions-session/atomic-insight-user-actions-session.tsx"],"sourcesContent":["import {UserAction as IUserAction} from '@coveo/headless/insight';\nimport {FunctionalComponent, h} from '@stencil/core';\nimport BookmarkIcon from '../../../../images/bookmark.svg';\nimport DocumentIcon from '../../../../images/document.svg';\nimport PointIcon from '../../../../images/point.svg';\nimport QuickviewIcon from '../../../../images/quickview.svg';\nimport SearchIcon from '../../../../images/search.svg';\nimport {parseTimestampToDateDetails} from '../../../../utils/date-utils';\nimport {InsightBindings} from '../../atomic-insight-interface/atomic-insight-interface';\n\nconst icons = {\n SEARCH: SearchIcon,\n CLICK: DocumentIcon,\n VIEW: QuickviewIcon,\n CUSTOM: PointIcon,\n TICKET_CREATION: BookmarkIcon,\n};\n\ninterface UserAction {\n action: IUserAction;\n bindings: InsightBindings;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const UserAction: FunctionalComponent<UserAction> = ({\n bindings,\n action,\n}) => {\n const renderActionTimestamp = () => {\n const {hours, minutes} = parseTimestampToDateDetails(action.timestamp);\n\n const formattedHours = String(hours).padStart(2, '0');\n const formattedMinutes = String(minutes).padStart(2, '0');\n\n return `${formattedHours}:${formattedMinutes}`;\n };\n\n const renderIcon = () => {\n const iconClasses = `w-3 h-3 ${['CLICK', 'VIEW'].includes(action.actionType) ? 'text-primary' : ''}`;\n\n return (\n <atomic-icon\n icon={icons[action.actionType]}\n class={iconClasses}\n ></atomic-icon>\n );\n };\n\n const renderActionTitle = () => {\n switch (action.actionType) {\n case 'TICKET_CREATION':\n return (\n <div class=\"ticket-creation-action__text text-xs font-semibold\">\n {bindings.i18n.t('ticket-created')}\n </div>\n );\n case 'CUSTOM':\n return (\n <div class=\"text-xs font-semibold\">\n {action.eventData?.value ?? action.eventData?.type}\n </div>\n );\n case 'SEARCH':\n return (\n <div class=\"text-xs font-semibold\">\n {action.query || bindings.i18n.t('empty-search')}\n </div>\n );\n case 'VIEW':\n return (\n <a\n href={action.document?.contentIdValue}\n class=\"text-primary text-xs font-semibold\"\n target=\"_blank\"\n >\n {action.document?.title}\n </a>\n );\n case 'CLICK':\n return (\n <div class=\"text-xs font-semibold\">{action.document?.title}</div>\n );\n default:\n return null;\n }\n };\n\n return (\n <div class=\"flex\">\n <div class=\"flex-none pr-2\">\n <div class=\"flex justify-center py-1\">{renderIcon()}</div>\n <div class=\"flex justify-center py-1\">\n <div class=\"user-action__separator h-7 w-0.5 rounded\"></div>\n </div>\n </div>\n <div class=\"flex-1\">\n {renderActionTitle()}\n <div class=\"text-neutral-dark text-xxs flex py-2 font-light\">\n <div>{renderActionTimestamp()}</div>\n <div class=\"px-2\">{action.searchHub}</div>\n </div>\n </div>\n </div>\n );\n};\n","@import '../../../../global/global.pcss';\n\n.session-start-icon__container {\n background-color: #fbb439;\n}\n\n.user-action__separator {\n @apply bg-neutral;\n}\n\n.ticket-creation-action__text {\n @apply text-success;\n}\n\n.text-xxs {\n font-size: 0.625rem;\n}\n","import {UserAction as IUserAction} from '@coveo/headless/insight';\nimport {Component, h, Prop, Watch, State} from '@stencil/core';\nimport Flag from '../../../../images/flag.svg';\nimport ThreeDotsIcon from '../../../../images/three-dots.svg';\nimport {parseTimestampToDateDetails} from '../../../../utils/date-utils';\nimport {InitializeBindings} from '../../../../utils/initialization-utils';\nimport {Button} from '../../../common/stencil-button';\nimport {InsightBindings} from '../../atomic-insight-interface/atomic-insight-interface';\nimport {UserAction} from './user-action';\n\nexport type UserActionType =\n | 'SEARCH'\n | 'CLICK'\n | 'TICKET_CREATION'\n | 'VIEW'\n | 'CUSTOM';\n\n/**\n * @internal\n * The `AtomicInsightUserActionSession` component displays all the user actions that took place during a specific user session.\n * @category Insight Panel\n * @example\n * <atomic-insight-user-actions-session userActions={actions} startTimestamp={1723035731}></atomic-insight-user-actions-session>\n */\n@Component({\n tag: 'atomic-insight-user-actions-session',\n styleUrl: 'atomic-insight-user-actions-session.pcss',\n shadow: true,\n})\nexport class AtomicInsightUserActionsSession {\n @InitializeBindings() public bindings!: InsightBindings;\n @State() public error!: Error;\n\n /**\n * The start time of the session as a Unix timestamp.\n */\n @Prop() public startTimestamp!: number;\n /**\n * The list of user actions performed during the session.\n */\n @Prop() public userActions!: Array<IUserAction>;\n\n private userActionsToDisplay: Array<IUserAction> = [];\n private userActionsAfterCaseCreation: Array<IUserAction> = [];\n @State() areActionsAfterCaseCreationVisible = false;\n\n connectedCallback() {\n this.prepareUserActionsToDisplay();\n }\n\n @Watch('userActions')\n prepareUserActionsToDisplay() {\n const caseCreationIndex = this.userActions.findIndex(\n ({actionType}) => actionType === 'TICKET_CREATION'\n );\n const isCaseCreationSession = caseCreationIndex !== -1;\n\n if (!isCaseCreationSession) {\n this.userActionsToDisplay = this.userActions;\n this.userActionsAfterCaseCreation = [];\n } else {\n this.userActionsToDisplay = this.userActions.slice(caseCreationIndex);\n this.userActionsAfterCaseCreation = this.userActions.slice(\n 0,\n caseCreationIndex\n );\n }\n }\n\n showActionsAfterCaseCreation() {\n this.areActionsAfterCaseCreationVisible = true;\n }\n\n renderSessionStartDate() {\n const caseCreationIndex = this.userActions.findIndex(\n ({actionType}) => actionType === 'TICKET_CREATION'\n );\n const isCaseCreationSession = caseCreationIndex !== -1;\n\n const {year, month, dayOfWeek, day} = parseTimestampToDateDetails(\n this.startTimestamp\n );\n\n const formatedStartDate = `${dayOfWeek}. ${month} ${day}, ${year}`;\n return (\n <div class=\"flex items-center px-2 pb-3\">\n {isCaseCreationSession ? (\n <div class=\"session-start-icon__container mr-2 flex h-5 w-5 items-center justify-center rounded-full\">\n <atomic-icon icon={Flag} class=\"h-3 w-3\"></atomic-icon>\n </div>\n ) : null}\n\n <div class=\"flex-1 font-semibold\">{formatedStartDate}</div>\n </div>\n );\n }\n\n renderActions(actions: Array<IUserAction>) {\n return (\n <ol class=\"px-3\">\n {actions?.map((action) => (\n <UserAction action={action} bindings={this.bindings}></UserAction>\n ))}\n </ol>\n );\n }\n\n renderShowMoreActionsButton() {\n const btnClasses = 'flex items-center p-1 max-w-full';\n const label = this.bindings.i18n.t('more-actions-in-session', {\n count: this.userActionsAfterCaseCreation.length,\n });\n return (\n <div\n data-testid=\"show-more-actions-button\"\n class=\"flex items-center px-3 pb-3\"\n >\n <div class=\"flex justify-center pr-2\">\n <atomic-icon icon={ThreeDotsIcon} class=\"h-3 w-3\"></atomic-icon>\n </div>\n <div class=\"flex-1\">\n <Button\n style=\"text-primary\"\n part=\"show-more-actions-button\"\n class={btnClasses}\n ariaLabel={label}\n onClick={this.showActionsAfterCaseCreation.bind(this)}\n >\n <span class=\"truncate text-xs font-light\">{label}</span>\n </Button>\n </div>\n </div>\n );\n }\n\n public render() {\n const isShowMoreActionsButtonVisible =\n !this.areActionsAfterCaseCreationVisible &&\n !!this.userActionsAfterCaseCreation.length;\n\n return (\n <div>\n {this.renderSessionStartDate()}\n\n {this.areActionsAfterCaseCreationVisible && (\n <div data-testid=\"more-actions-section\">\n {this.renderActions(this.userActionsAfterCaseCreation)}\n </div>\n )}\n\n {isShowMoreActionsButtonVisible && this.renderShowMoreActionsButton()}\n\n {this.renderActions(this.userActionsToDisplay)}\n </div>\n );\n }\n}\n"],"version":3}
|
@@ -7,7 +7,7 @@ import { a as buildStringTemplateFromResult } from './result-utils.js';
|
|
7
7
|
import { g as getDefaultSlotFromHost } from './slot-utils.js';
|
8
8
|
import { g as getAttributesFromLinkSlot } from './attributes-slot.js';
|
9
9
|
import { L as LinkWithItemAnalytics } from './stencil-item-link.js';
|
10
|
-
import { R as ResultContext, I as InteractiveResultContext } from './result-template-decorators.js';
|
10
|
+
import { R as ResultContext, I as InteractiveResultContext } from './stencil-result-template-decorators.js';
|
11
11
|
import { d as defineCustomElement$3 } from './atomic-result-text2.js';
|
12
12
|
import { d as defineCustomElement$2 } from './atomic-text2.js';
|
13
13
|
|
@@ -53,7 +53,7 @@ const AtomicIPXResultLink = /*@__PURE__*/ proxyCustomElement(class AtomicIPXResu
|
|
53
53
|
const href = isUndefined(this.hrefTemplate)
|
54
54
|
? this.result.clickUri
|
55
55
|
: buildStringTemplateFromResult(this.hrefTemplate, this.result, this.bindings);
|
56
|
-
return (h(LinkWithItemAnalytics, { key: '
|
56
|
+
return (h(LinkWithItemAnalytics, { key: 'dce9d569cd2ad2a03e89e5d86365dbfb3ca78deb', href: href, onSelect: () => this.onSelect(), onBeginDelayedSelect: () => this.interactiveResult.beginDelayedSelect(), onCancelPendingSelect: () => this.interactiveResult.cancelPendingSelect(), attributes: this.linkAttributes, stopPropagation: this.stopPropagation }, this.hasDefaultSlot ? (h("slot", null)) : (h("atomic-result-text", { field: "title", default: "no-title" }))));
|
57
57
|
}
|
58
58
|
get host() { return this; }
|
59
59
|
static get style() { return AtomicIpxResultLinkStyle0; }
|
@@ -1 +1 @@
|
|
1
|
-
{"file":"atomic-ipx-result-link.js","mappings":";;;;;;;;;;;;;AAAA,MAAM,sBAAsB,GAAG,o8kEAAo8kE,CAAC;AACp+kE,kCAAe,sBAAsB;;;;;;;;;;;;MCiCxB,mBAAmB;;;;;;IA6BvB,UAAU;QACf,IAAI,CAAC,IAAI,CAAC,aAAa,CACrB,gBAAgB,CACd,+BAA+B,EAC/B,CAAC,eAAwB;YACvB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;SACxC,CACF,CACF,CAAC;QACF,IAAI,CAAC,qBAAqB,GAAG,4BAA4B,CACvD,IAAI,CAAC,QAAQ,CAAC,MAAM,CACrB,CAAC;KACH;IAEM,iBAAiB;QACtB,MAAM,QAAQ,GAAG,YAAY,CAAC;QAC9B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,cAAc,GAAG,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;KACtE;IAEM,MAAM,QAAQ;QACnB,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC;QACtD,IAAI,iBAAiB,IAAI,IAAI,CAAC,qBAAqB,EAAE;YACnD,MAAM,MAAM,GACV,IAAI,CAAC,qBAAqB,CAAC,gCAAgC,CACzD,iBAAiB,CAClB,CAAC;YACJ,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SACvC;QACD,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;KACjC;IAEM,MAAM;QACX,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;cACvC,IAAI,CAAC,MAAM,CAAC,QAAQ;cACpB,6BAA6B,CAC3B,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,CACd,CAAC;QAEN,QACE,EAAC,qBAAqB,qDACpB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,MAAM,IAAI,CAAC,QAAQ,EAAE,EAC/B,oBAAoB,EAAE,MAAM,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,EACvE,qBAAqB,EAAE,MACrB,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,EAAE,EAE9C,UAAU,EAAE,IAAI,CAAC,cAAc,EAC/B,eAAe,EAAE,IAAI,CAAC,eAAe,IAEpC,IAAI,CAAC,cAAc,IAClB,eAAQ,KAER,0BACE,KAAK,EAAC,OAAO,EACb,OAAO,EAAC,UAAU,GACE,CACvB,CACqB,EACxB;KACH;;;;;;AAxF4B;IAA5B,kBAAkB,EAAE;qDAAgC;AAG5B;IAAxB,aAAa,EAAE;mDAAkC;AACd;IAAnC,wBAAwB,EAAE;8DAA+C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/ipx/atomic-ipx-result-link/atomic-ipx-result-link.pcss?tag=atomic-ipx-result-link","src/components/ipx/atomic-ipx-result-link/atomic-ipx-result-link.tsx"],"sourcesContent":["@import '../../../global/global.pcss';\n@reference '../../../utils/tailwind-utilities/link-style.css';\n\natomic-ipx-result-link {\n a {\n @apply link-style;\n }\n}\n","import {isUndefined} from '@coveo/bueno';\nimport {\n IPXActionsHistoryActionCreators,\n InteractiveResult,\n loadIPXActionsHistoryActions,\n} from '@coveo/headless';\nimport {Component, h, Prop, Element} from '@stencil/core';\nimport {buildCustomEvent} from '../../../utils/event-utils';\nimport {\n InitializableComponent,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {buildStringTemplateFromResult} from '../../../utils/result-utils';\nimport {getDefaultSlotFromHost} from '../../../utils/slot-utils';\nimport {AnyUnfoldedItem} from '../../common/item-list/unfolded-item';\nimport {getAttributesFromLinkSlot} from '../../common/item-link/attributes-slot';\nimport {LinkWithItemAnalytics} from '../../common/item-link/stencil-item-link';\nimport {RecsBindings} from '../../recommendations/atomic-recs-interface/atomic-recs-interface';\nimport {\n ResultContext,\n InteractiveResultContext,\n} from '
|
1
|
+
{"file":"atomic-ipx-result-link.js","mappings":";;;;;;;;;;;;;AAAA,MAAM,sBAAsB,GAAG,o8kEAAo8kE,CAAC;AACp+kE,kCAAe,sBAAsB;;;;;;;;;;;;MCiCxB,mBAAmB;;;;;;IA6BvB,UAAU;QACf,IAAI,CAAC,IAAI,CAAC,aAAa,CACrB,gBAAgB,CACd,+BAA+B,EAC/B,CAAC,eAAwB;YACvB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;SACxC,CACF,CACF,CAAC;QACF,IAAI,CAAC,qBAAqB,GAAG,4BAA4B,CACvD,IAAI,CAAC,QAAQ,CAAC,MAAM,CACrB,CAAC;KACH;IAEM,iBAAiB;QACtB,MAAM,QAAQ,GAAG,YAAY,CAAC;QAC9B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,cAAc,GAAG,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;KACtE;IAEM,MAAM,QAAQ;QACnB,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC;QACtD,IAAI,iBAAiB,IAAI,IAAI,CAAC,qBAAqB,EAAE;YACnD,MAAM,MAAM,GACV,IAAI,CAAC,qBAAqB,CAAC,gCAAgC,CACzD,iBAAiB,CAClB,CAAC;YACJ,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SACvC;QACD,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;KACjC;IAEM,MAAM;QACX,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;cACvC,IAAI,CAAC,MAAM,CAAC,QAAQ;cACpB,6BAA6B,CAC3B,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,CACd,CAAC;QAEN,QACE,EAAC,qBAAqB,qDACpB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,MAAM,IAAI,CAAC,QAAQ,EAAE,EAC/B,oBAAoB,EAAE,MAAM,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,EACvE,qBAAqB,EAAE,MACrB,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,EAAE,EAE9C,UAAU,EAAE,IAAI,CAAC,cAAc,EAC/B,eAAe,EAAE,IAAI,CAAC,eAAe,IAEpC,IAAI,CAAC,cAAc,IAClB,eAAQ,KAER,0BACE,KAAK,EAAC,OAAO,EACb,OAAO,EAAC,UAAU,GACE,CACvB,CACqB,EACxB;KACH;;;;;;AAxF4B;IAA5B,kBAAkB,EAAE;qDAAgC;AAG5B;IAAxB,aAAa,EAAE;mDAAkC;AACd;IAAnC,wBAAwB,EAAE;8DAA+C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/ipx/atomic-ipx-result-link/atomic-ipx-result-link.pcss?tag=atomic-ipx-result-link","src/components/ipx/atomic-ipx-result-link/atomic-ipx-result-link.tsx"],"sourcesContent":["@import '../../../global/global.pcss';\n@reference '../../../utils/tailwind-utilities/link-style.css';\n\natomic-ipx-result-link {\n a {\n @apply link-style;\n }\n}\n","import {isUndefined} from '@coveo/bueno';\nimport {\n IPXActionsHistoryActionCreators,\n InteractiveResult,\n loadIPXActionsHistoryActions,\n} from '@coveo/headless';\nimport {Component, h, Prop, Element} from '@stencil/core';\nimport {buildCustomEvent} from '../../../utils/event-utils';\nimport {\n InitializableComponent,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {buildStringTemplateFromResult} from '../../../utils/result-utils';\nimport {getDefaultSlotFromHost} from '../../../utils/slot-utils';\nimport {AnyUnfoldedItem} from '../../common/item-list/unfolded-item';\nimport {getAttributesFromLinkSlot} from '../../common/item-link/attributes-slot';\nimport {LinkWithItemAnalytics} from '../../common/item-link/stencil-item-link';\nimport {RecsBindings} from '../../recommendations/atomic-recs-interface/atomic-recs-interface';\nimport {\n ResultContext,\n InteractiveResultContext,\n} from '@/src/components/search/result-template-component-utils/context/stencil-result-template-decorators';\n\n/**\n * The `atomic-ipx-result-link` component automatically transforms a search result title into a clickable link that points to the original item. It is an experimental internal component not intended for general use.\n * @slot default - Lets you display alternative content inside the link\n * @slot attributes - Lets you pass [attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attributes) down to the link element, overriding other attributes, to be used exclusively with an \"a\" tag such as `<a slot=\"attributes\" target=\"_blank\" download></a>`.\n * @internal\n */\n@Component({\n tag: 'atomic-ipx-result-link',\n styleUrl: 'atomic-ipx-result-link.pcss',\n shadow: false,\n})\nexport class AtomicIPXResultLink\n implements InitializableComponent<RecsBindings>\n{\n @InitializeBindings() public bindings!: RecsBindings;\n public error!: Error;\n\n @ResultContext() private result!: AnyUnfoldedItem;\n @InteractiveResultContext() private interactiveResult!: InteractiveResult;\n\n @Element() private host!: HTMLElement;\n\n /**\n * Specifies a template literal from which to generate the `href` attribute value (see\n * [Template literals](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Template_literals)).\n *\n * The template literal can reference any number of result properties from the parent result. It can also reference the window object.\n *\n * For example, the following markup generates an `href` value such as `http://uri.com?id=itemTitle`, using the result's `clickUri` and `itemtitle` fields.\n * ```html\n * <atomic-ipx-result-link href-template='${clickUri}?id=${raw.itemtitle}'></atomic-ipx-result-link>\n * ```\n */\n @Prop({reflect: true}) hrefTemplate?: string;\n\n private hasDefaultSlot!: boolean;\n private linkAttributes?: Attr[];\n private stopPropagation?: boolean;\n private actionsHistoryActions?: IPXActionsHistoryActionCreators;\n\n public initialize() {\n this.host.dispatchEvent(\n buildCustomEvent(\n 'atomic/resolveStopPropagation',\n (stopPropagation: boolean) => {\n this.stopPropagation = stopPropagation;\n }\n )\n );\n this.actionsHistoryActions = loadIPXActionsHistoryActions(\n this.bindings.engine\n );\n }\n\n public connectedCallback() {\n const slotName = 'attributes';\n this.hasDefaultSlot = !!getDefaultSlotFromHost(this.host);\n this.linkAttributes = getAttributesFromLinkSlot(this.host, slotName);\n }\n\n public async onSelect() {\n const resultPermanentId = this.result.raw.permanentid;\n if (resultPermanentId && this.actionsHistoryActions) {\n const action =\n this.actionsHistoryActions.addPageViewEntryInActionsHistory(\n resultPermanentId\n );\n this.bindings.engine.dispatch(action);\n }\n this.interactiveResult.select();\n }\n\n public render() {\n const href = isUndefined(this.hrefTemplate)\n ? this.result.clickUri\n : buildStringTemplateFromResult(\n this.hrefTemplate,\n this.result,\n this.bindings\n );\n\n return (\n <LinkWithItemAnalytics\n href={href}\n onSelect={() => this.onSelect()}\n onBeginDelayedSelect={() => this.interactiveResult.beginDelayedSelect()}\n onCancelPendingSelect={() =>\n this.interactiveResult.cancelPendingSelect()\n }\n attributes={this.linkAttributes}\n stopPropagation={this.stopPropagation}\n >\n {this.hasDefaultSlot ? (\n <slot />\n ) : (\n <atomic-result-text\n field=\"title\"\n default=\"no-title\"\n ></atomic-result-text>\n )}\n </LinkWithItemAnalytics>\n );\n }\n}\n"],"version":3}
|
@@ -4,6 +4,9 @@ import { I as InitializeBindings, B as BindStateToController } from './initializ
|
|
4
4
|
import { c as createAppLoadedListener } from './store.js';
|
5
5
|
import { B as Button } from './stencil-button.js';
|
6
6
|
|
7
|
+
/**
|
8
|
+
* @deprecated should only be used for Stencil components.
|
9
|
+
*/
|
7
10
|
const LoadMoreGuard = ({ isLoaded, hasResults }, children) => {
|
8
11
|
if (!isLoaded || !hasResults) {
|
9
12
|
return;
|
@@ -12,7 +15,7 @@ const LoadMoreGuard = ({ isLoaded, hasResults }, children) => {
|
|
12
15
|
};
|
13
16
|
|
14
17
|
/**
|
15
|
-
* @deprecated
|
18
|
+
* @deprecated should only be used for Stencil components.
|
16
19
|
*/
|
17
20
|
const LoadMoreButton = ({ i18n, onClick, moreAvailable, label }) => {
|
18
21
|
if (!moreAvailable) {
|
@@ -21,10 +24,16 @@ const LoadMoreButton = ({ i18n, onClick, moreAvailable, label }) => {
|
|
21
24
|
return (h(Button, { style: "primary", text: i18n.t(label || 'load-more-results'), part: "load-more-results-button", class: "my-2 p-3 font-bold", onClick: () => onClick() }));
|
22
25
|
};
|
23
26
|
|
27
|
+
/**
|
28
|
+
* @deprecated should only be used for Stencil components.
|
29
|
+
*/
|
24
30
|
const LoadMoreContainer = (_, children) => {
|
25
31
|
return (h("div", { class: "flex flex-col items-center", part: "container" }, children));
|
26
32
|
};
|
27
33
|
|
34
|
+
/**
|
35
|
+
* @deprecated should only be used for Stencil components.
|
36
|
+
*/
|
28
37
|
const LoadMoreProgressBar = ({ from, to }) => {
|
29
38
|
const percentage = (from / to) * 100;
|
30
39
|
const width = `${Math.ceil(percentage)}%`;
|
@@ -32,6 +41,9 @@ const LoadMoreProgressBar = ({ from, to }) => {
|
|
32
41
|
h("div", { class: "progress-bar absolute top-0 left-0 z-1 h-full overflow-hidden rounded bg-linear-to-r", style: { width } })));
|
33
42
|
};
|
34
43
|
|
44
|
+
/**
|
45
|
+
* @deprecated should only be used for Stencil components.
|
46
|
+
*/
|
35
47
|
const LoadMoreSummary = ({ i18n, from, to, label, }) => {
|
36
48
|
const wrapHighlight = (content) => {
|
37
49
|
return `<span class="font-bold text-on-background" part="highlight">${content}</span>`;
|
@@ -1 +1 @@
|
|
1
|
-
{"file":"atomic-load-more-results.js","mappings":"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","names":["AtomicLoadMoreResults"],"sources":["src/components/common/load-more/guard.tsx","src/components/common/load-more/stencil-button.tsx","src/components/common/load-more/stencil-container.tsx","src/components/common/load-more/stencil-progress-bar.tsx","src/components/common/load-more/stencil-summary.tsx","src/components/search/atomic-load-more-results/atomic-load-more-results.pcss?tag=atomic-load-more-results&encapsulation=shadow","src/components/search/atomic-load-more-results/atomic-load-more-results.tsx"],"sourcesContent":["import {Fragment, FunctionalComponent, h} from '@stencil/core';\n\nexport interface LoadMoreGuardProps {\n isLoaded: boolean;\n hasResults: boolean;\n}\nexport const LoadMoreGuard: FunctionalComponent<LoadMoreGuardProps> = (\n {isLoaded, hasResults},\n children\n) => {\n if (!isLoaded || !hasResults) {\n return;\n }\n return <Fragment>{children}</Fragment>;\n};\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {Button} from '../stencil-button';\n\n/**\n * @deprecated Should only be used for Stencil components; for Lit components, use LoadMoreButtonProps interface instead\n */\ninterface StencilLoadMoreButtonProps {\n i18n: i18n;\n onClick: () => void;\n moreAvailable: boolean;\n label?: 'load-more-results' | 'load-more-products';\n}\n\n/**\n * @deprecated Should only be used for Stencil components; for Lit components, use the button.ts file instead\n */\nexport const LoadMoreButton: FunctionalComponent<\n StencilLoadMoreButtonProps\n> = ({i18n, onClick, moreAvailable, label}) => {\n if (!moreAvailable) {\n return;\n }\n return (\n <Button\n style=\"primary\"\n text={i18n.t(label || 'load-more-results')}\n part=\"load-more-results-button\"\n class=\"my-2 p-3 font-bold\"\n onClick={() => onClick()}\n ></Button>\n );\n};\n","import {FunctionalComponent, h} from '@stencil/core';\n\nexport const LoadMoreContainer: FunctionalComponent = (_, children) => {\n return (\n <div class=\"flex flex-col items-center\" part=\"container\">\n {children}\n </div>\n );\n};\n","import {FunctionalComponent, h} from '@stencil/core';\n\ninterface LoadMoreProgressBarProps {\n from: number;\n to: number;\n}\n\nexport const LoadMoreProgressBar: FunctionalComponent<\n LoadMoreProgressBarProps\n> = ({from, to}) => {\n const percentage = (from / to) * 100;\n const width = `${Math.ceil(percentage)}%`;\n return (\n <div part=\"progress-bar\" class=\"bg-neutral relative my-2 h-1 w-72 rounded\">\n <div\n class=\"progress-bar absolute top-0 left-0 z-1 h-full overflow-hidden rounded bg-linear-to-r\"\n style={{width}}\n ></div>\n </div>\n );\n};\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\n\ninterface LoadMoreSummaryProps {\n i18n: i18n;\n from: number;\n to: number;\n label?: 'showing-results-of-load-more' | 'showing-products-of-load-more';\n}\n\nexport const LoadMoreSummary: FunctionalComponent<LoadMoreSummaryProps> = ({\n i18n,\n from,\n to,\n label,\n}) => {\n const wrapHighlight = (content: string) => {\n return `<span class=\"font-bold text-on-background\" part=\"highlight\">${content}</span>`;\n };\n\n const locale = i18n.language;\n const content = i18n.t(label || 'showing-results-of-load-more', {\n interpolation: {escapeValue: false},\n last: wrapHighlight(from.toLocaleString(locale)),\n total: wrapHighlight(to.toLocaleString(locale)),\n });\n\n return (\n <div\n class=\"text-neutral-dark my-2 text-lg\"\n part=\"showing-results\"\n innerHTML={content}\n ></div>\n );\n};\n","@import '../../../global/global.pcss';\n\n/**\n * @prop --atomic-more-results-progress-bar-color-from: Color of the start of the gradient for the load more results progress bar.\n * @prop --atomic-more-results-progress-bar-color-to: Color of the end of the gradient for the load more results progress bar.\n */\n.progress-bar {\n @apply from-more-results-progress-bar-color-from;\n @apply to-more-results-progress-bar-color-to;\n}\n","import {\n QuerySummary,\n QuerySummaryState,\n buildQuerySummary,\n ResultList,\n ResultListState,\n buildResultList,\n} from '@coveo/headless';\nimport {Component, h, State} from '@stencil/core';\nimport {\n BindStateToController,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {createAppLoadedListener} from '../../common/interface/store';\nimport {LoadMoreGuard} from '../../common/load-more/guard';\nimport {LoadMoreButton} from '../../common/load-more/stencil-button';\nimport {LoadMoreContainer} from '../../common/load-more/stencil-container';\nimport {LoadMoreProgressBar} from '../../common/load-more/stencil-progress-bar';\nimport {LoadMoreSummary} from '../../common/load-more/stencil-summary';\nimport {Bindings} from '../atomic-search-interface/atomic-search-interface';\n\n/**\n * The `atomic-load-more-results` component allows the user to load additional results if more are available.\n *\n * @part container - The container of the component.\n * @part showing-results - The summary displaying which results are shown and how many are available.\n * @part highlight - The highlighted number of results displayed and number of results available.\n * @part progress-bar - The progress bar displaying a percentage of results shown over the total number of results available.\n * @part load-more-results-button - The \"Load more results\" button.\n */\n@Component({\n tag: 'atomic-load-more-results',\n styleUrl: 'atomic-load-more-results.pcss',\n shadow: true,\n})\nexport class AtomicLoadMoreResults {\n @InitializeBindings() public bindings!: Bindings;\n public querySummary!: QuerySummary;\n public resultList!: ResultList;\n\n @BindStateToController('querySummary')\n @State()\n private querySummaryState!: QuerySummaryState;\n @BindStateToController('resultList')\n @State()\n private resultListState!: ResultListState;\n @State() public error!: Error;\n @State() private isAppLoaded = false;\n\n public initialize() {\n this.querySummary = buildQuerySummary(this.bindings.engine);\n this.resultList = buildResultList(this.bindings.engine, {\n options: {\n fieldsToInclude: [],\n },\n });\n createAppLoadedListener(this.bindings.store, (isAppLoaded) => {\n this.isAppLoaded = isAppLoaded;\n });\n }\n\n private async onClick() {\n // TODO KIT-4227: Once the focus mess is resolved, ensure that:\n // The focus is set on the next new result after loading more results **without scrolling**.\n //this.bindings.store.state.resultList?.focusOnNextNewResult();\n (document.activeElement as HTMLElement)?.blur(); // Blur the active element to avoid focus issues, remove when focus mess is resolved.\n this.resultList.fetchMoreResults();\n }\n\n public render() {\n const {lastResult: from, total: to} = this.querySummaryState;\n const {i18n} = this.bindings;\n\n return (\n <LoadMoreGuard\n hasResults={this.querySummaryState.hasResults}\n isLoaded={this.isAppLoaded}\n >\n <LoadMoreContainer>\n <LoadMoreSummary from={from} to={to} i18n={i18n} />\n <LoadMoreProgressBar from={from} to={to} />\n <LoadMoreButton\n i18n={i18n}\n moreAvailable={this.resultListState.moreResultsAvailable}\n onClick={() => this.onClick()}\n />\n </LoadMoreContainer>\n </LoadMoreGuard>\n );\n }\n}\n"],"version":3}
|
1
|
+
{"file":"atomic-load-more-results.js","mappings":"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","names":["AtomicLoadMoreResults"],"sources":["src/components/common/load-more/guard.tsx","src/components/common/load-more/stencil-button.tsx","src/components/common/load-more/stencil-container.tsx","src/components/common/load-more/stencil-progress-bar.tsx","src/components/common/load-more/stencil-summary.tsx","src/components/search/atomic-load-more-results/atomic-load-more-results.pcss?tag=atomic-load-more-results&encapsulation=shadow","src/components/search/atomic-load-more-results/atomic-load-more-results.tsx"],"sourcesContent":["import {Fragment, FunctionalComponent, h} from '@stencil/core';\n\ninterface LoadMoreGuardProps {\n isLoaded: boolean;\n hasResults: boolean;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const LoadMoreGuard: FunctionalComponent<LoadMoreGuardProps> = (\n {isLoaded, hasResults},\n children\n) => {\n if (!isLoaded || !hasResults) {\n return;\n }\n return <Fragment>{children}</Fragment>;\n};\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {Button} from '../stencil-button';\n\ninterface StencilLoadMoreButtonProps {\n i18n: i18n;\n onClick: () => void;\n moreAvailable: boolean;\n label?: 'load-more-results' | 'load-more-products';\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const LoadMoreButton: FunctionalComponent<\n StencilLoadMoreButtonProps\n> = ({i18n, onClick, moreAvailable, label}) => {\n if (!moreAvailable) {\n return;\n }\n return (\n <Button\n style=\"primary\"\n text={i18n.t(label || 'load-more-results')}\n part=\"load-more-results-button\"\n class=\"my-2 p-3 font-bold\"\n onClick={() => onClick()}\n ></Button>\n );\n};\n","import {FunctionalComponent, h} from '@stencil/core';\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const LoadMoreContainer: FunctionalComponent = (_, children) => {\n return (\n <div class=\"flex flex-col items-center\" part=\"container\">\n {children}\n </div>\n );\n};\n","import {FunctionalComponent, h} from '@stencil/core';\n\ninterface LoadMoreProgressBarProps {\n from: number;\n to: number;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const LoadMoreProgressBar: FunctionalComponent<\n LoadMoreProgressBarProps\n> = ({from, to}) => {\n const percentage = (from / to) * 100;\n const width = `${Math.ceil(percentage)}%`;\n return (\n <div part=\"progress-bar\" class=\"bg-neutral relative my-2 h-1 w-72 rounded\">\n <div\n class=\"progress-bar absolute top-0 left-0 z-1 h-full overflow-hidden rounded bg-linear-to-r\"\n style={{width}}\n ></div>\n </div>\n );\n};\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\n\ninterface LoadMoreSummaryProps {\n i18n: i18n;\n from: number;\n to: number;\n label?: 'showing-results-of-load-more' | 'showing-products-of-load-more';\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const LoadMoreSummary: FunctionalComponent<LoadMoreSummaryProps> = ({\n i18n,\n from,\n to,\n label,\n}) => {\n const wrapHighlight = (content: string) => {\n return `<span class=\"font-bold text-on-background\" part=\"highlight\">${content}</span>`;\n };\n\n const locale = i18n.language;\n const content = i18n.t(label || 'showing-results-of-load-more', {\n interpolation: {escapeValue: false},\n last: wrapHighlight(from.toLocaleString(locale)),\n total: wrapHighlight(to.toLocaleString(locale)),\n });\n\n return (\n <div\n class=\"text-neutral-dark my-2 text-lg\"\n part=\"showing-results\"\n innerHTML={content}\n ></div>\n );\n};\n","@import '../../../global/global.pcss';\n\n/**\n * @prop --atomic-more-results-progress-bar-color-from: Color of the start of the gradient for the load more results progress bar.\n * @prop --atomic-more-results-progress-bar-color-to: Color of the end of the gradient for the load more results progress bar.\n */\n.progress-bar {\n @apply from-more-results-progress-bar-color-from;\n @apply to-more-results-progress-bar-color-to;\n}\n","import {\n QuerySummary,\n QuerySummaryState,\n buildQuerySummary,\n ResultList,\n ResultListState,\n buildResultList,\n} from '@coveo/headless';\nimport {Component, h, State} from '@stencil/core';\nimport {\n BindStateToController,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {createAppLoadedListener} from '../../common/interface/store';\nimport {LoadMoreGuard} from '../../common/load-more/guard';\nimport {LoadMoreButton} from '../../common/load-more/stencil-button';\nimport {LoadMoreContainer} from '../../common/load-more/stencil-container';\nimport {LoadMoreProgressBar} from '../../common/load-more/stencil-progress-bar';\nimport {LoadMoreSummary} from '../../common/load-more/stencil-summary';\nimport {Bindings} from '../atomic-search-interface/atomic-search-interface';\n\n/**\n * The `atomic-load-more-results` component allows the user to load additional results if more are available.\n *\n * @part container - The container of the component.\n * @part showing-results - The summary displaying which results are shown and how many are available.\n * @part highlight - The highlighted number of results displayed and number of results available.\n * @part progress-bar - The progress bar displaying a percentage of results shown over the total number of results available.\n * @part load-more-results-button - The \"Load more results\" button.\n */\n@Component({\n tag: 'atomic-load-more-results',\n styleUrl: 'atomic-load-more-results.pcss',\n shadow: true,\n})\nexport class AtomicLoadMoreResults {\n @InitializeBindings() public bindings!: Bindings;\n public querySummary!: QuerySummary;\n public resultList!: ResultList;\n\n @BindStateToController('querySummary')\n @State()\n private querySummaryState!: QuerySummaryState;\n @BindStateToController('resultList')\n @State()\n private resultListState!: ResultListState;\n @State() public error!: Error;\n @State() private isAppLoaded = false;\n\n public initialize() {\n this.querySummary = buildQuerySummary(this.bindings.engine);\n this.resultList = buildResultList(this.bindings.engine, {\n options: {\n fieldsToInclude: [],\n },\n });\n createAppLoadedListener(this.bindings.store, (isAppLoaded) => {\n this.isAppLoaded = isAppLoaded;\n });\n }\n\n private async onClick() {\n // TODO KIT-4227: Once the focus mess is resolved, ensure that:\n // The focus is set on the next new result after loading more results **without scrolling**.\n //this.bindings.store.state.resultList?.focusOnNextNewResult();\n (document.activeElement as HTMLElement)?.blur(); // Blur the active element to avoid focus issues, remove when focus mess is resolved.\n this.resultList.fetchMoreResults();\n }\n\n public render() {\n const {lastResult: from, total: to} = this.querySummaryState;\n const {i18n} = this.bindings;\n\n return (\n <LoadMoreGuard\n hasResults={this.querySummaryState.hasResults}\n isLoaded={this.isAppLoaded}\n >\n <LoadMoreContainer>\n <LoadMoreSummary from={from} to={to} i18n={i18n} />\n <LoadMoreProgressBar from={from} to={to} />\n <LoadMoreButton\n i18n={i18n}\n moreAvailable={this.resultListState.moreResultsAvailable}\n onClick={() => this.onClick()}\n />\n </LoadMoreContainer>\n </LoadMoreGuard>\n );\n }\n}\n"],"version":3}
|
@@ -6,6 +6,9 @@ import { B as Button } from './stencil-button.js';
|
|
6
6
|
import { N as NoItemsContainer, M as MagnifyingGlass } from './stencil-magnifying-glass.js';
|
7
7
|
import { N as NoItemsGuard, a as NoItems, S as SearchTips } from './stencil-tips.js';
|
8
8
|
|
9
|
+
/**
|
10
|
+
* @deprecated should only be used for Stencil components.
|
11
|
+
*/
|
9
12
|
const Cancel = ({ i18n, onClick }) => {
|
10
13
|
return (h(Button, { style: "primary", part: "cancel-button", text: i18n.t('cancel-last-action'), onClick: () => onClick(), class: "my-3 px-2.5 py-3 font-bold" }));
|
11
14
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"file":"atomic-no-results.js","mappings":";;;;;;;;
|
1
|
+
{"file":"atomic-no-results.js","mappings":";;;;;;;;AASA;;;AAGO,MAAM,MAAM,GAAqC,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC;IACtE,QACE,EAAC,MAAM,IACL,KAAK,EAAC,SAAS,EACf,IAAI,EAAC,eAAe,EACpB,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAC,EAClC,OAAO,EAAE,MAAM,OAAO,EAAE,EACxB,KAAK,EAAC,4BAA4B,GAC1B,EACV;AACJ,CAAC;;ACpBM,MAAM,UAAU,GAAG,CACxB,IAAU,EACV,KAAa,EACb,UAAmB,EACnB,OAAqC;IAErC,IAAI,UAAU,EAAE;QACd,OAAO,EAAE,CAAC;KACX;IAED,MAAM,QAAQ,GAAG,GAAG,OAAO,MAAM,CAAC;IAElC,OAAO,KAAK;UACR,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE;YACf,aAAa,EAAE,EAAC,WAAW,EAAE,KAAK,EAAC;YACnC,KAAK;SACN,CAAC;UACF,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;AACtB,CAAC;;ACpBD,MAAM,kBAAkB,GAAG,0ljEAA0ljE,CAAC;AACtnjE,8BAAe,kBAAkB;;;;;;;;;;;;MCyCpBA,iBAAe;;;;;;;;QAuBH,2BAAsB,GAAG,IAAI,CAAC;;;;;sCAAL,IAAI;;IAE7C,UAAU;QACf,IAAI,CAAC,YAAY,GAAG,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACzD,IAAI,CAAC,YAAY,GAAG,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;KAC7D;IAEM,MAAM;QACX,MAAM,EACJ,QAAQ,EAAE,EAAC,IAAI,EAAC,GACjB,GAAG,IAAI,CAAC;QACT,IAAI,CAAC,WAAW,GAAG,UAAU,CAC3B,IAAI,EACJ,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAC5B,IAAI,CAAC,iBAAiB,CAAC,UAAU,EACjC,YAAY,CACb,CAAC;QAEF,QACE,EAAC,YAAY,wDAAK,IAAI,CAAC,iBAAiB,IACtC,EAAC,gBAAgB,uDACf,EAAC,eAAe,sDAAG,EACnB,EAAC,OAAO,qDACN,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,KAAK,EACnC,IAAI,EAAE,IAAI,EACV,OAAO,EAAC,YAAY,GACpB,EACF,EAAC,UAAU,qDAAC,IAAI,EAAE,IAAI,GAAI,EACzB,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,IAC3D,EAAC,MAAM,IACL,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,GAC7C,IACA,IAAI,CACS,CACN,EACf;KACH;;;;;;;;;AA5D4B;IAA5B,kBAAkB,EAAE;mDAA4B;AAOzC;IAFP,qBAAqB,CAAC,cAAc,CAAC;4DAEQ;AAGtC;IAFP,qBAAqB,CAAC,SAAS,CAAC;uDAEU;AAGnC;IAFP,qBAAqB,CAAC,cAAc,CAAC;4DAEQ;AAIpC;IADT,cAAc,CAAC,YAAY,CAAC;sDACE;;;;;;;;;;;;;;;;;;;;","names":["AtomicNoResults"],"sources":["src/components/common/no-items/cancel.tsx","src/components/common/no-items/utils.ts","src/components/search/atomic-no-results/atomic-no-results.pcss?tag=atomic-no-results&encapsulation=shadow","src/components/search/atomic-no-results/atomic-no-results.tsx"],"sourcesContent":["import {FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {Button} from '../stencil-button';\n\ninterface CancelProps {\n i18n: i18n;\n onClick: () => void;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const Cancel: FunctionalComponent<CancelProps> = ({i18n, onClick}) => {\n return (\n <Button\n style=\"primary\"\n part=\"cancel-button\"\n text={i18n.t('cancel-last-action')}\n onClick={() => onClick()}\n class=\"my-3 px-2.5 py-3 font-bold\"\n ></Button>\n );\n};\n","import type {i18n} from 'i18next';\n\nexport const getSummary = (\n i18n: i18n,\n query: string,\n hasResults: boolean,\n i18nKey: 'no-products' | 'no-results'\n) => {\n if (hasResults) {\n return '';\n }\n\n const labelFor = `${i18nKey}-for`;\n\n return query\n ? i18n.t(labelFor, {\n interpolation: {escapeValue: false},\n query,\n })\n : i18n.t(i18nKey);\n};\n","@import '../../../global/global.pcss';\n","import {\n buildHistoryManager,\n HistoryManager,\n HistoryManagerState,\n buildSearchStatus,\n SearchStatus,\n SearchStatusState,\n QuerySummary,\n QuerySummaryState,\n buildQuerySummary,\n} from '@coveo/headless';\nimport {Component, h, Prop, State} from '@stencil/core';\nimport {\n BindStateToController,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {AriaLiveRegion} from '../../../utils/stencil-accessibility-utils';\nimport {Cancel} from '../../common/no-items/cancel';\nimport {NoItemsContainer} from '../../common/no-items/stencil-container';\nimport {NoItemsGuard} from '../../common/no-items/stencil-guard';\nimport {MagnifyingGlass} from '../../common/no-items/stencil-magnifying-glass';\nimport {NoItems} from '../../common/no-items/stencil-no-items';\nimport {SearchTips} from '../../common/no-items/stencil-tips';\nimport {getSummary} from '../../common/no-items/utils';\nimport {Bindings} from '../atomic-search-interface/atomic-search-interface';\n\n/**\n * The `atomic-no-results` component displays search tips and a \"Cancel last action\" button when there are no results. Any additional content slotted inside of its element will be displayed as well.\n *\n * @part cancel-button - The \"Cancel last action\" button.\n * @part no-results - The text indicating that no results were found for the search.\n * @part search-tips - The search tips to help the user correct the query.\n * @part highlight - The highlighted query.\n * @part icon - The magnifying glass icon.\n *\n * @slot default - Any additional content slotted inside of its element will be displayed as well.\n */\n@Component({\n tag: 'atomic-no-results',\n styleUrl: 'atomic-no-results.pcss',\n shadow: true,\n})\nexport class AtomicNoResults {\n @InitializeBindings() public bindings!: Bindings;\n public searchStatus!: SearchStatus;\n public history!: HistoryManager;\n public querySummary!: QuerySummary;\n\n @BindStateToController('searchStatus')\n @State()\n private searchStatusState!: SearchStatusState;\n @BindStateToController('history')\n @State()\n private historyState!: HistoryManagerState;\n @BindStateToController('querySummary')\n @State()\n private querySummaryState!: QuerySummaryState;\n @State() public error!: Error;\n\n @AriaLiveRegion('no-results')\n protected ariaMessage!: string;\n\n /**\n * Whether to display a button which cancels the last available action.\n */\n @Prop({reflect: true}) enableCancelLastAction = true;\n\n public initialize() {\n this.searchStatus = buildSearchStatus(this.bindings.engine);\n this.history = buildHistoryManager(this.bindings.engine);\n this.querySummary = buildQuerySummary(this.bindings.engine);\n }\n\n public render() {\n const {\n bindings: {i18n},\n } = this;\n this.ariaMessage = getSummary(\n i18n,\n this.querySummaryState.query,\n this.searchStatusState.hasResults,\n 'no-results'\n );\n\n return (\n <NoItemsGuard {...this.searchStatusState}>\n <NoItemsContainer>\n <MagnifyingGlass />\n <NoItems\n query={this.querySummaryState.query}\n i18n={i18n}\n i18nKey=\"no-results\"\n />\n <SearchTips i18n={i18n} />\n {this.enableCancelLastAction && this.historyState.past.length ? (\n <Cancel\n i18n={i18n}\n onClick={() => this.history.backOnNoResults()}\n />\n ) : null}\n </NoItemsContainer>\n </NoItemsGuard>\n );\n }\n}\n"],"version":3}
|
@@ -105,6 +105,9 @@ const ensureSameResultIsNotOverwritten = (documentWriter, uniqueIdentifier) => {
|
|
105
105
|
const warnAboutLimitedUsageQuickview = (logger) => {
|
106
106
|
logger?.warn('Quickview initialized in restricted mode due to incompatible sandboxing environment. Keywords hit navigation will be disabled.');
|
107
107
|
};
|
108
|
+
/**
|
109
|
+
* @deprecated should only be used for Stencil components.
|
110
|
+
*/
|
108
111
|
const QuickviewIframe = ({ title, onSetIframeRef, uniqueIdentifier, content, sandbox, src, logger }) => {
|
109
112
|
// When a document is written with document.open/document.write/document.close
|
110
113
|
// it is not synchronous and the content of the iframe is only available to be queried at the end of the current call stack.
|
@@ -582,7 +585,7 @@ const AtomicQuickviewModal = /*@__PURE__*/ proxyCustomElement(class AtomicQuickv
|
|
582
585
|
});
|
583
586
|
}
|
584
587
|
render() {
|
585
|
-
return (h("atomic-modal", { key: '
|
588
|
+
return (h("atomic-modal", { key: 'a99d0aa49ca1f74b0894dd9764e2c02498b848eb', fullscreen: this.bindings.store.isMobile(), class: 'atomic-quickview-modal', isOpen: this.isOpen, close: () => this.onClose(), exportparts: ATOMIC_MODAL_EXPORT_PARTS }, this.renderHeader(), this.renderBody(), this.renderFooter()));
|
586
589
|
}
|
587
590
|
static get watchers() { return {
|
588
591
|
"highlightKeywords": ["watchHighlightKeywords"]
|
@@ -1 +1 @@
|
|
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,GAQvB,CAAC,EAAC,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAC;;;;IAI5E,MAAM,+BAA+B,GAAG;QACtC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;KACtD,CAAC;IAEF,QACE,cACE,KAAK,EAAE,KAAK,EACZ,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;;AClGM,MAAM,wBAAwB,GAAG,CACtC,KAA6C,EAC7C,iBAAoC,EACpC,MAA0B;IAE1B,IAAI,CAAC,MAAM,EAAE;QACX,OAAO;KACR;IAED,MAAM,cAAc,GAAG,MAAM,CAAC,eAAe,CAAC;IAC9C,IAAI,CAAC,cAAc,EAAE;QACnB,OAAO;KACR;IAED,MAAM,GAAG,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;IAC5C,IAAI,iBAAiB,CAAC,aAAa,EAAE;QACnC,GAAG,CAAC,MAAM,EAAE,CAAC;QACb,OAAO;KACR;IAED,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC;IACnD,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;IAEH,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;AACvC,CAAC,CAAC;AAEF,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;;AChFM,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,0omEAA0omE,CAAC;AAC3qmE,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,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,qBAAqB,CAAC,EACxE,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;;;;;;;;;;;;;;;;;;;;AAjS4B;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/stencil-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 title: string;\n content?: string;\n onSetIframeRef: (ref: HTMLIFrameElement) => void;\n uniqueIdentifier?: string;\n sandbox?: string;\n src?: string;\n logger?: SearchEngine['logger'];\n}> = ({title, 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 title={title}\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\nexport const buildQuickviewPreviewBar = (\n words: Record<string, QuickviewWordHighlight>,\n highlightKeywords: HighlightKeywords,\n iframe?: HTMLIFrameElement\n) => {\n if (!iframe) {\n return;\n }\n\n const documentWriter = iframe.contentDocument;\n if (!documentWriter) {\n return;\n }\n\n const bar = buildPreviewBar(documentWriter);\n if (highlightKeywords.highlightNone) {\n bar.remove();\n return;\n }\n\n const docHeight = documentWriter.body.scrollHeight;\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\n documentWriter.body.appendChild(bar);\n};\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","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@reference '../../../../utils/tailwind-utilities/link-style.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/stencil-iconButton';\nimport {LinkWithItemAnalytics} from '../../../common/item-link/stencil-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 title={this.result?.title ?? this.bindings.i18n.t('preview-modal-title')} \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":"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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/stencil-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\ninterface 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\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const QuickviewIframe: FunctionalComponent<{\n title: string;\n content?: string;\n onSetIframeRef: (ref: HTMLIFrameElement) => void;\n uniqueIdentifier?: string;\n sandbox?: string;\n src?: string;\n logger?: SearchEngine['logger'];\n}> = ({title, 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 title={title}\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\nexport const buildQuickviewPreviewBar = (\n words: Record<string, QuickviewWordHighlight>,\n highlightKeywords: HighlightKeywords,\n iframe?: HTMLIFrameElement\n) => {\n if (!iframe) {\n return;\n }\n\n const documentWriter = iframe.contentDocument;\n if (!documentWriter) {\n return;\n }\n\n const bar = buildPreviewBar(documentWriter);\n if (highlightKeywords.highlightNone) {\n bar.remove();\n return;\n }\n\n const docHeight = documentWriter.body.scrollHeight;\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\n documentWriter.body.appendChild(bar);\n};\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","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@reference '../../../../utils/tailwind-utilities/link-style.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/stencil-iconButton';\nimport {LinkWithItemAnalytics} from '../../../common/item-link/stencil-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 title={this.result?.title ?? this.bindings.i18n.t('preview-modal-title')} \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}
|