https://store.familytreemagazine.com/cdn/shop/t/6/assets/component…?v=181863441691857161131771856982
1(()=>{"use strict";var __webpack_modules__={5669:((__unused_webpack_module,__webpack_exports__2,__webpack_require__2)=>{__webpack_require__2.d(__webpack_exports__2,{A:()=>GlobalDrawer});class GlobalDrawer extends HTMLElement{constructor(){super(),this.closeElements=this.querySelectorAll("[data-drawer-close]"),this.openDrawer=this.openDrawer.bind(this),this.closeDrawer=this.closeDrawer.bind(this),this.closeAllDrawers=this.closeAllDrawers.bind(this),this.handleResize=this.handleResize.bind(this)}connectedCallback(){window.wetheme.webcomponentRegistry.register({key:"component-drawer"}),window.eventBus.on("close:all:drawers",this.closeAllDrawers),this.closeElements.forEach(element=>{element.addEventListener("click",this.closeDrawer)}),window.Shopify.designMode&&window.addEventListener("resize",this.handleResize)}openDrawer(){window.eventBus.emit("close:all:drawers",this),this.setAttribute("aria-hidden","false"),document.body.classList.add("js-drawer-open"),this.addEventListener("transitionend",this.handleTransitionEnd),window.eventBus.emit("drawer:opened",this)}closeDrawer(){this.setAttribute("aria-hidden","true"),document.body.classList.remove("js-drawer-open"),this.removeEventListener("transitionend",this.handleTransitionEnd),window.eventBus.emit("drawer:closed",this)}closeAllDrawers(e){e!==this&&this.closeDrawer()}handleTransitionEnd(e){e.target===this&&this.trapFocus()}trapFocus(){const focusableElements=this.querySelectorAll('button, [href], input:not([type="hidden"]), select, textarea, [tabindex]:not([tabindex="-1"])'),firstFocusableElement=focusableElements[0],lastFocusableElement=focusableElements[focusableElements.length-1];firstFocusableElement.focus(),this.addEventListener("keydown",e=>{e.key==="Tab"&&(e.shiftKey?document.activeElement===firstFocusableElement&&(lastFocusableElement.focus(),e.preventDefault()):document.activeElement===lastFocusableElement&&(firstFocusableElement.focus(),e.preventDefault()))})}handleResize(){this.classList.add("disable-transitions"),setTimeout(()=>{this.classList.remove("disable-transitions")},500)}disconnectedCallback(){window.Shopify.designMode&&window.removeEventListener("resize",this.handleResize)}}})},__webpack_module_cache__={};function __webpack_require__(moduleId){var cachedModule=__webpack_module_cache__[moduleId];if(cachedModule!==void 0)return cachedModule.exports;var module=__webpack_module_cache__[moduleId]={exports:{}};return __webpack_modules__[moduleId](module,module.exports,__webpack_require__),module.exports}__webpack_require__.d=(exports,definition)=>{for(var key in definition)__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)&&Object.defineProperty(exports,key,{enumerable:!0,get:definition[key]})},__webpack_require__.o=(obj,prop)=>Object.prototype.hasOwnProperty.call(obj,prop);var __webpack_exports__={},_global_drawer__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(5669);class CartDrawer extends _global_drawer__WEBPACK_IMPORTED_MODULE_0__.A{constructor(){super(),this.dynamicContentIds=["cart-header","cart-body","cart-footer"],this.scrollElement=this.querySelector("[data-cart-scroll-element]"),this.handleCartOpen=this.handleCartOpen.bind(this),this.handleCartUpdate=this.handleCartUpdate.bind(this),this.handleCartRender=this.handleCartRender.bind(this)}connectedCallback(){super.connectedCallback(),window.wetheme.webcomponentRegistry.register({key:"component-cart-drawer"}),window.eventBus.on("open:cart:drawer",this.handleCartOpen),window.eventBus.on("update:cart:drawer",this.handleCartUpdate),window.eventBus.on("render:cart:drawer",this.handleCartRender)}handleCartOpen(e){e?.scrollToTop&&this.scrollElement&&this.scrollElement.scrollTo(0,0),this.openDrawer()}handleCartUpdate(e){e&&e.sections?.["cart-drawer"]&&this.renderCartDrawer(e.sections["cart-drawer"])}renderCartDrawer(html){this.dynamicContentIds.forEach(id=>{const selector=`[data-cart-dynamic-content="${id}"]`,updatedContent=this.getContent(html,selector),targetElement=this.querySelector(selector);targetElement&&(targetElement.innerHTML=updatedContent)}),this.trapFocus()}async handleCartRender(){try{const responseJson=await(await fetch(window.Shopify.routes.root+"?sections=cart-drawer")).json();responseJson?.["cart-drawer"]&&this.renderCartDrawer(responseJson["cart-drawer"])}catch(error){console.error("Failed to fetch cart drawer:",error)}}getContent(html,selector){return new DOMParser().parseFromString(html,"text/html").querySelector(selector)?.innerHTML}}customElements.define("cart-drawer",CartDrawer)})(); 2//# sourceMappingURL=/cdn/shop/t/6/assets/component-cart-drawer.js.map?v=181863441691857161131771856982
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.