{
  "version": 3,
  "sources": ["/cdn/shop/t/23/assets/results-list-slideshow-instant.js?tdv=202606190125"],
  "sourcesContent": ["import { mediaQueryLarge, requestIdleCallback, startViewTransition } from '@theme/utilities';\nimport PaginatedList from '@theme/paginated-list';\n\n/**\n * Lightweight collection results component.\n *\n * This asset is already loaded by the collection layout. It intentionally only\n * restores the native grid controls and infinite pagination; the obsolete\n * slideshow code that previously lived here stays disabled.\n */\nclass ResultsList extends PaginatedList {\n  connectedCallback() {\n    // The custom Alpha cards do not render Horizon's card-gallery ref. The base\n    // paginator still expects an aspect-ratio helper after appending a page, so\n    // provide a hidden anchor to initialise that helper safely.\n    if (!this.querySelector('[ref=\"cardGallery\"]')) {\n      const aspectRatioAnchor = document.createElement('span');\n      aspectRatioAnchor.hidden = true;\n      aspectRatioAnchor.setAttribute('aria-hidden', 'true');\n      aspectRatioAnchor.setAttribute('ref', 'cardGallery');\n      aspectRatioAnchor.setAttribute('data-image-ratio', 'adapt');\n      aspectRatioAnchor.setAttribute('data-alpha-pagination-anchor', '');\n      this.prepend(aspectRatioAnchor);\n    }\n\n    super.connectedCallback();\n\n    mediaQueryLarge.addEventListener('change', this.#handleMediaQueryChange);\n    this.setAttribute('initialized', '');\n  }\n\n  disconnectedCallback() {\n    mediaQueryLarge.removeEventListener('change', this.#handleMediaQueryChange);\n    super.disconnectedCallback();\n  }\n\n  /** @param {Event} event */\n  updateLayout({ target }) {\n    if (!(target instanceof HTMLInputElement)) return;\n    this.#animateLayoutChange(target.value);\n  }\n\n  /** @param {string} value */\n  #animateLayoutChange = async (value) => {\n    const { grid } = this.refs;\n    if (!grid) return;\n\n    await startViewTransition(() => this.#setLayout(value), ['product-grid']);\n\n    requestIdleCallback(() => {\n      const viewport = mediaQueryLarge.matches ? 'desktop' : 'mobile';\n      sessionStorage.setItem(`product-grid-view-${viewport}`, value);\n    });\n  };\n\n  /** @param {string} value */\n  #setLayout(value) {\n    const { grid } = this.refs;\n    if (!grid) return;\n    grid.setAttribute('product-grid-view', value);\n  }\n\n  /** @param {MediaQueryListEvent} event */\n  #handleMediaQueryChange = (event) => {\n    const targetElement = event.matches\n      ? this.querySelector('[data-grid-layout=\"desktop-default-option\"]')\n      : this.querySelector('[data-grid-layout=\"mobile-option\"]');\n\n    if (!(targetElement instanceof HTMLInputElement)) return;\n\n    targetElement.checked = true;\n    this.#setLayout('default');\n  };\n}\n\nif (!customElements.get('results-list')) {\n  customElements.define('results-list', ResultsList);\n}\n"],
  "mappings": "AAAA,OAAS,gBAAiB,oBAAqB,wBAA2B,mBAC1E,OAAO,kBAAmB,wBAS1B,MAAM,oBAAoB,aAAc,CACtC,mBAAoB,CAIlB,GAAI,CAAC,KAAK,cAAc,qBAAqB,EAAG,CAC9C,MAAM,kBAAoB,SAAS,cAAc,MAAM,EACvD,kBAAkB,OAAS,GAC3B,kBAAkB,aAAa,cAAe,MAAM,EACpD,kBAAkB,aAAa,MAAO,aAAa,EACnD,kBAAkB,aAAa,mBAAoB,OAAO,EAC1D,kBAAkB,aAAa,+BAAgC,EAAE,EACjE,KAAK,QAAQ,iBAAiB,CAChC,CAEA,MAAM,kBAAkB,EAExB,gBAAgB,iBAAiB,SAAU,KAAK,uBAAuB,EACvE,KAAK,aAAa,cAAe,EAAE,CACrC,CAEA,sBAAuB,CACrB,gBAAgB,oBAAoB,SAAU,KAAK,uBAAuB,EAC1E,MAAM,qBAAqB,CAC7B,CAGA,aAAa,CAAE,MAAO,EAAG,CACjB,kBAAkB,kBACxB,KAAK,qBAAqB,OAAO,KAAK,CACxC,CAGA,qBAAuB,MAAO,OAAU,CACtC,KAAM,CAAE,IAAK,EAAI,KAAK,KACjB,OAEL,MAAM,oBAAoB,IAAM,KAAK,WAAW,KAAK,EAAG,CAAC,cAAc,CAAC,EAExE,oBAAoB,IAAM,CACxB,MAAM,SAAW,gBAAgB,QAAU,UAAY,SACvD,eAAe,QAAQ,qBAAqB,QAAQ,GAAI,KAAK,CAC/D,CAAC,EACH,EAGA,WAAW,MAAO,CAChB,KAAM,CAAE,IAAK,EAAI,KAAK,KACjB,MACL,KAAK,aAAa,oBAAqB,KAAK,CAC9C,CAGA,wBAA2B,OAAU,CACnC,MAAM,cAAgB,MAAM,QACxB,KAAK,cAAc,6CAA6C,EAChE,KAAK,cAAc,oCAAoC,EAErD,yBAAyB,mBAE/B,cAAc,QAAU,GACxB,KAAK,WAAW,SAAS,EAC3B,CACF,CAEK,eAAe,IAAI,cAAc,GACpC,eAAe,OAAO,eAAgB,WAAW",
  "names": []
}
