@coveo/atomic 3.30.1-pre.6f8efc1feb → 3.30.1-pre.7d5a246bc8
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 -6
- package/dist/atomic/components/_index.js +0 -3
- package/dist/atomic/components/analytics-config.js +1 -1
- package/dist/atomic/components/atomic-aria-live2.js +1 -1
- package/dist/atomic/components/atomic-category-facet.js +1 -1
- package/dist/atomic/components/atomic-citation.js +1 -1
- package/dist/atomic/components/atomic-commerce-category-facet2.js +1 -1
- package/dist/atomic/components/atomic-commerce-numeric-facet2.js +2 -2
- package/dist/atomic/components/atomic-commerce-timeframe-facet2.js +1 -1
- package/dist/atomic/components/atomic-facet-manager.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-generated-answer-feedback-modal.js +1 -1
- package/dist/atomic/components/atomic-html2.js +1 -1
- package/dist/atomic/components/atomic-insight-edit-toggle.js +1 -1
- package/dist/atomic/components/atomic-insight-facet.js +1 -1
- package/dist/atomic/components/atomic-insight-folded-result-list.js +1 -1
- package/dist/atomic/components/atomic-insight-full-search-button.js +1 -1
- package/dist/atomic/components/atomic-insight-history-toggle.js +1 -1
- package/dist/atomic/components/atomic-insight-no-results.js +1 -1
- package/dist/atomic/components/atomic-insight-numeric-facet.js +1 -1
- package/dist/atomic/components/atomic-insight-pager.js +3 -3
- package/dist/atomic/components/atomic-insight-query-error.js +1 -1
- package/dist/atomic/components/atomic-insight-refine-modal2.js +2 -2
- package/dist/atomic/components/atomic-insight-refine-toggle.js +1 -1
- package/dist/atomic/components/atomic-insight-result-attach-to-case-indicator.js +1 -1
- package/dist/atomic/components/atomic-insight-result-children.js +1 -1
- package/dist/atomic/components/atomic-insight-result-list.js +1 -1
- package/dist/atomic/components/atomic-insight-result-quickview-action.js +1 -1
- package/dist/atomic/components/atomic-insight-result2.js +1 -1
- package/dist/atomic/components/atomic-insight-search-box.js +2 -2
- package/dist/atomic/components/atomic-insight-smart-snippet-feedback-modal2.js +2 -2
- package/dist/atomic/components/atomic-insight-tabs.js +1 -1
- package/dist/atomic/components/atomic-insight-user-actions-session2.js +1 -1
- package/dist/atomic/components/atomic-insight-user-actions-toggle.js +1 -1
- package/dist/atomic/components/atomic-ipx-body2.js +2 -2
- package/dist/atomic/components/atomic-ipx-button.js +2 -2
- package/dist/atomic/components/atomic-ipx-embedded.js +1 -1
- package/dist/atomic/components/atomic-ipx-modal.js +2 -2
- package/dist/atomic/components/atomic-ipx-recs-list.js +1 -1
- package/dist/atomic/components/atomic-ipx-refine-modal2.js +1 -1
- package/dist/atomic/components/atomic-ipx-refine-toggle.js +1 -1
- package/dist/atomic/components/atomic-ipx-result-link.js +1 -1
- package/dist/atomic/components/atomic-ipx-tabs.js +1 -1
- package/dist/atomic/components/atomic-load-more-results.js +1 -1
- package/dist/atomic/components/atomic-modal2.js +2 -2
- package/dist/atomic/components/atomic-no-results.js +1 -1
- package/dist/atomic/components/atomic-numeric-facet.js +1 -1
- package/dist/atomic/components/atomic-pager.js +3 -3
- package/dist/atomic/components/atomic-product-description.js +32 -2
- package/dist/atomic/components/atomic-product-description.js.map +1 -1
- package/dist/atomic/components/atomic-product-link.js +17 -1
- package/dist/atomic/components/atomic-product-link.js.map +1 -1
- package/dist/atomic/components/atomic-query-error.js +1 -1
- package/dist/atomic/components/atomic-query-summary.js +1 -1
- package/dist/atomic/components/atomic-quickview-modal2.js +1 -1
- package/dist/atomic/components/atomic-quickview.js +1 -1
- package/dist/atomic/components/atomic-rating.js +7 -1
- package/dist/atomic/components/atomic-rating.js.map +1 -1
- package/dist/atomic/components/atomic-recs-error.js +1 -1
- package/dist/atomic/components/atomic-recs-list.js +1 -1
- package/dist/atomic/components/atomic-refine-modal2.js +1 -1
- package/dist/atomic/components/atomic-refine-toggle.js +1 -1
- package/dist/atomic/components/atomic-relevance-inspector2.js +2 -2
- 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-result-placeholder2.js +2 -2
- package/dist/atomic/components/atomic-result-table-placeholder2.js +1 -1
- package/dist/atomic/components/atomic-results-per-page.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-answer2.js +1 -1
- package/dist/atomic/components/atomic-smart-snippet-collapse-wrapper2.js +2 -2
- package/dist/atomic/components/atomic-smart-snippet-expandable-answer2.js +1 -1
- package/dist/atomic/components/atomic-smart-snippet-feedback-modal2.js +2 -2
- package/dist/atomic/components/atomic-smart-snippet-source2.js +1 -1
- package/dist/atomic/components/atomic-sort-dropdown.js +2 -2
- package/dist/atomic/components/atomic-sort-expression.js +1 -1
- package/dist/atomic/components/atomic-suggestion-renderer2.js +1 -1
- package/dist/atomic/components/atomic-tab-manager.js +1 -1
- package/dist/atomic/components/components/commerce/atomic-product-excerpt/atomic-product-excerpt.js +130 -0
- package/dist/atomic/components/components/commerce/atomic-product-excerpt/atomic-product-excerpt.tw.css.js +3 -0
- package/dist/atomic/components/components/commerce/atomic-product-numeric-field-value/atomic-product-numeric-field-value.js +81 -0
- package/dist/atomic/components/components/commerce/atomic-product-price/atomic-product-price.js +103 -0
- package/dist/atomic/components/components/commerce/atomic-product-price/atomic-product-price.tw.css.js +3 -0
- package/dist/atomic/components/components/commerce/atomic-product-template/atomic-product-template.js +3 -0
- package/dist/atomic/components/components/commerce/index.js +3 -0
- package/dist/atomic/components/components/commerce/lazy-index.js +3 -0
- package/dist/atomic/components/components/common/expandable-text/expandable-text.js +47 -0
- package/dist/atomic/components/facet-date-input.js +3 -3
- package/dist/atomic/components/facet-number-input.js +2 -2
- package/dist/atomic/components/global/environment.js +1 -1
- package/dist/atomic/components/index.js.map +1 -1
- package/dist/atomic/components/tab-button.js +1 -1
- package/dist/atomic/components/tab-popover.js +1 -1
- package/dist/atomic/{p-3817e41f.entry.js → p-07736099.entry.js} +2 -2
- package/dist/atomic/{p-254493bb.entry.js → p-10533f5e.entry.js} +2 -2
- package/dist/atomic/{p-ff601596.entry.js → p-1241378f.entry.js} +2 -2
- package/dist/atomic/{p-fcc01555.entry.js → p-179dd992.entry.js} +2 -2
- package/dist/atomic/{p-9ea0730b.entry.js → p-188a5988.entry.js} +2 -2
- package/dist/atomic/{p-053630b7.entry.js → p-1d8d898e.entry.js} +2 -2
- package/dist/atomic/{p-b7c58d1b.entry.js → p-1e82867d.entry.js} +2 -2
- package/dist/atomic/{p-18a6ee18.entry.js → p-2075d1c2.entry.js} +2 -2
- package/dist/atomic/{p-ef42977c.entry.js → p-24df7eb5.entry.js} +2 -2
- package/dist/atomic/{p-6fafebf4.entry.js → p-2b7bd1a7.entry.js} +2 -2
- package/dist/atomic/{p-16f39309.entry.js → p-2cb0696d.entry.js} +2 -2
- package/dist/atomic/{p-82f73cb7.entry.js → p-34280d19.entry.js} +2 -2
- package/dist/atomic/{p-4600286e.entry.js → p-34f13f68.entry.js} +2 -2
- package/dist/atomic/{p-4780a993.entry.js → p-380e9947.entry.js} +2 -2
- package/dist/atomic/{p-2e5900d5.entry.js → p-3a22931a.entry.js} +2 -2
- package/dist/atomic/{p-fa1c4917.entry.js → p-3b4f8370.entry.js} +2 -2
- package/dist/atomic/p-3f50439d.entry.js +2 -0
- package/dist/atomic/{p-8f10d6b1.entry.js → p-451abd79.entry.js} +2 -2
- package/dist/atomic/{p-0457e70e.entry.js → p-4cb4dce2.entry.js} +2 -2
- package/dist/atomic/{p-7e477e6a.entry.js → p-4cf83057.entry.js} +2 -2
- package/dist/atomic/{p-f37215a3.entry.js → p-4f71433c.entry.js} +2 -2
- package/dist/atomic/{p-0dbfef2a.entry.js → p-5231d47e.entry.js} +2 -2
- package/dist/atomic/{p-1bd29155.entry.js → p-547ec848.entry.js} +2 -2
- package/dist/atomic/{p-e67e6f25.entry.js → p-558b561c.entry.js} +2 -2
- package/dist/atomic/{p-312ea507.entry.js → p-56f79dbc.entry.js} +2 -2
- package/dist/atomic/{p-90e7ab82.entry.js → p-598355e2.entry.js} +2 -2
- package/dist/atomic/{p-0caed756.entry.js → p-5f5f3c02.entry.js} +2 -2
- package/dist/atomic/{p-413a3e9a.entry.js → p-5fc9f751.entry.js} +2 -2
- package/dist/atomic/{p-d376a122.entry.js → p-60677298.entry.js} +2 -2
- package/dist/atomic/p-745322ff.entry.js +2 -0
- package/dist/atomic/p-745322ff.entry.js.map +1 -0
- package/dist/atomic/{p-0d272101.entry.js → p-75927180.entry.js} +2 -2
- package/dist/atomic/{p-619fdbad.entry.js → p-78798600.entry.js} +2 -2
- package/dist/atomic/{p-60c221c4.entry.js → p-7abdbad3.entry.js} +2 -2
- package/dist/atomic/{p-ab5284ef.entry.js → p-7c2465db.entry.js} +2 -2
- package/dist/atomic/{p-2553b81a.entry.js → p-7da7091f.entry.js} +2 -2
- package/dist/atomic/{p-fae8b0b6.entry.js → p-7e316f12.entry.js} +2 -2
- package/dist/atomic/{p-32d1d80d.entry.js → p-7e979900.entry.js} +2 -2
- package/dist/atomic/{p-f662801b.entry.js → p-81f9321f.entry.js} +2 -2
- package/dist/atomic/{p-5daf65a2.entry.js → p-8664e49f.entry.js} +2 -2
- package/dist/atomic/{p-32768595.js → p-866a36bb.js} +2 -2
- package/dist/atomic/{p-1868dae3.entry.js → p-87306667.entry.js} +2 -2
- package/dist/atomic/p-88e3af33.entry.js +2 -0
- package/dist/atomic/{p-14e07101.entry.js → p-8b19b5c1.entry.js} +2 -2
- package/dist/atomic/{p-b25c9315.entry.js → p-8c07fe23.entry.js} +2 -2
- package/dist/atomic/{p-40068301.entry.js → p-933fb81c.entry.js} +2 -2
- package/dist/atomic/p-9619c25e.entry.js +2 -0
- package/dist/atomic/{p-0ed3432e.entry.js.map → p-9619c25e.entry.js.map} +1 -1
- package/dist/atomic/{p-c9594881.entry.js → p-9f349dea.entry.js} +2 -2
- package/dist/atomic/{p-33883a60.entry.js → p-a21b8355.entry.js} +2 -2
- package/dist/atomic/{p-014d7074.entry.js → p-a6f59ee7.entry.js} +2 -2
- package/dist/atomic/p-a7a7573a.js +2 -0
- package/dist/atomic/p-a7a7573a.js.map +1 -0
- package/dist/atomic/{p-ef6daa3c.entry.js → p-a9e90e8d.entry.js} +2 -2
- package/dist/atomic/p-ac93a338.entry.js +2 -0
- package/dist/atomic/p-b1c25636.entry.js +2 -0
- package/dist/atomic/p-b1c25636.entry.js.map +1 -0
- package/dist/atomic/{p-3e4997cb.entry.js → p-b369d9f3.entry.js} +2 -2
- package/dist/atomic/{p-0051c09e.entry.js → p-b7df58a2.entry.js} +2 -2
- package/dist/atomic/{p-c7aea960.entry.js → p-b8884511.entry.js} +2 -2
- package/dist/atomic/{p-d67f0c7d.entry.js → p-b9d90a15.entry.js} +2 -2
- package/dist/atomic/{p-b9cdeb9c.entry.js → p-c52ea307.entry.js} +2 -2
- package/dist/atomic/{p-6757d5c8.entry.js → p-c6d607ef.entry.js} +2 -2
- package/dist/atomic/{p-5cae2acd.entry.js → p-c7c8a40b.entry.js} +2 -2
- package/dist/atomic/{p-6c10c08c.entry.js → p-c8d47706.entry.js} +2 -2
- package/dist/atomic/{p-c7e06c91.entry.js → p-c8f4a164.entry.js} +2 -2
- package/dist/atomic/{p-7151eb35.entry.js → p-c91d1951.entry.js} +2 -2
- package/dist/atomic/{p-d2d1bbbc.entry.js → p-c953ea9f.entry.js} +2 -2
- package/dist/atomic/{p-86f61caa.entry.js → p-c997c2ad.entry.js} +2 -2
- package/dist/atomic/{p-57377cc0.entry.js → p-cb07fb1a.entry.js} +2 -2
- package/dist/atomic/{p-55c12e5f.entry.js → p-cc4a90fc.entry.js} +2 -2
- package/dist/atomic/{p-f57dd2a9.entry.js → p-ce716a3a.entry.js} +2 -2
- package/dist/atomic/p-d441cf69.entry.js +2 -0
- package/dist/atomic/{p-0c604072.entry.js.map → p-d441cf69.entry.js.map} +1 -1
- package/dist/atomic/{p-05f50dc9.entry.js → p-d64c6b59.entry.js} +2 -2
- package/dist/atomic/{p-087ba363.entry.js → p-dad54a83.entry.js} +2 -2
- package/dist/atomic/{p-03c36274.entry.js → p-e0c09699.entry.js} +2 -2
- package/dist/atomic/{p-19b2085d.entry.js → p-e240f215.entry.js} +2 -2
- package/dist/atomic/{p-6a43fe66.entry.js → p-e2765b24.entry.js} +2 -2
- package/dist/atomic/p-e790d557.entry.js +2 -0
- package/dist/atomic/{p-b8584d50.entry.js → p-ea98f3c7.entry.js} +2 -2
- package/dist/atomic/p-efd2bb5f.entry.js +2 -0
- package/dist/atomic/p-f09c6548.entry.js +2 -0
- package/dist/atomic/{p-a44740ec.entry.js.map → p-f09c6548.entry.js.map} +1 -1
- package/dist/atomic/{p-1df62ba9.entry.js → p-f27fba44.entry.js} +2 -2
- package/dist/atomic/p-f389bcba.entry.js +2 -0
- package/dist/atomic/{p-1e971b29.entry.js.map → p-f389bcba.entry.js.map} +1 -1
- package/dist/atomic/{p-23200ea1.entry.js → p-f7830503.entry.js} +2 -2
- package/dist/atomic/{p-a516f15f.entry.js → p-f7e0887c.entry.js} +2 -2
- package/dist/atomic/{p-66fd5541.entry.js → p-fa9454b5.entry.js} +2 -2
- package/dist/atomic/{p-963e508f.entry.js → p-fc68c8b0.entry.js} +2 -2
- package/dist/cjs/_loader.cjs.js +1 -1
- package/dist/cjs/{analytics-config-56ddc132.js → analytics-config-19593b21.js} +2 -2
- package/dist/cjs/{analytics-config-56ddc132.js.map → analytics-config-19593b21.js.map} +1 -1
- package/dist/cjs/atomic-aria-live_2.cjs.entry.js +3 -3
- package/dist/cjs/atomic-category-facet.cjs.entry.js +1 -1
- package/dist/cjs/atomic-citation.cjs.entry.js +1 -1
- package/dist/cjs/atomic-commerce-category-facet_4.cjs.entry.js +4 -4
- package/dist/cjs/atomic-facet-date-input.cjs.entry.js +3 -3
- package/dist/cjs/atomic-facet-manager.cjs.entry.js +1 -1
- package/dist/cjs/atomic-facet-number-input.cjs.entry.js +2 -2
- package/dist/cjs/atomic-facet.cjs.entry.js +1 -1
- package/dist/cjs/atomic-focus-trap_2.cjs.entry.js +2 -2
- 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 +1 -1
- package/dist/cjs/atomic-html.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-edit-toggle.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-facet.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-folded-result-list.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-full-search-button.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-history-toggle.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-interface.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-no-results.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-numeric-facet.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-pager.cjs.entry.js +3 -3
- package/dist/cjs/atomic-insight-query-error.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-refine-modal.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-refine-toggle.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-result-attach-to-case-indicator.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-result-children.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-result-list.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-result-quickview-action.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-result.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-search-box.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-smart-snippet-feedback-modal.cjs.entry.js +2 -2
- package/dist/cjs/atomic-insight-tabs.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-user-actions-session_2.cjs.entry.js +1 -1
- package/dist/cjs/atomic-insight-user-actions-toggle.cjs.entry.js +1 -1
- package/dist/cjs/atomic-ipx-body.cjs.entry.js +2 -2
- package/dist/cjs/atomic-ipx-button.cjs.entry.js +2 -2
- package/dist/cjs/atomic-ipx-embedded.cjs.entry.js +1 -1
- package/dist/cjs/atomic-ipx-modal.cjs.entry.js +2 -2
- package/dist/cjs/atomic-ipx-recs-list.cjs.entry.js +1 -1
- package/dist/cjs/atomic-ipx-refine-modal.cjs.entry.js +1 -1
- package/dist/cjs/atomic-ipx-refine-toggle.cjs.entry.js +1 -1
- package/dist/cjs/atomic-ipx-result-link.cjs.entry.js +1 -1
- package/dist/cjs/atomic-ipx-tabs.cjs.entry.js +1 -1
- package/dist/cjs/atomic-load-more-results.cjs.entry.js +1 -1
- package/dist/cjs/atomic-no-results.cjs.entry.js +1 -1
- package/dist/cjs/atomic-numeric-facet.cjs.entry.js +1 -1
- package/dist/cjs/atomic-pager.cjs.entry.js +3 -3
- package/dist/cjs/atomic-product-description.cjs.entry.js +32 -4
- package/dist/cjs/atomic-product-description.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-product-link.cjs.entry.js +18 -5
- package/dist/cjs/atomic-product-link.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-product-rating.cjs.entry.js +1 -2
- package/dist/cjs/atomic-product-rating.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-query-error.cjs.entry.js +1 -1
- package/dist/cjs/atomic-query-summary.cjs.entry.js +1 -1
- package/dist/cjs/atomic-quickview-modal.cjs.entry.js +1 -1
- package/dist/cjs/atomic-quickview.cjs.entry.js +1 -1
- package/dist/cjs/{atomic-rating-6d5a98ec.js → atomic-rating-a37a1793.js} +9 -3
- package/dist/cjs/atomic-rating-a37a1793.js.map +1 -0
- package/dist/cjs/atomic-rating-facet.cjs.entry.js +1 -2
- package/dist/cjs/atomic-rating-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-rating-range-facet.cjs.entry.js +1 -2
- package/dist/cjs/atomic-rating-range-facet.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-recs-error.cjs.entry.js +1 -1
- package/dist/cjs/atomic-recs-interface.cjs.entry.js +1 -1
- package/dist/cjs/atomic-recs-list.cjs.entry.js +1 -1
- package/dist/cjs/atomic-refine-modal.cjs.entry.js +1 -1
- package/dist/cjs/atomic-refine-toggle.cjs.entry.js +1 -1
- package/dist/cjs/atomic-result-children.cjs.entry.js +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-result-placeholder_8.cjs.entry.js +3 -3
- package/dist/cjs/atomic-result-rating.cjs.entry.js +1 -2
- package/dist/cjs/atomic-result-rating.cjs.entry.js.map +1 -1
- package/dist/cjs/atomic-results-per-page.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 +4 -4
- package/dist/cjs/atomic-search-interface.cjs.entry.js +1 -1
- package/dist/cjs/atomic-smart-snippet-answer_2.cjs.entry.js +2 -2
- package/dist/cjs/atomic-smart-snippet-collapse-wrapper_2.cjs.entry.js +3 -3
- package/dist/cjs/atomic-smart-snippet-feedback-modal.cjs.entry.js +2 -2
- 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-suggestion-renderer.cjs.entry.js +1 -1
- package/dist/cjs/atomic-tab-bar_2.cjs.entry.js +1 -1
- package/dist/cjs/atomic-tab-button.cjs.entry.js +1 -1
- package/dist/cjs/atomic-tab-manager.cjs.entry.js +1 -1
- package/dist/cjs/atomic.cjs.js +1 -1
- package/dist/cjs/index-757bc886.js +0 -12
- package/dist/cjs/version.cjs.js +2 -2
- package/dist/esm/_loader.js +1 -1
- package/dist/esm/{analytics-config-4e83a998.js → analytics-config-696a4e82.js} +2 -2
- package/dist/esm/{analytics-config-4e83a998.js.map → analytics-config-696a4e82.js.map} +1 -1
- package/dist/esm/atomic-aria-live_2.entry.js +3 -3
- package/dist/esm/atomic-category-facet.entry.js +1 -1
- package/dist/esm/atomic-citation.entry.js +1 -1
- package/dist/esm/atomic-commerce-category-facet_4.entry.js +4 -4
- package/dist/esm/atomic-facet-date-input.entry.js +3 -3
- package/dist/esm/atomic-facet-manager.entry.js +1 -1
- package/dist/esm/atomic-facet-number-input.entry.js +2 -2
- package/dist/esm/atomic-facet.entry.js +1 -1
- package/dist/esm/atomic-focus-trap_2.entry.js +2 -2
- 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 +1 -1
- package/dist/esm/atomic-html.entry.js +1 -1
- package/dist/esm/atomic-insight-edit-toggle.entry.js +1 -1
- package/dist/esm/atomic-insight-facet.entry.js +1 -1
- package/dist/esm/atomic-insight-folded-result-list.entry.js +1 -1
- package/dist/esm/atomic-insight-full-search-button.entry.js +1 -1
- package/dist/esm/atomic-insight-history-toggle.entry.js +1 -1
- package/dist/esm/atomic-insight-interface.entry.js +1 -1
- package/dist/esm/atomic-insight-no-results.entry.js +1 -1
- package/dist/esm/atomic-insight-numeric-facet.entry.js +1 -1
- package/dist/esm/atomic-insight-pager.entry.js +3 -3
- package/dist/esm/atomic-insight-query-error.entry.js +1 -1
- package/dist/esm/atomic-insight-refine-modal.entry.js +2 -2
- package/dist/esm/atomic-insight-refine-toggle.entry.js +1 -1
- package/dist/esm/atomic-insight-result-attach-to-case-indicator.entry.js +1 -1
- package/dist/esm/atomic-insight-result-children.entry.js +1 -1
- package/dist/esm/atomic-insight-result-list.entry.js +1 -1
- package/dist/esm/atomic-insight-result-quickview-action.entry.js +1 -1
- package/dist/esm/atomic-insight-result.entry.js +1 -1
- package/dist/esm/atomic-insight-search-box.entry.js +2 -2
- package/dist/esm/atomic-insight-smart-snippet-feedback-modal.entry.js +2 -2
- package/dist/esm/atomic-insight-tabs.entry.js +1 -1
- package/dist/esm/atomic-insight-user-actions-session_2.entry.js +1 -1
- package/dist/esm/atomic-insight-user-actions-toggle.entry.js +1 -1
- package/dist/esm/atomic-ipx-body.entry.js +2 -2
- package/dist/esm/atomic-ipx-button.entry.js +2 -2
- package/dist/esm/atomic-ipx-embedded.entry.js +1 -1
- package/dist/esm/atomic-ipx-modal.entry.js +2 -2
- package/dist/esm/atomic-ipx-recs-list.entry.js +1 -1
- package/dist/esm/atomic-ipx-refine-modal.entry.js +1 -1
- package/dist/esm/atomic-ipx-refine-toggle.entry.js +1 -1
- package/dist/esm/atomic-ipx-result-link.entry.js +1 -1
- package/dist/esm/atomic-ipx-tabs.entry.js +1 -1
- package/dist/esm/atomic-load-more-results.entry.js +1 -1
- package/dist/esm/atomic-no-results.entry.js +1 -1
- package/dist/esm/atomic-numeric-facet.entry.js +1 -1
- package/dist/esm/atomic-pager.entry.js +3 -3
- package/dist/esm/atomic-product-description.entry.js +32 -4
- package/dist/esm/atomic-product-description.entry.js.map +1 -1
- package/dist/esm/atomic-product-link.entry.js +17 -4
- package/dist/esm/atomic-product-link.entry.js.map +1 -1
- package/dist/esm/atomic-product-rating.entry.js +1 -2
- package/dist/esm/atomic-product-rating.entry.js.map +1 -1
- package/dist/esm/atomic-query-error.entry.js +1 -1
- package/dist/esm/atomic-query-summary.entry.js +1 -1
- package/dist/esm/atomic-quickview-modal.entry.js +1 -1
- package/dist/esm/atomic-quickview.entry.js +1 -1
- package/dist/esm/{atomic-rating-623f80fb.js → atomic-rating-cb537bf2.js} +8 -2
- package/dist/esm/atomic-rating-cb537bf2.js.map +1 -0
- package/dist/esm/atomic-rating-facet.entry.js +1 -2
- package/dist/esm/atomic-rating-facet.entry.js.map +1 -1
- package/dist/esm/atomic-rating-range-facet.entry.js +1 -2
- package/dist/esm/atomic-rating-range-facet.entry.js.map +1 -1
- package/dist/esm/atomic-recs-error.entry.js +1 -1
- package/dist/esm/atomic-recs-interface.entry.js +1 -1
- package/dist/esm/atomic-recs-list.entry.js +1 -1
- package/dist/esm/atomic-refine-modal.entry.js +1 -1
- package/dist/esm/atomic-refine-toggle.entry.js +1 -1
- package/dist/esm/atomic-result-children.entry.js +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-result-placeholder_8.entry.js +3 -3
- package/dist/esm/atomic-result-rating.entry.js +1 -2
- package/dist/esm/atomic-result-rating.entry.js.map +1 -1
- package/dist/esm/atomic-results-per-page.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 +4 -4
- package/dist/esm/atomic-search-interface.entry.js +1 -1
- package/dist/esm/atomic-smart-snippet-answer_2.entry.js +2 -2
- package/dist/esm/atomic-smart-snippet-collapse-wrapper_2.entry.js +3 -3
- package/dist/esm/atomic-smart-snippet-feedback-modal.entry.js +2 -2
- package/dist/esm/atomic-sort-dropdown.entry.js +2 -2
- package/dist/esm/atomic-sort-expression.entry.js +1 -1
- package/dist/esm/atomic-suggestion-renderer.entry.js +1 -1
- package/dist/esm/atomic-tab-bar_2.entry.js +1 -1
- package/dist/esm/atomic-tab-button.entry.js +1 -1
- package/dist/esm/atomic-tab-manager.entry.js +1 -1
- package/dist/esm/atomic.js +1 -1
- package/dist/esm/index-3f35faca.js +0 -12
- package/dist/esm/version.js +2 -2
- package/dist/types/components/commerce/atomic-product-excerpt/atomic-product-excerpt.d.ts +20 -10
- package/dist/types/components/commerce/atomic-product-numeric-field-value/atomic-product-numeric-field-value.d.ts +18 -13
- package/dist/types/components/commerce/atomic-product-price/atomic-product-price.d.ts +15 -8
- package/dist/types/components/commerce/atomic-product-template/atomic-product-template.d.ts +3 -0
- package/dist/types/components/commerce/index.d.ts +3 -0
- package/dist/types/components/common/expandable-text/expandable-text.d.ts +2 -0
- package/dist/types/components.d.ts +0 -103
- package/docs/atomic-docs.json +1 -166
- package/package.json +5 -5
- package/dist/atomic/components/atomic-product-excerpt.d.ts +0 -11
- package/dist/atomic/components/atomic-product-excerpt.js +0 -113
- package/dist/atomic/components/atomic-product-excerpt.js.map +0 -1
- package/dist/atomic/components/atomic-product-numeric-field-value.d.ts +0 -11
- package/dist/atomic/components/atomic-product-numeric-field-value.js +0 -90
- package/dist/atomic/components/atomic-product-numeric-field-value.js.map +0 -1
- package/dist/atomic/components/atomic-product-price.d.ts +0 -11
- package/dist/atomic/components/atomic-product-price.js +0 -98
- package/dist/atomic/components/atomic-product-price.js.map +0 -1
- package/dist/atomic/components/error.js +0 -10
- package/dist/atomic/components/error.js.map +0 -1
- package/dist/atomic/components/product-utils.js +0 -33
- package/dist/atomic/components/product-utils.js.map +0 -1
- package/dist/atomic/components/stencil-expandable-text.js +0 -36
- package/dist/atomic/components/stencil-expandable-text.js.map +0 -1
- package/dist/atomic/p-009af1a0.entry.js +0 -2
- package/dist/atomic/p-034a21aa.js +0 -2
- package/dist/atomic/p-034a21aa.js.map +0 -1
- package/dist/atomic/p-0c604072.entry.js +0 -2
- package/dist/atomic/p-0ed3432e.entry.js +0 -2
- package/dist/atomic/p-0ed66827.entry.js +0 -2
- package/dist/atomic/p-0ed66827.entry.js.map +0 -1
- package/dist/atomic/p-1e971b29.entry.js +0 -2
- package/dist/atomic/p-2bdfa055.js +0 -2
- package/dist/atomic/p-2bdfa055.js.map +0 -1
- package/dist/atomic/p-2cfcffc7.entry.js +0 -2
- package/dist/atomic/p-3a9ef094.entry.js +0 -2
- package/dist/atomic/p-609451bf.entry.js +0 -2
- package/dist/atomic/p-609451bf.entry.js.map +0 -1
- package/dist/atomic/p-7163256b.js +0 -2
- package/dist/atomic/p-7163256b.js.map +0 -1
- package/dist/atomic/p-7525968c.entry.js +0 -2
- package/dist/atomic/p-7525968c.entry.js.map +0 -1
- package/dist/atomic/p-7deba242.entry.js +0 -2
- package/dist/atomic/p-7deba242.entry.js.map +0 -1
- package/dist/atomic/p-a44740ec.entry.js +0 -2
- package/dist/atomic/p-b1b751a5.js +0 -2
- package/dist/atomic/p-b1b751a5.js.map +0 -1
- package/dist/atomic/p-d4f88be6.entry.js +0 -2
- package/dist/atomic/p-db9fc2f4.entry.js +0 -2
- package/dist/atomic/p-f20b2d62.entry.js +0 -2
- package/dist/atomic/p-f20b2d62.entry.js.map +0 -1
- package/dist/cjs/atomic-product-excerpt.cjs.entry.js +0 -104
- package/dist/cjs/atomic-product-excerpt.cjs.entry.js.map +0 -1
- package/dist/cjs/atomic-product-numeric-field-value.cjs.entry.js +0 -80
- package/dist/cjs/atomic-product-numeric-field-value.cjs.entry.js.map +0 -1
- package/dist/cjs/atomic-product-price.cjs.entry.js +0 -92
- package/dist/cjs/atomic-product-price.cjs.entry.js.map +0 -1
- package/dist/cjs/atomic-rating-6d5a98ec.js.map +0 -1
- package/dist/cjs/error-ad501bd7.js +0 -12
- package/dist/cjs/error-ad501bd7.js.map +0 -1
- package/dist/cjs/product-utils-4bd389b3.js +0 -36
- package/dist/cjs/product-utils-4bd389b3.js.map +0 -1
- package/dist/cjs/stencil-expandable-text-34b8f701.js +0 -38
- package/dist/cjs/stencil-expandable-text-34b8f701.js.map +0 -1
- package/dist/esm/atomic-product-excerpt.entry.js +0 -100
- package/dist/esm/atomic-product-excerpt.entry.js.map +0 -1
- package/dist/esm/atomic-product-numeric-field-value.entry.js +0 -76
- package/dist/esm/atomic-product-numeric-field-value.entry.js.map +0 -1
- package/dist/esm/atomic-product-price.entry.js +0 -88
- package/dist/esm/atomic-product-price.entry.js.map +0 -1
- package/dist/esm/atomic-rating-623f80fb.js.map +0 -1
- package/dist/esm/error-9520e6d0.js +0 -10
- package/dist/esm/error-9520e6d0.js.map +0 -1
- package/dist/esm/product-utils-9dcbe57e.js +0 -33
- package/dist/esm/product-utils-9dcbe57e.js.map +0 -1
- package/dist/esm/stencil-expandable-text-f3d562dc.js +0 -36
- package/dist/esm/stencil-expandable-text-f3d562dc.js.map +0 -1
- /package/dist/atomic/{p-3817e41f.entry.js.map → p-07736099.entry.js.map} +0 -0
- /package/dist/atomic/{p-254493bb.entry.js.map → p-10533f5e.entry.js.map} +0 -0
- /package/dist/atomic/{p-ff601596.entry.js.map → p-1241378f.entry.js.map} +0 -0
- /package/dist/atomic/{p-fcc01555.entry.js.map → p-179dd992.entry.js.map} +0 -0
- /package/dist/atomic/{p-9ea0730b.entry.js.map → p-188a5988.entry.js.map} +0 -0
- /package/dist/atomic/{p-053630b7.entry.js.map → p-1d8d898e.entry.js.map} +0 -0
- /package/dist/atomic/{p-b7c58d1b.entry.js.map → p-1e82867d.entry.js.map} +0 -0
- /package/dist/atomic/{p-18a6ee18.entry.js.map → p-2075d1c2.entry.js.map} +0 -0
- /package/dist/atomic/{p-ef42977c.entry.js.map → p-24df7eb5.entry.js.map} +0 -0
- /package/dist/atomic/{p-6fafebf4.entry.js.map → p-2b7bd1a7.entry.js.map} +0 -0
- /package/dist/atomic/{p-16f39309.entry.js.map → p-2cb0696d.entry.js.map} +0 -0
- /package/dist/atomic/{p-82f73cb7.entry.js.map → p-34280d19.entry.js.map} +0 -0
- /package/dist/atomic/{p-4600286e.entry.js.map → p-34f13f68.entry.js.map} +0 -0
- /package/dist/atomic/{p-4780a993.entry.js.map → p-380e9947.entry.js.map} +0 -0
- /package/dist/atomic/{p-2e5900d5.entry.js.map → p-3a22931a.entry.js.map} +0 -0
- /package/dist/atomic/{p-fa1c4917.entry.js.map → p-3b4f8370.entry.js.map} +0 -0
- /package/dist/atomic/{p-3a9ef094.entry.js.map → p-3f50439d.entry.js.map} +0 -0
- /package/dist/atomic/{p-8f10d6b1.entry.js.map → p-451abd79.entry.js.map} +0 -0
- /package/dist/atomic/{p-0457e70e.entry.js.map → p-4cb4dce2.entry.js.map} +0 -0
- /package/dist/atomic/{p-7e477e6a.entry.js.map → p-4cf83057.entry.js.map} +0 -0
- /package/dist/atomic/{p-f37215a3.entry.js.map → p-4f71433c.entry.js.map} +0 -0
- /package/dist/atomic/{p-0dbfef2a.entry.js.map → p-5231d47e.entry.js.map} +0 -0
- /package/dist/atomic/{p-1bd29155.entry.js.map → p-547ec848.entry.js.map} +0 -0
- /package/dist/atomic/{p-e67e6f25.entry.js.map → p-558b561c.entry.js.map} +0 -0
- /package/dist/atomic/{p-312ea507.entry.js.map → p-56f79dbc.entry.js.map} +0 -0
- /package/dist/atomic/{p-90e7ab82.entry.js.map → p-598355e2.entry.js.map} +0 -0
- /package/dist/atomic/{p-0caed756.entry.js.map → p-5f5f3c02.entry.js.map} +0 -0
- /package/dist/atomic/{p-413a3e9a.entry.js.map → p-5fc9f751.entry.js.map} +0 -0
- /package/dist/atomic/{p-d376a122.entry.js.map → p-60677298.entry.js.map} +0 -0
- /package/dist/atomic/{p-0d272101.entry.js.map → p-75927180.entry.js.map} +0 -0
- /package/dist/atomic/{p-619fdbad.entry.js.map → p-78798600.entry.js.map} +0 -0
- /package/dist/atomic/{p-60c221c4.entry.js.map → p-7abdbad3.entry.js.map} +0 -0
- /package/dist/atomic/{p-ab5284ef.entry.js.map → p-7c2465db.entry.js.map} +0 -0
- /package/dist/atomic/{p-2553b81a.entry.js.map → p-7da7091f.entry.js.map} +0 -0
- /package/dist/atomic/{p-fae8b0b6.entry.js.map → p-7e316f12.entry.js.map} +0 -0
- /package/dist/atomic/{p-32d1d80d.entry.js.map → p-7e979900.entry.js.map} +0 -0
- /package/dist/atomic/{p-f662801b.entry.js.map → p-81f9321f.entry.js.map} +0 -0
- /package/dist/atomic/{p-5daf65a2.entry.js.map → p-8664e49f.entry.js.map} +0 -0
- /package/dist/atomic/{p-32768595.js.map → p-866a36bb.js.map} +0 -0
- /package/dist/atomic/{p-1868dae3.entry.js.map → p-87306667.entry.js.map} +0 -0
- /package/dist/atomic/{p-2cfcffc7.entry.js.map → p-88e3af33.entry.js.map} +0 -0
- /package/dist/atomic/{p-14e07101.entry.js.map → p-8b19b5c1.entry.js.map} +0 -0
- /package/dist/atomic/{p-b25c9315.entry.js.map → p-8c07fe23.entry.js.map} +0 -0
- /package/dist/atomic/{p-40068301.entry.js.map → p-933fb81c.entry.js.map} +0 -0
- /package/dist/atomic/{p-c9594881.entry.js.map → p-9f349dea.entry.js.map} +0 -0
- /package/dist/atomic/{p-33883a60.entry.js.map → p-a21b8355.entry.js.map} +0 -0
- /package/dist/atomic/{p-014d7074.entry.js.map → p-a6f59ee7.entry.js.map} +0 -0
- /package/dist/atomic/{p-ef6daa3c.entry.js.map → p-a9e90e8d.entry.js.map} +0 -0
- /package/dist/atomic/{p-db9fc2f4.entry.js.map → p-ac93a338.entry.js.map} +0 -0
- /package/dist/atomic/{p-3e4997cb.entry.js.map → p-b369d9f3.entry.js.map} +0 -0
- /package/dist/atomic/{p-0051c09e.entry.js.map → p-b7df58a2.entry.js.map} +0 -0
- /package/dist/atomic/{p-c7aea960.entry.js.map → p-b8884511.entry.js.map} +0 -0
- /package/dist/atomic/{p-d67f0c7d.entry.js.map → p-b9d90a15.entry.js.map} +0 -0
- /package/dist/atomic/{p-b9cdeb9c.entry.js.map → p-c52ea307.entry.js.map} +0 -0
- /package/dist/atomic/{p-6757d5c8.entry.js.map → p-c6d607ef.entry.js.map} +0 -0
- /package/dist/atomic/{p-5cae2acd.entry.js.map → p-c7c8a40b.entry.js.map} +0 -0
- /package/dist/atomic/{p-6c10c08c.entry.js.map → p-c8d47706.entry.js.map} +0 -0
- /package/dist/atomic/{p-c7e06c91.entry.js.map → p-c8f4a164.entry.js.map} +0 -0
- /package/dist/atomic/{p-7151eb35.entry.js.map → p-c91d1951.entry.js.map} +0 -0
- /package/dist/atomic/{p-d2d1bbbc.entry.js.map → p-c953ea9f.entry.js.map} +0 -0
- /package/dist/atomic/{p-86f61caa.entry.js.map → p-c997c2ad.entry.js.map} +0 -0
- /package/dist/atomic/{p-57377cc0.entry.js.map → p-cb07fb1a.entry.js.map} +0 -0
- /package/dist/atomic/{p-55c12e5f.entry.js.map → p-cc4a90fc.entry.js.map} +0 -0
- /package/dist/atomic/{p-f57dd2a9.entry.js.map → p-ce716a3a.entry.js.map} +0 -0
- /package/dist/atomic/{p-05f50dc9.entry.js.map → p-d64c6b59.entry.js.map} +0 -0
- /package/dist/atomic/{p-087ba363.entry.js.map → p-dad54a83.entry.js.map} +0 -0
- /package/dist/atomic/{p-03c36274.entry.js.map → p-e0c09699.entry.js.map} +0 -0
- /package/dist/atomic/{p-19b2085d.entry.js.map → p-e240f215.entry.js.map} +0 -0
- /package/dist/atomic/{p-6a43fe66.entry.js.map → p-e2765b24.entry.js.map} +0 -0
- /package/dist/atomic/{p-d4f88be6.entry.js.map → p-e790d557.entry.js.map} +0 -0
- /package/dist/atomic/{p-b8584d50.entry.js.map → p-ea98f3c7.entry.js.map} +0 -0
- /package/dist/atomic/{p-009af1a0.entry.js.map → p-efd2bb5f.entry.js.map} +0 -0
- /package/dist/atomic/{p-1df62ba9.entry.js.map → p-f27fba44.entry.js.map} +0 -0
- /package/dist/atomic/{p-23200ea1.entry.js.map → p-f7830503.entry.js.map} +0 -0
- /package/dist/atomic/{p-a516f15f.entry.js.map → p-f7e0887c.entry.js.map} +0 -0
- /package/dist/atomic/{p-66fd5541.entry.js.map → p-fa9454b5.entry.js.map} +0 -0
- /package/dist/atomic/{p-963e508f.entry.js.map → p-fc68c8b0.entry.js.map} +0 -0
|
@@ -117,8 +117,8 @@ const AtomicSortDropdown$1 = /*@__PURE__*/ proxyCustomElement(class AtomicSortDr
|
|
|
117
117
|
const { hasError, hasResults, firstSearchExecuted } = this.searchStatusState;
|
|
118
118
|
const { bindings: { i18n }, id, } = this;
|
|
119
119
|
return [
|
|
120
|
-
h(SortGuard, { key: '
|
|
121
|
-
h("slot", { key: '
|
|
120
|
+
h(SortGuard, { key: 'c4710486ab41fc6759c07d5850c8e83bb9a37160', firstSearchExecuted: firstSearchExecuted, hasError: hasError, hasResults: hasResults }, h(SortContainer, { key: '653c93dbd9d5b3535f8ddb808f4cdfba0026613c' }, h(SortLabel, { key: 'a9c6c2a860400c3f6c07eda8be3a34a2469bec71', i18n: i18n, id: id }), h(SortSelect, { key: '8f4826457092ffb87bc9292a9d8276b232f3d99b', i18n: i18n, id: id, onSelect: (evt) => this.select(evt) }, this.options.map(({ label, criteria, expression }) => (h(SortOption, { i18n: i18n, label: label, selected: this.sort.isSortedBy(criteria), value: expression })))))),
|
|
121
|
+
h("slot", { key: 'd36b41c41973b6fda29d7ba6b0ec3c1eacde7224' }),
|
|
122
122
|
];
|
|
123
123
|
}
|
|
124
124
|
get host() { return this; }
|
|
@@ -47,7 +47,7 @@ const AtomicSortExpression$1 = /*@__PURE__*/ proxyCustomElement(class AtomicSort
|
|
|
47
47
|
const dropdownComponent = 'atomic-sort-dropdown';
|
|
48
48
|
if (!this.host.closest(dropdownComponent)) {
|
|
49
49
|
const error = new Error(`The "${this.host.nodeName.toLowerCase()}" component has to be used inside an ${dropdownComponent} element.`);
|
|
50
|
-
return (h("atomic-component-error", { key: '
|
|
50
|
+
return (h("atomic-component-error", { key: '278d83f4f6b5d95041fe199f0a911e360eb5823c', element: this.host, error: error }));
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
get host() { return this; }
|
|
@@ -73,7 +73,7 @@ const AtomicSuggestionRenderer = /*@__PURE__*/ proxyCustomElement(class AtomicSu
|
|
|
73
73
|
}
|
|
74
74
|
render() {
|
|
75
75
|
const isButton = !!(this.suggestion.onSelect || this.suggestion.query);
|
|
76
|
-
return (h(Host, { key: '
|
|
76
|
+
return (h(Host, { key: '285092df55387853ab1c4ae7b855329243e0f6e5', class: "contents" }, isButton ? (h("button", { id: this.id, key: this.suggestion.key, part: this.parts, class: this.classes, onMouseDown: (e) => e.preventDefault(), onClick: (e) => this.onClick?.(e), onMouseOver: (e) => this.onMouseOver?.(e), "data-query": this.suggestion.query, "aria-label": this.ariaLabel(isButton), ref: (el) => {
|
|
77
77
|
if (!el) {
|
|
78
78
|
return;
|
|
79
79
|
}
|
|
@@ -59,7 +59,7 @@ const AtomicTabManager$1 = /*@__PURE__*/ proxyCustomElement(class AtomicTabManag
|
|
|
59
59
|
});
|
|
60
60
|
}
|
|
61
61
|
render() {
|
|
62
|
-
return (h(Host, { key: '
|
|
62
|
+
return (h(Host, { key: '51deeb9f56009f83954ab00c955065dcb740e319' }, h("atomic-tab-bar", { key: '7e637249b5b4db12f3a81f777e9fcb6cab66210d' }, h("div", { key: 'd19cc7766d8b1c5123bcc2cbb3d5482e541e63d8', 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) => (h("atomic-tab-button", { active: this.tabManagerState.activeTab === tab.name, label: this.bindings.i18n.t(tab.label, {
|
|
63
63
|
defaultValue: tab.label,
|
|
64
64
|
}), select: () => {
|
|
65
65
|
if (!tab.tabController.state.isActive) {
|
package/dist/atomic/components/components/commerce/atomic-product-excerpt/atomic-product-excerpt.js
ADDED
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { Schema, StringValue } from '@coveo/bueno';
|
|
8
|
+
import { html, LitElement, nothing, unsafeCSS } from 'lit';
|
|
9
|
+
import { customElement, property, state } from 'lit/decorators.js';
|
|
10
|
+
import { createRef } from 'lit/directives/ref.js';
|
|
11
|
+
import { booleanConverter } from "../../../converters/boolean-converter";
|
|
12
|
+
import { bindingGuard } from "../../../decorators/binding-guard";
|
|
13
|
+
import { bindings } from "../../../decorators/bindings";
|
|
14
|
+
import { createProductContextController } from "../../../decorators/commerce/product-template-decorators";
|
|
15
|
+
import { errorGuard } from "../../../decorators/error-guard";
|
|
16
|
+
import { injectStylesForNoShadowDOM } from "../../../decorators/inject-styles-for-no-shadow-dom";
|
|
17
|
+
import { withTailwindStyles } from "../../../decorators/with-tailwind-styles";
|
|
18
|
+
import { renderExpandableText, } from '../../common/expandable-text/expandable-text';
|
|
19
|
+
import styles from './atomic-product-excerpt.tw.css';
|
|
20
|
+
/**
|
|
21
|
+
* The `atomic-product-excerpt` component renders the excerpt of a product.
|
|
22
|
+
*
|
|
23
|
+
* @part expandable-text - The part that contains the product excerpt text.
|
|
24
|
+
* @alpha
|
|
25
|
+
*/
|
|
26
|
+
let AtomicProductExcerpt = class AtomicProductExcerpt extends LitElement {
|
|
27
|
+
initialize() { }
|
|
28
|
+
constructor() {
|
|
29
|
+
super();
|
|
30
|
+
this.productController = createProductContextController(this);
|
|
31
|
+
this.isExpanded = false;
|
|
32
|
+
this.isTruncated = false;
|
|
33
|
+
this.excerptRef = createRef();
|
|
34
|
+
/**
|
|
35
|
+
* The number of lines after which the product excerpt should be truncated. A value of "none" will disable truncation.
|
|
36
|
+
*/
|
|
37
|
+
this.truncateAfter = '2';
|
|
38
|
+
/**
|
|
39
|
+
* Whether the excerpt should be collapsible after being expanded.
|
|
40
|
+
*/
|
|
41
|
+
this.isCollapsible = false;
|
|
42
|
+
this.resizeObserver = new ResizeObserver(() => {
|
|
43
|
+
if (this.excerptRef.value) {
|
|
44
|
+
this.isTruncated =
|
|
45
|
+
this.excerptRef.value.scrollHeight >
|
|
46
|
+
this.excerptRef.value.clientHeight;
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
validateProps() {
|
|
51
|
+
new Schema({
|
|
52
|
+
truncateAfter: new StringValue({
|
|
53
|
+
constrainTo: ['none', '1', '2', '3', '4'],
|
|
54
|
+
}),
|
|
55
|
+
}).validate({
|
|
56
|
+
truncateAfter: this.truncateAfter,
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
updated(changedProperties) {
|
|
60
|
+
super.updated(changedProperties);
|
|
61
|
+
if (changedProperties.has('truncateAfter')) {
|
|
62
|
+
this.validateProps();
|
|
63
|
+
}
|
|
64
|
+
if (this.excerptRef.value) {
|
|
65
|
+
this.resizeObserver.observe(this.excerptRef.value);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
onToggleExpand(e) {
|
|
69
|
+
if (e) {
|
|
70
|
+
e.stopPropagation();
|
|
71
|
+
}
|
|
72
|
+
this.isExpanded = !this.isExpanded;
|
|
73
|
+
}
|
|
74
|
+
disconnectedCallback() {
|
|
75
|
+
super.disconnectedCallback();
|
|
76
|
+
this.resizeObserver.disconnect();
|
|
77
|
+
}
|
|
78
|
+
get product() {
|
|
79
|
+
return this.productController.item;
|
|
80
|
+
}
|
|
81
|
+
render() {
|
|
82
|
+
const productExcerpt = this.product?.excerpt ?? null;
|
|
83
|
+
if (!productExcerpt) {
|
|
84
|
+
return html `${nothing}`;
|
|
85
|
+
}
|
|
86
|
+
return html `${renderExpandableText({
|
|
87
|
+
props: {
|
|
88
|
+
isExpanded: this.isExpanded,
|
|
89
|
+
isTruncated: this.isTruncated,
|
|
90
|
+
truncateAfter: this.truncateAfter,
|
|
91
|
+
onToggleExpand: (e) => this.onToggleExpand(e),
|
|
92
|
+
showMoreLabel: this.bindings.i18n.t('show-more'),
|
|
93
|
+
showLessLabel: this.bindings.i18n.t('show-less'),
|
|
94
|
+
isCollapsible: this.isCollapsible,
|
|
95
|
+
textRef: this.excerptRef,
|
|
96
|
+
},
|
|
97
|
+
})(html `<atomic-product-text field="excerpt"></atomic-product-text>`)}`;
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
AtomicProductExcerpt.styles = unsafeCSS(styles);
|
|
101
|
+
__decorate([
|
|
102
|
+
state()
|
|
103
|
+
], AtomicProductExcerpt.prototype, "bindings", void 0);
|
|
104
|
+
__decorate([
|
|
105
|
+
state()
|
|
106
|
+
], AtomicProductExcerpt.prototype, "isExpanded", void 0);
|
|
107
|
+
__decorate([
|
|
108
|
+
state()
|
|
109
|
+
], AtomicProductExcerpt.prototype, "isTruncated", void 0);
|
|
110
|
+
__decorate([
|
|
111
|
+
property({ type: String, attribute: 'truncate-after' })
|
|
112
|
+
], AtomicProductExcerpt.prototype, "truncateAfter", void 0);
|
|
113
|
+
__decorate([
|
|
114
|
+
property({
|
|
115
|
+
type: Boolean,
|
|
116
|
+
attribute: 'is-collapsible',
|
|
117
|
+
converter: booleanConverter,
|
|
118
|
+
})
|
|
119
|
+
], AtomicProductExcerpt.prototype, "isCollapsible", void 0);
|
|
120
|
+
__decorate([
|
|
121
|
+
bindingGuard(),
|
|
122
|
+
errorGuard()
|
|
123
|
+
], AtomicProductExcerpt.prototype, "render", null);
|
|
124
|
+
AtomicProductExcerpt = __decorate([
|
|
125
|
+
customElement('atomic-product-excerpt'),
|
|
126
|
+
bindings(),
|
|
127
|
+
injectStylesForNoShadowDOM,
|
|
128
|
+
withTailwindStyles
|
|
129
|
+
], AtomicProductExcerpt);
|
|
130
|
+
export { AtomicProductExcerpt };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const css = `/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */
|
|
2
|
+
.expandable-text{line-height:var(--line-height)}.min-lines-1{min-height:calc(var(--line-height)*1)}.min-lines-2{min-height:calc(var(--line-height)*2)}.min-lines-3{min-height:calc(var(--line-height)*3)}.min-lines-4{min-height:calc(var(--line-height)*4)}`;
|
|
3
|
+
export default [css];
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { html, LitElement } from 'lit';
|
|
8
|
+
import { customElement, property, state } from 'lit/decorators.js';
|
|
9
|
+
import { when } from 'lit/directives/when.js';
|
|
10
|
+
import { bindingGuard } from "../../../decorators/binding-guard.js";
|
|
11
|
+
import { bindings } from "../../../decorators/bindings.js";
|
|
12
|
+
import { createProductContextController } from "../../../decorators/commerce/product-template-decorators.js";
|
|
13
|
+
import { errorGuard } from "../../../decorators/error-guard.js";
|
|
14
|
+
import { withTailwindStyles } from "../../../decorators/with-tailwind-styles.js";
|
|
15
|
+
import { defaultNumberFormatter, } from '../../common/formats/format-common.js';
|
|
16
|
+
import { parseValue } from '../product-template-component-utils/product-utils.js';
|
|
17
|
+
/**
|
|
18
|
+
* The `atomic-product-numeric-field-value` component renders the value of a number product field.
|
|
19
|
+
*
|
|
20
|
+
* The number can be formatted by adding a `atomic-format-number`, `atomic-format-currency` or `atomic-format-unit` component into this component.
|
|
21
|
+
* @alpha
|
|
22
|
+
*/
|
|
23
|
+
let AtomicProductNumericFieldValue = class AtomicProductNumericFieldValue extends LitElement {
|
|
24
|
+
constructor() {
|
|
25
|
+
super(...arguments);
|
|
26
|
+
this.productController = createProductContextController(this);
|
|
27
|
+
this.formatter = defaultNumberFormatter;
|
|
28
|
+
this.setFormat = (event) => {
|
|
29
|
+
const customEvent = event;
|
|
30
|
+
customEvent.preventDefault();
|
|
31
|
+
customEvent.stopPropagation();
|
|
32
|
+
this.formatter = customEvent.detail;
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
createRenderRoot() {
|
|
36
|
+
return this;
|
|
37
|
+
}
|
|
38
|
+
initialize() {
|
|
39
|
+
this.addEventListener('atomic/numberFormat', this.setFormat);
|
|
40
|
+
}
|
|
41
|
+
disconnectedCallback() {
|
|
42
|
+
super.disconnectedCallback();
|
|
43
|
+
this.removeEventListener('atomic/numberFormat', this.setFormat);
|
|
44
|
+
}
|
|
45
|
+
get value() {
|
|
46
|
+
const product = this.productController.item;
|
|
47
|
+
if (!product) {
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
const value = parseValue(product, this.field);
|
|
51
|
+
if (value === null) {
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
54
|
+
return this.formatter(value, this.bindings.i18n.languages);
|
|
55
|
+
}
|
|
56
|
+
render() {
|
|
57
|
+
return html `${when(this.value !== null, () => html `${this.value}`)}`;
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
__decorate([
|
|
61
|
+
state()
|
|
62
|
+
], AtomicProductNumericFieldValue.prototype, "bindings", void 0);
|
|
63
|
+
__decorate([
|
|
64
|
+
state()
|
|
65
|
+
], AtomicProductNumericFieldValue.prototype, "error", void 0);
|
|
66
|
+
__decorate([
|
|
67
|
+
property({ reflect: true })
|
|
68
|
+
], AtomicProductNumericFieldValue.prototype, "field", void 0);
|
|
69
|
+
__decorate([
|
|
70
|
+
state()
|
|
71
|
+
], AtomicProductNumericFieldValue.prototype, "formatter", void 0);
|
|
72
|
+
__decorate([
|
|
73
|
+
errorGuard(),
|
|
74
|
+
bindingGuard()
|
|
75
|
+
], AtomicProductNumericFieldValue.prototype, "render", null);
|
|
76
|
+
AtomicProductNumericFieldValue = __decorate([
|
|
77
|
+
customElement('atomic-product-numeric-field-value'),
|
|
78
|
+
bindings(),
|
|
79
|
+
withTailwindStyles
|
|
80
|
+
], AtomicProductNumericFieldValue);
|
|
81
|
+
export { AtomicProductNumericFieldValue };
|
package/dist/atomic/components/components/commerce/atomic-product-price/atomic-product-price.js
ADDED
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { buildContext, } from '@coveo/headless/commerce';
|
|
8
|
+
import { html, LitElement, unsafeCSS } from 'lit';
|
|
9
|
+
import { customElement, state } from 'lit/decorators.js';
|
|
10
|
+
import { when } from 'lit/directives/when.js';
|
|
11
|
+
import { bindStateToController } from "../../../decorators/bind-state.js";
|
|
12
|
+
import { bindingGuard } from "../../../decorators/binding-guard.js";
|
|
13
|
+
import { bindings } from "../../../decorators/bindings.js";
|
|
14
|
+
import { createProductContextController } from "../../../decorators/commerce/product-template-decorators.js";
|
|
15
|
+
import { errorGuard } from "../../../decorators/error-guard.js";
|
|
16
|
+
import { injectStylesForNoShadowDOM } from "../../../decorators/inject-styles-for-no-shadow-dom.js";
|
|
17
|
+
import { withTailwindStyles } from "../../../decorators/with-tailwind-styles.js";
|
|
18
|
+
import { multiClassMap, tw } from "../../../directives/multi-class-map.js";
|
|
19
|
+
import { defaultCurrencyFormatter } from '../../common/formats/format-common.js';
|
|
20
|
+
import { parseValue } from '../product-template-component-utils/product-utils.js';
|
|
21
|
+
import styles from './atomic-product-price.tw.css';
|
|
22
|
+
/**
|
|
23
|
+
* The `atomic-product-price` component renders the price of a product.
|
|
24
|
+
* @alpha
|
|
25
|
+
*/
|
|
26
|
+
let AtomicProductPrice = class AtomicProductPrice extends LitElement {
|
|
27
|
+
constructor() {
|
|
28
|
+
super(...arguments);
|
|
29
|
+
this.productController = createProductContextController(this);
|
|
30
|
+
}
|
|
31
|
+
initialize() {
|
|
32
|
+
this.context = buildContext(this.bindings.engine);
|
|
33
|
+
}
|
|
34
|
+
get product() {
|
|
35
|
+
return this.productController.item;
|
|
36
|
+
}
|
|
37
|
+
formatValue(value) {
|
|
38
|
+
try {
|
|
39
|
+
const { currency } = this.contextState;
|
|
40
|
+
const formatter = defaultCurrencyFormatter(currency);
|
|
41
|
+
return formatter(value, this.bindings.i18n.languages);
|
|
42
|
+
}
|
|
43
|
+
catch (error) {
|
|
44
|
+
this.error = error;
|
|
45
|
+
return value.toString();
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
getFormattedValue(field) {
|
|
49
|
+
const value = parseValue(this.product, field);
|
|
50
|
+
if (value !== null) {
|
|
51
|
+
return this.formatValue(value);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
get hasPromotionalPrice() {
|
|
55
|
+
return (this.product &&
|
|
56
|
+
this.product.ec_promo_price !== null &&
|
|
57
|
+
this.product.ec_price !== null &&
|
|
58
|
+
this.product.ec_promo_price < this.product.ec_price);
|
|
59
|
+
}
|
|
60
|
+
render() {
|
|
61
|
+
const priceClasses = tw({
|
|
62
|
+
'truncate break-keep text-2xl': true,
|
|
63
|
+
'text-error': this.hasPromotionalPrice,
|
|
64
|
+
});
|
|
65
|
+
return html `
|
|
66
|
+
<div class="flex flex-wrap gap-1">
|
|
67
|
+
<div
|
|
68
|
+
class=${multiClassMap(priceClasses)}
|
|
69
|
+
>
|
|
70
|
+
${this.getFormattedValue(this.hasPromotionalPrice ? 'ec_promo_price' : 'ec_price')}
|
|
71
|
+
</div>
|
|
72
|
+
|
|
73
|
+
${when(this.hasPromotionalPrice, () => html `
|
|
74
|
+
<div class="original-price content-center truncate text-xl break-keep line-through">
|
|
75
|
+
${this.getFormattedValue('ec_price')}
|
|
76
|
+
</div>
|
|
77
|
+
`)}
|
|
78
|
+
</div>
|
|
79
|
+
`;
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
AtomicProductPrice.styles = unsafeCSS(styles);
|
|
83
|
+
__decorate([
|
|
84
|
+
state()
|
|
85
|
+
], AtomicProductPrice.prototype, "bindings", void 0);
|
|
86
|
+
__decorate([
|
|
87
|
+
state()
|
|
88
|
+
], AtomicProductPrice.prototype, "error", void 0);
|
|
89
|
+
__decorate([
|
|
90
|
+
bindStateToController('context'),
|
|
91
|
+
state()
|
|
92
|
+
], AtomicProductPrice.prototype, "contextState", void 0);
|
|
93
|
+
__decorate([
|
|
94
|
+
errorGuard(),
|
|
95
|
+
bindingGuard()
|
|
96
|
+
], AtomicProductPrice.prototype, "render", null);
|
|
97
|
+
AtomicProductPrice = __decorate([
|
|
98
|
+
customElement('atomic-product-price'),
|
|
99
|
+
bindings(),
|
|
100
|
+
injectStylesForNoShadowDOM,
|
|
101
|
+
withTailwindStyles
|
|
102
|
+
], AtomicProductPrice);
|
|
103
|
+
export { AtomicProductPrice };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const css = `/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */
|
|
2
|
+
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-leading:initial}}}.display-grid atomic-product-price{flex-flow:column wrap;display:flex}.display-grid atomic-product-price .original-price{--tw-leading:1;line-height:1}@property --tw-leading{syntax:"*";inherits:false}`;
|
|
3
|
+
export default [css];
|
|
@@ -13,7 +13,10 @@ import { ProductTemplateController } from '../../common/product-template/product
|
|
|
13
13
|
import '../atomic-commerce-text/atomic-commerce-text';
|
|
14
14
|
import '../atomic-product-text/atomic-product-text';
|
|
15
15
|
import '../atomic-product/atomic-product';
|
|
16
|
+
import '../atomic-product-excerpt/atomic-product-excerpt';
|
|
16
17
|
import '../atomic-product-children/atomic-product-children';
|
|
18
|
+
import '../atomic-product-price/atomic-product-price';
|
|
19
|
+
import '../atomic-product-numeric-field-value/atomic-product-numeric-field-value';
|
|
17
20
|
/**
|
|
18
21
|
* * A product template determines the format of the query results, depending on the conditions that are defined for each template.
|
|
19
22
|
*
|
|
@@ -22,5 +22,8 @@ export { AtomicCommerceSortDropdown } from './atomic-commerce-sort-dropdown/atom
|
|
|
22
22
|
export { AtomicCommerceText } from './atomic-commerce-text/atomic-commerce-text.js';
|
|
23
23
|
export { AtomicProduct } from './atomic-product/atomic-product.js';
|
|
24
24
|
export { AtomicProductChildren } from './atomic-product-children/atomic-product-children.js';
|
|
25
|
+
export { AtomicProductExcerpt } from './atomic-product-excerpt/atomic-product-excerpt.js';
|
|
26
|
+
export { AtomicProductNumericFieldValue } from './atomic-product-numeric-field-value/atomic-product-numeric-field-value.js';
|
|
27
|
+
export { AtomicProductPrice } from './atomic-product-price/atomic-product-price.js';
|
|
25
28
|
export { AtomicProductTemplate } from './atomic-product-template/atomic-product-template.js';
|
|
26
29
|
export { AtomicProductText } from './atomic-product-text/atomic-product-text.js';
|
|
@@ -23,6 +23,9 @@ export default {
|
|
|
23
23
|
'atomic-commerce-text': async () => await import('./atomic-commerce-text/atomic-commerce-text.js'),
|
|
24
24
|
'atomic-product': async () => await import('./atomic-product/atomic-product.js'),
|
|
25
25
|
'atomic-product-children': async () => await import('./atomic-product-children/atomic-product-children.js'),
|
|
26
|
+
'atomic-product-excerpt': async () => await import('./atomic-product-excerpt/atomic-product-excerpt.js'),
|
|
27
|
+
'atomic-product-numeric-field-value': async () => await import('./atomic-product-numeric-field-value/atomic-product-numeric-field-value.js'),
|
|
28
|
+
'atomic-product-price': async () => await import('./atomic-product-price/atomic-product-price.js'),
|
|
26
29
|
'atomic-product-template': async () => await import('./atomic-product-template/atomic-product-template.js'),
|
|
27
30
|
'atomic-product-text': async () => await import('./atomic-product-text/atomic-product-text.js'),
|
|
28
31
|
};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { html } from 'lit';
|
|
2
|
+
const MinusIcon = "<svg viewBox=\"0 0 512 512\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"m64 208h384v96h-384z\"/></svg>";
|
|
3
|
+
const PlusIcon = "<svg viewBox=\"0 0 512 512\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M496 208H304V16h-96v192H16v96h192v192h96V304h192\"/>\n</svg>\n";
|
|
4
|
+
import { renderButton } from '../button';
|
|
5
|
+
import '../atomic-icon/atomic-icon';
|
|
6
|
+
import { ref } from 'lit/directives/ref.js';
|
|
7
|
+
const getLineClampClass = (truncateAfter) => {
|
|
8
|
+
const lineClampMap = {
|
|
9
|
+
none: 'line-clamp-none',
|
|
10
|
+
1: 'line-clamp-1',
|
|
11
|
+
2: 'line-clamp-2',
|
|
12
|
+
3: 'line-clamp-3',
|
|
13
|
+
4: 'line-clamp-4',
|
|
14
|
+
};
|
|
15
|
+
return lineClampMap[truncateAfter] || 'line-clamp-2';
|
|
16
|
+
};
|
|
17
|
+
export const renderExpandableText = ({ props: { isExpanded, isTruncated, isCollapsible, truncateAfter, onToggleExpand, showMoreLabel, showLessLabel, textRef, }, }) => (children) => {
|
|
18
|
+
const expandableTextClass = `expandable-text ${!isExpanded ? getLineClampClass(truncateAfter) : ''} min-lines-${truncateAfter}`;
|
|
19
|
+
let buttonClass = 'expandable-text-button p-1 text-xs leading-[calc(1/.75)]';
|
|
20
|
+
if (!isTruncated && !isExpanded) {
|
|
21
|
+
buttonClass += ' invisible';
|
|
22
|
+
}
|
|
23
|
+
else if (!isCollapsible && !isTruncated && isExpanded) {
|
|
24
|
+
buttonClass += ' hidden';
|
|
25
|
+
}
|
|
26
|
+
const buttonLabel = isExpanded ? showLessLabel : showMoreLabel;
|
|
27
|
+
const icon = isExpanded ? MinusIcon : PlusIcon;
|
|
28
|
+
return html `<div class="flex flex-col items-start">
|
|
29
|
+
<div part="expandable-text"
|
|
30
|
+
class="${expandableTextClass}"
|
|
31
|
+
${ref(textRef)}
|
|
32
|
+
>
|
|
33
|
+
${children}
|
|
34
|
+
</div>
|
|
35
|
+
|
|
36
|
+
${renderButton({
|
|
37
|
+
props: {
|
|
38
|
+
style: 'text-primary',
|
|
39
|
+
class: buttonClass,
|
|
40
|
+
title: buttonLabel,
|
|
41
|
+
onClick: onToggleExpand,
|
|
42
|
+
},
|
|
43
|
+
})(html `
|
|
44
|
+
<atomic-icon icon="${icon}" class="mx-1 w-2 align-baseline"></atomic-icon>
|
|
45
|
+
${buttonLabel}`)}
|
|
46
|
+
</div>`;
|
|
47
|
+
};
|
|
@@ -65,13 +65,13 @@ const FacetDateInput = /*@__PURE__*/ proxyCustomElement(class FacetDateInput ext
|
|
|
65
65
|
// Fallback for Safari < 14.1, date with format yyyy-mm-dd over 1400 (API limit)
|
|
66
66
|
const pattern = '^(1[4-9]\\d{2}|2\\d{3})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])$';
|
|
67
67
|
const range = this.rangeGetter();
|
|
68
|
-
return (h("form", { key: '
|
|
68
|
+
return (h("form", { key: '090427f9c7d815510bb8732e1b13b6c31e9df82b', class: "mt-4 grid grid-cols-[min-content_1fr] gap-2 px-2", onSubmit: (e) => {
|
|
69
69
|
e.preventDefault();
|
|
70
70
|
this.apply();
|
|
71
71
|
return false;
|
|
72
|
-
} }, h("label", { key: '
|
|
72
|
+
} }, h("label", { key: 'a02063a5f8430c9144809253a3901d37a5a69b82', part: "input-label", class: labelClasses, htmlFor: `${this.facetId}_start` }, startLabel, ":"), h("input", { key: '89fa32c6e021cea4c6cb68ff4b60a7b39a0e2ff7', id: `${this.facetId}_start`, part: "input-start", type: "date", ref: (ref) => (this.startRef = ref), class: inputClasses, "aria-label": startAria, placeholder: placeholder, pattern: pattern, required: true,
|
|
73
73
|
// API/Index minimum supported date
|
|
74
|
-
min: this.min || this.formattedDateValue('1401-01-01'), max: this.end ? this.formattedDateValue(this.end) : this.max, value: this.formattedDateValue(range?.start), onInput: (e) => (this.start = parseDate(e.target.value).toDate()) }), h("label", { key: '
|
|
74
|
+
min: this.min || this.formattedDateValue('1401-01-01'), max: this.end ? this.formattedDateValue(this.end) : this.max, value: this.formattedDateValue(range?.start), onInput: (e) => (this.start = parseDate(e.target.value).toDate()) }), h("label", { key: 'a80d6601ae3c3189b1f8b04f7ff0a49eae68f788', part: "input-label", class: labelClasses, htmlFor: `${this.facetId}_end` }, endLabel, ":"), h("input", { key: 'c5973654c89ab45cd9a93b4281fb7fbb3906b38c', id: `${this.facetId}_end`, part: "input-end", type: "date", ref: (ref) => (this.endRef = ref), class: inputClasses, "aria-label": endAria, placeholder: placeholder, pattern: pattern, required: true, min: this.formattedDateValue(this.start) || this.min, max: this.max, value: this.formattedDateValue(range?.end), onInput: (e) => (this.end = parseDate(e.target.value).toDate()) }), h(Button, { key: '82663ec5a0122841c1126bf1f0766bd6cc078c35', style: "outline-primary", type: "submit", part: "input-apply-button", class: "col-span-2 truncate p-2.5", ariaLabel: applyAria, text: apply })));
|
|
75
75
|
}
|
|
76
76
|
}, [0, "atomic-facet-date-input", {
|
|
77
77
|
"bindings": [16],
|
|
@@ -42,11 +42,11 @@ const FacetNumberInput = /*@__PURE__*/ proxyCustomElement(class FacetNumberInput
|
|
|
42
42
|
const inputClasses = 'p-2.5 input-primary placeholder-neutral-dark min-w-0 mr-1';
|
|
43
43
|
const labelClasses = 'text-neutral-dark text-sm';
|
|
44
44
|
const step = this.type === 'integer' ? '1' : 'any';
|
|
45
|
-
return (h("form", { key: '
|
|
45
|
+
return (h("form", { key: '70662088ef0218f339ee83b226e4e0b5d2654518', class: "mt-4 gap-y-0.5 px-2", part: "input-form", onSubmit: (e) => {
|
|
46
46
|
e.preventDefault();
|
|
47
47
|
this.apply();
|
|
48
48
|
return false;
|
|
49
|
-
} }, h("label", { key: '
|
|
49
|
+
} }, h("label", { key: 'b7ae30e3bc6327a03537a7b21ab07d48f451dceb', part: "label-start", class: labelClasses, htmlFor: `${this.filterState.facetId}_start` }, minText), h("input", { key: '82f6b55550e7942598dbd7891647d587fe90d6fb', part: "input-start", id: `${this.filterState.facetId}_start`, type: "number", step: step, ref: (ref) => (this.startRef = ref), class: inputClasses, "aria-label": minAria, required: true, min: Number.MIN_SAFE_INTEGER, max: this.end, value: this.filterState.range?.start, onInput: (e) => (this.start = e.target.valueAsNumber) }), h("label", { key: 'f191b24d945184eb251e4a965d2fa308b71876ef', part: "label-end", class: labelClasses, htmlFor: `${this.filterState.facetId}_end` }, maxText), h("input", { key: '56eac2b3bc40e0feccd75bcb3f037cee8becb90d', part: "input-end", id: `${this.filterState.facetId}_end`, type: "number", step: step, ref: (ref) => (this.endRef = ref), class: inputClasses, "aria-label": maxAria, required: true, min: this.start, max: Number.MAX_SAFE_INTEGER, value: this.filterState.range?.end, onInput: (e) => (this.end = e.target.valueAsNumber) }), h(Button, { key: '7a342672e1066d4d12a867badbcb2d30dab76694', style: "outline-primary", type: "submit", part: "input-apply-button", class: "flex-none truncate p-2.5", ariaLabel: applyAria, text: apply })));
|
|
50
50
|
}
|
|
51
51
|
static get style() { return AtomicFacetNumberInputStyle0; }
|
|
52
52
|
}, [0, "atomic-facet-number-input", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"index.js","mappings":"
|
|
1
|
+
{"file":"index.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAca,kBAAmB,SAAQ,KAAK;IAC3C,YAAY,WAAmB,EAAE,UAAkB;QACjD,KAAK,CACH,QAAQ,WAAW,sCAAsC,UAAU,YAAY,CAChF,CAAC;KACH;;;ACfH,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;SAIpC,gBAAgB,CAAI,OAAgB,EAAE,UAAkB;IACtE,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM;QACpC,MAAM,KAAK,GAAG,gBAAgB,CAC5B,oBAAoB,EACpB,CAAC,IAAO;YACN,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;SACtB,CACF,CAAC;QACF,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAE7B,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE;YACjC,MAAM,CACJ,IAAI,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,UAAU,CAAC,CACnE,CAAC;SACH;KACF,CAAC,CAAC;AACL;;ACoDA;;;;;;;;;;SAUgB,mBAAmB,CAAoB,OAAgB;IACrE,OAAO,gBAAgB,CAAI,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACxD;;;;","names":[],"sources":["src/components/common/item-list/context/item-context-controller.ts","src/components/common/item-list/fetch-item-context.ts","src/decorators/commerce/product-template-decorators.ts"],"sourcesContent":["import type {LitElement, ReactiveController, ReactiveControllerHost} from 'lit';\nimport type {InitializableComponent} from '@/src/decorators/types.js';\nimport {buildCustomEvent} from '@/src/utils/event-utils';\n\ntype LitElementWithError = Omit<\n Pick<InitializableComponent, 'error'>,\n 'error'\n> &\n LitElement & {\n error: Error | null;\n };\n\nconst itemContextEventName = 'atomic/resolveResult';\n\nexport class MissingParentError extends Error {\n constructor(elementName: string, parentName: string) {\n super(\n `The \"${elementName}\" element must be the child of an \"${parentName}\" element.`\n );\n }\n}\n\nfunction extractFolded<T = Record<string, unknown>>(\n item: Record<string, unknown>,\n returnFolded: boolean\n): T {\n if (returnFolded) {\n if ('children' in item) {\n return item as T;\n } else {\n return {children: [], result: item} as T;\n }\n }\n\n if ('children' in item && 'result' in item) {\n return item.result as T;\n }\n return item as T;\n}\n\n/**\n * A reactive controller that manages item context data from parent components.\n * Handles fetching item data via custom events and manages error states.\n */\nexport class ItemContextController<T = Record<string, unknown>>\n implements ReactiveController\n{\n private host: ReactiveControllerHost & LitElementWithError;\n private parentName: string;\n private folded: boolean;\n private _item: T | null = null;\n private _error: MissingParentError | null = null;\n\n constructor(\n host: ReactiveControllerHost & LitElementWithError,\n options: {parentName?: string; folded?: boolean} = {}\n ) {\n this.host = host;\n this.parentName = options.parentName ?? 'atomic-result';\n this.folded = options.folded ?? false;\n host.addController(this);\n }\n\n get item(): T | null {\n return this._error ? null : this._item;\n }\n\n get error(): MissingParentError | null {\n return this._error;\n }\n\n get hasError(): boolean {\n return this._error !== null;\n }\n\n hostConnected(): void {\n this._resolveItemContext();\n }\n\n private _resolveItemContext(): void {\n const event = buildCustomEvent(\n itemContextEventName,\n (item: Record<string, unknown>) => {\n this._item = extractFolded<T>(item, this.folded);\n this._error = null;\n this.host.error = null;\n this.host.requestUpdate();\n }\n );\n\n const canceled = this.host.dispatchEvent(event);\n if (canceled) {\n const elementName = (this.host as Element).nodeName.toLowerCase();\n this._error = new MissingParentError(elementName, this.parentName);\n this._item = null;\n this.host.error = this._error;\n this.host.requestUpdate();\n }\n }\n}\n\ntype ItemContextEventHandler<T> = (item: T) => void;\nexport type ItemContextEvent<T> = CustomEvent<ItemContextEventHandler<T>>;\n","import {closest} from '../../../utils/dom-utils.js';\nimport {buildCustomEvent} from '../../../utils/event-utils.js';\nimport {MissingParentError} from './context/item-context-controller.js';\n\nconst itemContextEventName = 'atomic/resolveResult';\n\ntype ItemContextEventHandler<T> = (item: T) => void;\n\nexport function fetchItemContext<T>(element: Element, parentName: string) {\n return new Promise<T>((resolve, reject) => {\n const event = buildCustomEvent<ItemContextEventHandler<T>>(\n itemContextEventName,\n (item: T) => {\n return resolve(item);\n }\n );\n element.dispatchEvent(event);\n\n if (!closest(element, parentName)) {\n reject(\n new MissingParentError(element.nodeName.toLowerCase(), parentName)\n );\n }\n });\n}\n","import type {InteractiveProduct, Product} from '@coveo/headless/commerce';\nimport type {LitElement} from 'lit';\nimport {\n InteractiveItemContextController,\n type InteractiveItemContextEvent,\n} from '@/src/components/common/item-list/context/interactive-item-context-controller';\nimport {\n ItemContextController,\n type ItemContextEvent,\n} from '@/src/components/common/item-list/context/item-context-controller';\nimport {fetchItemContext} from '@/src/components/common/item-list/fetch-item-context';\n\n/**\n * Creates a [Lit reactive controller](https://lit.dev/docs/composition/controllers/) for managing product context in product template components.\n *\n * @param host - The Lit component instance\n * @param options - Configuration options\n * @returns ItemContextController instance configured for atomic-product\n *\n * @example\n * ```typescript\n * @customElement('my-product-component')\n * export class MyProductComponent extends LitElement {\n * private productController = createProductContextController(this);\n *\n * @state() product!: Product;\n *\n * render() {\n * this.product = this.productController.item;\n * return html`<div>${this.product?.ec_name}</div>`;\n * }\n * }\n * ```\n */\nexport function createProductContextController(\n host: LitElement & {error: Error | null},\n options: {folded?: boolean} = {}\n): ItemContextController<Product> {\n return new ItemContextController<Product>(host, {\n parentName: 'atomic-product',\n folded: options.folded ?? false,\n });\n}\n\n/**\n * Creates a [Lit reactive controller](https://lit.dev/docs/composition/controllers/) for managing interactive product context in product template components.\n *\n * @param host - The Lit component instance\n * @returns InteractiveItemContextController instance\n *\n * @example\n * ```typescript\n * @customElement('my-interactive-product-component')\n * export class MyInteractiveProductComponent extends LitElement {\n * private interactiveProductController = createInteractiveProductContextController(this);\n *\n * @state() product!: Product;\n *\n * render() {\n * this.product = this.interactiveProductController.interactiveItem;\n * return html`<div>${this.product?.ec_name}</div>`;\n * }\n * }\n * ```\n */\nexport function createInteractiveProductContextController(\n host: LitElement & {error: Error}\n): InteractiveItemContextController<InteractiveProduct> {\n return new InteractiveItemContextController<InteractiveProduct>(host);\n}\n\nexport type ProductContextEvent<T = Product> = ItemContextEvent<T>;\nexport type InteractiveProductContextEvent<\n T extends InteractiveProduct = InteractiveProduct,\n> = InteractiveItemContextEvent<T>;\n\n/**\n * Retrieves `Product` on a rendered `atomic-product`.\n *\n * This utility function is useful for building custom product template elements, see [Create a Product List](https://docs.coveo.com/en/atomic/latest/cc-search/create-custom-components/native-components/#custom-product-template-component-example) for more information.\n *\n * You should use the utility function in the [`connectedCallback` lifecycle method](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements#using_the_lifecycle_callbacks).\n *\n * @param element - The element that the event is dispatched to, which must be the child of a rendered `atomic-product`.\n * @returns A promise that resolves on initialization of the parent `atomic-product` element, or rejects when there is no parent `atomic-product` element.\n */\nexport function fetchProductContext<T extends Product>(element: Element) {\n return fetchItemContext<T>(element, 'atomic-product');\n}\n"],"version":3}
|
|
@@ -25,7 +25,7 @@ const AtomicTabButton = /*@__PURE__*/ proxyCustomElement(class AtomicTabButton e
|
|
|
25
25
|
return this.active ? '' : 'text-neutral-dark hover:text-primary-light';
|
|
26
26
|
}
|
|
27
27
|
render() {
|
|
28
|
-
return (h(Host, { key: '
|
|
28
|
+
return (h(Host, { key: '54fada7b3513603138ccbacbcb02ba538fef10b0', role: "listitem", class: `${this.activeTabClass}`, "aria-current": this.active ? 'true' : 'false', "aria-label": 'tab for ' + this.label, part: 'button-container' + (this.active ? '-active' : '') }, h(Button, { key: '8b8ea4b2a6b70e6bd875dfd7450751828ef1076a', class: `w-full truncate px-2 pb-1 text-xl sm:px-6 ${this.activeTabTextClass}`, part: 'tab-button' + (this.active ? '-active' : ''), onClick: this.select, style: "text-transparent" }, this.label)));
|
|
29
29
|
}
|
|
30
30
|
static get style() { return AtomicTabButtonStyle0; }
|
|
31
31
|
}, [0, "atomic-tab-button", {
|
|
@@ -144,7 +144,7 @@ const TabPopover = /*@__PURE__*/ proxyCustomElement(class TabPopover extends HTM
|
|
|
144
144
|
this.popperInstance?.forceUpdate();
|
|
145
145
|
}
|
|
146
146
|
render() {
|
|
147
|
-
return (h(Host, { key: '
|
|
147
|
+
return (h(Host, { key: '5fed79028e682c16d9035ffb3a064951432568f9', onFocusout: (event) => this.closePopoverOnFocusOut(event), class: this.show ? '' : 'visibility-hidden', "aria-hidden": !this.show }, this.renderPopover(), this.isOpen && this.renderBackdrop()));
|
|
148
148
|
}
|
|
149
149
|
get host() { return this; }
|
|
150
150
|
static get style() { return AtomicTabPopoverStyle0; }
|