{
  "version": 3,
  "sources": ["/cdn/shop/t/30/assets/eu-withdrawal.js?euw_v=5"],
  "sourcesContent": ["(function () {\n  'use strict';\n\n  var KZ_DESK_BASE = (window.KZ_BACKENDS && window.KZ_BACKENDS.kzDesk) || 'https://kzdesk.com';\n  var API = KZ_DESK_BASE + '/api/eu-withdrawal';\n  var form = document.getElementById('kzEuwForm');\n\n  if (!form) return;\n\n  var root = form.closest('.kz-euw') || form;\n  var stepForm = form.querySelector('[data-step=\"form\"]');\n  var stepReview = form.querySelector('[data-step=\"review\"]');\n  var stepDone = form.querySelector('[data-step=\"done\"]');\n  var nameInp = document.getElementById('kzEuwName');\n  var emailInp = document.getElementById('kzEuwEmail');\n  var orderInp = document.getElementById('kzEuwOrder');\n  var companyInp = document.getElementById('kzEuwCompany');\n  var contBtn = document.getElementById('kzEuwContinue');\n  var backBtn = document.getElementById('kzEuwBack');\n  var submitBtn = document.getElementById('kzEuwSubmit');\n  var errEl = document.getElementById('kzEuwError');\n  var doneText = document.getElementById('kzEuwDoneText');\n  var refEl = document.getElementById('kzEuwRef');\n  var reviewName = document.getElementById('kzEuwReviewName');\n  var reviewEmail = document.getElementById('kzEuwReviewEmail');\n  var reviewOrder = document.getElementById('kzEuwReviewOrder');\n  var statementEl = document.getElementById('kzEuwStatement');\n  var config = window.__kzEuWithdrawal || {};\n  var i18n = config.i18n || {};\n  var customer = config.customer || window.__kzCustomer || null;\n  var currentStep = 'form';\n\n  function t(key, fallback) {\n    return typeof i18n[key] === 'string' && i18n[key] ? i18n[key] : fallback;\n  }\n\n  function format(template, values) {\n    return String(template || '').replace(/\\{(\\w+)\\}/g, function (_, key) {\n      return Object.prototype.hasOwnProperty.call(values, key) ? values[key] : '';\n    });\n  }\n\n  function getSid() {\n    var key = 'kz_chat_global_sid';\n    var sid = null;\n\n    try {\n      sid = localStorage.getItem(key);\n    } catch (e) {}\n\n    if (!sid) {\n      sid = 'sess_' + Date.now() + '_' + Math.random().toString(36).slice(2, 10);\n\n      try {\n        localStorage.setItem(key, sid);\n      } catch (e) {}\n    }\n\n    return sid;\n  }\n\n  function cleanOrder(value) {\n    return String(value || '').trim().replace(/^#+/, '').replace(/[^\\w-]/g, '').slice(0, 40);\n  }\n\n  function clearError() {\n    if (errEl) {\n      errEl.textContent = '';\n      errEl.hidden = true;\n    }\n\n    [nameInp, emailInp, orderInp].forEach(function (input) {\n      if (input) input.removeAttribute('aria-invalid');\n    });\n  }\n\n  function showError(message) {\n    if (!errEl) return;\n\n    errEl.textContent = message;\n    errEl.hidden = false;\n  }\n\n  function showStep(step) {\n    stepForm.hidden = step !== 'form';\n    stepReview.hidden = step !== 'review';\n    stepDone.hidden = step !== 'done';\n    currentStep = step;\n    root.setAttribute('data-state', step);\n    clearError();\n\n    if (step !== 'form') {\n      try {\n        root.scrollIntoView({ block: 'start', behavior: 'smooth' });\n      } catch (e) {}\n    }\n  }\n\n  function fillDefaults(orderNumber) {\n    if (customer) {\n      if (nameInp && !nameInp.value) nameInp.value = customer.name || '';\n      if (emailInp && !emailInp.value) emailInp.value = customer.email || '';\n    }\n\n    if (orderNumber && orderInp) orderInp.value = cleanOrder(orderNumber);\n  }\n\n  function getInitialOrder() {\n    try {\n      var params = new URLSearchParams(window.location.search);\n      return params.get('order') || params.get('order_number') || '';\n    } catch (e) {\n      return '';\n    }\n  }\n\n  function focusFirstOpenField() {\n    var target = nameInp && !nameInp.value ? nameInp : emailInp && !emailInp.value ? emailInp : orderInp;\n\n    if (target && target.focus) {\n      try {\n        target.focus();\n      } catch (e) {}\n    }\n  }\n\n  function validate() {\n    clearError();\n\n    var name = (nameInp.value || '').trim().replace(/\\s+/g, ' ');\n    var email = (emailInp.value || '').trim().toLowerCase();\n    var order = cleanOrder(orderInp.value);\n\n    if (name.length < 2) {\n      nameInp.setAttribute('aria-invalid', 'true');\n      showError(t('errorName', 'Enter your name.'));\n      nameInp.focus();\n      return null;\n    }\n\n    if (!/^[\\w.+-]+@[\\w.-]+\\.\\w{2,}$/.test(email)) {\n      emailInp.setAttribute('aria-invalid', 'true');\n      showError(t('errorEmail', 'Enter a valid email address.'));\n      emailInp.focus();\n      return null;\n    }\n\n    if (order.length < 3) {\n      orderInp.setAttribute('aria-invalid', 'true');\n      showError(t('errorOrder', 'Enter your order number.'));\n      orderInp.focus();\n      return null;\n    }\n\n    return { name: name, email: email, order: order };\n  }\n\n  function buildStatement(values) {\n    return [\n      t('statementSubmitted', 'The customer submitted an online EU withdrawal statement.'),\n      format(t('statementCustomer', 'Customer: {name}'), values),\n      format(t('statementEmail', 'Email: {email}'), values),\n      format(t('statementOrder', 'Order: #{order}'), values),\n      t('statementDecision', 'Decision: exercise the EU right of withdrawal for this order.')\n    ].join('\\n');\n  }\n\n  function goReview() {\n    var values = validate();\n\n    if (!values) return;\n\n    reviewName.textContent = values.name;\n    reviewEmail.textContent = values.email;\n    reviewOrder.textContent = '#' + values.order;\n    statementEl.textContent = buildStatement(values);\n    showStep('review');\n\n    if (submitBtn && submitBtn.focus) submitBtn.focus();\n  }\n\n  async function submit(event) {\n    event.preventDefault();\n\n    if (currentStep === 'form') {\n      goReview();\n      return;\n    }\n\n    if (currentStep !== 'review') return;\n\n    var values = validate();\n\n    if (!values) return;\n\n    submitBtn.disabled = true;\n    submitBtn.textContent = t('confirming', 'Confirming...');\n    clearError();\n\n    try {\n      var response = await fetch(API, {\n        method: 'POST',\n        headers: { 'Content-Type': 'application/json' },\n        body: JSON.stringify({\n          sessionId: getSid(),\n          customer_name: values.name,\n          customer_email: values.email,\n          order_number: values.order,\n          locale: config.locale || document.documentElement.lang || '',\n          market_country: config.country || '',\n          source_url: window.location.href,\n          customer_id: customer && customer.id ? String(customer.id) : null,\n          confirm_withdrawal: true,\n          form_version: 'eu-withdrawal-v1',\n          company: companyInp ? companyInp.value : ''\n        })\n      });\n      var data = null;\n\n      try {\n        data = await response.json();\n      } catch (parseError) {}\n\n      if (!response.ok) {\n        throw new Error(response.status >= 500\n          ? t('errorSubmit', 'Unable to submit the request. Please try again.')\n          : t('errorVerify', 'We could not verify these order details. Please use the email used for the purchase and check the order number.'));\n      }\n\n      doneText.textContent = data.emailSent\n        ? format(t('doneEmailSent', 'A confirmation email has been sent to {email}. Our support team will review the request and reply with the next steps.'), { email: values.email })\n        : t('doneReceived', 'Your request was received. Our support team will review it shortly.');\n      refEl.textContent = format(t('reference', 'Request ID: {request_id}'), { request_id: data.requestId || 'received' });\n      showStep('done');\n    } catch (error) {\n      showError(error && error.message ? error.message : t('errorSubmit', 'Unable to submit the request. Please try again.'));\n      submitBtn.disabled = false;\n      submitBtn.textContent = t('confirm', 'Confirm withdrawal');\n    }\n  }\n\n  if (contBtn) contBtn.addEventListener('click', goReview);\n  if (backBtn) {\n    backBtn.addEventListener('click', function () {\n      showStep('form');\n      if (orderInp && orderInp.focus) orderInp.focus();\n    });\n  }\n\n  form.addEventListener('submit', submit);\n  fillDefaults(getInitialOrder());\n  showStep('form');\n\n  window.KzEuWithdrawal = {\n    focus: function (opts) {\n      fillDefaults(opts && opts.orderNumber);\n      showStep('form');\n\n      try {\n        root.scrollIntoView({ block: 'start', behavior: 'smooth' });\n      } catch (e) {}\n\n      focusFirstOpenField();\n    }\n  };\n})();\n"],
  "mappings": "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",
  "names": []
}
