PageSourceSearch

https://www.toms.com/cdn/shop/t/189/compiled_assets/snippet-scripts.js?v=57361586469560412401790817570

js toms.com collected 2026-10-02 02:15:18 UTC 4,350 bytes, 2 lines download raw bytes

1(function(){var __snippets__={};(function(){for(var element=document.getElementById("snippets-script"),attribute=element?element.getAttribute("data-snippets"):"",snippets=attribute.split(",").filter(Boolean),i=0;i<snippets.length;i++)__snippets__[snippets[i]]=!0})(),(function(){if(!(!__snippets__["login-modal"]&&!Shopify.designMode))try{if(!customElements.get("login-modal")){class LoginModal extends HTMLElement{constructor(){super(),this.dialog=null,this.observer=null}connectedCallback(){this.dialog=this.querySelector("dialog"),this.dialog&&(this.setupObserver(),this.setupEventListeners())}setupObserver(){this.observer=new MutationObserver(mutations=>{mutations.forEach(mutation=>{mutation.attributeName==="open"&&(this.dialog.hasAttribute("open")?document.body.style.overflow="hidden":document.body.style.overflow="")})}),this.observer.observe(this.dialog,{attributes:!0,attributeFilter:["open"]})}setupEventListeners(){this.dialog.addEventListener("close",()=>{document.body.style.overflow=""}),this.dialog.addEventListener("click",e=>{e.target===this.dialog&&this.dialog.close()});const mobileAccountButton=document.querySelector("[data-open-login-modal]");mobileAccountButton&&mobileAccountButton.addEventListener("click",()=>{this.dialog.showModal()})}disconnectedCallback(){this.observer&&this.observer.disconnect(),document.body.style.overflow=""}}customElements.define("login-modal",LoginModal)}}catch(e){console.error(e)}})(),(function(){if(!(!__snippets__["sticky-add-to-cart"]&&!Shopify.designMode))try{class StickyAddToCart extends HTMLElement{constructor(){super(),this.observer=null,this.target=null,this.targetSelector=this.dataset.observeTarget||"add-to-cart-component",this.sizeTargetSelector=this.dataset.sizeTarget||"[data-variant-option-size]",this.abortController=null}connectedCallback(){this.button=this.querySelector("[data-sticky-add-to-cart-button]"),this.target=document.querySelector(this.targetSelector),this.abortController=new AbortController,this.setupObserver(),this.setupButtonClick(),this.setupVariantListener()}disconnectedCallback(){this.observer&&this.observer.disconnect(),this.abortController?.abort()}setupVariantListener(){document.addEventListener("variant:update",event=>this.onVariantUpdate(event),{signal:this.abortController.signal})}onVariantUpdate(event){const newAddToCartButton=event.detail.data.html?.querySelector('[ref="addToCartButton"]');if(!newAddToCartButton||!this.button)return;const isDisabled=newAddToCartButton.hasAttribute("disabled");this.button.disabled=isDisabled,this.button.textContent=newAddToCartButton.textContent.trim(),event.detail.resource?.id!=null&&this.removeAttribute("data-needs-size-selection")}setupObserver(){this.target&&(this.observer=new IntersectionObserver(entries=>{entries.forEach(entry=>{if(entry.isIntersecting)this.dataset.visible="false";else{const isAboveViewport=this.target.getBoundingClientRect().bottom<0;this.dataset.visible=isAboveViewport.toString()}})},{threshold:0,rootMargin:"0px"}),this.observer.observe(this.target))}setupButtonClick(){this.button&&this.button.addEventListener("click",()=>{if(this.dataset.needsSizeSelection==="true"){this.scrollToSizePicker();return}const originalButton=document.querySelector('add-to-cart-component [ref="addToCartButton"]');originalButton&&originalButton.click()})}scrollToSizePicker(){const sizeFieldset=document.querySelector(this.sizeTargetSelector);if(!(sizeFieldset instanceof HTMLElement))return;const prefersReducedMotion=window.matchMedia("(prefers-reduced-motion: reduce)").matches;sizeFieldset.scrollIntoView({behavior:prefersReducedMotion?"auto":"smooth",block:"center"});const selectedInput=sizeFieldset.querySelector("input:checked"),enabledInput=sizeFieldset.querySelector('input:not([disabled]):not([aria-disabled="true"])'),focusTarget=selectedInput||enabledInput;if(focusTarget instanceof HTMLElement){focusTarget.focus({preventScroll:!0});return}const legend=sizeFieldset.querySelector("legend");legend instanceof HTMLElement&&(legend.hasAttribute("tabindex")||legend.setAttribute("tabindex","-1"),legend.focus({preventScroll:!0}))}}customElements.get("sticky-add-to-cart")||customElements.define("sticky-add-to-cart",StickyAddToCart)}catch(e){console.error(e)}})()})();
2//# sourceMappingURL=/cdn/shop/t/189/compiled_assets/snippet-scripts.js.map?v=57361586469560412401790817570

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.