@descope/user-profile-widget 0.0.4 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/index.d.ts +62 -62
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/package.json +8 -8
package/dist/esm/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
/**
|
|
3
|
-
* @descope/user-profile-widget v0.0.
|
|
3
|
+
* @descope/user-profile-widget v0.0.6
|
|
4
4
|
*/
|
|
5
|
-
import{createSingletonMixin as t,compose as e,createTemplate as i,kebabCase as s,withMemCache as o}from"@descope/sdk-helpers";import{__awaiter as r,__classPrivateFieldGet as n,__classPrivateFieldSet as a}from"tslib";import{projectIdMixin as d,observeAttributesMixin as l,loggerMixin as h,createValidateAttributesMixin as c,createStateManagementMixin as u,initLifecycleMixin as f,staticResourcesMixin as g,descopeUiMixin as p,initElementMixin as v,modalMixin as m,debuggerMixin as w,themeMixin as b}from"@descope/sdk-mixins";import{FlowDriver as y,AvatarDriver as R,UserAttributeDriver as W,UserAuthMethodDriver as k,ButtonDriver as M}from"@descope/sdk-component-drivers";import{createSelector as U}from"reselect";import{createAsyncThunk as j}from"@reduxjs/toolkit";import I from"@descope/web-js-sdk";import"@descope/core-js-sdk";import"@descope/web-component";const S=t=>t.me.data,A=U(S,(t=>t.picture)),C=U(S,(t=>t.email)),x=U(S,(t=>t.verifiedEmail)),q=U(S,(t=>t.name)),O=U(S,(t=>t.phone)),E=U(S,(t=>t.verifiedPhone)),P=U(S,(t=>t.webauthn));U(S,(t=>t.password));const F=t=>(...e)=>i=>{i.addCase(t.pending,((t,i)=>{e.forEach((({onPending:e})=>{null==e||e(t,i)}))})),i.addCase(t.fulfilled,((t,i)=>{e.forEach((({onFulfilled:e})=>{null==e||e(t,i)}))})),i.addCase(t.rejected,((t,i)=>{e.forEach((({onRejected:e})=>{null==e||e(t,i)}))}))},D=j("users/me",((t,{extra:{api:e}})=>e.user.me())),T=F(D)({onFulfilled:(t,e)=>{t.me.data=e.payload}},(N=t=>t.me,{onFulfilled:t=>{N(t).loading=!1},onPending:t=>{N(t).loading=!0,N(t).error=null},onRejected:(t,e)=>{N(t).loading=!1,N(t).error=e.error}}));var N;const $={action:D,reducer:T},L=j("users/logout",((t,{extra:{api:e}})=>e.user.logout())),H={action:L,reducer:F(L)({onFulfilled:t=>{t.me.data={}}})},B={me:{loading:!1,error:null,data:{}}},K={me:"/v1/auth/me"},J=()=>r(void 0,void 0,void 0,(function*(){return new Promise((t=>{t({loginIds:["user@company.com"],externalIds:["user@company.com"],userId:"user-1",name:"Test User",email:"user@company.com",roleNames:["Role"],phone:"+1-202-555-010",verifiedEmail:!0,verifiedPhone:!0,userTenants:[],status:"enabled",editable:!0,createdTime:(new Date).getTime(),customAttributes:{},familyName:"",givenName:"",middleName:"",picture:"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSzmudcbKkbOue75DaM9HDDrt0W39SJLBH-3HPK3s-K1w&s",password:!0,SAML:!1,test:!1,TOTP:!1,webauthn:!0})}))})),V=({httpClient:t,mock:e})=>({me:()=>r(void 0,void 0,void 0,(function*(){if(e)return J();const i=yield t.get(K.me);return yield(t=>r(void 0,void 0,void 0,(function*(){const e=yield t.text(),i=JSON.parse(e);if(!t.ok){const e=`${i.errorDescription}${i.errorMessage?`: ${i.errorMessage}`:""}`;throw Error(e||`${t.status} ${t.statusText}`)}t.json=()=>Promise.resolve(i),t.text=()=>Promise.resolve(e)})))(i),i.json()}))}),z=t((t=>{var i,s,o,u;const f=e(d,l,h,c({tenant:c.missingAttrValidator}))(t);return u=class extends f{constructor(){super(...arguments),i.add(this),s.set(this,void 0)}get baseUrl(){return this.getAttribute("base-url")}get tenant(){return this.getAttribute("tenant")}get mock(){return this.getAttribute("mock")}get api(){return n(this,s,"f")||n(this,i,"m",o).call(this),n(this,s,"f")}init(){const t=Object.create(null,{init:{get:()=>super.init}});var e;return r(this,void 0,void 0,(function*(){yield null===(e=t.init)||void 0===e?void 0:e.call(this),this.observeAttributes(["project-id","base-url","tenant"],(()=>{n(this,s,"f")&&n(this,i,"m",o).call(this)}))}))}},s=new WeakMap,i=new WeakSet,o=function(){this.logger.debug("creating an sdk instance"),a(this,s,((t,e,i)=>{const s=I(Object.assign(Object.assign({},t),{persistTokens:!0}));return{user:Object.assign(Object.assign({},V({httpClient:s.httpClient,tenant:e,mock:i})),{logout:s.logout})}})({projectId:this.projectId,baseUrl:this.baseUrl},this.tenant,"true"===this.mock),"f")},u})),G=t((t=>{const i=e(u({name:"widget",initialState:B,reducers:{},extraReducers:t=>{$.reducer(t),H.reducer(t)},asyncActions:{getMe:$.action,logout:H.action}}),f,h,z)(t);return class extends i{constructor(...t){super(...t),this.state=B,this.subscribe((t=>{this.logger.debug("State update:",t),this.state=t}))}}})),Q=t((t=>{const i=e(g,c({"widget-id":c.missingAttrValidator}))(t);return class extends i{get widgetId(){return this.getAttribute("widget-id")}fetchWidgetPage(t){return r(this,void 0,void 0,(function*(){return(yield this.fetchStaticResource(`user-profile-widget/${this.widgetId}/${t}`,"text")).body}))}}})),X=t((t=>{var s,o,a;return a=class extends(e(h,f,p,v,Q,G)(t)){constructor(){super(...arguments),s.add(this)}onWidgetRootReady(){return r(this,void 0,void 0,(function*(){}))}init(){const t=Object.create(null,{init:{get:()=>super.init}});var e;return r(this,void 0,void 0,(function*(){yield null===(e=t.init)||void 0===e?void 0:e.call(this),yield Promise.all([this.actions.getMe(),n(this,s,"m",o).call(this)]),this.onWidgetRootReady()}))}},s=new WeakSet,o=function(){return r(this,void 0,void 0,(function*(){const t=i(yield this.fetchWidgetPage("root.html"));yield this.loadDescopeUiComponents(t),this.contentRootElement.append(t.content.cloneNode(!0))}))},a})),Y=(t={})=>{const e=i("<descope-wc></descope-wc>");return Object.entries(t).forEach((([t,i])=>{e.content.querySelector("descope-wc").setAttribute(s(t),i)})),e},Z=t((t=>{var i,s,d,l,c,u,f,g,p;return p=class extends(e(G,h,X,m)(t)){constructor(){super(...arguments),i.add(this),s.set(this,void 0),d.set(this,void 0),f.set(this,o((t=>{this.avatar.image=t}))),g.set(this,o((t=>{this.avatar.displayName=t})))}onWidgetRootReady(){const t=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});var e;return r(this,void 0,void 0,(function*(){yield null===(e=t.onWidgetRootReady)||void 0===e?void 0:e.call(this),n(this,i,"m",u).call(this),n(this,i,"m",l).call(this),n(this,f,"f").call(this,A(this.state)),n(this,g,"f").call(this,q(this.state)),this.subscribe(n(this,f,"f").bind(this),A),this.subscribe(n(this,g,"f").bind(this),q)}))}},s=new WeakMap,d=new WeakMap,f=new WeakMap,g=new WeakMap,i=new WeakSet,l=function(){a(this,s,this.createModal({"data-id":"update-pic"}),"f"),a(this,d,new y((()=>{var t;return null===(t=n(this,s,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),n(this,s,"f").afterClose=n(this,i,"m",c).bind(this),n(this,i,"m",c).call(this)},c=function(){n(this,s,"f").setContent(Y({projectId:this.projectId,flowId:this.avatar.flowId,baseUrl:this.baseUrl})),n(this,d,"f").onSuccess((()=>{n(this,s,"f").close(),this.actions.getMe()}))},u=function(){this.avatar=new R((()=>{var t;return null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector("descope-avatar")}),{logger:this.logger}),this.avatar.onClick((()=>{n(this,s,"f").open()}))},p})),_=t((t=>{var i,s,d,l,c,u,f,g,p,v,w,b,R;return R=class extends(e(G,h,X,m)(t)){constructor(){super(...arguments),i.add(this),s.set(this,void 0),d.set(this,void 0),l.set(this,void 0),c.set(this,void 0),w.set(this,o((t=>{this.emailUserAttr.value=t}))),b.set(this,o((t=>{this.emailUserAttr.badgeLabel=t?"":"Unverified"})))}onWidgetRootReady(){const t=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});var e;return r(this,void 0,void 0,(function*(){yield null===(e=t.onWidgetRootReady)||void 0===e?void 0:e.call(this),n(this,i,"m",v).call(this),n(this,i,"m",u).call(this),n(this,i,"m",g).call(this),n(this,w,"f").call(this,C(this.state)),n(this,b,"f").call(this,x(this.state)),this.subscribe(n(this,w,"f").bind(this),C),this.subscribe(n(this,b,"f").bind(this),x)}))}},s=new WeakMap,d=new WeakMap,l=new WeakMap,c=new WeakMap,w=new WeakMap,b=new WeakMap,i=new WeakSet,u=function(){a(this,s,this.createModal({"data-id":"edit-email"}),"f"),a(this,d,new y((()=>{var t;return null===(t=n(this,s,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),n(this,s,"f").afterClose=n(this,i,"m",f).bind(this),n(this,i,"m",f).call(this)},f=function(){n(this,s,"f").setContent(Y({projectId:this.projectId,flowId:this.emailUserAttr.editFlowId,baseUrl:this.baseUrl})),n(this,d,"f").onSuccess((()=>{n(this,s,"f").close(),this.actions.getMe()}))},g=function(){a(this,l,this.createModal({"data-id":"delete-email"}),"f"),a(this,c,new y((()=>{var t;return null===(t=n(this,l,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),n(this,l,"f").afterClose=n(this,i,"m",p).bind(this),n(this,i,"m",p).call(this)},p=function(){n(this,l,"f").setContent(Y({projectId:this.projectId,flowId:this.emailUserAttr.deleteFlowId,baseUrl:this.baseUrl})),n(this,c,"f").onSuccess((()=>{n(this,l,"f").close(),this.actions.getMe()}))},v=function(){this.emailUserAttr=new W((()=>{var t;return null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector('descope-user-attribute[data-id="email"]')}),{logger:this.logger}),this.emailUserAttr.onEditClick((()=>{n(this,s,"f").open()})),this.emailUserAttr.onDeleteClick((()=>{n(this,l,"f").open()}))},R})),tt=t((t=>{var i,s,d,l,c,u,f,g,p,v,w,b;return b=class extends(e(G,h,X,m)(t)){constructor(){super(...arguments),i.add(this),s.set(this,void 0),d.set(this,void 0),l.set(this,void 0),c.set(this,void 0),w.set(this,o((t=>{this.nameUserAttr.value=t})))}onWidgetRootReady(){const t=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});var e;return r(this,void 0,void 0,(function*(){yield null===(e=t.onWidgetRootReady)||void 0===e?void 0:e.call(this),n(this,i,"m",v).call(this),n(this,i,"m",u).call(this),n(this,i,"m",g).call(this),n(this,w,"f").call(this,q(this.state)),this.subscribe(n(this,w,"f").bind(this),q)}))}},s=new WeakMap,d=new WeakMap,l=new WeakMap,c=new WeakMap,w=new WeakMap,i=new WeakSet,u=function(){a(this,s,this.createModal({"data-id":"edit-name"}),"f"),a(this,d,new y((()=>{var t;return null===(t=n(this,s,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),n(this,s,"f").afterClose=n(this,i,"m",f).bind(this),n(this,i,"m",f).call(this)},f=function(){n(this,s,"f").setContent(Y({projectId:this.projectId,flowId:this.nameUserAttr.editFlowId,baseUrl:this.baseUrl})),n(this,d,"f").onSuccess((()=>{n(this,s,"f").close(),this.actions.getMe()}))},g=function(){a(this,l,this.createModal({"data-id":"delete-name"}),"f"),a(this,c,new y((()=>{var t;return null===(t=n(this,l,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),n(this,l,"f").afterClose=n(this,i,"m",p).bind(this),n(this,i,"m",p).call(this)},p=function(){n(this,l,"f").setContent(Y({projectId:this.projectId,flowId:this.nameUserAttr.deleteFlowId,baseUrl:this.baseUrl})),n(this,c,"f").onSuccess((()=>{n(this,l,"f").close(),this.actions.getMe()}))},v=function(){this.nameUserAttr=new W((()=>{var t;return null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector('descope-user-attribute[data-id="name"]')}),{logger:this.logger}),this.nameUserAttr.onEditClick((()=>{n(this,s,"f").open()})),this.nameUserAttr.onDeleteClick((()=>{n(this,l,"f").open()}))},b})),et=t((t=>{var i,s,d,l,c,u,f,g,p,v,w,b,R;return R=class extends(e(G,h,X,m)(t)){constructor(){super(...arguments),i.add(this),s.set(this,void 0),d.set(this,void 0),l.set(this,void 0),c.set(this,void 0),w.set(this,o((t=>{this.phoneUserAttr.value=t}))),b.set(this,o((t=>{this.phoneUserAttr.badgeLabel=t?"":"Unverified"})))}onWidgetRootReady(){const t=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});var e;return r(this,void 0,void 0,(function*(){yield null===(e=t.onWidgetRootReady)||void 0===e?void 0:e.call(this),n(this,i,"m",v).call(this),n(this,i,"m",u).call(this),n(this,i,"m",g).call(this),n(this,w,"f").call(this,O(this.state)),n(this,b,"f").call(this,E(this.state)),this.subscribe(n(this,w,"f").bind(this),O),this.subscribe(n(this,b,"f").bind(this),E)}))}},s=new WeakMap,d=new WeakMap,l=new WeakMap,c=new WeakMap,w=new WeakMap,b=new WeakMap,i=new WeakSet,u=function(){a(this,s,this.createModal({"data-id":"edit-phone"}),"f"),a(this,d,new y((()=>{var t;return null===(t=n(this,s,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),n(this,s,"f").afterClose=n(this,i,"m",f).bind(this),n(this,i,"m",f).call(this)},f=function(){n(this,s,"f").setContent(Y({projectId:this.projectId,flowId:this.phoneUserAttr.editFlowId,baseUrl:this.baseUrl})),n(this,d,"f").onSuccess((()=>{n(this,s,"f").close(),this.actions.getMe()}))},g=function(){a(this,l,this.createModal({"data-id":"delete-phone"}),"f"),a(this,c,new y((()=>{var t;return null===(t=n(this,l,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),n(this,l,"f").afterClose=n(this,i,"m",p).bind(this),n(this,i,"m",p).call(this)},p=function(){n(this,l,"f").setContent(Y({projectId:this.projectId,flowId:this.phoneUserAttr.deleteFlowId,baseUrl:this.baseUrl})),n(this,c,"f").onSuccess((()=>{n(this,l,"f").close(),this.actions.getMe()}))},v=function(){this.phoneUserAttr=new W((()=>{var t;return null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector('descope-user-attribute[data-id="phone"]')}),{logger:this.logger}),this.phoneUserAttr.onEditClick((()=>{n(this,s,"f").open()})),this.phoneUserAttr.onDeleteClick((()=>{n(this,l,"f").open()}))},R})),it=t((t=>{var i,s,d,l,c,u,f,g;return g=class extends(e(G,h,X,m)(t)){constructor(){super(...arguments),i.add(this),s.set(this,void 0),d.set(this,void 0),f.set(this,o((t=>{this.passkeyUserAuthMethod.fulfilled=t})))}onWidgetRootReady(){const t=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});var e;return r(this,void 0,void 0,(function*(){yield null===(e=t.onWidgetRootReady)||void 0===e?void 0:e.call(this),n(this,i,"m",u).call(this),n(this,i,"m",l).call(this),n(this,f,"f").call(this,P(this.state)),this.subscribe(n(this,f,"f").bind(this),P)}))}},s=new WeakMap,d=new WeakMap,f=new WeakMap,i=new WeakSet,l=function(){a(this,s,this.createModal({"data-id":"passkey"}),"f"),a(this,d,new y((()=>{var t;return null===(t=n(this,s,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),n(this,s,"f").afterClose=n(this,i,"m",c).bind(this),n(this,i,"m",c).call(this)},c=function(){n(this,s,"f").setContent(Y({projectId:this.projectId,flowId:this.passkeyUserAuthMethod.flowId,baseUrl:this.baseUrl})),n(this,d,"f").onSuccess((()=>{n(this,s,"f").close(),this.actions.getMe()}))},u=function(){this.passkeyUserAuthMethod=new k((()=>{var t;return null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector('descope-user-auth-method[data-id="passkey"]')}),{logger:this.logger}),this.passkeyUserAuthMethod.onButtonClick((()=>{n(this,s,"f").open()}))},g})),st=t((t=>{var i,s,o,d,l,c,u;return u=class extends(e(G,h,X,m)(t)){constructor(){super(...arguments),i.add(this),s.set(this,void 0),o.set(this,void 0)}onWidgetRootReady(){const t=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});var e;return r(this,void 0,void 0,(function*(){yield null===(e=t.onWidgetRootReady)||void 0===e?void 0:e.call(this),n(this,i,"m",c).call(this),n(this,i,"m",d).call(this)}))}},s=new WeakMap,o=new WeakMap,i=new WeakSet,d=function(){a(this,s,this.createModal({"data-id":"password"}),"f"),a(this,o,new y((()=>{var t;return null===(t=n(this,s,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),n(this,s,"f").afterClose=n(this,i,"m",l).bind(this),n(this,i,"m",l).call(this)},l=function(){n(this,s,"f").setContent(Y({projectId:this.projectId,flowId:this.passwordUserAuthMethod.flowId,baseUrl:this.baseUrl})),n(this,o,"f").onSuccess((()=>{n(this,s,"f").close()}))},c=function(){this.passwordUserAuthMethod=new k((()=>{var t;return null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector('descope-user-auth-method[data-id="password"]')}),{logger:this.logger}),this.passwordUserAuthMethod.onButtonClick((()=>{n(this,s,"f").open()}))},u})),ot=t((t=>{var i,s,o;return o=class extends(e(G,h,X,m)(t)){constructor(){super(...arguments),i.add(this)}onWidgetRootReady(){const t=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});var e;return r(this,void 0,void 0,(function*(){yield null===(e=t.onWidgetRootReady)||void 0===e?void 0:e.call(this),n(this,i,"m",s).call(this)}))}},i=new WeakSet,s=function(){this.logout=new M((()=>{var t;return null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector('descope-button[data-id="logout"]')}),{logger:this.logger}),this.logout.onClick((()=>r(this,void 0,void 0,(function*(){yield this.actions.logout(),this.dispatchEvent(new CustomEvent("logout"))}))))},o})),rt=t((t=>class extends(e(w,b,Z,_,tt,et,it,st,ot)(t)){init(){const t=Object.create(null,{init:{get:()=>super.init}});var e;return r(this,void 0,void 0,(function*(){yield null===(e=t.init)||void 0===e?void 0:e.call(this)}))}})),nt=e((t=>class extends(rt(t)){}))(HTMLElement);customElements.define("descope-user-profile-widget",nt);export{nt as default};
|
|
5
|
+
import{createSingletonMixin as t,compose as e,createTemplate as i,kebabCase as s,withMemCache as o}from"@descope/sdk-helpers";import{__awaiter as n,__classPrivateFieldGet as r,__classPrivateFieldSet as a}from"tslib";import{projectIdMixin as d,observeAttributesMixin as l,loggerMixin as h,createValidateAttributesMixin as c,createStateManagementMixin as u,initLifecycleMixin as f,staticResourcesMixin as g,descopeUiMixin as p,initElementMixin as v,modalMixin as m,debuggerMixin as w,themeMixin as b}from"@descope/sdk-mixins";import{FlowDriver as y,AvatarDriver as R,UserAttributeDriver as W,UserAuthMethodDriver as k,ButtonDriver as M}from"@descope/sdk-component-drivers";import{createSelector as U}from"reselect";import{createAsyncThunk as j}from"@reduxjs/toolkit";import I from"@descope/web-js-sdk";import"@descope/core-js-sdk";import"@descope/web-component";const S=t=>t.me.data,A=U(S,(t=>t.picture)),C=U(S,(t=>t.email)),x=U(S,(t=>t.verifiedEmail)),q=U(S,(t=>t.name)),O=U(S,(t=>t.phone)),E=U(S,(t=>t.verifiedPhone)),P=U(S,(t=>t.webauthn));U(S,(t=>t.password));const D=t=>(...e)=>i=>{i.addCase(t.pending,((t,i)=>{e.forEach((({onPending:e})=>{null==e||e(t,i)}))})),i.addCase(t.fulfilled,((t,i)=>{e.forEach((({onFulfilled:e})=>{null==e||e(t,i)}))})),i.addCase(t.rejected,((t,i)=>{e.forEach((({onRejected:e})=>{null==e||e(t,i)}))}))},F=j("users/me",((t,{extra:{api:e}})=>e.user.me())),T=D(F)({onFulfilled:(t,e)=>{t.me.data=e.payload}},(N=t=>t.me,{onFulfilled:t=>{N(t).loading=!1},onPending:t=>{N(t).loading=!0,N(t).error=null},onRejected:(t,e)=>{N(t).loading=!1,N(t).error=e.error}}));var N;const $={action:F,reducer:T},L=j("users/logout",((t,{extra:{api:e}})=>e.user.logout())),H={action:L,reducer:D(L)({})},B={me:{loading:!1,error:null,data:{}}},K={me:"/v1/auth/me"},J=()=>n(void 0,void 0,void 0,(function*(){return new Promise((t=>{t({loginIds:["user@company.com"],externalIds:["user@company.com"],userId:"user-1",name:"Test User",email:"user@company.com",roleNames:["Role"],phone:"+1-202-555-010",verifiedEmail:!0,verifiedPhone:!0,userTenants:[],status:"enabled",editable:!0,createdTime:(new Date).getTime(),customAttributes:{},familyName:"",givenName:"",middleName:"",picture:"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSzmudcbKkbOue75DaM9HDDrt0W39SJLBH-3HPK3s-K1w&s",password:!0,SAML:!1,test:!1,TOTP:!1,webauthn:!0})}))})),V=({httpClient:t,mock:e})=>({me:()=>n(void 0,void 0,void 0,(function*(){if(e)return J();const i=yield t.get(K.me);return yield(t=>n(void 0,void 0,void 0,(function*(){const e=yield t.text(),i=JSON.parse(e);if(!t.ok){const e=`${i.errorDescription}${i.errorMessage?`: ${i.errorMessage}`:""}`;throw Error(e||`${t.status} ${t.statusText}`)}t.json=()=>Promise.resolve(i),t.text=()=>Promise.resolve(e)})))(i),i.json()}))}),z=t((t=>{var i,s,o,u;const f=e(d,l,h,c({tenant:c.missingAttrValidator}))(t);return u=class extends f{constructor(){super(...arguments),i.add(this),s.set(this,void 0)}get baseUrl(){return this.getAttribute("base-url")}get tenant(){return this.getAttribute("tenant")}get mock(){return this.getAttribute("mock")}get api(){return r(this,s,"f")||r(this,i,"m",o).call(this),r(this,s,"f")}init(){const t=Object.create(null,{init:{get:()=>super.init}});var e;return n(this,void 0,void 0,(function*(){yield null===(e=t.init)||void 0===e?void 0:e.call(this),this.observeAttributes(["project-id","base-url","tenant"],(()=>{r(this,s,"f")&&r(this,i,"m",o).call(this)}))}))}},s=new WeakMap,i=new WeakSet,o=function(){this.logger.debug("creating an sdk instance"),a(this,s,((t,e,i)=>{const s=I(Object.assign(Object.assign({},t),{persistTokens:!0}));return{user:Object.assign(Object.assign({},V({httpClient:s.httpClient,tenant:e,mock:i})),{logout:i?()=>n(void 0,void 0,void 0,(function*(){})):s.logout})}})({projectId:this.projectId,baseUrl:this.baseUrl},this.tenant,"true"===this.mock),"f")},u})),G=t((t=>{const i=e(u({name:"widget",initialState:B,reducers:{},extraReducers:t=>{$.reducer(t),H.reducer(t)},asyncActions:{getMe:$.action,logout:H.action}}),f,h,z)(t);return class extends i{constructor(...t){super(...t),this.state=B,this.subscribe((t=>{this.logger.debug("State update:",t),this.state=t}))}}})),Q=t((t=>{const i=e(g,c({"widget-id":c.missingAttrValidator}))(t);return class extends i{get widgetId(){return this.getAttribute("widget-id")}fetchWidgetPage(t){return n(this,void 0,void 0,(function*(){return(yield this.fetchStaticResource(`user-profile-widget/${this.widgetId}/${t}`,"text")).body}))}}})),X=t((t=>{var s,o,a;return a=class extends(e(h,f,p,v,Q,G)(t)){constructor(){super(...arguments),s.add(this)}onWidgetRootReady(){return n(this,void 0,void 0,(function*(){}))}init(){const t=Object.create(null,{init:{get:()=>super.init}});var e;return n(this,void 0,void 0,(function*(){yield null===(e=t.init)||void 0===e?void 0:e.call(this),yield Promise.all([this.actions.getMe(),r(this,s,"m",o).call(this)]),this.onWidgetRootReady()}))}},s=new WeakSet,o=function(){return n(this,void 0,void 0,(function*(){const t=i(yield this.fetchWidgetPage("root.html"));yield this.loadDescopeUiComponents(t),this.contentRootElement.append(t.content.cloneNode(!0))}))},a})),Y=(t={})=>{const e=i("<descope-wc></descope-wc>");return Object.entries(t).forEach((([t,i])=>{e.content.querySelector("descope-wc").setAttribute(s(t),i)})),e},Z=t((t=>{var i,s,d,l,c,u,f,g,p;return p=class extends(e(G,h,X,m)(t)){constructor(){super(...arguments),i.add(this),s.set(this,void 0),d.set(this,void 0),f.set(this,o((t=>{this.avatar.image=t}))),g.set(this,o((t=>{this.avatar.displayName=t})))}onWidgetRootReady(){const t=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});var e;return n(this,void 0,void 0,(function*(){yield null===(e=t.onWidgetRootReady)||void 0===e?void 0:e.call(this),r(this,i,"m",u).call(this),r(this,i,"m",l).call(this),r(this,f,"f").call(this,A(this.state)),r(this,g,"f").call(this,q(this.state)),this.subscribe(r(this,f,"f").bind(this),A),this.subscribe(r(this,g,"f").bind(this),q)}))}},s=new WeakMap,d=new WeakMap,f=new WeakMap,g=new WeakMap,i=new WeakSet,l=function(){a(this,s,this.createModal({"data-id":"update-pic"}),"f"),a(this,d,new y((()=>{var t;return null===(t=r(this,s,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),r(this,s,"f").afterClose=r(this,i,"m",c).bind(this),r(this,i,"m",c).call(this)},c=function(){r(this,s,"f").setContent(Y({projectId:this.projectId,flowId:this.avatar.flowId,baseUrl:this.baseUrl})),r(this,d,"f").onSuccess((()=>{r(this,s,"f").close(),this.actions.getMe()}))},u=function(){this.avatar=new R((()=>{var t;return null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector("descope-avatar")}),{logger:this.logger}),this.avatar.onClick((()=>{r(this,s,"f").open()}))},p})),_=t((t=>{var i,s,d,l,c,u,f,g,p,v,w,b,R;return R=class extends(e(G,h,X,m)(t)){constructor(){super(...arguments),i.add(this),s.set(this,void 0),d.set(this,void 0),l.set(this,void 0),c.set(this,void 0),w.set(this,o((t=>{this.emailUserAttr.value=t}))),b.set(this,o((t=>{this.emailUserAttr.badgeLabel=t?"":"Unverified"})))}onWidgetRootReady(){const t=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});var e;return n(this,void 0,void 0,(function*(){yield null===(e=t.onWidgetRootReady)||void 0===e?void 0:e.call(this),r(this,i,"m",v).call(this),r(this,i,"m",u).call(this),r(this,i,"m",g).call(this),r(this,w,"f").call(this,C(this.state)),r(this,b,"f").call(this,x(this.state)),this.subscribe(r(this,w,"f").bind(this),C),this.subscribe(r(this,b,"f").bind(this),x)}))}},s=new WeakMap,d=new WeakMap,l=new WeakMap,c=new WeakMap,w=new WeakMap,b=new WeakMap,i=new WeakSet,u=function(){a(this,s,this.createModal({"data-id":"edit-email"}),"f"),a(this,d,new y((()=>{var t;return null===(t=r(this,s,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),r(this,s,"f").afterClose=r(this,i,"m",f).bind(this),r(this,i,"m",f).call(this)},f=function(){r(this,s,"f").setContent(Y({projectId:this.projectId,flowId:this.emailUserAttr.editFlowId,baseUrl:this.baseUrl})),r(this,d,"f").onSuccess((()=>{r(this,s,"f").close(),this.actions.getMe()}))},g=function(){a(this,l,this.createModal({"data-id":"delete-email"}),"f"),a(this,c,new y((()=>{var t;return null===(t=r(this,l,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),r(this,l,"f").afterClose=r(this,i,"m",p).bind(this),r(this,i,"m",p).call(this)},p=function(){r(this,l,"f").setContent(Y({projectId:this.projectId,flowId:this.emailUserAttr.deleteFlowId,baseUrl:this.baseUrl})),r(this,c,"f").onSuccess((()=>{r(this,l,"f").close(),this.actions.getMe()}))},v=function(){this.emailUserAttr=new W((()=>{var t;return null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector('descope-user-attribute[data-id="email"]')}),{logger:this.logger}),this.emailUserAttr.onEditClick((()=>{r(this,s,"f").open()})),this.emailUserAttr.onDeleteClick((()=>{r(this,l,"f").open()}))},R})),tt=t((t=>{var i,s,d,l,c,u,f,g,p,v,w,b;return b=class extends(e(G,h,X,m)(t)){constructor(){super(...arguments),i.add(this),s.set(this,void 0),d.set(this,void 0),l.set(this,void 0),c.set(this,void 0),w.set(this,o((t=>{this.nameUserAttr.value=t})))}onWidgetRootReady(){const t=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});var e;return n(this,void 0,void 0,(function*(){yield null===(e=t.onWidgetRootReady)||void 0===e?void 0:e.call(this),r(this,i,"m",v).call(this),r(this,i,"m",u).call(this),r(this,i,"m",g).call(this),r(this,w,"f").call(this,q(this.state)),this.subscribe(r(this,w,"f").bind(this),q)}))}},s=new WeakMap,d=new WeakMap,l=new WeakMap,c=new WeakMap,w=new WeakMap,i=new WeakSet,u=function(){a(this,s,this.createModal({"data-id":"edit-name"}),"f"),a(this,d,new y((()=>{var t;return null===(t=r(this,s,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),r(this,s,"f").afterClose=r(this,i,"m",f).bind(this),r(this,i,"m",f).call(this)},f=function(){r(this,s,"f").setContent(Y({projectId:this.projectId,flowId:this.nameUserAttr.editFlowId,baseUrl:this.baseUrl})),r(this,d,"f").onSuccess((()=>{r(this,s,"f").close(),this.actions.getMe()}))},g=function(){a(this,l,this.createModal({"data-id":"delete-name"}),"f"),a(this,c,new y((()=>{var t;return null===(t=r(this,l,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),r(this,l,"f").afterClose=r(this,i,"m",p).bind(this),r(this,i,"m",p).call(this)},p=function(){r(this,l,"f").setContent(Y({projectId:this.projectId,flowId:this.nameUserAttr.deleteFlowId,baseUrl:this.baseUrl})),r(this,c,"f").onSuccess((()=>{r(this,l,"f").close(),this.actions.getMe()}))},v=function(){this.nameUserAttr=new W((()=>{var t;return null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector('descope-user-attribute[data-id="name"]')}),{logger:this.logger}),this.nameUserAttr.onEditClick((()=>{r(this,s,"f").open()})),this.nameUserAttr.onDeleteClick((()=>{r(this,l,"f").open()}))},b})),et=t((t=>{var i,s,d,l,c,u,f,g,p,v,w,b,R;return R=class extends(e(G,h,X,m)(t)){constructor(){super(...arguments),i.add(this),s.set(this,void 0),d.set(this,void 0),l.set(this,void 0),c.set(this,void 0),w.set(this,o((t=>{this.phoneUserAttr.value=t}))),b.set(this,o((t=>{this.phoneUserAttr.badgeLabel=t?"":"Unverified"})))}onWidgetRootReady(){const t=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});var e;return n(this,void 0,void 0,(function*(){yield null===(e=t.onWidgetRootReady)||void 0===e?void 0:e.call(this),r(this,i,"m",v).call(this),r(this,i,"m",u).call(this),r(this,i,"m",g).call(this),r(this,w,"f").call(this,O(this.state)),r(this,b,"f").call(this,E(this.state)),this.subscribe(r(this,w,"f").bind(this),O),this.subscribe(r(this,b,"f").bind(this),E)}))}},s=new WeakMap,d=new WeakMap,l=new WeakMap,c=new WeakMap,w=new WeakMap,b=new WeakMap,i=new WeakSet,u=function(){a(this,s,this.createModal({"data-id":"edit-phone"}),"f"),a(this,d,new y((()=>{var t;return null===(t=r(this,s,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),r(this,s,"f").afterClose=r(this,i,"m",f).bind(this),r(this,i,"m",f).call(this)},f=function(){r(this,s,"f").setContent(Y({projectId:this.projectId,flowId:this.phoneUserAttr.editFlowId,baseUrl:this.baseUrl})),r(this,d,"f").onSuccess((()=>{r(this,s,"f").close(),this.actions.getMe()}))},g=function(){a(this,l,this.createModal({"data-id":"delete-phone"}),"f"),a(this,c,new y((()=>{var t;return null===(t=r(this,l,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),r(this,l,"f").afterClose=r(this,i,"m",p).bind(this),r(this,i,"m",p).call(this)},p=function(){r(this,l,"f").setContent(Y({projectId:this.projectId,flowId:this.phoneUserAttr.deleteFlowId,baseUrl:this.baseUrl})),r(this,c,"f").onSuccess((()=>{r(this,l,"f").close(),this.actions.getMe()}))},v=function(){this.phoneUserAttr=new W((()=>{var t;return null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector('descope-user-attribute[data-id="phone"]')}),{logger:this.logger}),this.phoneUserAttr.onEditClick((()=>{r(this,s,"f").open()})),this.phoneUserAttr.onDeleteClick((()=>{r(this,l,"f").open()}))},R})),it=t((t=>{var i,s,d,l,c,u,f,g;return g=class extends(e(G,h,X,m)(t)){constructor(){super(...arguments),i.add(this),s.set(this,void 0),d.set(this,void 0),f.set(this,o((t=>{this.passkeyUserAuthMethod.fulfilled=t})))}onWidgetRootReady(){const t=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});var e;return n(this,void 0,void 0,(function*(){yield null===(e=t.onWidgetRootReady)||void 0===e?void 0:e.call(this),r(this,i,"m",u).call(this),r(this,i,"m",l).call(this),r(this,f,"f").call(this,P(this.state)),this.subscribe(r(this,f,"f").bind(this),P)}))}},s=new WeakMap,d=new WeakMap,f=new WeakMap,i=new WeakSet,l=function(){a(this,s,this.createModal({"data-id":"passkey"}),"f"),a(this,d,new y((()=>{var t;return null===(t=r(this,s,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),r(this,s,"f").afterClose=r(this,i,"m",c).bind(this),r(this,i,"m",c).call(this)},c=function(){r(this,s,"f").setContent(Y({projectId:this.projectId,flowId:this.passkeyUserAuthMethod.flowId,baseUrl:this.baseUrl})),r(this,d,"f").onSuccess((()=>{r(this,s,"f").close(),this.actions.getMe()}))},u=function(){this.passkeyUserAuthMethod=new k((()=>{var t;return null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector('descope-user-auth-method[data-id="passkey"]')}),{logger:this.logger}),this.passkeyUserAuthMethod.onButtonClick((()=>{r(this,s,"f").open()}))},g})),st=t((t=>{var i,s,o,d,l,c,u;return u=class extends(e(G,h,X,m)(t)){constructor(){super(...arguments),i.add(this),s.set(this,void 0),o.set(this,void 0)}onWidgetRootReady(){const t=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});var e;return n(this,void 0,void 0,(function*(){yield null===(e=t.onWidgetRootReady)||void 0===e?void 0:e.call(this),r(this,i,"m",c).call(this),r(this,i,"m",d).call(this)}))}},s=new WeakMap,o=new WeakMap,i=new WeakSet,d=function(){a(this,s,this.createModal({"data-id":"password"}),"f"),a(this,o,new y((()=>{var t;return null===(t=r(this,s,"f").ele)||void 0===t?void 0:t.querySelector("descope-wc")}),{logger:this.logger}),"f"),r(this,s,"f").afterClose=r(this,i,"m",l).bind(this),r(this,i,"m",l).call(this)},l=function(){r(this,s,"f").setContent(Y({projectId:this.projectId,flowId:this.passwordUserAuthMethod.flowId,baseUrl:this.baseUrl})),r(this,o,"f").onSuccess((()=>{r(this,s,"f").close()}))},c=function(){this.passwordUserAuthMethod=new k((()=>{var t;return null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector('descope-user-auth-method[data-id="password"]')}),{logger:this.logger}),this.passwordUserAuthMethod.onButtonClick((()=>{r(this,s,"f").open()}))},u})),ot=t((t=>{var i,s,o;return o=class extends(e(G,h,X,m)(t)){constructor(){super(...arguments),i.add(this)}onWidgetRootReady(){const t=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});var e;return n(this,void 0,void 0,(function*(){yield null===(e=t.onWidgetRootReady)||void 0===e?void 0:e.call(this),r(this,i,"m",s).call(this)}))}},i=new WeakSet,s=function(){this.logout=new M((()=>{var t;return null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector('descope-button[data-id="logout"]')}),{logger:this.logger}),this.logout.onClick((()=>n(this,void 0,void 0,(function*(){yield this.actions.logout(),this.dispatchEvent(new CustomEvent("logout"))}))))},o})),nt=t((t=>class extends(e(w,b,Z,_,tt,et,it,st,ot)(t)){init(){const t=Object.create(null,{init:{get:()=>super.init}});var e;return n(this,void 0,void 0,(function*(){yield null===(e=t.init)||void 0===e?void 0:e.call(this)}))}})),rt=e((t=>class extends(nt(t)){}))(HTMLElement);customElements.define("descope-user-profile-widget",rt);export{rt as default};
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/lib/widget/state/selectors.ts","../../src/lib/widget/state/asyncActions/helpers.ts","../../src/lib/widget/state/asyncActions/getMe.ts","../../src/lib/widget/state/asyncActions/logout.ts","../../src/lib/widget/state/initialState.ts","../../src/lib/widget/api/apiPaths.ts","../../src/lib/widget/api/sdk/mocks.ts","../../src/lib/widget/api/sdk/createUserSdk.ts","../../src/lib/widget/api/sdk/helpers.ts","../../src/lib/widget/mixins/apiMixin.ts","../../src/lib/widget/api/sdk/index.ts","../../src/lib/widget/mixins/stateManagementMixin.ts","../../src/lib/widget/mixins/fetchWidgetPagesMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initWidgetRootMixin.ts","../../src/lib/widget/mixins/helpers.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initAvatarMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initEmailUserAttrMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initNameUserAttrMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initPhoneUserAttrMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initPasskeyUserAuthMethodMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initPasswordUserAuthMethodMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initLogoutMixin.ts","../../src/lib/widget/mixins/initMixin/initMixin.ts","../../src/lib/widget/index.ts","../../src/lib/index.ts"],"sourcesContent":["import { createSelector } from 'reselect';\nimport { State } from './types';\n\nexport const getMe = (state: State) => state.me.data;\n\nexport const getPicture = createSelector(getMe, (me) => me.picture);\nexport const getEmail = createSelector(getMe, (me) => me.email);\nexport const getIsEmailVerified = createSelector(\n getMe,\n (me) => me.verifiedEmail,\n);\nexport const getName = createSelector(getMe, (me) => me.name);\nexport const getPhone = createSelector(getMe, (me) => me.phone);\nexport const getIsPhoneVerified = createSelector(\n getMe,\n (me) => me.verifiedPhone,\n);\nexport const getHasPasskey = createSelector(getMe, (me) => me.webauthn);\nexport const getHasPassword = createSelector(getMe, (me) => me.password);\n","/* eslint-disable @typescript-eslint/no-shadow */\n/* eslint-disable no-param-reassign */\n\nimport {\n ActionReducerMapBuilder,\n AsyncThunk,\n PayloadAction,\n SerializedError,\n} from '@reduxjs/toolkit';\nimport { State } from '../types';\n\ntype ExtractedArg<T> = T extends AsyncThunk<any, infer U, any> ? U : never;\n\ntype FulfilledAction<T extends AsyncThunk<any, any, any>> = PayloadAction<\n any,\n string,\n {\n arg: ExtractedArg<T>;\n requestId: string;\n },\n never\n>;\n\ntype RejectedAction<T extends AsyncThunk<any, any, any>> = PayloadAction<\n any,\n string,\n {\n arg: ExtractedArg<T>;\n requestId: string;\n },\n SerializedError\n>;\n\ntype PendingAction<T extends AsyncThunk<any, any, any>> = PayloadAction<\n unknown,\n string,\n {\n arg: ExtractedArg<T>;\n requestId: string;\n }\n>;\n\ntype AsyncReducerConfig<T extends AsyncThunk<any, any, any>> = {\n onFulfilled?: (state: State, action: FulfilledAction<T>) => void;\n onRejected?: (state: State, action: RejectedAction<T>) => void;\n onPending?: (state: State, action: PendingAction<T>) => void;\n};\n\nexport const buildAsyncReducer =\n <T extends AsyncThunk<any, any, any>>(action: T) =>\n (...args: AsyncReducerConfig<T>[]) =>\n (builder: ActionReducerMapBuilder<State>) => {\n builder.addCase(action.pending, (state, action) => {\n args.forEach(({ onPending }) => {\n onPending?.(state, action);\n });\n });\n\n builder.addCase(action.fulfilled, (state, action) => {\n args.forEach(({ onFulfilled }) => {\n onFulfilled?.(state, action);\n });\n });\n\n builder.addCase(action.rejected, (state, action) => {\n args.forEach(({ onRejected }) => {\n onRejected?.(state, action);\n });\n });\n };\n\nexport const withRequestStatus = (\n getStateSection: (state: State) => { loading: boolean; error: unknown },\n): AsyncReducerConfig<any> => ({\n onFulfilled: (state) => {\n getStateSection(state).loading = false;\n },\n onPending: (state) => {\n getStateSection(state).loading = true;\n getStateSection(state).error = null;\n },\n onRejected: (state, action) => {\n getStateSection(state).loading = false;\n getStateSection(state).error = action.error;\n },\n});\n","/* eslint-disable no-param-reassign */\n/* eslint-disable @typescript-eslint/no-shadow */\nimport { createAsyncThunk } from '@reduxjs/toolkit';\nimport { Sdk } from '../../api/sdk';\nimport { FirstParameter, State, ThunkConfigExtraApi } from '../types';\nimport { buildAsyncReducer, withRequestStatus } from './helpers';\n\nconst action = createAsyncThunk<\n any,\n FirstParameter<Sdk['user']['me']>,\n ThunkConfigExtraApi\n>('users/me', (arg, { extra: { api } }) => api.user.me());\n\nconst reducer = buildAsyncReducer(action)(\n {\n onFulfilled: (state, action) => {\n state.me.data = action.payload;\n },\n },\n withRequestStatus((state: State) => state.me),\n);\n\nexport const getMe = { action, reducer };\n","/* eslint-disable no-param-reassign */\n/* eslint-disable @typescript-eslint/no-shadow */\nimport { createAsyncThunk } from '@reduxjs/toolkit';\nimport { Sdk } from '../../api/sdk';\nimport { FirstParameter, ThunkConfigExtraApi } from '../types';\nimport { buildAsyncReducer } from './helpers';\n\nconst action = createAsyncThunk<\n any,\n FirstParameter<Sdk['user']['logout']>,\n ThunkConfigExtraApi\n>('users/logout', (arg, { extra: { api } }) => api.user.logout());\n\nconst reducer = buildAsyncReducer(action)({\n onFulfilled: (state) => {\n state.me.data = {};\n },\n});\n\nexport const logout = { action, reducer };\n","import { State } from './types';\n\nexport const initialState: State = {\n me: {\n loading: false,\n error: null,\n data: {},\n },\n};\n","export const apiPaths = {\n user: {\n me: '/v1/auth/me',\n },\n};\n","import { User } from '../types';\n\nconst me: () => Promise<User> = async () =>\n new Promise((resolve) => {\n resolve({\n loginIds: [`user@company.com`],\n externalIds: [`user@company.com`],\n userId: `user-1`,\n name: `Test User`,\n email: `user@company.com`,\n roleNames: [`Role`],\n phone: `+1-202-555-010`,\n verifiedEmail: true,\n verifiedPhone: true,\n userTenants: [],\n status: 'enabled',\n editable: true,\n createdTime: new Date().getTime(),\n customAttributes: {},\n familyName: '',\n givenName: '',\n middleName: '',\n picture:\n 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSzmudcbKkbOue75DaM9HDDrt0W39SJLBH-3HPK3s-K1w&s',\n password: true,\n SAML: false,\n test: false,\n TOTP: false,\n webauthn: true,\n });\n });\n\nconst user = {\n me,\n};\n\nexport { user };\n","import { apiPaths } from '../apiPaths';\nimport { HttpClient } from '../types';\nimport { withErrorHandler } from './helpers';\nimport { user } from './mocks';\n\nexport const createUserSdk = ({\n httpClient,\n mock,\n}: {\n httpClient: HttpClient;\n tenant: string;\n mock: boolean;\n}) => {\n const me = async () => {\n if (mock) {\n return user.me();\n }\n const res = await httpClient.get(apiPaths.user.me);\n\n await withErrorHandler(res);\n\n return res.json();\n };\n\n return {\n me,\n };\n};\n","export const withErrorHandler = async (res: Response) => {\n const text = await res.text();\n const json = JSON.parse(text);\n\n if (!res.ok) {\n const descopeErrorMsg = `${json.errorDescription}${\n json.errorMessage ? `: ${json.errorMessage}` : ''\n }`;\n throw Error(descopeErrorMsg || `${res.status} ${res.statusText}`);\n }\n\n res.json = () => Promise.resolve(json);\n res.text = () => Promise.resolve(text);\n};\n","import { compose, createSingletonMixin } from '@descope/sdk-helpers';\nimport {\n createValidateAttributesMixin,\n loggerMixin,\n observeAttributesMixin,\n projectIdMixin,\n} from '@descope/sdk-mixins';\nimport { Sdk, createSdk } from '../api/sdk';\n\nexport const apiMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) => {\n const BaseClass = compose(\n projectIdMixin,\n observeAttributesMixin,\n loggerMixin,\n createValidateAttributesMixin({\n tenant: createValidateAttributesMixin.missingAttrValidator,\n }),\n )(superclass);\n\n return class ApiMixinClass extends BaseClass {\n #api: Sdk;\n\n #createSdk() {\n this.logger.debug('creating an sdk instance');\n this.#api = createSdk(\n { projectId: this.projectId, baseUrl: this.baseUrl },\n this.tenant,\n this.mock === 'true',\n );\n }\n\n get baseUrl() {\n return this.getAttribute('base-url');\n }\n\n get tenant() {\n return this.getAttribute('tenant');\n }\n\n get mock() {\n return this.getAttribute('mock');\n }\n\n get api() {\n if (!this.#api) {\n this.#createSdk();\n }\n\n return this.#api;\n }\n\n async init() {\n await super.init?.();\n\n this.observeAttributes(['project-id', 'base-url', 'tenant'], () => {\n if (this.#api) {\n this.#createSdk();\n }\n });\n }\n };\n },\n);\n","import createWebSdk from '@descope/web-js-sdk';\nimport { createUserSdk } from './createUserSdk';\nimport '@descope/core-js-sdk';\n\nexport const createSdk = (\n config: Parameters<typeof createWebSdk>[0],\n tenant: string,\n mock: boolean,\n) => {\n const webSdk = createWebSdk({ ...config, persistTokens: true });\n\n return {\n user: {\n ...createUserSdk({ httpClient: webSdk.httpClient, tenant, mock }),\n logout: webSdk.logout,\n },\n };\n};\n\nexport type Sdk = ReturnType<typeof createSdk>;\n","/* eslint-disable no-param-reassign */\nimport { compose, createSingletonMixin } from '@descope/sdk-helpers';\nimport {\n createStateManagementMixin,\n initLifecycleMixin,\n loggerMixin,\n} from '@descope/sdk-mixins';\nimport { getMe, logout } from '../state/asyncActions';\nimport { initialState } from '../state/initialState';\nimport { apiMixin } from './apiMixin';\n\nexport const stateManagementMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) => {\n const BaseClass = compose(\n createStateManagementMixin({\n name: 'widget',\n initialState,\n reducers: {},\n extraReducers: (builder) => {\n getMe.reducer(builder);\n logout.reducer(builder);\n },\n asyncActions: {\n getMe: getMe.action,\n logout: logout.action,\n },\n }),\n initLifecycleMixin,\n loggerMixin,\n apiMixin,\n )(superclass);\n return class StateManagementMixinClass extends BaseClass {\n state = initialState;\n\n constructor(...args: any) {\n super(...args);\n\n this.subscribe((state) => {\n this.logger.debug('State update:', state);\n this.state = state;\n });\n }\n };\n },\n);\n","import { compose, createSingletonMixin } from '@descope/sdk-helpers';\nimport {\n createValidateAttributesMixin,\n staticResourcesMixin,\n} from '@descope/sdk-mixins';\n\nconst WIDGET_PAGES_BASE_DIR = 'user-profile-widget';\n\nexport const fetchWidgetPagesMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) => {\n const BaseClass = compose(\n staticResourcesMixin,\n createValidateAttributesMixin({\n 'widget-id': createValidateAttributesMixin.missingAttrValidator,\n }),\n )(superclass);\n return class FetchWidgetPagesMixinClass extends BaseClass {\n get widgetId() {\n return this.getAttribute('widget-id');\n }\n\n async fetchWidgetPage(filename: string) {\n const res = await this.fetchStaticResource(\n `${WIDGET_PAGES_BASE_DIR}/${this.widgetId}/${filename}`,\n 'text',\n );\n return res.body;\n }\n };\n },\n);\n","import {\n compose,\n createSingletonMixin,\n createTemplate,\n} from '@descope/sdk-helpers';\nimport {\n descopeUiMixin,\n initElementMixin,\n initLifecycleMixin,\n loggerMixin,\n} from '@descope/sdk-mixins';\nimport { fetchWidgetPagesMixin } from '../../fetchWidgetPagesMixin';\nimport { stateManagementMixin } from '../../stateManagementMixin';\n\nexport const initWidgetRootMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class InitWidgetRootMixinClass extends compose(\n loggerMixin,\n initLifecycleMixin,\n descopeUiMixin,\n initElementMixin,\n fetchWidgetPagesMixin,\n stateManagementMixin,\n )(superclass) {\n async #initWidgetRoot() {\n const template = createTemplate(\n // await import('../../../../../../test/mocks/rootMock').then(module => module.default)\n await this.fetchWidgetPage('root.html'),\n );\n await this.loadDescopeUiComponents(template);\n this.contentRootElement.append(template.content.cloneNode(true));\n }\n\n // eslint-disable-next-line class-methods-use-this, @typescript-eslint/no-empty-function\n async onWidgetRootReady() {}\n\n async init() {\n await super.init?.();\n\n await Promise.all([this.actions.getMe(), this.#initWidgetRoot()]);\n\n this.onWidgetRootReady();\n }\n },\n);\n","import { createTemplate, kebabCase } from '@descope/sdk-helpers';\n\ntype FlowConfig = {\n projectId: string;\n flowId: string;\n baseUrl?: string;\n};\nexport const createFlowTemplate = (\n flowConfig: FlowConfig = {} as FlowConfig,\n) => {\n const template = createTemplate(`<descope-wc></descope-wc>`);\n\n Object.entries(flowConfig).forEach(([key, value]) => {\n template.content\n .querySelector('descope-wc')\n .setAttribute(kebabCase(key), value);\n });\n\n return template;\n};\n","import {\n AvatarDriver,\n FlowDriver,\n ModalDriver,\n} from '@descope/sdk-component-drivers';\nimport {\n compose,\n createSingletonMixin,\n withMemCache,\n} from '@descope/sdk-helpers';\nimport { loggerMixin, modalMixin } from '@descope/sdk-mixins';\nimport { getName, getPicture } from '../../../state/selectors';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\nimport { createFlowTemplate } from '../../helpers';\n\nexport const initAvatarMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class AvatarMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n modalMixin,\n )(superclass) {\n avatar: AvatarDriver;\n\n #modal: ModalDriver;\n\n #flow: FlowDriver;\n\n #initModal() {\n this.#modal = this.createModal({ 'data-id': 'update-pic' });\n this.#flow = new FlowDriver(\n () => this.#modal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#modal.afterClose = this.#initModalContent.bind(this);\n this.#initModalContent();\n }\n\n #initModalContent() {\n this.#modal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.avatar.flowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#flow.onSuccess(() => {\n this.#modal.close();\n this.actions.getMe();\n });\n }\n\n #initAvatar() {\n this.avatar = new AvatarDriver(\n () => this.shadowRoot?.querySelector('descope-avatar'),\n { logger: this.logger },\n );\n\n this.avatar.onClick(() => {\n this.#modal.open();\n });\n }\n\n #onPictureUpdate = withMemCache(\n (picture: ReturnType<typeof getPicture>) => {\n this.avatar.image = picture;\n },\n );\n\n #onNameUpdate = withMemCache((name: ReturnType<typeof getName>) => {\n this.avatar.displayName = name;\n });\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initAvatar();\n this.#initModal();\n\n this.#onPictureUpdate(getPicture(this.state));\n this.#onNameUpdate(getName(this.state));\n\n this.subscribe(this.#onPictureUpdate.bind(this), getPicture);\n\n this.subscribe(this.#onNameUpdate.bind(this), getName);\n }\n },\n);\n","import {\n FlowDriver,\n ModalDriver,\n UserAttributeDriver,\n} from '@descope/sdk-component-drivers';\nimport {\n compose,\n createSingletonMixin,\n withMemCache,\n} from '@descope/sdk-helpers';\nimport { loggerMixin, modalMixin } from '@descope/sdk-mixins';\nimport { getEmail, getIsEmailVerified } from '../../../state/selectors';\nimport { createFlowTemplate } from '../../helpers';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\n\nexport const initEmailUserAttrMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class EmailUserAttrMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n modalMixin,\n )(superclass) {\n emailUserAttr: UserAttributeDriver;\n\n #editModal: ModalDriver;\n\n #editFlow: FlowDriver;\n\n #deleteModal: ModalDriver;\n\n #deleteFlow: FlowDriver;\n\n #initEditModal() {\n this.#editModal = this.createModal({ 'data-id': 'edit-email' });\n this.#editFlow = new FlowDriver(\n () => this.#editModal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#editModal.afterClose = this.#initEditModalContent.bind(this);\n this.#initEditModalContent();\n }\n\n #initEditModalContent() {\n this.#editModal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.emailUserAttr.editFlowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#editFlow.onSuccess(() => {\n this.#editModal.close();\n this.actions.getMe();\n });\n }\n\n #initDeleteModal() {\n this.#deleteModal = this.createModal({ 'data-id': 'delete-email' });\n this.#deleteFlow = new FlowDriver(\n () => this.#deleteModal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#deleteModal.afterClose = this.#initDeleteModalContent.bind(this);\n this.#initDeleteModalContent();\n }\n\n #initDeleteModalContent() {\n this.#deleteModal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.emailUserAttr.deleteFlowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#deleteFlow.onSuccess(() => {\n this.#deleteModal.close();\n this.actions.getMe();\n });\n }\n\n #initEmailUserAttr() {\n this.emailUserAttr = new UserAttributeDriver(\n () =>\n this.shadowRoot?.querySelector(\n 'descope-user-attribute[data-id=\"email\"]',\n ),\n { logger: this.logger },\n );\n\n this.emailUserAttr.onEditClick(() => {\n this.#editModal.open();\n });\n\n this.emailUserAttr.onDeleteClick(() => {\n this.#deleteModal.open();\n });\n }\n\n #onValueUpdate = withMemCache((email: ReturnType<typeof getEmail>) => {\n this.emailUserAttr.value = email;\n });\n\n #onValueBadgeLabelUpdate = withMemCache(\n (isEmailVerified: ReturnType<typeof getIsEmailVerified>) => {\n this.emailUserAttr.badgeLabel = isEmailVerified ? '' : 'Unverified';\n },\n );\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initEmailUserAttr();\n this.#initEditModal();\n this.#initDeleteModal();\n\n this.#onValueUpdate(getEmail(this.state));\n this.#onValueBadgeLabelUpdate(getIsEmailVerified(this.state));\n\n this.subscribe(this.#onValueUpdate.bind(this), getEmail);\n\n this.subscribe(\n this.#onValueBadgeLabelUpdate.bind(this),\n getIsEmailVerified,\n );\n }\n },\n);\n","import {\n FlowDriver,\n ModalDriver,\n UserAttributeDriver,\n} from '@descope/sdk-component-drivers';\nimport {\n compose,\n createSingletonMixin,\n withMemCache,\n} from '@descope/sdk-helpers';\nimport { loggerMixin, modalMixin } from '@descope/sdk-mixins';\nimport { getName } from '../../../state/selectors';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\nimport { createFlowTemplate } from '../../helpers';\n\nexport const initNameUserAttrMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class NameUserAttrMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n modalMixin,\n )(superclass) {\n nameUserAttr: UserAttributeDriver;\n\n #editModal: ModalDriver;\n\n #editFlow: FlowDriver;\n\n #deleteModal: ModalDriver;\n\n #deleteFlow: FlowDriver;\n\n #initEditModal() {\n this.#editModal = this.createModal({ 'data-id': 'edit-name' });\n this.#editFlow = new FlowDriver(\n () => this.#editModal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#editModal.afterClose = this.#initEditModalContent.bind(this);\n this.#initEditModalContent();\n }\n\n #initEditModalContent() {\n this.#editModal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.nameUserAttr.editFlowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#editFlow.onSuccess(() => {\n this.#editModal.close();\n this.actions.getMe();\n });\n }\n\n #initDeleteModal() {\n this.#deleteModal = this.createModal({ 'data-id': 'delete-name' });\n this.#deleteFlow = new FlowDriver(\n () => this.#deleteModal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#deleteModal.afterClose = this.#initDeleteModalContent.bind(this);\n this.#initDeleteModalContent();\n }\n\n #initDeleteModalContent() {\n this.#deleteModal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.nameUserAttr.deleteFlowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#deleteFlow.onSuccess(() => {\n this.#deleteModal.close();\n this.actions.getMe();\n });\n }\n\n #initNameUserAttr() {\n this.nameUserAttr = new UserAttributeDriver(\n () =>\n this.shadowRoot?.querySelector(\n 'descope-user-attribute[data-id=\"name\"]',\n ),\n { logger: this.logger },\n );\n\n this.nameUserAttr.onEditClick(() => {\n this.#editModal.open();\n });\n\n this.nameUserAttr.onDeleteClick(() => {\n this.#deleteModal.open();\n });\n }\n\n #onValueUpdate = withMemCache((name: ReturnType<typeof getName>) => {\n this.nameUserAttr.value = name;\n });\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initNameUserAttr();\n this.#initEditModal();\n this.#initDeleteModal();\n\n this.#onValueUpdate(getName(this.state));\n\n this.subscribe(this.#onValueUpdate.bind(this), getName);\n }\n },\n);\n","import {\n FlowDriver,\n ModalDriver,\n UserAttributeDriver,\n} from '@descope/sdk-component-drivers';\nimport {\n compose,\n createSingletonMixin,\n withMemCache,\n} from '@descope/sdk-helpers';\nimport { loggerMixin, modalMixin } from '@descope/sdk-mixins';\nimport { getIsPhoneVerified, getPhone } from '../../../state/selectors';\nimport { createFlowTemplate } from '../../helpers';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\n\nexport const initPhoneUserAttrMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class PhoneUserAttrMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n modalMixin,\n )(superclass) {\n phoneUserAttr: UserAttributeDriver;\n\n #editModal: ModalDriver;\n\n #editFlow: FlowDriver;\n\n #deleteModal: ModalDriver;\n\n #deleteFlow: FlowDriver;\n\n #initEditModal() {\n this.#editModal = this.createModal({ 'data-id': 'edit-phone' });\n this.#editFlow = new FlowDriver(\n () => this.#editModal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#editModal.afterClose = this.#initEditModalContent.bind(this);\n this.#initEditModalContent();\n }\n\n #initEditModalContent() {\n this.#editModal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.phoneUserAttr.editFlowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#editFlow.onSuccess(() => {\n this.#editModal.close();\n this.actions.getMe();\n });\n }\n\n #initDeleteModal() {\n this.#deleteModal = this.createModal({ 'data-id': 'delete-phone' });\n this.#deleteFlow = new FlowDriver(\n () => this.#deleteModal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#deleteModal.afterClose = this.#initDeleteModalContent.bind(this);\n this.#initDeleteModalContent();\n }\n\n #initDeleteModalContent() {\n this.#deleteModal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.phoneUserAttr.deleteFlowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#deleteFlow.onSuccess(() => {\n this.#deleteModal.close();\n this.actions.getMe();\n });\n }\n\n #initPhoneUserAttr() {\n this.phoneUserAttr = new UserAttributeDriver(\n () =>\n this.shadowRoot?.querySelector(\n 'descope-user-attribute[data-id=\"phone\"]',\n ),\n { logger: this.logger },\n );\n\n this.phoneUserAttr.onEditClick(() => {\n this.#editModal.open();\n });\n\n this.phoneUserAttr.onDeleteClick(() => {\n this.#deleteModal.open();\n });\n }\n\n #onValueUpdate = withMemCache((phone: ReturnType<typeof getPhone>) => {\n this.phoneUserAttr.value = phone;\n });\n\n #onValueBadgeLabelUpdate = withMemCache(\n (isPhoneVerified: ReturnType<typeof getIsPhoneVerified>) => {\n this.phoneUserAttr.badgeLabel = isPhoneVerified ? '' : 'Unverified';\n },\n );\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initPhoneUserAttr();\n this.#initEditModal();\n this.#initDeleteModal();\n\n this.#onValueUpdate(getPhone(this.state));\n this.#onValueBadgeLabelUpdate(getIsPhoneVerified(this.state));\n\n this.subscribe(this.#onValueUpdate.bind(this), getPhone);\n\n this.subscribe(\n this.#onValueBadgeLabelUpdate.bind(this),\n getIsPhoneVerified,\n );\n }\n },\n);\n","import {\n FlowDriver,\n ModalDriver,\n UserAuthMethodDriver,\n} from '@descope/sdk-component-drivers';\nimport {\n compose,\n createSingletonMixin,\n withMemCache,\n} from '@descope/sdk-helpers';\nimport { loggerMixin, modalMixin } from '@descope/sdk-mixins';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\nimport { getHasPasskey } from '../../../state/selectors';\nimport { createFlowTemplate } from '../../helpers';\n\nexport const initPasskeyUserAuthMethodMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class PasskeyUserAuthMethodMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n modalMixin,\n )(superclass) {\n passkeyUserAuthMethod: UserAuthMethodDriver;\n\n #modal: ModalDriver;\n\n #flow: FlowDriver;\n\n #initModal() {\n this.#modal = this.createModal({ 'data-id': 'passkey' });\n this.#flow = new FlowDriver(\n () => this.#modal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#modal.afterClose = this.#initModalContent.bind(this);\n this.#initModalContent();\n }\n\n #initModalContent() {\n this.#modal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.passkeyUserAuthMethod.flowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#flow.onSuccess(() => {\n this.#modal.close();\n this.actions.getMe();\n });\n }\n\n #initPhoneUserAttr() {\n this.passkeyUserAuthMethod = new UserAuthMethodDriver(\n () =>\n this.shadowRoot?.querySelector(\n 'descope-user-auth-method[data-id=\"passkey\"]',\n ),\n { logger: this.logger },\n );\n\n this.passkeyUserAuthMethod.onButtonClick(() => {\n this.#modal.open();\n });\n }\n\n #onFulfilledUpdate = withMemCache(\n (hasPasskey: ReturnType<typeof getHasPasskey>) => {\n this.passkeyUserAuthMethod.fulfilled = hasPasskey;\n },\n );\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initPhoneUserAttr();\n this.#initModal();\n\n this.#onFulfilledUpdate(getHasPasskey(this.state));\n\n this.subscribe(this.#onFulfilledUpdate.bind(this), getHasPasskey);\n }\n },\n);\n","import {\n FlowDriver,\n ModalDriver,\n UserAuthMethodDriver,\n} from '@descope/sdk-component-drivers';\nimport { compose, createSingletonMixin } from '@descope/sdk-helpers';\nimport { loggerMixin, modalMixin } from '@descope/sdk-mixins';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\nimport { createFlowTemplate } from '../../helpers';\n\nexport const initPasswordUserAuthMethodMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class PasswordUserAuthMethodMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n modalMixin,\n )(superclass) {\n passwordUserAuthMethod: UserAuthMethodDriver;\n\n #modal: ModalDriver;\n\n #flow: FlowDriver;\n\n #initModal() {\n this.#modal = this.createModal({ 'data-id': 'password' });\n this.#flow = new FlowDriver(\n () => this.#modal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#modal.afterClose = this.#initModalContent.bind(this);\n this.#initModalContent();\n }\n\n #initModalContent() {\n this.#modal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.passwordUserAuthMethod.flowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#flow.onSuccess(() => {\n this.#modal.close();\n });\n }\n\n #initPhoneUserAttr() {\n this.passwordUserAuthMethod = new UserAuthMethodDriver(\n () =>\n this.shadowRoot?.querySelector(\n 'descope-user-auth-method[data-id=\"password\"]',\n ),\n { logger: this.logger },\n );\n\n this.passwordUserAuthMethod.onButtonClick(() => {\n this.#modal.open();\n });\n }\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initPhoneUserAttr();\n this.#initModal();\n }\n },\n);\n","import { ButtonDriver } from '@descope/sdk-component-drivers';\nimport { compose, createSingletonMixin } from '@descope/sdk-helpers';\nimport { loggerMixin, modalMixin } from '@descope/sdk-mixins';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\n\nexport const initLogoutMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class LogoutMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n modalMixin,\n )(superclass) {\n logout: ButtonDriver;\n\n #initLogout() {\n this.logout = new ButtonDriver(\n () =>\n this.shadowRoot?.querySelector('descope-button[data-id=\"logout\"]'),\n { logger: this.logger },\n );\n\n this.logout.onClick(async () => {\n await this.actions.logout();\n this.dispatchEvent(new CustomEvent('logout'));\n });\n }\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initLogout();\n }\n },\n);\n","import { compose, createSingletonMixin } from '@descope/sdk-helpers';\nimport { debuggerMixin, themeMixin } from '@descope/sdk-mixins';\nimport { initAvatarMixin } from './initComponentsMixins/initAvatarMixin';\nimport { initEmailUserAttrMixin } from './initComponentsMixins/initEmailUserAttrMixin';\nimport { initNameUserAttrMixin } from './initComponentsMixins/initNameUserAttrMixin';\nimport { initPhoneUserAttrMixin } from './initComponentsMixins/initPhoneUserAttrMixin';\nimport { initPasskeyUserAuthMethodMixin } from './initComponentsMixins/initPasskeyUserAuthMethodMixin';\nimport { initPasswordUserAuthMethodMixin } from './initComponentsMixins/initPasswordUserAuthMethodMixin';\nimport { initLogoutMixin } from './initComponentsMixins/initLogoutMixin';\n\nexport const initMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n /* @ts-ignore */\n class InitMixinClass extends compose(\n debuggerMixin,\n themeMixin,\n initAvatarMixin,\n initEmailUserAttrMixin,\n initNameUserAttrMixin,\n initPhoneUserAttrMixin,\n initPasskeyUserAuthMethodMixin,\n initPasswordUserAuthMethodMixin,\n initLogoutMixin,\n )(superclass) {\n async init() {\n await super.init?.();\n }\n },\n);\n","import { compose } from '@descope/sdk-helpers';\nimport { initMixin } from './mixins/initMixin/initMixin';\n\nconst rootMixin = (superclass: CustomElementConstructor) =>\n class RootMixinClass extends initMixin(superclass) {};\n\nexport const UserProfileWidget = compose(rootMixin)(HTMLElement);\n","// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type { Unsubscribe } from 'redux'; // workaround for https://github.com/microsoft/TypeScript/issues/42873\nimport { UserProfileWidget } from './widget';\nimport '@descope/web-component';\n\ndeclare global {\n interface HTMLElement {\n attributeChangedCallback(\n attrName: string,\n oldValue: string | null,\n newValue: string | null,\n ): void;\n connectedCallback(): void;\n }\n}\n\nexport default UserProfileWidget;\n\ncustomElements.define('descope-user-profile-widget', UserProfileWidget);\n"],"names":["getMe","state","me","data","getPicture","createSelector","picture","getEmail","email","getIsEmailVerified","verifiedEmail","getName","name","getPhone","phone","getIsPhoneVerified","verifiedPhone","getHasPasskey","webauthn","password","buildAsyncReducer","action","args","builder","addCase","pending","forEach","onPending","fulfilled","onFulfilled","rejected","onRejected","createAsyncThunk","arg","extra","api","user","reducer","payload","getStateSection","loading","error","logout","initialState","apiPaths","__awaiter","Promise","resolve","loginIds","externalIds","userId","roleNames","userTenants","status","editable","createdTime","Date","getTime","customAttributes","familyName","givenName","middleName","SAML","test","TOTP","createUserSdk","httpClient","mock","res","get","text","json","JSON","parse","ok","descopeErrorMsg","errorDescription","errorMessage","Error","statusText","withErrorHandler","apiMixin","createSingletonMixin","superclass","BaseClass","compose","projectIdMixin","observeAttributesMixin","loggerMixin","createValidateAttributesMixin","tenant","missingAttrValidator","_a","constructor","_ApiMixinClass_api","set","this","baseUrl","getAttribute","__classPrivateFieldGet","_ApiMixinClass_instances","_ApiMixinClass_createSdk","call","init","_super","observeAttributes","logger","debug","__classPrivateFieldSet","config","webSdk","createWebSdk","Object","assign","persistTokens","createSdk","projectId","stateManagementMixin","createStateManagementMixin","reducers","extraReducers","asyncActions","initLifecycleMixin","super","subscribe","fetchWidgetPagesMixin","staticResourcesMixin","widgetId","fetchWidgetPage","filename","fetchStaticResource","body","initWidgetRootMixin","_InitWidgetRootMixinClass_instances","_InitWidgetRootMixinClass_initWidgetRoot","descopeUiMixin","initElementMixin","onWidgetRootReady","all","actions","template","createTemplate","loadDescopeUiComponents","contentRootElement","append","content","cloneNode","createFlowTemplate","flowConfig","entries","key","value","querySelector","setAttribute","kebabCase","initAvatarMixin","_AvatarMixinClass_instances","_AvatarMixinClass_modal","_AvatarMixinClass_flow","_AvatarMixinClass_initModal","_AvatarMixinClass_initModalContent","_AvatarMixinClass_initAvatar","_AvatarMixinClass_onPictureUpdate","_AvatarMixinClass_onNameUpdate","modalMixin","withMemCache","avatar","image","displayName","bind","createModal","FlowDriver","ele","afterClose","setContent","flowId","onSuccess","close","AvatarDriver","shadowRoot","onClick","open","initEmailUserAttrMixin","_EmailUserAttrMixinClass_instances","_EmailUserAttrMixinClass_editModal","_EmailUserAttrMixinClass_editFlow","_EmailUserAttrMixinClass_deleteModal","_EmailUserAttrMixinClass_deleteFlow","_EmailUserAttrMixinClass_initEditModal","_EmailUserAttrMixinClass_initEditModalContent","_EmailUserAttrMixinClass_initDeleteModal","_EmailUserAttrMixinClass_initDeleteModalContent","_EmailUserAttrMixinClass_initEmailUserAttr","_EmailUserAttrMixinClass_onValueUpdate","_EmailUserAttrMixinClass_onValueBadgeLabelUpdate","emailUserAttr","isEmailVerified","badgeLabel","editFlowId","deleteFlowId","UserAttributeDriver","onEditClick","onDeleteClick","initNameUserAttrMixin","_NameUserAttrMixinClass_instances","_NameUserAttrMixinClass_editModal","_NameUserAttrMixinClass_editFlow","_NameUserAttrMixinClass_deleteModal","_NameUserAttrMixinClass_deleteFlow","_NameUserAttrMixinClass_initEditModal","_NameUserAttrMixinClass_initEditModalContent","_NameUserAttrMixinClass_initDeleteModal","_NameUserAttrMixinClass_initDeleteModalContent","_NameUserAttrMixinClass_initNameUserAttr","_NameUserAttrMixinClass_onValueUpdate","nameUserAttr","initPhoneUserAttrMixin","_PhoneUserAttrMixinClass_instances","_PhoneUserAttrMixinClass_editModal","_PhoneUserAttrMixinClass_editFlow","_PhoneUserAttrMixinClass_deleteModal","_PhoneUserAttrMixinClass_deleteFlow","_PhoneUserAttrMixinClass_initEditModal","_PhoneUserAttrMixinClass_initEditModalContent","_PhoneUserAttrMixinClass_initDeleteModal","_PhoneUserAttrMixinClass_initDeleteModalContent","_PhoneUserAttrMixinClass_initPhoneUserAttr","_PhoneUserAttrMixinClass_onValueUpdate","_PhoneUserAttrMixinClass_onValueBadgeLabelUpdate","phoneUserAttr","isPhoneVerified","initPasskeyUserAuthMethodMixin","_PasskeyUserAuthMethodMixinClass_instances","_PasskeyUserAuthMethodMixinClass_modal","_PasskeyUserAuthMethodMixinClass_flow","_PasskeyUserAuthMethodMixinClass_initModal","_PasskeyUserAuthMethodMixinClass_initModalContent","_PasskeyUserAuthMethodMixinClass_initPhoneUserAttr","_PasskeyUserAuthMethodMixinClass_onFulfilledUpdate","hasPasskey","passkeyUserAuthMethod","UserAuthMethodDriver","onButtonClick","initPasswordUserAuthMethodMixin","_PasswordUserAuthMethodMixinClass_instances","_PasswordUserAuthMethodMixinClass_modal","_PasswordUserAuthMethodMixinClass_flow","_PasswordUserAuthMethodMixinClass_initModal","_PasswordUserAuthMethodMixinClass_initModalContent","_PasswordUserAuthMethodMixinClass_initPhoneUserAttr","passwordUserAuthMethod","initLogoutMixin","_LogoutMixinClass_instances","_LogoutMixinClass_initLogout","ButtonDriver","dispatchEvent","CustomEvent","initMixin","debuggerMixin","themeMixin","UserProfileWidget","HTMLElement","customElements","define"],"mappings":";;;;k2BAGO,MAAMA,CAASC,CAAAA,CAAAA,CAAAA,CAAiBA,EAAMC,CAAGC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEnCC,EAAaC,CAAeL,CAAAA,CAAAA,CAAAA,CAAQE,CAAOA,CAAAA,CAAAA,CAAAA,CAAGI,UAC9CC,CAAWF,CAAAA,CAAAA,CAAeL,GAAQE,CAAOA,CAAAA,CAAAA,CAAAA,CAAGM,QAC5CC,CAAqBJ,CAAAA,CAAAA,CAChCL,GACCE,CAAOA,CAAAA,CAAAA,CAAAA,CAAGQ,gBAEAC,CAAUN,CAAAA,CAAAA,CAAeL,GAAQE,CAAOA,CAAAA,CAAAA,CAAAA,CAAGU,OAC3CC,CAAWR,CAAAA,CAAAA,CAAeL,GAAQE,CAAOA,CAAAA,CAAAA,CAAAA,CAAGY,QAC5CC,CAAqBV,CAAAA,CAAAA,CAChCL,GACCE,CAAOA,CAAAA,CAAAA,CAAAA,CAAGc,gBAEAC,CAAgBZ,CAAAA,CAAAA,CAAeL,GAAQE,CAAOA,CAAAA,CAAAA,CAAAA,CAAGgB,WAChCb,CAAeL,CAAAA,CAAAA,CAAAA,CAAQE,GAAOA,CAAGiB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CC8BxD,MAAMC,CAC2BC,CAAAA,CAAAA,CAAAA,CACtC,CAAIC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACHC,IACCA,CAAQC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQH,EAAOI,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACxB,EAAOoB,CACtCC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKI,SAAQ,CAAGC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACdA,SAAAA,CAAY1B,CAAAA,CAAAA,CAAOoB,EAAO,CAC1B,CAAA,CAAA,CAAA,CAAA,CAAA,CAGJE,EAAQC,CAAQH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOO,WAAW,CAAC3B,CAAAA,CAAOoB,KACxCC,CAAKI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,EAAGG,CACdA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAc5B,CAAOoB,CAAAA,CAAAA,CAAO,GAC5B,CAGJE,CAAAA,CAAAA,CAAAA,CAAAA,CAAQC,QAAQH,CAAOS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAC7B,CAAOoB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACvCC,EAAKI,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGK,CACdA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAa9B,CAAOoB,CAAAA,CAAAA,CAAO,GAC3B,CACF,CAAA,CAAA,CAAA,CC7DAA,EAASW,CAIb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAACC,CAAOC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASC,UAAYA,CAAIC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKlC,OAE9CmC,CAAUjB,CAAAA,CAAAA,CAAkBC,EAAlBD,CACd,CACES,YAAa,CAAC5B,CAAAA,CAAOoB,KACnBpB,CAAMC,CAAAA,CAAAA,CAAAA,CAAGC,KAAOkB,CAAOiB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,IDwDlCC,CCrDmBtC,CAAAA,CAAAA,CAAAA,CAAiBA,EAAMC,CDsDb,CAAA,CAAA,CAC7B2B,YAAc5B,CACZsC,CAAAA,CAAAA,CAAAA,CAAAA,CAAgBtC,GAAOuC,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,EAExCb,CAAY1B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACVsC,CAAgBtC,CAAAA,CAAAA,CAAAA,CAAOuC,SAAU,CACjCD,CAAAA,CAAAA,CAAgBtC,GAAOwC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,EAErCV,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC9B,EAAOoB,CAClBkB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgBtC,GAAOuC,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACjCD,EAAgBtC,CAAOwC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQpB,EAAOoB,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAZd,IAC/BF,CClDK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMvC,EAAQ,CAAAqB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAEA,EAAMgB,CAAEA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CCfzBhB,EAASW,CAIb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAACC,CAAOC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASC,UAAYA,CAAIC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKM,WAQ3CA,CAAS,CAAA,CAAErB,SAAQgB,CANhBjB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAkBC,CAAlBD,CAAAA,CAA0B,CACxCS,CAAc5B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACZA,EAAMC,CAAGC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,EAAE,CAAA,CAAA,CAAA,CAAA,CCbTwC,EAAsB,CACjCzC,CAAAA,CAAAA,CAAI,CACFsC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACTC,MAAO,CACPtC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAE,CCNCyC,CAAAA,CAAAA,CAAAA,CAAAA,CACL,CACJ1C,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CC8BFkC,EA9B0B,CAAWS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,YACzC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIC,SAASC,CACXA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CACNC,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,oBACXC,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,oBACdC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACRtC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACNJ,MAAO,CACP2C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAAC,CACZrC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,iBACPJ,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACfM,eAAe,CACfoC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,GACbC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACRC,UAAU,CACVC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,IAAIC,CAAOC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACxBC,iBAAkB,CAAE,CAAA,CACpBC,WAAY,CACZC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,GACXC,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACZvD,QACE,CACFa,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,EACV2C,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACNC,MAAM,CACNC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,EACN9C,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACV,ICxBO+C,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,CAC3BC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACAC,WAiBO,CACLjE,CAAAA,CAAAA,CAZS,IAAW2C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACpB,GAAIsB,CACF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO/B,IAET,CAAMgC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAYF,EAAWG,CAAIzB,CAAAA,CAAAA,CAAAA,CAAAA,CAAc1C,IAI/C,CCrB4B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOkE,GAAiBvB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACtD,MAAMyB,CAAaF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIE,OACjBC,CAAOC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKC,MAAMH,CAExB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAKF,EAAIM,CAAI,CAAA,CAAA,CACX,MAAMC,CAAkB,CAAA,CAAA,CAAA,CAAGJ,EAAKK,CAC9BL,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKM,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAKN,EAAKM,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAEjD,MAAMC,CAAMH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAmB,GAAGP,CAAIf,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAUe,EAAIW,CACrD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAEDX,EAAIG,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMzB,QAAQC,CAAQwB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACjCH,EAAIE,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMxB,QAAQC,CAAQuB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACnC,IDMUU,CAAiBZ,CAAAA,CAAAA,CAEhBA,EAAIG,CACb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CEbWU,EAAWC,CACeC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,YACnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,EAAYC,CAChBC,CAAAA,CAAAA,CACAC,EACAC,CACAC,CAAAA,CAAAA,CAA8B,CAC5BC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQD,EAA8BE,CALxBN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAOhBF,GAEF,CAAOS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,cAA4BR,CAA5BS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,4BACLC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAUC,IAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAwCX,CA7BKC,CACF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOD,KAAKE,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC1B,CAEGR,CACF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOM,KAAKE,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC1B,CAEG/B,CACF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO6B,KAAKE,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC1B,CAEG/D,CAKF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAJKgE,EAAAH,CAAIF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,MACPK,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAII,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAC,GAAJC,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAGKG,EAAAH,CAAIF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IACZ,CAEKS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,6FACY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAVX,EAAAY,CAAMD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,IAAAX,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,EAAAU,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEhBA,KAAKS,CAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,aAAc,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CACvDN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACNK,EAAAH,CAAII,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAC,CAAJC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,KACD,MAEJ,4CApCCA,KAAKU,CAAOC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,4BAClBC,CAAAZ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIF,ECrBa,CACvBe,CAAAA,CAAAA,CACAnB,EACAvB,CAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM2C,EAASC,CAAkBC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAC,OAAAD,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAAJ,CAAAA,CAAAA,CAAAA,EAAQK,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAExD,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CACL9E,KAAI4E,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAD,OAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EACChD,CAAc,CAAA,CAAEC,WAAY4C,CAAO5C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAYwB,SAAQvB,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACjEzB,OAAQoE,CAAOpE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAElB,EDSiByE,CACV,CAAEC,UAAWpB,CAAKoB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWnB,QAASD,CAAKC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC3CD,KAAKN,CACS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAdM,KAAK7B,UAER,EA+BDyB,CAAA,CAAA,CAAA,CAAA,CElDOyB,EAAuBnC,CACGC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACnC,MAAMC,CAAYC,CAAAA,CAAAA,CAChBiC,EAA2B,CACzB1G,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CACN+B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACA4E,SAAU,CAAE,CAAA,CACZC,cAAgBjG,CACdvB,CAAAA,CAAAA,CAAAA,CAAAA,CAAMqC,QAAQd,CACdmB,CAAAA,CAAAA,CAAAA,CAAOL,QAAQd,CAAQ,CAAA,CAAA,CAEzBkG,aAAc,CACZzH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOA,EAAMqB,CACbqB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQA,EAAOrB,CAGnBqG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACAlC,EACAP,CAhBgBI,CAAAA,CAiBhBF,GACF,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAwCC,EAG7CS,CAAevE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACbqG,SAASrG,CAHX0E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK/F,MAAG0C,CAKNqD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK4B,WAAW3H,CACd+F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKU,OAAOC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiB1G,GACnC+F,CAAK/F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQA,CAAK,CAAA,CAAA,CAErB,EACF,CClCQ4H,CAAAA,CAAAA,CAAAA,CAAAA,CAAwB3C,GACEC,CACnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,EAAYC,CAChByC,CAAAA,CAAAA,CACArC,EAA8B,CAC5B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAaA,EAA8BE,CAH7BN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAKhBF,GACF,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAyCC,EAC1C2C,CACF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO/B,KAAKE,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC1B,CAEK8B,CAAgBC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,0CAKpB,aAJkBjC,CAAKkC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACrB,uBAA4BlC,CAAK+B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAYE,IAC7C,CAESE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IACZ,CACF,CAAA,CAAA,CAAA,CAAA,CCdQC,CAAsBlD,CAAAA,CAAAA,CAAAA,CACIC,IACnC,CAAAkD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAC,EAAA1C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,EAAA,CAAuCP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACrCG,EACAkC,CACAa,CAAAA,CAAAA,CACAC,EACAX,CACAR,CAAAA,CAAAA,CANqChC,CAOrCF,CAPFU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,4BA2BC,CAAA,CAAA,CAAA,CAAA,CATO4C,8DAAsB,CAAA,CAAA,CAEtBlC,oHACY,CAAVX,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAY,EAAMD,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAX,OAAA,CAAAA,CAAAA,CAAAA,CAAAU,KAAAN,CAEVlD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ4F,IAAI,CAAC1C,CAAAA,CAAAA,CAAAA,CAAAA,CAAK2C,QAAQ3I,CAASmG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAoBqC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAC,GAAAhC,CAApBN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEzCA,KAAKyC,sBACN,uEAjBC,CAAMG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWC,QAET7C,CAAKgC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,oBAEvBhC,CAAK8C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAwBF,GACnC5C,CAAK+C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAmBC,OAAOJ,CAASK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQC,WAAU,QAa7DtD,CAAA,CAAA,CAAA,CAAA,CCpCQuD,EAAqB,CAChCC,CAAAA,CAAyB,EAEzB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMR,EAAWC,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAQhC,OANA7B,CAAOqC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQD,GAAY1H,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE4H,EAAKC,CACxCX,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASK,QACNO,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACdC,aAAaC,CAAUJ,CAAAA,CAAAA,CAAAA,CAAMC,EAAM,CAGjCX,CAAAA,CAAAA,CAAAA,CAAQ,CCFJe,CAAAA,CAAAA,CAAkBzE,GACQC,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAyE,EAAAC,CAAAC,CAAAA,CAAAA,CAAAC,EAAAC,CAAAC,CAAAA,CAAAA,CAAAC,EAAAC,CAAAvE,CAAAA,CAAAA,CAAA,OAAAA,CACpD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA+BP,EAC7BgC,CACA7B,CAAAA,CAAAA,CACA4C,EACAgC,CAJ6B/E,CAAAA,CAK7BF,IALFU,8CAQEgE,CAAoB9D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAC,UAAA,CAEpB8D,CAAAA,CAAAA,CAAAA,CAAkB/D,IAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAqClBkE,EAAAnE,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAmBqE,GAChB/J,CACC0F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKsE,OAAOC,CAAQjK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAI/B6J,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAApE,IAAAC,CAAgBqE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAczJ,IAC5BoF,CAAKsE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOE,YAAc5J,CAAI,CAAA,CAAA,CAAA,CAgBjC,CAbO6H,2JACyB,CAAvB7C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAY,EAAMiC,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA7C,OAAA,CAAAA,CAAAA,CAAAA,CAAAU,KAAAN,CAE7BG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAI4D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAK,CAAJ3D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,MACAG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI4D,EAAA,CAAAG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAJzD,KAAAN,CAEAG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIkE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAJ5D,KAAAN,CAAsB5F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW4F,KAAK/F,CACtCkG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAImE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAJ7D,KAAAN,CAAmBrF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQqF,KAAK/F,CAEhC+F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK4B,UAAUzB,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAqBkE,EAAA,CAACO,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKzE,MAAO5F,CAEjD4F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK4B,UAAUzB,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAkBmE,EAAA,CAACM,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKzE,MAAOrF,KAC/C,sFAxDCiG,CAAAZ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI6D,EAAU7D,CAAK0E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAE,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAC5C9D,CAAAZ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI8D,EAAS,CAAIa,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACf,KAAM,CAAA/E,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,OAAe,CAAfA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAO,EAAAH,CAAI6D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAQe,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAhF,OAAA,CAAAA,CAAAA,CAAAA,CAAE4D,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,GAClD,CAAE9C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQV,KAAKU,cAEjBP,EAAAH,CAAI6D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAQgB,CAAa1E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAI4D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAI,GAAmBS,CAAKzE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACrDG,EAAAH,CAAI4D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAI,CAAJ1D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,KACD,eAGCG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW6D,EAAA,CAACiB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACV3B,EAAmB,CACjB/B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWpB,KAAKoB,CAChB2D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ/E,KAAKsE,CAAOS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACpB9E,QAASD,CAAKC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAGlBE,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU8D,EAAA,CAACkB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,KACnB7E,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI6D,EAAA,CAAQoB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACZjF,KAAK2C,CAAQ3I,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,GAEvB,eAGCgG,CAAKsE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,IAAIY,CAChB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,IAAAtF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,QAAfA,CAAAI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKmF,kBAAU,CAAAvF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAAA,CAAE4D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAc,iBAAiB,CACtD,CAAA,CAAA,CAAE9C,OAAQV,CAAKU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAGjBV,KAAKsE,CAAOc,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,KAClBjF,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI6D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQwB,MAAM,CAErB,CAAA,CAAA,CAAA,CAyBFzF,CAAA,CCxEQ0F,CAAAA,CAAAA,CAAAA,CAAAA,CAAyBpG,GACCC,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAoG,EAAAC,CAAAC,CAAAA,CAAAA,CAAAC,EAAAC,CAAAC,CAAAA,CAAAA,CAAAC,EAAAC,CAAAC,CAAAA,CAAAA,CAAAC,EAAAC,CAAAC,CAAAA,CAAAA,CAAAtG,EAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACpD,cAAsCP,CACpCgC,CAAAA,CAAAA,CACA7B,EACA4C,CACAgC,CAAAA,CAAAA,CAJoC/E,CAKpCF,CALFU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,4BAQE2F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAwBzF,IAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAExByF,EAAsB1F,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAEtB0F,CAAAA,CAAAA,CAAAA,CAA0B3F,IAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAE1B2F,EAAwB5F,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,GAoExBiG,CAAAlG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAC,KAAiBqE,CAAc7J,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC7BwF,KAAKmG,CAAc5C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ/I,CAAK,CAGlC0L,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAnG,IAAAC,CAA2BqE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACxB+B,IACCpG,CAAKmG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAcE,WAAaD,CAAkB,CAAA,CAAA,CAAA,CAAK,YAAY,CAqBxE,CAAA,CAAA,CAAA,CAjBO3D,2JACyB,CAAvB7C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAY,EAAMiC,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA7C,OAAA,CAAAA,CAAAA,CAAAA,CAAAU,KAAAN,CAE7BG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIuF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAS,GAAJ1F,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACAG,EAAAH,CAAIuF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAK,CAAJtF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,MACAG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIuF,EAAA,CAAAO,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAJxF,KAAAN,CAEAG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIiG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAJ3F,KAAAN,CAAoBzF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASyF,KAAK/F,CAClCkG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,CAAIkG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAJ5F,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAA8BvF,EAAmBuF,CAAK/F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEtD+F,KAAK4B,CAAUzB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAmBiG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACxB,KAAKzE,CAAOzF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAE/CyF,KAAK4B,CACHzB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAA6BkG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACzB,KAAKzE,CACnCvF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAEH,wGA3FCmG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAZ,KAAIwF,CAAcxF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK0E,YAAY,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,gBAChD9D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAZ,KAAIyF,CAAa,CAAA,CAAA,CAAA,CAAA,CAAId,GACnB,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA/E,EAAA,CAAmB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAnBA,EAAAO,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIwF,EAAA,CAAYZ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAG,IAAAhF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,EAAE4D,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,GACtD,CAAE9C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQV,KAAKU,cAEjBP,EAAAH,CAAIwF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAYX,CAAa1E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,CAAIuF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAM,CAAuBpB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKzE,MAC7DG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIuF,EAAA,CAAAM,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAJvF,KAAAN,CACD,CAAA,CAAA,CAAA,CAAA,CAAA,IAGCG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAewF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACV,WACd3B,CAAmB,CAAA,CACjB/B,UAAWpB,CAAKoB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAChB2D,OAAQ/E,CAAKmG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAcG,WAC3BrG,CAASD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKC,WAGlBE,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAcyF,EAAA,CAACT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,KACvB7E,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIwF,EAAA,CAAYP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAChBjF,KAAK2C,CAAQ3I,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAEvB,CAAA,CAAA,CAAA,IAGC4G,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAZ,KAAI0F,CAAgB1F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK0E,YAAY,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,kBAClD9D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAZ,KAAI2F,CAAe,CAAA,CAAA,CAAA,CAAA,CAAIhB,GACrB,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA/E,EAAA,CAAqB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAArBA,EAAAO,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI0F,EAAA,CAAcd,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAG,IAAAhF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,EAAE4D,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,GACxD,CAAE9C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQV,KAAKU,cAEjBP,EAAAH,CAAI0F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAcb,CAAa1E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIuF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAQ,GAAyBtB,CAAKzE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACjEG,EAAAH,CAAIuF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAQ,CAAJzF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,KACD,eAGCG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB0F,EAAA,CAACZ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAChB3B,EAAmB,CACjB/B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWpB,KAAKoB,CAChB2D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ/E,KAAKmG,CAAcI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC3BtG,QAASD,CAAKC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAGlBE,EAAAH,CAAgB2F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAACX,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACzB7E,EAAAH,CAAI0F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAcT,CAClBjF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK2C,QAAQ3I,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAEvB,eAGCgG,CAAKmG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,IAAIK,CACvB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA5G,CAAAI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKmF,gCAAY3B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACf,0CACD,CACH,CAAA,CAAA,CAAE9C,OAAQV,CAAKU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAGjBV,KAAKmG,CAAcM,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,KAC7BtG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIwF,EAAA,CAAYH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,IAGxBrF,CAAKmG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAcO,eAAc,CAC/BvG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAI0F,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAcL,MAAM,CAE3B,CAAA,CAAA,CAAA,CA6BFzF,CAAA,CAAA,CAAA,CAAA,CC/GQ+G,GAAwBzH,CACEC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,IAAAyH,CAAAC,CAAAA,CAAAA,CAAAC,EAAAC,CAAAC,CAAAA,CAAAA,CAAAC,EAAAC,CAAAC,CAAAA,CAAAA,CAAAC,EAAAC,CAAAC,CAAAA,CAAAA,CAAA1H,EAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACpD,cAAqCP,CACnCgC,CAAAA,CAAAA,CACA7B,EACA4C,CACAgC,CAAAA,CAAAA,CAJmC/E,CAKnCF,CALFU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,4BAQEgH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAwB9G,IAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAExB8G,EAAsB/G,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,GAEtB+G,CAA0BhH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAC,UAAA,CAE1BgH,CAAAA,CAAAA,CAAAA,CAAwBjH,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,GAoExBsH,CAAAvH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAC,KAAiBqE,CAAczJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC7BoF,KAAKuH,CAAahE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ3I,CAAI,CAcjC,CAAA,CAAA,CAAA,CAXO6H,2JACyB,QAAvB7C,CAAAY,CAAAA,CAAAA,CAAMiC,yBAAiB,CAAA7C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAAA,CAAAU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,MAE7BG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI4G,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAS,GAAJ/G,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACAG,EAAAH,CAAI4G,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAK,CAAJ3G,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,MACAG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI4G,EAAA,CAAAO,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAJ7G,KAAAN,CAEAG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIsH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAJhH,KAAAN,CAAoBrF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQqF,KAAK/F,CAEjC+F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK4B,UAAUzB,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAmBsH,EAAA,CAAC7C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKzE,MAAOrF,KAChD,oGA/ECiG,CAAAZ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI6G,EAAc7G,CAAK0E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAE,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAChD9D,CAAAZ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI8G,EAAa,CAAInC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACnB,KAAM,CAAA/E,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,OAAmB,CAAnBA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAO,EAAAH,CAAI6G,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAYjC,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAhF,OAAA,CAAAA,CAAAA,CAAAA,CAAE4D,cAAc,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACtD,CAAE9C,CAAQV,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKU,cAEjBP,EAAAH,CAAI6G,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAYhC,CAAa1E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAI4G,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAM,GAAuBzC,CAAKzE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC7DG,EAAAH,CAAI4G,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAM,CAAJ5G,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,KACD,eAGCG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe6G,EAAA,CAAC/B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACd3B,EAAmB,CACjB/B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWpB,KAAKoB,CAChB2D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ/E,KAAKuH,CAAajB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC1BrG,QAASD,CAAKC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAGlBE,EAAAH,CAAc8G,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAC9B,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACvB7E,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI6G,EAAA,CAAY5B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAChBjF,KAAK2C,CAAQ3I,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,GAEvB,eAGC4G,CAAAZ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI+G,EAAgB/G,CAAK0E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAE,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAClD9D,CAAAZ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIgH,EAAe,CAAIrC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACrB,KAAM,CAAA/E,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,OAAqB,CAArBA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAO,EAAAH,CAAI+G,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAcnC,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAhF,OAAA,CAAAA,CAAAA,CAAAA,CAAE4D,cAAc,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACxD,CAAE9C,CAAQV,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKU,cAEjBP,EAAAH,CAAI+G,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAclC,CAAa1E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAI4G,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAQ,GAAyB3C,CAAKzE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACjEG,EAAAH,CAAI4G,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAQ,CAAJ9G,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,KACD,eAGCG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB+G,EAAA,CAACjC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAChB3B,EAAmB,CACjB/B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWpB,KAAKoB,CAChB2D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ/E,KAAKuH,CAAahB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC1BtG,QAASD,CAAKC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAGlBE,EAAAH,CAAgBgH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAChC,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACzB7E,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI+G,EAAA,CAAc9B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAClBjF,KAAK2C,CAAQ3I,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,GAEvB,eAGCgG,CAAKuH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,IAAIf,CACtB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA5G,CAAAI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKmF,gCAAY3B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACf,yCACD,CACH,CAAA,CAAA,CAAE9C,OAAQV,CAAKU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAGjBV,KAAKuH,CAAad,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,KAC5BtG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI6G,EAAA,CAAYxB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,IAGxBrF,CAAKuH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAab,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC9BvG,EAAAH,CAAI+G,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAc1B,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAE3B,EAiBFzF,CAAA,CAAA,CAAA,CAAA,CCnGQ4H,GAAyBtI,CACCC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,IAAAsI,CAAAC,CAAAA,CAAAA,CAAAC,EAAAC,CAAAC,CAAAA,CAAAA,CAAAC,EAAAC,CAAAC,CAAAA,CAAAA,CAAAC,EAAAC,CAAAC,CAAAA,CAAAA,CAAAC,EAAAxI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,EACpD,CAAsCP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACpCgC,EACA7B,CACA4C,CAAAA,CAAAA,CACAgC,EAJoC/E,CAKpCF,CAAAA,CAAAA,CAAAA,CALFU,8CAQE6H,EAAwB3H,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAExB2H,CAAAA,CAAAA,CAAAA,CAAsB5H,IAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAEtB4H,EAA0B7H,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,GAE1B6H,CAAwB9H,CAAAA,CAAAA,CAAAA,CAAAA,CAAAC,UAAA,CAoExBmI,CAAAA,CAAAA,CAAAA,CAAApI,IAAAC,CAAiBqE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAcvJ,IAC7BkF,CAAKqI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAc9E,MAAQzI,CAAK,CAAA,CAAA,CAAA,CAAA,CAGlCsN,EAAArI,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAA2BqE,GACxBiE,CACCtI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKqI,cAAchC,CAAaiC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAkB,GAAK,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAqBxE,CAjBO7F,0IACyB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAvB7C,EAAAY,CAAMiC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,IAAA7C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,EAAAU,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAE7BG,EAAAH,CAAIyH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAS,CAAJ5H,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,MACAG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIyH,EAAA,CAAAK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAJxH,KAAAN,CACAG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIyH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAO,GAAJ1H,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEAG,EAAAH,CAAImI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAJ7H,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAoBnF,CAASmF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK/F,QAClCkG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIoI,EAAA,CAAJ9H,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,KAA8BjF,CAAmBiF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK/F,QAEtD+F,CAAK4B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAUzB,EAAAH,CAAmBmI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAC1D,CAAKzE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOnF,GAE/CmF,CAAK4B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACHzB,EAAAH,CAA6BoI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAC3D,CAAKzE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACnCjF,GAEH,CAAA,CAAA,CAAA,CAAA,gHA3FC6F,EAAAZ,CAAI0H,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAc1H,KAAK0E,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,UAAW,oBAChD9D,EAAAZ,CAAI2H,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,IAAIhD,CACnB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,IAAA/E,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAmB,QAAnBA,CAAAO,CAAAA,CAAAA,CAAAH,KAAI0H,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY9C,WAAG,CAAAhF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAAA,CAAE4D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAc,aAAa,CACtD,CAAA,CAAA,CAAE9C,OAAQV,CAAKU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,MAEjBP,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI0H,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY7C,WAAa1E,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIyH,EAAA,CAAAM,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAuBtD,KAAKzE,CAC7DG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIyH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAM,GAAJzH,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACD,eAGCG,EAAAH,CAAe0H,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAC5C,CACd3B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAmB,CACjB/B,CAAWpB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKoB,UAChB2D,CAAQ/E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKqI,cAAc/B,CAC3BrG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASD,KAAKC,CAGlBE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAc2H,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC3C,WAAU,CACvB7E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAI0H,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAYzC,CAChBjF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK2C,QAAQ3I,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAEvB,eAGC4G,EAAAZ,CAAI4H,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB5H,KAAK0E,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,UAAW,sBAClD9D,EAAAZ,CAAI6H,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,IAAIlD,CACrB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,IAAA/E,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqB,QAArBA,CAAAO,CAAAA,CAAAA,CAAAH,KAAI4H,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAchD,WAAG,CAAAhF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAAA,CAAE4D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAc,aAAa,CACxD,CAAA,CAAA,CAAE9C,OAAQV,CAAKU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,MAEjBP,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI4H,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc/C,WAAa1E,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIyH,EAAA,CAAAQ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAyBxD,KAAKzE,CACjEG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIyH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAQ,GAAJ3H,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACD,eAGCG,EAAAH,CAAiB4H,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAC9C,CAChB3B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAmB,CACjB/B,CAAWpB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKoB,UAChB2D,CAAQ/E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKqI,cAAc9B,CAC3BtG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASD,KAAKC,CAGlBE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAgB6H,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC7C,WAAU,CACzB7E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAI4H,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc3C,CAClBjF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK2C,QAAQ3I,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAEvB,eAGCgG,KAAKqI,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI7B,GACvB,WACE,eAAA5G,EAAAI,CAAKmF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,gBAAY3B,CACf,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACD,GACH,CAAE9C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQV,KAAKU,CAGjBV,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKqI,cAAc5B,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC7BtG,EAAAH,CAAI0H,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAYrC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAGxBrF,KAAKqI,CAAc3B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAc,KAC/BvG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI4H,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAcvC,MAAM,CAE3B,CAAA,CAAA,CAAA,CA6BFzF,CAAA,CC/GQ2I,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiCrJ,GACPC,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAqJ,EAAAC,CAAAC,CAAAA,CAAAA,CAAAC,EAAAC,CAAAC,CAAAA,CAAAA,CAAAC,EAAAlJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,EACpD,CAA8CP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC5CgC,EACA7B,CACA4C,CAAAA,CAAAA,CACAgC,EAJ4C/E,CAK5CF,CAAAA,CAAAA,CAAAA,CALFU,8CAQE4I,EAAoB1I,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,GAEpB0I,CAAkB3I,CAAAA,CAAAA,CAAAA,CAAAA,CAAAC,UAAA,CAwClB8I,CAAAA,CAAAA,CAAAA,CAAA/I,IAAAC,CAAqBqE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAClB0E,CACC/I,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKgJ,sBAAsBpN,CAAYmN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,IActD,CAVOtG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,uHACyB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAvB7C,EAAAY,CAAMiC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,IAAA7C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,EAAAU,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAE7BG,EAAAH,CAAIwI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAK,CAAJvI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,MACAG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIwI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAG,GAAJrI,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEAG,EAAAH,CAAI8I,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAJxI,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAwB/E,EAAc+E,CAAK/F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAE3C+F,KAAK4B,CAAUzB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAuB8I,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACrE,KAAKzE,CAAO/E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IACpD,wEApDC2F,CAAAZ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIyI,EAAUzI,CAAK0E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAE,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAC5C9D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAZ,KAAI0I,CAAS,CAAA,CAAA,CAAA,CAAA,CAAI/D,GACf,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA/E,EAAA,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAfA,EAAAO,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIyI,EAAA,CAAQ7D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAG,IAAAhF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,EAAE4D,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,GAClD,CAAE9C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQV,KAAKU,cAEjBP,EAAAH,CAAIyI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAQ5D,CAAa1E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIwI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAI,GAAmBnE,CAAKzE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACrDG,EAAAH,CAAIwI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAI,CAAJtI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,CACD,CAAA,CAAA,CAAA,CAAA,CAAA,IAGCG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAWyI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC3D,WACV3B,CAAmB,CAAA,CACjB/B,UAAWpB,CAAKoB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAChB2D,OAAQ/E,CAAKgJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAsBjE,OACnC9E,CAASD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKC,WAGlBE,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU0I,EAAA,CAAC1D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,KACnB7E,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIyI,EAAA,CAAQxD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACZjF,KAAK2C,CAAQ3I,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,GAEvB,eAGCgG,CAAKgJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAwB,IAAIC,CAC/B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAArJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAI,KAAKmF,iCAAY3B,cACf,CACD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACH,CAAE9C,CAAQV,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKU,SAGjBV,CAAKgJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAsBE,eAAc,CACvC/I,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIyI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQpD,MAAM,CAErB,CAAA,CAAA,CAAA,CAkBFzF,CAAA,CCzEQuJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAkCjK,GACRC,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAiK,EAAAC,CAAAC,CAAAA,CAAAA,CAAAC,EAAAC,CAAAC,CAAAA,CAAAA,CAAA7J,EAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACpD,cAA+CP,CAC7CgC,CAAAA,CAAAA,CACA7B,EACA4C,CACAgC,CAAAA,CAAAA,CAJ6C/E,CAK7CF,CAAAA,CAAAA,CAAAA,CALFU,8CAQEwJ,EAAoBtJ,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,GAEpBsJ,CAAkBvJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAC,UAAA,CA6CnB,CAAA,CANOyC,2JACyB,QAAvB7C,CAAAY,CAAAA,CAAAA,CAAMiC,yBAAiB,CAAA7C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAAA,CAAAU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,CAE7BG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIoJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAK,GAAJnJ,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACAG,EAAAH,CAAIoJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAG,CAAJjJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,MACD,CAAA,CAAA,CAAA,CAAA,8CAzCCY,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAZ,KAAIqJ,CAAUrJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK0E,YAAY,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,cAC5C9D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAZ,KAAIsJ,CAAS,CAAA,CAAA,CAAA,CAAA,CAAI3E,GACf,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA/E,EAAA,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAfA,CAAAO,CAAAA,CAAAA,CAAAH,KAAIqJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQzE,WAAG,CAAAhF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAAA,CAAE4D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAc,aAAa,CAClD,CAAA,CAAA,CAAE9C,OAAQV,CAAKU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,MAEjBP,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIqJ,EAAA,CAAQxE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa1E,EAAAH,CAAIoJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAI,CAAmB/E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKzE,MACrDG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIoJ,EAAA,CAAAI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAJlJ,KAAAN,CACD,CAAA,CAAA,CAAA,CAAA,CAAA,IAGCG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAWqJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACvE,WACV3B,CAAmB,CAAA,CACjB/B,CAAWpB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKoB,UAChB2D,CAAQ/E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK0J,uBAAuB3E,CACpC9E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASD,KAAKC,CAGlBE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAUsJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACtE,WAAU,CACnB7E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIqJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQpE,OAAO,CAEtB,CAAA,CAAA,CAAA,IAGCjF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK0J,uBAAyB,CAAIT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAChC,WACE,QAAArJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAI,KAAKmF,iCAAY3B,cACf,CACD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACH,CAAE9C,CAAQV,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKU,CAGjBV,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK0J,uBAAuBR,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACxC/I,EAAAH,CAAIqJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAQhE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAErB,EAQFzF,CAAA,CAAA,CAAA,CAAA,CC9DQ+J,GAAkBzK,CACQC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,IAAAyK,CAAAC,CAAAA,CAAAA,CAAAjK,EAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACpD,cAA+BP,CAC7BgC,CAAAA,CAAAA,CACA7B,EACA4C,CACAgC,CAAAA,CAAAA,CAJ6B/E,CAK7BF,CALFU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,4BA0BC,CAAA,CAAA,CAAA,CAAA,CALO4C,2JACyB,CAAvB7C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAY,EAAMiC,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA7C,OAAA,CAAAA,CAAAA,CAAAA,CAAAU,KAAAN,CAE7BG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAI4J,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAC,GAAJvJ,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IACD,8BAhBCA,CAAKtD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,IAAIoN,CAChB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACE,IAAAlK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,QAAfA,CAAAI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKmF,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAvF,OAAA,CAAAA,CAAAA,CAAAA,CAAE4D,cAAc,CAAmC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACpE,CAAE9C,CAAQV,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKU,SAGjBV,CAAKtD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO0I,SAAQ,CAAWvI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAmD,UAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,kBACvBA,CAAK2C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQjG,SACnBsD,CAAK+J,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAc,IAAIC,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACpC,KACF,CAOFpK,CAAAA,CAAA,ICxBQqK,CAAY/K,CAAAA,CAAAA,CAAAA,CAAAA,CACcC,GAEnC,CAA6BE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC3B6K,EACAC,CACAxG,CAAAA,CAAAA,CACA2B,EACAqB,CACAa,CAAAA,CAAAA,CAAAA,CAAAA,CACAe,GACAY,CACAQ,CAAAA,CAAAA,CAAAA,CAAAA,CAT2BtK,CAU3BF,CACMoB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,6FACY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAVX,EAAAY,CAAMD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,IAAAX,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,EAAAU,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IACjB,CCpBMoK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAoB/K,GAHdF,CACjB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA6B8K,GAAU9K,CAERE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAmBgL,aCYpDC,CAAeC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,8BAA+BH"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/lib/widget/state/selectors.ts","../../src/lib/widget/state/asyncActions/helpers.ts","../../src/lib/widget/state/asyncActions/getMe.ts","../../src/lib/widget/state/asyncActions/logout.ts","../../src/lib/widget/state/initialState.ts","../../src/lib/widget/api/apiPaths.ts","../../src/lib/widget/api/sdk/mocks.ts","../../src/lib/widget/api/sdk/createUserSdk.ts","../../src/lib/widget/api/sdk/helpers.ts","../../src/lib/widget/mixins/apiMixin.ts","../../src/lib/widget/api/sdk/index.ts","../../src/lib/widget/mixins/stateManagementMixin.ts","../../src/lib/widget/mixins/fetchWidgetPagesMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initWidgetRootMixin.ts","../../src/lib/widget/mixins/helpers.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initAvatarMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initEmailUserAttrMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initNameUserAttrMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initPhoneUserAttrMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initPasskeyUserAuthMethodMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initPasswordUserAuthMethodMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initLogoutMixin.ts","../../src/lib/widget/mixins/initMixin/initMixin.ts","../../src/lib/widget/index.ts","../../src/lib/index.ts"],"sourcesContent":["import { createSelector } from 'reselect';\nimport { State } from './types';\n\nexport const getMe = (state: State) => state.me.data;\n\nexport const getPicture = createSelector(getMe, (me) => me.picture);\nexport const getEmail = createSelector(getMe, (me) => me.email);\nexport const getIsEmailVerified = createSelector(\n getMe,\n (me) => me.verifiedEmail,\n);\nexport const getName = createSelector(getMe, (me) => me.name);\nexport const getPhone = createSelector(getMe, (me) => me.phone);\nexport const getIsPhoneVerified = createSelector(\n getMe,\n (me) => me.verifiedPhone,\n);\nexport const getHasPasskey = createSelector(getMe, (me) => me.webauthn);\nexport const getHasPassword = createSelector(getMe, (me) => me.password);\n","/* eslint-disable @typescript-eslint/no-shadow */\n/* eslint-disable no-param-reassign */\n\nimport {\n ActionReducerMapBuilder,\n AsyncThunk,\n PayloadAction,\n SerializedError,\n} from '@reduxjs/toolkit';\nimport { State } from '../types';\n\ntype ExtractedArg<T> = T extends AsyncThunk<any, infer U, any> ? U : never;\n\ntype FulfilledAction<T extends AsyncThunk<any, any, any>> = PayloadAction<\n any,\n string,\n {\n arg: ExtractedArg<T>;\n requestId: string;\n },\n never\n>;\n\ntype RejectedAction<T extends AsyncThunk<any, any, any>> = PayloadAction<\n any,\n string,\n {\n arg: ExtractedArg<T>;\n requestId: string;\n },\n SerializedError\n>;\n\ntype PendingAction<T extends AsyncThunk<any, any, any>> = PayloadAction<\n unknown,\n string,\n {\n arg: ExtractedArg<T>;\n requestId: string;\n }\n>;\n\ntype AsyncReducerConfig<T extends AsyncThunk<any, any, any>> = {\n onFulfilled?: (state: State, action: FulfilledAction<T>) => void;\n onRejected?: (state: State, action: RejectedAction<T>) => void;\n onPending?: (state: State, action: PendingAction<T>) => void;\n};\n\nexport const buildAsyncReducer =\n <T extends AsyncThunk<any, any, any>>(action: T) =>\n (...args: AsyncReducerConfig<T>[]) =>\n (builder: ActionReducerMapBuilder<State>) => {\n builder.addCase(action.pending, (state, action) => {\n args.forEach(({ onPending }) => {\n onPending?.(state, action);\n });\n });\n\n builder.addCase(action.fulfilled, (state, action) => {\n args.forEach(({ onFulfilled }) => {\n onFulfilled?.(state, action);\n });\n });\n\n builder.addCase(action.rejected, (state, action) => {\n args.forEach(({ onRejected }) => {\n onRejected?.(state, action);\n });\n });\n };\n\nexport const withRequestStatus = (\n getStateSection: (state: State) => { loading: boolean; error: unknown },\n): AsyncReducerConfig<any> => ({\n onFulfilled: (state) => {\n getStateSection(state).loading = false;\n },\n onPending: (state) => {\n getStateSection(state).loading = true;\n getStateSection(state).error = null;\n },\n onRejected: (state, action) => {\n getStateSection(state).loading = false;\n getStateSection(state).error = action.error;\n },\n});\n","/* eslint-disable no-param-reassign */\n/* eslint-disable @typescript-eslint/no-shadow */\nimport { createAsyncThunk } from '@reduxjs/toolkit';\nimport { Sdk } from '../../api/sdk';\nimport { FirstParameter, State, ThunkConfigExtraApi } from '../types';\nimport { buildAsyncReducer, withRequestStatus } from './helpers';\n\nconst action = createAsyncThunk<\n any,\n FirstParameter<Sdk['user']['me']>,\n ThunkConfigExtraApi\n>('users/me', (arg, { extra: { api } }) => api.user.me());\n\nconst reducer = buildAsyncReducer(action)(\n {\n onFulfilled: (state, action) => {\n state.me.data = action.payload;\n },\n },\n withRequestStatus((state: State) => state.me),\n);\n\nexport const getMe = { action, reducer };\n","/* eslint-disable no-param-reassign */\n/* eslint-disable @typescript-eslint/no-shadow */\nimport { createAsyncThunk } from '@reduxjs/toolkit';\nimport { Sdk } from '../../api/sdk';\nimport { FirstParameter, ThunkConfigExtraApi } from '../types';\nimport { buildAsyncReducer } from './helpers';\n\nconst action = createAsyncThunk<\n any,\n FirstParameter<Sdk['user']['logout']>,\n ThunkConfigExtraApi\n>('users/logout', (arg, { extra: { api } }) => api.user.logout());\n\nconst reducer = buildAsyncReducer(action)({\n});\n\nexport const logout = { action, reducer };\n","import { State } from './types';\n\nexport const initialState: State = {\n me: {\n loading: false,\n error: null,\n data: {},\n },\n};\n","export const apiPaths = {\n user: {\n me: '/v1/auth/me',\n },\n};\n","import { User } from '../types';\n\nconst me: () => Promise<User> = async () =>\n new Promise((resolve) => {\n resolve({\n loginIds: [`user@company.com`],\n externalIds: [`user@company.com`],\n userId: `user-1`,\n name: `Test User`,\n email: `user@company.com`,\n roleNames: [`Role`],\n phone: `+1-202-555-010`,\n verifiedEmail: true,\n verifiedPhone: true,\n userTenants: [],\n status: 'enabled',\n editable: true,\n createdTime: new Date().getTime(),\n customAttributes: {},\n familyName: '',\n givenName: '',\n middleName: '',\n picture:\n 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSzmudcbKkbOue75DaM9HDDrt0W39SJLBH-3HPK3s-K1w&s',\n password: true,\n SAML: false,\n test: false,\n TOTP: false,\n webauthn: true,\n });\n });\n\nconst user = {\n me,\n};\n\nexport { user };\n","import { apiPaths } from '../apiPaths';\nimport { HttpClient } from '../types';\nimport { withErrorHandler } from './helpers';\nimport { user } from './mocks';\n\nexport const createUserSdk = ({\n httpClient,\n mock,\n}: {\n httpClient: HttpClient;\n tenant: string;\n mock: boolean;\n}) => {\n const me = async () => {\n if (mock) {\n return user.me();\n }\n const res = await httpClient.get(apiPaths.user.me);\n\n await withErrorHandler(res);\n\n return res.json();\n };\n\n return {\n me,\n };\n};\n","export const withErrorHandler = async (res: Response) => {\n const text = await res.text();\n const json = JSON.parse(text);\n\n if (!res.ok) {\n const descopeErrorMsg = `${json.errorDescription}${\n json.errorMessage ? `: ${json.errorMessage}` : ''\n }`;\n throw Error(descopeErrorMsg || `${res.status} ${res.statusText}`);\n }\n\n res.json = () => Promise.resolve(json);\n res.text = () => Promise.resolve(text);\n};\n","import { compose, createSingletonMixin } from '@descope/sdk-helpers';\nimport {\n createValidateAttributesMixin,\n loggerMixin,\n observeAttributesMixin,\n projectIdMixin,\n} from '@descope/sdk-mixins';\nimport { Sdk, createSdk } from '../api/sdk';\n\nexport const apiMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) => {\n const BaseClass = compose(\n projectIdMixin,\n observeAttributesMixin,\n loggerMixin,\n createValidateAttributesMixin({\n tenant: createValidateAttributesMixin.missingAttrValidator,\n }),\n )(superclass);\n\n return class ApiMixinClass extends BaseClass {\n #api: Sdk;\n\n #createSdk() {\n this.logger.debug('creating an sdk instance');\n this.#api = createSdk(\n { projectId: this.projectId, baseUrl: this.baseUrl },\n this.tenant,\n this.mock === 'true',\n );\n }\n\n get baseUrl() {\n return this.getAttribute('base-url');\n }\n\n get tenant() {\n return this.getAttribute('tenant');\n }\n\n get mock() {\n return this.getAttribute('mock');\n }\n\n get api() {\n if (!this.#api) {\n this.#createSdk();\n }\n\n return this.#api;\n }\n\n async init() {\n await super.init?.();\n\n this.observeAttributes(['project-id', 'base-url', 'tenant'], () => {\n if (this.#api) {\n this.#createSdk();\n }\n });\n }\n };\n },\n);\n","import createWebSdk from '@descope/web-js-sdk';\nimport { createUserSdk } from './createUserSdk';\nimport '@descope/core-js-sdk';\n\nexport const createSdk = (\n config: Parameters<typeof createWebSdk>[0],\n tenant: string,\n mock: boolean,\n) => {\n const webSdk = createWebSdk({ ...config, persistTokens: true });\n\n return {\n user: {\n ...createUserSdk({ httpClient: webSdk.httpClient, tenant, mock }),\n logout: !mock ? webSdk.logout :\n <typeof webSdk.logout><unknown>(async () => { }),\n },\n };\n};\n\nexport type Sdk = ReturnType<typeof createSdk>;\n","/* eslint-disable no-param-reassign */\nimport { compose, createSingletonMixin } from '@descope/sdk-helpers';\nimport {\n createStateManagementMixin,\n initLifecycleMixin,\n loggerMixin,\n} from '@descope/sdk-mixins';\nimport { getMe, logout } from '../state/asyncActions';\nimport { initialState } from '../state/initialState';\nimport { apiMixin } from './apiMixin';\n\nexport const stateManagementMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) => {\n const BaseClass = compose(\n createStateManagementMixin({\n name: 'widget',\n initialState,\n reducers: {},\n extraReducers: (builder) => {\n getMe.reducer(builder);\n logout.reducer(builder);\n },\n asyncActions: {\n getMe: getMe.action,\n logout: logout.action,\n },\n }),\n initLifecycleMixin,\n loggerMixin,\n apiMixin,\n )(superclass);\n return class StateManagementMixinClass extends BaseClass {\n state = initialState;\n\n constructor(...args: any) {\n super(...args);\n\n this.subscribe((state) => {\n this.logger.debug('State update:', state);\n this.state = state;\n });\n }\n };\n },\n);\n","import { compose, createSingletonMixin } from '@descope/sdk-helpers';\nimport {\n createValidateAttributesMixin,\n staticResourcesMixin,\n} from '@descope/sdk-mixins';\n\nconst WIDGET_PAGES_BASE_DIR = 'user-profile-widget';\n\nexport const fetchWidgetPagesMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) => {\n const BaseClass = compose(\n staticResourcesMixin,\n createValidateAttributesMixin({\n 'widget-id': createValidateAttributesMixin.missingAttrValidator,\n }),\n )(superclass);\n return class FetchWidgetPagesMixinClass extends BaseClass {\n get widgetId() {\n return this.getAttribute('widget-id');\n }\n\n async fetchWidgetPage(filename: string) {\n const res = await this.fetchStaticResource(\n `${WIDGET_PAGES_BASE_DIR}/${this.widgetId}/${filename}`,\n 'text',\n );\n return res.body;\n }\n };\n },\n);\n","import {\n compose,\n createSingletonMixin,\n createTemplate,\n} from '@descope/sdk-helpers';\nimport {\n descopeUiMixin,\n initElementMixin,\n initLifecycleMixin,\n loggerMixin,\n} from '@descope/sdk-mixins';\nimport { fetchWidgetPagesMixin } from '../../fetchWidgetPagesMixin';\nimport { stateManagementMixin } from '../../stateManagementMixin';\n\nexport const initWidgetRootMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class InitWidgetRootMixinClass extends compose(\n loggerMixin,\n initLifecycleMixin,\n descopeUiMixin,\n initElementMixin,\n fetchWidgetPagesMixin,\n stateManagementMixin,\n )(superclass) {\n async #initWidgetRoot() {\n const template = createTemplate(\n // await import('../../../../../../test/mocks/rootMock').then(module => module.default)\n await this.fetchWidgetPage('root.html'),\n );\n await this.loadDescopeUiComponents(template);\n this.contentRootElement.append(template.content.cloneNode(true));\n }\n\n // eslint-disable-next-line class-methods-use-this, @typescript-eslint/no-empty-function\n async onWidgetRootReady() {}\n\n async init() {\n await super.init?.();\n\n await Promise.all([this.actions.getMe(), this.#initWidgetRoot()]);\n\n this.onWidgetRootReady();\n }\n },\n);\n","import { createTemplate, kebabCase } from '@descope/sdk-helpers';\n\ntype FlowConfig = {\n projectId: string;\n flowId: string;\n baseUrl?: string;\n};\nexport const createFlowTemplate = (\n flowConfig: FlowConfig = {} as FlowConfig,\n) => {\n const template = createTemplate(`<descope-wc></descope-wc>`);\n\n Object.entries(flowConfig).forEach(([key, value]) => {\n template.content\n .querySelector('descope-wc')\n .setAttribute(kebabCase(key), value);\n });\n\n return template;\n};\n","import {\n AvatarDriver,\n FlowDriver,\n ModalDriver,\n} from '@descope/sdk-component-drivers';\nimport {\n compose,\n createSingletonMixin,\n withMemCache,\n} from '@descope/sdk-helpers';\nimport { loggerMixin, modalMixin } from '@descope/sdk-mixins';\nimport { getName, getPicture } from '../../../state/selectors';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\nimport { createFlowTemplate } from '../../helpers';\n\nexport const initAvatarMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class AvatarMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n modalMixin,\n )(superclass) {\n avatar: AvatarDriver;\n\n #modal: ModalDriver;\n\n #flow: FlowDriver;\n\n #initModal() {\n this.#modal = this.createModal({ 'data-id': 'update-pic' });\n this.#flow = new FlowDriver(\n () => this.#modal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#modal.afterClose = this.#initModalContent.bind(this);\n this.#initModalContent();\n }\n\n #initModalContent() {\n this.#modal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.avatar.flowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#flow.onSuccess(() => {\n this.#modal.close();\n this.actions.getMe();\n });\n }\n\n #initAvatar() {\n this.avatar = new AvatarDriver(\n () => this.shadowRoot?.querySelector('descope-avatar'),\n { logger: this.logger },\n );\n\n this.avatar.onClick(() => {\n this.#modal.open();\n });\n }\n\n #onPictureUpdate = withMemCache(\n (picture: ReturnType<typeof getPicture>) => {\n this.avatar.image = picture;\n },\n );\n\n #onNameUpdate = withMemCache((name: ReturnType<typeof getName>) => {\n this.avatar.displayName = name;\n });\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initAvatar();\n this.#initModal();\n\n this.#onPictureUpdate(getPicture(this.state));\n this.#onNameUpdate(getName(this.state));\n\n this.subscribe(this.#onPictureUpdate.bind(this), getPicture);\n\n this.subscribe(this.#onNameUpdate.bind(this), getName);\n }\n },\n);\n","import {\n FlowDriver,\n ModalDriver,\n UserAttributeDriver,\n} from '@descope/sdk-component-drivers';\nimport {\n compose,\n createSingletonMixin,\n withMemCache,\n} from '@descope/sdk-helpers';\nimport { loggerMixin, modalMixin } from '@descope/sdk-mixins';\nimport { getEmail, getIsEmailVerified } from '../../../state/selectors';\nimport { createFlowTemplate } from '../../helpers';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\n\nexport const initEmailUserAttrMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class EmailUserAttrMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n modalMixin,\n )(superclass) {\n emailUserAttr: UserAttributeDriver;\n\n #editModal: ModalDriver;\n\n #editFlow: FlowDriver;\n\n #deleteModal: ModalDriver;\n\n #deleteFlow: FlowDriver;\n\n #initEditModal() {\n this.#editModal = this.createModal({ 'data-id': 'edit-email' });\n this.#editFlow = new FlowDriver(\n () => this.#editModal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#editModal.afterClose = this.#initEditModalContent.bind(this);\n this.#initEditModalContent();\n }\n\n #initEditModalContent() {\n this.#editModal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.emailUserAttr.editFlowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#editFlow.onSuccess(() => {\n this.#editModal.close();\n this.actions.getMe();\n });\n }\n\n #initDeleteModal() {\n this.#deleteModal = this.createModal({ 'data-id': 'delete-email' });\n this.#deleteFlow = new FlowDriver(\n () => this.#deleteModal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#deleteModal.afterClose = this.#initDeleteModalContent.bind(this);\n this.#initDeleteModalContent();\n }\n\n #initDeleteModalContent() {\n this.#deleteModal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.emailUserAttr.deleteFlowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#deleteFlow.onSuccess(() => {\n this.#deleteModal.close();\n this.actions.getMe();\n });\n }\n\n #initEmailUserAttr() {\n this.emailUserAttr = new UserAttributeDriver(\n () =>\n this.shadowRoot?.querySelector(\n 'descope-user-attribute[data-id=\"email\"]',\n ),\n { logger: this.logger },\n );\n\n this.emailUserAttr.onEditClick(() => {\n this.#editModal.open();\n });\n\n this.emailUserAttr.onDeleteClick(() => {\n this.#deleteModal.open();\n });\n }\n\n #onValueUpdate = withMemCache((email: ReturnType<typeof getEmail>) => {\n this.emailUserAttr.value = email;\n });\n\n #onValueBadgeLabelUpdate = withMemCache(\n (isEmailVerified: ReturnType<typeof getIsEmailVerified>) => {\n this.emailUserAttr.badgeLabel = isEmailVerified ? '' : 'Unverified';\n },\n );\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initEmailUserAttr();\n this.#initEditModal();\n this.#initDeleteModal();\n\n this.#onValueUpdate(getEmail(this.state));\n this.#onValueBadgeLabelUpdate(getIsEmailVerified(this.state));\n\n this.subscribe(this.#onValueUpdate.bind(this), getEmail);\n\n this.subscribe(\n this.#onValueBadgeLabelUpdate.bind(this),\n getIsEmailVerified,\n );\n }\n },\n);\n","import {\n FlowDriver,\n ModalDriver,\n UserAttributeDriver,\n} from '@descope/sdk-component-drivers';\nimport {\n compose,\n createSingletonMixin,\n withMemCache,\n} from '@descope/sdk-helpers';\nimport { loggerMixin, modalMixin } from '@descope/sdk-mixins';\nimport { getName } from '../../../state/selectors';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\nimport { createFlowTemplate } from '../../helpers';\n\nexport const initNameUserAttrMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class NameUserAttrMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n modalMixin,\n )(superclass) {\n nameUserAttr: UserAttributeDriver;\n\n #editModal: ModalDriver;\n\n #editFlow: FlowDriver;\n\n #deleteModal: ModalDriver;\n\n #deleteFlow: FlowDriver;\n\n #initEditModal() {\n this.#editModal = this.createModal({ 'data-id': 'edit-name' });\n this.#editFlow = new FlowDriver(\n () => this.#editModal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#editModal.afterClose = this.#initEditModalContent.bind(this);\n this.#initEditModalContent();\n }\n\n #initEditModalContent() {\n this.#editModal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.nameUserAttr.editFlowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#editFlow.onSuccess(() => {\n this.#editModal.close();\n this.actions.getMe();\n });\n }\n\n #initDeleteModal() {\n this.#deleteModal = this.createModal({ 'data-id': 'delete-name' });\n this.#deleteFlow = new FlowDriver(\n () => this.#deleteModal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#deleteModal.afterClose = this.#initDeleteModalContent.bind(this);\n this.#initDeleteModalContent();\n }\n\n #initDeleteModalContent() {\n this.#deleteModal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.nameUserAttr.deleteFlowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#deleteFlow.onSuccess(() => {\n this.#deleteModal.close();\n this.actions.getMe();\n });\n }\n\n #initNameUserAttr() {\n this.nameUserAttr = new UserAttributeDriver(\n () =>\n this.shadowRoot?.querySelector(\n 'descope-user-attribute[data-id=\"name\"]',\n ),\n { logger: this.logger },\n );\n\n this.nameUserAttr.onEditClick(() => {\n this.#editModal.open();\n });\n\n this.nameUserAttr.onDeleteClick(() => {\n this.#deleteModal.open();\n });\n }\n\n #onValueUpdate = withMemCache((name: ReturnType<typeof getName>) => {\n this.nameUserAttr.value = name;\n });\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initNameUserAttr();\n this.#initEditModal();\n this.#initDeleteModal();\n\n this.#onValueUpdate(getName(this.state));\n\n this.subscribe(this.#onValueUpdate.bind(this), getName);\n }\n },\n);\n","import {\n FlowDriver,\n ModalDriver,\n UserAttributeDriver,\n} from '@descope/sdk-component-drivers';\nimport {\n compose,\n createSingletonMixin,\n withMemCache,\n} from '@descope/sdk-helpers';\nimport { loggerMixin, modalMixin } from '@descope/sdk-mixins';\nimport { getIsPhoneVerified, getPhone } from '../../../state/selectors';\nimport { createFlowTemplate } from '../../helpers';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\n\nexport const initPhoneUserAttrMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class PhoneUserAttrMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n modalMixin,\n )(superclass) {\n phoneUserAttr: UserAttributeDriver;\n\n #editModal: ModalDriver;\n\n #editFlow: FlowDriver;\n\n #deleteModal: ModalDriver;\n\n #deleteFlow: FlowDriver;\n\n #initEditModal() {\n this.#editModal = this.createModal({ 'data-id': 'edit-phone' });\n this.#editFlow = new FlowDriver(\n () => this.#editModal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#editModal.afterClose = this.#initEditModalContent.bind(this);\n this.#initEditModalContent();\n }\n\n #initEditModalContent() {\n this.#editModal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.phoneUserAttr.editFlowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#editFlow.onSuccess(() => {\n this.#editModal.close();\n this.actions.getMe();\n });\n }\n\n #initDeleteModal() {\n this.#deleteModal = this.createModal({ 'data-id': 'delete-phone' });\n this.#deleteFlow = new FlowDriver(\n () => this.#deleteModal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#deleteModal.afterClose = this.#initDeleteModalContent.bind(this);\n this.#initDeleteModalContent();\n }\n\n #initDeleteModalContent() {\n this.#deleteModal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.phoneUserAttr.deleteFlowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#deleteFlow.onSuccess(() => {\n this.#deleteModal.close();\n this.actions.getMe();\n });\n }\n\n #initPhoneUserAttr() {\n this.phoneUserAttr = new UserAttributeDriver(\n () =>\n this.shadowRoot?.querySelector(\n 'descope-user-attribute[data-id=\"phone\"]',\n ),\n { logger: this.logger },\n );\n\n this.phoneUserAttr.onEditClick(() => {\n this.#editModal.open();\n });\n\n this.phoneUserAttr.onDeleteClick(() => {\n this.#deleteModal.open();\n });\n }\n\n #onValueUpdate = withMemCache((phone: ReturnType<typeof getPhone>) => {\n this.phoneUserAttr.value = phone;\n });\n\n #onValueBadgeLabelUpdate = withMemCache(\n (isPhoneVerified: ReturnType<typeof getIsPhoneVerified>) => {\n this.phoneUserAttr.badgeLabel = isPhoneVerified ? '' : 'Unverified';\n },\n );\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initPhoneUserAttr();\n this.#initEditModal();\n this.#initDeleteModal();\n\n this.#onValueUpdate(getPhone(this.state));\n this.#onValueBadgeLabelUpdate(getIsPhoneVerified(this.state));\n\n this.subscribe(this.#onValueUpdate.bind(this), getPhone);\n\n this.subscribe(\n this.#onValueBadgeLabelUpdate.bind(this),\n getIsPhoneVerified,\n );\n }\n },\n);\n","import {\n FlowDriver,\n ModalDriver,\n UserAuthMethodDriver,\n} from '@descope/sdk-component-drivers';\nimport {\n compose,\n createSingletonMixin,\n withMemCache,\n} from '@descope/sdk-helpers';\nimport { loggerMixin, modalMixin } from '@descope/sdk-mixins';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\nimport { getHasPasskey } from '../../../state/selectors';\nimport { createFlowTemplate } from '../../helpers';\n\nexport const initPasskeyUserAuthMethodMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class PasskeyUserAuthMethodMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n modalMixin,\n )(superclass) {\n passkeyUserAuthMethod: UserAuthMethodDriver;\n\n #modal: ModalDriver;\n\n #flow: FlowDriver;\n\n #initModal() {\n this.#modal = this.createModal({ 'data-id': 'passkey' });\n this.#flow = new FlowDriver(\n () => this.#modal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#modal.afterClose = this.#initModalContent.bind(this);\n this.#initModalContent();\n }\n\n #initModalContent() {\n this.#modal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.passkeyUserAuthMethod.flowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#flow.onSuccess(() => {\n this.#modal.close();\n this.actions.getMe();\n });\n }\n\n #initPhoneUserAttr() {\n this.passkeyUserAuthMethod = new UserAuthMethodDriver(\n () =>\n this.shadowRoot?.querySelector(\n 'descope-user-auth-method[data-id=\"passkey\"]',\n ),\n { logger: this.logger },\n );\n\n this.passkeyUserAuthMethod.onButtonClick(() => {\n this.#modal.open();\n });\n }\n\n #onFulfilledUpdate = withMemCache(\n (hasPasskey: ReturnType<typeof getHasPasskey>) => {\n this.passkeyUserAuthMethod.fulfilled = hasPasskey;\n },\n );\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initPhoneUserAttr();\n this.#initModal();\n\n this.#onFulfilledUpdate(getHasPasskey(this.state));\n\n this.subscribe(this.#onFulfilledUpdate.bind(this), getHasPasskey);\n }\n },\n);\n","import {\n FlowDriver,\n ModalDriver,\n UserAuthMethodDriver,\n} from '@descope/sdk-component-drivers';\nimport { compose, createSingletonMixin } from '@descope/sdk-helpers';\nimport { loggerMixin, modalMixin } from '@descope/sdk-mixins';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\nimport { createFlowTemplate } from '../../helpers';\n\nexport const initPasswordUserAuthMethodMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class PasswordUserAuthMethodMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n modalMixin,\n )(superclass) {\n passwordUserAuthMethod: UserAuthMethodDriver;\n\n #modal: ModalDriver;\n\n #flow: FlowDriver;\n\n #initModal() {\n this.#modal = this.createModal({ 'data-id': 'password' });\n this.#flow = new FlowDriver(\n () => this.#modal.ele?.querySelector('descope-wc'),\n { logger: this.logger },\n );\n this.#modal.afterClose = this.#initModalContent.bind(this);\n this.#initModalContent();\n }\n\n #initModalContent() {\n this.#modal.setContent(\n createFlowTemplate({\n projectId: this.projectId,\n flowId: this.passwordUserAuthMethod.flowId,\n baseUrl: this.baseUrl,\n }),\n );\n this.#flow.onSuccess(() => {\n this.#modal.close();\n });\n }\n\n #initPhoneUserAttr() {\n this.passwordUserAuthMethod = new UserAuthMethodDriver(\n () =>\n this.shadowRoot?.querySelector(\n 'descope-user-auth-method[data-id=\"password\"]',\n ),\n { logger: this.logger },\n );\n\n this.passwordUserAuthMethod.onButtonClick(() => {\n this.#modal.open();\n });\n }\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initPhoneUserAttr();\n this.#initModal();\n }\n },\n);\n","import { ButtonDriver } from '@descope/sdk-component-drivers';\nimport { compose, createSingletonMixin } from '@descope/sdk-helpers';\nimport { loggerMixin, modalMixin } from '@descope/sdk-mixins';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\n\nexport const initLogoutMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class LogoutMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n modalMixin,\n )(superclass) {\n logout: ButtonDriver;\n\n #initLogout() {\n this.logout = new ButtonDriver(\n () =>\n this.shadowRoot?.querySelector('descope-button[data-id=\"logout\"]'),\n { logger: this.logger },\n );\n\n this.logout.onClick(async () => {\n await this.actions.logout();\n this.dispatchEvent(new CustomEvent('logout'));\n });\n }\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initLogout();\n }\n },\n);\n","import { compose, createSingletonMixin } from '@descope/sdk-helpers';\nimport { debuggerMixin, themeMixin } from '@descope/sdk-mixins';\nimport { initAvatarMixin } from './initComponentsMixins/initAvatarMixin';\nimport { initEmailUserAttrMixin } from './initComponentsMixins/initEmailUserAttrMixin';\nimport { initNameUserAttrMixin } from './initComponentsMixins/initNameUserAttrMixin';\nimport { initPhoneUserAttrMixin } from './initComponentsMixins/initPhoneUserAttrMixin';\nimport { initPasskeyUserAuthMethodMixin } from './initComponentsMixins/initPasskeyUserAuthMethodMixin';\nimport { initPasswordUserAuthMethodMixin } from './initComponentsMixins/initPasswordUserAuthMethodMixin';\nimport { initLogoutMixin } from './initComponentsMixins/initLogoutMixin';\n\nexport const initMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n /* @ts-ignore */\n class InitMixinClass extends compose(\n debuggerMixin,\n themeMixin,\n initAvatarMixin,\n initEmailUserAttrMixin,\n initNameUserAttrMixin,\n initPhoneUserAttrMixin,\n initPasskeyUserAuthMethodMixin,\n initPasswordUserAuthMethodMixin,\n initLogoutMixin,\n )(superclass) {\n async init() {\n await super.init?.();\n }\n },\n);\n","import { compose } from '@descope/sdk-helpers';\nimport { initMixin } from './mixins/initMixin/initMixin';\n\nconst rootMixin = (superclass: CustomElementConstructor) =>\n class RootMixinClass extends initMixin(superclass) {};\n\nexport const UserProfileWidget = compose(rootMixin)(HTMLElement);\n","// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type { Unsubscribe } from 'redux'; // workaround for https://github.com/microsoft/TypeScript/issues/42873\nimport { UserProfileWidget } from './widget';\nimport '@descope/web-component';\n\ndeclare global {\n interface HTMLElement {\n attributeChangedCallback(\n attrName: string,\n oldValue: string | null,\n newValue: string | null,\n ): void;\n connectedCallback(): void;\n }\n}\n\nexport default UserProfileWidget;\n\ncustomElements.define('descope-user-profile-widget', UserProfileWidget);\n"],"names":["getMe","state","me","data","getPicture","createSelector","picture","getEmail","email","getIsEmailVerified","verifiedEmail","getName","name","getPhone","phone","getIsPhoneVerified","verifiedPhone","getHasPasskey","webauthn","password","buildAsyncReducer","action","args","builder","addCase","pending","forEach","onPending","fulfilled","onFulfilled","rejected","onRejected","createAsyncThunk","arg","extra","api","user","reducer","payload","getStateSection","loading","error","logout","initialState","apiPaths","__awaiter","Promise","resolve","loginIds","externalIds","userId","roleNames","userTenants","status","editable","createdTime","Date","getTime","customAttributes","familyName","givenName","middleName","SAML","test","TOTP","createUserSdk","httpClient","mock","res","get","text","json","JSON","parse","ok","descopeErrorMsg","errorDescription","errorMessage","Error","statusText","withErrorHandler","apiMixin","createSingletonMixin","superclass","BaseClass","compose","projectIdMixin","observeAttributesMixin","loggerMixin","createValidateAttributesMixin","tenant","missingAttrValidator","_a","constructor","_ApiMixinClass_api","set","this","baseUrl","getAttribute","__classPrivateFieldGet","_ApiMixinClass_instances","_ApiMixinClass_createSdk","call","init","_super","observeAttributes","logger","debug","__classPrivateFieldSet","config","webSdk","createWebSdk","Object","assign","persistTokens","createSdk","projectId","stateManagementMixin","createStateManagementMixin","reducers","extraReducers","asyncActions","initLifecycleMixin","super","subscribe","fetchWidgetPagesMixin","staticResourcesMixin","widgetId","fetchWidgetPage","filename","fetchStaticResource","body","initWidgetRootMixin","_InitWidgetRootMixinClass_instances","_InitWidgetRootMixinClass_initWidgetRoot","descopeUiMixin","initElementMixin","onWidgetRootReady","all","actions","template","createTemplate","loadDescopeUiComponents","contentRootElement","append","content","cloneNode","createFlowTemplate","flowConfig","entries","key","value","querySelector","setAttribute","kebabCase","initAvatarMixin","_AvatarMixinClass_instances","_AvatarMixinClass_modal","_AvatarMixinClass_flow","_AvatarMixinClass_initModal","_AvatarMixinClass_initModalContent","_AvatarMixinClass_initAvatar","_AvatarMixinClass_onPictureUpdate","_AvatarMixinClass_onNameUpdate","modalMixin","withMemCache","avatar","image","displayName","bind","createModal","FlowDriver","ele","afterClose","setContent","flowId","onSuccess","close","AvatarDriver","shadowRoot","onClick","open","initEmailUserAttrMixin","_EmailUserAttrMixinClass_instances","_EmailUserAttrMixinClass_editModal","_EmailUserAttrMixinClass_editFlow","_EmailUserAttrMixinClass_deleteModal","_EmailUserAttrMixinClass_deleteFlow","_EmailUserAttrMixinClass_initEditModal","_EmailUserAttrMixinClass_initEditModalContent","_EmailUserAttrMixinClass_initDeleteModal","_EmailUserAttrMixinClass_initDeleteModalContent","_EmailUserAttrMixinClass_initEmailUserAttr","_EmailUserAttrMixinClass_onValueUpdate","_EmailUserAttrMixinClass_onValueBadgeLabelUpdate","emailUserAttr","isEmailVerified","badgeLabel","editFlowId","deleteFlowId","UserAttributeDriver","onEditClick","onDeleteClick","initNameUserAttrMixin","_NameUserAttrMixinClass_instances","_NameUserAttrMixinClass_editModal","_NameUserAttrMixinClass_editFlow","_NameUserAttrMixinClass_deleteModal","_NameUserAttrMixinClass_deleteFlow","_NameUserAttrMixinClass_initEditModal","_NameUserAttrMixinClass_initEditModalContent","_NameUserAttrMixinClass_initDeleteModal","_NameUserAttrMixinClass_initDeleteModalContent","_NameUserAttrMixinClass_initNameUserAttr","_NameUserAttrMixinClass_onValueUpdate","nameUserAttr","initPhoneUserAttrMixin","_PhoneUserAttrMixinClass_instances","_PhoneUserAttrMixinClass_editModal","_PhoneUserAttrMixinClass_editFlow","_PhoneUserAttrMixinClass_deleteModal","_PhoneUserAttrMixinClass_deleteFlow","_PhoneUserAttrMixinClass_initEditModal","_PhoneUserAttrMixinClass_initEditModalContent","_PhoneUserAttrMixinClass_initDeleteModal","_PhoneUserAttrMixinClass_initDeleteModalContent","_PhoneUserAttrMixinClass_initPhoneUserAttr","_PhoneUserAttrMixinClass_onValueUpdate","_PhoneUserAttrMixinClass_onValueBadgeLabelUpdate","phoneUserAttr","isPhoneVerified","initPasskeyUserAuthMethodMixin","_PasskeyUserAuthMethodMixinClass_instances","_PasskeyUserAuthMethodMixinClass_modal","_PasskeyUserAuthMethodMixinClass_flow","_PasskeyUserAuthMethodMixinClass_initModal","_PasskeyUserAuthMethodMixinClass_initModalContent","_PasskeyUserAuthMethodMixinClass_initPhoneUserAttr","_PasskeyUserAuthMethodMixinClass_onFulfilledUpdate","hasPasskey","passkeyUserAuthMethod","UserAuthMethodDriver","onButtonClick","initPasswordUserAuthMethodMixin","_PasswordUserAuthMethodMixinClass_instances","_PasswordUserAuthMethodMixinClass_modal","_PasswordUserAuthMethodMixinClass_flow","_PasswordUserAuthMethodMixinClass_initModal","_PasswordUserAuthMethodMixinClass_initModalContent","_PasswordUserAuthMethodMixinClass_initPhoneUserAttr","passwordUserAuthMethod","initLogoutMixin","_LogoutMixinClass_instances","_LogoutMixinClass_initLogout","ButtonDriver","dispatchEvent","CustomEvent","initMixin","debuggerMixin","themeMixin","UserProfileWidget","HTMLElement","customElements","define"],"mappings":"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"}
|