PageSourceSearch

https://arneclo.com/cdn/shop/t/956/assets/swym_plp.bundle.js?v=166794538424412334341790853447

js arneclo.com collected 2026-10-02 17:59:27 UTC 9,808 bytes, 34 lines download raw bytes

1function canonicalProductUrl(url){if(!url)return"";try{const parsed=new URL(url,window.location.origin);return parsed.origin+parsed.pathname.replace(/\/$/,"")}catch{return String(url).split("?")[0].replace(/\/$/,"")}}function getHandleFromProductUrl(url){if(!url)return null;const parts=String(url).split("/products/");return parts.length<2?null:parts[1].split("?")[0].replace(/\/$/,"")}function getWishlistHandles(listContents){return Array.isArray(listContents)?listContents.map(item=>getHandleFromProductUrl(item.du)).filter(Boolean):[]}function isProductPage(){return window.themeVariables&&window.themeVariables.settings&&window.themeVariables.settings.pageType==="product"}let globalUpdateWishlistIcons=null;function initPlpWishlist(swat,wishlistId,listContents){function addToWishlist(productData,lid){if(!productData.variantId||!productData.productId||!productData.url)return;const product={epi:productData.variantId,empi:productData.productId,du:canonicalProductUrl(productData.url)};swat.addToList(lid,product,function(){updateWishlistIcon(productData.handle,!0),window.dispatchEvent(new CustomEvent("wishlist:product-added",{detail:{productId:productData.productId,variantId:productData.variantId,url:product.du}})),typeof window.refreshSwymWishlist=="function"&&window.refreshSwymWishlist().catch(()=>{})},function(error){console.error("Swym addToList error:",error)})}function removeFromWishlist(productData,lid){if(!productData.variantId||!productData.productId||!productData.url)return;const product={epi:productData.variantId,empi:productData.productId,du:canonicalProductUrl(productData.url)};swat.deleteFromList(lid,product,function(){updateWishlistIcon(productData.handle,!1),window.dispatchEvent(new CustomEvent("wishlist:product-removed",{detail:{productId:productData.productId,variantId:productData.variantId,url:product.du}})),typeof window.refreshSwymWishlist=="function"&&window.refreshSwymWishlist().catch(()=>{})},function(error){console.error("Swym deleteFromList error:",error)})}function updateWishlistIcon(handle,isInWishlist){document.querySelectorAll(".product-item").forEach(productItem=>{const productLink=productItem.querySelector(".product-item__aspect-ratio");if(!productLink||getHandleFromProductUrl(productLink.getAttribute("href"))!==handle)return;const wishlistIcon=productItem.querySelector(".product-item__wishlist-icon");wishlistIcon&&(isInWishlist?(wishlistIcon.innerHTML=`
2          <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
3            <path d="M12.25 16.6562L19 20.875V4H5.5V20.875L12.25 16.6562Z" fill="white" stroke="white" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="square"/>
4          </svg>
5        `,wishlistIcon.setAttribute("data-in-wishlist","true")):(wishlistIcon.innerHTML=`
6          <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
7            <path d="M12.25 16.6562L19 20.875V4H5.5V20.875L12.25 16.6562Z" stroke="white" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="square"/>
8          </svg>
9        `,wishlistIcon.setAttribute("data-in-wishlist","false")))})}function updateWishlistIconForSwatchChange(productItem,newProductUrl,cachedListContents){const newHandle=getHandleFromProductUrl(newProductUrl);if(!newHandle)return;const isInWishlist=getWishlistHandles(cachedListContents).includes(newHandle),wishlistIcon=productItem.querySelector(".product-item__wishlist-icon");wishlistIcon&&(isInWishlist?(wishlistIcon.innerHTML=`
10        <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
11          <path d="M12.25 16.6562L19 20.875V4H5.5V20.875L12.25 16.6562Z" fill="white" stroke="white" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="square"/>
12        </svg>
13      `,wishlistIcon.setAttribute("data-in-wishlist","true")):(wishlistIcon.innerHTML=`
14        <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
15          <path d="M12.25 16.6562L19 20.875V4H5.5V20.875L12.25 16.6562Z" stroke="white" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="square"/>
16        </svg>
17      `,wishlistIcon.setAttribute("data-in-wishlist","false")))}function addSwatchChangeListeners(cachedListContents){document.querySelectorAll(".swatch-item").forEach(swatch=>
17{swatch.removeEventListener("click",swatch.swatchChangeHandler),swatch.swatchChangeHandler=function(){const productItem=swatch.closest(".product-item");if(!productItem)return;const swatchData=swatch.dataset,newProductId=swatchData.groupedProductId,newVariantId=swatchData.groupedProductVariantId||swatchData.groupedProductId;if(!newProductId)return;productItem.setAttribute("data-product-id",newProductId),newVariantId&&productItem.setAttribute("data-variant-id",newVariantId);const listContents2=window.__swymData&&window.__swymData.listContents||cachedListContents;updateWishlistIconForSwatchChange(productItem,swatchData.groupedProductAnchor,listContents2)},swatch.addEventListener("click",swatch.swatchChangeHandler)})}function addWishlistClickListeners(lid){document.querySelectorAll(".product-item__wishlist-icon").forEach(icon=>{icon.removeEventListener("click",icon.wishlistClickHandler),icon.wishlistClickHandler=function(e){e.preventDefault(),e.stopPropagation();const productItem=icon.closest(".product-item");if(!productItem)return;const productId=productItem.getAttribute("data-product-id"),variantId=productItem.getAttribute("data-variant-id"),productLink=productItem.querySelector(".product-item__aspect-ratio");if(!productLink||!productId||productId==="null"||productId==="undefined")return;const productUrl=productLink.getAttribute("href"),handle=getHandleFromProductUrl(productUrl);if(!handle)return;const parsedProductId=parseInt(productId,10),parsedVariantId=parseInt(variantId,10);if(isNaN(parsedProductId)||parsedProductId<=0||isNaN(parsedVariantId)||parsedVariantId<=0)return;const productData={productId:parsedProductId,variantId:parsedVariantId,handle,url:canonicalProductUrl(window.location.origin+productUrl)};icon.getAttribute("data-in-wishlist")==="true"?removeFromWishlist(productData,lid):addToWishlist(productData,lid)},icon.addEventListener("click",icon.wishlistClickHandler)})}function updateWishlistIcons(wishlistProductIds,lid,cachedListContents){document.querySelectorAll(".product-item").forEach(productItem=>{const wishlistIcon=productItem.querySelector(".product-item__wishlist-icon"),productLink=productItem.querySelector(".product-item__aspect-ratio");if(!wishlistIcon||!productLink)return;const handle=getHandleFromProductUrl(productLink.getAttribute("href"));handle&&(wishlistProductIds.includes(handle)?(wishlistIcon.innerHTML=`
18          <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
19            <path d="M12.25 16.6562L19 20.875V4H5.5V20.875L12.25 16.6562Z" fill="white" stroke="white" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="square"/>
20          </svg>
21        `,wishlistIcon.setAttribute("data-in-wishlist","true")):(wishlistIcon.innerHTML=`
22          <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
23            <path d="M12.25 16.6562L19 20.875V4H5.5V20.875L12.25 16.6562Z" stroke="white" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="square"/>
24          </svg>
25        `,wishlistIcon.setAttribute("data-in-wishlist","false")))}),addWishlistClickListeners(lid),addSwatchChangeListeners(cachedListContents)}function applyListContents(contents){const wishlistProductIds=getWishlistHandles(contents);updateWishlistIcons(wishlistProductIds,wishlistId,contents)}globalUpdateWishlistIcons=applyListContents,applyListContents(listContents),window.addEventListener("wishlist:product-added",e=>{const{productId}=e.detail||{};productId&&document.querySelectorAll(`.product-item[data-product-id="${productId}"] .product-item__wishlist-icon`).forEach(icon=>{icon.innerHTML=`
26        <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
27          <path d="M12.25 16.6562L19 20.875V4H5.5V20.875L12.25 16.6562Z" fill="white" stroke="white" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="square"/>
28        </svg>
29      `,icon.setAttribute("data-in-wishlist","true")})}),window.addEventListener("wishlist:product-removed",e=>{const{productId}=e.detail||{};productId&&document.querySelectorAll(`.product-item[data-product-id="${productId}"] .product-item__wishlist-icon`).forEach(icon=>{icon.innerHTML=`
30        <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
31          <path d="M12.25 16.6562L19 20.875V4H5.5V20.875L12.25 16.6562Z" stroke="white" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="square"/>
32        </svg>
33      `,icon.setAttribute("data-in-wishlist","false")})}),window.addEventListener("swym:bootstrapped",event=>{event.detail&&event.detail.listContents&&applyListContents(event.detail.listContents)})}function startPlpWishlist(data){!data||!data.swat||!data.wishlistId||initPlpWishlist(data.swat,data.wishlistId,data.listContents||[])}isProductPage()||(window.__swymData?startPlpWishlist(window.__swymData):window.addEventListener("swym:bootstrapped",event=>{startPlpWishlist(event.detail)},{once:!0})),document.addEventListener("pagination:content-updated",function(){if(window.__swymData&&globalUpdateWishlistIcons){globalUpdateWishlistIcons(window.__swymData.listContents||[]);return}typeof window.refreshSwymWishlist=="function"&&window.refreshSwymWishlist().then(data=>{globalUpdateWishlistIcons&&globalUpdateWishlistIcons(data.listContents||[])}).catch(()=>{})});
34//# sourceMappingURL=/cdn/shop/t/956/assets/swym_plp.bundle.js.map?v=166794538424412334341790853447

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.