the-foxy-library 1.0.19 → 1.0.21
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/cjs/{app-globals-DRVRI1ik.js → app-globals-CoHtVZOa.js} +4 -3
- package/dist/cjs/app-globals-CoHtVZOa.js.map +1 -0
- package/dist/cjs/{factory-CC4cUyGl.js → factory-NSOuLE3E.js} +7 -4
- package/dist/cjs/factory-NSOuLE3E.js.map +1 -0
- package/dist/cjs/{index-77WT2UXf.js → index-LRS48Qt3.js} +3 -2
- package/dist/cjs/index-LRS48Qt3.js.map +1 -0
- package/dist/cjs/intravenous.cjs.js +2 -2
- package/dist/cjs/ion-icon_12.cjs.entry.js +2 -2
- package/dist/cjs/iv-banner.cjs.entry.js +1 -1
- package/dist/cjs/iv-card_3.cjs.entry.js +2 -2
- package/dist/cjs/iv-carousel.cjs.entry.js +1 -1
- package/dist/cjs/iv-compare-product.cjs.entry.js +1 -1
- package/dist/cjs/iv-dynamic-products-carousel.cjs.entry.js +2 -2
- package/dist/cjs/iv-dynamic-products.cjs.entry.js +2 -2
- package/dist/cjs/iv-filters.cjs.entry.js +1 -1
- package/dist/cjs/iv-predictive-search.cjs.entry.js +1 -1
- package/dist/cjs/iv-product-pin.cjs.entry.js +1 -1
- package/dist/cjs/iv-product-upsell.cjs.entry.js +1 -1
- package/dist/cjs/iv-recently-viewed.cjs.entry.js +2 -2
- package/dist/cjs/iv-shop-the-look.cjs.entry.js +1 -1
- package/dist/cjs/iv-suggest.cjs.entry.js +1 -1
- package/dist/cjs/iv-tabs.cjs.entry.js +1 -1
- package/dist/cjs/iv-toast-container.cjs.entry.js +1 -1
- package/dist/cjs/iv-toast.cjs.entry.js +1 -1
- package/dist/cjs/iv-wishlist.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/sw-in-grid-content.cjs.entry.js +1 -1
- package/dist/cjs/sw-size-guide.cjs.entry.js +1 -1
- package/dist/collection/global/app.js +1 -0
- package/dist/collection/global/app.js.map +1 -1
- package/dist/collection/utils/config/factory.js +1 -0
- package/dist/collection/utils/config/factory.js.map +1 -1
- package/dist/collection/utils/storefront_api/factory.js +4 -1
- package/dist/collection/utils/storefront_api/factory.js.map +1 -1
- package/dist/components/index.js +3 -2
- package/dist/components/index.js.map +1 -1
- package/dist/components/ion-icon.js +1 -1
- package/dist/components/iv-accordion.js +2 -2
- package/dist/components/iv-banner.js +1 -1
- package/dist/components/iv-button.js +1 -1
- package/dist/components/iv-card.js +1 -1
- package/dist/components/iv-carousel.js +1 -1
- package/dist/components/iv-compare-product.js +1 -1
- package/dist/components/iv-dynamic-products-carousel.js +6 -6
- package/dist/components/iv-dynamic-products.js +7 -7
- package/dist/components/iv-event-button.js +1 -1
- package/dist/components/iv-filters.js +1 -1
- package/dist/components/iv-footer.js +1 -1
- package/dist/components/iv-layout.js +1 -1
- package/dist/components/iv-link-list.js +2 -2
- package/dist/components/iv-link.js +1 -1
- package/dist/components/iv-modal.js +3 -3
- package/dist/components/iv-newsletter.js +2 -2
- package/dist/components/iv-predictive-search.js +5 -5
- package/dist/components/iv-product-pin.js +1 -1
- package/dist/components/iv-product-upsell.js +1 -1
- package/dist/components/iv-recently-viewed.js +6 -6
- package/dist/components/iv-shop-the-look.js +2 -2
- package/dist/components/iv-sidebar.js +3 -3
- package/dist/components/iv-spinner.js +1 -1
- package/dist/components/iv-suggest.js +6 -6
- package/dist/components/iv-tabs.js +1 -1
- package/dist/components/iv-toast-container.js +2 -2
- package/dist/components/iv-toast.js +1 -1
- package/dist/components/iv-two-col-media.js +1 -1
- package/dist/components/iv-wishlist-view.js +1 -1
- package/dist/components/iv-wishlist.js +2 -2
- package/dist/components/{p-CvO-bCed.js → p-B-4VoGV_.js} +3 -3
- package/dist/components/{p-CvO-bCed.js.map → p-B-4VoGV_.js.map} +1 -1
- package/dist/components/{p-Blz-LJSV.js → p-B4yIesaL.js} +3 -3
- package/dist/components/{p-Blz-LJSV.js.map → p-B4yIesaL.js.map} +1 -1
- package/dist/components/{p-3lSW4-ii.js → p-BMsgAmDZ.js} +3 -3
- package/dist/components/{p-3lSW4-ii.js.map → p-BMsgAmDZ.js.map} +1 -1
- package/dist/components/{p-kuABA_Tv.js → p-BVAxyx8A.js} +3 -3
- package/dist/components/{p-kuABA_Tv.js.map → p-BVAxyx8A.js.map} +1 -1
- package/dist/components/{p-Cmnclx4w.js → p-BVL7DqEj.js} +7 -4
- package/dist/components/p-BVL7DqEj.js.map +1 -0
- package/dist/components/{p-CmetOj56.js → p-BpdXCMak.js} +3 -3
- package/dist/components/{p-CmetOj56.js.map → p-BpdXCMak.js.map} +1 -1
- package/dist/components/{p-DV16vkcI.js → p-CUI6hRMI.js} +3 -3
- package/dist/components/{p-DV16vkcI.js.map → p-CUI6hRMI.js.map} +1 -1
- package/dist/components/{p-HxD8ZMcb.js → p-D8GfK9z_.js} +3 -3
- package/dist/components/{p-HxD8ZMcb.js.map → p-D8GfK9z_.js.map} +1 -1
- package/dist/components/{p-3YQcGgfQ.js → p-DE0H3IbO.js} +5 -5
- package/dist/components/{p-3YQcGgfQ.js.map → p-DE0H3IbO.js.map} +1 -1
- package/dist/components/{p-D2SCT3Sb.js → p-DVvBorxR.js} +3 -3
- package/dist/components/{p-D2SCT3Sb.js.map → p-DVvBorxR.js.map} +1 -1
- package/dist/components/{p-haFsiJTQ.js → p-IJUHvLzw.js} +6 -6
- package/dist/components/{p-haFsiJTQ.js.map → p-IJUHvLzw.js.map} +1 -1
- package/dist/components/{p-DH3wWIxr.js → p-XXtzVg2d.js} +3 -2
- package/dist/components/p-XXtzVg2d.js.map +1 -0
- package/dist/components/{p-Dfh8X_q_.js → p-dpzz67iI.js} +3 -3
- package/dist/components/{p-Dfh8X_q_.js.map → p-dpzz67iI.js.map} +1 -1
- package/dist/components/sw-in-grid-content.js +1 -1
- package/dist/components/sw-size-guide.js +1 -1
- package/dist/esm/{app-globals-BRJyMwss.js → app-globals-D2HG9z1r.js} +4 -3
- package/dist/esm/app-globals-D2HG9z1r.js.map +1 -0
- package/dist/esm/{factory-nzeOUOp1.js → factory-Bf2IW1Vz.js} +7 -4
- package/dist/esm/factory-Bf2IW1Vz.js.map +1 -0
- package/dist/esm/{index-BW0IzFf8.js → index-Cb3Nnjkn.js} +3 -2
- package/dist/esm/index-Cb3Nnjkn.js.map +1 -0
- package/dist/esm/intravenous.js +3 -3
- package/dist/esm/ion-icon_12.entry.js +2 -2
- package/dist/esm/iv-banner.entry.js +1 -1
- package/dist/esm/iv-card_3.entry.js +2 -2
- package/dist/esm/iv-carousel.entry.js +1 -1
- package/dist/esm/iv-compare-product.entry.js +1 -1
- package/dist/esm/iv-dynamic-products-carousel.entry.js +2 -2
- package/dist/esm/iv-dynamic-products.entry.js +2 -2
- package/dist/esm/iv-filters.entry.js +1 -1
- package/dist/esm/iv-predictive-search.entry.js +1 -1
- package/dist/esm/iv-product-pin.entry.js +1 -1
- package/dist/esm/iv-product-upsell.entry.js +1 -1
- package/dist/esm/iv-recently-viewed.entry.js +2 -2
- package/dist/esm/iv-shop-the-look.entry.js +1 -1
- package/dist/esm/iv-suggest.entry.js +1 -1
- package/dist/esm/iv-tabs.entry.js +1 -1
- package/dist/esm/iv-toast-container.entry.js +1 -1
- package/dist/esm/iv-toast.entry.js +1 -1
- package/dist/esm/iv-wishlist.entry.js +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/sw-in-grid-content.entry.js +1 -1
- package/dist/esm/sw-size-guide.entry.js +1 -1
- package/dist/intravenous/intravenous.esm.js +1 -1
- package/dist/intravenous/{p-c1d875cf.entry.js → p-0f07e69c.entry.js} +2 -2
- package/dist/intravenous/{p-a35de10b.entry.js → p-1394ddc3.entry.js} +2 -2
- package/dist/intravenous/{p-ec7b539d.entry.js → p-19185e49.entry.js} +2 -2
- package/dist/intravenous/p-1d169085.entry.js +2 -0
- package/dist/intravenous/{p-50008fa6.entry.js → p-28d83a02.entry.js} +2 -2
- package/dist/intravenous/{p-45c70b13.entry.js → p-3a43aff3.entry.js} +2 -2
- package/dist/intravenous/{p-a617d9d0.entry.js → p-3ad476a3.entry.js} +2 -2
- package/dist/intravenous/{p-2c191fe7.entry.js → p-40d5f2dd.entry.js} +2 -2
- package/dist/intravenous/{p-78e8d319.entry.js → p-51f91c3c.entry.js} +2 -2
- package/dist/intravenous/p-6yYowr-X.js +2 -0
- package/dist/intravenous/p-6yYowr-X.js.map +1 -0
- package/dist/intravenous/{p-21d5f405.entry.js → p-7a73eb94.entry.js} +2 -2
- package/dist/intravenous/{p-55f43ae2.entry.js → p-7e46d5b9.entry.js} +2 -2
- package/dist/intravenous/{p-dc8d0b9e.entry.js → p-8d726fec.entry.js} +2 -2
- package/dist/intravenous/{p-BW0IzFf8.js → p-Cb3Nnjkn.js} +2 -2
- package/dist/intravenous/p-Cb3Nnjkn.js.map +1 -0
- package/dist/intravenous/p-DujflZ2b.js +2 -0
- package/dist/intravenous/p-DujflZ2b.js.map +1 -0
- package/dist/intravenous/{p-145798b2.entry.js → p-a28bd4eb.entry.js} +2 -2
- package/dist/intravenous/{p-256a765e.entry.js → p-a66c7492.entry.js} +2 -2
- package/dist/intravenous/{p-a7b3baf0.entry.js → p-a7d8309c.entry.js} +2 -2
- package/dist/intravenous/{p-aebd8d4b.entry.js → p-affde66d.entry.js} +2 -2
- package/dist/intravenous/{p-19cf30b1.entry.js → p-b2e8bb5f.entry.js} +2 -2
- package/dist/intravenous/{p-331983d1.entry.js → p-bfe01a14.entry.js} +2 -2
- package/dist/intravenous/{p-13ce40ae.entry.js → p-ca10d662.entry.js} +2 -2
- package/dist/intravenous/{p-cbf8e7b8.entry.js → p-ff2b5ad8.entry.js} +2 -2
- package/package.json +1 -1
- package/dist/cjs/app-globals-DRVRI1ik.js.map +0 -1
- package/dist/cjs/factory-CC4cUyGl.js.map +0 -1
- package/dist/cjs/index-77WT2UXf.js.map +0 -1
- package/dist/components/p-Cmnclx4w.js.map +0 -1
- package/dist/components/p-DH3wWIxr.js.map +0 -1
- package/dist/esm/app-globals-BRJyMwss.js.map +0 -1
- package/dist/esm/factory-nzeOUOp1.js.map +0 -1
- package/dist/esm/index-BW0IzFf8.js.map +0 -1
- package/dist/intravenous/p-BAss6u3X.js +0 -2
- package/dist/intravenous/p-BAss6u3X.js.map +0 -1
- package/dist/intravenous/p-BW0IzFf8.js.map +0 -1
- package/dist/intravenous/p-DHfJNZjh.js +0 -2
- package/dist/intravenous/p-DHfJNZjh.js.map +0 -1
- package/dist/intravenous/p-e7109ec4.entry.js +0 -2
- /package/dist/intravenous/{p-c1d875cf.entry.js.map → p-0f07e69c.entry.js.map} +0 -0
- /package/dist/intravenous/{p-a35de10b.entry.js.map → p-1394ddc3.entry.js.map} +0 -0
- /package/dist/intravenous/{p-ec7b539d.entry.js.map → p-19185e49.entry.js.map} +0 -0
- /package/dist/intravenous/{p-e7109ec4.entry.js.map → p-1d169085.entry.js.map} +0 -0
- /package/dist/intravenous/{p-50008fa6.entry.js.map → p-28d83a02.entry.js.map} +0 -0
- /package/dist/intravenous/{p-45c70b13.entry.js.map → p-3a43aff3.entry.js.map} +0 -0
- /package/dist/intravenous/{p-a617d9d0.entry.js.map → p-3ad476a3.entry.js.map} +0 -0
- /package/dist/intravenous/{p-2c191fe7.entry.js.map → p-40d5f2dd.entry.js.map} +0 -0
- /package/dist/intravenous/{p-78e8d319.entry.js.map → p-51f91c3c.entry.js.map} +0 -0
- /package/dist/intravenous/{p-21d5f405.entry.js.map → p-7a73eb94.entry.js.map} +0 -0
- /package/dist/intravenous/{p-55f43ae2.entry.js.map → p-7e46d5b9.entry.js.map} +0 -0
- /package/dist/intravenous/{p-dc8d0b9e.entry.js.map → p-8d726fec.entry.js.map} +0 -0
- /package/dist/intravenous/{p-145798b2.entry.js.map → p-a28bd4eb.entry.js.map} +0 -0
- /package/dist/intravenous/{p-256a765e.entry.js.map → p-a66c7492.entry.js.map} +0 -0
- /package/dist/intravenous/{p-a7b3baf0.entry.js.map → p-a7d8309c.entry.js.map} +0 -0
- /package/dist/intravenous/{p-aebd8d4b.entry.js.map → p-affde66d.entry.js.map} +0 -0
- /package/dist/intravenous/{p-19cf30b1.entry.js.map → p-b2e8bb5f.entry.js.map} +0 -0
- /package/dist/intravenous/{p-331983d1.entry.js.map → p-bfe01a14.entry.js.map} +0 -0
- /package/dist/intravenous/{p-13ce40ae.entry.js.map → p-ca10d662.entry.js.map} +0 -0
- /package/dist/intravenous/{p-cbf8e7b8.entry.js.map → p-ff2b5ad8.entry.js.map} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
4
|
-
var appGlobals = require('./app-globals-
|
|
3
|
+
var index = require('./index-LRS48Qt3.js');
|
|
4
|
+
var appGlobals = require('./app-globals-CoHtVZOa.js');
|
|
5
5
|
|
|
6
6
|
var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
|
|
7
7
|
/*
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-LRS48Qt3.js');
|
|
4
4
|
var factory = require('./factory-DYuJXHFx.js');
|
|
5
|
-
var factory$1 = require('./factory-
|
|
5
|
+
var factory$1 = require('./factory-NSOuLE3E.js');
|
|
6
6
|
|
|
7
7
|
let CACHED_MAP;
|
|
8
8
|
const getIconMap = () => {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-LRS48Qt3.js');
|
|
4
4
|
var factory = require('./factory-DYuJXHFx.js');
|
|
5
|
-
var factory$1 = require('./factory-
|
|
5
|
+
var factory$1 = require('./factory-NSOuLE3E.js');
|
|
6
6
|
|
|
7
7
|
const ivCardCss = ".iv-card{display:var(--iv-card-display, block);box-sizing:border-box;padding:var(--iv-card-padding, 0);margin:var(--iv-card-margin, 0);background:var(--iv-card-bg, transparent);color:var(--iv-card-color, inherit);border:var(--iv-card-border, none);border-radius:var(--iv-card-border-radius, 0);box-shadow:var(--iv-card-shadow, none);font-size:var(--iv-card-font-size, inherit);line-height:var(--iv-card-line-height, 1.4);position:relative;text-decoration:none;transition:var(--iv-card-transition, background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease);gap:var(--iv-card-gap, 0.75rem);display:var(--iv-card-layout, flex);flex-direction:var(--iv-card-flex-direction, column)}.iv-card a,.iv-card a:visited,.iv-card a:hover,.iv-card a:focus{text-decoration:var(--iv-card-link-text-decoration, none);color:var(--iv-card-link-color, inherit)}.iv-card[href],.iv-card.is-interactive{cursor:pointer}.iv-card[href]:hover,.iv-card[href]:focus-visible,.iv-card.is-interactive:hover,.iv-card.is-interactive:focus-visible{background:var(--iv-card-hover-bg, var(--iv-card-bg, transparent));border:var(--iv-card-hover-border, var(--iv-card-border, none));box-shadow:var(--iv-card-hover-shadow, var(--iv-card-shadow, none));outline:var(--iv-card-focus-outline, none);box-shadow:var(--iv-card-focus-ring, var(--iv-card-hover-shadow, var(--iv-card-shadow, none)))}.iv-card-link-wrapper{display:var(--iv-card-link-wrapper-display, contents);text-decoration:none;color:inherit;cursor:pointer}.iv-card-field{display:block;margin:0;padding:0;font-weight:var(--iv-card-field-font-weight, inherit);color:var(--iv-card-field-color, inherit);word-break:break-word;text-decoration:none}.iv-card .iv-card-add-to-cart-btn{position:relative;z-index:2}.iv-card-link-wrapper:hover .iv-card-field,.iv-card-link-wrapper:focus-visible .iv-card-field{text-decoration:none}.iv-card-link-wrapper:hover,.iv-card-link-wrapper:focus-visible{background:var(--iv-card-link-hover-bg, var(--iv-card-hover-bg, transparent))}.iv-card-image{display:block;width:100%;height:auto;aspect-ratio:var(--iv-card-image-aspect-ratio, auto);object-fit:var(--iv-card-image-object-fit, cover);border-radius:var(--iv-card-image-border-radius, var(--iv-card-border-radius, 0));background:var(--iv-card-image-bg, transparent)}.iv-card-title{font-weight:var(--iv-card-heading-font-weight, 600);font-size:var(--iv-card-title-font-size, 1em);line-height:var(--iv-card-title-line-height, 1.2)}.iv-card-price{color:var(--iv-card-price-color, inherit);font-weight:var(--iv-card-price-weight, 500)}.iv-card-controls{display:flex;flex-wrap:wrap;gap:var(--iv-card-control-gap, 0.5rem);align-items:center;margin-top:var(--iv-card-controls-margin-top, var(--iv-card-gap, 0.75rem))}.iv-card-add-to-cart-btn{--iv-button-variant:var(--iv-card-button-variant, primary)}.iv-card-inner{width:100%;display:contents}@media (prefers-reduced-motion: reduce){.iv-card{transition:none}}";
|
|
8
8
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
4
|
-
var factory = require('./factory-
|
|
3
|
+
var index = require('./index-LRS48Qt3.js');
|
|
4
|
+
var factory = require('./factory-NSOuLE3E.js');
|
|
5
5
|
var productCache = require('./productCache-DAt5ukE_.js');
|
|
6
6
|
|
|
7
7
|
const ivDynamicProductsCarouselCss = ":host{display:block}.iv-dynamic-products-carousel{position:relative}.iv-dynamic-products-carousel-carousel{position:relative}.iv-dynamic-products-carousel-viewport{overflow:hidden;width:100%}.iv-dynamic-products-carousel-track{display:flex;width:100%;transition:transform 0.55s cubic-bezier(0.4, 0.7, 0.2, 1);will-change:transform}.iv-dynamic-products-carousel-slide{flex:0 0 100%;box-sizing:border-box;padding:0.25rem 0.5rem;display:grid;grid-template-columns:repeat(6, minmax(0, 1fr));gap:1rem;align-items:stretch;grid-auto-rows:1fr}@media (max-width: 1200px){.iv-dynamic-products-carousel-slide{grid-template-columns:repeat(4, minmax(0, 1fr))}}@media (max-width: 900px){.iv-dynamic-products-carousel-slide{grid-template-columns:repeat(3, minmax(0, 1fr))}}@media (max-width: 640px){.iv-dynamic-products-carousel-slide{grid-template-columns:repeat(2, minmax(0, 1fr));gap:0.75rem}}.iv-dynamic-products-carousel-card{height:100%;display:flex;flex-direction:column;background:#fff;padding:0.75rem 0.75rem 0.9rem;box-shadow:0 2px 6px rgba(0, 0, 0, 0.08);transition:box-shadow 0.2s ease, transform 0.2s ease}.iv-dynamic-products-carousel-card .iv-card-title{line-height:1.2;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;min-height:2.4em}.iv-dynamic-products-carousel-card .iv-card-controls{margin-top:auto;}.iv-dynamic-products-carousel-card:hover{box-shadow:0 4px 14px rgba(0, 0, 0, 0.15);transform:translateY(-2px)}.iv-dynamic-products-carousel-card:active{transform:translateY(0);box-shadow:0 2px 6px rgba(0, 0, 0, 0.12)}.iv-dynamic-products-carousel-card img,.iv-dynamic-products-carousel-card picture,.iv-dynamic-products-carousel-card .media{width:100%;aspect-ratio:1/1;object-fit:contain;display:flex;align-items:center;justify-content:center;margin:0 0 0.65rem}.iv-dynamic-products-carousel-nav{position:absolute;top:50%;transform:translateY(-50%);background:var(--iv-carousel-nav-bg, rgba(0, 0, 0, 0.55));color:#fff;border:none;width:2.75rem;height:2.75rem;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(6px);box-shadow:0 4px 12px rgba(0, 0, 0, 0.25);transition:background 0.2s ease, transform 0.2s ease;outline:none;z-index:10}.iv-dynamic-products-carousel-nav:focus-visible{outline:2px solid #fff;outline-offset:3px}.iv-dynamic-products-carousel-nav:hover:not(:disabled){background:var(--iv-carousel-nav-bg-hover, rgba(0, 0, 0, 0.75));transform:translateY(-50%) scale(1.05);box-shadow:0 6px 18px rgba(0, 0, 0, 0.35)}.iv-dynamic-products-carousel-nav:disabled{opacity:0.4;cursor:default}.iv-dynamic-products-carousel-nav-prev{left:0.25rem}.iv-dynamic-products-carousel-nav-next{right:0.25rem}.iv-dynamic-products-carousel-status{margin-top:0.75rem;font-size:0.875rem;text-align:center;color:var(--iv-carousel-status-color, #555)}.iv-dynamic-products-carousel-viewport::-webkit-scrollbar{display:none}.iv-dynamic-products-carousel-viewport{-ms-overflow-style:none;scrollbar-width:none}";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
4
|
-
var factory = require('./factory-
|
|
3
|
+
var index = require('./index-LRS48Qt3.js');
|
|
4
|
+
var factory = require('./factory-NSOuLE3E.js');
|
|
5
5
|
var productCache = require('./productCache-DAt5ukE_.js');
|
|
6
6
|
|
|
7
7
|
const ivDynamicProductsCss = ".iv-dynamic-products{box-sizing:border-box;width:var(--iv-dynamic-products-width, 100%);max-width:var(--iv-dynamic-products-max-width, 100%);margin:var(--iv-dynamic-products-margin, 0);padding:var(--iv-dynamic-products-padding, 0);background:var(--iv-dynamic-products-bg, transparent);border:var(--iv-dynamic-products-border, none);border-radius:var(--iv-dynamic-products-radius, 0);box-shadow:var(--iv-dynamic-products-shadow, none);color:var(--iv-dynamic-products-color, inherit);--iv-layout-gap:var(--iv-dynamic-products-gap, 1.5rem)}.iv-dynamic-products-title{margin:var(--iv-dynamic-products-title-margin, 0 0 1rem 0);font-size:var(--iv-dynamic-products-title-font-size, clamp(1.125rem, 1vw + 1rem, 1.75rem));font-weight:var(--iv-dynamic-products-title-font-weight, 600);line-height:var(--iv-dynamic-products-title-line-height, 1.2);letter-spacing:var(--iv-dynamic-products-title-letter-spacing, normal)}.iv-dynamic-products-error,.iv-dynamic-products-empty{padding:var(--iv-dynamic-products-state-padding, 1rem);border:var(--iv-dynamic-products-state-border, none);background:var(--iv-dynamic-products-state-bg, transparent);color:var(--iv-dynamic-products-state-color, inherit);font-size:var(--iv-dynamic-products-state-font-size, 0.875rem);text-align:var(--iv-dynamic-products-state-text-align, center)}.iv-dynamic-products-products{width:100%;margin:var(--iv-dynamic-products-products-margin, 0);padding:var(--iv-dynamic-products-products-padding, 0)}.iv-layout--iv-dynamic-products-layout{--iv-layout-gap:var(--iv-dynamic-products-grid-gap, var(--iv-dynamic-products-gap, 1.5rem));align-items:var(--iv-dynamic-products-grid-align, stretch);justify-content:var(--iv-dynamic-products-grid-justify, flex-start)}.iv-dynamic-products .iv-card{margin:var(--iv-dynamic-products-card-margin, 0);--iv-card-padding:var(--iv-dynamic-products-card-padding, var(--iv-card-padding, 0))}@media (min-width: 40rem){.iv-dynamic-products{--iv-dynamic-products-gap:var(--iv-dynamic-products-gap-md, var(--iv-dynamic-products-gap, 1.5rem))}}@media (min-width: 64rem){.iv-dynamic-products{--iv-dynamic-products-gap:var(--iv-dynamic-products-gap-lg, var(--iv-dynamic-products-gap, 1.5rem))}}.iv-dynamic-products--scroll-x .iv-layout--iv-dynamic-products-layout{display:flex !important;overflow-x:auto;scrollbar-width:var(--iv-dynamic-products-scrollbar-width, thin);-webkit-overflow-scrolling:touch}.iv-dynamic-products--scroll-x .iv-layout--iv-dynamic-products-layout>*{flex:0 0 var(--iv-dynamic-products-scroll-item-width, 75%)}@media (prefers-reduced-motion: reduce){.iv-dynamic-products{scroll-behavior:auto}}";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-LRS48Qt3.js');
|
|
4
4
|
var factory = require('./factory-DYuJXHFx.js');
|
|
5
5
|
|
|
6
6
|
const ivPredictiveSearchCss = ".iv-predictive-search{box-sizing:border-box;width:var(--iv-predictive-width, 100%);max-width:var(--iv-predictive-max-width, 100%);margin:var(--iv-predictive-margin, 0);padding:var(--iv-predictive-padding, 0);position:relative;background:var(--iv-predictive-background, transparent);border:var(--iv-predictive-border, none);border-radius:var(--iv-predictive-border-radius, 0);box-shadow:var(--iv-predictive-box-shadow, none);font-family:var(--iv-predictive-font-family, inherit);font-size:var(--iv-predictive-font-size, 1rem);color:var(--iv-predictive-text-color, inherit);transition:var(--iv-predictive-transition, box-shadow 0.2s ease, border-color 0.2s ease)}.iv-predictive-search-wrapper{box-sizing:border-box;padding:var(--iv-predictive-wrapper-padding, 0);display:var(--iv-predictive-wrapper-display, block);gap:var(--iv-predictive-wrapper-gap, 0.5rem)}.iv-predictive-search-wrapper.label-top .iv-predictive-search-label{display:block}.iv-predictive-search-wrapper.label-inline{display:flex;align-items:center;gap:var(--iv-predictive-inline-gap, 0.5rem)}.iv-predictive-search-label{margin:var(--iv-predictive-label-margin, 0 0 0.25rem 0);font-size:var(--iv-predictive-label-font-size, 1rem);font-weight:var(--iv-predictive-label-font-weight, 500);color:var(--iv-predictive-label-color, inherit);line-height:var(--iv-predictive-label-line-height, 1.2)}.iv-predictive-search-input{box-sizing:border-box;width:100%;background:var(--iv-predictive-input-background, transparent);color:var(--iv-predictive-input-color, inherit);border:var(--iv-predictive-input-border, 1px solid currentColor);border-radius:var(--iv-predictive-input-border-radius, 0);padding:var(--iv-predictive-input-padding, 0.5rem 0.75rem);font-size:var(--iv-predictive-input-font-size, inherit);line-height:var(--iv-predictive-input-line-height, 1.2);outline:none;transition:var(--iv-predictive-input-transition, border-color 0.2s ease, box-shadow 0.2s ease)}.iv-predictive-search-input:focus{border:var(--iv-predictive-input-focus-border, var(--iv-predictive-input-border, 1px solid currentColor));box-shadow:var(--iv-predictive-input-focus-shadow, 0 0 0 2px rgba(0, 0, 0, 0.15))}.iv-predictive-search-results{position:var(--iv-predictive-results-position, absolute);top:var(--iv-predictive-results-top, 100%);left:var(--iv-predictive-results-left, 0);right:var(--iv-predictive-results-right, 0);z-index:var(--iv-predictive-results-z-index, 10);margin:var(--iv-predictive-results-margin, 0.5rem 0 0 0);padding:var(--iv-predictive-results-padding, 0.5rem);background:var(--iv-predictive-results-background, var(--iv-predictive-background, transparent));border:var(--iv-predictive-results-border, var(--iv-predictive-border, none));border-radius:var(--iv-predictive-results-border-radius, var(--iv-predictive-border-radius, 0));box-shadow:var(--iv-predictive-results-box-shadow, var(--iv-predictive-box-shadow, none));box-sizing:border-box}.iv-predictive-search-prediction-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--iv-predictive-list-gap, 0.5rem)}.iv-predictive-search-prediction-item{background:var(--iv-predictive-item-background, transparent);border-radius:var(--iv-predictive-item-border-radius, 0);transition:var(--iv-predictive-item-transition, background 0.2s ease, color 0.2s ease)}.iv-predictive-search-prediction-item:hover{background:var(--iv-predictive-item-hover-background, var(--iv-predictive-item-background, transparent))}.iv-predictive-search-prediction-link{display:flex;align-items:center;text-decoration:none;color:var(--iv-predictive-link-color, inherit);padding:var(--iv-predictive-link-padding, 0.25rem 0.5rem);border-radius:var(--iv-predictive-link-border-radius, 0);gap:var(--iv-predictive-link-gap, 0.5rem);background:var(--iv-predictive-link-background, transparent);transition:var(--iv-predictive-link-transition, background 0.2s ease, color 0.2s ease)}.iv-predictive-search-prediction-link:hover{color:var(--iv-predictive-link-hover-color, var(--iv-predictive-link-color, inherit));background:var(--iv-predictive-link-hover-background, var(--iv-predictive-link-background, transparent))}.iv-predictive-search-prediction-link .prediction-image{width:var(--iv-predictive-image-width, 48px);height:var(--iv-predictive-image-height, 48px);object-fit:var(--iv-predictive-image-object-fit, cover);border-radius:var(--iv-predictive-image-border-radius, 0);background:var(--iv-predictive-image-background, transparent);border:var(--iv-predictive-image-border, none);flex:0 0 auto}.iv-predictive-search-prediction-link .prediction-part{font-size:var(--iv-predictive-part-font-size, 1rem);color:var(--iv-predictive-part-color, inherit);margin-right:var(--iv-predictive-part-margin-right, 0)}.iv-predictive-search-no-results{padding:var(--iv-predictive-no-results-padding, 0.5rem);font-size:var(--iv-predictive-no-results-font-size, 0.875rem);color:var(--iv-predictive-no-results-color, inherit);text-align:var(--iv-predictive-no-results-text-align, center);opacity:var(--iv-predictive-no-results-opacity, 0.8)}.iv-predictive-search-see-all{margin-top:var(--iv-predictive-see-all-margin-top, 0.75rem);text-align:var(--iv-predictive-see-all-text-align, right)}@media (prefers-reduced-motion: reduce){.iv-predictive-search,.iv-predictive-search-input,.iv-predictive-search-prediction-item,.iv-predictive-search-prediction-link{transition:none}}";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-LRS48Qt3.js');
|
|
4
4
|
|
|
5
5
|
const ivProductPinCss = ".iv-product-pin{position:absolute;width:32px;height:32px;background:#e74c3c;border-radius:50%;border:2px solid #fff;box-shadow:0 2px 8px rgba(0, 0, 0, 0.1);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:bold;cursor:pointer;transition:transform 0.1s}.iv-product-pin:hover{transform:scale(1.1)}";
|
|
6
6
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
4
|
-
var factory$1 = require('./factory-
|
|
3
|
+
var index = require('./index-LRS48Qt3.js');
|
|
4
|
+
var factory$1 = require('./factory-NSOuLE3E.js');
|
|
5
5
|
var factory = require('./factory-DYuJXHFx.js');
|
|
6
6
|
|
|
7
7
|
const ivRecentlyViewedCss = ".iv-recently-viewed{background:var(--iv-recently-viewed-background, none);padding:var(--iv-recently-viewed-padding, 1rem 0);margin:var(--iv-recently-viewed-margin, 0);border:var(--iv-recently-viewed-border, none);border-radius:var(--iv-recently-viewed-radius, 0);position:relative;box-sizing:border-box;width:100%;display:block}.iv-recently-viewed-title{margin:var(--iv-recently-viewed-title-margin, 0 0 0.75rem);font-size:var(--iv-recently-viewed-title-font-size, 1.25rem);line-height:var(--iv-recently-viewed-title-line-height, 1.2);font-weight:var(--iv-recently-viewed-title-weight, 600);color:var(--iv-recently-viewed-title-color, inherit)}.iv-recently-viewed__list,.iv-recently-viewed__items{list-style:none;margin:0;padding:0}.iv-recently-viewed iv-layout,.iv-recently-viewed .iv-layout{--gap:var(--iv-recently-viewed-gap, 1rem);gap:var(--iv-recently-viewed-gap, 1rem)}.iv-recently-viewed iv-card,.iv-recently-viewed .iv-card{max-width:var(--iv-recently-viewed-card-max-width, 260px);width:100%}.iv-recently-viewed-no-history,.iv-recently-viewed__no-history,.iv-recently-viewed-no-history-message{font-size:var(--iv-recently-viewed-no-history-font-size, 0.875rem);color:var(--iv-recently-viewed-no-history-color, #666);padding:var(--iv-recently-viewed-no-history-padding, 0.5rem 0)}.iv-recently-viewed>*+*{margin-top:var(--iv-recently-viewed-stack-gap, 1rem)}@media (min-width: 640px){.iv-recently-viewed{padding:var(--iv-recently-viewed-padding-md, var(--iv-recently-viewed-padding, 1.25rem 0))}.iv-recently-viewed-title{font-size:var(--iv-recently-viewed-title-font-size-md, 1.375rem)}}@media (min-width: 960px){.iv-recently-viewed-title{font-size:var(--iv-recently-viewed-title-font-size-lg, 1.5rem)}}.iv-recently-viewed::after{content:var(--iv-recently-viewed-after-content, \"\");display:var(--iv-recently-viewed-after-display, none);position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--iv-recently-viewed-after-border-color, currentColor);opacity:var(--iv-recently-viewed-after-opacity, 0.1)}.iv-recently-viewed[data-tight]{--iv-recently-viewed-gap:0.5rem;--iv-recently-viewed-stack-gap:0.75rem}";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-LRS48Qt3.js');
|
|
4
4
|
|
|
5
5
|
const ivShopTheLookCss = ":host{display:block}.iv-shop-the-look-image-container{position:relative;width:400px;height:300px;background:#eee;overflow:hidden}";
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-LRS48Qt3.js');
|
|
4
4
|
var factory = require('./factory-DYuJXHFx.js');
|
|
5
5
|
|
|
6
6
|
const ivSuggestCss = ".iv-suggest{box-sizing:border-box;width:var(--iv-suggest-width, 100%);max-width:var(--iv-suggest-max-width, 100%);margin:var(--iv-suggest-margin, 0);padding:var(--iv-suggest-padding, 0);background:var(--iv-suggest-bg, transparent);border:var(--iv-suggest-border, none);border-radius:var(--iv-suggest-radius, 0);box-shadow:var(--iv-suggest-shadow, none);color:var(--iv-suggest-color, inherit);--iv-layout-gap:var(--iv-suggest-layout-gap, 1.25rem)}.iv-suggest-queries,.iv-suggest-collections,.iv-suggest-products,.iv-suggest-banner{box-sizing:border-box;padding:var(--iv-suggest-section-padding, 0);margin:var(--iv-suggest-section-margin, 0);background:var(--iv-suggest-section-bg, transparent);border:var(--iv-suggest-section-border, none);border-radius:var(--iv-suggest-section-radius, 0)}.iv-suggest-queries-title,.iv-suggest-products-title,.iv-suggest-collections-title{display:block;margin:var(--iv-suggest-title-margin, 0 0 0.75rem 0);font-size:var(--iv-suggest-title-font-size, 1rem);font-weight:var(--iv-suggest-title-font-weight, 600);line-height:var(--iv-suggest-title-line-height, 1.2);letter-spacing:var(--iv-suggest-title-letter-spacing, normal)}.iv-suggest-top-queries{display:flex;flex-wrap:wrap;gap:var(--iv-suggest-queries-gap, 0.5rem)}.iv-suggest-top-queries .iv-link{--iv-link-color:var(--iv-suggest-query-link-color, inherit);--iv-link-hover-color:var(--iv-suggest-query-link-hover-color, var(--iv-link-color, inherit));font-size:var(--iv-suggest-query-link-font-size, 0.875rem);background:var(--iv-suggest-query-link-bg, transparent);padding:var(--iv-suggest-query-link-padding, 0);border:var(--iv-suggest-query-link-border, none);border-radius:var(--iv-suggest-query-link-radius, 0)}.iv-suggest .iv-card{--iv-card-padding:var(--iv-suggest-card-padding, var(--iv-card-padding, 0));margin:var(--iv-suggest-card-margin, 0)}.iv-suggest-banner{position:relative;overflow:hidden}.iv-suggest-banner-image img{display:block;width:100%;height:auto;object-fit:var(--iv-suggest-banner-image-object-fit, cover);aspect-ratio:var(--iv-suggest-banner-image-aspect-ratio, auto)}.iv-suggest-no-data{font-size:var(--iv-suggest-empty-font-size, 0.8125rem);opacity:var(--iv-suggest-empty-opacity, 0.8);padding:var(--iv-suggest-empty-padding, 0)}.iv-suggest--scroll-x .iv-layout{display:flex !important;overflow-x:auto;scrollbar-width:var(--iv-suggest-scrollbar-width, thin);-webkit-overflow-scrolling:touch}.iv-suggest--scroll-x .iv-layout>*{flex:0 0 var(--iv-suggest-scroll-item-width, 70%)}@media (min-width: 40rem){.iv-suggest{--iv-suggest-layout-gap:var(--iv-suggest-layout-gap-md, var(--iv-suggest-layout-gap, 1.25rem))}}@media (min-width: 64rem){.iv-suggest{--iv-suggest-layout-gap:var(--iv-suggest-layout-gap-lg, var(--iv-suggest-layout-gap, 1.25rem))}}@media (prefers-reduced-motion: reduce){.iv-suggest{scroll-behavior:auto}}";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-LRS48Qt3.js');
|
|
4
4
|
|
|
5
5
|
const ivToastContainerCss = ".iv-toast-container{position:fixed;top:1rem;left:1rem;display:flex;flex-direction:column;gap:1rem;z-index:10000;pointer-events:none}";
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-LRS48Qt3.js');
|
|
4
4
|
|
|
5
5
|
const ivToastCss = ".iv-toast{position:relative;display:flex;align-items:flex-start;gap:0.75rem;line-height:1.4;min-width:26rem;max-width:36rem;padding:1.1rem 1.5rem 1.1rem 1.75rem;border-radius:0.5rem;font-size:var(--iv-toast-font-size, 1.05rem);font-weight:500;opacity:0;transform:translateY(2rem) scale(0.95);box-shadow:0 8px 32px rgba(0, 0, 0, 0.18), 0 2px 6px rgba(0, 0, 0, 0.12);border:1px solid var(--iv-toast-border, rgba(0, 0, 0, 0.12));background-clip:padding-box;backdrop-filter:var(--iv-toast-backdrop-filter, none);-webkit-font-smoothing:antialiased;animation:toast-in 0.5s cubic-bezier(0.4, 1.4, 0.6, 1) forwards, toast-out 0.5s cubic-bezier(0.4, 1.4, 0.6, 1) forwards;animation-delay:0s, calc(var(--iv-toast-duration, 5s) - 0.5s);pointer-events:all;transition:box-shadow 0.25s ease, transform 0.25s ease}.iv-toast::before{content:\"\";position:absolute;inset:0 auto 0 0;width:0.4rem;border-radius:0.5rem 0 0 0.5rem;background:var(--iv-toast-accent, #6366f1)}.iv-toast:hover{box-shadow:0 10px 42px rgba(0, 0, 0, 0.22), 0 3px 10px rgba(0, 0, 0, 0.18);transform:translateY(-2px)}.iv-toast.info{background-color:var(--iv-toast-info-background, black);color:var(--iv-toast-info-color, white);--iv-toast-accent:var(--iv-toast-info-accent, #6366f1)}.iv-toast.success{background-color:var(--iv-toast-success-background, #d1fadf);color:var(--iv-toast-success-color, #065f46);--iv-toast-accent:var(--iv-toast-success-accent, #12b76a)}.iv-toast.warning{background-color:var(--iv-toast-warning-background, #ffe8c7);color:var(--iv-toast-warning-color, #7c2d12);--iv-toast-accent:var(--iv-toast-warning-accent, #f59e0b)}.iv-toast.error{background-color:var(--iv-toast-error-background, #ffe2e2);color:var(--iv-toast-error-color, #7f1d1d);--iv-toast-accent:var(--iv-toast-error-accent, #ef4444)}.iv-toast .iv-toast-message{margin:0;line-height:1.4;word-break:break-word;font-weight:600}@keyframes toast-in{0%{opacity:0;transform:translateY(1.25rem) scale(0.92)}55%{opacity:1;transform:translateY(-3px) scale(1.03)}75%{transform:translateY(2px) scale(0.997)}100%{opacity:1;transform:translateY(0) scale(1)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(1rem) scale(0.94)}}";
|
|
6
6
|
|
package/dist/cjs/loader.cjs.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
4
|
-
var appGlobals = require('./app-globals-
|
|
3
|
+
var index = require('./index-LRS48Qt3.js');
|
|
4
|
+
var appGlobals = require('./app-globals-CoHtVZOa.js');
|
|
5
5
|
|
|
6
6
|
const defineCustomElements = async (win, options) => {
|
|
7
7
|
if (typeof window === 'undefined') return undefined;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-LRS48Qt3.js');
|
|
4
4
|
|
|
5
5
|
const swInGridContentCss = "sw-in-grid-content{grid-column:span 2;grid-row:span 2}@media (max-width: 1024px){sw-in-grid-content{grid-row:span unset;aspect-ratio:4/5}}sw-in-grid-content .promo-card{position:relative;width:100%;height:100%;min-height:250px;padding:var(--promo-tile-padding) !important}@media (max-width: 1024px){sw-in-grid-content .promo-card{padding:calc(var(--promo-tile-padding) * var(--promo-tile-responsive-modifier))}}sw-in-grid-content .promo-card [slot=media]>img,sw-in-grid-content .promo-card [slot=media]>video{object-fit:cover;width:100%;height:100%;position:absolute;top:0;left:0;z-index:1}sw-in-grid-content .promo-card [slot=text]{position:absolute;bottom:var(--promo-tile-padding);left:var(--promo-tile-padding);z-index:2;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;height:100%;width:100%}@media (max-width: 1024px){sw-in-grid-content .promo-card [slot=text]{bottom:calc(var(--promo-tile-padding) * var(--promo-tile-responsive-modifier));left:calc(var(--promo-tile-padding) * var(--promo-tile-responsive-modifier));width:unset}}sw-in-grid-content .promo-card [slot=text].light-infill a,sw-in-grid-content .promo-card [slot=text].light-infill h3,sw-in-grid-content .promo-card [slot=text].light-infill h5,sw-in-grid-content .promo-card [slot=text].light-infill p{color:white}sw-in-grid-content .promo-card [slot=text].light-infill a::before{background:white}sw-in-grid-content .promo-card [slot=text].dark-infill a,sw-in-grid-content .promo-card [slot=text].dark-infill h3,sw-in-grid-content .promo-card [slot=text].dark-infill h5,sw-in-grid-content .promo-card [slot=text].dark-infill p{color:black}sw-in-grid-content .promo-card [slot=text].dark-infill a::before{background:black}sw-in-grid-content .promo-card [slot=text] a{position:relative;transition:all 0.5s}sw-in-grid-content .promo-card [slot=text] a::before{content:\"\";position:absolute;height:2px;width:0;bottom:-4px;left:0;transition:all 0.5s}sw-in-grid-content .promo-card [slot=text] a:hover{transition:all 0.5s}sw-in-grid-content .promo-card [slot=text] a:hover::before{transition:all 0.5s;width:100%}sw-in-grid-content .promo-card [slot=text] h3,sw-in-grid-content .promo-card [slot=text] h5,sw-in-grid-content .promo-card [slot=text] a,sw-in-grid-content .promo-card [slot=text] p{padding:0;margin:0 0 var(--promo-tile-item-spacing) 0;font-family:var(--font-base)}@media (max-width: 1024px){sw-in-grid-content .promo-card [slot=text] h3,sw-in-grid-content .promo-card [slot=text] h5,sw-in-grid-content .promo-card [slot=text] a,sw-in-grid-content .promo-card [slot=text] p{margin:0 0 calc(var(--promo-tile-item-spacing) * var(--promo-tile-responsive-modifier)) 0}}sw-in-grid-content .promo-card [slot=text] h5{font-size:var(--promo-tile-secondary-title-size)}@media (max-width: 1024px){sw-in-grid-content .promo-card [slot=text] h5{font-size:calc(var(--promo-tile-secondary-title-size) * var(--promo-tile-responsive-modifier))}}sw-in-grid-content .promo-card [slot=text] h3{font-size:var(--promo-tile-primary-title-size)}@media (max-width: 1024px){sw-in-grid-content .promo-card [slot=text] h3{font-size:calc(var(--promo-tile-primary-title-size) * var(--promo-tile-responsive-modifier))}}sw-in-grid-content .promo-card [slot=text] p,sw-in-grid-content .promo-card [slot=text] a{font-size:var(--promo-tile-text-size)}@media (max-width: 1024px){sw-in-grid-content .promo-card [slot=text] p,sw-in-grid-content .promo-card [slot=text] a{font-size:calc(var(--promo-tile-text-size) * var(--promo-tile-responsive-modifier))}}";
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-LRS48Qt3.js');
|
|
4
4
|
|
|
5
5
|
const swSizeGuideCss = ".iv-sw-button{margin-bottom:2.5rem;background:black;color:white;border:1px solid transparent;outline:none;padding:0.75rem 1.5rem;text-transform:uppercase;font-weight:400;border-radius:unset;font-size:1rem;cursor:pointer;transition:all 0.5s}.iv-sw-button:hover{transition:all 0.5s;border-color:black;background:white;color:black}.table-wrapper{max-height:420px;overflow-y:auto;background:#fff;border-radius:0.5rem;box-shadow:0 2px 8px rgba(0, 0, 0, 0.03);scrollbar-color:#111 #fff;scrollbar-width:thin}.table-wrapper::-webkit-scrollbar{width:10px;background:#fff}.table-wrapper::-webkit-scrollbar-thumb{background:#111;border-radius:0}.table-wrapper::-webkit-scrollbar-track{background:#fff;border-radius:0}.table-wrapper>table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;color:#222;background:#fff;border-radius:0.5rem}.table-wrapper>table th,.table-wrapper>table td{text-align:center;vertical-align:middle;padding:1.25rem 0.75rem;border-bottom:1px solid #ececec;color:#222;background:#fafafa}.table-wrapper>table th{position:sticky;top:0;font-weight:600;background:#f5f5f5;color:#111}.table-wrapper>table th>select{outline:0;border-radius:0;border:0;position:relative;font-size:inherit;background-color:transparent;padding:0.75em 1em}.table-wrapper>table tr:last-child td{border-bottom:none}.table-wrapper>table tbody tr{transition:background 0.2s}.table-wrapper>table tbody tr:hover{background:#f0f0f0}";
|
|
6
6
|
|
|
@@ -9,6 +9,7 @@ const w = (typeof window !== 'undefined') ? window : {};
|
|
|
9
9
|
export default async function intravenousGlobalInit() {
|
|
10
10
|
try {
|
|
11
11
|
if (!w.__IV_API_SETUP_DONE) {
|
|
12
|
+
console.log('[IV] Starting global API setup... app.ts');
|
|
12
13
|
await ignition();
|
|
13
14
|
w.__IV_API_SETUP_DONE = true;
|
|
14
15
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/global/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C,4EAA4E;AAC5E,+EAA+E;AAC/E,gDAAgD;AAChD,6DAA6D;AAC7D,aAAa;AACb,MAAM,CAAC,GAAQ,CAAC,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;AAE7D,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,qBAAqB;IACjD,IAAI,CAAC;QACH,IAAG,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC;YAC1B,MAAM,QAAQ,EAAE,CAAC;YACjB,CAAC,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAC/B,CAAC;QACD,IAAG,CAAC,CAAC,CAAC,wBAAwB,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,wBAAwB,EAAE,CAAC;gBAC9C,IAAG,IAAI;oBAAE,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACvC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;YACpD,CAAC;YACD,CAAC,CAAC,wBAAwB,GAAG,IAAI,CAAC;QACpC,CAAC;IACH,CAAC;IAAC,OAAM,GAAG,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;IAChD,CAAC;AACH,CAAC","sourcesContent":["import { ignition, fetchShopifyCurrencyCode } from '../utils/config/factory';\r\nimport { state } from '../utils/store/store';\r\n\r\n// Idempotent global init (prevents double execution if script loaded twice)\r\n// Also resolves Stencil v update expecting a default export from globalScript.\r\n// Flags kept minimal to avoid polluting window.\r\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n// @ts-ignore\r\nconst w: any = (typeof window !== 'undefined') ? window : {};\r\n\r\nexport default async function intravenousGlobalInit() {\r\n try {\r\n if(!w.__IV_API_SETUP_DONE) {\r\n await ignition();\r\n w.__IV_API_SETUP_DONE = true;\r\n }\r\n if(!w.__IV_CURRENCY_FETCH_DONE) {\r\n try {\r\n const code = await fetchShopifyCurrencyCode();\r\n if(code) state.setCurrencyCode(code);\r\n } catch (err) {\r\n console.debug('[IV] currency fetch skipped', err);\r\n }\r\n w.__IV_CURRENCY_FETCH_DONE = true;\r\n }\r\n } catch(err) {\r\n console.error('[IV] Global init failed', err);\r\n }\r\n}"]}
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/global/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C,4EAA4E;AAC5E,+EAA+E;AAC/E,gDAAgD;AAChD,6DAA6D;AAC7D,aAAa;AACb,MAAM,CAAC,GAAQ,CAAC,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;AAE7D,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,qBAAqB;IACjD,IAAI,CAAC;QACH,IAAG,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;YACxD,MAAM,QAAQ,EAAE,CAAC;YACjB,CAAC,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAC/B,CAAC;QACD,IAAG,CAAC,CAAC,CAAC,wBAAwB,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,wBAAwB,EAAE,CAAC;gBAC9C,IAAG,IAAI;oBAAE,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACvC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;YACpD,CAAC;YACD,CAAC,CAAC,wBAAwB,GAAG,IAAI,CAAC;QACpC,CAAC;IACH,CAAC;IAAC,OAAM,GAAG,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;IAChD,CAAC;AACH,CAAC","sourcesContent":["import { ignition, fetchShopifyCurrencyCode } from '../utils/config/factory';\r\nimport { state } from '../utils/store/store';\r\n\r\n// Idempotent global init (prevents double execution if script loaded twice)\r\n// Also resolves Stencil v update expecting a default export from globalScript.\r\n// Flags kept minimal to avoid polluting window.\r\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n// @ts-ignore\r\nconst w: any = (typeof window !== 'undefined') ? window : {};\r\n\r\nexport default async function intravenousGlobalInit(): Promise<void> {\r\n try {\r\n if(!w.__IV_API_SETUP_DONE) {\r\n console.log('[IV] Starting global API setup... app.ts');\r\n await ignition();\r\n w.__IV_API_SETUP_DONE = true;\r\n }\r\n if(!w.__IV_CURRENCY_FETCH_DONE) {\r\n try {\r\n const code = await fetchShopifyCurrencyCode();\r\n if(code) state.setCurrencyCode(code);\r\n } catch (err) {\r\n console.debug('[IV] currency fetch skipped', err);\r\n }\r\n w.__IV_CURRENCY_FETCH_DONE = true;\r\n }\r\n } catch(err) {\r\n console.error('[IV] Global init failed', err);\r\n }\r\n}"]}
|
|
@@ -73,6 +73,7 @@ export async function ignition() {
|
|
|
73
73
|
}
|
|
74
74
|
;
|
|
75
75
|
if (typeof window !== 'undefined') {
|
|
76
|
+
console.log('Ignition called form factory.ts.');
|
|
76
77
|
document.readyState === 'loading'
|
|
77
78
|
? document.addEventListener('DOMContentLoaded', () => { ignition(); })
|
|
78
79
|
: ignition();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../src/utils/config/factory.ts"],"names":[],"mappings":"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","sourcesContent":["import { state } from '../../utils/store/store';\r\nimport { createErrorHandler } from '../../utils/error_handling/factory';\r\n\r\nconst errors = createErrorHandler({ component: 'iv-set-up' });\r\n\r\nexport async function setStoreDomain(): Promise<void> {\r\n try {\r\n const storeUrl = typeof window !== 'undefined' && window.location ? window.location.hostname : '';\r\n if(!storeUrl) throw new Error('Could not set store domain.');\r\n state.shopDomain = storeUrl;\r\n\r\n console.log('[IV] Set shop domain to', state.shopDomain);\r\n\r\n } catch(err: any) {\r\n errors.handle({\r\n error: err,\r\n scope: 'SetStoreDomain',\r\n userMessage: 'Something has gone wrong, please try again.',\r\n devMessage: 'Failed to set store domain in store.ts',\r\n severity: 'critical'\r\n });\r\n };\r\n};\r\n\r\nexport async function setToken(): Promise<void> {\r\n try {\r\n const token = document.documentElement.getAttribute('store-token');\r\n if(!token) throw new Error('Store token not found on document.');\r\n state.storefrontToken = token;\r\n console.log('[IV] Set store token to', state.storefrontToken);\r\n } catch(err: any) {\r\n errors.handle({\r\n error: err,\r\n scope: 'SetToken',\r\n userMessage: 'Something has gone wrong, please try again.',\r\n devMessage: 'Failed to set store token in store.ts',\r\n severity: 'critical'\r\n });\r\n };\r\n};\r\n\r\nexport async function setEndpoint(): Promise<void> {\r\n try {\r\n const endpoint = state.shopDomain;\r\n if(!endpoint) throw new Error('Shop domain not set in store.');\r\n state.shopDomainApi = endpoint + '.myshopify.com';\r\n console.log('[IV] Set shop domain API to', state.shopDomainApi);\r\n } catch(err: any) {\r\n errors.handle({\r\n error: err,\r\n scope: 'SetEndpoint',\r\n userMessage: 'Something has gone wrong, please try again.',\r\n devMessage: 'Failed to set store endpoint in store.ts',\r\n severity: 'critical'\r\n });\r\n };\r\n}; \r\n\r\n// Check where this is called! \r\nexport async function ignition(): Promise<void> {\r\n console.log('[IV] Starting API setup ignition...');\r\n await setStoreDomain();\r\n console.log('[IV] Store domain set.');\r\n await setToken();\r\n console.log('[IV] Store token set.');\r\n await setEndpoint();\r\n console.log('[IV] Store endpoint set.');\r\n};\r\n\r\nif(typeof window !== 'undefined') {\r\n document.readyState === 'loading'\r\n ? document.addEventListener('DOMContentLoaded', () => { ignition(); })\r\n : ignition();\r\n};\r\n\r\nexport async function fetchShopifyCurrencyCode(): Promise<string> {\r\n try {\r\n const url = '/cart.js';\r\n const response = await fetch(url);\r\n const data = await response.json();\r\n return data.currency || 'GBP';\r\n } catch (error) {\r\n console.error('Error fetching cart:', error);\r\n return 'GBP';\r\n };\r\n};"]}
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../src/utils/config/factory.ts"],"names":[],"mappings":"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","sourcesContent":["import { state } from '../../utils/store/store';\r\nimport { createErrorHandler } from '../../utils/error_handling/factory';\r\n\r\nconst errors = createErrorHandler({ component: 'iv-set-up' });\r\n\r\nexport async function setStoreDomain(): Promise<void> {\r\n try {\r\n const storeUrl = typeof window !== 'undefined' && window.location ? window.location.hostname : '';\r\n if(!storeUrl) throw new Error('Could not set store domain.');\r\n state.shopDomain = storeUrl;\r\n\r\n console.log('[IV] Set shop domain to', state.shopDomain);\r\n\r\n } catch(err: any) {\r\n errors.handle({\r\n error: err,\r\n scope: 'SetStoreDomain',\r\n userMessage: 'Something has gone wrong, please try again.',\r\n devMessage: 'Failed to set store domain in store.ts',\r\n severity: 'critical'\r\n });\r\n };\r\n};\r\n\r\nexport async function setToken(): Promise<void> {\r\n try {\r\n const token = document.documentElement.getAttribute('store-token');\r\n if(!token) throw new Error('Store token not found on document.');\r\n state.storefrontToken = token;\r\n console.log('[IV] Set store token to', state.storefrontToken);\r\n } catch(err: any) {\r\n errors.handle({\r\n error: err,\r\n scope: 'SetToken',\r\n userMessage: 'Something has gone wrong, please try again.',\r\n devMessage: 'Failed to set store token in store.ts',\r\n severity: 'critical'\r\n });\r\n };\r\n};\r\n\r\nexport async function setEndpoint(): Promise<void> {\r\n try {\r\n const endpoint = state.shopDomain;\r\n if(!endpoint) throw new Error('Shop domain not set in store.');\r\n state.shopDomainApi = endpoint + '.myshopify.com';\r\n console.log('[IV] Set shop domain API to', state.shopDomainApi);\r\n } catch(err: any) {\r\n errors.handle({\r\n error: err,\r\n scope: 'SetEndpoint',\r\n userMessage: 'Something has gone wrong, please try again.',\r\n devMessage: 'Failed to set store endpoint in store.ts',\r\n severity: 'critical'\r\n });\r\n };\r\n}; \r\n\r\n// Check where this is called! \r\nexport async function ignition(): Promise<void> {\r\n console.log('[IV] Starting API setup ignition...');\r\n await setStoreDomain();\r\n console.log('[IV] Store domain set.');\r\n await setToken();\r\n console.log('[IV] Store token set.');\r\n await setEndpoint();\r\n console.log('[IV] Store endpoint set.');\r\n};\r\n\r\nif(typeof window !== 'undefined') {\r\n console.log('Ignition called form factory.ts.');\r\n document.readyState === 'loading'\r\n ? document.addEventListener('DOMContentLoaded', () => { ignition(); })\r\n : ignition();\r\n};\r\n\r\nexport async function fetchShopifyCurrencyCode(): Promise<string> {\r\n try {\r\n const url = '/cart.js';\r\n const response = await fetch(url);\r\n const data = await response.json();\r\n return data.currency || 'GBP';\r\n } catch (error) {\r\n console.error('Error fetching cart:', error);\r\n return 'GBP';\r\n };\r\n};"]}
|
|
@@ -3,8 +3,11 @@ async function shopifyFetch(query, variables = {}) {
|
|
|
3
3
|
try {
|
|
4
4
|
if (!state.shopDomainApi || !state.storefrontToken)
|
|
5
5
|
throw new Error('Missing Shopify configuration (shopDomain/storefrontToken)');
|
|
6
|
-
const endpoint = `https://${state.shopDomainApi}/api/2025-07/graphql.json`;
|
|
6
|
+
// const endpoint = `https://${state.shopDomainApi}/api/2025-07/graphql.json`;
|
|
7
|
+
const endpoint = 'https://craftnberry-co-uk.myshopify.com/api/2025-07/graphql.json';
|
|
8
|
+
console.log('[IV] Shopify Fetch to', endpoint);
|
|
7
9
|
const token = state.storefrontToken;
|
|
10
|
+
console.log('[IV] Using storefront token', token);
|
|
8
11
|
const res = await fetch(endpoint, {
|
|
9
12
|
method: 'POST',
|
|
10
13
|
headers: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../src/utils/storefront_api/factory.ts"],"names":[],"mappings":"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","sourcesContent":["import { state, showToast } from \"../store/store\";\r\n\r\nasync function shopifyFetch(query: string, variables: Record<string, any> = {}): Promise<any> {\r\n try {\r\n if(!state.shopDomainApi || !state.storefrontToken) throw new Error('Missing Shopify configuration (shopDomain/storefrontToken)');\r\n const endpoint = `https://${state.shopDomainApi}/api/2025-07/graphql.json`;\r\n const token = state.storefrontToken;\r\n const res = await fetch(endpoint, {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n 'X-Shopify-Storefront-Access-Token': token\r\n },\r\n body: JSON.stringify({ query, variables })\r\n });\r\n const json = await res.json();\r\n if(json.errors) throw new Error(json.errors.map((e: any) => e.message).join(', '));\r\n return json.data;\r\n } catch(error) {\r\n console.error('Shopify Fetch Error:', error);\r\n throw error; \r\n };\r\n};\r\n\r\nexport async function getIdFromHandle(handle: string): Promise<string | null> {\r\n const query = `\r\n query ($handle: String!) {\r\n product(handle: $handle) {\r\n id\r\n }\r\n }`;\r\n try {\r\n const data = await shopifyFetch(query, { handle });\r\n return data?.product?.id || null;\r\n } catch (error) {\r\n console.error('getIdFromHandle error:', error);\r\n return null;\r\n };\r\n};\r\n\r\n// Field + normalization helpers\r\nconst BASE_PRODUCT_FIELDS = ['id','handle','title'];\r\nconst DEFAULT_VARIANT_FIELDS = ['id','title','price { amount currencyCode }'];\r\n\r\nfunction mergeFields(requested: string[] | string, defaults: string[]): string[] {\r\n const req = (Array.isArray(requested) ? requested : requested.split(','))\r\n .map(f => f.trim())\r\n .filter(Boolean);\r\n const seen = new Set<string>();\r\n const ordered: string[] = [];\r\n for(const f of req) { \r\n if(!seen.has(f)) { \r\n seen.add(f); ordered.push(f); \r\n }; \r\n };\r\n for(const d of defaults) { \r\n if(!seen.has(d)) { \r\n seen.add(d); \r\n ordered.push(d); \r\n }; \r\n };\r\n return ordered;\r\n};\r\n\r\nfunction expandProductFields(fields: string[]): string {\r\n return fields\r\n .filter(f => f !== 'price')\r\n .map(f => {\r\n if(f === 'images') return 'images(first: 10) { nodes { url altText } }';\r\n return f;\r\n })\r\n .join('\\n');\r\n};\r\n\r\nfunction variantSelection(fields: string[] = DEFAULT_VARIANT_FIELDS): string {\r\n return fields.join('\\n');\r\n};\r\n\r\ninterface NormalizedProduct {\r\n id: string;\r\n handle?: string;\r\n title?: string;\r\n variantId?: string;\r\n price?: string | null;\r\n imageUrl?: string | null;\r\n imageAlt?: string | null;\r\n // index signature for dynamic requested fields\r\n [key: string]: any;\r\n};\r\n\r\nfunction normalizeProduct(product: any, selectedVariant?: any): NormalizedProduct {\r\n const variant = selectedVariant || product.variants?.edges?.[0]?.node || {};\r\n let imageUrl = null;\r\n let imageAlt = null;\r\n if(product.images?.nodes && product.images.nodes.length > 0) {\r\n imageUrl = product.images.nodes[0].url || null;\r\n imageAlt = product.images.nodes[0].altText || null;\r\n };\r\n const { id: variantId, price } = variant;\r\n return {\r\n id: product.id,\r\n ...Object.fromEntries(Object.entries(product).filter(([key]) => key !== 'variants')),\r\n variantId,\r\n price: price?.amount || null,\r\n imageUrl,\r\n imageAlt,\r\n };\r\n};\r\n\r\n// Query builders\r\nfunction buildProductsQuery(fieldsString: string, variantFieldsString: string) {\r\n return `\r\n query ($limit: Int!, $sortKey: ProductSortKeys!, $reverse: Boolean) {\r\n products(first: $limit, sortKey: $sortKey, reverse: $reverse) {\r\n edges {\r\n node {\r\n ${fieldsString}\r\n variants(first: 1) { edges { node { ${variantFieldsString} } } }\r\n }\r\n }\r\n }\r\n }`;\r\n};\r\n\r\nfunction buildCollectionProductsQuery(fieldsString: string, variantFieldsString: string) {\r\n return `\r\n query ($handle: String!, $limit: Int!, $sortKey: ProductCollectionSortKeys!, $reverse: Boolean) {\r\n collection(handle: $handle) {\r\n products(first: $limit, sortKey: $sortKey, reverse: $reverse) {\r\n edges {\r\n node {\r\n ${fieldsString}\r\n variants(first: 1) { edges { node { ${variantFieldsString} } } }\r\n }\r\n }\r\n }\r\n }\r\n }`;\r\n};\r\n\r\nfunction buildSingleProductQuery(fieldsString: string, variantFieldsString: string) {\r\n return `\r\n query ($id: ID!) {\r\n product(id: $id) {\r\n ${fieldsString}\r\n variants(first: 1) { edges { node { ${variantFieldsString} } } }\r\n }\r\n }`;\r\n};\r\n\r\nfunction buildVariantProductQuery(productFieldsString: string, variantFieldsString: string) {\r\n return `\r\n query ($id: ID!) {\r\n productVariant(id: $id) {\r\n ${variantFieldsString}\r\n product {\r\n ${productFieldsString}\r\n variants(first: 1) { edges { node { ${variantFieldsString} } } }\r\n }\r\n }\r\n }`;\r\n};\r\n\r\n// Public API\r\nexport async function fetchProducts(limit: number, collectionHandle: string, sortKey: string, fields: string[] | string, reversed: boolean = false) {\r\n try {\r\n const merged = mergeFields(fields, BASE_PRODUCT_FIELDS);\r\n const fieldsString = expandProductFields(merged);\r\n const variantFieldsString = variantSelection();\r\n const isAll = !collectionHandle || collectionHandle === 'all';\r\n const query = isAll ? buildProductsQuery(fieldsString, variantFieldsString) : buildCollectionProductsQuery(fieldsString, variantFieldsString);\r\n const reverse = !!reversed;\r\n const variables: Record<string, any> = isAll ? { limit, sortKey, reverse } : { handle: collectionHandle, limit, sortKey, reverse };\r\n const data = await shopifyFetch(query, variables);\r\n const productEdges = data.products?.edges || data.collection?.products?.edges || [];\r\n return productEdges.map((edge: any) => normalizeProduct(edge.node));\r\n } catch(error) { \r\n console.error('Fetch Products Error:', error); throw error;\r\n };\r\n};\r\n\r\nexport async function fetchProductByID(id: string, fields: string[] | string, options?: { variantId?: string }): Promise<NormalizedProduct | null> {\r\n try {\r\n if(options?.variantId) return await getVariantProduct(options.variantId, fields);\r\n const merged = mergeFields(fields, BASE_PRODUCT_FIELDS);\r\n const fieldsString = expandProductFields(merged);\r\n const variantFieldsString = variantSelection();\r\n const query = buildSingleProductQuery(fieldsString, variantFieldsString);\r\n const data = await shopifyFetch(query, { id });\r\n const product = data?.product;\r\n if(!product) return null;\r\n return normalizeProduct(product);\r\n } catch(error) { console.error('Fetch Product By ID Error:', error); throw error; };\r\n};\r\n\r\nexport async function getVariantProduct(variantId: string, fields: string[] | string): Promise<NormalizedProduct | null> {\r\n try {\r\n const merged = mergeFields(fields, BASE_PRODUCT_FIELDS);\r\n const productFieldsString = expandProductFields(merged);\r\n const variantFieldsString = variantSelection();\r\n const query = buildVariantProductQuery(productFieldsString, variantFieldsString);\r\n const data = await shopifyFetch(query, { id: variantId });\r\n const variantNode = data?.productVariant;\r\n if(!variantNode) return null;\r\n const product = variantNode.product;\r\n if(!product) return null;\r\n return normalizeProduct(product, variantNode); \r\n } catch(error) { console.error('Get Variant Product Error:', error); throw error; };\r\n};\r\n\r\nexport async function addToCart(options: {\r\n id: number;\r\n quantity?: number;\r\n properties?: Record<string, any>;\r\n}) {\r\n try {\r\n console.log('IV add to cart called');\r\n if(!options.id) throw new Error('No variant id provided for addToCart');\r\n const quantity = options.quantity || 1;\r\n const properties = options.properties || {};\r\n const payload = {\r\n items: [\r\n {\r\n id: options.id,\r\n quantity,\r\n properties\r\n }\r\n ]\r\n };\r\n const url = '/cart/add.js';\r\n const res = await fetch(url, {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n 'Accept': 'application/json',\r\n 'X-Requested-With': 'XMLHttpRequest'\r\n },\r\n body: JSON.stringify(payload)\r\n });\r\n if(!res.ok) {\r\n const errorText = await res.text();\r\n throw new Error(errorText);\r\n };\r\n const cartItem = await res.json();\r\n showToast('Added to cart!', 'success', 3000);\r\n return cartItem;\r\n } catch (error) {\r\n showToast('Error adding to cart', 'error', 5000);\r\n throw error;\r\n };\r\n};"]}
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../src/utils/storefront_api/factory.ts"],"names":[],"mappings":"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","sourcesContent":["import { state, showToast } from \"../store/store\";\r\nasync function shopifyFetch(query: string, variables: Record<string, any> = {}): Promise<any> {\r\n try {\r\n if(!state.shopDomainApi || !state.storefrontToken) throw new Error('Missing Shopify configuration (shopDomain/storefrontToken)');\r\n // const endpoint = `https://${state.shopDomainApi}/api/2025-07/graphql.json`;\r\n const endpoint = 'https://craftnberry-co-uk.myshopify.com/api/2025-07/graphql.json';\r\n console.log('[IV] Shopify Fetch to', endpoint);\r\n const token = state.storefrontToken;\r\n console.log('[IV] Using storefront token', token);\r\n const res = await fetch(endpoint, {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n 'X-Shopify-Storefront-Access-Token': token\r\n },\r\n body: JSON.stringify({ query, variables })\r\n });\r\n const json = await res.json();\r\n if(json.errors) throw new Error(json.errors.map((e: any) => e.message).join(', '));\r\n return json.data;\r\n } catch(error) {\r\n console.error('Shopify Fetch Error:', error);\r\n throw error; \r\n };\r\n};\r\n\r\nexport async function getIdFromHandle(handle: string): Promise<string | null> {\r\n const query = `\r\n query ($handle: String!) {\r\n product(handle: $handle) {\r\n id\r\n }\r\n }`;\r\n try {\r\n const data = await shopifyFetch(query, { handle });\r\n return data?.product?.id || null;\r\n } catch (error) {\r\n console.error('getIdFromHandle error:', error);\r\n return null;\r\n };\r\n};\r\n\r\n// Field + normalization helpers\r\nconst BASE_PRODUCT_FIELDS = ['id','handle','title'];\r\nconst DEFAULT_VARIANT_FIELDS = ['id','title','price { amount currencyCode }'];\r\n\r\nfunction mergeFields(requested: string[] | string, defaults: string[]): string[] {\r\n const req = (Array.isArray(requested) ? requested : requested.split(','))\r\n .map(f => f.trim())\r\n .filter(Boolean);\r\n const seen = new Set<string>();\r\n const ordered: string[] = [];\r\n for(const f of req) { \r\n if(!seen.has(f)) { \r\n seen.add(f); ordered.push(f); \r\n }; \r\n };\r\n for(const d of defaults) { \r\n if(!seen.has(d)) { \r\n seen.add(d); \r\n ordered.push(d); \r\n }; \r\n };\r\n return ordered;\r\n};\r\n\r\nfunction expandProductFields(fields: string[]): string {\r\n return fields\r\n .filter(f => f !== 'price')\r\n .map(f => {\r\n if(f === 'images') return 'images(first: 10) { nodes { url altText } }';\r\n return f;\r\n })\r\n .join('\\n');\r\n};\r\n\r\nfunction variantSelection(fields: string[] = DEFAULT_VARIANT_FIELDS): string {\r\n return fields.join('\\n');\r\n};\r\n\r\ninterface NormalizedProduct {\r\n id: string;\r\n handle?: string;\r\n title?: string;\r\n variantId?: string;\r\n price?: string | null;\r\n imageUrl?: string | null;\r\n imageAlt?: string | null;\r\n // index signature for dynamic requested fields\r\n [key: string]: any;\r\n};\r\n\r\nfunction normalizeProduct(product: any, selectedVariant?: any): NormalizedProduct {\r\n const variant = selectedVariant || product.variants?.edges?.[0]?.node || {};\r\n let imageUrl = null;\r\n let imageAlt = null;\r\n if(product.images?.nodes && product.images.nodes.length > 0) {\r\n imageUrl = product.images.nodes[0].url || null;\r\n imageAlt = product.images.nodes[0].altText || null;\r\n };\r\n const { id: variantId, price } = variant;\r\n return {\r\n id: product.id,\r\n ...Object.fromEntries(Object.entries(product).filter(([key]) => key !== 'variants')),\r\n variantId,\r\n price: price?.amount || null,\r\n imageUrl,\r\n imageAlt,\r\n };\r\n};\r\n\r\n// Query builders\r\nfunction buildProductsQuery(fieldsString: string, variantFieldsString: string) {\r\n return `\r\n query ($limit: Int!, $sortKey: ProductSortKeys!, $reverse: Boolean) {\r\n products(first: $limit, sortKey: $sortKey, reverse: $reverse) {\r\n edges {\r\n node {\r\n ${fieldsString}\r\n variants(first: 1) { edges { node { ${variantFieldsString} } } }\r\n }\r\n }\r\n }\r\n }`;\r\n};\r\n\r\nfunction buildCollectionProductsQuery(fieldsString: string, variantFieldsString: string) {\r\n return `\r\n query ($handle: String!, $limit: Int!, $sortKey: ProductCollectionSortKeys!, $reverse: Boolean) {\r\n collection(handle: $handle) {\r\n products(first: $limit, sortKey: $sortKey, reverse: $reverse) {\r\n edges {\r\n node {\r\n ${fieldsString}\r\n variants(first: 1) { edges { node { ${variantFieldsString} } } }\r\n }\r\n }\r\n }\r\n }\r\n }`;\r\n};\r\n\r\nfunction buildSingleProductQuery(fieldsString: string, variantFieldsString: string) {\r\n return `\r\n query ($id: ID!) {\r\n product(id: $id) {\r\n ${fieldsString}\r\n variants(first: 1) { edges { node { ${variantFieldsString} } } }\r\n }\r\n }`;\r\n};\r\n\r\nfunction buildVariantProductQuery(productFieldsString: string, variantFieldsString: string) {\r\n return `\r\n query ($id: ID!) {\r\n productVariant(id: $id) {\r\n ${variantFieldsString}\r\n product {\r\n ${productFieldsString}\r\n variants(first: 1) { edges { node { ${variantFieldsString} } } }\r\n }\r\n }\r\n }`;\r\n};\r\n\r\n// Public API\r\nexport async function fetchProducts(limit: number, collectionHandle: string, sortKey: string, fields: string[] | string, reversed: boolean = false) {\r\n try {\r\n const merged = mergeFields(fields, BASE_PRODUCT_FIELDS);\r\n const fieldsString = expandProductFields(merged);\r\n const variantFieldsString = variantSelection();\r\n const isAll = !collectionHandle || collectionHandle === 'all';\r\n const query = isAll ? buildProductsQuery(fieldsString, variantFieldsString) : buildCollectionProductsQuery(fieldsString, variantFieldsString);\r\n const reverse = !!reversed;\r\n const variables: Record<string, any> = isAll ? { limit, sortKey, reverse } : { handle: collectionHandle, limit, sortKey, reverse };\r\n const data = await shopifyFetch(query, variables);\r\n const productEdges = data.products?.edges || data.collection?.products?.edges || [];\r\n return productEdges.map((edge: any) => normalizeProduct(edge.node));\r\n } catch(error) { \r\n console.error('Fetch Products Error:', error); throw error;\r\n };\r\n};\r\n\r\nexport async function fetchProductByID(id: string, fields: string[] | string, options?: { variantId?: string }): Promise<NormalizedProduct | null> {\r\n try {\r\n if(options?.variantId) return await getVariantProduct(options.variantId, fields);\r\n const merged = mergeFields(fields, BASE_PRODUCT_FIELDS);\r\n const fieldsString = expandProductFields(merged);\r\n const variantFieldsString = variantSelection();\r\n const query = buildSingleProductQuery(fieldsString, variantFieldsString);\r\n const data = await shopifyFetch(query, { id });\r\n const product = data?.product;\r\n if(!product) return null;\r\n return normalizeProduct(product);\r\n } catch(error) { console.error('Fetch Product By ID Error:', error); throw error; };\r\n};\r\n\r\nexport async function getVariantProduct(variantId: string, fields: string[] | string): Promise<NormalizedProduct | null> {\r\n try {\r\n const merged = mergeFields(fields, BASE_PRODUCT_FIELDS);\r\n const productFieldsString = expandProductFields(merged);\r\n const variantFieldsString = variantSelection();\r\n const query = buildVariantProductQuery(productFieldsString, variantFieldsString);\r\n const data = await shopifyFetch(query, { id: variantId });\r\n const variantNode = data?.productVariant;\r\n if(!variantNode) return null;\r\n const product = variantNode.product;\r\n if(!product) return null;\r\n return normalizeProduct(product, variantNode); \r\n } catch(error) { console.error('Get Variant Product Error:', error); throw error; };\r\n};\r\n\r\nexport async function addToCart(options: {\r\n id: number;\r\n quantity?: number;\r\n properties?: Record<string, any>;\r\n}) {\r\n try {\r\n console.log('IV add to cart called');\r\n if(!options.id) throw new Error('No variant id provided for addToCart');\r\n const quantity = options.quantity || 1;\r\n const properties = options.properties || {};\r\n const payload = {\r\n items: [\r\n {\r\n id: options.id,\r\n quantity,\r\n properties\r\n }\r\n ]\r\n };\r\n const url = '/cart/add.js';\r\n const res = await fetch(url, {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n 'Accept': 'application/json',\r\n 'X-Requested-With': 'XMLHttpRequest'\r\n },\r\n body: JSON.stringify(payload)\r\n });\r\n if(!res.ok) {\r\n const errorText = await res.text();\r\n throw new Error(errorText);\r\n };\r\n const cartItem = await res.json();\r\n showToast('Added to cart!', 'success', 3000);\r\n return cartItem;\r\n } catch (error) {\r\n showToast('Error adding to cart', 'error', 5000);\r\n throw error;\r\n };\r\n};"]}
|
package/dist/components/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { i as ignition, f as fetchShopifyCurrencyCode, s as state } from './p-
|
|
2
|
-
export { g as getAssetPath, r as render, a as setAssetPath, b as setNonce, c as setPlatformOptions } from './p-
|
|
1
|
+
import { i as ignition, f as fetchShopifyCurrencyCode, s as state } from './p-XXtzVg2d.js';
|
|
2
|
+
export { g as getAssetPath, r as render, a as setAssetPath, b as setNonce, c as setPlatformOptions } from './p-XXtzVg2d.js';
|
|
3
3
|
|
|
4
4
|
// Idempotent global init (prevents double execution if script loaded twice)
|
|
5
5
|
// Also resolves Stencil v update expecting a default export from globalScript.
|
|
@@ -10,6 +10,7 @@ const w = (typeof window !== 'undefined') ? window : {};
|
|
|
10
10
|
async function intravenousGlobalInit() {
|
|
11
11
|
try {
|
|
12
12
|
if (!w.__IV_API_SETUP_DONE) {
|
|
13
|
+
console.log('[IV] Starting global API setup... app.ts');
|
|
13
14
|
await ignition();
|
|
14
15
|
w.__IV_API_SETUP_DONE = true;
|
|
15
16
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"index.js","mappings":";;;AAGA;AACA;AACA;AACA;AACA;AACA,MAAM,CAAC,GAAQ,CAAC,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,GAAG,EAAE;AAE7C,eAAe,qBAAqB,GAAA;AACjD,IAAA,IAAI;AACF,QAAA,IAAG,CAAC,CAAC,CAAC,mBAAmB,EAAE;
|
|
1
|
+
{"file":"index.js","mappings":";;;AAGA;AACA;AACA;AACA;AACA;AACA,MAAM,CAAC,GAAQ,CAAC,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,GAAG,EAAE;AAE7C,eAAe,qBAAqB,GAAA;AACjD,IAAA,IAAI;AACF,QAAA,IAAG,CAAC,CAAC,CAAC,mBAAmB,EAAE;AACzB,YAAA,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC;YACvD,MAAM,QAAQ,EAAE;AAChB,YAAA,CAAC,CAAC,mBAAmB,GAAG,IAAI;;AAE9B,QAAA,IAAG,CAAC,CAAC,CAAC,wBAAwB,EAAE;AAC9B,YAAA,IAAI;AACF,gBAAA,MAAM,IAAI,GAAG,MAAM,wBAAwB,EAAE;AAC7C,gBAAA,IAAG,IAAI;AAAE,oBAAA,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC;;YACpC,OAAO,GAAG,EAAE;AACZ,gBAAA,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,GAAG,CAAC;;AAEnD,YAAA,CAAC,CAAC,wBAAwB,GAAG,IAAI;;;IAEnC,OAAM,GAAG,EAAE;AACX,QAAA,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,GAAG,CAAC;;AAEjD;;AC5BO,MAAM,aAAa,GAAGA,qBAAe;;SCD5B,MAAM,CAAC,KAAc,EAAE,MAAe,EAAE,IAAa,EAAA;AACnE,IAAA,OAAO,CAAC,KAAK,IAAI,EAAE,KAAK,MAAM,GAAG,CAAI,CAAA,EAAA,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,GAAG,CAAI,CAAA,EAAA,IAAI,EAAE,GAAG,EAAE,CAAC;AAChF;;;;;;","names":["appGlobalScript"],"sources":["src/global/app.ts","@stencil/core/internal/app-globals","src/utils/utils.ts"],"sourcesContent":["import { ignition, fetchShopifyCurrencyCode } from '../utils/config/factory';\r\nimport { state } from '../utils/store/store';\r\n\r\n// Idempotent global init (prevents double execution if script loaded twice)\r\n// Also resolves Stencil v update expecting a default export from globalScript.\r\n// Flags kept minimal to avoid polluting window.\r\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n// @ts-ignore\r\nconst w: any = (typeof window !== 'undefined') ? window : {};\r\n\r\nexport default async function intravenousGlobalInit(): Promise<void> {\r\n try {\r\n if(!w.__IV_API_SETUP_DONE) {\r\n console.log('[IV] Starting global API setup... app.ts');\r\n await ignition();\r\n w.__IV_API_SETUP_DONE = true;\r\n }\r\n if(!w.__IV_CURRENCY_FETCH_DONE) {\r\n try {\r\n const code = await fetchShopifyCurrencyCode();\r\n if(code) state.setCurrencyCode(code);\r\n } catch (err) {\r\n console.debug('[IV] currency fetch skipped', err);\r\n }\r\n w.__IV_CURRENCY_FETCH_DONE = true;\r\n }\r\n } catch(err) {\r\n console.error('[IV] Global init failed', err);\r\n }\r\n}","import appGlobalScript from 'C:/Users/BeauBuxton/OneDrive - Herd Agency Limited/Documents/junk/The-Foxy-Library/src/global/app.ts';\nexport const globalScripts = appGlobalScript;\nexport const globalStyles = \"\";\n","export function format(first?: string, middle?: string, last?: string): string {\r\n return (first || '') + (middle ? ` ${middle}` : '') + (last ? ` ${last}` : '');\r\n};"],"version":3}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { p as proxyCustomElement, H, h } from './p-
|
|
1
|
+
import { p as proxyCustomElement, H, h } from './p-XXtzVg2d.js';
|
|
2
2
|
import { r as requestedFields } from './p-CN-O5_EW.js';
|
|
3
|
-
import { d as defineCustomElement$2 } from './p-
|
|
3
|
+
import { d as defineCustomElement$2 } from './p-D8GfK9z_.js';
|
|
4
4
|
|
|
5
5
|
const ivAccordionCss = ":host{display:block}";
|
|
6
6
|
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { p as proxyCustomElement, H, e as createErrorHandler, s as state, h } from './p-
|
|
2
|
-
import { f as fetchProducts } from './p-
|
|
1
|
+
import { p as proxyCustomElement, H, e as createErrorHandler, s as state, h } from './p-XXtzVg2d.js';
|
|
2
|
+
import { f as fetchProducts } from './p-BVL7DqEj.js';
|
|
3
3
|
import { p as productCache } from './p-Cx7D8zH9.js';
|
|
4
|
-
import { d as defineCustomElement$5 } from './p-
|
|
5
|
-
import { d as defineCustomElement$4 } from './p-
|
|
6
|
-
import { d as defineCustomElement$3 } from './p-
|
|
7
|
-
import { d as defineCustomElement$2 } from './p-
|
|
4
|
+
import { d as defineCustomElement$5 } from './p-DVvBorxR.js';
|
|
5
|
+
import { d as defineCustomElement$4 } from './p-IJUHvLzw.js';
|
|
6
|
+
import { d as defineCustomElement$3 } from './p-dpzz67iI.js';
|
|
7
|
+
import { d as defineCustomElement$2 } from './p-BMsgAmDZ.js';
|
|
8
8
|
|
|
9
9
|
const ivDynamicProductsCarouselCss = ":host{display:block}.iv-dynamic-products-carousel{position:relative}.iv-dynamic-products-carousel-carousel{position:relative}.iv-dynamic-products-carousel-viewport{overflow:hidden;width:100%}.iv-dynamic-products-carousel-track{display:flex;width:100%;transition:transform 0.55s cubic-bezier(0.4, 0.7, 0.2, 1);will-change:transform}.iv-dynamic-products-carousel-slide{flex:0 0 100%;box-sizing:border-box;padding:0.25rem 0.5rem;display:grid;grid-template-columns:repeat(6, minmax(0, 1fr));gap:1rem;align-items:stretch;grid-auto-rows:1fr}@media (max-width: 1200px){.iv-dynamic-products-carousel-slide{grid-template-columns:repeat(4, minmax(0, 1fr))}}@media (max-width: 900px){.iv-dynamic-products-carousel-slide{grid-template-columns:repeat(3, minmax(0, 1fr))}}@media (max-width: 640px){.iv-dynamic-products-carousel-slide{grid-template-columns:repeat(2, minmax(0, 1fr));gap:0.75rem}}.iv-dynamic-products-carousel-card{height:100%;display:flex;flex-direction:column;background:#fff;padding:0.75rem 0.75rem 0.9rem;box-shadow:0 2px 6px rgba(0, 0, 0, 0.08);transition:box-shadow 0.2s ease, transform 0.2s ease}.iv-dynamic-products-carousel-card .iv-card-title{line-height:1.2;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;min-height:2.4em}.iv-dynamic-products-carousel-card .iv-card-controls{margin-top:auto;}.iv-dynamic-products-carousel-card:hover{box-shadow:0 4px 14px rgba(0, 0, 0, 0.15);transform:translateY(-2px)}.iv-dynamic-products-carousel-card:active{transform:translateY(0);box-shadow:0 2px 6px rgba(0, 0, 0, 0.12)}.iv-dynamic-products-carousel-card img,.iv-dynamic-products-carousel-card picture,.iv-dynamic-products-carousel-card .media{width:100%;aspect-ratio:1/1;object-fit:contain;display:flex;align-items:center;justify-content:center;margin:0 0 0.65rem}.iv-dynamic-products-carousel-nav{position:absolute;top:50%;transform:translateY(-50%);background:var(--iv-carousel-nav-bg, rgba(0, 0, 0, 0.55));color:#fff;border:none;width:2.75rem;height:2.75rem;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(6px);box-shadow:0 4px 12px rgba(0, 0, 0, 0.25);transition:background 0.2s ease, transform 0.2s ease;outline:none;z-index:10}.iv-dynamic-products-carousel-nav:focus-visible{outline:2px solid #fff;outline-offset:3px}.iv-dynamic-products-carousel-nav:hover:not(:disabled){background:var(--iv-carousel-nav-bg-hover, rgba(0, 0, 0, 0.75));transform:translateY(-50%) scale(1.05);box-shadow:0 6px 18px rgba(0, 0, 0, 0.35)}.iv-dynamic-products-carousel-nav:disabled{opacity:0.4;cursor:default}.iv-dynamic-products-carousel-nav-prev{left:0.25rem}.iv-dynamic-products-carousel-nav-next{right:0.25rem}.iv-dynamic-products-carousel-status{margin-top:0.75rem;font-size:0.875rem;text-align:center;color:var(--iv-carousel-status-color, #555)}.iv-dynamic-products-carousel-viewport::-webkit-scrollbar{display:none}.iv-dynamic-products-carousel-viewport{-ms-overflow-style:none;scrollbar-width:none}";
|
|
10
10
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { p as proxyCustomElement, H, e as createErrorHandler, s as state, h } from './p-
|
|
2
|
-
import { f as fetchProducts } from './p-
|
|
1
|
+
import { p as proxyCustomElement, H, e as createErrorHandler, s as state, h } from './p-XXtzVg2d.js';
|
|
2
|
+
import { f as fetchProducts } from './p-BVL7DqEj.js';
|
|
3
3
|
import { p as productCache } from './p-Cx7D8zH9.js';
|
|
4
|
-
import { d as defineCustomElement$6 } from './p-
|
|
5
|
-
import { d as defineCustomElement$5 } from './p-
|
|
6
|
-
import { d as defineCustomElement$4 } from './p-
|
|
7
|
-
import { d as defineCustomElement$3 } from './p-
|
|
8
|
-
import { d as defineCustomElement$2 } from './p-
|
|
4
|
+
import { d as defineCustomElement$6 } from './p-DVvBorxR.js';
|
|
5
|
+
import { d as defineCustomElement$5 } from './p-IJUHvLzw.js';
|
|
6
|
+
import { d as defineCustomElement$4 } from './p-BpdXCMak.js';
|
|
7
|
+
import { d as defineCustomElement$3 } from './p-dpzz67iI.js';
|
|
8
|
+
import { d as defineCustomElement$2 } from './p-BMsgAmDZ.js';
|
|
9
9
|
|
|
10
10
|
const ivDynamicProductsCss = ".iv-dynamic-products{box-sizing:border-box;width:var(--iv-dynamic-products-width, 100%);max-width:var(--iv-dynamic-products-max-width, 100%);margin:var(--iv-dynamic-products-margin, 0);padding:var(--iv-dynamic-products-padding, 0);background:var(--iv-dynamic-products-bg, transparent);border:var(--iv-dynamic-products-border, none);border-radius:var(--iv-dynamic-products-radius, 0);box-shadow:var(--iv-dynamic-products-shadow, none);color:var(--iv-dynamic-products-color, inherit);--iv-layout-gap:var(--iv-dynamic-products-gap, 1.5rem)}.iv-dynamic-products-title{margin:var(--iv-dynamic-products-title-margin, 0 0 1rem 0);font-size:var(--iv-dynamic-products-title-font-size, clamp(1.125rem, 1vw + 1rem, 1.75rem));font-weight:var(--iv-dynamic-products-title-font-weight, 600);line-height:var(--iv-dynamic-products-title-line-height, 1.2);letter-spacing:var(--iv-dynamic-products-title-letter-spacing, normal)}.iv-dynamic-products-error,.iv-dynamic-products-empty{padding:var(--iv-dynamic-products-state-padding, 1rem);border:var(--iv-dynamic-products-state-border, none);background:var(--iv-dynamic-products-state-bg, transparent);color:var(--iv-dynamic-products-state-color, inherit);font-size:var(--iv-dynamic-products-state-font-size, 0.875rem);text-align:var(--iv-dynamic-products-state-text-align, center)}.iv-dynamic-products-products{width:100%;margin:var(--iv-dynamic-products-products-margin, 0);padding:var(--iv-dynamic-products-products-padding, 0)}.iv-layout--iv-dynamic-products-layout{--iv-layout-gap:var(--iv-dynamic-products-grid-gap, var(--iv-dynamic-products-gap, 1.5rem));align-items:var(--iv-dynamic-products-grid-align, stretch);justify-content:var(--iv-dynamic-products-grid-justify, flex-start)}.iv-dynamic-products .iv-card{margin:var(--iv-dynamic-products-card-margin, 0);--iv-card-padding:var(--iv-dynamic-products-card-padding, var(--iv-card-padding, 0))}@media (min-width: 40rem){.iv-dynamic-products{--iv-dynamic-products-gap:var(--iv-dynamic-products-gap-md, var(--iv-dynamic-products-gap, 1.5rem))}}@media (min-width: 64rem){.iv-dynamic-products{--iv-dynamic-products-gap:var(--iv-dynamic-products-gap-lg, var(--iv-dynamic-products-gap, 1.5rem))}}.iv-dynamic-products--scroll-x .iv-layout--iv-dynamic-products-layout{display:flex !important;overflow-x:auto;scrollbar-width:var(--iv-dynamic-products-scrollbar-width, thin);-webkit-overflow-scrolling:touch}.iv-dynamic-products--scroll-x .iv-layout--iv-dynamic-products-layout>*{flex:0 0 var(--iv-dynamic-products-scroll-item-width, 75%)}@media (prefers-reduced-motion: reduce){.iv-dynamic-products{scroll-behavior:auto}}";
|
|
11
11
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { p as proxyCustomElement, H, h } from './p-
|
|
1
|
+
import { p as proxyCustomElement, H, h } from './p-XXtzVg2d.js';
|
|
2
2
|
|
|
3
3
|
const ivFooterCss = ".iv-footer{display:grid;gap:2rem}.iv-footer .footer-social-links{grid-area:social}.iv-footer .footer-contact-links{grid-area:contact}.iv-footer .footer-newsletter-signup{grid-area:newsletter}.iv-footer .footer-menu{grid-area:menu}.iv-footer .footer-boilerplate{grid-area:boilerplate}.iv-footer .footer-payment-icons{grid-area:payment}";
|
|
4
4
|
|