{
  "version": 3,
  "sources": ["/cdn/shop/t/6/assets/floating-panel.js?cb=20260407-7"],
  "sourcesContent": ["import { debounce, requestIdleCallback, viewTransition } from '@theme/utilities';\n\nconst OFFSET = 40;\n\n/**\n * A custom element that manages a floating panel.\n */\nexport class FloatingPanelComponent extends HTMLElement {\n  #updatePosition = async () => {\n    // Wait for any view transitions to finish\n    if (viewTransition.current) await viewTransition.current;\n\n    const rect = this.getBoundingClientRect();\n    const viewportWidth = window.innerWidth;\n\n    this.style.top = OFFSET + 'px';\n\n    if (rect.right > viewportWidth) {\n      const overflowAmount = rect.right - viewportWidth + OFFSET;\n      this.style.left = `-${overflowAmount}px`;\n    }\n\n    if (rect.left < 0) {\n      const overflowAmount = Math.abs(rect.left) + OFFSET;\n      this.style.left = `${overflowAmount}px`;\n    }\n\n    this.#mutationObserver.takeRecords();\n  };\n\n  #mutationObserver = new MutationObserver(this.#updatePosition);\n\n  #resizeListener = debounce(() => {\n    const parent = this.closest('details');\n    const closeOnResize = this.dataset.closeOnResize === 'true';\n    if (parent instanceof HTMLDetailsElement && closeOnResize) {\n      parent.open = false;\n      parent.removeAttribute('open');\n      this.#updatePosition();\n    }\n  }, 100);\n\n  connectedCallback() {\n    window.addEventListener('resize', this.#resizeListener);\n\n    requestIdleCallback(() => {\n      this.#updatePosition();\n      this.#mutationObserver.observe(this, { attributes: true });\n    });\n  }\n\n  disconnectedCallback() {\n    window.removeEventListener('resize', this.#resizeListener);\n    this.#mutationObserver.disconnect();\n  }\n}\n\nif (!customElements.get('floating-panel-component')) {\n  customElements.define('floating-panel-component', FloatingPanelComponent);\n}\n"],
  "mappings": "AAAA,OAAS,SAAU,oBAAqB,mBAAsB,mBAE9D,MAAM,OAAS,GAKR,aAAM,+BAA+B,WAAY,CACtD,gBAAkB,SAAY,CAExB,eAAe,SAAS,MAAM,eAAe,QAEjD,MAAM,KAAO,KAAK,sBAAsB,EAClC,cAAgB,OAAO,WAI7B,GAFA,KAAK,MAAM,IAAM,OAAS,KAEtB,KAAK,MAAQ,cAAe,CAC9B,MAAM,eAAiB,KAAK,MAAQ,cAAgB,OACpD,KAAK,MAAM,KAAO,IAAI,cAAc,IACtC,CAEA,GAAI,KAAK,KAAO,EAAG,CACjB,MAAM,eAAiB,KAAK,IAAI,KAAK,IAAI,EAAI,OAC7C,KAAK,MAAM,KAAO,GAAG,cAAc,IACrC,CAEA,KAAK,kBAAkB,YAAY,CACrC,EAEA,kBAAoB,IAAI,iBAAiB,KAAK,eAAe,EAE7D,gBAAkB,SAAS,IAAM,CAC/B,MAAM,OAAS,KAAK,QAAQ,SAAS,EAC/B,cAAgB,KAAK,QAAQ,gBAAkB,OACjD,kBAAkB,oBAAsB,gBAC1C,OAAO,KAAO,GACd,OAAO,gBAAgB,MAAM,EAC7B,KAAK,gBAAgB,EAEzB,EAAG,GAAG,EAEN,mBAAoB,CAClB,OAAO,iBAAiB,SAAU,KAAK,eAAe,EAEtD,oBAAoB,IAAM,CACxB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,QAAQ,KAAM,CAAE,WAAY,EAAK,CAAC,CAC3D,CAAC,CACH,CAEA,sBAAuB,CACrB,OAAO,oBAAoB,SAAU,KAAK,eAAe,EACzD,KAAK,kBAAkB,WAAW,CACpC,CACF,CAEK,eAAe,IAAI,0BAA0B,GAChD,eAAe,OAAO,2BAA4B,sBAAsB",
  "names": []
}
