@elevateab/sdk 1.2.2 → 1.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +77 -143
- package/dist/index.cjs +4 -4
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +57 -1
- package/dist/index.d.ts +57 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/next.cjs +5 -5
- package/dist/next.cjs.map +1 -1
- package/dist/next.d.cts +57 -1
- package/dist/next.d.ts +57 -1
- package/dist/next.js +4 -4
- package/dist/next.js.map +1 -1
- package/package.json +1 -1
package/dist/next.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
"use strict";var dr=Object.create;var xe=Object.defineProperty;var lr=Object.getOwnPropertyDescriptor;var fr=Object.getOwnPropertyNames;var pr=Object.getPrototypeOf,mr=Object.prototype.hasOwnProperty;var ce=(e,t)=>()=>(e&&(t=e(e=0)),t);var gr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Ft=(e,t)=>{for(var o in t)xe(e,o,{get:t[o],enumerable:!0})},Mt=(e,t,o,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of fr(t))!mr.call(e,a)&&a!==o&&xe(e,a,{get:()=>t[a],enumerable:!(s=lr(t,a))||s.enumerable});return e};var ue=(e,t,o)=>(o=e!=null?dr(pr(e)):{},Mt(t||!e||!e.__esModule?xe(o,"default",{value:e,enumerable:!0}):o,e)),br=e=>Mt(xe({},"__esModule",{value:!0}),e);function Ye(e){let t=0;for(let o=0;o<e.length;o++){let s=e.charCodeAt(o);t=(t<<5)-t+s,t=t&t}return Math.abs(t)}function Qe(e){let t=[];for(let[o,s]of Object.entries(e.allTests)){if(!s.data.isLive)continue;let a=[],f=0;for(let[d,p]of Object.entries(s)){if(d==="data")continue;let l=p;if(typeof l=="object"&&l!==null&&"variationName"in l){let w=!!l.isControl;a.push({id:d,name:l.variationName,weight:l.trafficPercentage,isControl:w,productId:l.id,handle:l.handle,price:l.price,isA:!w&&f===0,isB:!w&&f===1,isC:!w&&f===2,isD:!w&&f===3}),w||f++}}a.length>0&&t.push({testId:o,name:s.data.name,enabled:s.data.isLive,type:s.data.type,variations:a})}return{tests:t,selectors:e.selectors}}var Te=ce(()=>{"use strict"});var zt=gr((le,Ae)=>{"use strict";(function(e,t){"use strict";var o="1.0.41",s="",a="?",f="function",d="undefined",p="object",l="string",w="major",r="model",c="name",n="type",i="vendor",u="version",T="architecture",_="console",m="mobile",g="tablet",x="smarttv",E="wearable",G="embedded",Fe=500,ge="Amazon",J="Apple",Tt="ASUS",At="BlackBerry",be="Browser",we="Chrome",ir="Edge",he="Firefox",ye="Google",Ct="Honor",Et="Huawei",ar="Lenovo",ve="LG",Me="Microsoft",ze="Motorola",qe="Nvidia",St="OnePlus",re="Opera",je="OPPO",oe="Samsung",It="Sharp",ne="Sony",$e="Xiaomi",Ge="Zebra",Ut="Facebook",Rt="Chromium OS",Ot="Mac OS",Vt=" Browser",sr=function(y,v){var h={};for(var P in y)v[P]&&v[P].length%2===0?h[P]=v[P].concat(y[P]):h[P]=y[P];return h},ke=function(y){for(var v={},h=0;h<y.length;h++)v[y[h].toUpperCase()]=y[h];return v},Lt=function(y,v){return typeof y===l?ie(v).indexOf(ie(y))!==-1:!1},ie=function(y){return y.toLowerCase()},cr=function(y){return typeof y===l?y.replace(/[^\d\.]/g,s).split(".")[0]:t},We=function(y,v){if(typeof y===l)return y=y.replace(/^\s\s*/,s),typeof v===d?y:y.substring(0,Fe)},ae=function(y,v){for(var h=0,P,F,B,k,b,D;h<v.length&&!b;){var He=v[h],Nt=v[h+1];for(P=F=0;P<He.length&&!b&&He[P];)if(b=He[P++].exec(y),b)for(B=0;B<Nt.length;B++)D=b[++F],k=Nt[B],typeof k===p&&k.length>0?k.length===2?typeof k[1]==f?this[k[0]]=k[1].call(this,D):this[k[0]]=k[1]:k.length===3?typeof k[1]===f&&!(k[1].exec&&k[1].test)?this[k[0]]=D?k[1].call(this,D,k[2]):t:this[k[0]]=D?D.replace(k[1],k[2]):t:k.length===4&&(this[k[0]]=D?k[3].call(this,D.replace(k[1],k[2])):t):this[k]=D||t;h+=2}},se=function(y,v){for(var h in v)if(typeof v[h]===p&&v[h].length>0){for(var P=0;P<v[h].length;P++)if(Lt(v[h][P],y))return h===a?t:h}else if(Lt(v[h],y))return h===a?t:h;return v.hasOwnProperty("*")?v["*"]:y},ur={"1.0":"/8","1.2":"/1","1.3":"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"},Bt={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2","8.1":"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},Dt={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[u,[c,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[u,[c,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[c,u],[/opios[\/ ]+([\w\.]+)/i],[u,[c,re+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[u,[c,re+" GX"]],[/\bopr\/([\w\.]+)/i],[u,[c,re]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[u,[c,"Baidu"]],[/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],[u,[c,"Maxthon"]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,/(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio|(?=comodo_)?dragon)\/([-\w\.]+)/i,/(heytap|ovi|115)browser\/([\d\.]+)/i,/(weibo)__([\d\.]+)/i],[c,u],[/quark(?:pc)?\/([-\w\.]+)/i],[u,[c,"Quark"]],[/\bddg\/([\w\.]+)/i],[u,[c,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[u,[c,"UC"+be]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[u,[c,"WeChat"]],[/konqueror\/([\w\.]+)/i],[u,[c,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[u,[c,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[u,[c,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[u,[c,"Smart Lenovo "+be]],[/(avast|avg)\/([\w\.]+)/i],[[c,/(.+)/,"$1 Secure "+be],u],[/\bfocus\/([\w\.]+)/i],[u,[c,he+" Focus"]],[/\bopt\/([\w\.]+)/i],[u,[c,re+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[u,[c,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[u,[c,"Dolphin"]],[/coast\/([\w\.]+)/i],[u,[c,re+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[u,[c,"MIUI"+Vt]],[/fxios\/([\w\.-]+)/i],[u,[c,he]],[/\bqihoobrowser\/?([\w\.]*)/i],[u,[c,"360"]],[/\b(qq)\/([\w\.]+)/i],[[c,/(.+)/,"$1Browser"],u],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[c,/(.+)/,"$1"+Vt],u],[/samsungbrowser\/([\w\.]+)/i],[u,[c,oe+" Internet"]],[/metasr[\/ ]?([\d\.]+)/i],[u,[c,"Sogou Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[c,"Sogou Mobile"],u],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i],[c,u],[/(lbbrowser|rekonq)/i,/\[(linkedin)app\]/i],[c],[/ome\/([\w\.]+) \w* ?(iron) saf/i,/ome\/([\w\.]+).+qihu (360)[es]e/i],[u,c],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[c,Ut],u],[/(Klarna)\/([\w\.]+)/i,/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/(daum)apps[\/ ]([\w\.]+)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(alipay)client\/([\w\.]+)/i,/(twitter)(?:and| f.+e\/([\w\.]+))/i,/(chromium|instagram|snapchat)[\/ ]([-\w\.]+)/i],[c,u],[/\bgsa\/([\w\.]+) .*safari\//i],[u,[c,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[u,[c,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[u,[c,we+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[c,we+" WebView"],u],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[u,[c,"Android "+be]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[c,u],[/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],[u,[c,"Mobile Safari"]],[/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],[u,c],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[c,[u,se,ur]],[/(webkit|khtml)\/([\w\.]+)/i],[c,u],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[c,"Netscape"],u],[/(wolvic|librewolf)\/([\w\.]+)/i],[c,u],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[u,[c,he+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(amaya|dillo|doris|icab|ladybird|lynx|mosaic|netsurf|obigo|polaris|w3m|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/\b(links) \(([\w\.]+)/i],[c,[u,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[c,[u,/master.|lts./,""]]],cpu:[[/\b((amd|x|x86[-_]?|wow|win)64)\b/i],[[T,"amd64"]],[/(ia32(?=;))/i,/\b((i[346]|x)86)(pc)?\b/i],[[T,"ia32"]],[/\b(aarch64|arm(v?[89]e?l?|_?64))\b/i],[[T,"arm64"]],[/\b(arm(v[67])?ht?n?[fl]p?)\b/i],[[T,"armhf"]],[/( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i],[[T,"arm"]],[/((ppc|powerpc)(64)?)( mac|;|\))/i],[[T,/ower/,s,ie]],[/ sun4\w[;\)]/i],[[T,"sparc"]],[/\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i],[[T,ie]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[r,[i,oe],[n,g]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr])[-\w]+)/i,/sec-(sgh\w+)/i],[r,[i,oe],[n,m]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[r,[i,J],[n,m]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[r,[i,J],[n,g]],[/(macintosh);/i],[r,[i,J]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[r,[i,It],[n,m]],[/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i],[r,[i,Ct],[n,g]],[/honor([-\w ]+)[;\)]/i],[r,[i,Ct],[n,m]],[/\b((?:ag[rs][2356]?k?|bah[234]?|bg[2o]|bt[kv]|cmr|cpn|db[ry]2?|jdn2|got|kob2?k?|mon|pce|scm|sht?|[tw]gr|vrd)-[ad]?[lw][0125][09]b?|605hw|bg2-u03|(?:gem|fdr|m2|ple|t1)-[7a]0[1-4][lu]|t1-a2[13][lw]|mediapad[\w\. ]*(?= bui|\)))\b(?!.+d\/s)/i],[r,[i,Et],[n,g]],[/(?:huawei)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[r,[i,Et],[n,m]],[/oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i,/\b((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i],[[r,/_/g," "],[i,$e],[n,g]],[/\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite|pro)?)(?: bui|\))/i,/ ([\w ]+) miui\/v?\d/i],[[r,/_/g," "],[i,$e],[n,m]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[r,[i,je],[n,m]],[/\b(opd2(\d{3}a?))(?: bui|\))/i],[r,[i,se,{OnePlus:["304","403","203"],"*":je}],[n,g]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[r,[i,"Vivo"],[n,m]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[r,[i,"Realme"],[n,m]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto(?! 360)[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[r,[i,ze],[n,m]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[r,[i,ze],[n,g]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[r,[i,ve],[n,g]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv|watch)\w+)/i,/\blg-?([\d\w]+) bui/i],[r,[i,ve],[n,m]],[/(ideatab[-\w ]+|602lv|d-42a|a101lv|a2109a|a3500-hv|s[56]000|pb-6505[my]|tb-?x?\d{3,4}(?:f[cu]|xu|[av])|yt\d?-[jx]?\d+[lfmx])( bui|;|\)|\/)/i,/lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i],[r,[i,ar],[n,g]],[/(nokia) (t[12][01])/i],[i,r,[n,g]],[/(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i,/nokia[-_ ]?(([-\w\. ]*))/i],[[r,/_/g," "],[n,m],[i,"Nokia"]],[/(pixel (c|tablet))\b/i],[r,[i,ye],[n,g]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[r,[i,ye],[n,m]],[/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[r,[i,ne],[n,m]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[r,"Xperia Tablet"],[i,ne],[n,g]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[r,[i,St],[n,m]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[r,[i,ge],[n,g]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[r,/(.+)/g,"Fire Phone $1"],[i,ge],[n,m]],[/(playbook);[-\w\),; ]+(rim)/i],[r,i,[n,g]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[r,[i,At],[n,m]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[r,[i,Tt],[n,g]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[r,[i,Tt],[n,m]],[/(nexus 9)/i],[r,[i,"HTC"],[n,g]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[i,[r,/_/g," "],[n,m]],[/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])\w*(\)| bui)/i],[r,[i,"TCL"],[n,g]],[/(itel) ((\w+))/i],[[i,ie],r,[n,se,{tablet:["p10001l","w7001"],"*":"mobile"}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[r,[i,"Acer"],[n,g]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[r,[i,"Meizu"],[n,m]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[r,[i,"Ulefone"],[n,m]],[/; (energy ?\w+)(?: bui|\))/i,/; energizer ([\w ]+)(?: bui|\))/i],[r,[i,"Energizer"],[n,m]],[/; cat (b35);/i,/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],[r,[i,"Cat"],[n,m]],[/((?:new )?andromax[\w- ]+)(?: bui|\))/i],[r,[i,"Smartfren"],[n,m]],[/droid.+; (a(?:015|06[35]|142p?))/i],[r,[i,"Nothing"],[n,m]],[/; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i,/archos ?(5|gamepad2?|([\w ]*[t1789]|hello) ?\d+[\w ]*)( b|\))/i],[r,[i,"Archos"],[n,g]],[/archos ([\w ]+)( b|\))/i,/; (ac[3-6]\d\w{2,8})( b|\))/i],[r,[i,"Archos"],[n,m]],[/(imo) (tab \w+)/i,/(infinix) (x1101b?)/i],[i,r,[n,g]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus(?! zenw)|dell|jolla|meizu|motorola|polytron|infinix|tecno|micromax|advan)[-_ ]?([-\w]*)/i,/; (hmd|imo) ([\w ]+?)(?: bui|\))/i,/(hp) ([\w ]+\w)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i,/(oppo) ?([\w ]+) bui/i],[i,r,[n,m]],[/(kobo)\s(ereader|touch)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i,/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[i,r,[n,g]],[/(surface duo)/i],[r,[i,Me],[n,g]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[r,[i,"Fairphone"],[n,m]],[/(u304aa)/i],[r,[i,"AT&T"],[n,m]],[/\bsie-(\w*)/i],[r,[i,"Siemens"],[n,m]],[/\b(rct\w+) b/i],[r,[i,"RCA"],[n,g]],[/\b(venue[\d ]{2,7}) b/i],[r,[i,"Dell"],[n,g]],[/\b(q(?:mv|ta)\w+) b/i],[r,[i,"Verizon"],[n,g]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[r,[i,"Barnes & Noble"],[n,g]],[/\b(tm\d{3}\w+) b/i],[r,[i,"NuVision"],[n,g]],[/\b(k88) b/i],[r,[i,"ZTE"],[n,g]],[/\b(nx\d{3}j) b/i],[r,[i,"ZTE"],[n,m]],[/\b(gen\d{3}) b.+49h/i],[r,[i,"Swiss"],[n,m]],[/\b(zur\d{3}) b/i],[r,[i,"Swiss"],[n,g]],[/\b((zeki)?tb.*\b) b/i],[r,[i,"Zeki"],[n,g]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[i,"Dragon Touch"],r,[n,g]],[/\b(ns-?\w{0,9}) b/i],[r,[i,"Insignia"],[n,g]],[/\b((nxa|next)-?\w{0,9}) b/i],[r,[i,"NextBook"],[n,g]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[i,"Voice"],r,[n,m]],[/\b(lvtel\-)?(v1[12]) b/i],[[i,"LvTel"],r,[n,m]],[/\b(ph-1) /i],[r,[i,"Essential"],[n,m]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[r,[i,"Envizen"],[n,g]],[/\b(trio[-\w\. ]+) b/i],[r,[i,"MachSpeed"],[n,g]],[/\btu_(1491) b/i],[r,[i,"Rotor"],[n,g]],[/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i],[r,[i,qe],[n,g]],[/(sprint) (\w+)/i],[i,r,[n,m]],[/(kin\.[onetw]{3})/i],[[r,/\./g," "],[i,Me],[n,m]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[r,[i,Ge],[n,g]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[r,[i,Ge],[n,m]],[/smart-tv.+(samsung)/i],[i,[n,x]],[/hbbtv.+maple;(\d+)/i],[[r,/^/,"SmartTV"],[i,oe],[n,x]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[i,ve],[n,x]],[/(apple) ?tv/i],[i,[r,J+" TV"],[n,x]],[/crkey/i],[[r,we+"cast"],[i,ye],[n,x]],[/droid.+aft(\w+)( bui|\))/i],[r,[i,ge],[n,x]],[/(shield \w+ tv)/i],[r,[i,qe],[n,x]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[r,[i,It],[n,x]],[/(bravia[\w ]+)( bui|\))/i],[r,[i,ne],[n,x]],[/(mi(tv|box)-?\w+) bui/i],[r,[i,$e],[n,x]],[/Hbbtv.*(technisat) (.*);/i],[i,r,[n,x]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[i,We],[r,We],[n,x]],[/droid.+; ([\w- ]+) (?:android tv|smart[- ]?tv)/i],[r,[n,x]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[n,x]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[i,r,[n,_]],[/droid.+; (shield)( bui|\))/i],[r,[i,qe],[n,_]],[/(playstation \w+)/i],[r,[i,ne],[n,_]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[r,[i,Me],[n,_]],[/\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i],[r,[i,oe],[n,E]],[/((pebble))app/i,/(asus|google|lg|oppo) ((pixel |zen)?watch[\w ]*)( bui|\))/i],[i,r,[n,E]],[/(ow(?:19|20)?we?[1-3]{1,3})/i],[r,[i,je],[n,E]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[r,[i,J],[n,E]],[/(opwwe\d{3})/i],[r,[i,St],[n,E]],[/(moto 360)/i],[r,[i,ze],[n,E]],[/(smartwatch 3)/i],[r,[i,ne],[n,E]],[/(g watch r)/i],[r,[i,ve],[n,E]],[/droid.+; (wt63?0{2,3})\)/i],[r,[i,Ge],[n,E]],[/droid.+; (glass) \d/i],[r,[i,ye],[n,E]],[/(pico) (4|neo3(?: link|pro)?)/i],[i,r,[n,E]],[/; (quest( \d| pro)?)/i],[r,[i,Ut],[n,E]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[i,[n,G]],[/(aeobc)\b/i],[r,[i,ge],[n,G]],[/(homepod).+mac os/i],[r,[i,J],[n,G]],[/windows iot/i],[[n,G]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i],[r,[n,m]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[r,[n,g]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[n,g]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[n,m]],[/droid .+?; ([\w\. -]+)( bui|\))/i],[r,[i,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[u,[c,ir+"HTML"]],[/(arkweb)\/([\w\.]+)/i],[c,u],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[u,[c,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna|servo)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[c,u],[/ladybird\//i],[[c,"LibWeb"]],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[u,c]],os:[[/microsoft (windows) (vista|xp)/i],[c,u],[/(windows (?:phone(?: os)?|mobile|iot))[\/ ]?([\d\.\w ]*)/i],[c,[u,se,Bt]],[/windows nt 6\.2; (arm)/i,/windows[\/ ]([ntce\d\. ]+\w)(?!.+xbox)/i,/(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[u,se,Bt],[c,"Windows"]],[/[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[u,/_/g,"."],[c,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[c,Ot],[u,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[u,c],[/(ubuntu) ([\w\.]+) like android/i],[[c,/(.+)/,"$1 Touch"],u],[/(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen|webos)\w*[-\/; ]?([\d\.]*)/i],[c,u],[/\(bb(10);/i],[u,[c,At]],[/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i],[u,[c,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[u,[c,he+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[u,[c,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[u,[c,"watchOS"]],[/crkey\/([\d\.]+)/i],[u,[c,we+"cast"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[c,Rt],u],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux)(?: arm\w*| x86\w*| ?)([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[c,u],[/(sunos) ?([\w\.\d]*)/i],[[c,"Solaris"],u],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[c,u]]},O=function(y,v){if(typeof y===p&&(v=y,y=t),!(this instanceof O))return new O(y,v).getResult();var h=typeof e!==d&&e.navigator?e.navigator:t,P=y||(h&&h.userAgent?h.userAgent:s),F=h&&h.userAgentData?h.userAgentData:t,B=v?sr(Dt,v):Dt,k=h&&h.userAgent==P;return this.getBrowser=function(){var b={};return b[c]=t,b[u]=t,ae.call(b,P,B.browser),b[w]=cr(b[u]),k&&h&&h.brave&&typeof h.brave.isBrave==f&&(b[c]="Brave"),b},this.getCPU=function(){var b={};return b[T]=t,ae.call(b,P,B.cpu),b},this.getDevice=function(){var b={};return b[i]=t,b[r]=t,b[n]=t,ae.call(b,P,B.device),k&&!b[n]&&F&&F.mobile&&(b[n]=m),k&&b[r]=="Macintosh"&&h&&typeof h.standalone!==d&&h.maxTouchPoints&&h.maxTouchPoints>2&&(b[r]="iPad",b[n]=g),b},this.getEngine=function(){var b={};return b[c]=t,b[u]=t,ae.call(b,P,B.engine),b},this.getOS=function(){var b={};return b[c]=t,b[u]=t,ae.call(b,P,B.os),k&&!b[c]&&F&&F.platform&&F.platform!="Unknown"&&(b[c]=F.platform.replace(/chrome os/i,Rt).replace(/macos/i,Ot)),b},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return P},this.setUA=function(b){return P=typeof b===l&&b.length>Fe?We(b,Fe):b,this},this.setUA(P),this};O.VERSION=o,O.BROWSER=ke([c,u,w]),O.CPU=ke([T]),O.DEVICE=ke([r,i,n,_,m,x,g,E,G]),O.ENGINE=O.OS=ke([c,u]),typeof le!==d?(typeof Ae!==d&&Ae.exports&&(le=Ae.exports=O),le.UAParser=O):typeof define===f&&define.amd?define(function(){return O}):typeof e!==d&&(e.UAParser=O);var Y=typeof e!==d&&(e.jQuery||e.Zepto);if(Y&&!Y.ua){var _e=new O;Y.ua=_e.getResult(),Y.ua.get=function(){return _e.getUA()},Y.ua.set=function(y){_e.setUA(y);var v=_e.getResult();for(var h in v)Y.ua[h]=v[h]}}})(typeof window=="object"?window:le)});function Q(){try{if(typeof window<"u"&&window.crypto&&window.crypto.getRandomValues){let e=new Uint8Array(16);window.crypto.getRandomValues(e),e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=Array.from(e).map(o=>o.toString(16).padStart(2,"0"));return[t.slice(0,4).join(""),t.slice(4,6).join(""),t.slice(6,8).join(""),t.slice(8,10).join(""),t.slice(10,16).join("")].join("-")}}catch(e){console.warn("[ElevateAB] Crypto UUID generation failed, falling back to Math.random()",e)}return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e==="x"?t:t&3|8).toString(16)})}function N(e,t){if(typeof document>"u")return;let o=new Date;o.setTime(o.getTime()+365*24*60*60*1e3);let s="; expires="+o.toUTCString();document.cookie=e+"="+(t||"")+s+"; path=/"}function I(e){if(typeof document>"u")return null;let t=e+"=",o=document.cookie.split(";");for(let s=0;s<o.length;s++){let a=o[s];for(;a.charAt(0)===" ";)a=a.substring(1,a.length);if(a.indexOf(t)===0)return a.substring(t.length,a.length)}return null}function V(e){let t=I(e);if(t)try{return JSON.parse(t)}catch(o){return console.error("[ElevateAB] Error parsing JSON from cookie",o),null}return null}function K(e,t){typeof sessionStorage>"u"||sessionStorage.setItem(e,JSON.stringify(t))}function W(e){return typeof sessionStorage>"u"?null:sessionStorage.getItem(e)}function et(e){let t=W(e);return t?JSON.parse(t):null}function jt(){let e=I("eabUserId");return e||(e=Q(),N("eabUserId",e)),e}function X(){return jt()}function $t(){let e=W("eabSessionId");return e||(e=Q(),K("eabSessionId",e)),e}function Re(){return $t()}function Oe(){return{referrer:W("eabReferrer")||"",entryPage:W("eabEntry")||""}}var L=ce(()=>{"use strict"});function fe(){return V("ABTL")||{}}function Gt(e){N("ABTL",JSON.stringify(e))}function tt(e){return fe()[e]||null}function Wt(e,t){if(e[t]?.isControl)return-1;let s=0;for(let a=0;a<t;a++)e[a]?.isControl||s++;return s}function _r(e,t){let o=e.every(r=>typeof r.weight=="number"),s=[],a=0;if(o)for(let r of e)a+=r.weight,s.push(a);else{let r=100/e.length;for(let c=0;c<e.length;c++)a+=r,s.push(a)}let d=Ye(t)%1e4/100,p=0;for(let r=0;r<s.length;r++)if(d<s[r]){p=r;break}let l=e[p]||e[0],w=Wt(e,p);return{...l,isA:w===0,isB:w===1,isC:w===2,isD:w===3}}function rt(e,t,o){let s=tt(e);if(s){let l=t.variations.findIndex(w=>w.id===s);if(l!==-1){let w=t.variations[l],r=Wt(t.variations,l);return{...w,isA:r===0,isB:r===1,isC:r===2,isD:r===3}}}let a=t.variations.filter(l=>!l.isDone);if(a.length===0)return null;let f=t.isPersonalization,d;f?d=a.find(w=>!w.isControl)||a[0]:d=_r(a,o);let p=fe();return p[e]=d.id,Gt(p),d}function ot(e){let t=e.testTrafficPercentage;return typeof t!="number"||tt(e.testId)?!0:Math.random()*100<t}var Ve=ce(()=>{"use strict";L();Te()});var Le,nt=ce(()=>{"use strict";Le=`#graphql
|
|
2
|
+
"use strict";var pr=Object.create;var Pe=Object.defineProperty;var fr=Object.getOwnPropertyDescriptor;var mr=Object.getOwnPropertyNames;var gr=Object.getPrototypeOf,br=Object.prototype.hasOwnProperty;var ue=(e,t)=>()=>(e&&(t=e(e=0)),t);var wr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Mt=(e,t)=>{for(var o in t)Pe(e,o,{get:t[o],enumerable:!0})},zt=(e,t,o,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of mr(t))!br.call(e,a)&&a!==o&&Pe(e,a,{get:()=>t[a],enumerable:!(s=fr(t,a))||s.enumerable});return e};var Q=(e,t,o)=>(o=e!=null?pr(gr(e)):{},zt(t||!e||!e.__esModule?Pe(o,"default",{value:e,enumerable:!0}):o,e)),hr=e=>zt(Pe({},"__esModule",{value:!0}),e);function Qe(e){let t=0;for(let o=0;o<e.length;o++){let s=e.charCodeAt(o);t=(t<<5)-t+s,t=t&t}return Math.abs(t)}function Ke(e){let t=[];for(let[o,s]of Object.entries(e.allTests)){if(!s.data.isLive)continue;let a=[],p=0;for(let[d,f]of Object.entries(s)){if(d==="data")continue;let l=f;if(typeof l=="object"&&l!==null&&"variationName"in l){let w=!!l.isControl;a.push({id:d,name:l.variationName,weight:l.trafficPercentage,isControl:w,productId:l.id,handle:l.handle,price:l.price,isA:!w&&p===0,isB:!w&&p===1,isC:!w&&p===2,isD:!w&&p===3}),w||p++}}a.length>0&&t.push({testId:o,name:s.data.name,enabled:s.data.isLive,type:s.data.type,variations:a})}return{tests:t,selectors:e.selectors}}var Ae=ue(()=>{"use strict"});var qt=wr((le,Ce)=>{"use strict";(function(e,t){"use strict";var o="1.0.41",s="",a="?",p="function",d="undefined",f="object",l="string",w="major",r="model",c="name",n="type",i="vendor",u="version",T="architecture",_="console",m="mobile",g="tablet",x="smarttv",E="wearable",G="embedded",Me=500,be="Amazon",J="Apple",At="ASUS",Ct="BlackBerry",we="Browser",he="Chrome",sr="Edge",ye="Firefox",ve="Google",Et="Honor",St="Huawei",cr="Lenovo",ke="LG",ze="Microsoft",qe="Motorola",je="Nvidia",It="OnePlus",oe="Opera",$e="OPPO",ne="Samsung",Ut="Sharp",ie="Sony",Ge="Xiaomi",We="Zebra",Rt="Facebook",Ot="Chromium OS",Lt="Mac OS",Vt=" Browser",ur=function(y,v){var h={};for(var P in y)v[P]&&v[P].length%2===0?h[P]=v[P].concat(y[P]):h[P]=y[P];return h},_e=function(y){for(var v={},h=0;h<y.length;h++)v[y[h].toUpperCase()]=y[h];return v},Bt=function(y,v){return typeof y===l?ae(v).indexOf(ae(y))!==-1:!1},ae=function(y){return y.toLowerCase()},dr=function(y){return typeof y===l?y.replace(/[^\d\.]/g,s).split(".")[0]:t},He=function(y,v){if(typeof y===l)return y=y.replace(/^\s\s*/,s),typeof v===d?y:y.substring(0,Me)},se=function(y,v){for(var h=0,P,F,B,k,b,D;h<v.length&&!b;){var Je=v[h],Ft=v[h+1];for(P=F=0;P<Je.length&&!b&&Je[P];)if(b=Je[P++].exec(y),b)for(B=0;B<Ft.length;B++)D=b[++F],k=Ft[B],typeof k===f&&k.length>0?k.length===2?typeof k[1]==p?this[k[0]]=k[1].call(this,D):this[k[0]]=k[1]:k.length===3?typeof k[1]===p&&!(k[1].exec&&k[1].test)?this[k[0]]=D?k[1].call(this,D,k[2]):t:this[k[0]]=D?D.replace(k[1],k[2]):t:k.length===4&&(this[k[0]]=D?k[3].call(this,D.replace(k[1],k[2])):t):this[k]=D||t;h+=2}},ce=function(y,v){for(var h in v)if(typeof v[h]===f&&v[h].length>0){for(var P=0;P<v[h].length;P++)if(Bt(v[h][P],y))return h===a?t:h}else if(Bt(v[h],y))return h===a?t:h;return v.hasOwnProperty("*")?v["*"]:y},lr={"1.0":"/8","1.2":"/1","1.3":"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"},Dt={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2","8.1":"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},Nt={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[u,[c,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[u,[c,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[c,u],[/opios[\/ ]+([\w\.]+)/i],[u,[c,oe+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[u,[c,oe+" GX"]],[/\bopr\/([\w\.]+)/i],[u,[c,oe]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[u,[c,"Baidu"]],[/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],[u,[c,"Maxthon"]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,/(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio|(?=comodo_)?dragon)\/([-\w\.]+)/i,/(heytap|ovi|115)browser\/([\d\.]+)/i,/(weibo)__([\d\.]+)/i],[c,u],[/quark(?:pc)?\/([-\w\.]+)/i],[u,[c,"Quark"]],[/\bddg\/([\w\.]+)/i],[u,[c,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[u,[c,"UC"+we]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[u,[c,"WeChat"]],[/konqueror\/([\w\.]+)/i],[u,[c,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[u,[c,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[u,[c,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[u,[c,"Smart Lenovo "+we]],[/(avast|avg)\/([\w\.]+)/i],[[c,/(.+)/,"$1 Secure "+we],u],[/\bfocus\/([\w\.]+)/i],[u,[c,ye+" Focus"]],[/\bopt\/([\w\.]+)/i],[u,[c,oe+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[u,[c,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[u,[c,"Dolphin"]],[/coast\/([\w\.]+)/i],[u,[c,oe+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[u,[c,"MIUI"+Vt]],[/fxios\/([\w\.-]+)/i],[u,[c,ye]],[/\bqihoobrowser\/?([\w\.]*)/i],[u,[c,"360"]],[/\b(qq)\/([\w\.]+)/i],[[c,/(.+)/,"$1Browser"],u],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[c,/(.+)/,"$1"+Vt],u],[/samsungbrowser\/([\w\.]+)/i],[u,[c,ne+" Internet"]],[/metasr[\/ ]?([\d\.]+)/i],[u,[c,"Sogou Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[c,"Sogou Mobile"],u],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i],[c,u],[/(lbbrowser|rekonq)/i,/\[(linkedin)app\]/i],[c],[/ome\/([\w\.]+) \w* ?(iron) saf/i,/ome\/([\w\.]+).+qihu (360)[es]e/i],[u,c],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[c,Rt],u],[/(Klarna)\/([\w\.]+)/i,/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/(daum)apps[\/ ]([\w\.]+)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(alipay)client\/([\w\.]+)/i,/(twitter)(?:and| f.+e\/([\w\.]+))/i,/(chromium|instagram|snapchat)[\/ ]([-\w\.]+)/i],[c,u],[/\bgsa\/([\w\.]+) .*safari\//i],[u,[c,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[u,[c,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[u,[c,he+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[c,he+" WebView"],u],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[u,[c,"Android "+we]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[c,u],[/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],[u,[c,"Mobile Safari"]],[/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],[u,c],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[c,[u,ce,lr]],[/(webkit|khtml)\/([\w\.]+)/i],[c,u],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[c,"Netscape"],u],[/(wolvic|librewolf)\/([\w\.]+)/i],[c,u],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[u,[c,ye+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(amaya|dillo|doris|icab|ladybird|lynx|mosaic|netsurf|obigo|polaris|w3m|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/\b(links) \(([\w\.]+)/i],[c,[u,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[c,[u,/master.|lts./,""]]],cpu:[[/\b((amd|x|x86[-_]?|wow|win)64)\b/i],[[T,"amd64"]],[/(ia32(?=;))/i,/\b((i[346]|x)86)(pc)?\b/i],[[T,"ia32"]],[/\b(aarch64|arm(v?[89]e?l?|_?64))\b/i],[[T,"arm64"]],[/\b(arm(v[67])?ht?n?[fl]p?)\b/i],[[T,"armhf"]],[/( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i],[[T,"arm"]],[/((ppc|powerpc)(64)?)( mac|;|\))/i],[[T,/ower/,s,ae]],[/ sun4\w[;\)]/i],[[T,"sparc"]],[/\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i],[[T,ae]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[r,[i,ne],[n,g]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr])[-\w]+)/i,/sec-(sgh\w+)/i],[r,[i,ne],[n,m]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[r,[i,J],[n,m]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[r,[i,J],[n,g]],[/(macintosh);/i],[r,[i,J]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[r,[i,Ut],[n,m]],[/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i],[r,[i,Et],[n,g]],[/honor([-\w ]+)[;\)]/i],[r,[i,Et],[n,m]],[/\b((?:ag[rs][2356]?k?|bah[234]?|bg[2o]|bt[kv]|cmr|cpn|db[ry]2?|jdn2|got|kob2?k?|mon|pce|scm|sht?|[tw]gr|vrd)-[ad]?[lw][0125][09]b?|605hw|bg2-u03|(?:gem|fdr|m2|ple|t1)-[7a]0[1-4][lu]|t1-a2[13][lw]|mediapad[\w\. ]*(?= bui|\)))\b(?!.+d\/s)/i],[r,[i,St],[n,g]],[/(?:huawei)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[r,[i,St],[n,m]],[/oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i,/\b((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i],[[r,/_/g," "],[i,Ge],[n,g]],[/\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite|pro)?)(?: bui|\))/i,/ ([\w ]+) miui\/v?\d/i],[[r,/_/g," "],[i,Ge],[n,m]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[r,[i,$e],[n,m]],[/\b(opd2(\d{3}a?))(?: bui|\))/i],[r,[i,ce,{OnePlus:["304","403","203"],"*":$e}],[n,g]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[r,[i,"Vivo"],[n,m]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[r,[i,"Realme"],[n,m]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto(?! 360)[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[r,[i,qe],[n,m]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[r,[i,qe],[n,g]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[r,[i,ke],[n,g]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv|watch)\w+)/i,/\blg-?([\d\w]+) bui/i],[r,[i,ke],[n,m]],[/(ideatab[-\w ]+|602lv|d-42a|a101lv|a2109a|a3500-hv|s[56]000|pb-6505[my]|tb-?x?\d{3,4}(?:f[cu]|xu|[av])|yt\d?-[jx]?\d+[lfmx])( bui|;|\)|\/)/i,/lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i],[r,[i,cr],[n,g]],[/(nokia) (t[12][01])/i],[i,r,[n,g]],[/(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i,/nokia[-_ ]?(([-\w\. ]*))/i],[[r,/_/g," "],[n,m],[i,"Nokia"]],[/(pixel (c|tablet))\b/i],[r,[i,ve],[n,g]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[r,[i,ve],[n,m]],[/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[r,[i,ie],[n,m]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[r,"Xperia Tablet"],[i,ie],[n,g]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[r,[i,It],[n,m]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[r,[i,be],[n,g]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[r,/(.+)/g,"Fire Phone $1"],[i,be],[n,m]],[/(playbook);[-\w\),; ]+(rim)/i],[r,i,[n,g]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[r,[i,Ct],[n,m]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[r,[i,At],[n,g]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[r,[i,At],[n,m]],[/(nexus 9)/i],[r,[i,"HTC"],[n,g]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[i,[r,/_/g," "],[n,m]],[/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])\w*(\)| bui)/i],[r,[i,"TCL"],[n,g]],[/(itel) ((\w+))/i],[[i,ae],r,[n,ce,{tablet:["p10001l","w7001"],"*":"mobile"}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[r,[i,"Acer"],[n,g]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[r,[i,"Meizu"],[n,m]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[r,[i,"Ulefone"],[n,m]],[/; (energy ?\w+)(?: bui|\))/i,/; energizer ([\w ]+)(?: bui|\))/i],[r,[i,"Energizer"],[n,m]],[/; cat (b35);/i,/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],[r,[i,"Cat"],[n,m]],[/((?:new )?andromax[\w- ]+)(?: bui|\))/i],[r,[i,"Smartfren"],[n,m]],[/droid.+; (a(?:015|06[35]|142p?))/i],[r,[i,"Nothing"],[n,m]],[/; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i,/archos ?(5|gamepad2?|([\w ]*[t1789]|hello) ?\d+[\w ]*)( b|\))/i],[r,[i,"Archos"],[n,g]],[/archos ([\w ]+)( b|\))/i,/; (ac[3-6]\d\w{2,8})( b|\))/i],[r,[i,"Archos"],[n,m]],[/(imo) (tab \w+)/i,/(infinix) (x1101b?)/i],[i,r,[n,g]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus(?! zenw)|dell|jolla|meizu|motorola|polytron|infinix|tecno|micromax|advan)[-_ ]?([-\w]*)/i,/; (hmd|imo) ([\w ]+?)(?: bui|\))/i,/(hp) ([\w ]+\w)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i,/(oppo) ?([\w ]+) bui/i],[i,r,[n,m]],[/(kobo)\s(ereader|touch)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i,/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[i,r,[n,g]],[/(surface duo)/i],[r,[i,ze],[n,g]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[r,[i,"Fairphone"],[n,m]],[/(u304aa)/i],[r,[i,"AT&T"],[n,m]],[/\bsie-(\w*)/i],[r,[i,"Siemens"],[n,m]],[/\b(rct\w+) b/i],[r,[i,"RCA"],[n,g]],[/\b(venue[\d ]{2,7}) b/i],[r,[i,"Dell"],[n,g]],[/\b(q(?:mv|ta)\w+) b/i],[r,[i,"Verizon"],[n,g]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[r,[i,"Barnes & Noble"],[n,g]],[/\b(tm\d{3}\w+) b/i],[r,[i,"NuVision"],[n,g]],[/\b(k88) b/i],[r,[i,"ZTE"],[n,g]],[/\b(nx\d{3}j) b/i],[r,[i,"ZTE"],[n,m]],[/\b(gen\d{3}) b.+49h/i],[r,[i,"Swiss"],[n,m]],[/\b(zur\d{3}) b/i],[r,[i,"Swiss"],[n,g]],[/\b((zeki)?tb.*\b) b/i],[r,[i,"Zeki"],[n,g]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[i,"Dragon Touch"],r,[n,g]],[/\b(ns-?\w{0,9}) b/i],[r,[i,"Insignia"],[n,g]],[/\b((nxa|next)-?\w{0,9}) b/i],[r,[i,"NextBook"],[n,g]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[i,"Voice"],r,[n,m]],[/\b(lvtel\-)?(v1[12]) b/i],[[i,"LvTel"],r,[n,m]],[/\b(ph-1) /i],[r,[i,"Essential"],[n,m]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[r,[i,"Envizen"],[n,g]],[/\b(trio[-\w\. ]+) b/i],[r,[i,"MachSpeed"],[n,g]],[/\btu_(1491) b/i],[r,[i,"Rotor"],[n,g]],[/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i],[r,[i,je],[n,g]],[/(sprint) (\w+)/i],[i,r,[n,m]],[/(kin\.[onetw]{3})/i],[[r,/\./g," "],[i,ze],[n,m]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[r,[i,We],[n,g]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[r,[i,We],[n,m]],[/smart-tv.+(samsung)/i],[i,[n,x]],[/hbbtv.+maple;(\d+)/i],[[r,/^/,"SmartTV"],[i,ne],[n,x]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[i,ke],[n,x]],[/(apple) ?tv/i],[i,[r,J+" TV"],[n,x]],[/crkey/i],[[r,he+"cast"],[i,ve],[n,x]],[/droid.+aft(\w+)( bui|\))/i],[r,[i,be],[n,x]],[/(shield \w+ tv)/i],[r,[i,je],[n,x]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[r,[i,Ut],[n,x]],[/(bravia[\w ]+)( bui|\))/i],[r,[i,ie],[n,x]],[/(mi(tv|box)-?\w+) bui/i],[r,[i,Ge],[n,x]],[/Hbbtv.*(technisat) (.*);/i],[i,r,[n,x]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[i,He],[r,He],[n,x]],[/droid.+; ([\w- ]+) (?:android tv|smart[- ]?tv)/i],[r,[n,x]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[n,x]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[i,r,[n,_]],[/droid.+; (shield)( bui|\))/i],[r,[i,je],[n,_]],[/(playstation \w+)/i],[r,[i,ie],[n,_]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[r,[i,ze],[n,_]],[/\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i],[r,[i,ne],[n,E]],[/((pebble))app/i,/(asus|google|lg|oppo) ((pixel |zen)?watch[\w ]*)( bui|\))/i],[i,r,[n,E]],[/(ow(?:19|20)?we?[1-3]{1,3})/i],[r,[i,$e],[n,E]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[r,[i,J],[n,E]],[/(opwwe\d{3})/i],[r,[i,It],[n,E]],[/(moto 360)/i],[r,[i,qe],[n,E]],[/(smartwatch 3)/i],[r,[i,ie],[n,E]],[/(g watch r)/i],[r,[i,ke],[n,E]],[/droid.+; (wt63?0{2,3})\)/i],[r,[i,We],[n,E]],[/droid.+; (glass) \d/i],[r,[i,ve],[n,E]],[/(pico) (4|neo3(?: link|pro)?)/i],[i,r,[n,E]],[/; (quest( \d| pro)?)/i],[r,[i,Rt],[n,E]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[i,[n,G]],[/(aeobc)\b/i],[r,[i,be],[n,G]],[/(homepod).+mac os/i],[r,[i,J],[n,G]],[/windows iot/i],[[n,G]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i],[r,[n,m]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[r,[n,g]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[n,g]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[n,m]],[/droid .+?; ([\w\. -]+)( bui|\))/i],[r,[i,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[u,[c,sr+"HTML"]],[/(arkweb)\/([\w\.]+)/i],[c,u],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[u,[c,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna|servo)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[c,u],[/ladybird\//i],[[c,"LibWeb"]],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[u,c]],os:[[/microsoft (windows) (vista|xp)/i],[c,u],[/(windows (?:phone(?: os)?|mobile|iot))[\/ ]?([\d\.\w ]*)/i],[c,[u,ce,Dt]],[/windows nt 6\.2; (arm)/i,/windows[\/ ]([ntce\d\. ]+\w)(?!.+xbox)/i,/(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[u,ce,Dt],[c,"Windows"]],[/[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[u,/_/g,"."],[c,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[c,Lt],[u,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[u,c],[/(ubuntu) ([\w\.]+) like android/i],[[c,/(.+)/,"$1 Touch"],u],[/(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen|webos)\w*[-\/; ]?([\d\.]*)/i],[c,u],[/\(bb(10);/i],[u,[c,Ct]],[/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i],[u,[c,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[u,[c,ye+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[u,[c,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[u,[c,"watchOS"]],[/crkey\/([\d\.]+)/i],[u,[c,he+"cast"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[c,Ot],u],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux)(?: arm\w*| x86\w*| ?)([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[c,u],[/(sunos) ?([\w\.\d]*)/i],[[c,"Solaris"],u],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[c,u]]},O=function(y,v){if(typeof y===f&&(v=y,y=t),!(this instanceof O))return new O(y,v).getResult();var h=typeof e!==d&&e.navigator?e.navigator:t,P=y||(h&&h.userAgent?h.userAgent:s),F=h&&h.userAgentData?h.userAgentData:t,B=v?ur(Nt,v):Nt,k=h&&h.userAgent==P;return this.getBrowser=function(){var b={};return b[c]=t,b[u]=t,se.call(b,P,B.browser),b[w]=dr(b[u]),k&&h&&h.brave&&typeof h.brave.isBrave==p&&(b[c]="Brave"),b},this.getCPU=function(){var b={};return b[T]=t,se.call(b,P,B.cpu),b},this.getDevice=function(){var b={};return b[i]=t,b[r]=t,b[n]=t,se.call(b,P,B.device),k&&!b[n]&&F&&F.mobile&&(b[n]=m),k&&b[r]=="Macintosh"&&h&&typeof h.standalone!==d&&h.maxTouchPoints&&h.maxTouchPoints>2&&(b[r]="iPad",b[n]=g),b},this.getEngine=function(){var b={};return b[c]=t,b[u]=t,se.call(b,P,B.engine),b},this.getOS=function(){var b={};return b[c]=t,b[u]=t,se.call(b,P,B.os),k&&!b[c]&&F&&F.platform&&F.platform!="Unknown"&&(b[c]=F.platform.replace(/chrome os/i,Ot).replace(/macos/i,Lt)),b},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return P},this.setUA=function(b){return P=typeof b===l&&b.length>Me?He(b,Me):b,this},this.setUA(P),this};O.VERSION=o,O.BROWSER=_e([c,u,w]),O.CPU=_e([T]),O.DEVICE=_e([r,i,n,_,m,x,g,E,G]),O.ENGINE=O.OS=_e([c,u]),typeof le!==d?(typeof Ce!==d&&Ce.exports&&(le=Ce.exports=O),le.UAParser=O):typeof define===p&&define.amd?define(function(){return O}):typeof e!==d&&(e.UAParser=O);var Y=typeof e!==d&&(e.jQuery||e.Zepto);if(Y&&!Y.ua){var xe=new O;Y.ua=xe.getResult(),Y.ua.get=function(){return xe.getUA()},Y.ua.set=function(y){xe.setUA(y);var v=xe.getResult();for(var h in v)Y.ua[h]=v[h]}}})(typeof window=="object"?window:le)});function K(){try{if(typeof window<"u"&&window.crypto&&window.crypto.getRandomValues){let e=new Uint8Array(16);window.crypto.getRandomValues(e),e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=Array.from(e).map(o=>o.toString(16).padStart(2,"0"));return[t.slice(0,4).join(""),t.slice(4,6).join(""),t.slice(6,8).join(""),t.slice(8,10).join(""),t.slice(10,16).join("")].join("-")}}catch(e){console.warn("[ElevateAB] Crypto UUID generation failed, falling back to Math.random()",e)}return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e==="x"?t:t&3|8).toString(16)})}function N(e,t){if(typeof document>"u")return;let o=new Date;o.setTime(o.getTime()+365*24*60*60*1e3);let s="; expires="+o.toUTCString();document.cookie=e+"="+(t||"")+s+"; path=/"}function I(e){if(typeof document>"u")return null;let t=e+"=",o=document.cookie.split(";");for(let s=0;s<o.length;s++){let a=o[s];for(;a.charAt(0)===" ";)a=a.substring(1,a.length);if(a.indexOf(t)===0)return a.substring(t.length,a.length)}return null}function L(e){let t=I(e);if(t)try{return JSON.parse(t)}catch(o){return console.error("[ElevateAB] Error parsing JSON from cookie",o),null}return null}function X(e,t){typeof sessionStorage>"u"||sessionStorage.setItem(e,JSON.stringify(t))}function W(e){return typeof sessionStorage>"u"?null:sessionStorage.getItem(e)}function tt(e){let t=W(e);return t?JSON.parse(t):null}function $t(){let e=I("eabUserId");return e||(e=K(),N("eabUserId",e)),e}function Z(){return $t()}function Gt(){let e=W("eabSessionId");return e||(e=K(),X("eabSessionId",e)),e}function Oe(){return Gt()}function Le(){return{referrer:W("eabReferrer")||"",entryPage:W("eabEntry")||""}}var V=ue(()=>{"use strict"});function pe(){return L("ABTL")||{}}function Wt(e){N("ABTL",JSON.stringify(e))}function rt(e){return pe()[e]||null}function Ht(e,t){if(e[t]?.isControl)return-1;let s=0;for(let a=0;a<t;a++)e[a]?.isControl||s++;return s}function Pr(e,t){let o=e.every(r=>typeof r.weight=="number"),s=[],a=0;if(o)for(let r of e)a+=r.weight,s.push(a);else{let r=100/e.length;for(let c=0;c<e.length;c++)a+=r,s.push(a)}let d=Qe(t)%1e4/100,f=0;for(let r=0;r<s.length;r++)if(d<s[r]){f=r;break}let l=e[f]||e[0],w=Ht(e,f);return{...l,isA:w===0,isB:w===1,isC:w===2,isD:w===3}}function ot(e,t,o){let s=rt(e);if(s){let l=t.variations.findIndex(w=>w.id===s);if(l!==-1){let w=t.variations[l],r=Ht(t.variations,l);return{...w,isA:r===0,isB:r===1,isC:r===2,isD:r===3}}}let a=t.variations.filter(l=>!l.isDone);if(a.length===0)return null;let p=t.isPersonalization,d;p?d=a.find(w=>!w.isControl)||a[0]:d=Pr(a,o);let f=pe();return f[e]=d.id,Wt(f),d}function nt(e){let t=e.testTrafficPercentage;return typeof t!="number"||rt(e.testId)?!0:Math.random()*100<t}var Ve=ue(()=>{"use strict";V();Ae()});var Be,it=ue(()=>{"use strict";Be=`#graphql
|
|
3
3
|
mutation cartAttributesUpdate($cartId: ID!, $attributes: [AttributeInput!]!) {
|
|
4
4
|
cartAttributesUpdate(cartId: $cartId, attributes: $attributes) {
|
|
5
5
|
cart {
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
|
-
`});var Yt={};Ft(Yt,{cleanupCartAttributes:()=>Ht,getCartAttributesPayload:()=>it,updateCartAttributes:()=>at});function it(){let e=fe(),t=V("ABAU")||{},o=I("eabUserId"),s=I("eabUserPreview")==="true",a=I("abtid"),f={};for(let p in e)t[p]&&(f[p]=e[p]);let d=[{key:"_eabTestsList",value:JSON.stringify(f)},{key:"_eabUserId",value:o||""},{key:"_eabList",value:JSON.stringify(e)}];return s&&a&&d.push({key:"_eabPreviewTest",value:a}),d}async function at(e,t={}){if(typeof window>"u")return{success:!1,error:"Not in browser environment"};if(!t.storefrontAccessToken&&!t.storefrontApiUrl)return console.warn("[ElevateAB] Missing storefrontAccessToken. For Next.js/non-Hydrogen stores, you must provide a Storefront Access Token. This token is SAFE to use client-side - it's a public token with limited permissions. Get it from: Shopify Admin \u2192 Settings \u2192 Apps \u2192 Develop apps"),{success:!1,error:"Missing storefrontAccessToken. Required for direct Storefront API calls."};try{let o=it(),s=e.startsWith("gid://")?e:`gid://shopify/Cart/${e}`,a=t.storefrontApiUrl||`https://${Jt()}/api/2025-01/graphql.json`,f=await fetch(a,{method:"POST",headers:{"Content-Type":"application/json","X-Shopify-Storefront-Access-Token":t.storefrontAccessToken},body:JSON.stringify({query:Le,variables:{cartId:s,attributes:o}})});if(!f.ok)throw new Error(`HTTP error! status: ${f.status}`);let d=await f.json();if(d.errors||d.data?.cartAttributesUpdate?.userErrors?.length>0){let p=d.errors?.[0]?.message||d.data?.cartAttributesUpdate?.userErrors?.[0]?.message||"Unknown error";return console.error("[ElevateAB] Cart attributes update failed:",p),{success:!1,error:p}}return{success:!0}}catch(o){return console.error("[ElevateAB] Error updating cart attributes:",o),{success:!1,error:o instanceof Error?o.message:"Unknown error"}}}async function Ht(e,t={}){if(typeof window>"u")return{success:!1,error:"Not in browser environment"};if(!t.storefrontAccessToken&&!t.storefrontApiUrl)return{success:!1,error:"Missing storefrontAccessToken. Required for direct Storefront API calls."};try{let o=e.startsWith("gid://")?e:`gid://shopify/Cart/${e}`,s=[{key:"_eabTestsList",value:""},{key:"_eabUserId",value:""},{key:"_eabList",value:""},{key:"_eabPreviewTest",value:""}],a=t.storefrontApiUrl||`https://${Jt()}/api/2025-01/graphql.json`,f=await fetch(a,{method:"POST",headers:{"Content-Type":"application/json","X-Shopify-Storefront-Access-Token":t.storefrontAccessToken},body:JSON.stringify({query:Le,variables:{cartId:o,attributes:s}})});if(!f.ok)throw new Error(`HTTP error! status: ${f.status}`);let d=await f.json();if(d.errors||d.data?.cartAttributesUpdate?.userErrors?.length>0){let p=d.errors?.[0]?.message||d.data?.cartAttributesUpdate?.userErrors?.[0]?.message||"Unknown error";return console.error("[ElevateAB] Cart attributes cleanup failed:",p),{success:!1,error:p}}return{success:!0}}catch(o){return console.error("[ElevateAB] Error cleaning up cart attributes:",o),{success:!1,error:o instanceof Error?o.message:"Unknown error"}}}function Jt(){return typeof window>"u"?"":window.location.hostname}var Be=ce(()=>{"use strict";Ve();L();nt()});var Lr={};Ft(Lr,{ElevateNextProvider:()=>er,ProductViewTracker:()=>rr,clearPreviewMode:()=>mt,extractShopifyId:()=>R,extractShopifyType:()=>Ke,getCountryCode:()=>$,getFlickerPreventionScript:()=>vt,getPreviewState:()=>ee,isInPreviewMode:()=>gt,isShopifyGid:()=>Xe,matchesGeoTargeting:()=>bt,trackAddToCart:()=>st,trackCartView:()=>ut,trackCheckoutCompleted:()=>ft,trackCheckoutStarted:()=>lt,trackPageView:()=>pe,trackProductView:()=>me,trackRemoveFromCart:()=>ct,trackSearchSubmitted:()=>dt,useElevateConfig:()=>de,useExperiment:()=>xt});module.exports=br(Lr);var M=ue(require("react"),1);var U=ue(require("react"),1);var Je=ue(require("react"),1),Pe=Je.default.createContext(null);function de(){let e=Je.default.useContext(Pe);if(e===null)throw new Error("useElevateConfig must be used within ElevateProvider");return e}Te();function R(e){return e?e.includes("gid://")&&e.split("/").pop()||e:""}function Ke(e){return!e||!e.includes("gid://")?null:e.split("/")[3]||null}function Xe(e){return!!e&&e.startsWith("gid://shopify/")}var Ze=ue(zt(),1),qt={"facebook.com":"Facebook","fb.me":"Facebook","m.facebook.com":"Facebook","l.facebook.com":"Facebook","lm.facebook.com":"Facebook","instagram.com":"Instagram","l.instagram.com":"Instagram","youtube.com":"Youtube","youtu.be":"Youtube","m.youtube.com":"Youtube","bing.com":"Bing","www.bing.com":"Bing","msnbc.msn.com":"Bing","dizionario.it.msn.com":"Bing","cc.bingj.com":"Bing","m.bing.com":"Bing","twitter.com":"Twitter","t.co":"Twitter"};function C(e){return typeof e!="string"?String(e):e.replace(/[\\"'`\x00-\x1F\x7F]/g,"")}function A(e){if(e==null)return null;let t=typeof e=="string"?parseFloat(e):Number(e);return isNaN(t)?null:+(Math.round(+(t+"e2"))+"e-2")}function Ce(e){if(!e)return null;let t=/gid:\/\/shopify\/Cart\/([^?]+(\?.+)?)/,o=e.match(t);return o?o[1]:null}function Ee(e){try{return typeof e!="string"?null:decodeURIComponent(e).split("?")[0]}catch{return e||null}}function wr(e){if(!e)return"";switch(e){case"Mobile Safari":return"Safari";case"Chrome Mobile":case"Chrome Mobile iOS":return"Chrome";case"Firefox Mobile":case"Firefox Mobile iOS":return"Firefox";case"Opera Mobile":case"Opera Mini":case"Opera Mini iOS":return"Opera";case"Yandex Browser Lite":return"Yandex Browser";case"Chrome Webview":case"Mobile App":return"Mobile App";default:return e}}function hr(e){let t={};return e.searchParams.forEach((o,s)=>{t[s]||(t[s]=o)}),t}function yr(e){return!!e.host&&["http:","https:"].includes(e.protocol)}function vr(e){return e.replace(/^www\./,"")}function kr(e,t,o){if(t&&{Facebook:"Facebook",Instagram:"Instagram"}[t])return t;let a,f;try{if(e&&e.trim()!=="")a=new URL(e);else return"Direct";if(a?.hostname&&yr(a)){if(f=a.hostname,o&&o===f)return"Direct"}else return""}catch{}if(!f)return"";let d=vr(f);return d?qt[d]?qt[d]:d?.includes("google")?"Google":d:""}function Se(e){let{referrer:t,entryPage:o,userAgent:s}=e,a={referrer_source:"",browser_info:"",os_info:"",device_type:"",page_entry_path:"",utm_medium:"",utm_source:"",utm_campaign:"",utm_content:"",utm_term:"",referrer_url:t||"",gclid:"",fbclid:"",pins_campaign_id:"",epik:""};try{let f;if(o&&o.trim()!==""&&o.startsWith("http"))try{let d=new URL(o),p=d?.pathname;f=d?.hostname,p&&(a.page_entry_path=p??"");let l=hr(d);a.utm_medium=l.utm_medium??"",a.utm_source=l.utm_source??"",a.utm_campaign=l.utm_campaign??"",a.utm_content=l.utm_content??"",a.utm_term=l.utm_term??"",a.gclid=l.gclid??"",a.fbclid=l.fbclid??"",a.pins_campaign_id=l.pins_campaign_id??"",a.epik=l.epik??""}catch{}if(s){let d=(0,Ze.UAParser)(s),p=d?.browser?.name,l=wr(p);a.browser_info=l??"",a.os_info=d?.os?.name??"",s&&(a.device_type=(d?.device?.type||"desktop")?.toUpperCase()??"")}return a.referrer_source=kr(t,a?.browser_info,f)??"",a}catch{return a}}function Ie(e,t){let o=e==="/"||e==="",a=t&&/^\/[a-z]{2}(-[a-z]{2})?\/?$/i.test(e);return o||a?"index":/\/products\//.test(e)?"product":/\/collections\//.test(e)?"collection":/\/pages\//.test(e)?"page":/\/search/.test(e)?"search":/\/cart/.test(e)?"cart":/\/checkouts\//.test(e)?"checkout":"unknown"}function Ue(e){if(!e)return"";try{let t=(0,Ze.UAParser)(e),o=t?.os,s=t?.device,a="";return o?.name&&(a+=o.name,o.version&&(a+=` ${o.version}`)),s?.type&&(a+=a?` (${s.type})`:s.type),s?.vendor&&(a+=a?` ${s.vendor}`:s.vendor),s?.model&&(a+=a?` ${s.model}`:s.model),a||e}catch{return e}}L();var pt=require("react"),xr="https://bitter-river-9c62.support-67d.workers.dev",Pr="https://d339co84ntxcme.cloudfront.net/Prod/orders",S=null;function Z(e){S=e}function z(e){let t=e?.storeId||S?.storeId;return t||(console.warn("[ElevateAB] No storeId provided. Call initAnalytics() first or pass storeId to tracking function."),"")}function Tr(e){return Object.entries(e).filter(([,t])=>typeof t=="string").map(([t,o])=>({test_id:t,variant_id:o}))}function Ar(e,t){return Object.entries(e).filter(([o])=>typeof t[o]=="string").map(([o])=>({test_id:o,variant_id:t[o]}))}function Cr(){return typeof window>"u"?!1:I("eabUserPreview")==="true"||new URLSearchParams(window.location.search).get("eabUserPreview")==="true"}function q(e,t,o){if(typeof window>"u"||Cr())return null;let s=navigator.userAgent,a=window.location.pathname,f=Ie(a,o),{referrer:d,entryPage:p}=Oe(),l=Se({referrer:d,entryPage:p,userAgent:s}),w=V("ABTL")||{},r=V("ABAU")||{},c=Tr(w),n=Ar(r,w),i=Ce(localStorage.getItem("shopifyCartId")),u=new Date().toISOString(),T=sessionStorage.getItem("eabIsFirstVisit")==="true",_=I("localization")||"";return{pixel_event_id:`sh-${Q()}`,shop_name:e,timestamp:u,event_type:t,client_id:I("_shopify_y")||void 0,visitor_id:X(),session_id:Re(),cart_token:Ee(i||I("cart")),page_url:window.location.href,page_pathname:a,page_search:window.location.search,referrer_url:d,referrer_source:l?.referrer_source,previous_page:document.referrer,page_entry:p,page_entry_path:l?.page_entry_path,page_type:f,utm_medium:l?.utm_medium,utm_source:l?.utm_source,utm_campaign:l?.utm_campaign,utm_content:l?.utm_content,utm_term:l?.utm_term,gclid:l?.gclid,fbclid:l?.fbclid,pins_campaign_id:l?.pins_campaign_id,epik:l?.epik,browser_info:l?.browser_info,os_info:l?.os_info,device_type:l?.device_type,language:navigator.language,root_route:localStorage.getItem("eabRootRoute")||"",user_agent:s,user_agent_no_browser:Ue(s),is_first_visit:T,shopify_country:_,ab_test_assignments:c,ab_test_views:n,is_first_order:null}}async function j(e,t=xr){try{let o=await fetch(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e),keepalive:!0});if(!o.ok)throw new Error(`Worker error: ${o.status}`)}catch(o){console.error("[ElevateAB] Error sending analytics:",o)}}async function pe(e={}){let t=z(e);if(!t)return;let o=e.hasLocalizedPaths??S?.hasLocalizedPaths,s=e.workerUrl??S?.workerUrl,a=q(t,"page_viewed",o);if(!a)return;let f={...a,cart_currency:e.currency};await j(f,s)}async function me(e){let t=z(e);if(!t)return;let{productId:o,productVendor:s,productPrice:a,productSku:f,currency:d}=e,p=e.hasLocalizedPaths??S?.hasLocalizedPaths,l=e.workerUrl??S?.workerUrl,w=q(t,"product_viewed",p);if(!w)return;let r={...w,cart_currency:d,product_id:R(o),product_vendor:C(s),product_price:A(a),product_sku:C(f)};await j(r,l)}async function st(e){let t=z(e);if(!t)return;let{productId:o,variantId:s,productVendor:a,productPrice:f,productQuantity:d,productSku:p,currency:l,cartId:w}=e,r=e.hasLocalizedPaths??S?.hasLocalizedPaths,c=e.workerUrl??S?.workerUrl,n=e.storefrontAccessToken??S?.storefrontAccessToken,i=q(t,"product_added_to_cart",r);if(!i)return;let u={...i,cart_currency:l,product_id:R(o),variant_id:R(s),product_vendor:C(a),product_price:A(f),product_quantity:d,product_sku:C(p)};if(await j(u,c),w&&n)try{let{updateCartAttributes:T}=await Promise.resolve().then(()=>(Be(),Yt));await T(w,{storefrontAccessToken:n})}catch(T){console.error("[ElevateAB] Failed to update cart attributes:",T)}}async function ct(e){let t=z(e);if(!t)return;let{productId:o,variantId:s,productVendor:a,productPrice:f,productQuantity:d,productSku:p,currency:l}=e,w=e.hasLocalizedPaths??S?.hasLocalizedPaths,r=e.workerUrl??S?.workerUrl,c=q(t,"product_removed_from_cart",w);if(!c)return;let n={...c,cart_currency:l,product_id:R(o),variant_id:R(s),product_vendor:C(a),product_price:A(f),product_quantity:d,product_sku:C(p)};await j(n,r)}async function ut(e){let t=z(e);if(!t)return;let{cartTotalPrice:o,cartTotalQuantity:s,cartItems:a,currency:f}=e,d=e.hasLocalizedPaths??S?.hasLocalizedPaths,p=e.workerUrl??S?.workerUrl,l=q(t,"cart_viewed",d);if(!l)return;let w={...l,cart_currency:f,cart_total_price:A(o),cart_total_quantity:s,cart_items:a?.map(r=>({product_id:R(r.productId),variant_id:R(r.variantId),product_vendor:C(r.productVendor)||"",product_price:A(r.productPrice),product_quantity:r.productQuantity??null,product_sku:C(r.productSku)||""}))};await j(w,p)}async function dt(e){let t=z(e);if(!t)return;let{searchQuery:o,currency:s}=e,a=e.hasLocalizedPaths??S?.hasLocalizedPaths,f=e.workerUrl??S?.workerUrl,d=q(t,"search_submitted",a);if(!d)return;let p={...d,cart_currency:s,search_query:C(o)};await j(p,f)}async function lt(e){let t=z(e);if(!t)return;let{cartTotalPrice:o,cartSubtotalPrice:s,cartShippingPrice:a,cartTaxAmount:f,cartDiscountAmount:d,customerId:p,cartItems:l,currency:w}=e,r=e.hasLocalizedPaths??S?.hasLocalizedPaths,c=e.workerUrl??S?.workerUrl,n=q(t,"checkout_started",r);if(!n)return;let i=0,u=l?.map(_=>{let m=_.productQuantity??0;return i+=m,{product_id:R(_.productId),variant_id:R(_.variantId),product_vendor:C(_.productVendor)||"",vendor:C(_.productVendor)||"",product_price:A(_.productPrice),total_price:A(_.productPrice),product_quantity:m,quantity:m,product_sku:C(_.productSku)||"",sku:C(_.productSku)||"",total_discount:A(_.totalDiscount)}})||[],T={...n,cart_currency:w,cart_total_price:A(o),cart_subtotal_price:A(s),cart_total_quantity:i,cart_shipping_price:A(a),cart_tax_amount:A(f),cart_discount_amount:A(d),cart_items:u,customer_id:p};await j(T,c)}async function ft(e){let t=z(e);if(!t)return;let{orderId:o,cartTotalPrice:s,cartSubtotalPrice:a,cartShippingPrice:f,cartTaxAmount:d,cartDiscountAmount:p,customerId:l,isFirstOrder:w,noteAttributes:r,cartItems:c,currency:n}=e,i=e.hasLocalizedPaths??S?.hasLocalizedPaths,u=e.ordersWorkerUrl??S?.ordersWorkerUrl??Pr,T=q(t,"checkout_completed",i);if(!T)return;let _=0,m=c?.map(x=>{let E=x.productQuantity??0;return _+=E,{product_id:R(x.productId),variant_id:R(x.variantId),product_vendor:C(x.productVendor)||"",vendor:C(x.productVendor)||"",product_price:A(x.productPrice),total_price:A(x.productPrice),product_quantity:E,quantity:E,product_sku:C(x.productSku)||"",sku:C(x.productSku)||"",total_discount:A(x.totalDiscount)}})||[],g={...T,cart_currency:n,cart_total_price:A(s),cart_subtotal_price:A(a),cart_total_quantity:_,cart_shipping_price:A(f),cart_tax_amount:A(d),cart_discount_amount:A(p),cart_items:m,order_id:o,customer_id:l,is_first_order:w??null,note_attributes:r};await j(g,u)}L();function Er(e){let t={},o={};if(!e)return{assignments:t,views:o};let s=e.split("~");for(let a of s){let f=a.split("_");if(f.length>=2){let d=f[0],p=f[1],l=f[2]==="1";t[d]=p,o[d]=l}}return{assignments:t,views:o}}function ee(){if(typeof window>"u")return{isPreview:!1,previewTestId:null,forcedAssignments:{},previewedViews:{}};let e=new URLSearchParams(window.location.search),o=(e.get("eabUserPreview")||I("eabUserPreview"))==="true",s=e.get("abtid");s||(s=W("eabPreviewTestId"));let a=e.get("eab_tests")||"",{assignments:f,views:d}=Er(a);return e.has("eabUserPreview")&&N("eabUserPreview","true"),e.has("abtid")&&s&&K("eabPreviewTestId",s),{isPreview:o,previewTestId:s,forcedAssignments:f,previewedViews:d}}function mt(){if(!(typeof document>"u")&&(document.cookie="eabUserPreview=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;",typeof sessionStorage<"u"&&sessionStorage.removeItem("eabPreviewTestId"),typeof window<"u")){let e=new URL(window.location.href);e.searchParams.delete("eabUserPreview"),e.searchParams.delete("abtid"),e.searchParams.delete("eab_tests"),window.history.replaceState({},"",e.toString())}}function gt(){return ee().isPreview}L();var De={SHOPIFY_LOCALIZATION:"localization",EAB_COUNTRY:"eabCountryCode",EAB_GEO:"eabGeoLocation"};function $(){if(typeof window>"u")return null;let t=new URLSearchParams(window.location.search).get("country");if(t)return N(De.EAB_COUNTRY,t.toUpperCase()),t.toUpperCase();let o=I(De.SHOPIFY_LOCALIZATION);if(o)return o.toUpperCase();let s=I(De.EAB_COUNTRY);if(s)return s.toUpperCase();if(typeof localStorage<"u"){let a=localStorage.getItem(De.EAB_COUNTRY);if(a)return a.toUpperCase()}return null}function Qt(e,t){let o=t??$();return o?e.map(a=>a.toUpperCase()).includes(o.toUpperCase()):!1}function Kt(e,t){let o=t??$();return o?e.map(a=>a.toUpperCase()).includes(o.toUpperCase()):!1}function bt(e){let t=$();return!e.includeCountries?.length&&!e.excludeCountries?.length?!0:!t||e.excludeCountries?.length&&Kt(e.excludeCountries,t)?!1:e.includeCountries?.length?Qt(e.includeCountries,t):!0}var H="eab-prevent-flicker",wt="eab-flicker-styles";function Xt(e=3e3){if(typeof document>"u"||document.getElementById(wt))return;let t=document.createElement("style");t.id=wt,t.textContent=`
|
|
18
|
+
`});var Qt={};Mt(Qt,{cleanupCartAttributes:()=>Jt,getCartAttributesPayload:()=>at,updateCartAttributes:()=>st});function at(){let e=pe(),t=L("ABAU")||{},o=I("eabUserId"),s=I("eabUserPreview")==="true",a=I("abtid"),p={};for(let f in e)t[f]&&(p[f]=e[f]);let d=[{key:"_eabTestsList",value:JSON.stringify(p)},{key:"_eabUserId",value:o||""},{key:"_eabList",value:JSON.stringify(e)}];return s&&a&&d.push({key:"_eabPreviewTest",value:a}),d}async function st(e,t={}){if(typeof window>"u")return{success:!1,error:"Not in browser environment"};if(!t.storefrontAccessToken&&!t.storefrontApiUrl)return console.warn("[ElevateAB] Missing storefrontAccessToken. For Next.js/non-Hydrogen stores, you must provide a Storefront Access Token. This token is SAFE to use client-side - it's a public token with limited permissions. Get it from: Shopify Admin \u2192 Settings \u2192 Apps \u2192 Develop apps"),{success:!1,error:"Missing storefrontAccessToken. Required for direct Storefront API calls."};try{let o=at(),s=e.startsWith("gid://")?e:`gid://shopify/Cart/${e}`,a=t.storefrontApiUrl||`https://${Yt()}/api/2025-01/graphql.json`,p=await fetch(a,{method:"POST",headers:{"Content-Type":"application/json","X-Shopify-Storefront-Access-Token":t.storefrontAccessToken},body:JSON.stringify({query:Be,variables:{cartId:s,attributes:o}})});if(!p.ok)throw new Error(`HTTP error! status: ${p.status}`);let d=await p.json();if(d.errors||d.data?.cartAttributesUpdate?.userErrors?.length>0){let f=d.errors?.[0]?.message||d.data?.cartAttributesUpdate?.userErrors?.[0]?.message||"Unknown error";return console.error("[ElevateAB] Cart attributes update failed:",f),{success:!1,error:f}}return{success:!0}}catch(o){return console.error("[ElevateAB] Error updating cart attributes:",o),{success:!1,error:o instanceof Error?o.message:"Unknown error"}}}async function Jt(e,t={}){if(typeof window>"u")return{success:!1,error:"Not in browser environment"};if(!t.storefrontAccessToken&&!t.storefrontApiUrl)return{success:!1,error:"Missing storefrontAccessToken. Required for direct Storefront API calls."};try{let o=e.startsWith("gid://")?e:`gid://shopify/Cart/${e}`,s=[{key:"_eabTestsList",value:""},{key:"_eabUserId",value:""},{key:"_eabList",value:""},{key:"_eabPreviewTest",value:""}],a=t.storefrontApiUrl||`https://${Yt()}/api/2025-01/graphql.json`,p=await fetch(a,{method:"POST",headers:{"Content-Type":"application/json","X-Shopify-Storefront-Access-Token":t.storefrontAccessToken},body:JSON.stringify({query:Be,variables:{cartId:o,attributes:s}})});if(!p.ok)throw new Error(`HTTP error! status: ${p.status}`);let d=await p.json();if(d.errors||d.data?.cartAttributesUpdate?.userErrors?.length>0){let f=d.errors?.[0]?.message||d.data?.cartAttributesUpdate?.userErrors?.[0]?.message||"Unknown error";return console.error("[ElevateAB] Cart attributes cleanup failed:",f),{success:!1,error:f}}return{success:!0}}catch(o){return console.error("[ElevateAB] Error cleaning up cart attributes:",o),{success:!1,error:o instanceof Error?o.message:"Unknown error"}}}function Yt(){return typeof window>"u"?"":window.location.hostname}var De=ue(()=>{"use strict";Ve();V();it()});var Dr={};Mt(Dr,{AntiFlickerScript:()=>Pt,ElevateNextProvider:()=>tr,ProductViewTracker:()=>or,clearPreviewMode:()=>gt,extractShopifyId:()=>R,extractShopifyType:()=>Xe,getCountryCode:()=>$,getFlickerPreventionScript:()=>ge,getPreviewState:()=>te,isInPreviewMode:()=>bt,isShopifyGid:()=>Ze,matchesGeoTargeting:()=>wt,trackAddToCart:()=>ct,trackCartView:()=>dt,trackCheckoutCompleted:()=>ft,trackCheckoutStarted:()=>pt,trackPageView:()=>fe,trackProductView:()=>me,trackRemoveFromCart:()=>ut,trackSearchSubmitted:()=>lt,useElevateConfig:()=>de,useExperiment:()=>xt});module.exports=hr(Dr);var M=Q(require("react"),1);var U=Q(require("react"),1);var Ye=Q(require("react"),1),Te=Ye.default.createContext(null);function de(){let e=Ye.default.useContext(Te);if(e===null)throw new Error("useElevateConfig must be used within ElevateProvider");return e}Ae();function R(e){return e?e.includes("gid://")&&e.split("/").pop()||e:""}function Xe(e){return!e||!e.includes("gid://")?null:e.split("/")[3]||null}function Ze(e){return!!e&&e.startsWith("gid://shopify/")}var et=Q(qt(),1),jt={"facebook.com":"Facebook","fb.me":"Facebook","m.facebook.com":"Facebook","l.facebook.com":"Facebook","lm.facebook.com":"Facebook","instagram.com":"Instagram","l.instagram.com":"Instagram","youtube.com":"Youtube","youtu.be":"Youtube","m.youtube.com":"Youtube","bing.com":"Bing","www.bing.com":"Bing","msnbc.msn.com":"Bing","dizionario.it.msn.com":"Bing","cc.bingj.com":"Bing","m.bing.com":"Bing","twitter.com":"Twitter","t.co":"Twitter"};function C(e){return typeof e!="string"?String(e):e.replace(/[\\"'`\x00-\x1F\x7F]/g,"")}function A(e){if(e==null)return null;let t=typeof e=="string"?parseFloat(e):Number(e);return isNaN(t)?null:+(Math.round(+(t+"e2"))+"e-2")}function Ee(e){if(!e)return null;let t=/gid:\/\/shopify\/Cart\/([^?]+(\?.+)?)/,o=e.match(t);return o?o[1]:null}function Se(e){try{return typeof e!="string"?null:decodeURIComponent(e).split("?")[0]}catch{return e||null}}function yr(e){if(!e)return"";switch(e){case"Mobile Safari":return"Safari";case"Chrome Mobile":case"Chrome Mobile iOS":return"Chrome";case"Firefox Mobile":case"Firefox Mobile iOS":return"Firefox";case"Opera Mobile":case"Opera Mini":case"Opera Mini iOS":return"Opera";case"Yandex Browser Lite":return"Yandex Browser";case"Chrome Webview":case"Mobile App":return"Mobile App";default:return e}}function vr(e){let t={};return e.searchParams.forEach((o,s)=>{t[s]||(t[s]=o)}),t}function kr(e){return!!e.host&&["http:","https:"].includes(e.protocol)}function _r(e){return e.replace(/^www\./,"")}function xr(e,t,o){if(t&&{Facebook:"Facebook",Instagram:"Instagram"}[t])return t;let a,p;try{if(e&&e.trim()!=="")a=new URL(e);else return"Direct";if(a?.hostname&&kr(a)){if(p=a.hostname,o&&o===p)return"Direct"}else return""}catch{}if(!p)return"";let d=_r(p);return d?jt[d]?jt[d]:d?.includes("google")?"Google":d:""}function Ie(e){let{referrer:t,entryPage:o,userAgent:s}=e,a={referrer_source:"",browser_info:"",os_info:"",device_type:"",page_entry_path:"",utm_medium:"",utm_source:"",utm_campaign:"",utm_content:"",utm_term:"",referrer_url:t||"",gclid:"",fbclid:"",pins_campaign_id:"",epik:""};try{let p;if(o&&o.trim()!==""&&o.startsWith("http"))try{let d=new URL(o),f=d?.pathname;p=d?.hostname,f&&(a.page_entry_path=f??"");let l=vr(d);a.utm_medium=l.utm_medium??"",a.utm_source=l.utm_source??"",a.utm_campaign=l.utm_campaign??"",a.utm_content=l.utm_content??"",a.utm_term=l.utm_term??"",a.gclid=l.gclid??"",a.fbclid=l.fbclid??"",a.pins_campaign_id=l.pins_campaign_id??"",a.epik=l.epik??""}catch{}if(s){let d=(0,et.UAParser)(s),f=d?.browser?.name,l=yr(f);a.browser_info=l??"",a.os_info=d?.os?.name??"",s&&(a.device_type=(d?.device?.type||"desktop")?.toUpperCase()??"")}return a.referrer_source=xr(t,a?.browser_info,p)??"",a}catch{return a}}function Ue(e,t){let o=e==="/"||e==="",a=t&&/^\/[a-z]{2}(-[a-z]{2})?\/?$/i.test(e);return o||a?"index":/\/products\//.test(e)?"product":/\/collections\//.test(e)?"collection":/\/pages\//.test(e)?"page":/\/search/.test(e)?"search":/\/cart/.test(e)?"cart":/\/checkouts\//.test(e)?"checkout":"unknown"}function Re(e){if(!e)return"";try{let t=(0,et.UAParser)(e),o=t?.os,s=t?.device,a="";return o?.name&&(a+=o.name,o.version&&(a+=` ${o.version}`)),s?.type&&(a+=a?` (${s.type})`:s.type),s?.vendor&&(a+=a?` ${s.vendor}`:s.vendor),s?.model&&(a+=a?` ${s.model}`:s.model),a||e}catch{return e}}V();var mt=require("react"),Tr="https://bitter-river-9c62.support-67d.workers.dev",Ar="https://d339co84ntxcme.cloudfront.net/Prod/orders",S=null;function ee(e){S=e}function z(e){let t=e?.storeId||S?.storeId;return t||(console.warn("[ElevateAB] No storeId provided. Call initAnalytics() first or pass storeId to tracking function."),"")}function Cr(e){return Object.entries(e).filter(([,t])=>typeof t=="string").map(([t,o])=>({test_id:t,variant_id:o}))}function Er(e,t){return Object.entries(e).filter(([o])=>typeof t[o]=="string").map(([o])=>({test_id:o,variant_id:t[o]}))}function Sr(){return typeof window>"u"?!1:I("eabUserPreview")==="true"||new URLSearchParams(window.location.search).get("eabUserPreview")==="true"}function q(e,t,o){if(typeof window>"u"||Sr())return null;let s=navigator.userAgent,a=window.location.pathname,p=Ue(a,o),{referrer:d,entryPage:f}=Le(),l=Ie({referrer:d,entryPage:f,userAgent:s}),w=L("ABTL")||{},r=L("ABAU")||{},c=Cr(w),n=Er(r,w),i=Ee(localStorage.getItem("shopifyCartId")),u=new Date().toISOString(),T=sessionStorage.getItem("eabIsFirstVisit")==="true",_=I("localization")||"";return{pixel_event_id:`sh-${K()}`,shop_name:e,timestamp:u,event_type:t,client_id:I("_shopify_y")||void 0,visitor_id:Z(),session_id:Oe(),cart_token:Se(i||I("cart")),page_url:window.location.href,page_pathname:a,page_search:window.location.search,referrer_url:d,referrer_source:l?.referrer_source,previous_page:document.referrer,page_entry:f,page_entry_path:l?.page_entry_path,page_type:p,utm_medium:l?.utm_medium,utm_source:l?.utm_source,utm_campaign:l?.utm_campaign,utm_content:l?.utm_content,utm_term:l?.utm_term,gclid:l?.gclid,fbclid:l?.fbclid,pins_campaign_id:l?.pins_campaign_id,epik:l?.epik,browser_info:l?.browser_info,os_info:l?.os_info,device_type:l?.device_type,language:navigator.language,root_route:localStorage.getItem("eabRootRoute")||"",user_agent:s,user_agent_no_browser:Re(s),is_first_visit:T,shopify_country:_,ab_test_assignments:c,ab_test_views:n,is_first_order:null}}async function j(e,t=Tr){try{let o=await fetch(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e),keepalive:!0});if(!o.ok)throw new Error(`Worker error: ${o.status}`)}catch(o){console.error("[ElevateAB] Error sending analytics:",o)}}async function fe(e={}){let t=z(e);if(!t)return;let o=e.hasLocalizedPaths??S?.hasLocalizedPaths,s=e.workerUrl??S?.workerUrl,a=q(t,"page_viewed",o);if(!a)return;let p={...a,cart_currency:e.currency};await j(p,s)}async function me(e){let t=z(e);if(!t)return;let{productId:o,productVendor:s,productPrice:a,productSku:p,currency:d}=e,f=e.hasLocalizedPaths??S?.hasLocalizedPaths,l=e.workerUrl??S?.workerUrl,w=q(t,"product_viewed",f);if(!w)return;let r={...w,cart_currency:d,product_id:R(o),product_vendor:C(s),product_price:A(a),product_sku:C(p)};await j(r,l)}async function ct(e){let t=z(e);if(!t)return;let{productId:o,variantId:s,productVendor:a,productPrice:p,productQuantity:d,productSku:f,currency:l,cartId:w}=e,r=e.hasLocalizedPaths??S?.hasLocalizedPaths,c=e.workerUrl??S?.workerUrl,n=e.storefrontAccessToken??S?.storefrontAccessToken,i=q(t,"product_added_to_cart",r);if(!i)return;let u={...i,cart_currency:l,product_id:R(o),variant_id:R(s),product_vendor:C(a),product_price:A(p),product_quantity:d,product_sku:C(f)};if(await j(u,c),w&&n)try{let{updateCartAttributes:T}=await Promise.resolve().then(()=>(De(),Qt));await T(w,{storefrontAccessToken:n})}catch(T){console.error("[ElevateAB] Failed to update cart attributes:",T)}}async function ut(e){let t=z(e);if(!t)return;let{productId:o,variantId:s,productVendor:a,productPrice:p,productQuantity:d,productSku:f,currency:l}=e,w=e.hasLocalizedPaths??S?.hasLocalizedPaths,r=e.workerUrl??S?.workerUrl,c=q(t,"product_removed_from_cart",w);if(!c)return;let n={...c,cart_currency:l,product_id:R(o),variant_id:R(s),product_vendor:C(a),product_price:A(p),product_quantity:d,product_sku:C(f)};await j(n,r)}async function dt(e){let t=z(e);if(!t)return;let{cartTotalPrice:o,cartTotalQuantity:s,cartItems:a,currency:p}=e,d=e.hasLocalizedPaths??S?.hasLocalizedPaths,f=e.workerUrl??S?.workerUrl,l=q(t,"cart_viewed",d);if(!l)return;let w={...l,cart_currency:p,cart_total_price:A(o),cart_total_quantity:s,cart_items:a?.map(r=>({product_id:R(r.productId),variant_id:R(r.variantId),product_vendor:C(r.productVendor)||"",product_price:A(r.productPrice),product_quantity:r.productQuantity??null,product_sku:C(r.productSku)||""}))};await j(w,f)}async function lt(e){let t=z(e);if(!t)return;let{searchQuery:o,currency:s}=e,a=e.hasLocalizedPaths??S?.hasLocalizedPaths,p=e.workerUrl??S?.workerUrl,d=q(t,"search_submitted",a);if(!d)return;let f={...d,cart_currency:s,search_query:C(o)};await j(f,p)}async function pt(e){let t=z(e);if(!t)return;let{cartTotalPrice:o,cartSubtotalPrice:s,cartShippingPrice:a,cartTaxAmount:p,cartDiscountAmount:d,customerId:f,cartItems:l,currency:w}=e,r=e.hasLocalizedPaths??S?.hasLocalizedPaths,c=e.workerUrl??S?.workerUrl,n=q(t,"checkout_started",r);if(!n)return;let i=0,u=l?.map(_=>{let m=_.productQuantity??0;return i+=m,{product_id:R(_.productId),variant_id:R(_.variantId),product_vendor:C(_.productVendor)||"",vendor:C(_.productVendor)||"",product_price:A(_.productPrice),total_price:A(_.productPrice),product_quantity:m,quantity:m,product_sku:C(_.productSku)||"",sku:C(_.productSku)||"",total_discount:A(_.totalDiscount)}})||[],T={...n,cart_currency:w,cart_total_price:A(o),cart_subtotal_price:A(s),cart_total_quantity:i,cart_shipping_price:A(a),cart_tax_amount:A(p),cart_discount_amount:A(d),cart_items:u,customer_id:f};await j(T,c)}async function ft(e){let t=z(e);if(!t)return;let{orderId:o,cartTotalPrice:s,cartSubtotalPrice:a,cartShippingPrice:p,cartTaxAmount:d,cartDiscountAmount:f,customerId:l,isFirstOrder:w,noteAttributes:r,cartItems:c,currency:n}=e,i=e.hasLocalizedPaths??S?.hasLocalizedPaths,u=e.ordersWorkerUrl??S?.ordersWorkerUrl??Ar,T=q(t,"checkout_completed",i);if(!T)return;let _=0,m=c?.map(x=>{let E=x.productQuantity??0;return _+=E,{product_id:R(x.productId),variant_id:R(x.variantId),product_vendor:C(x.productVendor)||"",vendor:C(x.productVendor)||"",product_price:A(x.productPrice),total_price:A(x.productPrice),product_quantity:E,quantity:E,product_sku:C(x.productSku)||"",sku:C(x.productSku)||"",total_discount:A(x.totalDiscount)}})||[],g={...T,cart_currency:n,cart_total_price:A(s),cart_subtotal_price:A(a),cart_total_quantity:_,cart_shipping_price:A(p),cart_tax_amount:A(d),cart_discount_amount:A(f),cart_items:m,order_id:o,customer_id:l,is_first_order:w??null,note_attributes:r};await j(g,u)}V();function Ir(e){let t={},o={};if(!e)return{assignments:t,views:o};let s=e.split("~");for(let a of s){let p=a.split("_");if(p.length>=2){let d=p[0],f=p[1],l=p[2]==="1";t[d]=f,o[d]=l}}return{assignments:t,views:o}}function te(){if(typeof window>"u")return{isPreview:!1,previewTestId:null,forcedAssignments:{},previewedViews:{}};let e=new URLSearchParams(window.location.search),o=(e.get("eabUserPreview")||I("eabUserPreview"))==="true",s=e.get("abtid");s||(s=W("eabPreviewTestId"));let a=e.get("eab_tests")||"",{assignments:p,views:d}=Ir(a);return e.has("eabUserPreview")&&N("eabUserPreview","true"),e.has("abtid")&&s&&X("eabPreviewTestId",s),{isPreview:o,previewTestId:s,forcedAssignments:p,previewedViews:d}}function gt(){if(!(typeof document>"u")&&(document.cookie="eabUserPreview=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;",typeof sessionStorage<"u"&&sessionStorage.removeItem("eabPreviewTestId"),typeof window<"u")){let e=new URL(window.location.href);e.searchParams.delete("eabUserPreview"),e.searchParams.delete("abtid"),e.searchParams.delete("eab_tests"),window.history.replaceState({},"",e.toString())}}function bt(){return te().isPreview}V();var Ne={SHOPIFY_LOCALIZATION:"localization",EAB_COUNTRY:"eabCountryCode",EAB_GEO:"eabGeoLocation"};function $(){if(typeof window>"u")return null;let t=new URLSearchParams(window.location.search).get("country");if(t)return N(Ne.EAB_COUNTRY,t.toUpperCase()),t.toUpperCase();let o=I(Ne.SHOPIFY_LOCALIZATION);if(o)return o.toUpperCase();let s=I(Ne.EAB_COUNTRY);if(s)return s.toUpperCase();if(typeof localStorage<"u"){let a=localStorage.getItem(Ne.EAB_COUNTRY);if(a)return a.toUpperCase()}return null}function Kt(e,t){let o=t??$();return o?e.map(a=>a.toUpperCase()).includes(o.toUpperCase()):!1}function Xt(e,t){let o=t??$();return o?e.map(a=>a.toUpperCase()).includes(o.toUpperCase()):!1}function wt(e){let t=$();return!e.includeCountries?.length&&!e.excludeCountries?.length?!0:!t||e.excludeCountries?.length&&Xt(e.excludeCountries,t)?!1:e.includeCountries?.length?Kt(e.includeCountries,t):!0}var H="eab-prevent-flicker",ht="eab-flicker-styles";function Zt(e=3e3){if(typeof document>"u"||document.getElementById(ht))return;let t=document.createElement("style");t.id=ht,t.textContent=`
|
|
19
19
|
/* Elevate AB - Flicker Prevention */
|
|
20
20
|
.${H} {
|
|
21
21
|
opacity: 0 !important;
|
|
@@ -30,13 +30,13 @@
|
|
|
30
30
|
.${H} {
|
|
31
31
|
animation: eab-reveal 0s ${e}ms forwards;
|
|
32
32
|
}
|
|
33
|
-
`;let o=document.head||document.getElementsByTagName("head")[0];o.insertBefore(t,o.firstChild)}function
|
|
33
|
+
`;let o=document.head||document.getElementsByTagName("head")[0];o.insertBefore(t,o.firstChild)}function er(e="body"){if(typeof document>"u")return;let t=document.querySelector(e);t&&t.classList.add(H)}function yt(e="body"){if(typeof document>"u")return;let t=document.querySelector(e);t&&t.classList.remove(H)}function vt(e="body",t=3e3){if(typeof document>"u")return()=>{};Zt(t),er(e);let o=!1,s=setTimeout(()=>{o||(console.warn(`[ElevateAB] Flicker prevention timeout (${t}ms) reached. Revealing content. Check if test assignment is completing.`),yt(e),o=!0)},t);return()=>{o||(clearTimeout(s),yt(e),o=!0)}}function ge(e=3e3){return`
|
|
34
34
|
(function() {
|
|
35
35
|
var style = document.createElement('style');
|
|
36
|
-
style.id = '${
|
|
36
|
+
style.id = '${ht}';
|
|
37
37
|
style.textContent = '.${H}{opacity:0!important;pointer-events:none!important}@keyframes eab-reveal{to{opacity:1;pointer-events:auto}}.${H}{animation:eab-reveal 0s ${e}ms forwards}';
|
|
38
38
|
document.head.insertBefore(style, document.head.firstChild);
|
|
39
39
|
document.body && document.body.classList.add('${H}');
|
|
40
40
|
})();
|
|
41
|
-
`.trim()}var
|
|
41
|
+
`.trim()}var Ur=!1,Rr={allTests:{"price-test-001":{8606:{variationName:"Control",trafficPercentage:50,isDone:!1,isControl:!0},8607:{variationName:"Sale Price",trafficPercentage:50,isDone:!1,prices:{"41883969519701":{main:"USD",price:{USD:"599.95"},compare:{USD:"699.95"}}}},data:{name:"Snowboard Price Test",isLive:!0,settings:{afterDiscounts:!0},type:"PRICE_PLUS",filters:[],isPersonalization:!1,currencies:["USD"],handles:["the-complete-snowboard"],productIds:["7240161067093"]}},"content-test-001":{"ctrl-001":{variationName:"Control",trafficPercentage:34,isDone:!1,isControl:!0,content:{headline:"Welcome to our store",subheadline:"Shop the best products"}},"var-a-001":{variationName:"Urgency Copy",trafficPercentage:33,isDone:!1,content:{headline:"Limited Time Offer!",subheadline:"Don't miss out - sale ends soon"}},"var-b-001":{variationName:"Value Copy",trafficPercentage:33,isDone:!1,content:{headline:"Premium Quality, Great Value",subheadline:"Free shipping on orders over $50"}},data:{name:"Homepage Headline Test",isLive:!0,settings:{afterDiscounts:!0},type:"CONTENT",filters:[],isPersonalization:!1,pathnames:["/"]}},"custom-code-test-001":{10150:{variationName:"Control",trafficPercentage:50,isDone:!1,customCode:{id:"c11a582c-6b27-4263-941c-8ed123437c6b",js:"console.log('[Elevate] Control variant active');",css:"",pathnames:["*"],excludePathnames:[]},isControl:!0},10151:{variationName:"Enhanced UI",trafficPercentage:50,isDone:!1,customCode:{id:"df71546a-0a5f-4ad0-8d0f-a1bdeab05e84",js:"console.log('[Elevate] Enhanced UI variant'); document.body.style.borderTop = '3px solid #10b981';",css:".hero-section { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); }",pathnames:["*"],excludePathnames:[]}},data:{name:"Custom Code Enhancement",isLive:!0,settings:{afterDiscounts:!0},type:"CUSTOM_CODE",filters:[],isPersonalization:!1,pathnames:["*"],excludePathnames:[]}},"split-url-test-001":{"split-ctrl":{variationName:"Control",trafficPercentage:50,isDone:!1,isControl:!0,splitUrlTestLinks:{default:"/collections/all"}},"split-var-a":{variationName:"New Landing Page",trafficPercentage:50,isDone:!1,splitUrlTestLinks:{default:"/collections/featured"}},data:{name:"Landing Page Split Test",isLive:!0,settings:{afterDiscounts:!0},type:"SPLIT_URL",filters:[],isPersonalization:!1,pathnames:["/promo"]}}},selectors:{selectorsV2:[]}};function kt({storeId:e,storefrontAccessToken:t,preventFlickering:o=!1,flickerTimeout:s=3e3,children:a}){let[p,d]=U.default.useState(null),[f,l]=U.default.useState(null),[w,r]=U.default.useState(null),c=(0,U.useRef)(null);U.default.useEffect(()=>(o&&typeof window<"u"&&(c.current=vt("body",s)),()=>{c.current&&c.current()}),[o,s]),U.default.useEffect(()=>{typeof window>"u"||ee({storeId:e,storefrontAccessToken:t})},[e,t]),U.default.useEffect(()=>{if(typeof window>"u")return;let T=te();l(T);let _=$();r(_)},[]);let n=(0,U.useCallback)(()=>{c.current&&(c.current(),c.current=null)},[]);U.default.useEffect(()=>{async function T(){try{if(!Ur){let G=Ke(Rr);d(G),n();return}let _=`https://configs.elevateab.com/config/${e}.json`,m=await fetch(_);if(m.status===404){d({tests:[],selectors:void 0}),n();return}if(!m.ok)throw new Error(`Failed to fetch config: ${m.status} ${m.statusText}`);let g=await m.json();if(g.subscriptionPaused){console.error(`[ElevateAB] Subscription is paused or stopped for store: ${e}. `+(g.subscriptionMessage||"A/B tests will not run. Please reactivate your subscription.")),d({tests:[],selectors:void 0}),n();return}if(!(Object.keys(g.allTests||{}).length>0)){d({tests:[],selectors:void 0}),n();return}let E=Ke(g);d(E),n()}catch(_){console.error("[ElevateAB] Failed to load config:",_),d({tests:[],selectors:void 0}),n()}}T()},[e,n]);let i=U.default.useMemo(()=>({config:p,storeId:e,storefrontAccessToken:t,isPreviewMode:f?.isPreview??!1,previewTestId:f?.previewTestId??null,countryCode:w}),[p,e,t,f,w]);U.default.useEffect(()=>{ee({storeId:e,storefrontAccessToken:t})},[e,t]);let u=(0,U.useRef)(!1);return U.default.useEffect(()=>{!t&&!u.current&&(u.current=!0,console.warn("[ElevateAB] No storefrontAccessToken provided. A/B tests will work, but orders won't be attributed to test variants. Add storefrontAccessToken prop to enable order tracking."))},[t]),U.default.createElement(Te.Provider,{value:i},a)}var Fe=require("next/navigation");function Or({currency:e}){let t=(0,Fe.usePathname)(),o=(0,Fe.useSearchParams)();return(0,M.useEffect)(()=>{o.get("eabUserPreview")!=="true"&&fe({currency:e})},[t,o,e]),null}function tr({storeId:e,storefrontAccessToken:t,preventFlickering:o=!1,flickerTimeout:s=3e3,currency:a,children:p}){return(0,M.useEffect)(()=>{ee({storeId:e,storefrontAccessToken:t})},[e,t]),M.default.createElement(kt,{storeId:e,storefrontAccessToken:t,preventFlickering:o,flickerTimeout:s},M.default.createElement(M.Suspense,{fallback:null},M.default.createElement(Or,{currency:a})),p)}var rr=require("react");function or({productId:e,productVendor:t,productPrice:o,productSku:s,currency:a}){return(0,rr.useEffect)(()=>{e&&me({productId:e,productVendor:t,productPrice:o,productSku:s,currency:a})},[e,t,o,s,a]),null}Ae();V();Ve();V();function nr(e){let t=L("ABAU")||{};t[e]||(t[e]=!0,N("ABAU",JSON.stringify(t)))}function ir(e){let t=tt("ABAV")||{};t[e]||(t[e]=!0,X("ABAV",t))}function _t(e){nr(e),ir(e)}De();it();var re=Q(require("react"),1);V();Ve();function xt(e){let{config:t}=de(),[o,s]=re.default.useState(null),[a,p]=re.default.useState(!0),d=re.default.useMemo(()=>t&&t.tests.find(l=>l.testId===e)||null,[t,e]),f=re.default.useRef(null);return re.default.useEffect(()=>{if(t===null)return;if(!d){f.current!==e&&(f.current=e,console.warn(`[ElevateAB] Test not found: ${e}`)),p(!1);return}if(!d.enabled){f.current!==`${e}-disabled`&&(f.current=`${e}-disabled`,console.warn(`[ElevateAB] Test disabled: ${e}`)),p(!1);return}if(!nt(d)){p(!1);return}let l=Z(),w=ot(e,d,l);w&&(s(w),_t(e)),p(!1)},[t,d,e]),{variant:o,isLoading:a,isControl:o?.isControl??!1,isA:o?.isA??!1,isB:o?.isB??!1,isC:o?.isC??!1,isD:o?.isD??!1}}var ar=Q(require("react"),1);function Pt({timeout:e=3e3}){return ar.default.createElement("script",{dangerouslySetInnerHTML:{__html:ge(e)}})}var Tt=require("react");V();V();De();0&&(module.exports={AntiFlickerScript,ElevateNextProvider,ProductViewTracker,clearPreviewMode,extractShopifyId,extractShopifyType,getCountryCode,getFlickerPreventionScript,getPreviewState,isInPreviewMode,isShopifyGid,matchesGeoTargeting,trackAddToCart,trackCartView,trackCheckoutCompleted,trackCheckoutStarted,trackPageView,trackProductView,trackRemoveFromCart,trackSearchSubmitted,useElevateConfig,useExperiment});
|
|
42
42
|
//# sourceMappingURL=next.cjs.map
|