{
  "version": 3,
  "sources": ["/cdn/shop/t/2/assets/twc-giveaways.js?twc_revision=20260819_1"],
  "sourcesContent": ["/*\n * twc-giveaways.js \u2014 complete Giveaways index plus Previous pagination.\n *\n * The server renders the engine's content digest \u2014 every Open entry and the 60\n * newest Closed ones \u2014 so the first paint is already correct. When a public\n * Storefront API token is configured, <twc-giveaways-index> reads every\n * cursor-paginated entry and APPENDS what the server could not reach, so the\n * pager can walk the whole Closed archive. assets/twc-dom-reconcile.js decides\n * what is appended, what is left alone and what is rebuilt: the cards the\n * server drew keep their places, and a member never watches the grid reshuffle.\n *\n * Contract (sections/twc-giveaways-index.liquid):\n *   <twc-giveaways-pager\n *     data-per-page=\"6\"\n *     data-total-items=\"149\"             <- the TRUE Closed total, from the\n *                                           digest; the server drew 60 of them\n *     data-label-nav / data-label-previous / data-label-next\n *     data-label-page=\"Page __n__\">      <- __n__ is replaced with the number\n *     <ul data-twc-pager-list> <li data-twc-handle=\"\u2026\">\u2026</li> \u2026 </ul>\n *   </twc-giveaways-pager>\n *\n * The page numbers therefore come from the true total and never grow under the\n * member; a page whose cards have not arrived yet is drawn disabled until they\n * have.\n *\n * The pager markup is the shared community one (`.twc-community__pagination`,\n * `.twc-community__page`, `.twc-community__page-step` in twc-community.css), so\n * the Clubhouses and Events indexes can adopt this element unchanged.\n *\n * Window shape is the board's: first page, the current page and\n * its neighbours, the last page, with an ellipsis over every gap \u2014\n * \"\u2039 1 2 \u2026 8 \u203A\" on page one of eight.\n */\n(function () {\n  'use strict';\n\n  if (\n    window.customElements &&\n    customElements.get('twc-giveaways-pager') &&\n    customElements.get('twc-giveaways-index')\n  ) return;\n\n  var SVG_NS = 'http://www.w3.org/2000/svg';\n\n  /* A chevron drawn as one polyline, so the stroke width comes from the\n     stylesheet (.twc-community__page-step svg) and never from an attribute. */\n  function chevron(back) {\n    var svg = document.createElementNS(SVG_NS, 'svg');\n    svg.setAttribute('viewBox', '0 0 16 16');\n    svg.setAttribute('aria-hidden', 'true');\n    svg.setAttribute('focusable', 'false');\n    var path = document.createElementNS(SVG_NS, 'polyline');\n    path.setAttribute('points', back ? '10,3 5,8 10,13' : '6,3 11,8 6,13');\n    path.setAttribute('stroke-linecap', 'round');\n    path.setAttribute('stroke-linejoin', 'round');\n    svg.appendChild(path);\n    return svg;\n  }\n\n  /* First, last, current and the two around it \u2014 with a gap marker wherever\n     the run breaks. */\n  function pageWindow(current, total) {\n    var wanted = [1, total, current, current - 1, current + 1];\n    var keep = [];\n    var i;\n    for (i = 1; i <= total; i += 1) {\n      if (wanted.indexOf(i) !== -1) keep.push(i);\n    }\n    var out = [];\n    for (i = 0; i < keep.length; i += 1) {\n      if (i > 0 && keep[i] - keep[i - 1] > 1) out.push(null);\n      out.push(keep[i]);\n    }\n    return out;\n  }\n\n  function element(tag, className, text) {\n    var node = document.createElement(tag);\n    if (className) node.className = className;\n    if (text != null && text !== '') node.textContent = text;\n    return node;\n  }\n\n  function append(parent, child) {\n    if (child) parent.appendChild(child);\n    return child;\n  }\n\n  function field(entry, key) {\n    return window.TwcCommunityMetaobjects.value(entry, key).trim();\n  }\n\n  function entryPath(entry) {\n    return window.TwcCommunityMetaobjects.onlineStorePath(entry.onlineStoreUrl || '');\n  }\n\n  function imageFor(entry, key) {\n    return window.TwcCommunityMetaobjects.image(entry, key);\n  }\n\n  function imageElement(image, widths, sizes, alt, eager) {\n    if (!image) return null;\n    var img = element('img');\n    img.src = window.TwcCommunityMetaobjects.imageUrl(image.url, widths[0]);\n    img.srcset = widths\n      .map(function (width) {\n        return window.TwcCommunityMetaobjects.imageUrl(image.url, width) + ' ' + width + 'w';\n      })\n      .join(', ');\n    img.sizes = sizes;\n    img.alt = alt || '';\n    img.width = image.width || 1440;\n    img.height = image.height || 953;\n    img.loading = eager ? 'eager' : 'lazy';\n    if (eager) img.setAttribute('fetchpriority', 'high');\n    return img;\n  }\n\n  function multiline(tag, className, value) {\n    if (!value) return null;\n    var node = element(tag, className);\n    String(value).split(/\\r?\\n/).forEach(function (line, index) {\n      if (index) append(node, element('br'));\n      node.appendChild(document.createTextNode(line));\n    });\n    return node;\n  }\n\n  function spotlight(host, entry, eager) {\n    var title = field(entry, 'title');\n    var desktop = imageFor(entry, 'hero_image');\n    var mobile = imageFor(entry, 'hero_image_mobile') || desktop;\n    if (field(entry, 'magento_id')) {\n      desktop = imageFor(entry, 'giveaway_thumbnail_image') || imageFor(entry, 'giveaway_image');\n      mobile = desktop;\n    }\n    var card = element('article', 'twc-giveaways__spotlight');\n    card.dataset.twcHandle = entry.handle || '';\n    var entryUrl = entryPath(entry);\n    if (desktop) {\n      // Click-through convention: the photo reaches the giveaway page as a\n      // link the keyboard skips \u2014 the headline below is the one tab stop.\n      var media;\n      if (entryUrl) {\n        media = element('a', 'twc-giveaways__spotlight-media');\n        media.href = entryUrl;\n        media.tabIndex = -1;\n        media.setAttribute('aria-hidden', 'true');\n      } else {\n        media = element('div', 'twc-giveaways__spotlight-media');\n      }\n      var picture = element('picture');\n      var source = element('source');\n      source.media = '(min-width: 750px)';\n      source.srcset = [720, 1100, 1440]\n        .map(function (width) {\n          return window.TwcCommunityMetaobjects.imageUrl(desktop.url, width) + ' ' + width + 'w';\n        })\n        .join(', ');\n      source.sizes = '50vw';\n      append(picture, source);\n      var mobileImage = imageElement(mobile, [375, 750, 1100], '100vw', title, eager);\n      mobileImage.src = window.TwcCommunityMetaobjects.imageUrl(mobile.url, 750);\n      append(picture, mobileImage);\n      append(media, picture);\n      append(card, media);\n    }\n\n    var panel = element('div', 'twc-giveaways__panel');\n    var text = element('div', 'twc-giveaways__panel-text');\n    var eyebrow = field(entry, 'subtitle') || field(entry, 'eyebrow');\n    if (eyebrow) append(text, element('p', 'twc-giveaways__eyebrow', eyebrow));\n    if (title) {\n      var heading = element('h3', 'twc-giveaways__title');\n      if (entryUrl) {\n        var titleLink = element('a', 'twc-giveaways__title-link', title);\n        titleLink.href = entryUrl;\n        append(heading, titleLink);\n      } else {\n        heading.textContent = title;\n      }\n      append(text, heading);\n    }\n    append(\n      text,\n      multiline('p', 'twc-giveaways__summary', field(entry, 'short_description') || field(entry, 'summary'))\n    );\n    append(panel, text);\n\n    var actions = element('div', 'twc-giveaways__actions');\n    var member = host.dataset.customerPresent === 'true';\n    var ctaLabel = member ? host.dataset.memberCtaLabel : host.dataset.visitorCtaLabel;\n    var ctaUrl = member\n      ? host.dataset.memberCtaUrl\n      : field(entry, 'cta_url') || host.dataset.visitorCtaUrl;\n    ctaUrl = window.TwcCommunityMetaobjects.sameStorePath(ctaUrl || '', host.dataset.storeDomain);\n    if (ctaLabel && ctaUrl) {\n      var primary = element('a', 'twc-giveaways__btn twc-giveaways__btn--gold', ctaLabel);\n      primary.href = ctaUrl;\n      append(actions, primary);\n    }\n    if (host.dataset.detailsLabel && entryUrl) {\n      // A visible duplicate of the headline link, so the keyboard skips it and\n      // one accessible link per spotlight survives.\n      var details = element('a', 'twc-giveaways__btn twc-giveaways__btn--ghost', host.dataset.detailsLabel);\n      details.href = entryUrl;\n      details.tabIndex = -1;\n      details.setAttribute('aria-hidden', 'true');\n      append(actions, details);\n    }\n    append(panel, actions);\n    append(card, panel);\n    return card;\n  }\n\n  function closedCard(entry) {\n    var title = field(entry, 'title');\n    var path = entryPath(entry);\n    var image = imageFor(entry, 'hero_image');\n    if (field(entry, 'magento_id'))\n      image = imageFor(entry, 'giveaway_thumbnail_image') || imageFor(entry, 'giveaway_image');\n    var card = element('li', 'twc-community__card');\n    card.dataset.twcHandle = entry.handle || '';\n    if (image && path) {\n      var media = element('a', 'twc-community__card-media');\n      media.href = path;\n      media.tabIndex = -1;\n      media.setAttribute('aria-hidden', 'true');\n      var cardImage = imageElement(image, [343, 464, 720, 928], '(min-width: 750px) 33vw, 100vw', '', false);\n      cardImage.src = window.TwcCommunityMetaobjects.imageUrl(image.url, 928);\n      append(media, cardImage);\n      append(card, media);\n    }\n    var body = element('div', 'twc-community__card-body');\n    if (title) {\n      var heading = element('h3', 'twc-community__card-title');\n      if (path) {\n        var link = element('a', 'twc-giveaways__card-link', title);\n        link.href = path;\n        append(heading, link);\n      } else {\n        heading.textContent = title;\n      }\n      append(body, heading);\n    }\n    append(\n      body,\n      multiline(\n        'p',\n        'twc-community__card-text',\n        field(entry, 'short_description') || field(entry, 'winner_message')\n      )\n    );\n    append(card, body);\n    return card;\n  }\n\n  class TwcGiveawaysPager extends HTMLElement {\n    connectedCallback() {\n      this.list = this.querySelector('[data-twc-pager-list]');\n      if (!this.list) return;\n      this.refresh();\n    }\n\n    refresh() {\n      if (this.controller) this.controller.abort();\n      if (this.nav && this.nav.parentNode) this.nav.parentNode.removeChild(this.nav);\n      this.nav = null;\n      this.items = Array.prototype.filter.call(this.list.children, function (node) {\n        return node.nodeType === 1;\n      });\n      this.perPage = parseInt(this.dataset.perPage, 10) || 6;\n      // The TRUE archive size, from the digest's own count. The server drew its\n      // newest 60, so the numbers are right from first paint and never grow\n      // under the member when the complete read lands.\n      this.totalItems = Math.max(this.items.length, parseInt(this.dataset.totalItems, 10) || 0);\n      this.pageCount = Math.ceil(this.totalItems / this.perPage);\n      if (!(this.pageCount > 1)) {\n        this.items.forEach(function (item) {\n          item.hidden = false;\n        });\n        return;\n      }\n\n      this.controller = new AbortController();\n      this.nav = document.createElement('nav');\n      this.nav.className = 'twc-community__pagination';\n      this.nav.setAttribute('aria-label', this.dataset.labelNav || '');\n      this.nav.addEventListener('click', this.onClick.bind(this), {\n        signal: this.controller.signal,\n      });\n      this.appendChild(this.nav);\n\n      // The member may already be past page 1 when the complete read lands \u2014\n      // keep their place, clamped to pages whose cards are actually here.\n      var loadedPages = Math.max(1, Math.ceil(this.items.length / this.perPage));\n      this.show(Math.min(this.page || 1, loadedPages));\n    }\n\n    disconnectedCallback() {\n      if (this.controller) this.controller.abort();\n      if (this.nav && this.nav.parentNode) this.nav.parentNode.removeChild(this.nav);\n      this.nav = null;\n      // Leave the grid whole: a section re-render in the theme editor must not\n      // inherit a half-hidden list.\n      if (this.items) {\n        this.items.forEach(function (item) {\n          item.hidden = false;\n        });\n      }\n    }\n\n    /** A page is reachable once its cards are on the page. The pages past the\n     *  server's slice stay disabled until the complete read fills them in. */\n    pageIsLoaded(page) {\n      return (page - 1) * this.perPage < this.items.length;\n    }\n\n    onClick(event) {\n      var button = event.target.closest ? event.target.closest('button[data-twc-page]') : null;\n      if (!button || !this.contains(button)) return;\n      var page = parseInt(button.dataset.twcPage, 10);\n      if (!page || page === this.page) return;\n      this.show(page);\n      this.list.scrollIntoView({ block: 'start' });\n    }\n\n    show(page) {\n      this.page = page;\n      var perPage = this.perPage;\n      this.items.forEach(function (item, index) {\n        var itemPage = Math.floor(index / perPage) + 1;\n        item.hidden = itemPage !== page;\n      });\n      this.drawNav();\n    }\n\n    drawNav() {\n      var self = this;\n      var frag = document.createDocumentFragment();\n\n      frag.appendChild(this.step(this.page - 1, true));\n      pageWindow(this.page, this.pageCount).forEach(function (number) {\n        frag.appendChild(number === null ? self.gap() : self.pageButton(number));\n      });\n      frag.appendChild(this.step(this.page + 1, false));\n\n      this.nav.textContent = '';\n      this.nav.appendChild(frag);\n    }\n\n    pageButton(number) {\n      var button = document.createElement('button');\n      button.type = 'button';\n      button.className = 'twc-community__page';\n      button.textContent = String(number);\n      var label = this.dataset.labelPage || '';\n      if (label) button.setAttribute('aria-label', label.replace('__n__', String(number)));\n      if (number === this.page) button.setAttribute('aria-current', 'page');\n      // The number is honest about how far the archive goes; the button waits\n      // for the complete read to bring those cards in.\n      if (this.pageIsLoaded(number)) {\n        button.dataset.twcPage = String(number);\n      } else {\n        button.disabled = true;\n      }\n      return button;\n    }\n\n    gap() {\n      var span = document.createElement('span');\n      span.className = 'twc-community__page';\n      span.setAttribute('aria-hidden', 'true');\n      span.textContent = '\u2026';\n      return span;\n    }\n\n    step(target, back) {\n      var button = document.createElement('button');\n      button.type = 'button';\n      button.className = 'twc-community__page-step';\n      button.setAttribute(\n        'aria-label',\n        (back ? this.dataset.labelPrevious : this.dataset.labelNext) || ''\n      );\n      if (target < 1 || target > this.pageCount || !this.pageIsLoaded(target)) {\n        button.disabled = true;\n      } else {\n        button.dataset.twcPage = String(target);\n      }\n      button.appendChild(chevron(back));\n      return button;\n    }\n  }\n\n  class TwcGiveawaysIndex extends HTMLElement {\n    connectedCallback() {\n      this.controller = new AbortController();\n      this.openGroup = this.querySelector('[data-twc-open-group]');\n      this.openList = this.querySelector('[data-twc-open-list]');\n      this.closedGroup = this.querySelector('[data-twc-closed-group]');\n      this.closedList = this.querySelector('[data-twc-closed-list]');\n      this.loadCompleteIndex();\n    }\n\n    disconnectedCallback() {\n      if (this.controller) this.controller.abort();\n    }\n\n    loadCompleteIndex() {\n      var api = window.TwcCommunityMetaobjects;\n      if (!api) return;\n      var host = this;\n      api.loadAll(this, 'twc_giveaway', this.controller.signal)\n        .then(function (entries) {\n          if (!entries || host.controller.signal.aborted) return;\n          host.replaceIndex(entries);\n        })\n        .catch(function (error) {\n          if (error && error.name === 'AbortError') return;\n          console.warn('The complete giveaways index could not be loaded or applied.', error);\n        });\n    }\n\n    replaceIndex(entries) {\n      var host = this;\n      var patch = window.TwcListReconcile;\n      if (!patch) return;\n\n      var open = [];\n      var closed = [];\n      entries.forEach(function (entry) {\n        var status = field(entry, 'status');\n        if (status === 'Open') open.push(entry);\n        if (status === 'Closed') closed.push(entry);\n      });\n      // Handle order is what the no-digest Liquid slice renders, so it is the\n      // order anything the server did NOT draw arrives in. Whatever it DID draw\n      // keeps its place and its order, digest-ordered or not.\n      open.sort(window.TwcCommunityMetaobjects.compareHandles);\n      closed.sort(window.TwcCommunityMetaobjects.compareHandles);\n      open = patch.orderedLike(open, patch.handlesOf(this.openList));\n      closed = patch.orderedLike(closed, patch.handlesOf(this.closedList));\n\n      var shell = this.closest('.twc-giveaways');\n      if (shell) shell.hidden = open.length === 0 && closed.length === 0;\n\n      // The first spotlight photo is the page's LCP element. An APPEND never\n      // claims it \u2014 the spotlight the server drew already holds it.\n      var eagerUsed = false;\n      patch.sync(this.openList, open, function (entry, index, appended) {\n        var eager =\n          !appended &&\n          !eagerUsed &&\n          Boolean(\n            field(entry, 'magento_id')\n              ? imageFor(entry, 'giveaway_thumbnail_image') || imageFor(entry, 'giveaway_image')\n              : imageFor(entry, 'hero_image')\n          );\n        if (eager) eagerUsed = true;\n        return spotlight(host, entry, eager);\n      });\n      var closedChanged = patch.sync(this.closedList, closed, function (entry) {\n        return closedCard(entry);\n      });\n\n      if (this.openGroup) this.openGroup.hidden = !open.length;\n      if (this.closedGroup) this.closedGroup.hidden = !closed.length;\n      // Re-paging an untouched grid would only throw the member back to page 1.\n      if (!closedChanged) return;\n      var pager = this.querySelector('twc-giveaways-pager');\n      if (pager && pager.refresh) pager.refresh();\n    }\n  }\n\n  if (!customElements.get('twc-giveaways-pager')) {\n    customElements.define('twc-giveaways-pager', TwcGiveawaysPager);\n  }\n  if (!customElements.get('twc-giveaways-index')) {\n    customElements.define('twc-giveaways-index', TwcGiveawaysIndex);\n  }\n})();\n"],
  "mappings": "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",
  "names": []
}
