{
  "version": 3,
  "sources": ["/cdn/shop/t/74/assets/kaching-i18n.js?cb=20260920v1"],
  "sourcesContent": ["/* Kaching Subscriptions \u2014 traduction du widget \u00E0 l'affichage (fr/de/es). v1 \u2014 20.09.2026\n\n   Pourquoi : les textes du widget Kaching vivent dans l'app, pas dans les traductions\n   Shopify, et l'auto-traduction de Kaching est derri\u00E8re un palier payant. On les\n   r\u00E9\u00E9crit donc \u00E0 l'affichage, exactement comme seal-sync.js le fait pour Seal.\n\n   Cha\u00EEnes couvertes (relev\u00E9es sur le rendu r\u00E9el) :\n     .kaching-subscriptions__block-title            \"PURCHASE OPTIONS\"\n     .kaching-subscriptions__card-title             \"One-time purchase\" / \"Subscribe & save\"\n     .kaching-subscriptions__selling-plan-label     \"17% off\"\n     .kaching-subscriptions__dropdown-trigger-label \"Deliver every: 30 days\"\n     .kaching-subscriptions__dropdown-item-label    \"Deliver every: 60 days\"\n     .ks-subscription-details-text                  \"Subscription details\"\n     .ks-subscription-details-tooltip-text          \"Deliver every 30 days. 17% off.\"\n\n   Idempotent : la cha\u00EEne anglaise d'origine est conserv\u00E9e dans data-ki-en, donc une\n   re-traduction apr\u00E8s re-render de Kaching repart toujours de la source.\n*/\n(function () {\n  var LOCALE = ((window.Shopify && Shopify.locale) || document.documentElement.lang || 'en').split('-')[0];\n  if (LOCALE === 'en') return;\n\n  var UNITS = {\n    fr: { day: ['jour', 'jours'], week: ['semaine', 'semaines'], month: ['mois', 'mois'], year: ['an', 'ans'] },\n    de: { day: ['Tag', 'Tage'], week: ['Woche', 'Wochen'], month: ['Monat', 'Monate'], year: ['Jahr', 'Jahre'] },\n    es: { day: ['d\u00EDa', 'd\u00EDas'], week: ['semana', 'semanas'], month: ['mes', 'meses'], year: ['a\u00F1o', 'a\u00F1os'] }\n  };\n\n  var T = {\n    fr: {\n      blockTitle: 'OPTIONS D\u2019ACHAT',\n      oneTime: 'Achat unique',\n      subscribe: 'Abonnez-vous et \u00E9conomisez',\n      off: function (p) { return '\u2212' + p + '\u00A0%'; },\n      every: function (q) { return 'Livraison tous les ' + q; },\n      details: 'D\u00E9tails de l\u2019abonnement',\n      tooltip: function (q, p) { return 'Livraison tous les ' + q + '. \u2212' + p + '\u00A0%.'; }\n    },\n    de: {\n      blockTitle: 'KAUFOPTIONEN',\n      oneTime: 'Einmaliger Kauf',\n      subscribe: 'Abonnieren und sparen',\n      off: function (p) { return p + '\u00A0% g\u00FCnstiger'; },\n      every: function (q) { return 'Lieferung alle ' + q; },\n      details: 'Abo-Details',\n      tooltip: function (q, p) { return 'Lieferung alle ' + q + '. ' + p + '\u00A0% g\u00FCnstiger.'; }\n    },\n    es: {\n      blockTitle: 'OPCIONES DE COMPRA',\n      oneTime: 'Compra \u00FAnica',\n      subscribe: 'Suscr\u00EDbete y ahorra',\n      off: function (p) { return p + '\u00A0% de descuento'; },\n      every: function (q) { return 'Entrega cada ' + q; },\n      details: 'Detalles de la suscripci\u00F3n',\n      tooltip: function (q, p) { return 'Entrega cada ' + q + '. ' + p + '\u00A0% de descuento.'; }\n    }\n  };\n\n  var L = T[LOCALE], U = UNITS[LOCALE];\n  if (!L || !U) return;\n\n  /* \"30 days\" -> \"30 jours\" ; \"1 month\" -> \"1 mois\" */\n  function qty(n, unit) {\n    var u = U[unit.replace(/s$/, '').toLowerCase()];\n    if (!u) return null;\n    return n + ' ' + (parseInt(n, 10) > 1 ? u[1] : u[0]);\n  }\n\n  /* Lit la source anglaise une fois pour toutes, puis \u00E9crit la traduction. */\n  function setText(el, fn) {\n    var src = el.getAttribute('data-ki-en');\n    if (src === null) { src = el.textContent; el.setAttribute('data-ki-en', src); }\n    var next = fn(String(src).replace(/\\s+/g, ' ').trim());\n    if (next && el.textContent !== next) el.textContent = next;\n  }\n\n  function translateAll() {\n    var roots = document.querySelectorAll('kaching-subscriptions');\n    if (!roots.length) return;\n\n    roots.forEach(function (root) {\n      root.querySelectorAll('.kaching-subscriptions__block-title').forEach(function (el) {\n        setText(el, function (s) { return /purchase options/i.test(s) ? L.blockTitle : null; });\n      });\n\n      root.querySelectorAll('.kaching-subscriptions__card-title').forEach(function (el) {\n        setText(el, function (s) {\n          if (/^one-?time purchase$/i.test(s)) return L.oneTime;\n          if (/^subscribe\\s*&(amp;)?\\s*save$/i.test(s)) return L.subscribe;\n          return null;\n        });\n      });\n\n      root.querySelectorAll('.kaching-subscriptions__selling-plan-label').forEach(function (el) {\n        setText(el, function (s) {\n          var m = s.match(/^(\\d+(?:[.,]\\d+)?)\\s*%\\s*off$/i);\n          return m ? L.off(m[1].replace('.', ',')) : null;\n        });\n      });\n\n      root.querySelectorAll('.kaching-subscriptions__dropdown-trigger-label, .kaching-subscriptions__dropdown-item-label').forEach(function (el) {\n        setText(el, function (s) {\n          var m = s.match(/^deliver every:?\\s*(\\d+)\\s*(day|week|month|year)s?$/i);\n          if (!m) return null;\n          var q = qty(m[1], m[2]);\n          return q ? L.every(q) : null;\n        });\n      });\n\n      root.querySelectorAll('.ks-subscription-details-text').forEach(function (el) {\n        setText(el, function (s) { return /subscription details/i.test(s) ? L.details : null; });\n      });\n\n      root.querySelectorAll('.ks-subscription-details-tooltip-text').forEach(function (el) {\n        setText(el, function (s) {\n          var m = s.match(/^deliver every\\s*(\\d+)\\s*(day|week|month|year)s?\\.\\s*(\\d+(?:[.,]\\d+)?)\\s*%\\s*off\\.?$/i);\n          if (!m) return null;\n          var q = qty(m[1], m[2]);\n          return q ? L.tooltip(q, m[3].replace('.', ',')) : null;\n        });\n      });\n    });\n  }\n\n  var scheduled = false;\n  function schedule() {\n    if (scheduled) return;\n    scheduled = true;\n    setTimeout(function () { scheduled = false; translateAll(); }, 0);\n  }\n\n  function start() {\n    translateAll();\n    new MutationObserver(function (muts) {\n      var hit = muts.some(function (m) {\n        var t = m.target;\n        if (t.nodeType !== 1) t = t.parentElement;\n        if (!t) return false;\n        return !!(t.closest && (t.closest('kaching-subscriptions') || (t.querySelector && t.querySelector('kaching-subscriptions'))));\n      });\n      if (hit) schedule();\n    }).observe(document.body, { childList: true, subtree: true, characterData: true });\n\n    /* Kaching monte son widget tard et le reconstruit au changement de variante. */\n    var n = 0;\n    var iv = setInterval(function () { n++; translateAll(); if (n > 75) clearInterval(iv); }, 800);\n    document.addEventListener('click', schedule, true);\n  }\n\n  if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', start);\n  else start();\n})();"],
  "mappings": "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",
  "names": []
}
