{
  "version": 3,
  "sources": ["/cdn/shop/t/6/assets/sb-reviews.js?sb=1hf3nf2"],
  "sourcesContent": ["/* Scrollbase reviews kit (generated by Scrollbase): Show more, the write-a-review form, its star picker and photo uploads for reviews parts, through data-sb-* attributes. Real reviews only. */\n(() => {\n'use strict';\nif (window.SBReviews) { window.SBReviews.init(); return; }\nconst doc = document;\nconst preview = doc.documentElement.hasAttribute('data-sb-preview');\nconst all = (root, sel) => Array.prototype.slice.call(root.querySelectorAll(sel));\nconst attr = (el, name) => el.getAttribute(name);\nconst enc = (v) => encodeURIComponent(v == null ? '' : String(v));\nconst str = (v) => (v == null ? '' : String(v).trim());\nconst web = (u) => { const s = str(u); return /^(https?:)?\\/\\//i.test(s) ? s : ''; };\nconst FAILED = \"That didn't go through. Try again in a moment.\";\nconst OFFLINE = \"Reviews can't be sent from this page yet.\";\nconst PREVIEW = \"This is the preview, so nothing was sent. On your store, reviews sent here wait for you in Reviews.\";\nconst REMOVE = 'Remove photo';\nconst readJson = (el) => { if (!el) return null; try { return JSON.parse(el.textContent || ''); } catch (e) { return null; } };\nconst answer = (res) => res.json().catch(() => ({})).then((j) => { if (!res.ok || !j || j.error) throw { said: str(j && j.error) }; return j; });\nconst busy = (root, on) => {\nconst n = Math.max(0, (root._sbRvBusy || 0) + (on ? 1 : -1));\nroot._sbRvBusy = n;\nroot.classList.toggle('is-busy', n > 0);\nif (n) root.setAttribute('aria-busy', 'true'); else root.removeAttribute('aria-busy');\n};\nconst uuid = () => {\nconst c = window.crypto;\nif (c && typeof c.randomUUID === 'function') { try { return c.randomUUID(); } catch (e) {} }\nconst b = new Uint8Array(16);\nif (c && typeof c.getRandomValues === 'function') c.getRandomValues(b);\nelse for (let i = 0; i < 16; i++) b[i] = Math.floor(Math.random() * 256);\nb[6] = (b[6] & 15) | 64;\nb[8] = (b[8] & 63) | 128;\nconst h = Array.prototype.map.call(b, (x) => (x + 256).toString(16).slice(1)).join('');\nreturn h.slice(0, 8) + '-' + h.slice(8, 12) + '-' + h.slice(12, 16) + '-' + h.slice(16, 20) + '-' + h.slice(20);\n};\nconst fill = (el, r, cfg, photoTpl) => {\nel.hidden = false;\nel.removeAttribute('data-sb-later');\nel.removeAttribute('id');\nall(el, '[id]').forEach((x) => x.removeAttribute('id'));\nel.setAttribute('data-sb-review', str(r.id));\nconst slots = (name) => all(el, '[data-field=\"' + name + '\"]');\nconst text = (name, value) => slots(name).forEach((s) => { s.textContent = value; s.hidden = !value; });\nconst rating = Math.max(0, Math.min(5, Number(r.rating) || 0));\nslots('rating').forEach((s) => {\ns.style.setProperty('--sb-fill', rating * 20 + '%');\nif (s.hasAttribute('aria-label')) s.setAttribute('aria-label', rating + ' / 5');\nconst said = s.querySelector('.sb-visually-hidden');\nif (said) said.textContent = rating + ' / 5';\n});\ntext('title', str(r.title));\ntext('body', str(r.body));\ntext('name', str(r.name));\nslots('date').forEach((s) => {\nconst when = str(r.when) || str(r.date);\nif (s.tagName === 'TIME') s.setAttribute('datetime', str(r.date));\ns.textContent = when;\ns.hidden = !when;\n});\nslots('verified').forEach((s) => { s.hidden = !r.verified; });\nslots('photos').forEach((s) => {\nconst pics = (Array.isArray(r.photos) ? r.photos : []).map((p) => (typeof p === 'string' ? { url: p } : p || {})).filter((p) => web(p.url)).slice(0, 4);\nconst own = Array.prototype.slice.call(s.children).filter((c) => c.tagName === 'IMG' || c.tagName === 'A')[0];\nconst tpl = own ? own.cloneNode(true) : photoTpl;\ns.textContent = '';\npics.forEach((p) => {\nconst url = web(p.url);\nconst node = tpl ? tpl.cloneNode(true) : doc.createElement('img');\nlet img = node.tagName === 'IMG' ? node : node.querySelector('img');\nif (node.tagName === 'A') { node.setAttribute('href', url); if (!img) { img = doc.createElement('img'); node.appendChild(img); } }\nif (img) {\nconst size = (attr(img, 'src') || '').match(/[?&](width=\\d+)/);\nimg.removeAttribute('srcset');\nimg.removeAttribute('sizes');\nimg.setAttribute('src', size ? url + (url.indexOf('?') < 0 ? '?' : '&') + size[1] : url);\nimg.setAttribute('alt', str(cfg.photoAlt));\nimg.setAttribute('loading', 'lazy');\nif (p.w && p.h) { img.setAttribute('width', String(p.w)); img.setAttribute('height', String(p.h)); }\n}\ns.appendChild(node);\n});\ns.hidden = !pics.length;\n});\nslots('reply').forEach((s) => {\nconst t = str(r.reply);\ns.hidden = !t;\nall(s, '[data-field=\"reply-text\"]').forEach((x) => { x.textContent = t; });\n});\nreturn el;\n};\nconst more = (root, cfg, api) => {\nconst list = root.querySelector('[data-sb-reviews-list]');\nconst buttons = all(root, '[data-sb-reviews-more]');\nif (!list || !buttons.length) return;\nconst per = Math.max(1, Math.min(30, parseInt(cfg.per, 10) || 6));\nconst count = Math.max(0, parseInt(cfg.count, 10) || 0);\nconst first = list.querySelector('[data-sb-review]');\nconst model = first ? first.cloneNode(true) : null;\nconst pic = list.querySelector('[data-field=\"photos\"] > img,[data-field=\"photos\"] > a');\nconst photoTpl = pic ? pic.cloneNode(true) : null;\nconst reviews = () => all(list, '[data-sb-review]');\nconst later = () => all(list, '[data-sb-review][data-sb-later][hidden]');\nlet end = !api || !model;\nlet loading = false;\nconst remote = () => !end && reviews().length < count;\nconst update = () => { const on = later().length > 0 || remote(); buttons.forEach((b) => { b.hidden = !on; }); };\nconst load = () => {\nloading = true;\nbusy(root, true);\nbuttons.forEach((b) => { b.disabled = true; });\nconst url = api + '/api/rv?shop=' + enc(cfg.shop) + '&product=' + enc(cfg.product) + '&offset=' + reviews().length + '&per=' + per;\nreturn fetch(url, { headers: { Accept: 'application/json' } })\n.then((res) => { if (!res.ok) throw new Error(String(res.status)); return res.json(); })\n.then((data) => {\nconst got = Array.isArray(data && data.reviews) ? data.reviews : [];\nconst have = reviews().map((x) => attr(x, 'data-sb-review')).filter(Boolean);\ngot.forEach((r) => { if (r && typeof r === 'object' && have.indexOf(str(r.id)) < 0) list.appendChild(fill(model.cloneNode(true), r, cfg, photoTpl)); });\nif (!got.length || !data.hasMore) end = true;\n})\n.catch(() => {})\n.then(() => { loading = false; busy(root, false); buttons.forEach((b) => { b.disabled = false; }); update(); });\n};\nbuttons.forEach((b) => b.addEventListener('click', (e) => {\ne.preventDefault();\nif (loading) return;\nconst next = later().slice(0, per);\nif (next.length) { next.forEach((el) => { el.hidden = false; el.removeAttribute('data-sb-later'); }); update(); return; }\nif (remote()) load(); else update();\n}));\nupdate();\n};\nconst form = (root, cfg, api) => all(root, 'form[data-sb-review-form]').forEach((f) => {\nif (f._sbReview) return;\nf._sbReview = true;\nconst msg = f.querySelector('[data-sb-review-msg]') || root.querySelector('[data-sb-review-msg]');\nif (msg && !msg.getAttribute('role')) msg.setAttribute('role', 'status');\nconst say = (t) => { if (msg) msg.textContent = t || ''; };\nconst group = f.querySelector('[data-sb-review-rate]');\nconst stars = group ? all(group, '[data-sb-star-value]') : [];\nconst value = (b) => parseInt(attr(b, 'data-sb-star-value'), 10) || 0;\nlet rating = 0;\nconst paint = (n) => stars.forEach((b) => {\nb.classList.toggle('is-on', value(b) <= n);\nb.setAttribute('aria-checked', value(b) === rating ? 'true' : 'false');\nb.tabIndex = value(b) === (rating || 1) ? 0 : -1;\n});\nconst pick = (n) => { rating = Math.max(1, Math.min(5, n)); paint(rating); if (msg && msg.textContent === str(cfg.pickRating)) say(''); };\nstars.forEach((b) => {\nb.addEventListener('click', (e) => { e.preventDefault(); pick(value(b)); });\nb.addEventListener('mouseenter', () => paint(value(b)));\nb.addEventListener('keydown', (e) => {\nconst step = e.key === 'ArrowRight' || e.key === 'ArrowUp' ? 1 : e.key === 'ArrowLeft' || e.key === 'ArrowDown' ? -1 : 0;\nif (!step) return;\ne.preventDefault();\npick((rating || value(b)) + step);\nconst now = stars.filter((x) => value(x) === rating)[0];\nif (now) now.focus();\n});\n});\nif (group) group.addEventListener('mouseleave', () => paint(rating));\npaint(0);\nconst file = f.querySelector('input[type=\"file\"][data-sb-review-photos]');\nconst thumbs = f.querySelector('[data-sb-review-thumbs]');\nconst addTile = f.querySelector('[data-sb-review-add]');\nlet draft = uuid();\nlet photos = [];\nlet waiting = 0;\nlet queue = Promise.resolve();\nconst shown = () => (thumbs ? thumbs.querySelectorAll('[data-sb-review-thumb]').length : 0);\nconst syncAdd = () => { if (addTile) addTile.hidden = shown() + waiting >= 6; };\nconst thumb = (x, entry) => {\nif (!thumbs) return;\nconst url = URL.createObjectURL(x);\nconst wrap = doc.createElement('span');\nwrap.setAttribute('data-sb-review-thumb', '');\nconst img = doc.createElement('img');\nimg.alt = '';\nimg.src = url;\nconst drop = doc.createElement('button');\ndrop.type = 'button';\ndrop.className = 'sb-rv-thumb-x';\ndrop.setAttribute('aria-label', REMOVE);\ndrop.textContent = '\\u00d7';\ndrop.addEventListener('click', (e) => {\ne.preventDefault();\nif (entry) photos = photos.filter((p) => p !== entry);\ntry { URL.revokeObjectURL(url); } catch (err) {}\nwrap.remove();\nsyncAdd();\n});\nwrap.appendChild(img);\nwrap.appendChild(drop);\nthumbs.appendChild(wrap);\nsyncAdd();\n};\nconst clearThumbs = () => {\nif (!thumbs) return;\nall(thumbs, 'img').forEach((i) => { try { URL.revokeObjectURL(i.src); } catch (e) {} });\nthumbs.textContent = '';\nsyncAdd();\n};\nif (file) file.addEventListener('change', () => {\nconst picked = Array.prototype.slice.call(file.files || []).filter((x) => /^image\\//.test(x.type || ''));\nfile.value = '';\nif (preview) {\npicked.slice(0, Math.max(0, 6 - shown())).forEach((x) => thumb(x, null));\nreturn;\n}\nif (!api) { say(OFFLINE); return; }\npicked.slice(0, Math.max(0, 6 - photos.length - waiting)).forEach((x) => {\nwaiting++;\nsyncAdd();\nconst at = draft;\nqueue = queue.then(() => fetch(api + '/api/rv/photo?shop=' + enc(cfg.shop) + '&product=' + enc(cfg.product) + '&draft=' + enc(at), { method: 'POST', headers: { 'Content-Type': x.type }, body: x })\n.then(answer)\n.then((j) => {\nif (at !== draft) return;\nconst entry = { key: j.key, thumbKey: j.thumbKey, width: j.width, height: j.height };\nphotos.push(entry);\nthumb(x, entry);\n})\n.catch((err) => say((err && err.said) || FAILED))\n.then(() => { waiting--; syncAdd(); }));\n});\n});\nlet sending = false;\nf.addEventListener('submit', (e) => {\ne.preventDefault();\nif (sending) return;\nif (!api) { say(OFFLINE); return; }\nif (!rating) { say(str(cfg.pickRating)); if (stars[0]) stars[0].focus(); return; }\nif (typeof f.reportValidity === 'function' && !f.reportValidity()) return;\nif (preview) { say(PREVIEW); return; }\nconst data = new FormData(f);\nconst val = (n) => str(data.get(n));\nconst send = f.querySelector('[type=\"submit\"]');\nsending = true;\nbusy(root, true);\nif (send) send.disabled = true;\nsay('');\nqueue.then(() => fetch(api + '/api/rv', { method: 'POST', headers: { 'Content-Type': 'application/json', Accept: 'application/json' }, body: JSON.stringify({ shop: str(cfg.shop), handle: str(cfg.product), draft: draft, rating: rating, title: val('title'), body: val('body'), name: val('name'), email: val('email'), website: val('website'), photos: photos.slice(0, 6), via: 'form' }) }))\n.then(answer)\n.then(() => { f.reset(); rating = 0; paint(0); photos = []; clearThumbs(); draft = uuid(); say(str(cfg.thanks)); })\n.catch((err) => say((err && err.said) || FAILED))\n.then(() => { sending = false; busy(root, false); if (send) send.disabled = false; });\n});\n});\nconst style = () => {\nif (doc.getElementById('sb-reviews-css')) return;\nconst s = doc.createElement('style');\ns.id = 'sb-reviews-css';\ns.textContent = '[data-sb-reviews][hidden],[data-sb-reviews] [hidden]{display:none!important}' +\n'[data-sb-reviews] [data-sb-review-thumb]{position:relative;display:inline-block;flex:0 0 auto;line-height:0}' +\n'[data-sb-reviews] [data-sb-review-thumb] .sb-rv-thumb-x{position:absolute;top:-7px;right:-7px;display:grid;place-items:center;width:22px;height:22px;margin:0;padding:0;border:0;border-radius:999px;background:var(--sb-ink,#1c1915);color:var(--sb-bg,#fff);font:600 15px/1 system-ui,-apple-system,sans-serif;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.25)}';\n(doc.head || doc.documentElement).appendChild(s);\n};\nconst setup = (root) => {\nif (attr(root, 'data-sb-ready') === '1' || attr(root, 'data-sb-section') === 'sb-reviews' || root.hasAttribute('data-sb-reviews-endpoint')) return;\nroot.setAttribute('data-sb-ready', '1');\nconst cfg = readJson(root.querySelector('script[type=\"application/json\"][data-sb-reviews-config]')) || {};\nconst api = /^https?:\\/\\//i.test(str(cfg.api)) ? str(cfg.api).replace(/\\/+$/, '') : '';\nmore(root, cfg, api);\nform(root, cfg, api);\n};\nconst guard = (fn) => (el) => { try { fn(el); } catch (e) { if (window.console) console.error('sb-reviews', e); } };\nconst init = () => { style(); all(doc, '[data-sb-reviews]').forEach(guard(setup)); };\ndoc.addEventListener('shopify:section:load', () => init());\nwindow.SBReviews = { init: init, version: 1 };\nif (doc.readyState === 'loading') doc.addEventListener('DOMContentLoaded', init);\nelse init();\n})();\n"],
  "mappings": "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",
  "names": []
}
