@letscooee/web-sdk 9.6.10 → 9.7.0
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 +15 -15
- package/dist/widget.min.css +1 -1
- package/dist/widget.min.js +73 -36
- package/package.json +2 -1
package/dist/main.min.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(()=>{var sg=Object.create,Nc=Object.defineProperty,ag=Object.defineProperties,cg=Object.getOwnPropertyDescriptor,lg=Object.getOwnPropertyDescriptors,ug=Object.getOwnPropertyNames,lp=Object.getOwnPropertySymbols,pg=Object.getPrototypeOf,pp=Object.prototype.hasOwnProperty,fg=Object.prototype.propertyIsEnumerable,up=(e,t,r)=>t in e?Nc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,w=(e,t)=>{for(var r in t||={})pp.call(t,r)&&up(e,r,t[r]);if(lp)for(var r of lp(t))fg.call(t,r)&&up(e,r,t[r]);return e},te=(e,t)=>ag(e,lg(t)),Ki=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')}),ur=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),mg=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of ug(t))!pp.call(e,i)&&i!==r&&Nc(e,i,{get:()=>t[i],enumerable:!(n=cg(t,i))||n.enumerable});return e},Se=(e,t,r)=>(r=e!=null?sg(pg(e)):{},mg(t||!e||!e.__esModule?Nc(r,"default",{value:e,enumerable:!0}):r,e)),on=ur((e,t)=>{"use strict";(function(r){"use strict";var n={};n.VERSION="1.6.1";var i,s={},o=function(h,y){return function(){return y.apply(h,arguments)}},c=function(){var h=arguments,y=h[0],E,v;for(v=1;v<h.length;v++)for(E in h[v])!(E in y)&&h[v].hasOwnProperty(E)&&(y[E]=h[v][E]);return y},u=function(h,y){return{value:h,name:y}};n.TRACE=u(1,"TRACE"),n.DEBUG=u(2,"DEBUG"),n.INFO=u(3,"INFO"),n.TIME=u(4,"TIME"),n.WARN=u(5,"WARN"),n.ERROR=u(8,"ERROR"),n.OFF=u(99,"OFF");var d=function(h){this.context=h,this.setLevel(h.filterLevel),this.log=this.info};d.prototype={setLevel:function(h){h&&"value"in h&&(this.context.filterLevel=h)},getLevel:function(){return this.context.filterLevel},enabledFor:function(h){var y=this.context.filterLevel;return h.value>=y.value},trace:function(){this.invoke(n.TRACE,arguments)},debug:function(){this.invoke(n.DEBUG,arguments)},info:function(){this.invoke(n.INFO,arguments)},warn:function(){this.invoke(n.WARN,arguments)},error:function(){this.invoke(n.ERROR,arguments)},time:function(h){typeof h=="string"&&h.length>0&&this.invoke(n.TIME,[h,"start"])},timeEnd:function(h){typeof h=="string"&&h.length>0&&this.invoke(n.TIME,[h,"end"])},invoke:function(h,y){i&&this.enabledFor(h)&&i(y,c({level:h},this.context))}};var m=new d({filterLevel:n.OFF});(function(){var h=n;h.enabledFor=o(m,m.enabledFor),h.trace=o(m,m.trace),h.debug=o(m,m.debug),h.time=o(m,m.time),h.timeEnd=o(m,m.timeEnd),h.info=o(m,m.info),h.warn=o(m,m.warn),h.error=o(m,m.error),h.log=h.info})(),n.setHandler=function(h){i=h},n.setLevel=function(h){m.setLevel(h);for(var y in s)s.hasOwnProperty(y)&&s[y].setLevel(h)},n.getLevel=function(){return m.getLevel()},n.get=function(h){return s[h]||(s[h]=new d(c({name:h},m.context)))},n.createDefaultHandler=function(h){h=h||{},h.formatter=h.formatter||function(v,_){_.name&&v.unshift("["+_.name+"]")};var y={},E=function(v,_){Function.prototype.apply.call(v,console,_)};return typeof console>"u"?function(){}:function(v,_){v=Array.prototype.slice.call(v);var D=console.log,P;_.level===n.TIME?(P=(_.name?"["+_.name+"] ":"")+v[0],v[1]==="start"?console.time?console.time(P):y[P]=new Date().getTime():console.timeEnd?console.timeEnd(P):E(D,[P+": "+(new Date().getTime()-y[P])+"ms"])):(_.level===n.WARN&&console.warn?D=console.warn:_.level===n.ERROR&&console.error?D=console.error:_.level===n.INFO&&console.info?D=console.info:_.level===n.DEBUG&&console.debug?D=console.debug:_.level===n.TRACE&&console.trace&&(D=console.trace),h.formatter(v,_),E(D,v))}},n.useDefaults=function(h){n.setLevel(h&&h.defaultLevel||n.DEBUG),n.setHandler(n.createDefaultHandler(h))},n.setDefaults=n.useDefaults,typeof define=="function"&&define.amd?define(n):typeof t<"u"&&t.exports?t.exports=n:(n._prevLogger=r.Logger,n.noConflict=function(){return r.Logger=n._prevLogger,n},r.Logger=n)})(e)}),Oc=ur(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MustacheUtils=void 0;var t=class Dh{static escapeHtml(n){return String(n).replace(/"/g,i=>Dh.entityMap[i])}};e.MustacheUtils=t,t.entityMap={'"':"""}}),Rr=ur(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MilestoneRewardType=e.ProgressBarLayout=e.EngagementContentSource=e.EngagementObjective=e.OnsiteDeliveryType=e.ClickActionType=e.FrequencyGapUnit=e.FrequencyType=e.RedirectBehaviour=e.EngagementPlacementPosition=e.EngagementCollectionSource=e.PromotionType=e.CartFilterEnum=e.CartCurrencyOperator=e.CartCriteria=e.URLCriteria=e.UTMCriteria=e.CartItemSource=e.EngagementItemSource=e.PurchasedVisitor=e.LoggedInVisitor=e.VisitorType=e.SessionType=e.EngagementContentType=e.TriggerType=e.EngagementType=e.EngagementStatus=e.TimePreference=e.ScheduleFrequency=e.CriteriaFrequency=void 0;var t=function(g){return g[g.ONCE_PER_USER=1]="ONCE_PER_USER",g[g.ONCE_PER_SESSION=2]="ONCE_PER_SESSION",g[g.EVERY_TIME=3]="EVERY_TIME",g}(t||(e.CriteriaFrequency=t={})),r=function(g){return g[g.ONE_TIME=1]="ONE_TIME",g[g.MULTIPLE=2]="MULTIPLE",g[g.RECURRING=3]="RECURRING",g}(r||(e.ScheduleFrequency=r={})),n=function(g){return g[g.NOW=1]="NOW",g[g.LATER=2]="LATER",g[g.NEVER=3]="NEVER",g}(n||(e.TimePreference=n={})),i=function(g){return g[g.PUBLISHED=1]="PUBLISHED",g[g.DRAFT=2]="DRAFT",g[g.PAUSED=3]="PAUSED",g[g.FAILED=4]="FAILED",g[g.STOPPED=5]="STOPPED",g[g.COMPLETED=6]="COMPLETED",g[g.ARCHIVED=7]="ARCHIVED",g[g.UNINSTALLED=8]="UNINSTALLED",g}(i||(e.EngagementStatus=i={})),s=function(g){return g.CAMPAIGN="CAMPAIGN",g.NATIVE_AB="NATIVE_AB",g.CRO_COPILOT="CRO_COPILOT",g}(s||(e.EngagementType=s={})),o=function(g){return g[g.NONE=0]="NONE",g[g.RULE_BASED=1]="RULE_BASED",g[g.INTENT_BASED=2]="INTENT_BASED",g}(o||(e.TriggerType=o={})),c=function(g){return g[g.SINGLE=1]="SINGLE",g[g.EXCLUSION=2]="EXCLUSION",g[g.ABTESTING=3]="ABTESTING",g}(c||(e.EngagementContentType=c={})),u=function(g){return g[g.ALL=0]="ALL",g[g.NEW_ONLY=1]="NEW_ONLY",g[g.RETURNING_ONLY=2]="RETURNING_ONLY",g}(u||(e.SessionType=u={})),d=function(g){return g[g.ALL=0]="ALL",g[g.LOGGED_IN_ONLY=3]="LOGGED_IN_ONLY",g[g.NON_LOGGED_IN_ONLY=4]="NON_LOGGED_IN_ONLY",g[g.PURCHASED=5]="PURCHASED",g[g.NON_PURCHASED=6]="NON_PURCHASED",g[g.ABANDON_CART=7]="ABANDON_CART",g[g.RETURNING_AND_NON_PURCHASED=8]="RETURNING_AND_NON_PURCHASED",g}(d||(e.VisitorType=d={})),m=function(g){return g.ALL="ALL",g.LOGGED_IN="LOGGED_IN",g.NON_LOGGED_IN="NON_LOGGED_IN",g}(m||(e.LoggedInVisitor=m={})),h=function(g){return g.ALL="ALL",g.PURCHASED="PURCHASED",g.NON_PURCHASED="NON_PURCHASED",g}(h||(e.PurchasedVisitor=h={})),y=function(g){return g[g.NONE=0]="NONE",g[g.ITEM_RECOMMENDATION=1]="ITEM_RECOMMENDATION",g[g.MULTIPLE_ITEMS=2]="MULTIPLE_ITEMS",g[g.SINGLE_ITEM=3]="SINGLE_ITEM",g[g.TOP_SELLING=4]="TOP_SELLING",g[g.STOCK_CLEARANCE=5]="STOCK_CLEARANCE",g[g.NEW_ARRIVALS=6]="NEW_ARRIVALS",g[g.RECENTLY_VIEWED=7]="RECENTLY_VIEWED",g[g.EVENT_ITEM=8]="EVENT_ITEM",g[g.CART_ITEM=9]="CART_ITEM",g[g.BUNDLE=10]="BUNDLE",g[g.CURRENT_ITEM=11]="CURRENT_ITEM",g[g.PURCHASED_PREVIOUSLY=12]="PURCHASED_PREVIOUSLY",g[g.COLLECTION_ITEMS=13]="COLLECTION_ITEMS",g[g.TRENDING_ITEMS=14]="TRENDING_ITEMS",g}(y||(e.EngagementItemSource=y={})),E=function(g){return g[g.LAST_ADDED=1]="LAST_ADDED",g[g.FIRST_ADDED=2]="FIRST_ADDED",g[g.HIGHEST_PRICE=3]="HIGHEST_PRICE",g[g.LOWEST_PRICE=4]="LOWEST_PRICE",g[g.FIRST_MATCHING_TAG=5]="FIRST_MATCHING_TAG",g[g.ALL=6]="ALL",g}(E||(e.CartItemSource=E={})),v=function(g){return g[g.ALL=0]="ALL",g[g.ONLY_ORGANIC=1]="ONLY_ORGANIC",g[g.ONLY_NON_ORGANIC=2]="ONLY_NON_ORGANIC",g[g.INCLUDES=3]="INCLUDES",g[g.EXCLUDES=4]="EXCLUDES",g}(v||(e.UTMCriteria=v={})),_=function(g){return g[g.NONE=0]="NONE",g[g.LIKE=1]="LIKE",g[g.NOT_LIKE=2]="NOT_LIKE",g[g.EQUALS=3]="EQUALS",g[g.NOT_EQUALS=4]="NOT_EQUALS",g}(_||(e.URLCriteria=_={})),D=function(g){return g[g.NONE=0]="NONE",g[g.LESS_THAN=1]="LESS_THAN",g[g.GREATER_THAN=2]="GREATER_THAN",g[g.BETWEEN=3]="BETWEEN",g[g.EQUALS=4]="EQUALS",g}(D||(e.CartCriteria=D={})),P=function(g){return g[g.ALL=0]="ALL",g[g.INCLUDES=1]="INCLUDES",g[g.EXCLUDES=2]="EXCLUDES",g}(P||(e.CartCurrencyOperator=P={})),M=function(g){return g[g.NONE=0]="NONE",g[g.AMOUNT=1]="AMOUNT",g[g.TOTAL_PRODUCT=2]="TOTAL_PRODUCT",g[g.UNIQUE_PRODUCT=3]="UNIQUE_PRODUCT",g}(M||(e.CartFilterEnum=M={})),L=function(g){return g[g.NONE=0]="NONE",g[g.ITEM=1]="ITEM",g[g.COLLECTION=2]="COLLECTION",g}(L||(e.PromotionType=L={})),R=function(g){return g[g.NONE=0]="NONE",g[g.SINGLE=1]="SINGLE",g[g.MULTIPLE=2]="MULTIPLE",g}(R||(e.EngagementCollectionSource=R={})),q=function(g){return g.BEFORE="before",g.AFTER="after",g.INSIDE_FIRST="insideFirst",g.INSIDE_LAST="insideLast",g}(q||(e.EngagementPlacementPosition=q={})),he=function(g){return g.SHOPIFY_CHECKOUT="shopify_checkout",g.THIRD_PARTY_CHECKOUT="third_party_checkout",g.CART_PAGE="cart_page",g.CART_DRAWER="cart_drawer",g}(he||(e.RedirectBehaviour=he={})),ke=function(g){return g.ONCE_IN_SESSION="ONCE_IN_SESSION",g.ACROSS_SESSIONS="ACROSS_SESSIONS",g}(ke||(e.FrequencyType=ke={})),B=function(g){return g.DAYS="DAYS",g.HOURS="HOURS",g.MINUTES="MINUTES",g.SECONDS="SECONDS",g}(B||(e.FrequencyGapUnit=B={})),Z=function(g){return g[g.NONE=0]="NONE",g[g.REJECT_POPUP=1]="REJECT_POPUP",g[g.ACCEPT_POPUP=2]="ACCEPT_POPUP",g[g.GO_TO_URL=4]="GO_TO_URL",g[g.SHARE=5]="SHARE",g[g.KEY_VALUE=100]="KEY_VALUE",g[g.GO_TO_PRODUCT=101]="GO_TO_PRODUCT",g[g.ADD_TO_CART=102]="ADD_TO_CART",g[g.COPY_COUPON_CODE=103]="COPY_COUPON_CODE",g[g.GO_TO_COLLECTION=104]="GO_TO_COLLECTION",g[g.OPEN_CART=105]="OPEN_CART",g[g.SUBMIT_FORM=106]="SUBMIT_FORM",g[g.INITIATE_CHECKOUT=107]="INITIATE_CHECKOUT",g[g.ADD_BUNDLE=108]="ADD_BUNDLE",g[g.UPGRADE_TO_SUBSCRIPTION=109]="UPGRADE_TO_SUBSCRIPTION",g}(Z||(e.ClickActionType=Z={})),z=function(g){return g.POPUP="POPUP",g.PAGE_EMBED="PAGE_EMBED",g.CART_EMBED="CART_EMBED",g.ANNOUNCEMENT_BAR="ANNOUNCEMENT_BAR",g}(z||(e.OnsiteDeliveryType=z={})),J=function(g){return g.PRODUCT_PROMOTION="PRODUCT_PROMOTION",g.BUNDLE_AND_UPSELL="BUNDLE_AND_UPSELL",g.CART_RECOVERY="CART_RECOVERY",g.ANNOUNCEMENT="ANNOUNCEMENT",g.LEAD_GENERATION="LEAD_GENERATION",g.DATA_COLLECTION="DATA_COLLECTION",g.SALE_PROMOTION="SALE_PROMOTION",g.SUBSCRIPTION_UPSELL="SUBSCRIPTION_UPSELL",g.SHOPPABLE_VIDEO="SHOPPABLE_VIDEO",g.BYOB="BYOB",g.PROGRESS_BAR="PROGRESS_BAR",g.BUY_NOW="BUY_NOW",g.EXPERIMENT="EXPERIMENT",g}(J||(e.EngagementObjective=J={})),ge=function(g){return g.COOEE="COOEE",g.KLAVIYO="KLAVIYO",g}(ge||(e.EngagementContentSource=ge={})),$e=function(g){return g.ICONS="ICONS",g.TILES="TILES",g}($e||(e.ProgressBarLayout=$e={})),xe=function(g){return g.FREE_SHIPPING="FREE_SHIPPING",g.DISCOUNT="DISCOUNT",g.FREE_AUTO_GIFT="FREE_AUTO_GIFT",g.FREE_GIFT_SELECT="FREE_GIFT_SELECT",g}(xe||(e.MilestoneRewardType=xe={}))}),Jo=ur(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PriceRuleType=e.DiscountType=void 0;var t=function(n){return n[n.NONE=0]="NONE",n[n.STATIC=1]="STATIC",n[n.UNIQUE_FLAT=2]="UNIQUE_FLAT",n[n.UNIQUE_FLAT_ITEMS=3]="UNIQUE_FLAT_ITEMS",n[n.UNIQUE_FIXED_ITEMS=4]="UNIQUE_FIXED_ITEMS",n[n.UNIQUE_CHEAPEST_ITEM_FREE=5]="UNIQUE_CHEAPEST_ITEM_FREE",n[n.BXGY=6]="BXGY",n}(t||(e.DiscountType=t={})),r=function(n){return n.FIXED_AMOUNT="fixed_amount",n.PERCENTAGE="percentage",n}(r||(e.PriceRuleType=r={}))}),Lc=ur(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ArrayUtils=void 0;var t=class xh{static of(n,i){return i!==void 0?new Array(n).fill(i):Array.from({length:n},(s,o)=>o)}static remove(n,i){let s=n.indexOf(i);return s===-1?!1:(n.splice(s,1),!0)}static swap(n,i,s){[n[i],n[s]]=[n[s],n[i]]}static sum(n,i){return n.reduce((s,o)=>s+Math.max(i?i(o):+o,0),0)}static unique(n,i){return n.filter((s,o,c)=>c.findIndex(u=>u[i]===s[i])===o)}static shuffle(n){let i=n.length;for(;i!=0;){let s=Math.floor(Math.random()*i);i--,xh.swap(n,i,s)}}};e.ArrayUtils=t}),Tf=ur((e,t)=>{"use strict";(function(r,n){"use strict";var i="1.0.40",s="",o="?",c="function",u="undefined",d="object",m="string",h="major",y="model",E="name",v="type",_="vendor",D="version",P="architecture",M="console",L="mobile",R="tablet",q="smarttv",he="wearable",ke="embedded",B=500,Z="Amazon",z="Apple",J="ASUS",ge="BlackBerry",$e="Browser",xe="Chrome",g="Edge",Ke="Firefox",ve="Google",gt="Huawei",ae="LG",ie="Microsoft",ut="Motorola",tr="Opera",lr="Samsung",yt="Sharp",Hr="Sony",Hn="Xiaomi",nn="Zebra",ei="Facebook",qi="Chromium OS",Gn="Mac OS",$n=" Browser",vt=function(W,ce){var ee={};for(var Ce in W)ce[Ce]&&ce[Ce].length%2===0?ee[Ce]=ce[Ce].concat(W[Ce]):ee[Ce]=W[Ce];return ee},$r=function(W){for(var ce={},ee=0;ee<W.length;ee++)ce[W[ee].toUpperCase()]=W[ee];return ce},Gi=function(W,ce){return typeof W===m?a(ce).indexOf(a(W))!==-1:!1},a=function(W){return W.toLowerCase()},l=function(W){return typeof W===m?W.replace(/[^\d\.]/g,s).split(".")[0]:n},p=function(W,ce){if(typeof W===m)return W=W.replace(/^\s\s*/,s),typeof ce===u?W:W.substring(0,B)},T=function(W,ce){for(var ee=0,Ce,Ot,Dt,Te,ne,$t;ee<ce.length&&!ne;){var Yi=ce[ee],cs=ce[ee+1];for(Ce=Ot=0;Ce<Yi.length&&!ne&&Yi[Ce];)if(ne=Yi[Ce++].exec(W),ne)for(Dt=0;Dt<cs.length;Dt++)$t=ne[++Ot],Te=cs[Dt],typeof Te===d&&Te.length>0?Te.length===2?typeof Te[1]==c?this[Te[0]]=Te[1].call(this,$t):this[Te[0]]=Te[1]:Te.length===3?typeof Te[1]===c&&!(Te[1].exec&&Te[1].test)?this[Te[0]]=$t?Te[1].call(this,$t,Te[2]):n:this[Te[0]]=$t?$t.replace(Te[1],Te[2]):n:Te.length===4&&(this[Te[0]]=$t?Te[3].call(this,$t.replace(Te[1],Te[2])):n):this[Te]=$t||n;ee+=2}},A=function(W,ce){for(var ee in ce)if(typeof ce[ee]===d&&ce[ee].length>0){for(var Ce=0;Ce<ce[ee].length;Ce++)if(Gi(ce[ee][Ce],W))return ee===o?n:ee}else if(Gi(ce[ee],W))return ee===o?n:ee;return ce.hasOwnProperty("*")?ce["*"]:W},U={"1.0":"/8","1.2":"/1","1.3":"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"},G={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2","8.1":"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},Ie={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[D,[E,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[D,[E,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[E,D],[/opios[\/ ]+([\w\.]+)/i],[D,[E,tr+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[D,[E,tr+" GX"]],[/\bopr\/([\w\.]+)/i],[D,[E,tr]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[D,[E,"Baidu"]],[/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],[D,[E,"Maxthon"]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,/(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio|(?=comodo_)?dragon)\/([-\w\.]+)/i,/(heytap|ovi|115)browser\/([\d\.]+)/i,/(weibo)__([\d\.]+)/i],[E,D],[/quark(?:pc)?\/([-\w\.]+)/i],[D,[E,"Quark"]],[/\bddg\/([\w\.]+)/i],[D,[E,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[D,[E,"UC"+$e]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[D,[E,"WeChat"]],[/konqueror\/([\w\.]+)/i],[D,[E,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[D,[E,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[D,[E,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[D,[E,"Smart Lenovo "+$e]],[/(avast|avg)\/([\w\.]+)/i],[[E,/(.+)/,"$1 Secure "+$e],D],[/\bfocus\/([\w\.]+)/i],[D,[E,Ke+" Focus"]],[/\bopt\/([\w\.]+)/i],[D,[E,tr+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[D,[E,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[D,[E,"Dolphin"]],[/coast\/([\w\.]+)/i],[D,[E,tr+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[D,[E,"MIUI"+$n]],[/fxios\/([\w\.-]+)/i],[D,[E,Ke]],[/\bqihoobrowser\/?([\w\.]*)/i],[D,[E,"360"]],[/\b(qq)\/([\w\.]+)/i],[[E,/(.+)/,"$1Browser"],D],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[E,/(.+)/,"$1"+$n],D],[/samsungbrowser\/([\w\.]+)/i],[D,[E,lr+" Internet"]],[/metasr[\/ ]?([\d\.]+)/i],[D,[E,"Sogou Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[E,"Sogou Mobile"],D],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i],[E,D],[/(lbbrowser|rekonq)/i,/\[(linkedin)app\]/i],[E],[/ome\/([\w\.]+) \w* ?(iron) saf/i,/ome\/([\w\.]+).+qihu (360)[es]e/i],[D,E],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[E,ei],D],[/(Klarna)\/([\w\.]+)/i,/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(alipay)client\/([\w\.]+)/i,/(twitter)(?:and| f.+e\/([\w\.]+))/i,/(chromium|instagram|snapchat)[\/ ]([-\w\.]+)/i],[E,D],[/\bgsa\/([\w\.]+) .*safari\//i],[D,[E,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[D,[E,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[D,[E,xe+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[E,xe+" WebView"],D],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[D,[E,"Android "+$e]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[E,D],[/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],[D,[E,"Mobile Safari"]],[/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],[D,E],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[E,[D,A,U]],[/(webkit|khtml)\/([\w\.]+)/i],[E,D],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[E,"Netscape"],D],[/(wolvic|librewolf)\/([\w\.]+)/i],[E,D],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[D,[E,Ke+" 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,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i],[E,[D,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[E,[D,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i],[[P,"amd64"]],[/(ia32(?=;))/i],[[P,a]],[/((?:i[346]|x)86)[;\)]/i],[[P,"ia32"]],[/\b(aarch64|arm(v?8e?l?|_?64))\b/i],[[P,"arm64"]],[/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i],[[P,"armhf"]],[/windows (ce|mobile); ppc;/i],[[P,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i],[[P,/ower/,s,a]],[/(sun4\w)[;\)]/i],[[P,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i],[[P,a]]],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],[y,[_,lr],[v,R]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr])[-\w]+)/i,/sec-(sgh\w+)/i],[y,[_,lr],[v,L]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[y,[_,z],[v,L]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[y,[_,z],[v,R]],[/(macintosh);/i],[y,[_,z]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[y,[_,yt],[v,L]],[/(?:honor)([-\w ]+)[;\)]/i],[y,[_,"Honor"],[v,L]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[y,[_,gt],[v,R]],[/(?:huawei)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[y,[_,gt],[v,L]],[/\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],[[y,/_/g," "],[_,Hn],[v,L]],[/oid[^\)]+; (2\d{4}(283|rpbf)[cgl])( bui|\))/i,/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[y,/_/g," "],[_,Hn],[v,R]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[y,[_,"OPPO"],[v,L]],[/\b(opd2\d{3}a?) bui/i],[y,[_,"OPPO"],[v,R]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[y,[_,"Vivo"],[v,L]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[y,[_,"Realme"],[v,L]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[y,[_,ut],[v,L]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[y,[_,ut],[v,R]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[y,[_,ae],[v,R]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[y,[_,ae],[v,L]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[y,[_,"Lenovo"],[v,R]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[y,/_/g," "],[_,"Nokia"],[v,L]],[/(pixel c)\b/i],[y,[_,ve],[v,R]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[y,[_,ve],[v,L]],[/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[y,[_,Hr],[v,L]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[y,"Xperia Tablet"],[_,Hr],[v,R]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[y,[_,"OnePlus"],[v,L]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[y,[_,Z],[v,R]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[y,/(.+)/g,"Fire Phone $1"],[_,Z],[v,L]],[/(playbook);[-\w\),; ]+(rim)/i],[y,_,[v,R]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[y,[_,ge],[v,L]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[y,[_,J],[v,R]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[y,[_,J],[v,L]],[/(nexus 9)/i],[y,[_,"HTC"],[v,R]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[_,[y,/_/g," "],[v,L]],[/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])\w*(\)| bui)/i],[y,[_,"TCL"],[v,R]],[/(itel) ((\w+))/i],[[_,a],y,[v,A,{tablet:["p10001l","w7001"],"*":"mobile"}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[y,[_,"Acer"],[v,R]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[y,[_,"Meizu"],[v,L]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[y,[_,"Ulefone"],[v,L]],[/; (energy ?\w+)(?: bui|\))/i,/; energizer ([\w ]+)(?: bui|\))/i],[y,[_,"Energizer"],[v,L]],[/; cat (b35);/i,/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],[y,[_,"Cat"],[v,L]],[/((?:new )?andromax[\w- ]+)(?: bui|\))/i],[y,[_,"Smartfren"],[v,L]],[/droid.+; (a(?:015|06[35]|142p?))/i],[y,[_,"Nothing"],[v,L]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron|infinix|tecno|micromax|advan)[-_ ]?([-\w]*)/i,/; (imo) ((?!tab)[\w ]+?)(?: bui|\))/i,/(hp) ([\w ]+\w)/i,/(asus)-?(\w+)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w]+)/i,/(jolla)/i,/(oppo) ?([\w ]+) bui/i],[_,y,[v,L]],[/(imo) (tab \w+)/i,/(kobo)\s(ereader|touch)/i,/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i,/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[_,y,[v,R]],[/(surface duo)/i],[y,[_,ie],[v,R]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[y,[_,"Fairphone"],[v,L]],[/(u304aa)/i],[y,[_,"AT&T"],[v,L]],[/\bsie-(\w*)/i],[y,[_,"Siemens"],[v,L]],[/\b(rct\w+) b/i],[y,[_,"RCA"],[v,R]],[/\b(venue[\d ]{2,7}) b/i],[y,[_,"Dell"],[v,R]],[/\b(q(?:mv|ta)\w+) b/i],[y,[_,"Verizon"],[v,R]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[y,[_,"Barnes & Noble"],[v,R]],[/\b(tm\d{3}\w+) b/i],[y,[_,"NuVision"],[v,R]],[/\b(k88) b/i],[y,[_,"ZTE"],[v,R]],[/\b(nx\d{3}j) b/i],[y,[_,"ZTE"],[v,L]],[/\b(gen\d{3}) b.+49h/i],[y,[_,"Swiss"],[v,L]],[/\b(zur\d{3}) b/i],[y,[_,"Swiss"],[v,R]],[/\b((zeki)?tb.*\b) b/i],[y,[_,"Zeki"],[v,R]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[_,"Dragon Touch"],y,[v,R]],[/\b(ns-?\w{0,9}) b/i],[y,[_,"Insignia"],[v,R]],[/\b((nxa|next)-?\w{0,9}) b/i],[y,[_,"NextBook"],[v,R]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[_,"Voice"],y,[v,L]],[/\b(lvtel\-)?(v1[12]) b/i],[[_,"LvTel"],y,[v,L]],[/\b(ph-1) /i],[y,[_,"Essential"],[v,L]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[y,[_,"Envizen"],[v,R]],[/\b(trio[-\w\. ]+) b/i],[y,[_,"MachSpeed"],[v,R]],[/\btu_(1491) b/i],[y,[_,"Rotor"],[v,R]],[/(shield[\w ]+) b/i],[y,[_,"Nvidia"],[v,R]],[/(sprint) (\w+)/i],[_,y,[v,L]],[/(kin\.[onetw]{3})/i],[[y,/\./g," "],[_,ie],[v,L]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[y,[_,nn],[v,R]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[y,[_,nn],[v,L]],[/smart-tv.+(samsung)/i],[_,[v,q]],[/hbbtv.+maple;(\d+)/i],[[y,/^/,"SmartTV"],[_,lr],[v,q]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[_,ae],[v,q]],[/(apple) ?tv/i],[_,[y,z+" TV"],[v,q]],[/crkey/i],[[y,xe+"cast"],[_,ve],[v,q]],[/droid.+aft(\w+)( bui|\))/i],[y,[_,Z],[v,q]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[y,[_,yt],[v,q]],[/(bravia[\w ]+)( bui|\))/i],[y,[_,Hr],[v,q]],[/(mitv-\w{5}) bui/i],[y,[_,Hn],[v,q]],[/Hbbtv.*(technisat) (.*);/i],[_,y,[v,q]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[_,p],[y,p],[v,q]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[v,q]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[_,y,[v,M]],[/droid.+; (shield) bui/i],[y,[_,"Nvidia"],[v,M]],[/(playstation [345portablevi]+)/i],[y,[_,Hr],[v,M]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[y,[_,ie],[v,M]],[/\b(sm-[lr]\d\d[05][fnuw]?s?)\b/i],[y,[_,lr],[v,he]],[/((pebble))app/i],[_,y,[v,he]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[y,[_,z],[v,he]],[/droid.+; (glass) \d/i],[y,[_,ve],[v,he]],[/droid.+; (wt63?0{2,3})\)/i],[y,[_,nn],[v,he]],[/droid.+; (glass) \d/i],[y,[_,ve],[v,he]],[/(pico) (4|neo3(?: link|pro)?)/i],[_,y,[v,he]],[/; (quest( \d| pro)?)/i],[y,[_,ei],[v,he]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[_,[v,ke]],[/(aeobc)\b/i],[y,[_,Z],[v,ke]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i],[y,[v,L]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[y,[v,R]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[v,R]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[v,L]],[/(android[-\w\. ]{0,9});.+buil/i],[y,[_,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[D,[E,g+"HTML"]],[/(arkweb)\/([\w\.]+)/i],[E,D],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[D,[E,"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],[E,D],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[D,E]],os:[[/microsoft (windows) (vista|xp)/i],[E,D],[/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i],[E,[D,A,G]],[/windows nt 6\.2; (arm)/i,/windows[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i,/(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[D,A,G],[E,"Windows"]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[D,/_/g,"."],[E,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[E,Gn],[D,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[D,E],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish|openharmony)[-\/ ]?([\w\.]*)/i,/(blackberry)\w*\/([\w\.]*)/i,/(tizen|kaios)[\/ ]([\w\.]+)/i,/\((series40);/i],[E,D],[/\(bb(10);/i],[D,[E,ge]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[D,[E,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[D,[E,Ke+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[D,[E,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[D,[E,"watchOS"]],[/crkey\/([\d\.]+)/i],[D,[E,xe+"cast"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[E,qi],D],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux) ?([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[E,D],[/(sunos) ?([\w\.\d]*)/i],[[E,"Solaris"],D],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[E,D]]},me=function(W,ce){if(typeof W===d&&(ce=W,W=n),!(this instanceof me))return new me(W,ce).getResult();var ee=typeof r!==u&&r.navigator?r.navigator:n,Ce=W||(ee&&ee.userAgent?ee.userAgent:s),Ot=ee&&ee.userAgentData?ee.userAgentData:n,Dt=ce?vt(Ie,ce):Ie,Te=ee&&ee.userAgent==Ce;return this.getBrowser=function(){var ne={};return ne[E]=n,ne[D]=n,T.call(ne,Ce,Dt.browser),ne[h]=l(ne[D]),Te&&ee&&ee.brave&&typeof ee.brave.isBrave==c&&(ne[E]="Brave"),ne},this.getCPU=function(){var ne={};return ne[P]=n,T.call(ne,Ce,Dt.cpu),ne},this.getDevice=function(){var ne={};return ne[_]=n,ne[y]=n,ne[v]=n,T.call(ne,Ce,Dt.device),Te&&!ne[v]&&Ot&&Ot.mobile&&(ne[v]=L),Te&&ne[y]=="Macintosh"&&ee&&typeof ee.standalone!==u&&ee.maxTouchPoints&&ee.maxTouchPoints>2&&(ne[y]="iPad",ne[v]=R),ne},this.getEngine=function(){var ne={};return ne[E]=n,ne[D]=n,T.call(ne,Ce,Dt.engine),ne},this.getOS=function(){var ne={};return ne[E]=n,ne[D]=n,T.call(ne,Ce,Dt.os),Te&&!ne[E]&&Ot&&Ot.platform&&Ot.platform!="Unknown"&&(ne[E]=Ot.platform.replace(/chrome os/i,qi).replace(/macos/i,Gn)),ne},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return Ce},this.setUA=function(ne){return Ce=typeof ne===m&&ne.length>B?p(ne,B):ne,this},this.setUA(Ce),this};me.VERSION=i,me.BROWSER=$r([E,D,h]),me.CPU=$r([P]),me.DEVICE=$r([y,_,v,M,L,q,R,he,ke]),me.ENGINE=me.OS=$r([E,D]),typeof e!==u?(typeof t!==u&&t.exports&&(e=t.exports=me),e.UAParser=me):typeof define===c&&define.amd?define(function(){return me}):typeof r!==u&&(r.UAParser=me);var ye=typeof r!==u&&(r.jQuery||r.Zepto);if(ye&&!ye.ua){var je=new me;ye.ua=je.getResult(),ye.ua.get=function(){return je.getUA()},ye.ua.set=function(W){je.setUA(W);var ce=je.getResult();for(var ee in ce)ye.ua[ee]=ce[ee]}}})(typeof window=="object"?window:e)}),Df=ur((e,t)=>{"use strict";(function(r){if(typeof e=="object"&&typeof t<"u")t.exports=r();else if(typeof define=="function"&&define.amd)define([],r);else{var n;typeof window<"u"?n=window:typeof global<"u"?n=global:typeof self<"u"?n=self:n=this,n.localforage=r()}})(function(){var r,n,i;return function s(o,c,u){function d(y,E){if(!c[y]){if(!o[y]){var v=typeof Ki=="function"&&Ki;if(!E&&v)return v(y,!0);if(m)return m(y,!0);var _=new Error("Cannot find module '"+y+"'");throw _.code="MODULE_NOT_FOUND",_}var D=c[y]={exports:{}};o[y][0].call(D.exports,function(P){var M=o[y][1][P];return d(M||P)},D,D.exports,s,o,c,u)}return c[y].exports}for(var m=typeof Ki=="function"&&Ki,h=0;h<u.length;h++)d(u[h]);return d}({1:[function(s,o,c){(function(u){"use strict";var d=u.MutationObserver||u.WebKitMutationObserver,m;if(d){var h=0,y=new d(P),E=u.document.createTextNode("");y.observe(E,{characterData:!0}),m=function(){E.data=h=++h%2}}else if(!u.setImmediate&&typeof u.MessageChannel<"u"){var v=new u.MessageChannel;v.port1.onmessage=P,m=function(){v.port2.postMessage(0)}}else"document"in u&&"onreadystatechange"in u.document.createElement("script")?m=function(){var L=u.document.createElement("script");L.onreadystatechange=function(){P(),L.onreadystatechange=null,L.parentNode.removeChild(L),L=null},u.document.documentElement.appendChild(L)}:m=function(){setTimeout(P,0)};var _,D=[];function P(){_=!0;for(var L,R,q=D.length;q;){for(R=D,D=[],L=-1;++L<q;)R[L]();q=D.length}_=!1}o.exports=M;function M(L){D.push(L)===1&&!_&&m()}}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{}],2:[function(s,o,c){"use strict";var u=s(1);function d(){}var m={},h=["REJECTED"],y=["FULFILLED"],E=["PENDING"];o.exports=v;function v(B){if(typeof B!="function")throw new TypeError("resolver must be a function");this.state=E,this.queue=[],this.outcome=void 0,B!==d&&M(this,B)}v.prototype.catch=function(B){return this.then(null,B)},v.prototype.then=function(B,Z){if(typeof B!="function"&&this.state===y||typeof Z!="function"&&this.state===h)return this;var z=new this.constructor(d);if(this.state!==E){var J=this.state===y?B:Z;D(z,J,this.outcome)}else this.queue.push(new _(z,B,Z));return z};function _(B,Z,z){this.promise=B,typeof Z=="function"&&(this.onFulfilled=Z,this.callFulfilled=this.otherCallFulfilled),typeof z=="function"&&(this.onRejected=z,this.callRejected=this.otherCallRejected)}_.prototype.callFulfilled=function(B){m.resolve(this.promise,B)},_.prototype.otherCallFulfilled=function(B){D(this.promise,this.onFulfilled,B)},_.prototype.callRejected=function(B){m.reject(this.promise,B)},_.prototype.otherCallRejected=function(B){D(this.promise,this.onRejected,B)};function D(B,Z,z){u(function(){var J;try{J=Z(z)}catch(ge){return m.reject(B,ge)}J===B?m.reject(B,new TypeError("Cannot resolve promise with itself")):m.resolve(B,J)})}m.resolve=function(B,Z){var z=L(P,Z);if(z.status==="error")return m.reject(B,z.value);var J=z.value;if(J)M(B,J);else{B.state=y,B.outcome=Z;for(var ge=-1,$e=B.queue.length;++ge<$e;)B.queue[ge].callFulfilled(Z)}return B},m.reject=function(B,Z){B.state=h,B.outcome=Z;for(var z=-1,J=B.queue.length;++z<J;)B.queue[z].callRejected(Z);return B};function P(B){var Z=B&&B.then;if(B&&(typeof B=="object"||typeof B=="function")&&typeof Z=="function")return function(){Z.apply(B,arguments)}}function M(B,Z){var z=!1;function J(g){z||(z=!0,m.reject(B,g))}function ge(g){z||(z=!0,m.resolve(B,g))}function $e(){Z(ge,J)}var xe=L($e);xe.status==="error"&&J(xe.value)}function L(B,Z){var z={};try{z.value=B(Z),z.status="success"}catch(J){z.status="error",z.value=J}return z}v.resolve=R;function R(B){return B instanceof this?B:m.resolve(new this(d),B)}v.reject=q;function q(B){var Z=new this(d);return m.reject(Z,B)}v.all=he;function he(B){var Z=this;if(Object.prototype.toString.call(B)!=="[object Array]")return this.reject(new TypeError("must be an array"));var z=B.length,J=!1;if(!z)return this.resolve([]);for(var ge=new Array(z),$e=0,xe=-1,g=new this(d);++xe<z;)Ke(B[xe],xe);return g;function Ke(ve,gt){Z.resolve(ve).then(ae,function(ie){J||(J=!0,m.reject(g,ie))});function ae(ie){ge[gt]=ie,++$e===z&&!J&&(J=!0,m.resolve(g,ge))}}}v.race=ke;function ke(B){var Z=this;if(Object.prototype.toString.call(B)!=="[object Array]")return this.reject(new TypeError("must be an array"));var z=B.length,J=!1;if(!z)return this.resolve([]);for(var ge=-1,$e=new this(d);++ge<z;)xe(B[ge]);return $e;function xe(g){Z.resolve(g).then(function(Ke){J||(J=!0,m.resolve($e,Ke))},function(Ke){J||(J=!0,m.reject($e,Ke))})}}},{1:1}],3:[function(s,o,c){(function(u){"use strict";typeof u.Promise!="function"&&(u.Promise=s(2))}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{2:2}],4:[function(s,o,c){"use strict";var u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(f){return typeof f}:function(f){return f&&typeof Symbol=="function"&&f.constructor===Symbol&&f!==Symbol.prototype?"symbol":typeof f};function d(f,S){if(!(f instanceof S))throw new TypeError("Cannot call a class as a function")}function m(){try{if(typeof indexedDB<"u")return indexedDB;if(typeof webkitIndexedDB<"u")return webkitIndexedDB;if(typeof mozIndexedDB<"u")return mozIndexedDB;if(typeof OIndexedDB<"u")return OIndexedDB;if(typeof msIndexedDB<"u")return msIndexedDB}catch{return}}var h=m();function y(){try{if(!h||!h.open)return!1;var f=typeof openDatabase<"u"&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),S=typeof fetch=="function"&&fetch.toString().indexOf("[native code")!==-1;return(!f||S)&&typeof indexedDB<"u"&&typeof IDBKeyRange<"u"}catch{return!1}}function E(f,S){f=f||[],S=S||{};try{return new Blob(f,S)}catch(O){if(O.name!=="TypeError")throw O;for(var I=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,x=new I,C=0;C<f.length;C+=1)x.append(f[C]);return x.getBlob(S.type)}}typeof Promise>"u"&&s(3);var v=Promise;function _(f,S){S&&f.then(function(I){S(null,I)},function(I){S(I)})}function D(f,S,I){typeof S=="function"&&f.then(S),typeof I=="function"&&f.catch(I)}function P(f){return typeof f!="string"&&(console.warn(f+" used as a key, but it is not a string."),f=String(f)),f}function M(){if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}var L="local-forage-detect-blob-support",R=void 0,q={},he=Object.prototype.toString,ke="readonly",B="readwrite";function Z(f){for(var S=f.length,I=new ArrayBuffer(S),x=new Uint8Array(I),C=0;C<S;C++)x[C]=f.charCodeAt(C);return I}function z(f){return new v(function(S){var I=f.transaction(L,B),x=E([""]);I.objectStore(L).put(x,"key"),I.onabort=function(C){C.preventDefault(),C.stopPropagation(),S(!1)},I.oncomplete=function(){var C=navigator.userAgent.match(/Chrome\/(\d+)/),O=navigator.userAgent.match(/Edge\//);S(O||!C||parseInt(C[1],10)>=43)}}).catch(function(){return!1})}function J(f){return typeof R=="boolean"?v.resolve(R):z(f).then(function(S){return R=S,R})}function ge(f){var S=q[f.name],I={};I.promise=new v(function(x,C){I.resolve=x,I.reject=C}),S.deferredOperations.push(I),S.dbReady?S.dbReady=S.dbReady.then(function(){return I.promise}):S.dbReady=I.promise}function $e(f){var S=q[f.name],I=S.deferredOperations.pop();if(I)return I.resolve(),I.promise}function xe(f,S){var I=q[f.name],x=I.deferredOperations.pop();if(x)return x.reject(S),x.promise}function g(f,S){return new v(function(I,x){if(q[f.name]=q[f.name]||Hr(),f.db)if(S)ge(f),f.db.close();else return I(f.db);var C=[f.name];S&&C.push(f.version);var O=h.open.apply(h,C);S&&(O.onupgradeneeded=function(k){var j=O.result;try{j.createObjectStore(f.storeName),k.oldVersion<=1&&j.createObjectStore(L)}catch(H){if(H.name==="ConstraintError")console.warn('The database "'+f.name+'" has been upgraded from version '+k.oldVersion+" to version "+k.newVersion+', but the storage "'+f.storeName+'" already exists.');else throw H}}),O.onerror=function(k){k.preventDefault(),x(O.error)},O.onsuccess=function(){var k=O.result;k.onversionchange=function(j){j.target.close()},I(k),$e(f)}})}function Ke(f){return g(f,!1)}function ve(f){return g(f,!0)}function gt(f,S){if(!f.db)return!0;var I=!f.db.objectStoreNames.contains(f.storeName),x=f.version<f.db.version,C=f.version>f.db.version;if(x&&(f.version!==S&&console.warn('The database "'+f.name+`" can't be downgraded from version `+f.db.version+" to version "+f.version+"."),f.version=f.db.version),C||I){if(I){var O=f.db.version+1;O>f.version&&(f.version=O)}return!0}return!1}function ae(f){return new v(function(S,I){var x=new FileReader;x.onerror=I,x.onloadend=function(C){var O=btoa(C.target.result||"");S({__local_forage_encoded_blob:!0,data:O,type:f.type})},x.readAsBinaryString(f)})}function ie(f){var S=Z(atob(f.data));return E([S],{type:f.type})}function ut(f){return f&&f.__local_forage_encoded_blob}function tr(f){var S=this,I=S._initReady().then(function(){var x=q[S._dbInfo.name];if(x&&x.dbReady)return x.dbReady});return D(I,f,f),I}function lr(f){ge(f);for(var S=q[f.name],I=S.forages,x=0;x<I.length;x++){var C=I[x];C._dbInfo.db&&(C._dbInfo.db.close(),C._dbInfo.db=null)}return f.db=null,Ke(f).then(function(O){return f.db=O,gt(f)?ve(f):O}).then(function(O){f.db=S.db=O;for(var k=0;k<I.length;k++)I[k]._dbInfo.db=O}).catch(function(O){throw xe(f,O),O})}function yt(f,S,I,x){x===void 0&&(x=1);try{var C=f.db.transaction(f.storeName,S);I(null,C)}catch(O){if(x>0&&(!f.db||O.name==="InvalidStateError"||O.name==="NotFoundError"))return v.resolve().then(function(){if(!f.db||O.name==="NotFoundError"&&!f.db.objectStoreNames.contains(f.storeName)&&f.version<=f.db.version)return f.db&&(f.version=f.db.version+1),ve(f)}).then(function(){return lr(f).then(function(){yt(f,S,I,x-1)})}).catch(I);I(O)}}function Hr(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function Hn(f){var S=this,I={db:null};if(f)for(var x in f)I[x]=f[x];var C=q[I.name];C||(C=Hr(),q[I.name]=C),C.forages.push(S),S._initReady||(S._initReady=S.ready,S.ready=tr);var O=[];function k(){return v.resolve()}for(var j=0;j<C.forages.length;j++){var H=C.forages[j];H!==S&&O.push(H._initReady().catch(k))}var V=C.forages.slice(0);return v.all(O).then(function(){return I.db=C.db,Ke(I)}).then(function(F){return I.db=F,gt(I,S._defaultConfig.version)?ve(I):F}).then(function(F){I.db=C.db=F,S._dbInfo=I;for(var Y=0;Y<V.length;Y++){var pe=V[Y];pe!==S&&(pe._dbInfo.db=I.db,pe._dbInfo.version=I.version)}})}function nn(f,S){var I=this;f=P(f);var x=new v(function(C,O){I.ready().then(function(){yt(I._dbInfo,ke,function(k,j){if(k)return O(k);try{var H=j.objectStore(I._dbInfo.storeName),V=H.get(f);V.onsuccess=function(){var F=V.result;F===void 0&&(F=null),ut(F)&&(F=ie(F)),C(F)},V.onerror=function(){O(V.error)}}catch(F){O(F)}})}).catch(O)});return _(x,S),x}function ei(f,S){var I=this,x=new v(function(C,O){I.ready().then(function(){yt(I._dbInfo,ke,function(k,j){if(k)return O(k);try{var H=j.objectStore(I._dbInfo.storeName),V=H.openCursor(),F=1;V.onsuccess=function(){var Y=V.result;if(Y){var pe=Y.value;ut(pe)&&(pe=ie(pe));var Ge=f(pe,Y.key,F++);Ge!==void 0?C(Ge):Y.continue()}else C()},V.onerror=function(){O(V.error)}}catch(Y){O(Y)}})}).catch(O)});return _(x,S),x}function qi(f,S,I){var x=this;f=P(f);var C=new v(function(O,k){var j;x.ready().then(function(){return j=x._dbInfo,he.call(S)==="[object Blob]"?J(j.db).then(function(H){return H?S:ae(S)}):S}).then(function(H){yt(x._dbInfo,B,function(V,F){if(V)return k(V);try{var Y=F.objectStore(x._dbInfo.storeName);H===null&&(H=void 0);var pe=Y.put(H,f);F.oncomplete=function(){H===void 0&&(H=null),O(H)},F.onabort=F.onerror=function(){var Ge=pe.error?pe.error:pe.transaction.error;k(Ge)}}catch(Ge){k(Ge)}})}).catch(k)});return _(C,I),C}function Gn(f,S){var I=this;f=P(f);var x=new v(function(C,O){I.ready().then(function(){yt(I._dbInfo,B,function(k,j){if(k)return O(k);try{var H=j.objectStore(I._dbInfo.storeName),V=H.delete(f);j.oncomplete=function(){C()},j.onerror=function(){O(V.error)},j.onabort=function(){var F=V.error?V.error:V.transaction.error;O(F)}}catch(F){O(F)}})}).catch(O)});return _(x,S),x}function $n(f){var S=this,I=new v(function(x,C){S.ready().then(function(){yt(S._dbInfo,B,function(O,k){if(O)return C(O);try{var j=k.objectStore(S._dbInfo.storeName),H=j.clear();k.oncomplete=function(){x()},k.onabort=k.onerror=function(){var V=H.error?H.error:H.transaction.error;C(V)}}catch(V){C(V)}})}).catch(C)});return _(I,f),I}function vt(f){var S=this,I=new v(function(x,C){S.ready().then(function(){yt(S._dbInfo,ke,function(O,k){if(O)return C(O);try{var j=k.objectStore(S._dbInfo.storeName),H=j.count();H.onsuccess=function(){x(H.result)},H.onerror=function(){C(H.error)}}catch(V){C(V)}})}).catch(C)});return _(I,f),I}function $r(f,S){var I=this,x=new v(function(C,O){if(f<0){C(null);return}I.ready().then(function(){yt(I._dbInfo,ke,function(k,j){if(k)return O(k);try{var H=j.objectStore(I._dbInfo.storeName),V=!1,F=H.openKeyCursor();F.onsuccess=function(){var Y=F.result;if(!Y){C(null);return}f===0||V?C(Y.key):(V=!0,Y.advance(f))},F.onerror=function(){O(F.error)}}catch(Y){O(Y)}})}).catch(O)});return _(x,S),x}function Gi(f){var S=this,I=new v(function(x,C){S.ready().then(function(){yt(S._dbInfo,ke,function(O,k){if(O)return C(O);try{var j=k.objectStore(S._dbInfo.storeName),H=j.openKeyCursor(),V=[];H.onsuccess=function(){var F=H.result;if(!F){x(V);return}V.push(F.key),F.continue()},H.onerror=function(){C(H.error)}}catch(F){C(F)}})}).catch(C)});return _(I,f),I}function a(f,S){S=M.apply(this,arguments);var I=this.config();f=typeof f!="function"&&f||{},f.name||(f.name=f.name||I.name,f.storeName=f.storeName||I.storeName);var x=this,C;if(!f.name)C=v.reject("Invalid arguments");else{var O=f.name===I.name&&x._dbInfo.db,k=O?v.resolve(x._dbInfo.db):Ke(f).then(function(j){var H=q[f.name],V=H.forages;H.db=j;for(var F=0;F<V.length;F++)V[F]._dbInfo.db=j;return j});f.storeName?C=k.then(function(j){if(j.objectStoreNames.contains(f.storeName)){var H=j.version+1;ge(f);var V=q[f.name],F=V.forages;j.close();for(var Y=0;Y<F.length;Y++){var pe=F[Y];pe._dbInfo.db=null,pe._dbInfo.version=H}var Ge=new v(function(Ae,pt){var We=h.open(f.name,H);We.onerror=function(Ht){var Cc=We.result;Cc.close(),pt(Ht)},We.onupgradeneeded=function(){var Ht=We.result;Ht.deleteObjectStore(f.storeName)},We.onsuccess=function(){var Ht=We.result;Ht.close(),Ae(Ht)}});return Ge.then(function(Ae){V.db=Ae;for(var pt=0;pt<F.length;pt++){var We=F[pt];We._dbInfo.db=Ae,$e(We._dbInfo)}}).catch(function(Ae){throw(xe(f,Ae)||v.resolve()).catch(function(){}),Ae})}}):C=k.then(function(j){ge(f);var H=q[f.name],V=H.forages;j.close();for(var F=0;F<V.length;F++){var Y=V[F];Y._dbInfo.db=null}var pe=new v(function(Ge,Ae){var pt=h.deleteDatabase(f.name);pt.onerror=function(){var We=pt.result;We&&We.close(),Ae(pt.error)},pt.onblocked=function(){console.warn('dropInstance blocked for database "'+f.name+'" until all open connections are closed')},pt.onsuccess=function(){var We=pt.result;We&&We.close(),Ge(We)}});return pe.then(function(Ge){H.db=Ge;for(var Ae=0;Ae<V.length;Ae++){var pt=V[Ae];$e(pt._dbInfo)}}).catch(function(Ge){throw(xe(f,Ge)||v.resolve()).catch(function(){}),Ge})})}return _(C,S),C}var l={_driver:"asyncStorage",_initStorage:Hn,_support:y(),iterate:ei,getItem:nn,setItem:qi,removeItem:Gn,clear:$n,length:vt,key:$r,keys:Gi,dropInstance:a};function p(){return typeof openDatabase=="function"}var T="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",A="~~local_forage_type~",U=/^~~local_forage_type~([^~]+)~/,G="__lfsc__:",Ie=G.length,me="arbf",ye="blob",je="si08",W="ui08",ce="uic8",ee="si16",Ce="si32",Ot="ur16",Dt="ui32",Te="fl32",ne="fl64",$t=Ie+me.length,Yi=Object.prototype.toString;function cs(f){var S=f.length*.75,I=f.length,x,C=0,O,k,j,H;f[f.length-1]==="="&&(S--,f[f.length-2]==="="&&S--);var V=new ArrayBuffer(S),F=new Uint8Array(V);for(x=0;x<I;x+=4)O=T.indexOf(f[x]),k=T.indexOf(f[x+1]),j=T.indexOf(f[x+2]),H=T.indexOf(f[x+3]),F[C++]=O<<2|k>>4,F[C++]=(k&15)<<4|j>>2,F[C++]=(j&3)<<6|H&63;return V}function Qo(f){var S=new Uint8Array(f),I="",x;for(x=0;x<S.length;x+=3)I+=T[S[x]>>2],I+=T[(S[x]&3)<<4|S[x+1]>>4],I+=T[(S[x+1]&15)<<2|S[x+2]>>6],I+=T[S[x+2]&63];return S.length%3===2?I=I.substring(0,I.length-1)+"=":S.length%3===1&&(I=I.substring(0,I.length-2)+"=="),I}function Qh(f,S){var I="";if(f&&(I=Yi.call(f)),f&&(I==="[object ArrayBuffer]"||f.buffer&&Yi.call(f.buffer)==="[object ArrayBuffer]")){var x,C=G;f instanceof ArrayBuffer?(x=f,C+=me):(x=f.buffer,I==="[object Int8Array]"?C+=je:I==="[object Uint8Array]"?C+=W:I==="[object Uint8ClampedArray]"?C+=ce:I==="[object Int16Array]"?C+=ee:I==="[object Uint16Array]"?C+=Ot:I==="[object Int32Array]"?C+=Ce:I==="[object Uint32Array]"?C+=Dt:I==="[object Float32Array]"?C+=Te:I==="[object Float64Array]"?C+=ne:S(new Error("Failed to get type for BinaryArray"))),S(C+Qo(x))}else if(I==="[object Blob]"){var O=new FileReader;O.onload=function(){var k=A+f.type+"~"+Qo(this.result);S(G+ye+k)},O.readAsArrayBuffer(f)}else try{S(JSON.stringify(f))}catch(k){console.error("Couldn't convert value into a JSON string: ",f),S(null,k)}}function Zh(f){if(f.substring(0,Ie)!==G)return JSON.parse(f);var S=f.substring($t),I=f.substring(Ie,$t),x;if(I===ye&&U.test(S)){var C=S.match(U);x=C[1],S=S.substring(C[0].length)}var O=cs(S);switch(I){case me:return O;case ye:return E([O],{type:x});case je:return new Int8Array(O);case W:return new Uint8Array(O);case ce:return new Uint8ClampedArray(O);case ee:return new Int16Array(O);case Ot:return new Uint16Array(O);case Ce:return new Int32Array(O);case Dt:return new Uint32Array(O);case Te:return new Float32Array(O);case ne:return new Float64Array(O);default:throw new Error("Unkown type: "+I)}}var Wa={serialize:Qh,deserialize:Zh,stringToBuffer:cs,bufferToString:Qo};function bh(f,S,I,x){f.executeSql("CREATE TABLE IF NOT EXISTS "+S.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],I,x)}function ep(f){var S=this,I={db:null};if(f)for(var x in f)I[x]=typeof f[x]!="string"?f[x].toString():f[x];var C=new v(function(O,k){try{I.db=openDatabase(I.name,String(I.version),I.description,I.size)}catch(j){return k(j)}I.db.transaction(function(j){bh(j,I,function(){S._dbInfo=I,O()},function(H,V){k(V)})},k)});return I.serializer=Wa,C}function Vn(f,S,I,x,C,O){f.executeSql(I,x,C,function(k,j){j.code===j.SYNTAX_ERR?k.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[S.storeName],function(H,V){V.rows.length?O(H,j):bh(H,S,function(){H.executeSql(I,x,C,O)},O)},O):O(k,j)},O)}function tp(f,S){var I=this;f=P(f);var x=new v(function(C,O){I.ready().then(function(){var k=I._dbInfo;k.db.transaction(function(j){Vn(j,k,"SELECT * FROM "+k.storeName+" WHERE key = ? LIMIT 1",[f],function(H,V){var F=V.rows.length?V.rows.item(0).value:null;F&&(F=k.serializer.deserialize(F)),C(F)},function(H,V){O(V)})})}).catch(O)});return _(x,S),x}function np(f,S){var I=this,x=new v(function(C,O){I.ready().then(function(){var k=I._dbInfo;k.db.transaction(function(j){Vn(j,k,"SELECT * FROM "+k.storeName,[],function(H,V){for(var F=V.rows,Y=F.length,pe=0;pe<Y;pe++){var Ge=F.item(pe),Ae=Ge.value;if(Ae&&(Ae=k.serializer.deserialize(Ae)),Ae=f(Ae,Ge.key,pe+1),Ae!==void 0){C(Ae);return}}C()},function(H,V){O(V)})})}).catch(O)});return _(x,S),x}function wh(f,S,I,x){var C=this;f=P(f);var O=new v(function(k,j){C.ready().then(function(){S===void 0&&(S=null);var H=S,V=C._dbInfo;V.serializer.serialize(S,function(F,Y){Y?j(Y):V.db.transaction(function(pe){Vn(pe,V,"INSERT OR REPLACE INTO "+V.storeName+" (key, value) VALUES (?, ?)",[f,F],function(){k(H)},function(Ge,Ae){j(Ae)})},function(pe){if(pe.code===pe.QUOTA_ERR){if(x>0){k(wh.apply(C,[f,H,I,x-1]));return}j(pe)}})})}).catch(j)});return _(O,I),O}function ip(f,S,I){return wh.apply(this,[f,S,I,1])}function sp(f,S){var I=this;f=P(f);var x=new v(function(C,O){I.ready().then(function(){var k=I._dbInfo;k.db.transaction(function(j){Vn(j,k,"DELETE FROM "+k.storeName+" WHERE key = ?",[f],function(){C()},function(H,V){O(V)})})}).catch(O)});return _(x,S),x}function op(f){var S=this,I=new v(function(x,C){S.ready().then(function(){var O=S._dbInfo;O.db.transaction(function(k){Vn(k,O,"DELETE FROM "+O.storeName,[],function(){x()},function(j,H){C(H)})})}).catch(C)});return _(I,f),I}function ap(f){var S=this,I=new v(function(x,C){S.ready().then(function(){var O=S._dbInfo;O.db.transaction(function(k){Vn(k,O,"SELECT COUNT(key) as c FROM "+O.storeName,[],function(j,H){var V=H.rows.item(0).c;x(V)},function(j,H){C(H)})})}).catch(C)});return _(I,f),I}function cp(f,S){var I=this,x=new v(function(C,O){I.ready().then(function(){var k=I._dbInfo;k.db.transaction(function(j){Vn(j,k,"SELECT key FROM "+k.storeName+" WHERE id = ? LIMIT 1",[f+1],function(H,V){var F=V.rows.length?V.rows.item(0).key:null;C(F)},function(H,V){O(V)})})}).catch(O)});return _(x,S),x}function hp(f){var S=this,I=new v(function(x,C){S.ready().then(function(){var O=S._dbInfo;O.db.transaction(function(k){Vn(k,O,"SELECT key FROM "+O.storeName,[],function(j,H){for(var V=[],F=0;F<H.rows.length;F++)V.push(H.rows.item(F).key);x(V)},function(j,H){C(H)})})}).catch(C)});return _(I,f),I}function dp(f){return new v(function(S,I){f.transaction(function(x){x.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(C,O){for(var k=[],j=0;j<O.rows.length;j++)k.push(O.rows.item(j).name);S({db:f,storeNames:k})},function(C,O){I(O)})},function(x){I(x)})})}function gp(f,S){S=M.apply(this,arguments);var I=this.config();f=typeof f!="function"&&f||{},f.name||(f.name=f.name||I.name,f.storeName=f.storeName||I.storeName);var x=this,C;return f.name?C=new v(function(O){var k;f.name===I.name?k=x._dbInfo.db:k=openDatabase(f.name,"","",0),f.storeName?O({db:k,storeNames:[f.storeName]}):O(dp(k))}).then(function(O){return new v(function(k,j){O.db.transaction(function(H){function V(Ge){return new v(function(Ae,pt){H.executeSql("DROP TABLE IF EXISTS "+Ge,[],function(){Ae()},function(We,Ht){pt(Ht)})})}for(var F=[],Y=0,pe=O.storeNames.length;Y<pe;Y++)F.push(V(O.storeNames[Y]));v.all(F).then(function(){k()}).catch(function(Ge){j(Ge)})},function(H){j(H)})})}):C=v.reject("Invalid arguments"),_(C,S),C}var mp={_driver:"webSQLStorage",_initStorage:ep,_support:p(),iterate:np,getItem:tp,setItem:ip,removeItem:sp,clear:op,length:ap,key:cp,keys:hp,dropInstance:gp};function yp(){try{return typeof localStorage<"u"&&"setItem"in localStorage&&!!localStorage.setItem}catch{return!1}}function Ih(f,S){var I=f.name+"/";return f.storeName!==S.storeName&&(I+=f.storeName+"/"),I}function vp(){var f="_localforage_support_test";try{return localStorage.setItem(f,!0),localStorage.removeItem(f),!1}catch{return!0}}function bp(){return!vp()||localStorage.length>0}function wp(f){var S=this,I={};if(f)for(var x in f)I[x]=f[x];return I.keyPrefix=Ih(f,S._defaultConfig),bp()?(S._dbInfo=I,I.serializer=Wa,v.resolve()):v.reject()}function _p(f){var S=this,I=S.ready().then(function(){for(var x=S._dbInfo.keyPrefix,C=localStorage.length-1;C>=0;C--){var O=localStorage.key(C);O.indexOf(x)===0&&localStorage.removeItem(O)}});return _(I,f),I}function Ep(f,S){var I=this;f=P(f);var x=I.ready().then(function(){var C=I._dbInfo,O=localStorage.getItem(C.keyPrefix+f);return O&&(O=C.serializer.deserialize(O)),O});return _(x,S),x}function Sp(f,S){var I=this,x=I.ready().then(function(){for(var C=I._dbInfo,O=C.keyPrefix,k=O.length,j=localStorage.length,H=1,V=0;V<j;V++){var F=localStorage.key(V);if(F.indexOf(O)===0){var Y=localStorage.getItem(F);if(Y&&(Y=C.serializer.deserialize(Y)),Y=f(Y,F.substring(k),H++),Y!==void 0)return Y}}});return _(x,S),x}function Ip(f,S){var I=this,x=I.ready().then(function(){var C=I._dbInfo,O;try{O=localStorage.key(f)}catch{O=null}return O&&(O=O.substring(C.keyPrefix.length)),O});return _(x,S),x}function Tp(f){var S=this,I=S.ready().then(function(){for(var x=S._dbInfo,C=localStorage.length,O=[],k=0;k<C;k++){var j=localStorage.key(k);j.indexOf(x.keyPrefix)===0&&O.push(j.substring(x.keyPrefix.length))}return O});return _(I,f),I}function Cp(f){var S=this,I=S.keys().then(function(x){return x.length});return _(I,f),I}function Np(f,S){var I=this;f=P(f);var x=I.ready().then(function(){var C=I._dbInfo;localStorage.removeItem(C.keyPrefix+f)});return _(x,S),x}function Dp(f,S,I){var x=this;f=P(f);var C=x.ready().then(function(){S===void 0&&(S=null);var O=S;return new v(function(k,j){var H=x._dbInfo;H.serializer.serialize(S,function(V,F){if(F)j(F);else try{localStorage.setItem(H.keyPrefix+f,V),k(O)}catch(Y){(Y.name==="QuotaExceededError"||Y.name==="NS_ERROR_DOM_QUOTA_REACHED")&&j(Y),j(Y)}})})});return _(C,I),C}function xp(f,S){if(S=M.apply(this,arguments),f=typeof f!="function"&&f||{},!f.name){var I=this.config();f.name=f.name||I.name,f.storeName=f.storeName||I.storeName}var x=this,C;return f.name?C=new v(function(O){f.storeName?O(Ih(f,x._defaultConfig)):O(f.name+"/")}).then(function(O){for(var k=localStorage.length-1;k>=0;k--){var j=localStorage.key(k);j.indexOf(O)===0&&localStorage.removeItem(j)}}):C=v.reject("Invalid arguments"),_(C,S),C}var Op={_driver:"localStorageWrapper",_initStorage:wp,_support:yp(),iterate:Sp,getItem:Ep,setItem:Dp,removeItem:Np,clear:_p,length:Cp,key:Ip,keys:Tp,dropInstance:xp},Ap=function(f,S){return f===S||typeof f=="number"&&typeof S=="number"&&isNaN(f)&&isNaN(S)},Pp=function(f,S){for(var I=f.length,x=0;x<I;){if(Ap(f[x],S))return!0;x++}return!1},Th=Array.isArray||function(f){return Object.prototype.toString.call(f)==="[object Array]"},to={},Ch={},zi={INDEXEDDB:l,WEBSQL:mp,LOCALSTORAGE:Op},Rp=[zi.INDEXEDDB._driver,zi.WEBSQL._driver,zi.LOCALSTORAGE._driver],Xo=["dropInstance"],Ka=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(Xo),kp={description:"",driver:Rp.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function Lp(f,S){f[S]=function(){var I=arguments;return f.ready().then(function(){return f[S].apply(f,I)})}}function Tc(){for(var f=1;f<arguments.length;f++){var S=arguments[f];if(S)for(var I in S)S.hasOwnProperty(I)&&(Th(S[I])?arguments[0][I]=S[I].slice():arguments[0][I]=S[I])}return arguments[0]}var Up=function(){function f(S){d(this,f);for(var I in zi)if(zi.hasOwnProperty(I)){var x=zi[I],C=x._driver;this[I]=C,to[C]||this.defineDriver(x)}this._defaultConfig=Tc({},kp),this._config=Tc({},this._defaultConfig,S),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}return f.prototype.config=function(S){if((typeof S>"u"?"undefined":u(S))==="object"){if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var I in S){if(I==="storeName"&&(S[I]=S[I].replace(/\W/g,"_")),I==="version"&&typeof S[I]!="number")return new Error("Database version must be a number.");this._config[I]=S[I]}return"driver"in S&&S.driver?this.setDriver(this._config.driver):!0}else return typeof S=="string"?this._config[S]:this._config},f.prototype.defineDriver=function(S,I,x){var C=new v(function(O,k){try{var j=S._driver,H=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!S._driver){k(H);return}for(var V=Ka.concat("_initStorage"),F=0,Y=V.length;F<Y;F++){var pe=V[F],Ge=!Pp(Xo,pe);if((Ge||S[pe])&&typeof S[pe]!="function"){k(H);return}}var Ae=function(){for(var We=function(Bp){return function(){var $p=new Error("Method "+Bp+" is not implemented by the current driver"),Nh=v.reject($p);return _(Nh,arguments[arguments.length-1]),Nh}},Ht=0,Cc=Xo.length;Ht<Cc;Ht++){var Dc=Xo[Ht];S[Dc]||(S[Dc]=We(Dc))}};Ae();var pt=function(We){to[j]&&console.info("Redefining LocalForage driver: "+j),to[j]=S,Ch[j]=We,O()};"_support"in S?S._support&&typeof S._support=="function"?S._support().then(pt,k):pt(!!S._support):pt(!0)}catch(We){k(We)}});return D(C,I,x),C},f.prototype.driver=function(){return this._driver||null},f.prototype.getDriver=function(S,I,x){var C=to[S]?v.resolve(to[S]):v.reject(new Error("Driver not found."));return D(C,I,x),C},f.prototype.getSerializer=function(S){var I=v.resolve(Wa);return D(I,S),I},f.prototype.ready=function(S){var I=this,x=I._driverSet.then(function(){return I._ready===null&&(I._ready=I._initDriver()),I._ready});return D(x,S,S),x},f.prototype.setDriver=function(S,I,x){var C=this;Th(S)||(S=[S]);var O=this._getSupportedDrivers(S);function k(){C._config.driver=C.driver()}function j(F){return C._extend(F),k(),C._ready=C._initStorage(C._config),C._ready}function H(F){return function(){var Y=0;function pe(){for(;Y<F.length;){var Ge=F[Y];return Y++,C._dbInfo=null,C._ready=null,C.getDriver(Ge).then(j).catch(pe)}k();var Ae=new Error("No available storage method found.");return C._driverSet=v.reject(Ae),C._driverSet}return pe()}}var V=this._driverSet!==null?this._driverSet.catch(function(){return v.resolve()}):v.resolve();return this._driverSet=V.then(function(){var F=O[0];return C._dbInfo=null,C._ready=null,C.getDriver(F).then(function(Y){C._driver=Y._driver,k(),C._wrapLibraryMethodsWithReady(),C._initDriver=H(O)})}).catch(function(){k();var F=new Error("No available storage method found.");return C._driverSet=v.reject(F),C._driverSet}),D(this._driverSet,I,x),this._driverSet},f.prototype.supports=function(S){return!!Ch[S]},f.prototype._extend=function(S){Tc(this,S)},f.prototype._getSupportedDrivers=function(S){for(var I=[],x=0,C=S.length;x<C;x++){var O=S[x];this.supports(O)&&I.push(O)}return I},f.prototype._wrapLibraryMethodsWithReady=function(){for(var S=0,I=Ka.length;S<I;S++)Lp(this,Ka[S])},f.prototype.createInstance=function(S){return new f(S)},f}(),Mp=new Up;o.exports=Mp},{3:3}]},{},[4])(4)})}),ti=ur(e=>{"use strict";var t=e&&e.__awaiter||function(n,i,s,o){function c(u){return u instanceof s?u:new s(function(d){d(u)})}return new(s||(s=Promise))(function(u,d){function m(E){try{y(o.next(E))}catch(v){d(v)}}function h(E){try{y(o.throw(E))}catch(v){d(v)}}function y(E){E.done?u(E.value):c(E.value).then(m,h)}y((o=o.apply(n,i||[])).next())})};Object.defineProperty(e,"__esModule",{value:!0}),e.JSUtils=void 0;var r=class{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 sleep(n){return t(this,void 0,void 0,function*(){return new Promise(i=>setTimeout(i,n))})}static hasKeys(n){return n?Object.keys(n).length>=1:!1}static convertObjectToArray(n,i){return i.reduce((s,o)=>(n.hasOwnProperty(o)&&n[o]!=null&&s.push({[o]:n[o]}),s),[])}static removeNullUndefinedKeys(n){return Object.keys(n).reduce((i,s)=>(n[s]!==null&&n[s]!==void 0&&(i[s]=n[s]),i),{})}static stringify(n){return JSON.stringify(n,function(i,s){return s===void 0?null:s})}};e.JSUtils=r,r.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)/)}),Xu=ur(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.URLBuilder=void 0;var t=function(){function r(n){try{this.base=new URL(n),this.params=new URLSearchParams(this.base.search.slice(1))}catch(i){console.error("Un-parsable URL",i)}}return r.prototype.appendQueryParam=function(n,i){this.params.append(n,i?i.toString():"")},r.prototype.clearQueryParams=function(){return this.params=new URLSearchParams,this},r.prototype.deleteQueryParam=function(n){this.params.delete(n)},r.prototype.getBase=function(){return this.base},r.prototype.getPath=function(){return this.base.pathname},r.prototype.getHostname=function(){return this.base.hostname},r.prototype.getParams=function(){return this.params},r.prototype.getQueryParam=function(n){if(!this.params)return"";var i=this.params.get(n);return!i||i==="undefined"||i==="null"?void 0:i},r.prototype.getQueryString=function(){return this.params.toString()},r.prototype.setPath=function(n){return this.base.pathname=n,this},r.prototype.setQueryParam=function(n,i){return this.params.set(n,i?i.toString():""),this},r.prototype.setQueryString=function(n){if(n)return n[0]==="?"&&(n=n.slice(1)),this.params=new URLSearchParams(n),this},r.prototype.toString=function(){var n=this.params.toString();return n===""?this.base.search="":this.base.search="?"+n,this.base.toString()},r}();e.URLBuilder=t}),nh=ur((e,t)=>{"use strict";(function(r,n){typeof e=="object"&&typeof t<"u"?t.exports=n():typeof define=="function"&&define.amd?define(n):(r=typeof globalThis<"u"?globalThis:r||self,r.fetchRetry=n())})(e,function(){"use strict";var r=function(s,o){if(o=o||{},typeof s!="function")throw new i("fetch must be a function");if(typeof o!="object")throw new i("defaults must be an object");if(o.retries!==void 0&&!n(o.retries))throw new i("retries must be a positive integer");if(o.retryDelay!==void 0&&!n(o.retryDelay)&&typeof o.retryDelay!="function")throw new i("retryDelay must be a positive integer or a function returning a positive integer");if(o.retryOn!==void 0&&!Array.isArray(o.retryOn)&&typeof o.retryOn!="function")throw new i("retryOn property expects an array or function");var c={retries:3,retryDelay:1e3,retryOn:[]};return o=Object.assign(c,o),function(u,d){var m=o.retries,h=o.retryDelay,y=o.retryOn;if(d&&d.retries!==void 0)if(n(d.retries))m=d.retries;else throw new i("retries must be a positive integer");if(d&&d.retryDelay!==void 0)if(n(d.retryDelay)||typeof d.retryDelay=="function")h=d.retryDelay;else throw new i("retryDelay must be a positive integer or a function returning a positive integer");if(d&&d.retryOn)if(Array.isArray(d.retryOn)||typeof d.retryOn=="function")y=d.retryOn;else throw new i("retryOn property expects an array or function");return new Promise(function(E,v){var _=function(P){var M=typeof Request<"u"&&u instanceof Request?u.clone():u;s(M,d).then(function(L){if(Array.isArray(y)&&y.indexOf(L.status)===-1)E(L);else if(typeof y=="function")try{return Promise.resolve(y(P,null,L)).then(function(R){R?D(P,null,L):E(L)}).catch(v)}catch(R){v(R)}else P<m?D(P,null,L):E(L)}).catch(function(L){if(typeof y=="function")try{Promise.resolve(y(P,L,null)).then(function(R){R?D(P,L,null):v(L)}).catch(function(R){v(R)})}catch(R){v(R)}else P<m?D(P,L,null):v(L)})};function D(P,M,L){var R=typeof h=="function"?h(P,M,L):h;setTimeout(function(){_(++P)},R)}_(0)})}};function n(s){return Number.isInteger(s)&&s>=0}function i(s){this.name="ArgumentError",this.message=s}return r})}),fp="9.6.10",N=class xc{static SDK_VERSION=fp;static SDK_VERSION_CODE;static SDK="WEB";static LOG_PREFIX="CooeeSDK";static COOEE="cooee";static SESSION_STORAGE_SCROLL_ID="sleid";static IDLE_TIME_IN_SECONDS=30*60;static IN_APP_WRAPPER_NAME="cooee-wrapper";static IN_APP_CONTAINER_NAME="cooee-container";static IN_APP_DEFAULT_PADDING=15;static EVENT_SCREEN_VIEW="CE Screen View";static EVENT_APP_BACKGROUND="CE App Background";static EVENT_TRIGGER_DISPLAYED="CE Trigger Displayed";static EVENT_CAMPAIGN_HOLDOUT="CE Campaign Holdout";static EVENT_CAMPAIGN_REJECTED="CE Campaign Rejected";static EVENT_CAMPAIGN_FAILED="CE Campaign Failed";static EVENT_TRIGGER_CLOSED="CE Trigger Closed";static EVENT_SCROLL="CE Scroll";static EVENT_TRIGGER_CLICKED="CE Trigger Clicked";static EVENT_FORM_SUBMITTED="CE Form Submitted";static EVENT_EXPERIMENT_START="CE Experiment Start";static EVENT_VIDEO_DIALOG_CLOSED="CE Video Dialog Closed";static EVENT_VIDEO_DIALOG_OPENED="CE Video Dialog Opened";static EVENT_VIDEO_CHANGE="CE Video Changed";static EVENT_LAST_VIDEO_ENDED="CE Last Video Ended";static EVENT_VIDEO_MUTED="CE Video Muted";static EVENT_VIDEO_UNMUTED="CE Video Unmuted";static EVENT_ADD_TO_CART_CLICKED="CE Add To Cart Clicked";static EVENT_VIEW_ITEM_CLICKED="CE View Item Clicked";static EVENT_MORE_ITEM_INFO_CLICKED="CE More Item Info Clicked";static EVENT_OPEN_CART_CLICKED="CE Open Cart Clicked";static EVENT_ADD_TO_CART="Add To Cart";static EVENT_REMOVE_FROM_CART="Remove From Cart";static EVENT_VIEW_ITEM="View Item";static EVENT_VIEW_CART="View Cart";static EVENT_VIEW_COLLECTION="View Collection";static EVENT_BUY_NOW_CLICKED="Buy Now Clicked";static EVENT_CHECKOUT_STARTED="Checkout Started";static EVENT_REVIEW_CLICKED="Review Clicked";static EVENT_ITEM_THUMBNAIL_CLICKED="Item Thumbnail Clicked";static JS_LOAD_WHITELIST_EVENTS=[this.EVENT_VIEW_ITEM,this.EVENT_VIEW_CART,this.EVENT_VIEW_COLLECTION];static HASH_INITIATE_CHECKOUT="initiate-checkout";static HASH_OPEN_CART_DRAWER="open-cart-drawer";static ADD_BUNDLE_CTA_INBOUND_EVENT="letscooee:inbound:cta:add-bundle";static CTA_OPEN_CART_EVENT="letscooee:outbound:open-cart";static CTA_AFTER_REFRESH_UI="letscooee:outbound:refresh-ui";static POPUP_ACTIVITY_EVENT="letscooee:outbound:popup-activities";static THIRD_PARTY_CHECKOUT_EVENT="letscooee:outbound:third-party-initiate-checkout";static CAMPAIGN_DISPLAYED_ACTIVITY="DISPLAYED";static CAMPAIGN_CLICKED_ACTIVITY="CLICKED";static CAMPAIGN_CLOSED_ACTIVITY="CLOSED";static BLACKLISTED_PAGE_NAMES=["collection","product","cart"];static API_CALL_MAX_ATTEMPTS=3;static API_CALL_RETRY_DELAY=1e3;static PLACEHOLDER_IMAGE="https://cdn.global.letscooee.com/images/placeholders/product.png";static CART_UPDATE_BROADCAST="CART_UPDATE";static GRAPHQL_VERSION="2024-10";static GRAPHQL_API_PATH=`/api/${this.GRAPHQL_VERSION}/graphql.json`;static SHADOW_SPLITTER=":shadow";static CAMPAIGN_ATTRIBUTE="_letscooee_campaign";static CONTENT_ATTRIBUTE="_letscooee_content";static VIA="_via";static PAYMENT_MODAL_DETAILS=[{identifier:"#flo-checkout-wrapper",gateway:"Shopflow"},{identifier:"#fastrr-main-container",gateway:"Shiprocket"},{identifier:"#gokwik-modal-wrapper",gateway:"Gokwik"},{identifier:"#zecpe",gateway:"Ecom 360"}];static{let t=xc.SDK_VERSION.split(".").map(r=>r.padStart(2,"0")).join("");xc.SDK_VERSION_CODE=parseInt(t,10)}},Rt={apiURL:"https://api.sdk.letscooee.com",debug:!1,mode:"production",styleURL:`https://cdn.jsdelivr.net/npm/@letscooee/web-sdk@${N.SDK_VERSION}/dist/widget.min.css`,widgetURL:`https://cdn.jsdelivr.net/npm/@letscooee/web-sdk@${N.SDK_VERSION}/dist/widget.min.js`},Pt=Se(on()),b=class{static log(...e){Pt.default.info(...e)}static debug(...e){Pt.default.debug(...e)}static error(...e){Pt.default.error(...e)}static warn(...e){Pt.default.warn(...e)}static info(...e){Pt.default.info(...e)}static trace(...e){Pt.default.trace(...e)}static configure(e=N.LOG_PREFIX){Pt.default.useDefaults({formatter:function(r){r.unshift(`${e} (v${N.SDK_VERSION}):`)}});let t=this.getDebugParam();(t==="1"||t==="on")&&(localStorage.cooeeLogLevel="TRACE"),localStorage.cooeeLogLevel?Pt.default.setLevel(Pt.default[localStorage.cooeeLogLevel]):Pt.default.setLevel(Rt.debug?Pt.default.TRACE:Pt.default.OFF)}static getDebugParam(){return new URL(location.href).searchParams?.get("cooee-debug")}static logBrand(){let e=`
|
|
1
|
+
"use strict";(()=>{var sg=Object.create,Nc=Object.defineProperty,ag=Object.defineProperties,cg=Object.getOwnPropertyDescriptor,lg=Object.getOwnPropertyDescriptors,ug=Object.getOwnPropertyNames,lp=Object.getOwnPropertySymbols,pg=Object.getPrototypeOf,pp=Object.prototype.hasOwnProperty,fg=Object.prototype.propertyIsEnumerable,up=(e,t,r)=>t in e?Nc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,b=(e,t)=>{for(var r in t||={})pp.call(t,r)&&up(e,r,t[r]);if(lp)for(var r of lp(t))fg.call(t,r)&&up(e,r,t[r]);return e},te=(e,t)=>ag(e,lg(t)),Ki=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')}),ur=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),mg=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of ug(t))!pp.call(e,i)&&i!==r&&Nc(e,i,{get:()=>t[i],enumerable:!(n=cg(t,i))||n.enumerable});return e},Se=(e,t,r)=>(r=e!=null?sg(pg(e)):{},mg(t||!e||!e.__esModule?Nc(r,"default",{value:e,enumerable:!0}):r,e)),on=ur((e,t)=>{"use strict";(function(r){"use strict";var n={};n.VERSION="1.6.1";var i,s={},o=function(h,y){return function(){return y.apply(h,arguments)}},c=function(){var h=arguments,y=h[0],E,v;for(v=1;v<h.length;v++)for(E in h[v])!(E in y)&&h[v].hasOwnProperty(E)&&(y[E]=h[v][E]);return y},u=function(h,y){return{value:h,name:y}};n.TRACE=u(1,"TRACE"),n.DEBUG=u(2,"DEBUG"),n.INFO=u(3,"INFO"),n.TIME=u(4,"TIME"),n.WARN=u(5,"WARN"),n.ERROR=u(8,"ERROR"),n.OFF=u(99,"OFF");var d=function(h){this.context=h,this.setLevel(h.filterLevel),this.log=this.info};d.prototype={setLevel:function(h){h&&"value"in h&&(this.context.filterLevel=h)},getLevel:function(){return this.context.filterLevel},enabledFor:function(h){var y=this.context.filterLevel;return h.value>=y.value},trace:function(){this.invoke(n.TRACE,arguments)},debug:function(){this.invoke(n.DEBUG,arguments)},info:function(){this.invoke(n.INFO,arguments)},warn:function(){this.invoke(n.WARN,arguments)},error:function(){this.invoke(n.ERROR,arguments)},time:function(h){typeof h=="string"&&h.length>0&&this.invoke(n.TIME,[h,"start"])},timeEnd:function(h){typeof h=="string"&&h.length>0&&this.invoke(n.TIME,[h,"end"])},invoke:function(h,y){i&&this.enabledFor(h)&&i(y,c({level:h},this.context))}};var m=new d({filterLevel:n.OFF});(function(){var h=n;h.enabledFor=o(m,m.enabledFor),h.trace=o(m,m.trace),h.debug=o(m,m.debug),h.time=o(m,m.time),h.timeEnd=o(m,m.timeEnd),h.info=o(m,m.info),h.warn=o(m,m.warn),h.error=o(m,m.error),h.log=h.info})(),n.setHandler=function(h){i=h},n.setLevel=function(h){m.setLevel(h);for(var y in s)s.hasOwnProperty(y)&&s[y].setLevel(h)},n.getLevel=function(){return m.getLevel()},n.get=function(h){return s[h]||(s[h]=new d(c({name:h},m.context)))},n.createDefaultHandler=function(h){h=h||{},h.formatter=h.formatter||function(v,_){_.name&&v.unshift("["+_.name+"]")};var y={},E=function(v,_){Function.prototype.apply.call(v,console,_)};return typeof console>"u"?function(){}:function(v,_){v=Array.prototype.slice.call(v);var D=console.log,P;_.level===n.TIME?(P=(_.name?"["+_.name+"] ":"")+v[0],v[1]==="start"?console.time?console.time(P):y[P]=new Date().getTime():console.timeEnd?console.timeEnd(P):E(D,[P+": "+(new Date().getTime()-y[P])+"ms"])):(_.level===n.WARN&&console.warn?D=console.warn:_.level===n.ERROR&&console.error?D=console.error:_.level===n.INFO&&console.info?D=console.info:_.level===n.DEBUG&&console.debug?D=console.debug:_.level===n.TRACE&&console.trace&&(D=console.trace),h.formatter(v,_),E(D,v))}},n.useDefaults=function(h){n.setLevel(h&&h.defaultLevel||n.DEBUG),n.setHandler(n.createDefaultHandler(h))},n.setDefaults=n.useDefaults,typeof define=="function"&&define.amd?define(n):typeof t<"u"&&t.exports?t.exports=n:(n._prevLogger=r.Logger,n.noConflict=function(){return r.Logger=n._prevLogger,n},r.Logger=n)})(e)}),Oc=ur(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MustacheUtils=void 0;var t=class Dh{static escapeHtml(n){return String(n).replace(/"/g,i=>Dh.entityMap[i])}};e.MustacheUtils=t,t.entityMap={'"':"""}}),Rr=ur(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MilestoneRewardType=e.ProgressBarLayout=e.EngagementContentSource=e.EngagementObjective=e.OnsiteDeliveryType=e.ClickActionType=e.FrequencyGapUnit=e.FrequencyType=e.RedirectBehaviour=e.EngagementPlacementPosition=e.EngagementCollectionSource=e.PromotionType=e.CartFilterEnum=e.CartCurrencyOperator=e.CartCriteria=e.URLCriteria=e.UTMCriteria=e.CartItemSource=e.EngagementItemSource=e.PurchasedVisitor=e.LoggedInVisitor=e.VisitorType=e.SessionType=e.EngagementContentType=e.TriggerType=e.EngagementType=e.EngagementStatus=e.TimePreference=e.ScheduleFrequency=e.CriteriaFrequency=void 0;var t=function(g){return g[g.ONCE_PER_USER=1]="ONCE_PER_USER",g[g.ONCE_PER_SESSION=2]="ONCE_PER_SESSION",g[g.EVERY_TIME=3]="EVERY_TIME",g}(t||(e.CriteriaFrequency=t={})),r=function(g){return g[g.ONE_TIME=1]="ONE_TIME",g[g.MULTIPLE=2]="MULTIPLE",g[g.RECURRING=3]="RECURRING",g}(r||(e.ScheduleFrequency=r={})),n=function(g){return g[g.NOW=1]="NOW",g[g.LATER=2]="LATER",g[g.NEVER=3]="NEVER",g}(n||(e.TimePreference=n={})),i=function(g){return g[g.PUBLISHED=1]="PUBLISHED",g[g.DRAFT=2]="DRAFT",g[g.PAUSED=3]="PAUSED",g[g.FAILED=4]="FAILED",g[g.STOPPED=5]="STOPPED",g[g.COMPLETED=6]="COMPLETED",g[g.ARCHIVED=7]="ARCHIVED",g[g.UNINSTALLED=8]="UNINSTALLED",g}(i||(e.EngagementStatus=i={})),s=function(g){return g.CAMPAIGN="CAMPAIGN",g.NATIVE_AB="NATIVE_AB",g.CRO_COPILOT="CRO_COPILOT",g}(s||(e.EngagementType=s={})),o=function(g){return g[g.NONE=0]="NONE",g[g.RULE_BASED=1]="RULE_BASED",g[g.INTENT_BASED=2]="INTENT_BASED",g}(o||(e.TriggerType=o={})),c=function(g){return g[g.SINGLE=1]="SINGLE",g[g.EXCLUSION=2]="EXCLUSION",g[g.ABTESTING=3]="ABTESTING",g}(c||(e.EngagementContentType=c={})),u=function(g){return g[g.ALL=0]="ALL",g[g.NEW_ONLY=1]="NEW_ONLY",g[g.RETURNING_ONLY=2]="RETURNING_ONLY",g}(u||(e.SessionType=u={})),d=function(g){return g[g.ALL=0]="ALL",g[g.LOGGED_IN_ONLY=3]="LOGGED_IN_ONLY",g[g.NON_LOGGED_IN_ONLY=4]="NON_LOGGED_IN_ONLY",g[g.PURCHASED=5]="PURCHASED",g[g.NON_PURCHASED=6]="NON_PURCHASED",g[g.ABANDON_CART=7]="ABANDON_CART",g[g.RETURNING_AND_NON_PURCHASED=8]="RETURNING_AND_NON_PURCHASED",g}(d||(e.VisitorType=d={})),m=function(g){return g.ALL="ALL",g.LOGGED_IN="LOGGED_IN",g.NON_LOGGED_IN="NON_LOGGED_IN",g}(m||(e.LoggedInVisitor=m={})),h=function(g){return g.ALL="ALL",g.PURCHASED="PURCHASED",g.NON_PURCHASED="NON_PURCHASED",g}(h||(e.PurchasedVisitor=h={})),y=function(g){return g[g.NONE=0]="NONE",g[g.ITEM_RECOMMENDATION=1]="ITEM_RECOMMENDATION",g[g.MULTIPLE_ITEMS=2]="MULTIPLE_ITEMS",g[g.SINGLE_ITEM=3]="SINGLE_ITEM",g[g.TOP_SELLING=4]="TOP_SELLING",g[g.STOCK_CLEARANCE=5]="STOCK_CLEARANCE",g[g.NEW_ARRIVALS=6]="NEW_ARRIVALS",g[g.RECENTLY_VIEWED=7]="RECENTLY_VIEWED",g[g.EVENT_ITEM=8]="EVENT_ITEM",g[g.CART_ITEM=9]="CART_ITEM",g[g.BUNDLE=10]="BUNDLE",g[g.CURRENT_ITEM=11]="CURRENT_ITEM",g[g.PURCHASED_PREVIOUSLY=12]="PURCHASED_PREVIOUSLY",g[g.COLLECTION_ITEMS=13]="COLLECTION_ITEMS",g[g.TRENDING_ITEMS=14]="TRENDING_ITEMS",g}(y||(e.EngagementItemSource=y={})),E=function(g){return g[g.LAST_ADDED=1]="LAST_ADDED",g[g.FIRST_ADDED=2]="FIRST_ADDED",g[g.HIGHEST_PRICE=3]="HIGHEST_PRICE",g[g.LOWEST_PRICE=4]="LOWEST_PRICE",g[g.FIRST_MATCHING_TAG=5]="FIRST_MATCHING_TAG",g[g.ALL=6]="ALL",g}(E||(e.CartItemSource=E={})),v=function(g){return g[g.ALL=0]="ALL",g[g.ONLY_ORGANIC=1]="ONLY_ORGANIC",g[g.ONLY_NON_ORGANIC=2]="ONLY_NON_ORGANIC",g[g.INCLUDES=3]="INCLUDES",g[g.EXCLUDES=4]="EXCLUDES",g}(v||(e.UTMCriteria=v={})),_=function(g){return g[g.NONE=0]="NONE",g[g.LIKE=1]="LIKE",g[g.NOT_LIKE=2]="NOT_LIKE",g[g.EQUALS=3]="EQUALS",g[g.NOT_EQUALS=4]="NOT_EQUALS",g}(_||(e.URLCriteria=_={})),D=function(g){return g[g.NONE=0]="NONE",g[g.LESS_THAN=1]="LESS_THAN",g[g.GREATER_THAN=2]="GREATER_THAN",g[g.BETWEEN=3]="BETWEEN",g[g.EQUALS=4]="EQUALS",g}(D||(e.CartCriteria=D={})),P=function(g){return g[g.ALL=0]="ALL",g[g.INCLUDES=1]="INCLUDES",g[g.EXCLUDES=2]="EXCLUDES",g}(P||(e.CartCurrencyOperator=P={})),M=function(g){return g[g.NONE=0]="NONE",g[g.AMOUNT=1]="AMOUNT",g[g.TOTAL_PRODUCT=2]="TOTAL_PRODUCT",g[g.UNIQUE_PRODUCT=3]="UNIQUE_PRODUCT",g}(M||(e.CartFilterEnum=M={})),L=function(g){return g[g.NONE=0]="NONE",g[g.ITEM=1]="ITEM",g[g.COLLECTION=2]="COLLECTION",g}(L||(e.PromotionType=L={})),R=function(g){return g[g.NONE=0]="NONE",g[g.SINGLE=1]="SINGLE",g[g.MULTIPLE=2]="MULTIPLE",g}(R||(e.EngagementCollectionSource=R={})),q=function(g){return g.BEFORE="before",g.AFTER="after",g.INSIDE_FIRST="insideFirst",g.INSIDE_LAST="insideLast",g}(q||(e.EngagementPlacementPosition=q={})),he=function(g){return g.SHOPIFY_CHECKOUT="shopify_checkout",g.THIRD_PARTY_CHECKOUT="third_party_checkout",g.CART_PAGE="cart_page",g.CART_DRAWER="cart_drawer",g}(he||(e.RedirectBehaviour=he={})),ke=function(g){return g.ONCE_IN_SESSION="ONCE_IN_SESSION",g.ACROSS_SESSIONS="ACROSS_SESSIONS",g}(ke||(e.FrequencyType=ke={})),B=function(g){return g.DAYS="DAYS",g.HOURS="HOURS",g.MINUTES="MINUTES",g.SECONDS="SECONDS",g}(B||(e.FrequencyGapUnit=B={})),Z=function(g){return g[g.NONE=0]="NONE",g[g.REJECT_POPUP=1]="REJECT_POPUP",g[g.ACCEPT_POPUP=2]="ACCEPT_POPUP",g[g.GO_TO_URL=4]="GO_TO_URL",g[g.SHARE=5]="SHARE",g[g.KEY_VALUE=100]="KEY_VALUE",g[g.GO_TO_PRODUCT=101]="GO_TO_PRODUCT",g[g.ADD_TO_CART=102]="ADD_TO_CART",g[g.COPY_COUPON_CODE=103]="COPY_COUPON_CODE",g[g.GO_TO_COLLECTION=104]="GO_TO_COLLECTION",g[g.OPEN_CART=105]="OPEN_CART",g[g.SUBMIT_FORM=106]="SUBMIT_FORM",g[g.INITIATE_CHECKOUT=107]="INITIATE_CHECKOUT",g[g.ADD_BUNDLE=108]="ADD_BUNDLE",g[g.UPGRADE_TO_SUBSCRIPTION=109]="UPGRADE_TO_SUBSCRIPTION",g}(Z||(e.ClickActionType=Z={})),z=function(g){return g.POPUP="POPUP",g.PAGE_EMBED="PAGE_EMBED",g.CART_EMBED="CART_EMBED",g.ANNOUNCEMENT_BAR="ANNOUNCEMENT_BAR",g}(z||(e.OnsiteDeliveryType=z={})),J=function(g){return g.PRODUCT_PROMOTION="PRODUCT_PROMOTION",g.BUNDLE_AND_UPSELL="BUNDLE_AND_UPSELL",g.CART_RECOVERY="CART_RECOVERY",g.ANNOUNCEMENT="ANNOUNCEMENT",g.LEAD_GENERATION="LEAD_GENERATION",g.DATA_COLLECTION="DATA_COLLECTION",g.SALE_PROMOTION="SALE_PROMOTION",g.SUBSCRIPTION_UPSELL="SUBSCRIPTION_UPSELL",g.SHOPPABLE_VIDEO="SHOPPABLE_VIDEO",g.BYOB="BYOB",g.PROGRESS_BAR="PROGRESS_BAR",g.BUY_NOW="BUY_NOW",g.EXPERIMENT="EXPERIMENT",g}(J||(e.EngagementObjective=J={})),ge=function(g){return g.COOEE="COOEE",g.KLAVIYO="KLAVIYO",g}(ge||(e.EngagementContentSource=ge={})),$e=function(g){return g.ICONS="ICONS",g.TILES="TILES",g}($e||(e.ProgressBarLayout=$e={})),xe=function(g){return g.FREE_SHIPPING="FREE_SHIPPING",g.DISCOUNT="DISCOUNT",g.FREE_AUTO_GIFT="FREE_AUTO_GIFT",g.FREE_GIFT_SELECT="FREE_GIFT_SELECT",g}(xe||(e.MilestoneRewardType=xe={}))}),Jo=ur(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PriceRuleType=e.DiscountType=void 0;var t=function(n){return n[n.NONE=0]="NONE",n[n.STATIC=1]="STATIC",n[n.UNIQUE_FLAT=2]="UNIQUE_FLAT",n[n.UNIQUE_FLAT_ITEMS=3]="UNIQUE_FLAT_ITEMS",n[n.UNIQUE_FIXED_ITEMS=4]="UNIQUE_FIXED_ITEMS",n[n.UNIQUE_CHEAPEST_ITEM_FREE=5]="UNIQUE_CHEAPEST_ITEM_FREE",n[n.BXGY=6]="BXGY",n}(t||(e.DiscountType=t={})),r=function(n){return n.FIXED_AMOUNT="fixed_amount",n.PERCENTAGE="percentage",n}(r||(e.PriceRuleType=r={}))}),Lc=ur(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ArrayUtils=void 0;var t=class xh{static of(n,i){return i!==void 0?new Array(n).fill(i):Array.from({length:n},(s,o)=>o)}static remove(n,i){let s=n.indexOf(i);return s===-1?!1:(n.splice(s,1),!0)}static swap(n,i,s){[n[i],n[s]]=[n[s],n[i]]}static sum(n,i){return n.reduce((s,o)=>s+Math.max(i?i(o):+o,0),0)}static unique(n,i){return n.filter((s,o,c)=>c.findIndex(u=>u[i]===s[i])===o)}static shuffle(n){let i=n.length;for(;i!=0;){let s=Math.floor(Math.random()*i);i--,xh.swap(n,i,s)}}};e.ArrayUtils=t}),Tf=ur((e,t)=>{"use strict";(function(r,n){"use strict";var i="1.0.40",s="",o="?",c="function",u="undefined",d="object",m="string",h="major",y="model",E="name",v="type",_="vendor",D="version",P="architecture",M="console",L="mobile",R="tablet",q="smarttv",he="wearable",ke="embedded",B=500,Z="Amazon",z="Apple",J="ASUS",ge="BlackBerry",$e="Browser",xe="Chrome",g="Edge",Ke="Firefox",ve="Google",gt="Huawei",ae="LG",ie="Microsoft",ut="Motorola",tr="Opera",lr="Samsung",yt="Sharp",Hr="Sony",Hn="Xiaomi",nn="Zebra",ei="Facebook",qi="Chromium OS",Gn="Mac OS",$n=" Browser",vt=function(W,ce){var ee={};for(var Ce in W)ce[Ce]&&ce[Ce].length%2===0?ee[Ce]=ce[Ce].concat(W[Ce]):ee[Ce]=W[Ce];return ee},$r=function(W){for(var ce={},ee=0;ee<W.length;ee++)ce[W[ee].toUpperCase()]=W[ee];return ce},Gi=function(W,ce){return typeof W===m?a(ce).indexOf(a(W))!==-1:!1},a=function(W){return W.toLowerCase()},l=function(W){return typeof W===m?W.replace(/[^\d\.]/g,s).split(".")[0]:n},p=function(W,ce){if(typeof W===m)return W=W.replace(/^\s\s*/,s),typeof ce===u?W:W.substring(0,B)},T=function(W,ce){for(var ee=0,Ce,Ot,Dt,Te,ne,$t;ee<ce.length&&!ne;){var Yi=ce[ee],cs=ce[ee+1];for(Ce=Ot=0;Ce<Yi.length&&!ne&&Yi[Ce];)if(ne=Yi[Ce++].exec(W),ne)for(Dt=0;Dt<cs.length;Dt++)$t=ne[++Ot],Te=cs[Dt],typeof Te===d&&Te.length>0?Te.length===2?typeof Te[1]==c?this[Te[0]]=Te[1].call(this,$t):this[Te[0]]=Te[1]:Te.length===3?typeof Te[1]===c&&!(Te[1].exec&&Te[1].test)?this[Te[0]]=$t?Te[1].call(this,$t,Te[2]):n:this[Te[0]]=$t?$t.replace(Te[1],Te[2]):n:Te.length===4&&(this[Te[0]]=$t?Te[3].call(this,$t.replace(Te[1],Te[2])):n):this[Te]=$t||n;ee+=2}},A=function(W,ce){for(var ee in ce)if(typeof ce[ee]===d&&ce[ee].length>0){for(var Ce=0;Ce<ce[ee].length;Ce++)if(Gi(ce[ee][Ce],W))return ee===o?n:ee}else if(Gi(ce[ee],W))return ee===o?n:ee;return ce.hasOwnProperty("*")?ce["*"]:W},U={"1.0":"/8","1.2":"/1","1.3":"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"},G={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2","8.1":"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},Ie={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[D,[E,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[D,[E,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[E,D],[/opios[\/ ]+([\w\.]+)/i],[D,[E,tr+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[D,[E,tr+" GX"]],[/\bopr\/([\w\.]+)/i],[D,[E,tr]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[D,[E,"Baidu"]],[/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],[D,[E,"Maxthon"]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,/(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio|(?=comodo_)?dragon)\/([-\w\.]+)/i,/(heytap|ovi|115)browser\/([\d\.]+)/i,/(weibo)__([\d\.]+)/i],[E,D],[/quark(?:pc)?\/([-\w\.]+)/i],[D,[E,"Quark"]],[/\bddg\/([\w\.]+)/i],[D,[E,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[D,[E,"UC"+$e]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[D,[E,"WeChat"]],[/konqueror\/([\w\.]+)/i],[D,[E,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[D,[E,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[D,[E,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[D,[E,"Smart Lenovo "+$e]],[/(avast|avg)\/([\w\.]+)/i],[[E,/(.+)/,"$1 Secure "+$e],D],[/\bfocus\/([\w\.]+)/i],[D,[E,Ke+" Focus"]],[/\bopt\/([\w\.]+)/i],[D,[E,tr+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[D,[E,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[D,[E,"Dolphin"]],[/coast\/([\w\.]+)/i],[D,[E,tr+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[D,[E,"MIUI"+$n]],[/fxios\/([\w\.-]+)/i],[D,[E,Ke]],[/\bqihoobrowser\/?([\w\.]*)/i],[D,[E,"360"]],[/\b(qq)\/([\w\.]+)/i],[[E,/(.+)/,"$1Browser"],D],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[E,/(.+)/,"$1"+$n],D],[/samsungbrowser\/([\w\.]+)/i],[D,[E,lr+" Internet"]],[/metasr[\/ ]?([\d\.]+)/i],[D,[E,"Sogou Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[E,"Sogou Mobile"],D],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i],[E,D],[/(lbbrowser|rekonq)/i,/\[(linkedin)app\]/i],[E],[/ome\/([\w\.]+) \w* ?(iron) saf/i,/ome\/([\w\.]+).+qihu (360)[es]e/i],[D,E],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[E,ei],D],[/(Klarna)\/([\w\.]+)/i,/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(alipay)client\/([\w\.]+)/i,/(twitter)(?:and| f.+e\/([\w\.]+))/i,/(chromium|instagram|snapchat)[\/ ]([-\w\.]+)/i],[E,D],[/\bgsa\/([\w\.]+) .*safari\//i],[D,[E,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[D,[E,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[D,[E,xe+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[E,xe+" WebView"],D],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[D,[E,"Android "+$e]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[E,D],[/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],[D,[E,"Mobile Safari"]],[/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],[D,E],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[E,[D,A,U]],[/(webkit|khtml)\/([\w\.]+)/i],[E,D],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[E,"Netscape"],D],[/(wolvic|librewolf)\/([\w\.]+)/i],[E,D],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[D,[E,Ke+" 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,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i],[E,[D,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[E,[D,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i],[[P,"amd64"]],[/(ia32(?=;))/i],[[P,a]],[/((?:i[346]|x)86)[;\)]/i],[[P,"ia32"]],[/\b(aarch64|arm(v?8e?l?|_?64))\b/i],[[P,"arm64"]],[/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i],[[P,"armhf"]],[/windows (ce|mobile); ppc;/i],[[P,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i],[[P,/ower/,s,a]],[/(sun4\w)[;\)]/i],[[P,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i],[[P,a]]],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],[y,[_,lr],[v,R]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr])[-\w]+)/i,/sec-(sgh\w+)/i],[y,[_,lr],[v,L]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[y,[_,z],[v,L]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[y,[_,z],[v,R]],[/(macintosh);/i],[y,[_,z]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[y,[_,yt],[v,L]],[/(?:honor)([-\w ]+)[;\)]/i],[y,[_,"Honor"],[v,L]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[y,[_,gt],[v,R]],[/(?:huawei)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[y,[_,gt],[v,L]],[/\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],[[y,/_/g," "],[_,Hn],[v,L]],[/oid[^\)]+; (2\d{4}(283|rpbf)[cgl])( bui|\))/i,/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[y,/_/g," "],[_,Hn],[v,R]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[y,[_,"OPPO"],[v,L]],[/\b(opd2\d{3}a?) bui/i],[y,[_,"OPPO"],[v,R]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[y,[_,"Vivo"],[v,L]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[y,[_,"Realme"],[v,L]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[y,[_,ut],[v,L]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[y,[_,ut],[v,R]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[y,[_,ae],[v,R]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[y,[_,ae],[v,L]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[y,[_,"Lenovo"],[v,R]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[y,/_/g," "],[_,"Nokia"],[v,L]],[/(pixel c)\b/i],[y,[_,ve],[v,R]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[y,[_,ve],[v,L]],[/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[y,[_,Hr],[v,L]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[y,"Xperia Tablet"],[_,Hr],[v,R]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[y,[_,"OnePlus"],[v,L]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[y,[_,Z],[v,R]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[y,/(.+)/g,"Fire Phone $1"],[_,Z],[v,L]],[/(playbook);[-\w\),; ]+(rim)/i],[y,_,[v,R]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[y,[_,ge],[v,L]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[y,[_,J],[v,R]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[y,[_,J],[v,L]],[/(nexus 9)/i],[y,[_,"HTC"],[v,R]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[_,[y,/_/g," "],[v,L]],[/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])\w*(\)| bui)/i],[y,[_,"TCL"],[v,R]],[/(itel) ((\w+))/i],[[_,a],y,[v,A,{tablet:["p10001l","w7001"],"*":"mobile"}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[y,[_,"Acer"],[v,R]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[y,[_,"Meizu"],[v,L]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[y,[_,"Ulefone"],[v,L]],[/; (energy ?\w+)(?: bui|\))/i,/; energizer ([\w ]+)(?: bui|\))/i],[y,[_,"Energizer"],[v,L]],[/; cat (b35);/i,/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],[y,[_,"Cat"],[v,L]],[/((?:new )?andromax[\w- ]+)(?: bui|\))/i],[y,[_,"Smartfren"],[v,L]],[/droid.+; (a(?:015|06[35]|142p?))/i],[y,[_,"Nothing"],[v,L]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron|infinix|tecno|micromax|advan)[-_ ]?([-\w]*)/i,/; (imo) ((?!tab)[\w ]+?)(?: bui|\))/i,/(hp) ([\w ]+\w)/i,/(asus)-?(\w+)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w]+)/i,/(jolla)/i,/(oppo) ?([\w ]+) bui/i],[_,y,[v,L]],[/(imo) (tab \w+)/i,/(kobo)\s(ereader|touch)/i,/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i,/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[_,y,[v,R]],[/(surface duo)/i],[y,[_,ie],[v,R]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[y,[_,"Fairphone"],[v,L]],[/(u304aa)/i],[y,[_,"AT&T"],[v,L]],[/\bsie-(\w*)/i],[y,[_,"Siemens"],[v,L]],[/\b(rct\w+) b/i],[y,[_,"RCA"],[v,R]],[/\b(venue[\d ]{2,7}) b/i],[y,[_,"Dell"],[v,R]],[/\b(q(?:mv|ta)\w+) b/i],[y,[_,"Verizon"],[v,R]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[y,[_,"Barnes & Noble"],[v,R]],[/\b(tm\d{3}\w+) b/i],[y,[_,"NuVision"],[v,R]],[/\b(k88) b/i],[y,[_,"ZTE"],[v,R]],[/\b(nx\d{3}j) b/i],[y,[_,"ZTE"],[v,L]],[/\b(gen\d{3}) b.+49h/i],[y,[_,"Swiss"],[v,L]],[/\b(zur\d{3}) b/i],[y,[_,"Swiss"],[v,R]],[/\b((zeki)?tb.*\b) b/i],[y,[_,"Zeki"],[v,R]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[_,"Dragon Touch"],y,[v,R]],[/\b(ns-?\w{0,9}) b/i],[y,[_,"Insignia"],[v,R]],[/\b((nxa|next)-?\w{0,9}) b/i],[y,[_,"NextBook"],[v,R]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[_,"Voice"],y,[v,L]],[/\b(lvtel\-)?(v1[12]) b/i],[[_,"LvTel"],y,[v,L]],[/\b(ph-1) /i],[y,[_,"Essential"],[v,L]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[y,[_,"Envizen"],[v,R]],[/\b(trio[-\w\. ]+) b/i],[y,[_,"MachSpeed"],[v,R]],[/\btu_(1491) b/i],[y,[_,"Rotor"],[v,R]],[/(shield[\w ]+) b/i],[y,[_,"Nvidia"],[v,R]],[/(sprint) (\w+)/i],[_,y,[v,L]],[/(kin\.[onetw]{3})/i],[[y,/\./g," "],[_,ie],[v,L]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[y,[_,nn],[v,R]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[y,[_,nn],[v,L]],[/smart-tv.+(samsung)/i],[_,[v,q]],[/hbbtv.+maple;(\d+)/i],[[y,/^/,"SmartTV"],[_,lr],[v,q]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[_,ae],[v,q]],[/(apple) ?tv/i],[_,[y,z+" TV"],[v,q]],[/crkey/i],[[y,xe+"cast"],[_,ve],[v,q]],[/droid.+aft(\w+)( bui|\))/i],[y,[_,Z],[v,q]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[y,[_,yt],[v,q]],[/(bravia[\w ]+)( bui|\))/i],[y,[_,Hr],[v,q]],[/(mitv-\w{5}) bui/i],[y,[_,Hn],[v,q]],[/Hbbtv.*(technisat) (.*);/i],[_,y,[v,q]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[_,p],[y,p],[v,q]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[v,q]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[_,y,[v,M]],[/droid.+; (shield) bui/i],[y,[_,"Nvidia"],[v,M]],[/(playstation [345portablevi]+)/i],[y,[_,Hr],[v,M]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[y,[_,ie],[v,M]],[/\b(sm-[lr]\d\d[05][fnuw]?s?)\b/i],[y,[_,lr],[v,he]],[/((pebble))app/i],[_,y,[v,he]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[y,[_,z],[v,he]],[/droid.+; (glass) \d/i],[y,[_,ve],[v,he]],[/droid.+; (wt63?0{2,3})\)/i],[y,[_,nn],[v,he]],[/droid.+; (glass) \d/i],[y,[_,ve],[v,he]],[/(pico) (4|neo3(?: link|pro)?)/i],[_,y,[v,he]],[/; (quest( \d| pro)?)/i],[y,[_,ei],[v,he]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[_,[v,ke]],[/(aeobc)\b/i],[y,[_,Z],[v,ke]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i],[y,[v,L]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[y,[v,R]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[v,R]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[v,L]],[/(android[-\w\. ]{0,9});.+buil/i],[y,[_,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[D,[E,g+"HTML"]],[/(arkweb)\/([\w\.]+)/i],[E,D],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[D,[E,"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],[E,D],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[D,E]],os:[[/microsoft (windows) (vista|xp)/i],[E,D],[/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i],[E,[D,A,G]],[/windows nt 6\.2; (arm)/i,/windows[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i,/(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[D,A,G],[E,"Windows"]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[D,/_/g,"."],[E,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[E,Gn],[D,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[D,E],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish|openharmony)[-\/ ]?([\w\.]*)/i,/(blackberry)\w*\/([\w\.]*)/i,/(tizen|kaios)[\/ ]([\w\.]+)/i,/\((series40);/i],[E,D],[/\(bb(10);/i],[D,[E,ge]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[D,[E,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[D,[E,Ke+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[D,[E,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[D,[E,"watchOS"]],[/crkey\/([\d\.]+)/i],[D,[E,xe+"cast"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[E,qi],D],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux) ?([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[E,D],[/(sunos) ?([\w\.\d]*)/i],[[E,"Solaris"],D],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[E,D]]},me=function(W,ce){if(typeof W===d&&(ce=W,W=n),!(this instanceof me))return new me(W,ce).getResult();var ee=typeof r!==u&&r.navigator?r.navigator:n,Ce=W||(ee&&ee.userAgent?ee.userAgent:s),Ot=ee&&ee.userAgentData?ee.userAgentData:n,Dt=ce?vt(Ie,ce):Ie,Te=ee&&ee.userAgent==Ce;return this.getBrowser=function(){var ne={};return ne[E]=n,ne[D]=n,T.call(ne,Ce,Dt.browser),ne[h]=l(ne[D]),Te&&ee&&ee.brave&&typeof ee.brave.isBrave==c&&(ne[E]="Brave"),ne},this.getCPU=function(){var ne={};return ne[P]=n,T.call(ne,Ce,Dt.cpu),ne},this.getDevice=function(){var ne={};return ne[_]=n,ne[y]=n,ne[v]=n,T.call(ne,Ce,Dt.device),Te&&!ne[v]&&Ot&&Ot.mobile&&(ne[v]=L),Te&&ne[y]=="Macintosh"&&ee&&typeof ee.standalone!==u&&ee.maxTouchPoints&&ee.maxTouchPoints>2&&(ne[y]="iPad",ne[v]=R),ne},this.getEngine=function(){var ne={};return ne[E]=n,ne[D]=n,T.call(ne,Ce,Dt.engine),ne},this.getOS=function(){var ne={};return ne[E]=n,ne[D]=n,T.call(ne,Ce,Dt.os),Te&&!ne[E]&&Ot&&Ot.platform&&Ot.platform!="Unknown"&&(ne[E]=Ot.platform.replace(/chrome os/i,qi).replace(/macos/i,Gn)),ne},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return Ce},this.setUA=function(ne){return Ce=typeof ne===m&&ne.length>B?p(ne,B):ne,this},this.setUA(Ce),this};me.VERSION=i,me.BROWSER=$r([E,D,h]),me.CPU=$r([P]),me.DEVICE=$r([y,_,v,M,L,q,R,he,ke]),me.ENGINE=me.OS=$r([E,D]),typeof e!==u?(typeof t!==u&&t.exports&&(e=t.exports=me),e.UAParser=me):typeof define===c&&define.amd?define(function(){return me}):typeof r!==u&&(r.UAParser=me);var ye=typeof r!==u&&(r.jQuery||r.Zepto);if(ye&&!ye.ua){var je=new me;ye.ua=je.getResult(),ye.ua.get=function(){return je.getUA()},ye.ua.set=function(W){je.setUA(W);var ce=je.getResult();for(var ee in ce)ye.ua[ee]=ce[ee]}}})(typeof window=="object"?window:e)}),Df=ur((e,t)=>{"use strict";(function(r){if(typeof e=="object"&&typeof t<"u")t.exports=r();else if(typeof define=="function"&&define.amd)define([],r);else{var n;typeof window<"u"?n=window:typeof global<"u"?n=global:typeof self<"u"?n=self:n=this,n.localforage=r()}})(function(){var r,n,i;return function s(o,c,u){function d(y,E){if(!c[y]){if(!o[y]){var v=typeof Ki=="function"&&Ki;if(!E&&v)return v(y,!0);if(m)return m(y,!0);var _=new Error("Cannot find module '"+y+"'");throw _.code="MODULE_NOT_FOUND",_}var D=c[y]={exports:{}};o[y][0].call(D.exports,function(P){var M=o[y][1][P];return d(M||P)},D,D.exports,s,o,c,u)}return c[y].exports}for(var m=typeof Ki=="function"&&Ki,h=0;h<u.length;h++)d(u[h]);return d}({1:[function(s,o,c){(function(u){"use strict";var d=u.MutationObserver||u.WebKitMutationObserver,m;if(d){var h=0,y=new d(P),E=u.document.createTextNode("");y.observe(E,{characterData:!0}),m=function(){E.data=h=++h%2}}else if(!u.setImmediate&&typeof u.MessageChannel<"u"){var v=new u.MessageChannel;v.port1.onmessage=P,m=function(){v.port2.postMessage(0)}}else"document"in u&&"onreadystatechange"in u.document.createElement("script")?m=function(){var L=u.document.createElement("script");L.onreadystatechange=function(){P(),L.onreadystatechange=null,L.parentNode.removeChild(L),L=null},u.document.documentElement.appendChild(L)}:m=function(){setTimeout(P,0)};var _,D=[];function P(){_=!0;for(var L,R,q=D.length;q;){for(R=D,D=[],L=-1;++L<q;)R[L]();q=D.length}_=!1}o.exports=M;function M(L){D.push(L)===1&&!_&&m()}}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{}],2:[function(s,o,c){"use strict";var u=s(1);function d(){}var m={},h=["REJECTED"],y=["FULFILLED"],E=["PENDING"];o.exports=v;function v(B){if(typeof B!="function")throw new TypeError("resolver must be a function");this.state=E,this.queue=[],this.outcome=void 0,B!==d&&M(this,B)}v.prototype.catch=function(B){return this.then(null,B)},v.prototype.then=function(B,Z){if(typeof B!="function"&&this.state===y||typeof Z!="function"&&this.state===h)return this;var z=new this.constructor(d);if(this.state!==E){var J=this.state===y?B:Z;D(z,J,this.outcome)}else this.queue.push(new _(z,B,Z));return z};function _(B,Z,z){this.promise=B,typeof Z=="function"&&(this.onFulfilled=Z,this.callFulfilled=this.otherCallFulfilled),typeof z=="function"&&(this.onRejected=z,this.callRejected=this.otherCallRejected)}_.prototype.callFulfilled=function(B){m.resolve(this.promise,B)},_.prototype.otherCallFulfilled=function(B){D(this.promise,this.onFulfilled,B)},_.prototype.callRejected=function(B){m.reject(this.promise,B)},_.prototype.otherCallRejected=function(B){D(this.promise,this.onRejected,B)};function D(B,Z,z){u(function(){var J;try{J=Z(z)}catch(ge){return m.reject(B,ge)}J===B?m.reject(B,new TypeError("Cannot resolve promise with itself")):m.resolve(B,J)})}m.resolve=function(B,Z){var z=L(P,Z);if(z.status==="error")return m.reject(B,z.value);var J=z.value;if(J)M(B,J);else{B.state=y,B.outcome=Z;for(var ge=-1,$e=B.queue.length;++ge<$e;)B.queue[ge].callFulfilled(Z)}return B},m.reject=function(B,Z){B.state=h,B.outcome=Z;for(var z=-1,J=B.queue.length;++z<J;)B.queue[z].callRejected(Z);return B};function P(B){var Z=B&&B.then;if(B&&(typeof B=="object"||typeof B=="function")&&typeof Z=="function")return function(){Z.apply(B,arguments)}}function M(B,Z){var z=!1;function J(g){z||(z=!0,m.reject(B,g))}function ge(g){z||(z=!0,m.resolve(B,g))}function $e(){Z(ge,J)}var xe=L($e);xe.status==="error"&&J(xe.value)}function L(B,Z){var z={};try{z.value=B(Z),z.status="success"}catch(J){z.status="error",z.value=J}return z}v.resolve=R;function R(B){return B instanceof this?B:m.resolve(new this(d),B)}v.reject=q;function q(B){var Z=new this(d);return m.reject(Z,B)}v.all=he;function he(B){var Z=this;if(Object.prototype.toString.call(B)!=="[object Array]")return this.reject(new TypeError("must be an array"));var z=B.length,J=!1;if(!z)return this.resolve([]);for(var ge=new Array(z),$e=0,xe=-1,g=new this(d);++xe<z;)Ke(B[xe],xe);return g;function Ke(ve,gt){Z.resolve(ve).then(ae,function(ie){J||(J=!0,m.reject(g,ie))});function ae(ie){ge[gt]=ie,++$e===z&&!J&&(J=!0,m.resolve(g,ge))}}}v.race=ke;function ke(B){var Z=this;if(Object.prototype.toString.call(B)!=="[object Array]")return this.reject(new TypeError("must be an array"));var z=B.length,J=!1;if(!z)return this.resolve([]);for(var ge=-1,$e=new this(d);++ge<z;)xe(B[ge]);return $e;function xe(g){Z.resolve(g).then(function(Ke){J||(J=!0,m.resolve($e,Ke))},function(Ke){J||(J=!0,m.reject($e,Ke))})}}},{1:1}],3:[function(s,o,c){(function(u){"use strict";typeof u.Promise!="function"&&(u.Promise=s(2))}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{2:2}],4:[function(s,o,c){"use strict";var u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(f){return typeof f}:function(f){return f&&typeof Symbol=="function"&&f.constructor===Symbol&&f!==Symbol.prototype?"symbol":typeof f};function d(f,S){if(!(f instanceof S))throw new TypeError("Cannot call a class as a function")}function m(){try{if(typeof indexedDB<"u")return indexedDB;if(typeof webkitIndexedDB<"u")return webkitIndexedDB;if(typeof mozIndexedDB<"u")return mozIndexedDB;if(typeof OIndexedDB<"u")return OIndexedDB;if(typeof msIndexedDB<"u")return msIndexedDB}catch{return}}var h=m();function y(){try{if(!h||!h.open)return!1;var f=typeof openDatabase<"u"&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),S=typeof fetch=="function"&&fetch.toString().indexOf("[native code")!==-1;return(!f||S)&&typeof indexedDB<"u"&&typeof IDBKeyRange<"u"}catch{return!1}}function E(f,S){f=f||[],S=S||{};try{return new Blob(f,S)}catch(O){if(O.name!=="TypeError")throw O;for(var I=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,x=new I,C=0;C<f.length;C+=1)x.append(f[C]);return x.getBlob(S.type)}}typeof Promise>"u"&&s(3);var v=Promise;function _(f,S){S&&f.then(function(I){S(null,I)},function(I){S(I)})}function D(f,S,I){typeof S=="function"&&f.then(S),typeof I=="function"&&f.catch(I)}function P(f){return typeof f!="string"&&(console.warn(f+" used as a key, but it is not a string."),f=String(f)),f}function M(){if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}var L="local-forage-detect-blob-support",R=void 0,q={},he=Object.prototype.toString,ke="readonly",B="readwrite";function Z(f){for(var S=f.length,I=new ArrayBuffer(S),x=new Uint8Array(I),C=0;C<S;C++)x[C]=f.charCodeAt(C);return I}function z(f){return new v(function(S){var I=f.transaction(L,B),x=E([""]);I.objectStore(L).put(x,"key"),I.onabort=function(C){C.preventDefault(),C.stopPropagation(),S(!1)},I.oncomplete=function(){var C=navigator.userAgent.match(/Chrome\/(\d+)/),O=navigator.userAgent.match(/Edge\//);S(O||!C||parseInt(C[1],10)>=43)}}).catch(function(){return!1})}function J(f){return typeof R=="boolean"?v.resolve(R):z(f).then(function(S){return R=S,R})}function ge(f){var S=q[f.name],I={};I.promise=new v(function(x,C){I.resolve=x,I.reject=C}),S.deferredOperations.push(I),S.dbReady?S.dbReady=S.dbReady.then(function(){return I.promise}):S.dbReady=I.promise}function $e(f){var S=q[f.name],I=S.deferredOperations.pop();if(I)return I.resolve(),I.promise}function xe(f,S){var I=q[f.name],x=I.deferredOperations.pop();if(x)return x.reject(S),x.promise}function g(f,S){return new v(function(I,x){if(q[f.name]=q[f.name]||Hr(),f.db)if(S)ge(f),f.db.close();else return I(f.db);var C=[f.name];S&&C.push(f.version);var O=h.open.apply(h,C);S&&(O.onupgradeneeded=function(k){var j=O.result;try{j.createObjectStore(f.storeName),k.oldVersion<=1&&j.createObjectStore(L)}catch(H){if(H.name==="ConstraintError")console.warn('The database "'+f.name+'" has been upgraded from version '+k.oldVersion+" to version "+k.newVersion+', but the storage "'+f.storeName+'" already exists.');else throw H}}),O.onerror=function(k){k.preventDefault(),x(O.error)},O.onsuccess=function(){var k=O.result;k.onversionchange=function(j){j.target.close()},I(k),$e(f)}})}function Ke(f){return g(f,!1)}function ve(f){return g(f,!0)}function gt(f,S){if(!f.db)return!0;var I=!f.db.objectStoreNames.contains(f.storeName),x=f.version<f.db.version,C=f.version>f.db.version;if(x&&(f.version!==S&&console.warn('The database "'+f.name+`" can't be downgraded from version `+f.db.version+" to version "+f.version+"."),f.version=f.db.version),C||I){if(I){var O=f.db.version+1;O>f.version&&(f.version=O)}return!0}return!1}function ae(f){return new v(function(S,I){var x=new FileReader;x.onerror=I,x.onloadend=function(C){var O=btoa(C.target.result||"");S({__local_forage_encoded_blob:!0,data:O,type:f.type})},x.readAsBinaryString(f)})}function ie(f){var S=Z(atob(f.data));return E([S],{type:f.type})}function ut(f){return f&&f.__local_forage_encoded_blob}function tr(f){var S=this,I=S._initReady().then(function(){var x=q[S._dbInfo.name];if(x&&x.dbReady)return x.dbReady});return D(I,f,f),I}function lr(f){ge(f);for(var S=q[f.name],I=S.forages,x=0;x<I.length;x++){var C=I[x];C._dbInfo.db&&(C._dbInfo.db.close(),C._dbInfo.db=null)}return f.db=null,Ke(f).then(function(O){return f.db=O,gt(f)?ve(f):O}).then(function(O){f.db=S.db=O;for(var k=0;k<I.length;k++)I[k]._dbInfo.db=O}).catch(function(O){throw xe(f,O),O})}function yt(f,S,I,x){x===void 0&&(x=1);try{var C=f.db.transaction(f.storeName,S);I(null,C)}catch(O){if(x>0&&(!f.db||O.name==="InvalidStateError"||O.name==="NotFoundError"))return v.resolve().then(function(){if(!f.db||O.name==="NotFoundError"&&!f.db.objectStoreNames.contains(f.storeName)&&f.version<=f.db.version)return f.db&&(f.version=f.db.version+1),ve(f)}).then(function(){return lr(f).then(function(){yt(f,S,I,x-1)})}).catch(I);I(O)}}function Hr(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function Hn(f){var S=this,I={db:null};if(f)for(var x in f)I[x]=f[x];var C=q[I.name];C||(C=Hr(),q[I.name]=C),C.forages.push(S),S._initReady||(S._initReady=S.ready,S.ready=tr);var O=[];function k(){return v.resolve()}for(var j=0;j<C.forages.length;j++){var H=C.forages[j];H!==S&&O.push(H._initReady().catch(k))}var V=C.forages.slice(0);return v.all(O).then(function(){return I.db=C.db,Ke(I)}).then(function(F){return I.db=F,gt(I,S._defaultConfig.version)?ve(I):F}).then(function(F){I.db=C.db=F,S._dbInfo=I;for(var Y=0;Y<V.length;Y++){var pe=V[Y];pe!==S&&(pe._dbInfo.db=I.db,pe._dbInfo.version=I.version)}})}function nn(f,S){var I=this;f=P(f);var x=new v(function(C,O){I.ready().then(function(){yt(I._dbInfo,ke,function(k,j){if(k)return O(k);try{var H=j.objectStore(I._dbInfo.storeName),V=H.get(f);V.onsuccess=function(){var F=V.result;F===void 0&&(F=null),ut(F)&&(F=ie(F)),C(F)},V.onerror=function(){O(V.error)}}catch(F){O(F)}})}).catch(O)});return _(x,S),x}function ei(f,S){var I=this,x=new v(function(C,O){I.ready().then(function(){yt(I._dbInfo,ke,function(k,j){if(k)return O(k);try{var H=j.objectStore(I._dbInfo.storeName),V=H.openCursor(),F=1;V.onsuccess=function(){var Y=V.result;if(Y){var pe=Y.value;ut(pe)&&(pe=ie(pe));var Ge=f(pe,Y.key,F++);Ge!==void 0?C(Ge):Y.continue()}else C()},V.onerror=function(){O(V.error)}}catch(Y){O(Y)}})}).catch(O)});return _(x,S),x}function qi(f,S,I){var x=this;f=P(f);var C=new v(function(O,k){var j;x.ready().then(function(){return j=x._dbInfo,he.call(S)==="[object Blob]"?J(j.db).then(function(H){return H?S:ae(S)}):S}).then(function(H){yt(x._dbInfo,B,function(V,F){if(V)return k(V);try{var Y=F.objectStore(x._dbInfo.storeName);H===null&&(H=void 0);var pe=Y.put(H,f);F.oncomplete=function(){H===void 0&&(H=null),O(H)},F.onabort=F.onerror=function(){var Ge=pe.error?pe.error:pe.transaction.error;k(Ge)}}catch(Ge){k(Ge)}})}).catch(k)});return _(C,I),C}function Gn(f,S){var I=this;f=P(f);var x=new v(function(C,O){I.ready().then(function(){yt(I._dbInfo,B,function(k,j){if(k)return O(k);try{var H=j.objectStore(I._dbInfo.storeName),V=H.delete(f);j.oncomplete=function(){C()},j.onerror=function(){O(V.error)},j.onabort=function(){var F=V.error?V.error:V.transaction.error;O(F)}}catch(F){O(F)}})}).catch(O)});return _(x,S),x}function $n(f){var S=this,I=new v(function(x,C){S.ready().then(function(){yt(S._dbInfo,B,function(O,k){if(O)return C(O);try{var j=k.objectStore(S._dbInfo.storeName),H=j.clear();k.oncomplete=function(){x()},k.onabort=k.onerror=function(){var V=H.error?H.error:H.transaction.error;C(V)}}catch(V){C(V)}})}).catch(C)});return _(I,f),I}function vt(f){var S=this,I=new v(function(x,C){S.ready().then(function(){yt(S._dbInfo,ke,function(O,k){if(O)return C(O);try{var j=k.objectStore(S._dbInfo.storeName),H=j.count();H.onsuccess=function(){x(H.result)},H.onerror=function(){C(H.error)}}catch(V){C(V)}})}).catch(C)});return _(I,f),I}function $r(f,S){var I=this,x=new v(function(C,O){if(f<0){C(null);return}I.ready().then(function(){yt(I._dbInfo,ke,function(k,j){if(k)return O(k);try{var H=j.objectStore(I._dbInfo.storeName),V=!1,F=H.openKeyCursor();F.onsuccess=function(){var Y=F.result;if(!Y){C(null);return}f===0||V?C(Y.key):(V=!0,Y.advance(f))},F.onerror=function(){O(F.error)}}catch(Y){O(Y)}})}).catch(O)});return _(x,S),x}function Gi(f){var S=this,I=new v(function(x,C){S.ready().then(function(){yt(S._dbInfo,ke,function(O,k){if(O)return C(O);try{var j=k.objectStore(S._dbInfo.storeName),H=j.openKeyCursor(),V=[];H.onsuccess=function(){var F=H.result;if(!F){x(V);return}V.push(F.key),F.continue()},H.onerror=function(){C(H.error)}}catch(F){C(F)}})}).catch(C)});return _(I,f),I}function a(f,S){S=M.apply(this,arguments);var I=this.config();f=typeof f!="function"&&f||{},f.name||(f.name=f.name||I.name,f.storeName=f.storeName||I.storeName);var x=this,C;if(!f.name)C=v.reject("Invalid arguments");else{var O=f.name===I.name&&x._dbInfo.db,k=O?v.resolve(x._dbInfo.db):Ke(f).then(function(j){var H=q[f.name],V=H.forages;H.db=j;for(var F=0;F<V.length;F++)V[F]._dbInfo.db=j;return j});f.storeName?C=k.then(function(j){if(j.objectStoreNames.contains(f.storeName)){var H=j.version+1;ge(f);var V=q[f.name],F=V.forages;j.close();for(var Y=0;Y<F.length;Y++){var pe=F[Y];pe._dbInfo.db=null,pe._dbInfo.version=H}var Ge=new v(function(Ae,pt){var We=h.open(f.name,H);We.onerror=function(Ht){var Cc=We.result;Cc.close(),pt(Ht)},We.onupgradeneeded=function(){var Ht=We.result;Ht.deleteObjectStore(f.storeName)},We.onsuccess=function(){var Ht=We.result;Ht.close(),Ae(Ht)}});return Ge.then(function(Ae){V.db=Ae;for(var pt=0;pt<F.length;pt++){var We=F[pt];We._dbInfo.db=Ae,$e(We._dbInfo)}}).catch(function(Ae){throw(xe(f,Ae)||v.resolve()).catch(function(){}),Ae})}}):C=k.then(function(j){ge(f);var H=q[f.name],V=H.forages;j.close();for(var F=0;F<V.length;F++){var Y=V[F];Y._dbInfo.db=null}var pe=new v(function(Ge,Ae){var pt=h.deleteDatabase(f.name);pt.onerror=function(){var We=pt.result;We&&We.close(),Ae(pt.error)},pt.onblocked=function(){console.warn('dropInstance blocked for database "'+f.name+'" until all open connections are closed')},pt.onsuccess=function(){var We=pt.result;We&&We.close(),Ge(We)}});return pe.then(function(Ge){H.db=Ge;for(var Ae=0;Ae<V.length;Ae++){var pt=V[Ae];$e(pt._dbInfo)}}).catch(function(Ge){throw(xe(f,Ge)||v.resolve()).catch(function(){}),Ge})})}return _(C,S),C}var l={_driver:"asyncStorage",_initStorage:Hn,_support:y(),iterate:ei,getItem:nn,setItem:qi,removeItem:Gn,clear:$n,length:vt,key:$r,keys:Gi,dropInstance:a};function p(){return typeof openDatabase=="function"}var T="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",A="~~local_forage_type~",U=/^~~local_forage_type~([^~]+)~/,G="__lfsc__:",Ie=G.length,me="arbf",ye="blob",je="si08",W="ui08",ce="uic8",ee="si16",Ce="si32",Ot="ur16",Dt="ui32",Te="fl32",ne="fl64",$t=Ie+me.length,Yi=Object.prototype.toString;function cs(f){var S=f.length*.75,I=f.length,x,C=0,O,k,j,H;f[f.length-1]==="="&&(S--,f[f.length-2]==="="&&S--);var V=new ArrayBuffer(S),F=new Uint8Array(V);for(x=0;x<I;x+=4)O=T.indexOf(f[x]),k=T.indexOf(f[x+1]),j=T.indexOf(f[x+2]),H=T.indexOf(f[x+3]),F[C++]=O<<2|k>>4,F[C++]=(k&15)<<4|j>>2,F[C++]=(j&3)<<6|H&63;return V}function Qo(f){var S=new Uint8Array(f),I="",x;for(x=0;x<S.length;x+=3)I+=T[S[x]>>2],I+=T[(S[x]&3)<<4|S[x+1]>>4],I+=T[(S[x+1]&15)<<2|S[x+2]>>6],I+=T[S[x+2]&63];return S.length%3===2?I=I.substring(0,I.length-1)+"=":S.length%3===1&&(I=I.substring(0,I.length-2)+"=="),I}function Qh(f,S){var I="";if(f&&(I=Yi.call(f)),f&&(I==="[object ArrayBuffer]"||f.buffer&&Yi.call(f.buffer)==="[object ArrayBuffer]")){var x,C=G;f instanceof ArrayBuffer?(x=f,C+=me):(x=f.buffer,I==="[object Int8Array]"?C+=je:I==="[object Uint8Array]"?C+=W:I==="[object Uint8ClampedArray]"?C+=ce:I==="[object Int16Array]"?C+=ee:I==="[object Uint16Array]"?C+=Ot:I==="[object Int32Array]"?C+=Ce:I==="[object Uint32Array]"?C+=Dt:I==="[object Float32Array]"?C+=Te:I==="[object Float64Array]"?C+=ne:S(new Error("Failed to get type for BinaryArray"))),S(C+Qo(x))}else if(I==="[object Blob]"){var O=new FileReader;O.onload=function(){var k=A+f.type+"~"+Qo(this.result);S(G+ye+k)},O.readAsArrayBuffer(f)}else try{S(JSON.stringify(f))}catch(k){console.error("Couldn't convert value into a JSON string: ",f),S(null,k)}}function Zh(f){if(f.substring(0,Ie)!==G)return JSON.parse(f);var S=f.substring($t),I=f.substring(Ie,$t),x;if(I===ye&&U.test(S)){var C=S.match(U);x=C[1],S=S.substring(C[0].length)}var O=cs(S);switch(I){case me:return O;case ye:return E([O],{type:x});case je:return new Int8Array(O);case W:return new Uint8Array(O);case ce:return new Uint8ClampedArray(O);case ee:return new Int16Array(O);case Ot:return new Uint16Array(O);case Ce:return new Int32Array(O);case Dt:return new Uint32Array(O);case Te:return new Float32Array(O);case ne:return new Float64Array(O);default:throw new Error("Unkown type: "+I)}}var Wa={serialize:Qh,deserialize:Zh,stringToBuffer:cs,bufferToString:Qo};function bh(f,S,I,x){f.executeSql("CREATE TABLE IF NOT EXISTS "+S.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],I,x)}function ep(f){var S=this,I={db:null};if(f)for(var x in f)I[x]=typeof f[x]!="string"?f[x].toString():f[x];var C=new v(function(O,k){try{I.db=openDatabase(I.name,String(I.version),I.description,I.size)}catch(j){return k(j)}I.db.transaction(function(j){bh(j,I,function(){S._dbInfo=I,O()},function(H,V){k(V)})},k)});return I.serializer=Wa,C}function Vn(f,S,I,x,C,O){f.executeSql(I,x,C,function(k,j){j.code===j.SYNTAX_ERR?k.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[S.storeName],function(H,V){V.rows.length?O(H,j):bh(H,S,function(){H.executeSql(I,x,C,O)},O)},O):O(k,j)},O)}function tp(f,S){var I=this;f=P(f);var x=new v(function(C,O){I.ready().then(function(){var k=I._dbInfo;k.db.transaction(function(j){Vn(j,k,"SELECT * FROM "+k.storeName+" WHERE key = ? LIMIT 1",[f],function(H,V){var F=V.rows.length?V.rows.item(0).value:null;F&&(F=k.serializer.deserialize(F)),C(F)},function(H,V){O(V)})})}).catch(O)});return _(x,S),x}function np(f,S){var I=this,x=new v(function(C,O){I.ready().then(function(){var k=I._dbInfo;k.db.transaction(function(j){Vn(j,k,"SELECT * FROM "+k.storeName,[],function(H,V){for(var F=V.rows,Y=F.length,pe=0;pe<Y;pe++){var Ge=F.item(pe),Ae=Ge.value;if(Ae&&(Ae=k.serializer.deserialize(Ae)),Ae=f(Ae,Ge.key,pe+1),Ae!==void 0){C(Ae);return}}C()},function(H,V){O(V)})})}).catch(O)});return _(x,S),x}function wh(f,S,I,x){var C=this;f=P(f);var O=new v(function(k,j){C.ready().then(function(){S===void 0&&(S=null);var H=S,V=C._dbInfo;V.serializer.serialize(S,function(F,Y){Y?j(Y):V.db.transaction(function(pe){Vn(pe,V,"INSERT OR REPLACE INTO "+V.storeName+" (key, value) VALUES (?, ?)",[f,F],function(){k(H)},function(Ge,Ae){j(Ae)})},function(pe){if(pe.code===pe.QUOTA_ERR){if(x>0){k(wh.apply(C,[f,H,I,x-1]));return}j(pe)}})})}).catch(j)});return _(O,I),O}function ip(f,S,I){return wh.apply(this,[f,S,I,1])}function sp(f,S){var I=this;f=P(f);var x=new v(function(C,O){I.ready().then(function(){var k=I._dbInfo;k.db.transaction(function(j){Vn(j,k,"DELETE FROM "+k.storeName+" WHERE key = ?",[f],function(){C()},function(H,V){O(V)})})}).catch(O)});return _(x,S),x}function op(f){var S=this,I=new v(function(x,C){S.ready().then(function(){var O=S._dbInfo;O.db.transaction(function(k){Vn(k,O,"DELETE FROM "+O.storeName,[],function(){x()},function(j,H){C(H)})})}).catch(C)});return _(I,f),I}function ap(f){var S=this,I=new v(function(x,C){S.ready().then(function(){var O=S._dbInfo;O.db.transaction(function(k){Vn(k,O,"SELECT COUNT(key) as c FROM "+O.storeName,[],function(j,H){var V=H.rows.item(0).c;x(V)},function(j,H){C(H)})})}).catch(C)});return _(I,f),I}function cp(f,S){var I=this,x=new v(function(C,O){I.ready().then(function(){var k=I._dbInfo;k.db.transaction(function(j){Vn(j,k,"SELECT key FROM "+k.storeName+" WHERE id = ? LIMIT 1",[f+1],function(H,V){var F=V.rows.length?V.rows.item(0).key:null;C(F)},function(H,V){O(V)})})}).catch(O)});return _(x,S),x}function hp(f){var S=this,I=new v(function(x,C){S.ready().then(function(){var O=S._dbInfo;O.db.transaction(function(k){Vn(k,O,"SELECT key FROM "+O.storeName,[],function(j,H){for(var V=[],F=0;F<H.rows.length;F++)V.push(H.rows.item(F).key);x(V)},function(j,H){C(H)})})}).catch(C)});return _(I,f),I}function dp(f){return new v(function(S,I){f.transaction(function(x){x.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(C,O){for(var k=[],j=0;j<O.rows.length;j++)k.push(O.rows.item(j).name);S({db:f,storeNames:k})},function(C,O){I(O)})},function(x){I(x)})})}function gp(f,S){S=M.apply(this,arguments);var I=this.config();f=typeof f!="function"&&f||{},f.name||(f.name=f.name||I.name,f.storeName=f.storeName||I.storeName);var x=this,C;return f.name?C=new v(function(O){var k;f.name===I.name?k=x._dbInfo.db:k=openDatabase(f.name,"","",0),f.storeName?O({db:k,storeNames:[f.storeName]}):O(dp(k))}).then(function(O){return new v(function(k,j){O.db.transaction(function(H){function V(Ge){return new v(function(Ae,pt){H.executeSql("DROP TABLE IF EXISTS "+Ge,[],function(){Ae()},function(We,Ht){pt(Ht)})})}for(var F=[],Y=0,pe=O.storeNames.length;Y<pe;Y++)F.push(V(O.storeNames[Y]));v.all(F).then(function(){k()}).catch(function(Ge){j(Ge)})},function(H){j(H)})})}):C=v.reject("Invalid arguments"),_(C,S),C}var mp={_driver:"webSQLStorage",_initStorage:ep,_support:p(),iterate:np,getItem:tp,setItem:ip,removeItem:sp,clear:op,length:ap,key:cp,keys:hp,dropInstance:gp};function yp(){try{return typeof localStorage<"u"&&"setItem"in localStorage&&!!localStorage.setItem}catch{return!1}}function Ih(f,S){var I=f.name+"/";return f.storeName!==S.storeName&&(I+=f.storeName+"/"),I}function vp(){var f="_localforage_support_test";try{return localStorage.setItem(f,!0),localStorage.removeItem(f),!1}catch{return!0}}function bp(){return!vp()||localStorage.length>0}function wp(f){var S=this,I={};if(f)for(var x in f)I[x]=f[x];return I.keyPrefix=Ih(f,S._defaultConfig),bp()?(S._dbInfo=I,I.serializer=Wa,v.resolve()):v.reject()}function _p(f){var S=this,I=S.ready().then(function(){for(var x=S._dbInfo.keyPrefix,C=localStorage.length-1;C>=0;C--){var O=localStorage.key(C);O.indexOf(x)===0&&localStorage.removeItem(O)}});return _(I,f),I}function Ep(f,S){var I=this;f=P(f);var x=I.ready().then(function(){var C=I._dbInfo,O=localStorage.getItem(C.keyPrefix+f);return O&&(O=C.serializer.deserialize(O)),O});return _(x,S),x}function Sp(f,S){var I=this,x=I.ready().then(function(){for(var C=I._dbInfo,O=C.keyPrefix,k=O.length,j=localStorage.length,H=1,V=0;V<j;V++){var F=localStorage.key(V);if(F.indexOf(O)===0){var Y=localStorage.getItem(F);if(Y&&(Y=C.serializer.deserialize(Y)),Y=f(Y,F.substring(k),H++),Y!==void 0)return Y}}});return _(x,S),x}function Ip(f,S){var I=this,x=I.ready().then(function(){var C=I._dbInfo,O;try{O=localStorage.key(f)}catch{O=null}return O&&(O=O.substring(C.keyPrefix.length)),O});return _(x,S),x}function Tp(f){var S=this,I=S.ready().then(function(){for(var x=S._dbInfo,C=localStorage.length,O=[],k=0;k<C;k++){var j=localStorage.key(k);j.indexOf(x.keyPrefix)===0&&O.push(j.substring(x.keyPrefix.length))}return O});return _(I,f),I}function Cp(f){var S=this,I=S.keys().then(function(x){return x.length});return _(I,f),I}function Np(f,S){var I=this;f=P(f);var x=I.ready().then(function(){var C=I._dbInfo;localStorage.removeItem(C.keyPrefix+f)});return _(x,S),x}function Dp(f,S,I){var x=this;f=P(f);var C=x.ready().then(function(){S===void 0&&(S=null);var O=S;return new v(function(k,j){var H=x._dbInfo;H.serializer.serialize(S,function(V,F){if(F)j(F);else try{localStorage.setItem(H.keyPrefix+f,V),k(O)}catch(Y){(Y.name==="QuotaExceededError"||Y.name==="NS_ERROR_DOM_QUOTA_REACHED")&&j(Y),j(Y)}})})});return _(C,I),C}function xp(f,S){if(S=M.apply(this,arguments),f=typeof f!="function"&&f||{},!f.name){var I=this.config();f.name=f.name||I.name,f.storeName=f.storeName||I.storeName}var x=this,C;return f.name?C=new v(function(O){f.storeName?O(Ih(f,x._defaultConfig)):O(f.name+"/")}).then(function(O){for(var k=localStorage.length-1;k>=0;k--){var j=localStorage.key(k);j.indexOf(O)===0&&localStorage.removeItem(j)}}):C=v.reject("Invalid arguments"),_(C,S),C}var Op={_driver:"localStorageWrapper",_initStorage:wp,_support:yp(),iterate:Sp,getItem:Ep,setItem:Dp,removeItem:Np,clear:_p,length:Cp,key:Ip,keys:Tp,dropInstance:xp},Ap=function(f,S){return f===S||typeof f=="number"&&typeof S=="number"&&isNaN(f)&&isNaN(S)},Pp=function(f,S){for(var I=f.length,x=0;x<I;){if(Ap(f[x],S))return!0;x++}return!1},Th=Array.isArray||function(f){return Object.prototype.toString.call(f)==="[object Array]"},to={},Ch={},zi={INDEXEDDB:l,WEBSQL:mp,LOCALSTORAGE:Op},Rp=[zi.INDEXEDDB._driver,zi.WEBSQL._driver,zi.LOCALSTORAGE._driver],Xo=["dropInstance"],Ka=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(Xo),kp={description:"",driver:Rp.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function Lp(f,S){f[S]=function(){var I=arguments;return f.ready().then(function(){return f[S].apply(f,I)})}}function Tc(){for(var f=1;f<arguments.length;f++){var S=arguments[f];if(S)for(var I in S)S.hasOwnProperty(I)&&(Th(S[I])?arguments[0][I]=S[I].slice():arguments[0][I]=S[I])}return arguments[0]}var Up=function(){function f(S){d(this,f);for(var I in zi)if(zi.hasOwnProperty(I)){var x=zi[I],C=x._driver;this[I]=C,to[C]||this.defineDriver(x)}this._defaultConfig=Tc({},kp),this._config=Tc({},this._defaultConfig,S),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}return f.prototype.config=function(S){if((typeof S>"u"?"undefined":u(S))==="object"){if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var I in S){if(I==="storeName"&&(S[I]=S[I].replace(/\W/g,"_")),I==="version"&&typeof S[I]!="number")return new Error("Database version must be a number.");this._config[I]=S[I]}return"driver"in S&&S.driver?this.setDriver(this._config.driver):!0}else return typeof S=="string"?this._config[S]:this._config},f.prototype.defineDriver=function(S,I,x){var C=new v(function(O,k){try{var j=S._driver,H=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!S._driver){k(H);return}for(var V=Ka.concat("_initStorage"),F=0,Y=V.length;F<Y;F++){var pe=V[F],Ge=!Pp(Xo,pe);if((Ge||S[pe])&&typeof S[pe]!="function"){k(H);return}}var Ae=function(){for(var We=function(Bp){return function(){var $p=new Error("Method "+Bp+" is not implemented by the current driver"),Nh=v.reject($p);return _(Nh,arguments[arguments.length-1]),Nh}},Ht=0,Cc=Xo.length;Ht<Cc;Ht++){var Dc=Xo[Ht];S[Dc]||(S[Dc]=We(Dc))}};Ae();var pt=function(We){to[j]&&console.info("Redefining LocalForage driver: "+j),to[j]=S,Ch[j]=We,O()};"_support"in S?S._support&&typeof S._support=="function"?S._support().then(pt,k):pt(!!S._support):pt(!0)}catch(We){k(We)}});return D(C,I,x),C},f.prototype.driver=function(){return this._driver||null},f.prototype.getDriver=function(S,I,x){var C=to[S]?v.resolve(to[S]):v.reject(new Error("Driver not found."));return D(C,I,x),C},f.prototype.getSerializer=function(S){var I=v.resolve(Wa);return D(I,S),I},f.prototype.ready=function(S){var I=this,x=I._driverSet.then(function(){return I._ready===null&&(I._ready=I._initDriver()),I._ready});return D(x,S,S),x},f.prototype.setDriver=function(S,I,x){var C=this;Th(S)||(S=[S]);var O=this._getSupportedDrivers(S);function k(){C._config.driver=C.driver()}function j(F){return C._extend(F),k(),C._ready=C._initStorage(C._config),C._ready}function H(F){return function(){var Y=0;function pe(){for(;Y<F.length;){var Ge=F[Y];return Y++,C._dbInfo=null,C._ready=null,C.getDriver(Ge).then(j).catch(pe)}k();var Ae=new Error("No available storage method found.");return C._driverSet=v.reject(Ae),C._driverSet}return pe()}}var V=this._driverSet!==null?this._driverSet.catch(function(){return v.resolve()}):v.resolve();return this._driverSet=V.then(function(){var F=O[0];return C._dbInfo=null,C._ready=null,C.getDriver(F).then(function(Y){C._driver=Y._driver,k(),C._wrapLibraryMethodsWithReady(),C._initDriver=H(O)})}).catch(function(){k();var F=new Error("No available storage method found.");return C._driverSet=v.reject(F),C._driverSet}),D(this._driverSet,I,x),this._driverSet},f.prototype.supports=function(S){return!!Ch[S]},f.prototype._extend=function(S){Tc(this,S)},f.prototype._getSupportedDrivers=function(S){for(var I=[],x=0,C=S.length;x<C;x++){var O=S[x];this.supports(O)&&I.push(O)}return I},f.prototype._wrapLibraryMethodsWithReady=function(){for(var S=0,I=Ka.length;S<I;S++)Lp(this,Ka[S])},f.prototype.createInstance=function(S){return new f(S)},f}(),Mp=new Up;o.exports=Mp},{3:3}]},{},[4])(4)})}),ti=ur(e=>{"use strict";var t=e&&e.__awaiter||function(n,i,s,o){function c(u){return u instanceof s?u:new s(function(d){d(u)})}return new(s||(s=Promise))(function(u,d){function m(E){try{y(o.next(E))}catch(v){d(v)}}function h(E){try{y(o.throw(E))}catch(v){d(v)}}function y(E){E.done?u(E.value):c(E.value).then(m,h)}y((o=o.apply(n,i||[])).next())})};Object.defineProperty(e,"__esModule",{value:!0}),e.JSUtils=void 0;var r=class{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 sleep(n){return t(this,void 0,void 0,function*(){return new Promise(i=>setTimeout(i,n))})}static hasKeys(n){return n?Object.keys(n).length>=1:!1}static convertObjectToArray(n,i){return i.reduce((s,o)=>(n.hasOwnProperty(o)&&n[o]!=null&&s.push({[o]:n[o]}),s),[])}static removeNullUndefinedKeys(n){return Object.keys(n).reduce((i,s)=>(n[s]!==null&&n[s]!==void 0&&(i[s]=n[s]),i),{})}static stringify(n){return JSON.stringify(n,function(i,s){return s===void 0?null:s})}};e.JSUtils=r,r.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)/)}),Xu=ur(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.URLBuilder=void 0;var t=function(){function r(n){try{this.base=new URL(n),this.params=new URLSearchParams(this.base.search.slice(1))}catch(i){console.error("Un-parsable URL",i)}}return r.prototype.appendQueryParam=function(n,i){this.params.append(n,i?i.toString():"")},r.prototype.clearQueryParams=function(){return this.params=new URLSearchParams,this},r.prototype.deleteQueryParam=function(n){this.params.delete(n)},r.prototype.getBase=function(){return this.base},r.prototype.getPath=function(){return this.base.pathname},r.prototype.getHostname=function(){return this.base.hostname},r.prototype.getParams=function(){return this.params},r.prototype.getQueryParam=function(n){if(!this.params)return"";var i=this.params.get(n);return!i||i==="undefined"||i==="null"?void 0:i},r.prototype.getQueryString=function(){return this.params.toString()},r.prototype.setPath=function(n){return this.base.pathname=n,this},r.prototype.setQueryParam=function(n,i){return this.params.set(n,i?i.toString():""),this},r.prototype.setQueryString=function(n){if(n)return n[0]==="?"&&(n=n.slice(1)),this.params=new URLSearchParams(n),this},r.prototype.toString=function(){var n=this.params.toString();return n===""?this.base.search="":this.base.search="?"+n,this.base.toString()},r}();e.URLBuilder=t}),nh=ur((e,t)=>{"use strict";(function(r,n){typeof e=="object"&&typeof t<"u"?t.exports=n():typeof define=="function"&&define.amd?define(n):(r=typeof globalThis<"u"?globalThis:r||self,r.fetchRetry=n())})(e,function(){"use strict";var r=function(s,o){if(o=o||{},typeof s!="function")throw new i("fetch must be a function");if(typeof o!="object")throw new i("defaults must be an object");if(o.retries!==void 0&&!n(o.retries))throw new i("retries must be a positive integer");if(o.retryDelay!==void 0&&!n(o.retryDelay)&&typeof o.retryDelay!="function")throw new i("retryDelay must be a positive integer or a function returning a positive integer");if(o.retryOn!==void 0&&!Array.isArray(o.retryOn)&&typeof o.retryOn!="function")throw new i("retryOn property expects an array or function");var c={retries:3,retryDelay:1e3,retryOn:[]};return o=Object.assign(c,o),function(u,d){var m=o.retries,h=o.retryDelay,y=o.retryOn;if(d&&d.retries!==void 0)if(n(d.retries))m=d.retries;else throw new i("retries must be a positive integer");if(d&&d.retryDelay!==void 0)if(n(d.retryDelay)||typeof d.retryDelay=="function")h=d.retryDelay;else throw new i("retryDelay must be a positive integer or a function returning a positive integer");if(d&&d.retryOn)if(Array.isArray(d.retryOn)||typeof d.retryOn=="function")y=d.retryOn;else throw new i("retryOn property expects an array or function");return new Promise(function(E,v){var _=function(P){var M=typeof Request<"u"&&u instanceof Request?u.clone():u;s(M,d).then(function(L){if(Array.isArray(y)&&y.indexOf(L.status)===-1)E(L);else if(typeof y=="function")try{return Promise.resolve(y(P,null,L)).then(function(R){R?D(P,null,L):E(L)}).catch(v)}catch(R){v(R)}else P<m?D(P,null,L):E(L)}).catch(function(L){if(typeof y=="function")try{Promise.resolve(y(P,L,null)).then(function(R){R?D(P,L,null):v(L)}).catch(function(R){v(R)})}catch(R){v(R)}else P<m?D(P,L,null):v(L)})};function D(P,M,L){var R=typeof h=="function"?h(P,M,L):h;setTimeout(function(){_(++P)},R)}_(0)})}};function n(s){return Number.isInteger(s)&&s>=0}function i(s){this.name="ArgumentError",this.message=s}return r})}),fp="9.7.0",N=class xc{static SDK_VERSION=fp;static SDK_VERSION_CODE;static SDK="WEB";static LOG_PREFIX="CooeeSDK";static COOEE="cooee";static SESSION_STORAGE_SCROLL_ID="sleid";static IDLE_TIME_IN_SECONDS=30*60;static IN_APP_WRAPPER_NAME="cooee-wrapper";static IN_APP_CONTAINER_NAME="cooee-container";static IN_APP_DEFAULT_PADDING=15;static EVENT_SCREEN_VIEW="CE Screen View";static EVENT_APP_BACKGROUND="CE App Background";static EVENT_TRIGGER_DISPLAYED="CE Trigger Displayed";static EVENT_CAMPAIGN_HOLDOUT="CE Campaign Holdout";static EVENT_CAMPAIGN_REJECTED="CE Campaign Rejected";static EVENT_CAMPAIGN_FAILED="CE Campaign Failed";static EVENT_TRIGGER_CLOSED="CE Trigger Closed";static EVENT_SCROLL="CE Scroll";static EVENT_TRIGGER_CLICKED="CE Trigger Clicked";static EVENT_FORM_SUBMITTED="CE Form Submitted";static EVENT_EXPERIMENT_START="CE Experiment Start";static EVENT_VIDEO_DIALOG_CLOSED="CE Video Dialog Closed";static EVENT_VIDEO_DIALOG_OPENED="CE Video Dialog Opened";static EVENT_VIDEO_CHANGE="CE Video Changed";static EVENT_LAST_VIDEO_ENDED="CE Last Video Ended";static EVENT_VIDEO_MUTED="CE Video Muted";static EVENT_VIDEO_UNMUTED="CE Video Unmuted";static EVENT_ADD_TO_CART_CLICKED="CE Add To Cart Clicked";static EVENT_VIEW_ITEM_CLICKED="CE View Item Clicked";static EVENT_MORE_ITEM_INFO_CLICKED="CE More Item Info Clicked";static EVENT_OPEN_CART_CLICKED="CE Open Cart Clicked";static EVENT_ADD_TO_CART="Add To Cart";static EVENT_REMOVE_FROM_CART="Remove From Cart";static EVENT_VIEW_ITEM="View Item";static EVENT_VIEW_CART="View Cart";static EVENT_VIEW_COLLECTION="View Collection";static EVENT_BUY_NOW_CLICKED="Buy Now Clicked";static EVENT_CHECKOUT_STARTED="Checkout Started";static EVENT_REVIEW_CLICKED="Review Clicked";static EVENT_ITEM_THUMBNAIL_CLICKED="Item Thumbnail Clicked";static JS_LOAD_WHITELIST_EVENTS=[this.EVENT_VIEW_ITEM,this.EVENT_VIEW_CART,this.EVENT_VIEW_COLLECTION];static HASH_INITIATE_CHECKOUT="initiate-checkout";static HASH_OPEN_CART_DRAWER="open-cart-drawer";static ADD_BUNDLE_CTA_INBOUND_EVENT="letscooee:inbound:cta:add-bundle";static CTA_OPEN_CART_EVENT="letscooee:outbound:open-cart";static CTA_AFTER_REFRESH_UI="letscooee:outbound:refresh-ui";static POPUP_ACTIVITY_EVENT="letscooee:outbound:popup-activities";static THIRD_PARTY_CHECKOUT_EVENT="letscooee:outbound:third-party-initiate-checkout";static CAMPAIGN_DISPLAYED_ACTIVITY="DISPLAYED";static CAMPAIGN_CLICKED_ACTIVITY="CLICKED";static CAMPAIGN_CLOSED_ACTIVITY="CLOSED";static BLACKLISTED_PAGE_NAMES=["collection","product","cart"];static API_CALL_MAX_ATTEMPTS=3;static API_CALL_RETRY_DELAY=1e3;static PLACEHOLDER_IMAGE="https://cdn.global.letscooee.com/images/placeholders/product.png";static CART_UPDATE_BROADCAST="CART_UPDATE";static GRAPHQL_VERSION="2024-10";static GRAPHQL_API_PATH=`/api/${this.GRAPHQL_VERSION}/graphql.json`;static SHADOW_SPLITTER=":shadow";static CAMPAIGN_ATTRIBUTE="_letscooee_campaign";static CONTENT_ATTRIBUTE="_letscooee_content";static VIA="_via";static PAYMENT_MODAL_DETAILS=[{identifier:"#flo-checkout-wrapper",gateway:"Shopflow"},{identifier:"#fastrr-main-container",gateway:"Shiprocket"},{identifier:"#gokwik-modal-wrapper",gateway:"Gokwik"},{identifier:"#zecpe",gateway:"Ecom 360"}];static{let t=xc.SDK_VERSION.split(".").map(r=>r.padStart(2,"0")).join("");xc.SDK_VERSION_CODE=parseInt(t,10)}},Rt={apiURL:"https://api.sdk.letscooee.com",debug:!1,mode:"production",styleURL:`https://cdn.jsdelivr.net/npm/@letscooee/web-sdk@${N.SDK_VERSION}/dist/widget.min.css`,widgetURL:`https://cdn.jsdelivr.net/npm/@letscooee/web-sdk@${N.SDK_VERSION}/dist/widget.min.js`},Pt=Se(on()),w=class{static log(...e){Pt.default.info(...e)}static debug(...e){Pt.default.debug(...e)}static error(...e){Pt.default.error(...e)}static warn(...e){Pt.default.warn(...e)}static info(...e){Pt.default.info(...e)}static trace(...e){Pt.default.trace(...e)}static configure(e=N.LOG_PREFIX){Pt.default.useDefaults({formatter:function(r){r.unshift(`${e} (v${N.SDK_VERSION}):`)}});let t=this.getDebugParam();(t==="1"||t==="on")&&(localStorage.cooeeLogLevel="TRACE"),localStorage.cooeeLogLevel?Pt.default.setLevel(Pt.default[localStorage.cooeeLogLevel]):Pt.default.setLevel(Rt.debug?Pt.default.TRACE:Pt.default.OFF)}static getDebugParam(){return new URL(location.href).searchParams?.get("cooee-debug")}static logBrand(){let e=`
|
|
2
2
|
display: inline-block;
|
|
3
3
|
font-size: 14px;
|
|
4
4
|
background: linear-gradient(90deg, #d52dc8 25%, #2179e2 82%);
|
|
@@ -13,29 +13,29 @@
|
|
|
13
13
|
`,t+=`
|
|
14
14
|
|
|
15
15
|
`,t+=`Learn more: https://www.letscooee.com
|
|
16
|
-
Cooee SDK: v${N.SDK_VERSION}`,console.group("%c Elevate your ecommerce experience with Cooee \u{1F680} ",e),console.log(`%c${t}`,"font-size: 13px; line-height: 1.8;"),console.groupEnd()}},Sh=Se(Oc()),Pe=class{gaEnabled;gaMeasurementID;pixelPush;website;currencyCount;money;storefrontToken;skipItemAttribute;currency;static get(){return window.CooeeSDK.config}update(e){return e??={},this.gaEnabled=e.gaEnabled,this.gaMeasurementID=e.gaMeasurementID,this.pixelPush=e.pixelPush,this.website=e.website??{},this.currencyCount=e.currencyCount??0,this.money=e.money,this.currency=e.currency,this.storefrontToken=e.storefrontToken,this.skipItemAttribute=e.skipItemAttribute,this}},Tt=Se(Rr()),Xr=Se(Jo()),Cu=Se(Lc()),rs,_e,Xp,kc,sn,Yp,Jp,Bc,Qp,Fc,Uc,Mc,hg,Xi={},Zp=[],gg=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,Hc=Array.isArray;function Vr(e,t){for(var r in t)e[r]=t[r];return e}function $c(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function jc(e,t,r){var n,i,s,o={};for(s in t)s=="key"?n=t[s]:s=="ref"?i=t[s]:o[s]=t[s];if(arguments.length>2&&(o.children=arguments.length>3?rs.call(arguments,2):r),typeof e=="function"&&e.defaultProps!=null)for(s in e.defaultProps)o[s]===void 0&&(o[s]=e.defaultProps[s]);return es(e,o,n,i,null)}function es(e,t,r,n,i){var s={type:e,props:t,key:r,ref:n,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++Xp,__i:-1,__u:0};return i==null&&_e.vnode!=null&&_e.vnode(s),s}function fr(e){return e.children}function pr(e,t){this.props=e,this.context=t}function Yn(e,t){if(t==null)return e.__?Yn(e.__,e.__i+1):null;for(var r;t<e.__k.length;t++)if((r=e.__k[t])!=null&&r.__e!=null)return r.__e;return typeof e.type=="function"?Yn(e):null}function ef(e){var t,r;if((e=e.__)!=null&&e.__c!=null){for(e.__e=e.__c.base=null,t=0;t<e.__k.length;t++)if((r=e.__k[t])!=null&&r.__e!=null){e.__e=e.__c.base=r.__e;break}return ef(e)}}function zp(e){(!e.__d&&(e.__d=!0)&&sn.push(e)&&!ts.__r++||Yp!==_e.debounceRendering)&&((Yp=_e.debounceRendering)||Jp)(ts)}function ts(){var e,t,r,n,i,s,o,c;for(sn.sort(Bc);e=sn.shift();)e.__d&&(t=sn.length,n=void 0,s=(i=(r=e).__v).__e,o=[],c=[],r.__P&&((n=Vr({},i)).__v=i.__v+1,_e.vnode&&_e.vnode(n),Vc(r.__P,n,i,r.__n,r.__P.namespaceURI,32&i.__u?[s]:null,o,s??Yn(i),!!(32&i.__u),c),n.__v=i.__v,n.__.__k[n.__i]=n,nf(o,n,c),n.__e!=s&&ef(n)),sn.length>t&&sn.sort(Bc));ts.__r=0}function tf(e,t,r,n,i,s,o,c,u,d,m){var h,y,E,v,_,D,P=n&&n.__k||Zp,M=t.length;for(u=yg(r,t,P,u,M),h=0;h<M;h++)(E=r.__k[h])!=null&&(y=E.__i===-1?Xi:P[E.__i]||Xi,E.__i=h,D=Vc(e,E,y,i,s,o,c,u,d,m),v=E.__e,E.ref&&y.ref!=E.ref&&(y.ref&&Wc(y.ref,null,E),m.push(E.ref,E.__c||v,E)),_==null&&v!=null&&(_=v),4&E.__u||y.__k===E.__k?u=rf(E,u,e):typeof E.type=="function"&&D!==void 0?u=D:v&&(u=v.nextSibling),E.__u&=-7);return r.__e=_,u}function yg(e,t,r,n,i){var s,o,c,u,d,m=r.length,h=m,y=0;for(e.__k=new Array(i),s=0;s<i;s++)(o=t[s])!=null&&typeof o!="boolean"&&typeof o!="function"?(u=s+y,(o=e.__k[s]=typeof o=="string"||typeof o=="number"||typeof o=="bigint"||o.constructor==String?es(null,o,null,null,null):Hc(o)?es(fr,{children:o},null,null,null):o.constructor===void 0&&o.__b>0?es(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):o).__=e,o.__b=e.__b+1,c=null,(d=o.__i=vg(o,r,u,h))!==-1&&(h--,(c=r[d])&&(c.__u|=2)),c==null||c.__v===null?(d==-1&&y--,typeof o.type!="function"&&(o.__u|=4)):d!=u&&(d==u-1?y--:d==u+1?y++:(d>u?y--:y++,o.__u|=4))):e.__k[s]=null;if(h)for(s=0;s<m;s++)(c=r[s])!=null&&(2&c.__u)==0&&(c.__e==n&&(n=Yn(c)),of(c,c));return n}function rf(e,t,r){var n,i;if(typeof e.type=="function"){for(n=e.__k,i=0;n&&i<n.length;i++)n[i]&&(n[i].__=e,t=rf(n[i],t,r));return t}e.__e!=t&&(t&&e.type&&!r.contains(t)&&(t=Yn(e)),r.insertBefore(e.__e,t||null),t=e.__e);do t=t&&t.nextSibling;while(t!=null&&t.nodeType==8);return t}function vg(e,t,r,n){var i,s,o=e.key,c=e.type,u=t[r];if(u===null||u&&o==u.key&&c===u.type&&(2&u.__u)==0)return r;if(n>(u!=null&&(2&u.__u)==0?1:0))for(i=r-1,s=r+1;i>=0||s<t.length;){if(i>=0){if((u=t[i])&&(2&u.__u)==0&&o==u.key&&c===u.type)return i;i--}if(s<t.length){if((u=t[s])&&(2&u.__u)==0&&o==u.key&&c===u.type)return s;s++}}return-1}function qp(e,t,r){t[0]=="-"?e.setProperty(t,r??""):e[t]=r==null?"":typeof r!="number"||gg.test(t)?r:r+"px"}function Zo(e,t,r,n,i){var s;e:if(t=="style")if(typeof r=="string")e.style.cssText=r;else{if(typeof n=="string"&&(e.style.cssText=n=""),n)for(t in n)r&&t in r||qp(e.style,t,"");if(r)for(t in r)n&&r[t]===n[t]||qp(e.style,t,r[t])}else if(t[0]=="o"&&t[1]=="n")s=t!=(t=t.replace(Qp,"$1")),t=t.toLowerCase()in e||t=="onFocusOut"||t=="onFocusIn"?t.toLowerCase().slice(2):t.slice(2),e.l||(e.l={}),e.l[t+s]=r,r?n?r.u=n.u:(r.u=Fc,e.addEventListener(t,s?Mc:Uc,s)):e.removeEventListener(t,s?Mc:Uc,s);else{if(i=="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 e)try{e[t]=r??"";break e}catch{}typeof r=="function"||(r==null||r===!1&&t[4]!="-"?e.removeAttribute(t):e.setAttribute(t,t=="popover"&&r==1?"":r))}}function Kp(e){return function(t){if(this.l){var r=this.l[t.type+e];if(t.t==null)t.t=Fc++;else if(t.t<r.u)return;return r(_e.event?_e.event(t):t)}}}function Vc(e,t,r,n,i,s,o,c,u,d){var m,h,y,E,v,_,D,P,M,L,R,q,he,ke,B,Z,z,J=t.type;if(t.constructor!==void 0)return null;128&r.__u&&(u=!!(32&r.__u),s=[c=t.__e=r.__e]),(m=_e.__b)&&m(t);e:if(typeof J=="function")try{if(P=t.props,M="prototype"in J&&J.prototype.render,L=(m=J.contextType)&&n[m.__c],R=m?L?L.props.value:m.__:n,r.__c?D=(h=t.__c=r.__c).__=h.__E:(M?t.__c=h=new J(P,R):(t.__c=h=new pr(P,R),h.constructor=J,h.render=_g),L&&L.sub(h),h.props=P,h.state||(h.state={}),h.context=R,h.__n=n,y=h.__d=!0,h.__h=[],h._sb=[]),M&&h.__s==null&&(h.__s=h.state),M&&J.getDerivedStateFromProps!=null&&(h.__s==h.state&&(h.__s=Vr({},h.__s)),Vr(h.__s,J.getDerivedStateFromProps(P,h.__s))),E=h.props,v=h.state,h.__v=t,y)M&&J.getDerivedStateFromProps==null&&h.componentWillMount!=null&&h.componentWillMount(),M&&h.componentDidMount!=null&&h.__h.push(h.componentDidMount);else{if(M&&J.getDerivedStateFromProps==null&&P!==E&&h.componentWillReceiveProps!=null&&h.componentWillReceiveProps(P,R),!h.__e&&(h.shouldComponentUpdate!=null&&h.shouldComponentUpdate(P,h.__s,R)===!1||t.__v==r.__v)){for(t.__v!=r.__v&&(h.props=P,h.state=h.__s,h.__d=!1),t.__e=r.__e,t.__k=r.__k,t.__k.some(function(ge){ge&&(ge.__=t)}),q=0;q<h._sb.length;q++)h.__h.push(h._sb[q]);h._sb=[],h.__h.length&&o.push(h);break e}h.componentWillUpdate!=null&&h.componentWillUpdate(P,h.__s,R),M&&h.componentDidUpdate!=null&&h.__h.push(function(){h.componentDidUpdate(E,v,_)})}if(h.context=R,h.props=P,h.__P=e,h.__e=!1,he=_e.__r,ke=0,M){for(h.state=h.__s,h.__d=!1,he&&he(t),m=h.render(h.props,h.state,h.context),B=0;B<h._sb.length;B++)h.__h.push(h._sb[B]);h._sb=[]}else do h.__d=!1,he&&he(t),m=h.render(h.props,h.state,h.context),h.state=h.__s;while(h.__d&&++ke<25);h.state=h.__s,h.getChildContext!=null&&(n=Vr(Vr({},n),h.getChildContext())),M&&!y&&h.getSnapshotBeforeUpdate!=null&&(_=h.getSnapshotBeforeUpdate(E,v)),c=tf(e,Hc(Z=m!=null&&m.type===fr&&m.key==null?m.props.children:m)?Z:[Z],t,r,n,i,s,o,c,u,d),h.base=t.__e,t.__u&=-161,h.__h.length&&o.push(h),D&&(h.__E=h.__=null)}catch(ge){if(t.__v=null,u||s!=null)if(ge.then){for(t.__u|=u?160:128;c&&c.nodeType==8&&c.nextSibling;)c=c.nextSibling;s[s.indexOf(c)]=null,t.__e=c}else for(z=s.length;z--;)$c(s[z]);else t.__e=r.__e,t.__k=r.__k;_e.__e(ge,t,r)}else s==null&&t.__v==r.__v?(t.__k=r.__k,t.__e=r.__e):c=t.__e=Eg(r.__e,t,r,n,i,s,o,u,d);return(m=_e.diffed)&&m(t),128&t.__u?void 0:c}function nf(e,t,r){for(var n=0;n<r.length;n++)Wc(r[n],r[++n],r[++n]);_e.__c&&_e.__c(t,e),e.some(function(i){try{e=i.__h,i.__h=[],e.some(function(s){s.call(i)})}catch(s){_e.__e(s,i.__v)}})}function Eg(e,t,r,n,i,s,o,c,u){var d,m,h,y,E,v,_,D=r.props,P=t.props,M=t.type;if(M=="svg"?i="http://www.w3.org/2000/svg":M=="math"?i="http://www.w3.org/1998/Math/MathML":i||(i="http://www.w3.org/1999/xhtml"),s!=null){for(d=0;d<s.length;d++)if((E=s[d])&&"setAttribute"in E==!!M&&(M?E.localName==M:E.nodeType==3)){e=E,s[d]=null;break}}if(e==null){if(M==null)return document.createTextNode(P);e=document.createElementNS(i,M,P.is&&P),c&&(_e.__m&&_e.__m(t,s),c=!1),s=null}if(M===null)D===P||c&&e.data===P||(e.data=P);else{if(s=s&&rs.call(e.childNodes),D=r.props||Xi,!c&&s!=null)for(D={},d=0;d<e.attributes.length;d++)D[(E=e.attributes[d]).name]=E.value;for(d in D)if(E=D[d],d!="children"){if(d=="dangerouslySetInnerHTML")h=E;else if(!(d in P)){if(d=="value"&&"defaultValue"in P||d=="checked"&&"defaultChecked"in P)continue;Zo(e,d,null,E,i)}}for(d in P)E=P[d],d=="children"?y=E:d=="dangerouslySetInnerHTML"?m=E:d=="value"?v=E:d=="checked"?_=E:c&&typeof E!="function"||D[d]===E||Zo(e,d,E,D[d],i);if(m)c||h&&(m.__html===h.__html||m.__html===e.innerHTML)||(e.innerHTML=m.__html),t.__k=[];else if(h&&(e.innerHTML=""),tf(e,Hc(y)?y:[y],t,r,n,M=="foreignObject"?"http://www.w3.org/1999/xhtml":i,s,o,s?s[0]:r.__k&&Yn(r,0),c,u),s!=null)for(d=s.length;d--;)$c(s[d]);c||(d="value",M=="progress"&&v==null?e.removeAttribute("value"):v!==void 0&&(v!==e[d]||M=="progress"&&!v||M=="option"&&v!==D[d])&&Zo(e,d,v,D[d],i),d="checked",_!==void 0&&_!==e[d]&&Zo(e,d,_,D[d],i))}return e}function Wc(e,t,r){try{if(typeof e=="function"){var n=typeof e.__u=="function";n&&e.__u(),n&&t==null||(e.__u=e(t))}else e.current=t}catch(i){_e.__e(i,r)}}function of(e,t,r){var n,i;if(_e.unmount&&_e.unmount(e),(n=e.ref)&&(n.current&&n.current!==e.__e||Wc(n,null,t)),(n=e.__c)!=null){if(n.componentWillUnmount)try{n.componentWillUnmount()}catch(s){_e.__e(s,t)}n.base=n.__P=null}if(n=e.__k)for(i=0;i<n.length;i++)n[i]&&of(n[i],t,r||typeof e.type!="function");r||$c(e.__e),e.__c=e.__=e.__e=void 0}function _g(e,t,r){return this.constructor(e,r)}function sf(e,t,r){var n,i,s,o;t==document&&(t=document.documentElement),_e.__&&_e.__(e,t),i=(n=typeof r=="function")?null:r&&r.__k||t.__k,s=[],o=[],Vc(t,e=(!n&&r||t).__k=jc(fr,null,[e]),i||Xi,Xi,t.namespaceURI,!n&&r?[r]:i?null:t.firstChild?rs.call(t.childNodes):null,s,!n&&r?r:i?i.__e:t.firstChild,n,o),nf(s,e,o)}rs=Zp.slice,_e={__e:function(e,t,r,n){for(var i,s,o;t=t.__;)if((i=t.__c)&&!i.__)try{if((s=i.constructor)&&s.getDerivedStateFromError!=null&&(i.setState(s.getDerivedStateFromError(e)),o=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(e,n||{}),o=i.__d),o)return i.__E=i}catch(c){e=c}throw e}},Xp=0,kc=function(e){return e!=null&&e.constructor==null},pr.prototype.setState=function(e,t){var r;r=this.__s!=null&&this.__s!==this.state?this.__s:this.__s=Vr({},this.state),typeof e=="function"&&(e=e(Vr({},r),this.props)),e&&Vr(r,e),e!=null&&this.__v&&(t&&this._sb.push(t),zp(this))},pr.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),zp(this))},pr.prototype.render=fr,sn=[],Jp=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Bc=function(e,t){return e.__v.__b-t.__v.__b},ts.__r=0,Qp=/(PointerCapture)$|Capture$/i,Fc=0,Uc=Kp(!1),Mc=Kp(!0),hg=0;var Yc,Lt,Gc,af,cf=0,gf=[],Je=_e,lf=Je.__b,uf=Je.__r,pf=Je.diffed,ff=Je.__c,mf=Je.unmount,df=Je.__;function Sg(e,t){Je.__h&&Je.__h(Lt,e,cf||t),cf=0;var r=Lt.__H||(Lt.__H={__:[],__h:[]});return e>=r.__.length&&r.__.push({}),r.__[e]}function qc(e,t){var r=Sg(Yc++,7);return Ig(r.__H,t)&&(r.__=e(),r.__H=t,r.__h=e),r.__}function wg(){for(var e;e=gf.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(ns),e.__H.__h.forEach(zc),e.__H.__h=[]}catch(t){e.__H.__h=[],Je.__e(t,e.__v)}}Je.__b=function(e){Lt=null,lf&&lf(e)},Je.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),df&&df(e,t)},Je.__r=function(e){uf&&uf(e),Yc=0;var t=(Lt=e.__c).__H;t&&(Gc===Lt?(t.__h=[],Lt.__h=[],t.__.forEach(function(r){r.__N&&(r.__=r.__N),r.i=r.__N=void 0})):(t.__h.forEach(ns),t.__h.forEach(zc),t.__h=[],Yc=0)),Gc=Lt},Je.diffed=function(e){pf&&pf(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(gf.push(t)!==1&&af===Je.requestAnimationFrame||((af=Je.requestAnimationFrame)||bg)(wg)),t.__H.__.forEach(function(r){r.i&&(r.__H=r.i),r.i=void 0})),Gc=Lt=null},Je.__c=function(e,t){t.some(function(r){try{r.__h.forEach(ns),r.__h=r.__h.filter(function(n){return!n.__||zc(n)})}catch(n){t.some(function(i){i.__h&&(i.__h=[])}),t=[],Je.__e(n,r.__v)}}),ff&&ff(e,t)},Je.unmount=function(e){mf&&mf(e);var t,r=e.__c;r&&r.__H&&(r.__H.__.forEach(function(n){try{ns(n)}catch(i){t=i}}),r.__H=void 0,t&&Je.__e(t,r.__v))};var hf=typeof requestAnimationFrame=="function";function bg(e){var t,r=function(){clearTimeout(n),hf&&cancelAnimationFrame(t),setTimeout(e)},n=setTimeout(r,100);hf&&(t=requestAnimationFrame(r))}function ns(e){var t=Lt,r=e.__c;typeof r=="function"&&(e.__c=void 0,r()),Lt=t}function zc(e){var t=Lt;e.__c=e.__(),Lt=t}function Ig(e,t){return!e||e.length!==t.length||t.some(function(r,n){return r!==e[n]})}var Tg=Symbol.for("preact-signals");function Xc(){if(zn>1)zn--;else{for(var e,t=!1;Ji!==void 0;){var r=Ji;for(Ji=void 0,Kc++;r!==void 0;){var n=r.o;if(r.o=void 0,r.f&=-3,!(8&r.f)&&vf(r))try{r.c()}catch(i){t||(e=i,t=!0)}r=n}}if(Kc=0,zn--,t)throw e}}var Oe=void 0,Ji=void 0,zn=0,Kc=0,is=0;function yf(e){if(Oe!==void 0){var t=e.n;if(t===void 0||t.t!==Oe)return t={i:0,S:e,p:Oe.s,n:void 0,t:Oe,e:void 0,x:void 0,r:t},Oe.s!==void 0&&(Oe.s.n=t),Oe.s=t,e.n=t,32&Oe.f&&e.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=Oe.s,t.n=void 0,Oe.s.n=t,Oe.s=t),t}}function Qe(e){this.v=e,this.i=0,this.n=void 0,this.t=void 0}Qe.prototype.brand=Tg;Qe.prototype.h=function(){return!0};Qe.prototype.S=function(e){this.t!==e&&e.e===void 0&&(e.x=this.t,this.t!==void 0&&(this.t.e=e),this.t=e)};Qe.prototype.U=function(e){if(this.t!==void 0){var t=e.e,r=e.x;t!==void 0&&(t.x=r,e.e=void 0),r!==void 0&&(r.e=t,e.x=void 0),e===this.t&&(this.t=r)}};Qe.prototype.subscribe=function(e){var t=this;return ct(function(){var r=t.value,n=Oe;Oe=void 0;try{e(r)}finally{Oe=n}})};Qe.prototype.valueOf=function(){return this.value};Qe.prototype.toString=function(){return this.value+""};Qe.prototype.toJSON=function(){return this.value};Qe.prototype.peek=function(){var e=Oe;Oe=void 0;try{return this.value}finally{Oe=e}};Object.defineProperty(Qe.prototype,"value",{get:function(){var e=yf(this);return e!==void 0&&(e.i=this.i),this.v},set:function(e){if(e!==this.v){if(Kc>100)throw new Error("Cycle detected");this.v=e,this.i++,is++,zn++;try{for(var t=this.t;t!==void 0;t=t.x)t.t.N()}finally{Xc()}}}});function jt(e){return new Qe(e)}function vf(e){for(var t=e.s;t!==void 0;t=t.n)if(t.S.i!==t.i||!t.S.h()||t.S.i!==t.i)return!0;return!1}function Ef(e){for(var t=e.s;t!==void 0;t=t.n){var r=t.S.n;if(r!==void 0&&(t.r=r),t.S.n=t,t.i=-1,t.n===void 0){e.s=t;break}}}function _f(e){for(var t=e.s,r=void 0;t!==void 0;){var n=t.p;t.i===-1?(t.S.U(t),n!==void 0&&(n.n=t.n),t.n!==void 0&&(t.n.p=n)):r=t,t.S.n=t.r,t.r!==void 0&&(t.r=void 0),t=n}e.s=r}function qn(e){Qe.call(this,void 0),this.x=e,this.s=void 0,this.g=is-1,this.f=4}(qn.prototype=new Qe).h=function(){if(this.f&=-3,1&this.f)return!1;if((36&this.f)==32||(this.f&=-5,this.g===is))return!0;if(this.g=is,this.f|=1,this.i>0&&!vf(this))return this.f&=-2,!0;var e=Oe;try{Ef(this),Oe=this;var t=this.x();(16&this.f||this.v!==t||this.i===0)&&(this.v=t,this.f&=-17,this.i++)}catch(r){this.v=r,this.f|=16,this.i++}return Oe=e,_f(this),this.f&=-2,!0};qn.prototype.S=function(e){if(this.t===void 0){this.f|=36;for(var t=this.s;t!==void 0;t=t.n)t.S.S(t)}Qe.prototype.S.call(this,e)};qn.prototype.U=function(e){if(this.t!==void 0&&(Qe.prototype.U.call(this,e),this.t===void 0)){this.f&=-33;for(var t=this.s;t!==void 0;t=t.n)t.S.U(t)}};qn.prototype.N=function(){if(!(2&this.f)){this.f|=6;for(var e=this.t;e!==void 0;e=e.x)e.t.N()}};Object.defineProperty(qn.prototype,"value",{get:function(){if(1&this.f)throw new Error("Cycle detected");var e=yf(this);if(this.h(),e!==void 0&&(e.i=this.i),16&this.f)throw this.v;return this.v}});function Jc(e){return new qn(e)}function Sf(e){var t=e.u;if(e.u=void 0,typeof t=="function"){zn++;var r=Oe;Oe=void 0;try{t()}catch(n){throw e.f&=-2,e.f|=8,Qc(e),n}finally{Oe=r,Xc()}}}function Qc(e){for(var t=e.s;t!==void 0;t=t.n)t.S.U(t);e.x=void 0,e.s=void 0,Sf(e)}function Cg(e){if(Oe!==this)throw new Error("Out-of-order effect");_f(this),Oe=e,this.f&=-2,8&this.f&&Qc(this),Xc()}function Qi(e){this.x=e,this.u=void 0,this.s=void 0,this.o=void 0,this.f=32}Qi.prototype.c=function(){var e=this.S();try{if(8&this.f||this.x===void 0)return;var t=this.x();typeof t=="function"&&(this.u=t)}finally{e()}};Qi.prototype.S=function(){if(1&this.f)throw new Error("Cycle detected");this.f|=1,this.f&=-9,Sf(this),Ef(this),zn++;var e=Oe;return Oe=this,Cg.bind(this,e)};Qi.prototype.N=function(){2&this.f||(this.f|=2,this.o=Ji,Ji=this)};Qi.prototype.d=function(){this.f|=8,1&this.f||Qc(this)};function ct(e){var t=new Qi(e);try{t.c()}catch(r){throw t.d(),r}return t.d.bind(t)}var el,Zc;function Kn(e,t){_e[e]=t.bind(null,_e[e]||function(){})}function os(e){Zc&&Zc(),Zc=e&&e.S()}function wf(e){var t=this,r=e.data,n=Dg(r);n.value=r;var i=qc(function(){for(var s=t.__v;s=s.__;)if(s.__c){s.__c.__$f|=4;break}return t.__$u.c=function(){var o,c=t.__$u.S(),u=i.value;c(),kc(u)||((o=t.base)==null?void 0:o.nodeType)!==3?(t.__$f|=1,t.setState({})):t.base.data=u},Jc(function(){var o=n.value.value;return o===0?0:o===!0?"":o||""})},[]);return i.value}wf.displayName="_st";Object.defineProperties(Qe.prototype,{constructor:{configurable:!0,value:void 0},type:{configurable:!0,value:wf},props:{configurable:!0,get:function(){return{data:this}}},__b:{configurable:!0,value:1}});Kn("__b",function(e,t){if(typeof t.type=="string"){var r,n=t.props;for(var i in n)if(i!=="children"){var s=n[i];s instanceof Qe&&(r||(t.__np=r={}),r[i]=s,n[i]=s.peek())}}e(t)});Kn("__r",function(e,t){os();var r,n=t.__c;n&&(n.__$f&=-2,(r=n.__$u)===void 0&&(n.__$u=r=function(i){var s;return ct(function(){s=this}),s.c=function(){n.__$f|=1,n.setState({})},s}())),el=n,os(r),e(t)});Kn("__e",function(e,t,r,n){os(),el=void 0,e(t,r,n)});Kn("diffed",function(e,t){os(),el=void 0;var r;if(typeof t.type=="string"&&(r=t.__e)){var n=t.__np,i=t.props;if(n){var s=r.U;if(s)for(var o in s){var c=s[o];c!==void 0&&!(o in n)&&(c.d(),s[o]=void 0)}else r.U=s={};for(var u in n){var d=s[u],m=n[u];d===void 0?(d=xg(r,u,m,i),s[u]=d):d.o(m,i)}}}e(t)});function xg(e,t,r,n){var i=t in e&&e.ownerSVGElement===void 0,s=jt(r);return{o:function(o,c){s.value=o,n=c},d:ct(function(){var o=s.value.value;n[t]!==o&&(n[t]=o,i?e[t]=o:o?e.setAttribute(t,o):e.removeAttribute(t))})}}Kn("unmount",function(e,t){if(typeof t.type=="string"){var r=t.__e;if(r){var n=r.U;if(n){r.U=void 0;for(var i in n){var s=n[i];s&&s.d()}}}}else{var o=t.__c;if(o){var c=o.__$u;c&&(o.__$u=void 0,c.d())}}e(t)});Kn("__h",function(e,t,r,n){(n<3||n===9)&&(t.__$f|=2),e(t,r,n)});pr.prototype.shouldComponentUpdate=function(e,t){var r=this.__$u,n=r&&r.s!==void 0;for(var i in t)return!0;if(this.__f||typeof this.u=="boolean"&&this.u===!0){if(!(n||2&this.__$f||4&this.__$f)||1&this.__$f)return!0}else if(!(n||4&this.__$f)||3&this.__$f)return!0;for(var s in e)if(s!=="__source"&&e[s]!==this.props[s])return!0;for(var o in this.props)if(!(o in e))return!0;return!1};function Dg(e){return qc(function(){return jt(e)},[])}var Rg=Object.prototype.toString,Jn=Array.isArray||function(e){return Rg.call(e)==="[object Array]"};function rl(e){return typeof e=="function"}function Ag(e){return Jn(e)?"array":typeof e}function tl(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function bf(e,t){return e!=null&&typeof e=="object"&&t in e}function Ng(e,t){return e!=null&&typeof e!="object"&&e.hasOwnProperty&&e.hasOwnProperty(t)}var Og=RegExp.prototype.test;function Pg(e,t){return Og.call(e,t)}var Lg=/\S/;function Bg(e){return!Pg(Lg,e)}var Ug={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};function Mg(e){return String(e).replace(/[&<>"'`=\/]/g,function(t){return Ug[t]})}var kg=/\s*/,Fg=/\s+/,If=/\s*=/,Hg=/\s*\}/,$g=/#|\^|\/|>|\{|&|=|!/;function jg(e,t){if(!e)return[];var r=!1,n=[],i=[],s=[],o=!1,c=!1,u="",d=0;function m(){if(o&&!c)for(;s.length;)delete i[s.pop()];else s=[];o=!1,c=!1}var h,y,E;function v(B){if(typeof B=="string"&&(B=B.split(Fg,2)),!Jn(B)||B.length!==2)throw new Error("Invalid tags: "+B);h=new RegExp(tl(B[0])+"\\s*"),y=new RegExp("\\s*"+tl(B[1])),E=new RegExp("\\s*"+tl("}"+B[1]))}v(t||Vt.tags);for(var _=new eo(e),D,P,M,L,R,q;!_.eos();){if(D=_.pos,M=_.scanUntil(h),M)for(var he=0,ke=M.length;he<ke;++he)L=M.charAt(he),Bg(L)?(s.push(i.length),u+=L):(c=!0,r=!0,u+=" "),i.push(["text",L,D,D+1]),D+=1,L===`
|
|
17
|
-
`&&(m(),u="",d=0,r=!1);if(!_.scan(h))break;if(o=!0,P=_.scan($g)||"name",_.scan(kg),P==="="?(M=_.scanUntil(If),_.scan(If),_.scanUntil(y)):P==="{"?(M=_.scanUntil(E),_.scan(Hg),_.scanUntil(y),P="&"):M=_.scanUntil(y),!_.scan(y))throw new Error("Unclosed tag at "+_.pos);if(P==">"?R=[P,M,D,_.pos,u,d,r]:R=[P,M,D,_.pos],d++,i.push(R),P==="#"||P==="^")n.push(R);else if(P==="/"){if(q=n.pop(),!q)throw new Error('Unopened section "'+M+'" at '+D);if(q[1]!==M)throw new Error('Unclosed section "'+q[1]+'" at '+D)}else P==="name"||P==="{"||P==="&"?c=!0:P==="="&&v(M)}if(m(),q=n.pop(),q)throw new Error('Unclosed section "'+q[1]+'" at '+_.pos);return Wg(Vg(i))}function Vg(e){for(var t=[],r,n,i=0,s=e.length;i<s;++i)r=e[i],r&&(r[0]==="text"&&n&&n[0]==="text"?(n[1]+=r[1],n[3]=r[3]):(t.push(r),n=r));return t}function Wg(e){for(var t=[],r=t,n=[],i,s,o=0,c=e.length;o<c;++o)switch(i=e[o],i[0]){case"#":case"^":r.push(i),n.push(i),r=i[4]=[];break;case"/":s=n.pop(),s[5]=i[2],r=n.length>0?n[n.length-1][4]:t;break;default:r.push(i)}return t}function eo(e){this.string=e,this.tail=e,this.pos=0}eo.prototype.eos=function(){return this.tail===""};eo.prototype.scan=function(e){var t=this.tail.match(e);if(!t||t.index!==0)return"";var r=t[0];return this.tail=this.tail.substring(r.length),this.pos+=r.length,r};eo.prototype.scanUntil=function(e){var t=this.tail.search(e),r;switch(t){case-1:r=this.tail,this.tail="";break;case 0:r="";break;default:r=this.tail.substring(0,t),this.tail=this.tail.substring(t)}return this.pos+=r.length,r};function Xn(e,t){this.view=e,this.cache={".":this.view},this.parent=t}Xn.prototype.push=function(e){return new Xn(e,this)};Xn.prototype.lookup=function(e){var t=this.cache,r;if(t.hasOwnProperty(e))r=t[e];else{for(var n=this,i,s,o,c=!1;n;){if(e.indexOf(".")>0)for(i=n.view,s=e.split("."),o=0;i!=null&&o<s.length;)o===s.length-1&&(c=
|
|
16
|
+
Cooee SDK: v${N.SDK_VERSION}`,console.group("%c Elevate your ecommerce experience with Cooee \u{1F680} ",e),console.log(`%c${t}`,"font-size: 13px; line-height: 1.8;"),console.groupEnd()}},Sh=Se(Oc()),Pe=class{gaEnabled;gaMeasurementID;pixelPush;website;currencyCount;money;storefrontToken;skipItemAttribute;currency;static get(){return window.CooeeSDK.config}update(e){return e??={},this.gaEnabled=e.gaEnabled,this.gaMeasurementID=e.gaMeasurementID,this.pixelPush=e.pixelPush,this.website=e.website??{},this.currencyCount=e.currencyCount??0,this.money=e.money,this.currency=e.currency,this.storefrontToken=e.storefrontToken,this.skipItemAttribute=e.skipItemAttribute,this}},Tt=Se(Rr()),Xr=Se(Jo()),Cu=Se(Lc()),rs,_e,Xp,kc,sn,Yp,Jp,Mc,Qp,Fc,Bc,Uc,hg,Xi={},Zp=[],gg=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,Hc=Array.isArray;function Vr(e,t){for(var r in t)e[r]=t[r];return e}function $c(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function jc(e,t,r){var n,i,s,o={};for(s in t)s=="key"?n=t[s]:s=="ref"?i=t[s]:o[s]=t[s];if(arguments.length>2&&(o.children=arguments.length>3?rs.call(arguments,2):r),typeof e=="function"&&e.defaultProps!=null)for(s in e.defaultProps)o[s]===void 0&&(o[s]=e.defaultProps[s]);return es(e,o,n,i,null)}function es(e,t,r,n,i){var s={type:e,props:t,key:r,ref:n,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++Xp,__i:-1,__u:0};return i==null&&_e.vnode!=null&&_e.vnode(s),s}function fr(e){return e.children}function pr(e,t){this.props=e,this.context=t}function Yn(e,t){if(t==null)return e.__?Yn(e.__,e.__i+1):null;for(var r;t<e.__k.length;t++)if((r=e.__k[t])!=null&&r.__e!=null)return r.__e;return typeof e.type=="function"?Yn(e):null}function ef(e){var t,r;if((e=e.__)!=null&&e.__c!=null){for(e.__e=e.__c.base=null,t=0;t<e.__k.length;t++)if((r=e.__k[t])!=null&&r.__e!=null){e.__e=e.__c.base=r.__e;break}return ef(e)}}function zp(e){(!e.__d&&(e.__d=!0)&&sn.push(e)&&!ts.__r++||Yp!==_e.debounceRendering)&&((Yp=_e.debounceRendering)||Jp)(ts)}function ts(){var e,t,r,n,i,s,o,c;for(sn.sort(Mc);e=sn.shift();)e.__d&&(t=sn.length,n=void 0,s=(i=(r=e).__v).__e,o=[],c=[],r.__P&&((n=Vr({},i)).__v=i.__v+1,_e.vnode&&_e.vnode(n),Vc(r.__P,n,i,r.__n,r.__P.namespaceURI,32&i.__u?[s]:null,o,s??Yn(i),!!(32&i.__u),c),n.__v=i.__v,n.__.__k[n.__i]=n,nf(o,n,c),n.__e!=s&&ef(n)),sn.length>t&&sn.sort(Mc));ts.__r=0}function tf(e,t,r,n,i,s,o,c,u,d,m){var h,y,E,v,_,D,P=n&&n.__k||Zp,M=t.length;for(u=yg(r,t,P,u,M),h=0;h<M;h++)(E=r.__k[h])!=null&&(y=E.__i===-1?Xi:P[E.__i]||Xi,E.__i=h,D=Vc(e,E,y,i,s,o,c,u,d,m),v=E.__e,E.ref&&y.ref!=E.ref&&(y.ref&&Wc(y.ref,null,E),m.push(E.ref,E.__c||v,E)),_==null&&v!=null&&(_=v),4&E.__u||y.__k===E.__k?u=rf(E,u,e):typeof E.type=="function"&&D!==void 0?u=D:v&&(u=v.nextSibling),E.__u&=-7);return r.__e=_,u}function yg(e,t,r,n,i){var s,o,c,u,d,m=r.length,h=m,y=0;for(e.__k=new Array(i),s=0;s<i;s++)(o=t[s])!=null&&typeof o!="boolean"&&typeof o!="function"?(u=s+y,(o=e.__k[s]=typeof o=="string"||typeof o=="number"||typeof o=="bigint"||o.constructor==String?es(null,o,null,null,null):Hc(o)?es(fr,{children:o},null,null,null):o.constructor===void 0&&o.__b>0?es(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):o).__=e,o.__b=e.__b+1,c=null,(d=o.__i=vg(o,r,u,h))!==-1&&(h--,(c=r[d])&&(c.__u|=2)),c==null||c.__v===null?(d==-1&&y--,typeof o.type!="function"&&(o.__u|=4)):d!=u&&(d==u-1?y--:d==u+1?y++:(d>u?y--:y++,o.__u|=4))):e.__k[s]=null;if(h)for(s=0;s<m;s++)(c=r[s])!=null&&(2&c.__u)==0&&(c.__e==n&&(n=Yn(c)),of(c,c));return n}function rf(e,t,r){var n,i;if(typeof e.type=="function"){for(n=e.__k,i=0;n&&i<n.length;i++)n[i]&&(n[i].__=e,t=rf(n[i],t,r));return t}e.__e!=t&&(t&&e.type&&!r.contains(t)&&(t=Yn(e)),r.insertBefore(e.__e,t||null),t=e.__e);do t=t&&t.nextSibling;while(t!=null&&t.nodeType==8);return t}function vg(e,t,r,n){var i,s,o=e.key,c=e.type,u=t[r];if(u===null||u&&o==u.key&&c===u.type&&(2&u.__u)==0)return r;if(n>(u!=null&&(2&u.__u)==0?1:0))for(i=r-1,s=r+1;i>=0||s<t.length;){if(i>=0){if((u=t[i])&&(2&u.__u)==0&&o==u.key&&c===u.type)return i;i--}if(s<t.length){if((u=t[s])&&(2&u.__u)==0&&o==u.key&&c===u.type)return s;s++}}return-1}function qp(e,t,r){t[0]=="-"?e.setProperty(t,r??""):e[t]=r==null?"":typeof r!="number"||gg.test(t)?r:r+"px"}function Zo(e,t,r,n,i){var s;e:if(t=="style")if(typeof r=="string")e.style.cssText=r;else{if(typeof n=="string"&&(e.style.cssText=n=""),n)for(t in n)r&&t in r||qp(e.style,t,"");if(r)for(t in r)n&&r[t]===n[t]||qp(e.style,t,r[t])}else if(t[0]=="o"&&t[1]=="n")s=t!=(t=t.replace(Qp,"$1")),t=t.toLowerCase()in e||t=="onFocusOut"||t=="onFocusIn"?t.toLowerCase().slice(2):t.slice(2),e.l||(e.l={}),e.l[t+s]=r,r?n?r.u=n.u:(r.u=Fc,e.addEventListener(t,s?Uc:Bc,s)):e.removeEventListener(t,s?Uc:Bc,s);else{if(i=="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 e)try{e[t]=r??"";break e}catch{}typeof r=="function"||(r==null||r===!1&&t[4]!="-"?e.removeAttribute(t):e.setAttribute(t,t=="popover"&&r==1?"":r))}}function Kp(e){return function(t){if(this.l){var r=this.l[t.type+e];if(t.t==null)t.t=Fc++;else if(t.t<r.u)return;return r(_e.event?_e.event(t):t)}}}function Vc(e,t,r,n,i,s,o,c,u,d){var m,h,y,E,v,_,D,P,M,L,R,q,he,ke,B,Z,z,J=t.type;if(t.constructor!==void 0)return null;128&r.__u&&(u=!!(32&r.__u),s=[c=t.__e=r.__e]),(m=_e.__b)&&m(t);e:if(typeof J=="function")try{if(P=t.props,M="prototype"in J&&J.prototype.render,L=(m=J.contextType)&&n[m.__c],R=m?L?L.props.value:m.__:n,r.__c?D=(h=t.__c=r.__c).__=h.__E:(M?t.__c=h=new J(P,R):(t.__c=h=new pr(P,R),h.constructor=J,h.render=_g),L&&L.sub(h),h.props=P,h.state||(h.state={}),h.context=R,h.__n=n,y=h.__d=!0,h.__h=[],h._sb=[]),M&&h.__s==null&&(h.__s=h.state),M&&J.getDerivedStateFromProps!=null&&(h.__s==h.state&&(h.__s=Vr({},h.__s)),Vr(h.__s,J.getDerivedStateFromProps(P,h.__s))),E=h.props,v=h.state,h.__v=t,y)M&&J.getDerivedStateFromProps==null&&h.componentWillMount!=null&&h.componentWillMount(),M&&h.componentDidMount!=null&&h.__h.push(h.componentDidMount);else{if(M&&J.getDerivedStateFromProps==null&&P!==E&&h.componentWillReceiveProps!=null&&h.componentWillReceiveProps(P,R),!h.__e&&(h.shouldComponentUpdate!=null&&h.shouldComponentUpdate(P,h.__s,R)===!1||t.__v==r.__v)){for(t.__v!=r.__v&&(h.props=P,h.state=h.__s,h.__d=!1),t.__e=r.__e,t.__k=r.__k,t.__k.some(function(ge){ge&&(ge.__=t)}),q=0;q<h._sb.length;q++)h.__h.push(h._sb[q]);h._sb=[],h.__h.length&&o.push(h);break e}h.componentWillUpdate!=null&&h.componentWillUpdate(P,h.__s,R),M&&h.componentDidUpdate!=null&&h.__h.push(function(){h.componentDidUpdate(E,v,_)})}if(h.context=R,h.props=P,h.__P=e,h.__e=!1,he=_e.__r,ke=0,M){for(h.state=h.__s,h.__d=!1,he&&he(t),m=h.render(h.props,h.state,h.context),B=0;B<h._sb.length;B++)h.__h.push(h._sb[B]);h._sb=[]}else do h.__d=!1,he&&he(t),m=h.render(h.props,h.state,h.context),h.state=h.__s;while(h.__d&&++ke<25);h.state=h.__s,h.getChildContext!=null&&(n=Vr(Vr({},n),h.getChildContext())),M&&!y&&h.getSnapshotBeforeUpdate!=null&&(_=h.getSnapshotBeforeUpdate(E,v)),c=tf(e,Hc(Z=m!=null&&m.type===fr&&m.key==null?m.props.children:m)?Z:[Z],t,r,n,i,s,o,c,u,d),h.base=t.__e,t.__u&=-161,h.__h.length&&o.push(h),D&&(h.__E=h.__=null)}catch(ge){if(t.__v=null,u||s!=null)if(ge.then){for(t.__u|=u?160:128;c&&c.nodeType==8&&c.nextSibling;)c=c.nextSibling;s[s.indexOf(c)]=null,t.__e=c}else for(z=s.length;z--;)$c(s[z]);else t.__e=r.__e,t.__k=r.__k;_e.__e(ge,t,r)}else s==null&&t.__v==r.__v?(t.__k=r.__k,t.__e=r.__e):c=t.__e=Eg(r.__e,t,r,n,i,s,o,u,d);return(m=_e.diffed)&&m(t),128&t.__u?void 0:c}function nf(e,t,r){for(var n=0;n<r.length;n++)Wc(r[n],r[++n],r[++n]);_e.__c&&_e.__c(t,e),e.some(function(i){try{e=i.__h,i.__h=[],e.some(function(s){s.call(i)})}catch(s){_e.__e(s,i.__v)}})}function Eg(e,t,r,n,i,s,o,c,u){var d,m,h,y,E,v,_,D=r.props,P=t.props,M=t.type;if(M=="svg"?i="http://www.w3.org/2000/svg":M=="math"?i="http://www.w3.org/1998/Math/MathML":i||(i="http://www.w3.org/1999/xhtml"),s!=null){for(d=0;d<s.length;d++)if((E=s[d])&&"setAttribute"in E==!!M&&(M?E.localName==M:E.nodeType==3)){e=E,s[d]=null;break}}if(e==null){if(M==null)return document.createTextNode(P);e=document.createElementNS(i,M,P.is&&P),c&&(_e.__m&&_e.__m(t,s),c=!1),s=null}if(M===null)D===P||c&&e.data===P||(e.data=P);else{if(s=s&&rs.call(e.childNodes),D=r.props||Xi,!c&&s!=null)for(D={},d=0;d<e.attributes.length;d++)D[(E=e.attributes[d]).name]=E.value;for(d in D)if(E=D[d],d!="children"){if(d=="dangerouslySetInnerHTML")h=E;else if(!(d in P)){if(d=="value"&&"defaultValue"in P||d=="checked"&&"defaultChecked"in P)continue;Zo(e,d,null,E,i)}}for(d in P)E=P[d],d=="children"?y=E:d=="dangerouslySetInnerHTML"?m=E:d=="value"?v=E:d=="checked"?_=E:c&&typeof E!="function"||D[d]===E||Zo(e,d,E,D[d],i);if(m)c||h&&(m.__html===h.__html||m.__html===e.innerHTML)||(e.innerHTML=m.__html),t.__k=[];else if(h&&(e.innerHTML=""),tf(e,Hc(y)?y:[y],t,r,n,M=="foreignObject"?"http://www.w3.org/1999/xhtml":i,s,o,s?s[0]:r.__k&&Yn(r,0),c,u),s!=null)for(d=s.length;d--;)$c(s[d]);c||(d="value",M=="progress"&&v==null?e.removeAttribute("value"):v!==void 0&&(v!==e[d]||M=="progress"&&!v||M=="option"&&v!==D[d])&&Zo(e,d,v,D[d],i),d="checked",_!==void 0&&_!==e[d]&&Zo(e,d,_,D[d],i))}return e}function Wc(e,t,r){try{if(typeof e=="function"){var n=typeof e.__u=="function";n&&e.__u(),n&&t==null||(e.__u=e(t))}else e.current=t}catch(i){_e.__e(i,r)}}function of(e,t,r){var n,i;if(_e.unmount&&_e.unmount(e),(n=e.ref)&&(n.current&&n.current!==e.__e||Wc(n,null,t)),(n=e.__c)!=null){if(n.componentWillUnmount)try{n.componentWillUnmount()}catch(s){_e.__e(s,t)}n.base=n.__P=null}if(n=e.__k)for(i=0;i<n.length;i++)n[i]&&of(n[i],t,r||typeof e.type!="function");r||$c(e.__e),e.__c=e.__=e.__e=void 0}function _g(e,t,r){return this.constructor(e,r)}function sf(e,t,r){var n,i,s,o;t==document&&(t=document.documentElement),_e.__&&_e.__(e,t),i=(n=typeof r=="function")?null:r&&r.__k||t.__k,s=[],o=[],Vc(t,e=(!n&&r||t).__k=jc(fr,null,[e]),i||Xi,Xi,t.namespaceURI,!n&&r?[r]:i?null:t.firstChild?rs.call(t.childNodes):null,s,!n&&r?r:i?i.__e:t.firstChild,n,o),nf(s,e,o)}rs=Zp.slice,_e={__e:function(e,t,r,n){for(var i,s,o;t=t.__;)if((i=t.__c)&&!i.__)try{if((s=i.constructor)&&s.getDerivedStateFromError!=null&&(i.setState(s.getDerivedStateFromError(e)),o=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(e,n||{}),o=i.__d),o)return i.__E=i}catch(c){e=c}throw e}},Xp=0,kc=function(e){return e!=null&&e.constructor==null},pr.prototype.setState=function(e,t){var r;r=this.__s!=null&&this.__s!==this.state?this.__s:this.__s=Vr({},this.state),typeof e=="function"&&(e=e(Vr({},r),this.props)),e&&Vr(r,e),e!=null&&this.__v&&(t&&this._sb.push(t),zp(this))},pr.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),zp(this))},pr.prototype.render=fr,sn=[],Jp=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Mc=function(e,t){return e.__v.__b-t.__v.__b},ts.__r=0,Qp=/(PointerCapture)$|Capture$/i,Fc=0,Bc=Kp(!1),Uc=Kp(!0),hg=0;var Yc,Lt,Gc,af,cf=0,gf=[],Je=_e,lf=Je.__b,uf=Je.__r,pf=Je.diffed,ff=Je.__c,mf=Je.unmount,df=Je.__;function Sg(e,t){Je.__h&&Je.__h(Lt,e,cf||t),cf=0;var r=Lt.__H||(Lt.__H={__:[],__h:[]});return e>=r.__.length&&r.__.push({}),r.__[e]}function qc(e,t){var r=Sg(Yc++,7);return Ig(r.__H,t)&&(r.__=e(),r.__H=t,r.__h=e),r.__}function bg(){for(var e;e=gf.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(ns),e.__H.__h.forEach(zc),e.__H.__h=[]}catch(t){e.__H.__h=[],Je.__e(t,e.__v)}}Je.__b=function(e){Lt=null,lf&&lf(e)},Je.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),df&&df(e,t)},Je.__r=function(e){uf&&uf(e),Yc=0;var t=(Lt=e.__c).__H;t&&(Gc===Lt?(t.__h=[],Lt.__h=[],t.__.forEach(function(r){r.__N&&(r.__=r.__N),r.i=r.__N=void 0})):(t.__h.forEach(ns),t.__h.forEach(zc),t.__h=[],Yc=0)),Gc=Lt},Je.diffed=function(e){pf&&pf(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(gf.push(t)!==1&&af===Je.requestAnimationFrame||((af=Je.requestAnimationFrame)||wg)(bg)),t.__H.__.forEach(function(r){r.i&&(r.__H=r.i),r.i=void 0})),Gc=Lt=null},Je.__c=function(e,t){t.some(function(r){try{r.__h.forEach(ns),r.__h=r.__h.filter(function(n){return!n.__||zc(n)})}catch(n){t.some(function(i){i.__h&&(i.__h=[])}),t=[],Je.__e(n,r.__v)}}),ff&&ff(e,t)},Je.unmount=function(e){mf&&mf(e);var t,r=e.__c;r&&r.__H&&(r.__H.__.forEach(function(n){try{ns(n)}catch(i){t=i}}),r.__H=void 0,t&&Je.__e(t,r.__v))};var hf=typeof requestAnimationFrame=="function";function wg(e){var t,r=function(){clearTimeout(n),hf&&cancelAnimationFrame(t),setTimeout(e)},n=setTimeout(r,100);hf&&(t=requestAnimationFrame(r))}function ns(e){var t=Lt,r=e.__c;typeof r=="function"&&(e.__c=void 0,r()),Lt=t}function zc(e){var t=Lt;e.__c=e.__(),Lt=t}function Ig(e,t){return!e||e.length!==t.length||t.some(function(r,n){return r!==e[n]})}var Tg=Symbol.for("preact-signals");function Xc(){if(zn>1)zn--;else{for(var e,t=!1;Ji!==void 0;){var r=Ji;for(Ji=void 0,Kc++;r!==void 0;){var n=r.o;if(r.o=void 0,r.f&=-3,!(8&r.f)&&vf(r))try{r.c()}catch(i){t||(e=i,t=!0)}r=n}}if(Kc=0,zn--,t)throw e}}var Oe=void 0,Ji=void 0,zn=0,Kc=0,is=0;function yf(e){if(Oe!==void 0){var t=e.n;if(t===void 0||t.t!==Oe)return t={i:0,S:e,p:Oe.s,n:void 0,t:Oe,e:void 0,x:void 0,r:t},Oe.s!==void 0&&(Oe.s.n=t),Oe.s=t,e.n=t,32&Oe.f&&e.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=Oe.s,t.n=void 0,Oe.s.n=t,Oe.s=t),t}}function Qe(e){this.v=e,this.i=0,this.n=void 0,this.t=void 0}Qe.prototype.brand=Tg;Qe.prototype.h=function(){return!0};Qe.prototype.S=function(e){this.t!==e&&e.e===void 0&&(e.x=this.t,this.t!==void 0&&(this.t.e=e),this.t=e)};Qe.prototype.U=function(e){if(this.t!==void 0){var t=e.e,r=e.x;t!==void 0&&(t.x=r,e.e=void 0),r!==void 0&&(r.e=t,e.x=void 0),e===this.t&&(this.t=r)}};Qe.prototype.subscribe=function(e){var t=this;return ct(function(){var r=t.value,n=Oe;Oe=void 0;try{e(r)}finally{Oe=n}})};Qe.prototype.valueOf=function(){return this.value};Qe.prototype.toString=function(){return this.value+""};Qe.prototype.toJSON=function(){return this.value};Qe.prototype.peek=function(){var e=Oe;Oe=void 0;try{return this.value}finally{Oe=e}};Object.defineProperty(Qe.prototype,"value",{get:function(){var e=yf(this);return e!==void 0&&(e.i=this.i),this.v},set:function(e){if(e!==this.v){if(Kc>100)throw new Error("Cycle detected");this.v=e,this.i++,is++,zn++;try{for(var t=this.t;t!==void 0;t=t.x)t.t.N()}finally{Xc()}}}});function jt(e){return new Qe(e)}function vf(e){for(var t=e.s;t!==void 0;t=t.n)if(t.S.i!==t.i||!t.S.h()||t.S.i!==t.i)return!0;return!1}function Ef(e){for(var t=e.s;t!==void 0;t=t.n){var r=t.S.n;if(r!==void 0&&(t.r=r),t.S.n=t,t.i=-1,t.n===void 0){e.s=t;break}}}function _f(e){for(var t=e.s,r=void 0;t!==void 0;){var n=t.p;t.i===-1?(t.S.U(t),n!==void 0&&(n.n=t.n),t.n!==void 0&&(t.n.p=n)):r=t,t.S.n=t.r,t.r!==void 0&&(t.r=void 0),t=n}e.s=r}function qn(e){Qe.call(this,void 0),this.x=e,this.s=void 0,this.g=is-1,this.f=4}(qn.prototype=new Qe).h=function(){if(this.f&=-3,1&this.f)return!1;if((36&this.f)==32||(this.f&=-5,this.g===is))return!0;if(this.g=is,this.f|=1,this.i>0&&!vf(this))return this.f&=-2,!0;var e=Oe;try{Ef(this),Oe=this;var t=this.x();(16&this.f||this.v!==t||this.i===0)&&(this.v=t,this.f&=-17,this.i++)}catch(r){this.v=r,this.f|=16,this.i++}return Oe=e,_f(this),this.f&=-2,!0};qn.prototype.S=function(e){if(this.t===void 0){this.f|=36;for(var t=this.s;t!==void 0;t=t.n)t.S.S(t)}Qe.prototype.S.call(this,e)};qn.prototype.U=function(e){if(this.t!==void 0&&(Qe.prototype.U.call(this,e),this.t===void 0)){this.f&=-33;for(var t=this.s;t!==void 0;t=t.n)t.S.U(t)}};qn.prototype.N=function(){if(!(2&this.f)){this.f|=6;for(var e=this.t;e!==void 0;e=e.x)e.t.N()}};Object.defineProperty(qn.prototype,"value",{get:function(){if(1&this.f)throw new Error("Cycle detected");var e=yf(this);if(this.h(),e!==void 0&&(e.i=this.i),16&this.f)throw this.v;return this.v}});function Jc(e){return new qn(e)}function Sf(e){var t=e.u;if(e.u=void 0,typeof t=="function"){zn++;var r=Oe;Oe=void 0;try{t()}catch(n){throw e.f&=-2,e.f|=8,Qc(e),n}finally{Oe=r,Xc()}}}function Qc(e){for(var t=e.s;t!==void 0;t=t.n)t.S.U(t);e.x=void 0,e.s=void 0,Sf(e)}function Cg(e){if(Oe!==this)throw new Error("Out-of-order effect");_f(this),Oe=e,this.f&=-2,8&this.f&&Qc(this),Xc()}function Qi(e){this.x=e,this.u=void 0,this.s=void 0,this.o=void 0,this.f=32}Qi.prototype.c=function(){var e=this.S();try{if(8&this.f||this.x===void 0)return;var t=this.x();typeof t=="function"&&(this.u=t)}finally{e()}};Qi.prototype.S=function(){if(1&this.f)throw new Error("Cycle detected");this.f|=1,this.f&=-9,Sf(this),Ef(this),zn++;var e=Oe;return Oe=this,Cg.bind(this,e)};Qi.prototype.N=function(){2&this.f||(this.f|=2,this.o=Ji,Ji=this)};Qi.prototype.d=function(){this.f|=8,1&this.f||Qc(this)};function ct(e){var t=new Qi(e);try{t.c()}catch(r){throw t.d(),r}return t.d.bind(t)}var el,Zc;function Kn(e,t){_e[e]=t.bind(null,_e[e]||function(){})}function os(e){Zc&&Zc(),Zc=e&&e.S()}function bf(e){var t=this,r=e.data,n=Dg(r);n.value=r;var i=qc(function(){for(var s=t.__v;s=s.__;)if(s.__c){s.__c.__$f|=4;break}return t.__$u.c=function(){var o,c=t.__$u.S(),u=i.value;c(),kc(u)||((o=t.base)==null?void 0:o.nodeType)!==3?(t.__$f|=1,t.setState({})):t.base.data=u},Jc(function(){var o=n.value.value;return o===0?0:o===!0?"":o||""})},[]);return i.value}bf.displayName="_st";Object.defineProperties(Qe.prototype,{constructor:{configurable:!0,value:void 0},type:{configurable:!0,value:bf},props:{configurable:!0,get:function(){return{data:this}}},__b:{configurable:!0,value:1}});Kn("__b",function(e,t){if(typeof t.type=="string"){var r,n=t.props;for(var i in n)if(i!=="children"){var s=n[i];s instanceof Qe&&(r||(t.__np=r={}),r[i]=s,n[i]=s.peek())}}e(t)});Kn("__r",function(e,t){os();var r,n=t.__c;n&&(n.__$f&=-2,(r=n.__$u)===void 0&&(n.__$u=r=function(i){var s;return ct(function(){s=this}),s.c=function(){n.__$f|=1,n.setState({})},s}())),el=n,os(r),e(t)});Kn("__e",function(e,t,r,n){os(),el=void 0,e(t,r,n)});Kn("diffed",function(e,t){os(),el=void 0;var r;if(typeof t.type=="string"&&(r=t.__e)){var n=t.__np,i=t.props;if(n){var s=r.U;if(s)for(var o in s){var c=s[o];c!==void 0&&!(o in n)&&(c.d(),s[o]=void 0)}else r.U=s={};for(var u in n){var d=s[u],m=n[u];d===void 0?(d=xg(r,u,m,i),s[u]=d):d.o(m,i)}}}e(t)});function xg(e,t,r,n){var i=t in e&&e.ownerSVGElement===void 0,s=jt(r);return{o:function(o,c){s.value=o,n=c},d:ct(function(){var o=s.value.value;n[t]!==o&&(n[t]=o,i?e[t]=o:o?e.setAttribute(t,o):e.removeAttribute(t))})}}Kn("unmount",function(e,t){if(typeof t.type=="string"){var r=t.__e;if(r){var n=r.U;if(n){r.U=void 0;for(var i in n){var s=n[i];s&&s.d()}}}}else{var o=t.__c;if(o){var c=o.__$u;c&&(o.__$u=void 0,c.d())}}e(t)});Kn("__h",function(e,t,r,n){(n<3||n===9)&&(t.__$f|=2),e(t,r,n)});pr.prototype.shouldComponentUpdate=function(e,t){var r=this.__$u,n=r&&r.s!==void 0;for(var i in t)return!0;if(this.__f||typeof this.u=="boolean"&&this.u===!0){if(!(n||2&this.__$f||4&this.__$f)||1&this.__$f)return!0}else if(!(n||4&this.__$f)||3&this.__$f)return!0;for(var s in e)if(s!=="__source"&&e[s]!==this.props[s])return!0;for(var o in this.props)if(!(o in e))return!0;return!1};function Dg(e){return qc(function(){return jt(e)},[])}var Rg=Object.prototype.toString,Jn=Array.isArray||function(e){return Rg.call(e)==="[object Array]"};function rl(e){return typeof e=="function"}function Ag(e){return Jn(e)?"array":typeof e}function tl(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function wf(e,t){return e!=null&&typeof e=="object"&&t in e}function Ng(e,t){return e!=null&&typeof e!="object"&&e.hasOwnProperty&&e.hasOwnProperty(t)}var Og=RegExp.prototype.test;function Pg(e,t){return Og.call(e,t)}var Lg=/\S/;function Mg(e){return!Pg(Lg,e)}var Bg={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};function Ug(e){return String(e).replace(/[&<>"'`=\/]/g,function(t){return Bg[t]})}var kg=/\s*/,Fg=/\s+/,If=/\s*=/,Hg=/\s*\}/,$g=/#|\^|\/|>|\{|&|=|!/;function jg(e,t){if(!e)return[];var r=!1,n=[],i=[],s=[],o=!1,c=!1,u="",d=0;function m(){if(o&&!c)for(;s.length;)delete i[s.pop()];else s=[];o=!1,c=!1}var h,y,E;function v(B){if(typeof B=="string"&&(B=B.split(Fg,2)),!Jn(B)||B.length!==2)throw new Error("Invalid tags: "+B);h=new RegExp(tl(B[0])+"\\s*"),y=new RegExp("\\s*"+tl(B[1])),E=new RegExp("\\s*"+tl("}"+B[1]))}v(t||Vt.tags);for(var _=new eo(e),D,P,M,L,R,q;!_.eos();){if(D=_.pos,M=_.scanUntil(h),M)for(var he=0,ke=M.length;he<ke;++he)L=M.charAt(he),Mg(L)?(s.push(i.length),u+=L):(c=!0,r=!0,u+=" "),i.push(["text",L,D,D+1]),D+=1,L===`
|
|
17
|
+
`&&(m(),u="",d=0,r=!1);if(!_.scan(h))break;if(o=!0,P=_.scan($g)||"name",_.scan(kg),P==="="?(M=_.scanUntil(If),_.scan(If),_.scanUntil(y)):P==="{"?(M=_.scanUntil(E),_.scan(Hg),_.scanUntil(y),P="&"):M=_.scanUntil(y),!_.scan(y))throw new Error("Unclosed tag at "+_.pos);if(P==">"?R=[P,M,D,_.pos,u,d,r]:R=[P,M,D,_.pos],d++,i.push(R),P==="#"||P==="^")n.push(R);else if(P==="/"){if(q=n.pop(),!q)throw new Error('Unopened section "'+M+'" at '+D);if(q[1]!==M)throw new Error('Unclosed section "'+q[1]+'" at '+D)}else P==="name"||P==="{"||P==="&"?c=!0:P==="="&&v(M)}if(m(),q=n.pop(),q)throw new Error('Unclosed section "'+q[1]+'" at '+_.pos);return Wg(Vg(i))}function Vg(e){for(var t=[],r,n,i=0,s=e.length;i<s;++i)r=e[i],r&&(r[0]==="text"&&n&&n[0]==="text"?(n[1]+=r[1],n[3]=r[3]):(t.push(r),n=r));return t}function Wg(e){for(var t=[],r=t,n=[],i,s,o=0,c=e.length;o<c;++o)switch(i=e[o],i[0]){case"#":case"^":r.push(i),n.push(i),r=i[4]=[];break;case"/":s=n.pop(),s[5]=i[2],r=n.length>0?n[n.length-1][4]:t;break;default:r.push(i)}return t}function eo(e){this.string=e,this.tail=e,this.pos=0}eo.prototype.eos=function(){return this.tail===""};eo.prototype.scan=function(e){var t=this.tail.match(e);if(!t||t.index!==0)return"";var r=t[0];return this.tail=this.tail.substring(r.length),this.pos+=r.length,r};eo.prototype.scanUntil=function(e){var t=this.tail.search(e),r;switch(t){case-1:r=this.tail,this.tail="";break;case 0:r="";break;default:r=this.tail.substring(0,t),this.tail=this.tail.substring(t)}return this.pos+=r.length,r};function Xn(e,t){this.view=e,this.cache={".":this.view},this.parent=t}Xn.prototype.push=function(e){return new Xn(e,this)};Xn.prototype.lookup=function(e){var t=this.cache,r;if(t.hasOwnProperty(e))r=t[e];else{for(var n=this,i,s,o,c=!1;n;){if(e.indexOf(".")>0)for(i=n.view,s=e.split("."),o=0;i!=null&&o<s.length;)o===s.length-1&&(c=wf(i,s[o])||Ng(i,s[o])),i=i[s[o++]];else i=n.view[e],c=wf(n.view,e);if(c){r=i;break}n=n.parent}t[e]=r}return rl(r)&&(r=r.call(this.view)),r};function Et(){this.templateCache={_cache:{},set:function(e,t){this._cache[e]=t},get:function(e){return this._cache[e]},clear:function(){this._cache={}}}}Et.prototype.clearCache=function(){typeof this.templateCache<"u"&&this.templateCache.clear()};Et.prototype.parse=function(e,t){var r=this.templateCache,n=e+":"+(t||Vt.tags).join(":"),i=typeof r<"u",s=i?r.get(n):void 0;return s==null&&(s=jg(e,t),i&&r.set(n,s)),s};Et.prototype.render=function(e,t,r,n){var i=this.getConfigTags(n),s=this.parse(e,i),o=t instanceof Xn?t:new Xn(t,void 0);return this.renderTokens(s,o,r,e,n)};Et.prototype.renderTokens=function(e,t,r,n,i){for(var s="",o,c,u,d=0,m=e.length;d<m;++d)u=void 0,o=e[d],c=o[0],c==="#"?u=this.renderSection(o,t,r,n,i):c==="^"?u=this.renderInverted(o,t,r,n,i):c===">"?u=this.renderPartial(o,t,r,i):c==="&"?u=this.unescapedValue(o,t):c==="name"?u=this.escapedValue(o,t,i):c==="text"&&(u=this.rawValue(o)),u!==void 0&&(s+=u);return s};Et.prototype.renderSection=function(e,t,r,n,i){var s=this,o="",c=t.lookup(e[1]);function u(h){return s.render(h,t,r,i)}if(c){if(Jn(c))for(var d=0,m=c.length;d<m;++d)o+=this.renderTokens(e[4],t.push(c[d]),r,n,i);else if(typeof c=="object"||typeof c=="string"||typeof c=="number")o+=this.renderTokens(e[4],t.push(c),r,n,i);else if(rl(c)){if(typeof n!="string")throw new Error("Cannot use higher-order sections without the original template");c=c.call(t.view,n.slice(e[3],e[5]),u),c!=null&&(o+=c)}else o+=this.renderTokens(e[4],t,r,n,i);return o}};Et.prototype.renderInverted=function(e,t,r,n,i){var s=t.lookup(e[1]);if(!s||Jn(s)&&s.length===0)return this.renderTokens(e[4],t,r,n,i)};Et.prototype.indentPartial=function(e,t,r){for(var n=t.replace(/[^ \t]/g,""),i=e.split(`
|
|
18
18
|
`),s=0;s<i.length;s++)i[s].length&&(s>0||!r)&&(i[s]=n+i[s]);return i.join(`
|
|
19
|
-
`)};Et.prototype.renderPartial=function(e,t,r,n){if(r){var i=this.getConfigTags(n),s=rl(r)?r(e[1]):r[e[1]];if(s!=null){var o=e[6],c=e[5],u=e[4],d=s;c==0&&u&&(d=this.indentPartial(s,u,o));var m=this.parse(d,i);return this.renderTokens(m,t,r,d,n)}}};Et.prototype.unescapedValue=function(e,t){var r=t.lookup(e[1]);if(r!=null)return r};Et.prototype.escapedValue=function(e,t,r){var n=this.getConfigEscape(r)||Vt.escape,i=t.lookup(e[1]);if(i!=null)return typeof i=="number"&&n===Vt.escape?String(i):n(i)};Et.prototype.rawValue=function(e){return e[1]};Et.prototype.getConfigTags=function(e){return Jn(e)?e:e&&typeof e=="object"?e.tags:void 0};Et.prototype.getConfigEscape=function(e){if(e&&typeof e=="object"&&!Jn(e))return e.escape};var Vt={name:"mustache.js",version:"4.2.0",tags:["{{","}}"],clearCache:void 0,escape:void 0,parse:void 0,render:void 0,Scanner:void 0,Context:void 0,Writer:void 0,set templateCache(e){Zi.templateCache=e},get templateCache(){return Zi.templateCache}},Zi=new Et;Vt.clearCache=function(){return Zi.clearCache()};Vt.parse=function(e,t){return Zi.parse(e,t)};Vt.render=function(e,t,r,n){if(typeof e!="string")throw new TypeError('Invalid template! Template should be a "string" but "'+Ag(e)+'" was given as the first argument for mustache#render(template, view, partials)');return Zi.render(e,t,r,n)};Vt.escape=Mg;Vt.Scanner=eo;Vt.Context=Xn;Vt.Writer=Et;var _t=Vt,Cf=Se(Tf()),Bt=class jn{static DOCUMENT_STANDARD_MODE="CSS1Compat";static _instance;parentContainer;scalingFactor=1;doc=document;parser=new Cf.default;constructor(){}static get(){return jn._instance||(jn._instance=new jn),jn._instance}getUAParser(){return this.parser}getWidth(){return this.parentContainer&&this.parentContainer!==document.body?this.parentContainer.clientWidth:document.compatMode===jn.DOCUMENT_STANDARD_MODE?document.documentElement.clientWidth:window.innerWidth}getHeight(){return this.isParentNotBody()?this.parentContainer.clientHeight:document.compatMode===jn.DOCUMENT_STANDARD_MODE?document.documentElement.clientHeight:window.innerHeight}isMobile(){return this.parser.getDevice().type==="mobile"}calculateScalingFactor(t){let r=t.max,n=t.cont.w,i=t.cont.h,s=t.spc,o=jn.get().getWidth(),c=jn.get().getHeight();r&&(o=o?Math.min(o,r):r,c=c?Math.min(c,r):r),c&&(o-=s.getHorizontal(),c-=s.getVertical(),o/c<n/i?this.scalingFactor=o/n:this.scalingFactor=c/i,this.scalingFactor=Math.min(this.scalingFactor,1))}getScalingFactor(){return this.scalingFactor}createElement(t){return this.doc.createElement(t)}appendChild(t,r){t.appendChild(r)}setStyles(t,r){Object.assign(t.style,r)}setStyle(t,r,n){if(r){if(!n){t.style.removeProperty(r);return}t.style.setProperty(r,n,"important")}}setAttribute(t,r,n){t.setAttribute(r,n)}removeInApp(t){let r=document.querySelector(`.${t.rootClassName}`);r&&r.parentElement.removeChild(r)}setParentContainer(t){this.parentContainer=t,this.parentContainer&&this.isParentNotBody()&&this.setStyle(this.parentContainer,"position","relative")}isParentNotBody(){return this.parentContainer!==document.body}},oe=class{static ID="id";static SESSION_LANDING_PAGE="landing";static SESSION_LAST_USED_TIME="lastUsedTime";static SESSION_SYNCED="synced";static APP_CONFIG="conf";static DEVICE_ID="did";static SDK_TOKEN="token";static FIRST_SEEN="firstSeen";static SESSION_NUMBER="sessionNumber";static GA_CLIENT_ID="gacid";static CURRENT_CART="cart";static MUTED="muted"},il=Se(Df());function Qn(e){return il.default.createInstance({name:"lc",storeName:e,driver:il.default.LOCALSTORAGE})}var Wr=class{static storage;static async get(e,t){return await this.storage?.getItem(e)??t}static set(e,t){return this.storage?.setItem(e,t)}static remove(e){return this.storage?.removeItem(e)}static clear(){return this.storage?.clear()}static getForage(){return this.storage}},rt=class extends Wr{static storeName="ses";static{this.storage=Qn(this.storeName)}},De=class extends Wr{static storeName="usr";static{this.storage=Qn(this.storeName)}},ft=class{id;mID;vID;vName;imageURL;name;link;quantity;price;constructor(e){this.id=e.id,this.mID=e.mID,this.vID=e.vID,this.vName=e.vName,this.imageURL=e.imageURL,this.name=e.name,this.link=e.link,this.quantity=e.quantity,this.price=e.price}},ue=class{isCartDirty=!0;cartEngagements;isGoKwikPopupOpen;previewIDs;previewVariant;pageName;moneyFormat;jsLoadTime=new Date;shopCurrencyCode;locale;activeExperiment;inInactive=!1;lastEnterActive=new Date;lastEnterInactive=null;currentItem;_currencyCode;get currencyCode(){return this._currencyCode}set currencyCode(e){this._currencyCode=e}static get(){return window.CooeeSDK.runtimeData}isInactive(){return this.inInactive}async setInactive(){return this.inInactive?0:(this.inInactive=!0,this.lastEnterInactive=new Date,Math.max((this.lastEnterInactive.getTime()-this.lastEnterActive.getTime())/1e3,0))}setActive(){return this.inInactive?(this.inInactive=!1,this.lastEnterActive=new Date,Math.max((this.lastEnterActive.getTime()-this.lastEnterInactive.getTime())/1e3,0)):0}isFirstActive(){return this.lastEnterInactive==null}getCurrentItem(){return this.currentItem}setCurrentItem(e){this.currentItem=new ft(e)}},Be=class{static COOEE_URL_PREFIX="?from=cooee";static isShopify(){return!!window.Shopify}static getShopName(){if(this.isShopify())return window.Shopify.shop?.split(".")?.[0]}static getPageName(){if(!this.isShopify())return;let e=new URL(window.location.href).pathname.slice(1).split("/"),t=e[0];if(t==="")return"home";if(t==="collections")return e[2]==="products"?"product":"collection";if(t==="products")return"product";if(t==="cart")return"cart";if(location.href.includes("thank_you"))return"thank_you"}static getProductSlug(e){let t=(e.includes("://")?new URL(e).pathname:e).match(/\/products\/([^/]+?)(?:\.html)?$/);return t?t[1]:null}static getRootPrefix(){return window.Shopify?.routes?.root??"/"}static getCartURL(e){return this.getRootPrefix()+e+this.COOEE_URL_PREFIX}},Zn=class{isLocked=!1;queue=[];async acquire(){if(this.isLocked)await new Promise(e=>this.queue.push(e));else{this.isLocked=!0;return}}release(){if(this.queue.length>0){let e=this.queue.shift();e&&e()}else this.isLocked=!1}},de=class Oh{static CURRENT;token;items;total_price;original_total_price;currency;item_count;attributes;lock=new Zn;constructor(){}static getCurrent(){return this.CURRENT||(this.CURRENT=new Oh),this.CURRENT}async getNormalisedCart(t){await this.fetchCartFromShopify(t);let r=this.convertToCooeeCart();return t&&await De.set(oe.CURRENT_CART,r),r}async addCooeeAttributes(){await this.lock.acquire();let t=await rt.get(oe.ID),r=await De.get(oe.DEVICE_ID);if(this.attributes?.letscooee_did===r&&this.attributes?.letscooee_sid===t){b.debug("Not calling Shopify update.js API.","Current attributes:",this.attributes),this.lock.release();return}let n={letscooee_did:r,letscooee_sid:t,__letscooee_time:new Date().toLocaleString()};b.debug("Updating Shopify cart with attributes:",n);let i=Be.getCartURL("cart/update.js"),s=await(await fetch(i,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({attributes:n})})).json();b.debug("Updated cart attributes",JSON.stringify(s)),this.update(s),this.lock.release()}update(t){return this.token=t.token,this.items=t.items,this.total_price=t.total_price,this.original_total_price=t.original_total_price,this.currency=t.currency,this.item_count=t.item_count,this.attributes=t.attributes,ue.get().currencyCode=this.currency,b.log("Updated ShopifyCart",this),this}toString(){return`ShopifyCart(token: ${this.token}, itemCount: ${this.item_count})`}convertToCooeeCart(){return{amount:this.total_price/100,originalAmount:this.original_total_price/100,currency:this.currency,itemCount:this.item_count,items:this.normaliseItems(this.items),token:this.token}}normaliseItems(t){if(!t)return b.error("No item received to be sent"),[];Array.isArray(t)||(t=[t]);let r=[];for(let n of t){if(!n.id||!n.title){b.warn("Invalid item received",n);continue}let i={name:n.title,quantity:+n.quantity||1,mID:n.product_id?.toString(),vID:n.id.toString(),price:+n.price/100||0,properties:n.properties,key:n.key},s=n.selling_plan_allocation?.selling_plan;if(!s){r.push(i);continue}i.sellingPlanAllocation={sellingPlan:{fixedSellingPlan:s.fixed_selling_plan,id:s.id,name:s.name,recurringDeliveries:s.recurring_deliveries}},r.push(i)}return r}async fetchCartFromShopify(t){if(!t&&this.token){b.debug("Not fetching cart");return}b.debug("Fetching cart");let r=Be.getCartURL("cart.js"),n=await(await fetch(r)).json();this.update(n)}},as=class{static format(e,t){let r=/{{\s*(\w+)\s*}}/;return t.replace(r,(n,i)=>{switch(i){case"amount":return this.formatWithDelimiters(e,2);case"amount_no_decimals":return this.formatWithDelimiters(e,0);case"amount_with_comma_separator":return this.formatWithDelimiters(e,2,".",",");case"amount_no_decimals_with_comma_separator":return this.formatWithDelimiters(e,0,".",",");case"amount_with_apostrophe_separator":return this.formatWithDelimiters(e,2,"'",".");case"amount_no_decimals_with_space_separator":return this.formatWithDelimiters(e,0," ");case"amount_with_space_separator":return this.formatWithDelimiters(e,2," ",",");case"amount_with_period_and_space_separator":return this.formatWithDelimiters(e,2," ",".");default:return n}})}static formatWithDelimiters(e,t=2,r=",",n="."){if(isNaN(e)||e==null)return"0";let i=(e/100).toFixed(t).split("."),s=i[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1"+r),o=i[1]?n+i[1]:"";return s+o}},Km=Se(ti()),Rf=Object.prototype.toString;function an(e){switch(Rf.call(e)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return mr(e,Error)}}function ri(e,t){return Rf.call(e)===`[object ${t}]`}function ls(e){return ri(e,"ErrorEvent")}function us(e){return ri(e,"DOMError")}function ol(e){return ri(e,"DOMException")}function St(e){return ri(e,"String")}function ni(e){return typeof e=="object"&&e!==null&&"__sentry_template_string__"in e&&"__sentry_template_values__"in e}function cn(e){return e===null||ni(e)||typeof e!="object"&&typeof e!="function"}function rr(e){return ri(e,"Object")}function ln(e){return typeof Event<"u"&&mr(e,Event)}function sl(e){return typeof Element<"u"&&mr(e,Element)}function al(e){return ri(e,"RegExp")}function Ar(e){return!!(e&&e.then&&typeof e.then=="function")}function cl(e){return rr(e)&&"nativeEvent"in e&&"preventDefault"in e&&"stopPropagation"in e}function mr(e,t){try{return e instanceof t}catch{return!1}}function ro(e){return!!(typeof e=="object"&&e!==null&&(e.__isVue||e._isVue))}function dr(e,t=0){return typeof e!="string"||t===0||e.length<=t?e:`${e.slice(0,t)}...`}function ps(e,t){if(!Array.isArray(e))return"";let r=[];for(let n=0;n<e.length;n++){let i=e[n];try{ro(i)?r.push("[VueViewModel]"):r.push(String(i))}catch{r.push("[value cannot be serialized]")}}return r.join(t)}function Af(e,t,r=!1){return St(e)?al(t)?t.test(e):St(t)?r?e===t:e.includes(t):!1:!1}function ii(e,t=[],r=!1){return t.some(n=>Af(e,n,r))}function ul(e,t,r=250,n,i,s,o){if(!s.exception||!s.exception.values||!o||!mr(o.originalException,Error))return;let c=s.exception.values.length>0?s.exception.values[s.exception.values.length-1]:void 0;c&&(s.exception.values=Yg(ll(e,t,i,o.originalException,n,s.exception.values,c,0),r))}function ll(e,t,r,n,i,s,o,c){if(s.length>=r+1)return s;let u=[...s];if(mr(n[i],Error)){Nf(o,c);let d=e(t,n[i]),m=u.length;Of(d,i,m,c),u=ll(e,t,r,n[i],i,[d,...u],d,m)}return Array.isArray(n.errors)&&n.errors.forEach((d,m)=>{if(mr(d,Error)){Nf(o,c);let h=e(t,d),y=u.length;Of(h,`errors[${m}]`,y,c),u=ll(e,t,r,d,i,[h,...u],h,y)}}),u}function Nf(e,t){e.mechanism=e.mechanism||{type:"generic",handled:!0},e.mechanism=te(w(w({},e.mechanism),e.type==="AggregateError"&&{is_exception_group:!0}),{exception_id:t})}function Of(e,t,r,n){e.mechanism=e.mechanism||{type:"generic",handled:!0},e.mechanism=te(w({},e.mechanism),{type:"chained",source:t,exception_id:r,parent_id:n})}function Yg(e,t){return e.map(r=>(r.value&&(r.value=dr(r.value,t)),r))}var Wt="8.18.0",re=globalThis;function oi(e,t,r){let n=r||re,i=n.__SENTRY__=n.__SENTRY__||{},s=i[Wt]=i[Wt]||{};return s[e]||(s[e]=t())}var pl=re,zg=80;function no(e,t={}){if(!e)return"<unknown>";try{let r=e,n=5,i=[],s=0,o=0,c=" > ",u=c.length,d,m=Array.isArray(t)?t:t.keyAttrs,h=!Array.isArray(t)&&t.maxStringLength||zg;for(;r&&s++<n&&(d=qg(r,m),!(d==="html"||s>1&&o+i.length*u+d.length>=h));)i.push(d),o+=d.length,r=r.parentNode;return i.reverse().join(c)}catch{return"<unknown>"}}function qg(e,t){let r=e,n=[];if(!r||!r.tagName)return"";if(pl.HTMLElement&&r instanceof HTMLElement&&r.dataset){if(r.dataset.sentryComponent)return r.dataset.sentryComponent;if(r.dataset.sentryElement)return r.dataset.sentryElement}n.push(r.tagName.toLowerCase());let i=t&&t.length?t.filter(o=>r.getAttribute(o)).map(o=>[o,r.getAttribute(o)]):null;if(i&&i.length)i.forEach(o=>{n.push(`[${o[0]}="${o[1]}"]`)});else{r.id&&n.push(`#${r.id}`);let o=r.className;if(o&&St(o)){let c=o.split(/\s+/);for(let u of c)n.push(`.${u}`)}}let s=["aria-label","type","name","title","alt"];for(let o of s){let c=r.getAttribute(o);c&&n.push(`[${o}="${c}"]`)}return n.join("")}function fl(){try{return pl.document.location.href}catch{return""}}function ml(e){if(!pl.HTMLElement)return null;let t=e,r=5;for(let n=0;n<r;n++){if(!t)return null;if(t instanceof HTMLElement){if(t.dataset.sentryComponent)return t.dataset.sentryComponent;if(t.dataset.sentryElement)return t.dataset.sentryElement}t=t.parentNode}return null}var hr=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,Kg="Sentry Logger ",io=["debug","info","warn","error","log","assert","trace"],si={};function ai(e){if(!("console"in re))return e();let t=re.console,r={},n=Object.keys(si);n.forEach(i=>{let s=si[i];r[i]=t[i],t[i]=s});try{return e()}finally{n.forEach(i=>{t[i]=r[i]})}}function Xg(){let e=!1,t={enable:()=>{e=!0},disable:()=>{e=!1},isEnabled:()=>e};return hr?io.forEach(r=>{t[r]=(...n)=>{e&&ai(()=>{re.console[r](`${Kg}[${r}]:`,...n)})}}):io.forEach(r=>{t[r]=()=>{}}),t}var K=Xg(),Jg=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function Qg(e){return e==="http"||e==="https"}function gr(e,t=!1){let{host:r,path:n,pass:i,port:s,projectId:o,protocol:c,publicKey:u}=e;return`${c}://${u}${t&&i?`:${i}`:""}@${r}${s?`:${s}`:""}/${n&&`${n}/`}${o}`}function Pf(e){let t=Jg.exec(e);if(!t){ai(()=>{console.error(`Invalid Sentry Dsn: ${e}`)});return}let[r,n,i="",s="",o="",c=""]=t.slice(1),u="",d=c,m=d.split("/");if(m.length>1&&(u=m.slice(0,-1).join("/"),d=m.pop()),d){let h=d.match(/^\d+/);h&&(d=h[0])}return Lf({host:s,pass:i,path:u,projectId:d,port:o,protocol:r,publicKey:n})}function Lf(e){return{protocol:e.protocol,publicKey:e.publicKey||"",pass:e.pass||"",host:e.host,port:e.port||"",path:e.path||"",projectId:e.projectId}}function Zg(e){if(!hr)return!0;let{port:t,projectId:r,protocol:n}=e;return["protocol","publicKey","host","projectId"].find(i=>e[i]?!1:(K.error(`Invalid Sentry Dsn: ${i} missing`),!0))?!1:r.match(/^\d+$/)?Qg(n)?t&&isNaN(parseInt(t,10))?(K.error(`Invalid Sentry Dsn: Invalid port ${t}`),!1):!0:(K.error(`Invalid Sentry Dsn: Invalid protocol ${n}`),!1):(K.error(`Invalid Sentry Dsn: Invalid projectId ${r}`),!1)}function fs(e){let t=typeof e=="string"?Pf(e):Lf(e);if(!(!t||!Zg(t)))return t}var mt=class extends Error{constructor(e,t="warn"){super(e),this.message=e,this.name=new.target.prototype.constructor.name,Object.setPrototypeOf(this,new.target.prototype),this.logLevel=t}};function Ue(e,t,r){if(!(t in e))return;let n=e[t],i=r(n);typeof i=="function"&&ms(i,n),e[t]=i}function wt(e,t,r){try{Object.defineProperty(e,t,{value:r,writable:!0,configurable:!0})}catch{hr&&K.log(`Failed to add non-enumerable property "${t}" to object`,e)}}function ms(e,t){try{let r=t.prototype||{};e.prototype=t.prototype=r,wt(e,"__sentry_original__",t)}catch{}}function un(e){return e.__sentry_original__}function hl(e){return Object.keys(e).map(t=>`${encodeURIComponent(t)}=${encodeURIComponent(e[t])}`).join("&")}function ds(e){if(an(e))return w({message:e.message,name:e.name,stack:e.stack},Uf(e));if(ln(e)){let t=w({type:e.type,target:Bf(e.target),currentTarget:Bf(e.currentTarget)},Uf(e));return typeof CustomEvent<"u"&&mr(e,CustomEvent)&&(t.detail=e.detail),t}else return e}function Bf(e){try{return sl(e)?no(e):Object.prototype.toString.call(e)}catch{return"<unknown>"}}function Uf(e){if(typeof e=="object"&&e!==null){let t={};for(let r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}else return{}}function gl(e,t=40){let r=Object.keys(ds(e));r.sort();let n=r[0];if(!n)return"[object has no keys]";if(n.length>=t)return dr(n,t);for(let i=r.length;i>0;i--){let s=r.slice(0,i).join(", ");if(!(s.length>t))return i===r.length?s:dr(s,t)}return""}function Ze(e){return dl(e,new Map)}function dl(e,t){if(ey(e)){let r=t.get(e);if(r!==void 0)return r;let n={};t.set(e,n);for(let i of Object.keys(e))typeof e[i]<"u"&&(n[i]=dl(e[i],t));return n}if(Array.isArray(e)){let r=t.get(e);if(r!==void 0)return r;let n=[];return t.set(e,n),e.forEach(i=>{n.push(dl(i,t))}),n}return e}function ey(e){if(!rr(e))return!1;try{let t=Object.getPrototypeOf(e).constructor.name;return!t||t==="Object"}catch{return!0}}var yr="?",Mf=/\(error: (.*)\)/,kf=/captureMessage|captureException/;function vl(...e){let t=e.sort((r,n)=>r[0]-n[0]).map(r=>r[1]);return(r,n=0,i=0)=>{let s=[],o=r.split(`
|
|
20
|
-
`);for(let c=n;c<o.length;c++){let u=o[c];if(u.length>1024)continue;let d=
|
|
19
|
+
`)};Et.prototype.renderPartial=function(e,t,r,n){if(r){var i=this.getConfigTags(n),s=rl(r)?r(e[1]):r[e[1]];if(s!=null){var o=e[6],c=e[5],u=e[4],d=s;c==0&&u&&(d=this.indentPartial(s,u,o));var m=this.parse(d,i);return this.renderTokens(m,t,r,d,n)}}};Et.prototype.unescapedValue=function(e,t){var r=t.lookup(e[1]);if(r!=null)return r};Et.prototype.escapedValue=function(e,t,r){var n=this.getConfigEscape(r)||Vt.escape,i=t.lookup(e[1]);if(i!=null)return typeof i=="number"&&n===Vt.escape?String(i):n(i)};Et.prototype.rawValue=function(e){return e[1]};Et.prototype.getConfigTags=function(e){return Jn(e)?e:e&&typeof e=="object"?e.tags:void 0};Et.prototype.getConfigEscape=function(e){if(e&&typeof e=="object"&&!Jn(e))return e.escape};var Vt={name:"mustache.js",version:"4.2.0",tags:["{{","}}"],clearCache:void 0,escape:void 0,parse:void 0,render:void 0,Scanner:void 0,Context:void 0,Writer:void 0,set templateCache(e){Zi.templateCache=e},get templateCache(){return Zi.templateCache}},Zi=new Et;Vt.clearCache=function(){return Zi.clearCache()};Vt.parse=function(e,t){return Zi.parse(e,t)};Vt.render=function(e,t,r,n){if(typeof e!="string")throw new TypeError('Invalid template! Template should be a "string" but "'+Ag(e)+'" was given as the first argument for mustache#render(template, view, partials)');return Zi.render(e,t,r,n)};Vt.escape=Ug;Vt.Scanner=eo;Vt.Context=Xn;Vt.Writer=Et;var _t=Vt,Cf=Se(Tf()),Mt=class jn{static DOCUMENT_STANDARD_MODE="CSS1Compat";static _instance;parentContainer;scalingFactor=1;doc=document;parser=new Cf.default;constructor(){}static get(){return jn._instance||(jn._instance=new jn),jn._instance}getUAParser(){return this.parser}getWidth(){return this.parentContainer&&this.parentContainer!==document.body?this.parentContainer.clientWidth:document.compatMode===jn.DOCUMENT_STANDARD_MODE?document.documentElement.clientWidth:window.innerWidth}getHeight(){return this.isParentNotBody()?this.parentContainer.clientHeight:document.compatMode===jn.DOCUMENT_STANDARD_MODE?document.documentElement.clientHeight:window.innerHeight}isMobile(){return this.parser.getDevice().type==="mobile"}calculateScalingFactor(t){let r=t.max,n=t.cont.w,i=t.cont.h,s=t.spc,o=jn.get().getWidth(),c=jn.get().getHeight();r&&(o=o?Math.min(o,r):r,c=c?Math.min(c,r):r),c&&(o-=s.getHorizontal(),c-=s.getVertical(),o/c<n/i?this.scalingFactor=o/n:this.scalingFactor=c/i,this.scalingFactor=Math.min(this.scalingFactor,1))}getScalingFactor(){return this.scalingFactor}createElement(t){return this.doc.createElement(t)}appendChild(t,r){t.appendChild(r)}setStyles(t,r){Object.assign(t.style,r)}setStyle(t,r,n){if(r){if(!n){t.style.removeProperty(r);return}t.style.setProperty(r,n,"important")}}setAttribute(t,r,n){t.setAttribute(r,n)}removeInApp(t){let r=document.querySelector(`.${t.rootClassName}`);r&&r.parentElement.removeChild(r)}setParentContainer(t){this.parentContainer=t,this.parentContainer&&this.isParentNotBody()&&this.setStyle(this.parentContainer,"position","relative")}isParentNotBody(){return this.parentContainer!==document.body}},oe=class{static ID="id";static SESSION_LANDING_PAGE="landing";static SESSION_LAST_USED_TIME="lastUsedTime";static SESSION_SYNCED="synced";static APP_CONFIG="conf";static DEVICE_ID="did";static SDK_TOKEN="token";static FIRST_SEEN="firstSeen";static SESSION_NUMBER="sessionNumber";static GA_CLIENT_ID="gacid";static CURRENT_CART="cart";static MUTED="muted"},il=Se(Df());function Qn(e){return il.default.createInstance({name:"lc",storeName:e,driver:il.default.LOCALSTORAGE})}var Wr=class{static storage;static async get(e,t){return await this.storage?.getItem(e)??t}static set(e,t){return this.storage?.setItem(e,t)}static remove(e){return this.storage?.removeItem(e)}static clear(){return this.storage?.clear()}static getForage(){return this.storage}},rt=class extends Wr{static storeName="ses";static{this.storage=Qn(this.storeName)}},De=class extends Wr{static storeName="usr";static{this.storage=Qn(this.storeName)}},ft=class{id;mID;vID;vName;imageURL;name;link;quantity;price;constructor(e){this.id=e.id,this.mID=e.mID,this.vID=e.vID,this.vName=e.vName,this.imageURL=e.imageURL,this.name=e.name,this.link=e.link,this.quantity=e.quantity,this.price=e.price}},ue=class{isCartDirty=!0;cartEngagements;isGoKwikPopupOpen;previewIDs;previewVariant;pageName;moneyFormat;jsLoadTime=new Date;shopCurrencyCode;locale;activeExperiment;inInactive=!1;lastEnterActive=new Date;lastEnterInactive=null;currentItem;_currencyCode;get currencyCode(){return this._currencyCode}set currencyCode(e){this._currencyCode=e}static get(){return window.CooeeSDK.runtimeData}isInactive(){return this.inInactive}async setInactive(){return this.inInactive?0:(this.inInactive=!0,this.lastEnterInactive=new Date,Math.max((this.lastEnterInactive.getTime()-this.lastEnterActive.getTime())/1e3,0))}setActive(){return this.inInactive?(this.inInactive=!1,this.lastEnterActive=new Date,Math.max((this.lastEnterActive.getTime()-this.lastEnterInactive.getTime())/1e3,0)):0}isFirstActive(){return this.lastEnterInactive==null}getCurrentItem(){return this.currentItem}setCurrentItem(e){this.currentItem=new ft(e)}},Me=class{static COOEE_URL_PREFIX="?from=cooee";static isShopify(){return!!window.Shopify}static getShopName(){if(this.isShopify())return window.Shopify.shop?.split(".")?.[0]}static getPageName(){if(!this.isShopify())return;let e=new URL(window.location.href).pathname.slice(1).split("/"),t=e[0];if(t==="")return"home";if(t==="collections")return e[2]==="products"?"product":"collection";if(t==="products")return"product";if(t==="cart")return"cart";if(location.href.includes("thank_you"))return"thank_you"}static getProductSlug(e){let t=(e.includes("://")?new URL(e).pathname:e).match(/\/products\/([^/]+?)(?:\.html)?$/);return t?t[1]:null}static getRootPrefix(){return window.Shopify?.routes?.root??"/"}static getCartURL(e){return this.getRootPrefix()+e+this.COOEE_URL_PREFIX}},Zn=class{isLocked=!1;queue=[];async acquire(){if(this.isLocked)await new Promise(e=>this.queue.push(e));else{this.isLocked=!0;return}}release(){if(this.queue.length>0){let e=this.queue.shift();e&&e()}else this.isLocked=!1}},de=class Oh{static CURRENT;token;items;total_price;original_total_price;currency;item_count;attributes;lock=new Zn;constructor(){}static getCurrent(){return this.CURRENT||(this.CURRENT=new Oh),this.CURRENT}async getNormalisedCart(t){await this.fetchCartFromShopify(t);let r=this.convertToCooeeCart();return t&&await De.set(oe.CURRENT_CART,r),r}async addCooeeAttributes(){await this.lock.acquire();let t=await rt.get(oe.ID),r=await De.get(oe.DEVICE_ID);if(this.attributes?.letscooee_did===r&&this.attributes?.letscooee_sid===t){w.debug("Not calling Shopify update.js API.","Current attributes:",this.attributes),this.lock.release();return}let n={letscooee_did:r,letscooee_sid:t,__letscooee_time:new Date().toLocaleString()};w.debug("Updating Shopify cart with attributes:",n);let i=Me.getCartURL("cart/update.js"),s=await(await fetch(i,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({attributes:n})})).json();w.debug("Updated cart attributes",JSON.stringify(s)),this.update(s),this.lock.release()}update(t){return this.token=t.token,this.items=t.items,this.total_price=t.total_price,this.original_total_price=t.original_total_price,this.currency=t.currency,this.item_count=t.item_count,this.attributes=t.attributes,ue.get().currencyCode=this.currency,w.log("Updated ShopifyCart",this),this}toString(){return`ShopifyCart(token: ${this.token}, itemCount: ${this.item_count})`}convertToCooeeCart(){return{amount:this.total_price/100,originalAmount:this.original_total_price/100,currency:this.currency,itemCount:this.item_count,items:this.normaliseItems(this.items),token:this.token}}normaliseItems(t){if(!t)return w.error("No item received to be sent"),[];Array.isArray(t)||(t=[t]);let r=[];for(let n of t){if(!n.id||!n.title){w.warn("Invalid item received",n);continue}let i={name:n.title,quantity:+n.quantity||1,mID:n.product_id?.toString(),vID:n.id.toString(),price:+n.price/100||0,properties:n.properties,key:n.key},s=n.selling_plan_allocation?.selling_plan;if(!s){r.push(i);continue}i.sellingPlanAllocation={sellingPlan:{fixedSellingPlan:s.fixed_selling_plan,id:s.id,name:s.name,recurringDeliveries:s.recurring_deliveries}},r.push(i)}return r}async fetchCartFromShopify(t){if(!t&&this.token){w.debug("Not fetching cart");return}w.debug("Fetching cart");let r=Me.getCartURL("cart.js"),n=await(await fetch(r)).json();this.update(n)}},as=class{static format(e,t){let r=/{{\s*(\w+)\s*}}/;return t.replace(r,(n,i)=>{switch(i){case"amount":return this.formatWithDelimiters(e,2);case"amount_no_decimals":return this.formatWithDelimiters(e,0);case"amount_with_comma_separator":return this.formatWithDelimiters(e,2,".",",");case"amount_no_decimals_with_comma_separator":return this.formatWithDelimiters(e,0,".",",");case"amount_with_apostrophe_separator":return this.formatWithDelimiters(e,2,"'",".");case"amount_no_decimals_with_space_separator":return this.formatWithDelimiters(e,0," ");case"amount_with_space_separator":return this.formatWithDelimiters(e,2," ",",");case"amount_with_period_and_space_separator":return this.formatWithDelimiters(e,2," ",".");default:return n}})}static formatWithDelimiters(e,t=2,r=",",n="."){if(isNaN(e)||e==null)return"0";let i=(e/100).toFixed(t).split("."),s=i[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1"+r),o=i[1]?n+i[1]:"";return s+o}},Km=Se(ti()),Rf=Object.prototype.toString;function an(e){switch(Rf.call(e)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return mr(e,Error)}}function ri(e,t){return Rf.call(e)===`[object ${t}]`}function ls(e){return ri(e,"ErrorEvent")}function us(e){return ri(e,"DOMError")}function ol(e){return ri(e,"DOMException")}function St(e){return ri(e,"String")}function ni(e){return typeof e=="object"&&e!==null&&"__sentry_template_string__"in e&&"__sentry_template_values__"in e}function cn(e){return e===null||ni(e)||typeof e!="object"&&typeof e!="function"}function rr(e){return ri(e,"Object")}function ln(e){return typeof Event<"u"&&mr(e,Event)}function sl(e){return typeof Element<"u"&&mr(e,Element)}function al(e){return ri(e,"RegExp")}function Ar(e){return!!(e&&e.then&&typeof e.then=="function")}function cl(e){return rr(e)&&"nativeEvent"in e&&"preventDefault"in e&&"stopPropagation"in e}function mr(e,t){try{return e instanceof t}catch{return!1}}function ro(e){return!!(typeof e=="object"&&e!==null&&(e.__isVue||e._isVue))}function dr(e,t=0){return typeof e!="string"||t===0||e.length<=t?e:`${e.slice(0,t)}...`}function ps(e,t){if(!Array.isArray(e))return"";let r=[];for(let n=0;n<e.length;n++){let i=e[n];try{ro(i)?r.push("[VueViewModel]"):r.push(String(i))}catch{r.push("[value cannot be serialized]")}}return r.join(t)}function Af(e,t,r=!1){return St(e)?al(t)?t.test(e):St(t)?r?e===t:e.includes(t):!1:!1}function ii(e,t=[],r=!1){return t.some(n=>Af(e,n,r))}function ul(e,t,r=250,n,i,s,o){if(!s.exception||!s.exception.values||!o||!mr(o.originalException,Error))return;let c=s.exception.values.length>0?s.exception.values[s.exception.values.length-1]:void 0;c&&(s.exception.values=Yg(ll(e,t,i,o.originalException,n,s.exception.values,c,0),r))}function ll(e,t,r,n,i,s,o,c){if(s.length>=r+1)return s;let u=[...s];if(mr(n[i],Error)){Nf(o,c);let d=e(t,n[i]),m=u.length;Of(d,i,m,c),u=ll(e,t,r,n[i],i,[d,...u],d,m)}return Array.isArray(n.errors)&&n.errors.forEach((d,m)=>{if(mr(d,Error)){Nf(o,c);let h=e(t,d),y=u.length;Of(h,`errors[${m}]`,y,c),u=ll(e,t,r,d,i,[h,...u],h,y)}}),u}function Nf(e,t){e.mechanism=e.mechanism||{type:"generic",handled:!0},e.mechanism=te(b(b({},e.mechanism),e.type==="AggregateError"&&{is_exception_group:!0}),{exception_id:t})}function Of(e,t,r,n){e.mechanism=e.mechanism||{type:"generic",handled:!0},e.mechanism=te(b({},e.mechanism),{type:"chained",source:t,exception_id:r,parent_id:n})}function Yg(e,t){return e.map(r=>(r.value&&(r.value=dr(r.value,t)),r))}var Wt="8.18.0",re=globalThis;function oi(e,t,r){let n=r||re,i=n.__SENTRY__=n.__SENTRY__||{},s=i[Wt]=i[Wt]||{};return s[e]||(s[e]=t())}var pl=re,zg=80;function no(e,t={}){if(!e)return"<unknown>";try{let r=e,n=5,i=[],s=0,o=0,c=" > ",u=c.length,d,m=Array.isArray(t)?t:t.keyAttrs,h=!Array.isArray(t)&&t.maxStringLength||zg;for(;r&&s++<n&&(d=qg(r,m),!(d==="html"||s>1&&o+i.length*u+d.length>=h));)i.push(d),o+=d.length,r=r.parentNode;return i.reverse().join(c)}catch{return"<unknown>"}}function qg(e,t){let r=e,n=[];if(!r||!r.tagName)return"";if(pl.HTMLElement&&r instanceof HTMLElement&&r.dataset){if(r.dataset.sentryComponent)return r.dataset.sentryComponent;if(r.dataset.sentryElement)return r.dataset.sentryElement}n.push(r.tagName.toLowerCase());let i=t&&t.length?t.filter(o=>r.getAttribute(o)).map(o=>[o,r.getAttribute(o)]):null;if(i&&i.length)i.forEach(o=>{n.push(`[${o[0]}="${o[1]}"]`)});else{r.id&&n.push(`#${r.id}`);let o=r.className;if(o&&St(o)){let c=o.split(/\s+/);for(let u of c)n.push(`.${u}`)}}let s=["aria-label","type","name","title","alt"];for(let o of s){let c=r.getAttribute(o);c&&n.push(`[${o}="${c}"]`)}return n.join("")}function fl(){try{return pl.document.location.href}catch{return""}}function ml(e){if(!pl.HTMLElement)return null;let t=e,r=5;for(let n=0;n<r;n++){if(!t)return null;if(t instanceof HTMLElement){if(t.dataset.sentryComponent)return t.dataset.sentryComponent;if(t.dataset.sentryElement)return t.dataset.sentryElement}t=t.parentNode}return null}var hr=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,Kg="Sentry Logger ",io=["debug","info","warn","error","log","assert","trace"],si={};function ai(e){if(!("console"in re))return e();let t=re.console,r={},n=Object.keys(si);n.forEach(i=>{let s=si[i];r[i]=t[i],t[i]=s});try{return e()}finally{n.forEach(i=>{t[i]=r[i]})}}function Xg(){let e=!1,t={enable:()=>{e=!0},disable:()=>{e=!1},isEnabled:()=>e};return hr?io.forEach(r=>{t[r]=(...n)=>{e&&ai(()=>{re.console[r](`${Kg}[${r}]:`,...n)})}}):io.forEach(r=>{t[r]=()=>{}}),t}var K=Xg(),Jg=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function Qg(e){return e==="http"||e==="https"}function gr(e,t=!1){let{host:r,path:n,pass:i,port:s,projectId:o,protocol:c,publicKey:u}=e;return`${c}://${u}${t&&i?`:${i}`:""}@${r}${s?`:${s}`:""}/${n&&`${n}/`}${o}`}function Pf(e){let t=Jg.exec(e);if(!t){ai(()=>{console.error(`Invalid Sentry Dsn: ${e}`)});return}let[r,n,i="",s="",o="",c=""]=t.slice(1),u="",d=c,m=d.split("/");if(m.length>1&&(u=m.slice(0,-1).join("/"),d=m.pop()),d){let h=d.match(/^\d+/);h&&(d=h[0])}return Lf({host:s,pass:i,path:u,projectId:d,port:o,protocol:r,publicKey:n})}function Lf(e){return{protocol:e.protocol,publicKey:e.publicKey||"",pass:e.pass||"",host:e.host,port:e.port||"",path:e.path||"",projectId:e.projectId}}function Zg(e){if(!hr)return!0;let{port:t,projectId:r,protocol:n}=e;return["protocol","publicKey","host","projectId"].find(i=>e[i]?!1:(K.error(`Invalid Sentry Dsn: ${i} missing`),!0))?!1:r.match(/^\d+$/)?Qg(n)?t&&isNaN(parseInt(t,10))?(K.error(`Invalid Sentry Dsn: Invalid port ${t}`),!1):!0:(K.error(`Invalid Sentry Dsn: Invalid protocol ${n}`),!1):(K.error(`Invalid Sentry Dsn: Invalid projectId ${r}`),!1)}function fs(e){let t=typeof e=="string"?Pf(e):Lf(e);if(!(!t||!Zg(t)))return t}var mt=class extends Error{constructor(e,t="warn"){super(e),this.message=e,this.name=new.target.prototype.constructor.name,Object.setPrototypeOf(this,new.target.prototype),this.logLevel=t}};function Be(e,t,r){if(!(t in e))return;let n=e[t],i=r(n);typeof i=="function"&&ms(i,n),e[t]=i}function bt(e,t,r){try{Object.defineProperty(e,t,{value:r,writable:!0,configurable:!0})}catch{hr&&K.log(`Failed to add non-enumerable property "${t}" to object`,e)}}function ms(e,t){try{let r=t.prototype||{};e.prototype=t.prototype=r,bt(e,"__sentry_original__",t)}catch{}}function un(e){return e.__sentry_original__}function hl(e){return Object.keys(e).map(t=>`${encodeURIComponent(t)}=${encodeURIComponent(e[t])}`).join("&")}function ds(e){if(an(e))return b({message:e.message,name:e.name,stack:e.stack},Bf(e));if(ln(e)){let t=b({type:e.type,target:Mf(e.target),currentTarget:Mf(e.currentTarget)},Bf(e));return typeof CustomEvent<"u"&&mr(e,CustomEvent)&&(t.detail=e.detail),t}else return e}function Mf(e){try{return sl(e)?no(e):Object.prototype.toString.call(e)}catch{return"<unknown>"}}function Bf(e){if(typeof e=="object"&&e!==null){let t={};for(let r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}else return{}}function gl(e,t=40){let r=Object.keys(ds(e));r.sort();let n=r[0];if(!n)return"[object has no keys]";if(n.length>=t)return dr(n,t);for(let i=r.length;i>0;i--){let s=r.slice(0,i).join(", ");if(!(s.length>t))return i===r.length?s:dr(s,t)}return""}function Ze(e){return dl(e,new Map)}function dl(e,t){if(ey(e)){let r=t.get(e);if(r!==void 0)return r;let n={};t.set(e,n);for(let i of Object.keys(e))typeof e[i]<"u"&&(n[i]=dl(e[i],t));return n}if(Array.isArray(e)){let r=t.get(e);if(r!==void 0)return r;let n=[];return t.set(e,n),e.forEach(i=>{n.push(dl(i,t))}),n}return e}function ey(e){if(!rr(e))return!1;try{let t=Object.getPrototypeOf(e).constructor.name;return!t||t==="Object"}catch{return!0}}var yr="?",Uf=/\(error: (.*)\)/,kf=/captureMessage|captureException/;function vl(...e){let t=e.sort((r,n)=>r[0]-n[0]).map(r=>r[1]);return(r,n=0,i=0)=>{let s=[],o=r.split(`
|
|
20
|
+
`);for(let c=n;c<o.length;c++){let u=o[c];if(u.length>1024)continue;let d=Uf.test(u)?u.replace(Uf,"$1"):u;if(!d.match(/\S*Error: /)){for(let m of t){let h=m(d);if(h){s.push(h);break}}if(s.length>=50+i)break}}return Ff(s.slice(i))}}function Ff(e){if(!e.length)return[];let t=Array.from(e);return/sentryWrapped/.test(hs(t).function||"")&&t.pop(),t.reverse(),kf.test(hs(t).function||"")&&(t.pop(),kf.test(hs(t).function||"")&&t.pop()),t.slice(0,50).map(r=>te(b({},r),{filename:r.filename||hs(t).filename,function:r.function||yr}))}function hs(e){return e[e.length-1]||{}}var yl="<anonymous>";function Gt(e){try{return!e||typeof e!="function"?yl:e.name||yl}catch{return yl}}function gs(e){let t=e.exception;if(t){let r=[];try{return t.values.forEach(n=>{n.stacktrace.frames&&r.push(...n.stacktrace.frames)}),r}catch{return}}}var ys={},Hf={};function wt(e,t){ys[e]=ys[e]||[],ys[e].push(t)}function It(e,t){Hf[e]||(t(),Hf[e]=!0)}function et(e,t){let r=e&&ys[e];if(r)for(let n of r)try{n(t)}catch(i){hr&&K.error(`Error while triggering instrumentation handler.
|
|
21
21
|
Type: ${e}
|
|
22
22
|
Name: ${Gt(n)}
|
|
23
|
-
Error:`,i)}}function El(e){let t="console";
|
|
23
|
+
Error:`,i)}}function El(e){let t="console";wt(t,e),It(t,ty)}function ty(){"console"in re&&io.forEach(function(e){e in re.console&&Be(re.console,e,function(t){return si[e]=t,function(...r){et("console",{args:r,level:e});let n=si[e];n&&n.apply(re.console,r)}})})}var _l=re;function $f(){if(!("fetch"in _l))return!1;try{return new Headers,new Request("http://www.example.com"),new Response,!0}catch{return!1}}function oo(e){return e&&/^function\s+\w+\(\)\s+\{\s+\[native code\]\s+\}$/.test(e.toString())}function Sl(){if(typeof EdgeRuntime=="string")return!0;if(!$f())return!1;if(oo(_l.fetch))return!0;let e=!1,t=_l.document;if(t&&typeof t.createElement=="function")try{let r=t.createElement("iframe");r.hidden=!0,t.head.appendChild(r),r.contentWindow&&r.contentWindow.fetch&&(e=oo(r.contentWindow.fetch)),t.head.removeChild(r)}catch(r){hr&&K.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",r)}return e}var jf=1e3;function vr(){return Date.now()/jf}function ry(){let{performance:e}=re;if(!e||!e.now)return vr;let t=Date.now()-e.now(),r=e.timeOrigin==null?t:e.timeOrigin;return()=>(r+e.now())/jf}var Bt=ry(),so,ny=(()=>{let{performance:e}=re;if(!e||!e.now){so="none";return}let t=3600*1e3,r=e.now(),n=Date.now(),i=e.timeOrigin?Math.abs(e.timeOrigin+r-n):t,s=i<t,o=e.timing&&e.timing.navigationStart,c=typeof o=="number"?Math.abs(o+r-n):t,u=c<t;return s||u?i<=c?(so="timeOrigin",e.timeOrigin):(so="navigationStart",o):(so="dateNow",n)})();function wl(e){let t="fetch";wt(t,e),It(t,iy)}function iy(){Sl()&&Be(re,"fetch",function(e){return function(...t){let{method:r,url:n}=oy(t),i={args:t,fetchData:{method:r,url:n},startTimestamp:Bt()*1e3};et("fetch",b({},i));let s=new Error().stack;return e.apply(re,t).then(o=>{let c=te(b({},i),{endTimestamp:Bt()*1e3,response:o});return et("fetch",c),o},o=>{let c=te(b({},i),{endTimestamp:Bt()*1e3,error:o});throw et("fetch",c),an(o)&&o.stack===void 0&&(o.stack=s,bt(o,"framesToPop",1)),o})}})}function bl(e,t){return!!e&&typeof e=="object"&&!!e[t]}function Vf(e){return typeof e=="string"?e:e?bl(e,"url")?e.url:e.toString?e.toString():"":""}function oy(e){if(e.length===0)return{method:"GET",url:""};if(e.length===2){let[r,n]=e;return{url:Vf(r),method:bl(n,"method")?String(n.method).toUpperCase():"GET"}}let t=e[0];return{url:Vf(t),method:bl(t,"method")?String(t.method).toUpperCase():"GET"}}var vs=null;function Il(e){let t="error";wt(t,e),It(t,sy)}function sy(){vs=re.onerror,re.onerror=function(e,t,r,n,i){return et("error",{column:n,error:i,line:r,msg:e,url:t}),vs&&!vs.__SENTRY_LOADER__?vs.apply(this,arguments):!1},re.onerror.__SENTRY_INSTRUMENTED__=!0}var Es=null;function Tl(e){let t="unhandledrejection";wt(t,e),It(t,ay)}function ay(){Es=re.onunhandledrejection,re.onunhandledrejection=function(e){return et("unhandledrejection",e),Es&&!Es.__SENTRY_LOADER__?Es.apply(this,arguments):!0},re.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}function Cl(){return"npm"}function Wf(){let e=typeof WeakSet=="function",t=e?new WeakSet:[];function r(i){if(e)return t.has(i)?!0:(t.add(i),!1);for(let s=0;s<t.length;s++)if(t[s]===i)return!0;return t.push(i),!1}function n(i){if(e)t.delete(i);else for(let s=0;s<t.length;s++)if(t[s]===i){t.splice(s,1);break}}return[r,n]}function nt(){let e=re,t=e.crypto||e.msCrypto,r=()=>Math.random()*16;try{if(t&&t.randomUUID)return t.randomUUID().replace(/-/g,"");t&&t.getRandomValues&&(r=()=>{let n=new Uint8Array(1);return t.getRandomValues(n),n[0]})}catch{}return("10000000100040008000"+1e11).replace(/[018]/g,n=>(n^(r()&15)>>n/4).toString(16))}function Gf(e){return e.exception&&e.exception.values?e.exception.values[0]:void 0}function nr(e){let{message:t,event_id:r}=e;if(t)return t;let n=Gf(e);return n?n.type&&n.value?`${n.type}: ${n.value}`:n.type||n.value||r||"<unknown>":r||"<unknown>"}function ci(e,t,r){let n=e.exception=e.exception||{},i=n.values=n.values||[],s=i[0]=i[0]||{};s.value||(s.value=t||""),s.type||(s.type=r||"Error")}function Nr(e,t){let r=Gf(e);if(!r)return;let n={type:"generic",handled:!0},i=r.mechanism;if(r.mechanism=b(b(b({},n),i),t),t&&"data"in t){let s=b(b({},i&&i.data),t.data);r.mechanism.data=s}}function _s(e){if(e&&e.__sentry_captured__)return!0;try{bt(e,"__sentry_captured__",!0)}catch{}return!1}function Ss(e){return Array.isArray(e)?e:[e]}function ir(e,t=100,r=1/0){try{return xl("",e,t,r)}catch(n){return{ERROR:`**non-serializable** (${n})`}}}function bs(e,t=3,r=100*1024){let n=ir(e,t);return py(n)>r?bs(e,t-1,r):n}function xl(e,t,r=1/0,n=1/0,i=Wf()){let[s,o]=i;if(t==null||["number","boolean","string"].includes(typeof t)&&!Number.isNaN(t))return t;let c=cy(e,t);if(!c.startsWith("[object "))return c;if(t.__sentry_skip_normalization__)return t;let u=typeof t.__sentry_override_normalization_depth__=="number"?t.__sentry_override_normalization_depth__:r;if(u===0)return c.replace("object ","");if(s(t))return"[Circular ~]";let d=t;if(d&&typeof d.toJSON=="function")try{let E=d.toJSON();return xl("",E,u-1,n,i)}catch{}let m=Array.isArray(t)?[]:{},h=0,y=ds(t);for(let E in y){if(!Object.prototype.hasOwnProperty.call(y,E))continue;if(h>=n){m[E]="[MaxProperties ~]";break}let v=y[E];m[E]=xl(E,v,u-1,n,i),h++}return o(t),m}function cy(e,t){try{if(e==="domain"&&t&&typeof t=="object"&&t._events)return"[Domain]";if(e==="domainEmitter")return"[DomainEmitter]";if(typeof global<"u"&&t===global)return"[Global]";if(typeof window<"u"&&t===window)return"[Window]";if(typeof document<"u"&&t===document)return"[Document]";if(ro(t))return"[VueViewModel]";if(cl(t))return"[SyntheticEvent]";if(typeof t=="number"&&t!==t)return"[NaN]";if(typeof t=="function")return`[Function: ${Gt(t)}]`;if(typeof t=="symbol")return`[${String(t)}]`;if(typeof t=="bigint")return`[BigInt: ${String(t)}]`;let r=ly(t);return/^HTML(\w*)Element$/.test(r)?`[HTMLElement: ${r}]`:`[object ${r}]`}catch(r){return`**non-serializable** (${r})`}}function ly(e){let t=Object.getPrototypeOf(e);return t?t.constructor.name:"null prototype"}function uy(e){return~-encodeURI(e).split(/%..|./).length}function py(e){return uy(JSON.stringify(e))}var Or;(function(e){e[e.PENDING=0]="PENDING";let t=1;e[e.RESOLVED=t]="RESOLVED";let r=2;e[e.REJECTED=r]="REJECTED"})(Or||(Or={}));function Yt(e){return new or(t=>{t(e)})}function Gr(e){return new or((t,r)=>{r(e)})}var or=class Wn{constructor(t){Wn.prototype.__init.call(this),Wn.prototype.__init2.call(this),Wn.prototype.__init3.call(this),Wn.prototype.__init4.call(this),this._state=Or.PENDING,this._handlers=[];try{t(this._resolve,this._reject)}catch(r){this._reject(r)}}then(t,r){return new Wn((n,i)=>{this._handlers.push([!1,s=>{if(!t)n(s);else try{n(t(s))}catch(o){i(o)}},s=>{if(!r)i(s);else try{n(r(s))}catch(o){i(o)}}]),this._executeHandlers()})}catch(t){return this.then(r=>r,t)}finally(t){return new Wn((r,n)=>{let i,s;return this.then(o=>{s=!1,i=o,t&&t()},o=>{s=!0,i=o,t&&t()}).then(()=>{if(s){n(i);return}r(i)})})}__init(){this._resolve=t=>{this._setResult(Or.RESOLVED,t)}}__init2(){this._reject=t=>{this._setResult(Or.REJECTED,t)}}__init3(){this._setResult=(t,r)=>{if(this._state===Or.PENDING){if(Ar(r)){r.then(this._resolve,this._reject);return}this._state=t,this._value=r,this._executeHandlers()}}}__init4(){this._executeHandlers=()=>{if(this._state===Or.PENDING)return;let t=this._handlers.slice();this._handlers=[],t.forEach(r=>{r[0]||(this._state===Or.RESOLVED&&r[1](this._value),this._state===Or.REJECTED&&r[2](this._value),r[0]=!0)})}}};function Dl(e){let t=[];function r(){return e===void 0||t.length<e}function n(o){return t.splice(t.indexOf(o),1)[0]||Promise.resolve(void 0)}function i(o){if(!r())return Gr(new mt("Not adding Promise because buffer limit was reached."));let c=o();return t.indexOf(c)===-1&&t.push(c),c.then(()=>n(c)).then(null,()=>n(c).then(null,()=>{})),c}function s(o){return new or((c,u)=>{let d=t.length;if(!d)return c(!0);let m=setTimeout(()=>{o&&o>0&&c(!1)},o);t.forEach(h=>{Yt(h).then(()=>{--d||(clearTimeout(m),c(!0))},u)})})}return{$:t,add:i,drain:s}}function ao(e){if(!e)return{};let t=e.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!t)return{};let r=t[6]||"",n=t[8]||"";return{host:t[4],path:t[5],protocol:t[2],search:r,hash:n,relative:t[5]+r+n}}var Yf=["fatal","error","warning","log","info","debug"];function Rl(e){return e==="warn"?"warning":Yf.includes(e)?e:"log"}var qf="sentry-",Kf=/^sentry-/;function Al(e){let t=Xf(e);if(!t)return;let r=Object.entries(t).reduce((n,[i,s])=>{if(i.match(Kf)){let o=i.slice(qf.length);n[o]=s}return n},{});if(Object.keys(r).length>0)return r}function Xf(e){if(!(!e||!St(e)&&!Array.isArray(e)))return Array.isArray(e)?e.reduce((t,r)=>{let n=zf(r);return Object.entries(n).forEach(([i,s])=>{t[i]=s}),t},{}):zf(e)}function zf(e){return e.split(",").map(t=>t.split("=").map(r=>decodeURIComponent(r.trim()))).reduce((t,[r,n])=>(r&&n&&(t[r]=n),t),{})}function Er(e,t=[]){return[e,t]}function Ol(e,t){let[r,n]=e;return[r,[...n,t]]}function ws(e,t){let r=e[1];for(let n of r){let i=n[0].type;if(t(n,i))return!0}return!1}function Nl(e){return re.__SENTRY__&&re.__SENTRY__.encodePolyfill?re.__SENTRY__.encodePolyfill(e):new TextEncoder().encode(e)}function Pl(e){let[t,r]=e,n=JSON.stringify(t);function i(s){typeof n=="string"?n=typeof s=="string"?n+s:[Nl(n),s]:n.push(typeof s=="string"?Nl(s):s)}for(let s of r){let[o,c]=s;if(i(`
|
|
24
24
|
${JSON.stringify(o)}
|
|
25
|
-
`),typeof c=="string"||c instanceof Uint8Array)i(c);else{let u;try{u=JSON.stringify(c)}catch{u=JSON.stringify(ir(c))}i(u)}}return typeof n=="string"?n:fy(n)}function fy(e){let t=e.reduce((i,s)=>i+s.length,0),r=new Uint8Array(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return r}function Ll(e){let t=typeof e.data=="string"?Nl(e.data):e.data;return[Ze({type:"attachment",length:t.length,filename:e.filename,content_type:e.contentType,attachment_type:e.attachmentType}),t]}var my={session:"session",sessions:"session",attachment:"attachment",transaction:"transaction",event:"error",client_report:"internal",user_report:"default",profile:"profile",profile_chunk:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor",feedback:"feedback",span:"span",statsd:"metric_bucket"};function Is(e){return my[e]}function Ts(e){if(!e||!e.sdk)return;let{name:t,version:r}=e.sdk;return{name:t,version:r}}function Bl(e,t,r,n){let i=e.sdkProcessingMetadata&&e.sdkProcessingMetadata.dynamicSamplingContext;return w(w(w({event_id:e.event_id,sent_at:new Date().toISOString()},t&&{sdk:t}),!!r&&n&&{dsn:gr(n)}),i&&{trace:Ze(w({},i))})}function Ul(e,t,r){let n=[{type:"client_report"},{timestamp:r||vr(),discarded_events:e}];return Er(t?{dsn:t}:{},[n])}function Jf(e,t=Date.now()){let r=parseInt(`${e}`,10);if(!isNaN(r))return r*1e3;let n=Date.parse(`${e}`);return isNaN(n)?6e4:n-t}function Qf(e,t){return e[t]||e.all||0}function Ml(e,t,r=Date.now()){return Qf(e,t)>r}function kl(e,{statusCode:t,headers:r},n=Date.now()){let i=w({},e),s=r&&r["x-sentry-rate-limits"],o=r&&r["retry-after"];if(s)for(let c of s.trim().split(",")){let[u,d,,,m]=c.split(":",5),h=parseInt(u,10),y=(isNaN(h)?60:h)*1e3;if(!d)i.all=n+y;else for(let E of d.split(";"))E==="metric_bucket"?(!m||m.split(";").includes("custom"))&&(i[E]=n+y):i[E]=n+y}else o?i.all=n+Jf(o,n):t===429&&(i.all=n+60*1e3);return i}function Cs(){return{traceId:nt(),spanId:nt().substring(16)}}var xs=re;function Fl(){let e=xs.chrome,t=e&&e.app&&e.app.runtime,r="history"in xs&&!!xs.history.pushState&&!!xs.history.replaceState;return!t&&r}var Re=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function pn(){return co(re),re}function co(e){let t=e.__SENTRY__=e.__SENTRY__||{};return t.version=t.version||Wt,t[Wt]=t[Wt]||{}}function lo(e,t={}){if(t.user&&(!e.ipAddress&&t.user.ip_address&&(e.ipAddress=t.user.ip_address),!e.did&&!t.did&&(e.did=t.user.id||t.user.email||t.user.username)),e.timestamp=t.timestamp||Ut(),t.abnormal_mechanism&&(e.abnormal_mechanism=t.abnormal_mechanism),t.ignoreDuration&&(e.ignoreDuration=t.ignoreDuration),t.sid&&(e.sid=t.sid.length===32?t.sid:nt()),t.init!==void 0&&(e.init=t.init),!e.did&&t.did&&(e.did=`${t.did}`),typeof t.started=="number"&&(e.started=t.started),e.ignoreDuration)e.duration=void 0;else if(typeof t.duration=="number")e.duration=t.duration;else{let r=e.timestamp-e.started;e.duration=r>=0?r:0}t.release&&(e.release=t.release),t.environment&&(e.environment=t.environment),!e.ipAddress&&t.ipAddress&&(e.ipAddress=t.ipAddress),!e.userAgent&&t.userAgent&&(e.userAgent=t.userAgent),typeof t.errors=="number"&&(e.errors=t.errors),t.status&&(e.status=t.status)}var Hl="_sentrySpan";function $l(e,t){t?wt(e,Hl,t):delete e[Hl]}function jl(e){return e[Hl]}var gy=100,Vl=class Ah{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext=Cs()}clone(){let t=new Ah;return t._breadcrumbs=[...this._breadcrumbs],t._tags=w({},this._tags),t._extra=w({},this._extra),t._contexts=w({},this._contexts),t._user=this._user,t._level=this._level,t._session=this._session,t._transactionName=this._transactionName,t._fingerprint=this._fingerprint,t._eventProcessors=[...this._eventProcessors],t._requestSession=this._requestSession,t._attachments=[...this._attachments],t._sdkProcessingMetadata=w({},this._sdkProcessingMetadata),t._propagationContext=w({},this._propagationContext),t._client=this._client,t._lastEventId=this._lastEventId,$l(t,jl(this)),t}setClient(t){this._client=t}setLastEventId(t){this._lastEventId=t}getClient(){return this._client}lastEventId(){return this._lastEventId}addScopeListener(t){this._scopeListeners.push(t)}addEventProcessor(t){return this._eventProcessors.push(t),this}setUser(t){return this._user=t||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this._session&&lo(this._session,{user:t}),this._notifyScopeListeners(),this}getUser(){return this._user}getRequestSession(){return this._requestSession}setRequestSession(t){return this._requestSession=t,this}setTags(t){return this._tags=w(w({},this._tags),t),this._notifyScopeListeners(),this}setTag(t,r){return this._tags=te(w({},this._tags),{[t]:r}),this._notifyScopeListeners(),this}setExtras(t){return this._extra=w(w({},this._extra),t),this._notifyScopeListeners(),this}setExtra(t,r){return this._extra=te(w({},this._extra),{[t]:r}),this._notifyScopeListeners(),this}setFingerprint(t){return this._fingerprint=t,this._notifyScopeListeners(),this}setLevel(t){return this._level=t,this._notifyScopeListeners(),this}setTransactionName(t){return this._transactionName=t,this._notifyScopeListeners(),this}setContext(t,r){return r===null?delete this._contexts[t]:this._contexts[t]=r,this._notifyScopeListeners(),this}setSession(t){return t?this._session=t:delete this._session,this._notifyScopeListeners(),this}getSession(){return this._session}update(t){if(!t)return this;let r=typeof t=="function"?t(this):t,[n,i]=r instanceof dt?[r.getScopeData(),r.getRequestSession()]:rr(r)?[t,t.requestSession]:[],{tags:s,extra:o,user:c,contexts:u,level:d,fingerprint:m=[],propagationContext:h}=n||{};return this._tags=w(w({},this._tags),s),this._extra=w(w({},this._extra),o),this._contexts=w(w({},this._contexts),u),c&&Object.keys(c).length&&(this._user=c),d&&(this._level=d),m.length&&(this._fingerprint=m),h&&(this._propagationContext=h),i&&(this._requestSession=i),this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._requestSession=void 0,this._session=void 0,$l(this,void 0),this._attachments=[],this._propagationContext=Cs(),this._notifyScopeListeners(),this}addBreadcrumb(t,r){let n=typeof r=="number"?r:gy;if(n<=0)return this;let i=w({timestamp:vr()},t),s=this._breadcrumbs;return s.push(i),this._breadcrumbs=s.length>n?s.slice(-n):s,this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(t){return this._attachments.push(t),this}clearAttachments(){return this._attachments=[],this}getScopeData(){return{breadcrumbs:this._breadcrumbs,attachments:this._attachments,contexts:this._contexts,tags:this._tags,extra:this._extra,user:this._user,level:this._level,fingerprint:this._fingerprint||[],eventProcessors:this._eventProcessors,propagationContext:this._propagationContext,sdkProcessingMetadata:this._sdkProcessingMetadata,transactionName:this._transactionName,span:jl(this)}}setSDKProcessingMetadata(t){return this._sdkProcessingMetadata=w(w({},this._sdkProcessingMetadata),t),this}setPropagationContext(t){return this._propagationContext=t,this}getPropagationContext(){return this._propagationContext}captureException(t,r){let n=r&&r.event_id?r.event_id:nt();if(!this._client)return K.warn("No client configured on scope - will not capture exception!"),n;let i=new Error("Sentry syntheticException");return this._client.captureException(t,te(w({originalException:t,syntheticException:i},r),{event_id:n}),this),n}captureMessage(t,r,n){let i=n&&n.event_id?n.event_id:nt();if(!this._client)return K.warn("No client configured on scope - will not capture message!"),i;let s=new Error(t);return this._client.captureMessage(t,r,te(w({originalException:t,syntheticException:s},n),{event_id:i}),this),i}captureEvent(t,r){let n=r&&r.event_id?r.event_id:nt();return this._client?(this._client.captureEvent(t,te(w({},r),{event_id:n}),this),n):(K.warn("No client configured on scope - will not capture event!"),n)}_notifyScopeListeners(){this._notifyingListeners||(this._notifyingListeners=!0,this._scopeListeners.forEach(t=>{t(this)}),this._notifyingListeners=!1)}},dt=Vl;function Zf(){return oi("defaultCurrentScope",()=>new dt)}function em(){return oi("defaultIsolationScope",()=>new dt)}var Wl=class{constructor(e,t){let r;e?r=e:r=new dt;let n;t?n=t:n=new dt,this._stack=[{scope:r}],this._isolationScope=n}withScope(e){let t=this._pushScope(),r;try{r=e(t)}catch(n){throw this._popScope(),n}return Ar(r)?r.then(n=>(this._popScope(),n),n=>{throw this._popScope(),n}):(this._popScope(),r)}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStackTop(){return this._stack[this._stack.length-1]}_pushScope(){let e=this.getScope().clone();return this._stack.push({client:this.getClient(),scope:e}),e}_popScope(){return this._stack.length<=1?!1:!!this._stack.pop()}};function li(){let e=pn(),t=co(e);return t.stack=t.stack||new Wl(Zf(),em())}function yy(e){return li().withScope(e)}function vy(e,t){let r=li();return r.withScope(()=>(r.getStackTop().scope=e,t(e)))}function tm(e){return li().withScope(()=>e(li().getIsolationScope()))}function rm(){return{withIsolationScope:tm,withScope:yy,withSetScope:vy,withSetIsolationScope:(e,t)=>tm(t),getCurrentScope:()=>li().getScope(),getIsolationScope:()=>li().getIsolationScope()}}function Ds(e){let t=co(e);return t.acs?t.acs:rm()}function fn(){let e=pn();return Ds(e).getCurrentScope()}function mn(){let e=pn();return Ds(e).getIsolationScope()}function Rs(){return oi("globalScope",()=>new dt)}function As(...e){let t=pn(),r=Ds(t);if(e.length===2){let[n,i]=e;return n?r.withSetScope(n,i):r.withScope(i)}return r.withScope(e[0])}function Fe(){return fn().getClient()}var Ey="_sentryMetrics";function nm(e){let t=e[Ey];if(!t)return;let r={};for(let[,[n,i]]of t)(r[n]||(r[n]=[])).push(Ze(i));return r}var Gl="sentry.source",Yl="sentry.sample_rate",zl="sentry.op",ql="sentry.origin",_y=1;function sm(e){let{spanId:t,traceId:r}=e.spanContext(),{parent_span_id:n}=dn(e);return Ze({parent_span_id:n,span_id:t,trace_id:r})}function im(e){return typeof e=="number"?om(e):Array.isArray(e)?e[0]+e[1]/1e9:e instanceof Date?om(e.getTime()):Ut()}function om(e){return e>9999999999?e/1e3:e}function dn(e){if(wy(e))return e.getSpanJSON();try{let{spanId:t,traceId:r}=e.spanContext();if(Sy(e)){let{attributes:n,startTime:i,name:s,endTime:o,parentSpanId:c,status:u}=e;return Ze({span_id:t,trace_id:r,data:n,description:s,parent_span_id:c,start_timestamp:im(i),timestamp:im(o)||void 0,status:by(u),op:n[zl],origin:n[ql],_metrics_summary:nm(e)})}return{span_id:t,trace_id:r}}catch{return{}}}function Sy(e){let t=e;return!!t.attributes&&!!t.startTime&&!!t.name&&!!t.endTime&&!!t.status}function wy(e){return typeof e.getSpanJSON=="function"}function am(e){let{traceFlags:t}=e.spanContext();return t===_y}function by(e){if(!(!e||e.code===0))return e.code===1?"ok":e.message||"unknown_error"}var Iy="_sentryRootSpan";function uo(e){return e[Iy]||e}var Ns="production",Ty="_frozenDsc";function Kl(e,t){let r=t.getOptions(),{publicKey:n}=t.getDsn()||{},i=Ze({environment:r.environment||Ns,release:r.release,public_key:n,trace_id:e});return t.emit("createDsc",i),i}function cm(e){let t=Fe();if(!t)return{};let r=Kl(dn(e).trace_id||"",t),n=uo(e),i=n[Ty];if(i)return i;let s=n.spanContext().traceState,o=s&&s.get("sentry.dsc"),c=o&&Al(o);if(c)return c;let u=dn(n),d=u.data||{},m=d[Yl];m!=null&&(r.sample_rate=`${m}`);let h=d[Gl],y=u.description;return h!=="url"&&y&&(r.transaction=y),r.sampled=String(am(n)),t.emit("createDsc",r,n),r}function lm(e){if(typeof e=="boolean")return Number(e);let t=typeof e=="string"?parseFloat(e):e;if(typeof t!="number"||isNaN(t)||t<0||t>1){Re&&K.warn(`[Tracing] Given sample rate is invalid. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(e)} of type ${JSON.stringify(typeof e)}.`);return}return t}function Cy(e,t){return t&&(e.sdk=e.sdk||{},e.sdk.name=e.sdk.name||t.name,e.sdk.version=e.sdk.version||t.version,e.sdk.integrations=[...e.sdk.integrations||[],...t.integrations||[]],e.sdk.packages=[...e.sdk.packages||[],...t.packages||[]]),e}function um(e,t,r,n){let i=Ts(r),s=w(w({sent_at:new Date().toISOString()},i&&{sdk:i}),!!n&&t&&{dsn:gr(t)}),o="aggregates"in e?[{type:"sessions"},e]:[{type:"session"},e.toJSON()];return Er(s,[o])}function pm(e,t,r,n){let i=Ts(r),s=e.type&&e.type!=="replay_event"?e.type:"event";Cy(e,r&&r.sdk);let o=Bl(e,i,n,t);return delete e.sdkProcessingMetadata,Er(o,[[{type:s},e]])}function Os(e,t,r,n=0){return new or((i,s)=>{let o=e[n];if(t===null||typeof o!="function")i(t);else{let c=o(w({},t),r);Re&&o.id&&c===null&&K.log(`Event processor "${o.id}" dropped event`),Ar(c)?c.then(u=>Os(e,u,r,n+1).then(i)).then(null,s):Os(e,c,r,n+1).then(i).then(null,s)}})}function fm(e,t){let{fingerprint:r,span:n,breadcrumbs:i,sdkProcessingMetadata:s}=t;xy(e,t),n&&Ay(e,n),Ny(e,r),Dy(e,i),Ry(e,s)}function Xl(e,t){let{extra:r,tags:n,user:i,contexts:s,level:o,sdkProcessingMetadata:c,breadcrumbs:u,fingerprint:d,eventProcessors:m,attachments:h,propagationContext:y,transactionName:E,span:v}=t;po(e,"extra",r),po(e,"tags",n),po(e,"user",i),po(e,"contexts",s),po(e,"sdkProcessingMetadata",c),o&&(e.level=o),E&&(e.transactionName=E),v&&(e.span=v),u.length&&(e.breadcrumbs=[...e.breadcrumbs,...u]),d.length&&(e.fingerprint=[...e.fingerprint,...d]),m.length&&(e.eventProcessors=[...e.eventProcessors,...m]),h.length&&(e.attachments=[...e.attachments,...h]),e.propagationContext=w(w({},e.propagationContext),y)}function po(e,t,r){if(r&&Object.keys(r).length){e[t]=w({},e[t]);for(let n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[t][n]=r[n])}}function xy(e,t){let{extra:r,tags:n,user:i,contexts:s,level:o,transactionName:c}=t,u=Ze(r);u&&Object.keys(u).length&&(e.extra=w(w({},u),e.extra));let d=Ze(n);d&&Object.keys(d).length&&(e.tags=w(w({},d),e.tags));let m=Ze(i);m&&Object.keys(m).length&&(e.user=w(w({},m),e.user));let h=Ze(s);h&&Object.keys(h).length&&(e.contexts=w(w({},h),e.contexts)),o&&(e.level=o),c&&e.type!=="transaction"&&(e.transaction=c)}function Dy(e,t){let r=[...e.breadcrumbs||[],...t];e.breadcrumbs=r.length?r:void 0}function Ry(e,t){e.sdkProcessingMetadata=w(w({},e.sdkProcessingMetadata),t)}function Ay(e,t){e.contexts=w({trace:sm(t)},e.contexts),e.sdkProcessingMetadata=w({dynamicSamplingContext:cm(t)},e.sdkProcessingMetadata);let r=uo(t),n=dn(r).description;n&&!e.transaction&&e.type==="transaction"&&(e.transaction=n)}function Ny(e,t){e.fingerprint=e.fingerprint?Ss(e.fingerprint):[],t&&(e.fingerprint=e.fingerprint.concat(t)),e.fingerprint&&!e.fingerprint.length&&delete e.fingerprint}function dm(e,t,r,n,i,s){let{normalizeDepth:o=3,normalizeMaxBreadth:c=1e3}=e,u=te(w({},t),{event_id:t.event_id||r.event_id||nt(),timestamp:t.timestamp||vr()}),d=r.integrations||e.integrations.map(_=>_.name);Oy(u,e),By(u,d),i&&i.emit("applyFrameMetadata",t),t.type===void 0&&Py(u,e.stackParser);let m=My(n,r.captureContext);r.mechanism&&Nr(u,r.mechanism);let h=i?i.getEventProcessors():[],y=Rs().getScopeData();if(s){let _=s.getScopeData();Xl(y,_)}if(m){let _=m.getScopeData();Xl(y,_)}let E=[...r.attachments||[],...y.attachments];E.length&&(r.attachments=E),fm(u,y);let v=[...h,...y.eventProcessors];return Os(v,u,r).then(_=>(_&&Ly(_),typeof o=="number"&&o>0?Uy(_,o,c):_))}function Oy(e,t){let{environment:r,release:n,dist:i,maxValueLength:s=250}=t;"environment"in e||(e.environment="environment"in t?r:Ns),e.release===void 0&&n!==void 0&&(e.release=n),e.dist===void 0&&i!==void 0&&(e.dist=i),e.message&&(e.message=dr(e.message,s));let o=e.exception&&e.exception.values&&e.exception.values[0];o&&o.value&&(o.value=dr(o.value,s));let c=e.request;c&&c.url&&(c.url=dr(c.url,s))}var mm=new WeakMap;function Py(e,t){let r=re._sentryDebugIds;if(!r)return;let n,i=mm.get(t);i?n=i:(n=new Map,mm.set(t,n));let s=Object.entries(r).reduce((o,[c,u])=>{let d,m=n.get(c);m?d=m:(d=t(c),n.set(c,d));for(let h=d.length-1;h>=0;h--){let y=d[h];if(y.filename){o[y.filename]=u;break}}return o},{});try{e.exception.values.forEach(o=>{o.stacktrace.frames.forEach(c=>{c.filename&&(c.debug_id=s[c.filename])})})}catch{}}function Ly(e){let t={};try{e.exception.values.forEach(n=>{n.stacktrace.frames.forEach(i=>{i.debug_id&&(i.abs_path?t[i.abs_path]=i.debug_id:i.filename&&(t[i.filename]=i.debug_id),delete i.debug_id)})})}catch{}if(Object.keys(t).length===0)return;e.debug_meta=e.debug_meta||{},e.debug_meta.images=e.debug_meta.images||[];let r=e.debug_meta.images;Object.entries(t).forEach(([n,i])=>{r.push({type:"sourcemap",code_file:n,debug_id:i})})}function By(e,t){t.length>0&&(e.sdk=e.sdk||{},e.sdk.integrations=[...e.sdk.integrations||[],...t])}function Uy(e,t,r){if(!e)return null;let n=w(w(w(w(w({},e),e.breadcrumbs&&{breadcrumbs:e.breadcrumbs.map(i=>w(w({},i),i.data&&{data:ir(i.data,t,r)}))}),e.user&&{user:ir(e.user,t,r)}),e.contexts&&{contexts:ir(e.contexts,t,r)}),e.extra&&{extra:ir(e.extra,t,r)});return e.contexts&&e.contexts.trace&&n.contexts&&(n.contexts.trace=e.contexts.trace,e.contexts.trace.data&&(n.contexts.trace.data=ir(e.contexts.trace.data,t,r))),e.spans&&(n.spans=e.spans.map(i=>w(w({},i),i.data&&{data:ir(i.data,t,r)}))),n}function My(e,t){if(!t)return e;let r=e?e.clone():new dt;return r.update(t),r}function hm(e){if(e)return ky(e)?{captureContext:e}:Hy(e)?{captureContext:e}:e}function ky(e){return e instanceof dt||typeof e=="function"}var Fy=["user","level","extra","contexts","tags","fingerprint","requestSession","propagationContext"];function Hy(e){return Object.keys(e).some(t=>Fy.includes(t))}function Ps(e,t){return fn().captureException(e,hm(t))}function fo(e,t){return fn().captureEvent(e,t)}var $y="7";function jy(e){let t=e.protocol?`${e.protocol}:`:"",r=e.port?`:${e.port}`:"";return`${t}//${e.host}${r}${e.path?`/${e.path}`:""}/api/`}function Vy(e){return`${jy(e)}${e.projectId}/envelope/`}function Wy(e,t){return hl(w({sentry_key:e.publicKey,sentry_version:$y},t&&{sentry_client:`${t.name}/${t.version}`}))}function ym(e,t,r){return t||`${Vy(e)}?${Wy(e,r)}`}var vm=[];function Em(e,t){let r={};return t.forEach(n=>{n&&Ql(e,n,r)}),r}function Jl(e,t){for(let r of t)r&&r.afterAllSetup&&r.afterAllSetup(e)}function Ql(e,t,r){if(r[t.name]){Re&&K.log(`Integration skipped because it was already installed: ${t.name}`);return}if(r[t.name]=t,vm.indexOf(t.name)===-1&&typeof t.setupOnce=="function"&&(t.setupOnce(),vm.push(t.name)),t.setup&&typeof t.setup=="function"&&t.setup(e),typeof t.preprocessEvent=="function"){let n=t.preprocessEvent.bind(t);e.on("preprocessEvent",(i,s)=>n(i,s,e))}if(typeof t.processEvent=="function"){let n=t.processEvent.bind(t),i=Object.assign((s,o)=>n(s,o,e),{id:t.name});e.addEventProcessor(i)}Re&&K.log(`Integration installed: ${t.name}`)}var _m="Not capturing exception because it's already been captured.",mo=class{constructor(e){if(this._options=e,this._integrations={},this._numProcessing=0,this._outcomes={},this._hooks={},this._eventProcessors=[],e.dsn?this._dsn=fs(e.dsn):Re&&K.warn("No DSN provided, client will not send events."),this._dsn){let t=ym(this._dsn,e.tunnel,e._metadata?e._metadata.sdk:void 0);this._transport=e.transport(te(w({tunnel:this._options.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this)},e.transportOptions),{url:t}))}}captureException(e,t,r){let n=nt();if(_s(e))return Re&&K.log(_m),n;let i=w({event_id:n},t);return this._process(this.eventFromException(e,i).then(s=>this._captureEvent(s,i,r))),i.event_id}captureMessage(e,t,r,n){let i=w({event_id:nt()},r),s=ni(e)?e:String(e),o=cn(e)?this.eventFromMessage(s,t,i):this.eventFromException(e,i);return this._process(o.then(c=>this._captureEvent(c,i,n))),i.event_id}captureEvent(e,t,r){let n=nt();if(t&&t.originalException&&_s(t.originalException))return Re&&K.log(_m),n;let i=w({event_id:n},t),s=(e.sdkProcessingMetadata||{}).capturedSpanScope;return this._process(this._captureEvent(e,i,s||r)),i.event_id}captureSession(e){typeof e.release!="string"?Re&&K.warn("Discarded session because of missing or non-string release"):(this.sendSession(e),lo(e,{init:!1}))}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}flush(e){let t=this._transport;return t?(this.emit("flush"),this._isClientDoneProcessing(e).then(r=>t.flush(e).then(n=>r&&n))):Yt(!0)}close(e){return this.flush(e).then(t=>(this.getOptions().enabled=!1,this.emit("close"),t))}getEventProcessors(){return this._eventProcessors}addEventProcessor(e){this._eventProcessors.push(e)}init(){this._isEnabled()&&this._setupIntegrations()}getIntegrationByName(e){return this._integrations[e]}addIntegration(e){let t=this._integrations[e.name];Ql(this,e,this._integrations),t||Jl(this,[e])}sendEvent(e,t={}){this.emit("beforeSendEvent",e,t);let r=pm(e,this._dsn,this._options._metadata,this._options.tunnel);for(let i of t.attachments||[])r=Ol(r,Ll(i));let n=this.sendEnvelope(r);n&&n.then(i=>this.emit("afterSendEvent",e,i),null)}sendSession(e){let t=um(e,this._dsn,this._options._metadata,this._options.tunnel);this.sendEnvelope(t)}recordDroppedEvent(e,t,r){if(this._options.sendClientReports){let n=`${e}:${t}`;Re&&K.log(`Adding outcome: "${n}"`),this._outcomes[n]=(this._outcomes[n]||0)+1}}on(e,t){let r=this._hooks[e]=this._hooks[e]||[];return r.push(t),()=>{let n=r.indexOf(t);n>-1&&r.splice(n,1)}}emit(e,...t){let r=this._hooks[e];r&&r.forEach(n=>n(...t))}sendEnvelope(e){return this.emit("beforeEnvelope",e),this._isEnabled()&&this._transport?this._transport.send(e).then(null,t=>(Re&&K.error("Error while sending event:",t),t)):(Re&&K.error("Transport disabled"),Yt({}))}_setupIntegrations(){let{integrations:e}=this._options;this._integrations=Em(this,e),Jl(this,e)}_updateSessionFromEvent(e,t){let r=!1,n=!1,i=t.exception&&t.exception.values;if(i){n=!0;for(let o of i){let c=o.mechanism;if(c&&c.handled===!1){r=!0;break}}}let s=e.status==="ok";(s&&e.errors===0||s&&r)&&(lo(e,te(w({},r&&{status:"crashed"}),{errors:e.errors||Number(n||r)})),this.captureSession(e))}_isClientDoneProcessing(e){return new or(t=>{let r=0,n=1,i=setInterval(()=>{this._numProcessing==0?(clearInterval(i),t(!0)):(r+=n,e&&r>=e&&(clearInterval(i),t(!1)))},n)})}_isEnabled(){return this.getOptions().enabled!==!1&&this._transport!==void 0}_prepareEvent(e,t,r,n=mn()){let i=this.getOptions(),s=Object.keys(this._integrations);return!t.integrations&&s.length>0&&(t.integrations=s),this.emit("preprocessEvent",e,t),e.type||n.setLastEventId(e.event_id||t.event_id),dm(i,e,t,r,this,n).then(o=>{if(o===null)return o;let c=w(w({},n.getPropagationContext()),r?r.getPropagationContext():void 0);if(!(o.contexts&&o.contexts.trace)&&c){let{traceId:u,spanId:d,parentSpanId:m,dsc:h}=c;o.contexts=w({trace:Ze({trace_id:u,span_id:d,parent_span_id:m})},o.contexts);let y=h||Kl(u,this);o.sdkProcessingMetadata=w({dynamicSamplingContext:y},o.sdkProcessingMetadata)}return o})}_captureEvent(e,t={},r){return this._processEvent(e,t,r).then(n=>n.event_id,n=>{if(Re){let i=n;i.logLevel==="log"?K.log(i.message):K.warn(i)}})}_processEvent(e,t,r){let n=this.getOptions(),{sampleRate:i}=n,s=Zl(e),o=Sm(e),c=e.type||"error",u=`before send for type \`${c}\``,d=typeof i>"u"?void 0:lm(i);if(o&&typeof d=="number"&&Math.random()>d)return this.recordDroppedEvent("sample_rate","error",e),Gr(new mt(`Discarding event because it's not included in the random sample (sampling rate = ${i})`,"log"));let m=c==="replay_event"?"replay":c,h=(e.sdkProcessingMetadata||{}).capturedSpanIsolationScope;return this._prepareEvent(e,t,r,h).then(y=>{if(y===null)throw this.recordDroppedEvent("event_processor",m,e),new mt("An event processor returned `null`, will not send event.","log");if(t.data&&t.data.__sentry__===!0)return y;let E=Yy(this,n,y,t);return Gy(E,u)}).then(y=>{if(y===null){if(this.recordDroppedEvent("before_send",m,e),Zl(e)){let _=1+(e.spans||[]).length;this._outcomes.span=(this._outcomes.span||0)+_}throw new mt(`${u} returned \`null\`, will not send event.`,"log")}let E=r&&r.getSession();!s&&E&&this._updateSessionFromEvent(E,y);let v=y.transaction_info;if(s&&v&&y.transaction!==e.transaction){let _="custom";y.transaction_info=te(w({},v),{source:_})}return this.sendEvent(y,t),y}).then(null,y=>{throw y instanceof mt?y:(this.captureException(y,{data:{__sentry__:!0},originalException:y}),new mt(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event.
|
|
26
|
-
Reason: ${y}`))})}_process(e){this._numProcessing++,e.then(t=>(this._numProcessing--,t),t=>(this._numProcessing--,t))}_clearOutcomes(){let e=this._outcomes;return this._outcomes={},Object.entries(e).map(([t,r])=>{let[n,i]=t.split(":");return{reason:n,category:i,quantity:r}})}};function Gy(e,t){let r=`${t} must return \`null\` or a valid event.`;if(Ar(e))return e.then(n=>{if(!rr(n)&&n!==null)throw new mt(r);return n},n=>{throw new mt(`${t} rejected with ${n}`)});if(!rr(e)&&e!==null)throw new mt(r);return e}function Yy(e,t,r,n){let{beforeSend:i,beforeSendTransaction:s,beforeSendSpan:o}=t;if(Sm(r)&&i)return i(r,n);if(Zl(r)){if(r.spans&&o){let c=[];for(let u of r.spans){let d=o(u);d?c.push(d):e.recordDroppedEvent("before_send","span")}r.spans=c}if(s)return s(r,n)}return r}function Sm(e){return e.type===void 0}function Zl(e){return e.type==="transaction"}var zy=64;function Ls(e,t,r=Dl(e.bufferSize||zy)){let n={},i=o=>r.drain(o);function s(o){let c=[];if(
|
|
25
|
+
`),typeof c=="string"||c instanceof Uint8Array)i(c);else{let u;try{u=JSON.stringify(c)}catch{u=JSON.stringify(ir(c))}i(u)}}return typeof n=="string"?n:fy(n)}function fy(e){let t=e.reduce((i,s)=>i+s.length,0),r=new Uint8Array(t),n=0;for(let i of e)r.set(i,n),n+=i.length;return r}function Ll(e){let t=typeof e.data=="string"?Nl(e.data):e.data;return[Ze({type:"attachment",length:t.length,filename:e.filename,content_type:e.contentType,attachment_type:e.attachmentType}),t]}var my={session:"session",sessions:"session",attachment:"attachment",transaction:"transaction",event:"error",client_report:"internal",user_report:"default",profile:"profile",profile_chunk:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor",feedback:"feedback",span:"span",statsd:"metric_bucket"};function Is(e){return my[e]}function Ts(e){if(!e||!e.sdk)return;let{name:t,version:r}=e.sdk;return{name:t,version:r}}function Ml(e,t,r,n){let i=e.sdkProcessingMetadata&&e.sdkProcessingMetadata.dynamicSamplingContext;return b(b(b({event_id:e.event_id,sent_at:new Date().toISOString()},t&&{sdk:t}),!!r&&n&&{dsn:gr(n)}),i&&{trace:Ze(b({},i))})}function Bl(e,t,r){let n=[{type:"client_report"},{timestamp:r||vr(),discarded_events:e}];return Er(t?{dsn:t}:{},[n])}function Jf(e,t=Date.now()){let r=parseInt(`${e}`,10);if(!isNaN(r))return r*1e3;let n=Date.parse(`${e}`);return isNaN(n)?6e4:n-t}function Qf(e,t){return e[t]||e.all||0}function Ul(e,t,r=Date.now()){return Qf(e,t)>r}function kl(e,{statusCode:t,headers:r},n=Date.now()){let i=b({},e),s=r&&r["x-sentry-rate-limits"],o=r&&r["retry-after"];if(s)for(let c of s.trim().split(",")){let[u,d,,,m]=c.split(":",5),h=parseInt(u,10),y=(isNaN(h)?60:h)*1e3;if(!d)i.all=n+y;else for(let E of d.split(";"))E==="metric_bucket"?(!m||m.split(";").includes("custom"))&&(i[E]=n+y):i[E]=n+y}else o?i.all=n+Jf(o,n):t===429&&(i.all=n+60*1e3);return i}function Cs(){return{traceId:nt(),spanId:nt().substring(16)}}var xs=re;function Fl(){let e=xs.chrome,t=e&&e.app&&e.app.runtime,r="history"in xs&&!!xs.history.pushState&&!!xs.history.replaceState;return!t&&r}var Re=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function pn(){return co(re),re}function co(e){let t=e.__SENTRY__=e.__SENTRY__||{};return t.version=t.version||Wt,t[Wt]=t[Wt]||{}}function lo(e,t={}){if(t.user&&(!e.ipAddress&&t.user.ip_address&&(e.ipAddress=t.user.ip_address),!e.did&&!t.did&&(e.did=t.user.id||t.user.email||t.user.username)),e.timestamp=t.timestamp||Bt(),t.abnormal_mechanism&&(e.abnormal_mechanism=t.abnormal_mechanism),t.ignoreDuration&&(e.ignoreDuration=t.ignoreDuration),t.sid&&(e.sid=t.sid.length===32?t.sid:nt()),t.init!==void 0&&(e.init=t.init),!e.did&&t.did&&(e.did=`${t.did}`),typeof t.started=="number"&&(e.started=t.started),e.ignoreDuration)e.duration=void 0;else if(typeof t.duration=="number")e.duration=t.duration;else{let r=e.timestamp-e.started;e.duration=r>=0?r:0}t.release&&(e.release=t.release),t.environment&&(e.environment=t.environment),!e.ipAddress&&t.ipAddress&&(e.ipAddress=t.ipAddress),!e.userAgent&&t.userAgent&&(e.userAgent=t.userAgent),typeof t.errors=="number"&&(e.errors=t.errors),t.status&&(e.status=t.status)}var Hl="_sentrySpan";function $l(e,t){t?bt(e,Hl,t):delete e[Hl]}function jl(e){return e[Hl]}var gy=100,Vl=class Ah{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext=Cs()}clone(){let t=new Ah;return t._breadcrumbs=[...this._breadcrumbs],t._tags=b({},this._tags),t._extra=b({},this._extra),t._contexts=b({},this._contexts),t._user=this._user,t._level=this._level,t._session=this._session,t._transactionName=this._transactionName,t._fingerprint=this._fingerprint,t._eventProcessors=[...this._eventProcessors],t._requestSession=this._requestSession,t._attachments=[...this._attachments],t._sdkProcessingMetadata=b({},this._sdkProcessingMetadata),t._propagationContext=b({},this._propagationContext),t._client=this._client,t._lastEventId=this._lastEventId,$l(t,jl(this)),t}setClient(t){this._client=t}setLastEventId(t){this._lastEventId=t}getClient(){return this._client}lastEventId(){return this._lastEventId}addScopeListener(t){this._scopeListeners.push(t)}addEventProcessor(t){return this._eventProcessors.push(t),this}setUser(t){return this._user=t||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this._session&&lo(this._session,{user:t}),this._notifyScopeListeners(),this}getUser(){return this._user}getRequestSession(){return this._requestSession}setRequestSession(t){return this._requestSession=t,this}setTags(t){return this._tags=b(b({},this._tags),t),this._notifyScopeListeners(),this}setTag(t,r){return this._tags=te(b({},this._tags),{[t]:r}),this._notifyScopeListeners(),this}setExtras(t){return this._extra=b(b({},this._extra),t),this._notifyScopeListeners(),this}setExtra(t,r){return this._extra=te(b({},this._extra),{[t]:r}),this._notifyScopeListeners(),this}setFingerprint(t){return this._fingerprint=t,this._notifyScopeListeners(),this}setLevel(t){return this._level=t,this._notifyScopeListeners(),this}setTransactionName(t){return this._transactionName=t,this._notifyScopeListeners(),this}setContext(t,r){return r===null?delete this._contexts[t]:this._contexts[t]=r,this._notifyScopeListeners(),this}setSession(t){return t?this._session=t:delete this._session,this._notifyScopeListeners(),this}getSession(){return this._session}update(t){if(!t)return this;let r=typeof t=="function"?t(this):t,[n,i]=r instanceof dt?[r.getScopeData(),r.getRequestSession()]:rr(r)?[t,t.requestSession]:[],{tags:s,extra:o,user:c,contexts:u,level:d,fingerprint:m=[],propagationContext:h}=n||{};return this._tags=b(b({},this._tags),s),this._extra=b(b({},this._extra),o),this._contexts=b(b({},this._contexts),u),c&&Object.keys(c).length&&(this._user=c),d&&(this._level=d),m.length&&(this._fingerprint=m),h&&(this._propagationContext=h),i&&(this._requestSession=i),this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._requestSession=void 0,this._session=void 0,$l(this,void 0),this._attachments=[],this._propagationContext=Cs(),this._notifyScopeListeners(),this}addBreadcrumb(t,r){let n=typeof r=="number"?r:gy;if(n<=0)return this;let i=b({timestamp:vr()},t),s=this._breadcrumbs;return s.push(i),this._breadcrumbs=s.length>n?s.slice(-n):s,this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(t){return this._attachments.push(t),this}clearAttachments(){return this._attachments=[],this}getScopeData(){return{breadcrumbs:this._breadcrumbs,attachments:this._attachments,contexts:this._contexts,tags:this._tags,extra:this._extra,user:this._user,level:this._level,fingerprint:this._fingerprint||[],eventProcessors:this._eventProcessors,propagationContext:this._propagationContext,sdkProcessingMetadata:this._sdkProcessingMetadata,transactionName:this._transactionName,span:jl(this)}}setSDKProcessingMetadata(t){return this._sdkProcessingMetadata=b(b({},this._sdkProcessingMetadata),t),this}setPropagationContext(t){return this._propagationContext=t,this}getPropagationContext(){return this._propagationContext}captureException(t,r){let n=r&&r.event_id?r.event_id:nt();if(!this._client)return K.warn("No client configured on scope - will not capture exception!"),n;let i=new Error("Sentry syntheticException");return this._client.captureException(t,te(b({originalException:t,syntheticException:i},r),{event_id:n}),this),n}captureMessage(t,r,n){let i=n&&n.event_id?n.event_id:nt();if(!this._client)return K.warn("No client configured on scope - will not capture message!"),i;let s=new Error(t);return this._client.captureMessage(t,r,te(b({originalException:t,syntheticException:s},n),{event_id:i}),this),i}captureEvent(t,r){let n=r&&r.event_id?r.event_id:nt();return this._client?(this._client.captureEvent(t,te(b({},r),{event_id:n}),this),n):(K.warn("No client configured on scope - will not capture event!"),n)}_notifyScopeListeners(){this._notifyingListeners||(this._notifyingListeners=!0,this._scopeListeners.forEach(t=>{t(this)}),this._notifyingListeners=!1)}},dt=Vl;function Zf(){return oi("defaultCurrentScope",()=>new dt)}function em(){return oi("defaultIsolationScope",()=>new dt)}var Wl=class{constructor(e,t){let r;e?r=e:r=new dt;let n;t?n=t:n=new dt,this._stack=[{scope:r}],this._isolationScope=n}withScope(e){let t=this._pushScope(),r;try{r=e(t)}catch(n){throw this._popScope(),n}return Ar(r)?r.then(n=>(this._popScope(),n),n=>{throw this._popScope(),n}):(this._popScope(),r)}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStackTop(){return this._stack[this._stack.length-1]}_pushScope(){let e=this.getScope().clone();return this._stack.push({client:this.getClient(),scope:e}),e}_popScope(){return this._stack.length<=1?!1:!!this._stack.pop()}};function li(){let e=pn(),t=co(e);return t.stack=t.stack||new Wl(Zf(),em())}function yy(e){return li().withScope(e)}function vy(e,t){let r=li();return r.withScope(()=>(r.getStackTop().scope=e,t(e)))}function tm(e){return li().withScope(()=>e(li().getIsolationScope()))}function rm(){return{withIsolationScope:tm,withScope:yy,withSetScope:vy,withSetIsolationScope:(e,t)=>tm(t),getCurrentScope:()=>li().getScope(),getIsolationScope:()=>li().getIsolationScope()}}function Ds(e){let t=co(e);return t.acs?t.acs:rm()}function fn(){let e=pn();return Ds(e).getCurrentScope()}function mn(){let e=pn();return Ds(e).getIsolationScope()}function Rs(){return oi("globalScope",()=>new dt)}function As(...e){let t=pn(),r=Ds(t);if(e.length===2){let[n,i]=e;return n?r.withSetScope(n,i):r.withScope(i)}return r.withScope(e[0])}function Fe(){return fn().getClient()}var Ey="_sentryMetrics";function nm(e){let t=e[Ey];if(!t)return;let r={};for(let[,[n,i]]of t)(r[n]||(r[n]=[])).push(Ze(i));return r}var Gl="sentry.source",Yl="sentry.sample_rate",zl="sentry.op",ql="sentry.origin",_y=1;function sm(e){let{spanId:t,traceId:r}=e.spanContext(),{parent_span_id:n}=dn(e);return Ze({parent_span_id:n,span_id:t,trace_id:r})}function im(e){return typeof e=="number"?om(e):Array.isArray(e)?e[0]+e[1]/1e9:e instanceof Date?om(e.getTime()):Bt()}function om(e){return e>9999999999?e/1e3:e}function dn(e){if(by(e))return e.getSpanJSON();try{let{spanId:t,traceId:r}=e.spanContext();if(Sy(e)){let{attributes:n,startTime:i,name:s,endTime:o,parentSpanId:c,status:u}=e;return Ze({span_id:t,trace_id:r,data:n,description:s,parent_span_id:c,start_timestamp:im(i),timestamp:im(o)||void 0,status:wy(u),op:n[zl],origin:n[ql],_metrics_summary:nm(e)})}return{span_id:t,trace_id:r}}catch{return{}}}function Sy(e){let t=e;return!!t.attributes&&!!t.startTime&&!!t.name&&!!t.endTime&&!!t.status}function by(e){return typeof e.getSpanJSON=="function"}function am(e){let{traceFlags:t}=e.spanContext();return t===_y}function wy(e){if(!(!e||e.code===0))return e.code===1?"ok":e.message||"unknown_error"}var Iy="_sentryRootSpan";function uo(e){return e[Iy]||e}var Ns="production",Ty="_frozenDsc";function Kl(e,t){let r=t.getOptions(),{publicKey:n}=t.getDsn()||{},i=Ze({environment:r.environment||Ns,release:r.release,public_key:n,trace_id:e});return t.emit("createDsc",i),i}function cm(e){let t=Fe();if(!t)return{};let r=Kl(dn(e).trace_id||"",t),n=uo(e),i=n[Ty];if(i)return i;let s=n.spanContext().traceState,o=s&&s.get("sentry.dsc"),c=o&&Al(o);if(c)return c;let u=dn(n),d=u.data||{},m=d[Yl];m!=null&&(r.sample_rate=`${m}`);let h=d[Gl],y=u.description;return h!=="url"&&y&&(r.transaction=y),r.sampled=String(am(n)),t.emit("createDsc",r,n),r}function lm(e){if(typeof e=="boolean")return Number(e);let t=typeof e=="string"?parseFloat(e):e;if(typeof t!="number"||isNaN(t)||t<0||t>1){Re&&K.warn(`[Tracing] Given sample rate is invalid. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(e)} of type ${JSON.stringify(typeof e)}.`);return}return t}function Cy(e,t){return t&&(e.sdk=e.sdk||{},e.sdk.name=e.sdk.name||t.name,e.sdk.version=e.sdk.version||t.version,e.sdk.integrations=[...e.sdk.integrations||[],...t.integrations||[]],e.sdk.packages=[...e.sdk.packages||[],...t.packages||[]]),e}function um(e,t,r,n){let i=Ts(r),s=b(b({sent_at:new Date().toISOString()},i&&{sdk:i}),!!n&&t&&{dsn:gr(t)}),o="aggregates"in e?[{type:"sessions"},e]:[{type:"session"},e.toJSON()];return Er(s,[o])}function pm(e,t,r,n){let i=Ts(r),s=e.type&&e.type!=="replay_event"?e.type:"event";Cy(e,r&&r.sdk);let o=Ml(e,i,n,t);return delete e.sdkProcessingMetadata,Er(o,[[{type:s},e]])}function Os(e,t,r,n=0){return new or((i,s)=>{let o=e[n];if(t===null||typeof o!="function")i(t);else{let c=o(b({},t),r);Re&&o.id&&c===null&&K.log(`Event processor "${o.id}" dropped event`),Ar(c)?c.then(u=>Os(e,u,r,n+1).then(i)).then(null,s):Os(e,c,r,n+1).then(i).then(null,s)}})}function fm(e,t){let{fingerprint:r,span:n,breadcrumbs:i,sdkProcessingMetadata:s}=t;xy(e,t),n&&Ay(e,n),Ny(e,r),Dy(e,i),Ry(e,s)}function Xl(e,t){let{extra:r,tags:n,user:i,contexts:s,level:o,sdkProcessingMetadata:c,breadcrumbs:u,fingerprint:d,eventProcessors:m,attachments:h,propagationContext:y,transactionName:E,span:v}=t;po(e,"extra",r),po(e,"tags",n),po(e,"user",i),po(e,"contexts",s),po(e,"sdkProcessingMetadata",c),o&&(e.level=o),E&&(e.transactionName=E),v&&(e.span=v),u.length&&(e.breadcrumbs=[...e.breadcrumbs,...u]),d.length&&(e.fingerprint=[...e.fingerprint,...d]),m.length&&(e.eventProcessors=[...e.eventProcessors,...m]),h.length&&(e.attachments=[...e.attachments,...h]),e.propagationContext=b(b({},e.propagationContext),y)}function po(e,t,r){if(r&&Object.keys(r).length){e[t]=b({},e[t]);for(let n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[t][n]=r[n])}}function xy(e,t){let{extra:r,tags:n,user:i,contexts:s,level:o,transactionName:c}=t,u=Ze(r);u&&Object.keys(u).length&&(e.extra=b(b({},u),e.extra));let d=Ze(n);d&&Object.keys(d).length&&(e.tags=b(b({},d),e.tags));let m=Ze(i);m&&Object.keys(m).length&&(e.user=b(b({},m),e.user));let h=Ze(s);h&&Object.keys(h).length&&(e.contexts=b(b({},h),e.contexts)),o&&(e.level=o),c&&e.type!=="transaction"&&(e.transaction=c)}function Dy(e,t){let r=[...e.breadcrumbs||[],...t];e.breadcrumbs=r.length?r:void 0}function Ry(e,t){e.sdkProcessingMetadata=b(b({},e.sdkProcessingMetadata),t)}function Ay(e,t){e.contexts=b({trace:sm(t)},e.contexts),e.sdkProcessingMetadata=b({dynamicSamplingContext:cm(t)},e.sdkProcessingMetadata);let r=uo(t),n=dn(r).description;n&&!e.transaction&&e.type==="transaction"&&(e.transaction=n)}function Ny(e,t){e.fingerprint=e.fingerprint?Ss(e.fingerprint):[],t&&(e.fingerprint=e.fingerprint.concat(t)),e.fingerprint&&!e.fingerprint.length&&delete e.fingerprint}function dm(e,t,r,n,i,s){let{normalizeDepth:o=3,normalizeMaxBreadth:c=1e3}=e,u=te(b({},t),{event_id:t.event_id||r.event_id||nt(),timestamp:t.timestamp||vr()}),d=r.integrations||e.integrations.map(_=>_.name);Oy(u,e),My(u,d),i&&i.emit("applyFrameMetadata",t),t.type===void 0&&Py(u,e.stackParser);let m=Uy(n,r.captureContext);r.mechanism&&Nr(u,r.mechanism);let h=i?i.getEventProcessors():[],y=Rs().getScopeData();if(s){let _=s.getScopeData();Xl(y,_)}if(m){let _=m.getScopeData();Xl(y,_)}let E=[...r.attachments||[],...y.attachments];E.length&&(r.attachments=E),fm(u,y);let v=[...h,...y.eventProcessors];return Os(v,u,r).then(_=>(_&&Ly(_),typeof o=="number"&&o>0?By(_,o,c):_))}function Oy(e,t){let{environment:r,release:n,dist:i,maxValueLength:s=250}=t;"environment"in e||(e.environment="environment"in t?r:Ns),e.release===void 0&&n!==void 0&&(e.release=n),e.dist===void 0&&i!==void 0&&(e.dist=i),e.message&&(e.message=dr(e.message,s));let o=e.exception&&e.exception.values&&e.exception.values[0];o&&o.value&&(o.value=dr(o.value,s));let c=e.request;c&&c.url&&(c.url=dr(c.url,s))}var mm=new WeakMap;function Py(e,t){let r=re._sentryDebugIds;if(!r)return;let n,i=mm.get(t);i?n=i:(n=new Map,mm.set(t,n));let s=Object.entries(r).reduce((o,[c,u])=>{let d,m=n.get(c);m?d=m:(d=t(c),n.set(c,d));for(let h=d.length-1;h>=0;h--){let y=d[h];if(y.filename){o[y.filename]=u;break}}return o},{});try{e.exception.values.forEach(o=>{o.stacktrace.frames.forEach(c=>{c.filename&&(c.debug_id=s[c.filename])})})}catch{}}function Ly(e){let t={};try{e.exception.values.forEach(n=>{n.stacktrace.frames.forEach(i=>{i.debug_id&&(i.abs_path?t[i.abs_path]=i.debug_id:i.filename&&(t[i.filename]=i.debug_id),delete i.debug_id)})})}catch{}if(Object.keys(t).length===0)return;e.debug_meta=e.debug_meta||{},e.debug_meta.images=e.debug_meta.images||[];let r=e.debug_meta.images;Object.entries(t).forEach(([n,i])=>{r.push({type:"sourcemap",code_file:n,debug_id:i})})}function My(e,t){t.length>0&&(e.sdk=e.sdk||{},e.sdk.integrations=[...e.sdk.integrations||[],...t])}function By(e,t,r){if(!e)return null;let n=b(b(b(b(b({},e),e.breadcrumbs&&{breadcrumbs:e.breadcrumbs.map(i=>b(b({},i),i.data&&{data:ir(i.data,t,r)}))}),e.user&&{user:ir(e.user,t,r)}),e.contexts&&{contexts:ir(e.contexts,t,r)}),e.extra&&{extra:ir(e.extra,t,r)});return e.contexts&&e.contexts.trace&&n.contexts&&(n.contexts.trace=e.contexts.trace,e.contexts.trace.data&&(n.contexts.trace.data=ir(e.contexts.trace.data,t,r))),e.spans&&(n.spans=e.spans.map(i=>b(b({},i),i.data&&{data:ir(i.data,t,r)}))),n}function Uy(e,t){if(!t)return e;let r=e?e.clone():new dt;return r.update(t),r}function hm(e){if(e)return ky(e)?{captureContext:e}:Hy(e)?{captureContext:e}:e}function ky(e){return e instanceof dt||typeof e=="function"}var Fy=["user","level","extra","contexts","tags","fingerprint","requestSession","propagationContext"];function Hy(e){return Object.keys(e).some(t=>Fy.includes(t))}function Ps(e,t){return fn().captureException(e,hm(t))}function fo(e,t){return fn().captureEvent(e,t)}var $y="7";function jy(e){let t=e.protocol?`${e.protocol}:`:"",r=e.port?`:${e.port}`:"";return`${t}//${e.host}${r}${e.path?`/${e.path}`:""}/api/`}function Vy(e){return`${jy(e)}${e.projectId}/envelope/`}function Wy(e,t){return hl(b({sentry_key:e.publicKey,sentry_version:$y},t&&{sentry_client:`${t.name}/${t.version}`}))}function ym(e,t,r){return t||`${Vy(e)}?${Wy(e,r)}`}var vm=[];function Em(e,t){let r={};return t.forEach(n=>{n&&Ql(e,n,r)}),r}function Jl(e,t){for(let r of t)r&&r.afterAllSetup&&r.afterAllSetup(e)}function Ql(e,t,r){if(r[t.name]){Re&&K.log(`Integration skipped because it was already installed: ${t.name}`);return}if(r[t.name]=t,vm.indexOf(t.name)===-1&&typeof t.setupOnce=="function"&&(t.setupOnce(),vm.push(t.name)),t.setup&&typeof t.setup=="function"&&t.setup(e),typeof t.preprocessEvent=="function"){let n=t.preprocessEvent.bind(t);e.on("preprocessEvent",(i,s)=>n(i,s,e))}if(typeof t.processEvent=="function"){let n=t.processEvent.bind(t),i=Object.assign((s,o)=>n(s,o,e),{id:t.name});e.addEventProcessor(i)}Re&&K.log(`Integration installed: ${t.name}`)}var _m="Not capturing exception because it's already been captured.",mo=class{constructor(e){if(this._options=e,this._integrations={},this._numProcessing=0,this._outcomes={},this._hooks={},this._eventProcessors=[],e.dsn?this._dsn=fs(e.dsn):Re&&K.warn("No DSN provided, client will not send events."),this._dsn){let t=ym(this._dsn,e.tunnel,e._metadata?e._metadata.sdk:void 0);this._transport=e.transport(te(b({tunnel:this._options.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this)},e.transportOptions),{url:t}))}}captureException(e,t,r){let n=nt();if(_s(e))return Re&&K.log(_m),n;let i=b({event_id:n},t);return this._process(this.eventFromException(e,i).then(s=>this._captureEvent(s,i,r))),i.event_id}captureMessage(e,t,r,n){let i=b({event_id:nt()},r),s=ni(e)?e:String(e),o=cn(e)?this.eventFromMessage(s,t,i):this.eventFromException(e,i);return this._process(o.then(c=>this._captureEvent(c,i,n))),i.event_id}captureEvent(e,t,r){let n=nt();if(t&&t.originalException&&_s(t.originalException))return Re&&K.log(_m),n;let i=b({event_id:n},t),s=(e.sdkProcessingMetadata||{}).capturedSpanScope;return this._process(this._captureEvent(e,i,s||r)),i.event_id}captureSession(e){typeof e.release!="string"?Re&&K.warn("Discarded session because of missing or non-string release"):(this.sendSession(e),lo(e,{init:!1}))}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}flush(e){let t=this._transport;return t?(this.emit("flush"),this._isClientDoneProcessing(e).then(r=>t.flush(e).then(n=>r&&n))):Yt(!0)}close(e){return this.flush(e).then(t=>(this.getOptions().enabled=!1,this.emit("close"),t))}getEventProcessors(){return this._eventProcessors}addEventProcessor(e){this._eventProcessors.push(e)}init(){this._isEnabled()&&this._setupIntegrations()}getIntegrationByName(e){return this._integrations[e]}addIntegration(e){let t=this._integrations[e.name];Ql(this,e,this._integrations),t||Jl(this,[e])}sendEvent(e,t={}){this.emit("beforeSendEvent",e,t);let r=pm(e,this._dsn,this._options._metadata,this._options.tunnel);for(let i of t.attachments||[])r=Ol(r,Ll(i));let n=this.sendEnvelope(r);n&&n.then(i=>this.emit("afterSendEvent",e,i),null)}sendSession(e){let t=um(e,this._dsn,this._options._metadata,this._options.tunnel);this.sendEnvelope(t)}recordDroppedEvent(e,t,r){if(this._options.sendClientReports){let n=`${e}:${t}`;Re&&K.log(`Adding outcome: "${n}"`),this._outcomes[n]=(this._outcomes[n]||0)+1}}on(e,t){let r=this._hooks[e]=this._hooks[e]||[];return r.push(t),()=>{let n=r.indexOf(t);n>-1&&r.splice(n,1)}}emit(e,...t){let r=this._hooks[e];r&&r.forEach(n=>n(...t))}sendEnvelope(e){return this.emit("beforeEnvelope",e),this._isEnabled()&&this._transport?this._transport.send(e).then(null,t=>(Re&&K.error("Error while sending event:",t),t)):(Re&&K.error("Transport disabled"),Yt({}))}_setupIntegrations(){let{integrations:e}=this._options;this._integrations=Em(this,e),Jl(this,e)}_updateSessionFromEvent(e,t){let r=!1,n=!1,i=t.exception&&t.exception.values;if(i){n=!0;for(let o of i){let c=o.mechanism;if(c&&c.handled===!1){r=!0;break}}}let s=e.status==="ok";(s&&e.errors===0||s&&r)&&(lo(e,te(b({},r&&{status:"crashed"}),{errors:e.errors||Number(n||r)})),this.captureSession(e))}_isClientDoneProcessing(e){return new or(t=>{let r=0,n=1,i=setInterval(()=>{this._numProcessing==0?(clearInterval(i),t(!0)):(r+=n,e&&r>=e&&(clearInterval(i),t(!1)))},n)})}_isEnabled(){return this.getOptions().enabled!==!1&&this._transport!==void 0}_prepareEvent(e,t,r,n=mn()){let i=this.getOptions(),s=Object.keys(this._integrations);return!t.integrations&&s.length>0&&(t.integrations=s),this.emit("preprocessEvent",e,t),e.type||n.setLastEventId(e.event_id||t.event_id),dm(i,e,t,r,this,n).then(o=>{if(o===null)return o;let c=b(b({},n.getPropagationContext()),r?r.getPropagationContext():void 0);if(!(o.contexts&&o.contexts.trace)&&c){let{traceId:u,spanId:d,parentSpanId:m,dsc:h}=c;o.contexts=b({trace:Ze({trace_id:u,span_id:d,parent_span_id:m})},o.contexts);let y=h||Kl(u,this);o.sdkProcessingMetadata=b({dynamicSamplingContext:y},o.sdkProcessingMetadata)}return o})}_captureEvent(e,t={},r){return this._processEvent(e,t,r).then(n=>n.event_id,n=>{if(Re){let i=n;i.logLevel==="log"?K.log(i.message):K.warn(i)}})}_processEvent(e,t,r){let n=this.getOptions(),{sampleRate:i}=n,s=Zl(e),o=Sm(e),c=e.type||"error",u=`before send for type \`${c}\``,d=typeof i>"u"?void 0:lm(i);if(o&&typeof d=="number"&&Math.random()>d)return this.recordDroppedEvent("sample_rate","error",e),Gr(new mt(`Discarding event because it's not included in the random sample (sampling rate = ${i})`,"log"));let m=c==="replay_event"?"replay":c,h=(e.sdkProcessingMetadata||{}).capturedSpanIsolationScope;return this._prepareEvent(e,t,r,h).then(y=>{if(y===null)throw this.recordDroppedEvent("event_processor",m,e),new mt("An event processor returned `null`, will not send event.","log");if(t.data&&t.data.__sentry__===!0)return y;let E=Yy(this,n,y,t);return Gy(E,u)}).then(y=>{if(y===null){if(this.recordDroppedEvent("before_send",m,e),Zl(e)){let _=1+(e.spans||[]).length;this._outcomes.span=(this._outcomes.span||0)+_}throw new mt(`${u} returned \`null\`, will not send event.`,"log")}let E=r&&r.getSession();!s&&E&&this._updateSessionFromEvent(E,y);let v=y.transaction_info;if(s&&v&&y.transaction!==e.transaction){let _="custom";y.transaction_info=te(b({},v),{source:_})}return this.sendEvent(y,t),y}).then(null,y=>{throw y instanceof mt?y:(this.captureException(y,{data:{__sentry__:!0},originalException:y}),new mt(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event.
|
|
26
|
+
Reason: ${y}`))})}_process(e){this._numProcessing++,e.then(t=>(this._numProcessing--,t),t=>(this._numProcessing--,t))}_clearOutcomes(){let e=this._outcomes;return this._outcomes={},Object.entries(e).map(([t,r])=>{let[n,i]=t.split(":");return{reason:n,category:i,quantity:r}})}};function Gy(e,t){let r=`${t} must return \`null\` or a valid event.`;if(Ar(e))return e.then(n=>{if(!rr(n)&&n!==null)throw new mt(r);return n},n=>{throw new mt(`${t} rejected with ${n}`)});if(!rr(e)&&e!==null)throw new mt(r);return e}function Yy(e,t,r,n){let{beforeSend:i,beforeSendTransaction:s,beforeSendSpan:o}=t;if(Sm(r)&&i)return i(r,n);if(Zl(r)){if(r.spans&&o){let c=[];for(let u of r.spans){let d=o(u);d?c.push(d):e.recordDroppedEvent("before_send","span")}r.spans=c}if(s)return s(r,n)}return r}function Sm(e){return e.type===void 0}function Zl(e){return e.type==="transaction"}var zy=64;function Ls(e,t,r=Dl(e.bufferSize||zy)){let n={},i=o=>r.drain(o);function s(o){let c=[];if(ws(o,(h,y)=>{let E=Is(y);if(Ul(n,E)){let v=bm(h,y);e.recordDroppedEvent("ratelimit_backoff",E,v)}else c.push(h)}),c.length===0)return Yt({});let u=Er(o[0],c),d=h=>{ws(u,(y,E)=>{let v=bm(y,E);e.recordDroppedEvent(h,Is(E),v)})},m=()=>t({body:Pl(u)}).then(h=>(h.statusCode!==void 0&&(h.statusCode<200||h.statusCode>=300)&&Re&&K.warn(`Sentry responded with status code ${h.statusCode} to sent event.`),n=kl(n,h),h),h=>{throw d("network_error"),h});return r.add(m).then(h=>h,h=>{if(h instanceof mt)return Re&&K.error("Skipped sending event because buffer is full."),d("queue_overflow"),Yt({});throw h})}return{send:s,flush:i}}function bm(e,t){if(!(t!=="event"&&t!=="transaction"))return Array.isArray(e)?e[1]:void 0}function eu(e,t,r=[t],n="npm"){let i=e._metadata||{};i.sdk||(i.sdk={name:`sentry.javascript.${t}`,packages:r.map(s=>({name:`${n}:@sentry/${s}`,version:Wt})),version:Wt}),e._metadata=i}var qy=100;function _r(e,t){let r=Fe(),n=mn();if(!r)return;let{beforeBreadcrumb:i=null,maxBreadcrumbs:s=qy}=r.getOptions();if(s<=0)return;let o=vr(),c=b({timestamp:o},e),u=i?ai(()=>i(c,t)):c;u!==null&&(r.emit&&r.emit("beforeAddBreadcrumb",u,t),n.addBreadcrumb(u,s))}var wm,Ky="FunctionToString",Im=new WeakMap,Xy=()=>({name:Ky,setupOnce(){wm=Function.prototype.toString;try{Function.prototype.toString=function(...e){let t=un(this),r=Im.has(Fe())&&t!==void 0?t:this;return wm.apply(r,e)}}catch{}},setup(e){Im.set(e,!0)}}),Ms=Xy,Jy=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/,/^ResizeObserver loop completed with undelivered notifications.$/,/^Cannot redefine property: googletag$/,"undefined is not an object (evaluating 'a.L')",`can't redefine non-configurable property "solana"`,"vv().getRestrictions is not a function. (In 'vv().getRestrictions(1,a)', 'vv().getRestrictions' is undefined)","Can't find variable: _AutofillCallbackHandler"],Qy="InboundFilters",Zy=(e={})=>({name:Qy,processEvent(t,r,n){let i=n.getOptions(),s=ev(e,i);return tv(t,s)?null:t}}),Us=Zy;function ev(e={},t={}){return{allowUrls:[...e.allowUrls||[],...t.allowUrls||[]],denyUrls:[...e.denyUrls||[],...t.denyUrls||[]],ignoreErrors:[...e.ignoreErrors||[],...t.ignoreErrors||[],...e.disableErrorDefaults?[]:Jy],ignoreTransactions:[...e.ignoreTransactions||[],...t.ignoreTransactions||[]],ignoreInternal:e.ignoreInternal!==void 0?e.ignoreInternal:!0}}function tv(e,t){return t.ignoreInternal&&av(e)?(Re&&K.warn(`Event dropped due to being internal Sentry Error.
|
|
27
27
|
Event: ${nr(e)}`),!0):rv(e,t.ignoreErrors)?(Re&&K.warn(`Event dropped due to being matched by \`ignoreErrors\` option.
|
|
28
28
|
Event: ${nr(e)}`),!0):lv(e)?(Re&&K.warn(`Event dropped due to not having an error message, error type or stacktrace.
|
|
29
29
|
Event: ${nr(e)}`),!0):nv(e,t.ignoreTransactions)?(Re&&K.warn(`Event dropped due to being matched by \`ignoreTransactions\` option.
|
|
30
30
|
Event: ${nr(e)}`),!0):iv(e,t.denyUrls)?(Re&&K.warn(`Event dropped due to being matched by \`denyUrls\` option.
|
|
31
31
|
Event: ${nr(e)}.
|
|
32
|
-
Url: ${
|
|
32
|
+
Url: ${Bs(e)}`),!0):ov(e,t.allowUrls)?!1:(Re&&K.warn(`Event dropped due to not being matched by \`allowUrls\` option.
|
|
33
33
|
Event: ${nr(e)}.
|
|
34
|
-
Url: ${Us(e)}`),!0)}function rv(e,t){return e.type||!t||!t.length?!1:sv(e).some(r=>ii(r,t))}function nv(e,t){if(e.type!=="transaction"||!t||!t.length)return!1;let r=e.transaction;return r?ii(r,t):!1}function iv(e,t){if(!t||!t.length)return!1;let r=Us(e);return r?ii(r,t):!1}function ov(e,t){if(!t||!t.length)return!0;let r=Us(e);return r?ii(r,t):!0}function sv(e){let t=[];e.message&&t.push(e.message);let r;try{r=e.exception.values[e.exception.values.length-1]}catch{}return r&&r.value&&(t.push(r.value),r.type&&t.push(`${r.type}: ${r.value}`)),t}function av(e){try{return e.exception.values[0].type==="SentryError"}catch{}return!1}function cv(e=[]){for(let t=e.length-1;t>=0;t--){let r=e[t];if(r&&r.filename!=="<anonymous>"&&r.filename!=="[native code]")return r.filename||null}return null}function Us(e){try{let t;try{t=e.exception.values[0].stacktrace.frames}catch{}return t?cv(t):null}catch{return Re&&K.error(`Cannot extract url for event ${nr(e)}`),null}}function lv(e){return e.type||!e.exception||!e.exception.values||e.exception.values.length===0?!1:!e.message&&!e.exception.values.some(t=>t.stacktrace||t.type&&t.type!=="Error"||t.value)}var uv="Dedupe",pv=()=>{let e;return{name:uv,processEvent(t){if(t.type)return t;try{if(fv(t,e))return Re&&K.warn("Event dropped due to being a duplicate of previously captured event."),null}catch{}return e=t}}},ks=pv;function fv(e,t){return t?!!(mv(e,t)||dv(e,t)):!1}function mv(e,t){let r=e.message,n=t.message;return!(!r&&!n||r&&!n||!r&&n||r!==n||!xm(e,t)||!Cm(e,t))}function dv(e,t){let r=Tm(t),n=Tm(e);return!(!r||!n||r.type!==n.type||r.value!==n.value||!xm(e,t)||!Cm(e,t))}function Cm(e,t){let r=gs(e),n=gs(t);if(!r&&!n)return!0;if(r&&!n||!r&&n||(r=r,n=n,n.length!==r.length))return!1;for(let i=0;i<n.length;i++){let s=n[i],o=r[i];if(s.filename!==o.filename||s.lineno!==o.lineno||s.colno!==o.colno||s.function!==o.function)return!1}return!0}function xm(e,t){let r=e.fingerprint,n=t.fingerprint;if(!r&&!n)return!0;if(r&&!n||!r&&n)return!1;r=r,n=n;try{return r.join("")===n.join("")}catch{return!1}}function Tm(e){return e.exception&&e.exception.values&&e.exception.values[0]}var Ye=re,tu=0;function ru(){return tu>0}function xv(){tu++,setTimeout(()=>{tu--})}function hn(e,t={},r){if(typeof e!="function")return e;try{let i=e.__sentry_wrapped__;if(i)return i;if(un(e))return e}catch{return e}let n=function(){let i=Array.prototype.slice.call(arguments);try{r&&typeof r=="function"&&r.apply(this,arguments);let s=i.map(o=>hn(o,t));return e.apply(this,s)}catch(s){throw xv(),As(o=>{o.addEventProcessor(c=>(t.mechanism&&(ci(c,void 0,void 0),Nr(c,t.mechanism)),c.extra=te(w({},c.extra),{arguments:i}),c)),Ps(s)}),s}};try{for(let i in e)Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=e[i])}catch{}ms(n,e),wt(e,"__sentry_wrapped__",n);try{Object.getOwnPropertyDescriptor(n,"name").configurable&&Object.defineProperty(n,"name",{get(){return e.name}})}catch{}return n}var Pr=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function Fs(e,t){let r=ou(e,t),n={type:t&&t.name,value:Ov(t)};return r.length&&(n.stacktrace={frames:r}),n.type===void 0&&n.value===""&&(n.value="Unrecoverable error caught"),n}function Dv(e,t,r,n){let i=Fe(),s=i&&i.getOptions().normalizeDepth,o=Bv(t),c={__serialized__:ws(t,s)};if(o)return{exception:{values:[Fs(e,o)]},extra:c};let u={exception:{values:[{type:ln(t)?t.constructor.name:n?"UnhandledRejection":"Error",value:Pv(t,{isUnhandledRejection:n})}]},extra:c};if(r){let d=ou(e,r);d.length&&(u.exception.values[0].stacktrace={frames:d})}return u}function nu(e,t){return{exception:{values:[Fs(e,t)]}}}function ou(e,t){let r=t.stacktrace||t.stack||"",n=Av(t),i=Nv(t);try{return e(r,n,i)}catch{}return[]}var Rv=/Minified React error #\d+;/i;function Av(e){return e&&Rv.test(e.message)?1:0}function Nv(e){return typeof e.framesToPop=="number"?e.framesToPop:0}function Ov(e){let t=e&&e.message;return t?t.error&&typeof t.error.message=="string"?t.error.message:t:"No error message"}function Nm(e,t,r,n){let i=r&&r.syntheticException||void 0,s=Hs(e,t,i,n);return Nr(s),s.level="error",r&&r.event_id&&(s.event_id=r.event_id),Yt(s)}function Om(e,t,r="info",n,i){let s=n&&n.syntheticException||void 0,o=iu(e,t,s,i);return o.level=r,n&&n.event_id&&(o.event_id=n.event_id),Yt(o)}function Hs(e,t,r,n,i){let s;if(ls(t)&&t.error)return nu(e,t.error);if(us(t)||ol(t)){let o=t;if("stack"in t)s=nu(e,t);else{let c=o.name||(us(o)?"DOMError":"DOMException"),u=o.message?`${c}: ${o.message}`:c;s=iu(e,u,r,n),ci(s,u)}return"code"in o&&(s.tags=te(w({},s.tags),{"DOMException.code":`${o.code}`})),s}return an(t)?nu(e,t):rr(t)||ln(t)?(s=Dv(e,t,r,i),Nr(s,{synthetic:!0}),s):(s=iu(e,t,r,n),ci(s,`${t}`,void 0),Nr(s,{synthetic:!0}),s)}function iu(e,t,r,n){let i={};if(n&&r){let s=ou(e,r);s.length&&(i.exception={values:[{value:t,stacktrace:{frames:s}}]})}if(ni(t)){let{__sentry_template_string__:s,__sentry_template_values__:o}=t;return i.logentry={message:s,params:o},i}return i.message=t,i}function Pv(e,{isUnhandledRejection:t}){let r=gl(e),n=t?"promise rejection":"exception";return ls(e)?`Event \`ErrorEvent\` captured as ${n} with message \`${e.message}\``:ln(e)?`Event \`${Lv(e)}\` (type=${e.type}) captured as ${n}`:`Object captured as ${n} with keys: ${r}`}function Lv(e){try{let t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{}}function Bv(e){for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t)){let r=e[t];if(r instanceof Error)return r}}function Pm(e,{metadata:t,tunnel:r,dsn:n}){let i=w(w({event_id:e.event_id,sent_at:new Date().toISOString()},t&&t.sdk&&{sdk:{name:t.sdk.name,version:t.sdk.version}}),!!r&&!!n&&{dsn:gr(n)}),s=Uv(e);return Er(i,[s])}function Uv(e){return[{type:"user_report"},e]}var ho=class extends mo{constructor(e){let t=w({parentSpanIsAlwaysRootSpan:!0},e),r=Ye.SENTRY_SDK_SOURCE||Cl();eu(t,"browser",["browser"],r),super(t),t.sendClientReports&&Ye.document&&Ye.document.addEventListener("visibilitychange",()=>{Ye.document.visibilityState==="hidden"&&this._flushOutcomes()})}eventFromException(e,t){return Nm(this._options.stackParser,e,t,this._options.attachStacktrace)}eventFromMessage(e,t="info",r){return Om(this._options.stackParser,e,t,r,this._options.attachStacktrace)}captureUserFeedback(e){if(!this._isEnabled()){Pr&&K.warn("SDK not enabled, will not capture user feedback.");return}let t=Pm(e,{metadata:this.getSdkMetadata(),dsn:this.getDsn(),tunnel:this.getOptions().tunnel});this.sendEnvelope(t)}_prepareEvent(e,t,r){return e.platform=e.platform||"javascript",super._prepareEvent(e,t,r)}_flushOutcomes(){let e=this._clearOutcomes();if(e.length===0){Pr&&K.log("No outcomes to send");return}if(!this._dsn){Pr&&K.log("No dsn provided, will not send outcomes");return}Pr&&K.log("Sending outcomes:",e);let t=Ul(e,this._options.tunnel&&gr(this._dsn));this.sendEnvelope(t)}},Lm=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,Xe=re,Mv=1e3,Bm,su,au;function cu(e){let t="dom";bt(t,e),It(t,kv)}function kv(){if(!Xe.document)return;let e=et.bind(null,"dom"),t=Um(e,!0);Xe.document.addEventListener("click",t,!1),Xe.document.addEventListener("keypress",t,!1),["EventTarget","Node"].forEach(r=>{let n=Xe[r]&&Xe[r].prototype;!n||!n.hasOwnProperty||!n.hasOwnProperty("addEventListener")||(Ue(n,"addEventListener",function(i){return function(s,o,c){if(s==="click"||s=="keypress")try{let u=this,d=u.__sentry_instrumentation_handlers__=u.__sentry_instrumentation_handlers__||{},m=d[s]=d[s]||{refCount:0};if(!m.handler){let h=Um(e);m.handler=h,i.call(this,s,h,c)}m.refCount++}catch{}return i.call(this,s,o,c)}}),Ue(n,"removeEventListener",function(i){return function(s,o,c){if(s==="click"||s=="keypress")try{let u=this,d=u.__sentry_instrumentation_handlers__||{},m=d[s];m&&(m.refCount--,m.refCount<=0&&(i.call(this,s,m.handler,c),m.handler=void 0,delete d[s]),Object.keys(d).length===0&&delete u.__sentry_instrumentation_handlers__)}catch{}return i.call(this,s,o,c)}}))})}function Fv(e){if(e.type!==su)return!1;try{if(!e.target||e.target._sentryId!==au)return!1}catch{}return!0}function Hv(e,t){return e!=="keypress"?!1:!t||!t.tagName?!0:!(t.tagName==="INPUT"||t.tagName==="TEXTAREA"||t.isContentEditable)}function Um(e,t=!1){return r=>{if(!r||r._sentryCaptured)return;let n=$v(r);if(Hv(r.type,n))return;wt(r,"_sentryCaptured",!0),n&&!n._sentryId&&wt(n,"_sentryId",nt());let i=r.type==="keypress"?"input":r.type;Fv(r)||(e({event:r,name:i,global:t}),su=r.type,au=n?n._sentryId:void 0),clearTimeout(Bm),Bm=Xe.setTimeout(()=>{au=void 0,su=void 0},Mv)}}function $v(e){try{return e.target}catch{return null}}var $s;function lu(e){let t="history";bt(t,e),It(t,jv)}function jv(){if(!Fl())return;let e=Xe.onpopstate;Xe.onpopstate=function(...r){let n=Xe.location.href,i=$s;if($s=n,et("history",{from:i,to:n}),e)try{return e.apply(this,r)}catch{}};function t(r){return function(...n){let i=n.length>2?n[2]:void 0;if(i){let s=$s,o=String(i);$s=o,et("history",{from:s,to:o})}return r.apply(this,n)}}Ue(Xe.history,"pushState",t),Ue(Xe.history,"replaceState",t)}var js={};function uu(e){let t=js[e];if(t)return t;let r=Xe[e];if(oo(r))return js[e]=r.bind(Xe);let n=Xe.document;if(n&&typeof n.createElement=="function")try{let i=n.createElement("iframe");i.hidden=!0,n.head.appendChild(i);let s=i.contentWindow;s&&s[e]&&(r=s[e]),n.head.removeChild(i)}catch(i){Lm&&K.warn(`Could not create sandbox iframe for ${e} check, bailing to window.${e}: `,i)}return r&&(js[e]=r.bind(Xe))}function Vs(e){js[e]=void 0}var gn="__sentry_xhr_v3__";function pu(e){let t="xhr";bt(t,e),It(t,Vv)}function Vv(){if(!Xe.XMLHttpRequest)return;let e=XMLHttpRequest.prototype;Ue(e,"open",function(t){return function(...r){let n=Ut()*1e3,i=St(r[0])?r[0].toUpperCase():void 0,s=Wv(r[1]);if(!i||!s)return t.apply(this,r);this[gn]={method:i,url:s,request_headers:{}},i==="POST"&&s.match(/sentry_key/)&&(this.__sentry_own_request__=!0);let o=()=>{let c=this[gn];if(c&&this.readyState===4){try{c.status_code=this.status}catch{}let u={endTimestamp:Ut()*1e3,startTimestamp:n,xhr:this};et("xhr",u)}};return"onreadystatechange"in this&&typeof this.onreadystatechange=="function"?Ue(this,"onreadystatechange",function(c){return function(...u){return o(),c.apply(this,u)}}):this.addEventListener("readystatechange",o),Ue(this,"setRequestHeader",function(c){return function(...u){let[d,m]=u,h=this[gn];return h&&St(d)&&St(m)&&(h.request_headers[d.toLowerCase()]=m),c.apply(this,u)}}),t.apply(this,r)}}),Ue(e,"send",function(t){return function(...r){let n=this[gn];if(!n)return t.apply(this,r);r[0]!==void 0&&(n.body=r[0]);let i={startTimestamp:Ut()*1e3,xhr:this};return et("xhr",i),t.apply(this,r)}})}function Wv(e){if(St(e))return e;try{return e.toString()}catch{}}function fu(e,t=uu("fetch")){let r=0,n=0;function i(s){let o=s.body.length;r+=o,n++;let c=w({body:s.body,method:"POST",referrerPolicy:"origin",headers:e.headers,keepalive:r<=6e4&&n<15},e.fetchOptions);if(!t)return Vs("fetch"),Gr("No fetch implementation available");try{return t(e.url,c).then(u=>(r-=o,n--,{statusCode:u.status,headers:{"x-sentry-rate-limits":u.headers.get("X-Sentry-Rate-Limits"),"retry-after":u.headers.get("Retry-After")}}))}catch(u){return Vs("fetch"),r-=o,n--,Gr(u)}}return Ls(e,i)}var Gv=30,Yv=50;function mu(e,t,r,n){let i={filename:e,function:t==="<anonymous>"?yr:t,in_app:!0};return r!==void 0&&(i.lineno=r),n!==void 0&&(i.colno=n),i}var zv=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,qv=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,Kv=/\((\S*)(?::(\d+))(?::(\d+))\)/,Xv=e=>{let t=zv.exec(e);if(t){let[,n,i,s]=t;return mu(n,yr,+i,+s)}let r=qv.exec(e);if(r){if(r[2]&&r[2].indexOf("eval")===0){let s=Kv.exec(r[2]);s&&(r[2]=s[1],r[3]=s[2],r[4]=s[3])}let[n,i]=Hm(r[1]||yr,r[2]);return mu(i,n,r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}},Mm=[Gv,Xv],Jv=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,Qv=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,Zv=e=>{let t=Jv.exec(e);if(t){if(t[3]&&t[3].indexOf(" > eval")>-1){let i=Qv.exec(t[3]);i&&(t[1]=t[1]||"eval",t[3]=i[1],t[4]=i[2],t[5]="")}let r=t[3],n=t[1]||yr;return[n,r]=Hm(n,r),mu(r,n,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}},km=[Yv,Zv],Fm=[Mm,km],du=vl(...Fm),Hm=(e,t)=>{let r=e.indexOf("safari-extension")!==-1,n=e.indexOf("safari-web-extension")!==-1;return r||n?[e.indexOf("@")!==-1?e.split("@")[0]:yr,r?`safari-extension:${t}`:`safari-web-extension:${t}`]:[e,t]},Ws=1024,tE="Breadcrumbs",rE=(e={})=>{let t=w({console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0},e);return{name:tE,setup(r){t.console&&El(oE(r)),t.dom&&cu(iE(r,t.dom)),t.xhr&&pu(sE(r)),t.fetch&&bl(aE(r)),t.history&&lu(cE(r)),t.sentry&&r.on("beforeSendEvent",nE(r))}}},$m=rE;function nE(e){return function(t){Fe()===e&&_r({category:`sentry.${t.type==="transaction"?"transaction":"event"}`,event_id:t.event_id,level:t.level,message:nr(t)},{event:t})}}function iE(e,t){return function(r){if(Fe()!==e)return;let n,i,s=typeof t=="object"?t.serializeAttribute:void 0,o=typeof t=="object"&&typeof t.maxStringLength=="number"?t.maxStringLength:void 0;o&&o>Ws&&(Pr&&K.warn(`\`dom.maxStringLength\` cannot exceed ${Ws}, but a value of ${o} was configured. Sentry will use ${Ws} instead.`),o=Ws),typeof s=="string"&&(s=[s]);try{let u=r.event,d=lE(u)?u.target:u;n=no(d,{keyAttrs:s,maxStringLength:o}),i=ml(d)}catch{n="<unknown>"}if(n.length===0)return;let c={category:`ui.${r.name}`,message:n};i&&(c.data={"ui.component_name":i}),_r(c,{event:r.event,name:r.name,global:r.global})}}function oE(e){return function(t){if(Fe()!==e)return;let r={category:"console",data:{arguments:t.args,logger:"console"},level:Rl(t.level),message:ps(t.args," ")};if(t.level==="assert")if(t.args[0]===!1)r.message=`Assertion failed: ${ps(t.args.slice(1)," ")||"console.assert"}`,r.data.arguments=t.args.slice(1);else return;_r(r,{input:t.args,level:t.level})}}function sE(e){return function(t){if(Fe()!==e)return;let{startTimestamp:r,endTimestamp:n}=t,i=t.xhr[gn];if(!r||!n||!i)return;let{method:s,url:o,status_code:c,body:u}=i,d={method:s,url:o,status_code:c},m={xhr:t.xhr,input:u,startTimestamp:r,endTimestamp:n};_r({category:"xhr",data:d,type:"http"},m)}}function aE(e){return function(t){if(Fe()!==e)return;let{startTimestamp:r,endTimestamp:n}=t;if(n&&!(t.fetchData.url.match(/sentry_key/)&&t.fetchData.method==="POST"))if(t.error){let i=t.fetchData,s={data:t.error,input:t.args,startTimestamp:r,endTimestamp:n};_r({category:"fetch",data:i,level:"error",type:"http"},s)}else{let i=t.response,s=te(w({},t.fetchData),{status_code:i&&i.status}),o={input:t.args,response:i,startTimestamp:r,endTimestamp:n};_r({category:"fetch",data:s,type:"http"},o)}}}function cE(e){return function(t){if(Fe()!==e)return;let r=t.from,n=t.to,i=ao(Ye.location.href),s=r?ao(r):void 0,o=ao(n);(!s||!s.path)&&(s=i),i.protocol===o.protocol&&i.host===o.host&&(n=o.relative),i.protocol===s.protocol&&i.host===s.host&&(r=s.relative),_r({category:"navigation",data:{from:r,to:n}})}}function lE(e){return!!e&&!!e.target}var uE=["EventTarget","Window","Node","ApplicationCache","AudioTrackList","BroadcastChannel","ChannelMergerNode","CryptoOperation","EventSource","FileReader","HTMLUnknownElement","IDBDatabase","IDBRequest","IDBTransaction","KeyOperation","MediaController","MessagePort","ModalWindow","Notification","SVGElementInstance","Screen","SharedWorker","TextTrack","TextTrackCue","TextTrackList","WebSocket","WebSocketWorker","Worker","XMLHttpRequest","XMLHttpRequestEventTarget","XMLHttpRequestUpload"],pE="BrowserApiErrors",fE=(e={})=>{let t=w({XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0},e);return{name:pE,setupOnce(){t.setTimeout&&Ue(Ye,"setTimeout",jm),t.setInterval&&Ue(Ye,"setInterval",jm),t.requestAnimationFrame&&Ue(Ye,"requestAnimationFrame",mE),t.XMLHttpRequest&&"XMLHttpRequest"in Ye&&Ue(XMLHttpRequest.prototype,"send",dE);let r=t.eventTarget;r&&(Array.isArray(r)?r:uE).forEach(hE)}}},Vm=fE;function jm(e){return function(...t){let r=t[0];return t[0]=hn(r,{mechanism:{data:{function:Gt(e)},handled:!1,type:"instrument"}}),e.apply(this,t)}}function mE(e){return function(t){return e.apply(this,[hn(t,{mechanism:{data:{function:"requestAnimationFrame",handler:Gt(e)},handled:!1,type:"instrument"}})])}}function dE(e){return function(...t){let r=this;return["onload","onerror","onprogress","onreadystatechange"].forEach(n=>{n in r&&typeof r[n]=="function"&&Ue(r,n,function(i){let s={mechanism:{data:{function:n,handler:Gt(i)},handled:!1,type:"instrument"}},o=un(i);return o&&(s.mechanism.data.handler=Gt(o)),hn(i,s)})}),e.apply(this,t)}}function hE(e){let t=Ye,r=t[e]&&t[e].prototype;!r||!r.hasOwnProperty||!r.hasOwnProperty("addEventListener")||(Ue(r,"addEventListener",function(n){return function(i,s,o){try{typeof s.handleEvent=="function"&&(s.handleEvent=hn(s.handleEvent,{mechanism:{data:{function:"handleEvent",handler:Gt(s),target:e},handled:!1,type:"instrument"}}))}catch{}return n.apply(this,[i,hn(s,{mechanism:{data:{function:"addEventListener",handler:Gt(s),target:e},handled:!1,type:"instrument"}}),o])}}),Ue(r,"removeEventListener",function(n){return function(i,s,o){let c=s;try{let u=c&&c.__sentry_wrapped__;u&&n.call(this,i,u,o)}catch{}return n.call(this,i,c,o)}}))}var gE="GlobalHandlers",yE=(e={})=>{let t=w({onerror:!0,onunhandledrejection:!0},e);return{name:gE,setupOnce(){Error.stackTraceLimit=50},setup(r){t.onerror&&(vE(r),Wm("onerror")),t.onunhandledrejection&&(EE(r),Wm("onunhandledrejection"))}}},Gm=yE;function vE(e){Il(t=>{let{stackParser:r,attachStacktrace:n}=Ym();if(Fe()!==e||ru())return;let{msg:i,url:s,line:o,column:c,error:u}=t,d=wE(Hs(r,u||i,void 0,n,!1),s,o,c);d.level="error",fo(d,{originalException:u,mechanism:{handled:!1,type:"onerror"}})})}function EE(e){Tl(t=>{let{stackParser:r,attachStacktrace:n}=Ym();if(Fe()!==e||ru())return;let i=_E(t),s=cn(i)?SE(i):Hs(r,i,void 0,n,!0);s.level="error",fo(s,{originalException:i,mechanism:{handled:!1,type:"onunhandledrejection"}})})}function _E(e){if(cn(e))return e;try{if("reason"in e)return e.reason;if("detail"in e&&"reason"in e.detail)return e.detail.reason}catch{}return e}function SE(e){return{exception:{values:[{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(e)}`}]}}}function wE(e,t,r,n){let i=e.exception=e.exception||{},s=i.values=i.values||[],o=s[0]=s[0]||{},c=o.stacktrace=o.stacktrace||{},u=c.frames=c.frames||[],d=isNaN(parseInt(n,10))?void 0:n,m=isNaN(parseInt(r,10))?void 0:r,h=St(t)&&t.length>0?t:fl();return u.length===0&&u.push({colno:d,filename:h,function:yr,in_app:!0,lineno:m}),e}function Wm(e){Pr&&K.log(`Global Handler attached: ${e}`)}function Ym(){let e=Fe();return e&&e.getOptions()||{stackParser:()=>[],attachStacktrace:!1}}var zm=()=>({name:"HttpContext",preprocessEvent(e){if(!Ye.navigator&&!Ye.location&&!Ye.document)return;let t=e.request&&e.request.url||Ye.location&&Ye.location.href,{referrer:r}=Ye.document||{},{userAgent:n}=Ye.navigator||{},i=w(w(w({},e.request&&e.request.headers),r&&{Referer:r}),n&&{"User-Agent":n}),s=te(w(w({},e.request),t&&{url:t}),{headers:i});e.request=s}}),bE="cause",IE=5,TE="LinkedErrors",CE=(e={})=>{let t=e.limit||IE,r=e.key||bE;return{name:TE,preprocessEvent(n,i,s){let o=s.getOptions();ul(Fs,o.stackParser,o.maxValueLength,r,t,n,i)}}},qm=CE;function hu(e){return[Ms(),Bs(),Vm(),$m(),Gm(),qm(),ks(),zm()]}var gu=class extends Error{cause;constructor(e,t){super(e),this.cause=t}},Le=class Ph{static INSTANCE;contexts={};tags;client;user;constructor(){this.init()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Ph),this.INSTANCE}captureException(t,r,n){b.error(t),this.getNewScope(r,n).captureException(t)}captureMessage(t,r,n,i){this.getNewScope(n,i).captureMessage(t,r??"error")}captureError(t,r,n,i){b.error(t,r);let s=this.getNewScope(n,i),o=new gu(t,r);s.captureException(o)}setGlobalContext(t,r){this.contexts[t]=w({context:r},this.contexts[t])}setUser(t){this.user=t}setTags(t){this.tags=t}getNewScope(t,r){let n=new dt;if(n.setClient(this.client),n.setUser(this.user),t?.triggerContext){let i=t.triggerContext;n.setExtras(i.triggerData.sentryContext()),delete t.triggerContext}return t&&n.setExtras(t),this.tags&&n.setTags(this.tags),r&&n.setTags(r),Object.keys(this.contexts).forEach(i=>{n.setContext(i,this.contexts[i])}),n.setTag("language",navigator.language),n.setTag("timezone",Q.getTimezone()),n}init(){let t=hu({}).filter(r=>!["BrowserApiErrors","Breadcrumbs","GlobalHandlers"].includes(r.name));this.client=new ho({dsn:"https://1bc3dda4c861f60cd6be1b67584f4bc6@o559187.ingest.us.sentry.io/4507626484203520",transport:fu,stackParser:du,integrations:t,environment:Rt.mode,release:`web-sdk@${N.SDK_VERSION}`,debug:Rt.debug}),this.client.init()}},Q=class{static tz;static isValidURL(e){try{return new URL(e)}catch{return}}static isNull(e){return!e||e==="null"||e==="undefined"}static removeFromArray(e,t){let r=e.indexOf(t);return r===-1?!1:(e.splice(r,1),!0)}static formatCurrency(e,t){if(e==0&&t)return"Free";let r=ue.get(),n=Pe.get(),i=r.shopCurrencyCode||n.currency,s=r.currencyCode;s||b.warn("Currency code is not set in RuntimeData");let o=n.money?.format??r.moneyFormat,c;if(o&&i===s)c=as.format(e*100,o);else{let u;try{u=new Intl.NumberFormat(this.getLang(),{style:"currency",currency:s||i,minimumFractionDigits:0,maximumFractionDigits:2})}catch(d){return Le.getInstance().captureException(d,{currentCurrency:s,shopCurrency:i}),""}c=u.format(e),c=c.replace("\u20B9","Rs. "),n.money?.showCurrency&&s!=="INR"&&(c=c.concat(` ${s}`))}return c}static formatNumber(e){return new Intl.NumberFormat(this.getLang(),{notation:"compact"}).format(e)}static getLang(){return navigator.languages!==void 0?navigator.languages[0].split("-")[0]:navigator.language??"en"}static getTimezone(){if(this.tz)return this.tz;try{return this.tz=Intl.DateTimeFormat().resolvedOptions().timeZone,this.tz}catch{return""}}static documentReady(e){document.readyState!=="loading"?e():document.addEventListener("DOMContentLoaded",e)}static onDocumentLoaded(e){document.readyState==="complete"?e():document.addEventListener("readystatechange",()=>{document.readyState==="complete"&&e()})}static showSnackbar(e){let t=document.createElement("span");t.id="snackbar",t.innerText=e,document.body.appendChild(t),t.className="show",setTimeout(()=>{t.classList.remove("show"),document.body.removeChild(t)},3e3)}static async retrySelectorForElements(e,t=10,r=document){let n=0,i=document.querySelectorAll("nonexistent-tag");for(;n<t;){let s=Math.min(100*2**n,5e3);if(await Km.JSUtils.sleep(s),i=r.querySelectorAll(e),i.length)return b.debug(`Attempt ${n+1}: ${i.length} elements found with ${e}`),i;b.debug(`Attempt ${n+1}: Elements not found with ${e}. Retrying after ${s}ms.`),n++}return b.warn(`Max attempts reached. Element not found with ${e}.`),i}static async retrySelector(e,t=10,r=document){return(await this.retrySelectorForElements(e,t,r)).item(0)}static async retrySelectors(e,t=10,r=document){let n=await this.retrySelectorForElements(e,t,r);return Array.from(n)}static async getCartAttributes(){let e=await De.get(oe.DEVICE_ID),t=await rt.get(oe.ID,"");return[{key:"letscooee_did",value:e},{key:"letscooee_sid",value:t},{key:"__letscooee_time",value:new Date().toLocaleString()},{key:"__letscooee_via",value:"Buy Now"}]}static onNodesRemoved(e,t,r=document.body){let n=new MutationObserver(i=>{i.forEach(s=>{s.removedNodes.forEach(o=>{(o===e||o.contains(e))&&(t(),n.disconnect())})})});n.observe(r,{childList:!0})}};function ui(e,t,r){Object.defineProperty(e,t,{enumerable:!1,configurable:!1,writable:!1,value:r})}var Gs=class{url;alt;constructor(e){e.alt&&(this.alt=e.alt),this.url=e.url}},Ys=class{d;cmp;effective;constructor(e={}){this.d=e.d,this.cmp=e.cmp,this.effective=this.d}},yu=class{id;mID;name;groupID;groupName;isSelected;constructor(e){e??={},this.id=e.id,this.mID=e.mID,this.name=e.name,this.groupID=e.groupID,this.groupName=e.groupName,this.isSelected=e.isSelected??!1}},Sr=class{mID;name;imgs;link;price;sku;isAvailable;quantity;sellingPlans;selectedSellingPlan;effectivePrice;constructor(e){e=e??{},this.mID=e.mID,this.name=e.name,this.imgs=e.imgs?.map(t=>new Gs(t))??[],this.link=e.link,this.price=new Ys(e.price),this.sku=e.sku,this.isAvailable=e.isAvailable,this.quantity=e.quantity,this.effectivePrice=jt(this.price.effective),e.sellingPlans?.length&&(this.selectedSellingPlan=jt(void 0)),this.sellingPlans=e.sellingPlans?.map(t=>{let r=new yu(t);return r.isSelected&&(this.selectedSellingPlan.value=r),r})}getOneImage(){return this.imgs[0]?.url}changeSellingPlan(e){this.selectedSellingPlan.value=e}},At=class{id;mID;name;status;ctg;imgs;videos;portraitVideos;vars;desc;sDesc;link;slug;quantity;category;meta;reviews;tags;selectedOrFirstVariant;selected=jt(!0);constructor(e){this.update(e),this.selectedOrFirstVariant=jt(this.selectedVariant)}get imageURL(){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 selectedVariant(){return this.vars.find(e=>e.isAvailable)??this.vars[0]}set variants(e){this.vars=e,this.selectedOrFirstVariant.value=this.selectedVariant}update(e){return this.id=e.id,this.mID=e.mID,this.name=e.name,this.status=e.status,this.ctg=e.ctg,this.imgs=e.imgs,this.desc=e.desc,this.sDesc=e.sDesc,this.link=e.link,this.slug=e.slug,this.quantity=e.quantity,this.meta=e.meta,this.category=e.category,this.videos=e.videos,this.reviews=e.reviews,this.portraitVideos=e.videos?.filter(t=>t.orientation==="PORTRAIT"),this.tags=e.tags,e.vars&&(this.vars=e.vars.map(t=>new Sr(t))),this}toEmbed(e){return e=e??this.selectedOrFirstVariant.value,new ft({id:this.id,mID:this.mID,vID:e.mID,vName:e.name,name:this.name,link:this.link,slug:this.slug,price:e.price.d,imageURL:e.getOneImage()??this.imgs?.[0].url})}},zs=class{id;mID;handle;title;imageURL;constructor(e){e??={},this.id=e.id,this.mID=e.mID,this.handle=e.handle,this.title=e.title,this.imageURL=e.imageURL}},vu=class{enabled;constructor(e){this.enabled=e.enabled}},Eu=class extends vu{max;min;constructor(e){e??={},super(e),this.min=e.min,this.max=e.max}},qs=class{productQuantity;constructor(e){e??={},this.productQuantity=new Eu(e.productQuantity)}},yn=class{s;g;i;constructor(e){e.s&&(this.s=new He(e.s)),e.g&&(this.g=new go(e.g)),this.i=e.i}get solid(){return this.s}get glossy(){return this.g}get img(){return this.i}},yo="a-f\\d",xE=`#?[${yo}]{3}[${yo}]?`,DE=`#?[${yo}]{6}([${yo}]{2})?`,RE=new RegExp(`[^#${yo}]`,"gi"),AE=new RegExp(`^${xE}$|^${DE}$`,"i");function _u(e,t={}){if(typeof e!="string"||RE.test(e)||!AE.test(e))throw new TypeError("Expected a valid hex string");e=e.replace(/^#/,"");let r=1;e.length===8&&(r=Number.parseInt(e.slice(6,8),16)/255,e=e.slice(0,6)),e.length===4&&(r=Number.parseInt(e.slice(3,4).repeat(2),16)/255,e=e.slice(0,3)),e.length===3&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);let n=Number.parseInt(e,16),i=n>>16,s=n>>8&255,o=n&255,c=typeof t.alpha=="number"?t.alpha:r;if(t.format==="array")return[i,s,o,c];if(t.format==="css"){let u=c===1?"":` / ${Number((c*100).toFixed(2))}%`;return`rgb(${i} ${s} ${o}${u})`}return{red:i,green:s,blue:o,alpha:c}}var He=class{h;a=100;g;constructor(e){e??={},this.h=e.h,this.a=e.a,this.g=e.g}get hex(){return this.h}get grad(){return this.g}get rgba(){if(!this.hex)return"";try{return _u(this.hex,{format:"css",alpha:this.getAlpha()})}catch(e){return console.error("Invalid hex",e),"#000000"}}getAlpha(){return(this.a??100)/100}},vn=class{s;r;w;c;constructor(e){this.s=e.s,this.r=e.r,this.w=e.w,e.c&&(this.c=new He(e.c))}get radius(){return this.r}get width(){return this.w}get color(){return this.c}get style(){return Xm[this.s??1]}},Xm=(e=>(e[e.SOLID=1]="SOLID",e[e.DASHED=2]="DASHED",e))(Xm||{}),go=class Rh{static DEFAULT_FALLBACK=new He({h:"#000000",a:50});r;c;fb;constructor(t){this.r=t.r,t.c&&(this.c=new He(t.c)),t.fb&&(this.fb=new He(t.fb))}get radius(){return this.r}get color(){return this.c}get fallback(){return this.fb??Rh.DEFAULT_FALLBACK}},vo=class{blur;spr;clr;x;y;constructor(e){e=e??{},this.blur=e.blur??0,this.spr=e.spr??0,this.x=e.x??0,this.y=e.y??0,this.clr=new He(e.clr)}getStyle(e){return`${this.x*e}px ${this.y*e}px ${this.blur*e}px ${this.spr*e}px ${this.clr.rgba}`}},Lr=class{pl;pr;pt;pb;ml;mr;mt;mb;cent;constructor(e){e=e??{},this.pl=e.pl??0,this.pr=e.pr??0,this.pt=e.pt??0,this.pb=e.pb??0,this.ml=e.ml??0,this.mr=e.mr??0,this.mt=e.mt??0,this.mb=e.mb??0,this.cent=e.cent??!1}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`}},En=class{rot;constructor(e){e?.rot&&(this.rot=e.rot)}get rotate(){return this.rot}},Mt=class{t;bg;br;clc;shd;spc;trf;a;w;h;x;y;constructor(e){this.t=e.t,e.bg&&(this.bg=new yn(e.bg)),e.br&&(this.br=new vn(e.br)),e.shd&&(this.shd=new vo(e.shd)),e.spc&&(this.spc=new Lr(e.spc)),this.trf=new En(e.trf),this.clc=e.clc,this.w=e.w,this.h=e.h,this.x=e.x,this.y=e.y,this.a=e.a}get alpha(){return this.a??100}get type(){return this.t}get typeAsString(){return Me[this.t]}get click(){return this.clc}},Me=(e=>(e[e.IMAGE=1]="IMAGE",e[e.TEXT=2]="TEXT",e[e.BUTTON=3]="BUTTON",e[e.FLEXBOX=4]="FLEXBOX",e[e.MULTI_COLUMN=5]="MULTI_COLUMN",e[e.CHECKBOX=6]="CHECKBOX",e[e.PRODUCTS=11]="PRODUCTS",e[e.PRODUCT=12]="PRODUCT",e[e.PRODUCT_IMAGE=13]="PRODUCT_IMAGE",e[e.PRODUCT_TITLE=14]="PRODUCT_TITLE",e[e.PRODUCT_VARIATIONS=15]="PRODUCT_VARIATIONS",e[e.PRODUCT_VARIATIONS_SELLING_PLANS=16]="PRODUCT_VARIATIONS_SELLING_PLANS",e[e.PRODUCT_BUTTON=18]="PRODUCT_BUTTON",e[e.PRODUCT_RATING=19]="PRODUCT_RATING",e[e.EMAIL_INPUT=51]="EMAIL_INPUT",e[e.PHONE_INPUT=52]="PHONE_INPUT",e[e.COUNTDOWN_TIMER=61]="COUNTDOWN_TIMER",e[e.CAROUSEL=62]="CAROUSEL",e[e.SHAPE=100]="SHAPE",e))(Me||{}),_n=class extends Mt{constructor(e){super(e)}},Br=class extends Mt{src;constructor(e){super(e),this.src=e.src}},pi=(e=>(e[e.START=0]="START",e[e.CENTER=1]="CENTER",e[e.END=2]="END",e[e.JUSTIFY=3]="JUSTIFY",e))(pi||{}),Ks=class{name;fonts;constructor(e){e=e??{},e.name&&(e.name=e.name!=="Arial"?e.name:""),this.name=e.name,this.fonts=e.fonts?.map(t=>new Su(t))}},Su=class{style;url;constructor(e){e=e??{},this.style=e.style,this.url=e.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')`}},lt=class{fw;fs;fam;fmly;lh=1.2;ls;s;tc;ta;td;tdc;constructor(e){this.update(e)}get alignment(){return pi[this.ta]}get letterSpacing(){return this.ls?this.ls+"px":"normal"}update(e){e=e??{},e.lh&&(this.lh=e.lh),e.tdc&&(this.tdc=new He(e.tdc)),this.td=e.td,this.fs=e.s??e.fs??60,this.tc=new He(e.tc),this.ta=e.ta??1,this.fw=e.fw??400,this.ls=e.ls??0,this.tc.h??="#000000",this.fam=new Ks(e.fam??e.fmly)}resize(e){this.s*=e,this.ls*=e}},wr=class extends Mt{typo;constructor(e){super(e);let t=w(w({},e.f),e.typo);e.alg&&(t.ta=e.alg),e.c&&(t.tc=e.c),this.typo=new lt(t)}get color(){return this.typography.tc}get typography(){return this.typo}},Yr=class extends wr{prs;constructor(e){super(e),this.prs=e.prs}get parts(){return this.prs}},Xs=class extends Mt{o;constructor(e){super(e),this.o=e.o??5,this.w=this.w??1080,this.h=this.h??1920}getOrigin(){return this.o}},fi=class{dd;hh;mm;ss;date;constructor(e){e??={},this.dd=e.dd??0,this.hh=e.hh??0,this.mm=e.mm??0,this.ss=e.ss??0,this.date=e.date?new Date(e.date):void 0}start(e,t){let r=new Date;e===2?(r.setSeconds(r.getSeconds()+this.ss),r.setMinutes(r.getMinutes()+this.mm),r.setHours(r.getHours()+this.hh),r.setDate(r.getDate()+this.dd)):r=this.date??new Date;let n=window.setInterval(()=>{let i=new Date().getTime(),s=r.getTime()-i;if(s<1){clearInterval(n);return}let o=Math.floor(s/(1e3*60*60*24)),c=Math.floor(s%(1e3*60*60*24)/(1e3*60*60)),u=Math.floor(s%(1e3*60*60)/(1e3*60)),d=Math.floor(s%(1e3*60)/1e3);t({days:o,hours:c,minutes:u,seconds:d})},1e3);return n}},mi=class extends wr{gap;timer;timerType;horizontal;lblPos;show;constructor(e){e??={},super(e),this.gap=e.gap,this.timerType=e.type,this.timer=new fi(e.timer),this.show=e.show??{day:!0,hour:!0,minute:!0,second:!0},this.horizontal=e.horizontal,this.lblPos=e.lblPos}},Js=class{txt;c;constructor(e){e??={},this.txt=e.txt,this.c=new He(e.c??{})}get text(){return this.txt}get color(){return this.c}},zr=class extends wr{ph;constructor(e){super(e),this.ph=new Js(e.ph)}get placeholderText(){return this.ph.text}get placeholderColor(){return this.ph.color.rgba}},di=class extends zr{constructor(e){e??={},super(e)}},hi=class extends zr{},gi=class extends zr{},yi=class extends Br{},Sn=(e=>(e[e.LOW=1]="LOW",e[e.MEDIUM=2]="MEDIUM",e[e.HIGH=3]="HIGH",e))(Sn||{}),Qs=class{en;ex;constructor(e){e=e??{},this.en=e.en,this.ex=e.ex}getEnterAnimation(){switch(this.en){case 2:return[{transform:"translateY(-100%)"},{transform:"translateY(0%)"}];case 3:return[{transform:"translateY(100%)"},{transform:"translateY(0%)"}];case 4:return[{transform:"translateX(-100%)"},{transform:"translateX(0%)"}];case 5:return[{transform:"translateX(100%)"},{transform:"translateX(0%)"}];case 6:return[{transform:"translate(-100%, -100%)"},{transform:"translate(0%, 0%)"}];case 7:return[{transform:"translate(100%, -100%)"},{transform:"translate(0%, 0%)"}];case 8:return[{transform:"translate(-100%, 100%)"},{transform:"translate(0%, 0%)"}];case 9:return[{transform:"translate(100%, 100%)"},{transform:"translate(0%, 0%)"}];case 10:return[{transform:"scale(0.1)"},{transform:"scale(1)"}];default:return[]}}getExitAnimation(){switch(this.ex){case 2:return[{transform:"translateY(0%)"},{transform:"translateY(-100%)"}];case 3:return[{transform:"translateY(0%)"},{transform:"translateY(100%)"}];case 4:return[{transform:"translateX(0%)"},{transform:"translateX(-100%)"}];case 5:return[{transform:"translateX(0%)"},{transform:"translateX(100%)"}];case 6:return[{transform:"translate(0%, 0%)"},{transform:"translate(-100%, -100%)"}];case 7:return[{transform:"translate(0%, 0%)"},{transform:"translate(100%, -100%)"}];case 8:return[{transform:"translate(0%, 0%)"},{transform:"translate(-100%, 100%)"}];case 9:return[{transform:"translate(0%, 0%)"},{transform:"translate(100%, 100%)"}];case 10:return[{transform:"scale(1)"},{transform:"scale(0)"}];default:return[]}}},Eo=class extends Mt{gvt;max;cover;anim;embedded;position;constructor(e){e=e??{},super(e),this.gvt=e.gvt??5,this.max=e.max,this.cover=e.cover??!0,this.anim=new Qs(e.anim),this.embedded=e.embedded,this.position=e.position??1,this.spc||(this.spc=new Lr({pl:N.IN_APP_DEFAULT_PADDING,pr:N.IN_APP_DEFAULT_PADDING,pt:N.IN_APP_DEFAULT_PADDING,pb:N.IN_APP_DEFAULT_PADDING}))}isEmbedded(){return this.position===2&&!!this.embedded}getEmbeddedSelector(){return`.letscooee-engagement.container-${this.embedded}`}},Zs=class extends Eo{cont;elems=[];mob;constructor(e){e=e??{},super(e),this.cont=new Xs(e.cont),this.mob=new Eo(e.mob),this.bg||(this.bg=this.cont.bg,delete this.cont.bg),e.elems.forEach(t=>{t.t===1?this.elems.push(new Br(t)):t.t===2?this.elems.push(new Yr(t)):t.t===3?this.elems.push(new Yr(t)):t.t===100?this.elems.push(new _n(t)):t.t===51?this.elems.push(new hi(t)):t.t===52?this.elems.push(new gi(t)):t.t===61?this.elems.push(new mi(t)):t.t===15||t.t===16?this.elems.push(new di(t)):t.t===13&&this.elems.push(new yi(t))})}getStylesForWrapper(){if(this.cover)return{};let e;return this.gvt===1?e={top:0,left:0}:this.gvt===2?e={top:0,left:"50%",transform:"translateX(-50%)"}:this.gvt===3?e={top:0,right:0}:this.gvt===6?e={top:"50%",right:0,transform:"translateY(-50%)"}:this.gvt===9?e={bottom:0,right:0}:this.gvt===8?e={bottom:0,left:"50%",transform:"translateX(-50%)"}:this.gvt===7?e={bottom:0,left:0}:this.gvt===4?e={top:"50%",left:0,transform:"translateY(-50%)"}:e={top:"50%",left:"50%",transform:"translateX(-50%) translateY(-50%)"},e.overflow="visible",e}getFlexStylesForContainer(){let e={display:"flex",flexDirection:"row"},t,r;return this.gvt===1?(t="flex-start",r="flex-start"):this.gvt===2?(t="center",r="flex-start"):this.gvt===3?(t="flex-end",r="flex-start"):this.gvt===4?(t="flex-start",r="center"):this.gvt===6?(t="flex-end",r="center"):this.gvt===7?(t="flex-start",r="flex-end"):this.gvt===8?(t="center",r="flex-end"):this.gvt===9?(t="flex-end",r="flex-end"):(t="center",r="center"),e.alignItems=r,e.justifyContent=t,e.overflow="visible",e}overrideForMobileView(){this.max=this.mob.max??this.max,this.cover=this.mob.cover??this.cover,this.gvt=this.mob.gvt??this.gvt,this.bg=this.mob.bg??this.bg,this.spc=this.mob.spc??this.spc,this.anim=this.mob.anim??this.anim,this.position=this.mob.position??this.position,this.embedded=this.mob.embedded??this.embedded}},vi=class{gap;dir;wrap;jc;ai;scroll;constructor(e){e??={},this.gap=e.gap??0,this.dir=e.dir??"row",this.wrap=e.wrap??"nowrap",this.jc=e.jc??"flex-start",this.ai=e.ai??"flex-start",this.scroll=e.scroll}},ea=class{of;disp;pos;top;bottom;left;right;zIndex;constructor(e){e??={},this.of=e.of,this.disp=e.disp,this.pos=e.pos,this.top=e.top,this.bottom=e.bottom,this.left=e.left,this.right=e.right,this.zIndex=e.zIndex}},ta=class{w;h;maxW;maxH;minW;minH;constructor(e){e??={},this.w=e.w??"100%",this.h=e.h??"auto",this.maxW=e.maxW,this.maxH=e.maxH,this.minW=e.minW,this.minH=e.minH}},ra=class{size;bg;br;spc;typo;lout;flex;constructor(e){e??={},this.spc=new Lr(e.spc),e.size&&(this.size=new ta(e.size)),e.bg&&(this.bg=new yn(e.bg)),e.br&&(this.br=new vn(e.br)),e.typo&&(this.typo=new lt(e.typo)),e.lout&&(this.lout=new ea(e.lout)),e.flex&&(this.flex=new vi(e.flex))}},Ei=class{sm;lg;constructor(e){e??={},this.sm=new ra(e.sm),this.lg=new ra(e.lg)}},it=class{t;style;hide;when;clc;constructor(e,t){t??={},this.t=e,this.style=new Ei(t.style),this.hide=t.hide,t.when?.op&&(this.when=t.when),t.clc&&(this.clc=t.clc)}get stringType(){return Me[this.t]}},ot=class extends it{text;constructor(e,t){e?.style?.lg?.typo?.s&&delete e.style.lg.typo.s,e?.style?.sm?.typo?.s&&delete e.style.sm.typo.s,super(t??2,e),e??={},this.text=e.text}},wn=class extends ot{constructor(e,t){super(e,t??3)}},_i=class extends it{value;constructor(e){super(6,e),e??={},this.value=e.value}},Si=class extends ot{constructor(e=15,t){super(t,e)}},na=class extends it{c;iconSize;showSingleStar;fullStar;halfStart;constructor(e){super(19,e),e??={},this.c=new He(e.c),this.iconSize=e.iconSize??24,this.showSingleStar=e.showSingleStar??!1,this.fullStar=e.fullStar,this.halfStart=e.halfStart}},Jm=Se(on()),wu=class{enabled;type;color;constructor(e){e??={},this.enabled=e.enabled,this.type=e.type,this.color=new He(e.color)}},bu=class{size;enabled;color;constructor(e){e??={},this.enabled=e.enabled,this.size=e.size,this.color=new He(e.color)}},_o=class{navigation;pagination;autoplay;maxInRow;gap;slidesPerView;constructor(e){e??={},this.navigation=new bu(e.navigation),this.pagination=new wu(e.pagination),this.autoplay=e.autoplay,this.slidesPerView=e.slidesPerView??1,this.maxInRow=e.maxInRow??e.slidesPerView??4,this.gap=e.gap??0}},ia=class extends it{conf;slide;formData;values;allowedTypes;constructor(e){super(62,e),e&&this.update(e)}update(e){e??={},this.slide=kt.getParsedElement(e.slide),this.formData=e.formData,this.values=e.values,this.conf=new _o(e.conf),this.allowedTypes=e.allowedTypes}},oa=class extends ot{gap;timer;timerType;horizontal;lblPos;show;constructor(e){e??={},super(e,61),this.gap=e.gap,this.timerType=e.type,this.timer=new fi(e.timer),this.show=e.show??{days:!0,hours:!0,minutes:!0,seconds:!0},this.horizontal=e.horizontal,this.lblPos=e.lblPos}},qr=class extends it{elems;constructor(e){super(4,e),this.update(e)}update(e){e??={},this.elems??=[],e.elems?.forEach(t=>{let r=kt.getParsedElement(t);r&&this.elems.push(r)})}},bn=class extends it{src;sm;lg;constructor(e,t){super(t??1,e),e&&this.update(e)}update(e){this.src=e.src,this.sm=e.sm,this.lg=e.lg}},kt=class kh{static getParsedElements(t){let r=[];return t?.forEach(n=>{let i=kh.getParsedElement(n);i&&r.push(i)}),r}static getParsedElement(t){switch(t.t){case 2:return new ot(t);case 3:return new wn(t);case 6:return new _i(t);case 11:return new sa(t);case 12:return new Kr(t);case 61:return new oa(t);case 4:return new qr(t);case 1:return new bn(t);case 13:return new bn(t,13);case 14:return new ot(t,14);case 15:case 16:return new Si(t.t,t);case 18:return new wn(t,18);case 62:return new ia(t);case 19:return new na(t);default:Jm.default.error("Unknown element type",t.t);return}}static parseAlignmentToJustifyContent(t){switch(t){case 1:return"center";case 2:return"flex-end";case 0:return"flex-start";default:return"flex-start"}}},Kr=class extends it{img;title;desc;price;compareAt;btn;variantDD;show;symbol;cBox;elems;noLinks;constructor(e){if(e??={},super(12,e),this.show=e.show,this.elems=kt.getParsedElements(e.elems),this.noLinks=e.noLinks,!this.elems.length){e.cBox&&this.elems.push(new _i(e.cBox)),this.elems.push(new bn(e.img,13));let t=new ot(e.title,14);t.hide=!e.show?.title,t.text="{{ product.name }}",this.elems.push(t);let r=new ot(e.price);r.text="{{ product.price }}",r.hide=!e.show?.price;let n=new ot(e.compareAt);n.text="{{ product.compare_price }}",n.hide=!e.show?.price,e.compareAt||(n.style=new Ei(r.style),n.style.lg.typo=new lt(te(w({},n.style.lg.typo),{td:"line-through"})),n.style.sm.typo=new lt(te(w({},n.style.sm.typo),{td:"line-through"})));let i=new qr({style:{lg:{spc:{mb:10},flex:{dir:"row",gap:10,ai:"center",jc:kt.parseAlignmentToJustifyContent(r.style.lg.typo?.ta)}}}});i.elems.push(n),i.elems.push(r),this.elems.push(i);let s=new Si(15,e.variantDD);if(s.hide=!e.show?.variantDD,this.elems.push(s),e.btn){let o=new wn(e.btn,18);o.hide=!e.show?.btn,this.elems.push(o)}}e.symbol&&(this.symbol=new ot(e.symbol))}},sa=class extends it{conf;prod;constructor(e){super(11,e),e??={},this.conf=new Iu(e.conf),this.prod=new Kr(e.prod)}},aa=class extends _o{disp;maxItems;constructor(e){e??={},super(e),this.disp=e.disp,this.maxItems=e.maxItems}},Iu=class{lg;sm;constructor(e){e??={},this.lg=new aa(e.lg),this.sm=new aa(e.sm)}},ca=class extends qr{constructor(e){super(e)}},wi=class{cont;elems=[];constructor(e){e=e??{},this.cont=new ca(e.cont),e.elems?.forEach(t=>{this.addRawElement(t)})}addRawElement(e){let t=kt.getParsedElement(e);return t&&this.elems.push(t),t}},Qm=Se(Rr()),Tu=class{minValue;rewardType;label;reachingText;reachedText;discount;items;calculatedAlignment;constructor(e){this.minValue=e.minValue,this.rewardType=e.rewardType,this.label=e.label,this.reachingText=e.reachingText,this.reachedText=e.reachedText,this.discount=e.discount,this.items=e.items?.map(t=>new ft(t))}},la=class{layout;milestones;onlyLatestGift;constructor(e){this.layout=e.layout??Qm.ProgressBarLayout.ICONS,this.milestones=e.milestones?.map(t=>new Tu(t))??[],this.onlyLatestGift=e.onlyLatestGift}},ua=class{applyDiscountOnMinimum;constructor(e){this.applyDiscountOnMinimum=e.applyDiscountOnMinimum}},pa=class{id;alt;sources;items;durationMS;constructor(e={}){this.id=e.id,this.alt=e.alt,this.sources=e.sources,this.durationMS=e.durationMS,this.items=e.items?e.items.map(t=>new ft(t)):[]}},fa=class{videos;source;template;heading;constructor(e={}){this.videos=e.videos?.map(t=>new pa(t))??[],this.source=e.source,this.template=e.template,this.heading=e.heading}},xu=class{engagementID;shortID;contentType;delay;onsiteDeliveryType;objective;redirectBehaviour;constructor(e){this.shortID=e.shortID,this.contentType=e.contentType,this.engagementID=e.engagementID,this.delay=e.delay??0,this.redirectBehaviour=e.redirectBehaviour,this.onsiteDeliveryType=e.onsiteDeliveryType,this.objective=e.objective}isAnySplit(){return this.isABTesting()||this.isExclusionTesting()}isExclusionTesting(){return this.contentType===Tt.EngagementContentType.EXCLUSION}isABTesting(){return this.contentType===Tt.EngagementContentType.ABTESTING}isSingleContent(){return this.contentType===Tt.EngagementContentType.SINGLE}},Ct=class Lh extends xu{static SWIPER_ELEMENTS=new Set([11,62]);nudgeID;contentID;variation;ian;widget;discount;placement;promotionType;contentSource;manipulation;klaviyoFormID;hasMultiplePlacement;skipSubscribedItems;progressBarConfig;bundleConfig;content;previewType;occurred;id;currency;props;items;nonMutableItems;embeddedItems;bundleFrom;collections;customerData;experiment;discountData=jt({});constructor(t){super(t),this.id=t.id,this.nudgeID=t.nudgeID,this.currency=ue.get().currencyCode??"USD",this.contentID=t.contentID,this.variation=t.variation,t.widget&&(this.widget=new wi(t.widget)),this.previewType=t.previewType,this.occurred=t.occurred??new Date,this.props=t.props,this.embeddedItems=t.embeddedItems?.map(r=>new ft(r)),this.items=t.items?.map(r=>new At(r))??[],this.nonMutableItems=t.items?.map(r=>new At(r))??[],this.collections=t.collections?.map(r=>new zs(r))??[],this.discount=t.discount,this.placement=t.placement,this.customerData=t.customerData,this.ian=t.ian?this.processPopup(t.ian):void 0,this.promotionType=t.promotionType,this.manipulation=new qs(t.manipulation),this.contentSource=t.contentSource,this.klaviyoFormID=t.klaviyoFormID,this.hasMultiplePlacement=t.hasMultiplePlacement,this.skipSubscribedItems=t.skipSubscribedItems,this.experiment=t.experiment,t.progressBarConfig&&(this.progressBarConfig=new la(t.progressBarConfig)),t.bundleConfig&&(this.bundleConfig=new ua(t.bundleConfig)),t.bundleFrom&&(this.bundleFrom=new At(t.bundleFrom)),t.content?.videoConfig&&(this.content={videoConfig:new fa(t.content.videoConfig)})}shouldDelay(){return this.delay>0}sentryContext(){return{id:this.id,shortID:this.shortID,currency:this.currency,contentType:this.contentType,objective:this.objective,onsiteDeliveryType:this.onsiteDeliveryType,engagementID:this.engagementID,contentID:this.contentID,nudgeID:this.nudgeID,variation:this.variation}}getDelaySeconds(){let t=new Date().getTime()-this.occurred.getTime();return this.delay*1e3-t}isBundle(){return this.objective===Tt.EngagementObjective.BUNDLE_AND_UPSELL}isCartEmbed(){return this.onsiteDeliveryType===Tt.OnsiteDeliveryType.CART_EMBED}isPageEmbed(){return this.onsiteDeliveryType===Tt.OnsiteDeliveryType.PAGE_EMBED}isProgressBar(){return this.objective===Tt.EngagementObjective.PROGRESS_BAR}isSubscriptionUpsell(){return this.objective===Tt.EngagementObjective.SUBSCRIPTION_UPSELL}isCartRecovery(){return this.objective===Tt.EngagementObjective.CART_RECOVERY}isProductPromotion(){return this.objective===Tt.EngagementObjective.PRODUCT_PROMOTION}isProductPromoted(){return this.isProductPromotion()||this.isBundle()||this.isCartRecovery()}isBYOB(){return this.objective===Tt.EngagementObjective.BYOB}isShoppableVideo(){return this.objective===Tt.EngagementObjective.SHOPPABLE_VIDEO}processPopup(t){let r=JSON.stringify(t),n=this.items[0],i={},s={};if(n){let u=n.selectedOrFirstVariant.value;i={name:n.name,id:n.mID,link:n.link,vID:u.mID,image:n.variantImage,price:Q.formatCurrency(u.price.d),comparePrice:Q.formatCurrency(u.price.cmp),quantity:n.quantity},s={quantity:u.quantity}}let o={productCount:de.getCurrent().item_count},c=_t.render(r,{product:i,variant:s,cart:o,discount:this.discount,customer:this.customerData});return n&&(c=c.replace(new RegExp(N.PLACEHOLDER_IMAGE,"gi"),n.variantImage??n.imageURL)),new Zs(JSON.parse(c))}calculateDiscountData(t,r){let n=Cu.ArrayUtils.sum(t,s=>s.selectedOrFirstVariant.value.price.d),i={actualPrice:n,discountAmount:0,discountPercentage:0,discountedPrice:n};if(!t?.length||!r||!this.discount?.type){this.discountData.value=this.formatCurrencyAndNumber(i);return}if(Xr.DiscountType.BXGY===this.discount.type&&this.discount.values?.length)i.discountPercentage=this.discount.values[0],this.updateEffectivePrice(t,i.discountPercentage,!0),i.discountAmount=i.actualPrice-Cu.ArrayUtils.sum(t,s=>s.selectedOrFirstVariant.value.effectivePrice.value);else if([Xr.DiscountType.UNIQUE_FLAT_ITEMS,Xr.DiscountType.STATIC].includes(this.discount.type)&&this.discount.values?.length)i.discountPercentage=this.discount.values[0],i.discountAmount=i.actualPrice*i.discountPercentage/100,this.updateEffectivePrice(t,i.discountPercentage);else if(this.discount.type===Xr.DiscountType.UNIQUE_FIXED_ITEMS&&this.discount.values?.length)i.discountAmount=i.actualPrice-this.discount.values[0],i.discountPercentage=i.discountAmount/i.actualPrice*100,this.updateEffectivePrice(t,i.discountPercentage);else if(this.discount.type===Xr.DiscountType.UNIQUE_CHEAPEST_ITEM_FREE){t.sort((o,c)=>c.selectedOrFirstVariant.value.price.d-o.selectedOrFirstVariant.value.price.d);let s=t[t.length-1];s.selectedOrFirstVariant.value.effectivePrice.value=0,i.discountAmount=s.selectedOrFirstVariant.value.price.d,i.discountPercentage=i.discountAmount/i.actualPrice*100}i.discountedPrice=i.actualPrice-i.discountAmount,this.discountData.value=this.formatCurrencyAndNumber(i)}getPrivateAttributesForLineItem(){return Pe.get().skipItemAttribute?{}:{[N.VIA]:"Cooee",[N.CAMPAIGN_ATTRIBUTE]:this.shortID,[N.CONTENT_ATTRIBUTE]:this.contentID}}getKVFormatPrivateAttributesForLineItem(){return Pe.get().skipItemAttribute?[]:[{key:N.VIA,value:"Cooee"},{key:N.CAMPAIGN_ATTRIBUTE,value:this.shortID},{key:N.CONTENT_ATTRIBUTE,value:this.contentID}]}isBundleDiscount(){return[Xr.DiscountType.UNIQUE_FIXED_ITEMS,Xr.DiscountType.UNIQUE_FLAT_ITEMS].includes(this.discount.type)}isBundleOnCartDrawer(){return this.isBundle()&&this.isCartEmbed()}isBundleOnPDP(){return this.isPageEmbed()&&this.isBundle()}hasSwiperElement(){let t=this.widget?.elems.find(n=>Lh.SWIPER_ELEMENTS.has(n.t));if(!t)return!1;if(t.t===62)return!0;let r=Bt.get().isMobile()?"sm":"lg";return t.conf[r].disp===2}toString(){return`Engagement(id=${this.shortID})`}getCartMagicVariables(){let t=de.getCurrent();return{productCount:t.item_count,amount:Q.formatCurrency(t.total_price/100),originalAmount:Q.formatCurrency(t.original_total_price/100)}}updateEffectivePrice(t,r,n=!1){let i=ue.get().getCurrentItem();t.forEach(s=>{let o=s.selectedOrFirstVariant.value,c=o.price;if(n&&s.mID===i.mID)o.effectivePrice.value=c.d;else{let u=c.d*r/100;o.effectivePrice.value=c.d-u}})}formatCurrencyAndNumber(t){if(!t)return{};let r={discountPercentage:Q.formatNumber(t.discountPercentage??0),discountCode:this.discount?.code};return["actualPrice","discountAmount","discountedPrice"].map(n=>{r[n]=Q.formatCurrency(t[n])}),r}};function OE(e,t){return t={exports:{}},e(t,t.exports),t.exports}var PE=ME,LE=FE,BE=jE,Ir=[],qt=[],UE=typeof Uint8Array<"u"?Uint8Array:Array,Du="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(In=0,Zm=Du.length;In<Zm;++In)Ir[In]=Du[In],qt[Du.charCodeAt(In)]=In;var In,Zm;qt[45]=62;qt[95]=63;function hd(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");r===-1&&(r=t);var n=r===t?0:4-r%4;return[r,n]}function ME(e){var t=hd(e),r=t[0],n=t[1];return(r+n)*3/4-n}function kE(e,t,r){return(t+r)*3/4-r}function FE(e){var t,r=hd(e),n=r[0],i=r[1],s=new UE(kE(e,n,i)),o=0,c=i>0?n-4:n,u;for(u=0;u<c;u+=4)t=qt[e.charCodeAt(u)]<<18|qt[e.charCodeAt(u+1)]<<12|qt[e.charCodeAt(u+2)]<<6|qt[e.charCodeAt(u+3)],s[o++]=t>>16&255,s[o++]=t>>8&255,s[o++]=t&255;return i===2&&(t=qt[e.charCodeAt(u)]<<2|qt[e.charCodeAt(u+1)]>>4,s[o++]=t&255),i===1&&(t=qt[e.charCodeAt(u)]<<10|qt[e.charCodeAt(u+1)]<<4|qt[e.charCodeAt(u+2)]>>2,s[o++]=t>>8&255,s[o++]=t&255),s}function HE(e){return Ir[e>>18&63]+Ir[e>>12&63]+Ir[e>>6&63]+Ir[e&63]}function $E(e,t,r){for(var n,i=[],s=t;s<r;s+=3)n=(e[s]<<16&16711680)+(e[s+1]<<8&65280)+(e[s+2]&255),i.push(HE(n));return i.join("")}function jE(e){for(var t,r=e.length,n=r%3,i=[],s=16383,o=0,c=r-n;o<c;o+=s)i.push($E(e,o,o+s>c?c:o+s));return n===1?(t=e[r-1],i.push(Ir[t>>2]+Ir[t<<4&63]+"==")):n===2&&(t=(e[r-2]<<8)+e[r-1],i.push(Ir[t>>10]+Ir[t>>4&63]+Ir[t<<2&63]+"=")),i.join("")}var Ru={byteLength:PE,toByteArray:LE,fromByteArray:BE},VE=function(e,t,r,n,i){var s,o,c=i*8-n-1,u=(1<<c)-1,d=u>>1,m=-7,h=r?i-1:0,y=r?-1:1,E=e[t+h];for(h+=y,s=E&(1<<-m)-1,E>>=-m,m+=c;m>0;s=s*256+e[t+h],h+=y,m-=8);for(o=s&(1<<-m)-1,s>>=-m,m+=n;m>0;o=o*256+e[t+h],h+=y,m-=8);if(s===0)s=1-d;else{if(s===u)return o?NaN:(E?-1:1)*(1/0);o=o+Math.pow(2,n),s=s-d}return(E?-1:1)*o*Math.pow(2,s-n)},WE=function(e,t,r,n,i,s){var o,c,u,d=s*8-i-1,m=(1<<d)-1,h=m>>1,y=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=n?0:s-1,v=n?1:-1,_=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(c=isNaN(t)?1:0,o=m):(o=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-o))<1&&(o--,u*=2),o+h>=1?t+=y/u:t+=y*Math.pow(2,1-h),t*u>=2&&(o++,u/=2),o+h>=m?(c=0,o=m):o+h>=1?(c=(t*u-1)*Math.pow(2,i),o=o+h):(c=t*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;e[r+E]=c&255,E+=v,c/=256,i-=8);for(o=o<<i|c,d+=i;d>0;e[r+E]=o&255,E+=v,o/=256,d-=8);e[r+E-v]|=_*128},bi={read:VE,write:WE},ha=OE(function(e,t){var r=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=o,t.SlowBuffer=P,t.INSPECT_MAX_BYTES=50;var n=2147483647;t.kMaxLength=n,o.TYPED_ARRAY_SUPPORT=i(),!o.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function i(){try{var a=new Uint8Array(1),l={foo:function(){return 42}};return Object.setPrototypeOf(l,Uint8Array.prototype),Object.setPrototypeOf(a,l),a.foo()===42}catch{return!1}}Object.defineProperty(o.prototype,"parent",{enumerable:!0,get:function(){if(o.isBuffer(this))return this.buffer}}),Object.defineProperty(o.prototype,"offset",{enumerable:!0,get:function(){if(o.isBuffer(this))return this.byteOffset}});function s(a){if(a>n)throw new RangeError('The value "'+a+'" is invalid for option "size"');var l=new Uint8Array(a);return Object.setPrototypeOf(l,o.prototype),l}function o(a,l,p){if(typeof a=="number"){if(typeof l=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return m(a)}return c(a,l,p)}o.poolSize=8192;function c(a,l,p){if(typeof a=="string")return h(a,l);if(ArrayBuffer.isView(a))return E(a);if(a==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+babelHelpers.typeof(a));if(vt(a,ArrayBuffer)||a&&vt(a.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(vt(a,SharedArrayBuffer)||a&&vt(a.buffer,SharedArrayBuffer)))return v(a,l,p);if(typeof a=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var T=a.valueOf&&a.valueOf();if(T!=null&&T!==a)return o.from(T,l,p);var A=_(a);if(A)return A;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof a[Symbol.toPrimitive]=="function")return o.from(a[Symbol.toPrimitive]("string"),l,p);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+babelHelpers.typeof(a))}o.from=function(a,l,p){return c(a,l,p)},Object.setPrototypeOf(o.prototype,Uint8Array.prototype),Object.setPrototypeOf(o,Uint8Array);function u(a){if(typeof a!="number")throw new TypeError('"size" argument must be of type number');if(a<0)throw new RangeError('The value "'+a+'" is invalid for option "size"')}function d(a,l,p){return u(a),a<=0?s(a):l!==void 0?typeof p=="string"?s(a).fill(l,p):s(a).fill(l):s(a)}o.alloc=function(a,l,p){return d(a,l,p)};function m(a){return u(a),s(a<0?0:D(a)|0)}o.allocUnsafe=function(a){return m(a)},o.allocUnsafeSlow=function(a){return m(a)};function h(a,l){if((typeof l!="string"||l==="")&&(l="utf8"),!o.isEncoding(l))throw new TypeError("Unknown encoding: "+l);var p=M(a,l)|0,T=s(p),A=T.write(a,l);return A!==p&&(T=T.slice(0,A)),T}function y(a){for(var l=a.length<0?0:D(a.length)|0,p=s(l),T=0;T<l;T+=1)p[T]=a[T]&255;return p}function E(a){if(vt(a,Uint8Array)){var l=new Uint8Array(a);return v(l.buffer,l.byteOffset,l.byteLength)}return y(a)}function v(a,l,p){if(l<0||a.byteLength<l)throw new RangeError('"offset" is outside of buffer bounds');if(a.byteLength<l+(p||0))throw new RangeError('"length" is outside of buffer bounds');var T;return l===void 0&&p===void 0?T=new Uint8Array(a):p===void 0?T=new Uint8Array(a,l):T=new Uint8Array(a,l,p),Object.setPrototypeOf(T,o.prototype),T}function _(a){if(o.isBuffer(a)){var l=D(a.length)|0,p=s(l);return p.length===0||a.copy(p,0,0,l),p}if(a.length!==void 0)return typeof a.length!="number"||$r(a.length)?s(0):y(a);if(a.type==="Buffer"&&Array.isArray(a.data))return y(a.data)}function D(a){if(a>=n)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+n.toString(16)+" bytes");return a|0}function P(a){return+a!=a&&(a=0),o.alloc(+a)}o.isBuffer=function(a){return a!=null&&a._isBuffer===!0&&a!==o.prototype},o.compare=function(a,l){if(vt(a,Uint8Array)&&(a=o.from(a,a.offset,a.byteLength)),vt(l,Uint8Array)&&(l=o.from(l,l.offset,l.byteLength)),!o.isBuffer(a)||!o.isBuffer(l))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(a===l)return 0;for(var p=a.length,T=l.length,A=0,U=Math.min(p,T);A<U;++A)if(a[A]!==l[A]){p=a[A],T=l[A];break}return p<T?-1:T<p?1:0},o.isEncoding=function(a){switch(String(a).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},o.concat=function(a,l){if(!Array.isArray(a))throw new TypeError('"list" argument must be an Array of Buffers');if(a.length===0)return o.alloc(0);var p;if(l===void 0)for(l=0,p=0;p<a.length;++p)l+=a[p].length;var T=o.allocUnsafe(l),A=0;for(p=0;p<a.length;++p){var U=a[p];if(vt(U,Uint8Array))A+U.length>T.length?o.from(U).copy(T,A):Uint8Array.prototype.set.call(T,U,A);else if(o.isBuffer(U))U.copy(T,A);else throw new TypeError('"list" argument must be an Array of Buffers');A+=U.length}return T};function M(a,l){if(o.isBuffer(a))return a.length;if(ArrayBuffer.isView(a)||vt(a,ArrayBuffer))return a.byteLength;if(typeof a!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+babelHelpers.typeof(a));var p=a.length,T=arguments.length>2&&arguments[2]===!0;if(!T&&p===0)return 0;for(var A=!1;;)switch(l){case"ascii":case"latin1":case"binary":return p;case"utf8":case"utf-8":return nn(a).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return p*2;case"hex":return p>>>1;case"base64":return Gn(a).length;default:if(A)return T?-1:nn(a).length;l=(""+l).toLowerCase(),A=!0}}o.byteLength=M;function L(a,l,p){var T=!1;if((l===void 0||l<0)&&(l=0),l>this.length||((p===void 0||p>this.length)&&(p=this.length),p<=0)||(p>>>=0,l>>>=0,p<=l))return"";for(a||(a="utf8");;)switch(a){case"hex":return gt(this,l,p);case"utf8":case"utf-8":return $e(this,l,p);case"ascii":return Ke(this,l,p);case"latin1":case"binary":return ve(this,l,p);case"base64":return ge(this,l,p);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ae(this,l,p);default:if(T)throw new TypeError("Unknown encoding: "+a);a=(a+"").toLowerCase(),T=!0}}o.prototype._isBuffer=!0;function R(a,l,p){var T=a[l];a[l]=a[p],a[p]=T}o.prototype.swap16=function(){var a=this.length;if(a%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var l=0;l<a;l+=2)R(this,l,l+1);return this},o.prototype.swap32=function(){var a=this.length;if(a%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var l=0;l<a;l+=4)R(this,l,l+3),R(this,l+1,l+2);return this},o.prototype.swap64=function(){var a=this.length;if(a%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var l=0;l<a;l+=8)R(this,l,l+7),R(this,l+1,l+6),R(this,l+2,l+5),R(this,l+3,l+4);return this},o.prototype.toString=function(){var a=this.length;return a===0?"":arguments.length===0?$e(this,0,a):L.apply(this,arguments)},o.prototype.toLocaleString=o.prototype.toString,o.prototype.equals=function(a){if(!o.isBuffer(a))throw new TypeError("Argument must be a Buffer");return this===a?!0:o.compare(this,a)===0},o.prototype.inspect=function(){var a="",l=t.INSPECT_MAX_BYTES;return a=this.toString("hex",0,l).replace(/(.{2})/g,"$1 ").trim(),this.length>l&&(a+=" ... "),"<Buffer "+a+">"},r&&(o.prototype[r]=o.prototype.inspect),o.prototype.compare=function(a,l,p,T,A){if(vt(a,Uint8Array)&&(a=o.from(a,a.offset,a.byteLength)),!o.isBuffer(a))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+babelHelpers.typeof(a));if(l===void 0&&(l=0),p===void 0&&(p=a?a.length:0),T===void 0&&(T=0),A===void 0&&(A=this.length),l<0||p>a.length||T<0||A>this.length)throw new RangeError("out of range index");if(T>=A&&l>=p)return 0;if(T>=A)return-1;if(l>=p)return 1;if(l>>>=0,p>>>=0,T>>>=0,A>>>=0,this===a)return 0;for(var U=A-T,G=p-l,Ie=Math.min(U,G),me=this.slice(T,A),ye=a.slice(l,p),je=0;je<Ie;++je)if(me[je]!==ye[je]){U=me[je],G=ye[je];break}return U<G?-1:G<U?1:0};function q(a,l,p,T,A){if(a.length===0)return-1;if(typeof p=="string"?(T=p,p=0):p>2147483647?p=2147483647:p<-2147483648&&(p=-2147483648),p=+p,$r(p)&&(p=A?0:a.length-1),p<0&&(p=a.length+p),p>=a.length){if(A)return-1;p=a.length-1}else if(p<0)if(A)p=0;else return-1;if(typeof l=="string"&&(l=o.from(l,T)),o.isBuffer(l))return l.length===0?-1:he(a,l,p,T,A);if(typeof l=="number")return l=l&255,typeof Uint8Array.prototype.indexOf=="function"?A?Uint8Array.prototype.indexOf.call(a,l,p):Uint8Array.prototype.lastIndexOf.call(a,l,p):he(a,[l],p,T,A);throw new TypeError("val must be string, number or Buffer")}function he(a,l,p,T,A){var U=1,G=a.length,Ie=l.length;if(T!==void 0&&(T=String(T).toLowerCase(),T==="ucs2"||T==="ucs-2"||T==="utf16le"||T==="utf-16le")){if(a.length<2||l.length<2)return-1;U=2,G/=2,Ie/=2,p/=2}function me(ee,Ce){return U===1?ee[Ce]:ee.readUInt16BE(Ce*U)}var ye;if(A){var je=-1;for(ye=p;ye<G;ye++)if(me(a,ye)===me(l,je===-1?0:ye-je)){if(je===-1&&(je=ye),ye-je+1===Ie)return je*U}else je!==-1&&(ye-=ye-je),je=-1}else for(p+Ie>G&&(p=G-Ie),ye=p;ye>=0;ye--){for(var W=!0,ce=0;ce<Ie;ce++)if(me(a,ye+ce)!==me(l,ce)){W=!1;break}if(W)return ye}return-1}o.prototype.includes=function(a,l,p){return this.indexOf(a,l,p)!==-1},o.prototype.indexOf=function(a,l,p){return q(this,a,l,p,!0)},o.prototype.lastIndexOf=function(a,l,p){return q(this,a,l,p,!1)};function ke(a,l,p,T){p=Number(p)||0;var A=a.length-p;T?(T=Number(T),T>A&&(T=A)):T=A;var U=l.length;T>U/2&&(T=U/2);for(var G=0;G<T;++G){var Ie=parseInt(l.substr(G*2,2),16);if($r(Ie))return G;a[p+G]=Ie}return G}function B(a,l,p,T){return $n(nn(l,a.length-p),a,p,T)}function Z(a,l,p,T){return $n(ei(l),a,p,T)}function z(a,l,p,T){return $n(Gn(l),a,p,T)}function J(a,l,p,T){return $n(qi(l,a.length-p),a,p,T)}o.prototype.write=function(a,l,p,T){if(l===void 0)T="utf8",p=this.length,l=0;else if(p===void 0&&typeof l=="string")T=l,p=this.length,l=0;else if(isFinite(l))l=l>>>0,isFinite(p)?(p=p>>>0,T===void 0&&(T="utf8")):(T=p,p=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var A=this.length-l;if((p===void 0||p>A)&&(p=A),a.length>0&&(p<0||l<0)||l>this.length)throw new RangeError("Attempt to write outside buffer bounds");T||(T="utf8");for(var U=!1;;)switch(T){case"hex":return ke(this,a,l,p);case"utf8":case"utf-8":return B(this,a,l,p);case"ascii":case"latin1":case"binary":return Z(this,a,l,p);case"base64":return z(this,a,l,p);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return J(this,a,l,p);default:if(U)throw new TypeError("Unknown encoding: "+T);T=(""+T).toLowerCase(),U=!0}},o.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function ge(a,l,p){return l===0&&p===a.length?Ru.fromByteArray(a):Ru.fromByteArray(a.slice(l,p))}function $e(a,l,p){p=Math.min(a.length,p);for(var T=[],A=l;A<p;){var U=a[A],G=null,Ie=U>239?4:U>223?3:U>191?2:1;if(A+Ie<=p){var me,ye,je,W;switch(Ie){case 1:U<128&&(G=U);break;case 2:me=a[A+1],(me&192)===128&&(W=(U&31)<<6|me&63,W>127&&(G=W));break;case 3:me=a[A+1],ye=a[A+2],(me&192)===128&&(ye&192)===128&&(W=(U&15)<<12|(me&63)<<6|ye&63,W>2047&&(W<55296||W>57343)&&(G=W));break;case 4:me=a[A+1],ye=a[A+2],je=a[A+3],(me&192)===128&&(ye&192)===128&&(je&192)===128&&(W=(U&15)<<18|(me&63)<<12|(ye&63)<<6|je&63,W>65535&&W<1114112&&(G=W))}}G===null?(G=65533,Ie=1):G>65535&&(G-=65536,T.push(G>>>10&1023|55296),G=56320|G&1023),T.push(G),A+=Ie}return g(T)}var xe=4096;function g(a){var l=a.length;if(l<=xe)return String.fromCharCode.apply(String,a);for(var p="",T=0;T<l;)p+=String.fromCharCode.apply(String,a.slice(T,T+=xe));return p}function Ke(a,l,p){var T="";p=Math.min(a.length,p);for(var A=l;A<p;++A)T+=String.fromCharCode(a[A]&127);return T}function ve(a,l,p){var T="";p=Math.min(a.length,p);for(var A=l;A<p;++A)T+=String.fromCharCode(a[A]);return T}function gt(a,l,p){var T=a.length;(!l||l<0)&&(l=0),(!p||p<0||p>T)&&(p=T);for(var A="",U=l;U<p;++U)A+=Gi[a[U]];return A}function ae(a,l,p){for(var T=a.slice(l,p),A="",U=0;U<T.length-1;U+=2)A+=String.fromCharCode(T[U]+T[U+1]*256);return A}o.prototype.slice=function(a,l){var p=this.length;a=~~a,l=l===void 0?p:~~l,a<0?(a+=p,a<0&&(a=0)):a>p&&(a=p),l<0?(l+=p,l<0&&(l=0)):l>p&&(l=p),l<a&&(l=a);var T=this.subarray(a,l);return Object.setPrototypeOf(T,o.prototype),T};function ie(a,l,p){if(a%1!==0||a<0)throw new RangeError("offset is not uint");if(a+l>p)throw new RangeError("Trying to access beyond buffer length")}o.prototype.readUintLE=o.prototype.readUIntLE=function(a,l,p){a=a>>>0,l=l>>>0,p||ie(a,l,this.length);for(var T=this[a],A=1,U=0;++U<l&&(A*=256);)T+=this[a+U]*A;return T},o.prototype.readUintBE=o.prototype.readUIntBE=function(a,l,p){a=a>>>0,l=l>>>0,p||ie(a,l,this.length);for(var T=this[a+--l],A=1;l>0&&(A*=256);)T+=this[a+--l]*A;return T},o.prototype.readUint8=o.prototype.readUInt8=function(a,l){return a=a>>>0,l||ie(a,1,this.length),this[a]},o.prototype.readUint16LE=o.prototype.readUInt16LE=function(a,l){return a=a>>>0,l||ie(a,2,this.length),this[a]|this[a+1]<<8},o.prototype.readUint16BE=o.prototype.readUInt16BE=function(a,l){return a=a>>>0,l||ie(a,2,this.length),this[a]<<8|this[a+1]},o.prototype.readUint32LE=o.prototype.readUInt32LE=function(a,l){return a=a>>>0,l||ie(a,4,this.length),(this[a]|this[a+1]<<8|this[a+2]<<16)+this[a+3]*16777216},o.prototype.readUint32BE=o.prototype.readUInt32BE=function(a,l){return a=a>>>0,l||ie(a,4,this.length),this[a]*16777216+(this[a+1]<<16|this[a+2]<<8|this[a+3])},o.prototype.readIntLE=function(a,l,p){a=a>>>0,l=l>>>0,p||ie(a,l,this.length);for(var T=this[a],A=1,U=0;++U<l&&(A*=256);)T+=this[a+U]*A;return A*=128,T>=A&&(T-=Math.pow(2,8*l)),T},o.prototype.readIntBE=function(a,l,p){a=a>>>0,l=l>>>0,p||ie(a,l,this.length);for(var T=l,A=1,U=this[a+--T];T>0&&(A*=256);)U+=this[a+--T]*A;return A*=128,U>=A&&(U-=Math.pow(2,8*l)),U},o.prototype.readInt8=function(a,l){return a=a>>>0,l||ie(a,1,this.length),this[a]&128?(255-this[a]+1)*-1:this[a]},o.prototype.readInt16LE=function(a,l){a=a>>>0,l||ie(a,2,this.length);var p=this[a]|this[a+1]<<8;return p&32768?p|4294901760:p},o.prototype.readInt16BE=function(a,l){a=a>>>0,l||ie(a,2,this.length);var p=this[a+1]|this[a]<<8;return p&32768?p|4294901760:p},o.prototype.readInt32LE=function(a,l){return a=a>>>0,l||ie(a,4,this.length),this[a]|this[a+1]<<8|this[a+2]<<16|this[a+3]<<24},o.prototype.readInt32BE=function(a,l){return a=a>>>0,l||ie(a,4,this.length),this[a]<<24|this[a+1]<<16|this[a+2]<<8|this[a+3]},o.prototype.readFloatLE=function(a,l){return a=a>>>0,l||ie(a,4,this.length),bi.read(this,a,!0,23,4)},o.prototype.readFloatBE=function(a,l){return a=a>>>0,l||ie(a,4,this.length),bi.read(this,a,!1,23,4)},o.prototype.readDoubleLE=function(a,l){return a=a>>>0,l||ie(a,8,this.length),bi.read(this,a,!0,52,8)},o.prototype.readDoubleBE=function(a,l){return a=a>>>0,l||ie(a,8,this.length),bi.read(this,a,!1,52,8)};function ut(a,l,p,T,A,U){if(!o.isBuffer(a))throw new TypeError('"buffer" argument must be a Buffer instance');if(l>A||l<U)throw new RangeError('"value" argument is out of bounds');if(p+T>a.length)throw new RangeError("Index out of range")}o.prototype.writeUintLE=o.prototype.writeUIntLE=function(a,l,p,T){if(a=+a,l=l>>>0,p=p>>>0,!T){var A=Math.pow(2,8*p)-1;ut(this,a,l,p,A,0)}var U=1,G=0;for(this[l]=a&255;++G<p&&(U*=256);)this[l+G]=a/U&255;return l+p},o.prototype.writeUintBE=o.prototype.writeUIntBE=function(a,l,p,T){if(a=+a,l=l>>>0,p=p>>>0,!T){var A=Math.pow(2,8*p)-1;ut(this,a,l,p,A,0)}var U=p-1,G=1;for(this[l+U]=a&255;--U>=0&&(G*=256);)this[l+U]=a/G&255;return l+p},o.prototype.writeUint8=o.prototype.writeUInt8=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,1,255,0),this[l]=a&255,l+1},o.prototype.writeUint16LE=o.prototype.writeUInt16LE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,2,65535,0),this[l]=a&255,this[l+1]=a>>>8,l+2},o.prototype.writeUint16BE=o.prototype.writeUInt16BE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,2,65535,0),this[l]=a>>>8,this[l+1]=a&255,l+2},o.prototype.writeUint32LE=o.prototype.writeUInt32LE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,4,4294967295,0),this[l+3]=a>>>24,this[l+2]=a>>>16,this[l+1]=a>>>8,this[l]=a&255,l+4},o.prototype.writeUint32BE=o.prototype.writeUInt32BE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,4,4294967295,0),this[l]=a>>>24,this[l+1]=a>>>16,this[l+2]=a>>>8,this[l+3]=a&255,l+4},o.prototype.writeIntLE=function(a,l,p,T){if(a=+a,l=l>>>0,!T){var A=Math.pow(2,8*p-1);ut(this,a,l,p,A-1,-A)}var U=0,G=1,Ie=0;for(this[l]=a&255;++U<p&&(G*=256);)a<0&&Ie===0&&this[l+U-1]!==0&&(Ie=1),this[l+U]=(a/G>>0)-Ie&255;return l+p},o.prototype.writeIntBE=function(a,l,p,T){if(a=+a,l=l>>>0,!T){var A=Math.pow(2,8*p-1);ut(this,a,l,p,A-1,-A)}var U=p-1,G=1,Ie=0;for(this[l+U]=a&255;--U>=0&&(G*=256);)a<0&&Ie===0&&this[l+U+1]!==0&&(Ie=1),this[l+U]=(a/G>>0)-Ie&255;return l+p},o.prototype.writeInt8=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,1,127,-128),a<0&&(a=255+a+1),this[l]=a&255,l+1},o.prototype.writeInt16LE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,2,32767,-32768),this[l]=a&255,this[l+1]=a>>>8,l+2},o.prototype.writeInt16BE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,2,32767,-32768),this[l]=a>>>8,this[l+1]=a&255,l+2},o.prototype.writeInt32LE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,4,2147483647,-2147483648),this[l]=a&255,this[l+1]=a>>>8,this[l+2]=a>>>16,this[l+3]=a>>>24,l+4},o.prototype.writeInt32BE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,4,2147483647,-2147483648),a<0&&(a=4294967295+a+1),this[l]=a>>>24,this[l+1]=a>>>16,this[l+2]=a>>>8,this[l+3]=a&255,l+4};function tr(a,l,p,T,A,U){if(p+T>a.length)throw new RangeError("Index out of range");if(p<0)throw new RangeError("Index out of range")}function lr(a,l,p,T,A){return l=+l,p=p>>>0,A||tr(a,l,p,4),bi.write(a,l,p,T,23,4),p+4}o.prototype.writeFloatLE=function(a,l,p){return lr(this,a,l,!0,p)},o.prototype.writeFloatBE=function(a,l,p){return lr(this,a,l,!1,p)};function yt(a,l,p,T,A){return l=+l,p=p>>>0,A||tr(a,l,p,8),bi.write(a,l,p,T,52,8),p+8}o.prototype.writeDoubleLE=function(a,l,p){return yt(this,a,l,!0,p)},o.prototype.writeDoubleBE=function(a,l,p){return yt(this,a,l,!1,p)},o.prototype.copy=function(a,l,p,T){if(!o.isBuffer(a))throw new TypeError("argument should be a Buffer");if(p||(p=0),!T&&T!==0&&(T=this.length),l>=a.length&&(l=a.length),l||(l=0),T>0&&T<p&&(T=p),T===p||a.length===0||this.length===0)return 0;if(l<0)throw new RangeError("targetStart out of bounds");if(p<0||p>=this.length)throw new RangeError("Index out of range");if(T<0)throw new RangeError("sourceEnd out of bounds");T>this.length&&(T=this.length),a.length-l<T-p&&(T=a.length-l+p);var A=T-p;return this===a&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(l,p,T):Uint8Array.prototype.set.call(a,this.subarray(p,T),l),A},o.prototype.fill=function(a,l,p,T){if(typeof a=="string"){if(typeof l=="string"?(T=l,l=0,p=this.length):typeof p=="string"&&(T=p,p=this.length),T!==void 0&&typeof T!="string")throw new TypeError("encoding must be a string");if(typeof T=="string"&&!o.isEncoding(T))throw new TypeError("Unknown encoding: "+T);if(a.length===1){var A=a.charCodeAt(0);(T==="utf8"&&A<128||T==="latin1")&&(a=A)}}else typeof a=="number"?a=a&255:typeof a=="boolean"&&(a=Number(a));if(l<0||this.length<l||this.length<p)throw new RangeError("Out of range index");if(p<=l)return this;l=l>>>0,p=p===void 0?this.length:p>>>0,a||(a=0);var U;if(typeof a=="number")for(U=l;U<p;++U)this[U]=a;else{var G=o.isBuffer(a)?a:o.from(a,T),Ie=G.length;if(Ie===0)throw new TypeError('The value "'+a+'" is invalid for argument "value"');for(U=0;U<p-l;++U)this[U+l]=G[U%Ie]}return this};var Hr=/[^+/0-9A-Za-z-_]/g;function Hn(a){if(a=a.split("=")[0],a=a.trim().replace(Hr,""),a.length<2)return"";for(;a.length%4!==0;)a=a+"=";return a}function nn(a,l){l=l||1/0;for(var p,T=a.length,A=null,U=[],G=0;G<T;++G){if(p=a.charCodeAt(G),p>55295&&p<57344){if(!A){if(p>56319){(l-=3)>-1&&U.push(239,191,189);continue}else if(G+1===T){(l-=3)>-1&&U.push(239,191,189);continue}A=p;continue}if(p<56320){(l-=3)>-1&&U.push(239,191,189),A=p;continue}p=(A-55296<<10|p-56320)+65536}else A&&(l-=3)>-1&&U.push(239,191,189);if(A=null,p<128){if((l-=1)<0)break;U.push(p)}else if(p<2048){if((l-=2)<0)break;U.push(p>>6|192,p&63|128)}else if(p<65536){if((l-=3)<0)break;U.push(p>>12|224,p>>6&63|128,p&63|128)}else if(p<1114112){if((l-=4)<0)break;U.push(p>>18|240,p>>12&63|128,p>>6&63|128,p&63|128)}else throw new Error("Invalid code point")}return U}function ei(a){for(var l=[],p=0;p<a.length;++p)l.push(a.charCodeAt(p)&255);return l}function qi(a,l){for(var p,T,A,U=[],G=0;G<a.length&&!((l-=2)<0);++G)p=a.charCodeAt(G),T=p>>8,A=p%256,U.push(A),U.push(T);return U}function Gn(a){return Ru.toByteArray(Hn(a))}function $n(a,l,p,T){for(var A=0;A<T&&!(A+p>=l.length||A>=a.length);++A)l[A+p]=a[A];return A}function vt(a,l){return a instanceof l||a!=null&&a.constructor!=null&&a.constructor.name!=null&&a.constructor.name===l.name}function $r(a){return a!==a}var Gi=function(){for(var a="0123456789abcdef",l=new Array(256),p=0;p<16;++p)for(var T=p*16,A=0;A<16;++A)l[T+A]=a[p]+a[A];return l}()}),we=ha.Buffer;ha.SlowBuffer;ha.INSPECT_MAX_BYTES;ha.kMaxLength;var Lu=function(e,t){return Lu=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var i in n)n.hasOwnProperty(i)&&(r[i]=n[i])},Lu(e,t)};function ga(e,t){Lu(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}var Cn=function(e){ga(t,e);function t(r){var n=e.call(this,r)||this;return Object.setPrototypeOf(n,t.prototype),n}return Object.defineProperty(t.prototype,"name",{get:function(){return"BSONError"},enumerable:!1,configurable:!0}),t}(Error),Ve=function(e){ga(t,e);function t(r){var n=e.call(this,r)||this;return Object.setPrototypeOf(n,t.prototype),n}return Object.defineProperty(t.prototype,"name",{get:function(){return"BSONTypeError"},enumerable:!1,configurable:!0}),t}(TypeError);function ma(e){return e&&e.Math==Math&&e}function gd(){return ma(typeof globalThis=="object"&&globalThis)||ma(typeof window=="object"&&window)||ma(typeof self=="object"&&self)||ma(typeof global=="object"&&global)||Function("return this")()}function GE(){var e=gd();return typeof e.navigator=="object"&&e.navigator.product==="ReactNative"}var YE=function(e){var t=GE()?"BSON: For React Native please polyfill crypto.getRandomValues, e.g. using: https://www.npmjs.com/package/react-native-get-random-values.":"BSON: No cryptographic implementation for random bytes present, falling back to a less secure implementation.";console.warn(t);for(var r=we.alloc(e),n=0;n<e;++n)r[n]=Math.floor(Math.random()*256);return r},zE=function(){{if(typeof window<"u"){var e=window.crypto||window.msCrypto;if(e&&e.getRandomValues)return function(t){return e.getRandomValues(we.alloc(t))}}return typeof global<"u"&&global.crypto&&global.crypto.getRandomValues?function(t){return global.crypto.getRandomValues(we.alloc(t))}:YE}},yd=zE();function qE(e){return["[object ArrayBuffer]","[object SharedArrayBuffer]"].includes(Object.prototype.toString.call(e))}function Uu(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}function KE(e){return Object.prototype.toString.call(e)==="[object RegExp]"}function XE(e){return Io(e)&&Object.prototype.toString.call(e)==="[object Date]"}function Io(e){return typeof e=="object"&&e!==null}function ya(e,t){var r=!1;function n(){for(var i=[],s=0;s<arguments.length;s++)i[s]=arguments[s];return r||(console.warn(t),r=!0),e.apply(this,i)}return n}function da(e){if(ArrayBuffer.isView(e))return we.from(e.buffer,e.byteOffset,e.byteLength);if(qE(e))return we.from(e);throw new Ve("Must use either Buffer or TypedArray")}var JE=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|[0-9a-f]{12}4[0-9a-f]{3}[89ab][0-9a-f]{15})$/i,vd=function(e){return typeof e=="string"&&JE.test(e)},Bu=function(e){if(!vd(e))throw new Ve('UUID string representations must be a 32 or 36 character hex string (dashes excluded/included). Format: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" or "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx".');var t=e.replace(/-/g,"");return we.from(t,"hex")},ed=function(e,t){return t===void 0&&(t=!0),t?e.toString("hex",0,4)+"-"+e.toString("hex",4,6)+"-"+e.toString("hex",6,8)+"-"+e.toString("hex",8,10)+"-"+e.toString("hex",10,16):e.toString("hex")},WO=Math.pow(2,63)-1,GO=-Math.pow(2,63),QE=Math.pow(2,53),ZE=-Math.pow(2,53),Ed=4,xn=function(){function e(t,r){if(!(this instanceof e))return new e(t,r);if(t!=null&&typeof t!="string"&&!ArrayBuffer.isView(t)&&!(t instanceof ArrayBuffer)&&!Array.isArray(t))throw new Ve("Binary can only be constructed from string, Buffer, TypedArray, or Array<number>");this.sub_type=r??e.BSON_BINARY_SUBTYPE_DEFAULT,t==null?(this.buffer=we.alloc(e.BUFFER_SIZE),this.position=0):(typeof t=="string"?this.buffer=we.from(t,"binary"):Array.isArray(t)?this.buffer=we.from(t):this.buffer=da(t),this.position=this.buffer.byteLength)}return e.prototype.put=function(t){if(typeof t=="string"&&t.length!==1)throw new Ve("only accepts single character String");if(typeof t!="number"&&t.length!==1)throw new Ve("only accepts single character Uint8Array or Array");var r;if(typeof t=="string"?r=t.charCodeAt(0):typeof t=="number"?r=t:r=t[0],r<0||r>255)throw new Ve("only accepts number in a valid unsigned byte range 0-255");if(this.buffer.length>this.position)this.buffer[this.position++]=r;else{var n=we.alloc(e.BUFFER_SIZE+this.buffer.length);this.buffer.copy(n,0,0,this.buffer.length),this.buffer=n,this.buffer[this.position++]=r}},e.prototype.write=function(t,r){if(r=typeof r=="number"?r:this.position,this.buffer.length<r+t.length){var n=we.alloc(this.buffer.length+t.length);this.buffer.copy(n,0,0,this.buffer.length),this.buffer=n}ArrayBuffer.isView(t)?(this.buffer.set(da(t),r),this.position=r+t.byteLength>this.position?r+t.length:this.position):typeof t=="string"&&(this.buffer.write(t,r,t.length,"binary"),this.position=r+t.length>this.position?r+t.length:this.position)},e.prototype.read=function(t,r){return r=r&&r>0?r:this.position,this.buffer.slice(t,t+r)},e.prototype.value=function(t){return t=!!t,t&&this.buffer.length===this.position?this.buffer:t?this.buffer.slice(0,this.position):this.buffer.toString("binary",0,this.position)},e.prototype.length=function(){return this.position},e.prototype.toJSON=function(){return this.buffer.toString("base64")},e.prototype.toString=function(t){return this.buffer.toString(t)},e.prototype.toExtendedJSON=function(t){t=t||{};var r=this.buffer.toString("base64"),n=Number(this.sub_type).toString(16);return t.legacy?{$binary:r,$type:n.length===1?"0"+n:n}:{$binary:{base64:r,subType:n.length===1?"0"+n:n}}},e.prototype.toUUID=function(){if(this.sub_type===e.SUBTYPE_UUID)return new td(this.buffer.slice(0,this.position));throw new Cn('Binary sub_type "'.concat(this.sub_type,'" is not supported for converting to UUID. Only "').concat(e.SUBTYPE_UUID,'" is currently supported.'))},e.fromExtendedJSON=function(t,r){r=r||{};var n,i;if("$binary"in t?r.legacy&&typeof t.$binary=="string"&&"$type"in t?(i=t.$type?parseInt(t.$type,16):0,n=we.from(t.$binary,"base64")):typeof t.$binary!="string"&&(i=t.$binary.subType?parseInt(t.$binary.subType,16):0,n=we.from(t.$binary.base64,"base64")):"$uuid"in t&&(i=4,n=Bu(t.$uuid)),!n)throw new Ve("Unexpected Binary Extended JSON format ".concat(JSON.stringify(t)));return i===Ed?new td(n):new e(n,i)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){var t=this.value(!0);return'new Binary(Buffer.from("'.concat(t.toString("hex"),'", "hex"), ').concat(this.sub_type,")")},e.BSON_BINARY_SUBTYPE_DEFAULT=0,e.BUFFER_SIZE=256,e.SUBTYPE_DEFAULT=0,e.SUBTYPE_FUNCTION=1,e.SUBTYPE_BYTE_ARRAY=2,e.SUBTYPE_UUID_OLD=3,e.SUBTYPE_UUID=4,e.SUBTYPE_MD5=5,e.SUBTYPE_ENCRYPTED=6,e.SUBTYPE_COLUMN=7,e.SUBTYPE_USER_DEFINED=128,e}();Object.defineProperty(xn.prototype,"_bsontype",{value:"Binary"});var Au=16,td=function(e){ga(t,e);function t(r){var n=this,i,s;if(r==null)i=t.generate();else if(r instanceof t)i=we.from(r.buffer),s=r.__id;else if(ArrayBuffer.isView(r)&&r.byteLength===Au)i=da(r);else if(typeof r=="string")i=Bu(r);else throw new Ve("Argument passed in UUID constructor must be a UUID, a 16 byte Buffer or a 32/36 character hex string (dashes excluded/included, format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).");return n=e.call(this,i,Ed)||this,n.__id=s,n}return Object.defineProperty(t.prototype,"id",{get:function(){return this.buffer},set:function(r){this.buffer=r,t.cacheHexString&&(this.__id=ed(r))},enumerable:!1,configurable:!0}),t.prototype.toHexString=function(r){if(r===void 0&&(r=!0),t.cacheHexString&&this.__id)return this.__id;var n=ed(this.id,r);return t.cacheHexString&&(this.__id=n),n},t.prototype.toString=function(r){return r?this.id.toString(r):this.toHexString()},t.prototype.toJSON=function(){return this.toHexString()},t.prototype.equals=function(r){if(!r)return!1;if(r instanceof t)return r.id.equals(this.id);try{return new t(r).id.equals(this.id)}catch{return!1}},t.prototype.toBinary=function(){return new xn(this.id,xn.SUBTYPE_UUID)},t.generate=function(){var r=yd(Au);return r[6]=r[6]&15|64,r[8]=r[8]&63|128,we.from(r)},t.isValid=function(r){return r?r instanceof t?!0:typeof r=="string"?vd(r):Uu(r)?r.length!==Au?!1:(r[6]&240)===64&&(r[8]&128)===128:!1:!1},t.createFromHexString=function(r){var n=Bu(r);return new t(n)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return'new UUID("'.concat(this.toHexString(),'")')},t}(xn),va=function(){function e(t,r){if(!(this instanceof e))return new e(t,r);this.code=t,this.scope=r}return e.prototype.toJSON=function(){return{code:this.code,scope:this.scope}},e.prototype.toExtendedJSON=function(){return this.scope?{$code:this.code,$scope:this.scope}:{$code:this.code}},e.fromExtendedJSON=function(t){return new e(t.$code,t.$scope)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){var t=this.toJSON();return'new Code("'.concat(String(t.code),'"').concat(t.scope?", ".concat(JSON.stringify(t.scope)):"",")")},e}();Object.defineProperty(va.prototype,"_bsontype",{value:"Code"});function e_(e){return Io(e)&&e.$id!=null&&typeof e.$ref=="string"&&(e.$db==null||typeof e.$db=="string")}var wo=function(){function e(t,r,n,i){if(!(this instanceof e))return new e(t,r,n,i);var s=t.split(".");s.length===2&&(n=s.shift(),t=s.shift()),this.collection=t,this.oid=r,this.db=n,this.fields=i||{}}return Object.defineProperty(e.prototype,"namespace",{get:function(){return this.collection},set:function(t){this.collection=t},enumerable:!1,configurable:!0}),e.prototype.toJSON=function(){var t=Object.assign({$ref:this.collection,$id:this.oid},this.fields);return this.db!=null&&(t.$db=this.db),t},e.prototype.toExtendedJSON=function(t){t=t||{};var r={$ref:this.collection,$id:this.oid};return t.legacy||(this.db&&(r.$db=this.db),r=Object.assign(r,this.fields)),r},e.fromExtendedJSON=function(t){var r=Object.assign({},t);return delete r.$ref,delete r.$id,delete r.$db,new e(t.$ref,t.$id,t.$db,r)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){var t=this.oid===void 0||this.oid.toString===void 0?this.oid:this.oid.toString();return'new DBRef("'.concat(this.namespace,'", new ObjectId("').concat(String(t),'")').concat(this.db?', "'.concat(this.db,'"'):"",")")},e}();Object.defineProperty(wo.prototype,"_bsontype",{value:"DBRef"});var zt=void 0;try{zt=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch{}var rd=65536,t_=1<<24,Ti=rd*rd,_d=Ti*Ti,nd=_d/2,id={},od={},X=function(){function e(t,r,n){if(t===void 0&&(t=0),!(this instanceof e))return new e(t,r,n);typeof t=="bigint"?Object.assign(this,e.fromBigInt(t,!!r)):typeof t=="string"?Object.assign(this,e.fromString(t,!!r)):(this.low=t|0,this.high=r|0,this.unsigned=!!n),Object.defineProperty(this,"__isLong__",{value:!0,configurable:!1,writable:!1,enumerable:!1})}return e.fromBits=function(t,r,n){return new e(t,r,n)},e.fromInt=function(t,r){var n,i,s;return r?(t>>>=0,(s=0<=t&&t<256)&&(i=od[t],i)?i:(n=e.fromBits(t,(t|0)<0?-1:0,!0),s&&(od[t]=n),n)):(t|=0,(s=-128<=t&&t<128)&&(i=id[t],i)?i:(n=e.fromBits(t,t<0?-1:0,!1),s&&(id[t]=n),n))},e.fromNumber=function(t,r){if(isNaN(t))return r?e.UZERO:e.ZERO;if(r){if(t<0)return e.UZERO;if(t>=_d)return e.MAX_UNSIGNED_VALUE}else{if(t<=-nd)return e.MIN_VALUE;if(t+1>=nd)return e.MAX_VALUE}return t<0?e.fromNumber(-t,r).neg():e.fromBits(t%Ti|0,t/Ti|0,r)},e.fromBigInt=function(t,r){return e.fromString(t.toString(),r)},e.fromString=function(t,r,n){if(t.length===0)throw Error("empty string");if(t==="NaN"||t==="Infinity"||t==="+Infinity"||t==="-Infinity")return e.ZERO;if(typeof r=="number"?(n=r,r=!1):r=!!r,n=n||10,n<2||36<n)throw RangeError("radix");var i;if((i=t.indexOf("-"))>0)throw Error("interior hyphen");if(i===0)return e.fromString(t.substring(1),r,n).neg();for(var s=e.fromNumber(Math.pow(n,8)),o=e.ZERO,c=0;c<t.length;c+=8){var u=Math.min(8,t.length-c),d=parseInt(t.substring(c,c+u),n);if(u<8){var m=e.fromNumber(Math.pow(n,u));o=o.mul(m).add(e.fromNumber(d))}else o=o.mul(s),o=o.add(e.fromNumber(d))}return o.unsigned=r,o},e.fromBytes=function(t,r,n){return n?e.fromBytesLE(t,r):e.fromBytesBE(t,r)},e.fromBytesLE=function(t,r){return new e(t[0]|t[1]<<8|t[2]<<16|t[3]<<24,t[4]|t[5]<<8|t[6]<<16|t[7]<<24,r)},e.fromBytesBE=function(t,r){return new e(t[4]<<24|t[5]<<16|t[6]<<8|t[7],t[0]<<24|t[1]<<16|t[2]<<8|t[3],r)},e.isLong=function(t){return Io(t)&&t.__isLong__===!0},e.fromValue=function(t,r){return typeof t=="number"?e.fromNumber(t,r):typeof t=="string"?e.fromString(t,r):e.fromBits(t.low,t.high,typeof r=="boolean"?r:t.unsigned)},e.prototype.add=function(t){e.isLong(t)||(t=e.fromValue(t));var r=this.high>>>16,n=this.high&65535,i=this.low>>>16,s=this.low&65535,o=t.high>>>16,c=t.high&65535,u=t.low>>>16,d=t.low&65535,m=0,h=0,y=0,E=0;return E+=s+d,y+=E>>>16,E&=65535,y+=i+u,h+=y>>>16,y&=65535,h+=n+c,m+=h>>>16,h&=65535,m+=r+o,m&=65535,e.fromBits(y<<16|E,m<<16|h,this.unsigned)},e.prototype.and=function(t){return e.isLong(t)||(t=e.fromValue(t)),e.fromBits(this.low&t.low,this.high&t.high,this.unsigned)},e.prototype.compare=function(t){if(e.isLong(t)||(t=e.fromValue(t)),this.eq(t))return 0;var r=this.isNegative(),n=t.isNegative();return r&&!n?-1:!r&&n?1:this.unsigned?t.high>>>0>this.high>>>0||t.high===this.high&&t.low>>>0>this.low>>>0?-1:1:this.sub(t).isNegative()?-1:1},e.prototype.comp=function(t){return this.compare(t)},e.prototype.divide=function(t){if(e.isLong(t)||(t=e.fromValue(t)),t.isZero())throw Error("division by zero");if(zt){if(!this.unsigned&&this.high===-2147483648&&t.low===-1&&t.high===-1)return this;var r=(this.unsigned?zt.div_u:zt.div_s)(this.low,this.high,t.low,t.high);return e.fromBits(r,zt.get_high(),this.unsigned)}if(this.isZero())return this.unsigned?e.UZERO:e.ZERO;var n,i,s;if(this.unsigned){if(t.unsigned||(t=t.toUnsigned()),t.gt(this))return e.UZERO;if(t.gt(this.shru(1)))return e.UONE;s=e.UZERO}else{if(this.eq(e.MIN_VALUE)){if(t.eq(e.ONE)||t.eq(e.NEG_ONE))return e.MIN_VALUE;if(t.eq(e.MIN_VALUE))return e.ONE;var o=this.shr(1);return n=o.div(t).shl(1),n.eq(e.ZERO)?t.isNegative()?e.ONE:e.NEG_ONE:(i=this.sub(t.mul(n)),s=n.add(i.div(t)),s)}else if(t.eq(e.MIN_VALUE))return this.unsigned?e.UZERO:e.ZERO;if(this.isNegative())return t.isNegative()?this.neg().div(t.neg()):this.neg().div(t).neg();if(t.isNegative())return this.div(t.neg()).neg();s=e.ZERO}for(i=this;i.gte(t);){n=Math.max(1,Math.floor(i.toNumber()/t.toNumber()));for(var c=Math.ceil(Math.log(n)/Math.LN2),u=c<=48?1:Math.pow(2,c-48),d=e.fromNumber(n),m=d.mul(t);m.isNegative()||m.gt(i);)n-=u,d=e.fromNumber(n,this.unsigned),m=d.mul(t);d.isZero()&&(d=e.ONE),s=s.add(d),i=i.sub(m)}return s},e.prototype.div=function(t){return this.divide(t)},e.prototype.equals=function(t){return e.isLong(t)||(t=e.fromValue(t)),this.unsigned!==t.unsigned&&this.high>>>31===1&&t.high>>>31===1?!1:this.high===t.high&&this.low===t.low},e.prototype.eq=function(t){return this.equals(t)},e.prototype.getHighBits=function(){return this.high},e.prototype.getHighBitsUnsigned=function(){return this.high>>>0},e.prototype.getLowBits=function(){return this.low},e.prototype.getLowBitsUnsigned=function(){return this.low>>>0},e.prototype.getNumBitsAbs=function(){if(this.isNegative())return this.eq(e.MIN_VALUE)?64:this.neg().getNumBitsAbs();var t=this.high!==0?this.high:this.low,r;for(r=31;r>0&&(t&1<<r)===0;r--);return this.high!==0?r+33:r+1},e.prototype.greaterThan=function(t){return this.comp(t)>0},e.prototype.gt=function(t){return this.greaterThan(t)},e.prototype.greaterThanOrEqual=function(t){return this.comp(t)>=0},e.prototype.gte=function(t){return this.greaterThanOrEqual(t)},e.prototype.ge=function(t){return this.greaterThanOrEqual(t)},e.prototype.isEven=function(){return(this.low&1)===0},e.prototype.isNegative=function(){return!this.unsigned&&this.high<0},e.prototype.isOdd=function(){return(this.low&1)===1},e.prototype.isPositive=function(){return this.unsigned||this.high>=0},e.prototype.isZero=function(){return this.high===0&&this.low===0},e.prototype.lessThan=function(t){return this.comp(t)<0},e.prototype.lt=function(t){return this.lessThan(t)},e.prototype.lessThanOrEqual=function(t){return this.comp(t)<=0},e.prototype.lte=function(t){return this.lessThanOrEqual(t)},e.prototype.modulo=function(t){if(e.isLong(t)||(t=e.fromValue(t)),zt){var r=(this.unsigned?zt.rem_u:zt.rem_s)(this.low,this.high,t.low,t.high);return e.fromBits(r,zt.get_high(),this.unsigned)}return this.sub(this.div(t).mul(t))},e.prototype.mod=function(t){return this.modulo(t)},e.prototype.rem=function(t){return this.modulo(t)},e.prototype.multiply=function(t){if(this.isZero())return e.ZERO;if(e.isLong(t)||(t=e.fromValue(t)),zt){var r=zt.mul(this.low,this.high,t.low,t.high);return e.fromBits(r,zt.get_high(),this.unsigned)}if(t.isZero())return e.ZERO;if(this.eq(e.MIN_VALUE))return t.isOdd()?e.MIN_VALUE:e.ZERO;if(t.eq(e.MIN_VALUE))return this.isOdd()?e.MIN_VALUE:e.ZERO;if(this.isNegative())return t.isNegative()?this.neg().mul(t.neg()):this.neg().mul(t).neg();if(t.isNegative())return this.mul(t.neg()).neg();if(this.lt(e.TWO_PWR_24)&&t.lt(e.TWO_PWR_24))return e.fromNumber(this.toNumber()*t.toNumber(),this.unsigned);var n=this.high>>>16,i=this.high&65535,s=this.low>>>16,o=this.low&65535,c=t.high>>>16,u=t.high&65535,d=t.low>>>16,m=t.low&65535,h=0,y=0,E=0,v=0;return v+=o*m,E+=v>>>16,v&=65535,E+=s*m,y+=E>>>16,E&=65535,E+=o*d,y+=E>>>16,E&=65535,y+=i*m,h+=y>>>16,y&=65535,y+=s*d,h+=y>>>16,y&=65535,y+=o*u,h+=y>>>16,y&=65535,h+=n*m+i*d+s*u+o*c,h&=65535,e.fromBits(E<<16|v,h<<16|y,this.unsigned)},e.prototype.mul=function(t){return this.multiply(t)},e.prototype.negate=function(){return!this.unsigned&&this.eq(e.MIN_VALUE)?e.MIN_VALUE:this.not().add(e.ONE)},e.prototype.neg=function(){return this.negate()},e.prototype.not=function(){return e.fromBits(~this.low,~this.high,this.unsigned)},e.prototype.notEquals=function(t){return!this.equals(t)},e.prototype.neq=function(t){return this.notEquals(t)},e.prototype.ne=function(t){return this.notEquals(t)},e.prototype.or=function(t){return e.isLong(t)||(t=e.fromValue(t)),e.fromBits(this.low|t.low,this.high|t.high,this.unsigned)},e.prototype.shiftLeft=function(t){return e.isLong(t)&&(t=t.toInt()),(t&=63)===0?this:t<32?e.fromBits(this.low<<t,this.high<<t|this.low>>>32-t,this.unsigned):e.fromBits(0,this.low<<t-32,this.unsigned)},e.prototype.shl=function(t){return this.shiftLeft(t)},e.prototype.shiftRight=function(t){return e.isLong(t)&&(t=t.toInt()),(t&=63)===0?this:t<32?e.fromBits(this.low>>>t|this.high<<32-t,this.high>>t,this.unsigned):e.fromBits(this.high>>t-32,this.high>=0?0:-1,this.unsigned)},e.prototype.shr=function(t){return this.shiftRight(t)},e.prototype.shiftRightUnsigned=function(t){if(e.isLong(t)&&(t=t.toInt()),t&=63,t===0)return this;var r=this.high;if(t<32){var n=this.low;return e.fromBits(n>>>t|r<<32-t,r>>>t,this.unsigned)}else return t===32?e.fromBits(r,0,this.unsigned):e.fromBits(r>>>t-32,0,this.unsigned)},e.prototype.shr_u=function(t){return this.shiftRightUnsigned(t)},e.prototype.shru=function(t){return this.shiftRightUnsigned(t)},e.prototype.subtract=function(t){return e.isLong(t)||(t=e.fromValue(t)),this.add(t.neg())},e.prototype.sub=function(t){return this.subtract(t)},e.prototype.toInt=function(){return this.unsigned?this.low>>>0:this.low},e.prototype.toNumber=function(){return this.unsigned?(this.high>>>0)*Ti+(this.low>>>0):this.high*Ti+(this.low>>>0)},e.prototype.toBigInt=function(){return BigInt(this.toString())},e.prototype.toBytes=function(t){return t?this.toBytesLE():this.toBytesBE()},e.prototype.toBytesLE=function(){var t=this.high,r=this.low;return[r&255,r>>>8&255,r>>>16&255,r>>>24,t&255,t>>>8&255,t>>>16&255,t>>>24]},e.prototype.toBytesBE=function(){var t=this.high,r=this.low;return[t>>>24,t>>>16&255,t>>>8&255,t&255,r>>>24,r>>>16&255,r>>>8&255,r&255]},e.prototype.toSigned=function(){return this.unsigned?e.fromBits(this.low,this.high,!1):this},e.prototype.toString=function(t){if(t=t||10,t<2||36<t)throw RangeError("radix");if(this.isZero())return"0";if(this.isNegative())if(this.eq(e.MIN_VALUE)){var r=e.fromNumber(t),n=this.div(r),i=n.mul(r).sub(this);return n.toString(t)+i.toInt().toString(t)}else return"-"+this.neg().toString(t);for(var s=e.fromNumber(Math.pow(t,6),this.unsigned),o=this,c="";;){var u=o.div(s),d=o.sub(u.mul(s)).toInt()>>>0,m=d.toString(t);if(o=u,o.isZero())return m+c;for(;m.length<6;)m="0"+m;c=""+m+c}},e.prototype.toUnsigned=function(){return this.unsigned?this:e.fromBits(this.low,this.high,!0)},e.prototype.xor=function(t){return e.isLong(t)||(t=e.fromValue(t)),e.fromBits(this.low^t.low,this.high^t.high,this.unsigned)},e.prototype.eqz=function(){return this.isZero()},e.prototype.le=function(t){return this.lessThanOrEqual(t)},e.prototype.toExtendedJSON=function(t){return t&&t.relaxed?this.toNumber():{$numberLong:this.toString()}},e.fromExtendedJSON=function(t,r){var n=e.fromString(t.$numberLong);return r&&r.relaxed?n.toNumber():n},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return'new Long("'.concat(this.toString(),'"').concat(this.unsigned?", true":"",")")},e.TWO_PWR_24=e.fromInt(t_),e.MAX_UNSIGNED_VALUE=e.fromBits(-1,-1,!0),e.ZERO=e.fromInt(0),e.UZERO=e.fromInt(0,!0),e.ONE=e.fromInt(1),e.UONE=e.fromInt(1,!0),e.NEG_ONE=e.fromInt(-1),e.MAX_VALUE=e.fromBits(-1,2147483647,!1),e.MIN_VALUE=e.fromBits(0,-2147483648,!1),e}();Object.defineProperty(X.prototype,"__isLong__",{value:!0});Object.defineProperty(X.prototype,"_bsontype",{value:"Long"});var r_=/^(\+|-)?(\d+|(\d*\.\d*))?(E|e)?([-+])?(\d+)?$/,n_=/^(\+|-)?(Infinity|inf)$/i,i_=/^(\+|-)?NaN$/i,So=6111,Nu=-6176,sd=6176,o_=34,Ou=[124,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),ad=[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),cd=[120,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),s_=/^([-+])?(\d+)?$/,a_=31,ld=16383,c_=30,l_=31;function ud(e){return!isNaN(parseInt(e,10))}function u_(e){var t=X.fromNumber(1e9),r=X.fromNumber(0);if(!e.parts[0]&&!e.parts[1]&&!e.parts[2]&&!e.parts[3])return{quotient:e,rem:r};for(var n=0;n<=3;n++)r=r.shiftLeft(32),r=r.add(new X(e.parts[n],0)),e.parts[n]=r.div(t).low,r=r.modulo(t);return{quotient:e,rem:r}}function p_(e,t){if(!e&&!t)return{high:X.fromNumber(0),low:X.fromNumber(0)};var r=e.shiftRightUnsigned(32),n=new X(e.getLowBits(),0),i=t.shiftRightUnsigned(32),s=new X(t.getLowBits(),0),o=r.multiply(i),c=r.multiply(s),u=n.multiply(i),d=n.multiply(s);return o=o.add(c.shiftRightUnsigned(32)),c=new X(c.getLowBits(),0).add(u).add(d.shiftRightUnsigned(32)),o=o.add(c.shiftRightUnsigned(32)),d=c.shiftLeft(32).add(new X(d.getLowBits(),0)),{high:o,low:d}}function f_(e,t){var r=e.high>>>0,n=t.high>>>0;if(r<n)return!0;if(r===n){var i=e.low>>>0,s=t.low>>>0;if(i<s)return!0}return!1}function Ii(e,t){throw new Ve('"'.concat(e,'" is not a valid Decimal128 string - ').concat(t))}var Mu=function(){function e(t){if(!(this instanceof e))return new e(t);if(typeof t=="string")this.bytes=e.fromString(t).bytes;else if(Uu(t)){if(t.byteLength!==16)throw new Ve("Decimal128 must take a Buffer of 16 bytes");this.bytes=t}else throw new Ve("Decimal128 must take a Buffer or string")}return e.fromString=function(t){var r=!1,n=!1,i=!1,s=0,o=0,c=0,u=0,d=0,m=[0],h=0,y=0,E=0,v=0,_=0,D=0,P=new X(0,0),M=new X(0,0),L=0,R=0;if(t.length>=7e3)throw new Ve(""+t+" not a valid Decimal128 string");var q=t.match(r_),he=t.match(n_),ke=t.match(i_);if(!q&&!he&&!ke||t.length===0)throw new Ve(""+t+" not a valid Decimal128 string");if(q){var B=q[2],Z=q[4],z=q[5],J=q[6];Z&&J===void 0&&Ii(t,"missing exponent power"),Z&&B===void 0&&Ii(t,"missing exponent base"),Z===void 0&&(z||J)&&Ii(t,"missing e before exponent")}if((t[R]==="+"||t[R]==="-")&&(r=t[R++]==="-"),!ud(t[R])&&t[R]!=="."){if(t[R]==="i"||t[R]==="I")return new e(we.from(r?ad:cd));if(t[R]==="N")return new e(we.from(Ou))}for(;ud(t[R])||t[R]===".";){if(t[R]==="."){n&&Ii(t,"contains multiple periods"),n=!0,R=R+1;continue}h<34&&(t[R]!=="0"||i)&&(i||(d=o),i=!0,m[y++]=parseInt(t[R],10),h=h+1),i&&(c=c+1),n&&(u=u+1),o=o+1,R=R+1}if(n&&!o)throw new Ve(""+t+" not a valid Decimal128 string");if(t[R]==="e"||t[R]==="E"){var ge=t.substr(++R).match(s_);if(!ge||!ge[2])return new e(we.from(Ou));_=parseInt(ge[0],10),R=R+ge[0].length}if(t[R])return new e(we.from(Ou));if(E=0,!h)E=0,v=0,m[0]=0,c=1,h=1,s=0;else if(v=h-1,s=c,s!==1)for(;m[d+s-1]===0;)s=s-1;for(_<=u&&u-_>16384?_=Nu:_=_-u;_>So;){if(v=v+1,v-E>o_){var $e=m.join("");if($e.match(/^0+$/)){_=So;break}Ii(t,"overflow")}_=_-1}for(;_<Nu||h<c;){if(v===0&&s<h){_=Nu,s=0;break}if(h<c?c=c-1:v=v-1,_<So)_=_+1;else{var $e=m.join("");if($e.match(/^0+$/)){_=So;break}Ii(t,"overflow")}}if(v-E+1<s){var xe=o;n&&(d=d+1,xe=xe+1),r&&(d=d+1,xe=xe+1);var g=parseInt(t[d+v+1],10),Ke=0;if(g>=5&&(Ke=1,g===5)){for(Ke=m[v]%2===1?1:0,D=d+v+2;D<xe;D++)if(parseInt(t[D],10)){Ke=1;break}}if(Ke){for(var ve=v;ve>=0;ve--)if(++m[ve]>9&&(m[ve]=0,ve===0))if(_<So)_=_+1,m[ve]=1;else return new e(we.from(r?ad:cd))}}if(P=X.fromNumber(0),M=X.fromNumber(0),s===0)P=X.fromNumber(0),M=X.fromNumber(0);else if(v-E<17){var ve=E;for(M=X.fromNumber(m[ve++]),P=new X(0,0);ve<=v;ve++)M=M.multiply(X.fromNumber(10)),M=M.add(X.fromNumber(m[ve]))}else{var ve=E;for(P=X.fromNumber(m[ve++]);ve<=v-17;ve++)P=P.multiply(X.fromNumber(10)),P=P.add(X.fromNumber(m[ve]));for(M=X.fromNumber(m[ve++]);ve<=v;ve++)M=M.multiply(X.fromNumber(10)),M=M.add(X.fromNumber(m[ve]))}var gt=p_(P,X.fromString("100000000000000000"));gt.low=gt.low.add(M),f_(gt.low,M)&&(gt.high=gt.high.add(X.fromNumber(1))),L=_+sd;var ae={low:X.fromNumber(0),high:X.fromNumber(0)};gt.high.shiftRightUnsigned(49).and(X.fromNumber(1)).equals(X.fromNumber(1))?(ae.high=ae.high.or(X.fromNumber(3).shiftLeft(61)),ae.high=ae.high.or(X.fromNumber(L).and(X.fromNumber(16383).shiftLeft(47))),ae.high=ae.high.or(gt.high.and(X.fromNumber(0x7fffffffffff)))):(ae.high=ae.high.or(X.fromNumber(L&16383).shiftLeft(49)),ae.high=ae.high.or(gt.high.and(X.fromNumber(562949953421311)))),ae.low=gt.low,r&&(ae.high=ae.high.or(X.fromString("9223372036854775808")));var ie=we.alloc(16);return R=0,ie[R++]=ae.low.low&255,ie[R++]=ae.low.low>>8&255,ie[R++]=ae.low.low>>16&255,ie[R++]=ae.low.low>>24&255,ie[R++]=ae.low.high&255,ie[R++]=ae.low.high>>8&255,ie[R++]=ae.low.high>>16&255,ie[R++]=ae.low.high>>24&255,ie[R++]=ae.high.low&255,ie[R++]=ae.high.low>>8&255,ie[R++]=ae.high.low>>16&255,ie[R++]=ae.high.low>>24&255,ie[R++]=ae.high.high&255,ie[R++]=ae.high.high>>8&255,ie[R++]=ae.high.high>>16&255,ie[R++]=ae.high.high>>24&255,new e(ie)},e.prototype.toString=function(){for(var t,r=0,n=new Array(36),i=0;i<n.length;i++)n[i]=0;var s=0,o=!1,c,u={parts:[0,0,0,0]},d,m,h=[];s=0;var y=this.bytes,E=y[s++]|y[s++]<<8|y[s++]<<16|y[s++]<<24,v=y[s++]|y[s++]<<8|y[s++]<<16|y[s++]<<24,_=y[s++]|y[s++]<<8|y[s++]<<16|y[s++]<<24,D=y[s++]|y[s++]<<8|y[s++]<<16|y[s++]<<24;s=0;var P={low:new X(E,v),high:new X(_,D)};P.high.lessThan(X.ZERO)&&h.push("-");var M=D>>26&a_;if(M>>3===3){if(M===c_)return h.join("")+"Infinity";if(M===l_)return"NaN";t=D>>15&ld,c=8+(D>>14&1)}else c=D>>14&7,t=D>>17&ld;var L=t-sd;if(u.parts[0]=(D&16383)+((c&15)<<14),u.parts[1]=_,u.parts[2]=v,u.parts[3]=E,u.parts[0]===0&&u.parts[1]===0&&u.parts[2]===0&&u.parts[3]===0)o=!0;else for(m=3;m>=0;m--){var R=0,q=u_(u);if(u=q.quotient,R=q.rem.low,!!R)for(d=8;d>=0;d--)n[m*9+d]=R%10,R=Math.floor(R/10)}if(o)r=1,n[s]=0;else for(r=36;!n[s];)r=r-1,s=s+1;var he=r-1+L;if(he>=34||he<=-7||L>0){if(r>34)return h.push("".concat(0)),L>0?h.push("E+".concat(L)):L<0&&h.push("E".concat(L)),h.join("");h.push("".concat(n[s++])),r=r-1,r&&h.push(".");for(var i=0;i<r;i++)h.push("".concat(n[s++]));h.push("E"),he>0?h.push("+".concat(he)):h.push("".concat(he))}else if(L>=0)for(var i=0;i<r;i++)h.push("".concat(n[s++]));else{var ke=r+L;if(ke>0)for(var i=0;i<ke;i++)h.push("".concat(n[s++]));else h.push("0");for(h.push(".");ke++<0;)h.push("0");for(var i=0;i<r-Math.max(ke-1,0);i++)h.push("".concat(n[s++]))}return h.join("")},e.prototype.toJSON=function(){return{$numberDecimal:this.toString()}},e.prototype.toExtendedJSON=function(){return{$numberDecimal:this.toString()}},e.fromExtendedJSON=function(t){return e.fromString(t.$numberDecimal)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return'new Decimal128("'.concat(this.toString(),'")')},e}();Object.defineProperty(Mu.prototype,"_bsontype",{value:"Decimal128"});var Ea=function(){function e(t){if(!(this instanceof e))return new e(t);t instanceof Number&&(t=t.valueOf()),this.value=+t}return e.prototype.valueOf=function(){return this.value},e.prototype.toJSON=function(){return this.value},e.prototype.toString=function(t){return this.value.toString(t)},e.prototype.toExtendedJSON=function(t){return t&&(t.legacy||t.relaxed&&isFinite(this.value))?this.value:Object.is(Math.sign(this.value),-0)?{$numberDouble:"-".concat(this.value.toFixed(1))}:{$numberDouble:Number.isInteger(this.value)?this.value.toFixed(1):this.value.toString()}},e.fromExtendedJSON=function(t,r){var n=parseFloat(t.$numberDouble);return r&&r.relaxed?n:new e(n)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){var t=this.toExtendedJSON();return"new Double(".concat(t.$numberDouble,")")},e}();Object.defineProperty(Ea.prototype,"_bsontype",{value:"Double"});var Sa=function(){function e(t){if(!(this instanceof e))return new e(t);t instanceof Number&&(t=t.valueOf()),this.value=+t|0}return e.prototype.valueOf=function(){return this.value},e.prototype.toString=function(t){return this.value.toString(t)},e.prototype.toJSON=function(){return this.value},e.prototype.toExtendedJSON=function(t){return t&&(t.relaxed||t.legacy)?this.value:{$numberInt:this.value.toString()}},e.fromExtendedJSON=function(t,r){return r&&r.relaxed?parseInt(t.$numberInt,10):new e(t.$numberInt)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return"new Int32(".concat(this.valueOf(),")")},e}();Object.defineProperty(Sa.prototype,"_bsontype",{value:"Int32"});var ku=function(){function e(){if(!(this instanceof e))return new e}return e.prototype.toExtendedJSON=function(){return{$maxKey:1}},e.fromExtendedJSON=function(){return new e},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return"new MaxKey()"},e}();Object.defineProperty(ku.prototype,"_bsontype",{value:"MaxKey"});var Fu=function(){function e(){if(!(this instanceof e))return new e}return e.prototype.toExtendedJSON=function(){return{$minKey:1}},e.fromExtendedJSON=function(){return new e},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return"new MinKey()"},e}();Object.defineProperty(Fu.prototype,"_bsontype",{value:"MinKey"});var m_=new RegExp("^[0-9a-fA-F]{24}$"),Tn=null,br=Symbol("id"),tt=function(){function e(t){if(!(this instanceof e))return new e(t);var r;if(typeof t=="object"&&t&&"id"in t){if(typeof t.id!="string"&&!ArrayBuffer.isView(t.id))throw new Ve("Argument passed in must have an id that is of type string or Buffer");"toHexString"in t&&typeof t.toHexString=="function"?r=we.from(t.toHexString(),"hex"):r=t.id}else r=t;if(r==null||typeof r=="number")this[br]=e.generate(typeof r=="number"?r:void 0);else if(ArrayBuffer.isView(r)&&r.byteLength===12)this[br]=r instanceof we?r:da(r);else if(typeof r=="string")if(r.length===12){var n=we.from(r);if(n.byteLength===12)this[br]=n;else throw new Ve("Argument passed in must be a string of 12 bytes")}else if(r.length===24&&m_.test(r))this[br]=we.from(r,"hex");else throw new Ve("Argument passed in must be a string of 12 bytes or a string of 24 hex characters or an integer");else throw new Ve("Argument passed in does not match the accepted types");e.cacheHexString&&(this.__id=this.id.toString("hex"))}return Object.defineProperty(e.prototype,"id",{get:function(){return this[br]},set:function(t){this[br]=t,e.cacheHexString&&(this.__id=t.toString("hex"))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"generationTime",{get:function(){return this.id.readInt32BE(0)},set:function(t){this.id.writeUInt32BE(t,0)},enumerable:!1,configurable:!0}),e.prototype.toHexString=function(){if(e.cacheHexString&&this.__id)return this.__id;var t=this.id.toString("hex");return e.cacheHexString&&!this.__id&&(this.__id=t),t},e.getInc=function(){return e.index=(e.index+1)%16777215},e.generate=function(t){typeof t!="number"&&(t=Math.floor(Date.now()/1e3));var r=e.getInc(),n=we.alloc(12);return n.writeUInt32BE(t,0),Tn===null&&(Tn=yd(5)),n[4]=Tn[0],n[5]=Tn[1],n[6]=Tn[2],n[7]=Tn[3],n[8]=Tn[4],n[11]=r&255,n[10]=r>>8&255,n[9]=r>>16&255,n},e.prototype.toString=function(t){return t?this.id.toString(t):this.toHexString()},e.prototype.toJSON=function(){return this.toHexString()},e.prototype.equals=function(t){if(t==null)return!1;if(t instanceof e)return this[br][11]===t[br][11]&&this[br].equals(t[br]);if(typeof t=="string"&&e.isValid(t)&&t.length===12&&Uu(this.id))return t===we.prototype.toString.call(this.id,"latin1");if(typeof t=="string"&&e.isValid(t)&&t.length===24)return t.toLowerCase()===this.toHexString();if(typeof t=="string"&&e.isValid(t)&&t.length===12)return we.from(t).equals(this.id);if(typeof t=="object"&&"toHexString"in t&&typeof t.toHexString=="function"){var r=t.toHexString(),n=this.toHexString().toLowerCase();return typeof r=="string"&&r.toLowerCase()===n}return!1},e.prototype.getTimestamp=function(){var t=new Date,r=this.id.readUInt32BE(0);return t.setTime(Math.floor(r)*1e3),t},e.createPk=function(){return new e},e.createFromTime=function(t){var r=we.from([0,0,0,0,0,0,0,0,0,0,0,0]);return r.writeUInt32BE(t,0),new e(r)},e.createFromHexString=function(t){if(typeof t>"u"||t!=null&&t.length!==24)throw new Ve("Argument passed in must be a single String of 12 bytes or a string of 24 hex characters");return new e(we.from(t,"hex"))},e.isValid=function(t){if(t==null)return!1;try{return new e(t),!0}catch{return!1}},e.prototype.toExtendedJSON=function(){return this.toHexString?{$oid:this.toHexString()}:{$oid:this.toString("hex")}},e.fromExtendedJSON=function(t){return new e(t.$oid)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return'new ObjectId("'.concat(this.toHexString(),'")')},e.index=Math.floor(Math.random()*16777215),e}();Object.defineProperty(tt.prototype,"generate",{value:ya(function(e){return tt.generate(e)},"Please use the static `ObjectId.generate(time)` instead")});Object.defineProperty(tt.prototype,"getInc",{value:ya(function(){return tt.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(tt.prototype,"get_inc",{value:ya(function(){return tt.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(tt,"get_inc",{value:ya(function(){return tt.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(tt.prototype,"_bsontype",{value:"ObjectID"});function d_(e){return e.split("").sort().join("")}var bo=function(){function e(t,r){if(!(this instanceof e))return new e(t,r);if(this.pattern=t,this.options=d_(r??""),this.pattern.indexOf("\0")!==-1)throw new Cn("BSON Regex patterns cannot contain null bytes, found: ".concat(JSON.stringify(this.pattern)));if(this.options.indexOf("\0")!==-1)throw new Cn("BSON Regex options cannot contain null bytes, found: ".concat(JSON.stringify(this.options)));for(var n=0;n<this.options.length;n++)if(!(this.options[n]==="i"||this.options[n]==="m"||this.options[n]==="x"||this.options[n]==="l"||this.options[n]==="s"||this.options[n]==="u"))throw new Cn("The regular expression option [".concat(this.options[n],"] is not supported"))}return e.parseOptions=function(t){return t?t.split("").sort().join(""):""},e.prototype.toExtendedJSON=function(t){return t=t||{},t.legacy?{$regex:this.pattern,$options:this.options}:{$regularExpression:{pattern:this.pattern,options:this.options}}},e.fromExtendedJSON=function(t){if("$regex"in t)if(typeof t.$regex!="string"){if(t.$regex._bsontype==="BSONRegExp")return t}else return new e(t.$regex,e.parseOptions(t.$options));if("$regularExpression"in t)return new e(t.$regularExpression.pattern,e.parseOptions(t.$regularExpression.options));throw new Ve("Unexpected BSONRegExp EJSON object form: ".concat(JSON.stringify(t)))},e}();Object.defineProperty(bo.prototype,"_bsontype",{value:"BSONRegExp"});var Hu=function(){function e(t){if(!(this instanceof e))return new e(t);this.value=t}return e.prototype.valueOf=function(){return this.value},e.prototype.toString=function(){return this.value},e.prototype.inspect=function(){return'new BSONSymbol("'.concat(this.value,'")')},e.prototype.toJSON=function(){return this.value},e.prototype.toExtendedJSON=function(){return{$symbol:this.value}},e.fromExtendedJSON=function(t){return new e(t.$symbol)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e}();Object.defineProperty(Hu.prototype,"_bsontype",{value:"Symbol"});var h_=X,Sd=function(e){ga(t,e);function t(r,n){var i=this;return i instanceof t?(X.isLong(r)?i=e.call(this,r.low,r.high,!0)||this:Io(r)&&typeof r.t<"u"&&typeof r.i<"u"?i=e.call(this,r.i,r.t,!0)||this:i=e.call(this,r,n,!0)||this,Object.defineProperty(i,"_bsontype",{value:"Timestamp",writable:!1,configurable:!1,enumerable:!1}),i):new t(r,n)}return t.prototype.toJSON=function(){return{$timestamp:this.toString()}},t.fromInt=function(r){return new t(X.fromInt(r,!0))},t.fromNumber=function(r){return new t(X.fromNumber(r,!0))},t.fromBits=function(r,n){return new t(r,n)},t.fromString=function(r,n){return new t(X.fromString(r,!0,n))},t.prototype.toExtendedJSON=function(){return{$timestamp:{t:this.high>>>0,i:this.low>>>0}}},t.fromExtendedJSON=function(r){return new t(r.$timestamp)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return"new Timestamp({ t: ".concat(this.getHighBits(),", i: ").concat(this.getLowBits()," })")},t.MAX_VALUE=X.MAX_UNSIGNED_VALUE,t}(h_);function g_(e){return Io(e)&&Reflect.has(e,"_bsontype")&&typeof e._bsontype=="string"}var wd=2147483647,bd=-2147483648,Id=9223372036854776e3,Td=-9223372036854776e3,y_={$oid:tt,$binary:xn,$uuid:xn,$symbol:Hu,$numberInt:Sa,$numberDecimal:Mu,$numberDouble:Ea,$numberLong:X,$minKey:Fu,$maxKey:ku,$regex:bo,$regularExpression:bo,$timestamp:Sd};function Cd(e,t){if(t===void 0&&(t={}),typeof e=="number"){if(t.relaxed||t.legacy)return e;if(Math.floor(e)===e){if(e>=bd&&e<=wd)return new Sa(e);if(e>=Td&&e<=Id)return X.fromNumber(e)}return new Ea(e)}if(e==null||typeof e!="object")return e;if(e.$undefined)return null;for(var r=Object.keys(e).filter(function(h){return h.startsWith("$")&&e[h]!=null}),n=0;n<r.length;n++){var i=y_[r[n]];if(i)return i.fromExtendedJSON(e,t)}if(e.$date!=null){var s=e.$date,o=new Date;return t.legacy?typeof s=="number"?o.setTime(s):typeof s=="string"&&o.setTime(Date.parse(s)):typeof s=="string"?o.setTime(Date.parse(s)):X.isLong(s)?o.setTime(s.toNumber()):typeof s=="number"&&t.relaxed&&o.setTime(s),o}if(e.$code!=null){var c=Object.assign({},e);return e.$scope&&(c.$scope=Cd(e.$scope)),va.fromExtendedJSON(e)}if(e_(e)||e.$dbPointer){var u=e.$ref?e:e.$dbPointer;if(u instanceof wo)return u;var d=Object.keys(u).filter(function(h){return h.startsWith("$")}),m=!0;if(d.forEach(function(h){["$ref","$id","$db"].indexOf(h)===-1&&(m=!1)}),m)return wo.fromExtendedJSON(u)}return e}function v_(e,t){return e.map(function(r,n){t.seenObjects.push({propertyName:"index ".concat(n),obj:null});try{return Jr(r,t)}finally{t.seenObjects.pop()}})}function pd(e){var t=e.toISOString();return e.getUTCMilliseconds()!==0?t:t.slice(0,-5)+"Z"}function Jr(e,t){if((typeof e=="object"||typeof e=="function")&&e!==null){var r=t.seenObjects.findIndex(function(P){return P.obj===e});if(r!==-1){var n=t.seenObjects.map(function(P){return P.propertyName}),i=n.slice(0,r).map(function(P){return"".concat(P," -> ")}).join(""),s=n[r],o=" -> "+n.slice(r+1,n.length-1).map(function(P){return"".concat(P," -> ")}).join(""),c=n[n.length-1],u=" ".repeat(i.length+s.length/2),d="-".repeat(o.length+(s.length+c.length)/2-1);throw new Ve(`Converting circular structure to EJSON:
|
|
34
|
+
Url: ${Bs(e)}`),!0)}function rv(e,t){return e.type||!t||!t.length?!1:sv(e).some(r=>ii(r,t))}function nv(e,t){if(e.type!=="transaction"||!t||!t.length)return!1;let r=e.transaction;return r?ii(r,t):!1}function iv(e,t){if(!t||!t.length)return!1;let r=Bs(e);return r?ii(r,t):!1}function ov(e,t){if(!t||!t.length)return!0;let r=Bs(e);return r?ii(r,t):!0}function sv(e){let t=[];e.message&&t.push(e.message);let r;try{r=e.exception.values[e.exception.values.length-1]}catch{}return r&&r.value&&(t.push(r.value),r.type&&t.push(`${r.type}: ${r.value}`)),t}function av(e){try{return e.exception.values[0].type==="SentryError"}catch{}return!1}function cv(e=[]){for(let t=e.length-1;t>=0;t--){let r=e[t];if(r&&r.filename!=="<anonymous>"&&r.filename!=="[native code]")return r.filename||null}return null}function Bs(e){try{let t;try{t=e.exception.values[0].stacktrace.frames}catch{}return t?cv(t):null}catch{return Re&&K.error(`Cannot extract url for event ${nr(e)}`),null}}function lv(e){return e.type||!e.exception||!e.exception.values||e.exception.values.length===0?!1:!e.message&&!e.exception.values.some(t=>t.stacktrace||t.type&&t.type!=="Error"||t.value)}var uv="Dedupe",pv=()=>{let e;return{name:uv,processEvent(t){if(t.type)return t;try{if(fv(t,e))return Re&&K.warn("Event dropped due to being a duplicate of previously captured event."),null}catch{}return e=t}}},ks=pv;function fv(e,t){return t?!!(mv(e,t)||dv(e,t)):!1}function mv(e,t){let r=e.message,n=t.message;return!(!r&&!n||r&&!n||!r&&n||r!==n||!xm(e,t)||!Cm(e,t))}function dv(e,t){let r=Tm(t),n=Tm(e);return!(!r||!n||r.type!==n.type||r.value!==n.value||!xm(e,t)||!Cm(e,t))}function Cm(e,t){let r=gs(e),n=gs(t);if(!r&&!n)return!0;if(r&&!n||!r&&n||(r=r,n=n,n.length!==r.length))return!1;for(let i=0;i<n.length;i++){let s=n[i],o=r[i];if(s.filename!==o.filename||s.lineno!==o.lineno||s.colno!==o.colno||s.function!==o.function)return!1}return!0}function xm(e,t){let r=e.fingerprint,n=t.fingerprint;if(!r&&!n)return!0;if(r&&!n||!r&&n)return!1;r=r,n=n;try{return r.join("")===n.join("")}catch{return!1}}function Tm(e){return e.exception&&e.exception.values&&e.exception.values[0]}var Ye=re,tu=0;function ru(){return tu>0}function xv(){tu++,setTimeout(()=>{tu--})}function hn(e,t={},r){if(typeof e!="function")return e;try{let i=e.__sentry_wrapped__;if(i)return i;if(un(e))return e}catch{return e}let n=function(){let i=Array.prototype.slice.call(arguments);try{r&&typeof r=="function"&&r.apply(this,arguments);let s=i.map(o=>hn(o,t));return e.apply(this,s)}catch(s){throw xv(),As(o=>{o.addEventProcessor(c=>(t.mechanism&&(ci(c,void 0,void 0),Nr(c,t.mechanism)),c.extra=te(b({},c.extra),{arguments:i}),c)),Ps(s)}),s}};try{for(let i in e)Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=e[i])}catch{}ms(n,e),bt(e,"__sentry_wrapped__",n);try{Object.getOwnPropertyDescriptor(n,"name").configurable&&Object.defineProperty(n,"name",{get(){return e.name}})}catch{}return n}var Pr=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function Fs(e,t){let r=ou(e,t),n={type:t&&t.name,value:Ov(t)};return r.length&&(n.stacktrace={frames:r}),n.type===void 0&&n.value===""&&(n.value="Unrecoverable error caught"),n}function Dv(e,t,r,n){let i=Fe(),s=i&&i.getOptions().normalizeDepth,o=Mv(t),c={__serialized__:bs(t,s)};if(o)return{exception:{values:[Fs(e,o)]},extra:c};let u={exception:{values:[{type:ln(t)?t.constructor.name:n?"UnhandledRejection":"Error",value:Pv(t,{isUnhandledRejection:n})}]},extra:c};if(r){let d=ou(e,r);d.length&&(u.exception.values[0].stacktrace={frames:d})}return u}function nu(e,t){return{exception:{values:[Fs(e,t)]}}}function ou(e,t){let r=t.stacktrace||t.stack||"",n=Av(t),i=Nv(t);try{return e(r,n,i)}catch{}return[]}var Rv=/Minified React error #\d+;/i;function Av(e){return e&&Rv.test(e.message)?1:0}function Nv(e){return typeof e.framesToPop=="number"?e.framesToPop:0}function Ov(e){let t=e&&e.message;return t?t.error&&typeof t.error.message=="string"?t.error.message:t:"No error message"}function Nm(e,t,r,n){let i=r&&r.syntheticException||void 0,s=Hs(e,t,i,n);return Nr(s),s.level="error",r&&r.event_id&&(s.event_id=r.event_id),Yt(s)}function Om(e,t,r="info",n,i){let s=n&&n.syntheticException||void 0,o=iu(e,t,s,i);return o.level=r,n&&n.event_id&&(o.event_id=n.event_id),Yt(o)}function Hs(e,t,r,n,i){let s;if(ls(t)&&t.error)return nu(e,t.error);if(us(t)||ol(t)){let o=t;if("stack"in t)s=nu(e,t);else{let c=o.name||(us(o)?"DOMError":"DOMException"),u=o.message?`${c}: ${o.message}`:c;s=iu(e,u,r,n),ci(s,u)}return"code"in o&&(s.tags=te(b({},s.tags),{"DOMException.code":`${o.code}`})),s}return an(t)?nu(e,t):rr(t)||ln(t)?(s=Dv(e,t,r,i),Nr(s,{synthetic:!0}),s):(s=iu(e,t,r,n),ci(s,`${t}`,void 0),Nr(s,{synthetic:!0}),s)}function iu(e,t,r,n){let i={};if(n&&r){let s=ou(e,r);s.length&&(i.exception={values:[{value:t,stacktrace:{frames:s}}]})}if(ni(t)){let{__sentry_template_string__:s,__sentry_template_values__:o}=t;return i.logentry={message:s,params:o},i}return i.message=t,i}function Pv(e,{isUnhandledRejection:t}){let r=gl(e),n=t?"promise rejection":"exception";return ls(e)?`Event \`ErrorEvent\` captured as ${n} with message \`${e.message}\``:ln(e)?`Event \`${Lv(e)}\` (type=${e.type}) captured as ${n}`:`Object captured as ${n} with keys: ${r}`}function Lv(e){try{let t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{}}function Mv(e){for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t)){let r=e[t];if(r instanceof Error)return r}}function Pm(e,{metadata:t,tunnel:r,dsn:n}){let i=b(b({event_id:e.event_id,sent_at:new Date().toISOString()},t&&t.sdk&&{sdk:{name:t.sdk.name,version:t.sdk.version}}),!!r&&!!n&&{dsn:gr(n)}),s=Bv(e);return Er(i,[s])}function Bv(e){return[{type:"user_report"},e]}var ho=class extends mo{constructor(e){let t=b({parentSpanIsAlwaysRootSpan:!0},e),r=Ye.SENTRY_SDK_SOURCE||Cl();eu(t,"browser",["browser"],r),super(t),t.sendClientReports&&Ye.document&&Ye.document.addEventListener("visibilitychange",()=>{Ye.document.visibilityState==="hidden"&&this._flushOutcomes()})}eventFromException(e,t){return Nm(this._options.stackParser,e,t,this._options.attachStacktrace)}eventFromMessage(e,t="info",r){return Om(this._options.stackParser,e,t,r,this._options.attachStacktrace)}captureUserFeedback(e){if(!this._isEnabled()){Pr&&K.warn("SDK not enabled, will not capture user feedback.");return}let t=Pm(e,{metadata:this.getSdkMetadata(),dsn:this.getDsn(),tunnel:this.getOptions().tunnel});this.sendEnvelope(t)}_prepareEvent(e,t,r){return e.platform=e.platform||"javascript",super._prepareEvent(e,t,r)}_flushOutcomes(){let e=this._clearOutcomes();if(e.length===0){Pr&&K.log("No outcomes to send");return}if(!this._dsn){Pr&&K.log("No dsn provided, will not send outcomes");return}Pr&&K.log("Sending outcomes:",e);let t=Bl(e,this._options.tunnel&&gr(this._dsn));this.sendEnvelope(t)}},Lm=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,Xe=re,Uv=1e3,Mm,su,au;function cu(e){let t="dom";wt(t,e),It(t,kv)}function kv(){if(!Xe.document)return;let e=et.bind(null,"dom"),t=Bm(e,!0);Xe.document.addEventListener("click",t,!1),Xe.document.addEventListener("keypress",t,!1),["EventTarget","Node"].forEach(r=>{let n=Xe[r]&&Xe[r].prototype;!n||!n.hasOwnProperty||!n.hasOwnProperty("addEventListener")||(Be(n,"addEventListener",function(i){return function(s,o,c){if(s==="click"||s=="keypress")try{let u=this,d=u.__sentry_instrumentation_handlers__=u.__sentry_instrumentation_handlers__||{},m=d[s]=d[s]||{refCount:0};if(!m.handler){let h=Bm(e);m.handler=h,i.call(this,s,h,c)}m.refCount++}catch{}return i.call(this,s,o,c)}}),Be(n,"removeEventListener",function(i){return function(s,o,c){if(s==="click"||s=="keypress")try{let u=this,d=u.__sentry_instrumentation_handlers__||{},m=d[s];m&&(m.refCount--,m.refCount<=0&&(i.call(this,s,m.handler,c),m.handler=void 0,delete d[s]),Object.keys(d).length===0&&delete u.__sentry_instrumentation_handlers__)}catch{}return i.call(this,s,o,c)}}))})}function Fv(e){if(e.type!==su)return!1;try{if(!e.target||e.target._sentryId!==au)return!1}catch{}return!0}function Hv(e,t){return e!=="keypress"?!1:!t||!t.tagName?!0:!(t.tagName==="INPUT"||t.tagName==="TEXTAREA"||t.isContentEditable)}function Bm(e,t=!1){return r=>{if(!r||r._sentryCaptured)return;let n=$v(r);if(Hv(r.type,n))return;bt(r,"_sentryCaptured",!0),n&&!n._sentryId&&bt(n,"_sentryId",nt());let i=r.type==="keypress"?"input":r.type;Fv(r)||(e({event:r,name:i,global:t}),su=r.type,au=n?n._sentryId:void 0),clearTimeout(Mm),Mm=Xe.setTimeout(()=>{au=void 0,su=void 0},Uv)}}function $v(e){try{return e.target}catch{return null}}var $s;function lu(e){let t="history";wt(t,e),It(t,jv)}function jv(){if(!Fl())return;let e=Xe.onpopstate;Xe.onpopstate=function(...r){let n=Xe.location.href,i=$s;if($s=n,et("history",{from:i,to:n}),e)try{return e.apply(this,r)}catch{}};function t(r){return function(...n){let i=n.length>2?n[2]:void 0;if(i){let s=$s,o=String(i);$s=o,et("history",{from:s,to:o})}return r.apply(this,n)}}Be(Xe.history,"pushState",t),Be(Xe.history,"replaceState",t)}var js={};function uu(e){let t=js[e];if(t)return t;let r=Xe[e];if(oo(r))return js[e]=r.bind(Xe);let n=Xe.document;if(n&&typeof n.createElement=="function")try{let i=n.createElement("iframe");i.hidden=!0,n.head.appendChild(i);let s=i.contentWindow;s&&s[e]&&(r=s[e]),n.head.removeChild(i)}catch(i){Lm&&K.warn(`Could not create sandbox iframe for ${e} check, bailing to window.${e}: `,i)}return r&&(js[e]=r.bind(Xe))}function Vs(e){js[e]=void 0}var gn="__sentry_xhr_v3__";function pu(e){let t="xhr";wt(t,e),It(t,Vv)}function Vv(){if(!Xe.XMLHttpRequest)return;let e=XMLHttpRequest.prototype;Be(e,"open",function(t){return function(...r){let n=Bt()*1e3,i=St(r[0])?r[0].toUpperCase():void 0,s=Wv(r[1]);if(!i||!s)return t.apply(this,r);this[gn]={method:i,url:s,request_headers:{}},i==="POST"&&s.match(/sentry_key/)&&(this.__sentry_own_request__=!0);let o=()=>{let c=this[gn];if(c&&this.readyState===4){try{c.status_code=this.status}catch{}let u={endTimestamp:Bt()*1e3,startTimestamp:n,xhr:this};et("xhr",u)}};return"onreadystatechange"in this&&typeof this.onreadystatechange=="function"?Be(this,"onreadystatechange",function(c){return function(...u){return o(),c.apply(this,u)}}):this.addEventListener("readystatechange",o),Be(this,"setRequestHeader",function(c){return function(...u){let[d,m]=u,h=this[gn];return h&&St(d)&&St(m)&&(h.request_headers[d.toLowerCase()]=m),c.apply(this,u)}}),t.apply(this,r)}}),Be(e,"send",function(t){return function(...r){let n=this[gn];if(!n)return t.apply(this,r);r[0]!==void 0&&(n.body=r[0]);let i={startTimestamp:Bt()*1e3,xhr:this};return et("xhr",i),t.apply(this,r)}})}function Wv(e){if(St(e))return e;try{return e.toString()}catch{}}function fu(e,t=uu("fetch")){let r=0,n=0;function i(s){let o=s.body.length;r+=o,n++;let c=b({body:s.body,method:"POST",referrerPolicy:"origin",headers:e.headers,keepalive:r<=6e4&&n<15},e.fetchOptions);if(!t)return Vs("fetch"),Gr("No fetch implementation available");try{return t(e.url,c).then(u=>(r-=o,n--,{statusCode:u.status,headers:{"x-sentry-rate-limits":u.headers.get("X-Sentry-Rate-Limits"),"retry-after":u.headers.get("Retry-After")}}))}catch(u){return Vs("fetch"),r-=o,n--,Gr(u)}}return Ls(e,i)}var Gv=30,Yv=50;function mu(e,t,r,n){let i={filename:e,function:t==="<anonymous>"?yr:t,in_app:!0};return r!==void 0&&(i.lineno=r),n!==void 0&&(i.colno=n),i}var zv=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,qv=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,Kv=/\((\S*)(?::(\d+))(?::(\d+))\)/,Xv=e=>{let t=zv.exec(e);if(t){let[,n,i,s]=t;return mu(n,yr,+i,+s)}let r=qv.exec(e);if(r){if(r[2]&&r[2].indexOf("eval")===0){let s=Kv.exec(r[2]);s&&(r[2]=s[1],r[3]=s[2],r[4]=s[3])}let[n,i]=Hm(r[1]||yr,r[2]);return mu(i,n,r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}},Um=[Gv,Xv],Jv=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,Qv=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,Zv=e=>{let t=Jv.exec(e);if(t){if(t[3]&&t[3].indexOf(" > eval")>-1){let i=Qv.exec(t[3]);i&&(t[1]=t[1]||"eval",t[3]=i[1],t[4]=i[2],t[5]="")}let r=t[3],n=t[1]||yr;return[n,r]=Hm(n,r),mu(r,n,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}},km=[Yv,Zv],Fm=[Um,km],du=vl(...Fm),Hm=(e,t)=>{let r=e.indexOf("safari-extension")!==-1,n=e.indexOf("safari-web-extension")!==-1;return r||n?[e.indexOf("@")!==-1?e.split("@")[0]:yr,r?`safari-extension:${t}`:`safari-web-extension:${t}`]:[e,t]},Ws=1024,tE="Breadcrumbs",rE=(e={})=>{let t=b({console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0},e);return{name:tE,setup(r){t.console&&El(oE(r)),t.dom&&cu(iE(r,t.dom)),t.xhr&&pu(sE(r)),t.fetch&&wl(aE(r)),t.history&&lu(cE(r)),t.sentry&&r.on("beforeSendEvent",nE(r))}}},$m=rE;function nE(e){return function(t){Fe()===e&&_r({category:`sentry.${t.type==="transaction"?"transaction":"event"}`,event_id:t.event_id,level:t.level,message:nr(t)},{event:t})}}function iE(e,t){return function(r){if(Fe()!==e)return;let n,i,s=typeof t=="object"?t.serializeAttribute:void 0,o=typeof t=="object"&&typeof t.maxStringLength=="number"?t.maxStringLength:void 0;o&&o>Ws&&(Pr&&K.warn(`\`dom.maxStringLength\` cannot exceed ${Ws}, but a value of ${o} was configured. Sentry will use ${Ws} instead.`),o=Ws),typeof s=="string"&&(s=[s]);try{let u=r.event,d=lE(u)?u.target:u;n=no(d,{keyAttrs:s,maxStringLength:o}),i=ml(d)}catch{n="<unknown>"}if(n.length===0)return;let c={category:`ui.${r.name}`,message:n};i&&(c.data={"ui.component_name":i}),_r(c,{event:r.event,name:r.name,global:r.global})}}function oE(e){return function(t){if(Fe()!==e)return;let r={category:"console",data:{arguments:t.args,logger:"console"},level:Rl(t.level),message:ps(t.args," ")};if(t.level==="assert")if(t.args[0]===!1)r.message=`Assertion failed: ${ps(t.args.slice(1)," ")||"console.assert"}`,r.data.arguments=t.args.slice(1);else return;_r(r,{input:t.args,level:t.level})}}function sE(e){return function(t){if(Fe()!==e)return;let{startTimestamp:r,endTimestamp:n}=t,i=t.xhr[gn];if(!r||!n||!i)return;let{method:s,url:o,status_code:c,body:u}=i,d={method:s,url:o,status_code:c},m={xhr:t.xhr,input:u,startTimestamp:r,endTimestamp:n};_r({category:"xhr",data:d,type:"http"},m)}}function aE(e){return function(t){if(Fe()!==e)return;let{startTimestamp:r,endTimestamp:n}=t;if(n&&!(t.fetchData.url.match(/sentry_key/)&&t.fetchData.method==="POST"))if(t.error){let i=t.fetchData,s={data:t.error,input:t.args,startTimestamp:r,endTimestamp:n};_r({category:"fetch",data:i,level:"error",type:"http"},s)}else{let i=t.response,s=te(b({},t.fetchData),{status_code:i&&i.status}),o={input:t.args,response:i,startTimestamp:r,endTimestamp:n};_r({category:"fetch",data:s,type:"http"},o)}}}function cE(e){return function(t){if(Fe()!==e)return;let r=t.from,n=t.to,i=ao(Ye.location.href),s=r?ao(r):void 0,o=ao(n);(!s||!s.path)&&(s=i),i.protocol===o.protocol&&i.host===o.host&&(n=o.relative),i.protocol===s.protocol&&i.host===s.host&&(r=s.relative),_r({category:"navigation",data:{from:r,to:n}})}}function lE(e){return!!e&&!!e.target}var uE=["EventTarget","Window","Node","ApplicationCache","AudioTrackList","BroadcastChannel","ChannelMergerNode","CryptoOperation","EventSource","FileReader","HTMLUnknownElement","IDBDatabase","IDBRequest","IDBTransaction","KeyOperation","MediaController","MessagePort","ModalWindow","Notification","SVGElementInstance","Screen","SharedWorker","TextTrack","TextTrackCue","TextTrackList","WebSocket","WebSocketWorker","Worker","XMLHttpRequest","XMLHttpRequestEventTarget","XMLHttpRequestUpload"],pE="BrowserApiErrors",fE=(e={})=>{let t=b({XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0},e);return{name:pE,setupOnce(){t.setTimeout&&Be(Ye,"setTimeout",jm),t.setInterval&&Be(Ye,"setInterval",jm),t.requestAnimationFrame&&Be(Ye,"requestAnimationFrame",mE),t.XMLHttpRequest&&"XMLHttpRequest"in Ye&&Be(XMLHttpRequest.prototype,"send",dE);let r=t.eventTarget;r&&(Array.isArray(r)?r:uE).forEach(hE)}}},Vm=fE;function jm(e){return function(...t){let r=t[0];return t[0]=hn(r,{mechanism:{data:{function:Gt(e)},handled:!1,type:"instrument"}}),e.apply(this,t)}}function mE(e){return function(t){return e.apply(this,[hn(t,{mechanism:{data:{function:"requestAnimationFrame",handler:Gt(e)},handled:!1,type:"instrument"}})])}}function dE(e){return function(...t){let r=this;return["onload","onerror","onprogress","onreadystatechange"].forEach(n=>{n in r&&typeof r[n]=="function"&&Be(r,n,function(i){let s={mechanism:{data:{function:n,handler:Gt(i)},handled:!1,type:"instrument"}},o=un(i);return o&&(s.mechanism.data.handler=Gt(o)),hn(i,s)})}),e.apply(this,t)}}function hE(e){let t=Ye,r=t[e]&&t[e].prototype;!r||!r.hasOwnProperty||!r.hasOwnProperty("addEventListener")||(Be(r,"addEventListener",function(n){return function(i,s,o){try{typeof s.handleEvent=="function"&&(s.handleEvent=hn(s.handleEvent,{mechanism:{data:{function:"handleEvent",handler:Gt(s),target:e},handled:!1,type:"instrument"}}))}catch{}return n.apply(this,[i,hn(s,{mechanism:{data:{function:"addEventListener",handler:Gt(s),target:e},handled:!1,type:"instrument"}}),o])}}),Be(r,"removeEventListener",function(n){return function(i,s,o){let c=s;try{let u=c&&c.__sentry_wrapped__;u&&n.call(this,i,u,o)}catch{}return n.call(this,i,c,o)}}))}var gE="GlobalHandlers",yE=(e={})=>{let t=b({onerror:!0,onunhandledrejection:!0},e);return{name:gE,setupOnce(){Error.stackTraceLimit=50},setup(r){t.onerror&&(vE(r),Wm("onerror")),t.onunhandledrejection&&(EE(r),Wm("onunhandledrejection"))}}},Gm=yE;function vE(e){Il(t=>{let{stackParser:r,attachStacktrace:n}=Ym();if(Fe()!==e||ru())return;let{msg:i,url:s,line:o,column:c,error:u}=t,d=bE(Hs(r,u||i,void 0,n,!1),s,o,c);d.level="error",fo(d,{originalException:u,mechanism:{handled:!1,type:"onerror"}})})}function EE(e){Tl(t=>{let{stackParser:r,attachStacktrace:n}=Ym();if(Fe()!==e||ru())return;let i=_E(t),s=cn(i)?SE(i):Hs(r,i,void 0,n,!0);s.level="error",fo(s,{originalException:i,mechanism:{handled:!1,type:"onunhandledrejection"}})})}function _E(e){if(cn(e))return e;try{if("reason"in e)return e.reason;if("detail"in e&&"reason"in e.detail)return e.detail.reason}catch{}return e}function SE(e){return{exception:{values:[{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(e)}`}]}}}function bE(e,t,r,n){let i=e.exception=e.exception||{},s=i.values=i.values||[],o=s[0]=s[0]||{},c=o.stacktrace=o.stacktrace||{},u=c.frames=c.frames||[],d=isNaN(parseInt(n,10))?void 0:n,m=isNaN(parseInt(r,10))?void 0:r,h=St(t)&&t.length>0?t:fl();return u.length===0&&u.push({colno:d,filename:h,function:yr,in_app:!0,lineno:m}),e}function Wm(e){Pr&&K.log(`Global Handler attached: ${e}`)}function Ym(){let e=Fe();return e&&e.getOptions()||{stackParser:()=>[],attachStacktrace:!1}}var zm=()=>({name:"HttpContext",preprocessEvent(e){if(!Ye.navigator&&!Ye.location&&!Ye.document)return;let t=e.request&&e.request.url||Ye.location&&Ye.location.href,{referrer:r}=Ye.document||{},{userAgent:n}=Ye.navigator||{},i=b(b(b({},e.request&&e.request.headers),r&&{Referer:r}),n&&{"User-Agent":n}),s=te(b(b({},e.request),t&&{url:t}),{headers:i});e.request=s}}),wE="cause",IE=5,TE="LinkedErrors",CE=(e={})=>{let t=e.limit||IE,r=e.key||wE;return{name:TE,preprocessEvent(n,i,s){let o=s.getOptions();ul(Fs,o.stackParser,o.maxValueLength,r,t,n,i)}}},qm=CE;function hu(e){return[Us(),Ms(),Vm(),$m(),Gm(),qm(),ks(),zm()]}var gu=class extends Error{cause;constructor(e,t){super(e),this.cause=t}},Le=class Ph{static INSTANCE;contexts={};tags;client;user;constructor(){this.init()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Ph),this.INSTANCE}captureException(t,r,n){w.error(t),this.getNewScope(r,n).captureException(t)}captureMessage(t,r,n,i){this.getNewScope(n,i).captureMessage(t,r??"error")}captureError(t,r,n,i){w.error(t,r);let s=this.getNewScope(n,i),o=new gu(t,r);s.captureException(o)}setGlobalContext(t,r){this.contexts[t]=b({context:r},this.contexts[t])}setUser(t){this.user=t}setTags(t){this.tags=t}getNewScope(t,r){let n=new dt;if(n.setClient(this.client),n.setUser(this.user),t?.triggerContext){let i=t.triggerContext;n.setExtras(i.triggerData.sentryContext()),delete t.triggerContext}return t&&n.setExtras(t),this.tags&&n.setTags(this.tags),r&&n.setTags(r),Object.keys(this.contexts).forEach(i=>{n.setContext(i,this.contexts[i])}),n.setTag("language",navigator.language),n.setTag("timezone",Q.getTimezone()),n}init(){let t=hu({}).filter(r=>!["BrowserApiErrors","Breadcrumbs","GlobalHandlers"].includes(r.name));this.client=new ho({dsn:"https://1bc3dda4c861f60cd6be1b67584f4bc6@o559187.ingest.us.sentry.io/4507626484203520",transport:fu,stackParser:du,integrations:t,environment:Rt.mode,release:`web-sdk@${N.SDK_VERSION}`,debug:Rt.debug}),this.client.init()}},Q=class{static tz;static isValidURL(e){try{return new URL(e)}catch{return}}static isNull(e){return!e||e==="null"||e==="undefined"}static removeFromArray(e,t){let r=e.indexOf(t);return r===-1?!1:(e.splice(r,1),!0)}static formatCurrency(e,t){if(e==0&&t)return"Free";let r=ue.get(),n=Pe.get(),i=r.shopCurrencyCode||n.currency,s=r.currencyCode;s||w.warn("Currency code is not set in RuntimeData");let o=n.money?.format??r.moneyFormat,c;if(o&&i===s)c=as.format(e*100,o);else{let u;try{u=new Intl.NumberFormat(this.getLang(),{style:"currency",currency:s||i,minimumFractionDigits:0,maximumFractionDigits:2})}catch(d){return Le.getInstance().captureException(d,{currentCurrency:s,shopCurrency:i}),""}c=u.format(e),c=c.replace("\u20B9","Rs. "),n.money?.showCurrency&&s!=="INR"&&(c=c.concat(` ${s}`))}return c}static formatNumber(e){return new Intl.NumberFormat(this.getLang(),{notation:"compact"}).format(e)}static getLang(){return navigator.languages!==void 0?navigator.languages[0].split("-")[0]:navigator.language??"en"}static getTimezone(){if(this.tz)return this.tz;try{return this.tz=Intl.DateTimeFormat().resolvedOptions().timeZone,this.tz}catch{return""}}static documentReady(e){document.readyState!=="loading"?e():document.addEventListener("DOMContentLoaded",e)}static onDocumentLoaded(e){document.readyState==="complete"?e():document.addEventListener("readystatechange",()=>{document.readyState==="complete"&&e()})}static showSnackbar(e){let t=document.createElement("span");t.id="snackbar",t.innerText=e,document.body.appendChild(t),t.className="show",setTimeout(()=>{t.classList.remove("show"),document.body.removeChild(t)},3e3)}static async retrySelectorForElements(e,t=10,r=document){let n=0,i=document.querySelectorAll("nonexistent-tag");for(;n<t;){let s=Math.min(100*2**n,5e3);if(await Km.JSUtils.sleep(s),i=r.querySelectorAll(e),i.length)return w.debug(`Attempt ${n+1}: ${i.length} elements found with ${e}`),i;w.debug(`Attempt ${n+1}: Elements not found with ${e}. Retrying after ${s}ms.`),n++}return w.warn(`Max attempts reached. Element not found with ${e}.`),i}static async retrySelector(e,t=10,r=document){return(await this.retrySelectorForElements(e,t,r)).item(0)}static async retrySelectors(e,t=10,r=document){let n=await this.retrySelectorForElements(e,t,r);return Array.from(n)}static async getCartAttributes(){let e=await De.get(oe.DEVICE_ID),t=await rt.get(oe.ID,"");return[{key:"letscooee_did",value:e},{key:"letscooee_sid",value:t},{key:"__letscooee_time",value:new Date().toLocaleString()},{key:"__letscooee_via",value:"Buy Now"}]}static onNodesRemoved(e,t,r=document.body){let n=new MutationObserver(i=>{i.forEach(s=>{s.removedNodes.forEach(o=>{(o===e||o.contains(e))&&(t(),n.disconnect())})})});n.observe(r,{childList:!0})}};function ui(e,t,r){Object.defineProperty(e,t,{enumerable:!1,configurable:!1,writable:!1,value:r})}var Gs=class{url;alt;constructor(e){e.alt&&(this.alt=e.alt),this.url=e.url}},Ys=class{d;cmp;effective;constructor(e={}){this.d=e.d,this.cmp=e.cmp,this.effective=this.d}},yu=class{id;mID;name;groupID;groupName;isSelected;constructor(e){e??={},this.id=e.id,this.mID=e.mID,this.name=e.name,this.groupID=e.groupID,this.groupName=e.groupName,this.isSelected=e.isSelected??!1}},Sr=class{mID;name;imgs;link;price;sku;isAvailable;quantity;sellingPlans;selectedSellingPlan;effectivePrice;constructor(e){e=e??{},this.mID=e.mID,this.name=e.name,this.imgs=e.imgs?.map(t=>new Gs(t))??[],this.link=e.link,this.price=new Ys(e.price),this.sku=e.sku,this.isAvailable=e.isAvailable,this.quantity=e.quantity,this.effectivePrice=jt(this.price.effective),e.sellingPlans?.length&&(this.selectedSellingPlan=jt(void 0)),this.sellingPlans=e.sellingPlans?.map(t=>{let r=new yu(t);return r.isSelected&&(this.selectedSellingPlan.value=r),r})}getOneImage(){return this.imgs[0]?.url}changeSellingPlan(e){this.selectedSellingPlan.value=e}},At=class{id;mID;name;status;ctg;imgs;videos;portraitVideos;vars;desc;sDesc;link;slug;quantity;category;meta;reviews;tags;selectedOrFirstVariant;selected=jt(!0);constructor(e){this.update(e),this.selectedOrFirstVariant=jt(this.selectedVariant)}get imageURL(){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 selectedVariant(){return this.vars.find(e=>e.isAvailable)??this.vars[0]}set variants(e){this.vars=e,this.selectedOrFirstVariant.value=this.selectedVariant}update(e){return this.id=e.id,this.mID=e.mID,this.name=e.name,this.status=e.status,this.ctg=e.ctg,this.imgs=e.imgs,this.desc=e.desc,this.sDesc=e.sDesc,this.link=e.link,this.slug=e.slug,this.quantity=e.quantity,this.meta=e.meta,this.category=e.category,this.videos=e.videos,this.reviews=e.reviews,this.portraitVideos=e.videos?.filter(t=>t.orientation==="PORTRAIT"),this.tags=e.tags,e.vars&&(this.vars=e.vars.map(t=>new Sr(t))),this}toEmbed(e){return e=e??this.selectedOrFirstVariant.value,new ft({id:this.id,mID:this.mID,vID:e.mID,vName:e.name,name:this.name,link:this.link,slug:this.slug,price:e.price.d,imageURL:e.getOneImage()??this.imgs?.[0].url})}},zs=class{id;mID;handle;title;imageURL;constructor(e){e??={},this.id=e.id,this.mID=e.mID,this.handle=e.handle,this.title=e.title,this.imageURL=e.imageURL}},vu=class{enabled;constructor(e){this.enabled=e.enabled}},Eu=class extends vu{max;min;constructor(e){e??={},super(e),this.min=e.min,this.max=e.max}},qs=class{productQuantity;constructor(e){e??={},this.productQuantity=new Eu(e.productQuantity)}},yn=class{s;g;i;constructor(e){e.s&&(this.s=new He(e.s)),e.g&&(this.g=new go(e.g)),this.i=e.i}get solid(){return this.s}get glossy(){return this.g}get img(){return this.i}},yo="a-f\\d",xE=`#?[${yo}]{3}[${yo}]?`,DE=`#?[${yo}]{6}([${yo}]{2})?`,RE=new RegExp(`[^#${yo}]`,"gi"),AE=new RegExp(`^${xE}$|^${DE}$`,"i");function _u(e,t={}){if(typeof e!="string"||RE.test(e)||!AE.test(e))throw new TypeError("Expected a valid hex string");e=e.replace(/^#/,"");let r=1;e.length===8&&(r=Number.parseInt(e.slice(6,8),16)/255,e=e.slice(0,6)),e.length===4&&(r=Number.parseInt(e.slice(3,4).repeat(2),16)/255,e=e.slice(0,3)),e.length===3&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);let n=Number.parseInt(e,16),i=n>>16,s=n>>8&255,o=n&255,c=typeof t.alpha=="number"?t.alpha:r;if(t.format==="array")return[i,s,o,c];if(t.format==="css"){let u=c===1?"":` / ${Number((c*100).toFixed(2))}%`;return`rgb(${i} ${s} ${o}${u})`}return{red:i,green:s,blue:o,alpha:c}}var He=class{h;a=100;g;constructor(e){e??={},this.h=e.h,this.a=e.a,this.g=e.g}get hex(){return this.h}get grad(){return this.g}get rgba(){if(!this.hex)return"";try{return _u(this.hex,{format:"css",alpha:this.getAlpha()})}catch(e){return console.error("Invalid hex",e),"#000000"}}getAlpha(){return(this.a??100)/100}},vn=class{s;r;w;c;constructor(e){this.s=e.s,this.r=e.r,this.w=e.w,e.c&&(this.c=new He(e.c))}get radius(){return this.r}get width(){return this.w}get color(){return this.c}get style(){return Xm[this.s??1]}},Xm=(e=>(e[e.SOLID=1]="SOLID",e[e.DASHED=2]="DASHED",e))(Xm||{}),go=class Rh{static DEFAULT_FALLBACK=new He({h:"#000000",a:50});r;c;fb;constructor(t){this.r=t.r,t.c&&(this.c=new He(t.c)),t.fb&&(this.fb=new He(t.fb))}get radius(){return this.r}get color(){return this.c}get fallback(){return this.fb??Rh.DEFAULT_FALLBACK}},vo=class{blur;spr;clr;x;y;constructor(e){e=e??{},this.blur=e.blur??0,this.spr=e.spr??0,this.x=e.x??0,this.y=e.y??0,this.clr=new He(e.clr)}getStyle(e){return`${this.x*e}px ${this.y*e}px ${this.blur*e}px ${this.spr*e}px ${this.clr.rgba}`}},Lr=class{pl;pr;pt;pb;ml;mr;mt;mb;cent;constructor(e){e=e??{},this.pl=e.pl??0,this.pr=e.pr??0,this.pt=e.pt??0,this.pb=e.pb??0,this.ml=e.ml??0,this.mr=e.mr??0,this.mt=e.mt??0,this.mb=e.mb??0,this.cent=e.cent??!1}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`}},En=class{rot;constructor(e){e?.rot&&(this.rot=e.rot)}get rotate(){return this.rot}},Ut=class{t;bg;br;clc;shd;spc;trf;a;w;h;x;y;constructor(e){this.t=e.t,e.bg&&(this.bg=new yn(e.bg)),e.br&&(this.br=new vn(e.br)),e.shd&&(this.shd=new vo(e.shd)),e.spc&&(this.spc=new Lr(e.spc)),this.trf=new En(e.trf),this.clc=e.clc,this.w=e.w,this.h=e.h,this.x=e.x,this.y=e.y,this.a=e.a}get alpha(){return this.a??100}get type(){return this.t}get typeAsString(){return Ue[this.t]}get click(){return this.clc}},Ue=(e=>(e[e.IMAGE=1]="IMAGE",e[e.TEXT=2]="TEXT",e[e.BUTTON=3]="BUTTON",e[e.FLEXBOX=4]="FLEXBOX",e[e.MULTI_COLUMN=5]="MULTI_COLUMN",e[e.CHECKBOX=6]="CHECKBOX",e[e.PRODUCTS=11]="PRODUCTS",e[e.PRODUCT=12]="PRODUCT",e[e.PRODUCT_IMAGE=13]="PRODUCT_IMAGE",e[e.PRODUCT_TITLE=14]="PRODUCT_TITLE",e[e.PRODUCT_VARIATIONS=15]="PRODUCT_VARIATIONS",e[e.PRODUCT_VARIATIONS_SELLING_PLANS=16]="PRODUCT_VARIATIONS_SELLING_PLANS",e[e.PRODUCT_BUTTON=18]="PRODUCT_BUTTON",e[e.PRODUCT_RATING=19]="PRODUCT_RATING",e[e.EMAIL_INPUT=51]="EMAIL_INPUT",e[e.PHONE_INPUT=52]="PHONE_INPUT",e[e.COUNTDOWN_TIMER=61]="COUNTDOWN_TIMER",e[e.CAROUSEL=62]="CAROUSEL",e[e.SHAPE=100]="SHAPE",e))(Ue||{}),_n=class extends Ut{constructor(e){super(e)}},Mr=class extends Ut{src;constructor(e){super(e),this.src=e.src}},pi=(e=>(e[e.START=0]="START",e[e.CENTER=1]="CENTER",e[e.END=2]="END",e[e.JUSTIFY=3]="JUSTIFY",e))(pi||{}),Ks=class{name;fonts;constructor(e){e=e??{},e.name&&(e.name=e.name!=="Arial"?e.name:""),this.name=e.name,this.fonts=e.fonts?.map(t=>new Su(t))}},Su=class{style;url;constructor(e){e=e??{},this.style=e.style,this.url=e.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')`}},lt=class{fw;fs;fam;fmly;lh=1.2;ls;s;tc;ta;td;tdc;constructor(e){this.update(e)}get alignment(){return pi[this.ta]}get letterSpacing(){return this.ls?this.ls+"px":"normal"}update(e){e=e??{},e.lh&&(this.lh=e.lh),e.tdc&&(this.tdc=new He(e.tdc)),this.td=e.td,this.fs=e.s??e.fs??60,this.tc=new He(e.tc),this.ta=e.ta??1,this.fw=e.fw??400,this.ls=e.ls??0,this.tc.h??="#000000",this.fam=new Ks(e.fam??e.fmly)}resize(e){this.s*=e,this.ls*=e}},br=class extends Ut{typo;constructor(e){super(e);let t=b(b({},e.f),e.typo);e.alg&&(t.ta=e.alg),e.c&&(t.tc=e.c),this.typo=new lt(t)}get color(){return this.typography.tc}get typography(){return this.typo}},Yr=class extends br{prs;constructor(e){super(e),this.prs=e.prs}get parts(){return this.prs}},Xs=class extends Ut{o;constructor(e){super(e),this.o=e.o??5,this.w=this.w??1080,this.h=this.h??1920}getOrigin(){return this.o}},fi=class{dd;hh;mm;ss;date;constructor(e){e??={},this.dd=e.dd??0,this.hh=e.hh??0,this.mm=e.mm??0,this.ss=e.ss??0,this.date=e.date?new Date(e.date):void 0}start(e,t){let r=new Date;e===2?(r.setSeconds(r.getSeconds()+this.ss),r.setMinutes(r.getMinutes()+this.mm),r.setHours(r.getHours()+this.hh),r.setDate(r.getDate()+this.dd)):r=this.date??new Date;let n=window.setInterval(()=>{let i=new Date().getTime(),s=r.getTime()-i;if(s<1){clearInterval(n);return}let o=Math.floor(s/(1e3*60*60*24)),c=Math.floor(s%(1e3*60*60*24)/(1e3*60*60)),u=Math.floor(s%(1e3*60*60)/(1e3*60)),d=Math.floor(s%(1e3*60)/1e3);t({days:o,hours:c,minutes:u,seconds:d})},1e3);return n}},mi=class extends br{gap;timer;timerType;horizontal;lblPos;show;constructor(e){e??={},super(e),this.gap=e.gap,this.timerType=e.type,this.timer=new fi(e.timer),this.show=e.show??{day:!0,hour:!0,minute:!0,second:!0},this.horizontal=e.horizontal,this.lblPos=e.lblPos}},Js=class{txt;c;constructor(e){e??={},this.txt=e.txt,this.c=new He(e.c??{})}get text(){return this.txt}get color(){return this.c}},zr=class extends br{ph;constructor(e){super(e),this.ph=new Js(e.ph)}get placeholderText(){return this.ph.text}get placeholderColor(){return this.ph.color.rgba}},di=class extends zr{constructor(e){e??={},super(e)}},hi=class extends zr{},gi=class extends zr{},yi=class extends Mr{},Sn=(e=>(e[e.LOW=1]="LOW",e[e.MEDIUM=2]="MEDIUM",e[e.HIGH=3]="HIGH",e))(Sn||{}),Qs=class{en;ex;constructor(e){e=e??{},this.en=e.en,this.ex=e.ex}getEnterAnimation(){switch(this.en){case 2:return[{transform:"translateY(-100%)"},{transform:"translateY(0%)"}];case 3:return[{transform:"translateY(100%)"},{transform:"translateY(0%)"}];case 4:return[{transform:"translateX(-100%)"},{transform:"translateX(0%)"}];case 5:return[{transform:"translateX(100%)"},{transform:"translateX(0%)"}];case 6:return[{transform:"translate(-100%, -100%)"},{transform:"translate(0%, 0%)"}];case 7:return[{transform:"translate(100%, -100%)"},{transform:"translate(0%, 0%)"}];case 8:return[{transform:"translate(-100%, 100%)"},{transform:"translate(0%, 0%)"}];case 9:return[{transform:"translate(100%, 100%)"},{transform:"translate(0%, 0%)"}];case 10:return[{transform:"scale(0.1)"},{transform:"scale(1)"}];default:return[]}}getExitAnimation(){switch(this.ex){case 2:return[{transform:"translateY(0%)"},{transform:"translateY(-100%)"}];case 3:return[{transform:"translateY(0%)"},{transform:"translateY(100%)"}];case 4:return[{transform:"translateX(0%)"},{transform:"translateX(-100%)"}];case 5:return[{transform:"translateX(0%)"},{transform:"translateX(100%)"}];case 6:return[{transform:"translate(0%, 0%)"},{transform:"translate(-100%, -100%)"}];case 7:return[{transform:"translate(0%, 0%)"},{transform:"translate(100%, -100%)"}];case 8:return[{transform:"translate(0%, 0%)"},{transform:"translate(-100%, 100%)"}];case 9:return[{transform:"translate(0%, 0%)"},{transform:"translate(100%, 100%)"}];case 10:return[{transform:"scale(1)"},{transform:"scale(0)"}];default:return[]}}},Eo=class extends Ut{gvt;max;cover;anim;embedded;position;constructor(e){e=e??{},super(e),this.gvt=e.gvt??5,this.max=e.max,this.cover=e.cover??!0,this.anim=new Qs(e.anim),this.embedded=e.embedded,this.position=e.position??1,this.spc||(this.spc=new Lr({pl:N.IN_APP_DEFAULT_PADDING,pr:N.IN_APP_DEFAULT_PADDING,pt:N.IN_APP_DEFAULT_PADDING,pb:N.IN_APP_DEFAULT_PADDING}))}isEmbedded(){return this.position===2&&!!this.embedded}getEmbeddedSelector(){return`.letscooee-engagement.container-${this.embedded}`}},Zs=class extends Eo{cont;elems=[];mob;constructor(e){e=e??{},super(e),this.cont=new Xs(e.cont),this.mob=new Eo(e.mob),this.bg||(this.bg=this.cont.bg,delete this.cont.bg),e.elems.forEach(t=>{t.t===1?this.elems.push(new Mr(t)):t.t===2?this.elems.push(new Yr(t)):t.t===3?this.elems.push(new Yr(t)):t.t===100?this.elems.push(new _n(t)):t.t===51?this.elems.push(new hi(t)):t.t===52?this.elems.push(new gi(t)):t.t===61?this.elems.push(new mi(t)):t.t===15||t.t===16?this.elems.push(new di(t)):t.t===13&&this.elems.push(new yi(t))})}getStylesForWrapper(){if(this.cover)return{};let e;return this.gvt===1?e={top:0,left:0}:this.gvt===2?e={top:0,left:"50%",transform:"translateX(-50%)"}:this.gvt===3?e={top:0,right:0}:this.gvt===6?e={top:"50%",right:0,transform:"translateY(-50%)"}:this.gvt===9?e={bottom:0,right:0}:this.gvt===8?e={bottom:0,left:"50%",transform:"translateX(-50%)"}:this.gvt===7?e={bottom:0,left:0}:this.gvt===4?e={top:"50%",left:0,transform:"translateY(-50%)"}:e={top:"50%",left:"50%",transform:"translateX(-50%) translateY(-50%)"},e.overflow="visible",e}getFlexStylesForContainer(){let e={display:"flex",flexDirection:"row"},t,r;return this.gvt===1?(t="flex-start",r="flex-start"):this.gvt===2?(t="center",r="flex-start"):this.gvt===3?(t="flex-end",r="flex-start"):this.gvt===4?(t="flex-start",r="center"):this.gvt===6?(t="flex-end",r="center"):this.gvt===7?(t="flex-start",r="flex-end"):this.gvt===8?(t="center",r="flex-end"):this.gvt===9?(t="flex-end",r="flex-end"):(t="center",r="center"),e.alignItems=r,e.justifyContent=t,e.overflow="visible",e}overrideForMobileView(){this.max=this.mob.max??this.max,this.cover=this.mob.cover??this.cover,this.gvt=this.mob.gvt??this.gvt,this.bg=this.mob.bg??this.bg,this.spc=this.mob.spc??this.spc,this.anim=this.mob.anim??this.anim,this.position=this.mob.position??this.position,this.embedded=this.mob.embedded??this.embedded}},vi=class{gap;dir;wrap;jc;ai;scroll;constructor(e){e??={},this.gap=e.gap??0,this.dir=e.dir??"row",this.wrap=e.wrap??"nowrap",this.jc=e.jc??"flex-start",this.ai=e.ai??"flex-start",this.scroll=e.scroll}},ea=class{of;disp;pos;top;bottom;left;right;zIndex;constructor(e){e??={},this.of=e.of,this.disp=e.disp,this.pos=e.pos,this.top=e.top,this.bottom=e.bottom,this.left=e.left,this.right=e.right,this.zIndex=e.zIndex}},ta=class{w;h;maxW;maxH;minW;minH;constructor(e){e??={},this.w=e.w??"100%",this.h=e.h??"auto",this.maxW=e.maxW,this.maxH=e.maxH,this.minW=e.minW,this.minH=e.minH}},ra=class{size;bg;br;spc;typo;lout;flex;constructor(e){e??={},this.spc=new Lr(e.spc),e.size&&(this.size=new ta(e.size)),e.bg&&(this.bg=new yn(e.bg)),e.br&&(this.br=new vn(e.br)),e.typo&&(this.typo=new lt(e.typo)),e.lout&&(this.lout=new ea(e.lout)),e.flex&&(this.flex=new vi(e.flex))}},Ei=class{sm;lg;constructor(e){e??={},this.sm=new ra(e.sm),this.lg=new ra(e.lg)}},it=class{t;style;hide;when;clc;constructor(e,t){t??={},this.t=e,this.style=new Ei(t.style),this.hide=t.hide,t.when?.op&&(this.when=t.when),t.clc&&(this.clc=t.clc)}get stringType(){return Ue[this.t]}},ot=class extends it{text;constructor(e,t){e?.style?.lg?.typo?.s&&delete e.style.lg.typo.s,e?.style?.sm?.typo?.s&&delete e.style.sm.typo.s,super(t??2,e),e??={},this.text=e.text}},bn=class extends ot{constructor(e,t){super(e,t??3)}},_i=class extends it{value;constructor(e){super(6,e),e??={},this.value=e.value}},Si=class extends ot{constructor(e=15,t){super(t,e)}},na=class extends it{c;iconSize;showSingleStar;fullStar;halfStart;constructor(e){super(19,e),e??={},this.c=new He(e.c),this.iconSize=e.iconSize??24,this.showSingleStar=e.showSingleStar??!1,this.fullStar=e.fullStar,this.halfStart=e.halfStart}},Jm=Se(on()),bu=class{enabled;type;color;constructor(e){e??={},this.enabled=e.enabled,this.type=e.type,this.color=new He(e.color)}},wu=class{size;enabled;color;constructor(e){e??={},this.enabled=e.enabled,this.size=e.size,this.color=new He(e.color)}},_o=class{navigation;pagination;autoplay;maxInRow;gap;slidesPerView;constructor(e){e??={},this.navigation=new wu(e.navigation),this.pagination=new bu(e.pagination),this.autoplay=e.autoplay,this.slidesPerView=e.slidesPerView??1,this.maxInRow=e.maxInRow??e.slidesPerView??4,this.gap=e.gap??0}},ia=class extends it{conf;slide;formData;values;allowedTypes;constructor(e){super(62,e),e&&this.update(e)}update(e){e??={},this.slide=kt.getParsedElement(e.slide),this.formData=e.formData,this.values=e.values,this.conf=new _o(e.conf),this.allowedTypes=e.allowedTypes}},oa=class extends ot{gap;timer;timerType;horizontal;lblPos;show;constructor(e){e??={},super(e,61),this.gap=e.gap,this.timerType=e.type,this.timer=new fi(e.timer),this.show=e.show??{days:!0,hours:!0,minutes:!0,seconds:!0},this.horizontal=e.horizontal,this.lblPos=e.lblPos}},qr=class extends it{elems;constructor(e){super(4,e),this.update(e)}update(e){e??={},this.elems??=[],e.elems?.forEach(t=>{let r=kt.getParsedElement(t);r&&this.elems.push(r)})}},wn=class extends it{src;sm;lg;constructor(e,t){super(t??1,e),e&&this.update(e)}update(e){this.src=e.src,this.sm=e.sm,this.lg=e.lg}},kt=class kh{static getParsedElements(t){let r=[];return t?.forEach(n=>{let i=kh.getParsedElement(n);i&&r.push(i)}),r}static getParsedElement(t){switch(t.t){case 2:return new ot(t);case 3:return new bn(t);case 6:return new _i(t);case 11:return new sa(t);case 12:return new Kr(t);case 61:return new oa(t);case 4:return new qr(t);case 1:return new wn(t);case 13:return new wn(t,13);case 14:return new ot(t,14);case 15:case 16:return new Si(t.t,t);case 18:return new bn(t,18);case 62:return new ia(t);case 19:return new na(t);default:Jm.default.error("Unknown element type",t.t);return}}static parseAlignmentToJustifyContent(t){switch(t){case 1:return"center";case 2:return"flex-end";case 0:return"flex-start";default:return"flex-start"}}},Kr=class extends it{img;title;desc;price;compareAt;btn;variantDD;show;symbol;cBox;elems;noLinks;constructor(e){if(e??={},super(12,e),this.show=e.show,this.elems=kt.getParsedElements(e.elems),this.noLinks=e.noLinks,!this.elems.length){e.cBox&&this.elems.push(new _i(e.cBox)),this.elems.push(new wn(e.img,13));let t=new ot(e.title,14);t.hide=!e.show?.title,t.text="{{ product.name }}",this.elems.push(t);let r=new ot(e.price);r.text="{{ product.price }}",r.hide=!e.show?.price;let n=new ot(e.compareAt);n.text="{{ product.compare_price }}",n.hide=!e.show?.price,e.compareAt||(n.style=new Ei(r.style),n.style.lg.typo=new lt(te(b({},n.style.lg.typo),{td:"line-through"})),n.style.sm.typo=new lt(te(b({},n.style.sm.typo),{td:"line-through"})));let i=new qr({style:{lg:{spc:{mb:10},flex:{dir:"row",gap:10,ai:"center",jc:kt.parseAlignmentToJustifyContent(r.style.lg.typo?.ta)}}}});i.elems.push(n),i.elems.push(r),this.elems.push(i);let s=new Si(15,e.variantDD);if(s.hide=!e.show?.variantDD,this.elems.push(s),e.btn){let o=new bn(e.btn,18);o.hide=!e.show?.btn,this.elems.push(o)}}e.symbol&&(this.symbol=new ot(e.symbol))}},sa=class extends it{conf;prod;constructor(e){super(11,e),e??={},this.conf=new Iu(e.conf),this.prod=new Kr(e.prod)}},aa=class extends _o{disp;maxItems;constructor(e){e??={},super(e),this.disp=e.disp,this.maxItems=e.maxItems}},Iu=class{lg;sm;constructor(e){e??={},this.lg=new aa(e.lg),this.sm=new aa(e.sm)}},ca=class extends qr{constructor(e){super(e)}},bi=class{cont;elems=[];constructor(e){e=e??{},this.cont=new ca(e.cont),e.elems?.forEach(t=>{this.addRawElement(t)})}addRawElement(e){let t=kt.getParsedElement(e);return t&&this.elems.push(t),t}},Qm=Se(Rr()),Tu=class{minValue;rewardType;label;reachingText;reachedText;discount;items;calculatedAlignment;constructor(e){this.minValue=e.minValue,this.rewardType=e.rewardType,this.label=e.label,this.reachingText=e.reachingText,this.reachedText=e.reachedText,this.discount=e.discount,this.items=e.items?.map(t=>new ft(t))}},la=class{layout;milestones;onlyLatestGift;constructor(e){this.layout=e.layout??Qm.ProgressBarLayout.ICONS,this.milestones=e.milestones?.map(t=>new Tu(t))??[],this.onlyLatestGift=e.onlyLatestGift}},ua=class{applyDiscountOnMinimum;constructor(e){this.applyDiscountOnMinimum=e.applyDiscountOnMinimum}},pa=class{id;alt;sources;items;durationMS;thumbnail;constructor(e={}){this.id=e.id,this.alt=e.alt,this.sources=e.sources,this.durationMS=e.durationMS,this.thumbnail=e.thumbnail,this.items=e.items?e.items.map(t=>new ft(t)):[]}},fa=class{videos;source;template;heading;constructor(e={}){this.videos=e.videos?.map(t=>new pa(t))??[],this.source=e.source,this.template=e.template,this.heading=e.heading}},xu=class{engagementID;shortID;contentType;delay;onsiteDeliveryType;objective;redirectBehaviour;constructor(e){this.shortID=e.shortID,this.contentType=e.contentType,this.engagementID=e.engagementID,this.delay=e.delay??0,this.redirectBehaviour=e.redirectBehaviour,this.onsiteDeliveryType=e.onsiteDeliveryType,this.objective=e.objective}isAnySplit(){return this.isABTesting()||this.isExclusionTesting()}isExclusionTesting(){return this.contentType===Tt.EngagementContentType.EXCLUSION}isABTesting(){return this.contentType===Tt.EngagementContentType.ABTESTING}isSingleContent(){return this.contentType===Tt.EngagementContentType.SINGLE}},Ct=class Lh extends xu{static SWIPER_ELEMENTS=new Set([11,62]);nudgeID;contentID;variation;ian;widget;discount;placement;promotionType;contentSource;manipulation;klaviyoFormID;hasMultiplePlacement;skipSubscribedItems;progressBarConfig;bundleConfig;content;previewType;occurred;id;currency;props;items;nonMutableItems;embeddedItems;bundleFrom;collections;customerData;experiment;discountData=jt({});constructor(t){super(t),this.id=t.id,this.nudgeID=t.nudgeID,this.currency=ue.get().currencyCode??"USD",this.contentID=t.contentID,this.variation=t.variation,t.widget&&(this.widget=new bi(t.widget)),this.previewType=t.previewType,this.occurred=t.occurred??new Date,this.props=t.props,this.embeddedItems=t.embeddedItems?.map(r=>new ft(r)),this.items=t.items?.map(r=>new At(r))??[],this.nonMutableItems=t.items?.map(r=>new At(r))??[],this.collections=t.collections?.map(r=>new zs(r))??[],this.discount=t.discount,this.placement=t.placement,this.customerData=t.customerData,this.ian=t.ian?this.processPopup(t.ian):void 0,this.promotionType=t.promotionType,this.manipulation=new qs(t.manipulation),this.contentSource=t.contentSource,this.klaviyoFormID=t.klaviyoFormID,this.hasMultiplePlacement=t.hasMultiplePlacement,this.skipSubscribedItems=t.skipSubscribedItems,this.experiment=t.experiment,t.progressBarConfig&&(this.progressBarConfig=new la(t.progressBarConfig)),t.bundleConfig&&(this.bundleConfig=new ua(t.bundleConfig)),t.bundleFrom&&(this.bundleFrom=new At(t.bundleFrom)),t.content?.videoConfig&&(this.content={videoConfig:new fa(t.content.videoConfig)})}shouldDelay(){return this.delay>0}sentryContext(){return{id:this.id,shortID:this.shortID,currency:this.currency,contentType:this.contentType,objective:this.objective,onsiteDeliveryType:this.onsiteDeliveryType,engagementID:this.engagementID,contentID:this.contentID,nudgeID:this.nudgeID,variation:this.variation}}getDelaySeconds(){let t=new Date().getTime()-this.occurred.getTime();return this.delay*1e3-t}isBundle(){return this.objective===Tt.EngagementObjective.BUNDLE_AND_UPSELL}isCartEmbed(){return this.onsiteDeliveryType===Tt.OnsiteDeliveryType.CART_EMBED}isPageEmbed(){return this.onsiteDeliveryType===Tt.OnsiteDeliveryType.PAGE_EMBED}isProgressBar(){return this.objective===Tt.EngagementObjective.PROGRESS_BAR}isSubscriptionUpsell(){return this.objective===Tt.EngagementObjective.SUBSCRIPTION_UPSELL}isCartRecovery(){return this.objective===Tt.EngagementObjective.CART_RECOVERY}isProductPromotion(){return this.objective===Tt.EngagementObjective.PRODUCT_PROMOTION}isProductPromoted(){return this.isProductPromotion()||this.isBundle()||this.isCartRecovery()}isBYOB(){return this.objective===Tt.EngagementObjective.BYOB}isShoppableVideo(){return this.objective===Tt.EngagementObjective.SHOPPABLE_VIDEO}processPopup(t){let r=JSON.stringify(t),n=this.items[0],i={},s={};if(n){let u=n.selectedOrFirstVariant.value;i={name:n.name,id:n.mID,link:n.link,vID:u.mID,image:n.variantImage,price:Q.formatCurrency(u.price.d),comparePrice:Q.formatCurrency(u.price.cmp),quantity:n.quantity},s={quantity:u.quantity}}let o={productCount:de.getCurrent().item_count},c=_t.render(r,{product:i,variant:s,cart:o,discount:this.discount,customer:this.customerData});return n&&(c=c.replace(new RegExp(N.PLACEHOLDER_IMAGE,"gi"),n.variantImage??n.imageURL)),new Zs(JSON.parse(c))}calculateDiscountData(t,r){let n=Cu.ArrayUtils.sum(t,s=>s.selectedOrFirstVariant.value.price.d),i={actualPrice:n,discountAmount:0,discountPercentage:0,discountedPrice:n};if(!t?.length||!r||!this.discount?.type){this.discountData.value=this.formatCurrencyAndNumber(i);return}if(Xr.DiscountType.BXGY===this.discount.type&&this.discount.values?.length)i.discountPercentage=this.discount.values[0],this.updateEffectivePrice(t,i.discountPercentage,!0),i.discountAmount=i.actualPrice-Cu.ArrayUtils.sum(t,s=>s.selectedOrFirstVariant.value.effectivePrice.value);else if([Xr.DiscountType.UNIQUE_FLAT_ITEMS,Xr.DiscountType.STATIC].includes(this.discount.type)&&this.discount.values?.length)i.discountPercentage=this.discount.values[0],i.discountAmount=i.actualPrice*i.discountPercentage/100,this.updateEffectivePrice(t,i.discountPercentage);else if(this.discount.type===Xr.DiscountType.UNIQUE_FIXED_ITEMS&&this.discount.values?.length)i.discountAmount=i.actualPrice-this.discount.values[0],i.discountPercentage=i.discountAmount/i.actualPrice*100,this.updateEffectivePrice(t,i.discountPercentage);else if(this.discount.type===Xr.DiscountType.UNIQUE_CHEAPEST_ITEM_FREE){t.sort((o,c)=>c.selectedOrFirstVariant.value.price.d-o.selectedOrFirstVariant.value.price.d);let s=t[t.length-1];s.selectedOrFirstVariant.value.effectivePrice.value=0,i.discountAmount=s.selectedOrFirstVariant.value.price.d,i.discountPercentage=i.discountAmount/i.actualPrice*100}i.discountedPrice=i.actualPrice-i.discountAmount,this.discountData.value=this.formatCurrencyAndNumber(i)}getPrivateAttributesForLineItem(){return Pe.get().skipItemAttribute?{}:{[N.VIA]:"Cooee",[N.CAMPAIGN_ATTRIBUTE]:this.shortID,[N.CONTENT_ATTRIBUTE]:this.contentID}}getKVFormatPrivateAttributesForLineItem(){return Pe.get().skipItemAttribute?[]:[{key:N.VIA,value:"Cooee"},{key:N.CAMPAIGN_ATTRIBUTE,value:this.shortID},{key:N.CONTENT_ATTRIBUTE,value:this.contentID}]}isBundleDiscount(){return[Xr.DiscountType.UNIQUE_FIXED_ITEMS,Xr.DiscountType.UNIQUE_FLAT_ITEMS].includes(this.discount.type)}isBundleOnCartDrawer(){return this.isBundle()&&this.isCartEmbed()}isBundleOnPDP(){return this.isPageEmbed()&&this.isBundle()}hasSwiperElement(){let t=this.widget?.elems.find(n=>Lh.SWIPER_ELEMENTS.has(n.t));if(!t)return!1;if(t.t===62)return!0;let r=Mt.get().isMobile()?"sm":"lg";return t.conf[r].disp===2}toString(){return`Engagement(id=${this.shortID})`}getCartMagicVariables(){let t=de.getCurrent();return{productCount:t.item_count,amount:Q.formatCurrency(t.total_price/100),originalAmount:Q.formatCurrency(t.original_total_price/100)}}updateEffectivePrice(t,r,n=!1){let i=ue.get().getCurrentItem();t.forEach(s=>{let o=s.selectedOrFirstVariant.value,c=o.price;if(n&&s.mID===i.mID)o.effectivePrice.value=c.d;else{let u=c.d*r/100;o.effectivePrice.value=c.d-u}})}formatCurrencyAndNumber(t){if(!t)return{};let r={discountPercentage:Q.formatNumber(t.discountPercentage??0),discountCode:this.discount?.code};return["actualPrice","discountAmount","discountedPrice"].map(n=>{r[n]=Q.formatCurrency(t[n])}),r}};function OE(e,t){return t={exports:{}},e(t,t.exports),t.exports}var PE=UE,LE=FE,ME=jE,Ir=[],qt=[],BE=typeof Uint8Array<"u"?Uint8Array:Array,Du="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(In=0,Zm=Du.length;In<Zm;++In)Ir[In]=Du[In],qt[Du.charCodeAt(In)]=In;var In,Zm;qt[45]=62;qt[95]=63;function hd(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");r===-1&&(r=t);var n=r===t?0:4-r%4;return[r,n]}function UE(e){var t=hd(e),r=t[0],n=t[1];return(r+n)*3/4-n}function kE(e,t,r){return(t+r)*3/4-r}function FE(e){var t,r=hd(e),n=r[0],i=r[1],s=new BE(kE(e,n,i)),o=0,c=i>0?n-4:n,u;for(u=0;u<c;u+=4)t=qt[e.charCodeAt(u)]<<18|qt[e.charCodeAt(u+1)]<<12|qt[e.charCodeAt(u+2)]<<6|qt[e.charCodeAt(u+3)],s[o++]=t>>16&255,s[o++]=t>>8&255,s[o++]=t&255;return i===2&&(t=qt[e.charCodeAt(u)]<<2|qt[e.charCodeAt(u+1)]>>4,s[o++]=t&255),i===1&&(t=qt[e.charCodeAt(u)]<<10|qt[e.charCodeAt(u+1)]<<4|qt[e.charCodeAt(u+2)]>>2,s[o++]=t>>8&255,s[o++]=t&255),s}function HE(e){return Ir[e>>18&63]+Ir[e>>12&63]+Ir[e>>6&63]+Ir[e&63]}function $E(e,t,r){for(var n,i=[],s=t;s<r;s+=3)n=(e[s]<<16&16711680)+(e[s+1]<<8&65280)+(e[s+2]&255),i.push(HE(n));return i.join("")}function jE(e){for(var t,r=e.length,n=r%3,i=[],s=16383,o=0,c=r-n;o<c;o+=s)i.push($E(e,o,o+s>c?c:o+s));return n===1?(t=e[r-1],i.push(Ir[t>>2]+Ir[t<<4&63]+"==")):n===2&&(t=(e[r-2]<<8)+e[r-1],i.push(Ir[t>>10]+Ir[t>>4&63]+Ir[t<<2&63]+"=")),i.join("")}var Ru={byteLength:PE,toByteArray:LE,fromByteArray:ME},VE=function(e,t,r,n,i){var s,o,c=i*8-n-1,u=(1<<c)-1,d=u>>1,m=-7,h=r?i-1:0,y=r?-1:1,E=e[t+h];for(h+=y,s=E&(1<<-m)-1,E>>=-m,m+=c;m>0;s=s*256+e[t+h],h+=y,m-=8);for(o=s&(1<<-m)-1,s>>=-m,m+=n;m>0;o=o*256+e[t+h],h+=y,m-=8);if(s===0)s=1-d;else{if(s===u)return o?NaN:(E?-1:1)*(1/0);o=o+Math.pow(2,n),s=s-d}return(E?-1:1)*o*Math.pow(2,s-n)},WE=function(e,t,r,n,i,s){var o,c,u,d=s*8-i-1,m=(1<<d)-1,h=m>>1,y=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=n?0:s-1,v=n?1:-1,_=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(c=isNaN(t)?1:0,o=m):(o=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-o))<1&&(o--,u*=2),o+h>=1?t+=y/u:t+=y*Math.pow(2,1-h),t*u>=2&&(o++,u/=2),o+h>=m?(c=0,o=m):o+h>=1?(c=(t*u-1)*Math.pow(2,i),o=o+h):(c=t*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;e[r+E]=c&255,E+=v,c/=256,i-=8);for(o=o<<i|c,d+=i;d>0;e[r+E]=o&255,E+=v,o/=256,d-=8);e[r+E-v]|=_*128},wi={read:VE,write:WE},ha=OE(function(e,t){var r=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=o,t.SlowBuffer=P,t.INSPECT_MAX_BYTES=50;var n=2147483647;t.kMaxLength=n,o.TYPED_ARRAY_SUPPORT=i(),!o.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function i(){try{var a=new Uint8Array(1),l={foo:function(){return 42}};return Object.setPrototypeOf(l,Uint8Array.prototype),Object.setPrototypeOf(a,l),a.foo()===42}catch{return!1}}Object.defineProperty(o.prototype,"parent",{enumerable:!0,get:function(){if(o.isBuffer(this))return this.buffer}}),Object.defineProperty(o.prototype,"offset",{enumerable:!0,get:function(){if(o.isBuffer(this))return this.byteOffset}});function s(a){if(a>n)throw new RangeError('The value "'+a+'" is invalid for option "size"');var l=new Uint8Array(a);return Object.setPrototypeOf(l,o.prototype),l}function o(a,l,p){if(typeof a=="number"){if(typeof l=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return m(a)}return c(a,l,p)}o.poolSize=8192;function c(a,l,p){if(typeof a=="string")return h(a,l);if(ArrayBuffer.isView(a))return E(a);if(a==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+babelHelpers.typeof(a));if(vt(a,ArrayBuffer)||a&&vt(a.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(vt(a,SharedArrayBuffer)||a&&vt(a.buffer,SharedArrayBuffer)))return v(a,l,p);if(typeof a=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var T=a.valueOf&&a.valueOf();if(T!=null&&T!==a)return o.from(T,l,p);var A=_(a);if(A)return A;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof a[Symbol.toPrimitive]=="function")return o.from(a[Symbol.toPrimitive]("string"),l,p);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+babelHelpers.typeof(a))}o.from=function(a,l,p){return c(a,l,p)},Object.setPrototypeOf(o.prototype,Uint8Array.prototype),Object.setPrototypeOf(o,Uint8Array);function u(a){if(typeof a!="number")throw new TypeError('"size" argument must be of type number');if(a<0)throw new RangeError('The value "'+a+'" is invalid for option "size"')}function d(a,l,p){return u(a),a<=0?s(a):l!==void 0?typeof p=="string"?s(a).fill(l,p):s(a).fill(l):s(a)}o.alloc=function(a,l,p){return d(a,l,p)};function m(a){return u(a),s(a<0?0:D(a)|0)}o.allocUnsafe=function(a){return m(a)},o.allocUnsafeSlow=function(a){return m(a)};function h(a,l){if((typeof l!="string"||l==="")&&(l="utf8"),!o.isEncoding(l))throw new TypeError("Unknown encoding: "+l);var p=M(a,l)|0,T=s(p),A=T.write(a,l);return A!==p&&(T=T.slice(0,A)),T}function y(a){for(var l=a.length<0?0:D(a.length)|0,p=s(l),T=0;T<l;T+=1)p[T]=a[T]&255;return p}function E(a){if(vt(a,Uint8Array)){var l=new Uint8Array(a);return v(l.buffer,l.byteOffset,l.byteLength)}return y(a)}function v(a,l,p){if(l<0||a.byteLength<l)throw new RangeError('"offset" is outside of buffer bounds');if(a.byteLength<l+(p||0))throw new RangeError('"length" is outside of buffer bounds');var T;return l===void 0&&p===void 0?T=new Uint8Array(a):p===void 0?T=new Uint8Array(a,l):T=new Uint8Array(a,l,p),Object.setPrototypeOf(T,o.prototype),T}function _(a){if(o.isBuffer(a)){var l=D(a.length)|0,p=s(l);return p.length===0||a.copy(p,0,0,l),p}if(a.length!==void 0)return typeof a.length!="number"||$r(a.length)?s(0):y(a);if(a.type==="Buffer"&&Array.isArray(a.data))return y(a.data)}function D(a){if(a>=n)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+n.toString(16)+" bytes");return a|0}function P(a){return+a!=a&&(a=0),o.alloc(+a)}o.isBuffer=function(a){return a!=null&&a._isBuffer===!0&&a!==o.prototype},o.compare=function(a,l){if(vt(a,Uint8Array)&&(a=o.from(a,a.offset,a.byteLength)),vt(l,Uint8Array)&&(l=o.from(l,l.offset,l.byteLength)),!o.isBuffer(a)||!o.isBuffer(l))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(a===l)return 0;for(var p=a.length,T=l.length,A=0,U=Math.min(p,T);A<U;++A)if(a[A]!==l[A]){p=a[A],T=l[A];break}return p<T?-1:T<p?1:0},o.isEncoding=function(a){switch(String(a).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},o.concat=function(a,l){if(!Array.isArray(a))throw new TypeError('"list" argument must be an Array of Buffers');if(a.length===0)return o.alloc(0);var p;if(l===void 0)for(l=0,p=0;p<a.length;++p)l+=a[p].length;var T=o.allocUnsafe(l),A=0;for(p=0;p<a.length;++p){var U=a[p];if(vt(U,Uint8Array))A+U.length>T.length?o.from(U).copy(T,A):Uint8Array.prototype.set.call(T,U,A);else if(o.isBuffer(U))U.copy(T,A);else throw new TypeError('"list" argument must be an Array of Buffers');A+=U.length}return T};function M(a,l){if(o.isBuffer(a))return a.length;if(ArrayBuffer.isView(a)||vt(a,ArrayBuffer))return a.byteLength;if(typeof a!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+babelHelpers.typeof(a));var p=a.length,T=arguments.length>2&&arguments[2]===!0;if(!T&&p===0)return 0;for(var A=!1;;)switch(l){case"ascii":case"latin1":case"binary":return p;case"utf8":case"utf-8":return nn(a).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return p*2;case"hex":return p>>>1;case"base64":return Gn(a).length;default:if(A)return T?-1:nn(a).length;l=(""+l).toLowerCase(),A=!0}}o.byteLength=M;function L(a,l,p){var T=!1;if((l===void 0||l<0)&&(l=0),l>this.length||((p===void 0||p>this.length)&&(p=this.length),p<=0)||(p>>>=0,l>>>=0,p<=l))return"";for(a||(a="utf8");;)switch(a){case"hex":return gt(this,l,p);case"utf8":case"utf-8":return $e(this,l,p);case"ascii":return Ke(this,l,p);case"latin1":case"binary":return ve(this,l,p);case"base64":return ge(this,l,p);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ae(this,l,p);default:if(T)throw new TypeError("Unknown encoding: "+a);a=(a+"").toLowerCase(),T=!0}}o.prototype._isBuffer=!0;function R(a,l,p){var T=a[l];a[l]=a[p],a[p]=T}o.prototype.swap16=function(){var a=this.length;if(a%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var l=0;l<a;l+=2)R(this,l,l+1);return this},o.prototype.swap32=function(){var a=this.length;if(a%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var l=0;l<a;l+=4)R(this,l,l+3),R(this,l+1,l+2);return this},o.prototype.swap64=function(){var a=this.length;if(a%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var l=0;l<a;l+=8)R(this,l,l+7),R(this,l+1,l+6),R(this,l+2,l+5),R(this,l+3,l+4);return this},o.prototype.toString=function(){var a=this.length;return a===0?"":arguments.length===0?$e(this,0,a):L.apply(this,arguments)},o.prototype.toLocaleString=o.prototype.toString,o.prototype.equals=function(a){if(!o.isBuffer(a))throw new TypeError("Argument must be a Buffer");return this===a?!0:o.compare(this,a)===0},o.prototype.inspect=function(){var a="",l=t.INSPECT_MAX_BYTES;return a=this.toString("hex",0,l).replace(/(.{2})/g,"$1 ").trim(),this.length>l&&(a+=" ... "),"<Buffer "+a+">"},r&&(o.prototype[r]=o.prototype.inspect),o.prototype.compare=function(a,l,p,T,A){if(vt(a,Uint8Array)&&(a=o.from(a,a.offset,a.byteLength)),!o.isBuffer(a))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+babelHelpers.typeof(a));if(l===void 0&&(l=0),p===void 0&&(p=a?a.length:0),T===void 0&&(T=0),A===void 0&&(A=this.length),l<0||p>a.length||T<0||A>this.length)throw new RangeError("out of range index");if(T>=A&&l>=p)return 0;if(T>=A)return-1;if(l>=p)return 1;if(l>>>=0,p>>>=0,T>>>=0,A>>>=0,this===a)return 0;for(var U=A-T,G=p-l,Ie=Math.min(U,G),me=this.slice(T,A),ye=a.slice(l,p),je=0;je<Ie;++je)if(me[je]!==ye[je]){U=me[je],G=ye[je];break}return U<G?-1:G<U?1:0};function q(a,l,p,T,A){if(a.length===0)return-1;if(typeof p=="string"?(T=p,p=0):p>2147483647?p=2147483647:p<-2147483648&&(p=-2147483648),p=+p,$r(p)&&(p=A?0:a.length-1),p<0&&(p=a.length+p),p>=a.length){if(A)return-1;p=a.length-1}else if(p<0)if(A)p=0;else return-1;if(typeof l=="string"&&(l=o.from(l,T)),o.isBuffer(l))return l.length===0?-1:he(a,l,p,T,A);if(typeof l=="number")return l=l&255,typeof Uint8Array.prototype.indexOf=="function"?A?Uint8Array.prototype.indexOf.call(a,l,p):Uint8Array.prototype.lastIndexOf.call(a,l,p):he(a,[l],p,T,A);throw new TypeError("val must be string, number or Buffer")}function he(a,l,p,T,A){var U=1,G=a.length,Ie=l.length;if(T!==void 0&&(T=String(T).toLowerCase(),T==="ucs2"||T==="ucs-2"||T==="utf16le"||T==="utf-16le")){if(a.length<2||l.length<2)return-1;U=2,G/=2,Ie/=2,p/=2}function me(ee,Ce){return U===1?ee[Ce]:ee.readUInt16BE(Ce*U)}var ye;if(A){var je=-1;for(ye=p;ye<G;ye++)if(me(a,ye)===me(l,je===-1?0:ye-je)){if(je===-1&&(je=ye),ye-je+1===Ie)return je*U}else je!==-1&&(ye-=ye-je),je=-1}else for(p+Ie>G&&(p=G-Ie),ye=p;ye>=0;ye--){for(var W=!0,ce=0;ce<Ie;ce++)if(me(a,ye+ce)!==me(l,ce)){W=!1;break}if(W)return ye}return-1}o.prototype.includes=function(a,l,p){return this.indexOf(a,l,p)!==-1},o.prototype.indexOf=function(a,l,p){return q(this,a,l,p,!0)},o.prototype.lastIndexOf=function(a,l,p){return q(this,a,l,p,!1)};function ke(a,l,p,T){p=Number(p)||0;var A=a.length-p;T?(T=Number(T),T>A&&(T=A)):T=A;var U=l.length;T>U/2&&(T=U/2);for(var G=0;G<T;++G){var Ie=parseInt(l.substr(G*2,2),16);if($r(Ie))return G;a[p+G]=Ie}return G}function B(a,l,p,T){return $n(nn(l,a.length-p),a,p,T)}function Z(a,l,p,T){return $n(ei(l),a,p,T)}function z(a,l,p,T){return $n(Gn(l),a,p,T)}function J(a,l,p,T){return $n(qi(l,a.length-p),a,p,T)}o.prototype.write=function(a,l,p,T){if(l===void 0)T="utf8",p=this.length,l=0;else if(p===void 0&&typeof l=="string")T=l,p=this.length,l=0;else if(isFinite(l))l=l>>>0,isFinite(p)?(p=p>>>0,T===void 0&&(T="utf8")):(T=p,p=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var A=this.length-l;if((p===void 0||p>A)&&(p=A),a.length>0&&(p<0||l<0)||l>this.length)throw new RangeError("Attempt to write outside buffer bounds");T||(T="utf8");for(var U=!1;;)switch(T){case"hex":return ke(this,a,l,p);case"utf8":case"utf-8":return B(this,a,l,p);case"ascii":case"latin1":case"binary":return Z(this,a,l,p);case"base64":return z(this,a,l,p);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return J(this,a,l,p);default:if(U)throw new TypeError("Unknown encoding: "+T);T=(""+T).toLowerCase(),U=!0}},o.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function ge(a,l,p){return l===0&&p===a.length?Ru.fromByteArray(a):Ru.fromByteArray(a.slice(l,p))}function $e(a,l,p){p=Math.min(a.length,p);for(var T=[],A=l;A<p;){var U=a[A],G=null,Ie=U>239?4:U>223?3:U>191?2:1;if(A+Ie<=p){var me,ye,je,W;switch(Ie){case 1:U<128&&(G=U);break;case 2:me=a[A+1],(me&192)===128&&(W=(U&31)<<6|me&63,W>127&&(G=W));break;case 3:me=a[A+1],ye=a[A+2],(me&192)===128&&(ye&192)===128&&(W=(U&15)<<12|(me&63)<<6|ye&63,W>2047&&(W<55296||W>57343)&&(G=W));break;case 4:me=a[A+1],ye=a[A+2],je=a[A+3],(me&192)===128&&(ye&192)===128&&(je&192)===128&&(W=(U&15)<<18|(me&63)<<12|(ye&63)<<6|je&63,W>65535&&W<1114112&&(G=W))}}G===null?(G=65533,Ie=1):G>65535&&(G-=65536,T.push(G>>>10&1023|55296),G=56320|G&1023),T.push(G),A+=Ie}return g(T)}var xe=4096;function g(a){var l=a.length;if(l<=xe)return String.fromCharCode.apply(String,a);for(var p="",T=0;T<l;)p+=String.fromCharCode.apply(String,a.slice(T,T+=xe));return p}function Ke(a,l,p){var T="";p=Math.min(a.length,p);for(var A=l;A<p;++A)T+=String.fromCharCode(a[A]&127);return T}function ve(a,l,p){var T="";p=Math.min(a.length,p);for(var A=l;A<p;++A)T+=String.fromCharCode(a[A]);return T}function gt(a,l,p){var T=a.length;(!l||l<0)&&(l=0),(!p||p<0||p>T)&&(p=T);for(var A="",U=l;U<p;++U)A+=Gi[a[U]];return A}function ae(a,l,p){for(var T=a.slice(l,p),A="",U=0;U<T.length-1;U+=2)A+=String.fromCharCode(T[U]+T[U+1]*256);return A}o.prototype.slice=function(a,l){var p=this.length;a=~~a,l=l===void 0?p:~~l,a<0?(a+=p,a<0&&(a=0)):a>p&&(a=p),l<0?(l+=p,l<0&&(l=0)):l>p&&(l=p),l<a&&(l=a);var T=this.subarray(a,l);return Object.setPrototypeOf(T,o.prototype),T};function ie(a,l,p){if(a%1!==0||a<0)throw new RangeError("offset is not uint");if(a+l>p)throw new RangeError("Trying to access beyond buffer length")}o.prototype.readUintLE=o.prototype.readUIntLE=function(a,l,p){a=a>>>0,l=l>>>0,p||ie(a,l,this.length);for(var T=this[a],A=1,U=0;++U<l&&(A*=256);)T+=this[a+U]*A;return T},o.prototype.readUintBE=o.prototype.readUIntBE=function(a,l,p){a=a>>>0,l=l>>>0,p||ie(a,l,this.length);for(var T=this[a+--l],A=1;l>0&&(A*=256);)T+=this[a+--l]*A;return T},o.prototype.readUint8=o.prototype.readUInt8=function(a,l){return a=a>>>0,l||ie(a,1,this.length),this[a]},o.prototype.readUint16LE=o.prototype.readUInt16LE=function(a,l){return a=a>>>0,l||ie(a,2,this.length),this[a]|this[a+1]<<8},o.prototype.readUint16BE=o.prototype.readUInt16BE=function(a,l){return a=a>>>0,l||ie(a,2,this.length),this[a]<<8|this[a+1]},o.prototype.readUint32LE=o.prototype.readUInt32LE=function(a,l){return a=a>>>0,l||ie(a,4,this.length),(this[a]|this[a+1]<<8|this[a+2]<<16)+this[a+3]*16777216},o.prototype.readUint32BE=o.prototype.readUInt32BE=function(a,l){return a=a>>>0,l||ie(a,4,this.length),this[a]*16777216+(this[a+1]<<16|this[a+2]<<8|this[a+3])},o.prototype.readIntLE=function(a,l,p){a=a>>>0,l=l>>>0,p||ie(a,l,this.length);for(var T=this[a],A=1,U=0;++U<l&&(A*=256);)T+=this[a+U]*A;return A*=128,T>=A&&(T-=Math.pow(2,8*l)),T},o.prototype.readIntBE=function(a,l,p){a=a>>>0,l=l>>>0,p||ie(a,l,this.length);for(var T=l,A=1,U=this[a+--T];T>0&&(A*=256);)U+=this[a+--T]*A;return A*=128,U>=A&&(U-=Math.pow(2,8*l)),U},o.prototype.readInt8=function(a,l){return a=a>>>0,l||ie(a,1,this.length),this[a]&128?(255-this[a]+1)*-1:this[a]},o.prototype.readInt16LE=function(a,l){a=a>>>0,l||ie(a,2,this.length);var p=this[a]|this[a+1]<<8;return p&32768?p|4294901760:p},o.prototype.readInt16BE=function(a,l){a=a>>>0,l||ie(a,2,this.length);var p=this[a+1]|this[a]<<8;return p&32768?p|4294901760:p},o.prototype.readInt32LE=function(a,l){return a=a>>>0,l||ie(a,4,this.length),this[a]|this[a+1]<<8|this[a+2]<<16|this[a+3]<<24},o.prototype.readInt32BE=function(a,l){return a=a>>>0,l||ie(a,4,this.length),this[a]<<24|this[a+1]<<16|this[a+2]<<8|this[a+3]},o.prototype.readFloatLE=function(a,l){return a=a>>>0,l||ie(a,4,this.length),wi.read(this,a,!0,23,4)},o.prototype.readFloatBE=function(a,l){return a=a>>>0,l||ie(a,4,this.length),wi.read(this,a,!1,23,4)},o.prototype.readDoubleLE=function(a,l){return a=a>>>0,l||ie(a,8,this.length),wi.read(this,a,!0,52,8)},o.prototype.readDoubleBE=function(a,l){return a=a>>>0,l||ie(a,8,this.length),wi.read(this,a,!1,52,8)};function ut(a,l,p,T,A,U){if(!o.isBuffer(a))throw new TypeError('"buffer" argument must be a Buffer instance');if(l>A||l<U)throw new RangeError('"value" argument is out of bounds');if(p+T>a.length)throw new RangeError("Index out of range")}o.prototype.writeUintLE=o.prototype.writeUIntLE=function(a,l,p,T){if(a=+a,l=l>>>0,p=p>>>0,!T){var A=Math.pow(2,8*p)-1;ut(this,a,l,p,A,0)}var U=1,G=0;for(this[l]=a&255;++G<p&&(U*=256);)this[l+G]=a/U&255;return l+p},o.prototype.writeUintBE=o.prototype.writeUIntBE=function(a,l,p,T){if(a=+a,l=l>>>0,p=p>>>0,!T){var A=Math.pow(2,8*p)-1;ut(this,a,l,p,A,0)}var U=p-1,G=1;for(this[l+U]=a&255;--U>=0&&(G*=256);)this[l+U]=a/G&255;return l+p},o.prototype.writeUint8=o.prototype.writeUInt8=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,1,255,0),this[l]=a&255,l+1},o.prototype.writeUint16LE=o.prototype.writeUInt16LE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,2,65535,0),this[l]=a&255,this[l+1]=a>>>8,l+2},o.prototype.writeUint16BE=o.prototype.writeUInt16BE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,2,65535,0),this[l]=a>>>8,this[l+1]=a&255,l+2},o.prototype.writeUint32LE=o.prototype.writeUInt32LE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,4,4294967295,0),this[l+3]=a>>>24,this[l+2]=a>>>16,this[l+1]=a>>>8,this[l]=a&255,l+4},o.prototype.writeUint32BE=o.prototype.writeUInt32BE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,4,4294967295,0),this[l]=a>>>24,this[l+1]=a>>>16,this[l+2]=a>>>8,this[l+3]=a&255,l+4},o.prototype.writeIntLE=function(a,l,p,T){if(a=+a,l=l>>>0,!T){var A=Math.pow(2,8*p-1);ut(this,a,l,p,A-1,-A)}var U=0,G=1,Ie=0;for(this[l]=a&255;++U<p&&(G*=256);)a<0&&Ie===0&&this[l+U-1]!==0&&(Ie=1),this[l+U]=(a/G>>0)-Ie&255;return l+p},o.prototype.writeIntBE=function(a,l,p,T){if(a=+a,l=l>>>0,!T){var A=Math.pow(2,8*p-1);ut(this,a,l,p,A-1,-A)}var U=p-1,G=1,Ie=0;for(this[l+U]=a&255;--U>=0&&(G*=256);)a<0&&Ie===0&&this[l+U+1]!==0&&(Ie=1),this[l+U]=(a/G>>0)-Ie&255;return l+p},o.prototype.writeInt8=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,1,127,-128),a<0&&(a=255+a+1),this[l]=a&255,l+1},o.prototype.writeInt16LE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,2,32767,-32768),this[l]=a&255,this[l+1]=a>>>8,l+2},o.prototype.writeInt16BE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,2,32767,-32768),this[l]=a>>>8,this[l+1]=a&255,l+2},o.prototype.writeInt32LE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,4,2147483647,-2147483648),this[l]=a&255,this[l+1]=a>>>8,this[l+2]=a>>>16,this[l+3]=a>>>24,l+4},o.prototype.writeInt32BE=function(a,l,p){return a=+a,l=l>>>0,p||ut(this,a,l,4,2147483647,-2147483648),a<0&&(a=4294967295+a+1),this[l]=a>>>24,this[l+1]=a>>>16,this[l+2]=a>>>8,this[l+3]=a&255,l+4};function tr(a,l,p,T,A,U){if(p+T>a.length)throw new RangeError("Index out of range");if(p<0)throw new RangeError("Index out of range")}function lr(a,l,p,T,A){return l=+l,p=p>>>0,A||tr(a,l,p,4),wi.write(a,l,p,T,23,4),p+4}o.prototype.writeFloatLE=function(a,l,p){return lr(this,a,l,!0,p)},o.prototype.writeFloatBE=function(a,l,p){return lr(this,a,l,!1,p)};function yt(a,l,p,T,A){return l=+l,p=p>>>0,A||tr(a,l,p,8),wi.write(a,l,p,T,52,8),p+8}o.prototype.writeDoubleLE=function(a,l,p){return yt(this,a,l,!0,p)},o.prototype.writeDoubleBE=function(a,l,p){return yt(this,a,l,!1,p)},o.prototype.copy=function(a,l,p,T){if(!o.isBuffer(a))throw new TypeError("argument should be a Buffer");if(p||(p=0),!T&&T!==0&&(T=this.length),l>=a.length&&(l=a.length),l||(l=0),T>0&&T<p&&(T=p),T===p||a.length===0||this.length===0)return 0;if(l<0)throw new RangeError("targetStart out of bounds");if(p<0||p>=this.length)throw new RangeError("Index out of range");if(T<0)throw new RangeError("sourceEnd out of bounds");T>this.length&&(T=this.length),a.length-l<T-p&&(T=a.length-l+p);var A=T-p;return this===a&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(l,p,T):Uint8Array.prototype.set.call(a,this.subarray(p,T),l),A},o.prototype.fill=function(a,l,p,T){if(typeof a=="string"){if(typeof l=="string"?(T=l,l=0,p=this.length):typeof p=="string"&&(T=p,p=this.length),T!==void 0&&typeof T!="string")throw new TypeError("encoding must be a string");if(typeof T=="string"&&!o.isEncoding(T))throw new TypeError("Unknown encoding: "+T);if(a.length===1){var A=a.charCodeAt(0);(T==="utf8"&&A<128||T==="latin1")&&(a=A)}}else typeof a=="number"?a=a&255:typeof a=="boolean"&&(a=Number(a));if(l<0||this.length<l||this.length<p)throw new RangeError("Out of range index");if(p<=l)return this;l=l>>>0,p=p===void 0?this.length:p>>>0,a||(a=0);var U;if(typeof a=="number")for(U=l;U<p;++U)this[U]=a;else{var G=o.isBuffer(a)?a:o.from(a,T),Ie=G.length;if(Ie===0)throw new TypeError('The value "'+a+'" is invalid for argument "value"');for(U=0;U<p-l;++U)this[U+l]=G[U%Ie]}return this};var Hr=/[^+/0-9A-Za-z-_]/g;function Hn(a){if(a=a.split("=")[0],a=a.trim().replace(Hr,""),a.length<2)return"";for(;a.length%4!==0;)a=a+"=";return a}function nn(a,l){l=l||1/0;for(var p,T=a.length,A=null,U=[],G=0;G<T;++G){if(p=a.charCodeAt(G),p>55295&&p<57344){if(!A){if(p>56319){(l-=3)>-1&&U.push(239,191,189);continue}else if(G+1===T){(l-=3)>-1&&U.push(239,191,189);continue}A=p;continue}if(p<56320){(l-=3)>-1&&U.push(239,191,189),A=p;continue}p=(A-55296<<10|p-56320)+65536}else A&&(l-=3)>-1&&U.push(239,191,189);if(A=null,p<128){if((l-=1)<0)break;U.push(p)}else if(p<2048){if((l-=2)<0)break;U.push(p>>6|192,p&63|128)}else if(p<65536){if((l-=3)<0)break;U.push(p>>12|224,p>>6&63|128,p&63|128)}else if(p<1114112){if((l-=4)<0)break;U.push(p>>18|240,p>>12&63|128,p>>6&63|128,p&63|128)}else throw new Error("Invalid code point")}return U}function ei(a){for(var l=[],p=0;p<a.length;++p)l.push(a.charCodeAt(p)&255);return l}function qi(a,l){for(var p,T,A,U=[],G=0;G<a.length&&!((l-=2)<0);++G)p=a.charCodeAt(G),T=p>>8,A=p%256,U.push(A),U.push(T);return U}function Gn(a){return Ru.toByteArray(Hn(a))}function $n(a,l,p,T){for(var A=0;A<T&&!(A+p>=l.length||A>=a.length);++A)l[A+p]=a[A];return A}function vt(a,l){return a instanceof l||a!=null&&a.constructor!=null&&a.constructor.name!=null&&a.constructor.name===l.name}function $r(a){return a!==a}var Gi=function(){for(var a="0123456789abcdef",l=new Array(256),p=0;p<16;++p)for(var T=p*16,A=0;A<16;++A)l[T+A]=a[p]+a[A];return l}()}),be=ha.Buffer;ha.SlowBuffer;ha.INSPECT_MAX_BYTES;ha.kMaxLength;var Lu=function(e,t){return Lu=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var i in n)n.hasOwnProperty(i)&&(r[i]=n[i])},Lu(e,t)};function ga(e,t){Lu(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}var Cn=function(e){ga(t,e);function t(r){var n=e.call(this,r)||this;return Object.setPrototypeOf(n,t.prototype),n}return Object.defineProperty(t.prototype,"name",{get:function(){return"BSONError"},enumerable:!1,configurable:!0}),t}(Error),Ve=function(e){ga(t,e);function t(r){var n=e.call(this,r)||this;return Object.setPrototypeOf(n,t.prototype),n}return Object.defineProperty(t.prototype,"name",{get:function(){return"BSONTypeError"},enumerable:!1,configurable:!0}),t}(TypeError);function ma(e){return e&&e.Math==Math&&e}function gd(){return ma(typeof globalThis=="object"&&globalThis)||ma(typeof window=="object"&&window)||ma(typeof self=="object"&&self)||ma(typeof global=="object"&&global)||Function("return this")()}function GE(){var e=gd();return typeof e.navigator=="object"&&e.navigator.product==="ReactNative"}var YE=function(e){var t=GE()?"BSON: For React Native please polyfill crypto.getRandomValues, e.g. using: https://www.npmjs.com/package/react-native-get-random-values.":"BSON: No cryptographic implementation for random bytes present, falling back to a less secure implementation.";console.warn(t);for(var r=be.alloc(e),n=0;n<e;++n)r[n]=Math.floor(Math.random()*256);return r},zE=function(){{if(typeof window<"u"){var e=window.crypto||window.msCrypto;if(e&&e.getRandomValues)return function(t){return e.getRandomValues(be.alloc(t))}}return typeof global<"u"&&global.crypto&&global.crypto.getRandomValues?function(t){return global.crypto.getRandomValues(be.alloc(t))}:YE}},yd=zE();function qE(e){return["[object ArrayBuffer]","[object SharedArrayBuffer]"].includes(Object.prototype.toString.call(e))}function Bu(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}function KE(e){return Object.prototype.toString.call(e)==="[object RegExp]"}function XE(e){return Io(e)&&Object.prototype.toString.call(e)==="[object Date]"}function Io(e){return typeof e=="object"&&e!==null}function ya(e,t){var r=!1;function n(){for(var i=[],s=0;s<arguments.length;s++)i[s]=arguments[s];return r||(console.warn(t),r=!0),e.apply(this,i)}return n}function da(e){if(ArrayBuffer.isView(e))return be.from(e.buffer,e.byteOffset,e.byteLength);if(qE(e))return be.from(e);throw new Ve("Must use either Buffer or TypedArray")}var JE=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|[0-9a-f]{12}4[0-9a-f]{3}[89ab][0-9a-f]{15})$/i,vd=function(e){return typeof e=="string"&&JE.test(e)},Mu=function(e){if(!vd(e))throw new Ve('UUID string representations must be a 32 or 36 character hex string (dashes excluded/included). Format: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" or "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx".');var t=e.replace(/-/g,"");return be.from(t,"hex")},ed=function(e,t){return t===void 0&&(t=!0),t?e.toString("hex",0,4)+"-"+e.toString("hex",4,6)+"-"+e.toString("hex",6,8)+"-"+e.toString("hex",8,10)+"-"+e.toString("hex",10,16):e.toString("hex")},WO=Math.pow(2,63)-1,GO=-Math.pow(2,63),QE=Math.pow(2,53),ZE=-Math.pow(2,53),Ed=4,xn=function(){function e(t,r){if(!(this instanceof e))return new e(t,r);if(t!=null&&typeof t!="string"&&!ArrayBuffer.isView(t)&&!(t instanceof ArrayBuffer)&&!Array.isArray(t))throw new Ve("Binary can only be constructed from string, Buffer, TypedArray, or Array<number>");this.sub_type=r??e.BSON_BINARY_SUBTYPE_DEFAULT,t==null?(this.buffer=be.alloc(e.BUFFER_SIZE),this.position=0):(typeof t=="string"?this.buffer=be.from(t,"binary"):Array.isArray(t)?this.buffer=be.from(t):this.buffer=da(t),this.position=this.buffer.byteLength)}return e.prototype.put=function(t){if(typeof t=="string"&&t.length!==1)throw new Ve("only accepts single character String");if(typeof t!="number"&&t.length!==1)throw new Ve("only accepts single character Uint8Array or Array");var r;if(typeof t=="string"?r=t.charCodeAt(0):typeof t=="number"?r=t:r=t[0],r<0||r>255)throw new Ve("only accepts number in a valid unsigned byte range 0-255");if(this.buffer.length>this.position)this.buffer[this.position++]=r;else{var n=be.alloc(e.BUFFER_SIZE+this.buffer.length);this.buffer.copy(n,0,0,this.buffer.length),this.buffer=n,this.buffer[this.position++]=r}},e.prototype.write=function(t,r){if(r=typeof r=="number"?r:this.position,this.buffer.length<r+t.length){var n=be.alloc(this.buffer.length+t.length);this.buffer.copy(n,0,0,this.buffer.length),this.buffer=n}ArrayBuffer.isView(t)?(this.buffer.set(da(t),r),this.position=r+t.byteLength>this.position?r+t.length:this.position):typeof t=="string"&&(this.buffer.write(t,r,t.length,"binary"),this.position=r+t.length>this.position?r+t.length:this.position)},e.prototype.read=function(t,r){return r=r&&r>0?r:this.position,this.buffer.slice(t,t+r)},e.prototype.value=function(t){return t=!!t,t&&this.buffer.length===this.position?this.buffer:t?this.buffer.slice(0,this.position):this.buffer.toString("binary",0,this.position)},e.prototype.length=function(){return this.position},e.prototype.toJSON=function(){return this.buffer.toString("base64")},e.prototype.toString=function(t){return this.buffer.toString(t)},e.prototype.toExtendedJSON=function(t){t=t||{};var r=this.buffer.toString("base64"),n=Number(this.sub_type).toString(16);return t.legacy?{$binary:r,$type:n.length===1?"0"+n:n}:{$binary:{base64:r,subType:n.length===1?"0"+n:n}}},e.prototype.toUUID=function(){if(this.sub_type===e.SUBTYPE_UUID)return new td(this.buffer.slice(0,this.position));throw new Cn('Binary sub_type "'.concat(this.sub_type,'" is not supported for converting to UUID. Only "').concat(e.SUBTYPE_UUID,'" is currently supported.'))},e.fromExtendedJSON=function(t,r){r=r||{};var n,i;if("$binary"in t?r.legacy&&typeof t.$binary=="string"&&"$type"in t?(i=t.$type?parseInt(t.$type,16):0,n=be.from(t.$binary,"base64")):typeof t.$binary!="string"&&(i=t.$binary.subType?parseInt(t.$binary.subType,16):0,n=be.from(t.$binary.base64,"base64")):"$uuid"in t&&(i=4,n=Mu(t.$uuid)),!n)throw new Ve("Unexpected Binary Extended JSON format ".concat(JSON.stringify(t)));return i===Ed?new td(n):new e(n,i)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){var t=this.value(!0);return'new Binary(Buffer.from("'.concat(t.toString("hex"),'", "hex"), ').concat(this.sub_type,")")},e.BSON_BINARY_SUBTYPE_DEFAULT=0,e.BUFFER_SIZE=256,e.SUBTYPE_DEFAULT=0,e.SUBTYPE_FUNCTION=1,e.SUBTYPE_BYTE_ARRAY=2,e.SUBTYPE_UUID_OLD=3,e.SUBTYPE_UUID=4,e.SUBTYPE_MD5=5,e.SUBTYPE_ENCRYPTED=6,e.SUBTYPE_COLUMN=7,e.SUBTYPE_USER_DEFINED=128,e}();Object.defineProperty(xn.prototype,"_bsontype",{value:"Binary"});var Au=16,td=function(e){ga(t,e);function t(r){var n=this,i,s;if(r==null)i=t.generate();else if(r instanceof t)i=be.from(r.buffer),s=r.__id;else if(ArrayBuffer.isView(r)&&r.byteLength===Au)i=da(r);else if(typeof r=="string")i=Mu(r);else throw new Ve("Argument passed in UUID constructor must be a UUID, a 16 byte Buffer or a 32/36 character hex string (dashes excluded/included, format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).");return n=e.call(this,i,Ed)||this,n.__id=s,n}return Object.defineProperty(t.prototype,"id",{get:function(){return this.buffer},set:function(r){this.buffer=r,t.cacheHexString&&(this.__id=ed(r))},enumerable:!1,configurable:!0}),t.prototype.toHexString=function(r){if(r===void 0&&(r=!0),t.cacheHexString&&this.__id)return this.__id;var n=ed(this.id,r);return t.cacheHexString&&(this.__id=n),n},t.prototype.toString=function(r){return r?this.id.toString(r):this.toHexString()},t.prototype.toJSON=function(){return this.toHexString()},t.prototype.equals=function(r){if(!r)return!1;if(r instanceof t)return r.id.equals(this.id);try{return new t(r).id.equals(this.id)}catch{return!1}},t.prototype.toBinary=function(){return new xn(this.id,xn.SUBTYPE_UUID)},t.generate=function(){var r=yd(Au);return r[6]=r[6]&15|64,r[8]=r[8]&63|128,be.from(r)},t.isValid=function(r){return r?r instanceof t?!0:typeof r=="string"?vd(r):Bu(r)?r.length!==Au?!1:(r[6]&240)===64&&(r[8]&128)===128:!1:!1},t.createFromHexString=function(r){var n=Mu(r);return new t(n)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return'new UUID("'.concat(this.toHexString(),'")')},t}(xn),va=function(){function e(t,r){if(!(this instanceof e))return new e(t,r);this.code=t,this.scope=r}return e.prototype.toJSON=function(){return{code:this.code,scope:this.scope}},e.prototype.toExtendedJSON=function(){return this.scope?{$code:this.code,$scope:this.scope}:{$code:this.code}},e.fromExtendedJSON=function(t){return new e(t.$code,t.$scope)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){var t=this.toJSON();return'new Code("'.concat(String(t.code),'"').concat(t.scope?", ".concat(JSON.stringify(t.scope)):"",")")},e}();Object.defineProperty(va.prototype,"_bsontype",{value:"Code"});function e_(e){return Io(e)&&e.$id!=null&&typeof e.$ref=="string"&&(e.$db==null||typeof e.$db=="string")}var bo=function(){function e(t,r,n,i){if(!(this instanceof e))return new e(t,r,n,i);var s=t.split(".");s.length===2&&(n=s.shift(),t=s.shift()),this.collection=t,this.oid=r,this.db=n,this.fields=i||{}}return Object.defineProperty(e.prototype,"namespace",{get:function(){return this.collection},set:function(t){this.collection=t},enumerable:!1,configurable:!0}),e.prototype.toJSON=function(){var t=Object.assign({$ref:this.collection,$id:this.oid},this.fields);return this.db!=null&&(t.$db=this.db),t},e.prototype.toExtendedJSON=function(t){t=t||{};var r={$ref:this.collection,$id:this.oid};return t.legacy||(this.db&&(r.$db=this.db),r=Object.assign(r,this.fields)),r},e.fromExtendedJSON=function(t){var r=Object.assign({},t);return delete r.$ref,delete r.$id,delete r.$db,new e(t.$ref,t.$id,t.$db,r)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){var t=this.oid===void 0||this.oid.toString===void 0?this.oid:this.oid.toString();return'new DBRef("'.concat(this.namespace,'", new ObjectId("').concat(String(t),'")').concat(this.db?', "'.concat(this.db,'"'):"",")")},e}();Object.defineProperty(bo.prototype,"_bsontype",{value:"DBRef"});var zt=void 0;try{zt=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch{}var rd=65536,t_=1<<24,Ti=rd*rd,_d=Ti*Ti,nd=_d/2,id={},od={},X=function(){function e(t,r,n){if(t===void 0&&(t=0),!(this instanceof e))return new e(t,r,n);typeof t=="bigint"?Object.assign(this,e.fromBigInt(t,!!r)):typeof t=="string"?Object.assign(this,e.fromString(t,!!r)):(this.low=t|0,this.high=r|0,this.unsigned=!!n),Object.defineProperty(this,"__isLong__",{value:!0,configurable:!1,writable:!1,enumerable:!1})}return e.fromBits=function(t,r,n){return new e(t,r,n)},e.fromInt=function(t,r){var n,i,s;return r?(t>>>=0,(s=0<=t&&t<256)&&(i=od[t],i)?i:(n=e.fromBits(t,(t|0)<0?-1:0,!0),s&&(od[t]=n),n)):(t|=0,(s=-128<=t&&t<128)&&(i=id[t],i)?i:(n=e.fromBits(t,t<0?-1:0,!1),s&&(id[t]=n),n))},e.fromNumber=function(t,r){if(isNaN(t))return r?e.UZERO:e.ZERO;if(r){if(t<0)return e.UZERO;if(t>=_d)return e.MAX_UNSIGNED_VALUE}else{if(t<=-nd)return e.MIN_VALUE;if(t+1>=nd)return e.MAX_VALUE}return t<0?e.fromNumber(-t,r).neg():e.fromBits(t%Ti|0,t/Ti|0,r)},e.fromBigInt=function(t,r){return e.fromString(t.toString(),r)},e.fromString=function(t,r,n){if(t.length===0)throw Error("empty string");if(t==="NaN"||t==="Infinity"||t==="+Infinity"||t==="-Infinity")return e.ZERO;if(typeof r=="number"?(n=r,r=!1):r=!!r,n=n||10,n<2||36<n)throw RangeError("radix");var i;if((i=t.indexOf("-"))>0)throw Error("interior hyphen");if(i===0)return e.fromString(t.substring(1),r,n).neg();for(var s=e.fromNumber(Math.pow(n,8)),o=e.ZERO,c=0;c<t.length;c+=8){var u=Math.min(8,t.length-c),d=parseInt(t.substring(c,c+u),n);if(u<8){var m=e.fromNumber(Math.pow(n,u));o=o.mul(m).add(e.fromNumber(d))}else o=o.mul(s),o=o.add(e.fromNumber(d))}return o.unsigned=r,o},e.fromBytes=function(t,r,n){return n?e.fromBytesLE(t,r):e.fromBytesBE(t,r)},e.fromBytesLE=function(t,r){return new e(t[0]|t[1]<<8|t[2]<<16|t[3]<<24,t[4]|t[5]<<8|t[6]<<16|t[7]<<24,r)},e.fromBytesBE=function(t,r){return new e(t[4]<<24|t[5]<<16|t[6]<<8|t[7],t[0]<<24|t[1]<<16|t[2]<<8|t[3],r)},e.isLong=function(t){return Io(t)&&t.__isLong__===!0},e.fromValue=function(t,r){return typeof t=="number"?e.fromNumber(t,r):typeof t=="string"?e.fromString(t,r):e.fromBits(t.low,t.high,typeof r=="boolean"?r:t.unsigned)},e.prototype.add=function(t){e.isLong(t)||(t=e.fromValue(t));var r=this.high>>>16,n=this.high&65535,i=this.low>>>16,s=this.low&65535,o=t.high>>>16,c=t.high&65535,u=t.low>>>16,d=t.low&65535,m=0,h=0,y=0,E=0;return E+=s+d,y+=E>>>16,E&=65535,y+=i+u,h+=y>>>16,y&=65535,h+=n+c,m+=h>>>16,h&=65535,m+=r+o,m&=65535,e.fromBits(y<<16|E,m<<16|h,this.unsigned)},e.prototype.and=function(t){return e.isLong(t)||(t=e.fromValue(t)),e.fromBits(this.low&t.low,this.high&t.high,this.unsigned)},e.prototype.compare=function(t){if(e.isLong(t)||(t=e.fromValue(t)),this.eq(t))return 0;var r=this.isNegative(),n=t.isNegative();return r&&!n?-1:!r&&n?1:this.unsigned?t.high>>>0>this.high>>>0||t.high===this.high&&t.low>>>0>this.low>>>0?-1:1:this.sub(t).isNegative()?-1:1},e.prototype.comp=function(t){return this.compare(t)},e.prototype.divide=function(t){if(e.isLong(t)||(t=e.fromValue(t)),t.isZero())throw Error("division by zero");if(zt){if(!this.unsigned&&this.high===-2147483648&&t.low===-1&&t.high===-1)return this;var r=(this.unsigned?zt.div_u:zt.div_s)(this.low,this.high,t.low,t.high);return e.fromBits(r,zt.get_high(),this.unsigned)}if(this.isZero())return this.unsigned?e.UZERO:e.ZERO;var n,i,s;if(this.unsigned){if(t.unsigned||(t=t.toUnsigned()),t.gt(this))return e.UZERO;if(t.gt(this.shru(1)))return e.UONE;s=e.UZERO}else{if(this.eq(e.MIN_VALUE)){if(t.eq(e.ONE)||t.eq(e.NEG_ONE))return e.MIN_VALUE;if(t.eq(e.MIN_VALUE))return e.ONE;var o=this.shr(1);return n=o.div(t).shl(1),n.eq(e.ZERO)?t.isNegative()?e.ONE:e.NEG_ONE:(i=this.sub(t.mul(n)),s=n.add(i.div(t)),s)}else if(t.eq(e.MIN_VALUE))return this.unsigned?e.UZERO:e.ZERO;if(this.isNegative())return t.isNegative()?this.neg().div(t.neg()):this.neg().div(t).neg();if(t.isNegative())return this.div(t.neg()).neg();s=e.ZERO}for(i=this;i.gte(t);){n=Math.max(1,Math.floor(i.toNumber()/t.toNumber()));for(var c=Math.ceil(Math.log(n)/Math.LN2),u=c<=48?1:Math.pow(2,c-48),d=e.fromNumber(n),m=d.mul(t);m.isNegative()||m.gt(i);)n-=u,d=e.fromNumber(n,this.unsigned),m=d.mul(t);d.isZero()&&(d=e.ONE),s=s.add(d),i=i.sub(m)}return s},e.prototype.div=function(t){return this.divide(t)},e.prototype.equals=function(t){return e.isLong(t)||(t=e.fromValue(t)),this.unsigned!==t.unsigned&&this.high>>>31===1&&t.high>>>31===1?!1:this.high===t.high&&this.low===t.low},e.prototype.eq=function(t){return this.equals(t)},e.prototype.getHighBits=function(){return this.high},e.prototype.getHighBitsUnsigned=function(){return this.high>>>0},e.prototype.getLowBits=function(){return this.low},e.prototype.getLowBitsUnsigned=function(){return this.low>>>0},e.prototype.getNumBitsAbs=function(){if(this.isNegative())return this.eq(e.MIN_VALUE)?64:this.neg().getNumBitsAbs();var t=this.high!==0?this.high:this.low,r;for(r=31;r>0&&(t&1<<r)===0;r--);return this.high!==0?r+33:r+1},e.prototype.greaterThan=function(t){return this.comp(t)>0},e.prototype.gt=function(t){return this.greaterThan(t)},e.prototype.greaterThanOrEqual=function(t){return this.comp(t)>=0},e.prototype.gte=function(t){return this.greaterThanOrEqual(t)},e.prototype.ge=function(t){return this.greaterThanOrEqual(t)},e.prototype.isEven=function(){return(this.low&1)===0},e.prototype.isNegative=function(){return!this.unsigned&&this.high<0},e.prototype.isOdd=function(){return(this.low&1)===1},e.prototype.isPositive=function(){return this.unsigned||this.high>=0},e.prototype.isZero=function(){return this.high===0&&this.low===0},e.prototype.lessThan=function(t){return this.comp(t)<0},e.prototype.lt=function(t){return this.lessThan(t)},e.prototype.lessThanOrEqual=function(t){return this.comp(t)<=0},e.prototype.lte=function(t){return this.lessThanOrEqual(t)},e.prototype.modulo=function(t){if(e.isLong(t)||(t=e.fromValue(t)),zt){var r=(this.unsigned?zt.rem_u:zt.rem_s)(this.low,this.high,t.low,t.high);return e.fromBits(r,zt.get_high(),this.unsigned)}return this.sub(this.div(t).mul(t))},e.prototype.mod=function(t){return this.modulo(t)},e.prototype.rem=function(t){return this.modulo(t)},e.prototype.multiply=function(t){if(this.isZero())return e.ZERO;if(e.isLong(t)||(t=e.fromValue(t)),zt){var r=zt.mul(this.low,this.high,t.low,t.high);return e.fromBits(r,zt.get_high(),this.unsigned)}if(t.isZero())return e.ZERO;if(this.eq(e.MIN_VALUE))return t.isOdd()?e.MIN_VALUE:e.ZERO;if(t.eq(e.MIN_VALUE))return this.isOdd()?e.MIN_VALUE:e.ZERO;if(this.isNegative())return t.isNegative()?this.neg().mul(t.neg()):this.neg().mul(t).neg();if(t.isNegative())return this.mul(t.neg()).neg();if(this.lt(e.TWO_PWR_24)&&t.lt(e.TWO_PWR_24))return e.fromNumber(this.toNumber()*t.toNumber(),this.unsigned);var n=this.high>>>16,i=this.high&65535,s=this.low>>>16,o=this.low&65535,c=t.high>>>16,u=t.high&65535,d=t.low>>>16,m=t.low&65535,h=0,y=0,E=0,v=0;return v+=o*m,E+=v>>>16,v&=65535,E+=s*m,y+=E>>>16,E&=65535,E+=o*d,y+=E>>>16,E&=65535,y+=i*m,h+=y>>>16,y&=65535,y+=s*d,h+=y>>>16,y&=65535,y+=o*u,h+=y>>>16,y&=65535,h+=n*m+i*d+s*u+o*c,h&=65535,e.fromBits(E<<16|v,h<<16|y,this.unsigned)},e.prototype.mul=function(t){return this.multiply(t)},e.prototype.negate=function(){return!this.unsigned&&this.eq(e.MIN_VALUE)?e.MIN_VALUE:this.not().add(e.ONE)},e.prototype.neg=function(){return this.negate()},e.prototype.not=function(){return e.fromBits(~this.low,~this.high,this.unsigned)},e.prototype.notEquals=function(t){return!this.equals(t)},e.prototype.neq=function(t){return this.notEquals(t)},e.prototype.ne=function(t){return this.notEquals(t)},e.prototype.or=function(t){return e.isLong(t)||(t=e.fromValue(t)),e.fromBits(this.low|t.low,this.high|t.high,this.unsigned)},e.prototype.shiftLeft=function(t){return e.isLong(t)&&(t=t.toInt()),(t&=63)===0?this:t<32?e.fromBits(this.low<<t,this.high<<t|this.low>>>32-t,this.unsigned):e.fromBits(0,this.low<<t-32,this.unsigned)},e.prototype.shl=function(t){return this.shiftLeft(t)},e.prototype.shiftRight=function(t){return e.isLong(t)&&(t=t.toInt()),(t&=63)===0?this:t<32?e.fromBits(this.low>>>t|this.high<<32-t,this.high>>t,this.unsigned):e.fromBits(this.high>>t-32,this.high>=0?0:-1,this.unsigned)},e.prototype.shr=function(t){return this.shiftRight(t)},e.prototype.shiftRightUnsigned=function(t){if(e.isLong(t)&&(t=t.toInt()),t&=63,t===0)return this;var r=this.high;if(t<32){var n=this.low;return e.fromBits(n>>>t|r<<32-t,r>>>t,this.unsigned)}else return t===32?e.fromBits(r,0,this.unsigned):e.fromBits(r>>>t-32,0,this.unsigned)},e.prototype.shr_u=function(t){return this.shiftRightUnsigned(t)},e.prototype.shru=function(t){return this.shiftRightUnsigned(t)},e.prototype.subtract=function(t){return e.isLong(t)||(t=e.fromValue(t)),this.add(t.neg())},e.prototype.sub=function(t){return this.subtract(t)},e.prototype.toInt=function(){return this.unsigned?this.low>>>0:this.low},e.prototype.toNumber=function(){return this.unsigned?(this.high>>>0)*Ti+(this.low>>>0):this.high*Ti+(this.low>>>0)},e.prototype.toBigInt=function(){return BigInt(this.toString())},e.prototype.toBytes=function(t){return t?this.toBytesLE():this.toBytesBE()},e.prototype.toBytesLE=function(){var t=this.high,r=this.low;return[r&255,r>>>8&255,r>>>16&255,r>>>24,t&255,t>>>8&255,t>>>16&255,t>>>24]},e.prototype.toBytesBE=function(){var t=this.high,r=this.low;return[t>>>24,t>>>16&255,t>>>8&255,t&255,r>>>24,r>>>16&255,r>>>8&255,r&255]},e.prototype.toSigned=function(){return this.unsigned?e.fromBits(this.low,this.high,!1):this},e.prototype.toString=function(t){if(t=t||10,t<2||36<t)throw RangeError("radix");if(this.isZero())return"0";if(this.isNegative())if(this.eq(e.MIN_VALUE)){var r=e.fromNumber(t),n=this.div(r),i=n.mul(r).sub(this);return n.toString(t)+i.toInt().toString(t)}else return"-"+this.neg().toString(t);for(var s=e.fromNumber(Math.pow(t,6),this.unsigned),o=this,c="";;){var u=o.div(s),d=o.sub(u.mul(s)).toInt()>>>0,m=d.toString(t);if(o=u,o.isZero())return m+c;for(;m.length<6;)m="0"+m;c=""+m+c}},e.prototype.toUnsigned=function(){return this.unsigned?this:e.fromBits(this.low,this.high,!0)},e.prototype.xor=function(t){return e.isLong(t)||(t=e.fromValue(t)),e.fromBits(this.low^t.low,this.high^t.high,this.unsigned)},e.prototype.eqz=function(){return this.isZero()},e.prototype.le=function(t){return this.lessThanOrEqual(t)},e.prototype.toExtendedJSON=function(t){return t&&t.relaxed?this.toNumber():{$numberLong:this.toString()}},e.fromExtendedJSON=function(t,r){var n=e.fromString(t.$numberLong);return r&&r.relaxed?n.toNumber():n},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return'new Long("'.concat(this.toString(),'"').concat(this.unsigned?", true":"",")")},e.TWO_PWR_24=e.fromInt(t_),e.MAX_UNSIGNED_VALUE=e.fromBits(-1,-1,!0),e.ZERO=e.fromInt(0),e.UZERO=e.fromInt(0,!0),e.ONE=e.fromInt(1),e.UONE=e.fromInt(1,!0),e.NEG_ONE=e.fromInt(-1),e.MAX_VALUE=e.fromBits(-1,2147483647,!1),e.MIN_VALUE=e.fromBits(0,-2147483648,!1),e}();Object.defineProperty(X.prototype,"__isLong__",{value:!0});Object.defineProperty(X.prototype,"_bsontype",{value:"Long"});var r_=/^(\+|-)?(\d+|(\d*\.\d*))?(E|e)?([-+])?(\d+)?$/,n_=/^(\+|-)?(Infinity|inf)$/i,i_=/^(\+|-)?NaN$/i,So=6111,Nu=-6176,sd=6176,o_=34,Ou=[124,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),ad=[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),cd=[120,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),s_=/^([-+])?(\d+)?$/,a_=31,ld=16383,c_=30,l_=31;function ud(e){return!isNaN(parseInt(e,10))}function u_(e){var t=X.fromNumber(1e9),r=X.fromNumber(0);if(!e.parts[0]&&!e.parts[1]&&!e.parts[2]&&!e.parts[3])return{quotient:e,rem:r};for(var n=0;n<=3;n++)r=r.shiftLeft(32),r=r.add(new X(e.parts[n],0)),e.parts[n]=r.div(t).low,r=r.modulo(t);return{quotient:e,rem:r}}function p_(e,t){if(!e&&!t)return{high:X.fromNumber(0),low:X.fromNumber(0)};var r=e.shiftRightUnsigned(32),n=new X(e.getLowBits(),0),i=t.shiftRightUnsigned(32),s=new X(t.getLowBits(),0),o=r.multiply(i),c=r.multiply(s),u=n.multiply(i),d=n.multiply(s);return o=o.add(c.shiftRightUnsigned(32)),c=new X(c.getLowBits(),0).add(u).add(d.shiftRightUnsigned(32)),o=o.add(c.shiftRightUnsigned(32)),d=c.shiftLeft(32).add(new X(d.getLowBits(),0)),{high:o,low:d}}function f_(e,t){var r=e.high>>>0,n=t.high>>>0;if(r<n)return!0;if(r===n){var i=e.low>>>0,s=t.low>>>0;if(i<s)return!0}return!1}function Ii(e,t){throw new Ve('"'.concat(e,'" is not a valid Decimal128 string - ').concat(t))}var Uu=function(){function e(t){if(!(this instanceof e))return new e(t);if(typeof t=="string")this.bytes=e.fromString(t).bytes;else if(Bu(t)){if(t.byteLength!==16)throw new Ve("Decimal128 must take a Buffer of 16 bytes");this.bytes=t}else throw new Ve("Decimal128 must take a Buffer or string")}return e.fromString=function(t){var r=!1,n=!1,i=!1,s=0,o=0,c=0,u=0,d=0,m=[0],h=0,y=0,E=0,v=0,_=0,D=0,P=new X(0,0),M=new X(0,0),L=0,R=0;if(t.length>=7e3)throw new Ve(""+t+" not a valid Decimal128 string");var q=t.match(r_),he=t.match(n_),ke=t.match(i_);if(!q&&!he&&!ke||t.length===0)throw new Ve(""+t+" not a valid Decimal128 string");if(q){var B=q[2],Z=q[4],z=q[5],J=q[6];Z&&J===void 0&&Ii(t,"missing exponent power"),Z&&B===void 0&&Ii(t,"missing exponent base"),Z===void 0&&(z||J)&&Ii(t,"missing e before exponent")}if((t[R]==="+"||t[R]==="-")&&(r=t[R++]==="-"),!ud(t[R])&&t[R]!=="."){if(t[R]==="i"||t[R]==="I")return new e(be.from(r?ad:cd));if(t[R]==="N")return new e(be.from(Ou))}for(;ud(t[R])||t[R]===".";){if(t[R]==="."){n&&Ii(t,"contains multiple periods"),n=!0,R=R+1;continue}h<34&&(t[R]!=="0"||i)&&(i||(d=o),i=!0,m[y++]=parseInt(t[R],10),h=h+1),i&&(c=c+1),n&&(u=u+1),o=o+1,R=R+1}if(n&&!o)throw new Ve(""+t+" not a valid Decimal128 string");if(t[R]==="e"||t[R]==="E"){var ge=t.substr(++R).match(s_);if(!ge||!ge[2])return new e(be.from(Ou));_=parseInt(ge[0],10),R=R+ge[0].length}if(t[R])return new e(be.from(Ou));if(E=0,!h)E=0,v=0,m[0]=0,c=1,h=1,s=0;else if(v=h-1,s=c,s!==1)for(;m[d+s-1]===0;)s=s-1;for(_<=u&&u-_>16384?_=Nu:_=_-u;_>So;){if(v=v+1,v-E>o_){var $e=m.join("");if($e.match(/^0+$/)){_=So;break}Ii(t,"overflow")}_=_-1}for(;_<Nu||h<c;){if(v===0&&s<h){_=Nu,s=0;break}if(h<c?c=c-1:v=v-1,_<So)_=_+1;else{var $e=m.join("");if($e.match(/^0+$/)){_=So;break}Ii(t,"overflow")}}if(v-E+1<s){var xe=o;n&&(d=d+1,xe=xe+1),r&&(d=d+1,xe=xe+1);var g=parseInt(t[d+v+1],10),Ke=0;if(g>=5&&(Ke=1,g===5)){for(Ke=m[v]%2===1?1:0,D=d+v+2;D<xe;D++)if(parseInt(t[D],10)){Ke=1;break}}if(Ke){for(var ve=v;ve>=0;ve--)if(++m[ve]>9&&(m[ve]=0,ve===0))if(_<So)_=_+1,m[ve]=1;else return new e(be.from(r?ad:cd))}}if(P=X.fromNumber(0),M=X.fromNumber(0),s===0)P=X.fromNumber(0),M=X.fromNumber(0);else if(v-E<17){var ve=E;for(M=X.fromNumber(m[ve++]),P=new X(0,0);ve<=v;ve++)M=M.multiply(X.fromNumber(10)),M=M.add(X.fromNumber(m[ve]))}else{var ve=E;for(P=X.fromNumber(m[ve++]);ve<=v-17;ve++)P=P.multiply(X.fromNumber(10)),P=P.add(X.fromNumber(m[ve]));for(M=X.fromNumber(m[ve++]);ve<=v;ve++)M=M.multiply(X.fromNumber(10)),M=M.add(X.fromNumber(m[ve]))}var gt=p_(P,X.fromString("100000000000000000"));gt.low=gt.low.add(M),f_(gt.low,M)&&(gt.high=gt.high.add(X.fromNumber(1))),L=_+sd;var ae={low:X.fromNumber(0),high:X.fromNumber(0)};gt.high.shiftRightUnsigned(49).and(X.fromNumber(1)).equals(X.fromNumber(1))?(ae.high=ae.high.or(X.fromNumber(3).shiftLeft(61)),ae.high=ae.high.or(X.fromNumber(L).and(X.fromNumber(16383).shiftLeft(47))),ae.high=ae.high.or(gt.high.and(X.fromNumber(0x7fffffffffff)))):(ae.high=ae.high.or(X.fromNumber(L&16383).shiftLeft(49)),ae.high=ae.high.or(gt.high.and(X.fromNumber(562949953421311)))),ae.low=gt.low,r&&(ae.high=ae.high.or(X.fromString("9223372036854775808")));var ie=be.alloc(16);return R=0,ie[R++]=ae.low.low&255,ie[R++]=ae.low.low>>8&255,ie[R++]=ae.low.low>>16&255,ie[R++]=ae.low.low>>24&255,ie[R++]=ae.low.high&255,ie[R++]=ae.low.high>>8&255,ie[R++]=ae.low.high>>16&255,ie[R++]=ae.low.high>>24&255,ie[R++]=ae.high.low&255,ie[R++]=ae.high.low>>8&255,ie[R++]=ae.high.low>>16&255,ie[R++]=ae.high.low>>24&255,ie[R++]=ae.high.high&255,ie[R++]=ae.high.high>>8&255,ie[R++]=ae.high.high>>16&255,ie[R++]=ae.high.high>>24&255,new e(ie)},e.prototype.toString=function(){for(var t,r=0,n=new Array(36),i=0;i<n.length;i++)n[i]=0;var s=0,o=!1,c,u={parts:[0,0,0,0]},d,m,h=[];s=0;var y=this.bytes,E=y[s++]|y[s++]<<8|y[s++]<<16|y[s++]<<24,v=y[s++]|y[s++]<<8|y[s++]<<16|y[s++]<<24,_=y[s++]|y[s++]<<8|y[s++]<<16|y[s++]<<24,D=y[s++]|y[s++]<<8|y[s++]<<16|y[s++]<<24;s=0;var P={low:new X(E,v),high:new X(_,D)};P.high.lessThan(X.ZERO)&&h.push("-");var M=D>>26&a_;if(M>>3===3){if(M===c_)return h.join("")+"Infinity";if(M===l_)return"NaN";t=D>>15&ld,c=8+(D>>14&1)}else c=D>>14&7,t=D>>17&ld;var L=t-sd;if(u.parts[0]=(D&16383)+((c&15)<<14),u.parts[1]=_,u.parts[2]=v,u.parts[3]=E,u.parts[0]===0&&u.parts[1]===0&&u.parts[2]===0&&u.parts[3]===0)o=!0;else for(m=3;m>=0;m--){var R=0,q=u_(u);if(u=q.quotient,R=q.rem.low,!!R)for(d=8;d>=0;d--)n[m*9+d]=R%10,R=Math.floor(R/10)}if(o)r=1,n[s]=0;else for(r=36;!n[s];)r=r-1,s=s+1;var he=r-1+L;if(he>=34||he<=-7||L>0){if(r>34)return h.push("".concat(0)),L>0?h.push("E+".concat(L)):L<0&&h.push("E".concat(L)),h.join("");h.push("".concat(n[s++])),r=r-1,r&&h.push(".");for(var i=0;i<r;i++)h.push("".concat(n[s++]));h.push("E"),he>0?h.push("+".concat(he)):h.push("".concat(he))}else if(L>=0)for(var i=0;i<r;i++)h.push("".concat(n[s++]));else{var ke=r+L;if(ke>0)for(var i=0;i<ke;i++)h.push("".concat(n[s++]));else h.push("0");for(h.push(".");ke++<0;)h.push("0");for(var i=0;i<r-Math.max(ke-1,0);i++)h.push("".concat(n[s++]))}return h.join("")},e.prototype.toJSON=function(){return{$numberDecimal:this.toString()}},e.prototype.toExtendedJSON=function(){return{$numberDecimal:this.toString()}},e.fromExtendedJSON=function(t){return e.fromString(t.$numberDecimal)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return'new Decimal128("'.concat(this.toString(),'")')},e}();Object.defineProperty(Uu.prototype,"_bsontype",{value:"Decimal128"});var Ea=function(){function e(t){if(!(this instanceof e))return new e(t);t instanceof Number&&(t=t.valueOf()),this.value=+t}return e.prototype.valueOf=function(){return this.value},e.prototype.toJSON=function(){return this.value},e.prototype.toString=function(t){return this.value.toString(t)},e.prototype.toExtendedJSON=function(t){return t&&(t.legacy||t.relaxed&&isFinite(this.value))?this.value:Object.is(Math.sign(this.value),-0)?{$numberDouble:"-".concat(this.value.toFixed(1))}:{$numberDouble:Number.isInteger(this.value)?this.value.toFixed(1):this.value.toString()}},e.fromExtendedJSON=function(t,r){var n=parseFloat(t.$numberDouble);return r&&r.relaxed?n:new e(n)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){var t=this.toExtendedJSON();return"new Double(".concat(t.$numberDouble,")")},e}();Object.defineProperty(Ea.prototype,"_bsontype",{value:"Double"});var Sa=function(){function e(t){if(!(this instanceof e))return new e(t);t instanceof Number&&(t=t.valueOf()),this.value=+t|0}return e.prototype.valueOf=function(){return this.value},e.prototype.toString=function(t){return this.value.toString(t)},e.prototype.toJSON=function(){return this.value},e.prototype.toExtendedJSON=function(t){return t&&(t.relaxed||t.legacy)?this.value:{$numberInt:this.value.toString()}},e.fromExtendedJSON=function(t,r){return r&&r.relaxed?parseInt(t.$numberInt,10):new e(t.$numberInt)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return"new Int32(".concat(this.valueOf(),")")},e}();Object.defineProperty(Sa.prototype,"_bsontype",{value:"Int32"});var ku=function(){function e(){if(!(this instanceof e))return new e}return e.prototype.toExtendedJSON=function(){return{$maxKey:1}},e.fromExtendedJSON=function(){return new e},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return"new MaxKey()"},e}();Object.defineProperty(ku.prototype,"_bsontype",{value:"MaxKey"});var Fu=function(){function e(){if(!(this instanceof e))return new e}return e.prototype.toExtendedJSON=function(){return{$minKey:1}},e.fromExtendedJSON=function(){return new e},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return"new MinKey()"},e}();Object.defineProperty(Fu.prototype,"_bsontype",{value:"MinKey"});var m_=new RegExp("^[0-9a-fA-F]{24}$"),Tn=null,wr=Symbol("id"),tt=function(){function e(t){if(!(this instanceof e))return new e(t);var r;if(typeof t=="object"&&t&&"id"in t){if(typeof t.id!="string"&&!ArrayBuffer.isView(t.id))throw new Ve("Argument passed in must have an id that is of type string or Buffer");"toHexString"in t&&typeof t.toHexString=="function"?r=be.from(t.toHexString(),"hex"):r=t.id}else r=t;if(r==null||typeof r=="number")this[wr]=e.generate(typeof r=="number"?r:void 0);else if(ArrayBuffer.isView(r)&&r.byteLength===12)this[wr]=r instanceof be?r:da(r);else if(typeof r=="string")if(r.length===12){var n=be.from(r);if(n.byteLength===12)this[wr]=n;else throw new Ve("Argument passed in must be a string of 12 bytes")}else if(r.length===24&&m_.test(r))this[wr]=be.from(r,"hex");else throw new Ve("Argument passed in must be a string of 12 bytes or a string of 24 hex characters or an integer");else throw new Ve("Argument passed in does not match the accepted types");e.cacheHexString&&(this.__id=this.id.toString("hex"))}return Object.defineProperty(e.prototype,"id",{get:function(){return this[wr]},set:function(t){this[wr]=t,e.cacheHexString&&(this.__id=t.toString("hex"))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"generationTime",{get:function(){return this.id.readInt32BE(0)},set:function(t){this.id.writeUInt32BE(t,0)},enumerable:!1,configurable:!0}),e.prototype.toHexString=function(){if(e.cacheHexString&&this.__id)return this.__id;var t=this.id.toString("hex");return e.cacheHexString&&!this.__id&&(this.__id=t),t},e.getInc=function(){return e.index=(e.index+1)%16777215},e.generate=function(t){typeof t!="number"&&(t=Math.floor(Date.now()/1e3));var r=e.getInc(),n=be.alloc(12);return n.writeUInt32BE(t,0),Tn===null&&(Tn=yd(5)),n[4]=Tn[0],n[5]=Tn[1],n[6]=Tn[2],n[7]=Tn[3],n[8]=Tn[4],n[11]=r&255,n[10]=r>>8&255,n[9]=r>>16&255,n},e.prototype.toString=function(t){return t?this.id.toString(t):this.toHexString()},e.prototype.toJSON=function(){return this.toHexString()},e.prototype.equals=function(t){if(t==null)return!1;if(t instanceof e)return this[wr][11]===t[wr][11]&&this[wr].equals(t[wr]);if(typeof t=="string"&&e.isValid(t)&&t.length===12&&Bu(this.id))return t===be.prototype.toString.call(this.id,"latin1");if(typeof t=="string"&&e.isValid(t)&&t.length===24)return t.toLowerCase()===this.toHexString();if(typeof t=="string"&&e.isValid(t)&&t.length===12)return be.from(t).equals(this.id);if(typeof t=="object"&&"toHexString"in t&&typeof t.toHexString=="function"){var r=t.toHexString(),n=this.toHexString().toLowerCase();return typeof r=="string"&&r.toLowerCase()===n}return!1},e.prototype.getTimestamp=function(){var t=new Date,r=this.id.readUInt32BE(0);return t.setTime(Math.floor(r)*1e3),t},e.createPk=function(){return new e},e.createFromTime=function(t){var r=be.from([0,0,0,0,0,0,0,0,0,0,0,0]);return r.writeUInt32BE(t,0),new e(r)},e.createFromHexString=function(t){if(typeof t>"u"||t!=null&&t.length!==24)throw new Ve("Argument passed in must be a single String of 12 bytes or a string of 24 hex characters");return new e(be.from(t,"hex"))},e.isValid=function(t){if(t==null)return!1;try{return new e(t),!0}catch{return!1}},e.prototype.toExtendedJSON=function(){return this.toHexString?{$oid:this.toHexString()}:{$oid:this.toString("hex")}},e.fromExtendedJSON=function(t){return new e(t.$oid)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e.prototype.inspect=function(){return'new ObjectId("'.concat(this.toHexString(),'")')},e.index=Math.floor(Math.random()*16777215),e}();Object.defineProperty(tt.prototype,"generate",{value:ya(function(e){return tt.generate(e)},"Please use the static `ObjectId.generate(time)` instead")});Object.defineProperty(tt.prototype,"getInc",{value:ya(function(){return tt.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(tt.prototype,"get_inc",{value:ya(function(){return tt.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(tt,"get_inc",{value:ya(function(){return tt.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(tt.prototype,"_bsontype",{value:"ObjectID"});function d_(e){return e.split("").sort().join("")}var wo=function(){function e(t,r){if(!(this instanceof e))return new e(t,r);if(this.pattern=t,this.options=d_(r??""),this.pattern.indexOf("\0")!==-1)throw new Cn("BSON Regex patterns cannot contain null bytes, found: ".concat(JSON.stringify(this.pattern)));if(this.options.indexOf("\0")!==-1)throw new Cn("BSON Regex options cannot contain null bytes, found: ".concat(JSON.stringify(this.options)));for(var n=0;n<this.options.length;n++)if(!(this.options[n]==="i"||this.options[n]==="m"||this.options[n]==="x"||this.options[n]==="l"||this.options[n]==="s"||this.options[n]==="u"))throw new Cn("The regular expression option [".concat(this.options[n],"] is not supported"))}return e.parseOptions=function(t){return t?t.split("").sort().join(""):""},e.prototype.toExtendedJSON=function(t){return t=t||{},t.legacy?{$regex:this.pattern,$options:this.options}:{$regularExpression:{pattern:this.pattern,options:this.options}}},e.fromExtendedJSON=function(t){if("$regex"in t)if(typeof t.$regex!="string"){if(t.$regex._bsontype==="BSONRegExp")return t}else return new e(t.$regex,e.parseOptions(t.$options));if("$regularExpression"in t)return new e(t.$regularExpression.pattern,e.parseOptions(t.$regularExpression.options));throw new Ve("Unexpected BSONRegExp EJSON object form: ".concat(JSON.stringify(t)))},e}();Object.defineProperty(wo.prototype,"_bsontype",{value:"BSONRegExp"});var Hu=function(){function e(t){if(!(this instanceof e))return new e(t);this.value=t}return e.prototype.valueOf=function(){return this.value},e.prototype.toString=function(){return this.value},e.prototype.inspect=function(){return'new BSONSymbol("'.concat(this.value,'")')},e.prototype.toJSON=function(){return this.value},e.prototype.toExtendedJSON=function(){return{$symbol:this.value}},e.fromExtendedJSON=function(t){return new e(t.$symbol)},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},e}();Object.defineProperty(Hu.prototype,"_bsontype",{value:"Symbol"});var h_=X,Sd=function(e){ga(t,e);function t(r,n){var i=this;return i instanceof t?(X.isLong(r)?i=e.call(this,r.low,r.high,!0)||this:Io(r)&&typeof r.t<"u"&&typeof r.i<"u"?i=e.call(this,r.i,r.t,!0)||this:i=e.call(this,r,n,!0)||this,Object.defineProperty(i,"_bsontype",{value:"Timestamp",writable:!1,configurable:!1,enumerable:!1}),i):new t(r,n)}return t.prototype.toJSON=function(){return{$timestamp:this.toString()}},t.fromInt=function(r){return new t(X.fromInt(r,!0))},t.fromNumber=function(r){return new t(X.fromNumber(r,!0))},t.fromBits=function(r,n){return new t(r,n)},t.fromString=function(r,n){return new t(X.fromString(r,!0,n))},t.prototype.toExtendedJSON=function(){return{$timestamp:{t:this.high>>>0,i:this.low>>>0}}},t.fromExtendedJSON=function(r){return new t(r.$timestamp)},t.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.inspect()},t.prototype.inspect=function(){return"new Timestamp({ t: ".concat(this.getHighBits(),", i: ").concat(this.getLowBits()," })")},t.MAX_VALUE=X.MAX_UNSIGNED_VALUE,t}(h_);function g_(e){return Io(e)&&Reflect.has(e,"_bsontype")&&typeof e._bsontype=="string"}var bd=2147483647,wd=-2147483648,Id=9223372036854776e3,Td=-9223372036854776e3,y_={$oid:tt,$binary:xn,$uuid:xn,$symbol:Hu,$numberInt:Sa,$numberDecimal:Uu,$numberDouble:Ea,$numberLong:X,$minKey:Fu,$maxKey:ku,$regex:wo,$regularExpression:wo,$timestamp:Sd};function Cd(e,t){if(t===void 0&&(t={}),typeof e=="number"){if(t.relaxed||t.legacy)return e;if(Math.floor(e)===e){if(e>=wd&&e<=bd)return new Sa(e);if(e>=Td&&e<=Id)return X.fromNumber(e)}return new Ea(e)}if(e==null||typeof e!="object")return e;if(e.$undefined)return null;for(var r=Object.keys(e).filter(function(h){return h.startsWith("$")&&e[h]!=null}),n=0;n<r.length;n++){var i=y_[r[n]];if(i)return i.fromExtendedJSON(e,t)}if(e.$date!=null){var s=e.$date,o=new Date;return t.legacy?typeof s=="number"?o.setTime(s):typeof s=="string"&&o.setTime(Date.parse(s)):typeof s=="string"?o.setTime(Date.parse(s)):X.isLong(s)?o.setTime(s.toNumber()):typeof s=="number"&&t.relaxed&&o.setTime(s),o}if(e.$code!=null){var c=Object.assign({},e);return e.$scope&&(c.$scope=Cd(e.$scope)),va.fromExtendedJSON(e)}if(e_(e)||e.$dbPointer){var u=e.$ref?e:e.$dbPointer;if(u instanceof bo)return u;var d=Object.keys(u).filter(function(h){return h.startsWith("$")}),m=!0;if(d.forEach(function(h){["$ref","$id","$db"].indexOf(h)===-1&&(m=!1)}),m)return bo.fromExtendedJSON(u)}return e}function v_(e,t){return e.map(function(r,n){t.seenObjects.push({propertyName:"index ".concat(n),obj:null});try{return Jr(r,t)}finally{t.seenObjects.pop()}})}function pd(e){var t=e.toISOString();return e.getUTCMilliseconds()!==0?t:t.slice(0,-5)+"Z"}function Jr(e,t){if((typeof e=="object"||typeof e=="function")&&e!==null){var r=t.seenObjects.findIndex(function(P){return P.obj===e});if(r!==-1){var n=t.seenObjects.map(function(P){return P.propertyName}),i=n.slice(0,r).map(function(P){return"".concat(P," -> ")}).join(""),s=n[r],o=" -> "+n.slice(r+1,n.length-1).map(function(P){return"".concat(P," -> ")}).join(""),c=n[n.length-1],u=" ".repeat(i.length+s.length/2),d="-".repeat(o.length+(s.length+c.length)/2-1);throw new Ve(`Converting circular structure to EJSON:
|
|
35
35
|
`+" ".concat(i).concat(s).concat(o).concat(c,`
|
|
36
|
-
`)+" ".concat(u,"\\").concat(d,"/"))}t.seenObjects[t.seenObjects.length-1].obj=e}if(Array.isArray(e))return v_(e,t);if(e===void 0)return null;if(e instanceof Date||XE(e)){var m=e.getTime(),h=m>-1&&m<2534023188e5;return t.legacy?t.relaxed&&h?{$date:e.getTime()}:{$date:pd(e)}:t.relaxed&&h?{$date:pd(e)}:{$date:{$numberLong:e.getTime().toString()}}}if(typeof e=="number"&&(!t.relaxed||!isFinite(e))){if(Math.floor(e)===e){var y=e>=
|
|
36
|
+
`)+" ".concat(u,"\\").concat(d,"/"))}t.seenObjects[t.seenObjects.length-1].obj=e}if(Array.isArray(e))return v_(e,t);if(e===void 0)return null;if(e instanceof Date||XE(e)){var m=e.getTime(),h=m>-1&&m<2534023188e5;return t.legacy?t.relaxed&&h?{$date:e.getTime()}:{$date:pd(e)}:t.relaxed&&h?{$date:pd(e)}:{$date:{$numberLong:e.getTime().toString()}}}if(typeof e=="number"&&(!t.relaxed||!isFinite(e))){if(Math.floor(e)===e){var y=e>=wd&&e<=bd,E=e>=Td&&e<=Id;if(y)return{$numberInt:e.toString()};if(E)return{$numberLong:e.toString()}}return{$numberDouble:e.toString()}}if(e instanceof RegExp||KE(e)){var v=e.flags;if(v===void 0){var _=e.toString().match(/[gimuy]*$/);_&&(v=_[0])}var D=new wo(e.source,v);return D.toExtendedJSON(t)}return e!=null&&typeof e=="object"?__(e,t):e}var E_={Binary:function(e){return new xn(e.value(),e.sub_type)},Code:function(e){return new va(e.code,e.scope)},DBRef:function(e){return new bo(e.collection||e.namespace,e.oid,e.db,e.fields)},Decimal128:function(e){return new Uu(e.bytes)},Double:function(e){return new Ea(e.value)},Int32:function(e){return new Sa(e.value)},Long:function(e){return X.fromBits(e.low!=null?e.low:e.low_,e.low!=null?e.high:e.high_,e.low!=null?e.unsigned:e.unsigned_)},MaxKey:function(){return new ku},MinKey:function(){return new Fu},ObjectID:function(e){return new tt(e)},ObjectId:function(e){return new tt(e)},BSONRegExp:function(e){return new wo(e.pattern,e.options)},Symbol:function(e){return new Hu(e.value)},Timestamp:function(e){return Sd.fromBits(e.low,e.high)}};function __(e,t){if(e==null||typeof e!="object")throw new Cn("not an object instance");var r=e._bsontype;if(typeof r>"u"){var n={};for(var i in e){t.seenObjects.push({propertyName:i,obj:null});try{var s=Jr(e[i],t);i==="__proto__"?Object.defineProperty(n,i,{value:s,writable:!0,enumerable:!0,configurable:!0}):n[i]=s}finally{t.seenObjects.pop()}}return n}else if(g_(e)){var o=e;if(typeof o.toExtendedJSON!="function"){var c=E_[e._bsontype];if(!c)throw new Ve("Unrecognized or invalid _bsontype: "+e._bsontype);o=c(o)}return r==="Code"&&o.scope?o=new va(o.code,Jr(o.scope,t)):r==="DBRef"&&o.oid&&(o=new bo(Jr(o.collection,t),Jr(o.oid,t),Jr(o.db,t),Jr(o.fields,t))),o.toExtendedJSON(t)}else throw new Cn("_bsontype must be a string, but was: "+typeof r)}var fd;(function(e){function t(s,o){var c=Object.assign({},{relaxed:!0,legacy:!1},o);return typeof c.relaxed=="boolean"&&(c.strict=!c.relaxed),typeof c.strict=="boolean"&&(c.relaxed=!c.strict),JSON.parse(s,function(u,d){if(u.indexOf("\0")!==-1)throw new Cn("BSON Document field names cannot contain null bytes, found: ".concat(JSON.stringify(u)));return Cd(d,c)})}e.parse=t;function r(s,o,c,u){c!=null&&typeof c=="object"&&(u=c,c=0),o!=null&&typeof o=="object"&&!Array.isArray(o)&&(u=o,o=void 0,c=0);var d=Object.assign({relaxed:!0,legacy:!1},u,{seenObjects:[{propertyName:"(root)",obj:null}]}),m=Jr(s,d);return JSON.stringify(m,o,c)}e.stringify=r;function n(s,o){return o=o||{},JSON.parse(r(s,o))}e.serialize=n;function i(s,o){return o=o||{},t(JSON.stringify(s),o)}e.deserialize=i})(fd||(fd={}));var md,dd=gd();dd.Map?md=dd.Map:md=function(){function e(t){t===void 0&&(t=[]),this._keys=[],this._values={};for(var r=0;r<t.length;r++)if(t[r]!=null){var n=t[r],i=n[0],s=n[1];this._keys.push(i),this._values[i]={v:s,i:this._keys.length-1}}}return e.prototype.clear=function(){this._keys=[],this._values={}},e.prototype.delete=function(t){var r=this._values[t];return r==null?!1:(delete this._values[t],this._keys.splice(r.i,1),!0)},e.prototype.entries=function(){var t=this,r=0;return{next:function(){var n=t._keys[r++];return{value:n!==void 0?[n,t._values[n].v]:void 0,done:n===void 0}}}},e.prototype.forEach=function(t,r){r=r||this;for(var n=0;n<this._keys.length;n++){var i=this._keys[n];t.call(r,this._values[i].v,i,r)}},e.prototype.get=function(t){return this._values[t]?this._values[t].v:void 0},e.prototype.has=function(t){return this._values[t]!=null},e.prototype.keys=function(){var t=this,r=0;return{next:function(){var n=t._keys[r++];return{value:n!==void 0?n:void 0,done:n===void 0}}}},e.prototype.set=function(t,r){return this._values[t]?(this._values[t].v=r,this):(this._keys.push(t),this._values[t]={v:r,i:this._keys.length-1},this)},e.prototype.values=function(){var t=this,r=0;return{next:function(){var n=t._keys[r++];return{value:n!==void 0?t._values[n].v:void 0,done:n===void 0}}}},Object.defineProperty(e.prototype,"size",{get:function(){return this._keys.length},enumerable:!1,configurable:!0}),e}();var YO=X.fromNumber(QE),zO=X.fromNumber(ZE),Pu=new Uint8Array(8),qO=new DataView(Pu.buffer,Pu.byteOffset,Pu.byteLength),S_=1024*1024*17,KO=be.alloc(S_),Qr=class{triggerID;nudgeID;engagementID;contentID;shortID;contentType;variation;props;objective;onsiteDeliveryType;holdout;constructor(e){e=e||{},this.triggerID=e.id||e.triggerID,this.nudgeID=e.nudgeID,this.shortID=e.shortID,this.contentType=e.contentType,this.engagementID=e.engagementID,this.contentID=e.contentID,this.variation=e.variation,this.props=e.props,this.objective=e.objective,this.onsiteDeliveryType=e.onsiteDeliveryType,this.holdout=e.holdout}},Ee=class{constructor(e,t={},r,n){this.name=e,this.properties=t,this.id=n?new tt(n):new tt,this.occurred=new Date,r&&(this.trigger=new Qr(r)),this.newEvent=!n}trigger;items;videos;id;newEvent;cart;currentItem;deviceProps;landingPage;occurred;page;sessionID;sessionNumber;locale},st=class{static SWIPER_CSS="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css";static injectScriptURL(e,t){if(!e)return;let r=document.createElement("script");r.id=t??"",r.src=e,e.includes("localhost")&&(r.type="module"),document.head.appendChild(r)}static injectRawScript(e){if(!e)return;let t=document.createElement("script");t.id="cooee-app-script",t.innerHTML=e,document.head.appendChild(t)}static injectRawCSS(e,t=document.head){if(!e)return;let r=document.createElement("style");r.textContent=e,t.appendChild(r)}static injectSwiperCSS(e=document.head){this.injectStylesheet(this.SWIPER_CSS,e)}static injectStylesheet(e,t=document.head){if(!e)return;let r=document.createElement("link");r.rel="stylesheet",r.href=e,e===this.SWIPER_CSS&&(r.crossOrigin="anonymous",r.onload=n=>{let i=n.currentTarget?.sheet?.cssRules;if(i){for(let s of i)if(s.type==CSSRule.FONT_FACE_RULE){let o=e.split("/"),c=o.slice(0,o.length-1).join("/"),u=s.cssText;u=u.replace(/url\s*\(\s*['"]?(?!((\/)|((?:https?:)?\/\/)|(?:data:?:)))([^'")]+)['"]?\s*\)/g,`url("${c}/$4")`);let d=document.createElement("style");d.appendChild(document.createTextNode(u)),document.head.appendChild(d)}}}),t.appendChild(r)}static loadSwiperScript(){let e="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.js";return new Promise(t=>{if(window.Swiper){t();return}if(Array.from(document.scripts).some(n=>n.src.includes(e))){let n=setInterval(()=>{window.Swiper&&(clearInterval(n),t())},50)}let r=document.createElement("script");r.src=e,r.onload=()=>{t()},r.onerror=()=>{r.remove()},document.body.appendChild(r)})}},se=class{static storage=new Map;static get(e){return this.storage.has(e)||this.storage.set(e,e.getInstance()),this.storage.get(e)}};function le(e){return typeof e=="function"}function ba(e){let t=e(r=>{Error.call(r),r.stack=new Error().stack});return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}var wa=ba(e=>function(t){e(this),this.message=t?`${t.length} errors occurred during unsubscription:
|
|
37
37
|
${t.map((r,n)=>`${n+1}) ${r.toString()}`).join(`
|
|
38
|
-
`)}`:"",this.name="UnsubscriptionError",this.errors=t});function Dn(e,t){if(e){let r=e.indexOf(t);0<=r&&e.splice(r,1)}}var Kt=class Ac{constructor(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let t;if(!this.closed){this.closed=!0;let{_parentage:r}=this;if(r)if(this._parentage=null,Array.isArray(r))for(let s of r)s.remove(this);else r.remove(this);let{initialTeardown:n}=this;if(le(n))try{n()}catch(s){t=s instanceof ba?s.errors:[s]}let{_finalizers:i}=this;if(i){this._finalizers=null;for(let s of i)try{xd(s)}catch(o){t=t??[],o instanceof ba?t=[...t,...o.errors]:t.push(o)}}if(t)throw new ba(t)}}add(t){var r;if(t&&t!==this)if(this.closed)xd(t);else{if(t instanceof Ac){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}}_hasParent(t){let{_parentage:r}=this;return r===t||Array.isArray(r)&&r.includes(t)}_addParent(t){let{_parentage:r}=this;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t}_removeParent(t){let{_parentage:r}=this;r===t?this._parentage=null:Array.isArray(r)&&Dn(r,t)}remove(t){let{_finalizers:r}=this;r&&Dn(r,t),t instanceof Ac&&t._removeParent(this)}};Kt.EMPTY=(()=>{let e=new Kt;return e.closed=!0,e})();var $u=Kt.EMPTY;function Ia(e){return e instanceof Kt||e&&"closed"in e&&le(e.remove)&&le(e.add)&&le(e.unsubscribe)}function xd(e){le(e)?e():e.unsubscribe()}var sr={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},Ci={setTimeout(e,t,...r){let{delegate:n}=Ci;return n?.setTimeout?n.setTimeout(e,t,...r):setTimeout(e,t,...r)},clearTimeout(e){let{delegate:t}=Ci;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0};function Ta(e){Ci.setTimeout(()=>{let{onUnhandledError:t}=sr;if(t)t(e);else throw e})}function ju(){}var Dd=Vu("C",void 0,void 0);function Rd(e){return Vu("E",void 0,e)}function Ad(e){return Vu("N",e,void 0)}function Vu(e,t,r){return{kind:e,value:t,error:r}}var Rn=null;function xi(e){if(sr.useDeprecatedSynchronousErrorHandling){let t=!Rn;if(t&&(Rn={errorThrown:!1,error:null}),e(),t){let{errorThrown:r,error:n}=Rn;if(Rn=null,r)throw n}}else e()}function Nd(e){sr.useDeprecatedSynchronousErrorHandling&&Rn&&(Rn.errorThrown=!0,Rn.error=e)}var An=class extends Kt{constructor(e){super(),this.isStopped=!1,e?(this.destination=e,Ia(e)&&e.add(this)):this.destination=I_}static create(e,t,r){return new Di(e,t,r)}next(e){this.isStopped?Gu(Ad(e),this):this._next(e)}error(e){this.isStopped?Gu(Rd(e),this):(this.isStopped=!0,this._error(e))}complete(){this.isStopped?Gu(Dd,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(e){this.destination.next(e)}_error(e){try{this.destination.error(e)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}},w_=Function.prototype.bind;function Wu(e,t){return w_.call(e,t)}var Yu=class{constructor(e){this.partialObserver=e}next(e){let{partialObserver:t}=this;if(t.next)try{t.next(e)}catch(r){Ca(r)}}error(e){let{partialObserver:t}=this;if(t.error)try{t.error(e)}catch(r){Ca(r)}else Ca(e)}complete(){let{partialObserver:e}=this;if(e.complete)try{e.complete()}catch(t){Ca(t)}}},Di=class extends An{constructor(e,t,r){super();let n;if(le(e)||!e)n={next:e??void 0,error:t??void 0,complete:r??void 0};else{let i;this&&sr.useDeprecatedNextContext?(i=Object.create(e),i.unsubscribe=()=>this.unsubscribe(),n={next:e.next&&Wu(e.next,i),error:e.error&&Wu(e.error,i),complete:e.complete&&Wu(e.complete,i)}):n=e}this.destination=new Yu(n)}};function Ca(e){sr.useDeprecatedSynchronousErrorHandling?Nd(e):Ta(e)}function b_(e){throw e}function Gu(e,t){let{onStoppedNotification:r}=sr;r&&Ci.setTimeout(()=>r(e,t))}var I_={closed:!0,next:ju,error:b_,complete:ju},Ri=typeof Symbol=="function"&&Symbol.observable||"@@observable";function xa(e){return e}function Od(e){return e.length===0?xa:e.length===1?e[0]:function(t){return e.reduce((r,n)=>n(r),t)}}var at=(()=>{class e{constructor(r){r&&(this._subscribe=r)}lift(r){let n=new e;return n.source=this,n.operator=r,n}subscribe(r,n,i){let s=C_(r)?r:new Di(r,n,i);return xi(()=>{let{operator:o,source:c}=this;s.add(o?o.call(s,c):c?this._subscribe(s):this._trySubscribe(s))}),s}_trySubscribe(r){try{return this._subscribe(r)}catch(n){r.error(n)}}forEach(r,n){return n=Pd(n),new n((i,s)=>{let o=new Di({next:c=>{try{r(c)}catch(u){s(u),o.unsubscribe()}},error:s,complete:i});this.subscribe(o)})}_subscribe(r){var n;return(n=this.source)===null||n===void 0?void 0:n.subscribe(r)}[Ri](){return this}pipe(...r){return Od(r)(this)}toPromise(r){return r=Pd(r),new r((n,i)=>{let s;this.subscribe(o=>s=o,o=>i(o),()=>n(s))})}}return e.create=t=>new e(t),e})();function Pd(e){var t;return(t=e??sr.Promise)!==null&&t!==void 0?t:Promise}function T_(e){return e&&le(e.next)&&le(e.error)&&le(e.complete)}function C_(e){return e&&e instanceof An||T_(e)&&Ia(e)}function x_(e){return le(e?.lift)}function Xt(e){return t=>{if(x_(t))return t.lift(function(r){try{return e(r,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}function Ur(e,t,r,n,i){return new zu(e,t,r,n,i)}var zu=class extends An{constructor(e,t,r,n,i,s){super(e),this.onFinalize=i,this.shouldUnsubscribe=s,this._next=t?function(o){try{t(o)}catch(c){e.error(c)}}:super._next,this._error=n?function(o){try{n(o)}catch(c){e.error(c)}finally{this.unsubscribe()}}:super._error,this._complete=r?function(){try{r()}catch(o){e.error(o)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var e;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){let{closed:t}=this;super.unsubscribe(),!t&&((e=this.onFinalize)===null||e===void 0||e.call(this))}}},Ld=wa(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}),xt=(()=>{class e extends at{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(r){let n=new Da(this,this);return n.operator=r,n}_throwIfClosed(){if(this.closed)throw new Ld}next(r){xi(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(let n of this.currentObservers)n.next(r)}})}error(r){xi(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=r;let{observers:n}=this;for(;n.length;)n.shift().error(r)}})}complete(){xi(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;let{observers:r}=this;for(;r.length;)r.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var r;return((r=this.observers)===null||r===void 0?void 0:r.length)>0}_trySubscribe(r){return this._throwIfClosed(),super._trySubscribe(r)}_subscribe(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)}_innerSubscribe(r){let{hasError:n,isStopped:i,observers:s}=this;return n||i?$u:(this.currentObservers=null,s.push(r),new Kt(()=>{this.currentObservers=null,Dn(s,r)}))}_checkFinalizedStatuses(r){let{hasError:n,thrownError:i,isStopped:s}=this;n?r.error(i):s&&r.complete()}asObservable(){let r=new at;return r.source=this,r}}return e.create=(t,r)=>new Da(t,r),e})(),Da=class extends xt{constructor(e,t){super(),this.destination=e,this.source=t}next(e){var t,r;(r=(t=this.destination)===null||t===void 0?void 0:t.next)===null||r===void 0||r.call(t,e)}error(e){var t,r;(r=(t=this.destination)===null||t===void 0?void 0:t.error)===null||r===void 0||r.call(t,e)}complete(){var e,t;(t=(e=this.destination)===null||e===void 0?void 0:e.complete)===null||t===void 0||t.call(e)}_subscribe(e){var t,r;return(r=(t=this.source)===null||t===void 0?void 0:t.subscribe(e))!==null&&r!==void 0?r:$u}},To=class extends xt{constructor(e){super(),this._value=e}get value(){return this.getValue()}_subscribe(e){let t=super._subscribe(e);return!t.closed&&e.next(this._value),t}getValue(){let{hasError:e,thrownError:t,_value:r}=this;if(e)throw t;return this._throwIfClosed(),r}next(e){super.next(this._value=e)}},Co={now(){return(Co.delegate||Date).now()},delegate:void 0},xo=class extends xt{constructor(e=1/0,t=1/0,r=Co){super(),this._bufferSize=e,this._windowTime=t,this._timestampProvider=r,this._buffer=[],this._infiniteTimeWindow=!0,this._infiniteTimeWindow=t===1/0,this._bufferSize=Math.max(1,e),this._windowTime=Math.max(1,t)}next(e){let{isStopped:t,_buffer:r,_infiniteTimeWindow:n,_timestampProvider:i,_windowTime:s}=this;t||(r.push(e),!n&&r.push(i.now()+s)),this._trimBuffer(),super.next(e)}_subscribe(e){this._throwIfClosed(),this._trimBuffer();let t=this._innerSubscribe(e),{_infiniteTimeWindow:r,_buffer:n}=this,i=n.slice();for(let s=0;s<i.length&&!e.closed;s+=r?1:2)e.next(i[s]);return this._checkFinalizedStatuses(e),t}_trimBuffer(){let{_bufferSize:e,_timestampProvider:t,_buffer:r,_infiniteTimeWindow:n}=this,i=(n?1:2)*e;if(e<1/0&&i<r.length&&r.splice(0,r.length-i),!n){let s=t.now(),o=0;for(let c=1;c<r.length&&r[c]<=s;c+=2)o=c;o&&r.splice(0,o+1)}}},Ra=class extends Kt{constructor(e,t){super()}schedule(e,t=0){return this}},Do={setInterval(e,t,...r){let{delegate:n}=Do;return n?.setInterval?n.setInterval(e,t,...r):setInterval(e,t,...r)},clearInterval(e){let{delegate:t}=Do;return(t?.clearInterval||clearInterval)(e)},delegate:void 0},Aa=class extends Ra{constructor(e,t){super(e,t),this.scheduler=e,this.work=t,this.pending=!1}schedule(e,t=0){var r;if(this.closed)return this;this.state=e;let n=this.id,i=this.scheduler;return n!=null&&(this.id=this.recycleAsyncId(i,n,t)),this.pending=!0,this.delay=t,this.id=(r=this.id)!==null&&r!==void 0?r:this.requestAsyncId(i,this.id,t),this}requestAsyncId(e,t,r=0){return Do.setInterval(e.flush.bind(e,this),r)}recycleAsyncId(e,t,r=0){if(r!=null&&this.delay===r&&this.pending===!1)return t;t!=null&&Do.clearInterval(t)}execute(e,t){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;let r=this._execute(e,t);if(r)return r;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(e,t){let r=!1,n;try{this.work(e)}catch(i){r=!0,n=i||new Error("Scheduled action threw falsy error")}if(r)return this.unsubscribe(),n}unsubscribe(){if(!this.closed){let{id:e,scheduler:t}=this,{actions:r}=t;this.work=this.state=this.scheduler=null,this.pending=!1,Dn(r,this),e!=null&&(this.id=this.recycleAsyncId(t,e,null)),this.delay=null,super.unsubscribe()}}},Ai=class Uh{constructor(t,r=Uh.now){this.schedulerActionCtor=t,this.now=r}schedule(t,r=0,n){return new this.schedulerActionCtor(this,t).schedule(n,r)}};Ai.now=Co.now;var Na=class extends Ai{constructor(e,t=Ai.now){super(e,t),this.actions=[],this._active=!1}flush(e){let{actions:t}=this;if(this._active){t.push(e);return}let r;this._active=!0;do if(r=e.execute(e.state,e.delay))break;while(e=t.shift());if(this._active=!1,r){for(;e=t.shift();)e.unsubscribe();throw r}}},Bd=new Na(Aa);function Ud(e){return e&&le(e.schedule)}function D_(e){return e[e.length-1]}function Oa(e){return Ud(D_(e))?e.pop():void 0}function kd(e,t,r,n){function i(s){return s instanceof r?s:new r(function(o){o(s)})}return new(r||(r=Promise))(function(s,o){function c(m){try{d(n.next(m))}catch(h){o(h)}}function u(m){try{d(n.throw(m))}catch(h){o(h)}}function d(m){m.done?s(m.value):i(m.value).then(c,u)}d((n=n.apply(e,t||[])).next())})}function Md(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function Nn(e){return this instanceof Nn?(this.v=e,this):new Nn(e)}function Fd(e,t,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=r.apply(e,t||[]),i,s=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),c("next"),c("throw"),c("return",o),i[Symbol.asyncIterator]=function(){return this},i;function o(E){return function(v){return Promise.resolve(v).then(E,h)}}function c(E,v){n[E]&&(i[E]=function(_){return new Promise(function(D,P){s.push([E,_,D,P])>1||u(E,_)})},v&&(i[E]=v(i[E])))}function u(E,v){try{d(n[E](v))}catch(_){y(s[0][3],_)}}function d(E){E.value instanceof Nn?Promise.resolve(E.value.v).then(m,h):y(s[0][2],E)}function m(E){u("next",E)}function h(E){u("throw",E)}function y(E,v){E(v),s.shift(),s.length&&u(s[0][0],s[0][1])}}function Hd(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof Md=="function"?Md(e):e[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(s){r[s]=e[s]&&function(o){return new Promise(function(c,u){o=e[s](o),i(c,u,o.done,o.value)})}}function i(s,o,c,u){Promise.resolve(u).then(function(d){s({value:d,done:c})},o)}}var Ni=e=>e&&typeof e.length=="number"&&typeof e!="function";function Pa(e){return le(e?.then)}function La(e){return le(e[Ri])}function Ba(e){return Symbol.asyncIterator&&le(e?.[Symbol.asyncIterator])}function Ua(e){return new TypeError(`You provided ${e!==null&&typeof e=="object"?"an invalid object":`'${e}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}function R_(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Ma=R_();function ka(e){return le(e?.[Ma])}function Fa(e){return Fd(this,arguments,function*(){let t=e.getReader();try{for(;;){let{value:r,done:n}=yield Nn(t.read());if(n)return yield Nn(void 0);yield yield Nn(r)}}finally{t.releaseLock()}})}function Ha(e){return le(e?.getReader)}function Jt(e){if(e instanceof at)return e;if(e!=null){if(La(e))return A_(e);if(Ni(e))return N_(e);if(Pa(e))return O_(e);if(Ba(e))return $d(e);if(ka(e))return P_(e);if(Ha(e))return L_(e)}throw Ua(e)}function A_(e){return new at(t=>{let r=e[Ri]();if(le(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function N_(e){return new at(t=>{for(let r=0;r<e.length&&!t.closed;r++)t.next(e[r]);t.complete()})}function O_(e){return new at(t=>{e.then(r=>{t.closed||(t.next(r),t.complete())},r=>t.error(r)).then(null,Ta)})}function P_(e){return new at(t=>{for(let r of e)if(t.next(r),t.closed)return;t.complete()})}function $d(e){return new at(t=>{B_(e,t).catch(r=>t.error(r))})}function L_(e){return $d(Fa(e))}function B_(e,t){var r,n,i,s;return kd(this,void 0,void 0,function*(){try{for(r=Hd(e);n=yield r.next(),!n.done;){let o=n.value;if(t.next(o),t.closed)return}}catch(o){i={error:o}}finally{try{n&&!n.done&&(s=r.return)&&(yield s.call(r))}finally{if(i)throw i.error}}t.complete()})}function Qt(e,t,r,n=0,i=!1){let s=t.schedule(function(){r(),i?e.add(this.schedule(null,n)):this.unsubscribe()},n);if(e.add(s),!i)return s}function $a(e,t=0){return Xt((r,n)=>{r.subscribe(Ur(n,i=>Qt(n,e,()=>n.next(i),t),()=>Qt(n,e,()=>n.complete(),t),i=>Qt(n,e,()=>n.error(i),t)))})}function ja(e,t=0){return Xt((r,n)=>{n.add(e.schedule(()=>r.subscribe(n),t))})}function jd(e,t){return Jt(e).pipe(ja(t),$a(t))}function Vd(e,t){return Jt(e).pipe(ja(t),$a(t))}function Wd(e,t){return new at(r=>{let n=0;return t.schedule(function(){n===e.length?r.complete():(r.next(e[n++]),r.closed||this.schedule())})})}function Gd(e,t){return new at(r=>{let n;return Qt(r,t,()=>{n=e[Ma](),Qt(r,t,()=>{let i,s;try{({value:i,done:s}=n.next())}catch(o){r.error(o);return}s?r.complete():r.next(i)},0,!0)}),()=>le(n?.return)&&n.return()})}function Va(e,t){if(!e)throw new Error("Iterable cannot be null");return new at(r=>{Qt(r,t,()=>{let n=e[Symbol.asyncIterator]();Qt(r,t,()=>{n.next().then(i=>{i.done?r.complete():r.next(i.value)})},0,!0)})})}function Yd(e,t){return Va(Fa(e),t)}function zd(e,t){if(e!=null){if(La(e))return jd(e,t);if(Ni(e))return Wd(e,t);if(Pa(e))return Vd(e,t);if(Ba(e))return Va(e,t);if(ka(e))return Gd(e,t);if(Ha(e))return Yd(e,t)}throw Ua(e)}function qd(e,t){return t?zd(e,t):Jt(e)}function On(e,t){return Xt((r,n)=>{let i=0;r.subscribe(Ur(n,s=>{n.next(e.call(t,s,i++))}))})}var{isArray:U_}=Array;function M_(e,t){return U_(t)?e(...t):e(t)}function Kd(e){return On(t=>M_(e,t))}function Xd(e,t,r,n,i,s,o,c){let u=[],d=0,m=0,h=!1,y=()=>{h&&!u.length&&!d&&t.complete()},E=_=>d<n?v(_):u.push(_),v=_=>{s&&t.next(_),d++;let D=!1;Jt(r(_,m++)).subscribe(Ur(t,P=>{i?.(P),s?E(P):t.next(P)},()=>{D=!0},void 0,()=>{if(D)try{for(d--;u.length&&d<n;){let P=u.shift();o?Qt(t,o,()=>v(P)):v(P)}y()}catch(P){t.error(P)}}))};return e.subscribe(Ur(t,E,()=>{h=!0,y()})),()=>{c?.()}}function Ro(e,t,r=1/0){return le(t)?Ro((n,i)=>On((s,o)=>t(n,s,i,o))(Jt(e(n,i))),r):(typeof t=="number"&&(r=t),Xt((n,i)=>Xd(n,i,e,r)))}function Jd(e=1/0){return Ro(xa,e)}function Qd(){return Jd(1)}function qu(...e){return Qd()(qd(e,Oa(e)))}var k_=["addListener","removeListener"],F_=["addEventListener","removeEventListener"],H_=["on","off"];function Pn(e,t,r,n){if(le(r)&&(n=r,r=void 0),n)return Pn(e,t,r).pipe(Kd(n));let[i,s]=V_(e)?F_.map(o=>c=>e[o](t,c,r)):$_(e)?k_.map(Zd(e,t)):j_(e)?H_.map(Zd(e,t)):[];if(!i&&Ni(e))return Ro(o=>Pn(o,t,r))(Jt(e));if(!i)throw new TypeError("Invalid event target");return new at(o=>{let c=(...u)=>o.next(1<u.length?u:u[0]);return i(c),()=>s(c)})}function Zd(e,t){return r=>n=>e[r](t,n)}function $_(e){return le(e.addListener)&&le(e.removeListener)}function j_(e){return le(e.on)&&le(e.off)}function V_(e){return le(e.addEventListener)&&le(e.removeEventListener)}function ar(e,t=Bd){return Xt((r,n)=>{let i=null,s=null,o=null,c=()=>{if(i){i.unsubscribe(),i=null;let d=s;s=null,n.next(d)}};function u(){let d=o+e,m=t.now();if(m<d){i=this.schedule(void 0,d-m),n.add(i);return}c()}r.subscribe(Ur(n,d=>{s=d,o=t.now(),i||(i=t.schedule(u,e),n.add(i))},()=>{c(),n.complete()},void 0,()=>{s=i=null}))})}function Ku(...e){let t=Oa(e);return Xt((r,n)=>{(t?qu(e,r,t):qu(e,r)).subscribe(n)})}var W_=" daum[ /]| deusu/| yadirectfetcher|(?:^|[^g])news(?!sapphire)|(?<! (?:channel/|google/))google(?!(app|/google| pixel))|(?<! cu)bots?(?:\\b|_)|(?<!(?:lib))http|(?<![hg]m)score|@[a-z][\\w-]+\\.|\\(\\)|\\.com\\b|\\btime/|\\||^<|^[\\w \\.\\-\\(?:\\):%]+(?:/v?\\d+(?:\\.\\d+)?(?:\\.\\d{1,10})*?)?(?:,|$)|^[^ ]{50,}$|^\\d+\\b|^\\w*search\\b|^\\w+/[\\w\\(\\)]*$|^active|^ad muncher|^amaya|^avsdevicesdk/|^biglotron|^bot|^bw/|^clamav[ /]|^client/|^cobweb/|^custom|^ddg[_-]android|^discourse|^dispatch/\\d|^downcast/|^duckduckgo|^email|^facebook|^getright/|^gozilla/|^hobbit|^hotzonu|^hwcdn/|^igetter/|^jeode/|^jetty/|^jigsaw|^microsoft bits|^movabletype|^mozilla/\\d\\.\\d\\s[\\w\\.-]+$|^mozilla/\\d\\.\\d\\s\\(compatible;?(?:\\s\\w+\\/\\d+\\.\\d+)?\\)$|^navermailapp|^netsurf|^offline|^openai/|^owler|^php|^postman|^python|^rank|^read|^reed|^rest|^rss|^snapchat|^space bison|^svn|^swcd |^taringa|^thumbor/|^track|^w3c|^webbandit/|^webcopier|^wget|^whatsapp|^wordpress|^xenu link sleuth|^yahoo|^yandex|^zdm/\\d|^zoom marketplace/|^{{.*}}$|adscanner/|analyzer|archive|ask jeeves/teoma|audit|bit\\.ly/|bluecoat drtr|browsex|burpcollaborator|capture|catch|check\\b|checker|chrome-lighthouse|chromeframe|classifier|cloudflare|convertify|cookiehubscan|crawl|cypress/|dareboost|datanyze|dejaclick|detect|dmbrowser|download|evc-batch/|exaleadcloudview|feed|firephp|functionize|gomezagent|headless|httrack|hubspot marketing grader|hydra|ibisbrowser|infrawatch|insight|inspect|iplabel|ips-agent|java(?!;)|jsjcw_scanner|library|linkcheck|mail\\.ru/|manager|measure|neustar wpm|node|nutch|offbyone|onetrust|optimize|pageburst|pagespeed|parser|perl|phantomjs|pingdom|powermarks|preview|proxy|ptst[ /]\\d|retriever|rexx;|rigor|rss\\b|scanner\\.|scrape|server|sogou|sparkler/|speedcurve|spider|splash|statuscake|supercleaner|synapse|synthetic|tools|torrent|transcoder|url|validator|virtuoso|wappalyzer|webglance|webkit2png|whatcms/|zgrab",G_=/bot|crawl|http|lighthouse|scan|search|spider/i,Ao;function Y_(){if(Ao instanceof RegExp)return Ao;try{Ao=new RegExp(W_,"i")}catch{Ao=G_}return Ao}function eh(e){return!!e&&Y_().test(e)}var th=Se(Xu()),No=class{static UTM_PARAMS=["utm_source","utm_medium","utm_campaign","utm_term","utm_content","utm_id"];static TW_PARAMS={utm_source:"tw_source",utm_campaign:"tw_campaign"};static getReferrer(){if(document.referrer)return document.referrer.replace(location.origin,"")}static getUTMParams(){let e;try{e=new th.URLBuilder(location.href)}catch{return{}}let t={};this.UTM_PARAMS.forEach(n=>{let i=e.getQueryParam(n);i&&(t[n]=i)});let r={};return Object.keys(this.TW_PARAMS).forEach(n=>{let i=e.getQueryParam(this.TW_PARAMS[n]);i&&(r[n]=i)}),w(w({},r),t)}},Tr=class Mh{origin;path;qs;name;referrer;utmSource;utmMedium;utmCampaign;utmId;utmTerm;utmContent;constructor(t){this.name=t.name,this.path=t.path,this.qs=t.qs,this.referrer=t.referrer,this.utmSource=t.utmSource||t.utm_source,this.utmMedium=t.utmMedium||t.utm_medium,this.utmCampaign=t.utmCampaign||t.utm_campaign,this.utmId=t.utmId||t.utm_id,this.utmTerm=t.utmTerm||t.utm_term,this.utmContent=t.utmContent||t.utm_content}static parseFromCurrent(){let t=location.pathname==="/"?location.pathname:location.pathname.replace(/\/+$/,"");return new Mh(w({origin:location.origin,path:t,qs:location.search,referrer:No.getReferrer(),name:ue.get().pageName},No.getUTMParams()))}},Ju={d:(e,t)=>{for(var r in t)Ju.o(t,r)&&!Ju.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)},Qu={};Ju.d(Qu,{A:()=>X_,k:()=>Zu});var q_=function(e,t,r,n){return new(r||(r=Promise))(function(i,s){function o(d){try{u(n.next(d))}catch(m){s(m)}}function c(d){try{u(n.throw(d))}catch(m){s(m)}}function u(d){var m;d.done?i(d.value):(m=d.value,m instanceof r?m:new r(function(h){h(m)})).then(o,c)}u((n=n.apply(e,t||[])).next())})},K_=function(e,t){var r,n,i,s,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return s={next:c(0),throw:c(1),return:c(2)},typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function c(u){return function(d){return function(m){if(r)throw new TypeError("Generator is already executing.");for(;s&&(s=0,m[0]&&(o=0)),o;)try{if(r=1,n&&(i=2&m[0]?n.return:m[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,m[1])).done)return i;switch(n=0,i&&(m=[2&m[0],i.value]),m[0]){case 0:case 1:i=m;break;case 4:return o.label++,{value:m[1],done:!1};case 5:o.label++,n=m[1],m=[0];continue;case 7:m=o.ops.pop(),o.trys.pop();continue;default:if(i=o.trys,!((i=i.length>0&&i[i.length-1])||m[0]!==6&&m[0]!==2)){o=0;continue}if(m[0]===3&&(!i||m[1]>i[0]&&m[1]<i[3])){o.label=m[1];break}if(m[0]===6&&o.label<i[1]){o.label=i[1],i=m;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(m);break}i[2]&&o.ops.pop(),o.trys.pop();continue}m=t.call(e,o)}catch(h){m=[6,h],n=0}finally{r=i=0}if(5&m[0])throw m[1];return{value:m[0]?m[1]:void 0,done:!0}}([u,d])}}};function Zu(){return q_(this,void 0,Promise,function(){return K_(this,function(_a){switch(_a.label){case 0:return[4,new Promise(function(resolve,reject){var browserName="Unknown";function __callback(e){resolve({isPrivate:e,browserName})}function identifyChromium(){var e=navigator.userAgent;return e.match(/Chrome/)?navigator.brave!==void 0?"Brave":e.match(/Edg/)?"Edge":e.match(/OPR/)?"Opera":"Chrome":"Chromium"}function assertEvalToString(e){return e===eval.toString().length}function feid(){var toFixedEngineID=0;try{eval("(-1).toFixed(-1);")}catch(e){toFixedEngineID=e.message.length}return toFixedEngineID}function isSafari(){return feid()===44}function isChrome(){return feid()===51}function isFirefox(){return feid()===25}function isMSIE(){return navigator.msSaveBlob!==void 0&&assertEvalToString(39)}function newSafariTest(){var e=String(Math.random());try{window.indexedDB.open(e,1).onupgradeneeded=function(t){var r,n,i=(r=t.target)===null||r===void 0?void 0:r.result;try{i.createObjectStore("test",{autoIncrement:!0}).put(new Blob),__callback(!1)}catch(o){var s=o;return o instanceof Error&&(s=(n=o.message)!==null&&n!==void 0?n:o),typeof s!="string"?void __callback(!1):void __callback(s.includes("BlobURLs are not yet supported"))}finally{i.close(),window.indexedDB.deleteDatabase(e)}}}catch{__callback(!1)}}function oldSafariTest(){var e=window.openDatabase,t=window.localStorage;try{e(null,null,null,null)}catch{return void __callback(!0)}try{t.setItem("test","1"),t.removeItem("test")}catch{return void __callback(!0)}__callback(!1)}function safariPrivateTest(){navigator.maxTouchPoints!==void 0?newSafariTest():oldSafariTest()}function getQuotaLimit(){var e=window;return e.performance!==void 0&&e.performance.memory!==void 0&&e.performance.memory.jsHeapSizeLimit!==void 0?performance.memory.jsHeapSizeLimit:1073741824}function storageQuotaChromePrivateTest(){navigator.webkitTemporaryStorage.queryUsageAndQuota(function(e,t){__callback(Math.round(t/1048576)<2*Math.round(getQuotaLimit()/1048576))},function(e){reject(new Error("detectIncognito somehow failed to query storage quota: "+e.message))})}function oldChromePrivateTest(){(0,window.webkitRequestFileSystem)(0,1,function(){__callback(!1)},function(){__callback(!0)})}function chromePrivateTest(){self.Promise!==void 0&&self.Promise.allSettled!==void 0?storageQuotaChromePrivateTest():oldChromePrivateTest()}function firefoxPrivateTest(){__callback(navigator.serviceWorker===void 0)}function msiePrivateTest(){__callback(window.indexedDB===void 0)}function main(){isSafari()?(browserName="Safari",safariPrivateTest()):isChrome()?(browserName=identifyChromium(),chromePrivateTest()):isFirefox()?(browserName="Firefox",firefoxPrivateTest()):isMSIE()?(browserName="Internet Explorer",msiePrivateTest()):reject(new Error("detectIncognito cannot determine the browser"))}main()})];case 1:return[2,_a.sent()]}})})}typeof window<"u"&&(window.detectIncognito=Zu);var X_=Zu,rh=Qu.A,zB=Qu.k,uh=Se(on()),Ga=class{parser;result={};constructor(){this.parser=Bt.get().getUAParser()}async get(){let e=this.result;return this.getDeviceMemory(),this.getNetworkType(),this.getOrientation(),await this.getBatteryInfo(),await this.getLocation(),e.locale=navigator.language,e.display={w:screen.width,h:screen.height,pd:screen.pixelDepth,dpi:this.getDPI()},e.win={ow:window.outerWidth,oh:window.outerHeight,iw:window.innerWidth,ih:window.innerHeight,dpr:window.devicePixelRatio},e.browser={name:this.parser.getBrowser().name,ver:this.parser.getBrowser().version},e.device={model:this.parser.getDevice().model,type:this.parser.getDevice().type,vendor:this.parser.getDevice().vendor},e.os={name:this.parser.getOS().name,ver:this.parser.getOS().version},e.navigatorUA=navigator.userAgent,e.isHeadless=navigator.webdriver,e}getDeviceMemory(){let e=navigator;if(!e.deviceMemory)return;let t=e.deviceMemory;this.result.mem={tot:t*1024}}getNetworkType(){let e=navigator,t=e.connection||e.mozConnection||e.webkitConnection;t?.effectiveType&&(this.result.net={type:t.effectiveType})}getOrientation(){let e=screen.orientation?.type;e&&(this.result.orientation=e)}getDPI(){let e=document.createElement("div");e.setAttribute("style","height: 1in; left: -100%; position: absolute; top: -100%; width: 1in;"),document.body.appendChild(e);let t=window.devicePixelRatio||1,r=e.offsetWidth*t;return document.body.removeChild(e),r}async getLocation(){if(!(!navigator.geolocation||!navigator.permissions||(await navigator.permissions.query({name:"geolocation"})).state!="granted"))return new Promise(e=>{navigator.geolocation.getCurrentPosition(t=>{this.result.coords=[t.coords.latitude,t.coords.longitude],e()},()=>e())})}async getBatteryInfo(){if("getBattery"in navigator)try{let e=await navigator.getBattery();this.result.bat={l:e.level*100,c:e.charging}}catch{}}},Oi=class{static trackDeviceID(e){this.isInstalled()}static trackIntent(e){if(!this.isInstalled())return;let t=Sn[e]?.toLowerCase();t&&(b.debug(`Sending ${t} intent to MS Clarity`),window.clarity("set","Cooee Intent",t))}static isInstalled(){return window.clarity&&typeof window.clarity=="function"}},ch=Se(Rr()),Pi=class{constructor(e,t){this._startTime=e,this._triggerData=t}intervals=[];selectedEmbeddedItems;renderer;closeCallback;inputFields=[];get startTime(){return this._startTime}get triggerData(){return this._triggerData}get inputs(){return this.inputFields}get rootClassName(){let e=this.triggerData.shortID??this.triggerData.id.slice(-6);return e==="test"&&(e="test-"+this.startTime.getTime().toString()),N.IN_APP_WRAPPER_NAME+"-"+e}get selectedItems(){return this.triggerData.items.filter(e=>e.selected.value)}get shouldGiveFBTDiscount(){let e=this.selectedItems.length;return this.triggerData.bundleConfig?.applyDiscountOnMinimum?this.triggerData.bundleConfig.applyDiscountOnMinimum<=e:e===this.triggerData.items.length}onClose(e){this.closeCallback=e}closeInApp(e,t){t??={};let r=(new Date().getTime()-this.startTime.getTime())/1e3,n=w({eventName:e,duration:r},t);this.stopIntervals(),this.closeCallback&&this.closeCallback(n)}addInputField(e,t){this.inputFields.push({id:e,type:t,isValid:!1})}updateValidation(e,t){this.inputFields.forEach(r=>{if(r.id===e){r.isValid=t;return}})}hasManipulatedProductQuantity(){let e=this.triggerData.manipulation.productQuantity;return e?.enabled&&e.min!=null&&e.max!=null}getManipulatedQuantity(e){let{min:t=1,max:r=100}=this.triggerData.manipulation.productQuantity;if(t>r)return b.error("Invalid range: min should be less than or equal to max."),e;if(e>=t&&e<=r)return e;let n=e%100;return n<t?t:n>r?r:n}stopIntervals(){this.intervals.forEach(e=>clearInterval(e))}},Ya=class{loadedFonts=[];async loadAllFonts(e){e.elems?.forEach(t=>{t instanceof wr&&this.loadFamily(t.typography?.fam)})}async loadFamily(e){if(!e?.fonts||this.loadedFonts.indexOf(e.name)>-1)return;let t=[];e.fonts.forEach(r=>{if(r.url){let n=new FontFace(N.COOEE+e.name,r.getURL(),r.getFontDescriptor());t.push(n.load())}}),this.loadedFonts.push(e.name),(await Promise.all(t)).forEach(r=>{document.fonts.add(r)})}},za=class{static updateIdentity(e){if(!this.isInstalled())return;let t={};e.email&&(t.email=e.email),e.mobile&&(t.phone_number=e.mobile),b.debug("Sending email/mobile to Klaviyo"),window.klaviyo.push(["identify",t])}static isInstalled(){return window.klaviyo&&typeof window.klaviyo=="object"}},qa=Se(on()),Cr=class Bh{static INSTANCE=new Bh;topics={};constructor(){}static get(){return this.INSTANCE}broadcast(t,r){this.topics[t]||(this.topics[t]=new xt),this.topics[t].next(r)}subscriber(t){return this.topics[t]||(this.topics[t]=new xt),this.topics[t].asObservable()}},ze=class jr{static DEFAULT_SELECTOR="cart-drawer";static _instance;inShadow=!1;cartDrawerElement;cartDrawerShadowElement;configWebsite=Pe.get().website??{};currentState=!1;drawerSubject=new To({open:!1,firstOpen:!1});mutationObserver;firstOpen=!0;selector;shadowParentElementSelector;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=[jr.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(),document.addEventListener(N.CTA_AFTER_REFRESH_UI,this.updateBubble.bind(this))}get element(){return this.cartDrawerElement}static get(){return jr._instance||(jr._instance=new jr),jr._instance}static forceUpdate(){jr._instance=new jr}isOpen(){let t=this.inShadow?this.isPresent():this.isVisible();return qa.default.log(`Cart drawer is currently ${t?"open":"close"}`),t}open(){if(this.isOpen()){b.log("Drawer is already open");return}document.dispatchEvent(new CustomEvent(N.CTA_OPEN_CART_EVENT));let t=document.querySelector(this.iconSelector);if(!t){b.debug("No clickable cart icon found with selector",this.iconSelector);return}t.click()}onToggle(){return this.drawerSubject}isShopifyDefaultDrawer(){return this.element?.tagName.toLowerCase()===jr.DEFAULT_SELECTOR}isMiniCart(){return this.isShopifyDefaultDrawer()&&this.element?.id==="mini-cart"}refreshUI(t,r=!0){if(this.isMiniCart()&&this.element?._rerenderCart)this.element._rerenderCart({detail:{cart:t}});else if(this.isShopifyDefaultDrawer())this.element?.renderContents&&t&&(this.element.classList.remove("is-empty"),this.element.renderContents?.(t));else if(this.element?.onCartDrawerUpdate)this.element.onCartDrawerUpdate();else if(window.cartGiftUpdate){if(!t?.items?.[0])return;let n=t.items[0].id,i=t.items[0].quantity,s=t.items[0].price;window.cartGiftUpdate(n,s,i,"","ADD_TO_CART")}else if(window.icartCartActivityEvent)window.icartCartActivityEvent();else if(window.theme?.CartDrawer)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:!0,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():b.info("No method found to update the cart without refreshing");document.dispatchEvent(new CustomEvent(N.CTA_AFTER_REFRESH_UI)),r&&Cr.get().broadcast(N.CART_UPDATE_BROADCAST)}async initialize(){let t=this.configWebsite.cartDrawerSelector;if(!t){await this.findCartDrawer();return}let r=t.split(N.SHADOW_SPLITTER);r.length===1?(this.selector=r[0],await this.findCartDrawer()):(this.inShadow=!0,this.shadowParentElementSelector=r[0]?.trim(),this.selector=r[1]?.trim(),await this.findCartDrawerWithShadow())}async findCartDrawer(){if(!Be.isShopify())return;let t=this.selector||this.cartSelector;if(this.cartDrawerElement=await Q.retrySelector(t),!this.cartDrawerElement){qa.default.warn("Max attempts exhausted to find cart drawer");return}qa.default.log("Found",this.cartDrawerElement,`from selector: ${t}`),this.createMutationObservers()}async findCartDrawerWithShadow(){if(!Be.isShopify()||!this.shadowParentElementSelector)return;let t=(await Q.retrySelector(this.shadowParentElementSelector))?.shadowRoot;t?.mode==="open"&&(this.cartDrawerShadowElement=t,this.createMutationObservers())}isVisible(){if(!this.cartDrawerElement)return!1;if(this.cartDrawerElement.tagName.toLowerCase()===jr.DEFAULT_SELECTOR&&this.cartDrawerElement.open)return!0;if(this.cartDrawerElement.id==="cart-drawer__container")return this.cartDrawerElement.classList.contains("cart-drawer-open");let t=this.cartDrawerElement.getBoundingClientRect(),r=(window.innerHeight||document.documentElement.clientHeight)+.5,n=(window.innerWidth||document.documentElement.clientWidth)+.5,i=t.top<=r&&t.bottom>=0,s=t.left<=n&&t.right>=0,o=i&&s,c=getComputedStyle(this.cartDrawerElement),u=c.display!=="none"&&c.visibility!=="hidden"&&parseFloat(c.opacity)>0,d=!this.cartDrawerElement.hidden,m=this.cartDrawerElement.offsetWidth>0||this.cartDrawerElement.offsetHeight>0||this.cartDrawerElement.getClientRects().length>0,h=c.transform.match(/matrix\(([^)]+)\)/),y=0,E=0;if(h){let R=h[1].split(", ").map(parseFloat);y=R[4],E=R[5]}let v=y+t.left>n||y+t.right<0||E+t.top>r||E+t.bottom<0,_=Math.max(0,Math.min(t.right,n)-Math.max(t.left,0)),D=Math.max(0,Math.min(t.bottom,r)-Math.max(t.top,0)),P=_*D,M=t.width*t.height,L=M>0&&P/M>=.1;return(o||!v)&&u&&d&&m&&L}createMutationObservers(){!this.cartDrawerElement&&!this.cartDrawerShadowElement||(Q.onNodesRemoved(this.cartDrawerElement,()=>{this.initialize()}),this.watchForCartToggle())}watchForCartToggle(){let t=this.cartDrawerElement||this.cartDrawerShadowElement,r=new xt;this.mutationObserver?.disconnect(),this.mutationObserver=new MutationObserver(()=>{r.next()}),this.mutationObserver.observe(t,{attributes:!0,subtree:!0,childList:this.inShadow}),r.pipe(ar(500)).subscribe(()=>{let n=this.isOpen();this.currentState!==n&&(this.currentState=n,this.drawerSubject.next({open:n,firstOpen:this.firstOpen}),this.firstOpen&&(this.firstOpen=!1))})}isPresent(){return!this.selector||!this.cartDrawerShadowElement?!1:!!this.cartDrawerShadowElement.querySelector(this.selector)}async updateBubble(){let t=(await de.getCurrent().getNormalisedCart(!0)).itemCount,r=document.querySelector(".cart-link__bubble");r&&(r.innerText=t+"")}},Mr=Se(Rr()),ih=Se(nh()),Ln=class{static _flags={};static getFlags(){return this._flags}static setFlags(e){this._flags=e??{}}static isECommerceApp(){return Be.isShopify()}},J_=(0,ih.default)(fetch),Q_={retryDelay:N.API_CALL_RETRY_DELAY,retryOn:(e,t,r)=>e>=N.API_CALL_MAX_ATTEMPTS?!1:!!(t!==null||r?.status&&r?.status>=500)},ht=class $h{static INSTANCE;apiToken="";firstSeen="";constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new $h),this.INSTANCE}async validateSession(t){return this.post("/v1/event/validate-session",t)}updateUserData(t){this.put("/v1/user/update",t).then(async r=>{b.log("Updated user profile"),await Bn.getInstance().storeAndPopulateAuthData(r)}).catch(r=>{b.error("Error saving user profile",r)})}trackOrder(t){this.post("/v1/event/track-order",t).then(()=>{b.log("Sent Order")}).catch(r=>{b.error("Error sending track order",r)})}generateDiscount(t){return this.post("/v1/event/generate-discount",t)}updateDeviceProps(t){this.put("/v1/device/update",t).then(()=>{b.log("Updated device property")}).catch(async r=>{b.error("Error saving device property",r)})}setAPIToken(t){this.apiToken=t??""}setFirstSeen(t){this.firstSeen=t?.toUTCString()??""}get(t){return this.requestBackend("GET",t)}post(t,r){return this.requestBackend("POST",t,r)}put(t,r){return this.requestBackend("PUT",t,r)}async requestBackend(t,r,n){if(!Ln.isECommerceApp()&&!Ln.getFlags().allowEvents)return b.log(`Rejecting ${t} ${r} as this is not e-commerce app`),Promise.reject();r.startsWith("http")||(r=Rt.apiURL+r);let i=this.getDefaultHeaders(),s="keepalive"in new Request("");if(n&&!s&&JSON.stringify(n).includes("CE App Background"))try{return this.performXMLHttpRequest(r,i,n)}catch(c){return Le.getInstance().captureException(c,{body:JSON.stringify(n)}),{}}let o={method:t,headers:i,keepalive:!0};return n&&(o.body=JSON.stringify(n)),this.request(r,o)}async request(t,r){let n=w(w({},Q_),r),i=await J_(t,n);if(!i.ok)throw i;return i.json()}performXMLHttpRequest(t,r,n){return new Promise((i,s)=>{let o=new XMLHttpRequest;o.open("POST",t,!0),r.forEach((c,u)=>{o.setRequestHeader(u,c)}),o.onreadystatechange=()=>{if(o.readyState===XMLHttpRequest.DONE)if(o.status>=200&&o.status<300)try{o.getResponseHeader("Content-Type")?.includes("application/json")?i(JSON.parse(o.responseText)):s(new Error("Content-Type of response header is not json"))}catch(c){s(c)}else s(new Error(`Received status - ${o.status}(${o.statusText})`))},o.onerror=()=>{s(new Error("Network error occurred during the request."))},o.send(JSON.stringify(n))})}getDefaultHeaders(){let t=new Headers;return t.set("content-type","application/json"),t.set("cooee-sdk",N.SDK),t.set("cooee-sdk-code",N.SDK_VERSION_CODE.toString()),t.set("cooee-sdk-version",N.SDK_VERSION),t.set("cooee-first-seen",this.firstSeen),this.apiToken&&t.append("cooee-sdk-token",this.apiToken),Rt.debug&&t.set("cooee-sdk-debug",String(1)),t}},Z_=`
|
|
38
|
+
`)}`:"",this.name="UnsubscriptionError",this.errors=t});function Dn(e,t){if(e){let r=e.indexOf(t);0<=r&&e.splice(r,1)}}var Kt=class Ac{constructor(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let t;if(!this.closed){this.closed=!0;let{_parentage:r}=this;if(r)if(this._parentage=null,Array.isArray(r))for(let s of r)s.remove(this);else r.remove(this);let{initialTeardown:n}=this;if(le(n))try{n()}catch(s){t=s instanceof wa?s.errors:[s]}let{_finalizers:i}=this;if(i){this._finalizers=null;for(let s of i)try{xd(s)}catch(o){t=t??[],o instanceof wa?t=[...t,...o.errors]:t.push(o)}}if(t)throw new wa(t)}}add(t){var r;if(t&&t!==this)if(this.closed)xd(t);else{if(t instanceof Ac){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}}_hasParent(t){let{_parentage:r}=this;return r===t||Array.isArray(r)&&r.includes(t)}_addParent(t){let{_parentage:r}=this;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t}_removeParent(t){let{_parentage:r}=this;r===t?this._parentage=null:Array.isArray(r)&&Dn(r,t)}remove(t){let{_finalizers:r}=this;r&&Dn(r,t),t instanceof Ac&&t._removeParent(this)}};Kt.EMPTY=(()=>{let e=new Kt;return e.closed=!0,e})();var $u=Kt.EMPTY;function Ia(e){return e instanceof Kt||e&&"closed"in e&&le(e.remove)&&le(e.add)&&le(e.unsubscribe)}function xd(e){le(e)?e():e.unsubscribe()}var sr={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},Ci={setTimeout(e,t,...r){let{delegate:n}=Ci;return n?.setTimeout?n.setTimeout(e,t,...r):setTimeout(e,t,...r)},clearTimeout(e){let{delegate:t}=Ci;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0};function Ta(e){Ci.setTimeout(()=>{let{onUnhandledError:t}=sr;if(t)t(e);else throw e})}function ju(){}var Dd=Vu("C",void 0,void 0);function Rd(e){return Vu("E",void 0,e)}function Ad(e){return Vu("N",e,void 0)}function Vu(e,t,r){return{kind:e,value:t,error:r}}var Rn=null;function xi(e){if(sr.useDeprecatedSynchronousErrorHandling){let t=!Rn;if(t&&(Rn={errorThrown:!1,error:null}),e(),t){let{errorThrown:r,error:n}=Rn;if(Rn=null,r)throw n}}else e()}function Nd(e){sr.useDeprecatedSynchronousErrorHandling&&Rn&&(Rn.errorThrown=!0,Rn.error=e)}var An=class extends Kt{constructor(e){super(),this.isStopped=!1,e?(this.destination=e,Ia(e)&&e.add(this)):this.destination=I_}static create(e,t,r){return new Di(e,t,r)}next(e){this.isStopped?Gu(Ad(e),this):this._next(e)}error(e){this.isStopped?Gu(Rd(e),this):(this.isStopped=!0,this._error(e))}complete(){this.isStopped?Gu(Dd,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(e){this.destination.next(e)}_error(e){try{this.destination.error(e)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}},b_=Function.prototype.bind;function Wu(e,t){return b_.call(e,t)}var Yu=class{constructor(e){this.partialObserver=e}next(e){let{partialObserver:t}=this;if(t.next)try{t.next(e)}catch(r){Ca(r)}}error(e){let{partialObserver:t}=this;if(t.error)try{t.error(e)}catch(r){Ca(r)}else Ca(e)}complete(){let{partialObserver:e}=this;if(e.complete)try{e.complete()}catch(t){Ca(t)}}},Di=class extends An{constructor(e,t,r){super();let n;if(le(e)||!e)n={next:e??void 0,error:t??void 0,complete:r??void 0};else{let i;this&&sr.useDeprecatedNextContext?(i=Object.create(e),i.unsubscribe=()=>this.unsubscribe(),n={next:e.next&&Wu(e.next,i),error:e.error&&Wu(e.error,i),complete:e.complete&&Wu(e.complete,i)}):n=e}this.destination=new Yu(n)}};function Ca(e){sr.useDeprecatedSynchronousErrorHandling?Nd(e):Ta(e)}function w_(e){throw e}function Gu(e,t){let{onStoppedNotification:r}=sr;r&&Ci.setTimeout(()=>r(e,t))}var I_={closed:!0,next:ju,error:w_,complete:ju},Ri=typeof Symbol=="function"&&Symbol.observable||"@@observable";function xa(e){return e}function Od(e){return e.length===0?xa:e.length===1?e[0]:function(t){return e.reduce((r,n)=>n(r),t)}}var at=(()=>{class e{constructor(r){r&&(this._subscribe=r)}lift(r){let n=new e;return n.source=this,n.operator=r,n}subscribe(r,n,i){let s=C_(r)?r:new Di(r,n,i);return xi(()=>{let{operator:o,source:c}=this;s.add(o?o.call(s,c):c?this._subscribe(s):this._trySubscribe(s))}),s}_trySubscribe(r){try{return this._subscribe(r)}catch(n){r.error(n)}}forEach(r,n){return n=Pd(n),new n((i,s)=>{let o=new Di({next:c=>{try{r(c)}catch(u){s(u),o.unsubscribe()}},error:s,complete:i});this.subscribe(o)})}_subscribe(r){var n;return(n=this.source)===null||n===void 0?void 0:n.subscribe(r)}[Ri](){return this}pipe(...r){return Od(r)(this)}toPromise(r){return r=Pd(r),new r((n,i)=>{let s;this.subscribe(o=>s=o,o=>i(o),()=>n(s))})}}return e.create=t=>new e(t),e})();function Pd(e){var t;return(t=e??sr.Promise)!==null&&t!==void 0?t:Promise}function T_(e){return e&&le(e.next)&&le(e.error)&&le(e.complete)}function C_(e){return e&&e instanceof An||T_(e)&&Ia(e)}function x_(e){return le(e?.lift)}function Xt(e){return t=>{if(x_(t))return t.lift(function(r){try{return e(r,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}function Br(e,t,r,n,i){return new zu(e,t,r,n,i)}var zu=class extends An{constructor(e,t,r,n,i,s){super(e),this.onFinalize=i,this.shouldUnsubscribe=s,this._next=t?function(o){try{t(o)}catch(c){e.error(c)}}:super._next,this._error=n?function(o){try{n(o)}catch(c){e.error(c)}finally{this.unsubscribe()}}:super._error,this._complete=r?function(){try{r()}catch(o){e.error(o)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var e;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){let{closed:t}=this;super.unsubscribe(),!t&&((e=this.onFinalize)===null||e===void 0||e.call(this))}}},Ld=ba(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}),xt=(()=>{class e extends at{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(r){let n=new Da(this,this);return n.operator=r,n}_throwIfClosed(){if(this.closed)throw new Ld}next(r){xi(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(let n of this.currentObservers)n.next(r)}})}error(r){xi(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=r;let{observers:n}=this;for(;n.length;)n.shift().error(r)}})}complete(){xi(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;let{observers:r}=this;for(;r.length;)r.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var r;return((r=this.observers)===null||r===void 0?void 0:r.length)>0}_trySubscribe(r){return this._throwIfClosed(),super._trySubscribe(r)}_subscribe(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)}_innerSubscribe(r){let{hasError:n,isStopped:i,observers:s}=this;return n||i?$u:(this.currentObservers=null,s.push(r),new Kt(()=>{this.currentObservers=null,Dn(s,r)}))}_checkFinalizedStatuses(r){let{hasError:n,thrownError:i,isStopped:s}=this;n?r.error(i):s&&r.complete()}asObservable(){let r=new at;return r.source=this,r}}return e.create=(t,r)=>new Da(t,r),e})(),Da=class extends xt{constructor(e,t){super(),this.destination=e,this.source=t}next(e){var t,r;(r=(t=this.destination)===null||t===void 0?void 0:t.next)===null||r===void 0||r.call(t,e)}error(e){var t,r;(r=(t=this.destination)===null||t===void 0?void 0:t.error)===null||r===void 0||r.call(t,e)}complete(){var e,t;(t=(e=this.destination)===null||e===void 0?void 0:e.complete)===null||t===void 0||t.call(e)}_subscribe(e){var t,r;return(r=(t=this.source)===null||t===void 0?void 0:t.subscribe(e))!==null&&r!==void 0?r:$u}},To=class extends xt{constructor(e){super(),this._value=e}get value(){return this.getValue()}_subscribe(e){let t=super._subscribe(e);return!t.closed&&e.next(this._value),t}getValue(){let{hasError:e,thrownError:t,_value:r}=this;if(e)throw t;return this._throwIfClosed(),r}next(e){super.next(this._value=e)}},Co={now(){return(Co.delegate||Date).now()},delegate:void 0},xo=class extends xt{constructor(e=1/0,t=1/0,r=Co){super(),this._bufferSize=e,this._windowTime=t,this._timestampProvider=r,this._buffer=[],this._infiniteTimeWindow=!0,this._infiniteTimeWindow=t===1/0,this._bufferSize=Math.max(1,e),this._windowTime=Math.max(1,t)}next(e){let{isStopped:t,_buffer:r,_infiniteTimeWindow:n,_timestampProvider:i,_windowTime:s}=this;t||(r.push(e),!n&&r.push(i.now()+s)),this._trimBuffer(),super.next(e)}_subscribe(e){this._throwIfClosed(),this._trimBuffer();let t=this._innerSubscribe(e),{_infiniteTimeWindow:r,_buffer:n}=this,i=n.slice();for(let s=0;s<i.length&&!e.closed;s+=r?1:2)e.next(i[s]);return this._checkFinalizedStatuses(e),t}_trimBuffer(){let{_bufferSize:e,_timestampProvider:t,_buffer:r,_infiniteTimeWindow:n}=this,i=(n?1:2)*e;if(e<1/0&&i<r.length&&r.splice(0,r.length-i),!n){let s=t.now(),o=0;for(let c=1;c<r.length&&r[c]<=s;c+=2)o=c;o&&r.splice(0,o+1)}}},Ra=class extends Kt{constructor(e,t){super()}schedule(e,t=0){return this}},Do={setInterval(e,t,...r){let{delegate:n}=Do;return n?.setInterval?n.setInterval(e,t,...r):setInterval(e,t,...r)},clearInterval(e){let{delegate:t}=Do;return(t?.clearInterval||clearInterval)(e)},delegate:void 0},Aa=class extends Ra{constructor(e,t){super(e,t),this.scheduler=e,this.work=t,this.pending=!1}schedule(e,t=0){var r;if(this.closed)return this;this.state=e;let n=this.id,i=this.scheduler;return n!=null&&(this.id=this.recycleAsyncId(i,n,t)),this.pending=!0,this.delay=t,this.id=(r=this.id)!==null&&r!==void 0?r:this.requestAsyncId(i,this.id,t),this}requestAsyncId(e,t,r=0){return Do.setInterval(e.flush.bind(e,this),r)}recycleAsyncId(e,t,r=0){if(r!=null&&this.delay===r&&this.pending===!1)return t;t!=null&&Do.clearInterval(t)}execute(e,t){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;let r=this._execute(e,t);if(r)return r;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(e,t){let r=!1,n;try{this.work(e)}catch(i){r=!0,n=i||new Error("Scheduled action threw falsy error")}if(r)return this.unsubscribe(),n}unsubscribe(){if(!this.closed){let{id:e,scheduler:t}=this,{actions:r}=t;this.work=this.state=this.scheduler=null,this.pending=!1,Dn(r,this),e!=null&&(this.id=this.recycleAsyncId(t,e,null)),this.delay=null,super.unsubscribe()}}},Ai=class Uh{constructor(t,r=Uh.now){this.schedulerActionCtor=t,this.now=r}schedule(t,r=0,n){return new this.schedulerActionCtor(this,t).schedule(n,r)}};Ai.now=Co.now;var Na=class extends Ai{constructor(e,t=Ai.now){super(e,t),this.actions=[],this._active=!1}flush(e){let{actions:t}=this;if(this._active){t.push(e);return}let r;this._active=!0;do if(r=e.execute(e.state,e.delay))break;while(e=t.shift());if(this._active=!1,r){for(;e=t.shift();)e.unsubscribe();throw r}}},Md=new Na(Aa);function Bd(e){return e&&le(e.schedule)}function D_(e){return e[e.length-1]}function Oa(e){return Bd(D_(e))?e.pop():void 0}function kd(e,t,r,n){function i(s){return s instanceof r?s:new r(function(o){o(s)})}return new(r||(r=Promise))(function(s,o){function c(m){try{d(n.next(m))}catch(h){o(h)}}function u(m){try{d(n.throw(m))}catch(h){o(h)}}function d(m){m.done?s(m.value):i(m.value).then(c,u)}d((n=n.apply(e,t||[])).next())})}function Ud(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function Nn(e){return this instanceof Nn?(this.v=e,this):new Nn(e)}function Fd(e,t,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=r.apply(e,t||[]),i,s=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),c("next"),c("throw"),c("return",o),i[Symbol.asyncIterator]=function(){return this},i;function o(E){return function(v){return Promise.resolve(v).then(E,h)}}function c(E,v){n[E]&&(i[E]=function(_){return new Promise(function(D,P){s.push([E,_,D,P])>1||u(E,_)})},v&&(i[E]=v(i[E])))}function u(E,v){try{d(n[E](v))}catch(_){y(s[0][3],_)}}function d(E){E.value instanceof Nn?Promise.resolve(E.value.v).then(m,h):y(s[0][2],E)}function m(E){u("next",E)}function h(E){u("throw",E)}function y(E,v){E(v),s.shift(),s.length&&u(s[0][0],s[0][1])}}function Hd(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof Ud=="function"?Ud(e):e[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(s){r[s]=e[s]&&function(o){return new Promise(function(c,u){o=e[s](o),i(c,u,o.done,o.value)})}}function i(s,o,c,u){Promise.resolve(u).then(function(d){s({value:d,done:c})},o)}}var Ni=e=>e&&typeof e.length=="number"&&typeof e!="function";function Pa(e){return le(e?.then)}function La(e){return le(e[Ri])}function Ma(e){return Symbol.asyncIterator&&le(e?.[Symbol.asyncIterator])}function Ba(e){return new TypeError(`You provided ${e!==null&&typeof e=="object"?"an invalid object":`'${e}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}function R_(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Ua=R_();function ka(e){return le(e?.[Ua])}function Fa(e){return Fd(this,arguments,function*(){let t=e.getReader();try{for(;;){let{value:r,done:n}=yield Nn(t.read());if(n)return yield Nn(void 0);yield yield Nn(r)}}finally{t.releaseLock()}})}function Ha(e){return le(e?.getReader)}function Jt(e){if(e instanceof at)return e;if(e!=null){if(La(e))return A_(e);if(Ni(e))return N_(e);if(Pa(e))return O_(e);if(Ma(e))return $d(e);if(ka(e))return P_(e);if(Ha(e))return L_(e)}throw Ba(e)}function A_(e){return new at(t=>{let r=e[Ri]();if(le(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function N_(e){return new at(t=>{for(let r=0;r<e.length&&!t.closed;r++)t.next(e[r]);t.complete()})}function O_(e){return new at(t=>{e.then(r=>{t.closed||(t.next(r),t.complete())},r=>t.error(r)).then(null,Ta)})}function P_(e){return new at(t=>{for(let r of e)if(t.next(r),t.closed)return;t.complete()})}function $d(e){return new at(t=>{M_(e,t).catch(r=>t.error(r))})}function L_(e){return $d(Fa(e))}function M_(e,t){var r,n,i,s;return kd(this,void 0,void 0,function*(){try{for(r=Hd(e);n=yield r.next(),!n.done;){let o=n.value;if(t.next(o),t.closed)return}}catch(o){i={error:o}}finally{try{n&&!n.done&&(s=r.return)&&(yield s.call(r))}finally{if(i)throw i.error}}t.complete()})}function Qt(e,t,r,n=0,i=!1){let s=t.schedule(function(){r(),i?e.add(this.schedule(null,n)):this.unsubscribe()},n);if(e.add(s),!i)return s}function $a(e,t=0){return Xt((r,n)=>{r.subscribe(Br(n,i=>Qt(n,e,()=>n.next(i),t),()=>Qt(n,e,()=>n.complete(),t),i=>Qt(n,e,()=>n.error(i),t)))})}function ja(e,t=0){return Xt((r,n)=>{n.add(e.schedule(()=>r.subscribe(n),t))})}function jd(e,t){return Jt(e).pipe(ja(t),$a(t))}function Vd(e,t){return Jt(e).pipe(ja(t),$a(t))}function Wd(e,t){return new at(r=>{let n=0;return t.schedule(function(){n===e.length?r.complete():(r.next(e[n++]),r.closed||this.schedule())})})}function Gd(e,t){return new at(r=>{let n;return Qt(r,t,()=>{n=e[Ua](),Qt(r,t,()=>{let i,s;try{({value:i,done:s}=n.next())}catch(o){r.error(o);return}s?r.complete():r.next(i)},0,!0)}),()=>le(n?.return)&&n.return()})}function Va(e,t){if(!e)throw new Error("Iterable cannot be null");return new at(r=>{Qt(r,t,()=>{let n=e[Symbol.asyncIterator]();Qt(r,t,()=>{n.next().then(i=>{i.done?r.complete():r.next(i.value)})},0,!0)})})}function Yd(e,t){return Va(Fa(e),t)}function zd(e,t){if(e!=null){if(La(e))return jd(e,t);if(Ni(e))return Wd(e,t);if(Pa(e))return Vd(e,t);if(Ma(e))return Va(e,t);if(ka(e))return Gd(e,t);if(Ha(e))return Yd(e,t)}throw Ba(e)}function qd(e,t){return t?zd(e,t):Jt(e)}function On(e,t){return Xt((r,n)=>{let i=0;r.subscribe(Br(n,s=>{n.next(e.call(t,s,i++))}))})}var{isArray:B_}=Array;function U_(e,t){return B_(t)?e(...t):e(t)}function Kd(e){return On(t=>U_(e,t))}function Xd(e,t,r,n,i,s,o,c){let u=[],d=0,m=0,h=!1,y=()=>{h&&!u.length&&!d&&t.complete()},E=_=>d<n?v(_):u.push(_),v=_=>{s&&t.next(_),d++;let D=!1;Jt(r(_,m++)).subscribe(Br(t,P=>{i?.(P),s?E(P):t.next(P)},()=>{D=!0},void 0,()=>{if(D)try{for(d--;u.length&&d<n;){let P=u.shift();o?Qt(t,o,()=>v(P)):v(P)}y()}catch(P){t.error(P)}}))};return e.subscribe(Br(t,E,()=>{h=!0,y()})),()=>{c?.()}}function Ro(e,t,r=1/0){return le(t)?Ro((n,i)=>On((s,o)=>t(n,s,i,o))(Jt(e(n,i))),r):(typeof t=="number"&&(r=t),Xt((n,i)=>Xd(n,i,e,r)))}function Jd(e=1/0){return Ro(xa,e)}function Qd(){return Jd(1)}function qu(...e){return Qd()(qd(e,Oa(e)))}var k_=["addListener","removeListener"],F_=["addEventListener","removeEventListener"],H_=["on","off"];function Pn(e,t,r,n){if(le(r)&&(n=r,r=void 0),n)return Pn(e,t,r).pipe(Kd(n));let[i,s]=V_(e)?F_.map(o=>c=>e[o](t,c,r)):$_(e)?k_.map(Zd(e,t)):j_(e)?H_.map(Zd(e,t)):[];if(!i&&Ni(e))return Ro(o=>Pn(o,t,r))(Jt(e));if(!i)throw new TypeError("Invalid event target");return new at(o=>{let c=(...u)=>o.next(1<u.length?u:u[0]);return i(c),()=>s(c)})}function Zd(e,t){return r=>n=>e[r](t,n)}function $_(e){return le(e.addListener)&&le(e.removeListener)}function j_(e){return le(e.on)&&le(e.off)}function V_(e){return le(e.addEventListener)&&le(e.removeEventListener)}function ar(e,t=Md){return Xt((r,n)=>{let i=null,s=null,o=null,c=()=>{if(i){i.unsubscribe(),i=null;let d=s;s=null,n.next(d)}};function u(){let d=o+e,m=t.now();if(m<d){i=this.schedule(void 0,d-m),n.add(i);return}c()}r.subscribe(Br(n,d=>{s=d,o=t.now(),i||(i=t.schedule(u,e),n.add(i))},()=>{c(),n.complete()},void 0,()=>{s=i=null}))})}function Ku(...e){let t=Oa(e);return Xt((r,n)=>{(t?qu(e,r,t):qu(e,r)).subscribe(n)})}var W_=" daum[ /]| deusu/| yadirectfetcher|(?:^|[^g])news(?!sapphire)|(?<! (?:channel/|google/))google(?!(app|/google| pixel))|(?<! cu)bots?(?:\\b|_)|(?<!(?:lib))http|(?<![hg]m)score|@[a-z][\\w-]+\\.|\\(\\)|\\.com\\b|\\btime/|\\||^<|^[\\w \\.\\-\\(?:\\):%]+(?:/v?\\d+(?:\\.\\d+)?(?:\\.\\d{1,10})*?)?(?:,|$)|^[^ ]{50,}$|^\\d+\\b|^\\w*search\\b|^\\w+/[\\w\\(\\)]*$|^active|^ad muncher|^amaya|^avsdevicesdk/|^biglotron|^bot|^bw/|^clamav[ /]|^client/|^cobweb/|^custom|^ddg[_-]android|^discourse|^dispatch/\\d|^downcast/|^duckduckgo|^email|^facebook|^getright/|^gozilla/|^hobbit|^hotzonu|^hwcdn/|^igetter/|^jeode/|^jetty/|^jigsaw|^microsoft bits|^movabletype|^mozilla/\\d\\.\\d\\s[\\w\\.-]+$|^mozilla/\\d\\.\\d\\s\\(compatible;?(?:\\s\\w+\\/\\d+\\.\\d+)?\\)$|^navermailapp|^netsurf|^offline|^openai/|^owler|^php|^postman|^python|^rank|^read|^reed|^rest|^rss|^snapchat|^space bison|^svn|^swcd |^taringa|^thumbor/|^track|^w3c|^webbandit/|^webcopier|^wget|^whatsapp|^wordpress|^xenu link sleuth|^yahoo|^yandex|^zdm/\\d|^zoom marketplace/|^{{.*}}$|adscanner/|analyzer|archive|ask jeeves/teoma|audit|bit\\.ly/|bluecoat drtr|browsex|burpcollaborator|capture|catch|check\\b|checker|chrome-lighthouse|chromeframe|classifier|cloudflare|convertify|cookiehubscan|crawl|cypress/|dareboost|datanyze|dejaclick|detect|dmbrowser|download|evc-batch/|exaleadcloudview|feed|firephp|functionize|gomezagent|headless|httrack|hubspot marketing grader|hydra|ibisbrowser|infrawatch|insight|inspect|iplabel|ips-agent|java(?!;)|jsjcw_scanner|library|linkcheck|mail\\.ru/|manager|measure|neustar wpm|node|nutch|offbyone|onetrust|optimize|pageburst|pagespeed|parser|perl|phantomjs|pingdom|powermarks|preview|proxy|ptst[ /]\\d|retriever|rexx;|rigor|rss\\b|scanner\\.|scrape|server|sogou|sparkler/|speedcurve|spider|splash|statuscake|supercleaner|synapse|synthetic|tools|torrent|transcoder|url|validator|virtuoso|wappalyzer|webglance|webkit2png|whatcms/|zgrab",G_=/bot|crawl|http|lighthouse|scan|search|spider/i,Ao;function Y_(){if(Ao instanceof RegExp)return Ao;try{Ao=new RegExp(W_,"i")}catch{Ao=G_}return Ao}function eh(e){return!!e&&Y_().test(e)}var th=Se(Xu()),No=class{static UTM_PARAMS=["utm_source","utm_medium","utm_campaign","utm_term","utm_content","utm_id"];static TW_PARAMS={utm_source:"tw_source",utm_campaign:"tw_campaign"};static getReferrer(){if(document.referrer)return document.referrer.replace(location.origin,"")}static getUTMParams(){let e;try{e=new th.URLBuilder(location.href)}catch{return{}}let t={};this.UTM_PARAMS.forEach(n=>{let i=e.getQueryParam(n);i&&(t[n]=i)});let r={};return Object.keys(this.TW_PARAMS).forEach(n=>{let i=e.getQueryParam(this.TW_PARAMS[n]);i&&(r[n]=i)}),b(b({},r),t)}},Tr=class Mh{origin;path;qs;name;referrer;utmSource;utmMedium;utmCampaign;utmId;utmTerm;utmContent;constructor(t){this.name=t.name,this.path=t.path,this.qs=t.qs,this.referrer=t.referrer,this.utmSource=t.utmSource||t.utm_source,this.utmMedium=t.utmMedium||t.utm_medium,this.utmCampaign=t.utmCampaign||t.utm_campaign,this.utmId=t.utmId||t.utm_id,this.utmTerm=t.utmTerm||t.utm_term,this.utmContent=t.utmContent||t.utm_content}static parseFromCurrent(){let t=location.pathname==="/"?location.pathname:location.pathname.replace(/\/+$/,"");return new Mh(b({origin:location.origin,path:t,qs:location.search,referrer:No.getReferrer(),name:ue.get().pageName},No.getUTMParams()))}},Ju={d:(e,t)=>{for(var r in t)Ju.o(t,r)&&!Ju.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)},Qu={};Ju.d(Qu,{A:()=>X_,k:()=>Zu});var q_=function(e,t,r,n){return new(r||(r=Promise))(function(i,s){function o(d){try{u(n.next(d))}catch(m){s(m)}}function c(d){try{u(n.throw(d))}catch(m){s(m)}}function u(d){var m;d.done?i(d.value):(m=d.value,m instanceof r?m:new r(function(h){h(m)})).then(o,c)}u((n=n.apply(e,t||[])).next())})},K_=function(e,t){var r,n,i,s,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return s={next:c(0),throw:c(1),return:c(2)},typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function c(u){return function(d){return function(m){if(r)throw new TypeError("Generator is already executing.");for(;s&&(s=0,m[0]&&(o=0)),o;)try{if(r=1,n&&(i=2&m[0]?n.return:m[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,m[1])).done)return i;switch(n=0,i&&(m=[2&m[0],i.value]),m[0]){case 0:case 1:i=m;break;case 4:return o.label++,{value:m[1],done:!1};case 5:o.label++,n=m[1],m=[0];continue;case 7:m=o.ops.pop(),o.trys.pop();continue;default:if(i=o.trys,!((i=i.length>0&&i[i.length-1])||m[0]!==6&&m[0]!==2)){o=0;continue}if(m[0]===3&&(!i||m[1]>i[0]&&m[1]<i[3])){o.label=m[1];break}if(m[0]===6&&o.label<i[1]){o.label=i[1],i=m;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(m);break}i[2]&&o.ops.pop(),o.trys.pop();continue}m=t.call(e,o)}catch(h){m=[6,h],n=0}finally{r=i=0}if(5&m[0])throw m[1];return{value:m[0]?m[1]:void 0,done:!0}}([u,d])}}};function Zu(){return q_(this,void 0,Promise,function(){return K_(this,function(_a){switch(_a.label){case 0:return[4,new Promise(function(resolve,reject){var browserName="Unknown";function __callback(e){resolve({isPrivate:e,browserName})}function identifyChromium(){var e=navigator.userAgent;return e.match(/Chrome/)?navigator.brave!==void 0?"Brave":e.match(/Edg/)?"Edge":e.match(/OPR/)?"Opera":"Chrome":"Chromium"}function assertEvalToString(e){return e===eval.toString().length}function feid(){var toFixedEngineID=0;try{eval("(-1).toFixed(-1);")}catch(e){toFixedEngineID=e.message.length}return toFixedEngineID}function isSafari(){return feid()===44}function isChrome(){return feid()===51}function isFirefox(){return feid()===25}function isMSIE(){return navigator.msSaveBlob!==void 0&&assertEvalToString(39)}function newSafariTest(){var e=String(Math.random());try{window.indexedDB.open(e,1).onupgradeneeded=function(t){var r,n,i=(r=t.target)===null||r===void 0?void 0:r.result;try{i.createObjectStore("test",{autoIncrement:!0}).put(new Blob),__callback(!1)}catch(o){var s=o;return o instanceof Error&&(s=(n=o.message)!==null&&n!==void 0?n:o),typeof s!="string"?void __callback(!1):void __callback(s.includes("BlobURLs are not yet supported"))}finally{i.close(),window.indexedDB.deleteDatabase(e)}}}catch{__callback(!1)}}function oldSafariTest(){var e=window.openDatabase,t=window.localStorage;try{e(null,null,null,null)}catch{return void __callback(!0)}try{t.setItem("test","1"),t.removeItem("test")}catch{return void __callback(!0)}__callback(!1)}function safariPrivateTest(){navigator.maxTouchPoints!==void 0?newSafariTest():oldSafariTest()}function getQuotaLimit(){var e=window;return e.performance!==void 0&&e.performance.memory!==void 0&&e.performance.memory.jsHeapSizeLimit!==void 0?performance.memory.jsHeapSizeLimit:1073741824}function storageQuotaChromePrivateTest(){navigator.webkitTemporaryStorage.queryUsageAndQuota(function(e,t){__callback(Math.round(t/1048576)<2*Math.round(getQuotaLimit()/1048576))},function(e){reject(new Error("detectIncognito somehow failed to query storage quota: "+e.message))})}function oldChromePrivateTest(){(0,window.webkitRequestFileSystem)(0,1,function(){__callback(!1)},function(){__callback(!0)})}function chromePrivateTest(){self.Promise!==void 0&&self.Promise.allSettled!==void 0?storageQuotaChromePrivateTest():oldChromePrivateTest()}function firefoxPrivateTest(){__callback(navigator.serviceWorker===void 0)}function msiePrivateTest(){__callback(window.indexedDB===void 0)}function main(){isSafari()?(browserName="Safari",safariPrivateTest()):isChrome()?(browserName=identifyChromium(),chromePrivateTest()):isFirefox()?(browserName="Firefox",firefoxPrivateTest()):isMSIE()?(browserName="Internet Explorer",msiePrivateTest()):reject(new Error("detectIncognito cannot determine the browser"))}main()})];case 1:return[2,_a.sent()]}})})}typeof window<"u"&&(window.detectIncognito=Zu);var X_=Zu,rh=Qu.A,zM=Qu.k,uh=Se(on()),Ga=class{parser;result={};constructor(){this.parser=Mt.get().getUAParser()}async get(){let e=this.result;return this.getDeviceMemory(),this.getNetworkType(),this.getOrientation(),await this.getBatteryInfo(),await this.getLocation(),e.locale=navigator.language,e.display={w:screen.width,h:screen.height,pd:screen.pixelDepth,dpi:this.getDPI()},e.win={ow:window.outerWidth,oh:window.outerHeight,iw:window.innerWidth,ih:window.innerHeight,dpr:window.devicePixelRatio},e.browser={name:this.parser.getBrowser().name,ver:this.parser.getBrowser().version},e.device={model:this.parser.getDevice().model,type:this.parser.getDevice().type,vendor:this.parser.getDevice().vendor},e.os={name:this.parser.getOS().name,ver:this.parser.getOS().version},e.navigatorUA=navigator.userAgent,e.isHeadless=navigator.webdriver,e}getDeviceMemory(){let e=navigator;if(!e.deviceMemory)return;let t=e.deviceMemory;this.result.mem={tot:t*1024}}getNetworkType(){let e=navigator,t=e.connection||e.mozConnection||e.webkitConnection;t?.effectiveType&&(this.result.net={type:t.effectiveType})}getOrientation(){let e=screen.orientation?.type;e&&(this.result.orientation=e)}getDPI(){let e=document.createElement("div");e.setAttribute("style","height: 1in; left: -100%; position: absolute; top: -100%; width: 1in;"),document.body.appendChild(e);let t=window.devicePixelRatio||1,r=e.offsetWidth*t;return document.body.removeChild(e),r}async getLocation(){if(!(!navigator.geolocation||!navigator.permissions||(await navigator.permissions.query({name:"geolocation"})).state!="granted"))return new Promise(e=>{navigator.geolocation.getCurrentPosition(t=>{this.result.coords=[t.coords.latitude,t.coords.longitude],e()},()=>e())})}async getBatteryInfo(){if("getBattery"in navigator)try{let e=await navigator.getBattery();this.result.bat={l:e.level*100,c:e.charging}}catch{}}},Oi=class{static trackDeviceID(e){this.isInstalled()}static trackIntent(e){if(!this.isInstalled())return;let t=Sn[e]?.toLowerCase();t&&(w.debug(`Sending ${t} intent to MS Clarity`),window.clarity("set","Cooee Intent",t))}static isInstalled(){return window.clarity&&typeof window.clarity=="function"}},ch=Se(Rr()),Pi=class{constructor(e,t){this._startTime=e,this._triggerData=t}intervals=[];selectedEmbeddedItems;renderer;closeCallback;inputFields=[];get startTime(){return this._startTime}get triggerData(){return this._triggerData}get inputs(){return this.inputFields}get rootClassName(){let e=this.triggerData.shortID??this.triggerData.id.slice(-6);return e==="test"&&(e="test-"+this.startTime.getTime().toString()),N.IN_APP_WRAPPER_NAME+"-"+e}get selectedItems(){return this.triggerData.items.filter(e=>e.selected.value)}get shouldGiveFBTDiscount(){let e=this.selectedItems.length;return this.triggerData.bundleConfig?.applyDiscountOnMinimum?this.triggerData.bundleConfig.applyDiscountOnMinimum<=e:e===this.triggerData.items.length}onClose(e){this.closeCallback=e}closeInApp(e,t){t??={};let r=(new Date().getTime()-this.startTime.getTime())/1e3,n=b({eventName:e,duration:r},t);this.stopIntervals(),this.closeCallback&&this.closeCallback(n)}addInputField(e,t){this.inputFields.push({id:e,type:t,isValid:!1})}updateValidation(e,t){this.inputFields.forEach(r=>{if(r.id===e){r.isValid=t;return}})}hasManipulatedProductQuantity(){let e=this.triggerData.manipulation.productQuantity;return e?.enabled&&e.min!=null&&e.max!=null}getManipulatedQuantity(e){let{min:t=1,max:r=100}=this.triggerData.manipulation.productQuantity;if(t>r)return w.error("Invalid range: min should be less than or equal to max."),e;if(e>=t&&e<=r)return e;let n=e%100;return n<t?t:n>r?r:n}stopIntervals(){this.intervals.forEach(e=>clearInterval(e))}},Ya=class{loadedFonts=[];async loadAllFonts(e){e.elems?.forEach(t=>{t instanceof br&&this.loadFamily(t.typography?.fam)})}async loadFamily(e){if(!e?.fonts||this.loadedFonts.indexOf(e.name)>-1)return;let t=[];e.fonts.forEach(r=>{if(r.url){let n=new FontFace(N.COOEE+e.name,r.getURL(),r.getFontDescriptor());t.push(n.load())}}),this.loadedFonts.push(e.name),(await Promise.all(t)).forEach(r=>{document.fonts.add(r)})}},za=class{static updateIdentity(e){if(!this.isInstalled())return;let t={};e.email&&(t.email=e.email),e.mobile&&(t.phone_number=e.mobile),w.debug("Sending email/mobile to Klaviyo"),window.klaviyo.push(["identify",t])}static isInstalled(){return window.klaviyo&&typeof window.klaviyo=="object"}},qa=Se(on()),Cr=class Bh{static INSTANCE=new Bh;topics={};constructor(){}static get(){return this.INSTANCE}broadcast(t,r){this.topics[t]||(this.topics[t]=new xt),this.topics[t].next(r)}subscriber(t){return this.topics[t]||(this.topics[t]=new xt),this.topics[t].asObservable()}},ze=class jr{static DEFAULT_SELECTOR="cart-drawer";static _instance;inShadow=!1;cartDrawerElement;cartDrawerShadowElement;configWebsite=Pe.get().website??{};currentState=!1;drawerSubject=new To({open:!1,firstOpen:!1});mutationObserver;firstOpen=!0;selector;shadowParentElementSelector;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=[jr.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(),document.addEventListener(N.CTA_AFTER_REFRESH_UI,this.updateBubble.bind(this))}get element(){return this.cartDrawerElement}static get(){return jr._instance||(jr._instance=new jr),jr._instance}static forceUpdate(){jr._instance=new jr}isOpen(){let t=this.inShadow?this.isPresent():this.isVisible();return qa.default.log(`Cart drawer is currently ${t?"open":"close"}`),t}open(){if(this.isOpen()){w.log("Drawer is already open");return}document.dispatchEvent(new CustomEvent(N.CTA_OPEN_CART_EVENT));let t=document.querySelector(this.iconSelector);if(!t){w.debug("No clickable cart icon found with selector",this.iconSelector);return}t.click()}onToggle(){return this.drawerSubject}isShopifyDefaultDrawer(){return this.element?.tagName.toLowerCase()===jr.DEFAULT_SELECTOR}isMiniCart(){return this.isShopifyDefaultDrawer()&&this.element?.id==="mini-cart"}refreshUI(t,r=!0){if(this.isMiniCart()&&this.element?._rerenderCart)this.element._rerenderCart({detail:{cart:t}});else if(this.isShopifyDefaultDrawer()&&this.element?.renderContents&&t)this.element.classList.remove("is-empty"),this.element.renderContents?.(t);else if(this.element?.onCartDrawerUpdate)this.element.onCartDrawerUpdate();else if(window.cartGiftUpdate){if(!t?.items?.[0])return;let n=t.items[0].id,i=t.items[0].quantity,s=t.items[0].price;window.cartGiftUpdate(n,s,i,"","ADD_TO_CART")}else if(window.icartCartActivityEvent)window.icartCartActivityEvent();else if(window.theme?.CartDrawer)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:!0,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():(w.info("No method found to update the cart drawer. Blindly firing some events to try"),document.dispatchEvent(new CustomEvent("cart:refresh",{bubbles:!0})));document.dispatchEvent(new CustomEvent(N.CTA_AFTER_REFRESH_UI)),r&&Cr.get().broadcast(N.CART_UPDATE_BROADCAST)}async initialize(){let t=this.configWebsite.cartDrawerSelector;if(!t){await this.findCartDrawer();return}let r=t.split(N.SHADOW_SPLITTER);r.length===1?(this.selector=r[0],await this.findCartDrawer()):(this.inShadow=!0,this.shadowParentElementSelector=r[0]?.trim(),this.selector=r[1]?.trim(),await this.findCartDrawerWithShadow())}async findCartDrawer(){if(!Me.isShopify())return;let t=this.selector||this.cartSelector;if(this.cartDrawerElement=await Q.retrySelector(t),!this.cartDrawerElement){qa.default.warn("Max attempts exhausted to find cart drawer");return}qa.default.log("Found",this.cartDrawerElement,`from selector: ${t}`),this.createMutationObservers()}async findCartDrawerWithShadow(){if(!Me.isShopify()||!this.shadowParentElementSelector)return;let t=(await Q.retrySelector(this.shadowParentElementSelector))?.shadowRoot;t?.mode==="open"&&(this.cartDrawerShadowElement=t,this.createMutationObservers())}isVisible(){if(!this.cartDrawerElement)return!1;if(this.cartDrawerElement.tagName.toLowerCase()===jr.DEFAULT_SELECTOR&&this.cartDrawerElement.open)return!0;if(this.cartDrawerElement.id==="cart-drawer__container")return this.cartDrawerElement.classList.contains("cart-drawer-open");let t=this.cartDrawerElement.getBoundingClientRect(),r=(window.innerHeight||document.documentElement.clientHeight)+.5,n=(window.innerWidth||document.documentElement.clientWidth)+.5,i=t.top<=r&&t.bottom>=0,s=t.left<=n&&t.right>=0,o=i&&s,c=getComputedStyle(this.cartDrawerElement),u=c.display!=="none"&&c.visibility!=="hidden"&&parseFloat(c.opacity)>0,d=!this.cartDrawerElement.hidden,m=this.cartDrawerElement.offsetWidth>0||this.cartDrawerElement.offsetHeight>0||this.cartDrawerElement.getClientRects().length>0,h=c.transform.match(/matrix\(([^)]+)\)/),y=0,E=0;if(h){let R=h[1].split(", ").map(parseFloat);y=R[4],E=R[5]}let v=y+t.left>n||y+t.right<0||E+t.top>r||E+t.bottom<0,_=Math.max(0,Math.min(t.right,n)-Math.max(t.left,0)),D=Math.max(0,Math.min(t.bottom,r)-Math.max(t.top,0)),P=_*D,M=t.width*t.height,L=M>0&&P/M>=.1;return(o||!v)&&u&&d&&m&&L}createMutationObservers(){!this.cartDrawerElement&&!this.cartDrawerShadowElement||(Q.onNodesRemoved(this.cartDrawerElement,()=>{this.initialize()}),this.watchForCartToggle())}watchForCartToggle(){let t=this.cartDrawerElement||this.cartDrawerShadowElement,r=new xt;this.mutationObserver?.disconnect(),this.mutationObserver=new MutationObserver(()=>{r.next()}),this.mutationObserver.observe(t,{attributes:!0,subtree:!0,childList:this.inShadow}),r.pipe(ar(500)).subscribe(()=>{let n=this.isOpen();this.currentState!==n&&(this.currentState=n,this.drawerSubject.next({open:n,firstOpen:this.firstOpen}),this.firstOpen&&(this.firstOpen=!1))})}isPresent(){return!this.selector||!this.cartDrawerShadowElement?!1:!!this.cartDrawerShadowElement.querySelector(this.selector)}async updateBubble(){let t=(await de.getCurrent().getNormalisedCart(!0)).itemCount,r=document.querySelector(".cart-link__bubble");r&&(r.innerText=t+"")}},Ur=Se(Rr()),ih=Se(nh()),Ln=class{static _flags={};static getFlags(){return this._flags}static setFlags(e){this._flags=e??{}}static isECommerceApp(){return Me.isShopify()}},J_=(0,ih.default)(fetch),Q_={retryDelay:N.API_CALL_RETRY_DELAY,retryOn:(e,t,r)=>e>=N.API_CALL_MAX_ATTEMPTS?!1:!!(t!==null||r?.status&&r?.status>=500)},ht=class $h{static INSTANCE;apiToken="";firstSeen="";constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new $h),this.INSTANCE}async validateSession(t){return this.post("/v1/event/validate-session",t)}updateUserData(t){this.put("/v1/user/update",t).then(async r=>{w.log("Updated user profile"),await Mn.getInstance().storeAndPopulateAuthData(r)}).catch(r=>{w.error("Error saving user profile",r)})}trackOrder(t){this.post("/v1/event/track-order",t).then(()=>{w.log("Sent Order")}).catch(r=>{w.error("Error sending track order",r)})}generateDiscount(t){return this.post("/v1/event/generate-discount",t)}updateDeviceProps(t){this.put("/v1/device/update",t).then(()=>{w.log("Updated device property")}).catch(async r=>{w.error("Error saving device property",r)})}setAPIToken(t){this.apiToken=t??""}setFirstSeen(t){this.firstSeen=t?.toUTCString()??""}get(t){return this.requestBackend("GET",t)}post(t,r){return this.requestBackend("POST",t,r)}put(t,r){return this.requestBackend("PUT",t,r)}async requestBackend(t,r,n){if(!Ln.isECommerceApp()&&!Ln.getFlags().allowEvents)return w.log(`Rejecting ${t} ${r} as this is not e-commerce app`),Promise.reject();r.startsWith("http")||(r=Rt.apiURL+r);let i=this.getDefaultHeaders(),s="keepalive"in new Request("");if(n&&!s&&JSON.stringify(n).includes("CE App Background"))try{return this.performXMLHttpRequest(r,i,n)}catch(c){return Le.getInstance().captureException(c,{body:JSON.stringify(n)}),{}}let o={method:t,headers:i,keepalive:!0};return n&&(o.body=JSON.stringify(n)),this.request(r,o)}async request(t,r){let n=b(b({},Q_),r),i=await J_(t,n);if(!i.ok)throw i;return i.json()}performXMLHttpRequest(t,r,n){return new Promise((i,s)=>{let o=new XMLHttpRequest;o.open("POST",t,!0),r.forEach((c,u)=>{o.setRequestHeader(u,c)}),o.onreadystatechange=()=>{if(o.readyState===XMLHttpRequest.DONE)if(o.status>=200&&o.status<300)try{o.getResponseHeader("Content-Type")?.includes("application/json")?i(JSON.parse(o.responseText)):s(new Error("Content-Type of response header is not json"))}catch(c){s(c)}else s(new Error(`Received status - ${o.status}(${o.statusText})`))},o.onerror=()=>{s(new Error("Network error occurred during the request."))},o.send(JSON.stringify(n))})}getDefaultHeaders(){let t=new Headers;return t.set("content-type","application/json"),t.set("cooee-sdk",N.SDK),t.set("cooee-sdk-code",N.SDK_VERSION_CODE.toString()),t.set("cooee-sdk-version",N.SDK_VERSION),t.set("cooee-first-seen",this.firstSeen),this.apiToken&&t.append("cooee-sdk-token",this.apiToken),Rt.debug&&t.set("cooee-sdk-debug",String(1)),t}},Z_=`
|
|
39
39
|
mutation cartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!]) {
|
|
40
40
|
cartDiscountCodesUpdate(cartId: $cartId, discountCodes: $discountCodes) {
|
|
41
41
|
cart {
|
|
@@ -47,7 +47,7 @@ mutation cartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!]) {
|
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
|
-
`,Zr=class{static navigate(e,t,r){let n=`${location.origin}/discount/${e}`;switch(
|
|
50
|
+
`,Zr=class{static navigate(e,t,r){let n=`${location.origin}/discount/${e}`;switch(w.log(`Applying discount code ${e}`,t,r),t){case Ur.RedirectBehaviour.CART_PAGE:location.href=`${n}?redirect=/cart`;break;case Ur.RedirectBehaviour.CART_DRAWER:location.href=`${n}?redirect=${location.pathname}#${N.HASH_OPEN_CART_DRAWER}=1`;break;case Ur.RedirectBehaviour.SHOPIFY_CHECKOUT:location.href=`${n}?redirect=/checkout`;break;case Ur.RedirectBehaviour.THIRD_PARTY_CHECKOUT:this.checkThirdPartyMethods(`${n}?redirect=/cart#${N.HASH_INITIATE_CHECKOUT}=1`);break;default:location.href=`${n}?redirect=${r||location.pathname}`}}static navigateWithoutDiscount(e,t){let r=ze.get();switch(e){case Ur.RedirectBehaviour.CART_PAGE:location.href="/cart";break;case Ur.RedirectBehaviour.SHOPIFY_CHECKOUT:location.href="/checkout";break;case Ur.RedirectBehaviour.THIRD_PARTY_CHECKOUT:this.checkThirdPartyMethods(`/cart#${N.HASH_INITIATE_CHECKOUT}=1`);break;case Ur.RedirectBehaviour.CART_DRAWER:{r.open();break}}t&&r.refreshUI(t)}static async applyWithStorefront(e){let t=Pe.get().storefrontToken;if(!t)throw new Error("Storefront token not set for the store");let r=new Headers;r.append("Content-Type","application/json"),r.append("X-Shopify-Storefront-Access-Token",t);let n=JSON.stringify({query:Z_,variables:{cartId:`gid://shopify/Cart/${de.getCurrent().token}`,discountCodes:[e]}}),i={method:"POST",headers:r,body:n};await ht.getInstance().request(N.GRAPHQL_API_PATH,i)}static checkThirdPartyMethods(e){window.triggerGokwikCustomCheckout?window.triggerGokwikCustomCheckout():window.shiprocketCheckoutEvents?.buyCart?window.shiprocketCheckoutEvents.buyCart():window.openCheckout?window.openCheckout():window.openRzpCheckout?window.openRzpCheckout():location.href=e}},oh=Se(ti()),eS=`
|
|
51
51
|
mutation cartCreate($input: CartInput) {
|
|
52
52
|
cartCreate(input: $input) {
|
|
53
53
|
cart {
|
|
@@ -60,11 +60,11 @@ mutation cartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!]) {
|
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
|
-
`,en=class{async performAddToCart(e,t){if(!e.length)return;let r=e.map(c=>{let{vID:u,quantity:d}=this.getVIDAndQuantity(c);return{id:u?+u:+c.mID,quantity:d,properties:t.getPrivateAttributesForLineItem()}}),n=Be.getCartURL("cart/add.js"),i={items:r},s=ze.get();s.isMiniCart()?i.sections=["mini-cart"]:s.isShopifyDefaultDrawer()&&(i.sections=s.element.getSectionsToRender?.().map(c=>c.section??c.id));let o=JSON.stringify(i);try{let c=await fetch(n,{body:o,method:"post",headers:{"Content-Type":"application/json"}});if(c.status===200||c.status===302)return b.log(`Added ${e.length} items to Cart`),Q.showSnackbar("Product added to your cart"),c.json()}catch(c){b.error("Failed to add product in cart",c)}}async performUpdate(e,t){if(!oh.JSUtils.hasKeys(t)){b.warn("No update fields provided");return}let r=Be.getCartURL("cart/change.js"),n=w({id:e.key},t),i=JSON.stringify(n);try{let s=await fetch(r,{body:i,method:"post",headers:{"Content-Type":"application/json"}});(s.status===200||s.status===302)&&(b.log(`Updated ${e}`),de.getCurrent().update(s.json()))}catch(s){b.error("Failed to update item in cart",s,e)}}async performCopyCoupon(e){if(e)try{await navigator.clipboard.writeText(e),b.log(`Code-${e} copied`),Q.showSnackbar("Discount code copied")}catch(t){b.error("Failed to copy code",t)}}performGoToItem(e){if(!e?.link)return;let t=Be.getProductSlug(e.link);t&&(location.pathname=Be.getRootPrefix()+"products/"+t)}async upgradeToSubscription(e,t){if(!e){b.warn("Trying to upgrade to subscription with no item");return}let r=await de.getCurrent().getNormalisedCart(),n=e.selectedOrFirstVariant.value,i=r.items.findIndex(d=>d.vID===n.mID),s=n.selectedSellingPlan.value,o=Be.getCartURL("cart/change.js"),c={line:i+1,selling_plan:s?.mID||null,properties:t.getPrivateAttributesForLineItem()},u=JSON.stringify(c);try{let d=await fetch(o,{body:u,method:"post",headers:{"Content-Type":"application/json"}});if(d.status===200||d.status===302){b.log(`Upgraded ${e} selling plan`),Q.showSnackbar("Line item updated");let m=await d.json();return de.getCurrent().update(m),m}}catch(d){b.error("Failed to update subscription for item in cart",d)}}async performCartCreate(e,t,r){let n=Pe.get().storefrontToken;if(!n)throw new Error("Storefront token not set for the store");if(!e?.vID){b.error("No variant ID found to perform Buy now",e);return}let i=t?[t]:[],s=[{merchandiseId:`gid://shopify/ProductVariant/${e.vID}`,quantity:1,attributes:r.getKVFormatPrivateAttributesForLineItem()}],o=await Q.getCartAttributes(),c=new Headers;c.append("Content-Type","application/json"),c.append("X-Shopify-Storefront-Access-Token",n);let u=JSON.stringify({query:eS,variables:{input:{lines:s,discountCodes:i,attributes:o}}});return(await ht.getInstance().request(N.GRAPHQL_API_PATH,{method:"POST",headers:c,body:u})).data?.cartCreate?.cart?.checkoutUrl}async processEvent(e){let t=e.clickAction,r=e.items,n=e.triggerData;if(t.at){let i=t;if(b.log(`Performing ${JSON.stringify(i)} action`),i.at===101)r?.length&&this.performGoToItem(r[0]);else if(i.at===102)r?.length&&await this.performAddToCart(r,n);else if(i.at===103)await this.performCopyCoupon(n.discount.code);else if(i.at===105)ze.get().open();else if(i.at===104){let s=e.collections;if(!s?.length)return;location.pathname=Be.getRootPrefix()+"collections/"+s[0].handle}}t.applyDiscount&&n.discount?.code&&Zr.navigate(n.discount.code,n.redirectBehaviour)}getVIDAndQuantity(e){let t,r;if(e instanceof ft)t=e.vID,r=e.quantity??1;else{if(!e.vars?.length)return{};t=e.selectedOrFirstVariant.value.mID,r=1}return{vID:t,quantity:r}}},Xa=class{apiService;action;triggerContext;constructor(e,t){this.action=e,this.apiService=fe.getInstance(),this.triggerContext=t}async execute(){let e=this.containsCTA()?N.EVENT_TRIGGER_CLICKED:N.EVENT_TRIGGER_CLOSED;switch(this.action.at!==106&&await this.closeTriggerAndSendEvent(e),this.action.at){case 2:break;case 4:this.gotoURLAction();break;case 5:this.shareAction();break;case 106:await this.collectFormData();break;case void 0:case 105:break;default:b.error("Received an invalid ClickActionType: ",this.action.at);return}}externalAction(){this.action.ext?.u&&window.open(this.action.ext.u,"_blank")?.focus()}gotoURLAction(){if(this.action.gu?.u){let e=this.action.gu.u;Q.isValidURL(e)||(e=`//${e}`),window.open(e,"_self")}}prompt(){let e=this.action.pmpt;e&&(e===2&&this.promptLocationPermission(),e===3&&this.promptPushNotificationPermission(),e===1&&this.promptCameraPermission())}async closeTriggerAndSendEvent(e,t){this.triggerContext.closeInApp(e,t),await this.dispatchEvent()}shareAction(){if(this.action.share){if(!navigator.share){b.warn("Navigator.share is not compatible with this browser");return}navigator.share({text:this.action.share.text,title:"Share"}).then(e=>console.log(e)).catch(e=>console.error(e))}}containsCTA(){return this.action.at&&this.action.at!==1?!0:!(this.isEmpty(this.action.custKV)&&this.isEmpty(this.action.up))}isEmpty(e){return e?Object.keys(e).length===0:!0}promptLocationPermission(){!navigator.geolocation||!navigator.permissions||navigator.geolocation.getCurrentPosition(e=>{this.apiService.updateDeviceProps({coords:[e.coords.latitude,e.coords.longitude]}),this.sendPermissionData()})}promptPushNotificationPermission(){if(!("Notification"in window)){b.warn("This browser does not support desktop notification");return}if(Notification.permission!=="default"){this.apiService.updateDeviceProps({pnPerm:Notification.permission});return}Notification.requestPermission().then(()=>{this.sendPermissionData()})}promptCameraPermission(){navigator.mediaDevices&&navigator.mediaDevices.getUserMedia({video:!0}).finally(()=>{this.sendPermissionData()})}checkPermission(e){return navigator.permissions.query({name:e}).then(t=>t.state.toString())}async checkAllPermission(){let e=await this.checkPermission("camera"),t=await this.checkPermission("geolocation"),r=Notification.permission;return{camera:e,location:t,notification:r}}sendPermissionData(){this.checkAllPermission().then(e=>{this.apiService.updateDeviceProps({perm:e})})}async collectFormData(){let e={};for(let t of this.triggerContext.inputs){if(!t.isValid)return;let r=document.getElementById(t.id).value;t.type===51?e.email=r:t.type===52&&(e.mobile=r)}await this.closeTriggerAndSendEvent(N.EVENT_FORM_SUBMITTED,{form:e}),Q.showSnackbar("Coupon applied on cart"),za.updateIdentity(e)}async dispatchEvent(){let e=this.triggerContext.triggerData,t={clickAction:this.action,items:this.triggerContext.selectedEmbeddedItems??e.embeddedItems??e.items,collections:e.collections,triggerData:e};await new en().processEvent(t);let r={action:this.containsCTA()?N.CAMPAIGN_CLICKED_ACTIVITY:N.CAMPAIGN_CLOSED_ACTIVITY};document.dispatchEvent(new CustomEvent(N.POPUP_ACTIVITY_EVENT,{detail:r}))}},Li=class{constructor(e){this.scalingFactor=e}getLayoutStyles(e){if(!e)return{display:"block"};let t={display:e.disp};return e.of&&(t.objectFit=e.of),e.pos==="absolute"&&(t.width="auto !important",t.position="absolute",t.right=e.right+"px",t.left=e.left+"px",t.top=e.top+"px",t.bottom=e.bottom+"px"),t}getSizeStyles(e){let t={};return e?.w&&(t.width=e.w),e?.h&&(t.height=e.h),e?.maxW&&(t.maxWidth=e.maxW),e?.maxH&&(t.maxHeight=e.maxH),e?.minW&&(t.minWidth=e.minW),e?.minH&&(t.minHeight=e.minH),t}getBorderStyles(e){if(!e)return{};let t={};return e.radius&&e.radius>0&&(t.borderRadius=this.getSizePx(e.radius)),e.width&&e.width>0&&(t.borderWidth=this.getSizePx(e.width),t.borderStyle=e.style?.toLowerCase(),e.color?this.getColourStyles(e.color,"border-color",t):t.borderColor="black"),t}getFlexStyles(e){return e?{gap:e.gap+"px",flexWrap:e.wrap,flexDirection:e.dir,justifyContent:e.jc,alignItems:e.ai,width:"100%"}:{}}getSpaceStyles(e){let t={};return e?(t.paddingTop=this.getSizePx(e.pt),t.paddingBottom=this.getSizePx(e.pb),t.paddingLeft=this.getSizePx(e.pl),t.paddingRight=this.getSizePx(e.pr),t.marginTop=this.getSizePx(e.mt),t.marginBottom=this.getSizePx(e.mb),t.marginLeft=e.cent?"auto":this.getSizePx(e.ml),t.marginRight=e.cent?"auto":this.getSizePx(e.mr),t):(t.margin="0 !important",t.padding="unset",t)}getBackgroundStyles(e){if(!e)return{};let t={};if(e.glossy){let r="backdrop-filter",n="-webkit-"+r,i=`blur(${e.glossy.radius}px)`;if(!CSS.supports(n,i)&&!CSS.supports(r,i))return{background:e.glossy.fallback.rgba};if(t[n]=i,t[r]=i,e.glossy.color)return this.getColourStyles(e.glossy.color,"background",t)}else if(e.solid){if(e.solid.grad)return this.getGradientStyles(e.solid.grad,"background",t);if(e.solid.hex)return{backgroundColor:e.solid.rgba}}else if(e.img){if(!e.img.src)return{};let r=(e.img.a??0)/100;t.background=`linear-gradient(rgba(0, 0, 0, ${r}), rgba(0, 0, 0, ${r})),url("${e.img.src}") no-repeat center`,t.backgroundSize="cover",e.img.a&&(t["-webkit-backdrop-filter"]=`opacity(${e.img.a})`,t.backdropFilter=`opacity(${e.img.a})`)}return t}getGradientStyles(e,t,r){if(r??={},e.type==="LINEAR"){let n=`linear-gradient(${e.ang}deg, ${e.c1}, ${e.c2}`;e.c3&&(n+=`, ${e.c3}`),n+=")",r[t]=n}return r}getColourStyles(e,t="color",r){return r??={},e?e.grad?this.getGradientStyles(e.grad,t,r):(e.hex&&(r[t]=e.rgba),r):r}getSizePx(e){return this.getScaledSize(e)+"px"}getScaledSize(e){return(e??0)*this.scalingFactor}},Zt=class{renderer=Bt.get();parentHTMLEl;inappElement;inappHTMLEl;triggerContext;stylesConverter;scalingFactor;constructor(e,t,r){this.parentHTMLEl=e,this.inappElement=t,this.triggerContext=r,this.stylesConverter=new Li(this.renderer.getScalingFactor())}getHTMLElement(){return this.inappHTMLEl}insertElement(){this.renderer.appendChild(this.parentHTMLEl,this.inappHTMLEl)}processCommonBlocks(){this.processWidthAndHeight(),this.processPositionBlock(),this.processTransformBlock(),this.processTransparency(),this.processShadow(),this.registerAction();let e=te(w(w(w(w({},this.getDisplayStyles()),this.getSpaceStyles()),this.getBorderStyles()),this.getBackgroundStyles()),{boxSizing:"border-box",outline:"none"});this.renderer.setStyles(this.inappHTMLEl,e)}getDisplayStyles(){return{display:"block"}}processWidthAndHeight(){this.inappElement.w&&this.renderer.setStyle(this.inappHTMLEl,"width",this.stylesConverter.getSizePx(this.inappElement.w)),this.inappElement.h&&this.renderer.setStyle(this.inappHTMLEl,"height",this.stylesConverter.getSizePx(this.inappElement.h))}processPositionBlock(){let e={position:"absolute",left:this.stylesConverter.getSizePx(this.inappElement.x),top:this.stylesConverter.getSizePx(this.inappElement.y)};this.renderer.setStyles(this.inappHTMLEl,e)}getBorderStyles(){return this.stylesConverter.getBorderStyles(this.inappElement.br)}getSpaceStyles(){return this.stylesConverter.getSpaceStyles(this.inappElement.spc)}processTransparency(){let e=this.inappElement.alpha;if(!isNaN(e)){let t=(e/100).toFixed(2);this.renderer.setStyle(this.inappHTMLEl,"opacity",t)}}processShadow(){let e=this.inappElement.shd;e?this.renderer.setStyle(this.inappHTMLEl,"box-shadow",e.getStyle(this.scalingFactor)):this.renderer.setStyle(this.inappHTMLEl,"box-shadow","unset")}processTransformBlock(){let e=new En(this.inappElement.trf);e&&e.rotate&&this.renderer.setStyle(this.inappHTMLEl,"transform",`rotate(${e.rotate}deg)`)}registerAction(){let e=this.inappElement.clc;!e||Object.keys(e).length===0||(this.inappHTMLEl.addEventListener("click",t=>{t.stopPropagation(),new Xa(e,this.triggerContext).execute()}),this.renderer.setStyle(this.inappHTMLEl,"cursor","pointer"))}getBackgroundStyles(){return this.stylesConverter.getBackgroundStyles(this.inappElement.bg)}},xr=class extends Zt{constructor(e,t,r){super(e,t,r)}processCommonBlocks(){super.processCommonBlocks(),this.processFontBlock(),this.processAlignment()}processFontBlock(){let e={},t=this.inappElement.typography;return t&&(e.fontSize=this.stylesConverter.getSizePx(t.fs),e.fontFamily=N.COOEE+t.fam?.name,e.lineHeight=`${t.lh}`,e.letterSpacing=t.letterSpacing),this.stylesConverter.getColourStyles(this.inappElement.color,"color",e),this.renderer.setStyles(this.inappHTMLEl,e),e}processPart(e,t){let r=[];t.u&&r.push("underline"),t.st&&r.push("line-through"),r.length||r.push("normal"),this.renderer.setStyle(e,"font-weight",t.b?"bold":"normal"),this.renderer.setStyle(e,"font-style",t.i?"italic":"normal"),this.renderer.setStyle(e,"text-decoration",r.join(" ")),this.renderer.setStyle(e,"color",t.c??"inherit"),this.renderer.setStyle(e,"font-family","inherit")}processAlignment(){let e=this.inappElement.typography.ta,t=e?pi[e]?.toLowerCase():this.inappElement.typography.alignment;t||(t="start"),this.renderer.setStyle(this.inappHTMLEl,"text-align",t)}},Oo=class extends xr{constructor(e,t,r){super(e,t,r),this.inappHTMLEl=this.renderer.createElement("div"),this.insertElement()}render(){this.inappElement.parts?.forEach(e=>{let t=this.renderer.createElement("span");t.innerHTML=e.txt?.toString()?.replace(/\n/g,"<br />"),this.processPart(t,e),this.renderer.appendChild(this.inappHTMLEl,t)}),this.processCommonBlocks()}},Po=class extends Zt{constructor(e,t,r){super(e,t,r),this.inappHTMLEl=this.renderer.createElement("div"),this.insertElement()}render(){this.processCommonBlocks()}},Un=class extends Zt{constructor(e,t,r){super(e,t,r),this.inappHTMLEl=this.renderer.createElement("img"),this.insertElement()}render(){this.renderer.setAttribute(this.inappHTMLEl,"src",this.inappElement.src),this.renderer.setStyle(this.inappHTMLEl,"max-width","none"),this.renderer.setStyle(this.inappHTMLEl,"max-height","none"),this.renderer.setStyle(this.inappHTMLEl,"margin","0 auto"),this.processCommonBlocks()}},Lo=class jh extends Zt{constructor(t,r,n){super(t,r,n),this.parent=t,this.inappHTMLEl=this.renderer.createElement("div")}static MAX_Z_INDEX="2147483647";render(){return this.parent||this.renderer.removeInApp(this.triggerContext),this.insertElement(),this.processCommonBlocks(),this.inappHTMLEl.classList.add(N.IN_APP_WRAPPER_NAME),this.inappHTMLEl.classList.add(this.triggerContext.rootClassName),this.renderer.setStyle(this.inappHTMLEl,"z-index",jh.MAX_Z_INDEX),this.inappHTMLEl}getBackgroundStyles(){return this.inappElement.cover?super.getBackgroundStyles():{}}processWidthAndHeight(){let t=this.inappElement.cont;if(this.inappElement.cover)this.renderer.isParentNotBody()?(this.renderer.setStyle(this.inappHTMLEl,"width","100%"),this.renderer.setStyle(this.inappHTMLEl,"height","100%")):(this.renderer.setStyle(this.inappHTMLEl,"width","100vw"),this.renderer.setStyle(this.inappHTMLEl,"height","100vh")),this.renderer.setStyle(this.inappHTMLEl,"top","0"),this.renderer.setStyle(this.inappHTMLEl,"left","0");else{let r=this.inappElement.spc,n=this.stylesConverter.getScaledSize(t.w)+r.getHorizontal(),i=this.stylesConverter.getScaledSize(t.h)+r.getVertical();this.renderer.setStyle(this.inappHTMLEl,"width",n+"px"),this.renderer.setStyle(this.inappHTMLEl,"height",i+"px")}}getSpaceStyles(){return{padding:this.inappElement.spc.getPaddingCSS()}}getDisplayStyles(){return w(w({display:"flex"},this.inappElement.getStylesForWrapper()),this.inappElement.getFlexStylesForContainer())}processPositionBlock(){if(this.renderer.isParentNotBody()){if(this.triggerContext.triggerData.ian?.isEmbedded()){this.renderer.setStyle(this.inappHTMLEl,"position","block");return}this.renderer.setStyle(this.inappHTMLEl,"position","absolute")}else this.renderer.setStyle(this.inappHTMLEl,"position","fixed")}getBorderStyles(){return{}}processTransparency(){}processTransformBlock(){}processShadow(){}},Ja=class extends Zt{constructor(e,t,r){super(e,t,r),this.inappHTMLEl=this.renderer.createElement("div"),this.insertElement()}render(){return this.processCommonBlocks(),this.renderer.setStyle(this.inappHTMLEl,"position","relative"),this.renderer.setStyle(this.inappHTMLEl,"overflow","hidden"),this.inappHTMLEl.classList.add(N.IN_APP_CONTAINER_NAME),this}},Bi=class extends xr{borderColor="";constructor(e,t,r){super(e,t,r),this.inappHTMLEl=this.renderer.createElement("input"),this.insertElement()}render(){let e=this.setInputType();this.renderer.setAttribute(this.inappHTMLEl,"placeholder",this.inappElement.placeholderText),this.renderer.setStyle(this.inappHTMLEl,"background","#ffffff00"),this.renderer.setStyle(this.inappHTMLEl,"outline","none"),this.inappHTMLEl.addEventListener("click",t=>{t.stopPropagation()}),this.processCommonBlocks(),this.addListener(this.inappHTMLEl,e),this.triggerContext.addInputField(e,this.inappElement.t)}},Qa=class Fh extends Bi{static EMAIL_REGEX=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;constructor(t,r,n){super(t,r,n)}setInputType(){let t=`coo-${this.inappElement.t}`;return this.renderer.setAttribute(this.inappHTMLEl,"type","email"),this.renderer.setAttribute(this.inappHTMLEl,"id",t),t}addListener(t,r){t.addEventListener("keydown",n=>{this.borderColor||(this.borderColor=this.inappHTMLEl.style.borderColor),t.value.match(Fh.EMAIL_REGEX)?(this.renderer.setStyle(this.inappHTMLEl,"border-color",this.borderColor),this.triggerContext.updateValidation(r,!0)):(this.renderer.setStyle(this.inappHTMLEl,"border-color","red"),this.triggerContext.updateValidation(r,!1)),n.stopPropagation()})}},Za=class Vh extends Bi{static MOBILE_REGEX=/^\d+$/;constructor(t,r,n){super(t,r,n)}setInputType(){let t=`coo-${this.inappElement.t}`;return this.renderer.setAttribute(this.inappHTMLEl,"type","tel"),this.renderer.setAttribute(this.inappHTMLEl,"id",t),t}addListener(t,r){t.addEventListener("keydown",n=>{this.borderColor||(this.borderColor=this.inappHTMLEl.style.borderColor),t.value.match(Vh.MOBILE_REGEX)?(this.renderer.setStyle(this.inappHTMLEl,"border-color",this.borderColor),this.triggerContext.updateValidation(r,!0)):(this.renderer.setStyle(this.inappHTMLEl,"border-color","red"),this.triggerContext.updateValidation(r,!1)),n.stopPropagation()})}},ec=class Fn extends xr{static DAYS="Days";static HOURS="Hours";static MINUTES="Minutes";static SECONDS="Seconds";elements;spans=[];constructor(t,r,n){super(t,r,n),this.inappHTMLEl=this.renderer.createElement("div"),this.insertElement()}render(){this.addTimerChildren(),this.processAndStartTimer(),this.processCommonBlocks();let t=te(w(w(w({flex:"1 1 0"},this.stylesConverter.getBackgroundStyles(this.inappElement.bg)),this.stylesConverter.getBorderStyles(this.inappElement.br)),this.stylesConverter.getSpaceStyles(this.inappElement.spc)),{marginLeft:this.stylesConverter.getSizePx(this.inappElement.gap),marginRight:this.stylesConverter.getSizePx(this.inappElement.gap)});this.addStylesToTimer(t)}getBackgroundStyles(){return{}}processFontBlock(){let t=super.processFontBlock();return this.stylesConverter.getColourStyles(this.inappElement.color,"color",t),this.addStylesToTimer(t),t}getSpaceStyles(){return{}}getBorderStyles(){return{}}getDisplayStyles(){return{display:"flex",flexWrap:"nowrap",justifyContent:"center"}}addStylesToTimer(t){this.elements.forEach(r=>this.renderer.setStyles(r,t))}addTimerChildren(){let t=this.inappElement.show;this.elements=[],t.day&&this.elements.push(this.getChild(Fn.DAYS)),t.hour&&this.elements.push(this.getChild(Fn.HOURS)),t.minute&&this.elements.push(this.getChild(Fn.MINUTES)),t.second&&this.elements.push(this.getChild(Fn.SECONDS)),this.elements.forEach(r=>this.inappHTMLEl.appendChild(r))}getChild(t){let r=this.renderer.createElement("div"),n=this.renderer.createElement("span"),i=this.renderer.createElement("span");return i.innerText=t,n.innerText="00",n.id=`lc-${t}`,this.renderer.setStyle(i,"font-size","0.5em"),this.renderer.setStyle(i,"text-align","center"),this.renderer.setStyle(i,"font-family","inherit"),this.renderer.setStyle(n,"text-align","center"),this.renderer.setStyle(n,"font-family","inherit"),this.inappElement.lblPos==="start"?(r.appendChild(i),r.appendChild(n)):(r.appendChild(n),r.appendChild(i)),this.renderer.setStyle(r,"display","flex"),this.renderer.setStyle(r,"flex-direction",this.inappElement.horizontal?"":"column"),this.renderer.setStyle(r,"justify-content","center"),this.renderer.setStyle(r,"align-items","center"),this.renderer.setStyle(r,"gap","5px"),this.spans.push(n),r}processAndStartTimer(){let t=this.inappElement.timer.start(this.inappElement.timerType,r=>{this.spans.forEach(n=>{n.id===`lc-${Fn.DAYS}`?n.innerText=String(r.days).padStart(2,"0"):n.id===`lc-${Fn.HOURS}`?n.innerText=String(r.hours).padStart(2,"0"):n.id===`lc-${Fn.MINUTES}`?n.innerText=String(r.minutes).padStart(2,"0"):n.id===`lc-${Fn.SECONDS}`&&(n.innerText=String(r.seconds).padStart(2,"0"))})});this.triggerContext.intervals.push(t)}},tc=class extends xr{constructor(e,t,r){super(e,t,r),this.inappHTMLEl=this.renderer.createElement("select"),this.insertElement()}render(){this.renderer.setStyle(this.inappHTMLEl,"background","#ffffff00"),this.renderer.setStyle(this.inappHTMLEl,"outline","none"),this.processCommonBlocks(),this.addListener(this.inappHTMLEl),this.addOptions()}addListener(e){this.triggerContext.selectedEmbeddedItems?.length||this.updateItems(this.triggerContext.triggerData.items[0].vars[0]),e.addEventListener("click",t=>{t.stopPropagation()}),e.addEventListener("change",()=>{let t=new Sr(JSON.parse(e.value));this.updateItems(t)})}updateItems(e){let t=this.triggerContext.triggerData.items[0];this.triggerContext.selectedEmbeddedItems=[t.toEmbed(e)];let r=this.parentHTMLEl.querySelector("#coo-13");if(!r)return;let n=e.imgs[0]??t.imgs?.at(0);n?.url&&r.setAttribute("src",n.url)}addOptions(){let e=this.triggerContext.triggerData.items,t=this.inappHTMLEl;if(!e?.length){t.add(this.createOption(this.inappElement.placeholderText));return}let r=this.triggerContext.selectedEmbeddedItems?.at(0);e[0].vars.forEach(n=>{t.add(this.createOption(n.name??"Default",n,n.mID===r?.vID))})}createOption(e,t,r){let n=this.renderer.createElement("option");return n.text=e,n.value=JSON.stringify(t),r&&(n.selected=!0),t||(n.disabled=!0),n}},rc=class extends Un{constructor(e,t,r){super(e,t,r)}render(){super.render(),this.inappHTMLEl.setAttribute("id",`coo-${this.inappElement.type}`)}},Ui=class qo{static ACTIVE_TRIGGER_DATA;renderer=Bt.get();safeHTTP;parent;rootContainer;containerHTMLElement;ian;triggerContext;resizeListener;cartDrawerToggleSubscription;constructor(t){this.safeHTTP=fe.getInstance(),this.resizeListener=()=>this.screenResized(),this.setParentContainer(t)}setParentContainer(t){this.parent=t??document.body,this.renderer.setParentContainer(this.parent)}render(t){this.renderEngagement(new Ct(t))}async renderEngagement(t){if(this.triggerContext=new Pi(new Date,t),this.triggerContext.onClose(r=>{this.closeInApp(r)}),this.ian=t.ian,(this.renderer.isMobile()||t.previewType==="mobile")&&this.ian.overrideForMobileView(),this.ian.isEmbedded()){let r=document.querySelector(this.ian.getEmbeddedSelector());this.setParentContainer(r)}await this.preloadImages(t),t.shouldDelay()?window.setTimeout(()=>{this.withCartDrawerClosed()},t.getDelaySeconds()):this.withCartDrawerClosed()}withCartDrawerClosed(){if(!ze.get().isOpen()||!this.renderer.isMobile()){this.startRenderingOnce();return}this.cartDrawerToggleSubscription=ze.get().onToggle().subscribe(({open:t})=>{!t&&this.startRenderingOnce()})}startRenderingOnce(){if(!this.shouldSkipCampaign()){qo.ACTIVE_TRIGGER_DATA=this.triggerContext.triggerData;try{this.startRendering()}catch(t){Le.getInstance().captureException(t,{triggerData:JSON.stringify(this.triggerContext.triggerData)});return}this.sendTriggerDisplayed(),this.renderer.isMobile()||window.addEventListener("resize",this.resizeListener),this.cartDrawerToggleSubscription?.unsubscribe()}}shouldSkipCampaign(){let t=this.triggerContext.triggerData;if(!t.previewType&&qo.ACTIVE_TRIGGER_DATA){let n={triggerShown:new Qr(qo.ACTIVE_TRIGGER_DATA??{})};return this.skipTrigger(t,n),!0}if(ue.get().isGoKwikPopupOpen)return this.skipTrigger(t,{reason:"GoKwik popup is open"}),!0;let r=N.PAYMENT_MODAL_DETAILS.find(n=>!!document.querySelector(n.identifier));return r?(this.skipTrigger(t,{reason:`${r.gateway} modal is open`}),!0):!1}startRendering(){this.renderer.calculateScalingFactor(this.ian),this.rootContainer=new Lo(this.parent,this.ian,this.triggerContext).render();try{this.renderContainer(this.triggerContext)}catch(t){throw b.error(t),t}}sendTriggerDisplayed(){let t={};this.triggerContext.triggerData.items?.length&&(t.promotedMIDs=this.triggerContext.triggerData.items?.map(i=>i.mID));let r=new Ee(N.EVENT_TRIGGER_DISPLAYED,t,this.triggerContext.triggerData);this.safeHTTP.sendEvent(r);let n={action:N.CAMPAIGN_DISPLAYED_ACTIVITY};document.dispatchEvent(new CustomEvent(N.POPUP_ACTIVITY_EVENT,{detail:n}))}sendTriggerClosed(t){let r=t.eventName;delete t.eventName;let n=new Ee(r,t,this.triggerContext.triggerData);n.name===N.EVENT_TRIGGER_CLICKED&&(n.items=this.triggerContext.selectedEmbeddedItems??this.triggerContext.triggerData.items?.map(i=>i.toEmbed())),this.safeHTTP.sendEvent(n)}addEnterAnimation(t){this.containerHTMLElement.animate(t.getEnterAnimation(),{duration:500})}renderElement(t,r,n){r instanceof hi?new Qa(t,r,n).render():r instanceof gi?new Za(t,r,n).render():r instanceof Yr?new Oo(t,r,n).render():r instanceof yi?new rc(t,r,n).render():r instanceof Br?new Un(t,r,n).render():r instanceof _n?new Po(t,r,n).render():r instanceof mi?new ec(t,r,n).render():r instanceof di?new tc(t,r,n).render():b.error("Unsupported element type- "+r.type)}renderContainer(t){let r=this.ian?.cont;r&&(this.containerHTMLElement=new Ja(this.rootContainer,r,t).render().getHTMLElement(),new Ya().loadAllFonts(this.ian),this.ian.elems?.forEach(async n=>{await this.renderElement(this.containerHTMLElement,n,t)}),this.addEnterAnimation(this.ian.anim))}closeInApp(t){let r=this.ian.anim.getExitAnimation();this.sendTriggerClosed(t),qo.ACTIVE_TRIGGER_DATA=void 0;let n=this.containerHTMLElement.animate(r,{duration:500,easing:"ease-in-out"});n.onfinish=()=>{this.removeInApp(),window.removeEventListener("resize",this.resizeListener)}}screenResized(){this.removeInApp(),this.startRendering()}removeInApp(){Bt.get().removeInApp(this.triggerContext)}skipTrigger(t,r){let n=new Ee(N.EVENT_CAMPAIGN_REJECTED,r,t);this.safeHTTP.sendEvent(n)}async preloadImages(t){let r=t.ian;if(!r)return;let n=[];r.elems.forEach(i=>{let s=i.bg?.img?.src;if(s&&n.push(this.getPromise(s)),i.t===1){let o=i.src;if(!o)return;n.push(this.getPromise(o))}}),r.bg?.img?.src&&n.push(this.getPromise(r.bg.img.src)),r.cont.bg?.img?.src&&n.push(this.getPromise(r.cont.bg.img.src)),await Promise.all(n)}getPromise(t){return new Promise(r=>{let n=new Image;n.onload=r,n.src=t,n.style.display="none"})}},sh=Se(Rr()),ah=Se(ti()),nc=class{triggerData;safeHttpService=fe.getInstance();render(e){e.contentSource===sh.EngagementContentSource.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){b.warn("Received invalid trigger callback");return}switch(t.type){case"open":this.safeHttpService.sendEvent(new Ee(N.EVENT_TRIGGER_DISPLAYED,{form:{id:t.formId}},this.triggerData));break;case"stepSubmit":{let r=this.getFormDetails(t);this.safeHttpService.sendEvent(new Ee(N.EVENT_FORM_SUBMITTED,{form:r},this.triggerData)),this.safeHttpService.updateProfile(r);break}case"close":window.removeEventListener("klaviyoForms",this.handleKlaviyoEvents.bind(this)),this.safeHttpService.sendEvent(new Ee(N.EVENT_TRIGGER_CLOSED,{form:{id:t.formId}},this.triggerData));break}}getFormDetails(e){let t={id:e.formId},r=e.metaData;if(ah.JSUtils.hasKeys(r)){let n=["email","phone_number","first_name","last_name","$email","$phone_number","$first_name","$last_name"];Object.keys(r).forEach(o=>{n.includes(o)||(t[o]=r[o])}),t.email=r.$email??r.email,t.mobile=r.$phone_number??r.phone_number;let i=r.$first_name??r.first_name,s=r.$last_name??r.last_name;(i?.length||s?.length)&&(t.name=i+" "+s)}return t}},ic=class{static trackIntent(e){if(!this.isInstalled()){b.log("Facebook pixel not installed");return}if(!Pe.get().pixelPush){b.log("Facebook pixel push not enabled");return}let t=Sn[e.intent]?.toLowerCase(),r=e.segmentName;!t&&!r||(b.debug(`Sending ${t} intent and ${r} segment to Facebook Pixel`),window.fbq("trackCustom","CooeeIntent",{intent_value:t,segment_value:e.segmentName}))}static isInstalled(){return window.fbq&&typeof window.fbq=="function"}},Mi=class{static sentryService=Le.getInstance();static httpApiService=ht.getInstance();static async refreshItems(e){if(e.isCartEmbed()&&!e.isSubscriptionUpsell()){let i=(await de.getCurrent().getNormalisedCart()).items.map(s=>s.mID);e.items=e.items.filter(s=>!i.includes(s.mID))}if(Pe.get().currencyCount<=1)return e.items;let t=e.items.length,r=e.items.map(i=>this.updatedItem(i,e.engagementID)),n=(await Promise.all(r)).filter(i=>i!=null);if(t&&!n.length){let i="Failed to fetch any product from Ajax API",s=new Ee(N.EVENT_CAMPAIGN_FAILED,{reason:i,currency:e.currency},e);throw fe.getInstance().sendEvent(s),new Error(i)}if(e.isCartRecovery()){let i=de.getCurrent().items,s=[];for(let o of n)for(let c of o.vars){if(!c.isAvailable)continue;let u=i.find(h=>h.variant_id.toString()===c.mID);if(!u)continue;let d=new At(o);d.name=u.title;let m=new Sr(c);m.name=u.variant_title,m.price.d=u.discounted_price/100,d.variants=[m],s.push(d)}return s}return n}static async updatedItem(e,t){let r=e,n,i=`/products/${r.slug}.js`;try{n=await this.httpApiService.request(i)}catch(o){return b.error(`Failed to fetch ${i}`,o),o instanceof Response?this.sentryService.captureMessage(`Shopify product fetch failed ${o.status}`,"error",{item:r,path:i},{"engagement.id":t}):this.sentryService.captureException(o,{item:r,path:i},{"engagement.id":t}),null}if(!n)return b.error("Item not found after AJAX call for:",r),null;r.name=n.title,r.tags=n.tags;let s=r.selectedOrFirstVariant.value;return r.vars.map(o=>{let c=n.variants.find(u=>u.id===+o.mID);o.name=c.title,o.isAvailable=c.available,o.price.d=c.price?c.price/100:c.price,o.price.effective=o.price.d,o.price.cmp=c.compare_at_price?c.compare_at_price/100:c.compare_at_price,+s.mID===c.id&&(s.effectivePrice.value=o.price.d)}),r}},oc=class Hh{static INSTANCE;httpService=se.get(ht);sentryService=se.get(Le);sessionManager=se.get(qe);runtime=ue.get();constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Hh),this.INSTANCE}sendSilently(t){this.send(t).catch(r=>b.error(`Failed to send ${t.name}`,r))}async send(t){if(b.debug(`Sending event ${t.name}`),er.prepend(`Sending event <strong>${t.name}</strong> with id ${t.id}`),this.shouldReject(t)){b.warn(`Rejecting event ${t.name}`);return}await Promise.all([this.addSessionContext(t),this.addShopifyContext(t)]),this.addShopifyAttributes(),t.name!==N.EVENT_APP_BACKGROUND&&this.runtime.setActive(),t.currentItem=this.runtime.getCurrentItem(),t.locale=this.runtime.locale,this.httpService.post("/v1/event/track",t).then(async r=>{b.log("\u2705 Event tracked:",t.name),er.prepend(`\u2705 Event <strong>${r.eventName}</strong> tracked`),this.processEventResponse(t,r)}).catch(r=>{b.error(`Error sending event ${t.name} to server`,r)})}shouldReject(t){return t.trigger?.triggerID==="test"||t.trigger?.triggerID==="preview"?(b.warn("Not sending event as this is a test trigger"),!0):!1}async addSessionContext(t){let r=await this.sessionManager.checkSessionAndGetContext();t.sessionID=r[0],t.sessionNumber=r[1],t.landingPage=r[2],t.page=Tr.parseFromCurrent()}async addShopifyContext(t){if(Be.isShopify())try{t.cart=await de.getCurrent().getNormalisedCart()}catch(r){b.error("Error fetching Shopify cart before sending the event",r)}}processEventResponse(t,r){this.renderWidgetIfAny(t,r).catch(n=>{b.error("Failed to display a campaign",n,t,r),this.sentryService.captureException(n,{event:t,response:r})}),this.utiliseIntentIfCalculated(r)}async renderWidgetIfAny(t,r){if(!r.triggerData){b.log(`Nothing to engage after ${t.name}`);return}b.log(`\u{1F4E3} Engagement(id=${r.triggerData.shortID}) will be shown`,r.triggerData);let n=new Ct(r.triggerData);n.occurred=t.occurred;let i;try{i=await Mi.refreshItems(n)}catch(s){b.error("Failed to refresh the products",s);return}if(n.items=i,n.contentSource===ch.EngagementContentSource.KLAVIYO){new nc().render(n);return}new Ui().renderEngagement(n).catch(s=>{b.error("Failed to render popup",s),this.sentryService.captureException(s,{event:t,triggerData:n})})}utiliseIntentIfCalculated(t){t.intent&&(Oi.trackIntent(t.intent),ic.trackIntent(t),er.prepend(`Intent is <strong>${Sn[t.intent]}</strong>`))}addShopifyAttributes(){Be.isShopify()&&de.getCurrent().addCooeeAttributes().catch(t=>{b.error("Fail to add attributes in cart",t)})}},fe=class qh{static INSTANCE;httpApiService=ht.getInstance();eventAPIService=oc.getInstance();constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new qh),this.INSTANCE}sendEvent(t){b.debug(`Waiting for auth to send event ${t.name}`),qe.replaySubject.subscribe(async()=>{this.eventAPIService.sendSilently(t)})}updateProfile(t){qe.replaySubject.subscribe(()=>{this.httpApiService.updateUserData(t??{})})}trackOrder(t){qe.replaySubject.subscribe(()=>{this.httpApiService.trackOrder(t)})}updateDeviceProps(t){qe.replaySubject.subscribe(()=>{this.httpApiService.updateDeviceProps({props:t})})}generateDiscount(t){return this.httpApiService.generateDiscount(t)}},er=class{static isOn=!1;static element;static watch(){let e=b.getDebugParam();(e==="1"||e==="on")&&fe.getInstance().updateDeviceProps({debugTill:this.getDebugMillis()}),e==="on"?sessionStorage.cooeeDebug="1":e==="off"&&sessionStorage.removeItem("cooeeDebug"),sessionStorage.cooeeDebug&&(this.isOn=!0,this.renderDebugBar())}static prepend(e){if(!this.isOn)return;let t=document.createElement("div");t.innerHTML="• "+new Date().toLocaleString()+" - "+e,this.element.prepend(t)}static renderDebugBar(){this.element=document.createElement("div"),this.element.id="cooee-debugger",this.element.setAttribute("draggable","true"),document.body.appendChild(this.element)}static dragElement(){let e=0,t=0,r=0,n=0,i=c=>{c=c||window.event,c.preventDefault(),r=c.clientX,n=c.clientY,document.onmouseup=o,document.onmousemove=s},s=c=>{c=c||window.event,c.preventDefault(),e=r-c.clientX,t=n-c.clientY,r=c.clientX,n=c.clientY,this.element.style.top=this.element.offsetTop-t+"px",this.element.style.left=this.element.offsetLeft-e+"px"},o=()=>{document.onmouseup=null,document.onmousemove=null};this.element.onmousedown=i}static getDebugMillis(){return new Date().getTime()+6*60*60*1e3}},Bo=class extends Wr{static storeName="app";static{this.storage=Qn(this.storeName)}},sc=class{static processConfiguration(){let e=Pe.get();!e.gaMeasurementID||!e.gaEnabled||this.sendClientID()}static async sendClientID(){let e=await this.getClientID();e&&fe.getInstance().updateDeviceProps({gaClientID:e})}static async getClientID(){let e=await De.get(oe.GA_CLIENT_ID),t=await this.getClientIDViaGTag();if(e!==t)return await De.set(oe.GA_CLIENT_ID,t),t}static async getClientIDViaGTag(){let e=Pe.get().gaMeasurementID;if(!(!e||!window.gtag))return new Promise(t=>{window.gtag("get",e,"client_id",r=>{t(r)})})}},ac=class Gh{static INSTANCE;constructor(){this.init()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Gh),this.INSTANCE}init(){Bo.get(oe.APP_CONFIG,{}).then(t=>this.updateGlobalConfig(t))}async processAppConfigurations(t){b.log("Received app configuration",t),t.currencyCount=t.currencies?.length;let r=this.updateGlobalConfig(t);Bo.set(oe.APP_CONFIG,r).catch(n=>b.error(n)),sc.processConfiguration(),r.website&&(st.injectRawScript(r.website.commonJS),st.injectRawCSS(r.website.commonCSS)),ze.get().onToggle().subscribe(async({open:n})=>{b.info("Cart drawer is now",n?"open":"closed"),n&&(se.get(cr).loadOrRenderWidgetsAfterCartChange(),await this.trackViewCartEvent())})}updateGlobalConfig(t){let r=be.globalRef.config.update(t);return ze.forceUpdate(),b.debug("App configurations",r),r}async trackViewCartEvent(){let t=await de.getCurrent().getNormalisedCart(),r={value:t.amount,currency:t.currency},n={items:t.items,amount:r,drawer:!0};fe.getInstance().sendEvent(new Ee(N.EVENT_VIEW_CART,n))}},lh=Se(Xu()),cc=class Pc{static META_REQUIRED_FIELDS=["ad_id"];static GOOGLE_REQUIRED_FIELDS=["gad_source","gclid"];source;adID;campaignID;adName;campaignName;constructor(t){this.adID=t.adID,this.campaignID=t.campaignID,this.source=t.source}static getAdParams(){let t;try{t=new lh.URLBuilder(location.href)}catch{return{}}let r={};if(this.META_REQUIRED_FIELDS.every(n=>Array.from(t.getParams().keys()).includes(n)))return r={source:"META",adID:t.getQueryParam("ad_id")?.trim(),campaignID:t.getQueryParam("campaign_id")?.trim()},new Pc(r);if(this.GOOGLE_REQUIRED_FIELDS.every(n=>Array.from(t.getParams().keys()).includes(n)))return r={source:"GOOGLE"},new Pc(r)}},Bn=class Wh{static INSTANCE;httpAPIService=ht.getInstance();coreService=ac.getInstance();sentryService=Le.getInstance();sdkToken="";userID="";deviceID="";appID="";shopifyShop="";constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Wh),this.INSTANCE}init(t){this.appID=t.appID,this.shopifyShop=t.shopifyShop}async storeAndPopulateAuthData(t){t&&(t.userID&&(this.userID=t.userID,await De.set(oe.ID,t.userID)),t.deviceID&&(this.deviceID=t.deviceID,await De.set(oe.DEVICE_ID,t.deviceID)),t.sdkToken&&(this.sdkToken=t.sdkToken,await De.set(oe.SDK_TOKEN,t.sdkToken)),this.updateAPIClient())}async validateSession(t){await this.populateFirstSeen(),await this.populateUserDataFromStorage(),b.log("Validating session with server");let r=await this.getSessionValidateData(t);try{let n=await this.httpAPIService.validateSession(r);b.log("Validating session Response",n),await this.coreService.processAppConfigurations(n.appSettings),await this.storeAndPopulateAuthData(n)}catch(n){throw b.error(n),n}}async populateUserDataFromStorage(){if(this.sdkToken=await De.get(oe.SDK_TOKEN),!this.sdkToken){b.warn("No SDK token found in local storage");return}this.userID=await De.get(oe.ID),this.deviceID=await De.get(oe.DEVICE_ID),this.updateAPIClient()}updateAPIClient(){b.debug("SDK Token:",this.sdkToken),b.log("Device ID:",this.deviceID),b.log("User ID:",this.userID),Oi.trackDeviceID(this.deviceID),er.prepend(`Device ID: <strong>${this.deviceID}</strong>`),this.httpAPIService.setAPIToken(this.sdkToken),this.sentryService.setGlobalContext("Visitor Info",{device_id:this.deviceID,user_id:this.userID}),this.sentryService.setUser({id:this.deviceID})}async getSessionValidateData(t){let r=await new Ga().get();r.host=location.origin;try{(await rh())?.isPrivate&&(r.private=!0)}catch(i){uh.default.error("Unable to detect private/incognito window",i)}let n=await De.get(oe.DEVICE_ID);return n||(n=new tt().toHexString(),await De.set(oe.DEVICE_ID,n)),te(w({deviceID:n,deviceProps:r,appID:this.appID,shopifyShop:this.shopifyShop},t),{sdk:N.SDK,page:Tr.parseFromCurrent(),ad:cc.getAdParams(),occurred:this.getSessionStartTime(ue.get().jsLoadTime),currentItem:ue.get().getCurrentItem(),cart:await de.getCurrent().getNormalisedCart(),properties:{}})}async populateFirstSeen(){let t=await De.get(oe.FIRST_SEEN),r=t?new Date(t):new Date;t||await De.set(oe.FIRST_SEEN,r.toISOString()),this.httpAPIService.setFirstSeen(r),this.sentryService.setGlobalContext("Visitor Info",{first_seen:r.toISOString()})}getSessionStartTime(t){return(new Date().getTime()-t.getTime())/1e3>N.IDLE_TIME_IN_SECONDS?new Date:t}},qe=class Ko{static replaySubject=new xo(1);static INSTANCE;sentryService=se.get(Le);lock=new Zn;constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Ko),this.INSTANCE}init(t){if(b.debug("Initialising SDK",t),eh(navigator.userAgent)){b.info("This seems to be a bot. Disabling SDK");return}Bn.getInstance().init(t),Ko.INSTANCE.checkForNewSession(!0).then(async()=>{Ko.replaySubject.next(!0),Ko.replaySubject.complete()}).catch(r=>b.error("Unable to perform device init",r))}getCurrentSessionID(){return rt.set(oe.SESSION_LAST_USED_TIME,new Date().getTime()),rt.get(oe.ID,"")}async checkSessionAndGetContext(){return await this.checkForNewSession(),this.getContext()}async getContext(){let t=await Promise.all([this.getCurrentSessionID(),this.getCurrentSessionNumber(),this.getLandingPage()]);return this.sentryService.setGlobalContext("Visitor Session",{id:t[0],number:t[1],landing_page:t[2]}),t}async checkForNewSession(t){await this.lock.acquire();let r=!1;if(await this.isNewSessionRequired()?(await this.startNewSession(),t=!0,r=!0):await this.notSynced()&&(r=!0),t){let n=await this.getContext();await Bn.getInstance().validateSession({sessionID:n[0],sessionNumber:n[1],landingPage:n[2],newSession:r}),await rt.set(oe.SESSION_SYNCED,!0)}this.lock.release()}async startNewSession(){b.debug("Starting new session"),await rt.clear(),b.debug("Cleared SessionStorage before starting new session");let t=new Date,r=new tt().toHexString();b.debug("New session ID to be used",r);let n=await De.get(oe.SESSION_NUMBER,0)+1;er.prepend(`New Session ID: <strong>${r}</strong> & number: ${n}`),await Promise.all([De.set(oe.SESSION_NUMBER,n),rt.set(oe.ID,r),rt.set(oe.SESSION_LAST_USED_TIME,t.getTime()),rt.set(oe.SESSION_LANDING_PAGE,Tr.parseFromCurrent())])}getLandingPage(){return rt.get(oe.SESSION_LANDING_PAGE,{})}getCurrentSessionNumber(){return De.get(oe.SESSION_NUMBER,1)}async isNewSessionRequired(){if(!await rt.get(oe.ID))return!0;let t=await rt.get(oe.SESSION_LAST_USED_TIME,0);return t?(new Date().getTime()-t)/1e3>N.IDLE_TIME_IN_SECONDS:!0}async notSynced(){return!await rt.get(oe.SESSION_SYNCED,!1)}},Go=Se(Rr()),gh=Se(Lc()),yh=Se(ti()),vh=Se(on()),ph=Se(Jo()),fh=Se(on()),ki=class{constructor(e,t){this.triggerContext=e,this.element=t}safeHTTP=fe.getInstance();async execute(e){let t=ue.get().getCurrentItem(),r=e.clickAction||this.element?.clc;if(!r)return;let n=e.item,i=this.triggerContext,s=new en,o=i.triggerData.redirectBehaviour,c=!!i.triggerData.discount.type&&!!r?.applyDiscount,u={selectedVariants:i.triggerData.nonMutableItems.map(_=>({itemMID:_.mID,mID:_.selectedOrFirstVariant.value.mID})),eID:i.triggerData.engagementID,cID:i.triggerData.contentID},d="",m=[],h=[];if(n?h=[n.toEmbed()]:e.embeddedItem&&(h=[e.embeddedItem]),r.at===108){let _=i.selectedItems;if(h=e.embeddedItems??_.map(D=>D.toEmbed()),i.shouldGiveFBTDiscount||e.embeddedItems?.length){let D;e.embeddedItems?D=e.embeddedItems.map(M=>({itemMID:M.mID,mID:M.vID,quantity:M.quantity})):D=_.map(M=>({itemMID:M.mID,mID:M.selectedOrFirstVariant.value.mID}));let P=i.triggerData.bundleFrom;i.triggerData.isBundleOnCartDrawer()&&P&&(D.push({itemMID:P.mID,mID:P.selectedOrFirstVariant.value.mID,isPrimary:!0}),h.unshift(P.toEmbed())),u.selectedVariants=D,i.triggerData.isBundleOnPDP()&&u.selectedVariants.forEach(M=>{M.mID===t.vID&&(M.isPrimary=!0)})}else u=void 0;m=e.embeddedItems??_}else if(r.at===107){let _=await de.getCurrent().getNormalisedCart();h=_.items,u.selectedVariants=_.items.map(D=>({itemMID:D.mID,mID:D.vID}))}else if(r.at===102)m=n?[n]:[e.embeddedItem];else if(r.at===101)d=n?Be.getRootPrefix()+"products/"+n.slug:e.embeddedItem?.link;else if(r.at===4){let _=Q.isValidURL(r.gu?.u);_&&(d=_.href)}else if(r.at===109){let _=await s.upgradeToSubscription(n,i.triggerData);this.triggerContext.triggerData.skipSubscribedItems&&this.triggerContext.renderer.destroy(),ze.get().refreshUI(_)}if(this.sendTriggerClicked(h,{from:"button"},e.video),b.debug({redirectPath:d,redirectBehaviour:o,hasDiscount:c}),!c&&d){location.href=d;return}let y,E=!1;try{y=await this.getOrGenerateDiscountCode(u),b.debug("Discount code (if any) to apply",y)}catch(_){if(!this.triggerContext.triggerData.isBYOB()){fh.default.error("Unable to get a discount code",_);return}}if(y&&r.at===103)await s.performCopyCoupon(y);else if(r.at===110){let _=await s.performCartCreate(t,y,i.triggerData);_&&(location.href=_);return}try{y&&await Zr.applyWithStorefront(y)}catch(_){b.error(_),E=!0}let v;if(m?.length&&(v=await s.performAddToCart(m,i.triggerData)),E&&y){Zr.navigate(y,o,d);return}if(d){location.href=d;return}Zr.navigateWithoutDiscount(o,v)}sendTriggerClicked(e,t,r){let n=N.EVENT_TRIGGER_CLICKED,i=new Ee(n,t,this.triggerContext.triggerData);i.items=e,r?.id&&(i.videos=[r.id]),this.safeHTTP.sendEvent(i)}async getOrGenerateDiscountCode(e){let t=this.triggerContext.triggerData.discount;if(!t?.type)return;let r="";if(t.type===ph.DiscountType.STATIC){if(!t.code)throw Le.getInstance().captureMessage("No discount code found","warning",{triggerContext:this.triggerContext}),new Error("No discount code found");return t.code}if(e){if(r=await this.generateDiscount(e),!r)throw b.error("No discount code found",e),new Error("Discount code not found or generated");return r}}async generateDiscount(e){try{return(await this.safeHTTP.generateDiscount(e))?.code}catch(t){throw Q.showSnackbar("Failed to generate a discount code"),b.error("Error generating discount code",t,e),Le.getInstance().captureMessage("Failed to generate discount code","error",{discountData:JSON.stringify(e),triggerContext:this.triggerContext,error:t}),t}}},Ne=class extends pr{stylesConverter=new Li(1);renderer=Bt.get();mediaStyle={};deviceTypeKey;clickExecutor;componentWillMount(){this.deviceTypeKey=this.renderer.isMobile()?"sm":"lg",this.clickExecutor=new ki(this.props.triggerContext,this.props.element)}getCompiledStyles(){return this.putStyleAccordingToDevice(),w(w(te(w(w(w(w(w(w({},this.stylesConverter.getFlexStyles(this.mediaStyle.flex)),this.stylesConverter.getBackgroundStyles(this.mediaStyle.bg)),this.stylesConverter.getBorderStyles(this.mediaStyle.br)),this.stylesConverter.getSizeStyles(this.mediaStyle.size)),this.stylesConverter.getSpaceStyles(this.mediaStyle.spc)),this.stylesConverter.getLayoutStyles(this.mediaStyle.lout)),{boxSizing:"border-box",outline:"none"}),this.getComponentStyles()),this.props.style)}matchWhenCondition(e){if(!e?.op)return!0;let{lhs:t,rhs:r}=e;switch(e.op){case"eq":return t===r;case"gt":return+t>+r;case"gte":return+t>=+r;case"lt":return+t<+r;case"lte":return+t<=+r;case"ne":return t!==r;case"null":return t==null;case"empty":return t.trim()==="";case"in":return new RegExp(`\\b${r}\\b`).test(t);case"nin":return!new RegExp(`\\b${r}\\b`).test(t);default:return b.error(`Invalid operator found for when condition - ${e.op}`),!1}}putStyleAccordingToDevice(){let e=this.props.element;this.mediaStyle=e.style.lg,this.renderer.isMobile()&&e.style.sm&&Object.keys(e.style.sm).length&&(this.mediaStyle=w(w({},this.mediaStyle),e.style.sm))}sendTriggerClicked(e,t){this.clickExecutor.sendTriggerClicked(e,t)}async onClick(e,t){e.stopPropagation(),await this.clickExecutor.execute(t)}},tS=0,GH=Array.isArray;function $(e,t,r,n,i,s){t||(t={});var o,c,u=t;if("ref"in u)for(c in u={},t)c=="ref"?o=t[c]:u[c]=t[c];var d={type:e,props:u,key:r,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--tS,__i:-1,__u:0,__source:i,__self:s};if(typeof e=="function"&&(o=e.defaultProps))for(c in o)u[c]===void 0&&(u[c]=o[c]);return _e.vnode&&_e.vnode(d),d}var Ft=class extends Ne{componentDidMount(){this.setState(()=>({text:this.props.element.text})),ct(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=""),$("div",{style:e,onClick:this.customOnClick.bind(this),className:"lc-text",children:$("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()},r=_t.render(JSON.stringify(this.props.element),t),n=new ot(JSON.parse(r));if(!this.matchWhenCondition(n.when)){this.setState(()=>({text:""}));return}this.setState(()=>({text:n.text}))}getTypoStyles(){let e={},t=this.mediaStyle.typo??new lt;return e.letterSpacing=t.letterSpacing,e.fontSize=t.fs+"px",e.lineHeight=t.lh,e.fontFamily=t.fam.name||"inherit",e.textAlign=t.alignment,e.fontWeight=t.fw,e.textDecoration=t.td??"none",this.stylesConverter.getColourStyles(t.tc,"color",e),e}getComponentStyles(){return w({},this.getTypoStyles())}getSpanStyle(){return{overflow:"hidden",display:"-webkit-box",webkitBoxOrient:"vertical",webkitLineClamp:2,color:"inherit",fontSize:"inherit",fontWeight:"inherit",fontFamily:"inherit"}}},Mn=class extends Ft{render(){return $("div",{style:this.getCompiledStyles(),className:"lc-button",onClick:e=>this.onClick(e,{item:this.props.item}),children:$("span",{style:this.getSpanStyle(),dangerouslySetInnerHTML:{__html:this.state.text}})})}getComponentStyles(){return te(w({},super.getComponentStyles()),{cursor:"pointer"})}},rp=class extends pr{render(){if(this.props.element.show[this.props.label.toLowerCase()])return this.props.element.lblPos==="end"?$("div",{style:w(w({},this.getElementStyle()),this.props.styles),children:[$("span",{children:this.props.time}),$("span",{style:this.getTimeLabelStyle(),children:this.props.label})]}):$("div",{style:w(w({},this.getElementStyle()),this.props.styles),children:[$("span",{style:this.getTimeLabelStyle(),children:this.props.label}),$("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}},Uo=class extends Ft{labels={Days:"00",Hours:"00",Minutes:"00",Seconds:"00"};componentWillMount(){super.componentWillMount(),this.setState(()=>w({},this.labels)),this.processAndStartTimer()}render(){return $("div",{style:this.getLabelsParentStyle(),children:Object.keys(this.labels).map(e=>$(rp,{styles:this.getCompiledStyles(),label:e,time:this.state[e],element:this.props.element}))})}getLabelsParentStyle(){return{display:"grid",justifyContent:"center",gridTemplateColumns:"repeat(4, auto)",gap:this.stylesConverter.getSizePx(this.props.element.gap)}}getDisplayStyles(){return{display:"grid",placeContent:"center center"}}getComponentStyles(){return w(w({},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(()=>w({},this.labels))})}},Mo=class extends Ne{componentDidMount(){ct(()=>{this.setState(()=>({checked:this.props.item.selected.value}))})}render(){return $("div",{style:this.getCompiledStyles(),className:"lc-checkbox",children:$("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 lt;return e.textAlign=t.alignment,e.justifyContent=t.alignment,e}getComponentStyles(){return te(w({},this.getTypoStyles()),{display:"flex"})}},mh=Se(Rr()),kr=class extends Ne{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 $("img",{onClick:this.customOnClick.bind(this),className:"lc-image",alt:e?.name||"Image",onMouseEnter:this.handleMouseEnter.bind(this),onMouseLeave:this.handleMouseLeave.bind(this),src:t,style:this.getCompiledStyles()})}customOnClick(e){this.props.element.clc?.at===mh.ClickActionType.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}},Fr=class extends Ne{render(){if(!(this.props.element.hide||!this.matchWhenCondition(this.props.element.when)))return $("div",{style:this.getCompiledStyles(),class:"lc-flexbox",children:$(tn,{elements:this.props.elements,element:this.props.element,triggerContext:this.props.triggerContext})})}getComponentStyles(){let e=this.mediaStyle.flex??new vi,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}},ko=class extends Fr{render(){if(!(this.props.element.hide||!this.matchWhenCondition(this.props.element.when)))return $("div",{style:this.getCompiledStyles(),class:"lc-flexbox",children:$(Fi,{elements:this.props.elements,element:this.props.element,triggerContext:this.props.triggerContext,item:this.props.item,noLinks:this.props.noLinks})})}},Fo=class extends Ne{render(){return $("select",{style:this.getCompiledStyles(),value:this.props.selectedVariant.selectedSellingPlan.value?.mID??"",onChange:this.onChange.bind(this),disabled:this.state.disabled,className:"lc-dropdown",children:this.createSelectItems()})}componentDidMount(){ct(()=>{this.setState(()=>({disabled:this.props.triggerContext.triggerData.isBundle()?!this.props.item.selected.value:!1}))})}getTypoStyles(){let e={},t=this.mediaStyle.typo??new lt;return e.letterSpacing=t.letterSpacing,e.fontSize=t.fs+"px",e.lineHeight=t.lh,e.fontFamily="inherit",e.textAlign=t.alignment,e.fontWeight=t.fw,this.stylesConverter.getColourStyles(t.tc,"color",e),e.boxShadow="none",e}getComponentStyles(){let e={};return this.props.selectedVariant.sellingPlans?.length||(e.visibility="hidden"),w(w({},e),this.getTypoStyles())}createSelectItems(){let e=[],t=this.props.selectedVariant;if(!t.sellingPlans?.length)return[];this.props.triggerContext.triggerData.skipSubscribedItems?t.selectedSellingPlan.value||(t.sellingPlans[0].isSelected=!0,t.changeSellingPlan(t.sellingPlans[0])):e.push($("option",{value:"",selected:!t.selectedSellingPlan,children:"One time purchase"}));for(let r of t.sellingPlans??[])e.push($("option",{value:r.mID,selected:r.isSelected,children:r.name}));return e}onChange(e){let t=e.target.value;t?this.props.selectedVariant.selectedSellingPlan.value=this.props.selectedVariant.sellingPlans.find(r=>r.mID===t):this.props.selectedVariant.selectedSellingPlan.value=void 0}},dh=Se(Oc()),Ho=class extends Ne{colorRegex=new RegExp('fill="#[a-zA-Z0-9]+"');constructor(){super(),_t.escape=dh.MustacheUtils.escapeHtml}render(){let e=this.getCompiledStyles(),t=this.getRating();return t||(e.display="none",t=""),$("div",{style:e,className:"lc-star-rating",dangerouslySetInnerHTML:{__html:t}})}getRating(){let e=this.props.element.fullStar,t=this.props.element.halfStart,r={size:this.props.element.iconSize,color:this.props.element.c.hex};e=_t.render(e,{svg:r}),t=_t.render(t,{svg:r});let n=this.props.review;if(!n?.rating)return"";let i="";if(this.props.element.showSingleStar)i=e;else{let s=5,o=`${n.rating}`.split(".");for(let c=0;c<+o[0];c++)i+=e,s--;o[1]&&(i+=t,s--);for(let c=0;c<s;c++)i+=e.replace(this.colorRegex,'fill="#f1f1f1')}return i}getComponentStyles(){return{display:"flex",alignItems:"center"}}},$o=class extends Ne{render(){return $("select",{style:this.getCompiledStyles(),value:this.props.item.selectedOrFirstVariant.value.mID,onChange:this.onChange.bind(this),disabled:this.state.disabled,className:"lc-dropdown",children:this.createSelectItems()})}componentDidMount(){ct(()=>{this.setState(()=>({disabled:this.props.triggerContext.triggerData.isBundle()?!this.props.item.selected.value:!1}))})}getTypoStyles(){let e={},t=this.mediaStyle.typo??new lt;return e.letterSpacing=t.letterSpacing,e.fontSize=t.fs+"px",e.lineHeight=t.lh,e.fontFamily="inherit",e.textAlign=t.alignment,e.fontWeight=t.fw,this.stylesConverter.getColourStyles(t.tc,"color",e),e.boxShadow="none",e}getComponentStyles(){let e={};return this.props.item.vars?.length===1&&this.props.item.vars[0].name==="Default Title"&&(e.visibility="hidden"),w(w({},e),this.getTypoStyles())}createSelectItems(){let e=[];for(let t of this.props.item.vars)e.push($("option",{value:t.mID,disabled:!t.isAvailable,children:t.name}));return e}onChange(e){let t=e.target.value;this.props.item.selectedOrFirstVariant.value=this.props.item.vars.find(r=>r.mID===t)}},Fi=class extends Ne{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 $(ko,{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()?$(Mo,{element:e,item:this.props.item,triggerContext:this.props.triggerContext}):void 0;if(e.t===13){let t=e,r=this.props.item,n=r.variantImage??r.imageURL,i=r.variantSecondaryImage??r.secondaryImageURL;t.lg=t.sm={src:n,name:r.name,secondarySrc:i};let s=$(kr,{element:t,onClick:this.customOnClick.bind(this),triggerContext:this.props.triggerContext});return this.props.noLinks?s:$("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:$($o,{element:t,item:this.props.item,triggerContext:this.props.triggerContext})}return e.t===16?$(Fo,{element:e,selectedVariant:this.props.item.selectedOrFirstVariant.value,item:this.props.item,triggerContext:this.props.triggerContext}):e.t===19?$(Ho,{element:e,triggerContext:this.props.triggerContext,review:this.props.item.reviews}):e.t===18||e.t===3?$(Mn,{element:e,item:this.props.item,triggerContext:this.props.triggerContext}):$(tn,{elements:[e],element:this.props.element,triggerContext:this.props.triggerContext})}}render(){return this.props.elements.map(e=>this.renderElement(e))}getComponentStyles(){return{}}renderProductTitle(e){let t=$(Ft,{element:e,onClick:this.customOnClick.bind(this),triggerContext:this.props.triggerContext});return this.props.noLinks?t:$("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"}))}},hh=Se(Jo()),kn=class extends Ne{productElement;constructor(e,t){super(e,t),this.setState(()=>({decoration:"unset"}))}render(){let e=JSON.stringify(this.props.element),t=_t.render(e,this.getProductData());if(this.productElement=new Kr(JSON.parse(t)),!(this.productElement.hide||!this.matchWhenCondition(this.productElement.when)))return $("div",{style:w({},this.getCompiledStyles()),class:"lc-single-product",children:$(Fi,{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.selectedOrFirstVariant.value,t=e.price,r=this.props.item.name,n=this.props.item.category,i=Q.formatCurrency(t.d,!0),s=this.props.item.variantImage??this.props.item.imageURL,o=this.props.item.meta,c=this.props.item.tags?.join(",")??"",u=this.props.item.reviews?.rating,d=this.props.item.reviews?.totalReviews,m=t.cmp&&t.cmp>t.d,h=this.props.triggerContext.hasManipulatedProductQuantity()?this.props.triggerContext.getManipulatedQuantity(this.props.item.quantity):this.props.item.quantity,y={name:r,price:i,quantity:h,image_url:s,meta:o,category:n,rating:u,reviews:d,tags:c},E=e.effectivePrice.value!==t.d;E&&(y.effective_price=Q.formatCurrency(e.effectivePrice.value));let v=this.props.triggerContext.triggerData.discount.type===hh.DiscountType.BXGY;if(!E&&v&&(y.effective_price=Q.formatCurrency(e.effectivePrice.value),y.price=""),m){y.compare_price=Q.formatCurrency(t.cmp);let D=t.cmp-t.d;y.discount_percent=(D/t.cmp*100).toFixed(0),y.discount_price=Q.formatCurrency(D)}let _={name:e.name,quantity:this.props.triggerContext.hasManipulatedProductQuantity()?this.props.triggerContext.getManipulatedQuantity(e.quantity):e.quantity};return{product:y,variant:_,svg:{color:()=>"{{svg.color}}",size:()=>"{{svg.size}}"}}}};function lc(e,t){if(!e||!window.Swiper)return;let r=new window.Swiper(e,{loop:!0,slidesPerView:t.maxInRow,spaceBetween:t.gap+"px",pagination:{type:t.pagination.type,el:e.querySelector(".swiper-pagination"),clickable:!0,renderBullet:(n,i)=>`
|
|
63
|
+
`,en=class{async performAddToCart(e,t){if(!e.length)return;let r=e.map(c=>{let{vID:u,quantity:d}=this.getVIDAndQuantity(c);return{id:u?+u:+c.mID,quantity:d,properties:t.getPrivateAttributesForLineItem()}}),n=Me.getCartURL("cart/add.js"),i={items:r},s=ze.get();s.isMiniCart()?i.sections=["mini-cart"]:s.isShopifyDefaultDrawer()&&(i.sections=s.element.getSectionsToRender?.().map(c=>c.section??c.id));let o=JSON.stringify(i);try{let c=await fetch(n,{body:o,method:"post",headers:{"Content-Type":"application/json"}});if(c.status===200||c.status===302)return w.log(`Added ${e.length} items to Cart`),Q.showSnackbar("Product added to your cart"),c.json()}catch(c){w.error("Failed to add product in cart",c)}}async performUpdate(e,t){if(!oh.JSUtils.hasKeys(t)){w.warn("No update fields provided");return}let r=Me.getCartURL("cart/change.js"),n=b({id:e.key},t),i=JSON.stringify(n);try{let s=await fetch(r,{body:i,method:"post",headers:{"Content-Type":"application/json"}});(s.status===200||s.status===302)&&(w.log(`Updated ${e}`),de.getCurrent().update(s.json()))}catch(s){w.error("Failed to update item in cart",s,e)}}async performCopyCoupon(e){if(e)try{await navigator.clipboard.writeText(e),w.log(`Code-${e} copied`),Q.showSnackbar("Discount code copied")}catch(t){w.error("Failed to copy code",t)}}performGoToItem(e){if(!e?.link)return;let t=Me.getProductSlug(e.link);t&&(location.pathname=Me.getRootPrefix()+"products/"+t)}async upgradeToSubscription(e,t){if(!e){w.warn("Trying to upgrade to subscription with no item");return}let r=await de.getCurrent().getNormalisedCart(),n=e.selectedOrFirstVariant.value,i=r.items.findIndex(d=>d.vID===n.mID),s=n.selectedSellingPlan.value,o=Me.getCartURL("cart/change.js"),c={line:i+1,selling_plan:s?.mID||null,properties:t.getPrivateAttributesForLineItem()},u=JSON.stringify(c);try{let d=await fetch(o,{body:u,method:"post",headers:{"Content-Type":"application/json"}});if(d.status===200||d.status===302){w.log(`Upgraded ${e} selling plan`),Q.showSnackbar("Line item updated");let m=await d.json();return de.getCurrent().update(m),m}}catch(d){w.error("Failed to update subscription for item in cart",d)}}async performCartCreate(e,t,r){let n=Pe.get().storefrontToken;if(!n)throw new Error("Storefront token not set for the store");if(!e?.vID){w.error("No variant ID found to perform Buy now",e);return}let i=t?[t]:[],s=[{merchandiseId:`gid://shopify/ProductVariant/${e.vID}`,quantity:1,attributes:r.getKVFormatPrivateAttributesForLineItem()}],o=await Q.getCartAttributes(),c=new Headers;c.append("Content-Type","application/json"),c.append("X-Shopify-Storefront-Access-Token",n);let u=JSON.stringify({query:eS,variables:{input:{lines:s,discountCodes:i,attributes:o}}});return(await ht.getInstance().request(N.GRAPHQL_API_PATH,{method:"POST",headers:c,body:u})).data?.cartCreate?.cart?.checkoutUrl}async processEvent(e){let t=e.clickAction,r=e.items,n=e.triggerData;if(t.at){let i=t;if(w.log(`Performing ${JSON.stringify(i)} action`),i.at===101)r?.length&&this.performGoToItem(r[0]);else if(i.at===102)r?.length&&await this.performAddToCart(r,n);else if(i.at===103)await this.performCopyCoupon(n.discount.code);else if(i.at===105)ze.get().open();else if(i.at===104){let s=e.collections;if(!s?.length)return;location.pathname=Me.getRootPrefix()+"collections/"+s[0].handle}}t.applyDiscount&&n.discount?.code&&Zr.navigate(n.discount.code,n.redirectBehaviour)}getVIDAndQuantity(e){let t,r;if(e instanceof ft)t=e.vID,r=e.quantity??1;else{if(!e.vars?.length)return{};t=e.selectedOrFirstVariant.value.mID,r=1}return{vID:t,quantity:r}}},Xa=class{apiService;action;triggerContext;constructor(e,t){this.action=e,this.apiService=fe.getInstance(),this.triggerContext=t}async execute(){let e=this.containsCTA()?N.EVENT_TRIGGER_CLICKED:N.EVENT_TRIGGER_CLOSED;switch(this.action.at!==106&&await this.closeTriggerAndSendEvent(e),this.action.at){case 2:break;case 4:this.gotoURLAction();break;case 5:this.shareAction();break;case 106:await this.collectFormData();break;case void 0:case 105:break;default:w.error("Received an invalid ClickActionType: ",this.action.at);return}}externalAction(){this.action.ext?.u&&window.open(this.action.ext.u,"_blank")?.focus()}gotoURLAction(){if(this.action.gu?.u){let e=this.action.gu.u;Q.isValidURL(e)||(e=`//${e}`),window.open(e,"_self")}}prompt(){let e=this.action.pmpt;e&&(e===2&&this.promptLocationPermission(),e===3&&this.promptPushNotificationPermission(),e===1&&this.promptCameraPermission())}async closeTriggerAndSendEvent(e,t){this.triggerContext.closeInApp(e,t),await this.dispatchEvent()}shareAction(){if(this.action.share){if(!navigator.share){w.warn("Navigator.share is not compatible with this browser");return}navigator.share({text:this.action.share.text,title:"Share"}).then(e=>console.log(e)).catch(e=>console.error(e))}}containsCTA(){return this.action.at&&this.action.at!==1?!0:!(this.isEmpty(this.action.custKV)&&this.isEmpty(this.action.up))}isEmpty(e){return e?Object.keys(e).length===0:!0}promptLocationPermission(){!navigator.geolocation||!navigator.permissions||navigator.geolocation.getCurrentPosition(e=>{this.apiService.updateDeviceProps({coords:[e.coords.latitude,e.coords.longitude]}),this.sendPermissionData()})}promptPushNotificationPermission(){if(!("Notification"in window)){w.warn("This browser does not support desktop notification");return}if(Notification.permission!=="default"){this.apiService.updateDeviceProps({pnPerm:Notification.permission});return}Notification.requestPermission().then(()=>{this.sendPermissionData()})}promptCameraPermission(){navigator.mediaDevices&&navigator.mediaDevices.getUserMedia({video:!0}).finally(()=>{this.sendPermissionData()})}checkPermission(e){return navigator.permissions.query({name:e}).then(t=>t.state.toString())}async checkAllPermission(){let e=await this.checkPermission("camera"),t=await this.checkPermission("geolocation"),r=Notification.permission;return{camera:e,location:t,notification:r}}sendPermissionData(){this.checkAllPermission().then(e=>{this.apiService.updateDeviceProps({perm:e})})}async collectFormData(){let e={};for(let t of this.triggerContext.inputs){if(!t.isValid)return;let r=document.getElementById(t.id).value;t.type===51?e.email=r:t.type===52&&(e.mobile=r)}await this.closeTriggerAndSendEvent(N.EVENT_FORM_SUBMITTED,{form:e}),Q.showSnackbar("Coupon applied on cart"),za.updateIdentity(e)}async dispatchEvent(){let e=this.triggerContext.triggerData,t={clickAction:this.action,items:this.triggerContext.selectedEmbeddedItems??e.embeddedItems??e.items,collections:e.collections,triggerData:e};await new en().processEvent(t);let r={action:this.containsCTA()?N.CAMPAIGN_CLICKED_ACTIVITY:N.CAMPAIGN_CLOSED_ACTIVITY};document.dispatchEvent(new CustomEvent(N.POPUP_ACTIVITY_EVENT,{detail:r}))}},Li=class{constructor(e){this.scalingFactor=e}getLayoutStyles(e){if(!e)return{display:"block"};let t={display:e.disp};return e.of&&(t.objectFit=e.of),e.pos==="absolute"&&(t.width="auto !important",t.position="absolute",t.right=e.right+"px",t.left=e.left+"px",t.top=e.top+"px",t.bottom=e.bottom+"px"),t}getSizeStyles(e){let t={};return e?.w&&(t.width=e.w),e?.h&&(t.height=e.h),e?.maxW&&(t.maxWidth=e.maxW),e?.maxH&&(t.maxHeight=e.maxH),e?.minW&&(t.minWidth=e.minW),e?.minH&&(t.minHeight=e.minH),t}getBorderStyles(e){if(!e)return{};let t={};return e.radius&&e.radius>0&&(t.borderRadius=this.getSizePx(e.radius)),e.width&&e.width>0&&(t.borderWidth=this.getSizePx(e.width),t.borderStyle=e.style?.toLowerCase(),e.color?this.getColourStyles(e.color,"border-color",t):t.borderColor="black"),t}getFlexStyles(e){return e?{gap:e.gap+"px",flexWrap:e.wrap,flexDirection:e.dir,justifyContent:e.jc,alignItems:e.ai,width:"100%"}:{}}getSpaceStyles(e){let t={};return e?(t.paddingTop=this.getSizePx(e.pt),t.paddingBottom=this.getSizePx(e.pb),t.paddingLeft=this.getSizePx(e.pl),t.paddingRight=this.getSizePx(e.pr),t.marginTop=this.getSizePx(e.mt),t.marginBottom=this.getSizePx(e.mb),t.marginLeft=e.cent?"auto":this.getSizePx(e.ml),t.marginRight=e.cent?"auto":this.getSizePx(e.mr),t):(t.margin="0 !important",t.padding="unset",t)}getBackgroundStyles(e){if(!e)return{};let t={};if(e.glossy){let r="backdrop-filter",n="-webkit-"+r,i=`blur(${e.glossy.radius}px)`;if(!CSS.supports(n,i)&&!CSS.supports(r,i))return{background:e.glossy.fallback.rgba};if(t[n]=i,t[r]=i,e.glossy.color)return this.getColourStyles(e.glossy.color,"background",t)}else if(e.solid){if(e.solid.grad)return this.getGradientStyles(e.solid.grad,"background",t);if(e.solid.hex)return{backgroundColor:e.solid.rgba}}else if(e.img){if(!e.img.src)return{};let r=(e.img.a??0)/100;t.background=`linear-gradient(rgba(0, 0, 0, ${r}), rgba(0, 0, 0, ${r})),url("${e.img.src}") no-repeat center`,t.backgroundSize="cover",e.img.a&&(t["-webkit-backdrop-filter"]=`opacity(${e.img.a})`,t.backdropFilter=`opacity(${e.img.a})`)}return t}getGradientStyles(e,t,r){if(r??={},e.type==="LINEAR"){let n=`linear-gradient(${e.ang}deg, ${e.c1}, ${e.c2}`;e.c3&&(n+=`, ${e.c3}`),n+=")",r[t]=n}return r}getColourStyles(e,t="color",r){return r??={},e?e.grad?this.getGradientStyles(e.grad,t,r):(e.hex&&(r[t]=e.rgba),r):r}getSizePx(e){return this.getScaledSize(e)+"px"}getScaledSize(e){return(e??0)*this.scalingFactor}},Zt=class{renderer=Mt.get();parentHTMLEl;inappElement;inappHTMLEl;triggerContext;stylesConverter;scalingFactor;constructor(e,t,r){this.parentHTMLEl=e,this.inappElement=t,this.triggerContext=r,this.stylesConverter=new Li(this.renderer.getScalingFactor())}getHTMLElement(){return this.inappHTMLEl}insertElement(){this.renderer.appendChild(this.parentHTMLEl,this.inappHTMLEl)}processCommonBlocks(){this.processWidthAndHeight(),this.processPositionBlock(),this.processTransformBlock(),this.processTransparency(),this.processShadow(),this.registerAction();let e=te(b(b(b(b({},this.getDisplayStyles()),this.getSpaceStyles()),this.getBorderStyles()),this.getBackgroundStyles()),{boxSizing:"border-box",outline:"none"});this.renderer.setStyles(this.inappHTMLEl,e)}getDisplayStyles(){return{display:"block"}}processWidthAndHeight(){this.inappElement.w&&this.renderer.setStyle(this.inappHTMLEl,"width",this.stylesConverter.getSizePx(this.inappElement.w)),this.inappElement.h&&this.renderer.setStyle(this.inappHTMLEl,"height",this.stylesConverter.getSizePx(this.inappElement.h))}processPositionBlock(){let e={position:"absolute",left:this.stylesConverter.getSizePx(this.inappElement.x),top:this.stylesConverter.getSizePx(this.inappElement.y)};this.renderer.setStyles(this.inappHTMLEl,e)}getBorderStyles(){return this.stylesConverter.getBorderStyles(this.inappElement.br)}getSpaceStyles(){return this.stylesConverter.getSpaceStyles(this.inappElement.spc)}processTransparency(){let e=this.inappElement.alpha;if(!isNaN(e)){let t=(e/100).toFixed(2);this.renderer.setStyle(this.inappHTMLEl,"opacity",t)}}processShadow(){let e=this.inappElement.shd;e?this.renderer.setStyle(this.inappHTMLEl,"box-shadow",e.getStyle(this.scalingFactor)):this.renderer.setStyle(this.inappHTMLEl,"box-shadow","unset")}processTransformBlock(){let e=new En(this.inappElement.trf);e&&e.rotate&&this.renderer.setStyle(this.inappHTMLEl,"transform",`rotate(${e.rotate}deg)`)}registerAction(){let e=this.inappElement.clc;!e||Object.keys(e).length===0||(this.inappHTMLEl.addEventListener("click",t=>{t.stopPropagation(),new Xa(e,this.triggerContext).execute()}),this.renderer.setStyle(this.inappHTMLEl,"cursor","pointer"))}getBackgroundStyles(){return this.stylesConverter.getBackgroundStyles(this.inappElement.bg)}},xr=class extends Zt{constructor(e,t,r){super(e,t,r)}processCommonBlocks(){super.processCommonBlocks(),this.processFontBlock(),this.processAlignment()}processFontBlock(){let e={},t=this.inappElement.typography;return t&&(e.fontSize=this.stylesConverter.getSizePx(t.fs),e.fontFamily=N.COOEE+t.fam?.name,e.lineHeight=`${t.lh}`,e.letterSpacing=t.letterSpacing),this.stylesConverter.getColourStyles(this.inappElement.color,"color",e),this.renderer.setStyles(this.inappHTMLEl,e),e}processPart(e,t){let r=[];t.u&&r.push("underline"),t.st&&r.push("line-through"),r.length||r.push("normal"),this.renderer.setStyle(e,"font-weight",t.b?"bold":"normal"),this.renderer.setStyle(e,"font-style",t.i?"italic":"normal"),this.renderer.setStyle(e,"text-decoration",r.join(" ")),this.renderer.setStyle(e,"color",t.c??"inherit"),this.renderer.setStyle(e,"font-family","inherit")}processAlignment(){let e=this.inappElement.typography.ta,t=e?pi[e]?.toLowerCase():this.inappElement.typography.alignment;t||(t="start"),this.renderer.setStyle(this.inappHTMLEl,"text-align",t)}},Oo=class extends xr{constructor(e,t,r){super(e,t,r),this.inappHTMLEl=this.renderer.createElement("div"),this.insertElement()}render(){this.inappElement.parts?.forEach(e=>{let t=this.renderer.createElement("span");t.innerHTML=e.txt?.toString()?.replace(/\n/g,"<br />"),this.processPart(t,e),this.renderer.appendChild(this.inappHTMLEl,t)}),this.processCommonBlocks()}},Po=class extends Zt{constructor(e,t,r){super(e,t,r),this.inappHTMLEl=this.renderer.createElement("div"),this.insertElement()}render(){this.processCommonBlocks()}},Bn=class extends Zt{constructor(e,t,r){super(e,t,r),this.inappHTMLEl=this.renderer.createElement("img"),this.insertElement()}render(){this.renderer.setAttribute(this.inappHTMLEl,"src",this.inappElement.src),this.renderer.setStyle(this.inappHTMLEl,"max-width","none"),this.renderer.setStyle(this.inappHTMLEl,"max-height","none"),this.renderer.setStyle(this.inappHTMLEl,"margin","0 auto"),this.processCommonBlocks()}},Lo=class jh extends Zt{constructor(t,r,n){super(t,r,n),this.parent=t,this.inappHTMLEl=this.renderer.createElement("div")}static MAX_Z_INDEX="2147483647";render(){return this.parent||this.renderer.removeInApp(this.triggerContext),this.insertElement(),this.processCommonBlocks(),this.inappHTMLEl.classList.add(N.IN_APP_WRAPPER_NAME),this.inappHTMLEl.classList.add(this.triggerContext.rootClassName),this.renderer.setStyle(this.inappHTMLEl,"z-index",jh.MAX_Z_INDEX),this.inappHTMLEl}getBackgroundStyles(){return this.inappElement.cover?super.getBackgroundStyles():{}}processWidthAndHeight(){let t=this.inappElement.cont;if(this.inappElement.cover)this.renderer.isParentNotBody()?(this.renderer.setStyle(this.inappHTMLEl,"width","100%"),this.renderer.setStyle(this.inappHTMLEl,"height","100%")):(this.renderer.setStyle(this.inappHTMLEl,"width","100vw"),this.renderer.setStyle(this.inappHTMLEl,"height","100vh")),this.renderer.setStyle(this.inappHTMLEl,"top","0"),this.renderer.setStyle(this.inappHTMLEl,"left","0");else{let r=this.inappElement.spc,n=this.stylesConverter.getScaledSize(t.w)+r.getHorizontal(),i=this.stylesConverter.getScaledSize(t.h)+r.getVertical();this.renderer.setStyle(this.inappHTMLEl,"width",n+"px"),this.renderer.setStyle(this.inappHTMLEl,"height",i+"px")}}getSpaceStyles(){return{padding:this.inappElement.spc.getPaddingCSS()}}getDisplayStyles(){return b(b({display:"flex"},this.inappElement.getStylesForWrapper()),this.inappElement.getFlexStylesForContainer())}processPositionBlock(){if(this.renderer.isParentNotBody()){if(this.triggerContext.triggerData.ian?.isEmbedded()){this.renderer.setStyle(this.inappHTMLEl,"position","block");return}this.renderer.setStyle(this.inappHTMLEl,"position","absolute")}else this.renderer.setStyle(this.inappHTMLEl,"position","fixed")}getBorderStyles(){return{}}processTransparency(){}processTransformBlock(){}processShadow(){}},Ja=class extends Zt{constructor(e,t,r){super(e,t,r),this.inappHTMLEl=this.renderer.createElement("div"),this.insertElement()}render(){return this.processCommonBlocks(),this.renderer.setStyle(this.inappHTMLEl,"position","relative"),this.renderer.setStyle(this.inappHTMLEl,"overflow","hidden"),this.inappHTMLEl.classList.add(N.IN_APP_CONTAINER_NAME),this}},Mi=class extends xr{borderColor="";constructor(e,t,r){super(e,t,r),this.inappHTMLEl=this.renderer.createElement("input"),this.insertElement()}render(){let e=this.setInputType();this.renderer.setAttribute(this.inappHTMLEl,"placeholder",this.inappElement.placeholderText),this.renderer.setStyle(this.inappHTMLEl,"background","#ffffff00"),this.renderer.setStyle(this.inappHTMLEl,"outline","none"),this.inappHTMLEl.addEventListener("click",t=>{t.stopPropagation()}),this.processCommonBlocks(),this.addListener(this.inappHTMLEl,e),this.triggerContext.addInputField(e,this.inappElement.t)}},Qa=class Fh extends Mi{static EMAIL_REGEX=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;constructor(t,r,n){super(t,r,n)}setInputType(){let t=`coo-${this.inappElement.t}`;return this.renderer.setAttribute(this.inappHTMLEl,"type","email"),this.renderer.setAttribute(this.inappHTMLEl,"id",t),t}addListener(t,r){t.addEventListener("keydown",n=>{this.borderColor||(this.borderColor=this.inappHTMLEl.style.borderColor),t.value.match(Fh.EMAIL_REGEX)?(this.renderer.setStyle(this.inappHTMLEl,"border-color",this.borderColor),this.triggerContext.updateValidation(r,!0)):(this.renderer.setStyle(this.inappHTMLEl,"border-color","red"),this.triggerContext.updateValidation(r,!1)),n.stopPropagation()})}},Za=class Vh extends Mi{static MOBILE_REGEX=/^\d+$/;constructor(t,r,n){super(t,r,n)}setInputType(){let t=`coo-${this.inappElement.t}`;return this.renderer.setAttribute(this.inappHTMLEl,"type","tel"),this.renderer.setAttribute(this.inappHTMLEl,"id",t),t}addListener(t,r){t.addEventListener("keydown",n=>{this.borderColor||(this.borderColor=this.inappHTMLEl.style.borderColor),t.value.match(Vh.MOBILE_REGEX)?(this.renderer.setStyle(this.inappHTMLEl,"border-color",this.borderColor),this.triggerContext.updateValidation(r,!0)):(this.renderer.setStyle(this.inappHTMLEl,"border-color","red"),this.triggerContext.updateValidation(r,!1)),n.stopPropagation()})}},ec=class Fn extends xr{static DAYS="Days";static HOURS="Hours";static MINUTES="Minutes";static SECONDS="Seconds";elements;spans=[];constructor(t,r,n){super(t,r,n),this.inappHTMLEl=this.renderer.createElement("div"),this.insertElement()}render(){this.addTimerChildren(),this.processAndStartTimer(),this.processCommonBlocks();let t=te(b(b(b({flex:"1 1 0"},this.stylesConverter.getBackgroundStyles(this.inappElement.bg)),this.stylesConverter.getBorderStyles(this.inappElement.br)),this.stylesConverter.getSpaceStyles(this.inappElement.spc)),{marginLeft:this.stylesConverter.getSizePx(this.inappElement.gap),marginRight:this.stylesConverter.getSizePx(this.inappElement.gap)});this.addStylesToTimer(t)}getBackgroundStyles(){return{}}processFontBlock(){let t=super.processFontBlock();return this.stylesConverter.getColourStyles(this.inappElement.color,"color",t),this.addStylesToTimer(t),t}getSpaceStyles(){return{}}getBorderStyles(){return{}}getDisplayStyles(){return{display:"flex",flexWrap:"nowrap",justifyContent:"center"}}addStylesToTimer(t){this.elements.forEach(r=>this.renderer.setStyles(r,t))}addTimerChildren(){let t=this.inappElement.show;this.elements=[],t.day&&this.elements.push(this.getChild(Fn.DAYS)),t.hour&&this.elements.push(this.getChild(Fn.HOURS)),t.minute&&this.elements.push(this.getChild(Fn.MINUTES)),t.second&&this.elements.push(this.getChild(Fn.SECONDS)),this.elements.forEach(r=>this.inappHTMLEl.appendChild(r))}getChild(t){let r=this.renderer.createElement("div"),n=this.renderer.createElement("span"),i=this.renderer.createElement("span");return i.innerText=t,n.innerText="00",n.id=`lc-${t}`,this.renderer.setStyle(i,"font-size","0.5em"),this.renderer.setStyle(i,"text-align","center"),this.renderer.setStyle(i,"font-family","inherit"),this.renderer.setStyle(n,"text-align","center"),this.renderer.setStyle(n,"font-family","inherit"),this.inappElement.lblPos==="start"?(r.appendChild(i),r.appendChild(n)):(r.appendChild(n),r.appendChild(i)),this.renderer.setStyle(r,"display","flex"),this.renderer.setStyle(r,"flex-direction",this.inappElement.horizontal?"":"column"),this.renderer.setStyle(r,"justify-content","center"),this.renderer.setStyle(r,"align-items","center"),this.renderer.setStyle(r,"gap","5px"),this.spans.push(n),r}processAndStartTimer(){let t=this.inappElement.timer.start(this.inappElement.timerType,r=>{this.spans.forEach(n=>{n.id===`lc-${Fn.DAYS}`?n.innerText=String(r.days).padStart(2,"0"):n.id===`lc-${Fn.HOURS}`?n.innerText=String(r.hours).padStart(2,"0"):n.id===`lc-${Fn.MINUTES}`?n.innerText=String(r.minutes).padStart(2,"0"):n.id===`lc-${Fn.SECONDS}`&&(n.innerText=String(r.seconds).padStart(2,"0"))})});this.triggerContext.intervals.push(t)}},tc=class extends xr{constructor(e,t,r){super(e,t,r),this.inappHTMLEl=this.renderer.createElement("select"),this.insertElement()}render(){this.renderer.setStyle(this.inappHTMLEl,"background","#ffffff00"),this.renderer.setStyle(this.inappHTMLEl,"outline","none"),this.processCommonBlocks(),this.addListener(this.inappHTMLEl),this.addOptions()}addListener(e){this.triggerContext.selectedEmbeddedItems?.length||this.updateItems(this.triggerContext.triggerData.items[0].vars[0]),e.addEventListener("click",t=>{t.stopPropagation()}),e.addEventListener("change",()=>{let t=new Sr(JSON.parse(e.value));this.updateItems(t)})}updateItems(e){let t=this.triggerContext.triggerData.items[0];this.triggerContext.selectedEmbeddedItems=[t.toEmbed(e)];let r=this.parentHTMLEl.querySelector("#coo-13");if(!r)return;let n=e.imgs[0]??t.imgs?.at(0);n?.url&&r.setAttribute("src",n.url)}addOptions(){let e=this.triggerContext.triggerData.items,t=this.inappHTMLEl;if(!e?.length){t.add(this.createOption(this.inappElement.placeholderText));return}let r=this.triggerContext.selectedEmbeddedItems?.at(0);e[0].vars.forEach(n=>{t.add(this.createOption(n.name??"Default",n,n.mID===r?.vID))})}createOption(e,t,r){let n=this.renderer.createElement("option");return n.text=e,n.value=JSON.stringify(t),r&&(n.selected=!0),t||(n.disabled=!0),n}},rc=class extends Bn{constructor(e,t,r){super(e,t,r)}render(){super.render(),this.inappHTMLEl.setAttribute("id",`coo-${this.inappElement.type}`)}},Bi=class qo{static ACTIVE_TRIGGER_DATA;renderer=Mt.get();safeHTTP;parent;rootContainer;containerHTMLElement;ian;triggerContext;resizeListener;cartDrawerToggleSubscription;constructor(t){this.safeHTTP=fe.getInstance(),this.resizeListener=()=>this.screenResized(),this.setParentContainer(t)}setParentContainer(t){this.parent=t??document.body,this.renderer.setParentContainer(this.parent)}render(t){this.renderEngagement(new Ct(t))}async renderEngagement(t){if(this.triggerContext=new Pi(new Date,t),this.triggerContext.onClose(r=>{this.closeInApp(r)}),this.ian=t.ian,(this.renderer.isMobile()||t.previewType==="mobile")&&this.ian.overrideForMobileView(),this.ian.isEmbedded()){let r=document.querySelector(this.ian.getEmbeddedSelector());this.setParentContainer(r)}await this.preloadImages(t),t.shouldDelay()?window.setTimeout(()=>{this.withCartDrawerClosed()},t.getDelaySeconds()):this.withCartDrawerClosed()}withCartDrawerClosed(){if(!ze.get().isOpen()||!this.renderer.isMobile()){this.startRenderingOnce();return}this.cartDrawerToggleSubscription=ze.get().onToggle().subscribe(({open:t})=>{!t&&this.startRenderingOnce()})}startRenderingOnce(){if(!this.shouldSkipCampaign()){qo.ACTIVE_TRIGGER_DATA=this.triggerContext.triggerData;try{this.startRendering()}catch(t){Le.getInstance().captureException(t,{triggerData:JSON.stringify(this.triggerContext.triggerData)});return}this.sendTriggerDisplayed(),this.renderer.isMobile()||window.addEventListener("resize",this.resizeListener),this.cartDrawerToggleSubscription?.unsubscribe()}}shouldSkipCampaign(){let t=this.triggerContext.triggerData;if(!t.previewType&&qo.ACTIVE_TRIGGER_DATA){let n={triggerShown:new Qr(qo.ACTIVE_TRIGGER_DATA??{})};return this.skipTrigger(t,n),!0}if(ue.get().isGoKwikPopupOpen)return this.skipTrigger(t,{reason:"GoKwik popup is open"}),!0;let r=N.PAYMENT_MODAL_DETAILS.find(n=>!!document.querySelector(n.identifier));return r?(this.skipTrigger(t,{reason:`${r.gateway} modal is open`}),!0):!1}startRendering(){this.renderer.calculateScalingFactor(this.ian),this.rootContainer=new Lo(this.parent,this.ian,this.triggerContext).render();try{this.renderContainer(this.triggerContext)}catch(t){throw w.error(t),t}}sendTriggerDisplayed(){let t={};this.triggerContext.triggerData.items?.length&&(t.promotedMIDs=this.triggerContext.triggerData.items?.map(i=>i.mID));let r=new Ee(N.EVENT_TRIGGER_DISPLAYED,t,this.triggerContext.triggerData);this.safeHTTP.sendEvent(r);let n={action:N.CAMPAIGN_DISPLAYED_ACTIVITY};document.dispatchEvent(new CustomEvent(N.POPUP_ACTIVITY_EVENT,{detail:n}))}sendTriggerClosed(t){let r=t.eventName;delete t.eventName;let n=new Ee(r,t,this.triggerContext.triggerData);n.name===N.EVENT_TRIGGER_CLICKED&&(n.items=this.triggerContext.selectedEmbeddedItems??this.triggerContext.triggerData.items?.map(i=>i.toEmbed())),this.safeHTTP.sendEvent(n)}addEnterAnimation(t){this.containerHTMLElement.animate(t.getEnterAnimation(),{duration:500})}renderElement(t,r,n){r instanceof hi?new Qa(t,r,n).render():r instanceof gi?new Za(t,r,n).render():r instanceof Yr?new Oo(t,r,n).render():r instanceof yi?new rc(t,r,n).render():r instanceof Mr?new Bn(t,r,n).render():r instanceof _n?new Po(t,r,n).render():r instanceof mi?new ec(t,r,n).render():r instanceof di?new tc(t,r,n).render():w.error("Unsupported element type- "+r.type)}renderContainer(t){let r=this.ian?.cont;r&&(this.containerHTMLElement=new Ja(this.rootContainer,r,t).render().getHTMLElement(),new Ya().loadAllFonts(this.ian),this.ian.elems?.forEach(async n=>{await this.renderElement(this.containerHTMLElement,n,t)}),this.addEnterAnimation(this.ian.anim))}closeInApp(t){let r=this.ian.anim.getExitAnimation();this.sendTriggerClosed(t),qo.ACTIVE_TRIGGER_DATA=void 0;let n=this.containerHTMLElement.animate(r,{duration:500,easing:"ease-in-out"});n.onfinish=()=>{this.removeInApp(),window.removeEventListener("resize",this.resizeListener)}}screenResized(){this.removeInApp(),this.startRendering()}removeInApp(){Mt.get().removeInApp(this.triggerContext)}skipTrigger(t,r){let n=new Ee(N.EVENT_CAMPAIGN_REJECTED,r,t);this.safeHTTP.sendEvent(n)}async preloadImages(t){let r=t.ian;if(!r)return;let n=[];r.elems.forEach(i=>{let s=i.bg?.img?.src;if(s&&n.push(this.getPromise(s)),i.t===1){let o=i.src;if(!o)return;n.push(this.getPromise(o))}}),r.bg?.img?.src&&n.push(this.getPromise(r.bg.img.src)),r.cont.bg?.img?.src&&n.push(this.getPromise(r.cont.bg.img.src)),await Promise.all(n)}getPromise(t){return new Promise(r=>{let n=new Image;n.onload=r,n.src=t,n.style.display="none"})}},sh=Se(Rr()),ah=Se(ti()),nc=class{triggerData;safeHttpService=fe.getInstance();render(e){e.contentSource===sh.EngagementContentSource.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){w.warn("Received invalid trigger callback");return}switch(t.type){case"open":this.safeHttpService.sendEvent(new Ee(N.EVENT_TRIGGER_DISPLAYED,{form:{id:t.formId}},this.triggerData));break;case"stepSubmit":{let r=this.getFormDetails(t);this.safeHttpService.sendEvent(new Ee(N.EVENT_FORM_SUBMITTED,{form:r},this.triggerData)),this.safeHttpService.updateProfile(r);break}case"close":window.removeEventListener("klaviyoForms",this.handleKlaviyoEvents.bind(this)),this.safeHttpService.sendEvent(new Ee(N.EVENT_TRIGGER_CLOSED,{form:{id:t.formId}},this.triggerData));break}}getFormDetails(e){let t={id:e.formId},r=e.metaData;if(ah.JSUtils.hasKeys(r)){let n=["email","phone_number","first_name","last_name","$email","$phone_number","$first_name","$last_name"];Object.keys(r).forEach(o=>{n.includes(o)||(t[o]=r[o])}),t.email=r.$email??r.email,t.mobile=r.$phone_number??r.phone_number;let i=r.$first_name??r.first_name,s=r.$last_name??r.last_name;(i?.length||s?.length)&&(t.name=i+" "+s)}return t}},ic=class{static trackIntent(e){if(!this.isInstalled()){w.log("Facebook pixel not installed");return}if(!Pe.get().pixelPush){w.log("Facebook pixel push not enabled");return}let t=Sn[e.intent]?.toLowerCase(),r=e.segmentName;!t&&!r||(w.debug(`Sending ${t} intent and ${r} segment to Facebook Pixel`),window.fbq("trackCustom","CooeeIntent",{intent_value:t,segment_value:e.segmentName}))}static isInstalled(){return window.fbq&&typeof window.fbq=="function"}},Ui=class{static sentryService=Le.getInstance();static httpApiService=ht.getInstance();static async refreshItems(e){if(e.isCartEmbed()&&!e.isSubscriptionUpsell()){let i=(await de.getCurrent().getNormalisedCart()).items.map(s=>s.mID);e.items=e.items.filter(s=>!i.includes(s.mID))}if(Pe.get().currencyCount<=1)return e.items;let t=e.items.length,r=e.items.map(i=>this.updatedItem(i,e.engagementID)),n=(await Promise.all(r)).filter(i=>i!=null);if(t&&!n.length){let i="Failed to fetch any product from Ajax API",s=new Ee(N.EVENT_CAMPAIGN_FAILED,{reason:i,currency:e.currency},e);throw fe.getInstance().sendEvent(s),new Error(i)}if(e.isCartRecovery()){let i=de.getCurrent().items,s=[];for(let o of n)for(let c of o.vars){if(!c.isAvailable)continue;let u=i.find(h=>h.variant_id.toString()===c.mID);if(!u)continue;let d=new At(o);d.name=u.title;let m=new Sr(c);m.name=u.variant_title,m.price.d=u.discounted_price/100,d.variants=[m],s.push(d)}return s}return n}static async updatedItem(e,t){let r=e,n,i=`/products/${r.slug}.js`;try{n=await this.httpApiService.request(i)}catch(o){return w.error(`Failed to fetch ${i}`,o),o instanceof Response?this.sentryService.captureMessage(`Shopify product fetch failed ${o.status}`,"error",{item:r,path:i},{"engagement.id":t}):this.sentryService.captureException(o,{item:r,path:i},{"engagement.id":t}),null}if(!n)return w.error("Item not found after AJAX call for:",r),null;r.name=n.title,r.tags=n.tags;let s=r.selectedOrFirstVariant.value;return r.vars.map(o=>{let c=n.variants.find(u=>u.id===+o.mID);o.name=c.title,o.isAvailable=c.available,o.price.d=c.price?c.price/100:c.price,o.price.effective=o.price.d,o.price.cmp=c.compare_at_price?c.compare_at_price/100:c.compare_at_price,+s.mID===c.id&&(s.effectivePrice.value=o.price.d)}),r}},oc=class Hh{static INSTANCE;httpService=se.get(ht);sentryService=se.get(Le);sessionManager=se.get(qe);runtime=ue.get();constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Hh),this.INSTANCE}sendSilently(t){this.send(t).catch(r=>w.error(`Failed to send ${t.name}`,r))}async send(t){if(w.debug(`Sending event ${t.name}`),er.prepend(`Sending event <strong>${t.name}</strong> with id ${t.id}`),this.shouldReject(t)){w.warn(`Rejecting event ${t.name}`);return}await Promise.all([this.addSessionContext(t),this.addShopifyContext(t)]),this.addShopifyAttributes(),t.name!==N.EVENT_APP_BACKGROUND&&this.runtime.setActive(),t.currentItem=this.runtime.getCurrentItem(),t.locale=this.runtime.locale,this.httpService.post("/v1/event/track",t).then(async r=>{w.log("\u2705 Event tracked:",t.name),er.prepend(`\u2705 Event <strong>${r.eventName}</strong> tracked`),this.processEventResponse(t,r)}).catch(r=>{w.error(`Error sending event ${t.name} to server`,r)})}shouldReject(t){return t.trigger?.triggerID==="test"||t.trigger?.triggerID==="preview"?(w.warn("Not sending event as this is a test trigger"),!0):!1}async addSessionContext(t){let r=await this.sessionManager.checkSessionAndGetContext();t.sessionID=r[0],t.sessionNumber=r[1],t.landingPage=r[2],t.page=Tr.parseFromCurrent()}async addShopifyContext(t){if(Me.isShopify())try{t.cart=await de.getCurrent().getNormalisedCart()}catch(r){w.error("Error fetching Shopify cart before sending the event",r)}}processEventResponse(t,r){this.renderWidgetIfAny(t,r).catch(n=>{w.error("Failed to display a campaign",n,t,r),this.sentryService.captureException(n,{event:t,response:r})}),this.utiliseIntentIfCalculated(r)}async renderWidgetIfAny(t,r){if(!r.triggerData){w.log(`Nothing to engage after ${t.name}`);return}w.log(`\u{1F4E3} Engagement(id=${r.triggerData.shortID}) will be shown`,r.triggerData);let n=new Ct(r.triggerData);n.occurred=t.occurred;let i;try{i=await Ui.refreshItems(n)}catch(s){w.error("Failed to refresh the products",s);return}if(n.items=i,n.contentSource===ch.EngagementContentSource.KLAVIYO){new nc().render(n);return}new Bi().renderEngagement(n).catch(s=>{w.error("Failed to render popup",s),this.sentryService.captureException(s,{event:t,triggerData:n})})}utiliseIntentIfCalculated(t){t.intent&&(Oi.trackIntent(t.intent),ic.trackIntent(t),er.prepend(`Intent is <strong>${Sn[t.intent]}</strong>`))}addShopifyAttributes(){Me.isShopify()&&de.getCurrent().addCooeeAttributes().catch(t=>{w.error("Fail to add attributes in cart",t)})}},fe=class qh{static INSTANCE;httpApiService=ht.getInstance();eventAPIService=oc.getInstance();constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new qh),this.INSTANCE}sendEvent(t){w.debug(`Waiting for auth to send event ${t.name}`),qe.replaySubject.subscribe(async()=>{this.eventAPIService.sendSilently(t)})}updateProfile(t){qe.replaySubject.subscribe(()=>{this.httpApiService.updateUserData(t??{})})}trackOrder(t){qe.replaySubject.subscribe(()=>{this.httpApiService.trackOrder(t)})}updateDeviceProps(t){qe.replaySubject.subscribe(()=>{this.httpApiService.updateDeviceProps({props:t})})}generateDiscount(t){return this.httpApiService.generateDiscount(t)}},er=class{static isOn=!1;static element;static watch(){let e=w.getDebugParam();(e==="1"||e==="on")&&fe.getInstance().updateDeviceProps({debugTill:this.getDebugMillis()}),e==="on"?sessionStorage.cooeeDebug="1":e==="off"&&sessionStorage.removeItem("cooeeDebug"),sessionStorage.cooeeDebug&&(this.isOn=!0,this.renderDebugBar())}static prepend(e){if(!this.isOn)return;let t=document.createElement("div");t.innerHTML="• "+new Date().toLocaleString()+" - "+e,this.element.prepend(t)}static renderDebugBar(){this.element=document.createElement("div"),this.element.id="cooee-debugger",this.element.setAttribute("draggable","true"),document.body.appendChild(this.element)}static dragElement(){let e=0,t=0,r=0,n=0,i=c=>{c=c||window.event,c.preventDefault(),r=c.clientX,n=c.clientY,document.onmouseup=o,document.onmousemove=s},s=c=>{c=c||window.event,c.preventDefault(),e=r-c.clientX,t=n-c.clientY,r=c.clientX,n=c.clientY,this.element.style.top=this.element.offsetTop-t+"px",this.element.style.left=this.element.offsetLeft-e+"px"},o=()=>{document.onmouseup=null,document.onmousemove=null};this.element.onmousedown=i}static getDebugMillis(){return new Date().getTime()+6*60*60*1e3}},Mo=class extends Wr{static storeName="app";static{this.storage=Qn(this.storeName)}},sc=class{static processConfiguration(){let e=Pe.get();!e.gaMeasurementID||!e.gaEnabled||this.sendClientID()}static async sendClientID(){let e=await this.getClientID();e&&fe.getInstance().updateDeviceProps({gaClientID:e})}static async getClientID(){let e=await De.get(oe.GA_CLIENT_ID),t=await this.getClientIDViaGTag();if(e!==t)return await De.set(oe.GA_CLIENT_ID,t),t}static async getClientIDViaGTag(){let e=Pe.get().gaMeasurementID;if(!(!e||!window.gtag))return new Promise(t=>{window.gtag("get",e,"client_id",r=>{t(r)})})}},ac=class Gh{static INSTANCE;constructor(){this.init()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Gh),this.INSTANCE}init(){Mo.get(oe.APP_CONFIG,{}).then(t=>this.updateGlobalConfig(t))}async processAppConfigurations(t){w.log("Received app configuration",t),t.currencyCount=t.currencies?.length;let r=this.updateGlobalConfig(t);Mo.set(oe.APP_CONFIG,r).catch(n=>w.error(n)),sc.processConfiguration(),r.website&&(st.injectRawScript(r.website.commonJS),st.injectRawCSS(r.website.commonCSS)),ze.get().onToggle().subscribe(async({open:n})=>{w.info("Cart drawer is now",n?"open":"closed"),n&&(se.get(cr).loadOrRenderWidgetsAfterCartChange(),await this.trackViewCartEvent())})}updateGlobalConfig(t){let r=we.globalRef.config.update(t);return ze.forceUpdate(),w.debug("App configurations",r),r}async trackViewCartEvent(){let t=await de.getCurrent().getNormalisedCart(),r={value:t.amount,currency:t.currency},n={items:t.items,amount:r,drawer:!0};fe.getInstance().sendEvent(new Ee(N.EVENT_VIEW_CART,n))}},lh=Se(Xu()),cc=class Pc{static META_REQUIRED_FIELDS=["ad_id"];static GOOGLE_REQUIRED_FIELDS=["gad_source","gclid"];source;adID;campaignID;adName;campaignName;constructor(t){this.adID=t.adID,this.campaignID=t.campaignID,this.source=t.source}static getAdParams(){let t;try{t=new lh.URLBuilder(location.href)}catch{return{}}let r={};if(this.META_REQUIRED_FIELDS.every(n=>Array.from(t.getParams().keys()).includes(n)))return r={source:"META",adID:t.getQueryParam("ad_id")?.trim(),campaignID:t.getQueryParam("campaign_id")?.trim()},new Pc(r);if(this.GOOGLE_REQUIRED_FIELDS.every(n=>Array.from(t.getParams().keys()).includes(n)))return r={source:"GOOGLE"},new Pc(r)}},Mn=class Wh{static INSTANCE;httpAPIService=ht.getInstance();coreService=ac.getInstance();sentryService=Le.getInstance();sdkToken="";userID="";deviceID="";appID="";shopifyShop="";constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Wh),this.INSTANCE}init(t){this.appID=t.appID,this.shopifyShop=t.shopifyShop}async storeAndPopulateAuthData(t){t&&(t.userID&&(this.userID=t.userID,await De.set(oe.ID,t.userID)),t.deviceID&&(this.deviceID=t.deviceID,await De.set(oe.DEVICE_ID,t.deviceID)),t.sdkToken&&(this.sdkToken=t.sdkToken,await De.set(oe.SDK_TOKEN,t.sdkToken)),this.updateAPIClient())}async validateSession(t){await this.populateFirstSeen(),await this.populateUserDataFromStorage(),w.log("Validating session with server");let r=await this.getSessionValidateData(t);try{let n=await this.httpAPIService.validateSession(r);w.log("Validating session Response",n),await this.coreService.processAppConfigurations(n.appSettings),await this.storeAndPopulateAuthData(n)}catch(n){throw w.error(n),n}}async populateUserDataFromStorage(){if(this.sdkToken=await De.get(oe.SDK_TOKEN),!this.sdkToken){w.warn("No SDK token found in local storage");return}this.userID=await De.get(oe.ID),this.deviceID=await De.get(oe.DEVICE_ID),this.updateAPIClient()}updateAPIClient(){w.debug("SDK Token:",this.sdkToken),w.log("Device ID:",this.deviceID),w.log("User ID:",this.userID),Oi.trackDeviceID(this.deviceID),er.prepend(`Device ID: <strong>${this.deviceID}</strong>`),this.httpAPIService.setAPIToken(this.sdkToken),this.sentryService.setGlobalContext("Visitor Info",{device_id:this.deviceID,user_id:this.userID}),this.sentryService.setUser({id:this.deviceID})}async getSessionValidateData(t){let r=await new Ga().get();r.host=location.origin;try{(await rh())?.isPrivate&&(r.private=!0)}catch(i){uh.default.error("Unable to detect private/incognito window",i)}let n=await De.get(oe.DEVICE_ID);return n||(n=new tt().toHexString(),await De.set(oe.DEVICE_ID,n)),te(b({deviceID:n,deviceProps:r,appID:this.appID,shopifyShop:this.shopifyShop},t),{sdk:N.SDK,page:Tr.parseFromCurrent(),ad:cc.getAdParams(),occurred:this.getSessionStartTime(ue.get().jsLoadTime),currentItem:ue.get().getCurrentItem(),cart:await de.getCurrent().getNormalisedCart(),properties:{}})}async populateFirstSeen(){let t=await De.get(oe.FIRST_SEEN),r=t?new Date(t):new Date;t||await De.set(oe.FIRST_SEEN,r.toISOString()),this.httpAPIService.setFirstSeen(r),this.sentryService.setGlobalContext("Visitor Info",{first_seen:r.toISOString()})}getSessionStartTime(t){return(new Date().getTime()-t.getTime())/1e3>N.IDLE_TIME_IN_SECONDS?new Date:t}},qe=class Ko{static replaySubject=new xo(1);static INSTANCE;sentryService=se.get(Le);lock=new Zn;constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Ko),this.INSTANCE}init(t){if(w.debug("Initialising SDK",t),eh(navigator.userAgent)){w.info("This seems to be a bot. Disabling SDK");return}Mn.getInstance().init(t),Ko.INSTANCE.checkForNewSession(!0).then(async()=>{Ko.replaySubject.next(!0),Ko.replaySubject.complete()}).catch(r=>w.error("Unable to perform device init",r))}getCurrentSessionID(){return rt.set(oe.SESSION_LAST_USED_TIME,new Date().getTime()),rt.get(oe.ID,"")}async checkSessionAndGetContext(){return await this.checkForNewSession(),this.getContext()}async getContext(){let t=await Promise.all([this.getCurrentSessionID(),this.getCurrentSessionNumber(),this.getLandingPage()]);return this.sentryService.setGlobalContext("Visitor Session",{id:t[0],number:t[1],landing_page:t[2]}),t}async checkForNewSession(t){await this.lock.acquire();let r=!1;if(await this.isNewSessionRequired()?(await this.startNewSession(),t=!0,r=!0):await this.notSynced()&&(r=!0),t){let n=await this.getContext();await Mn.getInstance().validateSession({sessionID:n[0],sessionNumber:n[1],landingPage:n[2],newSession:r}),await rt.set(oe.SESSION_SYNCED,!0)}this.lock.release()}async startNewSession(){w.debug("Starting new session"),await rt.clear(),w.debug("Cleared SessionStorage before starting new session");let t=new Date,r=new tt().toHexString();w.debug("New session ID to be used",r);let n=await De.get(oe.SESSION_NUMBER,0)+1;er.prepend(`New Session ID: <strong>${r}</strong> & number: ${n}`),await Promise.all([De.set(oe.SESSION_NUMBER,n),rt.set(oe.ID,r),rt.set(oe.SESSION_LAST_USED_TIME,t.getTime()),rt.set(oe.SESSION_LANDING_PAGE,Tr.parseFromCurrent())])}getLandingPage(){return rt.get(oe.SESSION_LANDING_PAGE,{})}getCurrentSessionNumber(){return De.get(oe.SESSION_NUMBER,1)}async isNewSessionRequired(){if(!await rt.get(oe.ID))return!0;let t=await rt.get(oe.SESSION_LAST_USED_TIME,0);return t?(new Date().getTime()-t)/1e3>N.IDLE_TIME_IN_SECONDS:!0}async notSynced(){return!await rt.get(oe.SESSION_SYNCED,!1)}},Go=Se(Rr()),gh=Se(Lc()),yh=Se(ti()),vh=Se(on()),ph=Se(Jo()),fh=Se(on()),ki=class{constructor(e,t){this.triggerContext=e,this.element=t}safeHTTP=fe.getInstance();async execute(e){let t=ue.get().getCurrentItem(),r=e.clickAction||this.element?.clc;if(!r)return;let n=e.item,i=this.triggerContext,s=new en,o=i.triggerData.redirectBehaviour,c=!!i.triggerData.discount.type&&!!r?.applyDiscount,u={selectedVariants:i.triggerData.nonMutableItems.map(_=>({itemMID:_.mID,mID:_.selectedOrFirstVariant.value.mID})),eID:i.triggerData.engagementID,cID:i.triggerData.contentID},d="",m=[],h=[];if(n?h=[n.toEmbed()]:e.embeddedItem&&(h=[e.embeddedItem]),r.at===108){let _=i.selectedItems;if(h=e.embeddedItems??_.map(D=>D.toEmbed()),i.shouldGiveFBTDiscount||e.embeddedItems?.length){let D;e.embeddedItems?D=e.embeddedItems.map(M=>({itemMID:M.mID,mID:M.vID,quantity:M.quantity})):D=_.map(M=>({itemMID:M.mID,mID:M.selectedOrFirstVariant.value.mID}));let P=i.triggerData.bundleFrom;i.triggerData.isBundleOnCartDrawer()&&P&&(D.push({itemMID:P.mID,mID:P.selectedOrFirstVariant.value.mID,isPrimary:!0}),h.unshift(P.toEmbed())),u.selectedVariants=D,i.triggerData.isBundleOnPDP()&&u.selectedVariants.forEach(M=>{M.mID===t.vID&&(M.isPrimary=!0)})}else u=void 0;m=e.embeddedItems??_}else if(r.at===107){let _=await de.getCurrent().getNormalisedCart();h=_.items,u.selectedVariants=_.items.map(D=>({itemMID:D.mID,mID:D.vID}))}else if(r.at===102)m=n?[n]:[e.embeddedItem];else if(r.at===101)d=n?Me.getRootPrefix()+"products/"+n.slug:e.embeddedItem?.link;else if(r.at===4){let _=Q.isValidURL(r.gu?.u);_&&(d=_.href)}else if(r.at===109){let _=await s.upgradeToSubscription(n,i.triggerData);this.triggerContext.triggerData.skipSubscribedItems&&this.triggerContext.renderer.destroy(),ze.get().refreshUI(_)}if(this.sendTriggerClicked(h,{from:"button"},e.video),w.debug({redirectPath:d,redirectBehaviour:o,hasDiscount:c}),!c&&d){location.href=d;return}let y,E=!1;try{y=await this.getOrGenerateDiscountCode(u),w.debug("Discount code (if any) to apply",y)}catch(_){if(!this.triggerContext.triggerData.isBYOB()){fh.default.error("Unable to get a discount code",_);return}}if(y&&r.at===103)await s.performCopyCoupon(y);else if(r.at===110){let _=await s.performCartCreate(t,y,i.triggerData);_&&(location.href=_);return}try{y&&await Zr.applyWithStorefront(y)}catch(_){w.error(_),E=!0}let v;if(m?.length&&(v=await s.performAddToCart(m,i.triggerData)),E&&y){Zr.navigate(y,o,d);return}if(d){location.href=d;return}Zr.navigateWithoutDiscount(o,v)}sendTriggerClicked(e,t,r){let n=N.EVENT_TRIGGER_CLICKED,i=new Ee(n,t,this.triggerContext.triggerData);i.items=e,r?.id&&(i.videos=[r.id]),this.safeHTTP.sendEvent(i)}async getOrGenerateDiscountCode(e){let t=this.triggerContext.triggerData.discount;if(!t?.type)return;let r="";if(t.type===ph.DiscountType.STATIC){if(!t.code)throw Le.getInstance().captureMessage("No discount code found","warning",{triggerContext:this.triggerContext}),new Error("No discount code found");return t.code}if(e){if(r=await this.generateDiscount(e),!r)throw w.error("No discount code found",e),new Error("Discount code not found or generated");return r}}async generateDiscount(e){try{return(await this.safeHTTP.generateDiscount(e))?.code}catch(t){throw Q.showSnackbar("Failed to generate a discount code"),w.error("Error generating discount code",t,e),Le.getInstance().captureMessage("Failed to generate discount code","error",{discountData:JSON.stringify(e),triggerContext:this.triggerContext,error:t}),t}}},Ne=class extends pr{stylesConverter=new Li(1);renderer=Mt.get();mediaStyle={};deviceTypeKey;clickExecutor;componentWillMount(){this.deviceTypeKey=this.renderer.isMobile()?"sm":"lg",this.clickExecutor=new ki(this.props.triggerContext,this.props.element)}getCompiledStyles(){return this.putStyleAccordingToDevice(),b(b(te(b(b(b(b(b(b({},this.stylesConverter.getFlexStyles(this.mediaStyle.flex)),this.stylesConverter.getBackgroundStyles(this.mediaStyle.bg)),this.stylesConverter.getBorderStyles(this.mediaStyle.br)),this.stylesConverter.getSizeStyles(this.mediaStyle.size)),this.stylesConverter.getSpaceStyles(this.mediaStyle.spc)),this.stylesConverter.getLayoutStyles(this.mediaStyle.lout)),{boxSizing:"border-box",outline:"none"}),this.getComponentStyles()),this.props.style)}matchWhenCondition(e){if(!e?.op)return!0;let{lhs:t,rhs:r}=e;switch(e.op){case"eq":return t===r;case"gt":return+t>+r;case"gte":return+t>=+r;case"lt":return+t<+r;case"lte":return+t<=+r;case"ne":return t!==r;case"null":return t==null;case"empty":return t.trim()==="";case"in":return new RegExp(`\\b${r}\\b`).test(t);case"nin":return!new RegExp(`\\b${r}\\b`).test(t);default:return w.error(`Invalid operator found for when condition - ${e.op}`),!1}}putStyleAccordingToDevice(){let e=this.props.element;this.mediaStyle=e.style.lg,this.renderer.isMobile()&&e.style.sm&&Object.keys(e.style.sm).length&&(this.mediaStyle=b(b({},this.mediaStyle),e.style.sm))}sendTriggerClicked(e,t){this.clickExecutor.sendTriggerClicked(e,t)}async onClick(e,t){e.stopPropagation(),await this.clickExecutor.execute(t)}},tS=0,GH=Array.isArray;function $(e,t,r,n,i,s){t||(t={});var o,c,u=t;if("ref"in u)for(c in u={},t)c=="ref"?o=t[c]:u[c]=t[c];var d={type:e,props:u,key:r,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--tS,__i:-1,__u:0,__source:i,__self:s};if(typeof e=="function"&&(o=e.defaultProps))for(c in o)u[c]===void 0&&(u[c]=o[c]);return _e.vnode&&_e.vnode(d),d}var Ft=class extends Ne{componentDidMount(){this.setState(()=>({text:this.props.element.text})),ct(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=""),$("div",{style:e,onClick:this.customOnClick.bind(this),className:"lc-text",children:$("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()},r=_t.render(JSON.stringify(this.props.element),t),n=new ot(JSON.parse(r));if(!this.matchWhenCondition(n.when)){this.setState(()=>({text:""}));return}this.setState(()=>({text:n.text}))}getTypoStyles(){let e={},t=this.mediaStyle.typo??new lt;return e.letterSpacing=t.letterSpacing,e.fontSize=t.fs+"px",e.lineHeight=t.lh,e.fontFamily=t.fam.name||"inherit",e.textAlign=t.alignment,e.fontWeight=t.fw,e.textDecoration=t.td??"none",this.stylesConverter.getColourStyles(t.tc,"color",e),e}getComponentStyles(){return b({},this.getTypoStyles())}getSpanStyle(){return{overflow:"hidden",display:"-webkit-box",webkitBoxOrient:"vertical",webkitLineClamp:2,color:"inherit",fontSize:"inherit",fontWeight:"inherit",fontFamily:"inherit"}}},Un=class extends Ft{render(){return $("div",{style:this.getCompiledStyles(),className:"lc-button",onClick:e=>this.onClick(e,{item:this.props.item}),children:$("span",{style:this.getSpanStyle(),dangerouslySetInnerHTML:{__html:this.state.text}})})}getComponentStyles(){return te(b({},super.getComponentStyles()),{cursor:"pointer"})}},rp=class extends pr{render(){if(this.props.element.show[this.props.label.toLowerCase()])return this.props.element.lblPos==="end"?$("div",{style:b(b({},this.getElementStyle()),this.props.styles),children:[$("span",{children:this.props.time}),$("span",{style:this.getTimeLabelStyle(),children:this.props.label})]}):$("div",{style:b(b({},this.getElementStyle()),this.props.styles),children:[$("span",{style:this.getTimeLabelStyle(),children:this.props.label}),$("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}},Bo=class extends Ft{labels={Days:"00",Hours:"00",Minutes:"00",Seconds:"00"};componentWillMount(){super.componentWillMount(),this.setState(()=>b({},this.labels)),this.processAndStartTimer()}render(){return $("div",{style:this.getLabelsParentStyle(),children:Object.keys(this.labels).map(e=>$(rp,{styles:this.getCompiledStyles(),label:e,time:this.state[e],element:this.props.element}))})}getLabelsParentStyle(){return{display:"grid",justifyContent:"center",gridTemplateColumns:"repeat(4, auto)",gap:this.stylesConverter.getSizePx(this.props.element.gap)}}getDisplayStyles(){return{display:"grid",placeContent:"center center"}}getComponentStyles(){return b(b({},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(()=>b({},this.labels))})}},Uo=class extends Ne{componentDidMount(){ct(()=>{this.setState(()=>({checked:this.props.item.selected.value}))})}render(){return $("div",{style:this.getCompiledStyles(),className:"lc-checkbox",children:$("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 lt;return e.textAlign=t.alignment,e.justifyContent=t.alignment,e}getComponentStyles(){return te(b({},this.getTypoStyles()),{display:"flex"})}},mh=Se(Rr()),kr=class extends Ne{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 $("img",{onClick:this.customOnClick.bind(this),className:"lc-image",alt:e?.name||"Image",onMouseEnter:this.handleMouseEnter.bind(this),onMouseLeave:this.handleMouseLeave.bind(this),src:t,style:this.getCompiledStyles()})}customOnClick(e){this.props.element.clc?.at===mh.ClickActionType.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}},Fr=class extends Ne{render(){if(!(this.props.element.hide||!this.matchWhenCondition(this.props.element.when)))return $("div",{style:this.getCompiledStyles(),class:"lc-flexbox",children:$(tn,{elements:this.props.elements,element:this.props.element,triggerContext:this.props.triggerContext})})}getComponentStyles(){let e=this.mediaStyle.flex??new vi,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}},ko=class extends Fr{render(){if(!(this.props.element.hide||!this.matchWhenCondition(this.props.element.when)))return $("div",{style:this.getCompiledStyles(),class:"lc-flexbox",children:$(Fi,{elements:this.props.elements,element:this.props.element,triggerContext:this.props.triggerContext,item:this.props.item,noLinks:this.props.noLinks})})}},Fo=class extends Ne{render(){return $("select",{style:this.getCompiledStyles(),value:this.props.selectedVariant.selectedSellingPlan.value?.mID??"",onChange:this.onChange.bind(this),disabled:this.state.disabled,className:"lc-dropdown",children:this.createSelectItems()})}componentDidMount(){ct(()=>{this.setState(()=>({disabled:this.props.triggerContext.triggerData.isBundle()?!this.props.item.selected.value:!1}))})}getTypoStyles(){let e={},t=this.mediaStyle.typo??new lt;return e.letterSpacing=t.letterSpacing,e.fontSize=t.fs+"px",e.lineHeight=t.lh,e.fontFamily="inherit",e.textAlign=t.alignment,e.fontWeight=t.fw,this.stylesConverter.getColourStyles(t.tc,"color",e),e.boxShadow="none",e}getComponentStyles(){let e={};return this.props.selectedVariant.sellingPlans?.length||(e.visibility="hidden"),b(b({},e),this.getTypoStyles())}createSelectItems(){let e=[],t=this.props.selectedVariant;if(!t.sellingPlans?.length)return[];this.props.triggerContext.triggerData.skipSubscribedItems?t.selectedSellingPlan.value||(t.sellingPlans[0].isSelected=!0,t.changeSellingPlan(t.sellingPlans[0])):e.push($("option",{value:"",selected:!t.selectedSellingPlan,children:"One time purchase"}));for(let r of t.sellingPlans??[])e.push($("option",{value:r.mID,selected:r.isSelected,children:r.name}));return e}onChange(e){let t=e.target.value;t?this.props.selectedVariant.selectedSellingPlan.value=this.props.selectedVariant.sellingPlans.find(r=>r.mID===t):this.props.selectedVariant.selectedSellingPlan.value=void 0}},dh=Se(Oc()),Ho=class extends Ne{colorRegex=new RegExp('fill="#[a-zA-Z0-9]+"');constructor(){super(),_t.escape=dh.MustacheUtils.escapeHtml}render(){let e=this.getCompiledStyles(),t=this.getRating();return t||(e.display="none",t=""),$("div",{style:e,className:"lc-star-rating",dangerouslySetInnerHTML:{__html:t}})}getRating(){let e=this.props.element.fullStar,t=this.props.element.halfStart,r={size:this.props.element.iconSize,color:this.props.element.c.hex};e=_t.render(e,{svg:r}),t=_t.render(t,{svg:r});let n=this.props.review;if(!n?.rating)return"";let i="";if(this.props.element.showSingleStar)i=e;else{let s=5,o=`${n.rating}`.split(".");for(let c=0;c<+o[0];c++)i+=e,s--;o[1]&&(i+=t,s--);for(let c=0;c<s;c++)i+=e.replace(this.colorRegex,'fill="#f1f1f1')}return i}getComponentStyles(){return{display:"flex",alignItems:"center"}}},$o=class extends Ne{render(){return $("select",{style:this.getCompiledStyles(),value:this.props.item.selectedOrFirstVariant.value.mID,onChange:this.onChange.bind(this),disabled:this.state.disabled,className:"lc-dropdown",children:this.createSelectItems()})}componentDidMount(){ct(()=>{this.setState(()=>({disabled:this.props.triggerContext.triggerData.isBundle()?!this.props.item.selected.value:!1}))})}getTypoStyles(){let e={},t=this.mediaStyle.typo??new lt;return e.letterSpacing=t.letterSpacing,e.fontSize=t.fs+"px",e.lineHeight=t.lh,e.fontFamily="inherit",e.textAlign=t.alignment,e.fontWeight=t.fw,this.stylesConverter.getColourStyles(t.tc,"color",e),e.boxShadow="none",e}getComponentStyles(){let e={};return this.props.item.vars?.length===1&&this.props.item.vars[0].name==="Default Title"&&(e.visibility="hidden"),b(b({},e),this.getTypoStyles())}createSelectItems(){let e=[];for(let t of this.props.item.vars)e.push($("option",{value:t.mID,disabled:!t.isAvailable,children:t.name}));return e}onChange(e){let t=e.target.value;this.props.item.selectedOrFirstVariant.value=this.props.item.vars.find(r=>r.mID===t)}},Fi=class extends Ne{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 $(ko,{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()?$(Uo,{element:e,item:this.props.item,triggerContext:this.props.triggerContext}):void 0;if(e.t===13){let t=e,r=this.props.item,n=r.variantImage??r.imageURL,i=r.variantSecondaryImage??r.secondaryImageURL;t.lg=t.sm={src:n,name:r.name,secondarySrc:i};let s=$(kr,{element:t,onClick:this.customOnClick.bind(this),triggerContext:this.props.triggerContext});return this.props.noLinks?s:$("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:$($o,{element:t,item:this.props.item,triggerContext:this.props.triggerContext})}return e.t===16?$(Fo,{element:e,selectedVariant:this.props.item.selectedOrFirstVariant.value,item:this.props.item,triggerContext:this.props.triggerContext}):e.t===19?$(Ho,{element:e,triggerContext:this.props.triggerContext,review:this.props.item.reviews}):e.t===18||e.t===3?$(Un,{element:e,item:this.props.item,triggerContext:this.props.triggerContext}):$(tn,{elements:[e],element:this.props.element,triggerContext:this.props.triggerContext})}}render(){return this.props.elements.map(e=>this.renderElement(e))}getComponentStyles(){return{}}renderProductTitle(e){let t=$(Ft,{element:e,onClick:this.customOnClick.bind(this),triggerContext:this.props.triggerContext});return this.props.noLinks?t:$("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"}))}},hh=Se(Jo()),kn=class extends Ne{productElement;constructor(e,t){super(e,t),this.setState(()=>({decoration:"unset"}))}render(){let e=JSON.stringify(this.props.element),t=_t.render(e,this.getProductData());if(this.productElement=new Kr(JSON.parse(t)),!(this.productElement.hide||!this.matchWhenCondition(this.productElement.when)))return $("div",{style:b({},this.getCompiledStyles()),class:"lc-single-product",children:$(Fi,{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.selectedOrFirstVariant.value,t=e.price,r=this.props.item.name,n=this.props.item.category,i=Q.formatCurrency(t.d,!0),s=this.props.item.variantImage??this.props.item.imageURL,o=this.props.item.meta,c=this.props.item.tags?.join(",")??"",u=this.props.item.reviews?.rating,d=this.props.item.reviews?.totalReviews,m=t.cmp&&t.cmp>t.d,h=this.props.triggerContext.hasManipulatedProductQuantity()?this.props.triggerContext.getManipulatedQuantity(this.props.item.quantity):this.props.item.quantity,y={name:r,price:i,quantity:h,image_url:s,meta:o,category:n,rating:u,reviews:d,tags:c},E=e.effectivePrice.value!==t.d;E&&(y.effective_price=Q.formatCurrency(e.effectivePrice.value));let v=this.props.triggerContext.triggerData.discount.type===hh.DiscountType.BXGY;if(!E&&v&&(y.effective_price=Q.formatCurrency(e.effectivePrice.value),y.price=""),m){y.compare_price=Q.formatCurrency(t.cmp);let D=t.cmp-t.d;y.discount_percent=(D/t.cmp*100).toFixed(0),y.discount_price=Q.formatCurrency(D)}let _={name:e.name,quantity:this.props.triggerContext.hasManipulatedProductQuantity()?this.props.triggerContext.getManipulatedQuantity(e.quantity):e.quantity};return{product:y,variant:_,svg:{color:()=>"{{svg.color}}",size:()=>"{{svg.size}}"}}}};function lc(e,t){if(!e||!window.Swiper)return;let r=new window.Swiper(e,{loop:!0,slidesPerView:t.maxInRow,spaceBetween:t.gap+"px",pagination:{type:t.pagination.type,el:e.querySelector(".swiper-pagination"),clickable:!0,renderBullet:(n,i)=>`
|
|
64
64
|
<span class="${i}"
|
|
65
65
|
style="background-color: ${t.pagination.color?.rgba};"></span>
|
|
66
66
|
`,renderProgressbar:n=>`
|
|
67
67
|
<span class="${n}"
|
|
68
68
|
style="background-color: ${t.pagination.color?.rgba};">
|
|
69
69
|
</span>
|
|
70
|
-
`},navigation:{nextEl:e.querySelector(".swiper-button-next"),prevEl:e.querySelector(".swiper-button-prev")},autoplay:t.autoplay?.enabled?{delay:t.autoplay?.delay,disableOnInteraction:!1}:!1,autoHeight:!0});return e.style.setProperty("--swiper-navigation-size",`${t.navigation.size}px`),r}function uc(e,t,r){let n={color:e.navigation.color?.rgba};return e.pagination.enabled&&(n.transform="translateY(-25%)"),$("div",{class:"swiper-container",ref:t,children:[$("div",{class:"swiper-wrapper",children:r()}),e.navigation.enabled&&$("div",{class:"swiper-button-next",style:n,children:$("span",{})}),e.navigation.enabled&&$("div",{class:"swiper-button-prev",style:n,children:$("span",{})}),e.pagination.enabled&&$("div",{className:"swiper-pagination",style:{bottom:0,top:"unset",position:"relative",color:e.pagination.color?.rgba}})]})}var jo=class extends Ne{swiperRef=null;swiperInstance=null;configuration;gap;constructor(e,t){super(e,t),this.configuration=this.renderer.isMobile()?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&&st.loadSwiperScript().then(()=>{this.swiperInstance=lc(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 r=i=>{this.swiperRef=i},n=()=>e?.map(i=>$("div",{class:"swiper-slide",children:this.getProductFragment(i)}));t=$("div",{style:te(w({},this.getCompiledStyles()),{display:"block"}),class:"lc-product-swiper-list",children:uc(this.configuration,r,n)})}else t=$("div",{style:this.getCompiledStyles(),class:"lc-product-list",children:e?.map((r,n)=>this.getProductFragment(r,n!==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 r=this.props.triggerContext.triggerData,n=r.items.length,i;r.isBundle()?i=this.props.element.prod.symbol?.hide!==!0?n*2-1:n:i=this.props.element.conf[this.deviceTypeKey].maxInRow,t.gridTemplateColumns=`repeat(${i}, auto)`}}return t}getProductFragment(e,t=!1){return $(fr,{children:[$(kn,{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&&$("div",{style:{display:"flex",alignItems:"center",justifyContent:"center"},children:$(Ft,{element:this.props.element.prod.symbol,triggerContext:this.props.triggerContext})})]},e.mID)}},Vo=class extends Ne{swiperRef=null;swiperInstance=null;constructor(e,t){super(e,t)}componentDidMount(){st.loadSwiperScript().then(()=>{this.swiperInstance=lc(this.swiperRef,this.props.element.conf)})}componentWillUnmount(){this.swiperInstance&&this.swiperInstance.destroy()}render(){let e=this.props.element,t=n=>{this.swiperRef=n},r=()=>e.values?.map(n=>$("div",{class:"swiper-slide",onClick:i=>this.onClick(i,{clickAction:this.getClickAction(n)}),children:this.renderElement(n)}));return uc(e.conf,t,r)}getComponentStyles(){return{}}renderElement(e){let t=this.valueAddedSlide(this.props.element.slide,e);switch(t?.t){case 1:return $(kr,{element:t,triggerContext:this.props.triggerContext});case 4:return $(Fr,{elements:t.elems,element:t,triggerContext:this.props.triggerContext});default:b.warn("Unknown slide type for carousal")}}valueAddedSlide(e,t){let r=JSON.stringify(e),n=_t.render(r,{form:t});return kt.getParsedElement(JSON.parse(n))}getClickAction(e){let t=w({},this.props.element.clc),r=JSON.stringify(t),n=_t.render(r,{form:e});return JSON.parse(n)}},tn=class extends Ne{constructor(e,t){super(e,t),this.setState(()=>({decoration:"unset"})),ct(()=>{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 $(Fr,{element:t,triggerContext:this.props.triggerContext,elements:t.elems})}if(e.t===61)return $(Uo,{element:e,triggerContext:this.props.triggerContext});if(e.t===3)return this.state.showButton?$(Mn,{element:e,triggerContext:this.props.triggerContext}):void 0;if(e.t===2)return $(Ft,{element:e,triggerContext:this.props.triggerContext});if(e.t===1)return $(kr,{element:e,triggerContext:this.props.triggerContext});if(e.t===11)return $(jo,{element:e,triggerContext:this.props.triggerContext});if(e.t===12)return $(kn,{element:e,item:this.props.triggerContext.triggerData.items[0],triggerContext:this.props.triggerContext});if(e.t===62)return $(Vo,{element:e,triggerContext:this.props.triggerContext})}}render(){return this.props.elements.map(e=>this.renderElement(e))}getComponentStyles(){return{}}},Wo=class extends Ne{clickAction;isClickable;constructor(e,t){super(e,t),this.clickAction=this.props.element.clc,this.isClickable=this.clickAction?.at===4&&this.clickAction.gu?.u}componentDidMount(){ct(()=>{let e=this.props.triggerContext.triggerData,t=this.props.triggerContext.selectedItems;e.calculateDiscountData(t,this.props.triggerContext.shouldGiveFBTDiscount)})}render(){return $(fr,{children:[$("div",{style:this.getCompiledStyles(),class:"lc-container",onClick:e=>{this.onClick(e,{clickAction:this.clickAction})},children:$(tn,{elements:this.props.elements,element:this.props.element,triggerContext:this.props.triggerContext})}),this.props.triggerContext.triggerData.id==="preview"&&$("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}async onClick(e,t){if(this.isClickable)return super.onClick(e,t)}},Nt=class ss{constructor(t){this.engagementTrigger=t,this.triggerContext=new Pi(new Date,this.engagementTrigger)}static renderedEngagements=[];static engagementIDsWithTrackedDisplay=new Set;static DEBOUNCE_TIME=1e3;rootContainer;widgetElement;widget;triggerContext;observers=[];runtimeData=ue.get();widgetAPIService=se.get(cr);safeHTTPService=se.get(fe);scrollSubscription;variation;isExclusionWithBVariation;renderSilently(){this.render().catch(t=>Le.getInstance().captureException(t,w({},this.engagementTrigger.sentryContext())))}destroy(){b.log(`${this.engagementTrigger} will be destroyed`),this.scrollSubscription?.unsubscribe(),this.observers.forEach(t=>{t?.disconnect&&t.disconnect()}),this.rootContainer?.remove(),ss.engagementIDsWithTrackedDisplay.delete(this.engagementTrigger.shortID)}async render(){if(this.engagementTrigger.hasMultiplePlacement){let t=await this.getVariation();this.handleVariationResponse(t)}if(this.rootContainer=await this.getWidgetContainer(!0),!this.rootContainer){b.warn(`${this.engagementTrigger} no section found to render the widget`);return}this.widget=this.engagementTrigger.widget,await this.getVariationIfRequired(),!this.shouldStopRendering()&&(await this.startRendering(),this.attachScroll(),await this.checkAndSendEvent(),this.triggerContext.renderer=this)}isSameTrigger(t){return this.engagementTrigger.shortID===t.shortID}update(t){vh.default.log(`${this.engagementTrigger} will be updated`),this.updateItems(t.items,this.engagementTrigger.items)}shouldStopRendering(){return!this.widget&&!this.isExclusionWithBVariation}async getVariationIfRequired(){if(this.engagementTrigger.isSingleContent()||this.engagementTrigger.widget){b.log(`${this.engagementTrigger} already has required data to render widget`);return}let t=await this.observeWidgetContainerInViewport();this.handleVariationResponse(t)}handleVariationResponse(t){t&&(b.log(`${this.engagementTrigger} visitor has been assigned to variation ${t.variation}`),t.items?.length&&(this.engagementTrigger.items=t.items.map(r=>new At(r)),this.engagementTrigger.nonMutableItems=t.items.map(r=>new At(r))),t.bundleFrom&&(this.engagementTrigger.bundleFrom=new At(t.bundleFrom)),t.discount&&(this.engagementTrigger.discount=t.discount),t.placement&&(this.triggerContext.triggerData.placement=t.placement),t.props&&yh.JSUtils.hasKeys(t.props)&&(this.engagementTrigger.props=w(w({},this.engagementTrigger.props),t.props)),this.triggerContext.triggerData.widget=this.widget=new wi(t.widget),this.triggerContext.triggerData.contentID=t.contentID,this.triggerContext.triggerData.variation=this.variation=t.variation,this.triggerContext.triggerData.placement=t.placement,this.triggerContext.triggerData.manipulation=t.manipulation,this.triggerContext.triggerData.content=t.content,this.isExclusionWithBVariation=this.engagementTrigger.isExclusionTesting()&&this.variation==="b",this.isExclusionWithBVariation&&(this.rootContainer.style.height="0.5px"))}addToRendered(){ss.renderedEngagements.push(this)}async getVariation(){b.log(`${this.engagementTrigger} get variation`);let t={engagementID:this.engagementTrigger.engagementID,isPreview:this.engagementTrigger.id==="preview"};try{return await this.widgetAPIService.getVariation(t)}catch(r){b.error(`${this.engagementTrigger} unable to get the variation`,r);return}}async observeWidgetContainerInViewport(){if(!this.rootContainer){b.warn(`${this.engagementTrigger} No root container found to watch for viewport`);return}let t=window.innerHeight*.3,r={root:null,rootMargin:`-${t}px 0px ${t}px 0px`,threshold:0};return await this.isInViewport()?this.getVariation():new Promise(n=>{let i=new IntersectionObserver((s,o)=>{s.forEach(async c=>{if(c.isIntersecting){b.log(`${this.engagementTrigger} root container is near the viewport. Fetching variation`);let u=await this.getVariation();n(u),o.unobserve(this.rootContainer)}})},r);i.observe(this.rootContainer),this.observers.push(i)})}attachScroll(){this.scrollSubscription=Pn(window,"scroll").pipe(ar(ss.DEBOUNCE_TIME)).subscribe(()=>{this.checkAndSendEvent()})}async checkAndSendEvent(){let t=this.engagementTrigger.shortID;if(ss.engagementIDsWithTrackedDisplay.has(t)||!await this.isInViewport())return;let r={};this.triggerContext.triggerData.items?.length&&(r.promotedMIDs=this.engagementTrigger.items?.map(s=>s.mID));let n=this.isExclusionWithBVariation?N.EVENT_CAMPAIGN_HOLDOUT:N.EVENT_TRIGGER_DISPLAYED,i=new Ee(n,r,this.engagementTrigger);i.name===N.EVENT_CAMPAIGN_HOLDOUT&&(i.trigger.holdout=!0),this.safeHTTPService.sendEvent(i),ss.engagementIDsWithTrackedDisplay.add(t),this.scrollSubscription.unsubscribe()}generateParentElementID(){return`letscooee-${this.engagementTrigger.shortID}`}async isInViewport(){let t=(await this.getWidgetContainer())?.getBoundingClientRect();if(!t)return!1;let r=window.innerHeight||document.documentElement.clientHeight,n=(Math.min(t.bottom,r)-Math.max(t.top,0))*t.width,i=t.width*t.height,s=n/i*100;return this.engagementTrigger.isAnySplit()?s>0:s>=30}async getWidgetContainer(t){if(this.rootContainer?.isConnected)return this.rootContainer;let r=await this.createParentElementWithPlacement(t);if(r)return r;let n=`.letscooee[data-engagement-id="${this.triggerContext.triggerData.shortID}"]`;return document.querySelector(n)}async createParentElementWithPlacement(t){let r=this.engagementTrigger.placement;if(!r?.selector)return b.warn(`${this.engagementTrigger} does not have a selector`),null;let n=r.selector,i;if(n.includes(N.SHADOW_SPLITTER)){let u=n.split(N.SHADOW_SPLITTER);i=(await Q.retrySelector(u[0].trim()))?.shadowRoot,n=u[1].trim(),i&&st.injectStylesheet(Rt.styleURL,i);let d=Pe.get().website.commonCSS;i&&d&&st.injectRawCSS(d,i)}b.debug(`${this.engagementTrigger} attempt to render ${r.position}-${n}`);let s=await Q.retrySelector(n,10,i??document);if(!s)return b.warn(`${this.engagementTrigger} no placement found with ${n}`),null;let o=this.generateParentElementID(),c=this.getParentElement(o);if(!t)return c;switch(r.position){case Go.EngagementPlacementPosition.BEFORE:{s.parentElement?.insertBefore(c,s);break}case Go.EngagementPlacementPosition.INSIDE_FIRST:{s.insertBefore(c,s.firstChild);break}case Go.EngagementPlacementPosition.INSIDE_LAST:{s.appendChild(c);break}case Go.EngagementPlacementPosition.AFTER:default:s.parentElement?.insertBefore(c,s.nextSibling)}return c}async startRendering(){let t;try{t=await Mi.refreshItems(this.engagementTrigger)}catch(r){b.error(`${this.engagementTrigger} error refreshing the items`,r);return}if(!t?.length&&this.engagementTrigger.isProductPromoted()){b.warn(`${this.engagementTrigger} is of ${this.engagementTrigger.objective} but no product found`);return}this.engagementTrigger.items=t,this.renderContainer()}getParentElement(t,r=document){let n=r.getElementById(t);if(n)return n;let i=this.engagementTrigger.shortID;return n=document.createElement("div"),n.id=t,n.className=`letscooee letscooee-engagement engagement-${i}`,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}renderContainer(){if(!this.widget)return;let t=this.rootContainer;if(this.triggerContext.triggerData.hasSwiperElement()){let r=this.rootContainer?.shadowRoot||this.rootContainer?.attachShadow({mode:"open"}),n=Pe.get().website.commonCSS;n&&st.injectRawCSS(n,r),st.injectStylesheet(Rt.styleURL,r),st.injectStylesheet("https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css",r),t=r}sf(jc(Wo,{element:this.widget.cont,triggerContext:this.triggerContext,elements:this.widget.elems}),t),this.addToRendered()}updateItems(t,r){let n=this.getItemDiff(t,r),i=this.getItemDiff(r,t);r.push(...n);for(let s of i)gh.ArrayUtils.remove(r,s)}getItemDiff(t,r){return t.filter(n=>!r.some(i=>i.selectedOrFirstVariant.value.mID===n.selectedOrFirstVariant.value.mID))}},Dr=class Kh extends Nt{static renderedEngagements=[];constructor(t){super(t)}addToRendered(){Kh.renderedEngagements.push(this)}observeWidgetContainerInViewport(){return this.getVariation()}generateParentElementID(){let t=super.generateParentElementID();return this.engagementTrigger.isSubscriptionUpsell()&&(t+=`-${this.engagementTrigger.items[0].selectedOrFirstVariant.value.mID}`),t}async checkAndSendEvent(){if(!ze.get().isOpen()&&this.runtimeData.pageName!=="cart"){b.log("Do not send display event as neither the cart drawer nor the cart page is open.");return}return super.checkAndSendEvent()}},pc=class Yh{constructor(t,r){this.engagementTrigger=t,this.element=r,this.cartItems=de.getCurrent().items}cartItems;static renderCartUpsell(t){let r=t.placement;if(!r?.selector){b.warn(`No placement available for ${t.objective}`,t.shortID);return}let n=Array.from(document.querySelectorAll(r.selector));if(!n?.length){b.warn(`No placement found for ${t.objective}`,t.shortID);return}for(let i of n)new Yh(t,i).render()}render(){let t=this.findCartItemFromHTMLElement();if(!t||this.engagementTrigger.skipSubscribedItems&&t.selling_plan_allocation)return;let r=this.engagementTrigger.items.find(m=>m.mID===t.product_id.toString());if(!r)return;let n=r.vars.find(m=>m.mID===t.id.toString());if(!n)return;let i=new Sr(n),s=t.selling_plan_allocation?.selling_plan;if(s)for(let m of i.sellingPlans??[])m.mID===s.id.toString()&&(m.isSelected=!0,i.changeSellingPlan(m));let o=new At(r);o.vars=[i],o.selectedOrFirstVariant.value=i;let c=`lc-cart-item-${this.engagementTrigger.shortID}-${r.mID}`;this.element.classList.add(c);let u=new Ct(this.engagementTrigger);u.placement.selector=`.${c}`,u.items=[o];let d=new Dr(u);d.renderSilently(),this.watchForCartItemDeletion(d,c)}watchForCartItemDeletion(t,r){let n=new MutationObserver(i=>{i.forEach(s=>{s.removedNodes.forEach(o=>{o===this.element&&(b.debug(`${r} has been removed`),t.destroy(),n.disconnect())})})});n.observe(this.element.parentElement,{childList:!0,subtree:!0})}findCartItemFromHTMLElement(){let t=this.element.innerHTML;return this.cartItems.find(r=>{if(!(t.includes(r.url)||t.includes(r.variant_id))&&(!t.includes(r.product_title)||r.variant_title&&!t.includes(r.variant_title)))return!1;let n=r.selling_plan_allocation?.selling_plan?.name;return!(n&&!t.includes(n))})}},Eh=Se(Rr()),fc=class extends Dr{ctaListener=new en;constructor(e){super(e),Cr.get().subscriber(N.CART_UPDATE_BROADCAST).pipe(Ku(null)).subscribe(this.checkMilestone.bind(this))}update(e){super.update(e),this.widgetElement.update()}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}let e=this.widgetElement=document.createElement("cooee-progressbar");e.className="cooee-root",e.cart=de.getCurrent(),e.engagementTrigger=this.engagementTrigger,e.setAttribute("engagement",this.engagementTrigger.shortID),this.rootContainer.appendChild(e),this.addToRendered()}async checkMilestone(){let e=await de.getCurrent().getNormalisedCart(),t=[...this.engagementTrigger.progressBarConfig.milestones];for(let r of t){if(e.amount<r.minValue)break;if(b.log("Current milestone",r),r.rewardType===Eh.MilestoneRewardType.FREE_AUTO_GIFT){let n=r.items[0],i=e.items.find(s=>s.vID===n.vID||s.mID===n.mID);if(i)b.log(`Item(vID:${n.vID}) already present in the cart. Updating item's properties`),await this.ctaListener.performUpdate(i,{properties:this.engagementTrigger.getPrivateAttributesForLineItem()});else{let s=await this.ctaListener.performAddToCart([n],this.engagementTrigger);ze.get().refreshUI(s,!1)}}}}async removeOtherFreeGifts(e){let t=(await de.getCurrent().getNormalisedCart()).items.filter(r=>r.vID!==e?.vID&&r.properties[N.CAMPAIGN_ATTRIBUTE]===this.engagementTrigger.shortID);if(t.length)for(let r of t)await this.ctaListener.performUpdate(r,{quantity:0})}},mc=class extends Nt{constructor(e){super(e)}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}let e=this.widgetElement=document.createElement("cooee-shoppable-videos");e.className="cooee-root",e.triggerContext=this.triggerContext,e.addEventListener("sendEvent",t=>{let r=t.detail;this.safeHTTPService.sendEvent(r)}),e.setAttribute("engagement",this.engagementTrigger.shortID),this.rootContainer.appendChild(e),this.addToRendered()}},_h=Se(ti()),dc=class extends Nt{constructor(e){super(e)}shouldStopRendering(){return!1}renderContainer(){let e=this.getParentElement(`inner-letscooee-${this.engagementTrigger.shortID}`);this.rootContainer.appendChild(e),document.addEventListener(N.ADD_BUNDLE_CTA_INBOUND_EVENT,this.inboundCTAListener.bind(this),!1)}async inboundCTAListener(e){let t=this.engagementTrigger,r=`Engagement(id: ${t.engagementID}, shortID: ${t.shortID})`,n=e.detail;if(!_h.JSUtils.hasKeys(n)){b.error(`No detail received for ${r}`);return}b.log("Detail received for BYOB",n);let i=n.campaignID??n.campaignId??n.campaign_id;if(i!==t.shortID&&i!==t.engagementID){b.warn(`Current ${r} is not BYOB. Received: ${i}`);return}let s=n.items;if(!s?.length)return;let o=s.map(c=>new ft({mID:c.product_id,vID:c.variant_id,quantity:c.quantity||1}));await new ki(this.triggerContext).execute({embeddedItems:o,clickAction:{at:108,applyDiscount:!0}})}},Hi=class{runtimeData=ue.get();processCartWidgetResponse(e){this.runtimeData.isCartDirty=!1,this.runtimeData.cartEngagements=e;let t=[...Dr.renderedEngagements];Dr.renderedEngagements.length=0;for(let r of e)b.log(`\u{1F4E3} ${r} received as cart embed`),!this.findAndUpdateCurrent(r,t)&&(b.log(`${r} is new`),r.isProgressBar()?new fc(r).renderSilently():r.isSubscriptionUpsell()?pc.renderCartUpsell(r):new Dr(r).renderSilently());this.removeOldWidgets(t)}processPageWidgetResponse(e){let t=[...Nt.renderedEngagements];Nt.renderedEngagements.length=0;for(let r of e)b.log(`\u{1F4E3} ${r} received as page embed`),!this.findAndUpdateCurrent(r,t)&&(b.log(`${r} is new`),r.isShoppableVideo()?new mc(r).renderSilently():r.isBYOB()?new dc(r).renderSilently():new Nt(r).renderSilently());this.removeOldWidgets(t)}findAndUpdateCurrent(e,t){let r=t.findIndex(n=>n.isSameTrigger(e));return r<0||e.isSubscriptionUpsell()?!1:(t[r].update(e),t[r].renderSilently(),t.splice(r,1),!0)}removeOldWidgets(e){for(let t of e)t.destroy()}},$i=class{runtimeData=ue.get();httpService=se.get(ht);sessionManager=se.get(qe);constructor(){}async getWidgetProps(){let e={};e.engagementIDs=this.addAvailableEngagementShortIDs(),e.locale=this.runtimeData.locale,await this.addSessionContext(e),e.currentItem=this.runtimeData.getCurrentItem();try{e.cart=await de.getCurrent().getNormalisedCart()}catch(i){b.error("Error fetching Shopify cart before sending widget call",i)}let t=new URLSearchParams(location.search),r=t.get("cooee-preview");r?e.previewIDs=r.trim().split(",").filter(i=>Number.isInteger(+i)):this.runtimeData.previewIDs?.length&&(e.previewIDs=this.runtimeData.previewIDs);let n=t.get("cooee-variant");return n?e.previewVariant=n:this.runtimeData.previewVariant&&(e.previewVariant=this.runtimeData.previewVariant),e}async addSessionContext(e){let t=await this.sessionManager.checkSessionAndGetContext();e.sessionID=t[0],e.sessionNumber=t[1],e.landingPage=t[2],e.page=Tr.parseFromCurrent()}addAvailableEngagementShortIDs(){let e=document.querySelectorAll(".letscooee-engagement"),t=[];return e.forEach(r=>{let n=r.dataset.engagementId;n&&+n&&t.push(n)}),t}},cr=class Xh extends $i{static INSTANCE;loadWidgetsSubject=new xt;constructor(){super(),this.loadWidgetsSubject.pipe(ar(300)).subscribe(()=>{this.loadCartWidgets().catch(t=>b.error("Unable to initiate cart widgets",t)),this.loadPageWidgets().catch(t=>b.error("Unable to initiate page widgets",t))}),Cr.get().subscriber(N.CART_UPDATE_BROADCAST).subscribe(()=>this.loadWidgetsSubject.next())}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Xh),this.INSTANCE}loadOrRenderWidgetsAfterCartChange(){this.runtimeData.isCartDirty?this.loadWidgetsSilently():this.renderCachedCartWidgets()}loadPageWidgetsSilently(){qe.replaySubject.subscribe(async()=>{this.loadPageWidgets().catch(t=>b.error("Unable to initiate load page widgets",t))})}loadCartWidgetsSilently(){qe.replaySubject.subscribe(async()=>{this.loadCartWidgets().catch(t=>b.error("Unable to initiate cart widgets",t))})}loadWidgetsSilently(){qe.replaySubject.subscribe(async()=>{this.loadWidgetsSubject.next()})}async loadPageWidgets(){let t=await this.getWidgetProps();b.log("Load widgets",t),this.httpService.post("/v1/engagement/page-widgets",t).then(async r=>{let n=r.widgets.map(i=>new Ct(i));new Hi().processPageWidgetResponse(n)}).catch(r=>{b.error("Error sending widget getter",r)})}async loadCartWidgets(){let t=await this.getWidgetProps();b.log("Load cart widgets",t),this.httpService.post("/v1/engagement/cart-widgets",t).then(async r=>{let n=r.widgets.map(i=>new Ct(i));new Hi().processCartWidgetResponse(n)}).catch(r=>{b.error("Error sending widget getter",r)})}async getVariation(t){let r=await this.getWidgetProps();return this.httpService.post("/v1/engagement/get-variant",w(w({},t),r))}renderCachedCartWidgets(){new Hi().processCartWidgetResponse(this.runtimeData.cartEngagements)}},hc=class{eventAPIService;constructor(){this.eventAPIService=se.get(rn)}processResponse(e){for(let t of e)t.experiment?.cssSelector&&this.runExperiment(t)}async runExperiment(e){if(!e.experiment?.cssSelector){b.error("No CSS selector present in experiment",e.toString);return}let t;try{t=await Q.retrySelectors(e.experiment.cssSelector)}catch{b.error("Fail to get CSS selector for experiment",e.toString());return}if(t?.length){for(let r of t)if(e.experiment.op==="SHOW")r.style.display="block";else if(e.experiment.op==="HIDE")r.style.display="none";else{b.error("Invalid experiment operation",e.toString);return}this.eventAPIService.trackExperiment({name:N.EVENT_EXPERIMENT_START,experiment:new Qr(e)}).catch(r=>{b.error("Fail to track experiment",r)})}}},rn=class zh extends $i{static INSTANCE;constructor(){super()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new zh),this.INSTANCE}loadExperimentSilently(){De.get(oe.SDK_TOKEN).then(t=>{t?this.loadExperiments().catch(r=>b.error("Unable to initiate experiment",r)):qe.replaySubject.subscribe(async()=>{this.loadExperiments().catch(r=>b.error("Unable to initiate experiment",r))})})}async loadExperiments(){if(!this.runtimeData.activeExperiment)return;let t=await this.getWidgetProps();b.log("Load experiments",t),this.httpService.post("/v1/engagement/experiments",t).then(async r=>{let n=r.experiments.map(i=>new Ct(i));new hc().processResponse(n)}).catch(r=>{b.error("Error sending experiment getter",r)})}async trackExperiment(t){await this.addSessionContext(t),await this.httpService.post("/v1/event/experiment",t)}},gc=class{runtimeData=ue.get();widgetAPIService=se.get(cr);experimentAPIService=se.get(rn);meddle(){let e=be.globalRef;e.account=e.account??[],e.profile=e.profile??[],e.events=e.events??[],e.screen=e.screen??[],e.page=e.page??[],this.meddlePage(),this.meddleAccount(),this.meddleEvents(),this.meddleProfile(),this.meddleScreen(),this.exposeMethods()}exposeMethods(){let e=be.globalRef;e.loadPageWidgets=()=>{this.widgetAPIService.loadPageWidgetsSilently()},e.loadCartWidgets=()=>{this.widgetAPIService.loadCartWidgetsSilently()},e.loadExperiments=()=>{this.experimentAPIService.loadExperimentSilently()},e.previewWidget=be.previewWidget.bind(be),e.previewPopup=be.previewPopup.bind(be)}overwritePush(e,t){ui(e,"push",t)}meddleAccount(){this.overwritePush(be.globalRef.account,(...e)=>{this.processAccount(e[0])}),be.globalRef.account.forEach(this.processAccount.bind(this))}meddleEvents(){this.overwritePush(be.globalRef.events,(...e)=>{this.processEvent(e[0])}),be.globalRef.events.forEach(this.processEvent.bind(this))}meddleProfile(){this.overwritePush(be.globalRef.profile,(...e)=>{this.processProfile(e[0])}),be.globalRef.profile.forEach(this.processProfile.bind(this))}meddleScreen(){this.overwritePush(be.globalRef.screen,(...e)=>{this.processPageName(e[0])}),be.globalRef.screen.forEach(this.processPageName.bind(this))}processAccount(e){e&&(e.appID&&be.authenticate(e),e.flags&&Ln.setFlags(e.flags))}processEvent(e){e&&(N.JS_LOAD_WHITELIST_EVENTS.includes(e[0])?be.sendEvent(e[0],e[1],w({occurred:this.runtimeData.jsLoadTime},e[2])):be.sendEvent(e[0],e[1],e[2]))}processProfile(e){e&&be.updateProfile(e)}processPageName(e){e&&be.setPageName(e)}meddlePage(){this.overwritePush(be.globalRef.page,(...e)=>{this.processPage(e[0])}),be.globalRef.page.forEach(this.processPage.bind(this))}processPage(e){e.currentItem&&this.runtimeData.setCurrentItem(e.currentItem),e.currency&&(this.runtimeData.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&&be.setPageName(e.pageName),e.activeExperiment&&(this.runtimeData.activeExperiment=e.activeExperiment)}},ji=class{static SESSION_STORAGE=window.sessionStorage;static SESSION_STORAGE_KEY_PREFIX=N.COOEE.concat("-");static getString(e,t){return this.getItem(e)||t}static setString(e,t){this.setItem(e,t)}static remove(e){this.removeItem(e)}static getItem(e){return this.SESSION_STORAGE.getItem(this.SESSION_STORAGE_KEY_PREFIX.concat(e))}static setItem(e,t){this.SESSION_STORAGE.setItem(this.SESSION_STORAGE_KEY_PREFIX.concat(e),t)}static removeItem(e){this.SESSION_STORAGE.removeItem(this.SESSION_STORAGE_KEY_PREFIX.concat(e))}},Vi=class zo{static INSTANCE;static DEBOUNCE_TIME=1e3;static THRESHOLD=10;safeHttpService=se.get(fe);_lastScreenOrScroll=new Date;lastPercent=0;constructor(){}set lastScreenOrScroll(t){this._lastScreenOrScroll=t}static getInstance(){return this.INSTANCE||(this.INSTANCE=new zo),this.INSTANCE}resetScrollID(t){ji.remove(N.SESSION_STORAGE_SCROLL_ID),this.lastScreenOrScroll=t??new Date}listen(){if(window.scrollY){let t=this.getPercentScrolledY();this.shouldSendScroll(t)&&this.sendScroll(t)}Q.onDocumentLoaded(()=>{this.observeWindowScroll()})}observeWindowScroll(){Pn(window,"scroll").pipe(ar(zo.DEBOUNCE_TIME),On(()=>{let t=this.getPercentScrolledY();if(t>100){b.warn("Received scroll percent is more than 100",t);return}if(this.shouldSendScroll(t))return t})).subscribe(t=>{this.sendScroll(t)})}shouldSendScroll(t){return Math.abs(this.lastPercent-t)>=zo.THRESHOLD||this.lastPercent!==t&&t===100}sendScroll(t){if(t==null)return;let r={percent:t,timeMS:new Date().getTime()-this._lastScreenOrScroll.getTime()};this.lastPercent=t;let n=ji.getString(N.SESSION_STORAGE_SCROLL_ID,""),i=new Ee(N.EVENT_SCROLL,r,null,n);this.safeHttpService.sendEvent(i),ji.setString(N.SESSION_STORAGE_SCROLL_ID,i.id.toHexString()),this._lastScreenOrScroll=new Date(i.occurred)}getPercentScrolledY(){let t=window.document.body.scrollHeight,r=window.innerHeight;return Math.ceil((window.scrollY+r)/t*100)}},yc=class Jh{static ACTIVE_DURATION="aDur";static INACTIVE_DURATION="iaDur";apiService=se.get(fe);runtimeData=ue.get();listen(){document.onvisibilitychange=()=>{document.visibilityState==="visible"?this.onVisible():document.visibilityState==="hidden"&&this.onHidden()}}async onVisible(){}async onHidden(){let t=await this.runtimeData.setInactive();if(t===0){b.info("Not sending background event as user was inactive on website");return}b.info(`Sending background event with ${t} seconds`);let r={};r[Jh.ACTIVE_DURATION]=t,this.apiService.sendEvent(new Ee(N.EVENT_APP_BACKGROUND,r))}},vc=class{compareCartItemSubject=new xt;constructor(){this.compareCartItemSubject.pipe(ar(100)).subscribe(this.compareCartItems.bind(this))}listen(){this.compareCartItemSubject.next(),this.overwriteXMLHttpRequest(),this.overwriteFetchMethod()}overwriteXMLHttpRequest(){let e=this,t=window.XMLHttpRequest.prototype.send;window.XMLHttpRequest.prototype.send=function(){return this.addEventListener("load",function(){e.performEvent(this._url).catch(r=>b.error("Unable to process cart change in XMLHttpRequest",r))}),t.apply(this,arguments)},b.debug("Securely overwritten window.XMLHttpRequest.send method")}overwriteFetchMethod(){let e=this,t=window.fetch;window.fetch=function(r){return t.apply(window,arguments).then(n=>(e.performEvent(r.toString()).catch(i=>b.error("Unable to process cart change in fetch",i)),n))},b.debug("Securely overwritten window.fetch method")}async performEvent(e){this.isCartManipulationURL(e)&&(ue.get().isCartDirty=!0,this.compareCartItemSubject.next())}isCartManipulationURL(e){return/\/cart\/(add|change|update|clear)/.test(e)}sendChangesAsEvents(e,t){let r=e?.items,n=t.items,i=[],s=[];if(b.debug(`Comparing cart change with old count ${r?.length} to new count ${n.length}`),n?.forEach(o=>{let c=r?.find(u=>u.vID===o.vID);if(c){if(c.quantity!==o.quantity){let u=c.quantity<o.quantity,d=Math.abs(c.quantity-o.quantity),m=te(w({},o),{quantity:d});u?i.push(m):s.push(m)}r&&Q.removeFromArray(r,c)}else i.push(o)}),r)for(let o of r)s.push(o);b.debug(`Cart delta: added: ${i.length}, removed: ${s.length}`),i.length&&this.sendEvent(N.EVENT_ADD_TO_CART,{items:i}),s.length&&e.token===t.token&&this.sendEvent(N.EVENT_REMOVE_FROM_CART,{items:s}),(s.length||i.length)&&Cr.get().broadcast(N.CART_UPDATE_BROADCAST,{itemsAdded:i,itemsRemoved:s})}sendEvent(e,t){let r=new Ee(e,t);se.get(fe).sendEvent(r)}async compareCartItems(){let e=await De.get(oe.CURRENT_CART,{}),t=await de.getCurrent().getNormalisedCart(!0);this.sendChangesAsEvents(e,t)}},Ec=class{listen(){return this.overwriteFetchMethod(),this}overwriteFetchMethod(){let e=this,t=window.fetch;window.fetch=async function(r,n){try{await e.modifyRequest(r,n)}catch(i){Le.getInstance().captureError("Failed to modify graphql request",i,{body:JSON.stringify(n?.body)})}return t(r,n)},b.debug("Securely overwritten window.fetch method for graphql query")}async modifyRequest(e,t){let r=typeof e=="string"?e:e instanceof Request?e.url:"";if(!(r.includes("graphql.json")&&t?.method==="POST")||!t.body)return;let n;if(typeof t.body=="string")try{n=JSON.parse(t.body)}catch{return}else n=t.body;b.debug("Intercepted fetch request of:",r),n?.query.includes("cartCreate")&&(t.body=await this.updatedBody(n),this.sendBuyNowEvent())}async updatedBody(e){let t=e.variables.input.attributes??[],r=await Q.getCartAttributes();return e.variables.input.attributes=[...t,...r],JSON.stringify(e)}sendBuyNowEvent(){let e=ue.get().getCurrentItem();if(!e)return;let t=new Ee(N.EVENT_BUY_NOW_CLICKED,{items:[e]});fe.getInstance().sendEvent(t)}},Wi=class{constructor(e,t){this.selectors=e,this.eventName=t,this.selectorString=e.join(",")}static INSTANCE;elements;selectorString;clickListenerCallback=e=>{let t=e.currentTarget,r=new Ee(this.eventName,{class:t.className||void 0,tagName:t.tagName||void 0,id:t.id||void 0});fe.getInstance().sendEvent(r),this.removeClickListener(this.clickListenerCallback)};listenSilently(){this.listen().catch(e=>b.error(e))}async listen(){this.elements=await Q.retrySelectorForElements(this.selectorString),this.elements.forEach(e=>{e.addEventListener("click",this.clickListenerCallback)})}removeClickListener(e){this.elements?.forEach(t=>{t.removeEventListener("click",e)})}},_c=class Rc extends Wi{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(Rc.selectors,N.EVENT_ITEM_THUMBNAIL_CLICKED)}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Rc),this.INSTANCE}},Sc=class nl extends Wi{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(nl.selectors,N.EVENT_REVIEW_CLICKED)}static getInstance(){return this.INSTANCE||(this.INSTANCE=new nl),this.INSTANCE}},wc=class{selector=[".gokwik-checkout button","button.cart__checkout-button","button.cart__checkout","button#checkout","button#checkout2",'button[id*="checkout" i]','button[name*="checkout" i]','button[class*="checkout" i]'].join(",");listen(){Q.onDocumentLoaded(()=>{b.debug("Execution order:","document ready"),this.useLocationHash()})}useLocationHash(){let e=window.location.hash?.substring(1);if(e)if(e.includes(N.HASH_INITIATE_CHECKOUT)){document.dispatchEvent(new Event(N.THIRD_PARTY_CHECKOUT_EVENT));let t=document.querySelector(this.selector);if(!t){b.debug("No clickable cart checkout button found");return}b.debug("Clickable cart checkout button found",t),t.click()}else e.includes(N.HASH_OPEN_CART_DRAWER)&&ze.get().open()}},bc=class{trackSilently(){this.track().catch(e=>Le.getInstance().captureException(e))}async track(){let e=window.Shopify?.checkout,t=window.Shopify?.Checkout;if(!e&&!t)return;let r={};this.processSmallCheckout(e,r),this.processBigCheckout(t,r);let n=this.getTokenFromCurrentURLPath();if(n&&(r.urlToken=n),!Object.keys(r).length){b.warn("No processable data found in",e,t);return}r.referrer=document.referrer,r.url=location.href;let i=await se.get(qe).checkSessionAndGetContext();r.sessionID=i[0],this.trackOrder(r)}processSmallCheckout(e,t){e&&(e.order_id&&(t.orderID=e.order_id.toString()),e.token&&(t.checkoutToken=e.token.toString()),e.customer_id&&(t.customerID=e.customer_id.toString()))}processBigCheckout(e,t){e&&(e.token&&!t.checkoutToken&&(t.checkoutToken=e.token.toString()),e.cartToken&&(t.cartToken=e.cartToken.toString()))}trackOrder(e){b.info("Found order to be send",e),fe.getInstance().trackOrder(e)}getTokenFromCurrentURLPath(){let e=new RegExp("[A-Fa-f0-9]{28,32}");return location.pathname?.split("/").find(t=>t.length&&e.test(t))}},Yo=class{static attachCheckoutListener(){window.gokwikSdk&&window.gokwikSdk.on("checkout_initiated",async()=>{let e=await de.getCurrent().getNormalisedCart(),t={via:"GoKwik",items:e.items,cartToken:e.token,amount:{value:e.amount,currency:e.currency}},r=new Ee(N.EVENT_CHECKOUT_STARTED,t);fe.getInstance().sendEvent(r)})}},Ic=class{async migrate(){}};_t.escape=Sh.MustacheUtils.escapeHtml;var be=class{static globalRef;static authenticated;static async initForMerchantWebsiteOnly(){window.cooeeSDKPreview||(this.initGlobalReference(),await new Ic().migrate(),this.autoAuthenticate(),new gc().meddle(),se.get(rn).loadExperimentSilently(),new yc().listen(),new bc().trackSilently(),new vc().listen(),new Ec().listen(),new wc().listen(),se.get(Vi).listen(),se.get(Sc).listenSilently(),se.get(_c).listenSilently(),se.get(cr).loadPageWidgetsSilently(),this.attachGoKwikListeners(),this.storePreviewParams(),this.setupPreviewListeners(),er.watch())}static async initForAll(){this.injectWidgetAssets()}static initGlobalReference(){window.CooeeSDK||ui(window,"CooeeSDK",{}),this.globalRef=window.CooeeSDK,ui(this.globalRef,"config",new Pe),ui(this.globalRef,"runtimeData",new ue),b.debug("Global reference initialised")}static injectWidgetAssets(){st.injectScriptURL(Rt.widgetURL,"cooee-widget-sdk"),st.injectStylesheet(Rt.styleURL)}static autoAuthenticate(){let e=Be.getShopName();e&&this.authenticate({shopifyShop:e})}static authenticate(e){if(this.authenticated)return;let t=e.appID?.trim(),r=e.shopifyShop;if((Q.isNull(t)||t.length!==24)&&Q.isNull(r)){b.warn("Cooee App ID or Shop name is not configured");return}this.authenticated=!0,se.get(qe).init(e)}static sendEvent(e,t,r){for(let i in t)if(i.length>3&&i.toLowerCase().startsWith("ce "))throw new Error("Event property name cannot start with 'CE '");let n=new Ee(e,t,r?.triggerData);r?.occurred&&(n.occurred=r.occurred),se.get(fe).sendEvent(n)}static updateProfile(e){for(let t in e)if(t.toLowerCase().startsWith("ce "))throw new Error("User property name cannot start with 'CE '");se.get(fe).updateProfile(e)}static setPageName(e){if(!e)return;let t=ue.get(),r=t.pageName;if(e===r)return;if(t.pageName=e,e==="cart"&&se.get(cr).loadOrRenderWidgetsAfterCartChange(),N.BLACKLISTED_PAGE_NAMES.some(s=>e.includes(s))){se.get(Vi).resetScrollID();return}let n={};r&&(n.ps=r);let i=new Ee(N.EVENT_SCREEN_VIEW,n);i.occurred=t.jsLoadTime,se.get(fe).sendEvent(i),se.get(Vi).resetScrollID(i.occurred)}static previewPopup(e,t){new Ui(t).render(e)}static previewWidget(e){new Nt(new Ct(e)).render()}static setupPreviewListeners(){if(window.opener){try{window.opener.postMessage({action:"COOEE_READY_FOR_PREVIEW"},"*")}catch(e){b.error(e)}window.addEventListener("message",e=>{if(b.debug("Received event",e),!e.origin.includes("letscooee.com")&&!e.origin.includes("localhost"))return;let t=e.data;typeof t=="object"&&(t.action==="POPUP_PREVIEW"?(this.previewPopup(t.engagementTrigger),e.source?.postMessage({action:"PREVIEW_SUCCESSFUL"},e.origin)):t.action==="WIDGET_PREVIEW"&&(this.previewWidget(t.engagementTrigger),e.source?.postMessage({action:"PREVIEW_SUCCESSFUL"},e.origin)))})}}static attachGoKwikListeners(){let e=ue.get();window.addEventListener("kp-modal:opened",()=>{e.isGoKwikPopupOpen=!0}),window.addEventListener("user-loggedin",t=>{let{token:r}=t.detail;r&&this.updateProfile({goKwikToken:r})}),window.gokwikSdk?Yo.attachCheckoutListener():window.addEventListener("gokwikLoaded",Yo.attachCheckoutListener)}static storePreviewParams(){let e=ue.get(),t=new URLSearchParams(location.search),r=t.get("cooee-preview");r&&(e.previewIDs=r.trim().split(",").filter(i=>Number.isInteger(+i)));let n=t.get("cooee-variant");n&&(e.previewVariant=n)}};b.configure();b.logBrand();b.debug("Execution order:","top");window.cooeeShopifyScriptLoaded||(window.cooeeShopifyScriptLoaded=!0,(async()=>(b.debug("Execution order:","IIFE start"),await be.initForMerchantWebsiteOnly(),await be.initForAll(),b.debug("Execution order:","IIFE end")))());b.debug("Execution order:","bottom");})();
|
|
70
|
+
`},navigation:{nextEl:e.querySelector(".swiper-button-next"),prevEl:e.querySelector(".swiper-button-prev")},autoplay:t.autoplay?.enabled?{delay:t.autoplay?.delay,disableOnInteraction:!1}:!1,autoHeight:!0});return e.style.setProperty("--swiper-navigation-size",`${t.navigation.size}px`),r}function uc(e,t,r){let n={color:e.navigation.color?.rgba};return e.pagination.enabled&&(n.transform="translateY(-25%)"),$("div",{class:"swiper-container",ref:t,children:[$("div",{class:"swiper-wrapper",children:r()}),e.navigation.enabled&&$("div",{class:"swiper-button-next",style:n,children:$("span",{})}),e.navigation.enabled&&$("div",{class:"swiper-button-prev",style:n,children:$("span",{})}),e.pagination.enabled&&$("div",{className:"swiper-pagination",style:{bottom:0,top:"unset",position:"relative",color:e.pagination.color?.rgba}})]})}var jo=class extends Ne{swiperRef=null;swiperInstance=null;configuration;gap;constructor(e,t){super(e,t),this.configuration=this.renderer.isMobile()?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&&st.loadSwiperScript().then(()=>{this.swiperInstance=lc(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 r=i=>{this.swiperRef=i},n=()=>e?.map(i=>$("div",{class:"swiper-slide",children:this.getProductFragment(i)}));t=$("div",{style:te(b({},this.getCompiledStyles()),{display:"block"}),class:"lc-product-swiper-list",children:uc(this.configuration,r,n)})}else t=$("div",{style:this.getCompiledStyles(),class:"lc-product-list",children:e?.map((r,n)=>this.getProductFragment(r,n!==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 r=this.props.triggerContext.triggerData,n=r.items.length,i;r.isBundle()?i=this.props.element.prod.symbol?.hide!==!0?n*2-1:n:i=this.props.element.conf[this.deviceTypeKey].maxInRow,t.gridTemplateColumns=`repeat(${i}, auto)`}}return t}getProductFragment(e,t=!1){return $(fr,{children:[$(kn,{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&&$("div",{style:{display:"flex",alignItems:"center",justifyContent:"center"},children:$(Ft,{element:this.props.element.prod.symbol,triggerContext:this.props.triggerContext})})]},e.mID)}},Vo=class extends Ne{swiperRef=null;swiperInstance=null;constructor(e,t){super(e,t)}componentDidMount(){st.loadSwiperScript().then(()=>{this.swiperInstance=lc(this.swiperRef,this.props.element.conf)})}componentWillUnmount(){this.swiperInstance&&this.swiperInstance.destroy()}render(){let e=this.props.element,t=n=>{this.swiperRef=n},r=()=>e.values?.map(n=>$("div",{class:"swiper-slide",onClick:i=>this.onClick(i,{clickAction:this.getClickAction(n)}),children:this.renderElement(n)}));return uc(e.conf,t,r)}getComponentStyles(){return{}}renderElement(e){let t=this.valueAddedSlide(this.props.element.slide,e);switch(t?.t){case 1:return $(kr,{element:t,triggerContext:this.props.triggerContext});case 4:return $(Fr,{elements:t.elems,element:t,triggerContext:this.props.triggerContext});default:w.warn("Unknown slide type for carousal")}}valueAddedSlide(e,t){let r=JSON.stringify(e),n=_t.render(r,{form:t});return kt.getParsedElement(JSON.parse(n))}getClickAction(e){let t=b({},this.props.element.clc),r=JSON.stringify(t),n=_t.render(r,{form:e});return JSON.parse(n)}},tn=class extends Ne{constructor(e,t){super(e,t),this.setState(()=>({decoration:"unset"})),ct(()=>{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 $(Fr,{element:t,triggerContext:this.props.triggerContext,elements:t.elems})}if(e.t===61)return $(Bo,{element:e,triggerContext:this.props.triggerContext});if(e.t===3)return this.state.showButton?$(Un,{element:e,triggerContext:this.props.triggerContext}):void 0;if(e.t===2)return $(Ft,{element:e,triggerContext:this.props.triggerContext});if(e.t===1)return $(kr,{element:e,triggerContext:this.props.triggerContext});if(e.t===11)return $(jo,{element:e,triggerContext:this.props.triggerContext});if(e.t===12)return $(kn,{element:e,item:this.props.triggerContext.triggerData.items[0],triggerContext:this.props.triggerContext});if(e.t===62)return $(Vo,{element:e,triggerContext:this.props.triggerContext})}}render(){return this.props.elements.map(e=>this.renderElement(e))}getComponentStyles(){return{}}},Wo=class extends Ne{clickAction;isClickable;constructor(e,t){super(e,t),this.clickAction=this.props.element.clc,this.isClickable=this.clickAction?.at===4&&this.clickAction.gu?.u}componentDidMount(){ct(()=>{let e=this.props.triggerContext.triggerData,t=this.props.triggerContext.selectedItems;e.calculateDiscountData(t,this.props.triggerContext.shouldGiveFBTDiscount)})}render(){return $(fr,{children:[$("div",{style:this.getCompiledStyles(),class:"lc-container",onClick:e=>{this.onClick(e,{clickAction:this.clickAction})},children:$(tn,{elements:this.props.elements,element:this.props.element,triggerContext:this.props.triggerContext})}),this.props.triggerContext.triggerData.id==="preview"&&$("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}async onClick(e,t){if(this.isClickable)return super.onClick(e,t)}},Nt=class ss{constructor(t){this.engagementTrigger=t,this.triggerContext=new Pi(new Date,this.engagementTrigger)}static renderedEngagements=[];static engagementIDsWithTrackedDisplay=new Set;static DEBOUNCE_TIME=1e3;rootContainer;widgetElement;widget;triggerContext;observers=[];runtimeData=ue.get();widgetAPIService=se.get(cr);safeHTTPService=se.get(fe);scrollSubscription;variation;isExclusionWithBVariation;renderSilently(){this.render().catch(t=>Le.getInstance().captureException(t,b({},this.engagementTrigger.sentryContext())))}destroy(){w.log(`${this.engagementTrigger} will be destroyed`),this.scrollSubscription?.unsubscribe(),this.observers.forEach(t=>{t?.disconnect&&t.disconnect()}),this.rootContainer?.remove(),ss.engagementIDsWithTrackedDisplay.delete(this.engagementTrigger.shortID)}async render(){if(this.engagementTrigger.hasMultiplePlacement){let t=await this.getVariation();this.handleVariationResponse(t)}if(this.rootContainer=await this.getWidgetContainer(!0),!this.rootContainer){w.warn(`${this.engagementTrigger} no section found to render the widget`);return}this.widget=this.engagementTrigger.widget,await this.getVariationIfRequired(),!this.shouldStopRendering()&&(await this.startRendering(),this.attachScroll(),await this.checkAndSendEvent(),this.triggerContext.renderer=this)}isSameTrigger(t){return this.engagementTrigger.shortID===t.shortID}update(t){vh.default.log(`${this.engagementTrigger} will be updated`),this.updateItems(t.items,this.engagementTrigger.items)}shouldStopRendering(){return!this.widget&&!this.isExclusionWithBVariation}async getVariationIfRequired(){if(this.engagementTrigger.isSingleContent()||this.engagementTrigger.widget){w.log(`${this.engagementTrigger} already has required data to render widget`);return}let t=await this.observeWidgetContainerInViewport();this.handleVariationResponse(t)}handleVariationResponse(t){t&&(w.log(`${this.engagementTrigger} visitor has been assigned to variation ${t.variation}`),t.items?.length&&(this.engagementTrigger.items=t.items.map(r=>new At(r)),this.engagementTrigger.nonMutableItems=t.items.map(r=>new At(r))),t.bundleFrom&&(this.engagementTrigger.bundleFrom=new At(t.bundleFrom)),t.discount&&(this.engagementTrigger.discount=t.discount),t.placement&&(this.triggerContext.triggerData.placement=t.placement),t.props&&yh.JSUtils.hasKeys(t.props)&&(this.engagementTrigger.props=b(b({},this.engagementTrigger.props),t.props)),this.triggerContext.triggerData.widget=this.widget=new bi(t.widget),this.triggerContext.triggerData.contentID=t.contentID,this.triggerContext.triggerData.variation=this.variation=t.variation,this.triggerContext.triggerData.placement=t.placement,this.triggerContext.triggerData.manipulation=t.manipulation,this.triggerContext.triggerData.content=t.content,this.isExclusionWithBVariation=this.engagementTrigger.isExclusionTesting()&&this.variation==="b",this.isExclusionWithBVariation&&(this.rootContainer.style.height="0.5px"))}addToRendered(){ss.renderedEngagements.push(this)}async getVariation(){w.log(`${this.engagementTrigger} get variation`);let t={engagementID:this.engagementTrigger.engagementID,isPreview:this.engagementTrigger.id==="preview"};try{return await this.widgetAPIService.getVariation(t)}catch(r){w.error(`${this.engagementTrigger} unable to get the variation`,r);return}}async observeWidgetContainerInViewport(){if(!this.rootContainer){w.warn(`${this.engagementTrigger} No root container found to watch for viewport`);return}let t=window.innerHeight*.3,r={root:null,rootMargin:`-${t}px 0px ${t}px 0px`,threshold:0};return await this.isInViewport()?this.getVariation():new Promise(n=>{let i=new IntersectionObserver((s,o)=>{s.forEach(async c=>{if(c.isIntersecting){w.log(`${this.engagementTrigger} root container is near the viewport. Fetching variation`);let u=await this.getVariation();n(u),o.unobserve(this.rootContainer)}})},r);i.observe(this.rootContainer),this.observers.push(i)})}attachScroll(){this.scrollSubscription=Pn(window,"scroll").pipe(ar(ss.DEBOUNCE_TIME)).subscribe(()=>{this.checkAndSendEvent()})}async checkAndSendEvent(){let t=this.engagementTrigger.shortID;if(ss.engagementIDsWithTrackedDisplay.has(t)||!await this.isInViewport())return;let r={};this.triggerContext.triggerData.items?.length&&(r.promotedMIDs=this.engagementTrigger.items?.map(s=>s.mID));let n=this.isExclusionWithBVariation?N.EVENT_CAMPAIGN_HOLDOUT:N.EVENT_TRIGGER_DISPLAYED,i=new Ee(n,r,this.engagementTrigger);i.name===N.EVENT_CAMPAIGN_HOLDOUT&&(i.trigger.holdout=!0),this.safeHTTPService.sendEvent(i),ss.engagementIDsWithTrackedDisplay.add(t),this.scrollSubscription.unsubscribe()}generateParentElementID(){return`letscooee-${this.engagementTrigger.shortID}`}async isInViewport(){let t=(await this.getWidgetContainer())?.getBoundingClientRect();if(!t)return!1;let r=window.innerHeight||document.documentElement.clientHeight,n=(Math.min(t.bottom,r)-Math.max(t.top,0))*t.width,i=t.width*t.height,s=n/i*100;return this.engagementTrigger.isAnySplit()?s>0:s>=30}async getWidgetContainer(t){if(this.rootContainer?.isConnected)return this.rootContainer;let r=await this.createParentElementWithPlacement(t);if(r)return r;let n=`.letscooee[data-engagement-id="${this.triggerContext.triggerData.shortID}"]`;return document.querySelector(n)}async createParentElementWithPlacement(t){let r=this.engagementTrigger.placement;if(!r?.selector)return w.warn(`${this.engagementTrigger} does not have a selector`),null;let n=r.selector,i;if(n.includes(N.SHADOW_SPLITTER)){let u=n.split(N.SHADOW_SPLITTER),d=Pe.get().website.commonCSS;i=(await Q.retrySelector(u[0].trim()))?.shadowRoot,n=u[1].trim(),i&&(st.injectRawCSS(d,i),st.injectStylesheet(Rt.styleURL,i))}w.debug(`${this.engagementTrigger} attempt to render ${r.position}-${n}`);let s=await Q.retrySelector(n,10,i??document);if(!s)return w.warn(`${this.engagementTrigger} no placement found with ${n}`),null;let o=this.generateParentElementID(),c=this.getParentElement(o);if(!t)return c;switch(r.position){case Go.EngagementPlacementPosition.BEFORE:{s.parentElement?.insertBefore(c,s);break}case Go.EngagementPlacementPosition.INSIDE_FIRST:{s.insertBefore(c,s.firstChild);break}case Go.EngagementPlacementPosition.INSIDE_LAST:{s.appendChild(c);break}case Go.EngagementPlacementPosition.AFTER:default:s.parentElement?.insertBefore(c,s.nextSibling)}return c}async startRendering(){let t;try{t=await Ui.refreshItems(this.engagementTrigger)}catch(r){w.error(`${this.engagementTrigger} error refreshing the items`,r);return}if(!t?.length&&this.engagementTrigger.isProductPromoted()){w.warn(`${this.engagementTrigger} is of ${this.engagementTrigger.objective} but no product found`);return}this.engagementTrigger.items=t,this.renderContainer()}getParentElement(t,r=document){let n=r.getElementById(t);if(n)return n;let i=this.engagementTrigger.shortID;return n=document.createElement("div"),n.id=t,n.className=`letscooee letscooee-engagement engagement-${i}`,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}renderContainer(){if(!this.widget)return;let t=this.rootContainer;if(this.triggerContext.triggerData.hasSwiperElement()){let r=this.rootContainer?.shadowRoot||this.rootContainer?.attachShadow({mode:"open"}),n=Pe.get().website.commonCSS;st.injectRawCSS(n,r),st.injectStylesheet(Rt.styleURL,r),st.injectSwiperCSS(r),t=r}sf(jc(Wo,{element:this.widget.cont,triggerContext:this.triggerContext,elements:this.widget.elems}),t),this.addToRendered()}updateItems(t,r){let n=this.getItemDiff(t,r),i=this.getItemDiff(r,t);r.push(...n);for(let s of i)gh.ArrayUtils.remove(r,s)}getItemDiff(t,r){return t.filter(n=>!r.some(i=>i.selectedOrFirstVariant.value.mID===n.selectedOrFirstVariant.value.mID))}},Dr=class Kh extends Nt{static renderedEngagements=[];constructor(t){super(t)}addToRendered(){Kh.renderedEngagements.push(this)}observeWidgetContainerInViewport(){return this.getVariation()}generateParentElementID(){let t=super.generateParentElementID();return this.engagementTrigger.isSubscriptionUpsell()&&(t+=`-${this.engagementTrigger.items[0].selectedOrFirstVariant.value.mID}`),t}async checkAndSendEvent(){if(!ze.get().isOpen()&&this.runtimeData.pageName!=="cart"){w.log("Do not send display event as neither the cart drawer nor the cart page is open.");return}return super.checkAndSendEvent()}},pc=class Yh{constructor(t,r){this.engagementTrigger=t,this.element=r,this.cartItems=de.getCurrent().items}cartItems;static renderCartUpsell(t){let r=t.placement;if(!r?.selector){w.warn(`No placement available for ${t.objective}`,t.shortID);return}let n=Array.from(document.querySelectorAll(r.selector));if(!n?.length){w.warn(`No placement found for ${t.objective}`,t.shortID);return}for(let i of n)new Yh(t,i).render()}render(){let t=this.findCartItemFromHTMLElement();if(!t||this.engagementTrigger.skipSubscribedItems&&t.selling_plan_allocation)return;let r=this.engagementTrigger.items.find(m=>m.mID===t.product_id.toString());if(!r)return;let n=r.vars.find(m=>m.mID===t.id.toString());if(!n)return;let i=new Sr(n),s=t.selling_plan_allocation?.selling_plan;if(s)for(let m of i.sellingPlans??[])m.mID===s.id.toString()&&(m.isSelected=!0,i.changeSellingPlan(m));let o=new At(r);o.vars=[i],o.selectedOrFirstVariant.value=i;let c=`lc-cart-item-${this.engagementTrigger.shortID}-${r.mID}`;this.element.classList.add(c);let u=new Ct(this.engagementTrigger);u.placement.selector=`.${c}`,u.items=[o];let d=new Dr(u);d.renderSilently(),this.watchForCartItemDeletion(d,c)}watchForCartItemDeletion(t,r){let n=new MutationObserver(i=>{i.forEach(s=>{s.removedNodes.forEach(o=>{o===this.element&&(w.debug(`${r} has been removed`),t.destroy(),n.disconnect())})})});n.observe(this.element.parentElement,{childList:!0,subtree:!0})}findCartItemFromHTMLElement(){let t=this.element.innerHTML;return this.cartItems.find(r=>{if(!(t.includes(r.url)||t.includes(r.variant_id))&&(!t.includes(r.product_title)||r.variant_title&&!t.includes(r.variant_title)))return!1;let n=r.selling_plan_allocation?.selling_plan?.name;return!(n&&!t.includes(n))})}},Eh=Se(Rr()),fc=class extends Dr{ctaListener=new en;constructor(e){super(e),Cr.get().subscriber(N.CART_UPDATE_BROADCAST).pipe(Ku(null)).subscribe(this.checkMilestone.bind(this))}update(e){super.update(e),this.widgetElement.update()}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}let e=this.widgetElement=document.createElement("cooee-progressbar");e.className="cooee-root",e.cart=de.getCurrent(),e.engagementTrigger=this.engagementTrigger,e.setAttribute("engagement",this.engagementTrigger.shortID),this.rootContainer.appendChild(e),this.addToRendered()}async checkMilestone(){let e=await de.getCurrent().getNormalisedCart(),t=[...this.engagementTrigger.progressBarConfig.milestones];for(let r of t){if(e.amount<r.minValue)break;if(w.log("Current milestone",r),r.rewardType===Eh.MilestoneRewardType.FREE_AUTO_GIFT){let n=r.items[0],i=e.items.find(s=>s.vID===n.vID||s.mID===n.mID);if(i)w.log(`Item(vID:${n.vID}) already present in the cart. Updating item's properties`),await this.ctaListener.performUpdate(i,{properties:this.engagementTrigger.getPrivateAttributesForLineItem()});else{let s=await this.ctaListener.performAddToCart([n],this.engagementTrigger);ze.get().refreshUI(s,!1)}}}}async removeOtherFreeGifts(e){let t=(await de.getCurrent().getNormalisedCart()).items.filter(r=>r.vID!==e?.vID&&r.properties[N.CAMPAIGN_ATTRIBUTE]===this.engagementTrigger.shortID);if(t.length)for(let r of t)await this.ctaListener.performUpdate(r,{quantity:0})}},mc=class extends Nt{constructor(e){super(e)}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}let e=this.widgetElement=document.createElement("cooee-shoppable-videos");e.className="cooee-root",e.triggerContext=this.triggerContext,e.addEventListener("sendEvent",t=>{let r=t.detail;this.safeHTTPService.sendEvent(r)}),e.setAttribute("engagement",this.engagementTrigger.shortID),this.rootContainer.appendChild(e),this.addToRendered()}},_h=Se(ti()),dc=class extends Nt{constructor(e){super(e)}shouldStopRendering(){return!1}renderContainer(){let e=this.getParentElement(`inner-letscooee-${this.engagementTrigger.shortID}`);this.rootContainer.appendChild(e),document.addEventListener(N.ADD_BUNDLE_CTA_INBOUND_EVENT,this.inboundCTAListener.bind(this),!1)}async inboundCTAListener(e){let t=this.engagementTrigger,r=`Engagement(id: ${t.engagementID}, shortID: ${t.shortID})`,n=e.detail;if(!_h.JSUtils.hasKeys(n)){w.error(`No detail received for ${r}`);return}w.log("Detail received for BYOB",n);let i=n.campaignID??n.campaignId??n.campaign_id;if(i!==t.shortID&&i!==t.engagementID){w.warn(`Current ${r} is not BYOB. Received: ${i}`);return}let s=n.items;if(!s?.length)return;let o=s.map(c=>new ft({mID:c.product_id,vID:c.variant_id,quantity:c.quantity||1}));await new ki(this.triggerContext).execute({embeddedItems:o,clickAction:{at:108,applyDiscount:!0}})}},Hi=class{runtimeData=ue.get();processCartWidgetResponse(e){this.runtimeData.isCartDirty=!1,this.runtimeData.cartEngagements=e;let t=[...Dr.renderedEngagements];Dr.renderedEngagements.length=0;for(let r of e)w.log(`\u{1F4E3} ${r} received as cart embed`),!this.findAndUpdateCurrent(r,t)&&(w.log(`${r} is new`),r.isProgressBar()?new fc(r).renderSilently():r.isSubscriptionUpsell()?pc.renderCartUpsell(r):new Dr(r).renderSilently());this.removeOldWidgets(t)}processPageWidgetResponse(e){let t=[...Nt.renderedEngagements];Nt.renderedEngagements.length=0;for(let r of e)w.log(`\u{1F4E3} ${r} received as page embed`),!this.findAndUpdateCurrent(r,t)&&(w.log(`${r} is new`),r.isShoppableVideo()?new mc(r).renderSilently():r.isBYOB()?new dc(r).renderSilently():new Nt(r).renderSilently());this.removeOldWidgets(t)}findAndUpdateCurrent(e,t){let r=t.findIndex(n=>n.isSameTrigger(e));return r<0||e.isSubscriptionUpsell()?!1:(t[r].update(e),t[r].renderSilently(),t.splice(r,1),!0)}removeOldWidgets(e){for(let t of e)t.destroy()}},$i=class{runtimeData=ue.get();httpService=se.get(ht);sessionManager=se.get(qe);constructor(){}async getWidgetProps(){let e={};e.engagementIDs=this.addAvailableEngagementShortIDs(),e.locale=this.runtimeData.locale,await this.addSessionContext(e),e.currentItem=this.runtimeData.getCurrentItem();try{e.cart=await de.getCurrent().getNormalisedCart()}catch(i){w.error("Error fetching Shopify cart before sending widget call",i)}let t=new URLSearchParams(location.search),r=t.get("cooee-preview");r?e.previewIDs=r.trim().split(",").filter(i=>Number.isInteger(+i)):this.runtimeData.previewIDs?.length&&(e.previewIDs=this.runtimeData.previewIDs);let n=t.get("cooee-variant");return n?e.previewVariant=n:this.runtimeData.previewVariant&&(e.previewVariant=this.runtimeData.previewVariant),e}async addSessionContext(e){let t=await this.sessionManager.checkSessionAndGetContext();e.sessionID=t[0],e.sessionNumber=t[1],e.landingPage=t[2],e.page=Tr.parseFromCurrent()}addAvailableEngagementShortIDs(){let e=document.querySelectorAll(".letscooee-engagement"),t=[];return e.forEach(r=>{let n=r.dataset.engagementId;n&&+n&&t.push(n)}),t}},cr=class Xh extends $i{static INSTANCE;loadWidgetsSubject=new xt;constructor(){super(),this.loadWidgetsSubject.pipe(ar(300)).subscribe(()=>{this.loadCartWidgets().catch(t=>w.error("Unable to initiate cart widgets",t)),this.loadPageWidgets().catch(t=>w.error("Unable to initiate page widgets",t))}),Cr.get().subscriber(N.CART_UPDATE_BROADCAST).subscribe(()=>this.loadWidgetsSubject.next())}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Xh),this.INSTANCE}loadOrRenderWidgetsAfterCartChange(){this.runtimeData.isCartDirty?this.loadWidgetsSilently():this.renderCachedCartWidgets()}loadPageWidgetsSilently(){qe.replaySubject.subscribe(async()=>{this.loadPageWidgets().catch(t=>w.error("Unable to initiate load page widgets",t))})}loadCartWidgetsSilently(){qe.replaySubject.subscribe(async()=>{this.loadCartWidgets().catch(t=>w.error("Unable to initiate cart widgets",t))})}loadWidgetsSilently(){qe.replaySubject.subscribe(async()=>{this.loadWidgetsSubject.next()})}async loadPageWidgets(){let t=await this.getWidgetProps();w.log("Load widgets",t),this.httpService.post("/v1/engagement/page-widgets",t).then(async r=>{let n=r.widgets.map(i=>new Ct(i));new Hi().processPageWidgetResponse(n)}).catch(r=>{w.error("Error sending widget getter",r)})}async loadCartWidgets(){let t=await this.getWidgetProps();w.log("Load cart widgets",t),this.httpService.post("/v1/engagement/cart-widgets",t).then(async r=>{let n=r.widgets.map(i=>new Ct(i));new Hi().processCartWidgetResponse(n)}).catch(r=>{w.error("Error sending widget getter",r)})}async getVariation(t){let r=await this.getWidgetProps();return this.httpService.post("/v1/engagement/get-variant",b(b({},t),r))}renderCachedCartWidgets(){new Hi().processCartWidgetResponse(this.runtimeData.cartEngagements)}},hc=class{eventAPIService;constructor(){this.eventAPIService=se.get(rn)}processResponse(e){for(let t of e)t.experiment?.cssSelector&&this.runExperiment(t);document.querySelector("#lc-hide-body")?.remove()}async runExperiment(e){if(!e.experiment?.cssSelector){w.error("No CSS selector present in experiment",e.toString);return}let t;try{t=await Q.retrySelectors(e.experiment.cssSelector)}catch{w.error("Fail to get CSS selector for experiment",e.toString());return}if(t?.length){for(let r of t)if(e.experiment.op==="SHOW")r.style.display="block";else if(e.experiment.op==="HIDE")r.style.display="none";else{w.error("Invalid experiment operation",e.toString);return}this.eventAPIService.trackExperiment({name:N.EVENT_EXPERIMENT_START,experiment:new Qr(e)}).catch(r=>{w.error("Fail to track experiment",r)})}}},rn=class zh extends $i{static INSTANCE;constructor(){super()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new zh),this.INSTANCE}loadExperimentSilently(){De.get(oe.SDK_TOKEN).then(t=>{t?this.loadExperiments().catch(r=>w.error("Unable to initiate experiment",r)):qe.replaySubject.subscribe(async()=>{this.loadExperiments().catch(r=>w.error("Unable to initiate experiment",r))})})}async loadExperiments(){if(!this.runtimeData.activeExperiment)return;let t=await this.getWidgetProps();w.log("Load experiments",t),this.httpService.post("/v1/engagement/experiments",t).then(async r=>{let n=r.experiments.map(i=>new Ct(i));new hc().processResponse(n)}).catch(r=>{w.error("Error sending experiment getter",r)})}async trackExperiment(t){await this.addSessionContext(t),await this.httpService.post("/v1/event/experiment",t)}},gc=class{runtimeData=ue.get();widgetAPIService=se.get(cr);experimentAPIService=se.get(rn);meddle(){let e=we.globalRef;e.account=e.account??[],e.profile=e.profile??[],e.events=e.events??[],e.screen=e.screen??[],e.page=e.page??[],this.meddlePage(),this.meddleAccount(),this.meddleEvents(),this.meddleProfile(),this.meddleScreen(),this.exposeMethods()}exposeMethods(){let e=we.globalRef;e.loadPageWidgets=()=>{this.widgetAPIService.loadPageWidgetsSilently()},e.loadCartWidgets=()=>{this.widgetAPIService.loadCartWidgetsSilently()},e.loadExperiments=()=>{this.experimentAPIService.loadExperimentSilently()},e.previewWidget=we.previewWidget.bind(we),e.previewPopup=we.previewPopup.bind(we)}overwritePush(e,t){ui(e,"push",t)}meddleAccount(){this.overwritePush(we.globalRef.account,(...e)=>{this.processAccount(e[0])}),we.globalRef.account.forEach(this.processAccount.bind(this))}meddleEvents(){this.overwritePush(we.globalRef.events,(...e)=>{this.processEvent(e[0])}),we.globalRef.events.forEach(this.processEvent.bind(this))}meddleProfile(){this.overwritePush(we.globalRef.profile,(...e)=>{this.processProfile(e[0])}),we.globalRef.profile.forEach(this.processProfile.bind(this))}meddleScreen(){this.overwritePush(we.globalRef.screen,(...e)=>{this.processPageName(e[0])}),we.globalRef.screen.forEach(this.processPageName.bind(this))}processAccount(e){e&&(e.appID&&we.authenticate(e),e.flags&&Ln.setFlags(e.flags))}processEvent(e){e&&(N.JS_LOAD_WHITELIST_EVENTS.includes(e[0])?we.sendEvent(e[0],e[1],b({occurred:this.runtimeData.jsLoadTime},e[2])):we.sendEvent(e[0],e[1],e[2]))}processProfile(e){e&&we.updateProfile(e)}processPageName(e){e&&we.setPageName(e)}meddlePage(){this.overwritePush(we.globalRef.page,(...e)=>{this.processPage(e[0])}),we.globalRef.page.forEach(this.processPage.bind(this))}processPage(e){e.currentItem&&this.runtimeData.setCurrentItem(e.currentItem),e.currency&&(this.runtimeData.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&&we.setPageName(e.pageName),e.activeExperiment&&(this.runtimeData.activeExperiment=e.activeExperiment)}},ji=class{static SESSION_STORAGE=window.sessionStorage;static SESSION_STORAGE_KEY_PREFIX=N.COOEE.concat("-");static getString(e,t){return this.getItem(e)||t}static setString(e,t){this.setItem(e,t)}static remove(e){this.removeItem(e)}static getItem(e){return this.SESSION_STORAGE.getItem(this.SESSION_STORAGE_KEY_PREFIX.concat(e))}static setItem(e,t){this.SESSION_STORAGE.setItem(this.SESSION_STORAGE_KEY_PREFIX.concat(e),t)}static removeItem(e){this.SESSION_STORAGE.removeItem(this.SESSION_STORAGE_KEY_PREFIX.concat(e))}},Vi=class zo{static INSTANCE;static DEBOUNCE_TIME=1e3;static THRESHOLD=10;safeHttpService=se.get(fe);_lastScreenOrScroll=new Date;lastPercent=0;constructor(){}set lastScreenOrScroll(t){this._lastScreenOrScroll=t}static getInstance(){return this.INSTANCE||(this.INSTANCE=new zo),this.INSTANCE}resetScrollID(t){ji.remove(N.SESSION_STORAGE_SCROLL_ID),this.lastScreenOrScroll=t??new Date}listen(){if(window.scrollY){let t=this.getPercentScrolledY();this.shouldSendScroll(t)&&this.sendScroll(t)}Q.onDocumentLoaded(()=>{this.observeWindowScroll()})}observeWindowScroll(){Pn(window,"scroll").pipe(ar(zo.DEBOUNCE_TIME),On(()=>{let t=this.getPercentScrolledY();if(t>100){w.warn("Received scroll percent is more than 100",t);return}if(this.shouldSendScroll(t))return t})).subscribe(t=>{this.sendScroll(t)})}shouldSendScroll(t){return Math.abs(this.lastPercent-t)>=zo.THRESHOLD||this.lastPercent!==t&&t===100}sendScroll(t){if(t==null)return;let r={percent:t,timeMS:new Date().getTime()-this._lastScreenOrScroll.getTime()};this.lastPercent=t;let n=ji.getString(N.SESSION_STORAGE_SCROLL_ID,""),i=new Ee(N.EVENT_SCROLL,r,null,n);this.safeHttpService.sendEvent(i),ji.setString(N.SESSION_STORAGE_SCROLL_ID,i.id.toHexString()),this._lastScreenOrScroll=new Date(i.occurred)}getPercentScrolledY(){let t=window.document.body.scrollHeight,r=window.innerHeight;return Math.ceil((window.scrollY+r)/t*100)}},yc=class Jh{static ACTIVE_DURATION="aDur";static INACTIVE_DURATION="iaDur";apiService=se.get(fe);runtimeData=ue.get();listen(){document.onvisibilitychange=()=>{document.visibilityState==="visible"?this.onVisible():document.visibilityState==="hidden"&&this.onHidden()}}async onVisible(){}async onHidden(){let t=await this.runtimeData.setInactive();if(t===0){w.info("Not sending background event as user was inactive on website");return}w.info(`Sending background event with ${t} seconds`);let r={};r[Jh.ACTIVE_DURATION]=t,this.apiService.sendEvent(new Ee(N.EVENT_APP_BACKGROUND,r))}},vc=class{compareCartItemSubject=new xt;constructor(){this.compareCartItemSubject.pipe(ar(100)).subscribe(this.compareCartItems.bind(this))}listen(){this.compareCartItemSubject.next(),this.overwriteXMLHttpRequest(),this.overwriteFetchMethod()}overwriteXMLHttpRequest(){let e=this,t=window.XMLHttpRequest.prototype.send;window.XMLHttpRequest.prototype.send=function(){return this.addEventListener("load",function(){e.performEvent(this._url).catch(r=>w.error("Unable to process cart change in XMLHttpRequest",r))}),t.apply(this,arguments)},w.debug("Securely overwritten window.XMLHttpRequest.send method")}overwriteFetchMethod(){let e=this,t=window.fetch;window.fetch=function(r){return t.apply(window,arguments).then(n=>(e.performEvent(r.toString()).catch(i=>w.error("Unable to process cart change in fetch",i)),n))},w.debug("Securely overwritten window.fetch method")}async performEvent(e){this.isCartManipulationURL(e)&&(ue.get().isCartDirty=!0,this.compareCartItemSubject.next())}isCartManipulationURL(e){return/\/cart\/(add|change|update|clear)/.test(e)}sendChangesAsEvents(e,t){let r=e?.items,n=t.items,i=[],s=[];if(w.debug(`Comparing cart change with old count ${r?.length} to new count ${n.length}`),n?.forEach(o=>{let c=r?.find(u=>u.vID===o.vID);if(c){if(c.quantity!==o.quantity){let u=c.quantity<o.quantity,d=Math.abs(c.quantity-o.quantity),m=te(b({},o),{quantity:d});u?i.push(m):s.push(m)}r&&Q.removeFromArray(r,c)}else i.push(o)}),r)for(let o of r)s.push(o);w.debug(`Cart delta: added: ${i.length}, removed: ${s.length}`),i.length&&this.sendEvent(N.EVENT_ADD_TO_CART,{items:i}),s.length&&e.token===t.token&&this.sendEvent(N.EVENT_REMOVE_FROM_CART,{items:s}),(s.length||i.length)&&Cr.get().broadcast(N.CART_UPDATE_BROADCAST,{itemsAdded:i,itemsRemoved:s})}sendEvent(e,t){let r=new Ee(e,t);se.get(fe).sendEvent(r)}async compareCartItems(){let e=await De.get(oe.CURRENT_CART,{}),t=await de.getCurrent().getNormalisedCart(!0);this.sendChangesAsEvents(e,t)}},Ec=class{listen(){return this.overwriteFetchMethod(),this}overwriteFetchMethod(){let e=this,t=window.fetch;window.fetch=async function(r,n){try{await e.modifyRequest(r,n)}catch(i){Le.getInstance().captureError("Failed to modify graphql request",i,{body:JSON.stringify(n?.body)})}return t(r,n)},w.debug("Securely overwritten window.fetch method for graphql query")}async modifyRequest(e,t){let r=typeof e=="string"?e:e instanceof Request?e.url:"";if(!(r.includes("graphql.json")&&t?.method==="POST")||!t.body)return;let n;if(typeof t.body=="string")try{n=JSON.parse(t.body)}catch{return}else n=t.body;w.debug("Intercepted fetch request of:",r),n?.query.includes("cartCreate")&&(t.body=await this.updatedBody(n),this.sendBuyNowEvent())}async updatedBody(e){let t=e.variables.input.attributes??[],r=await Q.getCartAttributes();return e.variables.input.attributes=[...t,...r],JSON.stringify(e)}sendBuyNowEvent(){let e=ue.get().getCurrentItem();if(!e)return;let t=new Ee(N.EVENT_BUY_NOW_CLICKED,{items:[e]});fe.getInstance().sendEvent(t)}},Wi=class{constructor(e,t){this.selectors=e,this.eventName=t,this.selectorString=e.join(",")}static INSTANCE;elements;selectorString;clickListenerCallback=e=>{let t=e.currentTarget,r=new Ee(this.eventName,{class:t.className||void 0,tagName:t.tagName||void 0,id:t.id||void 0});fe.getInstance().sendEvent(r),this.removeClickListener(this.clickListenerCallback)};listenSilently(){this.listen().catch(e=>w.error(e))}async listen(){this.elements=await Q.retrySelectorForElements(this.selectorString),this.elements.forEach(e=>{e.addEventListener("click",this.clickListenerCallback)})}removeClickListener(e){this.elements?.forEach(t=>{t.removeEventListener("click",e)})}},_c=class Rc extends Wi{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(Rc.selectors,N.EVENT_ITEM_THUMBNAIL_CLICKED)}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Rc),this.INSTANCE}},Sc=class nl extends Wi{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(nl.selectors,N.EVENT_REVIEW_CLICKED)}static getInstance(){return this.INSTANCE||(this.INSTANCE=new nl),this.INSTANCE}},bc=class{selector=[".gokwik-checkout button","button.cart__checkout-button","button.cart__checkout","button#checkout","button#checkout2",'button[id*="checkout" i]','button[name*="checkout" i]','button[class*="checkout" i]'].join(",");listen(){Q.onDocumentLoaded(()=>{w.debug("Execution order:","document ready"),this.useLocationHash()})}useLocationHash(){let e=window.location.hash?.substring(1);if(e)if(e.includes(N.HASH_INITIATE_CHECKOUT)){document.dispatchEvent(new Event(N.THIRD_PARTY_CHECKOUT_EVENT));let t=document.querySelector(this.selector);if(!t){w.debug("No clickable cart checkout button found");return}w.debug("Clickable cart checkout button found",t),t.click()}else e.includes(N.HASH_OPEN_CART_DRAWER)&&ze.get().open()}},wc=class{trackSilently(){this.track().catch(e=>Le.getInstance().captureException(e))}async track(){let e=window.Shopify?.checkout,t=window.Shopify?.Checkout;if(!e&&!t)return;let r={};this.processSmallCheckout(e,r),this.processBigCheckout(t,r);let n=this.getTokenFromCurrentURLPath();if(n&&(r.urlToken=n),!Object.keys(r).length){w.warn("No processable data found in",e,t);return}r.referrer=document.referrer,r.url=location.href;let i=await se.get(qe).checkSessionAndGetContext();r.sessionID=i[0],this.trackOrder(r)}processSmallCheckout(e,t){e&&(e.order_id&&(t.orderID=e.order_id.toString()),e.token&&(t.checkoutToken=e.token.toString()),e.customer_id&&(t.customerID=e.customer_id.toString()))}processBigCheckout(e,t){e&&(e.token&&!t.checkoutToken&&(t.checkoutToken=e.token.toString()),e.cartToken&&(t.cartToken=e.cartToken.toString()))}trackOrder(e){w.info("Found order to be send",e),fe.getInstance().trackOrder(e)}getTokenFromCurrentURLPath(){let e=new RegExp("[A-Fa-f0-9]{28,32}");return location.pathname?.split("/").find(t=>t.length&&e.test(t))}},Yo=class{static attachCheckoutListener(){window.gokwikSdk&&window.gokwikSdk.on("checkout_initiated",async()=>{let e=await de.getCurrent().getNormalisedCart(),t={via:"GoKwik",items:e.items,cartToken:e.token,amount:{value:e.amount,currency:e.currency}},r=new Ee(N.EVENT_CHECKOUT_STARTED,t);fe.getInstance().sendEvent(r)})}},Ic=class{async migrate(){}};_t.escape=Sh.MustacheUtils.escapeHtml;var we=class{static globalRef;static authenticated;static async initForMerchantWebsiteOnly(){window.cooeeSDKPreview||(this.initGlobalReference(),await new Ic().migrate(),this.autoAuthenticate(),new gc().meddle(),se.get(rn).loadExperimentSilently(),new yc().listen(),new wc().trackSilently(),new vc().listen(),new Ec().listen(),new bc().listen(),se.get(Vi).listen(),se.get(Sc).listenSilently(),se.get(_c).listenSilently(),se.get(cr).loadPageWidgetsSilently(),this.attachGoKwikListeners(),this.storePreviewParams(),this.setupPreviewListeners(),er.watch())}static async initForAll(){this.injectWidgetAssets()}static initGlobalReference(){window.CooeeSDK||ui(window,"CooeeSDK",{}),this.globalRef=window.CooeeSDK,ui(this.globalRef,"config",new Pe),ui(this.globalRef,"runtimeData",new ue),w.debug("Global reference initialised")}static injectWidgetAssets(){st.injectScriptURL(Rt.widgetURL,"cooee-widget-sdk"),st.injectStylesheet(Rt.styleURL)}static autoAuthenticate(){let e=Me.getShopName();e&&this.authenticate({shopifyShop:e})}static authenticate(e){if(this.authenticated)return;let t=e.appID?.trim(),r=e.shopifyShop;if((Q.isNull(t)||t.length!==24)&&Q.isNull(r)){w.warn("Cooee App ID or Shop name is not configured");return}this.authenticated=!0,se.get(qe).init(e)}static sendEvent(e,t,r){let n=new Ee(e,t,r?.triggerData);r?.occurred&&(n.occurred=r.occurred),se.get(fe).sendEvent(n)}static updateProfile(e){for(let t in e)if(t.toLowerCase().startsWith("ce "))throw new Error("User property name cannot start with 'CE '");se.get(fe).updateProfile(e)}static setPageName(e){if(!e)return;let t=ue.get(),r=t.pageName;if(e===r)return;if(t.pageName=e,e==="cart"&&se.get(cr).loadOrRenderWidgetsAfterCartChange(),N.BLACKLISTED_PAGE_NAMES.some(s=>e.includes(s))){se.get(Vi).resetScrollID();return}let n={};r&&(n.ps=r);let i=new Ee(N.EVENT_SCREEN_VIEW,n);i.occurred=t.jsLoadTime,se.get(fe).sendEvent(i),se.get(Vi).resetScrollID(i.occurred)}static previewPopup(e,t){new Bi(t).render(e)}static previewWidget(e){new Nt(new Ct(e)).render()}static setupPreviewListeners(){if(window.opener){try{window.opener.postMessage({action:"COOEE_READY_FOR_PREVIEW"},"*")}catch(e){w.error(e)}window.addEventListener("message",e=>{if(w.debug("Received event",e),!e.origin.includes("letscooee.com")&&!e.origin.includes("localhost"))return;let t=e.data;typeof t=="object"&&(t.action==="POPUP_PREVIEW"?(this.previewPopup(t.engagementTrigger),e.source?.postMessage({action:"PREVIEW_SUCCESSFUL"},e.origin)):t.action==="WIDGET_PREVIEW"&&(this.previewWidget(t.engagementTrigger),e.source?.postMessage({action:"PREVIEW_SUCCESSFUL"},e.origin)))})}}static attachGoKwikListeners(){let e=ue.get();window.addEventListener("kp-modal:opened",()=>{e.isGoKwikPopupOpen=!0}),window.addEventListener("user-loggedin",t=>{let{token:r}=t.detail;r&&this.updateProfile({goKwikToken:r})}),window.gokwikSdk?Yo.attachCheckoutListener():window.addEventListener("gokwikLoaded",Yo.attachCheckoutListener)}static storePreviewParams(){let e=ue.get(),t=new URLSearchParams(location.search),r=t.get("cooee-preview");r&&(e.previewIDs=r.trim().split(",").filter(i=>Number.isInteger(+i)));let n=t.get("cooee-variant");n&&(e.previewVariant=n)}};w.configure();w.logBrand();w.debug("Execution order:","top");window.cooeeShopifyScriptLoaded||(window.cooeeShopifyScriptLoaded=!0,(async()=>(w.debug("Execution order:","IIFE start"),await we.initForMerchantWebsiteOnly(),await we.initForAll(),w.debug("Execution order:","IIFE end")))());w.debug("Execution order:","bottom");})();
|