@streamlayer/sdk-web 1.6.3 → 1.6.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/lib/cjs/index.js +7 -7
- package/lib/es/index.js +953 -900
- package/package.json +11 -11
package/lib/cjs/index.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ii=require("pino"),w=require("@streamlayer/sl-eslib/interactive/interactive.common_pb"),nt=require("@streamlayer/sl-eslib/interactive/feed/interactive.feed_pb"),R=require("@streamlayer/sl-eslib/sdkSettings/sdkSettings.common_pb"),it=require("@streamlayer/sl-eslib/analytics/v1/invitations/invitations_pb"),te=require("nanostores"),Xt=require("nanoid"),M=require("@connectrpc/connect"),kr=require("@connectrpc/connect-web"),Lr=require("@nanostores/query"),cn=require("@streamlayer/sl-eslib/sports/events/events_connect"),Je=require("@streamlayer/sl-eslib/sdkSettings/client/client_connect"),pr=require("@streamlayer/sl-eslib/users/users_connect"),J=require("@streamlayer/sl-eslib/interactive/feed/interactive.feed_connect"),ln=require("@streamlayer/sl-eslib/interactive/leaderboard/interactive.leaderboard_connect");require("@streamlayer/sl-eslib/interactive/leaderboard/interactive.leaderboard_pb");const oi=require("@streamlayer/sl-eslib/shortLinks/linksClient_connect"),v=require("@streamlayer/sl-eslib/analytics/v1/common/analytics.common_pb"),dn=require("@streamlayer/sl-eslib/analytics/v2/streaming/streaming_connect"),Pr=require("@streamlayer/sl-eslib/analytics/v1/interactions/interactions_pb"),ee=require("@streamlayer/sl-eslib/analytics/v1/notifications/notifications_pb");function si(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var fn={exports:{}},q=fn.exports={},ie,oe;function Zt(){throw new Error("setTimeout has not been defined")}function er(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?ie=setTimeout:ie=Zt}catch{ie=Zt}try{typeof clearTimeout=="function"?oe=clearTimeout:oe=er}catch{oe=er}})();function pn(t){if(ie===setTimeout)return setTimeout(t,0);if((ie===Zt||!ie)&&setTimeout)return ie=setTimeout,setTimeout(t,0);try{return ie(t,0)}catch{try{return ie.call(null,t,0)}catch{return ie.call(this,t,0)}}}function ai(t){if(oe===clearTimeout)return clearTimeout(t);if((oe===er||!oe)&&clearTimeout)return oe=clearTimeout,clearTimeout(t);try{return oe(t)}catch{try{return oe.call(null,t)}catch{return oe.call(this,t)}}}var he=[],qe=!1,Te,ct=-1;function ui(){!qe||!Te||(qe=!1,Te.length?he=Te.concat(he):ct=-1,he.length&&hn())}function hn(){if(!qe){var t=pn(ui);qe=!0;for(var e=he.length;e;){for(Te=he,he=[];++ct<e;)Te&&Te[ct].run();ct=-1,e=he.length}Te=null,qe=!1,ai(t)}}q.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];he.push(new yn(t,e)),he.length===1&&!qe&&pn(hn)};function yn(t,e){this.fun=t,this.array=e}yn.prototype.run=function(){this.fun.apply(null,this.array)};q.title="browser";q.browser=!0;q.env={};q.argv=[];q.version="";q.versions={};function ye(){}q.on=ye;q.addListener=ye;q.once=ye;q.off=ye;q.removeListener=ye;q.removeAllListeners=ye;q.emit=ye;q.prependListener=ye;q.prependOnceListener=ye;q.listeners=function(t){return[]};q.binding=function(t){throw new Error("process.binding is not supported")};q.cwd=function(){return"/"};q.chdir=function(t){throw new Error("process.chdir is not supported")};q.umask=function(){return 0};var ci=fn.exports;const I=si(ci),li=ii.pino({level:"trace",enabled:typeof window<"u"&&!!window.localStorage.getItem("SL_DEBUG"),browser:{write:t=>{console.log(t)}}}),ge=(t,e)=>li.child({name:t},e);class di extends Event{slEventBus;constructor(e,r){super(e),this.slEventBus=r}}const fi=ge("event-bus");class pi{name;listeners;constructor(e="sl-event-bus"){this.name=e,this.listeners=new Set}emit=(e,r)=>{const n=new di(this.name,{...r,type:e});fi.debug(n,"Emitting event"),window.dispatchEvent(n)};listen(e){return window.addEventListener(this.name,e),this.listeners.add(e),()=>{this.off(e)}}off(e){window.removeEventListener(this.name,e),this.listeners.delete(e)}destroy=()=>{this.listeners.forEach(e=>{window.removeEventListener(this.name,e),this.listeners.delete(e)}),this.listeners.clear()}}class hi{}window.slStore=Object.create(null);class It{store;name;constructor(e,r){this.store=e,this.name=r}getStore(){return this.store}}const yi=t=>{const e=Object.keys(t);return te.computed(e.map(r=>t[r].getStore()),(...r)=>Object.fromEntries(e.map((n,i)=>[n,r[i]])))};class Ae extends It{getValues=()=>this.getStore().get();getValue=e=>this.getStore().get()[e];setValue=(e,r)=>this.getStore().setKey(e,r);subscribe=(...e)=>this.getStore().subscribe(...e);unsubscribe=()=>this.getStore().off()}const H=t=>te.map(t);var de;(function(t){t.ORGANIZATION="ORGANIZATION",t.STREAM="STREAM"})(de||(de={}));const gi={[R.SdkOverlayType.BETTING]:"betting",[R.SdkOverlayType.GAMES]:"games",[R.SdkOverlayType.PUBLIC_CHAT]:"publicChat",[R.SdkOverlayType.TWITTER]:"twitter"};var ze;(function(t){t.Ready="ready",t.Suspended="suspended"})(ze||(ze={}));class gn{status;source;config;settings;listeners=new Set;settingsKey;constructor({settings:e,...r},n){this.settingsKey=gi[r.type],this.status=te.atom(ze.Suspended),this.config=new Ae(H(r),`feature:config:${this.settingsKey}`),this.settingsKey!==void 0&&e?.overlaySettings.case===this.settingsKey?this.settings=new Ae(H(e.overlaySettings.value),`feature:settings:${this.settingsKey}`):this.settings=new Ae(H({}),`feature:settings:${this.settingsKey}`),this.source=n}get featureConfig(){return this.config.getStore()}get featureSettings(){return this.settings.getStore()}registerEventListener(e){this.listeners.add(e)}enable=()=>{this.status.set(ze.Ready)};disable=()=>{this.status.set(ze.Suspended)};setFeatureConfig=({settings:e,...r})=>{let n;for(n in r)this.config.setValue(n,r[n]);if(e?.overlaySettings?.case!==void 0&&e?.overlaySettings.case===this.settingsKey){const i=e.overlaySettings.value;if(i!==void 0){let o;for(o in i)i[o]!==0&&i[o]!==""&&this.settings.setValue(o,i[o])}}};update=(e,r)=>{this.source===de.STREAM&&r===de.ORGANIZATION||(this.setFeatureConfig(e),this.source=r)};fireEvent(e){for(const r of this.listeners.values())try{r.onEvent(e)}catch(n){console.error(n)}}}class Y extends It{getValue=()=>this.getStore().get();getValues(){throw new Error("not implemented")}setValue=e=>this.getStore().set(e);subscribe=e=>this.getStore().subscribe(e);unsubscribe=()=>this.getStore().off();listen(e){return this.getStore().listen(e)}get(){return this.getStore().get()}}const j=t=>te.atom(t);class ae extends It{atomStore;constructor(e,r,n){super(e,`api:${r}`),this.atomStore=te.atom(),n&&e.subscribe(i=>{const o=this.atomStore.get(),s=n(i,o);o!==s&&this.atomStore.set(s)})}getAtomStore=()=>this.atomStore;getValue=async()=>{const e=this.getStore();if(e.value===void 0)throw new Error("no store");return await e.value.promise,e.get().data};getValues=()=>this.getStore().get();setValue=e=>this.getStore().set({loading:!1,data:e?.data});subscribe=e=>this.getStore().subscribe(e);unsubscribe=()=>{throw new Error("not implemented")};invalidate=()=>{this.store.invalidate()};listen=e=>this.getStore().listen(e);get(){throw new Error("not implemented")}key=()=>this.getStore().key;off=()=>this.getStore().off()}const G=new pi;async function*mi(t,e){for await(const r of e){t.response.message=r,t.received_at=Date.now(),t.id=mn++;const n={type:"__GRPC_DEVTOOLS_EXTENSION__",data:t};window.postMessage(n),yield r}}let mn=0;const bi=()=>t=>async e=>{const r={id:mn++,name:e.url,stream:e.stream,sent_at:Date.now(),request:{header:Object.fromEntries(e.header.entries()),message:e.message},response:{}};window.postMessage({type:"__GRPC_DEVTOOLS_EXTENSION__",data:r});try{const n=await t(e);if(r.received_at=Date.now(),r.response.header=Object.fromEntries(n.header.entries()),r.response.trailer=Object.fromEntries(n.trailer.entries()),e.stream){const i={type:"__GRPC_DEVTOOLS_EXTENSION__",data:{...r,stream:!1}};return window.postMessage(i),{...n,message:mi(r,n.message)}}else{r.response.message=n.message,r.latency=r.received_at-r.sent_at;const i={type:"__GRPC_DEVTOOLS_EXTENSION__",data:r};window.postMessage(i)}return n}catch(n){r.received_at=Date.now(),r.response.trailer={"grpc-status":n.code,"grpc-message":n.rawMessage},r.response.message=n.rawMessage,r.latency=r.received_at-r.sent_at;const i={type:"__GRPC_DEVTOOLS_EXTENSION__",data:r};throw window.postMessage(i),n}};window.dispatchEvent(new CustomEvent("grpc_devtools_loaded"));function bn(t){return t instanceof DOMException&&(t.code===22||t.code===1014||t.name==="QuotaExceededError"||t.name==="NS_ERROR_DOM_QUOTA_REACHED")}class Qe{delimiter=":";prefix;storage;constructor(e="main",r=window.localStorage){this.prefix=`sl-sdk${this.delimiter}${e}`,this.storage=r}clear=()=>{for(const e in window.localStorage)e.startsWith(this.prefix)&&this.storage.removeItem(e)};generateKey=e=>`${this.prefix}${this.delimiter}${e.join(this.delimiter)}`;write=(...e)=>{const r=e.pop()||"",n=this.generateKey(e);try{this.storage.setItem(n,r)}catch(i){bn(i)&&this.storage===window.sessionStorage&&(window.sessionStorage.removeItem("slstreamlogs"),this.storage.setItem(n,r))}};read=(...e)=>{const r=this.storage.getItem(this.generateKey(e));return r===null?void 0:r};remove=(...e)=>{this.storage.removeItem(this.generateKey(e))}}var Z;(function(t){t.Init="init",t.Ready="ready",t.Connecting="connecting",t.Connected="connected",t.Disconnected="disconnected",t.Failed="failed",t.Reconnect="reconnect",t.Reconnecting="reconnecting"})(Z||(Z={}));class vi{params;streamCancel;method;options;headers;listeners;state;store;paramsListener;reconnectTimeout;attempt=0;constructor(e,r,n,i){const o={status:Z.Init,ts:new Date,log:[]};this.state=new Ae(H(o),`subscription:${i.name}:state`),this.options={...i,reconnectDelay:i.reconnectDelay??1e3,reconnectMaxDelay:i.reconnectMaxDelay??3e4,reconnectMaxAttempts:i.reconnectMaxAttempts??10,withStore:i.withStore??!1},this.headers=e,this.listeners=new Map,this.params=n,this.method=r,i.withStore&&(this.store=new Y(j(null),`subscription:${i.name}:store`)),"subscribe"in n&&typeof n.subscribe=="function"&&(this.paramsListener=n.subscribe(s=>{this.state.getValue("status")===Z.Connected&&(this.addStateLog(`params updated, reconnect => ${JSON.stringify(s)}`),this.reconnect())})),this.updateState(Z.Ready)}updateState=e=>{this.state.setValue("status",e),this.state.setValue("ts",new Date),this.addStateLog(`status => ${e}`)};addStateLog=e=>{const r=this.state.getStore().get().log,n=`${this.options.name} ${new Date().toISOString()}: ${e}`;if(r.push(n),this.state.setValue("log",r),localStorage.getItem("SL_DEBUG"))try{window.sessionStorage.setItem("slstreamlogs",window.sessionStorage.getItem("slstreamlogs")+`
|
|
2
|
-
`+n)}catch(i){bn(i)&&window.sessionStorage.removeItem("slstreamlogs"),window.sessionStorage.setItem("slstreamlogs",n)}};addListener=(e,r)=>this.listeners.has(e)?(this.addStateLog(`listener '${e}' not added, already exists`),()=>{}):(this.listeners.set(e,r),this.addStateLog(`listener '${e}' added`),()=>this.removeListener(e));removeListener=e=>{this.listeners.delete(e),this.addStateLog(`listener '${e}' removed`)};connect=()=>{this.updateState(Z.Connecting),this.streamCancel&&(this.addStateLog("disconnect prev connection"),this.streamCancel.abort(),this.streamCancel=void 0);const e="get"in this.params&&typeof this.params.get=="function"?this.params.get():this.params;(async()=>{this.streamCancel=new AbortController;try{const n={headers:this.headers.getValues(),signal:this.streamCancel.signal},i=this.method(e,n);for await(const o of i)this.attempt=0,this.onData(o)}catch(n){n instanceof M.ConnectError&&n.code!=M.Code.Canceled&&this.onStreamError(n)}})(),this.updateState(Z.Connected)};disconnect=()=>{this.streamCancel&&this.streamCancel.abort(),this.listeners.clear(),this.paramsListener?.(),clearTimeout(this.reconnectTimeout),this.reconnectTimeout=void 0,this.updateState(Z.Disconnected)};reconnect=()=>{if(this.reconnectTimeout)this.addStateLog("already reconnecting");else if(this.attempt<this.options.reconnectMaxAttempts){this.updateState(Z.Reconnect);const e=Math.min(this.options.reconnectMaxDelay,Math.pow(2,this.attempt)*this.options.reconnectDelay),r=Math.round(e*(1+Math.random())/2);this.reconnectTimeout=setTimeout(()=>{this.attempt++,this.updateState(Z.Reconnecting),this.addStateLog(`reconnect attempt ${this.attempt} after ${r}ms`),this.connect(),this.reconnectTimeout=void 0},r)}else this.addStateLog("max reconnect attempts reached"),this.disconnect()};getStore=()=>this.store?.getStore();onData=e=>{try{this.addStateLog(`received data => ${JSON.stringify(e)}`),this.store&&this.store.setValue(e);for(const[,r]of this.listeners)r(e);this.addStateLog(`data routed to ${this.listeners.size} listeners`)}catch(r){this.addStateLog(`error process data => ${r}`)}};onStreamError=e=>{if(this.addStateLog(`error => ${e?JSON.stringify(e):"undefined"}}`),e!==void 0){if(e instanceof M.ConnectError&&e.code!==M.Code.Canceled){this.updateState(Z.Failed),this.state.setValue("error",e),this.reconnect();return}this.disconnect()}}}const Si=new Set([M.Code.Unknown,M.Code.Internal,M.Code.DeadlineExceeded,M.Code.ResourceExhausted,M.Code.FailedPrecondition,M.Code.Unavailable,M.Code.DataLoss]),Nr=ge("grpc:retry"),wi=t=>async e=>{const r=e.contextValues.get(tr.retryAttempts),n=300,i=e.contextValues.get(tr.retryDelay);if(e.stream||r===0)return t(e);Nr.trace({url:e.url,attempts:r,maxDelay:i},"retry options");for(let o=0;;o++)try{return await t(e)}catch(s){Nr.trace({attempt:o,error:s},"retry attempt");const a=M.ConnectError.from(s);if(o>=r||!(a instanceof M.ConnectError)||!Si.has(a.code))throw s;const u=Math.min(i,Math.pow(2,o)*n),l=Math.round(u*(1+Math.random())/2);await new Promise(c=>setTimeout(c,l))}},tr={retryAttempts:M.createContextKey(10,{description:"Number of attempts to retry"}),retryDelay:M.createContextKey(3e4,{description:"Max delay between retries in milliseconds"})},Ti=()=>{const t=localStorage.getItem("sl-device-id");if(t)return t;const e=Xt.nanoid();return localStorage.setItem("sl-device-id",e),e},Ai=()=>navigator.userAgentData?.platform||navigator.platform;class Fr{toJsonOptions={emitDefaultValues:!1,enumAsInteger:!0,useProtoFieldName:!1};transport;streamTransport;nanoquery;host;$headers;interceptors=[];clients;streamClients;subscriptions;opts;constructor(e,r){this.host=e,this.opts=r,this.$headers=new Ae(H({"sl-device-id":Ti(),"sl-device-os":Ai()}),"transport:headers"),this.initInterceptors(),this.clients=new Map,this.streamClients=new Map,this.subscriptions=new Map;const[n,i,o]=Lr.nanoquery({dedupeTime:r?.dedupeTime,refetchInterval:r?.refetchInterval});this.nanoquery={createFetcherStore:n,createMutatorStore:i,utils:o},this.transport=kr.createGrpcWebTransport({baseUrl:e,defaultTimeoutMs:1e4,interceptors:this.interceptors}),this.streamTransport=kr.createGrpcWebTransport({baseUrl:e,interceptors:this.interceptors})}addSubscription=(e,r,n)=>{const i=this.subscriptions.get(r);if(i)return i;const o=new vi(this.$headers,e,r,n);return this.subscriptions.set(r,o),o};removeSubscription=e=>{e.disconnect(),this.subscriptions.delete(e.params)};disconnect=()=>{for(const[i,o]of this.subscriptions)o.disconnect(),this.subscriptions.delete(i);this.clients.clear(),this.streamClients.clear(),this.subscriptions.clear();const[e,r,n]=Lr.nanoquery({dedupeTime:this.opts?.dedupeTime,refetchInterval:this.opts?.refetchInterval});this.nanoquery={createFetcherStore:e,createMutatorStore:r,utils:n}};registerInterceptor=e=>{this.interceptors.push(e)};removeInterceptor=e=>{this.interceptors=this.interceptors.filter(r=>r!==e)};getClient=e=>{const r=e.typeName;if(this.clients.has(r))return this.clients.get(r);const n=M.createPromiseClient(e,this.transport);return this.clients.set(r,n),n};getStreamClient=e=>{const r=`stream-${e.typeName}`;if(this.clients.has(r))return this.clients.get(r);const n=M.createPromiseClient(e,this.streamTransport);return this.clients.set(r,n),n};createPromiseClient=(e,{params:r=[],method:n})=>{const i=this.getClient(e),o=e.methods[n].name,s=[e.typeName,o.charAt(0).toLowerCase()+o.slice(1),...Array.isArray(r)?r:[r]],a=[e.typeName,o.charAt(0).toLowerCase()+o.slice(1)];return{client:i,createRequestOptions:l=>{const c=M.createContextValues();for(const f in l){const p=tr[f];c.set(p,l[f])}return c},queryKey:s,queryKeyStr:a.join("")}};createStreamClient=e=>({client:this.getStreamClient(e)});setSdkKey=e=>{this.$headers.setValue("sdk",e)};setAuth=(e,r)=>{this.$headers.setValue("authorization",e),this.$headers.setValue("sl-user-id",r)};setHeader=(e,r)=>this.$headers.setValue(e,r);getHeader=e=>this.$headers.getValue(e);getHeaders=()=>this.$headers.getValues();initInterceptors=()=>{if(this.interceptors.length!==0)return;const e=r=>n=>{const i=this.$headers.getValues();for(const o in i)n.header.set(o,i[o]);return r(n)};this.interceptors.push(e),this.interceptors.push(bi()),this.opts?.retryable&&this.interceptors.push(wi)}}const Ei=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(cn.Events,{method:"retrieveEventId",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>{if(!s||typeof s!="string")return"";try{return(await r.retrieveEventId({id:s})).data?.id||""}catch{return""}}})},Ii=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(Je.Client,{method:"getStream",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>s?(await r.getStream({id:s})).data?.attributes:void 0})},Oi=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(cn.Events,{method:"summary",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>s?(await r.summary({id:s})).data?.attributes:void 0})},_i=(t,e)=>{const{queryKey:r,client:n}=e.createPromiseClient(pr.Users,{method:"me",params:[t]});return e.nanoquery.createFetcherStore(r,{fetcher:async()=>{const{data:i}=await n.me({});return{data:i}}})},Ci=t=>{const{client:e,createRequestOptions:r}=t.createPromiseClient(pr.Users,{method:"bypassAuth"}),n=r({retryAttempts:0});return({userKey:i,schema:o,init:s,inviterKey:a})=>e.bypassAuth({userKey:i,schema:o,init:s,inviterKey:a},{contextValues:n})},ki=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(Je.Client,{method:"get",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async()=>(await r.get({})).data?.attributes})},Li=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(Je.Client,{method:"getOrganization",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async()=>{const i=await r.getOrganization({});return i.data?{...i.data.attributes,id:i.data.id}:void 0}})},Pi=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(Je.Client,{method:"getOrganizationAdvertising",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async()=>(await r.getOrganizationAdvertising({})).data?.attributes})},Ni=(t,e,r)=>{t.transport=new Fr(e.host,{dedupeTime:1e3*60*5,refetchInterval:1e3*60*5,retryable:!0}),t.analyticsTransport=new Fr(e.analyticsHost),t.sdk.host=t.transport.host,t.transport.setSdkKey(e.sdkKey),t.transport.setHeader("sl-sdk-version",e.version||"-"),t.transport.$headers.subscribe(n=>{t.analyticsTransport.$headers.getStore().set(n)}),t.sdk.onMount({name:"transport"},()=>()=>{t.transport.disconnect(),t.analyticsTransport.disconnect()}),r()};var le;(function(t){t.SCHEMA="schema",t.EXTERNAL_TOKEN="eToken",t.TOKEN="token"})(le||(le={}));class Re extends Qe{constructor(){super("user")}setSchema=e=>{this.write(le.SCHEMA,e)};getSchema=()=>this.read(le.SCHEMA);setToken=e=>{this.write(le.TOKEN,e)};getToken=()=>this.read(le.TOKEN);setExternalToken=e=>{this.write(le.EXTERNAL_TOKEN,e)};getExternalToken=()=>this.read(le.EXTERNAL_TOKEN);removeToken=()=>{this.remove(le.TOKEN)}}var fe;(function(t){t.DISABLED="disabled",t.INITIALIZATION="initialization",t.READY="ready",t.FAILED="failed",t.SUSPENDED="suspended"})(fe||(fe={}));const Fi=t=>{const e=new Re,r=new Y(j(e.getExternalToken()),"userKey"),n=new Y(j(e.getToken()),"userToken"),i=new ae(_i(n.getStore(),t),"user",({data:s,error:a,loading:u},l)=>{if(!a)return s?.data?.id?s.data.id:u===!1?void 0:l}),o=new ae(ki(n.getStore(),t),"userSettings");return{userKey:r,userToken:n,user:i,userSettings:o}},Di=t=>{const e=new Y(j(void 0),"providerStreamId"),r=new ae(Ei(e.getStore(),t),"slStreamId",o=>o?.data),n=new ae(Ii(r.getAtomStore(),t),"streamSettings"),i=new ae(Oi(r.getAtomStore(),t),"streamSettings");return r.getAtomStore().listen(o=>{(o===""||o===void 0)&&(n.getStore().mutate(void 0),i.getStore().mutate(void 0))}),{providerStreamId:e,slStreamId:r,streamSettings:n,streamSummary:i}},Ri=t=>{const e=new Y(j(void 0),"enabled"),r=new Y(j(fe.DISABLED),"status"),n=new ae(Li(e.getStore(),t),"organizationSettings",a=>a?.data?.id),i=new ae(Pi(n.getAtomStore(),t),"organizationAdvertising"),o=Fi(t),s=Di(t);return{enabled:e,status:r,providerStreamId:s.providerStreamId,slStreamId:s.slStreamId,streamSettings:s.streamSettings,streamSummary:s.streamSummary,user:o.user,userKey:o.userKey,userToken:o.userToken,userSettings:o.userSettings,organizationSettings:n,organizationAdvertising:i}};class Vi extends It{stores;constructor(e){const r=Ri(e),n=yi(r);super(n,"core"),this.stores=r}getValue(){throw new Error("Not implemented")}getValues(){return this.stores}setValue(){throw new Error("Not implemented")}subscribe=e=>{let r;for(r in this.stores){const n=e[r];r in e&&n!==void 0&&this.stores[r].subscribe(e[r])}};unsubscribe=()=>this.getStore().off()}const $i=(t,e,r)=>{t.store=new Vi(t.transport),t.stores=t.store.getValues(),t.sdk.enabled=t.stores.enabled.getStore(),t.sdk.status=t.stores.status.getStore(),t.sdk.sdkStore=Object.fromEntries(Object.entries(t.stores).map(([n,i])=>[n,i.getStore()])),t.sdk.organizationStore=()=>t.stores.organizationSettings.getStore(),t.sdk.streamStore=()=>t.stores.streamSettings.getStore(),t.sdk.streamSummary=()=>t.stores.streamSummary.getStore(),t.storeUnsubscribe=()=>{t.store.unsubscribe()},r()},qi=t=>{const{client:e}=t.createPromiseClient(ln.Leaderboard,{method:"list"});return r=>e.list(r)},vn=t=>{const{client:e}=t.createPromiseClient(ln.Leaderboard,{method:"summary"});return r=>e.summary(r)},Mi=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(pr.Users,{method:"getFriends",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>{if(!s)return[];try{return(await r.getFriends({})).data}catch{return[]}}})},Bi=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(J.Feed,{method:"get",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>(await r.get({eventId:s})).data?.attributes,refetchInterval:0,dedupeTime:1e3*60*60})},ji=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(J.Feed,{method:"syncQuestion",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>{if(!s)return;const a=await r.syncQuestion({filter:{eventId:s}});if(a.data?.attributes?.question?.type!==w.QuestionType.PROMOTION)return a.data?.attributes},dedupeTime:1e3*60*10,refetchInterval:0})},Ui=async(t,e)=>{const{client:r}=e.createPromiseClient(J.Feed,{method:"item",params:[t]});return(await r.item({id:t})).data},Qi=(t,e)=>{const{client:r}=e.createStreamClient(J.Feed),n=te.atom({eventId:t.get()||"",feedId:""});return t.subscribe((o="")=>{n.set({eventId:o,feedId:""})}),e.addSubscription(r.subscription,n,{name:"feedSubscription"})},xi=(t,e)=>{const{client:r}=e.createStreamClient(J.Feed);return e.addSubscription(r.questionSubscription,{questionId:t},{name:"questionSubscription"})},Gi=async(t,e)=>{const{client:r}=e.createPromiseClient(J.Feed,{method:"questionByUser",params:[t]});return(await r.questionByUser({questionId:t})).data?.attributes?.question},rr=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(J.Feed,{method:"questionByUser",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>(await r.questionByUser({questionId:s})).data?.attributes?.question,dedupeTime:1e3*60*5})},Sn=async(t,e)=>{if(!t)return;const{client:r}=e.createPromiseClient(J.Feed,{method:"getQuestion",params:[t]}),n=await r.getQuestion({id:t});if(!n.data?.attributes)return;const{options:i,notification:o,...s}=n.data.attributes,a=i?.options.case==="promotion"?i?.options.value:void 0;return{id:s.id,question:s,promotion:a,notification:o}},Ki=(t,e,r)=>{const{client:n,queryKey:i}=r.createPromiseClient(J.Feed,{method:"list",params:[t,e]});return r.nanoquery.createFetcherStore(i,{fetcher:async(o,s,a,u)=>a?(await n.list({eventId:a,filter:{types:u===Ee.ALLOWED?[]:[w.QuestionType.FACTOID,w.QuestionType.PROMOTION,w.QuestionType.TWEET],statuses:[w.QuestionStatus.ACTIVE,w.QuestionStatus.RESOLVED]}})).data:[],dedupeTime:0,refetchInterval:0})},zi=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(J.Feed,{method:"list",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>{if(!s)return;const u=(await r.list({eventId:s,filter:{types:[w.QuestionType.PROMOTION],statuses:[w.QuestionStatus.ACTIVE]},pagination:{page:0,pageSize:1}})).data?.[0];if(u.type==="promotion")return Sn(u.id,e)},dedupeTime:0,refetchInterval:0})},Hi=(t,e,r)=>{const n=te.batched([e,r],()=>{const a=e.get();if(!a)return;const u=r.get().data?.find(c=>c.id===a?.questionId),l=a?.question?.openedFrom;return u?(u.openedFrom=l,u):a.question}),i=te.batched(n,a=>a&&a.type==="question"?a.id:void 0),o=rr(i,t);return{$store:n,$extendedStore:o,updateExtendedQuestion:a=>{const u=o.get().data,l=(c,f)=>{if(!c||!f)return c||f||[];const p=[];for(let S=0;S<c.length;S++)p.push({...c[S],...f[S],correct:c[S].correct,youVoted:c[S].youVoted,pointsEarned:c[S].pointsEarned});return p};o.mutate({...a,options:u?.options,subject:u?.subject,appearance:u?.appearance,answers:l(u?.answers,a?.answers)})}}};var gt;(function(t){t.SHOWED="showed"})(gt||(gt={}));class Wi extends Qe{constructor(){super("advertisement")}setShowed=e=>{this.write(gt.SHOWED,e,"true")};isViewed=e=>this.read(gt.SHOWED,e)}const Yi=t=>{const e=t.data?.attributes?.question;if((t.data?.attributes?.feedItem?.type==="promotion"?t.data.attributes.feedItem:void 0)===void 0||!e)return;const{options:n,notification:i,...o}=e,s=n?.options.case==="promotion"?n.options.value:void 0;return{id:o.id,question:o,notification:i,promotion:s}},ot=t=>t.startsWith("http://")||t.startsWith("https://")?new URL(t).toString():t,Ji=({gamOptions:t,gamBaseUrl:e})=>{const r=`${e}?`,n=[];for(const i in t){const o=i.replace(/([a-zA-Z])(?=[A-Z])/g,"$1_").toLowerCase(),s=t[i];if(s)if(typeof s=="string")n.push(`${o}=${ot(s)}`);else if(Array.isArray(s))n.push(`${o}=${s.map(ot).join(",")}`);else{const a=Object.entries(s).map(([u,l])=>Array.isArray(l)?`${u}=${l.map(ot).join(",")}`:typeof l=="string"?`${u}=${ot(l)}`:`${u}=${l}`).join("&").replaceAll("=","%3D").replaceAll("&","%26").replaceAll(",","%2C");n.push(`${o}=${a}`)}}return r+n.join("&")},st=t=>(t?.promotion?.type===w.PromotionType.INGAME_IAB11_LBAR||t?.promotion?.type===w.PromotionType.INGAME_IAB21_LBAR)&&!!t.promotion.additionalBanner?.imageUrl,Xi=(t,e,r)=>{let n=!1;const i=r.transport,o=ge("advertisement"),s=new Wi,a=H({}),u=zi(t,i),l=()=>{a.setKey("hasNotification",!1);const b=a.get(),m=b.data?.question.id,T=b.data?.promotion?.type;m&&G.emit("advertisement",{action:"notification-opened",payload:{id:m,type:T,hasBanner:st(b.data)}})},c=()=>{const b=a.get(),m=b.data?.question.id,T=b.data?.promotion?.type,V=a.get()?.isOpened;m&&!V&&(o.debug({id:m},"markAsViewed: %o"),s.setShowed(m),a.setKey("isOpened",!0),G.emit("advertisement",{action:"opened",payload:{id:m,type:T,hasBanner:st(b.data)}}))},f=(b,m)=>{m?a.set({loading:!1,error:void 0,data:m,hasNotification:m?.notification?.enabled===w.NotificationEnabled.NOTIFICATION_ENABLED,close:()=>p(m.question.id),togglePause:T=>S(m.question.id,T),isViewed:!!s.isViewed(m.question.id)}):(a.setKey("loading",!0),Sn(b,i).then(T=>a.set({loading:!1,error:void 0,data:T,hasNotification:T?.notification?.enabled===w.NotificationEnabled.NOTIFICATION_ENABLED,close:()=>p(T?.question.id),togglePause:V=>S(T?.question.id,V),isViewed:T&&!!s.isViewed(T.question.id)})).catch(T=>a.set({loading:!1,error:T,data:void 0})))};a.subscribe((b,m)=>{if(!(b.data?.id===m?.data?.id&&b.isPaused!==m?.isPaused)){if(b.data?.promotion?.type===w.PromotionType.EXTERNAL_AD&&!b?.externalAd&&b.data.promotion.adCampaigns?.gamOptions&&b.data.promotion.adCampaigns?.gamBaseUrl){const T=Ji(b.data.promotion.adCampaigns);a.setKey("externalAd",{type:"gam",url:T})}b.data?.promotion&&!b.isOpened&&G.emit("advertisement",{action:"received",payload:{id:b.data.question.id,type:b.data.promotion.type,hasNotification:!!b.hasNotification,hasBanner:st(b.data),isViewed:!!s.isViewed(b.data.question.id)},skipAnalytics:b.data.question.id===m?.data?.question.id}),!b?.data&&m?.data&&G.emit("advertisement",{action:"closed",payload:{id:m.data.question.id,type:m.data.promotion?.type,hasNotification:!!m.hasNotification,hasBanner:st(m.data),isViewed:!!s.isViewed(m.data.question.id)}})}});const p=b=>{(!b||a.get()?.data?.question.id===b)&&a.set({})},S=(b,m)=>{a.get()?.data?.question.id===b&&a.setKey("isPaused",m)};return{connect:()=>{n||(n=!0,u.subscribe((b,m)=>{b.data&&(!m?.data||b.data.id!==m.data.id)&&f(b.data.question.id,b.data)}),e.addListener("promotion",b=>{const m=Yi(b);if(m){if(m.question.status===w.QuestionStatus.RESOLVED){p(m.question.id),o.debug({promotion:m},"resolved: %o");return}if(m.question.status===w.QuestionStatus.ACTIVE){o.debug({promotion:m},"active: %o"),f(m.question.id,m);return}o.debug({promotion:m},"skip: %o")}}))},hide:p,show:f,open:l,markAsViewed:c,$store:a}};var Ee;(function(t){t.ALLOWED="allowed",t.DISALLOWED="disallowed"})(Ee||(Ee={}));class Zi{slStreamId;organizationId;userId;interactiveAllowed;openedQuestionId;openedQuestion;activeQuestionId;feedList;moderationId;moderation;feedSubscription;questionSubscription;advertisement;notifications;log;transport;cancels=new Set;constructor(e){this.transport=e.transport,this.log=ge("gamification-background"),this.slStreamId=e.stores.slStreamId.getAtomStore(),this.organizationId=e.stores.organizationSettings.getAtomStore(),this.userId=e.stores.user.getAtomStore(),this.moderationId=new Y(j(void 0),"moderationId").getStore(),this.interactiveAllowed=new Y(j(Ee.DISALLOWED),"interactiveAllowed").getStore(),this.openedQuestionId=new Y(j(void 0),"openedQuestionId").getStore(),this.notifications=e.notifications,this.moderation=new ae(Bi(this.slStreamId,e.transport),"gamification:moderation"),this.feedList=new ae(Ki(this.slStreamId,this.interactiveAllowed,e.transport),"gamification:feedList"),this.activeQuestionId=ji(this.slStreamId,e.transport),this.openedQuestion=Hi(e.transport,this.openedQuestionId,this.feedList.getStore()),this.cancels.add(this.openedQuestionId.listen(r=>{this.log.debug({item:r},"received question"),r?.questionId?(this.questionSubscription=xi(r.questionId,e.transport),this.questionSubscription.addListener("feed-subscription-opened-question",n=>{this.openedQuestion.updateExtendedQuestion(n.data?.attributes?.question)}),this.questionSubscription.connect()):(this.log.info("cleanup on close question"),this.questionSubscription!==void 0&&(e.transport.removeSubscription(this.questionSubscription),this.questionSubscription=void 0))})),this.feedSubscription=Qi(this.slStreamId,e.transport),this.cancels.add(this.feedSubscription.addListener("feed-subscription-active-question",r=>{const n=this.activeQuestionId.get().data?.question?.id,i=r.data?.attributes?.question;if(!(!i||i.type===w.QuestionType.PROMOTION)){if(i.status===w.QuestionStatus.RESOLVED){n===i.id&&this.activeQuestionId.mutate(void 0);return}window.requestAnimationFrame(()=>{this.activeQuestionId.mutate(r.data?.attributes)})}})),this.cancels.add(this.feedSubscription.addListener("moderation update",r=>{window.requestAnimationFrame(()=>{r.data?.attributes?.question===void 0&&r.data?.attributes?.moderation&&this.moderation.invalidate()})})),this.cancels.add(this.activeQuestionId.subscribe((r,n)=>{r.data?.feedItem&&r.data?.feedItem?.id!==n?.data?.feedItem?.id&&e.onQuestionActivate({stage:"activate",id:r.data.feedItem.id,isViewed:!!this.notifications.isViewed(this.getCurrentSessionId({prefix:"notification",entity:r.data.feedItem.id})),hasNotification:!0,type:r.data.feedItem.type}),!r.data?.feedItem&&n?.data?.feedItem&&e.onQuestionActivate({stage:"deactivate",id:n.data.feedItem.id,isViewed:!!this.notifications.isViewed(this.getCurrentSessionId({prefix:"notification",entity:n.data.feedItem.id})),hasNotification:!0,type:n.data.feedItem.type})})),this.feedSubscription.connect(),this.cancels.add(this.interactiveAllowed.listen(()=>{window.requestAnimationFrame(()=>{this.activeQuestionId.invalidate()})})),e.sdk.onMount({name:"gamification-background"},()=>()=>{this.activeQuestionId.off();for(const r of this.cancels)r(),this.cancels.delete(r)}),this.advertisement=Xi(this.slStreamId,this.feedSubscription,e)}getCurrentSessionId=e=>{const r=e.eventId||this.slStreamId.get()||"",n=e.userId||this.userId.get()||"",i=e.organizationId||this.organizationId.get()||"",o=e.entity||"",s=e.prefix||"";return[i,r,n,s,o].join(":")};disconnect=()=>{this.feedSubscription?.disconnect(),this.questionSubscription!==void 0&&(this.transport.removeSubscription(this.questionSubscription),this.questionSubscription=void 0)};openQuestion=(e,r)=>{this.openedQuestionId.set({questionId:e,question:r}),this.notifications.markAsViewed(this.getCurrentSessionId({prefix:"notification",entity:e}))};closeQuestion=e=>{this.openedQuestionId.set(void 0),e&&this.notifications.markAsViewed(this.getCurrentSessionId({prefix:"notification",entity:e}))}}class eo{notificationsList;store;timeouts;waitingQueue;activeQueue;options;logger;constructor(e){this.options=e,this.logger=ge("notifications"),this.store=new Map,this.timeouts=new Map,this.waitingQueue=new Set,this.activeQueue=new Set,this.notificationsList=j(new Map)}addToQueue=e=>{if(this.store.has(e.id)){this.logger.debug({notification:e},"skip existed notification: %o");return}const r=e.close,n=e.action;if(this.store.set(e.id,{...e,close:(...i)=>{r&&r(...i),this.closeNotification(e.id)},action:(...i)=>{n&&n(...i),this.closeNotification(e.id,{animateHiding:!1})}}),this.waitingQueue.add(e.id),this.activeQueue.size===this.options.concurrency){const[i]=this.activeQueue;if(this.store.get(i)?.persistent!==!0)this.closeNotification(i);else{const[s]=this.waitingQueue;this.waitingQueue.size>1&&this.closeNotification(s),this.tickWaitingQueue()}}else this.tickWaitingQueue()};tickWaitingQueue=()=>{if(this.activeQueue.size<this.options.concurrency){const[e]=this.waitingQueue;if(!e)return;this.activeQueue.add(e),this.waitingQueue.delete(e),this.logger.debug({job:e},"waiting queue tick"),this.tickActiveQueue(e)}else this.logger.debug({queueSize:this.activeQueue.size,concurrency:this.options.concurrency},"waiting queue tick skipped")};tickActiveQueue=e=>{if(!e)return;const r=this.store.get(e);if(!r){this.logger.debug({notificationId:e},"active queue tick skipped, notification not exist");return}G.emit("notification",{action:"received",payload:{questionId:r.data.questionId,questionType:r.data.questionType}});const n=setTimeout(()=>{const i=e,o=new Map(this.notificationsList.get());o.set(r.id,r),this.notificationsList.set(o);const s=setTimeout(()=>{this.logger.debug({notificationId:i,delay:r.autoHideDuration||5e3},"notification hiding by autoHideDuration"),this.closeNotification(i)},r.autoHideDuration||5e3);this.timeouts.set(i,s),this.logger.debug({notificationId:i,queue:[...o.values()]},"notification displayed")},r.delay||0);this.timeouts.set(e,n),this.logger.debug({notificationId:e},"active queue tick completed"),this.tickWaitingQueue()};closeNotification=(e,{animateHiding:r=!0}={})=>{const n=new Map(this.notificationsList.get()),i=n.get(e);if(i){i.hiding=!(this.waitingQueue.size>=this.options.concurrency)&&r,this.notificationsList.set(n);const o=setTimeout(()=>{const s=new Map(this.notificationsList.get());s.delete(e),this.notificationsList.set(s);const a=this.timeouts.get(e);a!==void 0&&(clearTimeout(a),this.timeouts.delete(e)),this.logger.debug({notificationId:e},"notification hidden"),i.hiding&&G.emit("notification",{action:"closed",payload:{questionId:i.data.questionId,questionType:i.data.questionType}})},this.options.animationDelay||0);this.timeouts.set(e,o)}return this.store.delete(e),this.activeQueue.delete(e),this.waitingQueue.delete(e),this.tickWaitingQueue(),this.logger.debug({notificationId:e},"notification hiding"),i};drain=()=>{this.store.clear(),this.timeouts.clear(),this.waitingQueue.clear(),this.activeQueue.clear(),this.notificationsList.off(),this.notificationsList.set(new Map)}}var mt;(function(t){t.OPENED="opened"})(mt||(mt={}));class to extends Qe{constructor(){super("notification")}setOpened=e=>{this.write(mt.OPENED,e,"true")};isOpened=e=>this.read(mt.OPENED,e);clearNotification=()=>{this.clear()}}var be;(function(t){t[t.ONBOARDING=1]="ONBOARDING",t[t.QUESTION=2]="QUESTION",t[t.QUESTION_RESOLVED=3]="QUESTION_RESOLVED"})(be||(be={}));class ro{queue;storage;constructor(e={}){this.storage=new to,this.queue=new eo({concurrency:1,animationDelay:1600,...e})}isViewed=e=>this.storage.isOpened(e);add=e=>{if(!this.isViewed(e.id)){if(e.data&&e.emitEvent){const n=e.action;e.action=(...i)=>{n&&n(...i),G.emit("notification",{action:"opened",payload:{questionId:e.data.questionId,questionType:e.data.questionType}})}}this.queue.addToQueue(e)}};close=(e,{markAsViewed:r=!0,animateHiding:n}={})=>{this.queue.closeNotification(e,{animateHiding:n}),r&&this.markAsViewed(e)};getActiveNotification=()=>{const e=this.queue.notificationsList.get();if(!e?.size)return null;for(const n of e.values())if(n.type===be.ONBOARDING)return n;return e.values().next().value};getQueueStore=()=>this.queue.notificationsList;markAsViewed=e=>{this.storage.setOpened(e)}}const no=(t,e,r)=>{t.notifications=new ro(void 0),t.addNotification=t.notifications.add,t.sdk.getNotificationsStore=()=>t.notifications.getQueueStore(),t.sdk.getActiveNotification=()=>t.notifications.getActiveNotification(),t.sdk.onMount({name:"notifications"},()=>()=>{t.notifications.queue.drain()}),r()};var Ye;(function(t){t.UNKNOWN="unknown",t.ALREADY_VOTED="already_voted"})(Ye||(Ye={}));const io=async(t,e)=>{const{client:r,createRequestOptions:n}=t.createPromiseClient(J.Feed,{method:"submitAnswer"}),i=n({retryAttempts:0});try{return await r.submitAnswer({data:e},{contextValues:i})}catch(o){throw M.ConnectError.from(o)?.code===M.Code.AlreadyExists?new Error(Ye.ALREADY_VOTED):new Error(Ye.UNKNOWN)}},oo=(t,e)=>{const{client:r,createRequestOptions:n}=t.createPromiseClient(J.Feed,{method:"submitInplay"}),i=n({retryAttempts:0});return r.submitInplay({data:{eventId:+e}},{contextValues:i})};var Ve;(function(t){t.ONBOARDING="onboarding",t.ONBOARDING_IO="onboarding_io"})(Ve||(Ve={}));class so extends Qe{constructor(){super("gamification-session",window.sessionStorage)}writeValue=(e,r)=>{this.write(...e,r)};readValue=e=>this.read(...e)}class wn extends Qe{sessionStorage;constructor(){super("gamification"),this.sessionStorage=new so}saveOnboardingStatus=({userId:e,eventId:r,organizationId:n},i)=>{this.write(Ve.ONBOARDING,n,e,r,i)};getOnboardingStatus=({userId:e,eventId:r,organizationId:n})=>this.read(Ve.ONBOARDING,n,e,r);setOnboardingInstantOpen=({userId:e,eventId:r,organizationId:n})=>{this.sessionStorage.writeValue([Ve.ONBOARDING_IO,n,e,r],"1")};getOnboardingInstantOpen=({userId:e,eventId:r,organizationId:n})=>this.sessionStorage.readValue([Ve.ONBOARDING_IO,n,e,r])}const ao={pageSize:10},uo=(t,e,r,n,i)=>{let o=0;const s=j({pageSize:ao.pageSize,page:0}),a=H({data:[],key:Date.now(),hasMore:!0,loading:void 0,error:void 0}),u=qi(t),l=async()=>{const p=e.get(),S=n.getStore().get().data?.map(A=>A.slId)||[];if(p&&S?.length){const A=r.get();A&&S.push(A),a.setKey("loading",!0),a.setKey("data",[]);const m=await u({eventId:p,usersIds:S});a.set({data:m.data.map((T,V)=>({...T.attributes,friendsRank:V+1})),hasMore:!1,key:Date.now(),loading:!1}),m.meta&&(o=Math.round(m.meta.count/m.meta.pageSize))}},c=()=>{l()},f=p=>{const S=s.get(),A=p||S.page+1;A<=o&&s.set({...S,page:A})};return te.onMount(a,()=>{const p=e.listen(l),S=n.listen(l);return()=>{p(),S()}}),{$store:a,fetchMore:f,invalidate:c}};class co extends Qe{get=this.read;set=this.write;del=this.remove;constructor(){super("deep-link-context",window.sessionStorage)}}const Dr="sldl",Ot="sldl_uid",Tn="sldl_eid",An="sldl_e_eid",lo=new Set([Ot,Tn,An]),Rr=t=>{const e={},r={};for(const[n,i]of t)lo.has(n)?e[n]=i:r[n]=i;return{result:e,remain:r}},fo=({hash:t,search:e})=>{if(t&&t.includes(Dr)){const r=new URLSearchParams(t.substr(1));return{hash:Rr(r)}}if(e&&e.includes(Dr)){const r=new URLSearchParams(e);return{search:Rr(r)}}return null},Vr=ge("deep_link"),se={debug:(...t)=>{Vr.debug(...t),localStorage.getItem("SL_DEBUG")&&console.log(...t)},trace:(...t)=>{Vr.trace(...t),localStorage.getItem("SL_DEBUG")&&console.log(...t)}},po=(t,e)=>{const{hash:r,search:n}=window.location;if(se.debug({hash:r,search:n},"get deep link data from"),r||n){const i=fo({hash:r,search:n});if(se.debug(i,"parse deep link result"),i){const{hash:o,search:s}=i,{result:a,remain:u}=o||s;if(Object.keys(a).length!==0){t.setValue("data",a);const l=Object.keys(u).length!==0;if(o){let c="";l&&(c=`#${new URLSearchParams(u).toString()}`,se.debug({updatedHash:c},"update hash")),window.history.replaceState(null,"",window.location.pathname+window.location.search+c)}if(s){let c="";l&&(c=`?${new URLSearchParams(u).toString()}`,se.debug({updatedSearch:c},"update search")),window.history.replaceState(null,"",window.location.pathname+c+window.location.hash)}e(a)}}}t.setValue("parsed",!0)},ho=(t,e,r)=>{const n=new co,i=n.get("sl-deep-link-store");let o={};if(i)try{o=JSON.parse(i)}catch(a){se.debug(a)}t.deepLink={$store:new Ae(H(o),"deep-link-context"),getDeepLinkData:()=>{const{data:a,used:u}=t.deepLink.$store.getValues();return{data:a,used:u}},deepLinkUsed:a=>{se.debug(`logged in with inviterId: ${a}`),t.deepLink.$store.setValue("used",!0)},onDeepLinkHandlers:new Set},t.sdk.getInviter=()=>{const{data:a,used:u}=t.deepLink.getDeepLinkData();return u?a?.[Ot]:void 0},t.sdk.inviteDisplayed=()=>{t.deepLink.$store.getStore().set({}),t.deepLink.$store.getStore().off(),n.del("sl-deep-link-store")},t.deepLink.$store.subscribe(a=>n.set("sl-deep-link-store",JSON.stringify(a))),t.sdk.addDeepLinkHandler=a=>{localStorage.getItem("SL_DEBUG")&&se.trace("adding deep link handler"),t.deepLink.onDeepLinkHandlers.add(a)},e.onDeepLinkHandled&&t.sdk.addDeepLinkHandler(e.onDeepLinkHandled),t.sdk.removeDeepLinkHandler=a=>{se.trace("removing deep link handler"),t.deepLink.onDeepLinkHandlers.delete(a)};const s=a=>{t.deepLink.$store.setValue("handled",!0),se.trace({size:t.deepLink.onDeepLinkHandlers.size},"deep link handled, call callbacks");for(const u of t.deepLink.onDeepLinkHandlers)try{se.trace("called handler"),u(a)}catch(l){console.error(l)}};po(t.deepLink.$store,s),r()},yo=ge("bypass");class go extends hi{$coreStore;deepLink;transport;bypassLogin;constructor(e,r,n){super(),this.$coreStore=e,this.deepLink=n,this.transport=r,this.bypassLogin=Ci(this.transport),this.connect()}me=async()=>(this.$coreStore.getValues().user.invalidate(),(await this.$coreStore.getValues().user.getValue())?.data);login=async(e,r)=>{this.$coreStore.getValues().userKey.setValue(r);const{used:n,data:i}=this.deepLink.getDeepLinkData(),o=n?"":i?.[Ot];yo.debug({inviterKey:o},"login with inviterKey");const s=await this.bypassLogin({schema:e,userKey:r,inviterKey:o,init:!1}),a=s.meta?.jwt,u=s.data?.id;if(!a||!u)throw new Error("internal: token missing");return s.meta?.inviterKey&&this.deepLink.deepLinkUsed(s.meta.inviterKey),this.$coreStore.getValues().user.getStore().mutate({data:s.data}),this.saveUser(a,u),a};isAuthenticated=()=>this.me();logout=()=>{this.$coreStore.getValues().user.setValue(),this.$coreStore.getValues().userKey.setValue(),this.$coreStore.getValues().userToken.setValue(),this.transport.setAuth("",""),new Re().clear()};softLogout=()=>{const e=new Re;this.transport.setAuth("",""),e.setToken(""),this.reLogin()};reLogin=()=>{const e=new Re,r=e.getToken(),n=e.getExternalToken();if(this.$coreStore.getValues().userKey.setValue(n),r)return this.saveUser(r,""),this.me().then(i=>{if(i?.id){const o=i.id;this.saveUser(r,o)}});if(n&&!r){const i=e.getSchema();i&&n&&this.login(i,n).catch(()=>{this.logout()})}};saveUser=(e,r)=>{this.transport.setAuth(e,r),this.$coreStore.getValues().userToken.setValue(e),new Re().setToken(e)};connect=()=>{this.transport.registerInterceptor(e=>async r=>{try{return await e(r)}catch(n){throw n.code&&(n.code===7||n.code===16)&&this.transport.getHeader("authorization")&&this.softLogout(),n}})}}const Ke=new Re,mo=(t,e,r)=>{t.auth=new go(t.store,t.transport,t.deepLink),t.stores.status.listen(n=>{n===fe.READY&&t.auth.reLogin()}),t.sdk.userId=t.stores.user.getAtomStore,t.sdk.authorizationBypass=async(n,i)=>{if(!(Ke.getSchema()===n&&Ke.getExternalToken()===i&&t.transport.getHeader("authorization")))try{await t.auth.login(n,i),Ke.setSchema(n),Ke.setExternalToken(i)}catch{t.sdk.logout()}},t.sdk.logout=()=>{t.auth.logout(),Ke.clear()},t.sdk.getUserStore=()=>t.stores.user.getStore(),t.sdk.isUserAuthorized=()=>t.auth.isAuthenticated(),r()},$r=ge("video_player"),at={debug:(...t)=>{$r.debug(...t),localStorage.getItem("SL_DEBUG")&&console.log(...t)},trace:(...t)=>{$r.trace(...t),localStorage.getItem("SL_DEBUG")&&console.log(...t)}},bo=(t,e,r)=>{t.videoPlayer={controllers:new Set},t.sdk.addVideoPlayerController=n=>{at.trace("adding video player controller"),t.videoPlayer.controllers.add(n)},e.videoPlayerController&&t.sdk.addVideoPlayerController(e.videoPlayerController),t.sdk.removeVideoPlayerController=n=>{at.trace("removing video player controller"),t.videoPlayer.controllers.delete(n)},t.sdk.controlVideoPlayer=n=>{at.trace("controlling video player");for(const i of t.videoPlayer.controllers){at.trace("calling video player controller");try{i(n)}catch(o){console.error(o)}}},r()},vo={[w.QuestionType.FACTOID]:"insight",[w.QuestionType.POLL]:"poll",[w.QuestionType.TRIVIA]:"trivia",[w.QuestionType.PREDICTION]:"prediction",[w.QuestionType.TWEET]:"tweet"},So=(t,e,r)=>{t.sdk.uiState=H({}),t.ui={enableAppNotification:function(){t.sdk.uiState.setKey("appNotification",!0)},disableAppNotification:function(){t.sdk.uiState.get().app||t.sdk.uiState.setKey("appNotification",!1)},enableApp:function(){t.sdk.uiState.set({app:!0,appNotification:!0})},disableApp:function(){t.sdk.uiState.set({...t.sdk.uiState.get(),appNotification:!1,app:!1})}},e.onContentActivate&&(t.ui.onContentActivate=e.onContentActivate);const n=i=>{t.ui.onContentActivate&&t.ui.onContentActivate({...i,type:"advertisement"})};t.onQuestionActivate=({questionType:i,...o})=>{if(t.ui.onContentActivate){const s=o.type||i&&vo[i]||"question";t.ui.onContentActivate({...o,type:s})}},t.sdk.onMount({name:"ui"},()=>{const i=a=>{if(a.slEventBus?.type==="notification")switch(a.slEventBus.action){case"received":t.ui.enableAppNotification();break;case"closed":t.ui.disableAppNotification();break}if(a.slEventBus?.type==="advertisement"&&e.withAd){const u=a.slEventBus,{hasNotification:l,hasBanner:c,id:f,isViewed:p,type:S}=u.payload;switch(u.action){case"notification-opened":t.sdk.uiState.set({promotionExternalAd:S===w.PromotionType.EXTERNAL_AD,promotionBanner:c,promotionNotification:!1,promotionOverlay:!0,promotionSidebar:!0});break;case"received":if(t.sdk.closeFeature(),n({stage:"activate",id:f,hasNotification:l,hasBanner:c,isViewed:p}),!e.withAdNotification){t.sdk.uiState.set({promotionBanner:c,promotionOverlay:!0,promotionSidebar:!0,promotionExternalAd:S===w.PromotionType.EXTERNAL_AD});break}l?t.sdk.uiState.set({promotionNotification:!0}):t.sdk.uiState.set({promotionBanner:c,promotionOverlay:!0,promotionSidebar:!0,promotionExternalAd:S===w.PromotionType.EXTERNAL_AD});break;case"closed":t.sdk.uiState.set({...t.sdk.uiState.get(),promotionNotification:!1,promotionBanner:!1,promotionOverlay:!1,promotionExternalAd:!1,promotionSidebar:!1}),n({stage:"deactivate",id:f,hasNotification:l,hasBanner:c,isViewed:p});break}}},o=G.listen(i),s=t.activeFeature.subscribe(a=>{a?t.ui.enableApp():t.ui.disableApp()});return()=>{o(),s()}}),r()},wo=(t,e,r)=>{const n={onMountedFired:!1},i=new Map,o=new Map;t.sdk=Object.create(null),t.sdk.options=H(e),t.sdk.withAuth=!1,t.sdk.onMount=({name:s,clear:a},u)=>{if(i.has(s)){const l=o.get(s);l&&l(),i.delete(s),o.delete(s)}i.set(s,{cb:u,clear:a}),t?.stores?.enabled?.get()==="on"&&o.set(s,u())},t.ready=()=>{t.stores.enabled.subscribe(s=>{s==="on"&&n.onMountedFired===!1&&(i.forEach(({cb:a},u)=>o.set(u,a())),n.onMountedFired=!0),s!=="on"&&n.onMountedFired===!0&&(o.forEach(a=>a()),o.clear(),i.forEach(({clear:a},u)=>a&&i.delete(u)),n.onMountedFired=!1)})},t.sdk.initializeApp=async s=>{if(t.contextConfig=s,t.stores.enabled.get()==="on")return{enabled:!0};t.storeSubscribe(),t.stores.enabled.setValue("on"),t.stores.status.setValue(fe.INITIALIZATION);try{const a=await t.stores.organizationSettings.getValue();return a?(t.stores.status.setValue(fe.READY),{enabled:!!a}):(t.stores.status.setValue(fe.FAILED),{err:"failed"})}catch(a){return t.stores.enabled.setValue(),t.stores.status.setValue(fe.FAILED),{err:`${a}`}}},t.sdk.disableApp=()=>{t.stores.enabled.get()==="on"&&(t.stores.enabled.setValue(),t.stores.status.setValue(fe.DISABLED),t.stores.slStreamId.setValue(),t.stores.providerStreamId.setValue(),t.sdk.closeFeature(!0),t.storeUnsubscribe(),t.transport.disconnect())},t.sdk.createEventSession=s=>{t.stores.providerStreamId.setValue(s)},r()},To=(t,e)=>{const{client:r,queryKey:n}=t.createPromiseClient(Je.Client,{method:"generateDeepLink",params:e});return t.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s,a)=>{if(!s)return{};try{return(await r.generateDeepLink({data:{gamification:!0,externalEventId:a,eventId:s}})).data?.attributes}catch{return}},dedupeTime:1e3*60*60*24,refetchInterval:0})},Ao=(t,{web:e,mobile:r})=>{const{client:n}=t.createPromiseClient(oi.LinksClient,{method:"generate"});return n.generate({web:e,mobile:r})},qr=(t,e)=>{const r=new URLSearchParams(t);for(const[n,i]of Object.entries(e))r.append(n,i);return r.toString()},Eo=(t,e,r,n)=>{const i=H({});return te.onMount(i,()=>To(t,[e,r]).subscribe(async({data:a,loading:u})=>{const l=a===void 0&&u===!1?"https://streamlayer.io":a?.url,c=n.get()||"",f=e.get()||"",p=r.get()||"",S={[Ot]:c,[Tn]:f,[An]:p};if(!u&&l){i.setKey("loading",!0);let A=window.location.search,b=window.location.hash;A&&b||b?A=`?${qr(A,S)}`:b=`#${qr("",S)}`;const m=window.location.origin+window.location.pathname+A+b;try{const T=await Ao(t,{web:m,mobile:l});i.set({data:T.data?.link,loading:!1})}catch{i.set({loading:!1,error:"Failed to generate short link",data:void 0})}}else i.setKey("loading",!0)})),{$store:i,fetch}};var B;(function(t){t.Unset="unset",t.Required="required",t.Optional="optional",t.Completed="completed",t.Disabled="disabled",t.Unavailable="unavailable"})(B||(B={}));const Io=(t,e,r,n)=>{const{inplayGame:i}=t.featureSettings.get(),o=e.getCurrentSessionId({prefix:"onboarding"});i&&r.add({type:be.ONBOARDING,id:o,action:t.openFeature,close:()=>{t.onboardingProcessed.set(!0)},persistent:!0,autoHideDuration:1e6,data:{questionId:"onboarding",questionType:w.QuestionType.UNSET,onboarding:{...i,instantOpen:!n.getOnboardingInstantOpen({userId:e.userId.get()||"",organizationId:e.organizationId.get()||"",eventId:e.slStreamId.get()||""})}}})},ut=(t,e,r,n,i,o)=>{try{const s=e.userId.get();if(!s)return;if(i.getOnboardingStatus({userId:s,organizationId:e.organizationId.get()||"",eventId:e.slStreamId.get()||""})===B.Completed){t.set(B.Completed);for(const p of o)p();return}const u=e.moderation.getStore().value?.data,l=r.featureSettings.get().inplayGame;if(u===void 0||l===void 0)return;const c=u?.options?.onboardingEnabled,f=l?.titleCard?.optIn;c?f?t.set(B.Required):t.set(B.Optional):(f?t.set(B.Unavailable):t.set(B.Disabled),n.close(e.getCurrentSessionId({prefix:"onboarding"}),{markAsViewed:!1}))}catch(s){console.error(s)}},Oo=(t,e,r,n)=>{let i=!1;const o=new wn,s=j(B.Unset);s.subscribe(l=>{l!==B.Unset&&(l===B.Optional||l===B.Required?i===!1&&(Io(t,e,n,o),i=!0):t.onboardingProcessed.set(!0),l===B.Completed&&e.activeQuestionId.invalidate(),o.setOnboardingInstantOpen({userId:e.userId.get()||"",organizationId:e.organizationId.get()||"",eventId:e.slStreamId.get()||""}))});const a=[];return ut(s,e,t,n,o,a),s.get()!==B.Completed&&(a.push(e.userId.listen(l=>{l&&ut(s,e,t,n,o,a)})),a.push(e.moderation.listen(l=>{l.data&&ut(s,e,t,n,o,a)})),a.push(t.featureSettings.listen(l=>{l&&ut(s,e,t,n,o,a)}))),{$store:s,submitInplay:async()=>{const l=e.slStreamId.get();if(l){await oo(r,l),s.set(B.Completed),o.saveOnboardingStatus({organizationId:e.organizationId.get()||"",userId:e.userId.get()||"",eventId:l},B.Completed),G.emit("poll",{action:"onboardingPassed",payload:{}}),t.openFeature();const c=e.getCurrentSessionId({prefix:"onboarding"});n.close(c)}}}},_o=(t,e,r,n)=>{const i=H(void 0),o=vn(n),s=async()=>{const u=t.get(),l=e.get(),c=r.getStore().get().data?.map(S=>S.slId);if(!c)return;const f={eventId:u,userId:l,usersIds:[...c,l]},p=await o(f);i.set(p.data?.attributes)},a=()=>{s()};return te.onMount(i,()=>{const u=t.listen(s),l=r.listen(s),c=e.listen(s);return()=>{u(),l(),c()}}),{$store:i,invalidate:a}},Co=async(t,e,r,n,i)=>{const o=vn(i),s=t.get(),a=e.get(),u=r.getStore().get().data?.map(p=>p.slId)||[],l={eventId:s,userId:n,usersIds:[...u,a]};return(await o(l)).data?.attributes?.summary},ko=new Set([w.QuestionType.POLL,w.QuestionType.PREDICTION,w.QuestionType.TRIVIA]);class Lo extends gn{userSummary;feedList;friends;leaderboardId;leaderboardList;deepLink;onboardingStatus;openedQuestion;currentUserId;openedUser;closeFeature;openFeature;feedSubscription;activeQuestionId;openedQuestionId;advertisement;onboardingProcessed;friendsTabEnabled;notifications;transport;background;storage;submitAnswerTimeout;cancels=new Set;onQuestionActivate;constructor(e,r,n){super(e,r),this.background=new Zi(n),this.advertisement=this.background.advertisement,this.onQuestionActivate=n.onQuestionActivate,this.feedSubscription=this.background.feedSubscription,this.activeQuestionId=this.background.activeQuestionId,this.openedQuestionId=this.background.openedQuestionId,this.storage=new wn,this.feedList=this.background.feedList,this.friends=new ae(Mi(this.background.userId,n.transport),"gamification:friends"),this.currentUserId=this.background.userId,this.openedUser=j(void 0),this.onboardingProcessed=j(!n.sdk.withAuth),this.leaderboardId=new Y(j(this.settings.getValue("pinnedLeaderboardId")),"pinnedLeaderboardId").getStore(),this.onboardingStatus=Oo(this,this.background,n.transport,n.notifications),this.notifications=n.notifications,this.transport=n.transport,this.closeFeature=(i=!0)=>n.sdk.closeFeature(i),this.openFeature=()=>n.sdk.openFeature(R.SdkOverlayType.GAMES),this.openedQuestion=this.background.openedQuestion,this.deepLink=Eo(this.transport,this.background.slStreamId,n.stores.providerStreamId.getStore(),this.background.userId),this.userSummary=_o(this.background.slStreamId,this.background.userId,this.friends,this.transport),this.leaderboardList=uo(this.transport,this.background.slStreamId,this.background.userId,this.friends),this.connect(),this.cancels.add(this.userSummary.$store.listen((i,o)=>{o?.summary&&i?.summary&&this.leaderboardList.invalidate()})),this.cancels.add(this.onboardingStatus.$store.listen(this.checkInteractiveFlag)),this.cancels.add(this.background.moderation.getStore().listen(this.checkInteractiveFlag)),this.cancels.add(this.settings.subscribe(this.checkInteractiveFlag)),this.cancels.add(this.onboardingStatus.$store.listen((i,o)=>{(o===void 0||i!==B.Unset)&&this.background.activeQuestionId.invalidate()})),this.background.activeQuestionId.listen(this.showInApp),this.friendsTabEnabled=j(!1),this.cancels.add(n.sdk.options.subscribe(i=>{i.friendsTab==="disabled"?this.friendsTabEnabled.set(!1):i.friendsTab==="enabled"&&this.friendsTabEnabled.set(!0)})),this.cancels.add(this.settings.subscribe(i=>{n.sdk.options.get().friendsTab==="activatedGame"&&this.friendsTabEnabled.set(!!i.inplayGame?.titleCard?.optIn)})),n.sdk.onMount({name:"gamification",clear:!0},()=>()=>{for(const i of this.cancels)i(),this.cancels.delete(i)})}get isInteractiveAllowed(){return this.background.interactiveAllowed.get()===Ee.ALLOWED}checkInteractiveFlag=()=>{const e=this.onboardingStatus.$store.get(),r=this.background.moderation.getStore().value?.data?.options?.onboardingEnabled,n=this.settings.getValues().inplayGame?.titleCard?.optIn,i=e===B.Completed,o=!r||i||n!==!0;this.background.interactiveAllowed.set(o?Ee.ALLOWED:Ee.DISALLOWED)};connect=()=>{this.onboardingProcessed.subscribe(e=>{e&&this.advertisement.connect()}),this.cancels.add(this.background.feedSubscription.addListener("feed-subscription-prediction-close",async e=>{if(!this.isInteractiveAllowed)return;const r=e.data?.attributes?.question,n=e.data?.attributes?.feedItem;if(!r||!n?.attributes)return;const{status:i,type:o,id:s,answers:a}=r;if(i===w.QuestionStatus.RESOLVED&&o===w.QuestionType.PREDICTION){const u=this.background.getCurrentSessionId({prefix:`notification-id:${s}`}),l=[...this.feedList.getValues().data||[]],c=l.findIndex(K=>K.id===s),f=l[c];let p=f?.attributes?.attributes?.value?.answerId;const S=rr(s,this.transport),A=S.subscribe(()=>{});await S.get().promise;let b=S.get().data;b||(b=await Gi(s,this.transport)),A(),window.requestAnimationFrame(()=>{S.invalidate()}),p||(p=b?.answers.find(({youVoted:K})=>K)?.id);const m=a.find(({correct:K})=>K),T=p?a.find(({id:K})=>K===p):void 0,V=!!T?.correct;if(f&&l[c]?.attributes?.attributes.case==="question"){try{l[c].attributes.attributes.value.answerId=p,l[c].attributes.attributes.value.openForVoting=!1,p&&(l[c].attributes.attributes.value.status=V?nt.PickHistoryStatus.WON:nt.PickHistoryStatus.LOST)}catch{}this.feedList.getStore().mutate(l)}if(!T||!m)return;this.openedQuestionId.get()?.questionId!==r.id&&this.notifications.add({type:be.QUESTION_RESOLVED,action:()=>this.openQuestion(r.id,n),close:()=>this.closeQuestion(s),autoHideDuration:V?15e3:12e3,id:u,emitEvent:!1,data:{questionId:s,questionType:w.QuestionType.PREDICTION,question:{title:V?`Congratulations! You answered correctly! You won ${m.points} pts!`:`Better luck next time! Correct: ${m?.text}!`,votedAnswer:{title:T?.text,points:T?.points},correctAnswerTitle:m?.text,correct:!!V,predictionResult:i===w.QuestionStatus.RESOLVED,questionTitle:r?.subject}}}),this.userSummary.invalidate()}})),this.cancels.add(this.background.feedSubscription.addListener("feed-subscription-questions-list",e=>{const r=[...this.feedList.getStore().value?.data||[]],n=e.data?.attributes?.feedItem,i=r.findIndex(o=>o.id===n?.id);if(n?.attributes&&n.attributes.attributes.case!=="promotion"&&!(n.attributes.status!==w.QuestionStatus.ACTIVE&&n.attributes.status!==w.QuestionStatus.RESOLVED)){if(i!==-1)if(n.attributes.attributes.case==="question"&&r[i].attributes?.attributes.case==="question"){const o=r[i];o.attributes&&(r[i]={...r[i],attributes:{...o.attributes,attributes:{...o.attributes.attributes,value:{...o.attributes.attributes.value,...n.attributes.attributes.value,answerId:o.attributes.attributes.value.answerId,status:o.attributes.attributes.value.status,openForVoting:o.attributes.attributes.value.openForVoting}}}})}else{const o=r[i];o.attributes&&n.attributes&&(r[i]={...r[i],attributes:{...o.attributes,attributes:{...o.attributes.attributes,value:{...o.attributes.attributes.value,...n.attributes.attributes.value}}}})}i===-1&&(r.unshift(n),G.emit("poll",{action:"received",payload:{questionId:n.id,questionType:n.attributes?.type}})),this.feedList.getStore().mutate(r)}}))};disconnect=()=>{this.background.feedSubscription.removeListener("feed-subscription-prediction-close"),this.background.feedSubscription.removeListener("feed-subscription-questions-list")};submitAnswer=async(e,r)=>{const n=rr(e,this.transport),i=n.subscribe(()=>{}),o={...n.get().data||{}},s=()=>{const a=this.feedList.getValues().data;if(!a)return;const u=a.findIndex(f=>f.id===e),l=a[u],c=l?.attributes?.attributes.case==="question"&&l.attributes.attributes.value;if(c){G.emit("poll",{action:"voted",payload:{questionId:e,questionType:c.questionType}});const f=n.get().data;if(i(),f){const p=f.answers.find(m=>m.correct===!0),S=f.answers.findIndex(m=>m.id===r),A=f.answers[S],b=f.answers.every(({percentageDecimal:m},T)=>m===o?.answers[T].percentageDecimal);a[u].attributes.attributes.value.answerId=r,a[u].attributes.attributes.value.openForVoting=!1,a[u].attributes.attributes.value.text=A?.text||"",p&&(a[u].attributes.attributes.value.status=p.id===r?nt.PickHistoryStatus.WON:nt.PickHistoryStatus.LOST),this.feedList.getStore().mutate([...a]),f.answers[S].correct=p?.id===r,f.answers[S].youVoted=!0,b&&f.answers.forEach(m=>{m.percentageDecimal=0}),p?.id===r&&(f.answers[S].pointsEarned=f.status===w.QuestionStatus.RESOLVED?0:p.points),n.mutate({...f})}this.submitAnswerTimeout&&clearTimeout(this.submitAnswerTimeout),this.submitAnswerTimeout=setTimeout(()=>{this.userSummary.invalidate()},1e3)}};try{await io(this.transport,{questionId:e,answerId:r}),s()}catch(a){if(a.message===Ye.ALREADY_VOTED){this.userSummary.invalidate();const u=n.subscribe(()=>{});n.invalidate(),u()}throw a}};openQuestion=(e,r)=>{if(!e)return()=>{};this.notifications.close(this.background.getCurrentSessionId({prefix:"notification",entity:e}),{animateHiding:!1});let n=r?.attributes?.type;return n||(n=(this.feedList.getStore().value?.data||[]).find(o=>o.id===e)?.attributes?.type),G.emit("poll",{action:"opened",payload:{questionId:e,questionType:n,questionOpenedFrom:r?.openedFrom}}),this.background.openQuestion(e,r)};getFeedItem=e=>Ui(e,this.transport);isOpenedQuestion=e=>!!this.notifications.isViewed(e);closeQuestion=e=>(e&&this.onQuestionActivate({stage:"deactivate",id:e,isViewed:!!this.notifications.isViewed(this.background.getCurrentSessionId({prefix:"notification",entity:e}))}),this.background.closeQuestion(e));openUser=async e=>{const r=this.leaderboardList.$store.get().data?.find(i=>i.userId===e);if(!r){this.openedUser.set(r);return}if(r.summaryLoaded){this.openedUser.set(r);return}const n={...r};try{const i=await Co(this.background.slStreamId,this.background.userId,this.friends,e,this.transport);i?.inTop!==void 0&&(this.leaderboardList.$store.setKey("data",this.leaderboardList.$store.get().data?.map(o=>(o.userId===e&&(o.inTop=i.inTop),o))),n.inTop=i.inTop)}catch(i){console.error(i)}this.openedUser.set(n)};closeUser=()=>{this.openedUser.set(void 0)};showInApp=e=>{const r=this.onboardingStatus.$store.get();if(e&&e.data&&r&&r!==B.Unset&&e.data.question?.id!==void 0&&e.data.question?.bypassNotifications?.inAppSilence!==w.SilenceSetting.ON&&e.data.question.status===w.QuestionStatus.ACTIVE&&!e.data.question.marketClosed){if(ko.has(e.data.question.type))this.isInteractiveAllowed&&e.data.question.notification!==void 0&&this.notifications.add({type:be.QUESTION,action:()=>this.openQuestion(e.data?.question?.id,e.data?.feedItem),close:()=>this.closeQuestion(e.data?.question?.id),autoHideDuration:1e3*60,id:this.background.getCurrentSessionId({prefix:"notification",entity:e.data.question.id}),emitEvent:!0,data:{questionId:e.data.question.id,questionType:e.data.question.type,question:{title:e.data.question.notification.title}}});else if(e.data.question.type===w.QuestionType.FACTOID){const n=e.data.question.options?.options.value,i=e.data.question.notification?.title||e.data.question.subject||"",o=e.data.question.notification?.body||n.body,s={heading:i,body:o,imageMode:n?.imageMode,image:n?.image,video:{id:n?.video?.id||"",url:n?.video?.url||"",thumbnailUrl:n?.video?.thumbnailUrl||""},webLink:{label:"",url:""}};this.notifications.add({type:be.QUESTION,action:()=>this.openQuestion(e?.data?.question?.id,e?.data?.feedItem),close:()=>this.closeQuestion(e?.data?.question?.id),autoHideDuration:1e3*120,emitEvent:!0,id:this.background.getCurrentSessionId({prefix:"notification",entity:e.data.question.id}),data:{questionId:e.data.question.id,questionType:e.data.question.type,insight:s}})}else if(e.data.question.type===w.QuestionType.TWEET&&e.data.question.notification!==void 0){const n=e.data.question.options?.options.value,i={title:e.data.question.notification?.title,body:e.data.question.notification?.body,image:e.data.question.notification?.image,account:n?.tweetMeta?.account||"",accountVerified:!!n?.tweetMeta?.accountVerified,tweet:n?.tweetMeta?.tweet,tweetId:e.data.question.id};this.notifications.add({type:be.QUESTION,action:()=>this.openQuestion(e.data?.question?.id,e.data?.feedItem),close:()=>this.closeQuestion(e.data?.question?.id),autoHideDuration:1e3*120,emitEvent:!0,id:this.background.getCurrentSessionId({prefix:"notification",entity:e.data.question.id}),data:{questionId:e.data.question.id,questionType:e.data.question.type,tweet:i}})}}}}const Po={[R.SdkOverlayType.GAMES]:!0};class No extends gn{constructor(e,r){super(e,r)}}const Fo=(t,e,r)=>t.type===R.SdkOverlayType.GAMES?new Lo(t,e,r):new No(t,e),Do=(t,e,r)=>{t.features=new Map,t.sdk.featuresList=new Y(j(new Set),"features-list"),t.activeFeature=new Y(j(R.SdkOverlayType.UNSET),"activeFeature"),t.sdk.getFeatures=()=>t.features,t.sdk.getFeature=n=>t.features.get(n),t.sdk.getActiveFeature=()=>t.activeFeature.getStore(),t.sdk.openFeature=n=>{t.activeFeature.setValue(n)},t.sdk.closeFeature=(n=!1)=>{const i=t.activeFeature.getValue();if(t.activeFeature.setValue(R.SdkOverlayType.UNSET),n&&i){t.features.delete(i);const o=t.sdk.featuresList.getValue();o&&o.delete(i),t.sdk.featuresList.setValue(o)}},t.initFeature=(n,i=de.ORGANIZATION)=>{if(n.type in Po&&!t.features.has(n.type)){const o=Fo(n,i,t);t.features.set(n.type,o);let s=t.sdk.featuresList.getValue();s?s.add(n.type):s=new Set([n.type]),t.sdk.featuresList.setValue(new Set(s))}},t.updateFeature=(n,i)=>{t.features.get(n.type)?.update(n,i)},t.destroyFeature=n=>{t.features.delete(n.type);const i=t.sdk.featuresList.getValue();i&&i.delete(n.type),t.sdk.featuresList.setValue(new Set(i))},t.reinitializeFeatures=async()=>{const n=await t.stores.organizationSettings.getValue();t.features.clear(),t.sdk.featuresList.setValue(new Set);for(const i of n?.overlays||[])t.initFeature(i,de.ORGANIZATION)},t.stores.providerStreamId.listen(n=>{n||t.reinitializeFeatures()}),t.storeSubscribe=()=>{const n=(o,s)=>{if(s?.overlays&&!(t.contextConfig?.skipOrganizationSettings&&o===de.ORGANIZATION))for(const a of s.overlays)a.sdkEnable===!0&&(t.features.has(a.type)?t.updateFeature(a,o):t.initFeature(a,o))},i={organizationSettings:o=>{if(o.data)try{n(de.ORGANIZATION,o.data)}catch(s){console.log(s)}},streamSettings:o=>{if(o.data)try{n(de.STREAM,o.data)}catch(s){console.log(s)}}};t.store.subscribe(i)},r()};class Ro{analytics;constructor(e){this.analytics=e,this.analytics.onConnect(()=>{const r=n=>{if(n.slEventBus?.type==="invitation")switch(n.slEventBus.action){case"sent":this.sent(n.slEventBus.payload);break}};return G.listen(r)})}accepted=()=>{this.analytics.write("invitation",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.INVITATION_ACCEPTED},category:it.InvitationCategory.GAMES,from:it.InvitationFrom.UNSET})};sent=({from:e})=>{this.analytics.write("invitation",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.INVITATION_SENT},category:it.InvitationCategory.GAMES,from:e||it.InvitationFrom.UNSET})}}class Vo{analytics;constructor(e){this.analytics=e,this.analytics.onConnect(()=>{const r=n=>{if(n.slEventBus?.type==="interactions")switch(n.slEventBus.action){case"tap":this.tap();break;case"scroll":this.scroll();break}};return G.listen(r)})}tap=()=>{this.analytics.write("interactions",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.INTERACTIONS},actionType:Pr.InteractionActionType.TAP})};scroll=()=>{this.analytics.write("interactions",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.INTERACTIONS},actionType:Pr.InteractionActionType.SCROLL})}}const $o={[w.PromotionType.UNSET]:v.TopicSubType.UNSET,[w.PromotionType.INGAME_IAB21]:v.TopicSubType.PROMOTION_INGAME_IAB21,[w.PromotionType.INGAME_IAB11_LBAR]:v.TopicSubType.PROMOTION_INGAME_IAB11_LBAR,[w.PromotionType.INGAME_IAB11]:v.TopicSubType.PROMOTION_INGAME_IAB11,[w.PromotionType.INGAME_IAB21_LBAR]:v.TopicSubType.PROMOTION_INGAME_IAB21_LBAR,[w.PromotionType.INGAME_IAB61]:v.TopicSubType.PROMOTION_INGAME_IAB61,[w.PromotionType.EXTERNAL_AD]:v.TopicSubType.PROMOTION_GAM};class qo{analytics;constructor(e){this.analytics=e,this.analytics.onConnect(()=>{const r=n=>{if(!n.slEventBus?.skipAnalytics&&n.slEventBus?.type==="advertisement"){const i=n.slEventBus.payload.type?$o[n.slEventBus.payload.type]:v.TopicSubType.UNSET;switch(n.slEventBus.action){case"videoPlay":this.videoPlay(n.slEventBus.payload,{topicSubType:i});break;case"buttonSelect":this.buttonSelect(n.slEventBus.payload,{topicSubType:i});break;case"bannerSelect":this.bannerSelect(n.slEventBus.payload,{topicSubType:i});break;case"received":this.received(n.slEventBus.payload,{topicSubType:i});break;case"opened":this.opened(n.slEventBus.payload,{topicSubType:i});break}}};return G.listen(r)})}received=({id:e},{topicSubType:r})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.POLLS_RECEIVED,topicId:e,topicType:v.TopicType.POLLS_PROMOTION,topicSubType:r},pollOpenedFrom:v.PollOpenedFrom.UNSET})};opened=({id:e},{topicSubType:r})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.POLLS_OPENED,topicId:e,topicType:v.TopicType.POLLS_PROMOTION,topicSubType:r},pollOpenedFrom:v.PollOpenedFrom.UNSET})};videoPlay=({id:e},{topicSubType:r})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),topicId:e,kind:v.Kind.AD_VIDEO_PLAYED,topicType:v.TopicType.POLLS_PROMOTION,topicSubType:r},pollOpenedFrom:v.PollOpenedFrom.UNSET})};buttonSelect=({id:e},{topicSubType:r})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),topicId:e,kind:v.Kind.AD_BUTTON_NAVIGATED,topicType:v.TopicType.POLLS_PROMOTION,topicSubType:r},pollOpenedFrom:v.PollOpenedFrom.UNSET})};bannerSelect=({id:e},{topicSubType:r})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),topicId:e,kind:v.Kind.AD_BANNER_NAVIGATED,topicType:v.TopicType.POLLS_PROMOTION,topicSubType:r},pollOpenedFrom:v.PollOpenedFrom.UNSET})}}const He={[w.QuestionType.UNSET]:v.TopicType.UNSET,[w.QuestionType.FACTOID]:v.TopicType.POLLS_INSIGHT,[w.QuestionType.POLL]:v.TopicType.POLLS_POLL,[w.QuestionType.PREDICTION]:v.TopicType.POLLS_PREDICTION,[w.QuestionType.PROMOTION]:v.TopicType.POLLS_PROMOTION,[w.QuestionType.TRIVIA]:v.TopicType.POLLS_TRIVIA,[w.QuestionType.TWEET]:v.TopicType.POLLS_TWITTER};w.QuestionType.UNSET+"",ee.NotificationKind.UNSET,w.QuestionType.FACTOID+"",ee.NotificationKind.POLLS,w.QuestionType.POLL+"",ee.NotificationKind.POLLS,w.QuestionType.PREDICTION+"",ee.NotificationKind.POLLS,w.QuestionType.PROMOTION+"",ee.NotificationKind.POLLS,w.QuestionType.TRIVIA+"",ee.NotificationKind.POLLS,w.QuestionType.TWEET+"",ee.NotificationKind.POLLS;const Mo={[R.SdkOverlayType.UNSET]:v.Category.UNSET,[R.SdkOverlayType.INPLAY]:v.Category.INPLAY,[R.SdkOverlayType.MESSAGING]:v.Category.MESSAGING,[R.SdkOverlayType.STATISTICS]:v.Category.STATS,[R.SdkOverlayType.BETTING]:v.Category.BETTING,[R.SdkOverlayType.TWITTER]:v.Category.TWITTER,[R.SdkOverlayType.MERCHANDISE]:v.Category.MERCHANDISE,[R.SdkOverlayType.CONTESTS]:v.Category.CONTESTS,[R.SdkOverlayType.VOICE_CHAT]:v.Category.CALLING,[R.SdkOverlayType.TICKETS]:v.Category.TICKETS,[R.SdkOverlayType.WHOIS_WATCHING]:v.Category.WHOISWATCHING,[R.SdkOverlayType.PROFILE]:v.Category.PROFILE,[R.SdkOverlayType.GAMES]:v.Category.POLLS,[R.SdkOverlayType.GOLF_STATISTICS]:v.Category.STATS,[R.SdkOverlayType.HIGHLIGHTS]:v.Category.HIGHLIGHTS,[R.SdkOverlayType.PUBLIC_CHAT]:v.Category.PUBLIC_CHAT};class Bo{analytics;constructor(e){this.analytics=e,this.analytics.onConnect(()=>{const r=n=>{if(n.slEventBus?.type==="notification")switch(n.slEventBus.action){case"rendered":this.received(n.slEventBus.payload);break;case"opened":this.opened(n.slEventBus.payload);break}};return G.listen(r)})}received=({questionId:e,questionType:r})=>{this.analytics.write("notification",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.NOTIFICATION_RECEIVED,topicId:e,topicType:r?He[r]:v.TopicType.UNSET},notificationKind:ee.NotificationKind.POLLS,notificationType:ee.NotificationType.IN_APP})};opened=({questionId:e,questionType:r})=>{this.analytics.write("notification",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.NOTIFICATION_OPENED,topicId:e,topicType:r?He[r]:v.TopicType.UNSET},notificationKind:ee.NotificationKind.POLLS,notificationType:ee.NotificationType.IN_APP})}}class jo{analytics;constructor(e){this.analytics=e,this.analytics.onConnect(()=>{const r=n=>{if(n.slEventBus?.type==="poll")switch(n.slEventBus.action){case"voted":this.voted(n.slEventBus.payload);break;case"navigated":this.navigated();break;case"onboardingPassed":this.onboardingPassed();break;case"received":this.received(n.slEventBus.payload);break;case"opened":this.opened(n.slEventBus.payload);break}};return G.listen(r)})}received=({questionId:e,questionType:r})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.POLLS_RECEIVED,topicId:e,topicType:r?He[r]:v.TopicType.UNSET},pollOpenedFrom:v.PollOpenedFrom.UNSET})};opened=({questionId:e,questionType:r,questionOpenedFrom:n})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.POLLS_OPENED,topicId:e,topicType:r?He[r]:v.TopicType.UNSET},pollOpenedFrom:n==="list"?v.PollOpenedFrom.PICK_HISTORY:v.PollOpenedFrom.IN_APP})};voted=({questionId:e,questionType:r})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.POLLS_VOTE,topicId:e,topicType:r?He[r]:v.TopicType.UNSET},pollOpenedFrom:v.PollOpenedFrom.UNSET})};onboardingPassed=()=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.GAMES_JOINED},pollOpenedFrom:v.PollOpenedFrom.UNSET})};navigated=()=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.POLLS_NAVIGATED},pollOpenedFrom:v.PollOpenedFrom.UNSET})}}const Uo=({transport:t,$commonStore:e})=>{let r;const n=j(!1),i=5e3,{client:o,queryKey:s}=t.createPromiseClient(dn.AnalyticsService,{method:"send",params:[n]}),a=t.nanoquery.createFetcherStore(s,{fetcher:async()=>{const p=e.getStore().get();try{await o.unary({message:{case:"heartbeat",value:{common:{...p,kind:v.Kind.SESSION_HEARTBEAT}}}})}catch(S){pe.error(S,"send heartbeat failed")}return Date.now()},refetchInterval:i}),u=()=>{pe.debug("mounted heartbeat"),r=a.subscribe(()=>{})},l=()=>{pe.debug("enabled heartbeat"),n.set(!0),a.lc===0&&u()},c=()=>{pe.debug("disabled heartbeat"),n.set(!1)};return{enable:l,disable:c,mount:u,unmount:()=>{pe.debug("unmounted heartbeat"),a.off(),r?.(),r=void 0,c()}}},pe=ge("analytics");class Qo{commonStore;notifications;polls;invitation;interactions;advertisement;heartbeat;analyticsClient;listeners;listenersCancels;connected=!1;constructor(e){this.listeners=new Set,this.listenersCancels=new Set,this.commonStore=new Ae(H({}),"common-analytics"),this.connectToSDK(e),this.heartbeat=Uo({transport:e.analyticsTransport,$commonStore:this.commonStore}),this.notifications=new Bo(this),this.polls=new jo(this),this.invitation=new Ro(this),this.interactions=new Vo(this),this.advertisement=new qo(this);const{client:r}=e.analyticsTransport.createPromiseClient(dn.AnalyticsService,{method:"send"});this.analyticsClient=r}connect=()=>{this.writeCommon("sessionId",Xt.nanoid()),this.heartbeat.enable(),this.listeners.forEach(e=>this.listenersCancels.add(e())),this.connected=!0,pe.debug("analytics connected")};disconnect=()=>{this.writeCommon("sessionId",""),this.writeCommon("overlaySessionId",""),this.heartbeat.unmount(),this.listenersCancels.forEach(e=>e()),this.connected=!1,pe.debug("analytics disconnected")};write=(e,r)=>{r&&this.analyticsClient.unary({message:{case:e,value:r}}).then(()=>{pe.trace("send analytics success",e,r)}).catch(n=>{pe.error(n,"send analytics failed")})};writeCommon=(e,r)=>{this.commonStore.setValue(e,r)};onConnect=e=>{this.listeners.add(e),this.connected&&this.listenersCancels.add(e())};connectToSDK=e=>{this.onConnect(()=>e.stores.slStreamId.getAtomStore().subscribe(r=>{this.writeCommon("eventId",r)})),this.onConnect(()=>e.sdk.getActiveFeature().subscribe(r=>{r&&this.writeCommon("category",Mo[r]),r!==R.SdkOverlayType.UNSET?this.writeCommon("overlaySessionId",Xt.nanoid()):this.writeCommon("overlaySessionId","")})),this.onConnect(()=>{const r=window.matchMedia("(orientation: portrait)"),n=i=>{this.writeCommon("screenOrientation",i.matches?v.ScreenOrientation.PORTRAIT:v.ScreenOrientation.LANDSCAPE)};return r.addEventListener("change",n),()=>{r.removeEventListener("change",n)}}),this.onConnect(()=>e.deepLink.$store.subscribe(r=>{r?.handled&&this.invitation.accepted()}))}}const xo=(t,e,r)=>{t.analytics=new Qo(t),t.sdk.onMount({name:"analytics"},()=>(t.analytics.connect(),()=>{t.analytics.disconnect()})),r()};var hr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Go(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var yr={exports:{}},gr={exports:{}};function Ko(t){var e=new t,r=e;function n(){var o=e;return o.next?e=o.next:(e=new t,r=e),o.next=null,o}function i(o){r.next=o,r=o}return{get:n,release:i}}var zo=Ko,Ho=zo;function En(t,e,r){if(typeof t=="function"&&(r=e,e=t,t=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=Ho(Wo),i=null,o=null,s=0,a=null,u={push:b,drain:W,saturated:W,pause:c,paused:!1,get concurrency(){return r},set concurrency(N){if(!(N>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=N,!u.paused)for(;i&&s<r;)s++,T()},running:l,resume:S,idle:A,length:f,getQueue:p,unshift:m,empty:W,kill:V,killAndDrain:K,error:X};return u;function l(){return s}function c(){u.paused=!0}function f(){for(var N=i,$=0;N;)N=N.next,$++;return $}function p(){for(var N=i,$=[];N;)$.push(N.value),N=N.next;return $}function S(){if(u.paused){if(u.paused=!1,i===null){s++,T();return}for(;i&&s<r;)s++,T()}}function A(){return s===0&&u.length()===0}function b(N,$){var C=n.get();C.context=t,C.release=T,C.value=N,C.callback=$||W,C.errorHandler=a,s>=r||u.paused?o?(o.next=C,o=C):(i=C,o=C,u.saturated()):(s++,e.call(t,C.value,C.worked))}function m(N,$){var C=n.get();C.context=t,C.release=T,C.value=N,C.callback=$||W,C.errorHandler=a,s>=r||u.paused?i?(C.next=i,i=C):(i=C,o=C,u.saturated()):(s++,e.call(t,C.value,C.worked))}function T(N){N&&n.release(N);var $=i;$&&s<=r?u.paused?s--:(o===i&&(o=null),i=$.next,$.next=null,e.call(t,$.value,$.worked),o===null&&u.empty()):--s===0&&u.drain()}function V(){i=null,o=null,u.drain=W}function K(){i=null,o=null,u.drain(),u.drain=W}function X(N){a=N}}function W(){}function Wo(){this.value=null,this.callback=W,this.next=null,this.release=W,this.context=null,this.errorHandler=null;var t=this;this.worked=function(r,n){var i=t.callback,o=t.errorHandler,s=t.value;t.value=null,t.callback=W,t.errorHandler&&o(r,s),i.call(t.context,r,n),t.release(t)}}function Yo(t,e,r){typeof t=="function"&&(r=e,e=t,t=null);function n(c,f){e.call(this,c).then(function(p){f(null,p)},f)}var i=En(t,n,r),o=i.push,s=i.unshift;return i.push=a,i.unshift=u,i.drained=l,i;function a(c){var f=new Promise(function(p,S){o(c,function(A,b){if(A){S(A);return}p(b)})});return f.catch(W),f}function u(c){var f=new Promise(function(p,S){s(c,function(A,b){if(A){S(A);return}p(b)})});return f.catch(W),f}function l(){if(i.idle())return new Promise(function(p){p()});var c=i.drain,f=new Promise(function(p){i.drain=function(){c(),p()}});return f}}gr.exports=En;gr.exports.promise=Yo;var In=gr.exports,mr={exports:{}},Me=typeof Reflect=="object"?Reflect:null,Mr=Me&&typeof Me.apply=="function"?Me.apply:function(e,r,n){return Function.prototype.apply.call(e,r,n)},lt;Me&&typeof Me.ownKeys=="function"?lt=Me.ownKeys:Object.getOwnPropertySymbols?lt=function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:lt=function(e){return Object.getOwnPropertyNames(e)};function Jo(t){console&&console.warn&&console.warn(t)}var On=Number.isNaN||function(e){return e!==e};function F(){F.init.call(this)}mr.exports=F;mr.exports.once=ts;F.EventEmitter=F;F.prototype._events=void 0;F.prototype._eventsCount=0;F.prototype._maxListeners=void 0;var Br=10;function _t(t){if(typeof t!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof t)}Object.defineProperty(F,"defaultMaxListeners",{enumerable:!0,get:function(){return Br},set:function(t){if(typeof t!="number"||t<0||On(t))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+t+".");Br=t}});F.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};F.prototype.setMaxListeners=function(e){if(typeof e!="number"||e<0||On(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this};function _n(t){return t._maxListeners===void 0?F.defaultMaxListeners:t._maxListeners}F.prototype.getMaxListeners=function(){return _n(this)};F.prototype.emit=function(e){for(var r=[],n=1;n<arguments.length;n++)r.push(arguments[n]);var i=e==="error",o=this._events;if(o!==void 0)i=i&&o.error===void 0;else if(!i)return!1;if(i){var s;if(r.length>0&&(s=r[0]),s instanceof Error)throw s;var a=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw a.context=s,a}var u=o[e];if(u===void 0)return!1;if(typeof u=="function")Mr(u,this,r);else for(var l=u.length,c=Nn(u,l),n=0;n<l;++n)Mr(c[n],this,r);return!0};function Cn(t,e,r,n){var i,o,s;if(_t(r),o=t._events,o===void 0?(o=t._events=Object.create(null),t._eventsCount=0):(o.newListener!==void 0&&(t.emit("newListener",e,r.listener?r.listener:r),o=t._events),s=o[e]),s===void 0)s=o[e]=r,++t._eventsCount;else if(typeof s=="function"?s=o[e]=n?[r,s]:[s,r]:n?s.unshift(r):s.push(r),i=_n(t),i>0&&s.length>i&&!s.warned){s.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=t,a.type=e,a.count=s.length,Jo(a)}return t}F.prototype.addListener=function(e,r){return Cn(this,e,r,!1)};F.prototype.on=F.prototype.addListener;F.prototype.prependListener=function(e,r){return Cn(this,e,r,!0)};function Xo(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function kn(t,e,r){var n={fired:!1,wrapFn:void 0,target:t,type:e,listener:r},i=Xo.bind(n);return i.listener=r,n.wrapFn=i,i}F.prototype.once=function(e,r){return _t(r),this.on(e,kn(this,e,r)),this};F.prototype.prependOnceListener=function(e,r){return _t(r),this.prependListener(e,kn(this,e,r)),this};F.prototype.removeListener=function(e,r){var n,i,o,s,a;if(_t(r),i=this._events,i===void 0)return this;if(n=i[e],n===void 0)return this;if(n===r||n.listener===r)--this._eventsCount===0?this._events=Object.create(null):(delete i[e],i.removeListener&&this.emit("removeListener",e,n.listener||r));else if(typeof n!="function"){for(o=-1,s=n.length-1;s>=0;s--)if(n[s]===r||n[s].listener===r){a=n[s].listener,o=s;break}if(o<0)return this;o===0?n.shift():Zo(n,o),n.length===1&&(i[e]=n[0]),i.removeListener!==void 0&&this.emit("removeListener",e,a||r)}return this};F.prototype.off=F.prototype.removeListener;F.prototype.removeAllListeners=function(e){var r,n,i;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[e]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[e]),this;if(arguments.length===0){var o=Object.keys(n),s;for(i=0;i<o.length;++i)s=o[i],s!=="removeListener"&&this.removeAllListeners(s);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(r=n[e],typeof r=="function")this.removeListener(e,r);else if(r!==void 0)for(i=r.length-1;i>=0;i--)this.removeListener(e,r[i]);return this};function Ln(t,e,r){var n=t._events;if(n===void 0)return[];var i=n[e];return i===void 0?[]:typeof i=="function"?r?[i.listener||i]:[i]:r?es(i):Nn(i,i.length)}F.prototype.listeners=function(e){return Ln(this,e,!0)};F.prototype.rawListeners=function(e){return Ln(this,e,!1)};F.listenerCount=function(t,e){return typeof t.listenerCount=="function"?t.listenerCount(e):Pn.call(t,e)};F.prototype.listenerCount=Pn;function Pn(t){var e=this._events;if(e!==void 0){var r=e[t];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}F.prototype.eventNames=function(){return this._eventsCount>0?lt(this._events):[]};function Nn(t,e){for(var r=new Array(e),n=0;n<e;++n)r[n]=t[n];return r}function Zo(t,e){for(;e+1<t.length;e++)t[e]=t[e+1];t.pop()}function es(t){for(var e=new Array(t.length),r=0;r<e.length;++r)e[r]=t[r].listener||t[r];return e}function ts(t,e){return new Promise(function(r,n){function i(s){t.removeListener(e,o),n(s)}function o(){typeof t.removeListener=="function"&&t.removeListener("error",i),r([].slice.call(arguments))}Fn(t,e,o,{once:!0}),e!=="error"&&rs(t,i,{once:!0})})}function rs(t,e,r){typeof t.on=="function"&&Fn(t,"error",e,r)}function Fn(t,e,r,n){if(typeof t.on=="function")n.once?t.once(e,r):t.on(e,r);else if(typeof t.addEventListener=="function")t.addEventListener(e,function i(o){n.once&&t.removeEventListener(e,i),r(o)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof t)}var Dn=mr.exports,Ct={},Rn={},Vn=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var i=42;e[r]=i;for(r in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var o=Object.getOwnPropertySymbols(e);if(o.length!==1||o[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var s=Object.getOwnPropertyDescriptor(e,r);if(s.value!==i||s.enumerable!==!0)return!1}return!0},ns=Vn,kt=function(){return ns()&&!!Symbol.toStringTag},is=Error,os=EvalError,ss=RangeError,as=ReferenceError,$n=SyntaxError,Lt=TypeError,us=URIError,jr=typeof Symbol<"u"&&Symbol,cs=Vn,ls=function(){return typeof jr!="function"||typeof Symbol!="function"||typeof jr("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:cs()},Rt={__proto__:null,foo:{}},ds=Object,fs=function(){return{__proto__:Rt}.foo===Rt.foo&&!(Rt instanceof ds)},ps="Function.prototype.bind called on incompatible ",hs=Object.prototype.toString,ys=Math.max,gs="[object Function]",Ur=function(e,r){for(var n=[],i=0;i<e.length;i+=1)n[i]=e[i];for(var o=0;o<r.length;o+=1)n[o+e.length]=r[o];return n},ms=function(e,r){for(var n=[],i=r,o=0;i<e.length;i+=1,o+=1)n[o]=e[i];return n},bs=function(t,e){for(var r="",n=0;n<t.length;n+=1)r+=t[n],n+1<t.length&&(r+=e);return r},vs=function(e){var r=this;if(typeof r!="function"||hs.apply(r)!==gs)throw new TypeError(ps+r);for(var n=ms(arguments,1),i,o=function(){if(this instanceof i){var c=r.apply(this,Ur(n,arguments));return Object(c)===c?c:this}return r.apply(e,Ur(n,arguments))},s=ys(0,r.length-n.length),a=[],u=0;u<s;u++)a[u]="$"+u;if(i=Function("binder","return function ("+bs(a,",")+"){ return binder.apply(this,arguments); }")(o),r.prototype){var l=function(){};l.prototype=r.prototype,i.prototype=new l,l.prototype=null}return i},Ss=vs,br=Function.prototype.bind||Ss,ws=Function.prototype.call,Ts=Object.prototype.hasOwnProperty,As=br,Es=As.call(ws,Ts),_,Is=is,Os=os,_s=ss,Cs=as,je=$n,Be=Lt,ks=us,qn=Function,Vt=function(t){try{return qn('"use strict"; return ('+t+").constructor;")()}catch{}},Ie=Object.getOwnPropertyDescriptor;if(Ie)try{Ie({},"")}catch{Ie=null}var $t=function(){throw new Be},Ls=Ie?function(){try{return arguments.callee,$t}catch{try{return Ie(arguments,"callee").get}catch{return $t}}}():$t,Ne=ls(),Ps=fs(),U=Object.getPrototypeOf||(Ps?function(t){return t.__proto__}:null),De={},Ns=typeof Uint8Array>"u"||!U?_:U(Uint8Array),Oe={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?_:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?_:ArrayBuffer,"%ArrayIteratorPrototype%":Ne&&U?U([][Symbol.iterator]()):_,"%AsyncFromSyncIteratorPrototype%":_,"%AsyncFunction%":De,"%AsyncGenerator%":De,"%AsyncGeneratorFunction%":De,"%AsyncIteratorPrototype%":De,"%Atomics%":typeof Atomics>"u"?_:Atomics,"%BigInt%":typeof BigInt>"u"?_:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?_:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?_:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?_:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Is,"%eval%":eval,"%EvalError%":Os,"%Float32Array%":typeof Float32Array>"u"?_:Float32Array,"%Float64Array%":typeof Float64Array>"u"?_:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?_:FinalizationRegistry,"%Function%":qn,"%GeneratorFunction%":De,"%Int8Array%":typeof Int8Array>"u"?_:Int8Array,"%Int16Array%":typeof Int16Array>"u"?_:Int16Array,"%Int32Array%":typeof Int32Array>"u"?_:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":Ne&&U?U(U([][Symbol.iterator]())):_,"%JSON%":typeof JSON=="object"?JSON:_,"%Map%":typeof Map>"u"?_:Map,"%MapIteratorPrototype%":typeof Map>"u"||!Ne||!U?_:U(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?_:Promise,"%Proxy%":typeof Proxy>"u"?_:Proxy,"%RangeError%":_s,"%ReferenceError%":Cs,"%Reflect%":typeof Reflect>"u"?_:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?_:Set,"%SetIteratorPrototype%":typeof Set>"u"||!Ne||!U?_:U(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?_:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":Ne&&U?U(""[Symbol.iterator]()):_,"%Symbol%":Ne?Symbol:_,"%SyntaxError%":je,"%ThrowTypeError%":Ls,"%TypedArray%":Ns,"%TypeError%":Be,"%Uint8Array%":typeof Uint8Array>"u"?_:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?_:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?_:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?_:Uint32Array,"%URIError%":ks,"%WeakMap%":typeof WeakMap>"u"?_:WeakMap,"%WeakRef%":typeof WeakRef>"u"?_:WeakRef,"%WeakSet%":typeof WeakSet>"u"?_:WeakSet};if(U)try{null.error}catch(t){var Fs=U(U(t));Oe["%Error.prototype%"]=Fs}var Ds=function t(e){var r;if(e==="%AsyncFunction%")r=Vt("async function () {}");else if(e==="%GeneratorFunction%")r=Vt("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=Vt("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var i=t("%AsyncGenerator%");i&&U&&(r=U(i.prototype))}return Oe[e]=r,r},Qr={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},Xe=br,bt=Es,Rs=Xe.call(Function.call,Array.prototype.concat),Vs=Xe.call(Function.apply,Array.prototype.splice),xr=Xe.call(Function.call,String.prototype.replace),vt=Xe.call(Function.call,String.prototype.slice),$s=Xe.call(Function.call,RegExp.prototype.exec),qs=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,Ms=/\\(\\)?/g,Bs=function(e){var r=vt(e,0,1),n=vt(e,-1);if(r==="%"&&n!=="%")throw new je("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new je("invalid intrinsic syntax, expected opening `%`");var i=[];return xr(e,qs,function(o,s,a,u){i[i.length]=a?xr(u,Ms,"$1"):s||o}),i},js=function(e,r){var n=e,i;if(bt(Qr,n)&&(i=Qr[n],n="%"+i[0]+"%"),bt(Oe,n)){var o=Oe[n];if(o===De&&(o=Ds(n)),typeof o>"u"&&!r)throw new Be("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:i,name:n,value:o}}throw new je("intrinsic "+e+" does not exist!")},Ze=function(e,r){if(typeof e!="string"||e.length===0)throw new Be("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new Be('"allowMissing" argument must be a boolean');if($s(/^%?[^%]*%?$/,e)===null)throw new je("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=Bs(e),i=n.length>0?n[0]:"",o=js("%"+i+"%",r),s=o.name,a=o.value,u=!1,l=o.alias;l&&(i=l[0],Vs(n,Rs([0,1],l)));for(var c=1,f=!0;c<n.length;c+=1){var p=n[c],S=vt(p,0,1),A=vt(p,-1);if((S==='"'||S==="'"||S==="`"||A==='"'||A==="'"||A==="`")&&S!==A)throw new je("property names with quotes must have matching quotes");if((p==="constructor"||!f)&&(u=!0),i+="."+p,s="%"+i+"%",bt(Oe,s))a=Oe[s];else if(a!=null){if(!(p in a)){if(!r)throw new Be("base intrinsic for "+e+" exists, but the property is not available.");return}if(Ie&&c+1>=n.length){var b=Ie(a,p);f=!!b,f&&"get"in b&&!("originalValue"in b.get)?a=b.get:a=a[p]}else f=bt(a,p),a=a[p];f&&!u&&(Oe[s]=a)}}return a},Mn={exports:{}},qt,Gr;function vr(){if(Gr)return qt;Gr=1;var t=Ze,e=t("%Object.defineProperty%",!0)||!1;if(e)try{e({},"a",{value:1})}catch{e=!1}return qt=e,qt}var Us=Ze,dt=Us("%Object.getOwnPropertyDescriptor%",!0);if(dt)try{dt([],"length")}catch{dt=null}var Pt=dt,Kr=vr(),Qs=$n,Fe=Lt,zr=Pt,xs=function(e,r,n){if(!e||typeof e!="object"&&typeof e!="function")throw new Fe("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new Fe("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new Fe("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new Fe("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new Fe("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new Fe("`loose`, if provided, must be a boolean");var i=arguments.length>3?arguments[3]:null,o=arguments.length>4?arguments[4]:null,s=arguments.length>5?arguments[5]:null,a=arguments.length>6?arguments[6]:!1,u=!!zr&&zr(e,r);if(Kr)Kr(e,r,{configurable:s===null&&u?u.configurable:!s,enumerable:i===null&&u?u.enumerable:!i,value:n,writable:o===null&&u?u.writable:!o});else if(a||!i&&!o&&!s)e[r]=n;else throw new Qs("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")},nr=vr(),Bn=function(){return!!nr};Bn.hasArrayLengthDefineBug=function(){if(!nr)return null;try{return nr([],"length",{value:1}).length!==1}catch{return!0}};var Gs=Bn,Ks=Ze,Hr=xs,zs=Gs(),Wr=Pt,Yr=Lt,Hs=Ks("%Math.floor%"),Ws=function(e,r){if(typeof e!="function")throw new Yr("`fn` is not a function");if(typeof r!="number"||r<0||r>4294967295||Hs(r)!==r)throw new Yr("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],i=!0,o=!0;if("length"in e&&Wr){var s=Wr(e,"length");s&&!s.configurable&&(i=!1),s&&!s.writable&&(o=!1)}return(i||o||!n)&&(zs?Hr(e,"length",r,!0,!0):Hr(e,"length",r)),e};(function(t){var e=br,r=Ze,n=Ws,i=Lt,o=r("%Function.prototype.apply%"),s=r("%Function.prototype.call%"),a=r("%Reflect.apply%",!0)||e.call(s,o),u=vr(),l=r("%Math.max%");t.exports=function(p){if(typeof p!="function")throw new i("a function is required");var S=a(e,s,arguments);return n(S,1+l(0,p.length-(arguments.length-1)),!0)};var c=function(){return a(e,o,arguments)};u?u(t.exports,"apply",{value:c}):t.exports.apply=c})(Mn);var Sr=Mn.exports,jn=Ze,Un=Sr,Ys=Un(jn("String.prototype.indexOf")),wr=function(e,r){var n=jn(e,!!r);return typeof n=="function"&&Ys(e,".prototype.")>-1?Un(n):n},Js=kt(),Xs=wr,ir=Xs("Object.prototype.toString"),Nt=function(e){return Js&&e&&typeof e=="object"&&Symbol.toStringTag in e?!1:ir(e)==="[object Arguments]"},Qn=function(e){return Nt(e)?!0:e!==null&&typeof e=="object"&&typeof e.length=="number"&&e.length>=0&&ir(e)!=="[object Array]"&&ir(e.callee)==="[object Function]"},Zs=function(){return Nt(arguments)}();Nt.isLegacyArguments=Qn;var ea=Zs?Nt:Qn,ta=Object.prototype.toString,ra=Function.prototype.toString,na=/^\s*(?:function)?\*/,xn=kt(),Mt=Object.getPrototypeOf,ia=function(){if(!xn)return!1;try{return Function("return function*() {}")()}catch{}},Bt,oa=function(e){if(typeof e!="function")return!1;if(na.test(ra.call(e)))return!0;if(!xn){var r=ta.call(e);return r==="[object GeneratorFunction]"}if(!Mt)return!1;if(typeof Bt>"u"){var n=ia();Bt=n?Mt(n):!1}return Mt(e)===Bt},Gn=Function.prototype.toString,$e=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,or,ft;if(typeof $e=="function"&&typeof Object.defineProperty=="function")try{or=Object.defineProperty({},"length",{get:function(){throw ft}}),ft={},$e(function(){throw 42},null,or)}catch(t){t!==ft&&($e=null)}else $e=null;var sa=/^\s*class\b/,sr=function(e){try{var r=Gn.call(e);return sa.test(r)}catch{return!1}},jt=function(e){try{return sr(e)?!1:(Gn.call(e),!0)}catch{return!1}},pt=Object.prototype.toString,aa="[object Object]",ua="[object Function]",ca="[object GeneratorFunction]",la="[object HTMLAllCollection]",da="[object HTML document.all class]",fa="[object HTMLCollection]",pa=typeof Symbol=="function"&&!!Symbol.toStringTag,ha=!(0 in[,]),ar=function(){return!1};if(typeof document=="object"){var ya=document.all;pt.call(ya)===pt.call(document.all)&&(ar=function(e){if((ha||!e)&&(typeof e>"u"||typeof e=="object"))try{var r=pt.call(e);return(r===la||r===da||r===fa||r===aa)&&e("")==null}catch{}return!1})}var ga=$e?function(e){if(ar(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;try{$e(e,null,or)}catch(r){if(r!==ft)return!1}return!sr(e)&&jt(e)}:function(e){if(ar(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;if(pa)return jt(e);if(sr(e))return!1;var r=pt.call(e);return r!==ua&&r!==ca&&!/^\[object HTML/.test(r)?!1:jt(e)},ma=ga,ba=Object.prototype.toString,Kn=Object.prototype.hasOwnProperty,va=function(e,r,n){for(var i=0,o=e.length;i<o;i++)Kn.call(e,i)&&(n==null?r(e[i],i,e):r.call(n,e[i],i,e))},Sa=function(e,r,n){for(var i=0,o=e.length;i<o;i++)n==null?r(e.charAt(i),i,e):r.call(n,e.charAt(i),i,e)},wa=function(e,r,n){for(var i in e)Kn.call(e,i)&&(n==null?r(e[i],i,e):r.call(n,e[i],i,e))},Ta=function(e,r,n){if(!ma(r))throw new TypeError("iterator must be a function");var i;arguments.length>=3&&(i=n),ba.call(e)==="[object Array]"?va(e,r,i):typeof e=="string"?Sa(e,r,i):wa(e,r,i)},zn=Ta,Aa=["Float32Array","Float64Array","Int8Array","Int16Array","Int32Array","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array"],Ut=Aa,Ea=typeof globalThis>"u"?hr:globalThis,Hn=function(){for(var e=[],r=0;r<Ut.length;r++)typeof Ea[Ut[r]]=="function"&&(e[e.length]=Ut[r]);return e},St=zn,Ia=Hn,Jr=Sr,Tr=wr,ht=Pt,Oa=Tr("Object.prototype.toString"),Wn=kt(),Xr=typeof globalThis>"u"?hr:globalThis,ur=Ia(),Ar=Tr("String.prototype.slice"),Qt=Object.getPrototypeOf,_a=Tr("Array.prototype.indexOf",!0)||function(e,r){for(var n=0;n<e.length;n+=1)if(e[n]===r)return n;return-1},wt={__proto__:null};Wn&&ht&&Qt?St(ur,function(t){var e=new Xr[t];if(Symbol.toStringTag in e){var r=Qt(e),n=ht(r,Symbol.toStringTag);if(!n){var i=Qt(r);n=ht(i,Symbol.toStringTag)}wt["$"+t]=Jr(n.get)}}):St(ur,function(t){var e=new Xr[t],r=e.slice||e.set;r&&(wt["$"+t]=Jr(r))});var Ca=function(e){var r=!1;return St(wt,function(n,i){if(!r)try{"$"+n(e)===i&&(r=Ar(i,1))}catch{}}),r},ka=function(e){var r=!1;return St(wt,function(n,i){if(!r)try{n(e),r=Ar(i,1)}catch{}}),r},La=function(e){if(!e||typeof e!="object")return!1;if(!Wn){var r=Ar(Oa(e),8,-1);return _a(ur,r)>-1?r:r!=="Object"?!1:ka(e)}return ht?Ca(e):null},Tt=zn,Pa=Hn,Zr=Sr,Er=wr,yt=Pt,Na=Er("Object.prototype.toString"),Yn=kt(),en=typeof globalThis>"u"?hr:globalThis,cr=Pa(),Ir=Er("String.prototype.slice"),xt=Object.getPrototypeOf,Fa=Er("Array.prototype.indexOf",!0)||function(e,r){for(var n=0;n<e.length;n+=1)if(e[n]===r)return n;return-1},At={__proto__:null};Yn&&yt&&xt?Tt(cr,function(t){var e=new en[t];if(Symbol.toStringTag in e){var r=xt(e),n=yt(r,Symbol.toStringTag);if(!n){var i=xt(r);n=yt(i,Symbol.toStringTag)}At["$"+t]=Zr(n.get)}}):Tt(cr,function(t){var e=new en[t],r=e.slice||e.set;r&&(At["$"+t]=Zr(r))});var Da=function(e){var r=!1;return Tt(At,function(n,i){if(!r)try{"$"+n(e)===i&&(r=Ir(i,1))}catch{}}),r},Ra=function(e){var r=!1;return Tt(At,function(n,i){if(!r)try{n(e),r=Ir(i,1)}catch{}}),r},Va=function(e){if(!e||typeof e!="object")return!1;if(!Yn){var r=Ir(Na(e),8,-1);return Fa(cr,r)>-1?r:r!=="Object"?!1:Ra(e)}return yt?Da(e):null},$a=Va,qa=function(e){return!!$a(e)};(function(t){var e=ea,r=oa,n=La,i=qa;function o(y){return y.call.bind(y)}var s=typeof BigInt<"u",a=typeof Symbol<"u",u=o(Object.prototype.toString),l=o(Number.prototype.valueOf),c=o(String.prototype.valueOf),f=o(Boolean.prototype.valueOf);if(s)var p=o(BigInt.prototype.valueOf);if(a)var S=o(Symbol.prototype.valueOf);function A(y,ni){if(typeof y!="object")return!1;try{return ni(y),!0}catch{return!1}}t.isArgumentsObject=e,t.isGeneratorFunction=r,t.isTypedArray=i;function b(y){return typeof Promise<"u"&&y instanceof Promise||y!==null&&typeof y=="object"&&typeof y.then=="function"&&typeof y.catch=="function"}t.isPromise=b;function m(y){return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?ArrayBuffer.isView(y):i(y)||h(y)}t.isArrayBufferView=m;function T(y){return n(y)==="Uint8Array"}t.isUint8Array=T;function V(y){return n(y)==="Uint8ClampedArray"}t.isUint8ClampedArray=V;function K(y){return n(y)==="Uint16Array"}t.isUint16Array=K;function X(y){return n(y)==="Uint32Array"}t.isUint32Array=X;function N(y){return n(y)==="Int8Array"}t.isInt8Array=N;function $(y){return n(y)==="Int16Array"}t.isInt16Array=$;function C(y){return n(y)==="Int32Array"}t.isInt32Array=C;function re(y){return n(y)==="Float32Array"}t.isFloat32Array=re;function ne(y){return n(y)==="Float64Array"}t.isFloat64Array=ne;function _e(y){return n(y)==="BigInt64Array"}t.isBigInt64Array=_e;function ve(y){return n(y)==="BigUint64Array"}t.isBigUint64Array=ve;function ue(y){return u(y)==="[object Map]"}ue.working=typeof Map<"u"&&ue(new Map);function Ft(y){return typeof Map>"u"?!1:ue.working?ue(y):y instanceof Map}t.isMap=Ft;function me(y){return u(y)==="[object Set]"}me.working=typeof Set<"u"&&me(new Set);function Ge(y){return typeof Set>"u"?!1:me.working?me(y):y instanceof Set}t.isSet=Ge;function Ce(y){return u(y)==="[object WeakMap]"}Ce.working=typeof WeakMap<"u"&&Ce(new WeakMap);function Dt(y){return typeof WeakMap>"u"?!1:Ce.working?Ce(y):y instanceof WeakMap}t.isWeakMap=Dt;function ke(y){return u(y)==="[object WeakSet]"}ke.working=typeof WeakSet<"u"&&ke(new WeakSet);function ce(y){return ke(y)}t.isWeakSet=ce;function Le(y){return u(y)==="[object ArrayBuffer]"}Le.working=typeof ArrayBuffer<"u"&&Le(new ArrayBuffer);function et(y){return typeof ArrayBuffer>"u"?!1:Le.working?Le(y):y instanceof ArrayBuffer}t.isArrayBuffer=et;function d(y){return u(y)==="[object DataView]"}d.working=typeof ArrayBuffer<"u"&&typeof DataView<"u"&&d(new DataView(new ArrayBuffer(1),0,1));function h(y){return typeof DataView>"u"?!1:d.working?d(y):y instanceof DataView}t.isDataView=h;var g=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:void 0;function E(y){return u(y)==="[object SharedArrayBuffer]"}function L(y){return typeof g>"u"?!1:(typeof E.working>"u"&&(E.working=E(new g)),E.working?E(y):y instanceof g)}t.isSharedArrayBuffer=L;function P(y){return u(y)==="[object AsyncFunction]"}t.isAsyncFunction=P;function O(y){return u(y)==="[object Map Iterator]"}t.isMapIterator=O;function k(y){return u(y)==="[object Set Iterator]"}t.isSetIterator=k;function D(y){return u(y)==="[object Generator]"}t.isGeneratorObject=D;function z(y){return u(y)==="[object WebAssembly.Module]"}t.isWebAssemblyCompiledModule=z;function Se(y){return A(y,l)}t.isNumberObject=Se;function tt(y){return A(y,c)}t.isStringObject=tt;function Pe(y){return A(y,f)}t.isBooleanObject=Pe;function rt(y){return s&&A(y,p)}t.isBigIntObject=rt;function Cr(y){return a&&A(y,S)}t.isSymbolObject=Cr;function ti(y){return Se(y)||tt(y)||Pe(y)||rt(y)||Cr(y)}t.isBoxedPrimitive=ti;function ri(y){return typeof Uint8Array<"u"&&(et(y)||L(y))}t.isAnyArrayBuffer=ri,["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(y){Object.defineProperty(t,y,{enumerable:!1,value:function(){throw new Error(y+" is not supported in userland")}})})})(Rn);var Ma=function(e){return e&&typeof e=="object"&&typeof e.copy=="function"&&typeof e.fill=="function"&&typeof e.readUInt8=="function"},lr={exports:{}};typeof Object.create=="function"?lr.exports=function(e,r){r&&(e.super_=r,e.prototype=Object.create(r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:lr.exports=function(e,r){if(r){e.super_=r;var n=function(){};n.prototype=r.prototype,e.prototype=new n,e.prototype.constructor=e}};var Ba=lr.exports;(function(t){var e=Object.getOwnPropertyDescriptors||function(h){for(var g=Object.keys(h),E={},L=0;L<g.length;L++)E[g[L]]=Object.getOwnPropertyDescriptor(h,g[L]);return E},r=/%[sdj%]/g;t.format=function(d){if(!N(d)){for(var h=[],g=0;g<arguments.length;g++)h.push(s(arguments[g]));return h.join(" ")}for(var g=1,E=arguments,L=E.length,P=String(d).replace(r,function(k){if(k==="%%")return"%";if(g>=L)return k;switch(k){case"%s":return String(E[g++]);case"%d":return Number(E[g++]);case"%j":try{return JSON.stringify(E[g++])}catch{return"[Circular]"}default:return k}}),O=E[g];g<L;O=E[++g])V(O)||!ne(O)?P+=" "+O:P+=" "+s(O);return P},t.deprecate=function(d,h){if(typeof I<"u"&&I.noDeprecation===!0)return d;if(typeof I>"u")return function(){return t.deprecate(d,h).apply(this,arguments)};var g=!1;function E(){if(!g){if(I.throwDeprecation)throw new Error(h);I.traceDeprecation?console.trace(h):console.error(h),g=!0}return d.apply(this,arguments)}return E};var n={},i=/^$/;if(I.env.NODE_DEBUG){var o=I.env.NODE_DEBUG;o=o.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),i=new RegExp("^"+o+"$","i")}t.debuglog=function(d){if(d=d.toUpperCase(),!n[d])if(i.test(d)){var h=I.pid;n[d]=function(){var g=t.format.apply(t,arguments);console.error("%s %d: %s",d,h,g)}}else n[d]=function(){};return n[d]};function s(d,h){var g={seen:[],stylize:u};return arguments.length>=3&&(g.depth=arguments[2]),arguments.length>=4&&(g.colors=arguments[3]),T(h)?g.showHidden=h:h&&t._extend(g,h),C(g.showHidden)&&(g.showHidden=!1),C(g.depth)&&(g.depth=2),C(g.colors)&&(g.colors=!1),C(g.customInspect)&&(g.customInspect=!0),g.colors&&(g.stylize=a),c(g,d,g.depth)}t.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function a(d,h){var g=s.styles[h];return g?"\x1B["+s.colors[g][0]+"m"+d+"\x1B["+s.colors[g][1]+"m":d}function u(d,h){return d}function l(d){var h={};return d.forEach(function(g,E){h[g]=!0}),h}function c(d,h,g){if(d.customInspect&&h&&ue(h.inspect)&&h.inspect!==t.inspect&&!(h.constructor&&h.constructor.prototype===h)){var E=h.inspect(g,d);return N(E)||(E=c(d,E,g)),E}var L=f(d,h);if(L)return L;var P=Object.keys(h),O=l(P);if(d.showHidden&&(P=Object.getOwnPropertyNames(h)),ve(h)&&(P.indexOf("message")>=0||P.indexOf("description")>=0))return p(h);if(P.length===0){if(ue(h)){var k=h.name?": "+h.name:"";return d.stylize("[Function"+k+"]","special")}if(re(h))return d.stylize(RegExp.prototype.toString.call(h),"regexp");if(_e(h))return d.stylize(Date.prototype.toString.call(h),"date");if(ve(h))return p(h)}var D="",z=!1,Se=["{","}"];if(m(h)&&(z=!0,Se=["[","]"]),ue(h)){var tt=h.name?": "+h.name:"";D=" [Function"+tt+"]"}if(re(h)&&(D=" "+RegExp.prototype.toString.call(h)),_e(h)&&(D=" "+Date.prototype.toUTCString.call(h)),ve(h)&&(D=" "+p(h)),P.length===0&&(!z||h.length==0))return Se[0]+D+Se[1];if(g<0)return re(h)?d.stylize(RegExp.prototype.toString.call(h),"regexp"):d.stylize("[Object]","special");d.seen.push(h);var Pe;return z?Pe=S(d,h,g,O,P):Pe=P.map(function(rt){return A(d,h,g,O,rt,z)}),d.seen.pop(),b(Pe,D,Se)}function f(d,h){if(C(h))return d.stylize("undefined","undefined");if(N(h)){var g="'"+JSON.stringify(h).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return d.stylize(g,"string")}if(X(h))return d.stylize(""+h,"number");if(T(h))return d.stylize(""+h,"boolean");if(V(h))return d.stylize("null","null")}function p(d){return"["+Error.prototype.toString.call(d)+"]"}function S(d,h,g,E,L){for(var P=[],O=0,k=h.length;O<k;++O)ke(h,String(O))?P.push(A(d,h,g,E,String(O),!0)):P.push("");return L.forEach(function(D){D.match(/^\d+$/)||P.push(A(d,h,g,E,D,!0))}),P}function A(d,h,g,E,L,P){var O,k,D;if(D=Object.getOwnPropertyDescriptor(h,L)||{value:h[L]},D.get?D.set?k=d.stylize("[Getter/Setter]","special"):k=d.stylize("[Getter]","special"):D.set&&(k=d.stylize("[Setter]","special")),ke(E,L)||(O="["+L+"]"),k||(d.seen.indexOf(D.value)<0?(V(g)?k=c(d,D.value,null):k=c(d,D.value,g-1),k.indexOf(`
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const oi=require("pino"),w=require("@streamlayer/sl-eslib/interactive/interactive.common_pb"),it=require("@streamlayer/sl-eslib/interactive/feed/interactive.feed_pb"),V=require("@streamlayer/sl-eslib/sdkSettings/sdkSettings.common_pb"),ot=require("@streamlayer/sl-eslib/analytics/v1/invitations/invitations_pb"),te=require("nanostores"),Xt=require("nanoid"),B=require("@connectrpc/connect"),Lr=require("@connectrpc/connect-web"),Pr=require("@nanostores/query"),ln=require("@streamlayer/sl-eslib/sports/events/events_connect"),Xe=require("@streamlayer/sl-eslib/sdkSettings/client/client_connect"),hr=require("@streamlayer/sl-eslib/users/users_connect"),J=require("@streamlayer/sl-eslib/interactive/feed/interactive.feed_connect"),dn=require("@streamlayer/sl-eslib/interactive/leaderboard/interactive.leaderboard_connect");require("@streamlayer/sl-eslib/interactive/leaderboard/interactive.leaderboard_pb");const si=require("@streamlayer/sl-eslib/shortLinks/linksClient_connect"),v=require("@streamlayer/sl-eslib/analytics/v1/common/analytics.common_pb"),fn=require("@streamlayer/sl-eslib/analytics/v2/streaming/streaming_connect"),Nr=require("@streamlayer/sl-eslib/analytics/v1/interactions/interactions_pb"),ee=require("@streamlayer/sl-eslib/analytics/v1/notifications/notifications_pb");function ai(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var pn={exports:{}},q=pn.exports={},ie,oe;function Zt(){throw new Error("setTimeout has not been defined")}function er(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?ie=setTimeout:ie=Zt}catch{ie=Zt}try{typeof clearTimeout=="function"?oe=clearTimeout:oe=er}catch{oe=er}})();function hn(t){if(ie===setTimeout)return setTimeout(t,0);if((ie===Zt||!ie)&&setTimeout)return ie=setTimeout,setTimeout(t,0);try{return ie(t,0)}catch{try{return ie.call(null,t,0)}catch{return ie.call(this,t,0)}}}function ui(t){if(oe===clearTimeout)return clearTimeout(t);if((oe===er||!oe)&&clearTimeout)return oe=clearTimeout,clearTimeout(t);try{return oe(t)}catch{try{return oe.call(null,t)}catch{return oe.call(this,t)}}}var he=[],Be=!1,Te,ct=-1;function ci(){!Be||!Te||(Be=!1,Te.length?he=Te.concat(he):ct=-1,he.length&&yn())}function yn(){if(!Be){var t=hn(ci);Be=!0;for(var e=he.length;e;){for(Te=he,he=[];++ct<e;)Te&&Te[ct].run();ct=-1,e=he.length}Te=null,Be=!1,ui(t)}}q.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];he.push(new mn(t,e)),he.length===1&&!Be&&hn(yn)};function mn(t,e){this.fun=t,this.array=e}mn.prototype.run=function(){this.fun.apply(null,this.array)};q.title="browser";q.browser=!0;q.env={};q.argv=[];q.version="";q.versions={};function ye(){}q.on=ye;q.addListener=ye;q.once=ye;q.off=ye;q.removeListener=ye;q.removeAllListeners=ye;q.emit=ye;q.prependListener=ye;q.prependOnceListener=ye;q.listeners=function(t){return[]};q.binding=function(t){throw new Error("process.binding is not supported")};q.cwd=function(){return"/"};q.chdir=function(t){throw new Error("process.chdir is not supported")};q.umask=function(){return 0};var li=pn.exports;const I=ai(li),di=oi.pino({level:"trace",enabled:typeof window<"u"&&!!window.localStorage.getItem("SL_DEBUG"),browser:{write:t=>{console.log(t)}}}),me=(t,e)=>di.child({name:t},e);class fi extends Event{slEventBus;constructor(e,r){super(e),this.slEventBus=r}}const pi=me("event-bus");class hi{name;listeners;constructor(e="sl-event-bus"){this.name=e,this.listeners=new Set}emit=(e,r)=>{const n=new fi(this.name,{...r,type:e});pi.debug(n,"Emitting event"),window.dispatchEvent(n)};listen(e){return window.addEventListener(this.name,e),this.listeners.add(e),()=>{this.off(e)}}off(e){window.removeEventListener(this.name,e),this.listeners.delete(e)}destroy=()=>{this.listeners.forEach(e=>{window.removeEventListener(this.name,e),this.listeners.delete(e)}),this.listeners.clear()}}class yi{}window.slStore=Object.create(null);class It{store;name;constructor(e,r){this.store=e,this.name=r}getStore(){return this.store}}const mi=t=>{const e=Object.keys(t);return te.computed(e.map(r=>t[r].getStore()),(...r)=>Object.fromEntries(e.map((n,i)=>[n,r[i]])))};class Ae extends It{getValues=()=>this.getStore().get();getValue=e=>this.getStore().get()[e];setValue=(e,r)=>this.getStore().setKey(e,r);subscribe=(...e)=>this.getStore().subscribe(...e);unsubscribe=()=>this.getStore().off()}const H=t=>te.map(t);var de;(function(t){t.ORGANIZATION="ORGANIZATION",t.STREAM="STREAM"})(de||(de={}));const gi={[V.SdkOverlayType.BETTING]:"betting",[V.SdkOverlayType.GAMES]:"games",[V.SdkOverlayType.PUBLIC_CHAT]:"publicChat",[V.SdkOverlayType.TWITTER]:"twitter"};var He;(function(t){t.Ready="ready",t.Suspended="suspended"})(He||(He={}));class gn{status;source;config;settings;listeners=new Set;settingsKey;constructor({settings:e,...r},n){this.settingsKey=gi[r.type],this.status=te.atom(He.Suspended),this.config=new Ae(H(r),`feature:config:${this.settingsKey}`),this.settingsKey!==void 0&&e?.overlaySettings.case===this.settingsKey?this.settings=new Ae(H(e.overlaySettings.value),`feature:settings:${this.settingsKey}`):this.settings=new Ae(H({}),`feature:settings:${this.settingsKey}`),this.source=n}get featureConfig(){return this.config.getStore()}get featureSettings(){return this.settings.getStore()}registerEventListener(e){this.listeners.add(e)}enable=()=>{this.status.set(He.Ready)};disable=()=>{this.status.set(He.Suspended)};setFeatureConfig=({settings:e,...r})=>{let n;for(n in r)this.config.setValue(n,r[n]);if(e?.overlaySettings?.case!==void 0&&e?.overlaySettings.case===this.settingsKey){const i=e.overlaySettings.value;if(i!==void 0){let o;for(o in i)i[o]!==0&&i[o]!==""&&this.settings.setValue(o,i[o])}}};update=(e,r)=>{this.source===de.STREAM&&r===de.ORGANIZATION||(this.setFeatureConfig(e),this.source=r)};fireEvent(e){for(const r of this.listeners.values())try{r.onEvent(e)}catch(n){console.error(n)}}}class Y extends It{getValue=()=>this.getStore().get();getValues(){throw new Error("not implemented")}setValue=e=>this.getStore().set(e);subscribe=e=>this.getStore().subscribe(e);unsubscribe=()=>this.getStore().off();listen(e){return this.getStore().listen(e)}get(){return this.getStore().get()}}const j=t=>te.atom(t);class ae extends It{atomStore;constructor(e,r,n){super(e,`api:${r}`),this.atomStore=te.atom(),n&&e.subscribe(i=>{const o=this.atomStore.get(),s=n(i,o);o!==s&&this.atomStore.set(s)})}getAtomStore=()=>this.atomStore;getValue=async()=>{const e=this.getStore();if(e.value===void 0)throw new Error("no store");return await e.value.promise,e.get().data};getValues=()=>this.getStore().get();setValue=e=>this.getStore().set({loading:!1,data:e?.data});subscribe=e=>this.getStore().subscribe(e);unsubscribe=()=>{throw new Error("not implemented")};invalidate=()=>{this.store.invalidate()};listen=e=>this.getStore().listen(e);get(){throw new Error("not implemented")}key=()=>this.getStore().key;off=()=>this.getStore().off()}const U=new hi;async function*bi(t,e){for await(const r of e){t.response.message=r,t.received_at=Date.now(),t.id=bn++;const n={type:"__GRPC_DEVTOOLS_EXTENSION__",data:t};window.postMessage(n),yield r}}let bn=0;const vi=()=>t=>async e=>{const r={id:bn++,name:e.url,stream:e.stream,sent_at:Date.now(),request:{header:Object.fromEntries(e.header.entries()),message:e.message},response:{}};window.postMessage({type:"__GRPC_DEVTOOLS_EXTENSION__",data:r});try{const n=await t(e);if(r.received_at=Date.now(),r.response.header=Object.fromEntries(n.header.entries()),r.response.trailer=Object.fromEntries(n.trailer.entries()),e.stream){const i={type:"__GRPC_DEVTOOLS_EXTENSION__",data:{...r,stream:!1}};return window.postMessage(i),{...n,message:bi(r,n.message)}}else{r.response.message=n.message,r.latency=r.received_at-r.sent_at;const i={type:"__GRPC_DEVTOOLS_EXTENSION__",data:r};window.postMessage(i)}return n}catch(n){r.received_at=Date.now(),r.response.trailer={"grpc-status":n.code,"grpc-message":n.rawMessage},r.response.message=n.rawMessage,r.latency=r.received_at-r.sent_at;const i={type:"__GRPC_DEVTOOLS_EXTENSION__",data:r};throw window.postMessage(i),n}};window.dispatchEvent(new CustomEvent("grpc_devtools_loaded"));function vn(t){return t instanceof DOMException&&(t.code===22||t.code===1014||t.name==="QuotaExceededError"||t.name==="NS_ERROR_DOM_QUOTA_REACHED")}class xe{delimiter=":";prefix;storage;constructor(e="main",r=window.localStorage){this.prefix=`sl-sdk${this.delimiter}${e}`,this.storage=r}clear=()=>{for(const e in window.localStorage)e.startsWith(this.prefix)&&this.storage.removeItem(e)};generateKey=e=>`${this.prefix}${this.delimiter}${e.join(this.delimiter)}`;write=(...e)=>{const r=e.pop()||"",n=this.generateKey(e);try{this.storage.setItem(n,r)}catch(i){vn(i)&&this.storage===window.sessionStorage&&(window.sessionStorage.removeItem("slstreamlogs"),this.storage.setItem(n,r))}};read=(...e)=>{const r=this.storage.getItem(this.generateKey(e));return r===null?void 0:r};remove=(...e)=>{this.storage.removeItem(this.generateKey(e))}}var Z;(function(t){t.Init="init",t.Ready="ready",t.Connecting="connecting",t.Connected="connected",t.Disconnected="disconnected",t.Failed="failed",t.Reconnect="reconnect",t.Reconnecting="reconnecting"})(Z||(Z={}));class Si{params;streamCancel;method;options;headers;listeners;state;store;paramsListener;reconnectTimeout;attempt=0;constructor(e,r,n,i){const o={status:Z.Init,ts:new Date,log:[]};this.state=new Ae(H(o),`subscription:${i.name}:state`),this.options={...i,reconnectDelay:i.reconnectDelay??1e3,reconnectMaxDelay:i.reconnectMaxDelay??3e4,reconnectMaxAttempts:i.reconnectMaxAttempts??10,withStore:i.withStore??!1},this.headers=e,this.listeners=new Map,this.params=n,this.method=r,i.withStore&&(this.store=new Y(j(null),`subscription:${i.name}:store`)),"subscribe"in n&&typeof n.subscribe=="function"&&(this.paramsListener=n.subscribe(s=>{this.state.getValue("status")===Z.Connected&&(this.addStateLog(`params updated, reconnect => ${JSON.stringify(s)}`),this.reconnect())})),this.updateState(Z.Ready)}updateState=e=>{this.state.setValue("status",e),this.state.setValue("ts",new Date),this.addStateLog(`status => ${e}`)};addStateLog=e=>{const r=this.state.getStore().get().log,n=`${this.options.name} ${new Date().toISOString()}: ${e}`;if(r.push(n),this.state.setValue("log",r),localStorage.getItem("SL_DEBUG"))try{window.sessionStorage.setItem("slstreamlogs",window.sessionStorage.getItem("slstreamlogs")+`
|
|
2
|
+
`+n)}catch(i){vn(i)&&window.sessionStorage.removeItem("slstreamlogs"),window.sessionStorage.setItem("slstreamlogs",n)}};addListener=(e,r)=>this.listeners.has(e)?(this.addStateLog(`listener '${e}' not added, already exists`),()=>{}):(this.listeners.set(e,r),this.addStateLog(`listener '${e}' added`),()=>this.removeListener(e));removeListener=e=>{this.listeners.delete(e),this.addStateLog(`listener '${e}' removed`)};connect=()=>{this.updateState(Z.Connecting),this.streamCancel&&(this.addStateLog("disconnect prev connection"),this.streamCancel.abort(),this.streamCancel=void 0);const e="get"in this.params&&typeof this.params.get=="function"?this.params.get():this.params;(async()=>{this.streamCancel=new AbortController;try{const n={headers:this.headers.getValues(),signal:this.streamCancel.signal},i=this.method(e,n);for await(const o of i)this.attempt=0,this.onData(o)}catch(n){n instanceof B.ConnectError&&n.code!=B.Code.Canceled&&this.onStreamError(n)}})(),this.updateState(Z.Connected)};disconnect=()=>{this.streamCancel&&this.streamCancel.abort(),this.listeners.clear(),this.paramsListener?.(),clearTimeout(this.reconnectTimeout),this.reconnectTimeout=void 0,this.updateState(Z.Disconnected)};reconnect=()=>{if(this.reconnectTimeout)this.addStateLog("already reconnecting");else if(this.attempt<this.options.reconnectMaxAttempts){this.updateState(Z.Reconnect);const e=Math.min(this.options.reconnectMaxDelay,Math.pow(2,this.attempt)*this.options.reconnectDelay),r=Math.round(e*(1+Math.random())/2);this.reconnectTimeout=setTimeout(()=>{this.attempt++,this.updateState(Z.Reconnecting),this.addStateLog(`reconnect attempt ${this.attempt} after ${r}ms`),this.connect(),this.reconnectTimeout=void 0},r)}else this.addStateLog("max reconnect attempts reached"),this.disconnect()};getStore=()=>this.store?.getStore();onData=e=>{try{this.addStateLog(`received data => ${JSON.stringify(e)}`),this.store&&this.store.setValue(e);for(const[,r]of this.listeners)r(e);this.addStateLog(`data routed to ${this.listeners.size} listeners`)}catch(r){this.addStateLog(`error process data => ${r}`)}};onStreamError=e=>{if(this.addStateLog(`error => ${e?JSON.stringify(e):"undefined"}}`),e!==void 0){if(e instanceof B.ConnectError&&e.code!==B.Code.Canceled){this.updateState(Z.Failed),this.state.setValue("error",e),this.reconnect();return}this.disconnect()}}}const wi=new Set([B.Code.Unknown,B.Code.Internal,B.Code.DeadlineExceeded,B.Code.ResourceExhausted,B.Code.FailedPrecondition,B.Code.Unavailable,B.Code.DataLoss]),Fr=me("grpc:retry"),Ti=t=>async e=>{const r=e.contextValues.get(tr.retryAttempts),n=300,i=e.contextValues.get(tr.retryDelay);if(e.stream||r===0)return t(e);Fr.trace({url:e.url,attempts:r,maxDelay:i},"retry options");for(let o=0;;o++)try{return await t(e)}catch(s){Fr.trace({attempt:o,error:s},"retry attempt");const a=B.ConnectError.from(s);if(o>=r||!(a instanceof B.ConnectError)||!wi.has(a.code))throw s;const u=Math.min(i,Math.pow(2,o)*n),l=Math.round(u*(1+Math.random())/2);await new Promise(c=>setTimeout(c,l))}},tr={retryAttempts:B.createContextKey(10,{description:"Number of attempts to retry"}),retryDelay:B.createContextKey(3e4,{description:"Max delay between retries in milliseconds"})},Ai=()=>{const t=localStorage.getItem("sl-device-id");if(t)return t;const e=Xt.nanoid();return localStorage.setItem("sl-device-id",e),e},Ei=()=>navigator.userAgentData?.platform||navigator.platform;class Dr{toJsonOptions={emitDefaultValues:!1,enumAsInteger:!0,useProtoFieldName:!1};transport;streamTransport;nanoquery;host;$headers;interceptors=[];clients;streamClients;subscriptions;opts;constructor(e,r){this.host=e,this.opts=r,this.$headers=new Ae(H({"sl-device-id":Ai(),"sl-device-os":Ei()}),"transport:headers"),this.initInterceptors(),this.clients=new Map,this.streamClients=new Map,this.subscriptions=new Map;const[n,i,o]=Pr.nanoquery({dedupeTime:r?.dedupeTime,refetchInterval:r?.refetchInterval});this.nanoquery={createFetcherStore:n,createMutatorStore:i,utils:o},this.transport=Lr.createGrpcWebTransport({baseUrl:e,defaultTimeoutMs:1e4,interceptors:this.interceptors}),this.streamTransport=Lr.createGrpcWebTransport({baseUrl:e,interceptors:this.interceptors})}addSubscription=(e,r,n)=>{const i=this.subscriptions.get(r);if(i)return i;const o=new Si(this.$headers,e,r,n);return this.subscriptions.set(r,o),o};removeSubscription=e=>{e.disconnect(),this.subscriptions.delete(e.params)};disconnect=()=>{for(const[i,o]of this.subscriptions)o.disconnect(),this.subscriptions.delete(i);this.clients.clear(),this.streamClients.clear(),this.subscriptions.clear();const[e,r,n]=Pr.nanoquery({dedupeTime:this.opts?.dedupeTime,refetchInterval:this.opts?.refetchInterval});this.nanoquery={createFetcherStore:e,createMutatorStore:r,utils:n}};registerInterceptor=e=>{this.interceptors.push(e)};removeInterceptor=e=>{this.interceptors=this.interceptors.filter(r=>r!==e)};getClient=e=>{const r=e.typeName;if(this.clients.has(r))return this.clients.get(r);const n=B.createPromiseClient(e,this.transport);return this.clients.set(r,n),n};getStreamClient=e=>{const r=`stream-${e.typeName}`;if(this.clients.has(r))return this.clients.get(r);const n=B.createPromiseClient(e,this.streamTransport);return this.clients.set(r,n),n};createPromiseClient=(e,{params:r=[],method:n})=>{const i=this.getClient(e),o=e.methods[n].name,s=[e.typeName,o.charAt(0).toLowerCase()+o.slice(1),...Array.isArray(r)?r:[r]],a=[e.typeName,o.charAt(0).toLowerCase()+o.slice(1)];return{client:i,createRequestOptions:l=>{const c=B.createContextValues();for(const f in l){const p=tr[f];c.set(p,l[f])}return c},queryKey:s,queryKeyStr:a.join("")}};createStreamClient=e=>({client:this.getStreamClient(e)});setSdkKey=e=>{this.$headers.setValue("sdk",e)};setAuth=(e,r)=>{this.$headers.setValue("authorization",e),this.$headers.setValue("sl-user-id",r)};setHeader=(e,r)=>this.$headers.setValue(e,r);getHeader=e=>this.$headers.getValue(e);getHeaders=()=>this.$headers.getValues();initInterceptors=()=>{if(this.interceptors.length!==0)return;const e=r=>n=>{const i=this.$headers.getValues();for(const o in i)n.header.set(o,i[o]);return r(n)};this.interceptors.push(e),this.interceptors.push(vi()),this.opts?.retryable&&this.interceptors.push(Ti)}}const Ii=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(ln.Events,{method:"retrieveEventId",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>{if(!s||typeof s!="string")return"";try{return(await r.retrieveEventId({id:s})).data?.id||""}catch{return""}}})},Oi=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(Xe.Client,{method:"getStream",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>s?(await r.getStream({id:s})).data?.attributes:void 0})},_i=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(ln.Events,{method:"summary",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>s?(await r.summary({id:s})).data?.attributes:void 0})},Ci=(t,e)=>{const{queryKey:r,client:n}=e.createPromiseClient(hr.Users,{method:"me",params:[t]});return e.nanoquery.createFetcherStore(r,{fetcher:async()=>{const{data:i}=await n.me({});return{data:i}}})},ki=t=>{const{client:e,createRequestOptions:r}=t.createPromiseClient(hr.Users,{method:"bypassAuth"}),n=r({retryAttempts:0});return({userKey:i,schema:o,init:s,inviterKey:a})=>e.bypassAuth({userKey:i,schema:o,init:s,inviterKey:a},{contextValues:n})},Li=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(Xe.Client,{method:"get",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async()=>(await r.get({})).data?.attributes})},Pi=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(Xe.Client,{method:"getOrganization",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async()=>{const i=await r.getOrganization({});return i.data?{...i.data.attributes,id:i.data.id}:void 0}})},Ni=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(Xe.Client,{method:"getOrganizationAdvertising",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async()=>(await r.getOrganizationAdvertising({})).data?.attributes})},Fi=(t,e,r)=>{t.transport=new Dr(e.host,{dedupeTime:1e3*60*5,refetchInterval:1e3*60*5,retryable:!0}),t.analyticsTransport=new Dr(e.analyticsHost),t.sdk.host=t.transport.host,t.transport.setSdkKey(e.sdkKey),t.transport.setHeader("sl-sdk-version",e.version||"-"),t.transport.$headers.subscribe(n=>{t.analyticsTransport.$headers.getStore().set(n)}),t.sdk.onMount({name:"transport"},()=>()=>{t.transport.disconnect(),t.analyticsTransport.disconnect()}),r()};var le;(function(t){t.SCHEMA="schema",t.EXTERNAL_TOKEN="eToken",t.TOKEN="token"})(le||(le={}));class Ve extends xe{constructor(){super("user")}setSchema=e=>{this.write(le.SCHEMA,e)};getSchema=()=>this.read(le.SCHEMA);setToken=e=>{this.write(le.TOKEN,e)};getToken=()=>this.read(le.TOKEN);setExternalToken=e=>{this.write(le.EXTERNAL_TOKEN,e)};getExternalToken=()=>this.read(le.EXTERNAL_TOKEN);removeToken=()=>{this.remove(le.TOKEN)}}var fe;(function(t){t.DISABLED="disabled",t.INITIALIZATION="initialization",t.READY="ready",t.FAILED="failed",t.SUSPENDED="suspended"})(fe||(fe={}));const Di=t=>{const e=new Ve,r=new Y(j(e.getExternalToken()),"userKey"),n=new Y(j(e.getToken()),"userToken"),i=new ae(Ci(n.getStore(),t),"user",({data:s,error:a,loading:u},l)=>{if(!a)return s?.data?.id?s.data.id:u===!1?void 0:l}),o=new ae(Li(n.getStore(),t),"userSettings");return{userKey:r,userToken:n,user:i,userSettings:o}},Ri=t=>{const e=new Y(j(void 0),"providerStreamId"),r=new ae(Ii(e.getStore(),t),"slStreamId",o=>o?.data),n=new ae(Oi(r.getAtomStore(),t),"streamSettings"),i=new ae(_i(r.getAtomStore(),t),"streamSettings");return r.getAtomStore().listen(o=>{(o===""||o===void 0)&&(n.getStore().mutate(void 0),i.getStore().mutate(void 0))}),{providerStreamId:e,slStreamId:r,streamSettings:n,streamSummary:i}},Vi=t=>{const e=new Y(j(void 0),"enabled"),r=new Y(j(fe.DISABLED),"status"),n=new ae(Pi(e.getStore(),t),"organizationSettings",a=>a?.data?.id),i=new ae(Ni(n.getAtomStore(),t),"organizationAdvertising"),o=Di(t),s=Ri(t);return{enabled:e,status:r,providerStreamId:s.providerStreamId,slStreamId:s.slStreamId,streamSettings:s.streamSettings,streamSummary:s.streamSummary,user:o.user,userKey:o.userKey,userToken:o.userToken,userSettings:o.userSettings,organizationSettings:n,organizationAdvertising:i}};class $i extends It{stores;constructor(e){const r=Vi(e),n=mi(r);super(n,"core"),this.stores=r}getValue(){throw new Error("Not implemented")}getValues(){return this.stores}setValue(){throw new Error("Not implemented")}subscribe=e=>{let r;for(r in this.stores){const n=e[r];r in e&&n!==void 0&&this.stores[r].subscribe(e[r])}};unsubscribe=()=>this.getStore().off()}const qi=(t,e,r)=>{t.store=new $i(t.transport),t.stores=t.store.getValues(),t.sdk.enabled=t.stores.enabled.getStore(),t.sdk.status=t.stores.status.getStore(),t.sdk.sdkStore=Object.fromEntries(Object.entries(t.stores).map(([n,i])=>[n,i.getStore()])),t.sdk.organizationStore=()=>t.stores.organizationSettings.getStore(),t.sdk.streamStore=()=>t.stores.streamSettings.getStore(),t.sdk.streamSummary=()=>t.stores.streamSummary.getStore(),t.storeUnsubscribe=()=>{t.store.unsubscribe()},r()},Bi=t=>{const{client:e}=t.createPromiseClient(dn.Leaderboard,{method:"list"});return r=>e.list(r)},Sn=t=>{const{client:e}=t.createPromiseClient(dn.Leaderboard,{method:"summary"});return r=>e.summary(r)},Mi=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(hr.Users,{method:"getFriends",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>{if(!s)return[];try{return(await r.getFriends({})).data}catch{return[]}}})},Ui=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(J.Feed,{method:"get",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>(await r.get({eventId:s})).data?.attributes,refetchInterval:0,dedupeTime:1e3*60*60})},ji=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(J.Feed,{method:"syncQuestion",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>{if(!s)return;const a=await r.syncQuestion({filter:{eventId:s}});if(a.data?.attributes?.question?.type!==w.QuestionType.PROMOTION)return a.data?.attributes},dedupeTime:1e3*60*10,refetchInterval:0})},Qi=async(t,e)=>{const{client:r}=e.createPromiseClient(J.Feed,{method:"item",params:[t]});return(await r.item({id:t})).data},xi=(t,e)=>{const{client:r}=e.createStreamClient(J.Feed),n=te.atom({eventId:t.get()||"",feedId:""});return t.subscribe((o="")=>{n.set({eventId:o,feedId:""})}),e.addSubscription(r.subscription,n,{name:"feedSubscription"})},Gi=(t,e)=>{const{client:r}=e.createStreamClient(J.Feed);return e.addSubscription(r.questionSubscription,{questionId:t},{name:"questionSubscription"})},Ki=async(t,e)=>{const{client:r}=e.createPromiseClient(J.Feed,{method:"questionByUser",params:[t]});return(await r.questionByUser({questionId:t})).data?.attributes?.question},rr=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(J.Feed,{method:"questionByUser",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>(await r.questionByUser({questionId:s})).data?.attributes?.question,dedupeTime:1e3*60*5})},wn=async(t,e)=>{if(!t)return;const{client:r}=e.createPromiseClient(J.Feed,{method:"getQuestion",params:[t]}),n=await r.getQuestion({id:t});if(!n.data?.attributes)return;const{options:i,notification:o,...s}=n.data.attributes,a=i?.options.case==="promotion"?i?.options.value:void 0;return{id:s.id,question:s,promotion:a,notification:o}},zi=(t,e,r)=>{const{client:n,queryKey:i}=r.createPromiseClient(J.Feed,{method:"list",params:[t,e]});return r.nanoquery.createFetcherStore(i,{fetcher:async(o,s,a,u)=>a?(await n.list({eventId:a,filter:{types:u===Ee.ALLOWED?[]:[w.QuestionType.FACTOID,w.QuestionType.PROMOTION,w.QuestionType.TWEET],statuses:[w.QuestionStatus.ACTIVE,w.QuestionStatus.RESOLVED]}})).data:[],dedupeTime:0,refetchInterval:0})},Hi=(t,e)=>{const{client:r,queryKey:n}=e.createPromiseClient(J.Feed,{method:"list",params:[t]});return e.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s)=>{if(!s)return;const u=(await r.list({eventId:s,filter:{types:[w.QuestionType.PROMOTION],statuses:[w.QuestionStatus.ACTIVE]},pagination:{page:0,pageSize:1}})).data?.[0];if(u.type==="promotion")return wn(u.id,e)},dedupeTime:0,refetchInterval:0})},Wi=(t,e,r)=>{const n=te.batched([e,r],()=>{const a=e.get();if(!a)return;const u=r.get().data?.find(c=>c.id===a?.questionId),l=a?.question?.openedFrom;return u?(u.openedFrom=l,u):a.question}),i=te.batched(n,a=>a&&a.type==="question"?a.id:void 0),o=rr(i,t);return{$store:n,$extendedStore:o,updateExtendedQuestion:a=>{const u=o.get().data,l=(c,f)=>{if(!c||!f)return c||f||[];const p=[];for(let S=0;S<c.length;S++)p.push({...c[S],...f[S],correct:c[S].correct,youVoted:c[S].youVoted,pointsEarned:c[S].pointsEarned});return p};o.mutate({...a,options:u?.options,subject:u?.subject,appearance:u?.appearance,answers:l(u?.answers,a?.answers)})}}};var mt;(function(t){t.SHOWED="showed"})(mt||(mt={}));class Yi extends xe{constructor(){super("advertisement")}setShowed=e=>{this.write(mt.SHOWED,e,"true")};isViewed=e=>this.read(mt.SHOWED,e)}const Ji=t=>{const e=t.data?.attributes?.question;if((t.data?.attributes?.feedItem?.type==="promotion"?t.data.attributes.feedItem:void 0)===void 0||!e)return;const{options:n,notification:i,...o}=e,s=n?.options.case==="promotion"?n.options.value:void 0;return{id:o.id,question:o,notification:i,promotion:s}},st=t=>t.startsWith("http://")||t.startsWith("https://")?new URL(t).toString():t,Xi=({gamOptions:t,gamBaseUrl:e})=>{const r=`${e}?`,n=[];for(const i in t){const o=i.replace(/([a-zA-Z])(?=[A-Z])/g,"$1_").toLowerCase(),s=t[i];if(s)if(typeof s=="string")n.push(`${o}=${st(s)}`);else if(Array.isArray(s))n.push(`${o}=${s.map(st).join(",")}`);else{const a=Object.entries(s).map(([u,l])=>Array.isArray(l)?`${u}=${l.map(st).join(",")}`:typeof l=="string"?`${u}=${st(l)}`:`${u}=${l}`).join("&").replaceAll("=","%3D").replaceAll("&","%26").replaceAll(",","%2C");n.push(`${o}=${a}`)}}return r+n.join("&")},Ne=t=>(t?.promotion?.type===w.PromotionType.INGAME_IAB11_LBAR||t?.promotion?.type===w.PromotionType.INGAME_IAB21_LBAR)&&!!t.promotion.additionalBanner?.imageUrl,Zi=(t,e,r)=>{let n=!1;const i=r.transport,o=me("advertisement"),s=new Yi,a=H({}),u=Hi(t,i),l=b=>{if(b?.fromNotification){a.setKey("hasNotification",!1);const g=a.get(),T=g.data?.question.id,D=g.data?.promotion?.type;T&&(U.emit("advertisement",{action:"opened",payload:{id:T,type:D,hasBanner:Ne(g.data),openedFrom:"notification"}}),U.emit("advertisement",{action:"notification-opened",payload:{id:T,type:D,hasBanner:Ne(g.data)}}))}},c=()=>{const b=a.get(),g=b.data?.question.id,T=b.data?.promotion?.type,D=a.get()?.isOpened;g&&!D&&(o.debug({id:g},"markAsViewed: %o"),s.setShowed(g),a.setKey("isOpened",!0),U.emit("advertisement",{action:"viewed",payload:{id:g,type:T,hasBanner:Ne(b.data)}}))},f=(b,g)=>{g?a.set({loading:!1,error:void 0,data:g,hasNotification:g?.notification?.enabled===w.NotificationEnabled.NOTIFICATION_ENABLED,close:()=>p(g.question.id),togglePause:T=>S(g.question.id,T),isViewed:!!s.isViewed(g.question.id)}):(a.setKey("loading",!0),wn(b,i).then(T=>a.set({loading:!1,error:void 0,data:T,hasNotification:T?.notification?.enabled===w.NotificationEnabled.NOTIFICATION_ENABLED,close:()=>p(T?.question.id),togglePause:D=>S(T?.question.id,D),isViewed:T&&!!s.isViewed(T.question.id)})).catch(T=>a.set({loading:!1,error:T,data:void 0})))};a.subscribe((b,g)=>{if(!(b.data?.id===g?.data?.id&&b.isPaused!==g?.isPaused)){if(b.data?.promotion?.type===w.PromotionType.EXTERNAL_AD&&!b?.externalAd&&b.data.promotion.adCampaigns?.gamOptions&&b.data.promotion.adCampaigns?.gamBaseUrl){const T=Xi(b.data.promotion.adCampaigns);a.setKey("externalAd",{type:"gam",url:T})}b.data?.promotion&&!b.isOpened&&(U.emit("advertisement",{action:"received",payload:{id:b.data.question.id,type:b.data.promotion.type,hasNotification:!!b.hasNotification,hasBanner:Ne(b.data),isViewed:!!s.isViewed(b.data.question.id)},skipAnalytics:b.data.question.id===g?.data?.question.id}),b.data.question.id!==g?.data?.question.id&&!s.isViewed(b.data.question.id)&&U.emit("advertisement",{action:"notification-received",payload:{id:b.data.question.id,type:b.data.promotion.type,hasNotification:!0,hasBanner:Ne(b.data),isViewed:!1}})),!b?.data&&g?.data&&U.emit("advertisement",{action:"closed",payload:{id:g.data.question.id,type:g.data.promotion?.type,hasNotification:!!g.hasNotification,hasBanner:Ne(g.data),isViewed:!!s.isViewed(g.data.question.id)}})}});const p=b=>{(!b||a.get()?.data?.question.id===b)&&a.set({})},S=(b,g)=>{a.get()?.data?.question.id===b&&a.setKey("isPaused",g)};return{connect:()=>{n||(n=!0,u.subscribe((b,g)=>{b.data&&(!g?.data||b.data.id!==g.data.id)&&f(b.data.question.id,b.data)}),e.addListener("promotion",b=>{const g=Ji(b);if(g){if(g.question.status===w.QuestionStatus.RESOLVED){p(g.question.id),o.debug({promotion:g},"resolved: %o");return}if(g.question.status===w.QuestionStatus.ACTIVE){o.debug({promotion:g},"active: %o"),f(g.question.id,g);return}o.debug({promotion:g},"skip: %o")}}))},hide:p,show:f,open:l,markAsViewed:c,$store:a}};var Ee;(function(t){t.ALLOWED="allowed",t.DISALLOWED="disallowed"})(Ee||(Ee={}));class eo{slStreamId;organizationId;userId;interactiveAllowed;openedQuestionId;openedQuestion;activeQuestionId;feedList;moderationId;moderation;feedSubscription;questionSubscription;advertisement;notifications;log;transport;cancels=new Set;constructor(e){this.transport=e.transport,this.log=me("gamification-background"),this.slStreamId=e.stores.slStreamId.getAtomStore(),this.organizationId=e.stores.organizationSettings.getAtomStore(),this.userId=e.stores.user.getAtomStore(),this.moderationId=new Y(j(void 0),"moderationId").getStore(),this.interactiveAllowed=new Y(j(Ee.DISALLOWED),"interactiveAllowed").getStore(),this.openedQuestionId=new Y(j(void 0),"openedQuestionId").getStore(),this.notifications=e.notifications,this.moderation=new ae(Ui(this.slStreamId,e.transport),"gamification:moderation"),this.feedList=new ae(zi(this.slStreamId,this.interactiveAllowed,e.transport),"gamification:feedList"),this.activeQuestionId=ji(this.slStreamId,e.transport),this.openedQuestion=Wi(e.transport,this.openedQuestionId,this.feedList.getStore()),this.cancels.add(this.openedQuestionId.listen(r=>{this.log.debug({item:r},"received question"),r?.questionId?(this.questionSubscription=Gi(r.questionId,e.transport),this.questionSubscription.addListener("feed-subscription-opened-question",n=>{this.openedQuestion.updateExtendedQuestion(n.data?.attributes?.question)}),this.questionSubscription.connect()):(this.log.info("cleanup on close question"),this.questionSubscription!==void 0&&(e.transport.removeSubscription(this.questionSubscription),this.questionSubscription=void 0))})),this.feedSubscription=xi(this.slStreamId,e.transport),this.cancels.add(this.feedSubscription.addListener("feed-subscription-active-question",r=>{const n=this.activeQuestionId.get().data?.question?.id,i=r.data?.attributes?.question;if(!(!i||i.type===w.QuestionType.PROMOTION)){if(i.status===w.QuestionStatus.RESOLVED){n===i.id&&this.activeQuestionId.mutate(void 0);return}window.requestAnimationFrame(()=>{this.activeQuestionId.mutate(r.data?.attributes)})}})),this.cancels.add(this.feedSubscription.addListener("moderation update",r=>{window.requestAnimationFrame(()=>{r.data?.attributes?.question===void 0&&r.data?.attributes?.moderation&&this.moderation.invalidate()})})),this.cancels.add(this.activeQuestionId.subscribe((r,n)=>{r.data?.feedItem&&r.data?.feedItem?.id!==n?.data?.feedItem?.id&&e.onQuestionActivate({stage:"activate",id:r.data.feedItem.id,isViewed:!!this.notifications.isViewed(this.getCurrentSessionId({prefix:"notification",entity:r.data.feedItem.id})),hasNotification:!0,type:r.data.feedItem.type}),!r.data?.feedItem&&n?.data?.feedItem&&e.onQuestionActivate({stage:"deactivate",id:n.data.feedItem.id,isViewed:!!this.notifications.isViewed(this.getCurrentSessionId({prefix:"notification",entity:n.data.feedItem.id})),hasNotification:!0,type:n.data.feedItem.type})})),this.feedSubscription.connect(),this.cancels.add(this.interactiveAllowed.listen(()=>{window.requestAnimationFrame(()=>{this.activeQuestionId.invalidate()})})),e.sdk.onMount({name:"gamification-background"},()=>()=>{this.activeQuestionId.off();for(const r of this.cancels)r(),this.cancels.delete(r)}),this.advertisement=Zi(this.slStreamId,this.feedSubscription,e)}getCurrentSessionId=e=>{const r=e.eventId||this.slStreamId.get()||"",n=e.userId||this.userId.get()||"",i=e.organizationId||this.organizationId.get()||"",o=e.entity||"",s=e.prefix||"";return[i,r,n,s,o].join(":")};disconnect=()=>{this.feedSubscription?.disconnect(),this.questionSubscription!==void 0&&(this.transport.removeSubscription(this.questionSubscription),this.questionSubscription=void 0)};openQuestion=(e,r)=>{this.openedQuestionId.set({questionId:e,question:r}),this.notifications.markAsViewed(this.getCurrentSessionId({prefix:"notification",entity:e}))};closeQuestion=e=>{this.openedQuestionId.set(void 0),e&&this.notifications.markAsViewed(this.getCurrentSessionId({prefix:"notification",entity:e}))}}class to{notificationsList;store;timeouts;waitingQueue;activeQueue;options;logger;constructor(e){this.options=e,this.logger=me("notifications"),this.store=new Map,this.timeouts=new Map,this.waitingQueue=new Set,this.activeQueue=new Set,this.notificationsList=j(new Map)}addToQueue=e=>{if(this.store.has(e.id)){this.logger.debug({notification:e},"skip existed notification: %o");return}const r=e.close,n=e.action;if(this.store.set(e.id,{...e,close:(...i)=>{r&&r(...i),this.closeNotification(e.id)},action:(...i)=>{n&&n(...i),this.closeNotification(e.id,{animateHiding:!1})}}),this.waitingQueue.add(e.id),this.activeQueue.size===this.options.concurrency){const[i]=this.activeQueue;if(this.store.get(i)?.persistent!==!0)this.closeNotification(i);else{const[s]=this.waitingQueue;this.waitingQueue.size>1&&this.closeNotification(s),this.tickWaitingQueue()}}else this.tickWaitingQueue()};tickWaitingQueue=()=>{if(this.activeQueue.size<this.options.concurrency){const[e]=this.waitingQueue;if(!e)return;this.activeQueue.add(e),this.waitingQueue.delete(e),this.logger.debug({job:e},"waiting queue tick"),this.tickActiveQueue(e)}else this.logger.debug({queueSize:this.activeQueue.size,concurrency:this.options.concurrency},"waiting queue tick skipped")};tickActiveQueue=e=>{if(!e)return;const r=this.store.get(e);if(!r){this.logger.debug({notificationId:e},"active queue tick skipped, notification not exist");return}U.emit("notification",{action:"received",payload:{questionId:r.data.questionId,questionType:r.data.questionType}});const n=setTimeout(()=>{const i=e,o=new Map(this.notificationsList.get());o.set(r.id,r),this.notificationsList.set(o);const s=setTimeout(()=>{this.logger.debug({notificationId:i,delay:r.autoHideDuration||5e3},"notification hiding by autoHideDuration"),this.closeNotification(i)},r.autoHideDuration||5e3);this.timeouts.set(i,s),this.logger.debug({notificationId:i,queue:[...o.values()]},"notification displayed")},r.delay||0);this.timeouts.set(e,n),this.logger.debug({notificationId:e},"active queue tick completed"),this.tickWaitingQueue()};closeNotification=(e,{animateHiding:r=!0}={})=>{const n=new Map(this.notificationsList.get()),i=n.get(e);if(i){i.hiding=!(this.waitingQueue.size>=this.options.concurrency)&&r,this.notificationsList.set(n);const o=setTimeout(()=>{const s=new Map(this.notificationsList.get());s.delete(e),this.notificationsList.set(s);const a=this.timeouts.get(e);a!==void 0&&(clearTimeout(a),this.timeouts.delete(e)),this.logger.debug({notificationId:e},"notification hidden"),i.hiding&&U.emit("notification",{action:"closed",payload:{questionId:i.data.questionId,questionType:i.data.questionType}})},this.options.animationDelay||0);this.timeouts.set(e,o)}return this.store.delete(e),this.activeQueue.delete(e),this.waitingQueue.delete(e),this.tickWaitingQueue(),this.logger.debug({notificationId:e},"notification hiding"),i};drain=()=>{this.store.clear(),this.timeouts.clear(),this.waitingQueue.clear(),this.activeQueue.clear(),this.notificationsList.off(),this.notificationsList.set(new Map)}}var gt;(function(t){t.OPENED="opened"})(gt||(gt={}));class ro extends xe{constructor(){super("notification")}setOpened=e=>{this.write(gt.OPENED,e,"true")};isOpened=e=>this.read(gt.OPENED,e);clearNotification=()=>{this.clear()}}var be;(function(t){t[t.ONBOARDING=1]="ONBOARDING",t[t.QUESTION=2]="QUESTION",t[t.QUESTION_RESOLVED=3]="QUESTION_RESOLVED"})(be||(be={}));class no{queue;storage;constructor(e={}){this.storage=new ro,this.queue=new to({concurrency:1,animationDelay:1600,...e})}isViewed=e=>this.storage.isOpened(e);add=e=>{if(!this.isViewed(e.id)){if(e.data&&e.emitEvent){const n=e.action;e.action=(...i)=>{n&&n(...i),U.emit("notification",{action:"opened",payload:{questionId:e.data.questionId,questionType:e.data.questionType}})}}this.queue.addToQueue(e)}};close=(e,{markAsViewed:r=!0,animateHiding:n}={})=>{this.queue.closeNotification(e,{animateHiding:n}),r&&this.markAsViewed(e)};getActiveNotification=()=>{const e=this.queue.notificationsList.get();if(!e?.size)return null;for(const n of e.values())if(n.type===be.ONBOARDING)return n;return e.values().next().value};getQueueStore=()=>this.queue.notificationsList;markAsViewed=e=>{this.storage.setOpened(e)}}const io=(t,e,r)=>{t.notifications=new no(void 0),t.addNotification=t.notifications.add,t.sdk.getNotificationsStore=()=>t.notifications.getQueueStore(),t.sdk.getActiveNotification=()=>t.notifications.getActiveNotification(),t.sdk.onMount({name:"notifications"},()=>()=>{t.notifications.queue.drain()}),r()};var Je;(function(t){t.UNKNOWN="unknown",t.ALREADY_VOTED="already_voted"})(Je||(Je={}));const oo=async(t,e)=>{const{client:r,createRequestOptions:n}=t.createPromiseClient(J.Feed,{method:"submitAnswer"}),i=n({retryAttempts:0});try{return await r.submitAnswer({data:e},{contextValues:i})}catch(o){throw B.ConnectError.from(o)?.code===B.Code.AlreadyExists?new Error(Je.ALREADY_VOTED):new Error(Je.UNKNOWN)}},so=(t,e)=>{const{client:r,createRequestOptions:n}=t.createPromiseClient(J.Feed,{method:"submitInplay"}),i=n({retryAttempts:0});return r.submitInplay({data:{eventId:+e}},{contextValues:i})};var $e;(function(t){t.ONBOARDING="onboarding",t.ONBOARDING_IO="onboarding_io"})($e||($e={}));class ao extends xe{constructor(){super("gamification-session",window.sessionStorage)}writeValue=(e,r)=>{this.write(...e,r)};readValue=e=>this.read(...e)}class Tn extends xe{sessionStorage;constructor(){super("gamification"),this.sessionStorage=new ao}saveOnboardingStatus=({userId:e,eventId:r,organizationId:n},i)=>{this.write($e.ONBOARDING,n,e,r,i)};getOnboardingStatus=({userId:e,eventId:r,organizationId:n})=>this.read($e.ONBOARDING,n,e,r);setOnboardingInstantOpen=({userId:e,eventId:r,organizationId:n})=>{this.sessionStorage.writeValue([$e.ONBOARDING_IO,n,e,r],"1")};getOnboardingInstantOpen=({userId:e,eventId:r,organizationId:n})=>this.sessionStorage.readValue([$e.ONBOARDING_IO,n,e,r])}const uo={pageSize:10},co=(t,e,r,n,i)=>{let o=0;const s=j({pageSize:uo.pageSize,page:0}),a=H({data:[],key:Date.now(),hasMore:!0,loading:void 0,error:void 0}),u=Bi(t),l=async()=>{const p=e.get(),S=n.getStore().get().data?.map(A=>A.slId)||[];if(p&&S?.length){const A=r.get();A&&S.push(A),a.setKey("loading",!0),a.setKey("data",[]);const g=await u({eventId:p,usersIds:S});a.set({data:g.data.map((T,D)=>({...T.attributes,friendsRank:D+1})),hasMore:!1,key:Date.now(),loading:!1}),g.meta&&(o=Math.round(g.meta.count/g.meta.pageSize))}},c=()=>{l()},f=p=>{const S=s.get(),A=p||S.page+1;A<=o&&s.set({...S,page:A})};return te.onMount(a,()=>{const p=e.listen(l),S=n.listen(l);return()=>{p(),S()}}),{$store:a,fetchMore:f,invalidate:c}};class lo extends xe{get=this.read;set=this.write;del=this.remove;constructor(){super("deep-link-context",window.sessionStorage)}}const Rr="sldl",Ot="sldl_uid",An="sldl_eid",En="sldl_e_eid",fo=new Set([Ot,An,En]),Vr=t=>{const e={},r={};for(const[n,i]of t)fo.has(n)?e[n]=i:r[n]=i;return{result:e,remain:r}},po=({hash:t,search:e})=>{if(t&&t.includes(Rr)){const r=new URLSearchParams(t.substr(1));return{hash:Vr(r)}}if(e&&e.includes(Rr)){const r=new URLSearchParams(e);return{search:Vr(r)}}return null},$r=me("deep_link"),se={debug:(...t)=>{$r.debug(...t),localStorage.getItem("SL_DEBUG")&&console.log(...t)},trace:(...t)=>{$r.trace(...t),localStorage.getItem("SL_DEBUG")&&console.log(...t)}},ho=(t,e)=>{const{hash:r,search:n}=window.location;if(se.debug({hash:r,search:n},"get deep link data from"),r||n){const i=po({hash:r,search:n});if(se.debug(i,"parse deep link result"),i){const{hash:o,search:s}=i,{result:a,remain:u}=o||s;if(Object.keys(a).length!==0){t.setValue("data",a);const l=Object.keys(u).length!==0;if(o){let c="";l&&(c=`#${new URLSearchParams(u).toString()}`,se.debug({updatedHash:c},"update hash")),window.history.replaceState(null,"",window.location.pathname+window.location.search+c)}if(s){let c="";l&&(c=`?${new URLSearchParams(u).toString()}`,se.debug({updatedSearch:c},"update search")),window.history.replaceState(null,"",window.location.pathname+c+window.location.hash)}e(a)}}}t.setValue("parsed",!0)},yo=(t,e,r)=>{const n=new lo,i=n.get("sl-deep-link-store");let o={};if(i)try{o=JSON.parse(i)}catch(a){se.debug(a)}t.deepLink={$store:new Ae(H(o),"deep-link-context"),getDeepLinkData:()=>{const{data:a,used:u}=t.deepLink.$store.getValues();return{data:a,used:u}},deepLinkUsed:a=>{se.debug(`logged in with inviterId: ${a}`),t.deepLink.$store.setValue("used",!0)},onDeepLinkHandlers:new Set},t.sdk.getInviter=()=>{const{data:a,used:u}=t.deepLink.getDeepLinkData();return u?a?.[Ot]:void 0},t.sdk.inviteDisplayed=()=>{t.deepLink.$store.getStore().set({}),t.deepLink.$store.getStore().off(),n.del("sl-deep-link-store")},t.deepLink.$store.subscribe(a=>n.set("sl-deep-link-store",JSON.stringify(a))),t.sdk.addDeepLinkHandler=a=>{localStorage.getItem("SL_DEBUG")&&se.trace("adding deep link handler"),t.deepLink.onDeepLinkHandlers.add(a)},e.onDeepLinkHandled&&t.sdk.addDeepLinkHandler(e.onDeepLinkHandled),t.sdk.removeDeepLinkHandler=a=>{se.trace("removing deep link handler"),t.deepLink.onDeepLinkHandlers.delete(a)};const s=a=>{t.deepLink.$store.setValue("handled",!0),se.trace({size:t.deepLink.onDeepLinkHandlers.size},"deep link handled, call callbacks");for(const u of t.deepLink.onDeepLinkHandlers)try{se.trace("called handler"),u(a)}catch(l){console.error(l)}};ho(t.deepLink.$store,s),r()},mo=me("bypass");class go extends yi{$coreStore;deepLink;transport;bypassLogin;constructor(e,r,n){super(),this.$coreStore=e,this.deepLink=n,this.transport=r,this.bypassLogin=ki(this.transport),this.connect()}me=async()=>(this.$coreStore.getValues().user.invalidate(),(await this.$coreStore.getValues().user.getValue())?.data);login=async(e,r)=>{this.$coreStore.getValues().userKey.setValue(r);const{used:n,data:i}=this.deepLink.getDeepLinkData(),o=n?"":i?.[Ot];mo.debug({inviterKey:o},"login with inviterKey");const s=await this.bypassLogin({schema:e,userKey:r,inviterKey:o,init:!1}),a=s.meta?.jwt,u=s.data?.id;if(!a||!u)throw new Error("internal: token missing");return s.meta?.inviterKey&&this.deepLink.deepLinkUsed(s.meta.inviterKey),this.$coreStore.getValues().user.getStore().mutate({data:s.data}),this.saveUser(a,u),a};isAuthenticated=()=>this.me();logout=()=>{this.$coreStore.getValues().user.setValue(),this.$coreStore.getValues().userKey.setValue(),this.$coreStore.getValues().userToken.setValue(),this.transport.setAuth("",""),new Ve().clear()};softLogout=()=>{const e=new Ve;this.transport.setAuth("",""),e.setToken(""),this.reLogin()};reLogin=()=>{const e=new Ve,r=e.getToken(),n=e.getExternalToken();if(this.$coreStore.getValues().userKey.setValue(n),r)return this.saveUser(r,""),this.me().then(i=>{if(i?.id){const o=i.id;this.saveUser(r,o)}});if(n&&!r){const i=e.getSchema();i&&n&&this.login(i,n).catch(()=>{this.logout()})}};saveUser=(e,r)=>{this.transport.setAuth(e,r),this.$coreStore.getValues().userToken.setValue(e),new Ve().setToken(e)};connect=()=>{this.transport.registerInterceptor(e=>async r=>{try{return await e(r)}catch(n){throw n.code&&(n.code===7||n.code===16)&&this.transport.getHeader("authorization")&&this.softLogout(),n}})}}const ze=new Ve,bo=(t,e,r)=>{t.auth=new go(t.store,t.transport,t.deepLink),t.stores.status.listen(n=>{n===fe.READY&&t.auth.reLogin()}),t.sdk.userId=t.stores.user.getAtomStore,t.sdk.authorizationBypass=async(n,i)=>{if(!(ze.getSchema()===n&&ze.getExternalToken()===i&&t.transport.getHeader("authorization")))try{await t.auth.login(n,i),ze.setSchema(n),ze.setExternalToken(i)}catch{t.sdk.logout()}},t.sdk.logout=()=>{t.auth.logout(),ze.clear()},t.sdk.getUserStore=()=>t.stores.user.getStore(),t.sdk.isUserAuthorized=()=>t.auth.isAuthenticated(),r()},qr=me("video_player"),at={debug:(...t)=>{qr.debug(...t),localStorage.getItem("SL_DEBUG")&&console.log(...t)},trace:(...t)=>{qr.trace(...t),localStorage.getItem("SL_DEBUG")&&console.log(...t)}},vo=(t,e,r)=>{t.videoPlayer={controllers:new Set},t.sdk.addVideoPlayerController=n=>{at.trace("adding video player controller"),t.videoPlayer.controllers.add(n)},e.videoPlayerController&&t.sdk.addVideoPlayerController(e.videoPlayerController),t.sdk.removeVideoPlayerController=n=>{at.trace("removing video player controller"),t.videoPlayer.controllers.delete(n)},t.sdk.controlVideoPlayer=n=>{at.trace("controlling video player");for(const i of t.videoPlayer.controllers){at.trace("calling video player controller");try{i(n)}catch(o){console.error(o)}}},r()},So={[w.QuestionType.FACTOID]:"insight",[w.QuestionType.POLL]:"poll",[w.QuestionType.TRIVIA]:"trivia",[w.QuestionType.PREDICTION]:"prediction",[w.QuestionType.TWEET]:"tweet"},wo=(t,e,r)=>{t.sdk.uiState=H({}),t.ui={enableAppNotification:function(){t.sdk.uiState.setKey("appNotification",!0)},disableAppNotification:function(){t.sdk.uiState.get().app||t.sdk.uiState.setKey("appNotification",!1)},enableApp:function(){t.sdk.uiState.set({app:!0,appNotification:!0})},disableApp:function(){t.sdk.uiState.set({...t.sdk.uiState.get(),appNotification:!1,app:!1})}},e.onContentActivate&&(t.ui.onContentActivate=e.onContentActivate);const n=i=>{t.ui.onContentActivate&&t.ui.onContentActivate({...i,type:"advertisement"})};t.onQuestionActivate=({questionType:i,...o})=>{if(t.ui.onContentActivate){const s=o.type||i&&So[i]||"question";t.ui.onContentActivate({...o,type:s})}},t.sdk.onMount({name:"ui"},()=>{const i=a=>{if(a.slEventBus?.type==="notification")switch(a.slEventBus.action){case"received":t.ui.enableAppNotification();break;case"closed":t.ui.disableAppNotification();break}if(a.slEventBus?.type==="advertisement"&&e.withAd){const u=a.slEventBus,{hasNotification:l,hasBanner:c,id:f,isViewed:p,type:S}=u.payload;switch(u.action){case"notification-opened":t.sdk.uiState.set({promotionExternalAd:S===w.PromotionType.EXTERNAL_AD,promotionBanner:c,promotionNotification:!1,promotionOverlay:!0,promotionSidebar:!0});break;case"received":if(t.sdk.closeFeature(),n({stage:"activate",id:f,hasNotification:l,hasBanner:c,isViewed:p}),!e.withAdNotification){t.sdk.uiState.set({promotionBanner:c,promotionOverlay:!0,promotionSidebar:!0,promotionExternalAd:S===w.PromotionType.EXTERNAL_AD});break}l?t.sdk.uiState.set({promotionNotification:!0}):t.sdk.uiState.set({promotionBanner:c,promotionOverlay:!0,promotionSidebar:!0,promotionExternalAd:S===w.PromotionType.EXTERNAL_AD});break;case"closed":t.sdk.uiState.set({...t.sdk.uiState.get(),promotionNotification:!1,promotionBanner:!1,promotionOverlay:!1,promotionExternalAd:!1,promotionSidebar:!1}),n({stage:"deactivate",id:f,hasNotification:l,hasBanner:c,isViewed:p});break}}},o=U.listen(i),s=t.activeFeature.subscribe(a=>{a?t.ui.enableApp():t.ui.disableApp()});return()=>{o(),s()}}),r()},To=(t,e,r)=>{const n={onMountedFired:!1},i=new Map,o=new Map;t.sdk=Object.create(null),t.sdk.options=H(e),t.sdk.withAuth=!1,t.sdk.onMount=({name:s,clear:a},u)=>{if(i.has(s)){const l=o.get(s);l&&l(),i.delete(s),o.delete(s)}i.set(s,{cb:u,clear:a}),t?.stores?.enabled?.get()==="on"&&o.set(s,u())},t.ready=()=>{t.stores.enabled.subscribe(s=>{s==="on"&&n.onMountedFired===!1&&(i.forEach(({cb:a},u)=>o.set(u,a())),n.onMountedFired=!0),s!=="on"&&n.onMountedFired===!0&&(o.forEach(a=>a()),o.clear(),i.forEach(({clear:a},u)=>a&&i.delete(u)),n.onMountedFired=!1)})},t.sdk.initializeApp=async s=>{if(t.contextConfig=s,t.stores.enabled.get()==="on")return{enabled:!0};t.storeSubscribe(),t.stores.enabled.setValue("on"),t.stores.status.setValue(fe.INITIALIZATION);try{const a=await t.stores.organizationSettings.getValue();return a?(t.stores.status.setValue(fe.READY),{enabled:!!a}):(t.stores.status.setValue(fe.FAILED),{err:"failed"})}catch(a){return t.stores.enabled.setValue(),t.stores.status.setValue(fe.FAILED),{err:`${a}`}}},t.sdk.disableApp=()=>{t.stores.enabled.get()==="on"&&(t.stores.enabled.setValue(),t.stores.status.setValue(fe.DISABLED),t.stores.slStreamId.setValue(),t.stores.providerStreamId.setValue(),t.sdk.closeFeature(!0),t.storeUnsubscribe(),t.transport.disconnect())},t.sdk.createEventSession=s=>{t.stores.providerStreamId.setValue(s)},r()},Ao=(t,e)=>{const{client:r,queryKey:n}=t.createPromiseClient(Xe.Client,{method:"generateDeepLink",params:e});return t.nanoquery.createFetcherStore(n,{fetcher:async(i,o,s,a)=>{if(!s)return{};try{return(await r.generateDeepLink({data:{gamification:!0,externalEventId:a,eventId:s}})).data?.attributes}catch{return}},dedupeTime:1e3*60*60*24,refetchInterval:0})},Eo=(t,{web:e,mobile:r})=>{const{client:n}=t.createPromiseClient(si.LinksClient,{method:"generate"});return n.generate({web:e,mobile:r})},Br=(t,e)=>{const r=new URLSearchParams(t);for(const[n,i]of Object.entries(e))r.append(n,i);return r.toString()},Io=(t,e,r,n)=>{const i=H({});return te.onMount(i,()=>Ao(t,[e,r]).subscribe(async({data:a,loading:u})=>{const l=a===void 0&&u===!1?"https://streamlayer.io":a?.url,c=n.get()||"",f=e.get()||"",p=r.get()||"",S={[Ot]:c,[An]:f,[En]:p};if(!u&&l){i.setKey("loading",!0);let A=window.location.search,b=window.location.hash;A&&b||b?A=`?${Br(A,S)}`:b=`#${Br("",S)}`;const g=window.location.origin+window.location.pathname+A+b;try{const T=await Eo(t,{web:g,mobile:l});i.set({data:T.data?.link,loading:!1})}catch{i.set({loading:!1,error:"Failed to generate short link",data:void 0})}}else i.setKey("loading",!0)})),{$store:i,fetch}};var M;(function(t){t.Unset="unset",t.Required="required",t.Optional="optional",t.Completed="completed",t.Disabled="disabled",t.Unavailable="unavailable"})(M||(M={}));const Oo=(t,e,r,n)=>{const{inplayGame:i}=t.featureSettings.get(),o=e.getCurrentSessionId({prefix:"onboarding"});i&&r.add({type:be.ONBOARDING,id:o,action:t.openFeature,close:()=>{t.onboardingProcessed.set(!0)},persistent:!0,autoHideDuration:1e6,data:{questionId:"onboarding",questionType:w.QuestionType.UNSET,onboarding:{...i,instantOpen:!n.getOnboardingInstantOpen({userId:e.userId.get()||"",organizationId:e.organizationId.get()||"",eventId:e.slStreamId.get()||""})}}})},ut=(t,e,r,n,i,o)=>{try{const s=e.userId.get();if(!s)return;if(i.getOnboardingStatus({userId:s,organizationId:e.organizationId.get()||"",eventId:e.slStreamId.get()||""})===M.Completed){t.set(M.Completed);for(const p of o)p();return}const u=e.moderation.getStore().value?.data,l=r.featureSettings.get().inplayGame;if(u===void 0||l===void 0)return;const c=u?.options?.onboardingEnabled,f=l?.titleCard?.optIn;c?f?t.set(M.Required):t.set(M.Optional):(f?t.set(M.Unavailable):t.set(M.Disabled),n.close(e.getCurrentSessionId({prefix:"onboarding"}),{markAsViewed:!1}))}catch(s){console.error(s)}},_o=(t,e,r,n)=>{let i=!1;const o=new Tn,s=j(M.Unset);s.subscribe(l=>{l!==M.Unset&&(l===M.Optional||l===M.Required?i===!1&&(Oo(t,e,n,o),i=!0):t.onboardingProcessed.set(!0),l===M.Completed&&e.activeQuestionId.invalidate(),o.setOnboardingInstantOpen({userId:e.userId.get()||"",organizationId:e.organizationId.get()||"",eventId:e.slStreamId.get()||""}))});const a=[];return ut(s,e,t,n,o,a),s.get()!==M.Completed&&(a.push(e.userId.listen(l=>{l&&ut(s,e,t,n,o,a)})),a.push(e.moderation.listen(l=>{l.data&&ut(s,e,t,n,o,a)})),a.push(t.featureSettings.listen(l=>{l&&ut(s,e,t,n,o,a)}))),{$store:s,submitInplay:async()=>{const l=e.slStreamId.get();if(l){await so(r,l),s.set(M.Completed),o.saveOnboardingStatus({organizationId:e.organizationId.get()||"",userId:e.userId.get()||"",eventId:l},M.Completed),U.emit("poll",{action:"onboardingPassed",payload:{}}),t.openFeature();const c=e.getCurrentSessionId({prefix:"onboarding"});n.close(c)}}}},Co=(t,e,r,n)=>{const i=H(void 0),o=Sn(n),s=async()=>{const u=t.get(),l=e.get(),c=r.getStore().get().data?.map(S=>S.slId);if(!c)return;const f={eventId:u,userId:l,usersIds:[...c,l]},p=await o(f);i.set(p.data?.attributes)},a=()=>{s()};return te.onMount(i,()=>{const u=t.listen(s),l=r.listen(s),c=e.listen(s);return()=>{u(),l(),c()}}),{$store:i,invalidate:a}},ko=async(t,e,r,n,i)=>{const o=Sn(i),s=t.get(),a=e.get(),u=r.getStore().get().data?.map(p=>p.slId)||[],l={eventId:s,userId:n,usersIds:[...u,a]};return(await o(l)).data?.attributes?.summary},Lo=new Set([w.QuestionType.POLL,w.QuestionType.PREDICTION,w.QuestionType.TRIVIA]);class Po extends gn{userSummary;feedList;friends;leaderboardId;leaderboardList;deepLink;onboardingStatus;openedQuestion;currentUserId;openedUser;closeFeature;openFeature;feedSubscription;activeQuestionId;openedQuestionId;advertisement;onboardingProcessed;friendsTabEnabled;notifications;transport;background;storage;submitAnswerTimeout;cancels=new Set;onQuestionActivate;constructor(e,r,n){super(e,r),this.background=new eo(n),this.advertisement=this.background.advertisement,this.onQuestionActivate=n.onQuestionActivate,this.feedSubscription=this.background.feedSubscription,this.activeQuestionId=this.background.activeQuestionId,this.openedQuestionId=this.background.openedQuestionId,this.storage=new Tn,this.feedList=this.background.feedList,this.friends=new ae(Mi(this.background.userId,n.transport),"gamification:friends"),this.currentUserId=this.background.userId,this.openedUser=j(void 0),this.onboardingProcessed=j(!n.sdk.withAuth),this.leaderboardId=new Y(j(this.settings.getValue("pinnedLeaderboardId")),"pinnedLeaderboardId").getStore(),this.onboardingStatus=_o(this,this.background,n.transport,n.notifications),this.notifications=n.notifications,this.transport=n.transport,this.closeFeature=(i=!0)=>n.sdk.closeFeature(i),this.openFeature=()=>n.sdk.openFeature(V.SdkOverlayType.GAMES),this.openedQuestion=this.background.openedQuestion,this.deepLink=Io(this.transport,this.background.slStreamId,n.stores.providerStreamId.getStore(),this.background.userId),this.userSummary=Co(this.background.slStreamId,this.background.userId,this.friends,this.transport),this.leaderboardList=co(this.transport,this.background.slStreamId,this.background.userId,this.friends),this.connect(),this.cancels.add(this.userSummary.$store.listen((i,o)=>{o?.summary&&i?.summary&&this.leaderboardList.invalidate()})),this.cancels.add(this.onboardingStatus.$store.listen(this.checkInteractiveFlag)),this.cancels.add(this.background.moderation.getStore().listen(this.checkInteractiveFlag)),this.cancels.add(this.settings.subscribe(this.checkInteractiveFlag)),this.cancels.add(this.onboardingStatus.$store.listen((i,o)=>{(o===void 0||i!==M.Unset)&&this.background.activeQuestionId.invalidate()})),this.background.activeQuestionId.listen(this.showInApp),this.friendsTabEnabled=j(!1),this.cancels.add(n.sdk.options.subscribe(i=>{i.friendsTab==="disabled"?this.friendsTabEnabled.set(!1):i.friendsTab==="enabled"&&this.friendsTabEnabled.set(!0)})),this.cancels.add(this.settings.subscribe(i=>{n.sdk.options.get().friendsTab==="activatedGame"&&this.friendsTabEnabled.set(!!i.inplayGame?.titleCard?.optIn)})),n.sdk.onMount({name:"gamification",clear:!0},()=>()=>{for(const i of this.cancels)i(),this.cancels.delete(i)})}get isInteractiveAllowed(){return this.background.interactiveAllowed.get()===Ee.ALLOWED}checkInteractiveFlag=()=>{const e=this.onboardingStatus.$store.get(),r=this.background.moderation.getStore().value?.data?.options?.onboardingEnabled,n=this.settings.getValues().inplayGame?.titleCard?.optIn,i=e===M.Completed,o=!r||i||n!==!0;this.background.interactiveAllowed.set(o?Ee.ALLOWED:Ee.DISALLOWED)};connect=()=>{this.onboardingProcessed.subscribe(e=>{e&&this.advertisement.connect()}),this.cancels.add(this.background.feedSubscription.addListener("feed-subscription-prediction-close",async e=>{if(!this.isInteractiveAllowed)return;const r=e.data?.attributes?.question,n=e.data?.attributes?.feedItem;if(!r||!n?.attributes)return;const{status:i,type:o,id:s,answers:a}=r;if(i===w.QuestionStatus.RESOLVED&&o===w.QuestionType.PREDICTION){const u=this.background.getCurrentSessionId({prefix:`notification-id:${s}`}),l=[...this.feedList.getValues().data||[]],c=l.findIndex(K=>K.id===s),f=l[c];let p=f?.attributes?.attributes?.value?.answerId;const S=rr(s,this.transport),A=S.subscribe(()=>{});await S.get().promise;let b=S.get().data;b||(b=await Ki(s,this.transport)),A(),window.requestAnimationFrame(()=>{S.invalidate()}),p||(p=b?.answers.find(({youVoted:K})=>K)?.id);const g=a.find(({correct:K})=>K),T=p?a.find(({id:K})=>K===p):void 0,D=!!T?.correct;if(f&&l[c]?.attributes?.attributes.case==="question"){try{l[c].attributes.attributes.value.answerId=p,l[c].attributes.attributes.value.openForVoting=!1,p&&(l[c].attributes.attributes.value.status=D?it.PickHistoryStatus.WON:it.PickHistoryStatus.LOST)}catch{}this.feedList.getStore().mutate(l)}if(!T||!g)return;this.openedQuestionId.get()?.questionId!==r.id&&this.notifications.add({type:be.QUESTION_RESOLVED,action:()=>this.openQuestion(r.id,n),close:()=>this.closeQuestion(s),autoHideDuration:D?15e3:12e3,id:u,emitEvent:!1,data:{questionId:s,questionType:w.QuestionType.PREDICTION,question:{title:D?`Congratulations! You answered correctly! You won ${g.points} pts!`:`Better luck next time! Correct: ${g?.text}!`,votedAnswer:{title:T?.text,points:T?.points},correctAnswerTitle:g?.text,correct:!!D,predictionResult:i===w.QuestionStatus.RESOLVED,questionTitle:r?.subject}}}),this.userSummary.invalidate()}})),this.cancels.add(this.background.feedSubscription.addListener("feed-subscription-questions-list",e=>{const r=[...this.feedList.getStore().value?.data||[]],n=e.data?.attributes?.feedItem,i=r.findIndex(o=>o.id===n?.id);if(n?.attributes&&n.attributes.attributes.case!=="promotion"&&!(n.attributes.status!==w.QuestionStatus.ACTIVE&&n.attributes.status!==w.QuestionStatus.RESOLVED)){if(i!==-1)if(n.attributes.attributes.case==="question"&&r[i].attributes?.attributes.case==="question"){const o=r[i];o.attributes&&(r[i]={...r[i],attributes:{...o.attributes,attributes:{...o.attributes.attributes,value:{...o.attributes.attributes.value,...n.attributes.attributes.value,answerId:o.attributes.attributes.value.answerId,status:o.attributes.attributes.value.status,openForVoting:o.attributes.attributes.value.openForVoting}}}})}else{const o=r[i];o.attributes&&n.attributes&&(r[i]={...r[i],attributes:{...o.attributes,attributes:{...o.attributes.attributes,value:{...o.attributes.attributes.value,...n.attributes.attributes.value}}}})}i===-1&&(r.unshift(n),U.emit("poll",{action:"received",payload:{questionId:n.id,questionType:n.attributes?.type}})),this.feedList.getStore().mutate(r)}}))};disconnect=()=>{this.background.feedSubscription.removeListener("feed-subscription-prediction-close"),this.background.feedSubscription.removeListener("feed-subscription-questions-list")};submitAnswer=async(e,r)=>{const n=rr(e,this.transport),i=n.subscribe(()=>{}),o={...n.get().data||{}},s=()=>{const a=this.feedList.getValues().data;if(!a)return;const u=a.findIndex(f=>f.id===e),l=a[u],c=l?.attributes?.attributes.case==="question"&&l.attributes.attributes.value;if(c){U.emit("poll",{action:"voted",payload:{questionId:e,questionType:c.questionType}});const f=n.get().data;if(i(),f){const p=f.answers.find(g=>g.correct===!0),S=f.answers.findIndex(g=>g.id===r),A=f.answers[S],b=f.answers.every(({percentageDecimal:g},T)=>g===o?.answers[T].percentageDecimal);a[u].attributes.attributes.value.answerId=r,a[u].attributes.attributes.value.openForVoting=!1,a[u].attributes.attributes.value.text=A?.text||"",p&&(a[u].attributes.attributes.value.status=p.id===r?it.PickHistoryStatus.WON:it.PickHistoryStatus.LOST),this.feedList.getStore().mutate([...a]),f.answers[S].correct=p?.id===r,f.answers[S].youVoted=!0,b&&f.answers.forEach(g=>{g.percentageDecimal=0}),p?.id===r&&(f.answers[S].pointsEarned=f.status===w.QuestionStatus.RESOLVED?0:p.points),n.mutate({...f})}this.submitAnswerTimeout&&clearTimeout(this.submitAnswerTimeout),this.submitAnswerTimeout=setTimeout(()=>{this.userSummary.invalidate()},1e3)}};try{await oo(this.transport,{questionId:e,answerId:r}),s()}catch(a){if(a.message===Je.ALREADY_VOTED){this.userSummary.invalidate();const u=n.subscribe(()=>{});n.invalidate(),u()}throw a}};openQuestion=(e,r)=>{if(!e)return()=>{};this.notifications.close(this.background.getCurrentSessionId({prefix:"notification",entity:e}),{animateHiding:!1});let n=r?.attributes?.type;return n||(n=(this.feedList.getStore().value?.data||[]).find(o=>o.id===e)?.attributes?.type),U.emit("poll",{action:"opened",payload:{questionId:e,questionType:n,questionOpenedFrom:r?.openedFrom}}),this.background.openQuestion(e,r)};getFeedItem=e=>Qi(e,this.transport);isOpenedQuestion=e=>!!this.notifications.isViewed(e);closeQuestion=e=>(e&&this.onQuestionActivate({stage:"deactivate",id:e,isViewed:!!this.notifications.isViewed(this.background.getCurrentSessionId({prefix:"notification",entity:e}))}),this.background.closeQuestion(e));openUser=async e=>{const r=this.leaderboardList.$store.get().data?.find(i=>i.userId===e);if(!r){this.openedUser.set(r);return}if(r.summaryLoaded){this.openedUser.set(r);return}const n={...r};try{const i=await ko(this.background.slStreamId,this.background.userId,this.friends,e,this.transport);i?.inTop!==void 0&&(this.leaderboardList.$store.setKey("data",this.leaderboardList.$store.get().data?.map(o=>(o.userId===e&&(o.inTop=i.inTop),o))),n.inTop=i.inTop)}catch(i){console.error(i)}this.openedUser.set(n)};closeUser=()=>{this.openedUser.set(void 0)};showInApp=e=>{const r=this.onboardingStatus.$store.get();if(e&&e.data&&r&&r!==M.Unset&&e.data.question?.id!==void 0&&e.data.question?.bypassNotifications?.inAppSilence!==w.SilenceSetting.ON&&e.data.question.status===w.QuestionStatus.ACTIVE&&!e.data.question.marketClosed){if(Lo.has(e.data.question.type))this.isInteractiveAllowed&&e.data.question.notification!==void 0&&this.notifications.add({type:be.QUESTION,action:()=>this.openQuestion(e.data?.question?.id,e.data?.feedItem),close:()=>this.closeQuestion(e.data?.question?.id),autoHideDuration:1e3*60,id:this.background.getCurrentSessionId({prefix:"notification",entity:e.data.question.id}),emitEvent:!0,data:{questionId:e.data.question.id,questionType:e.data.question.type,question:{title:e.data.question.notification.title}}});else if(e.data.question.type===w.QuestionType.FACTOID){const n=e.data.question.options?.options.value,i=e.data.question.notification?.title||e.data.question.subject||"",o=e.data.question.notification?.body||n.body,s={heading:i,body:o,imageMode:n?.imageMode,image:n?.image,video:{id:n?.video?.id||"",url:n?.video?.url||"",thumbnailUrl:n?.video?.thumbnailUrl||""},webLink:{label:"",url:""}};this.notifications.add({type:be.QUESTION,action:()=>this.openQuestion(e?.data?.question?.id,e?.data?.feedItem),close:()=>this.closeQuestion(e?.data?.question?.id),autoHideDuration:1e3*120,emitEvent:!0,id:this.background.getCurrentSessionId({prefix:"notification",entity:e.data.question.id}),data:{questionId:e.data.question.id,questionType:e.data.question.type,insight:s}})}else if(e.data.question.type===w.QuestionType.TWEET&&e.data.question.notification!==void 0){const n=e.data.question.options?.options.value,i={title:e.data.question.notification?.title,body:e.data.question.notification?.body,image:e.data.question.notification?.image,account:n?.tweetMeta?.account||"",accountVerified:!!n?.tweetMeta?.accountVerified,tweet:n?.tweetMeta?.tweet,tweetId:e.data.question.id};this.notifications.add({type:be.QUESTION,action:()=>this.openQuestion(e.data?.question?.id,e.data?.feedItem),close:()=>this.closeQuestion(e.data?.question?.id),autoHideDuration:1e3*120,emitEvent:!0,id:this.background.getCurrentSessionId({prefix:"notification",entity:e.data.question.id}),data:{questionId:e.data.question.id,questionType:e.data.question.type,tweet:i}})}}}}const No={[V.SdkOverlayType.GAMES]:!0};class Fo extends gn{constructor(e,r){super(e,r)}}const Do=(t,e,r)=>t.type===V.SdkOverlayType.GAMES?new Po(t,e,r):new Fo(t,e),Ro=(t,e,r)=>{t.features=new Map,t.sdk.featuresList=new Y(j(new Set),"features-list"),t.activeFeature=new Y(j(V.SdkOverlayType.UNSET),"activeFeature"),t.sdk.getFeatures=()=>t.features,t.sdk.getFeature=n=>t.features.get(n),t.sdk.getActiveFeature=()=>t.activeFeature.getStore(),t.sdk.openFeature=n=>{t.activeFeature.setValue(n)},t.sdk.closeFeature=(n=!1)=>{const i=t.activeFeature.getValue();if(t.activeFeature.setValue(V.SdkOverlayType.UNSET),n&&i){t.features.delete(i);const o=t.sdk.featuresList.getValue();o&&o.delete(i),t.sdk.featuresList.setValue(o)}},t.initFeature=(n,i=de.ORGANIZATION)=>{if(n.type in No&&!t.features.has(n.type)){const o=Do(n,i,t);t.features.set(n.type,o);let s=t.sdk.featuresList.getValue();s?s.add(n.type):s=new Set([n.type]),t.sdk.featuresList.setValue(new Set(s))}},t.updateFeature=(n,i)=>{t.features.get(n.type)?.update(n,i)},t.destroyFeature=n=>{t.features.delete(n.type);const i=t.sdk.featuresList.getValue();i&&i.delete(n.type),t.sdk.featuresList.setValue(new Set(i))},t.reinitializeFeatures=async()=>{const n=await t.stores.organizationSettings.getValue();t.features.clear(),t.sdk.featuresList.setValue(new Set);for(const i of n?.overlays||[])t.initFeature(i,de.ORGANIZATION)},t.stores.providerStreamId.listen(n=>{n||t.reinitializeFeatures()}),t.storeSubscribe=()=>{const n=(o,s)=>{if(s?.overlays&&!(t.contextConfig?.skipOrganizationSettings&&o===de.ORGANIZATION))for(const a of s.overlays)a.sdkEnable===!0&&(t.features.has(a.type)?t.updateFeature(a,o):t.initFeature(a,o))},i={organizationSettings:o=>{if(o.data)try{n(de.ORGANIZATION,o.data)}catch(s){console.log(s)}},streamSettings:o=>{if(o.data)try{n(de.STREAM,o.data)}catch(s){console.log(s)}}};t.store.subscribe(i)},r()};class Vo{analytics;constructor(e){this.analytics=e,this.analytics.onConnect(()=>{const r=n=>{if(n.slEventBus?.type==="invitation")switch(n.slEventBus.action){case"sent":this.sent(n.slEventBus.payload);break}};return U.listen(r)})}accepted=()=>{this.analytics.write("invitation",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.INVITATION_ACCEPTED},category:ot.InvitationCategory.GAMES,from:ot.InvitationFrom.UNSET})};sent=({from:e})=>{this.analytics.write("invitation",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.INVITATION_SENT},category:ot.InvitationCategory.GAMES,from:e||ot.InvitationFrom.UNSET})}}class $o{analytics;constructor(e){this.analytics=e,this.analytics.onConnect(()=>{const r=n=>{if(n.slEventBus?.type==="interactions")switch(n.slEventBus.action){case"tap":this.tap();break;case"scroll":this.scroll();break}};return U.listen(r)})}tap=()=>{this.analytics.write("interactions",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.INTERACTIONS},actionType:Nr.InteractionActionType.TAP})};scroll=()=>{this.analytics.write("interactions",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.INTERACTIONS},actionType:Nr.InteractionActionType.SCROLL})}}const qo={[w.PromotionType.UNSET]:v.TopicSubType.UNSET,[w.PromotionType.INGAME_IAB21]:v.TopicSubType.PROMOTION_INGAME_IAB21,[w.PromotionType.INGAME_IAB11_LBAR]:v.TopicSubType.PROMOTION_INGAME_IAB11_LBAR,[w.PromotionType.INGAME_IAB11]:v.TopicSubType.PROMOTION_INGAME_IAB11,[w.PromotionType.INGAME_IAB21_LBAR]:v.TopicSubType.PROMOTION_INGAME_IAB21_LBAR,[w.PromotionType.INGAME_IAB61]:v.TopicSubType.PROMOTION_INGAME_IAB61,[w.PromotionType.EXTERNAL_AD]:v.TopicSubType.PROMOTION_GAM},nr=t=>t?qo[t]:v.TopicSubType.UNSET;class Bo{analytics;constructor(e){this.analytics=e,this.analytics.onConnect(()=>{const r=n=>{if(!n.slEventBus?.skipAnalytics&&n.slEventBus?.type==="advertisement"){const i=nr(n.slEventBus.payload.type);switch(n.slEventBus.action){case"videoPlay":this.videoPlay(n.slEventBus.payload,{topicSubType:i});break;case"buttonSelect":this.buttonSelect(n.slEventBus.payload,{topicSubType:i});break;case"bannerSelect":this.bannerSelect(n.slEventBus.payload,{topicSubType:i});break;case"received":this.received(n.slEventBus.payload,{topicSubType:i});break;case"opened":this.opened(n.slEventBus.payload,{topicSubType:i});break;case"viewed":this.viewed(n.slEventBus.payload,{topicSubType:i});break}}};return U.listen(r)})}received=({id:e},{topicSubType:r})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.POLLS_RECEIVED,topicId:e,topicType:v.TopicType.POLLS_PROMOTION,topicSubType:r},pollOpenedFrom:v.PollOpenedFrom.UNSET})};opened=({id:e,openedFrom:r},{topicSubType:n})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.POLLS_OPENED,topicId:e,topicType:v.TopicType.POLLS_PROMOTION,topicSubType:n},pollOpenedFrom:r==="notification"?v.PollOpenedFrom.IN_APP:v.PollOpenedFrom.UNSET})};viewed=({id:e},{topicSubType:r})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.POLLS_OPENED,topicId:e,topicType:v.TopicType.POLLS_PROMOTION,topicSubType:r},pollOpenedFrom:v.PollOpenedFrom.UNSET})};videoPlay=({id:e},{topicSubType:r})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),topicId:e,kind:v.Kind.AD_VIDEO_PLAYED,topicType:v.TopicType.POLLS_PROMOTION,topicSubType:r},pollOpenedFrom:v.PollOpenedFrom.UNSET})};buttonSelect=({id:e},{topicSubType:r})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),topicId:e,kind:v.Kind.AD_BUTTON_NAVIGATED,topicType:v.TopicType.POLLS_PROMOTION,topicSubType:r},pollOpenedFrom:v.PollOpenedFrom.UNSET})};bannerSelect=({id:e},{topicSubType:r})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),topicId:e,kind:v.Kind.AD_BANNER_NAVIGATED,topicType:v.TopicType.POLLS_PROMOTION,topicSubType:r},pollOpenedFrom:v.PollOpenedFrom.UNSET})}}const We={[w.QuestionType.UNSET]:v.TopicType.UNSET,[w.QuestionType.FACTOID]:v.TopicType.POLLS_INSIGHT,[w.QuestionType.POLL]:v.TopicType.POLLS_POLL,[w.QuestionType.PREDICTION]:v.TopicType.POLLS_PREDICTION,[w.QuestionType.PROMOTION]:v.TopicType.POLLS_PROMOTION,[w.QuestionType.TRIVIA]:v.TopicType.POLLS_TRIVIA,[w.QuestionType.TWEET]:v.TopicType.POLLS_TWITTER};w.QuestionType.UNSET+"",ee.NotificationKind.UNSET,w.QuestionType.FACTOID+"",ee.NotificationKind.POLLS,w.QuestionType.POLL+"",ee.NotificationKind.POLLS,w.QuestionType.PREDICTION+"",ee.NotificationKind.POLLS,w.QuestionType.PROMOTION+"",ee.NotificationKind.POLLS,w.QuestionType.TRIVIA+"",ee.NotificationKind.POLLS,w.QuestionType.TWEET+"",ee.NotificationKind.POLLS;const Mo={[V.SdkOverlayType.UNSET]:v.Category.UNSET,[V.SdkOverlayType.INPLAY]:v.Category.INPLAY,[V.SdkOverlayType.MESSAGING]:v.Category.MESSAGING,[V.SdkOverlayType.STATISTICS]:v.Category.STATS,[V.SdkOverlayType.BETTING]:v.Category.BETTING,[V.SdkOverlayType.TWITTER]:v.Category.TWITTER,[V.SdkOverlayType.MERCHANDISE]:v.Category.MERCHANDISE,[V.SdkOverlayType.CONTESTS]:v.Category.CONTESTS,[V.SdkOverlayType.VOICE_CHAT]:v.Category.CALLING,[V.SdkOverlayType.TICKETS]:v.Category.TICKETS,[V.SdkOverlayType.WHOIS_WATCHING]:v.Category.WHOISWATCHING,[V.SdkOverlayType.PROFILE]:v.Category.PROFILE,[V.SdkOverlayType.GAMES]:v.Category.POLLS,[V.SdkOverlayType.GOLF_STATISTICS]:v.Category.STATS,[V.SdkOverlayType.HIGHLIGHTS]:v.Category.HIGHLIGHTS,[V.SdkOverlayType.PUBLIC_CHAT]:v.Category.PUBLIC_CHAT};class Uo{analytics;constructor(e){this.analytics=e,this.analytics.onConnect(()=>{const r=n=>{if(n.slEventBus?.type==="notification")switch(n.slEventBus.action){case"rendered":this.received(n.slEventBus.payload);break;case"opened":this.opened(n.slEventBus.payload);break}if(n.slEventBus?.type==="advertisement")switch(n.slEventBus.action){case"notification-received":this.received({questionId:n.slEventBus.payload.id,questionType:w.QuestionType.PROMOTION,topicSubType:nr(n.slEventBus.payload.type)});break;case"notification-opened":this.opened({questionId:n.slEventBus.payload.id,questionType:w.QuestionType.PROMOTION,topicSubType:nr(n.slEventBus.payload.type)});break}};return U.listen(r)})}received=({questionId:e,questionType:r,topicSubType:n})=>{this.analytics.write("notification",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.NOTIFICATION_RECEIVED,topicId:e,topicType:r?We[r]:v.TopicType.UNSET,topicSubType:n},notificationKind:ee.NotificationKind.POLLS,notificationType:ee.NotificationType.IN_APP})};opened=({questionId:e,questionType:r,topicSubType:n})=>{this.analytics.write("notification",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.NOTIFICATION_OPENED,topicId:e,topicType:r?We[r]:v.TopicType.UNSET,topicSubType:n},notificationKind:ee.NotificationKind.POLLS,notificationType:ee.NotificationType.IN_APP})}}class jo{analytics;constructor(e){this.analytics=e,this.analytics.onConnect(()=>{const r=n=>{if(n.slEventBus?.type==="poll")switch(n.slEventBus.action){case"voted":this.voted(n.slEventBus.payload);break;case"navigated":this.navigated();break;case"onboardingPassed":this.onboardingPassed();break;case"received":this.received(n.slEventBus.payload);break;case"opened":this.opened(n.slEventBus.payload);break}};return U.listen(r)})}received=({questionId:e,questionType:r})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.POLLS_RECEIVED,topicId:e,topicType:r?We[r]:v.TopicType.UNSET},pollOpenedFrom:v.PollOpenedFrom.UNSET})};opened=({questionId:e,questionType:r,questionOpenedFrom:n})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.POLLS_OPENED,topicId:e,topicType:r?We[r]:v.TopicType.UNSET},pollOpenedFrom:n==="list"?v.PollOpenedFrom.PICK_HISTORY:v.PollOpenedFrom.IN_APP})};voted=({questionId:e,questionType:r})=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.POLLS_VOTE,topicId:e,topicType:r?We[r]:v.TopicType.UNSET},pollOpenedFrom:v.PollOpenedFrom.UNSET})};onboardingPassed=()=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.GAMES_JOINED},pollOpenedFrom:v.PollOpenedFrom.UNSET})};navigated=()=>{this.analytics.write("games",{common:{...this.analytics.commonStore.getValues(),kind:v.Kind.POLLS_NAVIGATED},pollOpenedFrom:v.PollOpenedFrom.UNSET})}}const Qo=({transport:t,$commonStore:e})=>{let r;const n=j(!1),i=5e3,{client:o,queryKey:s}=t.createPromiseClient(fn.AnalyticsService,{method:"send",params:[n]}),a=t.nanoquery.createFetcherStore(s,{fetcher:async()=>{const p=e.getStore().get();try{await o.unary({message:{case:"heartbeat",value:{common:{...p,kind:v.Kind.SESSION_HEARTBEAT}}}})}catch(S){pe.error(S,"send heartbeat failed")}return Date.now()},refetchInterval:i}),u=()=>{pe.debug("mounted heartbeat"),r=a.subscribe(()=>{})},l=()=>{pe.debug("enabled heartbeat"),n.set(!0),a.lc===0&&u()},c=()=>{pe.debug("disabled heartbeat"),n.set(!1)};return{enable:l,disable:c,mount:u,unmount:()=>{pe.debug("unmounted heartbeat"),a.off(),r?.(),r=void 0,c()}}},pe=me("analytics");class xo{commonStore;notifications;polls;invitation;interactions;advertisement;heartbeat;analyticsClient;listeners;listenersCancels;connected=!1;constructor(e){this.listeners=new Set,this.listenersCancels=new Set,this.commonStore=new Ae(H({}),"common-analytics"),this.connectToSDK(e),this.heartbeat=Qo({transport:e.analyticsTransport,$commonStore:this.commonStore}),this.notifications=new Uo(this),this.polls=new jo(this),this.invitation=new Vo(this),this.interactions=new $o(this),this.advertisement=new Bo(this);const{client:r}=e.analyticsTransport.createPromiseClient(fn.AnalyticsService,{method:"send"});this.analyticsClient=r}connect=()=>{this.writeCommon("sessionId",Xt.nanoid()),this.heartbeat.enable(),this.listeners.forEach(e=>this.listenersCancels.add(e())),this.connected=!0,pe.debug("analytics connected")};disconnect=()=>{this.writeCommon("sessionId",""),this.writeCommon("overlaySessionId",""),this.heartbeat.unmount(),this.listenersCancels.forEach(e=>e()),this.connected=!1,pe.debug("analytics disconnected")};write=(e,r)=>{r&&this.analyticsClient.unary({message:{case:e,value:r}}).then(()=>{pe.trace("send analytics success",e,r)}).catch(n=>{pe.error(n,"send analytics failed")})};writeCommon=(e,r)=>{this.commonStore.setValue(e,r)};onConnect=e=>{this.listeners.add(e),this.connected&&this.listenersCancels.add(e())};connectToSDK=e=>{this.onConnect(()=>e.stores.slStreamId.getAtomStore().subscribe(r=>{this.writeCommon("eventId",r)})),this.onConnect(()=>e.sdk.getActiveFeature().subscribe(r=>{r&&this.writeCommon("category",Mo[r]),r!==V.SdkOverlayType.UNSET?this.writeCommon("overlaySessionId",Xt.nanoid()):this.writeCommon("overlaySessionId","")})),this.onConnect(()=>{const r=window.matchMedia("(orientation: portrait)"),n=i=>{this.writeCommon("screenOrientation",i.matches?v.ScreenOrientation.PORTRAIT:v.ScreenOrientation.LANDSCAPE)};return r.addEventListener("change",n),()=>{r.removeEventListener("change",n)}}),this.onConnect(()=>e.deepLink.$store.subscribe(r=>{r?.handled&&this.invitation.accepted()}))}}const Go=(t,e,r)=>{t.analytics=new xo(t),t.sdk.onMount({name:"analytics"},()=>(t.analytics.connect(),()=>{t.analytics.disconnect()})),r()};var yr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ko(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var mr={exports:{}},gr={exports:{}};function zo(t){var e=new t,r=e;function n(){var o=e;return o.next?e=o.next:(e=new t,r=e),o.next=null,o}function i(o){r.next=o,r=o}return{get:n,release:i}}var Ho=zo,Wo=Ho;function In(t,e,r){if(typeof t=="function"&&(r=e,e=t,t=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=Wo(Yo),i=null,o=null,s=0,a=null,u={push:b,drain:W,saturated:W,pause:c,paused:!1,get concurrency(){return r},set concurrency(N){if(!(N>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=N,!u.paused)for(;i&&s<r;)s++,T()},running:l,resume:S,idle:A,length:f,getQueue:p,unshift:g,empty:W,kill:D,killAndDrain:K,error:X};return u;function l(){return s}function c(){u.paused=!0}function f(){for(var N=i,$=0;N;)N=N.next,$++;return $}function p(){for(var N=i,$=[];N;)$.push(N.value),N=N.next;return $}function S(){if(u.paused){if(u.paused=!1,i===null){s++,T();return}for(;i&&s<r;)s++,T()}}function A(){return s===0&&u.length()===0}function b(N,$){var C=n.get();C.context=t,C.release=T,C.value=N,C.callback=$||W,C.errorHandler=a,s>=r||u.paused?o?(o.next=C,o=C):(i=C,o=C,u.saturated()):(s++,e.call(t,C.value,C.worked))}function g(N,$){var C=n.get();C.context=t,C.release=T,C.value=N,C.callback=$||W,C.errorHandler=a,s>=r||u.paused?i?(C.next=i,i=C):(i=C,o=C,u.saturated()):(s++,e.call(t,C.value,C.worked))}function T(N){N&&n.release(N);var $=i;$&&s<=r?u.paused?s--:(o===i&&(o=null),i=$.next,$.next=null,e.call(t,$.value,$.worked),o===null&&u.empty()):--s===0&&u.drain()}function D(){i=null,o=null,u.drain=W}function K(){i=null,o=null,u.drain(),u.drain=W}function X(N){a=N}}function W(){}function Yo(){this.value=null,this.callback=W,this.next=null,this.release=W,this.context=null,this.errorHandler=null;var t=this;this.worked=function(r,n){var i=t.callback,o=t.errorHandler,s=t.value;t.value=null,t.callback=W,t.errorHandler&&o(r,s),i.call(t.context,r,n),t.release(t)}}function Jo(t,e,r){typeof t=="function"&&(r=e,e=t,t=null);function n(c,f){e.call(this,c).then(function(p){f(null,p)},f)}var i=In(t,n,r),o=i.push,s=i.unshift;return i.push=a,i.unshift=u,i.drained=l,i;function a(c){var f=new Promise(function(p,S){o(c,function(A,b){if(A){S(A);return}p(b)})});return f.catch(W),f}function u(c){var f=new Promise(function(p,S){s(c,function(A,b){if(A){S(A);return}p(b)})});return f.catch(W),f}function l(){if(i.idle())return new Promise(function(p){p()});var c=i.drain,f=new Promise(function(p){i.drain=function(){c(),p()}});return f}}gr.exports=In;gr.exports.promise=Jo;var On=gr.exports,br={exports:{}},Me=typeof Reflect=="object"?Reflect:null,Mr=Me&&typeof Me.apply=="function"?Me.apply:function(e,r,n){return Function.prototype.apply.call(e,r,n)},lt;Me&&typeof Me.ownKeys=="function"?lt=Me.ownKeys:Object.getOwnPropertySymbols?lt=function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:lt=function(e){return Object.getOwnPropertyNames(e)};function Xo(t){console&&console.warn&&console.warn(t)}var _n=Number.isNaN||function(e){return e!==e};function F(){F.init.call(this)}br.exports=F;br.exports.once=rs;F.EventEmitter=F;F.prototype._events=void 0;F.prototype._eventsCount=0;F.prototype._maxListeners=void 0;var Ur=10;function _t(t){if(typeof t!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof t)}Object.defineProperty(F,"defaultMaxListeners",{enumerable:!0,get:function(){return Ur},set:function(t){if(typeof t!="number"||t<0||_n(t))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+t+".");Ur=t}});F.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};F.prototype.setMaxListeners=function(e){if(typeof e!="number"||e<0||_n(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this};function Cn(t){return t._maxListeners===void 0?F.defaultMaxListeners:t._maxListeners}F.prototype.getMaxListeners=function(){return Cn(this)};F.prototype.emit=function(e){for(var r=[],n=1;n<arguments.length;n++)r.push(arguments[n]);var i=e==="error",o=this._events;if(o!==void 0)i=i&&o.error===void 0;else if(!i)return!1;if(i){var s;if(r.length>0&&(s=r[0]),s instanceof Error)throw s;var a=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw a.context=s,a}var u=o[e];if(u===void 0)return!1;if(typeof u=="function")Mr(u,this,r);else for(var l=u.length,c=Fn(u,l),n=0;n<l;++n)Mr(c[n],this,r);return!0};function kn(t,e,r,n){var i,o,s;if(_t(r),o=t._events,o===void 0?(o=t._events=Object.create(null),t._eventsCount=0):(o.newListener!==void 0&&(t.emit("newListener",e,r.listener?r.listener:r),o=t._events),s=o[e]),s===void 0)s=o[e]=r,++t._eventsCount;else if(typeof s=="function"?s=o[e]=n?[r,s]:[s,r]:n?s.unshift(r):s.push(r),i=Cn(t),i>0&&s.length>i&&!s.warned){s.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=t,a.type=e,a.count=s.length,Xo(a)}return t}F.prototype.addListener=function(e,r){return kn(this,e,r,!1)};F.prototype.on=F.prototype.addListener;F.prototype.prependListener=function(e,r){return kn(this,e,r,!0)};function Zo(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function Ln(t,e,r){var n={fired:!1,wrapFn:void 0,target:t,type:e,listener:r},i=Zo.bind(n);return i.listener=r,n.wrapFn=i,i}F.prototype.once=function(e,r){return _t(r),this.on(e,Ln(this,e,r)),this};F.prototype.prependOnceListener=function(e,r){return _t(r),this.prependListener(e,Ln(this,e,r)),this};F.prototype.removeListener=function(e,r){var n,i,o,s,a;if(_t(r),i=this._events,i===void 0)return this;if(n=i[e],n===void 0)return this;if(n===r||n.listener===r)--this._eventsCount===0?this._events=Object.create(null):(delete i[e],i.removeListener&&this.emit("removeListener",e,n.listener||r));else if(typeof n!="function"){for(o=-1,s=n.length-1;s>=0;s--)if(n[s]===r||n[s].listener===r){a=n[s].listener,o=s;break}if(o<0)return this;o===0?n.shift():es(n,o),n.length===1&&(i[e]=n[0]),i.removeListener!==void 0&&this.emit("removeListener",e,a||r)}return this};F.prototype.off=F.prototype.removeListener;F.prototype.removeAllListeners=function(e){var r,n,i;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[e]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[e]),this;if(arguments.length===0){var o=Object.keys(n),s;for(i=0;i<o.length;++i)s=o[i],s!=="removeListener"&&this.removeAllListeners(s);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(r=n[e],typeof r=="function")this.removeListener(e,r);else if(r!==void 0)for(i=r.length-1;i>=0;i--)this.removeListener(e,r[i]);return this};function Pn(t,e,r){var n=t._events;if(n===void 0)return[];var i=n[e];return i===void 0?[]:typeof i=="function"?r?[i.listener||i]:[i]:r?ts(i):Fn(i,i.length)}F.prototype.listeners=function(e){return Pn(this,e,!0)};F.prototype.rawListeners=function(e){return Pn(this,e,!1)};F.listenerCount=function(t,e){return typeof t.listenerCount=="function"?t.listenerCount(e):Nn.call(t,e)};F.prototype.listenerCount=Nn;function Nn(t){var e=this._events;if(e!==void 0){var r=e[t];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}F.prototype.eventNames=function(){return this._eventsCount>0?lt(this._events):[]};function Fn(t,e){for(var r=new Array(e),n=0;n<e;++n)r[n]=t[n];return r}function es(t,e){for(;e+1<t.length;e++)t[e]=t[e+1];t.pop()}function ts(t){for(var e=new Array(t.length),r=0;r<e.length;++r)e[r]=t[r].listener||t[r];return e}function rs(t,e){return new Promise(function(r,n){function i(s){t.removeListener(e,o),n(s)}function o(){typeof t.removeListener=="function"&&t.removeListener("error",i),r([].slice.call(arguments))}Dn(t,e,o,{once:!0}),e!=="error"&&ns(t,i,{once:!0})})}function ns(t,e,r){typeof t.on=="function"&&Dn(t,"error",e,r)}function Dn(t,e,r,n){if(typeof t.on=="function")n.once?t.once(e,r):t.on(e,r);else if(typeof t.addEventListener=="function")t.addEventListener(e,function i(o){n.once&&t.removeEventListener(e,i),r(o)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof t)}var Rn=br.exports,Ct={},Vn={},$n=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var i=42;e[r]=i;for(r in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var o=Object.getOwnPropertySymbols(e);if(o.length!==1||o[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var s=Object.getOwnPropertyDescriptor(e,r);if(s.value!==i||s.enumerable!==!0)return!1}return!0},is=$n,kt=function(){return is()&&!!Symbol.toStringTag},os=Error,ss=EvalError,as=RangeError,us=ReferenceError,qn=SyntaxError,Lt=TypeError,cs=URIError,jr=typeof Symbol<"u"&&Symbol,ls=$n,ds=function(){return typeof jr!="function"||typeof Symbol!="function"||typeof jr("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:ls()},Rt={__proto__:null,foo:{}},fs=Object,ps=function(){return{__proto__:Rt}.foo===Rt.foo&&!(Rt instanceof fs)},hs="Function.prototype.bind called on incompatible ",ys=Object.prototype.toString,ms=Math.max,gs="[object Function]",Qr=function(e,r){for(var n=[],i=0;i<e.length;i+=1)n[i]=e[i];for(var o=0;o<r.length;o+=1)n[o+e.length]=r[o];return n},bs=function(e,r){for(var n=[],i=r,o=0;i<e.length;i+=1,o+=1)n[o]=e[i];return n},vs=function(t,e){for(var r="",n=0;n<t.length;n+=1)r+=t[n],n+1<t.length&&(r+=e);return r},Ss=function(e){var r=this;if(typeof r!="function"||ys.apply(r)!==gs)throw new TypeError(hs+r);for(var n=bs(arguments,1),i,o=function(){if(this instanceof i){var c=r.apply(this,Qr(n,arguments));return Object(c)===c?c:this}return r.apply(e,Qr(n,arguments))},s=ms(0,r.length-n.length),a=[],u=0;u<s;u++)a[u]="$"+u;if(i=Function("binder","return function ("+vs(a,",")+"){ return binder.apply(this,arguments); }")(o),r.prototype){var l=function(){};l.prototype=r.prototype,i.prototype=new l,l.prototype=null}return i},ws=Ss,vr=Function.prototype.bind||ws,Ts=Function.prototype.call,As=Object.prototype.hasOwnProperty,Es=vr,Is=Es.call(Ts,As),_,Os=os,_s=ss,Cs=as,ks=us,je=qn,Ue=Lt,Ls=cs,Bn=Function,Vt=function(t){try{return Bn('"use strict"; return ('+t+").constructor;")()}catch{}},Ie=Object.getOwnPropertyDescriptor;if(Ie)try{Ie({},"")}catch{Ie=null}var $t=function(){throw new Ue},Ps=Ie?function(){try{return arguments.callee,$t}catch{try{return Ie(arguments,"callee").get}catch{return $t}}}():$t,Fe=ds(),Ns=ps(),Q=Object.getPrototypeOf||(Ns?function(t){return t.__proto__}:null),Re={},Fs=typeof Uint8Array>"u"||!Q?_:Q(Uint8Array),Oe={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?_:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?_:ArrayBuffer,"%ArrayIteratorPrototype%":Fe&&Q?Q([][Symbol.iterator]()):_,"%AsyncFromSyncIteratorPrototype%":_,"%AsyncFunction%":Re,"%AsyncGenerator%":Re,"%AsyncGeneratorFunction%":Re,"%AsyncIteratorPrototype%":Re,"%Atomics%":typeof Atomics>"u"?_:Atomics,"%BigInt%":typeof BigInt>"u"?_:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?_:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?_:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?_:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Os,"%eval%":eval,"%EvalError%":_s,"%Float32Array%":typeof Float32Array>"u"?_:Float32Array,"%Float64Array%":typeof Float64Array>"u"?_:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?_:FinalizationRegistry,"%Function%":Bn,"%GeneratorFunction%":Re,"%Int8Array%":typeof Int8Array>"u"?_:Int8Array,"%Int16Array%":typeof Int16Array>"u"?_:Int16Array,"%Int32Array%":typeof Int32Array>"u"?_:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":Fe&&Q?Q(Q([][Symbol.iterator]())):_,"%JSON%":typeof JSON=="object"?JSON:_,"%Map%":typeof Map>"u"?_:Map,"%MapIteratorPrototype%":typeof Map>"u"||!Fe||!Q?_:Q(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?_:Promise,"%Proxy%":typeof Proxy>"u"?_:Proxy,"%RangeError%":Cs,"%ReferenceError%":ks,"%Reflect%":typeof Reflect>"u"?_:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?_:Set,"%SetIteratorPrototype%":typeof Set>"u"||!Fe||!Q?_:Q(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?_:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":Fe&&Q?Q(""[Symbol.iterator]()):_,"%Symbol%":Fe?Symbol:_,"%SyntaxError%":je,"%ThrowTypeError%":Ps,"%TypedArray%":Fs,"%TypeError%":Ue,"%Uint8Array%":typeof Uint8Array>"u"?_:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?_:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?_:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?_:Uint32Array,"%URIError%":Ls,"%WeakMap%":typeof WeakMap>"u"?_:WeakMap,"%WeakRef%":typeof WeakRef>"u"?_:WeakRef,"%WeakSet%":typeof WeakSet>"u"?_:WeakSet};if(Q)try{null.error}catch(t){var Ds=Q(Q(t));Oe["%Error.prototype%"]=Ds}var Rs=function t(e){var r;if(e==="%AsyncFunction%")r=Vt("async function () {}");else if(e==="%GeneratorFunction%")r=Vt("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=Vt("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var i=t("%AsyncGenerator%");i&&Q&&(r=Q(i.prototype))}return Oe[e]=r,r},xr={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},Ze=vr,bt=Is,Vs=Ze.call(Function.call,Array.prototype.concat),$s=Ze.call(Function.apply,Array.prototype.splice),Gr=Ze.call(Function.call,String.prototype.replace),vt=Ze.call(Function.call,String.prototype.slice),qs=Ze.call(Function.call,RegExp.prototype.exec),Bs=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,Ms=/\\(\\)?/g,Us=function(e){var r=vt(e,0,1),n=vt(e,-1);if(r==="%"&&n!=="%")throw new je("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new je("invalid intrinsic syntax, expected opening `%`");var i=[];return Gr(e,Bs,function(o,s,a,u){i[i.length]=a?Gr(u,Ms,"$1"):s||o}),i},js=function(e,r){var n=e,i;if(bt(xr,n)&&(i=xr[n],n="%"+i[0]+"%"),bt(Oe,n)){var o=Oe[n];if(o===Re&&(o=Rs(n)),typeof o>"u"&&!r)throw new Ue("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:i,name:n,value:o}}throw new je("intrinsic "+e+" does not exist!")},et=function(e,r){if(typeof e!="string"||e.length===0)throw new Ue("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new Ue('"allowMissing" argument must be a boolean');if(qs(/^%?[^%]*%?$/,e)===null)throw new je("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=Us(e),i=n.length>0?n[0]:"",o=js("%"+i+"%",r),s=o.name,a=o.value,u=!1,l=o.alias;l&&(i=l[0],$s(n,Vs([0,1],l)));for(var c=1,f=!0;c<n.length;c+=1){var p=n[c],S=vt(p,0,1),A=vt(p,-1);if((S==='"'||S==="'"||S==="`"||A==='"'||A==="'"||A==="`")&&S!==A)throw new je("property names with quotes must have matching quotes");if((p==="constructor"||!f)&&(u=!0),i+="."+p,s="%"+i+"%",bt(Oe,s))a=Oe[s];else if(a!=null){if(!(p in a)){if(!r)throw new Ue("base intrinsic for "+e+" exists, but the property is not available.");return}if(Ie&&c+1>=n.length){var b=Ie(a,p);f=!!b,f&&"get"in b&&!("originalValue"in b.get)?a=b.get:a=a[p]}else f=bt(a,p),a=a[p];f&&!u&&(Oe[s]=a)}}return a},Mn={exports:{}},qt,Kr;function Sr(){if(Kr)return qt;Kr=1;var t=et,e=t("%Object.defineProperty%",!0)||!1;if(e)try{e({},"a",{value:1})}catch{e=!1}return qt=e,qt}var Qs=et,dt=Qs("%Object.getOwnPropertyDescriptor%",!0);if(dt)try{dt([],"length")}catch{dt=null}var Pt=dt,zr=Sr(),xs=qn,De=Lt,Hr=Pt,Gs=function(e,r,n){if(!e||typeof e!="object"&&typeof e!="function")throw new De("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new De("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new De("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new De("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new De("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new De("`loose`, if provided, must be a boolean");var i=arguments.length>3?arguments[3]:null,o=arguments.length>4?arguments[4]:null,s=arguments.length>5?arguments[5]:null,a=arguments.length>6?arguments[6]:!1,u=!!Hr&&Hr(e,r);if(zr)zr(e,r,{configurable:s===null&&u?u.configurable:!s,enumerable:i===null&&u?u.enumerable:!i,value:n,writable:o===null&&u?u.writable:!o});else if(a||!i&&!o&&!s)e[r]=n;else throw new xs("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")},ir=Sr(),Un=function(){return!!ir};Un.hasArrayLengthDefineBug=function(){if(!ir)return null;try{return ir([],"length",{value:1}).length!==1}catch{return!0}};var Ks=Un,zs=et,Wr=Gs,Hs=Ks(),Yr=Pt,Jr=Lt,Ws=zs("%Math.floor%"),Ys=function(e,r){if(typeof e!="function")throw new Jr("`fn` is not a function");if(typeof r!="number"||r<0||r>4294967295||Ws(r)!==r)throw new Jr("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],i=!0,o=!0;if("length"in e&&Yr){var s=Yr(e,"length");s&&!s.configurable&&(i=!1),s&&!s.writable&&(o=!1)}return(i||o||!n)&&(Hs?Wr(e,"length",r,!0,!0):Wr(e,"length",r)),e};(function(t){var e=vr,r=et,n=Ys,i=Lt,o=r("%Function.prototype.apply%"),s=r("%Function.prototype.call%"),a=r("%Reflect.apply%",!0)||e.call(s,o),u=Sr(),l=r("%Math.max%");t.exports=function(p){if(typeof p!="function")throw new i("a function is required");var S=a(e,s,arguments);return n(S,1+l(0,p.length-(arguments.length-1)),!0)};var c=function(){return a(e,o,arguments)};u?u(t.exports,"apply",{value:c}):t.exports.apply=c})(Mn);var wr=Mn.exports,jn=et,Qn=wr,Js=Qn(jn("String.prototype.indexOf")),Tr=function(e,r){var n=jn(e,!!r);return typeof n=="function"&&Js(e,".prototype.")>-1?Qn(n):n},Xs=kt(),Zs=Tr,or=Zs("Object.prototype.toString"),Nt=function(e){return Xs&&e&&typeof e=="object"&&Symbol.toStringTag in e?!1:or(e)==="[object Arguments]"},xn=function(e){return Nt(e)?!0:e!==null&&typeof e=="object"&&typeof e.length=="number"&&e.length>=0&&or(e)!=="[object Array]"&&or(e.callee)==="[object Function]"},ea=function(){return Nt(arguments)}();Nt.isLegacyArguments=xn;var ta=ea?Nt:xn,ra=Object.prototype.toString,na=Function.prototype.toString,ia=/^\s*(?:function)?\*/,Gn=kt(),Bt=Object.getPrototypeOf,oa=function(){if(!Gn)return!1;try{return Function("return function*() {}")()}catch{}},Mt,sa=function(e){if(typeof e!="function")return!1;if(ia.test(na.call(e)))return!0;if(!Gn){var r=ra.call(e);return r==="[object GeneratorFunction]"}if(!Bt)return!1;if(typeof Mt>"u"){var n=oa();Mt=n?Bt(n):!1}return Bt(e)===Mt},Kn=Function.prototype.toString,qe=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,sr,ft;if(typeof qe=="function"&&typeof Object.defineProperty=="function")try{sr=Object.defineProperty({},"length",{get:function(){throw ft}}),ft={},qe(function(){throw 42},null,sr)}catch(t){t!==ft&&(qe=null)}else qe=null;var aa=/^\s*class\b/,ar=function(e){try{var r=Kn.call(e);return aa.test(r)}catch{return!1}},Ut=function(e){try{return ar(e)?!1:(Kn.call(e),!0)}catch{return!1}},pt=Object.prototype.toString,ua="[object Object]",ca="[object Function]",la="[object GeneratorFunction]",da="[object HTMLAllCollection]",fa="[object HTML document.all class]",pa="[object HTMLCollection]",ha=typeof Symbol=="function"&&!!Symbol.toStringTag,ya=!(0 in[,]),ur=function(){return!1};if(typeof document=="object"){var ma=document.all;pt.call(ma)===pt.call(document.all)&&(ur=function(e){if((ya||!e)&&(typeof e>"u"||typeof e=="object"))try{var r=pt.call(e);return(r===da||r===fa||r===pa||r===ua)&&e("")==null}catch{}return!1})}var ga=qe?function(e){if(ur(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;try{qe(e,null,sr)}catch(r){if(r!==ft)return!1}return!ar(e)&&Ut(e)}:function(e){if(ur(e))return!0;if(!e||typeof e!="function"&&typeof e!="object")return!1;if(ha)return Ut(e);if(ar(e))return!1;var r=pt.call(e);return r!==ca&&r!==la&&!/^\[object HTML/.test(r)?!1:Ut(e)},ba=ga,va=Object.prototype.toString,zn=Object.prototype.hasOwnProperty,Sa=function(e,r,n){for(var i=0,o=e.length;i<o;i++)zn.call(e,i)&&(n==null?r(e[i],i,e):r.call(n,e[i],i,e))},wa=function(e,r,n){for(var i=0,o=e.length;i<o;i++)n==null?r(e.charAt(i),i,e):r.call(n,e.charAt(i),i,e)},Ta=function(e,r,n){for(var i in e)zn.call(e,i)&&(n==null?r(e[i],i,e):r.call(n,e[i],i,e))},Aa=function(e,r,n){if(!ba(r))throw new TypeError("iterator must be a function");var i;arguments.length>=3&&(i=n),va.call(e)==="[object Array]"?Sa(e,r,i):typeof e=="string"?wa(e,r,i):Ta(e,r,i)},Hn=Aa,Ea=["Float32Array","Float64Array","Int8Array","Int16Array","Int32Array","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array"],jt=Ea,Ia=typeof globalThis>"u"?yr:globalThis,Wn=function(){for(var e=[],r=0;r<jt.length;r++)typeof Ia[jt[r]]=="function"&&(e[e.length]=jt[r]);return e},St=Hn,Oa=Wn,Xr=wr,Ar=Tr,ht=Pt,_a=Ar("Object.prototype.toString"),Yn=kt(),Zr=typeof globalThis>"u"?yr:globalThis,cr=Oa(),Er=Ar("String.prototype.slice"),Qt=Object.getPrototypeOf,Ca=Ar("Array.prototype.indexOf",!0)||function(e,r){for(var n=0;n<e.length;n+=1)if(e[n]===r)return n;return-1},wt={__proto__:null};Yn&&ht&&Qt?St(cr,function(t){var e=new Zr[t];if(Symbol.toStringTag in e){var r=Qt(e),n=ht(r,Symbol.toStringTag);if(!n){var i=Qt(r);n=ht(i,Symbol.toStringTag)}wt["$"+t]=Xr(n.get)}}):St(cr,function(t){var e=new Zr[t],r=e.slice||e.set;r&&(wt["$"+t]=Xr(r))});var ka=function(e){var r=!1;return St(wt,function(n,i){if(!r)try{"$"+n(e)===i&&(r=Er(i,1))}catch{}}),r},La=function(e){var r=!1;return St(wt,function(n,i){if(!r)try{n(e),r=Er(i,1)}catch{}}),r},Pa=function(e){if(!e||typeof e!="object")return!1;if(!Yn){var r=Er(_a(e),8,-1);return Ca(cr,r)>-1?r:r!=="Object"?!1:La(e)}return ht?ka(e):null},Tt=Hn,Na=Wn,en=wr,Ir=Tr,yt=Pt,Fa=Ir("Object.prototype.toString"),Jn=kt(),tn=typeof globalThis>"u"?yr:globalThis,lr=Na(),Or=Ir("String.prototype.slice"),xt=Object.getPrototypeOf,Da=Ir("Array.prototype.indexOf",!0)||function(e,r){for(var n=0;n<e.length;n+=1)if(e[n]===r)return n;return-1},At={__proto__:null};Jn&&yt&&xt?Tt(lr,function(t){var e=new tn[t];if(Symbol.toStringTag in e){var r=xt(e),n=yt(r,Symbol.toStringTag);if(!n){var i=xt(r);n=yt(i,Symbol.toStringTag)}At["$"+t]=en(n.get)}}):Tt(lr,function(t){var e=new tn[t],r=e.slice||e.set;r&&(At["$"+t]=en(r))});var Ra=function(e){var r=!1;return Tt(At,function(n,i){if(!r)try{"$"+n(e)===i&&(r=Or(i,1))}catch{}}),r},Va=function(e){var r=!1;return Tt(At,function(n,i){if(!r)try{n(e),r=Or(i,1)}catch{}}),r},$a=function(e){if(!e||typeof e!="object")return!1;if(!Jn){var r=Or(Fa(e),8,-1);return Da(lr,r)>-1?r:r!=="Object"?!1:Va(e)}return yt?Ra(e):null},qa=$a,Ba=function(e){return!!qa(e)};(function(t){var e=ta,r=sa,n=Pa,i=Ba;function o(y){return y.call.bind(y)}var s=typeof BigInt<"u",a=typeof Symbol<"u",u=o(Object.prototype.toString),l=o(Number.prototype.valueOf),c=o(String.prototype.valueOf),f=o(Boolean.prototype.valueOf);if(s)var p=o(BigInt.prototype.valueOf);if(a)var S=o(Symbol.prototype.valueOf);function A(y,ii){if(typeof y!="object")return!1;try{return ii(y),!0}catch{return!1}}t.isArgumentsObject=e,t.isGeneratorFunction=r,t.isTypedArray=i;function b(y){return typeof Promise<"u"&&y instanceof Promise||y!==null&&typeof y=="object"&&typeof y.then=="function"&&typeof y.catch=="function"}t.isPromise=b;function g(y){return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?ArrayBuffer.isView(y):i(y)||h(y)}t.isArrayBufferView=g;function T(y){return n(y)==="Uint8Array"}t.isUint8Array=T;function D(y){return n(y)==="Uint8ClampedArray"}t.isUint8ClampedArray=D;function K(y){return n(y)==="Uint16Array"}t.isUint16Array=K;function X(y){return n(y)==="Uint32Array"}t.isUint32Array=X;function N(y){return n(y)==="Int8Array"}t.isInt8Array=N;function $(y){return n(y)==="Int16Array"}t.isInt16Array=$;function C(y){return n(y)==="Int32Array"}t.isInt32Array=C;function re(y){return n(y)==="Float32Array"}t.isFloat32Array=re;function ne(y){return n(y)==="Float64Array"}t.isFloat64Array=ne;function _e(y){return n(y)==="BigInt64Array"}t.isBigInt64Array=_e;function ve(y){return n(y)==="BigUint64Array"}t.isBigUint64Array=ve;function ue(y){return u(y)==="[object Map]"}ue.working=typeof Map<"u"&&ue(new Map);function Ft(y){return typeof Map>"u"?!1:ue.working?ue(y):y instanceof Map}t.isMap=Ft;function ge(y){return u(y)==="[object Set]"}ge.working=typeof Set<"u"&&ge(new Set);function Ke(y){return typeof Set>"u"?!1:ge.working?ge(y):y instanceof Set}t.isSet=Ke;function Ce(y){return u(y)==="[object WeakMap]"}Ce.working=typeof WeakMap<"u"&&Ce(new WeakMap);function Dt(y){return typeof WeakMap>"u"?!1:Ce.working?Ce(y):y instanceof WeakMap}t.isWeakMap=Dt;function ke(y){return u(y)==="[object WeakSet]"}ke.working=typeof WeakSet<"u"&&ke(new WeakSet);function ce(y){return ke(y)}t.isWeakSet=ce;function Le(y){return u(y)==="[object ArrayBuffer]"}Le.working=typeof ArrayBuffer<"u"&&Le(new ArrayBuffer);function tt(y){return typeof ArrayBuffer>"u"?!1:Le.working?Le(y):y instanceof ArrayBuffer}t.isArrayBuffer=tt;function d(y){return u(y)==="[object DataView]"}d.working=typeof ArrayBuffer<"u"&&typeof DataView<"u"&&d(new DataView(new ArrayBuffer(1),0,1));function h(y){return typeof DataView>"u"?!1:d.working?d(y):y instanceof DataView}t.isDataView=h;var m=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:void 0;function E(y){return u(y)==="[object SharedArrayBuffer]"}function L(y){return typeof m>"u"?!1:(typeof E.working>"u"&&(E.working=E(new m)),E.working?E(y):y instanceof m)}t.isSharedArrayBuffer=L;function P(y){return u(y)==="[object AsyncFunction]"}t.isAsyncFunction=P;function O(y){return u(y)==="[object Map Iterator]"}t.isMapIterator=O;function k(y){return u(y)==="[object Set Iterator]"}t.isSetIterator=k;function R(y){return u(y)==="[object Generator]"}t.isGeneratorObject=R;function z(y){return u(y)==="[object WebAssembly.Module]"}t.isWebAssemblyCompiledModule=z;function Se(y){return A(y,l)}t.isNumberObject=Se;function rt(y){return A(y,c)}t.isStringObject=rt;function Pe(y){return A(y,f)}t.isBooleanObject=Pe;function nt(y){return s&&A(y,p)}t.isBigIntObject=nt;function kr(y){return a&&A(y,S)}t.isSymbolObject=kr;function ri(y){return Se(y)||rt(y)||Pe(y)||nt(y)||kr(y)}t.isBoxedPrimitive=ri;function ni(y){return typeof Uint8Array<"u"&&(tt(y)||L(y))}t.isAnyArrayBuffer=ni,["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(y){Object.defineProperty(t,y,{enumerable:!1,value:function(){throw new Error(y+" is not supported in userland")}})})})(Vn);var Ma=function(e){return e&&typeof e=="object"&&typeof e.copy=="function"&&typeof e.fill=="function"&&typeof e.readUInt8=="function"},dr={exports:{}};typeof Object.create=="function"?dr.exports=function(e,r){r&&(e.super_=r,e.prototype=Object.create(r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:dr.exports=function(e,r){if(r){e.super_=r;var n=function(){};n.prototype=r.prototype,e.prototype=new n,e.prototype.constructor=e}};var Ua=dr.exports;(function(t){var e=Object.getOwnPropertyDescriptors||function(h){for(var m=Object.keys(h),E={},L=0;L<m.length;L++)E[m[L]]=Object.getOwnPropertyDescriptor(h,m[L]);return E},r=/%[sdj%]/g;t.format=function(d){if(!N(d)){for(var h=[],m=0;m<arguments.length;m++)h.push(s(arguments[m]));return h.join(" ")}for(var m=1,E=arguments,L=E.length,P=String(d).replace(r,function(k){if(k==="%%")return"%";if(m>=L)return k;switch(k){case"%s":return String(E[m++]);case"%d":return Number(E[m++]);case"%j":try{return JSON.stringify(E[m++])}catch{return"[Circular]"}default:return k}}),O=E[m];m<L;O=E[++m])D(O)||!ne(O)?P+=" "+O:P+=" "+s(O);return P},t.deprecate=function(d,h){if(typeof I<"u"&&I.noDeprecation===!0)return d;if(typeof I>"u")return function(){return t.deprecate(d,h).apply(this,arguments)};var m=!1;function E(){if(!m){if(I.throwDeprecation)throw new Error(h);I.traceDeprecation?console.trace(h):console.error(h),m=!0}return d.apply(this,arguments)}return E};var n={},i=/^$/;if(I.env.NODE_DEBUG){var o=I.env.NODE_DEBUG;o=o.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),i=new RegExp("^"+o+"$","i")}t.debuglog=function(d){if(d=d.toUpperCase(),!n[d])if(i.test(d)){var h=I.pid;n[d]=function(){var m=t.format.apply(t,arguments);console.error("%s %d: %s",d,h,m)}}else n[d]=function(){};return n[d]};function s(d,h){var m={seen:[],stylize:u};return arguments.length>=3&&(m.depth=arguments[2]),arguments.length>=4&&(m.colors=arguments[3]),T(h)?m.showHidden=h:h&&t._extend(m,h),C(m.showHidden)&&(m.showHidden=!1),C(m.depth)&&(m.depth=2),C(m.colors)&&(m.colors=!1),C(m.customInspect)&&(m.customInspect=!0),m.colors&&(m.stylize=a),c(m,d,m.depth)}t.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function a(d,h){var m=s.styles[h];return m?"\x1B["+s.colors[m][0]+"m"+d+"\x1B["+s.colors[m][1]+"m":d}function u(d,h){return d}function l(d){var h={};return d.forEach(function(m,E){h[m]=!0}),h}function c(d,h,m){if(d.customInspect&&h&&ue(h.inspect)&&h.inspect!==t.inspect&&!(h.constructor&&h.constructor.prototype===h)){var E=h.inspect(m,d);return N(E)||(E=c(d,E,m)),E}var L=f(d,h);if(L)return L;var P=Object.keys(h),O=l(P);if(d.showHidden&&(P=Object.getOwnPropertyNames(h)),ve(h)&&(P.indexOf("message")>=0||P.indexOf("description")>=0))return p(h);if(P.length===0){if(ue(h)){var k=h.name?": "+h.name:"";return d.stylize("[Function"+k+"]","special")}if(re(h))return d.stylize(RegExp.prototype.toString.call(h),"regexp");if(_e(h))return d.stylize(Date.prototype.toString.call(h),"date");if(ve(h))return p(h)}var R="",z=!1,Se=["{","}"];if(g(h)&&(z=!0,Se=["[","]"]),ue(h)){var rt=h.name?": "+h.name:"";R=" [Function"+rt+"]"}if(re(h)&&(R=" "+RegExp.prototype.toString.call(h)),_e(h)&&(R=" "+Date.prototype.toUTCString.call(h)),ve(h)&&(R=" "+p(h)),P.length===0&&(!z||h.length==0))return Se[0]+R+Se[1];if(m<0)return re(h)?d.stylize(RegExp.prototype.toString.call(h),"regexp"):d.stylize("[Object]","special");d.seen.push(h);var Pe;return z?Pe=S(d,h,m,O,P):Pe=P.map(function(nt){return A(d,h,m,O,nt,z)}),d.seen.pop(),b(Pe,R,Se)}function f(d,h){if(C(h))return d.stylize("undefined","undefined");if(N(h)){var m="'"+JSON.stringify(h).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return d.stylize(m,"string")}if(X(h))return d.stylize(""+h,"number");if(T(h))return d.stylize(""+h,"boolean");if(D(h))return d.stylize("null","null")}function p(d){return"["+Error.prototype.toString.call(d)+"]"}function S(d,h,m,E,L){for(var P=[],O=0,k=h.length;O<k;++O)ke(h,String(O))?P.push(A(d,h,m,E,String(O),!0)):P.push("");return L.forEach(function(R){R.match(/^\d+$/)||P.push(A(d,h,m,E,R,!0))}),P}function A(d,h,m,E,L,P){var O,k,R;if(R=Object.getOwnPropertyDescriptor(h,L)||{value:h[L]},R.get?R.set?k=d.stylize("[Getter/Setter]","special"):k=d.stylize("[Getter]","special"):R.set&&(k=d.stylize("[Setter]","special")),ke(E,L)||(O="["+L+"]"),k||(d.seen.indexOf(R.value)<0?(D(m)?k=c(d,R.value,null):k=c(d,R.value,m-1),k.indexOf(`
|
|
3
3
|
`)>-1&&(P?k=k.split(`
|
|
4
4
|
`).map(function(z){return" "+z}).join(`
|
|
5
5
|
`).slice(2):k=`
|
|
6
6
|
`+k.split(`
|
|
7
7
|
`).map(function(z){return" "+z}).join(`
|
|
8
|
-
`))):k=d.stylize("[Circular]","special")),C(O)){if(P&&L.match(/^\d+$/))return k;O=JSON.stringify(""+L),O.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(O=O.slice(1,-1),O=d.stylize(O,"name")):(O=O.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),O=d.stylize(O,"string"))}return O+": "+k}function b(d,h,
|
|
9
|
-
`)>=0,L+P.replace(/\u001b\[\d\d?m/g,"").length+1},0);return E>60?
|
|
8
|
+
`))):k=d.stylize("[Circular]","special")),C(O)){if(P&&L.match(/^\d+$/))return k;O=JSON.stringify(""+L),O.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(O=O.slice(1,-1),O=d.stylize(O,"name")):(O=O.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),O=d.stylize(O,"string"))}return O+": "+k}function b(d,h,m){var E=d.reduce(function(L,P){return P.indexOf(`
|
|
9
|
+
`)>=0,L+P.replace(/\u001b\[\d\d?m/g,"").length+1},0);return E>60?m[0]+(h===""?"":h+`
|
|
10
10
|
`)+" "+d.join(`,
|
|
11
|
-
`)+" "+
|
|
11
|
+
`)+" "+m[1]:m[0]+h+" "+d.join(", ")+" "+m[1]}t.types=Vn;function g(d){return Array.isArray(d)}t.isArray=g;function T(d){return typeof d=="boolean"}t.isBoolean=T;function D(d){return d===null}t.isNull=D;function K(d){return d==null}t.isNullOrUndefined=K;function X(d){return typeof d=="number"}t.isNumber=X;function N(d){return typeof d=="string"}t.isString=N;function $(d){return typeof d=="symbol"}t.isSymbol=$;function C(d){return d===void 0}t.isUndefined=C;function re(d){return ne(d)&&ge(d)==="[object RegExp]"}t.isRegExp=re,t.types.isRegExp=re;function ne(d){return typeof d=="object"&&d!==null}t.isObject=ne;function _e(d){return ne(d)&&ge(d)==="[object Date]"}t.isDate=_e,t.types.isDate=_e;function ve(d){return ne(d)&&(ge(d)==="[object Error]"||d instanceof Error)}t.isError=ve,t.types.isNativeError=ve;function ue(d){return typeof d=="function"}t.isFunction=ue;function Ft(d){return d===null||typeof d=="boolean"||typeof d=="number"||typeof d=="string"||typeof d=="symbol"||typeof d>"u"}t.isPrimitive=Ft,t.isBuffer=Ma;function ge(d){return Object.prototype.toString.call(d)}function Ke(d){return d<10?"0"+d.toString(10):d.toString(10)}var Ce=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function Dt(){var d=new Date,h=[Ke(d.getHours()),Ke(d.getMinutes()),Ke(d.getSeconds())].join(":");return[d.getDate(),Ce[d.getMonth()],h].join(" ")}t.log=function(){console.log("%s - %s",Dt(),t.format.apply(t,arguments))},t.inherits=Ua,t._extend=function(d,h){if(!h||!ne(h))return d;for(var m=Object.keys(h),E=m.length;E--;)d[m[E]]=h[m[E]];return d};function ke(d,h){return Object.prototype.hasOwnProperty.call(d,h)}var ce=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;t.promisify=function(h){if(typeof h!="function")throw new TypeError('The "original" argument must be of type Function');if(ce&&h[ce]){var m=h[ce];if(typeof m!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(m,ce,{value:m,enumerable:!1,writable:!1,configurable:!0}),m}function m(){for(var E,L,P=new Promise(function(R,z){E=R,L=z}),O=[],k=0;k<arguments.length;k++)O.push(arguments[k]);O.push(function(R,z){R?L(R):E(z)});try{h.apply(this,O)}catch(R){L(R)}return P}return Object.setPrototypeOf(m,Object.getPrototypeOf(h)),ce&&Object.defineProperty(m,ce,{value:m,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(m,e(h))},t.promisify.custom=ce;function Le(d,h){if(!d){var m=new Error("Promise was rejected with a falsy value");m.reason=d,d=m}return h(d)}function tt(d){if(typeof d!="function")throw new TypeError('The "original" argument must be of type Function');function h(){for(var m=[],E=0;E<arguments.length;E++)m.push(arguments[E]);var L=m.pop();if(typeof L!="function")throw new TypeError("The last argument must be of type Function");var P=this,O=function(){return L.apply(P,arguments)};d.apply(this,m).then(function(k){I.nextTick(O.bind(null,null,k))},function(k){I.nextTick(Le.bind(null,k,O))})}return Object.setPrototypeOf(h,Object.getPrototypeOf(d)),Object.defineProperties(h,e(d)),h}t.callbackify=tt})(Ct);const{inherits:ja,format:Gt}=Ct;function we(t,e,r=Error){if(!t)throw new Error("Avvio error code must not be empty");if(!e)throw new Error("Avvio base error message must not be empty");function n(i,o,s){if(!new.target)return new n(i,o,s);Error.captureStackTrace(this,n),this.code=t,this.message=e,this.name="AvvioError",i&&o&&s?this.message=Gt(e,i,o,s):i&&o?this.message=Gt(e,i,o):i?this.message=Gt(e,i):this.message=e}return n.prototype[Symbol.toStringTag]="Error",n.prototype.toString=function(){return`${this.name} [${this.code}]: ${this.message}`},ja(n,r),n}var Xn={createError:we,AVV_ERR_EXPOSE_ALREADY_DEFINED:we("AVV_ERR_EXPOSE_ALREADY_DEFINED","'%s' () is already defined, specify an expose option"),AVV_ERR_CALLBACK_NOT_FN:we("AVV_ERR_CALLBACK_NOT_FN","Callback for '%s' hook is not a function. Received: '%s'"),AVV_ERR_PLUGIN_NOT_VALID:we("AVV_ERR_PLUGIN_NOT_VALID","Plugin must be a function or a promise. Received: '%s'"),AVV_ERR_ROOT_PLG_BOOTED:we("AVV_ERR_PLUGIN_NOT_VALID","Root plugin has already booted"),AVV_ERR_PARENT_PLG_LOADED:we("AVV_ERR_PARENT_PLG_LOADED","Impossible to load '%s' plugin because the parent '%s' was already loaded"),AVV_ERR_READY_TIMEOUT:we("AVV_ERR_READY_TIMEOUT","Plugin did not start in time: '%s'. You may have forgotten to call 'done' function or to resolve a Promise")},Qa=function t(e,r,n){r===void 0&&(r=""),n||(n={});var i=function(u){var l={"│":"|","└":"`","├":"+","─":"-","┬":"-"};return n.unicode===!1?l[u]:u};typeof e=="string"&&(e={label:e});var o=e.nodes||[],s=(e.label||"").split(`
|
|
12
12
|
`),a=`
|
|
13
13
|
`+r+(o.length?i("│"):" ")+" ";return r+s.join(a)+`
|
|
14
|
-
`+o.map(function(u,l){var c=l===o.length-1,f=u.nodes&&u.nodes.length,p=r+(c?" ":i("│"))+" ";return r+i(c?"└":"├")+i("─")+i(f?"┬":"─")+" "+t(u,p,n).slice(r.length+2)}).join("")};const Qa
|
|
15
|
-
`).slice(0,2).map(r=>r.trim()).join(" -- ")}function eu(){const t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}function xe(t,e,r,n,i){this.started=!1,this.func=e,this.opts=r,this.onFinish=null,this.parent=t,this.timeout=i===void 0?t._timeout:i,this.name=Za(e,r),this.isAfter=n,this.q=Wa(t,tu,1),this.q.pause(),this._error=null,this.loaded=!1,this._promise=null}Ja(xe,Ya);xe.prototype.exec=function(t,e){const r=this.func;let n=!1;const i=this.name;if(this.parent._error&&!this.isAfter){Q("skipping loading of plugin as parent errored and it is not an after",i),I.nextTick(e);return}if(this.isAfter)this.server=t;else try{this.server=this.parent.override(t,r,this.opts)}catch(u){return Q("override errored",i),e(u)}this.opts=typeof this.opts=="function"?this.opts(this.server):this.opts,Q("exec",i);let o;const s=u=>{if(n){Q("loading complete",i);return}this._error=u,Q(u?"exec errored":"exec completed",i),n=!0,o&&clearTimeout(o),e(u)};this.timeout>0&&(Q("setting up timeout",i,this.timeout),o=setTimeout(function(){Q("timed out",i),o=null;const u=new Xa(i);u.fn=r,s(u)},this.timeout)),this.started=!0,this.emit("start",this.server?this.server.name:null,this.name,Date.now());const a=r(this.server,this.opts,s);a&&typeof a.then=="function"&&(Q("exec: resolving promise",i),a.then(()=>I.nextTick(s),u=>I.nextTick(s,u)))};xe.prototype.loadedSoFar=function(){if(this.loaded)return Promise.resolve();const t=()=>{this.server.after((r,n)=>{this._error=r,this.q.pause(),r?(Q("rejecting promise",this.name,r),this._promise.reject(r)):(Q("resolving promise",this.name),this._promise.resolve()),this._promise=null,I.nextTick(n,r)}),this.q.resume()};let e;return this._promise?e=Promise.resolve():(this._promise=eu(),e=this._promise.promise,this.server?t():this.on("start",t)),e};xe.prototype.enqueue=function(t,e){Q("enqueue",this.name,t.name),this.emit("enqueue",this.server?this.server.name:null,this.name,Date.now()),this.q.push(t,e)};xe.prototype.finish=function(t,e){Q("finish",this.name,t);const r=()=>{this.loaded||(Q("loaded",this.name),this.emit("loaded",this.server?this.server.name:null,this.name,Date.now()),this.loaded=!0,e(t))};if(t){this._promise&&(this._promise.reject(t),this._promise=null),r();return}const n=()=>{if(Q("check",this.name,this.q.length(),this.q.running(),this._promise),this.q.length()===0&&this.q.running()===0)if(this._promise){const i=()=>{Q("wrap"),queueMicrotask(n)};this._promise.resolve(),this._promise.promise.then(i,i),this._promise=null}else r();else Q("delayed",this.name),this.q.drain=()=>{Q("drain",this.name),this.q.drain=ru,queueMicrotask(n)}};queueMicrotask(n),this.q.resume()};function tu(t,e){const r=this;I.nextTick(_r.bind(r),t,e)}function _r(t,e){if(typeof t.func.then=="function"){t.func.then(n=>{typeof n.default=="function"&&(n=n.default),t.func=n,_r.call(this,t,e)},e);return}const r=this._current[0];this._current.unshift(t),t.exec(r&&r.server||this._server,n=>{t.finish(n,i=>{this._current.shift(),e(i)})})}function ru(){}Or.exports=xe;Or.exports.loadPlugin=_r;var nu=Or.exports;const an=In,iu=Dn.EventEmitter,ou=Ct.inherits,{AVV_ERR_EXPOSE_ALREADY_DEFINED:Wt,AVV_ERR_CALLBACK_NOT_FN:We,AVV_ERR_PLUGIN_NOT_VALID:su,AVV_ERR_ROOT_PLG_BOOTED:au,AVV_ERR_READY_TIMEOUT:uu}=Jn,cu=Ga,fr=nu,Ue=Xn("avvio"),Et=Symbol("kAvvio"),Yt=Symbol("kThenifyDoNotWrap");function lu(t,e,r){const n=e.expose||{},i=n.use||"use",o=n.after||"after",s=n.ready||"ready",a=n.onClose||"onClose",u=n.close||"close";if(t[i])throw new Wt(i);if(t[o])throw new Wt(o);if(t[s])throw new Wt(s);t[i]=function(l,c){return r.use(l,c),this},Object.defineProperty(t,"then",{get:Zn.bind(r)}),t[Et]=!0,t[o]=function(l){return typeof l!="function"?r._loadRegistered():(r.after(Jt(l,this)),this)},t[s]=function(l){if(l&&typeof l!="function")throw new We(s,typeof l);return r.ready(l?Jt(l,this):void 0)},t[a]=function(l){if(typeof l!="function")throw new We(a,typeof l);return r.onClose(yu(l,this)),this},t[u]=function(l){if(l&&typeof l!="function")throw new We(u,typeof l);return l?(r.close(Jt(l,this)),this):r.close()}}function x(t,e,r){if(typeof t=="function"&&arguments.length===1&&(r=t,e={},t=null),typeof e=="function"&&(r=e,e={}),e=e||{},!(this instanceof x)){const n=new x(t,e,r);return t&&lu(t,e,n),n}e.autostart!==!1&&(e.autostart=!0),t=t||this,this._timeout=Number(e.timeout)||0,this._server=t,this._current=[],this._error=null,this._isOnCloseHandlerKey=Symbol("isOnCloseHandler"),this._lastUsed=null,this.setMaxListeners(0),r&&this.once("start",r),this.started=!1,this.booted=!1,this.pluginTree=new cu,this._readyQ=an(this,ei,1),this._readyQ.pause(),this._readyQ.drain=()=>{this.emit("start"),this._readyQ.drain=un},this._closeQ=an(this,hu,1),this._closeQ.pause(),this._closeQ.drain=()=>{this.emit("close"),this._closeQ.drain=un},this._doStart=null,this._root=new fr(this,du.bind(this),e,!1,0),this._root.once("start",(n,i,o)=>{const s=this.pluginTree.start(null,i,o);this._root.once("loaded",(a,u,l)=>{this.pluginTree.stop(s,l)})}),fr.loadPlugin.call(this,this._root,n=>{Ue("root plugin ready");try{this.emit("preReady"),this._root=null}catch(i){n=n||this._error||i}if(n){if(this._error=n,this._readyQ.length()===0)throw n}else this.booted=!0;this._readyQ.resume()})}function du(t,e,r){this._doStart=r,e.autostart&&this.start()}ou(x,iu);x.prototype.start=function(){return this.started=!0,I.nextTick(this._doStart),this};x.prototype.override=function(t,e,r){return t};function fu(t){if(t&&typeof t=="object"&&typeof t.default=="function"&&(t=t.default),!(t&&(typeof t=="function"||typeof t.then=="function")))throw new su(typeof t);return t}x.prototype[Et]=!0;x.prototype.use=function(t,e){return this._lastUsed=this._addPlugin(t,e,!1),this};x.prototype._loadRegistered=function(){const t=this._current[0];return!this.started&&!this.booted&&I.nextTick(()=>this._root.q.resume()),t?t.loadedSoFar():Promise.resolve()};Object.defineProperty(x.prototype,"then",{get:Zn});x.prototype._addPlugin=function(t,e,r){if(t=fu(t),e=e||{},this.booted)throw new au;const n=this._current[0],i=new fr(this,t,e,r);if(i.once("start",(o,s,a)=>{const u=this.pluginTree.start(n.name,s,a);i.once("loaded",(l,c,f)=>{this.pluginTree.stop(u,f)})}),n.loaded)throw new Error(i.name,n.name);return n.enqueue(i,o=>{o&&(this._error=o)}),i};x.prototype.after=function(t){if(!t)return this._loadRegistered();this._addPlugin(e.bind(this),{},!0);function e(r,n,i){ei.call(this,t,i)}return this};x.prototype.onClose=function(t){if(typeof t!="function")throw new Error("not a function");t[this._isOnCloseHandlerKey]=!0,this._closeQ.unshift(t,e.bind(this));function e(r){r&&(this._error=r)}return this};x.prototype.close=function(t){let e;if(t){if(typeof t!="function")throw new We("close",typeof t)}else e=new Promise(function(r,n){t=function(i){if(i)return n(i);r()}});return this.ready(()=>{this._error=null,this._closeQ.push(t),I.nextTick(this._closeQ.resume.bind(this._closeQ))}),e};x.prototype.ready=function(t){if(t){if(typeof t!="function")throw new We("ready",typeof t);this._readyQ.push(t),queueMicrotask(this.start.bind(this));return}return new Promise((e,r)=>{this._readyQ.push(i),this.start();const n=this._current[0].server;function i(o,s,a){o?r(o):e(n),I.nextTick(a)}})};x.prototype.prettyPrint=function(){return this.pluginTree.prittyPrint()};x.prototype.toJSON=function(){return this.pluginTree.toJSON()};function un(){}function Zn(){if(this.booted){Ue("thenify returning null because we are already booted");return}if(this[Yt]){this[Yt]=!1;return}return Ue("thenify"),(t,e)=>this._loadRegistered().then(()=>(this[Yt]=!0,t(this._server)),e)}function ei(t,e){const r=this._server,n=this._error;let i;if(this._error=null,t.length===0)this._error=n,i=t(),i&&!i[Et]&&typeof i.then=="function"?i.then(()=>I.nextTick(e),o=>I.nextTick(e,o)):I.nextTick(e);else if(t.length===1)i=t(n),i&&!i[Et]&&typeof i.then=="function"?i.then(()=>I.nextTick(e),o=>I.nextTick(e,o)):I.nextTick(e);else if(this._timeout===0){const o=s=>{this._error=s,e(this._error)};t.length===2?t(n,o):t(n,r,o)}else pu.call(this,t,n,r,e)}function pu(t,e,r,n){const i=t.name;Ue("setting up ready timeout",i,this._timeout);let o=setTimeout(()=>{Ue("timed out",i),o=null;const a=new uu(i);a.fn=t,this._error=a,n(a)},this._timeout);t.length===2?t(e,s.bind(this)):t(e,r,s.bind(this));function s(a){o&&(clearTimeout(o),this._error=a,n(this._error))}}function hu(t,e){const r=this._server,n=t[this._isOnCloseHandlerKey];if(t.length===0||t.length===1){let i;n?i=t(r):i=t(this._error),i&&typeof i.then=="function"?(Ue("resolving close/onClose promise"),i.then(()=>I.nextTick(e),o=>I.nextTick(e,o))):I.nextTick(e)}else t.length===2?t(n?r:this._error,e):n?t(r,e):t(this._error,r,e)}function yu(t,e){return r.bind(e);function r(n,i){let o;t.length===0?(o=t(),o&&o.then?o.then(function(){I.nextTick(i)},i):I.nextTick(i)):t.length===1?(o=t(this),o&&o.then?o.then(function(){I.nextTick(i)},i):I.nextTick(i)):t(this,i)}}function Jt(t,e){return r.bind(e);function r(n,i){let o;t?t.length===0?(o=t(),o&&o.then?o.then(function(){I.nextTick(i,n)},i):I.nextTick(i,n)):t.length===1?(o=t(n),o&&o.then?o.then(function(){I.nextTick(i)},i):I.nextTick(i)):t.length===2?t(n,i):t(n,this,i):I.nextTick(i)}}yr.exports=x;yr.exports.express=function(t){return x(t,{expose:{use:"load"}})};var gu=yr.exports;const mu=Go(gu);(function(){if(window.requestAnimationFrame&&window.cancelAnimationFrame)return;const t=["webkit","moz","ms","o"];for(const e of t)window.requestAnimationFrame=window.requestAnimationFrame||window[`${e}RequestAnimationFrame`],window.cancelAnimationFrame=window.cancelAnimationFrame||window[`${e}CancelAnimationFrame`]||window[`${e}CancelRequestAnimationFrame`];if(/iP(ad|hone|od).*OS 6/.test(window.navigator.userAgent)||!window.requestAnimationFrame||!window.cancelAnimationFrame){let e=0;const r=!!(window.performance&&window.performance.now);window.requestAnimationFrame=function(n){const i=r?window.performance.now():new Date().getTime(),o=Math.max(0,16-(i-e)),s=window.setTimeout(function(){n(i+o)},o);return e=i+o,s},window.cancelAnimationFrame=clearTimeout}})();function bu(t,e=!0,r=!0,n={friendsTab:"enabled"}){const i=e?"https://grpc-sdk.streamlayer.io:443":"https://grpc-sdk.next.streamlayer.io:443",o=e?"https://grpc.streamlayer.io:443":"https://grpc.next.streamlayer.io:443",s=mu(Object.create({}),{autostart:!1});return s.use(wo,{friendsTab:n.friendsTab}),s.use(ho,{onDeepLinkHandled:n?.onDeepLinkHandled}),s.use(bo,{videoPlayerController:n?.videoPlayerController}),s.use(So,{onContentActivate:n?.onContentActivate,withAd:n?.withAd,withAdNotification:n?.withAdNotification}),s.use(Ni,{sdkKey:t,host:i,analyticsHost:o,version:n?.version}),s.use($i),s.use(mo),s.use(Do),s.use(no),s.use(xo),s.after((a,u,l)=>{if(a)throw a;u.ready(),l()}),r&&s.after(async(a,u,l)=>{if(a)throw a;await u.sdk.initializeApp(),l()}),s.onClose(()=>{console.log("close")}),s}exports.StreamLayer=bu;
|
|
14
|
+
`+o.map(function(u,l){var c=l===o.length-1,f=u.nodes&&u.nodes.length,p=r+(c?" ":i("│"))+" ";return r+i(c?"└":"├")+i("─")+i(f?"┬":"─")+" "+t(u,p,n).slice(r.length+2)}).join("")};const xa=Qa,rn=Symbol("avvio.TimeTree.untrackNode"),Kt=Symbol("avvio.TimeTree.trackNode"),nn=Symbol("avvio.TimeTree.getParent"),on=Symbol("avvio.TimeTree.getNode"),sn=Symbol("avvio.TimeTree.addNode");let Ga=class{constructor(){this.root=null,this.tableId=new Map,this.tableLabel=new Map}[Kt](e){this.tableId.set(e.id,e),this.tableLabel.has(e.label)?this.tableLabel.get(e.label).push(e):this.tableLabel.set(e.label,[e])}[rn](e){this.tableId.delete(e.id);const r=this.tableLabel.get(e.label);if(r.id){this.tableLabel.delete(e.label);return}r.pop(),r.length===0&&this.tableLabel.delete(e.label)}[nn](e){if(e===null)return this.root;const r=this.tableLabel.get(e);return r.id?r:r[r.length-1]}[on](e){return this.tableId.get(e)}[sn](e,r,n){if(e===null)return this.root={id:"root",label:r,start:n,nodes:[]},this[Kt](this.root),this.root.id;const o=this[nn](e),s=`${r}-${Math.random()}`,a={id:s,parent:e,start:n,label:r,nodes:[]};return o.nodes.push(a),this[Kt](a),s}start(e,r,n=Date.now()){return this[sn](e,r,n)}stop(e,r=Date.now()){const n=this[on](e);n&&(n.stop=r,n.diff=n.stop-n.start||0,this[rn](n))}toJSON(){return Object.assign({},this.root)}prittyPrint(){const e=n=>(n.label=`${n.label} ${n.diff} ms`,n.nodes.length>0&&(n.nodes=n.nodes.map(i=>e(i))),n),r=e(this.toJSON());return xa(r)}};var Ka=Ga,_r={exports:{}},fr={exports:{}},zt,an;function za(){if(an)return zt;an=1;var t=1e3,e=t*60,r=e*60,n=r*24,i=n*7,o=n*365.25;zt=function(c,f){f=f||{};var p=typeof c;if(p==="string"&&c.length>0)return s(c);if(p==="number"&&isFinite(c))return f.long?u(c):a(c);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(c))};function s(c){if(c=String(c),!(c.length>100)){var f=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(c);if(f){var p=parseFloat(f[1]),S=(f[2]||"ms").toLowerCase();switch(S){case"years":case"year":case"yrs":case"yr":case"y":return p*o;case"weeks":case"week":case"w":return p*i;case"days":case"day":case"d":return p*n;case"hours":case"hour":case"hrs":case"hr":case"h":return p*r;case"minutes":case"minute":case"mins":case"min":case"m":return p*e;case"seconds":case"second":case"secs":case"sec":case"s":return p*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return p;default:return}}}}function a(c){var f=Math.abs(c);return f>=n?Math.round(c/n)+"d":f>=r?Math.round(c/r)+"h":f>=e?Math.round(c/e)+"m":f>=t?Math.round(c/t)+"s":c+"ms"}function u(c){var f=Math.abs(c);return f>=n?l(c,f,n,"day"):f>=r?l(c,f,r,"hour"):f>=e?l(c,f,e,"minute"):f>=t?l(c,f,t,"second"):c+" ms"}function l(c,f,p,S){var A=f>=p*1.5;return Math.round(c/p)+" "+S+(A?"s":"")}return zt}function Ha(t){r.debug=r,r.default=r,r.coerce=u,r.disable=o,r.enable=i,r.enabled=s,r.humanize=za(),r.destroy=l,Object.keys(t).forEach(c=>{r[c]=t[c]}),r.names=[],r.skips=[],r.formatters={};function e(c){let f=0;for(let p=0;p<c.length;p++)f=(f<<5)-f+c.charCodeAt(p),f|=0;return r.colors[Math.abs(f)%r.colors.length]}r.selectColor=e;function r(c){let f,p=null,S,A;function b(...g){if(!b.enabled)return;const T=b,D=Number(new Date),K=D-(f||D);T.diff=K,T.prev=f,T.curr=D,f=D,g[0]=r.coerce(g[0]),typeof g[0]!="string"&&g.unshift("%O");let X=0;g[0]=g[0].replace(/%([a-zA-Z%])/g,($,C)=>{if($==="%%")return"%";X++;const re=r.formatters[C];if(typeof re=="function"){const ne=g[X];$=re.call(T,ne),g.splice(X,1),X--}return $}),r.formatArgs.call(T,g),(T.log||r.log).apply(T,g)}return b.namespace=c,b.useColors=r.useColors(),b.color=r.selectColor(c),b.extend=n,b.destroy=r.destroy,Object.defineProperty(b,"enabled",{enumerable:!0,configurable:!1,get:()=>p!==null?p:(S!==r.namespaces&&(S=r.namespaces,A=r.enabled(c)),A),set:g=>{p=g}}),typeof r.init=="function"&&r.init(b),b}function n(c,f){const p=r(this.namespace+(typeof f>"u"?":":f)+c);return p.log=this.log,p}function i(c){r.save(c),r.namespaces=c,r.names=[],r.skips=[];let f;const p=(typeof c=="string"?c:"").split(/[\s,]+/),S=p.length;for(f=0;f<S;f++)p[f]&&(c=p[f].replace(/\*/g,".*?"),c[0]==="-"?r.skips.push(new RegExp("^"+c.slice(1)+"$")):r.names.push(new RegExp("^"+c+"$")))}function o(){const c=[...r.names.map(a),...r.skips.map(a).map(f=>"-"+f)].join(",");return r.enable(""),c}function s(c){if(c[c.length-1]==="*")return!0;let f,p;for(f=0,p=r.skips.length;f<p;f++)if(r.skips[f].test(c))return!1;for(f=0,p=r.names.length;f<p;f++)if(r.names[f].test(c))return!0;return!1}function a(c){return c.toString().substring(2,c.toString().length-2).replace(/\.\*\?$/,"*")}function u(c){return c instanceof Error?c.stack||c.message:c}function l(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}var Wa=Ha;(function(t,e){e.formatArgs=n,e.save=i,e.load=o,e.useColors=r,e.storage=s(),e.destroy=(()=>{let u=!1;return()=>{u||(u=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),e.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function r(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function n(u){if(u[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+u[0]+(this.useColors?"%c ":" ")+"+"+t.exports.humanize(this.diff),!this.useColors)return;const l="color: "+this.color;u.splice(1,0,l,"color: inherit");let c=0,f=0;u[0].replace(/%[a-zA-Z%]/g,p=>{p!=="%%"&&(c++,p==="%c"&&(f=c))}),u.splice(f,0,l)}e.log=console.debug||console.log||(()=>{});function i(u){try{u?e.storage.setItem("debug",u):e.storage.removeItem("debug")}catch{}}function o(){let u;try{u=e.storage.getItem("debug")}catch{}return!u&&typeof I<"u"&&"env"in I&&(u=I.env.DEBUG),u}function s(){try{return localStorage}catch{}}t.exports=Wa(e);const{formatters:a}=t.exports;a.j=function(u){try{return JSON.stringify(u)}catch(l){return"[UnexpectedJSONParseError]: "+l.message}}})(fr,fr.exports);var Zn=fr.exports;const Ya=On,Ja=Rn.EventEmitter,Xa=Ct.inherits,x=Zn("avvio"),{AVV_ERR_READY_TIMEOUT:Za}=Xn,Ht=Symbol.for("plugin-meta");function eu(t,e){return t[Ht]&&t[Ht].name?t[Ht].name:typeof e<"u"&&typeof e!="function"&&e.name?e.name:t.name?t.name:t.toString().split(`
|
|
15
|
+
`).slice(0,2).map(r=>r.trim()).join(" -- ")}function tu(){const t={};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}function Ge(t,e,r,n,i){this.started=!1,this.func=e,this.opts=r,this.onFinish=null,this.parent=t,this.timeout=i===void 0?t._timeout:i,this.name=eu(e,r),this.isAfter=n,this.q=Ya(t,ru,1),this.q.pause(),this._error=null,this.loaded=!1,this._promise=null}Xa(Ge,Ja);Ge.prototype.exec=function(t,e){const r=this.func;let n=!1;const i=this.name;if(this.parent._error&&!this.isAfter){x("skipping loading of plugin as parent errored and it is not an after",i),I.nextTick(e);return}if(this.isAfter)this.server=t;else try{this.server=this.parent.override(t,r,this.opts)}catch(u){return x("override errored",i),e(u)}this.opts=typeof this.opts=="function"?this.opts(this.server):this.opts,x("exec",i);let o;const s=u=>{if(n){x("loading complete",i);return}this._error=u,x(u?"exec errored":"exec completed",i),n=!0,o&&clearTimeout(o),e(u)};this.timeout>0&&(x("setting up timeout",i,this.timeout),o=setTimeout(function(){x("timed out",i),o=null;const u=new Za(i);u.fn=r,s(u)},this.timeout)),this.started=!0,this.emit("start",this.server?this.server.name:null,this.name,Date.now());const a=r(this.server,this.opts,s);a&&typeof a.then=="function"&&(x("exec: resolving promise",i),a.then(()=>I.nextTick(s),u=>I.nextTick(s,u)))};Ge.prototype.loadedSoFar=function(){if(this.loaded)return Promise.resolve();const t=()=>{this.server.after((r,n)=>{this._error=r,this.q.pause(),r?(x("rejecting promise",this.name,r),this._promise.reject(r)):(x("resolving promise",this.name),this._promise.resolve()),this._promise=null,I.nextTick(n,r)}),this.q.resume()};let e;return this._promise?e=Promise.resolve():(this._promise=tu(),e=this._promise.promise,this.server?t():this.on("start",t)),e};Ge.prototype.enqueue=function(t,e){x("enqueue",this.name,t.name),this.emit("enqueue",this.server?this.server.name:null,this.name,Date.now()),this.q.push(t,e)};Ge.prototype.finish=function(t,e){x("finish",this.name,t);const r=()=>{this.loaded||(x("loaded",this.name),this.emit("loaded",this.server?this.server.name:null,this.name,Date.now()),this.loaded=!0,e(t))};if(t){this._promise&&(this._promise.reject(t),this._promise=null),r();return}const n=()=>{if(x("check",this.name,this.q.length(),this.q.running(),this._promise),this.q.length()===0&&this.q.running()===0)if(this._promise){const i=()=>{x("wrap"),queueMicrotask(n)};this._promise.resolve(),this._promise.promise.then(i,i),this._promise=null}else r();else x("delayed",this.name),this.q.drain=()=>{x("drain",this.name),this.q.drain=nu,queueMicrotask(n)}};queueMicrotask(n),this.q.resume()};function ru(t,e){const r=this;I.nextTick(Cr.bind(r),t,e)}function Cr(t,e){if(typeof t.func.then=="function"){t.func.then(n=>{typeof n.default=="function"&&(n=n.default),t.func=n,Cr.call(this,t,e)},e);return}const r=this._current[0];this._current.unshift(t),t.exec(r&&r.server||this._server,n=>{t.finish(n,i=>{this._current.shift(),e(i)})})}function nu(){}_r.exports=Ge;_r.exports.loadPlugin=Cr;var iu=_r.exports;const un=On,ou=Rn.EventEmitter,su=Ct.inherits,{AVV_ERR_EXPOSE_ALREADY_DEFINED:Wt,AVV_ERR_CALLBACK_NOT_FN:Ye,AVV_ERR_PLUGIN_NOT_VALID:au,AVV_ERR_ROOT_PLG_BOOTED:uu,AVV_ERR_READY_TIMEOUT:cu}=Xn,lu=Ka,pr=iu,Qe=Zn("avvio"),Et=Symbol("kAvvio"),Yt=Symbol("kThenifyDoNotWrap");function du(t,e,r){const n=e.expose||{},i=n.use||"use",o=n.after||"after",s=n.ready||"ready",a=n.onClose||"onClose",u=n.close||"close";if(t[i])throw new Wt(i);if(t[o])throw new Wt(o);if(t[s])throw new Wt(s);t[i]=function(l,c){return r.use(l,c),this},Object.defineProperty(t,"then",{get:ei.bind(r)}),t[Et]=!0,t[o]=function(l){return typeof l!="function"?r._loadRegistered():(r.after(Jt(l,this)),this)},t[s]=function(l){if(l&&typeof l!="function")throw new Ye(s,typeof l);return r.ready(l?Jt(l,this):void 0)},t[a]=function(l){if(typeof l!="function")throw new Ye(a,typeof l);return r.onClose(mu(l,this)),this},t[u]=function(l){if(l&&typeof l!="function")throw new Ye(u,typeof l);return l?(r.close(Jt(l,this)),this):r.close()}}function G(t,e,r){if(typeof t=="function"&&arguments.length===1&&(r=t,e={},t=null),typeof e=="function"&&(r=e,e={}),e=e||{},!(this instanceof G)){const n=new G(t,e,r);return t&&du(t,e,n),n}e.autostart!==!1&&(e.autostart=!0),t=t||this,this._timeout=Number(e.timeout)||0,this._server=t,this._current=[],this._error=null,this._isOnCloseHandlerKey=Symbol("isOnCloseHandler"),this._lastUsed=null,this.setMaxListeners(0),r&&this.once("start",r),this.started=!1,this.booted=!1,this.pluginTree=new lu,this._readyQ=un(this,ti,1),this._readyQ.pause(),this._readyQ.drain=()=>{this.emit("start"),this._readyQ.drain=cn},this._closeQ=un(this,yu,1),this._closeQ.pause(),this._closeQ.drain=()=>{this.emit("close"),this._closeQ.drain=cn},this._doStart=null,this._root=new pr(this,fu.bind(this),e,!1,0),this._root.once("start",(n,i,o)=>{const s=this.pluginTree.start(null,i,o);this._root.once("loaded",(a,u,l)=>{this.pluginTree.stop(s,l)})}),pr.loadPlugin.call(this,this._root,n=>{Qe("root plugin ready");try{this.emit("preReady"),this._root=null}catch(i){n=n||this._error||i}if(n){if(this._error=n,this._readyQ.length()===0)throw n}else this.booted=!0;this._readyQ.resume()})}function fu(t,e,r){this._doStart=r,e.autostart&&this.start()}su(G,ou);G.prototype.start=function(){return this.started=!0,I.nextTick(this._doStart),this};G.prototype.override=function(t,e,r){return t};function pu(t){if(t&&typeof t=="object"&&typeof t.default=="function"&&(t=t.default),!(t&&(typeof t=="function"||typeof t.then=="function")))throw new au(typeof t);return t}G.prototype[Et]=!0;G.prototype.use=function(t,e){return this._lastUsed=this._addPlugin(t,e,!1),this};G.prototype._loadRegistered=function(){const t=this._current[0];return!this.started&&!this.booted&&I.nextTick(()=>this._root.q.resume()),t?t.loadedSoFar():Promise.resolve()};Object.defineProperty(G.prototype,"then",{get:ei});G.prototype._addPlugin=function(t,e,r){if(t=pu(t),e=e||{},this.booted)throw new uu;const n=this._current[0],i=new pr(this,t,e,r);if(i.once("start",(o,s,a)=>{const u=this.pluginTree.start(n.name,s,a);i.once("loaded",(l,c,f)=>{this.pluginTree.stop(u,f)})}),n.loaded)throw new Error(i.name,n.name);return n.enqueue(i,o=>{o&&(this._error=o)}),i};G.prototype.after=function(t){if(!t)return this._loadRegistered();this._addPlugin(e.bind(this),{},!0);function e(r,n,i){ti.call(this,t,i)}return this};G.prototype.onClose=function(t){if(typeof t!="function")throw new Error("not a function");t[this._isOnCloseHandlerKey]=!0,this._closeQ.unshift(t,e.bind(this));function e(r){r&&(this._error=r)}return this};G.prototype.close=function(t){let e;if(t){if(typeof t!="function")throw new Ye("close",typeof t)}else e=new Promise(function(r,n){t=function(i){if(i)return n(i);r()}});return this.ready(()=>{this._error=null,this._closeQ.push(t),I.nextTick(this._closeQ.resume.bind(this._closeQ))}),e};G.prototype.ready=function(t){if(t){if(typeof t!="function")throw new Ye("ready",typeof t);this._readyQ.push(t),queueMicrotask(this.start.bind(this));return}return new Promise((e,r)=>{this._readyQ.push(i),this.start();const n=this._current[0].server;function i(o,s,a){o?r(o):e(n),I.nextTick(a)}})};G.prototype.prettyPrint=function(){return this.pluginTree.prittyPrint()};G.prototype.toJSON=function(){return this.pluginTree.toJSON()};function cn(){}function ei(){if(this.booted){Qe("thenify returning null because we are already booted");return}if(this[Yt]){this[Yt]=!1;return}return Qe("thenify"),(t,e)=>this._loadRegistered().then(()=>(this[Yt]=!0,t(this._server)),e)}function ti(t,e){const r=this._server,n=this._error;let i;if(this._error=null,t.length===0)this._error=n,i=t(),i&&!i[Et]&&typeof i.then=="function"?i.then(()=>I.nextTick(e),o=>I.nextTick(e,o)):I.nextTick(e);else if(t.length===1)i=t(n),i&&!i[Et]&&typeof i.then=="function"?i.then(()=>I.nextTick(e),o=>I.nextTick(e,o)):I.nextTick(e);else if(this._timeout===0){const o=s=>{this._error=s,e(this._error)};t.length===2?t(n,o):t(n,r,o)}else hu.call(this,t,n,r,e)}function hu(t,e,r,n){const i=t.name;Qe("setting up ready timeout",i,this._timeout);let o=setTimeout(()=>{Qe("timed out",i),o=null;const a=new cu(i);a.fn=t,this._error=a,n(a)},this._timeout);t.length===2?t(e,s.bind(this)):t(e,r,s.bind(this));function s(a){o&&(clearTimeout(o),this._error=a,n(this._error))}}function yu(t,e){const r=this._server,n=t[this._isOnCloseHandlerKey];if(t.length===0||t.length===1){let i;n?i=t(r):i=t(this._error),i&&typeof i.then=="function"?(Qe("resolving close/onClose promise"),i.then(()=>I.nextTick(e),o=>I.nextTick(e,o))):I.nextTick(e)}else t.length===2?t(n?r:this._error,e):n?t(r,e):t(this._error,r,e)}function mu(t,e){return r.bind(e);function r(n,i){let o;t.length===0?(o=t(),o&&o.then?o.then(function(){I.nextTick(i)},i):I.nextTick(i)):t.length===1?(o=t(this),o&&o.then?o.then(function(){I.nextTick(i)},i):I.nextTick(i)):t(this,i)}}function Jt(t,e){return r.bind(e);function r(n,i){let o;t?t.length===0?(o=t(),o&&o.then?o.then(function(){I.nextTick(i,n)},i):I.nextTick(i,n)):t.length===1?(o=t(n),o&&o.then?o.then(function(){I.nextTick(i)},i):I.nextTick(i)):t.length===2?t(n,i):t(n,this,i):I.nextTick(i)}}mr.exports=G;mr.exports.express=function(t){return G(t,{expose:{use:"load"}})};var gu=mr.exports;const bu=Ko(gu);(function(){if(window.requestAnimationFrame&&window.cancelAnimationFrame)return;const t=["webkit","moz","ms","o"];for(const e of t)window.requestAnimationFrame=window.requestAnimationFrame||window[`${e}RequestAnimationFrame`],window.cancelAnimationFrame=window.cancelAnimationFrame||window[`${e}CancelAnimationFrame`]||window[`${e}CancelRequestAnimationFrame`];if(/iP(ad|hone|od).*OS 6/.test(window.navigator.userAgent)||!window.requestAnimationFrame||!window.cancelAnimationFrame){let e=0;const r=!!(window.performance&&window.performance.now);window.requestAnimationFrame=function(n){const i=r?window.performance.now():new Date().getTime(),o=Math.max(0,16-(i-e)),s=window.setTimeout(function(){n(i+o)},o);return e=i+o,s},window.cancelAnimationFrame=clearTimeout}})();function vu(t,e=!0,r=!0,n={friendsTab:"enabled"}){const i=e?"https://grpc-sdk.streamlayer.io:443":"https://grpc-sdk.next.streamlayer.io:443",o=e?"https://grpc.streamlayer.io:443":"https://grpc.next.streamlayer.io:443",s=bu(Object.create({}),{autostart:!1});return s.use(To,{friendsTab:n.friendsTab}),s.use(yo,{onDeepLinkHandled:n?.onDeepLinkHandled}),s.use(vo,{videoPlayerController:n?.videoPlayerController}),s.use(wo,{onContentActivate:n?.onContentActivate,withAd:n?.withAd,withAdNotification:n?.withAdNotification}),s.use(Fi,{sdkKey:t,host:i,analyticsHost:o,version:n?.version}),s.use(qi),s.use(bo),s.use(Ro),s.use(io),s.use(Go),s.after((a,u,l)=>{if(a)throw a;u.ready(),l()}),r&&s.after(async(a,u,l)=>{if(a)throw a;await u.sdk.initializeApp(),l()}),s.onClose(()=>{console.log("close")}),s}exports.StreamLayer=vu;
|