/* شرائح مبالغ التبرع على بطاقات المنتجات */
(function () {
  var cache = {};
  function getAmounts(url) {
    if (!cache[url]) {
      cache[url] = fetch(url).then(function (r) { return r.text(); }).then(function (h) {
        var d = new DOMParser().parseFromString(h, 'text/html');
        var el = d.querySelector('salla-product-options');
        if (!el) return [];
        var opts = JSON.parse(el.getAttribute('options') || '[]');
        var don = opts.find(function (o) { return o.type === 'donation'; });
        if (!don || !don.details) return [];
        return don.details.map(function (x) { return { v: String(x.option_value || x.name), def: !!x.is_default }; });
      }).catch(function () { return []; });
    }
    return cache[url];
  }
  function setVal(input, v) {
    var setter = Object.getOwnPropertyDescriptor(HTMLInputElement.prototype, 'value').set;
    setter.call(input, v);
    input.dispatchEvent(new Event('input', { bubbles: true }));
    input.dispatchEvent(new Event('change', { bubbles: true }));
  }
  function enhance(card) {
    if (card.dataset.chips) return;
    var input = card.querySelector('.content-wrap input');
    var link = card.querySelector('a.product-entry__title, a[href*="/p"]');
    if (!input || !link) return;
    card.dataset.chips = '1';
    getAmounts(link.getAttribute('href')).then(function (list) {
      if (!list.length) return;
      var box = document.createElement('div');
      box.className = 'ra-chips';
      list.forEach(function (it) {
        var b = document.createElement('button');
        b.type = 'button';
        b.className = 'ra-chip';
        b.textContent = it.v + ' ر.س';
        b.onclick = function (e) {
          e.preventDefault(); e.stopPropagation();
          box.querySelectorAll('.ra-chip').forEach(function (x) { x.classList.remove('on'); });
          b.classList.add('on');
          setVal(input, it.v);
        };
        box.appendChild(b);
        if (it.def && !input.value) { b.classList.add('on'); setVal(input, it.v); }
      });
      input.addEventListener('input', function () {
        box.querySelectorAll('.ra-chip').forEach(function (x) { x.classList.toggle('on', x.textContent === input.value + ' ر.س'); });
      });
      input.parentElement.insertBefore(box, input);
    });
  }
  function run() { document.querySelectorAll('custom-salla-product-card').forEach(enhance); }
  var st = document.createElement('style');
  st.textContent = '.ra-chips{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-bottom:8px}' +
    '.ra-chip{border:1px solid #d6dbe4;border-radius:8px;padding:6px 4px;font-size:13px;background:#fff;color:#0b2a5b;cursor:pointer;transition:.15s}' +
    '.ra-chip:hover{border-color:#0b2a5b}.ra-chip.on{background:#0b2a5b;color:#fff;border-color:#0b2a5b}';
  document.head.appendChild(st);
  run();
  new MutationObserver(run).observe(document.body, { childList: true, subtree: true });
})();