{
  "version": 3,
  "sources": ["/cdn/shop/t/73/assets/view-transitions.js?urban_actions=20260628zero"],
  "sourcesContent": ["(function () {\r\n  const viewTransitionRenderBlocker = document.getElementById('view-transition-render-blocker');\r\n  // Remove the view transition render blocker if the user has reduced motion enabled or is on a low power device.\r\n  if (window.matchMedia('(prefers-reduced-motion: reduce)').matches || isLowPowerDevice()) {\r\n    viewTransitionRenderBlocker?.remove();\r\n  } else {\r\n    // If the browser didn't manage to parse the main content quickly, at least let the user see something.\r\n    // We're aiming for the FCP to be under 1.8 seconds since the navigation started.\r\n    const RENDER_BLOCKER_TIMEOUT_MS = Math.max(0, 1800 - performance.now());\r\n\r\n    setTimeout(() => {\r\n      viewTransitionRenderBlocker?.remove();\r\n    }, RENDER_BLOCKER_TIMEOUT_MS);\r\n  }\r\n\r\n  const idleCallback = typeof requestIdleCallback === 'function' ? requestIdleCallback : setTimeout;\r\n\r\n  window.addEventListener('pageswap', async (event) => {\r\n    const { viewTransition } = /** @type {PageSwapEvent} */ (event);\r\n\r\n    if (shouldSkipViewTransition(viewTransition)) {\r\n      /** @type {ViewTransition | null} */ (viewTransition)?.skipTransition();\r\n      return;\r\n    }\r\n\r\n    // Cancel view transition on user interaction to improve INP (Interaction to Next Paint)\r\n    ['pointerdown', 'keydown'].forEach((eventName) => {\r\n      document.addEventListener(\r\n        eventName,\r\n        () => {\r\n          viewTransition.skipTransition();\r\n        },\r\n        { once: true }\r\n      );\r\n    });\r\n\r\n    // Clean in case you landed on the pdp first. We want to remove the default transition type on the PDP media gallery so there is no duplicate transition name\r\n    document\r\n      .querySelectorAll('[data-view-transition-type]:not([data-view-transition-triggered])')\r\n      .forEach((element) => {\r\n        element.removeAttribute('data-view-transition-type');\r\n      });\r\n\r\n    const transitionTriggered = document.querySelector('[data-view-transition-triggered]');\r\n    const transitionType = transitionTriggered?.getAttribute('data-view-transition-type');\r\n\r\n    if (transitionType) {\r\n      viewTransition.types.clear();\r\n      viewTransition.types.add(transitionType);\r\n      sessionStorage.setItem('custom-transition-type', transitionType);\r\n    } else {\r\n      viewTransition.types.clear();\r\n      viewTransition.types.add('page-navigation');\r\n      sessionStorage.removeItem('custom-transition-type');\r\n    }\r\n  });\r\n\r\n  window.addEventListener('pagereveal', async (event) => {\r\n    const { viewTransition } = /** @type {PageRevealEvent} */ (event);\r\n\r\n    if (shouldSkipViewTransition(viewTransition)) {\r\n      /** @type {ViewTransition | null} */ (viewTransition)?.skipTransition();\r\n      return;\r\n    }\r\n\r\n    const customTransitionType = sessionStorage.getItem('custom-transition-type');\r\n\r\n    if (customTransitionType) {\r\n      viewTransition.types.clear();\r\n      viewTransition.types.add(customTransitionType);\r\n\r\n      await viewTransition.finished;\r\n\r\n      viewTransition.types.clear();\r\n      viewTransition.types.add('page-navigation');\r\n\r\n      idleCallback(() => {\r\n        sessionStorage.removeItem('custom-transition-type');\r\n        document.querySelectorAll('[data-view-transition-type]').forEach((element) => {\r\n          element.removeAttribute('data-view-transition-type');\r\n        });\r\n      });\r\n    } else {\r\n      viewTransition.types.clear();\r\n      viewTransition.types.add('page-navigation');\r\n    }\r\n  });\r\n\r\n  /**\r\n   * @param {ViewTransition | null} viewTransition\r\n   * @returns {viewTransition is null}\r\n   */\r\n  function shouldSkipViewTransition(viewTransition) {\r\n    return !(viewTransition instanceof ViewTransition) || isLowPowerDevice();\r\n  }\r\n\r\n  /*\r\n   * We can't import this logic from utilities.js here, but we should keep them in sync.\r\n   */\r\n  function isLowPowerDevice() {\r\n    /* Skip ESLint compatibility check. Number(undefined) <= 2 is always false anyway. */\r\n    /* eslint-disable-next-line compat/compat */\r\n    return Number(navigator.hardwareConcurrency) <= 2 || Number(navigator.deviceMemory) <= 2;\r\n  }\r\n})();\n\n(function () {\n  const artistPath = window.location.pathname.toLowerCase().replace(/\\/$/, '');\n  if (artistPath !== '/pages/artist-profile/eva') return;\n\n  const featureHref = '/blogs/news/milestone-moment-our-tattoo-featured-in-dgn-tattoo-magazine-201';\n\n  function installStyles() {\n    if (document.getElementById('artist-pr-feature-fallback-style')) return;\n    const style = document.createElement('style');\n    style.id = 'artist-pr-feature-fallback-style';\n    style.textContent = [\n      '.artist-detail-magazine-link{display:grid;grid-template-columns:46px minmax(0,1fr);gap:11px;align-items:center;max-width:320px;min-height:82px;padding:10px;border:1px solid color-mix(in srgb,var(--urban-deep-jade) 26%,transparent);border-radius:2px;background:color-mix(in srgb,var(--urban-deep-jade) 5.5%,transparent);color:var(--urban-ink);text-decoration:none;transition:border-color .2s ease,background-color .2s ease,transform .2s ease}',\n      '.artist-detail-magazine-link:hover{border-color:color-mix(in srgb,var(--urban-deep-jade) 72%,transparent);background:color-mix(in srgb,var(--urban-deep-jade) 10%,transparent);transform:translateY(-1px)}',\n      '.artist-detail-magazine-mark{display:grid;place-items:center;aspect-ratio:1;border:1px solid var(--urban-deep-jade);background:var(--urban-ink);color:var(--urban-porcelain);font-family:var(--urban-body);font-size:12px;font-weight:500;letter-spacing:.12em;line-height:1}',\n      '.artist-detail-magazine-copy{display:grid;gap:3px;min-width:0}',\n      '.artist-detail-magazine-kicker,.artist-detail-magazine-cta{font-family:var(--urban-body);font-size:9px;font-weight:500;line-height:1.25;letter-spacing:.11em;text-transform:uppercase}',\n      '.artist-detail-magazine-kicker,.artist-detail-magazine-cta{color:var(--urban-deep-jade)}',\n      '.artist-detail-magazine-text{color:var(--urban-ink);font-family:var(--urban-body);font-size:13px;line-height:1.25}',\n      '.artist-detail-magazine-cta{display:inline-flex;gap:6px;align-items:center;width:fit-content}',\n      '.artist-detail-magazine-cta svg{width:14px;height:14px;transition:transform .2s ease}',\n      '.artist-detail-magazine-link:hover .artist-detail-magazine-cta svg{transform:translateX(2px)}',\n      '@media(max-width:768px){.artist-detail-magazine-link{grid-template-columns:40px minmax(0,1fr);gap:9px;max-width:none;min-height:74px;padding:9px}.artist-detail-magazine-mark{font-size:10px}.artist-detail-magazine-kicker,.artist-detail-magazine-cta{font-size:8px;letter-spacing:.09em}.artist-detail-magazine-text{font-size:12px}}',\n    ].join('');\n    document.head.appendChild(style);\n  }\n\n  function findLegacyTrainingStat() {\n    return Array.from(document.querySelectorAll('.artist-detail-stat')).find((stat) => {\n      const label = stat.querySelector('.artist-detail-stat-label');\n      const value = stat.querySelector('.artist-detail-stat-value');\n      return (\n        label &&\n        value &&\n        label.textContent.replace(/\\s+/g, ' ').trim().toLowerCase() === 'training' &&\n        /Shanghai Academy of Fine Arts/i.test(value.textContent || '')\n      );\n    });\n  }\n\n  function patchLegacyTraining() {\n    if (document.querySelector('.artist-detail-magazine-link')) return;\n    const stat = findLegacyTrainingStat();\n    if (!stat) return;\n    const label = stat.querySelector('.artist-detail-stat-label');\n    const value = stat.querySelector('.artist-detail-stat-value');\n    if (!label || !value) return;\n    installStyles();\n    label.textContent = 'Magazine Feature';\n    value.innerHTML = [\n      '<a class=\"artist-detail-magazine-link\" href=\"' + featureHref + '\" aria-label=\"Read Eva Liu DGN Tattoo Magazine Issue 201 feature\">',\n      '<span class=\"artist-detail-magazine-mark\" aria-hidden=\"true\">DGN</span>',\n      '<span class=\"artist-detail-magazine-copy\">',\n      '<span class=\"artist-detail-magazine-kicker\">Tattoo Magazine</span>',\n      '<span class=\"artist-detail-magazine-text\">Issue 201</span>',\n      '<span class=\"artist-detail-magazine-cta\">Read feature <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" aria-hidden=\"true\"><path d=\"M5 12h14M12 5l7 7-7 7\"/></svg></span>',\n      '</span>',\n      '</a>',\n    ].join('');\n  }\n\n  function runArtistPrFallback() {\n    patchLegacyTraining();\n    window.setTimeout(patchLegacyTraining, 600);\n    window.setTimeout(patchLegacyTraining, 1600);\n    window.setTimeout(patchLegacyTraining, 3200);\n  }\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', runArtistPrFallback);\n  } else {\n    runArtistPrFallback();\n  }\n})();\n\n(function () {\n  const artistPath = window.location.pathname.toLowerCase().replace(/\\/$/, '');\n  if (artistPath !== '/pages/artist-profile/zero') return;\n\n  const zeroTrainingText =\n    \"Graduated from Lu Xun Academy of Fine Arts with a master's degree; currently serves as an Associate Professor at Shenyang University's Academy of Fine Arts, specializing in Chinese painting instruction.\";\n\n  function patchZeroTraining() {\n    const stats = Array.from(document.querySelectorAll('.artist-detail-stat'));\n    const stat = stats.find((item) => {\n      const label = item.querySelector('.artist-detail-stat-label');\n      const value = item.querySelector('.artist-detail-stat-value');\n      if (!label || !value) return false;\n      const labelText = label.textContent.replace(/\\s+/g, ' ').trim().toLowerCase();\n      const valueText = value.textContent || '';\n      return labelText === 'training' && (/[\\u9c81]\\u8fc5/.test(valueText) || /\\u7562\\u696d\\u65bc/.test(valueText));\n    });\n    if (!stat) return;\n    const value = stat.querySelector('.artist-detail-stat-value');\n    if (value) value.textContent = zeroTrainingText;\n  }\n\n  function runZeroTrainingFallback() {\n    patchZeroTraining();\n    window.setTimeout(patchZeroTraining, 600);\n    window.setTimeout(patchZeroTraining, 1600);\n  }\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', runZeroTrainingFallback);\n  } else {\n    runZeroTrainingFallback();\n  }\n})();\n\n(function () {\n  function normalizeArtistName(value) {\n    return String(value || '').replace(/\\s+/g, ' ').trim();\n  }\n\n  function artistTattooHref(artist, hash) {\n    const name = normalizeArtistName(artist);\n    if (!name) return '';\n    const bookingHash =\n      !hash || hash === '#UrbanBookingSheet' || hash === '#UrbanMobileBookingPage' || hash === '#UrbanBook'\n        ? '#custom-tattoo-consultation'\n        : hash;\n    return (\n      '/pages/tattoo?oseid=artist-prefill&service=Tattoo&artist_name=' +\n      encodeURIComponent(name).replace(/%20/g, '+') +\n      bookingHash\n    );\n  }\n\n  function cardArtistName(link) {\n    const card = link.closest('.artist-card, .urban-artist-card, .artist-v10-card, .urban-artist-profile');\n    if (!card) return '';\n    const name = card.querySelector(\n      '.artist-card__name, .urban-artist-card__name, .artist-v10-card__name, .urban-artist-profile__name, h1, h2, h3'\n    );\n    return name ? normalizeArtistName(name.textContent) : '';\n  }\n\n  function rewriteArtistBookLinks() {\n    document.querySelectorAll('a[href]').forEach((link) => {\n      let url;\n      try {\n        url = new URL(link.getAttribute('href'), window.location.origin);\n      } catch (error) {\n        return;\n      }\n\n      const path = url.pathname.toLowerCase().replace(/\\/$/, '');\n      if (path === '/pages/tattoo' && url.searchParams.has('artist')) {\n        const nextHref = artistTattooHref(url.searchParams.get('artist'), url.hash || '#custom-tattoo-consultation');\n        if (nextHref) link.setAttribute('href', nextHref);\n        return;\n      }\n\n      const label = normalizeArtistName(link.textContent).toLowerCase();\n      if (label !== 'book' && label !== 'book / inquire') return;\n      if (url.hostname !== 'www.urbaninktattoos.com') return;\n\n      const nextHref = artistTattooHref(cardArtistName(link), '#custom-tattoo-consultation');\n      if (!nextHref) return;\n      link.setAttribute('href', nextHref);\n      link.removeAttribute('target');\n      link.removeAttribute('rel');\n    });\n  }\n\n  function redirectLegacyArtistTattooUrl() {\n    const path = window.location.pathname.toLowerCase().replace(/\\/$/, '');\n    if (path !== '/pages/tattoo') return;\n    const params = new URLSearchParams(window.location.search);\n    const artist = params.get('artist');\n    if (!artist || params.get('oseid') === 'artist-prefill') return;\n    const nextHref = artistTattooHref(artist, window.location.hash || '#custom-tattoo-consultation');\n    if (nextHref) window.location.replace(nextHref);\n  }\n\n  function runArtistBookLinkFixes() {\n    redirectLegacyArtistTattooUrl();\n    rewriteArtistBookLinks();\n  }\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', runArtistBookLinkFixes);\n  } else {\n    runArtistBookLinkFixes();\n  }\n\n  window.setTimeout(rewriteArtistBookLinks, 600);\n  window.setTimeout(rewriteArtistBookLinks, 1600);\n})();\n\n(function () {\n  function normalizeText(value) {\n    return String(value || '').replace(/\\s+/g, ' ').trim();\n  }\n\n  function samePath(left, right) {\n    try {\n      const leftUrl = new URL(left, window.location.origin);\n      const rightUrl = new URL(right, window.location.origin);\n      return leftUrl.pathname.replace(/\\/$/, '') === rightUrl.pathname.replace(/\\/$/, '');\n    } catch (error) {\n      return left === right;\n    }\n  }\n\n  function installStyles() {\n    if (document.getElementById('artist-home-actions-fallback-style')) return;\n    const style = document.createElement('style');\n    style.id = 'artist-home-actions-fallback-style';\n    style.textContent = [\n      '.artists-carousel-section .artist-card__actions{width:100%;margin-top:16px;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}',\n      '.artists-carousel-section .artist-card__actions--single{grid-template-columns:minmax(0,1fr)!important}',\n      '.artists-carousel-section .artist-card__book,.artists-carousel-section .artist-card__profile{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:44px;padding:10px 12px;box-sizing:border-box;border:1px solid var(--urban-ink);font-family:var(--urban-body);font-size:9px;font-weight:500;letter-spacing:.12em;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase;transition:background-color .24s ease,border-color .24s ease,color .24s ease}',\n      '.artists-carousel-section .artist-card__book{background:var(--urban-ink);color:var(--urban-porcelain)}',\n      '.artists-carousel-section .artist-card__profile{background:transparent;color:var(--urban-ink)}',\n      '.artists-carousel-section .artist-card__book:hover{border-color:var(--urban-deep-jade);background:var(--urban-deep-jade);color:var(--urban-porcelain)}',\n      '.artists-carousel-section .artist-card__profile:hover{border-color:var(--urban-ink);background:var(--urban-ink);color:var(--urban-porcelain)}',\n      '@media(max-width:768px){.artists-carousel-section .artist-card__actions{margin-top:14px;grid-template-columns:minmax(0,1fr)!important;gap:8px!important}.artists-carousel-section .artist-card__book,.artists-carousel-section .artist-card__profile{min-height:44px;padding:10px 12px;font-size:8.5px;letter-spacing:.12em}}',\n    ].join('');\n    document.head.appendChild(style);\n  }\n\n  function profileHrefForCard(card) {\n    const imageLink = card.querySelector('.artist-card__image-wrapper[href]');\n    if (imageLink && imageLink.getAttribute('href')) return imageLink.getAttribute('href');\n\n    const name = normalizeText(card.querySelector('.artist-card__name')?.textContent).toLowerCase();\n    if (name === 'eva' || name === 'eva liu') return '/pages/artist-profile/eva?variant=artist-pr-v3';\n    if (name === 'zero') return '/pages/artist-profile/zero?variant=artist-pr-v3';\n    return '';\n  }\n\n  function patchArtistActions() {\n    const cards = Array.from(document.querySelectorAll('.artists-carousel-section .artist-card'));\n    if (!cards.length) return;\n\n    let changed = false;\n    cards.forEach((card) => {\n      const actions = card.querySelector('.artist-card__actions');\n      if (!actions) return;\n\n      const book = actions.querySelector('.artist-card__book, .artist-card__action-link--primary, a[href]');\n      const profileHref = profileHrefForCard(card);\n      if (book) {\n        book.classList.add('artist-card__book');\n        if (normalizeText(book.textContent).toLowerCase() === 'book / inquire') book.textContent = 'Book';\n      }\n\n      if (!profileHref || actions.querySelector('.artist-card__profile')) return;\n      const bookHref = book ? book.getAttribute('href') : '';\n      if (bookHref && samePath(bookHref, profileHref)) return;\n\n      const profile = document.createElement('a');\n      profile.className = 'artist-card__profile';\n      profile.href = profileHref;\n      profile.textContent = 'View Profile';\n      actions.appendChild(profile);\n      actions.classList.remove('artist-card__actions--single');\n      changed = true;\n    });\n\n    if (changed) installStyles();\n  }\n\n  function runArtistHomeActionsFallback() {\n    patchArtistActions();\n    window.setTimeout(patchArtistActions, 600);\n    window.setTimeout(patchArtistActions, 1600);\n  }\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', runArtistHomeActionsFallback);\n  } else {\n    runArtistHomeActionsFallback();\n  }\n})();\n\n(function () {\n  const artistMatch = window.location.pathname.toLowerCase().match(/\\/pages\\/artist-profile\\/([^/]+)/);\n  if (!artistMatch || !artistMatch[1]) return;\n\n  const artistHandle = decodeURIComponent(artistMatch[1]).replace(/\\/$/, '');\n  const endpoint = 'https://hnsyuz-mi.myshopify.com/api/2026-04/graphql.json';\n  const storefrontToken = '1483279c6d94ac1fb074bf2c1bab7e55';\n  const query = `\n    query ArtistPortfolioVideos($after: String) {\n      metaobjects(type: \"tattoo_project\", first: 250, after: $after) {\n        nodes {\n          handle\n          fields {\n            key\n            value\n            reference {\n              __typename\n              ... on Metaobject {\n                handle\n                type\n                fields { key value }\n              }\n            }\n          }\n        }\n        pageInfo { hasNextPage endCursor }\n      }\n    }\n  `;\n\n  function field(project, key) {\n    return (project.fields || []).find((item) => item.key === key);\n  }\n\n  function referenceField(reference, key) {\n    return ((reference && reference.fields) || []).find((item) => item.key === key);\n  }\n\n  function textField(project, key) {\n    const item = field(project, key);\n    return item && item.value ? item.value : '';\n  }\n\n  function cleanUrls(value) {\n    return String(value || '')\n      .split(/\\r?\\n/)\n      .map((url) => url.trim())\n      .filter((url) => /^https?:\\/\\//.test(url));\n  }\n\n  function prepareVideo(video) {\n    if (!video) return;\n    video.muted = true;\n    video.defaultMuted = true;\n    video.autoplay = true;\n    video.loop = true;\n    video.playsInline = true;\n    video.preload = 'auto';\n    video.setAttribute('muted', '');\n    video.setAttribute('autoplay', '');\n    video.setAttribute('playsinline', '');\n    video.setAttribute('webkit-playsinline', '');\n  }\n\n  function playVideo(video) {\n    prepareVideo(video);\n    if (!video || typeof video.play !== 'function') return;\n    const attempt = video.play();\n    if (attempt && typeof attempt.catch === 'function') attempt.catch(() => {});\n  }\n\n  function setText(lightbox, selector, value) {\n    const node = lightbox.querySelector(selector);\n    if (node) node.textContent = value || '';\n  }\n\n  function openVideoLightbox(root, card) {\n    const lightbox = root.querySelector('.ap-lightbox');\n    if (!lightbox) return;\n    const media = lightbox.querySelector('.ap-lightbox-media');\n    const image = lightbox.querySelector('[data-ap-lb-image]');\n    let slot = lightbox.querySelector('[data-ap-lb-video]');\n    if (!media) return;\n    if (!slot) {\n      slot = document.createElement('div');\n      slot.setAttribute('data-ap-lb-video', '');\n      media.appendChild(slot);\n    }\n    slot.innerHTML = '';\n    slot.hidden = false;\n    if (image) {\n      image.hidden = true;\n      image.removeAttribute('src');\n    }\n    const sourceVideo = card.querySelector('video');\n    if (sourceVideo) {\n      const clonedVideo = sourceVideo.cloneNode(true);\n      clonedVideo.controls = true;\n      slot.appendChild(clonedVideo);\n      playVideo(clonedVideo);\n    }\n    setText(lightbox, '[data-ap-lb-title]', card.getAttribute('data-title'));\n    setText(lightbox, '[data-ap-lb-artist]', card.getAttribute('data-artist'));\n    setText(lightbox, '[data-ap-lb-caption]', card.getAttribute('data-caption'));\n    setText(lightbox, '[data-ap-lb-placement]', card.getAttribute('data-placement'));\n    setText(lightbox, '[data-ap-lb-style]', card.getAttribute('data-style'));\n    setText(lightbox, '[data-ap-lb-colormode]', card.getAttribute('data-colormode'));\n    lightbox.setAttribute('aria-hidden', 'false');\n    document.body.style.overflow = 'hidden';\n  }\n\n  function createCard(root, project, url) {\n    const artistReference = field(project, 'artist') && field(project, 'artist').reference;\n    const styleReference = field(project, 'style') && field(project, 'style').reference;\n    const artistName =\n      (referenceField(artistReference, 'name') || referenceField(artistReference, 'display_name') || {}).value ||\n      artistHandle.replace(/-/g, ' ');\n    const styleName =\n      (referenceField(styleReference, 'title') || referenceField(styleReference, 'name') || {}).value ||\n      (styleReference && styleReference.handle ? styleReference.handle.replace(/-/g, ' ') : '');\n    const title = textField(project, 'title') || project.handle.replace(/-/g, ' ');\n    const card = document.createElement('button');\n    card.type = 'button';\n    card.className = 'ap-card ap-card--video';\n    card.setAttribute('data-ap-item', '');\n    card.setAttribute('data-ap-video-fallback', '');\n    card.setAttribute('data-media-type', 'video');\n    card.setAttribute('data-artist', artistName);\n    card.setAttribute('data-placement', textField(project, 'placement'));\n    card.setAttribute('data-style', styleName);\n    card.setAttribute('data-title', title);\n    card.setAttribute('data-caption', textField(project, 'description'));\n    card.setAttribute('data-colormode', textField(project, 'color_mode'));\n    card.setAttribute('data-coverup', 'false');\n    card.innerHTML = [\n      '<div class=\"ap-card-media\">',\n      '<span class=\"ap-badge ap-badge--film\">Film</span>',\n      '<video class=\"ap-card-video\" autoplay loop muted playsinline webkit-playsinline preload=\"auto\">',\n      '<source src=\"' + url.replace(/\"/g, '&quot;') + '\" type=\"video/mp4\">',\n      '</video>',\n      '<div class=\"ap-overlay\"><h3></h3><p></p></div>',\n      '</div>',\n    ].join('');\n    const heading = card.querySelector('h3');\n    const artist = card.querySelector('p');\n    if (heading) heading.textContent = title;\n    if (artist) artist.textContent = artistName;\n    card.addEventListener('click', () => openVideoLightbox(root, card));\n    playVideo(card.querySelector('video'));\n    return card;\n  }\n\n  function updateFilters(root, gallery) {\n    const filters = {};\n    root.querySelectorAll('[data-ap-filter]').forEach((select) => {\n      if (select.value) filters[select.getAttribute('data-ap-filter')] = select.value;\n    });\n    gallery.querySelectorAll('[data-ap-video-fallback]').forEach((item) => {\n      let show = true;\n      Object.keys(filters).forEach((key) => {\n        if (item.getAttribute('data-' + key) !== filters[key]) show = false;\n      });\n      item.hidden = !show;\n    });\n    const count = root.querySelector('[id^=\"ap-count-\"]');\n    if (count) {\n      const visible = Array.from(gallery.querySelectorAll('[data-ap-item]')).filter((item) => !item.hidden).length;\n      count.textContent = visible + ' works';\n    }\n  }\n\n  function install(projects) {\n    const root = document.querySelector('[data-artist-portfolio]');\n    const gallery = root && root.querySelector('.ap-gallery');\n    if (!root || !gallery || gallery.querySelector('.ap-card--video') || gallery.dataset.apVideoFallbackLoading) return;\n    gallery.dataset.apVideoFallbackLoading = 'true';\n\n    const matchingProjects = projects\n      .filter((project) => {\n        const artistReference = field(project, 'artist') && field(project, 'artist').reference;\n        return artistReference && artistReference.handle === artistHandle && cleanUrls(textField(project, 'media_video_urls')).length;\n      })\n      .sort((a, b) => {\n        const priorityDifference =\n          (parseInt(textField(b, 'display_priority'), 10) || 0) -\n          (parseInt(textField(a, 'display_priority'), 10) || 0);\n        if (priorityDifference) return priorityDifference;\n        return (parseInt(textField(a, 'sort_order'), 10) || 999) - (parseInt(textField(b, 'sort_order'), 10) || 999);\n      });\n\n    matchingProjects.forEach((project) => {\n      const title = textField(project, 'title') || project.handle.replace(/-/g, ' ');\n      let insertAfter = Array.from(gallery.querySelectorAll('[data-ap-item]:not(.ap-card--video)')).find(\n        (item) => item.getAttribute('data-title') === title\n      );\n      cleanUrls(textField(project, 'media_video_urls')).forEach((url) => {\n        const card = createCard(root, project, url);\n        if (insertAfter && insertAfter.parentNode === gallery) {\n          insertAfter.insertAdjacentElement('afterend', card);\n        } else {\n          gallery.appendChild(card);\n        }\n        insertAfter = card;\n      });\n    });\n\n    if (!matchingProjects.length) return;\n    updateFilters(root, gallery);\n    root.querySelectorAll('[data-ap-filter]').forEach((select) => {\n      select.addEventListener('change', () => window.setTimeout(() => updateFilters(root, gallery), 0));\n    });\n    document.addEventListener('visibilitychange', () => {\n      if (!document.hidden) gallery.querySelectorAll('[data-ap-video-fallback] video').forEach(playVideo);\n    });\n    ['touchstart', 'click'].forEach((eventName) => {\n      document.addEventListener(eventName, () => gallery.querySelectorAll('[data-ap-video-fallback] video').forEach(playVideo), {\n        once: true,\n        passive: true,\n      });\n    });\n  }\n\n  function fetchProjectsPage(after = null, projects = []) {\n    return fetch(endpoint, {\n      method: 'POST',\n      headers: {\n        'content-type': 'application/json',\n        'X-Shopify-Storefront-Access-Token': storefrontToken,\n      },\n      body: JSON.stringify({ query, variables: { after } }),\n    })\n      .then((response) => response.json())\n      .then((payload) => {\n        const connection = payload && payload.data ? payload.data.metaobjects : null;\n        const nextProjects = projects.concat(connection && connection.nodes ? connection.nodes : []);\n        if (connection && connection.pageInfo && connection.pageInfo.hasNextPage && connection.pageInfo.endCursor) {\n          return fetchProjectsPage(connection.pageInfo.endCursor, nextProjects);\n        }\n        return nextProjects;\n      });\n  }\n\n  function run() {\n    fetchProjectsPage()\n      .then(install)\n      .catch(() => {});\n  }\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', run);\n  } else {\n    run();\n  }\n})();\n"],
  "mappings": "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",
  "names": ["value", "nextHref"]
}
