{
  "version": 3,
  "sources": ["/cdn/shop/t/19/assets/chicchok-checkout-guard.js?checkout_p1_read=b36c57cb71e14f83abb6cc58f5b1232d"],
  "sourcesContent": [";(function () {\n  'use strict'\n\n  var resumingForms = new WeakSet()\n  var checkoutAttempt = 0\n  var checkoutPending = false\n  var checkoutRecoveryTimer = null\n\n  function resetCheckout() {\n    checkoutAttempt += 1\n    checkoutPending = false\n    window.clearTimeout(checkoutRecoveryTimer)\n    if (window.CHICCHOK_CART_FLOW) window.CHICCHOK_CART_FLOW.endCheckout()\n    document.querySelectorAll('button[name=\"checkout\"][aria-busy=\"true\"]').forEach(function (button) {\n      button.removeAttribute('aria-busy')\n    })\n  }\n\n  function checkoutError(error) {\n    var message = error && error.message || 'Checkout could not start. Please try again.'\n    var flow = window.CHICCHOK_CART_FLOW\n    if (flow && typeof flow.showError === 'function') {\n      flow.showError(message)\n      return\n    }\n    document.documentElement.dispatchEvent(new CustomEvent('cart-notification:show', {\n      bubbles: true,\n      cancelable: true,\n      detail: { status: 'error', error: message },\n    }))\n  }\n\n  function currentCartForm(id) {\n    if (id) {\n      var identified = document.getElementById(id)\n      return identified instanceof HTMLFormElement && identified.isConnected ? identified : null\n    }\n    var forms = document.querySelectorAll('form.cart')\n    return forms.length === 1 && forms[0].isConnected ? forms[0] : null\n  }\n\n  document.addEventListener('submit', function (event) {\n    var form = event.target\n    var submitter = event.submitter\n    if (resumingForms.has(form)) return\n    if (!(form instanceof HTMLFormElement) || !submitter || submitter.name !== 'checkout' || event.defaultPrevented) return\n    event.preventDefault()\n    var flow = window.CHICCHOK_CART_FLOW\n    if (checkoutPending || flow && !flow.beginCheckout()) return\n    checkoutPending = true\n    var attempt = ++checkoutAttempt\n    var formId = form.id\n    submitter.setAttribute('aria-busy', 'true')\n\n    Promise.resolve().then(async function () {\n      if (flow) await flow.waitForMutations(20000)\n      try {\n        if (window.CHICCHOK_OPENAI_TRACKING) await window.CHICCHOK_OPENAI_TRACKING.prepareCheckout()\n      } catch (error) {}\n      if (attempt !== checkoutAttempt) return\n      if (window.CHICCHOK_PROTECTION_GUARD) await window.CHICCHOK_PROTECTION_GUARD.ensureConfirmed()\n      if (flow) {\n        var cart = await flow.refreshCart({ allowCheckoutRender: true })\n        if (!cart || !Array.isArray(cart.items) || !cart.items.length) throw new Error('Your cart is empty. Please add an item before checkout.')\n      }\n      if (attempt !== checkoutAttempt) return\n      var currentForm = currentCartForm(formId)\n      if (!currentForm) throw new Error('The cart has changed. Please try checkout again.')\n      var currentSubmitter = Array.from(currentForm.elements).find(function (element) {\n        return element.name === 'checkout' && element.type === 'submit' && element.form === currentForm && element.isConnected && !element.disabled\n      })\n      if (!currentSubmitter) throw new Error('The checkout button is unavailable. Please try again.')\n      if (!Array.from(currentForm.elements).some(function (element) { return element.name === 'checkout' && element.type === 'hidden' && !element.disabled })) {\n        var checkoutInput = document.createElement('input')\n        checkoutInput.type = 'hidden'\n        checkoutInput.name = 'checkout'\n        currentForm.appendChild(checkoutInput)\n      }\n      var quantityInputs = Array.from(currentForm.elements).filter(function (element) { return element.name === 'updates[]' })\n      var quantityDisabled = quantityInputs.map(function (element) { return element.disabled })\n      currentSubmitter.setAttribute('aria-busy', 'true')\n      resumingForms.add(currentForm)\n      quantityInputs.forEach(function (element) { element.disabled = true })\n      try {\n        if (typeof currentForm.requestSubmit === 'function') currentForm.requestSubmit(currentSubmitter)\n        else HTMLFormElement.prototype.submit.call(currentForm)\n      } finally {\n        quantityInputs.forEach(function (element, index) { element.disabled = quantityDisabled[index] })\n        resumingForms.delete(currentForm)\n      }\n      checkoutRecoveryTimer = window.setTimeout(function () {\n        if (attempt !== checkoutAttempt) return\n        resetCheckout()\n        checkoutError(new Error('Checkout is taking longer than expected. Please try again.'))\n      }, 20000)\n    }).catch(function (error) {\n      if (attempt !== checkoutAttempt) return\n      resetCheckout()\n      checkoutError(error)\n    })\n  }, true)\n\n  window.addEventListener('pagehide', resetCheckout)\n  window.addEventListener('pageshow', function (event) {\n    if (event.persisted) resetCheckout()\n  })\n})()\n"],
  "mappings": "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",
  "names": []
}
