@letscooee/web-sdk 9.10.4 → 9.10.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/main.min.js +12 -12
- package/dist/widget.min.css +1 -1
- package/dist/widget.min.js +32 -32
- package/package.json +1 -1
package/dist/main.min.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(()=>{var mg=Object.create,Rc=Object.defineProperty,dg=Object.defineProperties,hg=Object.getOwnPropertyDescriptor,gg=Object.getOwnPropertyDescriptors,yg=Object.getOwnPropertyNames,lp=Object.getOwnPropertySymbols,vg=Object.getPrototypeOf,pp=Object.prototype.hasOwnProperty,Eg=Object.prototype.propertyIsEnumerable,up=(e,t,r)=>t in e?Rc(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))Eg.call(t,r)&&up(e,r,t[r]);return e},ee=(e,t)=>dg(e,gg(t)),Qi=(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')}),sr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),_g=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of yg(t))!pp.call(e,i)&&i!==r&&Rc(e,i,{get:()=>t[i],enumerable:!(n=hg(t,i))||n.enumerable});return e},Ee=(e,t,r)=>(r=e!=null?mg(vg(e)):{},_g(t||!e||!e.__esModule?Rc(r,"default",{value:e,enumerable:!0}):r,e)),nn=sr((e,t)=>{"use strict";(function(r){"use strict";var n={};n.VERSION="1.6.1";var i,s={},o=function(h,v){return function(){return v.apply(h,arguments)}},c=function(){var h=arguments,v=h[0],E,y;for(y=1;y<h.length;y++)for(E in h[y])!(E in v)&&h[y].hasOwnProperty(E)&&(v[E]=h[y][E]);return v},u=function(h,v){return{value:h,name:v}};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 v=this.context.filterLevel;return h.value>=v.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,v){i&&this.enabledFor(h)&&i(v,c({level:h},this.context))}};var g=new d({filterLevel:n.OFF});(function(){var h=n;h.enabledFor=o(g,g.enabledFor),h.trace=o(g,g.trace),h.debug=o(g,g.debug),h.time=o(g,g.time),h.timeEnd=o(g,g.timeEnd),h.info=o(g,g.info),h.warn=o(g,g.warn),h.error=o(g,g.error),h.log=h.info})(),n.setHandler=function(h){i=h},n.setLevel=function(h){g.setLevel(h);for(var v in s)s.hasOwnProperty(v)&&s[v].setLevel(h)},n.getLevel=function(){return g.getLevel()},n.get=function(h){return s[h]||(s[h]=new d(c({name:h},g.context)))},n.createDefaultHandler=function(h){h=h||{},h.formatter=h.formatter||function(y,_){_.name&&y.unshift("["+_.name+"]")};var v={},E=function(y,_){Function.prototype.apply.call(y,console,_)};return typeof console>"u"?function(){}:function(y,_){y=Array.prototype.slice.call(y);var x=console.log,P;_.level===n.TIME?(P=(_.name?"["+_.name+"] ":"")+y[0],y[1]==="start"?console.time?console.time(P):v[P]=new Date().getTime():console.timeEnd?console.timeEnd(P):E(x,[P+": "+(new Date().getTime()-v[P])+"ms"])):(_.level===n.WARN&&console.warn?x=console.warn:_.level===n.ERROR&&console.error?x=console.error:_.level===n.INFO&&console.info?x=console.info:_.level===n.DEBUG&&console.debug?x=console.debug:_.level===n.TRACE&&console.trace&&(x=console.trace),h.formatter(y,_),E(x,y))}},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)}),Nc=sr(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MustacheUtils=void 0;var t=class Lh{static escapeHtml(n){return String(n).replace(/"/g,i=>Lh.entityMap[i])}};e.MustacheUtils=t,t.entityMap={'"':"""}}),Tr=sr(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.SessionType=e.EngagementContentType=e.TriggerType=e.EngagementType=e.EngagementStatus=e.TimePreference=e.ScheduleFrequency=e.CriteriaFrequency=void 0;var t=function(m){return m[m.ONCE_PER_USER=1]="ONCE_PER_USER",m[m.ONCE_PER_SESSION=2]="ONCE_PER_SESSION",m[m.EVERY_TIME=3]="EVERY_TIME",m}(t||(e.CriteriaFrequency=t={})),r=function(m){return m[m.ONE_TIME=1]="ONE_TIME",m[m.MULTIPLE=2]="MULTIPLE",m[m.RECURRING=3]="RECURRING",m}(r||(e.ScheduleFrequency=r={})),n=function(m){return m[m.NOW=1]="NOW",m[m.LATER=2]="LATER",m[m.NEVER=3]="NEVER",m}(n||(e.TimePreference=n={})),i=function(m){return m[m.PUBLISHED=1]="PUBLISHED",m[m.DRAFT=2]="DRAFT",m[m.PAUSED=3]="PAUSED",m[m.STOPPED=5]="STOPPED",m[m.COMPLETED=6]="COMPLETED",m[m.UNINSTALLED=8]="UNINSTALLED",m}(i||(e.EngagementStatus=i={})),s=function(m){return m.CAMPAIGN="CAMPAIGN",m.NATIVE_AB="NATIVE_AB",m.CRO_COPILOT="CRO_COPILOT",m}(s||(e.EngagementType=s={})),o=function(m){return m[m.NONE=0]="NONE",m[m.RULE_BASED=1]="RULE_BASED",m[m.INTENT_BASED=2]="INTENT_BASED",m}(o||(e.TriggerType=o={})),c=function(m){return m[m.SINGLE=1]="SINGLE",m[m.EXCLUSION=2]="EXCLUSION",m[m.ABTESTING=3]="ABTESTING",m}(c||(e.EngagementContentType=c={})),u=function(m){return m[m.ALL=0]="ALL",m[m.NEW_ONLY=1]="NEW_ONLY",m[m.RETURNING_ONLY=2]="RETURNING_ONLY",m}(u||(e.SessionType=u={})),d=function(m){return m.ALL="ALL",m.LOGGED_IN="LOGGED_IN",m.NON_LOGGED_IN="NON_LOGGED_IN",m}(d||(e.LoggedInVisitor=d={})),g=function(m){return m.ALL="ALL",m.PURCHASED="PURCHASED",m.NON_PURCHASED="NON_PURCHASED",m}(g||(e.PurchasedVisitor=g={})),h=function(m){return m[m.NONE=0]="NONE",m[m.ITEM_RECOMMENDATION=1]="ITEM_RECOMMENDATION",m[m.MULTIPLE_ITEMS=2]="MULTIPLE_ITEMS",m[m.SINGLE_ITEM=3]="SINGLE_ITEM",m[m.TOP_SELLING=4]="TOP_SELLING",m[m.STOCK_CLEARANCE=5]="STOCK_CLEARANCE",m[m.NEW_ARRIVALS=6]="NEW_ARRIVALS",m[m.RECENTLY_VIEWED=7]="RECENTLY_VIEWED",m[m.EVENT_ITEM=8]="EVENT_ITEM",m[m.CART_ITEM=9]="CART_ITEM",m[m.BUNDLE=10]="BUNDLE",m[m.CURRENT_ITEM=11]="CURRENT_ITEM",m[m.PURCHASED_PREVIOUSLY=12]="PURCHASED_PREVIOUSLY",m[m.COLLECTION_ITEMS=13]="COLLECTION_ITEMS",m[m.TRENDING_ITEMS=14]="TRENDING_ITEMS",m}(h||(e.EngagementItemSource=h={})),v=function(m){return m[m.LAST_ADDED=1]="LAST_ADDED",m[m.FIRST_ADDED=2]="FIRST_ADDED",m[m.HIGHEST_PRICE=3]="HIGHEST_PRICE",m[m.LOWEST_PRICE=4]="LOWEST_PRICE",m[m.FIRST_MATCHING_TAG=5]="FIRST_MATCHING_TAG",m[m.ALL=6]="ALL",m}(v||(e.CartItemSource=v={})),E=function(m){return m[m.ALL=0]="ALL",m[m.ONLY_ORGANIC=1]="ONLY_ORGANIC",m[m.ONLY_NON_ORGANIC=2]="ONLY_NON_ORGANIC",m[m.INCLUDES=3]="INCLUDES",m[m.EXCLUDES=4]="EXCLUDES",m}(E||(e.UTMCriteria=E={})),y=function(m){return m[m.NONE=0]="NONE",m[m.LIKE=1]="LIKE",m[m.NOT_LIKE=2]="NOT_LIKE",m[m.EQUALS=3]="EQUALS",m[m.NOT_EQUALS=4]="NOT_EQUALS",m}(y||(e.URLCriteria=y={})),_=function(m){return m[m.NONE=0]="NONE",m[m.LESS_THAN=1]="LESS_THAN",m[m.GREATER_THAN=2]="GREATER_THAN",m[m.BETWEEN=3]="BETWEEN",m[m.EQUALS=4]="EQUALS",m}(_||(e.CartCriteria=_={})),x=function(m){return m[m.ALL=0]="ALL",m[m.INCLUDES=1]="INCLUDES",m[m.EXCLUDES=2]="EXCLUDES",m}(x||(e.CartCurrencyOperator=x={})),P=function(m){return m[m.NONE=0]="NONE",m[m.AMOUNT=1]="AMOUNT",m[m.TOTAL_PRODUCT=2]="TOTAL_PRODUCT",m[m.UNIQUE_PRODUCT=3]="UNIQUE_PRODUCT",m}(P||(e.CartFilterEnum=P={})),M=function(m){return m[m.NONE=0]="NONE",m[m.ITEM=1]="ITEM",m[m.COLLECTION=2]="COLLECTION",m}(M||(e.PromotionType=M={})),L=function(m){return m[m.NONE=0]="NONE",m[m.SINGLE=1]="SINGLE",m[m.MULTIPLE=2]="MULTIPLE",m}(L||(e.EngagementCollectionSource=L={})),k=function(m){return m.BEFORE="before",m.AFTER="after",m.INSIDE_FIRST="insideFirst",m.INSIDE_LAST="insideLast",m}(k||(e.EngagementPlacementPosition=k={})),G=function(m){return m.SHOPIFY_CHECKOUT="shopify_checkout",m.THIRD_PARTY_CHECKOUT="third_party_checkout",m.CART_PAGE="cart_page",m.CART_DRAWER="cart_drawer",m}(G||(e.RedirectBehaviour=G={})),le=function(m){return m.ONCE_IN_SESSION="ONCE_IN_SESSION",m.ACROSS_SESSIONS="ACROSS_SESSIONS",m}(le||(e.FrequencyType=le={})),Ae=function(m){return m.DAYS="DAYS",m.HOURS="HOURS",m.MINUTES="MINUTES",m.SECONDS="SECONDS",m}(Ae||(e.FrequencyGapUnit=Ae={})),B=function(m){return m[m.NONE=0]="NONE",m[m.REJECT_POPUP=1]="REJECT_POPUP",m[m.ACCEPT_POPUP=2]="ACCEPT_POPUP",m[m.GO_TO_URL=4]="GO_TO_URL",m[m.SHARE=5]="SHARE",m[m.KEY_VALUE=100]="KEY_VALUE",m[m.GO_TO_PRODUCT=101]="GO_TO_PRODUCT",m[m.ADD_TO_CART=102]="ADD_TO_CART",m[m.COPY_COUPON_CODE=103]="COPY_COUPON_CODE",m[m.GO_TO_COLLECTION=104]="GO_TO_COLLECTION",m[m.OPEN_CART=105]="OPEN_CART",m[m.SUBMIT_FORM=106]="SUBMIT_FORM",m[m.INITIATE_CHECKOUT=107]="INITIATE_CHECKOUT",m[m.ADD_BUNDLE=108]="ADD_BUNDLE",m[m.UPGRADE_TO_SUBSCRIPTION=109]="UPGRADE_TO_SUBSCRIPTION",m}(B||(e.ClickActionType=B={})),Q=function(m){return m.POPUP="POPUP",m.PAGE_EMBED="PAGE_EMBED",m.CART_EMBED="CART_EMBED",m.ANNOUNCEMENT_BAR="ANNOUNCEMENT_BAR",m}(Q||(e.OnsiteDeliveryType=Q={})),Y=function(m){return m.PRODUCT_PROMOTION="PRODUCT_PROMOTION",m.BUNDLE_AND_UPSELL="BUNDLE_AND_UPSELL",m.CART_RECOVERY="CART_RECOVERY",m.ANNOUNCEMENT="ANNOUNCEMENT",m.LEAD_GENERATION="LEAD_GENERATION",m.DATA_COLLECTION="DATA_COLLECTION",m.SALE_PROMOTION="SALE_PROMOTION",m.SUBSCRIPTION_UPSELL="SUBSCRIPTION_UPSELL",m.SHOPPABLE_VIDEO="SHOPPABLE_VIDEO",m.BYOB="BYOB",m.PROGRESS_BAR="PROGRESS_BAR",m.BUY_NOW="BUY_NOW",m.STICKY_ATC="STICKY_ATC",m.EXPERIMENT="EXPERIMENT",m}(Y||(e.EngagementObjective=Y={})),J=function(m){return m.COOEE="COOEE",m.KLAVIYO="KLAVIYO",m}(J||(e.EngagementContentSource=J={})),de=function(m){return m.ICONS="ICONS",m.TILES="TILES",m}(de||(e.ProgressBarLayout=de={})),ke=function(m){return m.FREE_SHIPPING="FREE_SHIPPING",m.DISCOUNT="DISCOUNT",m.FREE_AUTO_GIFT="FREE_AUTO_GIFT",m.FREE_GIFT_SELECT="FREE_GIFT_SELECT",m}(ke||(e.MilestoneRewardType=ke={}))}),es=sr(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={}))}),Pc=sr(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ArrayUtils=void 0;var t=class Uh{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--,Uh.swap(n,i,s)}}};e.ArrayUtils=t}),rl=sr((e,t)=>{"use strict";(function(r,n){"use strict";var i="1.0.40",s="",o="?",c="function",u="undefined",d="object",g="string",h="major",v="model",E="name",y="type",_="vendor",x="version",P="architecture",M="console",L="mobile",k="tablet",G="smarttv",le="wearable",Ae="embedded",B=500,Q="Amazon",Y="Apple",J="ASUS",de="BlackBerry",ke="Browser",m="Chrome",lt="Edge",Ve="Firefox",ye="Google",gt="Huawei",se="LG",ie="Microsoft",ze="Motorola",Jt="Opera",or="Samsung",vt="Sharp",Br="Sony",Gn="Xiaomi",rn="Zebra",ri="Facebook",qi="Chromium OS",Wn="Mac OS",$n=" Browser",yt=function(q,ae){var Z={};for(var Te in q)ae[Te]&&ae[Te].length%2===0?Z[Te]=ae[Te].concat(q[Te]):Z[Te]=q[Te];return Z},kr=function(q){for(var ae={},Z=0;Z<q.length;Z++)ae[q[Z].toUpperCase()]=q[Z];return ae},Ki=function(q,ae){return typeof q===g?a(ae).indexOf(a(q))!==-1:!1},a=function(q){return q.toLowerCase()},l=function(q){return typeof q===g?q.replace(/[^\d\.]/g,s).split(".")[0]:n},p=function(q,ae){if(typeof q===g)return q=q.replace(/^\s\s*/,s),typeof ae===u?q:q.substring(0,B)},T=function(q,ae){for(var Z=0,Te,Rt,xt,Ie,ne,Ut;Z<ae.length&&!ne;){var Xi=ae[Z],ls=ae[Z+1];for(Te=Rt=0;Te<Xi.length&&!ne&&Xi[Te];)if(ne=Xi[Te++].exec(q),ne)for(xt=0;xt<ls.length;xt++)Ut=ne[++Rt],Ie=ls[xt],typeof Ie===d&&Ie.length>0?Ie.length===2?typeof Ie[1]==c?this[Ie[0]]=Ie[1].call(this,Ut):this[Ie[0]]=Ie[1]:Ie.length===3?typeof Ie[1]===c&&!(Ie[1].exec&&Ie[1].test)?this[Ie[0]]=Ut?Ie[1].call(this,Ut,Ie[2]):n:this[Ie[0]]=Ut?Ut.replace(Ie[1],Ie[2]):n:Ie.length===4&&(this[Ie[0]]=Ut?Ie[3].call(this,Ut.replace(Ie[1],Ie[2])):n):this[Ie]=Ut||n;Z+=2}},A=function(q,ae){for(var Z in ae)if(typeof ae[Z]===d&&ae[Z].length>0){for(var Te=0;Te<ae[Z].length;Te++)if(Ki(ae[Z][Te],q))return Z===o?n:Z}else if(Ki(ae[Z],q))return Z===o?n:Z;return ae.hasOwnProperty("*")?ae["*"]:q},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","?":"/"},W={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"},be={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[x,[E,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[x,[E,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[E,x],[/opios[\/ ]+([\w\.]+)/i],[x,[E,Jt+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[x,[E,Jt+" GX"]],[/\bopr\/([\w\.]+)/i],[x,[E,Jt]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[x,[E,"Baidu"]],[/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],[x,[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,x],[/quark(?:pc)?\/([-\w\.]+)/i],[x,[E,"Quark"]],[/\bddg\/([\w\.]+)/i],[x,[E,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[x,[E,"UC"+ke]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[x,[E,"WeChat"]],[/konqueror\/([\w\.]+)/i],[x,[E,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[x,[E,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[x,[E,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[x,[E,"Smart Lenovo "+ke]],[/(avast|avg)\/([\w\.]+)/i],[[E,/(.+)/,"$1 Secure "+ke],x],[/\bfocus\/([\w\.]+)/i],[x,[E,Ve+" Focus"]],[/\bopt\/([\w\.]+)/i],[x,[E,Jt+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[x,[E,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[x,[E,"Dolphin"]],[/coast\/([\w\.]+)/i],[x,[E,Jt+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[x,[E,"MIUI"+$n]],[/fxios\/([\w\.-]+)/i],[x,[E,Ve]],[/\bqihoobrowser\/?([\w\.]*)/i],[x,[E,"360"]],[/\b(qq)\/([\w\.]+)/i],[[E,/(.+)/,"$1Browser"],x],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[E,/(.+)/,"$1"+$n],x],[/samsungbrowser\/([\w\.]+)/i],[x,[E,or+" Internet"]],[/metasr[\/ ]?([\d\.]+)/i],[x,[E,"Sogou Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[E,"Sogou Mobile"],x],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i],[E,x],[/(lbbrowser|rekonq)/i,/\[(linkedin)app\]/i],[E],[/ome\/([\w\.]+) \w* ?(iron) saf/i,/ome\/([\w\.]+).+qihu (360)[es]e/i],[x,E],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[E,ri],x],[/(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,x],[/\bgsa\/([\w\.]+) .*safari\//i],[x,[E,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[x,[E,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[x,[E,m+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[E,m+" WebView"],x],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[x,[E,"Android "+ke]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[E,x],[/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],[x,[E,"Mobile Safari"]],[/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],[x,E],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[E,[x,A,U]],[/(webkit|khtml)\/([\w\.]+)/i],[E,x],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[E,"Netscape"],x],[/(wolvic|librewolf)\/([\w\.]+)/i],[E,x],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[x,[E,Ve+" 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,[x,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[E,[x,/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],[v,[_,or],[y,k]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr])[-\w]+)/i,/sec-(sgh\w+)/i],[v,[_,or],[y,L]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[v,[_,Y],[y,L]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[v,[_,Y],[y,k]],[/(macintosh);/i],[v,[_,Y]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[v,[_,vt],[y,L]],[/(?:honor)([-\w ]+)[;\)]/i],[v,[_,"Honor"],[y,L]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[v,[_,gt],[y,k]],[/(?:huawei)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[v,[_,gt],[y,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],[[v,/_/g," "],[_,Gn],[y,L]],[/oid[^\)]+; (2\d{4}(283|rpbf)[cgl])( bui|\))/i,/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[v,/_/g," "],[_,Gn],[y,k]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[v,[_,"OPPO"],[y,L]],[/\b(opd2\d{3}a?) bui/i],[v,[_,"OPPO"],[y,k]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[v,[_,"Vivo"],[y,L]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[v,[_,"Realme"],[y,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],[v,[_,ze],[y,L]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[v,[_,ze],[y,k]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[v,[_,se],[y,k]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[v,[_,se],[y,L]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[v,[_,"Lenovo"],[y,k]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[v,/_/g," "],[_,"Nokia"],[y,L]],[/(pixel c)\b/i],[v,[_,ye],[y,k]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[v,[_,ye],[y,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],[v,[_,Br],[y,L]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[v,"Xperia Tablet"],[_,Br],[y,k]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[v,[_,"OnePlus"],[y,L]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[v,[_,Q],[y,k]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[v,/(.+)/g,"Fire Phone $1"],[_,Q],[y,L]],[/(playbook);[-\w\),; ]+(rim)/i],[v,_,[y,k]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[v,[_,de],[y,L]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[v,[_,J],[y,k]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[v,[_,J],[y,L]],[/(nexus 9)/i],[v,[_,"HTC"],[y,k]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[_,[v,/_/g," "],[y,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],[v,[_,"TCL"],[y,k]],[/(itel) ((\w+))/i],[[_,a],v,[y,A,{tablet:["p10001l","w7001"],"*":"mobile"}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[v,[_,"Acer"],[y,k]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[v,[_,"Meizu"],[y,L]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[v,[_,"Ulefone"],[y,L]],[/; (energy ?\w+)(?: bui|\))/i,/; energizer ([\w ]+)(?: bui|\))/i],[v,[_,"Energizer"],[y,L]],[/; cat (b35);/i,/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],[v,[_,"Cat"],[y,L]],[/((?:new )?andromax[\w- ]+)(?: bui|\))/i],[v,[_,"Smartfren"],[y,L]],[/droid.+; (a(?:015|06[35]|142p?))/i],[v,[_,"Nothing"],[y,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],[_,v,[y,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],[_,v,[y,k]],[/(surface duo)/i],[v,[_,ie],[y,k]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[v,[_,"Fairphone"],[y,L]],[/(u304aa)/i],[v,[_,"AT&T"],[y,L]],[/\bsie-(\w*)/i],[v,[_,"Siemens"],[y,L]],[/\b(rct\w+) b/i],[v,[_,"RCA"],[y,k]],[/\b(venue[\d ]{2,7}) b/i],[v,[_,"Dell"],[y,k]],[/\b(q(?:mv|ta)\w+) b/i],[v,[_,"Verizon"],[y,k]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[v,[_,"Barnes & Noble"],[y,k]],[/\b(tm\d{3}\w+) b/i],[v,[_,"NuVision"],[y,k]],[/\b(k88) b/i],[v,[_,"ZTE"],[y,k]],[/\b(nx\d{3}j) b/i],[v,[_,"ZTE"],[y,L]],[/\b(gen\d{3}) b.+49h/i],[v,[_,"Swiss"],[y,L]],[/\b(zur\d{3}) b/i],[v,[_,"Swiss"],[y,k]],[/\b((zeki)?tb.*\b) b/i],[v,[_,"Zeki"],[y,k]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[_,"Dragon Touch"],v,[y,k]],[/\b(ns-?\w{0,9}) b/i],[v,[_,"Insignia"],[y,k]],[/\b((nxa|next)-?\w{0,9}) b/i],[v,[_,"NextBook"],[y,k]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[_,"Voice"],v,[y,L]],[/\b(lvtel\-)?(v1[12]) b/i],[[_,"LvTel"],v,[y,L]],[/\b(ph-1) /i],[v,[_,"Essential"],[y,L]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[v,[_,"Envizen"],[y,k]],[/\b(trio[-\w\. ]+) b/i],[v,[_,"MachSpeed"],[y,k]],[/\btu_(1491) b/i],[v,[_,"Rotor"],[y,k]],[/(shield[\w ]+) b/i],[v,[_,"Nvidia"],[y,k]],[/(sprint) (\w+)/i],[_,v,[y,L]],[/(kin\.[onetw]{3})/i],[[v,/\./g," "],[_,ie],[y,L]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[v,[_,rn],[y,k]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[v,[_,rn],[y,L]],[/smart-tv.+(samsung)/i],[_,[y,G]],[/hbbtv.+maple;(\d+)/i],[[v,/^/,"SmartTV"],[_,or],[y,G]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[_,se],[y,G]],[/(apple) ?tv/i],[_,[v,Y+" TV"],[y,G]],[/crkey/i],[[v,m+"cast"],[_,ye],[y,G]],[/droid.+aft(\w+)( bui|\))/i],[v,[_,Q],[y,G]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[v,[_,vt],[y,G]],[/(bravia[\w ]+)( bui|\))/i],[v,[_,Br],[y,G]],[/(mitv-\w{5}) bui/i],[v,[_,Gn],[y,G]],[/Hbbtv.*(technisat) (.*);/i],[_,v,[y,G]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[_,p],[v,p],[y,G]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[y,G]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[_,v,[y,M]],[/droid.+; (shield) bui/i],[v,[_,"Nvidia"],[y,M]],[/(playstation [345portablevi]+)/i],[v,[_,Br],[y,M]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[v,[_,ie],[y,M]],[/\b(sm-[lr]\d\d[05][fnuw]?s?)\b/i],[v,[_,or],[y,le]],[/((pebble))app/i],[_,v,[y,le]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[v,[_,Y],[y,le]],[/droid.+; (glass) \d/i],[v,[_,ye],[y,le]],[/droid.+; (wt63?0{2,3})\)/i],[v,[_,rn],[y,le]],[/droid.+; (glass) \d/i],[v,[_,ye],[y,le]],[/(pico) (4|neo3(?: link|pro)?)/i],[_,v,[y,le]],[/; (quest( \d| pro)?)/i],[v,[_,ri],[y,le]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[_,[y,Ae]],[/(aeobc)\b/i],[v,[_,Q],[y,Ae]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i],[v,[y,L]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[v,[y,k]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[y,k]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[y,L]],[/(android[-\w\. ]{0,9});.+buil/i],[v,[_,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[x,[E,lt+"HTML"]],[/(arkweb)\/([\w\.]+)/i],[E,x],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[x,[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,x],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[x,E]],os:[[/microsoft (windows) (vista|xp)/i],[E,x],[/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i],[E,[x,A,W]],[/windows nt 6\.2; (arm)/i,/windows[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i,/(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[x,A,W],[E,"Windows"]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[x,/_/g,"."],[E,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[E,Wn],[x,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[x,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,x],[/\(bb(10);/i],[x,[E,de]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[x,[E,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[x,[E,Ve+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[x,[E,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[x,[E,"watchOS"]],[/crkey\/([\d\.]+)/i],[x,[E,m+"cast"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[E,qi],x],[/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,x],[/(sunos) ?([\w\.\d]*)/i],[[E,"Solaris"],x],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[E,x]]},pe=function(q,ae){if(typeof q===d&&(ae=q,q=n),!(this instanceof pe))return new pe(q,ae).getResult();var Z=typeof r!==u&&r.navigator?r.navigator:n,Te=q||(Z&&Z.userAgent?Z.userAgent:s),Rt=Z&&Z.userAgentData?Z.userAgentData:n,xt=ae?yt(be,ae):be,Ie=Z&&Z.userAgent==Te;return this.getBrowser=function(){var ne={};return ne[E]=n,ne[x]=n,T.call(ne,Te,xt.browser),ne[h]=l(ne[x]),Ie&&Z&&Z.brave&&typeof Z.brave.isBrave==c&&(ne[E]="Brave"),ne},this.getCPU=function(){var ne={};return ne[P]=n,T.call(ne,Te,xt.cpu),ne},this.getDevice=function(){var ne={};return ne[_]=n,ne[v]=n,ne[y]=n,T.call(ne,Te,xt.device),Ie&&!ne[y]&&Rt&&Rt.mobile&&(ne[y]=L),Ie&&ne[v]=="Macintosh"&&Z&&typeof Z.standalone!==u&&Z.maxTouchPoints&&Z.maxTouchPoints>2&&(ne[v]="iPad",ne[y]=k),ne},this.getEngine=function(){var ne={};return ne[E]=n,ne[x]=n,T.call(ne,Te,xt.engine),ne},this.getOS=function(){var ne={};return ne[E]=n,ne[x]=n,T.call(ne,Te,xt.os),Ie&&!ne[E]&&Rt&&Rt.platform&&Rt.platform!="Unknown"&&(ne[E]=Rt.platform.replace(/chrome os/i,qi).replace(/macos/i,Wn)),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 Te},this.setUA=function(ne){return Te=typeof ne===g&&ne.length>B?p(ne,B):ne,this},this.setUA(Te),this};pe.VERSION=i,pe.BROWSER=kr([E,x,h]),pe.CPU=kr([P]),pe.DEVICE=kr([v,_,y,M,L,G,k,le,Ae]),pe.ENGINE=pe.OS=kr([E,x]),typeof e!==u?(typeof t!==u&&t.exports&&(e=t.exports=pe),e.UAParser=pe):typeof define===c&&define.amd?define(function(){return pe}):typeof r!==u&&(r.UAParser=pe);var ge=typeof r!==u&&(r.jQuery||r.Zepto);if(ge&&!ge.ua){var je=new pe;ge.ua=je.getResult(),ge.ua.get=function(){return je.getUA()},ge.ua.set=function(q){je.setUA(q);var ae=je.getResult();for(var Z in ae)ge.ua[Z]=ae[Z]}}})(typeof window=="object"?window:e)}),Df=sr((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(v,E){if(!c[v]){if(!o[v]){var y=typeof Qi=="function"&&Qi;if(!E&&y)return y(v,!0);if(g)return g(v,!0);var _=new Error("Cannot find module '"+v+"'");throw _.code="MODULE_NOT_FOUND",_}var x=c[v]={exports:{}};o[v][0].call(x.exports,function(P){var M=o[v][1][P];return d(M||P)},x,x.exports,s,o,c,u)}return c[v].exports}for(var g=typeof Qi=="function"&&Qi,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,g;if(d){var h=0,v=new d(P),E=u.document.createTextNode("");v.observe(E,{characterData:!0}),g=function(){E.data=h=++h%2}}else if(!u.setImmediate&&typeof u.MessageChannel<"u"){var y=new u.MessageChannel;y.port1.onmessage=P,g=function(){y.port2.postMessage(0)}}else"document"in u&&"onreadystatechange"in u.document.createElement("script")?g=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)}:g=function(){setTimeout(P,0)};var _,x=[];function P(){_=!0;for(var L,k,G=x.length;G;){for(k=x,x=[],L=-1;++L<G;)k[L]();G=x.length}_=!1}o.exports=M;function M(L){x.push(L)===1&&!_&&g()}}).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 g={},h=["REJECTED"],v=["FULFILLED"],E=["PENDING"];o.exports=y;function y(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)}y.prototype.catch=function(B){return this.then(null,B)},y.prototype.then=function(B,Q){if(typeof B!="function"&&this.state===v||typeof Q!="function"&&this.state===h)return this;var Y=new this.constructor(d);if(this.state!==E){var J=this.state===v?B:Q;x(Y,J,this.outcome)}else this.queue.push(new _(Y,B,Q));return Y};function _(B,Q,Y){this.promise=B,typeof Q=="function"&&(this.onFulfilled=Q,this.callFulfilled=this.otherCallFulfilled),typeof Y=="function"&&(this.onRejected=Y,this.callRejected=this.otherCallRejected)}_.prototype.callFulfilled=function(B){g.resolve(this.promise,B)},_.prototype.otherCallFulfilled=function(B){x(this.promise,this.onFulfilled,B)},_.prototype.callRejected=function(B){g.reject(this.promise,B)},_.prototype.otherCallRejected=function(B){x(this.promise,this.onRejected,B)};function x(B,Q,Y){u(function(){var J;try{J=Q(Y)}catch(de){return g.reject(B,de)}J===B?g.reject(B,new TypeError("Cannot resolve promise with itself")):g.resolve(B,J)})}g.resolve=function(B,Q){var Y=L(P,Q);if(Y.status==="error")return g.reject(B,Y.value);var J=Y.value;if(J)M(B,J);else{B.state=v,B.outcome=Q;for(var de=-1,ke=B.queue.length;++de<ke;)B.queue[de].callFulfilled(Q)}return B},g.reject=function(B,Q){B.state=h,B.outcome=Q;for(var Y=-1,J=B.queue.length;++Y<J;)B.queue[Y].callRejected(Q);return B};function P(B){var Q=B&&B.then;if(B&&(typeof B=="object"||typeof B=="function")&&typeof Q=="function")return function(){Q.apply(B,arguments)}}function M(B,Q){var Y=!1;function J(lt){Y||(Y=!0,g.reject(B,lt))}function de(lt){Y||(Y=!0,g.resolve(B,lt))}function ke(){Q(de,J)}var m=L(ke);m.status==="error"&&J(m.value)}function L(B,Q){var Y={};try{Y.value=B(Q),Y.status="success"}catch(J){Y.status="error",Y.value=J}return Y}y.resolve=k;function k(B){return B instanceof this?B:g.resolve(new this(d),B)}y.reject=G;function G(B){var Q=new this(d);return g.reject(Q,B)}y.all=le;function le(B){var Q=this;if(Object.prototype.toString.call(B)!=="[object Array]")return this.reject(new TypeError("must be an array"));var Y=B.length,J=!1;if(!Y)return this.resolve([]);for(var de=new Array(Y),ke=0,m=-1,lt=new this(d);++m<Y;)Ve(B[m],m);return lt;function Ve(ye,gt){Q.resolve(ye).then(se,function(ie){J||(J=!0,g.reject(lt,ie))});function se(ie){de[gt]=ie,++ke===Y&&!J&&(J=!0,g.resolve(lt,de))}}}y.race=Ae;function Ae(B){var Q=this;if(Object.prototype.toString.call(B)!=="[object Array]")return this.reject(new TypeError("must be an array"));var Y=B.length,J=!1;if(!Y)return this.resolve([]);for(var de=-1,ke=new this(d);++de<Y;)m(B[de]);return ke;function m(lt){Q.resolve(lt).then(function(Ve){J||(J=!0,g.resolve(ke,Ve))},function(Ve){J||(J=!0,g.reject(ke,Ve))})}}},{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 g(){try{if(typeof indexedDB<"u")return indexedDB;if(typeof webkitIndexedDB<"u")return webkitIndexedDB;if(typeof mozIndexedDB<"u")return mozIndexedDB;if(typeof OIndexedDB<"u")return OIndexedDB;if(typeof msIndexedDB<"u")return msIndexedDB}catch{return}}var h=g();function v(){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,D=new I,C=0;C<f.length;C+=1)D.append(f[C]);return D.getBlob(S.type)}}typeof Promise>"u"&&s(3);var y=Promise;function _(f,S){S&&f.then(function(I){S(null,I)},function(I){S(I)})}function x(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",k=void 0,G={},le=Object.prototype.toString,Ae="readonly",B="readwrite";function Q(f){for(var S=f.length,I=new ArrayBuffer(S),D=new Uint8Array(I),C=0;C<S;C++)D[C]=f.charCodeAt(C);return I}function Y(f){return new y(function(S){var I=f.transaction(L,B),D=E([""]);I.objectStore(L).put(D,"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 k=="boolean"?y.resolve(k):Y(f).then(function(S){return k=S,k})}function de(f){var S=G[f.name],I={};I.promise=new y(function(D,C){I.resolve=D,I.reject=C}),S.deferredOperations.push(I),S.dbReady?S.dbReady=S.dbReady.then(function(){return I.promise}):S.dbReady=I.promise}function ke(f){var S=G[f.name],I=S.deferredOperations.pop();if(I)return I.resolve(),I.promise}function m(f,S){var I=G[f.name],D=I.deferredOperations.pop();if(D)return D.reject(S),D.promise}function lt(f,S){return new y(function(I,D){if(G[f.name]=G[f.name]||Br(),f.db)if(S)de(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(R){var j=O.result;try{j.createObjectStore(f.storeName),R.oldVersion<=1&&j.createObjectStore(L)}catch(V){if(V.name==="ConstraintError")console.warn('The database "'+f.name+'" has been upgraded from version '+R.oldVersion+" to version "+R.newVersion+', but the storage "'+f.storeName+'" already exists.');else throw V}}),O.onerror=function(R){R.preventDefault(),D(O.error)},O.onsuccess=function(){var R=O.result;R.onversionchange=function(j){j.target.close()},I(R),ke(f)}})}function Ve(f){return lt(f,!1)}function ye(f){return lt(f,!0)}function gt(f,S){if(!f.db)return!0;var I=!f.db.objectStoreNames.contains(f.storeName),D=f.version<f.db.version,C=f.version>f.db.version;if(D&&(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 se(f){return new y(function(S,I){var D=new FileReader;D.onerror=I,D.onloadend=function(C){var O=btoa(C.target.result||"");S({__local_forage_encoded_blob:!0,data:O,type:f.type})},D.readAsBinaryString(f)})}function ie(f){var S=Q(atob(f.data));return E([S],{type:f.type})}function ze(f){return f&&f.__local_forage_encoded_blob}function Jt(f){var S=this,I=S._initReady().then(function(){var D=G[S._dbInfo.name];if(D&&D.dbReady)return D.dbReady});return x(I,f,f),I}function or(f){de(f);for(var S=G[f.name],I=S.forages,D=0;D<I.length;D++){var C=I[D];C._dbInfo.db&&(C._dbInfo.db.close(),C._dbInfo.db=null)}return f.db=null,Ve(f).then(function(O){return f.db=O,gt(f)?ye(f):O}).then(function(O){f.db=S.db=O;for(var R=0;R<I.length;R++)I[R]._dbInfo.db=O}).catch(function(O){throw m(f,O),O})}function vt(f,S,I,D){D===void 0&&(D=1);try{var C=f.db.transaction(f.storeName,S);I(null,C)}catch(O){if(D>0&&(!f.db||O.name==="InvalidStateError"||O.name==="NotFoundError"))return y.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),ye(f)}).then(function(){return or(f).then(function(){vt(f,S,I,D-1)})}).catch(I);I(O)}}function Br(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function Gn(f){var S=this,I={db:null};if(f)for(var D in f)I[D]=f[D];var C=G[I.name];C||(C=Br(),G[I.name]=C),C.forages.push(S),S._initReady||(S._initReady=S.ready,S.ready=Jt);var O=[];function R(){return y.resolve()}for(var j=0;j<C.forages.length;j++){var V=C.forages[j];V!==S&&O.push(V._initReady().catch(R))}var H=C.forages.slice(0);return y.all(O).then(function(){return I.db=C.db,Ve(I)}).then(function(F){return I.db=F,gt(I,S._defaultConfig.version)?ye(I):F}).then(function(F){I.db=C.db=F,S._dbInfo=I;for(var z=0;z<H.length;z++){var he=H[z];he!==S&&(he._dbInfo.db=I.db,he._dbInfo.version=I.version)}})}function rn(f,S){var I=this;f=P(f);var D=new y(function(C,O){I.ready().then(function(){vt(I._dbInfo,Ae,function(R,j){if(R)return O(R);try{var V=j.objectStore(I._dbInfo.storeName),H=V.get(f);H.onsuccess=function(){var F=H.result;F===void 0&&(F=null),ze(F)&&(F=ie(F)),C(F)},H.onerror=function(){O(H.error)}}catch(F){O(F)}})}).catch(O)});return _(D,S),D}function ri(f,S){var I=this,D=new y(function(C,O){I.ready().then(function(){vt(I._dbInfo,Ae,function(R,j){if(R)return O(R);try{var V=j.objectStore(I._dbInfo.storeName),H=V.openCursor(),F=1;H.onsuccess=function(){var z=H.result;if(z){var he=z.value;ze(he)&&(he=ie(he));var Fe=f(he,z.key,F++);Fe!==void 0?C(Fe):z.continue()}else C()},H.onerror=function(){O(H.error)}}catch(z){O(z)}})}).catch(O)});return _(D,S),D}function qi(f,S,I){var D=this;f=P(f);var C=new y(function(O,R){var j;D.ready().then(function(){return j=D._dbInfo,le.call(S)==="[object Blob]"?J(j.db).then(function(V){return V?S:se(S)}):S}).then(function(V){vt(D._dbInfo,B,function(H,F){if(H)return R(H);try{var z=F.objectStore(D._dbInfo.storeName);V===null&&(V=void 0);var he=z.put(V,f);F.oncomplete=function(){V===void 0&&(V=null),O(V)},F.onabort=F.onerror=function(){var Fe=he.error?he.error:he.transaction.error;R(Fe)}}catch(Fe){R(Fe)}})}).catch(R)});return _(C,I),C}function Wn(f,S){var I=this;f=P(f);var D=new y(function(C,O){I.ready().then(function(){vt(I._dbInfo,B,function(R,j){if(R)return O(R);try{var V=j.objectStore(I._dbInfo.storeName),H=V.delete(f);j.oncomplete=function(){C()},j.onerror=function(){O(H.error)},j.onabort=function(){var F=H.error?H.error:H.transaction.error;O(F)}}catch(F){O(F)}})}).catch(O)});return _(D,S),D}function $n(f){var S=this,I=new y(function(D,C){S.ready().then(function(){vt(S._dbInfo,B,function(O,R){if(O)return C(O);try{var j=R.objectStore(S._dbInfo.storeName),V=j.clear();R.oncomplete=function(){D()},R.onabort=R.onerror=function(){var H=V.error?V.error:V.transaction.error;C(H)}}catch(H){C(H)}})}).catch(C)});return _(I,f),I}function yt(f){var S=this,I=new y(function(D,C){S.ready().then(function(){vt(S._dbInfo,Ae,function(O,R){if(O)return C(O);try{var j=R.objectStore(S._dbInfo.storeName),V=j.count();V.onsuccess=function(){D(V.result)},V.onerror=function(){C(V.error)}}catch(H){C(H)}})}).catch(C)});return _(I,f),I}function kr(f,S){var I=this,D=new y(function(C,O){if(f<0){C(null);return}I.ready().then(function(){vt(I._dbInfo,Ae,function(R,j){if(R)return O(R);try{var V=j.objectStore(I._dbInfo.storeName),H=!1,F=V.openKeyCursor();F.onsuccess=function(){var z=F.result;if(!z){C(null);return}f===0||H?C(z.key):(H=!0,z.advance(f))},F.onerror=function(){O(F.error)}}catch(z){O(z)}})}).catch(O)});return _(D,S),D}function Ki(f){var S=this,I=new y(function(D,C){S.ready().then(function(){vt(S._dbInfo,Ae,function(O,R){if(O)return C(O);try{var j=R.objectStore(S._dbInfo.storeName),V=j.openKeyCursor(),H=[];V.onsuccess=function(){var F=V.result;if(!F){D(H);return}H.push(F.key),F.continue()},V.onerror=function(){C(V.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 D=this,C;if(!f.name)C=y.reject("Invalid arguments");else{var O=f.name===I.name&&D._dbInfo.db,R=O?y.resolve(D._dbInfo.db):Ve(f).then(function(j){var V=G[f.name],H=V.forages;V.db=j;for(var F=0;F<H.length;F++)H[F]._dbInfo.db=j;return j});f.storeName?C=R.then(function(j){if(j.objectStoreNames.contains(f.storeName)){var V=j.version+1;de(f);var H=G[f.name],F=H.forages;j.close();for(var z=0;z<F.length;z++){var he=F[z];he._dbInfo.db=null,he._dbInfo.version=V}var Fe=new y(function(Ce,ct){var He=h.open(f.name,V);He.onerror=function(Ft){var Ic=He.result;Ic.close(),ct(Ft)},He.onupgradeneeded=function(){var Ft=He.result;Ft.deleteObjectStore(f.storeName)},He.onsuccess=function(){var Ft=He.result;Ft.close(),Ce(Ft)}});return Fe.then(function(Ce){H.db=Ce;for(var ct=0;ct<F.length;ct++){var He=F[ct];He._dbInfo.db=Ce,ke(He._dbInfo)}}).catch(function(Ce){throw(m(f,Ce)||y.resolve()).catch(function(){}),Ce})}}):C=R.then(function(j){de(f);var V=G[f.name],H=V.forages;j.close();for(var F=0;F<H.length;F++){var z=H[F];z._dbInfo.db=null}var he=new y(function(Fe,Ce){var ct=h.deleteDatabase(f.name);ct.onerror=function(){var He=ct.result;He&&He.close(),Ce(ct.error)},ct.onblocked=function(){console.warn('dropInstance blocked for database "'+f.name+'" until all open connections are closed')},ct.onsuccess=function(){var He=ct.result;He&&He.close(),Fe(He)}});return he.then(function(Fe){V.db=Fe;for(var Ce=0;Ce<H.length;Ce++){var ct=H[Ce];ke(ct._dbInfo)}}).catch(function(Fe){throw(m(f,Fe)||y.resolve()).catch(function(){}),Fe})})}return _(C,S),C}var l={_driver:"asyncStorage",_initStorage:Gn,_support:v(),iterate:ri,getItem:rn,setItem:qi,removeItem:Wn,clear:$n,length:yt,key:kr,keys:Ki,dropInstance:a};function p(){return typeof openDatabase=="function"}var T="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",A="~~local_forage_type~",U=/^~~local_forage_type~([^~]+)~/,W="__lfsc__:",be=W.length,pe="arbf",ge="blob",je="si08",q="ui08",ae="uic8",Z="si16",Te="si32",Rt="ur16",xt="ui32",Ie="fl32",ne="fl64",Ut=be+pe.length,Xi=Object.prototype.toString;function ls(f){var S=f.length*.75,I=f.length,D,C=0,O,R,j,V;f[f.length-1]==="="&&(S--,f[f.length-2]==="="&&S--);var H=new ArrayBuffer(S),F=new Uint8Array(H);for(D=0;D<I;D+=4)O=T.indexOf(f[D]),R=T.indexOf(f[D+1]),j=T.indexOf(f[D+2]),V=T.indexOf(f[D+3]),F[C++]=O<<2|R>>4,F[C++]=(R&15)<<4|j>>2,F[C++]=(j&3)<<6|V&63;return H}function Zo(f){var S=new Uint8Array(f),I="",D;for(D=0;D<S.length;D+=3)I+=T[S[D]>>2],I+=T[(S[D]&3)<<4|S[D+1]>>4],I+=T[(S[D+1]&15)<<2|S[D+2]>>6],I+=T[S[D+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 op(f,S){var I="";if(f&&(I=Xi.call(f)),f&&(I==="[object ArrayBuffer]"||f.buffer&&Xi.call(f.buffer)==="[object ArrayBuffer]")){var D,C=W;f instanceof ArrayBuffer?(D=f,C+=pe):(D=f.buffer,I==="[object Int8Array]"?C+=je:I==="[object Uint8Array]"?C+=q:I==="[object Uint8ClampedArray]"?C+=ae:I==="[object Int16Array]"?C+=Z:I==="[object Uint16Array]"?C+=Rt:I==="[object Int32Array]"?C+=Te:I==="[object Uint32Array]"?C+=xt:I==="[object Float32Array]"?C+=Ie:I==="[object Float64Array]"?C+=ne:S(new Error("Failed to get type for BinaryArray"))),S(C+Zo(D))}else if(I==="[object Blob]"){var O=new FileReader;O.onload=function(){var R=A+f.type+"~"+Zo(this.result);S(W+ge+R)},O.readAsArrayBuffer(f)}else try{S(JSON.stringify(f))}catch(R){console.error("Couldn't convert value into a JSON string: ",f),S(null,R)}}function ap(f){if(f.substring(0,be)!==W)return JSON.parse(f);var S=f.substring(Ut),I=f.substring(be,Ut),D;if(I===ge&&U.test(S)){var C=S.match(U);D=C[1],S=S.substring(C[0].length)}var O=ls(S);switch(I){case pe:return O;case ge:return E([O],{type:D});case je:return new Int8Array(O);case q:return new Uint8Array(O);case ae:return new Uint8ClampedArray(O);case Z:return new Int16Array(O);case Rt:return new Uint16Array(O);case Te:return new Int32Array(O);case xt:return new Uint32Array(O);case Ie:return new Float32Array(O);case ne:return new Float64Array(O);default:throw new Error("Unkown type: "+I)}}var ja={serialize:op,deserialize:ap,stringToBuffer:ls,bufferToString:Zo};function Nh(f,S,I,D){f.executeSql("CREATE TABLE IF NOT EXISTS "+S.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],I,D)}function cp(f){var S=this,I={db:null};if(f)for(var D in f)I[D]=typeof f[D]!="string"?f[D].toString():f[D];var C=new y(function(O,R){try{I.db=openDatabase(I.name,String(I.version),I.description,I.size)}catch(j){return R(j)}I.db.transaction(function(j){Nh(j,I,function(){S._dbInfo=I,O()},function(V,H){R(H)})},R)});return I.serializer=ja,C}function Vn(f,S,I,D,C,O){f.executeSql(I,D,C,function(R,j){j.code===j.SYNTAX_ERR?R.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[S.storeName],function(V,H){H.rows.length?O(V,j):Nh(V,S,function(){V.executeSql(I,D,C,O)},O)},O):O(R,j)},O)}function gp(f,S){var I=this;f=P(f);var D=new y(function(C,O){I.ready().then(function(){var R=I._dbInfo;R.db.transaction(function(j){Vn(j,R,"SELECT * FROM "+R.storeName+" WHERE key = ? LIMIT 1",[f],function(V,H){var F=H.rows.length?H.rows.item(0).value:null;F&&(F=R.serializer.deserialize(F)),C(F)},function(V,H){O(H)})})}).catch(O)});return _(D,S),D}function mp(f,S){var I=this,D=new y(function(C,O){I.ready().then(function(){var R=I._dbInfo;R.db.transaction(function(j){Vn(j,R,"SELECT * FROM "+R.storeName,[],function(V,H){for(var F=H.rows,z=F.length,he=0;he<z;he++){var Fe=F.item(he),Ce=Fe.value;if(Ce&&(Ce=R.serializer.deserialize(Ce)),Ce=f(Ce,Fe.key,he+1),Ce!==void 0){C(Ce);return}}C()},function(V,H){O(H)})})}).catch(O)});return _(D,S),D}function Oh(f,S,I,D){var C=this;f=P(f);var O=new y(function(R,j){C.ready().then(function(){S===void 0&&(S=null);var V=S,H=C._dbInfo;H.serializer.serialize(S,function(F,z){z?j(z):H.db.transaction(function(he){Vn(he,H,"INSERT OR REPLACE INTO "+H.storeName+" (key, value) VALUES (?, ?)",[f,F],function(){R(V)},function(Fe,Ce){j(Ce)})},function(he){if(he.code===he.QUOTA_ERR){if(D>0){R(Oh.apply(C,[f,V,I,D-1]));return}j(he)}})})}).catch(j)});return _(O,I),O}function vp(f,S,I){return Oh.apply(this,[f,S,I,1])}function yp(f,S){var I=this;f=P(f);var D=new y(function(C,O){I.ready().then(function(){var R=I._dbInfo;R.db.transaction(function(j){Vn(j,R,"DELETE FROM "+R.storeName+" WHERE key = ?",[f],function(){C()},function(V,H){O(H)})})}).catch(O)});return _(D,S),D}function wp(f){var S=this,I=new y(function(D,C){S.ready().then(function(){var O=S._dbInfo;O.db.transaction(function(R){Vn(R,O,"DELETE FROM "+O.storeName,[],function(){D()},function(j,V){C(V)})})}).catch(C)});return _(I,f),I}function bp(f){var S=this,I=new y(function(D,C){S.ready().then(function(){var O=S._dbInfo;O.db.transaction(function(R){Vn(R,O,"SELECT COUNT(key) as c FROM "+O.storeName,[],function(j,V){var H=V.rows.item(0).c;D(H)},function(j,V){C(V)})})}).catch(C)});return _(I,f),I}function _p(f,S){var I=this,D=new y(function(C,O){I.ready().then(function(){var R=I._dbInfo;R.db.transaction(function(j){Vn(j,R,"SELECT key FROM "+R.storeName+" WHERE id = ? LIMIT 1",[f+1],function(V,H){var F=H.rows.length?H.rows.item(0).key:null;C(F)},function(V,H){O(H)})})}).catch(O)});return _(D,S),D}function Ep(f){var S=this,I=new y(function(D,C){S.ready().then(function(){var O=S._dbInfo;O.db.transaction(function(R){Vn(R,O,"SELECT key FROM "+O.storeName,[],function(j,V){for(var H=[],F=0;F<V.rows.length;F++)H.push(V.rows.item(F).key);D(H)},function(j,V){C(V)})})}).catch(C)});return _(I,f),I}function Sp(f){return new y(function(S,I){f.transaction(function(D){D.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(C,O){for(var R=[],j=0;j<O.rows.length;j++)R.push(O.rows.item(j).name);S({db:f,storeNames:R})},function(C,O){I(O)})},function(D){I(D)})})}function Ip(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 D=this,C;return f.name?C=new y(function(O){var R;f.name===I.name?R=D._dbInfo.db:R=openDatabase(f.name,"","",0),f.storeName?O({db:R,storeNames:[f.storeName]}):O(Sp(R))}).then(function(O){return new y(function(R,j){O.db.transaction(function(V){function H(Fe){return new y(function(Ce,ct){V.executeSql("DROP TABLE IF EXISTS "+Fe,[],function(){Ce()},function(He,Ft){ct(Ft)})})}for(var F=[],z=0,he=O.storeNames.length;z<he;z++)F.push(H(O.storeNames[z]));y.all(F).then(function(){R()}).catch(function(Fe){j(Fe)})},function(V){j(V)})})}):C=y.reject("Invalid arguments"),_(C,S),C}var Tp={_driver:"webSQLStorage",_initStorage:cp,_support:p(),iterate:mp,getItem:gp,setItem:vp,removeItem:yp,clear:wp,length:bp,key:_p,keys:Ep,dropInstance:Ip};function Cp(){try{return typeof localStorage<"u"&&"setItem"in localStorage&&!!localStorage.setItem}catch{return!1}}function Ah(f,S){var I=f.name+"/";return f.storeName!==S.storeName&&(I+=f.storeName+"/"),I}function xp(){var f="_localforage_support_test";try{return localStorage.setItem(f,!0),localStorage.removeItem(f),!1}catch{return!0}}function Dp(){return!xp()||localStorage.length>0}function Np(f){var S=this,I={};if(f)for(var D in f)I[D]=f[D];return I.keyPrefix=Ah(f,S._defaultConfig),Dp()?(S._dbInfo=I,I.serializer=ja,y.resolve()):y.reject()}function Op(f){var S=this,I=S.ready().then(function(){for(var D=S._dbInfo.keyPrefix,C=localStorage.length-1;C>=0;C--){var O=localStorage.key(C);O.indexOf(D)===0&&localStorage.removeItem(O)}});return _(I,f),I}function Ap(f,S){var I=this;f=P(f);var D=I.ready().then(function(){var C=I._dbInfo,O=localStorage.getItem(C.keyPrefix+f);return O&&(O=C.serializer.deserialize(O)),O});return _(D,S),D}function Pp(f,S){var I=this,D=I.ready().then(function(){for(var C=I._dbInfo,O=C.keyPrefix,R=O.length,j=localStorage.length,V=1,H=0;H<j;H++){var F=localStorage.key(H);if(F.indexOf(O)===0){var z=localStorage.getItem(F);if(z&&(z=C.serializer.deserialize(z)),z=f(z,F.substring(R),V++),z!==void 0)return z}}});return _(D,S),D}function kp(f,S){var I=this,D=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 _(D,S),D}function Rp(f){var S=this,I=S.ready().then(function(){for(var D=S._dbInfo,C=localStorage.length,O=[],R=0;R<C;R++){var j=localStorage.key(R);j.indexOf(D.keyPrefix)===0&&O.push(j.substring(D.keyPrefix.length))}return O});return _(I,f),I}function Lp(f){var S=this,I=S.keys().then(function(D){return D.length});return _(I,f),I}function Up(f,S){var I=this;f=P(f);var D=I.ready().then(function(){var C=I._dbInfo;localStorage.removeItem(C.keyPrefix+f)});return _(D,S),D}function Mp(f,S,I){var D=this;f=P(f);var C=D.ready().then(function(){S===void 0&&(S=null);var O=S;return new y(function(R,j){var V=D._dbInfo;V.serializer.serialize(S,function(H,F){if(F)j(F);else try{localStorage.setItem(V.keyPrefix+f,H),R(O)}catch(z){(z.name==="QuotaExceededError"||z.name==="NS_ERROR_DOM_QUOTA_REACHED")&&j(z),j(z)}})})});return _(C,I),C}function $p(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 D=this,C;return f.name?C=new y(function(O){f.storeName?O(Ah(f,D._defaultConfig)):O(f.name+"/")}).then(function(O){for(var R=localStorage.length-1;R>=0;R--){var j=localStorage.key(R);j.indexOf(O)===0&&localStorage.removeItem(j)}}):C=y.reject("Invalid arguments"),_(C,S),C}var Bp={_driver:"localStorageWrapper",_initStorage:Np,_support:Cp(),iterate:Pp,getItem:Ap,setItem:Mp,removeItem:Up,clear:Op,length:Lp,key:kp,keys:Rp,dropInstance:$p},jp=function(f,S){return f===S||typeof f=="number"&&typeof S=="number"&&isNaN(f)&&isNaN(S)},Fp=function(f,S){for(var I=f.length,D=0;D<I;){if(jp(f[D],S))return!0;D++}return!1},Ph=Array.isArray||function(f){return Object.prototype.toString.call(f)==="[object Array]"},us={},kh={},Ji={INDEXEDDB:l,WEBSQL:Tp,LOCALSTORAGE:Bp},Hp=[Ji.INDEXEDDB._driver,Ji.WEBSQL._driver,Ji.LOCALSTORAGE._driver],Jo=["dropInstance"],za=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(Jo),Vp={description:"",driver:Hp.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function Gp(f,S){f[S]=function(){var I=arguments;return f.ready().then(function(){return f[S].apply(f,I)})}}function bc(){for(var f=1;f<arguments.length;f++){var S=arguments[f];if(S)for(var I in S)S.hasOwnProperty(I)&&(Ph(S[I])?arguments[0][I]=S[I].slice():arguments[0][I]=S[I])}return arguments[0]}var Wp=function(){function f(S){d(this,f);for(var I in Ji)if(Ji.hasOwnProperty(I)){var D=Ji[I],C=D._driver;this[I]=C,us[C]||this.defineDriver(D)}this._defaultConfig=bc({},Vp),this._config=bc({},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,D){var C=new y(function(O,R){try{var j=S._driver,V=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!S._driver){R(V);return}for(var H=za.concat("_initStorage"),F=0,z=H.length;F<z;F++){var he=H[F],Fe=!Fp(Jo,he);if((Fe||S[he])&&typeof S[he]!="function"){R(V);return}}var Ce=function(){for(var He=function(xf){return function(){var eg=new Error("Method "+xf+" is not implemented by the current driver"),Rh=y.reject(eg);return _(Rh,arguments[arguments.length-1]),Rh}},Ft=0,Ic=Jo.length;Ft<Ic;Ft++){var Tc=Jo[Ft];S[Tc]||(S[Tc]=He(Tc))}};Ce();var ct=function(He){us[j]&&console.info("Redefining LocalForage driver: "+j),us[j]=S,kh[j]=He,O()};"_support"in S?S._support&&typeof S._support=="function"?S._support().then(ct,R):ct(!!S._support):ct(!0)}catch(He){R(He)}});return x(C,I,D),C},f.prototype.driver=function(){return this._driver||null},f.prototype.getDriver=function(S,I,D){var C=us[S]?y.resolve(us[S]):y.reject(new Error("Driver not found."));return x(C,I,D),C},f.prototype.getSerializer=function(S){var I=y.resolve(ja);return x(I,S),I},f.prototype.ready=function(S){var I=this,D=I._driverSet.then(function(){return I._ready===null&&(I._ready=I._initDriver()),I._ready});return x(D,S,S),D},f.prototype.setDriver=function(S,I,D){var C=this;Ph(S)||(S=[S]);var O=this._getSupportedDrivers(S);function R(){C._config.driver=C.driver()}function j(F){return C._extend(F),R(),C._ready=C._initStorage(C._config),C._ready}function V(F){return function(){var z=0;function he(){for(;z<F.length;){var Fe=F[z];return z++,C._dbInfo=null,C._ready=null,C.getDriver(Fe).then(j).catch(he)}R();var Ce=new Error("No available storage method found.");return C._driverSet=y.reject(Ce),C._driverSet}return he()}}var H=this._driverSet!==null?this._driverSet.catch(function(){return y.resolve()}):y.resolve();return this._driverSet=H.then(function(){var F=O[0];return C._dbInfo=null,C._ready=null,C.getDriver(F).then(function(z){C._driver=z._driver,R(),C._wrapLibraryMethodsWithReady(),C._initDriver=V(O)})}).catch(function(){R();var F=new Error("No available storage method found.");return C._driverSet=y.reject(F),C._driverSet}),x(this._driverSet,I,D),this._driverSet},f.prototype.supports=function(S){return!!kh[S]},f.prototype._extend=function(S){bc(this,S)},f.prototype._getSupportedDrivers=function(S){for(var I=[],D=0,C=S.length;D<C;D++){var O=S[D];this.supports(O)&&I.push(O)}return I},f.prototype._wrapLibraryMethodsWithReady=function(){for(var S=0,I=za.length;S<I;S++)Gp(this,za[S])},f.prototype.createInstance=function(S){return new f(S)},f}(),Yp=new Wp;o.exports=Yp},{3:3}]},{},[4])(4)})}),ni=sr(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 g(E){try{v(o.next(E))}catch(y){d(y)}}function h(E){try{v(o.throw(E))}catch(y){d(y)}}function v(E){E.done?u(E.value):c(E.value).then(g,h)}v((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=sr(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}),lh=sr((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 g=o.retries,h=o.retryDelay,v=o.retryOn;if(d&&d.retries!==void 0)if(n(d.retries))g=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")v=d.retryOn;else throw new i("retryOn property expects an array or function");return new Promise(function(E,y){var _=function(P){var M=typeof Request<"u"&&u instanceof Request?u.clone():u;s(M,d).then(function(L){if(Array.isArray(v)&&v.indexOf(L.status)===-1)E(L);else if(typeof v=="function")try{return Promise.resolve(v(P,null,L)).then(function(k){k?x(P,null,L):E(L)}).catch(y)}catch(k){y(k)}else P<g?x(P,null,L):E(L)}).catch(function(L){if(typeof v=="function")try{Promise.resolve(v(P,L,null)).then(function(k){k?x(P,L,null):y(L)}).catch(function(k){y(k)})}catch(k){y(k)}else P<g?x(P,L,null):y(L)})};function x(P,M,L){var k=typeof h=="function"?h(P,M,L):h;setTimeout(function(){_(++P)},k)}_(0)})}};function n(s){return Number.isInteger(s)&&s>=0}function i(s){this.name="ArgumentError",this.message=s}return r})}),fp="9.10.4",N=class Cc{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=Cc.SDK_VERSION.split(".").map(r=>r.padStart(2,"0")).join("");Cc.SDK_VERSION_CODE=parseInt(t,10)}},ut={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`},At=Ee(nn()),b=class{static log(...e){At.default.info(...e)}static debug(...e){At.default.debug(...e)}static error(...e){At.default.error(...e)}static warn(...e){At.default.warn(...e)}static info(...e){At.default.info(...e)}static trace(...e){At.default.trace(...e)}};function dp(e=N.LOG_PREFIX){At.default.useDefaults({formatter:function(r){r.unshift(`${e} (v${N.SDK_VERSION}):`)}});let t=Ac();(t==="1"||t==="on")&&(localStorage.cooeeLogLevel="TRACE"),localStorage.cooeeLogLevel?At.default.setLevel(At.default[localStorage.cooeeLogLevel]):At.default.setLevel(ut.debug?At.default.TRACE:At.default.OFF)}function Ac(){return new URL(location.href).searchParams?.get("cooee-debug")}function hp(){let e=`
|
|
1
|
+
"use strict";(()=>{var mg=Object.create,Rc=Object.defineProperty,dg=Object.defineProperties,hg=Object.getOwnPropertyDescriptor,gg=Object.getOwnPropertyDescriptors,yg=Object.getOwnPropertyNames,lp=Object.getOwnPropertySymbols,vg=Object.getPrototypeOf,pp=Object.prototype.hasOwnProperty,Eg=Object.prototype.propertyIsEnumerable,up=(e,t,r)=>t in e?Rc(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))Eg.call(t,r)&&up(e,r,t[r]);return e},ee=(e,t)=>dg(e,gg(t)),Qi=(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')}),sr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),_g=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of yg(t))!pp.call(e,i)&&i!==r&&Rc(e,i,{get:()=>t[i],enumerable:!(n=hg(t,i))||n.enumerable});return e},Ee=(e,t,r)=>(r=e!=null?mg(vg(e)):{},_g(t||!e||!e.__esModule?Rc(r,"default",{value:e,enumerable:!0}):r,e)),nn=sr((e,t)=>{"use strict";(function(r){"use strict";var n={};n.VERSION="1.6.1";var i,s={},o=function(h,v){return function(){return v.apply(h,arguments)}},c=function(){var h=arguments,v=h[0],E,y;for(y=1;y<h.length;y++)for(E in h[y])!(E in v)&&h[y].hasOwnProperty(E)&&(v[E]=h[y][E]);return v},u=function(h,v){return{value:h,name:v}};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 v=this.context.filterLevel;return h.value>=v.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,v){i&&this.enabledFor(h)&&i(v,c({level:h},this.context))}};var g=new d({filterLevel:n.OFF});(function(){var h=n;h.enabledFor=o(g,g.enabledFor),h.trace=o(g,g.trace),h.debug=o(g,g.debug),h.time=o(g,g.time),h.timeEnd=o(g,g.timeEnd),h.info=o(g,g.info),h.warn=o(g,g.warn),h.error=o(g,g.error),h.log=h.info})(),n.setHandler=function(h){i=h},n.setLevel=function(h){g.setLevel(h);for(var v in s)s.hasOwnProperty(v)&&s[v].setLevel(h)},n.getLevel=function(){return g.getLevel()},n.get=function(h){return s[h]||(s[h]=new d(c({name:h},g.context)))},n.createDefaultHandler=function(h){h=h||{},h.formatter=h.formatter||function(y,_){_.name&&y.unshift("["+_.name+"]")};var v={},E=function(y,_){Function.prototype.apply.call(y,console,_)};return typeof console>"u"?function(){}:function(y,_){y=Array.prototype.slice.call(y);var x=console.log,P;_.level===n.TIME?(P=(_.name?"["+_.name+"] ":"")+y[0],y[1]==="start"?console.time?console.time(P):v[P]=new Date().getTime():console.timeEnd?console.timeEnd(P):E(x,[P+": "+(new Date().getTime()-v[P])+"ms"])):(_.level===n.WARN&&console.warn?x=console.warn:_.level===n.ERROR&&console.error?x=console.error:_.level===n.INFO&&console.info?x=console.info:_.level===n.DEBUG&&console.debug?x=console.debug:_.level===n.TRACE&&console.trace&&(x=console.trace),h.formatter(y,_),E(x,y))}},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)}),Nc=sr(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MustacheUtils=void 0;var t=class Lh{static escapeHtml(n){return String(n).replace(/"/g,i=>Lh.entityMap[i])}};e.MustacheUtils=t,t.entityMap={'"':"""}}),Tr=sr(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.SessionType=e.EngagementContentType=e.TriggerType=e.EngagementType=e.EngagementStatus=e.TimePreference=e.ScheduleFrequency=e.CriteriaFrequency=void 0;var t=function(m){return m[m.ONCE_PER_USER=1]="ONCE_PER_USER",m[m.ONCE_PER_SESSION=2]="ONCE_PER_SESSION",m[m.EVERY_TIME=3]="EVERY_TIME",m}(t||(e.CriteriaFrequency=t={})),r=function(m){return m[m.ONE_TIME=1]="ONE_TIME",m[m.MULTIPLE=2]="MULTIPLE",m[m.RECURRING=3]="RECURRING",m}(r||(e.ScheduleFrequency=r={})),n=function(m){return m[m.NOW=1]="NOW",m[m.LATER=2]="LATER",m[m.NEVER=3]="NEVER",m}(n||(e.TimePreference=n={})),i=function(m){return m[m.PUBLISHED=1]="PUBLISHED",m[m.DRAFT=2]="DRAFT",m[m.PAUSED=3]="PAUSED",m[m.STOPPED=5]="STOPPED",m[m.COMPLETED=6]="COMPLETED",m[m.UNINSTALLED=8]="UNINSTALLED",m}(i||(e.EngagementStatus=i={})),s=function(m){return m.CAMPAIGN="CAMPAIGN",m.NATIVE_AB="NATIVE_AB",m.CRO_COPILOT="CRO_COPILOT",m}(s||(e.EngagementType=s={})),o=function(m){return m[m.NONE=0]="NONE",m[m.RULE_BASED=1]="RULE_BASED",m[m.INTENT_BASED=2]="INTENT_BASED",m}(o||(e.TriggerType=o={})),c=function(m){return m[m.SINGLE=1]="SINGLE",m[m.EXCLUSION=2]="EXCLUSION",m[m.ABTESTING=3]="ABTESTING",m}(c||(e.EngagementContentType=c={})),u=function(m){return m[m.ALL=0]="ALL",m[m.NEW_ONLY=1]="NEW_ONLY",m[m.RETURNING_ONLY=2]="RETURNING_ONLY",m}(u||(e.SessionType=u={})),d=function(m){return m.ALL="ALL",m.LOGGED_IN="LOGGED_IN",m.NON_LOGGED_IN="NON_LOGGED_IN",m}(d||(e.LoggedInVisitor=d={})),g=function(m){return m.ALL="ALL",m.PURCHASED="PURCHASED",m.NON_PURCHASED="NON_PURCHASED",m}(g||(e.PurchasedVisitor=g={})),h=function(m){return m[m.NONE=0]="NONE",m[m.ITEM_RECOMMENDATION=1]="ITEM_RECOMMENDATION",m[m.MULTIPLE_ITEMS=2]="MULTIPLE_ITEMS",m[m.SINGLE_ITEM=3]="SINGLE_ITEM",m[m.TOP_SELLING=4]="TOP_SELLING",m[m.STOCK_CLEARANCE=5]="STOCK_CLEARANCE",m[m.NEW_ARRIVALS=6]="NEW_ARRIVALS",m[m.RECENTLY_VIEWED=7]="RECENTLY_VIEWED",m[m.EVENT_ITEM=8]="EVENT_ITEM",m[m.CART_ITEM=9]="CART_ITEM",m[m.BUNDLE=10]="BUNDLE",m[m.CURRENT_ITEM=11]="CURRENT_ITEM",m[m.PURCHASED_PREVIOUSLY=12]="PURCHASED_PREVIOUSLY",m[m.COLLECTION_ITEMS=13]="COLLECTION_ITEMS",m[m.TRENDING_ITEMS=14]="TRENDING_ITEMS",m}(h||(e.EngagementItemSource=h={})),v=function(m){return m[m.LAST_ADDED=1]="LAST_ADDED",m[m.FIRST_ADDED=2]="FIRST_ADDED",m[m.HIGHEST_PRICE=3]="HIGHEST_PRICE",m[m.LOWEST_PRICE=4]="LOWEST_PRICE",m[m.FIRST_MATCHING_TAG=5]="FIRST_MATCHING_TAG",m[m.ALL=6]="ALL",m}(v||(e.CartItemSource=v={})),E=function(m){return m[m.ALL=0]="ALL",m[m.ONLY_ORGANIC=1]="ONLY_ORGANIC",m[m.ONLY_NON_ORGANIC=2]="ONLY_NON_ORGANIC",m[m.INCLUDES=3]="INCLUDES",m[m.EXCLUDES=4]="EXCLUDES",m}(E||(e.UTMCriteria=E={})),y=function(m){return m[m.NONE=0]="NONE",m[m.LIKE=1]="LIKE",m[m.NOT_LIKE=2]="NOT_LIKE",m[m.EQUALS=3]="EQUALS",m[m.NOT_EQUALS=4]="NOT_EQUALS",m}(y||(e.URLCriteria=y={})),_=function(m){return m[m.NONE=0]="NONE",m[m.LESS_THAN=1]="LESS_THAN",m[m.GREATER_THAN=2]="GREATER_THAN",m[m.BETWEEN=3]="BETWEEN",m[m.EQUALS=4]="EQUALS",m}(_||(e.CartCriteria=_={})),x=function(m){return m[m.ALL=0]="ALL",m[m.INCLUDES=1]="INCLUDES",m[m.EXCLUDES=2]="EXCLUDES",m}(x||(e.CartCurrencyOperator=x={})),P=function(m){return m[m.NONE=0]="NONE",m[m.AMOUNT=1]="AMOUNT",m[m.TOTAL_PRODUCT=2]="TOTAL_PRODUCT",m[m.UNIQUE_PRODUCT=3]="UNIQUE_PRODUCT",m}(P||(e.CartFilterEnum=P={})),M=function(m){return m[m.NONE=0]="NONE",m[m.ITEM=1]="ITEM",m[m.COLLECTION=2]="COLLECTION",m}(M||(e.PromotionType=M={})),L=function(m){return m[m.NONE=0]="NONE",m[m.SINGLE=1]="SINGLE",m[m.MULTIPLE=2]="MULTIPLE",m}(L||(e.EngagementCollectionSource=L={})),k=function(m){return m.BEFORE="before",m.AFTER="after",m.INSIDE_FIRST="insideFirst",m.INSIDE_LAST="insideLast",m}(k||(e.EngagementPlacementPosition=k={})),G=function(m){return m.SHOPIFY_CHECKOUT="shopify_checkout",m.THIRD_PARTY_CHECKOUT="third_party_checkout",m.CART_PAGE="cart_page",m.CART_DRAWER="cart_drawer",m}(G||(e.RedirectBehaviour=G={})),le=function(m){return m.ONCE_IN_SESSION="ONCE_IN_SESSION",m.ACROSS_SESSIONS="ACROSS_SESSIONS",m}(le||(e.FrequencyType=le={})),Ae=function(m){return m.DAYS="DAYS",m.HOURS="HOURS",m.MINUTES="MINUTES",m.SECONDS="SECONDS",m}(Ae||(e.FrequencyGapUnit=Ae={})),B=function(m){return m[m.NONE=0]="NONE",m[m.REJECT_POPUP=1]="REJECT_POPUP",m[m.ACCEPT_POPUP=2]="ACCEPT_POPUP",m[m.GO_TO_URL=4]="GO_TO_URL",m[m.SHARE=5]="SHARE",m[m.KEY_VALUE=100]="KEY_VALUE",m[m.GO_TO_PRODUCT=101]="GO_TO_PRODUCT",m[m.ADD_TO_CART=102]="ADD_TO_CART",m[m.COPY_COUPON_CODE=103]="COPY_COUPON_CODE",m[m.GO_TO_COLLECTION=104]="GO_TO_COLLECTION",m[m.OPEN_CART=105]="OPEN_CART",m[m.SUBMIT_FORM=106]="SUBMIT_FORM",m[m.INITIATE_CHECKOUT=107]="INITIATE_CHECKOUT",m[m.ADD_BUNDLE=108]="ADD_BUNDLE",m[m.UPGRADE_TO_SUBSCRIPTION=109]="UPGRADE_TO_SUBSCRIPTION",m}(B||(e.ClickActionType=B={})),Q=function(m){return m.POPUP="POPUP",m.PAGE_EMBED="PAGE_EMBED",m.CART_EMBED="CART_EMBED",m.ANNOUNCEMENT_BAR="ANNOUNCEMENT_BAR",m}(Q||(e.OnsiteDeliveryType=Q={})),Y=function(m){return m.PRODUCT_PROMOTION="PRODUCT_PROMOTION",m.BUNDLE_AND_UPSELL="BUNDLE_AND_UPSELL",m.CART_RECOVERY="CART_RECOVERY",m.ANNOUNCEMENT="ANNOUNCEMENT",m.LEAD_GENERATION="LEAD_GENERATION",m.DATA_COLLECTION="DATA_COLLECTION",m.SALE_PROMOTION="SALE_PROMOTION",m.SUBSCRIPTION_UPSELL="SUBSCRIPTION_UPSELL",m.SHOPPABLE_VIDEO="SHOPPABLE_VIDEO",m.BYOB="BYOB",m.PROGRESS_BAR="PROGRESS_BAR",m.BUY_NOW="BUY_NOW",m.STICKY_ATC="STICKY_ATC",m.EXPERIMENT="EXPERIMENT",m}(Y||(e.EngagementObjective=Y={})),J=function(m){return m.COOEE="COOEE",m.KLAVIYO="KLAVIYO",m}(J||(e.EngagementContentSource=J={})),de=function(m){return m.ICONS="ICONS",m.TILES="TILES",m}(de||(e.ProgressBarLayout=de={})),ke=function(m){return m.FREE_SHIPPING="FREE_SHIPPING",m.DISCOUNT="DISCOUNT",m.FREE_AUTO_GIFT="FREE_AUTO_GIFT",m.FREE_GIFT_SELECT="FREE_GIFT_SELECT",m}(ke||(e.MilestoneRewardType=ke={}))}),es=sr(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={}))}),Pc=sr(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ArrayUtils=void 0;var t=class Uh{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--,Uh.swap(n,i,s)}}};e.ArrayUtils=t}),rl=sr((e,t)=>{"use strict";(function(r,n){"use strict";var i="1.0.40",s="",o="?",c="function",u="undefined",d="object",g="string",h="major",v="model",E="name",y="type",_="vendor",x="version",P="architecture",M="console",L="mobile",k="tablet",G="smarttv",le="wearable",Ae="embedded",B=500,Q="Amazon",Y="Apple",J="ASUS",de="BlackBerry",ke="Browser",m="Chrome",lt="Edge",He="Firefox",ye="Google",gt="Huawei",se="LG",ie="Microsoft",ze="Motorola",Jt="Opera",or="Samsung",vt="Sharp",Br="Sony",Gn="Xiaomi",rn="Zebra",ri="Facebook",qi="Chromium OS",Wn="Mac OS",$n=" Browser",yt=function(q,ae){var Z={};for(var Te in q)ae[Te]&&ae[Te].length%2===0?Z[Te]=ae[Te].concat(q[Te]):Z[Te]=q[Te];return Z},kr=function(q){for(var ae={},Z=0;Z<q.length;Z++)ae[q[Z].toUpperCase()]=q[Z];return ae},Ki=function(q,ae){return typeof q===g?a(ae).indexOf(a(q))!==-1:!1},a=function(q){return q.toLowerCase()},l=function(q){return typeof q===g?q.replace(/[^\d\.]/g,s).split(".")[0]:n},p=function(q,ae){if(typeof q===g)return q=q.replace(/^\s\s*/,s),typeof ae===u?q:q.substring(0,B)},T=function(q,ae){for(var Z=0,Te,Rt,xt,Ie,ne,Ut;Z<ae.length&&!ne;){var Xi=ae[Z],ls=ae[Z+1];for(Te=Rt=0;Te<Xi.length&&!ne&&Xi[Te];)if(ne=Xi[Te++].exec(q),ne)for(xt=0;xt<ls.length;xt++)Ut=ne[++Rt],Ie=ls[xt],typeof Ie===d&&Ie.length>0?Ie.length===2?typeof Ie[1]==c?this[Ie[0]]=Ie[1].call(this,Ut):this[Ie[0]]=Ie[1]:Ie.length===3?typeof Ie[1]===c&&!(Ie[1].exec&&Ie[1].test)?this[Ie[0]]=Ut?Ie[1].call(this,Ut,Ie[2]):n:this[Ie[0]]=Ut?Ut.replace(Ie[1],Ie[2]):n:Ie.length===4&&(this[Ie[0]]=Ut?Ie[3].call(this,Ut.replace(Ie[1],Ie[2])):n):this[Ie]=Ut||n;Z+=2}},A=function(q,ae){for(var Z in ae)if(typeof ae[Z]===d&&ae[Z].length>0){for(var Te=0;Te<ae[Z].length;Te++)if(Ki(ae[Z][Te],q))return Z===o?n:Z}else if(Ki(ae[Z],q))return Z===o?n:Z;return ae.hasOwnProperty("*")?ae["*"]:q},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","?":"/"},W={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"},be={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[x,[E,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[x,[E,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[E,x],[/opios[\/ ]+([\w\.]+)/i],[x,[E,Jt+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[x,[E,Jt+" GX"]],[/\bopr\/([\w\.]+)/i],[x,[E,Jt]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[x,[E,"Baidu"]],[/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],[x,[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,x],[/quark(?:pc)?\/([-\w\.]+)/i],[x,[E,"Quark"]],[/\bddg\/([\w\.]+)/i],[x,[E,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[x,[E,"UC"+ke]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[x,[E,"WeChat"]],[/konqueror\/([\w\.]+)/i],[x,[E,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[x,[E,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[x,[E,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[x,[E,"Smart Lenovo "+ke]],[/(avast|avg)\/([\w\.]+)/i],[[E,/(.+)/,"$1 Secure "+ke],x],[/\bfocus\/([\w\.]+)/i],[x,[E,He+" Focus"]],[/\bopt\/([\w\.]+)/i],[x,[E,Jt+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[x,[E,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[x,[E,"Dolphin"]],[/coast\/([\w\.]+)/i],[x,[E,Jt+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[x,[E,"MIUI"+$n]],[/fxios\/([\w\.-]+)/i],[x,[E,He]],[/\bqihoobrowser\/?([\w\.]*)/i],[x,[E,"360"]],[/\b(qq)\/([\w\.]+)/i],[[E,/(.+)/,"$1Browser"],x],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[E,/(.+)/,"$1"+$n],x],[/samsungbrowser\/([\w\.]+)/i],[x,[E,or+" Internet"]],[/metasr[\/ ]?([\d\.]+)/i],[x,[E,"Sogou Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[E,"Sogou Mobile"],x],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i],[E,x],[/(lbbrowser|rekonq)/i,/\[(linkedin)app\]/i],[E],[/ome\/([\w\.]+) \w* ?(iron) saf/i,/ome\/([\w\.]+).+qihu (360)[es]e/i],[x,E],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[E,ri],x],[/(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,x],[/\bgsa\/([\w\.]+) .*safari\//i],[x,[E,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[x,[E,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[x,[E,m+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[E,m+" WebView"],x],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[x,[E,"Android "+ke]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[E,x],[/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],[x,[E,"Mobile Safari"]],[/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],[x,E],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[E,[x,A,U]],[/(webkit|khtml)\/([\w\.]+)/i],[E,x],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[E,"Netscape"],x],[/(wolvic|librewolf)\/([\w\.]+)/i],[E,x],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[x,[E,He+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i],[E,[x,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[E,[x,/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],[v,[_,or],[y,k]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr])[-\w]+)/i,/sec-(sgh\w+)/i],[v,[_,or],[y,L]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[v,[_,Y],[y,L]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[v,[_,Y],[y,k]],[/(macintosh);/i],[v,[_,Y]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[v,[_,vt],[y,L]],[/(?:honor)([-\w ]+)[;\)]/i],[v,[_,"Honor"],[y,L]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[v,[_,gt],[y,k]],[/(?:huawei)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[v,[_,gt],[y,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],[[v,/_/g," "],[_,Gn],[y,L]],[/oid[^\)]+; (2\d{4}(283|rpbf)[cgl])( bui|\))/i,/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[v,/_/g," "],[_,Gn],[y,k]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[v,[_,"OPPO"],[y,L]],[/\b(opd2\d{3}a?) bui/i],[v,[_,"OPPO"],[y,k]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[v,[_,"Vivo"],[y,L]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[v,[_,"Realme"],[y,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],[v,[_,ze],[y,L]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[v,[_,ze],[y,k]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[v,[_,se],[y,k]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[v,[_,se],[y,L]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[v,[_,"Lenovo"],[y,k]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[v,/_/g," "],[_,"Nokia"],[y,L]],[/(pixel c)\b/i],[v,[_,ye],[y,k]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[v,[_,ye],[y,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],[v,[_,Br],[y,L]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[v,"Xperia Tablet"],[_,Br],[y,k]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[v,[_,"OnePlus"],[y,L]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[v,[_,Q],[y,k]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[v,/(.+)/g,"Fire Phone $1"],[_,Q],[y,L]],[/(playbook);[-\w\),; ]+(rim)/i],[v,_,[y,k]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[v,[_,de],[y,L]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[v,[_,J],[y,k]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[v,[_,J],[y,L]],[/(nexus 9)/i],[v,[_,"HTC"],[y,k]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[_,[v,/_/g," "],[y,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],[v,[_,"TCL"],[y,k]],[/(itel) ((\w+))/i],[[_,a],v,[y,A,{tablet:["p10001l","w7001"],"*":"mobile"}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[v,[_,"Acer"],[y,k]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[v,[_,"Meizu"],[y,L]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[v,[_,"Ulefone"],[y,L]],[/; (energy ?\w+)(?: bui|\))/i,/; energizer ([\w ]+)(?: bui|\))/i],[v,[_,"Energizer"],[y,L]],[/; cat (b35);/i,/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],[v,[_,"Cat"],[y,L]],[/((?:new )?andromax[\w- ]+)(?: bui|\))/i],[v,[_,"Smartfren"],[y,L]],[/droid.+; (a(?:015|06[35]|142p?))/i],[v,[_,"Nothing"],[y,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],[_,v,[y,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],[_,v,[y,k]],[/(surface duo)/i],[v,[_,ie],[y,k]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[v,[_,"Fairphone"],[y,L]],[/(u304aa)/i],[v,[_,"AT&T"],[y,L]],[/\bsie-(\w*)/i],[v,[_,"Siemens"],[y,L]],[/\b(rct\w+) b/i],[v,[_,"RCA"],[y,k]],[/\b(venue[\d ]{2,7}) b/i],[v,[_,"Dell"],[y,k]],[/\b(q(?:mv|ta)\w+) b/i],[v,[_,"Verizon"],[y,k]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[v,[_,"Barnes & Noble"],[y,k]],[/\b(tm\d{3}\w+) b/i],[v,[_,"NuVision"],[y,k]],[/\b(k88) b/i],[v,[_,"ZTE"],[y,k]],[/\b(nx\d{3}j) b/i],[v,[_,"ZTE"],[y,L]],[/\b(gen\d{3}) b.+49h/i],[v,[_,"Swiss"],[y,L]],[/\b(zur\d{3}) b/i],[v,[_,"Swiss"],[y,k]],[/\b((zeki)?tb.*\b) b/i],[v,[_,"Zeki"],[y,k]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[_,"Dragon Touch"],v,[y,k]],[/\b(ns-?\w{0,9}) b/i],[v,[_,"Insignia"],[y,k]],[/\b((nxa|next)-?\w{0,9}) b/i],[v,[_,"NextBook"],[y,k]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[_,"Voice"],v,[y,L]],[/\b(lvtel\-)?(v1[12]) b/i],[[_,"LvTel"],v,[y,L]],[/\b(ph-1) /i],[v,[_,"Essential"],[y,L]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[v,[_,"Envizen"],[y,k]],[/\b(trio[-\w\. ]+) b/i],[v,[_,"MachSpeed"],[y,k]],[/\btu_(1491) b/i],[v,[_,"Rotor"],[y,k]],[/(shield[\w ]+) b/i],[v,[_,"Nvidia"],[y,k]],[/(sprint) (\w+)/i],[_,v,[y,L]],[/(kin\.[onetw]{3})/i],[[v,/\./g," "],[_,ie],[y,L]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[v,[_,rn],[y,k]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[v,[_,rn],[y,L]],[/smart-tv.+(samsung)/i],[_,[y,G]],[/hbbtv.+maple;(\d+)/i],[[v,/^/,"SmartTV"],[_,or],[y,G]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[_,se],[y,G]],[/(apple) ?tv/i],[_,[v,Y+" TV"],[y,G]],[/crkey/i],[[v,m+"cast"],[_,ye],[y,G]],[/droid.+aft(\w+)( bui|\))/i],[v,[_,Q],[y,G]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[v,[_,vt],[y,G]],[/(bravia[\w ]+)( bui|\))/i],[v,[_,Br],[y,G]],[/(mitv-\w{5}) bui/i],[v,[_,Gn],[y,G]],[/Hbbtv.*(technisat) (.*);/i],[_,v,[y,G]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[_,p],[v,p],[y,G]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[y,G]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[_,v,[y,M]],[/droid.+; (shield) bui/i],[v,[_,"Nvidia"],[y,M]],[/(playstation [345portablevi]+)/i],[v,[_,Br],[y,M]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[v,[_,ie],[y,M]],[/\b(sm-[lr]\d\d[05][fnuw]?s?)\b/i],[v,[_,or],[y,le]],[/((pebble))app/i],[_,v,[y,le]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[v,[_,Y],[y,le]],[/droid.+; (glass) \d/i],[v,[_,ye],[y,le]],[/droid.+; (wt63?0{2,3})\)/i],[v,[_,rn],[y,le]],[/droid.+; (glass) \d/i],[v,[_,ye],[y,le]],[/(pico) (4|neo3(?: link|pro)?)/i],[_,v,[y,le]],[/; (quest( \d| pro)?)/i],[v,[_,ri],[y,le]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[_,[y,Ae]],[/(aeobc)\b/i],[v,[_,Q],[y,Ae]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i],[v,[y,L]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[v,[y,k]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[y,k]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[y,L]],[/(android[-\w\. ]{0,9});.+buil/i],[v,[_,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[x,[E,lt+"HTML"]],[/(arkweb)\/([\w\.]+)/i],[E,x],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[x,[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,x],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[x,E]],os:[[/microsoft (windows) (vista|xp)/i],[E,x],[/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i],[E,[x,A,W]],[/windows nt 6\.2; (arm)/i,/windows[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i,/(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[x,A,W],[E,"Windows"]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[x,/_/g,"."],[E,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[E,Wn],[x,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[x,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,x],[/\(bb(10);/i],[x,[E,de]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[x,[E,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[x,[E,He+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[x,[E,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[x,[E,"watchOS"]],[/crkey\/([\d\.]+)/i],[x,[E,m+"cast"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[E,qi],x],[/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,x],[/(sunos) ?([\w\.\d]*)/i],[[E,"Solaris"],x],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[E,x]]},pe=function(q,ae){if(typeof q===d&&(ae=q,q=n),!(this instanceof pe))return new pe(q,ae).getResult();var Z=typeof r!==u&&r.navigator?r.navigator:n,Te=q||(Z&&Z.userAgent?Z.userAgent:s),Rt=Z&&Z.userAgentData?Z.userAgentData:n,xt=ae?yt(be,ae):be,Ie=Z&&Z.userAgent==Te;return this.getBrowser=function(){var ne={};return ne[E]=n,ne[x]=n,T.call(ne,Te,xt.browser),ne[h]=l(ne[x]),Ie&&Z&&Z.brave&&typeof Z.brave.isBrave==c&&(ne[E]="Brave"),ne},this.getCPU=function(){var ne={};return ne[P]=n,T.call(ne,Te,xt.cpu),ne},this.getDevice=function(){var ne={};return ne[_]=n,ne[v]=n,ne[y]=n,T.call(ne,Te,xt.device),Ie&&!ne[y]&&Rt&&Rt.mobile&&(ne[y]=L),Ie&&ne[v]=="Macintosh"&&Z&&typeof Z.standalone!==u&&Z.maxTouchPoints&&Z.maxTouchPoints>2&&(ne[v]="iPad",ne[y]=k),ne},this.getEngine=function(){var ne={};return ne[E]=n,ne[x]=n,T.call(ne,Te,xt.engine),ne},this.getOS=function(){var ne={};return ne[E]=n,ne[x]=n,T.call(ne,Te,xt.os),Ie&&!ne[E]&&Rt&&Rt.platform&&Rt.platform!="Unknown"&&(ne[E]=Rt.platform.replace(/chrome os/i,qi).replace(/macos/i,Wn)),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 Te},this.setUA=function(ne){return Te=typeof ne===g&&ne.length>B?p(ne,B):ne,this},this.setUA(Te),this};pe.VERSION=i,pe.BROWSER=kr([E,x,h]),pe.CPU=kr([P]),pe.DEVICE=kr([v,_,y,M,L,G,k,le,Ae]),pe.ENGINE=pe.OS=kr([E,x]),typeof e!==u?(typeof t!==u&&t.exports&&(e=t.exports=pe),e.UAParser=pe):typeof define===c&&define.amd?define(function(){return pe}):typeof r!==u&&(r.UAParser=pe);var ge=typeof r!==u&&(r.jQuery||r.Zepto);if(ge&&!ge.ua){var je=new pe;ge.ua=je.getResult(),ge.ua.get=function(){return je.getUA()},ge.ua.set=function(q){je.setUA(q);var ae=je.getResult();for(var Z in ae)ge.ua[Z]=ae[Z]}}})(typeof window=="object"?window:e)}),Df=sr((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(v,E){if(!c[v]){if(!o[v]){var y=typeof Qi=="function"&&Qi;if(!E&&y)return y(v,!0);if(g)return g(v,!0);var _=new Error("Cannot find module '"+v+"'");throw _.code="MODULE_NOT_FOUND",_}var x=c[v]={exports:{}};o[v][0].call(x.exports,function(P){var M=o[v][1][P];return d(M||P)},x,x.exports,s,o,c,u)}return c[v].exports}for(var g=typeof Qi=="function"&&Qi,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,g;if(d){var h=0,v=new d(P),E=u.document.createTextNode("");v.observe(E,{characterData:!0}),g=function(){E.data=h=++h%2}}else if(!u.setImmediate&&typeof u.MessageChannel<"u"){var y=new u.MessageChannel;y.port1.onmessage=P,g=function(){y.port2.postMessage(0)}}else"document"in u&&"onreadystatechange"in u.document.createElement("script")?g=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)}:g=function(){setTimeout(P,0)};var _,x=[];function P(){_=!0;for(var L,k,G=x.length;G;){for(k=x,x=[],L=-1;++L<G;)k[L]();G=x.length}_=!1}o.exports=M;function M(L){x.push(L)===1&&!_&&g()}}).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 g={},h=["REJECTED"],v=["FULFILLED"],E=["PENDING"];o.exports=y;function y(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)}y.prototype.catch=function(B){return this.then(null,B)},y.prototype.then=function(B,Q){if(typeof B!="function"&&this.state===v||typeof Q!="function"&&this.state===h)return this;var Y=new this.constructor(d);if(this.state!==E){var J=this.state===v?B:Q;x(Y,J,this.outcome)}else this.queue.push(new _(Y,B,Q));return Y};function _(B,Q,Y){this.promise=B,typeof Q=="function"&&(this.onFulfilled=Q,this.callFulfilled=this.otherCallFulfilled),typeof Y=="function"&&(this.onRejected=Y,this.callRejected=this.otherCallRejected)}_.prototype.callFulfilled=function(B){g.resolve(this.promise,B)},_.prototype.otherCallFulfilled=function(B){x(this.promise,this.onFulfilled,B)},_.prototype.callRejected=function(B){g.reject(this.promise,B)},_.prototype.otherCallRejected=function(B){x(this.promise,this.onRejected,B)};function x(B,Q,Y){u(function(){var J;try{J=Q(Y)}catch(de){return g.reject(B,de)}J===B?g.reject(B,new TypeError("Cannot resolve promise with itself")):g.resolve(B,J)})}g.resolve=function(B,Q){var Y=L(P,Q);if(Y.status==="error")return g.reject(B,Y.value);var J=Y.value;if(J)M(B,J);else{B.state=v,B.outcome=Q;for(var de=-1,ke=B.queue.length;++de<ke;)B.queue[de].callFulfilled(Q)}return B},g.reject=function(B,Q){B.state=h,B.outcome=Q;for(var Y=-1,J=B.queue.length;++Y<J;)B.queue[Y].callRejected(Q);return B};function P(B){var Q=B&&B.then;if(B&&(typeof B=="object"||typeof B=="function")&&typeof Q=="function")return function(){Q.apply(B,arguments)}}function M(B,Q){var Y=!1;function J(lt){Y||(Y=!0,g.reject(B,lt))}function de(lt){Y||(Y=!0,g.resolve(B,lt))}function ke(){Q(de,J)}var m=L(ke);m.status==="error"&&J(m.value)}function L(B,Q){var Y={};try{Y.value=B(Q),Y.status="success"}catch(J){Y.status="error",Y.value=J}return Y}y.resolve=k;function k(B){return B instanceof this?B:g.resolve(new this(d),B)}y.reject=G;function G(B){var Q=new this(d);return g.reject(Q,B)}y.all=le;function le(B){var Q=this;if(Object.prototype.toString.call(B)!=="[object Array]")return this.reject(new TypeError("must be an array"));var Y=B.length,J=!1;if(!Y)return this.resolve([]);for(var de=new Array(Y),ke=0,m=-1,lt=new this(d);++m<Y;)He(B[m],m);return lt;function He(ye,gt){Q.resolve(ye).then(se,function(ie){J||(J=!0,g.reject(lt,ie))});function se(ie){de[gt]=ie,++ke===Y&&!J&&(J=!0,g.resolve(lt,de))}}}y.race=Ae;function Ae(B){var Q=this;if(Object.prototype.toString.call(B)!=="[object Array]")return this.reject(new TypeError("must be an array"));var Y=B.length,J=!1;if(!Y)return this.resolve([]);for(var de=-1,ke=new this(d);++de<Y;)m(B[de]);return ke;function m(lt){Q.resolve(lt).then(function(He){J||(J=!0,g.resolve(ke,He))},function(He){J||(J=!0,g.reject(ke,He))})}}},{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 g(){try{if(typeof indexedDB<"u")return indexedDB;if(typeof webkitIndexedDB<"u")return webkitIndexedDB;if(typeof mozIndexedDB<"u")return mozIndexedDB;if(typeof OIndexedDB<"u")return OIndexedDB;if(typeof msIndexedDB<"u")return msIndexedDB}catch{return}}var h=g();function v(){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,D=new I,C=0;C<f.length;C+=1)D.append(f[C]);return D.getBlob(S.type)}}typeof Promise>"u"&&s(3);var y=Promise;function _(f,S){S&&f.then(function(I){S(null,I)},function(I){S(I)})}function x(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",k=void 0,G={},le=Object.prototype.toString,Ae="readonly",B="readwrite";function Q(f){for(var S=f.length,I=new ArrayBuffer(S),D=new Uint8Array(I),C=0;C<S;C++)D[C]=f.charCodeAt(C);return I}function Y(f){return new y(function(S){var I=f.transaction(L,B),D=E([""]);I.objectStore(L).put(D,"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 k=="boolean"?y.resolve(k):Y(f).then(function(S){return k=S,k})}function de(f){var S=G[f.name],I={};I.promise=new y(function(D,C){I.resolve=D,I.reject=C}),S.deferredOperations.push(I),S.dbReady?S.dbReady=S.dbReady.then(function(){return I.promise}):S.dbReady=I.promise}function ke(f){var S=G[f.name],I=S.deferredOperations.pop();if(I)return I.resolve(),I.promise}function m(f,S){var I=G[f.name],D=I.deferredOperations.pop();if(D)return D.reject(S),D.promise}function lt(f,S){return new y(function(I,D){if(G[f.name]=G[f.name]||Br(),f.db)if(S)de(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(R){var j=O.result;try{j.createObjectStore(f.storeName),R.oldVersion<=1&&j.createObjectStore(L)}catch(H){if(H.name==="ConstraintError")console.warn('The database "'+f.name+'" has been upgraded from version '+R.oldVersion+" to version "+R.newVersion+', but the storage "'+f.storeName+'" already exists.');else throw H}}),O.onerror=function(R){R.preventDefault(),D(O.error)},O.onsuccess=function(){var R=O.result;R.onversionchange=function(j){j.target.close()},I(R),ke(f)}})}function He(f){return lt(f,!1)}function ye(f){return lt(f,!0)}function gt(f,S){if(!f.db)return!0;var I=!f.db.objectStoreNames.contains(f.storeName),D=f.version<f.db.version,C=f.version>f.db.version;if(D&&(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 se(f){return new y(function(S,I){var D=new FileReader;D.onerror=I,D.onloadend=function(C){var O=btoa(C.target.result||"");S({__local_forage_encoded_blob:!0,data:O,type:f.type})},D.readAsBinaryString(f)})}function ie(f){var S=Q(atob(f.data));return E([S],{type:f.type})}function ze(f){return f&&f.__local_forage_encoded_blob}function Jt(f){var S=this,I=S._initReady().then(function(){var D=G[S._dbInfo.name];if(D&&D.dbReady)return D.dbReady});return x(I,f,f),I}function or(f){de(f);for(var S=G[f.name],I=S.forages,D=0;D<I.length;D++){var C=I[D];C._dbInfo.db&&(C._dbInfo.db.close(),C._dbInfo.db=null)}return f.db=null,He(f).then(function(O){return f.db=O,gt(f)?ye(f):O}).then(function(O){f.db=S.db=O;for(var R=0;R<I.length;R++)I[R]._dbInfo.db=O}).catch(function(O){throw m(f,O),O})}function vt(f,S,I,D){D===void 0&&(D=1);try{var C=f.db.transaction(f.storeName,S);I(null,C)}catch(O){if(D>0&&(!f.db||O.name==="InvalidStateError"||O.name==="NotFoundError"))return y.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),ye(f)}).then(function(){return or(f).then(function(){vt(f,S,I,D-1)})}).catch(I);I(O)}}function Br(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function Gn(f){var S=this,I={db:null};if(f)for(var D in f)I[D]=f[D];var C=G[I.name];C||(C=Br(),G[I.name]=C),C.forages.push(S),S._initReady||(S._initReady=S.ready,S.ready=Jt);var O=[];function R(){return y.resolve()}for(var j=0;j<C.forages.length;j++){var H=C.forages[j];H!==S&&O.push(H._initReady().catch(R))}var V=C.forages.slice(0);return y.all(O).then(function(){return I.db=C.db,He(I)}).then(function(F){return I.db=F,gt(I,S._defaultConfig.version)?ye(I):F}).then(function(F){I.db=C.db=F,S._dbInfo=I;for(var z=0;z<V.length;z++){var he=V[z];he!==S&&(he._dbInfo.db=I.db,he._dbInfo.version=I.version)}})}function rn(f,S){var I=this;f=P(f);var D=new y(function(C,O){I.ready().then(function(){vt(I._dbInfo,Ae,function(R,j){if(R)return O(R);try{var H=j.objectStore(I._dbInfo.storeName),V=H.get(f);V.onsuccess=function(){var F=V.result;F===void 0&&(F=null),ze(F)&&(F=ie(F)),C(F)},V.onerror=function(){O(V.error)}}catch(F){O(F)}})}).catch(O)});return _(D,S),D}function ri(f,S){var I=this,D=new y(function(C,O){I.ready().then(function(){vt(I._dbInfo,Ae,function(R,j){if(R)return O(R);try{var H=j.objectStore(I._dbInfo.storeName),V=H.openCursor(),F=1;V.onsuccess=function(){var z=V.result;if(z){var he=z.value;ze(he)&&(he=ie(he));var Fe=f(he,z.key,F++);Fe!==void 0?C(Fe):z.continue()}else C()},V.onerror=function(){O(V.error)}}catch(z){O(z)}})}).catch(O)});return _(D,S),D}function qi(f,S,I){var D=this;f=P(f);var C=new y(function(O,R){var j;D.ready().then(function(){return j=D._dbInfo,le.call(S)==="[object Blob]"?J(j.db).then(function(H){return H?S:se(S)}):S}).then(function(H){vt(D._dbInfo,B,function(V,F){if(V)return R(V);try{var z=F.objectStore(D._dbInfo.storeName);H===null&&(H=void 0);var he=z.put(H,f);F.oncomplete=function(){H===void 0&&(H=null),O(H)},F.onabort=F.onerror=function(){var Fe=he.error?he.error:he.transaction.error;R(Fe)}}catch(Fe){R(Fe)}})}).catch(R)});return _(C,I),C}function Wn(f,S){var I=this;f=P(f);var D=new y(function(C,O){I.ready().then(function(){vt(I._dbInfo,B,function(R,j){if(R)return O(R);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 _(D,S),D}function $n(f){var S=this,I=new y(function(D,C){S.ready().then(function(){vt(S._dbInfo,B,function(O,R){if(O)return C(O);try{var j=R.objectStore(S._dbInfo.storeName),H=j.clear();R.oncomplete=function(){D()},R.onabort=R.onerror=function(){var V=H.error?H.error:H.transaction.error;C(V)}}catch(V){C(V)}})}).catch(C)});return _(I,f),I}function yt(f){var S=this,I=new y(function(D,C){S.ready().then(function(){vt(S._dbInfo,Ae,function(O,R){if(O)return C(O);try{var j=R.objectStore(S._dbInfo.storeName),H=j.count();H.onsuccess=function(){D(H.result)},H.onerror=function(){C(H.error)}}catch(V){C(V)}})}).catch(C)});return _(I,f),I}function kr(f,S){var I=this,D=new y(function(C,O){if(f<0){C(null);return}I.ready().then(function(){vt(I._dbInfo,Ae,function(R,j){if(R)return O(R);try{var H=j.objectStore(I._dbInfo.storeName),V=!1,F=H.openKeyCursor();F.onsuccess=function(){var z=F.result;if(!z){C(null);return}f===0||V?C(z.key):(V=!0,z.advance(f))},F.onerror=function(){O(F.error)}}catch(z){O(z)}})}).catch(O)});return _(D,S),D}function Ki(f){var S=this,I=new y(function(D,C){S.ready().then(function(){vt(S._dbInfo,Ae,function(O,R){if(O)return C(O);try{var j=R.objectStore(S._dbInfo.storeName),H=j.openKeyCursor(),V=[];H.onsuccess=function(){var F=H.result;if(!F){D(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 D=this,C;if(!f.name)C=y.reject("Invalid arguments");else{var O=f.name===I.name&&D._dbInfo.db,R=O?y.resolve(D._dbInfo.db):He(f).then(function(j){var H=G[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=R.then(function(j){if(j.objectStoreNames.contains(f.storeName)){var H=j.version+1;de(f);var V=G[f.name],F=V.forages;j.close();for(var z=0;z<F.length;z++){var he=F[z];he._dbInfo.db=null,he._dbInfo.version=H}var Fe=new y(function(Ce,ct){var Ve=h.open(f.name,H);Ve.onerror=function(Ft){var Ic=Ve.result;Ic.close(),ct(Ft)},Ve.onupgradeneeded=function(){var Ft=Ve.result;Ft.deleteObjectStore(f.storeName)},Ve.onsuccess=function(){var Ft=Ve.result;Ft.close(),Ce(Ft)}});return Fe.then(function(Ce){V.db=Ce;for(var ct=0;ct<F.length;ct++){var Ve=F[ct];Ve._dbInfo.db=Ce,ke(Ve._dbInfo)}}).catch(function(Ce){throw(m(f,Ce)||y.resolve()).catch(function(){}),Ce})}}):C=R.then(function(j){de(f);var H=G[f.name],V=H.forages;j.close();for(var F=0;F<V.length;F++){var z=V[F];z._dbInfo.db=null}var he=new y(function(Fe,Ce){var ct=h.deleteDatabase(f.name);ct.onerror=function(){var Ve=ct.result;Ve&&Ve.close(),Ce(ct.error)},ct.onblocked=function(){console.warn('dropInstance blocked for database "'+f.name+'" until all open connections are closed')},ct.onsuccess=function(){var Ve=ct.result;Ve&&Ve.close(),Fe(Ve)}});return he.then(function(Fe){H.db=Fe;for(var Ce=0;Ce<V.length;Ce++){var ct=V[Ce];ke(ct._dbInfo)}}).catch(function(Fe){throw(m(f,Fe)||y.resolve()).catch(function(){}),Fe})})}return _(C,S),C}var l={_driver:"asyncStorage",_initStorage:Gn,_support:v(),iterate:ri,getItem:rn,setItem:qi,removeItem:Wn,clear:$n,length:yt,key:kr,keys:Ki,dropInstance:a};function p(){return typeof openDatabase=="function"}var T="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",A="~~local_forage_type~",U=/^~~local_forage_type~([^~]+)~/,W="__lfsc__:",be=W.length,pe="arbf",ge="blob",je="si08",q="ui08",ae="uic8",Z="si16",Te="si32",Rt="ur16",xt="ui32",Ie="fl32",ne="fl64",Ut=be+pe.length,Xi=Object.prototype.toString;function ls(f){var S=f.length*.75,I=f.length,D,C=0,O,R,j,H;f[f.length-1]==="="&&(S--,f[f.length-2]==="="&&S--);var V=new ArrayBuffer(S),F=new Uint8Array(V);for(D=0;D<I;D+=4)O=T.indexOf(f[D]),R=T.indexOf(f[D+1]),j=T.indexOf(f[D+2]),H=T.indexOf(f[D+3]),F[C++]=O<<2|R>>4,F[C++]=(R&15)<<4|j>>2,F[C++]=(j&3)<<6|H&63;return V}function Zo(f){var S=new Uint8Array(f),I="",D;for(D=0;D<S.length;D+=3)I+=T[S[D]>>2],I+=T[(S[D]&3)<<4|S[D+1]>>4],I+=T[(S[D+1]&15)<<2|S[D+2]>>6],I+=T[S[D+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 op(f,S){var I="";if(f&&(I=Xi.call(f)),f&&(I==="[object ArrayBuffer]"||f.buffer&&Xi.call(f.buffer)==="[object ArrayBuffer]")){var D,C=W;f instanceof ArrayBuffer?(D=f,C+=pe):(D=f.buffer,I==="[object Int8Array]"?C+=je:I==="[object Uint8Array]"?C+=q:I==="[object Uint8ClampedArray]"?C+=ae:I==="[object Int16Array]"?C+=Z:I==="[object Uint16Array]"?C+=Rt:I==="[object Int32Array]"?C+=Te:I==="[object Uint32Array]"?C+=xt:I==="[object Float32Array]"?C+=Ie:I==="[object Float64Array]"?C+=ne:S(new Error("Failed to get type for BinaryArray"))),S(C+Zo(D))}else if(I==="[object Blob]"){var O=new FileReader;O.onload=function(){var R=A+f.type+"~"+Zo(this.result);S(W+ge+R)},O.readAsArrayBuffer(f)}else try{S(JSON.stringify(f))}catch(R){console.error("Couldn't convert value into a JSON string: ",f),S(null,R)}}function ap(f){if(f.substring(0,be)!==W)return JSON.parse(f);var S=f.substring(Ut),I=f.substring(be,Ut),D;if(I===ge&&U.test(S)){var C=S.match(U);D=C[1],S=S.substring(C[0].length)}var O=ls(S);switch(I){case pe:return O;case ge:return E([O],{type:D});case je:return new Int8Array(O);case q:return new Uint8Array(O);case ae:return new Uint8ClampedArray(O);case Z:return new Int16Array(O);case Rt:return new Uint16Array(O);case Te:return new Int32Array(O);case xt:return new Uint32Array(O);case Ie:return new Float32Array(O);case ne:return new Float64Array(O);default:throw new Error("Unkown type: "+I)}}var Va={serialize:op,deserialize:ap,stringToBuffer:ls,bufferToString:Zo};function Nh(f,S,I,D){f.executeSql("CREATE TABLE IF NOT EXISTS "+S.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],I,D)}function cp(f){var S=this,I={db:null};if(f)for(var D in f)I[D]=typeof f[D]!="string"?f[D].toString():f[D];var C=new y(function(O,R){try{I.db=openDatabase(I.name,String(I.version),I.description,I.size)}catch(j){return R(j)}I.db.transaction(function(j){Nh(j,I,function(){S._dbInfo=I,O()},function(H,V){R(V)})},R)});return I.serializer=Va,C}function Hn(f,S,I,D,C,O){f.executeSql(I,D,C,function(R,j){j.code===j.SYNTAX_ERR?R.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[S.storeName],function(H,V){V.rows.length?O(H,j):Nh(H,S,function(){H.executeSql(I,D,C,O)},O)},O):O(R,j)},O)}function gp(f,S){var I=this;f=P(f);var D=new y(function(C,O){I.ready().then(function(){var R=I._dbInfo;R.db.transaction(function(j){Hn(j,R,"SELECT * FROM "+R.storeName+" WHERE key = ? LIMIT 1",[f],function(H,V){var F=V.rows.length?V.rows.item(0).value:null;F&&(F=R.serializer.deserialize(F)),C(F)},function(H,V){O(V)})})}).catch(O)});return _(D,S),D}function mp(f,S){var I=this,D=new y(function(C,O){I.ready().then(function(){var R=I._dbInfo;R.db.transaction(function(j){Hn(j,R,"SELECT * FROM "+R.storeName,[],function(H,V){for(var F=V.rows,z=F.length,he=0;he<z;he++){var Fe=F.item(he),Ce=Fe.value;if(Ce&&(Ce=R.serializer.deserialize(Ce)),Ce=f(Ce,Fe.key,he+1),Ce!==void 0){C(Ce);return}}C()},function(H,V){O(V)})})}).catch(O)});return _(D,S),D}function Oh(f,S,I,D){var C=this;f=P(f);var O=new y(function(R,j){C.ready().then(function(){S===void 0&&(S=null);var H=S,V=C._dbInfo;V.serializer.serialize(S,function(F,z){z?j(z):V.db.transaction(function(he){Hn(he,V,"INSERT OR REPLACE INTO "+V.storeName+" (key, value) VALUES (?, ?)",[f,F],function(){R(H)},function(Fe,Ce){j(Ce)})},function(he){if(he.code===he.QUOTA_ERR){if(D>0){R(Oh.apply(C,[f,H,I,D-1]));return}j(he)}})})}).catch(j)});return _(O,I),O}function vp(f,S,I){return Oh.apply(this,[f,S,I,1])}function yp(f,S){var I=this;f=P(f);var D=new y(function(C,O){I.ready().then(function(){var R=I._dbInfo;R.db.transaction(function(j){Hn(j,R,"DELETE FROM "+R.storeName+" WHERE key = ?",[f],function(){C()},function(H,V){O(V)})})}).catch(O)});return _(D,S),D}function wp(f){var S=this,I=new y(function(D,C){S.ready().then(function(){var O=S._dbInfo;O.db.transaction(function(R){Hn(R,O,"DELETE FROM "+O.storeName,[],function(){D()},function(j,H){C(H)})})}).catch(C)});return _(I,f),I}function bp(f){var S=this,I=new y(function(D,C){S.ready().then(function(){var O=S._dbInfo;O.db.transaction(function(R){Hn(R,O,"SELECT COUNT(key) as c FROM "+O.storeName,[],function(j,H){var V=H.rows.item(0).c;D(V)},function(j,H){C(H)})})}).catch(C)});return _(I,f),I}function _p(f,S){var I=this,D=new y(function(C,O){I.ready().then(function(){var R=I._dbInfo;R.db.transaction(function(j){Hn(j,R,"SELECT key FROM "+R.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 _(D,S),D}function Ep(f){var S=this,I=new y(function(D,C){S.ready().then(function(){var O=S._dbInfo;O.db.transaction(function(R){Hn(R,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);D(V)},function(j,H){C(H)})})}).catch(C)});return _(I,f),I}function Sp(f){return new y(function(S,I){f.transaction(function(D){D.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(C,O){for(var R=[],j=0;j<O.rows.length;j++)R.push(O.rows.item(j).name);S({db:f,storeNames:R})},function(C,O){I(O)})},function(D){I(D)})})}function Ip(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 D=this,C;return f.name?C=new y(function(O){var R;f.name===I.name?R=D._dbInfo.db:R=openDatabase(f.name,"","",0),f.storeName?O({db:R,storeNames:[f.storeName]}):O(Sp(R))}).then(function(O){return new y(function(R,j){O.db.transaction(function(H){function V(Fe){return new y(function(Ce,ct){H.executeSql("DROP TABLE IF EXISTS "+Fe,[],function(){Ce()},function(Ve,Ft){ct(Ft)})})}for(var F=[],z=0,he=O.storeNames.length;z<he;z++)F.push(V(O.storeNames[z]));y.all(F).then(function(){R()}).catch(function(Fe){j(Fe)})},function(H){j(H)})})}):C=y.reject("Invalid arguments"),_(C,S),C}var Tp={_driver:"webSQLStorage",_initStorage:cp,_support:p(),iterate:mp,getItem:gp,setItem:vp,removeItem:yp,clear:wp,length:bp,key:_p,keys:Ep,dropInstance:Ip};function Cp(){try{return typeof localStorage<"u"&&"setItem"in localStorage&&!!localStorage.setItem}catch{return!1}}function Ah(f,S){var I=f.name+"/";return f.storeName!==S.storeName&&(I+=f.storeName+"/"),I}function xp(){var f="_localforage_support_test";try{return localStorage.setItem(f,!0),localStorage.removeItem(f),!1}catch{return!0}}function Dp(){return!xp()||localStorage.length>0}function Np(f){var S=this,I={};if(f)for(var D in f)I[D]=f[D];return I.keyPrefix=Ah(f,S._defaultConfig),Dp()?(S._dbInfo=I,I.serializer=Va,y.resolve()):y.reject()}function Op(f){var S=this,I=S.ready().then(function(){for(var D=S._dbInfo.keyPrefix,C=localStorage.length-1;C>=0;C--){var O=localStorage.key(C);O.indexOf(D)===0&&localStorage.removeItem(O)}});return _(I,f),I}function Ap(f,S){var I=this;f=P(f);var D=I.ready().then(function(){var C=I._dbInfo,O=localStorage.getItem(C.keyPrefix+f);return O&&(O=C.serializer.deserialize(O)),O});return _(D,S),D}function Pp(f,S){var I=this,D=I.ready().then(function(){for(var C=I._dbInfo,O=C.keyPrefix,R=O.length,j=localStorage.length,H=1,V=0;V<j;V++){var F=localStorage.key(V);if(F.indexOf(O)===0){var z=localStorage.getItem(F);if(z&&(z=C.serializer.deserialize(z)),z=f(z,F.substring(R),H++),z!==void 0)return z}}});return _(D,S),D}function kp(f,S){var I=this,D=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 _(D,S),D}function Rp(f){var S=this,I=S.ready().then(function(){for(var D=S._dbInfo,C=localStorage.length,O=[],R=0;R<C;R++){var j=localStorage.key(R);j.indexOf(D.keyPrefix)===0&&O.push(j.substring(D.keyPrefix.length))}return O});return _(I,f),I}function Lp(f){var S=this,I=S.keys().then(function(D){return D.length});return _(I,f),I}function Up(f,S){var I=this;f=P(f);var D=I.ready().then(function(){var C=I._dbInfo;localStorage.removeItem(C.keyPrefix+f)});return _(D,S),D}function Mp(f,S,I){var D=this;f=P(f);var C=D.ready().then(function(){S===void 0&&(S=null);var O=S;return new y(function(R,j){var H=D._dbInfo;H.serializer.serialize(S,function(V,F){if(F)j(F);else try{localStorage.setItem(H.keyPrefix+f,V),R(O)}catch(z){(z.name==="QuotaExceededError"||z.name==="NS_ERROR_DOM_QUOTA_REACHED")&&j(z),j(z)}})})});return _(C,I),C}function $p(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 D=this,C;return f.name?C=new y(function(O){f.storeName?O(Ah(f,D._defaultConfig)):O(f.name+"/")}).then(function(O){for(var R=localStorage.length-1;R>=0;R--){var j=localStorage.key(R);j.indexOf(O)===0&&localStorage.removeItem(j)}}):C=y.reject("Invalid arguments"),_(C,S),C}var Bp={_driver:"localStorageWrapper",_initStorage:Np,_support:Cp(),iterate:Pp,getItem:Ap,setItem:Mp,removeItem:Up,clear:Op,length:Lp,key:kp,keys:Rp,dropInstance:$p},jp=function(f,S){return f===S||typeof f=="number"&&typeof S=="number"&&isNaN(f)&&isNaN(S)},Fp=function(f,S){for(var I=f.length,D=0;D<I;){if(jp(f[D],S))return!0;D++}return!1},Ph=Array.isArray||function(f){return Object.prototype.toString.call(f)==="[object Array]"},us={},kh={},Ji={INDEXEDDB:l,WEBSQL:Tp,LOCALSTORAGE:Bp},Vp=[Ji.INDEXEDDB._driver,Ji.WEBSQL._driver,Ji.LOCALSTORAGE._driver],Jo=["dropInstance"],za=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(Jo),Hp={description:"",driver:Vp.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function Gp(f,S){f[S]=function(){var I=arguments;return f.ready().then(function(){return f[S].apply(f,I)})}}function bc(){for(var f=1;f<arguments.length;f++){var S=arguments[f];if(S)for(var I in S)S.hasOwnProperty(I)&&(Ph(S[I])?arguments[0][I]=S[I].slice():arguments[0][I]=S[I])}return arguments[0]}var Wp=function(){function f(S){d(this,f);for(var I in Ji)if(Ji.hasOwnProperty(I)){var D=Ji[I],C=D._driver;this[I]=C,us[C]||this.defineDriver(D)}this._defaultConfig=bc({},Hp),this._config=bc({},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,D){var C=new y(function(O,R){try{var j=S._driver,H=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!S._driver){R(H);return}for(var V=za.concat("_initStorage"),F=0,z=V.length;F<z;F++){var he=V[F],Fe=!Fp(Jo,he);if((Fe||S[he])&&typeof S[he]!="function"){R(H);return}}var Ce=function(){for(var Ve=function(xf){return function(){var eg=new Error("Method "+xf+" is not implemented by the current driver"),Rh=y.reject(eg);return _(Rh,arguments[arguments.length-1]),Rh}},Ft=0,Ic=Jo.length;Ft<Ic;Ft++){var Tc=Jo[Ft];S[Tc]||(S[Tc]=Ve(Tc))}};Ce();var ct=function(Ve){us[j]&&console.info("Redefining LocalForage driver: "+j),us[j]=S,kh[j]=Ve,O()};"_support"in S?S._support&&typeof S._support=="function"?S._support().then(ct,R):ct(!!S._support):ct(!0)}catch(Ve){R(Ve)}});return x(C,I,D),C},f.prototype.driver=function(){return this._driver||null},f.prototype.getDriver=function(S,I,D){var C=us[S]?y.resolve(us[S]):y.reject(new Error("Driver not found."));return x(C,I,D),C},f.prototype.getSerializer=function(S){var I=y.resolve(Va);return x(I,S),I},f.prototype.ready=function(S){var I=this,D=I._driverSet.then(function(){return I._ready===null&&(I._ready=I._initDriver()),I._ready});return x(D,S,S),D},f.prototype.setDriver=function(S,I,D){var C=this;Ph(S)||(S=[S]);var O=this._getSupportedDrivers(S);function R(){C._config.driver=C.driver()}function j(F){return C._extend(F),R(),C._ready=C._initStorage(C._config),C._ready}function H(F){return function(){var z=0;function he(){for(;z<F.length;){var Fe=F[z];return z++,C._dbInfo=null,C._ready=null,C.getDriver(Fe).then(j).catch(he)}R();var Ce=new Error("No available storage method found.");return C._driverSet=y.reject(Ce),C._driverSet}return he()}}var V=this._driverSet!==null?this._driverSet.catch(function(){return y.resolve()}):y.resolve();return this._driverSet=V.then(function(){var F=O[0];return C._dbInfo=null,C._ready=null,C.getDriver(F).then(function(z){C._driver=z._driver,R(),C._wrapLibraryMethodsWithReady(),C._initDriver=H(O)})}).catch(function(){R();var F=new Error("No available storage method found.");return C._driverSet=y.reject(F),C._driverSet}),x(this._driverSet,I,D),this._driverSet},f.prototype.supports=function(S){return!!kh[S]},f.prototype._extend=function(S){bc(this,S)},f.prototype._getSupportedDrivers=function(S){for(var I=[],D=0,C=S.length;D<C;D++){var O=S[D];this.supports(O)&&I.push(O)}return I},f.prototype._wrapLibraryMethodsWithReady=function(){for(var S=0,I=za.length;S<I;S++)Gp(this,za[S])},f.prototype.createInstance=function(S){return new f(S)},f}(),Yp=new Wp;o.exports=Yp},{3:3}]},{},[4])(4)})}),ni=sr(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 g(E){try{v(o.next(E))}catch(y){d(y)}}function h(E){try{v(o.throw(E))}catch(y){d(y)}}function v(E){E.done?u(E.value):c(E.value).then(g,h)}v((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=sr(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}),lh=sr((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 g=o.retries,h=o.retryDelay,v=o.retryOn;if(d&&d.retries!==void 0)if(n(d.retries))g=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")v=d.retryOn;else throw new i("retryOn property expects an array or function");return new Promise(function(E,y){var _=function(P){var M=typeof Request<"u"&&u instanceof Request?u.clone():u;s(M,d).then(function(L){if(Array.isArray(v)&&v.indexOf(L.status)===-1)E(L);else if(typeof v=="function")try{return Promise.resolve(v(P,null,L)).then(function(k){k?x(P,null,L):E(L)}).catch(y)}catch(k){y(k)}else P<g?x(P,null,L):E(L)}).catch(function(L){if(typeof v=="function")try{Promise.resolve(v(P,L,null)).then(function(k){k?x(P,L,null):y(L)}).catch(function(k){y(k)})}catch(k){y(k)}else P<g?x(P,L,null):y(L)})};function x(P,M,L){var k=typeof h=="function"?h(P,M,L):h;setTimeout(function(){_(++P)},k)}_(0)})}};function n(s){return Number.isInteger(s)&&s>=0}function i(s){this.name="ArgumentError",this.message=s}return r})}),fp="9.10.5",N=class Cc{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=Cc.SDK_VERSION.split(".").map(r=>r.padStart(2,"0")).join("");Cc.SDK_VERSION_CODE=parseInt(t,10)}},ut={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`},At=Ee(nn()),b=class{static log(...e){At.default.info(...e)}static debug(...e){At.default.debug(...e)}static error(...e){At.default.error(...e)}static warn(...e){At.default.warn(...e)}static info(...e){At.default.info(...e)}static trace(...e){At.default.trace(...e)}};function dp(e=N.LOG_PREFIX){At.default.useDefaults({formatter:function(r){r.unshift(`${e} (v${N.SDK_VERSION}):`)}});let t=Ac();(t==="1"||t==="on")&&(localStorage.cooeeLogLevel="TRACE"),localStorage.cooeeLogLevel?At.default.setLevel(At.default[localStorage.cooeeLogLevel]):At.default.setLevel(ut.debug?At.default.TRACE:At.default.OFF)}function Ac(){return new URL(location.href).searchParams?.get("cooee-debug")}function hp(){let e=`
|
|
2
2
|
display: inline-block;
|
|
3
3
|
font-size: 14px;
|
|
4
4
|
background: linear-gradient(90deg, #d52dc8 25%, #2179e2 82%);
|
|
@@ -13,17 +13,17 @@
|
|
|
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()}var xh=Ee(Nc()),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}},ot=Ee(Tr()),zr=Ee(es()),ba=Ee(Pc()),os,_e,Jp,kc,on,zp,Qp,Lc,Zp,Uc,Mc,Bc,wg,Zi={},ef=[],bg=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,Fc=Array.isArray;function Fr(e,t){for(var r in t)e[r]=t[r];return e}function Hc(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function $c(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?os.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 ns(e,o,n,i,null)}function ns(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??++Jp,__i:-1,__u:0};return i==null&&_e.vnode!=null&&_e.vnode(s),s}function cr(e){return e.children}function ar(e,t){this.props=e,this.context=t}function zn(e,t){if(t==null)return e.__?zn(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"?zn(e):null}function tf(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 tf(e)}}function qp(e){(!e.__d&&(e.__d=!0)&&on.push(e)&&!is.__r++||zp!==_e.debounceRendering)&&((zp=_e.debounceRendering)||Qp)(is)}function is(){var e,t,r,n,i,s,o,c;for(on.sort(Lc);e=on.shift();)e.__d&&(t=on.length,n=void 0,s=(i=(r=e).__v).__e,o=[],c=[],r.__P&&((n=Fr({},i)).__v=i.__v+1,_e.vnode&&_e.vnode(n),jc(r.__P,n,i,r.__n,r.__P.namespaceURI,32&i.__u?[s]:null,o,s??zn(i),!!(32&i.__u),c),n.__v=i.__v,n.__.__k[n.__i]=n,of(o,n,c),n.__e!=s&&tf(n)),on.length>t&&on.sort(Lc));is.__r=0}function rf(e,t,r,n,i,s,o,c,u,d,g){var h,v,E,y,_,x,P=n&&n.__k||ef,M=t.length;for(u=Ig(r,t,P,u,M),h=0;h<M;h++)(E=r.__k[h])!=null&&(v=E.__i===-1?Zi:P[E.__i]||Zi,E.__i=h,x=jc(e,E,v,i,s,o,c,u,d,g),y=E.__e,E.ref&&v.ref!=E.ref&&(v.ref&&Vc(v.ref,null,E),g.push(E.ref,E.__c||y,E)),_==null&&y!=null&&(_=y),4&E.__u||v.__k===E.__k?u=nf(E,u,e):typeof E.type=="function"&&x!==void 0?u=x:y&&(u=y.nextSibling),E.__u&=-7);return r.__e=_,u}function Ig(e,t,r,n,i){var s,o,c,u,d,g=r.length,h=g,v=0;for(e.__k=new Array(i),s=0;s<i;s++)(o=t[s])!=null&&typeof o!="boolean"&&typeof o!="function"?(u=s+v,(o=e.__k[s]=typeof o=="string"||typeof o=="number"||typeof o=="bigint"||o.constructor==String?ns(null,o,null,null,null):Fc(o)?ns(cr,{children:o},null,null,null):o.constructor===void 0&&o.__b>0?ns(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=Tg(o,r,u,h))!==-1&&(h--,(c=r[d])&&(c.__u|=2)),c==null||c.__v===null?(d==-1&&v--,typeof o.type!="function"&&(o.__u|=4)):d!=u&&(d==u-1?v--:d==u+1?v++:(d>u?v--:v++,o.__u|=4))):e.__k[s]=null;if(h)for(s=0;s<g;s++)(c=r[s])!=null&&(2&c.__u)==0&&(c.__e==n&&(n=zn(c)),sf(c,c));return n}function nf(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=nf(n[i],t,r));return t}e.__e!=t&&(t&&e.type&&!r.contains(t)&&(t=zn(e)),r.insertBefore(e.__e,t||null),t=e.__e);do t=t&&t.nextSibling;while(t!=null&&t.nodeType==8);return t}function Tg(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 Kp(e,t,r){t[0]=="-"?e.setProperty(t,r??""):e[t]=r==null?"":typeof r!="number"||bg.test(t)?r:r+"px"}function rs(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||Kp(e.style,t,"");if(r)for(t in r)n&&r[t]===n[t]||Kp(e.style,t,r[t])}else if(t[0]=="o"&&t[1]=="n")s=t!=(t=t.replace(Zp,"$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=Uc,e.addEventListener(t,s?Bc:Mc,s)):e.removeEventListener(t,s?Bc:Mc,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 Xp(e){return function(t){if(this.l){var r=this.l[t.type+e];if(t.t==null)t.t=Uc++;else if(t.t<r.u)return;return r(_e.event?_e.event(t):t)}}}function jc(e,t,r,n,i,s,o,c,u,d){var g,h,v,E,y,_,x,P,M,L,k,G,le,Ae,B,Q,Y,J=t.type;if(t.constructor!==void 0)return null;128&r.__u&&(u=!!(32&r.__u),s=[c=t.__e=r.__e]),(g=_e.__b)&&g(t);e:if(typeof J=="function")try{if(P=t.props,M="prototype"in J&&J.prototype.render,L=(g=J.contextType)&&n[g.__c],k=g?L?L.props.value:g.__:n,r.__c?x=(h=t.__c=r.__c).__=h.__E:(M?t.__c=h=new J(P,k):(t.__c=h=new ar(P,k),h.constructor=J,h.render=xg),L&&L.sub(h),h.props=P,h.state||(h.state={}),h.context=k,h.__n=n,v=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=Fr({},h.__s)),Fr(h.__s,J.getDerivedStateFromProps(P,h.__s))),E=h.props,y=h.state,h.__v=t,v)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,k),!h.__e&&(h.shouldComponentUpdate!=null&&h.shouldComponentUpdate(P,h.__s,k)===!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(de){de&&(de.__=t)}),G=0;G<h._sb.length;G++)h.__h.push(h._sb[G]);h._sb=[],h.__h.length&&o.push(h);break e}h.componentWillUpdate!=null&&h.componentWillUpdate(P,h.__s,k),M&&h.componentDidUpdate!=null&&h.__h.push(function(){h.componentDidUpdate(E,y,_)})}if(h.context=k,h.props=P,h.__P=e,h.__e=!1,le=_e.__r,Ae=0,M){for(h.state=h.__s,h.__d=!1,le&&le(t),g=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,le&&le(t),g=h.render(h.props,h.state,h.context),h.state=h.__s;while(h.__d&&++Ae<25);h.state=h.__s,h.getChildContext!=null&&(n=Fr(Fr({},n),h.getChildContext())),M&&!v&&h.getSnapshotBeforeUpdate!=null&&(_=h.getSnapshotBeforeUpdate(E,y)),c=rf(e,Fc(Q=g!=null&&g.type===cr&&g.key==null?g.props.children:g)?Q:[Q],t,r,n,i,s,o,c,u,d),h.base=t.__e,t.__u&=-161,h.__h.length&&o.push(h),x&&(h.__E=h.__=null)}catch(de){if(t.__v=null,u||s!=null)if(de.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(Y=s.length;Y--;)Hc(s[Y]);else t.__e=r.__e,t.__k=r.__k;_e.__e(de,t,r)}else s==null&&t.__v==r.__v?(t.__k=r.__k,t.__e=r.__e):c=t.__e=Cg(r.__e,t,r,n,i,s,o,u,d);return(g=_e.diffed)&&g(t),128&t.__u?void 0:c}function of(e,t,r){for(var n=0;n<r.length;n++)Vc(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 Cg(e,t,r,n,i,s,o,c,u){var d,g,h,v,E,y,_,x=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)x===P||c&&e.data===P||(e.data=P);else{if(s=s&&os.call(e.childNodes),x=r.props||Zi,!c&&s!=null)for(x={},d=0;d<e.attributes.length;d++)x[(E=e.attributes[d]).name]=E.value;for(d in x)if(E=x[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;rs(e,d,null,E,i)}}for(d in P)E=P[d],d=="children"?v=E:d=="dangerouslySetInnerHTML"?g=E:d=="value"?y=E:d=="checked"?_=E:c&&typeof E!="function"||x[d]===E||rs(e,d,E,x[d],i);if(g)c||h&&(g.__html===h.__html||g.__html===e.innerHTML)||(e.innerHTML=g.__html),t.__k=[];else if(h&&(e.innerHTML=""),rf(e,Fc(v)?v:[v],t,r,n,M=="foreignObject"?"http://www.w3.org/1999/xhtml":i,s,o,s?s[0]:r.__k&&zn(r,0),c,u),s!=null)for(d=s.length;d--;)Hc(s[d]);c||(d="value",M=="progress"&&y==null?e.removeAttribute("value"):y!==void 0&&(y!==e[d]||M=="progress"&&!y||M=="option"&&y!==x[d])&&rs(e,d,y,x[d],i),d="checked",_!==void 0&&_!==e[d]&&rs(e,d,_,x[d],i))}return e}function Vc(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 sf(e,t,r){var n,i;if(_e.unmount&&_e.unmount(e),(n=e.ref)&&(n.current&&n.current!==e.__e||Vc(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]&&sf(n[i],t,r||typeof e.type!="function");r||Hc(e.__e),e.__c=e.__=e.__e=void 0}function xg(e,t,r){return this.constructor(e,r)}function af(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=[],jc(t,e=(!n&&r||t).__k=$c(cr,null,[e]),i||Zi,Zi,t.namespaceURI,!n&&r?[r]:i?null:t.firstChild?os.call(t.childNodes):null,s,!n&&r?r:i?i.__e:t.firstChild,n,o),of(s,e,o)}os=ef.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}},Jp=0,kc=function(e){return e!=null&&e.constructor==null},ar.prototype.setState=function(e,t){var r;r=this.__s!=null&&this.__s!==this.state?this.__s:this.__s=Fr({},this.state),typeof e=="function"&&(e=e(Fr({},r),this.props)),e&&Fr(r,e),e!=null&&this.__v&&(t&&this._sb.push(t),qp(this))},ar.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),qp(this))},ar.prototype.render=cr,on=[],Qp=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Lc=function(e,t){return e.__v.__b-t.__v.__b},is.__r=0,Zp=/(PointerCapture)$|Capture$/i,Uc=0,Mc=Xp(!1),Bc=Xp(!0),wg=0;var Gc,Nt,Wc,cf,lf=0,yf=[],Ke=_e,uf=Ke.__b,pf=Ke.__r,ff=Ke.diffed,mf=Ke.__c,df=Ke.unmount,hf=Ke.__;function Dg(e,t){Ke.__h&&Ke.__h(Nt,e,lf||t),lf=0;var r=Nt.__H||(Nt.__H={__:[],__h:[]});return e>=r.__.length&&r.__.push({}),r.__[e]}function zc(e,t){var r=Dg(Gc++,7);return Ng(r.__H,t)&&(r.__=e(),r.__H=t,r.__h=e),r.__}function Rg(){for(var e;e=yf.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(ss),e.__H.__h.forEach(Yc),e.__H.__h=[]}catch(t){e.__H.__h=[],Ke.__e(t,e.__v)}}Ke.__b=function(e){Nt=null,uf&&uf(e)},Ke.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),hf&&hf(e,t)},Ke.__r=function(e){pf&&pf(e),Gc=0;var t=(Nt=e.__c).__H;t&&(Wc===Nt?(t.__h=[],Nt.__h=[],t.__.forEach(function(r){r.__N&&(r.__=r.__N),r.i=r.__N=void 0})):(t.__h.forEach(ss),t.__h.forEach(Yc),t.__h=[],Gc=0)),Wc=Nt},Ke.diffed=function(e){ff&&ff(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(yf.push(t)!==1&&cf===Ke.requestAnimationFrame||((cf=Ke.requestAnimationFrame)||Ag)(Rg)),t.__H.__.forEach(function(r){r.i&&(r.__H=r.i),r.i=void 0})),Wc=Nt=null},Ke.__c=function(e,t){t.some(function(r){try{r.__h.forEach(ss),r.__h=r.__h.filter(function(n){return!n.__||Yc(n)})}catch(n){t.some(function(i){i.__h&&(i.__h=[])}),t=[],Ke.__e(n,r.__v)}}),mf&&mf(e,t)},Ke.unmount=function(e){df&&df(e);var t,r=e.__c;r&&r.__H&&(r.__H.__.forEach(function(n){try{ss(n)}catch(i){t=i}}),r.__H=void 0,t&&Ke.__e(t,r.__v))};var gf=typeof requestAnimationFrame=="function";function Ag(e){var t,r=function(){clearTimeout(n),gf&&cancelAnimationFrame(t),setTimeout(e)},n=setTimeout(r,100);gf&&(t=requestAnimationFrame(r))}function ss(e){var t=Nt,r=e.__c;typeof r=="function"&&(e.__c=void 0,r()),Nt=t}function Yc(e){var t=Nt;e.__c=e.__(),Nt=t}function Ng(e,t){return!e||e.length!==t.length||t.some(function(r,n){return r!==e[n]})}var Og=Symbol.for("preact-signals");function Kc(){if(qn>1)qn--;else{for(var e,t=!1;eo!==void 0;){var r=eo;for(eo=void 0,qc++;r!==void 0;){var n=r.o;if(r.o=void 0,r.f&=-3,!(8&r.f)&&Ef(r))try{r.c()}catch(i){t||(e=i,t=!0)}r=n}}if(qc=0,qn--,t)throw e}}var Oe=void 0,eo=void 0,qn=0,qc=0,as=0;function vf(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 Xe(e){this.v=e,this.i=0,this.n=void 0,this.t=void 0}Xe.prototype.brand=Og;Xe.prototype.h=function(){return!0};Xe.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)};Xe.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)}};Xe.prototype.subscribe=function(e){var t=this;return at(function(){var r=t.value,n=Oe;Oe=void 0;try{e(r)}finally{Oe=n}})};Xe.prototype.valueOf=function(){return this.value};Xe.prototype.toString=function(){return this.value+""};Xe.prototype.toJSON=function(){return this.value};Xe.prototype.peek=function(){var e=Oe;Oe=void 0;try{return this.value}finally{Oe=e}};Object.defineProperty(Xe.prototype,"value",{get:function(){var e=vf(this);return e!==void 0&&(e.i=this.i),this.v},set:function(e){if(e!==this.v){if(qc>100)throw new Error("Cycle detected");this.v=e,this.i++,as++,qn++;try{for(var t=this.t;t!==void 0;t=t.x)t.t.N()}finally{Kc()}}}});function Ht(e){return new Xe(e)}function Ef(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 _f(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 Sf(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 Kn(e){Xe.call(this,void 0),this.x=e,this.s=void 0,this.g=as-1,this.f=4}(Kn.prototype=new Xe).h=function(){if(this.f&=-3,1&this.f)return!1;if((36&this.f)==32||(this.f&=-5,this.g===as))return!0;if(this.g=as,this.f|=1,this.i>0&&!Ef(this))return this.f&=-2,!0;var e=Oe;try{_f(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,Sf(this),this.f&=-2,!0};Kn.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)}Xe.prototype.S.call(this,e)};Kn.prototype.U=function(e){if(this.t!==void 0&&(Xe.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)}};Kn.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(Kn.prototype,"value",{get:function(){if(1&this.f)throw new Error("Cycle detected");var e=vf(this);if(this.h(),e!==void 0&&(e.i=this.i),16&this.f)throw this.v;return this.v}});function Xc(e){return new Kn(e)}function wf(e){var t=e.u;if(e.u=void 0,typeof t=="function"){qn++;var r=Oe;Oe=void 0;try{t()}catch(n){throw e.f&=-2,e.f|=8,Jc(e),n}finally{Oe=r,Kc()}}}function Jc(e){for(var t=e.s;t!==void 0;t=t.n)t.S.U(t);e.x=void 0,e.s=void 0,wf(e)}function Pg(e){if(Oe!==this)throw new Error("Out-of-order effect");Sf(this),Oe=e,this.f&=-2,8&this.f&&Jc(this),Kc()}function to(e){this.x=e,this.u=void 0,this.s=void 0,this.o=void 0,this.f=32}to.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()}};to.prototype.S=function(){if(1&this.f)throw new Error("Cycle detected");this.f|=1,this.f&=-9,wf(this),_f(this),qn++;var e=Oe;return Oe=this,Pg.bind(this,e)};to.prototype.N=function(){2&this.f||(this.f|=2,this.o=eo,eo=this)};to.prototype.d=function(){this.f|=8,1&this.f||Jc(this)};function at(e){var t=new to(e);try{t.c()}catch(r){throw t.d(),r}return t.d.bind(t)}var Zc,Qc;function Xn(e,t){_e[e]=t.bind(null,_e[e]||function(){})}function cs(e){Qc&&Qc(),Qc=e&&e.S()}function bf(e){var t=this,r=e.data,n=Mg(r);n.value=r;var i=zc(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},Xc(function(){var o=n.value.value;return o===0?0:o===!0?"":o||""})},[]);return i.value}bf.displayName="_st";Object.defineProperties(Xe.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}});Xn("__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 Xe&&(r||(t.__np=r={}),r[i]=s,n[i]=s.peek())}}e(t)});Xn("__r",function(e,t){cs();var r,n=t.__c;n&&(n.__$f&=-2,(r=n.__$u)===void 0&&(n.__$u=r=function(i){var s;return at(function(){s=this}),s.c=function(){n.__$f|=1,n.setState({})},s}())),Zc=n,cs(r),e(t)});Xn("__e",function(e,t,r,n){cs(),Zc=void 0,e(t,r,n)});Xn("diffed",function(e,t){cs(),Zc=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],g=n[u];d===void 0?(d=Lg(r,u,g,i),s[u]=d):d.o(g,i)}}}e(t)});function Lg(e,t,r,n){var i=t in e&&e.ownerSVGElement===void 0,s=Ht(r);return{o:function(o,c){s.value=o,n=c},d:at(function(){var o=s.value.value;n[t]!==o&&(n[t]=o,i?e[t]=o:o?e.setAttribute(t,o):e.removeAttribute(t))})}}Xn("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)});Xn("__h",function(e,t,r,n){(n<3||n===9)&&(t.__$f|=2),e(t,r,n)});ar.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 Mg(e){return zc(function(){return Ht(e)},[])}var Bg=Object.prototype.toString,Qn=Array.isArray||function(e){return Bg.call(e)==="[object Array]"};function tl(e){return typeof e=="function"}function kg(e){return Qn(e)?"array":typeof e}function el(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function If(e,t){return e!=null&&typeof e=="object"&&t in e}function Ug(e,t){return e!=null&&typeof e!="object"&&e.hasOwnProperty&&e.hasOwnProperty(t)}var Fg=RegExp.prototype.test;function Hg(e,t){return Fg.call(e,t)}var $g=/\S/;function jg(e){return!Hg($g,e)}var Vg={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};function Wg(e){return String(e).replace(/[&<>"'`=\/]/g,function(t){return Vg[t]})}var Gg=/\s*/,Yg=/\s+/,Tf=/\s*=/,zg=/\s*\}/,qg=/#|\^|\/|>|\{|&|=|!/;function Kg(e,t){if(!e)return[];var r=!1,n=[],i=[],s=[],o=!1,c=!1,u="",d=0;function g(){if(o&&!c)for(;s.length;)delete i[s.pop()];else s=[];o=!1,c=!1}var h,v,E;function y(B){if(typeof B=="string"&&(B=B.split(Yg,2)),!Qn(B)||B.length!==2)throw new Error("Invalid tags: "+B);h=new RegExp(el(B[0])+"\\s*"),v=new RegExp("\\s*"+el(B[1])),E=new RegExp("\\s*"+el("}"+B[1]))}y(t||$t.tags);for(var _=new no(e),x,P,M,L,k,G;!_.eos();){if(x=_.pos,M=_.scanUntil(h),M)for(var le=0,Ae=M.length;le<Ae;++le)L=M.charAt(le),jg(L)?(s.push(i.length),u+=L):(c=!0,r=!0,u+=" "),i.push(["text",L,x,x+1]),x+=1,L===`
|
|
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()}var xh=Ee(Nc()),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}},ot=Ee(Tr()),zr=Ee(es()),ba=Ee(Pc()),os,_e,Jp,kc,on,zp,Qp,Lc,Zp,Uc,Mc,Bc,wg,Zi={},ef=[],bg=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,Fc=Array.isArray;function Fr(e,t){for(var r in t)e[r]=t[r];return e}function Hc(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function $c(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?os.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 ns(e,o,n,i,null)}function ns(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??++Jp,__i:-1,__u:0};return i==null&&_e.vnode!=null&&_e.vnode(s),s}function cr(e){return e.children}function ar(e,t){this.props=e,this.context=t}function zn(e,t){if(t==null)return e.__?zn(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"?zn(e):null}function tf(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 tf(e)}}function qp(e){(!e.__d&&(e.__d=!0)&&on.push(e)&&!is.__r++||zp!==_e.debounceRendering)&&((zp=_e.debounceRendering)||Qp)(is)}function is(){var e,t,r,n,i,s,o,c;for(on.sort(Lc);e=on.shift();)e.__d&&(t=on.length,n=void 0,s=(i=(r=e).__v).__e,o=[],c=[],r.__P&&((n=Fr({},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??zn(i),!!(32&i.__u),c),n.__v=i.__v,n.__.__k[n.__i]=n,of(o,n,c),n.__e!=s&&tf(n)),on.length>t&&on.sort(Lc));is.__r=0}function rf(e,t,r,n,i,s,o,c,u,d,g){var h,v,E,y,_,x,P=n&&n.__k||ef,M=t.length;for(u=Ig(r,t,P,u,M),h=0;h<M;h++)(E=r.__k[h])!=null&&(v=E.__i===-1?Zi:P[E.__i]||Zi,E.__i=h,x=Vc(e,E,v,i,s,o,c,u,d,g),y=E.__e,E.ref&&v.ref!=E.ref&&(v.ref&&jc(v.ref,null,E),g.push(E.ref,E.__c||y,E)),_==null&&y!=null&&(_=y),4&E.__u||v.__k===E.__k?u=nf(E,u,e):typeof E.type=="function"&&x!==void 0?u=x:y&&(u=y.nextSibling),E.__u&=-7);return r.__e=_,u}function Ig(e,t,r,n,i){var s,o,c,u,d,g=r.length,h=g,v=0;for(e.__k=new Array(i),s=0;s<i;s++)(o=t[s])!=null&&typeof o!="boolean"&&typeof o!="function"?(u=s+v,(o=e.__k[s]=typeof o=="string"||typeof o=="number"||typeof o=="bigint"||o.constructor==String?ns(null,o,null,null,null):Fc(o)?ns(cr,{children:o},null,null,null):o.constructor===void 0&&o.__b>0?ns(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=Tg(o,r,u,h))!==-1&&(h--,(c=r[d])&&(c.__u|=2)),c==null||c.__v===null?(d==-1&&v--,typeof o.type!="function"&&(o.__u|=4)):d!=u&&(d==u-1?v--:d==u+1?v++:(d>u?v--:v++,o.__u|=4))):e.__k[s]=null;if(h)for(s=0;s<g;s++)(c=r[s])!=null&&(2&c.__u)==0&&(c.__e==n&&(n=zn(c)),sf(c,c));return n}function nf(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=nf(n[i],t,r));return t}e.__e!=t&&(t&&e.type&&!r.contains(t)&&(t=zn(e)),r.insertBefore(e.__e,t||null),t=e.__e);do t=t&&t.nextSibling;while(t!=null&&t.nodeType==8);return t}function Tg(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 Kp(e,t,r){t[0]=="-"?e.setProperty(t,r??""):e[t]=r==null?"":typeof r!="number"||bg.test(t)?r:r+"px"}function rs(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||Kp(e.style,t,"");if(r)for(t in r)n&&r[t]===n[t]||Kp(e.style,t,r[t])}else if(t[0]=="o"&&t[1]=="n")s=t!=(t=t.replace(Zp,"$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=Uc,e.addEventListener(t,s?Bc:Mc,s)):e.removeEventListener(t,s?Bc:Mc,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 Xp(e){return function(t){if(this.l){var r=this.l[t.type+e];if(t.t==null)t.t=Uc++;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 g,h,v,E,y,_,x,P,M,L,k,G,le,Ae,B,Q,Y,J=t.type;if(t.constructor!==void 0)return null;128&r.__u&&(u=!!(32&r.__u),s=[c=t.__e=r.__e]),(g=_e.__b)&&g(t);e:if(typeof J=="function")try{if(P=t.props,M="prototype"in J&&J.prototype.render,L=(g=J.contextType)&&n[g.__c],k=g?L?L.props.value:g.__:n,r.__c?x=(h=t.__c=r.__c).__=h.__E:(M?t.__c=h=new J(P,k):(t.__c=h=new ar(P,k),h.constructor=J,h.render=xg),L&&L.sub(h),h.props=P,h.state||(h.state={}),h.context=k,h.__n=n,v=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=Fr({},h.__s)),Fr(h.__s,J.getDerivedStateFromProps(P,h.__s))),E=h.props,y=h.state,h.__v=t,v)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,k),!h.__e&&(h.shouldComponentUpdate!=null&&h.shouldComponentUpdate(P,h.__s,k)===!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(de){de&&(de.__=t)}),G=0;G<h._sb.length;G++)h.__h.push(h._sb[G]);h._sb=[],h.__h.length&&o.push(h);break e}h.componentWillUpdate!=null&&h.componentWillUpdate(P,h.__s,k),M&&h.componentDidUpdate!=null&&h.__h.push(function(){h.componentDidUpdate(E,y,_)})}if(h.context=k,h.props=P,h.__P=e,h.__e=!1,le=_e.__r,Ae=0,M){for(h.state=h.__s,h.__d=!1,le&&le(t),g=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,le&&le(t),g=h.render(h.props,h.state,h.context),h.state=h.__s;while(h.__d&&++Ae<25);h.state=h.__s,h.getChildContext!=null&&(n=Fr(Fr({},n),h.getChildContext())),M&&!v&&h.getSnapshotBeforeUpdate!=null&&(_=h.getSnapshotBeforeUpdate(E,y)),c=rf(e,Fc(Q=g!=null&&g.type===cr&&g.key==null?g.props.children:g)?Q:[Q],t,r,n,i,s,o,c,u,d),h.base=t.__e,t.__u&=-161,h.__h.length&&o.push(h),x&&(h.__E=h.__=null)}catch(de){if(t.__v=null,u||s!=null)if(de.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(Y=s.length;Y--;)Hc(s[Y]);else t.__e=r.__e,t.__k=r.__k;_e.__e(de,t,r)}else s==null&&t.__v==r.__v?(t.__k=r.__k,t.__e=r.__e):c=t.__e=Cg(r.__e,t,r,n,i,s,o,u,d);return(g=_e.diffed)&&g(t),128&t.__u?void 0:c}function of(e,t,r){for(var n=0;n<r.length;n++)jc(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 Cg(e,t,r,n,i,s,o,c,u){var d,g,h,v,E,y,_,x=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)x===P||c&&e.data===P||(e.data=P);else{if(s=s&&os.call(e.childNodes),x=r.props||Zi,!c&&s!=null)for(x={},d=0;d<e.attributes.length;d++)x[(E=e.attributes[d]).name]=E.value;for(d in x)if(E=x[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;rs(e,d,null,E,i)}}for(d in P)E=P[d],d=="children"?v=E:d=="dangerouslySetInnerHTML"?g=E:d=="value"?y=E:d=="checked"?_=E:c&&typeof E!="function"||x[d]===E||rs(e,d,E,x[d],i);if(g)c||h&&(g.__html===h.__html||g.__html===e.innerHTML)||(e.innerHTML=g.__html),t.__k=[];else if(h&&(e.innerHTML=""),rf(e,Fc(v)?v:[v],t,r,n,M=="foreignObject"?"http://www.w3.org/1999/xhtml":i,s,o,s?s[0]:r.__k&&zn(r,0),c,u),s!=null)for(d=s.length;d--;)Hc(s[d]);c||(d="value",M=="progress"&&y==null?e.removeAttribute("value"):y!==void 0&&(y!==e[d]||M=="progress"&&!y||M=="option"&&y!==x[d])&&rs(e,d,y,x[d],i),d="checked",_!==void 0&&_!==e[d]&&rs(e,d,_,x[d],i))}return e}function jc(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 sf(e,t,r){var n,i;if(_e.unmount&&_e.unmount(e),(n=e.ref)&&(n.current&&n.current!==e.__e||jc(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]&&sf(n[i],t,r||typeof e.type!="function");r||Hc(e.__e),e.__c=e.__=e.__e=void 0}function xg(e,t,r){return this.constructor(e,r)}function af(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=$c(cr,null,[e]),i||Zi,Zi,t.namespaceURI,!n&&r?[r]:i?null:t.firstChild?os.call(t.childNodes):null,s,!n&&r?r:i?i.__e:t.firstChild,n,o),of(s,e,o)}os=ef.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}},Jp=0,kc=function(e){return e!=null&&e.constructor==null},ar.prototype.setState=function(e,t){var r;r=this.__s!=null&&this.__s!==this.state?this.__s:this.__s=Fr({},this.state),typeof e=="function"&&(e=e(Fr({},r),this.props)),e&&Fr(r,e),e!=null&&this.__v&&(t&&this._sb.push(t),qp(this))},ar.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),qp(this))},ar.prototype.render=cr,on=[],Qp=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,Lc=function(e,t){return e.__v.__b-t.__v.__b},is.__r=0,Zp=/(PointerCapture)$|Capture$/i,Uc=0,Mc=Xp(!1),Bc=Xp(!0),wg=0;var Gc,Nt,Wc,cf,lf=0,yf=[],Ke=_e,uf=Ke.__b,pf=Ke.__r,ff=Ke.diffed,mf=Ke.__c,df=Ke.unmount,hf=Ke.__;function Dg(e,t){Ke.__h&&Ke.__h(Nt,e,lf||t),lf=0;var r=Nt.__H||(Nt.__H={__:[],__h:[]});return e>=r.__.length&&r.__.push({}),r.__[e]}function zc(e,t){var r=Dg(Gc++,7);return Ng(r.__H,t)&&(r.__=e(),r.__H=t,r.__h=e),r.__}function Rg(){for(var e;e=yf.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(ss),e.__H.__h.forEach(Yc),e.__H.__h=[]}catch(t){e.__H.__h=[],Ke.__e(t,e.__v)}}Ke.__b=function(e){Nt=null,uf&&uf(e)},Ke.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),hf&&hf(e,t)},Ke.__r=function(e){pf&&pf(e),Gc=0;var t=(Nt=e.__c).__H;t&&(Wc===Nt?(t.__h=[],Nt.__h=[],t.__.forEach(function(r){r.__N&&(r.__=r.__N),r.i=r.__N=void 0})):(t.__h.forEach(ss),t.__h.forEach(Yc),t.__h=[],Gc=0)),Wc=Nt},Ke.diffed=function(e){ff&&ff(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(yf.push(t)!==1&&cf===Ke.requestAnimationFrame||((cf=Ke.requestAnimationFrame)||Ag)(Rg)),t.__H.__.forEach(function(r){r.i&&(r.__H=r.i),r.i=void 0})),Wc=Nt=null},Ke.__c=function(e,t){t.some(function(r){try{r.__h.forEach(ss),r.__h=r.__h.filter(function(n){return!n.__||Yc(n)})}catch(n){t.some(function(i){i.__h&&(i.__h=[])}),t=[],Ke.__e(n,r.__v)}}),mf&&mf(e,t)},Ke.unmount=function(e){df&&df(e);var t,r=e.__c;r&&r.__H&&(r.__H.__.forEach(function(n){try{ss(n)}catch(i){t=i}}),r.__H=void 0,t&&Ke.__e(t,r.__v))};var gf=typeof requestAnimationFrame=="function";function Ag(e){var t,r=function(){clearTimeout(n),gf&&cancelAnimationFrame(t),setTimeout(e)},n=setTimeout(r,100);gf&&(t=requestAnimationFrame(r))}function ss(e){var t=Nt,r=e.__c;typeof r=="function"&&(e.__c=void 0,r()),Nt=t}function Yc(e){var t=Nt;e.__c=e.__(),Nt=t}function Ng(e,t){return!e||e.length!==t.length||t.some(function(r,n){return r!==e[n]})}var Og=Symbol.for("preact-signals");function Kc(){if(qn>1)qn--;else{for(var e,t=!1;eo!==void 0;){var r=eo;for(eo=void 0,qc++;r!==void 0;){var n=r.o;if(r.o=void 0,r.f&=-3,!(8&r.f)&&Ef(r))try{r.c()}catch(i){t||(e=i,t=!0)}r=n}}if(qc=0,qn--,t)throw e}}var Oe=void 0,eo=void 0,qn=0,qc=0,as=0;function vf(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 Xe(e){this.v=e,this.i=0,this.n=void 0,this.t=void 0}Xe.prototype.brand=Og;Xe.prototype.h=function(){return!0};Xe.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)};Xe.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)}};Xe.prototype.subscribe=function(e){var t=this;return at(function(){var r=t.value,n=Oe;Oe=void 0;try{e(r)}finally{Oe=n}})};Xe.prototype.valueOf=function(){return this.value};Xe.prototype.toString=function(){return this.value+""};Xe.prototype.toJSON=function(){return this.value};Xe.prototype.peek=function(){var e=Oe;Oe=void 0;try{return this.value}finally{Oe=e}};Object.defineProperty(Xe.prototype,"value",{get:function(){var e=vf(this);return e!==void 0&&(e.i=this.i),this.v},set:function(e){if(e!==this.v){if(qc>100)throw new Error("Cycle detected");this.v=e,this.i++,as++,qn++;try{for(var t=this.t;t!==void 0;t=t.x)t.t.N()}finally{Kc()}}}});function Ht(e){return new Xe(e)}function Ef(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 _f(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 Sf(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 Kn(e){Xe.call(this,void 0),this.x=e,this.s=void 0,this.g=as-1,this.f=4}(Kn.prototype=new Xe).h=function(){if(this.f&=-3,1&this.f)return!1;if((36&this.f)==32||(this.f&=-5,this.g===as))return!0;if(this.g=as,this.f|=1,this.i>0&&!Ef(this))return this.f&=-2,!0;var e=Oe;try{_f(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,Sf(this),this.f&=-2,!0};Kn.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)}Xe.prototype.S.call(this,e)};Kn.prototype.U=function(e){if(this.t!==void 0&&(Xe.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)}};Kn.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(Kn.prototype,"value",{get:function(){if(1&this.f)throw new Error("Cycle detected");var e=vf(this);if(this.h(),e!==void 0&&(e.i=this.i),16&this.f)throw this.v;return this.v}});function Xc(e){return new Kn(e)}function wf(e){var t=e.u;if(e.u=void 0,typeof t=="function"){qn++;var r=Oe;Oe=void 0;try{t()}catch(n){throw e.f&=-2,e.f|=8,Jc(e),n}finally{Oe=r,Kc()}}}function Jc(e){for(var t=e.s;t!==void 0;t=t.n)t.S.U(t);e.x=void 0,e.s=void 0,wf(e)}function Pg(e){if(Oe!==this)throw new Error("Out-of-order effect");Sf(this),Oe=e,this.f&=-2,8&this.f&&Jc(this),Kc()}function to(e){this.x=e,this.u=void 0,this.s=void 0,this.o=void 0,this.f=32}to.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()}};to.prototype.S=function(){if(1&this.f)throw new Error("Cycle detected");this.f|=1,this.f&=-9,wf(this),_f(this),qn++;var e=Oe;return Oe=this,Pg.bind(this,e)};to.prototype.N=function(){2&this.f||(this.f|=2,this.o=eo,eo=this)};to.prototype.d=function(){this.f|=8,1&this.f||Jc(this)};function at(e){var t=new to(e);try{t.c()}catch(r){throw t.d(),r}return t.d.bind(t)}var Zc,Qc;function Xn(e,t){_e[e]=t.bind(null,_e[e]||function(){})}function cs(e){Qc&&Qc(),Qc=e&&e.S()}function bf(e){var t=this,r=e.data,n=Mg(r);n.value=r;var i=zc(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},Xc(function(){var o=n.value.value;return o===0?0:o===!0?"":o||""})},[]);return i.value}bf.displayName="_st";Object.defineProperties(Xe.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}});Xn("__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 Xe&&(r||(t.__np=r={}),r[i]=s,n[i]=s.peek())}}e(t)});Xn("__r",function(e,t){cs();var r,n=t.__c;n&&(n.__$f&=-2,(r=n.__$u)===void 0&&(n.__$u=r=function(i){var s;return at(function(){s=this}),s.c=function(){n.__$f|=1,n.setState({})},s}())),Zc=n,cs(r),e(t)});Xn("__e",function(e,t,r,n){cs(),Zc=void 0,e(t,r,n)});Xn("diffed",function(e,t){cs(),Zc=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],g=n[u];d===void 0?(d=Lg(r,u,g,i),s[u]=d):d.o(g,i)}}}e(t)});function Lg(e,t,r,n){var i=t in e&&e.ownerSVGElement===void 0,s=Ht(r);return{o:function(o,c){s.value=o,n=c},d:at(function(){var o=s.value.value;n[t]!==o&&(n[t]=o,i?e[t]=o:o?e.setAttribute(t,o):e.removeAttribute(t))})}}Xn("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)});Xn("__h",function(e,t,r,n){(n<3||n===9)&&(t.__$f|=2),e(t,r,n)});ar.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 Mg(e){return zc(function(){return Ht(e)},[])}var Bg=Object.prototype.toString,Qn=Array.isArray||function(e){return Bg.call(e)==="[object Array]"};function tl(e){return typeof e=="function"}function kg(e){return Qn(e)?"array":typeof e}function el(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function If(e,t){return e!=null&&typeof e=="object"&&t in e}function Ug(e,t){return e!=null&&typeof e!="object"&&e.hasOwnProperty&&e.hasOwnProperty(t)}var Fg=RegExp.prototype.test;function Hg(e,t){return Fg.call(e,t)}var $g=/\S/;function Vg(e){return!Hg($g,e)}var jg={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};function Wg(e){return String(e).replace(/[&<>"'`=\/]/g,function(t){return jg[t]})}var Gg=/\s*/,Yg=/\s+/,Tf=/\s*=/,zg=/\s*\}/,qg=/#|\^|\/|>|\{|&|=|!/;function Kg(e,t){if(!e)return[];var r=!1,n=[],i=[],s=[],o=!1,c=!1,u="",d=0;function g(){if(o&&!c)for(;s.length;)delete i[s.pop()];else s=[];o=!1,c=!1}var h,v,E;function y(B){if(typeof B=="string"&&(B=B.split(Yg,2)),!Qn(B)||B.length!==2)throw new Error("Invalid tags: "+B);h=new RegExp(el(B[0])+"\\s*"),v=new RegExp("\\s*"+el(B[1])),E=new RegExp("\\s*"+el("}"+B[1]))}y(t||$t.tags);for(var _=new no(e),x,P,M,L,k,G;!_.eos();){if(x=_.pos,M=_.scanUntil(h),M)for(var le=0,Ae=M.length;le<Ae;++le)L=M.charAt(le),Vg(L)?(s.push(i.length),u+=L):(c=!0,r=!0,u+=" "),i.push(["text",L,x,x+1]),x+=1,L===`
|
|
17
17
|
`&&(g(),u="",d=0,r=!1);if(!_.scan(h))break;if(o=!0,P=_.scan(qg)||"name",_.scan(Gg),P==="="?(M=_.scanUntil(Tf),_.scan(Tf),_.scanUntil(v)):P==="{"?(M=_.scanUntil(E),_.scan(zg),_.scanUntil(v),P="&"):M=_.scanUntil(v),!_.scan(v))throw new Error("Unclosed tag at "+_.pos);if(P==">"?k=[P,M,x,_.pos,u,d,r]:k=[P,M,x,_.pos],d++,i.push(k),P==="#"||P==="^")n.push(k);else if(P==="/"){if(G=n.pop(),!G)throw new Error('Unopened section "'+M+'" at '+x);if(G[1]!==M)throw new Error('Unclosed section "'+G[1]+'" at '+x)}else P==="name"||P==="{"||P==="&"?c=!0:P==="="&&y(M)}if(g(),G=n.pop(),G)throw new Error('Unclosed section "'+G[1]+'" at '+_.pos);return Jg(Xg(i))}function Xg(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 Jg(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 no(e){this.string=e,this.tail=e,this.pos=0}no.prototype.eos=function(){return this.tail===""};no.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};no.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 Jn(e,t){this.view=e,this.cache={".":this.view},this.parent=t}Jn.prototype.push=function(e){return new Jn(e,this)};Jn.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=If(i,s[o])||Ug(i,s[o])),i=i[s[o++]];else i=n.view[e],c=If(n.view,e);if(c){r=i;break}n=n.parent}t[e]=r}return tl(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||$t.tags).join(":"),i=typeof r<"u",s=i?r.get(n):void 0;return s==null&&(s=Kg(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 Jn?t:new Jn(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,g=e.length;d<g;++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(Qn(c))for(var d=0,g=c.length;d<g;++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(tl(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||Qn(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=tl(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 g=this.parse(d,i);return this.renderTokens(g,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)||$t.escape,i=t.lookup(e[1]);if(i!=null)return typeof i=="number"&&n===$t.escape?String(i):n(i)};Et.prototype.rawValue=function(e){return e[1]};Et.prototype.getConfigTags=function(e){return Qn(e)?e:e&&typeof e=="object"?e.tags:void 0};Et.prototype.getConfigEscape=function(e){if(e&&typeof e=="object"&&!Qn(e))return e.escape};var $t={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){ro.templateCache=e},get templateCache(){return ro.templateCache}},ro=new Et;$t.clearCache=function(){return ro.clearCache()};$t.parse=function(e,t){return ro.parse(e,t)};$t.render=function(e,t,r,n){if(typeof e!="string")throw new TypeError('Invalid template! Template should be a "string" but "'+kg(e)+'" was given as the first argument for mustache#render(template, view, partials)');return ro.render(e,t,r,n)};$t.escape=Wg;$t.Scanner=no;$t.Context=Jn;$t.Writer=Et;var _t=$t,Cf=Ee(rl()),Ot=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=Ee(Df());function Zn(e){return il.default.createInstance({name:"lc",storeName:e,driver:il.default.LOCALSTORAGE})}var Hr=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}},tt=class extends Hr{static storeName="ses";static{this.storage=Zn(this.storeName)}},xe=class extends Hr{static storeName="usr";static{this.storage=Zn(this.storeName)}},pt=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}},ce=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 pt(e)}},Qg="?from=cooee";function oo(){return!!window.Shopify}function Rf(){if(oo())return window.Shopify.shop?.split(".")?.[0]}function Af(e){let t=(e.includes("://")?new URL(e).pathname:e).match(/\/products\/([^/]+?)(?:\.html)?$/);return t?t[1]:null}function ei(){return window.Shopify?.routes?.root??"/"}function sn(e){return ei()+e+Qg}var ti=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}},ue=class Mh{static CURRENT;token;items;total_price;original_total_price;currency;item_count;attributes;lock=new ti;constructor(){}static getCurrent(){return this.CURRENT||(this.CURRENT=new Mh),this.CURRENT}async getNormalisedCart(t){await this.fetchCartFromShopify(t);let r=this.convertToCooeeCart();return t&&await xe.set(oe.CURRENT_CART,r),r}async addCooeeAttributes(){await this.lock.acquire();let t=await tt.get(oe.ID),r=await xe.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=sn("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,ce.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=sn("cart.js"),n=await(await fetch(r)).json();this.update(n)}},Qm=Ee(ni()),Nf=Object.prototype.toString;function an(e){switch(Nf.call(e)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return lr(e,Error)}}function ii(e,t){return Nf.call(e)===`[object ${t}]`}function ps(e){return ii(e,"ErrorEvent")}function fs(e){return ii(e,"DOMError")}function ol(e){return ii(e,"DOMException")}function St(e){return ii(e,"String")}function oi(e){return typeof e=="object"&&e!==null&&"__sentry_template_string__"in e&&"__sentry_template_values__"in e}function cn(e){return e===null||oi(e)||typeof e!="object"&&typeof e!="function"}function Qt(e){return ii(e,"Object")}function ln(e){return typeof Event<"u"&&lr(e,Event)}function sl(e){return typeof Element<"u"&&lr(e,Element)}function al(e){return ii(e,"RegExp")}function Cr(e){return!!(e&&e.then&&typeof e.then=="function")}function cl(e){return Qt(e)&&"nativeEvent"in e&&"preventDefault"in e&&"stopPropagation"in e}function lr(e,t){try{return e instanceof t}catch{return!1}}function so(e){return!!(typeof e=="object"&&e!==null&&(e.__isVue||e._isVue))}function ur(e,t=0){return typeof e!="string"||t===0||e.length<=t?e:`${e.slice(0,t)}...`}function ms(e,t){if(!Array.isArray(e))return"";let r=[];for(let n=0;n<e.length;n++){let i=e[n];try{so(i)?r.push("[VueViewModel]"):r.push(String(i))}catch{r.push("[value cannot be serialized]")}}return r.join(t)}function Of(e,t,r=!1){return St(e)?al(t)?t.test(e):St(t)?r?e===t:e.includes(t):!1:!1}function si(e,t=[],r=!1){return t.some(n=>Of(e,n,r))}function ul(e,t,r=250,n,i,s,o){if(!s.exception||!s.exception.values||!o||!lr(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=ey(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(lr(n[i],Error)){Pf(o,c);let d=e(t,n[i]),g=u.length;Lf(d,i,g,c),u=ll(e,t,r,n[i],i,[d,...u],d,g)}return Array.isArray(n.errors)&&n.errors.forEach((d,g)=>{if(lr(d,Error)){Pf(o,c);let h=e(t,d),v=u.length;Lf(h,`errors[${g}]`,v,c),u=ll(e,t,r,d,i,[h,...u],h,v)}}),u}function Pf(e,t){e.mechanism=e.mechanism||{type:"generic",handled:!0},e.mechanism=ee(w(w({},e.mechanism),e.type==="AggregateError"&&{is_exception_group:!0}),{exception_id:t})}function Lf(e,t,r,n){e.mechanism=e.mechanism||{type:"generic",handled:!0},e.mechanism=ee(w({},e.mechanism),{type:"chained",source:t,exception_id:r,parent_id:n})}function ey(e,t){return e.map(r=>(r.value&&(r.value=ur(r.value,t)),r))}var jt="8.18.0",te=globalThis;function ai(e,t,r){let n=r||te,i=n.__SENTRY__=n.__SENTRY__||{},s=i[jt]=i[jt]||{};return s[e]||(s[e]=t())}var pl=te,ty=80;function ao(e,t={}){if(!e)return"<unknown>";try{let r=e,n=5,i=[],s=0,o=0,c=" > ",u=c.length,d,g=Array.isArray(t)?t:t.keyAttrs,h=!Array.isArray(t)&&t.maxStringLength||ty;for(;r&&s++<n&&(d=ry(r,g),!(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 ry(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 pr=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,ny="Sentry Logger ",co=["debug","info","warn","error","log","assert","trace"],ci={};function li(e){if(!("console"in te))return e();let t=te.console,r={},n=Object.keys(ci);n.forEach(i=>{let s=ci[i];r[i]=t[i],t[i]=s});try{return e()}finally{n.forEach(i=>{t[i]=r[i]})}}function iy(){let e=!1,t={enable:()=>{e=!0},disable:()=>{e=!1},isEnabled:()=>e};return pr?co.forEach(r=>{t[r]=(...n)=>{e&&li(()=>{te.console[r](`${ny}[${r}]:`,...n)})}}):co.forEach(r=>{t[r]=()=>{}}),t}var K=iy(),oy=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function sy(e){return e==="http"||e==="https"}function fr(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 Mf(e){let t=oy.exec(e);if(!t){li(()=>{console.error(`Invalid Sentry Dsn: ${e}`)});return}let[r,n,i="",s="",o="",c=""]=t.slice(1),u="",d=c,g=d.split("/");if(g.length>1&&(u=g.slice(0,-1).join("/"),d=g.pop()),d){let h=d.match(/^\d+/);h&&(d=h[0])}return Bf({host:s,pass:i,path:u,projectId:d,port:o,protocol:r,publicKey:n})}function Bf(e){return{protocol:e.protocol,publicKey:e.publicKey||"",pass:e.pass||"",host:e.host,port:e.port||"",path:e.path||"",projectId:e.projectId}}function ay(e){if(!pr)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+$/)?sy(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 ds(e){let t=typeof e=="string"?Mf(e):Bf(e);if(!(!t||!ay(t)))return t}var ft=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 Me(e,t,r){if(!(t in e))return;let n=e[t],i=r(n);typeof i=="function"&&hs(i,n),e[t]=i}function wt(e,t,r){try{Object.defineProperty(e,t,{value:r,writable:!0,configurable:!0})}catch{pr&&K.log(`Failed to add non-enumerable property "${t}" to object`,e)}}function hs(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 gs(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:kf(e.target),currentTarget:kf(e.currentTarget)},Uf(e));return typeof CustomEvent<"u"&&lr(e,CustomEvent)&&(t.detail=e.detail),t}else return e}function kf(e){try{return sl(e)?ao(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(gs(e));r.sort();let n=r[0];if(!n)return"[object has no keys]";if(n.length>=t)return ur(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:ur(s,t)}return""}function Je(e){return dl(e,new Map)}function dl(e,t){if(cy(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 cy(e){if(!Qt(e))return!1;try{let t=Object.getPrototypeOf(e).constructor.name;return!t||t==="Object"}catch{return!0}}var mr="?",Ff=/\(error: (.*)\)/,Hf=/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=Ff.test(u)?u.replace(Ff,"$1"):u;if(!d.match(/\S*Error: /)){for(let g of t){let h=g(d);if(h){s.push(h);break}}if(s.length>=50+i)break}}return $f(s.slice(i))}}function $f(e){if(!e.length)return[];let t=Array.from(e);return/sentryWrapped/.test(ys(t).function||"")&&t.pop(),t.reverse(),Hf.test(ys(t).function||"")&&(t.pop(),Hf.test(ys(t).function||"")&&t.pop()),t.slice(0,50).map(r=>ee(w({},r),{filename:r.filename||ys(t).filename,function:r.function||mr}))}function ys(e){return e[e.length-1]||{}}var yl="<anonymous>";function
|
|
19
|
+
`)};Et.prototype.renderPartial=function(e,t,r,n){if(r){var i=this.getConfigTags(n),s=tl(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 g=this.parse(d,i);return this.renderTokens(g,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)||$t.escape,i=t.lookup(e[1]);if(i!=null)return typeof i=="number"&&n===$t.escape?String(i):n(i)};Et.prototype.rawValue=function(e){return e[1]};Et.prototype.getConfigTags=function(e){return Qn(e)?e:e&&typeof e=="object"?e.tags:void 0};Et.prototype.getConfigEscape=function(e){if(e&&typeof e=="object"&&!Qn(e))return e.escape};var $t={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){ro.templateCache=e},get templateCache(){return ro.templateCache}},ro=new Et;$t.clearCache=function(){return ro.clearCache()};$t.parse=function(e,t){return ro.parse(e,t)};$t.render=function(e,t,r,n){if(typeof e!="string")throw new TypeError('Invalid template! Template should be a "string" but "'+kg(e)+'" was given as the first argument for mustache#render(template, view, partials)');return ro.render(e,t,r,n)};$t.escape=Wg;$t.Scanner=no;$t.Context=Jn;$t.Writer=Et;var _t=$t,Cf=Ee(rl()),Ot=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=Ee(Df());function Zn(e){return il.default.createInstance({name:"lc",storeName:e,driver:il.default.LOCALSTORAGE})}var Hr=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}},tt=class extends Hr{static storeName="ses";static{this.storage=Zn(this.storeName)}},xe=class extends Hr{static storeName="usr";static{this.storage=Zn(this.storeName)}},pt=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}},ce=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 pt(e)}},Qg="?from=cooee";function oo(){return!!window.Shopify}function Rf(){if(oo())return window.Shopify.shop?.split(".")?.[0]}function Af(e){let t=(e.includes("://")?new URL(e).pathname:e).match(/\/products\/([^/]+?)(?:\.html)?$/);return t?t[1]:null}function ei(){return window.Shopify?.routes?.root??"/"}function sn(e){return ei()+e+Qg}var ti=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}},ue=class Mh{static CURRENT;token;items;total_price;original_total_price;currency;item_count;attributes;lock=new ti;constructor(){}static getCurrent(){return this.CURRENT||(this.CURRENT=new Mh),this.CURRENT}async getNormalisedCart(t){await this.fetchCartFromShopify(t);let r=this.convertToCooeeCart();return t&&await xe.set(oe.CURRENT_CART,r),r}async addCooeeAttributes(){await this.lock.acquire();let t=await tt.get(oe.ID),r=await xe.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=sn("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,ce.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=sn("cart.js"),n=await(await fetch(r)).json();this.update(n)}},Qm=Ee(ni()),Nf=Object.prototype.toString;function an(e){switch(Nf.call(e)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return lr(e,Error)}}function ii(e,t){return Nf.call(e)===`[object ${t}]`}function ps(e){return ii(e,"ErrorEvent")}function fs(e){return ii(e,"DOMError")}function ol(e){return ii(e,"DOMException")}function St(e){return ii(e,"String")}function oi(e){return typeof e=="object"&&e!==null&&"__sentry_template_string__"in e&&"__sentry_template_values__"in e}function cn(e){return e===null||oi(e)||typeof e!="object"&&typeof e!="function"}function Qt(e){return ii(e,"Object")}function ln(e){return typeof Event<"u"&&lr(e,Event)}function sl(e){return typeof Element<"u"&&lr(e,Element)}function al(e){return ii(e,"RegExp")}function Cr(e){return!!(e&&e.then&&typeof e.then=="function")}function cl(e){return Qt(e)&&"nativeEvent"in e&&"preventDefault"in e&&"stopPropagation"in e}function lr(e,t){try{return e instanceof t}catch{return!1}}function so(e){return!!(typeof e=="object"&&e!==null&&(e.__isVue||e._isVue))}function ur(e,t=0){return typeof e!="string"||t===0||e.length<=t?e:`${e.slice(0,t)}...`}function ms(e,t){if(!Array.isArray(e))return"";let r=[];for(let n=0;n<e.length;n++){let i=e[n];try{so(i)?r.push("[VueViewModel]"):r.push(String(i))}catch{r.push("[value cannot be serialized]")}}return r.join(t)}function Of(e,t,r=!1){return St(e)?al(t)?t.test(e):St(t)?r?e===t:e.includes(t):!1:!1}function si(e,t=[],r=!1){return t.some(n=>Of(e,n,r))}function ul(e,t,r=250,n,i,s,o){if(!s.exception||!s.exception.values||!o||!lr(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=ey(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(lr(n[i],Error)){Pf(o,c);let d=e(t,n[i]),g=u.length;Lf(d,i,g,c),u=ll(e,t,r,n[i],i,[d,...u],d,g)}return Array.isArray(n.errors)&&n.errors.forEach((d,g)=>{if(lr(d,Error)){Pf(o,c);let h=e(t,d),v=u.length;Lf(h,`errors[${g}]`,v,c),u=ll(e,t,r,d,i,[h,...u],h,v)}}),u}function Pf(e,t){e.mechanism=e.mechanism||{type:"generic",handled:!0},e.mechanism=ee(w(w({},e.mechanism),e.type==="AggregateError"&&{is_exception_group:!0}),{exception_id:t})}function Lf(e,t,r,n){e.mechanism=e.mechanism||{type:"generic",handled:!0},e.mechanism=ee(w({},e.mechanism),{type:"chained",source:t,exception_id:r,parent_id:n})}function ey(e,t){return e.map(r=>(r.value&&(r.value=ur(r.value,t)),r))}var Vt="8.18.0",te=globalThis;function ai(e,t,r){let n=r||te,i=n.__SENTRY__=n.__SENTRY__||{},s=i[Vt]=i[Vt]||{};return s[e]||(s[e]=t())}var pl=te,ty=80;function ao(e,t={}){if(!e)return"<unknown>";try{let r=e,n=5,i=[],s=0,o=0,c=" > ",u=c.length,d,g=Array.isArray(t)?t:t.keyAttrs,h=!Array.isArray(t)&&t.maxStringLength||ty;for(;r&&s++<n&&(d=ry(r,g),!(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 ry(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 pr=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,ny="Sentry Logger ",co=["debug","info","warn","error","log","assert","trace"],ci={};function li(e){if(!("console"in te))return e();let t=te.console,r={},n=Object.keys(ci);n.forEach(i=>{let s=ci[i];r[i]=t[i],t[i]=s});try{return e()}finally{n.forEach(i=>{t[i]=r[i]})}}function iy(){let e=!1,t={enable:()=>{e=!0},disable:()=>{e=!1},isEnabled:()=>e};return pr?co.forEach(r=>{t[r]=(...n)=>{e&&li(()=>{te.console[r](`${ny}[${r}]:`,...n)})}}):co.forEach(r=>{t[r]=()=>{}}),t}var K=iy(),oy=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function sy(e){return e==="http"||e==="https"}function fr(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 Mf(e){let t=oy.exec(e);if(!t){li(()=>{console.error(`Invalid Sentry Dsn: ${e}`)});return}let[r,n,i="",s="",o="",c=""]=t.slice(1),u="",d=c,g=d.split("/");if(g.length>1&&(u=g.slice(0,-1).join("/"),d=g.pop()),d){let h=d.match(/^\d+/);h&&(d=h[0])}return Bf({host:s,pass:i,path:u,projectId:d,port:o,protocol:r,publicKey:n})}function Bf(e){return{protocol:e.protocol,publicKey:e.publicKey||"",pass:e.pass||"",host:e.host,port:e.port||"",path:e.path||"",projectId:e.projectId}}function ay(e){if(!pr)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+$/)?sy(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 ds(e){let t=typeof e=="string"?Mf(e):Bf(e);if(!(!t||!ay(t)))return t}var ft=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 Me(e,t,r){if(!(t in e))return;let n=e[t],i=r(n);typeof i=="function"&&hs(i,n),e[t]=i}function wt(e,t,r){try{Object.defineProperty(e,t,{value:r,writable:!0,configurable:!0})}catch{pr&&K.log(`Failed to add non-enumerable property "${t}" to object`,e)}}function hs(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 gs(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:kf(e.target),currentTarget:kf(e.currentTarget)},Uf(e));return typeof CustomEvent<"u"&&lr(e,CustomEvent)&&(t.detail=e.detail),t}else return e}function kf(e){try{return sl(e)?ao(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(gs(e));r.sort();let n=r[0];if(!n)return"[object has no keys]";if(n.length>=t)return ur(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:ur(s,t)}return""}function Je(e){return dl(e,new Map)}function dl(e,t){if(cy(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 cy(e){if(!Qt(e))return!1;try{let t=Object.getPrototypeOf(e).constructor.name;return!t||t==="Object"}catch{return!0}}var mr="?",Ff=/\(error: (.*)\)/,Hf=/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=Ff.test(u)?u.replace(Ff,"$1"):u;if(!d.match(/\S*Error: /)){for(let g of t){let h=g(d);if(h){s.push(h);break}}if(s.length>=50+i)break}}return $f(s.slice(i))}}function $f(e){if(!e.length)return[];let t=Array.from(e);return/sentryWrapped/.test(ys(t).function||"")&&t.pop(),t.reverse(),Hf.test(ys(t).function||"")&&(t.pop(),Hf.test(ys(t).function||"")&&t.pop()),t.slice(0,50).map(r=>ee(w({},r),{filename:r.filename||ys(t).filename,function:r.function||mr}))}function ys(e){return e[e.length-1]||{}}var yl="<anonymous>";function jt(e){try{return!e||typeof e!="function"?yl:e.name||yl}catch{return yl}}function vs(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 Es={},Vf={};function bt(e,t){Es[e]=Es[e]||[],Es[e].push(t)}function It(e,t){Vf[e]||(t(),Vf[e]=!0)}function Qe(e,t){let r=e&&Es[e];if(r)for(let n of r)try{n(t)}catch(i){pr&&K.error(`Error while triggering instrumentation handler.
|
|
21
21
|
Type: ${e}
|
|
22
|
-
Name: ${
|
|
23
|
-
Error:`,i)}}function El(e){let t="console";bt(t,e),It(t,ly)}function ly(){"console"in te&&co.forEach(function(e){e in te.console&&Me(te.console,e,function(t){return ci[e]=t,function(...r){Qe("console",{args:r,level:e});let n=ci[e];n&&n.apply(te.console,r)}})})}var _l=te;function
|
|
22
|
+
Name: ${jt(n)}
|
|
23
|
+
Error:`,i)}}function El(e){let t="console";bt(t,e),It(t,ly)}function ly(){"console"in te&&co.forEach(function(e){e in te.console&&Me(te.console,e,function(t){return ci[e]=t,function(...r){Qe("console",{args:r,level:e});let n=ci[e];n&&n.apply(te.console,r)}})})}var _l=te;function jf(){if(!("fetch"in _l))return!1;try{return new Headers,new Request("http://www.example.com"),new Response,!0}catch{return!1}}function lo(e){return e&&/^function\s+\w+\(\)\s+\{\s+\[native code\]\s+\}$/.test(e.toString())}function Sl(){if(typeof EdgeRuntime=="string")return!0;if(!jf())return!1;if(lo(_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=lo(r.contentWindow.fetch)),t.head.removeChild(r)}catch(r){pr&&K.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",r)}return e}var Wf=1e3;function dr(){return Date.now()/Wf}function uy(){let{performance:e}=te;if(!e||!e.now)return dr;let t=Date.now()-e.now(),r=e.timeOrigin==null?t:e.timeOrigin;return()=>(r+e.now())/Wf}var Pt=uy(),uo,py=(()=>{let{performance:e}=te;if(!e||!e.now){uo="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?(uo="timeOrigin",e.timeOrigin):(uo="navigationStart",o):(uo="dateNow",n)})();function bl(e){let t="fetch";bt(t,e),It(t,fy)}function fy(){Sl()&&Me(te,"fetch",function(e){return function(...t){let{method:r,url:n}=my(t),i={args:t,fetchData:{method:r,url:n},startTimestamp:Pt()*1e3};Qe("fetch",w({},i));let s=new Error().stack;return e.apply(te,t).then(o=>{let c=ee(w({},i),{endTimestamp:Pt()*1e3,response:o});return Qe("fetch",c),o},o=>{let c=ee(w({},i),{endTimestamp:Pt()*1e3,error:o});throw Qe("fetch",c),an(o)&&o.stack===void 0&&(o.stack=s,wt(o,"framesToPop",1)),o})}})}function wl(e,t){return!!e&&typeof e=="object"&&!!e[t]}function Gf(e){return typeof e=="string"?e:e?wl(e,"url")?e.url:e.toString?e.toString():"":""}function my(e){if(e.length===0)return{method:"GET",url:""};if(e.length===2){let[r,n]=e;return{url:Gf(r),method:wl(n,"method")?String(n.method).toUpperCase():"GET"}}let t=e[0];return{url:Gf(t),method:wl(t,"method")?String(t.method).toUpperCase():"GET"}}var _s=null;function Il(e){let t="error";bt(t,e),It(t,dy)}function dy(){_s=te.onerror,te.onerror=function(e,t,r,n,i){return Qe("error",{column:n,error:i,line:r,msg:e,url:t}),_s&&!_s.__SENTRY_LOADER__?_s.apply(this,arguments):!1},te.onerror.__SENTRY_INSTRUMENTED__=!0}var Ss=null;function Tl(e){let t="unhandledrejection";bt(t,e),It(t,hy)}function hy(){Ss=te.onunhandledrejection,te.onunhandledrejection=function(e){return Qe("unhandledrejection",e),Ss&&!Ss.__SENTRY_LOADER__?Ss.apply(this,arguments):!0},te.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}function Cl(){return"npm"}function Yf(){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 rt(){let e=te,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 zf(e){return e.exception&&e.exception.values?e.exception.values[0]:void 0}function Zt(e){let{message:t,event_id:r}=e;if(t)return t;let n=zf(e);return n?n.type&&n.value?`${n.type}: ${n.value}`:n.type||n.value||r||"<unknown>":r||"<unknown>"}function ui(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 xr(e,t){let r=zf(e);if(!r)return;let n={type:"generic",handled:!0},i=r.mechanism;if(r.mechanism=w(w(w({},n),i),t),t&&"data"in t){let s=w(w({},i&&i.data),t.data);r.mechanism.data=s}}function ws(e){if(e&&e.__sentry_captured__)return!0;try{wt(e,"__sentry_captured__",!0)}catch{}return!1}function bs(e){return Array.isArray(e)?e:[e]}function er(e,t=100,r=1/0){try{return xl("",e,t,r)}catch(n){return{ERROR:`**non-serializable** (${n})`}}}function Is(e,t=3,r=100*1024){let n=er(e,t);return Ey(n)>r?Is(e,t-1,r):n}function xl(e,t,r=1/0,n=1/0,i=Yf()){let[s,o]=i;if(t==null||["number","boolean","string"].includes(typeof t)&&!Number.isNaN(t))return t;let c=gy(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 g=Array.isArray(t)?[]:{},h=0,v=gs(t);for(let E in v){if(!Object.prototype.hasOwnProperty.call(v,E))continue;if(h>=n){g[E]="[MaxProperties ~]";break}let y=v[E];g[E]=xl(E,y,u-1,n,i),h++}return o(t),g}function gy(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(so(t))return"[VueViewModel]";if(cl(t))return"[SyntheticEvent]";if(typeof t=="number"&&t!==t)return"[NaN]";if(typeof t=="function")return`[Function: ${jt(t)}]`;if(typeof t=="symbol")return`[${String(t)}]`;if(typeof t=="bigint")return`[BigInt: ${String(t)}]`;let r=yy(t);return/^HTML(\w*)Element$/.test(r)?`[HTMLElement: ${r}]`:`[object ${r}]`}catch(r){return`**non-serializable** (${r})`}}function yy(e){let t=Object.getPrototypeOf(e);return t?t.constructor.name:"null prototype"}function vy(e){return~-encodeURI(e).split(/%..|./).length}function Ey(e){return vy(JSON.stringify(e))}var Dr;(function(e){e[e.PENDING=0]="PENDING";let t=1;e[e.RESOLVED=t]="RESOLVED";let r=2;e[e.REJECTED=r]="REJECTED"})(Dr||(Dr={}));function Wt(e){return new tr(t=>{t(e)})}function $r(e){return new tr((t,r)=>{r(e)})}var tr=class Yn{constructor(t){Yn.prototype.__init.call(this),Yn.prototype.__init2.call(this),Yn.prototype.__init3.call(this),Yn.prototype.__init4.call(this),this._state=Dr.PENDING,this._handlers=[];try{t(this._resolve,this._reject)}catch(r){this._reject(r)}}then(t,r){return new Yn((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 Yn((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(Dr.RESOLVED,t)}}__init2(){this._reject=t=>{this._setResult(Dr.REJECTED,t)}}__init3(){this._setResult=(t,r)=>{if(this._state===Dr.PENDING){if(Cr(r)){r.then(this._resolve,this._reject);return}this._state=t,this._value=r,this._executeHandlers()}}}__init4(){this._executeHandlers=()=>{if(this._state===Dr.PENDING)return;let t=this._handlers.slice();this._handlers=[],t.forEach(r=>{r[0]||(this._state===Dr.RESOLVED&&r[1](this._value),this._state===Dr.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 $r(new ft("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 tr((c,u)=>{let d=t.length;if(!d)return c(!0);let g=setTimeout(()=>{o&&o>0&&c(!1)},o);t.forEach(h=>{Wt(h).then(()=>{--d||(clearTimeout(g),c(!0))},u)})})}return{$:t,add:i,drain:s}}function po(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 qf=["fatal","error","warning","log","info","debug"];function Rl(e){return e==="warn"?"warning":qf.includes(e)?e:"log"}var Xf="sentry-",Jf=/^sentry-/;function Al(e){let t=Qf(e);if(!t)return;let r=Object.entries(t).reduce((n,[i,s])=>{if(i.match(Jf)){let o=i.slice(Xf.length);n[o]=s}return n},{});if(Object.keys(r).length>0)return r}function Qf(e){if(!(!e||!St(e)&&!Array.isArray(e)))return Array.isArray(e)?e.reduce((t,r)=>{let n=Kf(r);return Object.entries(n).forEach(([i,s])=>{t[i]=s}),t},{}):Kf(e)}function Kf(e){return e.split(",").map(t=>t.split("=").map(r=>decodeURIComponent(r.trim()))).reduce((t,[r,n])=>(r&&n&&(t[r]=n),t),{})}function hr(e,t=[]){return[e,t]}function Ol(e,t){let[r,n]=e;return[r,[...n,t]]}function Ts(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 te.__SENTRY__&&te.__SENTRY__.encodePolyfill?te.__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(er(c))}i(u)}}return typeof n=="string"?n:_y(n)}function _y(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[Je({type:"attachment",length:t.length,filename:e.filename,content_type:e.contentType,attachment_type:e.attachmentType}),t]}var Sy={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 Cs(e){return Sy[e]}function xs(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 w(w(w({event_id:e.event_id,sent_at:new Date().toISOString()},t&&{sdk:t}),!!r&&n&&{dsn:fr(n)}),i&&{trace:Je(w({},i))})}function Bl(e,t,r){let n=[{type:"client_report"},{timestamp:r||dr(),discarded_events:e}];return hr(t?{dsn:t}:{},[n])}function Zf(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 em(e,t){return e[t]||e.all||0}function kl(e,t,r=Date.now()){return em(e,t)>r}function Ul(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,,,g]=c.split(":",5),h=parseInt(u,10),v=(isNaN(h)?60:h)*1e3;if(!d)i.all=n+v;else for(let E of d.split(";"))E==="metric_bucket"?(!g||g.split(";").includes("custom"))&&(i[E]=n+v):i[E]=n+v}else o?i.all=n+Zf(o,n):t===429&&(i.all=n+60*1e3);return i}function Ds(){return{traceId:rt(),spanId:rt().substring(16)}}var Rs=te;function Fl(){let e=Rs.chrome,t=e&&e.app&&e.app.runtime,r="history"in Rs&&!!Rs.history.pushState&&!!Rs.history.replaceState;return!t&&r}var De=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function pn(){return fo(te),te}function fo(e){let t=e.__SENTRY__=e.__SENTRY__||{};return t.version=t.version||jt,t[jt]=t[jt]||{}}function mo(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||Pt(),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:rt()),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 Iy=100,Vl=class $h{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext=Ds()}clone(){let t=new $h;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&&mo(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=ee(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=ee(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 mt?[r.getScopeData(),r.getRequestSession()]:Qt(r)?[t,t.requestSession]:[],{tags:s,extra:o,user:c,contexts:u,level:d,fingerprint:g=[],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),g.length&&(this._fingerprint=g),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=Ds(),this._notifyScopeListeners(),this}addBreadcrumb(t,r){let n=typeof r=="number"?r:Iy;if(n<=0)return this;let i=w({timestamp:dr()},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:rt();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,ee(w({originalException:t,syntheticException:i},r),{event_id:n}),this),n}captureMessage(t,r,n){let i=n&&n.event_id?n.event_id:rt();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,ee(w({originalException:t,syntheticException:s},n),{event_id:i}),this),i}captureEvent(t,r){let n=r&&r.event_id?r.event_id:rt();return this._client?(this._client.captureEvent(t,ee(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)}},mt=Vl;function tm(){return ai("defaultCurrentScope",()=>new mt)}function rm(){return ai("defaultIsolationScope",()=>new mt)}var Wl=class{constructor(e,t){let r;e?r=e:r=new mt;let n;t?n=t:n=new mt,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 Cr(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 pi(){let e=pn(),t=fo(e);return t.stack=t.stack||new Wl(tm(),rm())}function Ty(e){return pi().withScope(e)}function Cy(e,t){let r=pi();return r.withScope(()=>(r.getStackTop().scope=e,t(e)))}function nm(e){return pi().withScope(()=>e(pi().getIsolationScope()))}function im(){return{withIsolationScope:nm,withScope:Ty,withSetScope:Cy,withSetIsolationScope:(e,t)=>nm(t),getCurrentScope:()=>pi().getScope(),getIsolationScope:()=>pi().getIsolationScope()}}function As(e){let t=fo(e);return t.acs?t.acs:im()}function fn(){let e=pn();return As(e).getCurrentScope()}function mn(){let e=pn();return As(e).getIsolationScope()}function Ns(){return ai("globalScope",()=>new mt)}function Os(...e){let t=pn(),r=As(t);if(e.length===2){let[n,i]=e;return n?r.withSetScope(n,i):r.withScope(i)}return r.withScope(e[0])}function Ue(){return fn().getClient()}var xy="_sentryMetrics";function om(e){let t=e[xy];if(!t)return;let r={};for(let[,[n,i]]of t)(r[n]||(r[n]=[])).push(Je(i));return r}var Gl="sentry.source",Yl="sentry.sample_rate",zl="sentry.op",ql="sentry.origin",Dy=1;function cm(e){let{spanId:t,traceId:r}=e.spanContext(),{parent_span_id:n}=dn(e);return Je({parent_span_id:n,span_id:t,trace_id:r})}function sm(e){return typeof e=="number"?am(e):Array.isArray(e)?e[0]+e[1]/1e9:e instanceof Date?am(e.getTime()):Pt()}function am(e){return e>9999999999?e/1e3:e}function dn(e){if(Ay(e))return e.getSpanJSON();try{let{spanId:t,traceId:r}=e.spanContext();if(Ry(e)){let{attributes:n,startTime:i,name:s,endTime:o,parentSpanId:c,status:u}=e;return Je({span_id:t,trace_id:r,data:n,description:s,parent_span_id:c,start_timestamp:sm(i),timestamp:sm(o)||void 0,status:Ny(u),op:n[zl],origin:n[ql],_metrics_summary:om(e)})}return{span_id:t,trace_id:r}}catch{return{}}}function Ry(e){let t=e;return!!t.attributes&&!!t.startTime&&!!t.name&&!!t.endTime&&!!t.status}function Ay(e){return typeof e.getSpanJSON=="function"}function lm(e){let{traceFlags:t}=e.spanContext();return t===Dy}function Ny(e){if(!(!e||e.code===0))return e.code===1?"ok":e.message||"unknown_error"}var Oy="_sentryRootSpan";function ho(e){return e[Oy]||e}var Ps="production",Py="_frozenDsc";function Kl(e,t){let r=t.getOptions(),{publicKey:n}=t.getDsn()||{},i=Je({environment:r.environment||Ps,release:r.release,public_key:n,trace_id:e});return t.emit("createDsc",i),i}function um(e){let t=Ue();if(!t)return{};let r=Kl(dn(e).trace_id||"",t),n=ho(e),i=n[Py];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||{},g=d[Yl];g!=null&&(r.sample_rate=`${g}`);let h=d[Gl],v=u.description;return h!=="url"&&v&&(r.transaction=v),r.sampled=String(lm(n)),t.emit("createDsc",r,n),r}function pm(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){De&&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 Ly(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 fm(e,t,r,n){let i=xs(r),s=w(w({sent_at:new Date().toISOString()},i&&{sdk:i}),!!n&&t&&{dsn:fr(t)}),o="aggregates"in e?[{type:"sessions"},e]:[{type:"session"},e.toJSON()];return hr(s,[o])}function mm(e,t,r,n){let i=xs(r),s=e.type&&e.type!=="replay_event"?e.type:"event";Ly(e,r&&r.sdk);let o=Ml(e,i,n,t);return delete e.sdkProcessingMetadata,hr(o,[[{type:s},e]])}function Ls(e,t,r,n=0){return new tr((i,s)=>{let o=e[n];if(t===null||typeof o!="function")i(t);else{let c=o(w({},t),r);De&&o.id&&c===null&&K.log(`Event processor "${o.id}" dropped event`),Cr(c)?c.then(u=>Ls(e,u,r,n+1).then(i)).then(null,s):Ls(e,c,r,n+1).then(i).then(null,s)}})}function dm(e,t){let{fingerprint:r,span:n,breadcrumbs:i,sdkProcessingMetadata:s}=t;My(e,t),n&&Uy(e,n),Fy(e,r),By(e,i),ky(e,s)}function Xl(e,t){let{extra:r,tags:n,user:i,contexts:s,level:o,sdkProcessingMetadata:c,breadcrumbs:u,fingerprint:d,eventProcessors:g,attachments:h,propagationContext:v,transactionName:E,span:y}=t;go(e,"extra",r),go(e,"tags",n),go(e,"user",i),go(e,"contexts",s),go(e,"sdkProcessingMetadata",c),o&&(e.level=o),E&&(e.transactionName=E),y&&(e.span=y),u.length&&(e.breadcrumbs=[...e.breadcrumbs,...u]),d.length&&(e.fingerprint=[...e.fingerprint,...d]),g.length&&(e.eventProcessors=[...e.eventProcessors,...g]),h.length&&(e.attachments=[...e.attachments,...h]),e.propagationContext=w(w({},e.propagationContext),v)}function go(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 My(e,t){let{extra:r,tags:n,user:i,contexts:s,level:o,transactionName:c}=t,u=Je(r);u&&Object.keys(u).length&&(e.extra=w(w({},u),e.extra));let d=Je(n);d&&Object.keys(d).length&&(e.tags=w(w({},d),e.tags));let g=Je(i);g&&Object.keys(g).length&&(e.user=w(w({},g),e.user));let h=Je(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 By(e,t){let r=[...e.breadcrumbs||[],...t];e.breadcrumbs=r.length?r:void 0}function ky(e,t){e.sdkProcessingMetadata=w(w({},e.sdkProcessingMetadata),t)}function Uy(e,t){e.contexts=w({trace:cm(t)},e.contexts),e.sdkProcessingMetadata=w({dynamicSamplingContext:um(t)},e.sdkProcessingMetadata);let r=ho(t),n=dn(r).description;n&&!e.transaction&&e.type==="transaction"&&(e.transaction=n)}function Fy(e,t){e.fingerprint=e.fingerprint?bs(e.fingerprint):[],t&&(e.fingerprint=e.fingerprint.concat(t)),e.fingerprint&&!e.fingerprint.length&&delete e.fingerprint}function gm(e,t,r,n,i,s){let{normalizeDepth:o=3,normalizeMaxBreadth:c=1e3}=e,u=ee(w({},t),{event_id:t.event_id||r.event_id||rt(),timestamp:t.timestamp||dr()}),d=r.integrations||e.integrations.map(_=>_.name);Hy(u,e),Vy(u,d),i&&i.emit("applyFrameMetadata",t),t.type===void 0&&$y(u,e.stackParser);let g=Gy(n,r.captureContext);r.mechanism&&xr(u,r.mechanism);let h=i?i.getEventProcessors():[],v=Ns().getScopeData();if(s){let _=s.getScopeData();Xl(v,_)}if(g){let _=g.getScopeData();Xl(v,_)}let E=[...r.attachments||[],...v.attachments];E.length&&(r.attachments=E),dm(u,v);let y=[...h,...v.eventProcessors];return Ls(y,u,r).then(_=>(_&&jy(_),typeof o=="number"&&o>0?Wy(_,o,c):_))}function Hy(e,t){let{environment:r,release:n,dist:i,maxValueLength:s=250}=t;"environment"in e||(e.environment="environment"in t?r:Ps),e.release===void 0&&n!==void 0&&(e.release=n),e.dist===void 0&&i!==void 0&&(e.dist=i),e.message&&(e.message=ur(e.message,s));let o=e.exception&&e.exception.values&&e.exception.values[0];o&&o.value&&(o.value=ur(o.value,s));let c=e.request;c&&c.url&&(c.url=ur(c.url,s))}var hm=new WeakMap;function $y(e,t){let r=te._sentryDebugIds;if(!r)return;let n,i=hm.get(t);i?n=i:(n=new Map,hm.set(t,n));let s=Object.entries(r).reduce((o,[c,u])=>{let d,g=n.get(c);g?d=g:(d=t(c),n.set(c,d));for(let h=d.length-1;h>=0;h--){let v=d[h];if(v.filename){o[v.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 jy(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 Vy(e,t){t.length>0&&(e.sdk=e.sdk||{},e.sdk.integrations=[...e.sdk.integrations||[],...t])}function Wy(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:er(i.data,t,r)}))}),e.user&&{user:er(e.user,t,r)}),e.contexts&&{contexts:er(e.contexts,t,r)}),e.extra&&{extra:er(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=er(e.contexts.trace.data,t,r))),e.spans&&(n.spans=e.spans.map(i=>w(w({},i),i.data&&{data:er(i.data,t,r)}))),n}function Gy(e,t){if(!t)return e;let r=e?e.clone():new mt;return r.update(t),r}function ym(e){if(e)return Yy(e)?{captureContext:e}:qy(e)?{captureContext:e}:e}function Yy(e){return e instanceof mt||typeof e=="function"}var zy=["user","level","extra","contexts","tags","fingerprint","requestSession","propagationContext"];function qy(e){return Object.keys(e).some(t=>zy.includes(t))}function Ms(e,t){return fn().captureException(e,ym(t))}function yo(e,t){return fn().captureEvent(e,t)}var Ky="7";function Xy(e){let t=e.protocol?`${e.protocol}:`:"",r=e.port?`:${e.port}`:"";return`${t}//${e.host}${r}${e.path?`/${e.path}`:""}/api/`}function Jy(e){return`${Xy(e)}${e.projectId}/envelope/`}function Qy(e,t){return hl(w({sentry_key:e.publicKey,sentry_version:Ky},t&&{sentry_client:`${t.name}/${t.version}`}))}function Em(e,t,r){return t||`${Jy(e)}?${Qy(e,r)}`}var _m=[];function Sm(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]){De&&K.log(`Integration skipped because it was already installed: ${t.name}`);return}if(r[t.name]=t,_m.indexOf(t.name)===-1&&typeof t.setupOnce=="function"&&(t.setupOnce(),_m.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)}De&&K.log(`Integration installed: ${t.name}`)}var wm="Not capturing exception because it's already been captured.",vo=class{constructor(e){if(this._options=e,this._integrations={},this._numProcessing=0,this._outcomes={},this._hooks={},this._eventProcessors=[],e.dsn?this._dsn=ds(e.dsn):De&&K.warn("No DSN provided, client will not send events."),this._dsn){let t=Em(this._dsn,e.tunnel,e._metadata?e._metadata.sdk:void 0);this._transport=e.transport(ee(w({tunnel:this._options.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this)},e.transportOptions),{url:t}))}}captureException(e,t,r){let n=rt();if(ws(e))return De&&K.log(wm),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:rt()},r),s=oi(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=rt();if(t&&t.originalException&&ws(t.originalException))return De&&K.log(wm),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"?De&&K.warn("Discarded session because of missing or non-string release"):(this.sendSession(e),mo(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))):Wt(!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=mm(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=fm(e,this._dsn,this._options._metadata,this._options.tunnel);this.sendEnvelope(t)}recordDroppedEvent(e,t,r){if(this._options.sendClientReports){let n=`${e}:${t}`;De&&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=>(De&&K.error("Error while sending event:",t),t)):(De&&K.error("Transport disabled"),Wt({}))}_setupIntegrations(){let{integrations:e}=this._options;this._integrations=Sm(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)&&(mo(e,ee(w({},r&&{status:"crashed"}),{errors:e.errors||Number(n||r)})),this.captureSession(e))}_isClientDoneProcessing(e){return new tr(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),gm(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:g,dsc:h}=c;o.contexts=w({trace:Je({trace_id:u,span_id:d,parent_span_id:g})},o.contexts);let v=h||Kl(u,this);o.sdkProcessingMetadata=w({dynamicSamplingContext:v},o.sdkProcessingMetadata)}return o})}_captureEvent(e,t={},r){return this._processEvent(e,t,r).then(n=>n.event_id,n=>{if(De){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=bm(e),c=e.type||"error",u=`before send for type \`${c}\``,d=typeof i>"u"?void 0:pm(i);if(o&&typeof d=="number"&&Math.random()>d)return this.recordDroppedEvent("sample_rate","error",e),$r(new ft(`Discarding event because it's not included in the random sample (sampling rate = ${i})`,"log"));let g=c==="replay_event"?"replay":c,h=(e.sdkProcessingMetadata||{}).capturedSpanIsolationScope;return this._prepareEvent(e,t,r,h).then(v=>{if(v===null)throw this.recordDroppedEvent("event_processor",g,e),new ft("An event processor returned `null`, will not send event.","log");if(t.data&&t.data.__sentry__===!0)return v;let E=ev(this,n,v,t);return Zy(E,u)}).then(v=>{if(v===null){if(this.recordDroppedEvent("before_send",g,e),Zl(e)){let _=1+(e.spans||[]).length;this._outcomes.span=(this._outcomes.span||0)+_}throw new ft(`${u} returned \`null\`, will not send event.`,"log")}let E=r&&r.getSession();!s&&E&&this._updateSessionFromEvent(E,v);let y=v.transaction_info;if(s&&y&&v.transaction!==e.transaction){let _="custom";v.transaction_info=ee(w({},y),{source:_})}return this.sendEvent(v,t),v}).then(null,v=>{throw v instanceof ft?v:(this.captureException(v,{data:{__sentry__:!0},originalException:v}),new ft(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event.
|
|
26
|
-
Reason: ${v}`))})}_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 Zy(e,t){let r=`${t} must return \`null\` or a valid event.`;if(Cr(e))return e.then(n=>{if(!Qt(n)&&n!==null)throw new ft(r);return n},n=>{throw new ft(`${t} rejected with ${n}`)});if(!Qt(e)&&e!==null)throw new ft(r);return e}function ev(e,t,r,n){let{beforeSend:i,beforeSendTransaction:s,beforeSendSpan:o}=t;if(bm(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 bm(e){return e.type===void 0}function Zl(e){return e.type==="transaction"}var tv=64;function Bs(e,t,r=Dl(e.bufferSize||tv)){let n={},i=o=>r.drain(o);function s(o){let c=[];if(Ts(o,(h,v)=>{let E=Cs(v);if(kl(n,E)){let y=Im(h,v);e.recordDroppedEvent("ratelimit_backoff",E,y)}else c.push(h)}),c.length===0)return Wt({});let u=hr(o[0],c),d=h=>{Ts(u,(v,E)=>{let y=Im(v,E);e.recordDroppedEvent(h,Cs(E),y)})},g=()=>t({body:Pl(u)}).then(h=>(h.statusCode!==void 0&&(h.statusCode<200||h.statusCode>=300)&&De&&K.warn(`Sentry responded with status code ${h.statusCode} to sent event.`),n=Ul(n,h),h),h=>{throw d("network_error"),h});return r.add(g).then(h=>h,h=>{if(h instanceof ft)return De&&K.error("Skipped sending event because buffer is full."),d("queue_overflow"),Wt({});throw h})}return{send:s,flush:i}}function Im(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:
|
|
25
|
+
`),typeof c=="string"||c instanceof Uint8Array)i(c);else{let u;try{u=JSON.stringify(c)}catch{u=JSON.stringify(er(c))}i(u)}}return typeof n=="string"?n:_y(n)}function _y(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[Je({type:"attachment",length:t.length,filename:e.filename,content_type:e.contentType,attachment_type:e.attachmentType}),t]}var Sy={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 Cs(e){return Sy[e]}function xs(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 w(w(w({event_id:e.event_id,sent_at:new Date().toISOString()},t&&{sdk:t}),!!r&&n&&{dsn:fr(n)}),i&&{trace:Je(w({},i))})}function Bl(e,t,r){let n=[{type:"client_report"},{timestamp:r||dr(),discarded_events:e}];return hr(t?{dsn:t}:{},[n])}function Zf(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 em(e,t){return e[t]||e.all||0}function kl(e,t,r=Date.now()){return em(e,t)>r}function Ul(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,,,g]=c.split(":",5),h=parseInt(u,10),v=(isNaN(h)?60:h)*1e3;if(!d)i.all=n+v;else for(let E of d.split(";"))E==="metric_bucket"?(!g||g.split(";").includes("custom"))&&(i[E]=n+v):i[E]=n+v}else o?i.all=n+Zf(o,n):t===429&&(i.all=n+60*1e3);return i}function Ds(){return{traceId:rt(),spanId:rt().substring(16)}}var Rs=te;function Fl(){let e=Rs.chrome,t=e&&e.app&&e.app.runtime,r="history"in Rs&&!!Rs.history.pushState&&!!Rs.history.replaceState;return!t&&r}var De=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function pn(){return fo(te),te}function fo(e){let t=e.__SENTRY__=e.__SENTRY__||{};return t.version=t.version||Vt,t[Vt]=t[Vt]||{}}function mo(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||Pt(),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:rt()),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 Vl(e){return e[Hl]}var Iy=100,jl=class $h{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext=Ds()}clone(){let t=new $h;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,Vl(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&&mo(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=ee(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=ee(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 mt?[r.getScopeData(),r.getRequestSession()]:Qt(r)?[t,t.requestSession]:[],{tags:s,extra:o,user:c,contexts:u,level:d,fingerprint:g=[],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),g.length&&(this._fingerprint=g),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=Ds(),this._notifyScopeListeners(),this}addBreadcrumb(t,r){let n=typeof r=="number"?r:Iy;if(n<=0)return this;let i=w({timestamp:dr()},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:Vl(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:rt();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,ee(w({originalException:t,syntheticException:i},r),{event_id:n}),this),n}captureMessage(t,r,n){let i=n&&n.event_id?n.event_id:rt();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,ee(w({originalException:t,syntheticException:s},n),{event_id:i}),this),i}captureEvent(t,r){let n=r&&r.event_id?r.event_id:rt();return this._client?(this._client.captureEvent(t,ee(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)}},mt=jl;function tm(){return ai("defaultCurrentScope",()=>new mt)}function rm(){return ai("defaultIsolationScope",()=>new mt)}var Wl=class{constructor(e,t){let r;e?r=e:r=new mt;let n;t?n=t:n=new mt,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 Cr(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 pi(){let e=pn(),t=fo(e);return t.stack=t.stack||new Wl(tm(),rm())}function Ty(e){return pi().withScope(e)}function Cy(e,t){let r=pi();return r.withScope(()=>(r.getStackTop().scope=e,t(e)))}function nm(e){return pi().withScope(()=>e(pi().getIsolationScope()))}function im(){return{withIsolationScope:nm,withScope:Ty,withSetScope:Cy,withSetIsolationScope:(e,t)=>nm(t),getCurrentScope:()=>pi().getScope(),getIsolationScope:()=>pi().getIsolationScope()}}function As(e){let t=fo(e);return t.acs?t.acs:im()}function fn(){let e=pn();return As(e).getCurrentScope()}function mn(){let e=pn();return As(e).getIsolationScope()}function Ns(){return ai("globalScope",()=>new mt)}function Os(...e){let t=pn(),r=As(t);if(e.length===2){let[n,i]=e;return n?r.withSetScope(n,i):r.withScope(i)}return r.withScope(e[0])}function Ue(){return fn().getClient()}var xy="_sentryMetrics";function om(e){let t=e[xy];if(!t)return;let r={};for(let[,[n,i]]of t)(r[n]||(r[n]=[])).push(Je(i));return r}var Gl="sentry.source",Yl="sentry.sample_rate",zl="sentry.op",ql="sentry.origin",Dy=1;function cm(e){let{spanId:t,traceId:r}=e.spanContext(),{parent_span_id:n}=dn(e);return Je({parent_span_id:n,span_id:t,trace_id:r})}function sm(e){return typeof e=="number"?am(e):Array.isArray(e)?e[0]+e[1]/1e9:e instanceof Date?am(e.getTime()):Pt()}function am(e){return e>9999999999?e/1e3:e}function dn(e){if(Ay(e))return e.getSpanJSON();try{let{spanId:t,traceId:r}=e.spanContext();if(Ry(e)){let{attributes:n,startTime:i,name:s,endTime:o,parentSpanId:c,status:u}=e;return Je({span_id:t,trace_id:r,data:n,description:s,parent_span_id:c,start_timestamp:sm(i),timestamp:sm(o)||void 0,status:Ny(u),op:n[zl],origin:n[ql],_metrics_summary:om(e)})}return{span_id:t,trace_id:r}}catch{return{}}}function Ry(e){let t=e;return!!t.attributes&&!!t.startTime&&!!t.name&&!!t.endTime&&!!t.status}function Ay(e){return typeof e.getSpanJSON=="function"}function lm(e){let{traceFlags:t}=e.spanContext();return t===Dy}function Ny(e){if(!(!e||e.code===0))return e.code===1?"ok":e.message||"unknown_error"}var Oy="_sentryRootSpan";function ho(e){return e[Oy]||e}var Ps="production",Py="_frozenDsc";function Kl(e,t){let r=t.getOptions(),{publicKey:n}=t.getDsn()||{},i=Je({environment:r.environment||Ps,release:r.release,public_key:n,trace_id:e});return t.emit("createDsc",i),i}function um(e){let t=Ue();if(!t)return{};let r=Kl(dn(e).trace_id||"",t),n=ho(e),i=n[Py];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||{},g=d[Yl];g!=null&&(r.sample_rate=`${g}`);let h=d[Gl],v=u.description;return h!=="url"&&v&&(r.transaction=v),r.sampled=String(lm(n)),t.emit("createDsc",r,n),r}function pm(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){De&&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 Ly(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 fm(e,t,r,n){let i=xs(r),s=w(w({sent_at:new Date().toISOString()},i&&{sdk:i}),!!n&&t&&{dsn:fr(t)}),o="aggregates"in e?[{type:"sessions"},e]:[{type:"session"},e.toJSON()];return hr(s,[o])}function mm(e,t,r,n){let i=xs(r),s=e.type&&e.type!=="replay_event"?e.type:"event";Ly(e,r&&r.sdk);let o=Ml(e,i,n,t);return delete e.sdkProcessingMetadata,hr(o,[[{type:s},e]])}function Ls(e,t,r,n=0){return new tr((i,s)=>{let o=e[n];if(t===null||typeof o!="function")i(t);else{let c=o(w({},t),r);De&&o.id&&c===null&&K.log(`Event processor "${o.id}" dropped event`),Cr(c)?c.then(u=>Ls(e,u,r,n+1).then(i)).then(null,s):Ls(e,c,r,n+1).then(i).then(null,s)}})}function dm(e,t){let{fingerprint:r,span:n,breadcrumbs:i,sdkProcessingMetadata:s}=t;My(e,t),n&&Uy(e,n),Fy(e,r),By(e,i),ky(e,s)}function Xl(e,t){let{extra:r,tags:n,user:i,contexts:s,level:o,sdkProcessingMetadata:c,breadcrumbs:u,fingerprint:d,eventProcessors:g,attachments:h,propagationContext:v,transactionName:E,span:y}=t;go(e,"extra",r),go(e,"tags",n),go(e,"user",i),go(e,"contexts",s),go(e,"sdkProcessingMetadata",c),o&&(e.level=o),E&&(e.transactionName=E),y&&(e.span=y),u.length&&(e.breadcrumbs=[...e.breadcrumbs,...u]),d.length&&(e.fingerprint=[...e.fingerprint,...d]),g.length&&(e.eventProcessors=[...e.eventProcessors,...g]),h.length&&(e.attachments=[...e.attachments,...h]),e.propagationContext=w(w({},e.propagationContext),v)}function go(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 My(e,t){let{extra:r,tags:n,user:i,contexts:s,level:o,transactionName:c}=t,u=Je(r);u&&Object.keys(u).length&&(e.extra=w(w({},u),e.extra));let d=Je(n);d&&Object.keys(d).length&&(e.tags=w(w({},d),e.tags));let g=Je(i);g&&Object.keys(g).length&&(e.user=w(w({},g),e.user));let h=Je(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 By(e,t){let r=[...e.breadcrumbs||[],...t];e.breadcrumbs=r.length?r:void 0}function ky(e,t){e.sdkProcessingMetadata=w(w({},e.sdkProcessingMetadata),t)}function Uy(e,t){e.contexts=w({trace:cm(t)},e.contexts),e.sdkProcessingMetadata=w({dynamicSamplingContext:um(t)},e.sdkProcessingMetadata);let r=ho(t),n=dn(r).description;n&&!e.transaction&&e.type==="transaction"&&(e.transaction=n)}function Fy(e,t){e.fingerprint=e.fingerprint?bs(e.fingerprint):[],t&&(e.fingerprint=e.fingerprint.concat(t)),e.fingerprint&&!e.fingerprint.length&&delete e.fingerprint}function gm(e,t,r,n,i,s){let{normalizeDepth:o=3,normalizeMaxBreadth:c=1e3}=e,u=ee(w({},t),{event_id:t.event_id||r.event_id||rt(),timestamp:t.timestamp||dr()}),d=r.integrations||e.integrations.map(_=>_.name);Hy(u,e),jy(u,d),i&&i.emit("applyFrameMetadata",t),t.type===void 0&&$y(u,e.stackParser);let g=Gy(n,r.captureContext);r.mechanism&&xr(u,r.mechanism);let h=i?i.getEventProcessors():[],v=Ns().getScopeData();if(s){let _=s.getScopeData();Xl(v,_)}if(g){let _=g.getScopeData();Xl(v,_)}let E=[...r.attachments||[],...v.attachments];E.length&&(r.attachments=E),dm(u,v);let y=[...h,...v.eventProcessors];return Ls(y,u,r).then(_=>(_&&Vy(_),typeof o=="number"&&o>0?Wy(_,o,c):_))}function Hy(e,t){let{environment:r,release:n,dist:i,maxValueLength:s=250}=t;"environment"in e||(e.environment="environment"in t?r:Ps),e.release===void 0&&n!==void 0&&(e.release=n),e.dist===void 0&&i!==void 0&&(e.dist=i),e.message&&(e.message=ur(e.message,s));let o=e.exception&&e.exception.values&&e.exception.values[0];o&&o.value&&(o.value=ur(o.value,s));let c=e.request;c&&c.url&&(c.url=ur(c.url,s))}var hm=new WeakMap;function $y(e,t){let r=te._sentryDebugIds;if(!r)return;let n,i=hm.get(t);i?n=i:(n=new Map,hm.set(t,n));let s=Object.entries(r).reduce((o,[c,u])=>{let d,g=n.get(c);g?d=g:(d=t(c),n.set(c,d));for(let h=d.length-1;h>=0;h--){let v=d[h];if(v.filename){o[v.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 Vy(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 jy(e,t){t.length>0&&(e.sdk=e.sdk||{},e.sdk.integrations=[...e.sdk.integrations||[],...t])}function Wy(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:er(i.data,t,r)}))}),e.user&&{user:er(e.user,t,r)}),e.contexts&&{contexts:er(e.contexts,t,r)}),e.extra&&{extra:er(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=er(e.contexts.trace.data,t,r))),e.spans&&(n.spans=e.spans.map(i=>w(w({},i),i.data&&{data:er(i.data,t,r)}))),n}function Gy(e,t){if(!t)return e;let r=e?e.clone():new mt;return r.update(t),r}function ym(e){if(e)return Yy(e)?{captureContext:e}:qy(e)?{captureContext:e}:e}function Yy(e){return e instanceof mt||typeof e=="function"}var zy=["user","level","extra","contexts","tags","fingerprint","requestSession","propagationContext"];function qy(e){return Object.keys(e).some(t=>zy.includes(t))}function Ms(e,t){return fn().captureException(e,ym(t))}function yo(e,t){return fn().captureEvent(e,t)}var Ky="7";function Xy(e){let t=e.protocol?`${e.protocol}:`:"",r=e.port?`:${e.port}`:"";return`${t}//${e.host}${r}${e.path?`/${e.path}`:""}/api/`}function Jy(e){return`${Xy(e)}${e.projectId}/envelope/`}function Qy(e,t){return hl(w({sentry_key:e.publicKey,sentry_version:Ky},t&&{sentry_client:`${t.name}/${t.version}`}))}function Em(e,t,r){return t||`${Jy(e)}?${Qy(e,r)}`}var _m=[];function Sm(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]){De&&K.log(`Integration skipped because it was already installed: ${t.name}`);return}if(r[t.name]=t,_m.indexOf(t.name)===-1&&typeof t.setupOnce=="function"&&(t.setupOnce(),_m.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)}De&&K.log(`Integration installed: ${t.name}`)}var wm="Not capturing exception because it's already been captured.",vo=class{constructor(e){if(this._options=e,this._integrations={},this._numProcessing=0,this._outcomes={},this._hooks={},this._eventProcessors=[],e.dsn?this._dsn=ds(e.dsn):De&&K.warn("No DSN provided, client will not send events."),this._dsn){let t=Em(this._dsn,e.tunnel,e._metadata?e._metadata.sdk:void 0);this._transport=e.transport(ee(w({tunnel:this._options.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this)},e.transportOptions),{url:t}))}}captureException(e,t,r){let n=rt();if(ws(e))return De&&K.log(wm),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:rt()},r),s=oi(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=rt();if(t&&t.originalException&&ws(t.originalException))return De&&K.log(wm),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"?De&&K.warn("Discarded session because of missing or non-string release"):(this.sendSession(e),mo(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))):Wt(!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=mm(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=fm(e,this._dsn,this._options._metadata,this._options.tunnel);this.sendEnvelope(t)}recordDroppedEvent(e,t,r){if(this._options.sendClientReports){let n=`${e}:${t}`;De&&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=>(De&&K.error("Error while sending event:",t),t)):(De&&K.error("Transport disabled"),Wt({}))}_setupIntegrations(){let{integrations:e}=this._options;this._integrations=Sm(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)&&(mo(e,ee(w({},r&&{status:"crashed"}),{errors:e.errors||Number(n||r)})),this.captureSession(e))}_isClientDoneProcessing(e){return new tr(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),gm(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:g,dsc:h}=c;o.contexts=w({trace:Je({trace_id:u,span_id:d,parent_span_id:g})},o.contexts);let v=h||Kl(u,this);o.sdkProcessingMetadata=w({dynamicSamplingContext:v},o.sdkProcessingMetadata)}return o})}_captureEvent(e,t={},r){return this._processEvent(e,t,r).then(n=>n.event_id,n=>{if(De){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=bm(e),c=e.type||"error",u=`before send for type \`${c}\``,d=typeof i>"u"?void 0:pm(i);if(o&&typeof d=="number"&&Math.random()>d)return this.recordDroppedEvent("sample_rate","error",e),$r(new ft(`Discarding event because it's not included in the random sample (sampling rate = ${i})`,"log"));let g=c==="replay_event"?"replay":c,h=(e.sdkProcessingMetadata||{}).capturedSpanIsolationScope;return this._prepareEvent(e,t,r,h).then(v=>{if(v===null)throw this.recordDroppedEvent("event_processor",g,e),new ft("An event processor returned `null`, will not send event.","log");if(t.data&&t.data.__sentry__===!0)return v;let E=ev(this,n,v,t);return Zy(E,u)}).then(v=>{if(v===null){if(this.recordDroppedEvent("before_send",g,e),Zl(e)){let _=1+(e.spans||[]).length;this._outcomes.span=(this._outcomes.span||0)+_}throw new ft(`${u} returned \`null\`, will not send event.`,"log")}let E=r&&r.getSession();!s&&E&&this._updateSessionFromEvent(E,v);let y=v.transaction_info;if(s&&y&&v.transaction!==e.transaction){let _="custom";v.transaction_info=ee(w({},y),{source:_})}return this.sendEvent(v,t),v}).then(null,v=>{throw v instanceof ft?v:(this.captureException(v,{data:{__sentry__:!0},originalException:v}),new ft(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event.
|
|
26
|
+
Reason: ${v}`))})}_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 Zy(e,t){let r=`${t} must return \`null\` or a valid event.`;if(Cr(e))return e.then(n=>{if(!Qt(n)&&n!==null)throw new ft(r);return n},n=>{throw new ft(`${t} rejected with ${n}`)});if(!Qt(e)&&e!==null)throw new ft(r);return e}function ev(e,t,r,n){let{beforeSend:i,beforeSendTransaction:s,beforeSendSpan:o}=t;if(bm(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 bm(e){return e.type===void 0}function Zl(e){return e.type==="transaction"}var tv=64;function Bs(e,t,r=Dl(e.bufferSize||tv)){let n={},i=o=>r.drain(o);function s(o){let c=[];if(Ts(o,(h,v)=>{let E=Cs(v);if(kl(n,E)){let y=Im(h,v);e.recordDroppedEvent("ratelimit_backoff",E,y)}else c.push(h)}),c.length===0)return Wt({});let u=hr(o[0],c),d=h=>{Ts(u,(v,E)=>{let y=Im(v,E);e.recordDroppedEvent(h,Cs(E),y)})},g=()=>t({body:Pl(u)}).then(h=>(h.statusCode!==void 0&&(h.statusCode<200||h.statusCode>=300)&&De&&K.warn(`Sentry responded with status code ${h.statusCode} to sent event.`),n=Ul(n,h),h),h=>{throw d("network_error"),h});return r.add(g).then(h=>h,h=>{if(h instanceof ft)return De&&K.error("Skipped sending event because buffer is full."),d("queue_overflow"),Wt({});throw h})}return{send:s,flush:i}}function Im(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:Vt})),version:Vt}),e._metadata=i}var rv=100;function gr(e,t){let r=Ue(),n=mn();if(!r)return;let{beforeBreadcrumb:i=null,maxBreadcrumbs:s=rv}=r.getOptions();if(s<=0)return;let o=dr(),c=w({timestamp:o},e),u=i?li(()=>i(c,t)):c;u!==null&&(r.emit&&r.emit("beforeAddBreadcrumb",u,t),n.addBreadcrumb(u,s))}var Tm,nv="FunctionToString",Cm=new WeakMap,iv=()=>({name:nv,setupOnce(){Tm=Function.prototype.toString;try{Function.prototype.toString=function(...e){let t=un(this),r=Cm.has(Ue())&&t!==void 0?t:this;return Tm.apply(r,e)}}catch{}},setup(e){Cm.set(e,!0)}}),ks=iv,ov=[/^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"],sv="InboundFilters",av=(e={})=>({name:sv,processEvent(t,r,n){let i=n.getOptions(),s=cv(e,i);return lv(t,s)?null:t}}),Fs=av;function cv(e={},t={}){return{allowUrls:[...e.allowUrls||[],...t.allowUrls||[]],denyUrls:[...e.denyUrls||[],...t.denyUrls||[]],ignoreErrors:[...e.ignoreErrors||[],...t.ignoreErrors||[],...e.disableErrorDefaults?[]:ov],ignoreTransactions:[...e.ignoreTransactions||[],...t.ignoreTransactions||[]],ignoreInternal:e.ignoreInternal!==void 0?e.ignoreInternal:!0}}function lv(e,t){return t.ignoreInternal&&hv(e)?(De&&K.warn(`Event dropped due to being internal Sentry Error.
|
|
27
27
|
Event: ${Zt(e)}`),!0):uv(e,t.ignoreErrors)?(De&&K.warn(`Event dropped due to being matched by \`ignoreErrors\` option.
|
|
28
28
|
Event: ${Zt(e)}`),!0):yv(e)?(De&&K.warn(`Event dropped due to not having an error message, error type or stacktrace.
|
|
29
29
|
Event: ${Zt(e)}`),!0):pv(e,t.ignoreTransactions)?(De&&K.warn(`Event dropped due to being matched by \`ignoreTransactions\` option.
|
|
@@ -31,11 +31,11 @@ Event: ${Zt(e)}`),!0):fv(e,t.denyUrls)?(De&&K.warn(`Event dropped due to being m
|
|
|
31
31
|
Event: ${Zt(e)}.
|
|
32
32
|
Url: ${Us(e)}`),!0):mv(e,t.allowUrls)?!1:(De&&K.warn(`Event dropped due to not being matched by \`allowUrls\` option.
|
|
33
33
|
Event: ${Zt(e)}.
|
|
34
|
-
Url: ${Us(e)}`),!0)}function uv(e,t){return e.type||!t||!t.length?!1:dv(e).some(r=>si(r,t))}function pv(e,t){if(e.type!=="transaction"||!t||!t.length)return!1;let r=e.transaction;return r?si(r,t):!1}function fv(e,t){if(!t||!t.length)return!1;let r=Us(e);return r?si(r,t):!1}function mv(e,t){if(!t||!t.length)return!0;let r=Us(e);return r?si(r,t):!0}function dv(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 hv(e){try{return e.exception.values[0].type==="SentryError"}catch{}return!1}function gv(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?gv(t):null}catch{return De&&K.error(`Cannot extract url for event ${Zt(e)}`),null}}function yv(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 vv="Dedupe",Ev=()=>{let e;return{name:vv,processEvent(t){if(t.type)return t;try{if(_v(t,e))return De&&K.warn("Event dropped due to being a duplicate of previously captured event."),null}catch{}return e=t}}},Hs=Ev;function _v(e,t){return t?!!(Sv(e,t)||wv(e,t)):!1}function Sv(e,t){let r=e.message,n=t.message;return!(!r&&!n||r&&!n||!r&&n||r!==n||!Rm(e,t)||!Dm(e,t))}function wv(e,t){let r=xm(t),n=xm(e);return!(!r||!n||r.type!==n.type||r.value!==n.value||!Rm(e,t)||!Dm(e,t))}function Dm(e,t){let r=vs(e),n=vs(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 Rm(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 xm(e){return e.exception&&e.exception.values&&e.exception.values[0]}var We=te,tu=0;function ru(){return tu>0}function Mv(){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 Mv(),Os(o=>{o.addEventProcessor(c=>(t.mechanism&&(ui(c,void 0,void 0),xr(c,t.mechanism)),c.extra=ee(w({},c.extra),{arguments:i}),c)),Ms(s)}),s}};try{for(let i in e)Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=e[i])}catch{}hs(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 Rr=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function $s(e,t){let r=ou(e,t),n={type:t&&t.name,value:Hv(t)};return r.length&&(n.stacktrace={frames:r}),n.type===void 0&&n.value===""&&(n.value="Unrecoverable error caught"),n}function Bv(e,t,r,n){let i=Ue(),s=i&&i.getOptions().normalizeDepth,o=Vv(t),c={__serialized__:Is(t,s)};if(o)return{exception:{values:[$s(e,o)]},extra:c};let u={exception:{values:[{type:ln(t)?t.constructor.name:n?"UnhandledRejection":"Error",value:$v(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:[$s(e,t)]}}}function ou(e,t){let r=t.stacktrace||t.stack||"",n=Uv(t),i=Fv(t);try{return e(r,n,i)}catch{}return[]}var kv=/Minified React error #\d+;/i;function Uv(e){return e&&kv.test(e.message)?1:0}function Fv(e){return typeof e.framesToPop=="number"?e.framesToPop:0}function Hv(e){let t=e&&e.message;return t?t.error&&typeof t.error.message=="string"?t.error.message:t:"No error message"}function Pm(e,t,r,n){let i=r&&r.syntheticException||void 0,s=js(e,t,i,n);return xr(s),s.level="error",r&&r.event_id&&(s.event_id=r.event_id),Wt(s)}function Lm(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),Wt(o)}function js(e,t,r,n,i){let s;if(ps(t)&&t.error)return nu(e,t.error);if(fs(t)||ol(t)){let o=t;if("stack"in t)s=nu(e,t);else{let c=o.name||(fs(o)?"DOMError":"DOMException"),u=o.message?`${c}: ${o.message}`:c;s=iu(e,u,r,n),ui(s,u)}return"code"in o&&(s.tags=ee(w({},s.tags),{"DOMException.code":`${o.code}`})),s}return an(t)?nu(e,t):Qt(t)||ln(t)?(s=Bv(e,t,r,i),xr(s,{synthetic:!0}),s):(s=iu(e,t,r,n),ui(s,`${t}`,void 0),xr(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(oi(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 $v(e,{isUnhandledRejection:t}){let r=gl(e),n=t?"promise rejection":"exception";return ps(e)?`Event \`ErrorEvent\` captured as ${n} with message \`${e.message}\``:ln(e)?`Event \`${jv(e)}\` (type=${e.type}) captured as ${n}`:`Object captured as ${n} with keys: ${r}`}function jv(e){try{let t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{}}function Vv(e){for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t)){let r=e[t];if(r instanceof Error)return r}}function Mm(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:fr(n)}),s=Wv(e);return hr(i,[s])}function Wv(e){return[{type:"user_report"},e]}var Eo=class extends vo{constructor(e){let t=w({parentSpanIsAlwaysRootSpan:!0},e),r=We.SENTRY_SDK_SOURCE||Cl();eu(t,"browser",["browser"],r),super(t),t.sendClientReports&&We.document&&We.document.addEventListener("visibilitychange",()=>{We.document.visibilityState==="hidden"&&this._flushOutcomes()})}eventFromException(e,t){return Pm(this._options.stackParser,e,t,this._options.attachStacktrace)}eventFromMessage(e,t="info",r){return Lm(this._options.stackParser,e,t,r,this._options.attachStacktrace)}captureUserFeedback(e){if(!this._isEnabled()){Rr&&K.warn("SDK not enabled, will not capture user feedback.");return}let t=Mm(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){Rr&&K.log("No outcomes to send");return}if(!this._dsn){Rr&&K.log("No dsn provided, will not send outcomes");return}Rr&&K.log("Sending outcomes:",e);let t=Bl(e,this._options.tunnel&&fr(this._dsn));this.sendEnvelope(t)}},Bm=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,qe=te,Gv=1e3,km,su,au;function cu(e){let t="dom";bt(t,e),It(t,Yv)}function Yv(){if(!qe.document)return;let e=Qe.bind(null,"dom"),t=Um(e,!0);qe.document.addEventListener("click",t,!1),qe.document.addEventListener("keypress",t,!1),["EventTarget","Node"].forEach(r=>{let n=qe[r]&&qe[r].prototype;!n||!n.hasOwnProperty||!n.hasOwnProperty("addEventListener")||(Me(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__||{},g=d[s]=d[s]||{refCount:0};if(!g.handler){let h=Um(e);g.handler=h,i.call(this,s,h,c)}g.refCount++}catch{}return i.call(this,s,o,c)}}),Me(n,"removeEventListener",function(i){return function(s,o,c){if(s==="click"||s=="keypress")try{let u=this,d=u.__sentry_instrumentation_handlers__||{},g=d[s];g&&(g.refCount--,g.refCount<=0&&(i.call(this,s,g.handler,c),g.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 zv(e){if(e.type!==su)return!1;try{if(!e.target||e.target._sentryId!==au)return!1}catch{}return!0}function qv(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=Kv(r);if(qv(r.type,n))return;wt(r,"_sentryCaptured",!0),n&&!n._sentryId&&wt(n,"_sentryId",rt());let i=r.type==="keypress"?"input":r.type;zv(r)||(e({event:r,name:i,global:t}),su=r.type,au=n?n._sentryId:void 0),clearTimeout(km),km=qe.setTimeout(()=>{au=void 0,su=void 0},Gv)}}function Kv(e){try{return e.target}catch{return null}}var Vs;function lu(e){let t="history";bt(t,e),It(t,Xv)}function Xv(){if(!Fl())return;let e=qe.onpopstate;qe.onpopstate=function(...r){let n=qe.location.href,i=Vs;if(Vs=n,Qe("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=Vs,o=String(i);Vs=o,Qe("history",{from:s,to:o})}return r.apply(this,n)}}Me(qe.history,"pushState",t),Me(qe.history,"replaceState",t)}var Ws={};function uu(e){let t=Ws[e];if(t)return t;let r=qe[e];if(lo(r))return Ws[e]=r.bind(qe);let n=qe.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){Bm&&K.warn(`Could not create sandbox iframe for ${e} check, bailing to window.${e}: `,i)}return r&&(Ws[e]=r.bind(qe))}function Gs(e){Ws[e]=void 0}var gn="__sentry_xhr_v3__";function pu(e){let t="xhr";bt(t,e),It(t,Jv)}function Jv(){if(!qe.XMLHttpRequest)return;let e=XMLHttpRequest.prototype;Me(e,"open",function(t){return function(...r){let n=Pt()*1e3,i=St(r[0])?r[0].toUpperCase():void 0,s=Qv(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:Pt()*1e3,startTimestamp:n,xhr:this};Qe("xhr",u)}};return"onreadystatechange"in this&&typeof this.onreadystatechange=="function"?Me(this,"onreadystatechange",function(c){return function(...u){return o(),c.apply(this,u)}}):this.addEventListener("readystatechange",o),Me(this,"setRequestHeader",function(c){return function(...u){let[d,g]=u,h=this[gn];return h&&St(d)&&St(g)&&(h.request_headers[d.toLowerCase()]=g),c.apply(this,u)}}),t.apply(this,r)}}),Me(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:Pt()*1e3,xhr:this};return Qe("xhr",i),t.apply(this,r)}})}function Qv(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 Gs("fetch"),$r("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 Gs("fetch"),r-=o,n--,$r(u)}}return Bs(e,i)}var Zv=30,eE=50;function mu(e,t,r,n){let i={filename:e,function:t==="<anonymous>"?mr:t,in_app:!0};return r!==void 0&&(i.lineno=r),n!==void 0&&(i.colno=n),i}var tE=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,rE=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,nE=/\((\S*)(?::(\d+))(?::(\d+))\)/,iE=e=>{let t=tE.exec(e);if(t){let[,n,i,s]=t;return mu(n,mr,+i,+s)}let r=rE.exec(e);if(r){if(r[2]&&r[2].indexOf("eval")===0){let s=nE.exec(r[2]);s&&(r[2]=s[1],r[3]=s[2],r[4]=s[3])}let[n,i]=jm(r[1]||mr,r[2]);return mu(i,n,r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}},Fm=[Zv,iE],oE=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,sE=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,aE=e=>{let t=oE.exec(e);if(t){if(t[3]&&t[3].indexOf(" > eval")>-1){let i=sE.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]||mr;return[n,r]=jm(n,r),mu(r,n,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}},Hm=[eE,aE],$m=[Fm,Hm],du=vl(...$m),jm=(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]:mr,r?`safari-extension:${t}`:`safari-web-extension:${t}`]:[e,t]},Ys=1024,lE="Breadcrumbs",uE=(e={})=>{let t=w({console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0},e);return{name:lE,setup(r){t.console&&El(mE(r)),t.dom&&cu(fE(r,t.dom)),t.xhr&&pu(dE(r)),t.fetch&&bl(hE(r)),t.history&&lu(gE(r)),t.sentry&&r.on("beforeSendEvent",pE(r))}}},Vm=uE;function pE(e){return function(t){Ue()===e&&gr({category:`sentry.${t.type==="transaction"?"transaction":"event"}`,event_id:t.event_id,level:t.level,message:Zt(t)},{event:t})}}function fE(e,t){return function(r){if(Ue()!==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>Ys&&(Rr&&K.warn(`\`dom.maxStringLength\` cannot exceed ${Ys}, but a value of ${o} was configured. Sentry will use ${Ys} instead.`),o=Ys),typeof s=="string"&&(s=[s]);try{let u=r.event,d=yE(u)?u.target:u;n=ao(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}),gr(c,{event:r.event,name:r.name,global:r.global})}}function mE(e){return function(t){if(Ue()!==e)return;let r={category:"console",data:{arguments:t.args,logger:"console"},level:Rl(t.level),message:ms(t.args," ")};if(t.level==="assert")if(t.args[0]===!1)r.message=`Assertion failed: ${ms(t.args.slice(1)," ")||"console.assert"}`,r.data.arguments=t.args.slice(1);else return;gr(r,{input:t.args,level:t.level})}}function dE(e){return function(t){if(Ue()!==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},g={xhr:t.xhr,input:u,startTimestamp:r,endTimestamp:n};gr({category:"xhr",data:d,type:"http"},g)}}function hE(e){return function(t){if(Ue()!==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};gr({category:"fetch",data:i,level:"error",type:"http"},s)}else{let i=t.response,s=ee(w({},t.fetchData),{status_code:i&&i.status}),o={input:t.args,response:i,startTimestamp:r,endTimestamp:n};gr({category:"fetch",data:s,type:"http"},o)}}}function gE(e){return function(t){if(Ue()!==e)return;let r=t.from,n=t.to,i=po(We.location.href),s=r?po(r):void 0,o=po(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),gr({category:"navigation",data:{from:r,to:n}})}}function yE(e){return!!e&&!!e.target}var vE=["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"],EE="BrowserApiErrors",_E=(e={})=>{let t=w({XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0},e);return{name:EE,setupOnce(){t.setTimeout&&Me(We,"setTimeout",Wm),t.setInterval&&Me(We,"setInterval",Wm),t.requestAnimationFrame&&Me(We,"requestAnimationFrame",SE),t.XMLHttpRequest&&"XMLHttpRequest"in We&&Me(XMLHttpRequest.prototype,"send",wE);let r=t.eventTarget;r&&(Array.isArray(r)?r:vE).forEach(bE)}}},Gm=_E;function Wm(e){return function(...t){let r=t[0];return t[0]=hn(r,{mechanism:{data:{function:Vt(e)},handled:!1,type:"instrument"}}),e.apply(this,t)}}function SE(e){return function(t){return e.apply(this,[hn(t,{mechanism:{data:{function:"requestAnimationFrame",handler:Vt(e)},handled:!1,type:"instrument"}})])}}function wE(e){return function(...t){let r=this;return["onload","onerror","onprogress","onreadystatechange"].forEach(n=>{n in r&&typeof r[n]=="function"&&Me(r,n,function(i){let s={mechanism:{data:{function:n,handler:Vt(i)},handled:!1,type:"instrument"}},o=un(i);return o&&(s.mechanism.data.handler=Vt(o)),hn(i,s)})}),e.apply(this,t)}}function bE(e){let t=We,r=t[e]&&t[e].prototype;!r||!r.hasOwnProperty||!r.hasOwnProperty("addEventListener")||(Me(r,"addEventListener",function(n){return function(i,s,o){try{typeof s.handleEvent=="function"&&(s.handleEvent=hn(s.handleEvent,{mechanism:{data:{function:"handleEvent",handler:Vt(s),target:e},handled:!1,type:"instrument"}}))}catch{}return n.apply(this,[i,hn(s,{mechanism:{data:{function:"addEventListener",handler:Vt(s),target:e},handled:!1,type:"instrument"}}),o])}}),Me(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 IE="GlobalHandlers",TE=(e={})=>{let t=w({onerror:!0,onunhandledrejection:!0},e);return{name:IE,setupOnce(){Error.stackTraceLimit=50},setup(r){t.onerror&&(CE(r),Ym("onerror")),t.onunhandledrejection&&(xE(r),Ym("onunhandledrejection"))}}},zm=TE;function CE(e){Il(t=>{let{stackParser:r,attachStacktrace:n}=qm();if(Ue()!==e||ru())return;let{msg:i,url:s,line:o,column:c,error:u}=t,d=AE(js(r,u||i,void 0,n,!1),s,o,c);d.level="error",yo(d,{originalException:u,mechanism:{handled:!1,type:"onerror"}})})}function xE(e){Tl(t=>{let{stackParser:r,attachStacktrace:n}=qm();if(Ue()!==e||ru())return;let i=DE(t),s=cn(i)?RE(i):js(r,i,void 0,n,!0);s.level="error",yo(s,{originalException:i,mechanism:{handled:!1,type:"onunhandledrejection"}})})}function DE(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 RE(e){return{exception:{values:[{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(e)}`}]}}}function AE(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,g=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:mr,in_app:!0,lineno:g}),e}function Ym(e){Rr&&K.log(`Global Handler attached: ${e}`)}function qm(){let e=Ue();return e&&e.getOptions()||{stackParser:()=>[],attachStacktrace:!1}}var Km=()=>({name:"HttpContext",preprocessEvent(e){if(!We.navigator&&!We.location&&!We.document)return;let t=e.request&&e.request.url||We.location&&We.location.href,{referrer:r}=We.document||{},{userAgent:n}=We.navigator||{},i=w(w(w({},e.request&&e.request.headers),r&&{Referer:r}),n&&{"User-Agent":n}),s=ee(w(w({},e.request),t&&{url:t}),{headers:i});e.request=s}}),NE="cause",OE=5,PE="LinkedErrors",LE=(e={})=>{let t=e.limit||OE,r=e.key||NE;return{name:PE,preprocessEvent(n,i,s){let o=s.getOptions();ul($s,o.stackParser,o.maxValueLength,r,t,n,i)}}},Xm=LE;function hu(e){return[Fs(),ks(),Gm(),Vm(),zm(),Xm(),Hs(),Km()]}var gu=class extends Error{cause;constructor(e,t){super(e),this.cause=t}},Re=class Bh{static INSTANCE;contexts={};tags;client;user;constructor(){this.init()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Bh),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 mt;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",Jm()),n}init(){let t=hu({}).filter(r=>!["BrowserApiErrors","Breadcrumbs","GlobalHandlers"].includes(r.name));this.client=new Eo({dsn:"https://1bc3dda4c861f60cd6be1b67584f4bc6@o559187.ingest.us.sentry.io/4507626484203520",transport:fu,stackParser:du,integrations:t,environment:ut.mode,release:`web-sdk@${N.SDK_VERSION}`,debug:ut.debug}),this.client.init()}},zs=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}};function Ks(e){try{return new URL(e)}catch{return}}function yu(e){return!e||e==="null"||e==="undefined"}function Zm(e,t){let r=e.indexOf(t);return r===-1?!1:(e.splice(r,1),!0)}function Lt(e,t){if(e==0&&t)return"Free";let r=ce.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=zs.format(e*100,o);else{let u;try{u=new Intl.NumberFormat(td(),{style:"currency",currency:s||i,minimumFractionDigits:0,maximumFractionDigits:2})}catch(d){return Re.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}function ed(e){return new Intl.NumberFormat(td(),{notation:"compact"}).format(e)}function td(){return navigator.languages!==void 0?navigator.languages[0].split("-")[0]:navigator.language??"en"}var qs;function Jm(){if(qs)return qs;try{return qs=Intl.DateTimeFormat().resolvedOptions().timeZone,qs}catch{return""}}function fi(e){document.readyState==="complete"?e():document.addEventListener("readystatechange",()=>{document.readyState==="complete"&&e()})}function jr(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)}async function vu(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 Qm.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}async function mi(e,t=10,r=document){return(await vu(e,t,r)).item(0)}function rd(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})}async function Xs(){let e=await xe.get(oe.DEVICE_ID),t=await tt.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"}]}function yn(e,t,r){Object.defineProperty(e,t,{enumerable:!1,configurable:!1,writable:!1,value:r})}var Js=class{url;alt;constructor(e){e.alt&&(this.alt=e.alt),this.url=e.url}},Qs=class{d;cmp;effective;constructor(e={}){this.d=e.d,this.cmp=e.cmp,this.effective=this.d}},Eu=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}},yr=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 Js(t))??[],this.link=e.link,this.price=new Qs(e.price),this.sku=e.sku,this.isAvailable=e.isAvailable,this.quantity=e.quantity,this.effectivePrice=Ht(this.price.effective),e.sellingPlans?.length&&(this.selectedSellingPlan=Ht(void 0)),this.sellingPlans=e.sellingPlans?.map(t=>{let r=new Eu(t);return r.isSelected&&(this.selectedSellingPlan.value=r),r})}getOneImage(){return this.imgs[0]?.url}changeSellingPlan(e){this.selectedSellingPlan.value=e}hasEffectivePrice(){return this.effectivePrice.value!==this.price.d}},Dt=class{id;mID;name;status;ctg;imgs;videos;portraitVideos;vars;desc;sDesc;link;slug;quantity;category;meta;reviews;tags;selectedOrFirstVariant;selected=Ht(!0);constructor(e){this.update(e),this.selectedOrFirstVariant=Ht(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}set variants(e){this.vars=e,this.selectedOrFirstVariant.value=this.selectedVariant}get selectedVariant(){return this.vars.find(e=>e.isAvailable)??this.vars[0]}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 yr(t))),this}toEmbed(e){return e=e??this.selectedOrFirstVariant.value,new pt({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})}getTemplateVariables(){let e=this.selectedOrFirstVariant.value,t=e.price,r=this.name,n=this.category,i=Lt(t.d,!0),s=this.variantImage??this.imageURL,o=this.meta,c=this.tags?.join(",")??"",u=this.reviews?.rating,d=this.reviews?.totalReviews,g=t.cmp&&t.cmp>t.d,h={name:r,price:i,image_url:s,meta:o,category:n,rating:u,reviews:d,tags:c};if(e.hasEffectivePrice()&&(h.effective_price=Lt(e.effectivePrice.value)),g){h.compare_price=Lt(t.cmp);let E=t.cmp-t.d;h.discount_percent=(E/t.cmp*100).toFixed(0),h.discount_price=Lt(E)}let v={name:e.name,quantity:e.quantity};return{product:h,variant:v}}},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}},_u=class{enabled;constructor(e){this.enabled=e.enabled}},Su=class extends _u{max;min;constructor(e){e??={},super(e),this.min=e.min,this.max=e.max}},ea=class{productQuantity;constructor(e){e??={},this.productQuantity=new Su(e.productQuantity)}},vn=class{s;g;i;constructor(e){e.s&&(this.s=new Le(e.s)),e.g&&(this.g=new _o(e.g)),this.i=e.i}get solid(){return this.s}get glossy(){return this.g}get img(){return this.i}},So="a-f\\d",ME=`#?[${So}]{3}[${So}]?`,BE=`#?[${So}]{6}([${So}]{2})?`,kE=new RegExp(`[^#${So}]`,"gi"),UE=new RegExp(`^${ME}$|^${BE}$`,"i");function wu(e,t={}){if(typeof e!="string"||kE.test(e)||!UE.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 Le=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 wu(this.hex,{format:"css",alpha:this.getAlpha()})}catch(e){return console.error("Invalid hex",e),"#000000"}}getAlpha(){return(this.a??100)/100}},Ar=class{s;r;w;c;constructor(e){this.s=e.s,this.r=e.r,this.w=e.w,e.c&&(this.c=new Le(e.c))}get radius(){return this.r}get width(){return this.w}get color(){return this.c}get style(){return ta[this.s??1]}},ta=(e=>(e[e.SOLID=1]="SOLID",e[e.DASHED=2]="DASHED",e))(ta||{}),_o=class jh{static DEFAULT_FALLBACK=new Le({h:"#000000",a:50});r;c;fb;constructor(t){this.r=t.r,t.c&&(this.c=new Le(t.c)),t.fb&&(this.fb=new Le(t.fb))}get radius(){return this.r}get color(){return this.c}get fallback(){return this.fb??jh.DEFAULT_FALLBACK}},wo=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 Le(e.clr)}getStyle(e){return`${this.x*e}px ${this.y*e}px ${this.blur*e}px ${this.spr*e}px ${this.clr.rgba}`}},Nr=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 vn(e.bg)),e.br&&(this.br=new Ar(e.br)),e.shd&&(this.shd=new wo(e.shd)),e.spc&&(this.spc=new Nr(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 Be[this.t]}get click(){return this.clc}},Be=(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))(Be||{}),_n=class extends Mt{constructor(e){super(e)}},Or=class extends Mt{src;constructor(e){super(e),this.src=e.src}},di=(e=>(e[e.START=0]="START",e[e.CENTER=1]="CENTER",e[e.END=2]="END",e[e.JUSTIFY=3]="JUSTIFY",e))(di||{}),ra=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 bu(t))}},bu=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')`}},Ze=class{fw;fs;fam;fmly;lh=1.2;ls;s;tc;ta;td;tdc;constructor(e){this.update(e)}get alignment(){return di[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 Le(e.tdc)),this.td=e.td,this.fs=e.s??e.fs??60,this.tc=new Le(e.tc),this.ta=e.ta??1,this.fw=e.fw??400,this.ls=e.ls??0,this.tc.h??="#000000",this.fam=new ra(e.fam??e.fmly)}resize(e){this.s*=e,this.ls*=e}},vr=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 Ze(t)}get color(){return this.typography.tc}get typography(){return this.typo}},Vr=class extends vr{prs;constructor(e){super(e),this.prs=e.prs}get parts(){return this.prs}},na=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}},hi=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}},gi=class extends vr{gap;timer;timerType;horizontal;lblPos;show;constructor(e){e??={},super(e),this.gap=e.gap,this.timerType=e.type,this.timer=new hi(e.timer),this.show=e.show??{day:!0,hour:!0,minute:!0,second:!0},this.horizontal=e.horizontal,this.lblPos=e.lblPos}},ia=class{txt;c;constructor(e){e??={},this.txt=e.txt,this.c=new Le(e.c??{})}get text(){return this.txt}get color(){return this.c}},Wr=class extends vr{ph;constructor(e){super(e),this.ph=new ia(e.ph)}get placeholderText(){return this.ph.text}get placeholderColor(){return this.ph.color.rgba}},yi=class extends Wr{constructor(e){e??={},super(e)}},vi=class extends Wr{},Ei=class extends Wr{},_i=class extends Or{},Sn=(e=>(e[e.LOW=1]="LOW",e[e.MEDIUM=2]="MEDIUM",e[e.HIGH=3]="HIGH",e))(Sn||{}),oa=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[]}}},bo=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 oa(e.anim),this.embedded=e.embedded,this.position=e.position??1,this.spc||(this.spc=new Nr({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}`}},sa=class extends bo{cont;elems=[];mob;constructor(e){e=e??{},super(e),this.cont=new na(e.cont),this.mob=new bo(e.mob),this.bg||(this.bg=this.cont.bg,delete this.cont.bg),e.elems.forEach(t=>{t.t===1?this.elems.push(new Or(t)):t.t===2?this.elems.push(new Vr(t)):t.t===3?this.elems.push(new Vr(t)):t.t===100?this.elems.push(new _n(t)):t.t===51?this.elems.push(new vi(t)):t.t===52?this.elems.push(new Ei(t)):t.t===61?this.elems.push(new gi(t)):t.t===15||t.t===16?this.elems.push(new yi(t)):t.t===13&&this.elems.push(new _i(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}},Si=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}},aa=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}},ca=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}},la=class{size;bg;br;spc;typo;lout;flex;constructor(e){e??={},this.spc=new Nr(e.spc),e.size&&(this.size=new ca(e.size)),e.bg&&(this.bg=new vn(e.bg)),e.br&&(this.br=new Ar(e.br)),e.typo&&(this.typo=new Ze(e.typo)),e.lout&&(this.lout=new aa(e.lout)),e.flex&&(this.flex=new Si(e.flex))}},wi=class{sm;lg;constructor(e){e??={},this.sm=new la(e.sm),this.lg=new la(e.lg)}},nt=class{t;style;hide;when;clc;constructor(e,t){t??={},this.t=e,this.style=new wi(t.style),this.hide=t.hide,t.when?.op&&(this.when=t.when),t.clc&&(this.clc=t.clc)}get stringType(){return Be[this.t]}},it=class extends nt{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 it{constructor(e,t){super(e,t??3)}},bi=class extends nt{value;constructor(e){super(6,e),e??={},this.value=e.value}},Ii=class extends it{constructor(e=15,t){super(t,e)}},ua=class extends nt{c;iconSize;showSingleStar;fullStar;halfStart;constructor(e){super(19,e),e??={},this.c=new Le(e.c),this.iconSize=e.iconSize??24,this.showSingleStar=e.showSingleStar??!1,this.fullStar=e.fullStar,this.halfStart=e.halfStart}},nd=Ee(nn()),Iu=class{enabled;type;color;constructor(e){e??={},this.enabled=e.enabled,this.type=e.type,this.color=new Le(e.color)}},Tu=class{size;enabled;color;constructor(e){e??={},this.enabled=e.enabled,this.size=e.size,this.color=new Le(e.color)}},Io=class{navigation;pagination;autoplay;maxInRow;gap;slidesPerView;constructor(e){e??={},this.navigation=new Tu(e.navigation),this.pagination=new Iu(e.pagination),this.autoplay=e.autoplay,this.slidesPerView=e.slidesPerView??1,this.maxInRow=e.maxInRow??e.slidesPerView??4,this.gap=e.gap??0}},pa=class extends nt{conf;slide;formData;values;allowedTypes;constructor(e){super(62,e),e&&this.update(e)}update(e){e??={},this.slide=Bt.getParsedElement(e.slide),this.formData=e.formData,this.values=e.values,this.conf=new Io(e.conf),this.allowedTypes=e.allowedTypes}},fa=class extends it{gap;timer;timerType;horizontal;lblPos;show;constructor(e){e??={},super(e,61),this.gap=e.gap,this.timerType=e.type,this.timer=new hi(e.timer),this.show=e.show??{days:!0,hours:!0,minutes:!0,seconds:!0},this.horizontal=e.horizontal,this.lblPos=e.lblPos}},Gr=class extends nt{elems;constructor(e){super(4,e),this.update(e)}update(e){e??={},this.elems??=[],e.elems?.forEach(t=>{let r=Bt.getParsedElement(t);r&&this.elems.push(r)})}},bn=class extends nt{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}},Bt=class Fh{static getParsedElements(t){let r=[];return t?.forEach(n=>{let i=Fh.getParsedElement(n);i&&r.push(i)}),r}static getParsedElement(t){switch(t.t){case 2:return new it(t);case 3:return new wn(t);case 6:return new bi(t);case 11:return new ma(t);case 12:return new Yr(t);case 61:return new fa(t);case 4:return new Gr(t);case 1:return new bn(t);case 13:return new bn(t,13);case 14:return new it(t,14);case 15:case 16:return new Ii(t.t,t);case 18:return new wn(t,18);case 62:return new pa(t);case 19:return new ua(t);default:nd.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"}}},Yr=class extends nt{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=Bt.getParsedElements(e.elems),this.noLinks=e.noLinks,!this.elems.length){e.cBox&&this.elems.push(new bi(e.cBox)),this.elems.push(new bn(e.img,13));let t=new it(e.title,14);t.hide=!e.show?.title,t.text="{{ product.name }}",this.elems.push(t);let r=new it(e.price);r.text="{{ product.price }}",r.hide=!e.show?.price;let n=new it(e.compareAt);n.text="{{ product.compare_price }}",n.hide=!e.show?.price,e.compareAt||(n.style=new wi(r.style),n.style.lg.typo=new Ze(ee(w({},n.style.lg.typo),{td:"line-through"})),n.style.sm.typo=new Ze(ee(w({},n.style.sm.typo),{td:"line-through"})));let i=new Gr({style:{lg:{spc:{mb:10},flex:{dir:"row",gap:10,ai:"center",jc:Bt.parseAlignmentToJustifyContent(r.style.lg.typo?.ta)}}}});i.elems.push(n),i.elems.push(r),this.elems.push(i);let s=new Ii(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 it(e.symbol))}},ma=class extends nt{conf;prod;constructor(e){super(11,e),e??={},this.conf=new Cu(e.conf),this.prod=new Yr(e.prod)}},da=class extends Io{disp;maxItems;constructor(e){e??={},super(e),this.disp=e.disp,this.maxItems=e.maxItems}},Cu=class{lg;sm;constructor(e){e??={},this.lg=new da(e.lg),this.sm=new da(e.sm)}},ha=class extends Gr{constructor(e){super(e)}},Ti=class{cont;elems=[];constructor(e){e=e??{},this.cont=new ha(e.cont),e.elems?.forEach(t=>{this.addRawElement(t)})}addRawElement(e){let t=Bt.getParsedElement(e);return t&&this.elems.push(t),t}},id=Ee(Tr()),xu=class{minValue;rewardType;label;reachingText;reachedText;discount;items;calculatedAlignment;constructor(e){this.calculatedAlignment=e.calculatedAlignment,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 pt(t))}},ga=class{layout;milestones;totalProgress;coupons;onlyLatestGift;noConfetti;constructor(e){this.layout=e.layout??id.ProgressBarLayout.ICONS,this.onlyLatestGift=e.onlyLatestGift,this.noConfetti=e.noConfetti,this.update(e)}update(e){e=e??{},this.milestones=e.milestones?.map(t=>new xu(t))??[],this.totalProgress=e.totalProgress,this.coupons=e.coupons}},ya=class{applyDiscountOnMinimum;constructor(e){this.applyDiscountOnMinimum=e.applyDiscountOnMinimum}},va=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 pt(t)):[]}},Ea=class{videos;source;template;heading;slidePerViewCount;autoPlay;showMuteButton;footerContent;constructor(e={}){this.videos=e.videos?.map(t=>new va(t))??[],this.source=e.source,this.template=e.template,this.heading=e.heading,this.showMuteButton=e.showMuteButton,this.slidePerViewCount=e.slidePerViewCount??4,this.autoPlay=e.autoPlay??"ON",this.footerContent=e.footerContent??"FIRST_ITEM"}},Sa=class{modifications;constructor(e={}){e.modifications?.length?this.modifications=e.modifications.map(t=>new wa(t)):e.experiments?.length&&(this.modifications=e.experiments.map(t=>new wa(t)))}},wa=class{cssSelector;type;display;bg;typo;br;text;constructor(e={}){this.cssSelector=e.cssSelector??"",this.type=e.type??"OTHER",this.display=e.display,e.bg&&(this.bg=new Le(e.bg)),e.typo&&(this.typo=new Ze(e.typo)),e.br&&(this.br=new Ar(e.br)),this.text=e.text}get style(){let e={};return this.display==="HIDE"?e.display="none":this.display==="BLOCK"?e.display="block":this.display==="INLINE"&&(e.display="inline"),this.br?.r&&(e.borderRadius=this.br.r+"px"),this.br?.w&&(e.borderWidth=this.br.w+"px"),this.br?.s&&(e.borderStyle=ta[this.br.s]?.toLowerCase()),this.br?.c?.h&&(e.borderColor=this.br.color?.rgba),this.bg?.h&&(e.backgroundColor=this.bg.rgba),this.type==="TEXT"&&this.typo&&(this.typo.fs&&(e.fontSize=this.typo.fs+"px"),this.typo.lh&&(e.lineHeight=this.typo.lh),this.typo.fw&&(e.fontWeight=this.typo.fw),this.typo.ta&&(e.textAlign=this.typo.alignment),this.typo.tc.h&&(e.color=this.typo.tc.rgba),this.typo.ls&&(e.letterSpacing=this.typo.letterSpacing),this.typo.td&&(e.textDecoration=this.typo.td??"none")),e}toString(){return`Experiment(cssSelector=${this.cssSelector})`}},Du=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===ot.EngagementContentType.EXCLUSION}isABTesting(){return this.contentType===ot.EngagementContentType.ABTESTING}isSingleContent(){return this.contentType===ot.EngagementContentType.SINGLE}},Tt=class Hh extends Du{static SWIPER_ELEMENTS=new Set([11,62]);nudgeID;contentID;variation;ian;widget;discount;placement;promotionType;contentSource;manipulation;klaviyoFormID;hasMultiplePlacement;skipSubscribedItems;progressBarConfig;stickyATCConfig;bundleConfig;content;previewType;occurred;id;currency;props;items;nonMutableItems;embeddedItems;bundleFrom;collections;customerData;experimentConfig;discountData=Ht({});constructor(t){super(t),this.id=t.id,this.nudgeID=t.nudgeID,this.currency=ce.get().currencyCode??"USD",this.contentID=t.contentID,this.variation=t.variation,t.widget&&(this.widget=new Ti(t.widget)),this.previewType=t.previewType,this.occurred=t.occurred??new Date,this.props=t.props,this.embeddedItems=t.embeddedItems?.map(r=>new pt(r)),this.items=t.items?.map(r=>new Dt(r))??[],this.nonMutableItems=t.items?.map(r=>new Dt(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 ea(t.manipulation),this.contentSource=t.contentSource,this.klaviyoFormID=t.klaviyoFormID,this.hasMultiplePlacement=t.hasMultiplePlacement,this.skipSubscribedItems=t.skipSubscribedItems,this.stickyATCConfig=t.stickyATCConfig,t.experimentConfig&&(this.experimentConfig=new Sa(t.experimentConfig)),t.progressBarConfig&&(this.progressBarConfig=new ga(t.progressBarConfig)),t.bundleConfig&&(this.bundleConfig=new ya(t.bundleConfig)),t.bundleFrom&&(this.bundleFrom=new Dt(t.bundleFrom)),t.content?.videoConfig&&(this.content={videoConfig:new Ea(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===ot.EngagementObjective.BUNDLE_AND_UPSELL}isCartEmbed(){return this.onsiteDeliveryType===ot.OnsiteDeliveryType.CART_EMBED}isPageEmbed(){return this.onsiteDeliveryType===ot.OnsiteDeliveryType.PAGE_EMBED}isProgressBar(){return this.objective===ot.EngagementObjective.PROGRESS_BAR}isSubscriptionUpsell(){return this.objective===ot.EngagementObjective.SUBSCRIPTION_UPSELL}isCartRecovery(){return this.objective===ot.EngagementObjective.CART_RECOVERY}isProductPromotion(){return this.objective===ot.EngagementObjective.PRODUCT_PROMOTION}isProductPromoted(){return this.isProductPromotion()||this.isBundle()||this.isCartRecovery()}isCollectionPromoted(){return this.isProductPromotion()&&this.collections.length>0&&this.promotionType===ot.PromotionType.COLLECTION}isBYOB(){return this.objective===ot.EngagementObjective.BYOB}isStickyATC(){return this.objective===ot.EngagementObjective.STICKY_ATC}isShoppableVideo(){return this.objective===ot.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:Lt(u.price.d),comparePrice:Lt(u.price.cmp),quantity:n.quantity},s={quantity:u.quantity}}let o={productCount:ue.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 sa(JSON.parse(c))}calculateDiscountData(t,r){let n=ba.ArrayUtils.sum(t,o=>o.selectedOrFirstVariant.value.price.d),i=ba.ArrayUtils.sum(t,o=>{let c=o.selectedOrFirstVariant.value.price;return c.cmp??c.d}),s={actualPrice:n,totalComparePrice:i,discountAmount:0,discountPercentage:0,discountedPrice:n};if(!t?.length||!r||!this.discount?.type){this.discountData.value=this.formatCurrencyAndNumber(s);return}if(zr.DiscountType.BXGY===this.discount.type&&this.discount.values?.length)s.discountPercentage=this.discount.values[0],this.updateEffectivePrice(t,s.discountPercentage,!0),s.discountAmount=s.actualPrice-ba.ArrayUtils.sum(t,o=>o.selectedOrFirstVariant.value.effectivePrice.value);else if([zr.DiscountType.UNIQUE_FLAT_ITEMS,zr.DiscountType.STATIC].includes(this.discount.type)&&this.discount.values?.length)s.discountPercentage=this.discount.values[0],s.discountAmount=s.actualPrice*s.discountPercentage/100,this.updateEffectivePrice(t,s.discountPercentage);else if(this.discount.type===zr.DiscountType.UNIQUE_FIXED_ITEMS&&this.discount.values?.length)s.discountAmount=s.actualPrice-this.discount.values[0],s.discountPercentage=s.discountAmount/s.actualPrice*100,this.updateEffectivePrice(t,s.discountPercentage);else if(this.discount.type===zr.DiscountType.UNIQUE_CHEAPEST_ITEM_FREE){t.sort((c,u)=>u.selectedOrFirstVariant.value.price.d-c.selectedOrFirstVariant.value.price.d);let o=t[t.length-1];o.selectedOrFirstVariant.value.effectivePrice.value=0,s.discountAmount=o.selectedOrFirstVariant.value.price.d,s.discountPercentage=s.discountAmount/s.actualPrice*100}s.discountedPrice=s.actualPrice-s.discountAmount,this.discountData.value=this.formatCurrencyAndNumber(s)}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[zr.DiscountType.UNIQUE_FIXED_ITEMS,zr.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=>Hh.SWIPER_ELEMENTS.has(n.t));if(!t)return!1;if(t.t===62)return!0;let r=Ot.get().isMobile()?"sm":"lg";return t.conf[r].disp===2}toString(){return`Engagement(id=${this.shortID})`}getCartMagicVariables(){let t=ue.getCurrent();return{productCount:t.item_count,amount:Lt(t.total_price/100),originalAmount:Lt(t.original_total_price/100)}}updateEffectivePrice(t,r,n=!1){let i=ce.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:ed(t.discountPercentage??0),discountCode:this.discount?.code};return["actualPrice","discountAmount","discountedPrice","totalComparePrice"].map(n=>{r[n]=Lt(t[n])}),r}};function HE(e,t){return t={exports:{}},e(t,t.exports),t.exports}var $E=GE,jE=zE,VE=XE,_r=[],Yt=[],WE=typeof Uint8Array<"u"?Uint8Array:Array,Ru="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(In=0,od=Ru.length;In<od;++In)_r[In]=Ru[In],Yt[Ru.charCodeAt(In)]=In;var In,od;Yt[45]=62;Yt[95]=63;function Sd(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 GE(e){var t=Sd(e),r=t[0],n=t[1];return(r+n)*3/4-n}function YE(e,t,r){return(t+r)*3/4-r}function zE(e){var t,r=Sd(e),n=r[0],i=r[1],s=new WE(YE(e,n,i)),o=0,c=i>0?n-4:n,u;for(u=0;u<c;u+=4)t=Yt[e.charCodeAt(u)]<<18|Yt[e.charCodeAt(u+1)]<<12|Yt[e.charCodeAt(u+2)]<<6|Yt[e.charCodeAt(u+3)],s[o++]=t>>16&255,s[o++]=t>>8&255,s[o++]=t&255;return i===2&&(t=Yt[e.charCodeAt(u)]<<2|Yt[e.charCodeAt(u+1)]>>4,s[o++]=t&255),i===1&&(t=Yt[e.charCodeAt(u)]<<10|Yt[e.charCodeAt(u+1)]<<4|Yt[e.charCodeAt(u+2)]>>2,s[o++]=t>>8&255,s[o++]=t&255),s}function qE(e){return _r[e>>18&63]+_r[e>>12&63]+_r[e>>6&63]+_r[e&63]}function KE(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(qE(n));return i.join("")}function XE(e){for(var t,r=e.length,n=r%3,i=[],s=16383,o=0,c=r-n;o<c;o+=s)i.push(KE(e,o,o+s>c?c:o+s));return n===1?(t=e[r-1],i.push(_r[t>>2]+_r[t<<4&63]+"==")):n===2&&(t=(e[r-2]<<8)+e[r-1],i.push(_r[t>>10]+_r[t>>4&63]+_r[t<<2&63]+"=")),i.join("")}var Au={byteLength:$E,toByteArray:jE,fromByteArray:VE},JE=function(e,t,r,n,i){var s,o,c=i*8-n-1,u=(1<<c)-1,d=u>>1,g=-7,h=r?i-1:0,v=r?-1:1,E=e[t+h];for(h+=v,s=E&(1<<-g)-1,E>>=-g,g+=c;g>0;s=s*256+e[t+h],h+=v,g-=8);for(o=s&(1<<-g)-1,s>>=-g,g+=n;g>0;o=o*256+e[t+h],h+=v,g-=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)},QE=function(e,t,r,n,i,s){var o,c,u,d=s*8-i-1,g=(1<<d)-1,h=g>>1,v=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=n?0:s-1,y=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=g):(o=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-o))<1&&(o--,u*=2),o+h>=1?t+=v/u:t+=v*Math.pow(2,1-h),t*u>=2&&(o++,u/=2),o+h>=g?(c=0,o=g):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+=y,c/=256,i-=8);for(o=o<<i|c,d+=i;d>0;e[r+E]=o&255,E+=y,o/=256,d-=8);e[r+E-y]|=_*128},Ci={read:JE,write:QE},Ca=HE(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 g(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(yt(a,ArrayBuffer)||a&&yt(a.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(yt(a,SharedArrayBuffer)||a&&yt(a.buffer,SharedArrayBuffer)))return y(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 g(a){return u(a),s(a<0?0:x(a)|0)}o.allocUnsafe=function(a){return g(a)},o.allocUnsafeSlow=function(a){return g(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 v(a){for(var l=a.length<0?0:x(a.length)|0,p=s(l),T=0;T<l;T+=1)p[T]=a[T]&255;return p}function E(a){if(yt(a,Uint8Array)){var l=new Uint8Array(a);return y(l.buffer,l.byteOffset,l.byteLength)}return v(a)}function y(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=x(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"||kr(a.length)?s(0):v(a);if(a.type==="Buffer"&&Array.isArray(a.data))return v(a.data)}function x(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(yt(a,Uint8Array)&&(a=o.from(a,a.offset,a.byteLength)),yt(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(yt(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)||yt(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 rn(a).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return p*2;case"hex":return p>>>1;case"base64":return Wn(a).length;default:if(A)return T?-1:rn(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 ke(this,l,p);case"ascii":return Ve(this,l,p);case"latin1":case"binary":return ye(this,l,p);case"base64":return de(this,l,p);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return se(this,l,p);default:if(T)throw new TypeError("Unknown encoding: "+a);a=(a+"").toLowerCase(),T=!0}}o.prototype._isBuffer=!0;function k(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)k(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)k(this,l,l+3),k(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)k(this,l,l+7),k(this,l+1,l+6),k(this,l+2,l+5),k(this,l+3,l+4);return this},o.prototype.toString=function(){var a=this.length;return a===0?"":arguments.length===0?ke(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(yt(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,W=p-l,be=Math.min(U,W),pe=this.slice(T,A),ge=a.slice(l,p),je=0;je<be;++je)if(pe[je]!==ge[je]){U=pe[je],W=ge[je];break}return U<W?-1:W<U?1:0};function G(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,kr(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:le(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):le(a,[l],p,T,A);throw new TypeError("val must be string, number or Buffer")}function le(a,l,p,T,A){var U=1,W=a.length,be=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,W/=2,be/=2,p/=2}function pe(Z,Te){return U===1?Z[Te]:Z.readUInt16BE(Te*U)}var ge;if(A){var je=-1;for(ge=p;ge<W;ge++)if(pe(a,ge)===pe(l,je===-1?0:ge-je)){if(je===-1&&(je=ge),ge-je+1===be)return je*U}else je!==-1&&(ge-=ge-je),je=-1}else for(p+be>W&&(p=W-be),ge=p;ge>=0;ge--){for(var q=!0,ae=0;ae<be;ae++)if(pe(a,ge+ae)!==pe(l,ae)){q=!1;break}if(q)return ge}return-1}o.prototype.includes=function(a,l,p){return this.indexOf(a,l,p)!==-1},o.prototype.indexOf=function(a,l,p){return G(this,a,l,p,!0)},o.prototype.lastIndexOf=function(a,l,p){return G(this,a,l,p,!1)};function Ae(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 W=0;W<T;++W){var be=parseInt(l.substr(W*2,2),16);if(kr(be))return W;a[p+W]=be}return W}function B(a,l,p,T){return $n(rn(l,a.length-p),a,p,T)}function Q(a,l,p,T){return $n(ri(l),a,p,T)}function Y(a,l,p,T){return $n(Wn(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 Ae(this,a,l,p);case"utf8":case"utf-8":return B(this,a,l,p);case"ascii":case"latin1":case"binary":return Q(this,a,l,p);case"base64":return Y(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 de(a,l,p){return l===0&&p===a.length?Au.fromByteArray(a):Au.fromByteArray(a.slice(l,p))}function ke(a,l,p){p=Math.min(a.length,p);for(var T=[],A=l;A<p;){var U=a[A],W=null,be=U>239?4:U>223?3:U>191?2:1;if(A+be<=p){var pe,ge,je,q;switch(be){case 1:U<128&&(W=U);break;case 2:pe=a[A+1],(pe&192)===128&&(q=(U&31)<<6|pe&63,q>127&&(W=q));break;case 3:pe=a[A+1],ge=a[A+2],(pe&192)===128&&(ge&192)===128&&(q=(U&15)<<12|(pe&63)<<6|ge&63,q>2047&&(q<55296||q>57343)&&(W=q));break;case 4:pe=a[A+1],ge=a[A+2],je=a[A+3],(pe&192)===128&&(ge&192)===128&&(je&192)===128&&(q=(U&15)<<18|(pe&63)<<12|(ge&63)<<6|je&63,q>65535&&q<1114112&&(W=q))}}W===null?(W=65533,be=1):W>65535&&(W-=65536,T.push(W>>>10&1023|55296),W=56320|W&1023),T.push(W),A+=be}return lt(T)}var m=4096;function lt(a){var l=a.length;if(l<=m)return String.fromCharCode.apply(String,a);for(var p="",T=0;T<l;)p+=String.fromCharCode.apply(String,a.slice(T,T+=m));return p}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]&127);return T}function ye(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+=Ki[a[U]];return A}function se(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),Ci.read(this,a,!0,23,4)},o.prototype.readFloatBE=function(a,l){return a=a>>>0,l||ie(a,4,this.length),Ci.read(this,a,!1,23,4)},o.prototype.readDoubleLE=function(a,l){return a=a>>>0,l||ie(a,8,this.length),Ci.read(this,a,!0,52,8)},o.prototype.readDoubleBE=function(a,l){return a=a>>>0,l||ie(a,8,this.length),Ci.read(this,a,!1,52,8)};function ze(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;ze(this,a,l,p,A,0)}var U=1,W=0;for(this[l]=a&255;++W<p&&(U*=256);)this[l+W]=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;ze(this,a,l,p,A,0)}var U=p-1,W=1;for(this[l+U]=a&255;--U>=0&&(W*=256);)this[l+U]=a/W&255;return l+p},o.prototype.writeUint8=o.prototype.writeUInt8=function(a,l,p){return a=+a,l=l>>>0,p||ze(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||ze(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||ze(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||ze(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||ze(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);ze(this,a,l,p,A-1,-A)}var U=0,W=1,be=0;for(this[l]=a&255;++U<p&&(W*=256);)a<0&&be===0&&this[l+U-1]!==0&&(be=1),this[l+U]=(a/W>>0)-be&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);ze(this,a,l,p,A-1,-A)}var U=p-1,W=1,be=0;for(this[l+U]=a&255;--U>=0&&(W*=256);)a<0&&be===0&&this[l+U+1]!==0&&(be=1),this[l+U]=(a/W>>0)-be&255;return l+p},o.prototype.writeInt8=function(a,l,p){return a=+a,l=l>>>0,p||ze(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||ze(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||ze(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||ze(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||ze(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 Jt(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 or(a,l,p,T,A){return l=+l,p=p>>>0,A||Jt(a,l,p,4),Ci.write(a,l,p,T,23,4),p+4}o.prototype.writeFloatLE=function(a,l,p){return or(this,a,l,!0,p)},o.prototype.writeFloatBE=function(a,l,p){return or(this,a,l,!1,p)};function vt(a,l,p,T,A){return l=+l,p=p>>>0,A||Jt(a,l,p,8),Ci.write(a,l,p,T,52,8),p+8}o.prototype.writeDoubleLE=function(a,l,p){return vt(this,a,l,!0,p)},o.prototype.writeDoubleBE=function(a,l,p){return vt(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 W=o.isBuffer(a)?a:o.from(a,T),be=W.length;if(be===0)throw new TypeError('The value "'+a+'" is invalid for argument "value"');for(U=0;U<p-l;++U)this[U+l]=W[U%be]}return this};var Br=/[^+/0-9A-Za-z-_]/g;function Gn(a){if(a=a.split("=")[0],a=a.trim().replace(Br,""),a.length<2)return"";for(;a.length%4!==0;)a=a+"=";return a}function rn(a,l){l=l||1/0;for(var p,T=a.length,A=null,U=[],W=0;W<T;++W){if(p=a.charCodeAt(W),p>55295&&p<57344){if(!A){if(p>56319){(l-=3)>-1&&U.push(239,191,189);continue}else if(W+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 ri(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=[],W=0;W<a.length&&!((l-=2)<0);++W)p=a.charCodeAt(W),T=p>>8,A=p%256,U.push(A),U.push(T);return U}function Wn(a){return Au.toByteArray(Gn(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 yt(a,l){return a instanceof l||a!=null&&a.constructor!=null&&a.constructor.name!=null&&a.constructor.name===l.name}function kr(a){return a!==a}var Ki=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}()}),Se=Ca.Buffer;Ca.SlowBuffer;Ca.INSPECT_MAX_BYTES;Ca.kMaxLength;var Mu=function(e,t){return Mu=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])},Mu(e,t)};function xa(e,t){Mu(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}var Cn=function(e){xa(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),$e=function(e){xa(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 Ia(e){return e&&e.Math==Math&&e}function wd(){return Ia(typeof globalThis=="object"&&globalThis)||Ia(typeof window=="object"&&window)||Ia(typeof self=="object"&&self)||Ia(typeof global=="object"&&global)||Function("return this")()}function ZE(){var e=wd();return typeof e.navigator=="object"&&e.navigator.product==="ReactNative"}var e_=function(e){var t=ZE()?"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=Se.alloc(e),n=0;n<e;++n)r[n]=Math.floor(Math.random()*256);return r},t_=function(){{if(typeof window<"u"){var e=window.crypto||window.msCrypto;if(e&&e.getRandomValues)return function(t){return e.getRandomValues(Se.alloc(t))}}return typeof global<"u"&&global.crypto&&global.crypto.getRandomValues?function(t){return global.crypto.getRandomValues(Se.alloc(t))}:e_}},bd=t_();function r_(e){return["[object ArrayBuffer]","[object SharedArrayBuffer]"].includes(Object.prototype.toString.call(e))}function ku(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}function n_(e){return Object.prototype.toString.call(e)==="[object RegExp]"}function i_(e){return Do(e)&&Object.prototype.toString.call(e)==="[object Date]"}function Do(e){return typeof e=="object"&&e!==null}function Da(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 Ta(e){if(ArrayBuffer.isView(e))return Se.from(e.buffer,e.byteOffset,e.byteLength);if(r_(e))return Se.from(e);throw new $e("Must use either Buffer or TypedArray")}var o_=/^(?:[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,Id=function(e){return typeof e=="string"&&o_.test(e)},Bu=function(e){if(!Id(e))throw new $e('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 Se.from(t,"hex")},sd=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")},rP=Math.pow(2,63)-1,nP=-Math.pow(2,63),s_=Math.pow(2,53),a_=-Math.pow(2,53),Td=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 $e("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=Se.alloc(e.BUFFER_SIZE),this.position=0):(typeof t=="string"?this.buffer=Se.from(t,"binary"):Array.isArray(t)?this.buffer=Se.from(t):this.buffer=Ta(t),this.position=this.buffer.byteLength)}return e.prototype.put=function(t){if(typeof t=="string"&&t.length!==1)throw new $e("only accepts single character String");if(typeof t!="number"&&t.length!==1)throw new $e("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 $e("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=Se.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=Se.alloc(this.buffer.length+t.length);this.buffer.copy(n,0,0,this.buffer.length),this.buffer=n}ArrayBuffer.isView(t)?(this.buffer.set(Ta(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 ad(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=Se.from(t.$binary,"base64")):typeof t.$binary!="string"&&(i=t.$binary.subType?parseInt(t.$binary.subType,16):0,n=Se.from(t.$binary.base64,"base64")):"$uuid"in t&&(i=4,n=Bu(t.$uuid)),!n)throw new $e("Unexpected Binary Extended JSON format ".concat(JSON.stringify(t)));return i===Td?new ad(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 Nu=16,ad=function(e){xa(t,e);function t(r){var n=this,i,s;if(r==null)i=t.generate();else if(r instanceof t)i=Se.from(r.buffer),s=r.__id;else if(ArrayBuffer.isView(r)&&r.byteLength===Nu)i=Ta(r);else if(typeof r=="string")i=Bu(r);else throw new $e("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,Td)||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=sd(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=sd(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=bd(Nu);return r[6]=r[6]&15|64,r[8]=r[8]&63|128,Se.from(r)},t.isValid=function(r){return r?r instanceof t?!0:typeof r=="string"?Id(r):ku(r)?r.length!==Nu?!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),Ra=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(Ra.prototype,"_bsontype",{value:"Code"});function c_(e){return Do(e)&&e.$id!=null&&typeof e.$ref=="string"&&(e.$db==null||typeof e.$db=="string")}var Co=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(Co.prototype,"_bsontype",{value:"DBRef"});var Gt=void 0;try{Gt=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 cd=65536,l_=1<<24,Di=cd*cd,Cd=Di*Di,ld=Cd/2,ud={},pd={},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=pd[t],i)?i:(n=e.fromBits(t,(t|0)<0?-1:0,!0),s&&(pd[t]=n),n)):(t|=0,(s=-128<=t&&t<128)&&(i=ud[t],i)?i:(n=e.fromBits(t,t<0?-1:0,!1),s&&(ud[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>=Cd)return e.MAX_UNSIGNED_VALUE}else{if(t<=-ld)return e.MIN_VALUE;if(t+1>=ld)return e.MAX_VALUE}return t<0?e.fromNumber(-t,r).neg():e.fromBits(t%Di|0,t/Di|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 g=e.fromNumber(Math.pow(n,u));o=o.mul(g).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 Do(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,g=0,h=0,v=0,E=0;return E+=s+d,v+=E>>>16,E&=65535,v+=i+u,h+=v>>>16,v&=65535,h+=n+c,g+=h>>>16,h&=65535,g+=r+o,g&=65535,e.fromBits(v<<16|E,g<<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(Gt){if(!this.unsigned&&this.high===-2147483648&&t.low===-1&&t.high===-1)return this;var r=(this.unsigned?Gt.div_u:Gt.div_s)(this.low,this.high,t.low,t.high);return e.fromBits(r,Gt.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),g=d.mul(t);g.isNegative()||g.gt(i);)n-=u,d=e.fromNumber(n,this.unsigned),g=d.mul(t);d.isZero()&&(d=e.ONE),s=s.add(d),i=i.sub(g)}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)),Gt){var r=(this.unsigned?Gt.rem_u:Gt.rem_s)(this.low,this.high,t.low,t.high);return e.fromBits(r,Gt.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)),Gt){var r=Gt.mul(this.low,this.high,t.low,t.high);return e.fromBits(r,Gt.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,g=t.low&65535,h=0,v=0,E=0,y=0;return y+=o*g,E+=y>>>16,y&=65535,E+=s*g,v+=E>>>16,E&=65535,E+=o*d,v+=E>>>16,E&=65535,v+=i*g,h+=v>>>16,v&=65535,v+=s*d,h+=v>>>16,v&=65535,v+=o*u,h+=v>>>16,v&=65535,h+=n*g+i*d+s*u+o*c,h&=65535,e.fromBits(E<<16|y,h<<16|v,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)*Di+(this.low>>>0):this.high*Di+(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,g=d.toString(t);if(o=u,o.isZero())return g+c;for(;g.length<6;)g="0"+g;c=""+g+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(l_),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 u_=/^(\+|-)?(\d+|(\d*\.\d*))?(E|e)?([-+])?(\d+)?$/,p_=/^(\+|-)?(Infinity|inf)$/i,f_=/^(\+|-)?NaN$/i,To=6111,Ou=-6176,fd=6176,m_=34,Pu=[124,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),md=[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),dd=[120,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),d_=/^([-+])?(\d+)?$/,h_=31,hd=16383,g_=30,y_=31;function gd(e){return!isNaN(parseInt(e,10))}function v_(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 E_(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 __(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 xi(e,t){throw new $e('"'.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(ku(t)){if(t.byteLength!==16)throw new $e("Decimal128 must take a Buffer of 16 bytes");this.bytes=t}else throw new $e("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,g=[0],h=0,v=0,E=0,y=0,_=0,x=0,P=new X(0,0),M=new X(0,0),L=0,k=0;if(t.length>=7e3)throw new $e(""+t+" not a valid Decimal128 string");var G=t.match(u_),le=t.match(p_),Ae=t.match(f_);if(!G&&!le&&!Ae||t.length===0)throw new $e(""+t+" not a valid Decimal128 string");if(G){var B=G[2],Q=G[4],Y=G[5],J=G[6];Q&&J===void 0&&xi(t,"missing exponent power"),Q&&B===void 0&&xi(t,"missing exponent base"),Q===void 0&&(Y||J)&&xi(t,"missing e before exponent")}if((t[k]==="+"||t[k]==="-")&&(r=t[k++]==="-"),!gd(t[k])&&t[k]!=="."){if(t[k]==="i"||t[k]==="I")return new e(Se.from(r?md:dd));if(t[k]==="N")return new e(Se.from(Pu))}for(;gd(t[k])||t[k]===".";){if(t[k]==="."){n&&xi(t,"contains multiple periods"),n=!0,k=k+1;continue}h<34&&(t[k]!=="0"||i)&&(i||(d=o),i=!0,g[v++]=parseInt(t[k],10),h=h+1),i&&(c=c+1),n&&(u=u+1),o=o+1,k=k+1}if(n&&!o)throw new $e(""+t+" not a valid Decimal128 string");if(t[k]==="e"||t[k]==="E"){var de=t.substr(++k).match(d_);if(!de||!de[2])return new e(Se.from(Pu));_=parseInt(de[0],10),k=k+de[0].length}if(t[k])return new e(Se.from(Pu));if(E=0,!h)E=0,y=0,g[0]=0,c=1,h=1,s=0;else if(y=h-1,s=c,s!==1)for(;g[d+s-1]===0;)s=s-1;for(_<=u&&u-_>16384?_=Ou:_=_-u;_>To;){if(y=y+1,y-E>m_){var ke=g.join("");if(ke.match(/^0+$/)){_=To;break}xi(t,"overflow")}_=_-1}for(;_<Ou||h<c;){if(y===0&&s<h){_=Ou,s=0;break}if(h<c?c=c-1:y=y-1,_<To)_=_+1;else{var ke=g.join("");if(ke.match(/^0+$/)){_=To;break}xi(t,"overflow")}}if(y-E+1<s){var m=o;n&&(d=d+1,m=m+1),r&&(d=d+1,m=m+1);var lt=parseInt(t[d+y+1],10),Ve=0;if(lt>=5&&(Ve=1,lt===5)){for(Ve=g[y]%2===1?1:0,x=d+y+2;x<m;x++)if(parseInt(t[x],10)){Ve=1;break}}if(Ve){for(var ye=y;ye>=0;ye--)if(++g[ye]>9&&(g[ye]=0,ye===0))if(_<To)_=_+1,g[ye]=1;else return new e(Se.from(r?md:dd))}}if(P=X.fromNumber(0),M=X.fromNumber(0),s===0)P=X.fromNumber(0),M=X.fromNumber(0);else if(y-E<17){var ye=E;for(M=X.fromNumber(g[ye++]),P=new X(0,0);ye<=y;ye++)M=M.multiply(X.fromNumber(10)),M=M.add(X.fromNumber(g[ye]))}else{var ye=E;for(P=X.fromNumber(g[ye++]);ye<=y-17;ye++)P=P.multiply(X.fromNumber(10)),P=P.add(X.fromNumber(g[ye]));for(M=X.fromNumber(g[ye++]);ye<=y;ye++)M=M.multiply(X.fromNumber(10)),M=M.add(X.fromNumber(g[ye]))}var gt=E_(P,X.fromString("100000000000000000"));gt.low=gt.low.add(M),__(gt.low,M)&&(gt.high=gt.high.add(X.fromNumber(1))),L=_+fd;var se={low:X.fromNumber(0),high:X.fromNumber(0)};gt.high.shiftRightUnsigned(49).and(X.fromNumber(1)).equals(X.fromNumber(1))?(se.high=se.high.or(X.fromNumber(3).shiftLeft(61)),se.high=se.high.or(X.fromNumber(L).and(X.fromNumber(16383).shiftLeft(47))),se.high=se.high.or(gt.high.and(X.fromNumber(0x7fffffffffff)))):(se.high=se.high.or(X.fromNumber(L&16383).shiftLeft(49)),se.high=se.high.or(gt.high.and(X.fromNumber(562949953421311)))),se.low=gt.low,r&&(se.high=se.high.or(X.fromString("9223372036854775808")));var ie=Se.alloc(16);return k=0,ie[k++]=se.low.low&255,ie[k++]=se.low.low>>8&255,ie[k++]=se.low.low>>16&255,ie[k++]=se.low.low>>24&255,ie[k++]=se.low.high&255,ie[k++]=se.low.high>>8&255,ie[k++]=se.low.high>>16&255,ie[k++]=se.low.high>>24&255,ie[k++]=se.high.low&255,ie[k++]=se.high.low>>8&255,ie[k++]=se.high.low>>16&255,ie[k++]=se.high.low>>24&255,ie[k++]=se.high.high&255,ie[k++]=se.high.high>>8&255,ie[k++]=se.high.high>>16&255,ie[k++]=se.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,g,h=[];s=0;var v=this.bytes,E=v[s++]|v[s++]<<8|v[s++]<<16|v[s++]<<24,y=v[s++]|v[s++]<<8|v[s++]<<16|v[s++]<<24,_=v[s++]|v[s++]<<8|v[s++]<<16|v[s++]<<24,x=v[s++]|v[s++]<<8|v[s++]<<16|v[s++]<<24;s=0;var P={low:new X(E,y),high:new X(_,x)};P.high.lessThan(X.ZERO)&&h.push("-");var M=x>>26&h_;if(M>>3===3){if(M===g_)return h.join("")+"Infinity";if(M===y_)return"NaN";t=x>>15&hd,c=8+(x>>14&1)}else c=x>>14&7,t=x>>17&hd;var L=t-fd;if(u.parts[0]=(x&16383)+((c&15)<<14),u.parts[1]=_,u.parts[2]=y,u.parts[3]=E,u.parts[0]===0&&u.parts[1]===0&&u.parts[2]===0&&u.parts[3]===0)o=!0;else for(g=3;g>=0;g--){var k=0,G=v_(u);if(u=G.quotient,k=G.rem.low,!!k)for(d=8;d>=0;d--)n[g*9+d]=k%10,k=Math.floor(k/10)}if(o)r=1,n[s]=0;else for(r=36;!n[s];)r=r-1,s=s+1;var le=r-1+L;if(le>=34||le<=-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"),le>0?h.push("+".concat(le)):h.push("".concat(le))}else if(L>=0)for(var i=0;i<r;i++)h.push("".concat(n[s++]));else{var Ae=r+L;if(Ae>0)for(var i=0;i<Ae;i++)h.push("".concat(n[s++]));else h.push("0");for(h.push(".");Ae++<0;)h.push("0");for(var i=0;i<r-Math.max(Ae-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 Aa=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(Aa.prototype,"_bsontype",{value:"Double"});var Na=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(Na.prototype,"_bsontype",{value:"Int32"});var Fu=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(Fu.prototype,"_bsontype",{value:"MaxKey"});var Hu=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(Hu.prototype,"_bsontype",{value:"MinKey"});var S_=new RegExp("^[0-9a-fA-F]{24}$"),Tn=null,Er=Symbol("id"),et=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 $e("Argument passed in must have an id that is of type string or Buffer");"toHexString"in t&&typeof t.toHexString=="function"?r=Se.from(t.toHexString(),"hex"):r=t.id}else r=t;if(r==null||typeof r=="number")this[Er]=e.generate(typeof r=="number"?r:void 0);else if(ArrayBuffer.isView(r)&&r.byteLength===12)this[Er]=r instanceof Se?r:Ta(r);else if(typeof r=="string")if(r.length===12){var n=Se.from(r);if(n.byteLength===12)this[Er]=n;else throw new $e("Argument passed in must be a string of 12 bytes")}else if(r.length===24&&S_.test(r))this[Er]=Se.from(r,"hex");else throw new $e("Argument passed in must be a string of 12 bytes or a string of 24 hex characters or an integer");else throw new $e("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[Er]},set:function(t){this[Er]=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=Se.alloc(12);return n.writeUInt32BE(t,0),Tn===null&&(Tn=bd(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[Er][11]===t[Er][11]&&this[Er].equals(t[Er]);if(typeof t=="string"&&e.isValid(t)&&t.length===12&&ku(this.id))return t===Se.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 Se.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=Se.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 $e("Argument passed in must be a single String of 12 bytes or a string of 24 hex characters");return new e(Se.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(et.prototype,"generate",{value:Da(function(e){return et.generate(e)},"Please use the static `ObjectId.generate(time)` instead")});Object.defineProperty(et.prototype,"getInc",{value:Da(function(){return et.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(et.prototype,"get_inc",{value:Da(function(){return et.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(et,"get_inc",{value:Da(function(){return et.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(et.prototype,"_bsontype",{value:"ObjectID"});function w_(e){return e.split("").sort().join("")}var xo=function(){function e(t,r){if(!(this instanceof e))return new e(t,r);if(this.pattern=t,this.options=w_(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 $e("Unexpected BSONRegExp EJSON object form: ".concat(JSON.stringify(t)))},e}();Object.defineProperty(xo.prototype,"_bsontype",{value:"BSONRegExp"});var $u=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($u.prototype,"_bsontype",{value:"Symbol"});var b_=X,xd=function(e){xa(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:Do(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}(b_);function I_(e){return Do(e)&&Reflect.has(e,"_bsontype")&&typeof e._bsontype=="string"}var Dd=2147483647,Rd=-2147483648,Ad=9223372036854776e3,Nd=-9223372036854776e3,T_={$oid:et,$binary:xn,$uuid:xn,$symbol:$u,$numberInt:Na,$numberDecimal:Uu,$numberDouble:Aa,$numberLong:X,$minKey:Hu,$maxKey:Fu,$regex:xo,$regularExpression:xo,$timestamp:xd};function Od(e,t){if(t===void 0&&(t={}),typeof e=="number"){if(t.relaxed||t.legacy)return e;if(Math.floor(e)===e){if(e>=Rd&&e<=Dd)return new Na(e);if(e>=Nd&&e<=Ad)return X.fromNumber(e)}return new Aa(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=T_[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=Od(e.$scope)),Ra.fromExtendedJSON(e)}if(c_(e)||e.$dbPointer){var u=e.$ref?e:e.$dbPointer;if(u instanceof Co)return u;var d=Object.keys(u).filter(function(h){return h.startsWith("$")}),g=!0;if(d.forEach(function(h){["$ref","$id","$db"].indexOf(h)===-1&&(g=!1)}),g)return Co.fromExtendedJSON(u)}return e}function C_(e,t){return e.map(function(r,n){t.seenObjects.push({propertyName:"index ".concat(n),obj:null});try{return qr(r,t)}finally{t.seenObjects.pop()}})}function yd(e){var t=e.toISOString();return e.getUTCMilliseconds()!==0?t:t.slice(0,-5)+"Z"}function qr(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 $e(`Converting circular structure to EJSON:
|
|
34
|
+
Url: ${Us(e)}`),!0)}function uv(e,t){return e.type||!t||!t.length?!1:dv(e).some(r=>si(r,t))}function pv(e,t){if(e.type!=="transaction"||!t||!t.length)return!1;let r=e.transaction;return r?si(r,t):!1}function fv(e,t){if(!t||!t.length)return!1;let r=Us(e);return r?si(r,t):!1}function mv(e,t){if(!t||!t.length)return!0;let r=Us(e);return r?si(r,t):!0}function dv(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 hv(e){try{return e.exception.values[0].type==="SentryError"}catch{}return!1}function gv(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?gv(t):null}catch{return De&&K.error(`Cannot extract url for event ${Zt(e)}`),null}}function yv(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 vv="Dedupe",Ev=()=>{let e;return{name:vv,processEvent(t){if(t.type)return t;try{if(_v(t,e))return De&&K.warn("Event dropped due to being a duplicate of previously captured event."),null}catch{}return e=t}}},Hs=Ev;function _v(e,t){return t?!!(Sv(e,t)||wv(e,t)):!1}function Sv(e,t){let r=e.message,n=t.message;return!(!r&&!n||r&&!n||!r&&n||r!==n||!Rm(e,t)||!Dm(e,t))}function wv(e,t){let r=xm(t),n=xm(e);return!(!r||!n||r.type!==n.type||r.value!==n.value||!Rm(e,t)||!Dm(e,t))}function Dm(e,t){let r=vs(e),n=vs(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 Rm(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 xm(e){return e.exception&&e.exception.values&&e.exception.values[0]}var We=te,tu=0;function ru(){return tu>0}function Mv(){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 Mv(),Os(o=>{o.addEventProcessor(c=>(t.mechanism&&(ui(c,void 0,void 0),xr(c,t.mechanism)),c.extra=ee(w({},c.extra),{arguments:i}),c)),Ms(s)}),s}};try{for(let i in e)Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=e[i])}catch{}hs(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 Rr=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function $s(e,t){let r=ou(e,t),n={type:t&&t.name,value:Hv(t)};return r.length&&(n.stacktrace={frames:r}),n.type===void 0&&n.value===""&&(n.value="Unrecoverable error caught"),n}function Bv(e,t,r,n){let i=Ue(),s=i&&i.getOptions().normalizeDepth,o=jv(t),c={__serialized__:Is(t,s)};if(o)return{exception:{values:[$s(e,o)]},extra:c};let u={exception:{values:[{type:ln(t)?t.constructor.name:n?"UnhandledRejection":"Error",value:$v(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:[$s(e,t)]}}}function ou(e,t){let r=t.stacktrace||t.stack||"",n=Uv(t),i=Fv(t);try{return e(r,n,i)}catch{}return[]}var kv=/Minified React error #\d+;/i;function Uv(e){return e&&kv.test(e.message)?1:0}function Fv(e){return typeof e.framesToPop=="number"?e.framesToPop:0}function Hv(e){let t=e&&e.message;return t?t.error&&typeof t.error.message=="string"?t.error.message:t:"No error message"}function Pm(e,t,r,n){let i=r&&r.syntheticException||void 0,s=Vs(e,t,i,n);return xr(s),s.level="error",r&&r.event_id&&(s.event_id=r.event_id),Wt(s)}function Lm(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),Wt(o)}function Vs(e,t,r,n,i){let s;if(ps(t)&&t.error)return nu(e,t.error);if(fs(t)||ol(t)){let o=t;if("stack"in t)s=nu(e,t);else{let c=o.name||(fs(o)?"DOMError":"DOMException"),u=o.message?`${c}: ${o.message}`:c;s=iu(e,u,r,n),ui(s,u)}return"code"in o&&(s.tags=ee(w({},s.tags),{"DOMException.code":`${o.code}`})),s}return an(t)?nu(e,t):Qt(t)||ln(t)?(s=Bv(e,t,r,i),xr(s,{synthetic:!0}),s):(s=iu(e,t,r,n),ui(s,`${t}`,void 0),xr(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(oi(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 $v(e,{isUnhandledRejection:t}){let r=gl(e),n=t?"promise rejection":"exception";return ps(e)?`Event \`ErrorEvent\` captured as ${n} with message \`${e.message}\``:ln(e)?`Event \`${Vv(e)}\` (type=${e.type}) captured as ${n}`:`Object captured as ${n} with keys: ${r}`}function Vv(e){try{let t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{}}function jv(e){for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t)){let r=e[t];if(r instanceof Error)return r}}function Mm(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:fr(n)}),s=Wv(e);return hr(i,[s])}function Wv(e){return[{type:"user_report"},e]}var Eo=class extends vo{constructor(e){let t=w({parentSpanIsAlwaysRootSpan:!0},e),r=We.SENTRY_SDK_SOURCE||Cl();eu(t,"browser",["browser"],r),super(t),t.sendClientReports&&We.document&&We.document.addEventListener("visibilitychange",()=>{We.document.visibilityState==="hidden"&&this._flushOutcomes()})}eventFromException(e,t){return Pm(this._options.stackParser,e,t,this._options.attachStacktrace)}eventFromMessage(e,t="info",r){return Lm(this._options.stackParser,e,t,r,this._options.attachStacktrace)}captureUserFeedback(e){if(!this._isEnabled()){Rr&&K.warn("SDK not enabled, will not capture user feedback.");return}let t=Mm(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){Rr&&K.log("No outcomes to send");return}if(!this._dsn){Rr&&K.log("No dsn provided, will not send outcomes");return}Rr&&K.log("Sending outcomes:",e);let t=Bl(e,this._options.tunnel&&fr(this._dsn));this.sendEnvelope(t)}},Bm=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,qe=te,Gv=1e3,km,su,au;function cu(e){let t="dom";bt(t,e),It(t,Yv)}function Yv(){if(!qe.document)return;let e=Qe.bind(null,"dom"),t=Um(e,!0);qe.document.addEventListener("click",t,!1),qe.document.addEventListener("keypress",t,!1),["EventTarget","Node"].forEach(r=>{let n=qe[r]&&qe[r].prototype;!n||!n.hasOwnProperty||!n.hasOwnProperty("addEventListener")||(Me(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__||{},g=d[s]=d[s]||{refCount:0};if(!g.handler){let h=Um(e);g.handler=h,i.call(this,s,h,c)}g.refCount++}catch{}return i.call(this,s,o,c)}}),Me(n,"removeEventListener",function(i){return function(s,o,c){if(s==="click"||s=="keypress")try{let u=this,d=u.__sentry_instrumentation_handlers__||{},g=d[s];g&&(g.refCount--,g.refCount<=0&&(i.call(this,s,g.handler,c),g.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 zv(e){if(e.type!==su)return!1;try{if(!e.target||e.target._sentryId!==au)return!1}catch{}return!0}function qv(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=Kv(r);if(qv(r.type,n))return;wt(r,"_sentryCaptured",!0),n&&!n._sentryId&&wt(n,"_sentryId",rt());let i=r.type==="keypress"?"input":r.type;zv(r)||(e({event:r,name:i,global:t}),su=r.type,au=n?n._sentryId:void 0),clearTimeout(km),km=qe.setTimeout(()=>{au=void 0,su=void 0},Gv)}}function Kv(e){try{return e.target}catch{return null}}var js;function lu(e){let t="history";bt(t,e),It(t,Xv)}function Xv(){if(!Fl())return;let e=qe.onpopstate;qe.onpopstate=function(...r){let n=qe.location.href,i=js;if(js=n,Qe("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=js,o=String(i);js=o,Qe("history",{from:s,to:o})}return r.apply(this,n)}}Me(qe.history,"pushState",t),Me(qe.history,"replaceState",t)}var Ws={};function uu(e){let t=Ws[e];if(t)return t;let r=qe[e];if(lo(r))return Ws[e]=r.bind(qe);let n=qe.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){Bm&&K.warn(`Could not create sandbox iframe for ${e} check, bailing to window.${e}: `,i)}return r&&(Ws[e]=r.bind(qe))}function Gs(e){Ws[e]=void 0}var gn="__sentry_xhr_v3__";function pu(e){let t="xhr";bt(t,e),It(t,Jv)}function Jv(){if(!qe.XMLHttpRequest)return;let e=XMLHttpRequest.prototype;Me(e,"open",function(t){return function(...r){let n=Pt()*1e3,i=St(r[0])?r[0].toUpperCase():void 0,s=Qv(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:Pt()*1e3,startTimestamp:n,xhr:this};Qe("xhr",u)}};return"onreadystatechange"in this&&typeof this.onreadystatechange=="function"?Me(this,"onreadystatechange",function(c){return function(...u){return o(),c.apply(this,u)}}):this.addEventListener("readystatechange",o),Me(this,"setRequestHeader",function(c){return function(...u){let[d,g]=u,h=this[gn];return h&&St(d)&&St(g)&&(h.request_headers[d.toLowerCase()]=g),c.apply(this,u)}}),t.apply(this,r)}}),Me(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:Pt()*1e3,xhr:this};return Qe("xhr",i),t.apply(this,r)}})}function Qv(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 Gs("fetch"),$r("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 Gs("fetch"),r-=o,n--,$r(u)}}return Bs(e,i)}var Zv=30,eE=50;function mu(e,t,r,n){let i={filename:e,function:t==="<anonymous>"?mr:t,in_app:!0};return r!==void 0&&(i.lineno=r),n!==void 0&&(i.colno=n),i}var tE=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,rE=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,nE=/\((\S*)(?::(\d+))(?::(\d+))\)/,iE=e=>{let t=tE.exec(e);if(t){let[,n,i,s]=t;return mu(n,mr,+i,+s)}let r=rE.exec(e);if(r){if(r[2]&&r[2].indexOf("eval")===0){let s=nE.exec(r[2]);s&&(r[2]=s[1],r[3]=s[2],r[4]=s[3])}let[n,i]=Vm(r[1]||mr,r[2]);return mu(i,n,r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}},Fm=[Zv,iE],oE=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,sE=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,aE=e=>{let t=oE.exec(e);if(t){if(t[3]&&t[3].indexOf(" > eval")>-1){let i=sE.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]||mr;return[n,r]=Vm(n,r),mu(r,n,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}},Hm=[eE,aE],$m=[Fm,Hm],du=vl(...$m),Vm=(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]:mr,r?`safari-extension:${t}`:`safari-web-extension:${t}`]:[e,t]},Ys=1024,lE="Breadcrumbs",uE=(e={})=>{let t=w({console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0},e);return{name:lE,setup(r){t.console&&El(mE(r)),t.dom&&cu(fE(r,t.dom)),t.xhr&&pu(dE(r)),t.fetch&&bl(hE(r)),t.history&&lu(gE(r)),t.sentry&&r.on("beforeSendEvent",pE(r))}}},jm=uE;function pE(e){return function(t){Ue()===e&&gr({category:`sentry.${t.type==="transaction"?"transaction":"event"}`,event_id:t.event_id,level:t.level,message:Zt(t)},{event:t})}}function fE(e,t){return function(r){if(Ue()!==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>Ys&&(Rr&&K.warn(`\`dom.maxStringLength\` cannot exceed ${Ys}, but a value of ${o} was configured. Sentry will use ${Ys} instead.`),o=Ys),typeof s=="string"&&(s=[s]);try{let u=r.event,d=yE(u)?u.target:u;n=ao(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}),gr(c,{event:r.event,name:r.name,global:r.global})}}function mE(e){return function(t){if(Ue()!==e)return;let r={category:"console",data:{arguments:t.args,logger:"console"},level:Rl(t.level),message:ms(t.args," ")};if(t.level==="assert")if(t.args[0]===!1)r.message=`Assertion failed: ${ms(t.args.slice(1)," ")||"console.assert"}`,r.data.arguments=t.args.slice(1);else return;gr(r,{input:t.args,level:t.level})}}function dE(e){return function(t){if(Ue()!==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},g={xhr:t.xhr,input:u,startTimestamp:r,endTimestamp:n};gr({category:"xhr",data:d,type:"http"},g)}}function hE(e){return function(t){if(Ue()!==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};gr({category:"fetch",data:i,level:"error",type:"http"},s)}else{let i=t.response,s=ee(w({},t.fetchData),{status_code:i&&i.status}),o={input:t.args,response:i,startTimestamp:r,endTimestamp:n};gr({category:"fetch",data:s,type:"http"},o)}}}function gE(e){return function(t){if(Ue()!==e)return;let r=t.from,n=t.to,i=po(We.location.href),s=r?po(r):void 0,o=po(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),gr({category:"navigation",data:{from:r,to:n}})}}function yE(e){return!!e&&!!e.target}var vE=["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"],EE="BrowserApiErrors",_E=(e={})=>{let t=w({XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0},e);return{name:EE,setupOnce(){t.setTimeout&&Me(We,"setTimeout",Wm),t.setInterval&&Me(We,"setInterval",Wm),t.requestAnimationFrame&&Me(We,"requestAnimationFrame",SE),t.XMLHttpRequest&&"XMLHttpRequest"in We&&Me(XMLHttpRequest.prototype,"send",wE);let r=t.eventTarget;r&&(Array.isArray(r)?r:vE).forEach(bE)}}},Gm=_E;function Wm(e){return function(...t){let r=t[0];return t[0]=hn(r,{mechanism:{data:{function:jt(e)},handled:!1,type:"instrument"}}),e.apply(this,t)}}function SE(e){return function(t){return e.apply(this,[hn(t,{mechanism:{data:{function:"requestAnimationFrame",handler:jt(e)},handled:!1,type:"instrument"}})])}}function wE(e){return function(...t){let r=this;return["onload","onerror","onprogress","onreadystatechange"].forEach(n=>{n in r&&typeof r[n]=="function"&&Me(r,n,function(i){let s={mechanism:{data:{function:n,handler:jt(i)},handled:!1,type:"instrument"}},o=un(i);return o&&(s.mechanism.data.handler=jt(o)),hn(i,s)})}),e.apply(this,t)}}function bE(e){let t=We,r=t[e]&&t[e].prototype;!r||!r.hasOwnProperty||!r.hasOwnProperty("addEventListener")||(Me(r,"addEventListener",function(n){return function(i,s,o){try{typeof s.handleEvent=="function"&&(s.handleEvent=hn(s.handleEvent,{mechanism:{data:{function:"handleEvent",handler:jt(s),target:e},handled:!1,type:"instrument"}}))}catch{}return n.apply(this,[i,hn(s,{mechanism:{data:{function:"addEventListener",handler:jt(s),target:e},handled:!1,type:"instrument"}}),o])}}),Me(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 IE="GlobalHandlers",TE=(e={})=>{let t=w({onerror:!0,onunhandledrejection:!0},e);return{name:IE,setupOnce(){Error.stackTraceLimit=50},setup(r){t.onerror&&(CE(r),Ym("onerror")),t.onunhandledrejection&&(xE(r),Ym("onunhandledrejection"))}}},zm=TE;function CE(e){Il(t=>{let{stackParser:r,attachStacktrace:n}=qm();if(Ue()!==e||ru())return;let{msg:i,url:s,line:o,column:c,error:u}=t,d=AE(Vs(r,u||i,void 0,n,!1),s,o,c);d.level="error",yo(d,{originalException:u,mechanism:{handled:!1,type:"onerror"}})})}function xE(e){Tl(t=>{let{stackParser:r,attachStacktrace:n}=qm();if(Ue()!==e||ru())return;let i=DE(t),s=cn(i)?RE(i):Vs(r,i,void 0,n,!0);s.level="error",yo(s,{originalException:i,mechanism:{handled:!1,type:"onunhandledrejection"}})})}function DE(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 RE(e){return{exception:{values:[{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(e)}`}]}}}function AE(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,g=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:mr,in_app:!0,lineno:g}),e}function Ym(e){Rr&&K.log(`Global Handler attached: ${e}`)}function qm(){let e=Ue();return e&&e.getOptions()||{stackParser:()=>[],attachStacktrace:!1}}var Km=()=>({name:"HttpContext",preprocessEvent(e){if(!We.navigator&&!We.location&&!We.document)return;let t=e.request&&e.request.url||We.location&&We.location.href,{referrer:r}=We.document||{},{userAgent:n}=We.navigator||{},i=w(w(w({},e.request&&e.request.headers),r&&{Referer:r}),n&&{"User-Agent":n}),s=ee(w(w({},e.request),t&&{url:t}),{headers:i});e.request=s}}),NE="cause",OE=5,PE="LinkedErrors",LE=(e={})=>{let t=e.limit||OE,r=e.key||NE;return{name:PE,preprocessEvent(n,i,s){let o=s.getOptions();ul($s,o.stackParser,o.maxValueLength,r,t,n,i)}}},Xm=LE;function hu(e){return[Fs(),ks(),Gm(),jm(),zm(),Xm(),Hs(),Km()]}var gu=class extends Error{cause;constructor(e,t){super(e),this.cause=t}},Re=class Bh{static INSTANCE;contexts={};tags;client;user;constructor(){this.init()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Bh),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 mt;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",Jm()),n}init(){let t=hu({}).filter(r=>!["BrowserApiErrors","Breadcrumbs","GlobalHandlers"].includes(r.name));this.client=new Eo({dsn:"https://1bc3dda4c861f60cd6be1b67584f4bc6@o559187.ingest.us.sentry.io/4507626484203520",transport:fu,stackParser:du,integrations:t,environment:ut.mode,release:`web-sdk@${N.SDK_VERSION}`,debug:ut.debug}),this.client.init()}},zs=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}};function Ks(e){try{return new URL(e)}catch{return}}function yu(e){return!e||e==="null"||e==="undefined"}function Zm(e,t){let r=e.indexOf(t);return r===-1?!1:(e.splice(r,1),!0)}function Lt(e,t){if(e==0&&t)return"Free";let r=ce.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=zs.format(e*100,o);else{let u;try{u=new Intl.NumberFormat(td(),{style:"currency",currency:s||i,minimumFractionDigits:0,maximumFractionDigits:2})}catch(d){return Re.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}function ed(e){return new Intl.NumberFormat(td(),{notation:"compact"}).format(e)}function td(){return navigator.languages!==void 0?navigator.languages[0].split("-")[0]:navigator.language??"en"}var qs;function Jm(){if(qs)return qs;try{return qs=Intl.DateTimeFormat().resolvedOptions().timeZone,qs}catch{return""}}function fi(e){document.readyState==="complete"?e():document.addEventListener("readystatechange",()=>{document.readyState==="complete"&&e()})}function Vr(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)}async function vu(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 Qm.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}async function mi(e,t=10,r=document){return(await vu(e,t,r)).item(0)}function rd(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})}async function Xs(){let e=await xe.get(oe.DEVICE_ID),t=await tt.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"}]}function yn(e,t,r){Object.defineProperty(e,t,{enumerable:!1,configurable:!1,writable:!1,value:r})}var Js=class{url;alt;constructor(e){e.alt&&(this.alt=e.alt),this.url=e.url}},Qs=class{d;cmp;effective;constructor(e={}){this.d=e.d,this.cmp=e.cmp,this.effective=this.d}},Eu=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}},yr=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 Js(t))??[],this.link=e.link,this.price=new Qs(e.price),this.sku=e.sku,this.isAvailable=e.isAvailable,this.quantity=e.quantity,this.effectivePrice=Ht(this.price.effective),e.sellingPlans?.length&&(this.selectedSellingPlan=Ht(void 0)),this.sellingPlans=e.sellingPlans?.map(t=>{let r=new Eu(t);return r.isSelected&&(this.selectedSellingPlan.value=r),r})}getOneImage(){return this.imgs[0]?.url}changeSellingPlan(e){this.selectedSellingPlan.value=e}hasEffectivePrice(){return this.effectivePrice.value!==this.price.d}},Dt=class{id;mID;name;status;ctg;imgs;videos;portraitVideos;vars;desc;sDesc;link;slug;quantity;category;meta;reviews;tags;selectedOrFirstVariant;selected=Ht(!0);constructor(e){this.update(e),this.selectedOrFirstVariant=Ht(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}set variants(e){this.vars=e,this.selectedOrFirstVariant.value=this.selectedVariant}get selectedVariant(){return this.vars.find(e=>e.isAvailable)??this.vars[0]}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 yr(t))),this}toEmbed(e){return e=e??this.selectedOrFirstVariant.value,new pt({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})}getTemplateVariables(){let e=this.selectedOrFirstVariant.value,t=e.price,r=this.name,n=this.category,i=Lt(t.d,!0),s=this.variantImage??this.imageURL,o=this.meta,c=this.tags?.join(",")??"",u=this.reviews?.rating,d=this.reviews?.totalReviews,g=t.cmp&&t.cmp>t.d,h={name:r,price:i,image_url:s,meta:o,category:n,rating:u,reviews:d,tags:c};if(e.hasEffectivePrice()&&(h.effective_price=Lt(e.effectivePrice.value)),g){h.compare_price=Lt(t.cmp);let E=t.cmp-t.d;h.discount_percent=(E/t.cmp*100).toFixed(0),h.discount_price=Lt(E)}let v={name:e.name,quantity:e.quantity};return{product:h,variant:v}}},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}},_u=class{enabled;constructor(e){this.enabled=e.enabled}},Su=class extends _u{max;min;constructor(e){e??={},super(e),this.min=e.min,this.max=e.max}},ea=class{productQuantity;constructor(e){e??={},this.productQuantity=new Su(e.productQuantity)}},vn=class{s;g;i;constructor(e){e.s&&(this.s=new Le(e.s)),e.g&&(this.g=new _o(e.g)),this.i=e.i}get solid(){return this.s}get glossy(){return this.g}get img(){return this.i}},So="a-f\\d",ME=`#?[${So}]{3}[${So}]?`,BE=`#?[${So}]{6}([${So}]{2})?`,kE=new RegExp(`[^#${So}]`,"gi"),UE=new RegExp(`^${ME}$|^${BE}$`,"i");function wu(e,t={}){if(typeof e!="string"||kE.test(e)||!UE.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 Le=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 wu(this.hex,{format:"css",alpha:this.getAlpha()})}catch(e){return console.error("Invalid hex",e),"#000000"}}getAlpha(){return(this.a??100)/100}},Ar=class{s;r;w;c;constructor(e){this.s=e.s,this.r=e.r,this.w=e.w,e.c&&(this.c=new Le(e.c))}get radius(){return this.r}get width(){return this.w}get color(){return this.c}get style(){return ta[this.s??1]}},ta=(e=>(e[e.SOLID=1]="SOLID",e[e.DASHED=2]="DASHED",e))(ta||{}),_o=class jh{static DEFAULT_FALLBACK=new Le({h:"#000000",a:50});r;c;fb;constructor(t){this.r=t.r,t.c&&(this.c=new Le(t.c)),t.fb&&(this.fb=new Le(t.fb))}get radius(){return this.r}get color(){return this.c}get fallback(){return this.fb??jh.DEFAULT_FALLBACK}},wo=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 Le(e.clr)}getStyle(e){return`${this.x*e}px ${this.y*e}px ${this.blur*e}px ${this.spr*e}px ${this.clr.rgba}`}},Nr=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 vn(e.bg)),e.br&&(this.br=new Ar(e.br)),e.shd&&(this.shd=new wo(e.shd)),e.spc&&(this.spc=new Nr(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 Be[this.t]}get click(){return this.clc}},Be=(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))(Be||{}),_n=class extends Mt{constructor(e){super(e)}},Or=class extends Mt{src;constructor(e){super(e),this.src=e.src}},di=(e=>(e[e.START=0]="START",e[e.CENTER=1]="CENTER",e[e.END=2]="END",e[e.JUSTIFY=3]="JUSTIFY",e))(di||{}),ra=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 bu(t))}},bu=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')`}},Ze=class{fw;fs;fam;fmly;lh=1.2;ls;s;tc;ta;td;tdc;constructor(e){this.update(e)}get alignment(){return di[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 Le(e.tdc)),this.td=e.td,this.fs=e.s??e.fs??60,this.tc=new Le(e.tc),this.ta=e.ta??1,this.fw=e.fw??400,this.ls=e.ls??0,this.tc.h??="#000000",this.fam=new ra(e.fam??e.fmly)}resize(e){this.s*=e,this.ls*=e}},vr=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 Ze(t)}get color(){return this.typography.tc}get typography(){return this.typo}},jr=class extends vr{prs;constructor(e){super(e),this.prs=e.prs}get parts(){return this.prs}},na=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}},hi=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}},gi=class extends vr{gap;timer;timerType;horizontal;lblPos;show;constructor(e){e??={},super(e),this.gap=e.gap,this.timerType=e.type,this.timer=new hi(e.timer),this.show=e.show??{day:!0,hour:!0,minute:!0,second:!0},this.horizontal=e.horizontal,this.lblPos=e.lblPos}},ia=class{txt;c;constructor(e){e??={},this.txt=e.txt,this.c=new Le(e.c??{})}get text(){return this.txt}get color(){return this.c}},Wr=class extends vr{ph;constructor(e){super(e),this.ph=new ia(e.ph)}get placeholderText(){return this.ph.text}get placeholderColor(){return this.ph.color.rgba}},yi=class extends Wr{constructor(e){e??={},super(e)}},vi=class extends Wr{},Ei=class extends Wr{},_i=class extends Or{},Sn=(e=>(e[e.LOW=1]="LOW",e[e.MEDIUM=2]="MEDIUM",e[e.HIGH=3]="HIGH",e))(Sn||{}),oa=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[]}}},bo=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 oa(e.anim),this.embedded=e.embedded,this.position=e.position??1,this.spc||(this.spc=new Nr({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}`}},sa=class extends bo{cont;elems=[];mob;constructor(e){e=e??{},super(e),this.cont=new na(e.cont),this.mob=new bo(e.mob),this.bg||(this.bg=this.cont.bg,delete this.cont.bg),e.elems.forEach(t=>{t.t===1?this.elems.push(new Or(t)):t.t===2?this.elems.push(new jr(t)):t.t===3?this.elems.push(new jr(t)):t.t===100?this.elems.push(new _n(t)):t.t===51?this.elems.push(new vi(t)):t.t===52?this.elems.push(new Ei(t)):t.t===61?this.elems.push(new gi(t)):t.t===15||t.t===16?this.elems.push(new yi(t)):t.t===13&&this.elems.push(new _i(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}},Si=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}},aa=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}},ca=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}},la=class{size;bg;br;spc;typo;lout;flex;constructor(e){e??={},this.spc=new Nr(e.spc),e.size&&(this.size=new ca(e.size)),e.bg&&(this.bg=new vn(e.bg)),e.br&&(this.br=new Ar(e.br)),e.typo&&(this.typo=new Ze(e.typo)),e.lout&&(this.lout=new aa(e.lout)),e.flex&&(this.flex=new Si(e.flex))}},wi=class{sm;lg;constructor(e){e??={},this.sm=new la(e.sm),this.lg=new la(e.lg)}},nt=class{t;style;hide;when;clc;constructor(e,t){t??={},this.t=e,this.style=new wi(t.style),this.hide=t.hide,t.when?.op&&(this.when=t.when),t.clc&&(this.clc=t.clc)}get stringType(){return Be[this.t]}},it=class extends nt{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 it{constructor(e,t){super(e,t??3)}},bi=class extends nt{value;constructor(e){super(6,e),e??={},this.value=e.value}},Ii=class extends it{constructor(e=15,t){super(t,e)}},ua=class extends nt{c;iconSize;showSingleStar;fullStar;halfStart;constructor(e){super(19,e),e??={},this.c=new Le(e.c),this.iconSize=e.iconSize??24,this.showSingleStar=e.showSingleStar??!1,this.fullStar=e.fullStar,this.halfStart=e.halfStart}},nd=Ee(nn()),Iu=class{enabled;type;color;constructor(e){e??={},this.enabled=e.enabled,this.type=e.type,this.color=new Le(e.color)}},Tu=class{size;enabled;color;constructor(e){e??={},this.enabled=e.enabled,this.size=e.size,this.color=new Le(e.color)}},Io=class{navigation;pagination;autoplay;maxInRow;gap;slidesPerView;constructor(e){e??={},this.navigation=new Tu(e.navigation),this.pagination=new Iu(e.pagination),this.autoplay=e.autoplay,this.slidesPerView=e.slidesPerView??1,this.maxInRow=e.maxInRow??e.slidesPerView??4,this.gap=e.gap??0}},pa=class extends nt{conf;slide;formData;values;allowedTypes;constructor(e){super(62,e),e&&this.update(e)}update(e){e??={},this.slide=Bt.getParsedElement(e.slide),this.formData=e.formData,this.values=e.values,this.conf=new Io(e.conf),this.allowedTypes=e.allowedTypes}},fa=class extends it{gap;timer;timerType;horizontal;lblPos;show;constructor(e){e??={},super(e,61),this.gap=e.gap,this.timerType=e.type,this.timer=new hi(e.timer),this.show=e.show??{days:!0,hours:!0,minutes:!0,seconds:!0},this.horizontal=e.horizontal,this.lblPos=e.lblPos}},Gr=class extends nt{elems;constructor(e){super(4,e),this.update(e)}update(e){e??={},this.elems??=[],e.elems?.forEach(t=>{let r=Bt.getParsedElement(t);r&&this.elems.push(r)})}},bn=class extends nt{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}},Bt=class Fh{static getParsedElements(t){let r=[];return t?.forEach(n=>{let i=Fh.getParsedElement(n);i&&r.push(i)}),r}static getParsedElement(t){switch(t.t){case 2:return new it(t);case 3:return new wn(t);case 6:return new bi(t);case 11:return new ma(t);case 12:return new Yr(t);case 61:return new fa(t);case 4:return new Gr(t);case 1:return new bn(t);case 13:return new bn(t,13);case 14:return new it(t,14);case 15:case 16:return new Ii(t.t,t);case 18:return new wn(t,18);case 62:return new pa(t);case 19:return new ua(t);default:nd.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"}}},Yr=class extends nt{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=Bt.getParsedElements(e.elems),this.noLinks=e.noLinks,!this.elems.length){e.cBox&&this.elems.push(new bi(e.cBox)),this.elems.push(new bn(e.img,13));let t=new it(e.title,14);t.hide=!e.show?.title,t.text="{{ product.name }}",this.elems.push(t);let r=new it(e.price);r.text="{{ product.price }}",r.hide=!e.show?.price;let n=new it(e.compareAt);n.text="{{ product.compare_price }}",n.hide=!e.show?.price,e.compareAt||(n.style=new wi(r.style),n.style.lg.typo=new Ze(ee(w({},n.style.lg.typo),{td:"line-through"})),n.style.sm.typo=new Ze(ee(w({},n.style.sm.typo),{td:"line-through"})));let i=new Gr({style:{lg:{spc:{mb:10},flex:{dir:"row",gap:10,ai:"center",jc:Bt.parseAlignmentToJustifyContent(r.style.lg.typo?.ta)}}}});i.elems.push(n),i.elems.push(r),this.elems.push(i);let s=new Ii(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 it(e.symbol))}},ma=class extends nt{conf;prod;constructor(e){super(11,e),e??={},this.conf=new Cu(e.conf),this.prod=new Yr(e.prod)}},da=class extends Io{disp;maxItems;constructor(e){e??={},super(e),this.disp=e.disp,this.maxItems=e.maxItems}},Cu=class{lg;sm;constructor(e){e??={},this.lg=new da(e.lg),this.sm=new da(e.sm)}},ha=class extends Gr{constructor(e){super(e)}},Ti=class{cont;elems=[];constructor(e){e=e??{},this.cont=new ha(e.cont),e.elems?.forEach(t=>{this.addRawElement(t)})}addRawElement(e){let t=Bt.getParsedElement(e);return t&&this.elems.push(t),t}},id=Ee(Tr()),xu=class{minValue;rewardType;label;reachingText;reachedText;discount;items;calculatedAlignment;constructor(e){this.calculatedAlignment=e.calculatedAlignment,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 pt(t))}},ga=class{layout;milestones;totalProgress;coupons;onlyLatestGift;noConfetti;constructor(e){this.layout=e.layout??id.ProgressBarLayout.ICONS,this.onlyLatestGift=e.onlyLatestGift,this.noConfetti=e.noConfetti,this.update(e)}update(e){e=e??{},this.milestones=e.milestones?.map(t=>new xu(t))??[],this.totalProgress=e.totalProgress,this.coupons=e.coupons}},ya=class{applyDiscountOnMinimum;constructor(e){this.applyDiscountOnMinimum=e.applyDiscountOnMinimum}},va=class{id;alt;sources;items;durationMS;thumbnail;constructor(e={}){this.id=e.id,this.alt=e.alt,this.sources=e.sources?.sort((t,r)=>r.height-t.height),this.durationMS=e.durationMS,this.thumbnail=e.thumbnail,this.items=e.items?e.items.map(t=>new pt(t)):[]}},Ea=class{videos;source;template;heading;slidePerViewCount;autoPlay;showMuteButton;footerContent;detailPopup;constructor(e={}){this.videos=e.videos?.map(t=>new va(t))??[],this.source=e.source,this.template=e.template,this.detailPopup=e.detailPopup??{template:"VIDEO_ONLY_VIEW"},this.heading=e.heading,this.showMuteButton=e.showMuteButton,this.slidePerViewCount=e.slidePerViewCount??4,this.autoPlay=e.autoPlay??"ON",this.footerContent=e.footerContent??"FIRST_ITEM"}},Sa=class{modifications;constructor(e={}){e.modifications?.length?this.modifications=e.modifications.map(t=>new wa(t)):e.experiments?.length&&(this.modifications=e.experiments.map(t=>new wa(t)))}},wa=class{cssSelector;type;display;bg;typo;br;text;constructor(e={}){this.cssSelector=e.cssSelector??"",this.type=e.type??"OTHER",this.display=e.display,e.bg&&(this.bg=new Le(e.bg)),e.typo&&(this.typo=new Ze(e.typo)),e.br&&(this.br=new Ar(e.br)),this.text=e.text}get style(){let e={};return this.display==="HIDE"?e.display="none":this.display==="BLOCK"?e.display="block":this.display==="INLINE"&&(e.display="inline"),this.br?.r&&(e.borderRadius=this.br.r+"px"),this.br?.w&&(e.borderWidth=this.br.w+"px"),this.br?.s&&(e.borderStyle=ta[this.br.s]?.toLowerCase()),this.br?.c?.h&&(e.borderColor=this.br.color?.rgba),this.bg?.h&&(e.backgroundColor=this.bg.rgba),this.type==="TEXT"&&this.typo&&(this.typo.fs&&(e.fontSize=this.typo.fs+"px"),this.typo.lh&&(e.lineHeight=this.typo.lh),this.typo.fw&&(e.fontWeight=this.typo.fw),this.typo.ta&&(e.textAlign=this.typo.alignment),this.typo.tc.h&&(e.color=this.typo.tc.rgba),this.typo.ls&&(e.letterSpacing=this.typo.letterSpacing),this.typo.td&&(e.textDecoration=this.typo.td??"none")),e}toString(){return`Experiment(cssSelector=${this.cssSelector})`}},Du=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===ot.EngagementContentType.EXCLUSION}isABTesting(){return this.contentType===ot.EngagementContentType.ABTESTING}isSingleContent(){return this.contentType===ot.EngagementContentType.SINGLE}},Tt=class Vh extends Du{static SWIPER_ELEMENTS=new Set([11,62]);nudgeID;contentID;variation;ian;widget;discount;placement;promotionType;contentSource;manipulation;klaviyoFormID;hasMultiplePlacement;skipSubscribedItems;progressBarConfig;stickyATCConfig;bundleConfig;content;previewType;occurred;id;currency;props;items;nonMutableItems;embeddedItems;bundleFrom;collections;customerData;experimentConfig;discountData=Ht({});constructor(t){super(t),this.id=t.id,this.nudgeID=t.nudgeID,this.currency=ce.get().currencyCode??"USD",this.contentID=t.contentID,this.variation=t.variation,t.widget&&(this.widget=new Ti(t.widget)),this.previewType=t.previewType,this.occurred=t.occurred??new Date,this.props=t.props,this.embeddedItems=t.embeddedItems?.map(r=>new pt(r)),this.items=t.items?.map(r=>new Dt(r))??[],this.nonMutableItems=t.items?.map(r=>new Dt(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 ea(t.manipulation),this.contentSource=t.contentSource,this.klaviyoFormID=t.klaviyoFormID,this.hasMultiplePlacement=t.hasMultiplePlacement,this.skipSubscribedItems=t.skipSubscribedItems,this.stickyATCConfig=t.stickyATCConfig,t.experimentConfig&&(this.experimentConfig=new Sa(t.experimentConfig)),t.progressBarConfig&&(this.progressBarConfig=new ga(t.progressBarConfig)),t.bundleConfig&&(this.bundleConfig=new ya(t.bundleConfig)),t.bundleFrom&&(this.bundleFrom=new Dt(t.bundleFrom)),t.content?.videoConfig&&(this.content={videoConfig:new Ea(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===ot.EngagementObjective.BUNDLE_AND_UPSELL}isCartEmbed(){return this.onsiteDeliveryType===ot.OnsiteDeliveryType.CART_EMBED}isPageEmbed(){return this.onsiteDeliveryType===ot.OnsiteDeliveryType.PAGE_EMBED}isProgressBar(){return this.objective===ot.EngagementObjective.PROGRESS_BAR}isSubscriptionUpsell(){return this.objective===ot.EngagementObjective.SUBSCRIPTION_UPSELL}isCartRecovery(){return this.objective===ot.EngagementObjective.CART_RECOVERY}isProductPromotion(){return this.objective===ot.EngagementObjective.PRODUCT_PROMOTION}isProductPromoted(){return this.isProductPromotion()||this.isBundle()||this.isCartRecovery()}isCollectionPromoted(){return this.isProductPromotion()&&this.collections.length>0&&this.promotionType===ot.PromotionType.COLLECTION}isBYOB(){return this.objective===ot.EngagementObjective.BYOB}isStickyATC(){return this.objective===ot.EngagementObjective.STICKY_ATC}isShoppableVideo(){return this.objective===ot.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:Lt(u.price.d),comparePrice:Lt(u.price.cmp),quantity:n.quantity},s={quantity:u.quantity}}let o={productCount:ue.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 sa(JSON.parse(c))}calculateDiscountData(t,r){let n=ba.ArrayUtils.sum(t,o=>o.selectedOrFirstVariant.value.price.d),i=ba.ArrayUtils.sum(t,o=>{let c=o.selectedOrFirstVariant.value.price;return c.cmp??c.d}),s={actualPrice:n,totalComparePrice:i,discountAmount:0,discountPercentage:0,discountedPrice:n};if(!t?.length||!r||!this.discount?.type){this.discountData.value=this.formatCurrencyAndNumber(s);return}if(zr.DiscountType.BXGY===this.discount.type&&this.discount.values?.length)s.discountPercentage=this.discount.values[0],this.updateEffectivePrice(t,s.discountPercentage,!0),s.discountAmount=s.actualPrice-ba.ArrayUtils.sum(t,o=>o.selectedOrFirstVariant.value.effectivePrice.value);else if([zr.DiscountType.UNIQUE_FLAT_ITEMS,zr.DiscountType.STATIC].includes(this.discount.type)&&this.discount.values?.length)s.discountPercentage=this.discount.values[0],s.discountAmount=s.actualPrice*s.discountPercentage/100,this.updateEffectivePrice(t,s.discountPercentage);else if(this.discount.type===zr.DiscountType.UNIQUE_FIXED_ITEMS&&this.discount.values?.length)s.discountAmount=s.actualPrice-this.discount.values[0],s.discountPercentage=s.discountAmount/s.actualPrice*100,this.updateEffectivePrice(t,s.discountPercentage);else if(this.discount.type===zr.DiscountType.UNIQUE_CHEAPEST_ITEM_FREE){t.sort((c,u)=>u.selectedOrFirstVariant.value.price.d-c.selectedOrFirstVariant.value.price.d);let o=t[t.length-1];o.selectedOrFirstVariant.value.effectivePrice.value=0,s.discountAmount=o.selectedOrFirstVariant.value.price.d,s.discountPercentage=s.discountAmount/s.actualPrice*100}s.discountedPrice=s.actualPrice-s.discountAmount,this.discountData.value=this.formatCurrencyAndNumber(s)}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[zr.DiscountType.UNIQUE_FIXED_ITEMS,zr.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=>Vh.SWIPER_ELEMENTS.has(n.t));if(!t)return!1;if(t.t===62)return!0;let r=Ot.get().isMobile()?"sm":"lg";return t.conf[r].disp===2}toString(){return`Engagement(id=${this.shortID})`}getCartMagicVariables(){let t=ue.getCurrent();return{productCount:t.item_count,amount:Lt(t.total_price/100),originalAmount:Lt(t.original_total_price/100)}}updateEffectivePrice(t,r,n=!1){let i=ce.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:ed(t.discountPercentage??0),discountCode:this.discount?.code};return["actualPrice","discountAmount","discountedPrice","totalComparePrice"].map(n=>{r[n]=Lt(t[n])}),r}};function HE(e,t){return t={exports:{}},e(t,t.exports),t.exports}var $E=GE,VE=zE,jE=XE,_r=[],Yt=[],WE=typeof Uint8Array<"u"?Uint8Array:Array,Ru="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(In=0,od=Ru.length;In<od;++In)_r[In]=Ru[In],Yt[Ru.charCodeAt(In)]=In;var In,od;Yt[45]=62;Yt[95]=63;function Sd(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 GE(e){var t=Sd(e),r=t[0],n=t[1];return(r+n)*3/4-n}function YE(e,t,r){return(t+r)*3/4-r}function zE(e){var t,r=Sd(e),n=r[0],i=r[1],s=new WE(YE(e,n,i)),o=0,c=i>0?n-4:n,u;for(u=0;u<c;u+=4)t=Yt[e.charCodeAt(u)]<<18|Yt[e.charCodeAt(u+1)]<<12|Yt[e.charCodeAt(u+2)]<<6|Yt[e.charCodeAt(u+3)],s[o++]=t>>16&255,s[o++]=t>>8&255,s[o++]=t&255;return i===2&&(t=Yt[e.charCodeAt(u)]<<2|Yt[e.charCodeAt(u+1)]>>4,s[o++]=t&255),i===1&&(t=Yt[e.charCodeAt(u)]<<10|Yt[e.charCodeAt(u+1)]<<4|Yt[e.charCodeAt(u+2)]>>2,s[o++]=t>>8&255,s[o++]=t&255),s}function qE(e){return _r[e>>18&63]+_r[e>>12&63]+_r[e>>6&63]+_r[e&63]}function KE(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(qE(n));return i.join("")}function XE(e){for(var t,r=e.length,n=r%3,i=[],s=16383,o=0,c=r-n;o<c;o+=s)i.push(KE(e,o,o+s>c?c:o+s));return n===1?(t=e[r-1],i.push(_r[t>>2]+_r[t<<4&63]+"==")):n===2&&(t=(e[r-2]<<8)+e[r-1],i.push(_r[t>>10]+_r[t>>4&63]+_r[t<<2&63]+"=")),i.join("")}var Au={byteLength:$E,toByteArray:VE,fromByteArray:jE},JE=function(e,t,r,n,i){var s,o,c=i*8-n-1,u=(1<<c)-1,d=u>>1,g=-7,h=r?i-1:0,v=r?-1:1,E=e[t+h];for(h+=v,s=E&(1<<-g)-1,E>>=-g,g+=c;g>0;s=s*256+e[t+h],h+=v,g-=8);for(o=s&(1<<-g)-1,s>>=-g,g+=n;g>0;o=o*256+e[t+h],h+=v,g-=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)},QE=function(e,t,r,n,i,s){var o,c,u,d=s*8-i-1,g=(1<<d)-1,h=g>>1,v=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=n?0:s-1,y=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=g):(o=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-o))<1&&(o--,u*=2),o+h>=1?t+=v/u:t+=v*Math.pow(2,1-h),t*u>=2&&(o++,u/=2),o+h>=g?(c=0,o=g):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+=y,c/=256,i-=8);for(o=o<<i|c,d+=i;d>0;e[r+E]=o&255,E+=y,o/=256,d-=8);e[r+E-y]|=_*128},Ci={read:JE,write:QE},Ca=HE(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 g(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(yt(a,ArrayBuffer)||a&&yt(a.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(yt(a,SharedArrayBuffer)||a&&yt(a.buffer,SharedArrayBuffer)))return y(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 g(a){return u(a),s(a<0?0:x(a)|0)}o.allocUnsafe=function(a){return g(a)},o.allocUnsafeSlow=function(a){return g(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 v(a){for(var l=a.length<0?0:x(a.length)|0,p=s(l),T=0;T<l;T+=1)p[T]=a[T]&255;return p}function E(a){if(yt(a,Uint8Array)){var l=new Uint8Array(a);return y(l.buffer,l.byteOffset,l.byteLength)}return v(a)}function y(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=x(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"||kr(a.length)?s(0):v(a);if(a.type==="Buffer"&&Array.isArray(a.data))return v(a.data)}function x(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(yt(a,Uint8Array)&&(a=o.from(a,a.offset,a.byteLength)),yt(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(yt(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)||yt(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 rn(a).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return p*2;case"hex":return p>>>1;case"base64":return Wn(a).length;default:if(A)return T?-1:rn(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 ke(this,l,p);case"ascii":return He(this,l,p);case"latin1":case"binary":return ye(this,l,p);case"base64":return de(this,l,p);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return se(this,l,p);default:if(T)throw new TypeError("Unknown encoding: "+a);a=(a+"").toLowerCase(),T=!0}}o.prototype._isBuffer=!0;function k(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)k(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)k(this,l,l+3),k(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)k(this,l,l+7),k(this,l+1,l+6),k(this,l+2,l+5),k(this,l+3,l+4);return this},o.prototype.toString=function(){var a=this.length;return a===0?"":arguments.length===0?ke(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(yt(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,W=p-l,be=Math.min(U,W),pe=this.slice(T,A),ge=a.slice(l,p),je=0;je<be;++je)if(pe[je]!==ge[je]){U=pe[je],W=ge[je];break}return U<W?-1:W<U?1:0};function G(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,kr(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:le(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):le(a,[l],p,T,A);throw new TypeError("val must be string, number or Buffer")}function le(a,l,p,T,A){var U=1,W=a.length,be=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,W/=2,be/=2,p/=2}function pe(Z,Te){return U===1?Z[Te]:Z.readUInt16BE(Te*U)}var ge;if(A){var je=-1;for(ge=p;ge<W;ge++)if(pe(a,ge)===pe(l,je===-1?0:ge-je)){if(je===-1&&(je=ge),ge-je+1===be)return je*U}else je!==-1&&(ge-=ge-je),je=-1}else for(p+be>W&&(p=W-be),ge=p;ge>=0;ge--){for(var q=!0,ae=0;ae<be;ae++)if(pe(a,ge+ae)!==pe(l,ae)){q=!1;break}if(q)return ge}return-1}o.prototype.includes=function(a,l,p){return this.indexOf(a,l,p)!==-1},o.prototype.indexOf=function(a,l,p){return G(this,a,l,p,!0)},o.prototype.lastIndexOf=function(a,l,p){return G(this,a,l,p,!1)};function Ae(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 W=0;W<T;++W){var be=parseInt(l.substr(W*2,2),16);if(kr(be))return W;a[p+W]=be}return W}function B(a,l,p,T){return $n(rn(l,a.length-p),a,p,T)}function Q(a,l,p,T){return $n(ri(l),a,p,T)}function Y(a,l,p,T){return $n(Wn(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 Ae(this,a,l,p);case"utf8":case"utf-8":return B(this,a,l,p);case"ascii":case"latin1":case"binary":return Q(this,a,l,p);case"base64":return Y(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 de(a,l,p){return l===0&&p===a.length?Au.fromByteArray(a):Au.fromByteArray(a.slice(l,p))}function ke(a,l,p){p=Math.min(a.length,p);for(var T=[],A=l;A<p;){var U=a[A],W=null,be=U>239?4:U>223?3:U>191?2:1;if(A+be<=p){var pe,ge,je,q;switch(be){case 1:U<128&&(W=U);break;case 2:pe=a[A+1],(pe&192)===128&&(q=(U&31)<<6|pe&63,q>127&&(W=q));break;case 3:pe=a[A+1],ge=a[A+2],(pe&192)===128&&(ge&192)===128&&(q=(U&15)<<12|(pe&63)<<6|ge&63,q>2047&&(q<55296||q>57343)&&(W=q));break;case 4:pe=a[A+1],ge=a[A+2],je=a[A+3],(pe&192)===128&&(ge&192)===128&&(je&192)===128&&(q=(U&15)<<18|(pe&63)<<12|(ge&63)<<6|je&63,q>65535&&q<1114112&&(W=q))}}W===null?(W=65533,be=1):W>65535&&(W-=65536,T.push(W>>>10&1023|55296),W=56320|W&1023),T.push(W),A+=be}return lt(T)}var m=4096;function lt(a){var l=a.length;if(l<=m)return String.fromCharCode.apply(String,a);for(var p="",T=0;T<l;)p+=String.fromCharCode.apply(String,a.slice(T,T+=m));return p}function He(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 ye(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+=Ki[a[U]];return A}function se(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),Ci.read(this,a,!0,23,4)},o.prototype.readFloatBE=function(a,l){return a=a>>>0,l||ie(a,4,this.length),Ci.read(this,a,!1,23,4)},o.prototype.readDoubleLE=function(a,l){return a=a>>>0,l||ie(a,8,this.length),Ci.read(this,a,!0,52,8)},o.prototype.readDoubleBE=function(a,l){return a=a>>>0,l||ie(a,8,this.length),Ci.read(this,a,!1,52,8)};function ze(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;ze(this,a,l,p,A,0)}var U=1,W=0;for(this[l]=a&255;++W<p&&(U*=256);)this[l+W]=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;ze(this,a,l,p,A,0)}var U=p-1,W=1;for(this[l+U]=a&255;--U>=0&&(W*=256);)this[l+U]=a/W&255;return l+p},o.prototype.writeUint8=o.prototype.writeUInt8=function(a,l,p){return a=+a,l=l>>>0,p||ze(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||ze(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||ze(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||ze(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||ze(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);ze(this,a,l,p,A-1,-A)}var U=0,W=1,be=0;for(this[l]=a&255;++U<p&&(W*=256);)a<0&&be===0&&this[l+U-1]!==0&&(be=1),this[l+U]=(a/W>>0)-be&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);ze(this,a,l,p,A-1,-A)}var U=p-1,W=1,be=0;for(this[l+U]=a&255;--U>=0&&(W*=256);)a<0&&be===0&&this[l+U+1]!==0&&(be=1),this[l+U]=(a/W>>0)-be&255;return l+p},o.prototype.writeInt8=function(a,l,p){return a=+a,l=l>>>0,p||ze(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||ze(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||ze(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||ze(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||ze(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 Jt(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 or(a,l,p,T,A){return l=+l,p=p>>>0,A||Jt(a,l,p,4),Ci.write(a,l,p,T,23,4),p+4}o.prototype.writeFloatLE=function(a,l,p){return or(this,a,l,!0,p)},o.prototype.writeFloatBE=function(a,l,p){return or(this,a,l,!1,p)};function vt(a,l,p,T,A){return l=+l,p=p>>>0,A||Jt(a,l,p,8),Ci.write(a,l,p,T,52,8),p+8}o.prototype.writeDoubleLE=function(a,l,p){return vt(this,a,l,!0,p)},o.prototype.writeDoubleBE=function(a,l,p){return vt(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 W=o.isBuffer(a)?a:o.from(a,T),be=W.length;if(be===0)throw new TypeError('The value "'+a+'" is invalid for argument "value"');for(U=0;U<p-l;++U)this[U+l]=W[U%be]}return this};var Br=/[^+/0-9A-Za-z-_]/g;function Gn(a){if(a=a.split("=")[0],a=a.trim().replace(Br,""),a.length<2)return"";for(;a.length%4!==0;)a=a+"=";return a}function rn(a,l){l=l||1/0;for(var p,T=a.length,A=null,U=[],W=0;W<T;++W){if(p=a.charCodeAt(W),p>55295&&p<57344){if(!A){if(p>56319){(l-=3)>-1&&U.push(239,191,189);continue}else if(W+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 ri(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=[],W=0;W<a.length&&!((l-=2)<0);++W)p=a.charCodeAt(W),T=p>>8,A=p%256,U.push(A),U.push(T);return U}function Wn(a){return Au.toByteArray(Gn(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 yt(a,l){return a instanceof l||a!=null&&a.constructor!=null&&a.constructor.name!=null&&a.constructor.name===l.name}function kr(a){return a!==a}var Ki=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}()}),Se=Ca.Buffer;Ca.SlowBuffer;Ca.INSPECT_MAX_BYTES;Ca.kMaxLength;var Mu=function(e,t){return Mu=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])},Mu(e,t)};function xa(e,t){Mu(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}var Cn=function(e){xa(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),$e=function(e){xa(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 Ia(e){return e&&e.Math==Math&&e}function wd(){return Ia(typeof globalThis=="object"&&globalThis)||Ia(typeof window=="object"&&window)||Ia(typeof self=="object"&&self)||Ia(typeof global=="object"&&global)||Function("return this")()}function ZE(){var e=wd();return typeof e.navigator=="object"&&e.navigator.product==="ReactNative"}var e_=function(e){var t=ZE()?"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=Se.alloc(e),n=0;n<e;++n)r[n]=Math.floor(Math.random()*256);return r},t_=function(){{if(typeof window<"u"){var e=window.crypto||window.msCrypto;if(e&&e.getRandomValues)return function(t){return e.getRandomValues(Se.alloc(t))}}return typeof global<"u"&&global.crypto&&global.crypto.getRandomValues?function(t){return global.crypto.getRandomValues(Se.alloc(t))}:e_}},bd=t_();function r_(e){return["[object ArrayBuffer]","[object SharedArrayBuffer]"].includes(Object.prototype.toString.call(e))}function ku(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}function n_(e){return Object.prototype.toString.call(e)==="[object RegExp]"}function i_(e){return Do(e)&&Object.prototype.toString.call(e)==="[object Date]"}function Do(e){return typeof e=="object"&&e!==null}function Da(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 Ta(e){if(ArrayBuffer.isView(e))return Se.from(e.buffer,e.byteOffset,e.byteLength);if(r_(e))return Se.from(e);throw new $e("Must use either Buffer or TypedArray")}var o_=/^(?:[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,Id=function(e){return typeof e=="string"&&o_.test(e)},Bu=function(e){if(!Id(e))throw new $e('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 Se.from(t,"hex")},sd=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")},rP=Math.pow(2,63)-1,nP=-Math.pow(2,63),s_=Math.pow(2,53),a_=-Math.pow(2,53),Td=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 $e("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=Se.alloc(e.BUFFER_SIZE),this.position=0):(typeof t=="string"?this.buffer=Se.from(t,"binary"):Array.isArray(t)?this.buffer=Se.from(t):this.buffer=Ta(t),this.position=this.buffer.byteLength)}return e.prototype.put=function(t){if(typeof t=="string"&&t.length!==1)throw new $e("only accepts single character String");if(typeof t!="number"&&t.length!==1)throw new $e("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 $e("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=Se.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=Se.alloc(this.buffer.length+t.length);this.buffer.copy(n,0,0,this.buffer.length),this.buffer=n}ArrayBuffer.isView(t)?(this.buffer.set(Ta(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 ad(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=Se.from(t.$binary,"base64")):typeof t.$binary!="string"&&(i=t.$binary.subType?parseInt(t.$binary.subType,16):0,n=Se.from(t.$binary.base64,"base64")):"$uuid"in t&&(i=4,n=Bu(t.$uuid)),!n)throw new $e("Unexpected Binary Extended JSON format ".concat(JSON.stringify(t)));return i===Td?new ad(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 Nu=16,ad=function(e){xa(t,e);function t(r){var n=this,i,s;if(r==null)i=t.generate();else if(r instanceof t)i=Se.from(r.buffer),s=r.__id;else if(ArrayBuffer.isView(r)&&r.byteLength===Nu)i=Ta(r);else if(typeof r=="string")i=Bu(r);else throw new $e("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,Td)||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=sd(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=sd(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=bd(Nu);return r[6]=r[6]&15|64,r[8]=r[8]&63|128,Se.from(r)},t.isValid=function(r){return r?r instanceof t?!0:typeof r=="string"?Id(r):ku(r)?r.length!==Nu?!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),Ra=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(Ra.prototype,"_bsontype",{value:"Code"});function c_(e){return Do(e)&&e.$id!=null&&typeof e.$ref=="string"&&(e.$db==null||typeof e.$db=="string")}var Co=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(Co.prototype,"_bsontype",{value:"DBRef"});var Gt=void 0;try{Gt=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 cd=65536,l_=1<<24,Di=cd*cd,Cd=Di*Di,ld=Cd/2,ud={},pd={},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=pd[t],i)?i:(n=e.fromBits(t,(t|0)<0?-1:0,!0),s&&(pd[t]=n),n)):(t|=0,(s=-128<=t&&t<128)&&(i=ud[t],i)?i:(n=e.fromBits(t,t<0?-1:0,!1),s&&(ud[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>=Cd)return e.MAX_UNSIGNED_VALUE}else{if(t<=-ld)return e.MIN_VALUE;if(t+1>=ld)return e.MAX_VALUE}return t<0?e.fromNumber(-t,r).neg():e.fromBits(t%Di|0,t/Di|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 g=e.fromNumber(Math.pow(n,u));o=o.mul(g).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 Do(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,g=0,h=0,v=0,E=0;return E+=s+d,v+=E>>>16,E&=65535,v+=i+u,h+=v>>>16,v&=65535,h+=n+c,g+=h>>>16,h&=65535,g+=r+o,g&=65535,e.fromBits(v<<16|E,g<<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(Gt){if(!this.unsigned&&this.high===-2147483648&&t.low===-1&&t.high===-1)return this;var r=(this.unsigned?Gt.div_u:Gt.div_s)(this.low,this.high,t.low,t.high);return e.fromBits(r,Gt.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),g=d.mul(t);g.isNegative()||g.gt(i);)n-=u,d=e.fromNumber(n,this.unsigned),g=d.mul(t);d.isZero()&&(d=e.ONE),s=s.add(d),i=i.sub(g)}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)),Gt){var r=(this.unsigned?Gt.rem_u:Gt.rem_s)(this.low,this.high,t.low,t.high);return e.fromBits(r,Gt.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)),Gt){var r=Gt.mul(this.low,this.high,t.low,t.high);return e.fromBits(r,Gt.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,g=t.low&65535,h=0,v=0,E=0,y=0;return y+=o*g,E+=y>>>16,y&=65535,E+=s*g,v+=E>>>16,E&=65535,E+=o*d,v+=E>>>16,E&=65535,v+=i*g,h+=v>>>16,v&=65535,v+=s*d,h+=v>>>16,v&=65535,v+=o*u,h+=v>>>16,v&=65535,h+=n*g+i*d+s*u+o*c,h&=65535,e.fromBits(E<<16|y,h<<16|v,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)*Di+(this.low>>>0):this.high*Di+(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,g=d.toString(t);if(o=u,o.isZero())return g+c;for(;g.length<6;)g="0"+g;c=""+g+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(l_),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 u_=/^(\+|-)?(\d+|(\d*\.\d*))?(E|e)?([-+])?(\d+)?$/,p_=/^(\+|-)?(Infinity|inf)$/i,f_=/^(\+|-)?NaN$/i,To=6111,Ou=-6176,fd=6176,m_=34,Pu=[124,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),md=[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),dd=[120,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse(),d_=/^([-+])?(\d+)?$/,h_=31,hd=16383,g_=30,y_=31;function gd(e){return!isNaN(parseInt(e,10))}function v_(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 E_(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 __(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 xi(e,t){throw new $e('"'.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(ku(t)){if(t.byteLength!==16)throw new $e("Decimal128 must take a Buffer of 16 bytes");this.bytes=t}else throw new $e("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,g=[0],h=0,v=0,E=0,y=0,_=0,x=0,P=new X(0,0),M=new X(0,0),L=0,k=0;if(t.length>=7e3)throw new $e(""+t+" not a valid Decimal128 string");var G=t.match(u_),le=t.match(p_),Ae=t.match(f_);if(!G&&!le&&!Ae||t.length===0)throw new $e(""+t+" not a valid Decimal128 string");if(G){var B=G[2],Q=G[4],Y=G[5],J=G[6];Q&&J===void 0&&xi(t,"missing exponent power"),Q&&B===void 0&&xi(t,"missing exponent base"),Q===void 0&&(Y||J)&&xi(t,"missing e before exponent")}if((t[k]==="+"||t[k]==="-")&&(r=t[k++]==="-"),!gd(t[k])&&t[k]!=="."){if(t[k]==="i"||t[k]==="I")return new e(Se.from(r?md:dd));if(t[k]==="N")return new e(Se.from(Pu))}for(;gd(t[k])||t[k]===".";){if(t[k]==="."){n&&xi(t,"contains multiple periods"),n=!0,k=k+1;continue}h<34&&(t[k]!=="0"||i)&&(i||(d=o),i=!0,g[v++]=parseInt(t[k],10),h=h+1),i&&(c=c+1),n&&(u=u+1),o=o+1,k=k+1}if(n&&!o)throw new $e(""+t+" not a valid Decimal128 string");if(t[k]==="e"||t[k]==="E"){var de=t.substr(++k).match(d_);if(!de||!de[2])return new e(Se.from(Pu));_=parseInt(de[0],10),k=k+de[0].length}if(t[k])return new e(Se.from(Pu));if(E=0,!h)E=0,y=0,g[0]=0,c=1,h=1,s=0;else if(y=h-1,s=c,s!==1)for(;g[d+s-1]===0;)s=s-1;for(_<=u&&u-_>16384?_=Ou:_=_-u;_>To;){if(y=y+1,y-E>m_){var ke=g.join("");if(ke.match(/^0+$/)){_=To;break}xi(t,"overflow")}_=_-1}for(;_<Ou||h<c;){if(y===0&&s<h){_=Ou,s=0;break}if(h<c?c=c-1:y=y-1,_<To)_=_+1;else{var ke=g.join("");if(ke.match(/^0+$/)){_=To;break}xi(t,"overflow")}}if(y-E+1<s){var m=o;n&&(d=d+1,m=m+1),r&&(d=d+1,m=m+1);var lt=parseInt(t[d+y+1],10),He=0;if(lt>=5&&(He=1,lt===5)){for(He=g[y]%2===1?1:0,x=d+y+2;x<m;x++)if(parseInt(t[x],10)){He=1;break}}if(He){for(var ye=y;ye>=0;ye--)if(++g[ye]>9&&(g[ye]=0,ye===0))if(_<To)_=_+1,g[ye]=1;else return new e(Se.from(r?md:dd))}}if(P=X.fromNumber(0),M=X.fromNumber(0),s===0)P=X.fromNumber(0),M=X.fromNumber(0);else if(y-E<17){var ye=E;for(M=X.fromNumber(g[ye++]),P=new X(0,0);ye<=y;ye++)M=M.multiply(X.fromNumber(10)),M=M.add(X.fromNumber(g[ye]))}else{var ye=E;for(P=X.fromNumber(g[ye++]);ye<=y-17;ye++)P=P.multiply(X.fromNumber(10)),P=P.add(X.fromNumber(g[ye]));for(M=X.fromNumber(g[ye++]);ye<=y;ye++)M=M.multiply(X.fromNumber(10)),M=M.add(X.fromNumber(g[ye]))}var gt=E_(P,X.fromString("100000000000000000"));gt.low=gt.low.add(M),__(gt.low,M)&&(gt.high=gt.high.add(X.fromNumber(1))),L=_+fd;var se={low:X.fromNumber(0),high:X.fromNumber(0)};gt.high.shiftRightUnsigned(49).and(X.fromNumber(1)).equals(X.fromNumber(1))?(se.high=se.high.or(X.fromNumber(3).shiftLeft(61)),se.high=se.high.or(X.fromNumber(L).and(X.fromNumber(16383).shiftLeft(47))),se.high=se.high.or(gt.high.and(X.fromNumber(0x7fffffffffff)))):(se.high=se.high.or(X.fromNumber(L&16383).shiftLeft(49)),se.high=se.high.or(gt.high.and(X.fromNumber(562949953421311)))),se.low=gt.low,r&&(se.high=se.high.or(X.fromString("9223372036854775808")));var ie=Se.alloc(16);return k=0,ie[k++]=se.low.low&255,ie[k++]=se.low.low>>8&255,ie[k++]=se.low.low>>16&255,ie[k++]=se.low.low>>24&255,ie[k++]=se.low.high&255,ie[k++]=se.low.high>>8&255,ie[k++]=se.low.high>>16&255,ie[k++]=se.low.high>>24&255,ie[k++]=se.high.low&255,ie[k++]=se.high.low>>8&255,ie[k++]=se.high.low>>16&255,ie[k++]=se.high.low>>24&255,ie[k++]=se.high.high&255,ie[k++]=se.high.high>>8&255,ie[k++]=se.high.high>>16&255,ie[k++]=se.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,g,h=[];s=0;var v=this.bytes,E=v[s++]|v[s++]<<8|v[s++]<<16|v[s++]<<24,y=v[s++]|v[s++]<<8|v[s++]<<16|v[s++]<<24,_=v[s++]|v[s++]<<8|v[s++]<<16|v[s++]<<24,x=v[s++]|v[s++]<<8|v[s++]<<16|v[s++]<<24;s=0;var P={low:new X(E,y),high:new X(_,x)};P.high.lessThan(X.ZERO)&&h.push("-");var M=x>>26&h_;if(M>>3===3){if(M===g_)return h.join("")+"Infinity";if(M===y_)return"NaN";t=x>>15&hd,c=8+(x>>14&1)}else c=x>>14&7,t=x>>17&hd;var L=t-fd;if(u.parts[0]=(x&16383)+((c&15)<<14),u.parts[1]=_,u.parts[2]=y,u.parts[3]=E,u.parts[0]===0&&u.parts[1]===0&&u.parts[2]===0&&u.parts[3]===0)o=!0;else for(g=3;g>=0;g--){var k=0,G=v_(u);if(u=G.quotient,k=G.rem.low,!!k)for(d=8;d>=0;d--)n[g*9+d]=k%10,k=Math.floor(k/10)}if(o)r=1,n[s]=0;else for(r=36;!n[s];)r=r-1,s=s+1;var le=r-1+L;if(le>=34||le<=-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"),le>0?h.push("+".concat(le)):h.push("".concat(le))}else if(L>=0)for(var i=0;i<r;i++)h.push("".concat(n[s++]));else{var Ae=r+L;if(Ae>0)for(var i=0;i<Ae;i++)h.push("".concat(n[s++]));else h.push("0");for(h.push(".");Ae++<0;)h.push("0");for(var i=0;i<r-Math.max(Ae-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 Aa=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(Aa.prototype,"_bsontype",{value:"Double"});var Na=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(Na.prototype,"_bsontype",{value:"Int32"});var Fu=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(Fu.prototype,"_bsontype",{value:"MaxKey"});var Hu=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(Hu.prototype,"_bsontype",{value:"MinKey"});var S_=new RegExp("^[0-9a-fA-F]{24}$"),Tn=null,Er=Symbol("id"),et=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 $e("Argument passed in must have an id that is of type string or Buffer");"toHexString"in t&&typeof t.toHexString=="function"?r=Se.from(t.toHexString(),"hex"):r=t.id}else r=t;if(r==null||typeof r=="number")this[Er]=e.generate(typeof r=="number"?r:void 0);else if(ArrayBuffer.isView(r)&&r.byteLength===12)this[Er]=r instanceof Se?r:Ta(r);else if(typeof r=="string")if(r.length===12){var n=Se.from(r);if(n.byteLength===12)this[Er]=n;else throw new $e("Argument passed in must be a string of 12 bytes")}else if(r.length===24&&S_.test(r))this[Er]=Se.from(r,"hex");else throw new $e("Argument passed in must be a string of 12 bytes or a string of 24 hex characters or an integer");else throw new $e("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[Er]},set:function(t){this[Er]=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=Se.alloc(12);return n.writeUInt32BE(t,0),Tn===null&&(Tn=bd(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[Er][11]===t[Er][11]&&this[Er].equals(t[Er]);if(typeof t=="string"&&e.isValid(t)&&t.length===12&&ku(this.id))return t===Se.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 Se.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=Se.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 $e("Argument passed in must be a single String of 12 bytes or a string of 24 hex characters");return new e(Se.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(et.prototype,"generate",{value:Da(function(e){return et.generate(e)},"Please use the static `ObjectId.generate(time)` instead")});Object.defineProperty(et.prototype,"getInc",{value:Da(function(){return et.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(et.prototype,"get_inc",{value:Da(function(){return et.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(et,"get_inc",{value:Da(function(){return et.getInc()},"Please use the static `ObjectId.getInc()` instead")});Object.defineProperty(et.prototype,"_bsontype",{value:"ObjectID"});function w_(e){return e.split("").sort().join("")}var xo=function(){function e(t,r){if(!(this instanceof e))return new e(t,r);if(this.pattern=t,this.options=w_(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 $e("Unexpected BSONRegExp EJSON object form: ".concat(JSON.stringify(t)))},e}();Object.defineProperty(xo.prototype,"_bsontype",{value:"BSONRegExp"});var $u=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($u.prototype,"_bsontype",{value:"Symbol"});var b_=X,xd=function(e){xa(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:Do(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}(b_);function I_(e){return Do(e)&&Reflect.has(e,"_bsontype")&&typeof e._bsontype=="string"}var Dd=2147483647,Rd=-2147483648,Ad=9223372036854776e3,Nd=-9223372036854776e3,T_={$oid:et,$binary:xn,$uuid:xn,$symbol:$u,$numberInt:Na,$numberDecimal:Uu,$numberDouble:Aa,$numberLong:X,$minKey:Hu,$maxKey:Fu,$regex:xo,$regularExpression:xo,$timestamp:xd};function Od(e,t){if(t===void 0&&(t={}),typeof e=="number"){if(t.relaxed||t.legacy)return e;if(Math.floor(e)===e){if(e>=Rd&&e<=Dd)return new Na(e);if(e>=Nd&&e<=Ad)return X.fromNumber(e)}return new Aa(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=T_[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=Od(e.$scope)),Ra.fromExtendedJSON(e)}if(c_(e)||e.$dbPointer){var u=e.$ref?e:e.$dbPointer;if(u instanceof Co)return u;var d=Object.keys(u).filter(function(h){return h.startsWith("$")}),g=!0;if(d.forEach(function(h){["$ref","$id","$db"].indexOf(h)===-1&&(g=!1)}),g)return Co.fromExtendedJSON(u)}return e}function C_(e,t){return e.map(function(r,n){t.seenObjects.push({propertyName:"index ".concat(n),obj:null});try{return qr(r,t)}finally{t.seenObjects.pop()}})}function yd(e){var t=e.toISOString();return e.getUTCMilliseconds()!==0?t:t.slice(0,-5)+"Z"}function qr(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 $e(`Converting circular structure to EJSON:
|
|
35
35
|
`+" ".concat(i).concat(s).concat(o).concat(c,`
|
|
36
36
|
`)+" ".concat(u,"\\").concat(d,"/"))}t.seenObjects[t.seenObjects.length-1].obj=e}if(Array.isArray(e))return C_(e,t);if(e===void 0)return null;if(e instanceof Date||i_(e)){var g=e.getTime(),h=g>-1&&g<2534023188e5;return t.legacy?t.relaxed&&h?{$date:e.getTime()}:{$date:yd(e)}:t.relaxed&&h?{$date:yd(e)}:{$date:{$numberLong:e.getTime().toString()}}}if(typeof e=="number"&&(!t.relaxed||!isFinite(e))){if(Math.floor(e)===e){var v=e>=Rd&&e<=Dd,E=e>=Nd&&e<=Ad;if(v)return{$numberInt:e.toString()};if(E)return{$numberLong:e.toString()}}return{$numberDouble:e.toString()}}if(e instanceof RegExp||n_(e)){var y=e.flags;if(y===void 0){var _=e.toString().match(/[gimuy]*$/);_&&(y=_[0])}var x=new xo(e.source,y);return x.toExtendedJSON(t)}return e!=null&&typeof e=="object"?D_(e,t):e}var x_={Binary:function(e){return new xn(e.value(),e.sub_type)},Code:function(e){return new Ra(e.code,e.scope)},DBRef:function(e){return new Co(e.collection||e.namespace,e.oid,e.db,e.fields)},Decimal128:function(e){return new Uu(e.bytes)},Double:function(e){return new Aa(e.value)},Int32:function(e){return new Na(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 Fu},MinKey:function(){return new Hu},ObjectID:function(e){return new et(e)},ObjectId:function(e){return new et(e)},BSONRegExp:function(e){return new xo(e.pattern,e.options)},Symbol:function(e){return new $u(e.value)},Timestamp:function(e){return xd.fromBits(e.low,e.high)}};function D_(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=qr(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(I_(e)){var o=e;if(typeof o.toExtendedJSON!="function"){var c=x_[e._bsontype];if(!c)throw new $e("Unrecognized or invalid _bsontype: "+e._bsontype);o=c(o)}return r==="Code"&&o.scope?o=new Ra(o.code,qr(o.scope,t)):r==="DBRef"&&o.oid&&(o=new Co(qr(o.collection,t),qr(o.oid,t),qr(o.db,t),qr(o.fields,t))),o.toExtendedJSON(t)}else throw new Cn("_bsontype must be a string, but was: "+typeof r)}var vd;(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 Od(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}]}),g=qr(s,d);return JSON.stringify(g,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})(vd||(vd={}));var Ed,_d=wd();_d.Map?Ed=_d.Map:Ed=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 iP=X.fromNumber(s_),oP=X.fromNumber(a_),Lu=new Uint8Array(8),sP=new DataView(Lu.buffer,Lu.byteOffset,Lu.byteLength),R_=1024*1024*17,aP=Se.alloc(R_),Kr=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}},ve=class{constructor(e,t={},r,n){this.name=e,this.properties=t,this.id=n?new et(n):new et,this.occurred=new Date,r&&(this.trigger=new Kr(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,ut.mode==="local"&&(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)})}},Dh=Ee(rl()),re=class{static storage=new Map;static get(e){return this.storage.has(e)||this.storage.set(e,e.getInstance()),this.storage.get(e)}};function fe(e){return typeof e=="function"}function Oa(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 Pa=Oa(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 zt=class xc{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(fe(n))try{n()}catch(s){t=s instanceof Pa?s.errors:[s]}let{_finalizers:i}=this;if(i){this._finalizers=null;for(let s of i)try{Pd(s)}catch(o){t=t??[],o instanceof Pa?t=[...t,...o.errors]:t.push(o)}}if(t)throw new Pa(t)}}add(t){var r;if(t&&t!==this)if(this.closed)Pd(t);else{if(t instanceof xc){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 xc&&t._removeParent(this)}};zt.EMPTY=(()=>{let e=new zt;return e.closed=!0,e})();var ju=zt.EMPTY;function La(e){return e instanceof zt||e&&"closed"in e&&fe(e.remove)&&fe(e.add)&&fe(e.unsubscribe)}function Pd(e){fe(e)?e():e.unsubscribe()}var rr={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},Ri={setTimeout(e,t,...r){let{delegate:n}=Ri;return n?.setTimeout?n.setTimeout(e,t,...r):setTimeout(e,t,...r)},clearTimeout(e){let{delegate:t}=Ri;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0};function Ma(e){Ri.setTimeout(()=>{let{onUnhandledError:t}=rr;if(t)t(e);else throw e})}function Vu(){}var Ld=Wu("C",void 0,void 0);function Md(e){return Wu("E",void 0,e)}function Bd(e){return Wu("N",e,void 0)}function Wu(e,t,r){return{kind:e,value:t,error:r}}var Rn=null;function Ai(e){if(rr.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 kd(e){rr.useDeprecatedSynchronousErrorHandling&&Rn&&(Rn.errorThrown=!0,Rn.error=e)}var An=class extends zt{constructor(e){super(),this.isStopped=!1,e?(this.destination=e,La(e)&&e.add(this)):this.destination=O_}static create(e,t,r){return new Ni(e,t,r)}next(e){this.isStopped?Yu(Bd(e),this):this._next(e)}error(e){this.isStopped?Yu(Md(e),this):(this.isStopped=!0,this._error(e))}complete(){this.isStopped?Yu(Ld,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()}}},A_=Function.prototype.bind;function Gu(e,t){return A_.call(e,t)}var zu=class{constructor(e){this.partialObserver=e}next(e){let{partialObserver:t}=this;if(t.next)try{t.next(e)}catch(r){Ba(r)}}error(e){let{partialObserver:t}=this;if(t.error)try{t.error(e)}catch(r){Ba(r)}else Ba(e)}complete(){let{partialObserver:e}=this;if(e.complete)try{e.complete()}catch(t){Ba(t)}}},Ni=class extends An{constructor(e,t,r){super();let n;if(fe(e)||!e)n={next:e??void 0,error:t??void 0,complete:r??void 0};else{let i;this&&rr.useDeprecatedNextContext?(i=Object.create(e),i.unsubscribe=()=>this.unsubscribe(),n={next:e.next&&Gu(e.next,i),error:e.error&&Gu(e.error,i),complete:e.complete&&Gu(e.complete,i)}):n=e}this.destination=new zu(n)}};function Ba(e){rr.useDeprecatedSynchronousErrorHandling?kd(e):Ma(e)}function N_(e){throw e}function Yu(e,t){let{onStoppedNotification:r}=rr;r&&Ri.setTimeout(()=>r(e,t))}var O_={closed:!0,next:Vu,error:N_,complete:Vu},Oi=typeof Symbol=="function"&&Symbol.observable||"@@observable";function Ud(e){return e}function Fd(e){return e.length===0?Ud:e.length===1?e[0]:function(t){return e.reduce((r,n)=>n(r),t)}}var qt=(()=>{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=L_(r)?r:new Ni(r,n,i);return Ai(()=>{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=Hd(n),new n((i,s)=>{let o=new Ni({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)}[Oi](){return this}pipe(...r){return Fd(r)(this)}toPromise(r){return r=Hd(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 Hd(e){var t;return(t=e??rr.Promise)!==null&&t!==void 0?t:Promise}function P_(e){return e&&fe(e.next)&&fe(e.error)&&fe(e.complete)}function L_(e){return e&&e instanceof An||P_(e)&&La(e)}function M_(e){return fe(e?.lift)}function Pi(e){return t=>{if(M_(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 Nn(e,t,r,n,i){return new qu(e,t,r,n,i)}var qu=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))}}},$d=Oa(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}),Ct=(()=>{class e extends qt{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(r){let n=new ka(this,this);return n.operator=r,n}_throwIfClosed(){if(this.closed)throw new $d}next(r){Ai(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(let n of this.currentObservers)n.next(r)}})}error(r){Ai(()=>{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(){Ai(()=>{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?ju:(this.currentObservers=null,s.push(r),new zt(()=>{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 qt;return r.source=this,r}}return e.create=(t,r)=>new ka(t,r),e})(),ka=class extends Ct{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:ju}},Ro=class extends Ct{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)}},Ao={now(){return(Ao.delegate||Date).now()},delegate:void 0},No=class extends Ct{constructor(e=1/0,t=1/0,r=Ao){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)}}},Ua=class extends zt{constructor(e,t){super()}schedule(e,t=0){return this}},Oo={setInterval(e,t,...r){let{delegate:n}=Oo;return n?.setInterval?n.setInterval(e,t,...r):setInterval(e,t,...r)},clearInterval(e){let{delegate:t}=Oo;return(t?.clearInterval||clearInterval)(e)},delegate:void 0},Fa=class extends Ua{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 Oo.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&&Oo.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()}}},Li=class Vh{constructor(t,r=Vh.now){this.schedulerActionCtor=t,this.now=r}schedule(t,r=0,n){return new this.schedulerActionCtor(this,t).schedule(n,r)}};Li.now=Ao.now;var Ha=class extends Li{constructor(e,t=Li.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}}},jd=new Ha(Fa);function Wd(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(g){try{d(n.next(g))}catch(h){o(h)}}function u(g){try{d(n.throw(g))}catch(h){o(h)}}function d(g){g.done?s(g.value):i(g.value).then(c,u)}d((n=n.apply(e,t||[])).next())})}function Vd(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 On(e){return this instanceof On?(this.v=e,this):new On(e)}function Gd(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(y){return Promise.resolve(y).then(E,h)}}function c(E,y){n[E]&&(i[E]=function(_){return new Promise(function(x,P){s.push([E,_,x,P])>1||u(E,_)})},y&&(i[E]=y(i[E])))}function u(E,y){try{d(n[E](y))}catch(_){v(s[0][3],_)}}function d(E){E.value instanceof On?Promise.resolve(E.value.v).then(g,h):v(s[0][2],E)}function g(E){u("next",E)}function h(E){u("throw",E)}function v(E,y){E(y),s.shift(),s.length&&u(s[0][0],s[0][1])}}function Yd(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 Vd=="function"?Vd(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 $a=e=>e&&typeof e.length=="number"&&typeof e!="function";function zd(e){return fe(e?.then)}function qd(e){return fe(e[Oi])}function Kd(e){return Symbol.asyncIterator&&fe(e?.[Symbol.asyncIterator])}function Xd(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 B_(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Jd=B_();function Qd(e){return fe(e?.[Jd])}function Zd(e){return Gd(this,arguments,function*(){let t=e.getReader();try{for(;;){let{value:r,done:n}=yield On(t.read());if(n)return yield On(void 0);yield yield On(r)}}finally{t.releaseLock()}})}function eh(e){return fe(e?.getReader)}function Mi(e){if(e instanceof qt)return e;if(e!=null){if(qd(e))return k_(e);if($a(e))return U_(e);if(zd(e))return F_(e);if(Kd(e))return th(e);if(Qd(e))return H_(e);if(eh(e))return $_(e)}throw Xd(e)}function k_(e){return new qt(t=>{let r=e[Oi]();if(fe(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function U_(e){return new qt(t=>{for(let r=0;r<e.length&&!t.closed;r++)t.next(e[r]);t.complete()})}function F_(e){return new qt(t=>{e.then(r=>{t.closed||(t.next(r),t.complete())},r=>t.error(r)).then(null,Ma)})}function H_(e){return new qt(t=>{for(let r of e)if(t.next(r),t.closed)return;t.complete()})}function th(e){return new qt(t=>{j_(e,t).catch(r=>t.error(r))})}function $_(e){return th(Zd(e))}function j_(e,t){var r,n,i,s;return Wd(this,void 0,void 0,function*(){try{for(r=Yd(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 rh(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 Pn(e,t){return Pi((r,n)=>{let i=0;r.subscribe(Nn(n,s=>{n.next(e.call(t,s,i++))}))})}var{isArray:V_}=Array;function W_(e,t){return V_(t)?e(...t):e(t)}function nh(e){return Pn(t=>W_(e,t))}function ih(e,t,r,n,i,s,o,c){let u=[],d=0,g=0,h=!1,v=()=>{h&&!u.length&&!d&&t.complete()},E=_=>d<n?y(_):u.push(_),y=_=>{s&&t.next(_),d++;let x=!1;Mi(r(_,g++)).subscribe(Nn(t,P=>{i?.(P),s?E(P):t.next(P)},()=>{x=!0},void 0,()=>{if(x)try{for(d--;u.length&&d<n;){let P=u.shift();o?rh(t,o,()=>y(P)):y(P)}v()}catch(P){t.error(P)}}))};return e.subscribe(Nn(t,E,()=>{h=!0,v()})),()=>{c?.()}}function Ku(e,t,r=1/0){return fe(t)?Ku((n,i)=>Pn((s,o)=>t(n,s,i,o))(Mi(e(n,i))),r):(typeof t=="number"&&(r=t),Pi((n,i)=>ih(n,i,e,r)))}var G_=["addListener","removeListener"],Y_=["addEventListener","removeEventListener"],z_=["on","off"];function Ln(e,t,r,n){if(fe(r)&&(n=r,r=void 0),n)return Ln(e,t,r).pipe(nh(n));let[i,s]=X_(e)?Y_.map(o=>c=>e[o](t,c,r)):q_(e)?G_.map(oh(e,t)):K_(e)?z_.map(oh(e,t)):[];if(!i&&$a(e))return Ku(o=>Ln(o,t,r))(Mi(e));if(!i)throw new TypeError("Invalid event target");return new qt(o=>{let c=(...u)=>o.next(1<u.length?u:u[0]);return i(c),()=>s(c)})}function oh(e,t){return r=>n=>e[r](t,n)}function q_(e){return fe(e.addListener)&&fe(e.removeListener)}function K_(e){return fe(e.on)&&fe(e.off)}function X_(e){return fe(e.addEventListener)&&fe(e.removeEventListener)}function nr(e,t=jd){return Pi((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,g=t.now();if(g<d){i=this.schedule(void 0,d-g),n.add(i);return}c()}r.subscribe(Nn(n,d=>{s=d,o=t.now(),i||(i=t.schedule(u,e),n.add(i))},()=>{c(),n.complete()},void 0,()=>{s=i=null}))})}var sh=Ee(Xu()),Po=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 sh.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)}},Sr=class Gh{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 Gh(w({origin:location.origin,path:t,qs:location.search,referrer:Po.getReferrer(),name:ce.get().pageName},Po.getUTMParams()))}},Q_=" 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",Z_=/bot|crawl|http|lighthouse|scan|search|spider/i,Lo;function eS(){if(Lo instanceof RegExp)return Lo;try{Lo=new RegExp(Q_,"i")}catch{Lo=Z_}return Lo}function ah(e){return!!e&&eS().test(e)}var 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:()=>nS,k:()=>Zu});var tS=function(e,t,r,n){return new(r||(r=Promise))(function(i,s){function o(d){try{u(n.next(d))}catch(g){s(g)}}function c(d){try{u(n.throw(d))}catch(g){s(g)}}function u(d){var g;d.done?i(d.value):(g=d.value,g instanceof r?g:new r(function(h){h(g)})).then(o,c)}u((n=n.apply(e,t||[])).next())})},rS=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(g){if(r)throw new TypeError("Generator is already executing.");for(;s&&(s=0,g[0]&&(o=0)),o;)try{if(r=1,n&&(i=2&g[0]?n.return:g[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,g[1])).done)return i;switch(n=0,i&&(g=[2&g[0],i.value]),g[0]){case 0:case 1:i=g;break;case 4:return o.label++,{value:g[1],done:!1};case 5:o.label++,n=g[1],g=[0];continue;case 7:g=o.ops.pop(),o.trys.pop();continue;default:if(i=o.trys,!((i=i.length>0&&i[i.length-1])||g[0]!==6&&g[0]!==2)){o=0;continue}if(g[0]===3&&(!i||g[1]>i[0]&&g[1]<i[3])){o.label=g[1];break}if(g[0]===6&&o.label<i[1]){o.label=i[1],i=g;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(g);break}i[2]&&o.ops.pop(),o.trys.pop();continue}g=t.call(e,o)}catch(h){g=[6,h],n=0}finally{r=i=0}if(5&g[0])throw g[1];return{value:g[0]?g[1]:void 0,done:!0}}([u,d])}}};function Zu(){return tS(this,void 0,Promise,function(){return rS(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 nS=Zu,ch=Qu.A,QL=Qu.k,gh=Ee(nn()),Va=class{parser;result={};constructor(){this.parser=Ot.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(){if(!document.body)return;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{}}},Bi=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"}},dh=Ee(Tr()),ki=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))}},Wa=class{loadedFonts=[];async loadAllFonts(e){e.elems?.forEach(t=>{t instanceof vr&&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)})}},Ga=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"}},Ya=Ee(nn()),Xr=class Wh{static INSTANCE=new Wh;topics={};constructor(){}static get(){return this.INSTANCE}broadcast(t,r){this.topics[t]||(this.topics[t]=new Ct),this.topics[t].next(r)}subscriber(t){return this.topics[t]||(this.topics[t]=new Ct),this.topics[t].asObservable()}},Ge=class Ur{static DEFAULT_SELECTOR="cart-drawer";static _instance;inShadow=!1;cartDrawerElement;cartDrawerShadowElement;configWebsite=Pe.get().website??{};currentState=!1;drawerSubject=new Ro({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=[Ur.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 Ur._instance||(Ur._instance=new Ur),Ur._instance}static forceUpdate(){Ur._instance=new Ur}isOpen(){let t=this.inShadow?this.isPresent():this.isVisible();return Ya.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()===Ur.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(window.MinimogTheme?.Cart?.renderNewCart)window.MinimogTheme.Cart.renderNewCart();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():window.sideCart?.updateCart?window.sideCart.updateCart():window.SLIDECART_UPDATE?(window.SLIDECART_UPDATE(),window.SLIDECART_OPEN?.()):(b.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&&Xr.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(!oo())return;let t=this.selector||this.cartSelector;if(this.cartDrawerElement=await mi(t),!this.cartDrawerElement){Ya.default.warn("Max attempts exhausted to find cart drawer");return}Ya.default.log("Found",this.cartDrawerElement,`from selector: ${t}`),this.createMutationObservers()}async findCartDrawerWithShadow(){if(!this.shadowParentElementSelector)return;let t=(await mi(this.shadowParentElementSelector))?.shadowRoot;t?.mode==="open"&&(this.cartDrawerShadowElement=t,this.createMutationObservers())}isVisible(){if(!this.cartDrawerElement)return!1;if(this.cartDrawerElement.tagName.toLowerCase()===Ur.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,g=this.cartDrawerElement.offsetWidth>0||this.cartDrawerElement.offsetHeight>0||this.cartDrawerElement.getClientRects().length>0,h=c.transform.match(/matrix\(([^)]+)\)/),v=0,E=0;if(h){let k=h[1].split(", ").map(parseFloat);v=k[4],E=k[5]}let y=v+t.left>n||v+t.right<0||E+t.top>r||E+t.bottom<0,_=Math.max(0,Math.min(t.right,n)-Math.max(t.left,0)),x=Math.max(0,Math.min(t.bottom,r)-Math.max(t.top,0)),P=_*x,M=t.width*t.height,L=M>0&&P/M>=.1;return(o||!y)&&u&&d&&g&&L}createMutationObservers(){!this.cartDrawerElement&&!this.cartDrawerShadowElement||(rd(this.cartDrawerElement,()=>{this.initialize()}),this.watchForCartToggle())}watchForCartToggle(){let t=this.cartDrawerElement||this.cartDrawerShadowElement,r=new Ct;this.mutationObserver?.disconnect(),this.mutationObserver=new MutationObserver(()=>{r.next()}),this.mutationObserver.observe(t,{attributes:!0,subtree:!0,childList:this.inShadow}),r.pipe(nr(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 ue.getCurrent().getNormalisedCart(!0)).itemCount,r=document.querySelector(".cart-link__bubble");r&&(r.innerText=t+"")}},Pr=Ee(Tr()),uh=Ee(lh()),Mn=class{static _flags={};static getFlags(){return this._flags}static setFlags(e){this._flags=e??{}}static isECommerceApp(){return oo()}},iS=(0,uh.default)(fetch),oS={retryDelay:N.API_CALL_RETRY_DELAY,retryOn:(e,t,r)=>e>=N.API_CALL_MAX_ATTEMPTS?!1:!!(t!==null||r?.status&&r?.status>=500)},dt=class qh{static INSTANCE;apiToken="";firstSeen="";constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new qh),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(!Mn.isECommerceApp()&&!Mn.getFlags().allowEvents)return b.log(`Rejecting ${t} ${r} as this is not e-commerce app`),Promise.reject();r.startsWith("http")||(r=ut.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 Re.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({},oS),r),i=await iS(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),ut.debug&&t.set("cooee-sdk-debug",String(1)),t}},sS=`
|
|
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 zt=class xc{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(fe(n))try{n()}catch(s){t=s instanceof Pa?s.errors:[s]}let{_finalizers:i}=this;if(i){this._finalizers=null;for(let s of i)try{Pd(s)}catch(o){t=t??[],o instanceof Pa?t=[...t,...o.errors]:t.push(o)}}if(t)throw new Pa(t)}}add(t){var r;if(t&&t!==this)if(this.closed)Pd(t);else{if(t instanceof xc){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 xc&&t._removeParent(this)}};zt.EMPTY=(()=>{let e=new zt;return e.closed=!0,e})();var Vu=zt.EMPTY;function La(e){return e instanceof zt||e&&"closed"in e&&fe(e.remove)&&fe(e.add)&&fe(e.unsubscribe)}function Pd(e){fe(e)?e():e.unsubscribe()}var rr={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},Ri={setTimeout(e,t,...r){let{delegate:n}=Ri;return n?.setTimeout?n.setTimeout(e,t,...r):setTimeout(e,t,...r)},clearTimeout(e){let{delegate:t}=Ri;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0};function Ma(e){Ri.setTimeout(()=>{let{onUnhandledError:t}=rr;if(t)t(e);else throw e})}function ju(){}var Ld=Wu("C",void 0,void 0);function Md(e){return Wu("E",void 0,e)}function Bd(e){return Wu("N",e,void 0)}function Wu(e,t,r){return{kind:e,value:t,error:r}}var Rn=null;function Ai(e){if(rr.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 kd(e){rr.useDeprecatedSynchronousErrorHandling&&Rn&&(Rn.errorThrown=!0,Rn.error=e)}var An=class extends zt{constructor(e){super(),this.isStopped=!1,e?(this.destination=e,La(e)&&e.add(this)):this.destination=O_}static create(e,t,r){return new Ni(e,t,r)}next(e){this.isStopped?Yu(Bd(e),this):this._next(e)}error(e){this.isStopped?Yu(Md(e),this):(this.isStopped=!0,this._error(e))}complete(){this.isStopped?Yu(Ld,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()}}},A_=Function.prototype.bind;function Gu(e,t){return A_.call(e,t)}var zu=class{constructor(e){this.partialObserver=e}next(e){let{partialObserver:t}=this;if(t.next)try{t.next(e)}catch(r){Ba(r)}}error(e){let{partialObserver:t}=this;if(t.error)try{t.error(e)}catch(r){Ba(r)}else Ba(e)}complete(){let{partialObserver:e}=this;if(e.complete)try{e.complete()}catch(t){Ba(t)}}},Ni=class extends An{constructor(e,t,r){super();let n;if(fe(e)||!e)n={next:e??void 0,error:t??void 0,complete:r??void 0};else{let i;this&&rr.useDeprecatedNextContext?(i=Object.create(e),i.unsubscribe=()=>this.unsubscribe(),n={next:e.next&&Gu(e.next,i),error:e.error&&Gu(e.error,i),complete:e.complete&&Gu(e.complete,i)}):n=e}this.destination=new zu(n)}};function Ba(e){rr.useDeprecatedSynchronousErrorHandling?kd(e):Ma(e)}function N_(e){throw e}function Yu(e,t){let{onStoppedNotification:r}=rr;r&&Ri.setTimeout(()=>r(e,t))}var O_={closed:!0,next:ju,error:N_,complete:ju},Oi=typeof Symbol=="function"&&Symbol.observable||"@@observable";function Ud(e){return e}function Fd(e){return e.length===0?Ud:e.length===1?e[0]:function(t){return e.reduce((r,n)=>n(r),t)}}var qt=(()=>{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=L_(r)?r:new Ni(r,n,i);return Ai(()=>{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=Hd(n),new n((i,s)=>{let o=new Ni({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)}[Oi](){return this}pipe(...r){return Fd(r)(this)}toPromise(r){return r=Hd(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 Hd(e){var t;return(t=e??rr.Promise)!==null&&t!==void 0?t:Promise}function P_(e){return e&&fe(e.next)&&fe(e.error)&&fe(e.complete)}function L_(e){return e&&e instanceof An||P_(e)&&La(e)}function M_(e){return fe(e?.lift)}function Pi(e){return t=>{if(M_(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 Nn(e,t,r,n,i){return new qu(e,t,r,n,i)}var qu=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))}}},$d=Oa(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}),Ct=(()=>{class e extends qt{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(r){let n=new ka(this,this);return n.operator=r,n}_throwIfClosed(){if(this.closed)throw new $d}next(r){Ai(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(let n of this.currentObservers)n.next(r)}})}error(r){Ai(()=>{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(){Ai(()=>{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?Vu:(this.currentObservers=null,s.push(r),new zt(()=>{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 qt;return r.source=this,r}}return e.create=(t,r)=>new ka(t,r),e})(),ka=class extends Ct{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:Vu}},Ro=class extends Ct{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)}},Ao={now(){return(Ao.delegate||Date).now()},delegate:void 0},No=class extends Ct{constructor(e=1/0,t=1/0,r=Ao){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)}}},Ua=class extends zt{constructor(e,t){super()}schedule(e,t=0){return this}},Oo={setInterval(e,t,...r){let{delegate:n}=Oo;return n?.setInterval?n.setInterval(e,t,...r):setInterval(e,t,...r)},clearInterval(e){let{delegate:t}=Oo;return(t?.clearInterval||clearInterval)(e)},delegate:void 0},Fa=class extends Ua{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 Oo.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&&Oo.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()}}},Li=class Hh{constructor(t,r=Hh.now){this.schedulerActionCtor=t,this.now=r}schedule(t,r=0,n){return new this.schedulerActionCtor(this,t).schedule(n,r)}};Li.now=Ao.now;var Ha=class extends Li{constructor(e,t=Li.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}}},Vd=new Ha(Fa);function Wd(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(g){try{d(n.next(g))}catch(h){o(h)}}function u(g){try{d(n.throw(g))}catch(h){o(h)}}function d(g){g.done?s(g.value):i(g.value).then(c,u)}d((n=n.apply(e,t||[])).next())})}function jd(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 On(e){return this instanceof On?(this.v=e,this):new On(e)}function Gd(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(y){return Promise.resolve(y).then(E,h)}}function c(E,y){n[E]&&(i[E]=function(_){return new Promise(function(x,P){s.push([E,_,x,P])>1||u(E,_)})},y&&(i[E]=y(i[E])))}function u(E,y){try{d(n[E](y))}catch(_){v(s[0][3],_)}}function d(E){E.value instanceof On?Promise.resolve(E.value.v).then(g,h):v(s[0][2],E)}function g(E){u("next",E)}function h(E){u("throw",E)}function v(E,y){E(y),s.shift(),s.length&&u(s[0][0],s[0][1])}}function Yd(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 jd=="function"?jd(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 $a=e=>e&&typeof e.length=="number"&&typeof e!="function";function zd(e){return fe(e?.then)}function qd(e){return fe(e[Oi])}function Kd(e){return Symbol.asyncIterator&&fe(e?.[Symbol.asyncIterator])}function Xd(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 B_(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Jd=B_();function Qd(e){return fe(e?.[Jd])}function Zd(e){return Gd(this,arguments,function*(){let t=e.getReader();try{for(;;){let{value:r,done:n}=yield On(t.read());if(n)return yield On(void 0);yield yield On(r)}}finally{t.releaseLock()}})}function eh(e){return fe(e?.getReader)}function Mi(e){if(e instanceof qt)return e;if(e!=null){if(qd(e))return k_(e);if($a(e))return U_(e);if(zd(e))return F_(e);if(Kd(e))return th(e);if(Qd(e))return H_(e);if(eh(e))return $_(e)}throw Xd(e)}function k_(e){return new qt(t=>{let r=e[Oi]();if(fe(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function U_(e){return new qt(t=>{for(let r=0;r<e.length&&!t.closed;r++)t.next(e[r]);t.complete()})}function F_(e){return new qt(t=>{e.then(r=>{t.closed||(t.next(r),t.complete())},r=>t.error(r)).then(null,Ma)})}function H_(e){return new qt(t=>{for(let r of e)if(t.next(r),t.closed)return;t.complete()})}function th(e){return new qt(t=>{V_(e,t).catch(r=>t.error(r))})}function $_(e){return th(Zd(e))}function V_(e,t){var r,n,i,s;return Wd(this,void 0,void 0,function*(){try{for(r=Yd(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 rh(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 Pn(e,t){return Pi((r,n)=>{let i=0;r.subscribe(Nn(n,s=>{n.next(e.call(t,s,i++))}))})}var{isArray:j_}=Array;function W_(e,t){return j_(t)?e(...t):e(t)}function nh(e){return Pn(t=>W_(e,t))}function ih(e,t,r,n,i,s,o,c){let u=[],d=0,g=0,h=!1,v=()=>{h&&!u.length&&!d&&t.complete()},E=_=>d<n?y(_):u.push(_),y=_=>{s&&t.next(_),d++;let x=!1;Mi(r(_,g++)).subscribe(Nn(t,P=>{i?.(P),s?E(P):t.next(P)},()=>{x=!0},void 0,()=>{if(x)try{for(d--;u.length&&d<n;){let P=u.shift();o?rh(t,o,()=>y(P)):y(P)}v()}catch(P){t.error(P)}}))};return e.subscribe(Nn(t,E,()=>{h=!0,v()})),()=>{c?.()}}function Ku(e,t,r=1/0){return fe(t)?Ku((n,i)=>Pn((s,o)=>t(n,s,i,o))(Mi(e(n,i))),r):(typeof t=="number"&&(r=t),Pi((n,i)=>ih(n,i,e,r)))}var G_=["addListener","removeListener"],Y_=["addEventListener","removeEventListener"],z_=["on","off"];function Ln(e,t,r,n){if(fe(r)&&(n=r,r=void 0),n)return Ln(e,t,r).pipe(nh(n));let[i,s]=X_(e)?Y_.map(o=>c=>e[o](t,c,r)):q_(e)?G_.map(oh(e,t)):K_(e)?z_.map(oh(e,t)):[];if(!i&&$a(e))return Ku(o=>Ln(o,t,r))(Mi(e));if(!i)throw new TypeError("Invalid event target");return new qt(o=>{let c=(...u)=>o.next(1<u.length?u:u[0]);return i(c),()=>s(c)})}function oh(e,t){return r=>n=>e[r](t,n)}function q_(e){return fe(e.addListener)&&fe(e.removeListener)}function K_(e){return fe(e.on)&&fe(e.off)}function X_(e){return fe(e.addEventListener)&&fe(e.removeEventListener)}function nr(e,t=Vd){return Pi((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,g=t.now();if(g<d){i=this.schedule(void 0,d-g),n.add(i);return}c()}r.subscribe(Nn(n,d=>{s=d,o=t.now(),i||(i=t.schedule(u,e),n.add(i))},()=>{c(),n.complete()},void 0,()=>{s=i=null}))})}var sh=Ee(Xu()),Po=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 sh.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)}},Sr=class Gh{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 Gh(w({origin:location.origin,path:t,qs:location.search,referrer:Po.getReferrer(),name:ce.get().pageName},Po.getUTMParams()))}},Q_=" 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",Z_=/bot|crawl|http|lighthouse|scan|search|spider/i,Lo;function eS(){if(Lo instanceof RegExp)return Lo;try{Lo=new RegExp(Q_,"i")}catch{Lo=Z_}return Lo}function ah(e){return!!e&&eS().test(e)}var 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:()=>nS,k:()=>Zu});var tS=function(e,t,r,n){return new(r||(r=Promise))(function(i,s){function o(d){try{u(n.next(d))}catch(g){s(g)}}function c(d){try{u(n.throw(d))}catch(g){s(g)}}function u(d){var g;d.done?i(d.value):(g=d.value,g instanceof r?g:new r(function(h){h(g)})).then(o,c)}u((n=n.apply(e,t||[])).next())})},rS=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(g){if(r)throw new TypeError("Generator is already executing.");for(;s&&(s=0,g[0]&&(o=0)),o;)try{if(r=1,n&&(i=2&g[0]?n.return:g[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,g[1])).done)return i;switch(n=0,i&&(g=[2&g[0],i.value]),g[0]){case 0:case 1:i=g;break;case 4:return o.label++,{value:g[1],done:!1};case 5:o.label++,n=g[1],g=[0];continue;case 7:g=o.ops.pop(),o.trys.pop();continue;default:if(i=o.trys,!((i=i.length>0&&i[i.length-1])||g[0]!==6&&g[0]!==2)){o=0;continue}if(g[0]===3&&(!i||g[1]>i[0]&&g[1]<i[3])){o.label=g[1];break}if(g[0]===6&&o.label<i[1]){o.label=i[1],i=g;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(g);break}i[2]&&o.ops.pop(),o.trys.pop();continue}g=t.call(e,o)}catch(h){g=[6,h],n=0}finally{r=i=0}if(5&g[0])throw g[1];return{value:g[0]?g[1]:void 0,done:!0}}([u,d])}}};function Zu(){return tS(this,void 0,Promise,function(){return rS(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 nS=Zu,ch=Qu.A,QL=Qu.k,gh=Ee(nn()),ja=class{parser;result={};constructor(){this.parser=Ot.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(){if(!document.body)return;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{}}},Bi=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"}},dh=Ee(Tr()),ki=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))}},Wa=class{loadedFonts=[];async loadAllFonts(e){e.elems?.forEach(t=>{t instanceof vr&&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)})}},Ga=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"}},Ya=Ee(nn()),Xr=class Wh{static INSTANCE=new Wh;topics={};constructor(){}static get(){return this.INSTANCE}broadcast(t,r){this.topics[t]||(this.topics[t]=new Ct),this.topics[t].next(r)}subscriber(t){return this.topics[t]||(this.topics[t]=new Ct),this.topics[t].asObservable()}},Ge=class Ur{static DEFAULT_SELECTOR="cart-drawer";static _instance;inShadow=!1;cartDrawerElement;cartDrawerShadowElement;configWebsite=Pe.get().website??{};currentState=!1;drawerSubject=new Ro({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=[Ur.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 Ur._instance||(Ur._instance=new Ur),Ur._instance}static forceUpdate(){Ur._instance=new Ur}isOpen(){let t=this.inShadow?this.isPresent():this.isVisible();return Ya.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()===Ur.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(window.MinimogTheme?.Cart?.renderNewCart)window.MinimogTheme.Cart.renderNewCart();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():window.sideCart?.updateCart?window.sideCart.updateCart():window.SLIDECART_UPDATE?(window.SLIDECART_UPDATE(),window.SLIDECART_OPEN?.()):(b.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&&Xr.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(!oo())return;let t=this.selector||this.cartSelector;if(this.cartDrawerElement=await mi(t),!this.cartDrawerElement){Ya.default.warn("Max attempts exhausted to find cart drawer");return}Ya.default.log("Found",this.cartDrawerElement,`from selector: ${t}`),this.createMutationObservers()}async findCartDrawerWithShadow(){if(!this.shadowParentElementSelector)return;let t=(await mi(this.shadowParentElementSelector))?.shadowRoot;t?.mode==="open"&&(this.cartDrawerShadowElement=t,this.createMutationObservers())}isVisible(){if(!this.cartDrawerElement)return!1;if(this.cartDrawerElement.tagName.toLowerCase()===Ur.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,g=this.cartDrawerElement.offsetWidth>0||this.cartDrawerElement.offsetHeight>0||this.cartDrawerElement.getClientRects().length>0,h=c.transform.match(/matrix\(([^)]+)\)/),v=0,E=0;if(h){let k=h[1].split(", ").map(parseFloat);v=k[4],E=k[5]}let y=v+t.left>n||v+t.right<0||E+t.top>r||E+t.bottom<0,_=Math.max(0,Math.min(t.right,n)-Math.max(t.left,0)),x=Math.max(0,Math.min(t.bottom,r)-Math.max(t.top,0)),P=_*x,M=t.width*t.height,L=M>0&&P/M>=.1;return(o||!y)&&u&&d&&g&&L}createMutationObservers(){!this.cartDrawerElement&&!this.cartDrawerShadowElement||(rd(this.cartDrawerElement,()=>{this.initialize()}),this.watchForCartToggle())}watchForCartToggle(){let t=this.cartDrawerElement||this.cartDrawerShadowElement,r=new Ct;this.mutationObserver?.disconnect(),this.mutationObserver=new MutationObserver(()=>{r.next()}),this.mutationObserver.observe(t,{attributes:!0,subtree:!0,childList:this.inShadow}),r.pipe(nr(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 ue.getCurrent().getNormalisedCart(!0)).itemCount,r=document.querySelector(".cart-link__bubble");r&&(r.innerText=t+"")}},Pr=Ee(Tr()),uh=Ee(lh()),Mn=class{static _flags={};static getFlags(){return this._flags}static setFlags(e){this._flags=e??{}}static isECommerceApp(){return oo()}},iS=(0,uh.default)(fetch),oS={retryDelay:N.API_CALL_RETRY_DELAY,retryOn:(e,t,r)=>e>=N.API_CALL_MAX_ATTEMPTS?!1:!!(t!==null||r?.status&&r?.status>=500)},dt=class qh{static INSTANCE;apiToken="";firstSeen="";constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new qh),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(!Mn.isECommerceApp()&&!Mn.getFlags().allowEvents)return b.log(`Rejecting ${t} ${r} as this is not e-commerce app`),Promise.reject();r.startsWith("http")||(r=ut.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 Re.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({},oS),r),i=await iS(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),ut.debug&&t.set("cooee-sdk-debug",String(1)),t}},sS=`
|
|
39
39
|
mutation cartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!]) {
|
|
40
40
|
cartDiscountCodesUpdate(cartId: $cartId, discountCodes: $discountCodes) {
|
|
41
41
|
cart {
|
|
@@ -60,11 +60,11 @@ mutation cartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!]) {
|
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
|
-
`,Jr=class{async addToCart(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=sn("cart/add.js"),i={items:r},s=Ge.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`),jr("Product added to your cart"),c.json()}catch(c){b.error("Failed to add product in cart",c)}}async updateLineItem(e,t){if(!ph.JSUtils.hasKeys(t)){b.warn("No update fields provided");return}let r=sn("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"}});if(s.status===200||s.status===302){let o=await s.json();b.log(`Updated ${e}`),ue.getCurrent().update(o)}}catch(s){b.error("Failed to update item in cart",s,e)}}async copyDiscountCode(e){if(e)try{await navigator.clipboard.writeText(e),b.log(`Code-${e} copied`),jr("Discount code copied")}catch(t){b.error("Failed to copy code",t)}}goToItem(e){if(!e?.link)return;let t=Af(e.link);t&&(location.pathname=ei()+"products/"+t)}async upgradeToSubscription(e,t){if(!e){b.warn("Trying to upgrade to subscription with no item");return}let r=await ue.getCurrent().getNormalisedCart(),n=e.selectedOrFirstVariant.value,i=r.items.findIndex(d=>d.vID===n.mID),s=n.selectedSellingPlan.value,o=sn("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`),jr("Line item updated");let g=await d.json();return ue.getCurrent().update(g),g}}catch(d){b.error("Failed to update subscription for item in cart",d)}}async createNewCart(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 Xs(),c=new Headers;c.append("Content-Type","application/json"),c.append("X-Shopify-Storefront-Access-Token",n);let u=JSON.stringify({query:aS,variables:{input:{lines:s,discountCodes:i,attributes:o}}});return(await dt.getInstance().request(N.GRAPHQL_API_PATH,{method:"POST",headers:c,body:u})).data?.cartCreate?.cart?.checkoutUrl}async process(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.goToItem(r[0]);else if(i.at===102)r?.length&&await this.addToCart(r,n);else if(i.at===103)await this.copyDiscountCode(n.discount.code);else if(i.at===105)Ge.get().open();else if(i.at===104){let s=e.collections;if(!s?.length)return;location.pathname=ei()+"collections/"+s[0].handle}}t.applyDiscount&&n.discount?.code&&wr.navigate(n.discount.code,n.redirectBehaviour)}getVIDAndQuantity(e){let t,r;if(e instanceof pt)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}}},qa=class{apiService;action;triggerContext;constructor(e,t){this.action=e,this.apiService=me.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;Ks(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}),jr("Coupon applied on cart"),Ga.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 Jr().process(t);let r={action:this.containsCTA()?N.CAMPAIGN_CLICKED_ACTIVITY:N.CAMPAIGN_CLOSED_ACTIVITY};document.dispatchEvent(new CustomEvent(N.POPUP_ACTIVITY_EVENT,{detail:r}))}},Ui=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}},Kt=class{renderer=Ot.get();parentHTMLEl;inappElement;inappHTMLEl;triggerContext;stylesConverter;scalingFactor;constructor(e,t,r){this.parentHTMLEl=e,this.inappElement=t,this.triggerContext=r,this.stylesConverter=new Ui(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=ee(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 qa(e,this.triggerContext).execute()}),this.renderer.setStyle(this.inappHTMLEl,"cursor","pointer"))}getBackgroundStyles(){return this.stylesConverter.getBackgroundStyles(this.inappElement.bg)}},br=class extends Kt{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?di[e]?.toLowerCase():this.inappElement.typography.alignment;t||(t="start"),this.renderer.setStyle(this.inappHTMLEl,"text-align",t)}},Mo=class extends br{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()}},Bo=class extends Kt{constructor(e,t,r){super(e,t,r),this.inappHTMLEl=this.renderer.createElement("div"),this.insertElement()}render(){this.processCommonBlocks()}},kn=class extends Kt{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()}},ko=class Kh extends Kt{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",Kh.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(){}},Ka=class extends Kt{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}},Fi=class extends br{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)}},Xa=class zh extends Fi{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(zh.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()})}},Ja=class Yh extends Fi{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(Yh.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()})}},Qa=class Hn extends br{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=ee(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(Hn.DAYS)),t.hour&&this.elements.push(this.getChild(Hn.HOURS)),t.minute&&this.elements.push(this.getChild(Hn.MINUTES)),t.second&&this.elements.push(this.getChild(Hn.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-${Hn.DAYS}`?n.innerText=String(r.days).padStart(2,"0"):n.id===`lc-${Hn.HOURS}`?n.innerText=String(r.hours).padStart(2,"0"):n.id===`lc-${Hn.MINUTES}`?n.innerText=String(r.minutes).padStart(2,"0"):n.id===`lc-${Hn.SECONDS}`&&(n.innerText=String(r.seconds).padStart(2,"0"))})});this.triggerContext.intervals.push(t)}},Za=class extends br{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 yr(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}},ec=class extends kn{constructor(e,t,r){super(e,t,r)}render(){super.render(),this.inappHTMLEl.setAttribute("id",`coo-${this.inappElement.type}`)}},Hi=class io{static ACTIVE_TRIGGER_DATA;renderer=Ot.get();safeHTTP;parent;rootContainer;containerHTMLElement;ian;triggerContext;resizeListener;cartDrawerToggleSubscription;constructor(t){this.safeHTTP=me.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 Tt(t))}async renderEngagement(t){if(this.triggerContext=new ki(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(!Ge.get().isOpen()||!this.renderer.isMobile()){this.startRenderingOnce();return}this.cartDrawerToggleSubscription=Ge.get().onToggle().subscribe(({open:t})=>{!t&&this.startRenderingOnce()})}startRenderingOnce(){if(!this.shouldSkipCampaign()){io.ACTIVE_TRIGGER_DATA=this.triggerContext.triggerData;try{this.startRendering()}catch(t){Re.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&&io.ACTIVE_TRIGGER_DATA){let n={triggerShown:new Kr(io.ACTIVE_TRIGGER_DATA??{})};return this.skipTrigger(t,n),!0}if(ce.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 ko(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 ve(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 ve(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 vi?new Xa(t,r,n).render():r instanceof Ei?new Ja(t,r,n).render():r instanceof Vr?new Mo(t,r,n).render():r instanceof _i?new ec(t,r,n).render():r instanceof Or?new kn(t,r,n).render():r instanceof _n?new Bo(t,r,n).render():r instanceof gi?new Qa(t,r,n).render():r instanceof yi?new Za(t,r,n).render():b.error("Unsupported element type- "+r.type)}renderContainer(t){let r=this.ian?.cont;r&&(this.containerHTMLElement=new Ka(this.rootContainer,r,t).render().getHTMLElement(),new Wa().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),io.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(){Ot.get().removeInApp(this.triggerContext)}skipTrigger(t,r){let n=new ve(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"})}},fh=Ee(Tr()),mh=Ee(ni()),tc=class{triggerData;safeHttpService=me.getInstance();render(e){e.contentSource===fh.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 ve(N.EVENT_TRIGGER_DISPLAYED,{form:{id:t.formId}},this.triggerData));break;case"stepSubmit":{let r=this.getFormDetails(t);this.safeHttpService.sendEvent(new ve(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 ve(N.EVENT_TRIGGER_CLOSED,{form:{id:t.formId}},this.triggerData));break}}getFormDetails(e){let t={id:e.formId},r=e.metaData;if(mh.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}},rc=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"}},$i=class{static async refreshItems(e){if(e.isCartEmbed()&&!e.isSubscriptionUpsell()){let i=(await ue.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 ve(N.EVENT_CAMPAIGN_FAILED,{reason:i,currency:e.currency},e);throw me.getInstance().sendEvent(s),new Error(i)}if(e.isCartRecovery()){let i=ue.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 Dt(o);d.name=u.title;let g=new yr(c);g.name=u.variant_title,g.price.d=u.discounted_price/100,d.variants=[g],s.push(d)}return s}return n}static async updatedItem(e,t){let r=e,n=Re.getInstance(),i=re.get(dt),s,o=`/products/${r.slug}.js`;try{s=await i.request(o)}catch(u){return b.error(`Failed to fetch ${o}`,u),u instanceof Response?n.captureMessage(`Shopify product fetch failed ${u.status}`,"error",{item:r,path:o},{"engagement.id":t}):n.captureException(u,{item:r,path:o},{"engagement.id":t}),null}if(!s)return b.error("Item not found after AJAX call for:",r),null;r.name=s.title,r.tags=s.tags;let c=r.selectedOrFirstVariant.value;return r.vars.map(u=>{let d=s.variants.find(g=>g.id===+u.mID);u.name=d.title,u.isAvailable=d.available,u.price.d=d.price?d.price/100:d.price,u.price.effective=u.price.d,u.price.cmp=d.compare_at_price?d.compare_at_price/100:d.compare_at_price,+c.mID===d.id&&(c.effectivePrice.value=u.price.d)}),r}},Qr=class Xh{static INSTANCE;httpService=re.get(dt);sentryService=re.get(Re);sessionManager=re.get(Ye);runtime=ce.get();constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Xh),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}`),Xt.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),Xt.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=Sr.parseFromCurrent()}async addShopifyContext(t){try{t.cart=await ue.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 Tt(r.triggerData);n.occurred=t.occurred;let i;try{i=await $i.refreshItems(n)}catch(s){b.error("Failed to refresh the products",s);return}if(n.items=i,n.contentSource===dh.EngagementContentSource.KLAVIYO){new tc().render(n);return}new Hi().renderEngagement(n).catch(s=>{b.error("Failed to render popup",s),this.sentryService.captureException(s,{event:t,triggerData:n})})}utiliseIntentIfCalculated(t){t.intent&&(Bi.trackIntent(t.intent),rc.trackIntent(t),Xt.prepend(`Intent is <strong>${Sn[t.intent]}</strong>`))}addShopifyAttributes(){ue.getCurrent().addCooeeAttributes().catch(t=>{b.error("Fail to add attributes in cart",t)})}},me=class Jh{static INSTANCE;httpApiService=dt.getInstance();eventAPIService=Qr.getInstance();constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Jh),this.INSTANCE}sendEvent(t){b.debug(`Waiting for auth to send event ${t.name}`),Ye.replaySubject.subscribe(async()=>{this.eventAPIService.sendSilently(t)})}updateProfile(t){Ye.replaySubject.subscribe(()=>{this.httpApiService.updateUserData(t??{})})}trackOrder(t){Ye.replaySubject.subscribe(()=>{this.httpApiService.trackOrder(t)})}updateDeviceProps(t){Ye.replaySubject.subscribe(()=>{this.httpApiService.updateDeviceProps({props:t})})}generateDiscount(t){return this.httpApiService.generateDiscount(t)}},Xt=class{static isOn=!1;static element;static watch(){let e=Ac();(e==="1"||e==="on")&&me.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"),fi(()=>{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}},Uo=class extends Hr{static storeName="app";static{this.storage=Zn(this.storeName)}},nc=class{static processConfiguration(){let e=Pe.get();!e.gaMeasurementID||!e.gaEnabled||this.sendClientID()}static async sendClientID(){let e=await this.getClientID();e&&me.getInstance().updateDeviceProps({gaClientID:e})}static async getClientID(){let e=await xe.get(oe.GA_CLIENT_ID),t=await this.getClientIDViaGTag();if(e!==t)return await xe.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)})})}},ic=class Qh{static INSTANCE;constructor(){this.init()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Qh),this.INSTANCE}init(){Uo.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);Uo.set(oe.APP_CONFIG,r).catch(n=>b.error(n)),nc.processConfiguration(),r.website&&(st.injectRawScript(r.website.commonJS),st.injectRawCSS(r.website.commonCSS)),Ge.get().onToggle().subscribe(async({open:n})=>{b.info("Cart drawer is now",n?"open":"closed"),n&&(re.get(ir).loadOrRenderWidgetsAfterCartChange(),await this.trackViewCartEvent())})}updateGlobalConfig(t){let r=we.globalRef.config.update(t);return Ge.forceUpdate(),b.debug("App configurations",r),r}async trackViewCartEvent(){let t=await ue.getCurrent().getNormalisedCart(),r={value:t.amount,currency:t.currency},n={items:t.items,amount:r,drawer:!0};me.getInstance().sendEvent(new ve(N.EVENT_VIEW_CART,n))}},hh=Ee(Xu()),oc=class Dc{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 hh.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 Dc(r);if(this.GOOGLE_REQUIRED_FIELDS.every(n=>Array.from(t.getParams().keys()).includes(n)))return r={source:"GOOGLE"},new Dc(r)}},Bn=class Zh{static INSTANCE;httpAPIService=dt.getInstance();coreService=ic.getInstance();sentryService=Re.getInstance();sdkToken="";userID="";deviceID="";appID="";shopifyShop="";constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Zh),this.INSTANCE}init(t){this.appID=t.appID,this.shopifyShop=t.shopifyShop}async storeAndPopulateAuthData(t){t&&(t.userID&&(this.userID=t.userID,await xe.set(oe.ID,t.userID)),t.deviceID&&(this.deviceID=t.deviceID,await xe.set(oe.DEVICE_ID,t.deviceID)),t.sdkToken&&(this.sdkToken=t.sdkToken,await xe.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 xe.get(oe.SDK_TOKEN),!this.sdkToken){b.warn("No SDK token found in local storage");return}this.userID=await xe.get(oe.ID),this.deviceID=await xe.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),Bi.trackDeviceID(this.deviceID),Xt.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 Va().get();r.host=location.origin;try{(await ch())?.isPrivate&&(r.private=!0)}catch(i){gh.default.error("Unable to detect private/incognito window",i)}let n=await xe.get(oe.DEVICE_ID);return n||(n=new et().toHexString(),await xe.set(oe.DEVICE_ID,n)),ee(w({deviceID:n,deviceProps:r,appID:this.appID,shopifyShop:this.shopifyShop},t),{sdk:N.SDK,page:Sr.parseFromCurrent(),ad:oc.getAdParams(),occurred:this.getSessionStartTime(ce.get().jsLoadTime),currentItem:ce.get().getCurrentItem(),cart:await ue.getCurrent().getNormalisedCart(),properties:{}})}async populateFirstSeen(){let t=await xe.get(oe.FIRST_SEEN),r=t?new Date(t):new Date;t||await xe.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}},Ye=class Xo{static replaySubject=new No(1);static INSTANCE;sentryService=re.get(Re);lock=new ti;constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Xo),this.INSTANCE}init(t){if(b.debug("Initialising SDK",t),ah(navigator.userAgent)){b.info("This seems to be a bot. Disabling SDK");return}Bn.getInstance().init(t),Xo.INSTANCE.checkForNewSession(!0).then(async()=>{Xo.replaySubject.next(!0),Xo.replaySubject.complete()}).catch(r=>{b.error("Unable to initiate session",r)})}getCurrentSessionID(){return tt.set(oe.SESSION_LAST_USED_TIME,new Date().getTime()),tt.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 tt.set(oe.SESSION_SYNCED,!0)}this.lock.release()}async startNewSession(){b.debug("Starting new session"),await tt.clear(),b.debug("Cleared SessionStorage before starting new session");let t=new Date,r=new et().toHexString();b.debug("New session ID to be used",r);let n=await xe.get(oe.SESSION_NUMBER,0)+1;Xt.prepend(`New Session ID: <strong>${r}</strong> & number: ${n}`),await Promise.all([xe.set(oe.SESSION_NUMBER,n),tt.set(oe.ID,r),tt.set(oe.SESSION_LAST_USED_TIME,t.getTime()),tt.set(oe.SESSION_LANDING_PAGE,Sr.parseFromCurrent())])}getLandingPage(){return tt.get(oe.SESSION_LANDING_PAGE,{})}getCurrentSessionNumber(){return xe.get(oe.SESSION_NUMBER,1)}async isNewSessionRequired(){if(!await tt.get(oe.ID))return!0;let t=await tt.get(oe.SESSION_LAST_USED_TIME,0);return t?(new Date().getTime()-t)/1e3>N.IDLE_TIME_IN_SECONDS:!0}async notSynced(){return!await tt.get(oe.SESSION_SYNCED,!1)}},qo=Ee(Tr()),wh=Ee(Pc()),bh=Ee(ni()),Ih=Ee(nn()),yh=Ee(es()),vh=Ee(nn()),Zr=class{constructor(e){this.triggerContext=e}safeHTTP=me.getInstance();eventAPIService=Qr.getInstance();async execute(e){let t=ce.get().getCurrentItem(),r=e.clickAction;if(!r)return;let n=e.item,i=this.triggerContext,s=new Jr,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="",g=[],h=[];if(n?h=[n.toEmbed()]:e.embeddedItem&&(h=[e.embeddedItem]),r.at===108){let _=i.selectedItems;if(h=e.embeddedItems??_.map(x=>x.toEmbed()),i.shouldGiveFBTDiscount||e.embeddedItems?.length){let x;e.embeddedItems?x=e.embeddedItems.map(M=>({itemMID:M.mID,mID:M.vID,quantity:M.quantity})):x=_.map(M=>({itemMID:M.mID,mID:M.selectedOrFirstVariant.value.mID}));let P=i.triggerData.bundleFrom;i.triggerData.isBundleOnCartDrawer()&&P&&(x.push({itemMID:P.mID,mID:P.selectedOrFirstVariant.value.mID,isPrimary:!0}),h.unshift(P.toEmbed())),u.selectedVariants=x,i.triggerData.isBundleOnPDP()&&u.selectedVariants.forEach(M=>{M.mID===t.vID&&(M.isPrimary=!0)})}else u=void 0;g=e.embeddedItems??_}else if(r.at===107){let _=await ue.getCurrent().getNormalisedCart();h=_.items,u.selectedVariants=_.items.map(x=>({itemMID:x.mID,mID:x.vID}))}else if(r.at===102)g=n?[n]:[e.embeddedItem];else if(r.at===101)d=n?ei()+"products/"+n.slug:e.embeddedItem?.link;else if(r.at===4){let _=Ks(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(),Ge.get().refreshUI(_)}else if(r.at===104){let _=this.triggerContext.triggerData.collections?.[0];_&&(d="collections/"+_.handle)}if(this.sendTriggerClicked(h,{from:"button"},e.video),b.debug({redirectPath:d,redirectBehaviour:o,hasDiscount:c}),!c&&d){location.href=d;return}let v,E=!1;try{v=await this.getOrGenerateDiscountCode(u),b.debug("Discount code (if any) to apply",v)}catch(_){if(!this.triggerContext.triggerData.isBYOB()){vh.default.error("Unable to get a discount code",_);return}}if(v&&r.at===103)await s.copyDiscountCode(v);else if(r.at===110){let _=await s.createNewCart(t,v,i.triggerData);_&&(location.href=_);return}try{v&&await wr.applyWithStorefront([v])}catch(_){b.error(_),E=!0}let y;if(g?.length&&(y=await s.addToCart(g,i.triggerData)),E&&v){wr.navigate(v,o,d);return}if(d){location.href=d;return}wr.navigateWithoutDiscount(o,y)}sendTriggerClicked(e,t,r){let n=new ve(N.EVENT_TRIGGER_CLICKED,t,this.triggerContext.triggerData);n.items=e,r?.id&&(n.videos=[r.id]),this.eventAPIService.sendSilently(n)}async getOrGenerateDiscountCode(e){let t=this.triggerContext.triggerData.discount;if(!t?.type)return;let r="";if(t.type===yh.DiscountType.STATIC){if(!t.code)throw Re.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 jr("Failed to generate a discount code"),b.error("Error generating discount code",t,e),Re.getInstance().captureMessage("Failed to generate discount code","error",{discountData:JSON.stringify(e),triggerContext:this.triggerContext,error:t}),t}}},Ne=class extends ar{stylesConverter=new Ui(1);renderer=Ot.get();mediaStyle={};deviceTypeKey;clickExecutor;componentWillMount(){this.deviceTypeKey=this.renderer.isMobile()?"sm":"lg",this.clickExecutor=new Zr(this.props.triggerContext)}getCompiledStyles(){return this.putStyleAccordingToDevice(),w(w(ee(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(),!t.clickAction&&(t.clickAction=this.props.element.clc),await this.clickExecutor.execute(t)}},cS=0,QF=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:--cS,__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 kt=class extends Ne{componentDidMount(){this.setState(()=>({text:this.props.element.text})),at(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 it(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 Ze;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"}}},Un=class extends kt{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 ee(w({},super.getComponentStyles()),{cursor:"pointer"})}},rp=class extends ar{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}},Fo=class extends kt{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))})}},Sh=Ee(es()),Ho=class extends Ne{componentDidMount(){at(()=>{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 Ze;return e.textAlign=t.alignment,e.justifyContent=t.alignment,e}getComponentStyles(){return ee(w({},this.getTypoStyles()),{display:"flex"})}},Eh=Ee(Tr()),Lr=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===Eh.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}},Mr=class extends Ne{render(){if(!(this.props.element.hide||!this.matchWhenCondition(this.props.element.when)))return $("div",{style:this.getCompiledStyles(),class:"lc-flexbox",children:$(en,{elements:this.props.elements,element:this.props.element,triggerContext:this.props.triggerContext})})}getComponentStyles(){let e=this.mediaStyle.flex??new Si,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}},$o=class extends Mr{render(){if(!(this.props.element.hide||!this.matchWhenCondition(this.props.element.when)))return $("div",{style:this.getCompiledStyles(),class:"lc-flexbox",children:$(ji,{elements:this.props.elements,element:this.props.element,triggerContext:this.props.triggerContext,item:this.props.item,noLinks:this.props.noLinks})})}},jo=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(){at(()=>{this.setState(()=>({disabled:this.props.triggerContext.triggerData.isBundle()?!this.props.item.selected.value:!1}))})}getTypoStyles(){let e={},t=this.mediaStyle.typo??new Ze;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}},_h=Ee(Nc()),Vo=class extends Ne{colorRegex=new RegExp('fill="#[a-zA-Z0-9]+"');constructor(){super(),_t.escape=_h.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"}}},Wo=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(){at(()=>{this.setState(()=>({disabled:this.props.triggerContext.triggerData.isBundle()?!this.props.item.selected.value:!1}))})}getTypoStyles(){let e={},t=this.mediaStyle.typo??new Ze;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)}},ji=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 $($o,{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()?$(Ho,{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=$(Lr,{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:$(Wo,{element:t,item:this.props.item,triggerContext:this.props.triggerContext})}return e.t===16?$(jo,{element:e,selectedVariant:this.props.item.selectedOrFirstVariant.value,item:this.props.item,triggerContext:this.props.triggerContext}):e.t===19?$(Vo,{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}):$(en,{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=$(kt,{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"}))}},Fn=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 Yr(JSON.parse(t)),!(this.productElement.hide||!this.matchWhenCondition(this.productElement.when)))return $("div",{style:w({},this.getCompiledStyles()),class:"lc-single-product",children:$(ji,{element:this.productElement,elements:this.productElement.elems,triggerContext:this.props.triggerContext,item:this.props.item,noLinks:this.productElement.noLinks})})}getComponentStyles(){return{flexShrink:0}}getProductData(){if(!this.props.item)return{};let e=this.props.item,t=e.selectedOrFirstVariant.value,r=e.getTemplateVariables();r.product.quantity=this.props.triggerContext.hasManipulatedProductQuantity()?this.props.triggerContext.getManipulatedQuantity(this.props.item.quantity):this.props.item.quantity;let n=this.props.triggerContext.triggerData.discount.type===Sh.DiscountType.BXGY;return!t.hasEffectivePrice()&&n&&(r.product.effective_price=Lt(t.effectivePrice.value),r.product.price=""),r.variant.quantity=this.props.triggerContext.hasManipulatedProductQuantity()?this.props.triggerContext.getManipulatedQuantity(t.quantity):t.quantity,{product:r.product,variant:r.variant,svg:{color:()=>"{{svg.color}}",size:()=>"{{svg.size}}"}}}};function sc(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
|
+
`,Jr=class{async addToCart(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=sn("cart/add.js"),i={items:r},s=Ge.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`),Vr("Product added to your cart"),c.json()}catch(c){b.error("Failed to add product in cart",c)}}async updateLineItem(e,t){if(!ph.JSUtils.hasKeys(t)){b.warn("No update fields provided");return}let r=sn("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"}});if(s.status===200||s.status===302){let o=await s.json();b.log(`Updated ${e}`),ue.getCurrent().update(o)}}catch(s){b.error("Failed to update item in cart",s,e)}}async copyDiscountCode(e){if(e)try{await navigator.clipboard.writeText(e),b.log(`Code-${e} copied`),Vr("Discount code copied")}catch(t){b.error("Failed to copy code",t)}}goToItem(e){if(!e?.link)return;let t=Af(e.link);t&&(location.pathname=ei()+"products/"+t)}async upgradeToSubscription(e,t){if(!e){b.warn("Trying to upgrade to subscription with no item");return}let r=await ue.getCurrent().getNormalisedCart(),n=e.selectedOrFirstVariant.value,i=r.items.findIndex(d=>d.vID===n.mID),s=n.selectedSellingPlan.value,o=sn("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`),Vr("Line item updated");let g=await d.json();return ue.getCurrent().update(g),g}}catch(d){b.error("Failed to update subscription for item in cart",d)}}async createNewCart(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 Xs(),c=new Headers;c.append("Content-Type","application/json"),c.append("X-Shopify-Storefront-Access-Token",n);let u=JSON.stringify({query:aS,variables:{input:{lines:s,discountCodes:i,attributes:o}}});return(await dt.getInstance().request(N.GRAPHQL_API_PATH,{method:"POST",headers:c,body:u})).data?.cartCreate?.cart?.checkoutUrl}async process(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.goToItem(r[0]);else if(i.at===102)r?.length&&await this.addToCart(r,n);else if(i.at===103)await this.copyDiscountCode(n.discount.code);else if(i.at===105)Ge.get().open();else if(i.at===104){let s=e.collections;if(!s?.length)return;location.pathname=ei()+"collections/"+s[0].handle}}t.applyDiscount&&n.discount?.code&&wr.navigate(n.discount.code,n.redirectBehaviour)}getVIDAndQuantity(e){let t,r;if(e instanceof pt)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}}},qa=class{apiService;action;triggerContext;constructor(e,t){this.action=e,this.apiService=me.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;Ks(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}),Vr("Coupon applied on cart"),Ga.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 Jr().process(t);let r={action:this.containsCTA()?N.CAMPAIGN_CLICKED_ACTIVITY:N.CAMPAIGN_CLOSED_ACTIVITY};document.dispatchEvent(new CustomEvent(N.POPUP_ACTIVITY_EVENT,{detail:r}))}},Ui=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}},Kt=class{renderer=Ot.get();parentHTMLEl;inappElement;inappHTMLEl;triggerContext;stylesConverter;scalingFactor;constructor(e,t,r){this.parentHTMLEl=e,this.inappElement=t,this.triggerContext=r,this.stylesConverter=new Ui(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=ee(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 qa(e,this.triggerContext).execute()}),this.renderer.setStyle(this.inappHTMLEl,"cursor","pointer"))}getBackgroundStyles(){return this.stylesConverter.getBackgroundStyles(this.inappElement.bg)}},br=class extends Kt{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?di[e]?.toLowerCase():this.inappElement.typography.alignment;t||(t="start"),this.renderer.setStyle(this.inappHTMLEl,"text-align",t)}},Mo=class extends br{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()}},Bo=class extends Kt{constructor(e,t,r){super(e,t,r),this.inappHTMLEl=this.renderer.createElement("div"),this.insertElement()}render(){this.processCommonBlocks()}},kn=class extends Kt{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()}},ko=class Kh extends Kt{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",Kh.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(){}},Ka=class extends Kt{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}},Fi=class extends br{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)}},Xa=class zh extends Fi{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(zh.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()})}},Ja=class Yh extends Fi{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(Yh.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()})}},Qa=class Vn extends br{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=ee(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(Vn.DAYS)),t.hour&&this.elements.push(this.getChild(Vn.HOURS)),t.minute&&this.elements.push(this.getChild(Vn.MINUTES)),t.second&&this.elements.push(this.getChild(Vn.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-${Vn.DAYS}`?n.innerText=String(r.days).padStart(2,"0"):n.id===`lc-${Vn.HOURS}`?n.innerText=String(r.hours).padStart(2,"0"):n.id===`lc-${Vn.MINUTES}`?n.innerText=String(r.minutes).padStart(2,"0"):n.id===`lc-${Vn.SECONDS}`&&(n.innerText=String(r.seconds).padStart(2,"0"))})});this.triggerContext.intervals.push(t)}},Za=class extends br{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 yr(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}},ec=class extends kn{constructor(e,t,r){super(e,t,r)}render(){super.render(),this.inappHTMLEl.setAttribute("id",`coo-${this.inappElement.type}`)}},Hi=class io{static ACTIVE_TRIGGER_DATA;renderer=Ot.get();safeHTTP;parent;rootContainer;containerHTMLElement;ian;triggerContext;resizeListener;cartDrawerToggleSubscription;constructor(t){this.safeHTTP=me.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 Tt(t))}async renderEngagement(t){if(this.triggerContext=new ki(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(!Ge.get().isOpen()||!this.renderer.isMobile()){this.startRenderingOnce();return}this.cartDrawerToggleSubscription=Ge.get().onToggle().subscribe(({open:t})=>{!t&&this.startRenderingOnce()})}startRenderingOnce(){if(!this.shouldSkipCampaign()){io.ACTIVE_TRIGGER_DATA=this.triggerContext.triggerData;try{this.startRendering()}catch(t){Re.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&&io.ACTIVE_TRIGGER_DATA){let n={triggerShown:new Kr(io.ACTIVE_TRIGGER_DATA??{})};return this.skipTrigger(t,n),!0}if(ce.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 ko(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 ve(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 ve(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 vi?new Xa(t,r,n).render():r instanceof Ei?new Ja(t,r,n).render():r instanceof jr?new Mo(t,r,n).render():r instanceof _i?new ec(t,r,n).render():r instanceof Or?new kn(t,r,n).render():r instanceof _n?new Bo(t,r,n).render():r instanceof gi?new Qa(t,r,n).render():r instanceof yi?new Za(t,r,n).render():b.error("Unsupported element type- "+r.type)}renderContainer(t){let r=this.ian?.cont;r&&(this.containerHTMLElement=new Ka(this.rootContainer,r,t).render().getHTMLElement(),new Wa().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),io.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(){Ot.get().removeInApp(this.triggerContext)}skipTrigger(t,r){let n=new ve(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"})}},fh=Ee(Tr()),mh=Ee(ni()),tc=class{triggerData;safeHttpService=me.getInstance();render(e){e.contentSource===fh.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 ve(N.EVENT_TRIGGER_DISPLAYED,{form:{id:t.formId}},this.triggerData));break;case"stepSubmit":{let r=this.getFormDetails(t);this.safeHttpService.sendEvent(new ve(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 ve(N.EVENT_TRIGGER_CLOSED,{form:{id:t.formId}},this.triggerData));break}}getFormDetails(e){let t={id:e.formId},r=e.metaData;if(mh.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}},rc=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"}},$i=class{static async refreshItems(e){if(e.isCartEmbed()&&!e.isSubscriptionUpsell()){let i=(await ue.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 ve(N.EVENT_CAMPAIGN_FAILED,{reason:i,currency:e.currency},e);throw me.getInstance().sendEvent(s),new Error(i)}if(e.isCartRecovery()){let i=ue.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 Dt(o);d.name=u.title;let g=new yr(c);g.name=u.variant_title,g.price.d=u.discounted_price/100,d.variants=[g],s.push(d)}return s}return n}static async updatedItem(e,t){let r=e,n=Re.getInstance(),i=re.get(dt),s,o=`/products/${r.slug}.js`;try{s=await i.request(o)}catch(u){return b.error(`Failed to fetch ${o}`,u),u instanceof Response?n.captureMessage(`Shopify product fetch failed ${u.status}`,"error",{item:r,path:o},{"engagement.id":t}):n.captureException(u,{item:r,path:o},{"engagement.id":t}),null}if(!s)return b.error("Item not found after AJAX call for:",r),null;r.name=s.title,r.tags=s.tags;let c=r.selectedOrFirstVariant.value;return r.vars.map(u=>{let d=s.variants.find(g=>g.id===+u.mID);u.name=d.title,u.isAvailable=d.available,u.price.d=d.price?d.price/100:d.price,u.price.effective=u.price.d,u.price.cmp=d.compare_at_price?d.compare_at_price/100:d.compare_at_price,+c.mID===d.id&&(c.effectivePrice.value=u.price.d)}),r}},Qr=class Xh{static INSTANCE;httpService=re.get(dt);sentryService=re.get(Re);sessionManager=re.get(Ye);runtime=ce.get();constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Xh),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}`),Xt.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),Xt.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=Sr.parseFromCurrent()}async addShopifyContext(t){try{t.cart=await ue.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 Tt(r.triggerData);n.occurred=t.occurred;let i;try{i=await $i.refreshItems(n)}catch(s){b.error("Failed to refresh the products",s);return}if(n.items=i,n.contentSource===dh.EngagementContentSource.KLAVIYO){new tc().render(n);return}new Hi().renderEngagement(n).catch(s=>{b.error("Failed to render popup",s),this.sentryService.captureException(s,{event:t,triggerData:n})})}utiliseIntentIfCalculated(t){t.intent&&(Bi.trackIntent(t.intent),rc.trackIntent(t),Xt.prepend(`Intent is <strong>${Sn[t.intent]}</strong>`))}addShopifyAttributes(){ue.getCurrent().addCooeeAttributes().catch(t=>{b.error("Fail to add attributes in cart",t)})}},me=class Jh{static INSTANCE;httpApiService=dt.getInstance();eventAPIService=Qr.getInstance();constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Jh),this.INSTANCE}sendEvent(t){b.debug(`Waiting for auth to send event ${t.name}`),Ye.replaySubject.subscribe(async()=>{this.eventAPIService.sendSilently(t)})}updateProfile(t){Ye.replaySubject.subscribe(()=>{this.httpApiService.updateUserData(t??{})})}trackOrder(t){Ye.replaySubject.subscribe(()=>{this.httpApiService.trackOrder(t)})}updateDeviceProps(t){Ye.replaySubject.subscribe(()=>{this.httpApiService.updateDeviceProps({props:t})})}generateDiscount(t){return this.httpApiService.generateDiscount(t)}},Xt=class{static isOn=!1;static element;static watch(){let e=Ac();(e==="1"||e==="on")&&me.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"),fi(()=>{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}},Uo=class extends Hr{static storeName="app";static{this.storage=Zn(this.storeName)}},nc=class{static processConfiguration(){let e=Pe.get();!e.gaMeasurementID||!e.gaEnabled||this.sendClientID()}static async sendClientID(){let e=await this.getClientID();e&&me.getInstance().updateDeviceProps({gaClientID:e})}static async getClientID(){let e=await xe.get(oe.GA_CLIENT_ID),t=await this.getClientIDViaGTag();if(e!==t)return await xe.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)})})}},ic=class Qh{static INSTANCE;constructor(){this.init()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Qh),this.INSTANCE}init(){Uo.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);Uo.set(oe.APP_CONFIG,r).catch(n=>b.error(n)),nc.processConfiguration(),r.website&&(st.injectRawScript(r.website.commonJS),st.injectRawCSS(r.website.commonCSS)),Ge.get().onToggle().subscribe(async({open:n})=>{b.info("Cart drawer is now",n?"open":"closed"),n&&(re.get(ir).loadOrRenderWidgetsAfterCartChange(),await this.trackViewCartEvent())})}updateGlobalConfig(t){let r=we.globalRef.config.update(t);return Ge.forceUpdate(),b.debug("App configurations",r),r}async trackViewCartEvent(){let t=await ue.getCurrent().getNormalisedCart(),r={value:t.amount,currency:t.currency},n={items:t.items,amount:r,drawer:!0};me.getInstance().sendEvent(new ve(N.EVENT_VIEW_CART,n))}},hh=Ee(Xu()),oc=class Dc{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 hh.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 Dc(r);if(this.GOOGLE_REQUIRED_FIELDS.every(n=>Array.from(t.getParams().keys()).includes(n)))return r={source:"GOOGLE"},new Dc(r)}},Bn=class Zh{static INSTANCE;httpAPIService=dt.getInstance();coreService=ic.getInstance();sentryService=Re.getInstance();sdkToken="";userID="";deviceID="";appID="";shopifyShop="";constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Zh),this.INSTANCE}init(t){this.appID=t.appID,this.shopifyShop=t.shopifyShop}async storeAndPopulateAuthData(t){t&&(t.userID&&(this.userID=t.userID,await xe.set(oe.ID,t.userID)),t.deviceID&&(this.deviceID=t.deviceID,await xe.set(oe.DEVICE_ID,t.deviceID)),t.sdkToken&&(this.sdkToken=t.sdkToken,await xe.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 xe.get(oe.SDK_TOKEN),!this.sdkToken){b.warn("No SDK token found in local storage");return}this.userID=await xe.get(oe.ID),this.deviceID=await xe.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),Bi.trackDeviceID(this.deviceID),Xt.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 ja().get();r.host=location.origin;try{(await ch())?.isPrivate&&(r.private=!0)}catch(i){gh.default.error("Unable to detect private/incognito window",i)}let n=await xe.get(oe.DEVICE_ID);return n||(n=new et().toHexString(),await xe.set(oe.DEVICE_ID,n)),ee(w({deviceID:n,deviceProps:r,appID:this.appID,shopifyShop:this.shopifyShop},t),{sdk:N.SDK,page:Sr.parseFromCurrent(),ad:oc.getAdParams(),occurred:this.getSessionStartTime(ce.get().jsLoadTime),currentItem:ce.get().getCurrentItem(),cart:await ue.getCurrent().getNormalisedCart(),properties:{}})}async populateFirstSeen(){let t=await xe.get(oe.FIRST_SEEN),r=t?new Date(t):new Date;t||await xe.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}},Ye=class Xo{static replaySubject=new No(1);static INSTANCE;sentryService=re.get(Re);lock=new ti;constructor(){}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Xo),this.INSTANCE}init(t){if(b.debug("Initialising SDK",t),ah(navigator.userAgent)){b.info("This seems to be a bot. Disabling SDK");return}Bn.getInstance().init(t),Xo.INSTANCE.checkForNewSession(!0).then(async()=>{Xo.replaySubject.next(!0),Xo.replaySubject.complete()}).catch(r=>{b.error("Unable to initiate session",r)})}getCurrentSessionID(){return tt.set(oe.SESSION_LAST_USED_TIME,new Date().getTime()),tt.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 tt.set(oe.SESSION_SYNCED,!0)}this.lock.release()}async startNewSession(){b.debug("Starting new session"),await tt.clear(),b.debug("Cleared SessionStorage before starting new session");let t=new Date,r=new et().toHexString();b.debug("New session ID to be used",r);let n=await xe.get(oe.SESSION_NUMBER,0)+1;Xt.prepend(`New Session ID: <strong>${r}</strong> & number: ${n}`),await Promise.all([xe.set(oe.SESSION_NUMBER,n),tt.set(oe.ID,r),tt.set(oe.SESSION_LAST_USED_TIME,t.getTime()),tt.set(oe.SESSION_LANDING_PAGE,Sr.parseFromCurrent())])}getLandingPage(){return tt.get(oe.SESSION_LANDING_PAGE,{})}getCurrentSessionNumber(){return xe.get(oe.SESSION_NUMBER,1)}async isNewSessionRequired(){if(!await tt.get(oe.ID))return!0;let t=await tt.get(oe.SESSION_LAST_USED_TIME,0);return t?(new Date().getTime()-t)/1e3>N.IDLE_TIME_IN_SECONDS:!0}async notSynced(){return!await tt.get(oe.SESSION_SYNCED,!1)}},qo=Ee(Tr()),wh=Ee(Pc()),bh=Ee(ni()),Ih=Ee(nn()),yh=Ee(es()),vh=Ee(nn()),Zr=class{constructor(e){this.triggerContext=e}safeHTTP=me.getInstance();eventAPIService=Qr.getInstance();async execute(e){let t=ce.get().getCurrentItem(),r=e.clickAction;if(!r)return;let n=e.item,i=this.triggerContext,s=new Jr,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="",g=[],h=[];if(n?h=[n.toEmbed()]:e.embeddedItem&&(h=[e.embeddedItem]),r.at===108){let _=i.selectedItems;if(h=e.embeddedItems??_.map(x=>x.toEmbed()),i.shouldGiveFBTDiscount||e.embeddedItems?.length){let x;e.embeddedItems?x=e.embeddedItems.map(M=>({itemMID:M.mID,mID:M.vID,quantity:M.quantity})):x=_.map(M=>({itemMID:M.mID,mID:M.selectedOrFirstVariant.value.mID}));let P=i.triggerData.bundleFrom;i.triggerData.isBundleOnCartDrawer()&&P&&(x.push({itemMID:P.mID,mID:P.selectedOrFirstVariant.value.mID,isPrimary:!0}),h.unshift(P.toEmbed())),u.selectedVariants=x,i.triggerData.isBundleOnPDP()&&u.selectedVariants.forEach(M=>{M.mID===t.vID&&(M.isPrimary=!0)})}else u=void 0;g=e.embeddedItems??_}else if(r.at===107){let _=await ue.getCurrent().getNormalisedCart();h=_.items,u.selectedVariants=_.items.map(x=>({itemMID:x.mID,mID:x.vID}))}else if(r.at===102)g=n?[n]:[e.embeddedItem];else if(r.at===101)d=n?ei()+"products/"+n.slug:e.embeddedItem?.link;else if(r.at===4){let _=Ks(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(),Ge.get().refreshUI(_)}else if(r.at===104){let _=this.triggerContext.triggerData.collections?.[0];_&&(d="collections/"+_.handle)}if(this.sendTriggerClicked(h,{from:"button"},e.video),b.debug({redirectPath:d,redirectBehaviour:o,hasDiscount:c}),!c&&d){location.href=d;return}let v,E=!1;try{v=await this.getOrGenerateDiscountCode(u),b.debug("Discount code (if any) to apply",v)}catch(_){if(!this.triggerContext.triggerData.isBYOB()){vh.default.error("Unable to get a discount code",_);return}}if(v&&r.at===103)await s.copyDiscountCode(v);else if(r.at===110){let _=await s.createNewCart(t,v,i.triggerData);_&&(location.href=_);return}try{v&&await wr.applyWithStorefront([v])}catch(_){b.error(_),E=!0}let y;if(g?.length&&(y=await s.addToCart(g,i.triggerData)),E&&v){wr.navigate(v,o,d);return}if(d){location.href=d;return}wr.navigateWithoutDiscount(o,y)}sendTriggerClicked(e,t,r){let n=new ve(N.EVENT_TRIGGER_CLICKED,t,this.triggerContext.triggerData);n.items=e,r?.id&&(n.videos=[r.id]),this.eventAPIService.sendSilently(n)}async getOrGenerateDiscountCode(e){let t=this.triggerContext.triggerData.discount;if(!t?.type)return;let r="";if(t.type===yh.DiscountType.STATIC){if(!t.code)throw Re.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 Vr("Failed to generate a discount code"),b.error("Error generating discount code",t,e),Re.getInstance().captureMessage("Failed to generate discount code","error",{discountData:JSON.stringify(e),triggerContext:this.triggerContext,error:t}),t}}},Ne=class extends ar{stylesConverter=new Ui(1);renderer=Ot.get();mediaStyle={};deviceTypeKey;clickExecutor;componentWillMount(){this.deviceTypeKey=this.renderer.isMobile()?"sm":"lg",this.clickExecutor=new Zr(this.props.triggerContext)}getCompiledStyles(){return this.putStyleAccordingToDevice(),w(w(ee(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(),!t.clickAction&&(t.clickAction=this.props.element.clc),await this.clickExecutor.execute(t)}},cS=0,QF=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:--cS,__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 kt=class extends Ne{componentDidMount(){this.setState(()=>({text:this.props.element.text})),at(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 it(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 Ze;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"}}},Un=class extends kt{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 ee(w({},super.getComponentStyles()),{cursor:"pointer"})}},rp=class extends ar{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}},Fo=class extends kt{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))})}},Sh=Ee(es()),Ho=class extends Ne{componentDidMount(){at(()=>{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 Ze;return e.textAlign=t.alignment,e.justifyContent=t.alignment,e}getComponentStyles(){return ee(w({},this.getTypoStyles()),{display:"flex"})}},Eh=Ee(Tr()),Lr=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===Eh.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}},Mr=class extends Ne{render(){if(!(this.props.element.hide||!this.matchWhenCondition(this.props.element.when)))return $("div",{style:this.getCompiledStyles(),class:"lc-flexbox",children:$(en,{elements:this.props.elements,element:this.props.element,triggerContext:this.props.triggerContext})})}getComponentStyles(){let e=this.mediaStyle.flex??new Si,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}},$o=class extends Mr{render(){if(!(this.props.element.hide||!this.matchWhenCondition(this.props.element.when)))return $("div",{style:this.getCompiledStyles(),class:"lc-flexbox",children:$(Vi,{elements:this.props.elements,element:this.props.element,triggerContext:this.props.triggerContext,item:this.props.item,noLinks:this.props.noLinks})})}},Vo=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(){at(()=>{this.setState(()=>({disabled:this.props.triggerContext.triggerData.isBundle()?!this.props.item.selected.value:!1}))})}getTypoStyles(){let e={},t=this.mediaStyle.typo??new Ze;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}},_h=Ee(Nc()),jo=class extends Ne{colorRegex=new RegExp('fill="#[a-zA-Z0-9]+"');constructor(){super(),_t.escape=_h.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"}}},Wo=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(){at(()=>{this.setState(()=>({disabled:this.props.triggerContext.triggerData.isBundle()?!this.props.item.selected.value:!1}))})}getTypoStyles(){let e={},t=this.mediaStyle.typo??new Ze;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)}},Vi=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 $($o,{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()?$(Ho,{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=$(Lr,{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:$(Wo,{element:t,item:this.props.item,triggerContext:this.props.triggerContext})}return e.t===16?$(Vo,{element:e,selectedVariant:this.props.item.selectedOrFirstVariant.value,item:this.props.item,triggerContext:this.props.triggerContext}):e.t===19?$(jo,{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}):$(en,{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=$(kt,{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"}))}},Fn=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 Yr(JSON.parse(t)),!(this.productElement.hide||!this.matchWhenCondition(this.productElement.when)))return $("div",{style:w({},this.getCompiledStyles()),class:"lc-single-product",children:$(Vi,{element:this.productElement,elements:this.productElement.elems,triggerContext:this.props.triggerContext,item:this.props.item,noLinks:this.productElement.noLinks})})}getComponentStyles(){return{flexShrink:0}}getProductData(){if(!this.props.item)return{};let e=this.props.item,t=e.selectedOrFirstVariant.value,r=e.getTemplateVariables();r.product.quantity=this.props.triggerContext.hasManipulatedProductQuantity()?this.props.triggerContext.getManipulatedQuantity(this.props.item.quantity):this.props.item.quantity;let n=this.props.triggerContext.triggerData.discount.type===Sh.DiscountType.BXGY;return!t.hasEffectivePrice()&&n&&(r.product.effective_price=Lt(t.effectivePrice.value),r.product.price=""),r.variant.quantity=this.props.triggerContext.hasManipulatedProductQuantity()?this.props.triggerContext.getManipulatedQuantity(t.quantity):t.quantity,{product:r.product,variant:r.variant,svg:{color:()=>"{{svg.color}}",size:()=>"{{svg.size}}"}}}};function sc(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 ac(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 Go=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=sc(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:ee(w({},this.getCompiledStyles()),{display:"block"}),class:"lc-product-swiper-list",children:ac(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 $(cr,{children:[$(Fn,{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:$(kt,{element:this.props.element.prod.symbol,triggerContext:this.props.triggerContext})})]},e.mID)}},Yo=class extends Ne{swiperRef=null;swiperInstance=null;constructor(e,t){super(e,t)}componentDidMount(){st.loadSwiperScript().then(()=>{this.swiperInstance=sc(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 ac(e.conf,t,r)}getComponentStyles(){return{}}renderElement(e){let t=this.valueAddedSlide(this.props.element.slide,e);switch(t?.t){case 1:return $(Lr,{element:t,triggerContext:this.props.triggerContext});case 4:return $(Mr,{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 Bt.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)}},en=class extends Ne{constructor(e,t){super(e,t),this.setState(()=>({decoration:"unset"})),at(()=>{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 $(Mr,{element:t,triggerContext:this.props.triggerContext,elements:t.elems})}if(e.t===61)return $(Fo,{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 $(kt,{element:e,triggerContext:this.props.triggerContext});if(e.t===1)return $(Lr,{element:e,triggerContext:this.props.triggerContext});if(e.t===11)return $(Go,{element:e,triggerContext:this.props.triggerContext});if(e.t===12)return $(Fn,{element:e,item:this.props.triggerContext.triggerData.items[0],triggerContext:this.props.triggerContext});if(e.t===62)return $(Yo,{element:e,triggerContext:this.props.triggerContext})}}render(){return this.props.elements.map(e=>this.renderElement(e))}getComponentStyles(){return{}}},zo=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(){at(()=>{let e=this.props.triggerContext.triggerData,t=this.props.triggerContext.selectedItems;e.calculateDiscountData(t,this.props.triggerContext.shouldGiveFBTDiscount)})}render(){return $(cr,{children:[$("div",{style:this.getCompiledStyles(),class:"lc-container",onClick:e=>{this.onClick(e,{clickAction:this.clickAction})},children:$(en,{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)}},ht=class ts{constructor(t){this.engagementTrigger=t,this.triggerContext=new ki(new Date,this.engagementTrigger)}static renderedEngagements=[];static engagementIDsWithTrackedDisplay=new Set;static DEBOUNCE_TIME=1e3;rootContainer;widgetElement;widget;triggerContext;observers=[];runtimeData=ce.get();widgetAPIService=re.get(ir);eventAPIService=re.get(Qr);scrollSubscription;variation;isExclusionWithBVariation;renderSilently(){this.render().catch(t=>Re.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(),ts.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.afterRootContainerCreated(),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){Ih.default.log(`${this.engagementTrigger} will be updated`),this.updateItems(t.items,this.engagementTrigger.items)}afterRootContainerCreated(){}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 Dt(r)),this.engagementTrigger.nonMutableItems=t.items.map(r=>new Dt(r))),t.bundleFrom&&(this.engagementTrigger.bundleFrom=new Dt(t.bundleFrom)),t.discount&&(this.engagementTrigger.discount=t.discount),t.placement&&(this.triggerContext.triggerData.placement=t.placement),t.props&&bh.JSUtils.hasKeys(t.props)&&(this.engagementTrigger.props=w(w({},this.engagementTrigger.props),t.props)),this.triggerContext.triggerData.widget=this.widget=new Ti(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(){ts.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 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=Ln(window,"scroll").pipe(nr(ts.DEBOUNCE_TIME)).subscribe(()=>{this.checkAndSendEvent()})}async checkAndSendEvent(){let t=this.engagementTrigger.shortID;if(ts.engagementIDsWithTrackedDisplay.has(t)||!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 ve(n,r,this.engagementTrigger);i.name===N.EVENT_CAMPAIGN_HOLDOUT&&(i.trigger.holdout=!0),this.eventAPIService.sendSilently(i),ts.engagementIDsWithTrackedDisplay.add(t),this.scrollSubscription.unsubscribe()}generateParentElementID(){return`letscooee-${this.engagementTrigger.shortID}`}createAngularWidget(t){let r=this.widgetElement=document.createElement(t);return r.className="cooee-root",r.cart=ue.getCurrent(),r.triggerContext=this.triggerContext,r.engagementTrigger=this.engagementTrigger,r.setAttribute("engagement",this.engagementTrigger.shortID),r.addEventListener("cooeeEvent",n=>{let i=n.detail;this.eventAPIService.sendSilently(i)}),r.addEventListener("cooeeCTA",n=>{new Zr(this.triggerContext).execute(n.detail)}),this.rootContainer.appendChild(r),this.addToRendered(),r}isInViewport(){let t=this.rootContainer?.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),d=Pe.get().website.commonCSS;i=(await mi(u[0].trim()))?.shadowRoot,n=u[1].trim(),i&&(st.injectRawCSS(d,i),st.injectStylesheet(ut.styleURL,i))}b.debug(`${this.engagementTrigger} attempt to render ${r.position}-${n}`);let s=await mi(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 qo.EngagementPlacementPosition.BEFORE:{s.parentElement?.insertBefore(c,s);break}case qo.EngagementPlacementPosition.INSIDE_FIRST:{s.insertBefore(c,s.firstChild);break}case qo.EngagementPlacementPosition.INSIDE_LAST:{s.appendChild(c);break}case qo.EngagementPlacementPosition.AFTER:default:s.parentElement?.insertBefore(c,s.nextSibling)}return c}async startRendering(){let t;try{t=await $i.refreshItems(this.engagementTrigger)}catch(r){b.error(`${this.engagementTrigger} error refreshing the items`,r);return}if(!this.engagementTrigger.isCollectionPromoted()&&!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.objective.toLowerCase().replaceAll("_","-"),s=this.engagementTrigger.shortID;return n=document.createElement("div"),n.id=t,n.className=`letscooee letscooee-engagement engagement-${s} ${i}`,n.dataset.engagementId=s,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(ut.styleURL,r),st.injectSwiperCSS(r),t=r}af($c(zo,{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)wh.ArrayUtils.remove(r,s)}getItemDiff(t,r){return t.filter(n=>!r.some(i=>i.selectedOrFirstVariant.value.mID===n.selectedOrFirstVariant.value.mID))}},Ir=class ep extends ht{static renderedEngagements=[];constructor(t){super(t)}addToRendered(){ep.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(!Ge.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()}},cc=class tp{constructor(t,r){this.engagementTrigger=t,this.element=r,this.cartItems=ue.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 tp(t,i).render()}render(){let t=this.findCartItemFromHTMLElement();if(!t||this.engagementTrigger.skipSubscribedItems&&t.selling_plan_allocation)return;let r=this.engagementTrigger.items.find(g=>g.mID===t.product_id.toString());if(!r)return;let n=r.vars.find(g=>g.mID===t.id.toString());if(!n)return;let i=new yr(n),s=t.selling_plan_allocation?.selling_plan;if(s)for(let g of i.sellingPlans??[])g.mID===s.id.toString()&&(g.isSelected=!0,i.changeSellingPlan(g));let o=new Dt(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 Tt(this.engagementTrigger);u.placement.selector=`.${c}`,u.items=[o];let d=new Ir(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))})}},Th=Ee(Tr()),lc=class extends Ir{ctaExecutor=new Jr;constructor(e){super(e)}update(e){super.update(e),this.engagementTrigger.progressBarConfig.update(e.progressBarConfig),this.checkMilestone().catch(t=>{Re.getInstance().captureError("Failed to apply milestones",t)}),this.widgetElement.update()}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget("cooee-progressbar")}async checkMilestone(){let e=await ue.getCurrent().getNormalisedCart(),t=this.engagementTrigger.progressBarConfig,r=[],n=[...t.milestones];for(let i of n){if(e.amount<i.minValue)break;if(b.log("Current milestone",i),i.rewardType===Th.MilestoneRewardType.FREE_AUTO_GIFT){let s=i.items[0],o=e.items.find(c=>c.vID===s.vID||c.mID===s.mID);if(o)b.log(`Item(vID:${s.vID}) already present in the cart. Updating item's properties`),await this.ctaExecutor.updateLineItem(o,{properties:this.engagementTrigger.getPrivateAttributesForLineItem()});else{let c=await this.ctaExecutor.addToCart([s],this.engagementTrigger);c&&r.push(c)}}}if(t.coupons?.length)try{await wr.applyWithStorefront(t.coupons.map(i=>i.couponCode)),Ge.get().refreshUI(r[0],!1)}catch{}}async removeOtherFreeGifts(e){let t=(await ue.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.ctaExecutor.updateLineItem(r,{quantity:0})}},uc=class extends ht{constructor(e){super(e)}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget("cooee-shoppable-videos")}},pc=class extends ht{constructor(e){super(e)}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget("cooee-sticky-atc")}},Ch=Ee(ni()),fc=class extends ht{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(!Ch.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 pt({mID:c.product_id,vID:c.variant_id,quantity:c.quantity||1}));await new Zr(this.triggerContext).execute({embeddedItems:o,clickAction:{at:108,applyDiscount:!0}})}},Vi=class{runtimeData=ce.get();processCartWidgetResponse(e){this.runtimeData.isCartDirty=!1,this.runtimeData.cartEngagements=e;let t=[...Ir.renderedEngagements];Ir.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 lc(r).renderSilently():r.isSubscriptionUpsell()?cc.renderCartUpsell(r):new Ir(r).renderSilently());this.removeOldWidgets(t)}processPageWidgetResponse(e){let t=[...ht.renderedEngagements];ht.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 uc(r).renderSilently():r.isBYOB()?new fc(r).renderSilently():r.isStickyATC()?new pc(r).renderSilently():new ht(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()}},Wi=class{runtimeData=ce.get();httpService=re.get(dt);sessionManager=re.get(Ye);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 ue.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=Sr.parseFromCurrent()}addAvailableEngagementShortIDs(){let e=document.querySelectorAll(".letscooee-engagement"),t=[];return e.forEach(r=>{let n=r.dataset.engagementId;n&&+n&&t.push(n)}),t}},ir=class np extends Wi{static INSTANCE;loadWidgetsSubject=new Ct;constructor(){super(),this.loadWidgetsSubject.pipe(nr(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))}),Xr.get().subscriber(N.CART_UPDATE_BROADCAST).subscribe(()=>this.loadWidgetsSubject.next())}static getInstance(){return this.INSTANCE||(this.INSTANCE=new np),this.INSTANCE}loadOrRenderWidgetsAfterCartChange(){this.runtimeData.isCartDirty?this.loadWidgetsSilently():this.renderCachedCartWidgets()}loadPageWidgetsSilently(){Ye.replaySubject.subscribe(async()=>{this.loadPageWidgets().catch(t=>b.error("Unable to initiate load page widgets",t))})}loadCartWidgetsSilently(){Ye.replaySubject.subscribe(async()=>{this.loadCartWidgets().catch(t=>b.error("Unable to initiate cart widgets",t))})}loadWidgetsSilently(){Ye.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 Tt(i));new Vi().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 Tt(i));new Vi().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 Vi().processCartWidgetResponse(this.runtimeData.cartEngagements)}},mc=class{eventAPIService;modifications=[];constructor(){this.eventAPIService=re.get(tn)}execute(e){for(let t of e)t.experimentConfig&&(this.executeExperiment(t),this.trackExperimentRan(t));if(document.querySelector("#lc-hide-body")?.remove(),!document.body){re.get(Re).captureMessage("No body element found","error");return}this.setupMutationObserver()}async executeExperiment(e){let t=e.experimentConfig?.modifications;if(!t?.length){b.log("Nothing to experiment",e.toString());return}for(let r of t){if(!r.cssSelector){b.debug("No CSS Selector available",e?.toString());continue}this.modifications.push(r);let n=Array.from(document.querySelectorAll(r.cssSelector));this.executeSingleModification(r,n)}}executeSingleModification(e,t){if(t?.length)for(let r of t)Object.assign(r.style,e.style),e.type==="TEXT"&&e.text&&(r.innerHTML=e.text)}trackExperimentRan(e){if(e.id==="preview"){b.warn("Skipping experiment attribution as its preview",e.toString());return}this.eventAPIService.trackExperiment({name:N.EVENT_EXPERIMENT_START,experiment:new Kr(e)}).catch(t=>{b.error("Fail to track experiment",t)})}setupMutationObserver(){new MutationObserver(e=>{e.forEach(t=>{t.addedNodes.forEach(r=>{r instanceof HTMLElement&&this.modifications.forEach(n=>{r.matches&&r.matches(n.cssSelector)?(b.debug("Re-applying experiment",n.toString()),this.executeSingleModification(n,[r])):r.querySelectorAll&&(b.debug("Re-applying experiment",n.toString()),this.executeSingleModification(n,Array.from(r.querySelectorAll(n.cssSelector))))})})})}).observe(document.body,{childList:!0,subtree:!0})}},tn=class ip extends Wi{static INSTANCE;constructor(){super()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new ip),this.INSTANCE}loadExperimentSilently(){xe.get(oe.SDK_TOKEN).then(t=>{t?this.loadExperiments().catch(r=>b.error("Unable to initiate experiment",r)):Ye.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 Tt(i));new mc().execute(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)}},dc=class{runtimeData=ce.get();widgetAPIService=re.get(ir);experimentAPIService=re.get(tn);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){yn(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&&Mn.setFlags(e.flags))}processEvent(e){e&&(N.JS_LOAD_WHITELIST_EVENTS.includes(e[0])?we.sendEvent(e[0],e[1],w({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)}},Gi=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))}},Yi=class Qo{static INSTANCE;static DEBOUNCE_TIME=1e3;static THRESHOLD=10;safeHttpService=re.get(me);lastPercent=0;_lastScreenOrScroll=new Date;constructor(){}set lastScreenOrScroll(t){this._lastScreenOrScroll=t}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Qo),this.INSTANCE}resetScrollID(t){Gi.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)}fi(()=>{this.observeWindowScroll()})}observeWindowScroll(){Ln(window,"scroll").pipe(nr(Qo.DEBOUNCE_TIME),Pn(()=>{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)>=Qo.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=Gi.getString(N.SESSION_STORAGE_SCROLL_ID,""),i=new ve(N.EVENT_SCROLL,r,null,n);this.safeHttpService.sendEvent(i),Gi.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)}},hc=class sp{static ACTIVE_DURATION="aDur";static INACTIVE_DURATION="iaDur";apiService=re.get(me);runtimeData=ce.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[sp.ACTIVE_DURATION]=t,this.apiService.sendEvent(new ve(N.EVENT_APP_BACKGROUND,r))}},gc=class{compareCartItemSubject=new Ct;constructor(){this.compareCartItemSubject.pipe(nr(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)&&(ce.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),g=ee(w({},o),{quantity:d});u?i.push(g):s.push(g)}r&&Zm(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)&&Xr.get().broadcast(N.CART_UPDATE_BROADCAST,{itemsAdded:i,itemsRemoved:s})}sendEvent(e,t){let r=new ve(e,t);re.get(me).sendEvent(r)}async compareCartItems(){let e=await xe.get(oe.CURRENT_CART,{}),t=await ue.getCurrent().getNormalisedCart(!0);this.sendChangesAsEvents(e,t)}},yc=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){Re.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 Xs();return e.variables.input.attributes=[...t,...r],JSON.stringify(e)}sendBuyNowEvent(){let e=ce.get().getCurrentItem();if(!e)return;let t=new ve(N.EVENT_BUY_NOW_CLICKED,{items:[e]});me.getInstance().sendEvent(t)}},zi=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 ve(this.eventName,{class:t.className||void 0,tagName:t.tagName||void 0,id:t.id||void 0});me.getInstance().sendEvent(r),this.removeClickListener(this.clickListenerCallback)};listenSilently(){this.listen().catch(e=>b.error(e))}async listen(){this.elements=await vu(this.selectorString),this.elements.forEach(e=>{e.addEventListener("click",this.clickListenerCallback)})}removeClickListener(e){this.elements?.forEach(t=>{t.removeEventListener("click",e)})}},vc=class Oc extends zi{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(Oc.selectors,N.EVENT_ITEM_THUMBNAIL_CLICKED)}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Oc),this.INSTANCE}},Ec=class nl extends zi{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}},_c=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(){fi(()=>{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)&&Ge.get().open()}},Sc=class{trackSilently(){this.track().catch(e=>Re.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 re.get(Ye).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),me.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))}},Ko=class{static attachCheckoutListener(){window.gokwikSdk&&window.gokwikSdk.on("checkout_initiated",async()=>{let e=await ue.getCurrent().getNormalisedCart(),t={via:"GoKwik",items:e.items,cartToken:e.token,amount:{value:e.amount,currency:e.currency}},r=new ve(N.EVENT_CHECKOUT_STARTED,t);me.getInstance().sendEvent(r)})}},wc=class{async migrate(){}};_t.escape=xh.MustacheUtils.escapeHtml;var we=class{static globalRef;static authenticated;static async initForMerchantWebsiteOnly(){window.cooeeSDKPreview||(this.initGlobalReference(),await new wc().migrate(),this.autoAuthenticate(),new dc().meddle(),re.get(tn).loadExperimentSilently(),new hc().listen(),new Sc().trackSilently(),new gc().listen(),new yc().listen(),new _c().listen(),re.get(Yi).listen(),re.get(Ec).listenSilently(),re.get(vc).listenSilently(),re.get(ir).loadPageWidgetsSilently(),this.attachGoKwikListeners(),this.storePreviewParams(),this.setupPreviewListeners(),Xt.watch())}static async initForAll(){this.injectWidgetAssets()}static initGlobalReference(){window.CooeeSDK||yn(window,"CooeeSDK",{}),this.globalRef=window.CooeeSDK,yn(this.globalRef,"config",new Pe),yn(this.globalRef,"runtimeData",new ce),yn(this.globalRef,"uaParser",new Dh.default),b.debug("Global reference initialised")}static injectWidgetAssets(){st.injectScriptURL(ut.widgetURL,"cooee-widget-sdk"),st.injectStylesheet(ut.styleURL)}static autoAuthenticate(){let e=Rf();e&&this.authenticate({shopifyShop:e})}static authenticate(e){if(this.authenticated)return;let t=e.appID?.trim(),r=e.shopifyShop;if((yu(t)||t.length!==24)&&yu(r)){b.warn("Cooee App ID or Shop name is not configured");return}this.authenticated=!0,re.get(Ye).init(e)}static sendEvent(e,t,r){let n=new ve(e,t,r?.triggerData);r?.occurred&&(n.occurred=r.occurred),re.get(me).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 '");re.get(me).updateProfile(e)}static setPageName(e){if(!e)return;let t=ce.get(),r=t.pageName;if(e===r)return;if(t.pageName=e,e==="cart"&&re.get(ir).loadOrRenderWidgetsAfterCartChange(),N.BLACKLISTED_PAGE_NAMES.some(s=>e.includes(s))){re.get(Yi).resetScrollID();return}let n={};r&&(n.ps=r);let i=new ve(N.EVENT_SCREEN_VIEW,n);i.occurred=t.jsLoadTime,re.get(me).sendEvent(i),re.get(Yi).resetScrollID(i.occurred)}static previewPopup(e,t){new Hi(t).render(e)}static previewWidget(e){new ht(new Tt(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=ce.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?Ko.attachCheckoutListener():window.addEventListener("gokwikLoaded",Ko.attachCheckoutListener)}static storePreviewParams(){let e=ce.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)}};dp();hp();b.debug("Execution order:","top");window.cooeeShopifyScriptLoaded||(window.cooeeShopifyScriptLoaded=!0,(async()=>(b.debug("Execution order:","IIFE start"),await we.initForMerchantWebsiteOnly(),await we.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 ac(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 Go=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=sc(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:ee(w({},this.getCompiledStyles()),{display:"block"}),class:"lc-product-swiper-list",children:ac(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 $(cr,{children:[$(Fn,{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:$(kt,{element:this.props.element.prod.symbol,triggerContext:this.props.triggerContext})})]},e.mID)}},Yo=class extends Ne{swiperRef=null;swiperInstance=null;constructor(e,t){super(e,t)}componentDidMount(){st.loadSwiperScript().then(()=>{this.swiperInstance=sc(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 ac(e.conf,t,r)}getComponentStyles(){return{}}renderElement(e){let t=this.valueAddedSlide(this.props.element.slide,e);switch(t?.t){case 1:return $(Lr,{element:t,triggerContext:this.props.triggerContext});case 4:return $(Mr,{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 Bt.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)}},en=class extends Ne{constructor(e,t){super(e,t),this.setState(()=>({decoration:"unset"})),at(()=>{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 $(Mr,{element:t,triggerContext:this.props.triggerContext,elements:t.elems})}if(e.t===61)return $(Fo,{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 $(kt,{element:e,triggerContext:this.props.triggerContext});if(e.t===1)return $(Lr,{element:e,triggerContext:this.props.triggerContext});if(e.t===11)return $(Go,{element:e,triggerContext:this.props.triggerContext});if(e.t===12)return $(Fn,{element:e,item:this.props.triggerContext.triggerData.items[0],triggerContext:this.props.triggerContext});if(e.t===62)return $(Yo,{element:e,triggerContext:this.props.triggerContext})}}render(){return this.props.elements.map(e=>this.renderElement(e))}getComponentStyles(){return{}}},zo=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(){at(()=>{let e=this.props.triggerContext.triggerData,t=this.props.triggerContext.selectedItems;e.calculateDiscountData(t,this.props.triggerContext.shouldGiveFBTDiscount)})}render(){return $(cr,{children:[$("div",{style:this.getCompiledStyles(),class:"lc-container",onClick:e=>{this.onClick(e,{clickAction:this.clickAction})},children:$(en,{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)}},ht=class ts{constructor(t){this.engagementTrigger=t,this.triggerContext=new ki(new Date,this.engagementTrigger)}static renderedEngagements=[];static engagementIDsWithTrackedDisplay=new Set;static DEBOUNCE_TIME=1e3;rootContainer;widgetElement;widget;triggerContext;observers=[];runtimeData=ce.get();widgetAPIService=re.get(ir);eventAPIService=re.get(Qr);scrollSubscription;variation;isExclusionWithBVariation;renderSilently(){this.render().catch(t=>Re.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(),ts.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.afterRootContainerCreated(),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){Ih.default.log(`${this.engagementTrigger} will be updated`),this.updateItems(t.items,this.engagementTrigger.items)}afterRootContainerCreated(){}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 Dt(r)),this.engagementTrigger.nonMutableItems=t.items.map(r=>new Dt(r))),t.bundleFrom&&(this.engagementTrigger.bundleFrom=new Dt(t.bundleFrom)),t.discount&&(this.engagementTrigger.discount=t.discount),t.placement&&(this.triggerContext.triggerData.placement=t.placement),t.props&&bh.JSUtils.hasKeys(t.props)&&(this.engagementTrigger.props=w(w({},this.engagementTrigger.props),t.props)),this.triggerContext.triggerData.widget=this.widget=new Ti(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(){ts.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 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=Ln(window,"scroll").pipe(nr(ts.DEBOUNCE_TIME)).subscribe(()=>{this.checkAndSendEvent()})}async checkAndSendEvent(){let t=this.engagementTrigger.shortID;if(ts.engagementIDsWithTrackedDisplay.has(t)||!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 ve(n,r,this.engagementTrigger);i.name===N.EVENT_CAMPAIGN_HOLDOUT&&(i.trigger.holdout=!0),this.eventAPIService.sendSilently(i),ts.engagementIDsWithTrackedDisplay.add(t),this.scrollSubscription.unsubscribe()}generateParentElementID(){return`letscooee-${this.engagementTrigger.shortID}`}createAngularWidget(t){let r=this.widgetElement=document.createElement(t);return r.className="cooee-root",r.cart=ue.getCurrent(),r.triggerContext=this.triggerContext,r.engagementTrigger=this.engagementTrigger,r.setAttribute("engagement",this.engagementTrigger.shortID),r.addEventListener("cooeeEvent",n=>{let i=n.detail;this.eventAPIService.sendSilently(i)}),r.addEventListener("cooeeCTA",n=>{new Zr(this.triggerContext).execute(n.detail)}),this.rootContainer.appendChild(r),this.addToRendered(),r}isInViewport(){let t=this.rootContainer?.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),d=Pe.get().website.commonCSS;i=(await mi(u[0].trim()))?.shadowRoot,n=u[1].trim(),i&&(st.injectRawCSS(d,i),st.injectStylesheet(ut.styleURL,i))}b.debug(`${this.engagementTrigger} attempt to render ${r.position}-${n}`);let s=await mi(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 qo.EngagementPlacementPosition.BEFORE:{s.parentElement?.insertBefore(c,s);break}case qo.EngagementPlacementPosition.INSIDE_FIRST:{s.insertBefore(c,s.firstChild);break}case qo.EngagementPlacementPosition.INSIDE_LAST:{s.appendChild(c);break}case qo.EngagementPlacementPosition.AFTER:default:s.parentElement?.insertBefore(c,s.nextSibling)}return c}async startRendering(){let t;try{t=await $i.refreshItems(this.engagementTrigger)}catch(r){b.error(`${this.engagementTrigger} error refreshing the items`,r);return}if(!this.engagementTrigger.isCollectionPromoted()&&!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.objective.toLowerCase().replaceAll("_","-"),s=this.engagementTrigger.shortID;return n=document.createElement("div"),n.id=t,n.className=`letscooee letscooee-engagement engagement-${s} ${i}`,n.dataset.engagementId=s,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(ut.styleURL,r),st.injectSwiperCSS(r),t=r}af($c(zo,{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)wh.ArrayUtils.remove(r,s)}getItemDiff(t,r){return t.filter(n=>!r.some(i=>i.selectedOrFirstVariant.value.mID===n.selectedOrFirstVariant.value.mID))}},Ir=class ep extends ht{static renderedEngagements=[];constructor(t){super(t)}addToRendered(){ep.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(!Ge.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()}},cc=class tp{constructor(t,r){this.engagementTrigger=t,this.element=r,this.cartItems=ue.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 tp(t,i).render()}render(){let t=this.findCartItemFromHTMLElement();if(!t||this.engagementTrigger.skipSubscribedItems&&t.selling_plan_allocation)return;let r=this.engagementTrigger.items.find(g=>g.mID===t.product_id.toString());if(!r)return;let n=r.vars.find(g=>g.mID===t.id.toString());if(!n)return;let i=new yr(n),s=t.selling_plan_allocation?.selling_plan;if(s)for(let g of i.sellingPlans??[])g.mID===s.id.toString()&&(g.isSelected=!0,i.changeSellingPlan(g));let o=new Dt(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 Tt(this.engagementTrigger);u.placement.selector=`.${c}`,u.items=[o];let d=new Ir(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))})}},Th=Ee(Tr()),lc=class extends Ir{ctaExecutor=new Jr;constructor(e){super(e)}update(e){super.update(e),this.engagementTrigger.progressBarConfig.update(e.progressBarConfig),this.checkMilestone().catch(t=>{Re.getInstance().captureError("Failed to apply milestones",t)}),this.widgetElement.update()}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget("cooee-progressbar")}async checkMilestone(){let e=await ue.getCurrent().getNormalisedCart(),t=this.engagementTrigger.progressBarConfig,r=[],n=[...t.milestones];for(let i of n){if(e.amount<i.minValue)break;if(b.log("Current milestone",i),i.rewardType===Th.MilestoneRewardType.FREE_AUTO_GIFT){let s=i.items[0],o=e.items.find(c=>c.vID===s.vID||c.mID===s.mID);if(o)b.log(`Item(vID:${s.vID}) already present in the cart. Updating item's properties`),await this.ctaExecutor.updateLineItem(o,{properties:this.engagementTrigger.getPrivateAttributesForLineItem()});else{let c=await this.ctaExecutor.addToCart([s],this.engagementTrigger);c&&r.push(c)}}}if(t.coupons?.length)try{await wr.applyWithStorefront(t.coupons.map(i=>i.couponCode)),Ge.get().refreshUI(r[0],!1)}catch{}}async removeOtherFreeGifts(e){let t=(await ue.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.ctaExecutor.updateLineItem(r,{quantity:0})}},uc=class extends ht{constructor(e){super(e)}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget("cooee-shoppable-videos")}},pc=class extends ht{constructor(e){super(e)}shouldStopRendering(){return!1}renderContainer(){if(this.widgetElement?.isConnected){this.addToRendered();return}this.createAngularWidget("cooee-sticky-atc")}},Ch=Ee(ni()),fc=class extends ht{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(!Ch.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 pt({mID:c.product_id,vID:c.variant_id,quantity:c.quantity||1}));await new Zr(this.triggerContext).execute({embeddedItems:o,clickAction:{at:108,applyDiscount:!0}})}},ji=class{runtimeData=ce.get();processCartWidgetResponse(e){this.runtimeData.isCartDirty=!1,this.runtimeData.cartEngagements=e;let t=[...Ir.renderedEngagements];Ir.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 lc(r).renderSilently():r.isSubscriptionUpsell()?cc.renderCartUpsell(r):new Ir(r).renderSilently());this.removeOldWidgets(t)}processPageWidgetResponse(e){let t=[...ht.renderedEngagements];ht.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 uc(r).renderSilently():r.isBYOB()?new fc(r).renderSilently():r.isStickyATC()?new pc(r).renderSilently():new ht(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()}},Wi=class{runtimeData=ce.get();httpService=re.get(dt);sessionManager=re.get(Ye);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 ue.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=Sr.parseFromCurrent()}addAvailableEngagementShortIDs(){let e=document.querySelectorAll(".letscooee-engagement"),t=[];return e.forEach(r=>{let n=r.dataset.engagementId;n&&+n&&t.push(n)}),t}},ir=class np extends Wi{static INSTANCE;loadWidgetsSubject=new Ct;constructor(){super(),this.loadWidgetsSubject.pipe(nr(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))}),Xr.get().subscriber(N.CART_UPDATE_BROADCAST).subscribe(()=>this.loadWidgetsSubject.next())}static getInstance(){return this.INSTANCE||(this.INSTANCE=new np),this.INSTANCE}loadOrRenderWidgetsAfterCartChange(){this.runtimeData.isCartDirty?this.loadWidgetsSilently():this.renderCachedCartWidgets()}loadPageWidgetsSilently(){Ye.replaySubject.subscribe(async()=>{this.loadPageWidgets().catch(t=>b.error("Unable to initiate load page widgets",t))})}loadCartWidgetsSilently(){Ye.replaySubject.subscribe(async()=>{this.loadCartWidgets().catch(t=>b.error("Unable to initiate cart widgets",t))})}loadWidgetsSilently(){Ye.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 Tt(i));new ji().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 Tt(i));new ji().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 ji().processCartWidgetResponse(this.runtimeData.cartEngagements)}},mc=class{eventAPIService;modifications=[];constructor(){this.eventAPIService=re.get(tn)}execute(e){for(let t of e)t.experimentConfig&&(this.executeExperiment(t),this.trackExperimentRan(t));if(document.querySelector("#lc-hide-body")?.remove(),!document.body){re.get(Re).captureMessage("No body element found","error");return}this.setupMutationObserver()}async executeExperiment(e){let t=e.experimentConfig?.modifications;if(!t?.length){b.log("Nothing to experiment",e.toString());return}for(let r of t){if(!r.cssSelector){b.debug("No CSS Selector available",e?.toString());continue}this.modifications.push(r);let n=Array.from(document.querySelectorAll(r.cssSelector));this.executeSingleModification(r,n)}}executeSingleModification(e,t){if(t?.length)for(let r of t)Object.assign(r.style,e.style),e.type==="TEXT"&&e.text&&(r.innerHTML=e.text)}trackExperimentRan(e){if(e.id==="preview"){b.warn("Skipping experiment attribution as its preview",e.toString());return}this.eventAPIService.trackExperiment({name:N.EVENT_EXPERIMENT_START,experiment:new Kr(e)}).catch(t=>{b.error("Fail to track experiment",t)})}setupMutationObserver(){new MutationObserver(e=>{e.forEach(t=>{t.addedNodes.forEach(r=>{r instanceof HTMLElement&&this.modifications.forEach(n=>{r.matches&&r.matches(n.cssSelector)?(b.debug("Re-applying experiment",n.toString()),this.executeSingleModification(n,[r])):r.querySelectorAll&&(b.debug("Re-applying experiment",n.toString()),this.executeSingleModification(n,Array.from(r.querySelectorAll(n.cssSelector))))})})})}).observe(document.body,{childList:!0,subtree:!0})}},tn=class ip extends Wi{static INSTANCE;constructor(){super()}static getInstance(){return this.INSTANCE||(this.INSTANCE=new ip),this.INSTANCE}loadExperimentSilently(){xe.get(oe.SDK_TOKEN).then(t=>{t?this.loadExperiments().catch(r=>b.error("Unable to initiate experiment",r)):Ye.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 Tt(i));new mc().execute(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)}},dc=class{runtimeData=ce.get();widgetAPIService=re.get(ir);experimentAPIService=re.get(tn);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){yn(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&&Mn.setFlags(e.flags))}processEvent(e){e&&(N.JS_LOAD_WHITELIST_EVENTS.includes(e[0])?we.sendEvent(e[0],e[1],w({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)}},Gi=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))}},Yi=class Qo{static INSTANCE;static DEBOUNCE_TIME=1e3;static THRESHOLD=10;safeHttpService=re.get(me);lastPercent=0;_lastScreenOrScroll=new Date;constructor(){}set lastScreenOrScroll(t){this._lastScreenOrScroll=t}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Qo),this.INSTANCE}resetScrollID(t){Gi.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)}fi(()=>{this.observeWindowScroll()})}observeWindowScroll(){Ln(window,"scroll").pipe(nr(Qo.DEBOUNCE_TIME),Pn(()=>{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)>=Qo.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=Gi.getString(N.SESSION_STORAGE_SCROLL_ID,""),i=new ve(N.EVENT_SCROLL,r,null,n);this.safeHttpService.sendEvent(i),Gi.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)}},hc=class sp{static ACTIVE_DURATION="aDur";static INACTIVE_DURATION="iaDur";apiService=re.get(me);runtimeData=ce.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[sp.ACTIVE_DURATION]=t,this.apiService.sendEvent(new ve(N.EVENT_APP_BACKGROUND,r))}},gc=class{compareCartItemSubject=new Ct;constructor(){this.compareCartItemSubject.pipe(nr(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)&&(ce.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),g=ee(w({},o),{quantity:d});u?i.push(g):s.push(g)}r&&Zm(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)&&Xr.get().broadcast(N.CART_UPDATE_BROADCAST,{itemsAdded:i,itemsRemoved:s})}sendEvent(e,t){let r=new ve(e,t);re.get(me).sendEvent(r)}async compareCartItems(){let e=await xe.get(oe.CURRENT_CART,{}),t=await ue.getCurrent().getNormalisedCart(!0);this.sendChangesAsEvents(e,t)}},yc=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){Re.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 Xs();return e.variables.input.attributes=[...t,...r],JSON.stringify(e)}sendBuyNowEvent(){let e=ce.get().getCurrentItem();if(!e)return;let t=new ve(N.EVENT_BUY_NOW_CLICKED,{items:[e]});me.getInstance().sendEvent(t)}},zi=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 ve(this.eventName,{class:t.className||void 0,tagName:t.tagName||void 0,id:t.id||void 0});me.getInstance().sendEvent(r),this.removeClickListener(this.clickListenerCallback)};listenSilently(){this.listen().catch(e=>b.error(e))}async listen(){this.elements=await vu(this.selectorString),this.elements.forEach(e=>{e.addEventListener("click",this.clickListenerCallback)})}removeClickListener(e){this.elements?.forEach(t=>{t.removeEventListener("click",e)})}},vc=class Oc extends zi{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(Oc.selectors,N.EVENT_ITEM_THUMBNAIL_CLICKED)}static getInstance(){return this.INSTANCE||(this.INSTANCE=new Oc),this.INSTANCE}},Ec=class nl extends zi{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}},_c=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(){fi(()=>{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)&&Ge.get().open()}},Sc=class{trackSilently(){this.track().catch(e=>Re.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 re.get(Ye).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),me.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))}},Ko=class{static attachCheckoutListener(){window.gokwikSdk&&window.gokwikSdk.on("checkout_initiated",async()=>{let e=await ue.getCurrent().getNormalisedCart(),t={via:"GoKwik",items:e.items,cartToken:e.token,amount:{value:e.amount,currency:e.currency}},r=new ve(N.EVENT_CHECKOUT_STARTED,t);me.getInstance().sendEvent(r)})}},wc=class{async migrate(){}};_t.escape=xh.MustacheUtils.escapeHtml;var we=class{static globalRef;static authenticated;static async initForMerchantWebsiteOnly(){window.cooeeSDKPreview||(this.initGlobalReference(),await new wc().migrate(),this.autoAuthenticate(),new dc().meddle(),re.get(tn).loadExperimentSilently(),new hc().listen(),new Sc().trackSilently(),new gc().listen(),new yc().listen(),new _c().listen(),re.get(Yi).listen(),re.get(Ec).listenSilently(),re.get(vc).listenSilently(),re.get(ir).loadPageWidgetsSilently(),this.attachGoKwikListeners(),this.storePreviewParams(),this.setupPreviewListeners(),Xt.watch())}static async initForAll(){this.injectWidgetAssets()}static initGlobalReference(){window.CooeeSDK||yn(window,"CooeeSDK",{}),this.globalRef=window.CooeeSDK,yn(this.globalRef,"config",new Pe),yn(this.globalRef,"runtimeData",new ce),yn(this.globalRef,"uaParser",new Dh.default),b.debug("Global reference initialised")}static injectWidgetAssets(){st.injectScriptURL(ut.widgetURL,"cooee-widget-sdk"),st.injectStylesheet(ut.styleURL)}static autoAuthenticate(){let e=Rf();e&&this.authenticate({shopifyShop:e})}static authenticate(e){if(this.authenticated)return;let t=e.appID?.trim(),r=e.shopifyShop;if((yu(t)||t.length!==24)&&yu(r)){b.warn("Cooee App ID or Shop name is not configured");return}this.authenticated=!0,re.get(Ye).init(e)}static sendEvent(e,t,r){let n=new ve(e,t,r?.triggerData);r?.occurred&&(n.occurred=r.occurred),re.get(me).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 '");re.get(me).updateProfile(e)}static setPageName(e){if(!e)return;let t=ce.get(),r=t.pageName;if(e===r)return;if(t.pageName=e,e==="cart"&&re.get(ir).loadOrRenderWidgetsAfterCartChange(),N.BLACKLISTED_PAGE_NAMES.some(s=>e.includes(s))){re.get(Yi).resetScrollID();return}let n={};r&&(n.ps=r);let i=new ve(N.EVENT_SCREEN_VIEW,n);i.occurred=t.jsLoadTime,re.get(me).sendEvent(i),re.get(Yi).resetScrollID(i.occurred)}static previewPopup(e,t){new Hi(t).render(e)}static previewWidget(e){new ht(new Tt(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=ce.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?Ko.attachCheckoutListener():window.addEventListener("gokwikLoaded",Ko.attachCheckoutListener)}static storePreviewParams(){let e=ce.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)}};dp();hp();b.debug("Execution order:","top");window.cooeeShopifyScriptLoaded||(window.cooeeShopifyScriptLoaded=!0,(async()=>(b.debug("Execution order:","IIFE start"),await we.initForMerchantWebsiteOnly(),await we.initForAll(),b.debug("Execution order:","IIFE end")))());b.debug("Execution order:","bottom");})();
|