{
  "version": 3,
  "sources": ["/cdn/shop/t/36/assets/holster-pdp-wallets.js?holster_wallets=1788750201"],
  "sourcesContent": ["/**\n * Holster wallet proxies (PDP + cart drawer)\n * - Keep Apple Pay / Google Pay proxy buttons visible under ATC / Zur Kasse\n * - Hide Shopify \"Jetzt zum Checkout\" (unbranded buy_it_now) and more-options link\n * - Wire proxy clicks to real Shopify wallet buttons when available\n * - Never re-enable PayPal on restricted products\n *\n * Perf: scoped MutationObserver (hosts only), no document-wide subtree scanning storms.\n */\n(function () {\n  'use strict';\n\n  var HOST_SEL = '.holster-pdp-wallets, .holster-cart-wallets';\n  var MORE_SEL =\n    'more-payment-options-link, .shopify-payment-button__more-options, [class*=\"more-payment\"], a[href=\"#more-payment-options\"]';\n  var UNBRANDED_SEL =\n    '.shopify-payment-button__button--unbranded, button.shopify-payment-button__button--unbranded, [data-testid=\"ShopifyPay-button\"]';\n\n  function hay(el) {\n    if (!el) return '';\n    return [\n      el.className,\n      el.id,\n      el.getAttribute && el.getAttribute('aria-label'),\n      el.getAttribute && el.getAttribute('title'),\n      el.getAttribute && el.getAttribute('data-testid'),\n      el.getAttribute && el.getAttribute('name'),\n      el.tagName,\n      el.textContent,\n    ]\n      .join(' ')\n      .toLowerCase();\n  }\n\n  function matchWallet(el, kind) {\n    var h = hay(el);\n    if (kind === 'apple') {\n      return h.indexOf('apple-pay') !== -1 || h.indexOf('apple pay') !== -1 || h.indexOf('applepay') !== -1;\n    }\n    if (kind === 'google') {\n      return (\n        h.indexOf('google-pay') !== -1 ||\n        h.indexOf('google pay') !== -1 ||\n        h.indexOf('googlepay') !== -1 ||\n        (h.indexOf('gpay') !== -1 && h.indexOf('paypal') === -1)\n      );\n    }\n    return false;\n  }\n\n  function walk(node, fn) {\n    if (!node) return;\n    fn(node);\n    if (node.querySelectorAll) {\n      node.querySelectorAll('*').forEach(function (child) {\n        if (child.shadowRoot) walk(child.shadowRoot, fn);\n      });\n    }\n    if (node.shadowRoot) walk(node.shadowRoot, fn);\n  }\n\n  function hideNode(el) {\n    if (!el) return;\n    el.setAttribute('data-holster-wallet-hidden', '1');\n    el.style.setProperty('display', 'none', 'important');\n    el.style.setProperty('visibility', 'hidden', 'important');\n    el.style.setProperty('height', '0', 'important');\n    el.style.setProperty('overflow', 'hidden', 'important');\n    el.style.setProperty('pointer-events', 'none', 'important');\n    el.setAttribute('aria-hidden', 'true');\n  }\n\n  function hideUnwanted(scope) {\n    if (!scope || !scope.querySelectorAll) return;\n    scope.querySelectorAll(MORE_SEL).forEach(hideNode);\n    scope.querySelectorAll(UNBRANDED_SEL).forEach(hideNode);\n    scope.querySelectorAll('button, a, [role=\"button\"]').forEach(function (el) {\n      var t = (el.textContent || '').replace(/\\s+/g, ' ').trim().toLowerCase();\n      if (el.getAttribute('data-holster-wallet-proxy')) return;\n      var isCheckoutLabel =\n        t === 'jetzt zum checkout' ||\n        t.indexOf('jetzt zum checkout') !== -1 ||\n        t === 'buy it now' ||\n        t === 'buy with shop' ||\n        (t.indexOf('shop pay') !== -1 && t.indexOf('google') === -1 && t.indexOf('apple') === -1);\n      if (isCheckoutLabel) hideNode(el);\n    });\n  }\n\n  function findClickable(scope, kind) {\n    var found = null;\n    walk(scope, function (root) {\n      if (found || !root.querySelectorAll) return;\n      root.querySelectorAll('button, a, [role=\"button\"], div[tabindex]').forEach(function (el) {\n        if (found) return;\n        if (el.getAttribute && el.getAttribute('data-holster-wallet-proxy')) return;\n        if (matchWallet(el, kind)) found = el;\n      });\n    });\n    return found;\n  }\n\n  function activateWallet(host, kind) {\n    var shopifyHost = host.querySelector('[data-holster-shopify-wallets]') || host;\n    var target = findClickable(shopifyHost, kind) || findClickable(document, kind);\n    if (target) {\n      target.click();\n      return;\n    }\n\n    var more = null;\n    walk(shopifyHost, function (root) {\n      if (more || !root.querySelectorAll) return;\n      root.querySelectorAll(MORE_SEL + ', button, a').forEach(function (el) {\n        if (more) return;\n        var h = hay(el);\n        if (\n          h.indexOf('weitere bezahl') !== -1 ||\n          h.indexOf('more payment') !== -1 ||\n          h.indexOf('more-payment') !== -1 ||\n          el.tagName === 'MORE-PAYMENT-OPTIONS-LINK'\n        ) {\n          more = el.querySelector('a, button') || el;\n        }\n      });\n    });\n    if (more) {\n      var wrap = more.closest(MORE_SEL) || more;\n      wrap.style.pointerEvents = 'auto';\n      wrap.style.display = 'block';\n      more.click();\n      setTimeout(function () {\n        var retry = findClickable(document, kind);\n        if (retry) retry.click();\n        hideUnwanted(host);\n      }, 400);\n      return;\n    }\n\n    var root = (window.Shopify && window.Shopify.routes && window.Shopify.routes.root) || '/';\n\n    if (host.closest('.holster-cart-wallets, .cart__ctas, cart-drawer-component, #cart-drawer, .cart-drawer')) {\n      window.location.href = root + 'checkout';\n      return;\n    }\n\n    var form =\n      host.closest('form[action*=\"/cart/add\"]') ||\n      document.querySelector('product-form-component form[action*=\"/cart/add\"], form[action*=\"/cart/add\"]');\n    if (!form) return;\n    var fd = new FormData(form);\n    fetch(root + 'cart/add.js', {\n      method: 'POST',\n      headers: { Accept: 'application/json' },\n      body: fd,\n      credentials: 'same-origin',\n    })\n      .then(function () {\n        window.location.href = root + 'checkout';\n      })\n      .catch(function () {\n        form.submit();\n      });\n  }\n\n  function wireHost(host) {\n    hideUnwanted(host);\n    walk(host, hideUnwanted);\n\n    host.querySelectorAll('[data-holster-wallet-proxy]').forEach(function (btn) {\n      if (btn.getAttribute('data-holster-wallet-wired') === '1') return;\n      btn.setAttribute('data-holster-wallet-wired', '1');\n      btn.addEventListener('click', function (ev) {\n        ev.preventDefault();\n        ev.stopPropagation();\n        activateWallet(host, btn.getAttribute('data-holster-wallet-proxy'));\n      });\n    });\n  }\n\n  function run() {\n    document.querySelectorAll(HOST_SEL).forEach(wireHost);\n    document\n      .querySelectorAll(\n        '.product-information ' + UNBRANDED_SEL + ', .product-details ' + UNBRANDED_SEL + ', .buy-buttons-block ' + UNBRANDED_SEL\n      )\n      .forEach(hideNode);\n    document.querySelectorAll('.product-information button, .product-details button, .buy-buttons-block button').forEach(function (el) {\n      if (el.getAttribute('data-holster-wallet-proxy')) return;\n      var t = (el.textContent || '').replace(/\\s+/g, ' ').trim().toLowerCase();\n      if (t.indexOf('jetzt zum checkout') !== -1) hideNode(el);\n    });\n  }\n\n  var scheduled = false;\n  function schedule() {\n    if (scheduled) return;\n    scheduled = true;\n    requestAnimationFrame(function () {\n      scheduled = false;\n      run();\n    });\n  }\n\n  function observeHosts() {\n    if (typeof MutationObserver === 'undefined') return;\n    document.querySelectorAll(HOST_SEL + ', #cart-drawer, .product-information, .buy-buttons-block').forEach(function (root) {\n      if (root.getAttribute('data-holster-wallet-mo') === '1') return;\n      root.setAttribute('data-holster-wallet-mo', '1');\n      var mo = new MutationObserver(schedule);\n      mo.observe(root, { childList: true, subtree: true });\n    });\n  }\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', function () {\n      schedule();\n      observeHosts();\n    });\n  } else {\n    schedule();\n    observeHosts();\n  }\n  window.addEventListener('load', function () {\n    schedule();\n    observeHosts();\n  });\n  document.addEventListener('shopify:section:load', function () {\n    schedule();\n    observeHosts();\n  });\n  document.addEventListener('cart-drawer:refreshed', schedule);\n  document.addEventListener('cart:update', schedule);\n  document.addEventListener('shopify:cart:lines-update', schedule);\n  // Short retries for late Shopify wallet injection only (no long polling)\n  [300, 1200].forEach(function (ms) {\n    setTimeout(function () {\n      schedule();\n      observeHosts();\n    }, ms);\n  });\n})();\n"],
  "mappings": "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",
  "names": ["root"]
}
