{
  "version": 3,
  "sources": ["/cdn/shop/t/28/assets/tb-modell-berater.js?x=23146"],
  "sourcesContent": ["/* TB V9.88 Modellberater V2.1 \u2013 Modelle je Kategorie als Textzeilen, Produktdaten erst bei Bedarf (/products/<h>.js)\n   V9.87 Modellberater V2 (sections/tb-modell-berater.liquid)\n   Desktop: 3 Fragen nebeneinander, Ergebnis darunter (Empfehlung links, Ausf\u00FChrung rechts).\n   Handy: eine Frage pro Schritt, Kaufleiste klebt unten, solange die Ausf\u00FChrung sichtbar ist.\n   Regeln \u201Ea1+a2 > CODE | ALT1, ALT2 | Warum | Hinweis zur Alternative\u201C.\n   Ausf\u00FChrung aus der Groupify-Gruppe des Solo-Produkts (?section_id=tb-mb-varianten).\n   Ladeger\u00E4t-Typ aus dem Makita-K\u00FCrzel im Handle: r\u2026 = DC18RC, s\u2026 = DC18SD. Mehrere Treffer -> g\u00FCnstigster lieferbarer. */\n(function () {\n  'use strict';\n  /* TB V9.95: Links/Abrufe mit Sprach-Vorsilbe (/da, /sv \u2026) */\n  var LROOT = (window.Shopify && Shopify.routes && Shopify.routes.root) || '/';\n  function lr(u) { return (typeof u === 'string' && u.charAt(0) === '/' && u.charAt(1) !== '/' && LROOT !== '/' && u.indexOf(LROOT) !== 0) ? LROOT + u.slice(1) : u; }\n  var root = (window.Shopify && Shopify.routes && Shopify.routes.root) || '/';\n  var pcache = {}, vcache = {};\n  var MQ_M = '(max-width: 47.5em)';\n\n  function esc(s) { return String(s == null ? '' : s).replace(/[&<>\"]/g, function (c) { return { '&': '&amp;', '<': '&lt;', '>': '&gt;', '\"': '&quot;' }[c]; }); }\n  function money(c) {\n    try {\n      var cur = (window.Shopify && Shopify.currency && Shopify.currency.active) || 'EUR';\n      return new Intl.NumberFormat(document.documentElement.lang || 'de', { style: 'currency', currency: cur }).format(c / 100);\n    } catch (e) { return (c / 100).toFixed(2).replace('.', ',') + ' \u20AC'; }\n  }\n  function lines(t) { return String(t || '').split(/\\r?\\n/).map(function (l) { return l.trim(); }).filter(Boolean); }\n  function parts(l) { return String(l).split('|').map(function (x) { return x.trim(); }); }\n  function key(s) { return String(s || '').trim().toUpperCase().replace(/\\s+/g, ''); }\n  function isM() { return window.matchMedia(MQ_M).matches; }\n\n  /* ---------- Icons (24er Raster, Strich) ---------- */\n  var IC = {\n    sofa: 'M20 9V6a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v3M2 11v5a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-5a2 2 0 0 0-4 0v2H6v-2a2 2 0 0 0-4 0ZM4 18v2M20 18v2',\n    hammer: 'm15 12-8.4 8.4a2 2 0 0 1-2.8-2.8L12.2 9.2M17.6 15 22 10.6M20.9 12 14 5.1a2 2 0 0 0-1.4-.6H9.3l2.1 2.1v2.8l3 3h2.8l2.1 2.1',\n    brick: 'M3 4h18v16H3zM3 9.3h18M3 14.6h18M9 4v5.3M15 9.3v5.3M9 14.6V20',\n    small: 'M4 14h6v6M20 10h-6V4M14 10l7-7M3 21l7-7',\n    power: 'M13 2 3 14h9l-1 8 10-12h-9l1-8z',\n    battery: 'M2 8h16v8H2zM22 11v2M6 11v2M10 11v2',\n    box: 'M21 16V8a2 2 0 0 0-1-1.7l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.7l7 4a2 2 0 0 0 2 0l7-4a2 2 0 0 0 1-1.7zM3.3 7 12 12l8.7-5M12 22V12',\n    bit: 'M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z',\n    nut: 'M12 2.5 20.2 7.25v9.5L12 21.5l-8.2-4.75v-9.5zM12 9a3 3 0 1 0 0 6 3 3 0 0 0 0-6z',\n    car: 'M5 17h14v-5l-2-5H7l-2 5zM5 12h14M7.5 17v2M16.5 17v2',\n    truck: 'M14 17V5H2v12h2M14 9h4l4 4v4h-2M9 17h6M6.5 19.5a2 2 0 1 0 0-4 2 2 0 0 0 0 4zM17.5 19.5a2 2 0 1 0 0-4 2 2 0 0 0 0 4z',\n    quiet: 'M11 5 6 9H2v6h4l5 4zM15.5 8.5a5 5 0 0 1 0 7',\n    corner: 'M4 4v16h16M8 8h8v8',\n    disc: 'M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM12 9a3 3 0 1 0 0 6 3 3 0 0 0 0-6z',\n    speed: 'M12 14l4-4M3.34 19a10 10 0 1 1 17.32 0',\n    hand: 'M18 11V6a2 2 0 0 0-4 0v5M14 10V4a2 2 0 0 0-4 0v6M10 10.5V6a2 2 0 0 0-4 0v8a8 8 0 0 0 16 0v-3a2 2 0 0 0-4 0',\n    lock: 'M5 11h14v10H5zM7 11V7a5 5 0 0 1 10 0v4',\n    star: 'M12 2l3.1 6.3 6.9 1-5 4.9 1.2 6.8L12 17.8 5.8 21l1.2-6.8-5-4.9 6.9-1z',\n    euro: 'M4 10h12M4 14h9M19 6a7.7 7.7 0 0 0-5.2-2A7.9 7.9 0 0 0 6 12c0 4.4 3.5 8 7.8 8 2 0 3.8-.8 5.2-2'\n  };\n  function ico(n, s) { var d = IC[n]; return d ? '<svg viewBox=\"0 0 24 24\" width=\"' + (s || 18) + '\" height=\"' + (s || 18) + '\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"' + d + '\"/></svg>' : ''; }\n  var ICO_CHECK = '<svg viewBox=\"0 0 24 24\" width=\"18\" height=\"18\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"12\" r=\"10\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\"/><path d=\"M8 12.5l2.8 2.8L16 10\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>';\n  var ICO_OK = '<svg viewBox=\"0 0 24 24\" width=\"14\" height=\"14\" aria-hidden=\"true\"><path d=\"M5 12.5l4.5 4.5L19 7.5\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>';\n  var ICO_R = '<svg viewBox=\"0 0 24 24\" width=\"18\" height=\"18\" aria-hidden=\"true\"><path d=\"M9 6l6 6-6 6\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>';\n  var ICO_D = '<svg class=\"c\" viewBox=\"0 0 24 24\" width=\"18\" height=\"18\" aria-hidden=\"true\"><path d=\"M6 9l6 6 6-6\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"/></svg>';\n  var ICO_CMP = '<svg viewBox=\"0 0 24 24\" width=\"18\" height=\"18\" aria-hidden=\"true\"><path d=\"M3 4h18v16H3zM9 4v16M15 4v16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linejoin=\"round\"/></svg>';\n  var ICO_AWARD = '<svg viewBox=\"0 0 24 24\" width=\"13\" height=\"13\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"9\" r=\"6\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"/><path d=\"M8.5 14L7 22l5-3 5 3-1.5-8\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linejoin=\"round\"/></svg>';\n\n  /* ---------- Daten aus den Editor-Feldern ---------- */\n  function parseKat(k) {\n    return {\n      label: k.label, q1: k.q1, q2: k.q2,\n      a1: lines(k.a1).map(function (l) { var p = parts(l); return { k: p[0], t: p[1] || p[0], h: p[2] || '', i: p[3] || '' }; }),\n      a2: lines(k.a2).map(function (l) { var p = parts(l); return { k: p[0], t: p[1] || p[0], h: p[2] || '', only: (p[3] || '').split(',').map(function (x) { return x.trim(); }).filter(Boolean), i: p[4] || '' }; }),\n      models: (function () { var o = {}; lines(k.models).forEach(function (l) { var p = parts(l); if (!p[0] || !p[1]) return; o[key(p[0])] = { code: key(p[0]), name: 'Makita ' + key(p[0]), h: p[1], chips: (p[2] || '').split(';').map(function (x) { return x.trim(); }).filter(Boolean), facts: (p[3] || '').split(';').map(function (x) { var i = x.indexOf('='); return i > 0 ? [x.slice(0, i).trim(), x.slice(i + 1).trim()] : null; }).filter(Boolean), price: null, img: '', url: lr('/products/' + p[1]) }; }); return o; })(),\n      rules: lines(k.rules).map(function (l) {\n        var m = l.match(/^\\s*([^+>]+)\\+([^>]+)>\\s*(.*)$/);\n        if (!m) return null;\n        var p = parts(m[3]);\n        return { a1: m[1].trim(), a2: m[2].trim(), m: key(p[0]), alts: (p[1] || '').split(',').map(key).filter(function (x) { return x && x !== '\u2013' && x !== '-'; }), why: p[2] || '', hint: p[3] || '' };\n      }).filter(Boolean)\n    };\n  }\n  function a2For(kat, a1) { return kat.a2.filter(function (o) { return !o.only.length || o.only.indexOf(a1) > -1; }); }\n  function findRule(kat, a1, a2) {\n    for (var i = 0; i < kat.rules.length; i++) {\n      var r = kat.rules[i];\n      if ((r.a1 === a1 || r.a1 === '*') && (r.a2 === a2 || r.a2 === '*')) return r;\n    }\n    return null;\n  }\n\n  /* ---------- Groupify-Bezeichnung -> Merkmale ---------- */\n  function modelTok(code) { var m = String(code).toLowerCase().match(/^([a-z]+)(\\d+[a-z]?)$/); return m ? [m[1], m[2]] : null; }\n  function chargerOf(handle, code) {\n    var mt = modelTok(code); if (!mt) return 'x';\n    var t = String(handle).toLowerCase().split('-');\n    for (var i = 0; i < t.length - 2; i++) {\n      if (t[i] === mt[0] && t[i + 1] === mt[1]) {\n        var c = t[i + 2] || '';\n        if (c.length > 2 && c.charAt(0) === 'f' && /[rs]/.test(c.charAt(1))) c = c.slice(1);\n        if (c.charAt(0) === 'r') return 'rc';\n        if (c.charAt(0) === 's') return 'sd';\n        return 'x';\n      }\n    }\n    return 'x';\n  }\n  function feat(it, code) {\n    var t = String(it.t || '');\n    var m = t.match(/(\\d+)\\s*x\\s*(\\d+[.,]\\d)\\s*Ah/i) || t.match(/(\\d+)\\s*x\\s*Akku\\s*(\\d+[.,]\\d)\\s*Ah/i);\n    var n = m ? parseInt(m[1], 10) : 0;\n    var ah = m ? m[2].replace('.', ',') : '';\n    var lader = /lade(ger(\u00E4|ae)t|r)/i.test(t) && !/ohne\\s+lade/i.test(t) && n > 0;\n    var box = /makpac/i.test(t) ? 'makpac' : (/koffer/i.test(t) ? 'koffer' : 'none');\n    var extra = false;\n    if (!m && /\\d\\s*x\\s*/i.test(t) && /akku/i.test(t)) extra = true;\n    if (!it.s && !extra) {\n      var r = t.replace(/\\d+\\s*x\\s*\\d+[.,]\\d\\s*Ah/ig, ' ')\n        .replace(/\\b(solo|ohne|akkus?|ladeger(\u00E4|ae)t|lader|und|inkl\\.?|nur|das|ger(\u00E4|ae)t|makpac|transportkoffer|koffer|mit|ah|li-ion|systemkoffer|im)\\b/ig, ' ')\n        .replace(/[\\d.,+\\-\u2013()/]/g, ' ');\n      extra = /[a-z\u00E4\u00F6\u00FC\u00DF]{3,}/i.test(r);\n    }\n    return { h: it.h, t: t, n: n, ah: ah, lader: lader ? chargerOf(it.h, code) : 'none', box: box, extra: extra };\n  }\n\n  function loadVariants(model, code) {\n    if (!vcache[model.h]) {\n      vcache[model.h] = fetch(root + 'products/' + encodeURIComponent(model.h) + '?section_id=tb-mb-varianten', { credentials: 'same-origin' })\n        .then(function (r) { if (!r.ok) throw r.status; return r.text(); })\n        .then(function (html) {\n          var d = document.createElement('div'); d.innerHTML = html;\n          var s = d.querySelector('script[data-mb-var]');\n          var j = s ? JSON.parse(s.textContent) : { items: [] };\n          var mt = modelTok(code);\n          var re = mt ? new RegExp('^makita-' + mt[0] + '-?' + mt[1] + '(-|$)') : null;\n          return (j.items || []).filter(function (it) { return it.s || !re || re.test(String(it.h).toLowerCase()); }).map(function (it) { return feat(it, code); });\n        })\n        .catch(function () { delete vcache[model.h]; return []; });\n    }\n    return vcache[model.h];\n  }\n  function loadProduct(h) {\n    if (!pcache[h]) {\n      pcache[h] = fetch(root + 'products/' + encodeURIComponent(h) + '.js', { credentials: 'same-origin' })\n        .then(function (r) { if (!r.ok) throw r.status; return r.json(); })\n        .catch(function () { delete pcache[h]; return null; });\n    }\n    return pcache[h];\n  }\n  function loadModel(m) {\n    if (m.price != null) return Promise.resolve(m);\n    return loadProduct(m.h).then(function (p) {\n      if (p) {\n        m.price = p.price; m.url = lr(p.url || ('/products/' + p.handle));\n        m.img = p.featured_image ? p.featured_image + (p.featured_image.indexOf('?') > -1 ? '&' : '?') + 'width=480' : '';\n      } else { m.price = 0; }\n      return m;\n    });\n  }\n  function buyForm(id, ok, label) {\n    return '<form action=\"' + root + 'cart/add\" method=\"post\" class=\"f8pr form-card tb-mb__buy\"><input type=\"hidden\" name=\"id\" value=\"' + id + '\"><input type=\"hidden\" name=\"quantity\" value=\"1\"><button type=\"submit\" class=\"overlay-buy_button\"' + (ok ? '' : ' disabled') + '>' + esc(label) + '</button></form>';\n  }\n  function armForms() { if (window.ajaxCart && typeof ajaxCart.init === 'function') { try { ajaxCart.init(); } catch (e) {} } }\n\n  function init(el) {\n    if (el.__mb) return; el.__mb = true;\n    var src = el.querySelector('script[data-mb-data]');\n    if (!src) return;\n    var D; try { D = JSON.parse(src.textContent); } catch (e) { return; }\n    var T = D.t || {};\n    function sp(v, n) { var a = String(v || '').split('|').map(function (x) { return x.trim(); }); while (a.length < n) a.push(a[a.length - 1] || ''); return a; }\n    var A = sp(T.alts, 3); T.alt = A[0]; T.cheaper = A[1]; T.more = A[2];\n    var R4 = sp(T.rows, 4); T.akkus = R4[0]; T.ah = R4[1]; T.lader = R4[2]; T.box = R4[3];\n    var K = sp(T.akkuL, 3); T.noAkku = K[0]; T.oneAkku = K[1]; T.nAkku = K[2];\n    var L = sp(T.laderL, 3); T.rc = L[0]; T.sd = L[1]; T.laderX = L[2];\n    var B = sp(T.boxL, 3); T.noBox = B[0]; T.makpac = B[1]; T.koffer = B[2];\n    var A3 = lines(T.a3).map(parts);\n    var Q3 = [{ k: 'yes', t: (A3[0] || [])[0] || 'Ja', h: (A3[0] || [])[1] || '', i: 'battery' }, { k: 'no', t: (A3[1] || [])[0] || 'Nein', h: (A3[1] || [])[1] || '', i: 'box' }];\n    var kats = (D.kats || []).map(parseKat);\n    function MM() { return (kats[st.kat] || {}).models || {}; }\n    var qEl = el.querySelector('[data-mb-q]'), rEl = el.querySelector('[data-mb-r]'), pEl = el.querySelector('[data-mb-prog]'), bar = el.querySelector('[data-mb-bar]');\n    var st = { kat: 0, a1: null, a2: null, a3: null, rule: null, sel: null, items: null, vtok: 0, htok: 0, rtok: 0, hit: null, open: null };\n\n    function tr(s, map) { s = String(s || ''); Object.keys(map).forEach(function (k) { s = s.split('[' + k + ']').join(map[k]); }); return s; }\n\n    /* ---------- Fragen ---------- */\n    function stepHTML(nr, q, opts, cur, name, state, skip) {\n      var sel = opts.filter(function (o) { return o.k === cur; })[0];\n      var h = '<div class=\"tb-mb__step is-' + state + '\" data-step=\"' + name + '\">' +\n        '<button type=\"button\" class=\"tb-mb__done\" data-mb-open=\"' + name + '\">' + ICO_CHECK + '<b>' + esc(sel ? sel.t : '') + '</b><span>' + esc(T.change) + '</span></button>' +\n        '<p class=\"tb-mb__sh\"><span class=\"tb-mb__nr\">' + (state === 'done' ? ICO_OK : nr) + '</span>' + esc(q) + '</p>';\n      if (skip) return h + '<p class=\"tb-mb__skip\">' + esc(T.skip) + '</p></div>';\n      return h + opts.map(function (o) {\n        return '<button type=\"button\" class=\"tb-mb__o\" data-mb-a=\"' + name + '\" data-k=\"' + esc(o.k) + '\" aria-pressed=\"' + (o.k === cur) + '\">' +\n          (o.i && IC[o.i] ? '<span class=\"tb-mb__oi\">' + ico(o.i) + '</span>' : '') +\n          '<span class=\"tb-mb__ot\"><b>' + esc(o.t) + '</b>' + (o.h ? '<span>' + esc(o.h) + '</span>' : '') + '</span><span class=\"tb-mb__oc\">' + ICO_R + '</span></button>';\n      }).join('') + '</div>';\n    }\n    function renderQ() {\n      var k = kats[st.kat]; if (!k) return;\n      var o2 = st.a1 ? a2For(k, st.a1) : k.a2;\n      var skip2 = !!st.a1 && !o2.length;\n      var s1 = st.a1 && st.open !== 'a1' ? 'done' : 'cur';\n      var s2 = !st.a1 ? 'off' : (skip2 ? 'done' : (st.a2 && st.open !== 'a2' ? 'done' : (s1 === 'cur' ? 'off' : 'cur')));\n      var s3 = !st.rule ? 'off' : (st.a3 && st.open !== 'a3' ? 'done' : ((s1 === 'cur' || s2 === 'cur') ? 'off' : 'cur'));\n      if (!isM()) { if (s1 === 'cur' && st.a1) s1 = 'done'; if (s2 === 'cur' && st.a2) s2 = 'done'; }\n      var h = stepHTML(1, k.q1, k.a1, st.a1, 'a1', s1, false);\n      h += (skip2 && isM()) || !k.a2.length ? '' : stepHTML(2, k.q2, o2.length ? o2 : k.a2.slice(0, 2), st.a2, 'a2', s2, skip2);\n      h += stepHTML(3, T.q3, Q3, st.a3, 'a3', s3, false);\n      qEl.innerHTML = h;\n      var total = (skip2 || !k.a2.length) ? 2 : 3, done = (st.a1 ? 1 : 0) + (skip2 ? 0 : (st.a2 ? 1 : 0)) + (st.a3 ? 1 : 0);\n      var p = ''; for (var i = 0; i < total; i++) p += '<i class=\"' + (i < done ? 'on' : '') + '\"></i>';\n      pEl.innerHTML = p + '<small>' + Math.min(done + 1, total) + ' / ' + total + '</small>';\n      pEl.hidden = done >= total;\n    }\n    function resolve() {\n      var k = kats[st.kat];\n      st.rule = null;\n      if (!st.a1) return;\n      var o2 = a2For(k, st.a1);\n      if (o2.length && !st.a2) return;\n      var r = findRule(k, st.a1, o2.length ? st.a2 : '*');\n      if (r && MM()[r.m]) st.rule = r;\n    }\n\n    /* ---------- Ergebnis ---------- */\n    function renderR(scroll) {\n      bar.hidden = true; st.hit = null;\n      if (!st.rule) { rEl.innerHTML = ''; return; }\n      var r = st.rule, M = MM();\n      var list = [r.m].concat(r.alts).filter(function (c) { return M[c]; });\n      var tok = ++st.rtok;\n      if (list.some(function (c) { return M[c].price == null; })) rEl.innerHTML = '<div class=\"tb-mb__rec\"><div class=\"tb-mb__card\"><p class=\"tb-mb__x\">' + esc(T.loading) + '</p></div></div>';\n      Promise.all(list.map(function (c) { return loadModel(M[c]); })).then(function () { if (tok === st.rtok) drawR(scroll); });\n    }\n    function drawR(scroll) {\n      var r = st.rule, M = MM(), m = M[r.m];\n      var alts = r.alts.filter(function (c) { return M[c]; });\n      var h = '<div class=\"tb-mb__rec\"><div class=\"tb-mb__card\">' +\n        '<div class=\"tb-mb__top\"><a class=\"tb-mb__img\" href=\"' + esc(m.url) + '\">' + (m.img ? '<img src=\"' + esc(m.img) + '\" alt=\"' + esc(m.name) + '\" width=\"200\" height=\"200\" loading=\"lazy\" decoding=\"async\">' : '') + '</a>' +\n        '<div class=\"tb-mb__ct\"><span class=\"tb-mb__badge\">' + ICO_AWARD + '<span class=\"l\">' + esc(T.rec) + '</span><span class=\"s\">' + esc(T.recS || T.rec) + '</span></span><h3 class=\"tb-mb__name\"><a href=\"' + esc(m.url) + '\">' + esc(m.name) + '</a></h3>' +\n        (m.price ? '<p class=\"tb-mb__price\">' + esc(T.from) + ' ' + money(m.price) + ' <small data-mb-count></small></p>' : '') + '</div></div>' +\n        '<div class=\"tb-mb__ct\">' + (r.why ? '<p class=\"tb-mb__why\">' + esc(r.why) + '</p>' : '') +\n        (m.chips.length ? '<ul class=\"tb-mb__chips\">' + m.chips.map(function (c) { return '<li>' + esc(c) + '</li>'; }).join('') + '</ul>' : '') + '</div></div>';\n      if (alts.length) {\n        var a = M[alts[0]];\n        var lab = r.hint || (a.price < m.price ? T.cheaper : (a.price > m.price ? T.more : T.alt));\n        h += '<a class=\"tb-mb__alt\" href=\"' + esc(a.url) + '\">' + (a.img ? '<img src=\"' + esc(a.img) + '\" alt=\"\" width=\"44\" height=\"44\" loading=\"lazy\">' : '') +\n          '<div><small>' + esc(lab) + '</small><b>' + esc(a.name) + '</b></div>' + (a.price ? '<strong>' + esc(T.from) + ' ' + money(a.price) + '</strong>' : '') + ICO_R + '</a>';\n      }\n      var cmp = [r.m].concat(alts).map(function (c) { return M[c]; });\n      if (cmp.length > 1) {\n        var labels = [], vals = cmp.map(function (x) {\n          var o = {}; x.facts.forEach(function (f) { if (labels.indexOf(f[0]) < 0) labels.push(f[0]); o[f[0]] = f[1]; });\n          return o;\n        });\n        if (labels.length) {\n          var short = function (x) { return x.name.replace(/^Makita\\s+/i, ''); };\n          h += '<details class=\"tb-mb__cmp\"><summary>' + ICO_CMP + '<span>' + esc(tr(T.cmpM, { m: cmp.slice(1).map(short).join(' & ') })) + '</span>' + ICO_D + '</summary><div class=\"tb-mb__tw\"><table><thead><tr><th></th>' +\n            cmp.map(function (x, i) { return '<th' + (i === 0 ? ' class=\"is-rec\"' : '') + '>' + esc(short(x)) + '</th>'; }).join('') + '</tr></thead><tbody>' +\n            labels.map(function (l) { return '<tr><td>' + esc(l) + '</td>' + vals.map(function (v, i) { return '<td' + (i === 0 ? ' class=\"is-rec\"' : '') + '>' + esc(v[l] || '\u2013') + '</td>'; }).join('') + '</tr>'; }).join('') +\n            '<tr><td>' + esc(T.from) + '</td>' + cmp.map(function (x, i) { return '<td' + (i === 0 ? ' class=\"is-rec\"' : '') + '>' + (x.price ? money(x.price) : '\u2013') + '</td>'; }).join('') + '</tr>' +\n            '</tbody></table></div></details>';\n        }\n      }\n      h += '</div><div class=\"tb-mb__cfg\" data-mb-cfg></div>';\n      if (T.foot) h += '<p class=\"tb-mb__foot\">' + esc(T.foot) + '</p>';\n      rEl.innerHTML = h;\n      renderCfg(true);\n      var tok = ++st.vtok;\n      st.items = null; st.sel = null;\n      loadVariants(m, r.m).then(function (items) {\n        if (tok !== st.vtok) return;\n        st.items = items;\n        var c = rEl.querySelector('[data-mb-count]');\n        if (c && items.length > 1) c.textContent = tr(T.solo, { n: String(items.length) });\n        renderCfg(true);\n      });\n      if (scroll && isM()) {\n        var card = rEl.querySelector('.tb-mb__rec');\n        if (card) setTimeout(function () { card.scrollIntoView({ behavior: 'smooth', block: 'start' }); }, 60);\n      }\n    }\n\n    /* ---------- Ausf\u00FChrung ---------- */\n    var DIMS = ['n', 'ah', 'lader', 'box'];\n    function matches(it, sel, skip) {\n      for (var i = 0; i < DIMS.length; i++) { var d = DIMS[i]; if (d === skip) continue; if (sel[d] != null && it[d] !== sel[d]) return false; }\n      return true;\n    }\n    function pool() { return (st.items || []).filter(function (i) { return !i.extra; }); }\n    function relevant(sel) { var s = {}; DIMS.forEach(function (d) { s[d] = sel[d]; }); if (s.n === 0) { s.ah = ''; s.lader = 'none'; } return s; }\n    function defaults(a3) {\n      var P = pool(); if (!P.length) return null;\n      function pick(list, prefs, d) { for (var i = 0; i < prefs.length; i++) { if (list.some(function (x) { return x[d] === prefs[i]; })) return prefs[i]; } return list[0][d]; }\n      var sel = {}, Lp = P;\n      sel.n = a3 === 'yes' ? pick(Lp, [0], 'n') : pick(Lp, [2, 1, 3, 4], 'n'); Lp = Lp.filter(function (x) { return x.n === sel.n; });\n      sel.ah = pick(Lp, ['5,0', '4,0', '6,0', '3,0', '2,0', '1,5', ''], 'ah'); Lp = Lp.filter(function (x) { return x.ah === sel.ah; });\n      sel.lader = pick(Lp, ['rc', 'sd', 'x', 'none'], 'lader'); Lp = Lp.filter(function (x) { return x.lader === sel.lader; });\n      sel.box = pick(Lp, ['makpac', 'none', 'koffer'], 'box');\n      return relevant(sel);\n    }\n    function nearest(dim, val) {\n      var P = pool().filter(function (x) { return x[dim] === val; });\n      if (!P.length) return st.sel;\n      var best = null, bs = -1;\n      P.forEach(function (x) { var sc = 0; DIMS.forEach(function (d) { if (d !== dim && x[d] === st.sel[d]) sc++; }); if (sc > bs) { bs = sc; best = x; } });\n      var s = {}; DIMS.forEach(function (d) { s[d] = best[d]; });\n      return relevant(s);\n    }\n    function lbl(d, v) {\n      if (d === 'n') return v === 0 ? T.noAkku : (v === 1 ? T.oneAkku : tr(T.nAkku, { n: String(v) }));\n      if (d === 'ah') return v + ' Ah';\n      if (d === 'lader') return v === 'rc' ? T.rc : (v === 'sd' ? T.sd : T.laderX);\n      if (d === 'box') return v === 'makpac' ? T.makpac : (v === 'koffer' ? T.koffer : T.noBox);\n      return v;\n    }\n    var ORDER = { n: [0, 1, 2, 3, 4], ah: ['1,5', '2,0', '3,0', '4,0', '5,0', '6,0', '8,0'], lader: ['rc', 'sd', 'x'], box: ['none', 'makpac', 'koffer'] };\n    function sortVals(d, vals) { var o = ORDER[d] || []; return vals.sort(function (a, b) { var ia = o.indexOf(a), ib = o.indexOf(b); return (ia < 0 ? 99 : ia) - (ib < 0 ? 99 : ib); }); }\n\n    function renderCfg(fresh) {\n      var box = rEl.querySelector('[data-mb-cfg]'); if (!box || !st.rule) return;\n      var m = MM()[st.rule.m];\n      if (!st.a3) { box.className = 'tb-mb__cfg is-wait'; box.innerHTML = '<p class=\"tb-mb__bt\">' + esc(T.cfg) + '</p><p style=\"margin:0\">' + esc(T.cfgWait) + '</p>'; if (isM()) box.hidden = true; return; }\n      box.hidden = false; box.className = 'tb-mb__cfg';\n      if (!st.items) { box.innerHTML = '<p class=\"tb-mb__bt\">' + esc(T.cfg) + '</p><p class=\"tb-mb__x\">' + esc(T.loading) + '</p>'; return; }\n      var P = pool();\n      var extras = st.items.filter(function (i) { return i.extra; }).length;\n      if (!P.length) { box.innerHTML = '<p class=\"tb-mb__bt\">' + esc(T.cfg) + '</p><a class=\"tb-mb__view\" href=\"' + esc(m.url) + '\">' + esc(T.view) + '</a>'; return; }\n      if (fresh || !st.sel) st.sel = defaults(st.a3);\n      var sel = st.sel;\n      var h = '<p class=\"tb-mb__bt\">' + esc(T.cfg) + '</p>';\n      [['n', T.akkus], ['ah', T.ah], ['lader', T.lader], ['box', T.box]].forEach(function (row) {\n        var d = row[0];\n        if (sel.n === 0 && (d === 'ah' || d === 'lader')) return;\n        var vals = []; P.forEach(function (x) { if (vals.indexOf(x[d]) < 0) vals.push(x[d]); });\n        if (d === 'ah') vals = vals.filter(function (v) { return v; });\n        if (d === 'lader') vals = vals.filter(function (v) { return v !== 'none'; });\n        if (vals.length < 2 && d !== 'n') return;\n        vals = sortVals(d, vals);\n        h += '<div class=\"tb-mb__row\"><span class=\"tb-mb__rl\">' + esc(row[1]) + '</span><div class=\"tb-mb__chs\" role=\"group\" aria-label=\"' + esc(row[1]) + '\">' +\n          vals.map(function (v) {\n            /* V9.89: kein Ausgrauen mehr \u2013 jede Option ist ein vorhandenes Set (ausverkauft zeigt der Treffer); passt sie nicht zur \u00FCbrigen Auswahl, springt der Klick aufs n\u00E4chstpassende Set */\n            return '<button type=\"button\" class=\"tb-tab\" data-mb-dim=\"' + d + '\" data-v=\"' + esc(String(v)) + '\" aria-pressed=\"' + (sel[d] === v) + '\">' + esc(lbl(d, v)) + '</button>';\n          }).join('') + '</div></div>';\n      });\n      h += '<div class=\"tb-mb__hit\" data-mb-hit></div><div data-mb-buy>' + buyForm('', false, T.cart) + '</div><a class=\"tb-mb__view\" data-mb-view href=\"' + esc(m.url) + '\">' + esc(T.view) + '</a>';\n      if (extras) h += '<p class=\"tb-mb__x\"><a href=\"' + esc(m.url) + '\">' + esc(tr(T.extras, { n: String(extras) })) + '</a></p>';\n      box.innerHTML = h;\n      showHit();\n    }\n    function showHit() {\n      var hit = rEl.querySelector('[data-mb-hit]'), buy = rEl.querySelector('[data-mb-buy]'), view = rEl.querySelector('[data-mb-view]');\n      var btn = { set disabled(v) { var b = buy && buy.querySelector('button'); if (b) b.disabled = v; } };\n      if (!hit) return;\n      var c = pool().filter(function (x) { return matches(x, st.sel); });\n      st.hit = null; updBar();\n      if (!c.length) { hit.innerHTML = '<div class=\"tb-mb__htx\"><span>' + esc(T.none) + '</span></div>'; btn.disabled = true; return; }\n      var tok = ++st.htok;\n      hit.innerHTML = '<div class=\"tb-mb__htx\"><span>' + esc(T.loading) + '</span></div>'; btn.disabled = true;\n      Promise.all(c.slice(0, 4).map(function (x) { return loadProduct(x.h).then(function (p) { return { x: x, p: p }; }); })).then(function (res) {\n        if (tok !== st.htok) return;\n        var best = null;\n        res.forEach(function (r) {\n          if (!r.p) return;\n          var v = (r.p.variants || []).filter(function (v) { return v.available; })[0];\n          var cand = { x: r.x, p: r.p, v: v || (r.p.variants || [])[0], ok: !!v };\n          if (!best || (cand.ok && !best.ok) || (cand.ok === best.ok && cand.v && best.v && cand.v.price < best.v.price)) best = cand;\n        });\n        if (!best && !showHit.retry) { showHit.retry = 1; setTimeout(showHit, 900); return; }\n        showHit.retry = 0;\n        if (!best || !best.v) { hit.innerHTML = '<div class=\"tb-mb__htx\"><span>' + esc(T.none) + '</span></div>'; return; }\n        var p = best.p, v = best.v, x = best.x;\n        var img = p.featured_image ? (p.featured_image.indexOf('?') > -1 ? p.featured_image + '&width=160' : p.featured_image + '?width=160') : '';\n        var sub = [x.n ? (x.n + '\u00D7 ' + x.ah + ' Ah') : T.noAkku, x.lader !== 'none' ? lbl('lader', x.lader) : '', x.box !== 'none' ? lbl('box', x.box) : ''].filter(Boolean).join(' \u00B7 ');\n        var code = (String(p.title || '').match(/^Makita\\s+([A-Z]{2,4}\\s?\\d{2,4}\\s?[A-Z0-9]*)/) || [])[1] || p.title;\n        var name = 'Makita ' + String(code).replace(/^Makita\\s+/, '');\n        hit.innerHTML = (img ? '<img src=\"' + esc(img) + '\" alt=\"\" width=\"56\" height=\"56\" loading=\"lazy\">' : '') +\n          '<div class=\"tb-mb__htx\"><b>' + esc(name) + '</b><span>' + esc(sub) + '</span>' + (best.ok ? '' : '<span>' + esc(T.sold) + '</span>') + '</div>' +\n          '<span class=\"tb-mb__hp\">' + money(v.price) + '</span>';\n        if (buy) { buy.innerHTML = buyForm(v.id, best.ok, T.cart); armForms(); }\n        if (view) view.href = lr(p.url || ('/products/' + p.handle));\n        st.hit = { name: name, price: money(v.price), img: img, id: v.id, ok: best.ok };\n        updBar();\n      });\n    }\n\n    /* ---------- Kaufleiste (Handy) ---------- */\n    var cfgVisible = false;\n    function updBar() {\n      if (!st.hit || !cfgVisible || !isM()) { bar.hidden = true; return; }\n      var dock = document.querySelector('nav.lmd');\n      var b = 10;\n      if (dock) { var r = dock.getBoundingClientRect(); if (r.height && getComputedStyle(dock).display !== 'none') b = Math.max(10, Math.round(window.innerHeight - r.top + 8)); }\n      bar.style.setProperty('--mb-bar-b', b + 'px');\n      bar.innerHTML = (st.hit.img ? '<img src=\"' + esc(st.hit.img) + '\" alt=\"\" width=\"44\" height=\"44\">' : '') + '<div><b>' + esc(st.hit.name) + '</b><strong>' + st.hit.price + '</strong></div>' + buyForm(st.hit.id, st.hit.ok, T.cart);\n      bar.hidden = false; armForms();\n    }\n    if ('IntersectionObserver' in window) {\n      var io = new IntersectionObserver(function (es) { es.forEach(function (e) { cfgVisible = e.isIntersecting; }); updBar(); }, { rootMargin: '0px 0px -120px 0px' });\n      var mo = new MutationObserver(function () { var c = rEl.querySelector('[data-mb-cfg]'); io.disconnect(); if (c) io.observe(c); else { cfgVisible = false; updBar(); } });\n      mo.observe(rEl, { childList: true });\n    }\n\n    /* ---------- Events ---------- */\n    function setKat(i) {\n      st.kat = i; st.a1 = st.a2 = st.a3 = null; st.rule = null; st.items = null; st.sel = null; st.open = null; st.vtok++; st.htok++; st.rtok++;\n      el.querySelectorAll('[data-mb-kat]').forEach(function (b) { b.setAttribute('aria-selected', +b.getAttribute('data-mb-kat') === i); });\n      var tb = el.querySelector('[data-mb-kat=\"' + i + '\"]'), tl = tb && tb.parentElement; if (tl && tl.scrollWidth > tl.clientWidth) { tl.scrollTo({ left: Math.max(0, tb.offsetLeft - (tl.clientWidth - tb.offsetWidth) / 2), behavior: 'smooth' }); }\n      renderQ(); renderR(false);\n    }\n    el.addEventListener('click', function (e) {\n      var t;\n      if ((t = e.target.closest('[data-mb-kat]'))) { setKat(+t.getAttribute('data-mb-kat')); return; }\n      if ((t = e.target.closest('[data-mb-open]'))) { st.open = t.getAttribute('data-mb-open'); renderQ(); return; }\n      if ((t = e.target.closest('[data-mb-a]'))) {\n        var n = t.getAttribute('data-mb-a'), k = t.getAttribute('data-k');\n        var oldRule = st.rule;\n        st.open = null;\n        if (n === 'a1') { if (st.a1 !== k) { st.a2 = null; } st.a1 = k; }\n        if (n === 'a2') st.a2 = k;\n        if (n === 'a3') st.a3 = k;\n        if (n !== 'a3') resolve();\n        if (!st.rule) st.a3 = null;\n        renderQ();\n        if (n === 'a3') {\n          renderCfg(true);\n          var rec = rEl.querySelector('.tb-mb__rec');\n          if (rec && isM()) setTimeout(function () { rec.scrollIntoView({ behavior: 'smooth', block: 'start' }); }, 60);\n          return;\n        }\n        if (st.rule !== oldRule) renderR(!!st.rule && !isM());\n        return;\n      }\n      if ((t = e.target.closest('[data-mb-dim]'))) {\n        var d = t.getAttribute('data-mb-dim'), raw = t.getAttribute('data-v');\n        var v = d === 'n' ? parseInt(raw, 10) : raw;\n        var ok = pool().some(function (x) { var s2 = {}; DIMS.forEach(function (k2) { s2[k2] = st.sel[k2]; }); s2[d] = v; return matches(x, relevant(s2)); });\n        if (ok) { st.sel[d] = v; st.sel = relevant(st.sel); if (d === 'n' && v !== 0 && !st.sel.ah) st.sel = nearest(d, v); }\n        else st.sel = nearest(d, v);\n        renderCfg(false);\n        return;\n      }\n    });\n    window.addEventListener('resize', function () { updBar(); });\n    renderQ();\n  }\n\n  function boot() { document.querySelectorAll('[data-tb-mb]').forEach(init); }\n  if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', boot); else boot();\n  document.addEventListener('shopify:section:load', boot);\n  window.TBmb = { feat: feat, chargerOf: chargerOf };\n})();\n"],
  "mappings": "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",
  "names": ["v"]
}
