{
  "version": 3,
  "sources": ["/cdn/shop/t/2/assets/cart-drawer.js?id=993154%2540"],
  "sourcesContent": ["class CartDrawer extends HTMLElement {\n  constructor() {\n    super();\n\n    this.addEventListener('keyup', (evt) => evt.code === 'Escape' && this.close());\n    this.querySelector('#CartDrawer-Overlay').addEventListener('click', this.close.bind(this));\n    this.setHeaderCartIconAccessibility();\n  }\n\n  setHeaderCartIconAccessibility() {\n    const cartLink = document.querySelector('#cart-icon-bubble');\n    cartLink.setAttribute('role', 'button');\n    cartLink.setAttribute('aria-haspopup', 'dialog');\n    cartLink.addEventListener('click', (event) => {\n      event.preventDefault();\n      this.open(cartLink)\n    });\n    cartLink.addEventListener('keydown', (event) => {\n      if (event.code.toUpperCase() === 'SPACE') {\n        event.preventDefault();\n        this.open(cartLink);\n      }\n    });\n  }\n\n  open(triggeredBy) {\n    if (triggeredBy) this.setActiveElement(triggeredBy);\n    const cartDrawerNote = this.querySelector('[id^=\"Details-\"] summary');\n    if (cartDrawerNote && !cartDrawerNote.hasAttribute('role')) this.setSummaryAccessibility(cartDrawerNote);\n    // here the animation doesn't seem to always get triggered. A timeout seem to help\n    setTimeout(() => {this.classList.add('animate', 'active')});\n\n    this.addEventListener('transitionend', () => {\n      const containerToTrapFocusOn = this.classList.contains('is-empty') ? this.querySelector('.drawer__inner-empty') : document.getElementById('CartDrawer');\n      const focusElement = this.querySelector('.drawer__inner') || this.querySelector('.drawer__close');\n      trapFocus(containerToTrapFocusOn, focusElement);\n    }, { once: true });\n\n    document.body.classList.add('overflow-hidden');\n    giftCart();\n  }\n\n  close() {\n    this.classList.remove('active');\n    removeTrapFocus(this.activeElement);\n    document.body.classList.remove('overflow-hidden');\n     giftCart();\n  }\n\n  setSummaryAccessibility(cartDrawerNote) {\n    cartDrawerNote.setAttribute('role', 'button');\n    cartDrawerNote.setAttribute('aria-expanded', 'false');\n\n    if(cartDrawerNote.nextElementSibling.getAttribute('id')) {\n      cartDrawerNote.setAttribute('aria-controls', cartDrawerNote.nextElementSibling.id);\n    }\n\n    cartDrawerNote.addEventListener('click', (event) => {\n      event.currentTarget.setAttribute('aria-expanded', !event.currentTarget.closest('details').hasAttribute('open'));\n    });\n\n    cartDrawerNote.parentElement.addEventListener('keyup', onKeyUpEscape);\n  }\n\n  renderContents(parsedState) {\n    this.querySelector('.drawer__inner').classList.contains('is-empty') && this.querySelector('.drawer__inner').classList.remove('is-empty');\n    this.productId = parsedState.id;\n    this.getSectionsToRender().forEach((section => {\n      const sectionElement = section.selector ? document.querySelector(section.selector) : document.getElementById(section.id);\n      sectionElement.innerHTML =\n          this.getSectionInnerHTML(parsedState.sections[section.id], section.selector);\n      giftCart();\n    }));\n\n    setTimeout(() => {\n      this.querySelector('#CartDrawer-Overlay').addEventListener('click', this.close.bind(this));\n      this.open();\n    });\n     \n  }\n\n  getSectionInnerHTML(html, selector = '.shopify-section') {\n    return new DOMParser()\n      .parseFromString(html, 'text/html')\n      .querySelector(selector).innerHTML;\n  }\n\n  getSectionsToRender() {\n    return [\n      {\n        id: 'cart-drawer',\n        selector: '#CartDrawer'\n      },\n      {\n        id: 'cart-icon-bubble'\n      }\n    ];\n  }\n\n  getSectionDOM(html, selector = '.shopify-section') {\n    return new DOMParser()\n      .parseFromString(html, 'text/html')\n      .querySelector(selector);\n  }\n\n  setActiveElement(element) {\n    this.activeElement = element;\n  }\n}\n\ncustomElements.define('cart-drawer', CartDrawer);\n\nclass CartDrawerItems extends CartItems {\n  getSectionsToRender() {\n    return [\n      {\n        id: 'CartDrawer',\n        section: 'cart-drawer',\n        selector: '.drawer__inner'\n      },\n      {\n        id: 'cart-icon-bubble',\n        section: 'cart-icon-bubble',\n        selector: '.shopify-section'\n      }\n    ];\n  }\n}\n\ncustomElements.define('cart-drawer-items', CartDrawerItems);\n\nfunction giftCart() {\n  const cartItems = document.querySelectorAll('tr.cart-item');\n    cartItems.forEach(cartItem => {        \n        const dataId = cartItem.getAttribute('data-id');\n        const drawerFooter = document.querySelector(`#Gift-Wrapper[data-id=\"${dataId}\"]`);  \n      if(!drawerFooter) return;\n      const drawerFooterID = drawerFooter.getAttribute('data-id');\n        if(drawerFooterID == dataId) {            \n            drawerFooter.classList.add('Gift-Wrapper__hide'); \n        }\n    });\n}\n\n"],
  "mappings": "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",
  "names": []
}
