@coveo/atomic 3.38.0 → 3.39.0
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/README.md +14 -0
- 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 -4
- package/dist/atomic/components/_index.js +0 -2
- package/dist/atomic/components/atomic-breadbox.js.map +1 -1
- package/dist/atomic/components/atomic-insight-result-children.js +1 -1
- package/dist/atomic/components/atomic-insight-result-children.js.map +1 -1
- package/dist/atomic/components/atomic-popover.js +1 -7
- package/dist/atomic/components/atomic-popover.js.map +1 -1
- package/dist/atomic/components/atomic-refine-modal2.js +1 -1
- package/dist/atomic/components/atomic-result-children.js +1 -1
- package/dist/atomic/components/atomic-result-children.js.map +1 -1
- package/dist/atomic/components/atomic-smart-snippet-answer2.js +1 -1
- package/dist/atomic/components/atomic-suggestion-renderer2.js +1 -1
- package/dist/atomic/components/atomic-suggestion-renderer2.js.map +1 -1
- package/dist/atomic/components/components/common/atomic-focus-trap/atomic-focus-trap.js +160 -0
- package/dist/atomic/components/components/common/index.js +1 -0
- package/dist/atomic/components/components/common/lazy-index.js +1 -0
- package/dist/atomic/components/components/common/suggestions/instant-item.js +1 -1
- package/dist/atomic/components/components/common/suggestions/query-suggestions.js +1 -1
- package/dist/atomic/components/components/common/suggestions/recent-queries.js +2 -2
- package/dist/atomic/components/components/common/validate-props-controller/validate-props-controller.js +15 -6
- package/dist/atomic/components/components/search/atomic-facet/atomic-facet.js +65 -2
- package/dist/atomic/components/components/search/atomic-result-html/atomic-result-html.js +97 -0
- package/dist/atomic/components/components/search/atomic-result-list/atomic-result-list.js +4 -2
- 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/global/environment.js +1 -1
- package/dist/atomic/components/index.js.map +1 -1
- package/dist/atomic/components/item-layout-sections.js +1 -1
- package/dist/atomic/components/props-utils.js +1 -1
- package/dist/atomic/components/result-utils.js +2 -9
- package/dist/atomic/components/result-utils.js.map +1 -1
- package/dist/atomic/components/show-hide-button.js.map +1 -1
- package/dist/atomic/components/stencil-accessibility-utils.js +1 -1
- package/dist/atomic/components/stencil-item-list-common.js +1 -1
- package/dist/atomic/components/stencil-result-template-common.js +1 -1
- package/dist/atomic/components/utils.js +1 -29
- package/dist/atomic/components/utils.js.map +1 -1
- package/dist/atomic/index.esm.js +1 -1
- package/dist/atomic/p-00b8b2e8.entry.js +2 -0
- package/dist/atomic/p-02893e42.entry.js +2 -0
- package/dist/atomic/p-0757f396.js +2 -0
- package/dist/atomic/p-0b1d29ae.entry.js +2 -0
- package/dist/atomic/p-0cf53453.entry.js +2 -0
- package/dist/atomic/p-0f01f086.entry.js +2 -0
- package/dist/atomic/p-0f6d1893.entry.js +2 -0
- package/dist/atomic/p-0fb30fdd.entry.js +2 -0
- package/dist/atomic/p-12e5e56c.js +2 -0
- package/dist/atomic/p-1522b928.entry.js +2 -0
- package/dist/atomic/p-15fc97ac.entry.js +2 -0
- package/dist/atomic/p-176d0477.entry.js +2 -0
- package/dist/atomic/p-1b2f375c.entry.js +2 -0
- package/dist/atomic/p-1c70d4a8.entry.js +2 -0
- package/dist/atomic/p-1c92fc2a.js +2 -0
- package/dist/atomic/p-1cfe9a6d.js +2 -0
- package/dist/atomic/p-1e3242c4.js +2 -0
- package/dist/atomic/p-20a02cb8.js +2 -0
- package/dist/atomic/p-21b1ef92.entry.js +2 -0
- package/dist/atomic/p-24a2db99.entry.js +2 -0
- package/dist/atomic/p-24e0f33d.entry.js +2 -0
- package/dist/atomic/p-250e3ba6.entry.js +2 -0
- package/dist/atomic/p-28683ceb.js +2 -0
- package/dist/atomic/p-297a186f.js +2 -0
- package/dist/atomic/p-29a42d73.entry.js +2 -0
- package/dist/atomic/p-2b2db1db.entry.js +2 -0
- package/dist/atomic/p-2b2db1db.entry.js.map +1 -0
- package/dist/atomic/p-2b3c7256.js +2 -0
- package/dist/atomic/p-2dbac3f0.entry.js +2 -0
- package/dist/atomic/p-2e21c2be.entry.js +2 -0
- package/dist/atomic/p-2e97cbb5.entry.js +2 -0
- package/dist/atomic/p-2ea4b61d.js +2 -0
- package/dist/atomic/p-3004da84.js +2 -0
- package/dist/atomic/p-308ea344.entry.js +2 -0
- package/dist/atomic/p-31b2e659.entry.js +2 -0
- package/dist/atomic/p-37b37610.entry.js +2 -0
- package/dist/atomic/p-39f99214.entry.js +2 -0
- package/dist/atomic/p-3a8ce5ea.entry.js +2 -0
- package/dist/atomic/p-3b5643b9.entry.js +2 -0
- package/dist/atomic/p-41788181.entry.js +2 -0
- package/dist/atomic/p-42327028.entry.js +2 -0
- package/dist/atomic/p-42a151a2.entry.js +2 -0
- package/dist/atomic/p-46412741.entry.js +2 -0
- package/dist/atomic/p-4683e572.js +2 -0
- package/dist/atomic/p-47c87f08.entry.js +2 -0
- package/dist/atomic/p-4a6458ad.js +2 -0
- package/dist/atomic/p-4f66e259.js +2 -0
- package/dist/atomic/p-4f6c469f.entry.js +2 -0
- package/dist/atomic/p-503d8e4c.entry.js +2 -0
- package/dist/atomic/p-51243c0a.entry.js +2 -0
- package/dist/atomic/p-52064d8c.entry.js +2 -0
- package/dist/atomic/p-525e09b0.js +2 -0
- package/dist/atomic/p-52e16718.entry.js +2 -0
- package/dist/atomic/p-5450d59f.entry.js +2 -0
- package/dist/atomic/p-554e903c.entry.js +2 -0
- package/dist/atomic/p-56a21ae7.js +2 -0
- package/dist/atomic/p-5a161f56.entry.js +2 -0
- package/dist/atomic/p-5a52dc4f.entry.js +2 -0
- package/dist/atomic/p-5a8c8608.js +2 -0
- package/dist/atomic/p-61c19a04.entry.js +2 -0
- package/dist/atomic/p-64cc0214.js +2 -0
- package/dist/atomic/p-694af29d.entry.js +2 -0
- package/dist/atomic/p-6a5a366c.js +2 -0
- package/dist/atomic/p-6e8f6c4e.entry.js +2 -0
- package/dist/atomic/p-7148b295.entry.js +2 -0
- package/dist/atomic/p-74975270.js +2 -0
- package/dist/atomic/p-74975270.js.map +1 -0
- package/dist/atomic/p-78ff2358.entry.js +2 -0
- package/dist/atomic/p-7aa80b40.entry.js +2 -0
- package/dist/atomic/p-7b8020dd.entry.js +2 -0
- package/dist/atomic/p-7c6cded8.entry.js +2 -0
- package/dist/atomic/p-7da807d6.entry.js +2 -0
- package/dist/atomic/p-81ead125.entry.js +2 -0
- package/dist/atomic/p-81ffbea0.js +2 -0
- package/dist/atomic/p-846ef8c9.entry.js +2 -0
- package/dist/atomic/p-84aada47.entry.js +2 -0
- package/dist/atomic/p-8a471188.js +2 -0
- package/dist/atomic/p-8b3b87e9.entry.js +2 -0
- package/dist/atomic/p-8e0a3de9.js +2 -0
- package/dist/atomic/p-8f7b6eb3.js +2 -0
- package/dist/atomic/p-8f870628.js +2 -0
- package/dist/atomic/p-8fdda5c6.js +2 -0
- package/dist/atomic/p-91350669.entry.js +2 -0
- package/dist/atomic/p-925df073.js +2 -0
- package/dist/atomic/p-92db698d.entry.js +2 -0
- package/dist/atomic/p-944fe2ca.entry.js +2 -0
- package/dist/atomic/p-945533bd.js +2 -0
- package/dist/atomic/p-95649dfe.entry.js +2 -0
- package/dist/atomic/p-97bf5db6.entry.js +2 -0
- package/dist/atomic/p-98ee46c3.entry.js +2 -0
- package/dist/atomic/p-9c34e291.entry.js +2 -0
- package/dist/atomic/p-9c875991.entry.js +2 -0
- package/dist/atomic/p-9c875991.entry.js.map +1 -0
- package/dist/atomic/p-9cb00233.entry.js +2 -0
- package/dist/atomic/p-9cb00233.entry.js.map +1 -0
- package/dist/atomic/p-9d89f16e.entry.js +2 -0
- package/dist/atomic/p-9e262d4f.entry.js +2 -0
- package/dist/atomic/p-9e84fd28.entry.js +2 -0
- package/dist/atomic/p-9f127a00.entry.js +2 -0
- package/dist/atomic/p-9f17aac0.entry.js +2 -0
- package/dist/atomic/p-a17b8ffc.js +2 -0
- package/dist/atomic/p-a3ab554e.entry.js +2 -0
- package/dist/atomic/p-a86ffd12.entry.js +2 -0
- package/dist/atomic/p-a8c7f34f.entry.js +2 -0
- package/dist/atomic/p-a9ed505a.js +2 -0
- package/dist/atomic/p-aaf864d7.js +2 -0
- package/dist/atomic/p-ab304a67.entry.js +2 -0
- package/dist/atomic/p-ac7abbae.entry.js +2 -0
- package/dist/atomic/p-acbd51dd.js +2 -0
- package/dist/atomic/p-ad38e363.entry.js +2 -0
- package/dist/atomic/p-ad908a26.js +2 -0
- package/dist/atomic/p-ad908a26.js.map +1 -0
- package/dist/atomic/p-adad4020.js +2 -0
- package/dist/atomic/p-b125e5e5.entry.js +2 -0
- package/dist/atomic/p-b160be42.js +2 -0
- package/dist/atomic/p-b19ad4bc.entry.js +2 -0
- package/dist/atomic/p-b416f690.entry.js +2 -0
- package/dist/atomic/p-b597d76c.entry.js +2 -0
- package/dist/atomic/p-b6b48649.entry.js +2 -0
- package/dist/atomic/p-b7f5fdab.js +2 -0
- package/dist/atomic/p-b7f9420d.entry.js +2 -0
- package/dist/atomic/p-b97a773c.entry.js +2 -0
- package/dist/atomic/p-ba021837.js +2 -0
- package/dist/atomic/p-bc0fc584.entry.js +2 -0
- package/dist/atomic/p-bd1aa6bb.entry.js +2 -0
- package/dist/atomic/p-bdfc3cc7.js +3 -0
- package/dist/atomic/p-bdfc3cc7.js.map +1 -0
- package/dist/atomic/p-bec7e50a.entry.js +2 -0
- package/dist/atomic/p-c566543b.entry.js +2 -0
- package/dist/atomic/p-c5ec8f79.js +9 -0
- package/dist/atomic/p-c6986525.entry.js +2 -0
- package/dist/atomic/p-c7072c4d.entry.js +2 -0
- package/dist/atomic/p-c7072c4d.entry.js.map +1 -0
- package/dist/atomic/p-c953f644.entry.js +2 -0
- package/dist/atomic/p-d0294026.js +2 -0
- package/dist/atomic/p-d2bb57da.entry.js +2 -0
- package/dist/atomic/p-d45776b3.js +2 -0
- package/dist/atomic/p-d967e926.js +2 -0
- package/dist/atomic/p-e03f245b.entry.js +2 -0
- package/dist/atomic/p-e19ef4be.entry.js +2 -0
- package/dist/atomic/p-e2088f9e.entry.js +2 -0
- package/dist/atomic/p-e4553b03.entry.js +2 -0
- package/dist/atomic/p-e4e22ca4.entry.js +2 -0
- package/dist/atomic/p-e4e22ca4.entry.js.map +1 -0
- package/dist/atomic/p-e5546bea.entry.js +2 -0
- package/dist/atomic/p-e5f356ca.entry.js +2 -0
- package/dist/atomic/p-e614add9.js +2 -0
- package/dist/atomic/p-e86a9dcb.entry.js +2 -0
- package/dist/atomic/p-e8befabf.entry.js +2 -0
- package/dist/atomic/p-efff4455.entry.js +2 -0
- package/dist/atomic/p-f00a245c.js +2 -0
- package/dist/atomic/p-f0f67cf4.js +2 -0
- package/dist/atomic/p-f1997c74.entry.js +2 -0
- package/dist/atomic/p-f2aebada.entry.js +2 -0
- package/dist/atomic/p-f312f600.entry.js +2 -0
- package/dist/atomic/p-fa867de1.entry.js +2 -0
- package/dist/atomic/p-fc4761d1.entry.js +2 -0
- package/dist/atomic/p-fd610816.entry.js +2 -0
- package/dist/atomic/p-fdb1a985.js +2 -0
- package/dist/atomic/p-fdb1a985.js.map +1 -0
- package/dist/cjs/_index.cjs.js +4 -4
- package/dist/cjs/_loader.cjs.js +2 -2
- package/dist/cjs/atomic-automatic-facet_2.cjs.entry.js +12 -12
- package/dist/cjs/atomic-breadbox.cjs.entry.js +5 -5
- package/dist/cjs/atomic-breadbox.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-category-facet.cjs.entry.js +15 -15
- package/dist/cjs/atomic-citation.cjs.entry.js +3 -3
- package/dist/cjs/atomic-color-facet.cjs.entry.js +14 -14
- package/dist/cjs/atomic-did-you-mean.cjs.entry.js +3 -3
- package/dist/cjs/atomic-facet-manager.cjs.entry.js +2 -2
- package/dist/cjs/atomic-facet-number-input.cjs.entry.js +2 -2
- package/dist/cjs/atomic-field-condition.cjs.entry.js +7 -7
- package/dist/cjs/atomic-folded-result-list.cjs.entry.js +11 -11
- package/dist/cjs/atomic-format-currency.cjs.entry.js +1 -1
- package/dist/cjs/atomic-format-number.cjs.entry.js +1 -1
- package/dist/cjs/atomic-format-unit.cjs.entry.js +1 -1
- package/dist/cjs/atomic-generated-answer-feedback-modal.cjs.entry.js +7 -7
- package/dist/cjs/atomic-generated-answer.cjs.entry.js +8 -8
- package/dist/cjs/atomic-insight-edit-toggle.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-facet.cjs.entry.js +16 -16
- package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js +10 -10
- package/dist/cjs/atomic-insight-full-search-button.cjs.entry.js +4 -4
- package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js +7 -7
- package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-layout.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-no-results.cjs.entry.js +7 -7
- package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js +16 -16
- package/dist/cjs/atomic-insight-pager.cjs.entry.js +5 -5
- package/dist/cjs/atomic-insight-query-error.cjs.entry.js +6 -6
- package/dist/cjs/atomic-insight-query-summary.cjs.entry.js +5 -5
- package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js +4 -4
- package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js +4 -4
- package/dist/cjs/atomic-insight-result-action-bar.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-result-action.cjs.entry.js +6 -6
- package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js +6 -6
- package/dist/cjs/atomic-insight-result-attach-to-case-indicator.cjs.entry.js +4 -4
- package/dist/cjs/atomic-insight-result-children-template.cjs.entry.js +5 -5
- package/dist/cjs/atomic-insight-result-children.cjs.entry.js +8 -8
- package/dist/cjs/atomic-insight-result-children.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-result-list.cjs.entry.js +10 -10
- package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js +8 -8
- package/dist/cjs/atomic-insight-result-template.cjs.entry.js +5 -5
- package/dist/cjs/atomic-insight-result.cjs.entry.js +6 -6
- package/dist/cjs/atomic-insight-search-box.cjs.entry.js +6 -6
- package/dist/cjs/atomic-insight-smart-snippet-feedback-modal.cjs.entry.js +5 -5
- package/dist/cjs/atomic-insight-smart-snippet-suggestions.cjs.entry.js +6 -6
- package/dist/cjs/atomic-insight-smart-snippet.cjs.entry.js +7 -7
- package/dist/cjs/atomic-insight-tab.cjs.entry.js +4 -4
- package/dist/cjs/atomic-insight-tabs.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js +13 -13
- package/dist/cjs/atomic-insight-user-actions-modal.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js +4 -4
- package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js +4 -4
- package/dist/cjs/atomic-ipx-body.cjs.entry.js +3 -3
- package/dist/cjs/atomic-ipx-button.cjs.entry.js +3 -3
- package/dist/cjs/atomic-ipx-embedded.cjs.entry.js +3 -3
- package/dist/cjs/atomic-ipx-modal.cjs.entry.js +3 -3
- package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +12 -12
- package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js +4 -4
- package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js +4 -4
- package/dist/cjs/atomic-ipx-result-link.cjs.entry.js +6 -6
- package/dist/cjs/atomic-ipx-tab.cjs.entry.js +3 -3
- package/dist/cjs/atomic-ipx-tabs.cjs.entry.js +2 -2
- package/dist/cjs/atomic-no-results.cjs.entry.js +8 -8
- package/dist/cjs/atomic-notifications.cjs.entry.js +5 -5
- package/dist/cjs/atomic-numeric-facet.cjs.entry.js +16 -16
- package/dist/cjs/atomic-popover.cjs.entry.js +3 -3
- package/dist/cjs/atomic-quickview-modal.cjs.entry.js +7 -7
- package/dist/cjs/atomic-quickview.cjs.entry.js +7 -7
- package/dist/cjs/atomic-rating-facet.cjs.entry.js +14 -14
- package/dist/cjs/atomic-rating-range-facet.cjs.entry.js +12 -12
- package/dist/cjs/atomic-recs-error.cjs.entry.js +6 -6
- package/dist/cjs/atomic-recs-list.cjs.entry.js +12 -12
- package/dist/cjs/atomic-recs-result-template.cjs.entry.js +5 -5
- package/dist/cjs/atomic-recs-result.cjs.entry.js +6 -6
- package/dist/cjs/atomic-refine-modal.cjs.entry.js +5 -5
- package/dist/cjs/atomic-refine-toggle.cjs.entry.js +3 -3
- package/dist/cjs/atomic-result-badge.cjs.entry.js +3 -3
- package/dist/cjs/atomic-result-children.cjs.entry.js +9 -9
- package/dist/cjs/atomic-result-children.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-date.cjs.entry.js +4 -4
- package/dist/cjs/atomic-result-fields-list.cjs.entry.js +3 -3
- package/dist/cjs/atomic-result-icon.cjs.entry.js +4 -4
- package/dist/cjs/atomic-result-image.cjs.entry.js +4 -4
- package/dist/cjs/atomic-result-link.cjs.entry.js +6 -6
- package/dist/cjs/atomic-result-localized-text.cjs.entry.js +6 -6
- package/dist/cjs/atomic-result-multi-value-text.cjs.entry.js +5 -5
- package/dist/cjs/atomic-result-placeholder_2.cjs.entry.js +4 -4
- package/dist/cjs/atomic-result-printable-uri.cjs.entry.js +7 -7
- package/dist/cjs/atomic-result-rating.cjs.entry.js +5 -5
- package/dist/cjs/atomic-result-timespan.cjs.entry.js +4 -4
- package/dist/cjs/atomic-search-box.cjs.entry.js +6 -6
- package/dist/cjs/atomic-segmented-facet-scrollable.cjs.entry.js +3 -3
- package/dist/cjs/atomic-segmented-facet.cjs.entry.js +7 -7
- package/dist/cjs/atomic-smart-snippet-answer_2.cjs.entry.js +4 -4
- package/dist/cjs/atomic-smart-snippet-collapse-wrapper_2.cjs.entry.js +2 -2
- package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js +5 -5
- package/dist/cjs/atomic-smart-snippet-suggestions.cjs.entry.js +6 -6
- package/dist/cjs/atomic-smart-snippet.cjs.entry.js +8 -8
- package/dist/cjs/atomic-sort-dropdown.cjs.entry.js +3 -3
- package/dist/cjs/atomic-sort-expression.cjs.entry.js +3 -3
- package/dist/cjs/atomic-stencil-facet-date-input.cjs.entry.js +2 -2
- package/dist/cjs/atomic-suggestion-renderer.cjs.entry.js +2 -2
- package/dist/cjs/atomic-suggestion-renderer.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-tab-bar_2.cjs.entry.js +3 -3
- package/dist/cjs/atomic-tab-button.cjs.entry.js +2 -2
- package/dist/cjs/atomic-tab-manager.cjs.entry.js +2 -2
- package/dist/cjs/atomic-tab.cjs.entry.js +1 -1
- package/dist/cjs/atomic-table-element.cjs.entry.js +1 -1
- package/dist/cjs/atomic-timeframe-facet.cjs.entry.js +13 -13
- package/dist/cjs/atomic-timeframe.cjs.entry.js +1 -1
- package/dist/cjs/atomic.cjs.js +2 -2
- package/dist/cjs/display-options-95d91e1f.js +107 -0
- package/dist/cjs/display-options-95d91e1f.js.map +1 -0
- package/dist/cjs/generated-answer-common-18cb54a4.js +2955 -0
- package/dist/cjs/generated-answer-common-18cb54a4.js.map +1 -0
- package/dist/cjs/index-8fc6356e.js +2132 -0
- package/dist/cjs/index-8fc6356e.js.map +1 -0
- package/dist/cjs/initialization-utils-4c473e81.js +149 -0
- package/dist/cjs/initialization-utils-4c473e81.js.map +1 -0
- package/dist/cjs/item-layout-sections-bfa10d7e.js +44 -0
- package/dist/cjs/item-layout-sections-bfa10d7e.js.map +1 -0
- package/dist/cjs/jsx-utils-5f15d1a3.js +31 -0
- package/dist/cjs/jsx-utils-5f15d1a3.js.map +1 -0
- package/dist/cjs/props-utils-758bc114.js +89 -0
- package/dist/cjs/props-utils-758bc114.js.map +1 -0
- package/dist/cjs/result-template-provider-92566b56.js +103 -0
- package/dist/cjs/result-template-provider-92566b56.js.map +1 -0
- package/dist/cjs/result-utils-30919a35.js +67 -0
- package/dist/cjs/result-utils-30919a35.js.map +1 -0
- package/dist/cjs/show-hide-button-884d4c71.js +115 -0
- package/dist/cjs/show-hide-button-884d4c71.js.map +1 -0
- package/dist/cjs/smart-snippet-common-402a565a.js +75 -0
- package/dist/cjs/smart-snippet-common-402a565a.js.map +1 -0
- package/dist/cjs/smart-snippet-feedback-modal-common-e3d0d94c.js +87 -0
- package/dist/cjs/smart-snippet-feedback-modal-common-e3d0d94c.js.map +1 -0
- package/dist/cjs/smart-snippet-suggestions-common-158c812f.js +54 -0
- package/dist/cjs/smart-snippet-suggestions-common-158c812f.js.map +1 -0
- package/dist/cjs/stencil-accessibility-utils-c3f70190.js +164 -0
- package/dist/cjs/stencil-accessibility-utils-c3f70190.js.map +1 -0
- package/dist/cjs/stencil-button-78d3c7fa.js +133 -0
- package/dist/cjs/stencil-button-78d3c7fa.js.map +1 -0
- package/dist/cjs/stencil-carousel-59e6b944.js +53 -0
- package/dist/cjs/stencil-carousel-59e6b944.js.map +1 -0
- package/dist/cjs/stencil-checkbox-a6d3d019.js +45 -0
- package/dist/cjs/stencil-checkbox-a6d3d019.js.map +1 -0
- package/dist/cjs/stencil-display-wrapper-825efc8b.js +32 -0
- package/dist/cjs/stencil-display-wrapper-825efc8b.js.map +1 -0
- package/dist/cjs/stencil-facet-guard-51e3398d.js +18 -0
- package/dist/cjs/stencil-facet-guard-51e3398d.js.map +1 -0
- package/dist/cjs/stencil-facet-placeholder-8036fef5.js +56 -0
- package/dist/cjs/stencil-facet-placeholder-8036fef5.js.map +1 -0
- package/dist/cjs/stencil-facet-search-matches-3574c7c7.js +65 -0
- package/dist/cjs/stencil-facet-search-matches-3574c7c7.js.map +1 -0
- package/dist/cjs/stencil-facet-show-more-less-bf925f8d.js +58 -0
- package/dist/cjs/stencil-facet-show-more-less-bf925f8d.js.map +1 -0
- package/dist/cjs/stencil-facet-value-box-eaa3a71c.js +29 -0
- package/dist/cjs/stencil-facet-value-box-eaa3a71c.js.map +1 -0
- package/dist/cjs/stencil-facet-value-checkbox-66eb2424.js +109 -0
- package/dist/cjs/stencil-facet-value-checkbox-66eb2424.js.map +1 -0
- package/dist/cjs/stencil-facet-value-label-highlight-90627d64.js +132 -0
- package/dist/cjs/stencil-facet-value-label-highlight-90627d64.js.map +1 -0
- package/dist/cjs/stencil-facet-value-link-8cb66a55.js +32 -0
- package/dist/cjs/stencil-facet-value-link-8cb66a55.js.map +1 -0
- package/dist/cjs/stencil-facet-values-group-d86904b1.js +25 -0
- package/dist/cjs/stencil-facet-values-group-d86904b1.js.map +1 -0
- package/dist/cjs/stencil-fieldset-group-30862e5d.js +14 -0
- package/dist/cjs/stencil-fieldset-group-30862e5d.js.map +1 -0
- package/dist/cjs/stencil-heading-a61236c4.js +15 -0
- package/dist/cjs/stencil-heading-a61236c4.js.map +1 -0
- package/dist/cjs/stencil-iconButton-301ff09c.js +18 -0
- package/dist/cjs/stencil-iconButton-301ff09c.js.map +1 -0
- package/dist/cjs/stencil-item-decorators-23b99719.js +148 -0
- package/dist/cjs/stencil-item-decorators-23b99719.js.map +1 -0
- package/dist/cjs/stencil-item-link-e53257e6.js +55 -0
- package/dist/cjs/stencil-item-link-e53257e6.js.map +1 -0
- package/dist/cjs/stencil-item-list-common-fbb4799f.js +67 -0
- package/dist/cjs/stencil-item-list-common-fbb4799f.js.map +1 -0
- package/dist/cjs/stencil-item-list-guard-98f90b70.js +19 -0
- package/dist/cjs/stencil-item-list-guard-98f90b70.js.map +1 -0
- package/dist/cjs/stencil-link-daa827da.js +927 -0
- package/dist/cjs/stencil-link-daa827da.js.map +1 -0
- package/dist/cjs/stencil-magnifying-glass-621948b7.js +147 -0
- package/dist/cjs/stencil-magnifying-glass-621948b7.js.map +1 -0
- package/dist/cjs/stencil-modal-f1f60bac.js +41 -0
- package/dist/cjs/stencil-modal-f1f60bac.js.map +1 -0
- package/dist/cjs/stencil-radio-button-c0917654.js +77 -0
- package/dist/cjs/stencil-radio-button-c0917654.js.map +1 -0
- package/dist/cjs/stencil-rating-5f80dc89.js +68 -0
- package/dist/cjs/stencil-rating-5f80dc89.js.map +1 -0
- package/dist/cjs/stencil-result-template-common-a50a4cce.js +120 -0
- package/dist/cjs/stencil-result-template-common-a50a4cce.js.map +1 -0
- package/dist/cjs/stencil-result-template-decorators-2c160319.js +42 -0
- package/dist/cjs/stencil-result-template-decorators-2c160319.js.map +1 -0
- package/dist/cjs/stencil-suggestion-manager-74cc3a8f.js +428 -0
- package/dist/cjs/stencil-suggestion-manager-74cc3a8f.js.map +1 -0
- package/dist/cjs/stencil-tips-cab94195.js +38 -0
- package/dist/cjs/stencil-tips-cab94195.js.map +1 -0
- package/dist/cjs/stencil-values-container-4e035c52.js +63 -0
- package/dist/cjs/stencil-values-container-4e035c52.js.map +1 -0
- package/dist/cjs/timeframe-facet-common-212f8cce.js +214 -0
- package/dist/cjs/timeframe-facet-common-212f8cce.js.map +1 -0
- package/dist/cjs/utils-1b5df839.js +142 -0
- package/dist/cjs/utils-1b5df839.js.map +1 -0
- package/dist/cjs/version.cjs.js +1 -1
- package/dist/esm/_index.js +4 -4
- package/dist/esm/_loader.js +3 -3
- package/dist/esm/atomic-automatic-facet_2.entry.js +12 -12
- package/dist/esm/atomic-breadbox.entry.js +5 -5
- package/dist/esm/atomic-breadbox.entry.js.map +1 -1
- package/dist/esm/atomic-category-facet.entry.js +15 -15
- package/dist/esm/atomic-citation.entry.js +3 -3
- package/dist/esm/atomic-color-facet.entry.js +14 -14
- package/dist/esm/atomic-did-you-mean.entry.js +3 -3
- package/dist/esm/atomic-facet-manager.entry.js +2 -2
- package/dist/esm/atomic-facet-number-input.entry.js +2 -2
- package/dist/esm/atomic-field-condition.entry.js +7 -7
- package/dist/esm/atomic-folded-result-list.entry.js +11 -11
- package/dist/esm/atomic-format-currency.entry.js +1 -1
- package/dist/esm/atomic-format-number.entry.js +1 -1
- package/dist/esm/atomic-format-unit.entry.js +1 -1
- package/dist/esm/atomic-generated-answer-feedback-modal.entry.js +7 -7
- package/dist/esm/atomic-generated-answer.entry.js +8 -8
- package/dist/esm/atomic-insight-edit-toggle.entry.js +3 -3
- package/dist/esm/atomic-insight-facet.entry.js +16 -16
- package/dist/esm/atomic-insight-folded-result-list.entry.js +10 -10
- package/dist/esm/atomic-insight-full-search-button.entry.js +4 -4
- package/dist/esm/atomic-insight-generated-answer.entry.js +7 -7
- package/dist/esm/atomic-insight-history-toggle.entry.js +3 -3
- package/dist/esm/atomic-insight-layout.entry.js +3 -3
- package/dist/esm/atomic-insight-no-results.entry.js +7 -7
- package/dist/esm/atomic-insight-numeric-facet.entry.js +16 -16
- package/dist/esm/atomic-insight-pager.entry.js +5 -5
- package/dist/esm/atomic-insight-query-error.entry.js +6 -6
- package/dist/esm/atomic-insight-query-summary.entry.js +5 -5
- package/dist/esm/atomic-insight-refine-modal.entry.js +4 -4
- package/dist/esm/atomic-insight-refine-toggle.entry.js +4 -4
- package/dist/esm/atomic-insight-result-action-bar.entry.js +2 -2
- package/dist/esm/atomic-insight-result-action.entry.js +6 -6
- package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js +6 -6
- package/dist/esm/atomic-insight-result-attach-to-case-indicator.entry.js +4 -4
- package/dist/esm/atomic-insight-result-children-template.entry.js +5 -5
- package/dist/esm/atomic-insight-result-children.entry.js +8 -8
- package/dist/esm/atomic-insight-result-children.entry.js.map +1 -1
- package/dist/esm/atomic-insight-result-list.entry.js +10 -10
- package/dist/esm/atomic-insight-result-quickview-action.entry.js +8 -8
- package/dist/esm/atomic-insight-result-template.entry.js +5 -5
- package/dist/esm/atomic-insight-result.entry.js +6 -6
- package/dist/esm/atomic-insight-search-box.entry.js +6 -6
- package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js +5 -5
- package/dist/esm/atomic-insight-smart-snippet-suggestions.entry.js +6 -6
- package/dist/esm/atomic-insight-smart-snippet.entry.js +7 -7
- package/dist/esm/atomic-insight-tab.entry.js +4 -4
- package/dist/esm/atomic-insight-tabs.entry.js +2 -2
- package/dist/esm/atomic-insight-timeframe-facet.entry.js +13 -13
- package/dist/esm/atomic-insight-user-actions-modal.entry.js +3 -3
- package/dist/esm/atomic-insight-user-actions-session_2.entry.js +4 -4
- package/dist/esm/atomic-insight-user-actions-toggle.entry.js +4 -4
- package/dist/esm/atomic-ipx-body.entry.js +3 -3
- package/dist/esm/atomic-ipx-button.entry.js +3 -3
- package/dist/esm/atomic-ipx-embedded.entry.js +3 -3
- package/dist/esm/atomic-ipx-modal.entry.js +3 -3
- package/dist/esm/atomic-ipx-recs-list.entry.js +12 -12
- package/dist/esm/atomic-ipx-refine-modal.entry.js +4 -4
- package/dist/esm/atomic-ipx-refine-toggle.entry.js +4 -4
- package/dist/esm/atomic-ipx-result-link.entry.js +6 -6
- package/dist/esm/atomic-ipx-tab.entry.js +3 -3
- package/dist/esm/atomic-ipx-tabs.entry.js +2 -2
- package/dist/esm/atomic-no-results.entry.js +8 -8
- package/dist/esm/atomic-notifications.entry.js +5 -5
- package/dist/esm/atomic-numeric-facet.entry.js +16 -16
- package/dist/esm/atomic-popover.entry.js +3 -3
- package/dist/esm/atomic-quickview-modal.entry.js +7 -7
- package/dist/esm/atomic-quickview.entry.js +7 -7
- package/dist/esm/atomic-rating-facet.entry.js +14 -14
- package/dist/esm/atomic-rating-range-facet.entry.js +12 -12
- package/dist/esm/atomic-recs-error.entry.js +6 -6
- package/dist/esm/atomic-recs-list.entry.js +12 -12
- package/dist/esm/atomic-recs-result-template.entry.js +5 -5
- package/dist/esm/atomic-recs-result.entry.js +6 -6
- package/dist/esm/atomic-refine-modal.entry.js +5 -5
- package/dist/esm/atomic-refine-toggle.entry.js +3 -3
- package/dist/esm/atomic-result-badge.entry.js +3 -3
- package/dist/esm/atomic-result-children.entry.js +9 -9
- package/dist/esm/atomic-result-children.entry.js.map +1 -1
- package/dist/esm/atomic-result-date.entry.js +4 -4
- package/dist/esm/atomic-result-fields-list.entry.js +3 -3
- package/dist/esm/atomic-result-icon.entry.js +4 -4
- package/dist/esm/atomic-result-image.entry.js +4 -4
- package/dist/esm/atomic-result-link.entry.js +6 -6
- package/dist/esm/atomic-result-localized-text.entry.js +6 -6
- package/dist/esm/atomic-result-multi-value-text.entry.js +5 -5
- package/dist/esm/atomic-result-placeholder_2.entry.js +4 -4
- package/dist/esm/atomic-result-printable-uri.entry.js +7 -7
- package/dist/esm/atomic-result-rating.entry.js +5 -5
- package/dist/esm/atomic-result-timespan.entry.js +4 -4
- package/dist/esm/atomic-search-box.entry.js +6 -6
- package/dist/esm/atomic-segmented-facet-scrollable.entry.js +3 -3
- package/dist/esm/atomic-segmented-facet.entry.js +7 -7
- package/dist/esm/atomic-smart-snippet-answer_2.entry.js +4 -4
- package/dist/esm/atomic-smart-snippet-collapse-wrapper_2.entry.js +2 -2
- package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js +5 -5
- package/dist/esm/atomic-smart-snippet-suggestions.entry.js +6 -6
- package/dist/esm/atomic-smart-snippet.entry.js +8 -8
- package/dist/esm/atomic-sort-dropdown.entry.js +3 -3
- package/dist/esm/atomic-sort-expression.entry.js +3 -3
- package/dist/esm/atomic-stencil-facet-date-input.entry.js +2 -2
- package/dist/esm/atomic-suggestion-renderer.entry.js +2 -2
- package/dist/esm/atomic-suggestion-renderer.entry.js.map +1 -1
- package/dist/esm/atomic-tab-bar_2.entry.js +3 -3
- package/dist/esm/atomic-tab-button.entry.js +2 -2
- package/dist/esm/atomic-tab-manager.entry.js +2 -2
- package/dist/esm/atomic-tab.entry.js +1 -1
- package/dist/esm/atomic-table-element.entry.js +1 -1
- package/dist/esm/atomic-timeframe-facet.entry.js +13 -13
- package/dist/esm/atomic-timeframe.entry.js +1 -1
- package/dist/esm/atomic.js +3 -3
- package/dist/esm/display-options-abcc4ce4.js +103 -0
- package/dist/esm/display-options-abcc4ce4.js.map +1 -0
- package/dist/esm/generated-answer-common-3e329773.js +2953 -0
- package/dist/esm/generated-answer-common-3e329773.js.map +1 -0
- package/dist/esm/index-62c2216d.js +2101 -0
- package/dist/esm/index-62c2216d.js.map +1 -0
- package/dist/esm/initialization-utils-de209ce3.js +145 -0
- package/dist/esm/initialization-utils-de209ce3.js.map +1 -0
- package/dist/esm/item-layout-sections-4f105293.js +41 -0
- package/dist/esm/item-layout-sections-4f105293.js.map +1 -0
- package/dist/esm/jsx-utils-60f0f9d1.js +29 -0
- package/dist/esm/jsx-utils-60f0f9d1.js.map +1 -0
- package/dist/esm/props-utils-e04e8ad0.js +86 -0
- package/dist/esm/props-utils-e04e8ad0.js.map +1 -0
- package/dist/esm/result-template-provider-7edb85e2.js +99 -0
- package/dist/esm/result-template-provider-7edb85e2.js.map +1 -0
- package/dist/esm/result-utils-8978d15e.js +64 -0
- package/dist/esm/result-utils-8978d15e.js.map +1 -0
- package/dist/esm/show-hide-button-0668507e.js +108 -0
- package/dist/esm/show-hide-button-0668507e.js.map +1 -0
- package/dist/esm/smart-snippet-common-03e33c52.js +69 -0
- package/dist/esm/smart-snippet-common-03e33c52.js.map +1 -0
- package/dist/esm/smart-snippet-feedback-modal-common-9f6df720.js +79 -0
- package/dist/esm/smart-snippet-feedback-modal-common-9f6df720.js.map +1 -0
- package/dist/esm/smart-snippet-suggestions-common-cedd543e.js +47 -0
- package/dist/esm/smart-snippet-suggestions-common-cedd543e.js.map +1 -0
- package/dist/esm/stencil-accessibility-utils-de708162.js +160 -0
- package/dist/esm/stencil-accessibility-utils-de708162.js.map +1 -0
- package/dist/esm/stencil-button-fe58a18a.js +128 -0
- package/dist/esm/stencil-button-fe58a18a.js.map +1 -0
- package/dist/esm/stencil-carousel-61529bf9.js +50 -0
- package/dist/esm/stencil-carousel-61529bf9.js.map +1 -0
- package/dist/esm/stencil-checkbox-55f8e00f.js +42 -0
- package/dist/esm/stencil-checkbox-55f8e00f.js.map +1 -0
- package/dist/esm/stencil-display-wrapper-c7ff2cb7.js +29 -0
- package/dist/esm/stencil-display-wrapper-c7ff2cb7.js.map +1 -0
- package/dist/esm/stencil-facet-guard-09dee581.js +16 -0
- package/dist/esm/stencil-facet-guard-09dee581.js.map +1 -0
- package/dist/esm/stencil-facet-placeholder-cfcb96f1.js +52 -0
- package/dist/esm/stencil-facet-placeholder-cfcb96f1.js.map +1 -0
- package/dist/esm/stencil-facet-search-matches-0fea85dc.js +62 -0
- package/dist/esm/stencil-facet-search-matches-0fea85dc.js.map +1 -0
- package/dist/esm/stencil-facet-show-more-less-82b0340f.js +55 -0
- package/dist/esm/stencil-facet-show-more-less-82b0340f.js.map +1 -0
- package/dist/esm/stencil-facet-value-box-1f8e3463.js +27 -0
- package/dist/esm/stencil-facet-value-box-1f8e3463.js.map +1 -0
- package/dist/esm/stencil-facet-value-checkbox-ea5ed2bd.js +107 -0
- package/dist/esm/stencil-facet-value-checkbox-ea5ed2bd.js.map +1 -0
- package/dist/esm/stencil-facet-value-label-highlight-20a0e20f.js +127 -0
- package/dist/esm/stencil-facet-value-label-highlight-20a0e20f.js.map +1 -0
- package/dist/esm/stencil-facet-value-link-a9e7db04.js +30 -0
- package/dist/esm/stencil-facet-value-link-a9e7db04.js.map +1 -0
- package/dist/esm/stencil-facet-values-group-20b78f40.js +23 -0
- package/dist/esm/stencil-facet-values-group-20b78f40.js.map +1 -0
- package/dist/esm/stencil-fieldset-group-21792d47.js +12 -0
- package/dist/esm/stencil-fieldset-group-21792d47.js.map +1 -0
- package/dist/esm/stencil-heading-b741d578.js +13 -0
- package/dist/esm/stencil-heading-b741d578.js.map +1 -0
- package/dist/esm/stencil-iconButton-c5dbe68b.js +16 -0
- package/dist/esm/stencil-iconButton-c5dbe68b.js.map +1 -0
- package/dist/esm/stencil-item-decorators-28845d2c.js +142 -0
- package/dist/esm/stencil-item-decorators-28845d2c.js.map +1 -0
- package/dist/esm/stencil-item-link-18b01efa.js +52 -0
- package/dist/esm/stencil-item-link-18b01efa.js.map +1 -0
- package/dist/esm/stencil-item-list-common-355d92bd.js +64 -0
- package/dist/esm/stencil-item-list-common-355d92bd.js.map +1 -0
- package/dist/esm/stencil-item-list-guard-8adba804.js +17 -0
- package/dist/esm/stencil-item-list-guard-8adba804.js.map +1 -0
- package/dist/esm/stencil-link-46d22c3f.js +917 -0
- package/dist/esm/stencil-link-46d22c3f.js.map +1 -0
- package/dist/esm/stencil-magnifying-glass-d4b6425b.js +144 -0
- package/dist/esm/stencil-magnifying-glass-d4b6425b.js.map +1 -0
- package/dist/esm/stencil-modal-e0ab916e.js +39 -0
- package/dist/esm/stencil-modal-e0ab916e.js.map +1 -0
- package/dist/esm/stencil-radio-button-bd9a5704.js +75 -0
- package/dist/esm/stencil-radio-button-bd9a5704.js.map +1 -0
- package/dist/esm/stencil-rating-95f6b53e.js +64 -0
- package/dist/esm/stencil-rating-95f6b53e.js.map +1 -0
- package/dist/esm/stencil-result-template-common-3ed9087d.js +116 -0
- package/dist/esm/stencil-result-template-common-3ed9087d.js.map +1 -0
- package/dist/esm/stencil-result-template-decorators-b54ccebe.js +38 -0
- package/dist/esm/stencil-result-template-decorators-b54ccebe.js.map +1 -0
- package/dist/esm/stencil-suggestion-manager-f7d2bb62.js +423 -0
- package/dist/esm/stencil-suggestion-manager-f7d2bb62.js.map +1 -0
- package/dist/esm/stencil-tips-4be36dd1.js +34 -0
- package/dist/esm/stencil-tips-4be36dd1.js.map +1 -0
- package/dist/esm/stencil-values-container-9eef93e1.js +59 -0
- package/dist/esm/stencil-values-container-9eef93e1.js.map +1 -0
- package/dist/esm/timeframe-facet-common-cefe1400.js +212 -0
- package/dist/esm/timeframe-facet-common-cefe1400.js.map +1 -0
- package/dist/esm/utils-730e6154.js +124 -0
- package/dist/esm/utils-730e6154.js.map +1 -0
- package/dist/esm/version.js +1 -1
- package/dist/types/components/common/atomic-focus-trap/atomic-focus-trap.d.ts +52 -0
- package/dist/types/components/common/index.d.ts +1 -0
- package/dist/types/components/common/result-children/collection-guard.d.ts +3 -7
- package/dist/types/components/common/result-children/stencil-collection-guard.d.ts +16 -0
- package/dist/types/components/common/validate-props-controller/validate-props-controller.d.ts +6 -3
- package/dist/types/components/search/atomic-breadbox/atomic-breadbox.d.ts +4 -1
- package/dist/types/components/search/atomic-facet/atomic-facet.d.ts +3 -2
- package/dist/types/components/search/atomic-result-html/atomic-result-html.d.ts +41 -0
- package/dist/types/components/search/index.d.ts +1 -0
- package/dist/types/components.d.ts +16 -100
- package/docs/atomic-docs.json +4 -72
- package/package.json +2 -1
- package/dist/atomic/components/atomic-focus-trap.d.ts +0 -11
- package/dist/atomic/components/atomic-focus-trap.js +0 -8
- package/dist/atomic/components/atomic-focus-trap.js.map +0 -1
- package/dist/atomic/components/atomic-focus-trap2.js +0 -148
- package/dist/atomic/components/atomic-focus-trap2.js.map +0 -1
- package/dist/atomic/components/atomic-result-html.d.ts +0 -11
- package/dist/atomic/components/atomic-result-html.js +0 -67
- package/dist/atomic/components/atomic-result-html.js.map +0 -1
- package/dist/atomic/p-04d56bcb.js +0 -2
- package/dist/atomic/p-053f5cb1.entry.js +0 -2
- package/dist/atomic/p-08ce68cd.entry.js +0 -2
- package/dist/atomic/p-08dfc93e.js +0 -2
- package/dist/atomic/p-0ace4e44.entry.js +0 -2
- package/dist/atomic/p-0fded72d.entry.js +0 -2
- package/dist/atomic/p-1293a9d8.js +0 -2
- package/dist/atomic/p-151392e0.entry.js +0 -2
- package/dist/atomic/p-169136cc.entry.js +0 -2
- package/dist/atomic/p-1746e396.entry.js +0 -2
- package/dist/atomic/p-17c46f6c.entry.js +0 -2
- package/dist/atomic/p-190bca88.js +0 -2
- package/dist/atomic/p-19dfc5d6.entry.js +0 -2
- package/dist/atomic/p-1bb8fd49.js +0 -2
- package/dist/atomic/p-1be5a1ac.js +0 -2
- package/dist/atomic/p-1c3c00a1.entry.js +0 -2
- package/dist/atomic/p-1d1c0c3b.js +0 -2
- package/dist/atomic/p-1d2317fa.js +0 -2
- package/dist/atomic/p-1f86745f.entry.js +0 -2
- package/dist/atomic/p-21d3d698.entry.js +0 -2
- package/dist/atomic/p-21d3d698.entry.js.map +0 -1
- package/dist/atomic/p-240b5a52.entry.js +0 -2
- package/dist/atomic/p-249b16d9.entry.js +0 -2
- package/dist/atomic/p-2545de3a.entry.js +0 -2
- package/dist/atomic/p-292292b4.entry.js +0 -2
- package/dist/atomic/p-2a3044e3.entry.js +0 -2
- package/dist/atomic/p-303657e2.entry.js +0 -2
- package/dist/atomic/p-30b1a8e0.js +0 -2
- package/dist/atomic/p-32275553.entry.js +0 -2
- package/dist/atomic/p-37dd7d31.entry.js +0 -2
- package/dist/atomic/p-385d4e0d.js +0 -2
- package/dist/atomic/p-39e091d5.entry.js +0 -2
- package/dist/atomic/p-3c50b839.entry.js +0 -2
- package/dist/atomic/p-3c5d36b6.entry.js +0 -2
- package/dist/atomic/p-40702c80.entry.js +0 -2
- package/dist/atomic/p-40b4b588.entry.js +0 -2
- package/dist/atomic/p-41427eea.js +0 -2
- package/dist/atomic/p-416d5f3e.entry.js +0 -2
- package/dist/atomic/p-4243bce0.entry.js +0 -2
- package/dist/atomic/p-4252b62a.entry.js +0 -2
- package/dist/atomic/p-43a78770.entry.js +0 -2
- package/dist/atomic/p-475f9931.entry.js +0 -2
- package/dist/atomic/p-4835a7b4.entry.js +0 -2
- package/dist/atomic/p-4b2f412f.js +0 -2
- package/dist/atomic/p-4c9eb083.entry.js +0 -2
- package/dist/atomic/p-4dc45ad2.entry.js +0 -2
- package/dist/atomic/p-4e0a485b.entry.js +0 -2
- package/dist/atomic/p-4f184c34.entry.js +0 -2
- package/dist/atomic/p-4f184c34.entry.js.map +0 -1
- package/dist/atomic/p-5061c7d9.entry.js +0 -2
- package/dist/atomic/p-52713305.js +0 -2
- package/dist/atomic/p-5474f931.entry.js +0 -2
- package/dist/atomic/p-572811d4.entry.js +0 -2
- package/dist/atomic/p-57aec054.entry.js +0 -2
- package/dist/atomic/p-57aec054.entry.js.map +0 -1
- package/dist/atomic/p-5e0d4f30.entry.js +0 -2
- package/dist/atomic/p-5ecaedd9.entry.js +0 -2
- package/dist/atomic/p-638a624e.entry.js +0 -2
- package/dist/atomic/p-64e38158.entry.js +0 -2
- package/dist/atomic/p-6885acd3.entry.js +0 -2
- package/dist/atomic/p-6a61dd78.js +0 -2
- package/dist/atomic/p-6baaaab1.entry.js +0 -2
- package/dist/atomic/p-6bf0d9bf.entry.js +0 -2
- package/dist/atomic/p-6dd3a7be.js +0 -2
- package/dist/atomic/p-6ea6fde1.entry.js +0 -2
- package/dist/atomic/p-716136ae.entry.js +0 -2
- package/dist/atomic/p-74928a89.entry.js +0 -2
- package/dist/atomic/p-7cc0b600.entry.js +0 -2
- package/dist/atomic/p-7f783c5b.js +0 -2
- package/dist/atomic/p-806d2145.entry.js +0 -2
- package/dist/atomic/p-81a2b7f5.entry.js +0 -2
- package/dist/atomic/p-82608edd.entry.js +0 -2
- package/dist/atomic/p-843e0545.entry.js +0 -2
- package/dist/atomic/p-85196468.js +0 -2
- package/dist/atomic/p-8543f60a.entry.js +0 -2
- package/dist/atomic/p-85b7825e.entry.js +0 -2
- package/dist/atomic/p-862769b9.entry.js +0 -2
- package/dist/atomic/p-893c53d3.entry.js +0 -2
- package/dist/atomic/p-90f2e96a.entry.js +0 -2
- package/dist/atomic/p-91fabc48.js +0 -2
- package/dist/atomic/p-920113d1.js +0 -2
- package/dist/atomic/p-967b38dd.js +0 -2
- package/dist/atomic/p-969778a1.entry.js +0 -2
- package/dist/atomic/p-979b1d38.entry.js +0 -2
- package/dist/atomic/p-9a22af0b.entry.js +0 -2
- package/dist/atomic/p-9bb3269f.entry.js +0 -2
- package/dist/atomic/p-9bf4b689.js +0 -2
- package/dist/atomic/p-9c71c564.entry.js +0 -2
- package/dist/atomic/p-9cf54848.js +0 -2
- package/dist/atomic/p-9dc331b3.entry.js +0 -2
- package/dist/atomic/p-9ec08fc1.entry.js +0 -2
- package/dist/atomic/p-a132b44f.js +0 -2
- package/dist/atomic/p-a598dc5b.js +0 -2
- package/dist/atomic/p-a60ad537.entry.js +0 -2
- package/dist/atomic/p-a6bbb030.js +0 -2
- package/dist/atomic/p-a7064c41.entry.js +0 -2
- package/dist/atomic/p-a810d6ad.entry.js +0 -2
- package/dist/atomic/p-a9f165e5.entry.js +0 -2
- package/dist/atomic/p-aa18c0ea.js +0 -2
- package/dist/atomic/p-ab3fafb5.js +0 -2
- package/dist/atomic/p-ab3fafb5.js.map +0 -1
- package/dist/atomic/p-acf4faf8.js +0 -2
- package/dist/atomic/p-b09ebe95.js +0 -2
- package/dist/atomic/p-b201b267.js +0 -3
- package/dist/atomic/p-b201b267.js.map +0 -1
- package/dist/atomic/p-b39f31df.entry.js +0 -2
- package/dist/atomic/p-b6266855.entry.js +0 -2
- package/dist/atomic/p-b66057f2.entry.js +0 -2
- package/dist/atomic/p-b9984629.entry.js +0 -2
- package/dist/atomic/p-bbe35bc8.entry.js +0 -2
- package/dist/atomic/p-bbe35bc8.entry.js.map +0 -1
- package/dist/atomic/p-bdec46c1.entry.js +0 -2
- package/dist/atomic/p-bdec46c1.entry.js.map +0 -1
- package/dist/atomic/p-c375d8ab.js +0 -2
- package/dist/atomic/p-c3b72efb.entry.js +0 -2
- package/dist/atomic/p-c3cb3e0c.js +0 -2
- package/dist/atomic/p-c3cb3e0c.js.map +0 -1
- package/dist/atomic/p-c4701592.entry.js +0 -2
- package/dist/atomic/p-c8de91c6.entry.js +0 -2
- package/dist/atomic/p-ca775fe9.js +0 -2
- package/dist/atomic/p-cdbfd6d3.js +0 -2
- package/dist/atomic/p-d02fe58f.entry.js +0 -2
- package/dist/atomic/p-d0b814b3.entry.js +0 -2
- package/dist/atomic/p-d11c4053.entry.js +0 -2
- package/dist/atomic/p-d245416e.js +0 -2
- package/dist/atomic/p-d2738b20.entry.js +0 -2
- package/dist/atomic/p-d275f338.js +0 -2
- package/dist/atomic/p-d279ff6c.entry.js +0 -2
- package/dist/atomic/p-d495c40e.entry.js +0 -2
- package/dist/atomic/p-d573be8c.entry.js +0 -2
- package/dist/atomic/p-d7e6e377.js +0 -2
- package/dist/atomic/p-d860463a.js +0 -2
- package/dist/atomic/p-daa8d439.entry.js +0 -2
- package/dist/atomic/p-db3aa7c0.entry.js +0 -2
- package/dist/atomic/p-dd3d6b89.entry.js +0 -2
- package/dist/atomic/p-ded35c53.js +0 -9
- package/dist/atomic/p-df18119c.entry.js +0 -2
- package/dist/atomic/p-df4ce223.entry.js +0 -2
- package/dist/atomic/p-e22088e4.entry.js +0 -2
- package/dist/atomic/p-e382b288.entry.js +0 -2
- package/dist/atomic/p-e3d30753.entry.js +0 -2
- package/dist/atomic/p-e3d30753.entry.js.map +0 -1
- package/dist/atomic/p-e5b29430.entry.js +0 -2
- package/dist/atomic/p-e6f5b0eb.js +0 -2
- package/dist/atomic/p-e89123f7.js +0 -2
- package/dist/atomic/p-e89123f7.js.map +0 -1
- package/dist/atomic/p-e8e041cb.entry.js +0 -2
- package/dist/atomic/p-e9391c7b.entry.js +0 -2
- package/dist/atomic/p-e9e3e909.js +0 -2
- package/dist/atomic/p-edd94929.entry.js +0 -2
- package/dist/atomic/p-ee43c7de.entry.js +0 -2
- package/dist/atomic/p-ee735a07.js +0 -2
- package/dist/atomic/p-f07098d4.entry.js +0 -2
- package/dist/atomic/p-f5b94d26.entry.js +0 -2
- package/dist/atomic/p-f6bb2489.entry.js +0 -2
- package/dist/atomic/p-f6bb2489.entry.js.map +0 -1
- package/dist/atomic/p-f7f58b7c.entry.js +0 -2
- package/dist/atomic/p-f8a051d0.entry.js +0 -2
- package/dist/atomic/p-f8e16ee9.js +0 -2
- package/dist/atomic/p-fa0866da.entry.js +0 -2
- package/dist/atomic/p-fa7c9052.js +0 -2
- package/dist/atomic/p-fbbf4344.entry.js +0 -2
- package/dist/atomic/p-fd7d815c.js +0 -2
- package/dist/atomic/p-ff4eadc8.entry.js +0 -2
- package/dist/cjs/atomic-focus-trap.cjs.entry.js +0 -133
- package/dist/cjs/atomic-focus-trap.cjs.entry.js.map +0 -1
- package/dist/cjs/atomic-result-html.cjs.entry.js +0 -55
- package/dist/cjs/atomic-result-html.cjs.entry.js.map +0 -1
- package/dist/cjs/display-options-4361ede7.js +0 -107
- package/dist/cjs/display-options-4361ede7.js.map +0 -1
- package/dist/cjs/generated-answer-common-927e3ee0.js +0 -2955
- package/dist/cjs/generated-answer-common-927e3ee0.js.map +0 -1
- package/dist/cjs/index-1df73594.js +0 -2141
- package/dist/cjs/index-1df73594.js.map +0 -1
- package/dist/cjs/initialization-utils-ec6c0bfb.js +0 -149
- package/dist/cjs/initialization-utils-ec6c0bfb.js.map +0 -1
- package/dist/cjs/item-layout-sections-1a94d975.js +0 -44
- package/dist/cjs/item-layout-sections-1a94d975.js.map +0 -1
- package/dist/cjs/jsx-utils-7c4aa880.js +0 -31
- package/dist/cjs/jsx-utils-7c4aa880.js.map +0 -1
- package/dist/cjs/props-utils-0a4be1ba.js +0 -89
- package/dist/cjs/props-utils-0a4be1ba.js.map +0 -1
- package/dist/cjs/result-template-provider-c764201d.js +0 -103
- package/dist/cjs/result-template-provider-c764201d.js.map +0 -1
- package/dist/cjs/result-utils-3313d650.js +0 -75
- package/dist/cjs/result-utils-3313d650.js.map +0 -1
- package/dist/cjs/show-hide-button-6cda3a22.js +0 -115
- package/dist/cjs/show-hide-button-6cda3a22.js.map +0 -1
- package/dist/cjs/smart-snippet-common-bfd586a6.js +0 -75
- package/dist/cjs/smart-snippet-common-bfd586a6.js.map +0 -1
- package/dist/cjs/smart-snippet-feedback-modal-common-f0ee5b23.js +0 -87
- package/dist/cjs/smart-snippet-feedback-modal-common-f0ee5b23.js.map +0 -1
- package/dist/cjs/smart-snippet-suggestions-common-0288af37.js +0 -54
- package/dist/cjs/smart-snippet-suggestions-common-0288af37.js.map +0 -1
- package/dist/cjs/stencil-accessibility-utils-6311883f.js +0 -164
- package/dist/cjs/stencil-accessibility-utils-6311883f.js.map +0 -1
- package/dist/cjs/stencil-button-e9b9fab0.js +0 -133
- package/dist/cjs/stencil-button-e9b9fab0.js.map +0 -1
- package/dist/cjs/stencil-carousel-72557b3b.js +0 -53
- package/dist/cjs/stencil-carousel-72557b3b.js.map +0 -1
- package/dist/cjs/stencil-checkbox-ad6eaf80.js +0 -45
- package/dist/cjs/stencil-checkbox-ad6eaf80.js.map +0 -1
- package/dist/cjs/stencil-display-wrapper-968d88e3.js +0 -32
- package/dist/cjs/stencil-display-wrapper-968d88e3.js.map +0 -1
- package/dist/cjs/stencil-facet-guard-436f3e55.js +0 -18
- package/dist/cjs/stencil-facet-guard-436f3e55.js.map +0 -1
- package/dist/cjs/stencil-facet-placeholder-d3c0a675.js +0 -56
- package/dist/cjs/stencil-facet-placeholder-d3c0a675.js.map +0 -1
- package/dist/cjs/stencil-facet-search-matches-8922dbe6.js +0 -65
- package/dist/cjs/stencil-facet-search-matches-8922dbe6.js.map +0 -1
- package/dist/cjs/stencil-facet-show-more-less-67bb08ba.js +0 -58
- package/dist/cjs/stencil-facet-show-more-less-67bb08ba.js.map +0 -1
- package/dist/cjs/stencil-facet-value-box-d882e46f.js +0 -29
- package/dist/cjs/stencil-facet-value-box-d882e46f.js.map +0 -1
- package/dist/cjs/stencil-facet-value-checkbox-4cc442f8.js +0 -109
- package/dist/cjs/stencil-facet-value-checkbox-4cc442f8.js.map +0 -1
- package/dist/cjs/stencil-facet-value-label-highlight-69f84bb3.js +0 -132
- package/dist/cjs/stencil-facet-value-label-highlight-69f84bb3.js.map +0 -1
- package/dist/cjs/stencil-facet-value-link-8a739399.js +0 -32
- package/dist/cjs/stencil-facet-value-link-8a739399.js.map +0 -1
- package/dist/cjs/stencil-facet-values-group-c74dbb7c.js +0 -25
- package/dist/cjs/stencil-facet-values-group-c74dbb7c.js.map +0 -1
- package/dist/cjs/stencil-fieldset-group-c5e6860f.js +0 -14
- package/dist/cjs/stencil-fieldset-group-c5e6860f.js.map +0 -1
- package/dist/cjs/stencil-heading-8a52dac8.js +0 -15
- package/dist/cjs/stencil-heading-8a52dac8.js.map +0 -1
- package/dist/cjs/stencil-iconButton-a1efe92d.js +0 -18
- package/dist/cjs/stencil-iconButton-a1efe92d.js.map +0 -1
- package/dist/cjs/stencil-item-decorators-eec1ff80.js +0 -148
- package/dist/cjs/stencil-item-decorators-eec1ff80.js.map +0 -1
- package/dist/cjs/stencil-item-link-d9d70a88.js +0 -55
- package/dist/cjs/stencil-item-link-d9d70a88.js.map +0 -1
- package/dist/cjs/stencil-item-list-common-f64da3bd.js +0 -67
- package/dist/cjs/stencil-item-list-common-f64da3bd.js.map +0 -1
- package/dist/cjs/stencil-item-list-guard-b80d93ea.js +0 -19
- package/dist/cjs/stencil-item-list-guard-b80d93ea.js.map +0 -1
- package/dist/cjs/stencil-link-20830f66.js +0 -927
- package/dist/cjs/stencil-link-20830f66.js.map +0 -1
- package/dist/cjs/stencil-magnifying-glass-448b45af.js +0 -147
- package/dist/cjs/stencil-magnifying-glass-448b45af.js.map +0 -1
- package/dist/cjs/stencil-modal-cc1cad10.js +0 -41
- package/dist/cjs/stencil-modal-cc1cad10.js.map +0 -1
- package/dist/cjs/stencil-radio-button-a90b0c64.js +0 -77
- package/dist/cjs/stencil-radio-button-a90b0c64.js.map +0 -1
- package/dist/cjs/stencil-rating-570ba25b.js +0 -68
- package/dist/cjs/stencil-rating-570ba25b.js.map +0 -1
- package/dist/cjs/stencil-result-template-common-fd442476.js +0 -120
- package/dist/cjs/stencil-result-template-common-fd442476.js.map +0 -1
- package/dist/cjs/stencil-result-template-decorators-c567887f.js +0 -42
- package/dist/cjs/stencil-result-template-decorators-c567887f.js.map +0 -1
- package/dist/cjs/stencil-suggestion-manager-c7b54239.js +0 -428
- package/dist/cjs/stencil-suggestion-manager-c7b54239.js.map +0 -1
- package/dist/cjs/stencil-tips-05c5f756.js +0 -38
- package/dist/cjs/stencil-tips-05c5f756.js.map +0 -1
- package/dist/cjs/stencil-values-container-4c64bc4b.js +0 -63
- package/dist/cjs/stencil-values-container-4c64bc4b.js.map +0 -1
- package/dist/cjs/timeframe-facet-common-03f90c44.js +0 -214
- package/dist/cjs/timeframe-facet-common-03f90c44.js.map +0 -1
- package/dist/cjs/utils-39abd753.js +0 -173
- package/dist/cjs/utils-39abd753.js.map +0 -1
- package/dist/esm/atomic-focus-trap.entry.js +0 -129
- package/dist/esm/atomic-focus-trap.entry.js.map +0 -1
- package/dist/esm/atomic-result-html.entry.js +0 -51
- package/dist/esm/atomic-result-html.entry.js.map +0 -1
- package/dist/esm/display-options-c671da15.js +0 -103
- package/dist/esm/display-options-c671da15.js.map +0 -1
- package/dist/esm/generated-answer-common-88cdefec.js +0 -2953
- package/dist/esm/generated-answer-common-88cdefec.js.map +0 -1
- package/dist/esm/index-a59c51bd.js +0 -2110
- package/dist/esm/index-a59c51bd.js.map +0 -1
- package/dist/esm/initialization-utils-fff1cf59.js +0 -145
- package/dist/esm/initialization-utils-fff1cf59.js.map +0 -1
- package/dist/esm/item-layout-sections-d694a4b6.js +0 -41
- package/dist/esm/item-layout-sections-d694a4b6.js.map +0 -1
- package/dist/esm/jsx-utils-6d1b227a.js +0 -29
- package/dist/esm/jsx-utils-6d1b227a.js.map +0 -1
- package/dist/esm/props-utils-2cf5bd96.js +0 -86
- package/dist/esm/props-utils-2cf5bd96.js.map +0 -1
- package/dist/esm/result-template-provider-ce19144a.js +0 -99
- package/dist/esm/result-template-provider-ce19144a.js.map +0 -1
- package/dist/esm/result-utils-7e9b6b5c.js +0 -71
- package/dist/esm/result-utils-7e9b6b5c.js.map +0 -1
- package/dist/esm/show-hide-button-d9230b9e.js +0 -108
- package/dist/esm/show-hide-button-d9230b9e.js.map +0 -1
- package/dist/esm/smart-snippet-common-a49d332d.js +0 -69
- package/dist/esm/smart-snippet-common-a49d332d.js.map +0 -1
- package/dist/esm/smart-snippet-feedback-modal-common-cebe3ffd.js +0 -79
- package/dist/esm/smart-snippet-feedback-modal-common-cebe3ffd.js.map +0 -1
- package/dist/esm/smart-snippet-suggestions-common-cec2c1d8.js +0 -47
- package/dist/esm/smart-snippet-suggestions-common-cec2c1d8.js.map +0 -1
- package/dist/esm/stencil-accessibility-utils-3639e3bd.js +0 -160
- package/dist/esm/stencil-accessibility-utils-3639e3bd.js.map +0 -1
- package/dist/esm/stencil-button-d6e06ca8.js +0 -128
- package/dist/esm/stencil-button-d6e06ca8.js.map +0 -1
- package/dist/esm/stencil-carousel-a9540851.js +0 -50
- package/dist/esm/stencil-carousel-a9540851.js.map +0 -1
- package/dist/esm/stencil-checkbox-7198404a.js +0 -42
- package/dist/esm/stencil-checkbox-7198404a.js.map +0 -1
- package/dist/esm/stencil-display-wrapper-ad2cc011.js +0 -29
- package/dist/esm/stencil-display-wrapper-ad2cc011.js.map +0 -1
- package/dist/esm/stencil-facet-guard-23f22272.js +0 -16
- package/dist/esm/stencil-facet-guard-23f22272.js.map +0 -1
- package/dist/esm/stencil-facet-placeholder-8201b5c9.js +0 -52
- package/dist/esm/stencil-facet-placeholder-8201b5c9.js.map +0 -1
- package/dist/esm/stencil-facet-search-matches-4b67ae11.js +0 -62
- package/dist/esm/stencil-facet-search-matches-4b67ae11.js.map +0 -1
- package/dist/esm/stencil-facet-show-more-less-35014a2f.js +0 -55
- package/dist/esm/stencil-facet-show-more-less-35014a2f.js.map +0 -1
- package/dist/esm/stencil-facet-value-box-47df7df4.js +0 -27
- package/dist/esm/stencil-facet-value-box-47df7df4.js.map +0 -1
- package/dist/esm/stencil-facet-value-checkbox-c4d0f0ca.js +0 -107
- package/dist/esm/stencil-facet-value-checkbox-c4d0f0ca.js.map +0 -1
- package/dist/esm/stencil-facet-value-label-highlight-3d1f6b62.js +0 -127
- package/dist/esm/stencil-facet-value-label-highlight-3d1f6b62.js.map +0 -1
- package/dist/esm/stencil-facet-value-link-5507b3b2.js +0 -30
- package/dist/esm/stencil-facet-value-link-5507b3b2.js.map +0 -1
- package/dist/esm/stencil-facet-values-group-c33807e6.js +0 -23
- package/dist/esm/stencil-facet-values-group-c33807e6.js.map +0 -1
- package/dist/esm/stencil-fieldset-group-815bae1e.js +0 -12
- package/dist/esm/stencil-fieldset-group-815bae1e.js.map +0 -1
- package/dist/esm/stencil-heading-6a4bdf4c.js +0 -13
- package/dist/esm/stencil-heading-6a4bdf4c.js.map +0 -1
- package/dist/esm/stencil-iconButton-f8789d6f.js +0 -16
- package/dist/esm/stencil-iconButton-f8789d6f.js.map +0 -1
- package/dist/esm/stencil-item-decorators-15de590b.js +0 -142
- package/dist/esm/stencil-item-decorators-15de590b.js.map +0 -1
- package/dist/esm/stencil-item-link-e368ed65.js +0 -52
- package/dist/esm/stencil-item-link-e368ed65.js.map +0 -1
- package/dist/esm/stencil-item-list-common-9c81b381.js +0 -64
- package/dist/esm/stencil-item-list-common-9c81b381.js.map +0 -1
- package/dist/esm/stencil-item-list-guard-efdff3f6.js +0 -17
- package/dist/esm/stencil-item-list-guard-efdff3f6.js.map +0 -1
- package/dist/esm/stencil-link-7146fbbd.js +0 -917
- package/dist/esm/stencil-link-7146fbbd.js.map +0 -1
- package/dist/esm/stencil-magnifying-glass-b878a911.js +0 -144
- package/dist/esm/stencil-magnifying-glass-b878a911.js.map +0 -1
- package/dist/esm/stencil-modal-b9d6d845.js +0 -39
- package/dist/esm/stencil-modal-b9d6d845.js.map +0 -1
- package/dist/esm/stencil-radio-button-51ac04fd.js +0 -75
- package/dist/esm/stencil-radio-button-51ac04fd.js.map +0 -1
- package/dist/esm/stencil-rating-ca172ca6.js +0 -64
- package/dist/esm/stencil-rating-ca172ca6.js.map +0 -1
- package/dist/esm/stencil-result-template-common-41400f1e.js +0 -116
- package/dist/esm/stencil-result-template-common-41400f1e.js.map +0 -1
- package/dist/esm/stencil-result-template-decorators-ed23985d.js +0 -38
- package/dist/esm/stencil-result-template-decorators-ed23985d.js.map +0 -1
- package/dist/esm/stencil-suggestion-manager-0f37f08b.js +0 -423
- package/dist/esm/stencil-suggestion-manager-0f37f08b.js.map +0 -1
- package/dist/esm/stencil-tips-b2cdf4f8.js +0 -34
- package/dist/esm/stencil-tips-b2cdf4f8.js.map +0 -1
- package/dist/esm/stencil-values-container-fb9e63c6.js +0 -59
- package/dist/esm/stencil-values-container-fb9e63c6.js.map +0 -1
- package/dist/esm/timeframe-facet-common-57a927da.js +0 -212
- package/dist/esm/timeframe-facet-common-57a927da.js.map +0 -1
- package/dist/esm/utils-5372e188.js +0 -152
- package/dist/esm/utils-5372e188.js.map +0 -1
- package/dist/types/components/common/atomic-focus-trap.d.ts +0 -36
- package/dist/types/components/search/result-template-components/atomic-result-html/atomic-result-html.d.ts +0 -27
- /package/dist/atomic/{p-d495c40e.entry.js.map → p-00b8b2e8.entry.js.map} +0 -0
- /package/dist/atomic/{p-d0b814b3.entry.js.map → p-02893e42.entry.js.map} +0 -0
- /package/dist/atomic/{p-04d56bcb.js.map → p-0757f396.js.map} +0 -0
- /package/dist/atomic/{p-fa0866da.entry.js.map → p-0b1d29ae.entry.js.map} +0 -0
- /package/dist/atomic/{p-f07098d4.entry.js.map → p-0cf53453.entry.js.map} +0 -0
- /package/dist/atomic/{p-9bb3269f.entry.js.map → p-0f01f086.entry.js.map} +0 -0
- /package/dist/atomic/{p-240b5a52.entry.js.map → p-0f6d1893.entry.js.map} +0 -0
- /package/dist/atomic/{p-d02fe58f.entry.js.map → p-0fb30fdd.entry.js.map} +0 -0
- /package/dist/atomic/{p-967b38dd.js.map → p-12e5e56c.js.map} +0 -0
- /package/dist/atomic/{p-572811d4.entry.js.map → p-1522b928.entry.js.map} +0 -0
- /package/dist/atomic/{p-ee43c7de.entry.js.map → p-15fc97ac.entry.js.map} +0 -0
- /package/dist/atomic/{p-a9f165e5.entry.js.map → p-176d0477.entry.js.map} +0 -0
- /package/dist/atomic/{p-6baaaab1.entry.js.map → p-1b2f375c.entry.js.map} +0 -0
- /package/dist/atomic/{p-b9984629.entry.js.map → p-1c70d4a8.entry.js.map} +0 -0
- /package/dist/atomic/{p-85196468.js.map → p-1c92fc2a.js.map} +0 -0
- /package/dist/atomic/{p-7f783c5b.js.map → p-1cfe9a6d.js.map} +0 -0
- /package/dist/atomic/{p-e9e3e909.js.map → p-1e3242c4.js.map} +0 -0
- /package/dist/atomic/{p-385d4e0d.js.map → p-20a02cb8.js.map} +0 -0
- /package/dist/atomic/{p-979b1d38.entry.js.map → p-21b1ef92.entry.js.map} +0 -0
- /package/dist/atomic/{p-edd94929.entry.js.map → p-24a2db99.entry.js.map} +0 -0
- /package/dist/atomic/{p-64e38158.entry.js.map → p-24e0f33d.entry.js.map} +0 -0
- /package/dist/atomic/{p-5e0d4f30.entry.js.map → p-250e3ba6.entry.js.map} +0 -0
- /package/dist/atomic/{p-d7e6e377.js.map → p-28683ceb.js.map} +0 -0
- /package/dist/atomic/{p-fd7d815c.js.map → p-297a186f.js.map} +0 -0
- /package/dist/atomic/{p-c8de91c6.entry.js.map → p-29a42d73.entry.js.map} +0 -0
- /package/dist/atomic/{p-1d1c0c3b.js.map → p-2b3c7256.js.map} +0 -0
- /package/dist/atomic/{p-17c46f6c.entry.js.map → p-2dbac3f0.entry.js.map} +0 -0
- /package/dist/atomic/{p-4243bce0.entry.js.map → p-2e21c2be.entry.js.map} +0 -0
- /package/dist/atomic/{p-c3b72efb.entry.js.map → p-2e97cbb5.entry.js.map} +0 -0
- /package/dist/atomic/{p-aa18c0ea.js.map → p-2ea4b61d.js.map} +0 -0
- /package/dist/atomic/{p-ca775fe9.js.map → p-3004da84.js.map} +0 -0
- /package/dist/atomic/{p-9c71c564.entry.js.map → p-308ea344.entry.js.map} +0 -0
- /package/dist/atomic/{p-82608edd.entry.js.map → p-31b2e659.entry.js.map} +0 -0
- /package/dist/atomic/{p-90f2e96a.entry.js.map → p-37b37610.entry.js.map} +0 -0
- /package/dist/atomic/{p-5ecaedd9.entry.js.map → p-39f99214.entry.js.map} +0 -0
- /package/dist/atomic/{p-40702c80.entry.js.map → p-3a8ce5ea.entry.js.map} +0 -0
- /package/dist/atomic/{p-4dc45ad2.entry.js.map → p-3b5643b9.entry.js.map} +0 -0
- /package/dist/atomic/{p-40b4b588.entry.js.map → p-41788181.entry.js.map} +0 -0
- /package/dist/atomic/{p-6ea6fde1.entry.js.map → p-42327028.entry.js.map} +0 -0
- /package/dist/atomic/{p-3c5d36b6.entry.js.map → p-42a151a2.entry.js.map} +0 -0
- /package/dist/atomic/{p-f7f58b7c.entry.js.map → p-46412741.entry.js.map} +0 -0
- /package/dist/atomic/{p-9bf4b689.js.map → p-4683e572.js.map} +0 -0
- /package/dist/atomic/{p-f8a051d0.entry.js.map → p-47c87f08.entry.js.map} +0 -0
- /package/dist/atomic/{p-a598dc5b.js.map → p-4a6458ad.js.map} +0 -0
- /package/dist/atomic/{p-920113d1.js.map → p-4f66e259.js.map} +0 -0
- /package/dist/atomic/{p-0fded72d.entry.js.map → p-4f6c469f.entry.js.map} +0 -0
- /package/dist/atomic/{p-4c9eb083.entry.js.map → p-503d8e4c.entry.js.map} +0 -0
- /package/dist/atomic/{p-19dfc5d6.entry.js.map → p-51243c0a.entry.js.map} +0 -0
- /package/dist/atomic/{p-249b16d9.entry.js.map → p-52064d8c.entry.js.map} +0 -0
- /package/dist/atomic/{p-41427eea.js.map → p-525e09b0.js.map} +0 -0
- /package/dist/atomic/{p-4835a7b4.entry.js.map → p-52e16718.entry.js.map} +0 -0
- /package/dist/atomic/{p-81a2b7f5.entry.js.map → p-5450d59f.entry.js.map} +0 -0
- /package/dist/atomic/{p-d279ff6c.entry.js.map → p-554e903c.entry.js.map} +0 -0
- /package/dist/atomic/{p-6a61dd78.js.map → p-56a21ae7.js.map} +0 -0
- /package/dist/atomic/{p-fbbf4344.entry.js.map → p-5a161f56.entry.js.map} +0 -0
- /package/dist/atomic/{p-d11c4053.entry.js.map → p-5a52dc4f.entry.js.map} +0 -0
- /package/dist/atomic/{p-e6f5b0eb.js.map → p-5a8c8608.js.map} +0 -0
- /package/dist/atomic/{p-475f9931.entry.js.map → p-61c19a04.entry.js.map} +0 -0
- /package/dist/atomic/{p-4b2f412f.js.map → p-64cc0214.js.map} +0 -0
- /package/dist/atomic/{p-39e091d5.entry.js.map → p-694af29d.entry.js.map} +0 -0
- /package/dist/atomic/{p-c375d8ab.js.map → p-6a5a366c.js.map} +0 -0
- /package/dist/atomic/{p-638a624e.entry.js.map → p-6e8f6c4e.entry.js.map} +0 -0
- /package/dist/atomic/{p-df18119c.entry.js.map → p-7148b295.entry.js.map} +0 -0
- /package/dist/atomic/{p-1c3c00a1.entry.js.map → p-78ff2358.entry.js.map} +0 -0
- /package/dist/atomic/{p-3c50b839.entry.js.map → p-7aa80b40.entry.js.map} +0 -0
- /package/dist/atomic/{p-df4ce223.entry.js.map → p-7b8020dd.entry.js.map} +0 -0
- /package/dist/atomic/{p-dd3d6b89.entry.js.map → p-7c6cded8.entry.js.map} +0 -0
- /package/dist/atomic/{p-e9391c7b.entry.js.map → p-7da807d6.entry.js.map} +0 -0
- /package/dist/atomic/{p-e22088e4.entry.js.map → p-81ead125.entry.js.map} +0 -0
- /package/dist/atomic/{p-ee735a07.js.map → p-81ffbea0.js.map} +0 -0
- /package/dist/atomic/{p-4e0a485b.entry.js.map → p-846ef8c9.entry.js.map} +0 -0
- /package/dist/atomic/{p-b39f31df.entry.js.map → p-84aada47.entry.js.map} +0 -0
- /package/dist/atomic/{p-d860463a.js.map → p-8a471188.js.map} +0 -0
- /package/dist/atomic/{p-716136ae.entry.js.map → p-8b3b87e9.entry.js.map} +0 -0
- /package/dist/atomic/{p-a6bbb030.js.map → p-8e0a3de9.js.map} +0 -0
- /package/dist/atomic/{p-91fabc48.js.map → p-8f7b6eb3.js.map} +0 -0
- /package/dist/atomic/{p-d275f338.js.map → p-8f870628.js.map} +0 -0
- /package/dist/atomic/{p-f8e16ee9.js.map → p-8fdda5c6.js.map} +0 -0
- /package/dist/atomic/{p-1f86745f.entry.js.map → p-91350669.entry.js.map} +0 -0
- /package/dist/atomic/{p-9cf54848.js.map → p-925df073.js.map} +0 -0
- /package/dist/atomic/{p-74928a89.entry.js.map → p-92db698d.entry.js.map} +0 -0
- /package/dist/atomic/{p-6885acd3.entry.js.map → p-944fe2ca.entry.js.map} +0 -0
- /package/dist/atomic/{p-6dd3a7be.js.map → p-945533bd.js.map} +0 -0
- /package/dist/atomic/{p-2545de3a.entry.js.map → p-95649dfe.entry.js.map} +0 -0
- /package/dist/atomic/{p-a60ad537.entry.js.map → p-97bf5db6.entry.js.map} +0 -0
- /package/dist/atomic/{p-ff4eadc8.entry.js.map → p-98ee46c3.entry.js.map} +0 -0
- /package/dist/atomic/{p-9a22af0b.entry.js.map → p-9c34e291.entry.js.map} +0 -0
- /package/dist/atomic/{p-b66057f2.entry.js.map → p-9d89f16e.entry.js.map} +0 -0
- /package/dist/atomic/{p-893c53d3.entry.js.map → p-9e262d4f.entry.js.map} +0 -0
- /package/dist/atomic/{p-5061c7d9.entry.js.map → p-9e84fd28.entry.js.map} +0 -0
- /package/dist/atomic/{p-169136cc.entry.js.map → p-9f127a00.entry.js.map} +0 -0
- /package/dist/atomic/{p-053f5cb1.entry.js.map → p-9f17aac0.entry.js.map} +0 -0
- /package/dist/atomic/{p-b09ebe95.js.map → p-a17b8ffc.js.map} +0 -0
- /package/dist/atomic/{p-843e0545.entry.js.map → p-a3ab554e.entry.js.map} +0 -0
- /package/dist/atomic/{p-5474f931.entry.js.map → p-a86ffd12.entry.js.map} +0 -0
- /package/dist/atomic/{p-6bf0d9bf.entry.js.map → p-a8c7f34f.entry.js.map} +0 -0
- /package/dist/atomic/{p-1d2317fa.js.map → p-a9ed505a.js.map} +0 -0
- /package/dist/atomic/{p-fa7c9052.js.map → p-aaf864d7.js.map} +0 -0
- /package/dist/atomic/{p-c4701592.entry.js.map → p-ab304a67.entry.js.map} +0 -0
- /package/dist/atomic/{p-08ce68cd.entry.js.map → p-ac7abbae.entry.js.map} +0 -0
- /package/dist/atomic/{p-acf4faf8.js.map → p-acbd51dd.js.map} +0 -0
- /package/dist/atomic/{p-db3aa7c0.entry.js.map → p-ad38e363.entry.js.map} +0 -0
- /package/dist/atomic/{p-08dfc93e.js.map → p-adad4020.js.map} +0 -0
- /package/dist/atomic/{p-d2738b20.entry.js.map → p-b125e5e5.entry.js.map} +0 -0
- /package/dist/atomic/{p-190bca88.js.map → p-b160be42.js.map} +0 -0
- /package/dist/atomic/{p-8543f60a.entry.js.map → p-b19ad4bc.entry.js.map} +0 -0
- /package/dist/atomic/{p-303657e2.entry.js.map → p-b416f690.entry.js.map} +0 -0
- /package/dist/atomic/{p-e5b29430.entry.js.map → p-b597d76c.entry.js.map} +0 -0
- /package/dist/atomic/{p-85b7825e.entry.js.map → p-b6b48649.entry.js.map} +0 -0
- /package/dist/atomic/{p-a132b44f.js.map → p-b7f5fdab.js.map} +0 -0
- /package/dist/atomic/{p-0ace4e44.entry.js.map → p-b7f9420d.entry.js.map} +0 -0
- /package/dist/atomic/{p-37dd7d31.entry.js.map → p-b97a773c.entry.js.map} +0 -0
- /package/dist/atomic/{p-cdbfd6d3.js.map → p-ba021837.js.map} +0 -0
- /package/dist/atomic/{p-e382b288.entry.js.map → p-bc0fc584.entry.js.map} +0 -0
- /package/dist/atomic/{p-a7064c41.entry.js.map → p-bd1aa6bb.entry.js.map} +0 -0
- /package/dist/atomic/{p-2a3044e3.entry.js.map → p-bec7e50a.entry.js.map} +0 -0
- /package/dist/atomic/{p-e8e041cb.entry.js.map → p-c566543b.entry.js.map} +0 -0
- /package/dist/atomic/{p-ded35c53.js.map → p-c5ec8f79.js.map} +0 -0
- /package/dist/atomic/{p-f5b94d26.entry.js.map → p-c6986525.entry.js.map} +0 -0
- /package/dist/atomic/{p-151392e0.entry.js.map → p-c953f644.entry.js.map} +0 -0
- /package/dist/atomic/{p-52713305.js.map → p-d0294026.js.map} +0 -0
- /package/dist/atomic/{p-4252b62a.entry.js.map → p-d2bb57da.entry.js.map} +0 -0
- /package/dist/atomic/{p-30b1a8e0.js.map → p-d45776b3.js.map} +0 -0
- /package/dist/atomic/{p-1bb8fd49.js.map → p-d967e926.js.map} +0 -0
- /package/dist/atomic/{p-1746e396.entry.js.map → p-e03f245b.entry.js.map} +0 -0
- /package/dist/atomic/{p-43a78770.entry.js.map → p-e19ef4be.entry.js.map} +0 -0
- /package/dist/atomic/{p-862769b9.entry.js.map → p-e2088f9e.entry.js.map} +0 -0
- /package/dist/atomic/{p-9ec08fc1.entry.js.map → p-e4553b03.entry.js.map} +0 -0
- /package/dist/atomic/{p-d573be8c.entry.js.map → p-e5546bea.entry.js.map} +0 -0
- /package/dist/atomic/{p-969778a1.entry.js.map → p-e5f356ca.entry.js.map} +0 -0
- /package/dist/atomic/{p-d245416e.js.map → p-e614add9.js.map} +0 -0
- /package/dist/atomic/{p-a810d6ad.entry.js.map → p-e86a9dcb.entry.js.map} +0 -0
- /package/dist/atomic/{p-806d2145.entry.js.map → p-e8befabf.entry.js.map} +0 -0
- /package/dist/atomic/{p-416d5f3e.entry.js.map → p-efff4455.entry.js.map} +0 -0
- /package/dist/atomic/{p-1293a9d8.js.map → p-f00a245c.js.map} +0 -0
- /package/dist/atomic/{p-1be5a1ac.js.map → p-f0f67cf4.js.map} +0 -0
- /package/dist/atomic/{p-daa8d439.entry.js.map → p-f1997c74.entry.js.map} +0 -0
- /package/dist/atomic/{p-7cc0b600.entry.js.map → p-f2aebada.entry.js.map} +0 -0
- /package/dist/atomic/{p-9dc331b3.entry.js.map → p-f312f600.entry.js.map} +0 -0
- /package/dist/atomic/{p-32275553.entry.js.map → p-fa867de1.entry.js.map} +0 -0
- /package/dist/atomic/{p-292292b4.entry.js.map → p-fc4761d1.entry.js.map} +0 -0
- /package/dist/atomic/{p-b6266855.entry.js.map → p-fd610816.entry.js.map} +0 -0
|
@@ -7,7 +7,8 @@ import { deepEqual } from "../../../utils/compare-utils";
|
|
|
7
7
|
* the host updates, revalidating only if the props have changed since the last
|
|
8
8
|
* validation.
|
|
9
9
|
*
|
|
10
|
-
* If validation fails, the controller sets the `error` property on the host
|
|
10
|
+
* If validation fails, the controller either sets the `error` property on the host
|
|
11
|
+
* or logs a warning, depending on the `throwOnError` configuration.
|
|
11
12
|
*/
|
|
12
13
|
export class ValidatePropsController {
|
|
13
14
|
/**
|
|
@@ -16,11 +17,13 @@ export class ValidatePropsController {
|
|
|
16
17
|
* @param host The host element.
|
|
17
18
|
* @param getProps A function that returns the current props to validate.
|
|
18
19
|
* @param schema The Bueno schema to validate the props against.
|
|
20
|
+
* @param throwOnError Whether to throw an error (true) or log a warning (false) when validation fails. Defaults to true.
|
|
19
21
|
*/
|
|
20
|
-
constructor(host, getProps, schema) {
|
|
22
|
+
constructor(host, getProps, schema, throwOnError = true) {
|
|
21
23
|
this.host = host;
|
|
22
24
|
this.getProps = getProps;
|
|
23
25
|
this.schema = schema;
|
|
26
|
+
this.throwOnError = throwOnError;
|
|
24
27
|
host.addController(this);
|
|
25
28
|
}
|
|
26
29
|
hostConnected() {
|
|
@@ -29,7 +32,7 @@ export class ValidatePropsController {
|
|
|
29
32
|
// @ts-expect-error: we need to set the error to undefined if it was null.
|
|
30
33
|
this.host.error = undefined;
|
|
31
34
|
}
|
|
32
|
-
this.
|
|
35
|
+
this.validateProps();
|
|
33
36
|
}
|
|
34
37
|
hostUpdate() {
|
|
35
38
|
this.currentProps = this.getProps();
|
|
@@ -38,14 +41,20 @@ export class ValidatePropsController {
|
|
|
38
41
|
}
|
|
39
42
|
// @ts-expect-error: we need to clear the error.
|
|
40
43
|
this.host.error = undefined;
|
|
41
|
-
this.
|
|
44
|
+
this.validateProps();
|
|
42
45
|
}
|
|
43
|
-
|
|
46
|
+
validateProps() {
|
|
44
47
|
try {
|
|
45
48
|
this.schema.validate(this.currentProps);
|
|
46
49
|
}
|
|
47
50
|
catch (error) {
|
|
48
|
-
this.
|
|
51
|
+
if (this.throwOnError) {
|
|
52
|
+
this.host.error = error;
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
const message = `Prop validation failed for component ${this.host.tagName?.toLowerCase()}: ${error.message}`;
|
|
56
|
+
console.warn(message, this.host);
|
|
57
|
+
}
|
|
49
58
|
}
|
|
50
59
|
finally {
|
|
51
60
|
this.previousProps = this.currentProps;
|
|
@@ -4,6 +4,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
+
import { ArrayValue, NumberValue, Schema, StringValue } from '@coveo/bueno';
|
|
7
8
|
import { buildFacet, buildFacetConditionsManager, buildSearchStatus, buildTabManager, } from '@coveo/headless';
|
|
8
9
|
import { html, LitElement, nothing } from 'lit';
|
|
9
10
|
import { customElement, property, state } from 'lit/decorators.js';
|
|
@@ -28,6 +29,7 @@ import { renderFacetValue, } from '../../common/facets/facet-value/facet-value';
|
|
|
28
29
|
import { renderFacetValuesGroup } from '../../common/facets/facet-values-group/facet-values-group';
|
|
29
30
|
import { initializePopover } from '../../common/facets/popover/popover-type';
|
|
30
31
|
import '../../common/atomic-facet-placeholder/atomic-facet-placeholder';
|
|
32
|
+
import { arrayConverter } from "../../../converters/array-converter";
|
|
31
33
|
import { booleanConverter } from "../../../converters/boolean-converter";
|
|
32
34
|
import { bindings } from "../../../decorators/bindings";
|
|
33
35
|
import { InitializeBindingsMixin } from "../../../mixins/bindings-mixin";
|
|
@@ -36,6 +38,7 @@ import facetSearchStyles from '../../common/facets/facet-search/facet-search.tw.
|
|
|
36
38
|
import facetValueBoxStyles from '../../common/facets/facet-value-box/facet-value-box.tw.css';
|
|
37
39
|
import facetValueCheckboxStyles from '../../common/facets/facet-value-checkbox/facet-value-checkbox.tw.css';
|
|
38
40
|
import facetValueExcludeStyles from '../../common/facets/facet-value-exclude/facet-value-exclude.tw.css';
|
|
41
|
+
import { ValidatePropsController } from '../../common/validate-props-controller/validate-props-controller';
|
|
39
42
|
/**
|
|
40
43
|
* A facet is a list of values for a certain field occurring in the results, ordered using a configurable criteria (for example, number of occurrences).
|
|
41
44
|
* An `atomic-facet` displays a facet of the results for the current query.
|
|
@@ -77,7 +80,7 @@ import facetValueExcludeStyles from '../../common/facets/facet-value-exclude/fac
|
|
|
77
80
|
*/
|
|
78
81
|
let AtomicFacet = class AtomicFacet extends InitializeBindingsMixin(LitElement) {
|
|
79
82
|
constructor() {
|
|
80
|
-
super(
|
|
83
|
+
super();
|
|
81
84
|
/**
|
|
82
85
|
* The non-localized label for the facet.
|
|
83
86
|
* Used in the `atomic-breadbox` component through the bindings store.
|
|
@@ -197,6 +200,64 @@ let AtomicFacet = class AtomicFacet extends InitializeBindingsMixin(LitElement)
|
|
|
197
200
|
* The default value is `undefined`, and the facet values will be sorted using only the `sortCriteria`.
|
|
198
201
|
*/
|
|
199
202
|
this.customSort = [];
|
|
203
|
+
new ValidatePropsController(this, () => ({
|
|
204
|
+
field: this.field,
|
|
205
|
+
numberOfValues: this.numberOfValues,
|
|
206
|
+
headingLevel: this.headingLevel,
|
|
207
|
+
injectionDepth: this.injectionDepth,
|
|
208
|
+
sortCriteria: this.sortCriteria,
|
|
209
|
+
resultsMustMatch: this.resultsMustMatch,
|
|
210
|
+
displayValuesAs: this.displayValuesAs,
|
|
211
|
+
allowedValues: Array.isArray(this.allowedValues)
|
|
212
|
+
? this.allowedValues
|
|
213
|
+
: [],
|
|
214
|
+
customSort: Array.isArray(this.customSort) ? this.customSort : [],
|
|
215
|
+
tabsExcluded: this.tabsExcluded,
|
|
216
|
+
tabsIncluded: this.tabsIncluded,
|
|
217
|
+
}), new Schema({
|
|
218
|
+
field: new StringValue({ required: true, emptyAllowed: false }),
|
|
219
|
+
numberOfValues: new NumberValue({ min: 1, required: false }),
|
|
220
|
+
headingLevel: new NumberValue({ min: 0, max: 6, required: false }),
|
|
221
|
+
injectionDepth: new NumberValue({ min: 0, required: false }),
|
|
222
|
+
sortCriteria: new StringValue({
|
|
223
|
+
constrainTo: [
|
|
224
|
+
'score',
|
|
225
|
+
'alphanumeric',
|
|
226
|
+
'alphanumericDescending',
|
|
227
|
+
'occurrences',
|
|
228
|
+
'alphanumericNatural',
|
|
229
|
+
'alphanumericNaturalDescending',
|
|
230
|
+
'automatic',
|
|
231
|
+
],
|
|
232
|
+
required: false,
|
|
233
|
+
}),
|
|
234
|
+
resultsMustMatch: new StringValue({
|
|
235
|
+
constrainTo: ['atLeastOneValue', 'allValues'],
|
|
236
|
+
required: false,
|
|
237
|
+
}),
|
|
238
|
+
displayValuesAs: new StringValue({
|
|
239
|
+
constrainTo: ['checkbox', 'link', 'box'],
|
|
240
|
+
required: false,
|
|
241
|
+
}),
|
|
242
|
+
allowedValues: new ArrayValue({
|
|
243
|
+
each: new StringValue({ emptyAllowed: false }),
|
|
244
|
+
max: 25,
|
|
245
|
+
required: false,
|
|
246
|
+
}),
|
|
247
|
+
customSort: new ArrayValue({
|
|
248
|
+
each: new StringValue({ emptyAllowed: false }),
|
|
249
|
+
max: 25,
|
|
250
|
+
required: false,
|
|
251
|
+
}),
|
|
252
|
+
tabsExcluded: new ArrayValue({
|
|
253
|
+
each: new StringValue({ emptyAllowed: false }),
|
|
254
|
+
required: false,
|
|
255
|
+
}),
|
|
256
|
+
tabsIncluded: new ArrayValue({
|
|
257
|
+
each: new StringValue({ emptyAllowed: false }),
|
|
258
|
+
required: false,
|
|
259
|
+
}),
|
|
260
|
+
}));
|
|
200
261
|
}
|
|
201
262
|
initialize() {
|
|
202
263
|
if ([...this.tabsIncluded].length > 0 &&
|
|
@@ -507,6 +568,7 @@ __decorate([
|
|
|
507
568
|
property({
|
|
508
569
|
type: Array,
|
|
509
570
|
attribute: 'tabs-included',
|
|
571
|
+
converter: arrayConverter,
|
|
510
572
|
reflect: true,
|
|
511
573
|
})
|
|
512
574
|
], AtomicFacet.prototype, "tabsIncluded", void 0);
|
|
@@ -514,6 +576,7 @@ __decorate([
|
|
|
514
576
|
property({
|
|
515
577
|
type: Array,
|
|
516
578
|
attribute: 'tabs-excluded',
|
|
579
|
+
converter: arrayConverter,
|
|
517
580
|
reflect: true,
|
|
518
581
|
})
|
|
519
582
|
], AtomicFacet.prototype, "tabsExcluded", void 0);
|
|
@@ -546,7 +609,7 @@ __decorate([
|
|
|
546
609
|
})
|
|
547
610
|
], AtomicFacet.prototype, "isCollapsed", void 0);
|
|
548
611
|
__decorate([
|
|
549
|
-
property({ type: Number, attribute: 'heading-level'
|
|
612
|
+
property({ type: Number, attribute: 'heading-level' })
|
|
550
613
|
], AtomicFacet.prototype, "headingLevel", void 0);
|
|
551
614
|
__decorate([
|
|
552
615
|
property({
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { BooleanValue, Schema, StringValue } from '@coveo/bueno';
|
|
8
|
+
import { html, LitElement, nothing } from 'lit';
|
|
9
|
+
import { customElement, property, state } from 'lit/decorators.js';
|
|
10
|
+
import { when } from 'lit/directives/when.js';
|
|
11
|
+
import { ValidatePropsController } from "../../common/validate-props-controller/validate-props-controller";
|
|
12
|
+
import { createResultContextController } from "../result-template-component-utils/context/result-context-controller";
|
|
13
|
+
import { booleanConverter } from "../../../converters/boolean-converter";
|
|
14
|
+
import { bindingGuard } from "../../../decorators/binding-guard";
|
|
15
|
+
import { bindings } from "../../../decorators/bindings";
|
|
16
|
+
import { errorGuard } from "../../../decorators/error-guard";
|
|
17
|
+
import { LightDomMixin } from "../../../mixins/light-dom";
|
|
18
|
+
import { getStringValueFromResultOrNull } from "../../../utils/result-utils";
|
|
19
|
+
import '../atomic-html/atomic-html';
|
|
20
|
+
/**
|
|
21
|
+
* The `atomic-result-html` component renders the HTML value of a string result field.
|
|
22
|
+
*
|
|
23
|
+
* There is an inherent XSS security concern associated with the usage of this component.
|
|
24
|
+
*
|
|
25
|
+
* Use only with fields for which you are certain the data is harmless.
|
|
26
|
+
*/
|
|
27
|
+
let AtomicResultHtml = class AtomicResultHtml extends LightDomMixin(LitElement) {
|
|
28
|
+
constructor() {
|
|
29
|
+
super();
|
|
30
|
+
/**
|
|
31
|
+
* Specify if the content should be sanitized, using [`DOMPurify`](https://www.npmjs.com/package/dompurify).
|
|
32
|
+
*/
|
|
33
|
+
this.sanitize = true;
|
|
34
|
+
this.resultController = createResultContextController(this);
|
|
35
|
+
new ValidatePropsController(this, () => ({
|
|
36
|
+
field: this.field,
|
|
37
|
+
sanitize: this.sanitize,
|
|
38
|
+
}), new Schema({
|
|
39
|
+
field: new StringValue({ required: true, emptyAllowed: false }),
|
|
40
|
+
sanitize: new BooleanValue(),
|
|
41
|
+
}));
|
|
42
|
+
}
|
|
43
|
+
initialize() {
|
|
44
|
+
if (!this.result && this.resultController.item) {
|
|
45
|
+
const item = this.resultController.item;
|
|
46
|
+
if ('result' in item) {
|
|
47
|
+
this.result = item.result;
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
this.result = item;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
render() {
|
|
55
|
+
return html `
|
|
56
|
+
${when(this.result && this.field, () => this.renderResultHtml(), () => nothing)}
|
|
57
|
+
`;
|
|
58
|
+
}
|
|
59
|
+
renderResultHtml() {
|
|
60
|
+
const resultValue = getStringValueFromResultOrNull(this.result, this.field);
|
|
61
|
+
if (!resultValue) {
|
|
62
|
+
this.remove();
|
|
63
|
+
return nothing;
|
|
64
|
+
}
|
|
65
|
+
return html `
|
|
66
|
+
<atomic-html value=${resultValue} ?sanitize=${this.sanitize}></atomic-html>
|
|
67
|
+
`;
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
__decorate([
|
|
71
|
+
property({ type: String, reflect: true })
|
|
72
|
+
], AtomicResultHtml.prototype, "field", void 0);
|
|
73
|
+
__decorate([
|
|
74
|
+
property({
|
|
75
|
+
type: Boolean,
|
|
76
|
+
reflect: true,
|
|
77
|
+
converter: booleanConverter,
|
|
78
|
+
})
|
|
79
|
+
], AtomicResultHtml.prototype, "sanitize", void 0);
|
|
80
|
+
__decorate([
|
|
81
|
+
state()
|
|
82
|
+
], AtomicResultHtml.prototype, "result", void 0);
|
|
83
|
+
__decorate([
|
|
84
|
+
state()
|
|
85
|
+
], AtomicResultHtml.prototype, "bindings", void 0);
|
|
86
|
+
__decorate([
|
|
87
|
+
state()
|
|
88
|
+
], AtomicResultHtml.prototype, "error", void 0);
|
|
89
|
+
__decorate([
|
|
90
|
+
bindingGuard(),
|
|
91
|
+
errorGuard()
|
|
92
|
+
], AtomicResultHtml.prototype, "render", null);
|
|
93
|
+
AtomicResultHtml = __decorate([
|
|
94
|
+
customElement('atomic-result-html'),
|
|
95
|
+
bindings()
|
|
96
|
+
], AtomicResultHtml);
|
|
97
|
+
export { AtomicResultHtml };
|
|
@@ -118,7 +118,9 @@ let AtomicResultList = class AtomicResultList extends ChildrenUpdateCompleteMixi
|
|
|
118
118
|
each: new StringValue({}),
|
|
119
119
|
required: false,
|
|
120
120
|
}),
|
|
121
|
-
})
|
|
121
|
+
}),
|
|
122
|
+
// TODO V4: KIT-5197 - Remove false
|
|
123
|
+
false);
|
|
122
124
|
}
|
|
123
125
|
/**
|
|
124
126
|
* Sets a rendering function to bypass the standard HTML template mechanism for rendering results.
|
|
@@ -201,7 +203,7 @@ let AtomicResultList = class AtomicResultList extends ChildrenUpdateCompleteMixi
|
|
|
201
203
|
listClasses: resultClasses,
|
|
202
204
|
display: this.display,
|
|
203
205
|
},
|
|
204
|
-
})(html `${when(this.display === 'grid', () => this.renderGrid(), () => html `${when(this.display === '
|
|
206
|
+
})(html `${when(this.display === 'grid', () => this.renderGrid(), () => html `${when(this.display === 'table', () => this.renderTable(), () => this.renderList())}`)}`))}
|
|
205
207
|
${when(!this.isEveryResultReady, () => renderDisplayWrapper({
|
|
206
208
|
props: { listClasses, display: this.display },
|
|
207
209
|
})(renderItemPlaceholders({
|
|
@@ -9,6 +9,7 @@ export { AtomicQuerySummary } from './atomic-query-summary/atomic-query-summary.
|
|
|
9
9
|
export { AtomicRelevanceInspector } from './atomic-relevance-inspector/atomic-relevance-inspector.js';
|
|
10
10
|
export { AtomicResult } from './atomic-result/atomic-result.js';
|
|
11
11
|
export { AtomicResultChildrenTemplate } from './atomic-result-children-template/atomic-result-children-template.js';
|
|
12
|
+
export { AtomicResultHtml } from './atomic-result-html/atomic-result-html.js';
|
|
12
13
|
export { AtomicResultList } from './atomic-result-list/atomic-result-list.js';
|
|
13
14
|
export { AtomicResultNumber } from './atomic-result-number/atomic-result-number.js';
|
|
14
15
|
export { AtomicResultSectionActions } from './atomic-result-section-actions/atomic-result-section-actions.js';
|
|
@@ -10,6 +10,7 @@ export default {
|
|
|
10
10
|
'atomic-relevance-inspector': async () => await import('./atomic-relevance-inspector/atomic-relevance-inspector.js'),
|
|
11
11
|
'atomic-result': async () => await import('./atomic-result/atomic-result.js'),
|
|
12
12
|
'atomic-result-children-template': async () => await import('./atomic-result-children-template/atomic-result-children-template.js'),
|
|
13
|
+
'atomic-result-html': async () => await import('./atomic-result-html/atomic-result-html.js'),
|
|
13
14
|
'atomic-result-list': async () => await import('./atomic-result-list/atomic-result-list.js'),
|
|
14
15
|
'atomic-result-number': async () => await import('./atomic-result-number/atomic-result-number.js'),
|
|
15
16
|
'atomic-result-section-actions': async () => await import('./atomic-result-section-actions/atomic-result-section-actions.js'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"index.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAca,kBAAmB,SAAQ,KAAK;IAC3C,YAAY,WAAmB,EAAE,UAAkB;QACjD,KAAK,CACH,QAAQ,WAAW,sCAAsC,UAAU,YAAY,CAChF,CAAC;KACH;;;ACfH,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;SAIpC,gBAAgB,CAAI,OAAgB,EAAE,UAAkB;IACtE,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM;QACpC,MAAM,KAAK,GAAG,gBAAgB,CAC5B,oBAAoB,EACpB,CAAC,IAAO;YACN,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;SACtB,CACF,CAAC;QACF,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAE7B,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE;YACjC,MAAM,CACJ,IAAI,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,UAAU,CAAC,CACnE,CAAC;SACH;KACF,CAAC,CAAC;AACL;;ACrBA;;;;;;;;;;SAUgB,mBAAmB,CAAoB,OAAgB;IACrE,OAAO,gBAAgB,CAAI,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACxD;;ACZA;;;;;;;;;;;;SAYgB,cAAc,CAAoB,OAAgB;IAChE,OAAO,WAAW,CAAI,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACnD;;ACVA;;;;;;;;;MASa,iCAAiC,GAAG,CAI/C,KAA+D,EAC/D,OAAoB,EACpB,2BAA0E,iBAAiB;IAE3F,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,EAAE,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACxE,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CACb,QAAQ,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,gFAAgF,wBAAwB,CAAC,IAAI,CACjJ,IAAI,CACL,EAAE,CACJ,CAAC;KACH;IACD,KAAK,2CAA2C,CAC9C,gBAAgB,EAChB,OAAO,EACP,KAAK,CACN,CAAC;AACJ,EAAE;AAEF,MAAM,iBAAiB,GAAG;IACxB,mBAAmB;IACnB,2BAA2B;IAC3B,4BAA4B;CACpB,CAAC;AAEX,MAAM,mBAAmB,GAAG,CAAC,SAAkB,KAC7C,gBAAgB,IAAK,SAAwB;IAC5C,SAAwB,CAAC,cAAc,YAAY,OAAO,CAAC;AAE9D,MAAM,2CAA2C,GAAG,OAIlD,gBAAyB,EACzB,OAAoB,EACpB,KAA+D;IAE/D,MAAM,cAAc,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAC1E,IAAI,mBAAmB,CAAC,gBAAgB,CAAC,EAAE;QACzC,MAAM,gBAAgB,CAAC,cAAc,CAAC;KACvC;SAAM,IAAI,kBAAkB,IAAI,gBAAgB,EAAE;QACjD,MAAO,gBAAuC,CAAC,gBAAgB,EAAE,CAAC;KACnE;IACD,OAAO,CAAC,aAAa,CACnB,gBAAgB,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAC/D,CAAC;AACJ,CAAC;;;;","names":[],"sources":["src/components/common/item-list/context/item-context-controller.ts","src/components/common/item-list/fetch-item-context.ts","src/components/commerce/product-template-component-utils/context/fetch-product-context.ts","src/components/commerce/product-template-component-utils/context/stencil-product-template-decorators.tsx","src/components/common/suggestions/suggestions-events.ts"],"sourcesContent":["import type {LitElement, ReactiveController, ReactiveControllerHost} from 'lit';\nimport type {InitializableComponent} from '@/src/decorators/types.js';\nimport {buildCustomEvent} from '@/src/utils/event-utils';\n\ntype LitElementWithError = Omit<\n Pick<InitializableComponent, 'error'>,\n 'error'\n> &\n LitElement & {\n error: Error | null;\n };\n\nconst itemContextEventName = 'atomic/resolveResult';\n\nexport class MissingParentError extends Error {\n constructor(elementName: string, parentName: string) {\n super(\n `The \"${elementName}\" element must be the child of an \"${parentName}\" element.`\n );\n }\n}\n\nfunction extractFolded<T = Record<string, unknown>>(\n item: Record<string, unknown>,\n returnFolded: boolean\n): T {\n if (returnFolded) {\n if ('children' in item) {\n return item as T;\n } else {\n return {children: [], result: item} as T;\n }\n }\n\n if ('children' in item && 'result' in item) {\n return item.result as T;\n }\n return item as T;\n}\n\n/**\n * A reactive controller that manages item context data from parent components.\n * Handles fetching item data via custom events and manages error states.\n */\nexport class ItemContextController<T = Record<string, unknown>>\n implements ReactiveController\n{\n private host: ReactiveControllerHost & LitElementWithError;\n private parentName: string;\n private folded: boolean;\n private _item: T | null = null;\n private _error: MissingParentError | null = null;\n\n constructor(\n host: ReactiveControllerHost & LitElementWithError,\n options: {parentName?: string; folded?: boolean} = {}\n ) {\n this.host = host;\n this.parentName = options.parentName ?? 'atomic-result';\n this.folded = options.folded ?? false;\n host.addController(this);\n }\n\n get item(): T | null {\n return this._error ? null : this._item;\n }\n\n get error(): MissingParentError | null {\n return this._error;\n }\n\n get hasError(): boolean {\n return this._error !== null;\n }\n\n hostConnected(): void {\n this._resolveItemContext();\n }\n\n private _resolveItemContext(): void {\n const event = buildCustomEvent(\n itemContextEventName,\n (item: Record<string, unknown>) => {\n this._item = extractFolded<T>(item, this.folded);\n this._error = null;\n this.host.error = null;\n this.host.requestUpdate();\n }\n );\n\n const canceled = this.host.dispatchEvent(event);\n if (canceled) {\n const elementName = (this.host as Element).nodeName.toLowerCase();\n this._error = new MissingParentError(elementName, this.parentName);\n this._item = null;\n this.host.error = this._error;\n this.host.requestUpdate();\n }\n }\n}\n\ntype ItemContextEventHandler<T> = (item: T) => void;\nexport type ItemContextEvent<T> = CustomEvent<ItemContextEventHandler<T>>;\n","import {closest} from '../../../utils/dom-utils.js';\nimport {buildCustomEvent} from '../../../utils/event-utils.js';\nimport {MissingParentError} from './context/item-context-controller.js';\n\nconst itemContextEventName = 'atomic/resolveResult';\n\ntype ItemContextEventHandler<T> = (item: T) => void;\n\nexport function fetchItemContext<T>(element: Element, parentName: string) {\n return new Promise<T>((resolve, reject) => {\n const event = buildCustomEvent<ItemContextEventHandler<T>>(\n itemContextEventName,\n (item: T) => {\n return resolve(item);\n }\n );\n element.dispatchEvent(event);\n\n if (!closest(element, parentName)) {\n reject(\n new MissingParentError(element.nodeName.toLowerCase(), parentName)\n );\n }\n });\n}\n","import type {Product} from '@coveo/headless/commerce';\nimport {fetchItemContext} from '@/src/components/common/item-list/fetch-item-context';\n\n/**\n * Retrieves `Product` on a rendered `atomic-product`.\n *\n * This utility function is useful for building custom product template elements, see [Create a Product List](https://docs.coveo.com/en/atomic/latest/cc-search/create-custom-components/native-components/#custom-product-template-component-example) for more information.\n *\n * You should use the utility function in the [`connectedCallback` lifecycle method](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements#using_the_lifecycle_callbacks).\n *\n * @param element - The element that the event is dispatched to, which must be the child of a rendered `atomic-product`.\n * @returns A promise that resolves on initialization of the parent `atomic-product` element, or rejects when there is no parent `atomic-product` element.\n */\nexport function fetchProductContext<T extends Product>(element: Element) {\n return fetchItemContext<T>(element, 'atomic-product');\n}\n","import {Product} from '@coveo/headless/commerce';\nimport {itemContext} from '@/src/components/common/item-list/stencil-item-decorators';\n\n/**\n * Retrieves `Product` on a rendered `atomic-product`.\n *\n * This method is useful for building custom product template elements, see [Create a Product List](https://docs.coveo.com/en/atomic/latest/cc-search/create-custom-components/native-components/#custom-product-template-component-example) for more information.\n *\n * You should use the method in the [connectedCallback lifecycle method](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements#using_the_lifecycle_callbacks).\n *\n * @param element - The element that the event is dispatched to, which must be the child of a rendered \"atomic-product\".\n * @returns A promise that resolves on initialization of the parent \"atomic-product\" element, or rejects when there is no parent \"atomic-product\" element.\n *\n * @deprecated should only be used for Stencil components. For Lit components, use `fetchProductContext` from \\@/src/components/commerce/product-template-component-utils/context/fetch-product-context.ts\n */\nexport function productContext<T extends Product>(element: Element) {\n return itemContext<T>(element, 'atomic-product');\n}\n","import type {HTMLStencilElement} from '@stencil/core/internal';\nimport type {LitElement} from 'lit';\nimport {closest} from '../../../utils/dom-utils';\nimport {buildCustomEvent} from '../../../utils/event-utils';\nimport type {AnyBindings} from '../interface/bindings';\nimport type {SearchBoxSuggestionsEvent} from './suggestions-types';\n\n/**\n * Dispatches an event which retrieves the `SearchBoxSuggestionsBindings` on a configured parent search box.\n *\n * @param event Event sent from the registered query suggestions to the parent search box\n * @param element Element on which to dispatch the event, which must be the child of a configured search box\n * @param allowedSearchBoxElements Optional array of allowed search box element selectors\n *\n * @throws Error if the element is not a child of an allowed search box element\n */\nexport const dispatchSearchBoxSuggestionsEvent = <\n SearchBoxController,\n Bindings = AnyBindings,\n>(\n event: SearchBoxSuggestionsEvent<SearchBoxController, Bindings>,\n element: HTMLElement,\n allowedSearchBoxElements: readonly (typeof searchBoxElements)[number][] = searchBoxElements\n) => {\n const interfaceElement = closest(element, searchBoxElements.join(', '));\n if (!interfaceElement) {\n throw new Error(\n `The \"${element.nodeName.toLowerCase()}\" component was not handled, as it is not a child of the following elements: ${allowedSearchBoxElements.join(\n ', '\n )}`\n );\n }\n void dispatchSearchBoxSuggestionsEventEventually(\n interfaceElement,\n element,\n event\n );\n};\n\nconst searchBoxElements = [\n 'atomic-search-box',\n 'atomic-insight-search-box',\n 'atomic-commerce-search-box',\n] as const;\n\nconst isLitElementLoosely = (candidate: unknown): candidate is LitElement =>\n 'updateComplete' in (candidate as LitElement) &&\n (candidate as LitElement).updateComplete instanceof Promise;\n\nconst dispatchSearchBoxSuggestionsEventEventually = async <\n SearchBoxController,\n Bindings = AnyBindings,\n>(\n interfaceElement: Element,\n element: HTMLElement,\n event: SearchBoxSuggestionsEvent<SearchBoxController, Bindings>\n) => {\n await customElements.whenDefined(interfaceElement.nodeName.toLowerCase());\n if (isLitElementLoosely(interfaceElement)) {\n await interfaceElement.updateComplete;\n } else if ('componentOnReady' in interfaceElement) {\n await (interfaceElement as HTMLStencilElement).componentOnReady();\n }\n element.dispatchEvent(\n buildCustomEvent('atomic/searchBoxSuggestion/register', event)\n );\n};\n"],"version":3}
|
|
1
|
+
{"file":"index.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAca,kBAAmB,SAAQ,KAAK;IAC3C,YAAY,WAAmB,EAAE,UAAkB;QACjD,KAAK,CACH,QAAQ,WAAW,sCAAsC,UAAU,YAAY,CAChF,CAAC;KACH;;;ACfH,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;SAIpC,gBAAgB,CAAI,OAAgB,EAAE,UAAkB;IACtE,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM;QACpC,MAAM,KAAK,GAAG,gBAAgB,CAC5B,oBAAoB,EACpB,CAAC,IAAO;YACN,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;SACtB,CACF,CAAC;QACF,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAE7B,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE;YACjC,MAAM,CACJ,IAAI,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,UAAU,CAAC,CACnE,CAAC;SACH;KACF,CAAC,CAAC;AACL;;ACrBA;;;;;;;;;;SAUgB,mBAAmB,CAAoB,OAAgB;IACrE,OAAO,gBAAgB,CAAI,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACxD;;ACZA;;;;;;;;;;;;SAYgB,cAAc,CAAoB,OAAgB;IAChE,OAAO,WAAW,CAAI,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACnD;;ACVA;;;;;;;;;MASa,iCAAiC,GAAG,CAI/C,KAA+D,EAC/D,OAAoB,EACpB,2BAA0E,iBAAiB;IAE3F,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,EAAE,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACxE,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CACb,QAAQ,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,gFAAgF,wBAAwB,CAAC,IAAI,CACjJ,IAAI,CACL,EAAE,CACJ,CAAC;KACH;IACD,KAAK,2CAA2C,CAC9C,gBAAgB,EAChB,OAAO,EACP,KAAK,CACN,CAAC;AACJ,EAAE;AAEF,MAAM,iBAAiB,GAAG;IACxB,mBAAmB;IACnB,2BAA2B;IAC3B,4BAA4B;CACpB,CAAC;AAEX,MAAM,mBAAmB,GAAG,CAAC,SAAkB,KAC7C,gBAAgB,IAAK,SAAwB;IAC5C,SAAwB,CAAC,cAAc,YAAY,OAAO,CAAC;AAE9D,MAAM,2CAA2C,GAAG,OAIlD,gBAAyB,EACzB,OAAoB,EACpB,KAA+D;IAE/D,MAAM,cAAc,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAC1E,IAAI,mBAAmB,CAAC,gBAAgB,CAAC,EAAE;QACzC,MAAM,gBAAgB,CAAC,cAAc,CAAC;KACvC;SAAM,IAAI,kBAAkB,IAAI,gBAAgB,EAAE;QACjD,MAAO,gBAAuC,CAAC,gBAAgB,EAAE,CAAC;KACnE;IACD,OAAO,CAAC,aAAa,CACnB,gBAAgB,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAC/D,CAAC;AACJ,CAAC;;;;","names":[],"sources":["src/components/common/item-list/context/item-context-controller.ts","src/components/common/item-list/fetch-item-context.ts","src/components/commerce/product-template-component-utils/context/fetch-product-context.ts","src/components/commerce/product-template-component-utils/context/stencil-product-template-decorators.tsx","src/components/common/suggestions/suggestions-events.ts"],"sourcesContent":["import type {LitElement, ReactiveController, ReactiveControllerHost} from 'lit';\nimport type {InitializableComponent} from '@/src/decorators/types.js';\nimport {buildCustomEvent} from '@/src/utils/event-utils';\n\ntype LitElementWithError = Omit<\n Pick<InitializableComponent, 'error'>,\n 'error'\n> &\n LitElement & {\n error: Error | null;\n };\n\nconst itemContextEventName = 'atomic/resolveResult';\n\nexport class MissingParentError extends Error {\n constructor(elementName: string, parentName: string) {\n super(\n `The \"${elementName}\" element must be the child of an \"${parentName}\" element.`\n );\n }\n}\n\nfunction extractFolded<T = Record<string, unknown>>(\n item: Record<string, unknown>,\n returnFolded: boolean\n): T {\n if (returnFolded) {\n if ('children' in item) {\n return item as T;\n } else {\n return {children: [], result: item} as T;\n }\n }\n\n if ('children' in item && 'result' in item) {\n return item.result as T;\n }\n return item as T;\n}\n\n/**\n * A reactive controller that manages item context data from parent components.\n * Handles fetching item data via custom events and manages error states.\n */\nexport class ItemContextController<T = Record<string, unknown>>\n implements ReactiveController\n{\n private host: ReactiveControllerHost & LitElementWithError;\n private parentName: string;\n private folded: boolean;\n private _item: T | null = null;\n private _error: MissingParentError | null = null;\n\n constructor(\n host: ReactiveControllerHost & LitElementWithError,\n options: {parentName?: string; folded?: boolean} = {}\n ) {\n this.host = host;\n this.parentName = options.parentName ?? 'atomic-result';\n this.folded = options.folded ?? false;\n host.addController(this);\n }\n\n get item(): T | null {\n return this._error ? null : this._item;\n }\n\n get error(): MissingParentError | null {\n return this._error;\n }\n\n get hasError(): boolean {\n return this._error !== null;\n }\n\n hostConnected(): void {\n this._resolveItemContext();\n }\n\n private _resolveItemContext(): void {\n const event = buildCustomEvent(\n itemContextEventName,\n (item: Record<string, unknown>) => {\n this._item = extractFolded<T>(item, this.folded);\n this._error = null;\n this.host.error = null;\n this.host.requestUpdate();\n }\n );\n\n const canceled = this.host.dispatchEvent(event);\n if (canceled) {\n const elementName = (this.host as Element).nodeName.toLowerCase();\n this._error = new MissingParentError(elementName, this.parentName);\n this._item = null;\n this.host.error = this._error;\n this.host.requestUpdate();\n }\n }\n}\n\ntype ItemContextEventHandler<T> = (item: T) => void;\nexport type ItemContextEvent<T> = CustomEvent<ItemContextEventHandler<T>>;\n","import {closest} from '../../../utils/dom-utils.js';\nimport {buildCustomEvent} from '../../../utils/event-utils.js';\nimport {MissingParentError} from './context/item-context-controller.js';\n\nconst itemContextEventName = 'atomic/resolveResult';\n\ntype ItemContextEventHandler<T> = (item: T) => void;\n\nexport function fetchItemContext<T>(element: Element, parentName: string) {\n return new Promise<T>((resolve, reject) => {\n const event = buildCustomEvent<ItemContextEventHandler<T>>(\n itemContextEventName,\n (item: T) => {\n return resolve(item);\n }\n );\n element.dispatchEvent(event);\n\n if (!closest(element, parentName)) {\n reject(\n new MissingParentError(element.nodeName.toLowerCase(), parentName)\n );\n }\n });\n}\n","import type {Product} from '@coveo/headless/commerce';\nimport {fetchItemContext} from '@/src/components/common/item-list/fetch-item-context';\n\n/**\n * Retrieves `Product` on a rendered `atomic-product`.\n *\n * This utility function is useful for building custom product template elements, see [Create a Product List](https://docs.coveo.com/en/atomic/latest/cc-search/create-custom-components/native-components/#custom-product-template-component-example) for more information.\n *\n * You should use the utility function in the [`connectedCallback` lifecycle method](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements#using_the_lifecycle_callbacks).\n *\n * @param element - The element that the event is dispatched to, which must be the child of a rendered `atomic-product`.\n * @returns A promise that resolves on initialization of the parent `atomic-product` element, or rejects when there is no parent `atomic-product` element.\n */\nexport function fetchProductContext<T extends Product>(element: Element) {\n return fetchItemContext<T>(element, 'atomic-product');\n}\n","import {Product} from '@coveo/headless/commerce';\nimport {itemContext} from '@/src/components/common/item-list/stencil-item-decorators';\n\n/**\n * Retrieves `Product` on a rendered `atomic-product`.\n *\n * This method is useful for building custom product template elements, see [Create a Product List](https://docs.coveo.com/en/atomic/latest/cc-search/create-custom-components/native-components/#custom-product-template-component-example) for more information.\n *\n * You should use the method in the [connectedCallback lifecycle method](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements#using_the_lifecycle_callbacks).\n *\n * @param element - The element that the event is dispatched to, which must be the child of a rendered \"atomic-product\".\n * @returns A promise that resolves on initialization of the parent \"atomic-product\" element, or rejects when there is no parent \"atomic-product\" element.\n *\n * @deprecated should only be used for Stencil components. For Lit components, use `fetchProductContext` from \\@/src/components/commerce/product-template-component-utils/context/fetch-product-context.ts\n */\nexport function productContext<T extends Product>(element: Element) {\n return itemContext<T>(element, 'atomic-product');\n}\n","import type {HTMLStencilElement} from '@stencil/core/internal';\nimport type {LitElement} from 'lit';\nimport {closest} from '../../../utils/dom-utils';\nimport {buildCustomEvent} from '../../../utils/event-utils';\nimport type {AnyBindings} from '../interface/bindings';\nimport type {SearchBoxSuggestionsEvent} from './suggestions-types';\n\n/**\n * Dispatches an event which retrieves the `SearchBoxSuggestionsBindings` on a configured parent search box.\n *\n * @param event Event sent from the registered query suggestions to the parent search box\n * @param element Element on which to dispatch the event, which must be the child of a configured search box\n * @param allowedSearchBoxElements Optional array of allowed search box element selectors\n *\n * @throws Error if the element is not a child of an allowed search box element\n */\nexport const dispatchSearchBoxSuggestionsEvent = <\n SearchBoxController,\n Bindings = AnyBindings,\n>(\n event: SearchBoxSuggestionsEvent<SearchBoxController, Bindings>,\n element: HTMLElement,\n allowedSearchBoxElements: readonly (typeof searchBoxElements)[number][] = searchBoxElements\n) => {\n const interfaceElement = closest(element, searchBoxElements.join(', '));\n if (!interfaceElement) {\n throw new Error(\n `The \"${element.nodeName.toLowerCase()}\" component was not handled, as it is not a child of the following elements: ${allowedSearchBoxElements.join(\n ', '\n )}`\n );\n }\n void dispatchSearchBoxSuggestionsEventEventually(\n interfaceElement,\n element,\n event\n );\n};\n\nconst searchBoxElements = [\n 'atomic-search-box',\n 'atomic-insight-search-box',\n 'atomic-commerce-search-box',\n] as const;\n\nconst isLitElementLoosely = (candidate: unknown): candidate is LitElement =>\n 'updateComplete' in (candidate as LitElement) &&\n (candidate as LitElement).updateComplete instanceof Promise;\n\nconst dispatchSearchBoxSuggestionsEventEventually = async <\n SearchBoxController,\n Bindings = AnyBindings,\n>(\n interfaceElement: Element,\n element: HTMLElement,\n event: SearchBoxSuggestionsEvent<SearchBoxController, Bindings>\n) => {\n await customElements.whenDefined(interfaceElement.nodeName.toLowerCase());\n if (isLitElementLoosely(interfaceElement)) {\n await interfaceElement.updateComplete;\n } else if ('componentOnReady' in interfaceElement) {\n await (interfaceElement as HTMLStencilElement).componentOnReady();\n }\n element.dispatchEvent(\n buildCustomEvent('atomic/searchBoxSuggestion/register', event)\n );\n};\n"],"version":3}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { isArray } from '@coveo/bueno';
|
|
2
2
|
import { getElement } from '@stencil/core/internal/client';
|
|
3
|
-
import {
|
|
3
|
+
import { g as camelToKebab, k as kebabToCamel } from './utils.js';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* @deprecated Use the `mapProperty` decorator instead.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { buildInteractiveResult
|
|
1
|
+
import { buildInteractiveResult } from '@coveo/headless';
|
|
2
2
|
|
|
3
3
|
function readFromObject(object, key) {
|
|
4
4
|
const keys = key.split('.');
|
|
@@ -58,14 +58,7 @@ function buildStringTemplateFromResult(template, result, bindings) {
|
|
|
58
58
|
return newValue;
|
|
59
59
|
});
|
|
60
60
|
}
|
|
61
|
-
function getStringValueFromResultOrNull(result, field) {
|
|
62
|
-
const value = ResultTemplatesHelpers.getResultProperty(result, field);
|
|
63
|
-
if (typeof value !== 'string' || value.trim() === '') {
|
|
64
|
-
return null;
|
|
65
|
-
}
|
|
66
|
-
return value;
|
|
67
|
-
}
|
|
68
61
|
|
|
69
|
-
export { buildStringTemplateFromResult as a, bindLogDocumentOpenOnResult as b
|
|
62
|
+
export { buildStringTemplateFromResult as a, bindLogDocumentOpenOnResult as b };
|
|
70
63
|
|
|
71
64
|
//# sourceMappingURL=result-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"result-utils.js","mappings":";;SAAgB,cAAc,CAC5B,MAAS,EACT,GAAW;IAEX,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,OAAO,GAAY,MAAM,CAAC;IAE9B,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE;QACpB,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,IAAI,OAAO,EAAE;YAC1D,OAAO,GAAI,OAAmC,CAAC,CAAC,CAAC,CAAC;SACnD;aAAM;YACL,OAAO,SAAS,CAAC;SAClB;KACF;IAED,OAAO,OAAO,OAAO,KAAK,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;AAC3D;;ACNA;;;;;;;;SAQgB,2BAA2B,CACzC,MAAoB,EACpB,MAAc,EACd,aAAmC,EACnC,QAAiB;IAEjB,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,MAAM,EAAE;QACvD,OAAO,EAAE,EAAC,MAAM,EAAC;KAClB,CAAC,CAAC;IAEH,MAAM,SAAS,GAAuD;QACpE,WAAW,EAAE,MAAM,iBAAiB,CAAC,MAAM,EAAE;QAC7C,KAAK,EAAE,MAAM,iBAAiB,CAAC,MAAM,EAAE;QACvC,OAAO,EAAE,MAAM,iBAAiB,CAAC,MAAM,EAAE;QACzC,SAAS,EAAE,MAAM,iBAAiB,CAAC,MAAM,EAAE;QAC3C,UAAU,EAAE,MAAM,iBAAiB,CAAC,kBAAkB,EAAE;QACxD,QAAQ,EAAE,MAAM,iBAAiB,CAAC,mBAAmB,EAAE;KACxD,CAAC;IACF,MAAM,QAAQ,GAAG,aAAa,CAAC,gBAAgB,CAAC,QAAQ,IAAI,GAAG,CAAC,CAAC;IAEjE,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO;QACvB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KACjC,OAAO,CAAC,gBAAgB,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAC9C,CAAC;KACH,CAAC,CAAC;IAEH,OAAO;QACL,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO;YACvB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KACjC,OAAO,CAAC,mBAAmB,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CACjD,CAAC;SACH,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;SAEe,6BAA6B,CAC3C,QAAgB,EAChB,MAAc,EACd,QAAiC;IAEjC,OAAO,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,KAAa;QAClD,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjD,IAAI,QAAQ,GAAG,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;YAC9C,QAAQ,GAAG,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;SACxC;QAED,IAAI,CAAC,QAAQ,EAAE;YACb,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACzB,GAAG,GAAG,4DAA4D,MAAM,CAAC,QAAQ,+CAA+C,CACjI,CAAC;YACF,OAAO,EAAE,CAAC;SACX;QAED,OAAO,QAAQ,CAAC;KACjB,CAAC,CAAC;AACL
|
|
1
|
+
{"file":"result-utils.js","mappings":";;SAAgB,cAAc,CAC5B,MAAS,EACT,GAAW;IAEX,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,OAAO,GAAY,MAAM,CAAC;IAE9B,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE;QACpB,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,IAAI,OAAO,EAAE;YAC1D,OAAO,GAAI,OAAmC,CAAC,CAAC,CAAC,CAAC;SACnD;aAAM;YACL,OAAO,SAAS,CAAC;SAClB;KACF;IAED,OAAO,OAAO,OAAO,KAAK,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;AAC3D;;ACNA;;;;;;;;SAQgB,2BAA2B,CACzC,MAAoB,EACpB,MAAc,EACd,aAAmC,EACnC,QAAiB;IAEjB,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,MAAM,EAAE;QACvD,OAAO,EAAE,EAAC,MAAM,EAAC;KAClB,CAAC,CAAC;IAEH,MAAM,SAAS,GAAuD;QACpE,WAAW,EAAE,MAAM,iBAAiB,CAAC,MAAM,EAAE;QAC7C,KAAK,EAAE,MAAM,iBAAiB,CAAC,MAAM,EAAE;QACvC,OAAO,EAAE,MAAM,iBAAiB,CAAC,MAAM,EAAE;QACzC,SAAS,EAAE,MAAM,iBAAiB,CAAC,MAAM,EAAE;QAC3C,UAAU,EAAE,MAAM,iBAAiB,CAAC,kBAAkB,EAAE;QACxD,QAAQ,EAAE,MAAM,iBAAiB,CAAC,mBAAmB,EAAE;KACxD,CAAC;IACF,MAAM,QAAQ,GAAG,aAAa,CAAC,gBAAgB,CAAC,QAAQ,IAAI,GAAG,CAAC,CAAC;IAEjE,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO;QACvB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KACjC,OAAO,CAAC,gBAAgB,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAC9C,CAAC;KACH,CAAC,CAAC;IAEH,OAAO;QACL,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO;YACvB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KACjC,OAAO,CAAC,mBAAmB,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CACjD,CAAC;SACH,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;SAEe,6BAA6B,CAC3C,QAAgB,EAChB,MAAc,EACd,QAAiC;IAEjC,OAAO,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,KAAa;QAClD,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjD,IAAI,QAAQ,GAAG,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;YAC9C,QAAQ,GAAG,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;SACxC;QAED,IAAI,CAAC,QAAQ,EAAE;YACb,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACzB,GAAG,GAAG,4DAA4D,MAAM,CAAC,QAAQ,+CAA+C,CACjI,CAAC;YACF,OAAO,EAAE,CAAC;SACX;QAED,OAAO,QAAQ,CAAC;KACjB,CAAC,CAAC;AACL;;;;","names":[],"sources":["src/utils/object-utils.ts","src/utils/result-utils.ts"],"sourcesContent":["export function readFromObject<T extends object>(\n object: T,\n key: string\n): string | undefined {\n const keys = key.split('.');\n let current: unknown = object;\n\n for (const k of keys) {\n if (current && typeof current === 'object' && k in current) {\n current = (current as Record<string, unknown>)[k];\n } else {\n return undefined;\n }\n }\n\n return typeof current === 'string' ? current : undefined;\n}\n","import {\n buildInteractiveResult,\n type Result,\n ResultTemplatesHelpers,\n type SearchEngine,\n} from '@coveo/headless';\nimport type {RecsBindings} from '../components/recommendations/atomic-recs-interface/interfaces';\nimport type {Bindings} from '../components/search/atomic-search-interface/atomic-search-interface';\nimport {readFromObject} from './object-utils';\n\n/**\n * Binds the logging of document\n * @returns An unbind function for the events\n * @param engine A headless search engine instance.\n * @param result The result object\n * @param resultElement Parent result element\n * @param selector Optional. Css selector that selects all links to the document. Default: \"a\" tags with the clickUri as \"href\" parameter.\n */\nexport function bindLogDocumentOpenOnResult(\n engine: SearchEngine,\n result: Result,\n resultElement: Element | ShadowRoot,\n selector?: string\n) {\n const interactiveResult = buildInteractiveResult(engine, {\n options: {result},\n });\n\n const eventsMap: Record<string, EventListenerOrEventListenerObject> = {\n contextmenu: () => interactiveResult.select(),\n click: () => interactiveResult.select(),\n mouseup: () => interactiveResult.select(),\n mousedown: () => interactiveResult.select(),\n touchstart: () => interactiveResult.beginDelayedSelect(),\n touchend: () => interactiveResult.cancelPendingSelect(),\n };\n const elements = resultElement.querySelectorAll(selector || 'a');\n\n elements.forEach((element) => {\n Object.keys(eventsMap).forEach((key) =>\n element.addEventListener(key, eventsMap[key])\n );\n });\n\n return () => {\n elements.forEach((element) => {\n Object.keys(eventsMap).forEach((key) =>\n element.removeEventListener(key, eventsMap[key])\n );\n });\n };\n}\n\nexport function buildStringTemplateFromResult(\n template: string,\n result: Result,\n bindings: Bindings | RecsBindings\n) {\n return template.replace(/\\${(.*?)}/g, (value: string) => {\n const key = value.substring(2, value.length - 1);\n let newValue = readFromObject(result, key);\n if (!newValue && typeof window !== 'undefined') {\n newValue = readFromObject(window, key);\n }\n\n if (!newValue) {\n bindings.engine.logger.warn(\n `${key} used in the href template is undefined for this result: ${result.uniqueId} and could not be found in the window object.`\n );\n return '';\n }\n\n return newValue;\n });\n}\n\nexport function getStringValueFromResultOrNull(result: Result, field: string) {\n const value = ResultTemplatesHelpers.getResultProperty(result, field);\n\n if (typeof value !== 'string' || value.trim() === '') {\n return null;\n }\n\n return value;\n}\n"],"version":3}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"show-hide-button.js","mappings":"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","names":[],"sources":["src/components/common/item-list/item-list-decorators.tsx","src/components/common/result-children/stencil-children-wrapper.tsx","src/components/common/result-children/collection-guard.tsx","src/components/common/result-children/stencil-guard.tsx","src/components/common/result-children/show-hide-button.tsx"],"sourcesContent":["import {ComponentInterface, getElement} from '@stencil/core';\nimport {buildCustomEvent} from '../../../utils/event-utils';\n\ntype FoldedItemListContextEventHandler = (foldedItemList: unknown) => void;\nexport type FoldedItemListContextEvent =\n CustomEvent<FoldedItemListContextEventHandler>;\nconst foldedItemListContextEventName = 'atomic/resolveFoldedResultList';\n\n/**\n * A [StencilJS property decorator](https://stenciljs.com/) to be used for elements nested within a folded item list.\n * This allows the Stencil component to modify the folded item list rendered levels.\n */\nexport function FoldedItemListContext() {\n return (component: ComponentInterface, foldedList: string) => {\n const {componentWillRender} = component;\n component.componentWillRender = function () {\n const element = getElement(this);\n const event = buildCustomEvent(\n foldedItemListContextEventName,\n (foldedItemList: unknown) => {\n this[foldedList] = foldedItemList;\n }\n );\n\n const canceled = element.dispatchEvent(event);\n if (canceled) {\n return;\n }\n return componentWillRender && componentWillRender.call(this);\n };\n };\n}\n\ntype FoldedItemListStateContextEventHandler = (foldedItemList: unknown) => void;\nexport type FoldedItemListStateContextEvent =\n CustomEvent<FoldedItemListStateContextEventHandler>;\nconst foldedItemListStateContextEventName = 'atomic/resolveFoldedResultList';\n\n/**\n * A [StencilJS property decorator](https://stenciljs.com/) to be used for elements nested within a folded item list.\n * This allows the Stencil component to modify the folded item list rendered levels.\n */\nexport function FoldedItemListStateContext() {\n return (component: ComponentInterface, foldedListState: string) => {\n const {componentWillRender} = component;\n component.componentWillRender = function () {\n const element = getElement(this);\n const event = buildCustomEvent(\n foldedItemListStateContextEventName,\n (foldedItemList: {\n subscribe: (callback: () => void) => unknown;\n state: unknown;\n }) => {\n foldedItemList?.subscribe(() => {\n this[foldedListState] = foldedItemList.state;\n });\n }\n );\n\n const canceled = element.dispatchEvent(event);\n if (canceled) {\n return;\n }\n return componentWillRender && componentWillRender.call(this);\n };\n };\n}\n","import {FunctionalComponent, h} from '@stencil/core';\n\ninterface ChildrenWrapperProps {\n hasChildren: boolean;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const ChildrenWrapper: FunctionalComponent<ChildrenWrapperProps> = (\n {hasChildren},\n children\n) => {\n return (\n <div part=\"children-root\">\n {hasChildren && <slot name=\"before-children\"></slot>}\n {children}\n {hasChildren && <slot name=\"after-children\"></slot>}\n </div>\n );\n};\n","import {Fragment, FunctionalComponent, h} from '@stencil/core';\nimport {ResultsPlaceholder} from '../atomic-result-placeholder/stencil-placeholders';\nimport {\n ItemDisplayDensity,\n ItemDisplayImageSize,\n} from '../layout/display-options';\nimport {ChildrenWrapper} from './stencil-children-wrapper';\n\ninterface CollectionGuardProps {\n isLoadingMoreResults: boolean;\n moreResultsAvailable: boolean;\n hasChildren: boolean;\n numberOfChildren: number;\n density: ItemDisplayDensity;\n imageSize: ItemDisplayImageSize;\n noResultText: string;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const CollectionGuard: FunctionalComponent<CollectionGuardProps> = (\n {\n isLoadingMoreResults,\n moreResultsAvailable,\n hasChildren,\n numberOfChildren,\n density,\n imageSize,\n noResultText,\n },\n children\n) => {\n if (isLoadingMoreResults) {\n return (\n <ChildrenWrapper hasChildren={hasChildren}>\n <ResultsPlaceholder\n numberOfPlaceholders={numberOfChildren}\n density={density}\n display={'list'}\n imageSize={imageSize}\n />\n </ChildrenWrapper>\n );\n }\n\n if (!moreResultsAvailable && !hasChildren) {\n return noResultText.trim().length ? (\n <p part=\"no-result-root\" class=\"no-result-root my-3\">\n {noResultText}\n </p>\n ) : null;\n }\n\n if (!hasChildren) {\n return;\n }\n\n return <Fragment>{children}</Fragment>;\n};\n","import {Fragment, FunctionalComponent, h} from '@stencil/core';\n\ninterface ResultChildrenGuardProps {\n inheritTemplates: boolean;\n resultTemplateRegistered: boolean;\n templateHasError: boolean;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const ResultChildrenGuard: FunctionalComponent<\n ResultChildrenGuardProps\n> = (\n {inheritTemplates, resultTemplateRegistered, templateHasError},\n children\n) => {\n if (!inheritTemplates && !resultTemplateRegistered) {\n return;\n }\n\n if (!inheritTemplates && templateHasError) {\n return <slot></slot>;\n }\n\n return <Fragment>{children}</Fragment>;\n};\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {Button} from '../stencil-button';\n\ninterface ShowHideButtonProps {\n moreResultsAvailable: boolean;\n loadFullCollection: () => void;\n showInitialChildren: boolean;\n toggleShowInitialChildren: () => void;\n loadAllResults: string;\n collapseResults: string;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const ShowHideButton: FunctionalComponent<ShowHideButtonProps> = ({\n moreResultsAvailable,\n loadFullCollection,\n showInitialChildren,\n toggleShowInitialChildren,\n loadAllResults,\n collapseResults,\n}) => {\n return (\n <Button\n part=\"show-hide-button\"\n class=\"show-hide-button\"\n style=\"text-primary\"\n onClick={() => {\n if (moreResultsAvailable) {\n loadFullCollection();\n toggleShowInitialChildren();\n }\n\n toggleShowInitialChildren();\n }}\n >\n {showInitialChildren || moreResultsAvailable\n ? loadAllResults\n : collapseResults}\n </Button>\n );\n};\n"],"version":3}
|
|
1
|
+
{"file":"show-hide-button.js","mappings":"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","names":[],"sources":["src/components/common/item-list/item-list-decorators.tsx","src/components/common/result-children/stencil-children-wrapper.tsx","src/components/common/result-children/stencil-collection-guard.tsx","src/components/common/result-children/stencil-guard.tsx","src/components/common/result-children/show-hide-button.tsx"],"sourcesContent":["import {ComponentInterface, getElement} from '@stencil/core';\nimport {buildCustomEvent} from '../../../utils/event-utils';\n\ntype FoldedItemListContextEventHandler = (foldedItemList: unknown) => void;\nexport type FoldedItemListContextEvent =\n CustomEvent<FoldedItemListContextEventHandler>;\nconst foldedItemListContextEventName = 'atomic/resolveFoldedResultList';\n\n/**\n * A [StencilJS property decorator](https://stenciljs.com/) to be used for elements nested within a folded item list.\n * This allows the Stencil component to modify the folded item list rendered levels.\n */\nexport function FoldedItemListContext() {\n return (component: ComponentInterface, foldedList: string) => {\n const {componentWillRender} = component;\n component.componentWillRender = function () {\n const element = getElement(this);\n const event = buildCustomEvent(\n foldedItemListContextEventName,\n (foldedItemList: unknown) => {\n this[foldedList] = foldedItemList;\n }\n );\n\n const canceled = element.dispatchEvent(event);\n if (canceled) {\n return;\n }\n return componentWillRender && componentWillRender.call(this);\n };\n };\n}\n\ntype FoldedItemListStateContextEventHandler = (foldedItemList: unknown) => void;\nexport type FoldedItemListStateContextEvent =\n CustomEvent<FoldedItemListStateContextEventHandler>;\nconst foldedItemListStateContextEventName = 'atomic/resolveFoldedResultList';\n\n/**\n * A [StencilJS property decorator](https://stenciljs.com/) to be used for elements nested within a folded item list.\n * This allows the Stencil component to modify the folded item list rendered levels.\n */\nexport function FoldedItemListStateContext() {\n return (component: ComponentInterface, foldedListState: string) => {\n const {componentWillRender} = component;\n component.componentWillRender = function () {\n const element = getElement(this);\n const event = buildCustomEvent(\n foldedItemListStateContextEventName,\n (foldedItemList: {\n subscribe: (callback: () => void) => unknown;\n state: unknown;\n }) => {\n foldedItemList?.subscribe(() => {\n this[foldedListState] = foldedItemList.state;\n });\n }\n );\n\n const canceled = element.dispatchEvent(event);\n if (canceled) {\n return;\n }\n return componentWillRender && componentWillRender.call(this);\n };\n };\n}\n","import {FunctionalComponent, h} from '@stencil/core';\n\ninterface ChildrenWrapperProps {\n hasChildren: boolean;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const ChildrenWrapper: FunctionalComponent<ChildrenWrapperProps> = (\n {hasChildren},\n children\n) => {\n return (\n <div part=\"children-root\">\n {hasChildren && <slot name=\"before-children\"></slot>}\n {children}\n {hasChildren && <slot name=\"after-children\"></slot>}\n </div>\n );\n};\n","import {Fragment, FunctionalComponent, h} from '@stencil/core';\nimport {ResultsPlaceholder} from '../atomic-result-placeholder/stencil-placeholders';\nimport {\n ItemDisplayDensity,\n ItemDisplayImageSize,\n} from '../layout/display-options';\nimport {ChildrenWrapper} from './stencil-children-wrapper';\n\ninterface CollectionGuardProps {\n isLoadingMoreResults: boolean;\n moreResultsAvailable: boolean;\n hasChildren: boolean;\n numberOfChildren: number;\n density: ItemDisplayDensity;\n imageSize: ItemDisplayImageSize;\n noResultText: string;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const CollectionGuard: FunctionalComponent<CollectionGuardProps> = (\n {\n isLoadingMoreResults,\n moreResultsAvailable,\n hasChildren,\n numberOfChildren,\n density,\n imageSize,\n noResultText,\n },\n children\n) => {\n if (isLoadingMoreResults) {\n return (\n <ChildrenWrapper hasChildren={hasChildren}>\n <ResultsPlaceholder\n numberOfPlaceholders={numberOfChildren}\n density={density}\n display={'list'}\n imageSize={imageSize}\n />\n </ChildrenWrapper>\n );\n }\n\n if (!moreResultsAvailable && !hasChildren) {\n return noResultText.trim().length ? (\n <p part=\"no-result-root\" class=\"no-result-root my-3\">\n {noResultText}\n </p>\n ) : null;\n }\n\n if (!hasChildren) {\n return;\n }\n\n return <Fragment>{children}</Fragment>;\n};\n","import {Fragment, FunctionalComponent, h} from '@stencil/core';\n\ninterface ResultChildrenGuardProps {\n inheritTemplates: boolean;\n resultTemplateRegistered: boolean;\n templateHasError: boolean;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const ResultChildrenGuard: FunctionalComponent<\n ResultChildrenGuardProps\n> = (\n {inheritTemplates, resultTemplateRegistered, templateHasError},\n children\n) => {\n if (!inheritTemplates && !resultTemplateRegistered) {\n return;\n }\n\n if (!inheritTemplates && templateHasError) {\n return <slot></slot>;\n }\n\n return <Fragment>{children}</Fragment>;\n};\n","import {FunctionalComponent, h} from '@stencil/core';\nimport {Button} from '../stencil-button';\n\ninterface ShowHideButtonProps {\n moreResultsAvailable: boolean;\n loadFullCollection: () => void;\n showInitialChildren: boolean;\n toggleShowInitialChildren: () => void;\n loadAllResults: string;\n collapseResults: string;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const ShowHideButton: FunctionalComponent<ShowHideButtonProps> = ({\n moreResultsAvailable,\n loadFullCollection,\n showInitialChildren,\n toggleShowInitialChildren,\n loadAllResults,\n collapseResults,\n}) => {\n return (\n <Button\n part=\"show-hide-button\"\n class=\"show-hide-button\"\n style=\"text-primary\"\n onClick={() => {\n if (moreResultsAvailable) {\n loadFullCollection();\n toggleShowInitialChildren();\n }\n\n toggleShowInitialChildren();\n }}\n >\n {showInitialChildren || moreResultsAvailable\n ? loadAllResults\n : collapseResults}\n </Button>\n );\n};\n"],"version":3}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { u as updateBreakpoints } from './replace-breakpoint-utils.js';
|
|
2
2
|
import { g as getFirstFocusableDescendant } from './stencil-accessibility-utils.js';
|
|
3
|
-
import { o as once,
|
|
3
|
+
import { o as once, f as defer } from './utils.js';
|
|
4
4
|
|
|
5
5
|
const resultComponentClass = 'result-component';
|
|
6
6
|
class ItemListCommon {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ResultTemplatesHelpers } from '@coveo/headless';
|
|
2
2
|
import { h } from '@stencil/core/internal/client';
|
|
3
|
-
import {
|
|
3
|
+
import { h as aggregate, j as isVisualNode, l as isElementNode } from './utils.js';
|
|
4
4
|
import { i as isResultSectionNode } from './item-layout-sections.js';
|
|
5
5
|
|
|
6
6
|
const tableElementTagName = 'atomic-table-element';
|
|
@@ -84,40 +84,12 @@ function sanitizeStyle(style) {
|
|
|
84
84
|
wrapperEl.innerHTML = purifiedOuterHTML;
|
|
85
85
|
return wrapperEl.querySelector('style')?.innerHTML;
|
|
86
86
|
}
|
|
87
|
-
function getFocusedElement(rootElement = document) {
|
|
88
|
-
const activeElement = rootElement.activeElement;
|
|
89
|
-
if (activeElement?.shadowRoot) {
|
|
90
|
-
return getFocusedElement(activeElement.shadowRoot) ?? activeElement;
|
|
91
|
-
}
|
|
92
|
-
return activeElement;
|
|
93
|
-
}
|
|
94
87
|
function isFocusingOut(event) {
|
|
95
88
|
return (document.hasFocus() &&
|
|
96
89
|
(!(event.relatedTarget instanceof Node) ||
|
|
97
90
|
(event.currentTarget instanceof Node &&
|
|
98
91
|
!event.currentTarget.contains(event.relatedTarget))));
|
|
99
92
|
}
|
|
100
|
-
function getParent(element) {
|
|
101
|
-
if (element.parentNode) {
|
|
102
|
-
return element.parentNode;
|
|
103
|
-
}
|
|
104
|
-
if (element instanceof ShadowRoot) {
|
|
105
|
-
return element.host;
|
|
106
|
-
}
|
|
107
|
-
return null;
|
|
108
|
-
}
|
|
109
|
-
function isAncestorOf(ancestor, element) {
|
|
110
|
-
if (element === ancestor) {
|
|
111
|
-
return true;
|
|
112
|
-
}
|
|
113
|
-
if (element instanceof HTMLElement &&
|
|
114
|
-
element.assignedSlot &&
|
|
115
|
-
isAncestorOf(ancestor, element.assignedSlot)) {
|
|
116
|
-
return true;
|
|
117
|
-
}
|
|
118
|
-
const parent = getParent(element);
|
|
119
|
-
return parent === null ? false : isAncestorOf(ancestor, parent);
|
|
120
|
-
}
|
|
121
93
|
function aggregate(values, getKey) {
|
|
122
94
|
return values.reduce((aggregatedValues, value, i) => {
|
|
123
95
|
const key = getKey(value, i);
|
|
@@ -147,6 +119,6 @@ async function defer() {
|
|
|
147
119
|
return new Promise((resolve) => setTimeout(resolve, 10));
|
|
148
120
|
}
|
|
149
121
|
|
|
150
|
-
export { spreadProperties as a,
|
|
122
|
+
export { spreadProperties as a, sortByDocumentPosition as b, containsVisualElement as c, sanitizeStyle as d, elementHasAncestorTag as e, defer as f, camelToKebab as g, aggregate as h, isFocusingOut as i, isVisualNode as j, kebabToCamel as k, isElementNode as l, once as o, parseXML as p, randomID as r, snakeToCamel as s, titleToKebab as t };
|
|
151
123
|
|
|
152
124
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"utils.js","mappings":";;AAEA;;;SAGgB,IAAI,CAAsB,EAA2B;IACnE,IAAI,MAAe,CAAC;IACpB,OAAO,UAAyB,GAAG,IAAO;QACxC,IAAI,EAAE,EAAE;YACN,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC9B,EAAE,GAAG,SAAQ,CAAC;SACf;QACD,OAAO,MAAM,CAAC;KACf,CAAC;AACJ,CAAC;SAEe,YAAY,CAAC,KAAa;IACxC,OAAO,KAAK,CAAC,OAAO,CAAC,8BAA8B,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;AAC9E,CAAC;SAEe,YAAY,CAAC,KAAa;IACxC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;AACzD,CAAC;SAEe,YAAY,CAAC,KAAa;IACxC,OAAO,KAAK;SACT,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;AAC7E,CAAC;SAEe,YAAY,CAAC,KAAa;IACxC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;AACjD,CAAC;SAEe,QAAQ,CAAC,OAAgB,EAAE,MAAM,GAAG,CAAC;IACnD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE;SAC5B,QAAQ,CAAC,EAAE,CAAC;SACZ,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC;IAC5B,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,SAAS,CAAC;KAClB;IACD,OAAO,OAAO,GAAG,SAAS,CAAC;AAC7B,CAAC;SAMe,QAAQ,CAAC,MAAc;IACrC,OAAO,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AACpE,CAAC;SAMe,aAAa,CAAC,IAAU;IACtC,OAAO,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,CAAC;AAC7C,CAAC;SAEe,UAAU,CAAC,IAAU;IACnC,OAAO,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,CAAC;AAC1C,CAAC;SAEe,YAAY,CAAC,IAAU;IACrC,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE;QACvB,OAAO,EAAE,IAAI,YAAY,gBAAgB,CAAC,CAAC;KAC5C;IACD,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;QACpB,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;KACnC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;SAEe,qBAAqB,CAAC,IAAU;IAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACb;KACF;IACD,OAAO,KAAK,CAAC;AACf,CAAC;SAEe,qBAAqB,CACnC,EAAe,EACf,OAAe;IAEf,MAAM,aAAa,GAAG,EAAE,CAAC,aAAa,CAAC;IACvC,IAAI,CAAC,aAAa,EAAE;QAClB,OAAO,KAAK,CAAC;KACd;IACD,IAAI,aAAa,CAAC,OAAO,KAAK,OAAO,CAAC,WAAW,EAAE,EAAE;QACnD,OAAO,IAAI,CAAC;KACb;IACD,OAAO,qBAAqB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;AACvD,CAAC;SAEe,aAAa,CAAC,KAAa;IACzC,MAAM,iBAAiB,GAAG,SAAS,CAAC,QAAQ,CAAC,UAAU,KAAK,UAAU,EAAE;QACtE,YAAY,EAAE,CAAC,OAAO,CAAC;QACvB,YAAY,EAAE,EAAE;QAChB,UAAU,EAAE,IAAI;KACjB,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;;IAEhD,SAAS,CAAC,SAAS,GAAG,iBAAiB,CAAC;IACxC,OAAO,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC;AACrD,CAAC;SAEe,iBAAiB,CAC/B,cAAqC,QAAQ;IAE7C,MAAM,aAAa,GAAG,WAAW,CAAC,aAAa,CAAC;IAChD,IAAI,aAAa,EAAE,UAAU,EAAE;QAC7B,OAAO,iBAAiB,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,aAAa,CAAC;KACrE;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;SAEe,aAAa,CAAC,KAAiB;IAC7C,QACE,QAAQ,CAAC,QAAQ,EAAE;SAClB,EAAE,KAAK,CAAC,aAAa,YAAY,IAAI,CAAC;aACpC,KAAK,CAAC,aAAa,YAAY,IAAI;gBAClC,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,EACxD;AACJ,CAAC;SAyBe,SAAS,CAAC,OAA6B;IACrD,IAAI,OAAO,CAAC,UAAU,EAAE;QACtB,OAAO,OAAO,CAAC,UAAkC,CAAC;KACnD;IACD,IAAI,OAAO,YAAY,UAAU,EAAE;QACjC,OAAO,OAAO,CAAC,IAAI,CAAC;KACrB;IACD,OAAO,IAAI,CAAC;AACd,CAAC;SAEe,YAAY,CAC1B,QAA8B,EAC9B,OAA6B;IAE7B,IAAI,OAAO,KAAK,QAAQ,EAAE;QACxB,OAAO,IAAI,CAAC;KACb;IACD,IACE,OAAO,YAAY,WAAW;QAC9B,OAAO,CAAC,YAAY;QACpB,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,EAC5C;QACA,OAAO,IAAI,CAAC;KACb;IACD,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAClC,OAAO,MAAM,KAAK,IAAI,GAAG,KAAK,GAAG,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AAClE,CAAC;SAEe,SAAS,CACvB,MAAoB,EACpB,MAAsC;IAEtC,OAAO,MAAM,CAAC,MAAM,CAClB,CAAC,gBAAgB,EAAE,KAAK,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC7B,IAAI,EAAE,GAAG,IAAI,gBAAgB,CAAC,EAAE;YAC9B,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;SAC5B;QACD,gBAAgB,CAAC,GAAG,CAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnC,OAAO,gBAAgB,CAAC;KACzB,EAC2B,EAAE,CAC/B,CAAC;AACJ,CAAC;AAED;;;;;;;SAOgB,gBAAgB,CAC9B,GAAG,OAAiB;IAEpB,MAAM,YAAY,GAAG,EAAE,CAAC;IACxB,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE;QACzB,MAAM,CAAC,gBAAgB,CACrB,YAAY,EACZ,MAAM,CAAC,yBAAyB,CAAC,GAAG,CAAC,CACtC,CAAC;KACH;IACD,OAAO,YAAsB,CAAC;AAChC,CAAC;MAEY,sBAAsB,GAAG,CAAC,CAAO,EAAE,CAAO,KACrD,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,2BAA2B,GAAG,CAAC,CAAC,GAAG,EAAE;AAEpE,eAAe,KAAK;IACzB,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,KAAK,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AACjE;;;;","names":[],"sources":["src/utils/utils.ts"],"sourcesContent":["import DOMPurify from 'dompurify';\n\n/**\n * Returns a function that can be executed only once\n */\nexport function once<T extends unknown[]>(fn: (...args: T) => unknown) {\n let result: unknown;\n return function (this: unknown, ...args: T) {\n if (fn) {\n result = fn.apply(this, args);\n fn = () => {};\n }\n return result;\n };\n}\n\nexport function camelToKebab(value: string) {\n return value.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, '$1-$2').toLowerCase();\n}\n\nexport function kebabToCamel(value: string) {\n return value.replace(/-./g, (x) => x[1].toUpperCase());\n}\n\nexport function snakeToCamel(value: string) {\n return value\n .toLowerCase()\n .replace(/([_][a-z])/g, (group) => group.toUpperCase().replace('_', ''));\n}\n\nexport function titleToKebab(value: string) {\n return value.replace(/\\s/g, '-').toLowerCase();\n}\n\nexport function randomID(prepend?: string, length = 5) {\n const randomStr = Math.random()\n .toString(36)\n .substring(2, 2 + length);\n if (!prepend) {\n return randomStr;\n }\n return prepend + randomStr;\n}\n\nexport function getRandomArbitrary(min: number, max: number) {\n return Math.random() * (max - min) + min;\n}\n\nexport function parseXML(string: string) {\n return new window.DOMParser().parseFromString(string, 'text/xml');\n}\n\nexport function parseHTML(string: string) {\n return new window.DOMParser().parseFromString(string, 'text/html');\n}\n\nexport function isElementNode(node: Node): node is Element {\n return node.nodeType === Node.ELEMENT_NODE;\n}\n\nexport function isTextNode(node: Node): node is Text {\n return node.nodeType === Node.TEXT_NODE;\n}\n\nexport function isVisualNode(node: Node) {\n if (isElementNode(node)) {\n return !(node instanceof HTMLStyleElement);\n }\n if (isTextNode(node)) {\n return !!node.textContent?.trim();\n }\n return false;\n}\n\nexport function containsVisualElement(node: Node) {\n for (let i = 0; i < node.childNodes.length; i++) {\n const child = node.childNodes.item(i);\n if (isVisualNode(child)) {\n return true;\n }\n }\n return false;\n}\n\nexport function elementHasAncestorTag(\n el: HTMLElement,\n tagName: string\n): boolean {\n const parentElement = el.parentElement;\n if (!parentElement) {\n return false;\n }\n if (parentElement.tagName === tagName.toUpperCase()) {\n return true;\n }\n return elementHasAncestorTag(parentElement, tagName);\n}\n\nexport function sanitizeStyle(style: string) {\n const purifiedOuterHTML = DOMPurify.sanitize(`<style>${style}</style>`, {\n ALLOWED_TAGS: ['style'],\n ALLOWED_ATTR: [],\n FORCE_BODY: true,\n });\n const wrapperEl = document.createElement('div');\n // deepcode ignore ReactSetInnerHtml: sanitized by dompurify\n wrapperEl.innerHTML = purifiedOuterHTML;\n return wrapperEl.querySelector('style')?.innerHTML;\n}\n\nexport function getFocusedElement(\n rootElement: Document | ShadowRoot = document\n): Element | null {\n const activeElement = rootElement.activeElement;\n if (activeElement?.shadowRoot) {\n return getFocusedElement(activeElement.shadowRoot) ?? activeElement;\n }\n return activeElement;\n}\n\nexport function isFocusingOut(event: FocusEvent) {\n return (\n document.hasFocus() &&\n (!(event.relatedTarget instanceof Node) ||\n (event.currentTarget instanceof Node &&\n !event.currentTarget.contains(event.relatedTarget)))\n );\n}\n\n// https://terodox.tech/how-to-tell-if-an-element-is-in-the-dom-including-the-shadow-dom/\nexport function isInDocument(element: Node) {\n let currentElement = element;\n while (currentElement?.parentNode) {\n if (currentElement.parentNode === document) {\n return true;\n } else if (currentElement.parentNode instanceof ShadowRoot) {\n currentElement = currentElement.parentNode.host;\n } else {\n currentElement = currentElement.parentNode;\n }\n }\n return false;\n}\n\nexport function isPropValuesEqual<ObjectWithProperties extends object>(\n subject: ObjectWithProperties,\n target: ObjectWithProperties,\n propNames: (keyof ObjectWithProperties)[]\n) {\n return propNames.every((propName) => subject[propName] === target[propName]);\n}\n\nexport function getParent(element: Element | ShadowRoot) {\n if (element.parentNode) {\n return element.parentNode as Element | ShadowRoot;\n }\n if (element instanceof ShadowRoot) {\n return element.host;\n }\n return null;\n}\n\nexport function isAncestorOf(\n ancestor: Element | ShadowRoot,\n element: Element | ShadowRoot\n): boolean {\n if (element === ancestor) {\n return true;\n }\n if (\n element instanceof HTMLElement &&\n element.assignedSlot &&\n isAncestorOf(ancestor, element.assignedSlot)\n ) {\n return true;\n }\n const parent = getParent(element);\n return parent === null ? false : isAncestorOf(ancestor, parent);\n}\n\nexport function aggregate<V, K extends PropertyKey>(\n values: readonly V[],\n getKey: (value: V, index: number) => K\n): Record<K, V[] | undefined> {\n return values.reduce(\n (aggregatedValues, value, i) => {\n const key = getKey(value, i);\n if (!(key in aggregatedValues)) {\n aggregatedValues[key] = [];\n }\n aggregatedValues[key]!.push(value);\n return aggregatedValues;\n },\n <Record<K, V[] | undefined>>{}\n );\n}\n\n/**\n * Similar as a classic spread, but preserve all characteristics of properties (e.g. getter/setter).\n * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign#description\n * for an explanation why (spread & assign work similarly).\n * @param objects the objects to \"spread\" together\n * @returns the spread result\n */\nexport function spreadProperties<Output extends object = {}>(\n ...objects: object[]\n) {\n const returnObject = {};\n for (const obj of objects) {\n Object.defineProperties(\n returnObject,\n Object.getOwnPropertyDescriptors(obj)\n );\n }\n return returnObject as Output;\n}\n\nexport const sortByDocumentPosition = (a: Node, b: Node): 1 | -1 =>\n a.compareDocumentPosition(b) & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : 1;\n\nexport async function defer() {\n return new Promise<void>((resolve) => setTimeout(resolve, 10));\n}\n"],"version":3}
|
|
1
|
+
{"file":"utils.js","mappings":"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","names":[],"sources":["src/utils/utils.ts"],"sourcesContent":["import DOMPurify from 'dompurify';\n\n/**\n * Returns a function that can be executed only once\n */\nexport function once<T extends unknown[]>(fn: (...args: T) => unknown) {\n let result: unknown;\n return function (this: unknown, ...args: T) {\n if (fn) {\n result = fn.apply(this, args);\n fn = () => {};\n }\n return result;\n };\n}\n\nexport function camelToKebab(value: string) {\n return value.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, '$1-$2').toLowerCase();\n}\n\nexport function kebabToCamel(value: string) {\n return value.replace(/-./g, (x) => x[1].toUpperCase());\n}\n\nexport function snakeToCamel(value: string) {\n return value\n .toLowerCase()\n .replace(/([_][a-z])/g, (group) => group.toUpperCase().replace('_', ''));\n}\n\nexport function titleToKebab(value: string) {\n return value.replace(/\\s/g, '-').toLowerCase();\n}\n\nexport function randomID(prepend?: string, length = 5) {\n const randomStr = Math.random()\n .toString(36)\n .substring(2, 2 + length);\n if (!prepend) {\n return randomStr;\n }\n return prepend + randomStr;\n}\n\nexport function getRandomArbitrary(min: number, max: number) {\n return Math.random() * (max - min) + min;\n}\n\nexport function parseXML(string: string) {\n return new window.DOMParser().parseFromString(string, 'text/xml');\n}\n\nexport function parseHTML(string: string) {\n return new window.DOMParser().parseFromString(string, 'text/html');\n}\n\nexport function isElementNode(node: Node): node is Element {\n return node.nodeType === Node.ELEMENT_NODE;\n}\n\nexport function isTextNode(node: Node): node is Text {\n return node.nodeType === Node.TEXT_NODE;\n}\n\nexport function isVisualNode(node: Node) {\n if (isElementNode(node)) {\n return !(node instanceof HTMLStyleElement);\n }\n if (isTextNode(node)) {\n return !!node.textContent?.trim();\n }\n return false;\n}\n\nexport function containsVisualElement(node: Node) {\n for (let i = 0; i < node.childNodes.length; i++) {\n const child = node.childNodes.item(i);\n if (isVisualNode(child)) {\n return true;\n }\n }\n return false;\n}\n\nexport function elementHasAncestorTag(\n el: HTMLElement,\n tagName: string\n): boolean {\n const parentElement = el.parentElement;\n if (!parentElement) {\n return false;\n }\n if (parentElement.tagName === tagName.toUpperCase()) {\n return true;\n }\n return elementHasAncestorTag(parentElement, tagName);\n}\n\nexport function sanitizeStyle(style: string) {\n const purifiedOuterHTML = DOMPurify.sanitize(`<style>${style}</style>`, {\n ALLOWED_TAGS: ['style'],\n ALLOWED_ATTR: [],\n FORCE_BODY: true,\n });\n const wrapperEl = document.createElement('div');\n // deepcode ignore ReactSetInnerHtml: sanitized by dompurify\n wrapperEl.innerHTML = purifiedOuterHTML;\n return wrapperEl.querySelector('style')?.innerHTML;\n}\n\nexport function getFocusedElement(\n rootElement: Document | ShadowRoot = document\n): Element | null {\n const activeElement = rootElement.activeElement;\n if (activeElement?.shadowRoot) {\n return getFocusedElement(activeElement.shadowRoot) ?? activeElement;\n }\n return activeElement;\n}\n\nexport function isFocusingOut(event: FocusEvent) {\n return (\n document.hasFocus() &&\n (!(event.relatedTarget instanceof Node) ||\n (event.currentTarget instanceof Node &&\n !event.currentTarget.contains(event.relatedTarget)))\n );\n}\n\n// https://terodox.tech/how-to-tell-if-an-element-is-in-the-dom-including-the-shadow-dom/\nexport function isInDocument(element: Node) {\n let currentElement = element;\n while (currentElement?.parentNode) {\n if (currentElement.parentNode === document) {\n return true;\n } else if (currentElement.parentNode instanceof ShadowRoot) {\n currentElement = currentElement.parentNode.host;\n } else {\n currentElement = currentElement.parentNode;\n }\n }\n return false;\n}\n\nexport function isPropValuesEqual<ObjectWithProperties extends object>(\n subject: ObjectWithProperties,\n target: ObjectWithProperties,\n propNames: (keyof ObjectWithProperties)[]\n) {\n return propNames.every((propName) => subject[propName] === target[propName]);\n}\n\nexport function getParent(element: Element | ShadowRoot) {\n if (element.parentNode) {\n return element.parentNode as Element | ShadowRoot;\n }\n if (element instanceof ShadowRoot) {\n return element.host;\n }\n return null;\n}\n\nexport function isAncestorOf(\n ancestor: Element | ShadowRoot,\n element: Element | ShadowRoot\n): boolean {\n if (element === ancestor) {\n return true;\n }\n if (\n element instanceof HTMLElement &&\n element.assignedSlot &&\n isAncestorOf(ancestor, element.assignedSlot)\n ) {\n return true;\n }\n const parent = getParent(element);\n return parent === null ? false : isAncestorOf(ancestor, parent);\n}\n\nexport function aggregate<V, K extends PropertyKey>(\n values: readonly V[],\n getKey: (value: V, index: number) => K\n): Record<K, V[] | undefined> {\n return values.reduce(\n (aggregatedValues, value, i) => {\n const key = getKey(value, i);\n if (!(key in aggregatedValues)) {\n aggregatedValues[key] = [];\n }\n aggregatedValues[key]!.push(value);\n return aggregatedValues;\n },\n <Record<K, V[] | undefined>>{}\n );\n}\n\n/**\n * Similar as a classic spread, but preserve all characteristics of properties (e.g. getter/setter).\n * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign#description\n * for an explanation why (spread & assign work similarly).\n * @param objects the objects to \"spread\" together\n * @returns the spread result\n */\nexport function spreadProperties<Output extends object = {}>(\n ...objects: object[]\n) {\n const returnObject = {};\n for (const obj of objects) {\n Object.defineProperties(\n returnObject,\n Object.getOwnPropertyDescriptors(obj)\n );\n }\n return returnObject as Output;\n}\n\nexport const sortByDocumentPosition = (a: Node, b: Node): 1 | -1 =>\n a.compareDocumentPosition(b) & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : 1;\n\nexport async function defer() {\n return new Promise<void>((resolve) => setTimeout(resolve, 10));\n}\n"],"version":3}
|