playsout-web-sdk 1.0.2 → 1.0.3
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/README.md +303 -131
- package/{chunk-MUMDBAO7.cjs → chunk-LU6AS3JQ.cjs} +2 -2
- package/{chunk-AJVRILLC.js → chunk-NZCZLXPA.js} +2 -2
- package/core/index.d.ts.map +1 -1
- package/core/types.d.ts +0 -1
- package/core/types.d.ts.map +1 -1
- package/index.cjs +1 -1
- package/index.global.js +224 -46
- package/index.iife.js +224 -46
- package/index.js +1 -1
- package/package.json +1 -1
- package/react/index.cjs +1 -1
- package/react/index.js +1 -1
- package/vue/index.cjs +1 -1
- package/vue/index.js +1 -1
- package/web-components/PlaysoutWidget.d.ts +9 -0
- package/web-components/PlaysoutWidget.d.ts.map +1 -1
- package/web-components/PrivyBridge.d.ts +58 -0
- package/web-components/PrivyBridge.d.ts.map +1 -0
- package/web-components/index.cjs +223 -45
- package/web-components/index.js +223 -45
package/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{a as ErrorCode,h as Playsout,e as PlaysoutSDK,b as SDKError,d as STORAGE_KEYS,g as default,f as sdk,c as storage}from'./chunk-
|
|
1
|
+
export{a as ErrorCode,h as Playsout,e as PlaysoutSDK,b as SDKError,d as STORAGE_KEYS,g as default,f as sdk,c as storage}from'./chunk-NZCZLXPA.js';export{a as SDKEvent,b as eventEmitter}from'./chunk-EZLO3WY6.js';
|
package/package.json
CHANGED
package/react/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var
|
|
1
|
+
'use strict';var chunkLU6AS3JQ_cjs=require('../chunk-LU6AS3JQ.cjs');require('../chunk-Z2CIDSTP.cjs');var react=require('react'),jsxRuntime=require('react/jsx-runtime');var S=react.createContext(null);function H({children:a,config:n,locale:c}){let[u,d]=react.useState(false),[p,g]=react.useState(false),[L,i]=react.useState(null),[G,m]=react.useState(null),[C,w]=react.useState(c||"zh"),[k,h]=react.useState([]),[U,E]=react.useState([]),[b,r]=react.useState(false),[R,f]=react.useState(null),x=react.useCallback(async t=>{try{r(!0),f(null),await chunkLU6AS3JQ_cjs.f.init(t),d(!0),g(chunkLU6AS3JQ_cjs.f.isLoggedIn),i(chunkLU6AS3JQ_cjs.f.user),m(chunkLU6AS3JQ_cjs.f.token),w(chunkLU6AS3JQ_cjs.f.locale);let[o,P]=await Promise.all([chunkLU6AS3JQ_cjs.f.getGames(),chunkLU6AS3JQ_cjs.f.getCategories()]);h(o),E(P);}catch(o){f(o instanceof Error?o:new Error("Initialization failed")),console.error("[PlaysoutProvider] Init error:",o);}finally{r(false);}},[]),z=react.useCallback(async t=>{try{r(!0),f(null);let o=await chunkLU6AS3JQ_cjs.h.Login(t);return g(!0),i(chunkLU6AS3JQ_cjs.f.user),m(chunkLU6AS3JQ_cjs.f.token),o}catch(o){let P=o instanceof Error?o:new Error("Login failed");throw f(P),P}finally{r(false);}},[]),V=react.useCallback(()=>{chunkLU6AS3JQ_cjs.f.logout(),g(false),i(null),m(null);},[]),D=react.useCallback(t=>{chunkLU6AS3JQ_cjs.h.setLocale(t),w(t);},[]),K=react.useCallback(async t=>{try{return r(!0),await chunkLU6AS3JQ_cjs.f.getGames(t)}finally{r(false);}},[]),T=react.useCallback(async()=>{try{return r(!0),await chunkLU6AS3JQ_cjs.f.getCategories()}finally{r(false);}},[]),A=react.useCallback(async()=>{try{r(!0);let[t,o]=await Promise.all([chunkLU6AS3JQ_cjs.f.getGames(),chunkLU6AS3JQ_cjs.f.getCategories()]);h(t),E(o);}catch(t){f(t instanceof Error?t:new Error("Refresh failed"));}finally{r(false);}},[]),F=react.useCallback(async()=>{try{r(!0);let t=await chunkLU6AS3JQ_cjs.f.getUserInfo();return i(chunkLU6AS3JQ_cjs.f.user),t}finally{r(false);}},[]);react.useEffect(()=>{n&&!u&&x(n);},[n,u,x]);let N={isInitialized:u,isLoggedIn:p,user:L,token:G,locale:C,games:k,categories:U,isLoading:b,error:R,init:x,Login:z,logout:V,setLocale:D,getGames:K,getCategories:T,refreshGames:A,getUserInfo:F};return jsxRuntime.jsx(S.Provider,{value:N,children:a})}function v(){let a=react.useContext(S);if(!a)throw new Error("usePlaysout must be used within PlaysoutProvider");return a}function J(a){let{games:n,getGames:c,isLoading:u,error:d}=v(),[p,g]=react.useState(n),[L,i]=react.useState(u);react.useEffect(()=>{g(n);},[n]),react.useEffect(()=>{i(u);},[u]);let G=react.useCallback(async m=>{i(true);try{let C=await c(m||a);g(C);}finally{i(false);}},[c,a]);return {games:p,isLoading:L,error:d,refresh:G}}function M(){let{categories:a,getCategories:n,isLoading:c}=v();return {categories:a,isLoading:c,refresh:n}}Object.defineProperty(exports,"Playsout",{enumerable:true,get:function(){return chunkLU6AS3JQ_cjs.h}});exports.PlaysoutProvider=H;exports.useCategories=M;exports.useGames=J;exports.usePlaysout=v;
|
package/react/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import {f,h}from'../chunk-
|
|
1
|
+
import {f,h}from'../chunk-NZCZLXPA.js';export{h as Playsout}from'../chunk-NZCZLXPA.js';import'../chunk-EZLO3WY6.js';import {createContext,useState,useCallback,useEffect,useContext}from'react';import {jsx}from'react/jsx-runtime';var S=createContext(null);function H({children:a,config:n,locale:c}){let[u,d]=useState(false),[p,g]=useState(false),[L,i]=useState(null),[G,m]=useState(null),[C,w]=useState(c||"zh"),[k,h$1]=useState([]),[U,E]=useState([]),[b,r]=useState(false),[R,f$1]=useState(null),x=useCallback(async t=>{try{r(!0),f$1(null),await f.init(t),d(!0),g(f.isLoggedIn),i(f.user),m(f.token),w(f.locale);let[o,P]=await Promise.all([f.getGames(),f.getCategories()]);h$1(o),E(P);}catch(o){f$1(o instanceof Error?o:new Error("Initialization failed")),console.error("[PlaysoutProvider] Init error:",o);}finally{r(false);}},[]),z=useCallback(async t=>{try{r(!0),f$1(null);let o=await h.Login(t);return g(!0),i(f.user),m(f.token),o}catch(o){let P=o instanceof Error?o:new Error("Login failed");throw f$1(P),P}finally{r(false);}},[]),V=useCallback(()=>{f.logout(),g(false),i(null),m(null);},[]),D=useCallback(t=>{h.setLocale(t),w(t);},[]),K=useCallback(async t=>{try{return r(!0),await f.getGames(t)}finally{r(false);}},[]),T=useCallback(async()=>{try{return r(!0),await f.getCategories()}finally{r(false);}},[]),A=useCallback(async()=>{try{r(!0);let[t,o]=await Promise.all([f.getGames(),f.getCategories()]);h$1(t),E(o);}catch(t){f$1(t instanceof Error?t:new Error("Refresh failed"));}finally{r(false);}},[]),F=useCallback(async()=>{try{r(!0);let t=await f.getUserInfo();return i(f.user),t}finally{r(false);}},[]);useEffect(()=>{n&&!u&&x(n);},[n,u,x]);let N={isInitialized:u,isLoggedIn:p,user:L,token:G,locale:C,games:k,categories:U,isLoading:b,error:R,init:x,Login:z,logout:V,setLocale:D,getGames:K,getCategories:T,refreshGames:A,getUserInfo:F};return jsx(S.Provider,{value:N,children:a})}function v(){let a=useContext(S);if(!a)throw new Error("usePlaysout must be used within PlaysoutProvider");return a}function J(a){let{games:n,getGames:c,isLoading:u,error:d}=v(),[p,g]=useState(n),[L,i]=useState(u);useEffect(()=>{g(n);},[n]),useEffect(()=>{i(u);},[u]);let G=useCallback(async m=>{i(true);try{let C=await c(m||a);g(C);}finally{i(false);}},[c,a]);return {games:p,isLoading:L,error:d,refresh:G}}function M(){let{categories:a,getCategories:n,isLoading:c}=v();return {categories:a,isLoading:c,refresh:n}}export{H as PlaysoutProvider,M as useCategories,J as useGames,v as usePlaysout};
|
package/vue/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var
|
|
1
|
+
'use strict';var chunkLU6AS3JQ_cjs=require('../chunk-LU6AS3JQ.cjs');require('../chunk-Z2CIDSTP.cjs');var vue=require('vue');var c=Symbol("PlaysoutSDK");function p(){let l=vue.ref(false),i=vue.ref(false),n=vue.ref(null),g=vue.ref(null),f=vue.ref("zh"),y=vue.ref([]),P=vue.ref([]),o=vue.ref(false),s=vue.ref(null),C=vue.computed(()=>s.value!==null);async function G(e){try{o.value=!0,s.value=null,await chunkLU6AS3JQ_cjs.f.init(e),l.value=!0,m(),await L();}catch(a){s.value=a instanceof Error?a:new Error("Initialization failed"),console.error("[usePlaysout] Init error:",a);}finally{o.value=false;}}function m(){i.value=chunkLU6AS3JQ_cjs.f.isLoggedIn,n.value=chunkLU6AS3JQ_cjs.f.user,g.value=chunkLU6AS3JQ_cjs.f.token,f.value=chunkLU6AS3JQ_cjs.f.locale;}async function S(e){try{o.value=!0,s.value=null;let a=await chunkLU6AS3JQ_cjs.h.Login(e);return m(),a}catch(a){let v=a instanceof Error?a:new Error("Login failed");throw s.value=v,v}finally{o.value=false;}}function b(){chunkLU6AS3JQ_cjs.f.logout(),m();}function x(e){chunkLU6AS3JQ_cjs.h.setLocale(e),f.value=e;}async function R(e){try{return o.value=!0,await chunkLU6AS3JQ_cjs.f.getGames(e)}finally{o.value=false;}}async function E(){try{return o.value=!0,await chunkLU6AS3JQ_cjs.f.getCategories()}finally{o.value=false;}}async function L(){try{o.value=!0;let[e,a]=await Promise.all([chunkLU6AS3JQ_cjs.f.getGames(),chunkLU6AS3JQ_cjs.f.getCategories()]);y.value=e,P.value=a;}catch(e){s.value=e instanceof Error?e:new Error("Refresh failed");}finally{o.value=false;}}return {isInitialized:l,isLoggedIn:i,user:n,token:g,locale:f,games:y,categories:P,isLoading:o,error:s,hasError:C,init:G,Login:S,logout:b,setLocale:x,getGames:R,getCategories:E,refreshGames:L}}function d(){let l=vue.inject(c);if(!l)throw new Error("usePlaysout must be used after calling createPlaysout()");return l}function h(l={}){return {install(i){let n=p();i.provide(c,n),l.config&&n.init(l.config);}}}Object.defineProperty(exports,"Playsout",{enumerable:true,get:function(){return chunkLU6AS3JQ_cjs.h}});exports.createPlaysout=p;exports.createPlaysoutPlugin=h;exports.usePlaysout=d;
|
package/vue/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import {f,h as h$1}from'../chunk-
|
|
1
|
+
import {f,h as h$1}from'../chunk-NZCZLXPA.js';export{h as Playsout}from'../chunk-NZCZLXPA.js';import'../chunk-EZLO3WY6.js';import {ref,computed,inject}from'vue';var c=Symbol("PlaysoutSDK");function p(){let l=ref(false),i=ref(false),n=ref(null),g=ref(null),f$1=ref("zh"),y=ref([]),P=ref([]),o=ref(false),s=ref(null),C=computed(()=>s.value!==null);async function G(e){try{o.value=!0,s.value=null,await f.init(e),l.value=!0,m(),await L();}catch(a){s.value=a instanceof Error?a:new Error("Initialization failed"),console.error("[usePlaysout] Init error:",a);}finally{o.value=false;}}function m(){i.value=f.isLoggedIn,n.value=f.user,g.value=f.token,f$1.value=f.locale;}async function S(e){try{o.value=!0,s.value=null;let a=await h$1.Login(e);return m(),a}catch(a){let v=a instanceof Error?a:new Error("Login failed");throw s.value=v,v}finally{o.value=false;}}function b(){f.logout(),m();}function x(e){h$1.setLocale(e),f$1.value=e;}async function R(e){try{return o.value=!0,await f.getGames(e)}finally{o.value=false;}}async function E(){try{return o.value=!0,await f.getCategories()}finally{o.value=false;}}async function L(){try{o.value=!0;let[e,a]=await Promise.all([f.getGames(),f.getCategories()]);y.value=e,P.value=a;}catch(e){s.value=e instanceof Error?e:new Error("Refresh failed");}finally{o.value=false;}}return {isInitialized:l,isLoggedIn:i,user:n,token:g,locale:f$1,games:y,categories:P,isLoading:o,error:s,hasError:C,init:G,Login:S,logout:b,setLocale:x,getGames:R,getCategories:E,refreshGames:L}}function d(){let l=inject(c);if(!l)throw new Error("usePlaysout must be used after calling createPlaysout()");return l}function h(l={}){return {install(i){let n=p();i.provide(c,n),l.config&&n.init(l.config);}}}export{p as createPlaysout,h as createPlaysoutPlugin,d as usePlaysout};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
declare class PlaysoutWidget extends HTMLElement {
|
|
2
2
|
private shadow;
|
|
3
|
+
private bridge;
|
|
3
4
|
private _appId;
|
|
4
5
|
private _locale;
|
|
5
6
|
private games;
|
|
@@ -13,11 +14,16 @@ declare class PlaysoutWidget extends HTMLElement {
|
|
|
13
14
|
private _detailMode;
|
|
14
15
|
private currentView;
|
|
15
16
|
private currentGame;
|
|
17
|
+
private currentIframeSrc;
|
|
18
|
+
private pendingPaymentResolver;
|
|
16
19
|
static get observedAttributes(): string[];
|
|
17
20
|
constructor();
|
|
18
21
|
private t;
|
|
19
22
|
private hasTranslation;
|
|
23
|
+
private getBridgeUser;
|
|
24
|
+
private setUserPoints;
|
|
20
25
|
connectedCallback(): void;
|
|
26
|
+
disconnectedCallback(): void;
|
|
21
27
|
attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null): void;
|
|
22
28
|
private loadGames;
|
|
23
29
|
private pollForSDK;
|
|
@@ -30,6 +36,9 @@ declare class PlaysoutWidget extends HTMLElement {
|
|
|
30
36
|
private gemPacks;
|
|
31
37
|
private showStoreModal;
|
|
32
38
|
private hideStoreModal;
|
|
39
|
+
private showPaymentModal;
|
|
40
|
+
private hidePaymentModal;
|
|
41
|
+
private resolvePendingPayment;
|
|
33
42
|
private showProfileModal;
|
|
34
43
|
private hideProfileModal;
|
|
35
44
|
private showLanguageSelectModal;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlaysoutWidget.d.ts","sourceRoot":"","sources":["../../src/web-components/PlaysoutWidget.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PlaysoutWidget.d.ts","sourceRoot":"","sources":["../../src/web-components/PlaysoutWidget.ts"],"names":[],"mappings":"AAo9CA,cAAM,cAAe,SAAQ,WAAW;IACtC,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,WAAW,CAAc;IAGjC,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,WAAW,CAAc;IAGjC,OAAO,CAAC,WAAW,CAA+B;IAClD,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,gBAAgB,CAAc;IACtC,OAAO,CAAC,sBAAsB,CAAwD;IAEtF,MAAM,KAAK,kBAAkB,aAE5B;;IAgBD,OAAO,CAAC,CAAC;IAUT,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,aAAa;IAmBrB,iBAAiB;IAMjB,oBAAoB;IASpB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;YA+CzE,SAAS;IA4BvB,OAAO,CAAC,UAAU;YAmBJ,WAAW;IA6BzB,OAAO,CAAC,WAAW;IAsBnB,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,MAAM;IAiHd,OAAO,CAAC,QAAQ;IAehB,OAAO,CAAC,QAAQ,CAKd;IAEF,OAAO,CAAC,cAAc;IA6DtB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,gBAAgB;IAgExB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,gBAAgB;IA4HxB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,uBAAuB;IAuE/B,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,YAAY,CAAuB;IAE3C,OAAO,CAAC,SAAS;IAoCjB,OAAO,CAAC,WAAW;IAgEnB,OAAO,CAAC,eAAe;IAqCvB,OAAO,CAAC,cAAc;IA+BtB,OAAO,CAAC,gBAAgB;IAoDxB,OAAO,CAAC,oBAAoB;CAkD7B;AAOD,OAAO,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
export type BridgeUser = {
|
|
2
|
+
uid: string;
|
|
3
|
+
nickname: string;
|
|
4
|
+
avatarUrl?: string;
|
|
5
|
+
};
|
|
6
|
+
export type BridgePaymentRequest = {
|
|
7
|
+
orderId: string;
|
|
8
|
+
hostOrderId: string;
|
|
9
|
+
amount: number;
|
|
10
|
+
currency: string;
|
|
11
|
+
productId?: string;
|
|
12
|
+
};
|
|
13
|
+
export type BridgePaymentResult = {
|
|
14
|
+
status: 'success';
|
|
15
|
+
balance: number;
|
|
16
|
+
} | {
|
|
17
|
+
status: 'cancelled';
|
|
18
|
+
balance: number;
|
|
19
|
+
} | {
|
|
20
|
+
status: 'insufficient';
|
|
21
|
+
balance: number;
|
|
22
|
+
};
|
|
23
|
+
type BridgeError = {
|
|
24
|
+
code: string;
|
|
25
|
+
message?: string;
|
|
26
|
+
};
|
|
27
|
+
type PrivyBridgeOptions = {
|
|
28
|
+
getIframe: () => HTMLIFrameElement | null;
|
|
29
|
+
getGameUrl: () => string;
|
|
30
|
+
getBalance: () => number;
|
|
31
|
+
getUser: () => BridgeUser | null;
|
|
32
|
+
getLocale: () => string;
|
|
33
|
+
requestPayment: (request: BridgePaymentRequest) => Promise<BridgePaymentResult>;
|
|
34
|
+
};
|
|
35
|
+
export declare class PrivyBridge {
|
|
36
|
+
private options;
|
|
37
|
+
private orders;
|
|
38
|
+
private pendingPayment;
|
|
39
|
+
private attached;
|
|
40
|
+
constructor(options: PrivyBridgeOptions);
|
|
41
|
+
attach(): void;
|
|
42
|
+
detach(): void;
|
|
43
|
+
cancelPendingPayment(error?: BridgeError): void;
|
|
44
|
+
private handleMessage;
|
|
45
|
+
private isValidRequest;
|
|
46
|
+
private getGameOrigin;
|
|
47
|
+
private postToGame;
|
|
48
|
+
private sendResponse;
|
|
49
|
+
private sendError;
|
|
50
|
+
private handleHandshake;
|
|
51
|
+
private handleGetUser;
|
|
52
|
+
private handleCreateOrder;
|
|
53
|
+
private handlePaymentRequest;
|
|
54
|
+
private handlePaymentQuery;
|
|
55
|
+
private updateOrderStatus;
|
|
56
|
+
}
|
|
57
|
+
export {};
|
|
58
|
+
//# sourceMappingURL=PrivyBridge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PrivyBridge.d.ts","sourceRoot":"","sources":["../../src/web-components/PrivyBridge.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAC3B;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,MAAM,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhD,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AA2BF,KAAK,kBAAkB,GAAG;IACxB,SAAS,EAAE,MAAM,iBAAiB,GAAG,IAAI,CAAC;IAC1C,UAAU,EAAE,MAAM,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,UAAU,GAAG,IAAI,CAAC;IACjC,SAAS,EAAE,MAAM,MAAM,CAAC;IACxB,cAAc,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACjF,CAAC;AAeF,qBAAa,WAAW;IACtB,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,QAAQ,CAAS;gBAEb,OAAO,EAAE,kBAAkB;IAKvC,MAAM;IAMN,MAAM;IAON,oBAAoB,CAAC,KAAK,GAAE,WAAsE;IAQlG,OAAO,CAAC,aAAa;IA+BrB,OAAO,CAAC,cAAc;IActB,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,iBAAiB;YAkCX,oBAAoB;IAgElC,OAAO,CAAC,kBAAkB;IA2B1B,OAAO,CAAC,iBAAiB;CAK1B"}
|