@letscooee/web-sdk 9.13.0 → 9.13.2
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/dist/main.min.js +3 -3
- package/dist/widget.min.js +2 -2
- package/package.json +1 -1
package/dist/main.min.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(()=>{var Jd=Object.create;var kc=Object.defineProperty;var Xd=Object.getOwnPropertyDescriptor;var Qd=Object.getOwnPropertyNames;var Zd=Object.getPrototypeOf,tf=Object.prototype.hasOwnProperty;var ef=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Qd(e))!tf.call(t,i)&&i!==r&&kc(t,i,{get:()=>e[i],enumerable:!(n=Xd(e,i))||n.enumerable});return t};var rf=(t,e,r)=>(r=t!=null?Jd(Zd(t)):{},ef(e||!t||!t.__esModule?kc(r,"default",{value:t,enumerable:!0}):r,t));var nf=Object.create,ca=Object.defineProperty,sf=Object.defineProperties,of=Object.getOwnPropertyDescriptor,af=Object.getOwnPropertyDescriptors,cf=Object.getOwnPropertyNames,Ri=Object.getOwnPropertySymbols,lf=Object.getPrototypeOf,la=Object.prototype.hasOwnProperty,Pu=Object.prototype.propertyIsEnumerable,Pc=(t,e,r)=>e in t?ca(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,x=(t,e)=>{for(var r in e||={})la.call(e,r)&&Pc(t,r,e[r]);if(Ri)for(var r of Ri(e))Pu.call(e,r)&&Pc(t,r,e[r]);return t},lt=(t,e)=>sf(t,af(e)),hi=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')}),uf=(t,e)=>{var r={};for(var n in t)la.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&Ri)for(var n of Ri(t))e.indexOf(n)<0&&Pu.call(t,n)&&(r[n]=t[n]);return r},rs=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),hf=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of cf(e))!la.call(t,i)&&i!==r&&ca(t,i,{get:()=>e[i],enumerable:!(n=of(e,i))||n.enumerable});return t},ke=(t,e,r)=>(r=t!=null?nf(lf(t)):{},hf(e||!t||!t.__esModule?ca(r,"default",{value:t,enumerable:!0}):r,t)),rn=rs((t,e)=>{"use strict";(function(r){"use strict";var n={};n.VERSION="1.6.1";var i,s={},o=function(h,w){return function(){return w.apply(h,arguments)}},c=function(){var h=arguments,w=h[0],y,b;for(b=1;b<h.length;b++)for(y in h[b])!(y in w)&&h[b].hasOwnProperty(y)&&(w[y]=h[b][y]);return w},l=function(h,w){return{value:h,name:w}};n.TRACE=l(1,"TRACE"),n.DEBUG=l(2,"DEBUG"),n.INFO=l(3,"INFO"),n.TIME=l(4,"TIME"),n.WARN=l(5,"WARN"),n.ERROR=l(8,"ERROR"),n.OFF=l(99,"OFF");var p=function(h){this.context=h,this.setLevel(h.filterLevel),this.log=this.info};p.prototype={setLevel:function(h){h&&"value"in h&&(this.context.filterLevel=h)},getLevel:function(){return this.context.filterLevel},enabledFor:function(h){var w=this.context.filterLevel;return h.value>=w.value},trace:function(){this.invoke(n.TRACE,arguments)},debug:function(){this.invoke(n.DEBUG,arguments)},info:function(){this.invoke(n.INFO,arguments)},warn:function(){this.invoke(n.WARN,arguments)},error:function(){this.invoke(n.ERROR,arguments)},time:function(h){typeof h=="string"&&h.length>0&&this.invoke(n.TIME,[h,"start"])},timeEnd:function(h){typeof h=="string"&&h.length>0&&this.invoke(n.TIME,[h,"end"])},invoke:function(h,w){i&&this.enabledFor(h)&&i(w,c({level:h},this.context))}};var g=new p({filterLevel:n.OFF});(function(){var h=n;h.enabledFor=o(g,g.enabledFor),h.trace=o(g,g.trace),h.debug=o(g,g.debug),h.time=o(g,g.time),h.timeEnd=o(g,g.timeEnd),h.info=o(g,g.info),h.warn=o(g,g.warn),h.error=o(g,g.error),h.log=h.info})(),n.setHandler=function(h){i=h},n.setLevel=function(h){g.setLevel(h);for(var w in s)s.hasOwnProperty(w)&&s[w].setLevel(h)},n.getLevel=function(){return g.getLevel()},n.get=function(h){return s[h]||(s[h]=new p(c({name:h},g.context)))},n.createDefaultHandler=function(h){h=h||{},h.formatter=h.formatter||function(b,_){_.name&&b.unshift("["+_.name+"]")};var w={},y=function(b,_){Function.prototype.apply.call(b,console,_)};return typeof console>"u"?function(){}:function(b,_){b=Array.prototype.slice.call(b);var k=console.log,A;_.level===n.TIME?(A=(_.name?"["+_.name+"] ":"")+b[0],b[1]==="start"?console.time?console.time(A):w[A]=new Date().getTime():console.timeEnd?console.timeEnd(A):y(k,[A+": "+(new Date().getTime()-w[A])+"ms"])):(_.level===n.WARN&&console.warn?k=console.warn:_.level===n.ERROR&&console.error?k=console.error:_.level===n.INFO&&console.info?k=console.info:_.level===n.DEBUG&&console.debug?k=console.debug:_.level===n.TRACE&&console.trace&&(k=console.trace),h.formatter(b,_),y(k,b))}},n.useDefaults=function(h){n.setLevel(h&&h.defaultLevel||n.DEBUG),n.setHandler(n.createDefaultHandler(h))},n.setDefaults=n.useDefaults,typeof define=="function"&&define.amd?define(n):typeof e<"u"&&e.exports?e.exports=n:(n._prevLogger=r.Logger,n.noConflict=function(){return r.Logger=n._prevLogger,n},r.Logger=n)})(t)}),pf=rs((t,e)=>{"use strict";(function(r){if(typeof t=="object"&&typeof e<"u")e.exports=r();else if(typeof define=="function"&&define.amd)define([],r);else{var n;typeof window<"u"?n=window:typeof global<"u"?n=global:typeof self<"u"?n=self:n=this,n.localforage=r()}})(function(){var r,n,i;return function s(o,c,l){function p(w,y){if(!c[w]){if(!o[w]){var b=typeof hi=="function"&&hi;if(!y&&b)return b(w,!0);if(g)return g(w,!0);var _=new Error("Cannot find module '"+w+"'");throw _.code="MODULE_NOT_FOUND",_}var k=c[w]={exports:{}};o[w][0].call(k.exports,function(A){var M=o[w][1][A];return p(M||A)},k,k.exports,s,o,c,l)}return c[w].exports}for(var g=typeof hi=="function"&&hi,h=0;h<l.length;h++)p(l[h]);return p}({1:[function(s,o,c){(function(l){"use strict";var p=l.MutationObserver||l.WebKitMutationObserver,g;if(p){var h=0,w=new p(A),y=l.document.createTextNode("");w.observe(y,{characterData:!0}),g=function(){y.data=h=++h%2}}else if(!l.setImmediate&&typeof l.MessageChannel<"u"){var b=new l.MessageChannel;b.port1.onmessage=A,g=function(){b.port2.postMessage(0)}}else"document"in l&&"onreadystatechange"in l.document.createElement("script")?g=function(){var G=l.document.createElement("script");G.onreadystatechange=function(){A(),G.onreadystatechange=null,G.parentNode.removeChild(G),G=null},l.document.documentElement.appendChild(G)}:g=function(){setTimeout(A,0)};var _,k=[];function A(){_=!0;for(var G,j,Z=k.length;Z;){for(j=k,k=[],G=-1;++G<Z;)j[G]();Z=k.length}_=!1}o.exports=M;function M(G){k.push(G)===1&&!_&&g()}}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{}],2:[function(s,o,c){"use strict";var l=s(1);function p(){}var g={},h=["REJECTED"],w=["FULFILLED"],y=["PENDING"];o.exports=b;function b(q){if(typeof q!="function")throw new TypeError("resolver must be a function");this.state=y,this.queue=[],this.outcome=void 0,q!==p&&M(this,q)}b.prototype.catch=function(q){return this.then(null,q)},b.prototype.then=function(q,it){if(typeof q!="function"&&this.state===w||typeof it!="function"&&this.state===h)return this;var tt=new this.constructor(p);if(this.state!==y){var rt=this.state===w?q:it;k(tt,rt,this.outcome)}else this.queue.push(new _(tt,q,it));return tt};function _(q,it,tt){this.promise=q,typeof it=="function"&&(this.onFulfilled=it,this.callFulfilled=this.otherCallFulfilled),typeof tt=="function"&&(this.onRejected=tt,this.callRejected=this.otherCallRejected)}_.prototype.callFulfilled=function(q){g.resolve(this.promise,q)},_.prototype.otherCallFulfilled=function(q){k(this.promise,this.onFulfilled,q)},_.prototype.callRejected=function(q){g.reject(this.promise,q)},_.prototype.otherCallRejected=function(q){k(this.promise,this.onRejected,q)};function k(q,it,tt){l(function(){var rt;try{rt=it(tt)}catch(pt){return g.reject(q,pt)}rt===q?g.reject(q,new TypeError("Cannot resolve promise with itself")):g.resolve(q,rt)})}g.resolve=function(q,it){var tt=G(A,it);if(tt.status==="error")return g.reject(q,tt.value);var rt=tt.value;if(rt)M(q,rt);else{q.state=w,q.outcome=it;for(var pt=-1,Pt=q.queue.length;++pt<Pt;)q.queue[pt].callFulfilled(it)}return q},g.reject=function(q,it){q.state=h,q.outcome=it;for(var tt=-1,rt=q.queue.length;++tt<rt;)q.queue[tt].callRejected(it);return q};function A(q){var it=q&&q.then;if(q&&(typeof q=="object"||typeof q=="function")&&typeof it=="function")return function(){it.apply(q,arguments)}}function M(q,it){var tt=!1;function rt($t){tt||(tt=!0,g.reject(q,$t))}function pt($t){tt||(tt=!0,g.resolve(q,$t))}function Pt(){it(pt,rt)}var Ot=G(Pt);Ot.status==="error"&&rt(Ot.value)}function G(q,it){var tt={};try{tt.value=q(it),tt.status="success"}catch(rt){tt.status="error",tt.value=rt}return tt}b.resolve=j;function j(q){return q instanceof this?q:g.resolve(new this(p),q)}b.reject=Z;function Z(q){var it=new this(p);return g.reject(it,q)}b.all=Et;function Et(q){var it=this;if(Object.prototype.toString.call(q)!=="[object Array]")return this.reject(new TypeError("must be an array"));var tt=q.length,rt=!1;if(!tt)return this.resolve([]);for(var pt=new Array(tt),Pt=0,Ot=-1,$t=new this(p);++Ot<tt;)Wt(q[Ot],Ot);return $t;function Wt(mt,Gt){it.resolve(mt).then(at,function(nt){rt||(rt=!0,g.reject($t,nt))});function at(nt){pt[Gt]=nt,++Pt===tt&&!rt&&(rt=!0,g.resolve($t,pt))}}}b.race=At;function At(q){var it=this;if(Object.prototype.toString.call(q)!=="[object Array]")return this.reject(new TypeError("must be an array"));var tt=q.length,rt=!1;if(!tt)return this.resolve([]);for(var pt=-1,Pt=new this(p);++pt<tt;)Ot(q[pt]);return Pt;function Ot($t){it.resolve($t).then(function(Wt){rt||(rt=!0,g.resolve(Pt,Wt))},function(Wt){rt||(rt=!0,g.reject(Pt,Wt))})}}},{1:1}],3:[function(s,o,c){(function(l){"use strict";typeof l.Promise!="function"&&(l.Promise=s(2))}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{2:2}],4:[function(s,o,c){"use strict";var l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(f){return typeof f}:function(f){return f&&typeof Symbol=="function"&&f.constructor===Symbol&&f!==Symbol.prototype?"symbol":typeof f};function p(f,m){if(!(f instanceof m))throw new TypeError("Cannot call a class as a function")}function g(){try{if(typeof indexedDB<"u")return indexedDB;if(typeof webkitIndexedDB<"u")return webkitIndexedDB;if(typeof mozIndexedDB<"u")return mozIndexedDB;if(typeof OIndexedDB<"u")return OIndexedDB;if(typeof msIndexedDB<"u")return msIndexedDB}catch{return}}var h=g();function w(){try{if(!h||!h.open)return!1;var f=typeof openDatabase<"u"&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),m=typeof fetch=="function"&&fetch.toString().indexOf("[native code")!==-1;return(!f||m)&&typeof indexedDB<"u"&&typeof IDBKeyRange<"u"}catch{return!1}}function y(f,m){f=f||[],m=m||{};try{return new Blob(f,m)}catch(C){if(C.name!=="TypeError")throw C;for(var v=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,I=new v,S=0;S<f.length;S+=1)I.append(f[S]);return I.getBlob(m.type)}}typeof Promise>"u"&&s(3);var b=Promise;function _(f,m){m&&f.then(function(v){m(null,v)},function(v){m(v)})}function k(f,m,v){typeof m=="function"&&f.then(m),typeof v=="function"&&f.catch(v)}function A(f){return typeof f!="string"&&(console.warn(f+" used as a key, but it is not a string."),f=String(f)),f}function M(){if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}var G="local-forage-detect-blob-support",j=void 0,Z={},Et=Object.prototype.toString,At="readonly",q="readwrite";function it(f){for(var m=f.length,v=new ArrayBuffer(m),I=new Uint8Array(v),S=0;S<m;S++)I[S]=f.charCodeAt(S);return v}function tt(f){return new b(function(m){var v=f.transaction(G,q),I=y([""]);v.objectStore(G).put(I,"key"),v.onabort=function(S){S.preventDefault(),S.stopPropagation(),m(!1)},v.oncomplete=function(){var S=navigator.userAgent.match(/Chrome\/(\d+)/),C=navigator.userAgent.match(/Edge\//);m(C||!S||parseInt(S[1],10)>=43)}}).catch(function(){return!1})}function rt(f){return typeof j=="boolean"?b.resolve(j):tt(f).then(function(m){return j=m,j})}function pt(f){var m=Z[f.name],v={};v.promise=new b(function(I,S){v.resolve=I,v.reject=S}),m.deferredOperations.push(v),m.dbReady?m.dbReady=m.dbReady.then(function(){return v.promise}):m.dbReady=v.promise}function Pt(f){var m=Z[f.name],v=m.deferredOperations.pop();if(v)return v.resolve(),v.promise}function Ot(f,m){var v=Z[f.name],I=v.deferredOperations.pop();if(I)return I.reject(m),I.promise}function $t(f,m){return new b(function(v,I){if(Z[f.name]=Z[f.name]||ci(),f.db)if(m)pt(f),f.db.close();else return v(f.db);var S=[f.name];m&&S.push(f.version);var C=h.open.apply(h,S);m&&(C.onupgradeneeded=function(N){var $=C.result;try{$.createObjectStore(f.storeName),N.oldVersion<=1&&$.createObjectStore(G)}catch(W){if(W.name==="ConstraintError")console.warn('The database "'+f.name+'" has been upgraded from version '+N.oldVersion+" to version "+N.newVersion+', but the storage "'+f.storeName+'" already exists.');else throw W}}),C.onerror=function(N){N.preventDefault(),I(C.error)},C.onsuccess=function(){var N=C.result;N.onversionchange=function($){$.target.close()},v(N),Pt(f)}})}function Wt(f){return $t(f,!1)}function mt(f){return $t(f,!0)}function Gt(f,m){if(!f.db)return!0;var v=!f.db.objectStoreNames.contains(f.storeName),I=f.version<f.db.version,S=f.version>f.db.version;if(I&&(f.version!==m&&console.warn('The database "'+f.name+`" can't be downgraded from version `+f.db.version+" to version "+f.version+"."),f.version=f.db.version),S||v){if(v){var C=f.db.version+1;C>f.version&&(f.version=C)}return!0}return!1}function at(f){return new b(function(m,v){var I=new FileReader;I.onerror=v,I.onloadend=function(S){var C=btoa(S.target.result||"");m({__local_forage_encoded_blob:!0,data:C,type:f.type})},I.readAsBinaryString(f)})}function nt(f){var m=it(atob(f.data));return y([m],{type:f.type})}function Ft(f){return f&&f.__local_forage_encoded_blob}function oi(f){var m=this,v=m._initReady().then(function(){var I=Z[m._dbInfo.name];if(I&&I.dbReady)return I.dbReady});return k(v,f,f),v}function ai(f){pt(f);for(var m=Z[f.name],v=m.forages,I=0;I<v.length;I++){var S=v[I];S._dbInfo.db&&(S._dbInfo.db.close(),S._dbInfo.db=null)}return f.db=null,Wt(f).then(function(C){return f.db=C,Gt(f)?mt(f):C}).then(function(C){f.db=m.db=C;for(var N=0;N<v.length;N++)v[N]._dbInfo.db=C}).catch(function(C){throw Ot(f,C),C})}function ae(f,m,v,I){I===void 0&&(I=1);try{var S=f.db.transaction(f.storeName,m);v(null,S)}catch(C){if(I>0&&(!f.db||C.name==="InvalidStateError"||C.name==="NotFoundError"))return b.resolve().then(function(){if(!f.db||C.name==="NotFoundError"&&!f.db.objectStoreNames.contains(f.storeName)&&f.version<=f.db.version)return f.db&&(f.version=f.db.version+1),mt(f)}).then(function(){return ai(f).then(function(){ae(f,m,v,I-1)})}).catch(v);v(C)}}function ci(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function Ts(f){var m=this,v={db:null};if(f)for(var I in f)v[I]=f[I];var S=Z[v.name];S||(S=ci(),Z[v.name]=S),S.forages.push(m),m._initReady||(m._initReady=m.ready,m.ready=oi);var C=[];function N(){return b.resolve()}for(var $=0;$<S.forages.length;$++){var W=S.forages[$];W!==m&&C.push(W._initReady().catch(N))}var V=S.forages.slice(0);return b.all(C).then(function(){return v.db=S.db,Wt(v)}).then(function(F){return v.db=F,Gt(v,m._defaultConfig.version)?mt(v):F}).then(function(F){v.db=S.db=F,m._dbInfo=v;for(var J=0;J<V.length;J++){var ot=V[J];ot!==m&&(ot._dbInfo.db=v.db,ot._dbInfo.version=v.version)}})}function hn(f,m){var v=this;f=A(f);var I=new b(function(S,C){v.ready().then(function(){ae(v._dbInfo,At,function(N,$){if(N)return C(N);try{var W=$.objectStore(v._dbInfo.storeName),V=W.get(f);V.onsuccess=function(){var F=V.result;F===void 0&&(F=null),Ft(F)&&(F=nt(F)),S(F)},V.onerror=function(){C(V.error)}}catch(F){C(F)}})}).catch(C)});return _(I,m),I}function xs(f,m){var v=this,I=new b(function(S,C){v.ready().then(function(){ae(v._dbInfo,At,function(N,$){if(N)return C(N);try{var W=$.objectStore(v._dbInfo.storeName),V=W.openCursor(),F=1;V.onsuccess=function(){var J=V.result;if(J){var ot=J.value;Ft(ot)&&(ot=nt(ot));var bt=f(ot,J.key,F++);bt!==void 0?S(bt):J.continue()}else S()},V.onerror=function(){C(V.error)}}catch(J){C(J)}})}).catch(C)});return _(I,m),I}function Ds(f,m,v){var I=this;f=A(f);var S=new b(function(C,N){var $;I.ready().then(function(){return $=I._dbInfo,Et.call(m)==="[object Blob]"?rt($.db).then(function(W){return W?m:at(m)}):m}).then(function(W){ae(I._dbInfo,q,function(V,F){if(V)return N(V);try{var J=F.objectStore(I._dbInfo.storeName);W===null&&(W=void 0);var ot=J.put(W,f);F.oncomplete=function(){W===void 0&&(W=null),C(W)},F.onabort=F.onerror=function(){var bt=ot.error?ot.error:ot.transaction.error;N(bt)}}catch(bt){N(bt)}})}).catch(N)});return _(S,v),S}function li(f,m){var v=this;f=A(f);var I=new b(function(S,C){v.ready().then(function(){ae(v._dbInfo,q,function(N,$){if(N)return C(N);try{var W=$.objectStore(v._dbInfo.storeName),V=W.delete(f);$.oncomplete=function(){S()},$.onerror=function(){C(V.error)},$.onabort=function(){var F=V.error?V.error:V.transaction.error;C(F)}}catch(F){C(F)}})}).catch(C)});return _(I,m),I}function Rr(f){var m=this,v=new b(function(I,S){m.ready().then(function(){ae(m._dbInfo,q,function(C,N){if(C)return S(C);try{var $=N.objectStore(m._dbInfo.storeName),W=$.clear();N.oncomplete=function(){I()},N.onabort=N.onerror=function(){var V=W.error?W.error:W.transaction.error;S(V)}}catch(V){S(V)}})}).catch(S)});return _(v,f),v}function ce(f){var m=this,v=new b(function(I,S){m.ready().then(function(){ae(m._dbInfo,At,function(C,N){if(C)return S(C);try{var $=N.objectStore(m._dbInfo.storeName),W=$.count();W.onsuccess=function(){I(W.result)},W.onerror=function(){S(W.error)}}catch(V){S(V)}})}).catch(S)});return _(v,f),v}function pn(f,m){var v=this,I=new b(function(S,C){if(f<0){S(null);return}v.ready().then(function(){ae(v._dbInfo,At,function(N,$){if(N)return C(N);try{var W=$.objectStore(v._dbInfo.storeName),V=!1,F=W.openKeyCursor();F.onsuccess=function(){var J=F.result;if(!J){S(null);return}f===0||V?S(J.key):(V=!0,J.advance(f))},F.onerror=function(){C(F.error)}}catch(J){C(J)}})}).catch(C)});return _(I,m),I}function As(f){var m=this,v=new b(function(I,S){m.ready().then(function(){ae(m._dbInfo,At,function(C,N){if(C)return S(C);try{var $=N.objectStore(m._dbInfo.storeName),W=$.openKeyCursor(),V=[];W.onsuccess=function(){var F=W.result;if(!F){I(V);return}V.push(F.key),F.continue()},W.onerror=function(){S(W.error)}}catch(F){S(F)}})}).catch(S)});return _(v,f),v}function a(f,m){m=M.apply(this,arguments);var v=this.config();f=typeof f!="function"&&f||{},f.name||(f.name=f.name||v.name,f.storeName=f.storeName||v.storeName);var I=this,S;if(!f.name)S=b.reject("Invalid arguments");else{var C=f.name===v.name&&I._dbInfo.db,N=C?b.resolve(I._dbInfo.db):Wt(f).then(function($){var W=Z[f.name],V=W.forages;W.db=$;for(var F=0;F<V.length;F++)V[F]._dbInfo.db=$;return $});f.storeName?S=N.then(function($){if($.objectStoreNames.contains(f.storeName)){var W=$.version+1;pt(f);var V=Z[f.name],F=V.forages;$.close();for(var J=0;J<F.length;J++){var ot=F[J];ot._dbInfo.db=null,ot._dbInfo.version=W}var bt=new b(function(ft,Rt){var Ct=h.open(f.name,W);Ct.onerror=function(le){var Rs=Ct.result;Rs.close(),Rt(le)},Ct.onupgradeneeded=function(){var le=Ct.result;le.deleteObjectStore(f.storeName)},Ct.onsuccess=function(){var le=Ct.result;le.close(),ft(le)}});return bt.then(function(ft){V.db=ft;for(var Rt=0;Rt<F.length;Rt++){var Ct=F[Rt];Ct._dbInfo.db=ft,Pt(Ct._dbInfo)}}).catch(function(ft){throw(Ot(f,ft)||b.resolve()).catch(function(){}),ft})}}):S=N.then(function($){pt(f);var W=Z[f.name],V=W.forages;$.close();for(var F=0;F<V.length;F++){var J=V[F];J._dbInfo.db=null}var ot=new b(function(bt,ft){var Rt=h.deleteDatabase(f.name);Rt.onerror=function(){var Ct=Rt.result;Ct&&Ct.close(),ft(Rt.error)},Rt.onblocked=function(){console.warn('dropInstance blocked for database "'+f.name+'" until all open connections are closed')},Rt.onsuccess=function(){var Ct=Rt.result;Ct&&Ct.close(),bt(Ct)}});return ot.then(function(bt){W.db=bt;for(var ft=0;ft<V.length;ft++){var Rt=V[ft];Pt(Rt._dbInfo)}}).catch(function(bt){throw(Ot(f,bt)||b.resolve()).catch(function(){}),bt})})}return _(S,m),S}var u={_driver:"asyncStorage",_initStorage:Ts,_support:w(),iterate:xs,getItem:hn,setItem:Ds,removeItem:li,clear:Rr,length:ce,key:pn,keys:As,dropInstance:a};function d(){return typeof openDatabase=="function"}var E="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",D="~~local_forage_type~",U=/^~~local_forage_type~([^~]+)~/,K="__lfsc__:",dt=K.length,Nt="arbf",vt="blob",It="si08",Bt="ui08",lr="uic8",dn="si16",fn="si32",bc="ur16",wc="ui32",_c="fl32",Ec="fl64",Sc=dt+Nt.length,Ic=Object.prototype.toString;function Cc(f){var m=f.length*.75,v=f.length,I,S=0,C,N,$,W;f[f.length-1]==="="&&(m--,f[f.length-2]==="="&&m--);var V=new ArrayBuffer(m),F=new Uint8Array(V);for(I=0;I<v;I+=4)C=E.indexOf(f[I]),N=E.indexOf(f[I+1]),$=E.indexOf(f[I+2]),W=E.indexOf(f[I+3]),F[S++]=C<<2|N>>4,F[S++]=(N&15)<<4|$>>2,F[S++]=($&3)<<6|W&63;return V}function Os(f){var m=new Uint8Array(f),v="",I;for(I=0;I<m.length;I+=3)v+=E[m[I]>>2],v+=E[(m[I]&3)<<4|m[I+1]>>4],v+=E[(m[I+1]&15)<<2|m[I+2]>>6],v+=E[m[I+2]&63];return m.length%3===2?v=v.substring(0,v.length-1)+"=":m.length%3===1&&(v=v.substring(0,v.length-2)+"=="),v}function dd(f,m){var v="";if(f&&(v=Ic.call(f)),f&&(v==="[object ArrayBuffer]"||f.buffer&&Ic.call(f.buffer)==="[object ArrayBuffer]")){var I,S=K;f instanceof ArrayBuffer?(I=f,S+=Nt):(I=f.buffer,v==="[object Int8Array]"?S+=It:v==="[object Uint8Array]"?S+=Bt:v==="[object Uint8ClampedArray]"?S+=lr:v==="[object Int16Array]"?S+=dn:v==="[object Uint16Array]"?S+=bc:v==="[object Int32Array]"?S+=fn:v==="[object Uint32Array]"?S+=wc:v==="[object Float32Array]"?S+=_c:v==="[object Float64Array]"?S+=Ec:m(new Error("Failed to get type for BinaryArray"))),m(S+Os(I))}else if(v==="[object Blob]"){var C=new FileReader;C.onload=function(){var N=D+f.type+"~"+Os(this.result);m(K+vt+N)},C.readAsArrayBuffer(f)}else try{m(JSON.stringify(f))}catch(N){console.error("Couldn't convert value into a JSON string: ",f),m(null,N)}}function fd(f){if(f.substring(0,dt)!==K)return JSON.parse(f);var m=f.substring(Sc),v=f.substring(dt,Sc),I;if(v===vt&&U.test(m)){var S=m.match(U);I=S[1],m=m.substring(S[0].length)}var C=Cc(m);switch(v){case Nt:return C;case vt:return y([C],{type:I});case It:return new Int8Array(C);case Bt:return new Uint8Array(C);case lr:return new Uint8ClampedArray(C);case dn:return new Int16Array(C);case bc:return new Uint16Array(C);case fn:return new Int32Array(C);case wc:return new Uint32Array(C);case _c:return new Float32Array(C);case Ec:return new Float64Array(C);default:throw new Error("Unkown type: "+v)}}var Ns={serialize:dd,deserialize:fd,stringToBuffer:Cc,bufferToString:Os};function Tc(f,m,v,I){f.executeSql("CREATE TABLE IF NOT EXISTS "+m.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],v,I)}function gd(f){var m=this,v={db:null};if(f)for(var I in f)v[I]=typeof f[I]!="string"?f[I].toString():f[I];var S=new b(function(C,N){try{v.db=openDatabase(v.name,String(v.version),v.description,v.size)}catch($){return N($)}v.db.transaction(function($){Tc($,v,function(){m._dbInfo=v,C()},function(W,V){N(V)})},N)});return v.serializer=Ns,S}function Xe(f,m,v,I,S,C){f.executeSql(v,I,S,function(N,$){$.code===$.SYNTAX_ERR?N.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[m.storeName],function(W,V){V.rows.length?C(W,$):Tc(W,m,function(){W.executeSql(v,I,S,C)},C)},C):C(N,$)},C)}function md(f,m){var v=this;f=A(f);var I=new b(function(S,C){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function($){Xe($,N,"SELECT * FROM "+N.storeName+" WHERE key = ? LIMIT 1",[f],function(W,V){var F=V.rows.length?V.rows.item(0).value:null;F&&(F=N.serializer.deserialize(F)),S(F)},function(W,V){C(V)})})}).catch(C)});return _(I,m),I}function vd(f,m){var v=this,I=new b(function(S,C){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function($){Xe($,N,"SELECT * FROM "+N.storeName,[],function(W,V){for(var F=V.rows,J=F.length,ot=0;ot<J;ot++){var bt=F.item(ot),ft=bt.value;if(ft&&(ft=N.serializer.deserialize(ft)),ft=f(ft,bt.key,ot+1),ft!==void 0){S(ft);return}}S()},function(W,V){C(V)})})}).catch(C)});return _(I,m),I}function xc(f,m,v,I){var S=this;f=A(f);var C=new b(function(N,$){S.ready().then(function(){m===void 0&&(m=null);var W=m,V=S._dbInfo;V.serializer.serialize(m,function(F,J){J?$(J):V.db.transaction(function(ot){Xe(ot,V,"INSERT OR REPLACE INTO "+V.storeName+" (key, value) VALUES (?, ?)",[f,F],function(){N(W)},function(bt,ft){$(ft)})},function(ot){if(ot.code===ot.QUOTA_ERR){if(I>0){N(xc.apply(S,[f,W,v,I-1]));return}$(ot)}})})}).catch($)});return _(C,v),C}function yd(f,m,v){return xc.apply(this,[f,m,v,1])}function bd(f,m){var v=this;f=A(f);var I=new b(function(S,C){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function($){Xe($,N,"DELETE FROM "+N.storeName+" WHERE key = ?",[f],function(){S()},function(W,V){C(V)})})}).catch(C)});return _(I,m),I}function wd(f){var m=this,v=new b(function(I,S){m.ready().then(function(){var C=m._dbInfo;C.db.transaction(function(N){Xe(N,C,"DELETE FROM "+C.storeName,[],function(){I()},function($,W){S(W)})})}).catch(S)});return _(v,f),v}function _d(f){var m=this,v=new b(function(I,S){m.ready().then(function(){var C=m._dbInfo;C.db.transaction(function(N){Xe(N,C,"SELECT COUNT(key) as c FROM "+C.storeName,[],function($,W){var V=W.rows.item(0).c;I(V)},function($,W){S(W)})})}).catch(S)});return _(v,f),v}function Ed(f,m){var v=this,I=new b(function(S,C){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function($){Xe($,N,"SELECT key FROM "+N.storeName+" WHERE id = ? LIMIT 1",[f+1],function(W,V){var F=V.rows.length?V.rows.item(0).key:null;S(F)},function(W,V){C(V)})})}).catch(C)});return _(I,m),I}function Sd(f){var m=this,v=new b(function(I,S){m.ready().then(function(){var C=m._dbInfo;C.db.transaction(function(N){Xe(N,C,"SELECT key FROM "+C.storeName,[],function($,W){for(var V=[],F=0;F<W.rows.length;F++)V.push(W.rows.item(F).key);I(V)},function($,W){S(W)})})}).catch(S)});return _(v,f),v}function Id(f){return new b(function(m,v){f.transaction(function(I){I.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(S,C){for(var N=[],$=0;$<C.rows.length;$++)N.push(C.rows.item($).name);m({db:f,storeNames:N})},function(S,C){v(C)})},function(I){v(I)})})}function Cd(f,m){m=M.apply(this,arguments);var v=this.config();f=typeof f!="function"&&f||{},f.name||(f.name=f.name||v.name,f.storeName=f.storeName||v.storeName);var I=this,S;return f.name?S=new b(function(C){var N;f.name===v.name?N=I._dbInfo.db:N=openDatabase(f.name,"","",0),f.storeName?C({db:N,storeNames:[f.storeName]}):C(Id(N))}).then(function(C){return new b(function(N,$){C.db.transaction(function(W){function V(bt){return new b(function(ft,Rt){W.executeSql("DROP TABLE IF EXISTS "+bt,[],function(){ft()},function(Ct,le){Rt(le)})})}for(var F=[],J=0,ot=C.storeNames.length;J<ot;J++)F.push(V(C.storeNames[J]));b.all(F).then(function(){N()}).catch(function(bt){$(bt)})},function(W){$(W)})})}):S=b.reject("Invalid arguments"),_(S,m),S}var Td={_driver:"webSQLStorage",_initStorage:gd,_support:d(),iterate:vd,getItem:md,setItem:yd,removeItem:bd,clear:wd,length:_d,key:Ed,keys:Sd,dropInstance:Cd};function xd(){try{return typeof localStorage<"u"&&"setItem"in localStorage&&!!localStorage.setItem}catch{return!1}}function Dc(f,m){var v=f.name+"/";return f.storeName!==m.storeName&&(v+=f.storeName+"/"),v}function Dd(){var f="_localforage_support_test";try{return localStorage.setItem(f,!0),localStorage.removeItem(f),!1}catch{return!0}}function Ad(){return!Dd()||localStorage.length>0}function Od(f){var m=this,v={};if(f)for(var I in f)v[I]=f[I];return v.keyPrefix=Dc(f,m._defaultConfig),Ad()?(m._dbInfo=v,v.serializer=Ns,b.resolve()):b.reject()}function Nd(f){var m=this,v=m.ready().then(function(){for(var I=m._dbInfo.keyPrefix,S=localStorage.length-1;S>=0;S--){var C=localStorage.key(S);C.indexOf(I)===0&&localStorage.removeItem(C)}});return _(v,f),v}function kd(f,m){var v=this;f=A(f);var I=v.ready().then(function(){var S=v._dbInfo,C=localStorage.getItem(S.keyPrefix+f);return C&&(C=S.serializer.deserialize(C)),C});return _(I,m),I}function Pd(f,m){var v=this,I=v.ready().then(function(){for(var S=v._dbInfo,C=S.keyPrefix,N=C.length,$=localStorage.length,W=1,V=0;V<$;V++){var F=localStorage.key(V);if(F.indexOf(C)===0){var J=localStorage.getItem(F);if(J&&(J=S.serializer.deserialize(J)),J=f(J,F.substring(N),W++),J!==void 0)return J}}});return _(I,m),I}function Rd(f,m){var v=this,I=v.ready().then(function(){var S=v._dbInfo,C;try{C=localStorage.key(f)}catch{C=null}return C&&(C=C.substring(S.keyPrefix.length)),C});return _(I,m),I}function Ld(f){var m=this,v=m.ready().then(function(){for(var I=m._dbInfo,S=localStorage.length,C=[],N=0;N<S;N++){var $=localStorage.key(N);$.indexOf(I.keyPrefix)===0&&C.push($.substring(I.keyPrefix.length))}return C});return _(v,f),v}function Md(f){var m=this,v=m.keys().then(function(I){return I.length});return _(v,f),v}function Ud(f,m){var v=this;f=A(f);var I=v.ready().then(function(){var S=v._dbInfo;localStorage.removeItem(S.keyPrefix+f)});return _(I,m),I}function Bd(f,m,v){var I=this;f=A(f);var S=I.ready().then(function(){m===void 0&&(m=null);var C=m;return new b(function(N,$){var W=I._dbInfo;W.serializer.serialize(m,function(V,F){if(F)$(F);else try{localStorage.setItem(W.keyPrefix+f,V),N(C)}catch(J){(J.name==="QuotaExceededError"||J.name==="NS_ERROR_DOM_QUOTA_REACHED")&&$(J),$(J)}})})});return _(S,v),S}function jd(f,m){if(m=M.apply(this,arguments),f=typeof f!="function"&&f||{},!f.name){var v=this.config();f.name=f.name||v.name,f.storeName=f.storeName||v.storeName}var I=this,S;return f.name?S=new b(function(C){f.storeName?C(Dc(f,I._defaultConfig)):C(f.name+"/")}).then(function(C){for(var N=localStorage.length-1;N>=0;N--){var $=localStorage.key(N);$.indexOf(C)===0&&localStorage.removeItem($)}}):S=b.reject("Invalid arguments"),_(S,m),S}var $d={_driver:"localStorageWrapper",_initStorage:Od,_support:xd(),iterate:Pd,getItem:kd,setItem:Bd,removeItem:Ud,clear:Nd,length:Md,key:Rd,keys:Ld,dropInstance:jd},Fd=function(f,m){return f===m||typeof f=="number"&&typeof m=="number"&&isNaN(f)&&isNaN(m)},Hd=function(f,m){for(var v=f.length,I=0;I<v;){if(Fd(f[I],m))return!0;I++}return!1},Ac=Array.isArray||function(f){return Object.prototype.toString.call(f)==="[object Array]"},gn={},Oc={},Lr={INDEXEDDB:u,WEBSQL:Td,LOCALSTORAGE:$d},Vd=[Lr.INDEXEDDB._driver,Lr.WEBSQL._driver,Lr.LOCALSTORAGE._driver],ui=["dropInstance"],ks=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(ui),qd={description:"",driver:Vd.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function Wd(f,m){f[m]=function(){var v=arguments;return f.ready().then(function(){return f[m].apply(f,v)})}}function Ps(){for(var f=1;f<arguments.length;f++){var m=arguments[f];if(m)for(var v in m)m.hasOwnProperty(v)&&(Ac(m[v])?arguments[0][v]=m[v].slice():arguments[0][v]=m[v])}return arguments[0]}var Gd=function(){function f(m){p(this,f);for(var v in Lr)if(Lr.hasOwnProperty(v)){var I=Lr[v],S=I._driver;this[v]=S,gn[S]||this.defineDriver(I)}this._defaultConfig=Ps({},qd),this._config=Ps({},this._defaultConfig,m),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}return f.prototype.config=function(m){if((typeof m>"u"?"undefined":l(m))==="object"){if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var v in m){if(v==="storeName"&&(m[v]=m[v].replace(/\W/g,"_")),v==="version"&&typeof m[v]!="number")return new Error("Database version must be a number.");this._config[v]=m[v]}return"driver"in m&&m.driver?this.setDriver(this._config.driver):!0}else return typeof m=="string"?this._config[m]:this._config},f.prototype.defineDriver=function(m,v,I){var S=new b(function(C,N){try{var $=m._driver,W=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!m._driver){N(W);return}for(var V=ks.concat("_initStorage"),F=0,J=V.length;F<J;F++){var ot=V[F],bt=!Hd(ui,ot);if((bt||m[ot])&&typeof m[ot]!="function"){N(W);return}}var ft=function(){for(var Ct=function(Kd){return function(){var Yd=new Error("Method "+Kd+" is not implemented by the current driver"),Nc=b.reject(Yd);return _(Nc,arguments[arguments.length-1]),Nc}},le=0,Rs=ui.length;le<Rs;le++){var Ls=ui[le];m[Ls]||(m[Ls]=Ct(Ls))}};ft();var Rt=function(Ct){gn[$]&&console.info("Redefining LocalForage driver: "+$),gn[$]=m,Oc[$]=Ct,C()};"_support"in m?m._support&&typeof m._support=="function"?m._support().then(Rt,N):Rt(!!m._support):Rt(!0)}catch(Ct){N(Ct)}});return k(S,v,I),S},f.prototype.driver=function(){return this._driver||null},f.prototype.getDriver=function(m,v,I){var S=gn[m]?b.resolve(gn[m]):b.reject(new Error("Driver not found."));return k(S,v,I),S},f.prototype.getSerializer=function(m){var v=b.resolve(Ns);return k(v,m),v},f.prototype.ready=function(m){var v=this,I=v._driverSet.then(function(){return v._ready===null&&(v._ready=v._initDriver()),v._ready});return k(I,m,m),I},f.prototype.setDriver=function(m,v,I){var S=this;Ac(m)||(m=[m]);var C=this._getSupportedDrivers(m);function N(){S._config.driver=S.driver()}function $(F){return S._extend(F),N(),S._ready=S._initStorage(S._config),S._ready}function W(F){return function(){var J=0;function ot(){for(;J<F.length;){var bt=F[J];return J++,S._dbInfo=null,S._ready=null,S.getDriver(bt).then($).catch(ot)}N();var ft=new Error("No available storage method found.");return S._driverSet=b.reject(ft),S._driverSet}return ot()}}var V=this._driverSet!==null?this._driverSet.catch(function(){return b.resolve()}):b.resolve();return this._driverSet=V.then(function(){var F=C[0];return S._dbInfo=null,S._ready=null,S.getDriver(F).then(function(J){S._driver=J._driver,N(),S._wrapLibraryMethodsWithReady(),S._initDriver=W(C)})}).catch(function(){N();var F=new Error("No available storage method found.");return S._driverSet=b.reject(F),S._driverSet}),k(this._driverSet,v,I),this._driverSet},f.prototype.supports=function(m){return!!Oc[m]},f.prototype._extend=function(m){Ps(this,m)},f.prototype._getSupportedDrivers=function(m){for(var v=[],I=0,S=m.length;I<S;I++){var C=m[I];this.supports(C)&&v.push(C)}return v},f.prototype._wrapLibraryMethodsWithReady=function(){for(var m=0,v=ks.length;m<v;m++)Wd(this,ks[m])},f.prototype.createInstance=function(m){return new f(m)},f}(),zd=new Gd;o.exports=zd},{3:3}]},{},[4])(4)})}),Ru=rs(t=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.URLBuilder=void 0;var e=function(){function r(n){try{this.base=new URL(n),this.params=new URLSearchParams(this.base.search.slice(1))}catch(i){console.error("Un-parsable URL",i)}}return r.prototype.appendQueryParam=function(n,i){this.params.append(n,i?i.toString():"")},r.prototype.clearQueryParams=function(){return this.params=new URLSearchParams,this},r.prototype.deleteQueryParam=function(n){this.params.delete(n)},r.prototype.getBase=function(){return this.base},r.prototype.getPath=function(){return this.base.pathname},r.prototype.getHostname=function(){return this.base.hostname},r.prototype.getParams=function(){return this.params},r.prototype.getQueryParam=function(n){if(!this.params)return"";var i=this.params.get(n);return!i||i==="undefined"||i==="null"?void 0:i},r.prototype.getQueryString=function(){return this.params.toString()},r.prototype.setPath=function(n){return this.base.pathname=n,this},r.prototype.setQueryParam=function(n,i){return this.params.set(n,i?i.toString():""),this},r.prototype.setQueryString=function(n){if(n)return n[0]==="?"&&(n=n.slice(1)),this.params=new URLSearchParams(n),this},r.prototype.toString=function(){var n=this.params.toString();return n===""?this.base.search="":this.base.search="?"+n,this.base.toString()},r}();t.URLBuilder=e}),df=rs((t,e)=>{"use strict";(function(r,n){typeof t=="object"&&typeof e<"u"?e.exports=n():typeof define=="function"&&define.amd?define(n):(r=typeof globalThis<"u"?globalThis:r||self,r.fetchRetry=n())})(t,function(){"use strict";var r=function(s,o){if(o=o||{},typeof s!="function")throw new i("fetch must be a function");if(typeof o!="object")throw new i("defaults must be an object");if(o.retries!==void 0&&!n(o.retries))throw new i("retries must be a positive integer");if(o.retryDelay!==void 0&&!n(o.retryDelay)&&typeof o.retryDelay!="function")throw new i("retryDelay must be a positive integer or a function returning a positive integer");if(o.retryOn!==void 0&&!Array.isArray(o.retryOn)&&typeof o.retryOn!="function")throw new i("retryOn property expects an array or function");var c={retries:3,retryDelay:1e3,retryOn:[]};return o=Object.assign(c,o),function(l,p){var g=o.retries,h=o.retryDelay,w=o.retryOn;if(p&&p.retries!==void 0)if(n(p.retries))g=p.retries;else throw new i("retries must be a positive integer");if(p&&p.retryDelay!==void 0)if(n(p.retryDelay)||typeof p.retryDelay=="function")h=p.retryDelay;else throw new i("retryDelay must be a positive integer or a function returning a positive integer");if(p&&p.retryOn)if(Array.isArray(p.retryOn)||typeof p.retryOn=="function")w=p.retryOn;else throw new i("retryOn property expects an array or function");return new Promise(function(y,b){var _=function(A){var M=typeof Request<"u"&&l instanceof Request?l.clone():l;s(M,p).then(function(G){if(Array.isArray(w)&&w.indexOf(G.status)===-1)y(G);else if(typeof w=="function")try{return Promise.resolve(w(A,null,G)).then(function(j){j?k(A,null,G):y(G)}).catch(b)}catch(j){b(j)}else A<g?k(A,null,G):y(G)}).catch(function(G){if(typeof w=="function")try{Promise.resolve(w(A,G,null)).then(function(j){j?k(A,G,null):b(G)}).catch(function(j){b(j)})}catch(j){b(j)}else A<g?k(A,G,null):b(G)})};function k(A,M,G){var j=typeof h=="function"?h(A,M,G):h;setTimeout(function(){_(++A)},j)}_(0)})}};function n(s){return Number.isInteger(s)&&s>=0}function i(s){this.name="ArgumentError",this.message=s}return r})}),ff="9.13.0",H=class bo{static SDK_VERSION=ff;static SDK_VERSION_CODE;static SDK="WEB";static LOG_PREFIX="CooeeSDK";static COOEE="cooee";static SESSION_STORAGE_SCROLL_ID="sleid";static IDLE_TIME_IN_SECONDS=30*60;static IN_APP_WRAPPER_NAME="cooee-wrapper";static IN_APP_CONTAINER_NAME="cooee-container";static IN_APP_DEFAULT_PADDING=15;static EVENT_SCREEN_VIEW="CE Screen View";static EVENT_APP_BACKGROUND="CE App Background";static EVENT_TRIGGER_DISPLAYED="CE Trigger Displayed";static EVENT_CAMPAIGN_HOLDOUT="CE Campaign Holdout";static EVENT_CAMPAIGN_REJECTED="CE Campaign Rejected";static EVENT_CAMPAIGN_FAILED="CE Campaign Failed";static EVENT_TRIGGER_CLOSED="CE Trigger Closed";static EVENT_SCROLL="CE Scroll";static EVENT_TRIGGER_CLICKED="CE Trigger Clicked";static EVENT_FORM_SUBMITTED="CE Form Submitted";static EVENT_EXPERIMENT_START="CE Experiment Start";static EVENT_VIDEO_DIALOG_CLOSED="CE Video Dialog Closed";static EVENT_VIDEO_DIALOG_OPENED="CE Video Dialog Opened";static EVENT_VIDEO_CHANGE="CE Video Changed";static EVENT_LAST_VIDEO_ENDED="CE Last Video Ended";static EVENT_VIDEO_MUTED="CE Video Muted";static EVENT_VIDEO_UNMUTED="CE Video Unmuted";static EVENT_ADD_TO_CART_CLICKED="CE Add To Cart Clicked";static EVENT_VIEW_ITEM_CLICKED="CE View Item Clicked";static EVENT_MORE_ITEM_INFO_CLICKED="CE More Item Info Clicked";static EVENT_OPEN_CART_CLICKED="CE Open Cart Clicked";static EVENT_ADD_TO_CART="Add To Cart";static EVENT_REMOVE_FROM_CART="Remove From Cart";static EVENT_VIEW_ITEM="View Item";static EVENT_VIEW_CART="View Cart";static EVENT_OPEN_CART="Open Cart";static EVENT_VIEW_COLLECTION="View Collection";static EVENT_BUY_NOW_CLICKED="Buy Now Clicked";static EVENT_CHECKOUT_STARTED="Checkout Started";static EVENT_REVIEW_CLICKED="Review Clicked";static EVENT_ITEM_THUMBNAIL_CLICKED="Item Thumbnail Clicked";static JS_LOAD_WHITELIST_EVENTS=[this.EVENT_VIEW_ITEM,this.EVENT_VIEW_CART,this.EVENT_VIEW_COLLECTION];static HASH_INITIATE_CHECKOUT="initiate-checkout";static HASH_OPEN_CART_DRAWER="open-cart-drawer";static ADD_BUNDLE_CTA_INBOUND_EVENT="letscooee:inbound:cta:add-bundle";static CTA_OPEN_CART_EVENT="letscooee:outbound:open-cart";static CTA_AFTER_REFRESH_UI="letscooee:outbound:refresh-ui";static POPUP_ACTIVITY_EVENT="letscooee:outbound:popup-activities";static THIRD_PARTY_CHECKOUT_EVENT="letscooee:outbound:third-party-initiate-checkout";static CAMPAIGN_DISPLAYED_ACTIVITY="DISPLAYED";static CAMPAIGN_CLICKED_ACTIVITY="CLICKED";static CAMPAIGN_CLOSED_ACTIVITY="CLOSED";static BLACKLISTED_PAGE_NAMES=["collection","product","cart"];static API_CALL_MAX_ATTEMPTS=3;static API_CALL_RETRY_DELAY=1e3;static PLACEHOLDER_IMAGE="https://cdn.global.letscooee.com/images/placeholders/product.png";static CART_UPDATE_BROADCAST="CART_UPDATE";static GRAPHQL_VERSION="2024-10";static GRAPHQL_API_PATH=`/api/${this.GRAPHQL_VERSION}/graphql.json`;static SHADOW_SPLITTER=":shadow";static CAMPAIGN_ATTRIBUTE="_letscooee_campaign";static CONTENT_ATTRIBUTE="_letscooee_content";static VIA="_via";static PAYMENT_MODAL_DETAILS=[{identifier:"#flo-checkout-wrapper",gateway:"Shopflow"},{identifier:"#fastrr-main-container",gateway:"Shiprocket"},{identifier:"#gokwik-modal-wrapper",gateway:"Gokwik"},{identifier:"#zecpe",gateway:"Ecom 360"}];static{let e=bo.SDK_VERSION.split(".").map(r=>r.padStart(2,"0")).join("");bo.SDK_VERSION_CODE=parseInt(e,10)}},Ge={apiURL:"https://api.sdk.letscooee.com",debug:!1,mode:"production",styleURL:`https://cdn.jsdelivr.net/npm/@letscooee/web-sdk@${H.SDK_VERSION}/dist/widget.min.css`,widgetURL:`https://cdn.jsdelivr.net/npm/@letscooee/web-sdk@${H.SDK_VERSION}/dist/widget.min.js`},de=ke(rn()),T=class{static log(...t){de.default.info(...t)}static debug(...t){de.default.debug(...t)}static error(...t){de.default.error(...t)}static warn(...t){de.default.warn(...t)}static info(...t){de.default.info(...t)}static trace(...t){de.default.trace(...t)}};function gf(t=H.LOG_PREFIX){de.default.useDefaults({formatter:function(r){r.unshift(`${t} (v${H.SDK_VERSION}):`)}});let e=Lu();(e==="1"||e==="on")&&(localStorage.cooeeLogLevel="TRACE"),localStorage.cooeeLogLevel?de.default.setLevel(de.default[localStorage.cooeeLogLevel]):de.default.setLevel(Ge.debug?de.default.TRACE:de.default.OFF)}function Lu(){return new URL(location.href).searchParams?.get("cooee-debug")}function mf(){let t=`
|
|
1
|
+
"use strict";(()=>{var Jd=Object.create;var kc=Object.defineProperty;var Xd=Object.getOwnPropertyDescriptor;var Qd=Object.getOwnPropertyNames;var Zd=Object.getPrototypeOf,tf=Object.prototype.hasOwnProperty;var ef=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Qd(e))!tf.call(t,i)&&i!==r&&kc(t,i,{get:()=>e[i],enumerable:!(n=Xd(e,i))||n.enumerable});return t};var rf=(t,e,r)=>(r=t!=null?Jd(Zd(t)):{},ef(e||!t||!t.__esModule?kc(r,"default",{value:t,enumerable:!0}):r,t));var nf=Object.create,ca=Object.defineProperty,sf=Object.defineProperties,of=Object.getOwnPropertyDescriptor,af=Object.getOwnPropertyDescriptors,cf=Object.getOwnPropertyNames,Ri=Object.getOwnPropertySymbols,lf=Object.getPrototypeOf,la=Object.prototype.hasOwnProperty,Pu=Object.prototype.propertyIsEnumerable,Pc=(t,e,r)=>e in t?ca(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,x=(t,e)=>{for(var r in e||={})la.call(e,r)&&Pc(t,r,e[r]);if(Ri)for(var r of Ri(e))Pu.call(e,r)&&Pc(t,r,e[r]);return t},lt=(t,e)=>sf(t,af(e)),hi=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')}),uf=(t,e)=>{var r={};for(var n in t)la.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&Ri)for(var n of Ri(t))e.indexOf(n)<0&&Pu.call(t,n)&&(r[n]=t[n]);return r},rs=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),hf=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of cf(e))!la.call(t,i)&&i!==r&&ca(t,i,{get:()=>e[i],enumerable:!(n=of(e,i))||n.enumerable});return t},ke=(t,e,r)=>(r=t!=null?nf(lf(t)):{},hf(e||!t||!t.__esModule?ca(r,"default",{value:t,enumerable:!0}):r,t)),rn=rs((t,e)=>{"use strict";(function(r){"use strict";var n={};n.VERSION="1.6.1";var i,s={},o=function(h,w){return function(){return w.apply(h,arguments)}},c=function(){var h=arguments,w=h[0],y,b;for(b=1;b<h.length;b++)for(y in h[b])!(y in w)&&h[b].hasOwnProperty(y)&&(w[y]=h[b][y]);return w},l=function(h,w){return{value:h,name:w}};n.TRACE=l(1,"TRACE"),n.DEBUG=l(2,"DEBUG"),n.INFO=l(3,"INFO"),n.TIME=l(4,"TIME"),n.WARN=l(5,"WARN"),n.ERROR=l(8,"ERROR"),n.OFF=l(99,"OFF");var p=function(h){this.context=h,this.setLevel(h.filterLevel),this.log=this.info};p.prototype={setLevel:function(h){h&&"value"in h&&(this.context.filterLevel=h)},getLevel:function(){return this.context.filterLevel},enabledFor:function(h){var w=this.context.filterLevel;return h.value>=w.value},trace:function(){this.invoke(n.TRACE,arguments)},debug:function(){this.invoke(n.DEBUG,arguments)},info:function(){this.invoke(n.INFO,arguments)},warn:function(){this.invoke(n.WARN,arguments)},error:function(){this.invoke(n.ERROR,arguments)},time:function(h){typeof h=="string"&&h.length>0&&this.invoke(n.TIME,[h,"start"])},timeEnd:function(h){typeof h=="string"&&h.length>0&&this.invoke(n.TIME,[h,"end"])},invoke:function(h,w){i&&this.enabledFor(h)&&i(w,c({level:h},this.context))}};var g=new p({filterLevel:n.OFF});(function(){var h=n;h.enabledFor=o(g,g.enabledFor),h.trace=o(g,g.trace),h.debug=o(g,g.debug),h.time=o(g,g.time),h.timeEnd=o(g,g.timeEnd),h.info=o(g,g.info),h.warn=o(g,g.warn),h.error=o(g,g.error),h.log=h.info})(),n.setHandler=function(h){i=h},n.setLevel=function(h){g.setLevel(h);for(var w in s)s.hasOwnProperty(w)&&s[w].setLevel(h)},n.getLevel=function(){return g.getLevel()},n.get=function(h){return s[h]||(s[h]=new p(c({name:h},g.context)))},n.createDefaultHandler=function(h){h=h||{},h.formatter=h.formatter||function(b,_){_.name&&b.unshift("["+_.name+"]")};var w={},y=function(b,_){Function.prototype.apply.call(b,console,_)};return typeof console>"u"?function(){}:function(b,_){b=Array.prototype.slice.call(b);var k=console.log,A;_.level===n.TIME?(A=(_.name?"["+_.name+"] ":"")+b[0],b[1]==="start"?console.time?console.time(A):w[A]=new Date().getTime():console.timeEnd?console.timeEnd(A):y(k,[A+": "+(new Date().getTime()-w[A])+"ms"])):(_.level===n.WARN&&console.warn?k=console.warn:_.level===n.ERROR&&console.error?k=console.error:_.level===n.INFO&&console.info?k=console.info:_.level===n.DEBUG&&console.debug?k=console.debug:_.level===n.TRACE&&console.trace&&(k=console.trace),h.formatter(b,_),y(k,b))}},n.useDefaults=function(h){n.setLevel(h&&h.defaultLevel||n.DEBUG),n.setHandler(n.createDefaultHandler(h))},n.setDefaults=n.useDefaults,typeof define=="function"&&define.amd?define(n):typeof e<"u"&&e.exports?e.exports=n:(n._prevLogger=r.Logger,n.noConflict=function(){return r.Logger=n._prevLogger,n},r.Logger=n)})(t)}),pf=rs((t,e)=>{"use strict";(function(r){if(typeof t=="object"&&typeof e<"u")e.exports=r();else if(typeof define=="function"&&define.amd)define([],r);else{var n;typeof window<"u"?n=window:typeof global<"u"?n=global:typeof self<"u"?n=self:n=this,n.localforage=r()}})(function(){var r,n,i;return function s(o,c,l){function p(w,y){if(!c[w]){if(!o[w]){var b=typeof hi=="function"&&hi;if(!y&&b)return b(w,!0);if(g)return g(w,!0);var _=new Error("Cannot find module '"+w+"'");throw _.code="MODULE_NOT_FOUND",_}var k=c[w]={exports:{}};o[w][0].call(k.exports,function(A){var M=o[w][1][A];return p(M||A)},k,k.exports,s,o,c,l)}return c[w].exports}for(var g=typeof hi=="function"&&hi,h=0;h<l.length;h++)p(l[h]);return p}({1:[function(s,o,c){(function(l){"use strict";var p=l.MutationObserver||l.WebKitMutationObserver,g;if(p){var h=0,w=new p(A),y=l.document.createTextNode("");w.observe(y,{characterData:!0}),g=function(){y.data=h=++h%2}}else if(!l.setImmediate&&typeof l.MessageChannel<"u"){var b=new l.MessageChannel;b.port1.onmessage=A,g=function(){b.port2.postMessage(0)}}else"document"in l&&"onreadystatechange"in l.document.createElement("script")?g=function(){var G=l.document.createElement("script");G.onreadystatechange=function(){A(),G.onreadystatechange=null,G.parentNode.removeChild(G),G=null},l.document.documentElement.appendChild(G)}:g=function(){setTimeout(A,0)};var _,k=[];function A(){_=!0;for(var G,j,Z=k.length;Z;){for(j=k,k=[],G=-1;++G<Z;)j[G]();Z=k.length}_=!1}o.exports=M;function M(G){k.push(G)===1&&!_&&g()}}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{}],2:[function(s,o,c){"use strict";var l=s(1);function p(){}var g={},h=["REJECTED"],w=["FULFILLED"],y=["PENDING"];o.exports=b;function b(q){if(typeof q!="function")throw new TypeError("resolver must be a function");this.state=y,this.queue=[],this.outcome=void 0,q!==p&&M(this,q)}b.prototype.catch=function(q){return this.then(null,q)},b.prototype.then=function(q,it){if(typeof q!="function"&&this.state===w||typeof it!="function"&&this.state===h)return this;var tt=new this.constructor(p);if(this.state!==y){var rt=this.state===w?q:it;k(tt,rt,this.outcome)}else this.queue.push(new _(tt,q,it));return tt};function _(q,it,tt){this.promise=q,typeof it=="function"&&(this.onFulfilled=it,this.callFulfilled=this.otherCallFulfilled),typeof tt=="function"&&(this.onRejected=tt,this.callRejected=this.otherCallRejected)}_.prototype.callFulfilled=function(q){g.resolve(this.promise,q)},_.prototype.otherCallFulfilled=function(q){k(this.promise,this.onFulfilled,q)},_.prototype.callRejected=function(q){g.reject(this.promise,q)},_.prototype.otherCallRejected=function(q){k(this.promise,this.onRejected,q)};function k(q,it,tt){l(function(){var rt;try{rt=it(tt)}catch(pt){return g.reject(q,pt)}rt===q?g.reject(q,new TypeError("Cannot resolve promise with itself")):g.resolve(q,rt)})}g.resolve=function(q,it){var tt=G(A,it);if(tt.status==="error")return g.reject(q,tt.value);var rt=tt.value;if(rt)M(q,rt);else{q.state=w,q.outcome=it;for(var pt=-1,Pt=q.queue.length;++pt<Pt;)q.queue[pt].callFulfilled(it)}return q},g.reject=function(q,it){q.state=h,q.outcome=it;for(var tt=-1,rt=q.queue.length;++tt<rt;)q.queue[tt].callRejected(it);return q};function A(q){var it=q&&q.then;if(q&&(typeof q=="object"||typeof q=="function")&&typeof it=="function")return function(){it.apply(q,arguments)}}function M(q,it){var tt=!1;function rt($t){tt||(tt=!0,g.reject(q,$t))}function pt($t){tt||(tt=!0,g.resolve(q,$t))}function Pt(){it(pt,rt)}var Ot=G(Pt);Ot.status==="error"&&rt(Ot.value)}function G(q,it){var tt={};try{tt.value=q(it),tt.status="success"}catch(rt){tt.status="error",tt.value=rt}return tt}b.resolve=j;function j(q){return q instanceof this?q:g.resolve(new this(p),q)}b.reject=Z;function Z(q){var it=new this(p);return g.reject(it,q)}b.all=Et;function Et(q){var it=this;if(Object.prototype.toString.call(q)!=="[object Array]")return this.reject(new TypeError("must be an array"));var tt=q.length,rt=!1;if(!tt)return this.resolve([]);for(var pt=new Array(tt),Pt=0,Ot=-1,$t=new this(p);++Ot<tt;)Wt(q[Ot],Ot);return $t;function Wt(mt,Gt){it.resolve(mt).then(at,function(nt){rt||(rt=!0,g.reject($t,nt))});function at(nt){pt[Gt]=nt,++Pt===tt&&!rt&&(rt=!0,g.resolve($t,pt))}}}b.race=At;function At(q){var it=this;if(Object.prototype.toString.call(q)!=="[object Array]")return this.reject(new TypeError("must be an array"));var tt=q.length,rt=!1;if(!tt)return this.resolve([]);for(var pt=-1,Pt=new this(p);++pt<tt;)Ot(q[pt]);return Pt;function Ot($t){it.resolve($t).then(function(Wt){rt||(rt=!0,g.resolve(Pt,Wt))},function(Wt){rt||(rt=!0,g.reject(Pt,Wt))})}}},{1:1}],3:[function(s,o,c){(function(l){"use strict";typeof l.Promise!="function"&&(l.Promise=s(2))}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{2:2}],4:[function(s,o,c){"use strict";var l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(f){return typeof f}:function(f){return f&&typeof Symbol=="function"&&f.constructor===Symbol&&f!==Symbol.prototype?"symbol":typeof f};function p(f,m){if(!(f instanceof m))throw new TypeError("Cannot call a class as a function")}function g(){try{if(typeof indexedDB<"u")return indexedDB;if(typeof webkitIndexedDB<"u")return webkitIndexedDB;if(typeof mozIndexedDB<"u")return mozIndexedDB;if(typeof OIndexedDB<"u")return OIndexedDB;if(typeof msIndexedDB<"u")return msIndexedDB}catch{return}}var h=g();function w(){try{if(!h||!h.open)return!1;var f=typeof openDatabase<"u"&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),m=typeof fetch=="function"&&fetch.toString().indexOf("[native code")!==-1;return(!f||m)&&typeof indexedDB<"u"&&typeof IDBKeyRange<"u"}catch{return!1}}function y(f,m){f=f||[],m=m||{};try{return new Blob(f,m)}catch(C){if(C.name!=="TypeError")throw C;for(var v=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,I=new v,S=0;S<f.length;S+=1)I.append(f[S]);return I.getBlob(m.type)}}typeof Promise>"u"&&s(3);var b=Promise;function _(f,m){m&&f.then(function(v){m(null,v)},function(v){m(v)})}function k(f,m,v){typeof m=="function"&&f.then(m),typeof v=="function"&&f.catch(v)}function A(f){return typeof f!="string"&&(console.warn(f+" used as a key, but it is not a string."),f=String(f)),f}function M(){if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}var G="local-forage-detect-blob-support",j=void 0,Z={},Et=Object.prototype.toString,At="readonly",q="readwrite";function it(f){for(var m=f.length,v=new ArrayBuffer(m),I=new Uint8Array(v),S=0;S<m;S++)I[S]=f.charCodeAt(S);return v}function tt(f){return new b(function(m){var v=f.transaction(G,q),I=y([""]);v.objectStore(G).put(I,"key"),v.onabort=function(S){S.preventDefault(),S.stopPropagation(),m(!1)},v.oncomplete=function(){var S=navigator.userAgent.match(/Chrome\/(\d+)/),C=navigator.userAgent.match(/Edge\//);m(C||!S||parseInt(S[1],10)>=43)}}).catch(function(){return!1})}function rt(f){return typeof j=="boolean"?b.resolve(j):tt(f).then(function(m){return j=m,j})}function pt(f){var m=Z[f.name],v={};v.promise=new b(function(I,S){v.resolve=I,v.reject=S}),m.deferredOperations.push(v),m.dbReady?m.dbReady=m.dbReady.then(function(){return v.promise}):m.dbReady=v.promise}function Pt(f){var m=Z[f.name],v=m.deferredOperations.pop();if(v)return v.resolve(),v.promise}function Ot(f,m){var v=Z[f.name],I=v.deferredOperations.pop();if(I)return I.reject(m),I.promise}function $t(f,m){return new b(function(v,I){if(Z[f.name]=Z[f.name]||ci(),f.db)if(m)pt(f),f.db.close();else return v(f.db);var S=[f.name];m&&S.push(f.version);var C=h.open.apply(h,S);m&&(C.onupgradeneeded=function(N){var $=C.result;try{$.createObjectStore(f.storeName),N.oldVersion<=1&&$.createObjectStore(G)}catch(W){if(W.name==="ConstraintError")console.warn('The database "'+f.name+'" has been upgraded from version '+N.oldVersion+" to version "+N.newVersion+', but the storage "'+f.storeName+'" already exists.');else throw W}}),C.onerror=function(N){N.preventDefault(),I(C.error)},C.onsuccess=function(){var N=C.result;N.onversionchange=function($){$.target.close()},v(N),Pt(f)}})}function Wt(f){return $t(f,!1)}function mt(f){return $t(f,!0)}function Gt(f,m){if(!f.db)return!0;var v=!f.db.objectStoreNames.contains(f.storeName),I=f.version<f.db.version,S=f.version>f.db.version;if(I&&(f.version!==m&&console.warn('The database "'+f.name+`" can't be downgraded from version `+f.db.version+" to version "+f.version+"."),f.version=f.db.version),S||v){if(v){var C=f.db.version+1;C>f.version&&(f.version=C)}return!0}return!1}function at(f){return new b(function(m,v){var I=new FileReader;I.onerror=v,I.onloadend=function(S){var C=btoa(S.target.result||"");m({__local_forage_encoded_blob:!0,data:C,type:f.type})},I.readAsBinaryString(f)})}function nt(f){var m=it(atob(f.data));return y([m],{type:f.type})}function Ft(f){return f&&f.__local_forage_encoded_blob}function oi(f){var m=this,v=m._initReady().then(function(){var I=Z[m._dbInfo.name];if(I&&I.dbReady)return I.dbReady});return k(v,f,f),v}function ai(f){pt(f);for(var m=Z[f.name],v=m.forages,I=0;I<v.length;I++){var S=v[I];S._dbInfo.db&&(S._dbInfo.db.close(),S._dbInfo.db=null)}return f.db=null,Wt(f).then(function(C){return f.db=C,Gt(f)?mt(f):C}).then(function(C){f.db=m.db=C;for(var N=0;N<v.length;N++)v[N]._dbInfo.db=C}).catch(function(C){throw Ot(f,C),C})}function ae(f,m,v,I){I===void 0&&(I=1);try{var S=f.db.transaction(f.storeName,m);v(null,S)}catch(C){if(I>0&&(!f.db||C.name==="InvalidStateError"||C.name==="NotFoundError"))return b.resolve().then(function(){if(!f.db||C.name==="NotFoundError"&&!f.db.objectStoreNames.contains(f.storeName)&&f.version<=f.db.version)return f.db&&(f.version=f.db.version+1),mt(f)}).then(function(){return ai(f).then(function(){ae(f,m,v,I-1)})}).catch(v);v(C)}}function ci(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function Ts(f){var m=this,v={db:null};if(f)for(var I in f)v[I]=f[I];var S=Z[v.name];S||(S=ci(),Z[v.name]=S),S.forages.push(m),m._initReady||(m._initReady=m.ready,m.ready=oi);var C=[];function N(){return b.resolve()}for(var $=0;$<S.forages.length;$++){var W=S.forages[$];W!==m&&C.push(W._initReady().catch(N))}var V=S.forages.slice(0);return b.all(C).then(function(){return v.db=S.db,Wt(v)}).then(function(F){return v.db=F,Gt(v,m._defaultConfig.version)?mt(v):F}).then(function(F){v.db=S.db=F,m._dbInfo=v;for(var J=0;J<V.length;J++){var ot=V[J];ot!==m&&(ot._dbInfo.db=v.db,ot._dbInfo.version=v.version)}})}function hn(f,m){var v=this;f=A(f);var I=new b(function(S,C){v.ready().then(function(){ae(v._dbInfo,At,function(N,$){if(N)return C(N);try{var W=$.objectStore(v._dbInfo.storeName),V=W.get(f);V.onsuccess=function(){var F=V.result;F===void 0&&(F=null),Ft(F)&&(F=nt(F)),S(F)},V.onerror=function(){C(V.error)}}catch(F){C(F)}})}).catch(C)});return _(I,m),I}function xs(f,m){var v=this,I=new b(function(S,C){v.ready().then(function(){ae(v._dbInfo,At,function(N,$){if(N)return C(N);try{var W=$.objectStore(v._dbInfo.storeName),V=W.openCursor(),F=1;V.onsuccess=function(){var J=V.result;if(J){var ot=J.value;Ft(ot)&&(ot=nt(ot));var bt=f(ot,J.key,F++);bt!==void 0?S(bt):J.continue()}else S()},V.onerror=function(){C(V.error)}}catch(J){C(J)}})}).catch(C)});return _(I,m),I}function Ds(f,m,v){var I=this;f=A(f);var S=new b(function(C,N){var $;I.ready().then(function(){return $=I._dbInfo,Et.call(m)==="[object Blob]"?rt($.db).then(function(W){return W?m:at(m)}):m}).then(function(W){ae(I._dbInfo,q,function(V,F){if(V)return N(V);try{var J=F.objectStore(I._dbInfo.storeName);W===null&&(W=void 0);var ot=J.put(W,f);F.oncomplete=function(){W===void 0&&(W=null),C(W)},F.onabort=F.onerror=function(){var bt=ot.error?ot.error:ot.transaction.error;N(bt)}}catch(bt){N(bt)}})}).catch(N)});return _(S,v),S}function li(f,m){var v=this;f=A(f);var I=new b(function(S,C){v.ready().then(function(){ae(v._dbInfo,q,function(N,$){if(N)return C(N);try{var W=$.objectStore(v._dbInfo.storeName),V=W.delete(f);$.oncomplete=function(){S()},$.onerror=function(){C(V.error)},$.onabort=function(){var F=V.error?V.error:V.transaction.error;C(F)}}catch(F){C(F)}})}).catch(C)});return _(I,m),I}function Rr(f){var m=this,v=new b(function(I,S){m.ready().then(function(){ae(m._dbInfo,q,function(C,N){if(C)return S(C);try{var $=N.objectStore(m._dbInfo.storeName),W=$.clear();N.oncomplete=function(){I()},N.onabort=N.onerror=function(){var V=W.error?W.error:W.transaction.error;S(V)}}catch(V){S(V)}})}).catch(S)});return _(v,f),v}function ce(f){var m=this,v=new b(function(I,S){m.ready().then(function(){ae(m._dbInfo,At,function(C,N){if(C)return S(C);try{var $=N.objectStore(m._dbInfo.storeName),W=$.count();W.onsuccess=function(){I(W.result)},W.onerror=function(){S(W.error)}}catch(V){S(V)}})}).catch(S)});return _(v,f),v}function pn(f,m){var v=this,I=new b(function(S,C){if(f<0){S(null);return}v.ready().then(function(){ae(v._dbInfo,At,function(N,$){if(N)return C(N);try{var W=$.objectStore(v._dbInfo.storeName),V=!1,F=W.openKeyCursor();F.onsuccess=function(){var J=F.result;if(!J){S(null);return}f===0||V?S(J.key):(V=!0,J.advance(f))},F.onerror=function(){C(F.error)}}catch(J){C(J)}})}).catch(C)});return _(I,m),I}function As(f){var m=this,v=new b(function(I,S){m.ready().then(function(){ae(m._dbInfo,At,function(C,N){if(C)return S(C);try{var $=N.objectStore(m._dbInfo.storeName),W=$.openKeyCursor(),V=[];W.onsuccess=function(){var F=W.result;if(!F){I(V);return}V.push(F.key),F.continue()},W.onerror=function(){S(W.error)}}catch(F){S(F)}})}).catch(S)});return _(v,f),v}function a(f,m){m=M.apply(this,arguments);var v=this.config();f=typeof f!="function"&&f||{},f.name||(f.name=f.name||v.name,f.storeName=f.storeName||v.storeName);var I=this,S;if(!f.name)S=b.reject("Invalid arguments");else{var C=f.name===v.name&&I._dbInfo.db,N=C?b.resolve(I._dbInfo.db):Wt(f).then(function($){var W=Z[f.name],V=W.forages;W.db=$;for(var F=0;F<V.length;F++)V[F]._dbInfo.db=$;return $});f.storeName?S=N.then(function($){if($.objectStoreNames.contains(f.storeName)){var W=$.version+1;pt(f);var V=Z[f.name],F=V.forages;$.close();for(var J=0;J<F.length;J++){var ot=F[J];ot._dbInfo.db=null,ot._dbInfo.version=W}var bt=new b(function(ft,Rt){var Ct=h.open(f.name,W);Ct.onerror=function(le){var Rs=Ct.result;Rs.close(),Rt(le)},Ct.onupgradeneeded=function(){var le=Ct.result;le.deleteObjectStore(f.storeName)},Ct.onsuccess=function(){var le=Ct.result;le.close(),ft(le)}});return bt.then(function(ft){V.db=ft;for(var Rt=0;Rt<F.length;Rt++){var Ct=F[Rt];Ct._dbInfo.db=ft,Pt(Ct._dbInfo)}}).catch(function(ft){throw(Ot(f,ft)||b.resolve()).catch(function(){}),ft})}}):S=N.then(function($){pt(f);var W=Z[f.name],V=W.forages;$.close();for(var F=0;F<V.length;F++){var J=V[F];J._dbInfo.db=null}var ot=new b(function(bt,ft){var Rt=h.deleteDatabase(f.name);Rt.onerror=function(){var Ct=Rt.result;Ct&&Ct.close(),ft(Rt.error)},Rt.onblocked=function(){console.warn('dropInstance blocked for database "'+f.name+'" until all open connections are closed')},Rt.onsuccess=function(){var Ct=Rt.result;Ct&&Ct.close(),bt(Ct)}});return ot.then(function(bt){W.db=bt;for(var ft=0;ft<V.length;ft++){var Rt=V[ft];Pt(Rt._dbInfo)}}).catch(function(bt){throw(Ot(f,bt)||b.resolve()).catch(function(){}),bt})})}return _(S,m),S}var u={_driver:"asyncStorage",_initStorage:Ts,_support:w(),iterate:xs,getItem:hn,setItem:Ds,removeItem:li,clear:Rr,length:ce,key:pn,keys:As,dropInstance:a};function d(){return typeof openDatabase=="function"}var E="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",D="~~local_forage_type~",U=/^~~local_forage_type~([^~]+)~/,K="__lfsc__:",dt=K.length,Nt="arbf",vt="blob",It="si08",Bt="ui08",lr="uic8",dn="si16",fn="si32",bc="ur16",wc="ui32",_c="fl32",Ec="fl64",Sc=dt+Nt.length,Ic=Object.prototype.toString;function Cc(f){var m=f.length*.75,v=f.length,I,S=0,C,N,$,W;f[f.length-1]==="="&&(m--,f[f.length-2]==="="&&m--);var V=new ArrayBuffer(m),F=new Uint8Array(V);for(I=0;I<v;I+=4)C=E.indexOf(f[I]),N=E.indexOf(f[I+1]),$=E.indexOf(f[I+2]),W=E.indexOf(f[I+3]),F[S++]=C<<2|N>>4,F[S++]=(N&15)<<4|$>>2,F[S++]=($&3)<<6|W&63;return V}function Os(f){var m=new Uint8Array(f),v="",I;for(I=0;I<m.length;I+=3)v+=E[m[I]>>2],v+=E[(m[I]&3)<<4|m[I+1]>>4],v+=E[(m[I+1]&15)<<2|m[I+2]>>6],v+=E[m[I+2]&63];return m.length%3===2?v=v.substring(0,v.length-1)+"=":m.length%3===1&&(v=v.substring(0,v.length-2)+"=="),v}function dd(f,m){var v="";if(f&&(v=Ic.call(f)),f&&(v==="[object ArrayBuffer]"||f.buffer&&Ic.call(f.buffer)==="[object ArrayBuffer]")){var I,S=K;f instanceof ArrayBuffer?(I=f,S+=Nt):(I=f.buffer,v==="[object Int8Array]"?S+=It:v==="[object Uint8Array]"?S+=Bt:v==="[object Uint8ClampedArray]"?S+=lr:v==="[object Int16Array]"?S+=dn:v==="[object Uint16Array]"?S+=bc:v==="[object Int32Array]"?S+=fn:v==="[object Uint32Array]"?S+=wc:v==="[object Float32Array]"?S+=_c:v==="[object Float64Array]"?S+=Ec:m(new Error("Failed to get type for BinaryArray"))),m(S+Os(I))}else if(v==="[object Blob]"){var C=new FileReader;C.onload=function(){var N=D+f.type+"~"+Os(this.result);m(K+vt+N)},C.readAsArrayBuffer(f)}else try{m(JSON.stringify(f))}catch(N){console.error("Couldn't convert value into a JSON string: ",f),m(null,N)}}function fd(f){if(f.substring(0,dt)!==K)return JSON.parse(f);var m=f.substring(Sc),v=f.substring(dt,Sc),I;if(v===vt&&U.test(m)){var S=m.match(U);I=S[1],m=m.substring(S[0].length)}var C=Cc(m);switch(v){case Nt:return C;case vt:return y([C],{type:I});case It:return new Int8Array(C);case Bt:return new Uint8Array(C);case lr:return new Uint8ClampedArray(C);case dn:return new Int16Array(C);case bc:return new Uint16Array(C);case fn:return new Int32Array(C);case wc:return new Uint32Array(C);case _c:return new Float32Array(C);case Ec:return new Float64Array(C);default:throw new Error("Unkown type: "+v)}}var Ns={serialize:dd,deserialize:fd,stringToBuffer:Cc,bufferToString:Os};function Tc(f,m,v,I){f.executeSql("CREATE TABLE IF NOT EXISTS "+m.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],v,I)}function gd(f){var m=this,v={db:null};if(f)for(var I in f)v[I]=typeof f[I]!="string"?f[I].toString():f[I];var S=new b(function(C,N){try{v.db=openDatabase(v.name,String(v.version),v.description,v.size)}catch($){return N($)}v.db.transaction(function($){Tc($,v,function(){m._dbInfo=v,C()},function(W,V){N(V)})},N)});return v.serializer=Ns,S}function Xe(f,m,v,I,S,C){f.executeSql(v,I,S,function(N,$){$.code===$.SYNTAX_ERR?N.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[m.storeName],function(W,V){V.rows.length?C(W,$):Tc(W,m,function(){W.executeSql(v,I,S,C)},C)},C):C(N,$)},C)}function md(f,m){var v=this;f=A(f);var I=new b(function(S,C){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function($){Xe($,N,"SELECT * FROM "+N.storeName+" WHERE key = ? LIMIT 1",[f],function(W,V){var F=V.rows.length?V.rows.item(0).value:null;F&&(F=N.serializer.deserialize(F)),S(F)},function(W,V){C(V)})})}).catch(C)});return _(I,m),I}function vd(f,m){var v=this,I=new b(function(S,C){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function($){Xe($,N,"SELECT * FROM "+N.storeName,[],function(W,V){for(var F=V.rows,J=F.length,ot=0;ot<J;ot++){var bt=F.item(ot),ft=bt.value;if(ft&&(ft=N.serializer.deserialize(ft)),ft=f(ft,bt.key,ot+1),ft!==void 0){S(ft);return}}S()},function(W,V){C(V)})})}).catch(C)});return _(I,m),I}function xc(f,m,v,I){var S=this;f=A(f);var C=new b(function(N,$){S.ready().then(function(){m===void 0&&(m=null);var W=m,V=S._dbInfo;V.serializer.serialize(m,function(F,J){J?$(J):V.db.transaction(function(ot){Xe(ot,V,"INSERT OR REPLACE INTO "+V.storeName+" (key, value) VALUES (?, ?)",[f,F],function(){N(W)},function(bt,ft){$(ft)})},function(ot){if(ot.code===ot.QUOTA_ERR){if(I>0){N(xc.apply(S,[f,W,v,I-1]));return}$(ot)}})})}).catch($)});return _(C,v),C}function yd(f,m,v){return xc.apply(this,[f,m,v,1])}function bd(f,m){var v=this;f=A(f);var I=new b(function(S,C){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function($){Xe($,N,"DELETE FROM "+N.storeName+" WHERE key = ?",[f],function(){S()},function(W,V){C(V)})})}).catch(C)});return _(I,m),I}function wd(f){var m=this,v=new b(function(I,S){m.ready().then(function(){var C=m._dbInfo;C.db.transaction(function(N){Xe(N,C,"DELETE FROM "+C.storeName,[],function(){I()},function($,W){S(W)})})}).catch(S)});return _(v,f),v}function _d(f){var m=this,v=new b(function(I,S){m.ready().then(function(){var C=m._dbInfo;C.db.transaction(function(N){Xe(N,C,"SELECT COUNT(key) as c FROM "+C.storeName,[],function($,W){var V=W.rows.item(0).c;I(V)},function($,W){S(W)})})}).catch(S)});return _(v,f),v}function Ed(f,m){var v=this,I=new b(function(S,C){v.ready().then(function(){var N=v._dbInfo;N.db.transaction(function($){Xe($,N,"SELECT key FROM "+N.storeName+" WHERE id = ? LIMIT 1",[f+1],function(W,V){var F=V.rows.length?V.rows.item(0).key:null;S(F)},function(W,V){C(V)})})}).catch(C)});return _(I,m),I}function Sd(f){var m=this,v=new b(function(I,S){m.ready().then(function(){var C=m._dbInfo;C.db.transaction(function(N){Xe(N,C,"SELECT key FROM "+C.storeName,[],function($,W){for(var V=[],F=0;F<W.rows.length;F++)V.push(W.rows.item(F).key);I(V)},function($,W){S(W)})})}).catch(S)});return _(v,f),v}function Id(f){return new b(function(m,v){f.transaction(function(I){I.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(S,C){for(var N=[],$=0;$<C.rows.length;$++)N.push(C.rows.item($).name);m({db:f,storeNames:N})},function(S,C){v(C)})},function(I){v(I)})})}function Cd(f,m){m=M.apply(this,arguments);var v=this.config();f=typeof f!="function"&&f||{},f.name||(f.name=f.name||v.name,f.storeName=f.storeName||v.storeName);var I=this,S;return f.name?S=new b(function(C){var N;f.name===v.name?N=I._dbInfo.db:N=openDatabase(f.name,"","",0),f.storeName?C({db:N,storeNames:[f.storeName]}):C(Id(N))}).then(function(C){return new b(function(N,$){C.db.transaction(function(W){function V(bt){return new b(function(ft,Rt){W.executeSql("DROP TABLE IF EXISTS "+bt,[],function(){ft()},function(Ct,le){Rt(le)})})}for(var F=[],J=0,ot=C.storeNames.length;J<ot;J++)F.push(V(C.storeNames[J]));b.all(F).then(function(){N()}).catch(function(bt){$(bt)})},function(W){$(W)})})}):S=b.reject("Invalid arguments"),_(S,m),S}var Td={_driver:"webSQLStorage",_initStorage:gd,_support:d(),iterate:vd,getItem:md,setItem:yd,removeItem:bd,clear:wd,length:_d,key:Ed,keys:Sd,dropInstance:Cd};function xd(){try{return typeof localStorage<"u"&&"setItem"in localStorage&&!!localStorage.setItem}catch{return!1}}function Dc(f,m){var v=f.name+"/";return f.storeName!==m.storeName&&(v+=f.storeName+"/"),v}function Dd(){var f="_localforage_support_test";try{return localStorage.setItem(f,!0),localStorage.removeItem(f),!1}catch{return!0}}function Ad(){return!Dd()||localStorage.length>0}function Od(f){var m=this,v={};if(f)for(var I in f)v[I]=f[I];return v.keyPrefix=Dc(f,m._defaultConfig),Ad()?(m._dbInfo=v,v.serializer=Ns,b.resolve()):b.reject()}function Nd(f){var m=this,v=m.ready().then(function(){for(var I=m._dbInfo.keyPrefix,S=localStorage.length-1;S>=0;S--){var C=localStorage.key(S);C.indexOf(I)===0&&localStorage.removeItem(C)}});return _(v,f),v}function kd(f,m){var v=this;f=A(f);var I=v.ready().then(function(){var S=v._dbInfo,C=localStorage.getItem(S.keyPrefix+f);return C&&(C=S.serializer.deserialize(C)),C});return _(I,m),I}function Pd(f,m){var v=this,I=v.ready().then(function(){for(var S=v._dbInfo,C=S.keyPrefix,N=C.length,$=localStorage.length,W=1,V=0;V<$;V++){var F=localStorage.key(V);if(F.indexOf(C)===0){var J=localStorage.getItem(F);if(J&&(J=S.serializer.deserialize(J)),J=f(J,F.substring(N),W++),J!==void 0)return J}}});return _(I,m),I}function Rd(f,m){var v=this,I=v.ready().then(function(){var S=v._dbInfo,C;try{C=localStorage.key(f)}catch{C=null}return C&&(C=C.substring(S.keyPrefix.length)),C});return _(I,m),I}function Ld(f){var m=this,v=m.ready().then(function(){for(var I=m._dbInfo,S=localStorage.length,C=[],N=0;N<S;N++){var $=localStorage.key(N);$.indexOf(I.keyPrefix)===0&&C.push($.substring(I.keyPrefix.length))}return C});return _(v,f),v}function Md(f){var m=this,v=m.keys().then(function(I){return I.length});return _(v,f),v}function Ud(f,m){var v=this;f=A(f);var I=v.ready().then(function(){var S=v._dbInfo;localStorage.removeItem(S.keyPrefix+f)});return _(I,m),I}function Bd(f,m,v){var I=this;f=A(f);var S=I.ready().then(function(){m===void 0&&(m=null);var C=m;return new b(function(N,$){var W=I._dbInfo;W.serializer.serialize(m,function(V,F){if(F)$(F);else try{localStorage.setItem(W.keyPrefix+f,V),N(C)}catch(J){(J.name==="QuotaExceededError"||J.name==="NS_ERROR_DOM_QUOTA_REACHED")&&$(J),$(J)}})})});return _(S,v),S}function jd(f,m){if(m=M.apply(this,arguments),f=typeof f!="function"&&f||{},!f.name){var v=this.config();f.name=f.name||v.name,f.storeName=f.storeName||v.storeName}var I=this,S;return f.name?S=new b(function(C){f.storeName?C(Dc(f,I._defaultConfig)):C(f.name+"/")}).then(function(C){for(var N=localStorage.length-1;N>=0;N--){var $=localStorage.key(N);$.indexOf(C)===0&&localStorage.removeItem($)}}):S=b.reject("Invalid arguments"),_(S,m),S}var $d={_driver:"localStorageWrapper",_initStorage:Od,_support:xd(),iterate:Pd,getItem:kd,setItem:Bd,removeItem:Ud,clear:Nd,length:Md,key:Rd,keys:Ld,dropInstance:jd},Fd=function(f,m){return f===m||typeof f=="number"&&typeof m=="number"&&isNaN(f)&&isNaN(m)},Hd=function(f,m){for(var v=f.length,I=0;I<v;){if(Fd(f[I],m))return!0;I++}return!1},Ac=Array.isArray||function(f){return Object.prototype.toString.call(f)==="[object Array]"},gn={},Oc={},Lr={INDEXEDDB:u,WEBSQL:Td,LOCALSTORAGE:$d},Vd=[Lr.INDEXEDDB._driver,Lr.WEBSQL._driver,Lr.LOCALSTORAGE._driver],ui=["dropInstance"],ks=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(ui),qd={description:"",driver:Vd.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function Wd(f,m){f[m]=function(){var v=arguments;return f.ready().then(function(){return f[m].apply(f,v)})}}function Ps(){for(var f=1;f<arguments.length;f++){var m=arguments[f];if(m)for(var v in m)m.hasOwnProperty(v)&&(Ac(m[v])?arguments[0][v]=m[v].slice():arguments[0][v]=m[v])}return arguments[0]}var Gd=function(){function f(m){p(this,f);for(var v in Lr)if(Lr.hasOwnProperty(v)){var I=Lr[v],S=I._driver;this[v]=S,gn[S]||this.defineDriver(I)}this._defaultConfig=Ps({},qd),this._config=Ps({},this._defaultConfig,m),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}return f.prototype.config=function(m){if((typeof m>"u"?"undefined":l(m))==="object"){if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var v in m){if(v==="storeName"&&(m[v]=m[v].replace(/\W/g,"_")),v==="version"&&typeof m[v]!="number")return new Error("Database version must be a number.");this._config[v]=m[v]}return"driver"in m&&m.driver?this.setDriver(this._config.driver):!0}else return typeof m=="string"?this._config[m]:this._config},f.prototype.defineDriver=function(m,v,I){var S=new b(function(C,N){try{var $=m._driver,W=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!m._driver){N(W);return}for(var V=ks.concat("_initStorage"),F=0,J=V.length;F<J;F++){var ot=V[F],bt=!Hd(ui,ot);if((bt||m[ot])&&typeof m[ot]!="function"){N(W);return}}var ft=function(){for(var Ct=function(Kd){return function(){var Yd=new Error("Method "+Kd+" is not implemented by the current driver"),Nc=b.reject(Yd);return _(Nc,arguments[arguments.length-1]),Nc}},le=0,Rs=ui.length;le<Rs;le++){var Ls=ui[le];m[Ls]||(m[Ls]=Ct(Ls))}};ft();var Rt=function(Ct){gn[$]&&console.info("Redefining LocalForage driver: "+$),gn[$]=m,Oc[$]=Ct,C()};"_support"in m?m._support&&typeof m._support=="function"?m._support().then(Rt,N):Rt(!!m._support):Rt(!0)}catch(Ct){N(Ct)}});return k(S,v,I),S},f.prototype.driver=function(){return this._driver||null},f.prototype.getDriver=function(m,v,I){var S=gn[m]?b.resolve(gn[m]):b.reject(new Error("Driver not found."));return k(S,v,I),S},f.prototype.getSerializer=function(m){var v=b.resolve(Ns);return k(v,m),v},f.prototype.ready=function(m){var v=this,I=v._driverSet.then(function(){return v._ready===null&&(v._ready=v._initDriver()),v._ready});return k(I,m,m),I},f.prototype.setDriver=function(m,v,I){var S=this;Ac(m)||(m=[m]);var C=this._getSupportedDrivers(m);function N(){S._config.driver=S.driver()}function $(F){return S._extend(F),N(),S._ready=S._initStorage(S._config),S._ready}function W(F){return function(){var J=0;function ot(){for(;J<F.length;){var bt=F[J];return J++,S._dbInfo=null,S._ready=null,S.getDriver(bt).then($).catch(ot)}N();var ft=new Error("No available storage method found.");return S._driverSet=b.reject(ft),S._driverSet}return ot()}}var V=this._driverSet!==null?this._driverSet.catch(function(){return b.resolve()}):b.resolve();return this._driverSet=V.then(function(){var F=C[0];return S._dbInfo=null,S._ready=null,S.getDriver(F).then(function(J){S._driver=J._driver,N(),S._wrapLibraryMethodsWithReady(),S._initDriver=W(C)})}).catch(function(){N();var F=new Error("No available storage method found.");return S._driverSet=b.reject(F),S._driverSet}),k(this._driverSet,v,I),this._driverSet},f.prototype.supports=function(m){return!!Oc[m]},f.prototype._extend=function(m){Ps(this,m)},f.prototype._getSupportedDrivers=function(m){for(var v=[],I=0,S=m.length;I<S;I++){var C=m[I];this.supports(C)&&v.push(C)}return v},f.prototype._wrapLibraryMethodsWithReady=function(){for(var m=0,v=ks.length;m<v;m++)Wd(this,ks[m])},f.prototype.createInstance=function(m){return new f(m)},f}(),zd=new Gd;o.exports=zd},{3:3}]},{},[4])(4)})}),Ru=rs(t=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.URLBuilder=void 0;var e=function(){function r(n){try{this.base=new URL(n),this.params=new URLSearchParams(this.base.search.slice(1))}catch(i){console.error("Un-parsable URL",i)}}return r.prototype.appendQueryParam=function(n,i){this.params.append(n,i?i.toString():"")},r.prototype.clearQueryParams=function(){return this.params=new URLSearchParams,this},r.prototype.deleteQueryParam=function(n){this.params.delete(n)},r.prototype.getBase=function(){return this.base},r.prototype.getPath=function(){return this.base.pathname},r.prototype.getHostname=function(){return this.base.hostname},r.prototype.getParams=function(){return this.params},r.prototype.getQueryParam=function(n){if(!this.params)return"";var i=this.params.get(n);return!i||i==="undefined"||i==="null"?void 0:i},r.prototype.getQueryString=function(){return this.params.toString()},r.prototype.setPath=function(n){return this.base.pathname=n,this},r.prototype.setQueryParam=function(n,i){return this.params.set(n,i?i.toString():""),this},r.prototype.setQueryString=function(n){if(n)return n[0]==="?"&&(n=n.slice(1)),this.params=new URLSearchParams(n),this},r.prototype.toString=function(){var n=this.params.toString();return n===""?this.base.search="":this.base.search="?"+n,this.base.toString()},r}();t.URLBuilder=e}),df=rs((t,e)=>{"use strict";(function(r,n){typeof t=="object"&&typeof e<"u"?e.exports=n():typeof define=="function"&&define.amd?define(n):(r=typeof globalThis<"u"?globalThis:r||self,r.fetchRetry=n())})(t,function(){"use strict";var r=function(s,o){if(o=o||{},typeof s!="function")throw new i("fetch must be a function");if(typeof o!="object")throw new i("defaults must be an object");if(o.retries!==void 0&&!n(o.retries))throw new i("retries must be a positive integer");if(o.retryDelay!==void 0&&!n(o.retryDelay)&&typeof o.retryDelay!="function")throw new i("retryDelay must be a positive integer or a function returning a positive integer");if(o.retryOn!==void 0&&!Array.isArray(o.retryOn)&&typeof o.retryOn!="function")throw new i("retryOn property expects an array or function");var c={retries:3,retryDelay:1e3,retryOn:[]};return o=Object.assign(c,o),function(l,p){var g=o.retries,h=o.retryDelay,w=o.retryOn;if(p&&p.retries!==void 0)if(n(p.retries))g=p.retries;else throw new i("retries must be a positive integer");if(p&&p.retryDelay!==void 0)if(n(p.retryDelay)||typeof p.retryDelay=="function")h=p.retryDelay;else throw new i("retryDelay must be a positive integer or a function returning a positive integer");if(p&&p.retryOn)if(Array.isArray(p.retryOn)||typeof p.retryOn=="function")w=p.retryOn;else throw new i("retryOn property expects an array or function");return new Promise(function(y,b){var _=function(A){var M=typeof Request<"u"&&l instanceof Request?l.clone():l;s(M,p).then(function(G){if(Array.isArray(w)&&w.indexOf(G.status)===-1)y(G);else if(typeof w=="function")try{return Promise.resolve(w(A,null,G)).then(function(j){j?k(A,null,G):y(G)}).catch(b)}catch(j){b(j)}else A<g?k(A,null,G):y(G)}).catch(function(G){if(typeof w=="function")try{Promise.resolve(w(A,G,null)).then(function(j){j?k(A,G,null):b(G)}).catch(function(j){b(j)})}catch(j){b(j)}else A<g?k(A,G,null):b(G)})};function k(A,M,G){var j=typeof h=="function"?h(A,M,G):h;setTimeout(function(){_(++A)},j)}_(0)})}};function n(s){return Number.isInteger(s)&&s>=0}function i(s){this.name="ArgumentError",this.message=s}return r})}),ff="9.13.2",H=class bo{static SDK_VERSION=ff;static SDK_VERSION_CODE;static SDK="WEB";static LOG_PREFIX="CooeeSDK";static COOEE="cooee";static SESSION_STORAGE_SCROLL_ID="sleid";static IDLE_TIME_IN_SECONDS=30*60;static IN_APP_WRAPPER_NAME="cooee-wrapper";static IN_APP_CONTAINER_NAME="cooee-container";static IN_APP_DEFAULT_PADDING=15;static EVENT_SCREEN_VIEW="CE Screen View";static EVENT_APP_BACKGROUND="CE App Background";static EVENT_TRIGGER_DISPLAYED="CE Trigger Displayed";static EVENT_CAMPAIGN_HOLDOUT="CE Campaign Holdout";static EVENT_CAMPAIGN_REJECTED="CE Campaign Rejected";static EVENT_CAMPAIGN_FAILED="CE Campaign Failed";static EVENT_TRIGGER_CLOSED="CE Trigger Closed";static EVENT_SCROLL="CE Scroll";static EVENT_TRIGGER_CLICKED="CE Trigger Clicked";static EVENT_FORM_SUBMITTED="CE Form Submitted";static EVENT_EXPERIMENT_START="CE Experiment Start";static EVENT_VIDEO_DIALOG_CLOSED="CE Video Dialog Closed";static EVENT_VIDEO_DIALOG_OPENED="CE Video Dialog Opened";static EVENT_VIDEO_CHANGE="CE Video Changed";static EVENT_LAST_VIDEO_ENDED="CE Last Video Ended";static EVENT_VIDEO_MUTED="CE Video Muted";static EVENT_VIDEO_UNMUTED="CE Video Unmuted";static EVENT_ADD_TO_CART_CLICKED="CE Add To Cart Clicked";static EVENT_VIEW_ITEM_CLICKED="CE View Item Clicked";static EVENT_MORE_ITEM_INFO_CLICKED="CE More Item Info Clicked";static EVENT_OPEN_CART_CLICKED="CE Open Cart Clicked";static EVENT_ADD_TO_CART="Add To Cart";static EVENT_REMOVE_FROM_CART="Remove From Cart";static EVENT_VIEW_ITEM="View Item";static EVENT_VIEW_CART="View Cart";static EVENT_OPEN_CART="Open Cart";static EVENT_VIEW_COLLECTION="View Collection";static EVENT_BUY_NOW_CLICKED="Buy Now Clicked";static EVENT_CHECKOUT_STARTED="Checkout Started";static EVENT_REVIEW_CLICKED="Review Clicked";static EVENT_ITEM_THUMBNAIL_CLICKED="Item Thumbnail Clicked";static JS_LOAD_WHITELIST_EVENTS=[this.EVENT_VIEW_ITEM,this.EVENT_VIEW_CART,this.EVENT_VIEW_COLLECTION];static HASH_INITIATE_CHECKOUT="initiate-checkout";static HASH_OPEN_CART_DRAWER="open-cart-drawer";static ADD_BUNDLE_CTA_INBOUND_EVENT="letscooee:inbound:cta:add-bundle";static CTA_OPEN_CART_EVENT="letscooee:outbound:open-cart";static CTA_AFTER_REFRESH_UI="letscooee:outbound:refresh-ui";static POPUP_ACTIVITY_EVENT="letscooee:outbound:popup-activities";static THIRD_PARTY_CHECKOUT_EVENT="letscooee:outbound:third-party-initiate-checkout";static CAMPAIGN_DISPLAYED_ACTIVITY="DISPLAYED";static CAMPAIGN_CLICKED_ACTIVITY="CLICKED";static CAMPAIGN_CLOSED_ACTIVITY="CLOSED";static BLACKLISTED_PAGE_NAMES=["collection","product","cart"];static API_CALL_MAX_ATTEMPTS=3;static API_CALL_RETRY_DELAY=1e3;static PLACEHOLDER_IMAGE="https://cdn.global.letscooee.com/images/placeholders/product.png";static CART_UPDATE_BROADCAST="CART_UPDATE";static GRAPHQL_VERSION="2024-10";static GRAPHQL_API_PATH=`/api/${this.GRAPHQL_VERSION}/graphql.json`;static SHADOW_SPLITTER=":shadow";static CAMPAIGN_ATTRIBUTE="_letscooee_campaign";static CONTENT_ATTRIBUTE="_letscooee_content";static VIA="_via";static PAYMENT_MODAL_DETAILS=[{identifier:"#flo-checkout-wrapper",gateway:"Shopflow"},{identifier:"#fastrr-main-container",gateway:"Shiprocket"},{identifier:"#gokwik-modal-wrapper",gateway:"Gokwik"},{identifier:"#zecpe",gateway:"Ecom 360"}];static{let e=bo.SDK_VERSION.split(".").map(r=>r.padStart(2,"0")).join("");bo.SDK_VERSION_CODE=parseInt(e,10)}},Ge={apiURL:"https://api.sdk.letscooee.com",debug:!1,mode:"production",styleURL:`https://cdn.jsdelivr.net/npm/@letscooee/web-sdk@${H.SDK_VERSION}/dist/widget.min.css`,widgetURL:`https://cdn.jsdelivr.net/npm/@letscooee/web-sdk@${H.SDK_VERSION}/dist/widget.min.js`},de=ke(rn()),T=class{static log(...t){de.default.info(...t)}static debug(...t){de.default.debug(...t)}static error(...t){de.default.error(...t)}static warn(...t){de.default.warn(...t)}static info(...t){de.default.info(...t)}static trace(...t){de.default.trace(...t)}};function gf(t=H.LOG_PREFIX){de.default.useDefaults({formatter:function(r){r.unshift(`${t} (v${H.SDK_VERSION}):`)}});let e=Lu();(e==="1"||e==="on")&&(localStorage.cooeeLogLevel="TRACE"),localStorage.cooeeLogLevel?de.default.setLevel(de.default[localStorage.cooeeLogLevel]):de.default.setLevel(Ge.debug?de.default.TRACE:de.default.OFF)}function Lu(){return new URL(location.href).searchParams?.get("cooee-debug")}function mf(){let t=`
|
|
2
2
|
display: inline-block;
|
|
3
3
|
font-size: 14px;
|
|
4
4
|
background: linear-gradient(90deg, #d52dc8 25%, #2179e2 82%);
|
|
@@ -30,7 +30,7 @@ Event: ${dr(t)}.
|
|
|
30
30
|
Url: ${Bi(t)}`),!0}return!1}function sv(t,e){return e?.length?fh(t).some(r=>cs(r,e)):!1}function ov(t,e){if(!e?.length)return!1;let r=t.transaction;return r?cs(r,e):!1}function av(t,e){if(!e?.length)return!1;let r=Bi(t);return r?cs(r,e):!1}function cv(t,e){if(!e?.length)return!0;let r=Bi(t);return r?cs(r,e):!0}function lv(t=[]){for(let e=t.length-1;e>=0;e--){let r=t[e];if(r&&r.filename!=="<anonymous>"&&r.filename!=="[native code]")return r.filename||null}return null}function Bi(t){try{let e=[...t.exception?.values??[]].reverse().find(r=>r.mechanism?.parent_id===void 0&&r.stacktrace?.frames?.length)?.stacktrace?.frames;return e?lv(e):null}catch{return st&&Q.error(`Cannot extract url for event ${dr(t)}`),null}}function uv(t){return t.exception?.values?.length?!t.message&&!t.exception.values.some(e=>e.stacktrace||e.type&&e.type!=="Error"||e.value):!1}function hv(t,e,r,n,i,s){if(!i.exception?.values||!s||!nr(s.originalException,Error))return;let o=i.exception.values.length>0?i.exception.values[i.exception.values.length-1]:void 0;o&&(i.exception.values=Ao(t,e,n,s.originalException,r,i.exception.values,o,0))}function Ao(t,e,r,n,i,s,o,c){if(s.length>=r+1)return s;let l=[...s];if(nr(n[i],Error)){vl(o,c);let p=t(e,n[i]),g=l.length;yl(p,i,g,c),l=Ao(t,e,r,n[i],i,[p,...l],p,g)}return Array.isArray(n.errors)&&n.errors.forEach((p,g)=>{if(nr(p,Error)){vl(o,c);let h=t(e,p),w=l.length;yl(h,`errors[${g}]`,w,c),l=Ao(t,e,r,p,i,[h,...l],h,w)}}),l}function vl(t,e){t.mechanism=t.mechanism||{type:"generic",handled:!0},t.mechanism=lt(x(x({},t.mechanism),t.type==="AggregateError"&&{is_exception_group:!0}),{exception_id:e})}function yl(t,e,r,n){t.mechanism=t.mechanism||{type:"generic",handled:!0},t.mechanism=lt(x({},t.mechanism),{type:"chained",source:e,exception_id:r,parent_id:n})}function pv(t){let e="console";Or(e,t),Nr(e,dv)}function dv(){"console"in _t&&Nf.forEach(function(t){t in _t.console&&ne(_t.console,t,function(e){return Li[t]=e,function(...r){_e("console",{args:r,level:t}),Li[t]?.apply(_t.console,r)}})})}function fv(t){return t==="warn"?"warning":["fatal","error","warning","log","info","debug"].includes(t)?t:"log"}var gv="Dedupe",mv=()=>{let t;return{name:gv,processEvent(e){if(e.type)return e;try{if(yv(e,t))return st&&Q.warn("Event dropped due to being a duplicate of previously captured event."),null}catch{}return t=e}}},vv=mv;function yv(t,e){return e?!!(bv(t,e)||wv(t,e)):!1}function bv(t,e){let r=t.message,n=e.message;return!(!r&&!n||r&&!n||!r&&n||r!==n||!_h(t,e)||!wh(t,e))}function wv(t,e){let r=bl(e),n=bl(t);return!(!r||!n||r.type!==n.type||r.value!==n.value||!_h(t,e)||!wh(t,e))}function wh(t,e){let r=Uc(t),n=Uc(e);if(!r&&!n)return!0;if(r&&!n||!r&&n||(r=r,n=n,n.length!==r.length))return!1;for(let i=0;i<n.length;i++){let s=n[i],o=r[i];if(s.filename!==o.filename||s.lineno!==o.lineno||s.colno!==o.colno||s.function!==o.function)return!1}return!0}function _h(t,e){let r=t.fingerprint,n=e.fingerprint;if(!r&&!n)return!0;if(r&&!n||!r&&n)return!1;r=r,n=n;try{return r.join("")===n.join("")}catch{return!1}}function bl(t){return t.exception?.values?.[0]}function Vs(t){if(!t)return{};let e=t.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!e)return{};let r=e[6]||"",n=e[8]||"";return{host:e[4],path:e[5],protocol:e[2],search:r,hash:n,relative:e[5]+r+n}}function Eh(t){if(t!==void 0)return t>=400&&t<500?"warning":t>=500?"error":void 0}var jn=_t;function _v(){return"history"in jn&&!!jn.history}function Ev(){if(!("fetch"in jn))return!1;try{return new Headers,new Request("http://www.example.com"),new Response,!0}catch{return!1}}function Oo(t){return t&&/^function\s+\w+\(\)\s+\{\s+\[native code\]\s+\}$/.test(t.toString())}function Sv(){if(typeof EdgeRuntime=="string")return!0;if(!Ev())return!1;if(Oo(jn.fetch))return!0;let t=!1,e=jn.document;if(e&&typeof e.createElement=="function")try{let r=e.createElement("iframe");r.hidden=!0,e.head.appendChild(r),r.contentWindow?.fetch&&(t=Oo(r.contentWindow.fetch)),e.head.removeChild(r)}catch(r){st&&Q.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",r)}return t}function Iv(t,e){let r="fetch";Or(r,t),Nr(r,()=>Cv(void 0,e))}function Cv(t,e=!1){e&&!Sv()||ne(_t,"fetch",function(r){return function(...n){let i=new Error,{method:s,url:o}=Tv(n),c={args:n,fetchData:{method:s,url:o},startTimestamp:Ve()*1e3,virtualError:i,headers:xv(n)};return t||_e("fetch",x({},c)),r.apply(_t,n).then(async l=>(t?t(l):_e("fetch",lt(x({},c),{endTimestamp:Ve()*1e3,response:l})),l),l=>{if(_e("fetch",lt(x({},c),{endTimestamp:Ve()*1e3,error:l})),va(l)&&l.stack===void 0&&(l.stack=i.stack,Ir(l,"framesToPop",1)),l instanceof TypeError&&(l.message==="Failed to fetch"||l.message==="Load failed"||l.message==="NetworkError when attempting to fetch resource."))try{let p=new URL(c.fetchData.url);l.message=`${l.message} (${p.host})`}catch{}throw l})}})}function No(t,e){return!!t&&typeof t=="object"&&!!t[e]}function wl(t){return typeof t=="string"?t:t?No(t,"url")?t.url:t.toString?t.toString():"":""}function Tv(t){if(t.length===0)return{method:"GET",url:""};if(t.length===2){let[r,n]=t;return{url:wl(r),method:No(n,"method")?String(n.method).toUpperCase():"GET"}}let e=t[0];return{url:wl(e),method:No(e,"method")?String(e.method).toUpperCase():"GET"}}function xv(t){let[e,r]=t;try{if(typeof r=="object"&&r!==null&&"headers"in r&&r.headers)return new Headers(r.headers);if(Kf(e))return new Headers(e.headers)}catch{}}function Dv(){return"npm"}var Ht=_t,ko=0;function Sh(){return ko>0}function Av(){ko++,setTimeout(()=>{ko--})}function Yr(t,e={}){function r(i){return typeof i=="function"}if(!r(t))return t;try{let i=t.__sentry_wrapped__;if(i)return typeof i=="function"?i:t;if(_a(t))return t}catch{return t}let n=function(...i){try{let s=i.map(o=>Yr(o,e));return t.apply(this,s)}catch(s){throw Av(),fg(o=>{o.addEventProcessor(c=>(e.mechanism&&(_o(c,void 0,void 0),Gr(c,e.mechanism)),c.extra=lt(x({},c.extra),{arguments:i}),c)),Im(s)}),s}};try{for(let i in t)Object.prototype.hasOwnProperty.call(t,i)&&(n[i]=t[i])}catch{}Ju(n,t),Ir(t,"__sentry_wrapped__",n);try{Object.getOwnPropertyDescriptor(n,"name").configurable&&Object.defineProperty(n,"name",{get(){return t.name}})}catch{}return n}function Ov(){let t=Yu(),{referrer:e}=Ht.document||{},{userAgent:r}=Ht.navigator||{},n=x(x({},e&&{Referer:e}),r&&{"User-Agent":r});return{url:t,headers:n}}function Ca(t,e){let r=Ta(t,e),n={type:Lv(e),value:Mv(e)};return r.length&&(n.stacktrace={frames:r}),n.type===void 0&&n.value===""&&(n.value="Unrecoverable error caught"),n}function Nv(t,e,r,n){let i=Jt()?.getOptions().normalizeDepth,s=Fv(e),o={__serialized__:ch(e,i)};if(s)return{exception:{values:[Ca(t,s)]},extra:o};let c={exception:{values:[{type:os(e)?e.constructor.name:n?"UnhandledRejection":"Error",value:jv(e,{isUnhandledRejection:n})}]},extra:o};if(r){let l=Ta(t,r);l.length&&(c.exception.values[0].stacktrace={frames:l})}return c}function qs(t,e){return{exception:{values:[Ca(t,e)]}}}function Ta(t,e){let r=e.stacktrace||e.stack||"",n=Pv(e),i=Rv(e);try{return t(r,n,i)}catch{}return[]}var kv=/Minified React error #\d+;/i;function Pv(t){return t&&kv.test(t.message)?1:0}function Rv(t){return typeof t.framesToPop=="number"?t.framesToPop:0}function Ih(t){return typeof WebAssembly<"u"&&typeof WebAssembly.Exception<"u"?t instanceof WebAssembly.Exception:!1}function Lv(t){let e=t?.name;return!e&&Ih(t)?t.message&&Array.isArray(t.message)&&t.message.length==2?t.message[0]:"WebAssembly.Exception":e}function Mv(t){let e=t?.message;return Ih(t)?Array.isArray(t.message)&&t.message.length==2?t.message[1]:"wasm exception":e?e.error&&typeof e.error.message=="string"?e.error.message:e:"No error message"}function Uv(t,e,r,n){let i=r?.syntheticException||void 0,s=xa(t,e,i,n);return Gr(s),s.level="error",r?.event_id&&(s.event_id=r.event_id),Cr(s)}function Bv(t,e,r="info",n,i){let s=n?.syntheticException||void 0,o=Po(t,e,s,i);return o.level=r,n?.event_id&&(o.event_id=n.event_id),Cr(o)}function xa(t,e,r,n,i){let s;if(Gu(e)&&e.error)return qs(t,e.error);if(jc(e)||qf(e)){let o=e;if("stack"in e)s=qs(t,e);else{let c=o.name||(jc(o)?"DOMError":"DOMException"),l=o.message?`${c}: ${o.message}`:c;s=Po(t,l,r,n),_o(s,l)}return"code"in o&&(s.tags=lt(x({},s.tags),{"DOMException.code":`${o.code}`})),s}return va(e)?qs(t,e):Bn(e)||os(e)?(s=Nv(t,e,r,i),Gr(s,{synthetic:!0}),s):(s=Po(t,e,r,n),_o(s,`${e}`,void 0),Gr(s,{synthetic:!0}),s)}function Po(t,e,r,n){let i={};if(n&&r){let s=Ta(t,r);s.length&&(i.exception={values:[{value:e,stacktrace:{frames:s}}]}),Gr(i,{synthetic:!0})}if(ya(e)){let{__sentry_template_string__:s,__sentry_template_values__:o}=e;return i.logentry={message:s,params:o},i}return i.message=e,i}function jv(t,{isUnhandledRejection:e}){let r=Zf(t),n=e?"promise rejection":"exception";return Gu(t)?`Event \`ErrorEvent\` captured as ${n} with message \`${t.message}\``:os(t)?`Event \`${$v(t)}\` (type=${t.type}) captured as ${n}`:`Object captured as ${n} with keys: ${r}`}function $v(t){try{let e=Object.getPrototypeOf(t);return e?e.constructor.name:void 0}catch{}}function Fv(t){for(let e in t)if(Object.prototype.hasOwnProperty.call(t,e)){let r=t[e];if(r instanceof Error)return r}}var Hv=5e3,Vv=class extends Rm{constructor(t){let e=qv(t),r=Ht.SENTRY_SDK_SOURCE||Dv();Ym(e,"browser",["browser"],r),super(e);let{sendDefaultPii:n,sendClientReports:i,enableLogs:s,_experiments:o}=this._options,c=s??o?.enableLogs;Ht.document&&(i||c)&&Ht.document.addEventListener("visibilitychange",()=>{Ht.document.visibilityState==="hidden"&&(i&&this._flushOutcomes(),c&&Hs(this))}),c&&(this.on("flush",()=>{Hs(this)}),this.on("afterCaptureLog",()=>{this._logFlushIdleTimeout&&clearTimeout(this._logFlushIdleTimeout),this._logFlushIdleTimeout=setTimeout(()=>{Hs(this)},Hv)})),n&&(this.on("postprocessEvent",zm),this.on("beforeSendSession",Km))}eventFromException(t,e){return Uv(this._options.stackParser,t,e,this._options.attachStacktrace)}eventFromMessage(t,e="info",r){return Bv(this._options.stackParser,t,e,r,this._options.attachStacktrace)}_prepareEvent(t,e,r,n){return t.platform=t.platform||"javascript",super._prepareEvent(t,e,r,n)}};function qv(t){return x({release:typeof __SENTRY_RELEASE__=="string"?__SENTRY_RELEASE__:Ht.SENTRY_RELEASE?.id,sendClientReports:!0,parentSpanIsAlwaysRootSpan:!0},t)}var Wv=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,Yt=_t,Gv=1e3,_l,Ro,Lo;function zv(t){let e="dom";Or(e,t),Nr(e,Kv)}function Kv(){if(!Yt.document)return;let t=_e.bind(null,"dom"),e=El(t,!0);Yt.document.addEventListener("click",e,!1),Yt.document.addEventListener("keypress",e,!1),["EventTarget","Node"].forEach(r=>{let n=Yt[r]?.prototype;n?.hasOwnProperty?.("addEventListener")&&(ne(n,"addEventListener",function(i){return function(s,o,c){if(s==="click"||s=="keypress")try{let l=this.__sentry_instrumentation_handlers__=this.__sentry_instrumentation_handlers__||{},p=l[s]=l[s]||{refCount:0};if(!p.handler){let g=El(t);p.handler=g,i.call(this,s,g,c)}p.refCount++}catch{}return i.call(this,s,o,c)}}),ne(n,"removeEventListener",function(i){return function(s,o,c){if(s==="click"||s=="keypress")try{let l=this.__sentry_instrumentation_handlers__||{},p=l[s];p&&(p.refCount--,p.refCount<=0&&(i.call(this,s,p.handler,c),p.handler=void 0,delete l[s]),Object.keys(l).length===0&&delete this.__sentry_instrumentation_handlers__)}catch{}return i.call(this,s,o,c)}}))})}function Yv(t){if(t.type!==Ro)return!1;try{if(!t.target||t.target._sentryId!==Lo)return!1}catch{}return!0}function Jv(t,e){return t!=="keypress"?!1:e?.tagName?!(e.tagName==="INPUT"||e.tagName==="TEXTAREA"||e.isContentEditable):!0}function El(t,e=!1){return r=>{if(!r||r._sentryCaptured)return;let n=Xv(r);if(Jv(r.type,n))return;Ir(r,"_sentryCaptured",!0),n&&!n._sentryId&&Ir(n,"_sentryId",ge());let i=r.type==="keypress"?"input":r.type;Yv(r)||(t({event:r,name:i,global:e}),Ro=r.type,Lo=n?n._sentryId:void 0),clearTimeout(_l),_l=Yt.setTimeout(()=>{Lo=void 0,Ro=void 0},Gv)}}function Xv(t){try{return t.target}catch{return null}}var gi;function Ch(t){let e="history";Or(e,t),Nr(e,Qv)}function Qv(){if(Yt.addEventListener("popstate",()=>{let e=Yt.location.href,r=gi;gi=e,r!==e&&_e("history",{from:r,to:e})}),!_v())return;function t(e){return function(...r){let n=r.length>2?r[2]:void 0;if(n){let i=gi,s=Zv(String(n));if(gi=s,i===s)return e.apply(this,r);_e("history",{from:i,to:s})}return e.apply(this,r)}}ne(Yt.history,"pushState",t),ne(Yt.history,"replaceState",t)}function Zv(t){try{return new URL(t,Yt.location.origin).toString()}catch{return t}}var Di={};function ty(t){let e=Di[t];if(e)return e;let r=Yt[t];if(Oo(r))return Di[t]=r.bind(Yt);let n=Yt.document;if(n&&typeof n.createElement=="function")try{let i=n.createElement("iframe");i.hidden=!0,n.head.appendChild(i);let s=i.contentWindow;s?.[t]&&(r=s[t]),n.head.removeChild(i)}catch(i){Wv&&Q.warn(`Could not create sandbox iframe for ${t} check, bailing to window.${t}: `,i)}return r&&(Di[t]=r.bind(Yt))}function Sl(t){Di[t]=void 0}var An="__sentry_xhr_v3__";function ey(t){let e="xhr";Or(e,t),Nr(e,ry)}function ry(){if(!Yt.XMLHttpRequest)return;let t=XMLHttpRequest.prototype;t.open=new Proxy(t.open,{apply(e,r,n){let i=new Error,s=Ve()*1e3,o=He(n[0])?n[0].toUpperCase():void 0,c=ny(n[1]);if(!o||!c)return e.apply(r,n);r[An]={method:o,url:c,request_headers:{}},o==="POST"&&c.match(/sentry_key/)&&(r.__sentry_own_request__=!0);let l=()=>{let p=r[An];if(p&&r.readyState===4){try{p.status_code=r.status}catch{}let g={endTimestamp:Ve()*1e3,startTimestamp:s,xhr:r,virtualError:i};_e("xhr",g)}};return"onreadystatechange"in r&&typeof r.onreadystatechange=="function"?r.onreadystatechange=new Proxy(r.onreadystatechange,{apply(p,g,h){return l(),p.apply(g,h)}}):r.addEventListener("readystatechange",l),r.setRequestHeader=new Proxy(r.setRequestHeader,{apply(p,g,h){let[w,y]=h,b=g[An];return b&&He(w)&&He(y)&&(b.request_headers[w.toLowerCase()]=y),p.apply(g,h)}}),e.apply(r,n)}}),t.send=new Proxy(t.send,{apply(e,r,n){let i=r[An];if(!i)return e.apply(r,n);n[0]!==void 0&&(i.body=n[0]);let s={startTimestamp:Ve()*1e3,xhr:r};return _e("xhr",s),e.apply(r,n)}})}function ny(t){if(He(t))return t;try{return t.toString()}catch{}}function iy(t,e=ty("fetch")){let r=0,n=0;function i(s){let o=s.body.length;r+=o,n++;let c=x({body:s.body,method:"POST",referrerPolicy:"strict-origin",headers:t.headers,keepalive:r<=6e4&&n<15},t.fetchOptions);if(!e)return Sl("fetch"),Ui("No fetch implementation available");try{return e(t.url,c).then(l=>(r-=o,n--,{statusCode:l.status,headers:{"x-sentry-rate-limits":l.headers.get("X-Sentry-Rate-Limits"),"retry-after":l.headers.get("Retry-After")}}))}catch(l){return Sl("fetch"),r-=o,n--,Ui(l)}}return Gm(t,i)}var sy=30,oy=50;function Mo(t,e,r,n){let i={filename:t,function:e==="<anonymous>"?Sr:e,in_app:!0};return r!==void 0&&(i.lineno=r),n!==void 0&&(i.colno=n),i}var ay=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,cy=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,ly=/\((\S*)(?::(\d+))(?::(\d+))\)/,uy=t=>{let e=ay.exec(t);if(e){let[,n,i,s]=e;return Mo(n,Sr,+i,+s)}let r=cy.exec(t);if(r){if(r[2]&&r[2].indexOf("eval")===0){let s=ly.exec(r[2]);s&&(r[2]=s[1],r[3]=s[2],r[4]=s[3])}let[n,i]=Th(r[1]||Sr,r[2]);return Mo(i,n,r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}},hy=[sy,uy],py=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,dy=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,fy=t=>{let e=py.exec(t);if(e){if(e[3]&&e[3].indexOf(" > eval")>-1){let i=dy.exec(e[3]);i&&(e[1]=e[1]||"eval",e[3]=i[1],e[4]=i[2],e[5]="")}let r=e[3],n=e[1]||Sr;return[n,r]=Th(n,r),Mo(r,n,e[4]?+e[4]:void 0,e[5]?+e[5]:void 0)}},gy=[oy,fy],my=[hy,gy],vy=Bf(...my),Th=(t,e)=>{let r=t.indexOf("safari-extension")!==-1,n=t.indexOf("safari-web-extension")!==-1;return r||n?[t.indexOf("@")!==-1?t.split("@")[0]:Sr,r?`safari-extension:${e}`:`safari-web-extension:${e}`]:[t,e]},Da=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,mi=1024,yy="Breadcrumbs",by=(t={})=>{let e=x({console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0},t);return{name:yy,setup(r){e.console&&pv(Sy(r)),e.dom&&zv(Ey(r,e.dom)),e.xhr&&ey(Iy(r)),e.fetch&&Iv(Cy(r)),e.history&&Ch(Ty(r)),e.sentry&&r.on("beforeSendEvent",_y(r))}}},wy=by;function _y(t){return function(e){Jt()===t&&Tr({category:`sentry.${e.type==="transaction"?"transaction":"event"}`,event_id:e.event_id,level:e.level,message:dr(e)},{event:e})}}function Ey(t,e){return function(r){if(Jt()!==t)return;let n,i,s=typeof e=="object"?e.serializeAttribute:void 0,o=typeof e=="object"&&typeof e.maxStringLength=="number"?e.maxStringLength:void 0;o&&o>mi&&(Da&&Q.warn(`\`dom.maxStringLength\` cannot exceed ${mi}, but a value of ${o} was configured. Sentry will use ${mi} instead.`),o=mi),typeof s=="string"&&(s=[s]);try{let l=r.event,p=xy(l)?l.target:l;n=Ku(p,{keyAttrs:s,maxStringLength:o}),i=Xf(p)}catch{n="<unknown>"}if(n.length===0)return;let c={category:`ui.${r.name}`,message:n};i&&(c.data={"ui.component_name":i}),Tr(c,{event:r.event,name:r.name,global:r.global})}}function Sy(t){return function(e){if(Jt()!==t)return;let r={category:"console",data:{arguments:e.args,logger:"console"},level:fv(e.level),message:$c(e.args," ")};if(e.level==="assert")if(e.args[0]===!1)r.message=`Assertion failed: ${$c(e.args.slice(1)," ")||"console.assert"}`,r.data.arguments=e.args.slice(1);else return;Tr(r,{input:e.args,level:e.level})}}function Iy(t){return function(e){if(Jt()!==t)return;let{startTimestamp:r,endTimestamp:n}=e,i=e.xhr[An];if(!r||!n||!i)return;let{method:s,url:o,status_code:c,body:l}=i,p={method:s,url:o,status_code:c},g={xhr:e.xhr,input:l,startTimestamp:r,endTimestamp:n},h={category:"xhr",data:p,type:"http",level:Eh(c)};t.emit("beforeOutgoingRequestBreadcrumb",h,g),Tr(h,g)}}function Cy(t){return function(e){if(Jt()!==t)return;let{startTimestamp:r,endTimestamp:n}=e;if(n&&!(e.fetchData.url.match(/sentry_key/)&&e.fetchData.method==="POST"))if(e.fetchData.method,e.fetchData.url,e.error){let i=e.fetchData,s={data:e.error,input:e.args,startTimestamp:r,endTimestamp:n},o={category:"fetch",data:i,level:"error",type:"http"};t.emit("beforeOutgoingRequestBreadcrumb",o,s),Tr(o,s)}else{let i=e.response,s=lt(x({},e.fetchData),{status_code:i?.status});e.fetchData.request_body_size,e.fetchData.response_body_size,i?.status;let o={input:e.args,response:i,startTimestamp:r,endTimestamp:n},c={category:"fetch",data:s,type:"http",level:Eh(s.status_code)};t.emit("beforeOutgoingRequestBreadcrumb",c,o),Tr(c,o)}}}function Ty(t){return function(e){if(Jt()!==t)return;let r=e.from,n=e.to,i=Vs(Ht.location.href),s=r?Vs(r):void 0,o=Vs(n);s?.path||(s=i),i.protocol===o.protocol&&i.host===o.host&&(n=o.relative),i.protocol===s.protocol&&i.host===s.host&&(r=s.relative),Tr({category:"navigation",data:{from:r,to:n}})}}function xy(t){return!!t&&!!t.target}var Dy=["EventTarget","Window","Node","ApplicationCache","AudioTrackList","BroadcastChannel","ChannelMergerNode","CryptoOperation","EventSource","FileReader","HTMLUnknownElement","IDBDatabase","IDBRequest","IDBTransaction","KeyOperation","MediaController","MessagePort","ModalWindow","Notification","SVGElementInstance","Screen","SharedWorker","TextTrack","TextTrackCue","TextTrackList","WebSocket","WebSocketWorker","Worker","XMLHttpRequest","XMLHttpRequestEventTarget","XMLHttpRequestUpload"],Ay="BrowserApiErrors",Oy=(t={})=>{let e=x({XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0,unregisterOriginalCallbacks:!1},t);return{name:Ay,setupOnce(){e.setTimeout&&ne(Ht,"setTimeout",Il),e.setInterval&&ne(Ht,"setInterval",Il),e.requestAnimationFrame&&ne(Ht,"requestAnimationFrame",ky),e.XMLHttpRequest&&"XMLHttpRequest"in Ht&&ne(XMLHttpRequest.prototype,"send",Py);let r=e.eventTarget;r&&(Array.isArray(r)?r:Dy).forEach(n=>Ry(n,e))}}},Ny=Oy;function Il(t){return function(...e){let r=e[0];return e[0]=Yr(r,{mechanism:{data:{function:rr(t)},handled:!1,type:"instrument"}}),t.apply(this,e)}}function ky(t){return function(e){return t.apply(this,[Yr(e,{mechanism:{data:{function:"requestAnimationFrame",handler:rr(t)},handled:!1,type:"instrument"}})])}}function Py(t){return function(...e){let r=this;return["onload","onerror","onprogress","onreadystatechange"].forEach(n=>{n in r&&typeof r[n]=="function"&&ne(r,n,function(i){let s={mechanism:{data:{function:n,handler:rr(i)},handled:!1,type:"instrument"}},o=_a(i);return o&&(s.mechanism.data.handler=rr(o)),Yr(i,s)})}),t.apply(this,e)}}function Ry(t,e){let r=Ht[t]?.prototype;r?.hasOwnProperty?.("addEventListener")&&(ne(r,"addEventListener",function(n){return function(i,s,o){try{Ly(s)&&(s.handleEvent=Yr(s.handleEvent,{mechanism:{data:{function:"handleEvent",handler:rr(s),target:t},handled:!1,type:"instrument"}}))}catch{}return e.unregisterOriginalCallbacks&&My(this,i,s),n.apply(this,[i,Yr(s,{mechanism:{data:{function:"addEventListener",handler:rr(s),target:t},handled:!1,type:"instrument"}}),o])}}),ne(r,"removeEventListener",function(n){return function(i,s,o){try{let c=s.__sentry_wrapped__;c&&n.call(this,i,c,o)}catch{}return n.call(this,i,s,o)}}))}function Ly(t){return typeof t.handleEvent=="function"}function My(t,e,r){t&&typeof t=="object"&&"removeEventListener"in t&&typeof t.removeEventListener=="function"&&t.removeEventListener(e,r)}var Uy=()=>({name:"BrowserSession",setupOnce(){if(typeof Ht.document>"u"){Da&&Q.warn("Using the `browserSessionIntegration` in non-browser environments is not supported.");return}ol({ignoreDuration:!0}),al(),Ch(({from:t,to:e})=>{t!==void 0&&t!==e&&(ol({ignoreDuration:!0}),al())})}}),By="GlobalHandlers",jy=(t={})=>{let e=x({onerror:!0,onunhandledrejection:!0},t);return{name:By,setupOnce(){Error.stackTraceLimit=50},setup(r){e.onerror&&(Fy(r),Cl("onerror")),e.onunhandledrejection&&(Hy(r),Cl("onunhandledrejection"))}}},$y=jy;function Fy(t){$f(e=>{let{stackParser:r,attachStacktrace:n}=xh();if(Jt()!==t||Sh())return;let{msg:i,url:s,line:o,column:c,error:l}=e,p=Wy(xa(r,l||i,void 0,n,!1),s,o,c);p.level="error",uh(p,{originalException:l,mechanism:{handled:!1,type:"onerror"}})})}function Hy(t){Hf(e=>{let{stackParser:r,attachStacktrace:n}=xh();if(Jt()!==t||Sh())return;let i=Vy(e),s=ba(i)?qy(i):xa(r,i,void 0,n,!0);s.level="error",uh(s,{originalException:i,mechanism:{handled:!1,type:"onunhandledrejection"}})})}function Vy(t){if(ba(t))return t;try{if("reason"in t)return t.reason;if("detail"in t&&"reason"in t.detail)return t.detail.reason}catch{}return t}function qy(t){return{exception:{values:[{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(t)}`}]}}}function Wy(t,e,r,n){let i=t.exception=t.exception||{},s=i.values=i.values||[],o=s[0]=s[0]||{},c=o.stacktrace=o.stacktrace||{},l=c.frames=c.frames||[],p=n,g=r,h=He(e)&&e.length>0?e:Yu();return l.length===0&&l.push({colno:p,filename:h,function:Sr,in_app:!0,lineno:g}),t}function Cl(t){Da&&Q.log(`Global Handler attached: ${t}`)}function xh(){return Jt()?.getOptions()||{stackParser:()=>[],attachStacktrace:!1}}var Gy=()=>({name:"HttpContext",preprocessEvent(t){if(!Ht.navigator&&!Ht.location&&!Ht.document)return;let e=Ov(),r=x(x({},e.headers),t.request?.headers);t.request=lt(x(x({},e),t.request),{headers:r})}}),zy="cause",Ky=5,Yy="LinkedErrors",Jy=(t={})=>{let e=t.limit||Ky,r=t.key||zy;return{name:Yy,preprocessEvent(n,i,s){let o=s.getOptions();hv(Ca,o.stackParser,r,e,n,i)}}},Xy=Jy;function Qy(t){return[nv(),Zm(),Ny(),wy(),$y(),Xy(),vv(),Gy(),Uy()]}var zt=class Dh{static INSTANCE;contexts={};tags;client;user;constructor(){this.init()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Dh),this.INSTANCE}captureError(e,r,n){T.error(`${r}:`,e);let i=this.getNewScope(n);i.setTag("operation",r),i.captureException(e)}captureMessage(e,r,n){this.getNewScope(n).captureMessage(e,r??"error")}async captureFetchFailure(e,r,n){let i="";try{e=e.clone();let o=await e.json();i=JSON.stringify(o)}catch{}if(!i)try{i=await e.text()}catch{}let s=this.getNewScope(n);s.setTag("operation",r),s.setExtra("responseText",i),s.setExtra("statusText",e.statusText),this.captureMessage(`${r} failed with ${e.status}`,"error",n)}setGlobalContext(e,r){this.contexts[e]=x({context:r},this.contexts[e])}setUser(e){this.user=e}setTags(e){this.tags=e}getNewScope(e){e??={};let{extra:r,tags:n}=e,i=new ir;if(i.setClient(this.client),i.setUser(this.user),e.triggerContext&&!e.engagementTrigger&&(e.engagementTrigger=e.triggerContext.triggerData),e.engagementTrigger){let s=e.engagementTrigger;i.setTags({"engagement.id":s.engagementID,"engagement.short_id":s.shortID,"engagement.objective":s.objective,"engagement.delivery_type":s.onsiteDeliveryType,"engagement.content_id":s.contentID,"engagement.variation":s.variation,"engagement.currency":s.currency})}return r&&i.setExtras(r),this.tags&&i.setTags(this.tags),n&&i.setTags(n),Object.keys(this.contexts).forEach(s=>{i.setContext(s,this.contexts[s])}),i.setTag("language",navigator.language),i.setTag("timezone",rb()),this.addShopifyTags(i),i}addShopifyTags(e){window.Shopify&&(e.setTag("shopify.shop",window.Shopify.shop),e.setTag("shopify.currency",window.Shopify.currency?.active),e.setTag("shopify.locale",window.Shopify.locale),e.setTag("theme.schema_name",window.Shopify.theme?.schema_name),e.setTag("theme.schema_version",window.Shopify.theme?.schema_version))}init(){let e=Qy({}).filter(r=>!["BrowserApiErrors","Breadcrumbs","GlobalHandlers"].includes(r.name));this.client=new Vv({dsn:"https://1bc3dda4c861f60cd6be1b67584f4bc6@o559187.ingest.us.sentry.io/4507626484203520",transport:iy,stackParser:vy,integrations:e,environment:Ge.mode,release:`web-sdk@${H.SDK_VERSION}`,debug:Ge.debug}),this.client.init()}},ct=class{static ID="id";static SESSION_LANDING_PAGE="landing";static SESSION_LAST_USED_TIME="lastUsedTime";static SESSION_SYNCED="synced";static APP_CONFIG="conf";static DEVICE_ID="did";static SDK_TOKEN="token";static FIRST_SEEN="firstSeen";static SESSION_NUMBER="sessionNumber";static GA_CLIENT_ID="gacid";static CURRENT_CART="cart";static MUTED="muted"},Tl=ke(pf());function Aa(t){return Tl.default.createInstance({name:"lc",storeName:t,driver:Tl.default.LOCALSTORAGE})}var Oa=class{static storage;static async get(t,e){return await this.storage?.getItem(t)??e}static set(t,e){return this.storage?.setItem(t,e)}static remove(t){return this.storage?.removeItem(t)}static clear(){return this.storage?.clear()}static getForage(){return this.storage}},ee=class extends Oa{static storeName="ses";static{this.storage=Aa(this.storeName)}},Mt=class extends Oa{static storeName="usr";static{this.storage=Aa(this.storeName)}},Zy=class{static format(t,e){let r=/{{\s*(\w+)\s*}}/;return e.replace(r,(n,i)=>{switch(i){case"amount":return this.formatWithDelimiters(t,2);case"amount_no_decimals":return this.formatWithDelimiters(t,0);case"amount_with_comma_separator":return this.formatWithDelimiters(t,2,".",",");case"amount_no_decimals_with_comma_separator":return this.formatWithDelimiters(t,0,".",",");case"amount_with_apostrophe_separator":return this.formatWithDelimiters(t,2,"'",".");case"amount_no_decimals_with_space_separator":return this.formatWithDelimiters(t,0," ");case"amount_with_space_separator":return this.formatWithDelimiters(t,2," ",",");case"amount_with_period_and_space_separator":return this.formatWithDelimiters(t,2," ",".");default:return n}})}static formatWithDelimiters(t,e=2,r=",",n="."){if(isNaN(t)||t==null)return"0";let i=(t/100).toFixed(e).split("."),s=i[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1"+r),o=i[1]?n+i[1]:"";return s+o}},kt=class{isCartDirty=!0;cartEngagements;isGoKwikPopupOpen;previewIDs;previewVariant;pageName;moneyFormat;jsLoadTime=new Date;shopCurrencyCode;locale;activeExperiment;inInactive=!1;lastEnterActive=new Date;lastEnterInactive=null;currentItem;_currencyCode;get currencyCode(){return this._currencyCode}set currencyCode(t){this._currencyCode=t}static get(){return window.CooeeSDK.runtimeData}isInactive(){return this.inInactive}async setInactive(){return this.inInactive?0:(this.inInactive=!0,this.lastEnterInactive=new Date,Math.max((this.lastEnterInactive.getTime()-this.lastEnterActive.getTime())/1e3,0))}setActive(){return this.inInactive?(this.inInactive=!1,this.lastEnterActive=new Date,Math.max((this.lastEnterActive.getTime()-this.lastEnterInactive.getTime())/1e3,0)):0}isFirstActive(){return this.lastEnterInactive==null}getCurrentItem(){return this.currentItem}setCurrentItem(t){this.currentItem=new Ar(t)}};function Ah(t){try{return new URL(t)}catch{return}}function xl(t){return!t||t==="null"||t==="undefined"}function tb(t,e){let r=t.indexOf(e);return r===-1?!1:(t.splice(r,1),!0)}function pe(t,e){if(t==0&&e)return"Free";let r=kt.get(),n=se.get(),i=r.shopCurrencyCode||n.currency,s=r.currencyCode;s||T.warn("Currency code is not set in RuntimeData");let o=n.money?.format??r.moneyFormat,c;if(o&&i===s)c=Zy.format(t*100,o);else{let l;try{l=new Intl.NumberFormat(Oh(),{style:"currency",currency:s||i,minimumFractionDigits:0,maximumFractionDigits:2})}catch(p){return zt.getInstance().captureError(p,"format-currency",{extra:{currentCurrency:s,shopCurrency:i}}),""}c=l.format(t),c=c.replace("\u20B9","Rs. "),n.money?.showCurrency&&s!=="INR"&&(c=c.concat(` ${s}`))}return c}function eb(t){return new Intl.NumberFormat(Oh(),{notation:"compact"}).format(t)}function Oh(){return navigator.languages!==void 0?navigator.languages[0].split("-")[0]:navigator.language??"en"}var vi;function rb(){if(vi)return vi;try{return vi=Intl.DateTimeFormat().resolvedOptions().timeZone,vi}catch{return""}}function Na(t){document.readyState!=="loading"?t():document.addEventListener("DOMContentLoaded",t)}function Me(t){let e=document.createElement("span");e.id="snackbar",e.innerText=t,document.body.appendChild(e),e.className="show",setTimeout(()=>{e.classList.remove("show"),document.body.removeChild(e)},3e3)}async function Nh(t,e=10,r=document){let n=0,i=document.querySelectorAll("nonexistent-tag");for(;n<e;){let s=Math.min(100*2**n,5e3);if(await Gn.sleep(s),i=r.querySelectorAll(t),i.length)return T.debug(`Attempt ${n+1}: ${i.length} elements found with ${t}`),i;T.debug(`Attempt ${n+1}: Elements not found with ${t}. Retrying after ${s}ms.`),n++}return T.warn(`Max attempts reached. Element not found with ${t}.`),i}async function ji(t,e=10,r=document){return(await Nh(t,e,r)).item(0)}function nb(t,e,r=document.body){let n=new MutationObserver(i=>{i.forEach(s=>{s.removedNodes.forEach(o=>{(o===t||o.contains(t))&&(e(),n.disconnect())})})});n.observe(r,{childList:!0})}async function kh(){let t=await Mt.get(ct.DEVICE_ID),e=await ee.get(ct.ID,"");return[{key:"letscooee_did",value:t},{key:"letscooee_sid",value:e},{key:"__letscooee_time",value:new Date().toLocaleString()},{key:"__letscooee_via",value:"Buy Now"}]}function On(t,e,r){Object.defineProperty(t,e,{enumerable:!1,configurable:!1,writable:!1,value:r})}var us,gt,Ph,Rh,fr,Dl,Lh,Mh,Uh,ka,Uo,Bo,ib,$n={},Bh=[],sb=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,hs=Array.isArray;function je(t,e){for(var r in e)t[r]=e[r];return t}function Pa(t){t&&t.parentNode&&t.parentNode.removeChild(t)}function jh(t,e,r){var n,i,s,o={};for(s in e)s=="key"?n=e[s]:s=="ref"?i=e[s]:o[s]=e[s];if(arguments.length>2&&(o.children=arguments.length>3?us.call(arguments,2):r),typeof t=="function"&&t.defaultProps!=null)for(s in t.defaultProps)o[s]===void 0&&(o[s]=t.defaultProps[s]);return Ai(t,o,n,i,null)}function Ai(t,e,r,n,i){var s={type:t,props:e,key:r,ref:n,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++Ph,__i:-1,__u:0};return i==null&>.vnode!=null&>.vnode(s),s}function on(t){return t.children}function yr(t,e){this.props=t,this.context=e}function Jr(t,e){if(e==null)return t.__?Jr(t.__,t.__i+1):null;for(var r;e<t.__k.length;e++)if((r=t.__k[e])!=null&&r.__e!=null)return r.__e;return typeof t.type=="function"?Jr(t):null}function $h(t){var e,r;if((t=t.__)!=null&&t.__c!=null){for(t.__e=t.__c.base=null,e=0;e<t.__k.length;e++)if((r=t.__k[e])!=null&&r.__e!=null){t.__e=t.__c.base=r.__e;break}return $h(t)}}function Al(t){(!t.__d&&(t.__d=!0)&&fr.push(t)&&!$i.__r++||Dl!=gt.debounceRendering)&&((Dl=gt.debounceRendering)||Lh)($i)}function $i(){for(var t,e,r,n,i,s,o,c=1;fr.length;)fr.length>c&&fr.sort(Mh),t=fr.shift(),c=fr.length,t.__d&&(r=void 0,i=(n=(e=t).__v).__e,s=[],o=[],e.__P&&((r=je({},n)).__v=n.__v+1,gt.vnode&>.vnode(r),Ra(e.__P,r,n,e.__n,e.__P.namespaceURI,32&n.__u?[i]:null,s,i??Jr(n),!!(32&n.__u),o),r.__v=n.__v,r.__.__k[r.__i]=r,Vh(s,r,o),r.__e!=i&&$h(r)));$i.__r=0}function Fh(t,e,r,n,i,s,o,c,l,p,g){var h,w,y,b,_,k,A=n&&n.__k||Bh,M=e.length;for(l=ob(r,e,A,l,M),h=0;h<M;h++)(y=r.__k[h])!=null&&(w=y.__i==-1?$n:A[y.__i]||$n,y.__i=h,k=Ra(t,y,w,i,s,o,c,l,p,g),b=y.__e,y.ref&&w.ref!=y.ref&&(w.ref&&La(w.ref,null,y),g.push(y.ref,y.__c||b,y)),_==null&&b!=null&&(_=b),4&y.__u||w.__k===y.__k?l=Hh(y,l,t):typeof y.type=="function"&&k!==void 0?l=k:b&&(l=b.nextSibling),y.__u&=-7);return r.__e=_,l}function ob(t,e,r,n,i){var s,o,c,l,p,g=r.length,h=g,w=0;for(t.__k=new Array(i),s=0;s<i;s++)(o=e[s])!=null&&typeof o!="boolean"&&typeof o!="function"?(l=s+w,(o=t.__k[s]=typeof o=="string"||typeof o=="number"||typeof o=="bigint"||o.constructor==String?Ai(null,o,null,null,null):hs(o)?Ai(on,{children:o},null,null,null):o.constructor==null&&o.__b>0?Ai(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):o).__=t,o.__b=t.__b+1,c=null,(p=o.__i=ab(o,r,l,h))!=-1&&(h--,(c=r[p])&&(c.__u|=2)),c==null||c.__v==null?(p==-1&&(i>g?w--:i<g&&w++),typeof o.type!="function"&&(o.__u|=4)):p!=l&&(p==l-1?w--:p==l+1?w++:(p>l?w--:w++,o.__u|=4))):t.__k[s]=null;if(h)for(s=0;s<g;s++)(c=r[s])!=null&&(2&c.__u)==0&&(c.__e==n&&(n=Jr(c)),Wh(c,c));return n}function Hh(t,e,r){var n,i;if(typeof t.type=="function"){for(n=t.__k,i=0;n&&i<n.length;i++)n[i]&&(n[i].__=t,e=Hh(n[i],e,r));return e}t.__e!=e&&(e&&t.type&&!r.contains(e)&&(e=Jr(t)),r.insertBefore(t.__e,e||null),e=t.__e);do e=e&&e.nextSibling;while(e!=null&&e.nodeType==8);return e}function ab(t,e,r,n){var i,s,o=t.key,c=t.type,l=e[r];if(l===null&&t.key==null||l&&o==l.key&&c==l.type&&(2&l.__u)==0)return r;if(n>(l!=null&&(2&l.__u)==0?1:0))for(i=r-1,s=r+1;i>=0||s<e.length;){if(i>=0){if((l=e[i])&&(2&l.__u)==0&&o==l.key&&c==l.type)return i;i--}if(s<e.length){if((l=e[s])&&(2&l.__u)==0&&o==l.key&&c==l.type)return s;s++}}return-1}function Ol(t,e,r){e[0]=="-"?t.setProperty(e,r??""):t[e]=r==null?"":typeof r!="number"||sb.test(e)?r:r+"px"}function yi(t,e,r,n,i){var s,o;t:if(e=="style")if(typeof r=="string")t.style.cssText=r;else{if(typeof n=="string"&&(t.style.cssText=n=""),n)for(e in n)r&&e in r||Ol(t.style,e,"");if(r)for(e in r)n&&r[e]==n[e]||Ol(t.style,e,r[e])}else if(e[0]=="o"&&e[1]=="n")s=e!=(e=e.replace(Uh,"$1")),o=e.toLowerCase(),e=o in t||e=="onFocusOut"||e=="onFocusIn"?o.slice(2):e.slice(2),t.l||(t.l={}),t.l[e+s]=r,r?n?r.u=n.u:(r.u=ka,t.addEventListener(e,s?Bo:Uo,s)):t.removeEventListener(e,s?Bo:Uo,s);else{if(i=="http://www.w3.org/2000/svg")e=e.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if(e!="width"&&e!="height"&&e!="href"&&e!="list"&&e!="form"&&e!="tabIndex"&&e!="download"&&e!="rowSpan"&&e!="colSpan"&&e!="role"&&e!="popover"&&e in t)try{t[e]=r??"";break t}catch{}typeof r=="function"||(r==null||r===!1&&e[4]!="-"?t.removeAttribute(e):t.setAttribute(e,e=="popover"&&r==1?"":r))}}function Nl(t){return function(e){if(this.l){var r=this.l[e.type+t];if(e.t==null)e.t=ka++;else if(e.t<r.u)return;return r(gt.event?gt.event(e):e)}}}function Ra(t,e,r,n,i,s,o,c,l,p){var g,h,w,y,b,_,k,A,M,G,j,Z,Et,At,q,it,tt,rt=e.type;if(e.constructor!=null)return null;128&r.__u&&(l=!!(32&r.__u),s=[c=e.__e=r.__e]),(g=gt.__b)&&g(e);t:if(typeof rt=="function")try{if(A=e.props,M="prototype"in rt&&rt.prototype.render,G=(g=rt.contextType)&&n[g.__c],j=g?G?G.props.value:g.__:n,r.__c?k=(h=e.__c=r.__c).__=h.__E:(M?e.__c=h=new rt(A,j):(e.__c=h=new yr(A,j),h.constructor=rt,h.render=lb),G&&G.sub(h),h.props=A,h.state||(h.state={}),h.context=j,h.__n=n,w=h.__d=!0,h.__h=[],h._sb=[]),M&&h.__s==null&&(h.__s=h.state),M&&rt.getDerivedStateFromProps!=null&&(h.__s==h.state&&(h.__s=je({},h.__s)),je(h.__s,rt.getDerivedStateFromProps(A,h.__s))),y=h.props,b=h.state,h.__v=e,w)M&&rt.getDerivedStateFromProps==null&&h.componentWillMount!=null&&h.componentWillMount(),M&&h.componentDidMount!=null&&h.__h.push(h.componentDidMount);else{if(M&&rt.getDerivedStateFromProps==null&&A!==y&&h.componentWillReceiveProps!=null&&h.componentWillReceiveProps(A,j),!h.__e&&h.shouldComponentUpdate!=null&&h.shouldComponentUpdate(A,h.__s,j)===!1||e.__v==r.__v){for(e.__v!=r.__v&&(h.props=A,h.state=h.__s,h.__d=!1),e.__e=r.__e,e.__k=r.__k,e.__k.some(function(pt){pt&&(pt.__=e)}),Z=0;Z<h._sb.length;Z++)h.__h.push(h._sb[Z]);h._sb=[],h.__h.length&&o.push(h);break t}h.componentWillUpdate!=null&&h.componentWillUpdate(A,h.__s,j),M&&h.componentDidUpdate!=null&&h.__h.push(function(){h.componentDidUpdate(y,b,_)})}if(h.context=j,h.props=A,h.__P=t,h.__e=!1,Et=gt.__r,At=0,M){for(h.state=h.__s,h.__d=!1,Et&&Et(e),g=h.render(h.props,h.state,h.context),q=0;q<h._sb.length;q++)h.__h.push(h._sb[q]);h._sb=[]}else do h.__d=!1,Et&&Et(e),g=h.render(h.props,h.state,h.context),h.state=h.__s;while(h.__d&&++At<25);h.state=h.__s,h.getChildContext!=null&&(n=je(je({},n),h.getChildContext())),M&&!w&&h.getSnapshotBeforeUpdate!=null&&(_=h.getSnapshotBeforeUpdate(y,b)),it=g,g!=null&&g.type===on&&g.key==null&&(it=qh(g.props.children)),c=Fh(t,hs(it)?it:[it],e,r,n,i,s,o,c,l,p),h.base=e.__e,e.__u&=-161,h.__h.length&&o.push(h),k&&(h.__E=h.__=null)}catch(pt){if(e.__v=null,l||s!=null)if(pt.then){for(e.__u|=l?160:128;c&&c.nodeType==8&&c.nextSibling;)c=c.nextSibling;s[s.indexOf(c)]=null,e.__e=c}else for(tt=s.length;tt--;)Pa(s[tt]);else e.__e=r.__e,e.__k=r.__k;gt.__e(pt,e,r)}else s==null&&e.__v==r.__v?(e.__k=r.__k,e.__e=r.__e):c=e.__e=cb(r.__e,e,r,n,i,s,o,l,p);return(g=gt.diffed)&&g(e),128&e.__u?void 0:c}function Vh(t,e,r){for(var n=0;n<r.length;n++)La(r[n],r[++n],r[++n]);gt.__c&>.__c(e,t),t.some(function(i){try{t=i.__h,i.__h=[],t.some(function(s){s.call(i)})}catch(s){gt.__e(s,i.__v)}})}function qh(t){return typeof t!="object"||t==null||t.__b&&t.__b>0?t:hs(t)?t.map(qh):je({},t)}function cb(t,e,r,n,i,s,o,c,l){var p,g,h,w,y,b,_,k=r.props,A=e.props,M=e.type;if(M=="svg"?i="http://www.w3.org/2000/svg":M=="math"?i="http://www.w3.org/1998/Math/MathML":i||(i="http://www.w3.org/1999/xhtml"),s!=null){for(p=0;p<s.length;p++)if((y=s[p])&&"setAttribute"in y==!!M&&(M?y.localName==M:y.nodeType==3)){t=y,s[p]=null;break}}if(t==null){if(M==null)return document.createTextNode(A);t=document.createElementNS(i,M,A.is&&A),c&&(gt.__m&>.__m(e,s),c=!1),s=null}if(M==null)k===A||c&&t.data==A||(t.data=A);else{if(s=s&&us.call(t.childNodes),k=r.props||$n,!c&&s!=null)for(k={},p=0;p<t.attributes.length;p++)k[(y=t.attributes[p]).name]=y.value;for(p in k)if(y=k[p],p!="children"){if(p=="dangerouslySetInnerHTML")h=y;else if(!(p in A)){if(p=="value"&&"defaultValue"in A||p=="checked"&&"defaultChecked"in A)continue;yi(t,p,null,y,i)}}for(p in A)y=A[p],p=="children"?w=y:p=="dangerouslySetInnerHTML"?g=y:p=="value"?b=y:p=="checked"?_=y:c&&typeof y!="function"||k[p]===y||yi(t,p,y,k[p],i);if(g)c||h&&(g.__html==h.__html||g.__html==t.innerHTML)||(t.innerHTML=g.__html),e.__k=[];else if(h&&(t.innerHTML=""),Fh(e.type=="template"?t.content:t,hs(w)?w:[w],e,r,n,M=="foreignObject"?"http://www.w3.org/1999/xhtml":i,s,o,s?s[0]:r.__k&&Jr(r,0),c,l),s!=null)for(p=s.length;p--;)Pa(s[p]);c||(p="value",M=="progress"&&b==null?t.removeAttribute("value"):b!=null&&(b!==t[p]||M=="progress"&&!b||M=="option"&&b!=k[p])&&yi(t,p,b,k[p],i),p="checked",_!=null&&_!=t[p]&&yi(t,p,_,k[p],i))}return t}function La(t,e,r){try{if(typeof t=="function"){var n=typeof t.__u=="function";n&&t.__u(),n&&e==null||(t.__u=t(e))}else t.current=e}catch(i){gt.__e(i,r)}}function Wh(t,e,r){var n,i;if(gt.unmount&>.unmount(t),(n=t.ref)&&(n.current&&n.current!=t.__e||La(n,null,e)),(n=t.__c)!=null){if(n.componentWillUnmount)try{n.componentWillUnmount()}catch(s){gt.__e(s,e)}n.base=n.__P=null}if(n=t.__k)for(i=0;i<n.length;i++)n[i]&&Wh(n[i],e,r||typeof t.type!="function");r||Pa(t.__e),t.__c=t.__=t.__e=void 0}function lb(t,e,r){return this.constructor(t,r)}function ub(t,e,r){var n,i,s,o;e==document&&(e=document.documentElement),gt.__&>.__(t,e),i=(n=typeof r=="function")?null:r&&r.__k||e.__k,s=[],o=[],Ra(e,t=(!n&&r||e).__k=jh(on,null,[t]),i||$n,$n,e.namespaceURI,!n&&r?[r]:i?null:e.firstChild?us.call(e.childNodes):null,s,!n&&r?r:i?i.__e:e.firstChild,n,o),Vh(s,t,o)}us=Bh.slice,gt={__e:function(t,e,r,n){for(var i,s,o;e=e.__;)if((i=e.__c)&&!i.__)try{if((s=i.constructor)&&s.getDerivedStateFromError!=null&&(i.setState(s.getDerivedStateFromError(t)),o=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(t,n||{}),o=i.__d),o)return i.__E=i}catch(c){t=c}throw t}},Ph=0,Rh=function(t){return t!=null&&t.constructor==null},yr.prototype.setState=function(t,e){var r;r=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=je({},this.state),typeof t=="function"&&(t=t(je({},r),this.props)),t&&je(r,t),t!=null&&this.__v&&(e&&this._sb.push(e),Al(this))},yr.prototype.forceUpdate=function(t){this.__v&&(this.__e=!0,t&&this.__h.push(t),Al(this))},yr.prototype.render=on,fr=[],Lh=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Mh=function(t,e){return t.__v.__b-e.__v.__b},$i.__r=0,Uh=/(PointerCapture)$|Capture$/i,ka=0,Uo=Nl(!1),Bo=Nl(!0),ib=0;var jo,re,Ws,kl,Pl=0,Gh=[],Ut=gt,Rl=Ut.__b,Ll=Ut.__r,Ml=Ut.diffed,Ul=Ut.__c,Bl=Ut.unmount,jl=Ut.__;function hb(t,e){Ut.__h&&Ut.__h(re,t,Pl||e),Pl=0;var r=re.__H||(re.__H={__:[],__h:[]});return t>=r.__.length&&r.__.push({}),r.__[t]}function zh(t,e){var r=hb(jo++,7);return fb(r.__H,e)&&(r.__=t(),r.__H=e,r.__h=t),r.__}function pb(){for(var t;t=Gh.shift();)if(t.__P&&t.__H)try{t.__H.__h.forEach(Oi),t.__H.__h.forEach($o),t.__H.__h=[]}catch(e){t.__H.__h=[],Ut.__e(e,t.__v)}}Ut.__b=function(t){re=null,Rl&&Rl(t)},Ut.__=function(t,e){t&&e.__k&&e.__k.__m&&(t.__m=e.__k.__m),jl&&jl(t,e)},Ut.__r=function(t){Ll&&Ll(t),jo=0;var e=(re=t.__c).__H;e&&(Ws===re?(e.__h=[],re.__h=[],e.__.forEach(function(r){r.__N&&(r.__=r.__N),r.u=r.__N=void 0})):(e.__h.forEach(Oi),e.__h.forEach($o),e.__h=[],jo=0)),Ws=re},Ut.diffed=function(t){Ml&&Ml(t);var e=t.__c;e&&e.__H&&(e.__H.__h.length&&(Gh.push(e)!==1&&kl===Ut.requestAnimationFrame||((kl=Ut.requestAnimationFrame)||db)(pb)),e.__H.__.forEach(function(r){r.u&&(r.__H=r.u),r.u=void 0})),Ws=re=null},Ut.__c=function(t,e){e.some(function(r){try{r.__h.forEach(Oi),r.__h=r.__h.filter(function(n){return!n.__||$o(n)})}catch(n){e.some(function(i){i.__h&&(i.__h=[])}),e=[],Ut.__e(n,r.__v)}}),Ul&&Ul(t,e)},Ut.unmount=function(t){Bl&&Bl(t);var e,r=t.__c;r&&r.__H&&(r.__H.__.forEach(function(n){try{Oi(n)}catch(i){e=i}}),r.__H=void 0,e&&Ut.__e(e,r.__v))};var $l=typeof requestAnimationFrame=="function";function db(t){var e,r=function(){clearTimeout(n),$l&&cancelAnimationFrame(e),setTimeout(t)},n=setTimeout(r,35);$l&&(e=requestAnimationFrame(r))}function Oi(t){var e=re,r=t.__c;typeof r=="function"&&(t.__c=void 0,r()),re=e}function $o(t){var e=re;t.__c=t.__(),re=e}function fb(t,e){return!t||t.length!==e.length||e.some(function(r,n){return r!==t[n]})}var gb=Symbol.for("preact-signals");function Ma(){if(Hr>1)Hr--;else{for(var t,e=!1;Rn!==void 0;){var r=Rn;for(Rn=void 0,Fo++;r!==void 0;){var n=r.o;if(r.o=void 0,r.f&=-3,!(8&r.f)&&Yh(r))try{r.c()}catch(i){e||(t=i,e=!0)}r=n}}if(Fo=0,Hr--,e)throw t}}var wt=void 0,Rn=void 0,Hr=0,Fo=0,Fi=0;function Kh(t){if(wt!==void 0){var e=t.n;if(e===void 0||e.t!==wt)return e={i:0,S:t,p:wt.s,n:void 0,t:wt,e:void 0,x:void 0,r:e},wt.s!==void 0&&(wt.s.n=e),wt.s=e,t.n=e,32&wt.f&&t.S(e),e;if(e.i===-1)return e.i=0,e.n!==void 0&&(e.n.p=e.p,e.p!==void 0&&(e.p.n=e.n),e.p=wt.s,e.n=void 0,wt.s.n=e,wt.s=e),e}}function qt(t){this.v=t,this.i=0,this.n=void 0,this.t=void 0}qt.prototype.brand=gb;qt.prototype.h=function(){return!0};qt.prototype.S=function(t){this.t!==t&&t.e===void 0&&(t.x=this.t,this.t!==void 0&&(this.t.e=t),this.t=t)};qt.prototype.U=function(t){if(this.t!==void 0){var e=t.e,r=t.x;e!==void 0&&(e.x=r,t.e=void 0),r!==void 0&&(r.e=e,t.x=void 0),t===this.t&&(this.t=r)}};qt.prototype.subscribe=function(t){var e=this;return Je(function(){var r=e.value,n=wt;wt=void 0;try{t(r)}finally{wt=n}})};qt.prototype.valueOf=function(){return this.value};qt.prototype.toString=function(){return this.value+""};qt.prototype.toJSON=function(){return this.value};qt.prototype.peek=function(){var t=wt;wt=void 0;try{return this.value}finally{wt=t}};Object.defineProperty(qt.prototype,"value",{get:function(){var t=Kh(this);return t!==void 0&&(t.i=this.i),this.v},set:function(t){if(t!==this.v){if(Fo>100)throw new Error("Cycle detected");this.v=t,this.i++,Fi++,Hr++;try{for(var e=this.t;e!==void 0;e=e.x)e.t.N()}finally{Ma()}}}});function xr(t){return new qt(t)}function Yh(t){for(var e=t.s;e!==void 0;e=e.n)if(e.S.i!==e.i||!e.S.h()||e.S.i!==e.i)return!0;return!1}function Jh(t){for(var e=t.s;e!==void 0;e=e.n){var r=e.S.n;if(r!==void 0&&(e.r=r),e.S.n=e,e.i=-1,e.n===void 0){t.s=e;break}}}function Xh(t){for(var e=t.s,r=void 0;e!==void 0;){var n=e.p;e.i===-1?(e.S.U(e),n!==void 0&&(n.n=e.n),e.n!==void 0&&(e.n.p=n)):r=e,e.S.n=e.r,e.r!==void 0&&(e.r=void 0),e=n}t.s=r}function an(t){qt.call(this,void 0),this.x=t,this.s=void 0,this.g=Fi-1,this.f=4}(an.prototype=new qt).h=function(){if(this.f&=-3,1&this.f)return!1;if((36&this.f)==32||(this.f&=-5,this.g===Fi))return!0;if(this.g=Fi,this.f|=1,this.i>0&&!Yh(this))return this.f&=-2,!0;var t=wt;try{Jh(this),wt=this;var e=this.x();(16&this.f||this.v!==e||this.i===0)&&(this.v=e,this.f&=-17,this.i++)}catch(r){this.v=r,this.f|=16,this.i++}return wt=t,Xh(this),this.f&=-2,!0};an.prototype.S=function(t){if(this.t===void 0){this.f|=36;for(var e=this.s;e!==void 0;e=e.n)e.S.S(e)}qt.prototype.S.call(this,t)};an.prototype.U=function(t){if(this.t!==void 0&&(qt.prototype.U.call(this,t),this.t===void 0)){this.f&=-33;for(var e=this.s;e!==void 0;e=e.n)e.S.U(e)}};an.prototype.N=function(){if(!(2&this.f)){this.f|=6;for(var t=this.t;t!==void 0;t=t.x)t.t.N()}};Object.defineProperty(an.prototype,"value",{get:function(){if(1&this.f)throw new Error("Cycle detected");var t=Kh(this);if(this.h(),t!==void 0&&(t.i=this.i),16&this.f)throw this.v;return this.v}});function mb(t){return new an(t)}function Qh(t){var e=t.u;if(t.u=void 0,typeof e=="function"){Hr++;var r=wt;wt=void 0;try{e()}catch(n){throw t.f&=-2,t.f|=8,Ua(t),n}finally{wt=r,Ma()}}}function Ua(t){for(var e=t.s;e!==void 0;e=e.n)e.S.U(e);t.x=void 0,t.s=void 0,Qh(t)}function vb(t){if(wt!==this)throw new Error("Out-of-order effect");Xh(this),wt=t,this.f&=-2,8&this.f&&Ua(this),Ma()}function Zn(t){this.x=t,this.u=void 0,this.s=void 0,this.o=void 0,this.f=32}Zn.prototype.c=function(){var t=this.S();try{if(8&this.f||this.x===void 0)return;var e=this.x();typeof e=="function"&&(this.u=e)}finally{t()}};Zn.prototype.S=function(){if(1&this.f)throw new Error("Cycle detected");this.f|=1,this.f&=-9,Qh(this),Jh(this),Hr++;var t=wt;return wt=this,vb.bind(this,t)};Zn.prototype.N=function(){2&this.f||(this.f|=2,this.o=Rn,Rn=this)};Zn.prototype.d=function(){this.f|=8,1&this.f||Ua(this)};function Je(t){var e=new Zn(t);try{e.c()}catch(r){throw e.d(),r}return e.d.bind(e)}var Ba,Gs;function cn(t,e){gt[t]=e.bind(null,gt[t]||function(){})}function Hi(t){Gs&&Gs(),Gs=t&&t.S()}function Zh(t){var e=this,r=t.data,n=bb(r);n.value=r;var i=zh(function(){for(var s=e.__v;s=s.__;)if(s.__c){s.__c.__$f|=4;break}return e.__$u.c=function(){var o,c=e.__$u.S(),l=i.value;c(),Rh(l)||((o=e.base)==null?void 0:o.nodeType)!==3?(e.__$f|=1,e.setState({})):e.base.data=l},mb(function(){var o=n.value.value;return o===0?0:o===!0?"":o||""})},[]);return i.value}Zh.displayName="_st";Object.defineProperties(qt.prototype,{constructor:{configurable:!0,value:void 0},type:{configurable:!0,value:Zh},props:{configurable:!0,get:function(){return{data:this}}},__b:{configurable:!0,value:1}});cn("__b",function(t,e){if(typeof e.type=="string"){var r,n=e.props;for(var i in n)if(i!=="children"){var s=n[i];s instanceof qt&&(r||(e.__np=r={}),r[i]=s,n[i]=s.peek())}}t(e)});cn("__r",function(t,e){Hi();var r,n=e.__c;n&&(n.__$f&=-2,(r=n.__$u)===void 0&&(n.__$u=r=function(i){var s;return Je(function(){s=this}),s.c=function(){n.__$f|=1,n.setState({})},s}())),Ba=n,Hi(r),t(e)});cn("__e",function(t,e,r,n){Hi(),Ba=void 0,t(e,r,n)});cn("diffed",function(t,e){Hi(),Ba=void 0;var r;if(typeof e.type=="string"&&(r=e.__e)){var n=e.__np,i=e.props;if(n){var s=r.U;if(s)for(var o in s){var c=s[o];c!==void 0&&!(o in n)&&(c.d(),s[o]=void 0)}else r.U=s={};for(var l in n){var p=s[l],g=n[l];p===void 0?(p=yb(r,l,g,i),s[l]=p):p.o(g,i)}}}t(e)});function yb(t,e,r,n){var i=e in t&&t.ownerSVGElement===void 0,s=xr(r);return{o:function(o,c){s.value=o,n=c},d:Je(function(){var o=s.value.value;n[e]!==o&&(n[e]=o,i?t[e]=o:o?t.setAttribute(e,o):t.removeAttribute(e))})}}cn("unmount",function(t,e){if(typeof e.type=="string"){var r=e.__e;if(r){var n=r.U;if(n){r.U=void 0;for(var i in n){var s=n[i];s&&s.d()}}}}else{var o=e.__c;if(o){var c=o.__$u;c&&(o.__$u=void 0,c.d())}}t(e)});cn("__h",function(t,e,r,n){(n<3||n===9)&&(e.__$f|=2),t(e,r,n)});yr.prototype.shouldComponentUpdate=function(t,e){var r=this.__$u,n=r&&r.s!==void 0;for(var i in e)return!0;if(this.__f||typeof this.u=="boolean"&&this.u===!0){if(!(n||2&this.__$f||4&this.__$f)||1&this.__$f)return!0}else if(!(n||4&this.__$f)||3&this.__$f)return!0;for(var s in t)if(s!=="__source"&&t[s]!==this.props[s])return!0;for(var o in this.props)if(!(o in t))return!0;return!1};function bb(t){return zh(function(){return xr(t)},[])}var wb=class{url;alt;constructor(t){t.alt&&(this.alt=t.alt),this.url=t.url}},_b=class{d;cmp;effective;constructor(t={}){this.d=t.d,this.cmp=t.cmp,this.effective=this.d}},Eb=class{id;mID;name;groupID;groupName;isSelected;constructor(t){t??={},this.id=t.id,this.mID=t.mID,this.name=t.name,this.groupID=t.groupID,this.groupName=t.groupName,this.isSelected=t.isSelected??!1}},ps=class{mID;name;imgs;link;price;sku;isAvailable;quantity;sellingPlans;selectedOptions;selectedSellingPlan;effectivePrice;constructor(t){t=t??{},this.mID=t.mID,this.name=t.name,this.imgs=t.imgs?.map(e=>new wb(e))??[],this.link=t.link,this.price=new _b(t.price),this.sku=t.sku,this.isAvailable=t.isAvailable,this.quantity=t.quantity,this.selectedOptions=t.selectedOptions??[],this.effectivePrice=xr(this.price.effective),t.sellingPlans?.length&&(this.selectedSellingPlan=xr(void 0)),this.sellingPlans=t.sellingPlans?.map(e=>{let r=new Eb(e);return r.isSelected&&(this.selectedSellingPlan.value=r),r})}getOneImage(){return this.imgs[0]?.url}changeSellingPlan(t){this.selectedSellingPlan.value=t}hasEffectivePrice(){return this.effectivePrice.value!==this.price.d}},qe=class{id;mID;name;status;ctg;options;imgs;videos;portraitVideos;vars;desc;sDesc;link;slug;quantity;category;meta;reviews;tags;selectedOrFirstVariant;selected=xr(!0);constructor(t){this.update(t),this.selectedOrFirstVariant=xr(this.selectedVariant)}get firstImageURL(){return this.imgs?.[0]?.url}get secondaryImageURL(){return this.imgs?.[1]?.url}get getVariantImages(){return this.selectedOrFirstVariant.value.imgs}get variantImage(){return this.getVariantImages[0]?.url}get variantSecondaryImage(){return this.getVariantImages[1]?.url}set variants(t){this.vars=t,this.selectedOrFirstVariant.value=this.selectedVariant}get selectedVariant(){return this.vars.find(t=>t.isAvailable)??this.vars[0]}hasVariants(){return this.vars[0]!=null&&this.vars[0].name!=="Default Title"}setSelectedVariant(t){this.selectedOrFirstVariant.value=t}update(t){return this.id=t.id,this.mID=t.mID,this.name=t.name,this.status=t.status,this.ctg=t.ctg,this.imgs=t.imgs,this.desc=t.desc,this.sDesc=t.sDesc,this.link=t.link,this.slug=t.slug,this.quantity=t.quantity,this.meta=t.meta,this.category=t.category,this.videos=t.videos,this.reviews=t.reviews,this.options=t.options,this.portraitVideos=t.videos?.filter(e=>e.orientation==="PORTRAIT"),this.tags=t.tags,t.vars&&(this.vars=t.vars.map(e=>new ps(e))),this}toEmbed(t){return t=t??this.selectedOrFirstVariant.value,new Ar({id:this.id,mID:this.mID,vID:t.mID,vName:t.name,name:this.name,link:this.link,slug:this.slug,price:t.price.d,imageURL:t.getOneImage()??this.imgs?.[0].url})}getTemplateVariables(){let t=this.selectedOrFirstVariant.value,e=t.price,r=this.name,n=this.category,i=pe(e.d,!0),s=this.variantImage??this.firstImageURL,o=this.meta,c=this.tags?.join(",")??"",l=this.reviews?.rating,p=this.reviews?.totalReviews,g=e.cmp&&e.cmp>e.d,h={name:r,price:i,image_url:s,meta:o,category:n,rating:l,reviews:p,tags:c};if(t.hasEffectivePrice()&&(h.effective_price=pe(t.effectivePrice.value)),g){h.compare_price=pe(e.cmp);let y=e.cmp-e.d;h.discount_percent=(y/e.cmp*100).toFixed(0),h.discount_price=pe(y)}let w={name:t.name,quantity:t.quantity};return{product:h,variant:w}}},Sb=class{id;alt;sources;items;durationMS;thumbnail;card;constructor(t={}){this.id=t.id,this.alt=t.alt,this.sources=t.sources?.sort((e,r)=>r.height-e.height),this.durationMS=t.durationMS,this.thumbnail=t.thumbnail,this.items=t.items?t.items.map(e=>new qe(e)):[],this.card=t.card}},Ib=class{videos;source;template;heading;slidePerViewCount;autoPlay;showMuteButton;footerContent;detailPopup;constructor(t={}){this.videos=t.videos?.map(e=>new Sb(e))??[],this.source=t.source,this.template=t.template,this.detailPopup=t.detailPopup??{template:"VIDEO_ONLY_VIEW"},this.heading=t.heading,this.showMuteButton=t.showMuteButton,this.slidePerViewCount=t.slidePerViewCount??4,this.autoPlay=t.autoPlay??"ON",this.footerContent=t.footerContent??"FIRST_ITEM"}},Cb=Object.prototype.toString,ln=Array.isArray||function(t){return Cb.call(t)==="[object Array]"};function ja(t){return typeof t=="function"}function Tb(t){return ln(t)?"array":typeof t}function zs(t){return t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function Fl(t,e){return t!=null&&typeof t=="object"&&e in t}function xb(t,e){return t!=null&&typeof t!="object"&&t.hasOwnProperty&&t.hasOwnProperty(e)}var Db=RegExp.prototype.test;function Ab(t,e){return Db.call(t,e)}var Ob=/\S/;function Nb(t){return!Ab(Ob,t)}var kb={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};function Pb(t){return String(t).replace(/[&<>"'`=\/]/g,function(e){return kb[e]})}var Rb=/\s*/,Lb=/\s+/,Hl=/\s*=/,Mb=/\s*\}/,Ub=/#|\^|\/|>|\{|&|=|!/;function Bb(t,e){if(!t)return[];var r=!1,n=[],i=[],s=[],o=!1,c=!1,l="",p=0;function g(){if(o&&!c)for(;s.length;)delete i[s.pop()];else s=[];o=!1,c=!1}var h,w,y;function b(q){if(typeof q=="string"&&(q=q.split(Lb,2)),!ln(q)||q.length!==2)throw new Error("Invalid tags: "+q);h=new RegExp(zs(q[0])+"\\s*"),w=new RegExp("\\s*"+zs(q[1])),y=new RegExp("\\s*"+zs("}"+q[1]))}b(e||me.tags);for(var _=new ti(t),k,A,M,G,j,Z;!_.eos();){if(k=_.pos,M=_.scanUntil(h),M)for(var Et=0,At=M.length;Et<At;++Et)G=M.charAt(Et),Nb(G)?(s.push(i.length),l+=G):(c=!0,r=!0,l+=" "),i.push(["text",G,k,k+1]),k+=1,G===`
|
|
31
31
|
`&&(g(),l="",p=0,r=!1);if(!_.scan(h))break;if(o=!0,A=_.scan(Ub)||"name",_.scan(Rb),A==="="?(M=_.scanUntil(Hl),_.scan(Hl),_.scanUntil(w)):A==="{"?(M=_.scanUntil(y),_.scan(Mb),_.scanUntil(w),A="&"):M=_.scanUntil(w),!_.scan(w))throw new Error("Unclosed tag at "+_.pos);if(A==">"?j=[A,M,k,_.pos,l,p,r]:j=[A,M,k,_.pos],p++,i.push(j),A==="#"||A==="^")n.push(j);else if(A==="/"){if(Z=n.pop(),!Z)throw new Error('Unopened section "'+M+'" at '+k);if(Z[1]!==M)throw new Error('Unclosed section "'+Z[1]+'" at '+k)}else A==="name"||A==="{"||A==="&"?c=!0:A==="="&&b(M)}if(g(),Z=n.pop(),Z)throw new Error('Unclosed section "'+Z[1]+'" at '+_.pos);return $b(jb(i))}function jb(t){for(var e=[],r,n,i=0,s=t.length;i<s;++i)r=t[i],r&&(r[0]==="text"&&n&&n[0]==="text"?(n[1]+=r[1],n[3]=r[3]):(e.push(r),n=r));return e}function $b(t){for(var e=[],r=e,n=[],i,s,o=0,c=t.length;o<c;++o)switch(i=t[o],i[0]){case"#":case"^":r.push(i),n.push(i),r=i[4]=[];break;case"/":s=n.pop(),s[5]=i[2],r=n.length>0?n[n.length-1][4]:e;break;default:r.push(i)}return e}function ti(t){this.string=t,this.tail=t,this.pos=0}ti.prototype.eos=function(){return this.tail===""};ti.prototype.scan=function(t){var e=this.tail.match(t);if(!e||e.index!==0)return"";var r=e[0];return this.tail=this.tail.substring(r.length),this.pos+=r.length,r};ti.prototype.scanUntil=function(t){var e=this.tail.search(t),r;switch(e){case-1:r=this.tail,this.tail="";break;case 0:r="";break;default:r=this.tail.substring(0,e),this.tail=this.tail.substring(e)}return this.pos+=r.length,r};function Xr(t,e){this.view=t,this.cache={".":this.view},this.parent=e}Xr.prototype.push=function(t){return new Xr(t,this)};Xr.prototype.lookup=function(t){var e=this.cache,r;if(e.hasOwnProperty(t))r=e[t];else{for(var n=this,i,s,o,c=!1;n;){if(t.indexOf(".")>0)for(i=n.view,s=t.split("."),o=0;i!=null&&o<s.length;)o===s.length-1&&(c=Fl(i,s[o])||xb(i,s[o])),i=i[s[o++]];else i=n.view[t],c=Fl(n.view,t);if(c){r=i;break}n=n.parent}e[t]=r}return ja(r)&&(r=r.call(this.view)),r};function Xt(){this.templateCache={_cache:{},set:function(t,e){this._cache[t]=e},get:function(t){return this._cache[t]},clear:function(){this._cache={}}}}Xt.prototype.clearCache=function(){typeof this.templateCache<"u"&&this.templateCache.clear()};Xt.prototype.parse=function(t,e){var r=this.templateCache,n=t+":"+(e||me.tags).join(":"),i=typeof r<"u",s=i?r.get(n):void 0;return s==null&&(s=Bb(t,e),i&&r.set(n,s)),s};Xt.prototype.render=function(t,e,r,n){var i=this.getConfigTags(n),s=this.parse(t,i),o=e instanceof Xr?e:new Xr(e,void 0);return this.renderTokens(s,o,r,t,n)};Xt.prototype.renderTokens=function(t,e,r,n,i){for(var s="",o,c,l,p=0,g=t.length;p<g;++p)l=void 0,o=t[p],c=o[0],c==="#"?l=this.renderSection(o,e,r,n,i):c==="^"?l=this.renderInverted(o,e,r,n,i):c===">"?l=this.renderPartial(o,e,r,i):c==="&"?l=this.unescapedValue(o,e):c==="name"?l=this.escapedValue(o,e,i):c==="text"&&(l=this.rawValue(o)),l!==void 0&&(s+=l);return s};Xt.prototype.renderSection=function(t,e,r,n,i){var s=this,o="",c=e.lookup(t[1]);function l(h){return s.render(h,e,r,i)}if(c){if(ln(c))for(var p=0,g=c.length;p<g;++p)o+=this.renderTokens(t[4],e.push(c[p]),r,n,i);else if(typeof c=="object"||typeof c=="string"||typeof c=="number")o+=this.renderTokens(t[4],e.push(c),r,n,i);else if(ja(c)){if(typeof n!="string")throw new Error("Cannot use higher-order sections without the original template");c=c.call(e.view,n.slice(t[3],t[5]),l),c!=null&&(o+=c)}else o+=this.renderTokens(t[4],e,r,n,i);return o}};Xt.prototype.renderInverted=function(t,e,r,n,i){var s=e.lookup(t[1]);if(!s||ln(s)&&s.length===0)return this.renderTokens(t[4],e,r,n,i)};Xt.prototype.indentPartial=function(t,e,r){for(var n=e.replace(/[^ \t]/g,""),i=t.split(`
|
|
32
32
|
`),s=0;s<i.length;s++)i[s].length&&(s>0||!r)&&(i[s]=n+i[s]);return i.join(`
|
|
33
|
-
`)};Xt.prototype.renderPartial=function(t,e,r,n){if(r){var i=this.getConfigTags(n),s=ja(r)?r(t[1]):r[t[1]];if(s!=null){var o=t[6],c=t[5],l=t[4],p=s;c==0&&l&&(p=this.indentPartial(s,l,o));var g=this.parse(p,i);return this.renderTokens(g,e,r,p,n)}}};Xt.prototype.unescapedValue=function(t,e){var r=e.lookup(t[1]);if(r!=null)return r};Xt.prototype.escapedValue=function(t,e,r){var n=this.getConfigEscape(r)||me.escape,i=e.lookup(t[1]);if(i!=null)return typeof i=="number"&&n===me.escape?String(i):n(i)};Xt.prototype.rawValue=function(t){return t[1]};Xt.prototype.getConfigTags=function(t){return ln(t)?t:t&&typeof t=="object"?t.tags:void 0};Xt.prototype.getConfigEscape=function(t){if(t&&typeof t=="object"&&!ln(t))return t.escape};var me={name:"mustache.js",version:"4.2.0",tags:["{{","}}"],clearCache:void 0,escape:void 0,parse:void 0,render:void 0,Scanner:void 0,Context:void 0,Writer:void 0,set templateCache(t){Fn.templateCache=t},get templateCache(){return Fn.templateCache}},Fn=new Xt;me.clearCache=function(){return Fn.clearCache()};me.parse=function(t,e){return Fn.parse(t,e)};me.render=function(t,e,r,n){if(typeof t!="string")throw new TypeError('Invalid template! Template should be a "string" but "'+Tb(t)+'" was given as the first argument for mustache#render(template, view, partials)');return Fn.render(t,e,r,n)};me.escape=Pb;me.Scanner=ti;me.Context=Xr;me.Writer=Xt;var tp=me;tp.escape=Hb;var Fb={'"':""","\\":"\"};function Hb(t){return String(t).replace(/["\\]/g,e=>Fb[e])}var Vi=(t,e)=>tp.render(t,e),qi=(t,e)=>{let r=JSON.stringify(t),n=Vi(r,e);try{return JSON.parse(n)}catch(i){throw zt.getInstance().captureError(i,"variable-replacement",{extra:{before:t,after:n}}),i}},Vb="?from=cooee";function $a(){return!!window.Shopify}function qb(){if($a())return window.Shopify.shop?.split(".")?.[0]}function Wb(t){let e=(t.includes("://")?new URL(t).pathname:t).match(/\/products\/([^/]+?)(?:\.html)?$/);return e?e[1]:null}function Wi(){return window.Shopify?.routes?.root??"/"}function Ln(t){return Wi()+t+Vb}var Gb=class{isLocked=!1;queue=[];async acquire(){if(this.isLocked)await new Promise(t=>this.queue.push(t));else{this.isLocked=!0;return}}release(){if(this.queue.length>0){let t=this.queue.shift();t&&t()}else this.isLocked=!1}},zb=class Ho{static LOCK_TIMEOUT=1e4;static RETRY_INTERVAL=200;static MAX_RETRIES=50;static async request(e,r){if(e=`__cooee_${e}_lock__`,"locks"in navigator&&!this.isInAppBrowser())return navigator.locks.request(e,r);let n=!1,i=0,s=Math.random().toString(36).substring(2,10);for(;i++<this.MAX_RETRIES&&(T.debug(`Lock retry ${i}`),n=await this.acquire(e,s),!n);)await this.sleep(Ho.RETRY_INTERVAL*i+Math.random()*100);try{return await r()}finally{this.release(e,s)}}static isInAppBrowser(){let e=navigator.userAgent||"",r=/iPhone|iPad|iPod/i.test(e),n=/(FBAV|FBAN|Instagram)/i.test(e);return r&&n}static async acquire(e,r){let n=Date.now(),i=localStorage.getItem(e),s=i?JSON.parse(i):null;if(s&&n<=s.expiry)return!1;let o={owner:r,expiry:n+Ho.LOCK_TIMEOUT};return localStorage.setItem(e,JSON.stringify(o)),await this.sleep(150+Math.random()*100),JSON.parse(localStorage.getItem(e)||"{}").owner===r?(T.debug(`${r}: Lock acquired!`),!0):(T.debug(`${r}: Race lost. Another tab acquired the lock.`),!1)}static release(e,r){let n=localStorage.getItem(e);if(!n)return;let i=JSON.parse(n);i.owner===r?(localStorage.removeItem(e),T.debug(`${r}: Lock released`)):T.debug(`${r}: Cannot release lock. Current owner: ${i.owner}`)}static sleep(e){return new Promise(r=>setTimeout(r,e))}},xt=class ep{static CURRENT;token;items;total_price;original_total_price;items_subtotal_price;currency;item_count;attributes;cart_level_discount_applications;total_discount;lock=new Gb;constructor(){}static getCurrent(){return this.CURRENT||(this.CURRENT=new ep),this.CURRENT}async getNormalisedCart(e){await this.fetchCartFromShopify(e);let r=this.convertToCooeeCart();return e&&await Mt.set(ct.CURRENT_CART,r),r}async addCooeeAttributes(){await this.lock.acquire();let e=await ee.get(ct.ID),r=await Mt.get(ct.DEVICE_ID);if(this.attributes?.letscooee_did===r&&this.attributes?.letscooee_sid===e){T.debug("Not calling Shopify update.js API.","Current attributes:",this.attributes),this.lock.release();return}let n={letscooee_did:r,letscooee_sid:e,__letscooee_time:new Date().toLocaleString()};T.debug("Updating Shopify cart with attributes:",n);let i=Ln("cart/update.js"),s=await(await fetch(i,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({attributes:n})})).json();T.debug("Updated cart attributes",JSON.stringify(s)),this.update(s),this.lock.release()}update(e){return this.token=e.token,this.items=e.items,this.total_price=e.total_price,this.original_total_price=e.original_total_price,this.items_subtotal_price=e.items_subtotal_price,this.currency=e.currency,this.item_count=e.item_count,this.attributes=e.attributes,this.cart_level_discount_applications=e.cart_level_discount_applications,this.total_discount=e.total_discount,kt.get().currencyCode=this.currency,T.log("Updated ShopifyCart",this),this}toString(){return`ShopifyCart(token: ${this.token}, itemCount: ${this.item_count})`}convertToCooeeCart(){return{amount:this.total_price/100,originalAmount:this.original_total_price/100,itemsSubtotalPrice:this.items_subtotal_price/100,currency:this.currency,itemCount:this.item_count,items:this.normaliseItems(this.items),token:this.token}}normaliseItems(e){if(!e)return T.error("No item received to be sent"),[];Array.isArray(e)||(e=[e]);let r=[];for(let n of e){if(!n.id||!n.title){T.warn("Invalid item received",n);continue}let i={name:n.title,quantity:+n.quantity||1,mID:n.product_id?.toString(),vID:n.id.toString(),price:+n.price/100||0,finalPrice:+n.final_price/100||0,properties:n.properties,key:n.key},s=n.selling_plan_allocation?.selling_plan;if(!s){r.push(i);continue}i.sellingPlanAllocation={sellingPlan:{fixedSellingPlan:s.fixed_selling_plan,id:s.id,name:s.name,recurringDeliveries:s.recurring_deliveries}},r.push(i)}return r}async fetchCartFromShopify(e){if(!e&&this.token){T.debug("Not fetching cart");return}T.debug("Fetching cart");let r=Ln("cart.js"),n=await(await fetch(r)).json();this.update(n)}},Kb=class{id;mID;handle;title;imageURL;constructor(t){t??={},this.id=t.id,this.mID=t.mID,this.handle=t.handle,this.title=t.title,this.imageURL=t.imageURL}},Yb=class{enabled;constructor(t){this.enabled=t.enabled}},Jb=class extends Yb{max;min;constructor(t){t??={},super(t),this.min=t.min,this.max=t.max}},Xb=class{productQuantity;constructor(t){t??={},this.productQuantity=new Jb(t.productQuantity)}},ei=class{t;bg;br;clc;shd;spc;trf;a;w;h;x;y;constructor(t){this.t=t.t,t.bg&&(this.bg=new Fu(t.bg)),t.br&&(this.br=new ha(t.br)),t.shd&&(this.shd=new If(t.shd)),t.spc&&(this.spc=new da(t.spc)),this.trf=new Vu(t.trf),this.clc=t.clc,this.w=t.w,this.h=t.h,this.x=t.x,this.y=t.y,this.a=t.a}get alpha(){return this.a??100}get type(){return this.t}get typeAsString(){return Fa[this.t]}get click(){return this.clc}},Fa=(t=>(t[t.IMAGE=1]="IMAGE",t[t.TEXT=2]="TEXT",t[t.BUTTON=3]="BUTTON",t[t.FLEXBOX=4]="FLEXBOX",t[t.MULTI_COLUMN=5]="MULTI_COLUMN",t[t.CHECKBOX=6]="CHECKBOX",t[t.PRODUCTS=11]="PRODUCTS",t[t.PRODUCT=12]="PRODUCT",t[t.PRODUCT_IMAGE=13]="PRODUCT_IMAGE",t[t.PRODUCT_TITLE=14]="PRODUCT_TITLE",t[t.PRODUCT_VARIATIONS=15]="PRODUCT_VARIATIONS",t[t.PRODUCT_VARIATIONS_SELLING_PLANS=16]="PRODUCT_VARIATIONS_SELLING_PLANS",t[t.PRODUCT_BUTTON=18]="PRODUCT_BUTTON",t[t.PRODUCT_RATING=19]="PRODUCT_RATING",t[t.EMAIL_INPUT=51]="EMAIL_INPUT",t[t.PHONE_INPUT=52]="PHONE_INPUT",t[t.COUNTDOWN_TIMER=61]="COUNTDOWN_TIMER",t[t.CAROUSEL=62]="CAROUSEL",t[t.SHAPE=100]="SHAPE",t))(Fa||{}),rp=class extends ei{constructor(t){super(t)}},Ha=class extends ei{src;constructor(t){super(t),this.src=t.src}},ds=class extends ei{typo;constructor(t){super(t);let e=x(x({},t.f),t.typo);t.alg&&(e.ta=t.alg),t.c&&(e.tc=t.c),this.typo=new ze(e)}get color(){return this.typography.tc}get typography(){return this.typo}},Vo=class extends ds{prs;constructor(t){super(t),this.prs=t.prs}get parts(){return this.prs}},Qb=class extends ei{o;constructor(t){super(t),this.o=t.o??5,this.w=this.w??1080,this.h=this.h??1920}getOrigin(){return this.o}},np=class{dd;hh;mm;ss;date;constructor(t){t??={},this.dd=t.dd??0,this.hh=t.hh??0,this.mm=t.mm??0,this.ss=t.ss??0,this.date=t.date?new Date(t.date):void 0}start(t,e){let r=new Date;t===2?(r.setSeconds(r.getSeconds()+this.ss),r.setMinutes(r.getMinutes()+this.mm),r.setHours(r.getHours()+this.hh),r.setDate(r.getDate()+this.dd)):r=this.date??new Date;let n=window.setInterval(()=>{let i=new Date().getTime(),s=r.getTime()-i;if(s<1){clearInterval(n);return}let o=Math.floor(s/(1e3*60*60*24)),c=Math.floor(s%(1e3*60*60*24)/(1e3*60*60)),l=Math.floor(s%(1e3*60*60)/(1e3*60)),p=Math.floor(s%(1e3*60)/1e3);e({days:o,hours:c,minutes:l,seconds:p})},1e3);return n}},ip=class extends ds{gap;timer;timerType;horizontal;lblPos;show;constructor(t){t??={},super(t),this.gap=t.gap,this.timerType=t.type,this.timer=new np(t.timer),this.show=t.show??{day:!0,hour:!0,minute:!0,second:!0},this.horizontal=t.horizontal,this.lblPos=t.lblPos}},Zb=class{txt;c;constructor(t){t??={},this.txt=t.txt,this.c=new ie(t.c??{})}get text(){return this.txt}get color(){return this.c}},Va=class extends ds{ph;constructor(t){super(t),this.ph=new Zb(t.ph)}get placeholderText(){return this.ph.text}get placeholderColor(){return this.ph.color.rgba}},sp=class extends Va{constructor(t){t??={},super(t)}},op=class extends Va{},ap=class extends Va{},cp=class extends Ha{},fs=(t=>(t[t.LOW=1]="LOW",t[t.MEDIUM=2]="MEDIUM",t[t.HIGH=3]="HIGH",t))(fs||{}),tw=class{en;ex;constructor(t){t=t??{},this.en=t.en,this.ex=t.ex}getEnterAnimation(){switch(this.en){case 2:return[{transform:"translateY(-100%)"},{transform:"translateY(0%)"}];case 3:return[{transform:"translateY(100%)"},{transform:"translateY(0%)"}];case 4:return[{transform:"translateX(-100%)"},{transform:"translateX(0%)"}];case 5:return[{transform:"translateX(100%)"},{transform:"translateX(0%)"}];case 6:return[{transform:"translate(-100%, -100%)"},{transform:"translate(0%, 0%)"}];case 7:return[{transform:"translate(100%, -100%)"},{transform:"translate(0%, 0%)"}];case 8:return[{transform:"translate(-100%, 100%)"},{transform:"translate(0%, 0%)"}];case 9:return[{transform:"translate(100%, 100%)"},{transform:"translate(0%, 0%)"}];case 10:return[{transform:"scale(0.1)"},{transform:"scale(1)"}];default:return[]}}getExitAnimation(){switch(this.ex){case 2:return[{transform:"translateY(0%)"},{transform:"translateY(-100%)"}];case 3:return[{transform:"translateY(0%)"},{transform:"translateY(100%)"}];case 4:return[{transform:"translateX(0%)"},{transform:"translateX(-100%)"}];case 5:return[{transform:"translateX(0%)"},{transform:"translateX(100%)"}];case 6:return[{transform:"translate(0%, 0%)"},{transform:"translate(-100%, -100%)"}];case 7:return[{transform:"translate(0%, 0%)"},{transform:"translate(100%, -100%)"}];case 8:return[{transform:"translate(0%, 0%)"},{transform:"translate(-100%, 100%)"}];case 9:return[{transform:"translate(0%, 0%)"},{transform:"translate(100%, 100%)"}];case 10:return[{transform:"scale(1)"},{transform:"scale(0)"}];default:return[]}}},Vl=class extends ei{gvt;max;cover;anim;embedded;position;constructor(t){t=t??{},super(t),this.gvt=t.gvt??5,this.max=t.max,this.cover=t.cover??!0,this.anim=new tw(t.anim),this.embedded=t.embedded,this.position=t.position??1,this.spc||(this.spc=new da({pl:H.IN_APP_DEFAULT_PADDING,pr:H.IN_APP_DEFAULT_PADDING,pt:H.IN_APP_DEFAULT_PADDING,pb:H.IN_APP_DEFAULT_PADDING}))}isEmbedded(){return this.position===2&&!!this.embedded}getEmbeddedSelector(){return`.letscooee-engagement.container-${this.embedded}`}},ew=class extends Vl{cont;elems=[];mob;constructor(t){t=t??{},super(t),this.cont=new Qb(t.cont),this.mob=new Vl(t.mob),this.bg||(this.bg=this.cont.bg,delete this.cont.bg),t.elems.forEach(e=>{e.t===1?this.elems.push(new Ha(e)):e.t===2?this.elems.push(new Vo(e)):e.t===3?this.elems.push(new Vo(e)):e.t===100?this.elems.push(new rp(e)):e.t===51?this.elems.push(new op(e)):e.t===52?this.elems.push(new ap(e)):e.t===61?this.elems.push(new ip(e)):e.t===15||e.t===16?this.elems.push(new sp(e)):e.t===13&&this.elems.push(new cp(e))})}getStylesForWrapper(){if(this.cover)return{};let t;return this.gvt===1?t={top:0,left:0}:this.gvt===2?t={top:0,left:"50%",transform:"translateX(-50%)"}:this.gvt===3?t={top:0,right:0}:this.gvt===6?t={top:"50%",right:0,transform:"translateY(-50%)"}:this.gvt===9?t={bottom:0,right:0}:this.gvt===8?t={bottom:0,left:"50%",transform:"translateX(-50%)"}:this.gvt===7?t={bottom:0,left:0}:this.gvt===4?t={top:"50%",left:0,transform:"translateY(-50%)"}:t={top:"50%",left:"50%",transform:"translateX(-50%) translateY(-50%)"},t.overflow="visible",t}getFlexStylesForContainer(){let t={display:"flex",flexDirection:"row"},e,r;return this.gvt===1?(e="flex-start",r="flex-start"):this.gvt===2?(e="center",r="flex-start"):this.gvt===3?(e="flex-end",r="flex-start"):this.gvt===4?(e="flex-start",r="center"):this.gvt===6?(e="flex-end",r="center"):this.gvt===7?(e="flex-start",r="flex-end"):this.gvt===8?(e="center",r="flex-end"):this.gvt===9?(e="flex-end",r="flex-end"):(e="center",r="center"),t.alignItems=r,t.justifyContent=e,t.overflow="visible",t}overrideForMobileView(){this.max=this.mob.max??this.max,this.cover=this.mob.cover??this.cover,this.gvt=this.mob.gvt??this.gvt,this.bg=this.mob.bg??this.bg,this.spc=this.mob.spc??this.spc,this.anim=this.mob.anim??this.anim,this.position=this.mob.position??this.position,this.embedded=this.mob.embedded??this.embedded}},lp=class{gap;dir;wrap;jc;ai;scroll;constructor(t){t??={},this.gap=t.gap??0,this.dir=t.dir??"row",this.wrap=t.wrap??"nowrap",this.jc=t.jc??"flex-start",this.ai=t.ai??"flex-start",this.scroll=t.scroll}},rw=class{of;disp;pos;top;bottom;left;right;zIndex;constructor(t){t??={},this.of=t.of,this.disp=t.disp,this.pos=t.pos,this.top=t.top,this.bottom=t.bottom,this.left=t.left,this.right=t.right,this.zIndex=t.zIndex}},nw=class{w;h;maxW;maxH;minW;minH;constructor(t){t??={},this.w=t.w??"100%",this.h=t.h??"auto",this.maxW=t.maxW,this.maxH=t.maxH,this.minW=t.minW,this.minH=t.minH}},ql=class{size;bg;br;spc;typo;lout;flex;constructor(t){t??={},this.spc=new da(t.spc),t.size&&(this.size=new nw(t.size)),t.bg&&(this.bg=new Fu(t.bg)),t.br&&(this.br=new ha(t.br)),t.typo&&(this.typo=new ze(t.typo)),t.lout&&(this.lout=new rw(t.lout)),t.flex&&(this.flex=new lp(t.flex))}},up=class{sm;lg;constructor(t){t??={},this.sm=new ql(t.sm),this.lg=new ql(t.lg)}},ar=class{t;style;hide;when;clc;l;constructor(t,e){e??={},this.t=t,this.style=new up(e.style),this.hide=e.hide,this.l=e.l,e.when?.op&&(this.when=e.when),e.clc&&(this.clc=e.clc)}get stringType(){return Fa[this.t]}},Oe=class extends ar{text;constructor(t,e){t?.style?.lg?.typo?.s&&delete t.style.lg.typo.s,t?.style?.sm?.typo?.s&&delete t.style.sm.typo.s,super(e??2,t),t??={},this.text=t.text}},qo=class extends Oe{constructor(t,e){super(t,e??3)}},hp=class extends ar{value;constructor(t){super(6,t),t??={},this.value=t.value}},pp=class extends Oe{showChips;optionsConfig;constructor(t=15,e){super(e,t),e??={},this.showChips=e.showChips??!1,this.optionsConfig=e.optionsConfig??{}}},iw=class extends ar{c;iconSize;showSingleStar;fullStar;halfStart;constructor(t){super(19,t),t??={},this.c=new ie(t.c),this.iconSize=t.iconSize??24,this.showSingleStar=t.showSingleStar??!1,this.fullStar=t.fullStar,this.halfStart=t.halfStart}},sw=ke(rn()),ow=class{enabled;type;color;constructor(t){t??={},this.enabled=t.enabled,this.type=t.type,this.color=new ie(t.color)}},aw=class{size;enabled;color;constructor(t){t??={},this.enabled=t.enabled,this.size=t.size,this.color=new ie(t.color)}},dp=class{navigation;pagination;autoplay;maxInRow;gap;slidesPerView;constructor(t){t??={},this.navigation=new aw(t.navigation),this.pagination=new ow(t.pagination),this.autoplay=t.autoplay,this.slidesPerView=t.slidesPerView??1,this.maxInRow=t.maxInRow??t.slidesPerView??4,this.gap=t.gap??0}},cw=class extends ar{conf;slide;formData;values;allowedTypes;constructor(t){super(62,t),t&&this.update(t)}update(t){t??={},this.slide=Qr.getParsedElement(t.slide),this.formData=t.formData,this.values=t.values,this.conf=new dp(t.conf),this.allowedTypes=t.allowedTypes}},lw=class extends Oe{gap;timer;timerType;horizontal;lblPos;show;constructor(t){t??={},super(t,61),this.gap=t.gap,this.timerType=t.type,this.timer=new np(t.timer),this.show=t.show??{days:!0,hours:!0,minutes:!0,seconds:!0},this.horizontal=t.horizontal,this.lblPos=t.lblPos}},qa=class extends ar{elems;constructor(t){super(4,t),this.update(t)}update(t){t??={},this.elems??=[],t.elems?.forEach(e=>{let r=Qr.getParsedElement(e);r&&this.elems.push(r)})}},Wo=class extends ar{src;sm;lg;constructor(t,e){super(e??1,t),t&&this.update(t)}update(t){this.src=t.src,this.sm=t.sm,this.lg=t.lg}},Qr=class fp{static getParsedElements(e){let r=[];return e?.forEach(n=>{let i=fp.getParsedElement(n);i&&r.push(i)}),r}static getParsedElement(e){switch(e.t){case 2:return new Oe(e);case 3:return new qo(e);case 6:return new hp(e);case 11:return new uw(e);case 12:return new Wa(e);case 61:return new lw(e);case 4:return new qa(e);case 1:return new Wo(e);case 13:return new Wo(e,13);case 14:return new Oe(e,14);case 15:case 16:return new pp(e.t,e);case 18:return new qo(e,18);case 62:return new cw(e);case 19:return new iw(e);default:sw.default.error("Unknown element type",e.t);return}}static parseAlignmentToJustifyContent(e){switch(e){case 1:return"center";case 2:return"flex-end";case 0:return"flex-start";default:return"flex-start"}}},Wa=class extends ar{img;title;desc;price;compareAt;btn;variantDD;show;symbol;cBox;elems;noLinks;constructor(t){if(t??={},super(12,t),this.show=t.show,this.elems=Qr.getParsedElements(t.elems),this.noLinks=t.noLinks,!this.elems.length){t.cBox&&this.elems.push(new hp(t.cBox)),this.elems.push(new Wo(t.img,13));let e=new Oe(t.title,14);e.hide=!t.show?.title,e.text="{{ product.name }}",this.elems.push(e);let r=new Oe(t.price);r.text="{{ product.price }}",r.hide=!t.show?.price;let n=new Oe(t.compareAt);n.text="{{ product.compare_price }}",n.hide=!t.show?.price,t.compareAt||(n.style=new up(r.style),n.style.lg.typo=new ze(lt(x({},n.style.lg.typo),{td:"line-through"})),n.style.sm.typo=new ze(lt(x({},n.style.sm.typo),{td:"line-through"})));let i=new qa({style:{lg:{spc:{mb:10},flex:{dir:"row",gap:10,ai:"center",jc:Qr.parseAlignmentToJustifyContent(r.style.lg.typo?.ta)}}}});i.elems.push(n),i.elems.push(r),this.elems.push(i);let s=new pp(15,t.variantDD);if(s.hide=!t.show?.variantDD,this.elems.push(s),t.btn){let o=new qo(t.btn,18);o.hide=!t.show?.btn,this.elems.push(o)}}t.symbol&&(this.symbol=new Oe(t.symbol))}},uw=class extends ar{conf;prod;constructor(t){super(11,t),t??={},this.conf=new hw(t.conf),this.prod=new Wa(t.prod)}},Wl=class extends dp{disp;maxItems;constructor(t){t??={},super(t),this.disp=t.disp,this.maxItems=t.maxItems}},hw=class{lg;sm;constructor(t){t??={},this.lg=new Wl(t.lg),this.sm=new Wl(t.sm)}},pw=class extends qa{constructor(t){super(t)}},gp=class{cont;elems=[];constructor(t){t=t??{},this.cont=new pw(t.cont),t.elems?.forEach(e=>{this.addRawElement(e)})}addRawElement(t){let e=Qr.getParsedElement(t);return e&&this.elems.push(e),e}};function Go(t,e){return dw(t,e,0,5)}function dw(t,e,r=0,n=50){if(e){if(r>n){console.warn("Maximum recursion depth reached in findFirstElementOfType");return}for(let i of e){if(i.t===t)return i;let s="elems"in i?i.elems:[];if(s?.length>0){let o=Go(t,s);if(o)return o}}}}var fw=class{engagementID;shortID;contentType;delay;onsiteDeliveryType;objective;redirectBehaviour;constructor(t){this.shortID=t.shortID,this.contentType=t.contentType,this.engagementID=t.engagementID,this.delay=t.delay??0,this.redirectBehaviour=t.redirectBehaviour,this.onsiteDeliveryType=t.onsiteDeliveryType,this.objective=t.objective}isAnySplit(){return this.isABTesting()||this.isExclusionTesting()}isExclusionTesting(){return this.contentType===Ci.EXCLUSION}isABTesting(){return this.contentType===Ci.ABTESTING}isSingleContent(){return this.contentType===Ci.SINGLE}},mp=class{videoConfig;savingsBarConfig;constructor(t){this.update(t)}update(t){t??={},t.videoConfig&&(this.videoConfig=new Ib(t.videoConfig)),t.savingsBarConfig&&(this.savingsBarConfig=new Of(t.savingsBarConfig))}},sr=class extends fw{contentID;variation;ian;widget;discount;placement;promotionType;contentSource;manipulation;klaviyoFormID;entryAnimation;hasMultiplePlacement;skipSubscribedItems;progressBarConfig;stickyATCConfig;bundleConfig;content;previewType;occurred;id;currency;props;items;nonMutableItems;embeddedItems;bundleFrom;collections;customerData;experimentConfig;discountData=xr({});constructor(t){super(t),this.id=t.id,this.currency=kt.get().currencyCode??"USD",this.contentID=t.contentID,this.variation=t.variation,t.widget&&(this.widget=new gp(t.widget)),this.previewType=t.previewType,this.occurred=t.occurred??new Date,this.props=t.props,this.entryAnimation=t.entryAnimation??"NONE",this.embeddedItems=t.embeddedItems?.map(e=>new Ar(e)),this.items=t.items?.map(e=>new qe(e))??[],this.nonMutableItems=t.items?.map(e=>new qe(e))??[],this.collections=t.collections?.map(e=>new Kb(e))??[],this.discount=t.discount,this.placement=t.placement,this.customerData=t.customerData,this.ian=t.ian?this.processPopup(t.ian):void 0,this.promotionType=t.promotionType,this.manipulation=new Xb(t.manipulation),this.contentSource=t.contentSource,this.klaviyoFormID=t.klaviyoFormID,this.hasMultiplePlacement=t.hasMultiplePlacement,this.skipSubscribedItems=t.skipSubscribedItems,this.stickyATCConfig=t.stickyATCConfig,t.experimentConfig&&(this.experimentConfig=new xf(t.experimentConfig)),t.progressBarConfig&&(this.progressBarConfig=new Af(t.progressBarConfig)),t.bundleConfig&&(this.bundleConfig=new vf(t.bundleConfig)),t.bundleFrom&&(this.bundleFrom=new qe(t.bundleFrom)),t.content&&(this.content=new mp(t.content))}shouldDelay(){return this.delay>0}getDelaySeconds(){let t=new Date().getTime()-this.occurred.getTime();return this.delay*1e3-t}isBundle(){return this.objective===Ie.BUNDLE_AND_UPSELL}isCartEmbed(){return this.onsiteDeliveryType===wo.CART_EMBED}isPageEmbed(){return this.onsiteDeliveryType===wo.PAGE_EMBED}isProgressBar(){return this.objective===Ie.PROGRESS_BAR}isSubscriptionUpsell(){return this.objective===Ie.SUBSCRIPTION_UPSELL}isCartRecovery(){return this.objective===Ie.CART_RECOVERY}isProductPromotion(){return this.objective===Ie.PRODUCT_PROMOTION}isProductPromoted(){return this.isProductPromotion()||this.isBundle()||this.isCartRecovery()}isCollectionPromoted(){return this.isProductPromotion()&&this.collections.length>0&&this.promotionType===Mu.COLLECTION}isBYOB(){return this.objective===Ie.BYOB}isStickyATC(){return this.objective===Ie.STICKY_ATC}isShoppableVideo(){return this.objective===Ie.SHOPPABLE_VIDEO}isSavingsBar(){return this.objective===Ie.SAVINGS_BAR}processPopup(t){let e=this.items[0],r={},n={};if(e){let o=e.selectedOrFirstVariant.value;r={name:e.name,id:e.mID,link:e.link,vID:o.mID,image:e.variantImage,price:pe(o.price.d),comparePrice:pe(o.price.cmp),quantity:e.quantity},n={quantity:o.quantity}}let i={productCount:xt.getCurrent().item_count},s=Vi(JSON.stringify(t),{product:r,variant:n,cart:i,discount:this.discount,customer:this.customerData});return e&&(s=s.replace(new RegExp(H.PLACEHOLDER_IMAGE,"gi"),e.variantImage??e.firstImageURL)),new ew(JSON.parse(s))}calculateDiscountData(t,e){let r=Dn.sum(t,s=>s.selectedOrFirstVariant.value.price.d),n=Dn.sum(t,s=>{let o=s.selectedOrFirstVariant.value.price;return o.cmp??o.d}),i={actualPrice:r,totalComparePrice:n,discountAmount:0,discountPercentage:0,discountedPrice:r};if(!t?.length||!e||!this.discount?.type){this.discountData.value=this.formatCurrencyAndNumber(i);return}if(Ue.BXGY===this.discount.type&&this.discount.values?.length)i.discountPercentage=this.discount.values[0],this.updateEffectivePrice(t,i.discountPercentage,!0),i.discountAmount=i.actualPrice-Dn.sum(t,s=>s.selectedOrFirstVariant.value.effectivePrice.value);else if([Ue.UNIQUE_FLAT_ITEMS,Ue.STATIC,Ue.UNIQUE_FLAT].includes(this.discount.type)&&this.discount.values?.length)i.discountPercentage=this.discount.values[0],i.discountAmount=i.actualPrice*i.discountPercentage/100,this.updateEffectivePrice(t,i.discountPercentage);else if(this.discount.type===Ue.UNIQUE_FIXED_ITEMS&&this.discount.values?.length)i.discountAmount=i.actualPrice-this.discount.values[0],i.discountPercentage=i.discountAmount/i.actualPrice*100,this.updateEffectivePrice(t,i.discountPercentage);else if(this.discount.type===Ue.UNIQUE_CHEAPEST_ITEM_FREE){t.sort((o,c)=>c.selectedOrFirstVariant.value.price.d-o.selectedOrFirstVariant.value.price.d);let s=t[t.length-1];s.selectedOrFirstVariant.value.effectivePrice.value=0,i.discountAmount=s.selectedOrFirstVariant.value.price.d,i.discountPercentage=i.discountAmount/i.actualPrice*100}i.discountedPrice=i.actualPrice-i.discountAmount,this.discountData.value=this.formatCurrencyAndNumber(i)}getPrivateAttributesForLineItem(){return se.get().skipItemAttribute?{}:{[H.VIA]:"Cooee",[H.CAMPAIGN_ATTRIBUTE]:this.shortID,[H.CONTENT_ATTRIBUTE]:this.contentID}}getKVFormatPrivateAttributesForLineItem(){return se.get().skipItemAttribute?[]:[{key:H.VIA,value:"Cooee"},{key:H.CAMPAIGN_ATTRIBUTE,value:this.shortID},{key:H.CONTENT_ATTRIBUTE,value:this.contentID}]}isBundleOnCartDrawer(){return this.isBundle()&&this.isCartEmbed()}isBundleOnPDP(){return this.isPageEmbed()&&this.isBundle()}hasSwiperElement(){if(Go(62,this.widget?.elems))return!0;let t=Go(11,this.widget?.elems);return t?t.conf.lg.disp===2||t.conf.sm.disp===2:!1}toString(){return`Engagement(id=${this.shortID})`}getCartMagicVariables(){let t=xt.getCurrent(),e=Dn.sum(t.items,r=>r.discounts?.reduce((n,i)=>n+(i.amount??0),0)??0);return{productCount:t.item_count,product_count:t.item_count,amount:pe(t.total_price/100),originalAmount:pe(t.original_total_price/100),total_line_items_discount:pe(e/100),total_discount:pe(t.total_discount/100)}}updateEffectivePrice(t,e,r=!1){let n=kt.get().getCurrentItem();t.forEach(i=>{let s=i.selectedOrFirstVariant.value,o=s.price;if(r&&i.mID===n.mID)s.effectivePrice.value=o.d;else{let c=o.d*e/100;s.effectivePrice.value=o.d-c}})}formatCurrencyAndNumber(t){if(!t)return{};let e={discountPercentage:eb(t.discountPercentage??0),discountCode:this.discount?.code};return["actualPrice","discountAmount","discountedPrice","totalComparePrice"].map(r=>{e[r]=pe(t[r])}),e}};function gw(t,e){return e={exports:{}},t(e,e.exports),e.exports}var mw=ww,vw=Ew,yw=Cw,Ae=[],he=[],bw=typeof Uint8Array<"u"?Uint8Array:Array,Ks="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(ur=0,Gl=Ks.length;ur<Gl;++ur)Ae[ur]=Ks[ur],he[Ks.charCodeAt(ur)]=ur;var ur,Gl;he[45]=62;he[95]=63;function vp(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");r===-1&&(r=e);var n=r===e?0:4-r%4;return[r,n]}function ww(t){var e=vp(t),r=e[0],n=e[1];return(r+n)*3/4-n}function _w(t,e,r){return(e+r)*3/4-r}function Ew(t){var e,r=vp(t),n=r[0],i=r[1],s=new bw(_w(t,n,i)),o=0,c=i>0?n-4:n,l;for(l=0;l<c;l+=4)e=he[t.charCodeAt(l)]<<18|he[t.charCodeAt(l+1)]<<12|he[t.charCodeAt(l+2)]<<6|he[t.charCodeAt(l+3)],s[o++]=e>>16&255,s[o++]=e>>8&255,s[o++]=e&255;return i===2&&(e=he[t.charCodeAt(l)]<<2|he[t.charCodeAt(l+1)]>>4,s[o++]=e&255),i===1&&(e=he[t.charCodeAt(l)]<<10|he[t.charCodeAt(l+1)]<<4|he[t.charCodeAt(l+2)]>>2,s[o++]=e>>8&255,s[o++]=e&255),s}function Sw(t){return Ae[t>>18&63]+Ae[t>>12&63]+Ae[t>>6&63]+Ae[t&63]}function Iw(t,e,r){for(var n,i=[],s=e;s<r;s+=3)n=(t[s]<<16&16711680)+(t[s+1]<<8&65280)+(t[s+2]&255),i.push(Sw(n));return i.join("")}function Cw(t){for(var e,r=t.length,n=r%3,i=[],s=16383,o=0,c=r-n;o<c;o+=s)i.push(Iw(t,o,o+s>c?c:o+s));return n===1?(e=t[r-1],i.push(Ae[e>>2]+Ae[e<<4&63]+"==")):n===2&&(e=(t[r-2]<<8)+t[r-1],i.push(Ae[e>>10]+Ae[e>>4&63]+Ae[e<<2&63]+"=")),i.join("")}var Ys={byteLength:mw,toByteArray:vw,fromByteArray:yw},Tw=function(t,e,r,n,i){var s,o,c=i*8-n-1,l=(1<<c)-1,p=l>>1,g=-7,h=r?i-1:0,w=r?-1:1,y=t[e+h];for(h+=w,s=y&(1<<-g)-1,y>>=-g,g+=c;g>0;s=s*256+t[e+h],h+=w,g-=8);for(o=s&(1<<-g)-1,s>>=-g,g+=n;g>0;o=o*256+t[e+h],h+=w,g-=8);if(s===0)s=1-p;else{if(s===l)return o?NaN:(y?-1:1)*(1/0);o=o+Math.pow(2,n),s=s-p}return(y?-1:1)*o*Math.pow(2,s-n)},xw=function(t,e,r,n,i,s){var o,c,l,p=s*8-i-1,g=(1<<p)-1,h=g>>1,w=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,y=n?0:s-1,b=n?1:-1,_=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(c=isNaN(e)?1:0,o=g):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),o+h>=1?e+=w/l:e+=w*Math.pow(2,1-h),e*l>=2&&(o++,l/=2),o+h>=g?(c=0,o=g):o+h>=1?(c=(e*l-1)*Math.pow(2,i),o=o+h):(c=e*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;t[r+y]=c&255,y+=b,c/=256,i-=8);for(o=o<<i|c,p+=i;p>0;t[r+y]=o&255,y+=b,o/=256,p-=8);t[r+y-b]|=_*128},Mr={read:Tw,write:xw},gs=gw(function(t,e){var r=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;e.Buffer=o,e.SlowBuffer=A,e.INSPECT_MAX_BYTES=50;var n=2147483647;e.kMaxLength=n,o.TYPED_ARRAY_SUPPORT=i(),!o.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function i(){try{var a=new Uint8Array(1),u={foo:function(){return 42}};return Object.setPrototypeOf(u,Uint8Array.prototype),Object.setPrototypeOf(a,u),a.foo()===42}catch{return!1}}Object.defineProperty(o.prototype,"parent",{enumerable:!0,get:function(){if(o.isBuffer(this))return this.buffer}}),Object.defineProperty(o.prototype,"offset",{enumerable:!0,get:function(){if(o.isBuffer(this))return this.byteOffset}});function s(a){if(a>n)throw new RangeError('The value "'+a+'" is invalid for option "size"');var u=new Uint8Array(a);return Object.setPrototypeOf(u,o.prototype),u}function o(a,u,d){if(typeof a=="number"){if(typeof u=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return g(a)}return c(a,u,d)}o.poolSize=8192;function c(a,u,d){if(typeof a=="string")return h(a,u);if(ArrayBuffer.isView(a))return y(a);if(a==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+babelHelpers.typeof(a));if(ce(a,ArrayBuffer)||a&&ce(a.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(ce(a,SharedArrayBuffer)||a&&ce(a.buffer,SharedArrayBuffer)))return b(a,u,d);if(typeof a=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var E=a.valueOf&&a.valueOf();if(E!=null&&E!==a)return o.from(E,u,d);var D=_(a);if(D)return D;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof a[Symbol.toPrimitive]=="function")return o.from(a[Symbol.toPrimitive]("string"),u,d);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+babelHelpers.typeof(a))}o.from=function(a,u,d){return c(a,u,d)},Object.setPrototypeOf(o.prototype,Uint8Array.prototype),Object.setPrototypeOf(o,Uint8Array);function l(a){if(typeof a!="number")throw new TypeError('"size" argument must be of type number');if(a<0)throw new RangeError('The value "'+a+'" is invalid for option "size"')}function p(a,u,d){return l(a),a<=0?s(a):u!==void 0?typeof d=="string"?s(a).fill(u,d):s(a).fill(u):s(a)}o.alloc=function(a,u,d){return p(a,u,d)};function g(a){return l(a),s(a<0?0:k(a)|0)}o.allocUnsafe=function(a){return g(a)},o.allocUnsafeSlow=function(a){return g(a)};function h(a,u){if((typeof u!="string"||u==="")&&(u="utf8"),!o.isEncoding(u))throw new TypeError("Unknown encoding: "+u);var d=M(a,u)|0,E=s(d),D=E.write(a,u);return D!==d&&(E=E.slice(0,D)),E}function w(a){for(var u=a.length<0?0:k(a.length)|0,d=s(u),E=0;E<u;E+=1)d[E]=a[E]&255;return d}function y(a){if(ce(a,Uint8Array)){var u=new Uint8Array(a);return b(u.buffer,u.byteOffset,u.byteLength)}return w(a)}function b(a,u,d){if(u<0||a.byteLength<u)throw new RangeError('"offset" is outside of buffer bounds');if(a.byteLength<u+(d||0))throw new RangeError('"length" is outside of buffer bounds');var E;return u===void 0&&d===void 0?E=new Uint8Array(a):d===void 0?E=new Uint8Array(a,u):E=new Uint8Array(a,u,d),Object.setPrototypeOf(E,o.prototype),E}function _(a){if(o.isBuffer(a)){var u=k(a.length)|0,d=s(u);return d.length===0||a.copy(d,0,0,u),d}if(a.length!==void 0)return typeof a.length!="number"||pn(a.length)?s(0):w(a);if(a.type==="Buffer"&&Array.isArray(a.data))return w(a.data)}function k(a){if(a>=n)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+n.toString(16)+" bytes");return a|0}function A(a){return+a!=a&&(a=0),o.alloc(+a)}o.isBuffer=function(a){return a!=null&&a._isBuffer===!0&&a!==o.prototype},o.compare=function(a,u){if(ce(a,Uint8Array)&&(a=o.from(a,a.offset,a.byteLength)),ce(u,Uint8Array)&&(u=o.from(u,u.offset,u.byteLength)),!o.isBuffer(a)||!o.isBuffer(u))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(a===u)return 0;for(var d=a.length,E=u.length,D=0,U=Math.min(d,E);D<U;++D)if(a[D]!==u[D]){d=a[D],E=u[D];break}return d<E?-1:E<d?1:0},o.isEncoding=function(a){switch(String(a).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},o.concat=function(a,u){if(!Array.isArray(a))throw new TypeError('"list" argument must be an Array of Buffers');if(a.length===0)return o.alloc(0);var d;if(u===void 0)for(u=0,d=0;d<a.length;++d)u+=a[d].length;var E=o.allocUnsafe(u),D=0;for(d=0;d<a.length;++d){var U=a[d];if(ce(U,Uint8Array))D+U.length>E.length?o.from(U).copy(E,D):Uint8Array.prototype.set.call(E,U,D);else if(o.isBuffer(U))U.copy(E,D);else throw new TypeError('"list" argument must be an Array of Buffers');D+=U.length}return E};function M(a,u){if(o.isBuffer(a))return a.length;if(ArrayBuffer.isView(a)||ce(a,ArrayBuffer))return a.byteLength;if(typeof a!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+babelHelpers.typeof(a));var d=a.length,E=arguments.length>2&&arguments[2]===!0;if(!E&&d===0)return 0;for(var D=!1;;)switch(u){case"ascii":case"latin1":case"binary":return d;case"utf8":case"utf-8":return hn(a).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return d*2;case"hex":return d>>>1;case"base64":return li(a).length;default:if(D)return E?-1:hn(a).length;u=(""+u).toLowerCase(),D=!0}}o.byteLength=M;function G(a,u,d){var E=!1;if((u===void 0||u<0)&&(u=0),u>this.length||((d===void 0||d>this.length)&&(d=this.length),d<=0)||(d>>>=0,u>>>=0,d<=u))return"";for(a||(a="utf8");;)switch(a){case"hex":return Gt(this,u,d);case"utf8":case"utf-8":return Pt(this,u,d);case"ascii":return Wt(this,u,d);case"latin1":case"binary":return mt(this,u,d);case"base64":return pt(this,u,d);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return at(this,u,d);default:if(E)throw new TypeError("Unknown encoding: "+a);a=(a+"").toLowerCase(),E=!0}}o.prototype._isBuffer=!0;function j(a,u,d){var E=a[u];a[u]=a[d],a[d]=E}o.prototype.swap16=function(){var a=this.length;if(a%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var u=0;u<a;u+=2)j(this,u,u+1);return this},o.prototype.swap32=function(){var a=this.length;if(a%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var u=0;u<a;u+=4)j(this,u,u+3),j(this,u+1,u+2);return this},o.prototype.swap64=function(){var a=this.length;if(a%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var u=0;u<a;u+=8)j(this,u,u+7),j(this,u+1,u+6),j(this,u+2,u+5),j(this,u+3,u+4);return this},o.prototype.toString=function(){var a=this.length;return a===0?"":arguments.length===0?Pt(this,0,a):G.apply(this,arguments)},o.prototype.toLocaleString=o.prototype.toString,o.prototype.equals=function(a){if(!o.isBuffer(a))throw new TypeError("Argument must be a Buffer");return this===a?!0:o.compare(this,a)===0},o.prototype.inspect=function(){var a="",u=e.INSPECT_MAX_BYTES;return a=this.toString("hex",0,u).replace(/(.{2})/g,"$1 ").trim(),this.length>u&&(a+=" ... "),"<Buffer "+a+">"},r&&(o.prototype[r]=o.prototype.inspect),o.prototype.compare=function(a,u,d,E,D){if(ce(a,Uint8Array)&&(a=o.from(a,a.offset,a.byteLength)),!o.isBuffer(a))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+babelHelpers.typeof(a));if(u===void 0&&(u=0),d===void 0&&(d=a?a.length:0),E===void 0&&(E=0),D===void 0&&(D=this.length),u<0||d>a.length||E<0||D>this.length)throw new RangeError("out of range index");if(E>=D&&u>=d)return 0;if(E>=D)return-1;if(u>=d)return 1;if(u>>>=0,d>>>=0,E>>>=0,D>>>=0,this===a)return 0;for(var U=D-E,K=d-u,dt=Math.min(U,K),Nt=this.slice(E,D),vt=a.slice(u,d),It=0;It<dt;++It)if(Nt[It]!==vt[It]){U=Nt[It],K=vt[It];break}return U<K?-1:K<U?1:0};function Z(a,u,d,E,D){if(a.length===0)return-1;if(typeof d=="string"?(E=d,d=0):d>2147483647?d=2147483647:d<-2147483648&&(d=-2147483648),d=+d,pn(d)&&(d=D?0:a.length-1),d<0&&(d=a.length+d),d>=a.length){if(D)return-1;d=a.length-1}else if(d<0)if(D)d=0;else return-1;if(typeof u=="string"&&(u=o.from(u,E)),o.isBuffer(u))return u.length===0?-1:Et(a,u,d,E,D);if(typeof u=="number")return u=u&255,typeof Uint8Array.prototype.indexOf=="function"?D?Uint8Array.prototype.indexOf.call(a,u,d):Uint8Array.prototype.lastIndexOf.call(a,u,d):Et(a,[u],d,E,D);throw new TypeError("val must be string, number or Buffer")}function Et(a,u,d,E,D){var U=1,K=a.length,dt=u.length;if(E!==void 0&&(E=String(E).toLowerCase(),E==="ucs2"||E==="ucs-2"||E==="utf16le"||E==="utf-16le")){if(a.length<2||u.length<2)return-1;U=2,K/=2,dt/=2,d/=2}function Nt(dn,fn){return U===1?dn[fn]:dn.readUInt16BE(fn*U)}var vt;if(D){var It=-1;for(vt=d;vt<K;vt++)if(Nt(a,vt)===Nt(u,It===-1?0:vt-It)){if(It===-1&&(It=vt),vt-It+1===dt)return It*U}else It!==-1&&(vt-=vt-It),It=-1}else for(d+dt>K&&(d=K-dt),vt=d;vt>=0;vt--){for(var Bt=!0,lr=0;lr<dt;lr++)if(Nt(a,vt+lr)!==Nt(u,lr)){Bt=!1;break}if(Bt)return vt}return-1}o.prototype.includes=function(a,u,d){return this.indexOf(a,u,d)!==-1},o.prototype.indexOf=function(a,u,d){return Z(this,a,u,d,!0)},o.prototype.lastIndexOf=function(a,u,d){return Z(this,a,u,d,!1)};function At(a,u,d,E){d=Number(d)||0;var D=a.length-d;E?(E=Number(E),E>D&&(E=D)):E=D;var U=u.length;E>U/2&&(E=U/2);for(var K=0;K<E;++K){var dt=parseInt(u.substr(K*2,2),16);if(pn(dt))return K;a[d+K]=dt}return K}function q(a,u,d,E){return Rr(hn(u,a.length-d),a,d,E)}function it(a,u,d,E){return Rr(xs(u),a,d,E)}function tt(a,u,d,E){return Rr(li(u),a,d,E)}function rt(a,u,d,E){return Rr(Ds(u,a.length-d),a,d,E)}o.prototype.write=function(a,u,d,E){if(u===void 0)E="utf8",d=this.length,u=0;else if(d===void 0&&typeof u=="string")E=u,d=this.length,u=0;else if(isFinite(u))u=u>>>0,isFinite(d)?(d=d>>>0,E===void 0&&(E="utf8")):(E=d,d=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var D=this.length-u;if((d===void 0||d>D)&&(d=D),a.length>0&&(d<0||u<0)||u>this.length)throw new RangeError("Attempt to write outside buffer bounds");E||(E="utf8");for(var U=!1;;)switch(E){case"hex":return At(this,a,u,d);case"utf8":case"utf-8":return q(this,a,u,d);case"ascii":case"latin1":case"binary":return it(this,a,u,d);case"base64":return tt(this,a,u,d);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return rt(this,a,u,d);default:if(U)throw new TypeError("Unknown encoding: "+E);E=(""+E).toLowerCase(),U=!0}},o.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function pt(a,u,d){return u===0&&d===a.length?Ys.fromByteArray(a):Ys.fromByteArray(a.slice(u,d))}function Pt(a,u,d){d=Math.min(a.length,d);for(var E=[],D=u;D<d;){var U=a[D],K=null,dt=U>239?4:U>223?3:U>191?2:1;if(D+dt<=d){var Nt,vt,It,Bt;switch(dt){case 1:U<128&&(K=U);break;case 2:Nt=a[D+1],(Nt&192)===128&&(Bt=(U&31)<<6|Nt&63,Bt>127&&(K=Bt));break;case 3:Nt=a[D+1],vt=a[D+2],(Nt&192)===128&&(vt&192)===128&&(Bt=(U&15)<<12|(Nt&63)<<6|vt&63,Bt>2047&&(Bt<55296||Bt>57343)&&(K=Bt));break;case 4:Nt=a[D+1],vt=a[D+2],It=a[D+3],(Nt&192)===128&&(vt&192)===128&&(It&192)===128&&(Bt=(U&15)<<18|(Nt&63)<<12|(vt&63)<<6|It&63,Bt>65535&&Bt<1114112&&(K=Bt))}}K===null?(K=65533,dt=1):K>65535&&(K-=65536,E.push(K>>>10&1023|55296),K=56320|K&1023),E.push(K),D+=dt}return $t(E)}var Ot=4096;function $t(a){var u=a.length;if(u<=Ot)return String.fromCharCode.apply(String,a);for(var d="",E=0;E<u;)d+=String.fromCharCode.apply(String,a.slice(E,E+=Ot));return d}function Wt(a,u,d){var E="";d=Math.min(a.length,d);for(var D=u;D<d;++D)E+=String.fromCharCode(a[D]&127);return E}function mt(a,u,d){var E="";d=Math.min(a.length,d);for(var D=u;D<d;++D)E+=String.fromCharCode(a[D]);return E}function Gt(a,u,d){var E=a.length;(!u||u<0)&&(u=0),(!d||d<0||d>E)&&(d=E);for(var D="",U=u;U<d;++U)D+=As[a[U]];return D}function at(a,u,d){for(var E=a.slice(u,d),D="",U=0;U<E.length-1;U+=2)D+=String.fromCharCode(E[U]+E[U+1]*256);return D}o.prototype.slice=function(a,u){var d=this.length;a=~~a,u=u===void 0?d:~~u,a<0?(a+=d,a<0&&(a=0)):a>d&&(a=d),u<0?(u+=d,u<0&&(u=0)):u>d&&(u=d),u<a&&(u=a);var E=this.subarray(a,u);return Object.setPrototypeOf(E,o.prototype),E};function nt(a,u,d){if(a%1!==0||a<0)throw new RangeError("offset is not uint");if(a+u>d)throw new RangeError("Trying to access beyond buffer length")}o.prototype.readUintLE=o.prototype.readUIntLE=function(a,u,d){a=a>>>0,u=u>>>0,d||nt(a,u,this.length);for(var E=this[a],D=1,U=0;++U<u&&(D*=256);)E+=this[a+U]*D;return E},o.prototype.readUintBE=o.prototype.readUIntBE=function(a,u,d){a=a>>>0,u=u>>>0,d||nt(a,u,this.length);for(var E=this[a+--u],D=1;u>0&&(D*=256);)E+=this[a+--u]*D;return E},o.prototype.readUint8=o.prototype.readUInt8=function(a,u){return a=a>>>0,u||nt(a,1,this.length),this[a]},o.prototype.readUint16LE=o.prototype.readUInt16LE=function(a,u){return a=a>>>0,u||nt(a,2,this.length),this[a]|this[a+1]<<8},o.prototype.readUint16BE=o.prototype.readUInt16BE=function(a,u){return a=a>>>0,u||nt(a,2,this.length),this[a]<<8|this[a+1]},o.prototype.readUint32LE=o.prototype.readUInt32LE=function(a,u){return a=a>>>0,u||nt(a,4,this.length),(this[a]|this[a+1]<<8|this[a+2]<<16)+this[a+3]*16777216},o.prototype.readUint32BE=o.prototype.readUInt32BE=function(a,u){return a=a>>>0,u||nt(a,4,this.length),this[a]*16777216+(this[a+1]<<16|this[a+2]<<8|this[a+3])},o.prototype.readIntLE=function(a,u,d){a=a>>>0,u=u>>>0,d||nt(a,u,this.length);for(var E=this[a],D=1,U=0;++U<u&&(D*=256);)E+=this[a+U]*D;return D*=128,E>=D&&(E-=Math.pow(2,8*u)),E},o.prototype.readIntBE=function(a,u,d){a=a>>>0,u=u>>>0,d||nt(a,u,this.length);for(var E=u,D=1,U=this[a+--E];E>0&&(D*=256);)U+=this[a+--E]*D;return D*=128,U>=D&&(U-=Math.pow(2,8*u)),U},o.prototype.readInt8=function(a,u){return a=a>>>0,u||nt(a,1,this.length),this[a]&128?(255-this[a]+1)*-1:this[a]},o.prototype.readInt16LE=function(a,u){a=a>>>0,u||nt(a,2,this.length);var d=this[a]|this[a+1]<<8;return d&32768?d|4294901760:d},o.prototype.readInt16BE=function(a,u){a=a>>>0,u||nt(a,2,this.length);var d=this[a+1]|this[a]<<8;return d&32768?d|4294901760:d},o.prototype.readInt32LE=function(a,u){return a=a>>>0,u||nt(a,4,this.length),this[a]|this[a+1]<<8|this[a+2]<<16|this[a+3]<<24},o.prototype.readInt32BE=function(a,u){return a=a>>>0,u||nt(a,4,this.length),this[a]<<24|this[a+1]<<16|this[a+2]<<8|this[a+3]},o.prototype.readFloatLE=function(a,u){return a=a>>>0,u||nt(a,4,this.length),Mr.read(this,a,!0,23,4)},o.prototype.readFloatBE=function(a,u){return a=a>>>0,u||nt(a,4,this.length),Mr.read(this,a,!1,23,4)},o.prototype.readDoubleLE=function(a,u){return a=a>>>0,u||nt(a,8,this.length),Mr.read(this,a,!0,52,8)},o.prototype.readDoubleBE=function(a,u){return a=a>>>0,u||nt(a,8,this.length),Mr.read(this,a,!1,52,8)};function Ft(a,u,d,E,D,U){if(!o.isBuffer(a))throw new TypeError('"buffer" argument must be a Buffer instance');if(u>D||u<U)throw new RangeError('"value" argument is out of bounds');if(d+E>a.length)throw new RangeError("Index out of range")}o.prototype.writeUintLE=o.prototype.writeUIntLE=function(a,u,d,E){if(a=+a,u=u>>>0,d=d>>>0,!E){var D=Math.pow(2,8*d)-1;Ft(this,a,u,d,D,0)}var U=1,K=0;for(this[u]=a&255;++K<d&&(U*=256);)this[u+K]=a/U&255;return u+d},o.prototype.writeUintBE=o.prototype.writeUIntBE=function(a,u,d,E){if(a=+a,u=u>>>0,d=d>>>0,!E){var D=Math.pow(2,8*d)-1;Ft(this,a,u,d,D,0)}var U=d-1,K=1;for(this[u+U]=a&255;--U>=0&&(K*=256);)this[u+U]=a/K&255;return u+d},o.prototype.writeUint8=o.prototype.writeUInt8=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,1,255,0),this[u]=a&255,u+1},o.prototype.writeUint16LE=o.prototype.writeUInt16LE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,2,65535,0),this[u]=a&255,this[u+1]=a>>>8,u+2},o.prototype.writeUint16BE=o.prototype.writeUInt16BE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,2,65535,0),this[u]=a>>>8,this[u+1]=a&255,u+2},o.prototype.writeUint32LE=o.prototype.writeUInt32LE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,4,4294967295,0),this[u+3]=a>>>24,this[u+2]=a>>>16,this[u+1]=a>>>8,this[u]=a&255,u+4},o.prototype.writeUint32BE=o.prototype.writeUInt32BE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,4,4294967295,0),this[u]=a>>>24,this[u+1]=a>>>16,this[u+2]=a>>>8,this[u+3]=a&255,u+4},o.prototype.writeIntLE=function(a,u,d,E){if(a=+a,u=u>>>0,!E){var D=Math.pow(2,8*d-1);Ft(this,a,u,d,D-1,-D)}var U=0,K=1,dt=0;for(this[u]=a&255;++U<d&&(K*=256);)a<0&&dt===0&&this[u+U-1]!==0&&(dt=1),this[u+U]=(a/K>>0)-dt&255;return u+d},o.prototype.writeIntBE=function(a,u,d,E){if(a=+a,u=u>>>0,!E){var D=Math.pow(2,8*d-1);Ft(this,a,u,d,D-1,-D)}var U=d-1,K=1,dt=0;for(this[u+U]=a&255;--U>=0&&(K*=256);)a<0&&dt===0&&this[u+U+1]!==0&&(dt=1),this[u+U]=(a/K>>0)-dt&255;return u+d},o.prototype.writeInt8=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,1,127,-128),a<0&&(a=255+a+1),this[u]=a&255,u+1},o.prototype.writeInt16LE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,2,32767,-32768),this[u]=a&255,this[u+1]=a>>>8,u+2},o.prototype.writeInt16BE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,2,32767,-32768),this[u]=a>>>8,this[u+1]=a&255,u+2},o.prototype.writeInt32LE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,4,2147483647,-2147483648),this[u]=a&255,this[u+1]=a>>>8,this[u+2]=a>>>16,this[u+3]=a>>>24,u+4},o.prototype.writeInt32BE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,4,2147483647,-2147483648),a<0&&(a=4294967295+a+1),this[u]=a>>>24,this[u+1]=a>>>16,this[u+2]=a>>>8,this[u+3]=a&255,u+4};function oi(a,u,d,E,D,U){if(d+E>a.length)throw new RangeError("Index out of range");if(d<0)throw new RangeError("Index out of range")}function ai(a,u,d,E,D){return u=+u,d=d>>>0,D||oi(a,u,d,4),Mr.write(a,u,d,E,23,4),d+4}o.prototype.writeFloatLE=function(a,u,d){return ai(this,a,u,!0,d)},o.prototype.writeFloatBE=function(a,u,d){return ai(this,a,u,!1,d)};function ae(a,u,d,E,D){return u=+u,d=d>>>0,D||oi(a,u,d,8),Mr.write(a,u,d,E,52,8),d+8}o.prototype.writeDoubleLE=function(a,u,d){return ae(this,a,u,!0,d)},o.prototype.writeDoubleBE=function(a,u,d){return ae(this,a,u,!1,d)},o.prototype.copy=function(a,u,d,E){if(!o.isBuffer(a))throw new TypeError("argument should be a Buffer");if(d||(d=0),!E&&E!==0&&(E=this.length),u>=a.length&&(u=a.length),u||(u=0),E>0&&E<d&&(E=d),E===d||a.length===0||this.length===0)return 0;if(u<0)throw new RangeError("targetStart out of bounds");if(d<0||d>=this.length)throw new RangeError("Index out of range");if(E<0)throw new RangeError("sourceEnd out of bounds");E>this.length&&(E=this.length),a.length-u<E-d&&(E=a.length-u+d);var D=E-d;return this===a&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(u,d,E):Uint8Array.prototype.set.call(a,this.subarray(d,E),u),D},o.prototype.fill=function(a,u,d,E){if(typeof a=="string"){if(typeof u=="string"?(E=u,u=0,d=this.length):typeof d=="string"&&(E=d,d=this.length),E!==void 0&&typeof E!="string")throw new TypeError("encoding must be a string");if(typeof E=="string"&&!o.isEncoding(E))throw new TypeError("Unknown encoding: "+E);if(a.length===1){var D=a.charCodeAt(0);(E==="utf8"&&D<128||E==="latin1")&&(a=D)}}else typeof a=="number"?a=a&255:typeof a=="boolean"&&(a=Number(a));if(u<0||this.length<u||this.length<d)throw new RangeError("Out of range index");if(d<=u)return this;u=u>>>0,d=d===void 0?this.length:d>>>0,a||(a=0);var U;if(typeof a=="number")for(U=u;U<d;++U)this[U]=a;else{var K=o.isBuffer(a)?a:o.from(a,E),dt=K.length;if(dt===0)throw new TypeError('The value "'+a+'" is invalid for argument "value"');for(U=0;U<d-u;++U)this[U+u]=K[U%dt]}return this};var ci=/[^+/0-9A-Za-z-_]/g;function Ts(a){if(a=a.split("=")[0],a=a.trim().replace(ci,""),a.length<2)return"";for(;a.length%4!==0;)a=a+"=";return a}function hn(a,u){u=u||1/0;for(var d,E=a.length,D=null,U=[],K=0;K<E;++K){if(d=a.charCodeAt(K),d>55295&&d<57344){if(!D){if(d>56319){(u-=3)>-1&&U.push(239,191,189);continue}else if(K+1===E){(u-=3)>-1&&U.push(239,191,189);continue}D=d;continue}if(d<56320){(u-=3)>-1&&U.push(239,191,189),D=d;continue}d=(D-55296<<10|d-56320)+65536}else D&&(u-=3)>-1&&U.push(239,191,189);if(D=null,d<128){if((u-=1)<0)break;U.push(d)}else if(d<2048){if((u-=2)<0)break;U.push(d>>6|192,d&63|128)}else if(d<65536){if((u-=3)<0)break;U.push(d>>12|224,d>>6&63|128,d&63|128)}else if(d<1114112){if((u-=4)<0)break;U.push(d>>18|240,d>>12&63|128,d>>6&63|128,d&63|128)}else throw new Error("Invalid code point")}return U}function xs(a){for(var u=[],d=0;d<a.length;++d)u.push(a.charCodeAt(d)&255);return u}function Ds(a,u){for(var d,E,D,U=[],K=0;K<a.length&&!((u-=2)<0);++K)d=a.charCodeAt(K),E=d>>8,D=d%256,U.push(D),U.push(E);return U}function li(a){return Ys.toByteArray(Ts(a))}function Rr(a,u,d,E){for(var D=0;D<E&&!(D+d>=u.length||D>=a.length);++D)u[D+d]=a[D];return D}function ce(a,u){return a instanceof u||a!=null&&a.constructor!=null&&a.constructor.name!=null&&a.constructor.name===u.name}function pn(a){return a!==a}var As=function(){for(var a="0123456789abcdef",u=new Array(256),d=0;d<16;++d)for(var E=d*16,D=0;D<16;++D)u[E+D]=a[d]+a[D];return u}()}),ht=gs.Buffer;gs.SlowBuffer;gs.INSPECT_MAX_BYTES;gs.kMaxLength;var zo=function(t,e){return zo=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var i in n)n.hasOwnProperty(i)&&(r[i]=n[i])},zo(t,e)};function ms(t,e){zo(t,e);function r(){this.constructor=t}t.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}var br=function(t){ms(e,t);function e(r){var n=t.call(this,r)||this;return Object.setPrototypeOf(n,e.prototype),n}return Object.defineProperty(e.prototype,"name",{get:function(){return"BSONError"},enumerable:!1,configurable:!0}),e}(Error),Dt=function(t){ms(e,t);function e(r){var n=t.call(this,r)||this;return Object.setPrototypeOf(n,e.prototype),n}return Object.defineProperty(e.prototype,"name",{get:function(){return"BSONTypeError"},enumerable:!1,configurable:!0}),e}(TypeError);function bi(t){return t&&t.Math==Math&&t}function yp(){return bi(typeof globalThis=="object"&&globalThis)||bi(typeof window=="object"&&window)||bi(typeof self=="object"&&self)||bi(typeof global=="object"&&global)||Function("return this")()}function Dw(){var t=yp();return typeof t.navigator=="object"&&t.navigator.product==="ReactNative"}var Aw=function(t){var e=Dw()?"BSON: For React Native please polyfill crypto.getRandomValues, e.g. using: https://www.npmjs.com/package/react-native-get-random-values.":"BSON: No cryptographic implementation for random bytes present, falling back to a less secure implementation.";console.warn(e);for(var r=ht.alloc(t),n=0;n<t;++n)r[n]=Math.floor(Math.random()*256);return r},Ow=function(){{if(typeof window<"u"){var t=window.crypto||window.msCrypto;if(t&&t.getRandomValues)return function(e){return t.getRandomValues(ht.alloc(e))}}return typeof global<"u"&&global.crypto&&global.crypto.getRandomValues?function(e){return global.crypto.getRandomValues(ht.alloc(e))}:Aw}},bp=Ow();function Nw(t){return["[object ArrayBuffer]","[object SharedArrayBuffer]"].includes(Object.prototype.toString.call(t))}function Ga(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}function kw(t){return Object.prototype.toString.call(t)==="[object RegExp]"}function Pw(t){return ri(t)&&Object.prototype.toString.call(t)==="[object Date]"}function ri(t){return typeof t=="object"&&t!==null}function vs(t,e){var r=!1;function n(){for(var i=[],s=0;s<arguments.length;s++)i[s]=arguments[s];return r||(console.warn(e),r=!0),t.apply(this,i)}return n}function Gi(t){if(ArrayBuffer.isView(t))return ht.from(t.buffer,t.byteOffset,t.byteLength);if(Nw(t))return ht.from(t);throw new Dt("Must use either Buffer or TypedArray")}var Rw=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|[0-9a-f]{12}4[0-9a-f]{3}[89ab][0-9a-f]{15})$/i,wp=function(t){return typeof t=="string"&&Rw.test(t)},Ko=function(t){if(!wp(t))throw new Dt('UUID string representations must be a 32 or 36 character hex string (dashes excluded/included). Format: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" or "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx".');var e=t.replace(/-/g,"");return ht.from(e,"hex")},zl=function(t,e){return e===void 0&&(e=!0),e?t.toString("hex",0,4)+"-"+t.toString("hex",4,6)+"-"+t.toString("hex",6,8)+"-"+t.toString("hex",8,10)+"-"+t.toString("hex",10,16):t.toString("hex")},bE=Math.pow(2,63)-1,wE=-Math.pow(2,63),Lw=Math.pow(2,53),Mw=-Math.pow(2,53),_p=4,wr=function(){function t(e,r){if(!(this instanceof t))return new t(e,r);if(e!=null&&typeof e!="string"&&!ArrayBuffer.isView(e)&&!(e instanceof ArrayBuffer)&&!Array.isArray(e))throw new Dt("Binary can only be constructed from string, Buffer, TypedArray, or Array<number>");this.sub_type=r??t.BSON_BINARY_SUBTYPE_DEFAULT,e==null?(this.buffer=ht.alloc(t.BUFFER_SIZE),this.position=0):(typeof e=="string"?this.buffer=ht.from(e,"binary"):Array.isArray(e)?this.buffer=ht.from(e):this.buffer=Gi(e),this.position=this.buffer.byteLength)}return t.prototype.put=function(e){if(typeof e=="string"&&e.length!==1)throw new Dt("only accepts single character String");if(typeof e!="number"&&e.length!==1)throw new Dt("only accepts single character Uint8Array or Array");var r;if(typeof e=="string"?r=e.charCodeAt(0):typeof e=="number"?r=e:r=e[0],r<0||r>255)throw new Dt("only accepts number in a valid unsigned byte range 0-255");if(this.buffer.length>this.position)this.buffer[this.position++]=r;else{var n=ht.alloc(t.BUFFER_SIZE+this.buffer.length);this.buffer.copy(n,0,0,this.buffer.length),this.buffer=n,this.buffer[this.position++]=r}},t.prototype.write=function(e,r){if(r=typeof r=="number"?r:this.position,this.buffer.length<r+e.length){var n=ht.alloc(this.buffer.length+e.length);this.buffer.copy(n,0,0,this.buffer.length),this.buffer=n}ArrayBuffer.isView(e)?(this.buffer.set(Gi(e),r),this.position=r+e.byteLength>this.position?r+e.length:this.position):typeof e=="string"&&(this.buffer.write(e,r,e.length,"binary"),this.position=r+e.length>this.position?r+e.length:this.position)},t.prototype.read=function(e,r){return r=r&&r>0?r:this.position,this.buffer.slice(e,e+r)},t.prototype.value=function(e){return e=!!e,e&&this.buffer.length===this.position?this.buffer:e?this.buffer.slice(0,this.position):this.buffer.toString("binary",0,this.position)},t.prototype.length=function(){return this.position},t.prototype.toJSON=function(){return this.buffer.toString("base64")},t.prototype.toString=function(e){return this.buffer.toString(e)},t.prototype.toExtendedJSON=function(e){e=e||{};var r=this.buffer.toString("base64"),n=Number(this.sub_type).toString(16);return e.legacy?{$binary:r,$type:n.length===1?"0"+n:n}:{$binary:{base64:r,subType:n.length===1?"0"+n:n}}},t.prototype.toUUID=function(){if(this.sub_type===t.SUBTYPE_UUID)return new Kl(this.buffer.slice(0,this.position));throw new br('Binary sub_type "'.concat(this.sub_type,'" is not supported for converting to UUID. Only "').concat(t.SUBTYPE_UUID,'" is currently supported.'))},t.fromExtendedJSON=function(e,r){r=r||{};var n,i;if("$binary"in e?r.legacy&&typeof e.$binary=="string"&&"$type"in e?(i=e.$type?parseInt(e.$type,16):0,n=ht.from(e.$binary,"base64")):typeof e.$binary!="string"&&(i=e.$binary.subType?parseInt(e.$binary.subType,16):0,n=ht.from(e.$binary.base64,"base64")):"$uuid"in e&&(i=4,n=Ko(e.$uuid)),!n)throw new Dt("Unexpected Binary Extended JSON format ".concat(JSON.stringify(e)));return i===_p?new Kl(n):new t(n,i)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){var e=this.value(!0);return'new Binary(Buffer.from("'.concat(e.toString("hex"),'", "hex"), ').concat(this.sub_type,")")},t.BSON_BINARY_SUBTYPE_DEFAULT=0,t.BUFFER_SIZE=256,t.SUBTYPE_DEFAULT=0,t.SUBTYPE_FUNCTION=1,t.SUBTYPE_BYTE_ARRAY=2,t.SUBTYPE_UUID_OLD=3,t.SUBTYPE_UUID=4,t.SUBTYPE_MD5=5,t.SUBTYPE_ENCRYPTED=6,t.SUBTYPE_COLUMN=7,t.SUBTYPE_USER_DEFINED=128,t}();Object.defineProperty(wr.prototype,"_bsontype",{value:"Binary"});var Js=16,Kl=function(t){ms(e,t);function e(r){var n=this,i,s;if(r==null)i=e.generate();else if(r instanceof e)i=ht.from(r.buffer),s=r.__id;else if(ArrayBuffer.isView(r)&&r.byteLength===Js)i=Gi(r);else if(typeof r=="string")i=Ko(r);else throw new Dt("Argument passed in UUID constructor must be a UUID, a 16 byte Buffer or a 32/36 character hex string (dashes excluded/included, format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).");return n=t.call(this,i,_p)||this,n.__id=s,n}return Object.defineProperty(e.prototype,"id",{get:function(){return this.buffer},set:function(r){this.buffer=r,e.cacheHexString&&(this.__id=zl(r))},enumerable:!1,configurable:!0}),e.prototype.toHexString=function(r){if(r===void 0&&(r=!0),e.cacheHexString&&this.__id)return this.__id;var n=zl(this.id,r);return e.cacheHexString&&(this.__id=n),n},e.prototype.toString=function(r){return r?this.id.toString(r):this.toHexString()},e.prototype.toJSON=function(){return this.toHexString()},e.prototype.equals=function(r){if(!r)return!1;if(r instanceof e)return r.id.equals(this.id);try{return new e(r).id.equals(this.id)}catch{return!1}},e.prototype.toBinary=function(){return new wr(this.id,wr.SUBTYPE_UUID)},e.generate=function(){var r=bp(Js);return r[6]=r[6]&15|64,r[8]=r[8]&63|128,ht.from(r)},e.isValid=function(r){return r?r instanceof e?!0:typeof r=="string"?wp(r):Ga(r)?r.length!==Js?!1:(r[6]&240)===64&&(r[8]&128)===128:!1:!1},e.createFromHexString=function(r){var n=Ko(r);return new e(n)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return'new UUID("'.concat(this.toHexString(),'")')},e}(wr),ys=function(){function t(e,r){if(!(this instanceof t))return new t(e,r);this.code=e,this.scope=r}return t.prototype.toJSON=function(){return{code:this.code,scope:this.scope}},t.prototype.toExtendedJSON=function(){return this.scope?{$code:this.code,$scope:this.scope}:{$code:this.code}},t.fromExtendedJSON=function(e){return new t(e.$code,e.$scope)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){var e=this.toJSON();return'new Code("'.concat(String(e.code),'"').concat(e.scope?", ".concat(JSON.stringify(e.scope)):"",")")},t}();Object.defineProperty(ys.prototype,"_bsontype",{value:"Code"});function Uw(t){return ri(t)&&t.$id!=null&&typeof t.$ref=="string"&&(t.$db==null||typeof t.$db=="string")}var Hn=function(){function t(e,r,n,i){if(!(this instanceof t))return new t(e,r,n,i);var s=e.split(".");s.length===2&&(n=s.shift(),e=s.shift()),this.collection=e,this.oid=r,this.db=n,this.fields=i||{}}return Object.defineProperty(t.prototype,"namespace",{get:function(){return this.collection},set:function(e){this.collection=e},enumerable:!1,configurable:!0}),t.prototype.toJSON=function(){var e=Object.assign({$ref:this.collection,$id:this.oid},this.fields);return this.db!=null&&(e.$db=this.db),e},t.prototype.toExtendedJSON=function(e){e=e||{};var r={$ref:this.collection,$id:this.oid};return e.legacy||(this.db&&(r.$db=this.db),r=Object.assign(r,this.fields)),r},t.fromExtendedJSON=function(e){var r=Object.assign({},e);return delete r.$ref,delete r.$id,delete r.$db,new t(e.$ref,e.$id,e.$db,r)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){var e=this.oid===void 0||this.oid.toString===void 0?this.oid:this.oid.toString();return'new DBRef("'.concat(this.namespace,'", new ObjectId("').concat(String(e),'")').concat(this.db?', "'.concat(this.db,'"'):"",")")},t}();Object.defineProperty(Hn.prototype,"_bsontype",{value:"DBRef"});var ue=void 0;try{ue=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch{}var Yl=65536,Bw=1<<24,Fr=Yl*Yl,Ep=Fr*Fr,Jl=Ep/2,Xl={},Ql={},Y=function(){function t(e,r,n){if(e===void 0&&(e=0),!(this instanceof t))return new t(e,r,n);typeof e=="bigint"?Object.assign(this,t.fromBigInt(e,!!r)):typeof e=="string"?Object.assign(this,t.fromString(e,!!r)):(this.low=e|0,this.high=r|0,this.unsigned=!!n),Object.defineProperty(this,"__isLong__",{value:!0,configurable:!1,writable:!1,enumerable:!1})}return t.fromBits=function(e,r,n){return new t(e,r,n)},t.fromInt=function(e,r){var n,i,s;return r?(e>>>=0,(s=0<=e&&e<256)&&(i=Ql[e],i)?i:(n=t.fromBits(e,(e|0)<0?-1:0,!0),s&&(Ql[e]=n),n)):(e|=0,(s=-128<=e&&e<128)&&(i=Xl[e],i)?i:(n=t.fromBits(e,e<0?-1:0,!1),s&&(Xl[e]=n),n))},t.fromNumber=function(e,r){if(isNaN(e))return r?t.UZERO:t.ZERO;if(r){if(e<0)return t.UZERO;if(e>=Ep)return t.MAX_UNSIGNED_VALUE}else{if(e<=-Jl)return t.MIN_VALUE;if(e+1>=Jl)return t.MAX_VALUE}return e<0?t.fromNumber(-e,r).neg():t.fromBits(e%Fr|0,e/Fr|0,r)},t.fromBigInt=function(e,r){return t.fromString(e.toString(),r)},t.fromString=function(e,r,n){if(e.length===0)throw Error("empty string");if(e==="NaN"||e==="Infinity"||e==="+Infinity"||e==="-Infinity")return t.ZERO;if(typeof r=="number"?(n=r,r=!1):r=!!r,n=n||10,n<2||36<n)throw RangeError("radix");var i;if((i=e.indexOf("-"))>0)throw Error("interior hyphen");if(i===0)return t.fromString(e.substring(1),r,n).neg();for(var s=t.fromNumber(Math.pow(n,8)),o=t.ZERO,c=0;c<e.length;c+=8){var l=Math.min(8,e.length-c),p=parseInt(e.substring(c,c+l),n);if(l<8){var g=t.fromNumber(Math.pow(n,l));o=o.mul(g).add(t.fromNumber(p))}else o=o.mul(s),o=o.add(t.fromNumber(p))}return o.unsigned=r,o},t.fromBytes=function(e,r,n){return n?t.fromBytesLE(e,r):t.fromBytesBE(e,r)},t.fromBytesLE=function(e,r){return new t(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,r)},t.fromBytesBE=function(e,r){return new t(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],r)},t.isLong=function(e){return ri(e)&&e.__isLong__===!0},t.fromValue=function(e,r){return typeof e=="number"?t.fromNumber(e,r):typeof e=="string"?t.fromString(e,r):t.fromBits(e.low,e.high,typeof r=="boolean"?r:e.unsigned)},t.prototype.add=function(e){t.isLong(e)||(e=t.fromValue(e));var r=this.high>>>16,n=this.high&65535,i=this.low>>>16,s=this.low&65535,o=e.high>>>16,c=e.high&65535,l=e.low>>>16,p=e.low&65535,g=0,h=0,w=0,y=0;return y+=s+p,w+=y>>>16,y&=65535,w+=i+l,h+=w>>>16,w&=65535,h+=n+c,g+=h>>>16,h&=65535,g+=r+o,g&=65535,t.fromBits(w<<16|y,g<<16|h,this.unsigned)},t.prototype.and=function(e){return t.isLong(e)||(e=t.fromValue(e)),t.fromBits(this.low&e.low,this.high&e.high,this.unsigned)},t.prototype.compare=function(e){if(t.isLong(e)||(e=t.fromValue(e)),this.eq(e))return 0;var r=this.isNegative(),n=e.isNegative();return r&&!n?-1:!r&&n?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1},t.prototype.comp=function(e){return this.compare(e)},t.prototype.divide=function(e){if(t.isLong(e)||(e=t.fromValue(e)),e.isZero())throw Error("division by zero");if(ue){if(!this.unsigned&&this.high===-2147483648&&e.low===-1&&e.high===-1)return this;var r=(this.unsigned?ue.div_u:ue.div_s)(this.low,this.high,e.low,e.high);return t.fromBits(r,ue.get_high(),this.unsigned)}if(this.isZero())return this.unsigned?t.UZERO:t.ZERO;var n,i,s;if(this.unsigned){if(e.unsigned||(e=e.toUnsigned()),e.gt(this))return t.UZERO;if(e.gt(this.shru(1)))return t.UONE;s=t.UZERO}else{if(this.eq(t.MIN_VALUE)){if(e.eq(t.ONE)||e.eq(t.NEG_ONE))return t.MIN_VALUE;if(e.eq(t.MIN_VALUE))return t.ONE;var o=this.shr(1);return n=o.div(e).shl(1),n.eq(t.ZERO)?e.isNegative()?t.ONE:t.NEG_ONE:(i=this.sub(e.mul(n)),s=n.add(i.div(e)),s)}else if(e.eq(t.MIN_VALUE))return this.unsigned?t.UZERO:t.ZERO;if(this.isNegative())return e.isNegative()?this.neg().div(e.neg()):this.neg().div(e).neg();if(e.isNegative())return this.div(e.neg()).neg();s=t.ZERO}for(i=this;i.gte(e);){n=Math.max(1,Math.floor(i.toNumber()/e.toNumber()));for(var c=Math.ceil(Math.log(n)/Math.LN2),l=c<=48?1:Math.pow(2,c-48),p=t.fromNumber(n),g=p.mul(e);g.isNegative()||g.gt(i);)n-=l,p=t.fromNumber(n,this.unsigned),g=p.mul(e);p.isZero()&&(p=t.ONE),s=s.add(p),i=i.sub(g)}return s},t.prototype.div=function(e){return this.divide(e)},t.prototype.equals=function(e){return t.isLong(e)||(e=t.fromValue(e)),this.unsigned!==e.unsigned&&this.high>>>31===1&&e.high>>>31===1?!1:this.high===e.high&&this.low===e.low},t.prototype.eq=function(e){return this.equals(e)},t.prototype.getHighBits=function(){return this.high},t.prototype.getHighBitsUnsigned=function(){return this.high>>>0},t.prototype.getLowBits=function(){return this.low},t.prototype.getLowBitsUnsigned=function(){return this.low>>>0},t.prototype.getNumBitsAbs=function(){if(this.isNegative())return this.eq(t.MIN_VALUE)?64:this.neg().getNumBitsAbs();var e=this.high!==0?this.high:this.low,r;for(r=31;r>0&&(e&1<<r)===0;r--);return this.high!==0?r+33:r+1},t.prototype.greaterThan=function(e){return this.comp(e)>0},t.prototype.gt=function(e){return this.greaterThan(e)},t.prototype.greaterThanOrEqual=function(e){return this.comp(e)>=0},t.prototype.gte=function(e){return this.greaterThanOrEqual(e)},t.prototype.ge=function(e){return this.greaterThanOrEqual(e)},t.prototype.isEven=function(){return(this.low&1)===0},t.prototype.isNegative=function(){return!this.unsigned&&this.high<0},t.prototype.isOdd=function(){return(this.low&1)===1},t.prototype.isPositive=function(){return this.unsigned||this.high>=0},t.prototype.isZero=function(){return this.high===0&&this.low===0},t.prototype.lessThan=function(e){return this.comp(e)<0},t.prototype.lt=function(e){return this.lessThan(e)},t.prototype.lessThanOrEqual=function(e){return this.comp(e)<=0},t.prototype.lte=function(e){return this.lessThanOrEqual(e)},t.prototype.modulo=function(e){if(t.isLong(e)||(e=t.fromValue(e)),ue){var r=(this.unsigned?ue.rem_u:ue.rem_s)(this.low,this.high,e.low,e.high);return t.fromBits(r,ue.get_high(),this.unsigned)}return this.sub(this.div(e).mul(e))},t.prototype.mod=function(e){return this.modulo(e)},t.prototype.rem=function(e){return this.modulo(e)},t.prototype.multiply=function(e){if(this.isZero())return t.ZERO;if(t.isLong(e)||(e=t.fromValue(e)),ue){var r=ue.mul(this.low,this.high,e.low,e.high);return t.fromBits(r,ue.get_high(),this.unsigned)}if(e.isZero())return t.ZERO;if(this.eq(t.MIN_VALUE))return e.isOdd()?t.MIN_VALUE:t.ZERO;if(e.eq(t.MIN_VALUE))return this.isOdd()?t.MIN_VALUE:t.ZERO;if(this.isNegative())return e.isNegative()?this.neg().mul(e.neg()):this.neg().mul(e).neg();if(e.isNegative())return this.mul(e.neg()).neg();if(this.lt(t.TWO_PWR_24)&&e.lt(t.TWO_PWR_24))return t.fromNumber(this.toNumber()*e.toNumber(),this.unsigned);var n=this.high>>>16,i=this.high&65535,s=this.low>>>16,o=this.low&65535,c=e.high>>>16,l=e.high&65535,p=e.low>>>16,g=e.low&65535,h=0,w=0,y=0,b=0;return b+=o*g,y+=b>>>16,b&=65535,y+=s*g,w+=y>>>16,y&=65535,y+=o*p,w+=y>>>16,y&=65535,w+=i*g,h+=w>>>16,w&=65535,w+=s*p,h+=w>>>16,w&=65535,w+=o*l,h+=w>>>16,w&=65535,h+=n*g+i*p+s*l+o*c,h&=65535,t.fromBits(y<<16|b,h<<16|w,this.unsigned)},t.prototype.mul=function(e){return this.multiply(e)},t.prototype.negate=function(){return!this.unsigned&&this.eq(t.MIN_VALUE)?t.MIN_VALUE:this.not().add(t.ONE)},t.prototype.neg=function(){return this.negate()},t.prototype.not=function(){return t.fromBits(~this.low,~this.high,this.unsigned)},t.prototype.notEquals=function(e){return!this.equals(e)},t.prototype.neq=function(e){return this.notEquals(e)},t.prototype.ne=function(e){return this.notEquals(e)},t.prototype.or=function(e){return t.isLong(e)||(e=t.fromValue(e)),t.fromBits(this.low|e.low,this.high|e.high,this.unsigned)},t.prototype.shiftLeft=function(e){return t.isLong(e)&&(e=e.toInt()),(e&=63)===0?this:e<32?t.fromBits(this.low<<e,this.high<<e|this.low>>>32-e,this.unsigned):t.fromBits(0,this.low<<e-32,this.unsigned)},t.prototype.shl=function(e){return this.shiftLeft(e)},t.prototype.shiftRight=function(e){return t.isLong(e)&&(e=e.toInt()),(e&=63)===0?this:e<32?t.fromBits(this.low>>>e|this.high<<32-e,this.high>>e,this.unsigned):t.fromBits(this.high>>e-32,this.high>=0?0:-1,this.unsigned)},t.prototype.shr=function(e){return this.shiftRight(e)},t.prototype.shiftRightUnsigned=function(e){if(t.isLong(e)&&(e=e.toInt()),e&=63,e===0)return this;var r=this.high;if(e<32){var n=this.low;return t.fromBits(n>>>e|r<<32-e,r>>>e,this.unsigned)}else return e===32?t.fromBits(r,0,this.unsigned):t.fromBits(r>>>e-32,0,this.unsigned)},t.prototype.shr_u=function(e){return this.shiftRightUnsigned(e)},t.prototype.shru=function(e){return this.shiftRightUnsigned(e)},t.prototype.subtract=function(e){return t.isLong(e)||(e=t.fromValue(e)),this.add(e.neg())},t.prototype.sub=function(e){return this.subtract(e)},t.prototype.toInt=function(){return this.unsigned?this.low>>>0:this.low},t.prototype.toNumber=function(){return this.unsigned?(this.high>>>0)*Fr+(this.low>>>0):this.high*Fr+(this.low>>>0)},t.prototype.toBigInt=function(){return BigInt(this.toString())},t.prototype.toBytes=function(e){return e?this.toBytesLE():this.toBytesBE()},t.prototype.toBytesLE=function(){var e=this.high,r=this.low;return[r&255,r>>>8&255,r>>>16&255,r>>>24,e&255,e>>>8&255,e>>>16&255,e>>>24]},t.prototype.toBytesBE=function(){var e=this.high,r=this.low;return[e>>>24,e>>>16&255,e>>>8&255,e&255,r>>>24,r>>>16&255,r>>>8&255,r&255]},t.prototype.toSigned=function(){return this.unsigned?t.fromBits(this.low,this.high,!1):this},t.prototype.toString=function(e){if(e=e||10,e<2||36<e)throw RangeError("radix");if(this.isZero())return"0";if(this.isNegative())if(this.eq(t.MIN_VALUE)){var r=t.fromNumber(e),n=this.div(r),i=n.mul(r).sub(this);return n.toString(e)+i.toInt().toString(e)}else return"-"+this.neg().toString(e);for(var s=t.fromNumber(Math.pow(e,6),this.unsigned),o=this,c="";;){var l=o.div(s),p=o.sub(l.mul(s)).toInt()>>>0,g=p.toString(e);if(o=l,o.isZero())return g+c;for(;g.length<6;)g="0"+g;c=""+g+c}},t.prototype.toUnsigned=function(){return this.unsigned?this:t.fromBits(this.low,this.high,!0)},t.prototype.xor=function(e){return t.isLong(e)||(e=t.fromValue(e)),t.fromBits(this.low^e.low,this.high^e.high,this.unsigned)},t.prototype.eqz=function(){return this.isZero()},t.prototype.le=function(e){return this.lessThanOrEqual(e)},t.prototype.toExtendedJSON=function(e){return e&&e.relaxed?this.toNumber():{$numberLong:this.toString()}},t.fromExtendedJSON=function(e,r){var n=t.fromString(e.$numberLong);return r&&r.relaxed?n.toNumber():n},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return'new Long("'.concat(this.toString(),'"').concat(this.unsigned?", true":"",")")},t.TWO_PWR_24=t.fromInt(Bw),t.MAX_UNSIGNED_VALUE=t.fromBits(-1,-1,!0),t.ZERO=t.fromInt(0),t.UZERO=t.fromInt(0,!0),t.ONE=t.fromInt(1),t.UONE=t.fromInt(1,!0),t.NEG_ONE=t.fromInt(-1),t.MAX_VALUE=t.fromBits(-1,2147483647,!1),t.MIN_VALUE=t.fromBits(0,-2147483648,!1),t}();Object.defineProperty(Y.prototype,"__isLong__",{value:!0});Object.defineProperty(Y.prototype,"_bsontype",{value:"Long"});var jw=/^(\+|-)?(\d+|(\d*\.\d*))?(E|e)?([-+])?(\d+)?$/,$w=/^(\+|-)?(Infinity|inf)$/i,Fw=/^(\+|-)?NaN$/i,mn=6111,Xs=-6176,Zl=6176,Hw=34,Qs=[124,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),tu=[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),eu=[120,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),Vw=/^([-+])?(\d+)?$/,qw=31,ru=16383,Ww=30,Gw=31;function nu(t){return!isNaN(parseInt(t,10))}function zw(t){var e=Y.fromNumber(1e9),r=Y.fromNumber(0);if(!t.parts[0]&&!t.parts[1]&&!t.parts[2]&&!t.parts[3])return{quotient:t,rem:r};for(var n=0;n<=3;n++)r=r.shiftLeft(32),r=r.add(new Y(t.parts[n],0)),t.parts[n]=r.div(e).low,r=r.modulo(e);return{quotient:t,rem:r}}function Kw(t,e){if(!t&&!e)return{high:Y.fromNumber(0),low:Y.fromNumber(0)};var r=t.shiftRightUnsigned(32),n=new Y(t.getLowBits(),0),i=e.shiftRightUnsigned(32),s=new Y(e.getLowBits(),0),o=r.multiply(i),c=r.multiply(s),l=n.multiply(i),p=n.multiply(s);return o=o.add(c.shiftRightUnsigned(32)),c=new Y(c.getLowBits(),0).add(l).add(p.shiftRightUnsigned(32)),o=o.add(c.shiftRightUnsigned(32)),p=c.shiftLeft(32).add(new Y(p.getLowBits(),0)),{high:o,low:p}}function Yw(t,e){var r=t.high>>>0,n=e.high>>>0;if(r<n)return!0;if(r===n){var i=t.low>>>0,s=e.low>>>0;if(i<s)return!0}return!1}function Ur(t,e){throw new Dt('"'.concat(t,'" is not a valid Decimal128 string - ').concat(e))}var za=function(){function t(e){if(!(this instanceof t))return new t(e);if(typeof e=="string")this.bytes=t.fromString(e).bytes;else if(Ga(e)){if(e.byteLength!==16)throw new Dt("Decimal128 must take a Buffer of 16 bytes");this.bytes=e}else throw new Dt("Decimal128 must take a Buffer or string")}return t.fromString=function(e){var r=!1,n=!1,i=!1,s=0,o=0,c=0,l=0,p=0,g=[0],h=0,w=0,y=0,b=0,_=0,k=0,A=new Y(0,0),M=new Y(0,0),G=0,j=0;if(e.length>=7e3)throw new Dt(""+e+" not a valid Decimal128 string");var Z=e.match(jw),Et=e.match($w),At=e.match(Fw);if(!Z&&!Et&&!At||e.length===0)throw new Dt(""+e+" not a valid Decimal128 string");if(Z){var q=Z[2],it=Z[4],tt=Z[5],rt=Z[6];it&&rt===void 0&&Ur(e,"missing exponent power"),it&&q===void 0&&Ur(e,"missing exponent base"),it===void 0&&(tt||rt)&&Ur(e,"missing e before exponent")}if((e[j]==="+"||e[j]==="-")&&(r=e[j++]==="-"),!nu(e[j])&&e[j]!=="."){if(e[j]==="i"||e[j]==="I")return new t(ht.from(r?tu:eu));if(e[j]==="N")return new t(ht.from(Qs))}for(;nu(e[j])||e[j]===".";){if(e[j]==="."){n&&Ur(e,"contains multiple periods"),n=!0,j=j+1;continue}h<34&&(e[j]!=="0"||i)&&(i||(p=o),i=!0,g[w++]=parseInt(e[j],10),h=h+1),i&&(c=c+1),n&&(l=l+1),o=o+1,j=j+1}if(n&&!o)throw new Dt(""+e+" not a valid Decimal128 string");if(e[j]==="e"||e[j]==="E"){var pt=e.substr(++j).match(Vw);if(!pt||!pt[2])return new t(ht.from(Qs));_=parseInt(pt[0],10),j=j+pt[0].length}if(e[j])return new t(ht.from(Qs));if(y=0,!h)y=0,b=0,g[0]=0,c=1,h=1,s=0;else if(b=h-1,s=c,s!==1)for(;g[p+s-1]===0;)s=s-1;for(_<=l&&l-_>16384?_=Xs:_=_-l;_>mn;){if(b=b+1,b-y>Hw){var Pt=g.join("");if(Pt.match(/^0+$/)){_=mn;break}Ur(e,"overflow")}_=_-1}for(;_<Xs||h<c;){if(b===0&&s<h){_=Xs,s=0;break}if(h<c?c=c-1:b=b-1,_<mn)_=_+1;else{var Pt=g.join("");if(Pt.match(/^0+$/)){_=mn;break}Ur(e,"overflow")}}if(b-y+1<s){var Ot=o;n&&(p=p+1,Ot=Ot+1),r&&(p=p+1,Ot=Ot+1);var $t=parseInt(e[p+b+1],10),Wt=0;if($t>=5&&(Wt=1,$t===5)){for(Wt=g[b]%2===1?1:0,k=p+b+2;k<Ot;k++)if(parseInt(e[k],10)){Wt=1;break}}if(Wt){for(var mt=b;mt>=0;mt--)if(++g[mt]>9&&(g[mt]=0,mt===0))if(_<mn)_=_+1,g[mt]=1;else return new t(ht.from(r?tu:eu))}}if(A=Y.fromNumber(0),M=Y.fromNumber(0),s===0)A=Y.fromNumber(0),M=Y.fromNumber(0);else if(b-y<17){var mt=y;for(M=Y.fromNumber(g[mt++]),A=new Y(0,0);mt<=b;mt++)M=M.multiply(Y.fromNumber(10)),M=M.add(Y.fromNumber(g[mt]))}else{var mt=y;for(A=Y.fromNumber(g[mt++]);mt<=b-17;mt++)A=A.multiply(Y.fromNumber(10)),A=A.add(Y.fromNumber(g[mt]));for(M=Y.fromNumber(g[mt++]);mt<=b;mt++)M=M.multiply(Y.fromNumber(10)),M=M.add(Y.fromNumber(g[mt]))}var Gt=Kw(A,Y.fromString("100000000000000000"));Gt.low=Gt.low.add(M),Yw(Gt.low,M)&&(Gt.high=Gt.high.add(Y.fromNumber(1))),G=_+Zl;var at={low:Y.fromNumber(0),high:Y.fromNumber(0)};Gt.high.shiftRightUnsigned(49).and(Y.fromNumber(1)).equals(Y.fromNumber(1))?(at.high=at.high.or(Y.fromNumber(3).shiftLeft(61)),at.high=at.high.or(Y.fromNumber(G).and(Y.fromNumber(16383).shiftLeft(47))),at.high=at.high.or(Gt.high.and(Y.fromNumber(0x7fffffffffff)))):(at.high=at.high.or(Y.fromNumber(G&16383).shiftLeft(49)),at.high=at.high.or(Gt.high.and(Y.fromNumber(562949953421311)))),at.low=Gt.low,r&&(at.high=at.high.or(Y.fromString("9223372036854775808")));var nt=ht.alloc(16);return j=0,nt[j++]=at.low.low&255,nt[j++]=at.low.low>>8&255,nt[j++]=at.low.low>>16&255,nt[j++]=at.low.low>>24&255,nt[j++]=at.low.high&255,nt[j++]=at.low.high>>8&255,nt[j++]=at.low.high>>16&255,nt[j++]=at.low.high>>24&255,nt[j++]=at.high.low&255,nt[j++]=at.high.low>>8&255,nt[j++]=at.high.low>>16&255,nt[j++]=at.high.low>>24&255,nt[j++]=at.high.high&255,nt[j++]=at.high.high>>8&255,nt[j++]=at.high.high>>16&255,nt[j++]=at.high.high>>24&255,new t(nt)},t.prototype.toString=function(){for(var e,r=0,n=new Array(36),i=0;i<n.length;i++)n[i]=0;var s=0,o=!1,c,l={parts:[0,0,0,0]},p,g,h=[];s=0;var w=this.bytes,y=w[s++]|w[s++]<<8|w[s++]<<16|w[s++]<<24,b=w[s++]|w[s++]<<8|w[s++]<<16|w[s++]<<24,_=w[s++]|w[s++]<<8|w[s++]<<16|w[s++]<<24,k=w[s++]|w[s++]<<8|w[s++]<<16|w[s++]<<24;s=0;var A={low:new Y(y,b),high:new Y(_,k)};A.high.lessThan(Y.ZERO)&&h.push("-");var M=k>>26&qw;if(M>>3===3){if(M===Ww)return h.join("")+"Infinity";if(M===Gw)return"NaN";e=k>>15&ru,c=8+(k>>14&1)}else c=k>>14&7,e=k>>17&ru;var G=e-Zl;if(l.parts[0]=(k&16383)+((c&15)<<14),l.parts[1]=_,l.parts[2]=b,l.parts[3]=y,l.parts[0]===0&&l.parts[1]===0&&l.parts[2]===0&&l.parts[3]===0)o=!0;else for(g=3;g>=0;g--){var j=0,Z=zw(l);if(l=Z.quotient,j=Z.rem.low,!!j)for(p=8;p>=0;p--)n[g*9+p]=j%10,j=Math.floor(j/10)}if(o)r=1,n[s]=0;else for(r=36;!n[s];)r=r-1,s=s+1;var Et=r-1+G;if(Et>=34||Et<=-7||G>0){if(r>34)return h.push("".concat(0)),G>0?h.push("E+".concat(G)):G<0&&h.push("E".concat(G)),h.join("");h.push("".concat(n[s++])),r=r-1,r&&h.push(".");for(var i=0;i<r;i++)h.push("".concat(n[s++]));h.push("E"),Et>0?h.push("+".concat(Et)):h.push("".concat(Et))}else if(G>=0)for(var i=0;i<r;i++)h.push("".concat(n[s++]));else{var At=r+G;if(At>0)for(var i=0;i<At;i++)h.push("".concat(n[s++]));else h.push("0");for(h.push(".");At++<0;)h.push("0");for(var i=0;i<r-Math.max(At-1,0);i++)h.push("".concat(n[s++]))}return h.join("")},t.prototype.toJSON=function(){return{$numberDecimal:this.toString()}},t.prototype.toExtendedJSON=function(){return{$numberDecimal:this.toString()}},t.fromExtendedJSON=function(e){return t.fromString(e.$numberDecimal)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return'new Decimal128("'.concat(this.toString(),'")')},t}();Object.defineProperty(za.prototype,"_bsontype",{value:"Decimal128"});var bs=function(){function t(e){if(!(this instanceof t))return new t(e);e instanceof Number&&(e=e.valueOf()),this.value=+e}return t.prototype.valueOf=function(){return this.value},t.prototype.toJSON=function(){return this.value},t.prototype.toString=function(e){return this.value.toString(e)},t.prototype.toExtendedJSON=function(e){return e&&(e.legacy||e.relaxed&&isFinite(this.value))?this.value:Object.is(Math.sign(this.value),-0)?{$numberDouble:"-".concat(this.value.toFixed(1))}:{$numberDouble:Number.isInteger(this.value)?this.value.toFixed(1):this.value.toString()}},t.fromExtendedJSON=function(e,r){var n=parseFloat(e.$numberDouble);return r&&r.relaxed?n:new t(n)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){var e=this.toExtendedJSON();return"new Double(".concat(e.$numberDouble,")")},t}();Object.defineProperty(bs.prototype,"_bsontype",{value:"Double"});var ws=function(){function t(e){if(!(this instanceof t))return new t(e);e instanceof Number&&(e=e.valueOf()),this.value=+e|0}return t.prototype.valueOf=function(){return this.value},t.prototype.toString=function(e){return this.value.toString(e)},t.prototype.toJSON=function(){return this.value},t.prototype.toExtendedJSON=function(e){return e&&(e.relaxed||e.legacy)?this.value:{$numberInt:this.value.toString()}},t.fromExtendedJSON=function(e,r){return r&&r.relaxed?parseInt(e.$numberInt,10):new t(e.$numberInt)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return"new Int32(".concat(this.valueOf(),")")},t}();Object.defineProperty(ws.prototype,"_bsontype",{value:"Int32"});var Ka=function(){function t(){if(!(this instanceof t))return new t}return t.prototype.toExtendedJSON=function(){return{$maxKey:1}},t.fromExtendedJSON=function(){return new t},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return"new MaxKey()"},t}();Object.defineProperty(Ka.prototype,"_bsontype",{value:"MaxKey"});var Ya=function(){function t(){if(!(this instanceof t))return new t}return t.prototype.toExtendedJSON=function(){return{$minKey:1}},t.fromExtendedJSON=function(){return new t},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return"new MinKey()"},t}();Object.defineProperty(Ya.prototype,"_bsontype",{value:"MinKey"});var Jw=new RegExp("^[0-9a-fA-F]{24}$"),hr=null,Se=Symbol("id"),Kt=function(){function t(e){if(!(this instanceof t))return new t(e);var r;if(typeof e=="object"&&e&&"id"in e){if(typeof e.id!="string"&&!ArrayBuffer.isView(e.id))throw new Dt("Argument passed in must have an id that is of type string or Buffer");"toHexString"in e&&typeof e.toHexString=="function"?r=ht.from(e.toHexString(),"hex"):r=e.id}else r=e;if(r==null||typeof r=="number")this[Se]=t.generate(typeof r=="number"?r:void 0);else if(ArrayBuffer.isView(r)&&r.byteLength===12)this[Se]=r instanceof ht?r:Gi(r);else if(typeof r=="string")if(r.length===12){var n=ht.from(r);if(n.byteLength===12)this[Se]=n;else throw new Dt("Argument passed in must be a string of 12 bytes")}else if(r.length===24&&Jw.test(r))this[Se]=ht.from(r,"hex");else throw new Dt("Argument passed in must be a string of 12 bytes or a string of 24 hex characters or an integer");else throw new Dt("Argument passed in does not match the accepted types");t.cacheHexString&&(this.__id=this.id.toString("hex"))}return Object.defineProperty(t.prototype,"id",{get:function(){return this[Se]},set:function(e){this[Se]=e,t.cacheHexString&&(this.__id=e.toString("hex"))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"generationTime",{get:function(){return this.id.readInt32BE(0)},set:function(e){this.id.writeUInt32BE(e,0)},enumerable:!1,configurable:!0}),t.prototype.toHexString=function(){if(t.cacheHexString&&this.__id)return this.__id;var e=this.id.toString("hex");return t.cacheHexString&&!this.__id&&(this.__id=e),e},t.getInc=function(){return t.index=(t.index+1)%16777215},t.generate=function(e){typeof e!="number"&&(e=Math.floor(Date.now()/1e3));var r=t.getInc(),n=ht.alloc(12);return n.writeUInt32BE(e,0),hr===null&&(hr=bp(5)),n[4]=hr[0],n[5]=hr[1],n[6]=hr[2],n[7]=hr[3],n[8]=hr[4],n[11]=r&255,n[10]=r>>8&255,n[9]=r>>16&255,n},t.prototype.toString=function(e){return e?this.id.toString(e):this.toHexString()},t.prototype.toJSON=function(){return this.toHexString()},t.prototype.equals=function(e){if(e==null)return!1;if(e instanceof t)return this[Se][11]===e[Se][11]&&this[Se].equals(e[Se]);if(typeof e=="string"&&t.isValid(e)&&e.length===12&&Ga(this.id))return e===ht.prototype.toString.call(this.id,"latin1");if(typeof e=="string"&&t.isValid(e)&&e.length===24)return e.toLowerCase()===this.toHexString();if(typeof e=="string"&&t.isValid(e)&&e.length===12)return ht.from(e).equals(this.id);if(typeof e=="object"&&"toHexString"in e&&typeof e.toHexString=="function"){var r=e.toHexString(),n=this.toHexString().toLowerCase();return typeof r=="string"&&r.toLowerCase()===n}return!1},t.prototype.getTimestamp=function(){var e=new Date,r=this.id.readUInt32BE(0);return e.setTime(Math.floor(r)*1e3),e},t.createPk=function(){return new t},t.createFromTime=function(e){var r=ht.from([0,0,0,0,0,0,0,0,0,0,0,0]);return r.writeUInt32BE(e,0),new t(r)},t.createFromHexString=function(e){if(typeof e>"u"||e!=null&&e.length!==24)throw new Dt("Argument passed in must be a single String of 12 bytes or a string of 24 hex characters");return new t(ht.from(e,"hex"))},t.isValid=function(e){if(e==null)return!1;try{return new t(e),!0}catch{return!1}},t.prototype.toExtendedJSON=function(){return this.toHexString?{$oid:this.toHexString()}:{$oid:this.toString("hex")}},t.fromExtendedJSON=function(e){return new t(e.$oid)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return'new ObjectId("'.concat(this.toHexString(),'")')},t.index=Math.floor(Math.random()*16777215),t}();Object.defineProperty(Kt.prototype,"generate",{value:vs(function(t){return Kt.generate(t)},"Please use the static `ObjectId.generate(time)` instead")});Object.defineProperty(Kt.prototype,"getInc",{value:vs(function(){return Kt.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(Kt.prototype,"get_inc",{value:vs(function(){return Kt.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(Kt,"get_inc",{value:vs(function(){return Kt.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(Kt.prototype,"_bsontype",{value:"ObjectID"});function Xw(t){return t.split("").sort().join("")}var Vn=function(){function t(e,r){if(!(this instanceof t))return new t(e,r);if(this.pattern=e,this.options=Xw(r??""),this.pattern.indexOf("\0")!==-1)throw new br("BSON Regex patterns cannot contain null bytes, found: ".concat(JSON.stringify(this.pattern)));if(this.options.indexOf("\0")!==-1)throw new br("BSON Regex options cannot contain null bytes, found: ".concat(JSON.stringify(this.options)));for(var n=0;n<this.options.length;n++)if(!(this.options[n]==="i"||this.options[n]==="m"||this.options[n]==="x"||this.options[n]==="l"||this.options[n]==="s"||this.options[n]==="u"))throw new br("The regular expression option [".concat(this.options[n],"] is not supported"))}return t.parseOptions=function(e){return e?e.split("").sort().join(""):""},t.prototype.toExtendedJSON=function(e){return e=e||{},e.legacy?{$regex:this.pattern,$options:this.options}:{$regularExpression:{pattern:this.pattern,options:this.options}}},t.fromExtendedJSON=function(e){if("$regex"in e)if(typeof e.$regex!="string"){if(e.$regex._bsontype==="BSONRegExp")return e}else return new t(e.$regex,t.parseOptions(e.$options));if("$regularExpression"in e)return new t(e.$regularExpression.pattern,t.parseOptions(e.$regularExpression.options));throw new Dt("Unexpected BSONRegExp EJSON object form: ".concat(JSON.stringify(e)))},t}();Object.defineProperty(Vn.prototype,"_bsontype",{value:"BSONRegExp"});var Ja=function(){function t(e){if(!(this instanceof t))return new t(e);this.value=e}return t.prototype.valueOf=function(){return this.value},t.prototype.toString=function(){return this.value},t.prototype.inspect=function(){return'new BSONSymbol("'.concat(this.value,'")')},t.prototype.toJSON=function(){return this.value},t.prototype.toExtendedJSON=function(){return{$symbol:this.value}},t.fromExtendedJSON=function(e){return new t(e.$symbol)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t}();Object.defineProperty(Ja.prototype,"_bsontype",{value:"Symbol"});var Qw=Y,Sp=function(t){ms(e,t);function e(r,n){var i=this;return i instanceof e?(Y.isLong(r)?i=t.call(this,r.low,r.high,!0)||this:ri(r)&&typeof r.t<"u"&&typeof r.i<"u"?i=t.call(this,r.i,r.t,!0)||this:i=t.call(this,r,n,!0)||this,Object.defineProperty(i,"_bsontype",{value:"Timestamp",writable:!1,configurable:!1,enumerable:!1}),i):new e(r,n)}return e.prototype.toJSON=function(){return{$timestamp:this.toString()}},e.fromInt=function(r){return new e(Y.fromInt(r,!0))},e.fromNumber=function(r){return new e(Y.fromNumber(r,!0))},e.fromBits=function(r,n){return new e(r,n)},e.fromString=function(r,n){return new e(Y.fromString(r,!0,n))},e.prototype.toExtendedJSON=function(){return{$timestamp:{t:this.high>>>0,i:this.low>>>0}}},e.fromExtendedJSON=function(r){return new e(r.$timestamp)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return"new Timestamp({ t: ".concat(this.getHighBits(),", i: ").concat(this.getLowBits()," })")},e.MAX_VALUE=Y.MAX_UNSIGNED_VALUE,e}(Qw);function Zw(t){return ri(t)&&Reflect.has(t,"_bsontype")&&typeof t._bsontype=="string"}var Ip=2147483647,Cp=-2147483648,Tp=9223372036854776e3,xp=-9223372036854776e3,t_={$oid:Kt,$binary:wr,$uuid:wr,$symbol:Ja,$numberInt:ws,$numberDecimal:za,$numberDouble:bs,$numberLong:Y,$minKey:Ya,$maxKey:Ka,$regex:Vn,$regularExpression:Vn,$timestamp:Sp};function Dp(t,e){if(e===void 0&&(e={}),typeof t=="number"){if(e.relaxed||e.legacy)return t;if(Math.floor(t)===t){if(t>=Cp&&t<=Ip)return new ws(t);if(t>=xp&&t<=Tp)return Y.fromNumber(t)}return new bs(t)}if(t==null||typeof t!="object")return t;if(t.$undefined)return null;for(var r=Object.keys(t).filter(function(h){return h.startsWith("$")&&t[h]!=null}),n=0;n<r.length;n++){var i=t_[r[n]];if(i)return i.fromExtendedJSON(t,e)}if(t.$date!=null){var s=t.$date,o=new Date;return e.legacy?typeof s=="number"?o.setTime(s):typeof s=="string"&&o.setTime(Date.parse(s)):typeof s=="string"?o.setTime(Date.parse(s)):Y.isLong(s)?o.setTime(s.toNumber()):typeof s=="number"&&e.relaxed&&o.setTime(s),o}if(t.$code!=null){var c=Object.assign({},t);return t.$scope&&(c.$scope=Dp(t.$scope)),ys.fromExtendedJSON(t)}if(Uw(t)||t.$dbPointer){var l=t.$ref?t:t.$dbPointer;if(l instanceof Hn)return l;var p=Object.keys(l).filter(function(h){return h.startsWith("$")}),g=!0;if(p.forEach(function(h){["$ref","$id","$db"].indexOf(h)===-1&&(g=!1)}),g)return Hn.fromExtendedJSON(l)}return t}function e_(t,e){return t.map(function(r,n){e.seenObjects.push({propertyName:"index ".concat(n),obj:null});try{return Ze(r,e)}finally{e.seenObjects.pop()}})}function iu(t){var e=t.toISOString();return t.getUTCMilliseconds()!==0?e:e.slice(0,-5)+"Z"}function Ze(t,e){if((typeof t=="object"||typeof t=="function")&&t!==null){var r=e.seenObjects.findIndex(function(A){return A.obj===t});if(r!==-1){var n=e.seenObjects.map(function(A){return A.propertyName}),i=n.slice(0,r).map(function(A){return"".concat(A," -> ")}).join(""),s=n[r],o=" -> "+n.slice(r+1,n.length-1).map(function(A){return"".concat(A," -> ")}).join(""),c=n[n.length-1],l=" ".repeat(i.length+s.length/2),p="-".repeat(o.length+(s.length+c.length)/2-1);throw new Dt(`Converting circular structure to EJSON:
|
|
33
|
+
`)};Xt.prototype.renderPartial=function(t,e,r,n){if(r){var i=this.getConfigTags(n),s=ja(r)?r(t[1]):r[t[1]];if(s!=null){var o=t[6],c=t[5],l=t[4],p=s;c==0&&l&&(p=this.indentPartial(s,l,o));var g=this.parse(p,i);return this.renderTokens(g,e,r,p,n)}}};Xt.prototype.unescapedValue=function(t,e){var r=e.lookup(t[1]);if(r!=null)return r};Xt.prototype.escapedValue=function(t,e,r){var n=this.getConfigEscape(r)||me.escape,i=e.lookup(t[1]);if(i!=null)return typeof i=="number"&&n===me.escape?String(i):n(i)};Xt.prototype.rawValue=function(t){return t[1]};Xt.prototype.getConfigTags=function(t){return ln(t)?t:t&&typeof t=="object"?t.tags:void 0};Xt.prototype.getConfigEscape=function(t){if(t&&typeof t=="object"&&!ln(t))return t.escape};var me={name:"mustache.js",version:"4.2.0",tags:["{{","}}"],clearCache:void 0,escape:void 0,parse:void 0,render:void 0,Scanner:void 0,Context:void 0,Writer:void 0,set templateCache(t){Fn.templateCache=t},get templateCache(){return Fn.templateCache}},Fn=new Xt;me.clearCache=function(){return Fn.clearCache()};me.parse=function(t,e){return Fn.parse(t,e)};me.render=function(t,e,r,n){if(typeof t!="string")throw new TypeError('Invalid template! Template should be a "string" but "'+Tb(t)+'" was given as the first argument for mustache#render(template, view, partials)');return Fn.render(t,e,r,n)};me.escape=Pb;me.Scanner=ti;me.Context=Xr;me.Writer=Xt;var tp=me;tp.escape=Hb;var Fb={'"':""","\\":"\","\n":"<br>"};function Hb(t){return String(t).replace(/["\\\n]/g,e=>Fb[e])}var Vi=(t,e)=>tp.render(t,e),qi=(t,e)=>{let r=JSON.stringify(t),n=Vi(r,e);try{return JSON.parse(n)}catch(i){throw zt.getInstance().captureError(i,"variable-replacement",{extra:{before:t,after:n}}),i}},Vb="?from=cooee";function $a(){return!!window.Shopify}function qb(){if($a())return window.Shopify.shop?.split(".")?.[0]}function Wb(t){let e=(t.includes("://")?new URL(t).pathname:t).match(/\/products\/([^/]+?)(?:\.html)?$/);return e?e[1]:null}function Wi(){return window.Shopify?.routes?.root??"/"}function Ln(t){return Wi()+t+Vb}var Gb=class{isLocked=!1;queue=[];async acquire(){if(this.isLocked)await new Promise(t=>this.queue.push(t));else{this.isLocked=!0;return}}release(){if(this.queue.length>0){let t=this.queue.shift();t&&t()}else this.isLocked=!1}},zb=class Ho{static LOCK_TIMEOUT=1e4;static RETRY_INTERVAL=200;static MAX_RETRIES=50;static async request(e,r){if(e=`__cooee_${e}_lock__`,"locks"in navigator&&!this.isInAppBrowser())return navigator.locks.request(e,r);let n=!1,i=0,s=Math.random().toString(36).substring(2,10);for(;i++<this.MAX_RETRIES&&(T.debug(`Lock retry ${i}`),n=await this.acquire(e,s),!n);)await this.sleep(Ho.RETRY_INTERVAL*i+Math.random()*100);try{return await r()}finally{this.release(e,s)}}static isInAppBrowser(){let e=navigator.userAgent||"",r=/iPhone|iPad|iPod/i.test(e),n=/(FBAV|FBAN|Instagram)/i.test(e);return r&&n}static async acquire(e,r){let n=Date.now(),i=localStorage.getItem(e),s=i?JSON.parse(i):null;if(s&&n<=s.expiry)return!1;let o={owner:r,expiry:n+Ho.LOCK_TIMEOUT};return localStorage.setItem(e,JSON.stringify(o)),await this.sleep(150+Math.random()*100),JSON.parse(localStorage.getItem(e)||"{}").owner===r?(T.debug(`${r}: Lock acquired!`),!0):(T.debug(`${r}: Race lost. Another tab acquired the lock.`),!1)}static release(e,r){let n=localStorage.getItem(e);if(!n)return;let i=JSON.parse(n);i.owner===r?(localStorage.removeItem(e),T.debug(`${r}: Lock released`)):T.debug(`${r}: Cannot release lock. Current owner: ${i.owner}`)}static sleep(e){return new Promise(r=>setTimeout(r,e))}},xt=class ep{static CURRENT;token;items;total_price;original_total_price;items_subtotal_price;currency;item_count;attributes;cart_level_discount_applications;total_discount;lock=new Gb;constructor(){}static getCurrent(){return this.CURRENT||(this.CURRENT=new ep),this.CURRENT}async getNormalisedCart(e){await this.fetchCartFromShopify(e);let r=this.convertToCooeeCart();return e&&await Mt.set(ct.CURRENT_CART,r),r}async addCooeeAttributes(){await this.lock.acquire();let e=await ee.get(ct.ID),r=await Mt.get(ct.DEVICE_ID);if(this.attributes?.letscooee_did===r&&this.attributes?.letscooee_sid===e){T.debug("Not calling Shopify update.js API.","Current attributes:",this.attributes),this.lock.release();return}let n={letscooee_did:r,letscooee_sid:e,__letscooee_time:new Date().toLocaleString()};T.debug("Updating Shopify cart with attributes:",n);let i=Ln("cart/update.js"),s=await(await fetch(i,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({attributes:n})})).json();T.debug("Updated cart attributes",JSON.stringify(s)),this.update(s),this.lock.release()}update(e){return this.token=e.token,this.items=e.items,this.total_price=e.total_price,this.original_total_price=e.original_total_price,this.items_subtotal_price=e.items_subtotal_price,this.currency=e.currency,this.item_count=e.item_count,this.attributes=e.attributes,this.cart_level_discount_applications=e.cart_level_discount_applications,this.total_discount=e.total_discount,kt.get().currencyCode=this.currency,T.log("Updated ShopifyCart",this),this}toString(){return`ShopifyCart(token: ${this.token}, itemCount: ${this.item_count})`}convertToCooeeCart(){return{amount:this.total_price/100,originalAmount:this.original_total_price/100,itemsSubtotalPrice:this.items_subtotal_price/100,currency:this.currency,itemCount:this.item_count,items:this.normaliseItems(this.items),token:this.token}}normaliseItems(e){if(!e)return T.error("No item received to be sent"),[];Array.isArray(e)||(e=[e]);let r=[];for(let n of e){if(!n.id||!n.title){T.warn("Invalid item received",n);continue}let i={name:n.title,quantity:+n.quantity||1,mID:n.product_id?.toString(),vID:n.id.toString(),price:+n.price/100||0,finalPrice:+n.final_price/100||0,properties:n.properties,key:n.key},s=n.selling_plan_allocation?.selling_plan;if(!s){r.push(i);continue}i.sellingPlanAllocation={sellingPlan:{fixedSellingPlan:s.fixed_selling_plan,id:s.id,name:s.name,recurringDeliveries:s.recurring_deliveries}},r.push(i)}return r}async fetchCartFromShopify(e){if(!e&&this.token){T.debug("Not fetching cart");return}T.debug("Fetching cart");let r=Ln("cart.js"),n=await(await fetch(r)).json();this.update(n)}},Kb=class{id;mID;handle;title;imageURL;constructor(t){t??={},this.id=t.id,this.mID=t.mID,this.handle=t.handle,this.title=t.title,this.imageURL=t.imageURL}},Yb=class{enabled;constructor(t){this.enabled=t.enabled}},Jb=class extends Yb{max;min;constructor(t){t??={},super(t),this.min=t.min,this.max=t.max}},Xb=class{productQuantity;constructor(t){t??={},this.productQuantity=new Jb(t.productQuantity)}},ei=class{t;bg;br;clc;shd;spc;trf;a;w;h;x;y;constructor(t){this.t=t.t,t.bg&&(this.bg=new Fu(t.bg)),t.br&&(this.br=new ha(t.br)),t.shd&&(this.shd=new If(t.shd)),t.spc&&(this.spc=new da(t.spc)),this.trf=new Vu(t.trf),this.clc=t.clc,this.w=t.w,this.h=t.h,this.x=t.x,this.y=t.y,this.a=t.a}get alpha(){return this.a??100}get type(){return this.t}get typeAsString(){return Fa[this.t]}get click(){return this.clc}},Fa=(t=>(t[t.IMAGE=1]="IMAGE",t[t.TEXT=2]="TEXT",t[t.BUTTON=3]="BUTTON",t[t.FLEXBOX=4]="FLEXBOX",t[t.MULTI_COLUMN=5]="MULTI_COLUMN",t[t.CHECKBOX=6]="CHECKBOX",t[t.PRODUCTS=11]="PRODUCTS",t[t.PRODUCT=12]="PRODUCT",t[t.PRODUCT_IMAGE=13]="PRODUCT_IMAGE",t[t.PRODUCT_TITLE=14]="PRODUCT_TITLE",t[t.PRODUCT_VARIATIONS=15]="PRODUCT_VARIATIONS",t[t.PRODUCT_VARIATIONS_SELLING_PLANS=16]="PRODUCT_VARIATIONS_SELLING_PLANS",t[t.PRODUCT_BUTTON=18]="PRODUCT_BUTTON",t[t.PRODUCT_RATING=19]="PRODUCT_RATING",t[t.EMAIL_INPUT=51]="EMAIL_INPUT",t[t.PHONE_INPUT=52]="PHONE_INPUT",t[t.COUNTDOWN_TIMER=61]="COUNTDOWN_TIMER",t[t.CAROUSEL=62]="CAROUSEL",t[t.SHAPE=100]="SHAPE",t))(Fa||{}),rp=class extends ei{constructor(t){super(t)}},Ha=class extends ei{src;constructor(t){super(t),this.src=t.src}},ds=class extends ei{typo;constructor(t){super(t);let e=x(x({},t.f),t.typo);t.alg&&(e.ta=t.alg),t.c&&(e.tc=t.c),this.typo=new ze(e)}get color(){return this.typography.tc}get typography(){return this.typo}},Vo=class extends ds{prs;constructor(t){super(t),this.prs=t.prs}get parts(){return this.prs}},Qb=class extends ei{o;constructor(t){super(t),this.o=t.o??5,this.w=this.w??1080,this.h=this.h??1920}getOrigin(){return this.o}},np=class{dd;hh;mm;ss;date;constructor(t){t??={},this.dd=t.dd??0,this.hh=t.hh??0,this.mm=t.mm??0,this.ss=t.ss??0,this.date=t.date?new Date(t.date):void 0}start(t,e){let r=new Date;t===2?(r.setSeconds(r.getSeconds()+this.ss),r.setMinutes(r.getMinutes()+this.mm),r.setHours(r.getHours()+this.hh),r.setDate(r.getDate()+this.dd)):r=this.date??new Date;let n=window.setInterval(()=>{let i=new Date().getTime(),s=r.getTime()-i;if(s<1){clearInterval(n);return}let o=Math.floor(s/(1e3*60*60*24)),c=Math.floor(s%(1e3*60*60*24)/(1e3*60*60)),l=Math.floor(s%(1e3*60*60)/(1e3*60)),p=Math.floor(s%(1e3*60)/1e3);e({days:o,hours:c,minutes:l,seconds:p})},1e3);return n}},ip=class extends ds{gap;timer;timerType;horizontal;lblPos;show;constructor(t){t??={},super(t),this.gap=t.gap,this.timerType=t.type,this.timer=new np(t.timer),this.show=t.show??{day:!0,hour:!0,minute:!0,second:!0},this.horizontal=t.horizontal,this.lblPos=t.lblPos}},Zb=class{txt;c;constructor(t){t??={},this.txt=t.txt,this.c=new ie(t.c??{})}get text(){return this.txt}get color(){return this.c}},Va=class extends ds{ph;constructor(t){super(t),this.ph=new Zb(t.ph)}get placeholderText(){return this.ph.text}get placeholderColor(){return this.ph.color.rgba}},sp=class extends Va{constructor(t){t??={},super(t)}},op=class extends Va{},ap=class extends Va{},cp=class extends Ha{},fs=(t=>(t[t.LOW=1]="LOW",t[t.MEDIUM=2]="MEDIUM",t[t.HIGH=3]="HIGH",t))(fs||{}),tw=class{en;ex;constructor(t){t=t??{},this.en=t.en,this.ex=t.ex}getEnterAnimation(){switch(this.en){case 2:return[{transform:"translateY(-100%)"},{transform:"translateY(0%)"}];case 3:return[{transform:"translateY(100%)"},{transform:"translateY(0%)"}];case 4:return[{transform:"translateX(-100%)"},{transform:"translateX(0%)"}];case 5:return[{transform:"translateX(100%)"},{transform:"translateX(0%)"}];case 6:return[{transform:"translate(-100%, -100%)"},{transform:"translate(0%, 0%)"}];case 7:return[{transform:"translate(100%, -100%)"},{transform:"translate(0%, 0%)"}];case 8:return[{transform:"translate(-100%, 100%)"},{transform:"translate(0%, 0%)"}];case 9:return[{transform:"translate(100%, 100%)"},{transform:"translate(0%, 0%)"}];case 10:return[{transform:"scale(0.1)"},{transform:"scale(1)"}];default:return[]}}getExitAnimation(){switch(this.ex){case 2:return[{transform:"translateY(0%)"},{transform:"translateY(-100%)"}];case 3:return[{transform:"translateY(0%)"},{transform:"translateY(100%)"}];case 4:return[{transform:"translateX(0%)"},{transform:"translateX(-100%)"}];case 5:return[{transform:"translateX(0%)"},{transform:"translateX(100%)"}];case 6:return[{transform:"translate(0%, 0%)"},{transform:"translate(-100%, -100%)"}];case 7:return[{transform:"translate(0%, 0%)"},{transform:"translate(100%, -100%)"}];case 8:return[{transform:"translate(0%, 0%)"},{transform:"translate(-100%, 100%)"}];case 9:return[{transform:"translate(0%, 0%)"},{transform:"translate(100%, 100%)"}];case 10:return[{transform:"scale(1)"},{transform:"scale(0)"}];default:return[]}}},Vl=class extends ei{gvt;max;cover;anim;embedded;position;constructor(t){t=t??{},super(t),this.gvt=t.gvt??5,this.max=t.max,this.cover=t.cover??!0,this.anim=new tw(t.anim),this.embedded=t.embedded,this.position=t.position??1,this.spc||(this.spc=new da({pl:H.IN_APP_DEFAULT_PADDING,pr:H.IN_APP_DEFAULT_PADDING,pt:H.IN_APP_DEFAULT_PADDING,pb:H.IN_APP_DEFAULT_PADDING}))}isEmbedded(){return this.position===2&&!!this.embedded}getEmbeddedSelector(){return`.letscooee-engagement.container-${this.embedded}`}},ew=class extends Vl{cont;elems=[];mob;constructor(t){t=t??{},super(t),this.cont=new Qb(t.cont),this.mob=new Vl(t.mob),this.bg||(this.bg=this.cont.bg,delete this.cont.bg),t.elems.forEach(e=>{e.t===1?this.elems.push(new Ha(e)):e.t===2?this.elems.push(new Vo(e)):e.t===3?this.elems.push(new Vo(e)):e.t===100?this.elems.push(new rp(e)):e.t===51?this.elems.push(new op(e)):e.t===52?this.elems.push(new ap(e)):e.t===61?this.elems.push(new ip(e)):e.t===15||e.t===16?this.elems.push(new sp(e)):e.t===13&&this.elems.push(new cp(e))})}getStylesForWrapper(){if(this.cover)return{};let t;return this.gvt===1?t={top:0,left:0}:this.gvt===2?t={top:0,left:"50%",transform:"translateX(-50%)"}:this.gvt===3?t={top:0,right:0}:this.gvt===6?t={top:"50%",right:0,transform:"translateY(-50%)"}:this.gvt===9?t={bottom:0,right:0}:this.gvt===8?t={bottom:0,left:"50%",transform:"translateX(-50%)"}:this.gvt===7?t={bottom:0,left:0}:this.gvt===4?t={top:"50%",left:0,transform:"translateY(-50%)"}:t={top:"50%",left:"50%",transform:"translateX(-50%) translateY(-50%)"},t.overflow="visible",t}getFlexStylesForContainer(){let t={display:"flex",flexDirection:"row"},e,r;return this.gvt===1?(e="flex-start",r="flex-start"):this.gvt===2?(e="center",r="flex-start"):this.gvt===3?(e="flex-end",r="flex-start"):this.gvt===4?(e="flex-start",r="center"):this.gvt===6?(e="flex-end",r="center"):this.gvt===7?(e="flex-start",r="flex-end"):this.gvt===8?(e="center",r="flex-end"):this.gvt===9?(e="flex-end",r="flex-end"):(e="center",r="center"),t.alignItems=r,t.justifyContent=e,t.overflow="visible",t}overrideForMobileView(){this.max=this.mob.max??this.max,this.cover=this.mob.cover??this.cover,this.gvt=this.mob.gvt??this.gvt,this.bg=this.mob.bg??this.bg,this.spc=this.mob.spc??this.spc,this.anim=this.mob.anim??this.anim,this.position=this.mob.position??this.position,this.embedded=this.mob.embedded??this.embedded}},lp=class{gap;dir;wrap;jc;ai;scroll;constructor(t){t??={},this.gap=t.gap??0,this.dir=t.dir??"row",this.wrap=t.wrap??"nowrap",this.jc=t.jc??"flex-start",this.ai=t.ai??"flex-start",this.scroll=t.scroll}},rw=class{of;disp;pos;top;bottom;left;right;zIndex;constructor(t){t??={},this.of=t.of,this.disp=t.disp,this.pos=t.pos,this.top=t.top,this.bottom=t.bottom,this.left=t.left,this.right=t.right,this.zIndex=t.zIndex}},nw=class{w;h;maxW;maxH;minW;minH;constructor(t){t??={},this.w=t.w??"100%",this.h=t.h??"auto",this.maxW=t.maxW,this.maxH=t.maxH,this.minW=t.minW,this.minH=t.minH}},ql=class{size;bg;br;spc;typo;lout;flex;constructor(t){t??={},this.spc=new da(t.spc),t.size&&(this.size=new nw(t.size)),t.bg&&(this.bg=new Fu(t.bg)),t.br&&(this.br=new ha(t.br)),t.typo&&(this.typo=new ze(t.typo)),t.lout&&(this.lout=new rw(t.lout)),t.flex&&(this.flex=new lp(t.flex))}},up=class{sm;lg;constructor(t){t??={},this.sm=new ql(t.sm),this.lg=new ql(t.lg)}},ar=class{t;style;hide;when;clc;l;constructor(t,e){e??={},this.t=t,this.style=new up(e.style),this.hide=e.hide,this.l=e.l,e.when?.op&&(this.when=e.when),e.clc&&(this.clc=e.clc)}get stringType(){return Fa[this.t]}},Oe=class extends ar{text;constructor(t,e){t?.style?.lg?.typo?.s&&delete t.style.lg.typo.s,t?.style?.sm?.typo?.s&&delete t.style.sm.typo.s,super(e??2,t),t??={},this.text=t.text}},qo=class extends Oe{constructor(t,e){super(t,e??3)}},hp=class extends ar{value;constructor(t){super(6,t),t??={},this.value=t.value}},pp=class extends Oe{showChips;optionsConfig;constructor(t=15,e){super(e,t),e??={},this.showChips=e.showChips??!1,this.optionsConfig=e.optionsConfig??{}}},iw=class extends ar{c;iconSize;showSingleStar;fullStar;halfStart;constructor(t){super(19,t),t??={},this.c=new ie(t.c),this.iconSize=t.iconSize??24,this.showSingleStar=t.showSingleStar??!1,this.fullStar=t.fullStar,this.halfStart=t.halfStart}},sw=ke(rn()),ow=class{enabled;type;color;constructor(t){t??={},this.enabled=t.enabled,this.type=t.type,this.color=new ie(t.color)}},aw=class{size;enabled;color;constructor(t){t??={},this.enabled=t.enabled,this.size=t.size,this.color=new ie(t.color)}},dp=class{navigation;pagination;autoplay;maxInRow;gap;slidesPerView;constructor(t){t??={},this.navigation=new aw(t.navigation),this.pagination=new ow(t.pagination),this.autoplay=t.autoplay,this.slidesPerView=t.slidesPerView??1,this.maxInRow=t.maxInRow??t.slidesPerView??4,this.gap=t.gap??0}},cw=class extends ar{conf;slide;formData;values;allowedTypes;constructor(t){super(62,t),t&&this.update(t)}update(t){t??={},this.slide=Qr.getParsedElement(t.slide),this.formData=t.formData,this.values=t.values,this.conf=new dp(t.conf),this.allowedTypes=t.allowedTypes}},lw=class extends Oe{gap;timer;timerType;horizontal;lblPos;show;constructor(t){t??={},super(t,61),this.gap=t.gap,this.timerType=t.type,this.timer=new np(t.timer),this.show=t.show??{days:!0,hours:!0,minutes:!0,seconds:!0},this.horizontal=t.horizontal,this.lblPos=t.lblPos}},qa=class extends ar{elems;constructor(t){super(4,t),this.update(t)}update(t){t??={},this.elems??=[],t.elems?.forEach(e=>{let r=Qr.getParsedElement(e);r&&this.elems.push(r)})}},Wo=class extends ar{src;sm;lg;constructor(t,e){super(e??1,t),t&&this.update(t)}update(t){this.src=t.src,this.sm=t.sm,this.lg=t.lg}},Qr=class fp{static getParsedElements(e){let r=[];return e?.forEach(n=>{let i=fp.getParsedElement(n);i&&r.push(i)}),r}static getParsedElement(e){switch(e.t){case 2:return new Oe(e);case 3:return new qo(e);case 6:return new hp(e);case 11:return new uw(e);case 12:return new Wa(e);case 61:return new lw(e);case 4:return new qa(e);case 1:return new Wo(e);case 13:return new Wo(e,13);case 14:return new Oe(e,14);case 15:case 16:return new pp(e.t,e);case 18:return new qo(e,18);case 62:return new cw(e);case 19:return new iw(e);default:sw.default.error("Unknown element type",e.t);return}}static parseAlignmentToJustifyContent(e){switch(e){case 1:return"center";case 2:return"flex-end";case 0:return"flex-start";default:return"flex-start"}}},Wa=class extends ar{img;title;desc;price;compareAt;btn;variantDD;show;symbol;cBox;elems;noLinks;constructor(t){if(t??={},super(12,t),this.show=t.show,this.elems=Qr.getParsedElements(t.elems),this.noLinks=t.noLinks,!this.elems.length){t.cBox&&this.elems.push(new hp(t.cBox)),this.elems.push(new Wo(t.img,13));let e=new Oe(t.title,14);e.hide=!t.show?.title,e.text="{{ product.name }}",this.elems.push(e);let r=new Oe(t.price);r.text="{{ product.price }}",r.hide=!t.show?.price;let n=new Oe(t.compareAt);n.text="{{ product.compare_price }}",n.hide=!t.show?.price,t.compareAt||(n.style=new up(r.style),n.style.lg.typo=new ze(lt(x({},n.style.lg.typo),{td:"line-through"})),n.style.sm.typo=new ze(lt(x({},n.style.sm.typo),{td:"line-through"})));let i=new qa({style:{lg:{spc:{mb:10},flex:{dir:"row",gap:10,ai:"center",jc:Qr.parseAlignmentToJustifyContent(r.style.lg.typo?.ta)}}}});i.elems.push(n),i.elems.push(r),this.elems.push(i);let s=new pp(15,t.variantDD);if(s.hide=!t.show?.variantDD,this.elems.push(s),t.btn){let o=new qo(t.btn,18);o.hide=!t.show?.btn,this.elems.push(o)}}t.symbol&&(this.symbol=new Oe(t.symbol))}},uw=class extends ar{conf;prod;constructor(t){super(11,t),t??={},this.conf=new hw(t.conf),this.prod=new Wa(t.prod)}},Wl=class extends dp{disp;maxItems;constructor(t){t??={},super(t),this.disp=t.disp,this.maxItems=t.maxItems}},hw=class{lg;sm;constructor(t){t??={},this.lg=new Wl(t.lg),this.sm=new Wl(t.sm)}},pw=class extends qa{constructor(t){super(t)}},gp=class{cont;elems=[];constructor(t){t=t??{},this.cont=new pw(t.cont),t.elems?.forEach(e=>{this.addRawElement(e)})}addRawElement(t){let e=Qr.getParsedElement(t);return e&&this.elems.push(e),e}};function Go(t,e){return dw(t,e,0,5)}function dw(t,e,r=0,n=50){if(e){if(r>n){console.warn("Maximum recursion depth reached in findFirstElementOfType");return}for(let i of e){if(i.t===t)return i;let s="elems"in i?i.elems:[];if(s?.length>0){let o=Go(t,s);if(o)return o}}}}var fw=class{engagementID;shortID;contentType;delay;onsiteDeliveryType;objective;redirectBehaviour;constructor(t){this.shortID=t.shortID,this.contentType=t.contentType,this.engagementID=t.engagementID,this.delay=t.delay??0,this.redirectBehaviour=t.redirectBehaviour,this.onsiteDeliveryType=t.onsiteDeliveryType,this.objective=t.objective}isAnySplit(){return this.isABTesting()||this.isExclusionTesting()}isExclusionTesting(){return this.contentType===Ci.EXCLUSION}isABTesting(){return this.contentType===Ci.ABTESTING}isSingleContent(){return this.contentType===Ci.SINGLE}},mp=class{videoConfig;savingsBarConfig;constructor(t){this.update(t)}update(t){t??={},t.videoConfig&&(this.videoConfig=new Ib(t.videoConfig)),t.savingsBarConfig&&(this.savingsBarConfig=new Of(t.savingsBarConfig))}},sr=class extends fw{contentID;variation;ian;widget;discount;placement;promotionType;contentSource;manipulation;klaviyoFormID;entryAnimation;hasMultiplePlacement;skipSubscribedItems;progressBarConfig;stickyATCConfig;bundleConfig;content;previewType;occurred;id;currency;props;items;nonMutableItems;embeddedItems;bundleFrom;collections;customerData;experimentConfig;discountData=xr({});constructor(t){super(t),this.id=t.id,this.currency=kt.get().currencyCode??"USD",this.contentID=t.contentID,this.variation=t.variation,t.widget&&(this.widget=new gp(t.widget)),this.previewType=t.previewType,this.occurred=t.occurred??new Date,this.props=t.props,this.entryAnimation=t.entryAnimation??"NONE",this.embeddedItems=t.embeddedItems?.map(e=>new Ar(e)),this.items=t.items?.map(e=>new qe(e))??[],this.nonMutableItems=t.items?.map(e=>new qe(e))??[],this.collections=t.collections?.map(e=>new Kb(e))??[],this.discount=t.discount,this.placement=t.placement,this.customerData=t.customerData,this.ian=t.ian?this.processPopup(t.ian):void 0,this.promotionType=t.promotionType,this.manipulation=new Xb(t.manipulation),this.contentSource=t.contentSource,this.klaviyoFormID=t.klaviyoFormID,this.hasMultiplePlacement=t.hasMultiplePlacement,this.skipSubscribedItems=t.skipSubscribedItems,this.stickyATCConfig=t.stickyATCConfig,t.experimentConfig&&(this.experimentConfig=new xf(t.experimentConfig)),t.progressBarConfig&&(this.progressBarConfig=new Af(t.progressBarConfig)),t.bundleConfig&&(this.bundleConfig=new vf(t.bundleConfig)),t.bundleFrom&&(this.bundleFrom=new qe(t.bundleFrom)),t.content&&(this.content=new mp(t.content))}shouldDelay(){return this.delay>0}getDelaySeconds(){let t=new Date().getTime()-this.occurred.getTime();return this.delay*1e3-t}isBundle(){return this.objective===Ie.BUNDLE_AND_UPSELL}isCartEmbed(){return this.onsiteDeliveryType===wo.CART_EMBED}isPageEmbed(){return this.onsiteDeliveryType===wo.PAGE_EMBED}isProgressBar(){return this.objective===Ie.PROGRESS_BAR}isSubscriptionUpsell(){return this.objective===Ie.SUBSCRIPTION_UPSELL}isCartRecovery(){return this.objective===Ie.CART_RECOVERY}isProductPromotion(){return this.objective===Ie.PRODUCT_PROMOTION}isProductPromoted(){return this.isProductPromotion()||this.isBundle()||this.isCartRecovery()}isCollectionPromoted(){return this.isProductPromotion()&&this.collections.length>0&&this.promotionType===Mu.COLLECTION}isBYOB(){return this.objective===Ie.BYOB}isStickyATC(){return this.objective===Ie.STICKY_ATC}isShoppableVideo(){return this.objective===Ie.SHOPPABLE_VIDEO}isSavingsBar(){return this.objective===Ie.SAVINGS_BAR}processPopup(t){let e=this.items[0],r={},n={};if(e){let o=e.selectedOrFirstVariant.value;r={name:e.name,id:e.mID,link:e.link,vID:o.mID,image:e.variantImage,price:pe(o.price.d),comparePrice:pe(o.price.cmp),quantity:e.quantity},n={quantity:o.quantity}}let i={productCount:xt.getCurrent().item_count},s=Vi(JSON.stringify(t),{product:r,variant:n,cart:i,discount:this.discount,customer:this.customerData});return e&&(s=s.replace(new RegExp(H.PLACEHOLDER_IMAGE,"gi"),e.variantImage??e.firstImageURL)),new ew(JSON.parse(s))}calculateDiscountData(t,e){let r=Dn.sum(t,s=>s.selectedOrFirstVariant.value.price.d),n=Dn.sum(t,s=>{let o=s.selectedOrFirstVariant.value.price;return o.cmp??o.d}),i={actualPrice:r,totalComparePrice:n,discountAmount:0,discountPercentage:0,discountedPrice:r};if(!t?.length||!e||!this.discount?.type){this.discountData.value=this.formatCurrencyAndNumber(i);return}if(Ue.BXGY===this.discount.type&&this.discount.values?.length)i.discountPercentage=this.discount.values[0],this.updateEffectivePrice(t,i.discountPercentage,!0),i.discountAmount=i.actualPrice-Dn.sum(t,s=>s.selectedOrFirstVariant.value.effectivePrice.value);else if([Ue.UNIQUE_FLAT_ITEMS,Ue.STATIC,Ue.UNIQUE_FLAT].includes(this.discount.type)&&this.discount.values?.length)i.discountPercentage=this.discount.values[0],i.discountAmount=i.actualPrice*i.discountPercentage/100,this.updateEffectivePrice(t,i.discountPercentage);else if(this.discount.type===Ue.UNIQUE_FIXED_ITEMS&&this.discount.values?.length)i.discountAmount=i.actualPrice-this.discount.values[0],i.discountPercentage=i.discountAmount/i.actualPrice*100,this.updateEffectivePrice(t,i.discountPercentage);else if(this.discount.type===Ue.UNIQUE_CHEAPEST_ITEM_FREE){t.sort((o,c)=>c.selectedOrFirstVariant.value.price.d-o.selectedOrFirstVariant.value.price.d);let s=t[t.length-1];s.selectedOrFirstVariant.value.effectivePrice.value=0,i.discountAmount=s.selectedOrFirstVariant.value.price.d,i.discountPercentage=i.discountAmount/i.actualPrice*100}i.discountedPrice=i.actualPrice-i.discountAmount,this.discountData.value=this.formatCurrencyAndNumber(i)}getPrivateAttributesForLineItem(){return se.get().skipItemAttribute?{}:{[H.VIA]:"Cooee",[H.CAMPAIGN_ATTRIBUTE]:this.shortID,[H.CONTENT_ATTRIBUTE]:this.contentID}}getKVFormatPrivateAttributesForLineItem(){return se.get().skipItemAttribute?[]:[{key:H.VIA,value:"Cooee"},{key:H.CAMPAIGN_ATTRIBUTE,value:this.shortID},{key:H.CONTENT_ATTRIBUTE,value:this.contentID}]}isBundleOnCartDrawer(){return this.isBundle()&&this.isCartEmbed()}isBundleOnPDP(){return this.isPageEmbed()&&this.isBundle()}hasSwiperElement(){if(Go(62,this.widget?.elems))return!0;let t=Go(11,this.widget?.elems);return t?t.conf.lg.disp===2||t.conf.sm.disp===2:!1}toString(){return`Engagement(id=${this.shortID})`}getCartMagicVariables(){let t=xt.getCurrent(),e=Dn.sum(t.items,r=>r.discounts?.reduce((n,i)=>n+(i.amount??0),0)??0);return{productCount:t.item_count,product_count:t.item_count,amount:pe(t.total_price/100),originalAmount:pe(t.original_total_price/100),total_line_items_discount:pe(e/100),total_discount:pe(t.total_discount/100)}}updateEffectivePrice(t,e,r=!1){let n=kt.get().getCurrentItem();t.forEach(i=>{let s=i.selectedOrFirstVariant.value,o=s.price;if(r&&i.mID===n.mID)s.effectivePrice.value=o.d;else{let c=o.d*e/100;s.effectivePrice.value=o.d-c}})}formatCurrencyAndNumber(t){if(!t)return{};let e={discountPercentage:eb(t.discountPercentage??0),discountCode:this.discount?.code};return["actualPrice","discountAmount","discountedPrice","totalComparePrice"].map(r=>{e[r]=pe(t[r])}),e}};function gw(t,e){return e={exports:{}},t(e,e.exports),e.exports}var mw=ww,vw=Ew,yw=Cw,Ae=[],he=[],bw=typeof Uint8Array<"u"?Uint8Array:Array,Ks="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(ur=0,Gl=Ks.length;ur<Gl;++ur)Ae[ur]=Ks[ur],he[Ks.charCodeAt(ur)]=ur;var ur,Gl;he[45]=62;he[95]=63;function vp(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");r===-1&&(r=e);var n=r===e?0:4-r%4;return[r,n]}function ww(t){var e=vp(t),r=e[0],n=e[1];return(r+n)*3/4-n}function _w(t,e,r){return(e+r)*3/4-r}function Ew(t){var e,r=vp(t),n=r[0],i=r[1],s=new bw(_w(t,n,i)),o=0,c=i>0?n-4:n,l;for(l=0;l<c;l+=4)e=he[t.charCodeAt(l)]<<18|he[t.charCodeAt(l+1)]<<12|he[t.charCodeAt(l+2)]<<6|he[t.charCodeAt(l+3)],s[o++]=e>>16&255,s[o++]=e>>8&255,s[o++]=e&255;return i===2&&(e=he[t.charCodeAt(l)]<<2|he[t.charCodeAt(l+1)]>>4,s[o++]=e&255),i===1&&(e=he[t.charCodeAt(l)]<<10|he[t.charCodeAt(l+1)]<<4|he[t.charCodeAt(l+2)]>>2,s[o++]=e>>8&255,s[o++]=e&255),s}function Sw(t){return Ae[t>>18&63]+Ae[t>>12&63]+Ae[t>>6&63]+Ae[t&63]}function Iw(t,e,r){for(var n,i=[],s=e;s<r;s+=3)n=(t[s]<<16&16711680)+(t[s+1]<<8&65280)+(t[s+2]&255),i.push(Sw(n));return i.join("")}function Cw(t){for(var e,r=t.length,n=r%3,i=[],s=16383,o=0,c=r-n;o<c;o+=s)i.push(Iw(t,o,o+s>c?c:o+s));return n===1?(e=t[r-1],i.push(Ae[e>>2]+Ae[e<<4&63]+"==")):n===2&&(e=(t[r-2]<<8)+t[r-1],i.push(Ae[e>>10]+Ae[e>>4&63]+Ae[e<<2&63]+"=")),i.join("")}var Ys={byteLength:mw,toByteArray:vw,fromByteArray:yw},Tw=function(t,e,r,n,i){var s,o,c=i*8-n-1,l=(1<<c)-1,p=l>>1,g=-7,h=r?i-1:0,w=r?-1:1,y=t[e+h];for(h+=w,s=y&(1<<-g)-1,y>>=-g,g+=c;g>0;s=s*256+t[e+h],h+=w,g-=8);for(o=s&(1<<-g)-1,s>>=-g,g+=n;g>0;o=o*256+t[e+h],h+=w,g-=8);if(s===0)s=1-p;else{if(s===l)return o?NaN:(y?-1:1)*(1/0);o=o+Math.pow(2,n),s=s-p}return(y?-1:1)*o*Math.pow(2,s-n)},xw=function(t,e,r,n,i,s){var o,c,l,p=s*8-i-1,g=(1<<p)-1,h=g>>1,w=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,y=n?0:s-1,b=n?1:-1,_=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(c=isNaN(e)?1:0,o=g):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),o+h>=1?e+=w/l:e+=w*Math.pow(2,1-h),e*l>=2&&(o++,l/=2),o+h>=g?(c=0,o=g):o+h>=1?(c=(e*l-1)*Math.pow(2,i),o=o+h):(c=e*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;t[r+y]=c&255,y+=b,c/=256,i-=8);for(o=o<<i|c,p+=i;p>0;t[r+y]=o&255,y+=b,o/=256,p-=8);t[r+y-b]|=_*128},Mr={read:Tw,write:xw},gs=gw(function(t,e){var r=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;e.Buffer=o,e.SlowBuffer=A,e.INSPECT_MAX_BYTES=50;var n=2147483647;e.kMaxLength=n,o.TYPED_ARRAY_SUPPORT=i(),!o.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function i(){try{var a=new Uint8Array(1),u={foo:function(){return 42}};return Object.setPrototypeOf(u,Uint8Array.prototype),Object.setPrototypeOf(a,u),a.foo()===42}catch{return!1}}Object.defineProperty(o.prototype,"parent",{enumerable:!0,get:function(){if(o.isBuffer(this))return this.buffer}}),Object.defineProperty(o.prototype,"offset",{enumerable:!0,get:function(){if(o.isBuffer(this))return this.byteOffset}});function s(a){if(a>n)throw new RangeError('The value "'+a+'" is invalid for option "size"');var u=new Uint8Array(a);return Object.setPrototypeOf(u,o.prototype),u}function o(a,u,d){if(typeof a=="number"){if(typeof u=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return g(a)}return c(a,u,d)}o.poolSize=8192;function c(a,u,d){if(typeof a=="string")return h(a,u);if(ArrayBuffer.isView(a))return y(a);if(a==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+babelHelpers.typeof(a));if(ce(a,ArrayBuffer)||a&&ce(a.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(ce(a,SharedArrayBuffer)||a&&ce(a.buffer,SharedArrayBuffer)))return b(a,u,d);if(typeof a=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var E=a.valueOf&&a.valueOf();if(E!=null&&E!==a)return o.from(E,u,d);var D=_(a);if(D)return D;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof a[Symbol.toPrimitive]=="function")return o.from(a[Symbol.toPrimitive]("string"),u,d);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+babelHelpers.typeof(a))}o.from=function(a,u,d){return c(a,u,d)},Object.setPrototypeOf(o.prototype,Uint8Array.prototype),Object.setPrototypeOf(o,Uint8Array);function l(a){if(typeof a!="number")throw new TypeError('"size" argument must be of type number');if(a<0)throw new RangeError('The value "'+a+'" is invalid for option "size"')}function p(a,u,d){return l(a),a<=0?s(a):u!==void 0?typeof d=="string"?s(a).fill(u,d):s(a).fill(u):s(a)}o.alloc=function(a,u,d){return p(a,u,d)};function g(a){return l(a),s(a<0?0:k(a)|0)}o.allocUnsafe=function(a){return g(a)},o.allocUnsafeSlow=function(a){return g(a)};function h(a,u){if((typeof u!="string"||u==="")&&(u="utf8"),!o.isEncoding(u))throw new TypeError("Unknown encoding: "+u);var d=M(a,u)|0,E=s(d),D=E.write(a,u);return D!==d&&(E=E.slice(0,D)),E}function w(a){for(var u=a.length<0?0:k(a.length)|0,d=s(u),E=0;E<u;E+=1)d[E]=a[E]&255;return d}function y(a){if(ce(a,Uint8Array)){var u=new Uint8Array(a);return b(u.buffer,u.byteOffset,u.byteLength)}return w(a)}function b(a,u,d){if(u<0||a.byteLength<u)throw new RangeError('"offset" is outside of buffer bounds');if(a.byteLength<u+(d||0))throw new RangeError('"length" is outside of buffer bounds');var E;return u===void 0&&d===void 0?E=new Uint8Array(a):d===void 0?E=new Uint8Array(a,u):E=new Uint8Array(a,u,d),Object.setPrototypeOf(E,o.prototype),E}function _(a){if(o.isBuffer(a)){var u=k(a.length)|0,d=s(u);return d.length===0||a.copy(d,0,0,u),d}if(a.length!==void 0)return typeof a.length!="number"||pn(a.length)?s(0):w(a);if(a.type==="Buffer"&&Array.isArray(a.data))return w(a.data)}function k(a){if(a>=n)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+n.toString(16)+" bytes");return a|0}function A(a){return+a!=a&&(a=0),o.alloc(+a)}o.isBuffer=function(a){return a!=null&&a._isBuffer===!0&&a!==o.prototype},o.compare=function(a,u){if(ce(a,Uint8Array)&&(a=o.from(a,a.offset,a.byteLength)),ce(u,Uint8Array)&&(u=o.from(u,u.offset,u.byteLength)),!o.isBuffer(a)||!o.isBuffer(u))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(a===u)return 0;for(var d=a.length,E=u.length,D=0,U=Math.min(d,E);D<U;++D)if(a[D]!==u[D]){d=a[D],E=u[D];break}return d<E?-1:E<d?1:0},o.isEncoding=function(a){switch(String(a).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},o.concat=function(a,u){if(!Array.isArray(a))throw new TypeError('"list" argument must be an Array of Buffers');if(a.length===0)return o.alloc(0);var d;if(u===void 0)for(u=0,d=0;d<a.length;++d)u+=a[d].length;var E=o.allocUnsafe(u),D=0;for(d=0;d<a.length;++d){var U=a[d];if(ce(U,Uint8Array))D+U.length>E.length?o.from(U).copy(E,D):Uint8Array.prototype.set.call(E,U,D);else if(o.isBuffer(U))U.copy(E,D);else throw new TypeError('"list" argument must be an Array of Buffers');D+=U.length}return E};function M(a,u){if(o.isBuffer(a))return a.length;if(ArrayBuffer.isView(a)||ce(a,ArrayBuffer))return a.byteLength;if(typeof a!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+babelHelpers.typeof(a));var d=a.length,E=arguments.length>2&&arguments[2]===!0;if(!E&&d===0)return 0;for(var D=!1;;)switch(u){case"ascii":case"latin1":case"binary":return d;case"utf8":case"utf-8":return hn(a).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return d*2;case"hex":return d>>>1;case"base64":return li(a).length;default:if(D)return E?-1:hn(a).length;u=(""+u).toLowerCase(),D=!0}}o.byteLength=M;function G(a,u,d){var E=!1;if((u===void 0||u<0)&&(u=0),u>this.length||((d===void 0||d>this.length)&&(d=this.length),d<=0)||(d>>>=0,u>>>=0,d<=u))return"";for(a||(a="utf8");;)switch(a){case"hex":return Gt(this,u,d);case"utf8":case"utf-8":return Pt(this,u,d);case"ascii":return Wt(this,u,d);case"latin1":case"binary":return mt(this,u,d);case"base64":return pt(this,u,d);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return at(this,u,d);default:if(E)throw new TypeError("Unknown encoding: "+a);a=(a+"").toLowerCase(),E=!0}}o.prototype._isBuffer=!0;function j(a,u,d){var E=a[u];a[u]=a[d],a[d]=E}o.prototype.swap16=function(){var a=this.length;if(a%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var u=0;u<a;u+=2)j(this,u,u+1);return this},o.prototype.swap32=function(){var a=this.length;if(a%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var u=0;u<a;u+=4)j(this,u,u+3),j(this,u+1,u+2);return this},o.prototype.swap64=function(){var a=this.length;if(a%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var u=0;u<a;u+=8)j(this,u,u+7),j(this,u+1,u+6),j(this,u+2,u+5),j(this,u+3,u+4);return this},o.prototype.toString=function(){var a=this.length;return a===0?"":arguments.length===0?Pt(this,0,a):G.apply(this,arguments)},o.prototype.toLocaleString=o.prototype.toString,o.prototype.equals=function(a){if(!o.isBuffer(a))throw new TypeError("Argument must be a Buffer");return this===a?!0:o.compare(this,a)===0},o.prototype.inspect=function(){var a="",u=e.INSPECT_MAX_BYTES;return a=this.toString("hex",0,u).replace(/(.{2})/g,"$1 ").trim(),this.length>u&&(a+=" ... "),"<Buffer "+a+">"},r&&(o.prototype[r]=o.prototype.inspect),o.prototype.compare=function(a,u,d,E,D){if(ce(a,Uint8Array)&&(a=o.from(a,a.offset,a.byteLength)),!o.isBuffer(a))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+babelHelpers.typeof(a));if(u===void 0&&(u=0),d===void 0&&(d=a?a.length:0),E===void 0&&(E=0),D===void 0&&(D=this.length),u<0||d>a.length||E<0||D>this.length)throw new RangeError("out of range index");if(E>=D&&u>=d)return 0;if(E>=D)return-1;if(u>=d)return 1;if(u>>>=0,d>>>=0,E>>>=0,D>>>=0,this===a)return 0;for(var U=D-E,K=d-u,dt=Math.min(U,K),Nt=this.slice(E,D),vt=a.slice(u,d),It=0;It<dt;++It)if(Nt[It]!==vt[It]){U=Nt[It],K=vt[It];break}return U<K?-1:K<U?1:0};function Z(a,u,d,E,D){if(a.length===0)return-1;if(typeof d=="string"?(E=d,d=0):d>2147483647?d=2147483647:d<-2147483648&&(d=-2147483648),d=+d,pn(d)&&(d=D?0:a.length-1),d<0&&(d=a.length+d),d>=a.length){if(D)return-1;d=a.length-1}else if(d<0)if(D)d=0;else return-1;if(typeof u=="string"&&(u=o.from(u,E)),o.isBuffer(u))return u.length===0?-1:Et(a,u,d,E,D);if(typeof u=="number")return u=u&255,typeof Uint8Array.prototype.indexOf=="function"?D?Uint8Array.prototype.indexOf.call(a,u,d):Uint8Array.prototype.lastIndexOf.call(a,u,d):Et(a,[u],d,E,D);throw new TypeError("val must be string, number or Buffer")}function Et(a,u,d,E,D){var U=1,K=a.length,dt=u.length;if(E!==void 0&&(E=String(E).toLowerCase(),E==="ucs2"||E==="ucs-2"||E==="utf16le"||E==="utf-16le")){if(a.length<2||u.length<2)return-1;U=2,K/=2,dt/=2,d/=2}function Nt(dn,fn){return U===1?dn[fn]:dn.readUInt16BE(fn*U)}var vt;if(D){var It=-1;for(vt=d;vt<K;vt++)if(Nt(a,vt)===Nt(u,It===-1?0:vt-It)){if(It===-1&&(It=vt),vt-It+1===dt)return It*U}else It!==-1&&(vt-=vt-It),It=-1}else for(d+dt>K&&(d=K-dt),vt=d;vt>=0;vt--){for(var Bt=!0,lr=0;lr<dt;lr++)if(Nt(a,vt+lr)!==Nt(u,lr)){Bt=!1;break}if(Bt)return vt}return-1}o.prototype.includes=function(a,u,d){return this.indexOf(a,u,d)!==-1},o.prototype.indexOf=function(a,u,d){return Z(this,a,u,d,!0)},o.prototype.lastIndexOf=function(a,u,d){return Z(this,a,u,d,!1)};function At(a,u,d,E){d=Number(d)||0;var D=a.length-d;E?(E=Number(E),E>D&&(E=D)):E=D;var U=u.length;E>U/2&&(E=U/2);for(var K=0;K<E;++K){var dt=parseInt(u.substr(K*2,2),16);if(pn(dt))return K;a[d+K]=dt}return K}function q(a,u,d,E){return Rr(hn(u,a.length-d),a,d,E)}function it(a,u,d,E){return Rr(xs(u),a,d,E)}function tt(a,u,d,E){return Rr(li(u),a,d,E)}function rt(a,u,d,E){return Rr(Ds(u,a.length-d),a,d,E)}o.prototype.write=function(a,u,d,E){if(u===void 0)E="utf8",d=this.length,u=0;else if(d===void 0&&typeof u=="string")E=u,d=this.length,u=0;else if(isFinite(u))u=u>>>0,isFinite(d)?(d=d>>>0,E===void 0&&(E="utf8")):(E=d,d=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var D=this.length-u;if((d===void 0||d>D)&&(d=D),a.length>0&&(d<0||u<0)||u>this.length)throw new RangeError("Attempt to write outside buffer bounds");E||(E="utf8");for(var U=!1;;)switch(E){case"hex":return At(this,a,u,d);case"utf8":case"utf-8":return q(this,a,u,d);case"ascii":case"latin1":case"binary":return it(this,a,u,d);case"base64":return tt(this,a,u,d);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return rt(this,a,u,d);default:if(U)throw new TypeError("Unknown encoding: "+E);E=(""+E).toLowerCase(),U=!0}},o.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function pt(a,u,d){return u===0&&d===a.length?Ys.fromByteArray(a):Ys.fromByteArray(a.slice(u,d))}function Pt(a,u,d){d=Math.min(a.length,d);for(var E=[],D=u;D<d;){var U=a[D],K=null,dt=U>239?4:U>223?3:U>191?2:1;if(D+dt<=d){var Nt,vt,It,Bt;switch(dt){case 1:U<128&&(K=U);break;case 2:Nt=a[D+1],(Nt&192)===128&&(Bt=(U&31)<<6|Nt&63,Bt>127&&(K=Bt));break;case 3:Nt=a[D+1],vt=a[D+2],(Nt&192)===128&&(vt&192)===128&&(Bt=(U&15)<<12|(Nt&63)<<6|vt&63,Bt>2047&&(Bt<55296||Bt>57343)&&(K=Bt));break;case 4:Nt=a[D+1],vt=a[D+2],It=a[D+3],(Nt&192)===128&&(vt&192)===128&&(It&192)===128&&(Bt=(U&15)<<18|(Nt&63)<<12|(vt&63)<<6|It&63,Bt>65535&&Bt<1114112&&(K=Bt))}}K===null?(K=65533,dt=1):K>65535&&(K-=65536,E.push(K>>>10&1023|55296),K=56320|K&1023),E.push(K),D+=dt}return $t(E)}var Ot=4096;function $t(a){var u=a.length;if(u<=Ot)return String.fromCharCode.apply(String,a);for(var d="",E=0;E<u;)d+=String.fromCharCode.apply(String,a.slice(E,E+=Ot));return d}function Wt(a,u,d){var E="";d=Math.min(a.length,d);for(var D=u;D<d;++D)E+=String.fromCharCode(a[D]&127);return E}function mt(a,u,d){var E="";d=Math.min(a.length,d);for(var D=u;D<d;++D)E+=String.fromCharCode(a[D]);return E}function Gt(a,u,d){var E=a.length;(!u||u<0)&&(u=0),(!d||d<0||d>E)&&(d=E);for(var D="",U=u;U<d;++U)D+=As[a[U]];return D}function at(a,u,d){for(var E=a.slice(u,d),D="",U=0;U<E.length-1;U+=2)D+=String.fromCharCode(E[U]+E[U+1]*256);return D}o.prototype.slice=function(a,u){var d=this.length;a=~~a,u=u===void 0?d:~~u,a<0?(a+=d,a<0&&(a=0)):a>d&&(a=d),u<0?(u+=d,u<0&&(u=0)):u>d&&(u=d),u<a&&(u=a);var E=this.subarray(a,u);return Object.setPrototypeOf(E,o.prototype),E};function nt(a,u,d){if(a%1!==0||a<0)throw new RangeError("offset is not uint");if(a+u>d)throw new RangeError("Trying to access beyond buffer length")}o.prototype.readUintLE=o.prototype.readUIntLE=function(a,u,d){a=a>>>0,u=u>>>0,d||nt(a,u,this.length);for(var E=this[a],D=1,U=0;++U<u&&(D*=256);)E+=this[a+U]*D;return E},o.prototype.readUintBE=o.prototype.readUIntBE=function(a,u,d){a=a>>>0,u=u>>>0,d||nt(a,u,this.length);for(var E=this[a+--u],D=1;u>0&&(D*=256);)E+=this[a+--u]*D;return E},o.prototype.readUint8=o.prototype.readUInt8=function(a,u){return a=a>>>0,u||nt(a,1,this.length),this[a]},o.prototype.readUint16LE=o.prototype.readUInt16LE=function(a,u){return a=a>>>0,u||nt(a,2,this.length),this[a]|this[a+1]<<8},o.prototype.readUint16BE=o.prototype.readUInt16BE=function(a,u){return a=a>>>0,u||nt(a,2,this.length),this[a]<<8|this[a+1]},o.prototype.readUint32LE=o.prototype.readUInt32LE=function(a,u){return a=a>>>0,u||nt(a,4,this.length),(this[a]|this[a+1]<<8|this[a+2]<<16)+this[a+3]*16777216},o.prototype.readUint32BE=o.prototype.readUInt32BE=function(a,u){return a=a>>>0,u||nt(a,4,this.length),this[a]*16777216+(this[a+1]<<16|this[a+2]<<8|this[a+3])},o.prototype.readIntLE=function(a,u,d){a=a>>>0,u=u>>>0,d||nt(a,u,this.length);for(var E=this[a],D=1,U=0;++U<u&&(D*=256);)E+=this[a+U]*D;return D*=128,E>=D&&(E-=Math.pow(2,8*u)),E},o.prototype.readIntBE=function(a,u,d){a=a>>>0,u=u>>>0,d||nt(a,u,this.length);for(var E=u,D=1,U=this[a+--E];E>0&&(D*=256);)U+=this[a+--E]*D;return D*=128,U>=D&&(U-=Math.pow(2,8*u)),U},o.prototype.readInt8=function(a,u){return a=a>>>0,u||nt(a,1,this.length),this[a]&128?(255-this[a]+1)*-1:this[a]},o.prototype.readInt16LE=function(a,u){a=a>>>0,u||nt(a,2,this.length);var d=this[a]|this[a+1]<<8;return d&32768?d|4294901760:d},o.prototype.readInt16BE=function(a,u){a=a>>>0,u||nt(a,2,this.length);var d=this[a+1]|this[a]<<8;return d&32768?d|4294901760:d},o.prototype.readInt32LE=function(a,u){return a=a>>>0,u||nt(a,4,this.length),this[a]|this[a+1]<<8|this[a+2]<<16|this[a+3]<<24},o.prototype.readInt32BE=function(a,u){return a=a>>>0,u||nt(a,4,this.length),this[a]<<24|this[a+1]<<16|this[a+2]<<8|this[a+3]},o.prototype.readFloatLE=function(a,u){return a=a>>>0,u||nt(a,4,this.length),Mr.read(this,a,!0,23,4)},o.prototype.readFloatBE=function(a,u){return a=a>>>0,u||nt(a,4,this.length),Mr.read(this,a,!1,23,4)},o.prototype.readDoubleLE=function(a,u){return a=a>>>0,u||nt(a,8,this.length),Mr.read(this,a,!0,52,8)},o.prototype.readDoubleBE=function(a,u){return a=a>>>0,u||nt(a,8,this.length),Mr.read(this,a,!1,52,8)};function Ft(a,u,d,E,D,U){if(!o.isBuffer(a))throw new TypeError('"buffer" argument must be a Buffer instance');if(u>D||u<U)throw new RangeError('"value" argument is out of bounds');if(d+E>a.length)throw new RangeError("Index out of range")}o.prototype.writeUintLE=o.prototype.writeUIntLE=function(a,u,d,E){if(a=+a,u=u>>>0,d=d>>>0,!E){var D=Math.pow(2,8*d)-1;Ft(this,a,u,d,D,0)}var U=1,K=0;for(this[u]=a&255;++K<d&&(U*=256);)this[u+K]=a/U&255;return u+d},o.prototype.writeUintBE=o.prototype.writeUIntBE=function(a,u,d,E){if(a=+a,u=u>>>0,d=d>>>0,!E){var D=Math.pow(2,8*d)-1;Ft(this,a,u,d,D,0)}var U=d-1,K=1;for(this[u+U]=a&255;--U>=0&&(K*=256);)this[u+U]=a/K&255;return u+d},o.prototype.writeUint8=o.prototype.writeUInt8=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,1,255,0),this[u]=a&255,u+1},o.prototype.writeUint16LE=o.prototype.writeUInt16LE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,2,65535,0),this[u]=a&255,this[u+1]=a>>>8,u+2},o.prototype.writeUint16BE=o.prototype.writeUInt16BE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,2,65535,0),this[u]=a>>>8,this[u+1]=a&255,u+2},o.prototype.writeUint32LE=o.prototype.writeUInt32LE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,4,4294967295,0),this[u+3]=a>>>24,this[u+2]=a>>>16,this[u+1]=a>>>8,this[u]=a&255,u+4},o.prototype.writeUint32BE=o.prototype.writeUInt32BE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,4,4294967295,0),this[u]=a>>>24,this[u+1]=a>>>16,this[u+2]=a>>>8,this[u+3]=a&255,u+4},o.prototype.writeIntLE=function(a,u,d,E){if(a=+a,u=u>>>0,!E){var D=Math.pow(2,8*d-1);Ft(this,a,u,d,D-1,-D)}var U=0,K=1,dt=0;for(this[u]=a&255;++U<d&&(K*=256);)a<0&&dt===0&&this[u+U-1]!==0&&(dt=1),this[u+U]=(a/K>>0)-dt&255;return u+d},o.prototype.writeIntBE=function(a,u,d,E){if(a=+a,u=u>>>0,!E){var D=Math.pow(2,8*d-1);Ft(this,a,u,d,D-1,-D)}var U=d-1,K=1,dt=0;for(this[u+U]=a&255;--U>=0&&(K*=256);)a<0&&dt===0&&this[u+U+1]!==0&&(dt=1),this[u+U]=(a/K>>0)-dt&255;return u+d},o.prototype.writeInt8=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,1,127,-128),a<0&&(a=255+a+1),this[u]=a&255,u+1},o.prototype.writeInt16LE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,2,32767,-32768),this[u]=a&255,this[u+1]=a>>>8,u+2},o.prototype.writeInt16BE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,2,32767,-32768),this[u]=a>>>8,this[u+1]=a&255,u+2},o.prototype.writeInt32LE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,4,2147483647,-2147483648),this[u]=a&255,this[u+1]=a>>>8,this[u+2]=a>>>16,this[u+3]=a>>>24,u+4},o.prototype.writeInt32BE=function(a,u,d){return a=+a,u=u>>>0,d||Ft(this,a,u,4,2147483647,-2147483648),a<0&&(a=4294967295+a+1),this[u]=a>>>24,this[u+1]=a>>>16,this[u+2]=a>>>8,this[u+3]=a&255,u+4};function oi(a,u,d,E,D,U){if(d+E>a.length)throw new RangeError("Index out of range");if(d<0)throw new RangeError("Index out of range")}function ai(a,u,d,E,D){return u=+u,d=d>>>0,D||oi(a,u,d,4),Mr.write(a,u,d,E,23,4),d+4}o.prototype.writeFloatLE=function(a,u,d){return ai(this,a,u,!0,d)},o.prototype.writeFloatBE=function(a,u,d){return ai(this,a,u,!1,d)};function ae(a,u,d,E,D){return u=+u,d=d>>>0,D||oi(a,u,d,8),Mr.write(a,u,d,E,52,8),d+8}o.prototype.writeDoubleLE=function(a,u,d){return ae(this,a,u,!0,d)},o.prototype.writeDoubleBE=function(a,u,d){return ae(this,a,u,!1,d)},o.prototype.copy=function(a,u,d,E){if(!o.isBuffer(a))throw new TypeError("argument should be a Buffer");if(d||(d=0),!E&&E!==0&&(E=this.length),u>=a.length&&(u=a.length),u||(u=0),E>0&&E<d&&(E=d),E===d||a.length===0||this.length===0)return 0;if(u<0)throw new RangeError("targetStart out of bounds");if(d<0||d>=this.length)throw new RangeError("Index out of range");if(E<0)throw new RangeError("sourceEnd out of bounds");E>this.length&&(E=this.length),a.length-u<E-d&&(E=a.length-u+d);var D=E-d;return this===a&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(u,d,E):Uint8Array.prototype.set.call(a,this.subarray(d,E),u),D},o.prototype.fill=function(a,u,d,E){if(typeof a=="string"){if(typeof u=="string"?(E=u,u=0,d=this.length):typeof d=="string"&&(E=d,d=this.length),E!==void 0&&typeof E!="string")throw new TypeError("encoding must be a string");if(typeof E=="string"&&!o.isEncoding(E))throw new TypeError("Unknown encoding: "+E);if(a.length===1){var D=a.charCodeAt(0);(E==="utf8"&&D<128||E==="latin1")&&(a=D)}}else typeof a=="number"?a=a&255:typeof a=="boolean"&&(a=Number(a));if(u<0||this.length<u||this.length<d)throw new RangeError("Out of range index");if(d<=u)return this;u=u>>>0,d=d===void 0?this.length:d>>>0,a||(a=0);var U;if(typeof a=="number")for(U=u;U<d;++U)this[U]=a;else{var K=o.isBuffer(a)?a:o.from(a,E),dt=K.length;if(dt===0)throw new TypeError('The value "'+a+'" is invalid for argument "value"');for(U=0;U<d-u;++U)this[U+u]=K[U%dt]}return this};var ci=/[^+/0-9A-Za-z-_]/g;function Ts(a){if(a=a.split("=")[0],a=a.trim().replace(ci,""),a.length<2)return"";for(;a.length%4!==0;)a=a+"=";return a}function hn(a,u){u=u||1/0;for(var d,E=a.length,D=null,U=[],K=0;K<E;++K){if(d=a.charCodeAt(K),d>55295&&d<57344){if(!D){if(d>56319){(u-=3)>-1&&U.push(239,191,189);continue}else if(K+1===E){(u-=3)>-1&&U.push(239,191,189);continue}D=d;continue}if(d<56320){(u-=3)>-1&&U.push(239,191,189),D=d;continue}d=(D-55296<<10|d-56320)+65536}else D&&(u-=3)>-1&&U.push(239,191,189);if(D=null,d<128){if((u-=1)<0)break;U.push(d)}else if(d<2048){if((u-=2)<0)break;U.push(d>>6|192,d&63|128)}else if(d<65536){if((u-=3)<0)break;U.push(d>>12|224,d>>6&63|128,d&63|128)}else if(d<1114112){if((u-=4)<0)break;U.push(d>>18|240,d>>12&63|128,d>>6&63|128,d&63|128)}else throw new Error("Invalid code point")}return U}function xs(a){for(var u=[],d=0;d<a.length;++d)u.push(a.charCodeAt(d)&255);return u}function Ds(a,u){for(var d,E,D,U=[],K=0;K<a.length&&!((u-=2)<0);++K)d=a.charCodeAt(K),E=d>>8,D=d%256,U.push(D),U.push(E);return U}function li(a){return Ys.toByteArray(Ts(a))}function Rr(a,u,d,E){for(var D=0;D<E&&!(D+d>=u.length||D>=a.length);++D)u[D+d]=a[D];return D}function ce(a,u){return a instanceof u||a!=null&&a.constructor!=null&&a.constructor.name!=null&&a.constructor.name===u.name}function pn(a){return a!==a}var As=function(){for(var a="0123456789abcdef",u=new Array(256),d=0;d<16;++d)for(var E=d*16,D=0;D<16;++D)u[E+D]=a[d]+a[D];return u}()}),ht=gs.Buffer;gs.SlowBuffer;gs.INSPECT_MAX_BYTES;gs.kMaxLength;var zo=function(t,e){return zo=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var i in n)n.hasOwnProperty(i)&&(r[i]=n[i])},zo(t,e)};function ms(t,e){zo(t,e);function r(){this.constructor=t}t.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}var br=function(t){ms(e,t);function e(r){var n=t.call(this,r)||this;return Object.setPrototypeOf(n,e.prototype),n}return Object.defineProperty(e.prototype,"name",{get:function(){return"BSONError"},enumerable:!1,configurable:!0}),e}(Error),Dt=function(t){ms(e,t);function e(r){var n=t.call(this,r)||this;return Object.setPrototypeOf(n,e.prototype),n}return Object.defineProperty(e.prototype,"name",{get:function(){return"BSONTypeError"},enumerable:!1,configurable:!0}),e}(TypeError);function bi(t){return t&&t.Math==Math&&t}function yp(){return bi(typeof globalThis=="object"&&globalThis)||bi(typeof window=="object"&&window)||bi(typeof self=="object"&&self)||bi(typeof global=="object"&&global)||Function("return this")()}function Dw(){var t=yp();return typeof t.navigator=="object"&&t.navigator.product==="ReactNative"}var Aw=function(t){var e=Dw()?"BSON: For React Native please polyfill crypto.getRandomValues, e.g. using: https://www.npmjs.com/package/react-native-get-random-values.":"BSON: No cryptographic implementation for random bytes present, falling back to a less secure implementation.";console.warn(e);for(var r=ht.alloc(t),n=0;n<t;++n)r[n]=Math.floor(Math.random()*256);return r},Ow=function(){{if(typeof window<"u"){var t=window.crypto||window.msCrypto;if(t&&t.getRandomValues)return function(e){return t.getRandomValues(ht.alloc(e))}}return typeof global<"u"&&global.crypto&&global.crypto.getRandomValues?function(e){return global.crypto.getRandomValues(ht.alloc(e))}:Aw}},bp=Ow();function Nw(t){return["[object ArrayBuffer]","[object SharedArrayBuffer]"].includes(Object.prototype.toString.call(t))}function Ga(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}function kw(t){return Object.prototype.toString.call(t)==="[object RegExp]"}function Pw(t){return ri(t)&&Object.prototype.toString.call(t)==="[object Date]"}function ri(t){return typeof t=="object"&&t!==null}function vs(t,e){var r=!1;function n(){for(var i=[],s=0;s<arguments.length;s++)i[s]=arguments[s];return r||(console.warn(e),r=!0),t.apply(this,i)}return n}function Gi(t){if(ArrayBuffer.isView(t))return ht.from(t.buffer,t.byteOffset,t.byteLength);if(Nw(t))return ht.from(t);throw new Dt("Must use either Buffer or TypedArray")}var Rw=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|[0-9a-f]{12}4[0-9a-f]{3}[89ab][0-9a-f]{15})$/i,wp=function(t){return typeof t=="string"&&Rw.test(t)},Ko=function(t){if(!wp(t))throw new Dt('UUID string representations must be a 32 or 36 character hex string (dashes excluded/included). Format: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" or "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx".');var e=t.replace(/-/g,"");return ht.from(e,"hex")},zl=function(t,e){return e===void 0&&(e=!0),e?t.toString("hex",0,4)+"-"+t.toString("hex",4,6)+"-"+t.toString("hex",6,8)+"-"+t.toString("hex",8,10)+"-"+t.toString("hex",10,16):t.toString("hex")},bE=Math.pow(2,63)-1,wE=-Math.pow(2,63),Lw=Math.pow(2,53),Mw=-Math.pow(2,53),_p=4,wr=function(){function t(e,r){if(!(this instanceof t))return new t(e,r);if(e!=null&&typeof e!="string"&&!ArrayBuffer.isView(e)&&!(e instanceof ArrayBuffer)&&!Array.isArray(e))throw new Dt("Binary can only be constructed from string, Buffer, TypedArray, or Array<number>");this.sub_type=r??t.BSON_BINARY_SUBTYPE_DEFAULT,e==null?(this.buffer=ht.alloc(t.BUFFER_SIZE),this.position=0):(typeof e=="string"?this.buffer=ht.from(e,"binary"):Array.isArray(e)?this.buffer=ht.from(e):this.buffer=Gi(e),this.position=this.buffer.byteLength)}return t.prototype.put=function(e){if(typeof e=="string"&&e.length!==1)throw new Dt("only accepts single character String");if(typeof e!="number"&&e.length!==1)throw new Dt("only accepts single character Uint8Array or Array");var r;if(typeof e=="string"?r=e.charCodeAt(0):typeof e=="number"?r=e:r=e[0],r<0||r>255)throw new Dt("only accepts number in a valid unsigned byte range 0-255");if(this.buffer.length>this.position)this.buffer[this.position++]=r;else{var n=ht.alloc(t.BUFFER_SIZE+this.buffer.length);this.buffer.copy(n,0,0,this.buffer.length),this.buffer=n,this.buffer[this.position++]=r}},t.prototype.write=function(e,r){if(r=typeof r=="number"?r:this.position,this.buffer.length<r+e.length){var n=ht.alloc(this.buffer.length+e.length);this.buffer.copy(n,0,0,this.buffer.length),this.buffer=n}ArrayBuffer.isView(e)?(this.buffer.set(Gi(e),r),this.position=r+e.byteLength>this.position?r+e.length:this.position):typeof e=="string"&&(this.buffer.write(e,r,e.length,"binary"),this.position=r+e.length>this.position?r+e.length:this.position)},t.prototype.read=function(e,r){return r=r&&r>0?r:this.position,this.buffer.slice(e,e+r)},t.prototype.value=function(e){return e=!!e,e&&this.buffer.length===this.position?this.buffer:e?this.buffer.slice(0,this.position):this.buffer.toString("binary",0,this.position)},t.prototype.length=function(){return this.position},t.prototype.toJSON=function(){return this.buffer.toString("base64")},t.prototype.toString=function(e){return this.buffer.toString(e)},t.prototype.toExtendedJSON=function(e){e=e||{};var r=this.buffer.toString("base64"),n=Number(this.sub_type).toString(16);return e.legacy?{$binary:r,$type:n.length===1?"0"+n:n}:{$binary:{base64:r,subType:n.length===1?"0"+n:n}}},t.prototype.toUUID=function(){if(this.sub_type===t.SUBTYPE_UUID)return new Kl(this.buffer.slice(0,this.position));throw new br('Binary sub_type "'.concat(this.sub_type,'" is not supported for converting to UUID. Only "').concat(t.SUBTYPE_UUID,'" is currently supported.'))},t.fromExtendedJSON=function(e,r){r=r||{};var n,i;if("$binary"in e?r.legacy&&typeof e.$binary=="string"&&"$type"in e?(i=e.$type?parseInt(e.$type,16):0,n=ht.from(e.$binary,"base64")):typeof e.$binary!="string"&&(i=e.$binary.subType?parseInt(e.$binary.subType,16):0,n=ht.from(e.$binary.base64,"base64")):"$uuid"in e&&(i=4,n=Ko(e.$uuid)),!n)throw new Dt("Unexpected Binary Extended JSON format ".concat(JSON.stringify(e)));return i===_p?new Kl(n):new t(n,i)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){var e=this.value(!0);return'new Binary(Buffer.from("'.concat(e.toString("hex"),'", "hex"), ').concat(this.sub_type,")")},t.BSON_BINARY_SUBTYPE_DEFAULT=0,t.BUFFER_SIZE=256,t.SUBTYPE_DEFAULT=0,t.SUBTYPE_FUNCTION=1,t.SUBTYPE_BYTE_ARRAY=2,t.SUBTYPE_UUID_OLD=3,t.SUBTYPE_UUID=4,t.SUBTYPE_MD5=5,t.SUBTYPE_ENCRYPTED=6,t.SUBTYPE_COLUMN=7,t.SUBTYPE_USER_DEFINED=128,t}();Object.defineProperty(wr.prototype,"_bsontype",{value:"Binary"});var Js=16,Kl=function(t){ms(e,t);function e(r){var n=this,i,s;if(r==null)i=e.generate();else if(r instanceof e)i=ht.from(r.buffer),s=r.__id;else if(ArrayBuffer.isView(r)&&r.byteLength===Js)i=Gi(r);else if(typeof r=="string")i=Ko(r);else throw new Dt("Argument passed in UUID constructor must be a UUID, a 16 byte Buffer or a 32/36 character hex string (dashes excluded/included, format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).");return n=t.call(this,i,_p)||this,n.__id=s,n}return Object.defineProperty(e.prototype,"id",{get:function(){return this.buffer},set:function(r){this.buffer=r,e.cacheHexString&&(this.__id=zl(r))},enumerable:!1,configurable:!0}),e.prototype.toHexString=function(r){if(r===void 0&&(r=!0),e.cacheHexString&&this.__id)return this.__id;var n=zl(this.id,r);return e.cacheHexString&&(this.__id=n),n},e.prototype.toString=function(r){return r?this.id.toString(r):this.toHexString()},e.prototype.toJSON=function(){return this.toHexString()},e.prototype.equals=function(r){if(!r)return!1;if(r instanceof e)return r.id.equals(this.id);try{return new e(r).id.equals(this.id)}catch{return!1}},e.prototype.toBinary=function(){return new wr(this.id,wr.SUBTYPE_UUID)},e.generate=function(){var r=bp(Js);return r[6]=r[6]&15|64,r[8]=r[8]&63|128,ht.from(r)},e.isValid=function(r){return r?r instanceof e?!0:typeof r=="string"?wp(r):Ga(r)?r.length!==Js?!1:(r[6]&240)===64&&(r[8]&128)===128:!1:!1},e.createFromHexString=function(r){var n=Ko(r);return new e(n)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return'new UUID("'.concat(this.toHexString(),'")')},e}(wr),ys=function(){function t(e,r){if(!(this instanceof t))return new t(e,r);this.code=e,this.scope=r}return t.prototype.toJSON=function(){return{code:this.code,scope:this.scope}},t.prototype.toExtendedJSON=function(){return this.scope?{$code:this.code,$scope:this.scope}:{$code:this.code}},t.fromExtendedJSON=function(e){return new t(e.$code,e.$scope)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){var e=this.toJSON();return'new Code("'.concat(String(e.code),'"').concat(e.scope?", ".concat(JSON.stringify(e.scope)):"",")")},t}();Object.defineProperty(ys.prototype,"_bsontype",{value:"Code"});function Uw(t){return ri(t)&&t.$id!=null&&typeof t.$ref=="string"&&(t.$db==null||typeof t.$db=="string")}var Hn=function(){function t(e,r,n,i){if(!(this instanceof t))return new t(e,r,n,i);var s=e.split(".");s.length===2&&(n=s.shift(),e=s.shift()),this.collection=e,this.oid=r,this.db=n,this.fields=i||{}}return Object.defineProperty(t.prototype,"namespace",{get:function(){return this.collection},set:function(e){this.collection=e},enumerable:!1,configurable:!0}),t.prototype.toJSON=function(){var e=Object.assign({$ref:this.collection,$id:this.oid},this.fields);return this.db!=null&&(e.$db=this.db),e},t.prototype.toExtendedJSON=function(e){e=e||{};var r={$ref:this.collection,$id:this.oid};return e.legacy||(this.db&&(r.$db=this.db),r=Object.assign(r,this.fields)),r},t.fromExtendedJSON=function(e){var r=Object.assign({},e);return delete r.$ref,delete r.$id,delete r.$db,new t(e.$ref,e.$id,e.$db,r)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){var e=this.oid===void 0||this.oid.toString===void 0?this.oid:this.oid.toString();return'new DBRef("'.concat(this.namespace,'", new ObjectId("').concat(String(e),'")').concat(this.db?', "'.concat(this.db,'"'):"",")")},t}();Object.defineProperty(Hn.prototype,"_bsontype",{value:"DBRef"});var ue=void 0;try{ue=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch{}var Yl=65536,Bw=1<<24,Fr=Yl*Yl,Ep=Fr*Fr,Jl=Ep/2,Xl={},Ql={},Y=function(){function t(e,r,n){if(e===void 0&&(e=0),!(this instanceof t))return new t(e,r,n);typeof e=="bigint"?Object.assign(this,t.fromBigInt(e,!!r)):typeof e=="string"?Object.assign(this,t.fromString(e,!!r)):(this.low=e|0,this.high=r|0,this.unsigned=!!n),Object.defineProperty(this,"__isLong__",{value:!0,configurable:!1,writable:!1,enumerable:!1})}return t.fromBits=function(e,r,n){return new t(e,r,n)},t.fromInt=function(e,r){var n,i,s;return r?(e>>>=0,(s=0<=e&&e<256)&&(i=Ql[e],i)?i:(n=t.fromBits(e,(e|0)<0?-1:0,!0),s&&(Ql[e]=n),n)):(e|=0,(s=-128<=e&&e<128)&&(i=Xl[e],i)?i:(n=t.fromBits(e,e<0?-1:0,!1),s&&(Xl[e]=n),n))},t.fromNumber=function(e,r){if(isNaN(e))return r?t.UZERO:t.ZERO;if(r){if(e<0)return t.UZERO;if(e>=Ep)return t.MAX_UNSIGNED_VALUE}else{if(e<=-Jl)return t.MIN_VALUE;if(e+1>=Jl)return t.MAX_VALUE}return e<0?t.fromNumber(-e,r).neg():t.fromBits(e%Fr|0,e/Fr|0,r)},t.fromBigInt=function(e,r){return t.fromString(e.toString(),r)},t.fromString=function(e,r,n){if(e.length===0)throw Error("empty string");if(e==="NaN"||e==="Infinity"||e==="+Infinity"||e==="-Infinity")return t.ZERO;if(typeof r=="number"?(n=r,r=!1):r=!!r,n=n||10,n<2||36<n)throw RangeError("radix");var i;if((i=e.indexOf("-"))>0)throw Error("interior hyphen");if(i===0)return t.fromString(e.substring(1),r,n).neg();for(var s=t.fromNumber(Math.pow(n,8)),o=t.ZERO,c=0;c<e.length;c+=8){var l=Math.min(8,e.length-c),p=parseInt(e.substring(c,c+l),n);if(l<8){var g=t.fromNumber(Math.pow(n,l));o=o.mul(g).add(t.fromNumber(p))}else o=o.mul(s),o=o.add(t.fromNumber(p))}return o.unsigned=r,o},t.fromBytes=function(e,r,n){return n?t.fromBytesLE(e,r):t.fromBytesBE(e,r)},t.fromBytesLE=function(e,r){return new t(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,r)},t.fromBytesBE=function(e,r){return new t(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],r)},t.isLong=function(e){return ri(e)&&e.__isLong__===!0},t.fromValue=function(e,r){return typeof e=="number"?t.fromNumber(e,r):typeof e=="string"?t.fromString(e,r):t.fromBits(e.low,e.high,typeof r=="boolean"?r:e.unsigned)},t.prototype.add=function(e){t.isLong(e)||(e=t.fromValue(e));var r=this.high>>>16,n=this.high&65535,i=this.low>>>16,s=this.low&65535,o=e.high>>>16,c=e.high&65535,l=e.low>>>16,p=e.low&65535,g=0,h=0,w=0,y=0;return y+=s+p,w+=y>>>16,y&=65535,w+=i+l,h+=w>>>16,w&=65535,h+=n+c,g+=h>>>16,h&=65535,g+=r+o,g&=65535,t.fromBits(w<<16|y,g<<16|h,this.unsigned)},t.prototype.and=function(e){return t.isLong(e)||(e=t.fromValue(e)),t.fromBits(this.low&e.low,this.high&e.high,this.unsigned)},t.prototype.compare=function(e){if(t.isLong(e)||(e=t.fromValue(e)),this.eq(e))return 0;var r=this.isNegative(),n=e.isNegative();return r&&!n?-1:!r&&n?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1},t.prototype.comp=function(e){return this.compare(e)},t.prototype.divide=function(e){if(t.isLong(e)||(e=t.fromValue(e)),e.isZero())throw Error("division by zero");if(ue){if(!this.unsigned&&this.high===-2147483648&&e.low===-1&&e.high===-1)return this;var r=(this.unsigned?ue.div_u:ue.div_s)(this.low,this.high,e.low,e.high);return t.fromBits(r,ue.get_high(),this.unsigned)}if(this.isZero())return this.unsigned?t.UZERO:t.ZERO;var n,i,s;if(this.unsigned){if(e.unsigned||(e=e.toUnsigned()),e.gt(this))return t.UZERO;if(e.gt(this.shru(1)))return t.UONE;s=t.UZERO}else{if(this.eq(t.MIN_VALUE)){if(e.eq(t.ONE)||e.eq(t.NEG_ONE))return t.MIN_VALUE;if(e.eq(t.MIN_VALUE))return t.ONE;var o=this.shr(1);return n=o.div(e).shl(1),n.eq(t.ZERO)?e.isNegative()?t.ONE:t.NEG_ONE:(i=this.sub(e.mul(n)),s=n.add(i.div(e)),s)}else if(e.eq(t.MIN_VALUE))return this.unsigned?t.UZERO:t.ZERO;if(this.isNegative())return e.isNegative()?this.neg().div(e.neg()):this.neg().div(e).neg();if(e.isNegative())return this.div(e.neg()).neg();s=t.ZERO}for(i=this;i.gte(e);){n=Math.max(1,Math.floor(i.toNumber()/e.toNumber()));for(var c=Math.ceil(Math.log(n)/Math.LN2),l=c<=48?1:Math.pow(2,c-48),p=t.fromNumber(n),g=p.mul(e);g.isNegative()||g.gt(i);)n-=l,p=t.fromNumber(n,this.unsigned),g=p.mul(e);p.isZero()&&(p=t.ONE),s=s.add(p),i=i.sub(g)}return s},t.prototype.div=function(e){return this.divide(e)},t.prototype.equals=function(e){return t.isLong(e)||(e=t.fromValue(e)),this.unsigned!==e.unsigned&&this.high>>>31===1&&e.high>>>31===1?!1:this.high===e.high&&this.low===e.low},t.prototype.eq=function(e){return this.equals(e)},t.prototype.getHighBits=function(){return this.high},t.prototype.getHighBitsUnsigned=function(){return this.high>>>0},t.prototype.getLowBits=function(){return this.low},t.prototype.getLowBitsUnsigned=function(){return this.low>>>0},t.prototype.getNumBitsAbs=function(){if(this.isNegative())return this.eq(t.MIN_VALUE)?64:this.neg().getNumBitsAbs();var e=this.high!==0?this.high:this.low,r;for(r=31;r>0&&(e&1<<r)===0;r--);return this.high!==0?r+33:r+1},t.prototype.greaterThan=function(e){return this.comp(e)>0},t.prototype.gt=function(e){return this.greaterThan(e)},t.prototype.greaterThanOrEqual=function(e){return this.comp(e)>=0},t.prototype.gte=function(e){return this.greaterThanOrEqual(e)},t.prototype.ge=function(e){return this.greaterThanOrEqual(e)},t.prototype.isEven=function(){return(this.low&1)===0},t.prototype.isNegative=function(){return!this.unsigned&&this.high<0},t.prototype.isOdd=function(){return(this.low&1)===1},t.prototype.isPositive=function(){return this.unsigned||this.high>=0},t.prototype.isZero=function(){return this.high===0&&this.low===0},t.prototype.lessThan=function(e){return this.comp(e)<0},t.prototype.lt=function(e){return this.lessThan(e)},t.prototype.lessThanOrEqual=function(e){return this.comp(e)<=0},t.prototype.lte=function(e){return this.lessThanOrEqual(e)},t.prototype.modulo=function(e){if(t.isLong(e)||(e=t.fromValue(e)),ue){var r=(this.unsigned?ue.rem_u:ue.rem_s)(this.low,this.high,e.low,e.high);return t.fromBits(r,ue.get_high(),this.unsigned)}return this.sub(this.div(e).mul(e))},t.prototype.mod=function(e){return this.modulo(e)},t.prototype.rem=function(e){return this.modulo(e)},t.prototype.multiply=function(e){if(this.isZero())return t.ZERO;if(t.isLong(e)||(e=t.fromValue(e)),ue){var r=ue.mul(this.low,this.high,e.low,e.high);return t.fromBits(r,ue.get_high(),this.unsigned)}if(e.isZero())return t.ZERO;if(this.eq(t.MIN_VALUE))return e.isOdd()?t.MIN_VALUE:t.ZERO;if(e.eq(t.MIN_VALUE))return this.isOdd()?t.MIN_VALUE:t.ZERO;if(this.isNegative())return e.isNegative()?this.neg().mul(e.neg()):this.neg().mul(e).neg();if(e.isNegative())return this.mul(e.neg()).neg();if(this.lt(t.TWO_PWR_24)&&e.lt(t.TWO_PWR_24))return t.fromNumber(this.toNumber()*e.toNumber(),this.unsigned);var n=this.high>>>16,i=this.high&65535,s=this.low>>>16,o=this.low&65535,c=e.high>>>16,l=e.high&65535,p=e.low>>>16,g=e.low&65535,h=0,w=0,y=0,b=0;return b+=o*g,y+=b>>>16,b&=65535,y+=s*g,w+=y>>>16,y&=65535,y+=o*p,w+=y>>>16,y&=65535,w+=i*g,h+=w>>>16,w&=65535,w+=s*p,h+=w>>>16,w&=65535,w+=o*l,h+=w>>>16,w&=65535,h+=n*g+i*p+s*l+o*c,h&=65535,t.fromBits(y<<16|b,h<<16|w,this.unsigned)},t.prototype.mul=function(e){return this.multiply(e)},t.prototype.negate=function(){return!this.unsigned&&this.eq(t.MIN_VALUE)?t.MIN_VALUE:this.not().add(t.ONE)},t.prototype.neg=function(){return this.negate()},t.prototype.not=function(){return t.fromBits(~this.low,~this.high,this.unsigned)},t.prototype.notEquals=function(e){return!this.equals(e)},t.prototype.neq=function(e){return this.notEquals(e)},t.prototype.ne=function(e){return this.notEquals(e)},t.prototype.or=function(e){return t.isLong(e)||(e=t.fromValue(e)),t.fromBits(this.low|e.low,this.high|e.high,this.unsigned)},t.prototype.shiftLeft=function(e){return t.isLong(e)&&(e=e.toInt()),(e&=63)===0?this:e<32?t.fromBits(this.low<<e,this.high<<e|this.low>>>32-e,this.unsigned):t.fromBits(0,this.low<<e-32,this.unsigned)},t.prototype.shl=function(e){return this.shiftLeft(e)},t.prototype.shiftRight=function(e){return t.isLong(e)&&(e=e.toInt()),(e&=63)===0?this:e<32?t.fromBits(this.low>>>e|this.high<<32-e,this.high>>e,this.unsigned):t.fromBits(this.high>>e-32,this.high>=0?0:-1,this.unsigned)},t.prototype.shr=function(e){return this.shiftRight(e)},t.prototype.shiftRightUnsigned=function(e){if(t.isLong(e)&&(e=e.toInt()),e&=63,e===0)return this;var r=this.high;if(e<32){var n=this.low;return t.fromBits(n>>>e|r<<32-e,r>>>e,this.unsigned)}else return e===32?t.fromBits(r,0,this.unsigned):t.fromBits(r>>>e-32,0,this.unsigned)},t.prototype.shr_u=function(e){return this.shiftRightUnsigned(e)},t.prototype.shru=function(e){return this.shiftRightUnsigned(e)},t.prototype.subtract=function(e){return t.isLong(e)||(e=t.fromValue(e)),this.add(e.neg())},t.prototype.sub=function(e){return this.subtract(e)},t.prototype.toInt=function(){return this.unsigned?this.low>>>0:this.low},t.prototype.toNumber=function(){return this.unsigned?(this.high>>>0)*Fr+(this.low>>>0):this.high*Fr+(this.low>>>0)},t.prototype.toBigInt=function(){return BigInt(this.toString())},t.prototype.toBytes=function(e){return e?this.toBytesLE():this.toBytesBE()},t.prototype.toBytesLE=function(){var e=this.high,r=this.low;return[r&255,r>>>8&255,r>>>16&255,r>>>24,e&255,e>>>8&255,e>>>16&255,e>>>24]},t.prototype.toBytesBE=function(){var e=this.high,r=this.low;return[e>>>24,e>>>16&255,e>>>8&255,e&255,r>>>24,r>>>16&255,r>>>8&255,r&255]},t.prototype.toSigned=function(){return this.unsigned?t.fromBits(this.low,this.high,!1):this},t.prototype.toString=function(e){if(e=e||10,e<2||36<e)throw RangeError("radix");if(this.isZero())return"0";if(this.isNegative())if(this.eq(t.MIN_VALUE)){var r=t.fromNumber(e),n=this.div(r),i=n.mul(r).sub(this);return n.toString(e)+i.toInt().toString(e)}else return"-"+this.neg().toString(e);for(var s=t.fromNumber(Math.pow(e,6),this.unsigned),o=this,c="";;){var l=o.div(s),p=o.sub(l.mul(s)).toInt()>>>0,g=p.toString(e);if(o=l,o.isZero())return g+c;for(;g.length<6;)g="0"+g;c=""+g+c}},t.prototype.toUnsigned=function(){return this.unsigned?this:t.fromBits(this.low,this.high,!0)},t.prototype.xor=function(e){return t.isLong(e)||(e=t.fromValue(e)),t.fromBits(this.low^e.low,this.high^e.high,this.unsigned)},t.prototype.eqz=function(){return this.isZero()},t.prototype.le=function(e){return this.lessThanOrEqual(e)},t.prototype.toExtendedJSON=function(e){return e&&e.relaxed?this.toNumber():{$numberLong:this.toString()}},t.fromExtendedJSON=function(e,r){var n=t.fromString(e.$numberLong);return r&&r.relaxed?n.toNumber():n},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return'new Long("'.concat(this.toString(),'"').concat(this.unsigned?", true":"",")")},t.TWO_PWR_24=t.fromInt(Bw),t.MAX_UNSIGNED_VALUE=t.fromBits(-1,-1,!0),t.ZERO=t.fromInt(0),t.UZERO=t.fromInt(0,!0),t.ONE=t.fromInt(1),t.UONE=t.fromInt(1,!0),t.NEG_ONE=t.fromInt(-1),t.MAX_VALUE=t.fromBits(-1,2147483647,!1),t.MIN_VALUE=t.fromBits(0,-2147483648,!1),t}();Object.defineProperty(Y.prototype,"__isLong__",{value:!0});Object.defineProperty(Y.prototype,"_bsontype",{value:"Long"});var jw=/^(\+|-)?(\d+|(\d*\.\d*))?(E|e)?([-+])?(\d+)?$/,$w=/^(\+|-)?(Infinity|inf)$/i,Fw=/^(\+|-)?NaN$/i,mn=6111,Xs=-6176,Zl=6176,Hw=34,Qs=[124,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),tu=[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),eu=[120,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),Vw=/^([-+])?(\d+)?$/,qw=31,ru=16383,Ww=30,Gw=31;function nu(t){return!isNaN(parseInt(t,10))}function zw(t){var e=Y.fromNumber(1e9),r=Y.fromNumber(0);if(!t.parts[0]&&!t.parts[1]&&!t.parts[2]&&!t.parts[3])return{quotient:t,rem:r};for(var n=0;n<=3;n++)r=r.shiftLeft(32),r=r.add(new Y(t.parts[n],0)),t.parts[n]=r.div(e).low,r=r.modulo(e);return{quotient:t,rem:r}}function Kw(t,e){if(!t&&!e)return{high:Y.fromNumber(0),low:Y.fromNumber(0)};var r=t.shiftRightUnsigned(32),n=new Y(t.getLowBits(),0),i=e.shiftRightUnsigned(32),s=new Y(e.getLowBits(),0),o=r.multiply(i),c=r.multiply(s),l=n.multiply(i),p=n.multiply(s);return o=o.add(c.shiftRightUnsigned(32)),c=new Y(c.getLowBits(),0).add(l).add(p.shiftRightUnsigned(32)),o=o.add(c.shiftRightUnsigned(32)),p=c.shiftLeft(32).add(new Y(p.getLowBits(),0)),{high:o,low:p}}function Yw(t,e){var r=t.high>>>0,n=e.high>>>0;if(r<n)return!0;if(r===n){var i=t.low>>>0,s=e.low>>>0;if(i<s)return!0}return!1}function Ur(t,e){throw new Dt('"'.concat(t,'" is not a valid Decimal128 string - ').concat(e))}var za=function(){function t(e){if(!(this instanceof t))return new t(e);if(typeof e=="string")this.bytes=t.fromString(e).bytes;else if(Ga(e)){if(e.byteLength!==16)throw new Dt("Decimal128 must take a Buffer of 16 bytes");this.bytes=e}else throw new Dt("Decimal128 must take a Buffer or string")}return t.fromString=function(e){var r=!1,n=!1,i=!1,s=0,o=0,c=0,l=0,p=0,g=[0],h=0,w=0,y=0,b=0,_=0,k=0,A=new Y(0,0),M=new Y(0,0),G=0,j=0;if(e.length>=7e3)throw new Dt(""+e+" not a valid Decimal128 string");var Z=e.match(jw),Et=e.match($w),At=e.match(Fw);if(!Z&&!Et&&!At||e.length===0)throw new Dt(""+e+" not a valid Decimal128 string");if(Z){var q=Z[2],it=Z[4],tt=Z[5],rt=Z[6];it&&rt===void 0&&Ur(e,"missing exponent power"),it&&q===void 0&&Ur(e,"missing exponent base"),it===void 0&&(tt||rt)&&Ur(e,"missing e before exponent")}if((e[j]==="+"||e[j]==="-")&&(r=e[j++]==="-"),!nu(e[j])&&e[j]!=="."){if(e[j]==="i"||e[j]==="I")return new t(ht.from(r?tu:eu));if(e[j]==="N")return new t(ht.from(Qs))}for(;nu(e[j])||e[j]===".";){if(e[j]==="."){n&&Ur(e,"contains multiple periods"),n=!0,j=j+1;continue}h<34&&(e[j]!=="0"||i)&&(i||(p=o),i=!0,g[w++]=parseInt(e[j],10),h=h+1),i&&(c=c+1),n&&(l=l+1),o=o+1,j=j+1}if(n&&!o)throw new Dt(""+e+" not a valid Decimal128 string");if(e[j]==="e"||e[j]==="E"){var pt=e.substr(++j).match(Vw);if(!pt||!pt[2])return new t(ht.from(Qs));_=parseInt(pt[0],10),j=j+pt[0].length}if(e[j])return new t(ht.from(Qs));if(y=0,!h)y=0,b=0,g[0]=0,c=1,h=1,s=0;else if(b=h-1,s=c,s!==1)for(;g[p+s-1]===0;)s=s-1;for(_<=l&&l-_>16384?_=Xs:_=_-l;_>mn;){if(b=b+1,b-y>Hw){var Pt=g.join("");if(Pt.match(/^0+$/)){_=mn;break}Ur(e,"overflow")}_=_-1}for(;_<Xs||h<c;){if(b===0&&s<h){_=Xs,s=0;break}if(h<c?c=c-1:b=b-1,_<mn)_=_+1;else{var Pt=g.join("");if(Pt.match(/^0+$/)){_=mn;break}Ur(e,"overflow")}}if(b-y+1<s){var Ot=o;n&&(p=p+1,Ot=Ot+1),r&&(p=p+1,Ot=Ot+1);var $t=parseInt(e[p+b+1],10),Wt=0;if($t>=5&&(Wt=1,$t===5)){for(Wt=g[b]%2===1?1:0,k=p+b+2;k<Ot;k++)if(parseInt(e[k],10)){Wt=1;break}}if(Wt){for(var mt=b;mt>=0;mt--)if(++g[mt]>9&&(g[mt]=0,mt===0))if(_<mn)_=_+1,g[mt]=1;else return new t(ht.from(r?tu:eu))}}if(A=Y.fromNumber(0),M=Y.fromNumber(0),s===0)A=Y.fromNumber(0),M=Y.fromNumber(0);else if(b-y<17){var mt=y;for(M=Y.fromNumber(g[mt++]),A=new Y(0,0);mt<=b;mt++)M=M.multiply(Y.fromNumber(10)),M=M.add(Y.fromNumber(g[mt]))}else{var mt=y;for(A=Y.fromNumber(g[mt++]);mt<=b-17;mt++)A=A.multiply(Y.fromNumber(10)),A=A.add(Y.fromNumber(g[mt]));for(M=Y.fromNumber(g[mt++]);mt<=b;mt++)M=M.multiply(Y.fromNumber(10)),M=M.add(Y.fromNumber(g[mt]))}var Gt=Kw(A,Y.fromString("100000000000000000"));Gt.low=Gt.low.add(M),Yw(Gt.low,M)&&(Gt.high=Gt.high.add(Y.fromNumber(1))),G=_+Zl;var at={low:Y.fromNumber(0),high:Y.fromNumber(0)};Gt.high.shiftRightUnsigned(49).and(Y.fromNumber(1)).equals(Y.fromNumber(1))?(at.high=at.high.or(Y.fromNumber(3).shiftLeft(61)),at.high=at.high.or(Y.fromNumber(G).and(Y.fromNumber(16383).shiftLeft(47))),at.high=at.high.or(Gt.high.and(Y.fromNumber(0x7fffffffffff)))):(at.high=at.high.or(Y.fromNumber(G&16383).shiftLeft(49)),at.high=at.high.or(Gt.high.and(Y.fromNumber(562949953421311)))),at.low=Gt.low,r&&(at.high=at.high.or(Y.fromString("9223372036854775808")));var nt=ht.alloc(16);return j=0,nt[j++]=at.low.low&255,nt[j++]=at.low.low>>8&255,nt[j++]=at.low.low>>16&255,nt[j++]=at.low.low>>24&255,nt[j++]=at.low.high&255,nt[j++]=at.low.high>>8&255,nt[j++]=at.low.high>>16&255,nt[j++]=at.low.high>>24&255,nt[j++]=at.high.low&255,nt[j++]=at.high.low>>8&255,nt[j++]=at.high.low>>16&255,nt[j++]=at.high.low>>24&255,nt[j++]=at.high.high&255,nt[j++]=at.high.high>>8&255,nt[j++]=at.high.high>>16&255,nt[j++]=at.high.high>>24&255,new t(nt)},t.prototype.toString=function(){for(var e,r=0,n=new Array(36),i=0;i<n.length;i++)n[i]=0;var s=0,o=!1,c,l={parts:[0,0,0,0]},p,g,h=[];s=0;var w=this.bytes,y=w[s++]|w[s++]<<8|w[s++]<<16|w[s++]<<24,b=w[s++]|w[s++]<<8|w[s++]<<16|w[s++]<<24,_=w[s++]|w[s++]<<8|w[s++]<<16|w[s++]<<24,k=w[s++]|w[s++]<<8|w[s++]<<16|w[s++]<<24;s=0;var A={low:new Y(y,b),high:new Y(_,k)};A.high.lessThan(Y.ZERO)&&h.push("-");var M=k>>26&qw;if(M>>3===3){if(M===Ww)return h.join("")+"Infinity";if(M===Gw)return"NaN";e=k>>15&ru,c=8+(k>>14&1)}else c=k>>14&7,e=k>>17&ru;var G=e-Zl;if(l.parts[0]=(k&16383)+((c&15)<<14),l.parts[1]=_,l.parts[2]=b,l.parts[3]=y,l.parts[0]===0&&l.parts[1]===0&&l.parts[2]===0&&l.parts[3]===0)o=!0;else for(g=3;g>=0;g--){var j=0,Z=zw(l);if(l=Z.quotient,j=Z.rem.low,!!j)for(p=8;p>=0;p--)n[g*9+p]=j%10,j=Math.floor(j/10)}if(o)r=1,n[s]=0;else for(r=36;!n[s];)r=r-1,s=s+1;var Et=r-1+G;if(Et>=34||Et<=-7||G>0){if(r>34)return h.push("".concat(0)),G>0?h.push("E+".concat(G)):G<0&&h.push("E".concat(G)),h.join("");h.push("".concat(n[s++])),r=r-1,r&&h.push(".");for(var i=0;i<r;i++)h.push("".concat(n[s++]));h.push("E"),Et>0?h.push("+".concat(Et)):h.push("".concat(Et))}else if(G>=0)for(var i=0;i<r;i++)h.push("".concat(n[s++]));else{var At=r+G;if(At>0)for(var i=0;i<At;i++)h.push("".concat(n[s++]));else h.push("0");for(h.push(".");At++<0;)h.push("0");for(var i=0;i<r-Math.max(At-1,0);i++)h.push("".concat(n[s++]))}return h.join("")},t.prototype.toJSON=function(){return{$numberDecimal:this.toString()}},t.prototype.toExtendedJSON=function(){return{$numberDecimal:this.toString()}},t.fromExtendedJSON=function(e){return t.fromString(e.$numberDecimal)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return'new Decimal128("'.concat(this.toString(),'")')},t}();Object.defineProperty(za.prototype,"_bsontype",{value:"Decimal128"});var bs=function(){function t(e){if(!(this instanceof t))return new t(e);e instanceof Number&&(e=e.valueOf()),this.value=+e}return t.prototype.valueOf=function(){return this.value},t.prototype.toJSON=function(){return this.value},t.prototype.toString=function(e){return this.value.toString(e)},t.prototype.toExtendedJSON=function(e){return e&&(e.legacy||e.relaxed&&isFinite(this.value))?this.value:Object.is(Math.sign(this.value),-0)?{$numberDouble:"-".concat(this.value.toFixed(1))}:{$numberDouble:Number.isInteger(this.value)?this.value.toFixed(1):this.value.toString()}},t.fromExtendedJSON=function(e,r){var n=parseFloat(e.$numberDouble);return r&&r.relaxed?n:new t(n)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){var e=this.toExtendedJSON();return"new Double(".concat(e.$numberDouble,")")},t}();Object.defineProperty(bs.prototype,"_bsontype",{value:"Double"});var ws=function(){function t(e){if(!(this instanceof t))return new t(e);e instanceof Number&&(e=e.valueOf()),this.value=+e|0}return t.prototype.valueOf=function(){return this.value},t.prototype.toString=function(e){return this.value.toString(e)},t.prototype.toJSON=function(){return this.value},t.prototype.toExtendedJSON=function(e){return e&&(e.relaxed||e.legacy)?this.value:{$numberInt:this.value.toString()}},t.fromExtendedJSON=function(e,r){return r&&r.relaxed?parseInt(e.$numberInt,10):new t(e.$numberInt)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return"new Int32(".concat(this.valueOf(),")")},t}();Object.defineProperty(ws.prototype,"_bsontype",{value:"Int32"});var Ka=function(){function t(){if(!(this instanceof t))return new t}return t.prototype.toExtendedJSON=function(){return{$maxKey:1}},t.fromExtendedJSON=function(){return new t},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return"new MaxKey()"},t}();Object.defineProperty(Ka.prototype,"_bsontype",{value:"MaxKey"});var Ya=function(){function t(){if(!(this instanceof t))return new t}return t.prototype.toExtendedJSON=function(){return{$minKey:1}},t.fromExtendedJSON=function(){return new t},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return"new MinKey()"},t}();Object.defineProperty(Ya.prototype,"_bsontype",{value:"MinKey"});var Jw=new RegExp("^[0-9a-fA-F]{24}$"),hr=null,Se=Symbol("id"),Kt=function(){function t(e){if(!(this instanceof t))return new t(e);var r;if(typeof e=="object"&&e&&"id"in e){if(typeof e.id!="string"&&!ArrayBuffer.isView(e.id))throw new Dt("Argument passed in must have an id that is of type string or Buffer");"toHexString"in e&&typeof e.toHexString=="function"?r=ht.from(e.toHexString(),"hex"):r=e.id}else r=e;if(r==null||typeof r=="number")this[Se]=t.generate(typeof r=="number"?r:void 0);else if(ArrayBuffer.isView(r)&&r.byteLength===12)this[Se]=r instanceof ht?r:Gi(r);else if(typeof r=="string")if(r.length===12){var n=ht.from(r);if(n.byteLength===12)this[Se]=n;else throw new Dt("Argument passed in must be a string of 12 bytes")}else if(r.length===24&&Jw.test(r))this[Se]=ht.from(r,"hex");else throw new Dt("Argument passed in must be a string of 12 bytes or a string of 24 hex characters or an integer");else throw new Dt("Argument passed in does not match the accepted types");t.cacheHexString&&(this.__id=this.id.toString("hex"))}return Object.defineProperty(t.prototype,"id",{get:function(){return this[Se]},set:function(e){this[Se]=e,t.cacheHexString&&(this.__id=e.toString("hex"))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"generationTime",{get:function(){return this.id.readInt32BE(0)},set:function(e){this.id.writeUInt32BE(e,0)},enumerable:!1,configurable:!0}),t.prototype.toHexString=function(){if(t.cacheHexString&&this.__id)return this.__id;var e=this.id.toString("hex");return t.cacheHexString&&!this.__id&&(this.__id=e),e},t.getInc=function(){return t.index=(t.index+1)%16777215},t.generate=function(e){typeof e!="number"&&(e=Math.floor(Date.now()/1e3));var r=t.getInc(),n=ht.alloc(12);return n.writeUInt32BE(e,0),hr===null&&(hr=bp(5)),n[4]=hr[0],n[5]=hr[1],n[6]=hr[2],n[7]=hr[3],n[8]=hr[4],n[11]=r&255,n[10]=r>>8&255,n[9]=r>>16&255,n},t.prototype.toString=function(e){return e?this.id.toString(e):this.toHexString()},t.prototype.toJSON=function(){return this.toHexString()},t.prototype.equals=function(e){if(e==null)return!1;if(e instanceof t)return this[Se][11]===e[Se][11]&&this[Se].equals(e[Se]);if(typeof e=="string"&&t.isValid(e)&&e.length===12&&Ga(this.id))return e===ht.prototype.toString.call(this.id,"latin1");if(typeof e=="string"&&t.isValid(e)&&e.length===24)return e.toLowerCase()===this.toHexString();if(typeof e=="string"&&t.isValid(e)&&e.length===12)return ht.from(e).equals(this.id);if(typeof e=="object"&&"toHexString"in e&&typeof e.toHexString=="function"){var r=e.toHexString(),n=this.toHexString().toLowerCase();return typeof r=="string"&&r.toLowerCase()===n}return!1},t.prototype.getTimestamp=function(){var e=new Date,r=this.id.readUInt32BE(0);return e.setTime(Math.floor(r)*1e3),e},t.createPk=function(){return new t},t.createFromTime=function(e){var r=ht.from([0,0,0,0,0,0,0,0,0,0,0,0]);return r.writeUInt32BE(e,0),new t(r)},t.createFromHexString=function(e){if(typeof e>"u"||e!=null&&e.length!==24)throw new Dt("Argument passed in must be a single String of 12 bytes or a string of 24 hex characters");return new t(ht.from(e,"hex"))},t.isValid=function(e){if(e==null)return!1;try{return new t(e),!0}catch{return!1}},t.prototype.toExtendedJSON=function(){return this.toHexString?{$oid:this.toHexString()}:{$oid:this.toString("hex")}},t.fromExtendedJSON=function(e){return new t(e.$oid)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return'new ObjectId("'.concat(this.toHexString(),'")')},t.index=Math.floor(Math.random()*16777215),t}();Object.defineProperty(Kt.prototype,"generate",{value:vs(function(t){return Kt.generate(t)},"Please use the static `ObjectId.generate(time)` instead")});Object.defineProperty(Kt.prototype,"getInc",{value:vs(function(){return Kt.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(Kt.prototype,"get_inc",{value:vs(function(){return Kt.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(Kt,"get_inc",{value:vs(function(){return Kt.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(Kt.prototype,"_bsontype",{value:"ObjectID"});function Xw(t){return t.split("").sort().join("")}var Vn=function(){function t(e,r){if(!(this instanceof t))return new t(e,r);if(this.pattern=e,this.options=Xw(r??""),this.pattern.indexOf("\0")!==-1)throw new br("BSON Regex patterns cannot contain null bytes, found: ".concat(JSON.stringify(this.pattern)));if(this.options.indexOf("\0")!==-1)throw new br("BSON Regex options cannot contain null bytes, found: ".concat(JSON.stringify(this.options)));for(var n=0;n<this.options.length;n++)if(!(this.options[n]==="i"||this.options[n]==="m"||this.options[n]==="x"||this.options[n]==="l"||this.options[n]==="s"||this.options[n]==="u"))throw new br("The regular expression option [".concat(this.options[n],"] is not supported"))}return t.parseOptions=function(e){return e?e.split("").sort().join(""):""},t.prototype.toExtendedJSON=function(e){return e=e||{},e.legacy?{$regex:this.pattern,$options:this.options}:{$regularExpression:{pattern:this.pattern,options:this.options}}},t.fromExtendedJSON=function(e){if("$regex"in e)if(typeof e.$regex!="string"){if(e.$regex._bsontype==="BSONRegExp")return e}else return new t(e.$regex,t.parseOptions(e.$options));if("$regularExpression"in e)return new t(e.$regularExpression.pattern,t.parseOptions(e.$regularExpression.options));throw new Dt("Unexpected BSONRegExp EJSON object form: ".concat(JSON.stringify(e)))},t}();Object.defineProperty(Vn.prototype,"_bsontype",{value:"BSONRegExp"});var Ja=function(){function t(e){if(!(this instanceof t))return new t(e);this.value=e}return t.prototype.valueOf=function(){return this.value},t.prototype.toString=function(){return this.value},t.prototype.inspect=function(){return'new BSONSymbol("'.concat(this.value,'")')},t.prototype.toJSON=function(){return this.value},t.prototype.toExtendedJSON=function(){return{$symbol:this.value}},t.fromExtendedJSON=function(e){return new t(e.$symbol)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t}();Object.defineProperty(Ja.prototype,"_bsontype",{value:"Symbol"});var Qw=Y,Sp=function(t){ms(e,t);function e(r,n){var i=this;return i instanceof e?(Y.isLong(r)?i=t.call(this,r.low,r.high,!0)||this:ri(r)&&typeof r.t<"u"&&typeof r.i<"u"?i=t.call(this,r.i,r.t,!0)||this:i=t.call(this,r,n,!0)||this,Object.defineProperty(i,"_bsontype",{value:"Timestamp",writable:!1,configurable:!1,enumerable:!1}),i):new e(r,n)}return e.prototype.toJSON=function(){return{$timestamp:this.toString()}},e.fromInt=function(r){return new e(Y.fromInt(r,!0))},e.fromNumber=function(r){return new e(Y.fromNumber(r,!0))},e.fromBits=function(r,n){return new e(r,n)},e.fromString=function(r,n){return new e(Y.fromString(r,!0,n))},e.prototype.toExtendedJSON=function(){return{$timestamp:{t:this.high>>>0,i:this.low>>>0}}},e.fromExtendedJSON=function(r){return new e(r.$timestamp)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return"new Timestamp({ t: ".concat(this.getHighBits(),", i: ").concat(this.getLowBits()," })")},e.MAX_VALUE=Y.MAX_UNSIGNED_VALUE,e}(Qw);function Zw(t){return ri(t)&&Reflect.has(t,"_bsontype")&&typeof t._bsontype=="string"}var Ip=2147483647,Cp=-2147483648,Tp=9223372036854776e3,xp=-9223372036854776e3,t_={$oid:Kt,$binary:wr,$uuid:wr,$symbol:Ja,$numberInt:ws,$numberDecimal:za,$numberDouble:bs,$numberLong:Y,$minKey:Ya,$maxKey:Ka,$regex:Vn,$regularExpression:Vn,$timestamp:Sp};function Dp(t,e){if(e===void 0&&(e={}),typeof t=="number"){if(e.relaxed||e.legacy)return t;if(Math.floor(t)===t){if(t>=Cp&&t<=Ip)return new ws(t);if(t>=xp&&t<=Tp)return Y.fromNumber(t)}return new bs(t)}if(t==null||typeof t!="object")return t;if(t.$undefined)return null;for(var r=Object.keys(t).filter(function(h){return h.startsWith("$")&&t[h]!=null}),n=0;n<r.length;n++){var i=t_[r[n]];if(i)return i.fromExtendedJSON(t,e)}if(t.$date!=null){var s=t.$date,o=new Date;return e.legacy?typeof s=="number"?o.setTime(s):typeof s=="string"&&o.setTime(Date.parse(s)):typeof s=="string"?o.setTime(Date.parse(s)):Y.isLong(s)?o.setTime(s.toNumber()):typeof s=="number"&&e.relaxed&&o.setTime(s),o}if(t.$code!=null){var c=Object.assign({},t);return t.$scope&&(c.$scope=Dp(t.$scope)),ys.fromExtendedJSON(t)}if(Uw(t)||t.$dbPointer){var l=t.$ref?t:t.$dbPointer;if(l instanceof Hn)return l;var p=Object.keys(l).filter(function(h){return h.startsWith("$")}),g=!0;if(p.forEach(function(h){["$ref","$id","$db"].indexOf(h)===-1&&(g=!1)}),g)return Hn.fromExtendedJSON(l)}return t}function e_(t,e){return t.map(function(r,n){e.seenObjects.push({propertyName:"index ".concat(n),obj:null});try{return Ze(r,e)}finally{e.seenObjects.pop()}})}function iu(t){var e=t.toISOString();return t.getUTCMilliseconds()!==0?e:e.slice(0,-5)+"Z"}function Ze(t,e){if((typeof t=="object"||typeof t=="function")&&t!==null){var r=e.seenObjects.findIndex(function(A){return A.obj===t});if(r!==-1){var n=e.seenObjects.map(function(A){return A.propertyName}),i=n.slice(0,r).map(function(A){return"".concat(A," -> ")}).join(""),s=n[r],o=" -> "+n.slice(r+1,n.length-1).map(function(A){return"".concat(A," -> ")}).join(""),c=n[n.length-1],l=" ".repeat(i.length+s.length/2),p="-".repeat(o.length+(s.length+c.length)/2-1);throw new Dt(`Converting circular structure to EJSON:
|
|
34
34
|
`+" ".concat(i).concat(s).concat(o).concat(c,`
|
|
35
35
|
`)+" ".concat(l,"\\").concat(p,"/"))}e.seenObjects[e.seenObjects.length-1].obj=t}if(Array.isArray(t))return e_(t,e);if(t===void 0)return null;if(t instanceof Date||Pw(t)){var g=t.getTime(),h=g>-1&&g<2534023188e5;return e.legacy?e.relaxed&&h?{$date:t.getTime()}:{$date:iu(t)}:e.relaxed&&h?{$date:iu(t)}:{$date:{$numberLong:t.getTime().toString()}}}if(typeof t=="number"&&(!e.relaxed||!isFinite(t))){if(Math.floor(t)===t){var w=t>=Cp&&t<=Ip,y=t>=xp&&t<=Tp;if(w)return{$numberInt:t.toString()};if(y)return{$numberLong:t.toString()}}return{$numberDouble:t.toString()}}if(t instanceof RegExp||kw(t)){var b=t.flags;if(b===void 0){var _=t.toString().match(/[gimuy]*$/);_&&(b=_[0])}var k=new Vn(t.source,b);return k.toExtendedJSON(e)}return t!=null&&typeof t=="object"?n_(t,e):t}var r_={Binary:function(t){return new wr(t.value(),t.sub_type)},Code:function(t){return new ys(t.code,t.scope)},DBRef:function(t){return new Hn(t.collection||t.namespace,t.oid,t.db,t.fields)},Decimal128:function(t){return new za(t.bytes)},Double:function(t){return new bs(t.value)},Int32:function(t){return new ws(t.value)},Long:function(t){return Y.fromBits(t.low!=null?t.low:t.low_,t.low!=null?t.high:t.high_,t.low!=null?t.unsigned:t.unsigned_)},MaxKey:function(){return new Ka},MinKey:function(){return new Ya},ObjectID:function(t){return new Kt(t)},ObjectId:function(t){return new Kt(t)},BSONRegExp:function(t){return new Vn(t.pattern,t.options)},Symbol:function(t){return new Ja(t.value)},Timestamp:function(t){return Sp.fromBits(t.low,t.high)}};function n_(t,e){if(t==null||typeof t!="object")throw new br("not an object instance");var r=t._bsontype;if(typeof r>"u"){var n={};for(var i in t){e.seenObjects.push({propertyName:i,obj:null});try{var s=Ze(t[i],e);i==="__proto__"?Object.defineProperty(n,i,{value:s,writable:!0,enumerable:!0,configurable:!0}):n[i]=s}finally{e.seenObjects.pop()}}return n}else if(Zw(t)){var o=t;if(typeof o.toExtendedJSON!="function"){var c=r_[t._bsontype];if(!c)throw new Dt("Unrecognized or invalid _bsontype: "+t._bsontype);o=c(o)}return r==="Code"&&o.scope?o=new ys(o.code,Ze(o.scope,e)):r==="DBRef"&&o.oid&&(o=new Hn(Ze(o.collection,e),Ze(o.oid,e),Ze(o.db,e),Ze(o.fields,e))),o.toExtendedJSON(e)}else throw new br("_bsontype must be a string, but was: "+typeof r)}var su;(function(t){function e(s,o){var c=Object.assign({},{relaxed:!0,legacy:!1},o);return typeof c.relaxed=="boolean"&&(c.strict=!c.relaxed),typeof c.strict=="boolean"&&(c.relaxed=!c.strict),JSON.parse(s,function(l,p){if(l.indexOf("\0")!==-1)throw new br("BSON Document field names cannot contain null bytes, found: ".concat(JSON.stringify(l)));return Dp(p,c)})}t.parse=e;function r(s,o,c,l){c!=null&&typeof c=="object"&&(l=c,c=0),o!=null&&typeof o=="object"&&!Array.isArray(o)&&(l=o,o=void 0,c=0);var p=Object.assign({relaxed:!0,legacy:!1},l,{seenObjects:[{propertyName:"(root)",obj:null}]}),g=Ze(s,p);return JSON.stringify(g,o,c)}t.stringify=r;function n(s,o){return o=o||{},JSON.parse(r(s,o))}t.serialize=n;function i(s,o){return o=o||{},e(JSON.stringify(s),o)}t.deserialize=i})(su||(su={}));var ou,au=yp();au.Map?ou=au.Map:ou=function(){function t(e){e===void 0&&(e=[]),this._keys=[],this._values={};for(var r=0;r<e.length;r++)if(e[r]!=null){var n=e[r],i=n[0],s=n[1];this._keys.push(i),this._values[i]={v:s,i:this._keys.length-1}}}return t.prototype.clear=function(){this._keys=[],this._values={}},t.prototype.delete=function(e){var r=this._values[e];return r==null?!1:(delete this._values[e],this._keys.splice(r.i,1),!0)},t.prototype.entries=function(){var e=this,r=0;return{next:function(){var n=e._keys[r++];return{value:n!==void 0?[n,e._values[n].v]:void 0,done:n===void 0}}}},t.prototype.forEach=function(e,r){r=r||this;for(var n=0;n<this._keys.length;n++){var i=this._keys[n];e.call(r,this._values[i].v,i,r)}},t.prototype.get=function(e){return this._values[e]?this._values[e].v:void 0},t.prototype.has=function(e){return this._values[e]!=null},t.prototype.keys=function(){var e=this,r=0;return{next:function(){var n=e._keys[r++];return{value:n!==void 0?n:void 0,done:n===void 0}}}},t.prototype.set=function(e,r){return this._values[e]?(this._values[e].v=r,this):(this._keys.push(e),this._values[e]={v:r,i:this._keys.length-1},this)},t.prototype.values=function(){var e=this,r=0;return{next:function(){var n=e._keys[r++];return{value:n!==void 0?e._values[n].v:void 0,done:n===void 0}}}},Object.defineProperty(t.prototype,"size",{get:function(){return this._keys.length},enumerable:!1,configurable:!0}),t}();var _E=Y.fromNumber(Lw),EE=Y.fromNumber(Mw),Zs=new Uint8Array(8),SE=new DataView(Zs.buffer,Zs.byteOffset,Zs.byteLength),i_=1024*1024*17,IE=ht.alloc(i_),Xa=class{triggerID;nudgeID;engagementID;contentID;shortID;contentType;variation;props;objective;onsiteDeliveryType;holdout;constructor(t){t=t||{},this.triggerID=t.id||t.triggerID,this.nudgeID=t.nudgeID,this.shortID=t.shortID,this.contentType=t.contentType,this.engagementID=t.engagementID,this.contentID=t.contentID,this.variation=t.variation,this.props=t.props,this.objective=t.objective,this.onsiteDeliveryType=t.onsiteDeliveryType,this.holdout=t.holdout}},jt=class{constructor(t,e={},r,n){this.name=t,this.properties=e,this.id=n?new Kt(n):new Kt,this.occurred=new Date,r&&(this.trigger=new Xa(r)),this.newEvent=!n}trigger;items;videos;id;newEvent;cart;currentItem;deviceProps;landingPage;occurred;page;sessionID;sessionNumber;locale},be=class{static SWIPER_CSS="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css";static injectScriptURL(t,e){if(!t)return;let r=document.createElement("script");r.id=e??"",r.src=t,r.type="module",document.head.appendChild(r)}static injectRawScript(t){if(!t)return;let e=document.createElement("script");e.id="cooee-app-script",e.innerHTML=t,document.head.appendChild(e)}static injectRawCSS(t,e=document.head){if(!t)return;let r=document.createElement("style");r.textContent=t,e.appendChild(r)}static injectSwiperCSS(t=document.head){this.injectStylesheet(this.SWIPER_CSS,t)}static injectStylesheet(t,e=document.head){if(!t)return;let r=document.createElement("link");r.rel="stylesheet",r.href=t,t===this.SWIPER_CSS&&(r.crossOrigin="anonymous",r.onload=n=>{let i=n.currentTarget?.sheet?.cssRules;if(i){for(let s of i)if(s.type==CSSRule.FONT_FACE_RULE){let o=t.split("/"),c=o.slice(0,o.length-1).join("/"),l=s.cssText;l=l.replace(/url\s*\(\s*['"]?(?!((\/)|((?:https?:)?\/\/)|(?:data:?:)))([^'")]+)['"]?\s*\)/g,`url("${c}/$4")`);let p=document.createElement("style");p.appendChild(document.createTextNode(l)),document.head.appendChild(p)}}}),e.appendChild(r)}static async loadSwiperScript(){window.CooeeSDK.Swiper||(window.CooeeSDK.Swiper=(await import("https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.mjs")).Swiper)}},s_="2.0.4",Yo=500,cu="user-agent",Zr="",lu="?",zi="function",er="undefined",tn="object",Jo="string",Qt="browser",Be="cpu",De="device",ye="engine",fe="os",Vr="result",L="name",O="type",R="vendor",B="version",Zt="architecture",qn="major",P="model",Nn="console",et="mobile",yt="tablet",Lt="smarttv",Ce="wearable",wi="xr",kn="embedded",vn="inapp",Qa="brands",gr="formFactors",Za="fullVersionList",qr="platform",tc="platformVersion",_s="bitness",cr="sec-ch-ua",o_=cr+"-full-version-list",a_=cr+"-arch",c_=cr+"-"+_s,l_=cr+"-form-factors",u_=cr+"-"+et,h_=cr+"-"+P,Ap=cr+"-"+qr,p_=Ap+"-version",Op=[Qa,Za,et,P,qr,tc,Zt,gr,_s],_i="Amazon",Br="Apple",uu="ASUS",hu="BlackBerry",pr="Google",pu="Huawei",to="Lenovo",du="Honor",Ei="LG",eo="Microsoft",ro="Motorola",no="Nvidia",fu="OnePlus",io="OPPO",yn="Samsung",gu="Sharp",bn="Sony",so="Xiaomi",oo="Zebra",mu="Chrome",vu="Chromium",Qe="Chromecast",Ni="Edge",wn="Firefox",_n="Opera",ao="Facebook",yu="Sogou",jr="Mobile ",En=" Browser",Xo="Windows",d_=typeof window!==er,te=d_&&window.navigator?window.navigator:void 0,tr=te&&te.userAgentData?te.userAgentData:void 0,f_=function(t,e){var r={},n=e;if(!Ki(e)){n={};for(var i in e)for(var s in e[i])n[s]=e[i][s].concat(n[s]?n[s]:[])}for(var o in t)r[o]=n[o]&&n[o].length%2===0?n[o].concat(t[o]):t[o];return r},Es=function(t){for(var e={},r=0;r<t.length;r++)e[t[r].toUpperCase()]=t[r];return e},Qo=function(t,e){if(typeof t===tn&&t.length>0){for(var r in t)if($e(e)==$e(t[r]))return!0;return!1}return un(t)?$e(e)==$e(t):!1},Ki=function(t,e){for(var r in t)return/^(browser|cpu|device|engine|os)$/.test(r)||(e?Ki(t[r]):!1)},un=function(t){return typeof t===Jo},co=function(t){if(t){for(var e=[],r=en(/\\?\"/g,t).split(","),n=0;n<r.length;n++)if(r[n].indexOf(";")>-1){var i=Yi(r[n]).split(";v=");e[n]={brand:i[0],version:i[1]}}else e[n]=Yi(r[n]);return e}},$e=function(t){return un(t)?t.toLowerCase():t},lo=function(t){return un(t)?en(/[^\d\.]/g,t).split(".")[0]:void 0},Fe=function(t){for(var e in t){var r=t[e];typeof r==tn&&r.length==2?this[r[0]]=r[1]:this[r]=void 0}return this},en=function(t,e){return un(e)?e.replace(t,Zr):e},Sn=function(t){return en(/\\?\"/g,t)},Yi=function(t,e){if(un(t))return t=en(/^\s\s*/,t),typeof e===er?t:t.substring(0,Yo)},uo=function(t,e){if(!(!t||!e))for(var r=0,n,i,s,o,c,l;r<e.length&&!c;){var p=e[r],g=e[r+1];for(n=i=0;n<p.length&&!c&&p[n];)if(c=p[n++].exec(t),c)for(s=0;s<g.length;s++)l=c[++i],o=g[s],typeof o===tn&&o.length>0?o.length===2?typeof o[1]==zi?this[o[0]]=o[1].call(this,l):this[o[0]]=o[1]:o.length>=3&&(typeof o[1]===zi&&!(o[1].exec&&o[1].test)?o.length>3?this[o[0]]=l?o[1].apply(this,o.slice(2)):void 0:this[o[0]]=l?o[1].call(this,l,o[2]):void 0:o.length==3?this[o[0]]=l?l.replace(o[1],o[2]):void 0:o.length==4?this[o[0]]=l?o[3].call(this,l.replace(o[1],o[2])):void 0:o.length>4&&(this[o[0]]=l?o[3].apply(this,[l.replace(o[1],o[2])].concat(o.slice(4))):void 0)):this[o]=l||void 0;r+=2}},xe=function(t,e){for(var r in e)if(typeof e[r]===tn&&e[r].length>0){for(var n=0;n<e[r].length;n++)if(Qo(e[r][n],t))return r===lu?void 0:r}else if(Qo(e[r],t))return r===lu?void 0:r;return e.hasOwnProperty("*")?e["*"]:t},bu={ME:"4.90","NT 3.51":"3.51","NT 4.0":"4.0",2e3:["5.0","5.01"],XP:["5.1","5.2"],Vista:"6.0",7:"6.1",8:"6.2","8.1":"6.3",10:["6.4","10.0"],NT:""},wu={embedded:"Automotive",mobile:"Mobile",tablet:["Tablet","EInk"],smarttv:"TV",wearable:"Watch",xr:["VR","XR"],"?":["Desktop","Unknown"],"*":void 0},g_={Chrome:"Google Chrome",Edge:"Microsoft Edge","Edge WebView2":"Microsoft Edge WebView2","Chrome WebView":"Android WebView","Chrome Headless":"HeadlessChrome","Huawei Browser":"HuaweiBrowser","MIUI Browser":"Miui Browser","Opera Mobi":"OperaMobile",Yandex:"YaBrowser"},_u={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[B,[L,jr+"Chrome"]],[/webview.+edge\/([\w\.]+)/i],[B,[L,Ni+" WebView"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[B,[L,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[L,B],[/opios[\/ ]+([\w\.]+)/i],[B,[L,_n+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[B,[L,_n+" GX"]],[/\bopr\/([\w\.]+)/i],[B,[L,_n]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[B,[L,"Baidu"]],[/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],[B,[L,"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|otter|dooble|(?:lg |qute)browser)\/([-\w\.]+)/i,/(heytap|ovi|115|surf)browser\/([\d\.]+)/i,/(ecosia|weibo)(?:__| \w+@)([\d\.]+)/i],[L,B],[/quark(?:pc)?\/([-\w\.]+)/i],[B,[L,"Quark"]],[/\bddg\/([\w\.]+)/i],[B,[L,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[B,[L,"UCBrowser"]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[B,[L,"WeChat"]],[/konqueror\/([\w\.]+)/i],[B,[L,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[B,[L,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[B,[L,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[B,[L,"Smart "+to+En]],[/(avast|avg)\/([\w\.]+)/i],[[L,/(.+)/,"$1 Secure"+En],B],[/\bfocus\/([\w\.]+)/i],[B,[L,wn+" Focus"]],[/\bopt\/([\w\.]+)/i],[B,[L,_n+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[B,[L,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[B,[L,"Dolphin"]],[/coast\/([\w\.]+)/i],[B,[L,_n+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[B,[L,"MIUI"+En]],[/fxios\/([\w\.-]+)/i],[B,[L,jr+wn]],[/\bqihoobrowser\/?([\w\.]*)/i],[B,[L,"360"]],[/\b(qq)\/([\w\.]+)/i],[[L,/(.+)/,"$1Browser"],B],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[L,/(.+)/,"$1"+En],B],[/samsungbrowser\/([\w\.]+)/i],[B,[L,yn+" Internet"]],[/metasr[\/ ]?([\d\.]+)/i],[B,[L,yu+" Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[L,yu+" Mobile"],B],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i],[L,B],[/(lbbrowser|rekonq)/i],[L],[/ome\/([\w\.]+) \w* ?(iron) saf/i,/ome\/([\w\.]+).+qihu (360)[es]e/i],[B,L],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[L,ao],B,[O,vn]],[/(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,/(instagram|snapchat|klarna)[\/ ]([-\w\.]+)/i],[L,B,[O,vn]],[/\bgsa\/([\w\.]+) .*safari\//i],[B,[L,"GSA"],[O,vn]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[B,[L,"TikTok"],[O,vn]],[/\[(linkedin)app\]/i],[L,[O,vn]],[/(chromium)[\/ ]([-\w\.]+)/i],[L,B],[/headlesschrome(?:\/([\w\.]+)| )/i],[B,[L,mu+" Headless"]],[/wv\).+chrome\/([\w\.]+).+edgw\//i],[B,[L,Ni+" WebView2"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[L,mu+" WebView"],B],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[B,[L,"Android"+En]],[/chrome\/([\w\.]+) mobile/i],[B,[L,jr+"Chrome"]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[L,B],[/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i],[B,[L,jr+"Safari"]],[/iphone .*mobile(?:\/\w+ | ?)safari/i],[[L,jr+"Safari"]],[/version\/([\w\.\,]+) .*(safari)/i],[B,L],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[L,[B,"1"]],[/(webkit|khtml)\/([\w\.]+)/i],[L,B],[/(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i],[[L,jr+wn],B],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[L,"Netscape"],B],[/(wolvic|librewolf)\/([\w\.]+)/i],[L,B],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[B,[L,wn+" 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],[L,[B,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[L,[B,/[^\d\.]+./,Zr]]],cpu:[[/\b((amd|x|x86[-_]?|wow|win)64)\b/i],[[Zt,"amd64"]],[/(ia32(?=;))/i,/\b((i[346]|x)86)(pc)?\b/i],[[Zt,"ia32"]],[/\b(aarch64|arm(v?[89]e?l?|_?64))\b/i],[[Zt,"arm64"]],[/\b(arm(v[67])?ht?n?[fl]p?)\b/i],[[Zt,"armhf"]],[/( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i],[[Zt,"arm"]],[/((ppc|powerpc)(64)?)( mac|;|\))/i],[[Zt,/ower/,Zr,$e]],[/ sun4\w[;\)]/i],[[Zt,"sparc"]],[/\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i],[[Zt,$e]]],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],[P,[R,yn],[O,yt]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr]|browser)[-\w]+)/i,/sec-(sgh\w+)/i],[P,[R,yn],[O,et]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[P,[R,Br],[O,et]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[P,[R,Br],[O,yt]],[/(macintosh);/i],[P,[R,Br]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[P,[R,gu],[O,et]],[/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i],[P,[R,du],[O,yt]],[/honor([-\w ]+)[;\)]/i],[P,[R,du],[O,et]],[/\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],[P,[R,pu],[O,yt]],[/(?:huawei)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[P,[R,pu],[O,et]],[/oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i,/\b((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i],[[P,/_/g," "],[R,so],[O,yt]],[/\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],[[P,/_/g," "],[R,so],[O,et]],[/droid.+; (cph2[3-6]\d[13579]|((gm|hd)19|(ac|be|in|kb)20|(d[en]|eb|le|mt)21|ne22)[0-2]\d|p[g-k]\w[1m]10)\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[P,[R,fu],[O,et]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[P,[R,io],[O,et]],[/\b(opd2(\d{3}a?))(?: bui|\))/i],[P,[R,xe,{OnePlus:["203","304","403","404","413","415"],"*":io}],[O,yt]],[/(vivo (5r?|6|8l?|go|one|s|x[il]?[2-4]?)[\w\+ ]*)(?: bui|\))/i],[P,[R,"BLU"],[O,et]],[/; vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[P,[R,"Vivo"],[O,et]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[P,[R,"Realme"],[O,et]],[/(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],[P,[R,to],[O,yt]],[/lenovo[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i],[P,[R,to],[O,et]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ]([\w\s]+)(\)| bui)/i,/((?:moto(?! 360)[-\w\(\) ]+|xt\d{3,4}[cgkosw\+]?[-\d]*|nexus 6)(?= bui|\)))/i],[P,[R,ro],[O,et]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[P,[R,ro],[O,yt]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[P,[R,Ei],[O,yt]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+(?!.*(?:browser|netcast|android tv|watch|webos))(\w+)/i,/\blg-?([\d\w]+) bui/i],[P,[R,Ei],[O,et]],[/(nokia) (t[12][01])/i],[R,P,[O,yt]],[/(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i,/nokia[-_ ]?(([-\w\. ]*))/i],[[P,/_/g," "],[O,et],[R,"Nokia"]],[/(pixel (c|tablet))\b/i],[P,[R,pr],[O,yt]],[/droid.+;(?: google)? (g(01[13]a|020[aem]|025[jn]|1b60|1f8f|2ybb|4s1m|576d|5nz6|8hhn|8vou|a02099|c15s|d1yq|e2ae|ec77|gh2x|kv4x|p4bc|pj41|r83y|tt9q|ur25|wvk6)|pixel[\d ]*a?( pro)?( xl)?( fold)?( \(5g\))?)( bui|\))/i],[P,[R,pr],[O,et]],[/(google) (pixelbook( go)?)/i],[R,P],[/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-\w\w\d\d)(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[P,[R,bn],[O,et]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[P,"Xperia Tablet"],[R,bn],[O,yt]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[P,[R,_i],[O,yt]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[P,/(.+)/g,"Fire Phone $1"],[R,_i],[O,et]],[/(playbook);[-\w\),; ]+(rim)/i],[P,R,[O,yt]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[P,[R,hu],[O,et]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[P,[R,uu],[O,yt]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[P,[R,uu],[O,et]],[/(nexus 9)/i],[P,[R,"HTC"],[O,yt]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[R,[P,/_/g," "],[O,et]],[/tcl (xess p17aa)/i,/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])(_\w(\w|\w\w))?(\)| bui)/i],[P,[R,"TCL"],[O,yt]],[/droid [\w\.]+; (418(?:7d|8v)|5087z|5102l|61(?:02[dh]|25[adfh]|27[ai]|56[dh]|59k|65[ah])|a509dl|t(?:43(?:0w|1[adepqu])|50(?:6d|7[adju])|6(?:09dl|10k|12b|71[efho]|76[hjk])|7(?:66[ahju]|67[hw]|7[045][bh]|71[hk]|73o|76[ho]|79w|81[hks]?|82h|90[bhsy]|99b)|810[hs]))(_\w(\w|\w\w))?(\)| bui)/i],[P,[R,"TCL"],[O,et]],[/(itel) ((\w+))/i],[[R,$e],P,[O,xe,{tablet:["p10001l","w7001"],"*":"mobile"}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[P,[R,"Acer"],[O,yt]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[P,[R,"Meizu"],[O,et]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[P,[R,"Ulefone"],[O,et]],[/; (energy ?\w+)(?: bui|\))/i,/; energizer ([\w ]+)(?: bui|\))/i],[P,[R,"Energizer"],[O,et]],[/; cat (b35);/i,/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],[P,[R,"Cat"],[O,et]],[/((?:new )?andromax[\w- ]+)(?: bui|\))/i],[P,[R,"Smartfren"],[O,et]],[/droid.+; (a(in)?(0(15|59|6[35])|142)p?)/i],[P,[R,"Nothing"],[O,et]],[/; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i,/archos ?(5|gamepad2?|([\w ]*[t1789]|hello) ?\d+[\w ]*)( b|\))/i],[P,[R,"Archos"],[O,yt]],[/archos ([\w ]+)( b|\))/i,/; (ac[3-6]\d\w{2,8})( b|\))/i],[P,[R,"Archos"],[O,et]],[/; (n159v)/i],[P,[R,"HMD"],[O,et]],[/(imo) (tab \w+)/i,/(infinix|tecno) (x1101b?|p904|dp(7c|8d|10a)( pro)?|p70[1-3]a?|p904|t1101)/i],[R,P,[O,yt]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus(?! zenw)|dell|jolla|meizu|motorola|polytron|tecno|micromax|advan)[-_ ]?([-\w]*)/i,/; (blu|hmd|imo|infinix|lava|oneplus|tcl)[_ ]([\w\+ ]+?)(?: bui|\)|; r)/i,/(hp) ([\w ]+\w)/i,/(microsoft); (lumia[\w ]+)/i,/(oppo) ?([\w ]+) bui/i],[R,P,[O,et]],[/(kobo)\s(ereader|touch)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i],[R,P,[O,yt]],[/(surface duo)/i],[P,[R,eo],[O,yt]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[P,[R,"Fairphone"],[O,et]],[/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i],[P,[R,no],[O,yt]],[/(sprint) (\w+)/i],[R,P,[O,et]],[/(kin\.[onetw]{3})/i],[[P,/\./g," "],[R,eo],[O,et]],[/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[P,[R,oo],[O,yt]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[P,[R,oo],[O,et]],[/smart-tv.+(samsung)/i],[R,[O,Lt]],[/hbbtv.+maple;(\d+)/i],[[P,/^/,"SmartTV"],[R,yn],[O,Lt]],[/(vizio)(?: |.+model\/)(\w+-\w+)/i,/tcast.+(lg)e?. ([-\w]+)/i],[R,P,[O,Lt]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[R,Ei],[O,Lt]],[/(apple) ?tv/i],[R,[P,Br+" TV"],[O,Lt]],[/crkey.*devicetype\/chromecast/i],[[P,Qe+" Third Generation"],[R,pr],[O,Lt]],[/crkey.*devicetype\/([^/]*)/i],[[P,/^/,"Chromecast "],[R,pr],[O,Lt]],[/fuchsia.*crkey/i],[[P,Qe+" Nest Hub"],[R,pr],[O,Lt]],[/crkey/i],[[P,Qe],[R,pr],[O,Lt]],[/(portaltv)/i],[P,[R,ao],[O,Lt]],[/droid.+aft(\w+)( bui|\))/i],[P,[R,_i],[O,Lt]],[/(shield \w+ tv)/i],[P,[R,no],[O,Lt]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[P,[R,gu],[O,Lt]],[/(bravia[\w ]+)( bui|\))/i],[P,[R,bn],[O,Lt]],[/(mi(tv|box)-?\w+) bui/i],[P,[R,so],[O,Lt]],[/Hbbtv.*(technisat) (.*);/i],[R,P,[O,Lt]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[R,/.+\/(\w+)/,"$1",xe,{LG:"lge"}],[P,Yi],[O,Lt]],[/droid.+; ([\w- ]+) (?:android tv|smart[- ]?tv)/i],[P,[O,Lt]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:|large screen[\w ]+safari)\b/i],[[O,Lt]],[/(playstation \w+)/i],[P,[R,bn],[O,Nn]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[P,[R,eo],[O,Nn]],[/(ouya)/i,/(nintendo) (\w+)/i,/(retroid) (pocket ([^\)]+))/i],[R,P,[O,Nn]],[/droid.+; (shield)( bui|\))/i],[P,[R,no],[O,Nn]],[/\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i],[P,[R,yn],[O,Ce]],[/((pebble))app/i,/(asus|google|lg|oppo) ((pixel |zen)?watch[\w ]*)( bui|\))/i],[R,P,[O,Ce]],[/(ow(?:19|20)?we?[1-3]{1,3})/i],[P,[R,io],[O,Ce]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[P,[R,Br],[O,Ce]],[/(opwwe\d{3})/i],[P,[R,fu],[O,Ce]],[/(moto 360)/i],[P,[R,ro],[O,Ce]],[/(smartwatch 3)/i],[P,[R,bn],[O,Ce]],[/(g watch r)/i],[P,[R,Ei],[O,Ce]],[/droid.+; (wt63?0{2,3})\)/i],[P,[R,oo],[O,Ce]],[/droid.+; (glass) \d/i],[P,[R,pr],[O,wi]],[/(pico) (4|neo3(?: link|pro)?)/i],[R,P,[O,wi]],[/(quest( \d| pro)?s?).+vr/i],[P,[R,ao],[O,wi]],[/mobile vr; rv.+firefox/i],[[O,wi]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[R,[O,kn]],[/(aeobc)\b/i],[P,[R,_i],[O,kn]],[/(homepod).+mac os/i],[P,[R,Br],[O,kn]],[/windows iot/i],[[O,kn]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+?(mobile|vr|\d) safari/i],[P,[O,xe,{mobile:"Mobile",xr:"VR","*":yt}]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[O,yt]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[O,et]],[/droid .+?; ([\w\. -]+)( bui|\))/i],[P,[R,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[B,[L,Ni+"HTML"]],[/(arkweb)\/([\w\.]+)/i],[L,B],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[B,[L,"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],[L,B],[/ladybird\//i],[[L,"LibWeb"]],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[B,L]],os:[[/(windows nt) (6\.[23]); arm/i],[[L,/N/,"R"],[B,xe,bu]],[/(windows (?:phone|mobile|iot))(?: os)?[\/ ]?([\d\.]*( se)?)/i,/(windows)[\/ ](1[01]|2000|3\.1|7|8(\.1)?|9[58]|me|server 20\d\d( r2)?|vista|xp)/i],[L,B],[/windows nt ?([\d\.\)]*)(?!.+xbox)/i,/\bwin(?=3| ?9|n)(?:nt| 9x )?([\d\.;]*)/i],[[B,/(;|\))/g,"",xe,bu],[L,Xo]],[/(windows ce)\/?([\d\.]*)/i],[L,B],[/[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[B,/_/g,"."],[L,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+(haiku|morphos))/i],[[L,"macOS"],[B,/_/g,"."]],[/android ([\d\.]+).*crkey/i],[B,[L,Qe+" Android"]],[/fuchsia.*crkey\/([\d\.]+)/i],[B,[L,Qe+" Fuchsia"]],[/crkey\/([\d\.]+).*devicetype\/smartspeaker/i],[B,[L,Qe+" SmartSpeaker"]],[/linux.*crkey\/([\d\.]+)/i],[B,[L,Qe+" Linux"]],[/crkey\/([\d\.]+)/i],[B,[L,Qe]],[/droid ([\w\.]+)\b.+(android[- ]x86)/i],[B,L],[/(ubuntu) ([\w\.]+) like android/i],[[L,/(.+)/,"$1 Touch"],B],[/(harmonyos)[\/ ]?([\d\.]*)/i,/(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen)\w*[-\/\.; ]?([\d\.]*)/i],[L,B],[/\(bb(10);/i],[B,[L,hu]],[/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i],[B,[L,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[B,[L,wn+" OS"]],[/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i,/webos(?:[ \/]?|\.tv-20(?=2[2-9]))(\d[\d\.]*)/i],[B,[L,"webOS"]],[/web0s;.+?(?:chr[o0]me|safari)\/(\d+)/i],[[B,xe,{25:"120",24:"108",23:"94",22:"87",6:"79",5:"68",4:"53",3:"38",2:"538",1:"537","*":"TV"}],[L,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[B,[L,"watchOS"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[L,"Chrome OS"],B],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) (\w+)/i,/(xbox); +xbox ([^\);]+)/i,/(pico) .+os([\w\.]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/linux.+(mint)[\/\(\) ]?([\w\.]*)/i,/(mageia|vectorlinux|fuchsia|arcaos|arch(?= ?linux))[;l ]([\d\.]*)/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire|knoppix)(?: gnu[\/ ]linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/\b(aix)[; ]([1-9\.]{0,4})/i,/(hurd|linux|morphos)(?: (?:arm|x86|ppc)\w*| ?)([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) ?(r\d)?/i],[L,B],[/(sunos) ?([\d\.]*)/i],[[L,"Solaris"],B],[/\b(beos|os\/2|amigaos|openvms|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[L,B]]},Si=function(){var t={init:{},isIgnore:{},isIgnoreRgx:{},toString:{}};return Fe.call(t.init,[[Qt,[L,B,qn,O]],[Be,[Zt]],[De,[O,P,R]],[ye,[L,B]],[fe,[L,B]]]),Fe.call(t.isIgnore,[[Qt,[B,qn]],[ye,[B]],[fe,[B]]]),Fe.call(t.isIgnoreRgx,[[Qt,/ ?browser$/i],[fe,/ ?os$/i]]),Fe.call(t.toString,[[Qt,[L,B]],[Be,[Zt]],[De,[R,P]],[ye,[L,B]],[fe,[L,B]]]),t}(),m_=function(t,e){var r=Si.init[e],n=Si.isIgnore[e]||0,i=Si.isIgnoreRgx[e]||0,s=Si.toString[e]||0;function o(){Fe.call(this,r)}return o.prototype.getItem=function(){return t},o.prototype.withClientHints=function(){return tr?tr.getHighEntropyValues(Op).then(function(c){return t.setCH(new Np(c,!1)).parseCH().get()}):t.parseCH().get()},o.prototype.withFeatureCheck=function(){return t.detectFeature().get()},e!=Vr&&(o.prototype.is=function(c){var l=!1;for(var p in this)if(this.hasOwnProperty(p)&&!Qo(n,p)&&$e(i?en(i,this[p]):this[p])==$e(i?en(i,c):c)){if(l=!0,c!=er)break}else if(c==er&&l){l=!l;break}return l},o.prototype.toString=function(){var c=Zr;for(var l in s)typeof this[s[l]]!==er&&(c+=(c?" ":Zr)+this[s[l]]);return c||er}),tr||(o.prototype.then=function(c){var l=this,p=function(){for(var h in l)l.hasOwnProperty(h)&&(this[h]=l[h])};p.prototype={is:o.prototype.is,toString:o.prototype.toString};var g=new p;return c(g),g}),new o};function Np(t,e){if(t=t||{},Fe.call(this,Op),e)Fe.call(this,[[Qa,co(t[cr])],[Za,co(t[o_])],[et,/\?1/.test(t[u_])],[P,Sn(t[h_])],[qr,Sn(t[Ap])],[tc,Sn(t[p_])],[Zt,Sn(t[a_])],[gr,co(t[l_])],[_s,Sn(t[c_])]]);else for(var r in t)this.hasOwnProperty(r)&&typeof t[r]!==er&&(this[r]=t[r])}function Eu(t,e,r,n){return this.get=function(i){return i?this.data.hasOwnProperty(i)?this.data[i]:void 0:this.data},this.set=function(i,s){return this.data[i]=s,this},this.setCH=function(i){return this.uaCH=i,this},this.detectFeature=function(){if(te&&te.userAgent==this.ua)switch(this.itemType){case Qt:te.brave&&typeof te.brave.isBrave==zi&&this.set(L,"Brave");break;case De:!this.get(O)&&tr&&tr[et]&&this.set(O,et),this.get(P)=="Macintosh"&&te&&typeof te.standalone!==er&&te.maxTouchPoints&&te.maxTouchPoints>2&&this.set(P,"iPad").set(O,yt);break;case fe:!this.get(L)&&tr&&tr[qr]&&this.set(L,tr[qr]);break;case Vr:var i=this.data,s=function(o){return i[o].getItem().detectFeature().get()};this.set(Qt,s(Qt)).set(Be,s(Be)).set(De,s(De)).set(ye,s(ye)).set(fe,s(fe))}return this},this.parseUA=function(){return this.itemType!=Vr&&uo.call(this.data,this.ua,this.rgxMap),this.itemType==Qt&&this.set(qn,lo(this.get(B))),this},this.parseCH=function(){var i=this.uaCH,s=this.rgxMap;switch(this.itemType){case Qt:case ye:var o=i[Za]||i[Qa],c;if(o)for(var l in o){var p=o[l].brand||o[l],g=o[l].version;this.itemType==Qt&&!/not.a.brand/i.test(p)&&(!c||/Chrom/.test(c)&&p!=vu||c==Ni&&/WebView2/.test(p))&&(p=xe(p,g_),c=this.get(L),c&&!/Chrom/.test(c)&&/Chrom/.test(p)||this.set(L,p).set(B,g).set(qn,lo(g)),c=p),this.itemType==ye&&p==vu&&this.set(B,g)}break;case Be:var h=i[Zt];h&&(h&&i[_s]=="64"&&(h+="64"),uo.call(this.data,h+";",s));break;case De:if(i[et]&&this.set(O,et),i[P]&&(this.set(P,i[P]),!this.get(O)||!this.get(R))){var w={};uo.call(w,"droid 9; "+i[P]+")",s),!this.get(O)&&w.type&&this.set(O,w.type),!this.get(R)&&w.vendor&&this.set(R,w.vendor)}if(i[gr]){var y;if(typeof i[gr]!="string")for(var b=0;!y&&b<i[gr].length;)y=xe(i[gr][b++],wu);else y=xe(i[gr],wu);this.set(O,y)}break;case fe:var _=i[qr];if(_){var k=i[tc];_==Xo&&(k=parseInt(lo(k),10)>=13?"11":"10"),this.set(L,_).set(B,k)}this.get(L)==Xo&&i[P]=="Xbox"&&this.set(L,"Xbox").set(B,void 0);break;case Vr:var A=this.data,M=function(G){return A[G].getItem().setCH(i).parseCH().get()};this.set(Qt,M(Qt)).set(Be,M(Be)).set(De,M(De)).set(ye,M(ye)).set(fe,M(fe))}return this},Fe.call(this,[["itemType",t],["ua",e],["uaCH",n],["rgxMap",r],["data",m_(this,t)]]),this}function Ke(t,e,r){if(typeof t===tn?(Ki(t,!0)?(typeof e===tn&&(r=e),e=t):(r=t,e=void 0),t=void 0):typeof t===Jo&&!Ki(e,!0)&&(r=e,e=void 0),r&&typeof r.append===zi){var n={};r.forEach(function(l,p){n[p]=l}),r=n}if(!(this instanceof Ke))return new Ke(t,e,r).getResult();var i=typeof t===Jo?t:r&&r[cu]?r[cu]:te&&te.userAgent?te.userAgent:Zr,s=new Np(r,!0),o=e?f_(_u,e):_u,c=function(l){return l==Vr?function(){return new Eu(l,i,o,s).set("ua",i).set(Qt,this.getBrowser()).set(Be,this.getCPU()).set(De,this.getDevice()).set(ye,this.getEngine()).set(fe,this.getOS()).get()}:function(){return new Eu(l,i,o[l],s).parseUA().get()}};return Fe.call(this,[["getBrowser",c(Qt)],["getCPU",c(Be)],["getDevice",c(De)],["getEngine",c(ye)],["getOS",c(fe)],["getResult",c(Vr)],["getUA",function(){return i}],["setUA",function(l){return un(l)&&(i=l.length>Yo?Yi(l,Yo):l),this}]]).setUA(i),this}Ke.VERSION=s_;Ke.BROWSER=Es([L,B,qn,O]);Ke.CPU=Es([Zt]);Ke.DEVICE=Es([P,R,O,Nn,et,Lt,yt,Ce,kn]);Ke.ENGINE=Ke.OS=Es([L,B]);var ec=class{constructor(t,e){this._startTime=t,this._triggerData=e}intervals=[];selectedEmbeddedItems;renderer;closeCallback;inputFields=[];get startTime(){return this._startTime}get triggerData(){return this._triggerData}get inputs(){return this.inputFields}get rootClassName(){let t=this.triggerData.shortID??this.triggerData.id.slice(-6);return t==="test"&&(t="test-"+this.startTime.getTime().toString()),H.IN_APP_WRAPPER_NAME+"-"+t}get selectedItems(){return this.triggerData.items.filter(t=>t.selected.value)}get shouldGiveFBTDiscount(){let t=this.selectedItems.length;return this.triggerData.bundleConfig?.applyDiscountOnMinimum?this.triggerData.bundleConfig.applyDiscountOnMinimum<=t:t===this.triggerData.items.length}onClose(t){this.closeCallback=t}closeInApp(t,e){e??={};let r=(new Date().getTime()-this.startTime.getTime())/1e3,n=x({eventName:t,duration:r},e);this.stopIntervals(),this.closeCallback&&this.closeCallback(n)}addInputField(t,e){this.inputFields.push({id:t,type:e,isValid:!1})}updateValidation(t,e){this.inputFields.forEach(r=>{if(r.id===t){r.isValid=e;return}})}hasManipulatedProductQuantity(){let t=this.triggerData.manipulation.productQuantity;return t?.enabled&&t.min!=null&&t.max!=null}getManipulatedQuantity(t){let{min:e=1,max:r=100}=this.triggerData.manipulation.productQuantity;if(e>r)return T.error("Invalid range: min should be less than or equal to max."),t;if(t>=e&&t<=r)return t;let n=t%100;return n<e?e:n>r?r:n}stopIntervals(){this.intervals.forEach(t=>clearInterval(t))}},ut=class{static storage=new Map;static get(t){return this.storage.has(t)||this.storage.set(t,t.getInstance()),this.storage.get(t)}},v_=ke(rn()),y_=ke(Ru()),Su=class{static UTM_PARAMS=["utm_source","utm_medium","utm_campaign","utm_term","utm_content","utm_id"];static TW_PARAMS={utm_source:"tw_source",utm_campaign:"tw_campaign"};static getReferrer(){if(document.referrer)return document.referrer.replace(location.origin,"")}static getUTMParams(){let t;try{t=new y_.URLBuilder(location.href)}catch{return{}}let e={};this.UTM_PARAMS.forEach(n=>{let i=t.getQueryParam(n);i&&(e[n]=i)});let r={};return Object.keys(this.TW_PARAMS).forEach(n=>{let i=t.getQueryParam(this.TW_PARAMS[n]);i&&(r[n]=i)}),x(x({},r),e)}},Ss=class kp{origin;path;qs;name;referrer;utmSource;utmMedium;utmCampaign;utmId;utmTerm;utmContent;constructor(e){this.name=e.name,this.path=e.path,this.qs=e.qs,this.referrer=e.referrer,this.utmSource=e.utmSource||e.utm_source,this.utmMedium=e.utmMedium||e.utm_medium,this.utmCampaign=e.utmCampaign||e.utm_campaign,this.utmId=e.utmId||e.utm_id,this.utmTerm=e.utmTerm||e.utm_term,this.utmContent=e.utmContent||e.utm_content}static parseFromCurrent(){let e=location.pathname==="/"?location.pathname:location.pathname.replace(/\/+$/,"");return new kp(x({origin:location.origin,path:e,qs:location.search,referrer:Su.getReferrer(),name:kt.get().pageName},Su.getUTMParams()))}},b_=" daum[ /]| deusu/| yadirectfetcher|(?:^|[^g])news(?!sapphire)|(?<! (?:channel/|google/))google(?!(app|/google| pixel))|(?<! cu)bots?(?:\\b|_)|(?<!(?:lib))http|(?<![hg]m)score|(?<!cam)scan|@[a-z][\\w-]+\\.|\\(\\)|\\.com\\b|\\btime/|\\||^<|^[\\w \\.\\-\\(?:\\):%]+(?:/v?\\d+(?:\\.\\d+)?(?:\\.\\d{1,10})*?)?(?:,|$)|^[^ ]{50,}$|^\\d+\\b|^\\w*search\\b|^\\w+/[\\w\\(\\)]*$|^active|^ad muncher|^amaya|^avsdevicesdk/|^biglotron|^bot|^bw/|^clamav[ /]|^client/|^cobweb/|^custom|^ddg[_-]android|^discourse|^dispatch/\\d|^downcast/|^duckduckgo|^email|^facebook|^getright/|^gozilla/|^hobbit|^hotzonu|^hwcdn/|^igetter/|^jeode/|^jetty/|^jigsaw|^microsoft bits|^movabletype|^mozilla/\\d\\.\\d\\s[\\w\\.-]+$|^mozilla/\\d\\.\\d\\s\\(compatible;?(?:\\s\\w+\\/\\d+\\.\\d+)?\\)$|^navermailapp|^netsurf|^offline|^openai/|^owler|^php|^postman|^python|^rank|^read|^reed|^rest|^rss|^snapchat|^space bison|^svn|^swcd |^taringa|^thumbor/|^track|^w3c|^webbandit/|^webcopier|^wget|^whatsapp|^wordpress|^xenu link sleuth|^yahoo|^yandex|^zdm/\\d|^zoom marketplace/|^{{.*}}$|analyzer|archive|ask jeeves/teoma|audit|bit\\.ly/|bluecoat drtr|browsex|burpcollaborator|capture|catch|check\\b|checker|chrome-lighthouse|chromeframe|classifier|cloudflare|convertify|crawl|cypress/|dareboost|datanyze|dejaclick|detect|dmbrowser|download|evc-batch/|exaleadcloudview|feed|firephp|functionize|gomezagent|grab|headless|httrack|hubspot marketing grader|hydra|ibisbrowser|infrawatch|insight|inspect|iplabel|ips-agent|java(?!;)|library|linkcheck|mail\\.ru/|manager|measure|neustar wpm|node|nutch|offbyone|onetrust|optimize|pageburst|pagespeed|parser|perl|phantomjs|pingdom|powermarks|preview|proxy|ptst[ /]\\d|retriever|rexx;|rigor|rss\\b|scrape|server|sogou|sparkler/|speedcurve|spider|splash|statuscake|supercleaner|synapse|synthetic|tools|torrent|transcoder|url|validator|virtuoso|wappalyzer|webglance|webkit2png|whatcms/|xtate/",w_=/bot|crawl|http|lighthouse|scan|search|spider/i,In;function __(){if(In instanceof RegExp)return In;try{In=new RegExp(b_,"i")}catch{In=w_}return In}function E_(t){return!!t&&__().test(t)}function St(t){return typeof t=="function"}function Pp(t){let e=t(r=>{Error.call(r),r.stack=new Error().stack});return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}var ho=Pp(t=>function(e){t(this),this.message=e?`${e.length} errors occurred during unsubscription:
|
|
36
36
|
${e.map((r,n)=>`${n+1}) ${r.toString()}`).join(`
|
|
@@ -66,4 +66,4 @@ mutation cartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!]) {
|
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
|
-
`,gc=class{sentryService=ut.get(zt);async addToCart(t,e){if(!t.length)return;let r=t.map(c=>{let{vID:l,quantity:p}=this.getVIDAndQuantity(c);return{id:l?+l:+c.mID,quantity:p,properties:e.getPrivateAttributesForLineItem()}}),n=Ln("cart/add.js"),i={items:r},s=Ee.get();s.isMiniCart()?i.sections=["mini-cart"]:s.isShopifyDefaultDrawer()&&(i.sections=s.element.getSectionsToRender?.().map(c=>c.section??c.id));let o=JSON.stringify(i);try{let c=await fetch(n,{body:o,method:"post",headers:{"Content-Type":"application/json"}});if(c&&!c.ok&&(await this.sentryService.captureFetchFailure(c,"cart-item-add"),c.status>400&&c.status<500)){let l=await c.json();Me(l.description||"Failed to add product in cart. Please try again")}if(c.status===200||c.status===302)return T.log(`Added ${t.length} items to Cart`),Me("Product added to your cart"),c.json()}catch(c){Me("Failed to add product in cart. Please try again"),this.sentryService.captureError(c,"cart-item-add",{extra:{body:o},engagementTrigger:e})}}async updateLineItem(t,e){if(!Gn.hasKeys(e)){T.warn("No update fields provided");return}let r=Ln("cart/change.js"),n=x({id:t.key},e),i=JSON.stringify(n);try{let s=await fetch(r,{body:i,method:"post",headers:{"Content-Type":"application/json"}});if(s&&!s.ok&&await this.sentryService.captureFetchFailure(s,"cart-item-update"),s.status===200||s.status===302){let o=await s.json();T.log(`Updated ${t}`),xt.getCurrent().update(o)}}catch(s){Me("Failed to update item in cart"),this.sentryService.captureError(s,"cart-item-update",{extra:{body:i}})}}async copyDiscountCode(t){if(t)try{await navigator.clipboard.writeText(t),T.log(`Code-${t} copied`),Me("Discount code copied")}catch(e){T.error("Failed to copy code",e)}}goToItem(t){if(!t?.link)return;let e=Wb(t.link);e&&(location.pathname=Wi()+"products/"+e)}async upgradeToSubscription(t,e){if(!t){T.warn("Trying to upgrade to subscription with no item");return}let r=await xt.getCurrent().getNormalisedCart(),n=t.selectedOrFirstVariant.value,i=r.items.findIndex(p=>p.vID===n.mID),s=n.selectedSellingPlan.value,o=Ln("cart/change.js"),c={line:i+1,selling_plan:s?.mID||null,properties:e.getPrivateAttributesForLineItem()},l=JSON.stringify(c);try{let p=await fetch(o,{body:l,method:"post",headers:{"Content-Type":"application/json"}});if(p&&!p.ok&&await this.sentryService.captureFetchFailure(p,"cart-switch-subscription"),p.status===200||p.status===302){T.log(`Upgraded ${t} selling plan`),Me("Line item updated");let g=await p.json();return xt.getCurrent().update(g),g}}catch(p){Me("Failed to update subscription"),this.sentryService.captureError(p,"cart-switch-subscription",{extra:{body:l},engagementTrigger:e})}}async createNewCart(t,e,r){let n=se.get().storefrontToken;if(!n)throw new Error("Storefront token not set for the store");if(!t?.vID){T.error("No variant ID found to perform Buy now",t);return}let i=e?[e]:[],s=[{merchandiseId:`gid://shopify/ProductVariant/${t.vID}`,quantity:1,attributes:r.getKVFormatPrivateAttributesForLineItem()}],o=await kh(),c=new Headers;c.append("Content-Type","application/json"),c.append("X-Shopify-Storefront-Access-Token",n);let l=JSON.stringify({query:V0,variables:{input:{lines:s,discountCodes:i,attributes:o}}});return(await Pr.getInstance().request(H.GRAPHQL_API_PATH,{method:"POST",headers:c,body:l})).data?.cartCreate?.cart?.checkoutUrl}async process(t){let e=t.clickAction,r=t.items,n=t.triggerData;if(e.at){let i=e;if(T.log(`Performing ${JSON.stringify(i)} action`),i.at===101)r?.length&&this.goToItem(r[0]);else if(i.at===102)r?.length&&await this.addToCart(r,n);else if(i.at===103)await this.copyDiscountCode(n.discount?.code);else if(i.at===105)Ee.get().open();else if(i.at===104){let s=t.collections;if(!s?.length)return;location.pathname=Wi()+"collections/"+s[0].handle}}e.applyDiscount&&n.discount?.code&&Mn.navigate(n.discount.code,n.redirectBehaviour)}getVIDAndQuantity(t){let e,r;if(t instanceof Ar)e=t.vID,r=t.quantity??1;else{if(!t.vars?.length)return{};e=t.selectedOrFirstVariant.value.mID,r=1}return{vID:e,quantity:r}}},q0=class extends Er{ctaExecutor=new gc;constructor(t){super(t)}update(t){super.update(t),this.engagementTrigger.progressBarConfig.update(t.progressBarConfig),this.checkMilestoneSilently(),this.widgetElement.update()}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget("cooee-progressbar"),this.checkMilestoneSilently()}checkMilestoneSilently(){this.checkMilestone().catch(t=>{zt.getInstance().captureError(t,"apply-milestones",{engagementTrigger:this.engagementTrigger})})}async checkMilestone(){let t=await xt.getCurrent().getNormalisedCart(),e=this.engagementTrigger.progressBarConfig,r,n=[],i=[],s=[],o,c,l=[...e.milestones];for(let g of l){if(g.rewardType!==ju.FREE_AUTO_GIFT)continue;let h=g.items[0],w=g.reached,y=t.items.find(b=>(b.vID===h.vID||b.mID===h.mID)&&b.properties[H.CAMPAIGN_ATTRIBUTE]===this.engagementTrigger.shortID);w&&(o=g,c=y),y&&n.push(y),!w&&y&&e.removeIneligibleItem?(T.debug(`Removing free gift ${y.vID} from cart`),s.push(y)):w&&!y&&(T.debug(`Adding free gift ${h.vID} to cart`),i.push(h))}e.restrictToLatestFreebie&&o&&(c?(n=n.filter(g=>g.vID!==c.vID),i=[]):i=[o.items[0]],s.push(...n)),s.length&&await this.removeFreeGifts(s),i.length&&(r=await this.ctaExecutor.addToCart(i,this.engagementTrigger));let p=e.coupons;if(p?.length)try{await Mn.applyWithStorefront(p.map(g=>g.couponCode)),Ee.get().refreshUI(r,!1)}catch(g){this.sentryService.captureError(g,"cart-apply-discount",{extra:{coupons:p},engagementTrigger:this.engagementTrigger})}}async removeFreeGifts(t){await Promise.all(t.map(e=>this.ctaExecutor.updateLineItem(e,{quantity:0})))}},Nu=class extends Er{constructor(t){super(t)}update(t){super.update(t),this.engagementTrigger.content.update(t.content),this.widgetElement.update()}addToRendered(){this.engagementTrigger.isPageEmbed()?We.renderedEngagements.push(this):Er.renderedEngagements.push(this)}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget("cooee-savings-bar")}},W0=class extends We{constructor(t){super(t)}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget("cooee-shoppable-videos")}},G0=class extends We{constructor(t){super(t)}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget("cooee-sticky-atc")}},z0=class extends We{constructor(t){super(t)}shouldStopRendering(){return!1}renderContainer(){let t=this.getParentElement(`inner-letscooee-${this.engagementTrigger.shortID}`);this.rootContainer.appendChild(t),document.addEventListener(H.ADD_BUNDLE_CTA_INBOUND_EVENT,this.inboundCTAListener.bind(this),!1)}async inboundCTAListener(t){let e=this.engagementTrigger,r=`Engagement(id: ${e.engagementID}, shortID: ${e.shortID})`,n=t.detail;if(!Gn.hasKeys(n)){T.error(`No detail received for ${r}`);return}T.log("Detail received for BYOB",n);let i=n.campaignID??n.campaignId??n.campaign_id;if(i!==e.shortID&&i!==e.engagementID){T.warn(`Current ${r} is not BYOB. Received: ${i}`);return}let s=n.items;if(!s?.length)return;let o=s.map(c=>new Ar({mID:c.product_id,vID:c.variant_id,quantity:c.quantity||1}));await new Cs(this.triggerContext).execute({embeddedItems:o,clickAction:{at:108,applyDiscount:!0}})}},mo=class{runtimeData=kt.get();processCartWidgetResponse(t){this.runtimeData.isCartDirty=!1,this.runtimeData.cartEngagements=t;let e=[...Er.renderedEngagements];Er.renderedEngagements.length=0;for(let r of t)T.log(`\u{1F4E3} ${r} received as cart embed`),!this.findAndUpdateCurrent(r,e)&&(T.log(`${r} is new`),r.isProgressBar()?new q0(r).renderSilently():r.isSubscriptionUpsell()?F0.renderCartUpsell(r):r.isSavingsBar()?new Nu(r).renderSilently():new Er(r).renderSilently());this.removeOldWidgets(e)}processPageWidgetResponse(t){let e=[...We.renderedEngagements];We.renderedEngagements.length=0;for(let r of t)T.log(`\u{1F4E3} ${r} received as page embed`),!this.findAndUpdateCurrent(r,e)&&(T.log(`${r} is new`),r.isShoppableVideo()?new W0(r).renderSilently():r.isBYOB()?new z0(r).renderSilently():r.isStickyATC()?new G0(r).renderSilently():r.isSavingsBar()?new Nu(r).renderSilently():new We(r).renderSilently());this.removeOldWidgets(e)}findAndUpdateCurrent(t,e){let r=e.findIndex(n=>n.isSameTrigger(t));return r<0||t.isSubscriptionUpsell()?!1:(e[r].update(t),e[r].renderSilently(),e.splice(r,1),!0)}removeOldWidgets(t){for(let e of t)e.destroy()}},td=class{runtimeData=kt.get();httpService=ut.get(Pr);sessionManager=ut.get(we);constructor(){}async getWidgetProps(){let t={};t.engagementIDs=this.addAvailableEngagementShortIDs(),t.locale=this.runtimeData.locale,await this.addSessionContext(t),t.currentItem=this.runtimeData.getCurrentItem();try{t.cart=await xt.getCurrent().getNormalisedCart()}catch(i){T.error("Error fetching Shopify cart before sending widget call",i)}let e=new URLSearchParams(location.search),r=e.get("cooee-preview");r?t.previewIDs=r.trim().split(",").filter(i=>Number.isInteger(+i)):this.runtimeData.previewIDs?.length&&(t.previewIDs=this.runtimeData.previewIDs);let n=e.get("cooee-variant");return n?t.previewVariant=n:this.runtimeData.previewVariant&&(t.previewVariant=this.runtimeData.previewVariant),t}async addSessionContext(t){let e=await this.sessionManager.checkSessionAndGetContext();t.sessionID=e[0],t.sessionNumber=e[1],t.landingPage=e[2],t.page=Ss.parseFromCurrent()}addAvailableEngagementShortIDs(){let t=document.querySelectorAll(".letscooee-engagement"),e=[];return t.forEach(r=>{let n=r.dataset.engagementId;n&&+n&&e.push(n)}),e}},Wn=class ed extends td{static INSTANCE;loadWidgetsSubject=new or;constructor(){super(),this.loadWidgetsSubject.pipe(ni(300)).subscribe(()=>{this.loadCartWidgets().catch(e=>T.error("Unable to initiate cart widgets",e)),this.loadPageWidgets().catch(e=>T.error("Unable to initiate page widgets",e))}),hc.get().subscriber(H.CART_UPDATE_BROADCAST).subscribe(()=>this.loadWidgetsSubject.next())}static getInstance(){return this.INSTANCE||(this.INSTANCE=new ed),this.INSTANCE}loadOrRenderWidgetsAfterCartChange(){this.runtimeData.isCartDirty?this.loadWidgetsSilently():this.renderCachedCartWidgets()}loadPageWidgetsSilently(){we.replaySubject.subscribe(async()=>{this.loadPageWidgets().catch(e=>T.error("Unable to initiate load page widgets",e))})}loadCartWidgetsSilently(){we.replaySubject.subscribe(async()=>{this.loadCartWidgets().catch(e=>T.error("Unable to initiate cart widgets",e))})}loadWidgetsSilently(){we.replaySubject.subscribe(async()=>{this.loadWidgetsSubject.next()})}async loadPageWidgets(){let e=await this.getWidgetProps();T.log("Load widgets",e),this.httpService.post("/v1/engagement/page-widgets",e).then(async r=>{let n=r.widgets.map(i=>new sr(i));new mo().processPageWidgetResponse(n)}).catch(r=>{T.error("Error sending widget getter",r)})}async loadCartWidgets(){let e=await this.getWidgetProps();T.log("Load cart widgets",e),this.httpService.post("/v1/engagement/cart-widgets",e).then(async r=>{let n=r.widgets.map(i=>new sr(i));new mo().processCartWidgetResponse(n)}).catch(r=>{T.error("Error sending widget getter",r)})}async getVariation(e){let r=await this.getWidgetProps();return this.httpService.post("/v1/engagement/get-variant",x(x({},e),r))}renderCachedCartWidgets(){new mo().processCartWidgetResponse(this.runtimeData.cartEngagements)}},K0=class rd{static INSTANCE;constructor(){this.init()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new rd),this.INSTANCE}init(){Ou.get(ct.APP_CONFIG,{}).then(e=>this.updateGlobalConfig(e))}async processAppConfigurations(e){T.log("Received app configuration",e),e.currencyCount=e.currencies?.length;let r=this.updateGlobalConfig(e);Ou.set(ct.APP_CONFIG,r).catch(n=>T.error(n)),D0.processConfiguration(),r.website&&(be.injectRawScript(r.website.commonJS),be.injectRawCSS(r.website.commonCSS)),Ee.get().onToggle().subscribe(async({open:n})=>{T.info("Cart drawer is now",n?"open":"closed"),n&&(ut.get(Wn).loadOrRenderWidgetsAfterCartChange(),await this.trackViewCartEvent())})}updateGlobalConfig(e){let r=Tt.globalRef.config.update(e);return Ee.forceUpdate(),T.debug("App configurations",r),r}async trackViewCartEvent(){let e=await xt.getCurrent().getNormalisedCart(),r={value:e.amount,currency:e.currency},n={items:e.items,amount:r,drawer:!0};Vt.getInstance().sendEvent(new jt(H.EVENT_VIEW_CART,n))}},sa=class nd{static INSTANCE;httpAPIService=Pr.getInstance();coreService=K0.getInstance();sentryService=zt.getInstance();sdkToken="";userID="";deviceID="";appID="";shopifyShop="";constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new nd),this.INSTANCE}init(e){this.appID=e.appID,this.shopifyShop=e.shopifyShop}async storeAndPopulateAuthData(e){e&&(e.userID&&(this.userID=e.userID,await Mt.set(ct.ID,e.userID)),e.deviceID&&(this.deviceID=e.deviceID,await Mt.set(ct.DEVICE_ID,e.deviceID)),e.sdkToken&&(this.sdkToken=e.sdkToken,await Mt.set(ct.SDK_TOKEN,e.sdkToken)),this.updateAPIClient())}async validateSession(e){await this.populateFirstSeen(),await this.populateUserDataFromStorage(),T.log("Validating session with server");let r=await this.getSessionValidateData(e);try{let n=await this.httpAPIService.validateSession(r);T.log("Validating session Response",n),await this.coreService.processAppConfigurations(n.appSettings),await this.storeAndPopulateAuthData(n)}catch(n){throw T.error(n),n}}async populateUserDataFromStorage(){if(this.sdkToken=await Mt.get(ct.SDK_TOKEN),!this.sdkToken){T.warn("No SDK token found in local storage");return}this.userID=await Mt.get(ct.ID),this.deviceID=await Mt.get(ct.DEVICE_ID),this.updateAPIClient()}updateAPIClient(){T.debug("SDK Token:",this.sdkToken),T.log("Device ID:",this.deviceID),T.log("User ID:",this.userID),Fp.trackDeviceID(this.deviceID),Ne.log(`Device ID: ${this.deviceID}`),this.userID&&Ne.log(`User ID: ${this.userID}`),this.httpAPIService.setAPIToken(this.sdkToken),this.httpAPIService.setDeviceId(this.deviceID),this.sentryService.setGlobalContext("Visitor Info",{device_id:this.deviceID,user_id:this.userID}),this.sentryService.setUser({id:this.deviceID})}async getSessionValidateData(e){let r=await new I0().safeGet(),n=await Mt.get(ct.DEVICE_ID);return n||(n=new Kt().toHexString(),await Mt.set(ct.DEVICE_ID,n)),lt(x({deviceID:n,deviceProps:r,appID:this.appID,shopifyShop:this.shopifyShop},e),{sdk:H.SDK,page:Ss.parseFromCurrent(),ad:w0.getAdParams(),occurred:this.getSessionStartTime(kt.get().jsLoadTime),currentItem:kt.get().getCurrentItem(),cart:await xt.getCurrent().getNormalisedCart(),properties:{}})}async populateFirstSeen(){let e=await Mt.get(ct.FIRST_SEEN),r=e?new Date(e):new Date;e||await Mt.set(ct.FIRST_SEEN,r.toISOString()),this.httpAPIService.setFirstSeen(r),this.sentryService.setGlobalContext("Visitor Info",{first_seen:r.toISOString()})}getSessionStartTime(e){return(new Date().getTime()-e.getTime())/1e3>H.IDLE_TIME_IN_SECONDS?new Date:e}},we=class Pn{static replaySubject=new j_(1);static INSTANCE;sentryService=ut.get(zt);constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Pn),this.INSTANCE}init(e){if(T.debug("Initialising SDK",e),E_(navigator.userAgent)){T.info("This seems to be a bot. Disabling SDK");return}sa.getInstance().init(e),Pn.INSTANCE.checkSessionOnPageLoad().then(async()=>{Pn.replaySubject.next(!0),Pn.replaySubject.complete()}).catch(r=>{T.error("Unable to initiate session",r)})}getCurrentSessionID(){return ee.set(ct.SESSION_LAST_USED_TIME,new Date().getTime()),ee.get(ct.ID,"")}async checkSessionOnPageLoad(){await zb.request("validate_session",async()=>{await this.checkForNewSession(!0)})}async checkSessionAndGetContext(){return await this.checkForNewSession(),this.getContext()}async getContext(){let e=await Promise.all([this.getCurrentSessionID(),this.getCurrentSessionNumber(),this.getLandingPage()]);return this.sentryService.setTags({"cooee_session.number":e[1]}),this.sentryService.setGlobalContext("Visitor Session",{id:e[0],number:e[1],landing_page:e[2]}),e}async checkForNewSession(e){let r=!1;if(await this.isNewSessionRequired()?(Ne.log("New session to be started"),await this.startNewSession(),e=!0,r=!0):await this.notSynced()&&(r=!0),e){let n=await this.getContext();Ne.log(`Session ID: ${n[0]} & number: ${n[1]}`),await sa.getInstance().validateSession({sessionID:n[0],sessionNumber:n[1],landingPage:n[2],newSession:r}),await ee.set(ct.SESSION_SYNCED,!0)}}async startNewSession(){T.debug("Starting new session"),await ee.clear(),T.debug("Cleared SessionStorage before starting new session");let e=new Date,r=new Kt().toHexString();T.debug("New session ID to be used",r);let n=await Mt.get(ct.SESSION_NUMBER,0)+1;await Promise.all([Mt.set(ct.SESSION_NUMBER,n),ee.set(ct.ID,r),ee.set(ct.SESSION_LAST_USED_TIME,e.getTime()),ee.set(ct.SESSION_LANDING_PAGE,Ss.parseFromCurrent())])}getLandingPage(){return ee.get(ct.SESSION_LANDING_PAGE,{})}getCurrentSessionNumber(){return Mt.get(ct.SESSION_NUMBER,1)}async isNewSessionRequired(){if(!await ee.get(ct.ID))return!0;let e=await ee.get(ct.SESSION_LAST_USED_TIME,0);return e?(new Date().getTime()-e)/1e3>H.IDLE_TIME_IN_SECONDS:!0}async notSynced(){return!await ee.get(ct.SESSION_SYNCED,!1)}},Y0=class{loadedFonts=[];async loadAllFonts(t){t.elems?.forEach(e=>{e instanceof ds&&this.loadFamily(e.typography?.fam)})}async loadFamily(t){if(!t?.fonts||this.loadedFonts.indexOf(t.name)>-1)return;let e=[];t.fonts.forEach(r=>{if(r.url){let n=new FontFace(H.COOEE+t.name,r.getURL(),r.getFontDescriptor());e.push(n.load())}}),this.loadedFonts.push(t.name),(await Promise.all(e)).forEach(r=>{document.fonts.add(r)})}},J0=class{static updateIdentity(t){if(!this.isInstalled())return;let e={};t.email&&(e.email=t.email),t.mobile&&(e.phone_number=t.mobile),T.debug("Sending email/mobile to Klaviyo"),window.klaviyo.push(["identify",e])}static isInstalled(){return window.klaviyo&&typeof window.klaviyo=="object"}},X0=class{apiService;action;triggerContext;constructor(t,e){this.action=t,this.apiService=Vt.getInstance(),this.triggerContext=e}async execute(){let t=this.containsCTA()?H.EVENT_TRIGGER_CLICKED:H.EVENT_TRIGGER_CLOSED;switch(this.action.at!==106&&await this.closeTriggerAndSendEvent(t),this.action.at){case 2:break;case 4:this.gotoURLAction();break;case 5:this.shareAction();break;case 106:await this.collectFormData();break;case void 0:case 105:break;default:T.error("Received an invalid ClickActionType: ",this.action.at);return}}externalAction(){this.action.ext?.u&&window.open(this.action.ext.u,"_blank")?.focus()}gotoURLAction(){if(this.action.gu?.u){let t=this.action.gu.u;Ah(t)||(t=`//${t}`),window.open(t,"_self")}}async closeTriggerAndSendEvent(t,e){this.triggerContext.closeInApp(t,e),await this.dispatchEvent()}shareAction(){if(this.action.share){if(!navigator.share){T.warn("Navigator.share is not compatible with this browser");return}navigator.share({text:this.action.share.text,title:"Share"}).then(t=>console.log(t)).catch(t=>console.error(t))}}containsCTA(){return this.action.at&&this.action.at!==1?!0:!(this.isEmpty(this.action.custKV)&&this.isEmpty(this.action.up))}isEmpty(t){return t?Object.keys(t).length===0:!0}async collectFormData(){let t={};for(let e of this.triggerContext.inputs){if(!e.isValid)return;let r=document.getElementById(e.id).value;e.type===51?t.email=r:e.type===52&&(t.mobile=r)}await this.closeTriggerAndSendEvent(H.EVENT_FORM_SUBMITTED,{form:t}),Me("Coupon applied on cart"),J0.updateIdentity(t)}async dispatchEvent(){let t=this.triggerContext.triggerData,e={clickAction:this.action,items:this.triggerContext.selectedEmbeddedItems??t.embeddedItems??t.items,collections:t.collections,triggerData:t};await new gc().process(e);let r={action:this.containsCTA()?H.CAMPAIGN_CLICKED_ACTIVITY:H.CAMPAIGN_CLOSED_ACTIVITY};document.dispatchEvent(new CustomEvent(H.POPUP_ACTIVITY_EVENT,{detail:r}))}},si=class{renderer=mc.get();parentHTMLEl;inappElement;inappHTMLEl;triggerContext;stylesConverter;scalingFactor;constructor(t,e,r){this.parentHTMLEl=t,this.inappElement=e,this.triggerContext=r,this.stylesConverter=new Gp(this.renderer.getScalingFactor())}getHTMLElement(){return this.inappHTMLEl}insertElement(){this.parentHTMLEl.appendChild(this.inappHTMLEl)}processCommonBlocks(){this.processWidthAndHeight(),this.processPositionBlock(),this.processTransformBlock(),this.processTransparency(),this.processShadow(),this.registerAction();let t=lt(x(x(x(x({},this.getDisplayStyles()),this.getSpaceStyles()),this.getBorderStyles()),this.getBackgroundStyles()),{boxSizing:"border-box",outline:"none"});es(this.inappHTMLEl,t)}getDisplayStyles(){return{display:"block"}}processWidthAndHeight(){this.inappElement.w&&X(this.inappHTMLEl,"width",this.stylesConverter.getSizePx(this.inappElement.w)),this.inappElement.h&&X(this.inappHTMLEl,"height",this.stylesConverter.getSizePx(this.inappElement.h))}processPositionBlock(){let t={position:"absolute",left:this.stylesConverter.getSizePx(this.inappElement.x),top:this.stylesConverter.getSizePx(this.inappElement.y)};es(this.inappHTMLEl,t)}getBorderStyles(){return this.stylesConverter.getBorderStyles(this.inappElement.br)}getSpaceStyles(){return this.stylesConverter.getSpaceStyles(this.inappElement.spc)}processTransparency(){let t=this.inappElement.alpha;if(!isNaN(t)){let e=(t/100).toFixed(2);X(this.inappHTMLEl,"opacity",e)}}processShadow(){let t=this.inappElement.shd;t?X(this.inappHTMLEl,"box-shadow",t.getStyle(this.scalingFactor)):X(this.inappHTMLEl,"box-shadow","unset")}processTransformBlock(){let t=new Vu(this.inappElement.trf);t&&t.rotate&&X(this.inappHTMLEl,"transform",`rotate(${t.rotate}deg)`)}registerAction(){let t=this.inappElement.clc;!t||Object.keys(t).length===0||(this.inappHTMLEl.addEventListener("click",e=>{e.stopPropagation(),new X0(t,this.triggerContext).execute()}),X(this.inappHTMLEl,"cursor","pointer"))}getBackgroundStyles(){return this.stylesConverter.getBackgroundStyles(this.inappElement.bg)}},Is=class extends si{constructor(t,e,r){super(t,e,r)}processCommonBlocks(){super.processCommonBlocks(),this.processFontBlock(),this.processAlignment()}processFontBlock(){let t={},e=this.inappElement.typography;return e&&(t.fontSize=this.stylesConverter.getSizePx(e.fs),t.fontFamily=H.COOEE+e.fam?.name,t.lineHeight=`${e.lh}`,t.letterSpacing=e.letterSpacing),this.stylesConverter.getColourStyles(this.inappElement.color,"color",t),es(this.inappHTMLEl,t),t}processPart(t,e){let r=[];e.u&&r.push("underline"),e.st&&r.push("line-through"),r.length||r.push("normal"),X(t,"font-weight",e.b?"bold":"normal"),X(t,"font-style",e.i?"italic":"normal"),X(t,"text-decoration",r.join(" ")),X(t,"color",e.c??"inherit"),X(t,"font-family","inherit")}processAlignment(){let t=this.inappElement.typography.ta,e=t?fa[t]?.toLowerCase():this.inappElement.typography.alignment;e||(e="start"),X(this.inappHTMLEl,"text-align",e)}},Q0=class extends Is{constructor(t,e,r){super(t,e,r),this.inappHTMLEl=document.createElement("div"),this.insertElement()}render(){this.inappElement.parts?.forEach(t=>{let e=document.createElement("span");e.innerHTML=t.txt?.toString()?.replace(/\n/g,"<br />"),this.processPart(e,t),this.inappHTMLEl.appendChild(e)}),this.processCommonBlocks()}},Z0=class extends si{constructor(t,e,r){super(t,e,r),this.inappHTMLEl=document.createElement("div"),this.insertElement()}render(){this.processCommonBlocks()}},id=class extends si{constructor(t,e,r){super(t,e,r),this.inappHTMLEl=document.createElement("img"),this.insertElement()}render(){this.inappHTMLEl.setAttribute("src",this.inappElement.src),X(this.inappHTMLEl,"max-width","none"),X(this.inappHTMLEl,"max-height","none"),X(this.inappHTMLEl,"margin","0 auto"),this.processCommonBlocks()}},tE=class sd extends si{constructor(e,r,n){super(e,r,n),this.parent=e,this.inappHTMLEl=document.createElement("div")}static MAX_Z_INDEX="2147483647";render(){return this.parent||this.renderer.removeInApp(),this.insertElement(),this.processCommonBlocks(),this.inappHTMLEl.classList.add(H.IN_APP_WRAPPER_NAME),this.inappHTMLEl.classList.add(this.triggerContext.rootClassName),X(this.inappHTMLEl,"z-index",sd.MAX_Z_INDEX),this.inappHTMLEl}getBackgroundStyles(){return this.inappElement.cover?super.getBackgroundStyles():{}}processWidthAndHeight(){let e=this.inappElement.cont;if(this.inappElement.cover)this.renderer.isParentNotBody()?(X(this.inappHTMLEl,"width","100%"),X(this.inappHTMLEl,"height","100%")):(X(this.inappHTMLEl,"width","100vw"),X(this.inappHTMLEl,"height","100vh")),X(this.inappHTMLEl,"top","0"),X(this.inappHTMLEl,"left","0");else{let r=this.inappElement.spc,n=this.stylesConverter.getScaledSize(e.w)+r.getHorizontal(),i=this.stylesConverter.getScaledSize(e.h)+r.getVertical();X(this.inappHTMLEl,"width",n+"px"),X(this.inappHTMLEl,"height",i+"px")}}getSpaceStyles(){return{padding:this.inappElement.spc.getPaddingCSS()}}getDisplayStyles(){return x(x({display:"flex"},this.inappElement.getStylesForWrapper()),this.inappElement.getFlexStylesForContainer())}processPositionBlock(){if(this.renderer.isParentNotBody()){if(this.triggerContext.triggerData.ian?.isEmbedded()){X(this.inappHTMLEl,"position","block");return}X(this.inappHTMLEl,"position","absolute")}else X(this.inappHTMLEl,"position","fixed")}getBorderStyles(){return{}}processTransparency(){}processTransformBlock(){}processShadow(){}},eE=class extends si{constructor(t,e,r){super(t,e,r),this.inappHTMLEl=document.createElement("div"),this.insertElement()}render(){return this.processCommonBlocks(),X(this.inappHTMLEl,"position","relative"),X(this.inappHTMLEl,"overflow","hidden"),this.inappHTMLEl.classList.add(H.IN_APP_CONTAINER_NAME),this}},rE=class Pe extends Is{static DAYS="Days";static HOURS="Hours";static MINUTES="Minutes";static SECONDS="Seconds";elements;spans=[];constructor(e,r,n){super(e,r,n),this.inappHTMLEl=document.createElement("div"),this.insertElement()}render(){this.addTimerChildren(),this.processAndStartTimer(),this.processCommonBlocks();let e=lt(x(x(x({flex:"1 1 0"},this.stylesConverter.getBackgroundStyles(this.inappElement.bg)),this.stylesConverter.getBorderStyles(this.inappElement.br)),this.stylesConverter.getSpaceStyles(this.inappElement.spc)),{marginLeft:this.stylesConverter.getSizePx(this.inappElement.gap),marginRight:this.stylesConverter.getSizePx(this.inappElement.gap)});this.addStylesToTimer(e)}getBackgroundStyles(){return{}}processFontBlock(){let e=super.processFontBlock();return this.stylesConverter.getColourStyles(this.inappElement.color,"color",e),this.addStylesToTimer(e),e}getSpaceStyles(){return{}}getBorderStyles(){return{}}getDisplayStyles(){return{display:"flex",flexWrap:"nowrap",justifyContent:"center"}}addStylesToTimer(e){this.elements.forEach(r=>es(r,e))}addTimerChildren(){let e=this.inappElement.show;this.elements=[],e.day&&this.elements.push(this.getChild(Pe.DAYS)),e.hour&&this.elements.push(this.getChild(Pe.HOURS)),e.minute&&this.elements.push(this.getChild(Pe.MINUTES)),e.second&&this.elements.push(this.getChild(Pe.SECONDS)),this.elements.forEach(r=>this.inappHTMLEl.appendChild(r))}getChild(e){let r=document.createElement("div"),n=document.createElement("span"),i=document.createElement("span");return i.innerText=e,n.innerText="00",n.id=`lc-${e}`,X(i,"font-size","0.5em"),X(i,"text-align","center"),X(i,"font-family","inherit"),X(n,"text-align","center"),X(n,"font-family","inherit"),this.inappElement.lblPos==="start"?(r.appendChild(i),r.appendChild(n)):(r.appendChild(n),r.appendChild(i)),X(r,"display","flex"),X(r,"flex-direction",this.inappElement.horizontal?"":"column"),X(r,"justify-content","center"),X(r,"align-items","center"),X(r,"gap","5px"),this.spans.push(n),r}processAndStartTimer(){let e=this.inappElement.timer.start(this.inappElement.timerType,r=>{this.spans.forEach(n=>{n.id===`lc-${Pe.DAYS}`?n.innerText=String(r.days).padStart(2,"0"):n.id===`lc-${Pe.HOURS}`?n.innerText=String(r.hours).padStart(2,"0"):n.id===`lc-${Pe.MINUTES}`?n.innerText=String(r.minutes).padStart(2,"0"):n.id===`lc-${Pe.SECONDS}`&&(n.innerText=String(r.seconds).padStart(2,"0"))})});this.triggerContext.intervals.push(e)}},nE=class extends Is{constructor(t,e,r){super(t,e,r),this.inappHTMLEl=document.createElement("select"),this.insertElement()}render(){X(this.inappHTMLEl,"background","#ffffff00"),X(this.inappHTMLEl,"outline","none"),this.processCommonBlocks(),this.addListener(this.inappHTMLEl),this.addOptions()}addListener(t){this.triggerContext.selectedEmbeddedItems?.length||this.updateItems(this.triggerContext.triggerData.items[0].vars[0]),t.addEventListener("click",e=>{e.stopPropagation()}),t.addEventListener("change",()=>{let e=new ps(JSON.parse(t.value));this.updateItems(e)})}updateItems(t){let e=this.triggerContext.triggerData.items[0];this.triggerContext.selectedEmbeddedItems=[e.toEmbed(t)];let r=this.parentHTMLEl.querySelector("#coo-13");if(!r)return;let n=t.imgs[0]??e.imgs?.at(0);n?.url&&r.setAttribute("src",n.url)}addOptions(){let t=this.triggerContext.triggerData.items,e=this.inappHTMLEl;if(!t?.length){e.add(this.createOption(this.inappElement.placeholderText));return}let r=this.triggerContext.selectedEmbeddedItems?.at(0);t[0].vars.forEach(n=>{e.add(this.createOption(n.name??"Default",n,n.mID===r?.vID))})}createOption(t,e,r){let n=document.createElement("option");return n.text=t,n.value=JSON.stringify(e),r&&(n.selected=!0),e||(n.disabled=!0),n}},od=class extends Is{borderColor="";constructor(t,e,r){super(t,e,r),this.inappHTMLEl=document.createElement("input"),this.insertElement()}render(){let t=this.setInputType();this.inappHTMLEl.setAttribute("placeholder",this.inappElement.placeholderText),X(this.inappHTMLEl,"background","#ffffff00"),X(this.inappHTMLEl,"outline","none"),this.inappHTMLEl.addEventListener("click",e=>{e.stopPropagation()}),this.processCommonBlocks(),this.addListener(this.inappHTMLEl,t),this.triggerContext.addInputField(t,this.inappElement.t)}},iE=class ad extends od{static EMAIL_REGEX=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;constructor(e,r,n){super(e,r,n)}setInputType(){let e=`coo-${this.inappElement.t}`;return this.inappHTMLEl.setAttribute("type","email"),this.inappHTMLEl.setAttribute("id",e),e}addListener(e,r){e.addEventListener("keydown",n=>{this.borderColor||(this.borderColor=this.inappHTMLEl.style.borderColor),e.value.match(ad.EMAIL_REGEX)?(X(this.inappHTMLEl,"border-color",this.borderColor),this.triggerContext.updateValidation(r,!0)):(X(this.inappHTMLEl,"border-color","red"),this.triggerContext.updateValidation(r,!1)),n.stopPropagation()})}},sE=class cd extends od{static MOBILE_REGEX=/^\d+$/;constructor(e,r,n){super(e,r,n)}setInputType(){let e=`coo-${this.inappElement.t}`;return this.inappHTMLEl.setAttribute("type","tel"),this.inappHTMLEl.setAttribute("id",e),e}addListener(e,r){e.addEventListener("keydown",n=>{this.borderColor||(this.borderColor=this.inappHTMLEl.style.borderColor),e.value.match(cd.MOBILE_REGEX)?(X(this.inappHTMLEl,"border-color",this.borderColor),this.triggerContext.updateValidation(r,!0)):(X(this.inappHTMLEl,"border-color","red"),this.triggerContext.updateValidation(r,!1)),n.stopPropagation()})}},oE=class extends id{constructor(t,e,r){super(t,e,r)}render(){super.render(),this.inappHTMLEl.setAttribute("id",`coo-${this.inappElement.type}`)}},mc=class Re{static DOCUMENT_STANDARD_MODE="CSS1Compat";static ACTIVE_TRIGGER_DATA;static _instance;safeHTTP;parent;rootContainer;containerHTMLElement;ian;scalingFactor=1;triggerContext;resizeListener;cartDrawerToggleSubscription;constructor(e){Re._instance=this,this.safeHTTP=Vt.getInstance(),this.resizeListener=()=>this.screenResized(),this.setParentContainer(e)}static get(){return Re._instance}render(e){this.renderEngagement(new sr(e))}getScalingFactor(){return this.scalingFactor}calculateScalingFactor(e){let r=e.max,n=e.cont.w,i=e.cont.h,s=e.spc,o=this.getWidth(),c=this.getHeight();r&&(o=o?Math.min(o,r):r,c=c?Math.min(c,r):r),c&&(o-=s.getHorizontal(),c-=s.getVertical(),o/c<n/i?this.scalingFactor=o/n:this.scalingFactor=c/i,this.scalingFactor=Math.min(this.scalingFactor,1))}setParentContainer(e){this.parent=e||document.body,this.parent&&this.isParentNotBody()&&X(this.parent,"position","relative")}isParentNotBody(){return this.parent!==document.body}getWidth(){return this.parent&&this.parent!==document.body?this.parent.clientWidth:document.compatMode===Re.DOCUMENT_STANDARD_MODE?document.documentElement.clientWidth:window.innerWidth}getHeight(){return this.isParentNotBody()?this.parent.clientHeight:document.compatMode===Re.DOCUMENT_STANDARD_MODE?document.documentElement.clientHeight:window.innerHeight}async renderEngagement(e){if(this.triggerContext=new ec(new Date,e),this.triggerContext.onClose(r=>{this.closeInApp(r)}),this.ian=e.ian,(_r()||e.previewType==="mobile")&&this.ian.overrideForMobileView(),this.ian.isEmbedded()){let r=document.querySelector(this.ian.getEmbeddedSelector());this.setParentContainer(r)}await this.preloadImages(e),e.shouldDelay()?window.setTimeout(()=>{this.withCartDrawerClosed()},e.getDelaySeconds()):this.withCartDrawerClosed()}withCartDrawerClosed(){if(!Ee.get().isOpen()||!_r()){this.startRenderingOnce();return}this.cartDrawerToggleSubscription=Ee.get().onToggle().subscribe(({open:e})=>{!e&&this.startRenderingOnce()})}startRenderingOnce(){if(!this.shouldSkipCampaign()){Re.ACTIVE_TRIGGER_DATA=this.triggerContext.triggerData;try{this.startRendering()}catch(e){zt.getInstance().captureError(e,"render-popup",{triggerContext:this.triggerContext});return}this.sendTriggerDisplayed(),_r()||window.addEventListener("resize",this.resizeListener),this.cartDrawerToggleSubscription?.unsubscribe()}}shouldSkipCampaign(){let e=this.triggerContext.triggerData;if(!e.previewType&&Re.ACTIVE_TRIGGER_DATA){let n={triggerShown:new Xa(Re.ACTIVE_TRIGGER_DATA??{})};return this.skipTrigger(e,n),!0}if(kt.get().isGoKwikPopupOpen)return this.skipTrigger(e,{reason:"GoKwik popup is open"}),!0;let r=H.PAYMENT_MODAL_DETAILS.find(n=>!!document.querySelector(n.identifier));return r?(this.skipTrigger(e,{reason:`${r.gateway} modal is open`}),!0):!1}startRendering(){this.calculateScalingFactor(this.ian),this.rootContainer=new tE(this.parent,this.ian,this.triggerContext).render();try{this.renderContainer(this.triggerContext)}catch(e){throw T.error(e),e}}sendTriggerDisplayed(){let e={};this.triggerContext.triggerData.items?.length&&(e.promotedMIDs=this.triggerContext.triggerData.items?.map(i=>i.mID));let r=new jt(H.EVENT_TRIGGER_DISPLAYED,e,this.triggerContext.triggerData);this.safeHTTP.sendEvent(r);let n={action:H.CAMPAIGN_DISPLAYED_ACTIVITY};document.dispatchEvent(new CustomEvent(H.POPUP_ACTIVITY_EVENT,{detail:n}))}sendTriggerClosed(e){let r=e.eventName;delete e.eventName;let n=new jt(r,e,this.triggerContext.triggerData);n.name===H.EVENT_TRIGGER_CLICKED&&(n.items=this.triggerContext.selectedEmbeddedItems??this.triggerContext.triggerData.items?.map(i=>i.toEmbed())),this.safeHTTP.sendEvent(n)}addEnterAnimation(e){this.containerHTMLElement.animate(e.getEnterAnimation(),{duration:500})}renderElement(e,r,n){r instanceof op?new iE(e,r,n).render():r instanceof ap?new sE(e,r,n).render():r instanceof Vo?new Q0(e,r,n).render():r instanceof cp?new oE(e,r,n).render():r instanceof Ha?new id(e,r,n).render():r instanceof rp?new Z0(e,r,n).render():r instanceof ip?new rE(e,r,n).render():r instanceof sp?new nE(e,r,n).render():T.error("Unsupported element type- "+r.type)}renderContainer(e){let r=this.ian?.cont;r&&(this.containerHTMLElement=new eE(this.rootContainer,r,e).render().getHTMLElement(),new Y0().loadAllFonts(this.ian),this.ian.elems?.forEach(async n=>{await this.renderElement(this.containerHTMLElement,n,e)}),this.addEnterAnimation(this.ian.anim))}closeInApp(e){let r=this.ian.anim.getExitAnimation();this.sendTriggerClosed(e),Re.ACTIVE_TRIGGER_DATA=void 0;let n=this.containerHTMLElement.animate(r,{duration:500,easing:"ease-in-out"});n.onfinish=()=>{this.removeInApp(),window.removeEventListener("resize",this.resizeListener)}}screenResized(){this.removeInApp(),this.startRendering()}removeInApp(){let e=document.querySelector(`.${this.triggerContext.rootClassName}`);e&&e.parentElement.removeChild(e)}skipTrigger(e,r){let n=new jt(H.EVENT_CAMPAIGN_REJECTED,r,e);this.safeHTTP.sendEvent(n)}async preloadImages(e){let r=e.ian;if(!r)return;let n=[];r.elems.forEach(i=>{let s=i.bg?.img?.src;if(s&&n.push(this.getPromise(s)),i.t===1){let o=i.src;if(!o)return;n.push(this.getPromise(o))}}),r.bg?.img?.src&&n.push(this.getPromise(r.bg.img.src)),r.cont.bg?.img?.src&&n.push(this.getPromise(r.cont.bg.img.src)),await Promise.all(n)}getPromise(e){return new Promise(r=>{let n=new Image;n.onload=r,n.src=e,n.style.display="none"})}},aE=class{triggerData;safeHttpService=Vt.getInstance();render(t){t.contentSource===ua.KLAVIYO&&(this.triggerData=t,window.addEventListener("klaviyoForms",this.handleKlaviyoEvents.bind(this)),window._klOnsite=window._klOnsite||[],window._klOnsite.push(["openForm",t.klaviyoFormID]))}handleKlaviyoEvents(t){if(t.type!=="klaviyoForms")return;let e=t.detail;if(e.formId!==this.triggerData.klaviyoFormID){T.warn("Received invalid trigger callback");return}switch(e.type){case"open":this.safeHttpService.sendEvent(new jt(H.EVENT_TRIGGER_DISPLAYED,{form:{id:e.formId}},this.triggerData));break;case"stepSubmit":{let r=this.getFormDetails(e);this.safeHttpService.sendEvent(new jt(H.EVENT_FORM_SUBMITTED,{form:r},this.triggerData)),this.safeHttpService.updateProfile(r);break}case"close":window.removeEventListener("klaviyoForms",this.handleKlaviyoEvents.bind(this)),this.safeHttpService.sendEvent(new jt(H.EVENT_TRIGGER_CLOSED,{form:{id:e.formId}},this.triggerData));break}}getFormDetails(t){let e={id:t.formId},r=t.metaData;if(Gn.hasKeys(r)){let n=["email","phone_number","first_name","last_name","$email","$phone_number","$first_name","$last_name"];Object.keys(r).forEach(o=>{n.includes(o)||(e[o]=r[o])}),e.email=r.$email??r.email,e.mobile=r.$phone_number??r.phone_number;let i=r.$first_name??r.first_name,s=r.$last_name??r.last_name;(i?.length||s?.length)&&(e.name=i+" "+s)}return e}},cE=class{static trackIntent(t){if(!this.isInstalled()){T.log("Facebook pixel not installed");return}if(!se.get().pixelPush){T.log("Facebook pixel push not enabled");return}let e=fs[t.intent]?.toLowerCase(),r=t.segmentName;!e&&!r||(T.debug(`Sending ${e} intent and ${r} segment to Facebook Pixel`),window.fbq("trackCustom","CooeeIntent",{intent_value:e,segment_value:t.segmentName}))}static isInstalled(){return window.fbq&&typeof window.fbq=="function"}},vc=class ld{static INSTANCE;httpService=ut.get(Pr);sentryService=ut.get(zt);sessionManager=ut.get(we);runtime=kt.get();constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new ld),this.INSTANCE}sendSilently(e){this.send(e).catch(r=>T.error(`Failed to send ${e.name}`,r))}async send(e){if(T.debug(`Sending event ${e.name}`),Ne.log(`Sending event ${e.name} with id ${e.id}`),this.shouldReject(e)){T.warn(`Rejecting event ${e.name}`);return}await Promise.all([this.addSessionContext(e),this.addShopifyContext(e)]),this.addShopifyAttributes(),e.name!==H.EVENT_APP_BACKGROUND&&this.runtime.setActive(),e.currentItem=this.runtime.getCurrentItem(),e.locale=this.runtime.locale,this.httpService.post("/v1/event/track",e).then(async r=>{T.log("\u2705 Event tracked:",e.name),Ne.log(`\u2705 Event <strong>${r.eventName}</strong> tracked`),this.processEventResponse(e,r)}).catch(r=>{T.error(`Error sending event ${e.name} to server`,r)})}shouldReject(e){return e.trigger?.triggerID==="test"||e.trigger?.triggerID==="preview"?(T.warn("Not sending event as this is a test trigger"),!0):!1}async addSessionContext(e){let r=await this.sessionManager.checkSessionAndGetContext();e.sessionID=r[0],e.sessionNumber=r[1],e.landingPage=r[2],e.page=Ss.parseFromCurrent()}async addShopifyContext(e){try{e.cart=await xt.getCurrent().getNormalisedCart()}catch(r){T.error("Error fetching Shopify cart before sending the event",r)}}processEventResponse(e,r){this.renderWidgetIfAny(e,r).catch(n=>{this.sentryService.captureError(n,"process-popup-response",{extra:{event:e,response:r}})}),this.utiliseIntentIfCalculated(r)}async renderWidgetIfAny(e,r){if(!r.triggerData){T.log(`Nothing to engage after ${e.name}`);return}T.log(`\u{1F4E3} Engagement(id=${r.triggerData.shortID}) will be shown`,r.triggerData),Ne.log(`\u{1F4E3} Campaign #${r.triggerData.shortID}) will be shown`);let n=new sr(r.triggerData);n.occurred=e.occurred;let i;try{i=await Wp.refreshItems(n)}catch(s){T.error("Failed to refresh the products",s);return}if(n.items=i,n.contentSource===ua.KLAVIYO){new aE().render(n);return}new mc().renderEngagement(n).catch(s=>{this.sentryService.captureError(s,"render-popup",{extra:{event:e},engagementTrigger:n})})}utiliseIntentIfCalculated(e){e.intent&&(Fp.trackIntent(e.intent),cE.trackIntent(e),Ne.log(`Intent is <strong>${fs[e.intent]}</strong>`))}addShopifyAttributes(){xt.getCurrent().addCooeeAttributes().catch(e=>{T.error("Fail to add attributes in cart",e)})}},Cs=class{constructor(t){this.triggerContext=t}safeHTTP=Vt.getInstance();eventAPIService=vc.getInstance();async execute(t){let e=kt.get().getCurrentItem(),r=t.clickAction;if(!r)return;let n=t.item,i=this.triggerContext,s=new gc,o=i.triggerData.redirectBehaviour,c=!!i.triggerData.discount?.type&&!!r?.applyDiscount,l={selectedVariants:i.triggerData.nonMutableItems.map(_=>({itemMID:_.mID,mID:_.selectedOrFirstVariant.value.mID,variantID:_.selectedOrFirstVariant.value.mID})),eID:i.triggerData.engagementID,cID:i.triggerData.contentID},p="",g=[],h=[];if(n?h=[n.toEmbed()]:t.embeddedItem&&(h=[t.embeddedItem]),r.at===108){let _=i.selectedItems;if(h=t.embeddedItems??_.map(k=>k.toEmbed()),i.shouldGiveFBTDiscount||t.embeddedItems?.length){let k;t.embeddedItems?k=t.embeddedItems.map(M=>({itemMID:M.mID,mID:M.vID,variantID:M.vID,quantity:M.quantity})):k=_.map(M=>({itemMID:M.mID,mID:M.selectedOrFirstVariant.value.mID,variantID:M.selectedOrFirstVariant.value.mID}));let A=i.triggerData.bundleFrom;i.triggerData.isBundleOnCartDrawer()&&A&&(k.push({itemMID:A.mID,mID:A.selectedOrFirstVariant.value.mID,isPrimary:!0}),h.unshift(A.toEmbed())),l.selectedVariants=k,i.triggerData.isBundleOnPDP()&&l.selectedVariants.forEach(M=>{M.mID===e.vID&&(M.isPrimary=!0)})}else l=void 0;g=t.embeddedItems??_}else if(r.at===107){let _=await xt.getCurrent().getNormalisedCart();h=_.items,l.selectedVariants=_.items.map(k=>({itemMID:k.mID,mID:k.vID}))}else if(r.at===102)g=n?[n]:[t.embeddedItem];else if(r.at===101)p=n?Wi()+"products/"+n.slug:t.embeddedItem?.link;else if(r.at===4){let _=Ah(r.gu?.u);_&&(p=_.href)}else if(r.at===109){let _=await s.upgradeToSubscription(n,i.triggerData);this.triggerContext.triggerData.skipSubscribedItems&&this.triggerContext.renderer.destroy(),Ee.get().refreshUI(_)}else if(r.at===104){let _=this.triggerContext.triggerData.collections?.[0];_&&(p="collections/"+_.handle)}if(this.sendTriggerClicked(h,{from:"button"},t.video),T.debug({redirectPath:p,redirectBehaviour:o,hasDiscount:c}),!c&&p){location.href=p;return}let w,y=!1;try{w=await this.getOrGenerateDiscountCode(l),T.debug("Discount code (if any) to apply",w)}catch(_){if(!this.triggerContext.triggerData.isBYOB()){v_.default.error("Unable to get a discount code",_);return}}if(w&&r.at===103)await s.copyDiscountCode(w);else if(r.at===110){let _=await s.createNewCart(e,w,i.triggerData);_&&(location.href=_);return}try{w&&await Mn.applyWithStorefront([w])}catch(_){T.error(_),y=!0}let b;if(g?.length&&(b=await s.addToCart(g,i.triggerData)),y&&w){Mn.navigate(w,o,p);return}if(p){location.href=p;return}Mn.navigateWithoutDiscount(o,b)}sendTriggerClicked(t,e,r){let n=new jt(H.EVENT_TRIGGER_CLICKED,e,this.triggerContext.triggerData);n.items=t,r?.id&&(n.videos=[r.id]),this.eventAPIService.sendSilently(n)}async getOrGenerateDiscountCode(t){let e=this.triggerContext.triggerData.discount;if(!e?.type)return;let r="";if(e.type===Ue.STATIC){if(!e.code)throw zt.getInstance().captureMessage("No discount code found","warning",{triggerContext:this.triggerContext}),new Error("No discount code found");return e.code}if(t){if(r=await this.generateDiscount(t),!r)throw T.error("No discount code found",t),new Error("Discount code not found or generated");return r}}async generateDiscount(t){try{return(await this.safeHTTP.generateDiscount(t))?.code}catch(e){throw Me("Failed to generate a discount code"),zt.getInstance().captureError(e,"backend-generate-discount",{extra:{discountData:JSON.stringify(t)},triggerContext:this.triggerContext}),e}}},lE=class{eventAPIService;modifications=[];constructor(){this.eventAPIService=ut.get(yc)}execute(t){for(let e of t)e.experimentConfig&&this.executeExperiment(e)&&this.trackExperimentRan(e);if(document.querySelector("#lc-hide-body")?.remove(),!document.body){ut.get(zt).captureMessage("No body element found","error");return}this.setupMutationObserver()}executeExperiment(t){let e=t.experimentConfig?.modifications;return e?.length?e.some(r=>{if(!r.cssSelector)return T.debug("No CSS Selector available",t?.toString()),!1;this.modifications.push(r);let n=Array.from(document.querySelectorAll(r.cssSelector));return n?.length?(this.executeSingleModification(r,n),!0):!1}):(T.log("Nothing to experiment",t.toString()),!1)}executeSingleModification(t,e){if(e?.length)for(let r of e)Object.assign(r.style,t.style),t.type==="TEXT"&&t.text?r.innerHTML=t.text:t.type==="IMAGE"&&this.updateImage(t,r)}trackExperimentRan(t){if(t.id==="preview"){T.warn("Skipping experiment attribution as its preview",t.toString());return}this.eventAPIService.trackExperiment({name:H.EVENT_EXPERIMENT_START,experiment:new Xa(t)}).catch(e=>{T.error("Fail to track experiment",e)})}setupMutationObserver(){new MutationObserver(t=>{t.forEach(e=>{e.addedNodes.forEach(r=>{r instanceof HTMLElement&&this.modifications.forEach(n=>{r.matches&&r.matches(n.cssSelector)?(T.debug("Re-applying experiment",n.toString()),this.executeSingleModification(n,[r])):r.querySelectorAll&&(T.debug("Re-applying experiment",n.toString()),this.executeSingleModification(n,Array.from(r.querySelectorAll(n.cssSelector))))})})})}).observe(document.body,{childList:!0,subtree:!0})}updateImage(t,e){let r=t.image?.lg?.src,n=t.image?.sm?.src;!r&&!n||(e instanceof HTMLPictureElement?this.updatePictureElement({desktop:r,mobile:n},e):this.updateImageElement({desktop:r,mobile:n},e))}updateImageElement(t,e){_r()&&t.mobile?(e.setAttribute("src",t.mobile),e.removeAttribute("srcset")):t.desktop&&(e.setAttribute("src",t.desktop),e.removeAttribute("srcset"))}updatePictureElement(t,e){if(e.innerHTML="",t.mobile){let n=document.createElement("source");n.srcset=t.mobile,n.media="(max-width: 767px)",e.append(n)}if(t.desktop){let n=document.createElement("source");n.srcset=t.desktop,n.media="(min-width: 768px)",e.append(n)}let r=document.createElement("img");r.src=t.desktop??t.mobile??"",e.append(r)}},yc=class ud extends td{static INSTANCE;constructor(){super()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new ud),this.INSTANCE}loadExperimentSilently(){Mt.get(ct.SDK_TOKEN).then(e=>{e?this.loadExperiments().catch(r=>T.error("Unable to initiate experiment",r)):we.replaySubject.subscribe(async()=>{this.loadExperiments().catch(r=>T.error("Unable to initiate experiment",r))})})}async loadExperiments(){if(!this.runtimeData.activeExperiment)return;let e=await this.getWidgetProps();T.log("Load experiments",e),this.httpService.post("/v1/engagement/experiments",e).then(async r=>{let n=r.experiments.map(i=>new sr(i));new lE().execute(n)}).catch(r=>{T.error("Error sending experiment getter",r)})}async trackExperiment(e){await this.addSessionContext(e),await this.httpService.post("/v1/event/experiment",e)}},uE=class{runtimeData=kt.get();widgetAPIService=ut.get(Wn);experimentAPIService=ut.get(yc);meddle(){let t=Tt.globalRef;t.account=t.account??[],t.profile=t.profile??[],t.events=t.events??[],t.page=t.page??[],this.meddlePage(),this.meddleAccount(),this.meddleEvents(),this.meddleProfile(),this.exposeMethods()}exposeMethods(){let t=Tt.globalRef;t.loadPageWidgets=()=>{this.widgetAPIService.loadPageWidgetsSilently()},t.loadCartWidgets=()=>{this.widgetAPIService.loadCartWidgetsSilently()},t.loadExperiments=()=>{this.experimentAPIService.loadExperimentSilently()},t.testCartUpdate=this.testCartUpdate.bind(this),t.previewWidget=Tt.previewWidget.bind(Tt),t.previewPopup=Tt.previewPopup.bind(Tt)}overwritePush(t,e){On(t,"push",e)}meddleAccount(){this.overwritePush(Tt.globalRef.account,(...t)=>{this.processAccount(t[0])}),Tt.globalRef.account.forEach(this.processAccount.bind(this))}meddleEvents(){this.overwritePush(Tt.globalRef.events,(...t)=>{this.processEvent(t[0])}),Tt.globalRef.events.forEach(this.processEvent.bind(this))}meddleProfile(){this.overwritePush(Tt.globalRef.profile,(...t)=>{this.processProfile(t[0])}),Tt.globalRef.profile.forEach(this.processProfile.bind(this))}processAccount(t){t&&(t.appID&&Tt.authenticate(t),t.flags&&ia.setFlags(t.flags))}processEvent(t){t&&(H.JS_LOAD_WHITELIST_EVENTS.includes(t[0])?Tt.sendEvent(t[0],t[1],x({occurred:this.runtimeData.jsLoadTime},t[2])):Tt.sendEvent(t[0],t[1],t[2]))}processProfile(t){t&&Tt.updateProfile(t)}processPageName(t){t&&Tt.setPageName(t)}meddlePage(){this.overwritePush(Tt.globalRef.page,(...t)=>{this.processPage(t[0])}),Tt.globalRef.page.forEach(this.processPage.bind(this))}processPage(t){t.currentItem&&this.runtimeData.setCurrentItem(t.currentItem),t.currency&&(this.runtimeData.currencyCode=t.currency),t.shopCurrency&&(this.runtimeData.shopCurrencyCode=t.shopCurrency),t.moneyFormat&&(this.runtimeData.moneyFormat=t.moneyFormat),t.jsLoad&&(this.runtimeData.jsLoadTime=t.jsLoad),t.locale&&(this.runtimeData.locale=t.locale),t.pageName&&Tt.setPageName(t.pageName),t.activeExperiment&&(this.runtimeData.activeExperiment=t.activeExperiment)}async testCartUpdate(){if(this.runtimeData.pageName!=="product"){window.alert("This feature is only available on a product page");return}let t=window.ShopifyAnalytics?.meta??{},e=t.selectedVariantId;if(e||(t.product?.variants?.length>0&&(e=t.product.variants[0].id),e||(e=this.runtimeData.getCurrentItem()?.vID)),!e){window.alert("Could not find a variant to test. Please try a different product page");return}let r=new sr({id:"preview",shortID:"1",redirectBehaviour:Te.CART_DRAWER});await new Cs(new ec(new Date,r)).execute({clickAction:{at:102},embeddedItem:new Ar({vID:e})})}},vo=class{static SESSION_STORAGE=window.sessionStorage;static SESSION_STORAGE_KEY_PREFIX=H.COOEE.concat("-");static getString(t,e){return this.getItem(t)||e}static setString(t,e){this.setItem(t,e)}static remove(t){this.removeItem(t)}static getItem(t){return this.SESSION_STORAGE.getItem(this.SESSION_STORAGE_KEY_PREFIX.concat(t))}static setItem(t,e){this.SESSION_STORAGE.setItem(this.SESSION_STORAGE_KEY_PREFIX.concat(t),e)}static removeItem(t){this.SESSION_STORAGE.removeItem(this.SESSION_STORAGE_KEY_PREFIX.concat(t))}},yo=class Pi{static INSTANCE;static DEBOUNCE_TIME=1e3;static THRESHOLD=10;safeHttpService=ut.get(Vt);lastPercent=0;_lastScreenOrScroll=new Date;constructor(){}set lastScreenOrScroll(e){this._lastScreenOrScroll=e}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Pi),this.INSTANCE}resetScrollID(e){vo.remove(H.SESSION_STORAGE_SCROLL_ID),this.lastScreenOrScroll=e??new Date}listen(){if(window.scrollY){let e=this.getPercentScrolledY();this.shouldSendScroll(e)&&this.sendScroll(e)}Na(()=>{this.observeWindowScroll()})}observeWindowScroll(){ts(window,"scroll").pipe(ni(Pi.DEBOUNCE_TIME),cc(()=>{let e=this.getPercentScrolledY();if(e>100){T.warn("Received scroll percent is more than 100",e);return}if(this.shouldSendScroll(e))return e})).subscribe(e=>{this.sendScroll(e)})}shouldSendScroll(e){return Math.abs(this.lastPercent-e)>=Pi.THRESHOLD||this.lastPercent!==e&&e===100}sendScroll(e){if(e==null)return;let r={percent:e,timeMS:new Date().getTime()-this._lastScreenOrScroll.getTime()};this.lastPercent=e;let n=vo.getString(H.SESSION_STORAGE_SCROLL_ID,""),i=new jt(H.EVENT_SCROLL,r,null,n);this.safeHttpService.sendEvent(i),vo.setString(H.SESSION_STORAGE_SCROLL_ID,i.id.toHexString()),this._lastScreenOrScroll=new Date(i.occurred)}getPercentScrolledY(){let e=window.document.body.scrollHeight,r=window.innerHeight;return Math.ceil((window.scrollY+r)/e*100)}},hE=class hd{static ACTIVE_DURATION="aDur";static INACTIVE_DURATION="iaDur";apiService=ut.get(Vt);runtimeData=kt.get();listen(){document.onvisibilitychange=()=>{document.visibilityState==="visible"?this.onVisible():document.visibilityState==="hidden"&&this.onHidden()}}async onVisible(){}async onHidden(){let e=await this.runtimeData.setInactive();if(e===0){T.info("Not sending background event as user was inactive on website");return}T.info(`Sending background event with ${e} seconds`);let r={};r[hd.ACTIVE_DURATION]=e,this.apiService.sendEvent(new jt(H.EVENT_APP_BACKGROUND,r))}},pE=class{compareCartItemSubject=new or;constructor(){this.compareCartItemSubject.pipe(ni(100)).subscribe(this.compareCartItems.bind(this))}listen(){this.compareCartItemSubject.next(),this.overwriteXMLHttpRequest(),this.overwriteFetchMethod()}overwriteXMLHttpRequest(){let t=this,e=window.XMLHttpRequest.prototype.send;window.XMLHttpRequest.prototype.send=function(){return this.addEventListener("load",function(){t.performEvent(this._url).catch(r=>T.error("Unable to process cart change in XMLHttpRequest",r))}),e.apply(this,arguments)},T.debug("Securely overwritten window.XMLHttpRequest.send method")}overwriteFetchMethod(){let t=this,e=window.fetch;window.fetch=function(r){return e.apply(window,arguments).then(n=>(t.performEvent(r.toString()).catch(i=>T.error("Unable to process cart change in fetch",i)),n))},T.debug("Securely overwritten window.fetch method")}async performEvent(t){this.isCartManipulationURL(t)&&(kt.get().isCartDirty=!0,this.compareCartItemSubject.next())}isCartManipulationURL(t){return/\/cart\/(add|change|update|clear)/.test(t)}sendChangesAsEvents(t,e){let r=t?.items,n=e.items,i=[],s=[];if(T.debug(`Comparing cart change with old count ${r?.length} to new count ${n.length}`),n?.forEach(o=>{let c=r?.find(l=>l.vID===o.vID);if(c){if(c.quantity!==o.quantity){let l=c.quantity<o.quantity,p=Math.abs(c.quantity-o.quantity),g=lt(x({},o),{quantity:p});l?i.push(g):s.push(g)}r&&tb(r,c)}else i.push(o)}),r)for(let o of r)s.push(o);T.debug(`Cart delta: added: ${i.length}, removed: ${s.length}`),i.length&&this.sendEvent(H.EVENT_ADD_TO_CART,{items:i}),s.length&&t.token===e.token&&this.sendEvent(H.EVENT_REMOVE_FROM_CART,{items:s}),(s.length||i.length)&&hc.get().broadcast(H.CART_UPDATE_BROADCAST,{itemsAdded:i,itemsRemoved:s})}sendEvent(t,e){let r=new jt(t,e);ut.get(Vt).sendEvent(r)}async compareCartItems(){let t=await Mt.get(ct.CURRENT_CART,{}),e=await xt.getCurrent().getNormalisedCart(!0);this.sendChangesAsEvents(t,e)}},dE=class{listen(){return this.overwriteFetchMethod(),this}overwriteFetchMethod(){let t=this,e=window.fetch;window.fetch=async function(r,n){try{await t.modifyRequest(r,n)}catch(i){zt.getInstance().captureError(i,"modify-graphql-request",{extra:{body:JSON.stringify(n?.body)}})}return e(r,n)},T.debug("Securely overwritten window.fetch method for graphql query")}async modifyRequest(t,e){let r=typeof t=="string"?t:t instanceof Request?t.url:"";if(!(r.includes("graphql.json")&&e?.method==="POST")||!e.body)return;let n;if(typeof e.body=="string")try{n=JSON.parse(e.body)}catch{return}else n=e.body;n?.variables?.input&&(T.debug("Intercepted fetch request of:",r),n?.query.includes("cartCreate")&&(e.body=await this.updatedBody(n),this.sendBuyNowEvent()))}async updatedBody(t){let e=t.variables.input.attributes??[],r=await kh();return t.variables.input.attributes=[...e,...r],JSON.stringify(t)}sendBuyNowEvent(){let t=kt.get().getCurrentItem();if(!t)return;let e=new jt(H.EVENT_BUY_NOW_CLICKED,{items:[t]});Vt.getInstance().sendEvent(e)}},pd=class{constructor(t,e){this.selectors=t,this.eventName=e,this.selectorString=t.join(",")}static INSTANCE;elements;selectorString;clickListenerCallback=t=>{let e=t.currentTarget,r=new jt(this.eventName,{class:e.className||void 0,tagName:e.tagName||void 0,id:e.id||void 0});Vt.getInstance().sendEvent(r),this.removeClickListener(this.clickListenerCallback)};listenSilently(){this.listen().catch(t=>T.error(t))}async listen(){this.elements=await Nh(this.selectorString),this.elements.forEach(t=>{t.addEventListener("click",this.clickListenerCallback)})}removeClickListener(t){this.elements?.forEach(e=>{e.removeEventListener("click",t)})}},fE=class oa extends pd{static selectors=[".product__thumbnail-list-inner > button","product-gallery-navigation > button",".product-media--thumb-container",".product-images-inner > img",".m-product-media",".swiper-button-control",".media__thumb",".slick-arrow",".productView-img-container.product-single__media",".product-gallery__thumbnail_item_inner"];constructor(){super(oa.selectors,H.EVENT_ITEM_THUMBNAIL_CLICKED)}static getInstance(){return this.INSTANCE||(this.INSTANCE=new oa),this.INSTANCE}},gE=class aa extends pd{static selectors=[".jdgm-widget.jdgm-preview-badge.jdgm-preview-badge--with-link.jdgm--done-setup","reviewsio-product-ratings",".ruk_rating_snippet.tracked:not(.hidden)","a > .loox-rating",".yotpo-reviews-star-ratings-widget",".yotpo.lp-hero__reviews",".pr-rating > a",".rivyoReviewWidget"];constructor(){super(aa.selectors,H.EVENT_REVIEW_CLICKED)}static getInstance(){return this.INSTANCE||(this.INSTANCE=new aa),this.INSTANCE}},mE=class{selector=[".gokwik-checkout button","button.cart__checkout-button","button.cart__checkout","button#checkout","button#checkout2",'button[id*="checkout" i]','button[name*="checkout" i]','button[class*="checkout" i]'].join(",");listen(){Na(()=>{T.debug("Execution order:","document ready"),this.useLocationHash()})}useLocationHash(){let t=window.location.hash?.substring(1);if(t)if(t.includes(H.HASH_INITIATE_CHECKOUT)){document.dispatchEvent(new Event(H.THIRD_PARTY_CHECKOUT_EVENT));let e=document.querySelector(this.selector);if(!e){T.debug("No clickable cart checkout button found");return}T.debug("Clickable cart checkout button found",e),e.click()}else t.includes(H.HASH_OPEN_CART_DRAWER)&&Ee.get().open()}},ku=class{static attachCheckoutListener(){window.gokwikSdk&&window.gokwikSdk.on("checkout_initiated",async()=>{let t=await xt.getCurrent().getNormalisedCart(),e={via:"GoKwik",items:t.items,cartToken:t.token,amount:{value:t.amount,currency:t.currency}},r=new jt(H.EVENT_CHECKOUT_STARTED,e);Vt.getInstance().sendEvent(r)})}},vE=class{async migrate(){}},Tt=class{static globalRef;static authenticated;static async initForMerchantWebsiteOnly(){window.cooeeSDKPreview||(this.initGlobalReference(),await new vE().migrate(),this.autoAuthenticate(),new uE().meddle(),ut.get(yc).loadExperimentSilently(),new hE().listen(),new pE().listen(),new dE().listen(),new mE().listen(),ut.get(yo).listen(),ut.get(gE).listenSilently(),ut.get(fE).listenSilently(),ut.get(Wn).loadPageWidgetsSilently(),this.attachGoKwikListeners(),this.storePreviewParams(),this.setupPreviewListeners(),Ne.watch())}static async initForAll(){this.injectWidgetAssets()}static initGlobalReference(){window.CooeeSDK||On(window,"CooeeSDK",{}),this.globalRef=window.CooeeSDK,On(this.globalRef,"config",new se),On(this.globalRef,"runtimeData",new kt),On(this.globalRef,"uaParser",new Ke),T.debug("Global reference initialised")}static injectWidgetAssets(){be.injectScriptURL(Ge.widgetURL,"cooee-widget-sdk"),be.injectStylesheet(Ge.styleURL)}static autoAuthenticate(){let t=qb();t&&this.authenticate({shopifyShop:t})}static authenticate(t){if(this.authenticated)return;let e=t.appID?.trim(),r=t.shopifyShop;if((xl(e)||e.length!==24)&&xl(r)){T.warn("Cooee App ID or Shop name is not configured");return}this.authenticated=!0,ut.get(we).init(t)}static sendEvent(t,e,r){let n=new jt(t,e,r?.triggerData);r?.occurred&&(n.occurred=r.occurred),ut.get(Vt).sendEvent(n)}static updateProfile(t){for(let e in t)if(e.toLowerCase().startsWith("ce "))throw new Error("User property name cannot start with 'CE '");ut.get(Vt).updateProfile(t)}static setPageName(t){if(!t)return;let e=kt.get(),r=e.pageName;if(t===r)return;if(e.pageName=t,t==="cart"&&ut.get(Wn).loadOrRenderWidgetsAfterCartChange(),H.BLACKLISTED_PAGE_NAMES.some(s=>t.includes(s))){ut.get(yo).resetScrollID();return}let n={};r&&(n.ps=r);let i=new jt(H.EVENT_SCREEN_VIEW,n);i.occurred=e.jsLoadTime,ut.get(Vt).sendEvent(i),ut.get(yo).resetScrollID(i.occurred)}static previewPopup(t,e){new mc(e).render(t)}static previewWidget(t){new We(new sr(t)).render()}static setupPreviewListeners(){if(window.opener){try{window.opener.postMessage({action:"COOEE_READY_FOR_PREVIEW"},"*")}catch(t){T.error(t)}window.addEventListener("message",t=>{if(T.debug("Received event",t),!t.origin.includes("letscooee.com")&&!t.origin.includes("localhost"))return;let e=t.data;typeof e=="object"&&(e.action==="POPUP_PREVIEW"?(this.previewPopup(e.engagementTrigger),t.source?.postMessage({action:"PREVIEW_SUCCESSFUL"},t.origin)):e.action==="WIDGET_PREVIEW"&&(this.previewWidget(e.engagementTrigger),t.source?.postMessage({action:"PREVIEW_SUCCESSFUL"},t.origin)))})}}static attachGoKwikListeners(){let t=kt.get();window.addEventListener("kp-modal:opened",()=>{t.isGoKwikPopupOpen=!0}),window.addEventListener("user-loggedin",e=>{let{token:r}=e.detail;r&&this.updateProfile({goKwikToken:r})}),window.gokwikSdk?ku.attachCheckoutListener():window.addEventListener("gokwikLoaded",ku.attachCheckoutListener)}static storePreviewParams(){let t=kt.get(),e=new URLSearchParams(location.search),r=e.get("cooee-preview");r&&(t.previewIDs=r.trim().split(",").filter(i=>Number.isInteger(+i)));let n=e.get("cooee-variant");n&&(t.previewVariant=n)}};gf();mf();T.debug("Execution order:","top");window.cooeeShopifyScriptLoaded||(window.cooeeShopifyScriptLoaded=!0,(async()=>(T.debug("Execution order:","IIFE start"),await Tt.initForMerchantWebsiteOnly(),await Tt.initForAll(),T.debug("Execution order:","IIFE end")))());T.debug("Execution order:","bottom");})();
|
|
69
|
+
`,gc=class{sentryService=ut.get(zt);async addToCart(t,e){if(!t.length)return;let r=t.map(c=>{let{vID:l,quantity:p}=this.getVIDAndQuantity(c);return{id:l?+l:+c.mID,quantity:p,properties:e.getPrivateAttributesForLineItem()}}),n=Ln("cart/add.js"),i={items:r},s=Ee.get();s.isMiniCart()?i.sections=["mini-cart"]:s.isShopifyDefaultDrawer()&&(i.sections=s.element.getSectionsToRender?.().map(c=>c.section??c.id));let o=JSON.stringify(i);try{let c=await fetch(n,{body:o,method:"post",headers:{"Content-Type":"application/json"}});if(c&&!c.ok&&(await this.sentryService.captureFetchFailure(c,"cart-item-add"),c.status>400&&c.status<500)){let l=await c.json();Me(l.description||"Failed to add product in cart. Please try again")}if(c.status===200||c.status===302)return T.log(`Added ${t.length} items to Cart`),Me("Product added to your cart"),c.json()}catch(c){Me("Failed to add product in cart. Please try again"),this.sentryService.captureError(c,"cart-item-add",{extra:{body:o},engagementTrigger:e})}}async updateLineItem(t,e){if(!Gn.hasKeys(e)){T.warn("No update fields provided");return}let r=Ln("cart/change.js"),n=x({id:t.key},e),i=JSON.stringify(n);try{let s=await fetch(r,{body:i,method:"post",headers:{"Content-Type":"application/json"}});if(s&&!s.ok&&await this.sentryService.captureFetchFailure(s,"cart-item-update"),s.status===200||s.status===302){let o=await s.json();T.log(`Updated ${t}`),xt.getCurrent().update(o)}}catch(s){Me("Failed to update item in cart"),this.sentryService.captureError(s,"cart-item-update",{extra:{body:i}})}}async copyDiscountCode(t){if(t)try{await navigator.clipboard.writeText(t),T.log(`Code-${t} copied`),Me("Discount code copied")}catch(e){T.error("Failed to copy code",e)}}getProductURL(t){if(!t?.link)return;let e=Wb(t.link);if(e)return Wi()+"products/"+e}async upgradeToSubscription(t,e){if(!t){T.warn("Trying to upgrade to subscription with no item");return}let r=await xt.getCurrent().getNormalisedCart(),n=t.selectedOrFirstVariant.value,i=r.items.findIndex(p=>p.vID===n.mID),s=n.selectedSellingPlan.value,o=Ln("cart/change.js"),c={line:i+1,selling_plan:s?.mID||null,properties:e.getPrivateAttributesForLineItem()},l=JSON.stringify(c);try{let p=await fetch(o,{body:l,method:"post",headers:{"Content-Type":"application/json"}});if(p&&!p.ok&&await this.sentryService.captureFetchFailure(p,"cart-switch-subscription"),p.status===200||p.status===302){T.log(`Upgraded ${t} selling plan`),Me("Line item updated");let g=await p.json();return xt.getCurrent().update(g),g}}catch(p){Me("Failed to update subscription"),this.sentryService.captureError(p,"cart-switch-subscription",{extra:{body:l},engagementTrigger:e})}}async createNewCart(t,e,r){let n=se.get().storefrontToken;if(!n)throw new Error("Storefront token not set for the store");if(!t?.vID){T.error("No variant ID found to perform Buy now",t);return}let i=e?[e]:[],s=[{merchandiseId:`gid://shopify/ProductVariant/${t.vID}`,quantity:1,attributes:r.getKVFormatPrivateAttributesForLineItem()}],o=await kh(),c=new Headers;c.append("Content-Type","application/json"),c.append("X-Shopify-Storefront-Access-Token",n);let l=JSON.stringify({query:V0,variables:{input:{lines:s,discountCodes:i,attributes:o}}});return(await Pr.getInstance().request(H.GRAPHQL_API_PATH,{method:"POST",headers:c,body:l})).data?.cartCreate?.cart?.checkoutUrl}async process(t){let e=t.clickAction,r=t.items,n=t.triggerData,i;if(e.at){let s=e;if(T.log(`Performing ${JSON.stringify(s)} action`),s.at===101)i=this.getProductURL(r[0]);else if(s.at===102)r?.length&&await this.addToCart(r,n);else if(s.at===103)await this.copyDiscountCode(n.discount?.code);else if(s.at===105)Ee.get().open();else if(s.at===104){let o=t.collections;if(!o?.length)return;i=Wi()+"collections/"+o[0].handle}}e.applyDiscount&&n.discount?.code?Mn.navigate(n.discount.code,n.redirectBehaviour,i):i&&(location.pathname=i)}getVIDAndQuantity(t){let e,r;if(t instanceof Ar)e=t.vID,r=t.quantity??1;else{if(!t.vars?.length)return{};e=t.selectedOrFirstVariant.value.mID,r=1}return{vID:e,quantity:r}}},q0=class extends Er{ctaExecutor=new gc;constructor(t){super(t)}update(t){super.update(t),this.engagementTrigger.progressBarConfig.update(t.progressBarConfig),this.checkMilestoneSilently(),this.widgetElement.update()}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget("cooee-progressbar"),this.checkMilestoneSilently()}checkMilestoneSilently(){this.checkMilestone().catch(t=>{zt.getInstance().captureError(t,"apply-milestones",{engagementTrigger:this.engagementTrigger})})}async checkMilestone(){let t=await xt.getCurrent().getNormalisedCart(),e=this.engagementTrigger.progressBarConfig,r,n=[],i=[],s=[],o,c,l=[...e.milestones];for(let g of l){if(g.rewardType!==ju.FREE_AUTO_GIFT)continue;let h=g.items[0],w=g.reached,y=t.items.find(b=>(b.vID===h.vID||b.mID===h.mID)&&b.properties[H.CAMPAIGN_ATTRIBUTE]===this.engagementTrigger.shortID);w&&(o=g,c=y),y&&n.push(y),!w&&y&&e.removeIneligibleItem?(T.debug(`Removing free gift ${y.vID} from cart`),s.push(y)):w&&!y&&(T.debug(`Adding free gift ${h.vID} to cart`),i.push(h))}e.restrictToLatestFreebie&&o&&(c?(n=n.filter(g=>g.vID!==c.vID),i=[]):i=[o.items[0]],s.push(...n)),s.length&&await this.removeFreeGifts(s),i.length&&(r=await this.ctaExecutor.addToCart(i,this.engagementTrigger));let p=e.coupons;if(p?.length)try{await Mn.applyWithStorefront(p.map(g=>g.couponCode)),Ee.get().refreshUI(r,!1)}catch(g){this.sentryService.captureError(g,"cart-apply-discount",{extra:{coupons:p},engagementTrigger:this.engagementTrigger})}}async removeFreeGifts(t){await Promise.all(t.map(e=>this.ctaExecutor.updateLineItem(e,{quantity:0})))}},Nu=class extends Er{constructor(t){super(t)}update(t){super.update(t),this.engagementTrigger.content.update(t.content),this.widgetElement.update()}addToRendered(){this.engagementTrigger.isPageEmbed()?We.renderedEngagements.push(this):Er.renderedEngagements.push(this)}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget("cooee-savings-bar")}},W0=class extends We{constructor(t){super(t)}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget("cooee-shoppable-videos")}},G0=class extends We{constructor(t){super(t)}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget("cooee-sticky-atc")}},z0=class extends We{constructor(t){super(t)}shouldStopRendering(){return!1}renderContainer(){let t=this.getParentElement(`inner-letscooee-${this.engagementTrigger.shortID}`);this.rootContainer.appendChild(t),document.addEventListener(H.ADD_BUNDLE_CTA_INBOUND_EVENT,this.inboundCTAListener.bind(this),!1)}async inboundCTAListener(t){let e=this.engagementTrigger,r=`Engagement(id: ${e.engagementID}, shortID: ${e.shortID})`,n=t.detail;if(!Gn.hasKeys(n)){T.error(`No detail received for ${r}`);return}T.log("Detail received for BYOB",n);let i=n.campaignID??n.campaignId??n.campaign_id;if(i!==e.shortID&&i!==e.engagementID){T.warn(`Current ${r} is not BYOB. Received: ${i}`);return}let s=n.items;if(!s?.length)return;let o=s.map(c=>new Ar({mID:c.product_id,vID:c.variant_id,quantity:c.quantity||1}));await new Cs(this.triggerContext).execute({embeddedItems:o,clickAction:{at:108,applyDiscount:!0}})}},mo=class{runtimeData=kt.get();processCartWidgetResponse(t){this.runtimeData.isCartDirty=!1,this.runtimeData.cartEngagements=t;let e=[...Er.renderedEngagements];Er.renderedEngagements.length=0;for(let r of t)T.log(`\u{1F4E3} ${r} received as cart embed`),!this.findAndUpdateCurrent(r,e)&&(T.log(`${r} is new`),r.isProgressBar()?new q0(r).renderSilently():r.isSubscriptionUpsell()?F0.renderCartUpsell(r):r.isSavingsBar()?new Nu(r).renderSilently():new Er(r).renderSilently());this.removeOldWidgets(e)}processPageWidgetResponse(t){let e=[...We.renderedEngagements];We.renderedEngagements.length=0;for(let r of t)T.log(`\u{1F4E3} ${r} received as page embed`),!this.findAndUpdateCurrent(r,e)&&(T.log(`${r} is new`),r.isShoppableVideo()?new W0(r).renderSilently():r.isBYOB()?new z0(r).renderSilently():r.isStickyATC()?new G0(r).renderSilently():r.isSavingsBar()?new Nu(r).renderSilently():new We(r).renderSilently());this.removeOldWidgets(e)}findAndUpdateCurrent(t,e){let r=e.findIndex(n=>n.isSameTrigger(t));return r<0||t.isSubscriptionUpsell()?!1:(e[r].update(t),e[r].renderSilently(),e.splice(r,1),!0)}removeOldWidgets(t){for(let e of t)e.destroy()}},td=class{runtimeData=kt.get();httpService=ut.get(Pr);sessionManager=ut.get(we);constructor(){}async getWidgetProps(){let t={};t.engagementIDs=this.addAvailableEngagementShortIDs(),t.locale=this.runtimeData.locale,await this.addSessionContext(t),t.currentItem=this.runtimeData.getCurrentItem();try{t.cart=await xt.getCurrent().getNormalisedCart()}catch(i){T.error("Error fetching Shopify cart before sending widget call",i)}let e=new URLSearchParams(location.search),r=e.get("cooee-preview");r?t.previewIDs=r.trim().split(",").filter(i=>Number.isInteger(+i)):this.runtimeData.previewIDs?.length&&(t.previewIDs=this.runtimeData.previewIDs);let n=e.get("cooee-variant");return n?t.previewVariant=n:this.runtimeData.previewVariant&&(t.previewVariant=this.runtimeData.previewVariant),t}async addSessionContext(t){let e=await this.sessionManager.checkSessionAndGetContext();t.sessionID=e[0],t.sessionNumber=e[1],t.landingPage=e[2],t.page=Ss.parseFromCurrent()}addAvailableEngagementShortIDs(){let t=document.querySelectorAll(".letscooee-engagement"),e=[];return t.forEach(r=>{let n=r.dataset.engagementId;n&&+n&&e.push(n)}),e}},Wn=class ed extends td{static INSTANCE;loadWidgetsSubject=new or;constructor(){super(),this.loadWidgetsSubject.pipe(ni(300)).subscribe(()=>{this.loadCartWidgets().catch(e=>T.error("Unable to initiate cart widgets",e)),this.loadPageWidgets().catch(e=>T.error("Unable to initiate page widgets",e))}),hc.get().subscriber(H.CART_UPDATE_BROADCAST).subscribe(()=>this.loadWidgetsSubject.next())}static getInstance(){return this.INSTANCE||(this.INSTANCE=new ed),this.INSTANCE}loadOrRenderWidgetsAfterCartChange(){this.runtimeData.isCartDirty?this.loadWidgetsSilently():this.renderCachedCartWidgets()}loadPageWidgetsSilently(){we.replaySubject.subscribe(async()=>{this.loadPageWidgets().catch(e=>T.error("Unable to initiate load page widgets",e))})}loadCartWidgetsSilently(){we.replaySubject.subscribe(async()=>{this.loadCartWidgets().catch(e=>T.error("Unable to initiate cart widgets",e))})}loadWidgetsSilently(){we.replaySubject.subscribe(async()=>{this.loadWidgetsSubject.next()})}async loadPageWidgets(){let e=await this.getWidgetProps();T.log("Load widgets",e),this.httpService.post("/v1/engagement/page-widgets",e).then(async r=>{let n=r.widgets.map(i=>new sr(i));new mo().processPageWidgetResponse(n)}).catch(r=>{T.error("Error sending widget getter",r)})}async loadCartWidgets(){let e=await this.getWidgetProps();T.log("Load cart widgets",e),this.httpService.post("/v1/engagement/cart-widgets",e).then(async r=>{let n=r.widgets.map(i=>new sr(i));new mo().processCartWidgetResponse(n)}).catch(r=>{T.error("Error sending widget getter",r)})}async getVariation(e){let r=await this.getWidgetProps();return this.httpService.post("/v1/engagement/get-variant",x(x({},e),r))}renderCachedCartWidgets(){new mo().processCartWidgetResponse(this.runtimeData.cartEngagements)}},K0=class rd{static INSTANCE;constructor(){this.init()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new rd),this.INSTANCE}init(){Ou.get(ct.APP_CONFIG,{}).then(e=>this.updateGlobalConfig(e))}async processAppConfigurations(e){T.log("Received app configuration",e),e.currencyCount=e.currencies?.length;let r=this.updateGlobalConfig(e);Ou.set(ct.APP_CONFIG,r).catch(n=>T.error(n)),D0.processConfiguration(),r.website&&(be.injectRawScript(r.website.commonJS),be.injectRawCSS(r.website.commonCSS)),Ee.get().onToggle().subscribe(async({open:n})=>{T.info("Cart drawer is now",n?"open":"closed"),n&&(ut.get(Wn).loadOrRenderWidgetsAfterCartChange(),await this.trackViewCartEvent())})}updateGlobalConfig(e){let r=Tt.globalRef.config.update(e);return Ee.forceUpdate(),T.debug("App configurations",r),r}async trackViewCartEvent(){let e=await xt.getCurrent().getNormalisedCart(),r={value:e.amount,currency:e.currency},n={items:e.items,amount:r,drawer:!0};Vt.getInstance().sendEvent(new jt(H.EVENT_VIEW_CART,n))}},sa=class nd{static INSTANCE;httpAPIService=Pr.getInstance();coreService=K0.getInstance();sentryService=zt.getInstance();sdkToken="";userID="";deviceID="";appID="";shopifyShop="";constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new nd),this.INSTANCE}init(e){this.appID=e.appID,this.shopifyShop=e.shopifyShop}async storeAndPopulateAuthData(e){e&&(e.userID&&(this.userID=e.userID,await Mt.set(ct.ID,e.userID)),e.deviceID&&(this.deviceID=e.deviceID,await Mt.set(ct.DEVICE_ID,e.deviceID)),e.sdkToken&&(this.sdkToken=e.sdkToken,await Mt.set(ct.SDK_TOKEN,e.sdkToken)),this.updateAPIClient())}async validateSession(e){await this.populateFirstSeen(),await this.populateUserDataFromStorage(),T.log("Validating session with server");let r=await this.getSessionValidateData(e);try{let n=await this.httpAPIService.validateSession(r);T.log("Validating session Response",n),await this.coreService.processAppConfigurations(n.appSettings),await this.storeAndPopulateAuthData(n)}catch(n){throw T.error(n),n}}async populateUserDataFromStorage(){if(this.sdkToken=await Mt.get(ct.SDK_TOKEN),!this.sdkToken){T.warn("No SDK token found in local storage");return}this.userID=await Mt.get(ct.ID),this.deviceID=await Mt.get(ct.DEVICE_ID),this.updateAPIClient()}updateAPIClient(){T.debug("SDK Token:",this.sdkToken),T.log("Device ID:",this.deviceID),T.log("User ID:",this.userID),Fp.trackDeviceID(this.deviceID),Ne.log(`Device ID: ${this.deviceID}`),this.userID&&Ne.log(`User ID: ${this.userID}`),this.httpAPIService.setAPIToken(this.sdkToken),this.httpAPIService.setDeviceId(this.deviceID),this.sentryService.setGlobalContext("Visitor Info",{device_id:this.deviceID,user_id:this.userID}),this.sentryService.setUser({id:this.deviceID})}async getSessionValidateData(e){let r=await new I0().safeGet(),n=await Mt.get(ct.DEVICE_ID);return n||(n=new Kt().toHexString(),await Mt.set(ct.DEVICE_ID,n)),lt(x({deviceID:n,deviceProps:r,appID:this.appID,shopifyShop:this.shopifyShop},e),{sdk:H.SDK,page:Ss.parseFromCurrent(),ad:w0.getAdParams(),occurred:this.getSessionStartTime(kt.get().jsLoadTime),currentItem:kt.get().getCurrentItem(),cart:await xt.getCurrent().getNormalisedCart(),properties:{}})}async populateFirstSeen(){let e=await Mt.get(ct.FIRST_SEEN),r=e?new Date(e):new Date;e||await Mt.set(ct.FIRST_SEEN,r.toISOString()),this.httpAPIService.setFirstSeen(r),this.sentryService.setGlobalContext("Visitor Info",{first_seen:r.toISOString()})}getSessionStartTime(e){return(new Date().getTime()-e.getTime())/1e3>H.IDLE_TIME_IN_SECONDS?new Date:e}},we=class Pn{static replaySubject=new j_(1);static INSTANCE;sentryService=ut.get(zt);constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Pn),this.INSTANCE}init(e){if(T.debug("Initialising SDK",e),E_(navigator.userAgent)){T.info("This seems to be a bot. Disabling SDK");return}sa.getInstance().init(e),Pn.INSTANCE.checkSessionOnPageLoad().then(async()=>{Pn.replaySubject.next(!0),Pn.replaySubject.complete()}).catch(r=>{T.error("Unable to initiate session",r)})}getCurrentSessionID(){return ee.set(ct.SESSION_LAST_USED_TIME,new Date().getTime()),ee.get(ct.ID,"")}async checkSessionOnPageLoad(){await zb.request("validate_session",async()=>{await this.checkForNewSession(!0)})}async checkSessionAndGetContext(){return await this.checkForNewSession(),this.getContext()}async getContext(){let e=await Promise.all([this.getCurrentSessionID(),this.getCurrentSessionNumber(),this.getLandingPage()]);return this.sentryService.setTags({"cooee_session.number":e[1]}),this.sentryService.setGlobalContext("Visitor Session",{id:e[0],number:e[1],landing_page:e[2]}),e}async checkForNewSession(e){let r=!1;if(await this.isNewSessionRequired()?(Ne.log("New session to be started"),await this.startNewSession(),e=!0,r=!0):await this.notSynced()&&(r=!0),e){let n=await this.getContext();Ne.log(`Session ID: ${n[0]} & number: ${n[1]}`),await sa.getInstance().validateSession({sessionID:n[0],sessionNumber:n[1],landingPage:n[2],newSession:r}),await ee.set(ct.SESSION_SYNCED,!0)}}async startNewSession(){T.debug("Starting new session"),await ee.clear(),T.debug("Cleared SessionStorage before starting new session");let e=new Date,r=new Kt().toHexString();T.debug("New session ID to be used",r);let n=await Mt.get(ct.SESSION_NUMBER,0)+1;await Promise.all([Mt.set(ct.SESSION_NUMBER,n),ee.set(ct.ID,r),ee.set(ct.SESSION_LAST_USED_TIME,e.getTime()),ee.set(ct.SESSION_LANDING_PAGE,Ss.parseFromCurrent())])}getLandingPage(){return ee.get(ct.SESSION_LANDING_PAGE,{})}getCurrentSessionNumber(){return Mt.get(ct.SESSION_NUMBER,1)}async isNewSessionRequired(){if(!await ee.get(ct.ID))return!0;let e=await ee.get(ct.SESSION_LAST_USED_TIME,0);return e?(new Date().getTime()-e)/1e3>H.IDLE_TIME_IN_SECONDS:!0}async notSynced(){return!await ee.get(ct.SESSION_SYNCED,!1)}},Y0=class{loadedFonts=[];async loadAllFonts(t){t.elems?.forEach(e=>{e instanceof ds&&this.loadFamily(e.typography?.fam)})}async loadFamily(t){if(!t?.fonts||this.loadedFonts.indexOf(t.name)>-1)return;let e=[];t.fonts.forEach(r=>{if(r.url){let n=new FontFace(H.COOEE+t.name,r.getURL(),r.getFontDescriptor());e.push(n.load())}}),this.loadedFonts.push(t.name),(await Promise.all(e)).forEach(r=>{document.fonts.add(r)})}},J0=class{static updateIdentity(t){if(!this.isInstalled())return;let e={};t.email&&(e.email=t.email),t.mobile&&(e.phone_number=t.mobile),T.debug("Sending email/mobile to Klaviyo"),window.klaviyo.push(["identify",e])}static isInstalled(){return window.klaviyo&&typeof window.klaviyo=="object"}},X0=class{apiService;action;triggerContext;constructor(t,e){this.action=t,this.apiService=Vt.getInstance(),this.triggerContext=e}async execute(){let t=this.containsCTA()?H.EVENT_TRIGGER_CLICKED:H.EVENT_TRIGGER_CLOSED;switch(this.action.at!==106&&await this.closeTriggerAndSendEvent(t),this.action.at){case 2:break;case 4:this.gotoURLAction();break;case 5:this.shareAction();break;case 106:await this.collectFormData();break;case void 0:case 105:break;default:T.error("Received an invalid ClickActionType: ",this.action.at);return}}externalAction(){this.action.ext?.u&&window.open(this.action.ext.u,"_blank")?.focus()}gotoURLAction(){if(this.action.gu?.u){let t=this.action.gu.u;Ah(t)||(t=`//${t}`),window.open(t,"_self")}}async closeTriggerAndSendEvent(t,e){this.triggerContext.closeInApp(t,e),await this.dispatchEvent()}shareAction(){if(this.action.share){if(!navigator.share){T.warn("Navigator.share is not compatible with this browser");return}navigator.share({text:this.action.share.text,title:"Share"}).then(t=>console.log(t)).catch(t=>console.error(t))}}containsCTA(){return this.action.at&&this.action.at!==1?!0:!(this.isEmpty(this.action.custKV)&&this.isEmpty(this.action.up))}isEmpty(t){return t?Object.keys(t).length===0:!0}async collectFormData(){let t={};for(let e of this.triggerContext.inputs){if(!e.isValid)return;let r=document.getElementById(e.id).value;e.type===51?t.email=r:e.type===52&&(t.mobile=r)}await this.closeTriggerAndSendEvent(H.EVENT_FORM_SUBMITTED,{form:t}),Me("Coupon applied on cart"),J0.updateIdentity(t)}async dispatchEvent(){let t=this.triggerContext.triggerData,e={clickAction:this.action,items:this.triggerContext.selectedEmbeddedItems??t.embeddedItems??t.items,collections:t.collections,triggerData:t};await new gc().process(e);let r={action:this.containsCTA()?H.CAMPAIGN_CLICKED_ACTIVITY:H.CAMPAIGN_CLOSED_ACTIVITY};document.dispatchEvent(new CustomEvent(H.POPUP_ACTIVITY_EVENT,{detail:r}))}},si=class{renderer=mc.get();parentHTMLEl;inappElement;inappHTMLEl;triggerContext;stylesConverter;scalingFactor;constructor(t,e,r){this.parentHTMLEl=t,this.inappElement=e,this.triggerContext=r,this.stylesConverter=new Gp(this.renderer.getScalingFactor())}getHTMLElement(){return this.inappHTMLEl}insertElement(){this.parentHTMLEl.appendChild(this.inappHTMLEl)}processCommonBlocks(){this.processWidthAndHeight(),this.processPositionBlock(),this.processTransformBlock(),this.processTransparency(),this.processShadow(),this.registerAction();let t=lt(x(x(x(x({},this.getDisplayStyles()),this.getSpaceStyles()),this.getBorderStyles()),this.getBackgroundStyles()),{boxSizing:"border-box",outline:"none"});es(this.inappHTMLEl,t)}getDisplayStyles(){return{display:"block"}}processWidthAndHeight(){this.inappElement.w&&X(this.inappHTMLEl,"width",this.stylesConverter.getSizePx(this.inappElement.w)),this.inappElement.h&&X(this.inappHTMLEl,"height",this.stylesConverter.getSizePx(this.inappElement.h))}processPositionBlock(){let t={position:"absolute",left:this.stylesConverter.getSizePx(this.inappElement.x),top:this.stylesConverter.getSizePx(this.inappElement.y)};es(this.inappHTMLEl,t)}getBorderStyles(){return this.stylesConverter.getBorderStyles(this.inappElement.br)}getSpaceStyles(){return this.stylesConverter.getSpaceStyles(this.inappElement.spc)}processTransparency(){let t=this.inappElement.alpha;if(!isNaN(t)){let e=(t/100).toFixed(2);X(this.inappHTMLEl,"opacity",e)}}processShadow(){let t=this.inappElement.shd;t?X(this.inappHTMLEl,"box-shadow",t.getStyle(this.scalingFactor)):X(this.inappHTMLEl,"box-shadow","unset")}processTransformBlock(){let t=new Vu(this.inappElement.trf);t&&t.rotate&&X(this.inappHTMLEl,"transform",`rotate(${t.rotate}deg)`)}registerAction(){let t=this.inappElement.clc;!t||Object.keys(t).length===0||(this.inappHTMLEl.addEventListener("click",e=>{e.stopPropagation(),new X0(t,this.triggerContext).execute()}),X(this.inappHTMLEl,"cursor","pointer"))}getBackgroundStyles(){return this.stylesConverter.getBackgroundStyles(this.inappElement.bg)}},Is=class extends si{constructor(t,e,r){super(t,e,r)}processCommonBlocks(){super.processCommonBlocks(),this.processFontBlock(),this.processAlignment()}processFontBlock(){let t={},e=this.inappElement.typography;return e&&(t.fontSize=this.stylesConverter.getSizePx(e.fs),t.fontFamily=H.COOEE+e.fam?.name,t.lineHeight=`${e.lh}`,t.letterSpacing=e.letterSpacing),this.stylesConverter.getColourStyles(this.inappElement.color,"color",t),es(this.inappHTMLEl,t),t}processPart(t,e){let r=[];e.u&&r.push("underline"),e.st&&r.push("line-through"),r.length||r.push("normal"),X(t,"font-weight",e.b?"bold":"normal"),X(t,"font-style",e.i?"italic":"normal"),X(t,"text-decoration",r.join(" ")),X(t,"color",e.c??"inherit"),X(t,"font-family","inherit")}processAlignment(){let t=this.inappElement.typography.ta,e=t?fa[t]?.toLowerCase():this.inappElement.typography.alignment;e||(e="start"),X(this.inappHTMLEl,"text-align",e)}},Q0=class extends Is{constructor(t,e,r){super(t,e,r),this.inappHTMLEl=document.createElement("div"),this.insertElement()}render(){this.inappElement.parts?.forEach(t=>{let e=document.createElement("span");e.innerHTML=t.txt?.toString()?.replace(/\n/g,"<br />"),this.processPart(e,t),this.inappHTMLEl.appendChild(e)}),this.processCommonBlocks()}},Z0=class extends si{constructor(t,e,r){super(t,e,r),this.inappHTMLEl=document.createElement("div"),this.insertElement()}render(){this.processCommonBlocks()}},id=class extends si{constructor(t,e,r){super(t,e,r),this.inappHTMLEl=document.createElement("img"),this.insertElement()}render(){this.inappHTMLEl.setAttribute("src",this.inappElement.src),X(this.inappHTMLEl,"max-width","none"),X(this.inappHTMLEl,"max-height","none"),X(this.inappHTMLEl,"margin","0 auto"),this.processCommonBlocks()}},tE=class sd extends si{constructor(e,r,n){super(e,r,n),this.parent=e,this.inappHTMLEl=document.createElement("div")}static MAX_Z_INDEX="2147483647";render(){return this.parent||this.renderer.removeInApp(),this.insertElement(),this.processCommonBlocks(),this.inappHTMLEl.classList.add(H.IN_APP_WRAPPER_NAME),this.inappHTMLEl.classList.add(this.triggerContext.rootClassName),X(this.inappHTMLEl,"z-index",sd.MAX_Z_INDEX),this.inappHTMLEl}getBackgroundStyles(){return this.inappElement.cover?super.getBackgroundStyles():{}}processWidthAndHeight(){let e=this.inappElement.cont;if(this.inappElement.cover)this.renderer.isParentNotBody()?(X(this.inappHTMLEl,"width","100%"),X(this.inappHTMLEl,"height","100%")):(X(this.inappHTMLEl,"width","100vw"),X(this.inappHTMLEl,"height","100vh")),X(this.inappHTMLEl,"top","0"),X(this.inappHTMLEl,"left","0");else{let r=this.inappElement.spc,n=this.stylesConverter.getScaledSize(e.w)+r.getHorizontal(),i=this.stylesConverter.getScaledSize(e.h)+r.getVertical();X(this.inappHTMLEl,"width",n+"px"),X(this.inappHTMLEl,"height",i+"px")}}getSpaceStyles(){return{padding:this.inappElement.spc.getPaddingCSS()}}getDisplayStyles(){return x(x({display:"flex"},this.inappElement.getStylesForWrapper()),this.inappElement.getFlexStylesForContainer())}processPositionBlock(){if(this.renderer.isParentNotBody()){if(this.triggerContext.triggerData.ian?.isEmbedded()){X(this.inappHTMLEl,"position","block");return}X(this.inappHTMLEl,"position","absolute")}else X(this.inappHTMLEl,"position","fixed")}getBorderStyles(){return{}}processTransparency(){}processTransformBlock(){}processShadow(){}},eE=class extends si{constructor(t,e,r){super(t,e,r),this.inappHTMLEl=document.createElement("div"),this.insertElement()}render(){return this.processCommonBlocks(),X(this.inappHTMLEl,"position","relative"),X(this.inappHTMLEl,"overflow","hidden"),this.inappHTMLEl.classList.add(H.IN_APP_CONTAINER_NAME),this}},rE=class Pe extends Is{static DAYS="Days";static HOURS="Hours";static MINUTES="Minutes";static SECONDS="Seconds";elements;spans=[];constructor(e,r,n){super(e,r,n),this.inappHTMLEl=document.createElement("div"),this.insertElement()}render(){this.addTimerChildren(),this.processAndStartTimer(),this.processCommonBlocks();let e=lt(x(x(x({flex:"1 1 0"},this.stylesConverter.getBackgroundStyles(this.inappElement.bg)),this.stylesConverter.getBorderStyles(this.inappElement.br)),this.stylesConverter.getSpaceStyles(this.inappElement.spc)),{marginLeft:this.stylesConverter.getSizePx(this.inappElement.gap),marginRight:this.stylesConverter.getSizePx(this.inappElement.gap)});this.addStylesToTimer(e)}getBackgroundStyles(){return{}}processFontBlock(){let e=super.processFontBlock();return this.stylesConverter.getColourStyles(this.inappElement.color,"color",e),this.addStylesToTimer(e),e}getSpaceStyles(){return{}}getBorderStyles(){return{}}getDisplayStyles(){return{display:"flex",flexWrap:"nowrap",justifyContent:"center"}}addStylesToTimer(e){this.elements.forEach(r=>es(r,e))}addTimerChildren(){let e=this.inappElement.show;this.elements=[],e.day&&this.elements.push(this.getChild(Pe.DAYS)),e.hour&&this.elements.push(this.getChild(Pe.HOURS)),e.minute&&this.elements.push(this.getChild(Pe.MINUTES)),e.second&&this.elements.push(this.getChild(Pe.SECONDS)),this.elements.forEach(r=>this.inappHTMLEl.appendChild(r))}getChild(e){let r=document.createElement("div"),n=document.createElement("span"),i=document.createElement("span");return i.innerText=e,n.innerText="00",n.id=`lc-${e}`,X(i,"font-size","0.5em"),X(i,"text-align","center"),X(i,"font-family","inherit"),X(n,"text-align","center"),X(n,"font-family","inherit"),this.inappElement.lblPos==="start"?(r.appendChild(i),r.appendChild(n)):(r.appendChild(n),r.appendChild(i)),X(r,"display","flex"),X(r,"flex-direction",this.inappElement.horizontal?"":"column"),X(r,"justify-content","center"),X(r,"align-items","center"),X(r,"gap","5px"),this.spans.push(n),r}processAndStartTimer(){let e=this.inappElement.timer.start(this.inappElement.timerType,r=>{this.spans.forEach(n=>{n.id===`lc-${Pe.DAYS}`?n.innerText=String(r.days).padStart(2,"0"):n.id===`lc-${Pe.HOURS}`?n.innerText=String(r.hours).padStart(2,"0"):n.id===`lc-${Pe.MINUTES}`?n.innerText=String(r.minutes).padStart(2,"0"):n.id===`lc-${Pe.SECONDS}`&&(n.innerText=String(r.seconds).padStart(2,"0"))})});this.triggerContext.intervals.push(e)}},nE=class extends Is{constructor(t,e,r){super(t,e,r),this.inappHTMLEl=document.createElement("select"),this.insertElement()}render(){X(this.inappHTMLEl,"background","#ffffff00"),X(this.inappHTMLEl,"outline","none"),this.processCommonBlocks(),this.addListener(this.inappHTMLEl),this.addOptions()}addListener(t){this.triggerContext.selectedEmbeddedItems?.length||this.updateItems(this.triggerContext.triggerData.items[0].vars[0]),t.addEventListener("click",e=>{e.stopPropagation()}),t.addEventListener("change",()=>{let e=new ps(JSON.parse(t.value));this.updateItems(e)})}updateItems(t){let e=this.triggerContext.triggerData.items[0];this.triggerContext.selectedEmbeddedItems=[e.toEmbed(t)];let r=this.parentHTMLEl.querySelector("#coo-13");if(!r)return;let n=t.imgs[0]??e.imgs?.at(0);n?.url&&r.setAttribute("src",n.url)}addOptions(){let t=this.triggerContext.triggerData.items,e=this.inappHTMLEl;if(!t?.length){e.add(this.createOption(this.inappElement.placeholderText));return}let r=this.triggerContext.selectedEmbeddedItems?.at(0);t[0].vars.forEach(n=>{e.add(this.createOption(n.name??"Default",n,n.mID===r?.vID))})}createOption(t,e,r){let n=document.createElement("option");return n.text=t,n.value=JSON.stringify(e),r&&(n.selected=!0),e||(n.disabled=!0),n}},od=class extends Is{borderColor="";constructor(t,e,r){super(t,e,r),this.inappHTMLEl=document.createElement("input"),this.insertElement()}render(){let t=this.setInputType();this.inappHTMLEl.setAttribute("placeholder",this.inappElement.placeholderText),X(this.inappHTMLEl,"background","#ffffff00"),X(this.inappHTMLEl,"outline","none"),this.inappHTMLEl.addEventListener("click",e=>{e.stopPropagation()}),this.processCommonBlocks(),this.addListener(this.inappHTMLEl,t),this.triggerContext.addInputField(t,this.inappElement.t)}},iE=class ad extends od{static EMAIL_REGEX=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;constructor(e,r,n){super(e,r,n)}setInputType(){let e=`coo-${this.inappElement.t}`;return this.inappHTMLEl.setAttribute("type","email"),this.inappHTMLEl.setAttribute("id",e),e}addListener(e,r){e.addEventListener("keydown",n=>{this.borderColor||(this.borderColor=this.inappHTMLEl.style.borderColor),e.value.match(ad.EMAIL_REGEX)?(X(this.inappHTMLEl,"border-color",this.borderColor),this.triggerContext.updateValidation(r,!0)):(X(this.inappHTMLEl,"border-color","red"),this.triggerContext.updateValidation(r,!1)),n.stopPropagation()})}},sE=class cd extends od{static MOBILE_REGEX=/^\d+$/;constructor(e,r,n){super(e,r,n)}setInputType(){let e=`coo-${this.inappElement.t}`;return this.inappHTMLEl.setAttribute("type","tel"),this.inappHTMLEl.setAttribute("id",e),e}addListener(e,r){e.addEventListener("keydown",n=>{this.borderColor||(this.borderColor=this.inappHTMLEl.style.borderColor),e.value.match(cd.MOBILE_REGEX)?(X(this.inappHTMLEl,"border-color",this.borderColor),this.triggerContext.updateValidation(r,!0)):(X(this.inappHTMLEl,"border-color","red"),this.triggerContext.updateValidation(r,!1)),n.stopPropagation()})}},oE=class extends id{constructor(t,e,r){super(t,e,r)}render(){super.render(),this.inappHTMLEl.setAttribute("id",`coo-${this.inappElement.type}`)}},mc=class Re{static DOCUMENT_STANDARD_MODE="CSS1Compat";static ACTIVE_TRIGGER_DATA;static _instance;safeHTTP;parent;rootContainer;containerHTMLElement;ian;scalingFactor=1;triggerContext;resizeListener;cartDrawerToggleSubscription;constructor(e){Re._instance=this,this.safeHTTP=Vt.getInstance(),this.resizeListener=()=>this.screenResized(),this.setParentContainer(e)}static get(){return Re._instance}render(e){this.renderEngagement(new sr(e))}getScalingFactor(){return this.scalingFactor}calculateScalingFactor(e){let r=e.max,n=e.cont.w,i=e.cont.h,s=e.spc,o=this.getWidth(),c=this.getHeight();r&&(o=o?Math.min(o,r):r,c=c?Math.min(c,r):r),c&&(o-=s.getHorizontal(),c-=s.getVertical(),o/c<n/i?this.scalingFactor=o/n:this.scalingFactor=c/i,this.scalingFactor=Math.min(this.scalingFactor,1))}setParentContainer(e){this.parent=e||document.body,this.parent&&this.isParentNotBody()&&X(this.parent,"position","relative")}isParentNotBody(){return this.parent!==document.body}getWidth(){return this.parent&&this.parent!==document.body?this.parent.clientWidth:document.compatMode===Re.DOCUMENT_STANDARD_MODE?document.documentElement.clientWidth:window.innerWidth}getHeight(){return this.isParentNotBody()?this.parent.clientHeight:document.compatMode===Re.DOCUMENT_STANDARD_MODE?document.documentElement.clientHeight:window.innerHeight}async renderEngagement(e){if(this.triggerContext=new ec(new Date,e),this.triggerContext.onClose(r=>{this.closeInApp(r)}),this.ian=e.ian,(_r()||e.previewType==="mobile")&&this.ian.overrideForMobileView(),this.ian.isEmbedded()){let r=document.querySelector(this.ian.getEmbeddedSelector());this.setParentContainer(r)}await this.preloadImages(e),e.shouldDelay()?window.setTimeout(()=>{this.withCartDrawerClosed()},e.getDelaySeconds()):this.withCartDrawerClosed()}withCartDrawerClosed(){if(!Ee.get().isOpen()||!_r()){this.startRenderingOnce();return}this.cartDrawerToggleSubscription=Ee.get().onToggle().subscribe(({open:e})=>{!e&&this.startRenderingOnce()})}startRenderingOnce(){if(!this.shouldSkipCampaign()){Re.ACTIVE_TRIGGER_DATA=this.triggerContext.triggerData;try{this.startRendering()}catch(e){zt.getInstance().captureError(e,"render-popup",{triggerContext:this.triggerContext});return}this.sendTriggerDisplayed(),_r()||window.addEventListener("resize",this.resizeListener),this.cartDrawerToggleSubscription?.unsubscribe()}}shouldSkipCampaign(){let e=this.triggerContext.triggerData;if(!e.previewType&&Re.ACTIVE_TRIGGER_DATA){let n={triggerShown:new Xa(Re.ACTIVE_TRIGGER_DATA??{})};return this.skipTrigger(e,n),!0}if(kt.get().isGoKwikPopupOpen)return this.skipTrigger(e,{reason:"GoKwik popup is open"}),!0;let r=H.PAYMENT_MODAL_DETAILS.find(n=>!!document.querySelector(n.identifier));return r?(this.skipTrigger(e,{reason:`${r.gateway} modal is open`}),!0):!1}startRendering(){this.calculateScalingFactor(this.ian),this.rootContainer=new tE(this.parent,this.ian,this.triggerContext).render();try{this.renderContainer(this.triggerContext)}catch(e){throw T.error(e),e}}sendTriggerDisplayed(){let e={};this.triggerContext.triggerData.items?.length&&(e.promotedMIDs=this.triggerContext.triggerData.items?.map(i=>i.mID));let r=new jt(H.EVENT_TRIGGER_DISPLAYED,e,this.triggerContext.triggerData);this.safeHTTP.sendEvent(r);let n={action:H.CAMPAIGN_DISPLAYED_ACTIVITY};document.dispatchEvent(new CustomEvent(H.POPUP_ACTIVITY_EVENT,{detail:n}))}sendTriggerClosed(e){let r=e.eventName;delete e.eventName;let n=new jt(r,e,this.triggerContext.triggerData);n.name===H.EVENT_TRIGGER_CLICKED&&(n.items=this.triggerContext.selectedEmbeddedItems??this.triggerContext.triggerData.items?.map(i=>i.toEmbed())),this.safeHTTP.sendEvent(n)}addEnterAnimation(e){this.containerHTMLElement.animate(e.getEnterAnimation(),{duration:500})}renderElement(e,r,n){r instanceof op?new iE(e,r,n).render():r instanceof ap?new sE(e,r,n).render():r instanceof Vo?new Q0(e,r,n).render():r instanceof cp?new oE(e,r,n).render():r instanceof Ha?new id(e,r,n).render():r instanceof rp?new Z0(e,r,n).render():r instanceof ip?new rE(e,r,n).render():r instanceof sp?new nE(e,r,n).render():T.error("Unsupported element type- "+r.type)}renderContainer(e){let r=this.ian?.cont;r&&(this.containerHTMLElement=new eE(this.rootContainer,r,e).render().getHTMLElement(),new Y0().loadAllFonts(this.ian),this.ian.elems?.forEach(async n=>{await this.renderElement(this.containerHTMLElement,n,e)}),this.addEnterAnimation(this.ian.anim))}closeInApp(e){let r=this.ian.anim.getExitAnimation();this.sendTriggerClosed(e),Re.ACTIVE_TRIGGER_DATA=void 0;let n=this.containerHTMLElement.animate(r,{duration:500,easing:"ease-in-out"});n.onfinish=()=>{this.removeInApp(),window.removeEventListener("resize",this.resizeListener)}}screenResized(){this.removeInApp(),this.startRendering()}removeInApp(){let e=document.querySelector(`.${this.triggerContext.rootClassName}`);e&&e.parentElement.removeChild(e)}skipTrigger(e,r){let n=new jt(H.EVENT_CAMPAIGN_REJECTED,r,e);this.safeHTTP.sendEvent(n)}async preloadImages(e){let r=e.ian;if(!r)return;let n=[];r.elems.forEach(i=>{let s=i.bg?.img?.src;if(s&&n.push(this.getPromise(s)),i.t===1){let o=i.src;if(!o)return;n.push(this.getPromise(o))}}),r.bg?.img?.src&&n.push(this.getPromise(r.bg.img.src)),r.cont.bg?.img?.src&&n.push(this.getPromise(r.cont.bg.img.src)),await Promise.all(n)}getPromise(e){return new Promise(r=>{let n=new Image;n.onload=r,n.src=e,n.style.display="none"})}},aE=class{triggerData;safeHttpService=Vt.getInstance();render(t){t.contentSource===ua.KLAVIYO&&(this.triggerData=t,window.addEventListener("klaviyoForms",this.handleKlaviyoEvents.bind(this)),window._klOnsite=window._klOnsite||[],window._klOnsite.push(["openForm",t.klaviyoFormID]))}handleKlaviyoEvents(t){if(t.type!=="klaviyoForms")return;let e=t.detail;if(e.formId!==this.triggerData.klaviyoFormID){T.warn("Received invalid trigger callback");return}switch(e.type){case"open":this.safeHttpService.sendEvent(new jt(H.EVENT_TRIGGER_DISPLAYED,{form:{id:e.formId}},this.triggerData));break;case"stepSubmit":{let r=this.getFormDetails(e);this.safeHttpService.sendEvent(new jt(H.EVENT_FORM_SUBMITTED,{form:r},this.triggerData)),this.safeHttpService.updateProfile(r);break}case"close":window.removeEventListener("klaviyoForms",this.handleKlaviyoEvents.bind(this)),this.safeHttpService.sendEvent(new jt(H.EVENT_TRIGGER_CLOSED,{form:{id:e.formId}},this.triggerData));break}}getFormDetails(t){let e={id:t.formId},r=t.metaData;if(Gn.hasKeys(r)){let n=["email","phone_number","first_name","last_name","$email","$phone_number","$first_name","$last_name"];Object.keys(r).forEach(o=>{n.includes(o)||(e[o]=r[o])}),e.email=r.$email??r.email,e.mobile=r.$phone_number??r.phone_number;let i=r.$first_name??r.first_name,s=r.$last_name??r.last_name;(i?.length||s?.length)&&(e.name=i+" "+s)}return e}},cE=class{static trackIntent(t){if(!this.isInstalled()){T.log("Facebook pixel not installed");return}if(!se.get().pixelPush){T.log("Facebook pixel push not enabled");return}let e=fs[t.intent]?.toLowerCase(),r=t.segmentName;!e&&!r||(T.debug(`Sending ${e} intent and ${r} segment to Facebook Pixel`),window.fbq("trackCustom","CooeeIntent",{intent_value:e,segment_value:t.segmentName}))}static isInstalled(){return window.fbq&&typeof window.fbq=="function"}},vc=class ld{static INSTANCE;httpService=ut.get(Pr);sentryService=ut.get(zt);sessionManager=ut.get(we);runtime=kt.get();constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new ld),this.INSTANCE}sendSilently(e){this.send(e).catch(r=>T.error(`Failed to send ${e.name}`,r))}async send(e){if(T.debug(`Sending event ${e.name}`),Ne.log(`Sending event ${e.name} with id ${e.id}`),this.shouldReject(e)){T.warn(`Rejecting event ${e.name}`);return}await Promise.all([this.addSessionContext(e),this.addShopifyContext(e)]),this.addShopifyAttributes(),e.name!==H.EVENT_APP_BACKGROUND&&this.runtime.setActive(),e.currentItem=this.runtime.getCurrentItem(),e.locale=this.runtime.locale,this.httpService.post("/v1/event/track",e).then(async r=>{T.log("\u2705 Event tracked:",e.name),Ne.log(`\u2705 Event <strong>${r.eventName}</strong> tracked`),this.processEventResponse(e,r)}).catch(r=>{T.error(`Error sending event ${e.name} to server`,r)})}shouldReject(e){return e.trigger?.triggerID==="test"||e.trigger?.triggerID==="preview"?(T.warn("Not sending event as this is a test trigger"),!0):!1}async addSessionContext(e){let r=await this.sessionManager.checkSessionAndGetContext();e.sessionID=r[0],e.sessionNumber=r[1],e.landingPage=r[2],e.page=Ss.parseFromCurrent()}async addShopifyContext(e){try{e.cart=await xt.getCurrent().getNormalisedCart()}catch(r){T.error("Error fetching Shopify cart before sending the event",r)}}processEventResponse(e,r){this.renderWidgetIfAny(e,r).catch(n=>{this.sentryService.captureError(n,"process-popup-response",{extra:{event:e,response:r}})}),this.utiliseIntentIfCalculated(r)}async renderWidgetIfAny(e,r){if(!r.triggerData){T.log(`Nothing to engage after ${e.name}`);return}T.log(`\u{1F4E3} Engagement(id=${r.triggerData.shortID}) will be shown`,r.triggerData),Ne.log(`\u{1F4E3} Campaign #${r.triggerData.shortID}) will be shown`);let n=new sr(r.triggerData);n.occurred=e.occurred;let i;try{i=await Wp.refreshItems(n)}catch(s){T.error("Failed to refresh the products",s);return}if(n.items=i,n.contentSource===ua.KLAVIYO){new aE().render(n);return}new mc().renderEngagement(n).catch(s=>{this.sentryService.captureError(s,"render-popup",{extra:{event:e},engagementTrigger:n})})}utiliseIntentIfCalculated(e){e.intent&&(Fp.trackIntent(e.intent),cE.trackIntent(e),Ne.log(`Intent is <strong>${fs[e.intent]}</strong>`))}addShopifyAttributes(){xt.getCurrent().addCooeeAttributes().catch(e=>{T.error("Fail to add attributes in cart",e)})}},Cs=class{constructor(t){this.triggerContext=t}safeHTTP=Vt.getInstance();eventAPIService=vc.getInstance();async execute(t){let e=kt.get().getCurrentItem(),r=t.clickAction;if(!r)return;let n=t.item,i=this.triggerContext,s=new gc,o=i.triggerData.redirectBehaviour,c=!!i.triggerData.discount?.type&&!!r?.applyDiscount,l={selectedVariants:i.triggerData.nonMutableItems.map(_=>({itemMID:_.mID,mID:_.selectedOrFirstVariant.value.mID,variantID:_.selectedOrFirstVariant.value.mID})),eID:i.triggerData.engagementID,cID:i.triggerData.contentID},p="",g=[],h=[];if(n?h=[n.toEmbed()]:t.embeddedItem&&(h=[t.embeddedItem]),r.at===108){let _=i.selectedItems;if(h=t.embeddedItems??_.map(k=>k.toEmbed()),i.shouldGiveFBTDiscount||t.embeddedItems?.length){let k;t.embeddedItems?k=t.embeddedItems.map(M=>({itemMID:M.mID,mID:M.vID,variantID:M.vID,quantity:M.quantity})):k=_.map(M=>({itemMID:M.mID,mID:M.selectedOrFirstVariant.value.mID,variantID:M.selectedOrFirstVariant.value.mID}));let A=i.triggerData.bundleFrom;i.triggerData.isBundleOnCartDrawer()&&A&&(k.push({itemMID:A.mID,mID:A.selectedOrFirstVariant.value.mID,isPrimary:!0}),h.unshift(A.toEmbed())),l.selectedVariants=k,i.triggerData.isBundleOnPDP()&&l.selectedVariants.forEach(M=>{M.mID===e.vID&&(M.isPrimary=!0)})}else l=void 0;g=t.embeddedItems??_}else if(r.at===107){let _=await xt.getCurrent().getNormalisedCart();h=_.items,l.selectedVariants=_.items.map(k=>({itemMID:k.mID,mID:k.vID}))}else if(r.at===102)g=n?[n]:[t.embeddedItem];else if(r.at===101)p=n?Wi()+"products/"+n.slug:t.embeddedItem?.link;else if(r.at===4){let _=Ah(r.gu?.u);_&&(p=_.href)}else if(r.at===109){let _=await s.upgradeToSubscription(n,i.triggerData);this.triggerContext.triggerData.skipSubscribedItems&&this.triggerContext.renderer.destroy(),Ee.get().refreshUI(_)}else if(r.at===104){let _=this.triggerContext.triggerData.collections?.[0];_&&(p="collections/"+_.handle)}if(this.sendTriggerClicked(h,{from:"button"},t.video),T.debug({redirectPath:p,redirectBehaviour:o,hasDiscount:c}),!c&&p){location.href=p;return}let w,y=!1;try{w=await this.getOrGenerateDiscountCode(l),T.debug("Discount code (if any) to apply",w)}catch(_){if(!this.triggerContext.triggerData.isBYOB()){v_.default.error("Unable to get a discount code",_);return}}if(w&&r.at===103)await s.copyDiscountCode(w);else if(r.at===110){let _=await s.createNewCart(e,w,i.triggerData);_&&(location.href=_);return}try{w&&await Mn.applyWithStorefront([w])}catch(_){T.error(_),y=!0}let b;if(g?.length&&(b=await s.addToCart(g,i.triggerData)),y&&w){Mn.navigate(w,o,p);return}if(p){location.href=p;return}Mn.navigateWithoutDiscount(o,b)}sendTriggerClicked(t,e,r){let n=new jt(H.EVENT_TRIGGER_CLICKED,e,this.triggerContext.triggerData);n.items=t,r?.id&&(n.videos=[r.id]),this.eventAPIService.sendSilently(n)}async getOrGenerateDiscountCode(t){let e=this.triggerContext.triggerData.discount;if(!e?.type)return;let r="";if(e.type===Ue.STATIC){if(!e.code)throw zt.getInstance().captureMessage("No discount code found","warning",{triggerContext:this.triggerContext}),new Error("No discount code found");return e.code}if(t){if(r=await this.generateDiscount(t),!r)throw T.error("No discount code found",t),new Error("Discount code not found or generated");return r}}async generateDiscount(t){try{return(await this.safeHTTP.generateDiscount(t))?.code}catch(e){throw Me("Failed to generate a discount code"),zt.getInstance().captureError(e,"backend-generate-discount",{extra:{discountData:JSON.stringify(t)},triggerContext:this.triggerContext}),e}}},lE=class{eventAPIService;modifications=[];constructor(){this.eventAPIService=ut.get(yc)}execute(t){for(let e of t)e.experimentConfig&&this.executeExperiment(e)&&this.trackExperimentRan(e);if(document.querySelector("#lc-hide-body")?.remove(),!document.body){ut.get(zt).captureMessage("No body element found","error");return}this.setupMutationObserver()}executeExperiment(t){let e=t.experimentConfig?.modifications;return e?.length?e.some(r=>{if(!r.cssSelector)return T.debug("No CSS Selector available",t?.toString()),!1;this.modifications.push(r);let n=Array.from(document.querySelectorAll(r.cssSelector));return n?.length?(this.executeSingleModification(r,n),!0):!1}):(T.log("Nothing to experiment",t.toString()),!1)}executeSingleModification(t,e){if(e?.length)for(let r of e)Object.assign(r.style,t.style),t.type==="TEXT"&&t.text?r.innerHTML=t.text:t.type==="IMAGE"&&this.updateImage(t,r)}trackExperimentRan(t){if(t.id==="preview"){T.warn("Skipping experiment attribution as its preview",t.toString());return}this.eventAPIService.trackExperiment({name:H.EVENT_EXPERIMENT_START,experiment:new Xa(t)}).catch(e=>{T.error("Fail to track experiment",e)})}setupMutationObserver(){new MutationObserver(t=>{t.forEach(e=>{e.addedNodes.forEach(r=>{r instanceof HTMLElement&&this.modifications.forEach(n=>{r.matches&&r.matches(n.cssSelector)?(T.debug("Re-applying experiment",n.toString()),this.executeSingleModification(n,[r])):r.querySelectorAll&&(T.debug("Re-applying experiment",n.toString()),this.executeSingleModification(n,Array.from(r.querySelectorAll(n.cssSelector))))})})})}).observe(document.body,{childList:!0,subtree:!0})}updateImage(t,e){let r=t.image?.lg?.src,n=t.image?.sm?.src;!r&&!n||(e instanceof HTMLPictureElement?this.updatePictureElement({desktop:r,mobile:n},e):this.updateImageElement({desktop:r,mobile:n},e))}updateImageElement(t,e){_r()&&t.mobile?(e.setAttribute("src",t.mobile),e.removeAttribute("srcset")):t.desktop&&(e.setAttribute("src",t.desktop),e.removeAttribute("srcset"))}updatePictureElement(t,e){if(e.innerHTML="",t.mobile){let n=document.createElement("source");n.srcset=t.mobile,n.media="(max-width: 767px)",e.append(n)}if(t.desktop){let n=document.createElement("source");n.srcset=t.desktop,n.media="(min-width: 768px)",e.append(n)}let r=document.createElement("img");r.src=t.desktop??t.mobile??"",e.append(r)}},yc=class ud extends td{static INSTANCE;constructor(){super()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new ud),this.INSTANCE}loadExperimentSilently(){Mt.get(ct.SDK_TOKEN).then(e=>{e?this.loadExperiments().catch(r=>T.error("Unable to initiate experiment",r)):we.replaySubject.subscribe(async()=>{this.loadExperiments().catch(r=>T.error("Unable to initiate experiment",r))})})}async loadExperiments(){if(!this.runtimeData.activeExperiment)return;let e=await this.getWidgetProps();T.log("Load experiments",e),this.httpService.post("/v1/engagement/experiments",e).then(async r=>{let n=r.experiments.map(i=>new sr(i));new lE().execute(n)}).catch(r=>{T.error("Error sending experiment getter",r)})}async trackExperiment(e){await this.addSessionContext(e),await this.httpService.post("/v1/event/experiment",e)}},uE=class{runtimeData=kt.get();widgetAPIService=ut.get(Wn);experimentAPIService=ut.get(yc);meddle(){let t=Tt.globalRef;t.account=t.account??[],t.profile=t.profile??[],t.events=t.events??[],t.page=t.page??[],this.meddlePage(),this.meddleAccount(),this.meddleEvents(),this.meddleProfile(),this.exposeMethods()}exposeMethods(){let t=Tt.globalRef;t.loadPageWidgets=()=>{this.widgetAPIService.loadPageWidgetsSilently()},t.loadCartWidgets=()=>{this.widgetAPIService.loadCartWidgetsSilently()},t.loadExperiments=()=>{this.experimentAPIService.loadExperimentSilently()},t.testCartUpdate=this.testCartUpdate.bind(this),t.previewWidget=Tt.previewWidget.bind(Tt),t.previewPopup=Tt.previewPopup.bind(Tt)}overwritePush(t,e){On(t,"push",e)}meddleAccount(){this.overwritePush(Tt.globalRef.account,(...t)=>{this.processAccount(t[0])}),Tt.globalRef.account.forEach(this.processAccount.bind(this))}meddleEvents(){this.overwritePush(Tt.globalRef.events,(...t)=>{this.processEvent(t[0])}),Tt.globalRef.events.forEach(this.processEvent.bind(this))}meddleProfile(){this.overwritePush(Tt.globalRef.profile,(...t)=>{this.processProfile(t[0])}),Tt.globalRef.profile.forEach(this.processProfile.bind(this))}processAccount(t){t&&(t.appID&&Tt.authenticate(t),t.flags&&ia.setFlags(t.flags))}processEvent(t){t&&(H.JS_LOAD_WHITELIST_EVENTS.includes(t[0])?Tt.sendEvent(t[0],t[1],x({occurred:this.runtimeData.jsLoadTime},t[2])):Tt.sendEvent(t[0],t[1],t[2]))}processProfile(t){t&&Tt.updateProfile(t)}processPageName(t){t&&Tt.setPageName(t)}meddlePage(){this.overwritePush(Tt.globalRef.page,(...t)=>{this.processPage(t[0])}),Tt.globalRef.page.forEach(this.processPage.bind(this))}processPage(t){t.currentItem&&this.runtimeData.setCurrentItem(t.currentItem),t.currency&&(this.runtimeData.currencyCode=t.currency),t.shopCurrency&&(this.runtimeData.shopCurrencyCode=t.shopCurrency),t.moneyFormat&&(this.runtimeData.moneyFormat=t.moneyFormat),t.jsLoad&&(this.runtimeData.jsLoadTime=t.jsLoad),t.locale&&(this.runtimeData.locale=t.locale),t.pageName&&Tt.setPageName(t.pageName),t.activeExperiment&&(this.runtimeData.activeExperiment=t.activeExperiment)}async testCartUpdate(){if(this.runtimeData.pageName!=="product"){window.alert("This feature is only available on a product page");return}let t=window.ShopifyAnalytics?.meta??{},e=t.selectedVariantId;if(e||(t.product?.variants?.length>0&&(e=t.product.variants[0].id),e||(e=this.runtimeData.getCurrentItem()?.vID)),!e){window.alert("Could not find a variant to test. Please try a different product page");return}let r=new sr({id:"preview",shortID:"1",redirectBehaviour:Te.CART_DRAWER});await new Cs(new ec(new Date,r)).execute({clickAction:{at:102},embeddedItem:new Ar({vID:e})})}},vo=class{static SESSION_STORAGE=window.sessionStorage;static SESSION_STORAGE_KEY_PREFIX=H.COOEE.concat("-");static getString(t,e){return this.getItem(t)||e}static setString(t,e){this.setItem(t,e)}static remove(t){this.removeItem(t)}static getItem(t){return this.SESSION_STORAGE.getItem(this.SESSION_STORAGE_KEY_PREFIX.concat(t))}static setItem(t,e){this.SESSION_STORAGE.setItem(this.SESSION_STORAGE_KEY_PREFIX.concat(t),e)}static removeItem(t){this.SESSION_STORAGE.removeItem(this.SESSION_STORAGE_KEY_PREFIX.concat(t))}},yo=class Pi{static INSTANCE;static DEBOUNCE_TIME=1e3;static THRESHOLD=10;safeHttpService=ut.get(Vt);lastPercent=0;_lastScreenOrScroll=new Date;constructor(){}set lastScreenOrScroll(e){this._lastScreenOrScroll=e}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Pi),this.INSTANCE}resetScrollID(e){vo.remove(H.SESSION_STORAGE_SCROLL_ID),this.lastScreenOrScroll=e??new Date}listen(){if(window.scrollY){let e=this.getPercentScrolledY();this.shouldSendScroll(e)&&this.sendScroll(e)}Na(()=>{this.observeWindowScroll()})}observeWindowScroll(){ts(window,"scroll").pipe(ni(Pi.DEBOUNCE_TIME),cc(()=>{let e=this.getPercentScrolledY();if(e>100){T.warn("Received scroll percent is more than 100",e);return}if(this.shouldSendScroll(e))return e})).subscribe(e=>{this.sendScroll(e)})}shouldSendScroll(e){return Math.abs(this.lastPercent-e)>=Pi.THRESHOLD||this.lastPercent!==e&&e===100}sendScroll(e){if(e==null)return;let r={percent:e,timeMS:new Date().getTime()-this._lastScreenOrScroll.getTime()};this.lastPercent=e;let n=vo.getString(H.SESSION_STORAGE_SCROLL_ID,""),i=new jt(H.EVENT_SCROLL,r,null,n);this.safeHttpService.sendEvent(i),vo.setString(H.SESSION_STORAGE_SCROLL_ID,i.id.toHexString()),this._lastScreenOrScroll=new Date(i.occurred)}getPercentScrolledY(){let e=window.document.body.scrollHeight,r=window.innerHeight;return Math.ceil((window.scrollY+r)/e*100)}},hE=class hd{static ACTIVE_DURATION="aDur";static INACTIVE_DURATION="iaDur";apiService=ut.get(Vt);runtimeData=kt.get();listen(){document.onvisibilitychange=()=>{document.visibilityState==="visible"?this.onVisible():document.visibilityState==="hidden"&&this.onHidden()}}async onVisible(){}async onHidden(){let e=await this.runtimeData.setInactive();if(e===0){T.info("Not sending background event as user was inactive on website");return}T.info(`Sending background event with ${e} seconds`);let r={};r[hd.ACTIVE_DURATION]=e,this.apiService.sendEvent(new jt(H.EVENT_APP_BACKGROUND,r))}},pE=class{compareCartItemSubject=new or;constructor(){this.compareCartItemSubject.pipe(ni(100)).subscribe(this.compareCartItems.bind(this))}listen(){this.compareCartItemSubject.next(),this.overwriteXMLHttpRequest(),this.overwriteFetchMethod()}overwriteXMLHttpRequest(){let t=this,e=window.XMLHttpRequest.prototype.send;window.XMLHttpRequest.prototype.send=function(){return this.addEventListener("load",function(){t.performEvent(this._url).catch(r=>T.error("Unable to process cart change in XMLHttpRequest",r))}),e.apply(this,arguments)},T.debug("Securely overwritten window.XMLHttpRequest.send method")}overwriteFetchMethod(){let t=this,e=window.fetch;window.fetch=function(r){return e.apply(window,arguments).then(n=>(t.performEvent(r.toString()).catch(i=>T.error("Unable to process cart change in fetch",i)),n))},T.debug("Securely overwritten window.fetch method")}async performEvent(t){this.isCartManipulationURL(t)&&(kt.get().isCartDirty=!0,this.compareCartItemSubject.next())}isCartManipulationURL(t){return/\/cart\/(add|change|update|clear)/.test(t)}sendChangesAsEvents(t,e){let r=t?.items,n=e.items,i=[],s=[];if(T.debug(`Comparing cart change with old count ${r?.length} to new count ${n.length}`),n?.forEach(o=>{let c=r?.find(l=>l.vID===o.vID);if(c){if(c.quantity!==o.quantity){let l=c.quantity<o.quantity,p=Math.abs(c.quantity-o.quantity),g=lt(x({},o),{quantity:p});l?i.push(g):s.push(g)}r&&tb(r,c)}else i.push(o)}),r)for(let o of r)s.push(o);T.debug(`Cart delta: added: ${i.length}, removed: ${s.length}`),i.length&&this.sendEvent(H.EVENT_ADD_TO_CART,{items:i}),s.length&&t.token===e.token&&this.sendEvent(H.EVENT_REMOVE_FROM_CART,{items:s}),(s.length||i.length)&&hc.get().broadcast(H.CART_UPDATE_BROADCAST,{itemsAdded:i,itemsRemoved:s})}sendEvent(t,e){let r=new jt(t,e);ut.get(Vt).sendEvent(r)}async compareCartItems(){let t=await Mt.get(ct.CURRENT_CART,{}),e=await xt.getCurrent().getNormalisedCart(!0);this.sendChangesAsEvents(t,e)}},dE=class{listen(){return this.overwriteFetchMethod(),this}overwriteFetchMethod(){let t=this,e=window.fetch;window.fetch=async function(r,n){try{await t.modifyRequest(r,n)}catch(i){zt.getInstance().captureError(i,"modify-graphql-request",{extra:{body:JSON.stringify(n?.body)}})}return e(r,n)},T.debug("Securely overwritten window.fetch method for graphql query")}async modifyRequest(t,e){let r=typeof t=="string"?t:t instanceof Request?t.url:"";if(!(r.includes("graphql.json")&&e?.method==="POST")||!e.body)return;let n;if(typeof e.body=="string")try{n=JSON.parse(e.body)}catch{return}else n=e.body;n?.variables?.input&&(T.debug("Intercepted fetch request of:",r),n?.query.includes("cartCreate")&&(e.body=await this.updatedBody(n),this.sendBuyNowEvent()))}async updatedBody(t){let e=t.variables.input.attributes??[],r=await kh();return t.variables.input.attributes=[...e,...r],JSON.stringify(t)}sendBuyNowEvent(){let t=kt.get().getCurrentItem();if(!t)return;let e=new jt(H.EVENT_BUY_NOW_CLICKED,{items:[t]});Vt.getInstance().sendEvent(e)}},pd=class{constructor(t,e){this.selectors=t,this.eventName=e,this.selectorString=t.join(",")}static INSTANCE;elements;selectorString;clickListenerCallback=t=>{let e=t.currentTarget,r=new jt(this.eventName,{class:e.className||void 0,tagName:e.tagName||void 0,id:e.id||void 0});Vt.getInstance().sendEvent(r),this.removeClickListener(this.clickListenerCallback)};listenSilently(){this.listen().catch(t=>T.error(t))}async listen(){this.elements=await Nh(this.selectorString),this.elements.forEach(t=>{t.addEventListener("click",this.clickListenerCallback)})}removeClickListener(t){this.elements?.forEach(e=>{e.removeEventListener("click",t)})}},fE=class oa extends pd{static selectors=[".product__thumbnail-list-inner > button","product-gallery-navigation > button",".product-media--thumb-container",".product-images-inner > img",".m-product-media",".swiper-button-control",".media__thumb",".slick-arrow",".productView-img-container.product-single__media",".product-gallery__thumbnail_item_inner"];constructor(){super(oa.selectors,H.EVENT_ITEM_THUMBNAIL_CLICKED)}static getInstance(){return this.INSTANCE||(this.INSTANCE=new oa),this.INSTANCE}},gE=class aa extends pd{static selectors=[".jdgm-widget.jdgm-preview-badge.jdgm-preview-badge--with-link.jdgm--done-setup","reviewsio-product-ratings",".ruk_rating_snippet.tracked:not(.hidden)","a > .loox-rating",".yotpo-reviews-star-ratings-widget",".yotpo.lp-hero__reviews",".pr-rating > a",".rivyoReviewWidget"];constructor(){super(aa.selectors,H.EVENT_REVIEW_CLICKED)}static getInstance(){return this.INSTANCE||(this.INSTANCE=new aa),this.INSTANCE}},mE=class{selector=[".gokwik-checkout button","button.cart__checkout-button","button.cart__checkout","button#checkout","button#checkout2",'button[id*="checkout" i]','button[name*="checkout" i]','button[class*="checkout" i]'].join(",");listen(){Na(()=>{T.debug("Execution order:","document ready"),this.useLocationHash()})}useLocationHash(){let t=window.location.hash?.substring(1);if(t)if(t.includes(H.HASH_INITIATE_CHECKOUT)){document.dispatchEvent(new Event(H.THIRD_PARTY_CHECKOUT_EVENT));let e=document.querySelector(this.selector);if(!e){T.debug("No clickable cart checkout button found");return}T.debug("Clickable cart checkout button found",e),e.click()}else t.includes(H.HASH_OPEN_CART_DRAWER)&&Ee.get().open()}},ku=class{static attachCheckoutListener(){window.gokwikSdk&&window.gokwikSdk.on("checkout_initiated",async()=>{let t=await xt.getCurrent().getNormalisedCart(),e={via:"GoKwik",items:t.items,cartToken:t.token,amount:{value:t.amount,currency:t.currency}},r=new jt(H.EVENT_CHECKOUT_STARTED,e);Vt.getInstance().sendEvent(r)})}},vE=class{async migrate(){}},Tt=class{static globalRef;static authenticated;static async initForMerchantWebsiteOnly(){window.cooeeSDKPreview||(this.initGlobalReference(),await new vE().migrate(),this.autoAuthenticate(),new uE().meddle(),ut.get(yc).loadExperimentSilently(),new hE().listen(),new pE().listen(),new dE().listen(),new mE().listen(),ut.get(yo).listen(),ut.get(gE).listenSilently(),ut.get(fE).listenSilently(),ut.get(Wn).loadPageWidgetsSilently(),this.attachGoKwikListeners(),this.storePreviewParams(),this.setupPreviewListeners(),Ne.watch())}static async initForAll(){this.injectWidgetAssets()}static initGlobalReference(){window.CooeeSDK||On(window,"CooeeSDK",{}),this.globalRef=window.CooeeSDK,On(this.globalRef,"config",new se),On(this.globalRef,"runtimeData",new kt),On(this.globalRef,"uaParser",new Ke),T.debug("Global reference initialised")}static injectWidgetAssets(){be.injectScriptURL(Ge.widgetURL,"cooee-widget-sdk"),be.injectStylesheet(Ge.styleURL)}static autoAuthenticate(){let t=qb();t&&this.authenticate({shopifyShop:t})}static authenticate(t){if(this.authenticated)return;let e=t.appID?.trim(),r=t.shopifyShop;if((xl(e)||e.length!==24)&&xl(r)){T.warn("Cooee App ID or Shop name is not configured");return}this.authenticated=!0,ut.get(we).init(t)}static sendEvent(t,e,r){let n=new jt(t,e,r?.triggerData);r?.occurred&&(n.occurred=r.occurred),ut.get(Vt).sendEvent(n)}static updateProfile(t){for(let e in t)if(e.toLowerCase().startsWith("ce "))throw new Error("User property name cannot start with 'CE '");ut.get(Vt).updateProfile(t)}static setPageName(t){if(!t)return;let e=kt.get(),r=e.pageName;if(t===r)return;if(e.pageName=t,t==="cart"&&ut.get(Wn).loadOrRenderWidgetsAfterCartChange(),H.BLACKLISTED_PAGE_NAMES.some(s=>t.includes(s))){ut.get(yo).resetScrollID();return}let n={};r&&(n.ps=r);let i=new jt(H.EVENT_SCREEN_VIEW,n);i.occurred=e.jsLoadTime,ut.get(Vt).sendEvent(i),ut.get(yo).resetScrollID(i.occurred)}static previewPopup(t,e){new mc(e).render(t)}static previewWidget(t){new We(new sr(t)).render()}static setupPreviewListeners(){if(window.opener){try{window.opener.postMessage({action:"COOEE_READY_FOR_PREVIEW"},"*")}catch(t){T.error(t)}window.addEventListener("message",t=>{if(T.debug("Received event",t),!t.origin.includes("letscooee.com")&&!t.origin.includes("localhost"))return;let e=t.data;typeof e=="object"&&(e.action==="POPUP_PREVIEW"?(this.previewPopup(e.engagementTrigger),t.source?.postMessage({action:"PREVIEW_SUCCESSFUL"},t.origin)):e.action==="WIDGET_PREVIEW"&&(this.previewWidget(e.engagementTrigger),t.source?.postMessage({action:"PREVIEW_SUCCESSFUL"},t.origin)))})}}static attachGoKwikListeners(){let t=kt.get();window.addEventListener("kp-modal:opened",()=>{t.isGoKwikPopupOpen=!0}),window.addEventListener("user-loggedin",e=>{let{token:r}=e.detail;r&&this.updateProfile({goKwikToken:r})}),window.gokwikSdk?ku.attachCheckoutListener():window.addEventListener("gokwikLoaded",ku.attachCheckoutListener)}static storePreviewParams(){let t=kt.get(),e=new URLSearchParams(location.search),r=e.get("cooee-preview");r&&(t.previewIDs=r.trim().split(",").filter(i=>Number.isInteger(+i)));let n=e.get("cooee-variant");n&&(t.previewVariant=n)}};gf();mf();T.debug("Execution order:","top");window.cooeeShopifyScriptLoaded||(window.cooeeShopifyScriptLoaded=!0,(async()=>(T.debug("Execution order:","IIFE start"),await Tt.initForMerchantWebsiteOnly(),await Tt.initForAll(),T.debug("Execution order:","IIFE end")))());T.debug("Execution order:","bottom");})();
|