@coveo/atomic 3.37.1 → 3.37.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/atomic/_atomic.esm.js +1 -1
- package/dist/atomic/atomic.esm.js.map +1 -1
- package/dist/atomic/components/_index.d.ts +0 -2
- package/dist/atomic/components/_index.js +0 -1
- package/dist/atomic/components/atomic-automatic-facet-generator2.js +1 -1
- package/dist/atomic/components/atomic-automatic-facet-generator2.js.map +1 -1
- package/dist/atomic/components/atomic-category-facet.js +2 -2
- package/dist/atomic/components/atomic-category-facet.js.map +1 -1
- package/dist/atomic/components/atomic-color-facet.js +1 -1
- package/dist/atomic/components/atomic-color-facet.js.map +1 -1
- package/dist/atomic/components/atomic-insight-facet.js +2 -2
- package/dist/atomic/components/atomic-insight-facet.js.map +1 -1
- package/dist/atomic/components/atomic-insight-numeric-facet.js +2 -2
- package/dist/atomic/components/atomic-insight-numeric-facet.js.map +1 -1
- package/dist/atomic/components/atomic-insight-timeframe-facet.js +1 -1
- package/dist/atomic/components/atomic-insight-timeframe-facet.js.map +1 -1
- package/dist/atomic/components/atomic-ipx-recs-list.js +1 -2
- package/dist/atomic/components/atomic-ipx-recs-list.js.map +1 -1
- package/dist/atomic/components/atomic-numeric-facet.js +2 -2
- package/dist/atomic/components/atomic-numeric-facet.js.map +1 -1
- package/dist/atomic/components/atomic-quickview-modal2.js +1 -1
- package/dist/atomic/components/atomic-quickview.js +1 -1
- package/dist/atomic/components/atomic-rating-facet.js +1 -1
- package/dist/atomic/components/atomic-rating-facet.js.map +1 -1
- package/dist/atomic/components/atomic-rating-range-facet.js +1 -1
- package/dist/atomic/components/atomic-rating-range-facet.js.map +1 -1
- package/dist/atomic/components/atomic-recs-interface.js +1 -1
- package/dist/atomic/components/atomic-recs-list.js +1 -2
- package/dist/atomic/components/atomic-recs-list.js.map +1 -1
- package/dist/atomic/components/atomic-result-fields-list.js +1 -1
- package/dist/atomic/components/atomic-result-link.js +1 -1
- package/dist/atomic/components/atomic-smart-snippet-feedback-modal2.js +2 -2
- package/dist/atomic/components/atomic-tab-manager.js +1 -1
- package/dist/atomic/components/atomic-timeframe-facet.js +1 -1
- package/dist/atomic/components/atomic-timeframe-facet.js.map +1 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-facets/atomic-commerce-facets.js +12 -12
- package/dist/atomic/components/components/commerce/atomic-commerce-interface/atomic-commerce-interface.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-product-list/atomic-commerce-product-list.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.js +1 -1
- package/dist/atomic/components/components/common/tabs/tab-wrapper.js +9 -0
- package/dist/atomic/components/components/insight/atomic-insight-interface/atomic-insight-interface.js +1 -1
- package/dist/atomic/components/components/search/atomic-external/atomic-external.js +1 -1
- package/dist/atomic/components/components/search/atomic-result-list/atomic-result-list.js +434 -0
- package/dist/atomic/components/components/search/atomic-result-template/atomic-result-template.js +1 -0
- package/dist/atomic/components/components/search/atomic-search-interface/atomic-search-interface.js +1 -1
- 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/decorators/bindings.js +1 -1
- package/dist/atomic/components/global/environment.js +1 -1
- package/dist/atomic/components/index.js.map +1 -1
- package/dist/atomic/components/stencil-carousel.js +16 -1
- package/dist/atomic/components/stencil-carousel.js.map +1 -1
- package/dist/atomic/components/{facet-placeholder.js → stencil-facet-placeholder.js} +1 -1
- package/dist/atomic/components/stencil-facet-placeholder.js.map +1 -0
- package/dist/atomic/components/stencil-result-template-common.js +2 -1
- package/dist/atomic/components/stencil-result-template-common.js.map +1 -1
- package/dist/atomic/components/timeframe-facet-common.js +1 -1
- package/dist/atomic/components/timeframe-facet-common.js.map +1 -1
- package/dist/atomic/components/utils/tab-utils.js +17 -0
- package/dist/atomic/{p-f8bbecdd.entry.js → p-0d3407e9.entry.js} +2 -2
- package/dist/atomic/{p-b986c752.entry.js → p-1fdd2a5a.entry.js} +2 -2
- package/dist/atomic/p-1fdd2a5a.entry.js.map +1 -0
- package/dist/atomic/p-2a979ae5.entry.js +2 -0
- package/dist/atomic/{p-564e93ba.entry.js.map → p-2a979ae5.entry.js.map} +1 -1
- package/dist/atomic/p-2d624182.entry.js +2 -0
- package/dist/atomic/{p-6e47c9a8.entry.js.map → p-2d624182.entry.js.map} +1 -1
- package/dist/atomic/{p-561a531c.entry.js → p-3302a10f.entry.js} +2 -2
- package/dist/atomic/{p-04e08959.entry.js → p-3a426d47.entry.js} +2 -2
- package/dist/atomic/p-3a426d47.entry.js.map +1 -0
- package/dist/atomic/{p-7dfced62.entry.js → p-4362ec1f.entry.js} +2 -2
- package/dist/atomic/p-4362ec1f.entry.js.map +1 -0
- package/dist/atomic/{p-8deeef5f.entry.js → p-4b46b80f.entry.js} +2 -2
- package/dist/atomic/{p-408ffc88.entry.js → p-50353e9d.entry.js} +2 -2
- package/dist/atomic/p-50353e9d.entry.js.map +1 -0
- package/dist/atomic/{p-b528927d.entry.js → p-52721bf1.entry.js} +2 -2
- package/dist/atomic/p-52721bf1.entry.js.map +1 -0
- package/dist/atomic/{p-8deb6142.entry.js → p-594e3243.entry.js} +2 -2
- package/dist/atomic/p-5bdd4fca.entry.js +2 -0
- package/dist/atomic/{p-e351c8ed.entry.js.map → p-5bdd4fca.entry.js.map} +1 -1
- package/dist/atomic/{p-4239e0ec.entry.js → p-7632eb9d.entry.js} +2 -2
- package/dist/atomic/p-7632eb9d.entry.js.map +1 -0
- package/dist/atomic/{p-99203e57.entry.js → p-9a66fe53.entry.js} +2 -2
- package/dist/atomic/p-9a66fe53.entry.js.map +1 -0
- package/dist/atomic/{p-0d955dec.entry.js → p-9f3b431f.entry.js} +2 -2
- package/dist/atomic/{p-29bbd3d3.js → p-a598dc5b.js} +1 -1
- package/dist/atomic/p-a598dc5b.js.map +1 -0
- package/dist/atomic/p-acf4faf8.js +2 -0
- package/dist/atomic/p-acf4faf8.js.map +1 -0
- package/dist/atomic/p-c6763212.entry.js +2 -0
- package/dist/atomic/{p-1f4853b1.entry.js.map → p-c6763212.entry.js.map} +1 -1
- package/dist/atomic/p-c827c5e3.entry.js +2 -0
- package/dist/atomic/{p-7ccbf77d.entry.js.map → p-c827c5e3.entry.js.map} +1 -1
- package/dist/atomic/p-caf548dd.js +2 -0
- package/dist/atomic/p-caf548dd.js.map +1 -0
- package/dist/atomic/{p-3e077971.js → p-da20ee92.js} +2 -2
- package/dist/atomic/p-da20ee92.js.map +1 -0
- package/dist/atomic/{p-7b718df8.entry.js → p-e0e50820.entry.js} +2 -2
- package/dist/atomic/{p-27765040.entry.js → p-ecb92feb.entry.js} +2 -2
- package/dist/atomic/{p-27765040.entry.js.map → p-ecb92feb.entry.js.map} +1 -1
- package/dist/atomic/{p-3119dcb8.entry.js → p-f2893341.entry.js} +2 -2
- package/dist/atomic/{p-906fd94d.entry.js → p-f29cee57.entry.js} +2 -2
- package/dist/atomic/p-f29cee57.entry.js.map +1 -0
- package/dist/atomic/{p-2cd906b9.entry.js → p-f350c5c4.entry.js} +2 -2
- package/dist/atomic/p-f350c5c4.entry.js.map +1 -0
- package/dist/atomic/p-fef9f7d9.entry.js +2 -0
- package/dist/atomic/{p-7b11e602.entry.js.map → p-fef9f7d9.entry.js.map} +1 -1
- package/dist/cjs/_loader.cjs.js +1 -1
- package/dist/cjs/atomic-automatic-facet_2.cjs.entry.js +4 -4
- package/dist/cjs/atomic-automatic-facet_2.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-category-facet.cjs.entry.js +4 -4
- package/dist/cjs/atomic-category-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-color-facet.cjs.entry.js +4 -4
- package/dist/cjs/atomic-color-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-field-condition.cjs.entry.js +1 -2
- package/dist/cjs/atomic-field-condition.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-facet.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-result-children-template.cjs.entry.js +1 -2
- package/dist/cjs/atomic-insight-result-children-template.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-result-template.cjs.entry.js +1 -2
- package/dist/cjs/atomic-insight-result-template.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +4 -5
- package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-numeric-facet.cjs.entry.js +3 -3
- package/dist/cjs/atomic-numeric-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-quickview-modal.cjs.entry.js +1 -1
- package/dist/cjs/atomic-quickview.cjs.entry.js +1 -1
- package/dist/cjs/atomic-rating-facet.cjs.entry.js +4 -4
- package/dist/cjs/atomic-rating-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-rating-range-facet.cjs.entry.js +4 -4
- package/dist/cjs/atomic-rating-range-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-recs-interface.cjs.entry.js +1 -1
- package/dist/cjs/atomic-recs-list.cjs.entry.js +4 -5
- package/dist/cjs/atomic-recs-list.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-recs-result-template.cjs.entry.js +1 -2
- package/dist/cjs/atomic-recs-result-template.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-fields-list.cjs.entry.js +1 -1
- package/dist/cjs/atomic-result-link.cjs.entry.js +1 -1
- package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js +2 -2
- package/dist/cjs/atomic-tab-manager.cjs.entry.js +1 -1
- package/dist/cjs/atomic-timeframe-facet.cjs.entry.js +3 -3
- package/dist/cjs/atomic-timeframe-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic.cjs.js +1 -1
- package/dist/cjs/index-1df73594.js +0 -4
- package/dist/cjs/{stencil-carousel-2beaa7d2.js → stencil-carousel-72557b3b.js} +17 -1
- package/dist/cjs/stencil-carousel-72557b3b.js.map +1 -0
- package/dist/cjs/{facet-placeholder-e86f105c.js → stencil-facet-placeholder-d3c0a675.js} +1 -1
- package/dist/cjs/stencil-facet-placeholder-d3c0a675.js.map +1 -0
- package/dist/cjs/{stencil-result-template-common-268ba233.js → stencil-result-template-common-46913299.js} +4 -3
- package/dist/cjs/stencil-result-template-common-46913299.js.map +1 -0
- package/dist/cjs/{timeframe-facet-common-16ba58fd.js → timeframe-facet-common-4fa4cc95.js} +5 -5
- package/dist/cjs/timeframe-facet-common-4fa4cc95.js.map +1 -0
- package/dist/cjs/version.cjs.js +2 -2
- package/dist/esm/_loader.js +1 -1
- package/dist/esm/atomic-automatic-facet_2.entry.js +1 -1
- package/dist/esm/atomic-automatic-facet_2.entry.js.map +1 -1
- package/dist/esm/atomic-category-facet.entry.js +2 -2
- package/dist/esm/atomic-category-facet.entry.js.map +1 -1
- package/dist/esm/atomic-color-facet.entry.js +1 -1
- package/dist/esm/atomic-color-facet.entry.js.map +1 -1
- package/dist/esm/atomic-field-condition.entry.js +1 -2
- package/dist/esm/atomic-field-condition.entry.js.map +1 -1
- package/dist/esm/atomic-insight-facet.entry.js +2 -2
- package/dist/esm/atomic-insight-facet.entry.js.map +1 -1
- package/dist/esm/atomic-insight-numeric-facet.entry.js +2 -2
- package/dist/esm/atomic-insight-numeric-facet.entry.js.map +1 -1
- package/dist/esm/atomic-insight-result-children-template.entry.js +1 -2
- package/dist/esm/atomic-insight-result-children-template.entry.js.map +1 -1
- package/dist/esm/atomic-insight-result-template.entry.js +1 -2
- package/dist/esm/atomic-insight-result-template.entry.js.map +1 -1
- package/dist/esm/atomic-insight-timeframe-facet.entry.js +2 -2
- package/dist/esm/atomic-insight-timeframe-facet.entry.js.map +1 -1
- package/dist/esm/atomic-ipx-recs-list.entry.js +3 -4
- package/dist/esm/atomic-ipx-recs-list.entry.js.map +1 -1
- package/dist/esm/atomic-numeric-facet.entry.js +2 -2
- package/dist/esm/atomic-numeric-facet.entry.js.map +1 -1
- package/dist/esm/atomic-quickview-modal.entry.js +1 -1
- package/dist/esm/atomic-quickview.entry.js +1 -1
- package/dist/esm/atomic-rating-facet.entry.js +1 -1
- package/dist/esm/atomic-rating-facet.entry.js.map +1 -1
- package/dist/esm/atomic-rating-range-facet.entry.js +1 -1
- package/dist/esm/atomic-rating-range-facet.entry.js.map +1 -1
- package/dist/esm/atomic-recs-interface.entry.js +1 -1
- package/dist/esm/atomic-recs-list.entry.js +3 -4
- package/dist/esm/atomic-recs-list.entry.js.map +1 -1
- package/dist/esm/atomic-recs-result-template.entry.js +1 -2
- package/dist/esm/atomic-recs-result-template.entry.js.map +1 -1
- package/dist/esm/atomic-result-fields-list.entry.js +1 -1
- package/dist/esm/atomic-result-link.entry.js +1 -1
- package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js +2 -2
- package/dist/esm/atomic-tab-manager.entry.js +1 -1
- package/dist/esm/atomic-timeframe-facet.entry.js +2 -2
- package/dist/esm/atomic-timeframe-facet.entry.js.map +1 -1
- package/dist/esm/atomic.js +1 -1
- package/dist/esm/index-a59c51bd.js +0 -4
- package/dist/esm/{stencil-carousel-be6f0bc1.js → stencil-carousel-a9540851.js} +17 -2
- package/dist/esm/stencil-carousel-a9540851.js.map +1 -0
- package/dist/esm/{facet-placeholder-7e0836c1.js → stencil-facet-placeholder-8201b5c9.js} +1 -1
- package/dist/esm/stencil-facet-placeholder-8201b5c9.js.map +1 -0
- package/dist/esm/{stencil-result-template-common-cddca36d.js → stencil-result-template-common-8be1ff35.js} +3 -2
- package/dist/esm/stencil-result-template-common-8be1ff35.js.map +1 -0
- package/dist/esm/{timeframe-facet-common-906a271d.js → timeframe-facet-common-4c8d95f2.js} +2 -2
- package/dist/esm/timeframe-facet-common-4c8d95f2.js.map +1 -0
- package/dist/esm/version.js +2 -2
- package/dist/types/components/commerce/atomic-commerce-product-list/atomic-commerce-product-list.d.ts +1 -1
- package/dist/types/components/{context → common/context}/bindings-context.d.ts +1 -1
- package/dist/types/components/common/facets/facet-placeholder/facet-placeholder.d.ts +2 -5
- package/dist/types/components/common/facets/facet-placeholder/stencil-facet-placeholder.d.ts +10 -0
- package/dist/types/components/common/template-controller/base-template-controller.d.ts +2 -1
- package/dist/types/components/search/atomic-result/atomic-result.d.ts +1 -1
- package/dist/types/components/search/{result-lists/atomic-result-list → atomic-result-list}/atomic-result-list.d.ts +45 -33
- package/dist/types/components/search/atomic-result-section-visual/atomic-result-section-visual.d.ts +1 -1
- package/dist/types/components/search/atomic-result-template/atomic-result-template.d.ts +1 -0
- package/dist/types/components/search/index.d.ts +1 -0
- package/dist/types/components.d.ts +0 -70
- package/docs/atomic-docs.json +1 -359
- package/package.json +5 -5
- package/dist/atomic/components/atomic-result-list.d.ts +0 -11
- package/dist/atomic/components/atomic-result-list.js +0 -343
- package/dist/atomic/components/atomic-result-list.js.map +0 -1
- package/dist/atomic/components/facet-placeholder.js.map +0 -1
- package/dist/atomic/components/stencil-display-grid.js +0 -20
- package/dist/atomic/components/stencil-display-grid.js.map +0 -1
- package/dist/atomic/components/table-element-utils.js +0 -5
- package/dist/atomic/components/table-element-utils.js.map +0 -1
- package/dist/atomic/p-023c1f4f.js +0 -2
- package/dist/atomic/p-023c1f4f.js.map +0 -1
- package/dist/atomic/p-04e08959.entry.js.map +0 -1
- package/dist/atomic/p-0a9d79a3.entry.js +0 -2
- package/dist/atomic/p-0a9d79a3.entry.js.map +0 -1
- package/dist/atomic/p-1f4853b1.entry.js +0 -2
- package/dist/atomic/p-2324ab77.js +0 -2
- package/dist/atomic/p-2324ab77.js.map +0 -1
- package/dist/atomic/p-29bbd3d3.js.map +0 -1
- package/dist/atomic/p-2cd906b9.entry.js.map +0 -1
- package/dist/atomic/p-3e077971.js.map +0 -1
- package/dist/atomic/p-408ffc88.entry.js.map +0 -1
- package/dist/atomic/p-4239e0ec.entry.js.map +0 -1
- package/dist/atomic/p-564e93ba.entry.js +0 -2
- package/dist/atomic/p-6e47c9a8.entry.js +0 -2
- package/dist/atomic/p-7b11e602.entry.js +0 -2
- package/dist/atomic/p-7ccbf77d.entry.js +0 -2
- package/dist/atomic/p-7dfced62.entry.js.map +0 -1
- package/dist/atomic/p-8b38c143.js +0 -2
- package/dist/atomic/p-8b38c143.js.map +0 -1
- package/dist/atomic/p-906fd94d.entry.js.map +0 -1
- package/dist/atomic/p-99203e57.entry.js.map +0 -1
- package/dist/atomic/p-b528927d.entry.js.map +0 -1
- package/dist/atomic/p-b986c752.entry.js.map +0 -1
- package/dist/atomic/p-be0518ae.js +0 -2
- package/dist/atomic/p-be0518ae.js.map +0 -1
- package/dist/atomic/p-e351c8ed.entry.js +0 -2
- package/dist/cjs/atomic-result-list.cjs.entry.js +0 -303
- package/dist/cjs/atomic-result-list.cjs.entry.js.map +0 -1
- package/dist/cjs/facet-placeholder-e86f105c.js.map +0 -1
- package/dist/cjs/stencil-carousel-2beaa7d2.js.map +0 -1
- package/dist/cjs/stencil-display-grid-04536fdc.js +0 -22
- package/dist/cjs/stencil-display-grid-04536fdc.js.map +0 -1
- package/dist/cjs/stencil-result-template-common-268ba233.js.map +0 -1
- package/dist/cjs/table-element-utils-2cc6dc82.js +0 -7
- package/dist/cjs/table-element-utils-2cc6dc82.js.map +0 -1
- package/dist/cjs/timeframe-facet-common-16ba58fd.js.map +0 -1
- package/dist/esm/atomic-result-list.entry.js +0 -299
- package/dist/esm/atomic-result-list.entry.js.map +0 -1
- package/dist/esm/facet-placeholder-7e0836c1.js.map +0 -1
- package/dist/esm/stencil-carousel-be6f0bc1.js.map +0 -1
- package/dist/esm/stencil-display-grid-02c4f5d0.js +0 -20
- package/dist/esm/stencil-display-grid-02c4f5d0.js.map +0 -1
- package/dist/esm/stencil-result-template-common-cddca36d.js.map +0 -1
- package/dist/esm/table-element-utils-1dbc5ef6.js +0 -5
- package/dist/esm/table-element-utils-1dbc5ef6.js.map +0 -1
- package/dist/esm/timeframe-facet-common-906a271d.js.map +0 -1
- package/dist/types/components/common/tabs/stencil-tab-guard.d.ts +0 -11
- /package/dist/atomic/components/components/{context → common/context}/bindings-context.js +0 -0
- /package/dist/atomic/{p-f8bbecdd.entry.js.map → p-0d3407e9.entry.js.map} +0 -0
- /package/dist/atomic/{p-561a531c.entry.js.map → p-3302a10f.entry.js.map} +0 -0
- /package/dist/atomic/{p-8deeef5f.entry.js.map → p-4b46b80f.entry.js.map} +0 -0
- /package/dist/atomic/{p-8deb6142.entry.js.map → p-594e3243.entry.js.map} +0 -0
- /package/dist/atomic/{p-0d955dec.entry.js.map → p-9f3b431f.entry.js.map} +0 -0
- /package/dist/atomic/{p-7b718df8.entry.js.map → p-e0e50820.entry.js.map} +0 -0
- /package/dist/atomic/{p-3119dcb8.entry.js.map → p-f2893341.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"atomic-insight-facet.entry.cjs.js","mappings":"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","names":["getFieldValueCaption","h","FacetValueCheckbox","FacetValueLabelHighlight","FacetValueLink","FacetValueBox","buildInsightFacet","buildInsightSearchStatus","FocusTargetController","FacetGuard","FacetContainer","FacetHeader","FacetPlaceholder","FacetValuesGroup","FacetShowMoreLess","announceFacetSearchResultsWithAriaLive","buildInsightFacetConditionsManager","parseDependsOn","initializePopover","InitializeBindings","BindStateToController","AriaLiveRegion"],"sources":["src/components/common/facets/facet-value/stencil-facet-value.tsx","src/components/insight/atomic-insight-facet/atomic-insight-facet.pcss?tag=atomic-insight-facet&encapsulation=shadow","src/components/insight/atomic-insight-facet/atomic-insight-facet.tsx"],"sourcesContent":["import {FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {getFieldValueCaption} from '../../../../utils/field-utils';\nimport {FacetValueBox} from '../facet-value-box/stencil-facet-value-box';\nimport {FacetValueCheckbox} from '../facet-value-checkbox/stencil-facet-value-checkbox';\nimport {FacetValueLabelHighlight} from '../facet-value-label-highlight/stencil-facet-value-label-highlight';\nimport {FacetValueLink} from '../facet-value-link/stencil-facet-value-link';\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport interface FacetValueProps {\n field: string;\n facetValue: string;\n facetCount: number;\n facetState: 'idle' | 'selected' | 'excluded';\n i18n: i18n;\n enableExclusion: boolean;\n onExclude: () => void;\n onSelect: () => void;\n displayValuesAs: 'checkbox' | 'link' | 'box';\n facetSearchQuery: string;\n setRef?: (btn?: HTMLButtonElement) => void;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const FacetValue: FunctionalComponent<FacetValueProps> = ({\n facetSearchQuery,\n displayValuesAs,\n enableExclusion,\n facetCount,\n facetState,\n facetValue,\n field,\n i18n,\n onExclude,\n onSelect,\n setRef,\n}) => {\n const displayValue = getFieldValueCaption(field, facetValue, i18n);\n const isSelected = facetState === 'selected';\n const isExcluded = facetState === 'excluded';\n const triStateProps = enableExclusion\n ? {\n onExclude,\n state: facetState,\n }\n : {};\n switch (displayValuesAs) {\n case 'checkbox':\n return (\n <FacetValueCheckbox\n {...triStateProps}\n displayValue={displayValue}\n numberOfResults={facetCount}\n isSelected={isSelected}\n i18n={i18n}\n onClick={onSelect}\n searchQuery={facetSearchQuery}\n buttonRef={(element) => {\n setRef && setRef(element);\n }}\n >\n <FacetValueLabelHighlight\n displayValue={displayValue}\n isSelected={isSelected}\n isExcluded={isExcluded}\n searchQuery={facetSearchQuery}\n ></FacetValueLabelHighlight>\n </FacetValueCheckbox>\n );\n case 'link':\n return (\n <FacetValueLink\n displayValue={displayValue}\n numberOfResults={facetCount}\n isSelected={isSelected}\n i18n={i18n}\n onClick={onSelect}\n searchQuery={facetSearchQuery}\n buttonRef={(element) => {\n setRef && setRef(element);\n }}\n >\n <FacetValueLabelHighlight\n displayValue={displayValue}\n isSelected={isSelected}\n searchQuery={facetSearchQuery}\n ></FacetValueLabelHighlight>\n </FacetValueLink>\n );\n case 'box':\n return (\n <FacetValueBox\n displayValue={displayValue}\n numberOfResults={facetCount}\n isSelected={isSelected}\n i18n={i18n}\n onClick={onSelect}\n searchQuery={facetSearchQuery}\n buttonRef={(element) => {\n setRef && setRef(element);\n }}\n >\n <FacetValueLabelHighlight\n displayValue={displayValue}\n isSelected={isSelected}\n searchQuery={facetSearchQuery}\n ></FacetValueLabelHighlight>\n </FacetValueBox>\n );\n }\n};\n","@import '../../common/facets/facet-common.pcss';\n@import '../../common/facets/facet-search/facet-search.pcss';\n@import '../../common/facets/facet-value-checkbox/facet-value-checkbox.pcss';\n@import '../../common/facets/facet-value-exclude/facet-value-exclude.pcss';\n@import '../../common/facets/facet-value-box/facet-value-box.pcss';\n","import {FacetResultsMustMatch} from '@coveo/headless';\nimport {\n buildFacet as buildInsightFacet,\n buildFacetConditionsManager as buildInsightFacetConditionsManager,\n buildSearchStatus as buildInsightSearchStatus,\n CategoryFacetValueRequest as InsightCategoryFacetValueRequest,\n Facet as InsightFacet,\n FacetConditionsManager as InsightFacetConditionsManager,\n FacetOptions as InsightFacetOptions,\n FacetSortCriterion as InsightFacetSortCriterion,\n FacetState as InsightFacetState,\n FacetValueRequest as InsightFacetValueRequest,\n SearchStatus as InsightSearchStatus,\n SearchStatusState as InsightSearchStatusState,\n} from '@coveo/headless/insight';\nimport {Component, h, State, Prop, Element, VNode} from '@stencil/core';\nimport {\n BindStateToController,\n InitializableComponent,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {\n AriaLiveRegion,\n FocusTargetController,\n} from '../../../utils/stencil-accessibility-utils';\nimport {parseDependsOn} from '../../common/facets/depends-on';\nimport {FacetInfo} from '../../common/facets/facet-common-store';\nimport {FacetContainer} from '../../common/facets/facet-container/stencil-facet-container';\nimport {FacetGuard} from '../../common/facets/stencil-facet-guard';\nimport {FacetHeader} from '../../common/facets/facet-header/stencil-facet-header';\nimport {FacetPlaceholder} from '../../common/facets/facet-placeholder/facet-placeholder';\nimport {announceFacetSearchResultsWithAriaLive} from '../../common/facets/facet-search/facet-search-aria-live';\nimport {FacetShowMoreLess} from '../../common/facets/facet-show-more-less/stencil-facet-show-more-less';\nimport {\n FacetValueProps,\n FacetValue,\n} from '../../common/facets/facet-value/stencil-facet-value';\nimport {FacetValuesGroup} from '../../common/facets/facet-values-group/stencil-facet-values-group';\nimport {initializePopover} from '../../common/facets/popover/popover-type';\nimport {InsightBindings} from '../atomic-insight-interface/atomic-insight-interface';\n\n/**\n * @internal\n */\n@Component({\n tag: 'atomic-insight-facet',\n styleUrl: 'atomic-insight-facet.pcss',\n shadow: true,\n})\nexport class AtomicInsightFacet\n implements InitializableComponent<InsightBindings>\n{\n @InitializeBindings() public bindings!: InsightBindings;\n public facet!: InsightFacet;\n public searchStatus!: InsightSearchStatus;\n public dependsOn = {};\n @Element() private host!: HTMLElement;\n\n @BindStateToController('facet')\n @State()\n public facetState!: InsightFacetState;\n @BindStateToController('searchStatus')\n @State()\n public searchStatusState!: InsightSearchStatusState;\n @State() public error!: Error;\n\n /**\n * Specifies a unique identifier for the facet.\n */\n @Prop({mutable: true, reflect: true}) public facetId?: string;\n /**\n * The non-localized label for the facet.\n */\n @Prop({reflect: true}) public label = 'no-label';\n /**\n * The field whose values you want to display in the facet.\n */\n @Prop({reflect: true}) public field!: string;\n /**\n * The number of values to request for this facet.\n * Also determines the number of additional values to request each time more values are shown.\n */\n @Prop({reflect: true}) public numberOfValues = 8;\n /**\n * The sort criterion to apply to the returned facet values.\n * Possible values are 'score', 'alphanumeric', 'alphanumericDescending', 'occurrences', alphanumericNatural', 'alphanumericNaturalDescending' and 'automatic'.\n */\n @Prop({reflect: true}) public sortCriteria: InsightFacetSortCriterion =\n 'automatic';\n /**\n * Specifies how a result must match the selected facet values.\n * Allowed values:\n * - `atLeastOneValue`: A result will match if at least one of the corresponding facet values is selected.\n * - `allValues`: A result will match if all corresponding facet values are selected.\n */\n @Prop({reflect: true}) public resultsMustMatch: FacetResultsMustMatch =\n 'atLeastOneValue';\n /**\n * Whether to display the facet values as checkboxes (multiple selection), links (single selection) or boxes (multiple selection).\n * Possible values are 'checkbox', 'link', and 'box'.\n */\n @Prop({reflect: true}) public displayValuesAs: 'checkbox' | 'link' | 'box' =\n 'checkbox';\n /**\n * Specifies if the facet is collapsed.\n */\n @Prop({reflect: true, mutable: true}) public isCollapsed = false;\n /**\n * The [heading level](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements) to use for the heading over the facet, from 1 to 6.\n */\n @Prop({reflect: true}) public headingLevel = 0;\n /**\n * Whether to exclude the parents of folded results when estimating the result count for each facet value.\n *\n *\n * Note: Resulting count is only an estimation, in some cases this value could be incorrect.\n */\n @Prop({reflect: true}) public filterFacetCount = true;\n /**\n * The maximum number of results to scan in the index to ensure that the facet lists all potential facet values.\n * Note: A high injectionDepth may negatively impact the facet request performance.\n * Minimum: `0`\n * Default: `1000`\n */\n @Prop() public injectionDepth = 1000;\n /**\n * Whether to allow excluding values from the facet.\n */\n @Prop({reflect: true}) public enableExclusion = false;\n\n private showLessFocus?: FocusTargetController;\n private showMoreFocus?: FocusTargetController;\n private headerFocus?: FocusTargetController;\n private facetConditionsManager?: InsightFacetConditionsManager;\n\n @AriaLiveRegion('facet-search')\n protected facetSearchAriaMessage!: string;\n\n public initialize() {\n const options: InsightFacetOptions = {\n facetId: this.facetId,\n field: this.field,\n numberOfValues: this.numberOfValues,\n sortCriteria: this.sortCriteria,\n facetSearch: {numberOfValues: this.numberOfValues},\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n };\n\n this.facet = buildInsightFacet(this.bindings.engine, {options});\n this.facetId = this.facet.state.facetId;\n this.searchStatus = buildInsightSearchStatus(this.bindings.engine);\n this.initAriaLive();\n this.initConditionManager();\n this.initPopover();\n this.registerFacet();\n }\n\n private get focusTargets(): {\n showLess: FocusTargetController;\n showMore: FocusTargetController;\n header: FocusTargetController;\n } {\n if (!this.showLessFocus) {\n this.showLessFocus = new FocusTargetController(this);\n }\n if (!this.showMoreFocus) {\n this.showMoreFocus = new FocusTargetController(this);\n }\n if (!this.headerFocus) {\n this.headerFocus = new FocusTargetController(this);\n }\n return {\n showLess: this.showLessFocus,\n showMore: this.showMoreFocus,\n header: this.headerFocus,\n };\n }\n\n public disconnectedCallback() {\n if (this.host.isConnected) {\n return;\n }\n this.facetConditionsManager?.stopWatching();\n }\n\n public render() {\n return (\n <FacetGuard\n enabled={this.facetState.enabled}\n hasError={this.searchStatusState.hasError}\n firstSearchExecuted={this.searchStatusState.firstSearchExecuted}\n hasResults={this.facetState.values.length > 0}\n >\n {this.searchStatusState.firstSearchExecuted ? (\n <FacetContainer>\n <FacetHeader\n i18n={this.bindings.i18n}\n label={this.label}\n onClearFilters={() => {\n this.focusTargets.header.focusAfterSearch();\n this.facet.deselectAll();\n }}\n numberOfActiveValues={this.activeValues.length}\n isCollapsed={this.isCollapsed}\n headingLevel={this.headingLevel}\n onToggleCollapse={() => (this.isCollapsed = !this.isCollapsed)}\n headerRef={(el) => this.focusTargets.header.setTarget(el)}\n ></FacetHeader>\n {this.renderBody()}\n </FacetContainer>\n ) : (\n <FacetPlaceholder\n numberOfValues={this.numberOfValues}\n isCollapsed={this.isCollapsed}\n />\n )}\n </FacetGuard>\n );\n }\n\n private renderBody() {\n if (this.isCollapsed) {\n return;\n }\n return [this.renderValues(), this.renderShowMoreLess()];\n }\n\n private renderValuesContainer(children: VNode[], query?: string) {\n const classes = `mt-3 ${\n this.displayValuesAs === 'box' ? 'box-container' : ''\n }`;\n return (\n <FacetValuesGroup\n i18n={this.bindings.i18n}\n label={this.label}\n query={query}\n >\n <ul class={classes} part=\"values\">\n {children}\n </ul>\n </FacetValuesGroup>\n );\n }\n\n private renderValues() {\n return this.renderValuesContainer(\n this.facet.state.values.map((value, i) => {\n const shouldFocusOnShowLessAfterInteraction = i === 0;\n const shouldFocusOnShowMoreAfterInteraction =\n i ===\n (this.sortCriteria === 'automatic'\n ? 0\n : this.facetState.values.length - 1);\n\n return (\n <FacetValue\n {...this.facetValueProps}\n facetCount={value.numberOfResults}\n onExclude={() => this.facet.toggleExclude(value)}\n onSelect={() =>\n this.displayValuesAs === 'link'\n ? this.facet.toggleSingleSelect(value)\n : this.facet.toggleSelect(value)\n }\n facetValue={value.value}\n facetState={value.state}\n setRef={(btn) => {\n if (shouldFocusOnShowLessAfterInteraction) {\n this.showLessFocus?.setTarget(btn);\n }\n if (shouldFocusOnShowMoreAfterInteraction) {\n this.showMoreFocus?.setTarget(btn);\n }\n }}\n />\n );\n })\n );\n }\n\n private renderShowMoreLess() {\n return (\n <FacetShowMoreLess\n label={this.label}\n i18n={this.bindings.i18n}\n onShowMore={() => {\n this.focusTargets.showMore.focusAfterSearch();\n this.facet.showMoreValues();\n }}\n onShowLess={() => {\n this.focusTargets.showLess.focusAfterSearch();\n this.facet.showLessValues();\n }}\n canShowMoreValues={this.facet.state.canShowMoreValues}\n canShowLessValues={this.facet.state.canShowLessValues}\n ></FacetShowMoreLess>\n );\n }\n\n private get activeValues() {\n return this.facet.state.values.filter(({state}) => state !== 'idle');\n }\n\n private get facetValueProps(): Pick<\n FacetValueProps,\n | 'displayValuesAs'\n | 'facetSearchQuery'\n | 'enableExclusion'\n | 'field'\n | 'i18n'\n > {\n return {\n facetSearchQuery: this.facetState.facetSearch.query,\n displayValuesAs: this.displayValuesAs,\n enableExclusion: this.enableExclusion,\n field: this.field,\n i18n: this.bindings.i18n,\n };\n }\n\n private initAriaLive() {\n announceFacetSearchResultsWithAriaLive(\n this.facet,\n this.label,\n (msg) => (this.facetSearchAriaMessage = msg),\n this.bindings.i18n\n );\n }\n\n private initConditionManager() {\n this.facetConditionsManager = buildInsightFacetConditionsManager(\n this.bindings.engine,\n {\n facetId: this.facetId!,\n conditions: parseDependsOn<\n InsightFacetValueRequest | InsightCategoryFacetValueRequest\n >(this.dependsOn),\n }\n );\n }\n\n private initPopover() {\n initializePopover(this.host, {\n ...this.facetInfo,\n hasValues: () => !!this.facet.state.values.length,\n numberOfActiveValues: () => this.activeValues.length,\n });\n }\n\n private get isHidden() {\n return !this.facet.state.enabled || !this.facet.state.values.length;\n }\n\n private get facetInfo(): FacetInfo {\n return {\n label: () => this.bindings.i18n.t(this.label),\n facetId: this.facetId!,\n element: this.host,\n isHidden: () => this.isHidden,\n };\n }\n\n private registerFacet() {\n this.bindings.store.registerFacet('facets', this.facetInfo);\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"atomic-insight-facet.entry.cjs.js","mappings":"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","names":["getFieldValueCaption","h","FacetValueCheckbox","FacetValueLabelHighlight","FacetValueLink","FacetValueBox","buildInsightFacet","buildInsightSearchStatus","FocusTargetController","FacetGuard","FacetContainer","FacetHeader","FacetPlaceholder","FacetValuesGroup","FacetShowMoreLess","announceFacetSearchResultsWithAriaLive","buildInsightFacetConditionsManager","parseDependsOn","initializePopover","InitializeBindings","BindStateToController","AriaLiveRegion"],"sources":["src/components/common/facets/facet-value/stencil-facet-value.tsx","src/components/insight/atomic-insight-facet/atomic-insight-facet.pcss?tag=atomic-insight-facet&encapsulation=shadow","src/components/insight/atomic-insight-facet/atomic-insight-facet.tsx"],"sourcesContent":["import {FunctionalComponent, h} from '@stencil/core';\nimport {i18n} from 'i18next';\nimport {getFieldValueCaption} from '../../../../utils/field-utils';\nimport {FacetValueBox} from '../facet-value-box/stencil-facet-value-box';\nimport {FacetValueCheckbox} from '../facet-value-checkbox/stencil-facet-value-checkbox';\nimport {FacetValueLabelHighlight} from '../facet-value-label-highlight/stencil-facet-value-label-highlight';\nimport {FacetValueLink} from '../facet-value-link/stencil-facet-value-link';\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport interface FacetValueProps {\n field: string;\n facetValue: string;\n facetCount: number;\n facetState: 'idle' | 'selected' | 'excluded';\n i18n: i18n;\n enableExclusion: boolean;\n onExclude: () => void;\n onSelect: () => void;\n displayValuesAs: 'checkbox' | 'link' | 'box';\n facetSearchQuery: string;\n setRef?: (btn?: HTMLButtonElement) => void;\n}\n\n/**\n * @deprecated should only be used for Stencil components.\n */\nexport const FacetValue: FunctionalComponent<FacetValueProps> = ({\n facetSearchQuery,\n displayValuesAs,\n enableExclusion,\n facetCount,\n facetState,\n facetValue,\n field,\n i18n,\n onExclude,\n onSelect,\n setRef,\n}) => {\n const displayValue = getFieldValueCaption(field, facetValue, i18n);\n const isSelected = facetState === 'selected';\n const isExcluded = facetState === 'excluded';\n const triStateProps = enableExclusion\n ? {\n onExclude,\n state: facetState,\n }\n : {};\n switch (displayValuesAs) {\n case 'checkbox':\n return (\n <FacetValueCheckbox\n {...triStateProps}\n displayValue={displayValue}\n numberOfResults={facetCount}\n isSelected={isSelected}\n i18n={i18n}\n onClick={onSelect}\n searchQuery={facetSearchQuery}\n buttonRef={(element) => {\n setRef && setRef(element);\n }}\n >\n <FacetValueLabelHighlight\n displayValue={displayValue}\n isSelected={isSelected}\n isExcluded={isExcluded}\n searchQuery={facetSearchQuery}\n ></FacetValueLabelHighlight>\n </FacetValueCheckbox>\n );\n case 'link':\n return (\n <FacetValueLink\n displayValue={displayValue}\n numberOfResults={facetCount}\n isSelected={isSelected}\n i18n={i18n}\n onClick={onSelect}\n searchQuery={facetSearchQuery}\n buttonRef={(element) => {\n setRef && setRef(element);\n }}\n >\n <FacetValueLabelHighlight\n displayValue={displayValue}\n isSelected={isSelected}\n searchQuery={facetSearchQuery}\n ></FacetValueLabelHighlight>\n </FacetValueLink>\n );\n case 'box':\n return (\n <FacetValueBox\n displayValue={displayValue}\n numberOfResults={facetCount}\n isSelected={isSelected}\n i18n={i18n}\n onClick={onSelect}\n searchQuery={facetSearchQuery}\n buttonRef={(element) => {\n setRef && setRef(element);\n }}\n >\n <FacetValueLabelHighlight\n displayValue={displayValue}\n isSelected={isSelected}\n searchQuery={facetSearchQuery}\n ></FacetValueLabelHighlight>\n </FacetValueBox>\n );\n }\n};\n","@import '../../common/facets/facet-common.pcss';\n@import '../../common/facets/facet-search/facet-search.pcss';\n@import '../../common/facets/facet-value-checkbox/facet-value-checkbox.pcss';\n@import '../../common/facets/facet-value-exclude/facet-value-exclude.pcss';\n@import '../../common/facets/facet-value-box/facet-value-box.pcss';\n","import {FacetResultsMustMatch} from '@coveo/headless';\nimport {\n buildFacet as buildInsightFacet,\n buildFacetConditionsManager as buildInsightFacetConditionsManager,\n buildSearchStatus as buildInsightSearchStatus,\n CategoryFacetValueRequest as InsightCategoryFacetValueRequest,\n Facet as InsightFacet,\n FacetConditionsManager as InsightFacetConditionsManager,\n FacetOptions as InsightFacetOptions,\n FacetSortCriterion as InsightFacetSortCriterion,\n FacetState as InsightFacetState,\n FacetValueRequest as InsightFacetValueRequest,\n SearchStatus as InsightSearchStatus,\n SearchStatusState as InsightSearchStatusState,\n} from '@coveo/headless/insight';\nimport {Component, h, State, Prop, Element, VNode} from '@stencil/core';\nimport {\n BindStateToController,\n InitializableComponent,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {\n AriaLiveRegion,\n FocusTargetController,\n} from '../../../utils/stencil-accessibility-utils';\nimport {parseDependsOn} from '../../common/facets/depends-on';\nimport {FacetInfo} from '../../common/facets/facet-common-store';\nimport {FacetContainer} from '../../common/facets/facet-container/stencil-facet-container';\nimport {FacetGuard} from '../../common/facets/stencil-facet-guard';\nimport {FacetHeader} from '../../common/facets/facet-header/stencil-facet-header';\nimport {FacetPlaceholder} from '../../common/facets/facet-placeholder/stencil-facet-placeholder';\nimport {announceFacetSearchResultsWithAriaLive} from '../../common/facets/facet-search/facet-search-aria-live';\nimport {FacetShowMoreLess} from '../../common/facets/facet-show-more-less/stencil-facet-show-more-less';\nimport {\n FacetValueProps,\n FacetValue,\n} from '../../common/facets/facet-value/stencil-facet-value';\nimport {FacetValuesGroup} from '../../common/facets/facet-values-group/stencil-facet-values-group';\nimport {initializePopover} from '../../common/facets/popover/popover-type';\nimport {InsightBindings} from '../atomic-insight-interface/atomic-insight-interface';\n\n/**\n * @internal\n */\n@Component({\n tag: 'atomic-insight-facet',\n styleUrl: 'atomic-insight-facet.pcss',\n shadow: true,\n})\nexport class AtomicInsightFacet\n implements InitializableComponent<InsightBindings>\n{\n @InitializeBindings() public bindings!: InsightBindings;\n public facet!: InsightFacet;\n public searchStatus!: InsightSearchStatus;\n public dependsOn = {};\n @Element() private host!: HTMLElement;\n\n @BindStateToController('facet')\n @State()\n public facetState!: InsightFacetState;\n @BindStateToController('searchStatus')\n @State()\n public searchStatusState!: InsightSearchStatusState;\n @State() public error!: Error;\n\n /**\n * Specifies a unique identifier for the facet.\n */\n @Prop({mutable: true, reflect: true}) public facetId?: string;\n /**\n * The non-localized label for the facet.\n */\n @Prop({reflect: true}) public label = 'no-label';\n /**\n * The field whose values you want to display in the facet.\n */\n @Prop({reflect: true}) public field!: string;\n /**\n * The number of values to request for this facet.\n * Also determines the number of additional values to request each time more values are shown.\n */\n @Prop({reflect: true}) public numberOfValues = 8;\n /**\n * The sort criterion to apply to the returned facet values.\n * Possible values are 'score', 'alphanumeric', 'alphanumericDescending', 'occurrences', alphanumericNatural', 'alphanumericNaturalDescending' and 'automatic'.\n */\n @Prop({reflect: true}) public sortCriteria: InsightFacetSortCriterion =\n 'automatic';\n /**\n * Specifies how a result must match the selected facet values.\n * Allowed values:\n * - `atLeastOneValue`: A result will match if at least one of the corresponding facet values is selected.\n * - `allValues`: A result will match if all corresponding facet values are selected.\n */\n @Prop({reflect: true}) public resultsMustMatch: FacetResultsMustMatch =\n 'atLeastOneValue';\n /**\n * Whether to display the facet values as checkboxes (multiple selection), links (single selection) or boxes (multiple selection).\n * Possible values are 'checkbox', 'link', and 'box'.\n */\n @Prop({reflect: true}) public displayValuesAs: 'checkbox' | 'link' | 'box' =\n 'checkbox';\n /**\n * Specifies if the facet is collapsed.\n */\n @Prop({reflect: true, mutable: true}) public isCollapsed = false;\n /**\n * The [heading level](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements) to use for the heading over the facet, from 1 to 6.\n */\n @Prop({reflect: true}) public headingLevel = 0;\n /**\n * Whether to exclude the parents of folded results when estimating the result count for each facet value.\n *\n *\n * Note: Resulting count is only an estimation, in some cases this value could be incorrect.\n */\n @Prop({reflect: true}) public filterFacetCount = true;\n /**\n * The maximum number of results to scan in the index to ensure that the facet lists all potential facet values.\n * Note: A high injectionDepth may negatively impact the facet request performance.\n * Minimum: `0`\n * Default: `1000`\n */\n @Prop() public injectionDepth = 1000;\n /**\n * Whether to allow excluding values from the facet.\n */\n @Prop({reflect: true}) public enableExclusion = false;\n\n private showLessFocus?: FocusTargetController;\n private showMoreFocus?: FocusTargetController;\n private headerFocus?: FocusTargetController;\n private facetConditionsManager?: InsightFacetConditionsManager;\n\n @AriaLiveRegion('facet-search')\n protected facetSearchAriaMessage!: string;\n\n public initialize() {\n const options: InsightFacetOptions = {\n facetId: this.facetId,\n field: this.field,\n numberOfValues: this.numberOfValues,\n sortCriteria: this.sortCriteria,\n facetSearch: {numberOfValues: this.numberOfValues},\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n };\n\n this.facet = buildInsightFacet(this.bindings.engine, {options});\n this.facetId = this.facet.state.facetId;\n this.searchStatus = buildInsightSearchStatus(this.bindings.engine);\n this.initAriaLive();\n this.initConditionManager();\n this.initPopover();\n this.registerFacet();\n }\n\n private get focusTargets(): {\n showLess: FocusTargetController;\n showMore: FocusTargetController;\n header: FocusTargetController;\n } {\n if (!this.showLessFocus) {\n this.showLessFocus = new FocusTargetController(this);\n }\n if (!this.showMoreFocus) {\n this.showMoreFocus = new FocusTargetController(this);\n }\n if (!this.headerFocus) {\n this.headerFocus = new FocusTargetController(this);\n }\n return {\n showLess: this.showLessFocus,\n showMore: this.showMoreFocus,\n header: this.headerFocus,\n };\n }\n\n public disconnectedCallback() {\n if (this.host.isConnected) {\n return;\n }\n this.facetConditionsManager?.stopWatching();\n }\n\n public render() {\n return (\n <FacetGuard\n enabled={this.facetState.enabled}\n hasError={this.searchStatusState.hasError}\n firstSearchExecuted={this.searchStatusState.firstSearchExecuted}\n hasResults={this.facetState.values.length > 0}\n >\n {this.searchStatusState.firstSearchExecuted ? (\n <FacetContainer>\n <FacetHeader\n i18n={this.bindings.i18n}\n label={this.label}\n onClearFilters={() => {\n this.focusTargets.header.focusAfterSearch();\n this.facet.deselectAll();\n }}\n numberOfActiveValues={this.activeValues.length}\n isCollapsed={this.isCollapsed}\n headingLevel={this.headingLevel}\n onToggleCollapse={() => (this.isCollapsed = !this.isCollapsed)}\n headerRef={(el) => this.focusTargets.header.setTarget(el)}\n ></FacetHeader>\n {this.renderBody()}\n </FacetContainer>\n ) : (\n <FacetPlaceholder\n numberOfValues={this.numberOfValues}\n isCollapsed={this.isCollapsed}\n />\n )}\n </FacetGuard>\n );\n }\n\n private renderBody() {\n if (this.isCollapsed) {\n return;\n }\n return [this.renderValues(), this.renderShowMoreLess()];\n }\n\n private renderValuesContainer(children: VNode[], query?: string) {\n const classes = `mt-3 ${\n this.displayValuesAs === 'box' ? 'box-container' : ''\n }`;\n return (\n <FacetValuesGroup\n i18n={this.bindings.i18n}\n label={this.label}\n query={query}\n >\n <ul class={classes} part=\"values\">\n {children}\n </ul>\n </FacetValuesGroup>\n );\n }\n\n private renderValues() {\n return this.renderValuesContainer(\n this.facet.state.values.map((value, i) => {\n const shouldFocusOnShowLessAfterInteraction = i === 0;\n const shouldFocusOnShowMoreAfterInteraction =\n i ===\n (this.sortCriteria === 'automatic'\n ? 0\n : this.facetState.values.length - 1);\n\n return (\n <FacetValue\n {...this.facetValueProps}\n facetCount={value.numberOfResults}\n onExclude={() => this.facet.toggleExclude(value)}\n onSelect={() =>\n this.displayValuesAs === 'link'\n ? this.facet.toggleSingleSelect(value)\n : this.facet.toggleSelect(value)\n }\n facetValue={value.value}\n facetState={value.state}\n setRef={(btn) => {\n if (shouldFocusOnShowLessAfterInteraction) {\n this.showLessFocus?.setTarget(btn);\n }\n if (shouldFocusOnShowMoreAfterInteraction) {\n this.showMoreFocus?.setTarget(btn);\n }\n }}\n />\n );\n })\n );\n }\n\n private renderShowMoreLess() {\n return (\n <FacetShowMoreLess\n label={this.label}\n i18n={this.bindings.i18n}\n onShowMore={() => {\n this.focusTargets.showMore.focusAfterSearch();\n this.facet.showMoreValues();\n }}\n onShowLess={() => {\n this.focusTargets.showLess.focusAfterSearch();\n this.facet.showLessValues();\n }}\n canShowMoreValues={this.facet.state.canShowMoreValues}\n canShowLessValues={this.facet.state.canShowLessValues}\n ></FacetShowMoreLess>\n );\n }\n\n private get activeValues() {\n return this.facet.state.values.filter(({state}) => state !== 'idle');\n }\n\n private get facetValueProps(): Pick<\n FacetValueProps,\n | 'displayValuesAs'\n | 'facetSearchQuery'\n | 'enableExclusion'\n | 'field'\n | 'i18n'\n > {\n return {\n facetSearchQuery: this.facetState.facetSearch.query,\n displayValuesAs: this.displayValuesAs,\n enableExclusion: this.enableExclusion,\n field: this.field,\n i18n: this.bindings.i18n,\n };\n }\n\n private initAriaLive() {\n announceFacetSearchResultsWithAriaLive(\n this.facet,\n this.label,\n (msg) => (this.facetSearchAriaMessage = msg),\n this.bindings.i18n\n );\n }\n\n private initConditionManager() {\n this.facetConditionsManager = buildInsightFacetConditionsManager(\n this.bindings.engine,\n {\n facetId: this.facetId!,\n conditions: parseDependsOn<\n InsightFacetValueRequest | InsightCategoryFacetValueRequest\n >(this.dependsOn),\n }\n );\n }\n\n private initPopover() {\n initializePopover(this.host, {\n ...this.facetInfo,\n hasValues: () => !!this.facet.state.values.length,\n numberOfActiveValues: () => this.activeValues.length,\n });\n }\n\n private get isHidden() {\n return !this.facet.state.enabled || !this.facet.state.values.length;\n }\n\n private get facetInfo(): FacetInfo {\n return {\n label: () => this.bindings.i18n.t(this.label),\n facetId: this.facetId!,\n element: this.host,\n isHidden: () => this.isHidden,\n };\n }\n\n private registerFacet() {\n this.bindings.store.registerFacet('facets', this.facetInfo);\n }\n}\n"],"version":3}
|
|
@@ -10,7 +10,7 @@ const propsUtils = require('./props-utils-83b80e92.js');
|
|
|
10
10
|
const stencilAccessibilityUtils = require('./stencil-accessibility-utils-01e53a37.js');
|
|
11
11
|
const utils = require('./utils-18c09278.js');
|
|
12
12
|
const dependsOn = require('./depends-on-f0cf3617.js');
|
|
13
|
-
const
|
|
13
|
+
const stencilFacetPlaceholder = require('./stencil-facet-placeholder-d3c0a675.js');
|
|
14
14
|
const stencilFacetGuard = require('./stencil-facet-guard-1da0cf4c.js');
|
|
15
15
|
const stencilValuesContainer = require('./stencil-values-container-b6b48663.js');
|
|
16
16
|
const popoverType = require('./popover-type-b1385b27.js');
|
|
@@ -260,7 +260,7 @@ const AtomicInsightNumericFacet = class {
|
|
|
260
260
|
}
|
|
261
261
|
render() {
|
|
262
262
|
const { searchStatusState: { firstSearchExecuted, hasError }, bindings: { i18n }, label, numberOfSelectedValues, isCollapsed, headingLevel, focusTarget, withInput, filter, } = this;
|
|
263
|
-
return (index.h(stencilFacetGuard.FacetGuard, { key: '
|
|
263
|
+
return (index.h(stencilFacetGuard.FacetGuard, { key: '84f58d867de49e223fe81e833b50ce15fd972415', enabled: this.enabled, firstSearchExecuted: firstSearchExecuted, hasError: hasError, hasResults: this.shouldRenderFacet }, firstSearchExecuted ? (index.h(stencilFacetPlaceholder.FacetContainer, null, index.h(stencilFacetPlaceholder.FacetHeader, { i18n: i18n, label: label, onClearFilters: () => {
|
|
264
264
|
focusTarget.focusAfterSearch();
|
|
265
265
|
if (this.filterState?.range) {
|
|
266
266
|
this.filter?.clear();
|
|
@@ -270,7 +270,7 @@ const AtomicInsightNumericFacet = class {
|
|
|
270
270
|
}, numberOfActiveValues: numberOfSelectedValues, isCollapsed: isCollapsed, headingLevel: headingLevel, onToggleCollapse: () => (this.isCollapsed = !this.isCollapsed), headerRef: (el) => focusTarget.setTarget(el) }), !isCollapsed && [
|
|
271
271
|
this.shouldRenderValues && this.renderValues(),
|
|
272
272
|
this.shouldRenderInput && (index.h("atomic-facet-number-input", { type: withInput, bindings: this.bindings, label: label, filter: filter, filterState: filter.state })),
|
|
273
|
-
])) : (index.h(
|
|
273
|
+
])) : (index.h(stencilFacetPlaceholder.FacetPlaceholder, { isCollapsed: this.isCollapsed, numberOfValues: this.numberOfValues }))));
|
|
274
274
|
}
|
|
275
275
|
renderValues() {
|
|
276
276
|
const { displayValuesAs, field, manualRanges, label, bindings: { i18n, engine: { logger }, }, } = this;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"atomic-insight-numeric-facet.entry.cjs.js","mappings":"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","names":["defaultNumberFormatter","FocusTargetController","buildInsightNumericFacet","buildInsightNumericRange","buildInsightNumericFilter","buildInsightFacetConditionsManager","parseDependsOn","buildInsightSearchStatus","formatHumanReadable","initializePopover","loadInsightNumericFacetSetActions","h","FacetGuard","FacetContainer","FacetHeader","FacetPlaceholder","NumericFacetValuesContainer","NumericFacetValueLink","shouldDisplayInputForFacetRange","randomID","Schema","StringValue","InitializeBindings","BindStateToController","MapProp"],"sources":["src/components/insight/atomic-insight-numeric-facet/atomic-insight-numeric-facet.pcss?tag=atomic-insight-numeric-facet&encapsulation=shadow","src/components/insight/atomic-insight-numeric-facet/atomic-insight-numeric-facet.tsx"],"sourcesContent":["@import '../../common/facets/numeric-facet-common.pcss';\n","import {Schema, StringValue} from '@coveo/bueno';\nimport {\n buildFacetConditionsManager as buildInsightFacetConditionsManager,\n buildNumericFacet as buildInsightNumericFacet,\n buildNumericFilter as buildInsightNumericFilter,\n buildNumericRange as buildInsightNumericRange,\n buildSearchStatus as buildInsightSearchStatus,\n CategoryFacetValueRequest as InsightCategoryFacetValueRequest,\n FacetConditionsManager as InsightFacetConditionsManager,\n FacetValueRequest as InsightFacetValueRequest,\n NumericFacet as InsightNumericFacet,\n NumericFacetState as InsightNumericFacetState,\n NumericFilter as InsightNumericFilter,\n NumericFilterState as InsightNumericFilterState,\n NumericRangeRequest as InsightNumericRangeRequest,\n RangeFacetRangeAlgorithm as InsightRangeFacetRangeAlgorithm,\n RangeFacetSortCriterion as InsightRangeFacetSortCriterion,\n SearchStatus as InsightSearchStatus,\n SearchStatusState as InsightSearchStatusState,\n loadNumericFacetSetActions as loadInsightNumericFacetSetActions,\n} from '@coveo/headless/insight';\nimport {Component, Element, h, Listen, Prop, State} from '@stencil/core';\nimport {\n BindStateToController,\n InitializableComponent,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {MapProp} from '../../../utils/props-utils';\nimport {FocusTargetController} from '../../../utils/stencil-accessibility-utils';\nimport {randomID} from '../../../utils/utils';\nimport {parseDependsOn} from '../../common/facets/depends-on';\nimport {FacetInfo} from '../../common/facets/facet-common-store';\nimport {FacetContainer} from '../../common/facets/facet-container/stencil-facet-container';\nimport {FacetGuard} from '../../common/facets/stencil-facet-guard';\nimport {FacetHeader} from '../../common/facets/facet-header/stencil-facet-header';\nimport {NumberInputType} from '../../common/facets/facet-number-input/number-input-type';\nimport {FacetPlaceholder} from '../../common/facets/facet-placeholder/facet-placeholder';\nimport {formatHumanReadable} from '../../common/facets/numeric-facet/formatter';\nimport {NumericFacetValueLink} from '../../common/facets/numeric-facet/stencil-value-link';\nimport {NumericFacetValuesContainer} from '../../common/facets/numeric-facet/stencil-values-container';\nimport {initializePopover} from '../../common/facets/popover/popover-type';\nimport {shouldDisplayInputForFacetRange} from '../../common/facets/stencil-facet-common';\nimport {\n defaultNumberFormatter,\n NumberFormatter,\n} from '../../common/formats/format-common';\nimport {InsightBindings} from '../atomic-insight-interface/atomic-insight-interface';\n\n/**\n * @internal\n */\n@Component({\n tag: 'atomic-insight-numeric-facet',\n styleUrl: './atomic-insight-numeric-facet.pcss',\n shadow: true,\n})\nexport class AtomicInsightNumericFacet\n implements InitializableComponent<InsightBindings>\n{\n @InitializeBindings() public bindings!: InsightBindings;\n public facetForRange?: InsightNumericFacet;\n public facetForInput?: InsightNumericFacet;\n public filter?: InsightNumericFilter;\n public searchStatus!: InsightSearchStatus;\n private manualRanges: (InsightNumericRangeRequest & {label?: string})[] = [];\n private dependenciesManager?: InsightFacetConditionsManager;\n\n @Element() private host!: HTMLElement;\n private formatter: NumberFormatter = defaultNumberFormatter;\n @BindStateToController('facetForRange')\n @State()\n public facetState!: InsightNumericFacetState;\n @BindStateToController('filter')\n @State()\n public filterState?: InsightNumericFilterState;\n @BindStateToController('searchStatus')\n @State()\n public searchStatusState!: InsightSearchStatusState;\n @State() public error!: Error;\n @BindStateToController('facetForInput')\n @State()\n public facetForInputState?: InsightNumericFacetState;\n\n /**\n * Specifies a unique identifier for the facet.\n */\n @Prop({mutable: true, reflect: true}) public facetId?: string;\n /**\n * The non-localized label for the facet.\n * Used in the `atomic-breadbox` component through the bindings store.\n */\n @Prop({reflect: true}) public label = 'no-label';\n /**\n * The field whose values you want to display in the facet.\n */\n @Prop({reflect: true}) public field!: string;\n /**\n * The number of values to request for this facet, when there are no manual ranges.\n * If the number of values is 0, no ranges will be displayed.\n */\n @Prop({reflect: true}) public numberOfValues = 8;\n /**\n * Whether this facet should contain an input allowing users to set custom ranges.\n * Depending on the field, the input can allow either decimal or integer values.\n */\n @Prop({reflect: true}) public withInput?: NumberInputType;\n /**\n * The sort criterion to apply to the returned facet values.\n * Possible values are 'ascending' and 'descending'.\n */\n @Prop({reflect: true}) public sortCriteria: InsightRangeFacetSortCriterion =\n 'ascending';\n /**\n * The algorithm that's used for generating the ranges of this facet when they aren't manually defined. The default value of `\"equiprobable\"` generates facet ranges which vary in size but have a more balanced number of results within each range. The value of `\"even\"` generates equally sized facet ranges across all of the results.\n */\n @Prop({reflect: true})\n public rangeAlgorithm: InsightRangeFacetRangeAlgorithm = 'equiprobable';\n /**\n * Whether to display the facet values as checkboxes (multiple selection) or links (single selection).\n * Possible values are 'checkbox' and 'link'.\n */\n @Prop({reflect: true}) public displayValuesAs: 'checkbox' | 'link' =\n 'checkbox';\n /**\n * Specifies if the facet is collapsed.\n */\n @Prop({reflect: true, mutable: true}) public isCollapsed = false;\n /**\n * The [heading level](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements) to use for the heading over the facet, from 1 to 6.\n */\n @Prop({reflect: true}) public headingLevel = 0;\n /**\n * Whether to exclude the parents of folded results when estimating the result count for each facet value.\n *\n *\n * Note: Resulting count is only an estimation, in some cases this value could be incorrect.\n */\n @Prop({reflect: true}) public filterFacetCount = true;\n /**\n * The maximum number of results to scan in the index to ensure that the facet lists all potential facet values.\n * Note: A high injectionDepth may negatively impact the facet request performance.\n * Minimum: `0`\n * Default: `1000`\n */\n @Prop({reflect: true}) public injectionDepth = 1000;\n\n /**\n * The required facets and values for this facet to be displayed.\n * Examples:\n * ```html\n * <atomic-insight-facet facet-id=\"abc\" field=\"objecttype\" ...></atomic-insight-facet>\n *\n * <!-- To show the facet when any value is selected in the facet with id \"abc\": -->\n * <atomic-insight-numeric-facet\n * depends-on-abc\n * ...\n * ></atomic-insight-numeric-facet>\n *\n * <!-- To show the facet when value \"doc\" is selected in the facet with id \"abc\": -->\n * <atomic-insight-numeric-facet\n * depends-on-abc=\"doc\"\n * ...\n * ></atomic-insight-numeric-facet>\n * ```\n */\n @MapProp() @Prop() public dependsOn: Record<string, string> = {};\n\n private headerFocus?: FocusTargetController;\n\n public initialize() {\n this.validateProps();\n this.computeFacetId();\n this.initializeFacetForInput();\n this.initializeFacetForRange();\n this.initializeFilter();\n this.initializeDependenciesManager();\n this.initializeSearchStatus();\n this.registerFacetToStore();\n }\n\n private get focusTarget(): FocusTargetController {\n if (!this.headerFocus) {\n this.headerFocus = new FocusTargetController(this);\n }\n return this.headerFocus;\n }\n\n public disconnectedCallback() {\n if (this.host.isConnected) {\n return;\n }\n this.dependenciesManager?.stopWatching();\n }\n\n private initializeFacetForInput() {\n if (!this.withInput) {\n return;\n }\n this.facetForInput = buildInsightNumericFacet(this.bindings.engine, {\n options: {\n facetId: `${this.facetId}_input_range`,\n numberOfValues: 1,\n generateAutomaticRanges: true,\n field: this.field,\n sortCriteria: this.sortCriteria,\n rangeAlgorithm: this.rangeAlgorithm,\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n },\n });\n\n return this.facetForInput;\n }\n\n private initializeFacetForRange() {\n if (this.numberOfValues <= 0) {\n return;\n }\n\n this.manualRanges = Array.from(\n this.host.querySelectorAll('atomic-numeric-range')\n ).map(({start, end, endInclusive, label}) => ({\n ...buildInsightNumericRange({start, end, endInclusive}),\n label,\n }));\n\n this.facetForRange = buildInsightNumericFacet(this.bindings.engine, {\n options: {\n facetId: this.facetId,\n field: this.field,\n numberOfValues: this.numberOfValues,\n sortCriteria: this.sortCriteria,\n rangeAlgorithm: this.rangeAlgorithm,\n currentValues: this.manualRanges,\n generateAutomaticRanges: !this.manualRanges.length,\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n },\n });\n\n return this.facetForRange;\n }\n\n private initializeFilter() {\n if (!this.withInput) {\n return;\n }\n\n this.filter = buildInsightNumericFilter(this.bindings.engine, {\n options: {\n facetId: `${this.facetId}_input`,\n field: this.field,\n },\n });\n }\n\n private initializeDependenciesManager() {\n this.dependenciesManager = buildInsightFacetConditionsManager(\n this.bindings.engine,\n {\n facetId:\n this.facetForRange?.state.facetId ?? this.filter!.state.facetId,\n conditions: parseDependsOn<\n InsightFacetValueRequest | InsightCategoryFacetValueRequest\n >(this.dependsOn),\n }\n );\n }\n\n private initializeSearchStatus() {\n this.searchStatus = buildInsightSearchStatus(this.bindings.engine);\n }\n\n private registerFacetToStore() {\n const facetInfo: FacetInfo = {\n label: () => this.bindings.i18n.t(this.label),\n facetId: this.facetId!,\n element: this.host,\n isHidden: () => this.isHidden,\n };\n\n this.bindings.store.registerFacet('numericFacets', {\n ...facetInfo,\n format: (value) =>\n formatHumanReadable({\n facetValue: value,\n logger: this.bindings.engine.logger,\n i18n: this.bindings.i18n,\n field: this.field,\n manualRanges: this.manualRanges,\n formatter: this.formatter,\n }),\n });\n\n initializePopover(this.host, {\n ...facetInfo,\n hasValues: () => this.hasValues,\n numberOfActiveValues: () => this.numberOfSelectedValues,\n });\n\n if (this.filter) {\n this.bindings.store.state.numericFacets[this.filter.state.facetId] =\n this.bindings.store.state.numericFacets[this.facetId!];\n }\n }\n\n @Listen('atomic/numberFormat')\n public setFormat(event: CustomEvent<NumberFormatter>) {\n event.preventDefault();\n event.stopPropagation();\n this.formatter = event.detail;\n }\n\n @Listen('atomic/numberInputApply')\n public applyNumberInput() {\n this.facetId &&\n this.bindings.engine.dispatch(\n loadInsightNumericFacetSetActions(\n this.bindings.engine\n ).deselectAllNumericFacetValues(this.facetId)\n );\n }\n\n public render() {\n const {\n searchStatusState: {firstSearchExecuted, hasError},\n bindings: {i18n},\n label,\n numberOfSelectedValues,\n isCollapsed,\n headingLevel,\n focusTarget,\n withInput,\n filter,\n } = this;\n return (\n <FacetGuard\n enabled={this.enabled}\n firstSearchExecuted={firstSearchExecuted}\n hasError={hasError}\n hasResults={this.shouldRenderFacet}\n >\n {firstSearchExecuted ? (\n <FacetContainer>\n <FacetHeader\n i18n={i18n}\n label={label}\n onClearFilters={() => {\n focusTarget.focusAfterSearch();\n if (this.filterState?.range) {\n this.filter?.clear();\n return;\n }\n this.facetForRange?.deselectAll();\n }}\n numberOfActiveValues={numberOfSelectedValues}\n isCollapsed={isCollapsed}\n headingLevel={headingLevel}\n onToggleCollapse={() => (this.isCollapsed = !this.isCollapsed)}\n headerRef={(el) => focusTarget.setTarget(el)}\n />\n {!isCollapsed && [\n this.shouldRenderValues && this.renderValues(),\n this.shouldRenderInput && (\n <atomic-facet-number-input\n type={withInput!}\n bindings={this.bindings}\n label={label}\n filter={filter!}\n filterState={filter!.state}\n ></atomic-facet-number-input>\n ),\n ]}\n </FacetContainer>\n ) : (\n <FacetPlaceholder\n isCollapsed={this.isCollapsed}\n numberOfValues={this.numberOfValues}\n />\n )}\n </FacetGuard>\n );\n }\n\n private renderValues() {\n const {\n displayValuesAs,\n field,\n manualRanges,\n label,\n bindings: {\n i18n,\n engine: {logger},\n },\n } = this;\n\n return (\n <NumericFacetValuesContainer i18n={i18n} label={label}>\n {this.valuesToRender.map((value) => (\n <NumericFacetValueLink\n formatter={this.formatter}\n displayValuesAs={displayValuesAs}\n facetValue={value}\n field={field}\n i18n={i18n}\n logger={logger}\n manualRanges={manualRanges}\n onClick={() =>\n this.displayValuesAs === 'link'\n ? this.facetForRange!.toggleSingleSelect(value)\n : this.facetForRange!.toggleSelect(value)\n }\n />\n ))}\n </NumericFacetValuesContainer>\n );\n }\n\n private get numberOfSelectedValues() {\n if (this.filter?.state.range) {\n return 1;\n }\n\n return (\n this.facetForRange?.state.values.filter(({state}) => state === 'selected')\n .length || 0\n );\n }\n\n private get shouldRenderValues() {\n return (\n !this.hasInputRange &&\n this.numberOfValues > 0 &&\n !!this.valuesToRender.length\n );\n }\n\n private get hasInputRange() {\n return !!this.filter?.state.range;\n }\n\n private get valuesToRender() {\n return (\n this.facetForRange?.state.values.filter(\n (value) => value.numberOfResults || value.state !== 'idle'\n ) || []\n );\n }\n\n private get shouldRenderInput() {\n return shouldDisplayInputForFacetRange({\n hasInputRange: this.hasInputRange,\n searchStatusState: this.searchStatusState,\n facetValues: this.facetForInput?.state.values || [],\n hasInput: !!this.withInput,\n });\n }\n\n private computeFacetId() {\n if (this.facetId) {\n return;\n }\n\n if (this.bindings.store.state.numericFacets[this.field]) {\n this.facetId = randomID(`${this.field}_`);\n }\n\n this.facetId = this.field;\n }\n\n private get isHidden() {\n return !this.shouldRenderFacet || !this.facetState.enabled;\n }\n\n private get shouldRenderFacet() {\n return this.shouldRenderInput || this.shouldRenderValues;\n }\n\n private get hasValues() {\n if (this.facetForInput?.state.values.length) {\n return true;\n }\n\n return !!this.valuesToRender.length;\n }\n\n private get enabled() {\n return this.facetState?.enabled ?? this.filter?.state.enabled ?? true;\n }\n\n private validateProps() {\n new Schema({\n displayValuesAs: new StringValue({constrainTo: ['checkbox', 'link']}),\n withInput: new StringValue({constrainTo: ['integer', 'decimal']}),\n }).validate({\n displayValuesAs: this.displayValuesAs,\n withInput: this.withInput,\n });\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"atomic-insight-numeric-facet.entry.cjs.js","mappings":"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","names":["defaultNumberFormatter","FocusTargetController","buildInsightNumericFacet","buildInsightNumericRange","buildInsightNumericFilter","buildInsightFacetConditionsManager","parseDependsOn","buildInsightSearchStatus","formatHumanReadable","initializePopover","loadInsightNumericFacetSetActions","h","FacetGuard","FacetContainer","FacetHeader","FacetPlaceholder","NumericFacetValuesContainer","NumericFacetValueLink","shouldDisplayInputForFacetRange","randomID","Schema","StringValue","InitializeBindings","BindStateToController","MapProp"],"sources":["src/components/insight/atomic-insight-numeric-facet/atomic-insight-numeric-facet.pcss?tag=atomic-insight-numeric-facet&encapsulation=shadow","src/components/insight/atomic-insight-numeric-facet/atomic-insight-numeric-facet.tsx"],"sourcesContent":["@import '../../common/facets/numeric-facet-common.pcss';\n","import {Schema, StringValue} from '@coveo/bueno';\nimport {\n buildFacetConditionsManager as buildInsightFacetConditionsManager,\n buildNumericFacet as buildInsightNumericFacet,\n buildNumericFilter as buildInsightNumericFilter,\n buildNumericRange as buildInsightNumericRange,\n buildSearchStatus as buildInsightSearchStatus,\n CategoryFacetValueRequest as InsightCategoryFacetValueRequest,\n FacetConditionsManager as InsightFacetConditionsManager,\n FacetValueRequest as InsightFacetValueRequest,\n NumericFacet as InsightNumericFacet,\n NumericFacetState as InsightNumericFacetState,\n NumericFilter as InsightNumericFilter,\n NumericFilterState as InsightNumericFilterState,\n NumericRangeRequest as InsightNumericRangeRequest,\n RangeFacetRangeAlgorithm as InsightRangeFacetRangeAlgorithm,\n RangeFacetSortCriterion as InsightRangeFacetSortCriterion,\n SearchStatus as InsightSearchStatus,\n SearchStatusState as InsightSearchStatusState,\n loadNumericFacetSetActions as loadInsightNumericFacetSetActions,\n} from '@coveo/headless/insight';\nimport {Component, Element, h, Listen, Prop, State} from '@stencil/core';\nimport {\n BindStateToController,\n InitializableComponent,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {MapProp} from '../../../utils/props-utils';\nimport {FocusTargetController} from '../../../utils/stencil-accessibility-utils';\nimport {randomID} from '../../../utils/utils';\nimport {parseDependsOn} from '../../common/facets/depends-on';\nimport {FacetInfo} from '../../common/facets/facet-common-store';\nimport {FacetContainer} from '../../common/facets/facet-container/stencil-facet-container';\nimport {FacetGuard} from '../../common/facets/stencil-facet-guard';\nimport {FacetHeader} from '../../common/facets/facet-header/stencil-facet-header';\nimport {NumberInputType} from '../../common/facets/facet-number-input/number-input-type';\nimport {FacetPlaceholder} from '../../common/facets/facet-placeholder/stencil-facet-placeholder';\nimport {formatHumanReadable} from '../../common/facets/numeric-facet/formatter';\nimport {NumericFacetValueLink} from '../../common/facets/numeric-facet/stencil-value-link';\nimport {NumericFacetValuesContainer} from '../../common/facets/numeric-facet/stencil-values-container';\nimport {initializePopover} from '../../common/facets/popover/popover-type';\nimport {shouldDisplayInputForFacetRange} from '../../common/facets/stencil-facet-common';\nimport {\n defaultNumberFormatter,\n NumberFormatter,\n} from '../../common/formats/format-common';\nimport {InsightBindings} from '../atomic-insight-interface/atomic-insight-interface';\n\n/**\n * @internal\n */\n@Component({\n tag: 'atomic-insight-numeric-facet',\n styleUrl: './atomic-insight-numeric-facet.pcss',\n shadow: true,\n})\nexport class AtomicInsightNumericFacet\n implements InitializableComponent<InsightBindings>\n{\n @InitializeBindings() public bindings!: InsightBindings;\n public facetForRange?: InsightNumericFacet;\n public facetForInput?: InsightNumericFacet;\n public filter?: InsightNumericFilter;\n public searchStatus!: InsightSearchStatus;\n private manualRanges: (InsightNumericRangeRequest & {label?: string})[] = [];\n private dependenciesManager?: InsightFacetConditionsManager;\n\n @Element() private host!: HTMLElement;\n private formatter: NumberFormatter = defaultNumberFormatter;\n @BindStateToController('facetForRange')\n @State()\n public facetState!: InsightNumericFacetState;\n @BindStateToController('filter')\n @State()\n public filterState?: InsightNumericFilterState;\n @BindStateToController('searchStatus')\n @State()\n public searchStatusState!: InsightSearchStatusState;\n @State() public error!: Error;\n @BindStateToController('facetForInput')\n @State()\n public facetForInputState?: InsightNumericFacetState;\n\n /**\n * Specifies a unique identifier for the facet.\n */\n @Prop({mutable: true, reflect: true}) public facetId?: string;\n /**\n * The non-localized label for the facet.\n * Used in the `atomic-breadbox` component through the bindings store.\n */\n @Prop({reflect: true}) public label = 'no-label';\n /**\n * The field whose values you want to display in the facet.\n */\n @Prop({reflect: true}) public field!: string;\n /**\n * The number of values to request for this facet, when there are no manual ranges.\n * If the number of values is 0, no ranges will be displayed.\n */\n @Prop({reflect: true}) public numberOfValues = 8;\n /**\n * Whether this facet should contain an input allowing users to set custom ranges.\n * Depending on the field, the input can allow either decimal or integer values.\n */\n @Prop({reflect: true}) public withInput?: NumberInputType;\n /**\n * The sort criterion to apply to the returned facet values.\n * Possible values are 'ascending' and 'descending'.\n */\n @Prop({reflect: true}) public sortCriteria: InsightRangeFacetSortCriterion =\n 'ascending';\n /**\n * The algorithm that's used for generating the ranges of this facet when they aren't manually defined. The default value of `\"equiprobable\"` generates facet ranges which vary in size but have a more balanced number of results within each range. The value of `\"even\"` generates equally sized facet ranges across all of the results.\n */\n @Prop({reflect: true})\n public rangeAlgorithm: InsightRangeFacetRangeAlgorithm = 'equiprobable';\n /**\n * Whether to display the facet values as checkboxes (multiple selection) or links (single selection).\n * Possible values are 'checkbox' and 'link'.\n */\n @Prop({reflect: true}) public displayValuesAs: 'checkbox' | 'link' =\n 'checkbox';\n /**\n * Specifies if the facet is collapsed.\n */\n @Prop({reflect: true, mutable: true}) public isCollapsed = false;\n /**\n * The [heading level](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements) to use for the heading over the facet, from 1 to 6.\n */\n @Prop({reflect: true}) public headingLevel = 0;\n /**\n * Whether to exclude the parents of folded results when estimating the result count for each facet value.\n *\n *\n * Note: Resulting count is only an estimation, in some cases this value could be incorrect.\n */\n @Prop({reflect: true}) public filterFacetCount = true;\n /**\n * The maximum number of results to scan in the index to ensure that the facet lists all potential facet values.\n * Note: A high injectionDepth may negatively impact the facet request performance.\n * Minimum: `0`\n * Default: `1000`\n */\n @Prop({reflect: true}) public injectionDepth = 1000;\n\n /**\n * The required facets and values for this facet to be displayed.\n * Examples:\n * ```html\n * <atomic-insight-facet facet-id=\"abc\" field=\"objecttype\" ...></atomic-insight-facet>\n *\n * <!-- To show the facet when any value is selected in the facet with id \"abc\": -->\n * <atomic-insight-numeric-facet\n * depends-on-abc\n * ...\n * ></atomic-insight-numeric-facet>\n *\n * <!-- To show the facet when value \"doc\" is selected in the facet with id \"abc\": -->\n * <atomic-insight-numeric-facet\n * depends-on-abc=\"doc\"\n * ...\n * ></atomic-insight-numeric-facet>\n * ```\n */\n @MapProp() @Prop() public dependsOn: Record<string, string> = {};\n\n private headerFocus?: FocusTargetController;\n\n public initialize() {\n this.validateProps();\n this.computeFacetId();\n this.initializeFacetForInput();\n this.initializeFacetForRange();\n this.initializeFilter();\n this.initializeDependenciesManager();\n this.initializeSearchStatus();\n this.registerFacetToStore();\n }\n\n private get focusTarget(): FocusTargetController {\n if (!this.headerFocus) {\n this.headerFocus = new FocusTargetController(this);\n }\n return this.headerFocus;\n }\n\n public disconnectedCallback() {\n if (this.host.isConnected) {\n return;\n }\n this.dependenciesManager?.stopWatching();\n }\n\n private initializeFacetForInput() {\n if (!this.withInput) {\n return;\n }\n this.facetForInput = buildInsightNumericFacet(this.bindings.engine, {\n options: {\n facetId: `${this.facetId}_input_range`,\n numberOfValues: 1,\n generateAutomaticRanges: true,\n field: this.field,\n sortCriteria: this.sortCriteria,\n rangeAlgorithm: this.rangeAlgorithm,\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n },\n });\n\n return this.facetForInput;\n }\n\n private initializeFacetForRange() {\n if (this.numberOfValues <= 0) {\n return;\n }\n\n this.manualRanges = Array.from(\n this.host.querySelectorAll('atomic-numeric-range')\n ).map(({start, end, endInclusive, label}) => ({\n ...buildInsightNumericRange({start, end, endInclusive}),\n label,\n }));\n\n this.facetForRange = buildInsightNumericFacet(this.bindings.engine, {\n options: {\n facetId: this.facetId,\n field: this.field,\n numberOfValues: this.numberOfValues,\n sortCriteria: this.sortCriteria,\n rangeAlgorithm: this.rangeAlgorithm,\n currentValues: this.manualRanges,\n generateAutomaticRanges: !this.manualRanges.length,\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n },\n });\n\n return this.facetForRange;\n }\n\n private initializeFilter() {\n if (!this.withInput) {\n return;\n }\n\n this.filter = buildInsightNumericFilter(this.bindings.engine, {\n options: {\n facetId: `${this.facetId}_input`,\n field: this.field,\n },\n });\n }\n\n private initializeDependenciesManager() {\n this.dependenciesManager = buildInsightFacetConditionsManager(\n this.bindings.engine,\n {\n facetId:\n this.facetForRange?.state.facetId ?? this.filter!.state.facetId,\n conditions: parseDependsOn<\n InsightFacetValueRequest | InsightCategoryFacetValueRequest\n >(this.dependsOn),\n }\n );\n }\n\n private initializeSearchStatus() {\n this.searchStatus = buildInsightSearchStatus(this.bindings.engine);\n }\n\n private registerFacetToStore() {\n const facetInfo: FacetInfo = {\n label: () => this.bindings.i18n.t(this.label),\n facetId: this.facetId!,\n element: this.host,\n isHidden: () => this.isHidden,\n };\n\n this.bindings.store.registerFacet('numericFacets', {\n ...facetInfo,\n format: (value) =>\n formatHumanReadable({\n facetValue: value,\n logger: this.bindings.engine.logger,\n i18n: this.bindings.i18n,\n field: this.field,\n manualRanges: this.manualRanges,\n formatter: this.formatter,\n }),\n });\n\n initializePopover(this.host, {\n ...facetInfo,\n hasValues: () => this.hasValues,\n numberOfActiveValues: () => this.numberOfSelectedValues,\n });\n\n if (this.filter) {\n this.bindings.store.state.numericFacets[this.filter.state.facetId] =\n this.bindings.store.state.numericFacets[this.facetId!];\n }\n }\n\n @Listen('atomic/numberFormat')\n public setFormat(event: CustomEvent<NumberFormatter>) {\n event.preventDefault();\n event.stopPropagation();\n this.formatter = event.detail;\n }\n\n @Listen('atomic/numberInputApply')\n public applyNumberInput() {\n this.facetId &&\n this.bindings.engine.dispatch(\n loadInsightNumericFacetSetActions(\n this.bindings.engine\n ).deselectAllNumericFacetValues(this.facetId)\n );\n }\n\n public render() {\n const {\n searchStatusState: {firstSearchExecuted, hasError},\n bindings: {i18n},\n label,\n numberOfSelectedValues,\n isCollapsed,\n headingLevel,\n focusTarget,\n withInput,\n filter,\n } = this;\n return (\n <FacetGuard\n enabled={this.enabled}\n firstSearchExecuted={firstSearchExecuted}\n hasError={hasError}\n hasResults={this.shouldRenderFacet}\n >\n {firstSearchExecuted ? (\n <FacetContainer>\n <FacetHeader\n i18n={i18n}\n label={label}\n onClearFilters={() => {\n focusTarget.focusAfterSearch();\n if (this.filterState?.range) {\n this.filter?.clear();\n return;\n }\n this.facetForRange?.deselectAll();\n }}\n numberOfActiveValues={numberOfSelectedValues}\n isCollapsed={isCollapsed}\n headingLevel={headingLevel}\n onToggleCollapse={() => (this.isCollapsed = !this.isCollapsed)}\n headerRef={(el) => focusTarget.setTarget(el)}\n />\n {!isCollapsed && [\n this.shouldRenderValues && this.renderValues(),\n this.shouldRenderInput && (\n <atomic-facet-number-input\n type={withInput!}\n bindings={this.bindings}\n label={label}\n filter={filter!}\n filterState={filter!.state}\n ></atomic-facet-number-input>\n ),\n ]}\n </FacetContainer>\n ) : (\n <FacetPlaceholder\n isCollapsed={this.isCollapsed}\n numberOfValues={this.numberOfValues}\n />\n )}\n </FacetGuard>\n );\n }\n\n private renderValues() {\n const {\n displayValuesAs,\n field,\n manualRanges,\n label,\n bindings: {\n i18n,\n engine: {logger},\n },\n } = this;\n\n return (\n <NumericFacetValuesContainer i18n={i18n} label={label}>\n {this.valuesToRender.map((value) => (\n <NumericFacetValueLink\n formatter={this.formatter}\n displayValuesAs={displayValuesAs}\n facetValue={value}\n field={field}\n i18n={i18n}\n logger={logger}\n manualRanges={manualRanges}\n onClick={() =>\n this.displayValuesAs === 'link'\n ? this.facetForRange!.toggleSingleSelect(value)\n : this.facetForRange!.toggleSelect(value)\n }\n />\n ))}\n </NumericFacetValuesContainer>\n );\n }\n\n private get numberOfSelectedValues() {\n if (this.filter?.state.range) {\n return 1;\n }\n\n return (\n this.facetForRange?.state.values.filter(({state}) => state === 'selected')\n .length || 0\n );\n }\n\n private get shouldRenderValues() {\n return (\n !this.hasInputRange &&\n this.numberOfValues > 0 &&\n !!this.valuesToRender.length\n );\n }\n\n private get hasInputRange() {\n return !!this.filter?.state.range;\n }\n\n private get valuesToRender() {\n return (\n this.facetForRange?.state.values.filter(\n (value) => value.numberOfResults || value.state !== 'idle'\n ) || []\n );\n }\n\n private get shouldRenderInput() {\n return shouldDisplayInputForFacetRange({\n hasInputRange: this.hasInputRange,\n searchStatusState: this.searchStatusState,\n facetValues: this.facetForInput?.state.values || [],\n hasInput: !!this.withInput,\n });\n }\n\n private computeFacetId() {\n if (this.facetId) {\n return;\n }\n\n if (this.bindings.store.state.numericFacets[this.field]) {\n this.facetId = randomID(`${this.field}_`);\n }\n\n this.facetId = this.field;\n }\n\n private get isHidden() {\n return !this.shouldRenderFacet || !this.facetState.enabled;\n }\n\n private get shouldRenderFacet() {\n return this.shouldRenderInput || this.shouldRenderValues;\n }\n\n private get hasValues() {\n if (this.facetForInput?.state.values.length) {\n return true;\n }\n\n return !!this.valuesToRender.length;\n }\n\n private get enabled() {\n return this.facetState?.enabled ?? this.filter?.state.enabled ?? true;\n }\n\n private validateProps() {\n new Schema({\n displayValuesAs: new StringValue({constrainTo: ['checkbox', 'link']}),\n withInput: new StringValue({constrainTo: ['integer', 'decimal']}),\n }).validate({\n displayValuesAs: this.displayValuesAs,\n withInput: this.withInput,\n });\n }\n}\n"],"version":3}
|
|
@@ -4,13 +4,12 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
const index = require('./index-1df73594.js');
|
|
6
6
|
const propsUtils = require('./props-utils-83b80e92.js');
|
|
7
|
-
const stencilResultTemplateCommon = require('./stencil-result-template-common-
|
|
7
|
+
const stencilResultTemplateCommon = require('./stencil-result-template-common-46913299.js');
|
|
8
8
|
require('@coveo/bueno');
|
|
9
9
|
require('./utils-18c09278.js');
|
|
10
10
|
require('./purify-8bdefd18.js');
|
|
11
11
|
require('./_commonjsHelpers-b3309d7b.js');
|
|
12
12
|
require('@coveo/headless');
|
|
13
|
-
require('./table-element-utils-2cc6dc82.js');
|
|
14
13
|
require('./item-layout-sections-7442285b.js');
|
|
15
14
|
|
|
16
15
|
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"atomic-insight-result-children-template.entry.cjs.js","mappings":"
|
|
1
|
+
{"file":"atomic-insight-result-children-template.entry.cjs.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;MAgBa,mCAAmC;IAkD9C;;;;;;;;;QAtCe,eAAU,GAA8B,EAAE,CAAC;;;;;;QAqBb,cAAS,GAGlD,EAAE,CAAC;;;;;;QAOsC,iBAAY,GAGrD,EAAE,CAAC;;0BAlCgD,EAAE;;;yBAwBrD,EAAE;4BAUF,EAAE;KAIU;IAEhB,iBAAiB;QACf,IAAI,CAAC,oBAAoB,GAAG,IAAIA,gDAAoB,CAAC;YACnD,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,CAAC,GAAG;gBACZ,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;aAClB;YACD,YAAY,EAAE,CAAC,gCAAgC,CAAC;SACjD,CAAC,CAAC;KACJ;IAEM,iBAAiB;QACtB,IAAI,CAAC,UAAU,GAAGC,iDAAqB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3E,IAAI,CAAC,oBAAoB,CAAC,eAAe,GAAGC,+CAAmB,CAC7D,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,YAAY,CAClB,CAAC;KACH;;;;IAMM,MAAM,WAAW;QACtB,OAAO,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;KAC3E;IAEM,MAAM;QACX,OAAO,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC5D;;;AA/C4C;IAApCC,kBAAO,CAAC,EAAC,WAAW,EAAE,IAAI,EAAC,CAAC;sEAG9B;AAOsC;IAApCA,kBAAO,CAAC,EAAC,WAAW,EAAE,IAAI,EAAC,CAAC;yEAG9B;;;;","names":["ResultTemplateCommon","makeDefinedConditions","makeMatchConditions","MapProp"],"sources":["src/components/insight/result-templates/atomic-insight-result-children-template/atomic-insight-result-children-template.tsx"],"sourcesContent":["import {ResultTemplate, ResultTemplateCondition} from '@coveo/headless';\nimport {Component, Element, Prop, State, Method} from '@stencil/core';\nimport {MapProp} from '../../../../utils/props-utils';\nimport {\n makeDefinedConditions,\n makeMatchConditions,\n ResultTemplateCommon,\n} from '../../../common/result-templates/stencil-result-template-common';\n\n/**\n * @internal\n */\n@Component({\n tag: 'atomic-insight-result-children-template',\n shadow: true,\n})\nexport class AtomicInsightResultChildrenTemplate {\n @Element() public host!: HTMLDivElement;\n\n @State() public error!: Error;\n\n /**\n * A function that must return true on results for the result template to apply.\n * Set programmatically before initialization, not via attribute.\n *\n * For example, the following targets a template and sets a condition to make it apply only to results whose `title` contains `singapore`:\n * `document.querySelector('#target-template').conditions = [(result) => /singapore/i.test(result.title)];`\n */\n @Prop() public conditions: ResultTemplateCondition[] = [];\n\n /**\n * The field that, when defined on a result item, would allow the template to be applied.\n *\n * For example, a template with the following attribute only applies to result items whose `filetype` and `sourcetype` fields are defined: `if-defined=\"filetype,sourcetype\"`\n */\n @Prop({reflect: true}) ifDefined?: string;\n\n /**\n * The field that, when defined on a result item, would prevent the template from being applied.\n *\n * For example, a template with the following attribute only applies to result items whose `filetype` and `sourcetype` fields are NOT defined: `if-not-defined=\"filetype,sourcetype\"`\n */\n @Prop({reflect: true}) ifNotDefined?: string;\n\n /**\n * The field and values that define which result items the condition must be applied to.\n *\n * For example, a template with the following attribute only applies to result items whose `filetype` is `lithiummessage` or `YouTubePlaylist`: `must-match-filetype=\"lithiummessage,YouTubePlaylist\"`\n */\n @Prop() @MapProp({splitValues: true}) public mustMatch: Record<\n string,\n string[]\n > = {};\n\n /**\n * The field and values that define which result items the condition must not be applied to.\n *\n * For example, a template with the following attribute only applies to result items whose `filetype` is not `lithiummessage`: `must-not-match-filetype=\"lithiummessage\"`\n */\n @Prop() @MapProp({splitValues: true}) public mustNotMatch: Record<\n string,\n string[]\n > = {};\n\n public resultTemplateCommon!: ResultTemplateCommon;\n\n constructor() {}\n\n connectedCallback() {\n this.resultTemplateCommon = new ResultTemplateCommon({\n host: this.host,\n setError: (err) => {\n this.error = err;\n },\n validParents: ['atomic-insight-result-children'],\n });\n }\n\n public componentWillLoad() {\n this.conditions = makeDefinedConditions(this.ifDefined, this.ifNotDefined);\n this.resultTemplateCommon.matchConditions = makeMatchConditions(\n this.mustMatch,\n this.mustNotMatch\n );\n }\n\n /**\n * Gets the appropriate result template based on conditions applied.\n */\n @Method()\n public async getTemplate(): Promise<ResultTemplate<DocumentFragment> | null> {\n return this.resultTemplateCommon.getTemplate(this.conditions, this.error);\n }\n\n public render() {\n return this.resultTemplateCommon.renderIfError(this.error);\n }\n}\n"],"version":3}
|
|
@@ -4,13 +4,12 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
const index = require('./index-1df73594.js');
|
|
6
6
|
const propsUtils = require('./props-utils-83b80e92.js');
|
|
7
|
-
const stencilResultTemplateCommon = require('./stencil-result-template-common-
|
|
7
|
+
const stencilResultTemplateCommon = require('./stencil-result-template-common-46913299.js');
|
|
8
8
|
require('@coveo/bueno');
|
|
9
9
|
require('./utils-18c09278.js');
|
|
10
10
|
require('./purify-8bdefd18.js');
|
|
11
11
|
require('./_commonjsHelpers-b3309d7b.js');
|
|
12
12
|
require('@coveo/headless');
|
|
13
|
-
require('./table-element-utils-2cc6dc82.js');
|
|
14
13
|
require('./item-layout-sections-7442285b.js');
|
|
15
14
|
|
|
16
15
|
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"atomic-insight-result-template.entry.cjs.js","mappings":"
|
|
1
|
+
{"file":"atomic-insight-result-template.entry.cjs.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;MAmBa,2BAA2B;IAmDtC;;QA7CO,oBAAe,GAAqC,EAAE,CAAC;;;;;;;;QAS/C,eAAU,GAAqC,EAAE,CAAC;;;;;;QAqBpB,cAAS,GAGlD,EAAE,CAAC;;;;;;QAOsC,iBAAY,GAGrD,EAAE,CAAC;;0BAlCuD,EAAE;;;yBAwB5D,EAAE;4BAUF,EAAE;KAEU;IAEhB,iBAAiB;QACf,IAAI,CAAC,oBAAoB,GAAG,IAAIA,gDAAoB,CAAC;YACnD,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,CAAC,GAAG;gBACZ,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;aAClB;YACD,YAAY,EAAE;gBACZ,4BAA4B;gBAC5B,mCAAmC;aACpC;YACD,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;KACJ;IAEM,iBAAiB;QACtB,IAAI,CAAC,UAAU,GAAGC,iDAAqB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3E,IAAI,CAAC,oBAAoB,CAAC,eAAe,GAAGC,+CAAmB,CAC7D,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,YAAY,CAClB,CAAC;KACH;;;;IAMM,MAAM,WAAW;QACtB,OAAO,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;KAC3E;IAEM,MAAM;QACX,OAAO,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC5D;;;AAjD4C;IAApCC,kBAAO,CAAC,EAAC,WAAW,EAAE,IAAI,EAAC,CAAC;8DAG9B;AAOsC;IAApCA,kBAAO,CAAC,EAAC,WAAW,EAAE,IAAI,EAAC,CAAC;iEAG9B;;;;","names":["ResultTemplateCommon","makeDefinedConditions","makeMatchConditions","MapProp"],"sources":["src/components/insight/result-templates/atomic-insight-result-template/atomic-insight-result-template.tsx"],"sourcesContent":["import {\n ResultTemplate as InsightResultTemplate,\n ResultTemplateCondition as InsightResultTemplateCondition,\n} from '@coveo/headless/insight';\nimport {Component, Element, Prop, Method, State} from '@stencil/core';\nimport {MapProp} from '../../../../utils/props-utils';\nimport {\n makeDefinedConditions,\n makeMatchConditions,\n ResultTemplateCommon,\n} from '../../../common/result-templates/stencil-result-template-common';\n\n/**\n * @internal\n */\n@Component({\n tag: 'atomic-insight-result-template',\n shadow: true,\n})\nexport class AtomicInsightResultTemplate {\n private resultTemplateCommon!: ResultTemplateCommon;\n\n @State() public error!: Error;\n\n @Element() public host!: HTMLDivElement;\n public matchConditions: InsightResultTemplateCondition[] = [];\n\n /**\n * A function that must return true on results for the result template to apply.\n * Set programmatically before initialization, not via attribute.\n *\n * For example, the following targets a template and sets a condition to make it apply only to results whose `title` contains `singapore`:\n * `document.querySelector('#target-template').conditions = [(result) => /singapore/i.test(result.title)];`\n */\n @Prop() public conditions: InsightResultTemplateCondition[] = [];\n\n /**\n * The field that, when defined on a result item, would allow the template to be applied.\n *\n * For example, a template with the following attribute only applies to result items whose `filetype` and `sourcetype` fields are defined: `if-defined=\"filetype,sourcetype\"`\n */\n @Prop({reflect: true}) ifDefined?: string;\n\n /**\n * The field that, when defined on a result item, would prevent the template from being applied.\n *\n * For example, a template with the following attribute only applies to result items whose `filetype` and `sourcetype` fields are NOT defined: `if-not-defined=\"filetype,sourcetype\"`\n */\n @Prop({reflect: true}) ifNotDefined?: string;\n\n /**\n * The field and values that define which result items the condition must be applied to.\n *\n * For example, a template with the following attribute only applies to result items whose `filetype` is `lithiummessage` or `YouTubePlaylist`: `must-match-filetype=\"lithiummessage,YouTubePlaylist\"`\n */\n @Prop() @MapProp({splitValues: true}) public mustMatch: Record<\n string,\n string[]\n > = {};\n\n /**\n * The field and values that define which result items the condition must not be applied to.\n *\n * For example, a template with the following attribute only applies to result items whose `filetype` is not `lithiummessage`: `must-not-match-filetype=\"lithiummessage\"`\n */\n @Prop() @MapProp({splitValues: true}) public mustNotMatch: Record<\n string,\n string[]\n > = {};\n\n constructor() {}\n\n connectedCallback() {\n this.resultTemplateCommon = new ResultTemplateCommon({\n host: this.host,\n setError: (err) => {\n this.error = err;\n },\n validParents: [\n 'atomic-insight-result-list',\n 'atomic-insight-folded-result-list',\n ],\n allowEmpty: true,\n });\n }\n\n public componentWillLoad() {\n this.conditions = makeDefinedConditions(this.ifDefined, this.ifNotDefined);\n this.resultTemplateCommon.matchConditions = makeMatchConditions(\n this.mustMatch,\n this.mustNotMatch\n );\n }\n\n /**\n * Gets the appropriate result template based on conditions applied.\n */\n @Method()\n public async getTemplate(): Promise<InsightResultTemplate<DocumentFragment> | null> {\n return this.resultTemplateCommon.getTemplate(this.conditions, this.error);\n }\n\n public render() {\n return this.resultTemplateCommon.renderIfError(this.error);\n }\n}\n"],"version":3}
|
|
@@ -8,8 +8,8 @@ const initializationUtils = require('./initialization-utils-9b24f99b.js');
|
|
|
8
8
|
const propsUtils = require('./props-utils-83b80e92.js');
|
|
9
9
|
const stencilAccessibilityUtils = require('./stencil-accessibility-utils-01e53a37.js');
|
|
10
10
|
const dependsOn = require('./depends-on-f0cf3617.js');
|
|
11
|
-
const
|
|
12
|
-
const timeframeFacetCommon = require('./timeframe-facet-common-
|
|
11
|
+
const stencilFacetPlaceholder = require('./stencil-facet-placeholder-d3c0a675.js');
|
|
12
|
+
const timeframeFacetCommon = require('./timeframe-facet-common-4fa4cc95.js');
|
|
13
13
|
require('./dom-utils-d4790328.js');
|
|
14
14
|
require('./event-utils-9bfcf3c5.js');
|
|
15
15
|
require('./init-queue-dbb065ac.js');
|
|
@@ -201,7 +201,7 @@ const AtomicInsightTimeframeFacet = class {
|
|
|
201
201
|
}
|
|
202
202
|
render() {
|
|
203
203
|
if (!this.timeframeFacetCommon) {
|
|
204
|
-
return (index.h(
|
|
204
|
+
return (index.h(stencilFacetPlaceholder.FacetPlaceholder, { numberOfValues: 5, isCollapsed: this.isCollapsed }));
|
|
205
205
|
}
|
|
206
206
|
return this.timeframeFacetCommon.render({
|
|
207
207
|
hasError: this.searchStatusState.hasError,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"atomic-insight-timeframe-facet.entry.cjs.js","mappings":"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","names":["TimeframeFacetCommon","buildInsightFacetConditionsManager","parseDependsOn","buildInsightDateRange","deserializeInsightRelativeDate","buildInsightSearchStatus","FocusTargetController","buildInsightDateFacet","buildInsightDateFilter","loadInsightDateFacetSetActions","h","FacetPlaceholder","InitializeBindings","BindStateToController","MapProp"],"sources":["src/components/insight/atomic-insight-timeframe-facet/atomic-insight-timeframe-facet.pcss?tag=atomic-insight-timeframe-facet&encapsulation=shadow","src/components/insight/atomic-insight-timeframe-facet/atomic-insight-timeframe-facet.tsx"],"sourcesContent":["@import '../../common/facets/facet-common.pcss';\n","import {\n buildDateFacet as buildInsightDateFacet,\n buildDateFilter as buildInsightDateFilter,\n buildDateRange as buildInsightDateRange,\n buildFacetConditionsManager as buildInsightFacetConditionsManager,\n buildSearchStatus as buildInsightSearchStatus,\n deserializeRelativeDate as deserializeInsightRelativeDate,\n DateFacet as InsightDateFacet,\n DateFacetState as InsightDateFacetState,\n DateFilter as InsightDateFilter,\n DateFilterState as InsightDateFilterState,\n DateRangeRequest as InsightDateRangeRequest,\n SearchStatus as InsightSearchStatus,\n SearchStatusState as InsightSearchStatusState,\n loadDateFacetSetActions as loadInsightDateFacetSetActions,\n RangeFacetSortCriterion as InsightRangeFacetSortCriterion,\n FacetValueRequest as InsightFacetValueRequest,\n CategoryFacetValueRequest as InsightCategoryFacetValueRequest,\n} from '@coveo/headless/insight';\nimport {Component, Element, h, Listen, Prop, State} from '@stencil/core';\nimport {\n BindStateToController,\n InitializableComponent,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {MapProp} from '../../../utils/props-utils';\nimport {FocusTargetController} from '../../../utils/stencil-accessibility-utils';\nimport {parseDependsOn} from '../../common/facets/depends-on';\nimport {FacetPlaceholder} from '../../common/facets/facet-placeholder/facet-placeholder';\nimport {TimeframeFacetCommon} from '../../common/facets/timeframe-facet-common';\nimport {InsightBindings} from '../atomic-insight-interface/atomic-insight-interface';\n\n/**\n * @internal\n */\n@Component({\n tag: 'atomic-insight-timeframe-facet',\n styleUrl: './atomic-insight-timeframe-facet.pcss',\n shadow: true,\n})\nexport class AtomicInsightTimeframeFacet\n implements InitializableComponent<InsightBindings>\n{\n @InitializeBindings() public bindings!: InsightBindings;\n public facetForDateRange?: InsightDateFacet;\n public facetForDatePicker?: InsightDateFacet;\n\n private timeframeFacetCommon?: TimeframeFacetCommon;\n public filter?: InsightDateFilter;\n public searchStatus!: InsightSearchStatus;\n @Element() private host!: HTMLElement;\n\n @BindStateToController('facetForDateRange')\n @State()\n public facetState!: InsightDateFacetState;\n @BindStateToController('facetForDatePicker')\n @State()\n public facetForDatePickerState?: InsightDateFacetState;\n @BindStateToController('filter')\n @State()\n public filterState?: InsightDateFilterState;\n @BindStateToController('searchStatus')\n @State()\n public searchStatusState!: InsightSearchStatusState;\n @State() public error!: Error;\n\n /**\n * Specifies a unique identifier for the facet.\n */\n @Prop({mutable: true, reflect: true}) public facetId?: string;\n /**\n * The non-localized label for the facet.\n * Used in the atomic-breadbox component through the bindings store.\n */\n @Prop({reflect: true}) public label = 'no-label';\n /**\n * The field whose values you want to display in the facet.\n */\n @Prop({reflect: true}) public field = 'date';\n /**\n * Whether this facet should contain an datepicker allowing users to set custom ranges.\n */\n @Prop({reflect: true}) public withDatePicker = false;\n /**\n * Specifies if the facet is collapsed.\n */\n @Prop({reflect: true, mutable: true}) public isCollapsed = false;\n /**\n * The [heading level](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements) to use for the heading over the facet, from 1 to 6.\n */\n @Prop({reflect: true}) public headingLevel = 0;\n /**\n * Whether to exclude the parents of folded results when estimating the result count for each facet value.\n *\n *\n * Note: Resulting count is only an estimation, in some cases this value could be incorrect.\n */\n @Prop({reflect: true}) public filterFacetCount = true;\n /**\n * The maximum number of results to scan in the index to ensure that the facet lists all potential facet values.\n * Note: A high injectionDepth may negatively impact the facet request performance.\n * Minimum: `0`\n * Default: `1000`\n */\n @Prop({reflect: true}) public injectionDepth = 1000;\n\n /**\n * The required facets and values for this facet to be displayed.\n * Examples:\n * ```html\n * <atomic-insight-facet facet-id=\"abc\" field=\"objecttype\" ...></atomic-insight-facet>\n *\n * <!-- To show the facet when any value is selected in the facet with id \"abc\": -->\n * <atomic-insight-timeframe-facet\n * depends-on-abc\n * ...\n * ></atomic-insight-timeframe-facet>\n *\n * <!-- To show the facet when value \"doc\" is selected in the facet with id \"abc\": -->\n * <atomic-insight-timeframe-facet\n * depends-on-abc=\"doc\"\n * ...\n * ></atomic-insight-timeframe-facet>\n * ```\n */\n @MapProp() @Prop() public dependsOn: Record<string, string> = {};\n\n /**\n * The sort criterion to apply to the returned facet values.\n * Possible values are 'ascending' and 'descending'.\n */\n @Prop({reflect: true}) public sortCriteria: InsightRangeFacetSortCriterion =\n 'descending';\n\n private headerFocus?: FocusTargetController;\n\n public initialize() {\n this.timeframeFacetCommon = new TimeframeFacetCommon({\n facetId: this.facetId,\n host: this.host,\n bindings: this.bindings,\n label: this.label,\n field: this.field,\n headingLevel: this.headingLevel,\n dependsOn: this.dependsOn,\n withDatePicker: this.withDatePicker,\n setFacetId: (id: string) => (this.facetId = id),\n buildDependenciesManager: (facetId: string) =>\n buildInsightFacetConditionsManager(this.bindings.engine, {\n facetId,\n conditions: parseDependsOn<\n InsightFacetValueRequest | InsightCategoryFacetValueRequest\n >(this.dependsOn),\n }),\n buildDateRange: buildInsightDateRange,\n getSearchStatusState: () => this.searchStatusState,\n deserializeRelativeDate: deserializeInsightRelativeDate,\n initializeFacetForDatePicker: () => this.initializeFacetForDatePicker(),\n initializeFacetForDateRange: (values: InsightDateRangeRequest[]) =>\n this.initializeFacetForDateRange(values),\n initializeFilter: () => this.initializeFilter(),\n sortCriteria: this.sortCriteria,\n });\n this.searchStatus = buildInsightSearchStatus(this.bindings.engine);\n }\n\n private get focusTarget(): FocusTargetController {\n if (!this.headerFocus) {\n this.headerFocus = new FocusTargetController(this);\n }\n return this.headerFocus;\n }\n\n public disconnectedCallback() {\n this.timeframeFacetCommon?.disconnectedCallback();\n }\n\n private initializeFacetForDatePicker() {\n this.facetForDatePicker = buildInsightDateFacet(this.bindings.engine, {\n options: {\n facetId: `${this.facetId}_input_range`,\n numberOfValues: 1,\n generateAutomaticRanges: true,\n field: this.field,\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n },\n });\n return this.facetForDatePicker;\n }\n\n private initializeFacetForDateRange(values: InsightDateRangeRequest[]) {\n this.facetForDateRange = buildInsightDateFacet(this.bindings.engine, {\n options: {\n facetId: this.facetId,\n field: this.field,\n currentValues: values,\n generateAutomaticRanges: false,\n sortCriteria: 'descending',\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n },\n });\n\n return this.facetForDateRange;\n }\n\n private initializeFilter() {\n this.filter = buildInsightDateFilter(this.bindings.engine, {\n options: {\n facetId: `${this.facetId}_input`,\n field: this.field,\n },\n });\n\n return this.filter;\n }\n\n @Listen('atomic/dateInputApply')\n public applyDateInput() {\n this.facetId &&\n this.bindings.engine.dispatch(\n loadInsightDateFacetSetActions(\n this.bindings.engine\n ).deselectAllDateFacetValues(this.facetId)\n );\n }\n\n public render() {\n if (!this.timeframeFacetCommon) {\n return (\n <FacetPlaceholder\n numberOfValues={5}\n isCollapsed={this.isCollapsed}\n ></FacetPlaceholder>\n );\n }\n return this.timeframeFacetCommon.render({\n hasError: this.searchStatusState.hasError,\n firstSearchExecuted: this.searchStatusState.firstSearchExecuted,\n isCollapsed: this.isCollapsed,\n headerFocus: this.focusTarget,\n onToggleCollapse: () => (this.isCollapsed = !this.isCollapsed),\n });\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"atomic-insight-timeframe-facet.entry.cjs.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,8BAA8B,GAAG,iglEAAiglE,CAAC;AACzilE,0CAAe,8BAA8B;;;;;;;;;;;;MCuChC,2BAA2B;;;;;;;QAkCR,UAAK,GAAG,UAAU,CAAC;;;;QAInB,UAAK,GAAG,MAAM,CAAC;;;;QAIf,mBAAc,GAAG,KAAK,CAAC;;;;QAIR,gBAAW,GAAG,KAAK,CAAC;;;;QAInC,iBAAY,GAAG,CAAC,CAAC;;;;;;;QAOjB,qBAAgB,GAAG,IAAI,CAAC;;;;;;;QAOxB,mBAAc,GAAG,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;QAqB1B,cAAS,GAA2B,EAAE,CAAC;;;;;QAMnC,iBAAY,GACxC,YAAY,CAAC;;;;;;;qBA1DuB,UAAU;qBAIV,MAAM;8BAIG,KAAK;2BAIO,KAAK;4BAInB,CAAC;gCAOG,IAAI;8BAON,IAAI;yBAqBW,EAAE;4BAO9D,YAAY;;IAIP,UAAU;QACf,IAAI,CAAC,oBAAoB,GAAG,IAAIA,yCAAoB,CAAC;YACnD,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,UAAU,EAAE,CAAC,EAAU,MAAM,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;YAC/C,wBAAwB,EAAE,CAAC,OAAe,KACxCC,mCAAkC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;gBACvD,OAAO;gBACP,UAAU,EAAEC,wBAAc,CAExB,IAAI,CAAC,SAAS,CAAC;aAClB,CAAC;YACJ,cAAc,EAAEC,sBAAqB;YACrC,oBAAoB,EAAE,MAAM,IAAI,CAAC,iBAAiB;YAClD,uBAAuB,EAAEC,+BAA8B;YACvD,4BAA4B,EAAE,MAAM,IAAI,CAAC,4BAA4B,EAAE;YACvE,2BAA2B,EAAE,CAAC,MAAiC,KAC7D,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC;YAC1C,gBAAgB,EAAE,MAAM,IAAI,CAAC,gBAAgB,EAAE;YAC/C,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,GAAGC,yBAAwB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;KACpE;IAED,IAAY,WAAW;QACrB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,IAAI,CAAC,WAAW,GAAG,IAAIC,+CAAqB,CAAC,IAAI,CAAC,CAAC;SACpD;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;IAEM,oBAAoB;QACzB,IAAI,CAAC,oBAAoB,EAAE,oBAAoB,EAAE,CAAC;KACnD;IAEO,4BAA4B;QAClC,IAAI,CAAC,kBAAkB,GAAGC,sBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YACpE,OAAO,EAAE;gBACP,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,cAAc;gBACtC,cAAc,EAAE,CAAC;gBACjB,uBAAuB,EAAE,IAAI;gBAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,cAAc,EAAE,IAAI,CAAC,cAAc;aACpC;SACF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,kBAAkB,CAAC;KAChC;IAEO,2BAA2B,CAAC,MAAiC;QACnE,IAAI,CAAC,iBAAiB,GAAGA,sBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YACnE,OAAO,EAAE;gBACP,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,aAAa,EAAE,MAAM;gBACrB,uBAAuB,EAAE,KAAK;gBAC9B,YAAY,EAAE,YAAY;gBAC1B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,cAAc,EAAE,IAAI,CAAC,cAAc;aACpC;SACF,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,iBAAiB,CAAC;KAC/B;IAEO,gBAAgB;QACtB,IAAI,CAAC,MAAM,GAAGC,uBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YACzD,OAAO,EAAE;gBACP,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,QAAQ;gBAChC,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB;SACF,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IAGM,cAAc;QACnB,IAAI,CAAC,OAAO;YACV,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAC3BC,+BAA8B,CAC5B,IAAI,CAAC,QAAQ,CAAC,MAAM,CACrB,CAAC,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,CAC3C,CAAC;KACL;IAEM,MAAM;QACX,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;YAC9B,QACEC,QAACC,wCAAgB,IACf,cAAc,EAAE,CAAC,EACjB,WAAW,EAAE,IAAI,CAAC,WAAW,GACX,EACpB;SACH;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;YACtC,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC,QAAQ;YACzC,mBAAmB,EAAE,IAAI,CAAC,iBAAiB,CAAC,mBAAmB;YAC/D,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,gBAAgB,EAAE,OAAO,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC;SAC/D,CAAC,CAAC;KACJ;;;AAzM4B;IAA5BC,sCAAkB,EAAE;6DAAmC;AAWjD;IAFNC,yCAAqB,CAAC,mBAAmB,CAAC;+DAED;AAGnC;IAFNA,yCAAqB,CAAC,oBAAoB,CAAC;4EAEW;AAGhD;IAFNA,yCAAqB,CAAC,QAAQ,CAAC;gEAEY;AAGrC;IAFNA,yCAAqB,CAAC,cAAc,CAAC;sEAEc;AA8D1B;IAAzBC,kBAAO,EAAE;8DAAuD;;;;;","names":["TimeframeFacetCommon","buildInsightFacetConditionsManager","parseDependsOn","buildInsightDateRange","deserializeInsightRelativeDate","buildInsightSearchStatus","FocusTargetController","buildInsightDateFacet","buildInsightDateFilter","loadInsightDateFacetSetActions","h","FacetPlaceholder","InitializeBindings","BindStateToController","MapProp"],"sources":["src/components/insight/atomic-insight-timeframe-facet/atomic-insight-timeframe-facet.pcss?tag=atomic-insight-timeframe-facet&encapsulation=shadow","src/components/insight/atomic-insight-timeframe-facet/atomic-insight-timeframe-facet.tsx"],"sourcesContent":["@import '../../common/facets/facet-common.pcss';\n","import {\n buildDateFacet as buildInsightDateFacet,\n buildDateFilter as buildInsightDateFilter,\n buildDateRange as buildInsightDateRange,\n buildFacetConditionsManager as buildInsightFacetConditionsManager,\n buildSearchStatus as buildInsightSearchStatus,\n deserializeRelativeDate as deserializeInsightRelativeDate,\n DateFacet as InsightDateFacet,\n DateFacetState as InsightDateFacetState,\n DateFilter as InsightDateFilter,\n DateFilterState as InsightDateFilterState,\n DateRangeRequest as InsightDateRangeRequest,\n SearchStatus as InsightSearchStatus,\n SearchStatusState as InsightSearchStatusState,\n loadDateFacetSetActions as loadInsightDateFacetSetActions,\n RangeFacetSortCriterion as InsightRangeFacetSortCriterion,\n FacetValueRequest as InsightFacetValueRequest,\n CategoryFacetValueRequest as InsightCategoryFacetValueRequest,\n} from '@coveo/headless/insight';\nimport {Component, Element, h, Listen, Prop, State} from '@stencil/core';\nimport {\n BindStateToController,\n InitializableComponent,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {MapProp} from '../../../utils/props-utils';\nimport {FocusTargetController} from '../../../utils/stencil-accessibility-utils';\nimport {parseDependsOn} from '../../common/facets/depends-on';\nimport {FacetPlaceholder} from '../../common/facets/facet-placeholder/stencil-facet-placeholder';\nimport {TimeframeFacetCommon} from '../../common/facets/timeframe-facet-common';\nimport {InsightBindings} from '../atomic-insight-interface/atomic-insight-interface';\n\n/**\n * @internal\n */\n@Component({\n tag: 'atomic-insight-timeframe-facet',\n styleUrl: './atomic-insight-timeframe-facet.pcss',\n shadow: true,\n})\nexport class AtomicInsightTimeframeFacet\n implements InitializableComponent<InsightBindings>\n{\n @InitializeBindings() public bindings!: InsightBindings;\n public facetForDateRange?: InsightDateFacet;\n public facetForDatePicker?: InsightDateFacet;\n\n private timeframeFacetCommon?: TimeframeFacetCommon;\n public filter?: InsightDateFilter;\n public searchStatus!: InsightSearchStatus;\n @Element() private host!: HTMLElement;\n\n @BindStateToController('facetForDateRange')\n @State()\n public facetState!: InsightDateFacetState;\n @BindStateToController('facetForDatePicker')\n @State()\n public facetForDatePickerState?: InsightDateFacetState;\n @BindStateToController('filter')\n @State()\n public filterState?: InsightDateFilterState;\n @BindStateToController('searchStatus')\n @State()\n public searchStatusState!: InsightSearchStatusState;\n @State() public error!: Error;\n\n /**\n * Specifies a unique identifier for the facet.\n */\n @Prop({mutable: true, reflect: true}) public facetId?: string;\n /**\n * The non-localized label for the facet.\n * Used in the atomic-breadbox component through the bindings store.\n */\n @Prop({reflect: true}) public label = 'no-label';\n /**\n * The field whose values you want to display in the facet.\n */\n @Prop({reflect: true}) public field = 'date';\n /**\n * Whether this facet should contain an datepicker allowing users to set custom ranges.\n */\n @Prop({reflect: true}) public withDatePicker = false;\n /**\n * Specifies if the facet is collapsed.\n */\n @Prop({reflect: true, mutable: true}) public isCollapsed = false;\n /**\n * The [heading level](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements) to use for the heading over the facet, from 1 to 6.\n */\n @Prop({reflect: true}) public headingLevel = 0;\n /**\n * Whether to exclude the parents of folded results when estimating the result count for each facet value.\n *\n *\n * Note: Resulting count is only an estimation, in some cases this value could be incorrect.\n */\n @Prop({reflect: true}) public filterFacetCount = true;\n /**\n * The maximum number of results to scan in the index to ensure that the facet lists all potential facet values.\n * Note: A high injectionDepth may negatively impact the facet request performance.\n * Minimum: `0`\n * Default: `1000`\n */\n @Prop({reflect: true}) public injectionDepth = 1000;\n\n /**\n * The required facets and values for this facet to be displayed.\n * Examples:\n * ```html\n * <atomic-insight-facet facet-id=\"abc\" field=\"objecttype\" ...></atomic-insight-facet>\n *\n * <!-- To show the facet when any value is selected in the facet with id \"abc\": -->\n * <atomic-insight-timeframe-facet\n * depends-on-abc\n * ...\n * ></atomic-insight-timeframe-facet>\n *\n * <!-- To show the facet when value \"doc\" is selected in the facet with id \"abc\": -->\n * <atomic-insight-timeframe-facet\n * depends-on-abc=\"doc\"\n * ...\n * ></atomic-insight-timeframe-facet>\n * ```\n */\n @MapProp() @Prop() public dependsOn: Record<string, string> = {};\n\n /**\n * The sort criterion to apply to the returned facet values.\n * Possible values are 'ascending' and 'descending'.\n */\n @Prop({reflect: true}) public sortCriteria: InsightRangeFacetSortCriterion =\n 'descending';\n\n private headerFocus?: FocusTargetController;\n\n public initialize() {\n this.timeframeFacetCommon = new TimeframeFacetCommon({\n facetId: this.facetId,\n host: this.host,\n bindings: this.bindings,\n label: this.label,\n field: this.field,\n headingLevel: this.headingLevel,\n dependsOn: this.dependsOn,\n withDatePicker: this.withDatePicker,\n setFacetId: (id: string) => (this.facetId = id),\n buildDependenciesManager: (facetId: string) =>\n buildInsightFacetConditionsManager(this.bindings.engine, {\n facetId,\n conditions: parseDependsOn<\n InsightFacetValueRequest | InsightCategoryFacetValueRequest\n >(this.dependsOn),\n }),\n buildDateRange: buildInsightDateRange,\n getSearchStatusState: () => this.searchStatusState,\n deserializeRelativeDate: deserializeInsightRelativeDate,\n initializeFacetForDatePicker: () => this.initializeFacetForDatePicker(),\n initializeFacetForDateRange: (values: InsightDateRangeRequest[]) =>\n this.initializeFacetForDateRange(values),\n initializeFilter: () => this.initializeFilter(),\n sortCriteria: this.sortCriteria,\n });\n this.searchStatus = buildInsightSearchStatus(this.bindings.engine);\n }\n\n private get focusTarget(): FocusTargetController {\n if (!this.headerFocus) {\n this.headerFocus = new FocusTargetController(this);\n }\n return this.headerFocus;\n }\n\n public disconnectedCallback() {\n this.timeframeFacetCommon?.disconnectedCallback();\n }\n\n private initializeFacetForDatePicker() {\n this.facetForDatePicker = buildInsightDateFacet(this.bindings.engine, {\n options: {\n facetId: `${this.facetId}_input_range`,\n numberOfValues: 1,\n generateAutomaticRanges: true,\n field: this.field,\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n },\n });\n return this.facetForDatePicker;\n }\n\n private initializeFacetForDateRange(values: InsightDateRangeRequest[]) {\n this.facetForDateRange = buildInsightDateFacet(this.bindings.engine, {\n options: {\n facetId: this.facetId,\n field: this.field,\n currentValues: values,\n generateAutomaticRanges: false,\n sortCriteria: 'descending',\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n },\n });\n\n return this.facetForDateRange;\n }\n\n private initializeFilter() {\n this.filter = buildInsightDateFilter(this.bindings.engine, {\n options: {\n facetId: `${this.facetId}_input`,\n field: this.field,\n },\n });\n\n return this.filter;\n }\n\n @Listen('atomic/dateInputApply')\n public applyDateInput() {\n this.facetId &&\n this.bindings.engine.dispatch(\n loadInsightDateFacetSetActions(\n this.bindings.engine\n ).deselectAllDateFacetValues(this.facetId)\n );\n }\n\n public render() {\n if (!this.timeframeFacetCommon) {\n return (\n <FacetPlaceholder\n numberOfValues={5}\n isCollapsed={this.isCollapsed}\n ></FacetPlaceholder>\n );\n }\n return this.timeframeFacetCommon.render({\n hasError: this.searchStatusState.hasError,\n firstSearchExecuted: this.searchStatusState.firstSearchExecuted,\n isCollapsed: this.isCollapsed,\n headerFocus: this.focusTarget,\n onToggleCollapse: () => (this.isCollapsed = !this.isCollapsed),\n });\n }\n}\n"],"version":3}
|