{
  "version": 3,
  "sources": ["/cdn/shop/t/39/assets/snr-set-prefill.js?x=16966"],
  "sourcesContent": ["/* Starniri: product-page prefill from the homepage sets section.\n   Reads ?set=folio|keepsake|ultimate&type=bright|extra|twin&name=...\n   - Picks the matching Star type button on the guided product page (data-gp-stars),\n     which makes snr-guided.js select the matching variant and price.\n   - Puts the name into the first star-name field.\n   - On a plain product form (no guided page) it selects the matching variant by option value.\n   Load AFTER snr-guided.js (both deferred, so tag order = run order). */\n(function () {\n  'use strict';\n  var q = new URLSearchParams(location.search);\n  if (q.get('edit')) return; // basket \"edit\" links are handled by snr-guided.js\n  var SETS = { folio: 'snr-registry-letter', keepsake: 'snr-engraved-keepsake-set', ultimate: 'snr-silver-star-pendant-set' };\n  var VAL = { bright: 'One star', extra: 'Extra Bright star', twin: 'Twin stars' };\n  var set = (q.get('set') || '').toLowerCase();\n  var type = (q.get('type') || '').toLowerCase();\n  var name = (q.get('name') || '').replace(/\\s+/g, ' ').trim().slice(0, 60);\n  if (!VAL[type]) type = '';\n  if (!type && !name) return;\n  var here = (location.pathname.match(/\\/products\\/([^\\/?#]+)/) || [])[1] || '';\n  if (set && SETS[set] && SETS[set] !== here) return; // link meant for another product\n\n  function fire(el) {\n    el.dispatchEvent(new Event('input', { bubbles: true }));\n    el.dispatchEvent(new Event('change', { bubbles: true }));\n  }\n  function setName() {\n    if (!name) return;\n    var f = document.getElementById('gp-n1') || document.querySelector('[data-snr-in=\"name1\"], input[name=\"properties[Star name]\"]');\n    if (f && !f.value) { f.value = name; fire(f); }\n    try { if (window.snrName) { if (snrName.get() !== name) snrName.set(name); } else localStorage.setItem('snr_name', name); } catch (e) {}\n  }\n  function guided() {\n    var root = document.querySelector('[data-snr-gp]');\n    if (!root) return false;\n    if (type) {\n      var b = root.querySelector('[data-gp-stars=\"' + VAL[type] + '\"]');\n      if (b && !b.classList.contains('is-on')) b.click();\n    }\n    setName();\n    return true;\n  }\n  function plain() {\n    var form = document.querySelector('form[action*=\"/cart/add\"]');\n    if (!form) return;\n    if (type) {\n      var want = VAL[type];\n      var radios = form.querySelectorAll('input[type=radio]');\n      for (var i = 0; i < radios.length; i++) if (radios[i].value === want) { radios[i].checked = true; fire(radios[i]); break; }\n      var sels = form.querySelectorAll('select');\n      for (var j = 0; j < sels.length; j++) for (var k = 0; k < sels[j].options.length; k++)\n        if (sels[j].options[k].value === want || sels[j].options[k].text.trim() === want) { sels[j].selectedIndex = k; fire(sels[j]); }\n    }\n    setName();\n  }\n  function run() { if (!guided()) plain(); }\n  run();\n  // snr-guided.js and the name helper both settle after load; apply once more so ours wins.\n  addEventListener('load', function () { setTimeout(run, 50); }, { once: true });\n})();\n"],
  "mappings": "CAOC,UAAY,CACX,aACA,IAAI,EAAI,IAAI,gBAAgB,SAAS,MAAM,EAC3C,GAAI,EAAE,IAAI,MAAM,EAAG,OACnB,IAAI,KAAO,CAAE,MAAO,sBAAuB,SAAU,4BAA6B,SAAU,6BAA8B,EACtH,IAAM,CAAE,OAAQ,WAAY,MAAO,oBAAqB,KAAM,YAAa,EAC3E,KAAO,EAAE,IAAI,KAAK,GAAK,IAAI,YAAY,EACvC,MAAQ,EAAE,IAAI,MAAM,GAAK,IAAI,YAAY,EACzC,MAAQ,EAAE,IAAI,MAAM,GAAK,IAAI,QAAQ,OAAQ,GAAG,EAAE,KAAK,EAAE,MAAM,EAAG,EAAE,EAExE,GADK,IAAI,IAAI,IAAG,KAAO,IACnB,CAAC,MAAQ,CAAC,KAAM,OACpB,IAAI,MAAQ,SAAS,SAAS,MAAM,wBAAwB,GAAK,CAAC,GAAG,CAAC,GAAK,GAC3E,GAAI,KAAO,KAAK,GAAG,GAAK,KAAK,GAAG,IAAM,KAAM,OAE5C,SAAS,KAAK,GAAI,CAChB,GAAG,cAAc,IAAI,MAAM,QAAS,CAAE,QAAS,EAAK,CAAC,CAAC,EACtD,GAAG,cAAc,IAAI,MAAM,SAAU,CAAE,QAAS,EAAK,CAAC,CAAC,CACzD,CACA,SAAS,SAAU,CACjB,GAAK,KACL,KAAI,EAAI,SAAS,eAAe,OAAO,GAAK,SAAS,cAAc,4DAA4D,EAC3H,GAAK,CAAC,EAAE,QAAS,EAAE,MAAQ,KAAM,KAAK,CAAC,GAC3C,GAAI,CAAM,OAAO,QAAe,QAAQ,IAAI,IAAM,MAAM,QAAQ,IAAI,IAAI,EAAU,aAAa,QAAQ,WAAY,IAAI,CAAG,OAAS,EAAG,CAAC,EACzI,CACA,SAAS,QAAS,CAChB,IAAI,KAAO,SAAS,cAAc,eAAe,EACjD,GAAI,CAAC,KAAM,MAAO,GAClB,GAAI,KAAM,CACR,IAAI,EAAI,KAAK,cAAc,mBAAqB,IAAI,IAAI,EAAI,IAAI,EAC5D,GAAK,CAAC,EAAE,UAAU,SAAS,OAAO,GAAG,EAAE,MAAM,CACnD,CACA,eAAQ,EACD,EACT,CACA,SAAS,OAAQ,CACf,IAAI,KAAO,SAAS,cAAc,2BAA2B,EAC7D,GAAK,KACL,IAAI,KAAM,CAGR,QAFI,KAAO,IAAI,IAAI,EACf,OAAS,KAAK,iBAAiB,mBAAmB,EAC7C,EAAI,EAAG,EAAI,OAAO,OAAQ,IAAK,GAAI,OAAO,CAAC,EAAE,QAAU,KAAM,CAAE,OAAO,CAAC,EAAE,QAAU,GAAM,KAAK,OAAO,CAAC,CAAC,EAAG,KAAO,CAE1H,QADI,KAAO,KAAK,iBAAiB,QAAQ,EAChC,EAAI,EAAG,EAAI,KAAK,OAAQ,IAAK,QAAS,EAAI,EAAG,EAAI,KAAK,CAAC,EAAE,QAAQ,OAAQ,KAC5E,KAAK,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAU,MAAQ,KAAK,CAAC,EAAE,QAAQ,CAAC,EAAE,KAAK,KAAK,IAAM,QAAQ,KAAK,CAAC,EAAE,cAAgB,EAAG,KAAK,KAAK,CAAC,CAAC,EAC/H,CACA,QAAQ,EACV,CACA,SAAS,KAAM,CAAO,OAAO,GAAG,MAAM,CAAG,CACzC,IAAI,EAEJ,iBAAiB,OAAQ,UAAY,CAAE,WAAW,IAAK,EAAE,CAAG,EAAG,CAAE,KAAM,EAAK,CAAC,CAC/E,GAAG",
  "names": []
}
