@letscooee/web-sdk 14.2.4 → 14.2.5

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 CHANGED
@@ -1,13 +1,13 @@
1
1
  var __require=(x=>typeof require!==`undefined`?require:typeof Proxy!==`undefined`?new Proxy(x,{get:(a,b)=>(typeof require!==`undefined`?require:a)[b]}):x)(function(x){if(typeof require!==`undefined`)return require.apply(this,arguments);throw Error('Calling `require` for "'+x+"\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.")});var k$4=Object.create;var g$1=Object.defineProperty,l$2=Object.defineProperties,m$3=Object.getOwnPropertyDescriptor,n$1=Object.getOwnPropertyDescriptors,o$1=Object.getOwnPropertyNames,f=Object.getOwnPropertySymbols,p$2=Object.getPrototypeOf,h$3=Object.prototype.hasOwnProperty,j$3=Object.prototype.propertyIsEnumerable;var i$1=(a,b,c)=>b in a?g$1(a,b,{enumerable:true,configurable:true,writable:true,value:c}):a[b]=c,r$2=(a,b)=>{for(var c in b||={})h$3.call(b,c)&&i$1(a,c,b[c]);if(f)for(var c of f(b))j$3.call(b,c)&&i$1(a,c,b[c]);return a},s$3=(a,b)=>l$2(a,n$1(b));var t$1=(a=>typeof __require<`u`?__require:typeof Proxy<`u`?new Proxy(a,{get:(b,c)=>(typeof __require<`u`?__require:b)[c]}):a)(function(a){if(typeof __require<`u`)return __require.apply(this,arguments);throw Error(`Dynamic require of "`+a+`" is not supported`)});var u$1=(a,b)=>{var c={};for(var d in a)h$3.call(a,d)&&b.indexOf(d)<0&&(c[d]=a[d]);if(a!=null&&f)for(var d of f(a))b.indexOf(d)<0&&j$3.call(a,d)&&(c[d]=a[d]);return c};var v$2=(a,b)=>()=>(b||a((b={exports:{}}).exports,b),b.exports),w$2=(a,b)=>{for(var c in b)g$1(a,c,{get:b[c],enumerable:true});},q$4=(a,b,c,d)=>{if(b&&typeof b==`object`||typeof b==`function`)for(let e of o$1(b))!h$3.call(a,e)&&e!==c&&g$1(a,e,{get:()=>b[e],enumerable:!(d=m$3(b,e))||d.enumerable});return a};var x$3=(a,b,c)=>(c=a!=null?k$4(p$2(a)):{},q$4(!a||!a.__esModule?g$1(c,`default`,{value:a,enumerable:true}):c,a));
2
2
 
3
- var dt$3=v$2((lt,Fe)=>{(function(s){if(typeof lt==`object`&&typeof Fe<`u`)Fe.exports=s();else if(typeof define==`function`&&define.amd)define([],s);else {var n;typeof window<`u`?n=window:typeof global<`u`?n=global:typeof self<`u`?n=self:n=this,n.localforage=s();}})(function(){return (function u(v,I,w){function R(T,M){if(!I[T]){if(!v[T]){var p=typeof t$1==`function`&&t$1;if(!M&&p)return p(T,true);if(b)return b(T,true);var _=new Error(`Cannot find module '`+T+`'`);throw _.code=`MODULE_NOT_FOUND`,_}var C=I[T]={exports:{}};v[T][0].call(C.exports,function(O){var j=v[T][1][O];return R(j||O)},C,C.exports,u,v,I,w);}return I[T].exports}for(var b=typeof t$1==`function`&&t$1,m=0;m<w.length;m++)R(w[m]);return R})({1:[function(u,v,I){(function(w){var R=w.MutationObserver||w.WebKitMutationObserver,b;if(R){var m=0,T=new R(O),M=w.document.createTextNode(``);T.observe(M,{characterData:true}),b=function(){M.data=m=++m%2;};}else if(!w.setImmediate&&typeof w.MessageChannel<`u`){var p=new w.MessageChannel;p.port1.onmessage=O,b=function(){p.port2.postMessage(0);};}else `document`in w&&`onreadystatechange`in w.document.createElement(`script`)?b=function(){var B=w.document.createElement(`script`);B.onreadystatechange=function(){O(),B.onreadystatechange=null,B.parentNode.removeChild(B),B=null;},w.document.documentElement.appendChild(B);}:b=function(){setTimeout(O,0);};var _,C=[];function O(){_=true;for(var B,z,F=C.length;F;){for(z=C,C=[],B=-1;++B<F;)z[B]();F=C.length;}_=false;}v.exports=j;function j(B){C.push(B)===1&&!_&&b();}}).call(this,typeof global<`u`?global:typeof self<`u`?self:typeof window<`u`?window:{});},{}],2:[function(u,v,I){var w=u(1);function R(){}var b={},m=[`REJECTED`],T=[`FULFILLED`],M=[`PENDING`];v.exports=p;function p(y){if(typeof y!=`function`)throw new TypeError(`resolver must be a function`);this.state=M,this.queue=[],this.outcome=void 0,y!==R&&j(this,y);}p.prototype.catch=function(y){return this.then(null,y)},p.prototype.then=function(y,A){if(typeof y!=`function`&&this.state===T||typeof A!=`function`&&this.state===m)return this;var D=new this.constructor(R);if(this.state!==M)C(D,this.state===T?y:A,this.outcome);else this.queue.push(new _(D,y,A));return D};function _(y,A,D){this.promise=y,typeof A==`function`&&(this.onFulfilled=A,this.callFulfilled=this.otherCallFulfilled),typeof D==`function`&&(this.onRejected=D,this.callRejected=this.otherCallRejected);}_.prototype.callFulfilled=function(y){b.resolve(this.promise,y);},_.prototype.otherCallFulfilled=function(y){C(this.promise,this.onFulfilled,y);},_.prototype.callRejected=function(y){b.reject(this.promise,y);},_.prototype.otherCallRejected=function(y){C(this.promise,this.onRejected,y);};function C(y,A,D){w(function(){var L;try{L=A(D);}catch(U){return b.reject(y,U)}L===y?b.reject(y,new TypeError(`Cannot resolve promise with itself`)):b.resolve(y,L);});}b.resolve=function(y,A){var D=B(O,A);if(D.status===`error`)return b.reject(y,D.value);var L=D.value;if(L)j(y,L);else {y.state=T,y.outcome=A;for(var U=-1,k=y.queue.length;++U<k;)y.queue[U].callFulfilled(A);}return y},b.reject=function(y,A){y.state=m,y.outcome=A;for(var D=-1,L=y.queue.length;++D<L;)y.queue[D].callRejected(A);return y};function O(y){var A=y&&y.then;if(y&&(typeof y==`object`||typeof y==`function`)&&typeof A==`function`)return function(){A.apply(y,arguments);}}function j(y,A){var D=false;function L(G){D||(D=true,b.reject(y,G));}function U(G){D||(D=true,b.resolve(y,G));}function k(){A(U,L);}var $=B(k);$.status===`error`&&L($.value);}function B(y,A){var D={};try{D.value=y(A),D.status=`success`;}catch(L){D.status=`error`,D.value=L;}return D}p.resolve=z;function z(y){return y instanceof this?y:b.resolve(new this(R),y)}p.reject=F;function F(y){var A=new this(R);return b.reject(A,y)}p.all=Ie;function Ie(y){var A=this;if(Object.prototype.toString.call(y)!==`[object Array]`)return this.reject(new TypeError(`must be an array`));var D=y.length,L=false;if(!D)return this.resolve([]);for(var U=new Array(D),k=0,$=-1,G=new this(R);++$<D;)q(y[$],$);return G;function q(oe,le){A.resolve(oe).then(Se,function(ee){L||(L=true,b.reject(G,ee));});function Se(ee){U[le]=ee,++k===D&&!L&&(L=true,b.resolve(G,U));}}}p.race=Z;function Z(y){var A=this;if(Object.prototype.toString.call(y)!==`[object Array]`)return this.reject(new TypeError(`must be an array`));var D=y.length,L=false;if(!D)return this.resolve([]);for(var U=-1,k=new this(R);++U<D;)$(y[U]);return k;function $(G){A.resolve(G).then(function(q){L||(L=true,b.resolve(k,q));},function(q){L||(L=true,b.reject(k,q));});}}},{1:1}],3:[function(u,v,I){(function(w){typeof w.Promise!=`function`&&(w.Promise=u(2));}).call(this,typeof global<`u`?global:typeof self<`u`?self:typeof window<`u`?window:{});},{2:2}],4:[function(u,v,I){var w=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e};function R(e,r){if(!(e instanceof r))throw new TypeError(`Cannot call a class as a function`)}function b(){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 m=b();function T(){try{if(!m||!m.open)return !1;var e=typeof openDatabase<`u`&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),r=typeof fetch==`function`&&fetch.toString().indexOf(`[native code`)!==-1;return (!e||r)&&typeof indexedDB<`u`&&typeof IDBKeyRange<`u`}catch{return false}}function M(e,r){e=e||[],r=r||{};try{return new Blob(e,r)}catch(o){if(o.name!==`TypeError`)throw o;for(var i=new(typeof BlobBuilder<`u`?BlobBuilder:typeof MSBlobBuilder<`u`?MSBlobBuilder:typeof MozBlobBuilder<`u`?MozBlobBuilder:WebKitBlobBuilder),a=0;a<e.length;a+=1)i.append(e[a]);return i.getBlob(r.type)}}typeof Promise>`u`&&u(3);var p=Promise;function _(e,r){r&&e.then(function(t){r(null,t);},function(t){r(t);});}function C(e,r,t){typeof r==`function`&&e.then(r),typeof t==`function`&&e.catch(t);}function O(e){return typeof e!=`string`&&(console.warn(e+` used as a key, but it is not a string.`),e=String(e)),e}function j(){if(arguments.length&&typeof arguments[arguments.length-1]==`function`)return arguments[arguments.length-1]}var B=`local-forage-detect-blob-support`,z=void 0,F={},Ie=Object.prototype.toString,Z=`readonly`,y=`readwrite`;function A(e){for(var r=e.length,t=new ArrayBuffer(r),i=new Uint8Array(t),a=0;a<r;a++)i[a]=e.charCodeAt(a);return t}function D(e){return new p(function(r){var t=e.transaction(B,y),i=M([``]);t.objectStore(B).put(i,`key`),t.onabort=function(a){a.preventDefault(),a.stopPropagation(),r(false);},t.oncomplete=function(){var a=navigator.userAgent.match(/Chrome\/(\d+)/);r(navigator.userAgent.match(/Edge\//)||!a||parseInt(a[1],10)>=43);};}).catch(function(){return false})}function L(e){return typeof z==`boolean`?p.resolve(z):D(e).then(function(r){return z=r,z})}function U(e){var r=F[e.name],t={};t.promise=new p(function(i,a){t.resolve=i,t.reject=a;}),r.deferredOperations.push(t),r.dbReady?r.dbReady=r.dbReady.then(function(){return t.promise}):r.dbReady=t.promise;}function k(e){var t=F[e.name].deferredOperations.pop();if(t)return t.resolve(),t.promise}function $(e,r){var i=F[e.name].deferredOperations.pop();if(i)return i.reject(r),i.promise}function G(e,r){return new p(function(t,i){if(F[e.name]=F[e.name]||$e(),e.db)if(r)U(e),e.db.close();else return t(e.db);var a=[e.name];r&&a.push(e.version);var o=m.open.apply(m,a);r&&(o.onupgradeneeded=function(c){var f=o.result;try{f.createObjectStore(e.storeName),c.oldVersion<=1&&f.createObjectStore(B);}catch(l){if(l.name===`ConstraintError`)console.warn(`The database "`+e.name+`" has been upgraded from version `+c.oldVersion+` to version `+c.newVersion+`, but the storage "`+e.storeName+`" already exists.`);else throw l}}),o.onerror=function(c){c.preventDefault(),i(o.error);},o.onsuccess=function(){var c=o.result;c.onversionchange=function(f){f.target.close();},t(c),k(e);};})}function q(e){return G(e,false)}function oe(e){return G(e,true)}function le(e,r){if(!e.db)return true;var t=!e.db.objectStoreNames.contains(e.storeName),i=e.version<e.db.version,a=e.version>e.db.version;if(i&&(e.version!==r&&console.warn(`The database "`+e.name+`" can't be downgraded from version `+e.db.version+` to version `+e.version+`.`),e.version=e.db.version),a||t){if(t){var o=e.db.version+1;o>e.version&&(e.version=o);}return true}return false}function Se(e){return new p(function(r,t){var i=new FileReader;i.onerror=t,i.onloadend=function(a){r({__local_forage_encoded_blob:true,data:btoa(a.target.result||``),type:e.type});},i.readAsBinaryString(e);})}function ee(e){return M([A(atob(e.data))],{type:e.type})}function We(e){return e&&e.__local_forage_encoded_blob}function Rt(e){var r=this,t=r._initReady().then(function(){var i=F[r._dbInfo.name];if(i&&i.dbReady)return i.dbReady});return C(t,e,e),t}function Ct(e){U(e);for(var r=F[e.name],t=r.forages,i=0;i<t.length;i++){var a=t[i];a._dbInfo.db&&(a._dbInfo.db.close(),a._dbInfo.db=null);}return e.db=null,q(e).then(function(o){return e.db=o,le(e)?oe(e):o}).then(function(o){e.db=r.db=o;for(var c=0;c<t.length;c++)t[c]._dbInfo.db=o;}).catch(function(o){throw $(e,o),o})}function K(e,r,t,i){i===void 0&&(i=1);try{t(null,e.db.transaction(e.storeName,r));}catch(o){if(i>0&&(!e.db||o.name===`InvalidStateError`||o.name===`NotFoundError`))return p.resolve().then(function(){if(!e.db||o.name===`NotFoundError`&&!e.db.objectStoreNames.contains(e.storeName)&&e.version<=e.db.version)return e.db&&(e.version=e.db.version+1),oe(e)}).then(function(){return Ct(e).then(function(){K(e,r,t,i-1);})}).catch(t);t(o);}}function $e(){return {forages:[],db:null,dbReady:null,deferredOperations:[]}}function At(e){var r=this,t={db:null};if(e)for(var i in e)t[i]=e[i];var a=F[t.name];a||(a=$e(),F[t.name]=a),a.forages.push(r),r._initReady||(r._initReady=r.ready,r.ready=Rt);var o=[];function c(){return p.resolve()}for(var f=0;f<a.forages.length;f++){var l=a.forages[f];l!==r&&o.push(l._initReady().catch(c));}var d=a.forages.slice(0);return p.all(o).then(function(){return t.db=a.db,q(t)}).then(function(g){return t.db=g,le(t,r._defaultConfig.version)?oe(t):g}).then(function(g){t.db=a.db=g,r._dbInfo=t;for(var E=0;E<d.length;E++){var S=d[E];S!==r&&(S._dbInfo.db=t.db,S._dbInfo.version=t.version);}})}function xt(e,r){var t=this;e=O(e);var i=new p(function(a,o){t.ready().then(function(){K(t._dbInfo,Z,function(c,f){if(c)return o(c);try{var d=f.objectStore(t._dbInfo.storeName).get(e);d.onsuccess=function(){var g=d.result;g===void 0&&(g=null),We(g)&&(g=ee(g)),a(g);},d.onerror=function(){o(d.error);};}catch(g){o(g);}});}).catch(o);});return _(i,r),i}function Nt(e,r){var t=this,i=new p(function(a,o){t.ready().then(function(){K(t._dbInfo,Z,function(c,f){if(c)return o(c);try{var d=f.objectStore(t._dbInfo.storeName).openCursor(),g=1;d.onsuccess=function(){var E=d.result;if(E){var S=E.value;We(S)&&(S=ee(S));var x=e(S,E.key,g++);x!==void 0?a(x):E.continue();}else a();},d.onerror=function(){o(d.error);};}catch(E){o(E);}});}).catch(o);});return _(i,r),i}function Lt(e,r,t){var i=this;e=O(e);var a=new p(function(o,c){var f;i.ready().then(function(){return f=i._dbInfo,Ie.call(r)===`[object Blob]`?L(f.db).then(function(l){return l?r:Se(r)}):r}).then(function(l){K(i._dbInfo,y,function(d,g){if(d)return c(d);try{var E=g.objectStore(i._dbInfo.storeName);l===null&&(l=void 0);var S=E.put(l,e);g.oncomplete=function(){l===void 0&&(l=null),o(l);},g.onabort=g.onerror=function(){c(S.error?S.error:S.transaction.error);};}catch(x){c(x);}});}).catch(c);});return _(a,t),a}function Ot(e,r){var t=this;e=O(e);var i=new p(function(a,o){t.ready().then(function(){K(t._dbInfo,y,function(c,f){if(c)return o(c);try{var d=f.objectStore(t._dbInfo.storeName).delete(e);f.oncomplete=function(){a();},f.onerror=function(){o(d.error);},f.onabort=function(){o(d.error?d.error:d.transaction.error);};}catch(g){o(g);}});}).catch(o);});return _(i,r),i}function Pt(e){var r=this,t=new p(function(i,a){r.ready().then(function(){K(r._dbInfo,y,function(o,c){if(o)return a(o);try{var l=c.objectStore(r._dbInfo.storeName).clear();c.oncomplete=function(){i();},c.onabort=c.onerror=function(){a(l.error?l.error:l.transaction.error);};}catch(d){a(d);}});}).catch(a);});return _(t,e),t}function Mt(e){var r=this,t=new p(function(i,a){r.ready().then(function(){K(r._dbInfo,Z,function(o,c){if(o)return a(o);try{var l=c.objectStore(r._dbInfo.storeName).count();l.onsuccess=function(){i(l.result);},l.onerror=function(){a(l.error);};}catch(d){a(d);}});}).catch(a);});return _(t,e),t}function Vt(e,r){var t=this,i=new p(function(a,o){if(e<0){a(null);return}t.ready().then(function(){K(t._dbInfo,Z,function(c,f){if(c)return o(c);try{var l=f.objectStore(t._dbInfo.storeName),d=!1,g=l.openKeyCursor();g.onsuccess=function(){var E=g.result;if(!E){a(null);return}e===0||d?a(E.key):(d=!0,E.advance(e));},g.onerror=function(){o(g.error);};}catch(E){o(E);}});}).catch(o);});return _(i,r),i}function Bt(e){var r=this,t=new p(function(i,a){r.ready().then(function(){K(r._dbInfo,Z,function(o,c){if(o)return a(o);try{var l=c.objectStore(r._dbInfo.storeName).openKeyCursor(),d=[];l.onsuccess=function(){var g=l.result;if(!g){i(d);return}d.push(g.key),g.continue();},l.onerror=function(){a(l.error);};}catch(g){a(g);}});}).catch(a);});return _(t,e),t}function Ft(e,r){r=j.apply(this,arguments);var t=this.config();e=typeof e!=`function`&&e||{},e.name||(e.name=e.name||t.name,e.storeName=e.storeName||t.storeName);var i=this,a;if(!e.name)a=p.reject(`Invalid arguments`);else {var c=e.name===t.name&&i._dbInfo.db?p.resolve(i._dbInfo.db):q(e).then(function(f){var l=F[e.name],d=l.forages;l.db=f;for(var g=0;g<d.length;g++)d[g]._dbInfo.db=f;return f});e.storeName?a=c.then(function(f){if(f.objectStoreNames.contains(e.storeName)){var l=f.version+1;U(e);var d=F[e.name],g=d.forages;f.close();for(var E=0;E<g.length;E++){var S=g[E];S._dbInfo.db=null,S._dbInfo.version=l;}return new p(function(N,V){var P=m.open(e.name,l);P.onerror=function(H){P.result.close(),V(H);},P.onupgradeneeded=function(){P.result.deleteObjectStore(e.storeName);},P.onsuccess=function(){var H=P.result;H.close(),N(H);};}).then(function(N){d.db=N;for(var V=0;V<g.length;V++){var P=g[V];P._dbInfo.db=N,k(P._dbInfo);}}).catch(function(N){throw ($(e,N)||p.resolve()).catch(function(){}),N})}}):a=c.then(function(f){U(e);var l=F[e.name],d=l.forages;f.close();for(var g=0;g<d.length;g++){var E=d[g];E._dbInfo.db=null;}return new p(function(x,N){var V=m.deleteDatabase(e.name);V.onerror=function(){var P=V.result;P&&P.close(),N(V.error);},V.onblocked=function(){console.warn(`dropInstance blocked for database "`+e.name+`" until all open connections are closed`);},V.onsuccess=function(){var P=V.result;P&&P.close(),x(P);};}).then(function(x){l.db=x;for(var N=0;N<d.length;N++){var V=d[N];k(V._dbInfo);}}).catch(function(x){throw ($(e,x)||p.resolve()).catch(function(){}),x})});}return _(a,r),a}var Ut={_driver:`asyncStorage`,_initStorage:At,_support:T(),iterate:Nt,getItem:xt,setItem:Lt,removeItem:Ot,clear:Pt,length:Mt,key:Vt,keys:Bt,dropInstance:Ft};function kt(){return typeof openDatabase==`function`}var X=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,Wt=`~~local_forage_type~`,Ge=/^~~local_forage_type~([^~]+)~/,de=`__lfsc__:`,De=de.length,Re=`arbf`,Ce=`blob`,He=`si08`,Ye=`ui08`,je=`uic8`,ze=`si16`,qe=`si32`,Ke=`ur16`,Xe=`ui32`,Je=`fl32`,Qe=`fl64`,Ze=De+Re.length,et=Object.prototype.toString;function tt(e){var r=e.length*.75,t=e.length,i,a=0,o,c,f,l;e[e.length-1]===`=`&&(r--,e[e.length-2]===`=`&&r--);var d=new ArrayBuffer(r),g=new Uint8Array(d);for(i=0;i<t;i+=4)o=X.indexOf(e[i]),c=X.indexOf(e[i+1]),f=X.indexOf(e[i+2]),l=X.indexOf(e[i+3]),g[a++]=o<<2|c>>4,g[a++]=(c&15)<<4|f>>2,g[a++]=(f&3)<<6|l&63;return d}function Ae(e){var r=new Uint8Array(e),t=``,i;for(i=0;i<r.length;i+=3)t+=X[r[i]>>2],t+=X[(r[i]&3)<<4|r[i+1]>>4],t+=X[(r[i+1]&15)<<2|r[i+2]>>6],t+=X[r[i+2]&63];return r.length%3===2?t=t.substring(0,t.length-1)+`=`:r.length%3===1&&(t=t.substring(0,t.length-2)+`==`),t}function $t(e,r){var t=``;if(e&&(t=et.call(e)),e&&(t===`[object ArrayBuffer]`||e.buffer&&et.call(e.buffer)===`[object ArrayBuffer]`)){var i,a=de;e instanceof ArrayBuffer?(i=e,a+=Re):(i=e.buffer,t===`[object Int8Array]`?a+=He:t===`[object Uint8Array]`?a+=Ye:t===`[object Uint8ClampedArray]`?a+=je:t===`[object Int16Array]`?a+=ze:t===`[object Uint16Array]`?a+=Ke:t===`[object Int32Array]`?a+=qe:t===`[object Uint32Array]`?a+=Xe:t===`[object Float32Array]`?a+=Je:t===`[object Float64Array]`?a+=Qe:r(new Error(`Failed to get type for BinaryArray`))),r(a+Ae(i));}else if(t===`[object Blob]`){var o=new FileReader;o.onload=function(){var c=Wt+e.type+`~`+Ae(this.result);r(de+Ce+c);},o.readAsArrayBuffer(e);}else try{r(JSON.stringify(e));}catch(c){console.error(`Couldn't convert value into a JSON string: `,e),r(null,c);}}function Gt(e){if(e.substring(0,De)!==de)return JSON.parse(e);var r=e.substring(Ze),t=e.substring(De,Ze),i;if(t===Ce&&Ge.test(r)){var a=r.match(Ge);i=a[1],r=r.substring(a[0].length);}var o=tt(r);switch(t){case Re:return o;case Ce:return M([o],{type:i});case He:return new Int8Array(o);case Ye:return new Uint8Array(o);case je:return new Uint8ClampedArray(o);case ze:return new Int16Array(o);case Ke:return new Uint16Array(o);case qe:return new Int32Array(o);case Xe:return new Uint32Array(o);case Je:return new Float32Array(o);case Qe:return new Float64Array(o);default:throw new Error(`Unkown type: `+t)}}var xe={serialize:$t,deserialize:Gt,stringToBuffer:tt,bufferToString:Ae};function rt(e,r,t,i){e.executeSql(`CREATE TABLE IF NOT EXISTS `+r.storeName+` (id INTEGER PRIMARY KEY, key unique, value)`,[],t,i);}function Ht(e){var r=this,t={db:null};if(e)for(var i in e)t[i]=typeof e[i]!=`string`?e[i].toString():e[i];var a=new p(function(o,c){try{t.db=openDatabase(t.name,String(t.version),t.description,t.size);}catch(f){return c(f)}t.db.transaction(function(f){rt(f,t,function(){r._dbInfo=t,o();},function(l,d){c(d);});},c);});return t.serializer=xe,a}function J(e,r,t,i,a,o){e.executeSql(t,i,a,function(c,f){f.code===f.SYNTAX_ERR?c.executeSql(`SELECT name FROM sqlite_master WHERE type='table' AND name = ?`,[r.storeName],function(l,d){d.rows.length?o(l,f):rt(l,r,function(){l.executeSql(t,i,a,o);},o);},o):o(c,f);},o);}function Yt(e,r){var t=this;e=O(e);var i=new p(function(a,o){t.ready().then(function(){var c=t._dbInfo;c.db.transaction(function(f){J(f,c,`SELECT * FROM `+c.storeName+` WHERE key = ? LIMIT 1`,[e],function(l,d){var g=d.rows.length?d.rows.item(0).value:null;g&&(g=c.serializer.deserialize(g)),a(g);},function(l,d){o(d);});});}).catch(o);});return _(i,r),i}function jt(e,r){var t=this,i=new p(function(a,o){t.ready().then(function(){var c=t._dbInfo;c.db.transaction(function(f){J(f,c,`SELECT * FROM `+c.storeName,[],function(l,d){for(var g=d.rows,E=g.length,S=0;S<E;S++){var x=g.item(S),N=x.value;if(N&&(N=c.serializer.deserialize(N)),N=e(N,x.key,S+1),N!==void 0){a(N);return}}a();},function(l,d){o(d);});});}).catch(o);});return _(i,r),i}function nt(e,r,t,i){var a=this;e=O(e);var o=new p(function(c,f){a.ready().then(function(){r===void 0&&(r=null);var l=r,d=a._dbInfo;d.serializer.serialize(r,function(g,E){E?f(E):d.db.transaction(function(S){J(S,d,`INSERT OR REPLACE INTO `+d.storeName+` (key, value) VALUES (?, ?)`,[e,g],function(){c(l);},function(x,N){f(N);});},function(S){if(S.code===S.QUOTA_ERR){if(i>0){c(nt.apply(a,[e,l,t,i-1]));return}f(S);}});});}).catch(f);});return _(o,t),o}function zt(e,r,t){return nt.apply(this,[e,r,t,1])}function qt(e,r){var t=this;e=O(e);var i=new p(function(a,o){t.ready().then(function(){var c=t._dbInfo;c.db.transaction(function(f){J(f,c,`DELETE FROM `+c.storeName+` WHERE key = ?`,[e],function(){a();},function(l,d){o(d);});});}).catch(o);});return _(i,r),i}function Kt(e){var r=this,t=new p(function(i,a){r.ready().then(function(){var o=r._dbInfo;o.db.transaction(function(c){J(c,o,`DELETE FROM `+o.storeName,[],function(){i();},function(f,l){a(l);});});}).catch(a);});return _(t,e),t}function Xt(e){var r=this,t=new p(function(i,a){r.ready().then(function(){var o=r._dbInfo;o.db.transaction(function(c){J(c,o,`SELECT COUNT(key) as c FROM `+o.storeName,[],function(f,l){var d=l.rows.item(0).c;i(d);},function(f,l){a(l);});});}).catch(a);});return _(t,e),t}function Jt(e,r){var t=this,i=new p(function(a,o){t.ready().then(function(){var c=t._dbInfo;c.db.transaction(function(f){J(f,c,`SELECT key FROM `+c.storeName+` WHERE id = ? LIMIT 1`,[e+1],function(l,d){a(d.rows.length?d.rows.item(0).key:null);},function(l,d){o(d);});});}).catch(o);});return _(i,r),i}function Qt(e){var r=this,t=new p(function(i,a){r.ready().then(function(){var o=r._dbInfo;o.db.transaction(function(c){J(c,o,`SELECT key FROM `+o.storeName,[],function(f,l){for(var d=[],g=0;g<l.rows.length;g++)d.push(l.rows.item(g).key);i(d);},function(f,l){a(l);});});}).catch(a);});return _(t,e),t}function Zt(e){return new p(function(r,t){e.transaction(function(i){i.executeSql(`SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'`,[],function(a,o){for(var c=[],f=0;f<o.rows.length;f++)c.push(o.rows.item(f).name);r({db:e,storeNames:c});},function(a,o){t(o);});},function(i){t(i);});})}function er(e,r){r=j.apply(this,arguments);var t=this.config();e=typeof e!=`function`&&e||{},e.name||(e.name=e.name||t.name,e.storeName=e.storeName||t.storeName);var i=this,a;return e.name?a=new p(function(o){var c;e.name===t.name?c=i._dbInfo.db:c=openDatabase(e.name,``,``,0),e.storeName?o({db:c,storeNames:[e.storeName]}):o(Zt(c));}).then(function(o){return new p(function(c,f){o.db.transaction(function(l){function d(x){return new p(function(N,V){l.executeSql(`DROP TABLE IF EXISTS `+x,[],function(){N();},function(P,H){V(H);});})}for(var g=[],E=0,S=o.storeNames.length;E<S;E++)g.push(d(o.storeNames[E]));p.all(g).then(function(){c();}).catch(function(x){f(x);});},function(l){f(l);});})}):a=p.reject(`Invalid arguments`),_(a,r),a}var tr={_driver:`webSQLStorage`,_initStorage:Ht,_support:kt(),iterate:jt,getItem:Yt,setItem:zt,removeItem:qt,clear:Kt,length:Xt,key:Jt,keys:Qt,dropInstance:er};function rr(){try{return typeof localStorage<`u`&&`setItem`in localStorage&&!!localStorage.setItem}catch{return false}}function ot(e,r){var t=e.name+`/`;return e.storeName!==r.storeName&&(t+=e.storeName+`/`),t}function nr(){var e=`_localforage_support_test`;try{return localStorage.setItem(e,!0),localStorage.removeItem(e),!1}catch{return true}}function or(){return !nr()||localStorage.length>0}function ir(e){var r=this,t={};if(e)for(var i in e)t[i]=e[i];return t.keyPrefix=ot(e,r._defaultConfig),or()?(r._dbInfo=t,t.serializer=xe,p.resolve()):p.reject()}function ar(e){var r=this,t=r.ready().then(function(){for(var i=r._dbInfo.keyPrefix,a=localStorage.length-1;a>=0;a--){var o=localStorage.key(a);o.indexOf(i)===0&&localStorage.removeItem(o);}});return _(t,e),t}function sr(e,r){var t=this;e=O(e);var i=t.ready().then(function(){var a=t._dbInfo,o=localStorage.getItem(a.keyPrefix+e);return o&&(o=a.serializer.deserialize(o)),o});return _(i,r),i}function ur(e,r){var t=this,i=t.ready().then(function(){for(var a=t._dbInfo,o=a.keyPrefix,c=o.length,f=localStorage.length,l=1,d=0;d<f;d++){var g=localStorage.key(d);if(g.indexOf(o)===0){var E=localStorage.getItem(g);if(E&&(E=a.serializer.deserialize(E)),E=e(E,g.substring(c),l++),E!==void 0)return E}}});return _(i,r),i}function cr(e,r){var t=this,i=t.ready().then(function(){var a=t._dbInfo,o;try{o=localStorage.key(e);}catch{o=null;}return o&&(o=o.substring(a.keyPrefix.length)),o});return _(i,r),i}function fr(e){var r=this,t=r.ready().then(function(){for(var i=r._dbInfo,a=localStorage.length,o=[],c=0;c<a;c++){var f=localStorage.key(c);f.indexOf(i.keyPrefix)===0&&o.push(f.substring(i.keyPrefix.length));}return o});return _(t,e),t}function lr(e){var t=this.keys().then(function(i){return i.length});return _(t,e),t}function dr(e,r){var t=this;e=O(e);var i=t.ready().then(function(){var a=t._dbInfo;localStorage.removeItem(a.keyPrefix+e);});return _(i,r),i}function mr(e,r,t){var i=this;e=O(e);var a=i.ready().then(function(){r===void 0&&(r=null);var o=r;return new p(function(c,f){var l=i._dbInfo;l.serializer.serialize(r,function(d,g){if(g)f(g);else try{localStorage.setItem(l.keyPrefix+e,d),c(o);}catch(E){(E.name===`QuotaExceededError`||E.name===`NS_ERROR_DOM_QUOTA_REACHED`)&&f(E),f(E);}});})});return _(a,t),a}function gr(e,r){if(r=j.apply(this,arguments),e=typeof e!=`function`&&e||{},!e.name){var t=this.config();e.name=e.name||t.name,e.storeName=e.storeName||t.storeName;}var i=this,a;return e.name?a=new p(function(o){e.storeName?o(ot(e,i._defaultConfig)):o(e.name+`/`);}).then(function(o){for(var c=localStorage.length-1;c>=0;c--){var f=localStorage.key(c);f.indexOf(o)===0&&localStorage.removeItem(f);}}):a=p.reject(`Invalid arguments`),_(a,r),a}var pr={_driver:`localStorageWrapper`,_initStorage:ir,_support:rr(),iterate:ur,getItem:sr,setItem:mr,removeItem:dr,clear:ar,length:lr,key:cr,keys:fr,dropInstance:gr},hr=function(r,t){return r===t||typeof r==`number`&&typeof t==`number`&&isNaN(r)&&isNaN(t)},vr=function(r,t){for(var i=r.length,a=0;a<i;){if(hr(r[a],t))return true;a++;}return false},it=Array.isArray||function(e){return Object.prototype.toString.call(e)===`[object Array]`},ie={},at={},te={INDEXEDDB:Ut,WEBSQL:tr,LOCALSTORAGE:pr},yr=[te.INDEXEDDB._driver,te.WEBSQL._driver,te.LOCALSTORAGE._driver],me=[`dropInstance`],Ne=[`clear`,`getItem`,`iterate`,`key`,`keys`,`length`,`removeItem`,`setItem`].concat(me),Er={description:``,driver:yr.slice(),name:`localforage`,size:4980736,storeName:`keyvaluepairs`,version:1};function _r(e,r){e[r]=function(){var t=arguments;return e.ready().then(function(){return e[r].apply(e,t)})};}function Le(){for(var e=1;e<arguments.length;e++){var r=arguments[e];if(r)for(var t in r)r.hasOwnProperty(t)&&(it(r[t])?arguments[0][t]=r[t].slice():arguments[0][t]=r[t]);}return arguments[0]}v.exports=new((function(){function e(r){R(this,e);for(var t in te)if(te.hasOwnProperty(t)){var i=te[t],a=i._driver;this[t]=a,ie[a]||this.defineDriver(i);}this._defaultConfig=Le({},Er),this._config=Le({},this._defaultConfig,r),this._driverSet=null,this._initDriver=null,this._ready=false,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){});}return e.prototype.config=function(t){if((typeof t>`u`?`undefined`:w(t))===`object`){if(this._ready)return new Error(`Can't call config() after localforage has been used.`);for(var i in t){if(i===`storeName`&&(t[i]=t[i].replace(/\W/g,`_`)),i===`version`&&typeof t[i]!=`number`)return new Error(`Database version must be a number.`);this._config[i]=t[i];}return `driver`in t&&t.driver?this.setDriver(this._config.driver):true}else return typeof t==`string`?this._config[t]:this._config},e.prototype.defineDriver=function(t,i,a){var o=new p(function(c,f){try{var l=t._driver,d=new Error(`Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver`);if(!t._driver){f(d);return}for(var g=Ne.concat(`_initStorage`),E=0,S=g.length;E<S;E++){var x=g[E];if((!vr(me,x)||t[x])&&typeof t[x]!=`function`){f(d);return}}var V=function(){for(var ae=function(Ir){return function(){var Sr=new Error(`Method `+Ir+` is not implemented by the current driver`),st=p.reject(Sr);return _(st,arguments[arguments.length-1]),st}},Oe=0,wr=me.length;Oe<wr;Oe++){var Pe=me[Oe];t[Pe]||(t[Pe]=ae(Pe));}};V();var P=function(ae){ie[l]&&console.info(`Redefining LocalForage driver: `+l),ie[l]=t,at[l]=ae,c();};`_support`in t?t._support&&typeof t._support==`function`?t._support().then(P,f):P(!!t._support):P(!0);}catch(H){f(H);}});return C(o,i,a),o},e.prototype.driver=function(){return this._driver||null},e.prototype.getDriver=function(t,i,a){var o=ie[t]?p.resolve(ie[t]):p.reject(new Error(`Driver not found.`));return C(o,i,a),o},e.prototype.getSerializer=function(t){var i=p.resolve(xe);return C(i,t),i},e.prototype.ready=function(t){var i=this,a=i._driverSet.then(function(){return i._ready===null&&(i._ready=i._initDriver()),i._ready});return C(a,t,t),a},e.prototype.setDriver=function(t,i,a){var o=this;it(t)||(t=[t]);var c=this._getSupportedDrivers(t);function f(){o._config.driver=o.driver();}function l(E){return o._extend(E),f(),o._ready=o._initStorage(o._config),o._ready}function d(E){return function(){var S=0;function x(){for(;S<E.length;){var N=E[S];return S++,o._dbInfo=null,o._ready=null,o.getDriver(N).then(l).catch(x)}f();var V=new Error(`No available storage method found.`);return o._driverSet=p.reject(V),o._driverSet}return x()}}return this._driverSet=(this._driverSet!==null?this._driverSet.catch(function(){return p.resolve()}):p.resolve()).then(function(){var E=c[0];return o._dbInfo=null,o._ready=null,o.getDriver(E).then(function(S){o._driver=S._driver,f(),o._wrapLibraryMethodsWithReady(),o._initDriver=d(c);})}).catch(function(){f();var E=new Error(`No available storage method found.`);return o._driverSet=p.reject(E),o._driverSet}),C(this._driverSet,i,a),this._driverSet},e.prototype.supports=function(t){return !!at[t]},e.prototype._extend=function(t){Le(this,t);},e.prototype._getSupportedDrivers=function(t){for(var i=[],a=0,o=t.length;a<o;a++){var c=t[a];this.supports(c)&&i.push(c);}return i},e.prototype._wrapLibraryMethodsWithReady=function(){for(var t=0,i=Ne.length;t<i;t++)_r(this,Ne[t]);},e.prototype.createInstance=function(t){return new e(t)},e})());},{3:3}]},{},[4])(4)});});var yt$1=v$2((vt,_e)=>{(function(s){var n={};n.VERSION=`1.6.1`;var h,u={},v=function(m,T){return function(){return T.apply(m,arguments)}},I=function(){var m=arguments,T=m[0],M,p;for(p=1;p<m.length;p++)for(M in m[p])!(M in T)&&m[p].hasOwnProperty(M)&&(T[M]=m[p][M]);return T},w=function(m,T){return {value:m,name:T}};n.TRACE=w(1,`TRACE`),n.DEBUG=w(2,`DEBUG`),n.INFO=w(3,`INFO`),n.TIME=w(4,`TIME`),n.WARN=w(5,`WARN`),n.ERROR=w(8,`ERROR`),n.OFF=w(99,`OFF`);var R=function(m){this.context=m,this.setLevel(m.filterLevel),this.log=this.info;};R.prototype={setLevel:function(m){m&&`value`in m&&(this.context.filterLevel=m);},getLevel:function(){return this.context.filterLevel},enabledFor:function(m){var T=this.context.filterLevel;return m.value>=T.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(m){typeof m==`string`&&m.length>0&&this.invoke(n.TIME,[m,`start`]);},timeEnd:function(m){typeof m==`string`&&m.length>0&&this.invoke(n.TIME,[m,`end`]);},invoke:function(m,T){h&&this.enabledFor(m)&&h(T,I({level:m},this.context));}};var b=new R({filterLevel:n.OFF});((function(){var m=n;m.enabledFor=v(b,b.enabledFor),m.trace=v(b,b.trace),m.debug=v(b,b.debug),m.time=v(b,b.time),m.timeEnd=v(b,b.timeEnd),m.info=v(b,b.info),m.warn=v(b,b.warn),m.error=v(b,b.error),m.log=m.info;}))(),n.setHandler=function(m){h=m;},n.setLevel=function(m){b.setLevel(m);for(var T in u)u.hasOwnProperty(T)&&u[T].setLevel(m);},n.getLevel=function(){return b.getLevel()},n.get=function(m){return u[m]||(u[m]=new R(I({name:m},b.context)))},n.createDefaultHandler=function(m){m=m||{},m.formatter=m.formatter||function(_,C){C.name&&_.unshift(`[`+C.name+`]`);};var T={},M=function(p,_){Function.prototype.apply.call(p,console,_);};return typeof console>`u`?function(){}:function(p,_){p=Array.prototype.slice.call(p);var C=console.log,O;_.level===n.TIME?(O=(_.name?`[`+_.name+`] `:``)+p[0],p[1]===`start`?console.time?console.time(O):T[O]=new Date().getTime():console.timeEnd?console.timeEnd(O):M(C,[O+`: `+(new Date().getTime()-T[O])+`ms`])):(_.level===n.WARN&&console.warn?C=console.warn:_.level===n.ERROR&&console.error?C=console.error:_.level===n.INFO&&console.info?C=console.info:_.level===n.DEBUG&&console.debug?C=console.debug:_.level===n.TRACE&&console.trace&&(C=console.trace),m.formatter(p,_),M(C,p));}},n.useDefaults=function(m){n.setLevel(m&&m.defaultLevel||n.DEBUG),n.setHandler(n.createDefaultHandler(m));},n.setDefaults=n.useDefaults,typeof define==`function`&&define.amd?define(n):typeof _e<`u`&&_e.exports?_e.exports=n:(n._prevLogger=s.Logger,n.noConflict=function(){return s.Logger=n._prevLogger,n},s.Logger=n);})(vt);});var Me$3=`14.2.4`;var Rr$3=Me$3.split(`-`)[0].split(`.`).slice(0,3).map(s=>s.padStart(2,`0`)).join(``),Gr$3=`WEB`,ft$4=`CooeeSDK`,Q$4=Me$3,Hr$4=parseInt(Rr$3,10);var Yr$3=[`collection`,`product`,`cart`],jr$2=[{identifier:`#flo-checkout-wrapper`,gateway:`Shopflow`},{identifier:`#fastrr-main-container`,gateway:`Shiprocket`},{identifier:`#gokwik-modal-wrapper`,gateway:`Gokwik`},{identifier:`#zecpe`,gateway:`Ecom 360`}],zr$3=[`View Item`,`View Cart`,`View Collection`],qr$4=[`CE Screen View`,`View Collection`,`View Item`,`View Cart`],Kr$3=`https://cdn.jsdelivr.net/npm/swiper@11`;function Jr$3(s){return `(\u23F0 took: ${Ve$4(s)})`}function Ve$4(s){if(s<0)return `${s}ms`;let n=new Date(Date.UTC(0,0,0,0,0,0,s)),h=[];return n.getUTCMinutes()&&h.push(n.getUTCMinutes()+`m`),n.getUTCSeconds()&&h.push(n.getUTCSeconds()+`s`),n.getUTCMilliseconds()&&h.push(n.getUTCMilliseconds()+`ms`),h.length||h.push(`0ms`),h.join(` `)}function Be$3(){return window.CooeeSDK.runtimeData}function en(){return Ve$4(Date.now()-Be$3().sdkLoadTime.getTime())}var Ue$2=x$3(dt$3());function ge$5(s){return Ue$2.default.createInstance({name:`lc`,storeName:s,driver:Ue$2.default.LOCALSTORAGE})}var re$4=class re{static storage;static async get(n,h){return await this.storage?.getItem(n)??h}static set(n,h){return this.storage?.setItem(n,h)}static remove(n){return this.storage?.removeItem(n)}static clear(){return this.storage?.clear()}static getForage(){return this.storage}};var ce$3=class ce extends re$4{static storeName=`usr`;static{this.storage=ge$5(this.storeName);}};var mt$4=`https://cdn.jsdelivr.net/npm/@letscooee/web-sdk@${Q$4}/dist`,fe$5={apiURL:`https://api.sdk.letscooee.com`,cdnApiURL:`https://cdn.sdk1.api.letscooee.com`,debug:false,mode:`production`,baseURL:mt$4,styleURL:`${mt$4}/styles.min.css`};var pe$5=class pe{static ISO_WITHOUT_MS_REGEX=new RegExp(/\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z)/);static isObject(n){return typeof n==`object`&&!Array.isArray(n)&&n!==null}static parseToAny(n){try{return JSON.parse(n.toString())}catch{}return n.toString().match(this.ISO_WITHOUT_MS_REGEX)?new Date(n.toString()):n}static async sleep(n){return new Promise(h=>setTimeout(h,n))}static hasKeys(n){return n?Object.keys(n).length>=1:false}static convertObjectToArray(n,h){return h.reduce((u,v)=>(n.hasOwnProperty(v)&&n[v]!=null&&u.push({[v]:n[v]}),u),[])}static removeNullUndefinedKeys(n){return Object.keys(n).reduce((h,u)=>(n[u]!==null&&n[u]!==void 0&&(h[u]=n[u]),h),{})}static stringify(n){return JSON.stringify(n,function(h,u){return u===void 0?null:u})}};var he$4=class he{gaEnabled;gaMeasurementID;pixelPush;website;currencyCount;money;storefrontToken;skipItemAttribute;widgetCustomisation;currency;static get(){return window.CooeeSDK.config}update(n){return n??={},this.gaEnabled=n.gaEnabled,this.gaMeasurementID=n.gaMeasurementID,this.pixelPush=n.pixelPush,this.website=n.website??{},this.currencyCount=n.currencyCount??0,this.money=n.money,this.currency=n.currency,this.storefrontToken=n.storefrontToken,this.skipItemAttribute=n.skipItemAttribute,this.widgetCustomisation=n.widgetCustomisation,this}};var ve$4=class ve extends re$4{static storeName=`ses`;static{this.storage=ge$5(this.storeName);}};var ye$3=class ye{static format(n,h){return h.replace(/{{\s*(\w+)\s*}}/,(v,I)=>{switch(I){case `amount`:return this.formatWithDelimiters(n,2);case `amount_no_decimals`:return this.formatWithDelimiters(n,0);case `amount_with_comma_separator`:return this.formatWithDelimiters(n,2,`.`,`,`);case `amount_no_decimals_with_comma_separator`:return this.formatWithDelimiters(n,0,`.`,`,`);case `amount_with_apostrophe_separator`:return this.formatWithDelimiters(n,2,`'`,`.`);case `amount_no_decimals_with_space_separator`:return this.formatWithDelimiters(n,0,` `);case `amount_with_space_separator`:return this.formatWithDelimiters(n,2,` `,`,`);case `amount_with_period_and_space_separator`:return this.formatWithDelimiters(n,2,` `,`.`);default:return v}})}static formatWithDelimiters(n,h=2,u=`,`,v=`.`){if(isNaN(n)||n==null)return `0`;let w=(n/100).toFixed(h).split(`.`);return w[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,`$1`+u)+(w[1]?v+w[1]:``)}};function Sn$1(s){try{return new URL(s)}catch{return}}function Dn(s){return !s||s===`null`||s===`undefined`}function Rn(s,n){let h=s.indexOf(n);return h===-1?false:(s.splice(h,1),true)}function Cn(s,n,h){return {[s]:Cr$3(n,h),[s+`_wo_currency`]:n}}function Cr$3(s,n){if(s==0&&n)return `Free`;let h=Be$3(),u=he$4.get(),v=h.shopCurrencyCode||u.currency,I=h.currencyCode;I||Y$2.warn(`Currency code is not set in RuntimeData`);let w=u.money?.format??h.moneyFormat,R;if(w&&v===I&&!u.money?.auto)R=ye$3.format(s*100,w);else {let b;try{b=new Intl.NumberFormat(gt$3(),{style:`currency`,currency:I||v,minimumFractionDigits:0,maximumFractionDigits:2});}catch(m){return ke(m,`format-currency`,{extra:{currentCurrency:I,shopCurrency:v}}),``}R=b.format(s),R=R.replace(`₹`,`Rs. `),u.money?.showCurrency&&I!==`INR`&&(R=R.concat(` ${I}`));}return R}function An(s){let n=gt$3();try{return new Intl.NumberFormat(n,{notation:`compact`}).format(s)}catch(h){return ke(h,`format-number`,{extra:{lang:n,value:s}}),s.toString()}}function gt$3(){let s=`en`;return typeof navigator<`u`&&(navigator.languages!==void 0&&navigator.languages.length>0?s=navigator.languages[0]:navigator.language&&(s=navigator.language)),s=s.split(`;`)[0],s=s.split(`-`)[0],s||`en`}var Ee$4;function pt$3(){if(Ee$4)return Ee$4;try{return Ee$4=Intl.DateTimeFormat().resolvedOptions().timeZone,Ee$4}catch{return ``}}function ht$3(s){document.readyState!==`loading`?s():document.addEventListener(`DOMContentLoaded`,s);}function xn(s){let n=document.createElement(`span`);n.id=`snackbar`,n.innerText=s,document.body.appendChild(n),n.className=`cooee-snackbar show`,setTimeout(()=>{n.classList.remove(`show`),document.body.removeChild(n);},5e3);}async function Ar$3(s,n=7,h=document){let u=1,v=document.querySelectorAll(`nonexistent-tag`);for(;u<=n;){let I=Math.min(50*2**u,1e3);if(u>1&&await pe$5.sleep(I),v=h.querySelectorAll(s),v.length)return Y$2.verbose(`Attempt ${u}: ${v.length} elements found with ${s}`),v;Y$2.verbose(`Attempt ${u}: Elements not found with ${s}. Will retry after ${I}ms.`),u++;}return Y$2.verbose(`\u26A0\uFE0F Max attempts reached. Element not found with ${s}.`),v}async function Nn$3(s,n=10,h=document){return (await Ar$3(s,n,h)).item(0)}async function xr$3(s){let[n,h,u]=await Promise.all([ce$3.get(`did`),ve$4.get(`id`,``),ce$3.get(`sessionNumber`,1)]),v={letscooee_did:n,letscooee_sid:h,letscooee_sn:`${u}`,__letscooee_time:new Date().toLocaleString()};return s&&(v.__letscooee_via=s),v}async function Ln(s){let n=await xr$3(s);return Object.entries(n).map(([h,u])=>({key:h,value:u.toString()}))}function On$1(s,n,h,u=false){Object.defineProperty(s,n,{enumerable:false,configurable:false,writable:u,value:h});}function Pn(s){if(s%100>=11&&s%100<=13)return s+`th`;switch(s%10){case 1:return s+`st`;case 2:return s+`nd`;case 3:return s+`rd`;default:return s+`th`}}var W$2=x$3(yt$1());var Y$2=class Y{static debuggerEl;static infoLogs=[];static log(...n){W$2.default.info(...n);}static verbose(...n){W$2.default.debug(...n);}static error(...n){W$2.default.error(...n);}static warn(...n){W$2.default.warn(...n);}static info(...n){W$2.default.info(...n),this.infoLogs.push({time:new Date,message:n.join(` `)}),this.addToDebugger();}static trace(...n){W$2.default.trace(...n);}static addToDebugger(){sessionStorage.cooeeDebug&&(this.debuggerEl=this.debuggerEl??document.querySelector(`cooee-debugger`),this.debuggerEl&&this.debuggerEl&&(this.debuggerEl.logs=[...this.infoLogs]));}};function Un$1(s=ft$4){W$2.default.useDefaults({formatter:function(n){n.unshift(`${s} (v${Q$4}):`);}}),Nr$4()&&(localStorage.cooeeLogLevel=`TRACE`),localStorage.cooeeLogLevel?W$2.default.setLevel(W$2.default[localStorage.cooeeLogLevel]):W$2.default.setLevel(W$2.default.OFF);}function Nr$4(){let s=Et$2();return s===`1`||s===`on`}function Et$2(){return new URL(location.href).searchParams?.get(`cooee-debug`)}function kn$1(){let s=[`display: inline-block;`,`font-size: 14px;`,`background: linear-gradient(90deg, #d52dc8 25%, #2179e2 82%);`,`color: white;`,`padding: 4px;`,`border-radius: 4px;`].join(` `),n=`
3
+ var dt$3=v$2((lt,Fe)=>{(function(s){if(typeof lt==`object`&&typeof Fe<`u`)Fe.exports=s();else if(typeof define==`function`&&define.amd)define([],s);else {var n;typeof window<`u`?n=window:typeof global<`u`?n=global:typeof self<`u`?n=self:n=this,n.localforage=s();}})(function(){return (function u(v,I,w){function R(T,M){if(!I[T]){if(!v[T]){var p=typeof t$1==`function`&&t$1;if(!M&&p)return p(T,true);if(b)return b(T,true);var _=new Error(`Cannot find module '`+T+`'`);throw _.code=`MODULE_NOT_FOUND`,_}var C=I[T]={exports:{}};v[T][0].call(C.exports,function(O){var j=v[T][1][O];return R(j||O)},C,C.exports,u,v,I,w);}return I[T].exports}for(var b=typeof t$1==`function`&&t$1,m=0;m<w.length;m++)R(w[m]);return R})({1:[function(u,v,I){(function(w){var R=w.MutationObserver||w.WebKitMutationObserver,b;if(R){var m=0,T=new R(O),M=w.document.createTextNode(``);T.observe(M,{characterData:true}),b=function(){M.data=m=++m%2;};}else if(!w.setImmediate&&typeof w.MessageChannel<`u`){var p=new w.MessageChannel;p.port1.onmessage=O,b=function(){p.port2.postMessage(0);};}else `document`in w&&`onreadystatechange`in w.document.createElement(`script`)?b=function(){var B=w.document.createElement(`script`);B.onreadystatechange=function(){O(),B.onreadystatechange=null,B.parentNode.removeChild(B),B=null;},w.document.documentElement.appendChild(B);}:b=function(){setTimeout(O,0);};var _,C=[];function O(){_=true;for(var B,z,F=C.length;F;){for(z=C,C=[],B=-1;++B<F;)z[B]();F=C.length;}_=false;}v.exports=j;function j(B){C.push(B)===1&&!_&&b();}}).call(this,typeof global<`u`?global:typeof self<`u`?self:typeof window<`u`?window:{});},{}],2:[function(u,v,I){var w=u(1);function R(){}var b={},m=[`REJECTED`],T=[`FULFILLED`],M=[`PENDING`];v.exports=p;function p(y){if(typeof y!=`function`)throw new TypeError(`resolver must be a function`);this.state=M,this.queue=[],this.outcome=void 0,y!==R&&j(this,y);}p.prototype.catch=function(y){return this.then(null,y)},p.prototype.then=function(y,A){if(typeof y!=`function`&&this.state===T||typeof A!=`function`&&this.state===m)return this;var D=new this.constructor(R);if(this.state!==M)C(D,this.state===T?y:A,this.outcome);else this.queue.push(new _(D,y,A));return D};function _(y,A,D){this.promise=y,typeof A==`function`&&(this.onFulfilled=A,this.callFulfilled=this.otherCallFulfilled),typeof D==`function`&&(this.onRejected=D,this.callRejected=this.otherCallRejected);}_.prototype.callFulfilled=function(y){b.resolve(this.promise,y);},_.prototype.otherCallFulfilled=function(y){C(this.promise,this.onFulfilled,y);},_.prototype.callRejected=function(y){b.reject(this.promise,y);},_.prototype.otherCallRejected=function(y){C(this.promise,this.onRejected,y);};function C(y,A,D){w(function(){var L;try{L=A(D);}catch(U){return b.reject(y,U)}L===y?b.reject(y,new TypeError(`Cannot resolve promise with itself`)):b.resolve(y,L);});}b.resolve=function(y,A){var D=B(O,A);if(D.status===`error`)return b.reject(y,D.value);var L=D.value;if(L)j(y,L);else {y.state=T,y.outcome=A;for(var U=-1,k=y.queue.length;++U<k;)y.queue[U].callFulfilled(A);}return y},b.reject=function(y,A){y.state=m,y.outcome=A;for(var D=-1,L=y.queue.length;++D<L;)y.queue[D].callRejected(A);return y};function O(y){var A=y&&y.then;if(y&&(typeof y==`object`||typeof y==`function`)&&typeof A==`function`)return function(){A.apply(y,arguments);}}function j(y,A){var D=false;function L(G){D||(D=true,b.reject(y,G));}function U(G){D||(D=true,b.resolve(y,G));}function k(){A(U,L);}var $=B(k);$.status===`error`&&L($.value);}function B(y,A){var D={};try{D.value=y(A),D.status=`success`;}catch(L){D.status=`error`,D.value=L;}return D}p.resolve=z;function z(y){return y instanceof this?y:b.resolve(new this(R),y)}p.reject=F;function F(y){var A=new this(R);return b.reject(A,y)}p.all=Ie;function Ie(y){var A=this;if(Object.prototype.toString.call(y)!==`[object Array]`)return this.reject(new TypeError(`must be an array`));var D=y.length,L=false;if(!D)return this.resolve([]);for(var U=new Array(D),k=0,$=-1,G=new this(R);++$<D;)q(y[$],$);return G;function q(oe,le){A.resolve(oe).then(Se,function(ee){L||(L=true,b.reject(G,ee));});function Se(ee){U[le]=ee,++k===D&&!L&&(L=true,b.resolve(G,U));}}}p.race=Z;function Z(y){var A=this;if(Object.prototype.toString.call(y)!==`[object Array]`)return this.reject(new TypeError(`must be an array`));var D=y.length,L=false;if(!D)return this.resolve([]);for(var U=-1,k=new this(R);++U<D;)$(y[U]);return k;function $(G){A.resolve(G).then(function(q){L||(L=true,b.resolve(k,q));},function(q){L||(L=true,b.reject(k,q));});}}},{1:1}],3:[function(u,v,I){(function(w){typeof w.Promise!=`function`&&(w.Promise=u(2));}).call(this,typeof global<`u`?global:typeof self<`u`?self:typeof window<`u`?window:{});},{2:2}],4:[function(u,v,I){var w=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e};function R(e,r){if(!(e instanceof r))throw new TypeError(`Cannot call a class as a function`)}function b(){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 m=b();function T(){try{if(!m||!m.open)return !1;var e=typeof openDatabase<`u`&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),r=typeof fetch==`function`&&fetch.toString().indexOf(`[native code`)!==-1;return (!e||r)&&typeof indexedDB<`u`&&typeof IDBKeyRange<`u`}catch{return false}}function M(e,r){e=e||[],r=r||{};try{return new Blob(e,r)}catch(o){if(o.name!==`TypeError`)throw o;for(var i=new(typeof BlobBuilder<`u`?BlobBuilder:typeof MSBlobBuilder<`u`?MSBlobBuilder:typeof MozBlobBuilder<`u`?MozBlobBuilder:WebKitBlobBuilder),a=0;a<e.length;a+=1)i.append(e[a]);return i.getBlob(r.type)}}typeof Promise>`u`&&u(3);var p=Promise;function _(e,r){r&&e.then(function(t){r(null,t);},function(t){r(t);});}function C(e,r,t){typeof r==`function`&&e.then(r),typeof t==`function`&&e.catch(t);}function O(e){return typeof e!=`string`&&(console.warn(e+` used as a key, but it is not a string.`),e=String(e)),e}function j(){if(arguments.length&&typeof arguments[arguments.length-1]==`function`)return arguments[arguments.length-1]}var B=`local-forage-detect-blob-support`,z=void 0,F={},Ie=Object.prototype.toString,Z=`readonly`,y=`readwrite`;function A(e){for(var r=e.length,t=new ArrayBuffer(r),i=new Uint8Array(t),a=0;a<r;a++)i[a]=e.charCodeAt(a);return t}function D(e){return new p(function(r){var t=e.transaction(B,y),i=M([``]);t.objectStore(B).put(i,`key`),t.onabort=function(a){a.preventDefault(),a.stopPropagation(),r(false);},t.oncomplete=function(){var a=navigator.userAgent.match(/Chrome\/(\d+)/);r(navigator.userAgent.match(/Edge\//)||!a||parseInt(a[1],10)>=43);};}).catch(function(){return false})}function L(e){return typeof z==`boolean`?p.resolve(z):D(e).then(function(r){return z=r,z})}function U(e){var r=F[e.name],t={};t.promise=new p(function(i,a){t.resolve=i,t.reject=a;}),r.deferredOperations.push(t),r.dbReady?r.dbReady=r.dbReady.then(function(){return t.promise}):r.dbReady=t.promise;}function k(e){var t=F[e.name].deferredOperations.pop();if(t)return t.resolve(),t.promise}function $(e,r){var i=F[e.name].deferredOperations.pop();if(i)return i.reject(r),i.promise}function G(e,r){return new p(function(t,i){if(F[e.name]=F[e.name]||$e(),e.db)if(r)U(e),e.db.close();else return t(e.db);var a=[e.name];r&&a.push(e.version);var o=m.open.apply(m,a);r&&(o.onupgradeneeded=function(c){var f=o.result;try{f.createObjectStore(e.storeName),c.oldVersion<=1&&f.createObjectStore(B);}catch(l){if(l.name===`ConstraintError`)console.warn(`The database "`+e.name+`" has been upgraded from version `+c.oldVersion+` to version `+c.newVersion+`, but the storage "`+e.storeName+`" already exists.`);else throw l}}),o.onerror=function(c){c.preventDefault(),i(o.error);},o.onsuccess=function(){var c=o.result;c.onversionchange=function(f){f.target.close();},t(c),k(e);};})}function q(e){return G(e,false)}function oe(e){return G(e,true)}function le(e,r){if(!e.db)return true;var t=!e.db.objectStoreNames.contains(e.storeName),i=e.version<e.db.version,a=e.version>e.db.version;if(i&&(e.version!==r&&console.warn(`The database "`+e.name+`" can't be downgraded from version `+e.db.version+` to version `+e.version+`.`),e.version=e.db.version),a||t){if(t){var o=e.db.version+1;o>e.version&&(e.version=o);}return true}return false}function Se(e){return new p(function(r,t){var i=new FileReader;i.onerror=t,i.onloadend=function(a){r({__local_forage_encoded_blob:true,data:btoa(a.target.result||``),type:e.type});},i.readAsBinaryString(e);})}function ee(e){return M([A(atob(e.data))],{type:e.type})}function We(e){return e&&e.__local_forage_encoded_blob}function Rt(e){var r=this,t=r._initReady().then(function(){var i=F[r._dbInfo.name];if(i&&i.dbReady)return i.dbReady});return C(t,e,e),t}function Ct(e){U(e);for(var r=F[e.name],t=r.forages,i=0;i<t.length;i++){var a=t[i];a._dbInfo.db&&(a._dbInfo.db.close(),a._dbInfo.db=null);}return e.db=null,q(e).then(function(o){return e.db=o,le(e)?oe(e):o}).then(function(o){e.db=r.db=o;for(var c=0;c<t.length;c++)t[c]._dbInfo.db=o;}).catch(function(o){throw $(e,o),o})}function K(e,r,t,i){i===void 0&&(i=1);try{t(null,e.db.transaction(e.storeName,r));}catch(o){if(i>0&&(!e.db||o.name===`InvalidStateError`||o.name===`NotFoundError`))return p.resolve().then(function(){if(!e.db||o.name===`NotFoundError`&&!e.db.objectStoreNames.contains(e.storeName)&&e.version<=e.db.version)return e.db&&(e.version=e.db.version+1),oe(e)}).then(function(){return Ct(e).then(function(){K(e,r,t,i-1);})}).catch(t);t(o);}}function $e(){return {forages:[],db:null,dbReady:null,deferredOperations:[]}}function At(e){var r=this,t={db:null};if(e)for(var i in e)t[i]=e[i];var a=F[t.name];a||(a=$e(),F[t.name]=a),a.forages.push(r),r._initReady||(r._initReady=r.ready,r.ready=Rt);var o=[];function c(){return p.resolve()}for(var f=0;f<a.forages.length;f++){var l=a.forages[f];l!==r&&o.push(l._initReady().catch(c));}var d=a.forages.slice(0);return p.all(o).then(function(){return t.db=a.db,q(t)}).then(function(g){return t.db=g,le(t,r._defaultConfig.version)?oe(t):g}).then(function(g){t.db=a.db=g,r._dbInfo=t;for(var E=0;E<d.length;E++){var S=d[E];S!==r&&(S._dbInfo.db=t.db,S._dbInfo.version=t.version);}})}function Nt(e,r){var t=this;e=O(e);var i=new p(function(a,o){t.ready().then(function(){K(t._dbInfo,Z,function(c,f){if(c)return o(c);try{var d=f.objectStore(t._dbInfo.storeName).get(e);d.onsuccess=function(){var g=d.result;g===void 0&&(g=null),We(g)&&(g=ee(g)),a(g);},d.onerror=function(){o(d.error);};}catch(g){o(g);}});}).catch(o);});return _(i,r),i}function xt(e,r){var t=this,i=new p(function(a,o){t.ready().then(function(){K(t._dbInfo,Z,function(c,f){if(c)return o(c);try{var d=f.objectStore(t._dbInfo.storeName).openCursor(),g=1;d.onsuccess=function(){var E=d.result;if(E){var S=E.value;We(S)&&(S=ee(S));var N=e(S,E.key,g++);N!==void 0?a(N):E.continue();}else a();},d.onerror=function(){o(d.error);};}catch(E){o(E);}});}).catch(o);});return _(i,r),i}function Lt(e,r,t){var i=this;e=O(e);var a=new p(function(o,c){var f;i.ready().then(function(){return f=i._dbInfo,Ie.call(r)===`[object Blob]`?L(f.db).then(function(l){return l?r:Se(r)}):r}).then(function(l){K(i._dbInfo,y,function(d,g){if(d)return c(d);try{var E=g.objectStore(i._dbInfo.storeName);l===null&&(l=void 0);var S=E.put(l,e);g.oncomplete=function(){l===void 0&&(l=null),o(l);},g.onabort=g.onerror=function(){c(S.error?S.error:S.transaction.error);};}catch(N){c(N);}});}).catch(c);});return _(a,t),a}function Ot(e,r){var t=this;e=O(e);var i=new p(function(a,o){t.ready().then(function(){K(t._dbInfo,y,function(c,f){if(c)return o(c);try{var d=f.objectStore(t._dbInfo.storeName).delete(e);f.oncomplete=function(){a();},f.onerror=function(){o(d.error);},f.onabort=function(){o(d.error?d.error:d.transaction.error);};}catch(g){o(g);}});}).catch(o);});return _(i,r),i}function Pt(e){var r=this,t=new p(function(i,a){r.ready().then(function(){K(r._dbInfo,y,function(o,c){if(o)return a(o);try{var l=c.objectStore(r._dbInfo.storeName).clear();c.oncomplete=function(){i();},c.onabort=c.onerror=function(){a(l.error?l.error:l.transaction.error);};}catch(d){a(d);}});}).catch(a);});return _(t,e),t}function Mt(e){var r=this,t=new p(function(i,a){r.ready().then(function(){K(r._dbInfo,Z,function(o,c){if(o)return a(o);try{var l=c.objectStore(r._dbInfo.storeName).count();l.onsuccess=function(){i(l.result);},l.onerror=function(){a(l.error);};}catch(d){a(d);}});}).catch(a);});return _(t,e),t}function Vt(e,r){var t=this,i=new p(function(a,o){if(e<0){a(null);return}t.ready().then(function(){K(t._dbInfo,Z,function(c,f){if(c)return o(c);try{var l=f.objectStore(t._dbInfo.storeName),d=!1,g=l.openKeyCursor();g.onsuccess=function(){var E=g.result;if(!E){a(null);return}e===0||d?a(E.key):(d=!0,E.advance(e));},g.onerror=function(){o(g.error);};}catch(E){o(E);}});}).catch(o);});return _(i,r),i}function Bt(e){var r=this,t=new p(function(i,a){r.ready().then(function(){K(r._dbInfo,Z,function(o,c){if(o)return a(o);try{var l=c.objectStore(r._dbInfo.storeName).openKeyCursor(),d=[];l.onsuccess=function(){var g=l.result;if(!g){i(d);return}d.push(g.key),g.continue();},l.onerror=function(){a(l.error);};}catch(g){a(g);}});}).catch(a);});return _(t,e),t}function Ft(e,r){r=j.apply(this,arguments);var t=this.config();e=typeof e!=`function`&&e||{},e.name||(e.name=e.name||t.name,e.storeName=e.storeName||t.storeName);var i=this,a;if(!e.name)a=p.reject(`Invalid arguments`);else {var c=e.name===t.name&&i._dbInfo.db?p.resolve(i._dbInfo.db):q(e).then(function(f){var l=F[e.name],d=l.forages;l.db=f;for(var g=0;g<d.length;g++)d[g]._dbInfo.db=f;return f});e.storeName?a=c.then(function(f){if(f.objectStoreNames.contains(e.storeName)){var l=f.version+1;U(e);var d=F[e.name],g=d.forages;f.close();for(var E=0;E<g.length;E++){var S=g[E];S._dbInfo.db=null,S._dbInfo.version=l;}return new p(function(x,V){var P=m.open(e.name,l);P.onerror=function(H){P.result.close(),V(H);},P.onupgradeneeded=function(){P.result.deleteObjectStore(e.storeName);},P.onsuccess=function(){var H=P.result;H.close(),x(H);};}).then(function(x){d.db=x;for(var V=0;V<g.length;V++){var P=g[V];P._dbInfo.db=x,k(P._dbInfo);}}).catch(function(x){throw ($(e,x)||p.resolve()).catch(function(){}),x})}}):a=c.then(function(f){U(e);var l=F[e.name],d=l.forages;f.close();for(var g=0;g<d.length;g++){var E=d[g];E._dbInfo.db=null;}return new p(function(N,x){var V=m.deleteDatabase(e.name);V.onerror=function(){var P=V.result;P&&P.close(),x(V.error);},V.onblocked=function(){console.warn(`dropInstance blocked for database "`+e.name+`" until all open connections are closed`);},V.onsuccess=function(){var P=V.result;P&&P.close(),N(P);};}).then(function(N){l.db=N;for(var x=0;x<d.length;x++){var V=d[x];k(V._dbInfo);}}).catch(function(N){throw ($(e,N)||p.resolve()).catch(function(){}),N})});}return _(a,r),a}var Ut={_driver:`asyncStorage`,_initStorage:At,_support:T(),iterate:xt,getItem:Nt,setItem:Lt,removeItem:Ot,clear:Pt,length:Mt,key:Vt,keys:Bt,dropInstance:Ft};function kt(){return typeof openDatabase==`function`}var X=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,Wt=`~~local_forage_type~`,Ge=/^~~local_forage_type~([^~]+)~/,de=`__lfsc__:`,De=de.length,Re=`arbf`,Ce=`blob`,He=`si08`,Ye=`ui08`,je=`uic8`,ze=`si16`,qe=`si32`,Ke=`ur16`,Xe=`ui32`,Je=`fl32`,Qe=`fl64`,Ze=De+Re.length,et=Object.prototype.toString;function tt(e){var r=e.length*.75,t=e.length,i,a=0,o,c,f,l;e[e.length-1]===`=`&&(r--,e[e.length-2]===`=`&&r--);var d=new ArrayBuffer(r),g=new Uint8Array(d);for(i=0;i<t;i+=4)o=X.indexOf(e[i]),c=X.indexOf(e[i+1]),f=X.indexOf(e[i+2]),l=X.indexOf(e[i+3]),g[a++]=o<<2|c>>4,g[a++]=(c&15)<<4|f>>2,g[a++]=(f&3)<<6|l&63;return d}function Ae(e){var r=new Uint8Array(e),t=``,i;for(i=0;i<r.length;i+=3)t+=X[r[i]>>2],t+=X[(r[i]&3)<<4|r[i+1]>>4],t+=X[(r[i+1]&15)<<2|r[i+2]>>6],t+=X[r[i+2]&63];return r.length%3===2?t=t.substring(0,t.length-1)+`=`:r.length%3===1&&(t=t.substring(0,t.length-2)+`==`),t}function $t(e,r){var t=``;if(e&&(t=et.call(e)),e&&(t===`[object ArrayBuffer]`||e.buffer&&et.call(e.buffer)===`[object ArrayBuffer]`)){var i,a=de;e instanceof ArrayBuffer?(i=e,a+=Re):(i=e.buffer,t===`[object Int8Array]`?a+=He:t===`[object Uint8Array]`?a+=Ye:t===`[object Uint8ClampedArray]`?a+=je:t===`[object Int16Array]`?a+=ze:t===`[object Uint16Array]`?a+=Ke:t===`[object Int32Array]`?a+=qe:t===`[object Uint32Array]`?a+=Xe:t===`[object Float32Array]`?a+=Je:t===`[object Float64Array]`?a+=Qe:r(new Error(`Failed to get type for BinaryArray`))),r(a+Ae(i));}else if(t===`[object Blob]`){var o=new FileReader;o.onload=function(){var c=Wt+e.type+`~`+Ae(this.result);r(de+Ce+c);},o.readAsArrayBuffer(e);}else try{r(JSON.stringify(e));}catch(c){console.error(`Couldn't convert value into a JSON string: `,e),r(null,c);}}function Gt(e){if(e.substring(0,De)!==de)return JSON.parse(e);var r=e.substring(Ze),t=e.substring(De,Ze),i;if(t===Ce&&Ge.test(r)){var a=r.match(Ge);i=a[1],r=r.substring(a[0].length);}var o=tt(r);switch(t){case Re:return o;case Ce:return M([o],{type:i});case He:return new Int8Array(o);case Ye:return new Uint8Array(o);case je:return new Uint8ClampedArray(o);case ze:return new Int16Array(o);case Ke:return new Uint16Array(o);case qe:return new Int32Array(o);case Xe:return new Uint32Array(o);case Je:return new Float32Array(o);case Qe:return new Float64Array(o);default:throw new Error(`Unkown type: `+t)}}var Ne={serialize:$t,deserialize:Gt,stringToBuffer:tt,bufferToString:Ae};function rt(e,r,t,i){e.executeSql(`CREATE TABLE IF NOT EXISTS `+r.storeName+` (id INTEGER PRIMARY KEY, key unique, value)`,[],t,i);}function Ht(e){var r=this,t={db:null};if(e)for(var i in e)t[i]=typeof e[i]!=`string`?e[i].toString():e[i];var a=new p(function(o,c){try{t.db=openDatabase(t.name,String(t.version),t.description,t.size);}catch(f){return c(f)}t.db.transaction(function(f){rt(f,t,function(){r._dbInfo=t,o();},function(l,d){c(d);});},c);});return t.serializer=Ne,a}function J(e,r,t,i,a,o){e.executeSql(t,i,a,function(c,f){f.code===f.SYNTAX_ERR?c.executeSql(`SELECT name FROM sqlite_master WHERE type='table' AND name = ?`,[r.storeName],function(l,d){d.rows.length?o(l,f):rt(l,r,function(){l.executeSql(t,i,a,o);},o);},o):o(c,f);},o);}function Yt(e,r){var t=this;e=O(e);var i=new p(function(a,o){t.ready().then(function(){var c=t._dbInfo;c.db.transaction(function(f){J(f,c,`SELECT * FROM `+c.storeName+` WHERE key = ? LIMIT 1`,[e],function(l,d){var g=d.rows.length?d.rows.item(0).value:null;g&&(g=c.serializer.deserialize(g)),a(g);},function(l,d){o(d);});});}).catch(o);});return _(i,r),i}function jt(e,r){var t=this,i=new p(function(a,o){t.ready().then(function(){var c=t._dbInfo;c.db.transaction(function(f){J(f,c,`SELECT * FROM `+c.storeName,[],function(l,d){for(var g=d.rows,E=g.length,S=0;S<E;S++){var N=g.item(S),x=N.value;if(x&&(x=c.serializer.deserialize(x)),x=e(x,N.key,S+1),x!==void 0){a(x);return}}a();},function(l,d){o(d);});});}).catch(o);});return _(i,r),i}function nt(e,r,t,i){var a=this;e=O(e);var o=new p(function(c,f){a.ready().then(function(){r===void 0&&(r=null);var l=r,d=a._dbInfo;d.serializer.serialize(r,function(g,E){E?f(E):d.db.transaction(function(S){J(S,d,`INSERT OR REPLACE INTO `+d.storeName+` (key, value) VALUES (?, ?)`,[e,g],function(){c(l);},function(N,x){f(x);});},function(S){if(S.code===S.QUOTA_ERR){if(i>0){c(nt.apply(a,[e,l,t,i-1]));return}f(S);}});});}).catch(f);});return _(o,t),o}function zt(e,r,t){return nt.apply(this,[e,r,t,1])}function qt(e,r){var t=this;e=O(e);var i=new p(function(a,o){t.ready().then(function(){var c=t._dbInfo;c.db.transaction(function(f){J(f,c,`DELETE FROM `+c.storeName+` WHERE key = ?`,[e],function(){a();},function(l,d){o(d);});});}).catch(o);});return _(i,r),i}function Kt(e){var r=this,t=new p(function(i,a){r.ready().then(function(){var o=r._dbInfo;o.db.transaction(function(c){J(c,o,`DELETE FROM `+o.storeName,[],function(){i();},function(f,l){a(l);});});}).catch(a);});return _(t,e),t}function Xt(e){var r=this,t=new p(function(i,a){r.ready().then(function(){var o=r._dbInfo;o.db.transaction(function(c){J(c,o,`SELECT COUNT(key) as c FROM `+o.storeName,[],function(f,l){var d=l.rows.item(0).c;i(d);},function(f,l){a(l);});});}).catch(a);});return _(t,e),t}function Jt(e,r){var t=this,i=new p(function(a,o){t.ready().then(function(){var c=t._dbInfo;c.db.transaction(function(f){J(f,c,`SELECT key FROM `+c.storeName+` WHERE id = ? LIMIT 1`,[e+1],function(l,d){a(d.rows.length?d.rows.item(0).key:null);},function(l,d){o(d);});});}).catch(o);});return _(i,r),i}function Qt(e){var r=this,t=new p(function(i,a){r.ready().then(function(){var o=r._dbInfo;o.db.transaction(function(c){J(c,o,`SELECT key FROM `+o.storeName,[],function(f,l){for(var d=[],g=0;g<l.rows.length;g++)d.push(l.rows.item(g).key);i(d);},function(f,l){a(l);});});}).catch(a);});return _(t,e),t}function Zt(e){return new p(function(r,t){e.transaction(function(i){i.executeSql(`SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'`,[],function(a,o){for(var c=[],f=0;f<o.rows.length;f++)c.push(o.rows.item(f).name);r({db:e,storeNames:c});},function(a,o){t(o);});},function(i){t(i);});})}function er(e,r){r=j.apply(this,arguments);var t=this.config();e=typeof e!=`function`&&e||{},e.name||(e.name=e.name||t.name,e.storeName=e.storeName||t.storeName);var i=this,a;return e.name?a=new p(function(o){var c;e.name===t.name?c=i._dbInfo.db:c=openDatabase(e.name,``,``,0),e.storeName?o({db:c,storeNames:[e.storeName]}):o(Zt(c));}).then(function(o){return new p(function(c,f){o.db.transaction(function(l){function d(N){return new p(function(x,V){l.executeSql(`DROP TABLE IF EXISTS `+N,[],function(){x();},function(P,H){V(H);});})}for(var g=[],E=0,S=o.storeNames.length;E<S;E++)g.push(d(o.storeNames[E]));p.all(g).then(function(){c();}).catch(function(N){f(N);});},function(l){f(l);});})}):a=p.reject(`Invalid arguments`),_(a,r),a}var tr={_driver:`webSQLStorage`,_initStorage:Ht,_support:kt(),iterate:jt,getItem:Yt,setItem:zt,removeItem:qt,clear:Kt,length:Xt,key:Jt,keys:Qt,dropInstance:er};function rr(){try{return typeof localStorage<`u`&&`setItem`in localStorage&&!!localStorage.setItem}catch{return false}}function ot(e,r){var t=e.name+`/`;return e.storeName!==r.storeName&&(t+=e.storeName+`/`),t}function nr(){var e=`_localforage_support_test`;try{return localStorage.setItem(e,!0),localStorage.removeItem(e),!1}catch{return true}}function or(){return !nr()||localStorage.length>0}function ir(e){var r=this,t={};if(e)for(var i in e)t[i]=e[i];return t.keyPrefix=ot(e,r._defaultConfig),or()?(r._dbInfo=t,t.serializer=Ne,p.resolve()):p.reject()}function ar(e){var r=this,t=r.ready().then(function(){for(var i=r._dbInfo.keyPrefix,a=localStorage.length-1;a>=0;a--){var o=localStorage.key(a);o.indexOf(i)===0&&localStorage.removeItem(o);}});return _(t,e),t}function sr(e,r){var t=this;e=O(e);var i=t.ready().then(function(){var a=t._dbInfo,o=localStorage.getItem(a.keyPrefix+e);return o&&(o=a.serializer.deserialize(o)),o});return _(i,r),i}function ur(e,r){var t=this,i=t.ready().then(function(){for(var a=t._dbInfo,o=a.keyPrefix,c=o.length,f=localStorage.length,l=1,d=0;d<f;d++){var g=localStorage.key(d);if(g.indexOf(o)===0){var E=localStorage.getItem(g);if(E&&(E=a.serializer.deserialize(E)),E=e(E,g.substring(c),l++),E!==void 0)return E}}});return _(i,r),i}function cr(e,r){var t=this,i=t.ready().then(function(){var a=t._dbInfo,o;try{o=localStorage.key(e);}catch{o=null;}return o&&(o=o.substring(a.keyPrefix.length)),o});return _(i,r),i}function fr(e){var r=this,t=r.ready().then(function(){for(var i=r._dbInfo,a=localStorage.length,o=[],c=0;c<a;c++){var f=localStorage.key(c);f.indexOf(i.keyPrefix)===0&&o.push(f.substring(i.keyPrefix.length));}return o});return _(t,e),t}function lr(e){var t=this.keys().then(function(i){return i.length});return _(t,e),t}function dr(e,r){var t=this;e=O(e);var i=t.ready().then(function(){var a=t._dbInfo;localStorage.removeItem(a.keyPrefix+e);});return _(i,r),i}function mr(e,r,t){var i=this;e=O(e);var a=i.ready().then(function(){r===void 0&&(r=null);var o=r;return new p(function(c,f){var l=i._dbInfo;l.serializer.serialize(r,function(d,g){if(g)f(g);else try{localStorage.setItem(l.keyPrefix+e,d),c(o);}catch(E){(E.name===`QuotaExceededError`||E.name===`NS_ERROR_DOM_QUOTA_REACHED`)&&f(E),f(E);}});})});return _(a,t),a}function gr(e,r){if(r=j.apply(this,arguments),e=typeof e!=`function`&&e||{},!e.name){var t=this.config();e.name=e.name||t.name,e.storeName=e.storeName||t.storeName;}var i=this,a;return e.name?a=new p(function(o){e.storeName?o(ot(e,i._defaultConfig)):o(e.name+`/`);}).then(function(o){for(var c=localStorage.length-1;c>=0;c--){var f=localStorage.key(c);f.indexOf(o)===0&&localStorage.removeItem(f);}}):a=p.reject(`Invalid arguments`),_(a,r),a}var pr={_driver:`localStorageWrapper`,_initStorage:ir,_support:rr(),iterate:ur,getItem:sr,setItem:mr,removeItem:dr,clear:ar,length:lr,key:cr,keys:fr,dropInstance:gr},hr=function(r,t){return r===t||typeof r==`number`&&typeof t==`number`&&isNaN(r)&&isNaN(t)},vr=function(r,t){for(var i=r.length,a=0;a<i;){if(hr(r[a],t))return true;a++;}return false},it=Array.isArray||function(e){return Object.prototype.toString.call(e)===`[object Array]`},ie={},at={},te={INDEXEDDB:Ut,WEBSQL:tr,LOCALSTORAGE:pr},yr=[te.INDEXEDDB._driver,te.WEBSQL._driver,te.LOCALSTORAGE._driver],me=[`dropInstance`],xe=[`clear`,`getItem`,`iterate`,`key`,`keys`,`length`,`removeItem`,`setItem`].concat(me),Er={description:``,driver:yr.slice(),name:`localforage`,size:4980736,storeName:`keyvaluepairs`,version:1};function _r(e,r){e[r]=function(){var t=arguments;return e.ready().then(function(){return e[r].apply(e,t)})};}function Le(){for(var e=1;e<arguments.length;e++){var r=arguments[e];if(r)for(var t in r)r.hasOwnProperty(t)&&(it(r[t])?arguments[0][t]=r[t].slice():arguments[0][t]=r[t]);}return arguments[0]}v.exports=new((function(){function e(r){R(this,e);for(var t in te)if(te.hasOwnProperty(t)){var i=te[t],a=i._driver;this[t]=a,ie[a]||this.defineDriver(i);}this._defaultConfig=Le({},Er),this._config=Le({},this._defaultConfig,r),this._driverSet=null,this._initDriver=null,this._ready=false,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){});}return e.prototype.config=function(t){if((typeof t>`u`?`undefined`:w(t))===`object`){if(this._ready)return new Error(`Can't call config() after localforage has been used.`);for(var i in t){if(i===`storeName`&&(t[i]=t[i].replace(/\W/g,`_`)),i===`version`&&typeof t[i]!=`number`)return new Error(`Database version must be a number.`);this._config[i]=t[i];}return `driver`in t&&t.driver?this.setDriver(this._config.driver):true}else return typeof t==`string`?this._config[t]:this._config},e.prototype.defineDriver=function(t,i,a){var o=new p(function(c,f){try{var l=t._driver,d=new Error(`Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver`);if(!t._driver){f(d);return}for(var g=xe.concat(`_initStorage`),E=0,S=g.length;E<S;E++){var N=g[E];if((!vr(me,N)||t[N])&&typeof t[N]!=`function`){f(d);return}}var V=function(){for(var ae=function(Ir){return function(){var Sr=new Error(`Method `+Ir+` is not implemented by the current driver`),st=p.reject(Sr);return _(st,arguments[arguments.length-1]),st}},Oe=0,wr=me.length;Oe<wr;Oe++){var Pe=me[Oe];t[Pe]||(t[Pe]=ae(Pe));}};V();var P=function(ae){ie[l]&&console.info(`Redefining LocalForage driver: `+l),ie[l]=t,at[l]=ae,c();};`_support`in t?t._support&&typeof t._support==`function`?t._support().then(P,f):P(!!t._support):P(!0);}catch(H){f(H);}});return C(o,i,a),o},e.prototype.driver=function(){return this._driver||null},e.prototype.getDriver=function(t,i,a){var o=ie[t]?p.resolve(ie[t]):p.reject(new Error(`Driver not found.`));return C(o,i,a),o},e.prototype.getSerializer=function(t){var i=p.resolve(Ne);return C(i,t),i},e.prototype.ready=function(t){var i=this,a=i._driverSet.then(function(){return i._ready===null&&(i._ready=i._initDriver()),i._ready});return C(a,t,t),a},e.prototype.setDriver=function(t,i,a){var o=this;it(t)||(t=[t]);var c=this._getSupportedDrivers(t);function f(){o._config.driver=o.driver();}function l(E){return o._extend(E),f(),o._ready=o._initStorage(o._config),o._ready}function d(E){return function(){var S=0;function N(){for(;S<E.length;){var x=E[S];return S++,o._dbInfo=null,o._ready=null,o.getDriver(x).then(l).catch(N)}f();var V=new Error(`No available storage method found.`);return o._driverSet=p.reject(V),o._driverSet}return N()}}return this._driverSet=(this._driverSet!==null?this._driverSet.catch(function(){return p.resolve()}):p.resolve()).then(function(){var E=c[0];return o._dbInfo=null,o._ready=null,o.getDriver(E).then(function(S){o._driver=S._driver,f(),o._wrapLibraryMethodsWithReady(),o._initDriver=d(c);})}).catch(function(){f();var E=new Error(`No available storage method found.`);return o._driverSet=p.reject(E),o._driverSet}),C(this._driverSet,i,a),this._driverSet},e.prototype.supports=function(t){return !!at[t]},e.prototype._extend=function(t){Le(this,t);},e.prototype._getSupportedDrivers=function(t){for(var i=[],a=0,o=t.length;a<o;a++){var c=t[a];this.supports(c)&&i.push(c);}return i},e.prototype._wrapLibraryMethodsWithReady=function(){for(var t=0,i=xe.length;t<i;t++)_r(this,xe[t]);},e.prototype.createInstance=function(t){return new e(t)},e})());},{3:3}]},{},[4])(4)});});var yt$1=v$2((vt,_e)=>{(function(s){var n={};n.VERSION=`1.6.1`;var h,u={},v=function(m,T){return function(){return T.apply(m,arguments)}},I=function(){var m=arguments,T=m[0],M,p;for(p=1;p<m.length;p++)for(M in m[p])!(M in T)&&m[p].hasOwnProperty(M)&&(T[M]=m[p][M]);return T},w=function(m,T){return {value:m,name:T}};n.TRACE=w(1,`TRACE`),n.DEBUG=w(2,`DEBUG`),n.INFO=w(3,`INFO`),n.TIME=w(4,`TIME`),n.WARN=w(5,`WARN`),n.ERROR=w(8,`ERROR`),n.OFF=w(99,`OFF`);var R=function(m){this.context=m,this.setLevel(m.filterLevel),this.log=this.info;};R.prototype={setLevel:function(m){m&&`value`in m&&(this.context.filterLevel=m);},getLevel:function(){return this.context.filterLevel},enabledFor:function(m){var T=this.context.filterLevel;return m.value>=T.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(m){typeof m==`string`&&m.length>0&&this.invoke(n.TIME,[m,`start`]);},timeEnd:function(m){typeof m==`string`&&m.length>0&&this.invoke(n.TIME,[m,`end`]);},invoke:function(m,T){h&&this.enabledFor(m)&&h(T,I({level:m},this.context));}};var b=new R({filterLevel:n.OFF});((function(){var m=n;m.enabledFor=v(b,b.enabledFor),m.trace=v(b,b.trace),m.debug=v(b,b.debug),m.time=v(b,b.time),m.timeEnd=v(b,b.timeEnd),m.info=v(b,b.info),m.warn=v(b,b.warn),m.error=v(b,b.error),m.log=m.info;}))(),n.setHandler=function(m){h=m;},n.setLevel=function(m){b.setLevel(m);for(var T in u)u.hasOwnProperty(T)&&u[T].setLevel(m);},n.getLevel=function(){return b.getLevel()},n.get=function(m){return u[m]||(u[m]=new R(I({name:m},b.context)))},n.createDefaultHandler=function(m){m=m||{},m.formatter=m.formatter||function(_,C){C.name&&_.unshift(`[`+C.name+`]`);};var T={},M=function(p,_){Function.prototype.apply.call(p,console,_);};return typeof console>`u`?function(){}:function(p,_){p=Array.prototype.slice.call(p);var C=console.log,O;_.level===n.TIME?(O=(_.name?`[`+_.name+`] `:``)+p[0],p[1]===`start`?console.time?console.time(O):T[O]=new Date().getTime():console.timeEnd?console.timeEnd(O):M(C,[O+`: `+(new Date().getTime()-T[O])+`ms`])):(_.level===n.WARN&&console.warn?C=console.warn:_.level===n.ERROR&&console.error?C=console.error:_.level===n.INFO&&console.info?C=console.info:_.level===n.DEBUG&&console.debug?C=console.debug:_.level===n.TRACE&&console.trace&&(C=console.trace),m.formatter(p,_),M(C,p));}},n.useDefaults=function(m){n.setLevel(m&&m.defaultLevel||n.DEBUG),n.setHandler(n.createDefaultHandler(m));},n.setDefaults=n.useDefaults,typeof define==`function`&&define.amd?define(n):typeof _e<`u`&&_e.exports?_e.exports=n:(n._prevLogger=s.Logger,n.noConflict=function(){return s.Logger=n._prevLogger,n},s.Logger=n);})(vt);});var Me$3=`14.2.5`;var Rr$3=Me$3.split(`-`)[0].split(`.`).slice(0,3).map(s=>s.padStart(2,`0`)).join(``),Gr$3=`WEB`,ft$4=`CooeeSDK`,Q$4=Me$3,Hr$4=parseInt(Rr$3,10);var Yr$3=[`collection`,`product`,`cart`],jr$2=[{identifier:`#flo-checkout-wrapper`,gateway:`Shopflow`},{identifier:`#fastrr-main-container`,gateway:`Shiprocket`},{identifier:`#gokwik-modal-wrapper`,gateway:`Gokwik`},{identifier:`#zecpe`,gateway:`Ecom 360`}],zr$3=[`View Item`,`View Cart`,`View Collection`],qr$4=[`CE Screen View`,`View Collection`,`View Item`,`View Cart`],Kr$3=`https://cdn.jsdelivr.net/npm/swiper@11`;function Jr$3(s){return `(\u23F0 took: ${Ve$4(s)})`}function Ve$4(s){if(s<0)return `${s}ms`;let n=new Date(Date.UTC(0,0,0,0,0,0,s)),h=[];return n.getUTCMinutes()&&h.push(n.getUTCMinutes()+`m`),n.getUTCSeconds()&&h.push(n.getUTCSeconds()+`s`),n.getUTCMilliseconds()&&h.push(n.getUTCMilliseconds()+`ms`),h.length||h.push(`0ms`),h.join(` `)}function Be$3(){return window.CooeeSDK.runtimeData}function en(){return Ve$4(Date.now()-Be$3().sdkLoadTime.getTime())}var Ue$2=x$3(dt$3());function ge$5(s){return Ue$2.default.createInstance({name:`lc`,storeName:s,driver:Ue$2.default.LOCALSTORAGE})}var re$4=class re{static storage;static async get(n,h){return await this.storage?.getItem(n)??h}static set(n,h){return this.storage?.setItem(n,h)}static remove(n){return this.storage?.removeItem(n)}static clear(){return this.storage?.clear()}static getForage(){return this.storage}};var ce$3=class ce extends re$4{static storeName=`usr`;static{this.storage=ge$5(this.storeName);}};var mt$4=`https://cdn.jsdelivr.net/npm/@letscooee/web-sdk@${Q$4}/dist`,fe$5={apiURL:`https://api.sdk.letscooee.com`,cdnApiURL:`https://cdn.sdk1.api.letscooee.com`,debug:false,mode:`production`,baseURL:mt$4,styleURL:`${mt$4}/styles.min.css`};var pe$5=class pe{static ISO_WITHOUT_MS_REGEX=new RegExp(/\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z)/);static isObject(n){return typeof n==`object`&&!Array.isArray(n)&&n!==null}static parseToAny(n){try{return JSON.parse(n.toString())}catch{}return n.toString().match(this.ISO_WITHOUT_MS_REGEX)?new Date(n.toString()):n}static async sleep(n){return new Promise(h=>setTimeout(h,n))}static hasKeys(n){return n?Object.keys(n).length>=1:false}static convertObjectToArray(n,h){return h.reduce((u,v)=>(n.hasOwnProperty(v)&&n[v]!=null&&u.push({[v]:n[v]}),u),[])}static removeNullUndefinedKeys(n){return Object.keys(n).reduce((h,u)=>(n[u]!==null&&n[u]!==void 0&&(h[u]=n[u]),h),{})}static stringify(n){return JSON.stringify(n,function(h,u){return u===void 0?null:u})}};var he$4=class he{gaEnabled;gaMeasurementID;pixelPush;website;currencyCount;money;storefrontToken;skipItemAttribute;widgetCustomisation;currency;static get(){return window.CooeeSDK.config}update(n){return n??={},this.gaEnabled=n.gaEnabled,this.gaMeasurementID=n.gaMeasurementID,this.pixelPush=n.pixelPush,this.website=n.website??{},this.currencyCount=n.currencyCount??0,this.money=n.money,this.currency=n.currency,this.storefrontToken=n.storefrontToken,this.skipItemAttribute=n.skipItemAttribute,this.widgetCustomisation=n.widgetCustomisation,this}};var ve$4=class ve extends re$4{static storeName=`ses`;static{this.storage=ge$5(this.storeName);}};var ye$3=class ye{static format(n,h){return h.replace(/{{\s*(\w+)\s*}}/,(v,I)=>{switch(I){case `amount`:return this.formatWithDelimiters(n,2);case `amount_no_decimals`:return this.formatWithDelimiters(n,0);case `amount_with_comma_separator`:return this.formatWithDelimiters(n,2,`.`,`,`);case `amount_no_decimals_with_comma_separator`:return this.formatWithDelimiters(n,0,`.`,`,`);case `amount_with_apostrophe_separator`:return this.formatWithDelimiters(n,2,`'`,`.`);case `amount_no_decimals_with_space_separator`:return this.formatWithDelimiters(n,0,` `);case `amount_with_space_separator`:return this.formatWithDelimiters(n,2,` `,`,`);case `amount_with_period_and_space_separator`:return this.formatWithDelimiters(n,2,` `,`.`);default:return v}})}static formatWithDelimiters(n,h=2,u=`,`,v=`.`){if(isNaN(n)||n==null)return `0`;let w=(n/100).toFixed(h).split(`.`);return w[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,`$1`+u)+(w[1]?v+w[1]:``)}};function Sn$1(s){try{return new URL(s)}catch{return}}function Dn(s){return !s||s===`null`||s===`undefined`}function Rn(s,n){let h=s.indexOf(n);return h===-1?false:(s.splice(h,1),true)}function Cn(s,n,h){return {[s]:Cr$3(n,h),[s+`_wo_currency`]:n}}function Cr$3(s,n){if(s==0&&n)return `Free`;let h=Be$3(),u=he$4.get(),v=h.shopCurrencyCode||u.currency,I=h.currencyCode;I||Y$2.warn(`Currency code is not set in RuntimeData`);let w=u.money?.format??h.moneyFormat,R;if(w&&v===I&&!u.money?.auto)R=ye$3.format(s*100,w);else {let b={style:`currency`,currency:I||v,minimumFractionDigits:2,maximumFractionDigits:2,trailingZeroDisplay:`stripIfInteger`},m;try{m=new Intl.NumberFormat(gt$3(),b);}catch(T){return ke(T,`format-currency`,{extra:{currentCurrency:I,shopCurrency:v}}),``}R=m.format(s),R=R.replace(`₹`,`Rs. `),u.money?.showCurrency&&I!==`INR`&&(R=R.concat(` ${I}`));}return R}function An(s){let n=gt$3();try{return new Intl.NumberFormat(n,{notation:`compact`}).format(s)}catch(h){return ke(h,`format-number`,{extra:{lang:n,value:s}}),s.toString()}}function gt$3(){let s=`en`;return typeof navigator<`u`&&(navigator.languages!==void 0&&navigator.languages.length>0?s=navigator.languages[0]:navigator.language&&(s=navigator.language)),s=s.split(`;`)[0],s=s.split(`-`)[0],s||`en`}var Ee$4;function pt$3(){if(Ee$4)return Ee$4;try{return Ee$4=Intl.DateTimeFormat().resolvedOptions().timeZone,Ee$4}catch{return ``}}function ht$3(s){document.readyState!==`loading`?s():document.addEventListener(`DOMContentLoaded`,s);}function Nn$3(s){let n=document.createElement(`span`);n.id=`snackbar`,n.innerText=s,document.body.appendChild(n),n.className=`cooee-snackbar show`,setTimeout(()=>{n.classList.remove(`show`),document.body.removeChild(n);},5e3);}async function Ar$3(s,n=7,h=document){let u=1,v=document.querySelectorAll(`nonexistent-tag`);for(;u<=n;){let I=Math.min(50*2**u,1e3);if(u>1&&await pe$5.sleep(I),v=h.querySelectorAll(s),v.length)return Y$2.verbose(`Attempt ${u}: ${v.length} elements found with ${s}`),v;Y$2.verbose(`Attempt ${u}: Elements not found with ${s}. Will retry after ${I}ms.`),u++;}return Y$2.verbose(`\u26A0\uFE0F Max attempts reached. Element not found with ${s}.`),v}async function xn(s,n=10,h=document){return (await Ar$3(s,n,h)).item(0)}async function Nr$4(s){let[n,h,u]=await Promise.all([ce$3.get(`did`),ve$4.get(`id`,``),ce$3.get(`sessionNumber`,1)]),v={letscooee_did:n,letscooee_sid:h,letscooee_sn:`${u}`,__letscooee_time:new Date().toLocaleString()};return s&&(v.__letscooee_via=s),v}async function Ln(s){let n=await Nr$4(s);return Object.entries(n).map(([h,u])=>({key:h,value:u.toString()}))}function On$1(s,n,h,u=false){Object.defineProperty(s,n,{enumerable:false,configurable:false,writable:u,value:h});}function Pn(s){if(s%100>=11&&s%100<=13)return s+`th`;switch(s%10){case 1:return s+`st`;case 2:return s+`nd`;case 3:return s+`rd`;default:return s+`th`}}var W$2=x$3(yt$1());var Y$2=class Y{static debuggerEl;static infoLogs=[];static log(...n){W$2.default.info(...n);}static verbose(...n){W$2.default.debug(...n);}static error(...n){W$2.default.error(...n);}static warn(...n){W$2.default.warn(...n);}static info(...n){W$2.default.info(...n),this.infoLogs.push({time:new Date,message:n.join(` `)}),this.addToDebugger();}static trace(...n){W$2.default.trace(...n);}static addToDebugger(){sessionStorage.cooeeDebug&&(this.debuggerEl=this.debuggerEl??document.querySelector(`cooee-debugger`),this.debuggerEl&&this.debuggerEl&&(this.debuggerEl.logs=[...this.infoLogs]));}};function Un$1(s=ft$4){W$2.default.useDefaults({formatter:function(n){n.unshift(`${s} (v${Q$4}):`);}}),xr$3()&&(localStorage.cooeeLogLevel=`TRACE`),localStorage.cooeeLogLevel?W$2.default.setLevel(W$2.default[localStorage.cooeeLogLevel]):W$2.default.setLevel(W$2.default.OFF);}function xr$3(){let s=Et$2();return s===`1`||s===`on`}function Et$2(){return new URL(location.href).searchParams?.get(`cooee-debug`)}function kn$1(){let s=[`display: inline-block;`,`font-size: 14px;`,`background: linear-gradient(90deg, #d52dc8 25%, #2179e2 82%);`,`color: white;`,`padding: 4px;`,`border-radius: 4px;`].join(` `),n=`
4
4
  `;n+=`\u{1F4E3} Drive higher conversions with AI-powered onsite engagement
5
5
  `,n+=`\u{1F50D} Track real-time visitor intent & optimize engagement
6
6
  `,n+=`\u{1F4CA} Improve Meta Ads ROAS with intent-driven campaigns
7
7
  `,n+=`\u{1F6CD}\uFE0F Boost purchases & repeat sales effortlessly
8
8
  `,n+=`
9
9
 
10
- `,n+=`Learn more: https://www.letscooee.com`,console.group(`%c Elevate your ecommerce experience with Cooee 🚀 `,s),console.log(`%c${n}`,`font-size: 13px; line-height: 1.8;`),console.log(`SDK v${Q$4}`),console.groupEnd(),Y$2.info(`SDK v${Q$4} loaded`);}function Wn$1(){let s=localStorage.getItem(`cooeeDebugTill`),n=Et$2();if(n===`1`||n===`on`){let h=Or$4();s||(s=h.toString(),localStorage.setItem(`cooeeDebugTill`,s));}n===`on`?sessionStorage.cooeeDebug=`1`:n===`off`&&sessionStorage.removeItem(`cooeeDebug`),sessionStorage.cooeeDebug&&Lr$3(),s&&new Date(+s)<new Date&&localStorage.removeItem(`cooeeDebugTill`);}function Lr$3(){let s=document.createElement(`cooee-debugger`);ht$3(()=>{document.body.appendChild(s);});}function Or$4(){return new Date().getTime()+360*60*1e3}var _t$3=5,Pr$4=500,ne$2=class ne extends Error{request;response;status;requestBody;responseText;constructor(n){super(n),this.name=`FetchError`,Object.setPrototypeOf(this,new.target.prototype);}is40x(){return !!this.response&&this.response.status>=400&&this.response.status<500}};async function Hn$1(s,n){let h=Date.now(),u;try{u=await Mr$4(s,n);}catch{}let v=u?new Request(u.url,{method:n?.method||`GET`}):new Request(s,n);if(!u||!u.ok){let m=`Failed to fetch`;u?.statusText&&(m+=`: ${u.statusText}`);let T=new ne$2(m);throw T.request=v,T.response=u?.clone(),T.status=u?.status,T.requestBody=n?.body,T.responseText=await bt$2(u),T}let I,w=(u.headers.get(`content-type`)||``).toLowerCase(),R=u.headers.get(`content-length`),b=n?.method?.toUpperCase()||`GET`;if(u.status===204||u.status===205||b===`HEAD`||R===`0`)I=void 0;else if(w.includes(`application/json`)||w.includes(`application/problem+json`)||w.includes(`text/javascript`))try{I=await u.clone().json();}catch(m){let T=new ne$2(`Failed to parse JSON response: ${m?.message}`);throw T.request=v,T.response=u.clone(),T.status=u.status,T.requestBody=n?.body,T.responseText=await bt$2(u),T}else w.includes(`text/`)||w.includes(`image/svg+xml`)?I=await u.text():I=await u.arrayBuffer();return {data:I,status:u.status,statusText:u.statusText,headers:u.headers,timeTakenMs:Date.now()-h,options:n,request:v}}async function Mr$4(s,n){let h=null,u;for(let v=0;v<=_t$3;v++){try{if(u=await fetch(s,n),u.ok||u.status>=400&&u.status<500)return u;h=new Error(`Server error: ${u.status} ${u.statusText}`);}catch(I){h=I instanceof Error?I:new Error(String(I));}if(v<_t$3){let I=Math.pow(2,v)*Pr$4;Y$2.info(`Request to ${s} failed. Retrying in ${I}ms...`),await new Promise(w=>setTimeout(w,I));}}if(u&&!u.ok)return u;throw h||new Error(`Request failed after retries`)}async function bt$2(s){if(s){try{return s=s.clone(),await s.json()}catch{}try{return await s.text()}catch{}}}var be$4={},Te$3,we$4,wt$2,It$2,Tt$1;async function St$2(){if(!we$4)return Tt$1??=Vr$4(),Tt$1}async function Vr$4(){let{BrowserClient:s,Scope:n,defaultStackParser:h,getDefaultIntegrations:u,makeFetchTransport:v}=await import('./esm-B-weSuzB-DqgumxzC.js');It$2=n;we$4=new s({dsn:`https://1bc3dda4c861f60cd6be1b67584f4bc6@o559187.ingest.us.sentry.io/4507626484203520`,transport:v,stackParser:h,integrations:u({}).filter(w=>![`BrowserApiErrors`,`Breadcrumbs`,`GlobalHandlers`].includes(w.name)),environment:fe$5.mode,release:`web-sdk@${Q$4}`,debug:fe$5.debug,sampleRate:.5}),we$4.init();}function ke(s,n,h){Y$2.error(`${n}:`,s),St$2().then(()=>{let u=Dt$2(h);if(u.setTag(`operation`,n),s instanceof ne$2){Br$4(u,s,n);return}u.captureException(s);});}function Jn$1(s,n,h){St$2().then(()=>{Dt$2(h).captureMessage(s,n??`error`);});}function Br$4(s,n,h){if(Fr$2(s,n),n.response){let u=n.response,v=n.responseText;s.setTag(`error.message`,n.message),u.status!=null&&s.setTag(`http.status_code`,u.status),u.statusText&&s.setTag(`http.status_text`,u.statusText),v&&typeof v==`object`&&`error`in v&&(s.setTag(`http.error_code`,v.error.code),s.setTag(`http.error_message`,v.error.message)),s.setExtras({responseText:n.responseText,statusText:u.statusText,responseType:u.type,redirected:u.redirected,responseUrl:u.url,originalError:n.message}),s.captureMessage(`${h} failed with ${u.status}`,`error`);return}if(n.request){s.captureMessage(`No response was received for ${h}`,`error`);return}}function Fr$2(s,n){let h=n.request;if(!h)return;s.setExtras({body:n.requestBody,headers:h.headers,method:h.method,url:h.url});let u=h.headers?.get(`Cooee-Retry-Attempt`);u!==null&&s.setTag(`retry.attempt`,u);}function Qn$1(s){wt$2=s;}function Zn$1(s,n){be$4[s]=r$2(r$2({},be$4[s]),n);}function eo$1(s){Te$3=r$2(r$2({},Te$3),s);}function Dt$2(s){s??={};let{extra:n,tags:h}=s,u=new It$2;if(u.setClient(we$4),u.setUser(wt$2),s.triggerContext&&!s.engagementTrigger&&(s.engagementTrigger=s.triggerContext.triggerData),s.engagementTrigger){let v=s.engagementTrigger;u.setTags({"engagement.id":v.engagementID,"engagement.short_id":v.shortID,"engagement.objective":v.objective,"engagement.delivery_type":v.onsiteDeliveryType,"engagement.content_id":v.contentID,"engagement.variation":v.variation,"engagement.currency":v.currency});}return n&&u.setExtras(n),h&&u.setTags(h),Te$3&&u.setTags(Te$3),Object.keys(be$4).forEach(v=>{u.setContext(v,be$4[v]);}),u.setTag(`language`,navigator.language),u.setTag(`timezone`,pt$3()),Ur$3(u),u}function Ur$3(s){window.Shopify&&(s.setTag(`shopify.shop`,window.Shopify.shop),s.setTag(`shopify.currency`,window.Shopify.currency?.active),s.setTag(`shopify.locale`,window.Shopify.locale),s.setTag(`theme.schema_name`,window.Shopify.theme?.schema_name),s.setTag(`theme.schema_version`,window.Shopify.theme?.schema_version));}
10
+ `,n+=`Learn more: https://www.letscooee.com`,console.group(`%c Elevate your ecommerce experience with Cooee 🚀 `,s),console.log(`%c${n}`,`font-size: 13px; line-height: 1.8;`),console.log(`SDK v${Q$4}`),console.groupEnd(),Y$2.info(`SDK v${Q$4} loaded`);}function Wn$1(){let s=localStorage.getItem(`cooeeDebugTill`),n=Et$2();if(n===`1`||n===`on`){let h=Or$4();s||(s=h.toString(),localStorage.setItem(`cooeeDebugTill`,s));}n===`on`?sessionStorage.cooeeDebug=`1`:n===`off`&&sessionStorage.removeItem(`cooeeDebug`),sessionStorage.cooeeDebug&&Lr$3(),s&&new Date(+s)<new Date&&localStorage.removeItem(`cooeeDebugTill`);}function Lr$3(){let s=document.createElement(`cooee-debugger`);ht$3(()=>{document.body.appendChild(s);});}function Or$4(){return new Date().getTime()+360*60*1e3}var _t$3=5,Pr$4=500,ne$2=class ne extends Error{request;response;status;requestBody;responseText;constructor(n){super(n),this.name=`FetchError`,Object.setPrototypeOf(this,new.target.prototype);}is40x(){return !!this.response&&this.response.status>=400&&this.response.status<500}};async function Hn$1(s,n){let h=Date.now(),u;try{u=await Mr$4(s,n);}catch{}let v=u?new Request(u.url,{method:n?.method||`GET`}):new Request(s,n);if(!u||!u.ok){let m=`Failed to fetch`;u?.statusText&&(m+=`: ${u.statusText}`);let T=new ne$2(m);throw T.request=v,T.response=u?.clone(),T.status=u?.status,T.requestBody=n?.body,T.responseText=await bt$2(u),T}let I,w=(u.headers.get(`content-type`)||``).toLowerCase(),R=u.headers.get(`content-length`),b=n?.method?.toUpperCase()||`GET`;if(u.status===204||u.status===205||b===`HEAD`||R===`0`)I=void 0;else if(w.includes(`application/json`)||w.includes(`application/problem+json`)||w.includes(`text/javascript`))try{I=await u.clone().json();}catch(m){let T=new ne$2(`Failed to parse JSON response: ${m?.message}`);throw T.request=v,T.response=u.clone(),T.status=u.status,T.requestBody=n?.body,T.responseText=await bt$2(u),T}else w.includes(`text/`)||w.includes(`image/svg+xml`)?I=await u.text():I=await u.arrayBuffer();return {data:I,status:u.status,statusText:u.statusText,headers:u.headers,timeTakenMs:Date.now()-h,options:n,request:v}}async function Mr$4(s,n){let h=null,u;for(let v=0;v<=_t$3;v++){try{if(u=await fetch(s,n),u.ok||u.status>=400&&u.status<500)return u;h=new Error(`Server error: ${u.status} ${u.statusText}`);}catch(I){h=I instanceof Error?I:new Error(String(I));}if(v<_t$3){let I=Math.pow(2,v)*Pr$4;Y$2.info(`Request to ${s} failed. Retrying in ${I}ms...`),await new Promise(w=>setTimeout(w,I));}}if(u&&!u.ok)return u;throw h||new Error(`Request failed after retries`)}async function bt$2(s){if(s){try{return s=s.clone(),await s.json()}catch{}try{return await s.text()}catch{}}}var be$4={},Te$3,we$4,wt$2,It$2,Tt$1;async function St$2(){if(!we$4)return Tt$1??=Vr$4(),Tt$1}async function Vr$4(){let{BrowserClient:s,Scope:n,defaultStackParser:h,getDefaultIntegrations:u,makeFetchTransport:v}=await import('./esm-B-weSuzB-QDzDnzQG.js');It$2=n;we$4=new s({dsn:`https://1bc3dda4c861f60cd6be1b67584f4bc6@o559187.ingest.us.sentry.io/4507626484203520`,transport:v,stackParser:h,integrations:u({}).filter(w=>![`BrowserApiErrors`,`Breadcrumbs`,`GlobalHandlers`].includes(w.name)),environment:fe$5.mode,release:`web-sdk@${Q$4}`,debug:fe$5.debug,sampleRate:.5}),we$4.init();}function ke(s,n,h){Y$2.error(`${n}:`,s),St$2().then(()=>{let u=Dt$2(h);if(u.setTag(`operation`,n),s instanceof ne$2){Br$4(u,s,n);return}u.captureException(s);});}function Jn$1(s,n,h){St$2().then(()=>{Dt$2(h).captureMessage(s,n??`error`);});}function Br$4(s,n,h){if(Fr$2(s,n),n.response){let u=n.response,v=n.responseText;s.setTag(`error.message`,n.message),u.status!=null&&s.setTag(`http.status_code`,u.status),u.statusText&&s.setTag(`http.status_text`,u.statusText),v&&typeof v==`object`&&`error`in v&&(s.setTag(`http.error_code`,v.error.code),s.setTag(`http.error_message`,v.error.message)),s.setExtras({responseText:n.responseText,statusText:u.statusText,responseType:u.type,redirected:u.redirected,responseUrl:u.url,originalError:n.message}),s.captureMessage(`${h} failed with ${u.status}`,`error`);return}if(n.request){s.captureMessage(`No response was received for ${h}`,`error`);return}}function Fr$2(s,n){let h=n.request;if(!h)return;s.setExtras({body:n.requestBody,headers:h.headers,method:h.method,url:h.url});let u=h.headers?.get(`Cooee-Retry-Attempt`);u!==null&&s.setTag(`retry.attempt`,u);}function Qn$1(s){wt$2=s;}function Zn$1(s,n){be$4[s]=r$2(r$2({},be$4[s]),n);}function eo$1(s){Te$3=r$2(r$2({},Te$3),s);}function Dt$2(s){s??={};let{extra:n,tags:h}=s,u=new It$2;if(u.setClient(we$4),u.setUser(wt$2),s.triggerContext&&!s.engagementTrigger&&(s.engagementTrigger=s.triggerContext.triggerData),s.engagementTrigger){let v=s.engagementTrigger;u.setTags({"engagement.id":v.engagementID,"engagement.short_id":v.shortID,"engagement.objective":v.objective,"engagement.delivery_type":v.onsiteDeliveryType,"engagement.content_id":v.contentID,"engagement.variation":v.variation,"engagement.currency":v.currency});}return n&&u.setExtras(n),h&&u.setTags(h),Te$3&&u.setTags(Te$3),Object.keys(be$4).forEach(v=>{u.setContext(v,be$4[v]);}),u.setTag(`language`,navigator.language),u.setTag(`timezone`,pt$3()),Ur$3(u),u}function Ur$3(s){window.Shopify&&(s.setTag(`shopify.shop`,window.Shopify.shop),s.setTag(`shopify.currency`,window.Shopify.currency?.active),s.setTag(`shopify.locale`,window.Shopify.locale),s.setTag(`theme.schema_name`,window.Shopify.theme?.schema_name),s.setTag(`theme.schema_version`,window.Shopify.theme?.schema_version));}
11
11
 
12
12
  var K$2=`a-f\\d`,kr$3=`#?[${K$2}]{3}[${K$2}]?`,Gr$2=`#?[${K$2}]{6}([${K$2}]{2})?`,Br$3=new RegExp(`[^#${K$2}]`,`gi`),Wr$3=new RegExp(`^${kr$3}$|^${Gr$2}$`,`i`);function xt(r,t={}){if(typeof r!=`string`||Br$3.test(r)||!Wr$3.test(r))throw new TypeError(`Expected a valid hex string`);r=r.replace(/^#/,``);let e=1;r.length===8&&(e=Number.parseInt(r.slice(6,8),16)/255,r=r.slice(0,6)),r.length===4&&(e=Number.parseInt(r.slice(3,4).repeat(2),16)/255,r=r.slice(0,3)),r.length===3&&(r=r[0]+r[0]+r[1]+r[1]+r[2]+r[2]);let i=Number.parseInt(r,16),n=i>>16,o=i>>8&255,_=i&255,u=typeof t.alpha==`number`?t.alpha:e;if(t.format===`array`)return [n,o,_,u];if(t.format===`css`)return `rgb(${n} ${o} ${_}${u===1?``:` / ${Number((u*100).toFixed(2))}%`})`;return {red:n,green:o,blue:_,alpha:u}}var O$1=class O{h;a=100;g;constructor(t){t??={},this.h=t.h,this.a=t.a,this.g=t.g;}get hex(){return this.h}get grad(){return this.g}get rgba(){if(!this.hex)return ``;try{return xt(this.hex,{format:`css`,alpha:this.getAlpha()})}catch(t){return console.error(`Invalid hex`,t),`#000000`}}getAlpha(){return (this.a??100)/100}};var C$3=class C{s;g;i;constructor(t){t.s&&(this.s=new O$1(t.s)),t.g&&(this.g=new z$3(t.g)),this.i=t.i;}get solid(){return this.s}get glossy(){return this.g}get img(){return this.i}};var w$1=class w{s;r;w;c;constructor(t){this.s=t.s,this.r=t.r,this.w=t.w,t.c&&(this.c=new O$1(t.c));}get radius(){return this.r}get width(){return this.w}get color(){return this.c}get style(){return rr$4[this.s??1]}},rr$4=(e=>(e[e.SOLID=1]=`SOLID`,e[e.DASHED=2]=`DASHED`,e))(rr$4||{});var z$3=class r{static DEFAULT_FALLBACK=new O$1({h:`#000000`,a:50});r;c;fb;constructor(t){this.r=t.r,t.c&&(this.c=new O$1(t.c)),t.fb&&(this.fb=new O$1(t.fb));}get radius(){return this.r}get color(){return this.c}get fallback(){return this.fb??r.DEFAULT_FALLBACK}};var X$4=class X{blur;spr;clr;x;y;constructor(t){t=t??{},this.blur=t.blur??0,this.spr=t.spr??0,this.x=t.x??0,this.y=t.y??0,this.clr=new O$1(t.clr);}getStyle(t){return `${this.x*t}px ${this.y*t}px ${this.blur*t}px ${this.spr*t}px ${this.clr.rgba}`}};var T$2=class T{pl;pr;pt;pb;ml;mr;mt;mb;cent;constructor(t){t=t??{},this.pl=t.pl??0,this.pr=t.pr??0,this.pt=t.pt??0,this.pb=t.pb??0,this.ml=t.ml??0,this.mr=t.mr??0,this.mt=t.mt??0,this.mb=t.mb??0,this.cent=t.cent??false;}getHorizontal(){return this.pl+this.pr}getVertical(){return this.pt+this.pb}getPaddingCSS(){return `${this.pt}px ${this.pr}px ${this.pb}px ${this.pl}px`}};var j$2=class j{rot;constructor(t){t?.rot&&(this.rot=t.rot);}get rotate(){return this.rot}},st$3,p$1,sr$4,Ct$1,D$2,er$3,_r$3,ur$4,lr$4,wt$1,At$1,Pt$1,Q$3={},fr$4=[],Fr$1=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,_t$2=Array.isArray;function A$2(r,t){for(var e in t)r[e]=t[e];return r}function Tt(r){r&&r.parentNode&&r.parentNode.removeChild(r);}function Yr$2(r,t,e){var i,n,o,_={};for(o in t)o==`key`?i=t[o]:o==`ref`?n=t[o]:_[o]=t[o];if(arguments.length>2&&(_.children=arguments.length>3?st$3.call(arguments,2):e),typeof r==`function`&&r.defaultProps!=null)for(o in r.defaultProps)_[o]===void 0&&(_[o]=r.defaultProps[o]);return nt$2(r,_,i,n,null)}function nt$2(r,t,e,i,n){var o={type:r,props:t,key:e,ref:i,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:n??++sr$4,__i:-1,__u:0};return n==null&&p$1.vnode!=null&&p$1.vnode(o),o}function ut$3(r){return r.children}function U$1(r,t){this.props=r,this.context=t;}function V$3(r,t){if(t==null)return r.__?V$3(r.__,r.__i+1):null;for(var e;t<r.__k.length;t++)if((e=r.__k[t])!=null&&e.__e!=null)return e.__e;return typeof r.type==`function`?V$3(r):null}function cr$3(r){var t,e;if((r=r.__)!=null&&r.__c!=null){for(r.__e=r.__c.base=null,t=0;t<r.__k.length;t++)if((e=r.__k[t])!=null&&e.__e!=null){r.__e=r.__c.base=e.__e;break}return cr$3(r)}}function ir$4(r){(!r.__d&&(r.__d=true)&&D$2.push(r)&&!ot$3.__r++||er$3!=p$1.debounceRendering)&&((er$3=p$1.debounceRendering)||_r$3)(ot$3);}function ot$3(){for(var r,t,e,i,n,o,_,u=1;D$2.length;)D$2.length>u&&D$2.sort(ur$4),r=D$2.shift(),u=D$2.length,r.__d&&(e=void 0,n=(i=(t=r).__v).__e,o=[],_=[],t.__P&&((e=A$2({},i)).__v=i.__v+1,p$1.vnode&&p$1.vnode(e),Dt$1(t.__P,e,i,t.__n,t.__P.namespaceURI,32&i.__u?[n]:null,o,n??V$3(i),!!(32&i.__u),_),e.__v=i.__v,e.__.__k[e.__i]=e,pr$4(o,e,_),e.__e!=n&&cr$3(e)));ot$3.__r=0;}function ar$4(r,t,e,i,n,o,_,u,l,f,h){var s,E,c,g,b,I,m=i&&i.__k||fr$4,v=t.length;for(l=Kr$2(e,t,m,l,v),s=0;s<v;s++)(c=e.__k[s])!=null&&(E=c.__i==-1?Q$3:m[c.__i]||Q$3,c.__i=s,I=Dt$1(r,c,E,n,o,_,u,l,f,h),g=c.__e,c.ref&&E.ref!=c.ref&&(E.ref&&Ut$1(E.ref,null,c),h.push(c.ref,c.__c||g,c)),b==null&&g!=null&&(b=g),4&c.__u||E.__k===c.__k?l=hr$3(c,l,r):typeof c.type==`function`&&I!==void 0?l=I:g&&(l=g.nextSibling),c.__u&=-7);return e.__e=b,l}function Kr$2(r,t,e,i,n){var o,_,u,l,f,h=e.length,s=h,E=0;for(r.__k=new Array(n),o=0;o<n;o++)(_=t[o])!=null&&typeof _!=`boolean`&&typeof _!=`function`?(l=o+E,(_=r.__k[o]=typeof _==`string`||typeof _==`number`||typeof _==`bigint`||_.constructor==String?nt$2(null,_,null,null,null):_t$2(_)?nt$2(ut$3,{children:_},null,null,null):_.constructor==null&&_.__b>0?nt$2(_.type,_.props,_.key,_.ref?_.ref:null,_.__v):_).__=r,_.__b=r.__b+1,u=null,(f=_.__i=zr$2(_,e,l,s))!=-1&&(s--,(u=e[f])&&(u.__u|=2)),u==null||u.__v==null?(f==-1&&(n>h?E--:n<h&&E++),typeof _.type!=`function`&&(_.__u|=4)):f!=l&&(f==l-1?E--:f==l+1?E++:(f>l?E--:E++,_.__u|=4))):r.__k[o]=null;if(s)for(o=0;o<h;o++)(u=e[o])!=null&&!(2&u.__u)&&(u.__e==i&&(i=V$3(u)),mr$4(u,u));return i}function hr$3(r,t,e){var i,n;if(typeof r.type==`function`){for(i=r.__k,n=0;i&&n<i.length;n++)i[n]&&(i[n].__=r,t=hr$3(i[n],t,e));return t}r.__e!=t&&(t&&r.type&&!e.contains(t)&&(t=V$3(r)),e.insertBefore(r.__e,t||null),t=r.__e);do t=t&&t.nextSibling;while(t!=null&&t.nodeType==8);return t}function zr$2(r,t,e,i){var n,o,_=r.key,u=r.type,l=t[e];if(l===null&&r.key==null||l&&_==l.key&&u==l.type&&(2&l.__u)==0)return e;if(i>(l!=null&&(2&l.__u)==0?1:0))for(n=e-1,o=e+1;n>=0||o<t.length;){if(n>=0){if((l=t[n])&&(2&l.__u)==0&&_==l.key&&u==l.type)return n;n--;}if(o<t.length){if((l=t[o])&&(2&l.__u)==0&&_==l.key&&u==l.type)return o;o++;}}return -1}function nr$4(r,t,e){t[0]==`-`?r.setProperty(t,e??``):r[t]=e==null?``:typeof e!=`number`||Fr$1.test(t)?e:e+`px`;}function it$2(r,t,e,i,n){var o,_;t:if(t==`style`)if(typeof e==`string`)r.style.cssText=e;else {if(typeof i==`string`&&(r.style.cssText=i=``),i)for(t in i)e&&t in e||nr$4(r.style,t,``);if(e)for(t in e)i&&e[t]==i[t]||nr$4(r.style,t,e[t]);}else if(t[0]==`o`&&t[1]==`n`)o=t!=(t=t.replace(lr$4,`$1`)),_=t.toLowerCase(),t=_ in r||t==`onFocusOut`||t==`onFocusIn`?_.slice(2):t.slice(2),r.l||(r.l={}),r.l[t+o]=e,e?i?e.u=i.u:(e.u=wt$1,r.addEventListener(t,o?Pt$1:At$1,o)):r.removeEventListener(t,o?Pt$1:At$1,o);else {if(n==`http://www.w3.org/2000/svg`)t=t.replace(/xlink(H|:h)/,`h`).replace(/sName$/,`s`);else if(t!=`width`&&t!=`height`&&t!=`href`&&t!=`list`&&t!=`form`&&t!=`tabIndex`&&t!=`download`&&t!=`rowSpan`&&t!=`colSpan`&&t!=`role`&&t!=`popover`&&t in r)try{r[t]=e??``;break t}catch{}typeof e==`function`||(e==null||e===false&&t[4]!=`-`?r.removeAttribute(t):r.setAttribute(t,t==`popover`&&e==1?``:e));}}function or$4(r){return function(t){if(this.l){var e=this.l[t.type+r];if(t.t==null)t.t=wt$1++;else if(t.t<e.u)return;return e(p$1.event?p$1.event(t):t)}}}function Dt$1(r,t,e,i,n,o,_,u,l,f){var h,s,E,c,g,b,I,m,v,a,P,tt,W,qt,rt,$,Rt,R=t.type;if(t.constructor!=null)return null;128&e.__u&&(l=!!(32&e.__u),o=[u=t.__e=e.__e]),(h=p$1.__b)&&h(t);t:if(typeof R==`function`)try{if(m=t.props,v=`prototype`in R&&R.prototype.render,a=(h=R.contextType)&&i[h.__c],P=h?a?a.props.value:h.__:i,e.__c?I=(s=t.__c=e.__c).__=s.__E:(v?t.__c=s=new R(m,P):(t.__c=s=new U$1(m,P),s.constructor=R,s.render=jr$1),a&&a.sub(s),s.props=m,s.state||(s.state={}),s.context=P,s.__n=i,E=s.__d=!0,s.__h=[],s._sb=[]),v&&s.__s==null&&(s.__s=s.state),v&&R.getDerivedStateFromProps!=null&&(s.__s==s.state&&(s.__s=A$2({},s.__s)),A$2(s.__s,R.getDerivedStateFromProps(m,s.__s))),c=s.props,g=s.state,s.__v=t,E)v&&R.getDerivedStateFromProps==null&&s.componentWillMount!=null&&s.componentWillMount(),v&&s.componentDidMount!=null&&s.__h.push(s.componentDidMount);else {if(v&&R.getDerivedStateFromProps==null&&m!==c&&s.componentWillReceiveProps!=null&&s.componentWillReceiveProps(m,P),!s.__e&&s.shouldComponentUpdate!=null&&s.shouldComponentUpdate(m,s.__s,P)===!1||t.__v==e.__v){for(t.__v!=e.__v&&(s.props=m,s.state=s.__s,s.__d=!1),t.__e=e.__e,t.__k=e.__k,t.__k.some(function(F){F&&(F.__=t);}),tt=0;tt<s._sb.length;tt++)s.__h.push(s._sb[tt]);s._sb=[],s.__h.length&&_.push(s);break t}s.componentWillUpdate!=null&&s.componentWillUpdate(m,s.__s,P),v&&s.componentDidUpdate!=null&&s.__h.push(function(){s.componentDidUpdate(c,g,b);});}if(s.context=P,s.props=m,s.__P=r,s.__e=!1,W=p$1.__r,qt=0,v){for(s.state=s.__s,s.__d=!1,W&&W(t),h=s.render(s.props,s.state,s.context),rt=0;rt<s._sb.length;rt++)s.__h.push(s._sb[rt]);s._sb=[];}else do s.__d=!1,W&&W(t),h=s.render(s.props,s.state,s.context),s.state=s.__s;while(s.__d&&++qt<25);s.state=s.__s,s.getChildContext!=null&&(i=A$2(A$2({},i),s.getChildContext())),v&&!E&&s.getSnapshotBeforeUpdate!=null&&(b=s.getSnapshotBeforeUpdate(c,g)),$=h,h!=null&&h.type===ut$3&&h.key==null&&($=dr$4(h.props.children)),u=ar$4(r,_t$2($)?$:[$],t,e,i,n,o,_,u,l,f),s.base=t.__e,t.__u&=-161,s.__h.length&&_.push(s),I&&(s.__E=s.__=null);}catch(F){if(t.__v=null,l||o!=null)if(F.then){for(t.__u|=l?160:128;u&&u.nodeType==8&&u.nextSibling;)u=u.nextSibling;o[o.indexOf(u)]=null,t.__e=u;}else for(Rt=o.length;Rt--;)Tt(o[Rt]);else t.__e=e.__e,t.__k=e.__k;p$1.__e(F,t,e);}else o==null&&t.__v==e.__v?(t.__k=e.__k,t.__e=e.__e):u=t.__e=Xr$2(e.__e,t,e,i,n,o,_,l,f);return (h=p$1.diffed)&&h(t),128&t.__u?void 0:u}function pr$4(r,t,e){for(var i=0;i<e.length;i++)Ut$1(e[i],e[++i],e[++i]);p$1.__c&&p$1.__c(t,r),r.some(function(n){try{r=n.__h,n.__h=[],r.some(function(o){o.call(n);});}catch(o){p$1.__e(o,n.__v);}});}function dr$4(r){return typeof r!=`object`||r==null||r.__b&&r.__b>0?r:_t$2(r)?r.map(dr$4):A$2({},r)}function Xr$2(r,t,e,i,n,o,_,u,l){var f,h,s,E,c,g,b,I=e.props,m=t.props,v=t.type;if(v==`svg`?n=`http://www.w3.org/2000/svg`:v==`math`?n=`http://www.w3.org/1998/Math/MathML`:n||(n=`http://www.w3.org/1999/xhtml`),o!=null){for(f=0;f<o.length;f++)if((c=o[f])&&`setAttribute`in c==!!v&&(v?c.localName==v:c.nodeType==3)){r=c,o[f]=null;break}}if(r==null){if(v==null)return document.createTextNode(m);r=document.createElementNS(n,v,m.is&&m),u&&(p$1.__m&&p$1.__m(t,o),u=false),o=null;}if(v==null)I===m||u&&r.data==m||(r.data=m);else {if(o=o&&st$3.call(r.childNodes),I=e.props||Q$3,!u&&o!=null)for(I={},f=0;f<r.attributes.length;f++)I[(c=r.attributes[f]).name]=c.value;for(f in I)if(c=I[f],f!=`children`){if(f==`dangerouslySetInnerHTML`)s=c;else if(!(f in m)){if(f==`value`&&`defaultValue`in m||f==`checked`&&`defaultChecked`in m)continue;it$2(r,f,null,c,n);}}for(f in m)c=m[f],f==`children`?E=c:f==`dangerouslySetInnerHTML`?h=c:f==`value`?g=c:f==`checked`?b=c:u&&typeof c!=`function`||I[f]===c||it$2(r,f,c,I[f],n);if(h)u||s&&(h.__html==s.__html||h.__html==r.innerHTML)||(r.innerHTML=h.__html),t.__k=[];else if(s&&(r.innerHTML=``),ar$4(t.type==`template`?r.content:r,_t$2(E)?E:[E],t,e,i,v==`foreignObject`?`http://www.w3.org/1999/xhtml`:n,o,_,o?o[0]:e.__k&&V$3(e,0),u,l),o!=null)for(f=o.length;f--;)Tt(o[f]);u||(f=`value`,v==`progress`&&g==null?r.removeAttribute(`value`):g!=null&&(g!==r[f]||v==`progress`&&!g||v==`option`&&g!=I[f])&&it$2(r,f,g,I[f],n),f=`checked`,b!=null&&b!=r[f]&&it$2(r,f,b,I[f],n));}return r}function Ut$1(r,t,e){try{if(typeof r==`function`){var i=typeof r.__u==`function`;i&&r.__u(),i&&t==null||(r.__u=r(t));}else r.current=t;}catch(n){p$1.__e(n,e);}}function mr$4(r,t,e){var i,n;if(p$1.unmount&&p$1.unmount(r),(i=r.ref)&&(i.current&&i.current!=r.__e||Ut$1(i,null,t)),(i=r.__c)!=null){if(i.componentWillUnmount)try{i.componentWillUnmount();}catch(o){p$1.__e(o,t);}i.base=i.__P=null;}if(i=r.__k)for(n=0;n<i.length;n++)i[n]&&mr$4(i[n],t,e||typeof r.type!=`function`);e||Tt(r.__e),r.__c=r.__=r.__e=void 0;}function jr$1(r,t,e){return this.constructor(r,e)}function Ke(r,t,e){var i,n,o,_;t==document&&(t=document.documentElement),p$1.__&&p$1.__(r,t),n=(i="undefined"==`function`)?null:t.__k,o=[],_=[],Dt$1(t,r=(t).__k=Yr$2(ut$3,null,[r]),n||Q$3,Q$3,t.namespaceURI,n?null:t.firstChild?st$3.call(t.childNodes):null,o,n?n.__e:t.firstChild,i,_),pr$4(o,r,_);}st$3=fr$4.slice,p$1={__e:function(r,t,e,i){for(var n,o,_;t=t.__;)if((n=t.__c)&&!n.__)try{if((o=n.constructor)&&o.getDerivedStateFromError!=null&&(n.setState(o.getDerivedStateFromError(r)),_=n.__d),n.componentDidCatch!=null&&(n.componentDidCatch(r,i||{}),_=n.__d),_)return n.__E=n}catch(u){r=u;}throw r}},sr$4=0,Ct$1=function(r){return r!=null&&r.constructor==null},U$1.prototype.setState=function(r,t){var e=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=A$2({},this.state);typeof r==`function`&&(r=r(A$2({},e),this.props)),r&&A$2(e,r),r!=null&&this.__v&&(t&&this._sb.push(t),ir$4(this));},U$1.prototype.forceUpdate=function(r){this.__v&&(this.__e=true,r&&this.__h.push(r),ir$4(this));},U$1.prototype.render=ut$3,D$2=[],_r$3=typeof Promise==`function`?Promise.prototype.then.bind(Promise.resolve()):setTimeout,ur$4=function(r,t){return r.__v.__b-t.__v.__b},ot$3.__r=0,lr$4=/(PointerCapture)$|Capture$/i,wt$1=0,At$1=or$4(false),Pt$1=or$4(true);var Mt$2,y,Vt$2,vr$1,Er$2=0,Rr$2=[],N$4=p$1,gr$3=N$4.__b,Nr$3=N$4.__r,Sr$2=N$4.diffed,Ir$2=N$4.__c,Or$3=N$4.unmount,yr$1=N$4.__;function Qr$2(r,t){N$4.__h&&N$4.__h(y,r,Er$2||t),Er$2=0;var e=y.__H||(y.__H={__:[],__h:[]});return r>=e.__.length&&e.__.push({}),e.__[r]}function kt$2(r,t){var e=Qr$2(Mt$2++,7);return Zr$2(e.__H,t)&&(e.__=r(),e.__H=t,e.__h=r),e.__}function qr$3(){for(var r;r=Rr$2.shift();)if(r.__P&&r.__H)try{r.__H.__h.forEach(lt$3),r.__H.__h.forEach(Ht$2),r.__H.__h=[];}catch(t){r.__H.__h=[],N$4.__e(t,r.__v);}}N$4.__b=function(r){y=null,gr$3&&gr$3(r);},N$4.__=function(r,t){r&&t.__k&&t.__k.__m&&(r.__m=t.__k.__m),yr$1&&yr$1(r,t);},N$4.__r=function(r){Nr$3&&Nr$3(r),Mt$2=0;var t=(y=r.__c).__H;t&&(Vt$2===y?(t.__h=[],y.__h=[],t.__.forEach(function(e){e.__N&&(e.__=e.__N),e.u=e.__N=void 0;})):(t.__h.forEach(lt$3),t.__h.forEach(Ht$2),t.__h=[],Mt$2=0)),Vt$2=y;},N$4.diffed=function(r){Sr$2&&Sr$2(r);var t=r.__c;t&&t.__H&&(t.__H.__h.length&&(Rr$2.push(t)!==1&&vr$1===N$4.requestAnimationFrame||((vr$1=N$4.requestAnimationFrame)||Jr$2)(qr$3)),t.__H.__.forEach(function(e){e.u&&(e.__H=e.u),e.u=void 0;})),Vt$2=y=null;},N$4.__c=function(r,t){t.some(function(e){try{e.__h.forEach(lt$3),e.__h=e.__h.filter(function(i){return !i.__||Ht$2(i)});}catch(i){t.some(function(n){n.__h&&(n.__h=[]);}),t=[],N$4.__e(i,e.__v);}}),Ir$2&&Ir$2(r,t);},N$4.unmount=function(r){Or$3&&Or$3(r);var t,e=r.__c;e&&e.__H&&(e.__H.__.forEach(function(i){try{lt$3(i);}catch(n){t=n;}}),e.__H=void 0,t&&N$4.__e(t,e.__v));};var br$3=typeof requestAnimationFrame==`function`;function Jr$2(r){var t,e=function(){clearTimeout(i),br$3&&cancelAnimationFrame(t),setTimeout(r);},i=setTimeout(e,35);br$3&&(t=requestAnimationFrame(e));}function lt$3(r){var t=y,e=r.__c;typeof e==`function`&&(r.__c=void 0,e()),y=t;}function Ht$2(r){var t=y;r.__c=r.__(),y=t;}function Zr$2(r,t){return !r||r.length!==t.length||t.some(function(e,i){return e!==r[i]})}var te$3=Symbol.for(`preact-signals`);function Bt$2(){if(M$4>1)M$4--;else {for(var r,t=false;q$3!==void 0;){var e=q$3;for(q$3=void 0,Gt$1++;e!==void 0;){var i=e.o;if(e.o=void 0,e.f&=-3,!(8&e.f)&&xr$2(e))try{e.c();}catch(n){t||(r=n,t=true);}e=i;}}if(Gt$1=0,M$4--,t)throw r}}var d$1=void 0;var q$3=void 0,M$4=0,Gt$1=0,ft$3=0;function Lr$2(r){if(d$1!==void 0){var t=r.n;if(t===void 0||t.t!==d$1)return t={i:0,S:r,p:d$1.s,n:void 0,t:d$1,e:void 0,x:void 0,r:t},d$1.s!==void 0&&(d$1.s.n=t),d$1.s=t,r.n=t,32&d$1.f&&r.S(t),t;if(t.i===-1)return t.i=0,t.n!==void 0&&(t.n.p=t.p,t.p!==void 0&&(t.p.n=t.n),t.p=d$1.s,t.n=void 0,d$1.s.n=t,d$1.s=t),t}}function S$3(r){this.v=r,this.i=0,this.n=void 0,this.t=void 0;}S$3.prototype.brand=te$3;S$3.prototype.h=function(){return true};S$3.prototype.S=function(r){this.t!==r&&r.e===void 0&&(r.x=this.t,this.t!==void 0&&(this.t.e=r),this.t=r);};S$3.prototype.U=function(r){if(this.t!==void 0){var t=r.e,e=r.x;t!==void 0&&(t.x=e,r.e=void 0),e!==void 0&&(e.e=t,r.x=void 0),r===this.t&&(this.t=e);}};S$3.prototype.subscribe=function(r){var t=this;return Z$2(function(){var e=t.value,i=d$1;d$1=void 0;try{r(e);}finally{d$1=i;}})};S$3.prototype.valueOf=function(){return this.value};S$3.prototype.toString=function(){return this.value+``};S$3.prototype.toJSON=function(){return this.value};S$3.prototype.peek=function(){var r=d$1;d$1=void 0;try{return this.value}finally{d$1=r;}};Object.defineProperty(S$3.prototype,`value`,{get:function(){var r=Lr$2(this);return r!==void 0&&(r.i=this.i),this.v},set:function(r){if(r!==this.v){if(Gt$1>100)throw new Error(`Cycle detected`);this.v=r,this.i++,ft$3++,M$4++;try{for(var t=this.t;t!==void 0;t=t.x)t.t.N();}finally{Bt$2();}}}});function L$4(r){return new S$3(r)}function xr$2(r){for(var t=r.s;t!==void 0;t=t.n)if(t.S.i!==t.i||!t.S.h()||t.S.i!==t.i)return true;return false}function Ar$2(r){for(var t=r.s;t!==void 0;t=t.n){var e=t.S.n;if(e!==void 0&&(t.r=e),t.S.n=t,t.i=-1,t.n===void 0){r.s=t;break}}}function Pr$3(r){for(var t=r.s,e=void 0;t!==void 0;){var i=t.p;t.i===-1?(t.S.U(t),i!==void 0&&(i.n=t.n),t.n!==void 0&&(t.n.p=i)):e=t,t.S.n=t.r,t.r!==void 0&&(t.r=void 0),t=i;}r.s=e;}function H$5(r){S$3.call(this,void 0),this.x=r,this.s=void 0,this.g=ft$3-1,this.f=4;}(H$5.prototype=new S$3).h=function(){if(this.f&=-3,1&this.f)return false;if((36&this.f)==32||(this.f&=-5,this.g===ft$3))return true;if(this.g=ft$3,this.f|=1,this.i>0&&!xr$2(this))return this.f&=-2,true;var r=d$1;try{Ar$2(this),d$1=this;var t=this.x();(16&this.f||this.v!==t||this.i===0)&&(this.v=t,this.f&=-17,this.i++);}catch(e){this.v=e,this.f|=16,this.i++;}return d$1=r,Pr$3(this),this.f&=-2,true};H$5.prototype.S=function(r){if(this.t===void 0){this.f|=36;for(var t=this.s;t!==void 0;t=t.n)t.S.S(t);}S$3.prototype.S.call(this,r);};H$5.prototype.U=function(r){if(this.t!==void 0&&(S$3.prototype.U.call(this,r),this.t===void 0)){this.f&=-33;for(var t=this.s;t!==void 0;t=t.n)t.S.U(t);}};H$5.prototype.N=function(){if(!(2&this.f)){this.f|=6;for(var r=this.t;r!==void 0;r=r.x)r.t.N();}};Object.defineProperty(H$5.prototype,`value`,{get:function(){if(1&this.f)throw new Error(`Cycle detected`);var r=Lr$2(this);if(this.h(),r!==void 0&&(r.i=this.i),16&this.f)throw this.v;return this.v}});function Wt$1(r){return new H$5(r)}function Cr$2(r){var t=r.u;if(r.u=void 0,typeof t==`function`){M$4++;var e=d$1;d$1=void 0;try{t();}catch(i){throw r.f&=-2,r.f|=8,$t$2(r),i}finally{d$1=e,Bt$2();}}}function $t$2(r){for(var t=r.s;t!==void 0;t=t.n)t.S.U(t);r.x=void 0,r.s=void 0,Cr$2(r);}function re$3(r){if(d$1!==this)throw new Error(`Out-of-order effect`);Pr$3(this),d$1=r,this.f&=-2,8&this.f&&$t$2(this),Bt$2();}function J$4(r){this.x=r,this.u=void 0,this.s=void 0,this.o=void 0,this.f=32;}J$4.prototype.c=function(){var r=this.S();try{if(8&this.f||this.x===void 0)return;var t=this.x();typeof t==`function`&&(this.u=t);}finally{r();}};J$4.prototype.S=function(){if(1&this.f)throw new Error(`Cycle detected`);this.f|=1,this.f&=-9,Cr$2(this),Ar$2(this),M$4++;var r=d$1;return d$1=this,re$3.bind(this,r)};J$4.prototype.N=function(){2&this.f||(this.f|=2,this.o=q$3,q$3=this);};J$4.prototype.d=function(){this.f|=8,1&this.f||$t$2(this);};function Z$2(r){var t=new J$4(r);try{t.c();}catch(e){throw t.d(),e}return t.d.bind(t)}var Ft$2;function k$3(r,t){p$1[r]=t.bind(null,p$1[r]||function(){});}function ct$3(r){Ft$2&&Ft$2(),Ft$2=r&&r.S();}function wr$3(r){var t=this,e=r.data,i=ie$4(e);i.value=e;var n=kt$2(function(){for(var o=t.__v;o=o.__;)if(o.__c){o.__c.__$f|=4;break}return t.__$u.c=function(){var _,u=t.__$u.S(),l=n.value;u(),Ct$1(l)||((_=t.base)==null?void 0:_.nodeType)!==3?(t.__$f|=1,t.setState({})):t.base.data=l;},Wt$1(function(){var _=i.value.value;return _===0?0:_===true?``:_||``})},[]);return n.value}wr$3.displayName=`_st`;Object.defineProperties(S$3.prototype,{constructor:{configurable:true,value:void 0},type:{configurable:true,value:wr$3},props:{configurable:true,get:function(){return {data:this}}},__b:{configurable:true,value:1}});k$3(`__b`,function(r,t){if(typeof t.type==`string`){var e,i=t.props;for(var n in i)if(n!==`children`){var o=i[n];o instanceof S$3&&(e||(t.__np=e={}),e[n]=o,i[n]=o.peek());}}r(t);});k$3(`__r`,function(r,t){ct$3();var e,i=t.__c;i&&(i.__$f&=-2,(e=i.__$u)===void 0&&(i.__$u=e=(function(n){var o;return Z$2(function(){o=this;}),o.c=function(){i.__$f|=1,i.setState({});},o})())),ct$3(e),r(t);});k$3(`__e`,function(r,t,e,i){ct$3(),r(t,e,i);});k$3(`diffed`,function(r,t){ct$3();var e;if(typeof t.type==`string`&&(e=t.__e)){var i=t.__np,n=t.props;if(i){var o=e.U;if(o)for(var _ in o){var u=o[_];u!==void 0&&!(_ in i)&&(u.d(),o[_]=void 0);}else e.U=o={};for(var l in i){var f=o[l],h=i[l];f===void 0?(f=ee$3(e,l,h,n),o[l]=f):f.o(h,n);}}}r(t);});function ee$3(r,t,e,i){var n=t in r&&r.ownerSVGElement===void 0,o=L$4(e);return {o:function(_,u){o.value=_,i=u;},d:Z$2(function(){var _=o.value.value;i[t]!==_&&(i[t]=_,n?r[t]=_:_?r.setAttribute(t,_):r.removeAttribute(t));})}}k$3(`unmount`,function(r,t){if(typeof t.type==`string`){var e=t.__e;if(e){var i=e.U;if(i){e.U=void 0;for(var n in i){var o=i[n];o&&o.d();}}}}else {var _=t.__c;if(_){var u=_.__$u;u&&(_.__$u=void 0,u.d());}}r(t);});k$3(`__h`,function(r,t,e,i){(i<3||i===9)&&(t.__$f|=2),r(t,e,i);});U$1.prototype.shouldComponentUpdate=function(r,t){var e=this.__$u,i=e&&e.s!==void 0;for(var n in t)return true;if(this.__f||typeof this.u==`boolean`&&this.u===true){if(!(i||2&this.__$f||4&this.__$f)||1&this.__$f)return true}else if(!(i||4&this.__$f)||3&this.__$f)return true;for(var o in r)if(o!==`__source`&&r[o]!==this.props[o])return true;for(var _ in this.props)if(!(_ in r))return true;return false};function ie$4(r){return kt$2(function(){return L$4(r)},[])}var at$2=class at{id;mID;vID;vName;imageURL;name;link;quantity;price;finalPrice;constructor(t){this.id=t.id,this.mID=t.mID,this.vID=t.vID,this.vName=t.vName,this.imageURL=t.imageURL,this.name=t.name,this.link=t.link,this.quantity=t.quantity,this.price=t.price,this.finalPrice=t.finalPrice??t.price;}};var ht$2=class ht{url;alt;constructor(t){t.alt&&(this.alt=t.alt),this.url=t.url;}};var pt$2=class pt{d;cmp;effective;constructor(t={}){this.d=t.d,this.cmp=t.cmp,this.effective=this.d;}};var Kt$2=class Kt{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??false;}},dt$2=class dt{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 ht$2(e))??[],this.link=t.link,this.price=new pt$2(t.price),this.sku=t.sku,this.isAvailable=t.isAvailable,this.quantity=t.quantity,this.selectedOptions=t.selectedOptions??[],this.effectivePrice=L$4(this.price.effective),t.sellingPlans?.length&&(this.selectedSellingPlan=L$4(void 0)),this.sellingPlans=t.sellingPlans?.map(e=>{let i=new Kt$2(e);return i.isSelected&&(this.selectedSellingPlan.value=i),i});}getOneImage(){return this.imgs[0]?.url}changeSellingPlan(t){this.selectedSellingPlan.value=t;}hasEffectivePrice(){return this.effectivePrice.value!==this.price.d}};function zt$1(r,t){for(let e of r){let i=t.get(e.attr),n=Array.isArray(i),o=typeof i==`string`,_=typeof i==`number`&&typeof e.value==`number`,u=Array.isArray(e.value),l=true;switch(e.op){case `contains`:l=(n||o)&&i.includes(e.value);break;case `notContains`:l=(n||o)&&!i.includes(e.value);break;case `eq`:l=i===e.value;break;case `ne`:l=i!==e.value;break;case `gt`:l=_&&i>e.value;break;case `gte`:l=_&&i>=e.value;break;case `lt`:l=_&&i<e.value;break;case `lte`:l=_&&i<=e.value;break;case `in`:l=u&&e.value.includes(i);break;case `nin`:l=u&&!e.value.includes(i);break;case `between`:l=_&&u&&e.value.length===2&&i>=e.value[0]&&i<=e.value[1];break;case `all`:l=n&&u&&e.value.every(f=>i.includes(f));break;default:l=false;break}if(!l)return false}return true}var mt$3=class mt{id;mID;name;options;imgs;vars;desc;link;slug;quantity;category;meta;reviews;tags;templateSuffix;selectedOrFirstVariant;selected=L$4(true);_showAddToCartButton;constructor(t){this.update(t),this.selectedOrFirstVariant=L$4(this.selectedVariant),this._showAddToCartButton=this.evaluateShowATCFlag();}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}get showAddToCartButton(){return this._showAddToCartButton}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?.length>1}setSelectedVariant(t){this.selectedOrFirstVariant.value=t;}setSelectedVariantByID(t){if(!t)return;let e=this.vars.find(i=>i.mID===t.toString());e&&this.setSelectedVariant(e);}update(t){return this.id=t.id??this.id,this.mID=t.mID??this.mID,this.name=t.name??this.name,this.imgs=t.imgs??this.imgs,this.desc=t.desc??this.desc,this.link=t.link??this.link,this.slug=t.slug??this.slug,this.quantity=t.quantity??this.quantity,this.meta=t.meta??this.meta,this.category=t.category??this.category,this.reviews=t.reviews??this.reviews,this.options=t.options??this.options,this.tags=t.tags??this.tags,this.templateSuffix=t.templateSuffix??this.templateSuffix,t.vars&&(this.vars=t.vars.map(e=>new dt$2(e))),this}toEmbed(t){return t=t??this.selectedOrFirstVariant.value,new at$2({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,i=this.name,n=this.category,o=this.variantImage??this.firstImageURL,_=this.meta,u=this.tags?.join(`,`)??``,l=this.reviews?.rating,f=this.reviews?.totalReviews,h=e.cmp&&e.cmp>e.d,s$1=s$3(r$2({name:i},Cn(`price`,e.d,true)),{image_url:o,meta:_,category:n,rating:l,reviews:f,tags:u});if(t.hasEffectivePrice()){let c=Cn(`effective_price`,t.effectivePrice.value,true);Object.assign(s$1,c);}if(h){let c=e.cmp-e.d,g={discount_percent:(c/e.cmp*100).toFixed(0)};Object.assign(s$1,g),Object.assign(s$1,Cn(`compare_price`,e.cmp)),Object.assign(s$1,Cn(`discount_price`,c));}return {product:s$1,variant:{name:t.name,quantity:t.quantity}}}evaluateShowATCFlag(){let t=he$4.get().widgetCustomisation?.atcButton?.showWhen;if(!t?.predicates?.length)return true;let e=t.predicates,i=this.getValueMap(e);return t.op===`or`?e.some(n=>zt$1([n],i)):zt$1(e,i)}getValueMap(t){let e=new Map;for(let i of t){let n=i.attr.split(`.`);switch(n[1]){case `tags`:e.set(i.attr,this.tags);break;case `type`:case `category`:e.set(i.attr,this.category);break;case `meta`:case `metafield`:{let _=n[2];if(!_)continue;e.set(i.attr,this.meta?.[_]);break}}}return e}};var vt$1=class vt{id;alt;shortID;sources;items;durationMS;thumbnail;card;bestSource;highSource;goodSource;lowSource;m3u8Source;constructor(t={}){if(this.id=t.id,this.alt=t.alt,this.shortID=t.shortID,this.sources=t.sources?.sort((e,i)=>i.height-e.height),this.durationMS=t.durationMS,this.thumbnail=t.thumbnail,this.items=t.items?t.items.map(e=>new mt$3(e)):[],this.card=t.card,this.sources){let e=[];for(let i of this.sources)i.format===`mp4`?e.push(i):i.format===`m3u8`&&!this.m3u8Source&&(this.m3u8Source=i);e.length>0&&(this.bestSource=e[0],this.highSource=e.length>1?e[1]:e[0],this.lowSource=e.length>2?e[e.length-1]:e[0]);}}};var ne$1=(e=>(e.CLASSIC=`CLASSIC`,e.ITEM_CARD_HEADER=`ITEM_CARD_HEADER`,e))(ne$1||{});var oe$5=(i=>(i.ON=`ON`,i.OFF=`OFF`,i.ON_HOVER=`ON_HOVER`,i))(oe$5||{}),se$3=(n=>(n.FIRST_ITEM=`FIRST_ITEM`,n.ITEM_SWIPER=`ITEM_SWIPER`,n.CARD=`CARD`,n.NONE=`NONE`,n))(se$3||{});var Tr$2=class Tr{videoEntries;source;template;heading;autoPlay;showMuteButton;footerContent;detailPopup;playlistConfig;itemDetailConfig;constructor(t={}){this.videoEntries=t.videoEntries?.map(e=>({video:new vt$1(e.video),title:e.title}))??[],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.autoPlay=t.autoPlay??`ON`,this.footerContent=t.footerContent??`FIRST_ITEM`,this.playlistConfig={videoSwiper:t.playlistConfig?.videoSwiper??void 0,itemCardClickBehavior:t.playlistConfig?.itemCardClickBehavior??`OPEN_VIDEO_DETAIL`},this.itemDetailConfig={template:t.itemDetailConfig?.template??`CLASSIC`};}showItems(){return this.footerContent===`FIRST_ITEM`||this.footerContent===`ITEM_SWIPER`}};var Dr$2=class Dr{t;bg;br;clc;shd;spc;trf;a;w;h;x;y;constructor(t){this.t=t.t,t.bg&&(this.bg=new C$3(t.bg)),t.br&&(this.br=new w$1(t.br)),t.shd&&(this.shd=new X$4(t.shd)),t.spc&&(this.spc=new T$2(t.spc)),this.trf=new j$2(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 G$3[this.t]}get click(){return this.clc}},G$3=(a=>(a[a.IMAGE=1]=`IMAGE`,a[a.TEXT=2]=`TEXT`,a[a.BUTTON=3]=`BUTTON`,a[a.FLEXBOX=4]=`FLEXBOX`,a[a.MULTI_COLUMN=5]=`MULTI_COLUMN`,a[a.CHECKBOX=6]=`CHECKBOX`,a[a.PRODUCTS=11]=`PRODUCTS`,a[a.PRODUCT=12]=`PRODUCT`,a[a.PRODUCT_IMAGE=13]=`PRODUCT_IMAGE`,a[a.PRODUCT_TITLE=14]=`PRODUCT_TITLE`,a[a.PRODUCT_VARIATIONS=15]=`PRODUCT_VARIATIONS`,a[a.PRODUCT_VARIATIONS_SELLING_PLANS=16]=`PRODUCT_VARIATIONS_SELLING_PLANS`,a[a.PRODUCT_BUTTON=18]=`PRODUCT_BUTTON`,a[a.PRODUCT_RATING=19]=`PRODUCT_RATING`,a[a.EMAIL_INPUT=51]=`EMAIL_INPUT`,a[a.PHONE_INPUT=52]=`PHONE_INPUT`,a[a.COUNTDOWN_TIMER=61]=`COUNTDOWN_TIMER`,a[a.CAROUSEL=62]=`CAROUSEL`,a[a.SHAPE=100]=`SHAPE`,a))(G$3||{});var Ur$2=0;function _e$3(r=document.head){return Vr$3(fe$5.styleURL,r,`cooee-global-styles`)}function ue$4(r=document.head){return Vr$3(`${Kr$3}/swiper-bundle.min.css`,r,`swiper-styles`)}function Vr$3(r,t=document.head,e){return new Promise(i=>{if(t.querySelector(`#${e}`)){i();return}let o=document.createElement(`link`);o.rel=`stylesheet`,o.href=r,o.id=e,o.onload=()=>{i();},o.onerror=()=>{console.error(`Failed to load stylesheet:`,r),i();},t.appendChild(o);})}function le$4(r,t=document.head){if(!r)return;Ur$2++;let e=document.createElement(`style`);e.id=`cooee-app-css-${Ur$2}`,e.textContent=r,t.appendChild(e);}function Vi$2(r){if(!r)return;let t=document.createElement(`script`);t.id=`cooee-app-script`,t.innerHTML=r,document.head.appendChild(t);}function Mi$1(r){if(r)try{(0,eval)(r);}catch(t){console.error(`Failed to execute script:`,t);}}async function Hi$2(){let r=(await import(`${Kr$3}/swiper-bundle.min.mjs`)).Swiper;return window.CooeeSDK.Swiper=r}async function ki$2(r,t=true){if(!r)return;let e=[];t&&e.push(ue$4(r)),e.push(_e$3(r)),await Promise.all(e);let i=he$4.get().website.commonCSS;le$4(i,r);}var fe$4=(function(r){return r[r.SINGLE=1]=`SINGLE`,r[r.EXCLUSION=2]=`EXCLUSION`,r[r.ABTESTING=3]=`ABTESTING`,r[r.GLOBAL_AB=4]=`GLOBAL_AB`,r})(fe$4||{});var ce$2=(function(r){return r[r.NONE=0]=`NONE`,r[r.ITEM=1]=`ITEM`,r[r.COLLECTION=2]=`COLLECTION`,r})(ce$2||{});var ae$3=(function(r){return r.BEFORE=`before`,r.AFTER=`after`,r.INSIDE_FIRST=`insideFirst`,r.INSIDE_LAST=`insideLast`,r.BEFORE1=`BEFORE`,r.AFTER1=`AFTER`,r.INSIDE_FIRST1=`INSIDE_FIRST`,r.INSIDE_LAST1=`INSIDE_LAST`,r})(ae$3||{}),he$3=(function(r){return r.SHOPIFY_CHECKOUT=`shopify_checkout`,r.THIRD_PARTY_CHECKOUT=`third_party_checkout`,r.CART_PAGE=`cart_page`,r.CART_DRAWER=`cart_drawer`,r})(he$3||{});var pe$4=(function(r){return r[r.NONE=0]=`NONE`,r[r.REJECT_POPUP=1]=`REJECT_POPUP`,r[r.ACCEPT_POPUP=2]=`ACCEPT_POPUP`,r[r.GO_TO_URL=4]=`GO_TO_URL`,r[r.SHARE=5]=`SHARE`,r[r.KEY_VALUE=100]=`KEY_VALUE`,r[r.GO_TO_PRODUCT=101]=`GO_TO_PRODUCT`,r[r.ADD_TO_CART=102]=`ADD_TO_CART`,r[r.COPY_COUPON_CODE=103]=`COPY_COUPON_CODE`,r[r.GO_TO_COLLECTION=104]=`GO_TO_COLLECTION`,r[r.OPEN_CART=105]=`OPEN_CART`,r[r.SUBMIT_FORM=106]=`SUBMIT_FORM`,r[r.INITIATE_CHECKOUT=107]=`INITIATE_CHECKOUT`,r[r.ADD_BUNDLE=108]=`ADD_BUNDLE`,r[r.UPGRADE_TO_SUBSCRIPTION=109]=`UPGRADE_TO_SUBSCRIPTION`,r[r.BUY_NOW=110]=`BUY_NOW`,r[r.QUICK_VIEW=111]=`QUICK_VIEW`,r})(pe$4||{}),de$3=(function(r){return r.POPUP=`POPUP`,r.PAGE_EMBED=`PAGE_EMBED`,r.CART_EMBED=`CART_EMBED`,r.ANNOUNCEMENT_BAR=`ANNOUNCEMENT_BAR`,r})(de$3||{}),me$4=(function(r){return r.PRODUCT_PROMOTION=`PRODUCT_PROMOTION`,r.BUNDLE_AND_UPSELL=`BUNDLE_AND_UPSELL`,r.CART_RECOVERY=`CART_RECOVERY`,r.ANNOUNCEMENT=`ANNOUNCEMENT`,r.LEAD_GENERATION=`LEAD_GENERATION`,r.DATA_COLLECTION=`DATA_COLLECTION`,r.SALE_PROMOTION=`SALE_PROMOTION`,r.SUBSCRIPTION_UPSELL=`SUBSCRIPTION_UPSELL`,r.SHOPPABLE_VIDEO=`SHOPPABLE_VIDEO`,r.BYOB=`BYOB`,r.PROGRESS_BAR=`PROGRESS_BAR`,r.BUY_NOW=`BUY_NOW`,r.STICKY_ATC=`STICKY_ATC`,r.EXPERIMENT=`EXPERIMENT`,r.SAVINGS_BAR=`SAVINGS_BAR`,r.COLLECTION_FILTER=`COLLECTION_FILTER`,r})(me$4||{}),ve$3=(function(r){return r.COOEE=`COOEE`,r.KLAVIYO=`KLAVIYO`,r})(ve$3||{}),Ee$3=(function(r){return r.ICONS=`ICONS`,r.TILES=`TILES`,r})(Ee$3||{}),ge$4=(function(r){return r.FREE_SHIPPING=`FREE_SHIPPING`,r.DISCOUNT=`DISCOUNT`,r.FREE_AUTO_GIFT=`FREE_AUTO_GIFT`,r.FREE_GIFT_SELECT=`FREE_GIFT_SELECT`,r.UI_ONLY=`UI_ONLY`,r})(ge$4||{});var Et$1=class Et{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;}};var gt$2=class gt{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;}};var Nt$2=class Nt{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;}};var Xt$1=(n=>(n[n.START=0]=`START`,n[n.CENTER=1]=`CENTER`,n[n.END=2]=`END`,n[n.JUSTIFY=3]=`JUSTIFY`,n))(Xt$1||{});var St$1=class St{name;fonts;constructor(t){t=t??{},t.name&&(t.name=t.name!==`Arial`?t.name:``),this.name=t.name,this.fonts=t.fonts?.map(e=>new jt$2(e));}},jt$2=class jt{style;url;constructor(t){t=t??{},this.style=t.style,this.url=t.url;}getFontDescriptor(){return {style:this.style===2||this.style===4?`italic`:`normal`,weight:this.style===4||this.style===3?`700`:`400`}}getURL(){return `url('${this.url}') format('truetype')`}};var B$3=class B{fw;fs;fam;fmly;lh=1.2;ls;s;tc;ta;td;tdc;constructor(t){this.update(t);}get alignment(){return Xt$1[this.ta]}get letterSpacing(){return this.ls?this.ls+`px`:`normal`}update(t){t=t??{},t.lh&&(this.lh=t.lh),t.tdc&&(this.tdc=new O$1(t.tdc)),this.td=t.td,this.fs=t.s??t.fs??60,this.tc=new O$1(t.tc),this.ta=t.ta??1,this.fw=t.fw??400,this.ls=t.ls??0,this.tc.h??=`#000000`,this.fam=new St$1(t.fam??t.fmly);}resize(t){this.s*=t,this.ls*=t;}};var It$1=class It{size;bg;br;spc;typo;lout;flex;constructor(t){t??={},this.spc=new T$2(t.spc),t.size&&(this.size=new Nt$2(t.size)),t.bg&&(this.bg=new C$3(t.bg)),t.br&&(this.br=new w$1(t.br)),t.typo&&(this.typo=new B$3(t.typo)),t.lout&&(this.lout=new gt$2(t.lout)),t.flex&&(this.flex=new Et$1(t.flex));}},Ot$2=class Ot{sm;lg;constructor(t){t??={},this.sm=new It$1(t.sm),this.lg=new It$1(t.lg);}};var yt=class{t;classes;style;hide;when;clc;l;constructor(t,e){e??={},this.t=t,this.classes=e.classes??``,this.style=new Ot$2(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 G$3[this.t]}};var bt$1=class bt extends yt{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;}};var Ne$4=(i=>(i.SINGLE=`SINGLE`,i.MULTIPLE=`MULTIPLE`,i.CHIPS=`CHIPS`,i))(Ne$4||{}),Mr$3=class Mr extends bt$1{showChips;optionsConfig;type;horizontal;constructor(t=15,e){super(e,t),e??={},this.showChips=e.showChips??false,this.optionsConfig=e.optionsConfig??{},this.horizontal=e.horizontal,e.type?this.type=e.type:e.showChips?this.type=`CHIPS`:this.type=`SINGLE`;}};var Se$3=(i=>(i[i.LOW=1]=`LOW`,i[i.MEDIUM=2]=`MEDIUM`,i[i.HIGH=3]=`HIGH`,i))(Se$3||{}),Ie$3=(e=>(e.SINGLE_PANE=`SINGLE_PANE`,e.TWO_PANE=`TWO_PANE`,e))(Ie$3||{});function En(r){if(!r)return {display:`block`};let t={display:r.disp};return r.of&&(t.objectFit=r.of),r.pos===`absolute`&&(t.width=`auto !important`,t.position=`absolute`,t.right=r.right+`px`,t.left=r.left+`px`,t.top=r.top+`px`,t.bottom=r.bottom+`px`),t}function gn(r){return r?{gap:r.gap+`px`,flexWrap:r.wrap,flexDirection:r.dir,justifyContent:r.jc,alignItems:r.ai,width:`100%`}:{}}function Hr$3(r,t,e){if(e??={},r.type===`LINEAR`){let i=`linear-gradient(${r.ang}deg, ${r.c1}, ${r.c2}`;r.c3&&(i+=`, ${r.c3}`),i+=`)`,e[t]=i;}return e}function Qt$2(r,t=`color`,e){return e??={},r?r.grad?Hr$3(r.grad,t,e):(r.hex&&(e[t]=r.rgba),e):e}function x$2(r,t){return Oe$3(r,t)+`px`}function Oe$3(r,t=1){return (r??0)*t}function Nn$2(r){let t={};return r?.w&&(t.width=r.w),r?.h&&(t.height=r.h),r?.maxW&&(t.maxWidth=r.maxW),r?.maxH&&(t.maxHeight=r.maxH),r?.minW&&(t.minWidth=r.minW),r?.minH&&(t.minHeight=r.minH),t}function Sn(r,t){if(!r)return {};let e={};return r.radius&&r.radius>0&&(e.borderRadius=x$2(r.radius,t)),r.width&&r.width>0&&(e.borderWidth=x$2(r.width,t),e.borderStyle=r.style?.toLowerCase(),r.color?Qt$2(r.color,`border-color`,e):e.borderColor=`black`),e}function In(r,t){let e={};return r?(e.paddingTop=x$2(r.pt,t),e.paddingBottom=x$2(r.pb,t),e.paddingLeft=x$2(r.pl,t),e.paddingRight=x$2(r.pr,t),e.marginTop=x$2(r.mt,t),e.marginBottom=x$2(r.mb,t),e.marginLeft=r.cent?`auto`:x$2(r.ml,t),e.marginRight=r.cent?`auto`:x$2(r.mr,t),e):(e.margin=`0 !important`,e.padding=`unset`,e)}function On(r){if(!r)return {};let t={};if(r.glossy){let e=`backdrop-filter`,i=`-webkit-`+e,n=`blur(${r.glossy.radius}px)`;if(!CSS.supports(i,n)&&!CSS.supports(e,n))return {background:r.glossy.fallback.rgba};if(t[i]=n,t[e]=n,r.glossy.color)return Qt$2(r.glossy.color,`background`,t)}else if(r.solid){if(r.solid.grad)return Hr$3(r.solid.grad,`background`,t);if(r.solid.hex)return {backgroundColor:r.solid.rgba}}else if(r.img){if(!r.img.src)return {};let e=(r.img.a??0)/100;t.background=`linear-gradient(rgba(0, 0, 0, ${e}), rgba(0, 0, 0, ${e})),url("${r.img.src}") no-repeat center`,t.backgroundSize=`cover`,r.img.a&&(t[`-webkit-backdrop-filter`]=`opacity(${r.img.a})`,t.backdropFilter=`opacity(${r.img.a})`);}return t}function yn(r=new B$3){let t={};return t.letterSpacing=r.letterSpacing,t.fontSize=r.fs+`px`,t.lineHeight=r.lh,t.fontFamily=r.fam.name||`inherit`,t.textAlign=r.alignment,t.fontWeight=r.fw,t.textDecoration=r.td??`none`,Qt$2(r.tc,`color`,t),t.boxShadow=`none`,t}
13
13
 
@@ -48,7 +48,7 @@ var Ne$1=class Ne{constructor(e,t){this._startTime=e;this._triggerData=t;}interv
48
48
  }
49
49
  }
50
50
  }
51
- `;function Vn(){zo().catch(r=>{Y$2.error(`Fail to add attributes in cart`,r);});}async function Ko(){let e=await(await fetch(window.Shopify.routes.root+`browsing_context_suggestions.json?country[enabled]=true&country[exclude]=${window.Shopify.country}&language[enabled]=true&language[exclude]=${window.Shopify.language}`)).json(),t=he$4.get().storefrontToken,n=new Headers;n.append(`x-shopify-storefront-access-token`,t),n.append(`Content-Type`,`application/json`),await We$1(jo,{metafields:[{key:`currentCountry`,ownerId:`gid://shopify/Cart/${h.getCurrent().token}`,type:`single_line_text_field`,value:e.detected_values.country.handle}]},`add-cart-metafields-set`);}function Xo(){h.getCurrent().token?Ko().catch(r=>{Y$2.error(`Fail to update cart metafields`,r);}):setTimeout(Xo,500);}async function zo(){await _r.acquire();let r=h.getCurrent(),e=await xr$3();if(r.attributes?.letscooee_did===e.letscooee_did&&r.attributes?.letscooee_sn===e.letscooee_sn){Y$2.verbose(`Not calling Shopify update.js API.`,`Current attributes:`,r.attributes),_r.release();return}try{let t=await we$1(`/cart/update.js`,{attributes:e});Y$2.verbose(`Updated cart attributes`,JSON.stringify(t.data)),r.update(t.data);}catch(t){Y$2.error(`Failed to add cart attributes`,t);}_r.release();}var Yo=r=>r,Wn=r=>r.filter(e=>e.removedNodes&&e.removedNodes.length>0);function $n(r,e={childList:true,subtree:true},t=500,n=Yo){return te$1(o=>{let i=new MutationObserver(s=>o(s));return i.observe(r,e),i},(o,i)=>i.disconnect()).pipe(q$2(o=>n(o)),Ir(o=>o.length>0),Fe$2(t))}var Xn=x$3(yt$1());var Gn=new U,jn=new U;function Um(){return jn.asObservable()}function er(){Gn.next();}Gn.pipe(Fe$2(100)).subscribe(ti.bind(void 0));function Mm(){er(),Jo(),Qo();}function Jo(){let r=window.XMLHttpRequest.prototype.send;window.XMLHttpRequest.prototype.send=function(){return this.addEventListener(`load`,function(){Kn(this._url).catch(e=>Y$2.error(`Unable to process cart change in XMLHttpRequest`,e));}),r.apply(this,arguments)},Y$2.verbose(`Securely overwritten window.XMLHttpRequest.send method`);}function Qo(){let r=window.fetch;try{window.fetch=async function(e,t){return r(e,t).then(n=>{let o=``;try{o=typeof e==`string`||e instanceof URL?e.toString():e?.url??n?.url??``;}catch{}return Kn(o).catch(i=>Y$2.error(`Unable to process cart change in fetch`,i)),n})},Y$2.verbose(`Securely overwritten window.fetch method`);}catch(e){console.warn(`Fail to override fetch.`,`Cooee won't be able to track "Add To Cart" and "Remove From Cart" KPI.`),Y$2.error(e);}}async function Kn(r){Zo(r)&&er();}function Zo(r){return /\/cart\/(add|change|update|clear)/.test(r)}function ei(r$1,e){let t=r$1?.items,n=e.items,o=[],i=[];if(Y$2.verbose(`Comparing cart change with old count ${t?.length} to new count ${n.length}`),n?.forEach(s$4=>{let c=t?.find(p=>p.vID===s$4.vID);if(c){if(c.quantity!==s$4.quantity){let p=c.quantity<s$4.quantity,u=Math.abs(c.quantity-s$4.quantity),d=s$3(r$2({},s$4),{quantity:u});p?o.push(d):i.push(d);}t&&Rn(t,c);}else o.push(s$4);}),t)for(let s of t)i.push(s);Y$2.verbose(`Cart delta: added: ${o.length}, removed: ${i.length}`),o.length&&Hn(`Add To Cart`,{items:o}),i.length&&r$1.token===e.token&&Hn(`Remove From Cart`,{items:i}),(i.length||o.length)&&jn.next({itemsAdded:o,itemsRemoved:i,cart:e});}function Hn(r,e){qn(new Ir$1(r,e));}async function ti(){ei(await ce$3.get(`cart`,{}),await h.getCurrent().getNormalisedCart(true));}var P=class r{static cartDrawerToggle$=new Sr({open:false,firstOpen:false});static DEFAULT_SELECTOR=`cart-drawer`;static _instance;inShadow=false;cartDrawerElement;cartDrawerShadowElement;configWebsite=he$4.get().website??{};currentState=false;mutationSubscription;mutationObserver;firstOpen=true;selector;shadowParentElementSelector;clickEventListener;refreshUIEventListener;iconSelector=[`button[drawer-to-open="cart-drawer"]`,`a[href="/cart"]`,`.header__icon--cart`,`#cart-icon-bubble`,`.cart-icon-bubble`,`.cart-count`,`a[onclick*="handleFloCartBtn"]`].join(`,`);cartSelector=[r.DEFAULT_SELECTOR,`#halo-cart-sidebar`,`[role="dialog"][class*="cart" i]`,`[id*="section-cart" i]`,`#sidebar-cart`,`#rebuy-cart`,`#mini-cart`,`#flo-cart-wrapper`,`#drawer-cart`,`#UpcartPopupBackDrop`,`[id$="CartDrawer" i]`].join(`,`);constructor(){this.initialize(),this.refreshUIEventListener=this.updateBubble.bind(this),this.clickEventListener=this.manualCartIconClicked.bind(this),document.addEventListener(`letscooee:outbound:refresh-ui`,this.refreshUIEventListener),document.addEventListener(`click`,this.clickEventListener,{capture:true,passive:true});}get element(){return this.cartDrawerElement}static get(){return r._instance||(r._instance=new r),r._instance}static initialize(){r.get();}isOpen(){if(window.cooeeIsCartDrawerVisible)return window.cooeeIsCartDrawerVisible();if(this.cartDrawerElement?.id===`rebuy-cart`)return !!window.Rebuy?.SmartCart?.visible;let e=this.inShadow?this.isPresent():C$2(this.cartDrawerElement);return Y$2.info(`Cart drawer is currently ${e?`open`:`close`}`),e}open(){if(this.isOpen()){Y$2.log(`Drawer is already open`);return}document.dispatchEvent(new CustomEvent(`letscooee:outbound:open-cart`));let e=document.querySelector(this.iconSelector);if(!e){Y$2.verbose(`No clickable cart icon found with selector`,this.iconSelector);return}e.click();}isShopifyDefaultDrawer(){return this.element?.tagName.toLowerCase()===r.DEFAULT_SELECTOR}isMiniCart(){return this.isShopifyDefaultDrawer()&&this.element?.id===`mini-cart`}refreshUI(e,t=true){if(window.cooeeUpdateCartDrawer)try{window.cooeeUpdateCartDrawer(e);}catch(n){ke(n,`execute-cooeeUpdateCartDrawer`);}else if(this.isMiniCart()&&this.element?._rerenderCart)this.element._rerenderCart({detail:{cart:e}});else if(window.MinimogTheme?.Cart?.renderNewCart)window.MinimogTheme.Cart.renderNewCart();else if(this.isShopifyDefaultDrawer()&&this.element?.renderContents&&e)this.element.classList.remove(`is-empty`),this.element.renderContents?.(e);else if(this.element?.onCartDrawerUpdate)this.element.onCartDrawerUpdate();else if(window.cartGiftUpdate){if(!e?.items?.[0])return;let n=e.items[0].id,o=e.items[0].quantity,i=e.items[0].price;window.cartGiftUpdate(n,i,o,``,`ADD_TO_CART`);}else if(window.icartCartActivityEvent)window.icartCartActivityEvent();else if(window.theme?.CartDrawer&&typeof window.theme?.CartDrawer==`function`)window.theme?.CartDrawer.init?new window.theme.CartDrawer().init():new window.theme.CartDrawer;else if(window.Hs_CartDrawer?.updateSlideCart)window.Hs_CartDrawer.updateSlideCart();else if(window.theme?.fetch_side_cart)window.theme.fetch_side_cart();else if(window.theme?.Cart?.updateCart)window.theme.Cart.updateCart();else if(window.cartUpdate)window.cartUpdate();else if(this.element?._onCartRefresh)this.element._onCartRefresh();else if(window.cart?.getCart)window.cart.getCart();else if(this.element?.tagName?.toLowerCase()===`cart-drawer-component`)document.dispatchEvent(new CustomEvent(`action:cart:updateCartandShowCart`));else if(this.element?.id===`sidebar-cart`)document.body.dispatchEvent(new CustomEvent(`cart:refresh`,{bubbles:true,detail:{}}));else if(this.element?.id===`quick-cart`){let n=document.querySelector(`a[href="/cart"]`);n&&n.click();}else window.Shopify?.KT_onItemAdded?window.Shopify.KT_onItemAdded():window.sideCart?.updateCart?window.sideCart.updateCart():window.SLIDECART_UPDATE?(window.SLIDECART_UPDATE(),window.SLIDECART_OPEN?.()):window.refreshCart?h.getCurrent().getNormalisedCart(true).then(()=>{window.refreshCart(h.getCurrent());}):window.OPEN_CART?window.OPEN_CART():window.updateCart?window.updateCart():window.sjRefreshCart?window.sjRefreshCart():window.CartJS?.getCart?window.CartJS?.getCart():window.updateCartItemJS?window.updateCartItemJS(1,e?.items?.[0]?.id+``):(Y$2.info(`No method found to update the cart drawer. Blindly firing some events to try`),document.dispatchEvent(new CustomEvent(`cart:refresh`,{bubbles:true})));document.dispatchEvent(new CustomEvent(`letscooee:outbound:refresh-ui`,{detail:{responseJSON:e,currentCart:h.getCurrent()}})),t&&er();}async initialize(){let e=this.configWebsite.cartDrawerSelector;if(!e){await this.findCartDrawer();return}let t=e.split(`:shadow`);t.length===1?(this.selector=t[0],await this.findCartDrawer()):(this.inShadow=true,this.shadowParentElementSelector=t[0]?.trim(),this.selector=t[1]?.trim(),await this.findCartDrawerWithShadow());}async findCartDrawer(){if(!Ye())return;let e=this.selector||this.cartSelector;if(this.cartDrawerElement=await Nn$3(e),!this.cartDrawerElement){Xn.default.warn(`Max attempts exhausted to find cart drawer`);return}Y$2.verbose(`Found`,this.cartDrawerElement,`from selector: ${e}`),this.createMutationObservers();}async findCartDrawerWithShadow(){if(!this.shadowParentElementSelector)return;let t=(await Nn$3(this.shadowParentElementSelector))?.shadowRoot;t?.mode===`open`&&(this.cartDrawerShadowElement=t,this.createMutationObservers());}createMutationObservers(){!this.cartDrawerElement&&!this.cartDrawerShadowElement||this.watchForCartToggle();}watchForCartToggle(){let e=this.cartDrawerElement||this.cartDrawerShadowElement,t=new U;this.mutationObserver=new MutationObserver(()=>{t.next();}),this.mutationObserver.observe(e,{attributes:true,subtree:true,childList:this.inShadow}),this.mutationSubscription=t.pipe(we$2(800,void 0,{leading:false,trailing:true})).subscribe(()=>{let n=this.isOpen();this.currentState!==n&&(this.currentState=n,r.cartDrawerToggle$.next({open:n,firstOpen:this.firstOpen}),this.firstOpen&&(this.firstOpen=false));});}isPresent(){if(!this.selector||!this.cartDrawerShadowElement)return false;let e=this.cartDrawerShadowElement.querySelector(this.selector);return e?C$2(e):false}async updateBubble(){let e=(await h.getCurrent().getNormalisedCart(true)).itemCount,t=document.querySelector(`.cart-link__bubble`);t&&(t.innerText=e+``);}manualCartIconClicked(e){!e.target.closest(this.iconSelector)||!e.isTrusted||window.CooeeSDK.events.push([`Open Cart`]);}};var Ar=new Map,tr$1=async r=>{for(let i of r.items)if(window.cooeeManipulateProduct)try{window.cooeeManipulateProduct(i,r);}catch(s){Y$2.error(s);}if(r.isCartEmbed()&&!r.isSubscriptionUpsell()){let s=(await h.getCurrent().getNormalisedCart()).items.map(c=>c.mID);r.items=r.items.filter(c=>!s.includes(c.mID));}if(r.items=zn(r),he$4.get().currencyCount<=1)return r.items;if(r.isShoppableVideo())return await ri$1(r.content.videoConfig,r),r.items;let e=r.items.length,t=r.items.map(i=>Yn(i,r)),o=(await Promise.all(t)).filter(i=>i!=null);if(e&&!o.length){let i=`Failed to fetch any product from Ajax API`;throw X$1(new Ir$1(`CE Campaign Failed`,{reason:i,currency:r.currency},r)),new Error(i)}return zn(r,o)},zn=(r,e=r.items)=>{if(!r.isCartRecovery())return e;let t=h.getCurrent().items,n=[];for(let o of e)for(let i of o.vars){if(!i.isAvailable)continue;let s=t.find(u=>u.variant_id.toString()===i.mID);if(!s)continue;let c=new mt$3(o);c.name=s.title;let p=new dt$2(i);p.name=s.variant_title,p.price.d=s.discounted_price/100,c.variants=[p],n.push(c);}return n},ri$1=async(r,e)=>{await Promise.all(r.videoEntries.map(async t=>{t.video.items=await Promise.all(t.video.items.map(async n=>{return await Yn(n,e)||n}));}));},Yn=async(r,e)=>{if(Ar.has(r.mID))return Ar.get(r.mID);let t,n=`/products/${r.slug}.js`;try{t=(await Hn$1(n)).data;}catch(o){return o instanceof ne$2&&o.response?.status===404||ke(o,`fetch-shopify-product`,{extra:{item:r,path:n},engagementTrigger:e}),null}return t?ni$1(r,t):(Y$2.error(`Item not found after AJAX call for:`,r),null)},ni$1=(r,e)=>{if(!r||!e)return r;r.name=e.title,r.tags=e.tags,r.slug=e.handle;let t=r.selectedOrFirstVariant.value;return r.vars.map(n=>{let o=e.variants.find(i=>i.id===+n.mID);o!=null&&(n.name=o.title,n.isAvailable=o.available,n.price.d=o.price?o.price/100:o.price,n.price.effective=n.price.d,n.price.cmp=o.compare_at_price?o.compare_at_price/100:o.compare_at_price,+t.mID===o.id&&(t.effectivePrice.value=n.price.d));}),Ar.set(r.mID,r),r};var Ze$1=r=>{let e=r instanceof mt$3?r.selectedOrFirstVariant.value.mID:r.vID,t=r instanceof mt$3?r.selectedOrFirstVariant.value.name:r.vName;return {product_id:r.mID,product_name:r.name,variant_id:e,variant_name:t}};var ao=x$3(yt$1());var Or=class{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;}};function rr$1(){let r$2$1=location.pathname===`/`?location.pathname:location.pathname.replace(/\/+$/,``);return new Or(r$2({origin:location.origin,path:r$2$1,qs:location.search,referrer:Ye$1(),name:Be$3().pageName},Je$1()))}function pl(){let r=Be$3(),e=new URLSearchParams(location.search),t=e.get(`cooee-preview`),n=e.get(`cooee-exp-preview`);if(t){let i=t.split(`,`).map(s=>s.trim()).filter(s=>Number.isInteger(+s));i.length&&(r.previewIDs=i);}if(n){let i=n.split(`,`).map(s=>s.trim()).filter(s=>Number.isInteger(+s));i.length&&(r.previewIDs??=[],r.previewIDs.push(...i),r.activeExperiments=true);}let o=e.get(`cooee-variant`)?.trim();o&&(r.previewVariant=o);}function nr$1(){let r$3=Be$3();return s$3(r$2(s$3(r$2({},r$3.customContext),{page:rr$1(),locale:r$3.locale,currentItem:r$3.currentItem,previewIDs:r$3.previewIDs,previewVariant:r$3.previewVariant,engagementIDs:ii(),cart:Tr()}),oi$1()),{host:window.location.host})}function oi$1(){let r=window.CooeeSDK.uaParser.getResult();return {os:r.os,device:r.device,browser:r.browser}}function ii(){let r=document.querySelectorAll(`.letscooee-engagement`),e=[];return r.forEach(t=>{let n=t.dataset.engagementId;n&&+n&&e.push(n);}),e}var si$1=`keepalive`in new Request(``),Lr=new Headers,or$1={type:Gr$3,code:Hr$4,version:Q$4,shopName:Nn()??``};li$1();async function et$1(){let[r$4]=await Promise.all([Jn()]);return r$2(r$2({},nr$1()),r$4)}function Qn(r){le$2(J$1).then(()=>ai$1(r??{}));}function ai$1(r){ro(`/v1/user/update`,r).then(()=>{Y$2.verbose(`Updated user profile`);}).catch(e=>{Y$2.error(`Error saving user profile`,e);});}function Zn(r){return ie$1(`/v1/event/generate-discount`,r)}function Al(r){le$2(J$1).then(()=>ci$1({props:r}));}function ci$1(r){ro(`/v1/device/update`,r).then(()=>{Y$2.verbose(`Updated device properties`);}).catch(async e=>{Y$2.error(`Error saving device property`,e);});}function eo(r){r&&(or$1.deviceId=r);}function to(r){r&&(or$1.firstSeen=r.toUTCString());}function ie$1(r,e){return no(`POST`,r,e)}function ro(r,e){return no(`PUT`,r,e)}function no(r$5,e,t){if(!Ye())return Y$2.log(`Rejecting ${r$5} ${e} as this is not e-commerce app`),Promise.reject();e.startsWith(`http`)||(e.includes(`/event/track`)?e=(window.CooeeSDK.apiURLs?.eventURL||fe$5.apiURL)+e:e=(window.CooeeSDK.apiURLs?.baseURL||fe$5.cdnApiURL)+e);let n=t?s$3(r$2({},t),{sdkMeta:or$1}):void 0;if(n&&!si$1&&e.includes(kr))return mi$1(e,Lr,n);let o={method:r$5,headers:Lr,keepalive:false};return n&&(o.body=JSON.stringify(n)),Hn$1(e,o)}function mi$1(r,e,t){return new Promise((n,o)=>{let i=new XMLHttpRequest;i.open(`POST`,r,true),e.forEach((s,c)=>{i.setRequestHeader(c,s);}),i.onreadystatechange=()=>{if(i.readyState===XMLHttpRequest.DONE)if(i.status>=200&&i.status<300)try{if(i.getResponseHeader(`Content-Type`)?.includes(`application/json`))n({data:JSON.parse(i.responseText),headers:e,request:i,status:i.status,statusText:i.statusText});else o(new Error(`Content-Type of response header is not json`));}catch(s){o(s);}else o(new Error(`Received status - ${i.status}(${i.statusText})`));},i.onerror=()=>{o(new Error(`Network error occurred during the request.`));},i.send(JSON.stringify(t));})}function li$1(){Lr.set(`Content-Type`,`text/plain; charset=utf-8`);let r=localStorage.getItem(`cooeeDebugTill`);(r&&new Date(+r)>new Date)&&(or$1.debug=true);}var pi$1=`
51
+ `;function Vn(){zo().catch(r=>{Y$2.error(`Fail to add attributes in cart`,r);});}async function Ko(){let e=await(await fetch(window.Shopify.routes.root+`browsing_context_suggestions.json?country[enabled]=true&country[exclude]=${window.Shopify.country}&language[enabled]=true&language[exclude]=${window.Shopify.language}`)).json(),t=he$4.get().storefrontToken,n=new Headers;n.append(`x-shopify-storefront-access-token`,t),n.append(`Content-Type`,`application/json`),await We$1(jo,{metafields:[{key:`currentCountry`,ownerId:`gid://shopify/Cart/${h.getCurrent().token}`,type:`single_line_text_field`,value:e.detected_values.country.handle}]},`add-cart-metafields-set`);}function Xo(){h.getCurrent().token?Ko().catch(r=>{Y$2.error(`Fail to update cart metafields`,r);}):setTimeout(Xo,500);}async function zo(){await _r.acquire();let r=h.getCurrent(),e=await Nr$4();if(r.attributes?.letscooee_did===e.letscooee_did&&r.attributes?.letscooee_sn===e.letscooee_sn){Y$2.verbose(`Not calling Shopify update.js API.`,`Current attributes:`,r.attributes),_r.release();return}try{let t=await we$1(`/cart/update.js`,{attributes:e});Y$2.verbose(`Updated cart attributes`,JSON.stringify(t.data)),r.update(t.data);}catch(t){Y$2.error(`Failed to add cart attributes`,t);}_r.release();}var Yo=r=>r,Wn=r=>r.filter(e=>e.removedNodes&&e.removedNodes.length>0);function $n(r,e={childList:true,subtree:true},t=500,n=Yo){return te$1(o=>{let i=new MutationObserver(s=>o(s));return i.observe(r,e),i},(o,i)=>i.disconnect()).pipe(q$2(o=>n(o)),Ir(o=>o.length>0),Fe$2(t))}var Xn=x$3(yt$1());var Gn=new U,jn=new U;function Um(){return jn.asObservable()}function er(){Gn.next();}Gn.pipe(Fe$2(100)).subscribe(ti.bind(void 0));function Mm(){er(),Jo(),Qo();}function Jo(){let r=window.XMLHttpRequest.prototype.send;window.XMLHttpRequest.prototype.send=function(){return this.addEventListener(`load`,function(){Kn(this._url).catch(e=>Y$2.error(`Unable to process cart change in XMLHttpRequest`,e));}),r.apply(this,arguments)},Y$2.verbose(`Securely overwritten window.XMLHttpRequest.send method`);}function Qo(){let r=window.fetch;try{window.fetch=async function(e,t){return r(e,t).then(n=>{let o=``;try{o=typeof e==`string`||e instanceof URL?e.toString():e?.url??n?.url??``;}catch{}return Kn(o).catch(i=>Y$2.error(`Unable to process cart change in fetch`,i)),n})},Y$2.verbose(`Securely overwritten window.fetch method`);}catch(e){console.warn(`Fail to override fetch.`,`Cooee won't be able to track "Add To Cart" and "Remove From Cart" KPI.`),Y$2.error(e);}}async function Kn(r){Zo(r)&&er();}function Zo(r){return /\/cart\/(add|change|update|clear)/.test(r)}function ei(r$1,e){let t=r$1?.items,n=e.items,o=[],i=[];if(Y$2.verbose(`Comparing cart change with old count ${t?.length} to new count ${n.length}`),n?.forEach(s$4=>{let c=t?.find(p=>p.vID===s$4.vID);if(c){if(c.quantity!==s$4.quantity){let p=c.quantity<s$4.quantity,u=Math.abs(c.quantity-s$4.quantity),d=s$3(r$2({},s$4),{quantity:u});p?o.push(d):i.push(d);}t&&Rn(t,c);}else o.push(s$4);}),t)for(let s of t)i.push(s);Y$2.verbose(`Cart delta: added: ${o.length}, removed: ${i.length}`),o.length&&Hn(`Add To Cart`,{items:o}),i.length&&r$1.token===e.token&&Hn(`Remove From Cart`,{items:i}),(i.length||o.length)&&jn.next({itemsAdded:o,itemsRemoved:i,cart:e});}function Hn(r,e){qn(new Ir$1(r,e));}async function ti(){ei(await ce$3.get(`cart`,{}),await h.getCurrent().getNormalisedCart(true));}var P=class r{static cartDrawerToggle$=new Sr({open:false,firstOpen:false});static DEFAULT_SELECTOR=`cart-drawer`;static _instance;inShadow=false;cartDrawerElement;cartDrawerShadowElement;configWebsite=he$4.get().website??{};currentState=false;mutationSubscription;mutationObserver;firstOpen=true;selector;shadowParentElementSelector;clickEventListener;refreshUIEventListener;iconSelector=[`button[drawer-to-open="cart-drawer"]`,`a[href="/cart"]`,`.header__icon--cart`,`#cart-icon-bubble`,`.cart-icon-bubble`,`.cart-count`,`a[onclick*="handleFloCartBtn"]`].join(`,`);cartSelector=[r.DEFAULT_SELECTOR,`#halo-cart-sidebar`,`[role="dialog"][class*="cart" i]`,`[id*="section-cart" i]`,`#sidebar-cart`,`#rebuy-cart`,`#mini-cart`,`#flo-cart-wrapper`,`#drawer-cart`,`#UpcartPopupBackDrop`,`[id$="CartDrawer" i]`].join(`,`);constructor(){this.initialize(),this.refreshUIEventListener=this.updateBubble.bind(this),this.clickEventListener=this.manualCartIconClicked.bind(this),document.addEventListener(`letscooee:outbound:refresh-ui`,this.refreshUIEventListener),document.addEventListener(`click`,this.clickEventListener,{capture:true,passive:true});}get element(){return this.cartDrawerElement}static get(){return r._instance||(r._instance=new r),r._instance}static initialize(){r.get();}isOpen(){if(window.cooeeIsCartDrawerVisible)return window.cooeeIsCartDrawerVisible();if(this.cartDrawerElement?.id===`rebuy-cart`)return !!window.Rebuy?.SmartCart?.visible;let e=this.inShadow?this.isPresent():C$2(this.cartDrawerElement);return Y$2.info(`Cart drawer is currently ${e?`open`:`close`}`),e}open(){if(this.isOpen()){Y$2.log(`Drawer is already open`);return}document.dispatchEvent(new CustomEvent(`letscooee:outbound:open-cart`));let e=document.querySelector(this.iconSelector);if(!e){Y$2.verbose(`No clickable cart icon found with selector`,this.iconSelector);return}e.click();}isShopifyDefaultDrawer(){return this.element?.tagName.toLowerCase()===r.DEFAULT_SELECTOR}isMiniCart(){return this.isShopifyDefaultDrawer()&&this.element?.id===`mini-cart`}refreshUI(e,t=true){if(window.cooeeUpdateCartDrawer)try{window.cooeeUpdateCartDrawer(e);}catch(n){ke(n,`execute-cooeeUpdateCartDrawer`);}else if(this.isMiniCart()&&this.element?._rerenderCart)this.element._rerenderCart({detail:{cart:e}});else if(window.MinimogTheme?.Cart?.renderNewCart)window.MinimogTheme.Cart.renderNewCart();else if(this.isShopifyDefaultDrawer()&&this.element?.renderContents&&e)this.element.classList.remove(`is-empty`),this.element.renderContents?.(e);else if(this.element?.onCartDrawerUpdate)this.element.onCartDrawerUpdate();else if(window.cartGiftUpdate){if(!e?.items?.[0])return;let n=e.items[0].id,o=e.items[0].quantity,i=e.items[0].price;window.cartGiftUpdate(n,i,o,``,`ADD_TO_CART`);}else if(window.icartCartActivityEvent)window.icartCartActivityEvent();else if(window.theme?.CartDrawer&&typeof window.theme?.CartDrawer==`function`)window.theme?.CartDrawer.init?new window.theme.CartDrawer().init():new window.theme.CartDrawer;else if(window.Hs_CartDrawer?.updateSlideCart)window.Hs_CartDrawer.updateSlideCart();else if(window.theme?.fetch_side_cart)window.theme.fetch_side_cart();else if(window.theme?.Cart?.updateCart)window.theme.Cart.updateCart();else if(window.cartUpdate)window.cartUpdate();else if(this.element?._onCartRefresh)this.element._onCartRefresh();else if(window.cart?.getCart)window.cart.getCart();else if(this.element?.tagName?.toLowerCase()===`cart-drawer-component`)document.dispatchEvent(new CustomEvent(`action:cart:updateCartandShowCart`));else if(this.element?.id===`sidebar-cart`)document.body.dispatchEvent(new CustomEvent(`cart:refresh`,{bubbles:true,detail:{}}));else if(this.element?.id===`quick-cart`){let n=document.querySelector(`a[href="/cart"]`);n&&n.click();}else window.Shopify?.KT_onItemAdded?window.Shopify.KT_onItemAdded():window.sideCart?.updateCart?window.sideCart.updateCart():window.SLIDECART_UPDATE?(window.SLIDECART_UPDATE(),window.SLIDECART_OPEN?.()):window.refreshCart?h.getCurrent().getNormalisedCart(true).then(()=>{window.refreshCart(h.getCurrent());}):window.OPEN_CART?window.OPEN_CART():window.updateCart?window.updateCart():window.sjRefreshCart?window.sjRefreshCart():window.CartJS?.getCart?window.CartJS?.getCart():window.updateCartItemJS?window.updateCartItemJS(1,e?.items?.[0]?.id+``):(Y$2.info(`No method found to update the cart drawer. Blindly firing some events to try`),document.dispatchEvent(new CustomEvent(`cart:refresh`,{bubbles:true})));document.dispatchEvent(new CustomEvent(`letscooee:outbound:refresh-ui`,{detail:{responseJSON:e,currentCart:h.getCurrent()}})),t&&er();}async initialize(){let e=this.configWebsite.cartDrawerSelector;if(!e){await this.findCartDrawer();return}let t=e.split(`:shadow`);t.length===1?(this.selector=t[0],await this.findCartDrawer()):(this.inShadow=true,this.shadowParentElementSelector=t[0]?.trim(),this.selector=t[1]?.trim(),await this.findCartDrawerWithShadow());}async findCartDrawer(){if(!Ye())return;let e=this.selector||this.cartSelector;if(this.cartDrawerElement=await xn(e),!this.cartDrawerElement){Xn.default.warn(`Max attempts exhausted to find cart drawer`);return}Y$2.verbose(`Found`,this.cartDrawerElement,`from selector: ${e}`),this.createMutationObservers();}async findCartDrawerWithShadow(){if(!this.shadowParentElementSelector)return;let t=(await xn(this.shadowParentElementSelector))?.shadowRoot;t?.mode===`open`&&(this.cartDrawerShadowElement=t,this.createMutationObservers());}createMutationObservers(){!this.cartDrawerElement&&!this.cartDrawerShadowElement||this.watchForCartToggle();}watchForCartToggle(){let e=this.cartDrawerElement||this.cartDrawerShadowElement,t=new U;this.mutationObserver=new MutationObserver(()=>{t.next();}),this.mutationObserver.observe(e,{attributes:true,subtree:true,childList:this.inShadow}),this.mutationSubscription=t.pipe(we$2(800,void 0,{leading:false,trailing:true})).subscribe(()=>{let n=this.isOpen();this.currentState!==n&&(this.currentState=n,r.cartDrawerToggle$.next({open:n,firstOpen:this.firstOpen}),this.firstOpen&&(this.firstOpen=false));});}isPresent(){if(!this.selector||!this.cartDrawerShadowElement)return false;let e=this.cartDrawerShadowElement.querySelector(this.selector);return e?C$2(e):false}async updateBubble(){let e=(await h.getCurrent().getNormalisedCart(true)).itemCount,t=document.querySelector(`.cart-link__bubble`);t&&(t.innerText=e+``);}manualCartIconClicked(e){!e.target.closest(this.iconSelector)||!e.isTrusted||window.CooeeSDK.events.push([`Open Cart`]);}};var Ar=new Map,tr$1=async r=>{for(let i of r.items)if(window.cooeeManipulateProduct)try{window.cooeeManipulateProduct(i,r);}catch(s){Y$2.error(s);}if(r.isCartEmbed()&&!r.isSubscriptionUpsell()){let s=(await h.getCurrent().getNormalisedCart()).items.map(c=>c.mID);r.items=r.items.filter(c=>!s.includes(c.mID));}if(r.items=zn(r),he$4.get().currencyCount<=1)return r.items;if(r.isShoppableVideo())return await ri$1(r.content.videoConfig,r),r.items;let e=r.items.length,t=r.items.map(i=>Yn(i,r)),o=(await Promise.all(t)).filter(i=>i!=null);if(e&&!o.length){let i=`Failed to fetch any product from Ajax API`;throw X$1(new Ir$1(`CE Campaign Failed`,{reason:i,currency:r.currency},r)),new Error(i)}return zn(r,o)},zn=(r,e=r.items)=>{if(!r.isCartRecovery())return e;let t=h.getCurrent().items,n=[];for(let o of e)for(let i of o.vars){if(!i.isAvailable)continue;let s=t.find(u=>u.variant_id.toString()===i.mID);if(!s)continue;let c=new mt$3(o);c.name=s.title;let p=new dt$2(i);p.name=s.variant_title,p.price.d=s.discounted_price/100,c.variants=[p],n.push(c);}return n},ri$1=async(r,e)=>{await Promise.all(r.videoEntries.map(async t=>{t.video.items=await Promise.all(t.video.items.map(async n=>{return await Yn(n,e)||n}));}));},Yn=async(r,e)=>{if(Ar.has(r.mID))return Ar.get(r.mID);let t,n=`/products/${r.slug}.js`;try{t=(await Hn$1(n)).data;}catch(o){return o instanceof ne$2&&o.response?.status===404||ke(o,`fetch-shopify-product`,{extra:{item:r,path:n},engagementTrigger:e}),null}return t?ni$1(r,t):(Y$2.error(`Item not found after AJAX call for:`,r),null)},ni$1=(r,e)=>{if(!r||!e)return r;r.name=e.title,r.tags=e.tags,r.slug=e.handle;let t=r.selectedOrFirstVariant.value;return r.vars.map(n=>{let o=e.variants.find(i=>i.id===+n.mID);o!=null&&(n.name=o.title,n.isAvailable=o.available,n.price.d=o.price?o.price/100:o.price,n.price.effective=n.price.d,n.price.cmp=o.compare_at_price?o.compare_at_price/100:o.compare_at_price,+t.mID===o.id&&(t.effectivePrice.value=n.price.d));}),Ar.set(r.mID,r),r};var Ze$1=r=>{let e=r instanceof mt$3?r.selectedOrFirstVariant.value.mID:r.vID,t=r instanceof mt$3?r.selectedOrFirstVariant.value.name:r.vName;return {product_id:r.mID,product_name:r.name,variant_id:e,variant_name:t}};var ao=x$3(yt$1());var Or=class{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;}};function rr$1(){let r$2$1=location.pathname===`/`?location.pathname:location.pathname.replace(/\/+$/,``);return new Or(r$2({origin:location.origin,path:r$2$1,qs:location.search,referrer:Ye$1(),name:Be$3().pageName},Je$1()))}function pl(){let r=Be$3(),e=new URLSearchParams(location.search),t=e.get(`cooee-preview`),n=e.get(`cooee-exp-preview`);if(t){let i=t.split(`,`).map(s=>s.trim()).filter(s=>Number.isInteger(+s));i.length&&(r.previewIDs=i);}if(n){let i=n.split(`,`).map(s=>s.trim()).filter(s=>Number.isInteger(+s));i.length&&(r.previewIDs??=[],r.previewIDs.push(...i),r.activeExperiments=true);}let o=e.get(`cooee-variant`)?.trim();o&&(r.previewVariant=o);}function nr$1(){let r$3=Be$3();return s$3(r$2(s$3(r$2({},r$3.customContext),{page:rr$1(),locale:r$3.locale,currentItem:r$3.currentItem,previewIDs:r$3.previewIDs,previewVariant:r$3.previewVariant,engagementIDs:ii(),cart:Tr()}),oi$1()),{host:window.location.host})}function oi$1(){let r=window.CooeeSDK.uaParser.getResult();return {os:r.os,device:r.device,browser:r.browser}}function ii(){let r=document.querySelectorAll(`.letscooee-engagement`),e=[];return r.forEach(t=>{let n=t.dataset.engagementId;n&&+n&&e.push(n);}),e}var si$1=`keepalive`in new Request(``),Lr=new Headers,or$1={type:Gr$3,code:Hr$4,version:Q$4,shopName:Nn()??``};li$1();async function et$1(){let[r$4]=await Promise.all([Jn()]);return r$2(r$2({},nr$1()),r$4)}function Qn(r){le$2(J$1).then(()=>ai$1(r??{}));}function ai$1(r){ro(`/v1/user/update`,r).then(()=>{Y$2.verbose(`Updated user profile`);}).catch(e=>{Y$2.error(`Error saving user profile`,e);});}function Zn(r){return ie$1(`/v1/event/generate-discount`,r)}function Al(r){le$2(J$1).then(()=>ci$1({props:r}));}function ci$1(r){ro(`/v1/device/update`,r).then(()=>{Y$2.verbose(`Updated device properties`);}).catch(async e=>{Y$2.error(`Error saving device property`,e);});}function eo(r){r&&(or$1.deviceId=r);}function to(r){r&&(or$1.firstSeen=r.toUTCString());}function ie$1(r,e){return no(`POST`,r,e)}function ro(r,e){return no(`PUT`,r,e)}function no(r$5,e,t){if(!Ye())return Y$2.log(`Rejecting ${r$5} ${e} as this is not e-commerce app`),Promise.reject();e.startsWith(`http`)||(e.includes(`/event/track`)?e=(window.CooeeSDK.apiURLs?.eventURL||fe$5.apiURL)+e:e=(window.CooeeSDK.apiURLs?.baseURL||fe$5.cdnApiURL)+e);let n=t?s$3(r$2({},t),{sdkMeta:or$1}):void 0;if(n&&!si$1&&e.includes(kr))return mi$1(e,Lr,n);let o={method:r$5,headers:Lr,keepalive:false};return n&&(o.body=JSON.stringify(n)),Hn$1(e,o)}function mi$1(r,e,t){return new Promise((n,o)=>{let i=new XMLHttpRequest;i.open(`POST`,r,true),e.forEach((s,c)=>{i.setRequestHeader(c,s);}),i.onreadystatechange=()=>{if(i.readyState===XMLHttpRequest.DONE)if(i.status>=200&&i.status<300)try{if(i.getResponseHeader(`Content-Type`)?.includes(`application/json`))n({data:JSON.parse(i.responseText),headers:e,request:i,status:i.status,statusText:i.statusText});else o(new Error(`Content-Type of response header is not json`));}catch(s){o(s);}else o(new Error(`Received status - ${i.status}(${i.statusText})`));},i.onerror=()=>{o(new Error(`Network error occurred during the request.`));},i.send(JSON.stringify(t));})}function li$1(){Lr.set(`Content-Type`,`text/plain; charset=utf-8`);let r=localStorage.getItem(`cooeeDebugTill`);(r&&new Date(+r)>new Date)&&(or$1.debug=true);}var pi$1=`
52
52
  mutation cartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!]) {
53
53
  cartDiscountCodesUpdate(cartId: $cartId, discountCodes: $discountCodes) {
54
54
  cart {
@@ -73,7 +73,7 @@ mutation cartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!]) {
73
73
  }
74
74
  }
75
75
  }
76
- `;function io(r){let e=P.get();if(window.cooeeGetCartSections&&typeof window.cooeeGetCartSections==`function`)try{return {sections_url:window.location.pathname,sections:window.cooeeGetCartSections()}}catch(t){ke(t,`execute-cooeeGetCartSections`,{engagementTrigger:r});}else {if(e.isMiniCart())return {sections:[`mini-cart`]};if(e.isShopifyDefaultDrawer())return {sections:e.element.getSectionsToRender?.().map((t=>t.section??t.id))}}return {}}async function Nr(r$6,e){if(!pe$5.hasKeys(r$6)){Y$2.warn(`No update fields provided`);return}let t=io(e),n=r$2(r$2({},r$6),t);try{let o=await we$1(`/cart/update.js`,n);return Y$2.log(`Updated cart`,r$6),h.getCurrent().update(o.data),o.data}catch(o){ke(o,`cart-update`),e.content?.showSnackBar!==false&&xn(`Failed to update item in cart`);}}var $e=class{async addToCart(e,t){if(!e.length)return;let n=e.map(s=>{let{vID:c,vName:p,quantity:u}=this.getVariantDetails(s),d=t.getPrivateAttributesForLineItem();if(pe$5.hasKeys(window.CooeeSDK.customItemProperties)){let y={name:p},I={templateSuffix:s.templateSuffix},g=oo.render(JSON.stringify(window.CooeeSDK.customItemProperties),{variant:y,product:I});d=r$2(r$2({},JSON.parse(g)),d);}return {id:c?+c:+s.mID,quantity:u,properties:d}}),o=io(t),i=r$2({items:n},o);try{let s=await we$1(`/cart/add.js`,i);return Y$2.log(`Added ${e.length} items to Cart`),t.content?.showSnackBar!==!1&&xn(`Product added to your cart`),s.data}catch(s){ke(s,`cart-item-add`,{engagementTrigger:t});let c=[`Failed to add product in cart.`];if(s instanceof ne$2&&s.is40x()&&s.responseText){let p=s.responseText;p.description&&c.push(`Reason: ${p.description}`);}c.push(`Please try again later.`),t.content?.showSnackBar!==false&&xn(c.join(` `));}}async copyDiscountCode(e){if(e)try{await navigator.clipboard.writeText(e),Y$2.log(`Code-${e} copied`),xn(`Discount code copied`);}catch(t){Y$2.error(`Failed to copy code`,t);}}getProductURL(e){if(!e?.link)return;let t=Un(e.link);if(t)return Fe$1(`/products/`+t)}async upgradeToSubscription(e,t){if(!e){Y$2.warn(`Trying to upgrade to subscription with no item`);return}let n=await h.getCurrent().getNormalisedCart(),o=e.selectedOrFirstVariant.value,i=n.items.findIndex(p=>p.vID===o.mID),s=o.selectedSellingPlan.value,c={line:i+1,selling_plan:s?.mID||null,properties:t.getPrivateAttributesForLineItem()};try{let p=await we$1(`/cart/change.js`,c);return Y$2.log(`Upgraded ${e} selling plan`),xn(`Line item updated`),h.getCurrent().update(p.data),p.data}catch(p){ke(p,`cart-switch-subscription`,{engagementTrigger:t}),xn(`Failed to update subscription`);}}async createNewCart(e,t,n){if(!e?.vID){Y$2.error(`No variant ID found to perform Buy now`,e);return}let o=t?[t]:[];return (await We$1(di$1,{input:{lines:[{merchandiseId:`gid://shopify/ProductVariant/${e.vID}`,quantity:1,attributes:n.getKVFormatPrivateAttributesForLineItem()}],discountCodes:o,attributes:await Ln(`Buy Now`)}},`storefront-create-cart`)).data.data?.cartCreate?.cart?.checkoutUrl}async process(e){let t=e.clickAction,n=e.items,o=e.triggerData,i;if(t.at){let s=t;Y$2.log(`Performing ${JSON.stringify(s)} action`);let c={};if(s.at===pe$4.GO_TO_PRODUCT)i=this.getProductURL(n[0]);else if(s.at===pe$4.ADD_TO_CART)n?.length&&await this.addToCart(n,o);else if(s.at===pe$4.COPY_COUPON_CODE)await this.copyDiscountCode(o.discount?.code),c.discountCode=o.discount?.code;else if(s.at===pe$4.OPEN_CART)P.get().open();else if(s.at===pe$4.GO_TO_COLLECTION){let p=e.collections;if(!p?.length)return;i=Fe$1(`/collections/`+p[0].handle);}c.products=n.map(Ze$1),c.redirectTo=i,tt$1(s.at,c);}t.applyDiscount&&o.discount?.code?ge$1.navigate(o.discount.code,o.redirectBehaviour,i):i&&(location.pathname=i);}getVariantDetails(e){let t,n,o;if(e instanceof at$2)t=e.vID,n=e.vName,o=e.quantity??1;else {if(!e.vars?.length)return {};t=e.selectedOrFirstVariant.value.mID,n=e.selectedOrFirstVariant.value.name,o=1;}return {vID:t,quantity:o,vName:n}}};async function so(r$7,e){if(!pe$5.hasKeys(e)){Y$2.warn(`No update fields provided`);return}let t=r$2({id:r$7.key},e);try{let n=await we$1(`/cart/change.js`,t);Y$2.log(`Updated line-item`,r$7),h.getCurrent().update(n.data);}catch(n){ke(n,`cart-item-update`);}}var He$1=class He{constructor(e){this.triggerContext=e;}async execute(e){let t=Be$3().currentItem,n=e.clickAction;if(!n)return;let o=e.item,i=this.triggerContext,s=new $e,c=i.triggerData.redirectBehaviour,p=!!i.triggerData.discount?.type&&!!n?.applyDiscount,u={selectedVariants:i.triggerData.nonMutableItems.map(f=>({itemMID:f.mID,mID:f.selectedOrFirstVariant.value.mID,variantID:f.selectedOrFirstVariant.value.mID})),eID:i.triggerData.engagementID,cID:i.triggerData.contentID},d=``,y=[],I=[];if(o?I=[o.toEmbed()]:e.embeddedItem&&(I=[e.embeddedItem]),n.at===pe$4.ADD_BUNDLE){let f=i.selectedItems;if(I=e.embeddedItems??f.map(x=>x.toEmbed()),i.shouldGiveFBTDiscount||e.embeddedItems?.length){let x;e.embeddedItems?x=e.embeddedItems.map(D=>({itemMID:D.mID,mID:D.vID,variantID:D.vID,quantity:D.quantity})):x=f.map(D=>({itemMID:D.mID,mID:D.selectedOrFirstVariant.value.mID,variantID:D.selectedOrFirstVariant.value.mID}));let he=i.triggerData.bundleFrom;i.triggerData.isBundleOnCartDrawer()&&he&&(x.push({itemMID:he.mID,mID:he.selectedOrFirstVariant.value.mID,isPrimary:true}),I.unshift(he.toEmbed())),u.selectedVariants=x,i.triggerData.isBundleOnPDP()&&u.selectedVariants.forEach(D=>{D.mID===t.vID&&(D.isPrimary=true);});}else u=void 0;y=e.embeddedItems??f;}else if(n.at===pe$4.INITIATE_CHECKOUT){let f=await h.getCurrent().getNormalisedCart();I=f.items,u.selectedVariants=f.items.map(x=>({itemMID:x.mID,mID:x.vID}));}else if(n.at===pe$4.ADD_TO_CART)y=o?[o]:[e.embeddedItem];else if(n.at===pe$4.QUICK_VIEW){window.cooeeShowQuickItem(this.triggerContext,o),this.sendTriggerClicked(I,{from:`button`},e.video);return}else if(n.at===pe$4.GO_TO_PRODUCT)d=o?Fe$1(`/products/`+o.slug):e.embeddedItem?.link;else if(n.at===pe$4.GO_TO_URL){let f=Sn$1(n.gu?.u);window.CooeeSDK.allowExternalURL?f&&(d=f.href):f&&(d=f.pathname+f.search+f.hash);}else if(n.at===pe$4.UPGRADE_TO_SUBSCRIPTION){let f=await s.upgradeToSubscription(o,i.triggerData);this.triggerContext.triggerData.skipSubscribedItems&&this.triggerContext.renderer.destroy(),P.get().refreshUI(f);}else if(n.at===pe$4.GO_TO_COLLECTION){let f=this.triggerContext.triggerData.collections?.[0];f&&(d=`collections/`+f.handle);}if(this.sendTriggerClicked(I,{from:`button`},e.video),Y$2.verbose({redirectPath:d,redirectBehaviour:c,hasDiscount:p}),!p&&d){tt$1(n.at,{redirectTo:d}),location.href=d;return}let g,v=false;try{g=await this.getOrGenerateDiscountCode(u),Y$2.verbose(`Discount code (if any) to apply`,g);}catch(f){if(!this.triggerContext.triggerData.isBYOB()){ao.default.error(`Unable to get a discount code`,f);return}}if(g&&n.at===pe$4.COPY_COUPON_CODE)await s.copyDiscountCode(g);else if(n.at===pe$4.BUY_NOW){let f=await s.createNewCart(t,g,i.triggerData);f&&(tt$1(n.at,{products:[Ze$1(t)],redirectTo:f}),location.href=f);return}try{g&&await ge$1.applyWithStorefront([g]);}catch(f){Y$2.error(f),v=true;}let b;if(y?.length&&(b=await s.addToCart(y,i.triggerData)),tt$1(n.at,{products:y.map(Ze$1),redirectTo:d,discountCode:g}),v&&g){ge$1.navigate(g,c,d);return}if(d){location.href=d;return}ge$1.navigateWithoutDiscount(c,b);}sendTriggerClicked(e,t,n){let o=new Ir$1(`CE Trigger Clicked`,t,this.triggerContext.triggerData);o.items=e,o.setVideos(n),X$1(o);}async getOrGenerateDiscountCode(e){let t=this.triggerContext.triggerData.discount;if(!t?.type)return;let n=``;if(t.type===H$1.STATIC){if(!t.code)throw Jn$1(`No discount code found`,`warning`,{triggerContext:this.triggerContext}),new Error(`No discount code found`);return t.code}if(e){if(n=await gi$1(e,this.triggerContext),!n)throw Y$2.error(`No discount code found`,e),new Error(`Discount code not found or generated`);return n}}};function tt$1(r$8,e){document.dispatchEvent(new CustomEvent(`letscooee:outbound:cta-executed`,{detail:r$2({action:pe$4[r$8]},e)}));}async function gi$1(r,e){try{return (await Zn(r)).data.code}catch(t){throw xn(`Failed to generate a discount code`),ke(t,`backend-generate-discount`,{triggerContext:e}),t}}var E$1=class E extends U$1{mediaStyle={};deviceTypeKey;clickExecutor;componentWillMount(){this.deviceTypeKey=M$3()?`sm`:`lg`,this.clickExecutor=new He$1(this.props.triggerContext);}getCompiledStyles(){return this.putStyleAccordingToDevice(),r$2(r$2(s$3(r$2(r$2(r$2(r$2(r$2(r$2({},gn(this.mediaStyle.flex)),On(this.mediaStyle.bg)),Sn(this.mediaStyle.br)),Nn$2(this.mediaStyle.size)),In(this.mediaStyle.spc)),En(this.mediaStyle.lout)),{boxSizing:`border-box`,outline:`none`}),this.getComponentStyles()),this.props.style)}matchWhenCondition(e){if(!e?.op)return true;let{lhs:t,rhs:n}=e;switch(e.op){case `eq`:return t===n;case `gt`:return +t>+n;case `gte`:return +t>=+n;case `lt`:return +t<+n;case `lte`:return +t<=+n;case `ne`:return t!==n;case `null`:return t==null;case `empty`:return t.trim()===``;case `in`:return new RegExp(`\\b${n}\\b`).test(t);case `nin`:return !new RegExp(`\\b${n}\\b`).test(t);default:return Y$2.error(`Invalid operator found for when condition - ${e.op}`),false}}getClasses(e){return this.props.element.classes?(e??=``,e+` `+this.props.element.classes):e??``}putStyleAccordingToDevice(){let e=this.props.element;this.mediaStyle=e.style.lg,M$3()&&e.style.sm&&Object.keys(e.style.sm).length&&(this.mediaStyle=r$2(r$2({},this.mediaStyle),e.style.sm));}sendTriggerClicked(e,t){this.clickExecutor.sendTriggerClicked(e,t);}async onClick(e,t){e.stopPropagation(),t.clickAction||(t.clickAction=this.props.element.clc),t.clickAction?.at&&await this.clickExecutor.execute(t);}};var ui$1=0;function m$1(r,e,t,n,o,i){e||(e={});var s,c,p$1$1=e;if(`ref`in p$1$1)for(c in p$1$1={},e)c==`ref`?s=e[c]:p$1$1[c]=e[c];var u={type:r,props:p$1$1,key:t,ref:s,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--ui$1,__i:-1,__u:0,__source:o,__self:i};if(typeof r==`function`&&(s=r.defaultProps))for(c in s)p$1$1[c]===void 0&&(p$1$1[c]=s[c]);return p$1.vnode&&p$1.vnode(u),u}var B$2=class B extends E$1{componentDidMount(){this.setState(()=>({text:this.props.element.text})),Z$2(this.onChange.bind(this));}componentWillReceiveProps(e){this.props.element=e.element,this.onChange();}render(){let e=this.getCompiledStyles(),t=this.state.text;return t||(e.display=`none`,t=``),m$1(`div`,{style:e,onClick:this.customOnClick.bind(this),className:this.getClasses(`lc-text`),children:m$1(`span`,{style:this.getSpanStyle(),dangerouslySetInnerHTML:{__html:t}})})}customOnClick(){this.props.onClick&&this.props.onClick(`title`);}onChange(){if(this.props.element.text==null)return;let e=this.props.triggerContext.triggerData,t={bundle:e.discountData.value,customer:e.customerData,cart:e.getCartMagicVariables()},o=new bt$1(Ve$3(this.props.element,t,this.props.triggerContext));if(!this.matchWhenCondition(o.when)){this.setState(()=>({text:``}));return}this.setState(()=>({text:o.text}));}getComponentStyles(){return r$2({},yn(this.mediaStyle.typo))}getSpanStyle(){return {overflow:`hidden`,display:`-webkit-box`,webkitBoxOrient:`vertical`,webkitLineClamp:2,color:`inherit`,fontSize:`inherit`,fontWeight:`inherit`,fontFamily:`inherit`}}};var be$1=class be extends B$2{render(){return m$1(`div`,{style:this.getCompiledStyles(),className:this.getClasses(`lc-button`),onClick:e=>this.onClick(e,{item:this.props.item}),children:m$1(`span`,{style:this.getSpanStyle(),dangerouslySetInnerHTML:{__html:this.state.text}})})}getComponentStyles(){return s$3(r$2({},super.getComponentStyles()),{cursor:`pointer`})}};var Ur=class extends U$1{render(){if(this.props.element.show[this.props.label.toLowerCase()])return this.props.element.lblPos===`end`?m$1(`div`,{style:r$2(r$2({},this.getElementStyle()),this.props.styles),children:[m$1(`span`,{children:this.props.time}),m$1(`span`,{style:this.getTimeLabelStyle(),children:this.props.label})]}):m$1(`div`,{style:r$2(r$2({},this.getElementStyle()),this.props.styles),children:[m$1(`span`,{style:this.getTimeLabelStyle(),children:this.props.label}),m$1(`span`,{children:this.props.time})]})}getDesign(){}getTimeLabelStyle(){return {fontSize:`0.5em`,alignContent:`center`}}getElementStyle(){let e={display:`flex`,flexDirection:`column`,placeContent:`center center`,textAlign:`center`};return this.props.element.horizontal&&(e.gridTemplateColumns=`repeat(2, minmax(0, 1fr))`),e}},rt$1=class rt extends B$2{labels={Days:`00`,Hours:`00`,Minutes:`00`,Seconds:`00`};componentWillMount(){super.componentWillMount(),this.setState(()=>r$2({},this.labels)),this.processAndStartTimer();}render(){return m$1(`div`,{style:this.getLabelsParentStyle(),className:this.getClasses(),children:Object.keys(this.labels).map(e=>m$1(Ur,{styles:this.getCompiledStyles(),label:e,time:this.state[e],element:this.props.element}))})}getLabelsParentStyle(){return {display:`grid`,justifyContent:`center`,gridTemplateColumns:`repeat(4, auto)`,gap:x$2(this.props.element.gap)}}getDisplayStyles(){return {display:`grid`,placeContent:`center center`}}getComponentStyles(){return r$2(r$2({},super.getComponentStyles()),this.getDisplayStyles())}processAndStartTimer(){this.props.element.timer.start(this.props.element.timerType,e=>{this.labels.Days=String(e.days).padStart(2,`0`),this.labels.Hours=String(e.hours).padStart(2,`0`),this.labels.Minutes=String(e.minutes).padStart(2,`0`),this.labels.Seconds=String(e.seconds).padStart(2,`0`),this.setState(()=>r$2({},this.labels));});}};function ir$1(r,e){if(!r)return;let t={loop:e.loop,slidesPerView:e.maxInRow,spaceBetween:e.gap+`px`,pagination:{type:e.pagination.type,el:r.querySelector(`.swiper-pagination`),clickable:true,renderBullet:(o,i)=>`
76
+ `;function io(r){let e=P.get();if(window.cooeeGetCartSections&&typeof window.cooeeGetCartSections==`function`)try{return {sections_url:window.location.pathname,sections:window.cooeeGetCartSections()}}catch(t){ke(t,`execute-cooeeGetCartSections`,{engagementTrigger:r});}else {if(e.isMiniCart())return {sections:[`mini-cart`]};if(e.isShopifyDefaultDrawer())return {sections:e.element.getSectionsToRender?.().map((t=>t.section??t.id))}}return {}}async function Nr(r$6,e){if(!pe$5.hasKeys(r$6)){Y$2.warn(`No update fields provided`);return}let t=io(e),n=r$2(r$2({},r$6),t);try{let o=await we$1(`/cart/update.js`,n);return Y$2.log(`Updated cart`,r$6),h.getCurrent().update(o.data),o.data}catch(o){ke(o,`cart-update`),e.content?.showSnackBar!==false&&Nn$3(`Failed to update item in cart`);}}var $e=class{async addToCart(e,t){if(!e.length)return;let n=e.map(s=>{let{vID:c,vName:p,quantity:u}=this.getVariantDetails(s),d=t.getPrivateAttributesForLineItem();if(pe$5.hasKeys(window.CooeeSDK.customItemProperties)){let y={name:p},I={templateSuffix:s.templateSuffix},g=oo.render(JSON.stringify(window.CooeeSDK.customItemProperties),{variant:y,product:I});d=r$2(r$2({},JSON.parse(g)),d);}return {id:c?+c:+s.mID,quantity:u,properties:d}}),o=io(t),i=r$2({items:n},o);try{let s=await we$1(`/cart/add.js`,i);return Y$2.log(`Added ${e.length} items to Cart`),t.content?.showSnackBar!==!1&&Nn$3(`Product added to your cart`),s.data}catch(s){ke(s,`cart-item-add`,{engagementTrigger:t});let c=[`Failed to add product in cart.`];if(s instanceof ne$2&&s.is40x()&&s.responseText){let p=s.responseText;p.description&&c.push(`Reason: ${p.description}`);}c.push(`Please try again later.`),t.content?.showSnackBar!==false&&Nn$3(c.join(` `));}}async copyDiscountCode(e){if(e)try{await navigator.clipboard.writeText(e),Y$2.log(`Code-${e} copied`),Nn$3(`Discount code copied`);}catch(t){Y$2.error(`Failed to copy code`,t);}}getProductURL(e){if(!e?.link)return;let t=Un(e.link);if(t)return Fe$1(`/products/`+t)}async upgradeToSubscription(e,t){if(!e){Y$2.warn(`Trying to upgrade to subscription with no item`);return}let n=await h.getCurrent().getNormalisedCart(),o=e.selectedOrFirstVariant.value,i=n.items.findIndex(p=>p.vID===o.mID),s=o.selectedSellingPlan.value,c={line:i+1,selling_plan:s?.mID||null,properties:t.getPrivateAttributesForLineItem()};try{let p=await we$1(`/cart/change.js`,c);return Y$2.log(`Upgraded ${e} selling plan`),Nn$3(`Line item updated`),h.getCurrent().update(p.data),p.data}catch(p){ke(p,`cart-switch-subscription`,{engagementTrigger:t}),Nn$3(`Failed to update subscription`);}}async createNewCart(e,t,n){if(!e?.vID){Y$2.error(`No variant ID found to perform Buy now`,e);return}let o=t?[t]:[];return (await We$1(di$1,{input:{lines:[{merchandiseId:`gid://shopify/ProductVariant/${e.vID}`,quantity:1,attributes:n.getKVFormatPrivateAttributesForLineItem()}],discountCodes:o,attributes:await Ln(`Buy Now`)}},`storefront-create-cart`)).data.data?.cartCreate?.cart?.checkoutUrl}async process(e){let t=e.clickAction,n=e.items,o=e.triggerData,i;if(t.at){let s=t;Y$2.log(`Performing ${JSON.stringify(s)} action`);let c={};if(s.at===pe$4.GO_TO_PRODUCT)i=this.getProductURL(n[0]);else if(s.at===pe$4.ADD_TO_CART)n?.length&&await this.addToCart(n,o);else if(s.at===pe$4.COPY_COUPON_CODE)await this.copyDiscountCode(o.discount?.code),c.discountCode=o.discount?.code;else if(s.at===pe$4.OPEN_CART)P.get().open();else if(s.at===pe$4.GO_TO_COLLECTION){let p=e.collections;if(!p?.length)return;i=Fe$1(`/collections/`+p[0].handle);}c.products=n.map(Ze$1),c.redirectTo=i,tt$1(s.at,c);}t.applyDiscount&&o.discount?.code?ge$1.navigate(o.discount.code,o.redirectBehaviour,i):i&&(location.pathname=i);}getVariantDetails(e){let t,n,o;if(e instanceof at$2)t=e.vID,n=e.vName,o=e.quantity??1;else {if(!e.vars?.length)return {};t=e.selectedOrFirstVariant.value.mID,n=e.selectedOrFirstVariant.value.name,o=1;}return {vID:t,quantity:o,vName:n}}};async function so(r$7,e){if(!pe$5.hasKeys(e)){Y$2.warn(`No update fields provided`);return}let t=r$2({id:r$7.key},e);try{let n=await we$1(`/cart/change.js`,t);Y$2.log(`Updated line-item`,r$7),h.getCurrent().update(n.data);}catch(n){ke(n,`cart-item-update`);}}var He$1=class He{constructor(e){this.triggerContext=e;}async execute(e){let t=Be$3().currentItem,n=e.clickAction;if(!n)return;let o=e.item,i=this.triggerContext,s=new $e,c=i.triggerData.redirectBehaviour,p=!!i.triggerData.discount?.type&&!!n?.applyDiscount,u={selectedVariants:i.triggerData.nonMutableItems.map(f=>({itemMID:f.mID,mID:f.selectedOrFirstVariant.value.mID,variantID:f.selectedOrFirstVariant.value.mID})),eID:i.triggerData.engagementID,cID:i.triggerData.contentID},d=``,y=[],I=[];if(o?I=[o.toEmbed()]:e.embeddedItem&&(I=[e.embeddedItem]),n.at===pe$4.ADD_BUNDLE){let f=i.selectedItems;if(I=e.embeddedItems??f.map(x=>x.toEmbed()),i.shouldGiveFBTDiscount||e.embeddedItems?.length){let x;e.embeddedItems?x=e.embeddedItems.map(D=>({itemMID:D.mID,mID:D.vID,variantID:D.vID,quantity:D.quantity})):x=f.map(D=>({itemMID:D.mID,mID:D.selectedOrFirstVariant.value.mID,variantID:D.selectedOrFirstVariant.value.mID}));let he=i.triggerData.bundleFrom;i.triggerData.isBundleOnCartDrawer()&&he&&(x.push({itemMID:he.mID,mID:he.selectedOrFirstVariant.value.mID,isPrimary:true}),I.unshift(he.toEmbed())),u.selectedVariants=x,i.triggerData.isBundleOnPDP()&&u.selectedVariants.forEach(D=>{D.mID===t.vID&&(D.isPrimary=true);});}else u=void 0;y=e.embeddedItems??f;}else if(n.at===pe$4.INITIATE_CHECKOUT){let f=await h.getCurrent().getNormalisedCart();I=f.items,u.selectedVariants=f.items.map(x=>({itemMID:x.mID,mID:x.vID}));}else if(n.at===pe$4.ADD_TO_CART)y=o?[o]:[e.embeddedItem];else if(n.at===pe$4.QUICK_VIEW){window.cooeeShowQuickItem(this.triggerContext,o),this.sendTriggerClicked(I,{from:`button`},e.video);return}else if(n.at===pe$4.GO_TO_PRODUCT)d=o?Fe$1(`/products/`+o.slug):e.embeddedItem?.link;else if(n.at===pe$4.GO_TO_URL){let f=Sn$1(n.gu?.u);window.CooeeSDK.allowExternalURL?f&&(d=f.href):f&&(d=f.pathname+f.search+f.hash);}else if(n.at===pe$4.UPGRADE_TO_SUBSCRIPTION){let f=await s.upgradeToSubscription(o,i.triggerData);this.triggerContext.triggerData.skipSubscribedItems&&this.triggerContext.renderer.destroy(),P.get().refreshUI(f);}else if(n.at===pe$4.GO_TO_COLLECTION){let f=this.triggerContext.triggerData.collections?.[0];f&&(d=`collections/`+f.handle);}if(this.sendTriggerClicked(I,{from:`button`},e.video),Y$2.verbose({redirectPath:d,redirectBehaviour:c,hasDiscount:p}),!p&&d){tt$1(n.at,{redirectTo:d}),location.href=d;return}let g,v=false;try{g=await this.getOrGenerateDiscountCode(u),Y$2.verbose(`Discount code (if any) to apply`,g);}catch(f){if(!this.triggerContext.triggerData.isBYOB()){ao.default.error(`Unable to get a discount code`,f);return}}if(g&&n.at===pe$4.COPY_COUPON_CODE)await s.copyDiscountCode(g);else if(n.at===pe$4.BUY_NOW){let f=await s.createNewCart(t,g,i.triggerData);f&&(tt$1(n.at,{products:[Ze$1(t)],redirectTo:f}),location.href=f);return}try{g&&await ge$1.applyWithStorefront([g]);}catch(f){Y$2.error(f),v=true;}let b;if(y?.length&&(b=await s.addToCart(y,i.triggerData)),tt$1(n.at,{products:y.map(Ze$1),redirectTo:d,discountCode:g}),v&&g){ge$1.navigate(g,c,d);return}if(d){location.href=d;return}ge$1.navigateWithoutDiscount(c,b);}sendTriggerClicked(e,t,n){let o=new Ir$1(`CE Trigger Clicked`,t,this.triggerContext.triggerData);o.items=e,o.setVideos(n),X$1(o);}async getOrGenerateDiscountCode(e){let t=this.triggerContext.triggerData.discount;if(!t?.type)return;let n=``;if(t.type===H$1.STATIC){if(!t.code)throw Jn$1(`No discount code found`,`warning`,{triggerContext:this.triggerContext}),new Error(`No discount code found`);return t.code}if(e){if(n=await gi$1(e,this.triggerContext),!n)throw Y$2.error(`No discount code found`,e),new Error(`Discount code not found or generated`);return n}}};function tt$1(r$8,e){document.dispatchEvent(new CustomEvent(`letscooee:outbound:cta-executed`,{detail:r$2({action:pe$4[r$8]},e)}));}async function gi$1(r,e){try{return (await Zn(r)).data.code}catch(t){throw Nn$3(`Failed to generate a discount code`),ke(t,`backend-generate-discount`,{triggerContext:e}),t}}var E$1=class E extends U$1{mediaStyle={};deviceTypeKey;clickExecutor;componentWillMount(){this.deviceTypeKey=M$3()?`sm`:`lg`,this.clickExecutor=new He$1(this.props.triggerContext);}getCompiledStyles(){return this.putStyleAccordingToDevice(),r$2(r$2(s$3(r$2(r$2(r$2(r$2(r$2(r$2({},gn(this.mediaStyle.flex)),On(this.mediaStyle.bg)),Sn(this.mediaStyle.br)),Nn$2(this.mediaStyle.size)),In(this.mediaStyle.spc)),En(this.mediaStyle.lout)),{boxSizing:`border-box`,outline:`none`}),this.getComponentStyles()),this.props.style)}matchWhenCondition(e){if(!e?.op)return true;let{lhs:t,rhs:n}=e;switch(e.op){case `eq`:return t===n;case `gt`:return +t>+n;case `gte`:return +t>=+n;case `lt`:return +t<+n;case `lte`:return +t<=+n;case `ne`:return t!==n;case `null`:return t==null;case `empty`:return t.trim()===``;case `in`:return new RegExp(`\\b${n}\\b`).test(t);case `nin`:return !new RegExp(`\\b${n}\\b`).test(t);default:return Y$2.error(`Invalid operator found for when condition - ${e.op}`),false}}getClasses(e){return this.props.element.classes?(e??=``,e+` `+this.props.element.classes):e??``}putStyleAccordingToDevice(){let e=this.props.element;this.mediaStyle=e.style.lg,M$3()&&e.style.sm&&Object.keys(e.style.sm).length&&(this.mediaStyle=r$2(r$2({},this.mediaStyle),e.style.sm));}sendTriggerClicked(e,t){this.clickExecutor.sendTriggerClicked(e,t);}async onClick(e,t){e.stopPropagation(),t.clickAction||(t.clickAction=this.props.element.clc),t.clickAction?.at&&await this.clickExecutor.execute(t);}};var ui$1=0;function m$1(r,e,t,n,o,i){e||(e={});var s,c,p$1$1=e;if(`ref`in p$1$1)for(c in p$1$1={},e)c==`ref`?s=e[c]:p$1$1[c]=e[c];var u={type:r,props:p$1$1,key:t,ref:s,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--ui$1,__i:-1,__u:0,__source:o,__self:i};if(typeof r==`function`&&(s=r.defaultProps))for(c in s)p$1$1[c]===void 0&&(p$1$1[c]=s[c]);return p$1.vnode&&p$1.vnode(u),u}var B$2=class B extends E$1{componentDidMount(){this.setState(()=>({text:this.props.element.text})),Z$2(this.onChange.bind(this));}componentWillReceiveProps(e){this.props.element=e.element,this.onChange();}render(){let e=this.getCompiledStyles(),t=this.state.text;return t||(e.display=`none`,t=``),m$1(`div`,{style:e,onClick:this.customOnClick.bind(this),className:this.getClasses(`lc-text`),children:m$1(`span`,{style:this.getSpanStyle(),dangerouslySetInnerHTML:{__html:t}})})}customOnClick(){this.props.onClick&&this.props.onClick(`title`);}onChange(){if(this.props.element.text==null)return;let e=this.props.triggerContext.triggerData,t={bundle:e.discountData.value,customer:e.customerData,cart:e.getCartMagicVariables()},o=new bt$1(Ve$3(this.props.element,t,this.props.triggerContext));if(!this.matchWhenCondition(o.when)){this.setState(()=>({text:``}));return}this.setState(()=>({text:o.text}));}getComponentStyles(){return r$2({},yn(this.mediaStyle.typo))}getSpanStyle(){return {overflow:`hidden`,display:`-webkit-box`,webkitBoxOrient:`vertical`,webkitLineClamp:2,color:`inherit`,fontSize:`inherit`,fontWeight:`inherit`,fontFamily:`inherit`}}};var be$1=class be extends B$2{render(){return m$1(`div`,{style:this.getCompiledStyles(),className:this.getClasses(`lc-button`),onClick:e=>this.onClick(e,{item:this.props.item}),children:m$1(`span`,{style:this.getSpanStyle(),dangerouslySetInnerHTML:{__html:this.state.text}})})}getComponentStyles(){return s$3(r$2({},super.getComponentStyles()),{cursor:`pointer`})}};var Ur=class extends U$1{render(){if(this.props.element.show[this.props.label.toLowerCase()])return this.props.element.lblPos===`end`?m$1(`div`,{style:r$2(r$2({},this.getElementStyle()),this.props.styles),children:[m$1(`span`,{children:this.props.time}),m$1(`span`,{style:this.getTimeLabelStyle(),children:this.props.label})]}):m$1(`div`,{style:r$2(r$2({},this.getElementStyle()),this.props.styles),children:[m$1(`span`,{style:this.getTimeLabelStyle(),children:this.props.label}),m$1(`span`,{children:this.props.time})]})}getDesign(){}getTimeLabelStyle(){return {fontSize:`0.5em`,alignContent:`center`}}getElementStyle(){let e={display:`flex`,flexDirection:`column`,placeContent:`center center`,textAlign:`center`};return this.props.element.horizontal&&(e.gridTemplateColumns=`repeat(2, minmax(0, 1fr))`),e}},rt$1=class rt extends B$2{labels={Days:`00`,Hours:`00`,Minutes:`00`,Seconds:`00`};componentWillMount(){super.componentWillMount(),this.setState(()=>r$2({},this.labels)),this.processAndStartTimer();}render(){return m$1(`div`,{style:this.getLabelsParentStyle(),className:this.getClasses(),children:Object.keys(this.labels).map(e=>m$1(Ur,{styles:this.getCompiledStyles(),label:e,time:this.state[e],element:this.props.element}))})}getLabelsParentStyle(){return {display:`grid`,justifyContent:`center`,gridTemplateColumns:`repeat(4, auto)`,gap:x$2(this.props.element.gap)}}getDisplayStyles(){return {display:`grid`,placeContent:`center center`}}getComponentStyles(){return r$2(r$2({},super.getComponentStyles()),this.getDisplayStyles())}processAndStartTimer(){this.props.element.timer.start(this.props.element.timerType,e=>{this.labels.Days=String(e.days).padStart(2,`0`),this.labels.Hours=String(e.hours).padStart(2,`0`),this.labels.Minutes=String(e.minutes).padStart(2,`0`),this.labels.Seconds=String(e.seconds).padStart(2,`0`),this.setState(()=>r$2({},this.labels));});}};function ir$1(r,e){if(!r)return;let t={loop:e.loop,slidesPerView:e.maxInRow,spaceBetween:e.gap+`px`,pagination:{type:e.pagination.type,el:r.querySelector(`.swiper-pagination`),clickable:true,renderBullet:(o,i)=>`
77
77
  <span class="${i}"
78
78
  style="background-color: ${e.pagination.color?.rgba};"></span>
79
79
  `,renderProgressbar:o=>`
@@ -81,22 +81,22 @@ mutation cartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!]) {
81
81
  style="background-color: ${e.pagination.color?.rgba};">
82
82
  </span>
83
83
  `},navigation:{nextEl:r.querySelector(`.swiper-button-next`),prevEl:r.querySelector(`.swiper-button-prev`)},autoplay:e.autoplay?.enabled?{delay:e.autoplay?.delay,disableOnInteraction:false,pauseOnMouseEnter:false}:false,autoHeight:true};e.marquee&&t.autoplay&&typeof t.autoplay==`object`&&(t.speed=e.speed,t.autoplay.pauseOnMouseEnter=true,r.style.setProperty(`--swiper-wrapper-transition-timing-function`,`linear`));let n=new window.CooeeSDK.Swiper(r,t);return r.style.setProperty(`--swiper-navigation-size`,`${e.navigation.size}px`),n}function sr$1(r,e,t){let n={color:r.navigation.color?.rgba};return r.pagination.enabled&&(n.transform=`translateY(-25%)`),m$1(`div`,{class:`swiper-container`,ref:e,style:`max-width: 100%`,children:[m$1(`div`,{class:`swiper-wrapper`,children:t()}),r.navigation.enabled&&m$1(`div`,{class:`swiper-button-next`,style:n,children:m$1(`span`,{})}),r.navigation.enabled&&m$1(`div`,{class:`swiper-button-prev`,style:n,children:m$1(`span`,{})}),r.pagination.enabled&&m$1(`div`,{className:`swiper-pagination`,style:{bottom:0,top:`unset`,position:`relative`,color:r.pagination.color?.rgba}})]})}var nt$1=class nt extends E$1{componentDidMount(){Z$2(()=>{this.setState(()=>({checked:this.props.item.selected.value}));});}render(){return m$1(`div`,{style:this.getCompiledStyles(),className:this.getClasses(`lc-checkbox`),children:m$1(`input`,{type:`checkbox`,checked:this.state.checked,onChange:this.onChange.bind(this),style:{appearance:`auto`}})})}onChange(e){let{checked:t}=e.target;this.props.item.selected.value=t;}getTypoStyles(){let e={},t=this.mediaStyle.typo??new B$3;return e.textAlign=t.alignment,e.justifyContent=t.alignment,e}getComponentStyles(){return s$3(r$2({},this.getTypoStyles()),{display:`flex`})}};var se=class extends E$1{constructor(e,t){super(e,t);}render(){let e=this.props.element[this.deviceTypeKey],t=e?.src||this.props.element.src||this.props.element.lg?.src;return m$1(`img`,{onClick:this.customOnClick.bind(this),alt:e?.name||`Image`,className:this.getClasses(`lc-image`),onMouseEnter:this.handleMouseEnter.bind(this),onMouseLeave:this.handleMouseLeave.bind(this),src:t,style:this.getCompiledStyles()})}customOnClick(e){this.props.element.clc?.at===pe$4.ADD_TO_CART&&this.props.triggerContext.triggerData.items[0]&&this.onClick(e,{item:this.props.triggerContext.triggerData.items[0]}),this.props.onClick&&this.props.onClick(`image`);}getComponentStyles(){let e=this.mediaStyle.lout;if(!e||e.pos!==`absolute`)return {};let t={zIndex:e.zIndex,cursor:this.props.element.clc?.at?`pointer`:`auto`};return this.mediaStyle.size?.w&&(t.width=this.mediaStyle.size.w),this.mediaStyle.size?.h&&(t.height=this.mediaStyle.size.h),t}handleMouseEnter(e){let t=this.props.element[this.deviceTypeKey]?.secondarySrc;t&&(e.currentTarget.src=t);}handleMouseLeave(e){e.currentTarget.src=this.props.element[this.deviceTypeKey]?.src;}};var ae=class extends E$1{render(){if(!(this.props.element.hide||!this.matchWhenCondition(this.props.element.when)))return m$1(`div`,{style:this.getCompiledStyles(),class:`lc-flexbox`,children:m$1(ue$1,{elements:this.props.elements,element:this.props.element,triggerContext:this.props.triggerContext})})}getComponentStyles(){let e=this.mediaStyle.flex??new Et$1,t={display:`flex`,gap:e.gap+`px`,flexWrap:e.wrap,flexDirection:e.dir,justifyContent:e.jc,alignItems:e.ai};return e.wrap===`nowrap`&&e.scroll&&(e.dir===`column`?t[`overflow-y`]=`auto`:t[`overflow-x`]=`auto`),t}};var ot$1=class ot extends ae{render(){if(!(this.props.element.hide||!this.matchWhenCondition(this.props.element.when)))return m$1(`div`,{style:this.getCompiledStyles(),class:`lc-flexbox`,children:m$1(qe,{elements:this.props.elements,element:this.props.element,triggerContext:this.props.triggerContext,item:this.props.item,noLinks:this.props.noLinks})})}};var it$1=class it extends E$1{render(){return m$1(`select`,{style:this.getCompiledStyles(),value:this.props.selectedVariant.selectedSellingPlan.value?.mID??``,onChange:this.onChange.bind(this),disabled:this.state.disabled,className:this.getClasses(`lc-dropdown`),children:this.createSelectItems()})}componentDidMount(){Z$2(()=>{this.setState(()=>({disabled:this.props.triggerContext.triggerData.isBundle()?!this.props.item.selected.value:false}));});}getComponentStyles(){let e={};return this.props.selectedVariant.sellingPlans?.length||(e.visibility=`hidden`),r$2(r$2({},e),yn(this.mediaStyle.typo))}createSelectItems(){let e=[],t=this.props.selectedVariant;if(!t.sellingPlans?.length)return [];this.props.triggerContext.triggerData.skipSubscribedItems?t.selectedSellingPlan.value||(t.sellingPlans[0].isSelected=true,t.changeSellingPlan(t.sellingPlans[0])):e.push(m$1(`option`,{value:``,selected:!t.selectedSellingPlan,children:`One time purchase`}));for(let n of t.sellingPlans??[])e.push(m$1(`option`,{value:n.mID,selected:n.isSelected,children:n.name}));return e}onChange(e){let t=e.target.value;t?this.props.selectedVariant.selectedSellingPlan.value=this.props.selectedVariant.sellingPlans.find(n=>n.mID===t):this.props.selectedVariant.selectedSellingPlan.value=void 0;}};var fi$1=new RegExp(`fill="#[a-zA-Z0-9]+"`),st$1=class st extends E$1{constructor(){super();}render(){let e=this.getCompiledStyles(),t=this.getRating();return t||(e.display=`none`,t=``),m$1(`div`,{style:e,className:this.getClasses(`lc-star-rating`),dangerouslySetInnerHTML:{__html:t}})}getRating(){let e={size:this.props.element.iconSize,color:this.props.element.c.hex},t=qe$1(this.props.element.fullStar,{svg:e},this.props.triggerContext),n=qe$1(this.props.element.halfStart,{svg:e},this.props.triggerContext),o=this.props.review;if(!o?.rating)return ``;let i=``;if(this.props.element.showSingleStar)i=t;else {let s=5,c=`${o.rating}`.split(`.`);for(let p=0;p<+c[0];p++)i+=t,s--;c[1]&&(i+=n,s--);for(let p=0;p<s;p++)i+=t.replace(fi$1,`fill="#f1f1f1"`);}return i}getComponentStyles(){return {display:`flex`,alignItems:`center`}}};var at$1=class at extends E$1{render(){return m$1(`select`,{style:this.getCompiledStyles(),value:this.props.item.selectedOrFirstVariant.value.mID,onChange:this.onChange.bind(this),disabled:this.state.disabled,className:this.getClasses(`lc-dropdown`),children:this.createSelectItems()})}componentDidMount(){Z$2(()=>{this.setState(()=>({disabled:this.props.triggerContext.triggerData.isBundle()?!this.props.item.selected.value:false}));});}getComponentStyles(){let e={};return this.props.item.vars?.length===1&&this.props.item.vars[0].name===`Default Title`&&(e.visibility=`hidden`),r$2(r$2({},e),yn(this.mediaStyle.typo))}createSelectItems(){let e=[];for(let t of this.props.item.vars)e.push(m$1(`option`,{value:t.mID,disabled:!t.isAvailable,children:t.name}));return e}onChange(e){let t=e.target.value,n=this.props.item.vars.find(o=>o.mID===t);this.props.item.setSelectedVariant(n);}};var Hd=()=>{let r=window.ShopifyAnalytics?.meta??{},e=r.selectedVariantId;if(e)return e;if(r.product?.variants?.length>0)return r.product.variants[0].id},Mr=r=>{if(!r)return;let e;try{e=new URL(r);}catch{return}if(e.hostname!==`cdn.shopify.com`)return r;let t=e.pathname.split(`.`);return t.length!==2?r:(e.pathname=t[0]+`_large.`+t[1],e.toString())};var qe=class extends E$1{constructor(e,t){super(e,t),this.setState(()=>({decoration:`unset`}));}renderElement(e){if(!(e.hide||!this.matchWhenCondition(e.when))){if(e.t===4){let t=e;return t.l===`Star Rating`&&!this.props.item.reviews?.rating?void 0:m$1(ot$1,{element:t,triggerContext:this.props.triggerContext,elements:t.elems,item:this.props.item,noLinks:this.props.noLinks})}if(e.t===6)return this.props.triggerContext.triggerData.isBundle()?m$1(nt$1,{element:e,item:this.props.item,triggerContext:this.props.triggerContext}):void 0;if(e.t===13){let t=e,n=this.props.item,o=Mr(n.variantImage??n.firstImageURL),i=Mr(n.variantSecondaryImage??n.secondaryImageURL);t.lg=t.sm={src:o,name:n.name,secondarySrc:i};let s=m$1(se,{element:t,onClick:this.customOnClick.bind(this),triggerContext:this.props.triggerContext});return this.props.noLinks?s:m$1(`a`,{href:this.props.item.selectedOrFirstVariant.value.link,style:{display:`block`},children:s})}if(e.t===14)return this.renderProductTitle(e);if(e.t===15){let t=e;return this.props.triggerContext.triggerData.isCartEmbed()&&this.props.item.vars?.length===1&&this.props.item.vars[0].name===`Default Title`?void 0:t.type!==`SINGLE`?m$1(`cooee-product-options-picker`,{item:this.props.item,styles:t.style,horizontal:t.horizontal,dropdownType:t.type}):m$1(at$1,{element:t,item:this.props.item,triggerContext:this.props.triggerContext})}return e.t===16?m$1(it$1,{element:e,selectedVariant:this.props.item.selectedOrFirstVariant.value,item:this.props.item,triggerContext:this.props.triggerContext}):e.t===19?m$1(st$1,{element:e,triggerContext:this.props.triggerContext,review:this.props.item.reviews}):e.t===18||e.t===3?m$1(be$1,{element:e,item:this.props.item,triggerContext:this.props.triggerContext}):m$1(ue$1,{elements:[e],element:this.props.element,triggerContext:this.props.triggerContext})}}render(){return this.attachListener(),this.props.elements.map(e=>this.renderElement(e))}getComponentStyles(){return {}}renderProductTitle(e){let t=m$1(B$2,{element:e,onClick:this.customOnClick.bind(this),triggerContext:this.props.triggerContext});return this.props.noLinks?t:m$1(`a`,{href:this.props.item.selectedOrFirstVariant.value.link,style:{display:`block`,textDecoration:this.state.decoration},onMouseEnter:this.onMouseEnter.bind(this),onMouseLeave:this.onMouseLeave.bind(this),children:t})}customOnClick(e){this.sendTriggerClicked([this.props.item.toEmbed()],{from:e});}onMouseEnter(){this.setState(()=>({decoration:`underline`}));}onMouseLeave(){this.setState(()=>({decoration:`unset`}));}attachListener(){document.addEventListener(`letscooee:variant-change`,e=>{let t=e;if(!t.detail||this.props.item.mID!==t.detail.productID)return;let n=t.detail.variantID;this.props.item.setSelectedVariantByID(n);});}};var Se=class extends E$1{productElement;constructor(e,t){super(e,t),this.setState(()=>({decoration:`unset`}));}render(){if(this.productElement=new de$1(Ve$3(this.props.element,this.getProductData(),this.props.triggerContext)),!(this.productElement.hide||!this.matchWhenCondition(this.productElement.when)))return m$1(`div`,{style:r$2({},this.getCompiledStyles()),className:this.getClasses(`lc-single-product`),children:m$1(qe,{element:this.productElement,elements:this.productElement.elems,triggerContext:this.props.triggerContext,item:this.props.item,noLinks:this.productElement.noLinks})})}getComponentStyles(){return {flexShrink:0}}getProductData(){if(!this.props.item)return {};let e=this.props.item,t=e.selectedOrFirstVariant.value,n=e.getTemplateVariables();n.product.quantity=this.props.triggerContext.hasManipulatedProductQuantity()?this.props.triggerContext.getManipulatedQuantity(this.props.item.quantity):this.props.item.quantity;let o=this.props.triggerContext.triggerData.discount?.type===H$1.BXGY;return !t.hasEffectivePrice()&&o&&(n.product=s$3(r$2(r$2({},n.product),Cn(`effective_price`,t.effectivePrice.value)),{price:``})),n.variant.quantity=this.props.triggerContext.hasManipulatedProductQuantity()?this.props.triggerContext.getManipulatedQuantity(t.quantity):t.quantity,{product:n.product,variant:n.variant,svg:{color:`{{ svg.color }}`,size:`{{ svg.size }}`}}}};var ct$1=class ct extends E$1{swiperRef=null;swiperInstance=null;configuration;gap;constructor(e,t){super(e,t),this.configuration=M$3()?this.props.element.conf.sm:this.props.element.conf.lg,this.gap=(this.configuration.gap??15)+`px`;}componentDidMount(){this.props.element.conf[this.deviceTypeKey].disp===2&&Hi$2().then(()=>{this.swiperInstance=ir$1(this.swiperRef,this.props.element.conf[this.deviceTypeKey]);});}componentWillUnmount(){this.swiperInstance&&this.swiperInstance.destroy();}render(){let e=this.props.triggerContext.triggerData.items;e.splice(this.configuration.maxItems??10);let t;if(this.configuration.disp===2){let n=i=>{this.swiperRef=i;},o=()=>e?.map(i=>m$1(`div`,{class:`swiper-slide`,children:this.getProductFragment(i)}));t=m$1(`div`,{style:s$3(r$2({},this.getCompiledStyles()),{display:`block`}),className:this.getClasses(`lc-product-swiper-list`),children:sr$1(this.configuration,n,o)});}else t=m$1(`div`,{style:this.getCompiledStyles(),className:this.getClasses(`lc-product-list`),children:e?.map((n,o)=>this.getProductFragment(n,o!==e.length-1))});return t}getComponentStyles(){let e=[0,2].includes(this.configuration.disp),t={display:e?`flex`:`grid`,justifyContent:`safe `+(this.mediaStyle.flex?.jc??`center`),gap:this.gap,flexDirection:this.mediaStyle.flex?.dir??`row`};if(t.flexDirection===`row`){if(e)t.maxWidth=`100%`,t.overflowY=`auto`;else if(this.configuration.disp===1){let n=this.props.triggerContext.triggerData,o=n.items.length,i;n.isBundle()?i=this.props.element.prod.symbol?.hide!==true?o*2-1:o:i=this.props.element.conf[this.deviceTypeKey].maxInRow,t.gridTemplateColumns=`repeat(${i}, auto)`;}}return t}getProductFragment(e,t=false){return m$1(ut$3,{children:[m$1(Se,{element:this.props.element.prod,item:e,triggerContext:this.props.triggerContext}),this.props.triggerContext.triggerData.isBundle()&&t&&this.props.element.prod.symbol&&!this.props.element.prod.symbol.hide&&m$1(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`center`},children:m$1(B$2,{element:this.props.element.prod.symbol,triggerContext:this.props.triggerContext})})]},e.mID)}};var mt$1=class mt extends E$1{swiperRef=null;swiperInstance=null;constructor(e,t){super(e,t);}componentDidMount(){Hi$2().then(()=>{this.swiperInstance=ir$1(this.swiperRef,this.props.element.conf);});}componentWillUnmount(){this.swiperInstance&&this.swiperInstance.destroy();}render(){let e=this.props.element,t=o=>{this.swiperRef=o;},n=()=>{let o=e.values?.map(c=>m$1(`div`,{class:`swiper-slide`,onClick:p=>this.onClick(p,{clickAction:this.getClickAction(c)}),children:this.renderElement(c)}));if(!o?.length)return [];let i=e.conf,s=o.length;if(i.marquee&&s<=Number(i.maxInRow)){let c=Number(i.maxInRow)-s+1;for(let p=0;p<c;p++)o.push(o[p%s]);}return o};return sr$1(e.conf,t,n)}getComponentStyles(){return {}}renderElement(e){let t=this.valueAddedSlide(this.props.element.slide,e);switch(t?.t){case 1:return m$1(se,{element:t,triggerContext:this.props.triggerContext});case 4:return m$1(ae,{elements:t.elems,element:t,triggerContext:this.props.triggerContext});default:Y$2.warn(`Unknown slide type for carousal`);}}valueAddedSlide(e,t){let n=Ve$3(e,{form:t},this.props.triggerContext);return F.getParsedElement(n)}getClickAction(e){return Ve$3(this.props.element.clc??{},{form:e},this.props.triggerContext)}};var ue$1=class ue extends E$1{constructor(e,t){super(e,t),this.setState(()=>({decoration:`unset`})),Z$2(()=>{this.setState(()=>({showButton:!this.props.triggerContext.triggerData.isBundle()||!!this.props.triggerContext.selectedItems.length}));});}renderElement(e){if(!e.hide){if(e.t===4){let t=e;return m$1(ae,{element:t,triggerContext:this.props.triggerContext,elements:t.elems})}if(e.t===61)return m$1(rt$1,{element:e,triggerContext:this.props.triggerContext});if(e.t===3)return this.state.showButton?m$1(be$1,{element:e,triggerContext:this.props.triggerContext}):void 0;if(e.t===2)return m$1(B$2,{element:e,triggerContext:this.props.triggerContext});if(e.t===1)return m$1(se,{element:e,triggerContext:this.props.triggerContext});if(e.t===11)return m$1(ct$1,{element:e,triggerContext:this.props.triggerContext});if(e.t===12)return m$1(Se,{element:e,item:this.props.triggerContext.triggerData.items[0],triggerContext:this.props.triggerContext});if(e.t===62)return m$1(mt$1,{element:e,triggerContext:this.props.triggerContext})}}render(){return this.props.elements.map(e=>this.renderElement(e))}getComponentStyles(){return {}}};var lt$1=class lt extends E$1{clickAction;isClickable;constructor(e,t){super(e,t),this.clickAction=this.props.element.clc,this.isClickable=this.clickAction?.at===pe$4.GO_TO_URL&&!!Sn$1(this.clickAction.gu?.u)||this.clickAction?.at===pe$4.OPEN_CART||this.clickAction?.at===pe$4.INITIATE_CHECKOUT;}componentDidMount(){Z$2(()=>{let e=this.props.triggerContext.triggerData,t=this.props.triggerContext.selectedItems;e.calculateDiscountData(t,this.props.triggerContext.shouldGiveFBTDiscount);});}render(){return m$1(ut$3,{children:[m$1(`div`,{style:this.getCompiledStyles(),className:this.getClasses(`lc-container`),onClick:e=>{this.onClick(e,{clickAction:this.clickAction});},children:m$1(ue$1,{elements:this.props.elements,element:this.props.element,triggerContext:this.props.triggerContext})}),this.props.triggerContext.triggerData.id===`preview`&&m$1(`div`,{class:`letscooee-preview-badge`,children:[`#`,this.props.triggerContext.triggerData.shortID,` preview`]})]})}getComponentStyles(){let e={position:`relative`,overflow:`hidden`,display:`block`};return this.isClickable&&(e.cursor=`pointer`),e}};var N$2=class r$9{constructor(e){this.engagementTrigger=e;this.triggerContext=new Ne$1(new Date,this.engagementTrigger);}static engagementIDsWithTrackedDisplay=new Set;static DEBOUNCE_TIME=1e3;rootContainer;widgetElement;triggerContext;observers=[];renderedCount=0;scrollSubscription;isExclusionWithBVariation;isProcessing=false;lockReleased$=new U;renderSilently(){this.acquireProcessingLock()||this.render().finally(()=>this.releaseProcessingLock()).catch(e=>{ke(e,`render-widget`,{triggerContext:this.triggerContext});});}destroy(){Y$2.verbose(`${this.engagementTrigger} will be destroyed`),this.preDestroy(),this.removeFromRendered(),this.rootContainer?.remove(),r$9.engagementIDsWithTrackedDisplay.delete(this.engagementTrigger.shortID),Mi$1(this.engagementTrigger.content?.afterDeleteJS);}matches(e){return this.engagementTrigger.shortID===e.shortID}async render(){if(this.engagementTrigger.shouldGetVariationImmediately()){let e=await this.getVariation();this.handleVariationResponse(e);}if(this.rootContainer=await this.getWidgetContainer(true),!this.rootContainer){Y$2.warn(`${this.engagementTrigger} no section found to render the widget`);return}this.afterRootContainerCreated(),await this.getVariationIfRequired(),await this.runChoresBeforeRender(),this.attachScroll(),this.checkAndSendEvent(),this.triggerContext.renderer=this,Mi$1(this.engagementTrigger.content?.afterRenderJS);}async updateAndReRender(e){await this.waitForLockRelease(),this.acquireProcessingLock();try{this.updateItems(e.items,this.engagementTrigger.items),await this.update(e),await this.render();}finally{this.releaseProcessingLock();}}async update(e){this.engagementTrigger.variation=e.variation;}async rerenderIfDeleted(){if(!this.rootContainer?.isConnected&&!this.acquireProcessingLock()){Y$2.info(`${this.engagementTrigger} deleted. Will be re-rendered`);try{this.preDestroy(),await this.render();}finally{this.releaseProcessingLock();}}}updateAngularWidget(){return this.widgetElement?.isConnected?(this.widgetElement.update(),true):false}preDestroy(){this.scrollSubscription?.unsubscribe(),this.observers.forEach(e=>{e?.disconnect&&e.disconnect();});}acquireProcessingLock(){return this.isProcessing?(Y$2.verbose(`Lock could not be acquired for ${this.engagementTrigger}`),true):(Y$2.verbose(`Acquiring rendering lock for ${this.engagementTrigger}`),this.isProcessing=true,false)}releaseProcessingLock(){Y$2.verbose(`Releasing rendering lock for ${this.engagementTrigger}`),this.isProcessing=false,this.lockReleased$.next();}async waitForLockRelease(){this.isProcessing&&await le$2(this.lockReleased$);}afterRootContainerCreated(){}isAllOkToRender(){return !!this.engagementTrigger.widget}async getVariationIfRequired(){if(this.engagementTrigger.shouldSkipVariation()){Y$2.verbose(`${this.engagementTrigger} already has necessary data to render`);return}let e=await this.observeWidgetContainerInViewport();this.handleVariationResponse(e);}handleVariationResponse(e){if(!e)return;let t=this.engagementTrigger;Y$2.log(`${t} visitor has been assigned to variation ${e.variation}`),e.items?.length&&(t.items=e.items.map(n=>new mt$3(n)),t.nonMutableItems=e.items.map(n=>new mt$3(n))),e.bundleFrom&&(t.bundleFrom=new mt$3(e.bundleFrom)),e.discount&&(t.discount=e.discount),e.placement&&(t.placement=e.placement),pe$5.hasKeys(e.stickyATCConfig)&&(t.stickyATCConfig=e.stickyATCConfig),e.props&&pe$5.hasKeys(e.props)&&(t.props=r$2(r$2({},t.props),e.props)),e.content&&(t.content=new Qe$1(e.content)),t.widget=new Ve$1(e.widget),t.contentID=e.contentID,t.variation=e.variation,t.placement=e.placement,t.manipulation=e.manipulation,t.entryAnimation=e.entryAnimation??`NONE`,this.isExclusionWithBVariation=t.isExclusionTesting()&&t.variation===`b`,this.isExclusionWithBVariation&&(this.rootContainer.style.height=`0.5px`);}addToRendered(){this.renderedCount++,Y$2.info(`${this.engagementTrigger} rendered \u2705 ${Pn(this.renderedCount)} time`);}removeFromRendered(){this instanceof G$1?Ie.delete(this):Ge.delete(this);}async getVariation(){Y$2.log(`${this.engagementTrigger} get variation`);let e={engagementID:this.engagementTrigger.engagementID,isPreview:this.engagementTrigger.id===`preview`};try{return (await co(e)).data}catch(t){if(t instanceof ne$2&&t.response?.status===400)return;ke(t,`get-variation`,{engagementTrigger:this.engagementTrigger});return}}async observeWidgetContainerInViewport(){if(!this.rootContainer){Y$2.warn(`${this.engagementTrigger} No root container found to watch for viewport`);return}let e=window.innerHeight*.3,t={root:null,rootMargin:`${e}px 0px ${e}px 0px`,threshold:0};return this.isInViewport()?this.getVariation():new Promise(n=>{let o=new IntersectionObserver((i,s)=>{i.forEach(async c=>{if(c.isIntersecting){Y$2.log(`${this.engagementTrigger} root container is near the viewport. Fetching variation`);n(await this.getVariation()),s.unobserve(this.rootContainer);}});},t);o.observe(this.rootContainer),this.observers.push(o);})}attachScroll(){this.scrollSubscription=Tr$1(window,`scroll`).pipe(Fe$2(r$9.DEBOUNCE_TIME)).subscribe(()=>{this.checkAndSendEvent();});}checkAndSendEvent(){let e=this.engagementTrigger.shortID;if(r$9.engagementIDsWithTrackedDisplay.has(e)||!this.isInViewport())return;let n={};this.triggerContext.triggerData.items?.length&&(n.promotedMIDs=this.engagementTrigger.items?.map(s=>s.mID));let i=new Ir$1(this.isExclusionWithBVariation?`CE Campaign Holdout`:`CE Trigger Displayed`,n,this.engagementTrigger);i.name===`CE Campaign Holdout`&&(i.trigger.holdout=true),X$1(i),r$9.engagementIDsWithTrackedDisplay.add(e),this.scrollSubscription.unsubscribe();}generateParentElementID(){return `letscooee-${this.engagementTrigger.shortID}`}createAngularWidget(e){let t=this.widgetElement=document.createElement(e);return t.cart=h.getCurrent(),t.triggerContext=this.triggerContext,t.engagementTrigger=this.engagementTrigger,t.setAttribute(`engagement`,this.engagementTrigger.shortID),this.rootContainer.appendChild(t),this.addToRendered(),this.injectOuterCSSOnly(),t}getParentElement(e,t=document){let n=t.getElementById(e);if(n)return n;let o=this.engagementTrigger.objective.toLowerCase().replaceAll(`_`,`-`),i=this.engagementTrigger.shortID;n=document.createElement(`div`),n.id=e;let s=`letscooee letscooee-engagement engagement-${i} lc-${o}`;return this.engagementTrigger.content?.classes&&(s+=` ${this.engagementTrigger.content.classes}`),n.className=s,n.dataset.engagementId=i,this.engagementTrigger.id===`preview`&&(n.className+=` letscooee-preview`),n.style.display=`block`,n.style.minHeight=`0.5px`,n.style.minWidth=`0.5px`,n}async startRendering(){let e=this.rootContainer,t=this.triggerContext.triggerData.hasSwiperElement();t&&(e=this.rootContainer?.shadowRoot||this.rootContainer?.attachShadow({mode:`open`}),ki$2(e)),this.injectCampaignCSS(t,e);let n=this.engagementTrigger.widget;Ke(Yr$2(lt$1,{element:n.cont,triggerContext:this.triggerContext,elements:n.elems}),e),this.addToRendered();}injectCampaignCSS(e,t){let n=this.engagementTrigger.content?.outerCSS?.trim()??``,o=this.engagementTrigger.content?.innerCSS?.trim()??``;if(!n&&!o)return;let i=this.rootContainer.id;if(e){le$4(o,t),this.injectOuterCSSOnly();return}le$4(`#${i} { ${n+`
84
- ${o}`} }`);}injectOuterCSSOnly(){let e=this.engagementTrigger.content?.outerCSS?.trim();if(!e)return;let t=this.rootContainer.id;le$4(`#${t} { ${e} }`);}isInViewport(){let e=this.rootContainer?.getBoundingClientRect();if(!e)return false;let t=window.innerHeight||document.documentElement.clientHeight,s=(Math.min(e.bottom,t)-Math.max(e.top,0))*e.width/(e.width*e.height)*100;return this.engagementTrigger.isAnySplit()?s>0:s>=30}async getWidgetContainer(e){if(this.rootContainer?.isConnected)return this.rootContainer;let t=await this.createParentElementWithPlacement(e);if(t)return t;let n=`.letscooee[data-engagement-id="${this.triggerContext.triggerData.shortID}"]`;return document.querySelector(n)}async createParentElementWithPlacement(e){let t=this.engagementTrigger.placement;if(!t?.selector)return Y$2.info(`\u26A0\uFE0F${this.engagementTrigger} does not have a selector`),null;let n=t.selector,o;if(n.includes(`:shadow`)){let p=n.split(`:shadow`);o=(await Nn$3(p[0].trim()))?.shadowRoot,n=p[1].trim(),o&&ki$2(o,false);}Y$2.verbose(`${this.engagementTrigger} attempt to render "${t.position}" "${n}"`);let i=await Nn$3(n,3,o??document);if(!i)return Y$2.warn(`${this.engagementTrigger} no placement found with ${n}`),null;let s=this.generateParentElementID(),c=this.getParentElement(s);if(!e)return c;switch(t.position){case ae$3.BEFORE1:case ae$3.BEFORE:i.parentElement?.insertBefore(c,i);break;case ae$3.INSIDE_FIRST1:case ae$3.INSIDE_FIRST:i.insertBefore(c,i.firstChild);break;case ae$3.INSIDE_LAST1:case ae$3.INSIDE_LAST:i.appendChild(c);break;case ae$3.AFTER1:case ae$3.AFTER:default:i.parentElement?.insertBefore(c,i.nextSibling);}return c}async runChoresBeforeRender(){if(this.isExclusionWithBVariation)return;if(!this.isAllOkToRender()){Y$2.info(`\u26A0\uFE0F ${this.engagementTrigger} could not be rendered`);return}Y$2.verbose(`${this.engagementTrigger} will be rendered`);let e;try{e=await tr$1(this.engagementTrigger);}catch(t){Y$2.info(`\u203C\uFE0F${this.engagementTrigger} could not render as items failed to refresh`,t);return}if(!this.engagementTrigger.isCollectionPromoted()&&!e?.length&&this.engagementTrigger.isProductPromoted()){Y$2.info(`\u203C\uFE0F${this.engagementTrigger} could not render as no products promoted`);return}this.engagementTrigger.items=e,await this.startRendering();}updateItems(e,t){let n=this.getItemDiff(e,t),o=this.getItemDiff(t,e);t.push(...n);for(let i of o)oe$1.remove(t,i);}getItemDiff(e,t){return e.filter(n=>!t.some(o=>o.selectedOrFirstVariant.value.mID===n.selectedOrFirstVariant.value.mID))}};var G$1=class G extends N$2{constructor(e){super(e);}rerenderAfterCartOpened(){this.rerenderIfDeleted(),this.checkAndSendEvent();}observeWidgetContainerInViewport(){return this.getVariation()}generateParentElementID(){let e=super.generateParentElementID();return this.engagementTrigger.isSubscriptionUpsell()&&(e+=`-${this.engagementTrigger.items[0].selectedOrFirstVariant.value.mID}`),e}checkAndSendEvent(){if(!P.get().isOpen()&&Be$3().pageName!==`cart`){Y$2.log(`Do not send display event as neither the cart drawer nor the cart page is open.`);return}return super.checkAndSendEvent()}};var ar$1=class r{constructor(e,t){this.engagementTrigger=e;this.element=t;this.cartItems=h.getCurrent().items;}cartItems;static renderCartUpsell(e){let t=e.placement;if(!t?.selector){Y$2.warn(`No placement available for ${e.objective}`,e.shortID);return}let n=Array.from(document.querySelectorAll(t.selector));if(!n?.length){Y$2.warn(`No placement found for ${e.objective}`,e.shortID);return}for(let o of n)new r(e,o).render();}render(){let e=this.findCartItemFromHTMLElement();if(!e||this.engagementTrigger.skipSubscribedItems&&e.selling_plan_allocation)return;let t=this.engagementTrigger.items.find(d=>d.mID===e.product_id.toString());if(!t)return;let n=t.vars.find(d=>d.mID===e.id.toString());if(!n)return;let o=new dt$2(n),i=e.selling_plan_allocation?.selling_plan;if(i)for(let d of o.sellingPlans??[])d.mID===i.id.toString()&&(d.isSelected=true,o.changeSellingPlan(d));let s=new mt$3(t);s.vars=[o],s.selectedOrFirstVariant.value=o;let c=`lc-cart-item-${this.engagementTrigger.shortID}-${t.mID}`;this.element.classList.add(c);let p=new q$1(this.engagementTrigger);p.placement.selector=`.${c}`,p.items=[s];let u=new G$1(p);u.renderSilently(),this.watchForCartItemDeletion(u,c);}watchForCartItemDeletion(e,t){let n=new MutationObserver(o=>{o.forEach(i=>{i.removedNodes.forEach(s=>{s===this.element&&(Y$2.verbose(`${t} has been removed`),e.destroy(),n.disconnect());});});});n.observe(this.element.parentElement,{childList:true,subtree:true});}findCartItemFromHTMLElement(){let e=this.element.innerHTML;return this.cartItems.find(t=>{if(!(e.includes(t.url)||e.includes(t.variant_id))&&(!e.includes(t.product_title)||t.variant_title&&!e.includes(t.variant_title)))return false;let n=t.selling_plan_allocation?.selling_plan?.name;return !(n&&!e.includes(n))})}};var cr$1=class cr extends N$2{constructor(e){super(e);}isAllOkToRender(){return true}async startRendering(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget(`cooee-collection-filter`);}};var mr$1=class mr extends G$1{constructor(e){super(e);}async update(e){await super.update(e),this.engagementTrigger.progressBarConfig.update(e.progressBarConfig),await this.checkMilestoneTryCatch(),this.updateAngularWidget();}isAllOkToRender(){return !!this.engagementTrigger.progressBarConfig}async startRendering(){if(this.updateAngularWidget()){this.addToRendered();return}this.createAngularWidget(`cooee-progressbar`),await this.checkMilestoneTryCatch();}async checkMilestoneTryCatch(){try{await this.checkMilestone();}catch(e){ke(e,`apply-milestones`,{engagementTrigger:this.engagementTrigger});}}async checkMilestone(){let e=await h.getCurrent().getNormalisedCart(true),t=this.engagementTrigger.progressBarConfig,n=[],o=[],i=[],s,c,p=[...t.milestones];for(let u of p){if(u.rewardType!==ge$4.FREE_AUTO_GIFT)continue;if(u.isUIOnly&&!u.allowATC){Y$2.verbose(`Skipping milestone ${u.label} as it is UI only and does not allow ATC`);continue}let d=u.items[0],y=u.reached,I=e.items.find(g=>(g.vID===d.vID||g.mID===d.mID)&&g.properties._letscooee_campaign===this.engagementTrigger.shortID);y&&(s=u,c=I),I&&n.push(I),!y&&I&&t.removeIneligibleItem?(Y$2.verbose(`Removing free gift ${I.vID} from cart`),i.push(I)):y&&!I&&(Y$2.verbose(`Adding free gift ${d.vID} to cart`),o.push(d));}t.restrictToLatestFreebie&&s&&(c?(n=n.filter(u=>u.vID!==c.vID),o=[]):o=[s.items[0]],i.push(...n)),t.treatFreebieAsSeparateLineItem?await this.handleSeparateFreebieLineItems(o,i):await this.handleCombinedCartUpdate(o,i);}async handleSeparateFreebieLineItems(e,t){if(!t.length&&!e.length)return;let n=new $e,o=[];if(e.length){let c=this.addFreebiesOperation(e,n);o.push(c);}if(t.length){let c=this.removeFreebiesOperation(t);o.push(c);}if(!o.length)return;let i;try{i=await Promise.all(o),Y$2.log(`All freebie and coupon operations completed`);}catch(c){ke(c,`parallel-freebie-operations`,{engagementTrigger:this.engagementTrigger});}let s;e.length&&i?.length&&(s=i[0]),P.get().refreshUI(s,false);}async removeFreebiesOperation(e){let t={updates:{}};return e.forEach(n=>t.updates[n.key??n.vID]=n.quantity-1),Nr(t,this.engagementTrigger)}async addFreebiesOperation(e,t){return t.addToCart(e,this.engagementTrigger)}async handleCombinedCartUpdate(e,t){let n=this.engagementTrigger.progressBarConfig,o={},i={};t.length&&t.forEach(y=>i[y.key??y.vID]=0),e.length&&e.forEach(y=>i[y.vID]=1);let s=n.coupons,c=[];if(s?.length){c=s.map(g=>g.couponCode);let y=h.getCurrent().discount_codes?.map(g=>g.code)??[];c.every(g=>y.some(v=>v===g))||(o.discount=c.join(`,`));}if(pe$5.hasKeys(i)&&(o.updates=i),!pe$5.hasKeys(o))return;let p=await Nr(o,this.engagementTrigger),u=p?.items,d=[];for(let y of e){let I=u?.find(g=>c?.length?g.id+``===y.vID&&g.discounts?.some(v=>c.includes(v.title)):g.id+``===y.vID);I&&d.push(I);}if(!d.length){P.get().refreshUI(p,false);return}try{await Promise.all(d.map(y=>so(y,{properties:this.engagementTrigger.getPrivateAttributesForLineItem()})));}catch(y){ke(y,`add-private-attribute`,{engagementTrigger:this.engagementTrigger,extra:{productAddedByCooee:d}});}finally{P.get().refreshUI(p,false);}}};var pt$1=class pt extends G$1{constructor(e){super(e);}async update(e){await super.update(e),this.engagementTrigger.content.update(e.content),this.updateAngularWidget();}isAllOkToRender(){return !!this.engagementTrigger.content}async startRendering(){if(this.updateAngularWidget()){this.addToRendered();return}this.createAngularWidget(`cooee-savings-bar`);}};var lr$1=class lr extends N$2{constructor(e){super(e);}isAllOkToRender(){return !!this.engagementTrigger.content?.videoConfig}async startRendering(){if(this.widgetElement?.isConnected){this.addToRendered();return}let e,t=this.engagementTrigger.content.videoConfig;t.template===`FLOATING_POPUP`?e=`cooee-video-popup`:t.template===`STORY`?e=`cooee-video-stories`:e=`cooee-video-playlist`,this.createAngularWidget(e);}};var pr$1=class pr extends N$2{constructor(e){super(e);}isAllOkToRender(){return true}async startRendering(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget(`cooee-sticky-atc`);}};var dr$1=class dr extends N$2{constructor(e){super(e);}isAllOkToRender(){return true}async startRendering(){let e=this.getParentElement(`inner-letscooee-${this.engagementTrigger.shortID}`);this.rootContainer.appendChild(e),document.addEventListener(`letscooee:inbound:cta:add-bundle`,this.inboundCTAListener.bind(this),false);}async inboundCTAListener(e){let t=this.engagementTrigger,n=`Engagement(id: ${t.engagementID}, shortID: ${t.shortID})`,o=e.detail;if(!pe$5.hasKeys(o)){Y$2.error(`No detail received for ${n}`);return}Y$2.log(`Detail received for BYOB`,o);let i=o.campaignID??o.campaignId??o.campaign_id;if(i!==t.shortID&&i!==t.engagementID){Y$2.warn(`Current ${n} is not BYOB. Received: ${i}`);return}let s=o.items;if(!s?.length)return;let c=s.map(p=>new at$2({mID:p.product_id,vID:p.variant_id,quantity:p.quantity||1}));await new He$1(this.triggerContext).execute({embeddedItems:c,clickAction:{at:pe$4.ADD_BUNDLE,applyDiscount:true}});}};var Fr=false,Br=false,gr=null,ur$1=null,mo=false,Ie=new Set,Ge=new Set;function lo(){mo||(mo=true,ht$3(()=>{$n(document.body,{childList:true,subtree:true},500,Wn).subscribe(()=>{Ge.forEach(r=>r.rerenderIfDeleted()),Ie.forEach(r=>r.rerenderIfDeleted());});}));}function dt$1(r){if(r.length>0&&uo(),lo(),Fr){Y$2.verbose(`Cart widget processing in progress, queuing latest triggers`),gr=r;return}Fr=true;try{hi$1(r);}finally{if(Fr=false,gr){let e=gr;gr=null,Y$2.verbose(`Processing queued cart triggers`),dt$1(e);}}}function gt$1(r){if(r.length>0&&uo(),lo(),Br){Y$2.verbose(`Page widget processing in progress, queuing latest triggers`),ur$1=r;return}Br=true;try{Ci$1(r);}finally{if(Br=false,ur$1){let e=ur$1;ur$1=null,Y$2.verbose(`Processing queued page triggers`),gt$1(e);}}}function Kf(){Ie.forEach(r=>r.rerenderAfterCartOpened());}function hi$1(r){go(Ie,r);for(let e of r){Y$2.info(`${e} received as cart embed`);let t=po(Ie,e);if(t&&!e.isSubscriptionUpsell()){t.updateAndReRender(e).catch(o=>{ke(o,`update-and-re-render`,{engagementTrigger:e});});continue}Y$2.verbose(`${e} is new`);let n;if(e.isProgressBar())n=new mr$1(e);else if(e.isSubscriptionUpsell()){ar$1.renderCartUpsell(e);continue}else e.isSavingsBar()?n=new pt$1(e):n=new G$1(e);Ie.add(n),n.renderSilently();}}function Ci$1(r){go(Ge,r);for(let e of r){Y$2.info(`${e} received as page embed`);let t=po(Ge,e);if(t){t.updateAndReRender(e).catch(o=>{ke(o,`update-and-re-render`,{engagementTrigger:e});});continue}Y$2.verbose(`${e} is new`);let n;e.isShoppableVideo()?n=new lr$1(e):e.isBYOB()?n=new dr$1(e):e.isStickyATC()?n=new pr$1(e):e.isSavingsBar()?n=new pt$1(e):e.isCollectionFilter()?n=new cr$1(e):n=new N$2(e),Ge.add(n),n.renderSilently();}}function po(r,e){for(let t of r)if(t.matches(e))return t}function go(r,e){let t=new Set(e.map(n=>n.shortID));for(let n of r)t.has(n.engagementTrigger.shortID)||n.destroy();}function uo(){import('./widgets-YcHQyo19-COQy2ham.js').then(function (n) { return n.ad; }).then(({loadAngularWidgets:r})=>{r();});}var ho=new U,fo=0;ho.pipe(Fe$2(50)).subscribe(async r=>{yi$1(await et$1()).catch(t=>{ke(t,`load-page-widgets`,{extra:{firstLoad:r}});});});function Co(r=false){le$2(J$1).then(()=>{ho.next(r);});}async function co(r){let e=await et$1();return Object.assign(r,e),ie$1(`/v1/engagement/get-variant`,r)}async function yi$1(r$10){fo++,fo===1?Y$2.info(`Fetch widgets (after ⏰`,en()+` of SDK load)`):Y$2.info(`Fetch widgets`);let e=r$2({},r$10);try{let t=await ie$1(`/v1/engagement/eligible`,e);if(Y$2.info(`Widgets fetched ${Jr$3(t.timeTakenMs)}`),t.data.pageWidgets?.length)gt$1(t.data.pageWidgets.map(o=>new q$1(o)));if(t.data.cartWidgets?.length)dt$1(t.data.cartWidgets.map(o=>new q$1(o)));}catch(t){Y$2.error(`Error sending widget getter`,t);}}var yo=x$3(dr$3()),fr$1=class r{static META_REQUIRED_FIELDS=[`ad_id`];static GOOGLE_REQUIRED_FIELDS=[`gad_source`,`gclid`];source;adID;campaignID;adName;campaignName;constructor(e){this.adID=e.adID,this.campaignID=e.campaignID,this.source=e.source;}static getAdParams(){let e;try{e=new yo.URLBuilder(location.href);}catch{return {}}let t={};if(this.META_REQUIRED_FIELDS.every(i=>Array.from(e.getParams().keys()).includes(i)))return t={source:`META`,adID:e.getQueryParam(`ad_id`)?.trim(),campaignID:e.getQueryParam(`campaign_id`)?.trim()},new r(t);if(this.GOOGLE_REQUIRED_FIELDS.every(i=>Array.from(e.getParams().keys()).includes(i)))return t={source:`GOOGLE`},new r(t)}};var Vr={d:(r,e)=>{for(var t in e)Vr.o(e,t)&&!Vr.o(r,t)&&Object.defineProperty(r,t,{enumerable:true,get:e[t]});},o:(r,e)=>Object.prototype.hasOwnProperty.call(r,e)},Wr={};Vr.d(Wr,{A:()=>vi$1,k:()=>$r});var ut$1=function(r,e,t,n){return new(t||(t=Promise))(function(o,i){function s(u){try{p(n.next(u));}catch(d){i(d);}}function c(u){try{p(n.throw(u));}catch(d){i(d);}}function p(u){var d;u.done?o(u.value):(d=u.value,d instanceof t?d:new t(function(y){y(d);})).then(s,c);}p((n=n.apply(r,[])).next());})},ft$1=function(r,e){var t,n,o,i,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:c(0),throw:c(1),return:c(2)},typeof Symbol==`function`&&(i[Symbol.iterator]=function(){return this}),i;function c(p){return function(u){return (function(d){if(t)throw new TypeError(`Generator is already executing.`);for(;i&&(i=0,d[0]&&(s=0)),s;)try{if(t=1,n&&(o=2&d[0]?n.return:d[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,d[1])).done)return o;switch(n=0,o&&(d=[2&d[0],o.value]),d[0]){case 0:case 1:o=d;break;case 4:return s.label++,{value:d[1],done:!1};case 5:s.label++,n=d[1],d=[0];continue;case 7:d=s.ops.pop(),s.trys.pop();continue;default:if(o=s.trys,!((o=o.length>0&&o[o.length-1])||d[0]!==6&&d[0]!==2)){s=0;continue}if(d[0]===3&&(!o||d[1]>o[0]&&d[1]<o[3])){s.label=d[1];break}if(d[0]===6&&s.label<o[1]){s.label=o[1],o=d;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(d);break}o[2]&&s.ops.pop(),s.trys.pop();continue}d=e.call(r,s);}catch(y){d=[6,y],n=0;}finally{t=o=0;}if(5&d[0])throw d[1];return {value:d[0]?d[1]:void 0,done:true}})([p,u])}}};function $r(){return ut$1(this,void 0,Promise,function(){return ft$1(this,function(r){switch(r.label){case 0:return [4,new Promise(function(e,t){var n=`Unknown`,o=false;function i(g){o||(o=true,e({isPrivate:g,browserName:n}));}function s(){var g=0,v=parseInt(`-1`);try{v.toFixed(v);}catch(b){g=b.message.length;}return g}function c(){return navigator.msSaveBlob!==void 0&&(function(g){try{return g===eval.toString().length}catch{return false}})(39)}function p(){var g;return ut$1(this,void 0,void 0,function(){var v,b;return ft$1(this,function(f){switch(f.label){case 0:return f.trys.push([0,2,,3]),[4,navigator.storage.getDirectory()];case 1:return f.sent(),i(false),[3,3];case 2:return v=f.sent(),b=v,v instanceof Error&&(b=(g=v.message)!==null&&g!==void 0?g:v),typeof b!=`string`?(i(false),[2]):(i(!!b.includes(`unknown transient reason`)),[3,3]);case 3:return [2]}})})}function u(){var g;return ut$1(this,void 0,Promise,function(){return ft$1(this,function(v){switch(v.label){case 0:return ((g=navigator.storage)===null||g===void 0?void 0:g.getDirectory)===void 0?[3,2]:[4,p()];case 1:return v.sent(),[3,3];case 2:navigator.maxTouchPoints!==void 0?(function(){var b=String(Math.random());try{var f=indexedDB.open(b,1);f.onupgradeneeded=function(x){var he=x.target.result,D=function(yr){i(yr);};try{he.createObjectStore(`t`,{autoIncrement:!0}).put(new Blob),D(!1);}catch(yr){(yr.message||``).includes(`are not yet supported`)?D(!0):D(!1);}finally{he.close(),indexedDB.deleteDatabase(b);}},f.onerror=function(){return i(!1)};}catch{i(false);}})():(function(){var b=window.openDatabase,f=window.localStorage;try{b(null,null,null,null);}catch{i(true);return}try{f.setItem(`test`,`1`),f.removeItem(`test`);}catch{i(true);return}i(false);})(),v.label=3;case 3:return [2]}})})}function d(){navigator.webkitTemporaryStorage.queryUsageAndQuota(function(g,v){var b;i(Math.round(v/1048576)<2*Math.round(((b=window).performance!==void 0&&b.performance.memory!==void 0&&b.performance.memory.jsHeapSizeLimit!==void 0?performance.memory.jsHeapSizeLimit:1073741824)/1048576));},function(g){t(new Error(`detectIncognito somehow failed to query storage quota: `+g.message));});}function y(){self.Promise!==void 0&&self.Promise.allSettled!==void 0?d():(0, window.webkitRequestFileSystem)(0,1,function(){i(false);},function(){i(true);});}function I(){return ut$1(this,void 0,Promise,function(){var g,v;return ft$1(this,function(b){switch(b.label){case 0:if(!navigator.storage||!navigator.storage.getDirectory)return [3,4];b.label=1;case 1:return b.trys.push([1,3,,4]),[4,navigator.storage.getDirectory()];case 2:return b.sent(),i(false),[3,4];case 3:return g=b.sent(),typeof(v=g instanceof Error&&typeof g.message==`string`?g.message:String(g))!=`string`?(i(false),[2]):(i(v.includes(`Security error`)),[2]);case 4:return i(navigator.serviceWorker===void 0),[2]}})})}(function(){return ut$1(this,void 0,Promise,function(){return ft$1(this,function(g){switch(g.label){case 0:return s()!==44?[3,2]:(n=`Safari`,[4,u()]);case 1:return g.sent(),[3,6];case 2:return s()!==51?[3,3]:(v=navigator.userAgent,n=v.match(/Chrome/)?navigator.brave!==void 0?`Brave`:v.match(/Edg/)?`Edge`:v.match(/OPR/)?`Opera`:`Chrome`:`Chromium`,y(),[3,6]);case 3:return s()!==25?[3,5]:(n=`Firefox`,[4,I()]);case 4:return g.sent(),[3,6];case 5:c()?(n=`Internet Explorer`,i(window.indexedDB===void 0)):t(new Error(`detectIncognito cannot determine the browser`)),g.label=6;case 6:return [2]}var v;})})})().catch(t);})];case 1:return [2,r.sent()]}})})}typeof window<`u`&&(window.detectIncognito=$r);var vi$1=$r,vo=Wr.A;Wr.k;var Eo=x$3(yt$1()),wo=async()=>{let r={};try{return await Ei$1(r)}catch(e){return ke(e,`device-properties`),r}},Ei$1=async r=>{let e=window.CooeeSDK.uaParser;wi$1(r),bi$1(r),Si$1(r),r.referrer=document.referrer,r.host=location.origin,r.path=location.pathname,r.qs=location.search,r.locale=navigator.language,r.display={w:screen.width,h:screen.height,pd:screen.pixelDepth,dpi:Ii$1()},r.win={ow:window.outerWidth,oh:window.outerHeight,iw:window.innerWidth,ih:window.innerHeight,dpr:window.devicePixelRatio},navigator.webdriver&&(r.headless=true,eo$1({headless:true}));let t=e.getResult();return r.browser=t.browser,r.device=t.device,r.engine=t.engine,r.cpu=t.cpu,r.os=t.os,r.navigatorUA=navigator.userAgent,await Promise.all([Pi$1(r),Ti$1(r),xi$1(r)]),r},wi$1=r=>{let e=navigator;if(!e.deviceMemory)return;r.mem={tot:e.deviceMemory*1024};},bi$1=r=>{let e=navigator,t=e.connection||e.mozConnection||e.webkitConnection;t?.effectiveType&&(r.net={type:t.effectiveType});},Si$1=r=>{let e=screen.orientation?.type;e&&(r.orientation=e);},Ii$1=()=>{if(!document.body)return;let r=document.createElement(`div`);r.setAttribute(`style`,`height: 1in; left: -100%; position: absolute; top: -100%; width: 1in;`),document.body.appendChild(r);let e=window.devicePixelRatio||1,t=r.offsetWidth*e;return document.body.removeChild(r),t},Ti$1=async r=>{try{await Di$1(r);}catch(e){Y$2.error(`Unable to get location`,e);}},Di$1=async r=>{if(!(!navigator.geolocation||!navigator.permissions||(await navigator.permissions.query({name:`geolocation`})).state!=`granted`))return new Promise(t=>{navigator.geolocation.getCurrentPosition(n=>{r.coords=[n.coords.latitude,n.coords.longitude],t();},()=>t());})},Pi$1=async r=>{if(`getBattery`in navigator)try{let t=await navigator.getBattery();r.bat={l:t.level*100,c:t.charging},eo$1({"battery.level":r.bat.l,"battery.charging":r.bat.c});}catch{}},xi$1=async r=>{try{(await vo())?.isPrivate&&(r.incognito=!0,eo$1({incognito:!0}));}catch(e){Eo.default.error(`Unable to detect private/incognito window`,e);}};function So(r){if(!Io())return;let e=Se$3[r]?.toLowerCase();e&&(Y$2.verbose(`Sending ${e} intent to MS Clarity`),window.clarity(`set`,`Cooee Intent`,e));}function Io(){return window.clarity&&typeof window.clarity==`function`}var J$1=new gr$1(1),Do=`App ID or Shopify shop is not set`,Hr=``,fe$1=``,qr=``,hr;async function Vh(r){Hr=r.appID,qr=r.shopifyShop;try{await Ri$1(),J$1.next(!0),J$1.complete();}catch(e){e?.message?.includes(Do)&&ke(e,`initiate-session`,{extra:r}),Y$2.error(`Unable to initiate session`,e);}}async function Jn(){return await Po(false),hr}async function Wh(){let r=Date.now();await Zt.request(`gen_did`,async()=>{fe$1=await ce$3.get(`did`),fe$1||(fe$1=new $$1().toHexString(),await ce$3.set(`did`,fe$1)),Y$2.info(`Device ID:`,fe$1),Ro(fe$1);}),Y$2.info(`Device ID set/get done ${Jr$3(Date.now()-r)}`);}async function To(){if(hr)return;let[r,e,t]=await Promise.all([ve$4.get(`id`,``),ce$3.get(`sessionNumber`,1),ve$4.get(`landing`,{})]);xo(r,e,t);}async function Ri$1(){await Po(true);}async function Po(r){let e=false;return await Ai$1()?(await _i$1(),e=true):await Oi$1()?(await To(),e=true):await To(),e?await ki$1():r&&Co(),e}async function _i$1(){Y$2.info(`Starting new session`),await ve$4.clear();let r=new Date,e=new $$1().toHexString(),t=await ce$3.get(`sessionNumber`,0)+1,n=rr$1();await Promise.all([ce$3.set(`sessionNumber`,t),ve$4.set(`id`,e),ve$4.set(`lastUsedTime`,r.getTime()),ve$4.set(`landing`,n)]),xo(e,t,n);}async function Ai$1(){let r=await ve$4.get(`lastUsedTime`,0);return r?(new Date().getTime()-r)/1e3>1800:true}async function Oi$1(){return !await ve$4.get(`synced`,false)}async function Li$1(){if(!Hr&&!qr)throw new Error(Do);let r$11=await wo(),e=nr$1();return s$3(r$2(r$2({deviceID:fe$1,deviceProps:r$11,appID:Hr,shopifyShop:qr},hr),e),{sdk:Gr$3,ad:fr$1.getAdParams(),occurred:Ui$1(Be$3().jsLoadTime),properties:{},uuid:await ce$3.get(`uuid`)})}async function ki$1(){Y$2.info(`Ensuring session on server`),await Ni();let r=Date.now(),e=await Li$1();Y$2.info(`Session data generated ${Jr$3(Date.now()-r)}`);try{let t=await ie$1(`/v1/event/validate-session`,e);if(Y$2.info(`Auth finished ${Jr$3(t.timeTakenMs)}`),await ve$4.set(`synced`,!0),t.data.deviceID&&(await ce$3.set(`did`,fe$1),Ro(t.data.deviceID)),t.data.pageWidgets?.length)gt$1(t.data.pageWidgets.map(o=>new q$1(o)));if(t.data.cartWidgets?.length)dt$1(t.data.cartWidgets.map(o=>new q$1(o)));}catch(t){throw Y$2.error(t),t}}async function Ni(){let r=await ce$3.get(`firstSeen`),e=r?new Date(r):new Date;r||await ce$3.set(`firstSeen`,e.toISOString()),to(e),Zn$1(`Visitor Info`,{first_seen:e.toISOString()});}function xo(r,e,t){eo$1({"cooee_session.number":e}),Zn$1(`Visitor Session`,{id:r,number:e,landing_page:t}),Y$2.info(`Session number: ${e}, id: ${r}`),hr={sessionID:r,sessionNumber:e,landingPage:t};}function Ro(r){eo(r);Zn$1(`Visitor Info`,{device_id:r,[`device_id_${Math.floor(Math.random()*1e4)}`]:r}),Qn$1({id:r});}function Ui$1(r){return (new Date().getTime()-r.getTime())/1e3>1800?new Date:r}function Kh(){document.onvisibilitychange=()=>{document.visibilityState===`visible`?Mi():document.visibilityState===`hidden`&&Fi$1();};}async function Mi(){}async function Fi$1(){let r=await Bi$1();if(r===0){Y$2.info(`Not sending duration as user was inactive on website`);return}Ao(r);}async function Bi$1(){let r=Be$3();return r.inInactive?0:(r.inInactive=true,r.lastEnterInactive=new Date,Math.max(r.lastEnterInactive.getTime()-r.lastEnterActive.getTime(),0))}function _o(){let r=Be$3();return r.inInactive?(r.inInactive=false,r.lastEnterActive=new Date,Math.max((r.lastEnterActive.getTime()-r.lastEnterInactive.getTime())/1e3,0)):0}var Cr=class{triggerData;render(e){e.contentSource===ve$3.KLAVIYO&&(this.triggerData=e,window.addEventListener(`klaviyoForms`,this.handleKlaviyoEvents.bind(this)),window._klOnsite=window._klOnsite||[],window._klOnsite.push([`openForm`,e.klaviyoFormID]));}handleKlaviyoEvents(e){if(e.type!==`klaviyoForms`)return;let t=e.detail;if(t.formId!==this.triggerData.klaviyoFormID){Y$2.warn(`Received invalid trigger callback`);return}switch(t.type){case `open`:X$1(new Ir$1(`CE Trigger Displayed`,{form:{id:t.formId}},this.triggerData));break;case `stepSubmit`:{let n=this.getFormDetails(t);X$1(new Ir$1(`CE Form Submitted`,{form:n},this.triggerData)),Qn(n);break}case `close`:window.removeEventListener(`klaviyoForms`,this.handleKlaviyoEvents.bind(this)),X$1(new Ir$1(`CE Trigger Closed`,{form:{id:t.formId}},this.triggerData));break}}getFormDetails(e){let t={id:e.formId},n=e.metaData;if(pe$5.hasKeys(n)){let o=[`email`,`phone_number`,`first_name`,`last_name`,`$email`,`$phone_number`,`$first_name`,`$last_name`];Object.keys(n).forEach(c=>{o.includes(c)||(t[c]=n[c]);}),t.email=n.$email??n.email,t.mobile=n.$phone_number??n.phone_number;let i=n.$first_name??n.first_name,s=n.$last_name??n.last_name;(i?.length||s?.length)&&(t.name=i+` `+s);}return t}};function Oo(r){if(!Vi$1()||!he$4.get().pixelPush)return;let t=Se$3[r.intent]?.toLowerCase();t&&(Y$2.verbose(`Sending ${t} intent to Facebook Pixel`),window.fbq(`trackCustom`,`CooeeIntent`,{intent_value:t}));}function Vi$1(){return window.fbq&&typeof window.fbq==`function`}var kr=`/v1/event/track-page-unload`;function qn(r){Y$2.verbose(`Waiting for auth to send event ${r.name}`),le$2(J$1).then(()=>X$1(r));}function Ao(r){le$2(J$1).then(()=>{Wi$1(r);});}async function Wi$1(r){let e=Be$3().currentPageViewEvent;if(!e){Y$2.warn(`No page view event was stored previously`);return}let t={pageViewEventID:e.id,pageViewEventName:e.name,pageActiveTimeMS:r};Y$2.verbose(`Sending page unload`,t);try{await ie$1(kr,t);}catch(n){throw Y$2.error(`Error sending page unload for ${e} to server`,n),n}}function X$1(r){$i(r);}async function $i(r){if(Y$2.verbose(`Sending event: ${r.name}`,r),Xi$1(r)){Y$2.warn(`Rejecting event ${r.name}`);return}Vn();let e=await et$1();Object.assign(r,e),_o(),ve$4.set(`lastUsedTime`,new Date().getTime());let t=Ki$1(r.name),n=t.toLowerCase().replace(/\s+/g,`-`);try{let o=await ie$1(`/v1/event/track/${n}`,r);Y$2.info(`Event tracked:`,t),Hi$1(r)&&(Be$3().currentPageViewEvent={id:r.id,name:r.name}),qi$1(r,o.data);}catch(o){throw Y$2.error(`Error sending event ${r.name} to server`,o),o}}function Hi$1(r){return qr$4.includes(r.name)?r.name===`View Cart`?!r.properties.drawer:true:false}function qi$1(r,e){Gi$1(r,e).catch(t=>{ke(t,`process-popup-response`,{extra:{event:r,response:e}});}),ji$1(e);}async function Gi$1(r,e){if(!e.triggerData)return;let t=new q$1(e.triggerData);t.occurred=r.occurred,Y$2.log(`${t} will be shown`);let n;try{n=await tr$1(t);}catch(i){Y$2.error(`Failed to refresh the products`,i);return}if(t.items=n,t.contentSource===ve$3.KLAVIYO){new Cr().render(t);return}new(await(import('./renderer-BEuag36y-BHXHkvk0.js'))).FreeformRenderer().renderEngagement(t).catch(i=>{ke(i,`render-popup`,{extra:{event:r},engagementTrigger:t});});}function ji$1(r){r.intent&&(So(r.intent),Oo(r),Y$2.info(`Intent is ${Se$3[r.intent]}`));}function Ki$1(r){return r.replace(`CE `,``).replace(`Trigger`,`Campaign`).replace(`Screen`,`Page`).replace(`App `,``)}function Xi$1(r){return r.trigger?.triggerID===`test`||r.trigger?.triggerID===`preview`?(Y$2.warn(`Not sending event as this is a test trigger`),true):false}
84
+ ${o}`} }`);}injectOuterCSSOnly(){let e=this.engagementTrigger.content?.outerCSS?.trim();if(!e)return;let t=this.rootContainer.id;le$4(`#${t} { ${e} }`);}isInViewport(){let e=this.rootContainer?.getBoundingClientRect();if(!e)return false;let t=window.innerHeight||document.documentElement.clientHeight,s=(Math.min(e.bottom,t)-Math.max(e.top,0))*e.width/(e.width*e.height)*100;return this.engagementTrigger.isAnySplit()?s>0:s>=30}async getWidgetContainer(e){if(this.rootContainer?.isConnected)return this.rootContainer;let t=await this.createParentElementWithPlacement(e);if(t)return t;let n=`.letscooee[data-engagement-id="${this.triggerContext.triggerData.shortID}"]`;return document.querySelector(n)}async createParentElementWithPlacement(e){let t=this.engagementTrigger.placement;if(!t?.selector)return Y$2.info(`\u26A0\uFE0F${this.engagementTrigger} does not have a selector`),null;let n=t.selector,o;if(n.includes(`:shadow`)){let p=n.split(`:shadow`);o=(await xn(p[0].trim()))?.shadowRoot,n=p[1].trim(),o&&ki$2(o,false);}Y$2.verbose(`${this.engagementTrigger} attempt to render "${t.position}" "${n}"`);let i=await xn(n,3,o??document);if(!i)return Y$2.warn(`${this.engagementTrigger} no placement found with ${n}`),null;let s=this.generateParentElementID(),c=this.getParentElement(s);if(!e)return c;switch(t.position){case ae$3.BEFORE1:case ae$3.BEFORE:i.parentElement?.insertBefore(c,i);break;case ae$3.INSIDE_FIRST1:case ae$3.INSIDE_FIRST:i.insertBefore(c,i.firstChild);break;case ae$3.INSIDE_LAST1:case ae$3.INSIDE_LAST:i.appendChild(c);break;case ae$3.AFTER1:case ae$3.AFTER:default:i.parentElement?.insertBefore(c,i.nextSibling);}return c}async runChoresBeforeRender(){if(this.isExclusionWithBVariation)return;if(!this.isAllOkToRender()){Y$2.info(`\u26A0\uFE0F ${this.engagementTrigger} could not be rendered`);return}Y$2.verbose(`${this.engagementTrigger} will be rendered`);let e;try{e=await tr$1(this.engagementTrigger);}catch(t){Y$2.info(`\u203C\uFE0F${this.engagementTrigger} could not render as items failed to refresh`,t);return}if(!this.engagementTrigger.isCollectionPromoted()&&!e?.length&&this.engagementTrigger.isProductPromoted()){Y$2.info(`\u203C\uFE0F${this.engagementTrigger} could not render as no products promoted`);return}this.engagementTrigger.items=e,await this.startRendering();}updateItems(e,t){let n=this.getItemDiff(e,t),o=this.getItemDiff(t,e);t.push(...n);for(let i of o)oe$1.remove(t,i);}getItemDiff(e,t){return e.filter(n=>!t.some(o=>o.selectedOrFirstVariant.value.mID===n.selectedOrFirstVariant.value.mID))}};var G$1=class G extends N$2{constructor(e){super(e);}rerenderAfterCartOpened(){this.rerenderIfDeleted(),this.checkAndSendEvent();}observeWidgetContainerInViewport(){return this.getVariation()}generateParentElementID(){let e=super.generateParentElementID();return this.engagementTrigger.isSubscriptionUpsell()&&(e+=`-${this.engagementTrigger.items[0].selectedOrFirstVariant.value.mID}`),e}checkAndSendEvent(){if(!P.get().isOpen()&&Be$3().pageName!==`cart`){Y$2.log(`Do not send display event as neither the cart drawer nor the cart page is open.`);return}return super.checkAndSendEvent()}};var ar$1=class r{constructor(e,t){this.engagementTrigger=e;this.element=t;this.cartItems=h.getCurrent().items;}cartItems;static renderCartUpsell(e){let t=e.placement;if(!t?.selector){Y$2.warn(`No placement available for ${e.objective}`,e.shortID);return}let n=Array.from(document.querySelectorAll(t.selector));if(!n?.length){Y$2.warn(`No placement found for ${e.objective}`,e.shortID);return}for(let o of n)new r(e,o).render();}render(){let e=this.findCartItemFromHTMLElement();if(!e||this.engagementTrigger.skipSubscribedItems&&e.selling_plan_allocation)return;let t=this.engagementTrigger.items.find(d=>d.mID===e.product_id.toString());if(!t)return;let n=t.vars.find(d=>d.mID===e.id.toString());if(!n)return;let o=new dt$2(n),i=e.selling_plan_allocation?.selling_plan;if(i)for(let d of o.sellingPlans??[])d.mID===i.id.toString()&&(d.isSelected=true,o.changeSellingPlan(d));let s=new mt$3(t);s.vars=[o],s.selectedOrFirstVariant.value=o;let c=`lc-cart-item-${this.engagementTrigger.shortID}-${t.mID}`;this.element.classList.add(c);let p=new q$1(this.engagementTrigger);p.placement.selector=`.${c}`,p.items=[s];let u=new G$1(p);u.renderSilently(),this.watchForCartItemDeletion(u,c);}watchForCartItemDeletion(e,t){let n=new MutationObserver(o=>{o.forEach(i=>{i.removedNodes.forEach(s=>{s===this.element&&(Y$2.verbose(`${t} has been removed`),e.destroy(),n.disconnect());});});});n.observe(this.element.parentElement,{childList:true,subtree:true});}findCartItemFromHTMLElement(){let e=this.element.innerHTML;return this.cartItems.find(t=>{if(!(e.includes(t.url)||e.includes(t.variant_id))&&(!e.includes(t.product_title)||t.variant_title&&!e.includes(t.variant_title)))return false;let n=t.selling_plan_allocation?.selling_plan?.name;return !(n&&!e.includes(n))})}};var cr$1=class cr extends N$2{constructor(e){super(e);}isAllOkToRender(){return true}async startRendering(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget(`cooee-collection-filter`);}};var mr$1=class mr extends G$1{constructor(e){super(e);}async update(e){await super.update(e),this.engagementTrigger.progressBarConfig.update(e.progressBarConfig),await this.checkMilestoneTryCatch(),this.updateAngularWidget();}isAllOkToRender(){return !!this.engagementTrigger.progressBarConfig}async startRendering(){if(this.updateAngularWidget()){this.addToRendered();return}this.createAngularWidget(`cooee-progressbar`),await this.checkMilestoneTryCatch();}async checkMilestoneTryCatch(){try{await this.checkMilestone();}catch(e){ke(e,`apply-milestones`,{engagementTrigger:this.engagementTrigger});}}async checkMilestone(){let e=await h.getCurrent().getNormalisedCart(true),t=this.engagementTrigger.progressBarConfig,n=[],o=[],i=[],s,c,p=[...t.milestones];for(let u of p){if(u.rewardType!==ge$4.FREE_AUTO_GIFT)continue;if(u.isUIOnly&&!u.allowATC){Y$2.verbose(`Skipping milestone ${u.label} as it is UI only and does not allow ATC`);continue}let d=u.items[0],y=u.reached,I=e.items.find(g=>(g.vID===d.vID||g.mID===d.mID)&&g.properties._letscooee_campaign===this.engagementTrigger.shortID);y&&(s=u,c=I),I&&n.push(I),!y&&I&&t.removeIneligibleItem?(Y$2.verbose(`Removing free gift ${I.vID} from cart`),i.push(I)):y&&!I&&(Y$2.verbose(`Adding free gift ${d.vID} to cart`),o.push(d));}t.restrictToLatestFreebie&&s&&(c?(n=n.filter(u=>u.vID!==c.vID),o=[]):o=[s.items[0]],i.push(...n)),t.treatFreebieAsSeparateLineItem?await this.handleSeparateFreebieLineItems(o,i):await this.handleCombinedCartUpdate(o,i);}async handleSeparateFreebieLineItems(e,t){if(!t.length&&!e.length)return;let n=new $e,o=[];if(e.length){let c=this.addFreebiesOperation(e,n);o.push(c);}if(t.length){let c=this.removeFreebiesOperation(t);o.push(c);}if(!o.length)return;let i;try{i=await Promise.all(o),Y$2.log(`All freebie and coupon operations completed`);}catch(c){ke(c,`parallel-freebie-operations`,{engagementTrigger:this.engagementTrigger});}let s;e.length&&i?.length&&(s=i[0]),P.get().refreshUI(s,false);}async removeFreebiesOperation(e){let t={updates:{}};return e.forEach(n=>t.updates[n.key??n.vID]=n.quantity-1),Nr(t,this.engagementTrigger)}async addFreebiesOperation(e,t){return t.addToCart(e,this.engagementTrigger)}async handleCombinedCartUpdate(e,t){let n=this.engagementTrigger.progressBarConfig,o={},i={};t.length&&t.forEach(y=>i[y.key??y.vID]=0),e.length&&e.forEach(y=>i[y.vID]=1);let s=n.coupons,c=[];if(s?.length){c=s.map(g=>g.couponCode);let y=h.getCurrent().discount_codes?.map(g=>g.code)??[];c.every(g=>y.some(v=>v===g))||(o.discount=c.join(`,`));}if(pe$5.hasKeys(i)&&(o.updates=i),!pe$5.hasKeys(o))return;let p=await Nr(o,this.engagementTrigger),u=p?.items,d=[];for(let y of e){let I=u?.find(g=>c?.length?g.id+``===y.vID&&g.discounts?.some(v=>c.includes(v.title)):g.id+``===y.vID);I&&d.push(I);}if(!d.length){P.get().refreshUI(p,false);return}try{await Promise.all(d.map(y=>so(y,{properties:this.engagementTrigger.getPrivateAttributesForLineItem()})));}catch(y){ke(y,`add-private-attribute`,{engagementTrigger:this.engagementTrigger,extra:{productAddedByCooee:d}});}finally{P.get().refreshUI(p,false);}}};var pt$1=class pt extends G$1{constructor(e){super(e);}async update(e){await super.update(e),this.engagementTrigger.content.update(e.content),this.updateAngularWidget();}isAllOkToRender(){return !!this.engagementTrigger.content}async startRendering(){if(this.updateAngularWidget()){this.addToRendered();return}this.createAngularWidget(`cooee-savings-bar`);}};var lr$1=class lr extends N$2{constructor(e){super(e);}isAllOkToRender(){return !!this.engagementTrigger.content?.videoConfig}async startRendering(){if(this.widgetElement?.isConnected){this.addToRendered();return}let e,t=this.engagementTrigger.content.videoConfig;t.template===`FLOATING_POPUP`?e=`cooee-video-popup`:t.template===`STORY`?e=`cooee-video-stories`:e=`cooee-video-playlist`,this.createAngularWidget(e);}};var pr$1=class pr extends N$2{constructor(e){super(e);}isAllOkToRender(){return true}async startRendering(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget(`cooee-sticky-atc`);}};var dr$1=class dr extends N$2{constructor(e){super(e);}isAllOkToRender(){return true}async startRendering(){let e=this.getParentElement(`inner-letscooee-${this.engagementTrigger.shortID}`);this.rootContainer.appendChild(e),document.addEventListener(`letscooee:inbound:cta:add-bundle`,this.inboundCTAListener.bind(this),false);}async inboundCTAListener(e){let t=this.engagementTrigger,n=`Engagement(id: ${t.engagementID}, shortID: ${t.shortID})`,o=e.detail;if(!pe$5.hasKeys(o)){Y$2.error(`No detail received for ${n}`);return}Y$2.log(`Detail received for BYOB`,o);let i=o.campaignID??o.campaignId??o.campaign_id;if(i!==t.shortID&&i!==t.engagementID){Y$2.warn(`Current ${n} is not BYOB. Received: ${i}`);return}let s=o.items;if(!s?.length)return;let c=s.map(p=>new at$2({mID:p.product_id,vID:p.variant_id,quantity:p.quantity||1}));await new He$1(this.triggerContext).execute({embeddedItems:c,clickAction:{at:pe$4.ADD_BUNDLE,applyDiscount:true}});}};var Fr=false,Br=false,gr=null,ur$1=null,mo=false,Ie=new Set,Ge=new Set;function lo(){mo||(mo=true,ht$3(()=>{$n(document.body,{childList:true,subtree:true},500,Wn).subscribe(()=>{Ge.forEach(r=>r.rerenderIfDeleted()),Ie.forEach(r=>r.rerenderIfDeleted());});}));}function dt$1(r){if(r.length>0&&uo(),lo(),Fr){Y$2.verbose(`Cart widget processing in progress, queuing latest triggers`),gr=r;return}Fr=true;try{hi$1(r);}finally{if(Fr=false,gr){let e=gr;gr=null,Y$2.verbose(`Processing queued cart triggers`),dt$1(e);}}}function gt$1(r){if(r.length>0&&uo(),lo(),Br){Y$2.verbose(`Page widget processing in progress, queuing latest triggers`),ur$1=r;return}Br=true;try{Ci$1(r);}finally{if(Br=false,ur$1){let e=ur$1;ur$1=null,Y$2.verbose(`Processing queued page triggers`),gt$1(e);}}}function Kf(){Ie.forEach(r=>r.rerenderAfterCartOpened());}function hi$1(r){go(Ie,r);for(let e of r){Y$2.info(`${e} received as cart embed`);let t=po(Ie,e);if(t&&!e.isSubscriptionUpsell()){t.updateAndReRender(e).catch(o=>{ke(o,`update-and-re-render`,{engagementTrigger:e});});continue}Y$2.verbose(`${e} is new`);let n;if(e.isProgressBar())n=new mr$1(e);else if(e.isSubscriptionUpsell()){ar$1.renderCartUpsell(e);continue}else e.isSavingsBar()?n=new pt$1(e):n=new G$1(e);Ie.add(n),n.renderSilently();}}function Ci$1(r){go(Ge,r);for(let e of r){Y$2.info(`${e} received as page embed`);let t=po(Ge,e);if(t){t.updateAndReRender(e).catch(o=>{ke(o,`update-and-re-render`,{engagementTrigger:e});});continue}Y$2.verbose(`${e} is new`);let n;e.isShoppableVideo()?n=new lr$1(e):e.isBYOB()?n=new dr$1(e):e.isStickyATC()?n=new pr$1(e):e.isSavingsBar()?n=new pt$1(e):e.isCollectionFilter()?n=new cr$1(e):n=new N$2(e),Ge.add(n),n.renderSilently();}}function po(r,e){for(let t of r)if(t.matches(e))return t}function go(r,e){let t=new Set(e.map(n=>n.shortID));for(let n of r)t.has(n.engagementTrigger.shortID)||n.destroy();}function uo(){import('./widgets-DB-Ti_eG-BBkUk6Yr.js').then(function (n) { return n.ad; }).then(({loadAngularWidgets:r})=>{r();});}var ho=new U,fo=0;ho.pipe(Fe$2(50)).subscribe(async r=>{yi$1(await et$1()).catch(t=>{ke(t,`load-page-widgets`,{extra:{firstLoad:r}});});});function Co(r=false){le$2(J$1).then(()=>{ho.next(r);});}async function co(r){let e=await et$1();return Object.assign(r,e),ie$1(`/v1/engagement/get-variant`,r)}async function yi$1(r$10){fo++,fo===1?Y$2.info(`Fetch widgets (after ⏰`,en()+` of SDK load)`):Y$2.info(`Fetch widgets`);let e=r$2({},r$10);try{let t=await ie$1(`/v1/engagement/eligible`,e);if(Y$2.info(`Widgets fetched ${Jr$3(t.timeTakenMs)}`),t.data.pageWidgets?.length)gt$1(t.data.pageWidgets.map(o=>new q$1(o)));if(t.data.cartWidgets?.length)dt$1(t.data.cartWidgets.map(o=>new q$1(o)));}catch(t){Y$2.error(`Error sending widget getter`,t);}}var yo=x$3(dr$3()),fr$1=class r{static META_REQUIRED_FIELDS=[`ad_id`];static GOOGLE_REQUIRED_FIELDS=[`gad_source`,`gclid`];source;adID;campaignID;adName;campaignName;constructor(e){this.adID=e.adID,this.campaignID=e.campaignID,this.source=e.source;}static getAdParams(){let e;try{e=new yo.URLBuilder(location.href);}catch{return {}}let t={};if(this.META_REQUIRED_FIELDS.every(i=>Array.from(e.getParams().keys()).includes(i)))return t={source:`META`,adID:e.getQueryParam(`ad_id`)?.trim(),campaignID:e.getQueryParam(`campaign_id`)?.trim()},new r(t);if(this.GOOGLE_REQUIRED_FIELDS.every(i=>Array.from(e.getParams().keys()).includes(i)))return t={source:`GOOGLE`},new r(t)}};var Vr={d:(r,e)=>{for(var t in e)Vr.o(e,t)&&!Vr.o(r,t)&&Object.defineProperty(r,t,{enumerable:true,get:e[t]});},o:(r,e)=>Object.prototype.hasOwnProperty.call(r,e)},Wr={};Vr.d(Wr,{A:()=>vi$1,k:()=>$r});var ut$1=function(r,e,t,n){return new(t||(t=Promise))(function(o,i){function s(u){try{p(n.next(u));}catch(d){i(d);}}function c(u){try{p(n.throw(u));}catch(d){i(d);}}function p(u){var d;u.done?o(u.value):(d=u.value,d instanceof t?d:new t(function(y){y(d);})).then(s,c);}p((n=n.apply(r,[])).next());})},ft$1=function(r,e){var t,n,o,i,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:c(0),throw:c(1),return:c(2)},typeof Symbol==`function`&&(i[Symbol.iterator]=function(){return this}),i;function c(p){return function(u){return (function(d){if(t)throw new TypeError(`Generator is already executing.`);for(;i&&(i=0,d[0]&&(s=0)),s;)try{if(t=1,n&&(o=2&d[0]?n.return:d[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,d[1])).done)return o;switch(n=0,o&&(d=[2&d[0],o.value]),d[0]){case 0:case 1:o=d;break;case 4:return s.label++,{value:d[1],done:!1};case 5:s.label++,n=d[1],d=[0];continue;case 7:d=s.ops.pop(),s.trys.pop();continue;default:if(o=s.trys,!((o=o.length>0&&o[o.length-1])||d[0]!==6&&d[0]!==2)){s=0;continue}if(d[0]===3&&(!o||d[1]>o[0]&&d[1]<o[3])){s.label=d[1];break}if(d[0]===6&&s.label<o[1]){s.label=o[1],o=d;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(d);break}o[2]&&s.ops.pop(),s.trys.pop();continue}d=e.call(r,s);}catch(y){d=[6,y],n=0;}finally{t=o=0;}if(5&d[0])throw d[1];return {value:d[0]?d[1]:void 0,done:true}})([p,u])}}};function $r(){return ut$1(this,void 0,Promise,function(){return ft$1(this,function(r){switch(r.label){case 0:return [4,new Promise(function(e,t){var n=`Unknown`,o=false;function i(g){o||(o=true,e({isPrivate:g,browserName:n}));}function s(){var g=0,v=parseInt(`-1`);try{v.toFixed(v);}catch(b){g=b.message.length;}return g}function c(){return navigator.msSaveBlob!==void 0&&(function(g){try{return g===eval.toString().length}catch{return false}})(39)}function p(){var g;return ut$1(this,void 0,void 0,function(){var v,b;return ft$1(this,function(f){switch(f.label){case 0:return f.trys.push([0,2,,3]),[4,navigator.storage.getDirectory()];case 1:return f.sent(),i(false),[3,3];case 2:return v=f.sent(),b=v,v instanceof Error&&(b=(g=v.message)!==null&&g!==void 0?g:v),typeof b!=`string`?(i(false),[2]):(i(!!b.includes(`unknown transient reason`)),[3,3]);case 3:return [2]}})})}function u(){var g;return ut$1(this,void 0,Promise,function(){return ft$1(this,function(v){switch(v.label){case 0:return ((g=navigator.storage)===null||g===void 0?void 0:g.getDirectory)===void 0?[3,2]:[4,p()];case 1:return v.sent(),[3,3];case 2:navigator.maxTouchPoints!==void 0?(function(){var b=String(Math.random());try{var f=indexedDB.open(b,1);f.onupgradeneeded=function(x){var he=x.target.result,D=function(yr){i(yr);};try{he.createObjectStore(`t`,{autoIncrement:!0}).put(new Blob),D(!1);}catch(yr){(yr.message||``).includes(`are not yet supported`)?D(!0):D(!1);}finally{he.close(),indexedDB.deleteDatabase(b);}},f.onerror=function(){return i(!1)};}catch{i(false);}})():(function(){var b=window.openDatabase,f=window.localStorage;try{b(null,null,null,null);}catch{i(true);return}try{f.setItem(`test`,`1`),f.removeItem(`test`);}catch{i(true);return}i(false);})(),v.label=3;case 3:return [2]}})})}function d(){navigator.webkitTemporaryStorage.queryUsageAndQuota(function(g,v){var b;i(Math.round(v/1048576)<2*Math.round(((b=window).performance!==void 0&&b.performance.memory!==void 0&&b.performance.memory.jsHeapSizeLimit!==void 0?performance.memory.jsHeapSizeLimit:1073741824)/1048576));},function(g){t(new Error(`detectIncognito somehow failed to query storage quota: `+g.message));});}function y(){self.Promise!==void 0&&self.Promise.allSettled!==void 0?d():(0, window.webkitRequestFileSystem)(0,1,function(){i(false);},function(){i(true);});}function I(){return ut$1(this,void 0,Promise,function(){var g,v;return ft$1(this,function(b){switch(b.label){case 0:if(!navigator.storage||!navigator.storage.getDirectory)return [3,4];b.label=1;case 1:return b.trys.push([1,3,,4]),[4,navigator.storage.getDirectory()];case 2:return b.sent(),i(false),[3,4];case 3:return g=b.sent(),typeof(v=g instanceof Error&&typeof g.message==`string`?g.message:String(g))!=`string`?(i(false),[2]):(i(v.includes(`Security error`)),[2]);case 4:return i(navigator.serviceWorker===void 0),[2]}})})}(function(){return ut$1(this,void 0,Promise,function(){return ft$1(this,function(g){switch(g.label){case 0:return s()!==44?[3,2]:(n=`Safari`,[4,u()]);case 1:return g.sent(),[3,6];case 2:return s()!==51?[3,3]:(v=navigator.userAgent,n=v.match(/Chrome/)?navigator.brave!==void 0?`Brave`:v.match(/Edg/)?`Edge`:v.match(/OPR/)?`Opera`:`Chrome`:`Chromium`,y(),[3,6]);case 3:return s()!==25?[3,5]:(n=`Firefox`,[4,I()]);case 4:return g.sent(),[3,6];case 5:c()?(n=`Internet Explorer`,i(window.indexedDB===void 0)):t(new Error(`detectIncognito cannot determine the browser`)),g.label=6;case 6:return [2]}var v;})})})().catch(t);})];case 1:return [2,r.sent()]}})})}typeof window<`u`&&(window.detectIncognito=$r);var vi$1=$r,vo=Wr.A;Wr.k;var Eo=x$3(yt$1()),wo=async()=>{let r={};try{return await Ei$1(r)}catch(e){return ke(e,`device-properties`),r}},Ei$1=async r=>{let e=window.CooeeSDK.uaParser;wi$1(r),bi$1(r),Si$1(r),r.referrer=document.referrer,r.host=location.origin,r.path=location.pathname,r.qs=location.search,r.locale=navigator.language,r.display={w:screen.width,h:screen.height,pd:screen.pixelDepth,dpi:Ii$1()},r.win={ow:window.outerWidth,oh:window.outerHeight,iw:window.innerWidth,ih:window.innerHeight,dpr:window.devicePixelRatio},navigator.webdriver&&(r.headless=true,eo$1({headless:true}));let t=e.getResult();return r.browser=t.browser,r.device=t.device,r.engine=t.engine,r.cpu=t.cpu,r.os=t.os,r.navigatorUA=navigator.userAgent,await Promise.all([Pi$1(r),Ti$1(r),xi$1(r)]),r},wi$1=r=>{let e=navigator;if(!e.deviceMemory)return;r.mem={tot:e.deviceMemory*1024};},bi$1=r=>{let e=navigator,t=e.connection||e.mozConnection||e.webkitConnection;t?.effectiveType&&(r.net={type:t.effectiveType});},Si$1=r=>{let e=screen.orientation?.type;e&&(r.orientation=e);},Ii$1=()=>{if(!document.body)return;let r=document.createElement(`div`);r.setAttribute(`style`,`height: 1in; left: -100%; position: absolute; top: -100%; width: 1in;`),document.body.appendChild(r);let e=window.devicePixelRatio||1,t=r.offsetWidth*e;return document.body.removeChild(r),t},Ti$1=async r=>{try{await Di$1(r);}catch(e){Y$2.error(`Unable to get location`,e);}},Di$1=async r=>{if(!(!navigator.geolocation||!navigator.permissions||(await navigator.permissions.query({name:`geolocation`})).state!=`granted`))return new Promise(t=>{navigator.geolocation.getCurrentPosition(n=>{r.coords=[n.coords.latitude,n.coords.longitude],t();},()=>t());})},Pi$1=async r=>{if(`getBattery`in navigator)try{let t=await navigator.getBattery();r.bat={l:t.level*100,c:t.charging},eo$1({"battery.level":r.bat.l,"battery.charging":r.bat.c});}catch{}},xi$1=async r=>{try{(await vo())?.isPrivate&&(r.incognito=!0,eo$1({incognito:!0}));}catch(e){Eo.default.error(`Unable to detect private/incognito window`,e);}};function So(r){if(!Io())return;let e=Se$3[r]?.toLowerCase();e&&(Y$2.verbose(`Sending ${e} intent to MS Clarity`),window.clarity(`set`,`Cooee Intent`,e));}function Io(){return window.clarity&&typeof window.clarity==`function`}var J$1=new gr$1(1),Do=`App ID or Shopify shop is not set`,Hr=``,fe$1=``,qr=``,hr;async function Vh(r){Hr=r.appID,qr=r.shopifyShop;try{await Ri$1(),J$1.next(!0),J$1.complete();}catch(e){e?.message?.includes(Do)&&ke(e,`initiate-session`,{extra:r}),Y$2.error(`Unable to initiate session`,e);}}async function Jn(){return await Po(false),hr}async function Wh(){let r=Date.now();await Zt.request(`gen_did`,async()=>{fe$1=await ce$3.get(`did`),fe$1||(fe$1=new $$1().toHexString(),await ce$3.set(`did`,fe$1)),Y$2.info(`Device ID:`,fe$1),Ro(fe$1);}),Y$2.info(`Device ID set/get done ${Jr$3(Date.now()-r)}`);}async function To(){if(hr)return;let[r,e,t]=await Promise.all([ve$4.get(`id`,``),ce$3.get(`sessionNumber`,1),ve$4.get(`landing`,{})]);xo(r,e,t);}async function Ri$1(){await Po(true);}async function Po(r){let e=false;return await Ai$1()?(await _i$1(),e=true):await Oi$1()?(await To(),e=true):await To(),e?await ki$1():r&&Co(),e}async function _i$1(){Y$2.info(`Starting new session`),await ve$4.clear();let r=new Date,e=new $$1().toHexString(),t=await ce$3.get(`sessionNumber`,0)+1,n=rr$1();await Promise.all([ce$3.set(`sessionNumber`,t),ve$4.set(`id`,e),ve$4.set(`lastUsedTime`,r.getTime()),ve$4.set(`landing`,n)]),xo(e,t,n);}async function Ai$1(){let r=await ve$4.get(`lastUsedTime`,0);return r?(new Date().getTime()-r)/1e3>1800:true}async function Oi$1(){return !await ve$4.get(`synced`,false)}async function Li$1(){if(!Hr&&!qr)throw new Error(Do);let r$11=await wo(),e=nr$1();return s$3(r$2(r$2({deviceID:fe$1,deviceProps:r$11,appID:Hr,shopifyShop:qr},hr),e),{sdk:Gr$3,ad:fr$1.getAdParams(),occurred:Ui$1(Be$3().jsLoadTime),properties:{},uuid:await ce$3.get(`uuid`)})}async function ki$1(){Y$2.info(`Ensuring session on server`),await Ni();let r=Date.now(),e=await Li$1();Y$2.info(`Session data generated ${Jr$3(Date.now()-r)}`);try{let t=await ie$1(`/v1/event/validate-session`,e);if(Y$2.info(`Auth finished ${Jr$3(t.timeTakenMs)}`),await ve$4.set(`synced`,!0),t.data.deviceID&&(await ce$3.set(`did`,fe$1),Ro(t.data.deviceID)),t.data.pageWidgets?.length)gt$1(t.data.pageWidgets.map(o=>new q$1(o)));if(t.data.cartWidgets?.length)dt$1(t.data.cartWidgets.map(o=>new q$1(o)));}catch(t){throw Y$2.error(t),t}}async function Ni(){let r=await ce$3.get(`firstSeen`),e=r?new Date(r):new Date;r||await ce$3.set(`firstSeen`,e.toISOString()),to(e),Zn$1(`Visitor Info`,{first_seen:e.toISOString()});}function xo(r,e,t){eo$1({"cooee_session.number":e}),Zn$1(`Visitor Session`,{id:r,number:e,landing_page:t}),Y$2.info(`Session number: ${e}, id: ${r}`),hr={sessionID:r,sessionNumber:e,landingPage:t};}function Ro(r){eo(r);Zn$1(`Visitor Info`,{device_id:r,[`device_id_${Math.floor(Math.random()*1e4)}`]:r}),Qn$1({id:r});}function Ui$1(r){return (new Date().getTime()-r.getTime())/1e3>1800?new Date:r}function Kh(){document.onvisibilitychange=()=>{document.visibilityState===`visible`?Mi():document.visibilityState===`hidden`&&Fi$1();};}async function Mi(){}async function Fi$1(){let r=await Bi$1();if(r===0){Y$2.info(`Not sending duration as user was inactive on website`);return}Ao(r);}async function Bi$1(){let r=Be$3();return r.inInactive?0:(r.inInactive=true,r.lastEnterInactive=new Date,Math.max(r.lastEnterInactive.getTime()-r.lastEnterActive.getTime(),0))}function _o(){let r=Be$3();return r.inInactive?(r.inInactive=false,r.lastEnterActive=new Date,Math.max((r.lastEnterActive.getTime()-r.lastEnterInactive.getTime())/1e3,0)):0}var Cr=class{triggerData;render(e){e.contentSource===ve$3.KLAVIYO&&(this.triggerData=e,window.addEventListener(`klaviyoForms`,this.handleKlaviyoEvents.bind(this)),window._klOnsite=window._klOnsite||[],window._klOnsite.push([`openForm`,e.klaviyoFormID]));}handleKlaviyoEvents(e){if(e.type!==`klaviyoForms`)return;let t=e.detail;if(t.formId!==this.triggerData.klaviyoFormID){Y$2.warn(`Received invalid trigger callback`);return}switch(t.type){case `open`:X$1(new Ir$1(`CE Trigger Displayed`,{form:{id:t.formId}},this.triggerData));break;case `stepSubmit`:{let n=this.getFormDetails(t);X$1(new Ir$1(`CE Form Submitted`,{form:n},this.triggerData)),Qn(n);break}case `close`:window.removeEventListener(`klaviyoForms`,this.handleKlaviyoEvents.bind(this)),X$1(new Ir$1(`CE Trigger Closed`,{form:{id:t.formId}},this.triggerData));break}}getFormDetails(e){let t={id:e.formId},n=e.metaData;if(pe$5.hasKeys(n)){let o=[`email`,`phone_number`,`first_name`,`last_name`,`$email`,`$phone_number`,`$first_name`,`$last_name`];Object.keys(n).forEach(c=>{o.includes(c)||(t[c]=n[c]);}),t.email=n.$email??n.email,t.mobile=n.$phone_number??n.phone_number;let i=n.$first_name??n.first_name,s=n.$last_name??n.last_name;(i?.length||s?.length)&&(t.name=i+` `+s);}return t}};function Oo(r){if(!Vi$1()||!he$4.get().pixelPush)return;let t=Se$3[r.intent]?.toLowerCase();t&&(Y$2.verbose(`Sending ${t} intent to Facebook Pixel`),window.fbq(`trackCustom`,`CooeeIntent`,{intent_value:t}));}function Vi$1(){return window.fbq&&typeof window.fbq==`function`}var kr=`/v1/event/track-page-unload`;function qn(r){Y$2.verbose(`Waiting for auth to send event ${r.name}`),le$2(J$1).then(()=>X$1(r));}function Ao(r){le$2(J$1).then(()=>{Wi$1(r);});}async function Wi$1(r){let e=Be$3().currentPageViewEvent;if(!e){Y$2.warn(`No page view event was stored previously`);return}let t={pageViewEventID:e.id,pageViewEventName:e.name,pageActiveTimeMS:r};Y$2.verbose(`Sending page unload`,t);try{await ie$1(kr,t);}catch(n){throw Y$2.error(`Error sending page unload for ${e} to server`,n),n}}function X$1(r){$i(r);}async function $i(r){if(Y$2.verbose(`Sending event: ${r.name}`,r),Xi$1(r)){Y$2.warn(`Rejecting event ${r.name}`);return}Vn();let e=await et$1();Object.assign(r,e),_o(),ve$4.set(`lastUsedTime`,new Date().getTime());let t=Ki$1(r.name),n=t.toLowerCase().replace(/\s+/g,`-`);try{let o=await ie$1(`/v1/event/track/${n}`,r);Y$2.info(`Event tracked:`,t),Hi$1(r)&&(Be$3().currentPageViewEvent={id:r.id,name:r.name}),qi$1(r,o.data);}catch(o){throw Y$2.error(`Error sending event ${r.name} to server`,o),o}}function Hi$1(r){return qr$4.includes(r.name)?r.name===`View Cart`?!r.properties.drawer:true:false}function qi$1(r,e){Gi$1(r,e).catch(t=>{ke(t,`process-popup-response`,{extra:{event:r,response:e}});}),ji$1(e);}async function Gi$1(r,e){if(!e.triggerData)return;let t=new q$1(e.triggerData);t.occurred=r.occurred,Y$2.log(`${t} will be shown`);let n;try{n=await tr$1(t);}catch(i){Y$2.error(`Failed to refresh the products`,i);return}if(t.items=n,t.contentSource===ve$3.KLAVIYO){new Cr().render(t);return}new(await(import('./renderer-BXbRfFz4-CkZ8WeOK.js'))).FreeformRenderer().renderEngagement(t).catch(i=>{ke(i,`render-popup`,{extra:{event:r},engagementTrigger:t});});}function ji$1(r){r.intent&&(So(r.intent),Oo(r),Y$2.info(`Intent is ${Se$3[r.intent]}`));}function Ki$1(r){return r.replace(`CE `,``).replace(`Trigger`,`Campaign`).replace(`Screen`,`Page`).replace(`App `,``)}function Xi$1(r){return r.trigger?.triggerID===`test`||r.trigger?.triggerID===`preview`?(Y$2.warn(`Not sending event as this is a test trigger`),true):false}
85
85
 
86
86
  var t=class{lastWidth;lastHeight;resizeTimeout=null;debounceDelay=200;onResizeCallback;constructor(e){this.onResizeCallback=e,this.lastWidth=window.innerWidth,this.lastHeight=window.innerHeight,window.addEventListener(`resize`,this.debouncedResize),window.addEventListener(`orientationchange`,this.handleImmediateResize);}destroy(){window.removeEventListener(`resize`,this.debouncedResize),window.removeEventListener(`orientationchange`,this.handleImmediateResize);}handleImmediateResize=()=>{this.triggerResize();};debouncedResize=()=>{this.resizeTimeout!==null&&clearTimeout(this.resizeTimeout),this.resizeTimeout=window.setTimeout(()=>{this.triggerResize();},this.debounceDelay);};triggerResize(){let e=window.innerWidth,i=window.innerHeight;(i!==this.lastHeight||e!==this.lastWidth)&&(this.onResizeCallback(),this.lastWidth=e,this.lastHeight=i);}};
87
87
 
88
88
  var _e=class extends re$4{static storeName=`app`;static{this.storage=ge$5(this.storeName);}};var Hi=` daum[ /]| deusu/|(?:^|[^g])news(?!sapphire)|(?<! (?:channel/|google/))google(?!(app|/google| pixel))|(?<! cu)bots?(?:\\b|_)|(?<!(?:lib))http|(?<![hg]m)score|(?<!cam)scan|24x7|@[a-z][\\w-]+\\.|\\(\\)|\\.com\\b|\\bperl\\b|\\btime/|\\||^[\\w \\.\\-\\(?:\\):%]+(?:/v?\\d+(?:\\.\\d+)?(?:\\.\\d{1,10})*?)?(?:,|$)|^[^ ]{50,}$|^\\d+\\b|^\\W|^\\w*search\\b|^\\w+/[\\w\\(\\)]*$|^active|^ad muncher|^amaya|^avsdevicesdk/|^azure|^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/|agent\\b|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|fetcher|firephp|functionize|grab|headless|httrack|hubspot marketing grader|hydra|ibisbrowser|infrawatch|insight|inspect|iplabel|java(?!;)|library|linkcheck|mail\\.ru/|manager|measure|neustar wpm|node\\b|nutch|offbyone|onetrust|optimize|pageburst|pagespeed|parser|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/`,Ui=/bot|crawl|http|lighthouse|scan|search|spider/i,le;function Fi(){if(le instanceof RegExp)return le;try{le=new RegExp(Hi,`i`);}catch{le=Ui;}return le}function ri(t){return !!t&&Fi().test(t)}var zi=`2.0.4`,lt=500,oi=`user-agent`,Q=``,ni=`?`,Oe=`function`,W=`undefined`,ee=`object`,dt=`string`,k=`browser`,M$1=`cpu`,L$1=`device`,I=`engine`,R$1=`os`,J=`result`,a$1=`name`,r=`type`,n=`vendor`,s$1=`version`,S$1=`architecture`,ve=`major`,o=`model`,ge=`console`,m=`mobile`,b=`tablet`,v=`smarttv`,T=`wearable`,Ae=`xr`,he=`embedded`,de=`inapp`,ut=`brands`,G=`formFactors`,ft=`fullVersionList`,Z=`platform`,wt=`platformVersion`,He=`bitness`,q=`sec-ch-ua`,Vi=q+`-full-version-list`,Bi=q+`-arch`,Wi=q+`-`+He,qi=q+`-form-factors`,ji=q+`-`+m,Gi=q+`-`+o,vi=q+`-`+Z,Ki=vi+`-version`,Ei=[ut,ft,m,o,Z,wt,S$1,G,He],Te=`Amazon`,Y=`Apple`,ai=`ASUS`,si=`BlackBerry`,j=`Google`,ci=`Huawei`,Ze=`Lenovo`,li=`Honor`,De=`LG`,Qe=`Microsoft`,et=`Motorola`,tt=`Nvidia`,di=`OnePlus`,it=`OPPO`,me=`Samsung`,mi=`Sharp`,pe=`Sony`,rt=`Xiaomi`,ot=`Zebra`,pi=`Chrome`,ui=`Chromium`,V=`Chromecast`,Pe=`Edge`,ue=`Firefox`,fe=`Opera`,nt=`Facebook`,fi=`Sogou`,X=`Mobile `,we=` Browser`,mt=`Windows`,x$1=typeof window!==W&&window.navigator?window.navigator:void 0,B$1=x$1&&x$1.userAgentData?x$1.userAgentData:void 0,Yi=function(t,e){var i={},c=e;if(!Me(e)){c={};for(var l in e)for(var u in e[l])c[u]=e[l][u].concat(c[u]?c[u]:[]);}for(var d in t)i[d]=c[d]&&c[d].length%2===0?c[d].concat(t[d]):t[d];return i},Ue=function(t){for(var e={},i=0;i<t.length;i++)e[t[i].toUpperCase()]=t[i];return e},pt=function(t,e){if(typeof t===ee&&t.length>0){for(var i in t)if(N$1(e)==N$1(t[i]))return true;return false}return ie(t)?N$1(e)==N$1(t):false},Me=function(t,e){for(var i in t)return /^(browser|cpu|device|engine|os)$/.test(i)||(e?Me(t[i]):false)},ie=function(t){return typeof t===dt},at=function(t){if(t){for(var e=[],i=te(/\\?\"/g,t).split(`,`),c=0;c<i.length;c++)if(i[c].indexOf(`;`)>-1){var l=Ne(i[c]).split(`;v=`);e[c]={brand:l[0],version:l[1]};}else e[c]=Ne(i[c]);return e}},N$1=function(t){return ie(t)?t.toLowerCase():t},st=function(t){return ie(t)?te(/[^\d\.]/g,t).split(`.`)[0]:void 0},H=function(t){for(var e in t){var i=t[e];typeof i==ee&&i.length==2?this[i[0]]=i[1]:this[i]=void 0;}return this},te=function(t,e){return ie(e)?e.replace(t,Q):e},be=function(t){return te(/\\?\"/g,t)},Ne=function(t,e){if(ie(t))return t=te(/^\s\s*/,t),typeof e===W?t:t.substring(0,lt)},ct=function(t,e){if(!(!t||!e))for(var i=0,c,l,u,d,w,p;i<e.length&&!w;){var h=e[i],O=e[i+1];for(c=l=0;c<h.length&&!w&&h[c];)if(w=h[c++].exec(t),w)for(u=0;u<O.length;u++)p=w[++l],d=O[u],typeof d===ee&&d.length>0?d.length===2?typeof d[1]==Oe?this[d[0]]=d[1].call(this,p):this[d[0]]=d[1]:d.length>=3&&(typeof d[1]===Oe&&!(d[1].exec&&d[1].test)?d.length>3?this[d[0]]=p?d[1].apply(this,d.slice(2)):void 0:this[d[0]]=p?d[1].call(this,p,d[2]):void 0:d.length==3?this[d[0]]=p?p.replace(d[1],d[2]):void 0:d.length==4?this[d[0]]=p?d[3].call(this,p.replace(d[1],d[2])):void 0:d.length>4&&(this[d[0]]=p?d[3].apply(this,[p.replace(d[1],d[2])].concat(d.slice(4))):void 0)):this[d]=p||void 0;i+=2;}},D=function(t,e){for(var i in e)if(typeof e[i]===ee&&e[i].length>0){for(var c=0;c<e[i].length;c++)if(pt(e[i][c],t))return i===ni?void 0:i}else if(pt(e[i],t))return i===ni?void 0:i;return e.hasOwnProperty(`*`)?e[`*`]:t},wi={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:``},bi={embedded:`Automotive`,mobile:`Mobile`,tablet:[`Tablet`,`EInk`],smarttv:`TV`,wearable:`Watch`,xr:[`VR`,`XR`],"?":[`Desktop`,`Unknown`],"*":void 0},Xi={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`},gi={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[s$1,[a$1,X+`Chrome`]],[/webview.+edge\/([\w\.]+)/i],[s$1,[a$1,Pe+` WebView`]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[s$1,[a$1,`Edge`]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[a$1,s$1],[/opios[\/ ]+([\w\.]+)/i],[s$1,[a$1,fe+` Mini`]],[/\bop(?:rg)?x\/([\w\.]+)/i],[s$1,[a$1,fe+` GX`]],[/\bopr\/([\w\.]+)/i],[s$1,[a$1,fe]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[s$1,[a$1,`Baidu`]],[/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],[s$1,[a$1,`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],[a$1,s$1],[/quark(?:pc)?\/([-\w\.]+)/i],[s$1,[a$1,`Quark`]],[/\bddg\/([\w\.]+)/i],[s$1,[a$1,`DuckDuckGo`]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[s$1,[a$1,`UCBrowser`]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[s$1,[a$1,`WeChat`]],[/konqueror\/([\w\.]+)/i],[s$1,[a$1,`Konqueror`]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[s$1,[a$1,`IE`]],[/ya(?:search)?browser\/([\w\.]+)/i],[s$1,[a$1,`Yandex`]],[/slbrowser\/([\w\.]+)/i],[s$1,[a$1,`Smart `+Ze+we]],[/(avast|avg)\/([\w\.]+)/i],[[a$1,/(.+)/,`$1 Secure`+we],s$1],[/\bfocus\/([\w\.]+)/i],[s$1,[a$1,ue+` Focus`]],[/\bopt\/([\w\.]+)/i],[s$1,[a$1,fe+` Touch`]],[/coc_coc\w+\/([\w\.]+)/i],[s$1,[a$1,`Coc Coc`]],[/dolfin\/([\w\.]+)/i],[s$1,[a$1,`Dolphin`]],[/coast\/([\w\.]+)/i],[s$1,[a$1,fe+` Coast`]],[/miuibrowser\/([\w\.]+)/i],[s$1,[a$1,`MIUI`+we]],[/fxios\/([\w\.-]+)/i],[s$1,[a$1,X+ue]],[/\bqihoobrowser\/?([\w\.]*)/i],[s$1,[a$1,`360`]],[/\b(qq)\/([\w\.]+)/i],[[a$1,/(.+)/,`$1Browser`],s$1],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[a$1,/(.+)/,`$1`+we],s$1],[/samsungbrowser\/([\w\.]+)/i],[s$1,[a$1,me+` Internet`]],[/metasr[\/ ]?([\d\.]+)/i],[s$1,[a$1,fi+` Explorer`]],[/(sogou)mo\w+\/([\d\.]+)/i],[[a$1,fi+` Mobile`],s$1],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i],[a$1,s$1],[/(lbbrowser|rekonq)/i],[a$1],[/ome\/([\w\.]+) \w* ?(iron) saf/i,/ome\/([\w\.]+).+qihu (360)[es]e/i],[s$1,a$1],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[a$1,nt],s$1,[r,de]],[/(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],[a$1,s$1,[r,de]],[/\bgsa\/([\w\.]+) .*safari\//i],[s$1,[a$1,`GSA`],[r,de]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[s$1,[a$1,`TikTok`],[r,de]],[/\[(linkedin)app\]/i],[a$1,[r,de]],[/(chromium)[\/ ]([-\w\.]+)/i],[a$1,s$1],[/headlesschrome(?:\/([\w\.]+)| )/i],[s$1,[a$1,pi+` Headless`]],[/wv\).+chrome\/([\w\.]+).+edgw\//i],[s$1,[a$1,Pe+` WebView2`]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[a$1,pi+` WebView`],s$1],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[s$1,[a$1,`Android`+we]],[/chrome\/([\w\.]+) mobile/i],[s$1,[a$1,X+`Chrome`]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[a$1,s$1],[/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i],[s$1,[a$1,X+`Safari`]],[/iphone .*mobile(?:\/\w+ | ?)safari/i],[[a$1,X+`Safari`]],[/version\/([\w\.\,]+) .*(safari)/i],[s$1,a$1],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[a$1,[s$1,`1`]],[/(webkit|khtml)\/([\w\.]+)/i],[a$1,s$1],[/(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i],[[a$1,X+ue],s$1],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[a$1,`Netscape`],s$1],[/(wolvic|librewolf)\/([\w\.]+)/i],[a$1,s$1],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[s$1,[a$1,ue+` 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],[a$1,[s$1,/_/g,`.`]],[/(cobalt)\/([\w\.]+)/i],[a$1,[s$1,/[^\d\.]+./,Q]]],cpu:[[/\b((amd|x|x86[-_]?|wow|win)64)\b/i],[[S$1,`amd64`]],[/(ia32(?=;))/i,/\b((i[346]|x)86)(pc)?\b/i],[[S$1,`ia32`]],[/\b(aarch64|arm(v?[89]e?l?|_?64))\b/i],[[S$1,`arm64`]],[/\b(arm(v[67])?ht?n?[fl]p?)\b/i],[[S$1,`armhf`]],[/( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i],[[S$1,`arm`]],[/((ppc|powerpc)(64)?)( mac|;|\))/i],[[S$1,/ower/,Q,N$1]],[/ sun4\w[;\)]/i],[[S$1,`sparc`]],[/\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i],[[S$1,N$1]]],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],[o,[n,me],[r,b]],[/\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],[o,[n,me],[r,m]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[o,[n,Y],[r,m]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[o,[n,Y],[r,b]],[/(macintosh);/i],[o,[n,Y]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[o,[n,mi],[r,m]],[/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i],[o,[n,li],[r,b]],[/honor([-\w ]+)[;\)]/i],[o,[n,li],[r,m]],[/\b((?:ag[rs][2356]?k?|bah[234]?|bg[2o]|bt[kv]|cmr|cpn|db[ry]2?|jdn2|got|kob2?k?|mon|pce|scm|sht?|[tw]gr|vrd)-[ad]?[lw][0125][09]b?|605hw|bg2-u03|(?:gem|fdr|m2|ple|t1)-[7a]0[1-4][lu]|t1-a2[13][lw]|mediapad[\w\. ]*(?= bui|\)))\b(?!.+d\/s)/i],[o,[n,ci],[r,b]],[/(?:huawei)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[o,[n,ci],[r,m]],[/oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i,/\b((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i],[[o,/_/g,` `],[n,rt],[r,b]],[/\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],[[o,/_/g,` `],[n,rt],[r,m]],[/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],[o,[n,di],[r,m]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[o,[n,it],[r,m]],[/\b(opd2(\d{3}a?))(?: bui|\))/i],[o,[n,D,{OnePlus:[`203`,`304`,`403`,`404`,`413`,`415`],"*":it}],[r,b]],[/(vivo (5r?|6|8l?|go|one|s|x[il]?[2-4]?)[\w\+ ]*)(?: bui|\))/i],[o,[n,`BLU`],[r,m]],[/; vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[o,[n,`Vivo`],[r,m]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[o,[n,`Realme`],[r,m]],[/(ideatab[-\w ]+|602lv|d-42a|a101lv|a2109a|a3500-hv|s[56]000|pb-6505[my]|tb-?x?\d{3,4}(?:f[cu]|xu|[av])|yt\d?-[jx]?\d+[lfmx])( bui|;|\)|\/)/i,/lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i],[o,[n,Ze],[r,b]],[/lenovo[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i],[o,[n,Ze],[r,m]],[/\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],[o,[n,et],[r,m]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[o,[n,et],[r,b]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[o,[n,De],[r,b]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+(?!.*(?:browser|netcast|android tv|watch|webos))(\w+)/i,/\blg-?([\d\w]+) bui/i],[o,[n,De],[r,m]],[/(nokia) (t[12][01])/i],[n,o,[r,b]],[/(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i,/nokia[-_ ]?(([-\w\. ]*))/i],[[o,/_/g,` `],[r,m],[n,`Nokia`]],[/(pixel (c|tablet))\b/i],[o,[n,j],[r,b]],[/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],[o,[n,j],[r,m]],[/(google) (pixelbook( go)?)/i],[n,o],[/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],[o,[n,pe],[r,m]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[o,`Xperia Tablet`],[n,pe],[r,b]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[o,[n,Te],[r,b]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[o,/(.+)/g,`Fire Phone $1`],[n,Te],[r,m]],[/(playbook);[-\w\),; ]+(rim)/i],[o,n,[r,b]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[o,[n,si],[r,m]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[o,[n,ai],[r,b]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[o,[n,ai],[r,m]],[/(nexus 9)/i],[o,[n,`HTC`],[r,b]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[n,[o,/_/g,` `],[r,m]],[/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],[o,[n,`TCL`],[r,b]],[/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],[o,[n,`TCL`],[r,m]],[/(itel) ((\w+))/i],[[n,N$1],o,[r,D,{tablet:[`p10001l`,`w7001`],"*":`mobile`}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[o,[n,`Acer`],[r,b]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[o,[n,`Meizu`],[r,m]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[o,[n,`Ulefone`],[r,m]],[/; (energy ?\w+)(?: bui|\))/i,/; energizer ([\w ]+)(?: bui|\))/i],[o,[n,`Energizer`],[r,m]],[/; cat (b35);/i,/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],[o,[n,`Cat`],[r,m]],[/((?:new )?andromax[\w- ]+)(?: bui|\))/i],[o,[n,`Smartfren`],[r,m]],[/droid.+; (a(in)?(0(15|59|6[35])|142)p?)/i],[o,[n,`Nothing`],[r,m]],[/; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i,/archos ?(5|gamepad2?|([\w ]*[t1789]|hello) ?\d+[\w ]*)( b|\))/i],[o,[n,`Archos`],[r,b]],[/archos ([\w ]+)( b|\))/i,/; (ac[3-6]\d\w{2,8})( b|\))/i],[o,[n,`Archos`],[r,m]],[/; (n159v)/i],[o,[n,`HMD`],[r,m]],[/(imo) (tab \w+)/i,/(infinix|tecno) (x1101b?|p904|dp(7c|8d|10a)( pro)?|p70[1-3]a?|p904|t1101)/i],[n,o,[r,b]],[/(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],[n,o,[r,m]],[/(kobo)\s(ereader|touch)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i],[n,o,[r,b]],[/(surface duo)/i],[o,[n,Qe],[r,b]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[o,[n,`Fairphone`],[r,m]],[/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i],[o,[n,tt],[r,b]],[/(sprint) (\w+)/i],[n,o,[r,m]],[/(kin\.[onetw]{3})/i],[[o,/\./g,` `],[n,Qe],[r,m]],[/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[o,[n,ot],[r,b]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[o,[n,ot],[r,m]],[/smart-tv.+(samsung)/i],[n,[r,v]],[/hbbtv.+maple;(\d+)/i],[[o,/^/,`SmartTV`],[n,me],[r,v]],[/(vizio)(?: |.+model\/)(\w+-\w+)/i,/tcast.+(lg)e?. ([-\w]+)/i],[n,o,[r,v]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[n,De],[r,v]],[/(apple) ?tv/i],[n,[o,Y+` TV`],[r,v]],[/crkey.*devicetype\/chromecast/i],[[o,V+` Third Generation`],[n,j],[r,v]],[/crkey.*devicetype\/([^/]*)/i],[[o,/^/,`Chromecast `],[n,j],[r,v]],[/fuchsia.*crkey/i],[[o,V+` Nest Hub`],[n,j],[r,v]],[/crkey/i],[[o,V],[n,j],[r,v]],[/(portaltv)/i],[o,[n,nt],[r,v]],[/droid.+aft(\w+)( bui|\))/i],[o,[n,Te],[r,v]],[/(shield \w+ tv)/i],[o,[n,tt],[r,v]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[o,[n,mi],[r,v]],[/(bravia[\w ]+)( bui|\))/i],[o,[n,pe],[r,v]],[/(mi(tv|box)-?\w+) bui/i],[o,[n,rt],[r,v]],[/Hbbtv.*(technisat) (.*);/i],[n,o,[r,v]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[n,/.+\/(\w+)/,`$1`,D,{LG:`lge`}],[o,Ne],[r,v]],[/droid.+; ([\w- ]+) (?:android tv|smart[- ]?tv)/i],[o,[r,v]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:|large screen[\w ]+safari)\b/i],[[r,v]],[/(playstation \w+)/i],[o,[n,pe],[r,ge]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[o,[n,Qe],[r,ge]],[/(ouya)/i,/(nintendo) (\w+)/i,/(retroid) (pocket ([^\)]+))/i],[n,o,[r,ge]],[/droid.+; (shield)( bui|\))/i],[o,[n,tt],[r,ge]],[/\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i],[o,[n,me],[r,T]],[/((pebble))app/i,/(asus|google|lg|oppo) ((pixel |zen)?watch[\w ]*)( bui|\))/i],[n,o,[r,T]],[/(ow(?:19|20)?we?[1-3]{1,3})/i],[o,[n,it],[r,T]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[o,[n,Y],[r,T]],[/(opwwe\d{3})/i],[o,[n,di],[r,T]],[/(moto 360)/i],[o,[n,et],[r,T]],[/(smartwatch 3)/i],[o,[n,pe],[r,T]],[/(g watch r)/i],[o,[n,De],[r,T]],[/droid.+; (wt63?0{2,3})\)/i],[o,[n,ot],[r,T]],[/droid.+; (glass) \d/i],[o,[n,j],[r,Ae]],[/(pico) (4|neo3(?: link|pro)?)/i],[n,o,[r,Ae]],[/(quest( \d| pro)?s?).+vr/i],[o,[n,nt],[r,Ae]],[/mobile vr; rv.+firefox/i],[[r,Ae]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[n,[r,he]],[/(aeobc)\b/i],[o,[n,Te],[r,he]],[/(homepod).+mac os/i],[o,[n,Y],[r,he]],[/windows iot/i],[[r,he]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+?(mobile|vr|\d) safari/i],[o,[r,D,{mobile:`Mobile`,xr:`VR`,"*":b}]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[r,b]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[r,m]],[/droid .+?; ([\w\. -]+)( bui|\))/i],[o,[n,`Generic`]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[s$1,[a$1,Pe+`HTML`]],[/(arkweb)\/([\w\.]+)/i],[a$1,s$1],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[s$1,[a$1,`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],[a$1,s$1],[/ladybird\//i],[[a$1,`LibWeb`]],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[s$1,a$1]],os:[[/(windows nt) (6\.[23]); arm/i],[[a$1,/N/,`R`],[s$1,D,wi]],[/(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],[a$1,s$1],[/windows nt ?([\d\.\)]*)(?!.+xbox)/i,/\bwin(?=3| ?9|n)(?:nt| 9x )?([\d\.;]*)/i],[[s$1,/(;|\))/g,``,D,wi],[a$1,mt]],[/(windows ce)\/?([\d\.]*)/i],[a$1,s$1],[/[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[s$1,/_/g,`.`],[a$1,`iOS`]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+(haiku|morphos))/i],[[a$1,`macOS`],[s$1,/_/g,`.`]],[/android ([\d\.]+).*crkey/i],[s$1,[a$1,V+` Android`]],[/fuchsia.*crkey\/([\d\.]+)/i],[s$1,[a$1,V+` Fuchsia`]],[/crkey\/([\d\.]+).*devicetype\/smartspeaker/i],[s$1,[a$1,V+` SmartSpeaker`]],[/linux.*crkey\/([\d\.]+)/i],[s$1,[a$1,V+` Linux`]],[/crkey\/([\d\.]+)/i],[s$1,[a$1,V]],[/droid ([\w\.]+)\b.+(android[- ]x86)/i],[s$1,a$1],[/(ubuntu) ([\w\.]+) like android/i],[[a$1,/(.+)/,`$1 Touch`],s$1],[/(harmonyos)[\/ ]?([\d\.]*)/i,/(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen)\w*[-\/\.; ]?([\d\.]*)/i],[a$1,s$1],[/\(bb(10);/i],[s$1,[a$1,si]],[/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i],[s$1,[a$1,`Symbian`]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[s$1,[a$1,ue+` OS`]],[/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i,/webos(?:[ \/]?|\.tv-20(?=2[2-9]))(\d[\d\.]*)/i],[s$1,[a$1,`webOS`]],[/web0s;.+?(?:chr[o0]me|safari)\/(\d+)/i],[[s$1,D,{25:`120`,24:`108`,23:`94`,22:`87`,6:`79`,5:`68`,4:`53`,3:`38`,2:`538`,1:`537`,"*":`TV`}],[a$1,`webOS`]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[s$1,[a$1,`watchOS`]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[a$1,`Chrome OS`],s$1],[/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],[a$1,s$1],[/(sunos) ?([\d\.]*)/i],[[a$1,`Solaris`],s$1],[/\b(beos|os\/2|amigaos|openvms|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[a$1,s$1]]},Le=(function(){var t={init:{},isIgnore:{},isIgnoreRgx:{},toString:{}};return H.call(t.init,[[k,[a$1,s$1,ve,r]],[M$1,[S$1]],[L$1,[r,o,n]],[I,[a$1,s$1]],[R$1,[a$1,s$1]]]),H.call(t.isIgnore,[[k,[s$1,ve]],[I,[s$1]],[R$1,[s$1]]]),H.call(t.isIgnoreRgx,[[k,/ ?browser$/i],[R$1,/ ?os$/i]]),H.call(t.toString,[[k,[a$1,s$1]],[M$1,[S$1]],[L$1,[n,o]],[I,[a$1,s$1]],[R$1,[a$1,s$1]]]),t})(),Ji=function(t,e){var i=Le.init[e],c=Le.isIgnore[e]||0,l=Le.isIgnoreRgx[e]||0,u=Le.toString[e]||0;function d(){H.call(this,i);}return d.prototype.getItem=function(){return t},d.prototype.withClientHints=function(){return B$1?B$1.getHighEntropyValues(Ei).then(function(w){return t.setCH(new yi(w,false)).parseCH().get()}):t.parseCH().get()},d.prototype.withFeatureCheck=function(){return t.detectFeature().get()},e!=J&&(d.prototype.is=function(w){var p=false;for(var h in this)if(this.hasOwnProperty(h)&&!pt(c,h)&&N$1(l?te(l,this[h]):this[h])==N$1(l?te(l,w):w)){if(p=true,w!=W)break}else if(w==W&&p){p=!p;break}return p},d.prototype.toString=function(){var w=Q;for(var p in u)typeof this[u[p]]!==W&&(w+=(w?` `:Q)+this[u[p]]);return w||W}),B$1||(d.prototype.then=function(w){var p=this,h=function(){for(var U in p)p.hasOwnProperty(U)&&(this[U]=p[U]);};h.prototype={is:d.prototype.is,toString:d.prototype.toString};var O=new h;return w(O),O}),new d};function yi(t,e){if(t=t||{},H.call(this,Ei),e)H.call(this,[[ut,at(t[q])],[ft,at(t[Vi])],[m,/\?1/.test(t[ji])],[o,be(t[Gi])],[Z,be(t[vi])],[wt,be(t[Ki])],[S$1,be(t[Bi])],[G,at(t[qi])],[He,be(t[Wi])]]);else for(var i in t)this.hasOwnProperty(i)&&typeof t[i]!==W&&(this[i]=t[i]);}function hi(t,e,i,c){return this.get=function(l){return l?this.data.hasOwnProperty(l)?this.data[l]:void 0:this.data},this.set=function(l,u){return this.data[l]=u,this},this.setCH=function(l){return this.uaCH=l,this},this.detectFeature=function(){if(x$1&&x$1.userAgent==this.ua)switch(this.itemType){case k:x$1.brave&&typeof x$1.brave.isBrave==Oe&&this.set(a$1,`Brave`);break;case L$1:!this.get(r)&&B$1&&B$1[m]&&this.set(r,m),this.get(o)==`Macintosh`&&x$1&&typeof x$1.standalone!==W&&x$1.maxTouchPoints&&x$1.maxTouchPoints>2&&this.set(o,`iPad`).set(r,b);break;case R$1:!this.get(a$1)&&B$1&&B$1[Z]&&this.set(a$1,B$1[Z]);break;case J:var l=this.data,u=function(d){return l[d].getItem().detectFeature().get()};this.set(k,u(k)).set(M$1,u(M$1)).set(L$1,u(L$1)).set(I,u(I)).set(R$1,u(R$1));}return this},this.parseUA=function(){return this.itemType!=J&&ct.call(this.data,this.ua,this.rgxMap),this.itemType==k&&this.set(ve,st(this.get(s$1))),this},this.parseCH=function(){var l=this.uaCH,u=this.rgxMap;switch(this.itemType){case k:case I:var d=l[ft]||l[ut],w;if(d)for(var p in d){var h=d[p].brand||d[p],O=d[p].version;this.itemType==k&&!/not.a.brand/i.test(h)&&(!w||/Chrom/.test(w)&&h!=ui||w==Pe&&/WebView2/.test(h))&&(h=D(h,Xi),w=this.get(a$1),w&&!/Chrom/.test(w)&&/Chrom/.test(h)||this.set(a$1,h).set(s$1,O).set(ve,st(O)),w=h),this.itemType==I&&h==ui&&this.set(s$1,O);}break;case M$1:var U=l[S$1];U&&(U&&l[He]==`64`&&(U+=`64`),ct.call(this.data,U+`;`,u));break;case L$1:if(l[m]&&this.set(r,m),l[o]&&(this.set(o,l[o]),!this.get(r)||!this.get(n))){var ne={};ct.call(ne,`droid 9; `+l[o]+`)`,u),!this.get(r)&&ne.type&&this.set(r,ne.type),!this.get(n)&&ne.vendor&&this.set(n,ne.vendor);}if(l[G]){var Ee;if(typeof l[G]!=`string`)for(var vt=0;!Ee&&vt<l[G].length;)Ee=D(l[G][vt++],bi);else Ee=D(l[G],bi);this.set(r,Ee);}break;case R$1:var qe=l[Z];if(qe){var je=l[wt];qe==mt&&(je=parseInt(st(je),10)>=13?`11`:`10`),this.set(a$1,qe).set(s$1,je);}this.get(a$1)==mt&&l[o]==`Xbox`&&this.set(a$1,`Xbox`).set(s$1,void 0);break;case J:var Mi=this.data,ae=function(Ni){return Mi[Ni].getItem().setCH(l).parseCH().get()};this.set(k,ae(k)).set(M$1,ae(M$1)).set(L$1,ae(L$1)).set(I,ae(I)).set(R$1,ae(R$1));}return this},H.call(this,[[`itemType`,t],[`ua`,e],[`uaCH`,c],[`rgxMap`,i],[`data`,Ji(this,t)]]),this}function _(t,e,i){if(typeof t===ee?(Me(t,true)?(typeof e===ee&&(i=e),e=t):(i=t,e=void 0),t=void 0):typeof t===dt&&!Me(e,true)&&(i=e,e=void 0),i&&typeof i.append===Oe){var c={};i.forEach(function(p,h){c[h]=p;}),i=c;}if(!(this instanceof _))return new _(t,e,i).getResult();var l=typeof t===dt?t:i&&i[oi]?i[oi]:x$1&&x$1.userAgent?x$1.userAgent:Q,u=new yi(i,true),d=e?Yi(gi,e):gi,w=function(p){return p==J?function(){return new hi(p,l,d,u).set(`ua`,l).set(k,this.getBrowser()).set(M$1,this.getCPU()).set(L$1,this.getDevice()).set(I,this.getEngine()).set(R$1,this.getOS()).get()}:function(){return new hi(p,l,d[p],u).parseUA().get()}};return H.call(this,[[`getBrowser`,w(k)],[`getCPU`,w(M$1)],[`getDevice`,w(L$1)],[`getEngine`,w(I)],[`getOS`,w(R$1)],[`getResult`,w(J)],[`getUA`,function(){return l}],[`setUA`,function(p){return ie(p)&&(l=p.length>lt?Ne(p,lt):p),this}]]).setUA(l),this}_.VERSION=zi;_.BROWSER=Ue([a$1,s$1,ve,r]);_.CPU=Ue([S$1]);_.DEVICE=Ue([o,n,r,ge,m,v,b,T,he]);_.ENGINE=_.OS=Ue([a$1,s$1]);var Fe=class{modifications=[];constructor(){le$4(`.lc-hide {display: none !important;height: 0 !important;}
89
89
  .lc-display-block {display: block !important;}
90
- .lc-display-inline {display: inline !important;}`,document.body);}execute(e){for(let i of e){if(!i.experimentConfig)continue;this.executeExperiment(i)&&this.trackExperimentRan(i);}if(document.querySelector(`#lc-hide-body`)?.remove(),!document.body){Jn$1(`No body element found`,`error`);return}this.setupMutationObserver();}executeExperiment(e){let i=e.experimentConfig?.modifications;if(!i?.length)return Y$2.log(`Nothing to experiment`,e.toString()),true;let c=false;for(let l of i){if(!l.cssSelector){Y$2.verbose(`No CSS Selector available`,e?.toString());continue}this.modifications.push(l);let u=Array.from(document.querySelectorAll(l.cssSelector));u?.length&&(this.executeSingleModification(l,u),c=true);}return c}executeSingleModification(e,i){if(i?.length)for(let c of i)Object.assign(c.style,e.style),e.display===`HIDE`?c.classList.add(`lc-hide`):e.display===`BLOCK`?c.classList.add(`lc-display-block`):e.display===`INLINE`&&c.classList.add(`lc-display-inline`),e.type===`TEXT`&&e.text?c.innerHTML=e.text:e.type===`IMAGE`&&this.updateImage(e,c),e.moveTo?.selector&&this.changePlacement(e,c).catch(console.error);}async changePlacement(e,i){let c=await Nn$3(e.moveTo.selector);if(c)switch(e.moveTo.position){case ae$3.BEFORE1:i.nextElementSibling!==c&&c.parentElement?.insertBefore(i,c);break;case ae$3.INSIDE_FIRST1:c.firstChild!==i&&c.insertBefore(i,c.firstChild);break;case ae$3.INSIDE_LAST1:c.lastChild!==i&&c.appendChild(i);break;case ae$3.AFTER1:default:i.previousElementSibling!==c&&c.parentElement?.insertBefore(i,c.nextSibling);}}trackExperimentRan(e){if(e.id===`preview`){Y$2.warn(`Skipping experiment attribution as its preview`,e.toString());return}ki({name:`CE Experiment Start`,experiment:new mt$2(e)}).catch(i=>{Y$2.error(`Fail to track experiment`,i);});}setupMutationObserver(){new MutationObserver(i=>{i.forEach(c=>{c.addedNodes.forEach(l=>{l instanceof HTMLElement&&this.modifications.forEach(u=>{if(l.matches&&l.matches(u.cssSelector))Y$2.verbose(`1. Re-applying experiment`,u.toString()),this.executeSingleModification(u,[l]);else if(l.querySelectorAll){let d=Array.from(l.querySelectorAll(u.cssSelector));if(!d.length)return;Y$2.verbose(`2. Re-applying experiment`,u.toString()),this.executeSingleModification(u,d);}});});});}).observe(document.body,{childList:true,subtree:true});}updateImage(e,i){let c=e.image?.lg?.src,l=e.image?.sm?.src;!c&&!l||(i instanceof HTMLPictureElement?this.updatePictureElement({desktop:c,mobile:l},i):this.updateImageElement({desktop:c,mobile:l},i));}updateImageElement(e,i){M$3()&&e.mobile?(i.setAttribute(`src`,e.mobile),i.removeAttribute(`srcset`)):e.desktop&&(i.setAttribute(`src`,e.desktop),i.removeAttribute(`srcset`));}updatePictureElement(e,i){if(i.innerHTML=``,e.mobile){let l=document.createElement(`source`);l.srcset=e.mobile,l.media=`(max-width: 767px)`,i.append(l);}if(e.desktop){let l=document.createElement(`source`);l.srcset=e.desktop,l.media=`(min-width: 768px)`,i.append(l);}let c=document.createElement(`img`);c.src=e.desktop??e.mobile??``,i.append(c);}};async function ki(t){let e=await et$1();await ie$1(`/v1/event/experiment`,r$2(r$2({},t),e));}function ze(){Zi().catch(t=>ke(t,`fetch-experiments`));}async function Zi(){Be$3().activeExperiments&&(await le$2(J$1),await Qi());}async function Qi(){Y$2.info(`Fetch experiments after ⏰`,en()+` of SDK load`);ie$1(`/v1/engagement/experiments`,r$2({},await et$1())).then(async i=>{Y$2.info(`Experiments fetched ${Jr$3(i.timeTakenMs)}`);let c=i.data.experiments.map(l=>new q$1(l));new Fe().execute(c);}).catch(i=>{Y$2.error(`Error sending experiment getter`,i);});}function Si(){let t=he$4.get();!t.gaMeasurementID||!t.gaEnabled||ir();}async function tr(){let t=await ce$3.get(`gacid`),e=await rr();if(t!==e)return await ce$3.set(`gacid`,e),e}async function ir(){let t=await tr();t&&Al({gaClientID:t});}async function rr(){let e=he$4.get().gaMeasurementID;if(!(!e||!window.gtag))return new Promise(i=>{window.gtag(`get`,e,`client_id`,c=>{i(c);});})}async function xi(t){Y$2.verbose(`Received app configuration`,t),t.currencyCount=t.currencies?.length;let e=g.globalRef.config.update(t);Si(),P.initialize(),e.website&&(Vi$2(e.website.commonJS),le$4(e.website.commonCSS)),window.CooeeSDK.cartDrawerToggle$.pipe(Fe$2(10)).subscribe(async({open:i})=>{Y$2.info(`Cart drawer is now`,i?`open`:`closed`),i&&(Kf(),await or());});}function Ci(t){g.globalRef.apiURLs=t;}async function or(){let t=await h.getCurrent().getNormalisedCart(),e={value:t.amount,currency:t.currency};qn(new Ir$1(`View Cart`,{items:t.items,amount:e,drawer:true}));}var Ve=class{runtimeData=Be$3();meddle(){let e=g.globalRef;e.profile=e.profile??[],e.events=e.events??[],e.page=e.page??[],this.meddlePage(),this.meddleEvents(),this.meddleProfile(),this.exposeMethods();}exposeMethods(){let e=g.globalRef;e.loadWidgets=e.loadCartWidgets=e.loadPageWidgets=()=>{Co();},e.loadExperiments=()=>{ze();},e.testCartUpdate=this.testCartUpdate.bind(this),e.previewWidget=g.previewWidget.bind(g),e.previewPopup=g.previewPopup.bind(g),e.executeCTA=(i,c)=>{new He$1(i).execute(c);},e.sendEvent=i=>{qn(i);};}overwritePush(e,i){On$1(e,`push`,i);}meddleEvents(){this.overwritePush(g.globalRef.events,(...e)=>{this.processEvent(e[0]);}),g.globalRef.events.forEach(this.processEvent.bind(this));}meddleProfile(){this.overwritePush(g.globalRef.profile,(...e)=>{this.processProfile(e[0]);}),g.globalRef.profile.forEach(this.processProfile.bind(this));}processEvent(e){e&&(zr$3.includes(e[0])?g.sendEvent(e[0],e[1],r$2({occurred:this.runtimeData.jsLoadTime},e[2])):g.sendEvent(e[0],e[1],e[2]));}processProfile(e){e&&g.updateProfile(e);}meddlePage(){this.overwritePush(g.globalRef.page,(...e)=>{this.processPage(e[0]);}),g.globalRef.page.forEach(this.processPage.bind(this));}processPage(e){e.appID&&g.authenticate(e),e.currentItem&&nr(e.currentItem),e.currency&&(Be$3().currencyCode=e.currency),e.shopCurrency&&(this.runtimeData.shopCurrencyCode=e.shopCurrency),e.moneyFormat&&(this.runtimeData.moneyFormat=e.moneyFormat),e.jsLoad&&(this.runtimeData.jsLoadTime=e.jsLoad),e.locale&&(this.runtimeData.locale=e.locale),e.pageName&&g.setPageName(e.pageName),e.activeExperiment&&(this.runtimeData.activeExperiments=e.activeExperiment),e.cart&&h.getCurrent().update(e.cart),e.configurations&&xi(e.configurations),e.apiURLs&&Ci(e.apiURLs),e.customContext&&(this.runtimeData.customContext=r$2(r$2({},this.runtimeData.customContext),e.customContext));}async testCartUpdate(){if(Be$3().pageName!==`product`){window.alert(`This feature is only available on a product page`);return}let e=Hd();if(e||(e=Be$3().currentItem?.vID),!e){window.alert(`Could not find a variant to test. Please try a different product page`);return}let i=new q$1({id:`preview`,shortID:`1`,redirectBehaviour:he$3.CART_DRAWER});await new He$1(new Ne$1(new Date,i)).execute({clickAction:{at:pe$4.ADD_TO_CART},embeddedItem:new at$2({vID:e})});}};function nr(t){let e=Be$3();if(e.currentItem&&e.currentItem.vID!==t.vID){let i=new CustomEvent(`letscooee:variant-change`,{detail:{variantID:t.vID,productID:t.mID}});document.dispatchEvent(i);}e.currentItem=new at$2(t);}var re=class{static SESSION_STORAGE=window.sessionStorage;static SESSION_STORAGE_KEY_PREFIX=`cooee`.concat(`-`);static getString(e,i){return this.getItem(e)||i}static setString(e,i){this.setItem(e,i);}static remove(e){this.removeItem(e);}static getItem(e){return this.SESSION_STORAGE.getItem(this.SESSION_STORAGE_KEY_PREFIX.concat(e))}static setItem(e,i){this.SESSION_STORAGE.setItem(this.SESSION_STORAGE_KEY_PREFIX.concat(e),i);}static removeItem(e){this.SESSION_STORAGE.removeItem(this.SESSION_STORAGE_KEY_PREFIX.concat(e));}};var ar=1e3,sr=10,bt=0,gt=new Date;function ht(t){re.remove(`sleid`),gt=t??new Date;}function Ri(){if(window.scrollY){let t=Ai();Ii(t)&&_i(t);}ht$3(()=>{cr();});}function cr(){Tr$1(window,`scroll`).pipe(Fe$2(ar),q$2(()=>{let t=Ai();if(t>100){Y$2.warn(`Received scroll percent is more than 100`,t);return}if(Ii(t))return t})).subscribe(t=>{_i(t);});}function Ii(t){return Math.abs(bt-t)>=sr||bt!==t&&t===100}function _i(t){if(t==null)return;let e={percent:t,timeMS:new Date().getTime()-gt.getTime()};bt=t;let c=new Ir$1(`CE Scroll`,e,null,re.getString(`sleid`,``));qn(c),re.setString(`sleid`,c.id.toHexString()),gt=new Date(c.occurred);}function Ai(){let t=window.document.body.scrollHeight,e=window.innerHeight;return Math.ceil((window.scrollY+e)/t*100)}function Ti(){lr();}function lr(){let t=window.fetch;try{window.fetch=async function(e,i){try{await dr(e,i);}catch(c){ke(c,`modify-graphql-request`,{extra:{body:JSON.stringify(i?.body)}});}return t(e,i)};}catch(e){console.warn(`Fail to override fetch.`,`Cooee won't be able to track "Buy Now Clicked" KPI.`),Y$2.error(e);}Y$2.verbose(`Securely overwritten window.fetch method for graphql query`);}async function dr(t,e){let i=typeof t==`string`?t:t instanceof Request?t.url:``;if(!(i.includes(`graphql.json`)&&e?.method===`POST`)||!e.body)return;let c;if(typeof e.body==`string`)try{c=JSON.parse(e.body);}catch{return}else c=e.body;c?.variables?.input&&(Y$2.verbose(`Intercepted fetch request of:`,i),c?.query.includes(`cartCreate`)&&(e.body=await mr(c),pr()));}async function mr(t){let e=t.variables.input.attributes??[],i=await Ln(`Buy Now`);return t.variables.input.attributes=[...e,...i],JSON.stringify(t)}function pr(){let t=Be$3().currentItem;if(!t)return;qn(new Ir$1(`Buy Now Clicked`,{items:[t]}));}var oe=class{constructor(e,i){this.selectors=e;this.eventName=i;this.selectorString=e.join(`,`);}static INSTANCE;elements;selectorString;clickListenerCallback=e=>{let i=e.currentTarget;qn(new Ir$1(this.eventName,{class:i.className||void 0,tagName:i.tagName||void 0,id:i.id||void 0})),this.removeClickListener(this.clickListenerCallback);};listenSilently(){this.listen().catch(e=>Y$2.error(e));}async listen(){this.elements=await Ar$3(this.selectorString),this.elements.forEach(e=>{e.addEventListener(`click`,this.clickListenerCallback);});}removeClickListener(e){this.elements?.forEach(i=>{i.removeEventListener(`click`,e);});}};var Be=class t extends oe{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(t.selectors,`Item Thumbnail Clicked`);}static getInstance(){return this.INSTANCE||(this.INSTANCE=new t),this.INSTANCE}};var We=class t extends oe{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(t.selectors,`Review Clicked`);}static getInstance(){return this.INSTANCE||(this.INSTANCE=new t),this.INSTANCE}};var ur=[`.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(`,`);function Di(){ht$3(()=>{Y$2.verbose(`Execution order:`,`document ready`),fr();});}function fr(){let t=window.location.hash?.substring(1);if(t)if(t.includes(`initiate-checkout`)){document.dispatchEvent(new Event(`letscooee:outbound:third-party-initiate-checkout`));let e=document.querySelector(ur);if(!e){Y$2.verbose(`No clickable cart checkout button found`);return}Y$2.verbose(`Clickable cart checkout button found`,e),e.click();}else t.includes(`open-cart-drawer`)&&P.get().open();}function Pi(){window.addEventListener(`kp-modal:opened`,()=>{Be$3().isGoKwikPopupOpen=true;}),window.addEventListener(`user-loggedin`,t=>{let{token:e}=t.detail;e&&Qn({goKwikToken:e});}),window.gokwikSdk?Li():window.addEventListener(`gokwikLoaded`,Li);}function Li(){window.gokwikSdk&&window.gokwikSdk.on(`checkout_initiated`,async()=>{let t=await h.getCurrent().getNormalisedCart();qn(new Ir$1(`Checkout Started`,{via:`GoKwik`,items:t.items,cartToken:t.token,amount:{value:t.amount,currency:t.currency}}));});}var g=class{static globalRef;static authenticated;static async initForMerchantWebsiteOnly(e){if(!window.cooeeSDKPreview){if(Y$2.info(`Initialising SDK`),ri(navigator.userAgent)){Y$2.info(`This seems to be a bot. Disabling SDK`);return}this.initGlobalReference(e),await Wh(),this.autoAuthenticate(),new Ve().meddle(),pl(),ze(),wr(),Kh(),Mm(),Ti(),Di(),Ri(),We.getInstance().listenSilently(),Be.getInstance().listenSilently(),Pi(),br(),Wn$1(),Xo(),_e.remove(`conf`).catch(i=>{Y$2.error(`Fail to remove App Config from local storage`,i);});}}static initGlobalReference(e){window.CooeeSDK||On$1(window,`CooeeSDK`,{}),this.globalRef=window.CooeeSDK,On$1(this.globalRef,`config`,new he$4),On$1(this.globalRef,`runtimeData`,{sdkLoadTime:e,jsLoadTime:new Date,lastEnterActive:new Date}),On$1(this.globalRef,`uaParser`,new _,true),On$1(this.globalRef,`cart`,h.getCurrent()),On$1(this.globalRef,`cartChange$`,Um()),On$1(this.globalRef,`cartDrawerToggle$`,P.cartDrawerToggle$.asObservable()),Y$2.verbose(`Global reference initialised`),new t(()=>{this.globalRef.uaParser=new _;});}static autoAuthenticate(){let e=Nn();e&&this.authenticate({shopifyShop:e});}static authenticate(e){if(this.authenticated)return;Y$2.info(`Begin auth after ⏰`,en(),`of SDK load`);let i=e.appID?.trim(),c=e.shopifyShop;if((Dn(i)||i.length!==24)&&Dn(c)){Y$2.warn(`Cooee App ID or Shop name is not configured`);return}this.authenticated=true,Vh(e);}static sendEvent(e,i,c){let l=new Ir$1(e,i,c?.triggerData);c?.occurred&&(l.occurred=c.occurred),qn(l);}static updateProfile(e){for(let i in e)if(i.toLowerCase().startsWith(`ce `))throw new Error(`User property name cannot start with 'CE '`);Qn(e);}static setPageName(e){if(!e)return;let i=Be$3(),c=i.pageName;if(e===c)return;if(i.pageName=e,Yr$3.some(d=>e.includes(d))){ht();return}let l={};c&&(l.ps=c);let u=new Ir$1(`CE Screen View`,l);u.occurred=i.jsLoadTime,qn(u),ht(u.occurred);}static previewPopup(e,i){import('./renderer-BEuag36y-BHXHkvk0.js').then(({FreeformRenderer:c})=>{new c(i).render(e);});}static previewWidget(e){new N$2(new q$1(e)).renderSilently();}};function wr(){window.CooeeSDK.cartChange$.subscribe(()=>{Co();});}function br(){if(window.opener){try{window.opener.postMessage({action:`COOEE_READY_FOR_PREVIEW`},`*`);}catch(t){Y$2.error(t);}window.addEventListener(`message`,t=>{if(Y$2.verbose(`Received event`,t),!t.origin.includes(`letscooee.com`)&&!t.origin.includes(`localhost`))return;let e=t.data;typeof e==`object`&&(e.action===`POPUP_PREVIEW`?(g.previewPopup(e.engagementTrigger),t.source?.postMessage({action:`PREVIEW_SUCCESSFUL`},t.origin)):e.action===`WIDGET_PREVIEW`&&(g.previewWidget(e.engagementTrigger),t.source?.postMessage({action:`PREVIEW_SUCCESSFUL`},t.origin)));});}}performance.mark(`cooee-sdk-start`);var Oi=new Date;window.cooeeShopifyScriptLoaded||(window.cooeeShopifyScriptLoaded=true,Un$1(),kn$1(),await g.initForMerchantWebsiteOnly(Oi),_e$3(),performance.measure(`cooee-sdk-init`,`cooee-sdk-start`),Nr$4()&&Promise.resolve().then(function () { return sdkDebugLogsDgI64A5z; }).then(({printAllDebugLogs:t})=>t(Oi)));
90
+ .lc-display-inline {display: inline !important;}`,document.body);}execute(e){for(let i of e){if(!i.experimentConfig)continue;this.executeExperiment(i)&&this.trackExperimentRan(i);}if(document.querySelector(`#lc-hide-body`)?.remove(),!document.body){Jn$1(`No body element found`,`error`);return}this.setupMutationObserver();}executeExperiment(e){let i=e.experimentConfig?.modifications;if(!i?.length)return Y$2.log(`Nothing to experiment`,e.toString()),true;let c=false;for(let l of i){if(!l.cssSelector){Y$2.verbose(`No CSS Selector available`,e?.toString());continue}this.modifications.push(l);let u=Array.from(document.querySelectorAll(l.cssSelector));u?.length&&(this.executeSingleModification(l,u),c=true);}return c}executeSingleModification(e,i){if(i?.length)for(let c of i)Object.assign(c.style,e.style),e.display===`HIDE`?c.classList.add(`lc-hide`):e.display===`BLOCK`?c.classList.add(`lc-display-block`):e.display===`INLINE`&&c.classList.add(`lc-display-inline`),e.type===`TEXT`&&e.text?c.innerHTML=e.text:e.type===`IMAGE`&&this.updateImage(e,c),e.moveTo?.selector&&this.changePlacement(e,c).catch(console.error);}async changePlacement(e,i){let c=await xn(e.moveTo.selector);if(c)switch(e.moveTo.position){case ae$3.BEFORE1:i.nextElementSibling!==c&&c.parentElement?.insertBefore(i,c);break;case ae$3.INSIDE_FIRST1:c.firstChild!==i&&c.insertBefore(i,c.firstChild);break;case ae$3.INSIDE_LAST1:c.lastChild!==i&&c.appendChild(i);break;case ae$3.AFTER1:default:i.previousElementSibling!==c&&c.parentElement?.insertBefore(i,c.nextSibling);}}trackExperimentRan(e){if(e.id===`preview`){Y$2.warn(`Skipping experiment attribution as its preview`,e.toString());return}ki({name:`CE Experiment Start`,experiment:new mt$2(e)}).catch(i=>{Y$2.error(`Fail to track experiment`,i);});}setupMutationObserver(){new MutationObserver(i=>{i.forEach(c=>{c.addedNodes.forEach(l=>{l instanceof HTMLElement&&this.modifications.forEach(u=>{if(l.matches&&l.matches(u.cssSelector))Y$2.verbose(`1. Re-applying experiment`,u.toString()),this.executeSingleModification(u,[l]);else if(l.querySelectorAll){let d=Array.from(l.querySelectorAll(u.cssSelector));if(!d.length)return;Y$2.verbose(`2. Re-applying experiment`,u.toString()),this.executeSingleModification(u,d);}});});});}).observe(document.body,{childList:true,subtree:true});}updateImage(e,i){let c=e.image?.lg?.src,l=e.image?.sm?.src;!c&&!l||(i instanceof HTMLPictureElement?this.updatePictureElement({desktop:c,mobile:l},i):this.updateImageElement({desktop:c,mobile:l},i));}updateImageElement(e,i){M$3()&&e.mobile?(i.setAttribute(`src`,e.mobile),i.removeAttribute(`srcset`)):e.desktop&&(i.setAttribute(`src`,e.desktop),i.removeAttribute(`srcset`));}updatePictureElement(e,i){if(i.innerHTML=``,e.mobile){let l=document.createElement(`source`);l.srcset=e.mobile,l.media=`(max-width: 767px)`,i.append(l);}if(e.desktop){let l=document.createElement(`source`);l.srcset=e.desktop,l.media=`(min-width: 768px)`,i.append(l);}let c=document.createElement(`img`);c.src=e.desktop??e.mobile??``,i.append(c);}};async function ki(t){let e=await et$1();await ie$1(`/v1/event/experiment`,r$2(r$2({},t),e));}function ze(){Zi().catch(t=>ke(t,`fetch-experiments`));}async function Zi(){Be$3().activeExperiments&&(await le$2(J$1),await Qi());}async function Qi(){Y$2.info(`Fetch experiments after ⏰`,en()+` of SDK load`);ie$1(`/v1/engagement/experiments`,r$2({},await et$1())).then(async i=>{Y$2.info(`Experiments fetched ${Jr$3(i.timeTakenMs)}`);let c=i.data.experiments.map(l=>new q$1(l));new Fe().execute(c);}).catch(i=>{Y$2.error(`Error sending experiment getter`,i);});}function Si(){let t=he$4.get();!t.gaMeasurementID||!t.gaEnabled||ir();}async function tr(){let t=await ce$3.get(`gacid`),e=await rr();if(t!==e)return await ce$3.set(`gacid`,e),e}async function ir(){let t=await tr();t&&Al({gaClientID:t});}async function rr(){let e=he$4.get().gaMeasurementID;if(!(!e||!window.gtag))return new Promise(i=>{window.gtag(`get`,e,`client_id`,c=>{i(c);});})}async function xi(t){Y$2.verbose(`Received app configuration`,t),t.currencyCount=t.currencies?.length;let e=g.globalRef.config.update(t);Si(),P.initialize(),e.website&&(Vi$2(e.website.commonJS),le$4(e.website.commonCSS)),window.CooeeSDK.cartDrawerToggle$.pipe(Fe$2(10)).subscribe(async({open:i})=>{Y$2.info(`Cart drawer is now`,i?`open`:`closed`),i&&(Kf(),await or());});}function Ci(t){g.globalRef.apiURLs=t;}async function or(){let t=await h.getCurrent().getNormalisedCart(),e={value:t.amount,currency:t.currency};qn(new Ir$1(`View Cart`,{items:t.items,amount:e,drawer:true}));}var Ve=class{runtimeData=Be$3();meddle(){let e=g.globalRef;e.profile=e.profile??[],e.events=e.events??[],e.page=e.page??[],this.meddlePage(),this.meddleEvents(),this.meddleProfile(),this.exposeMethods();}exposeMethods(){let e=g.globalRef;e.loadWidgets=e.loadCartWidgets=e.loadPageWidgets=()=>{Co();},e.loadExperiments=()=>{ze();},e.testCartUpdate=this.testCartUpdate.bind(this),e.previewWidget=g.previewWidget.bind(g),e.previewPopup=g.previewPopup.bind(g),e.executeCTA=(i,c)=>{new He$1(i).execute(c);},e.sendEvent=i=>{qn(i);};}overwritePush(e,i){On$1(e,`push`,i);}meddleEvents(){this.overwritePush(g.globalRef.events,(...e)=>{this.processEvent(e[0]);}),g.globalRef.events.forEach(this.processEvent.bind(this));}meddleProfile(){this.overwritePush(g.globalRef.profile,(...e)=>{this.processProfile(e[0]);}),g.globalRef.profile.forEach(this.processProfile.bind(this));}processEvent(e){e&&(zr$3.includes(e[0])?g.sendEvent(e[0],e[1],r$2({occurred:this.runtimeData.jsLoadTime},e[2])):g.sendEvent(e[0],e[1],e[2]));}processProfile(e){e&&g.updateProfile(e);}meddlePage(){this.overwritePush(g.globalRef.page,(...e)=>{this.processPage(e[0]);}),g.globalRef.page.forEach(this.processPage.bind(this));}processPage(e){e.appID&&g.authenticate(e),e.currentItem&&nr(e.currentItem),e.currency&&(Be$3().currencyCode=e.currency),e.shopCurrency&&(this.runtimeData.shopCurrencyCode=e.shopCurrency),e.moneyFormat&&(this.runtimeData.moneyFormat=e.moneyFormat),e.jsLoad&&(this.runtimeData.jsLoadTime=e.jsLoad),e.locale&&(this.runtimeData.locale=e.locale),e.pageName&&g.setPageName(e.pageName),e.activeExperiment&&(this.runtimeData.activeExperiments=e.activeExperiment),e.cart&&h.getCurrent().update(e.cart),e.configurations&&xi(e.configurations),e.apiURLs&&Ci(e.apiURLs),e.customContext&&(this.runtimeData.customContext=r$2(r$2({},this.runtimeData.customContext),e.customContext));}async testCartUpdate(){if(Be$3().pageName!==`product`){window.alert(`This feature is only available on a product page`);return}let e=Hd();if(e||(e=Be$3().currentItem?.vID),!e){window.alert(`Could not find a variant to test. Please try a different product page`);return}let i=new q$1({id:`preview`,shortID:`1`,redirectBehaviour:he$3.CART_DRAWER});await new He$1(new Ne$1(new Date,i)).execute({clickAction:{at:pe$4.ADD_TO_CART},embeddedItem:new at$2({vID:e})});}};function nr(t){let e=Be$3();if(e.currentItem&&e.currentItem.vID!==t.vID){let i=new CustomEvent(`letscooee:variant-change`,{detail:{variantID:t.vID,productID:t.mID}});document.dispatchEvent(i);}e.currentItem=new at$2(t);}var re=class{static SESSION_STORAGE=window.sessionStorage;static SESSION_STORAGE_KEY_PREFIX=`cooee`.concat(`-`);static getString(e,i){return this.getItem(e)||i}static setString(e,i){this.setItem(e,i);}static remove(e){this.removeItem(e);}static getItem(e){return this.SESSION_STORAGE.getItem(this.SESSION_STORAGE_KEY_PREFIX.concat(e))}static setItem(e,i){this.SESSION_STORAGE.setItem(this.SESSION_STORAGE_KEY_PREFIX.concat(e),i);}static removeItem(e){this.SESSION_STORAGE.removeItem(this.SESSION_STORAGE_KEY_PREFIX.concat(e));}};var ar=1e3,sr=10,bt=0,gt=new Date;function ht(t){re.remove(`sleid`),gt=t??new Date;}function Ri(){if(window.scrollY){let t=Ai();Ii(t)&&_i(t);}ht$3(()=>{cr();});}function cr(){Tr$1(window,`scroll`).pipe(Fe$2(ar),q$2(()=>{let t=Ai();if(t>100){Y$2.warn(`Received scroll percent is more than 100`,t);return}if(Ii(t))return t})).subscribe(t=>{_i(t);});}function Ii(t){return Math.abs(bt-t)>=sr||bt!==t&&t===100}function _i(t){if(t==null)return;let e={percent:t,timeMS:new Date().getTime()-gt.getTime()};bt=t;let c=new Ir$1(`CE Scroll`,e,null,re.getString(`sleid`,``));qn(c),re.setString(`sleid`,c.id.toHexString()),gt=new Date(c.occurred);}function Ai(){let t=window.document.body.scrollHeight,e=window.innerHeight;return Math.ceil((window.scrollY+e)/t*100)}function Ti(){lr();}function lr(){let t=window.fetch;try{window.fetch=async function(e,i){try{await dr(e,i);}catch(c){ke(c,`modify-graphql-request`,{extra:{body:JSON.stringify(i?.body)}});}return t(e,i)};}catch(e){console.warn(`Fail to override fetch.`,`Cooee won't be able to track "Buy Now Clicked" KPI.`),Y$2.error(e);}Y$2.verbose(`Securely overwritten window.fetch method for graphql query`);}async function dr(t,e){let i=typeof t==`string`?t:t instanceof Request?t.url:``;if(!(i.includes(`graphql.json`)&&e?.method===`POST`)||!e.body)return;let c;if(typeof e.body==`string`)try{c=JSON.parse(e.body);}catch{return}else c=e.body;c?.variables?.input&&(Y$2.verbose(`Intercepted fetch request of:`,i),c?.query.includes(`cartCreate`)&&(e.body=await mr(c),pr()));}async function mr(t){let e=t.variables.input.attributes??[],i=await Ln(`Buy Now`);return t.variables.input.attributes=[...e,...i],JSON.stringify(t)}function pr(){let t=Be$3().currentItem;if(!t)return;qn(new Ir$1(`Buy Now Clicked`,{items:[t]}));}var oe=class{constructor(e,i){this.selectors=e;this.eventName=i;this.selectorString=e.join(`,`);}static INSTANCE;elements;selectorString;clickListenerCallback=e=>{let i=e.currentTarget;qn(new Ir$1(this.eventName,{class:i.className||void 0,tagName:i.tagName||void 0,id:i.id||void 0})),this.removeClickListener(this.clickListenerCallback);};listenSilently(){this.listen().catch(e=>Y$2.error(e));}async listen(){this.elements=await Ar$3(this.selectorString),this.elements.forEach(e=>{e.addEventListener(`click`,this.clickListenerCallback);});}removeClickListener(e){this.elements?.forEach(i=>{i.removeEventListener(`click`,e);});}};var Be=class t extends oe{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(t.selectors,`Item Thumbnail Clicked`);}static getInstance(){return this.INSTANCE||(this.INSTANCE=new t),this.INSTANCE}};var We=class t extends oe{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(t.selectors,`Review Clicked`);}static getInstance(){return this.INSTANCE||(this.INSTANCE=new t),this.INSTANCE}};var ur=[`.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(`,`);function Di(){ht$3(()=>{Y$2.verbose(`Execution order:`,`document ready`),fr();});}function fr(){let t=window.location.hash?.substring(1);if(t)if(t.includes(`initiate-checkout`)){document.dispatchEvent(new Event(`letscooee:outbound:third-party-initiate-checkout`));let e=document.querySelector(ur);if(!e){Y$2.verbose(`No clickable cart checkout button found`);return}Y$2.verbose(`Clickable cart checkout button found`,e),e.click();}else t.includes(`open-cart-drawer`)&&P.get().open();}function Pi(){window.addEventListener(`kp-modal:opened`,()=>{Be$3().isGoKwikPopupOpen=true;}),window.addEventListener(`user-loggedin`,t=>{let{token:e}=t.detail;e&&Qn({goKwikToken:e});}),window.gokwikSdk?Li():window.addEventListener(`gokwikLoaded`,Li);}function Li(){window.gokwikSdk&&window.gokwikSdk.on(`checkout_initiated`,async()=>{let t=await h.getCurrent().getNormalisedCart();qn(new Ir$1(`Checkout Started`,{via:`GoKwik`,items:t.items,cartToken:t.token,amount:{value:t.amount,currency:t.currency}}));});}var g=class{static globalRef;static authenticated;static async initForMerchantWebsiteOnly(e){if(!window.cooeeSDKPreview){if(Y$2.info(`Initialising SDK`),ri(navigator.userAgent)){Y$2.info(`This seems to be a bot. Disabling SDK`);return}this.initGlobalReference(e),await Wh(),this.autoAuthenticate(),new Ve().meddle(),pl(),ze(),wr(),Kh(),Mm(),Ti(),Di(),Ri(),We.getInstance().listenSilently(),Be.getInstance().listenSilently(),Pi(),br(),Wn$1(),Xo(),_e.remove(`conf`).catch(i=>{Y$2.error(`Fail to remove App Config from local storage`,i);});}}static initGlobalReference(e){window.CooeeSDK||On$1(window,`CooeeSDK`,{}),this.globalRef=window.CooeeSDK,On$1(this.globalRef,`config`,new he$4),On$1(this.globalRef,`runtimeData`,{sdkLoadTime:e,jsLoadTime:new Date,lastEnterActive:new Date}),On$1(this.globalRef,`uaParser`,new _,true),On$1(this.globalRef,`cart`,h.getCurrent()),On$1(this.globalRef,`cartChange$`,Um()),On$1(this.globalRef,`cartDrawerToggle$`,P.cartDrawerToggle$.asObservable()),Y$2.verbose(`Global reference initialised`),new t(()=>{this.globalRef.uaParser=new _;});}static autoAuthenticate(){let e=Nn();e&&this.authenticate({shopifyShop:e});}static authenticate(e){if(this.authenticated)return;Y$2.info(`Begin auth after ⏰`,en(),`of SDK load`);let i=e.appID?.trim(),c=e.shopifyShop;if((Dn(i)||i.length!==24)&&Dn(c)){Y$2.warn(`Cooee App ID or Shop name is not configured`);return}this.authenticated=true,Vh(e);}static sendEvent(e,i,c){let l=new Ir$1(e,i,c?.triggerData);c?.occurred&&(l.occurred=c.occurred),qn(l);}static updateProfile(e){for(let i in e)if(i.toLowerCase().startsWith(`ce `))throw new Error(`User property name cannot start with 'CE '`);Qn(e);}static setPageName(e){if(!e)return;let i=Be$3(),c=i.pageName;if(e===c)return;if(i.pageName=e,Yr$3.some(d=>e.includes(d))){ht();return}let l={};c&&(l.ps=c);let u=new Ir$1(`CE Screen View`,l);u.occurred=i.jsLoadTime,qn(u),ht(u.occurred);}static previewPopup(e,i){import('./renderer-BXbRfFz4-CkZ8WeOK.js').then(({FreeformRenderer:c})=>{new c(i).render(e);});}static previewWidget(e){new N$2(new q$1(e)).renderSilently();}};function wr(){window.CooeeSDK.cartChange$.subscribe(()=>{Co();});}function br(){if(window.opener){try{window.opener.postMessage({action:`COOEE_READY_FOR_PREVIEW`},`*`);}catch(t){Y$2.error(t);}window.addEventListener(`message`,t=>{if(Y$2.verbose(`Received event`,t),!t.origin.includes(`letscooee.com`)&&!t.origin.includes(`localhost`))return;let e=t.data;typeof e==`object`&&(e.action===`POPUP_PREVIEW`?(g.previewPopup(e.engagementTrigger),t.source?.postMessage({action:`PREVIEW_SUCCESSFUL`},t.origin)):e.action===`WIDGET_PREVIEW`&&(g.previewWidget(e.engagementTrigger),t.source?.postMessage({action:`PREVIEW_SUCCESSFUL`},t.origin)));});}}performance.mark(`cooee-sdk-start`);var Oi=new Date;window.cooeeShopifyScriptLoaded||(window.cooeeShopifyScriptLoaded=true,Un$1(),kn$1(),await g.initForMerchantWebsiteOnly(Oi),_e$3(),performance.measure(`cooee-sdk-init`,`cooee-sdk-start`),xr$3()&&Promise.resolve().then(function () { return sdkDebugLogsCZpEX4EA; }).then(({printAllDebugLogs:t})=>t(Oi)));
91
91
 
92
92
  var s=`\xA0\xA0\xA0`,l=[`/v1/engagement/cart-widgets`,`/v1/engagement/page-widgets`,`/v1/event/validate-session`];function d(e){if(e===0)return `0 B`;let i=1024,n=[`B`,`KB`,`MB`,`GB`],r=Math.floor(Math.log(e)/Math.log(i));return `${(e/Math.pow(i,r)).toFixed(2)} ${n[r]}`}function E(e){let i=performance.getEntriesByType?.(`resource`);if(i)return i.filter(n=>n.name.includes(e)).pop()}function R(){let e=performance.getEntriesByType?.(`resource`);return e?e.filter(i=>l.some(n=>i.name.includes(n))):[]}function S(e,i){if(!e){Y$2.info(`\u{1F4E6} API Resource Metrics for ${i}: Not available`);return}Y$2.info(`📦 ═══════════ API Resource Metrics ═══════════`),Y$2.info(`URL: ${i}`),Y$2.info(`Duration: ${Ve$4(e.duration)}`);let n=e.transferSize===0;if(Y$2.info(`Served from: ${n?`💾 Cache (disk/memory)`:`🌐 Network`}`),!n){Y$2.info(`Transfer size: ${d(e.transferSize)}`),Y$2.info(`Encoded size: ${d(e.encodedBodySize)}`),Y$2.info(`Decoded size: ${d(e.decodedBodySize)}`);let c=(1-e.encodedBodySize/e.decodedBodySize)*100;c>0&&Y$2.info(`Compression ratio: ${c.toFixed(1)}%`);}let r=e.redirectEnd-e.redirectStart,f=e.fetchStart-e.startTime,a=e.domainLookupEnd-e.domainLookupStart,u=e.connectEnd-e.connectStart,m=e.secureConnectionStart>0?e.connectEnd-e.secureConnectionStart:0,g=e.connectEnd===e.connectStart?e.requestStart-e.fetchStart-a:e.requestStart-e.connectEnd,T=e.responseStart-e.requestStart,P=e.responseEnd-e.responseStart;Y$2.info(`Timing breakdown (${Ve$4(e.duration)} total):`),r>0&&Y$2.info(`${s}Redirect: ${Ve$4(r)}`),f>0&&Y$2.info(`${s}Queued: ${Ve$4(f)}`),g>0&&Y$2.info(`${s}Stalled: ${Ve$4(g)}`),a>0&&Y$2.info(`${s}DNS lookup: ${Ve$4(a)}`),u>0&&Y$2.info(`${s}TCP connect: ${Ve$4(u)}`),m>0&&Y$2.info(`${s}SSL handshake: ${Ve$4(m)}`),Y$2.info(`${s}Server waiting (TTFB): ${Ve$4(T)}`),Y$2.info(`${s}Content download: ${Ve$4(P)}`);let $=e.serverTiming;if($?.length){Y$2.info(`Server-Timing:`);for(let c of $){let p=c.description||c.name;c.duration>0?Y$2.info(`${s}${p}: ${Ve$4(c.duration)}`):Y$2.info(`${s}${p}: ${c.duration}`);}}Y$2.info(`📦 ═════════════════════════════════════════════`);}function B(){let e=R();return e.length?e.map(n=>JSON.stringify(n.toJSON())).join(`
93
93
  `):``}function z(){let e=new Set;for(let n of l){let r=E(n);r?S(r,n):e.add(n);}if(!e.size||typeof PerformanceObserver>`u`)return;let i=new PerformanceObserver(n=>{for(let r of n.getEntries())for(let f of e)if(r.name.includes(f)){S(r,f),e.delete(f);break}e.size||i.disconnect();});i.observe({type:`resource`,buffered:false});}
94
94
 
95
95
  function a(i){return i?new Date(i).toLocaleString(`en-US`,{year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,fractionalSecondDigits:3,hour12:false,timeZoneName:`short`}):`N/A`}function M(){let i=performance.getEntriesByType?.(`resource`);if(i)return i.find(o=>o.name.includes(`@letscooee/web-sdk`)&&o.name.includes(`main.min.js`))}function x(i){window.cooeeSDKPreview||(document.readyState===`complete`?setTimeout(()=>L(i),100):window.addEventListener(`load`,()=>{setTimeout(()=>L(i),100);}));}function L(i){try{N(i),z();}catch(o){console.error(`Failed to print debugging logs`,o);}}function N(i){let o=performance.getEntriesByType?.(`navigation`)?.[0],f=window.CooeeSDK?.pageLoadTime,l=M(),s=performance.timeOrigin||0,n=o?.responseEnd?s+o.responseEnd:void 0,d=s,c=o?.domContentLoadedEventEnd||0,m=o?.loadEventEnd||0,u=n&&n>0?n:f?f.getTime():0,T=n&&n>0?`HTML download complete`:`inline script execution`,S=c>0?d+c:void 0,$=m>0?d+m:void 0;Y$2.info(`⏱️ ═══════════════ Performance Timing Report ═══════════════`),Y$2.info(`📅 Absolute Timestamps (Local Time):`),Y$2.info(` Note: Inline script can execute during HTML download (incremental parsing)`),Y$2.info(``),Y$2.info(` 1. Navigation started: ${a(d)}`);let r=f?f.getTime():0;if(n&&n>0&&r?r<n?(Y$2.info(` 2. Inline script executed: ${a(r)} (during HTML parsing)`),Y$2.info(` 3. HTML download complete: ${a(n)}`)):(Y$2.info(` 2. HTML download complete: ${a(n)}`),Y$2.info(` 3. Inline script executed: ${a(r)}`)):n&&n>0?Y$2.info(` 2. HTML download complete: ${a(n)}`):r&&Y$2.info(` 2. Inline script executed: ${a(r)}`),Y$2.info(` 4. SDK module loaded: ${a(i.getTime())} (from CDN)`),S&&Y$2.info(` 5. DOMContentLoaded: ${a(S)}`),$&&Y$2.info(` 6. Page fully loaded: ${a($)}`),Y$2.info(``),Y$2.info(`⏱️ Relative Timings:`),n&&n>0&&d){let g=n-d;Y$2.info(` Shopify backend + HTML download: ${Ve$4(g)} (not Cooee SDK)`);}if(u){let g=i.getTime()-u;if(g<0){let w=r>0?r:d,b=r>0?`inline script execution`:`navigation start`,K=i.getTime()-w;Y$2.info(` SDK module load time: ${Ve$4(K)} after ${b}`),Y$2.info(` (Note: Using earlier baseline because SDK loaded before ${T})`);}else Y$2.info(` SDK module load time: ${Ve$4(g)} after ${T}`),Y$2.info(` (Baseline: ${T} at ${a(u)})`);let v=i.getTime()-d;Y$2.info(` \u{1F3AF} Total SDK load time: ${Ve$4(v)} (from navigation start to SDK ready)`);}c&&c>0&&Y$2.info(` DOMContentLoaded: ${Ve$4(c)} after navigation start`),m&&m>0&&Y$2.info(` Page fully loaded: ${Ve$4(m)} after navigation start`),C(l),Y$2.info(`⏱️ ═══════════════════════════════════════════════════════`);}function C(i){if(!i){Y$2.info(``),Y$2.info(`📦 SDK Resource Metrics: Not available`);return}Y$2.info(``),Y$2.info(`📦 SDK Resource Metrics:`),Y$2.info(` URL: ${i.name}`),Y$2.info(` Download duration: ${Ve$4(i.duration)}`);let o=i.transferSize===0;if(Y$2.info(` Served from: ${o?`💾 Cache (disk/memory)`:`🌐 Network`}`),!o){Y$2.info(` Transfer size: ${d(i.transferSize)}`),Y$2.info(` Encoded size: ${d(i.encodedBodySize)}`),Y$2.info(` Decoded size: ${d(i.decodedBodySize)}`);let f=(1-i.encodedBodySize/i.decodedBodySize)*100;f>0&&Y$2.info(` Compression ratio: ${f.toFixed(1)}%`);}if(i.domainLookupEnd>0){let f=i.domainLookupEnd-i.domainLookupStart,l=i.connectEnd-i.connectStart,s=i.responseStart-i.requestStart,n=i.responseEnd-i.responseStart;Y$2.info(` Timing breakdown:`),f>0&&Y$2.info(` DNS lookup: ${Ve$4(f)}`),l>0&&Y$2.info(` TCP connect: ${Ve$4(l)}`),s>0&&Y$2.info(` Request: ${Ve$4(s)}`),n>0&&Y$2.info(` Response: ${Ve$4(n)}`);}}
96
96
 
97
- var sdkDebugLogsDgI64A5z = /*#__PURE__*/Object.freeze({
97
+ var sdkDebugLogsCZpEX4EA = /*#__PURE__*/Object.freeze({
98
98
  __proto__: null,
99
99
  printAllDebugLogs: x
100
100
  });
101
101
 
102
- export { $e as $, At as A, B, me$1 as C, j$2 as D, Xt$1 as E, pe$4 as F, Sn$1 as G, He$2 as H, Ir$1 as I, u$1 as J, w$2 as K, Lt as L, M$3 as M, Ne$1 as N, O$1 as O, P, Qt$2 as Q, Rt as R, Sn as S, Tr$2 as T, Ue$1 as U, Ve$2 as V, v$1 as W, X$1 as X, Y$2 as Y, U as Z, q$2 as _, V$2 as a, Sr as a0, m$2 as a1, vs as a2, ve$2 as a3, pi$2 as a4, Nn$1 as a5, bi$2 as a6, ii$1 as a7, _e$1 as a8, Fs as a9, Ps as aa, Se$1 as ab, ye$1 as ac, Hn$1 as ad, fe$5 as ae, le$4 as af, he$3 as ag, Ne$4 as ah, he$4 as ai, Nn$2 as aj, yn as ak, Cr$3 as al, ne$1 as am, Hi$2 as an, Ie$3 as ao, gr$1 as ap, Fe$3 as aq, qe$1 as ar, Re as as, ge$4 as at, Cn as au, We$2 as av, Je$1 as aw, Ae$2 as ax, oe$5 as ay, H$3 as b, ce$3 as c, ke as d, Be$3 as e, Ot as f, kt as g, A as h, Oe$3 as i, jr$2 as j, ki$2 as k, l$1 as l, mt$2 as m, s$3 as n, x$2 as o, In as p, q$1 as q, r$2 as r, se$3 as s, t, On as u, S$2 as v, dt$2 as w, xn as x, ye as y, ze$1 as z };
102
+ export { $e as $, At as A, B, me$1 as C, j$2 as D, Xt$1 as E, pe$4 as F, Sn$1 as G, He$2 as H, Ir$1 as I, u$1 as J, w$2 as K, Lt as L, M$3 as M, Nn$3 as N, O$1 as O, P, Qt$2 as Q, Rt as R, Sn as S, Tr$2 as T, Ue$1 as U, Ve$2 as V, v$1 as W, X$1 as X, Y$2 as Y, U as Z, q$2 as _, V$2 as a, Sr as a0, m$2 as a1, vs as a2, ve$2 as a3, pi$2 as a4, Nn$1 as a5, bi$2 as a6, ii$1 as a7, _e$1 as a8, Fs as a9, Ps as aa, Se$1 as ab, ye$1 as ac, Hn$1 as ad, fe$5 as ae, le$4 as af, he$3 as ag, Ne$4 as ah, he$4 as ai, Nn$2 as aj, yn as ak, Cr$3 as al, ne$1 as am, Hi$2 as an, Ie$3 as ao, gr$1 as ap, Fe$3 as aq, qe$1 as ar, Re as as, ge$4 as at, Cn as au, We$2 as av, Je$1 as aw, Ae$2 as ax, oe$5 as ay, H$3 as b, ce$3 as c, Ne$1 as d, ke as e, Be$3 as f, Ot as g, kt as h, A as i, jr$2 as j, ki$2 as k, l$1 as l, mt$2 as m, Oe$3 as n, s$3 as o, In as p, q$1 as q, r$2 as r, se$3 as s, t, On as u, S$2 as v, dt$2 as w, x$2 as x, ye as y, ze$1 as z };