1import{yieldToMainThread}from"@theme/utilities";class FlyToCart extends HTMLElement{source;useSourceSize=!1;destination;connectedCallback(){const intersectionObserver=new IntersectionObserver(entries=>{let sourceRect=null,destinationRect=null;entries.forEach(entry=>{entry.target===this.source?sourceRect=entry.boundingClientRect:entry.target===this.destination&&(destinationRect=entry.boundingClientRect)}),sourceRect&&destinationRect&&this.#animate(sourceRect,destinationRect),intersectionObserver.disconnect()});intersectionObserver.observe(this.source),intersectionObserver.observe(this.destination)}#animate=async(sourceRect,destinationRect)=>{const startPoint={x:sourceRect.left+sourceRect.width/2,y:sourceRect.top+sourceRect.height/2},endPoint={x:destinationRect.left+destinationRect.width/2,y:destinationRect.top+destinationRect.height/2};this.useSourceSize&&(this.style.setProperty("--width",`${sourceRect.width}px`),this.style.setProperty("--height",`${sourceRect.height}px`)),this.style.setProperty("--start-x",`${startPoint.x}px`),this.style.setProperty("--start-y",`${startPoint.y}px`),this.style.setProperty("--travel-x",`${endPoint.x-startPoint.x}px`),this.style.setProperty("--travel-y",`${endPoint.y-startPoint.y}px`),await yieldToMainThread(),await Promise.allSettled(this.getAnimations().map(a=>a.finished)),this.remove()}}customElements.get("fly-to-cart")||customElements.define("fly-to-cart",FlyToCart); 2//# sourceMappingURL=/cdn/shop/t/34/assets/fly-to-cart.js.map?v=129971753673458693881767549750
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.