{
  "version": 3,
  "sources": ["/cdn/shop/t/33/assets/home-promo.js?launch=20261006-offers"],
  "sourcesContent": ["const assetBase = window.WAMORY_ASSET_BASE || 'assets/';\n// Wamory homepage merchandising: promo carousel, Quick Journey Selector and Today's Offer (daily deal).\n// Content lives in promo-data.js. This file only renders it, in the page language, and never edits app.js state:\n// product cards for the daily deal come from the same card renderer the rest of the homepage uses\n// (window.wamoryStore, published by app.js), so hearts / add-to-bag / quick view behave identically.\nimport { promoConfig, promoSlides, journeySelector, dailyDeal as defaultDeal } from './promo-data.js?v=20261014-deals-slide-v2';\nimport { expandTokens } from './commerce-rules.js';\n\nconst html = document.documentElement;\nconst lang = () => (html.lang === 'en' ? 'en' : 'ar');\nconst tr = (ar, en) => (lang() === 'en' ? en : ar);\nconst tx = o => (o && (o[lang()] || o.ar)) || '';\n// Copy with {tokens} (e.g. {welcomeCredit}) filled from commerce-rules.js in the customer's market currency.\nconst tt = o => expandTokens(tx(o), lang());\nconst esc = s => String(s == null ? '' : s).replace(/[&<>\"']/g, c => ({ '&': '&amp;', '<': '&lt;', '>': '&gt;', '\"': '&quot;', \"'\": '&#39;' }[c]));\nconst reduceMotion = window.matchMedia ? window.matchMedia('(prefers-reduced-motion: reduce)') : { matches: false };\n\nconst SVG = {\n  chevron: '<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"m9 6 6 6-6 6\"/></svg>',\n  arrow: '<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M19 12H5m6 6-6-6 6-6\"/></svg>',\n  pause: '<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M9 6v12M15 6v12\"/></svg>',\n  play: '<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"m8 5 11 7-11 7V5Z\"/></svg>',\n  sun: '<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M12 2v2m0 16v2M2 12h2m16 0h2M5 5l1 1m12 12 1 1M5 19l1-1M18 6l1-1M17 12a5 5 0 1 1-10 0 5 5 0 0 1 10 0\"/></svg>',\n  smile: '<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0ZM8 14s1 3 4 3 4-3 4-3M8 9h.01M16 9h.01\"/></svg>',\n  heart: '<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8L12 21l8.8-8.6a5.5 5.5 0 0 0 0-7.8Z\"/></svg>'\n};\n\n// Internal pages get the active language; in-page anchors and external links are left alone.\nfunction route(dest) {\n  if (!dest) return '#';\n  if (dest.startsWith('#') || /^(https?:|mailto:)/.test(dest)) return dest;\n  const [path, hash = ''] = dest.split('#');\n  return `${path}${path.includes('?') ? '&' : '?'}lang=${lang()}${hash ? '#' + hash : ''}`;\n}\n// Copy text: escaped, with numbers like 15% kept left-to-right so the percent sign never flips in RTL.\nconst rich = s => esc(s).replace(/(\\d[\\d.,]*%)/g, '<bdi dir=\"ltr\">$1</bdi>');\nconst isoTime = v => { const t = v ? Date.parse(v) : NaN; return Number.isNaN(t) ? null : t; };\n\n/* ==================================================================================\n   1. PROMO / HIGHLIGHTS CAROUSEL\n   ================================================================================== */\nlet promoIndex = 0, promoTimer = null, userPaused = false, focusing = false, touching = false, onScreen = true, scrollFrame = 0;\nlet promoRoot = null, promoObserver = null;\n\nfunction activeSlides(now = Date.now()) {\n  return promoSlides.filter(s => {\n    if (!s || !s.active) return false;\n    const start = isoTime(s.startDate), end = isoTime(s.endDate);\n    return (start === null || now >= start) && (end === null || now <= end);\n  });\n}\nfunction slideMarkup(s, i, total) {\n  const imageName = lang() === 'en' && s.imageEn ? s.imageEn : s.image;\n  const imageUrl = window.WAMORY_PROMO_ASSETS?.[imageName] || `${assetBase}${imageName}`;\n  if (s.imageOnly) {\n    return `<article class=\"promo-slide is-image-only ${s.code ? 'has-art-code' : ''} theme-${esc(s.theme || 'blush')}\" id=\"promo-slide-${i}\" data-index=\"${i}\" role=\"group\" aria-roledescription=\"${tr('\u0634\u0631\u064A\u062D\u0629', 'slide')}\" aria-label=\"${i + 1} / ${total}\">\n      <a class=\"promo-art-link promo-cta\" href=\"${esc(route(s.destination))}\" data-promo=\"${esc(s.id)}\" aria-label=\"${esc(tx(s.cta))}\"><div class=\"promo-media\"><img src=\"${esc(imageUrl)}\" alt=\"${esc(tt(s.imageAlt))}\" loading=\"${i === 0 ? 'eager' : 'lazy'}\" fetchpriority=\"${i === 0 ? 'high' : 'auto'}\" width=\"1280\" height=\"720\"></div></a>\n      ${s.code ? `<button class=\"promo-art-code\" type=\"button\" data-copy-code=\"${esc(s.code)}\" aria-label=\"${tr('\u0646\u0633\u062E \u0643\u0648\u062F \u0627\u0644\u062E\u0635\u0645 FIRST50','Copy discount code FIRST50')}\"><bdi dir=\"ltr\">${esc(s.code)}</bdi><span class=\"promo-copy-status\" role=\"status\" aria-live=\"polite\"></span></button>` : ''}\n    </article>`;\n  }\n  const badge = s.discount && s.discount.value != null && s.discount.value !== ''\n    ? `<span class=\"promo-badge\">${s.discount.unit === 'percent' || !s.discount.unit ? `<bdi dir=\"ltr\">\u2212${esc(s.discount.value)}%</bdi>` : esc(s.discount.value)}</span>` : '';\n  const code = s.code ? `<button class=\"promo-code promo-copy-code\" type=\"button\" data-copy-code=\"${esc(s.code)}\" aria-label=\"${tr('\u0646\u0633\u062E \u0643\u0648\u062F \u0627\u0644\u062E\u0635\u0645','Copy discount code')}\"><bdi dir=\"ltr\">${esc(s.code)}</bdi><span>${tr('\u0627\u0646\u0633\u062E\u064A \u0627\u0644\u0643\u0648\u062F','Copy code')}</span></button><span class=\"promo-copy-status\" role=\"status\" aria-live=\"polite\"></span>` : '';\n  const cta = s.cta && tx(s.cta) ? `<a class=\"promo-cta button\" href=\"${esc(route(s.destination))}\" data-promo=\"${esc(s.id)}\"><span>${esc(tx(s.cta))}</span>${SVG.arrow}</a>` : '';\n  const eyebrow = tt(s.eyebrow);\n  return `<article class=\"promo-slide theme-${esc(s.theme || 'blush')}\" id=\"promo-slide-${i}\" data-index=\"${i}\" role=\"group\" aria-roledescription=\"${tr('\u0634\u0631\u064A\u062D\u0629', 'slide')}\" aria-label=\"${i + 1} / ${total}\">\n    <div class=\"promo-copy\">\n      ${eyebrow ? `<span class=\"promo-eyebrow\">${rich(eyebrow)}</span>` : ''}\n      <p class=\"promo-title\" role=\"heading\" aria-level=\"2\">${rich(tt(s.title))}</p>\n      ${tt(s.description) ? `<p class=\"promo-desc\">${rich(tt(s.description))}</p>` : ''}\n      ${badge || code ? `<div class=\"promo-tags\">${badge}${code}</div>` : ''}\n      ${cta}\n    </div>\n    <div class=\"promo-media${s.imageFit === 'contain' ? ' is-contain' : ''}\"><img src=\"${esc(imageUrl)}\" alt=\"${esc(tt(s.imageAlt) || '')}\" loading=\"${i === 0 ? 'eager' : 'lazy'}\" width=\"900\" height=\"600\" style=\"--pos:${esc(s.imagePosition || 'center')};--pos-m:${esc(s.imagePositionMobile || s.imagePosition || 'center')}\"></div>\n  </article>`;\n}\nfunction renderPromo() {\n  promoRoot = document.querySelector('#promo');\n  if (!promoRoot) return;\n  clearTimeout(promoTimer);\n  const slides = activeSlides();\n  if (!slides.length) { promoRoot.hidden = true; promoRoot.innerHTML = ''; return; }\n  promoRoot.hidden = false;\n  promoIndex = Math.min(promoIndex, slides.length - 1);\n  const many = slides.length > 1;\n  const canAuto = many && !reduceMotion.matches;\n  promoRoot.classList.add('promo-refined');\n  promoRoot.setAttribute('aria-roledescription', tr('\u0634\u0631\u0627\u0626\u062D \u0645\u062A\u062D\u0631\u0643\u0629', 'carousel'));\n  promoRoot.setAttribute('aria-label', tx(promoConfig.ariaLabel));\n  promoRoot.innerHTML = `<div class=\"promo-viewport\">\n    <div class=\"promo-track\" id=\"promo-track\" aria-live=\"off\">${slides.map((s, i) => slideMarkup(s, i, slides.length)).join('')}</div>\n    ${many && promoConfig.showArrows ? `<button class=\"promo-arrow promo-prev\" type=\"button\" aria-controls=\"promo-track\" aria-label=\"${tr('\u0627\u0644\u0634\u0631\u064A\u062D\u0629 \u0627\u0644\u0633\u0627\u0628\u0642\u0629', 'Previous slide')}\">${SVG.chevron}</button><button class=\"promo-arrow promo-next\" type=\"button\" aria-controls=\"promo-track\" aria-label=\"${tr('\u0627\u0644\u0634\u0631\u064A\u062D\u0629 \u0627\u0644\u062A\u0627\u0644\u064A\u0629', 'Next slide')}\">${SVG.chevron}</button>` : ''}\n  </div>\n  ${many ? `<div class=\"promo-controls\"><div class=\"promo-dots\">${slides.map((s, i) => `<button class=\"promo-dot\" type=\"button\" data-go=\"${i}\" aria-controls=\"promo-track\" aria-label=\"${tr('\u0627\u0630\u0647\u0628\u064A \u0625\u0644\u0649 \u0627\u0644\u0634\u0631\u064A\u062D\u0629', 'Go to slide')} ${i + 1}\"><span></span></button>`).join('')}</div>${canAuto && promoConfig.showPause ? `<button class=\"promo-pause\" type=\"button\" aria-label=\"${tr('\u0625\u064A\u0642\u0627\u0641 \u0627\u0644\u062A\u0634\u063A\u064A\u0644 \u0627\u0644\u062A\u0644\u0642\u0627\u0626\u064A', 'Pause automatic slideshow')}\" aria-pressed=\"false\">${SVG.pause}</button>` : ''}</div>` : ''}`;\n  syncPromo(true);\n  requestAnimationFrame(() => goTo(promoIndex, false));\n  schedule();\n}\nfunction syncPromo(initial) {\n  if (!promoRoot) return;\n  promoRoot.querySelectorAll('.promo-slide').forEach((el, i) => {\n    const on = i === promoIndex;\n    el.toggleAttribute('inert', !on);\n    el.classList.toggle('is-active', on);\n  });\n  promoRoot.querySelectorAll('.promo-dot').forEach((el, i) => { if (i === promoIndex) el.setAttribute('aria-current', 'true'); else el.removeAttribute('aria-current'); });\n}\nfunction goTo(i, smooth = true) {\n  const track = promoRoot && promoRoot.querySelector('.promo-track');\n  const slides = track ? [...track.children] : [];\n  if (!slides.length) return;\n  promoIndex = (i + slides.length) % slides.length;\n  syncPromo();\n}\nfunction onTrackScroll() {\n  if (promoRoot?.classList.contains('promo-refined')) return;\n  cancelAnimationFrame(scrollFrame);\n  scrollFrame = requestAnimationFrame(() => {\n    const track = promoRoot && promoRoot.querySelector('.promo-track');\n    if (!track) return;\n    const mid = track.getBoundingClientRect().left + track.clientWidth / 2;\n    let best = 0, gap = Infinity;\n    [...track.children].forEach((el, i) => { const r = el.getBoundingClientRect(); const d = Math.abs(r.left + r.width / 2 - mid); if (d < gap) { gap = d; best = i; } });\n    if (best !== promoIndex) { promoIndex = best; syncPromo(); }\n  });\n}\nfunction schedule() {\n  clearTimeout(promoTimer);\n  const count = promoRoot ? promoRoot.querySelectorAll('.promo-slide').length : 0;\n  const bounds = promoRoot && promoRoot.getBoundingClientRect();\n  const visibleHeight = bounds ? Math.max(0, Math.min(bounds.bottom, window.innerHeight) - Math.max(bounds.top, 0)) : 0;\n  onScreen = !!bounds && bounds.height > 0 && visibleHeight / bounds.height >= 0.2;\n  const running = count > 1 && !reduceMotion.matches && !userPaused && !focusing && !touching && onScreen && !document.hidden && !document.querySelector('dialog[open]');\n  const track = promoRoot && promoRoot.querySelector('.promo-track');\n  if (track) track.setAttribute('aria-live', running ? 'off' : 'polite');\n  promoRoot?.classList.toggle('is-autoplaying', running);\n  if (!running) return;\n  promoTimer = setTimeout(() => { goTo(promoIndex + 1); schedule(); }, promoConfig.autoplayMs || 5000);\n}\nfunction setPaused(value) {\n  userPaused = value;\n  const b = promoRoot && promoRoot.querySelector('.promo-pause');\n  if (b) {\n    b.setAttribute('aria-pressed', String(value));\n    b.setAttribute('aria-label', value ? tr('\u062A\u0634\u063A\u064A\u0644 \u0627\u0644\u0639\u0631\u0636 \u0627\u0644\u062A\u0644\u0642\u0627\u0626\u064A', 'Play automatic slideshow') : tr('\u0625\u064A\u0642\u0627\u0641 \u0627\u0644\u062A\u0634\u063A\u064A\u0644 \u0627\u0644\u062A\u0644\u0642\u0627\u0626\u064A', 'Pause automatic slideshow'));\n    b.innerHTML = value ? SVG.play : SVG.pause;\n  }\n  schedule();\n}\nfunction wirePromo() {\n  const section = document.querySelector('#promo');\n  if (!section || section.dataset.wired) return;\n  section.dataset.wired = '1';\n  section.addEventListener('click', async e => {\n    const copy = e.target.closest('[data-copy-code]');\n    if (copy) {\n      const status = copy.closest('.promo-slide').querySelector('.promo-copy-status');\n      try {\n        await navigator.clipboard.writeText(copy.dataset.copyCode);\n        status.textContent = tr('\u062A\u0645 \u0646\u0633\u062E \u0627\u0644\u0643\u0648\u062F','Code copied');\n      } catch {\n        const input = document.createElement('textarea');\n        input.value = copy.dataset.copyCode;\n        input.style.cssText = 'position:fixed;top:0;left:-9999px';\n        document.body.append(input);input.select();\n        const ok = document.execCommand('copy');input.remove();\n        status.textContent = ok ? tr('\u062A\u0645 \u0646\u0633\u062E \u0627\u0644\u0643\u0648\u062F','Code copied') : tr('\u0627\u0644\u0643\u0648\u062F: FIRST50','Code: FIRST50');\n      }\n      schedule();return;\n    }\n    const cta = e.target.closest('.promo-cta[data-promo]');\n    if (cta && (cta.dataset.promo === 'app-coming-soon' || cta.dataset.promo === 'wear-coming-soon')) {\n      e.preventDefault();\n      const dialog = document.getElementById(cta.dataset.promo === 'app-coming-soon' ? 'app-waitlist' : 'wear-waitlist');\n      if (dialog && !dialog.open) {\n        dialog.showModal();\n        schedule();\n        dialog.addEventListener('close', schedule, { once: true });\n      }\n      return;\n    }\n    const dot = e.target.closest('.promo-dot'), prev = e.target.closest('.promo-prev'), next = e.target.closest('.promo-next'), pause = e.target.closest('.promo-pause');\n    if (dot) { goTo(Number(dot.dataset.go)); schedule(); }\n    else if (prev) { goTo(promoIndex - 1); schedule(); }\n    else if (next) { goTo(promoIndex + 1); schedule(); }\n    else if (pause) setPaused(!userPaused);\n  });\n  section.addEventListener('scroll', e => { if (e.target.classList && e.target.classList.contains('promo-track')) onTrackScroll(); }, true);\n  section.addEventListener('focusin', e => { focusing = e.target.matches(':focus-visible'); schedule(); });\n  section.addEventListener('focusout', () => { focusing = false; schedule(); });\n  let touchX = null;\n  section.addEventListener('touchstart', e => { touchX=e.touches[0]?.clientX; touching = true; schedule(); }, { passive: true });\n  const endTouch = e => {\n    const dx = touchX === null ? 0 : (e.changedTouches[0]?.clientX ?? touchX) - touchX;\n    if (Math.abs(dx)>45) goTo(promoIndex+(dx>0?1:-1)*(html.dir==='rtl'?1:-1));\n    touchX=null;touching=false;focusing=false;schedule();\n  };\n  section.addEventListener('touchend', endTouch, { passive: true });\n  section.addEventListener('touchcancel', endTouch, { passive: true });\n  section.addEventListener('keydown', e => {\n    const isRtl = html.dir === 'rtl';\n    if (e.key === 'ArrowRight') { goTo(promoIndex + (isRtl ? -1 : 1)); schedule(); }\n    else if (e.key === 'ArrowLeft') { goTo(promoIndex + (isRtl ? 1 : -1)); schedule(); }\n  });\n  document.addEventListener('visibilitychange', schedule);\n  if (reduceMotion.addEventListener) reduceMotion.addEventListener('change', renderPromo);\n  if ('IntersectionObserver' in window) {\n    promoObserver = new IntersectionObserver(entries => { onScreen = entries[0].isIntersecting; schedule(); }, { threshold: 0.2 });\n    promoObserver.observe(section);\n  }\n}\n\n/* ==================================================================================\n   2. QUICK JOURNEY SELECTOR (one click, no quiz)\n   ================================================================================== */\nfunction renderSelector() {\n  const root = document.querySelector('#quick-journey');\n  if (!root) return;\n  const choices = (journeySelector.choices || []).filter(c => c && tx(c.label));\n  if (!choices.length) { root.hidden = true; return; }\n  root.hidden = false;\n  root.innerHTML = `<div class=\"qj-head\"><span class=\"qj-eyebrow\">${esc(tx(journeySelector.eyebrow))}</span><h2 id=\"qj-title\">${esc(tx(journeySelector.title))}</h2></div>\n    <div class=\"qj-grid\">${choices.map((c, i) => `<a class=\"qj-card qj-tone-${i % 3}\" href=\"${esc(route(c.destination))}\" data-journey=\"${esc(c.id)}\"><span class=\"qj-icon\">${SVG[c.icon] || SVG.heart}</span><span class=\"qj-text\"><strong>${esc(tx(c.label))}</strong><small>${esc(tx(c.hint))}</small></span><span class=\"qj-arrow\">${SVG.arrow}</span></a>`).join('')}</div>`;\n  root.setAttribute('aria-labelledby', 'qj-title');\n}\n\n/* ==================================================================================\n   3. TODAY'S OFFER (daily deal) \u2014 inactive by default\n   ================================================================================== */\nlet dealTimer = null, dealConfig = defaultDeal;\nconst pad = n => String(n).padStart(2, '0');\nfunction remainingParts(ms) {\n  const s = Math.max(0, Math.floor(ms / 1000));\n  return { d: Math.floor(s / 86400), h: Math.floor((s % 86400) / 3600), m: Math.floor((s % 3600) / 60), s: s % 60 };\n}\nexport function renderDailyDeal(next) {\n  if (next) dealConfig = next;            // tests / later configuration can swap the config without touching promo-data.js\n  const cfg = dealConfig;\n  const root = document.querySelector('#daily-deal');\n  clearInterval(dealTimer);\n  if (!root) return false;\n  root.hidden = true; root.innerHTML = '';\n  if (!cfg || !cfg.active) return false;\n  const store = window.wamoryStore;\n  if (!store) return false;\n  const end = cfg.endsAt ? isoTime(cfg.endsAt) : null;\n  if (cfg.endsAt && end === null) return false;             // an unreadable end time never shows a fake countdown\n  const expired = end !== null && Date.now() >= end;\n  if (expired && cfg.onExpire !== 'ended') return false;\n  const title = tx(cfg.title) || tr('\u0639\u0631\u0636 \u0627\u0644\u064A\u0648\u0645', 'Today\u2019s Offer');\n  const pct = Number(cfg.discountPercent) > 0 ? Math.min(90, Number(cfg.discountPercent)) : 0;\n  const head = `<div class=\"dd-head\"><div><span class=\"dd-eyebrow\">${esc(title)}${pct ? ` <span class=\"dd-pill\"><bdi dir=\"ltr\">\u2212${pct}%</bdi></span>` : ''}</span>${tx(cfg.description) ? `<p class=\"dd-desc\">${esc(tx(cfg.description))}</p>` : ''}</div>`;\n  if (expired) {\n    root.innerHTML = `${head}</div><p class=\"dd-ended\">${tr('\u0627\u0646\u062A\u0647\u0649 \u0647\u0630\u0627 \u0627\u0644\u0639\u0631\u0636.', 'This offer has ended.')}</p>`;\n    root.hidden = false; return true;\n  }\n  const ids = (cfg.productIds || []).slice(0, 10);\n  const cards = ids.map(id => ({ id, html: store.productCard(id) })).filter(c => c.html);\n  if (!cards.length) return false;\n  const timer = end !== null ? `<div class=\"dd-timer\" role=\"timer\" aria-label=\"${tr('\u0627\u0644\u0648\u0642\u062A \u0627\u0644\u0645\u062A\u0628\u0642\u064A \u0644\u0644\u0639\u0631\u0636', 'Time left for this offer')}\" dir=\"ltr\"><span class=\"dd-unit\" data-u=\"d\"><b>00</b><small>${tr('\u064A\u0648\u0645', 'days')}</small></span><span class=\"dd-unit\" data-u=\"h\"><b>00</b><small>${tr('\u0633\u0627\u0639\u0629', 'hrs')}</small></span><span class=\"dd-unit\" data-u=\"m\"><b>00</b><small>${tr('\u062F\u0642\u064A\u0642\u0629', 'min')}</small></span><span class=\"dd-unit\" data-u=\"s\"><b>00</b><small>${tr('\u062B\u0627\u0646\u064A\u0629', 'sec')}</small></span></div>` : '';\n  const cta = cfg.cta && tx(cfg.cta) && cfg.destination ? `<a class=\"dd-cta button\" href=\"${esc(route(cfg.destination))}\"><span>${esc(tx(cfg.cta))}</span>${SVG.arrow}</a>` : '';\n  root.innerHTML = `${head}<div class=\"dd-side\">${timer}${cta}</div></div><div class=\"dd-row\" role=\"list\">${cards.map(c => c.html).join('')}</div>`;\n  root.querySelectorAll('.dd-row > *').forEach(el => el.setAttribute('role', 'listitem'));\n  if (pct) {\n    root.querySelectorAll('.dd-row .product-card').forEach(card => {\n      const id = (card.dataset.productCard || '');\n      const product = store.product && store.product(id), priceEl = card.querySelector('.product-price');\n      if (product && priceEl && typeof product.price === 'number') priceEl.innerHTML = `<s class=\"dd-was\">${store.money(product.price)}</s> ${store.money(Math.round(product.price * (100 - pct) / 100))}`;\n    });\n  }\n  root.hidden = false;\n  if (end !== null) {\n    const tick = () => {\n      const left = end - Date.now();\n      if (left <= 0) { clearInterval(dealTimer); renderDailyDeal(); return; }   // stops for good, then hides / shows the honest note\n      const p = remainingParts(left);\n      root.querySelectorAll('.dd-unit').forEach(u => { const k = u.dataset.u; u.querySelector('b').textContent = pad(p[k]); u.hidden = k === 'd' && p.d === 0; });\n    };\n    tick();\n    dealTimer = setInterval(tick, 1000);\n  }\n  return true;\n}\n\n/* ================================================================================== */\nfunction mount() {\n if(window.WAMORY_SHOPIFY_MODE){\n  const deal=document.querySelector('#daily-deal');\n  if(deal){deal.hidden=true;deal.innerHTML='';}\n  renderPromo();\n  renderSelector();\n  return;\n }\n renderPromo();\n renderSelector();\n renderDailyDeal();\n}\nwirePromo();\nmount();\nnew MutationObserver(mount).observe(html, { attributes: true, attributeFilter: ['lang'] });\nexport { renderPromo, renderSelector, activeSlides };\n"],
  "mappings": "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",
  "names": []
}
