PageSourceSearch

https://www.gardenersdream.co.uk/cdn/shop/t/1/assets/tagalys-scripts.js?v=174449896034933052031783948243

js gardenersdream.co.uk collected 2026-09-25 21:10:58 UTC 28,135 bytes, 153 lines download raw bytes

1const TagalysCustomisations={};TagalysCustomisations.lastAddedProductId=null,TagalysCustomisations.productBasedWidgetInstanceCount=0,TagalysCustomisations.cartDrawerWidgetRefreshFrame=null,TagalysCustomisations.cartDrawerWidgetRefreshTimeout=null,TagalysCustomisations.cartDrawerWidgetLoadingObserver=null,TagalysCustomisations.cartDrawerWidgetLoadingTimeout=null;let defaultTagalysLocale=window.tagalysConfig.locale,defaultTagalysCurrencyCode=window.tagalysConfig.currencyCode;const defaultTagalysCurrencyLabel=window.tagalysConfig.currencyLabel;let defaultTagalysCountry=window.tagalysConfig.country;const defaultTagalysBaseCountry=window.tagalysConfig.baseCountry;let defaultTagalysLanguage=window.tagalysConfig.language;const defaultTagalysServerUrl=window.tagalysConfig.serverUrl,storefrontApiAccessToken=window.tagalysConfig.storefrontApiAccessToken,tagalysProductBasedRecommendationId=window.tagalysConfig.tagalysProductBasedRecommendationId,tagalysDefaultProductBasedProductId=window.tagalysConfig.tagalysDefaultProductBasedProductId;window?.Shopify?.currency.active&&(defaultTagalysCurrencyCode=window.Shopify.currency.active),window?.Shopify?.country&&(defaultTagalysCountry=window.Shopify.country,defaultTagalysLanguage=window.Shopify.locale,defaultTagalysLocale=`${defaultTagalysLanguage}-${defaultTagalysCountry.toUpperCase()}`),TagalysCustomisations.getVariantOptionValues=function(variant){return Array.isArray(variant?.options)&&variant.options.length>0?variant.options.filter(Boolean):[variant?.option1,variant?.option2,variant?.option3].filter(Boolean)},TagalysCustomisations.getVariantLabel=function(variant){const optionValues=TagalysCustomisations.getVariantOptionValues(variant);return optionValues.length>0?optionValues.join(" / "):variant?.title||""},TagalysCustomisations.updateProductCardPrices=function(cardElement,helpers,variants,fallbackVariant){if(!cardElement||!helpers)return;const pricesElement=cardElement.querySelector("[data-tagalys-product-prices]");if(!pricesElement)return;const selectedVariantId=cardElement.querySelector("[data-tagalys-variant-select]")?.value,variant=variants.find(entry=>String(entry.id)===String(selectedVariantId))||fallbackVariant||variants.find(entry=>entry.available!==!1)||variants[0];if(!variant||variant.price==null)return;const isOnSale=helpers.isProductOnSale(variant.compare_at_price,variant.price),regularPriceSpanClass="cart-drawer__product-card-price cart-drawer__product-card-price--regular product-price-regular";pricesElement.classList.toggle("discounted",isOnSale),pricesElement.classList.toggle("full-price",!isOnSale);let discountedEl=pricesElement.querySelector(".cart-drawer__product-card-price--discounted"),regularEl=pricesElement.querySelector(".cart-drawer__product-card-price--regular");if(isOnSale){discountedEl||(discountedEl=document.createElement("span"),discountedEl.className="cart-drawer__product-card-price cart-drawer__product-card-price--discounted product-price-discounted",pricesElement.prepend(discountedEl)),discountedEl.textContent=helpers.formatCurrency(variant.price),regularEl||(regularEl=document.createElement("span"),regularEl.className=regularPriceSpanClass,pricesElement.appendChild(regularEl)),regularEl.textContent=helpers.formatCurrency(variant.compare_at_price);return}discountedEl?.remove(),regularEl||(regularEl=document.createElement("span"),regularEl.className=regularPriceSpanClass,pricesElement.appendChild(regularEl)),regularEl.textContent=helpers.formatCurrency(variant.price)},TagalysCustomisations.hasMeaningfulVariantLabel=function(variant,{hasMultipleVariants=!1}={}){const optionValues=TagalysCustomisations.getVariantOptionValues(variant);return optionValues.length>1?!0:(optionValues.length===1||!!variant?.title)&&hasMultipleVariants},TagalysCustomisations.getProductVariants=function(product){const candidates=[];Array.isArray(product?.variants)&&candidates.push(...product.variants),product?.selected_or_first_available_variant&&candidates.push(product.selected_or_first_available_variant),product?.first_available_variant&&candidates.push(product.first_available_variant);const uniqueVariants=[],seenVariantIds=new Set;
1return candidates.forEach(variant=>{!variant?.id||seenVariantIds.has(String(variant.id))||(seenVariantIds.add(String(variant.id)),uniqueVariants.push(variant))}),uniqueVariants},TagalysCustomisations.recommendationCarouselDragState={startX:0,startY:0,isPointerDown:!1,allowClick:!0,activePointerId:null},TagalysCustomisations.resetRecommendationCarouselDragState=function({allowClick=!0}={}){TagalysCustomisations.recommendationCarouselDragState.isPointerDown=!1,TagalysCustomisations.recommendationCarouselDragState.allowClick=allowClick,TagalysCustomisations.recommendationCarouselDragState.activePointerId=null},TagalysCustomisations.getQuickAddState=function(product){const variants=TagalysCustomisations.getProductVariants(product),quickAddVariants=variants.filter(variant=>!variant?.requires_selling_plan),availableVariants=quickAddVariants.filter(variant=>variant.available!==!1),firstAvailableVariant=availableVariants[0]||null,hasMultipleVariants=variants.length>1,hasVariantSelector=quickAddVariants.length>1||quickAddVariants.length===1&&TagalysCustomisations.hasMeaningfulVariantLabel(quickAddVariants[0],{hasMultipleVariants});return{variants:quickAddVariants,availableVariants,firstAvailableVariant,hasVariantSelector}},TagalysCustomisations.stopCardInteraction=function(event){event.preventDefault(),event.stopPropagation()},TagalysCustomisations.setQuickAddError=function(cardElement,message=""){if(!cardElement)return;const errorElement=cardElement.querySelector("[data-tagalys-quick-add-error]");errorElement&&(errorElement.hidden=!message,errorElement.textContent=message)},TagalysCustomisations.setQuickAddLoading=function(buttonElement,isLoading){if(!buttonElement)return;buttonElement.classList.toggle("loading",isLoading),buttonElement.disabled=isLoading,buttonElement.setAttribute("aria-busy",isLoading?"true":"false");const labelElement=buttonElement.querySelector("[data-tagalys-add-label]");labelElement&&(labelElement.textContent=isLoading?window.tagalysConfig.adding:window.tagalysConfig.add)},TagalysCustomisations.getProductIdFromCartAddResponse=function(response){const productId=response?.items?.[0]?.product_id||response?.product_id;return productId?String(productId):null},TagalysCustomisations.setLastAddedProductId=function(productId){TagalysCustomisations.lastAddedProductId=productId?String(productId):null},TagalysCustomisations.syncCartDrawerRecommendationContext=function(cartData){if(!cartData)return;const cartProductIds=Array.isArray(cartData?.items)?cartData.items.map(item=>item?.product_id).filter(Boolean).map(String):[],responseProductId=TagalysCustomisations.getProductIdFromCartAddResponse(cartData);if(cartProductIds.length===0){responseProductId&&TagalysCustomisations.setLastAddedProductId(responseProductId);return}TagalysCustomisations.lastAddedProductId&&cartProductIds.includes(TagalysCustomisations.lastAddedProductId)||TagalysCustomisations.setLastAddedProductId(responseProductId||cartProductIds[0])},TagalysCustomisations.getCartProductIdsFromMarkup=function(){const cartItems=document.querySelectorAll("#CartDrawer [data-cart-product-id]"),seenProductIds=new Set;return Array.from(cartItems).map(item=>item.dataset.cartProductId).filter(productId=>!productId||seenProductIds.has(productId)?!1:(seenProductIds.add(productId),!0))},TagalysCustomisations.getProductBasedWidgetProductIds=function(){const cartProductIds=TagalysCustomisations.getCartProductIdsFromMarkup(),lastAddedProductId=TagalysCustomisations.lastAddedProductId,defaultProductId=tagalysDefaultProductBasedProductId?String(tagalysDefaultProductBasedProductId):null;return lastAddedProductId&&cartProductIds.includes(lastAddedProductId)?[lastAddedProductId,...cartProductIds.filter(productId=>productId!==lastAddedProductId)].slice(0,3):cartProductIds.length>0?cartProductIds.slice(0,3):defaultProductId?[defaultProductId]:[]},TagalysCustomisations.getProductBasedWidgetSelector=function(widgetElement){return TagalysCustomisations.productBasedWidgetInstanceCount+=1,widgetElement.innerHTML="",widgetElement.setAttribute("data-tagalys-widget-instance",String(TagalysCustomisations.productBasedWidgetInstanceCount)),`[data-product-based-widget][data-tagalys-widget-instance="${TagalysCustomisations.productBasedWidgetInstanceCount}"]`},TagalysCustomisations.getCartDrawerWidgetElement=function(){return document.querySelector("[data-product-based-widget]")},TagalysCustomisations.getCartDrawerWidgetHost=function(widgetElement=TagalysCustomisations.getCartDrawerWidgetElement()){return widgetElement?.closest("[data-product-based-widget-host]")||null},TagalysCustomisations.setCartDrawerWidgetLoading=function(widgetHost,isLoading){if(!widgetHost)return;widgetHost.classList.toggle("is-loading",isLoading);const activeWidgetElement=widgetHost.querySelector("[data-product-based-widget]");activeWidgetElement&&activeWidgetElement.setAttribute("aria-busy",isLoading?"true":"false")},TagalysCustomisations.extractCartDrawerWidgetContent=function(){const widgetElement=TagalysCustomisations.getCartDrawerWidgetElement();if(!widgetElement||widgetElement.childNodes.length===0)return null;const fragment=document.createDocumentFragment();for(;widgetElement.firstChild;)fragment.appendChild(widgetElement.firstChild);return fragment},TagalysCustomisations.restoreCartDrawerWidgetContent=function(fragment){const widgetElement=TagalysCustomisations.getCartDrawerWidgetElement();!widgetElement||!fragment||fragment.childNodes.length===0||widgetElement.childNodes.length>0||widgetElement.appendChild(fragment)},TagalysCustomisations.isCartDrawerWidgetReady=function(widgetElement){return widgetElement?!!(widgetElement.querySelector(".products.display-carousel")&&widgetElement.querySelector("[data-tagalys-
1product-card]")):!1},TagalysCustomisations.clearCartDrawerWidgetLoading=function(){TagalysCustomisations.cartDrawerWidgetLoadingObserver&&(TagalysCustomisations.cartDrawerWidgetLoadingObserver.disconnect(),TagalysCustomisations.cartDrawerWidgetLoadingObserver=null),TagalysCustomisations.cartDrawerWidgetLoadingTimeout!==null&&(clearTimeout(TagalysCustomisations.cartDrawerWidgetLoadingTimeout),TagalysCustomisations.cartDrawerWidgetLoadingTimeout=null),TagalysCustomisations.setCartDrawerWidgetLoading(TagalysCustomisations.getCartDrawerWidgetHost(),!1)},TagalysCustomisations.clearCartDrawerWidgetRefresh=function(){TagalysCustomisations.cartDrawerWidgetRefreshFrame!==null&&(cancelAnimationFrame(TagalysCustomisations.cartDrawerWidgetRefreshFrame),TagalysCustomisations.cartDrawerWidgetRefreshFrame=null),TagalysCustomisations.cartDrawerWidgetRefreshTimeout!==null&&(clearTimeout(TagalysCustomisations.cartDrawerWidgetRefreshTimeout),TagalysCustomisations.cartDrawerWidgetRefreshTimeout=null)},TagalysCustomisations.refreshCartDrawerWidget=function(){const widgetElement=TagalysCustomisations.getCartDrawerWidgetElement();if(!window.Tagalys||!widgetElement)return;const widgetHost=TagalysCustomisations.getCartDrawerWidgetHost(widgetElement),productIds=TagalysCustomisations.getProductBasedWidgetProductIds();if(TagalysCustomisations.clearCartDrawerWidgetLoading(),TagalysCustomisations.setCartDrawerWidgetLoading(widgetHost,!0),TagalysCustomisations.setTagalysConfiguration(),TagalysCustomisations.setPlatformConfiguration(),TagalysCustomisations.initProductBasedWidget({selector:TagalysCustomisations.getProductBasedWidgetSelector(widgetElement),productIds}),TagalysCustomisations.isCartDrawerWidgetReady(widgetElement)){TagalysCustomisations.clearCartDrawerWidgetLoading();return}TagalysCustomisations.cartDrawerWidgetLoadingObserver=new MutationObserver(()=>{TagalysCustomisations.isCartDrawerWidgetReady(widgetElement)&&TagalysCustomisations.clearCartDrawerWidgetLoading()}),TagalysCustomisations.cartDrawerWidgetLoadingObserver.observe(widgetElement,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["class","src"]}),TagalysCustomisations.cartDrawerWidgetLoadingTimeout=window.setTimeout(()=>{TagalysCustomisations.clearCartDrawerWidgetLoading()},2500)},TagalysCustomisations.scheduleCartDrawerWidgetRefresh=function({cartData}={}){TagalysCustomisations.syncCartDrawerRecommendationContext(cartData),TagalysCustomisations.clearCartDrawerWidgetRefresh(),TagalysCustomisations.cartDrawerWidgetRefreshFrame=requestAnimationFrame(()=>{TagalysCustomisations.cartDrawerWidgetRefreshFrame=null,TagalysCustomisations.cartDrawerWidgetRefreshTimeout=window.setTimeout(()=>{TagalysCustomisations.cartDrawerWidgetRefreshTimeout=null,TagalysCustomisations.refreshCartDrawerWidget()},0)})},TagalysCustomisations.clearCartDrawerEmptyState=function(cartElement){!cartElement||cartElement.tagName!=="CART-DRAWER"||(cartElement.classList.remove("is-empty"),cartElement.querySelector(".drawer__inner")?.classList.remove("is-empty"),cartElement.querySelector("cart-drawer-items")?.classList.remove("is-empty"))},TagalysCustomisations.addVariantToCart=async function({variantId,buttonElement}){const cardElement=buttonElement?.closest("[data-tagalys-product-card]"),cart=document.querySelector("cart-notification")||document.querySelector("cart-drawer");if(!variantId||!buttonElement){TagalysCustomisations.setQuickAddError(cardElement,window.tagalysConfig.cartError);return}TagalysCustomisations.setQuickAddError(cardElement),TagalysCustomisations.setQuickAddLoading(buttonElement,!0);try{const config=typeof fetchConfig=="function"?fetchConfig("javascript"):{method:"POST",headers:{}};config.headers=config.headers||{},config.headers.Accept="application/javascript",config.headers["X-Requested-With"]="XMLHttpRequest",delete config.headers["Content-Type"];const formData=new FormData;formData.append("items[0][id]",variantId),formData.append("items[0][quantity]",1),cart&&(formData.append("sections",cart.getSectionsToRender().map(section=>section.id)),formData.append("sections_url",window.location.pathname),typeof cart.setActiveElement=="function"&&cart.setActiveElement(document.activeElement)),config.body=formData;const response=await fetch(`${routes.cart_add_url}`,config).then(result=>result.json());if(response.status){TagalysCustomisations.setQuickAddError(cardElement,response.description||response.message||window.tagalysConfig.cartError);return}if(TagalysCustomisations.setLastAddedProductId(TagalysCustomisations.getProductIdFromCartAddResponse(response)),typeof publish=="function"&&typeof PUB_SUB_EVENTS<"u"&&publish(PUB_SUB_EVENTS.cartUpdate,{source:"tagalys-quick-add",productVariantId:variantId,cartData:response}),!cart){window.location=window.routes.cart_url;return}TagalysCustomisations.clearCartDrawerEmptyState(cart),cart.renderContents(response)}catch{TagalysCustomisations.setQuickAddError(cardElement,window.tagalysConfig.cartError)}finally{TagalysCustomisations.clearCartDrawerEmptyState(cart),TagalysCustomisations.setQuickAddLoading(buttonElement,!1)}},TagalysCustomisations.setTagalysConfiguration=function(){const configuration={api:{serverUrl:defaultTagalysServerUrl},locale:defaultTagalysLocale,currency:{displayFormatter:"{{currencyLabel}}{{value}}",code:defaultTagalysCurrencyCode,label:defaultTagalysCurrencyLabel,fractionalDigits:2,forceFractionalDigits:!0},analyticsStorageConsentProvided(){const privacyConsent=window.Shopify?.customerPrivacy;return!privacyConsent||typeof privacyConsent.analyticsProcessingAllowed!="function"?!1:privacyConsent.analyticsProcessingAllowed()},track:!0};Tagalys.setConfiguration(configuration)},TagalysCustomisations.setPlatformConfiguration=function(){const platformConfiguration={platform:"Shopify",countryCode:defaultTagalysCountry,baseCountryCode:defaultTagalysBaseCountry,waitForStorefrontAPI:!0,useStorefrontAPIForSecondaryMarkets:!0,storefrontAPI:{accessToken:storefrontApiAccessToken,myShopifyDomain:window.Shopify.shop},metafields:{products:[]}};Tagalys.setPlatformConfiguration(platformConfiguration)},TagalysCustomisations.initProductBasedWidget=function({selector,productIds}={}){const resolvedProductIds=Array.isArray(productIds)&&productIds.length>0?productIds:TagalysCustomisations.getProductBasedWidgetProductIds();!selector||resolvedProductIds.length===0||Tagalys.UIWidgets.Recommendations.init(selector,{recommendationId:tagalysProductBasedRecommendationId,productIds:resolvedProductIds,templates:{header:{render:(html,args)=>{const props=args.props,heading=window.cartDrawerSettings.upsellHeading||props.helpers.getAPIResponse().title;return html`
2            <div class="cart-drawer__upsells-heading-wrapper exclude-tagalys-css-reset">
3              <h3
4                class=${"cart-drawer__upsells-heading exclude-tagalys-css exclude-tagalys-css-reset"}
5                style="color: var(--color-brand-black); margin-right: 8rem; font-size: calc(var(--font-heading-scale) * 2rem); line-height: 3.2rem; letter-spacing: calc(var(--font-heading-scale) * 2rem * -1 / 100); font-weight: var(--font-heading-weight);"
6              >
7                ${heading}
8              </h3>
9            </div>
10          `}},loader:{render(html){return html`
11            <div class="cart-drawer__upsells-loading-spinner loading__spinner">
12              <svg xmlns="http://www.w3.org/2000/svg" class="spinner" viewBox="0 0 66 66">
13                <circle stroke-width="6" cx="33" cy="33" r="30" fill="none" class="path" />
14              </svg>
15            </div>
16          `}},widget:{options:{count:16,displayFormat:"carousel",carouselOptions:{perPage:2,duration:200,easing:"ease-out",startIndex:0,draggable:!0}}},carouselActions:{render:(html,args)=>{const props=args.props;return html`
17            <div
18              class="cart-drawer__upsells-carousel-actions exclude-tagalys-css exclude-tagalys-css-reset"
19              style="display: flex; gap: 0.8rem; position: absolute; top: -4.8rem; right: 0.8rem;"
20            >
21              <${args.templates.leftArrow}
22                disabled=${props.helpers.carousel.isFirstSlide()}
23                goLeft=${props.helpers.carousel.goLeft}
24              />
25              <${args.templates.rightArrow}
26                disabled=${props.helpers.carousel.isLastSlide()}
27                goRight=${props.helpers.carousel.goRight}
28              />
29            </div>
30          `}},leftArrow:{render(html,args){const props=args.props;return html`
31            <button
32              class=${`cart-drawer__slider-arrow splide__arrow splide__arrow--secondary cart-drawer__slider-arrows--prev exclude-tagalys-css-reset ${props.disabled?"disabled":""}`}
33              onClick=${props.disabled?void 0:props.goLeft}
34              aria-label=${window.tagalysConfig.previousSlide}
35              disabled=${props.disabled}
36              style="color: var(--color-brand-black); width: 3.2rem; height: 3.2rem;"
37            >
38              <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 16 16">
39                <path
40                  fill="none"
41                  stroke="currentColor"
42                  stroke-linecap="round"
43                  stroke-width="1.5"
44                  d="M7.333 11.333 4 8m0 0 3.333-3.333M4 8h8"
45                />
46              </svg>
47            </button>
48          `}},rightArrow:{render(html,args){const props=args.props;return html`
49            <button
50              class=${`cart-drawer__slider-arrow splide__arrow splide__arrow--secondary cart-drawer__slider-arrows--next exclude-tagalys-css-reset ${props.disabled?"disabled":""}`}
51              onClick=${props.disabled?void 0:props.goRight}
52              aria-label=${window.tagalysConfig.nextSlide}
53              disabled=${props.disabled}
54              style="color: var(--color-brand-black); width: 3.2rem; height: 3.2rem;"
55            >
56              <svg xmlns="http://www.w3.org/2000/svg" fill="none" class="icon icon-arrow-left" viewBox="0 0 16 16">
57                <path
58                  fill="none"
59                  stroke="currentColor"
60                  stroke-linecap="round"
61                  stroke-width="1.5"
62                  d="M8.667 4.667 12 8m0 0-3.333 3.333M12 8H4"
63                />
64              </svg>
65            </button>
66          `}},product:{render:(html,args)=>{const props=args.props,product=props.product,helpers=props.helpers,productLink=helpers.getTemplateOptions("product").productPageUrl(product),{variants,availableVariants,firstAvailableVariant,hasVariantSelector}=TagalysCustomisations.getQuickAddState(product),productCanBeAdded=availableVariants.length>0,displayVariant=firstAvailableVariant||variants[0]||null;if(!helpers.isStorefrontAPICallPending()&&!productCanBeAdded)return null;const dragState=TagalysCustomisations.recommendationCarouselDragState,handlePointerDown=event=>{dragState.startX=event.clientX,dragState.startY=event.clientY,dragState.isPointerDown=!0,dragState.allowClick=!0,dragState.activePointerId=event.pointerId,event.currentTarget.setPointerCapture?.(event.pointerId)},handlePointerMove=event=>{if(!dragState.isPointerDown||dragState.activePointerId!==event.pointerId)return;const deltaX=Math.abs(event.clientX-dragState.startX),deltaY=Math.abs(event.clientY-dragState.startY);deltaX>12&&deltaX>deltaY&&(dragState.allowClick=!1)},handlePointerUp=event=>{dragState.activePointerId===event.pointerId&&(event.currentTarget.releasePointerCapture?.(event.pointerId),dragState.isPointerDown=!1)},handlePointerCancel=event=>{dragState.activePointerId!==null&&dragState.activePointerId!==event.pointerId||(event.currentTarget.releasePointerCapture?.(event.pointerId),TagalysCustomisations.resetRecommendationCarouselDragState())},handleProductLinkClick=event=>{const href=event.currentTarget.href;if(!dragState.allowClick){TagalysCustomisations.stopCardInteraction(event),TagalysCustomisations.resetRecommendationCarouselDragState();return}event.preventDefault(),TagalysCustomisations.resetRecommendationCarouselDragState(),window.location.assign(href)},handleAddToBag=event=>{TagalysCustomisations.stopCardInteraction(event);const selectedVariantId=event.currentTarget.closest("[data-tagalys-
66product-card]")?.querySelector("[data-tagalys-variant-select]")?.value||firstAvailableVariant?.id;TagalysCustomisations.addVariantToCart({variantId:selectedVariantId,buttonElement:event.currentTarget})},handleProductImageLoad=event=>{event.currentTarget.classList.add("is-loaded"),event.currentTarget.closest(".cart-drawer__product-card-image-container")?.classList.add("is-loaded")},handleVariantChange=event=>{const cardElement=event.currentTarget.closest("[data-tagalys-product-card]");TagalysCustomisations.updateProductCardPrices(cardElement,helpers,variants,firstAvailableVariant)},isOnSale=displayVariant?helpers.isProductOnSale(displayVariant.compare_at_price,displayVariant.price):!1,saleFormatted=displayVariant?helpers.formatCurrency(displayVariant.price):"",regularFormatted=displayVariant?isOnSale?helpers.formatCurrency(displayVariant.compare_at_price):saleFormatted:"",regularPriceSpanClass="cart-drawer__product-card-price cart-drawer__product-card-price--regular product-price-regular",salePriceSpan=isOnSale?html`
67                <span
68                  class="cart-drawer__product-card-price cart-drawer__product-card-price--discounted product-price-discounted"
69                  >${saleFormatted}</span
70                >
71              `:null,regularPriceSpan=isOnSale?html`<span class=${regularPriceSpanClass}
72                >${helpers.formatCurrency(displayVariant.compare_at_price)}</span
73              >`:html`<span class=${regularPriceSpanClass}>${regularFormatted}</span>`;return html`
74            <div
75              class="cart-drawer__product-card product-card exclude-tagalys-css exclude-tagalys-css-reset"
76              data-tagalys-product-card
77            >
78              <a
79                class="cart-drawer__product-card-link product-link"
80                href=${productLink}
81                draggable="false"
82                onPointerDown=${handlePointerDown}
83                onPointerMove=${handlePointerMove}
84                onPointerUp=${handlePointerUp}
85                onPointerCancel=${handlePointerCancel}
86                onClick=${handleProductLinkClick}
87              >
88                <div
89                  class=${`cart-drawer__product-card-image-container product-image-container ${product.featured_image?"":"is-loaded"}`}
90                >
91                  ${product.featured_image?html`<img
92                        class="cart-drawer__product-card-image product-image"
93                        data-src=${product.featured_image.src}
94                        alt=${product.title}
95                        draggable="false"
96                        onLoad=${handleProductImageLoad}
97                        onError=${handleProductImageLoad}
98                      />`:null}
99                </div>
100                <div class="cart-drawer__product-card-details product-details">
101                  <h4 class="cart-drawer__product-card-title body-xxs-bold product-name">${product.title}</h4>
102                  <p class="cart-drawer__product-card-variant body-xxs"></p>
103                  ${helpers.isStorefrontAPICallPending()?html`<span class="skeleton-box cart-drawer__product-card-price-skeleton"></span>`:html`<span
104                        class=${`cart-drawer__product-card-prices body-xxs-bold product-prices ${isOnSale?" discounted":" full-price"}`}
105                        data-tagalys-product-prices
106                      >
107                        ${salePriceSpan} ${regularPriceSpan}
108                      </span>`}
109                </div>
110              </a>
111              ${helpers.isStorefrontAPICallPending()?null:html`
112                    <div class="cart-drawer__product-card-actions">
113                      ${hasVariantSelector?html`
114                            <label class="visually-hidden" for=${`tagalys-variant-select-${product.id}`}>
115                              ${`${window.tagalysConfig.selectVariantOf}${product.title}`}
116                            </label>
117                            <div class="cart-drawer__product-card-select">
118                              <select
119                                id=${`tagalys-variant-select-${product.id}`}
120                                class="cart-drawer__product-card-select-input"
121                                data-tagalys-variant-select
122                                aria-label=${`${window.tagalysConfig.variantOf}${product.title}`}
123                                onChange=${handleVariantChange}
124                              >
125                                ${variants.map(variant=>{const isAvailable=variant.available!==!1;return html`
126                                    <option
127                                      value=${variant.id}
128                                      selected=${String(variant.id)===String(firstAvailableVariant?.id)}
129                                      disabled=${!isAvailable}
130                                    >
131                                      ${TagalysCustomisations.getVariantLabel(variant)}
132                                    </option>
133                                  `})}
134                              </select>
135                            </div>
136                          `:html`<p class="cart-drawer__product-card-variant-title">${displayVariant.title}</p>`}
137                      <button
138                        type="button"
139                        class="cart-drawer__product-card-add button button--primary"
140                        aria-label=${window.tagalysConfig.addToCart}
141                        onClick=${handleAddToBag}
142                        disabled=${!productCanBeAdded}
143                      >
144                        <span data-tagalys-add-label
145                          >${productCanBeAdded?window.tagalysConfig.add:window.tagalysConfig.unavailable}</span
146                        >
147                      </button>
148                      <p class="cart-drawer__product-card-error caption" data-tagalys-quick-add-error hidden></p>
149                    </div>
150                  `}
151            </div>
152          `}}}})};
153//# sourceMappingURL=/cdn/shop/t/1/assets/tagalys-scripts.js.map?v=174449896034933052031783948243

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.