@coveo/atomic 3.32.2 → 3.32.3-pre.18e705913a
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/analytics-config.js +1 -1
- package/dist/atomic/components/analytics-config.js.map +1 -1
- package/dist/atomic/components/atomic-category-facet.js +1 -1
- package/dist/atomic/components/atomic-color-facet.js +1 -1
- package/dist/atomic/components/atomic-facet.js +1 -1
- package/dist/atomic/components/atomic-format-currency.js +1 -1
- package/dist/atomic/components/atomic-format-number.js +1 -1
- package/dist/atomic/components/atomic-format-unit.js +1 -1
- package/dist/atomic/components/atomic-numeric-facet.js +1 -1
- package/dist/atomic/components/atomic-pager.js +12 -3
- package/dist/atomic/components/atomic-pager.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-result-children.js +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-result-list.js +1 -1
- package/dist/atomic/components/atomic-search-box-query-suggestions2.js +1 -1
- package/dist/atomic/components/atomic-search-box-recent-queries2.js +1 -1
- package/dist/atomic/components/atomic-search-box.js +4 -4
- package/dist/atomic/components/atomic-smart-snippet-feedback-modal2.js +2 -2
- package/dist/atomic/components/atomic-sort-dropdown.js +2 -2
- package/dist/atomic/components/atomic-sort-expression.js +1 -1
- package/dist/atomic/components/atomic-sort-expression.js.map +1 -1
- package/dist/atomic/components/atomic-tab-manager.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-commerce-did-you-mean/atomic-commerce-did-you-mean.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-commerce-facet/atomic-commerce-facet.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-commerce-facets/atomic-commerce-facets.js +0 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-interface/atomic-commerce-interface.js +1 -2
- package/dist/atomic/components/components/commerce/atomic-commerce-layout/atomic-commerce-layout.js +2 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-layout/atomic-commerce-layout.tw.css.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-no-products/atomic-commerce-no-products.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-commerce-numeric-facet/atomic-commerce-numeric-facet.js +0 -3
- package/dist/atomic/components/components/commerce/atomic-commerce-pager/atomic-commerce-pager.js +0 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-product-list/atomic-commerce-product-list.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-commerce-products-per-page/atomic-commerce-products-per-page.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-commerce-query-error/atomic-commerce-query-error.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-commerce-query-summary/atomic-commerce-query-summary.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.js +3 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-recommendation-list/atomic-commerce-recommendation-list.js +0 -1
- package/dist/atomic/components/components/commerce/atomic-commerce-refine-toggle/atomic-commerce-refine-toggle.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-commerce-search-box-instant-products/atomic-commerce-search-box-instant-products.js +1 -4
- package/dist/atomic/components/components/commerce/atomic-commerce-search-box-query-suggestions/atomic-commerce-search-box-query-suggestions.js +1 -2
- package/dist/atomic/components/components/commerce/atomic-commerce-search-box-recent-queries/atomic-commerce-search-box-recent-queries.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-commerce-sort-dropdown/atomic-commerce-sort-dropdown.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-commerce-timeframe-facet/atomic-commerce-timeframe-facet.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-product-field-condition/atomic-product-field-condition.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-product-link/atomic-product-link.js +2 -1
- package/dist/atomic/components/components/commerce/atomic-product-multi-value-text/atomic-product-multi-value-text.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-product-numeric-field-value/atomic-product-numeric-field-value.js +0 -1
- package/dist/atomic/components/components/commerce/atomic-product-price/atomic-product-price.js +0 -1
- package/dist/atomic/components/components/commerce/atomic-product-rating/atomic-product-rating.js +0 -2
- package/dist/atomic/components/components/commerce/atomic-product-template/atomic-product-template.js +0 -2
- package/dist/atomic/components/components/common/facets/facet-value-checkbox/facet-value-checkbox.js +1 -0
- package/dist/atomic/components/components/common/facets/facet-value-link/facet-value-link.js +1 -0
- package/dist/atomic/components/components/search/atomic-results-per-page/atomic-results-per-page.js +140 -0
- package/dist/atomic/components/components/search/atomic-search-interface/interfaces.js +1 -0
- package/dist/atomic/components/components/search/index.js +2 -1
- package/dist/atomic/components/components/search/lazy-index.js +3 -1
- package/dist/atomic/components/global/environment.js +1 -1
- package/dist/atomic/components/index.js.map +1 -1
- package/dist/atomic/components/stencil-button.js +42 -2
- package/dist/atomic/components/stencil-button.js.map +1 -1
- package/dist/atomic/components/stencil-facet-value-checkbox.js +1 -1
- package/dist/atomic/components/stencil-radio-button.js +1 -1
- package/dist/atomic/{p-bb5786e8.js → p-05768310.js} +2 -2
- package/dist/atomic/p-05ab5909.entry.js +2 -0
- package/dist/atomic/{p-3431545a.entry.js.map → p-05ab5909.entry.js.map} +1 -1
- package/dist/atomic/{p-bb97fea7.entry.js → p-07e7770c.entry.js} +2 -2
- package/dist/atomic/{p-a58f35bc.entry.js.map → p-07e7770c.entry.js.map} +1 -1
- package/dist/atomic/p-082e8e88.entry.js +2 -0
- package/dist/atomic/{p-78689603.entry.js.map → p-082e8e88.entry.js.map} +1 -1
- package/dist/atomic/{p-28dfed7e.entry.js → p-0976d324.entry.js} +2 -2
- package/dist/atomic/{p-7d01ca88.entry.js.map → p-0976d324.entry.js.map} +1 -1
- package/dist/atomic/{p-22e61d7a.entry.js → p-09924944.entry.js} +2 -2
- package/dist/atomic/p-09924944.entry.js.map +1 -0
- package/dist/atomic/p-09be36ec.entry.js +2 -0
- package/dist/atomic/{p-02d23fbc.entry.js.map → p-09be36ec.entry.js.map} +1 -1
- package/dist/atomic/{p-720f9337.entry.js → p-0ad16659.entry.js} +2 -2
- package/dist/atomic/{p-56d29641.entry.js.map → p-0ad16659.entry.js.map} +1 -1
- package/dist/atomic/{p-3fd7de45.entry.js → p-0bb4a24a.entry.js} +2 -2
- package/dist/atomic/{p-d044ff5f.js → p-0c76c49a.js} +2 -2
- package/dist/atomic/{p-7bc6bd40.entry.js → p-0cc72211.entry.js} +2 -2
- package/dist/atomic/{p-28dfed7e.entry.js.map → p-0cc72211.entry.js.map} +1 -1
- package/dist/atomic/{p-99ce5adb.entry.js → p-1735954d.entry.js} +2 -2
- package/dist/atomic/{p-b6befb73.entry.js.map → p-1735954d.entry.js.map} +1 -1
- package/dist/atomic/p-18c302d8.entry.js +2 -0
- package/dist/atomic/{p-59558c51.entry.js.map → p-18c302d8.entry.js.map} +1 -1
- package/dist/atomic/{p-e74224a7.entry.js → p-190ff788.entry.js} +2 -2
- package/dist/atomic/{p-e1d51cf1.entry.js.map → p-190ff788.entry.js.map} +1 -1
- package/dist/atomic/p-1aa77b93.entry.js +2 -0
- package/dist/atomic/{p-a7576224.entry.js.map → p-1aa77b93.entry.js.map} +1 -1
- package/dist/atomic/{p-a3dabead.js → p-1b679702.js} +2 -2
- package/dist/atomic/p-1d4b30c9.entry.js +2 -0
- package/dist/atomic/{p-885be98c.entry.js.map → p-1d4b30c9.entry.js.map} +1 -1
- package/dist/atomic/p-1ea7b494.entry.js +2 -0
- package/dist/atomic/p-1ea7b494.entry.js.map +1 -0
- package/dist/atomic/{p-02d23fbc.entry.js → p-201cd50c.entry.js} +2 -2
- package/dist/atomic/{p-6c847e86.entry.js.map → p-201cd50c.entry.js.map} +1 -1
- package/dist/atomic/p-209db3c4.entry.js +2 -0
- package/dist/atomic/{p-4bee3b34.entry.js.map → p-209db3c4.entry.js.map} +1 -1
- package/dist/atomic/p-21c7a74a.entry.js +2 -0
- package/dist/atomic/{p-8a74eff4.entry.js.map → p-21c7a74a.entry.js.map} +1 -1
- package/dist/atomic/{p-5fa99042.js → p-225ff26e.js} +2 -2
- package/dist/atomic/{p-d917f9a3.js → p-2ef593e5.js} +2 -2
- package/dist/atomic/p-339993e1.entry.js +2 -0
- package/dist/atomic/{p-194a9595.entry.js.map → p-339993e1.entry.js.map} +1 -1
- package/dist/atomic/{p-d99245a2.js → p-343ce8a8.js} +2 -2
- package/dist/atomic/{p-d99245a2.js.map → p-343ce8a8.js.map} +1 -1
- package/dist/atomic/{p-09f4a984.entry.js → p-358ef11c.entry.js} +2 -2
- package/dist/atomic/{p-f776ee25.entry.js.map → p-358ef11c.entry.js.map} +1 -1
- package/dist/atomic/{p-5db46842.js → p-37697010.js} +2 -2
- package/dist/atomic/p-3c3e67ea.entry.js +2 -0
- package/dist/atomic/{p-8fdd92e1.entry.js.map → p-3c3e67ea.entry.js.map} +1 -1
- package/dist/atomic/{p-1192c7ba.js → p-41200765.js} +2 -2
- package/dist/atomic/{p-2857ab2b.js → p-486ad8f3.js} +2 -2
- package/dist/atomic/{p-67425787.js → p-499a97cc.js} +2 -2
- package/dist/atomic/p-4fc18b34.entry.js +2 -0
- package/dist/atomic/{p-93da4373.entry.js.map → p-4fc18b34.entry.js.map} +1 -1
- package/dist/atomic/p-52121e1e.entry.js +2 -0
- package/dist/atomic/p-57673cd4.entry.js +2 -0
- package/dist/atomic/{p-d7b26c60.entry.js.map → p-57673cd4.entry.js.map} +1 -1
- package/dist/atomic/p-58a138a6.entry.js +2 -0
- package/dist/atomic/{p-ac7e9ef0.entry.js.map → p-58a138a6.entry.js.map} +1 -1
- package/dist/atomic/p-5aaf4b5b.entry.js +2 -0
- package/dist/atomic/{p-e2135441.entry.js.map → p-5aaf4b5b.entry.js.map} +1 -1
- package/dist/atomic/{p-53bcc515.js → p-5b28af78.js} +2 -2
- package/dist/atomic/{p-61004aad.js → p-5e7656d8.js} +2 -2
- package/dist/atomic/p-6220ff1d.entry.js +2 -0
- package/dist/atomic/{p-cd4591c2.entry.js.map → p-6220ff1d.entry.js.map} +1 -1
- package/dist/atomic/p-629b2dd9.entry.js +2 -0
- package/dist/atomic/{p-d4640d29.entry.js.map → p-629b2dd9.entry.js.map} +1 -1
- package/dist/atomic/{p-56d29641.entry.js → p-63271009.entry.js} +2 -2
- package/dist/atomic/{p-c18c7465.entry.js.map → p-63271009.entry.js.map} +1 -1
- package/dist/atomic/{p-ea8be3c4.entry.js → p-633628d5.entry.js} +2 -2
- package/dist/atomic/{p-a5cc4cad.entry.js → p-63e1e3ad.entry.js} +2 -2
- package/dist/atomic/p-6b2cf1fb.entry.js +2 -0
- package/dist/atomic/{p-f54597e3.entry.js.map → p-6b2cf1fb.entry.js.map} +1 -1
- package/dist/atomic/{p-2be3757d.js → p-6c6208b2.js} +2 -2
- package/dist/atomic/{p-3e892bd2.entry.js → p-6e424336.entry.js} +2 -2
- package/dist/atomic/p-70925804.entry.js +2 -0
- package/dist/atomic/{p-2026d2ca.entry.js.map → p-70925804.entry.js.map} +1 -1
- package/dist/atomic/p-70af5870.entry.js +2 -0
- package/dist/atomic/{p-01c9665d.entry.js.map → p-70af5870.entry.js.map} +1 -1
- package/dist/atomic/{p-45aba08f.entry.js → p-724a8422.entry.js} +2 -2
- package/dist/atomic/p-73256028.entry.js +2 -0
- package/dist/atomic/{p-20fc8621.entry.js.map → p-73256028.entry.js.map} +1 -1
- package/dist/atomic/p-753fad0b.entry.js +2 -0
- package/dist/atomic/{p-59aaa35e.entry.js.map → p-753fad0b.entry.js.map} +1 -1
- package/dist/atomic/p-7b0b4829.entry.js +2 -0
- package/dist/atomic/{p-091c2bac.entry.js.map → p-7b0b4829.entry.js.map} +1 -1
- package/dist/atomic/{p-a96a297e.js → p-7c023024.js} +2 -2
- package/dist/atomic/p-7cc0ac62.entry.js +2 -0
- package/dist/atomic/{p-8ce29074.entry.js.map → p-7cc0ac62.entry.js.map} +1 -1
- package/dist/atomic/{p-1cf33009.js → p-7e85b9b3.js} +2 -2
- package/dist/atomic/p-7ee46e01.js +2 -0
- package/dist/atomic/{p-f15011f0.entry.js → p-804b85df.entry.js} +2 -2
- package/dist/atomic/{p-dd382de2.entry.js → p-816d4b34.entry.js} +2 -2
- package/dist/atomic/{p-b0725b4c.entry.js → p-8317ee74.entry.js} +2 -2
- package/dist/atomic/{p-faaee781.entry.js.map → p-8317ee74.entry.js.map} +1 -1
- package/dist/atomic/p-8531564b.entry.js +2 -0
- package/dist/atomic/{p-04be1c25.entry.js.map → p-8531564b.entry.js.map} +1 -1
- package/dist/atomic/p-8bfdf2c5.entry.js +2 -0
- package/dist/atomic/{p-99ce5adb.entry.js.map → p-8bfdf2c5.entry.js.map} +1 -1
- package/dist/atomic/p-91185b72.entry.js +2 -0
- package/dist/atomic/{p-651a6cd4.entry.js.map → p-91185b72.entry.js.map} +1 -1
- package/dist/atomic/{p-f8cd64b9.js → p-92c85f14.js} +2 -2
- package/dist/atomic/{p-67a47b7b.entry.js → p-936d6b26.entry.js} +2 -2
- package/dist/atomic/{p-ed62d981.js → p-9767fe9a.js} +2 -2
- package/dist/atomic/{p-37cc1a0f.entry.js → p-9796e703.entry.js} +2 -2
- package/dist/atomic/p-995b31cf.entry.js +2 -0
- package/dist/atomic/{p-69a4b22e.entry.js.map → p-995b31cf.entry.js.map} +1 -1
- package/dist/atomic/{p-9f72fc38.entry.js → p-9a3c79ff.entry.js} +2 -2
- package/dist/atomic/{p-c4e9e693.entry.js.map → p-9a3c79ff.entry.js.map} +1 -1
- package/dist/atomic/{p-e40220e4.entry.js → p-9f4062f1.entry.js} +2 -2
- package/dist/atomic/{p-b0725b4c.entry.js.map → p-9f4062f1.entry.js.map} +1 -1
- package/dist/atomic/p-a135ebc4.entry.js +2 -0
- package/dist/atomic/{p-89125fc9.entry.js.map → p-a135ebc4.entry.js.map} +1 -1
- package/dist/atomic/{p-651a6cd4.entry.js → p-a42a7fce.entry.js} +2 -2
- package/dist/atomic/{p-bb97fea7.entry.js.map → p-a42a7fce.entry.js.map} +1 -1
- package/dist/atomic/p-affd89e5.entry.js +2 -0
- package/dist/atomic/{p-e40220e4.entry.js.map → p-affd89e5.entry.js.map} +1 -1
- package/dist/atomic/{p-43e95b74.entry.js → p-b0bd2709.entry.js} +2 -2
- package/dist/atomic/p-b3770db9.entry.js +2 -0
- package/dist/atomic/{p-6db12972.entry.js.map → p-b3770db9.entry.js.map} +1 -1
- package/dist/atomic/p-b389ea6d.js +2 -0
- package/dist/atomic/p-b389ea6d.js.map +1 -0
- package/dist/atomic/p-b3bbb1e5.entry.js +2 -0
- package/dist/atomic/{p-50dc4fa2.entry.js.map → p-b3bbb1e5.entry.js.map} +1 -1
- package/dist/atomic/{p-681f90df.entry.js → p-bfdecd0f.entry.js} +2 -2
- package/dist/atomic/{p-93116ce1.js → p-c35c892e.js} +2 -2
- package/dist/atomic/p-c826b8f9.entry.js +2 -0
- package/dist/atomic/{p-de22b08b.entry.js.map → p-c826b8f9.entry.js.map} +1 -1
- package/dist/atomic/{p-79075abe.js → p-c8e10077.js} +2 -2
- package/dist/atomic/{p-417b1b64.js → p-c953462e.js} +2 -2
- package/dist/atomic/{p-93da4373.entry.js → p-ccc22289.entry.js} +2 -2
- package/dist/atomic/{p-9f72fc38.entry.js.map → p-ccc22289.entry.js.map} +1 -1
- package/dist/atomic/{p-214cbca8.js → p-d2855a6f.js} +2 -2
- package/dist/atomic/p-d642ef17.entry.js +2 -0
- package/dist/atomic/{p-e74224a7.entry.js.map → p-d642ef17.entry.js.map} +1 -1
- package/dist/atomic/p-d6b6e7d4.entry.js +2 -0
- package/dist/atomic/{p-27a333b9.entry.js.map → p-d6b6e7d4.entry.js.map} +1 -1
- package/dist/atomic/p-d79aa846.entry.js +2 -0
- package/dist/atomic/{p-bf8db205.entry.js.map → p-d79aa846.entry.js.map} +1 -1
- package/dist/atomic/{p-ae6d5a5a.entry.js → p-d7ba69c5.entry.js} +2 -2
- package/dist/atomic/{p-fa14a392.entry.js.map → p-d7ba69c5.entry.js.map} +1 -1
- package/dist/atomic/p-d82800ed.entry.js +2 -0
- package/dist/atomic/{p-ae6d5a5a.entry.js.map → p-d82800ed.entry.js.map} +1 -1
- package/dist/atomic/p-d94e8dfd.entry.js +2 -0
- package/dist/atomic/{p-7af1cafa.entry.js.map → p-d94e8dfd.entry.js.map} +1 -1
- package/dist/atomic/p-db02de0e.entry.js +2 -0
- package/dist/atomic/{p-0a6a7642.entry.js.map → p-db02de0e.entry.js.map} +1 -1
- package/dist/atomic/p-db7810c6.entry.js +2 -0
- package/dist/atomic/{p-a3be51c0.entry.js.map → p-db7810c6.entry.js.map} +1 -1
- package/dist/atomic/{p-cd4591c2.entry.js → p-deda232b.entry.js} +2 -2
- package/dist/atomic/{p-f736d023.entry.js.map → p-deda232b.entry.js.map} +1 -1
- package/dist/atomic/{p-59558c51.entry.js → p-e4d2c0a4.entry.js} +2 -2
- package/dist/atomic/{p-7bc6bd40.entry.js.map → p-e4d2c0a4.entry.js.map} +1 -1
- package/dist/atomic/p-e7237496.entry.js +2 -0
- package/dist/atomic/{p-3de800fd.entry.js.map → p-e7237496.entry.js.map} +1 -1
- package/dist/atomic/p-eea8a5f1.entry.js +2 -0
- package/dist/atomic/{p-a006f8bc.entry.js.map → p-eea8a5f1.entry.js.map} +1 -1
- package/dist/atomic/{p-a5e36220.entry.js → p-f3e32508.entry.js} +2 -2
- package/dist/atomic/{p-2e6f5b07.entry.js.map → p-f3e32508.entry.js.map} +1 -1
- package/dist/atomic/p-f81a5329.entry.js +2 -0
- package/dist/atomic/{p-09f4a984.entry.js.map → p-f81a5329.entry.js.map} +1 -1
- package/dist/atomic/{p-7d01ca88.entry.js → p-fc342fe2.entry.js} +2 -2
- package/dist/atomic/{p-f451e57f.entry.js.map → p-fc342fe2.entry.js.map} +1 -1
- package/dist/cjs/_loader.cjs.js +1 -1
- package/dist/cjs/{analytics-config-ef11e2e7.js → analytics-config-4ae1e588.js} +2 -2
- package/dist/cjs/analytics-config-4ae1e588.js.map +1 -0
- package/dist/cjs/atomic-automatic-facet_2.cjs.entry.js +3 -4
- package/dist/cjs/atomic-automatic-facet_2.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-breadbox.cjs.entry.js +1 -2
- package/dist/cjs/atomic-breadbox.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-category-facet.cjs.entry.js +6 -7
- package/dist/cjs/atomic-category-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-color-facet.cjs.entry.js +8 -9
- package/dist/cjs/atomic-color-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-facet-number-input.cjs.entry.js +1 -2
- package/dist/cjs/atomic-facet-number-input.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-facet.cjs.entry.js +9 -10
- package/dist/cjs/atomic-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-format-currency.cjs.entry.js +1 -1
- package/dist/cjs/atomic-format-number.cjs.entry.js +1 -1
- package/dist/cjs/atomic-format-unit.cjs.entry.js +1 -1
- package/dist/cjs/atomic-generated-answer-feedback-modal.cjs.entry.js +3 -4
- package/dist/cjs/atomic-generated-answer-feedback-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-generated-answer.cjs.entry.js +2 -3
- package/dist/cjs/atomic-generated-answer.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-edit-toggle.cjs.entry.js +2 -3
- package/dist/cjs/atomic-insight-edit-toggle.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-facet.cjs.entry.js +7 -8
- package/dist/cjs/atomic-insight-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-full-search-button.cjs.entry.js +2 -3
- package/dist/cjs/atomic-insight-full-search-button.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js +2 -3
- package/dist/cjs/atomic-insight-generated-answer.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js +2 -3
- package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-interface.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js +5 -6
- package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-pager.cjs.entry.js +3 -4
- package/dist/cjs/atomic-insight-pager.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-query-error.cjs.entry.js +2 -3
- package/dist/cjs/atomic-insight-query-error.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js +2 -3
- package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js +2 -3
- package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-result-action.cjs.entry.js +2 -3
- package/dist/cjs/atomic-insight-result-action.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js +2 -3
- package/dist/cjs/atomic-insight-result-attach-to-case-action.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-result-children.cjs.entry.js +2 -3
- package/dist/cjs/atomic-insight-result-children.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js +2 -3
- package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-search-box.cjs.entry.js +2 -3
- package/dist/cjs/atomic-insight-search-box.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-smart-snippet-feedback-modal.cjs.entry.js +2 -3
- package/dist/cjs/atomic-insight-smart-snippet-feedback-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-smart-snippet-suggestions.cjs.entry.js +2 -3
- package/dist/cjs/atomic-insight-smart-snippet-suggestions.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-smart-snippet.cjs.entry.js +3 -4
- package/dist/cjs/atomic-insight-smart-snippet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-tab.cjs.entry.js +1 -2
- package/dist/cjs/atomic-insight-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js +4 -5
- package/dist/cjs/atomic-insight-timeframe-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-user-actions-modal.cjs.entry.js +1 -2
- package/dist/cjs/atomic-insight-user-actions-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js +1 -2
- package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js +2 -3
- package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-ipx-button.cjs.entry.js +1 -2
- package/dist/cjs/atomic-ipx-button.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +2 -3
- package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js +2 -3
- package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js +2 -3
- package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-ipx-tab.cjs.entry.js +1 -2
- package/dist/cjs/atomic-ipx-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-load-more-results.cjs.entry.js +1 -2
- package/dist/cjs/atomic-load-more-results.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-no-results.cjs.entry.js +1 -2
- package/dist/cjs/atomic-no-results.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-numeric-facet.cjs.entry.js +6 -7
- package/dist/cjs/atomic-numeric-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-pager.cjs.entry.js +14 -6
- package/dist/cjs/atomic-pager.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-popover.cjs.entry.js +1 -2
- package/dist/cjs/atomic-popover.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-query-error.cjs.entry.js +2 -3
- package/dist/cjs/atomic-query-error.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-quickview-modal.cjs.entry.js +3 -4
- package/dist/cjs/atomic-quickview-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-quickview.cjs.entry.js +2 -3
- package/dist/cjs/atomic-quickview.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-rating-facet.cjs.entry.js +4 -5
- package/dist/cjs/atomic-rating-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-rating-range-facet.cjs.entry.js +3 -4
- package/dist/cjs/atomic-rating-range-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-recs-error.cjs.entry.js +2 -3
- package/dist/cjs/atomic-recs-error.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 +2 -3
- package/dist/cjs/atomic-recs-list.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-refine-modal.cjs.entry.js +2 -3
- package/dist/cjs/atomic-refine-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-refine-toggle.cjs.entry.js +1 -2
- package/dist/cjs/atomic-refine-toggle.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-relevance-inspector.cjs.entry.js +1 -2
- package/dist/cjs/atomic-relevance-inspector.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-result-children.cjs.entry.js +3 -4
- package/dist/cjs/atomic-result-children.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-result-list.cjs.entry.js +1 -1
- package/dist/cjs/atomic-search-box-query-suggestions_2.cjs.entry.js +2 -2
- package/dist/cjs/atomic-search-box.cjs.entry.js +6 -7
- package/dist/cjs/atomic-search-box.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-search-interface.cjs.entry.js +1 -1
- package/dist/cjs/atomic-segmented-facet-scrollable.cjs.entry.js +1 -2
- package/dist/cjs/atomic-segmented-facet-scrollable.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-segmented-facet.cjs.entry.js +1 -2
- package/dist/cjs/atomic-segmented-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js +4 -5
- package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-smart-snippet-suggestions.cjs.entry.js +2 -3
- package/dist/cjs/atomic-smart-snippet-suggestions.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-smart-snippet.cjs.entry.js +3 -4
- package/dist/cjs/atomic-smart-snippet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-sort-dropdown.cjs.entry.js +2 -2
- package/dist/cjs/atomic-sort-expression.cjs.entry.js +1 -1
- package/dist/cjs/atomic-sort-expression.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-stencil-facet-date-input.cjs.entry.js +1 -2
- package/dist/cjs/atomic-stencil-facet-date-input.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-tab-bar_2.cjs.entry.js +1 -2
- package/dist/cjs/atomic-tab-bar_2.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-tab-button.cjs.entry.js +1 -2
- package/dist/cjs/atomic-tab-button.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-tab-manager.cjs.entry.js +1 -1
- package/dist/cjs/atomic-timeframe-facet.cjs.entry.js +4 -5
- package/dist/cjs/atomic-timeframe-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic.cjs.js +1 -1
- package/dist/cjs/{facet-placeholder-9fa83ffc.js → facet-placeholder-d9604249.js} +2 -2
- package/dist/cjs/{facet-placeholder-9fa83ffc.js.map → facet-placeholder-d9604249.js.map} +1 -1
- package/dist/cjs/{generated-answer-common-1f7e3c88.js → generated-answer-common-e5cd257b.js} +2 -2
- package/dist/cjs/{generated-answer-common-1f7e3c88.js.map → generated-answer-common-e5cd257b.js.map} +1 -1
- package/dist/cjs/{iconButton-bf5b24cf.js → iconButton-3aef664a.js} +2 -2
- package/dist/cjs/{iconButton-bf5b24cf.js.map → iconButton-3aef664a.js.map} +1 -1
- package/dist/cjs/index-757bc886.js +0 -4
- package/dist/cjs/{show-hide-button-2fb7407f.js → show-hide-button-f9096749.js} +2 -2
- package/dist/cjs/{show-hide-button-2fb7407f.js.map → show-hide-button-f9096749.js.map} +1 -1
- package/dist/cjs/{smart-snippet-common-abb0cdce.js → smart-snippet-common-118a7188.js} +3 -3
- package/dist/cjs/{smart-snippet-common-abb0cdce.js.map → smart-snippet-common-118a7188.js.map} +1 -1
- package/dist/cjs/{smart-snippet-feedback-modal-common-c29844fa.js → smart-snippet-feedback-modal-common-9b3e5c88.js} +2 -2
- package/dist/cjs/{smart-snippet-feedback-modal-common-c29844fa.js.map → smart-snippet-feedback-modal-common-9b3e5c88.js.map} +1 -1
- package/dist/cjs/{smart-snippet-suggestions-common-f0d8677b.js → smart-snippet-suggestions-common-1a6af6e7.js} +2 -2
- package/dist/cjs/{smart-snippet-suggestions-common-f0d8677b.js.map → smart-snippet-suggestions-common-1a6af6e7.js.map} +1 -1
- package/dist/cjs/{ripple-4070d750.js → stencil-button-f6c2410c.js} +43 -1
- package/dist/cjs/stencil-button-f6c2410c.js.map +1 -0
- package/dist/cjs/{stencil-carousel-cb870e4d.js → stencil-carousel-51a30e42.js} +2 -2
- package/dist/cjs/{stencil-carousel-cb870e4d.js.map → stencil-carousel-51a30e42.js.map} +1 -1
- package/dist/cjs/{stencil-facet-search-matches-f2fd2b83.js → stencil-facet-search-matches-43fad15c.js} +2 -2
- package/dist/cjs/{stencil-facet-search-matches-f2fd2b83.js.map → stencil-facet-search-matches-43fad15c.js.map} +1 -1
- package/dist/cjs/{stencil-facet-show-more-less-541e1544.js → stencil-facet-show-more-less-0894c761.js} +2 -2
- package/dist/cjs/{stencil-facet-show-more-less-541e1544.js.map → stencil-facet-show-more-less-0894c761.js.map} +1 -1
- package/dist/cjs/{stencil-facet-value-box-2949669d.js → stencil-facet-value-box-f3f982f2.js} +2 -2
- package/dist/cjs/{stencil-facet-value-box-2949669d.js.map → stencil-facet-value-box-f3f982f2.js.map} +1 -1
- package/dist/cjs/{stencil-facet-value-a4da653b.js → stencil-facet-value-c72a58e6.js} +4 -4
- package/dist/cjs/{stencil-facet-value-a4da653b.js.map → stencil-facet-value-c72a58e6.js.map} +1 -1
- package/dist/cjs/{stencil-facet-value-checkbox-49e6843d.js → stencil-facet-value-checkbox-169fade3.js} +4 -4
- package/dist/cjs/{stencil-facet-value-checkbox-49e6843d.js.map → stencil-facet-value-checkbox-169fade3.js.map} +1 -1
- package/dist/cjs/{stencil-facet-value-link-089a2160.js → stencil-facet-value-link-bd461250.js} +2 -2
- package/dist/cjs/{stencil-facet-value-link-089a2160.js.map → stencil-facet-value-link-bd461250.js.map} +1 -1
- package/dist/cjs/{stencil-link-37587e3a.js → stencil-link-f0f8fc23.js} +2 -2
- package/dist/cjs/{stencil-link-37587e3a.js.map → stencil-link-f0f8fc23.js.map} +1 -1
- package/dist/cjs/{stencil-modal-33439a14.js → stencil-modal-8229c340.js} +2 -2
- package/dist/cjs/{stencil-modal-33439a14.js.map → stencil-modal-8229c340.js.map} +1 -1
- package/dist/cjs/{stencil-pager-navigation-54ce337f.js → stencil-pager-navigation-f5c13e0c.js} +3 -3
- package/dist/cjs/{stencil-pager-navigation-54ce337f.js.map → stencil-pager-navigation-f5c13e0c.js.map} +1 -1
- package/dist/cjs/{stencil-radio-button-b7440398.js → stencil-radio-button-f86cc13b.js} +3 -3
- package/dist/cjs/{stencil-radio-button-b7440398.js.map → stencil-radio-button-f86cc13b.js.map} +1 -1
- package/dist/cjs/{stencil-suggestion-manager-5fa3ac70.js → stencil-suggestion-manager-9079f36d.js} +2 -2
- package/dist/cjs/{stencil-suggestion-manager-5fa3ac70.js.map → stencil-suggestion-manager-9079f36d.js.map} +1 -1
- package/dist/cjs/{stencil-values-container-57751dcd.js → stencil-values-container-b6539384.js} +3 -3
- package/dist/cjs/{stencil-values-container-57751dcd.js.map → stencil-values-container-b6539384.js.map} +1 -1
- package/dist/cjs/{timeframe-facet-common-c7d03854.js → timeframe-facet-common-5d249725.js} +3 -3
- package/dist/cjs/{timeframe-facet-common-c7d03854.js.map → timeframe-facet-common-5d249725.js.map} +1 -1
- package/dist/cjs/version.cjs.js +2 -2
- package/dist/esm/_loader.js +1 -1
- package/dist/esm/{analytics-config-75155add.js → analytics-config-65d89fd9.js} +2 -2
- package/dist/esm/analytics-config-65d89fd9.js.map +1 -0
- package/dist/esm/atomic-automatic-facet_2.entry.js +3 -4
- package/dist/esm/atomic-automatic-facet_2.entry.js.map +1 -1
- package/dist/esm/atomic-breadbox.entry.js +1 -2
- package/dist/esm/atomic-breadbox.entry.js.map +1 -1
- package/dist/esm/atomic-category-facet.entry.js +6 -7
- package/dist/esm/atomic-category-facet.entry.js.map +1 -1
- package/dist/esm/atomic-color-facet.entry.js +6 -7
- package/dist/esm/atomic-color-facet.entry.js.map +1 -1
- package/dist/esm/atomic-facet-number-input.entry.js +1 -2
- package/dist/esm/atomic-facet-number-input.entry.js.map +1 -1
- package/dist/esm/atomic-facet.entry.js +9 -10
- package/dist/esm/atomic-facet.entry.js.map +1 -1
- package/dist/esm/atomic-format-currency.entry.js +1 -1
- package/dist/esm/atomic-format-number.entry.js +1 -1
- package/dist/esm/atomic-format-unit.entry.js +1 -1
- package/dist/esm/atomic-generated-answer-feedback-modal.entry.js +3 -4
- package/dist/esm/atomic-generated-answer-feedback-modal.entry.js.map +1 -1
- package/dist/esm/atomic-generated-answer.entry.js +2 -3
- package/dist/esm/atomic-generated-answer.entry.js.map +1 -1
- package/dist/esm/atomic-insight-edit-toggle.entry.js +2 -3
- package/dist/esm/atomic-insight-edit-toggle.entry.js.map +1 -1
- package/dist/esm/atomic-insight-facet.entry.js +7 -8
- package/dist/esm/atomic-insight-facet.entry.js.map +1 -1
- package/dist/esm/atomic-insight-full-search-button.entry.js +2 -3
- package/dist/esm/atomic-insight-full-search-button.entry.js.map +1 -1
- package/dist/esm/atomic-insight-generated-answer.entry.js +2 -3
- package/dist/esm/atomic-insight-generated-answer.entry.js.map +1 -1
- package/dist/esm/atomic-insight-history-toggle.entry.js +2 -3
- package/dist/esm/atomic-insight-history-toggle.entry.js.map +1 -1
- package/dist/esm/atomic-insight-interface.entry.js +1 -1
- package/dist/esm/atomic-insight-numeric-facet.entry.js +5 -6
- package/dist/esm/atomic-insight-numeric-facet.entry.js.map +1 -1
- package/dist/esm/atomic-insight-pager.entry.js +3 -4
- package/dist/esm/atomic-insight-pager.entry.js.map +1 -1
- package/dist/esm/atomic-insight-query-error.entry.js +2 -3
- package/dist/esm/atomic-insight-query-error.entry.js.map +1 -1
- package/dist/esm/atomic-insight-refine-modal.entry.js +2 -3
- package/dist/esm/atomic-insight-refine-modal.entry.js.map +1 -1
- package/dist/esm/atomic-insight-refine-toggle.entry.js +2 -3
- package/dist/esm/atomic-insight-refine-toggle.entry.js.map +1 -1
- package/dist/esm/atomic-insight-result-action.entry.js +2 -3
- package/dist/esm/atomic-insight-result-action.entry.js.map +1 -1
- package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js +2 -3
- package/dist/esm/atomic-insight-result-attach-to-case-action.entry.js.map +1 -1
- package/dist/esm/atomic-insight-result-children.entry.js +2 -3
- package/dist/esm/atomic-insight-result-children.entry.js.map +1 -1
- package/dist/esm/atomic-insight-result-quickview-action.entry.js +2 -3
- package/dist/esm/atomic-insight-result-quickview-action.entry.js.map +1 -1
- package/dist/esm/atomic-insight-search-box.entry.js +2 -3
- package/dist/esm/atomic-insight-search-box.entry.js.map +1 -1
- package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js +2 -3
- package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js.map +1 -1
- package/dist/esm/atomic-insight-smart-snippet-suggestions.entry.js +2 -3
- package/dist/esm/atomic-insight-smart-snippet-suggestions.entry.js.map +1 -1
- package/dist/esm/atomic-insight-smart-snippet.entry.js +3 -4
- package/dist/esm/atomic-insight-smart-snippet.entry.js.map +1 -1
- package/dist/esm/atomic-insight-tab.entry.js +1 -2
- package/dist/esm/atomic-insight-tab.entry.js.map +1 -1
- package/dist/esm/atomic-insight-timeframe-facet.entry.js +4 -5
- package/dist/esm/atomic-insight-timeframe-facet.entry.js.map +1 -1
- package/dist/esm/atomic-insight-user-actions-modal.entry.js +1 -2
- package/dist/esm/atomic-insight-user-actions-modal.entry.js.map +1 -1
- package/dist/esm/atomic-insight-user-actions-session_2.entry.js +1 -2
- package/dist/esm/atomic-insight-user-actions-session_2.entry.js.map +1 -1
- package/dist/esm/atomic-insight-user-actions-toggle.entry.js +2 -3
- package/dist/esm/atomic-insight-user-actions-toggle.entry.js.map +1 -1
- package/dist/esm/atomic-ipx-button.entry.js +1 -2
- package/dist/esm/atomic-ipx-button.entry.js.map +1 -1
- package/dist/esm/atomic-ipx-recs-list.entry.js +2 -3
- package/dist/esm/atomic-ipx-recs-list.entry.js.map +1 -1
- package/dist/esm/atomic-ipx-refine-modal.entry.js +2 -3
- package/dist/esm/atomic-ipx-refine-modal.entry.js.map +1 -1
- package/dist/esm/atomic-ipx-refine-toggle.entry.js +2 -3
- package/dist/esm/atomic-ipx-refine-toggle.entry.js.map +1 -1
- package/dist/esm/atomic-ipx-tab.entry.js +1 -2
- package/dist/esm/atomic-ipx-tab.entry.js.map +1 -1
- package/dist/esm/atomic-load-more-results.entry.js +1 -2
- package/dist/esm/atomic-load-more-results.entry.js.map +1 -1
- package/dist/esm/atomic-no-results.entry.js +1 -2
- package/dist/esm/atomic-no-results.entry.js.map +1 -1
- package/dist/esm/atomic-numeric-facet.entry.js +6 -7
- package/dist/esm/atomic-numeric-facet.entry.js.map +1 -1
- package/dist/esm/atomic-pager.entry.js +15 -7
- package/dist/esm/atomic-pager.entry.js.map +1 -1
- package/dist/esm/atomic-popover.entry.js +1 -2
- package/dist/esm/atomic-popover.entry.js.map +1 -1
- package/dist/esm/atomic-query-error.entry.js +2 -3
- package/dist/esm/atomic-query-error.entry.js.map +1 -1
- package/dist/esm/atomic-quickview-modal.entry.js +3 -4
- package/dist/esm/atomic-quickview-modal.entry.js.map +1 -1
- package/dist/esm/atomic-quickview.entry.js +2 -3
- package/dist/esm/atomic-quickview.entry.js.map +1 -1
- package/dist/esm/atomic-rating-facet.entry.js +4 -5
- package/dist/esm/atomic-rating-facet.entry.js.map +1 -1
- package/dist/esm/atomic-rating-range-facet.entry.js +3 -4
- package/dist/esm/atomic-rating-range-facet.entry.js.map +1 -1
- package/dist/esm/atomic-recs-error.entry.js +2 -3
- package/dist/esm/atomic-recs-error.entry.js.map +1 -1
- package/dist/esm/atomic-recs-interface.entry.js +1 -1
- package/dist/esm/atomic-recs-list.entry.js +2 -3
- package/dist/esm/atomic-recs-list.entry.js.map +1 -1
- package/dist/esm/atomic-refine-modal.entry.js +2 -3
- package/dist/esm/atomic-refine-modal.entry.js.map +1 -1
- package/dist/esm/atomic-refine-toggle.entry.js +1 -2
- package/dist/esm/atomic-refine-toggle.entry.js.map +1 -1
- package/dist/esm/atomic-relevance-inspector.entry.js +1 -2
- package/dist/esm/atomic-relevance-inspector.entry.js.map +1 -1
- package/dist/esm/atomic-result-children.entry.js +3 -4
- package/dist/esm/atomic-result-children.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-result-list.entry.js +1 -1
- package/dist/esm/atomic-search-box-query-suggestions_2.entry.js +2 -2
- package/dist/esm/atomic-search-box.entry.js +6 -7
- package/dist/esm/atomic-search-box.entry.js.map +1 -1
- package/dist/esm/atomic-search-interface.entry.js +1 -1
- package/dist/esm/atomic-segmented-facet-scrollable.entry.js +1 -2
- package/dist/esm/atomic-segmented-facet-scrollable.entry.js.map +1 -1
- package/dist/esm/atomic-segmented-facet.entry.js +1 -2
- package/dist/esm/atomic-segmented-facet.entry.js.map +1 -1
- package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js +4 -5
- package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js.map +1 -1
- package/dist/esm/atomic-smart-snippet-suggestions.entry.js +2 -3
- package/dist/esm/atomic-smart-snippet-suggestions.entry.js.map +1 -1
- package/dist/esm/atomic-smart-snippet.entry.js +3 -4
- package/dist/esm/atomic-smart-snippet.entry.js.map +1 -1
- package/dist/esm/atomic-sort-dropdown.entry.js +2 -2
- package/dist/esm/atomic-sort-expression.entry.js +1 -1
- package/dist/esm/atomic-sort-expression.entry.js.map +1 -1
- package/dist/esm/atomic-stencil-facet-date-input.entry.js +1 -2
- package/dist/esm/atomic-stencil-facet-date-input.entry.js.map +1 -1
- package/dist/esm/atomic-tab-bar_2.entry.js +1 -2
- package/dist/esm/atomic-tab-bar_2.entry.js.map +1 -1
- package/dist/esm/atomic-tab-button.entry.js +1 -2
- package/dist/esm/atomic-tab-button.entry.js.map +1 -1
- package/dist/esm/atomic-tab-manager.entry.js +1 -1
- package/dist/esm/atomic-timeframe-facet.entry.js +4 -5
- package/dist/esm/atomic-timeframe-facet.entry.js.map +1 -1
- package/dist/esm/atomic.js +1 -1
- package/dist/esm/{facet-placeholder-ced9331e.js → facet-placeholder-57a5207d.js} +2 -2
- package/dist/esm/{facet-placeholder-ced9331e.js.map → facet-placeholder-57a5207d.js.map} +1 -1
- package/dist/esm/{generated-answer-common-ee9bfc67.js → generated-answer-common-835787fa.js} +2 -2
- package/dist/esm/{generated-answer-common-ee9bfc67.js.map → generated-answer-common-835787fa.js.map} +1 -1
- package/dist/esm/{iconButton-2e6938c5.js → iconButton-779dd472.js} +2 -2
- package/dist/esm/{iconButton-2e6938c5.js.map → iconButton-779dd472.js.map} +1 -1
- package/dist/esm/index-3f35faca.js +0 -4
- package/dist/esm/{show-hide-button-caaec7b0.js → show-hide-button-7cc80d21.js} +2 -2
- package/dist/esm/{show-hide-button-caaec7b0.js.map → show-hide-button-7cc80d21.js.map} +1 -1
- package/dist/esm/{smart-snippet-common-fb774198.js → smart-snippet-common-86bb93a7.js} +3 -3
- package/dist/esm/{smart-snippet-common-fb774198.js.map → smart-snippet-common-86bb93a7.js.map} +1 -1
- package/dist/esm/{smart-snippet-feedback-modal-common-d72f9043.js → smart-snippet-feedback-modal-common-8ec991db.js} +2 -2
- package/dist/esm/{smart-snippet-feedback-modal-common-d72f9043.js.map → smart-snippet-feedback-modal-common-8ec991db.js.map} +1 -1
- package/dist/esm/{smart-snippet-suggestions-common-25d34a7b.js → smart-snippet-suggestions-common-6c465bbf.js} +2 -2
- package/dist/esm/{smart-snippet-suggestions-common-25d34a7b.js.map → smart-snippet-suggestions-common-6c465bbf.js.map} +1 -1
- package/dist/esm/{ripple-b1f0b09d.js → stencil-button-75e8b31b.js} +43 -2
- package/dist/esm/stencil-button-75e8b31b.js.map +1 -0
- package/dist/esm/{stencil-carousel-a0eb523c.js → stencil-carousel-d335bf03.js} +2 -2
- package/dist/esm/{stencil-carousel-a0eb523c.js.map → stencil-carousel-d335bf03.js.map} +1 -1
- package/dist/esm/{stencil-facet-search-matches-7e6acab2.js → stencil-facet-search-matches-84f41731.js} +2 -2
- package/dist/esm/{stencil-facet-search-matches-7e6acab2.js.map → stencil-facet-search-matches-84f41731.js.map} +1 -1
- package/dist/esm/{stencil-facet-show-more-less-1198472f.js → stencil-facet-show-more-less-ea417674.js} +2 -2
- package/dist/esm/{stencil-facet-show-more-less-1198472f.js.map → stencil-facet-show-more-less-ea417674.js.map} +1 -1
- package/dist/esm/{stencil-facet-value-box-30a3003f.js → stencil-facet-value-box-ecd5015e.js} +2 -2
- package/dist/esm/{stencil-facet-value-box-30a3003f.js.map → stencil-facet-value-box-ecd5015e.js.map} +1 -1
- package/dist/esm/{stencil-facet-value-325f019d.js → stencil-facet-value-c080798e.js} +4 -4
- package/dist/esm/{stencil-facet-value-325f019d.js.map → stencil-facet-value-c080798e.js.map} +1 -1
- package/dist/esm/{stencil-facet-value-checkbox-5a90f933.js → stencil-facet-value-checkbox-0786f1d8.js} +2 -2
- package/dist/esm/{stencil-facet-value-checkbox-5a90f933.js.map → stencil-facet-value-checkbox-0786f1d8.js.map} +1 -1
- package/dist/esm/{stencil-facet-value-link-b3b194b7.js → stencil-facet-value-link-4c270d4d.js} +2 -2
- package/dist/esm/{stencil-facet-value-link-b3b194b7.js.map → stencil-facet-value-link-4c270d4d.js.map} +1 -1
- package/dist/esm/{stencil-link-d52947a6.js → stencil-link-4136c3ad.js} +2 -2
- package/dist/esm/{stencil-link-d52947a6.js.map → stencil-link-4136c3ad.js.map} +1 -1
- package/dist/esm/{stencil-modal-01e42232.js → stencil-modal-151563e7.js} +2 -2
- package/dist/esm/{stencil-modal-01e42232.js.map → stencil-modal-151563e7.js.map} +1 -1
- package/dist/esm/{stencil-pager-navigation-e906e3ae.js → stencil-pager-navigation-c6870b0f.js} +3 -3
- package/dist/esm/{stencil-pager-navigation-e906e3ae.js.map → stencil-pager-navigation-c6870b0f.js.map} +1 -1
- package/dist/esm/{stencil-radio-button-022ec547.js → stencil-radio-button-ce6ec704.js} +2 -2
- package/dist/esm/{stencil-radio-button-022ec547.js.map → stencil-radio-button-ce6ec704.js.map} +1 -1
- package/dist/esm/{stencil-suggestion-manager-f52c6e39.js → stencil-suggestion-manager-8240b520.js} +2 -2
- package/dist/esm/{stencil-suggestion-manager-f52c6e39.js.map → stencil-suggestion-manager-8240b520.js.map} +1 -1
- package/dist/esm/{stencil-values-container-162e03e0.js → stencil-values-container-e005ef7f.js} +3 -3
- package/dist/esm/{stencil-values-container-162e03e0.js.map → stencil-values-container-e005ef7f.js.map} +1 -1
- package/dist/esm/{timeframe-facet-common-50fd210c.js → timeframe-facet-common-8b4b78a7.js} +3 -3
- package/dist/esm/{timeframe-facet-common-50fd210c.js.map → timeframe-facet-common-8b4b78a7.js.map} +1 -1
- package/dist/esm/version.js +2 -2
- package/dist/types/components/commerce/atomic-commerce-breadbox/atomic-commerce-breadbox.d.ts +0 -2
- package/dist/types/components/commerce/atomic-commerce-did-you-mean/atomic-commerce-did-you-mean.d.ts +0 -2
- package/dist/types/components/commerce/atomic-commerce-facet/atomic-commerce-facet.d.ts +0 -2
- package/dist/types/components/commerce/atomic-commerce-facets/atomic-commerce-facets.d.ts +0 -1
- package/dist/types/components/commerce/atomic-commerce-interface/atomic-commerce-interface.d.ts +1 -2
- package/dist/types/components/commerce/atomic-commerce-layout/atomic-commerce-layout.d.ts +2 -1
- package/dist/types/components/commerce/atomic-commerce-no-products/atomic-commerce-no-products.d.ts +0 -2
- package/dist/types/components/commerce/atomic-commerce-numeric-facet/atomic-commerce-numeric-facet.d.ts +0 -3
- package/dist/types/components/commerce/atomic-commerce-pager/atomic-commerce-pager.d.ts +0 -1
- package/dist/types/components/commerce/atomic-commerce-product-list/atomic-commerce-product-list.d.ts +0 -2
- package/dist/types/components/commerce/atomic-commerce-products-per-page/atomic-commerce-products-per-page.d.ts +0 -2
- package/dist/types/components/commerce/atomic-commerce-query-error/atomic-commerce-query-error.d.ts +0 -2
- package/dist/types/components/commerce/atomic-commerce-query-summary/atomic-commerce-query-summary.d.ts +0 -2
- package/dist/types/components/commerce/atomic-commerce-recommendation-interface/atomic-commerce-recommendation-interface.d.ts +3 -1
- package/dist/types/components/commerce/atomic-commerce-recommendation-list/atomic-commerce-recommendation-list.d.ts +0 -1
- package/dist/types/components/commerce/atomic-commerce-refine-toggle/atomic-commerce-refine-toggle.d.ts +0 -2
- package/dist/types/components/commerce/atomic-commerce-search-box/atomic-commerce-search-box.d.ts +0 -2
- package/dist/types/components/commerce/atomic-commerce-search-box-instant-products/atomic-commerce-search-box-instant-products.d.ts +1 -4
- package/dist/types/components/commerce/atomic-commerce-search-box-query-suggestions/atomic-commerce-search-box-query-suggestions.d.ts +1 -2
- package/dist/types/components/commerce/atomic-commerce-search-box-recent-queries/atomic-commerce-search-box-recent-queries.d.ts +0 -2
- package/dist/types/components/commerce/atomic-commerce-sort-dropdown/atomic-commerce-sort-dropdown.d.ts +0 -2
- package/dist/types/components/commerce/atomic-commerce-timeframe-facet/atomic-commerce-timeframe-facet.d.ts +0 -2
- package/dist/types/components/commerce/atomic-product-field-condition/atomic-product-field-condition.d.ts +0 -2
- package/dist/types/components/commerce/atomic-product-link/atomic-product-link.d.ts +2 -1
- package/dist/types/components/commerce/atomic-product-multi-value-text/atomic-product-multi-value-text.d.ts +0 -2
- package/dist/types/components/commerce/atomic-product-numeric-field-value/atomic-product-numeric-field-value.d.ts +0 -1
- package/dist/types/components/commerce/atomic-product-price/atomic-product-price.d.ts +0 -1
- package/dist/types/components/commerce/atomic-product-rating/atomic-product-rating.d.ts +0 -2
- package/dist/types/components/commerce/atomic-product-template/atomic-product-template.d.ts +0 -2
- package/dist/types/components/search/atomic-results-per-page/atomic-results-per-page.d.ts +12 -9
- package/dist/types/components/search/atomic-sort-expression/atomic-sort-expression.d.ts +13 -2
- package/dist/types/components/search/index.d.ts +1 -1
- package/dist/types/components.d.ts +2 -61
- package/docs/atomic-docs.json +2 -121
- package/package.json +3 -3
- package/dist/atomic/components/atomic-results-per-page.d.ts +0 -11
- package/dist/atomic/components/atomic-results-per-page.js +0 -171
- package/dist/atomic/components/atomic-results-per-page.js.map +0 -1
- package/dist/atomic/components/ripple.js +0 -45
- package/dist/atomic/components/ripple.js.map +0 -1
- package/dist/atomic/components/stencil-pager-guard.js +0 -16
- package/dist/atomic/components/stencil-pager-guard.js.map +0 -1
- package/dist/atomic/p-01c9665d.entry.js +0 -2
- package/dist/atomic/p-04be1c25.entry.js +0 -2
- package/dist/atomic/p-091c2bac.entry.js +0 -2
- package/dist/atomic/p-0a6a7642.entry.js +0 -2
- package/dist/atomic/p-194a9595.entry.js +0 -2
- package/dist/atomic/p-2026d2ca.entry.js +0 -2
- package/dist/atomic/p-20fc8621.entry.js +0 -2
- package/dist/atomic/p-22e61d7a.entry.js.map +0 -1
- package/dist/atomic/p-234b3314.js +0 -2
- package/dist/atomic/p-27a333b9.entry.js +0 -2
- package/dist/atomic/p-28a6dd9b.js +0 -2
- package/dist/atomic/p-28a6dd9b.js.map +0 -1
- package/dist/atomic/p-2e6f5b07.entry.js +0 -2
- package/dist/atomic/p-3431545a.entry.js +0 -2
- package/dist/atomic/p-36acf9d8.js +0 -2
- package/dist/atomic/p-36acf9d8.js.map +0 -1
- package/dist/atomic/p-3de800fd.entry.js +0 -2
- package/dist/atomic/p-4bee3b34.entry.js +0 -2
- package/dist/atomic/p-50dc4fa2.entry.js +0 -2
- package/dist/atomic/p-59aaa35e.entry.js +0 -2
- package/dist/atomic/p-69a4b22e.entry.js +0 -2
- package/dist/atomic/p-6c847e86.entry.js +0 -2
- package/dist/atomic/p-6db12972.entry.js +0 -2
- package/dist/atomic/p-720f9337.entry.js.map +0 -1
- package/dist/atomic/p-78689603.entry.js +0 -2
- package/dist/atomic/p-7af1cafa.entry.js +0 -2
- package/dist/atomic/p-827a8d65.entry.js +0 -2
- package/dist/atomic/p-885be98c.entry.js +0 -2
- package/dist/atomic/p-89125fc9.entry.js +0 -2
- package/dist/atomic/p-8a74eff4.entry.js +0 -2
- package/dist/atomic/p-8ce29074.entry.js +0 -2
- package/dist/atomic/p-8fdd92e1.entry.js +0 -2
- package/dist/atomic/p-a006f8bc.entry.js +0 -2
- package/dist/atomic/p-a3be51c0.entry.js +0 -2
- package/dist/atomic/p-a58f35bc.entry.js +0 -2
- package/dist/atomic/p-a5e36220.entry.js.map +0 -1
- package/dist/atomic/p-a7576224.entry.js +0 -2
- package/dist/atomic/p-ac7e9ef0.entry.js +0 -2
- package/dist/atomic/p-b6befb73.entry.js +0 -2
- package/dist/atomic/p-bf8db205.entry.js +0 -2
- package/dist/atomic/p-c18c7465.entry.js +0 -2
- package/dist/atomic/p-c4e9e693.entry.js +0 -2
- package/dist/atomic/p-d4640d29.entry.js +0 -2
- package/dist/atomic/p-d7b26c60.entry.js +0 -2
- package/dist/atomic/p-de22b08b.entry.js +0 -2
- package/dist/atomic/p-e1d51cf1.entry.js +0 -2
- package/dist/atomic/p-e2135441.entry.js +0 -2
- package/dist/atomic/p-ef905286.js +0 -2
- package/dist/atomic/p-ef905286.js.map +0 -1
- package/dist/atomic/p-f451e57f.entry.js +0 -2
- package/dist/atomic/p-f54597e3.entry.js +0 -2
- package/dist/atomic/p-f736d023.entry.js +0 -2
- package/dist/atomic/p-f776ee25.entry.js +0 -2
- package/dist/atomic/p-fa14a392.entry.js +0 -2
- package/dist/atomic/p-faaee781.entry.js +0 -2
- package/dist/cjs/analytics-config-ef11e2e7.js.map +0 -1
- package/dist/cjs/atomic-results-per-page.cjs.entry.js +0 -158
- package/dist/cjs/atomic-results-per-page.cjs.entry.js.map +0 -1
- package/dist/cjs/ripple-4070d750.js.map +0 -1
- package/dist/cjs/stencil-button-aa4c0879.js +0 -48
- package/dist/cjs/stencil-button-aa4c0879.js.map +0 -1
- package/dist/cjs/stencil-pager-guard-16f46f73.js +0 -18
- package/dist/cjs/stencil-pager-guard-16f46f73.js.map +0 -1
- package/dist/esm/analytics-config-75155add.js.map +0 -1
- package/dist/esm/atomic-results-per-page.entry.js +0 -154
- package/dist/esm/atomic-results-per-page.entry.js.map +0 -1
- package/dist/esm/ripple-b1f0b09d.js.map +0 -1
- package/dist/esm/stencil-button-2a8cc429.js +0 -46
- package/dist/esm/stencil-button-2a8cc429.js.map +0 -1
- package/dist/esm/stencil-pager-guard-16dd9188.js +0 -16
- package/dist/esm/stencil-pager-guard-16dd9188.js.map +0 -1
- /package/dist/atomic/{p-bb5786e8.js.map → p-05768310.js.map} +0 -0
- /package/dist/atomic/{p-3fd7de45.entry.js.map → p-0bb4a24a.entry.js.map} +0 -0
- /package/dist/atomic/{p-d044ff5f.js.map → p-0c76c49a.js.map} +0 -0
- /package/dist/atomic/{p-a3dabead.js.map → p-1b679702.js.map} +0 -0
- /package/dist/atomic/{p-5fa99042.js.map → p-225ff26e.js.map} +0 -0
- /package/dist/atomic/{p-d917f9a3.js.map → p-2ef593e5.js.map} +0 -0
- /package/dist/atomic/{p-5db46842.js.map → p-37697010.js.map} +0 -0
- /package/dist/atomic/{p-1192c7ba.js.map → p-41200765.js.map} +0 -0
- /package/dist/atomic/{p-2857ab2b.js.map → p-486ad8f3.js.map} +0 -0
- /package/dist/atomic/{p-67425787.js.map → p-499a97cc.js.map} +0 -0
- /package/dist/atomic/{p-827a8d65.entry.js.map → p-52121e1e.entry.js.map} +0 -0
- /package/dist/atomic/{p-53bcc515.js.map → p-5b28af78.js.map} +0 -0
- /package/dist/atomic/{p-61004aad.js.map → p-5e7656d8.js.map} +0 -0
- /package/dist/atomic/{p-ea8be3c4.entry.js.map → p-633628d5.entry.js.map} +0 -0
- /package/dist/atomic/{p-a5cc4cad.entry.js.map → p-63e1e3ad.entry.js.map} +0 -0
- /package/dist/atomic/{p-2be3757d.js.map → p-6c6208b2.js.map} +0 -0
- /package/dist/atomic/{p-3e892bd2.entry.js.map → p-6e424336.entry.js.map} +0 -0
- /package/dist/atomic/{p-45aba08f.entry.js.map → p-724a8422.entry.js.map} +0 -0
- /package/dist/atomic/{p-a96a297e.js.map → p-7c023024.js.map} +0 -0
- /package/dist/atomic/{p-1cf33009.js.map → p-7e85b9b3.js.map} +0 -0
- /package/dist/atomic/{p-234b3314.js.map → p-7ee46e01.js.map} +0 -0
- /package/dist/atomic/{p-f15011f0.entry.js.map → p-804b85df.entry.js.map} +0 -0
- /package/dist/atomic/{p-dd382de2.entry.js.map → p-816d4b34.entry.js.map} +0 -0
- /package/dist/atomic/{p-f8cd64b9.js.map → p-92c85f14.js.map} +0 -0
- /package/dist/atomic/{p-67a47b7b.entry.js.map → p-936d6b26.entry.js.map} +0 -0
- /package/dist/atomic/{p-ed62d981.js.map → p-9767fe9a.js.map} +0 -0
- /package/dist/atomic/{p-37cc1a0f.entry.js.map → p-9796e703.entry.js.map} +0 -0
- /package/dist/atomic/{p-43e95b74.entry.js.map → p-b0bd2709.entry.js.map} +0 -0
- /package/dist/atomic/{p-681f90df.entry.js.map → p-bfdecd0f.entry.js.map} +0 -0
- /package/dist/atomic/{p-93116ce1.js.map → p-c35c892e.js.map} +0 -0
- /package/dist/atomic/{p-79075abe.js.map → p-c8e10077.js.map} +0 -0
- /package/dist/atomic/{p-417b1b64.js.map → p-c953462e.js.map} +0 -0
- /package/dist/atomic/{p-214cbca8.js.map → p-d2855a6f.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"atomic-smart-snippet.entry.cjs.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,qBAAqB,GAAG,4lnEAA4lnE,CAAC;AAC3nnE,iCAAe,qBAAqB;;;;;;;;;;;;MCwEvB,kBAAkB;;;;;;QAwBC,iBAAY,GAAG,CAAC,CAAC;;;;QAKxB,kBAAa,GAAG,GAAG,CAAC;;;;QAIpB,oBAAe,GAAG,GAAG,CAAC;;;;;;;;;;QA2BtC,iBAAY,GAAsB,IAAI,CAAC;;;;;;;;;;QAavC,iBAAY,GAAsB,IAAI,CAAC;QAErC,iBAAY,GAAG,KAAK,CAAC;;;4BAnDe,CAAC;6BAKP,GAAG;+BAID,GAAG;;4BA2BH,IAAI;4BAaJ,IAAI;4BAErB,KAAK;;;;IA5D7B,iBAAiB;QACf,IAAI,CAAC,EAAE,KAAKA,cAAQ,EAAE,CAAC;KACxB;IAiED,kBAAkB,CAAC,KAA8B;QAC/C,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;KAClD;IAGD,8BAA8B,CAAC,KAA8B;QAC3D,IAAI,CAAC,YAAY,CAAC,4BAA4B,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;KAC9D;IAGD,+BAA+B,CAAC,KAA8B;QAC5D,IAAI,CAAC,YAAY,CAAC,6BAA6B,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;KAC/D;IAEM,UAAU;QACf,IAAI,CAAC,YAAY,GAAGC,0BAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,UAAU,GAAGC,wBAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;KACzD;IAEM,mBAAmB;QACxB,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE;YACtE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;SAC7B;KACF;IAEM,MAAM;QACX,IACE,CAACC,kCAAyB,CACxB,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,EACtB,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,EACtB,IAAI,CAAC,eAAe,EAAE,SAAS,CAChC,EACD;YACA,OAAOC,QAACC,0BAAM,OAAU,CAAC;SAC1B;QAED,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE;YACvC,OAAOD,QAACC,0BAAM,OAAU,CAAC;SAC1B;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;QAE7C,QACED,QAACE,sCAAmB,IAClB,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,IAExBF,mDACE,eAAe,EAAE,IAAI,CAAC,sBAAsB,EAC5C,aAAa,EAAE,IAAI,CAAC,oBAAoB,IAExCA,QAACG,uCAAoB,IACnB,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,GACzC,EACD,IAAI,CAAC,oBAAoB,KAAK,SAAS,IACtCH,QAACI,8CAA2B,IAC1B,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,EACrC,KAAK,EAAE,IAAI,CAAC,KAAK,GACjB,KAEFJ,oDACE,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EACzC,WAAW,EAAC,2DAA2D,EACvE,WAAW,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAC1C,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,UAAU,EAAE,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,EAC9C,QAAQ,EAAE,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAC1C,IAAI,EAAC,MAAM,EACX,YAAY,EAAE,IAAI,CAAC,KAAK,GACgB,CAC3C,EACDA,QAACK,qCAAkB,IAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,IACzC,MAAM,KACLL,yCACE,gBAAgB,EAAEM,wCAAyB,CACzC,IAAI,CAAC,IAAI,EACT,0BAA0B,CAC3B,EACD,0BAA0B,EACxB,IAAI,CAAC,YAAY,CAAC,wBAAwB,EAE5C,2BAA2B,EACzB,IAAI,CAAC,YAAY,CAAC,yBAAyB,EAE7C,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,YAAY,EAC9C,MAAM,EAAE,MAAM,GACe,CAChC,EACDN,QAACO,6CAA0B,IACzB,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EACzC,aAAa,EAAE,CAAC,MAAM;gBACpB,IAAI,IAAI,CAAC,QAAQ,EAAE;oBACjB,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;iBAC/B;aACF,EACD,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,EAAE,EAAE,IAAI,CAAC,EAAE,EACX,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EACxB,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,KAAK,EACnC,SAAS,EAAE;gBACT,IAAI,CAAC,SAAS,EAAE,CAAC;gBACjB,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;aAC7B,EACD,MAAM,EAAE,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,EACtC,iBAAiB,EAAE,OAAO,IAAI,CAAC,QAAS,CAAC,MAAM,GAAG,IAAI,CAAC,GAC3B,CACX,CACiB,CACpB,EACtB;KACH;IAEO,WAAW,CAAC,GAAgB;QAClC,IAAI,CAAC,QAAQ,GAAG,GAAiD,CAAC;KACnE;IAEO,eAAe,CAAC,MAAe;QACrC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;KAC5B;IAED,IAAY,KAAK;QACf,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI;aACvB,aAAa,CAAC,UAAU,CAAC;cACxB,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO,IAAI,CAAC,YAAY,CAAC;SAC1B;QACD,OAAO,QAAQ,CAAC,SAAS,CAAC;KAC3B;IAEO,SAAS;QACf,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,OAAO;SACR;QACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CACrC,qCAAqC,CACtC,CAAC;QACF,QAAQ,CAAC,gBAAgB,CAAC,cAAc,EAAE;YACxC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;SAC5B,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;KAC1D;;;AAjO4B;IAA5BC,sCAAkB,EAAE;oDAA4B;AAI1C;IAFNC,yCAAqB,CAAC,cAAc,CAAC;6DAEO;AAItC;IAFNA,yCAAqB,CAAC,YAAY,CAAC;2DAEK;AAmDlC;IAFNC,oBAAS,EAAE;wDAEkC;AAavC;IAFNA,oBAAS,EAAE;wDAEkC;;;;;","names":["randomID","buildSmartSnippet","buildTabManager","shouldDisplayOnCurrentTab","h","Hidden","SmartSnippetWrapper","SmartSnippetQuestion","SmartSnippetTruncatedAnswer","SmartSnippetFooter","getAttributesFromLinkSlot","SmartSnippetFeedbackBanner","InitializeBindings","BindStateToController","ArrayProp"],"sources":["src/components/search/smart-snippets/atomic-smart-snippet/atomic-smart-snippet.pcss?tag=atomic-smart-snippet&encapsulation=shadow","src/components/search/smart-snippets/atomic-smart-snippet/atomic-smart-snippet.tsx"],"sourcesContent":["@import '../../../common/smart-snippets/atomic-smart-snippet/atomic-smart-snippet.pcss';\n","import {SmartSnippetFeedbackBanner} from '@/src/components/common/smart-snippets/atomic-smart-snippet-feedback-banner';\nimport {\n SmartSnippetTruncatedAnswer,\n SmartSnippetWrapper,\n SmartSnippetFooter,\n SmartSnippetQuestion,\n} from '@/src/components/common/smart-snippets/atomic-smart-snippet/smart-snippet-common';\nimport {randomID} from '@/src/utils/utils';\nimport {\n buildSmartSnippet,\n buildTabManager,\n InlineLink,\n SmartSnippet,\n SmartSnippetState,\n TabManager,\n TabManagerState,\n} from '@coveo/headless';\nimport {Component, Prop, State, Element, Listen, h} from '@stencil/core';\nimport {\n InitializableComponent,\n InitializeBindings,\n BindStateToController,\n} from '../../../../utils/initialization-utils';\nimport {ArrayProp} from '../../../../utils/props-utils';\nimport {shouldDisplayOnCurrentTab} from '../../../../utils/tab-utils';\nimport {getAttributesFromLinkSlot} from '../../../common/item-link/attributes-slot';\nimport {Hidden} from '../../../common/stencil-hidden';\nimport {Bindings} from '../../atomic-search-interface/atomic-search-interface';\n\n/**\n * The `atomic-smart-snippet` component displays the excerpt of a document that would be most likely to answer a particular query.\n *\n * You can style the snippet by inserting a template element as follows:\n * ```html\n * <atomic-smart-snippet>\n * <template>\n * <style>\n * b {\n * color: blue;\n * }\n * </style>\n * </template>\n * </atomic-smart-snippet>\n * ```\n *\n * @slot source-anchor-attributes - Lets you pass [attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attributes) down to anchor elements, overriding other attributes.\n * To be used exclusively in anchor elements, such as: `<a slot=\"source-anchor-attributes\" target=\"_blank\"></a>`.\n *\n * @part smart-snippet - The wrapper of the entire smart snippet.\n * @part question - The header displaying the question that is answered by the found document excerpt.\n * @part answer - The container displaying the full document excerpt.\n * @part truncated-answer - The container displaying only part of the answer.\n * @part show-more-button - The show more button.\n * @part show-less-button - The show less button.\n * @part body - The body of the smart snippet, containing the truncated answer and the show more or show less button.\n * @part footer - The footer underneath the answer.\n * @part source-url - The URL to the document the excerpt is from.\n * @part source-title - The title of the document the excerpt is from.\n * @part feedback-banner - The feedback banner underneath the source.\n * @part feedback-inquiry-and-buttons - A wrapper around the feedback inquiry and the feedback buttons.\n * @part feedback-inquiry - The message asking the end user to provide feedback on whether the excerpt was useful.\n * @part feedback-buttons - The wrapper around the buttons after the inquiry.\n * @part feedback-like-button - The button allowing the end user to signal that the excerpt was useful.\n * @part feedback-dislike-button - The button allowing the end user to signal that the excerpt wasn't useful.\n * @part feedback-thank-you-container - The wrapper around the 'thank you' message and feedback button.\n * @part feedback-thank-you - The message thanking the end user for providing feedback.\n * @part feedback-explain-why-button - The button a user can press to provide detailed feedback.\n */\n@Component({\n tag: 'atomic-smart-snippet',\n styleUrl: 'atomic-smart-snippet.pcss',\n shadow: true,\n})\nexport class AtomicSmartSnippet implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n public smartSnippet!: SmartSnippet;\n @BindStateToController('smartSnippet')\n @State()\n public smartSnippetState!: SmartSnippetState;\n public tabManager!: TabManager;\n @BindStateToController('tabManager')\n @State()\n public tabManagerState!: TabManagerState;\n public error!: Error;\n\n @Element() private host!: HTMLElement;\n private id!: string;\n\n connectedCallback(): void {\n this.id ||= randomID();\n }\n\n private modalRef?: HTMLAtomicSmartSnippetFeedbackModalElement;\n\n /**\n * The [heading level](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements) to use for the question at the top of the snippet, from 1 to 5.\n */\n @Prop({reflect: true}) public headingLevel = 0;\n\n /**\n * The maximum height (in pixels) a snippet can have before the component truncates it and displays a \"show more\" button.\n */\n @Prop({reflect: true}) maximumHeight = 250;\n /**\n * When the answer is partly hidden, how much of its height (in pixels) should be visible.\n */\n @Prop({reflect: true}) collapsedHeight = 180;\n\n /**\n * Sets the style of the snippet.\n *\n * Example:\n * ```ts\n * smartSnippet.snippetStyle = `\n * b {\n * color: blue;\n * }\n * `;\n * ```\n */\n @Prop({reflect: true}) snippetStyle?: string;\n\n /**\n * The tabs on which the smart snippet can be displayed. This property should not be used at the same time as `tabs-excluded`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-smart-snippet tabs-included='[\"tabIDA\", \"tabIDB\"]'></atomic-smart-snippet snippet>\n * ```\n * If you don't set this property, the smart snippet can be displayed on any tab. Otherwise, the smart snippet can only be displayed on the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsIncluded: string[] | string = '[]';\n\n /**\n * The tabs on which this smart snippet must not be displayed. This property should not be used at the same time as `tabs-included`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-smart-snippet tabs-excluded='[\"tabIDA\", \"tabIDB\"]'></atomic-smart-snippet>\n * ```\n * If you don't set this property, the smart snippet can be displayed on any tab. Otherwise, the smart snippet won't be displayed on any of the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsExcluded: string[] | string = '[]';\n\n @State() feedbackSent = false;\n\n @Prop({reflect: true}) public snippetMaximumHeight?: number;\n\n @Prop({reflect: true}) public snippetCollapsedHeight?: number;\n\n @Listen('selectInlineLink')\n onSelectInlineLink(event: CustomEvent<InlineLink>) {\n this.smartSnippet.selectInlineLink(event.detail);\n }\n\n @Listen('beginDelayedSelectInlineLink')\n onBeginDelayedSelectInlineLink(event: CustomEvent<InlineLink>) {\n this.smartSnippet.beginDelayedSelectInlineLink(event.detail);\n }\n\n @Listen('cancelPendingSelectInlineLink')\n onCancelPendingSelectInlineLink(event: CustomEvent<InlineLink>) {\n this.smartSnippet.cancelPendingSelectInlineLink(event.detail);\n }\n\n public initialize() {\n this.smartSnippet = buildSmartSnippet(this.bindings.engine);\n this.tabManager = buildTabManager(this.bindings.engine);\n }\n\n public componentWillUpdate() {\n if (!(this.smartSnippetState.liked || this.smartSnippetState.disliked)) {\n this.setFeedbackSent(false);\n }\n }\n\n public render() {\n if (\n !shouldDisplayOnCurrentTab(\n [...this.tabsIncluded],\n [...this.tabsExcluded],\n this.tabManagerState?.activeTab\n )\n ) {\n return <Hidden></Hidden>;\n }\n\n if (!this.smartSnippetState.answerFound) {\n return <Hidden></Hidden>;\n }\n\n const source = this.smartSnippetState.source;\n\n return (\n <SmartSnippetWrapper\n headingLevel={this.headingLevel}\n i18n={this.bindings.i18n}\n >\n <atomic-smart-snippet-collapse-wrapper\n collapsedHeight={this.snippetCollapsedHeight}\n maximumHeight={this.snippetMaximumHeight}\n >\n <SmartSnippetQuestion\n headingLevel={this.headingLevel}\n question={this.smartSnippetState.question}\n />\n {this.snippetMaximumHeight !== undefined ? (\n <SmartSnippetTruncatedAnswer\n answer={this.smartSnippetState.answer}\n style={this.style}\n />\n ) : (\n <atomic-smart-snippet-expandable-answer\n collapsedHeight={this.collapsedHeight}\n expanded={this.smartSnippetState.expanded}\n exportparts=\"answer,show-more-button,show-less-button,truncated-answer\"\n htmlContent={this.smartSnippetState.answer}\n maximumHeight={this.maximumHeight}\n onCollapse={() => this.smartSnippet.collapse()}\n onExpand={() => this.smartSnippet.expand()}\n part=\"body\"\n snippetStyle={this.style}\n ></atomic-smart-snippet-expandable-answer>\n )}\n <SmartSnippetFooter i18n={this.bindings.i18n}>\n {source && (\n <atomic-smart-snippet-source\n anchorAttributes={getAttributesFromLinkSlot(\n this.host,\n 'source-anchor-attributes'\n )}\n onBeginDelayedSelectSource={\n this.smartSnippet.beginDelayedSelectSource\n }\n onCancelPendingSelectSource={\n this.smartSnippet.cancelPendingSelectSource\n }\n onSelectSource={this.smartSnippet.selectSource}\n source={source}\n ></atomic-smart-snippet-source>\n )}\n <SmartSnippetFeedbackBanner\n disliked={this.smartSnippetState.disliked}\n explainWhyRef={(button) => {\n if (this.modalRef) {\n this.modalRef.source = button;\n }\n }}\n feedbackSent={this.feedbackSent}\n id={this.id}\n i18n={this.bindings.i18n}\n liked={this.smartSnippetState.liked}\n onDislike={() => {\n this.loadModal();\n this.smartSnippet.dislike();\n }}\n onLike={() => this.smartSnippet.like()}\n onPressExplainWhy={() => (this.modalRef!.isOpen = true)}\n ></SmartSnippetFeedbackBanner>\n </SmartSnippetFooter>\n </atomic-smart-snippet-collapse-wrapper>\n </SmartSnippetWrapper>\n );\n }\n\n private setModalRef(ref: HTMLElement) {\n this.modalRef = ref as HTMLAtomicSmartSnippetFeedbackModalElement;\n }\n\n private setFeedbackSent(isSent: boolean) {\n this.feedbackSent = isSent;\n }\n\n private get style() {\n const styleTag = this.host\n .querySelector('template')\n ?.content.querySelector('style');\n if (!styleTag) {\n return this.snippetStyle;\n }\n return styleTag.innerHTML;\n }\n\n private loadModal() {\n if (this.modalRef) {\n return;\n }\n const modalRef = document.createElement(\n 'atomic-smart-snippet-feedback-modal'\n );\n modalRef.addEventListener('feedbackSent', () => {\n this.setFeedbackSent(true);\n });\n this.setModalRef(modalRef);\n this.host.insertAdjacentElement('beforebegin', modalRef);\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"atomic-smart-snippet.entry.cjs.js","mappings":"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","names":["randomID","buildSmartSnippet","buildTabManager","shouldDisplayOnCurrentTab","h","Hidden","SmartSnippetWrapper","SmartSnippetQuestion","SmartSnippetTruncatedAnswer","SmartSnippetFooter","getAttributesFromLinkSlot","SmartSnippetFeedbackBanner","InitializeBindings","BindStateToController","ArrayProp"],"sources":["src/components/search/smart-snippets/atomic-smart-snippet/atomic-smart-snippet.pcss?tag=atomic-smart-snippet&encapsulation=shadow","src/components/search/smart-snippets/atomic-smart-snippet/atomic-smart-snippet.tsx"],"sourcesContent":["@import '../../../common/smart-snippets/atomic-smart-snippet/atomic-smart-snippet.pcss';\n","import {SmartSnippetFeedbackBanner} from '@/src/components/common/smart-snippets/atomic-smart-snippet-feedback-banner';\nimport {\n SmartSnippetTruncatedAnswer,\n SmartSnippetWrapper,\n SmartSnippetFooter,\n SmartSnippetQuestion,\n} from '@/src/components/common/smart-snippets/atomic-smart-snippet/smart-snippet-common';\nimport {randomID} from '@/src/utils/utils';\nimport {\n buildSmartSnippet,\n buildTabManager,\n InlineLink,\n SmartSnippet,\n SmartSnippetState,\n TabManager,\n TabManagerState,\n} from '@coveo/headless';\nimport {Component, Prop, State, Element, Listen, h} from '@stencil/core';\nimport {\n InitializableComponent,\n InitializeBindings,\n BindStateToController,\n} from '../../../../utils/initialization-utils';\nimport {ArrayProp} from '../../../../utils/props-utils';\nimport {shouldDisplayOnCurrentTab} from '../../../../utils/tab-utils';\nimport {getAttributesFromLinkSlot} from '../../../common/item-link/attributes-slot';\nimport {Hidden} from '../../../common/stencil-hidden';\nimport {Bindings} from '../../atomic-search-interface/atomic-search-interface';\n\n/**\n * The `atomic-smart-snippet` component displays the excerpt of a document that would be most likely to answer a particular query.\n *\n * You can style the snippet by inserting a template element as follows:\n * ```html\n * <atomic-smart-snippet>\n * <template>\n * <style>\n * b {\n * color: blue;\n * }\n * </style>\n * </template>\n * </atomic-smart-snippet>\n * ```\n *\n * @slot source-anchor-attributes - Lets you pass [attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attributes) down to anchor elements, overriding other attributes.\n * To be used exclusively in anchor elements, such as: `<a slot=\"source-anchor-attributes\" target=\"_blank\"></a>`.\n *\n * @part smart-snippet - The wrapper of the entire smart snippet.\n * @part question - The header displaying the question that is answered by the found document excerpt.\n * @part answer - The container displaying the full document excerpt.\n * @part truncated-answer - The container displaying only part of the answer.\n * @part show-more-button - The show more button.\n * @part show-less-button - The show less button.\n * @part body - The body of the smart snippet, containing the truncated answer and the show more or show less button.\n * @part footer - The footer underneath the answer.\n * @part source-url - The URL to the document the excerpt is from.\n * @part source-title - The title of the document the excerpt is from.\n * @part feedback-banner - The feedback banner underneath the source.\n * @part feedback-inquiry-and-buttons - A wrapper around the feedback inquiry and the feedback buttons.\n * @part feedback-inquiry - The message asking the end user to provide feedback on whether the excerpt was useful.\n * @part feedback-buttons - The wrapper around the buttons after the inquiry.\n * @part feedback-like-button - The button allowing the end user to signal that the excerpt was useful.\n * @part feedback-dislike-button - The button allowing the end user to signal that the excerpt wasn't useful.\n * @part feedback-thank-you-container - The wrapper around the 'thank you' message and feedback button.\n * @part feedback-thank-you - The message thanking the end user for providing feedback.\n * @part feedback-explain-why-button - The button a user can press to provide detailed feedback.\n */\n@Component({\n tag: 'atomic-smart-snippet',\n styleUrl: 'atomic-smart-snippet.pcss',\n shadow: true,\n})\nexport class AtomicSmartSnippet implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n public smartSnippet!: SmartSnippet;\n @BindStateToController('smartSnippet')\n @State()\n public smartSnippetState!: SmartSnippetState;\n public tabManager!: TabManager;\n @BindStateToController('tabManager')\n @State()\n public tabManagerState!: TabManagerState;\n public error!: Error;\n\n @Element() private host!: HTMLElement;\n private id!: string;\n\n connectedCallback(): void {\n this.id ||= randomID();\n }\n\n private modalRef?: HTMLAtomicSmartSnippetFeedbackModalElement;\n\n /**\n * The [heading level](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements) to use for the question at the top of the snippet, from 1 to 5.\n */\n @Prop({reflect: true}) public headingLevel = 0;\n\n /**\n * The maximum height (in pixels) a snippet can have before the component truncates it and displays a \"show more\" button.\n */\n @Prop({reflect: true}) maximumHeight = 250;\n /**\n * When the answer is partly hidden, how much of its height (in pixels) should be visible.\n */\n @Prop({reflect: true}) collapsedHeight = 180;\n\n /**\n * Sets the style of the snippet.\n *\n * Example:\n * ```ts\n * smartSnippet.snippetStyle = `\n * b {\n * color: blue;\n * }\n * `;\n * ```\n */\n @Prop({reflect: true}) snippetStyle?: string;\n\n /**\n * The tabs on which the smart snippet can be displayed. This property should not be used at the same time as `tabs-excluded`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-smart-snippet tabs-included='[\"tabIDA\", \"tabIDB\"]'></atomic-smart-snippet snippet>\n * ```\n * If you don't set this property, the smart snippet can be displayed on any tab. Otherwise, the smart snippet can only be displayed on the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsIncluded: string[] | string = '[]';\n\n /**\n * The tabs on which this smart snippet must not be displayed. This property should not be used at the same time as `tabs-included`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-smart-snippet tabs-excluded='[\"tabIDA\", \"tabIDB\"]'></atomic-smart-snippet>\n * ```\n * If you don't set this property, the smart snippet can be displayed on any tab. Otherwise, the smart snippet won't be displayed on any of the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsExcluded: string[] | string = '[]';\n\n @State() feedbackSent = false;\n\n @Prop({reflect: true}) public snippetMaximumHeight?: number;\n\n @Prop({reflect: true}) public snippetCollapsedHeight?: number;\n\n @Listen('selectInlineLink')\n onSelectInlineLink(event: CustomEvent<InlineLink>) {\n this.smartSnippet.selectInlineLink(event.detail);\n }\n\n @Listen('beginDelayedSelectInlineLink')\n onBeginDelayedSelectInlineLink(event: CustomEvent<InlineLink>) {\n this.smartSnippet.beginDelayedSelectInlineLink(event.detail);\n }\n\n @Listen('cancelPendingSelectInlineLink')\n onCancelPendingSelectInlineLink(event: CustomEvent<InlineLink>) {\n this.smartSnippet.cancelPendingSelectInlineLink(event.detail);\n }\n\n public initialize() {\n this.smartSnippet = buildSmartSnippet(this.bindings.engine);\n this.tabManager = buildTabManager(this.bindings.engine);\n }\n\n public componentWillUpdate() {\n if (!(this.smartSnippetState.liked || this.smartSnippetState.disliked)) {\n this.setFeedbackSent(false);\n }\n }\n\n public render() {\n if (\n !shouldDisplayOnCurrentTab(\n [...this.tabsIncluded],\n [...this.tabsExcluded],\n this.tabManagerState?.activeTab\n )\n ) {\n return <Hidden></Hidden>;\n }\n\n if (!this.smartSnippetState.answerFound) {\n return <Hidden></Hidden>;\n }\n\n const source = this.smartSnippetState.source;\n\n return (\n <SmartSnippetWrapper\n headingLevel={this.headingLevel}\n i18n={this.bindings.i18n}\n >\n <atomic-smart-snippet-collapse-wrapper\n collapsedHeight={this.snippetCollapsedHeight}\n maximumHeight={this.snippetMaximumHeight}\n >\n <SmartSnippetQuestion\n headingLevel={this.headingLevel}\n question={this.smartSnippetState.question}\n />\n {this.snippetMaximumHeight !== undefined ? (\n <SmartSnippetTruncatedAnswer\n answer={this.smartSnippetState.answer}\n style={this.style}\n />\n ) : (\n <atomic-smart-snippet-expandable-answer\n collapsedHeight={this.collapsedHeight}\n expanded={this.smartSnippetState.expanded}\n exportparts=\"answer,show-more-button,show-less-button,truncated-answer\"\n htmlContent={this.smartSnippetState.answer}\n maximumHeight={this.maximumHeight}\n onCollapse={() => this.smartSnippet.collapse()}\n onExpand={() => this.smartSnippet.expand()}\n part=\"body\"\n snippetStyle={this.style}\n ></atomic-smart-snippet-expandable-answer>\n )}\n <SmartSnippetFooter i18n={this.bindings.i18n}>\n {source && (\n <atomic-smart-snippet-source\n anchorAttributes={getAttributesFromLinkSlot(\n this.host,\n 'source-anchor-attributes'\n )}\n onBeginDelayedSelectSource={\n this.smartSnippet.beginDelayedSelectSource\n }\n onCancelPendingSelectSource={\n this.smartSnippet.cancelPendingSelectSource\n }\n onSelectSource={this.smartSnippet.selectSource}\n source={source}\n ></atomic-smart-snippet-source>\n )}\n <SmartSnippetFeedbackBanner\n disliked={this.smartSnippetState.disliked}\n explainWhyRef={(button) => {\n if (this.modalRef) {\n this.modalRef.source = button;\n }\n }}\n feedbackSent={this.feedbackSent}\n id={this.id}\n i18n={this.bindings.i18n}\n liked={this.smartSnippetState.liked}\n onDislike={() => {\n this.loadModal();\n this.smartSnippet.dislike();\n }}\n onLike={() => this.smartSnippet.like()}\n onPressExplainWhy={() => (this.modalRef!.isOpen = true)}\n ></SmartSnippetFeedbackBanner>\n </SmartSnippetFooter>\n </atomic-smart-snippet-collapse-wrapper>\n </SmartSnippetWrapper>\n );\n }\n\n private setModalRef(ref: HTMLElement) {\n this.modalRef = ref as HTMLAtomicSmartSnippetFeedbackModalElement;\n }\n\n private setFeedbackSent(isSent: boolean) {\n this.feedbackSent = isSent;\n }\n\n private get style() {\n const styleTag = this.host\n .querySelector('template')\n ?.content.querySelector('style');\n if (!styleTag) {\n return this.snippetStyle;\n }\n return styleTag.innerHTML;\n }\n\n private loadModal() {\n if (this.modalRef) {\n return;\n }\n const modalRef = document.createElement(\n 'atomic-smart-snippet-feedback-modal'\n );\n modalRef.addEventListener('feedbackSent', () => {\n this.setFeedbackSent(true);\n });\n this.setModalRef(modalRef);\n this.host.insertAdjacentElement('beforebegin', modalRef);\n }\n}\n"],"version":3}
|
|
@@ -125,8 +125,8 @@ const AtomicSortDropdown = class {
|
|
|
125
125
|
const { hasError, hasResults, firstSearchExecuted } = this.searchStatusState;
|
|
126
126
|
const { bindings: { i18n }, id, } = this;
|
|
127
127
|
return [
|
|
128
|
-
index.h(SortGuard, { key: '
|
|
129
|
-
index.h("slot", { key: '
|
|
128
|
+
index.h(SortGuard, { key: '6bcf83c0920b696573d396e22f2d914cc1537022', firstSearchExecuted: firstSearchExecuted, hasError: hasError, hasResults: hasResults }, index.h(SortContainer, { key: '07a9afdfc2b3ccab21f4e3b11c535be4f1434d2e' }, index.h(SortLabel, { key: 'e934aa217d8b46af88c7911cfa9bde8a24c70b42', i18n: i18n, id: id }), index.h(SortSelect, { key: '6d9e56ae34355b2d8f194845bf1549b92ca82304', i18n: i18n, id: id, onSelect: (evt) => this.select(evt) }, this.options.map(({ label, criteria, expression }) => (index.h(SortOption, { i18n: i18n, label: label, selected: this.sort.isSortedBy(criteria), value: expression })))))),
|
|
129
|
+
index.h("slot", { key: '04455925e05235d7c024831ff217ca9aca774557' }),
|
|
130
130
|
];
|
|
131
131
|
}
|
|
132
132
|
get host() { return index.getElement(this); }
|
|
@@ -54,7 +54,7 @@ const AtomicSortExpression = class {
|
|
|
54
54
|
const dropdownComponent = 'atomic-sort-dropdown';
|
|
55
55
|
if (!this.host.closest(dropdownComponent)) {
|
|
56
56
|
const error = new Error(`The "${this.host.nodeName.toLowerCase()}" component has to be used inside an ${dropdownComponent} element.`);
|
|
57
|
-
return (index.h("atomic-component-error", { key: '
|
|
57
|
+
return (index.h("atomic-component-error", { key: '4492cc004facf655eaad9558db0c7a161535a8b6', element: this.host, error: error }));
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
60
|
get host() { return index.getElement(this); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"atomic-sort-expression.entry.cjs.js","mappings":";;;;;;;;;;;;;;;;;;;;;MAUa,oBAAoB;;;;;;;;;;;;
|
|
1
|
+
{"file":"atomic-sort-expression.entry.cjs.js","mappings":";;;;;;;;;;;;;;;;;;;;;MAUa,oBAAoB;;;;;;;;;;;;QA2CxB,iBAAY,GAAsB,IAAI,CAAC;;;;;;;;;;QAavC,iBAAY,GAAsB,IAAI,CAAC;;;4BAbL,IAAI;4BAaJ,IAAI;;IAEtC,MAAM;QACX,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YAChE,OAAO,CAAC,IAAI,CACV,qHAAqH,CACtH,CAAC;SACH;QAED,MAAM,iBAAiB,GAAG,sBAAsB,CAAC;QAEjD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE;YACzC,MAAM,KAAK,GAAG,IAAI,KAAK,CACrB,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,wCAAwC,iBAAiB,WAAW,CAC7G,CAAC;YACF,QACEA,qFACE,OAAO,EAAE,IAAI,CAAC,IAAI,EAClB,KAAK,EAAE,KAAK,GACY,EAC1B;SACH;KACF;;;AAnCM;IAFNC,oBAAS,EAAE;0DAEkC;AAavC;IAFNA,oBAAS,EAAE;0DAEkC;;;;","names":["h","ArrayProp"],"sources":["src/components/search/atomic-sort-expression/atomic-sort-expression.tsx"],"sourcesContent":["import {Component, Prop, Element, h} from '@stencil/core';\nimport {ArrayProp} from '../../../utils/props-utils';\n\n/**\n * The `atomic-sort-expression` component defines a sort expression. This component must be inside an `atomic-sort-dropdown` component.\n */\n@Component({\n tag: 'atomic-sort-expression',\n shadow: false,\n})\nexport class AtomicSortExpression {\n @Element() public host!: HTMLElement;\n\n /**\n * The non-localized label to display for this expression.\n */\n @Prop({reflect: true}) public label!: string;\n\n /**\n * One or more sort criteria that the end user can select or toggle between.\n *\n * The available sort criteria are:\n *\n * * `relevancy`\n * * `date ascending`/`date descending`\n * * `qre`\n * * `<FIELD> ascending`/`<FIELD> descending`, where you replace `<FIELD>` with the name of a sortable field in your index (`criteria=\"size ascending\"`).\n *\n * You can specify multiple sort criteria to be used in the same request by separating them with a comma (`criteria=\"size ascending, date ascending\"`).\n * \n * You can specify a list of comma-separated sort criteria which will be applied sequentially. For example, if there's a tie on the 1st criterion, the API uses the 2nd criterion to break the tie. However, this only works when combining:\n * * a relevancy criterion followed by one or more field or date criteria.\n * * a qre criterion followed by one or more field or date criteria.\n * * two or more field criteria (`<FIELD>` descending, `<FIELD>` descending).\n * * a single date criterion and one or more field criteria in any order (`<FIELD>` descending, date ascending).\n * \n * Examples:\n * * `relevancy`, `<FIELD> descending`\n * * `qre`, `<FIELD> ascending`\n * * `date descending`, `<FIELD> descending`, `<FIELD> ascending`\n */\n @Prop({reflect: true}) public expression!: string;\n /**\n * The tabs on which the sort expression can be displayed. This property should not be used at the same time as `tabs-excluded`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-sort-expression tabs-included='[\"tabIDA\", \"tabIDB\"]'></atomic-sort-expression snippet>\n * ```\n * If you don't set this property, the sort expression can be displayed on any tab. Otherwise, the sort expression can only be displayed on the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsIncluded: string[] | string = '[]';\n\n /**\n * The tabs on which the sort expression must not be displayed. This property should not be used at the same time as `tabs-included`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-sort-expression tabs-excluded='[\"tabIDA\", \"tabIDB\"]'></atomic-sort-expression>\n * ```\n * If you don't set this property, the sort expression can be displayed on any tab. Otherwise, the sort expression won't be displayed on any of the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsExcluded: string[] | string = '[]';\n\n public render() {\n if (this.tabsIncluded.length > 0 && this.tabsExcluded.length > 0) {\n console.warn(\n 'Values for both \"tabs-included\" and \"tabs-excluded\" have been provided. This is could lead to unexpected behaviors.'\n );\n }\n\n const dropdownComponent = 'atomic-sort-dropdown';\n\n if (!this.host.closest(dropdownComponent)) {\n const error = new Error(\n `The \"${this.host.nodeName.toLowerCase()}\" component has to be used inside an ${dropdownComponent} element.`\n );\n return (\n <atomic-component-error\n element={this.host}\n error={error}\n ></atomic-component-error>\n );\n }\n }\n}\n"],"version":3}
|
|
@@ -5,10 +5,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
const index = require('./index-757bc886.js');
|
|
6
6
|
const headless = require('@coveo/headless');
|
|
7
7
|
const dateUtils = require('./date-utils-f0803dd3.js');
|
|
8
|
-
const stencilButton = require('./stencil-button-
|
|
8
|
+
const stencilButton = require('./stencil-button-f6c2410c.js');
|
|
9
9
|
require('./dayjs.min-8b80e6d1.js');
|
|
10
10
|
require('./_commonjsHelpers-b3309d7b.js');
|
|
11
|
-
require('./ripple-4070d750.js');
|
|
12
11
|
require('./event-utils-9bfcf3c5.js');
|
|
13
12
|
require('./stencil-button-style-ba779fe2.js');
|
|
14
13
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"atomic-stencil-facet-date-input.entry.cjs.js","mappings":"
|
|
1
|
+
{"file":"atomic-stencil-facet-date-input.entry.cjs.js","mappings":"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","names":["parseDate","buildDateRange","h","Button"],"sources":["src/components/common/facets/stencil-facet-date-input/stencil-facet-date-input.tsx"],"sourcesContent":["import {\n buildDateRange,\n DateFilterRange,\n DateRangeRequest,\n} from '@coveo/headless';\nimport {Component, h, State, Prop, Event, EventEmitter} from '@stencil/core';\nimport {parseDate} from '../../../../utils/date-utils';\nimport {Button} from '../../../common/stencil-button';\nimport {AnyBindings} from '../../interface/bindings';\n\n/**\n * @deprecated\n * Use `atomic-facet-date-input` instead. This component is meant to be used with Stencil components only.\n * Internal component made to be integrated in a TimeframeFacet.\n * @internal\n */\n@Component({\n tag: 'atomic-stencil-facet-date-input',\n shadow: false,\n})\nexport class FacetDateInput {\n @State() private start?: Date;\n @State() private end?: Date;\n private startRef!: HTMLInputElement;\n private endRef!: HTMLInputElement;\n\n @Prop() public bindings!: AnyBindings;\n @Prop() public rangeGetter!: () => DateFilterRange | undefined;\n @Prop() public rangeSetter!: (range: DateRangeRequest) => void;\n @Prop() public facetId!: string;\n @Prop() public label!: string;\n @Prop() public min?: string;\n @Prop() public max?: string;\n\n @Event({\n eventName: 'atomic/dateInputApply',\n })\n private applyInput!: EventEmitter;\n\n public connectedCallback() {\n const range = this.rangeGetter();\n this.start = range ? parseDate(range.start).toDate() : undefined;\n this.end = range ? parseDate(range.end).toDate() : undefined;\n }\n public componentDidUpdate() {\n if (!this.startRef.value && !this.endRef.value) {\n this.startRef.min = this.min || this.formattedDateValue('1401-01-01');\n this.endRef.max = this.max || '';\n this.startRef.max = this.max || '';\n this.endRef.min = this.min || '';\n }\n }\n\n private apply() {\n if (!this.startRef.validity.valid || !this.endRef.validity.valid) {\n return;\n }\n\n this.applyInput.emit({\n start: this.start,\n end: this.end,\n });\n\n const rangeRequest = buildDateRange({\n start: this.start!,\n end: this.end!.setHours(23, 59, 59, 999),\n });\n\n this.rangeSetter(rangeRequest);\n }\n\n private formattedDateValue(date?: string | Date) {\n if (!date) {\n return '';\n }\n return parseDate(date).format('YYYY-MM-DD');\n }\n\n render() {\n const label = this.bindings.i18n.t(this.label);\n const startLabel = this.bindings.i18n.t('start');\n const endLabel = this.bindings.i18n.t('end');\n const startAria = this.bindings.i18n.t('date-input-start', {label});\n const endAria = this.bindings.i18n.t('date-input-end', {label});\n const apply = this.bindings.i18n.t('apply');\n const applyAria = this.bindings.i18n.t('date-input-apply', {label});\n\n const inputClasses = 'input-primary p-2.5';\n const labelClasses = 'text-neutral-dark self-center';\n\n const placeholder = 'yyyy-mm-dd';\n // Fallback for Safari < 14.1, date with format yyyy-mm-dd over 1400 (API limit)\n const pattern =\n '^(1[4-9]\\\\d{2}|2\\\\d{3})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\\\d|3[01])$';\n\n const range = this.rangeGetter();\n\n return (\n <form\n class=\"mt-4 grid grid-cols-[min-content_1fr] gap-2 px-2\"\n onSubmit={(e) => {\n e.preventDefault();\n this.apply();\n return false;\n }}\n >\n <label\n part=\"input-label\"\n class={labelClasses}\n htmlFor={`${this.facetId}_start`}\n >\n {startLabel}:\n </label>\n <input\n id={`${this.facetId}_start`}\n part=\"input-start\"\n type=\"date\"\n ref={(ref) => (this.startRef = ref!)}\n class={inputClasses}\n aria-label={startAria}\n placeholder={placeholder}\n pattern={pattern}\n required\n // API/Index minimum supported date\n min={this.min || this.formattedDateValue('1401-01-01')}\n max={this.end ? this.formattedDateValue(this.end) : this.max}\n value={this.formattedDateValue(range?.start)}\n onInput={(e) =>\n (this.start = parseDate(\n (e.target as HTMLInputElement).value\n ).toDate())\n }\n />\n <label\n part=\"input-label\"\n class={labelClasses}\n htmlFor={`${this.facetId}_end`}\n >\n {endLabel}:\n </label>\n <input\n id={`${this.facetId}_end`}\n part=\"input-end\"\n type=\"date\"\n ref={(ref) => (this.endRef = ref!)}\n class={inputClasses}\n aria-label={endAria}\n placeholder={placeholder}\n pattern={pattern}\n required\n min={this.formattedDateValue(this.start) || this.min}\n max={this.max}\n value={this.formattedDateValue(range?.end)}\n onInput={(e) =>\n (this.end = parseDate(\n (e.target as HTMLInputElement).value\n ).toDate())\n }\n />\n <Button\n style=\"outline-primary\"\n type=\"submit\"\n part=\"input-apply-button\"\n class=\"col-span-2 truncate p-2.5\"\n ariaLabel={applyAria}\n text={apply}\n ></Button>\n </form>\n );\n }\n}\n"],"version":3}
|
|
@@ -3,12 +3,11 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-757bc886.js');
|
|
6
|
-
const stencilButton = require('./stencil-button-
|
|
6
|
+
const stencilButton = require('./stencil-button-f6c2410c.js');
|
|
7
7
|
const arrowBottomRounded = require('./arrow-bottom-rounded-705a1b2c.js');
|
|
8
8
|
const initializationUtils = require('./initialization-utils-62dc9852.js');
|
|
9
9
|
const popperLite = require('./popper-lite-3132f7e8.js');
|
|
10
10
|
const createPopper = require('./createPopper-6b5a50b4.js');
|
|
11
|
-
require('./ripple-4070d750.js');
|
|
12
11
|
require('./event-utils-9bfcf3c5.js');
|
|
13
12
|
require('./stencil-button-style-ba779fe2.js');
|
|
14
13
|
require('./dom-utils-d4790328.js');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"atomic-tab-bar.atomic-tab-popover.entry.cjs.js","mappings":"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","names":["h","Button","Host","ArrowBottomIcon","createPopper","preventOverflow","InitializeBindings"],"sources":["src/components/common/tabs/tab-bar.pcss?tag=atomic-tab-bar&encapsulation=shadow","src/components/common/tabs/tab-bar.tsx","src/components/common/tabs/tab-popover.pcss?tag=atomic-tab-popover&encapsulation=shadow","src/components/common/tabs/tab-popover.tsx"],"sourcesContent":["@import '../../../global/global.pcss';\n\n:host {\n white-space: nowrap;\n width: 100%;\n overflow-x: visible;\n display: flex;\n position: relative;\n}\n","import {h, Component, Element, Host, State, Listen} from '@stencil/core';\nimport {Button} from '../stencil-button';\nimport {TabCommonElement} from './tab-common';\n\n/**\n * @internal\n */\n@Component({\n tag: 'atomic-tab-bar',\n shadow: true,\n styleUrl: 'tab-bar.pcss',\n})\nexport class TabBar {\n @Element() private host!: HTMLElement;\n\n @State()\n private popoverTabs: (typeof Button)[] = [];\n\n private resizeObserver: ResizeObserver | undefined;\n\n private get tabsFromSlot(): TabCommonElement[] {\n const isTab = (tagName: string) =>\n /atomic-.+-tab$/i.test(tagName) || /tab-button$/i.test(tagName);\n return Array.from(this.host.querySelectorAll<TabCommonElement>('*')).filter(\n (element) => isTab(element.tagName)\n );\n }\n\n private get selectedTab() {\n return this.tabsFromSlot.find((tab) => tab.active);\n }\n\n private get slotContentWidth() {\n return this.tabsFromSlot.reduce(\n (total, el) =>\n total +\n parseFloat(window.getComputedStyle(el).getPropertyValue('width')),\n 0\n );\n }\n\n private get containerWidth() {\n return parseFloat(\n window.getComputedStyle(this.host).getPropertyValue('width')\n );\n }\n\n private get isOverflow() {\n return this.slotContentWidth > this.containerWidth;\n }\n\n private get tabPopover() {\n return this.host.shadowRoot?.querySelector('atomic-tab-popover');\n }\n\n private get popoverWidth() {\n return this.tabPopover ? this.getElementWidth(this.tabPopover) : 0;\n }\n\n private get overflowingTabs() {\n const containerRelativeRightPosition =\n this.host.getBoundingClientRect().right;\n const selectedTabRelativeRightPosition =\n this.selectedTab?.getBoundingClientRect().right;\n\n return this.tabsFromSlot.filter((element) => {\n const isBeforeSelectedTab = selectedTabRelativeRightPosition\n ? selectedTabRelativeRightPosition >\n element.getBoundingClientRect().right\n : false;\n\n const minimumWidthNeeded = isBeforeSelectedTab\n ? this.popoverWidth + this.getElementWidth(this.selectedTab)\n : this.popoverWidth;\n\n const rightPositionLimit = !this.isOverflow\n ? containerRelativeRightPosition\n : containerRelativeRightPosition - minimumWidthNeeded;\n\n return (\n element.getBoundingClientRect().right > rightPositionLimit &&\n !element.active\n );\n });\n }\n\n private get displayedTabs() {\n return this.tabsFromSlot.filter((el) => !this.overflowingTabs.includes(el));\n }\n\n private get lastDisplayedTab() {\n const displayedTabs = this.displayedTabs;\n return displayedTabs[displayedTabs.length - 1];\n }\n\n private get lastDisplayedTabRightPosition() {\n return (\n this.lastDisplayedTab.getBoundingClientRect().right -\n this.host.getBoundingClientRect().left\n );\n }\n\n private updatePopoverPosition() {\n this.tabPopover?.style.setProperty(\n 'left',\n `${this.displayedTabs.length ? this.lastDisplayedTabRightPosition : 0}px`\n );\n }\n\n private getElementWidth = (element?: Element) => {\n return element\n ? parseFloat(window.getComputedStyle(element).getPropertyValue('width'))\n : 0;\n };\n\n private hideElement = (el: HTMLElement) => {\n el.style.visibility = 'hidden';\n el.ariaHidden = 'true';\n };\n\n private showElement = (el: HTMLElement) => {\n el.style.visibility = 'visible';\n el.ariaHidden = 'false';\n };\n\n private updateTabVisibility = (\n tabs: TabCommonElement[],\n isVisible: boolean\n ) => {\n const tabCount = this.tabsFromSlot.length;\n\n tabs.forEach((tab, index) => {\n tab.style.setProperty(\n 'order',\n String(isVisible ? index + 1 : tabCount - tabs.length + index + 1)\n );\n if (isVisible) {\n this.showElement(tab);\n } else {\n this.hideElement(tab);\n }\n });\n };\n\n private updatePopoverTabs = () => {\n this.popoverTabs = this.overflowingTabs.map((tab) => (\n <li>\n <Button\n part=\"popover-tab\"\n style=\"text-transparent\"\n class=\"w-full truncate rounded px-4 py-2 text-left font-semibold\"\n ariaLabel={tab.label}\n title={tab.label}\n onClick={() => {\n tab.select();\n this.updatePopoverTabs();\n this.tabPopover?.toggle();\n }}\n >\n {tab.label}\n </Button>\n </li>\n ));\n };\n\n private setTabButtonMaxWidth = () => {\n this.displayedTabs.forEach((tab) => {\n tab.style.setProperty('max-width', `calc(100% - ${this.popoverWidth}px)`);\n });\n };\n\n private updateTabsDisplay = () => {\n this.updateTabVisibility(this.overflowingTabs, false);\n this.updateTabVisibility(this.displayedTabs, true);\n this.setTabButtonMaxWidth();\n this.updatePopoverPosition();\n this.updatePopoverTabs();\n this.tabPopover?.setButtonVisibility(!!this.overflowingTabs.length);\n };\n\n @Listen('atomic/tabRendered')\n public resolveResult(event: CustomEvent<{}>) {\n event.stopPropagation();\n this.updatePopoverTabs();\n }\n public componentWillUpdate() {\n this.updateTabsDisplay();\n }\n\n public componentDidLoad() {\n this.resizeObserver = new ResizeObserver(() => {\n this.updateTabsDisplay();\n });\n this.resizeObserver.observe(this.host);\n }\n\n public disconnectedCallback() {\n this.resizeObserver?.disconnect();\n }\n\n public render = () => {\n return (\n <Host class=\"overflow-x-clip overflow-y-visible\">\n <slot></slot>\n <atomic-tab-popover exportparts=\"popover-button, value-label, arrow-icon, backdrop overflow-tabs\">\n {this.popoverTabs}\n </atomic-tab-popover>\n </Host>\n );\n };\n}\n","@import '../../../global/global.pcss';\n\n:host {\n position: absolute;\n}\n\n:host(.visibility-hidden) {\n visibility: hidden;\n}\n\n[part='overflow-tabs'] {\n flex-direction: column;\n max-width: 150px;\n\n button {\n text-align: start;\n }\n}\n","import {\n createPopperLite as createPopper,\n preventOverflow,\n Instance as PopperInstance,\n} from '@popperjs/core';\nimport {\n Component,\n h,\n Listen,\n State,\n Element,\n Host,\n Method,\n} from '@stencil/core';\nimport ArrowBottomIcon from '../../../images/arrow-bottom-rounded.svg';\nimport {\n InitializableComponent,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {Bindings} from '../../search/atomic-search-interface/atomic-search-interface';\nimport {Button} from '../stencil-button';\n\n/**\n * @internal\n */\n@Component({\n tag: 'atomic-tab-popover',\n shadow: true,\n styleUrl: 'tab-popover.pcss',\n})\nexport class TabPopover implements InitializableComponent {\n @Element() private host!: HTMLElement;\n\n @InitializeBindings() public bindings!: Bindings;\n\n @State()\n public show = false;\n\n @State()\n public error!: Error;\n\n @State()\n private isOpen = false;\n\n private buttonRef!: HTMLElement;\n private popupRef!: HTMLElement;\n private popperInstance?: PopperInstance;\n public popoverId = 'atomic-tab-popover';\n\n public initialize() {}\n\n private initializePopover() {\n this.popupRef.classList.add('popover-nested');\n }\n\n @Listen('keydown')\n public handleKeyDown(e: KeyboardEvent) {\n if (!this.isOpen) {\n return;\n }\n\n if (e.key === 'Escape') {\n this.toggle();\n } else if (e.key === 'ArrowDown' || e.key === 'ArrowUp') {\n e.preventDefault();\n this.navigatePopover(e.key);\n }\n }\n\n private getTabButtons(): HTMLButtonElement[] {\n const slot = this.popupRef.children[0] as HTMLSlotElement;\n return Array.from(slot.assignedElements())\n .map((el) => (el as HTMLElement).querySelector('button'))\n .filter((el): el is HTMLButtonElement => el !== null);\n }\n\n private getCurrentTabIndex(elements: HTMLButtonElement[]): number {\n const MAX_SHADOW_DEPTH = 3;\n let currentElement = document.activeElement;\n let depth = 0;\n\n while (currentElement?.shadowRoot && depth < MAX_SHADOW_DEPTH) {\n currentElement = currentElement.shadowRoot.activeElement;\n depth++;\n }\n\n if (!(currentElement instanceof HTMLButtonElement)) {\n return -1;\n }\n\n return elements.indexOf(currentElement);\n }\n\n private navigatePopover(key: string): void {\n const tabButtons = this.getTabButtons();\n if (!tabButtons.length) {\n return;\n }\n\n const currentIndex = this.getCurrentTabIndex(tabButtons);\n\n const startIndex = currentIndex > -1 ? currentIndex : -1;\n\n let nextIndex;\n if (currentIndex === -1) {\n nextIndex = key === 'ArrowDown' ? 0 : tabButtons.length - 1;\n } else {\n nextIndex =\n key === 'ArrowDown'\n ? (startIndex + 1) % tabButtons.length\n : (startIndex - 1 + tabButtons.length) % tabButtons.length;\n }\n\n tabButtons[nextIndex]?.focus();\n }\n\n get slotElements() {\n return this.host.children;\n }\n\n get hasTabs() {\n return !!this.popupRef.children.length;\n }\n\n @Method()\n public async toggle() {\n this.isOpen = !this.isOpen;\n }\n\n @Method()\n public async setButtonVisibility(isVisible: boolean) {\n this.show = isVisible;\n }\n\n @Method()\n public async closePopoverOnFocusOut(event: FocusEvent) {\n const slot = this.popupRef.children[0] as HTMLSlotElement;\n const assignedElements = slot.assignedElements() as HTMLElement[];\n\n const isMovingToSlottedElement = assignedElements.some(\n (element) =>\n element === event.relatedTarget ||\n element.contains(event.relatedTarget as Node)\n );\n\n if (isMovingToSlottedElement) {\n return;\n }\n\n if (!this.popupRef.contains(event.relatedTarget as Node)) {\n this.closePopover();\n }\n }\n\n private closePopover() {\n this.isOpen = false;\n }\n\n private renderDropdownButton() {\n const label = this.bindings?.i18n.t('more');\n const ariaLabel = this.bindings?.i18n.t('tab-popover', {label});\n const buttonClasses = [\n 'relative',\n 'pb-1',\n 'mt-1',\n 'group',\n 'mr-6',\n 'font-semibold',\n ];\n\n return (\n <Button\n ref={(el) => (this.buttonRef = el!)}\n style=\"text-transparent\"\n onClick={() => this.toggle()}\n part=\"popover-button\"\n ariaExpanded={`${this.isOpen}`}\n ariaLabel={ariaLabel}\n ariaControls={this.popoverId}\n class={`${buttonClasses.join(' ')}`}\n >\n <span\n title={label}\n part=\"value-label\"\n class={\n 'group-hover:text-primary-light group-focus:text-primary mr-1.5 truncate'\n }\n >\n {label}\n </span>\n <atomic-icon\n part=\"arrow-icon\"\n class={`group-hover:text-primary-light group-focus:text-primary ml-auto w-2 ${\n this.isOpen ? 'rotate-180' : ''\n }`}\n icon={ArrowBottomIcon}\n ></atomic-icon>\n </Button>\n );\n }\n\n private renderBackdrop() {\n return (\n <div\n part=\"backdrop\"\n class=\"fixed top-0 right-0 bottom-0 left-0 z-9998 cursor-pointer bg-transparent\"\n onClick={() => this.toggle()}\n ></div>\n );\n }\n\n private renderPopover() {\n return (\n <div class={`relative ${this.isOpen ? 'z-9999' : ''}`}>\n {this.renderDropdownButton()}\n <ul\n id={this.popoverId}\n ref={(el) => (this.popupRef = el!)}\n part=\"overflow-tabs\"\n class={`bg-background border-neutral absolute rounded-lg border py-2 shadow-lg ${\n this.isOpen ? 'flex' : 'hidden'\n }`}\n >\n <slot></slot>\n </ul>\n </div>\n );\n }\n\n public componentDidRender() {\n if (this.popperInstance || !this.buttonRef || !this.popupRef) {\n return;\n }\n\n this.popperInstance = createPopper(this.buttonRef, this.popupRef, {\n placement: 'bottom-end',\n modifiers: [preventOverflow],\n });\n this.initializePopover();\n }\n\n public componentDidUpdate() {\n this.popperInstance?.forceUpdate();\n }\n\n public render() {\n return (\n <Host\n onFocusout={(event: FocusEvent) => this.closePopoverOnFocusOut(event)}\n class={this.show ? '' : 'visibility-hidden'}\n aria-hidden={!this.show}\n >\n {this.renderPopover()}\n {this.isOpen && this.renderBackdrop()}\n </Host>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"atomic-tab-bar.atomic-tab-popover.entry.cjs.js","mappings":"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","names":["h","Button","Host","ArrowBottomIcon","createPopper","preventOverflow","InitializeBindings"],"sources":["src/components/common/tabs/tab-bar.pcss?tag=atomic-tab-bar&encapsulation=shadow","src/components/common/tabs/tab-bar.tsx","src/components/common/tabs/tab-popover.pcss?tag=atomic-tab-popover&encapsulation=shadow","src/components/common/tabs/tab-popover.tsx"],"sourcesContent":["@import '../../../global/global.pcss';\n\n:host {\n white-space: nowrap;\n width: 100%;\n overflow-x: visible;\n display: flex;\n position: relative;\n}\n","import {h, Component, Element, Host, State, Listen} from '@stencil/core';\nimport {Button} from '../stencil-button';\nimport {TabCommonElement} from './tab-common';\n\n/**\n * @internal\n */\n@Component({\n tag: 'atomic-tab-bar',\n shadow: true,\n styleUrl: 'tab-bar.pcss',\n})\nexport class TabBar {\n @Element() private host!: HTMLElement;\n\n @State()\n private popoverTabs: (typeof Button)[] = [];\n\n private resizeObserver: ResizeObserver | undefined;\n\n private get tabsFromSlot(): TabCommonElement[] {\n const isTab = (tagName: string) =>\n /atomic-.+-tab$/i.test(tagName) || /tab-button$/i.test(tagName);\n return Array.from(this.host.querySelectorAll<TabCommonElement>('*')).filter(\n (element) => isTab(element.tagName)\n );\n }\n\n private get selectedTab() {\n return this.tabsFromSlot.find((tab) => tab.active);\n }\n\n private get slotContentWidth() {\n return this.tabsFromSlot.reduce(\n (total, el) =>\n total +\n parseFloat(window.getComputedStyle(el).getPropertyValue('width')),\n 0\n );\n }\n\n private get containerWidth() {\n return parseFloat(\n window.getComputedStyle(this.host).getPropertyValue('width')\n );\n }\n\n private get isOverflow() {\n return this.slotContentWidth > this.containerWidth;\n }\n\n private get tabPopover() {\n return this.host.shadowRoot?.querySelector('atomic-tab-popover');\n }\n\n private get popoverWidth() {\n return this.tabPopover ? this.getElementWidth(this.tabPopover) : 0;\n }\n\n private get overflowingTabs() {\n const containerRelativeRightPosition =\n this.host.getBoundingClientRect().right;\n const selectedTabRelativeRightPosition =\n this.selectedTab?.getBoundingClientRect().right;\n\n return this.tabsFromSlot.filter((element) => {\n const isBeforeSelectedTab = selectedTabRelativeRightPosition\n ? selectedTabRelativeRightPosition >\n element.getBoundingClientRect().right\n : false;\n\n const minimumWidthNeeded = isBeforeSelectedTab\n ? this.popoverWidth + this.getElementWidth(this.selectedTab)\n : this.popoverWidth;\n\n const rightPositionLimit = !this.isOverflow\n ? containerRelativeRightPosition\n : containerRelativeRightPosition - minimumWidthNeeded;\n\n return (\n element.getBoundingClientRect().right > rightPositionLimit &&\n !element.active\n );\n });\n }\n\n private get displayedTabs() {\n return this.tabsFromSlot.filter((el) => !this.overflowingTabs.includes(el));\n }\n\n private get lastDisplayedTab() {\n const displayedTabs = this.displayedTabs;\n return displayedTabs[displayedTabs.length - 1];\n }\n\n private get lastDisplayedTabRightPosition() {\n return (\n this.lastDisplayedTab.getBoundingClientRect().right -\n this.host.getBoundingClientRect().left\n );\n }\n\n private updatePopoverPosition() {\n this.tabPopover?.style.setProperty(\n 'left',\n `${this.displayedTabs.length ? this.lastDisplayedTabRightPosition : 0}px`\n );\n }\n\n private getElementWidth = (element?: Element) => {\n return element\n ? parseFloat(window.getComputedStyle(element).getPropertyValue('width'))\n : 0;\n };\n\n private hideElement = (el: HTMLElement) => {\n el.style.visibility = 'hidden';\n el.ariaHidden = 'true';\n };\n\n private showElement = (el: HTMLElement) => {\n el.style.visibility = 'visible';\n el.ariaHidden = 'false';\n };\n\n private updateTabVisibility = (\n tabs: TabCommonElement[],\n isVisible: boolean\n ) => {\n const tabCount = this.tabsFromSlot.length;\n\n tabs.forEach((tab, index) => {\n tab.style.setProperty(\n 'order',\n String(isVisible ? index + 1 : tabCount - tabs.length + index + 1)\n );\n if (isVisible) {\n this.showElement(tab);\n } else {\n this.hideElement(tab);\n }\n });\n };\n\n private updatePopoverTabs = () => {\n this.popoverTabs = this.overflowingTabs.map((tab) => (\n <li>\n <Button\n part=\"popover-tab\"\n style=\"text-transparent\"\n class=\"w-full truncate rounded px-4 py-2 text-left font-semibold\"\n ariaLabel={tab.label}\n title={tab.label}\n onClick={() => {\n tab.select();\n this.updatePopoverTabs();\n this.tabPopover?.toggle();\n }}\n >\n {tab.label}\n </Button>\n </li>\n ));\n };\n\n private setTabButtonMaxWidth = () => {\n this.displayedTabs.forEach((tab) => {\n tab.style.setProperty('max-width', `calc(100% - ${this.popoverWidth}px)`);\n });\n };\n\n private updateTabsDisplay = () => {\n this.updateTabVisibility(this.overflowingTabs, false);\n this.updateTabVisibility(this.displayedTabs, true);\n this.setTabButtonMaxWidth();\n this.updatePopoverPosition();\n this.updatePopoverTabs();\n this.tabPopover?.setButtonVisibility(!!this.overflowingTabs.length);\n };\n\n @Listen('atomic/tabRendered')\n public resolveResult(event: CustomEvent<{}>) {\n event.stopPropagation();\n this.updatePopoverTabs();\n }\n public componentWillUpdate() {\n this.updateTabsDisplay();\n }\n\n public componentDidLoad() {\n this.resizeObserver = new ResizeObserver(() => {\n this.updateTabsDisplay();\n });\n this.resizeObserver.observe(this.host);\n }\n\n public disconnectedCallback() {\n this.resizeObserver?.disconnect();\n }\n\n public render = () => {\n return (\n <Host class=\"overflow-x-clip overflow-y-visible\">\n <slot></slot>\n <atomic-tab-popover exportparts=\"popover-button, value-label, arrow-icon, backdrop overflow-tabs\">\n {this.popoverTabs}\n </atomic-tab-popover>\n </Host>\n );\n };\n}\n","@import '../../../global/global.pcss';\n\n:host {\n position: absolute;\n}\n\n:host(.visibility-hidden) {\n visibility: hidden;\n}\n\n[part='overflow-tabs'] {\n flex-direction: column;\n max-width: 150px;\n\n button {\n text-align: start;\n }\n}\n","import {\n createPopperLite as createPopper,\n preventOverflow,\n Instance as PopperInstance,\n} from '@popperjs/core';\nimport {\n Component,\n h,\n Listen,\n State,\n Element,\n Host,\n Method,\n} from '@stencil/core';\nimport ArrowBottomIcon from '../../../images/arrow-bottom-rounded.svg';\nimport {\n InitializableComponent,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {Bindings} from '../../search/atomic-search-interface/atomic-search-interface';\nimport {Button} from '../stencil-button';\n\n/**\n * @internal\n */\n@Component({\n tag: 'atomic-tab-popover',\n shadow: true,\n styleUrl: 'tab-popover.pcss',\n})\nexport class TabPopover implements InitializableComponent {\n @Element() private host!: HTMLElement;\n\n @InitializeBindings() public bindings!: Bindings;\n\n @State()\n public show = false;\n\n @State()\n public error!: Error;\n\n @State()\n private isOpen = false;\n\n private buttonRef!: HTMLElement;\n private popupRef!: HTMLElement;\n private popperInstance?: PopperInstance;\n public popoverId = 'atomic-tab-popover';\n\n public initialize() {}\n\n private initializePopover() {\n this.popupRef.classList.add('popover-nested');\n }\n\n @Listen('keydown')\n public handleKeyDown(e: KeyboardEvent) {\n if (!this.isOpen) {\n return;\n }\n\n if (e.key === 'Escape') {\n this.toggle();\n } else if (e.key === 'ArrowDown' || e.key === 'ArrowUp') {\n e.preventDefault();\n this.navigatePopover(e.key);\n }\n }\n\n private getTabButtons(): HTMLButtonElement[] {\n const slot = this.popupRef.children[0] as HTMLSlotElement;\n return Array.from(slot.assignedElements())\n .map((el) => (el as HTMLElement).querySelector('button'))\n .filter((el): el is HTMLButtonElement => el !== null);\n }\n\n private getCurrentTabIndex(elements: HTMLButtonElement[]): number {\n const MAX_SHADOW_DEPTH = 3;\n let currentElement = document.activeElement;\n let depth = 0;\n\n while (currentElement?.shadowRoot && depth < MAX_SHADOW_DEPTH) {\n currentElement = currentElement.shadowRoot.activeElement;\n depth++;\n }\n\n if (!(currentElement instanceof HTMLButtonElement)) {\n return -1;\n }\n\n return elements.indexOf(currentElement);\n }\n\n private navigatePopover(key: string): void {\n const tabButtons = this.getTabButtons();\n if (!tabButtons.length) {\n return;\n }\n\n const currentIndex = this.getCurrentTabIndex(tabButtons);\n\n const startIndex = currentIndex > -1 ? currentIndex : -1;\n\n let nextIndex;\n if (currentIndex === -1) {\n nextIndex = key === 'ArrowDown' ? 0 : tabButtons.length - 1;\n } else {\n nextIndex =\n key === 'ArrowDown'\n ? (startIndex + 1) % tabButtons.length\n : (startIndex - 1 + tabButtons.length) % tabButtons.length;\n }\n\n tabButtons[nextIndex]?.focus();\n }\n\n get slotElements() {\n return this.host.children;\n }\n\n get hasTabs() {\n return !!this.popupRef.children.length;\n }\n\n @Method()\n public async toggle() {\n this.isOpen = !this.isOpen;\n }\n\n @Method()\n public async setButtonVisibility(isVisible: boolean) {\n this.show = isVisible;\n }\n\n @Method()\n public async closePopoverOnFocusOut(event: FocusEvent) {\n const slot = this.popupRef.children[0] as HTMLSlotElement;\n const assignedElements = slot.assignedElements() as HTMLElement[];\n\n const isMovingToSlottedElement = assignedElements.some(\n (element) =>\n element === event.relatedTarget ||\n element.contains(event.relatedTarget as Node)\n );\n\n if (isMovingToSlottedElement) {\n return;\n }\n\n if (!this.popupRef.contains(event.relatedTarget as Node)) {\n this.closePopover();\n }\n }\n\n private closePopover() {\n this.isOpen = false;\n }\n\n private renderDropdownButton() {\n const label = this.bindings?.i18n.t('more');\n const ariaLabel = this.bindings?.i18n.t('tab-popover', {label});\n const buttonClasses = [\n 'relative',\n 'pb-1',\n 'mt-1',\n 'group',\n 'mr-6',\n 'font-semibold',\n ];\n\n return (\n <Button\n ref={(el) => (this.buttonRef = el!)}\n style=\"text-transparent\"\n onClick={() => this.toggle()}\n part=\"popover-button\"\n ariaExpanded={`${this.isOpen}`}\n ariaLabel={ariaLabel}\n ariaControls={this.popoverId}\n class={`${buttonClasses.join(' ')}`}\n >\n <span\n title={label}\n part=\"value-label\"\n class={\n 'group-hover:text-primary-light group-focus:text-primary mr-1.5 truncate'\n }\n >\n {label}\n </span>\n <atomic-icon\n part=\"arrow-icon\"\n class={`group-hover:text-primary-light group-focus:text-primary ml-auto w-2 ${\n this.isOpen ? 'rotate-180' : ''\n }`}\n icon={ArrowBottomIcon}\n ></atomic-icon>\n </Button>\n );\n }\n\n private renderBackdrop() {\n return (\n <div\n part=\"backdrop\"\n class=\"fixed top-0 right-0 bottom-0 left-0 z-9998 cursor-pointer bg-transparent\"\n onClick={() => this.toggle()}\n ></div>\n );\n }\n\n private renderPopover() {\n return (\n <div class={`relative ${this.isOpen ? 'z-9999' : ''}`}>\n {this.renderDropdownButton()}\n <ul\n id={this.popoverId}\n ref={(el) => (this.popupRef = el!)}\n part=\"overflow-tabs\"\n class={`bg-background border-neutral absolute rounded-lg border py-2 shadow-lg ${\n this.isOpen ? 'flex' : 'hidden'\n }`}\n >\n <slot></slot>\n </ul>\n </div>\n );\n }\n\n public componentDidRender() {\n if (this.popperInstance || !this.buttonRef || !this.popupRef) {\n return;\n }\n\n this.popperInstance = createPopper(this.buttonRef, this.popupRef, {\n placement: 'bottom-end',\n modifiers: [preventOverflow],\n });\n this.initializePopover();\n }\n\n public componentDidUpdate() {\n this.popperInstance?.forceUpdate();\n }\n\n public render() {\n return (\n <Host\n onFocusout={(event: FocusEvent) => this.closePopoverOnFocusOut(event)}\n class={this.show ? '' : 'visibility-hidden'}\n aria-hidden={!this.show}\n >\n {this.renderPopover()}\n {this.isOpen && this.renderBackdrop()}\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -3,8 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-757bc886.js');
|
|
6
|
-
const stencilButton = require('./stencil-button-
|
|
7
|
-
require('./ripple-4070d750.js');
|
|
6
|
+
const stencilButton = require('./stencil-button-f6c2410c.js');
|
|
8
7
|
require('./event-utils-9bfcf3c5.js');
|
|
9
8
|
require('./stencil-button-style-ba779fe2.js');
|
|
10
9
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"atomic-tab-button.entry.cjs.js","mappings":"
|
|
1
|
+
{"file":"atomic-tab-button.entry.cjs.js","mappings":";;;;;;;;;AAAA,MAAM,YAAY,GAAG,otgEAAotgE,CAAC;AAC1ugE,8BAAe,YAAY;;MCSd,eAAe;;;;;;QASlB,WAAM,GAAY,KAAK,CAAC;;sBAAN,KAAK;;;IAO/B,IAAY,cAAc;QACxB,OAAO,IAAI,CAAC,MAAM;cACd,6GAA6G;cAC7G,EAAE,CAAC;KACR;IAED,IAAY,kBAAkB;QAC5B,OAAO,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,4CAA4C,CAAC;KACxE;IAED,MAAM;QACJ,QACEA,QAACC,UAAI,qDACH,IAAI,EAAC,UAAU,EACf,KAAK,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,kBACjB,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,gBAChC,UAAU,GAAG,IAAI,CAAC,KAAK,EACnC,IAAI,EAAE,kBAAkB,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,GAAG,EAAE,CAAC,IAEzDD,QAACE,oBAAM,qDACL,KAAK,EAAE,6CAA6C,IAAI,CAAC,kBAAkB,EAAE,EAC7E,IAAI,EAAE,YAAY,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,GAAG,EAAE,CAAC,EACnD,OAAO,EAAE,IAAI,CAAC,MAAM,EACpB,KAAK,EAAC,kBAAkB,IAEvB,IAAI,CAAC,KAAK,CACJ,CACJ,EACP;KACH;;;;;;","names":["h","Host","Button"],"sources":["src/components/common/tabs/tab-button.pcss?tag=atomic-tab-button","src/components/common/tabs/tab-button.tsx"],"sourcesContent":["@import '../../../global/global.pcss';\n","import {Component, Host, Prop, h} from '@stencil/core';\nimport {Button} from '../stencil-button';\n\n/**\n * @internal\n */\n@Component({\n tag: 'atomic-tab-button',\n styleUrl: 'tab-button.pcss',\n})\nexport class AtomicTabButton {\n /**\n * The label to display on the tab button.\n */\n @Prop() label!: string;\n\n /**\n * Whether the tab button is active.\n */\n @Prop() active: boolean = false;\n\n /**\n * Click handler for the tab button.\n */\n @Prop() select!: () => void;\n\n private get activeTabClass() {\n return this.active\n ? 'relative after:block after:w-full after:h-1 after:absolute after:-bottom-0.5 after:bg-primary after:rounded'\n : '';\n }\n\n private get activeTabTextClass() {\n return this.active ? '' : 'text-neutral-dark hover:text-primary-light';\n }\n\n render() {\n return (\n <Host\n role=\"listitem\"\n class={`${this.activeTabClass}`}\n aria-current={this.active ? 'true' : 'false'}\n aria-label={'tab for ' + this.label}\n part={'button-container' + (this.active ? '-active' : '')}\n >\n <Button\n class={`w-full truncate px-2 pb-1 text-xl sm:px-6 ${this.activeTabTextClass}`}\n part={'tab-button' + (this.active ? '-active' : '')}\n onClick={this.select}\n style=\"text-transparent\"\n >\n {this.label}\n </Button>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -62,7 +62,7 @@ const AtomicTabManager = class {
|
|
|
62
62
|
});
|
|
63
63
|
}
|
|
64
64
|
render() {
|
|
65
|
-
return (index.h(index.Host, { key: '
|
|
65
|
+
return (index.h(index.Host, { key: '4ea1e2534d1a02ca62d7ac6ec6462252e3d562ee' }, index.h("atomic-tab-bar", { key: '98896c96e0599094edee87021c10c9fe6fbf3ab0' }, index.h("div", { key: '2087916e6bda8851a9296a194bbe0cdca44e6330', role: "list", "aria-label": "tab-area", part: "tab-area", class: "border-neutral mb-2 flex w-full flex-row border-b" }, this.tabs.map((tab) => (index.h("atomic-tab-button", { active: this.tabManagerState.activeTab === tab.name, label: this.bindings.i18n.t(tab.label, {
|
|
66
66
|
defaultValue: tab.label,
|
|
67
67
|
}), select: () => {
|
|
68
68
|
if (!tab.tabController.state.isActive) {
|
|
@@ -8,8 +8,8 @@ const initializationUtils = require('./initialization-utils-62dc9852.js');
|
|
|
8
8
|
const propsUtils = require('./props-utils-1e4ba1b0.js');
|
|
9
9
|
const stencilAccessibilityUtils = require('./stencil-accessibility-utils-aa4c9f6c.js');
|
|
10
10
|
const dependsOn = require('./depends-on-0d4e4f15.js');
|
|
11
|
-
const facetPlaceholder = require('./facet-placeholder-
|
|
12
|
-
const timeframeFacetCommon = require('./timeframe-facet-common-
|
|
11
|
+
const facetPlaceholder = require('./facet-placeholder-d9604249.js');
|
|
12
|
+
const timeframeFacetCommon = require('./timeframe-facet-common-5d249725.js');
|
|
13
13
|
require('./dom-utils-d4790328.js');
|
|
14
14
|
require('./event-utils-9bfcf3c5.js');
|
|
15
15
|
require('./init-queue-a18aa323.js');
|
|
@@ -21,8 +21,7 @@ require('./_commonjsHelpers-b3309d7b.js');
|
|
|
21
21
|
require('./arrow-bottom-rounded-705a1b2c.js');
|
|
22
22
|
require('./arrow-top-rounded-e7a05d2f.js');
|
|
23
23
|
require('./close-20739950.js');
|
|
24
|
-
require('./stencil-button-
|
|
25
|
-
require('./ripple-4070d750.js');
|
|
24
|
+
require('./stencil-button-f6c2410c.js');
|
|
26
25
|
require('./stencil-button-style-ba779fe2.js');
|
|
27
26
|
require('./stencil-heading-2faee1f7.js');
|
|
28
27
|
require('./date-utils-f0803dd3.js');
|
|
@@ -30,7 +29,7 @@ require('./dayjs.min-8b80e6d1.js');
|
|
|
30
29
|
require('./field-utils-a715deca.js');
|
|
31
30
|
require('./stencil-facet-value-label-highlight-c2421e8f.js');
|
|
32
31
|
require('./string-utils-bdf08f8c.js');
|
|
33
|
-
require('./stencil-facet-value-link-
|
|
32
|
+
require('./stencil-facet-value-link-bd461250.js');
|
|
34
33
|
require('./stencil-facet-values-group-07b50fc0.js');
|
|
35
34
|
require('./stencil-fieldset-group-3b25c138.js');
|
|
36
35
|
require('./popover-type-b1385b27.js');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"atomic-timeframe-facet.entry.cjs.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,uBAAuB,GAAG,+9hEAA+9hE,CAAC;AAChgiE,mCAAe,uBAAuB;;;;;;;;;;;;MCgEzB,oBAAoB;;;;;;;QAoCD,UAAK,GAAG,UAAU,CAAC;;;;QAInB,UAAK,GAAG,MAAM,CAAC;;;;;;;;;;QAYtC,iBAAY,GAAsB,IAAI,CAAC;;;;;;;;;;QAavC,iBAAY,GAAsB,IAAI,CAAC;;;;QAKhB,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;;;;;QA4BnC,iBAAY,GACxC,YAAY,CAAC;;;;;;;;qBA1GuB,UAAU;qBAIV,MAAM;4BAYH,IAAI;4BAaJ,IAAI;8BAKE,KAAK;2BAIO,KAAK;4BAInB,CAAC;gCAOG,IAAI;8BAON,IAAI;yBAqBW,EAAE;;;4BA6B9D,YAAY;;IAId,IAAY,WAAW;QACrB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,IAAI,CAAC,WAAW,GAAG,IAAIA,+CAAqB,CAAC,IAAI,CAAC,CAAC;SACpD;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;IAEM,UAAU;QACf,IACE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC;YACjC,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,EACjC;YACA,OAAO,CAAC,IAAI,CACV,qHAAqH,CACtH,CAAC;SACH;QACD,IAAI,CAAC,oBAAoB,GAAG,IAAIC,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,EAAEC,wBAAc,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS;YAC3D,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,UAAU,EAAE,CAAC,EAAU,MAAM,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;YAC/C,wBAAwB,EAAE,CAAC,OAAe,KACxCC,oCAA2B,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;gBAChD,OAAO;gBACP,UAAU,EAAED,wBAAc,CAExB,IAAI,CAAC,SAAS,CAAC;aAClB,CAAC;4BACJE,uBAAc;YACd,oBAAoB,EAAE,MAAM,IAAI,CAAC,iBAAiB;qCAClDC,gCAAuB;YACvB,4BAA4B,EAAE,MAAM,IAAI,CAAC,4BAA4B,EAAE;YACvE,2BAA2B,EAAE,CAAC,MAA0B,KACtD,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC;YAC1C,gBAAgB,EAAE,MAAM,IAAI,CAAC,gBAAgB,EAAE;YAC/C,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,GAAGC,0BAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,UAAU,GAAGC,wBAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;KACzD;IAEM,oBAAoB;QACzB,IAAI,CAAC,oBAAoB,EAAE,oBAAoB,EAAE,CAAC;KACnD;IAEO,4BAA4B;QAClC,IAAI,CAAC,kBAAkB,GAAGC,uBAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YAC7D,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;gBACnC,IAAI,EAAE;oBACJ,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;oBAChC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;iBACjC;aACF;SACF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,kBAAkB,CAAC;KAChC;IAEO,2BAA2B,CAAC,MAA0B;QAC5D,IAAI,CAAC,iBAAiB,GAAGA,uBAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YAC5D,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,IAAI,CAAC,YAAY;gBAC/B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,IAAI,EAAE;oBACJ,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;oBAChC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;iBACjC;aACF;SACF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,iBAAiB,CAAC;KAC/B;IAEO,gBAAgB;QACtB,IAAI,CAAC,MAAM,GAAGC,wBAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YAClD,OAAO,EAAE;gBACP,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,QAAQ;gBAChC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,IAAI,EAAE;oBACJ,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;oBAChC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;iBACjC;aACF;SACF,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IAGM,cAAc;QACnB,IAAI,CAAC,OAAO;YACV,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAC3BC,gCAAuB,CACrB,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,iCAAgB,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;;;AAnR4B;IAA5BC,sCAAkB,EAAE;sDAA4B;AAY1C;IAFNC,yCAAqB,CAAC,mBAAmB,CAAC;wDAER;AAG5B;IAFNA,yCAAqB,CAAC,oBAAoB,CAAC;qEAEI;AAGzC;IAFNA,yCAAqB,CAAC,QAAQ,CAAC;yDAEK;AAG9B;IAFNA,yCAAqB,CAAC,cAAc,CAAC;+DAEO;AAGtC;IAFNA,yCAAqB,CAAC,YAAY,CAAC;6DAEK;AA2BlC;IAFNC,oBAAS,EAAE;0DAEkC;AAavC;IAFNA,oBAAS,EAAE;0DAEkC;AAgDpB;IAAzBC,kBAAO,EAAE;uDAAuD;;;;;","names":["FocusTargetController","TimeframeFacetCommon","parseDependsOn","buildFacetConditionsManager","buildDateRange","deserializeRelativeDate","buildSearchStatus","buildTabManager","buildDateFacet","buildDateFilter","loadDateFacetSetActions","h","FacetPlaceholder","InitializeBindings","BindStateToController","ArrayProp","MapProp"],"sources":["src/components/search/facets/atomic-timeframe-facet/atomic-timeframe-facet.pcss?tag=atomic-timeframe-facet&encapsulation=shadow","src/components/search/facets/atomic-timeframe-facet/atomic-timeframe-facet.tsx"],"sourcesContent":["@import '../../../common/facets/facet-common.pcss';\n","import {\n buildDateFacet,\n buildDateFilter,\n buildDateRange,\n buildFacetConditionsManager,\n buildSearchStatus,\n DateFacet,\n DateFacetState,\n DateFilter,\n DateFilterState,\n DateRangeRequest,\n deserializeRelativeDate,\n RangeFacetSortCriterion,\n loadDateFacetSetActions,\n SearchStatus,\n SearchStatusState,\n FacetValueRequest,\n CategoryFacetValueRequest,\n buildTabManager,\n TabManager,\n TabManagerState,\n} from '@coveo/headless';\nimport {Component, Element, h, Listen, Prop, State} from '@stencil/core';\nimport {\n BindStateToController,\n InitializableComponent,\n InitializeBindings,\n} from '../../../../utils/initialization-utils';\nimport {ArrayProp, MapProp} from '../../../../utils/props-utils';\nimport {FocusTargetController} from '../../../../utils/stencil-accessibility-utils';\nimport {parseDependsOn} from '../../../common/facets/depends-on';\nimport {FacetPlaceholder} from '../../../common/facets/facet-placeholder/facet-placeholder';\nimport {TimeframeFacetCommon} from '../../../common/facets/timeframe-facet-common';\nimport {Bindings} from '../../atomic-search-interface/atomic-search-interface';\n\n/**\n * A facet is a list of values for a certain field occurring in the results.\n * An `atomic-timeframe-facet` displays a facet of the results for the current query as date intervals.\n *\n * @slot default - The `atomic-timeframe` components defining the timeframes to display.\n *\n * @part facet - The wrapper for the entire facet.\n * @part placeholder - The placeholder shown before the first search is executed.\n *\n * @part label-button - The button that displays the label and allows to expand/collapse the facet.\n * @part label-button-icon - The label button icon.\n * @part clear-button - The button that resets the actively selected facet values.\n * @part clear-button-icon - The clear button icon.\n *\n * @part values - The facet values container.\n * @part value-label - The facet value label, common for all displays.\n * @part value-count - The facet value count, common for all displays.\n * @part value-link - The facet value when display is 'link'.\n * @part value-link-selected - The selected facet value when display is 'link'.\n *\n * @part input-start - The input for the starting value of the custom date range.\n * @part input-end - The input for the ending value of the custom date range.\n * @part input-label - The label for both the start and end input.\n * @part input-apply-button - The apply button for the custom range.\n */\n@Component({\n tag: 'atomic-timeframe-facet',\n styleUrl: './atomic-timeframe-facet.pcss',\n shadow: true,\n})\nexport class AtomicTimeframeFacet implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n public facetForDateRange?: DateFacet;\n public facetForDatePicker?: DateFacet;\n\n private timeframeFacetCommon?: TimeframeFacetCommon;\n public filter?: DateFilter;\n public searchStatus!: SearchStatus;\n public tabManager!: TabManager;\n @Element() private host!: HTMLElement;\n\n @BindStateToController('facetForDateRange')\n @State()\n public facetState!: DateFacetState;\n @BindStateToController('facetForDatePicker')\n @State()\n public facetForDatePickerState?: DateFacetState;\n @BindStateToController('filter')\n @State()\n public filterState?: DateFilterState;\n @BindStateToController('searchStatus')\n @State()\n public searchStatusState!: SearchStatusState;\n @BindStateToController('tabManager')\n @State()\n public tabManagerState!: TabManagerState;\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 * The tabs on which the facet can be displayed. This property should not be used at the same time as `tabs-excluded`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-timeframe-facet tabs-included='[\"tabIDA\", \"tabIDB\"]'></atomic-timeframe-facet>\n * ```\n * If you don't set this property, the facet can be displayed on any tab. Otherwise, the facet can only be displayed on the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsIncluded: string[] | string = '[]';\n\n /**\n * The tabs on which this facet must not be displayed. This property should not be used at the same time as `tabs-included`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-timeframe-facet tabs-excluded='[\"tabIDA\", \"tabIDB\"]'></atomic-timeframe-facet>\n * ```\n * If you don't set this property, the facet can be displayed on any tab. Otherwise, the facet won't be displayed on any of the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsExcluded: string[] | string = '[]';\n\n /**\n * Whether this facet should contain an datepicker allowing users to set custom ranges.\n */\n @Prop({reflect: true}) public withDatePicker = false;\n /**\n * Specifies whether the facet is collapsed. When the facet is the child of an `atomic-facet-manager` component, the facet manager controls this property.\n */\n @Prop({reflect: true, mutable: true}) public isCollapsed = false;\n /**\n * The [heading level](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements) to use for the heading over the facet, from 1 to 6.\n */\n @Prop({reflect: true}) public headingLevel = 0;\n /**\n * Whether to exclude the parents of folded results when estimating the result count for each facet value.\n *\n *\n * Note: Resulting count is only an estimation, in some cases this value could be incorrect.\n */\n @Prop({reflect: true}) public filterFacetCount = true;\n /**\n * The maximum number of results to scan in the index to ensure that the facet lists all potential facet values.\n * Note: A high injectionDepth may negatively impact the facet request performance.\n * Minimum: `0`\n * Default: `1000`\n */\n @Prop({reflect: true}) public injectionDepth = 1000;\n\n /**\n * The required facets and values for this facet to be displayed.\n * Examples:\n * ```html\n * <atomic-facet facet-id=\"abc\" field=\"objecttype\" ...></atomic-facet>\n *\n * <!-- To show the facet when any value is selected in the facet with id \"abc\": -->\n * <atomic-timeframe-facet\n * depends-on-abc\n * ...\n * ></atomic-timeframe-facet>\n *\n * <!-- To show the facet when value \"doc\" is selected in the facet with id \"abc\": -->\n * <atomic-timeframe-facet\n * depends-on-abc=\"doc\"\n * ...\n * ></atomic-timeframe-facet>\n * ```\n */\n @MapProp() @Prop() public dependsOn: Record<string, string> = {};\n\n /**\n * The earliest date to accept from user input when the `withDatepicker` option is enabled.\n *\n * This value must be a valid date string in the format `YYYY-MM-DD`.\n *\n * If this format is not respected, the date picker ignores this property, behaving as if no `min` value had been set.\n *\n * See also [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/date#min).\n */\n @Prop({reflect: true}) public min?: string;\n\n /**\n * The latest date to accept from user input when the `withDatepicker` option is enabled.\n *\n * This value must be a valid date string in the format `YYYY-MM-DD`.\n *\n * If this format is not respected, the date picker ignores this property, behaving as if no `max` value had been set.\n *\n * See also [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/date#max).\n */\n @Prop({reflect: true}) public max?: 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: RangeFacetSortCriterion =\n 'descending';\n\n private headerFocus?: FocusTargetController;\n\n private get focusTarget(): FocusTargetController {\n if (!this.headerFocus) {\n this.headerFocus = new FocusTargetController(this);\n }\n return this.headerFocus;\n }\n\n public initialize() {\n if (\n [...this.tabsIncluded].length > 0 &&\n [...this.tabsExcluded].length > 0\n ) {\n console.warn(\n 'Values for both \"tabs-included\" and \"tabs-excluded\" have been provided. This is could lead to unexpected behaviors.'\n );\n }\n this.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: parseDependsOn(this.dependsOn) && this.dependsOn,\n withDatePicker: this.withDatePicker,\n setFacetId: (id: string) => (this.facetId = id),\n buildDependenciesManager: (facetId: string) =>\n buildFacetConditionsManager(this.bindings.engine, {\n facetId,\n conditions: parseDependsOn<\n FacetValueRequest | CategoryFacetValueRequest\n >(this.dependsOn),\n }),\n buildDateRange,\n getSearchStatusState: () => this.searchStatusState,\n deserializeRelativeDate,\n initializeFacetForDatePicker: () => this.initializeFacetForDatePicker(),\n initializeFacetForDateRange: (values: DateRangeRequest[]) =>\n this.initializeFacetForDateRange(values),\n initializeFilter: () => this.initializeFilter(),\n min: this.min,\n max: this.max,\n sortCriteria: this.sortCriteria,\n });\n this.searchStatus = buildSearchStatus(this.bindings.engine);\n this.tabManager = buildTabManager(this.bindings.engine);\n }\n\n public disconnectedCallback() {\n this.timeframeFacetCommon?.disconnectedCallback();\n }\n\n private initializeFacetForDatePicker() {\n this.facetForDatePicker = buildDateFacet(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 tabs: {\n included: [...this.tabsIncluded],\n excluded: [...this.tabsExcluded],\n },\n },\n });\n return this.facetForDatePicker;\n }\n\n private initializeFacetForDateRange(values: DateRangeRequest[]) {\n this.facetForDateRange = buildDateFacet(this.bindings.engine, {\n options: {\n facetId: this.facetId,\n field: this.field,\n currentValues: values,\n generateAutomaticRanges: false,\n sortCriteria: this.sortCriteria,\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n tabs: {\n included: [...this.tabsIncluded],\n excluded: [...this.tabsExcluded],\n },\n },\n });\n return this.facetForDateRange;\n }\n\n private initializeFilter() {\n this.filter = buildDateFilter(this.bindings.engine, {\n options: {\n facetId: `${this.facetId}_input`,\n field: this.field,\n tabs: {\n included: [...this.tabsIncluded],\n excluded: [...this.tabsExcluded],\n },\n },\n });\n\n return this.filter;\n }\n\n @Listen('atomic/dateInputApply')\n public applyDateInput() {\n this.facetId &&\n this.bindings.engine.dispatch(\n loadDateFacetSetActions(\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-timeframe-facet.entry.cjs.js","mappings":"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","names":["FocusTargetController","TimeframeFacetCommon","parseDependsOn","buildFacetConditionsManager","buildDateRange","deserializeRelativeDate","buildSearchStatus","buildTabManager","buildDateFacet","buildDateFilter","loadDateFacetSetActions","h","FacetPlaceholder","InitializeBindings","BindStateToController","ArrayProp","MapProp"],"sources":["src/components/search/facets/atomic-timeframe-facet/atomic-timeframe-facet.pcss?tag=atomic-timeframe-facet&encapsulation=shadow","src/components/search/facets/atomic-timeframe-facet/atomic-timeframe-facet.tsx"],"sourcesContent":["@import '../../../common/facets/facet-common.pcss';\n","import {\n buildDateFacet,\n buildDateFilter,\n buildDateRange,\n buildFacetConditionsManager,\n buildSearchStatus,\n DateFacet,\n DateFacetState,\n DateFilter,\n DateFilterState,\n DateRangeRequest,\n deserializeRelativeDate,\n RangeFacetSortCriterion,\n loadDateFacetSetActions,\n SearchStatus,\n SearchStatusState,\n FacetValueRequest,\n CategoryFacetValueRequest,\n buildTabManager,\n TabManager,\n TabManagerState,\n} from '@coveo/headless';\nimport {Component, Element, h, Listen, Prop, State} from '@stencil/core';\nimport {\n BindStateToController,\n InitializableComponent,\n InitializeBindings,\n} from '../../../../utils/initialization-utils';\nimport {ArrayProp, MapProp} from '../../../../utils/props-utils';\nimport {FocusTargetController} from '../../../../utils/stencil-accessibility-utils';\nimport {parseDependsOn} from '../../../common/facets/depends-on';\nimport {FacetPlaceholder} from '../../../common/facets/facet-placeholder/facet-placeholder';\nimport {TimeframeFacetCommon} from '../../../common/facets/timeframe-facet-common';\nimport {Bindings} from '../../atomic-search-interface/atomic-search-interface';\n\n/**\n * A facet is a list of values for a certain field occurring in the results.\n * An `atomic-timeframe-facet` displays a facet of the results for the current query as date intervals.\n *\n * @slot default - The `atomic-timeframe` components defining the timeframes to display.\n *\n * @part facet - The wrapper for the entire facet.\n * @part placeholder - The placeholder shown before the first search is executed.\n *\n * @part label-button - The button that displays the label and allows to expand/collapse the facet.\n * @part label-button-icon - The label button icon.\n * @part clear-button - The button that resets the actively selected facet values.\n * @part clear-button-icon - The clear button icon.\n *\n * @part values - The facet values container.\n * @part value-label - The facet value label, common for all displays.\n * @part value-count - The facet value count, common for all displays.\n * @part value-link - The facet value when display is 'link'.\n * @part value-link-selected - The selected facet value when display is 'link'.\n *\n * @part input-start - The input for the starting value of the custom date range.\n * @part input-end - The input for the ending value of the custom date range.\n * @part input-label - The label for both the start and end input.\n * @part input-apply-button - The apply button for the custom range.\n */\n@Component({\n tag: 'atomic-timeframe-facet',\n styleUrl: './atomic-timeframe-facet.pcss',\n shadow: true,\n})\nexport class AtomicTimeframeFacet implements InitializableComponent {\n @InitializeBindings() public bindings!: Bindings;\n public facetForDateRange?: DateFacet;\n public facetForDatePicker?: DateFacet;\n\n private timeframeFacetCommon?: TimeframeFacetCommon;\n public filter?: DateFilter;\n public searchStatus!: SearchStatus;\n public tabManager!: TabManager;\n @Element() private host!: HTMLElement;\n\n @BindStateToController('facetForDateRange')\n @State()\n public facetState!: DateFacetState;\n @BindStateToController('facetForDatePicker')\n @State()\n public facetForDatePickerState?: DateFacetState;\n @BindStateToController('filter')\n @State()\n public filterState?: DateFilterState;\n @BindStateToController('searchStatus')\n @State()\n public searchStatusState!: SearchStatusState;\n @BindStateToController('tabManager')\n @State()\n public tabManagerState!: TabManagerState;\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 * The tabs on which the facet can be displayed. This property should not be used at the same time as `tabs-excluded`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-timeframe-facet tabs-included='[\"tabIDA\", \"tabIDB\"]'></atomic-timeframe-facet>\n * ```\n * If you don't set this property, the facet can be displayed on any tab. Otherwise, the facet can only be displayed on the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsIncluded: string[] | string = '[]';\n\n /**\n * The tabs on which this facet must not be displayed. This property should not be used at the same time as `tabs-included`.\n *\n * Set this property as a stringified JSON array, e.g.,\n * ```html\n * <atomic-timeframe-facet tabs-excluded='[\"tabIDA\", \"tabIDB\"]'></atomic-timeframe-facet>\n * ```\n * If you don't set this property, the facet can be displayed on any tab. Otherwise, the facet won't be displayed on any of the specified tabs.\n */\n @ArrayProp()\n @Prop({reflect: true, mutable: true})\n public tabsExcluded: string[] | string = '[]';\n\n /**\n * Whether this facet should contain an datepicker allowing users to set custom ranges.\n */\n @Prop({reflect: true}) public withDatePicker = false;\n /**\n * Specifies whether the facet is collapsed. When the facet is the child of an `atomic-facet-manager` component, the facet manager controls this property.\n */\n @Prop({reflect: true, mutable: true}) public isCollapsed = false;\n /**\n * The [heading level](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements) to use for the heading over the facet, from 1 to 6.\n */\n @Prop({reflect: true}) public headingLevel = 0;\n /**\n * Whether to exclude the parents of folded results when estimating the result count for each facet value.\n *\n *\n * Note: Resulting count is only an estimation, in some cases this value could be incorrect.\n */\n @Prop({reflect: true}) public filterFacetCount = true;\n /**\n * The maximum number of results to scan in the index to ensure that the facet lists all potential facet values.\n * Note: A high injectionDepth may negatively impact the facet request performance.\n * Minimum: `0`\n * Default: `1000`\n */\n @Prop({reflect: true}) public injectionDepth = 1000;\n\n /**\n * The required facets and values for this facet to be displayed.\n * Examples:\n * ```html\n * <atomic-facet facet-id=\"abc\" field=\"objecttype\" ...></atomic-facet>\n *\n * <!-- To show the facet when any value is selected in the facet with id \"abc\": -->\n * <atomic-timeframe-facet\n * depends-on-abc\n * ...\n * ></atomic-timeframe-facet>\n *\n * <!-- To show the facet when value \"doc\" is selected in the facet with id \"abc\": -->\n * <atomic-timeframe-facet\n * depends-on-abc=\"doc\"\n * ...\n * ></atomic-timeframe-facet>\n * ```\n */\n @MapProp() @Prop() public dependsOn: Record<string, string> = {};\n\n /**\n * The earliest date to accept from user input when the `withDatepicker` option is enabled.\n *\n * This value must be a valid date string in the format `YYYY-MM-DD`.\n *\n * If this format is not respected, the date picker ignores this property, behaving as if no `min` value had been set.\n *\n * See also [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/date#min).\n */\n @Prop({reflect: true}) public min?: string;\n\n /**\n * The latest date to accept from user input when the `withDatepicker` option is enabled.\n *\n * This value must be a valid date string in the format `YYYY-MM-DD`.\n *\n * If this format is not respected, the date picker ignores this property, behaving as if no `max` value had been set.\n *\n * See also [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/date#max).\n */\n @Prop({reflect: true}) public max?: 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: RangeFacetSortCriterion =\n 'descending';\n\n private headerFocus?: FocusTargetController;\n\n private get focusTarget(): FocusTargetController {\n if (!this.headerFocus) {\n this.headerFocus = new FocusTargetController(this);\n }\n return this.headerFocus;\n }\n\n public initialize() {\n if (\n [...this.tabsIncluded].length > 0 &&\n [...this.tabsExcluded].length > 0\n ) {\n console.warn(\n 'Values for both \"tabs-included\" and \"tabs-excluded\" have been provided. This is could lead to unexpected behaviors.'\n );\n }\n this.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: parseDependsOn(this.dependsOn) && this.dependsOn,\n withDatePicker: this.withDatePicker,\n setFacetId: (id: string) => (this.facetId = id),\n buildDependenciesManager: (facetId: string) =>\n buildFacetConditionsManager(this.bindings.engine, {\n facetId,\n conditions: parseDependsOn<\n FacetValueRequest | CategoryFacetValueRequest\n >(this.dependsOn),\n }),\n buildDateRange,\n getSearchStatusState: () => this.searchStatusState,\n deserializeRelativeDate,\n initializeFacetForDatePicker: () => this.initializeFacetForDatePicker(),\n initializeFacetForDateRange: (values: DateRangeRequest[]) =>\n this.initializeFacetForDateRange(values),\n initializeFilter: () => this.initializeFilter(),\n min: this.min,\n max: this.max,\n sortCriteria: this.sortCriteria,\n });\n this.searchStatus = buildSearchStatus(this.bindings.engine);\n this.tabManager = buildTabManager(this.bindings.engine);\n }\n\n public disconnectedCallback() {\n this.timeframeFacetCommon?.disconnectedCallback();\n }\n\n private initializeFacetForDatePicker() {\n this.facetForDatePicker = buildDateFacet(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 tabs: {\n included: [...this.tabsIncluded],\n excluded: [...this.tabsExcluded],\n },\n },\n });\n return this.facetForDatePicker;\n }\n\n private initializeFacetForDateRange(values: DateRangeRequest[]) {\n this.facetForDateRange = buildDateFacet(this.bindings.engine, {\n options: {\n facetId: this.facetId,\n field: this.field,\n currentValues: values,\n generateAutomaticRanges: false,\n sortCriteria: this.sortCriteria,\n filterFacetCount: this.filterFacetCount,\n injectionDepth: this.injectionDepth,\n tabs: {\n included: [...this.tabsIncluded],\n excluded: [...this.tabsExcluded],\n },\n },\n });\n return this.facetForDateRange;\n }\n\n private initializeFilter() {\n this.filter = buildDateFilter(this.bindings.engine, {\n options: {\n facetId: `${this.facetId}_input`,\n field: this.field,\n tabs: {\n included: [...this.tabsIncluded],\n excluded: [...this.tabsExcluded],\n },\n },\n });\n\n return this.filter;\n }\n\n @Listen('atomic/dateInputApply')\n public applyDateInput() {\n this.facetId &&\n this.bindings.engine.dispatch(\n loadDateFacetSetActions(\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}
|