@descope/audit-management-widget 0.1.83 → 0.1.85

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 CHANGED
@@ -1,6 +1,6 @@
1
1
 
2
2
  /**
3
- * @descope/audit-management-widget v0.1.83
3
+ * @descope/audit-management-widget v0.1.85
4
4
  */
5
- import{createSingletonMixin as e,compose as t,createTemplate as i,debounce as s,withMemCache as o}from"@descope/sdk-helpers";import{__awaiter as r,__classPrivateFieldGet as a,__classPrivateFieldSet as n}from"tslib";import{projectIdMixin as d,observeAttributesMixin as c,loggerMixin as l,baseUrlMixin as u,createValidateAttributesMixin as h,createStateManagementMixin as g,initLifecycleMixin as m,staticResourcesMixin as p,descopeUiMixin as v,initElementMixin as f,debuggerMixin as w,themeMixin as b}from"@descope/sdk-mixins";import{TextFieldDriver as y,SingleSelectDriver as k,GridDriver as x}from"@descope/sdk-component-drivers";import{createAsyncThunk as R}from"@reduxjs/toolkit";import{createSelector as C}from"reselect";import I from"@descope/web-js-sdk";const L=e=>e.selectedAuditId,j=C((e=>e.auditList.data),(e=>e.map((e=>Object.assign(Object.assign({},e),{occurredFormatted:(null==e?void 0:e.occurred)?new Date(Number(null==e?void 0:e.occurred)||0).toLocaleString():"N/A"})))));C(L,j,((e,t)=>t.find((t=>e===t.id)))),C(L,(e=>!!e));const A=R("audit/search",((e,{extra:{api:t},getState:i})=>{const s=i().searchParams;return t.audit.search(Object.assign(Object.assign({},s),e))})),W=(e=>(...t)=>i=>{i.addCase(e.pending,((e,i)=>{t.forEach((({onPending:t})=>{null==t||t(e,i)}))})),i.addCase(e.fulfilled,((e,i)=>{t.forEach((({onFulfilled:t})=>{null==t||t(e,i)}))})),i.addCase(e.rejected,((e,i)=>{t.forEach((({onRejected:t})=>{null==t||t(e,i)}))}))})(A)({onPending:(e,t)=>{e.searchParams=Object.assign(Object.assign({},e.searchParams),t.meta.arg)},onFulfilled:(e,t)=>{e.auditList.data=t.payload}},(D=e=>e.auditList,{onFulfilled:e=>{D(e).loading=!1},onPending:e=>{D(e).loading=!0,D(e).error=null},onRejected:(e,t)=>{D(e).loading=!1,D(e).error=t.error}}));var D;const S={action:A,reducer:W},$={auditList:{data:[],loading:!1,error:null},searchParams:{text:"",sort:[]},selectedAuditId:""},O={search:"/v1/mgmt/audit/search"},P=e=>r(void 0,[e],void 0,(function*({text:e,sort:t}){return new Promise((i=>{const s=[];for(let e=1;e<9;e+=1)s.push({id:`Audit ${e}`,action:`Action ${e}`,actorId:`Actor ${e}`,type:"info",method:`Method ${e}`,userId:`User ${e}`,device:`Device ${e}`,geo:`Geo ${e}`,remoteAddress:`127.0.0.${e}`,externalIds:[`Login ID ${e}`],occurred:(new Date).getTime()});t.forEach((e=>{s.sort(((t,i)=>{var s,o;return e.desc?null===(o=i[e.field])||void 0===o?void 0:o.localeCompare(t[e.field]):null===(s=t[e.field])||void 0===s?void 0:s.localeCompare(i[e.field])}))})),i(s.filter((t=>t.id.toLowerCase().includes(e.toLowerCase())||t.action.toLowerCase().includes(e.toLowerCase())||t.type.toLowerCase().includes(e.toLowerCase())||t.device.toLowerCase().includes(e.toLowerCase())||t.method.toLowerCase().includes(e.toLowerCase())||t.geo.toLowerCase().includes(e.toLowerCase())||t.remoteAddress.toLowerCase().includes(e.toLowerCase())||t.externalIds.includes(e.toLowerCase())||t.userId.toLowerCase().includes(e.toLowerCase()))))}))})),M=({httpClient:e,tenant:t,mock:i})=>({search:(...s)=>r(void 0,[...s],void 0,(function*({page:s,limit:o=1e4,text:a,sort:n,from:d}={}){if(i)return P({page:s,limit:o,text:a,sort:n},t);const c=yield e.post(O.search,{limit:o,page:s,text:a,sort:n,from:d},{queryParams:{tenant:t}});yield(e=>r(void 0,void 0,void 0,(function*(){const t=yield e.text(),i=JSON.parse(t);if(!e.ok){const t=`${i.errorDescription}${i.errorMessage?`: ${i.errorMessage}`:""}`;throw Error(t||`${e.status} ${e.statusText}`)}e.json=()=>Promise.resolve(i),e.text=()=>Promise.resolve(t)})))(c);return(yield c.json()).audits}))}),E=e((e=>{var i,s,o,g;const m=t(d,c,l,u,h({tenant:h.missingAttrValidator}))(e);return g=class extends m{constructor(){super(...arguments),i.add(this),s.set(this,void 0)}get tenant(){return this.getAttribute("tenant")}get widgetId(){return this.getAttribute("widget-id")}get mock(){return this.getAttribute("mock")}get api(){return a(this,s,"f")||a(this,i,"m",o).call(this),a(this,s,"f")}init(){const e=Object.create(null,{init:{get:()=>super.init}});return r(this,void 0,void 0,(function*(){var t;yield null===(t=e.init)||void 0===t?void 0:t.call(this),this.observeAttributes(["project-id","base-url","tenant"],(()=>{a(this,s,"f")&&a(this,i,"m",o).call(this)}))}))}},s=new WeakMap,i=new WeakSet,o=function(){this.logger.debug("creating an sdk instance"),n(this,s,((e,t,i,s)=>{const o=I(Object.assign(Object.assign({},e),{persistTokens:!0,baseHeaders:{"x-descope-widget-type":"audit-management-widget","x-descope-widget-id":s,"x-descope-widget-version":"0.1.83"}}));return{audit:M({httpClient:o.httpClient,tenant:t,mock:i})}})({projectId:this.projectId,baseUrl:this.baseUrl},this.tenant,"true"===this.mock,this.widgetId),"f")},g})),T=e((e=>{const i=t(g({name:"widget",initialState:$,reducers:{setSelectedAuditId:(e,{payload:t})=>{e.selectedAuditId=t}},extraReducers:e=>{S.reducer(e)},asyncActions:{searchAudit:S.action}}),m,l,E)(e);return class extends i{constructor(...e){super(...e),this.state=$,this.subscribe((e=>{this.logger.debug("State update:",e),this.state=e}))}}})),H=e((e=>{const i=t(p,h({"widget-id":h.missingAttrValidator}))(e);return class extends i{get widgetId(){return this.getAttribute("widget-id")}fetchWidgetPage(e){return r(this,void 0,void 0,(function*(){return(yield this.fetchStaticResource(`audit-management-widget/${this.widgetId}/${e}`,"text")).body}))}}})),q=e((e=>{var s,o,n;return n=class extends(t(l,m,v,f,H,T)(e)){constructor(){super(...arguments),s.add(this)}onWidgetRootReady(){return r(this,void 0,void 0,(function*(){}))}init(){const e=Object.create(null,{init:{get:()=>super.init}});return r(this,void 0,void 0,(function*(){var t;yield null===(t=e.init)||void 0===t?void 0:t.call(this),yield Promise.all([a(this,s,"m",o).call(this)]),this.onWidgetRootReady()}))}},s=new WeakSet,o=function(){return r(this,void 0,void 0,(function*(){const e=i(yield this.fetchWidgetPage("root.html"));yield this.loadDescopeUiComponents(e),this.contentRootElement.append(e.content.cloneNode(!0))}))},n})),F=e((e=>{var i,o,n,d,c;return c=class extends(t(l,q,T)(e)){constructor(){super(...arguments),i.add(this),o.set(this,s((()=>{const e=this.rangeInput.value,t=new Date;let i;switch(e){case"minuets15":i=t.setMinutes(t.getMinutes()-15);break;case"hour":i=t.setHours(t.getHours()-1);break;case"hour6":i=t.setHours(t.getHours()-6);break;case"day":default:i=t.setDate(t.getDate()-1);break;case"day3":i=t.setDate(t.getDate()-3);break;case"week":i=t.setDate(t.getDate()-7);break;case"week2":i=t.setDate(t.getDate()-14);break;case"month":i=t.setMonth(t.getMonth()-1)}this.actions.searchAudit({text:this.searchInput.value,from:Math.floor(new Date(i).getTime())})})))}onWidgetRootReady(){const e=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});return r(this,void 0,void 0,(function*(){var t;yield null===(t=e.onWidgetRootReady)||void 0===t?void 0:t.call(this),a(this,i,"m",n).call(this),a(this,i,"m",d).call(this)}))}},o=new WeakMap,i=new WeakSet,n=function(){var e;this.searchInput=new y(null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelector('[data-id="search-input"]'),{logger:this.logger}),this.searchInput.onInput(a(this,o,"f"))},d=function(){var e;this.rangeInput=new k(null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelector('[data-id="range-input"]'),{logger:this.logger}),this.rangeInput.onInput(a(this,o,"f"))},c})),N=e((e=>{var i,s,n,d;return d=class extends(t(T,l,q)(e)){constructor(){super(...arguments),i.add(this),n.set(this,o((e=>{this.auditTable.data=e})))}onWidgetRootReady(){const e=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});return r(this,void 0,void 0,(function*(){var t;yield null===(t=e.onWidgetRootReady)||void 0===t?void 0:t.call(this),a(this,i,"m",s).call(this),a(this,n,"f").call(this,j(this.state)),this.subscribe(a(this,n,"f").bind(this),j)}))}},n=new WeakMap,i=new WeakSet,s=function(){var e;this.auditTable=new x(null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelector('[data-id="audit-table"]'),{logger:this.logger}),this.auditTable.onSelectedItemsChange((e=>{this.actions.setSelectedAuditId(e.detail.value.map((({id:e})=>e)))}))},d})),U=e((e=>class extends(t(w,b,N,F)(e)){init(){const e=Object.create(null,{init:{get:()=>super.init}});return r(this,void 0,void 0,(function*(){var t;yield null===(t=e.init)||void 0===t?void 0:t.call(this)}))}})),V=t((e=>class extends(U(e)){}))(HTMLElement);customElements.define("descope-audit-management-widget",V);export{V as default};
5
+ import{createSingletonMixin as e,compose as t,createTemplate as s,debounce as i,withMemCache as o}from"@descope/sdk-helpers";import{__rest as r,__awaiter as a,__classPrivateFieldGet as n,__classPrivateFieldSet as d}from"tslib";import{projectIdMixin as c,observeAttributesMixin as l,loggerMixin as u,baseUrlMixin as g,createValidateAttributesMixin as h,createStateManagementMixin as m,initLifecycleMixin as p,staticResourcesMixin as v,descopeUiMixin as f,initElementMixin as w,debuggerMixin as b,themeMixin as y}from"@descope/sdk-mixins";import{TextFieldDriver as _,SingleSelectDriver as j,GridDriver as k}from"@descope/sdk-component-drivers";import{createAsyncThunk as x}from"@reduxjs/toolkit";import{createSelector as C}from"reselect";import I from"@descope/web-js-sdk";const R=(e,t)=>t?{[e]:t}:{},L=e=>{if(!e)return;const t=JSON.parse(e);return Array.isArray(t)&&0===t.length?void 0:t},A=e=>e.selectedAuditId,O=C((e=>e.auditList.data),(e=>e.map((e=>{const t=e||{},{occurred:s,ID:i,type:o}=t,a=t.data,n=void 0===a?{saml_request:"",saml_response:"",saml_generated_user:"",saml_generated_roles:"",oidc_response:"",oidc_generated_user:""}:a,{saml_request:d,saml_response:c,saml_generated_user:l,saml_generated_roles:u,oidc_response:g,oidc_generated_user:h}=n,m=r(n,["saml_request","saml_response","saml_generated_user","saml_generated_roles","oidc_response","oidc_generated_user"]),p=r(t,["occurred","ID","type","data"]);return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},p),{data:m}),R("type",(v=o)&&v[0].toUpperCase()+v.slice(1))),R("saml_request",d)),R("saml_response",c)),R("saml_generated_user",L(l))),R("saml_generated_roles",L(u))),R("oidc_response",L(g))),R("oidc_generated_user",L(h))),{occurredFormatted:s?new Date(Number(s)||0).toLocaleString():"N/A"});var v}))));C(A,O,((e,t)=>t.find((t=>e===t.id)))),C(A,(e=>!!e));const W=x("audit/search",((e,{extra:{api:t},getState:s})=>{const i=s().searchParams;return t.audit.search(Object.assign(Object.assign({},i),e))})),D=(e=>(...t)=>s=>{s.addCase(e.pending,((e,s)=>{t.forEach((({onPending:t})=>{null==t||t(e,s)}))})),s.addCase(e.fulfilled,((e,s)=>{t.forEach((({onFulfilled:t})=>{null==t||t(e,s)}))})),s.addCase(e.rejected,((e,s)=>{t.forEach((({onRejected:t})=>{null==t||t(e,s)}))}))})(W)({onPending:(e,t)=>{e.searchParams=Object.assign(Object.assign({},e.searchParams),t.meta.arg)},onFulfilled:(e,t)=>{e.auditList.data=t.payload}},(S=e=>e.auditList,{onFulfilled:e=>{S(e).loading=!1},onPending:e=>{S(e).loading=!0,S(e).error=null},onRejected:(e,t)=>{S(e).loading=!1,S(e).error=t.error}}));var S;const $={action:W,reducer:D},P={auditList:{data:[],loading:!1,error:null},searchParams:{text:"",sort:[]},selectedAuditId:""},M={search:"/v1/mgmt/audit/search"},q=e=>a(void 0,[e],void 0,(function*({text:e,sort:t}){return new Promise((s=>{const i=[];for(let e=1;e<9;e+=1)i.push({id:`Audit ${e}`,action:`Action ${e}`,actorId:`Actor ${e}`,type:"info",method:`Method ${e}`,userId:`User ${e}`,device:`Device ${e}`,geo:`Geo ${e}`,remoteAddress:`127.0.0.${e}`,externalIds:[`Login ID ${e}`],occurred:(new Date).getTime()});t.forEach((e=>{i.sort(((t,s)=>{var i,o;return e.desc?null===(o=s[e.field])||void 0===o?void 0:o.localeCompare(t[e.field]):null===(i=t[e.field])||void 0===i?void 0:i.localeCompare(s[e.field])}))})),s(i.filter((t=>t.id.toLowerCase().includes(e.toLowerCase())||t.action.toLowerCase().includes(e.toLowerCase())||t.type.toLowerCase().includes(e.toLowerCase())||t.device.toLowerCase().includes(e.toLowerCase())||t.method.toLowerCase().includes(e.toLowerCase())||t.geo.toLowerCase().includes(e.toLowerCase())||t.remoteAddress.toLowerCase().includes(e.toLowerCase())||t.externalIds.includes(e.toLowerCase())||t.userId.toLowerCase().includes(e.toLowerCase()))))}))})),E=({httpClient:e,tenant:t,mock:s})=>({search:(...i)=>a(void 0,[...i],void 0,(function*({page:i,limit:o=1e4,text:r,sort:n,from:d}={}){if(s)return q({page:i,limit:o,text:r,sort:n},t);const c=yield e.post(M.search,{limit:o,page:i,text:r,sort:n,from:d},{queryParams:{tenant:t}});yield(e=>a(void 0,void 0,void 0,(function*(){const t=yield e.text(),s=JSON.parse(t);if(!e.ok){const t=`${s.errorDescription}${s.errorMessage?`: ${s.errorMessage}`:""}`;throw Error(t||`${e.status} ${e.statusText}`)}e.json=()=>Promise.resolve(s),e.text=()=>Promise.resolve(t)})))(c);return(yield c.json()).audits}))}),T=e((e=>{var s,i,o,r;const m=t(c,l,u,g,h({tenant:h.missingAttrValidator}))(e);return r=class extends m{constructor(){super(...arguments),s.add(this),i.set(this,void 0)}get tenant(){return this.getAttribute("tenant")}get widgetId(){return this.getAttribute("widget-id")}get mock(){return this.getAttribute("mock")}get api(){return n(this,i,"f")||n(this,s,"m",o).call(this),n(this,i,"f")}init(){const e=Object.create(null,{init:{get:()=>super.init}});return a(this,void 0,void 0,(function*(){var t;yield null===(t=e.init)||void 0===t?void 0:t.call(this),this.observeAttributes(["project-id","base-url","tenant"],(()=>{n(this,i,"f")&&n(this,s,"m",o).call(this)}))}))}},i=new WeakMap,s=new WeakSet,o=function(){this.logger.debug("creating an sdk instance"),d(this,i,((e,t,s,i)=>{const o=I(Object.assign(Object.assign({},e),{persistTokens:!0,baseHeaders:{"x-descope-widget-type":"audit-management-widget","x-descope-widget-id":i,"x-descope-widget-version":"0.1.85"}}));return{audit:E({httpClient:o.httpClient,tenant:t,mock:s})}})({projectId:this.projectId,baseUrl:this.baseUrl},this.tenant,"true"===this.mock,this.widgetId),"f")},r})),H=e((e=>{const s=t(m({name:"widget",initialState:P,reducers:{setSelectedAuditId:(e,{payload:t})=>{e.selectedAuditId=t}},extraReducers:e=>{$.reducer(e)},asyncActions:{searchAudit:$.action}}),p,u,T)(e);return class extends s{constructor(...e){super(...e),this.state=P,this.subscribe((e=>{this.logger.debug("State update:",e),this.state=e}))}}})),N=e((e=>{const s=t(v,h({"widget-id":h.missingAttrValidator}))(e);return class extends s{get widgetId(){return this.getAttribute("widget-id")}fetchWidgetPage(e){return a(this,void 0,void 0,(function*(){return(yield this.fetchStaticResource(`audit-management-widget/${this.widgetId}/${e}`,"text")).body}))}}})),U=e((e=>{var i,o,r;return r=class extends(t(u,p,f,w,N,H)(e)){constructor(){super(...arguments),i.add(this)}onWidgetRootReady(){return a(this,void 0,void 0,(function*(){}))}init(){const e=Object.create(null,{init:{get:()=>super.init}});return a(this,void 0,void 0,(function*(){var t;yield null===(t=e.init)||void 0===t?void 0:t.call(this),yield Promise.all([n(this,i,"m",o).call(this)]),this.onWidgetRootReady()}))}},i=new WeakSet,o=function(){return a(this,void 0,void 0,(function*(){const e=s(yield this.fetchWidgetPage("root.html"));yield this.loadDescopeUiComponents(e),this.contentRootElement.append(e.content.cloneNode(!0))}))},r})),F=e((e=>{var s,o,r,d,c;return c=class extends(t(u,U,H)(e)){constructor(){super(...arguments),s.add(this),o.set(this,i((()=>{const e=this.rangeInput.value,t=new Date;let s;switch(e){case"minuets15":s=t.setMinutes(t.getMinutes()-15);break;case"hour":s=t.setHours(t.getHours()-1);break;case"hour6":s=t.setHours(t.getHours()-6);break;case"day":default:s=t.setDate(t.getDate()-1);break;case"day3":s=t.setDate(t.getDate()-3);break;case"week":s=t.setDate(t.getDate()-7);break;case"week2":s=t.setDate(t.getDate()-14);break;case"month":s=t.setMonth(t.getMonth()-1)}this.actions.searchAudit({text:this.searchInput.value,from:Math.floor(new Date(s).getTime())})})))}onWidgetRootReady(){const e=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});return a(this,void 0,void 0,(function*(){var t;yield null===(t=e.onWidgetRootReady)||void 0===t?void 0:t.call(this),n(this,s,"m",r).call(this),n(this,s,"m",d).call(this)}))}},o=new WeakMap,s=new WeakSet,r=function(){var e;this.searchInput=new _(null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelector('[data-id="search-input"]'),{logger:this.logger}),this.searchInput.onInput(n(this,o,"f"))},d=function(){var e;this.rangeInput=new j(null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelector('[data-id="range-input"]'),{logger:this.logger}),this.rangeInput.onInput(n(this,o,"f"))},c})),J=e((e=>{var s,i,r,d;return d=class extends(t(H,u,U)(e)){constructor(){super(...arguments),s.add(this),r.set(this,o((e=>{this.auditTable.data=e})))}onWidgetRootReady(){const e=Object.create(null,{onWidgetRootReady:{get:()=>super.onWidgetRootReady}});return a(this,void 0,void 0,(function*(){var t;yield null===(t=e.onWidgetRootReady)||void 0===t?void 0:t.call(this),n(this,s,"m",i).call(this),n(this,r,"f").call(this,O(this.state)),this.subscribe(n(this,r,"f").bind(this),O)}))}},r=new WeakMap,s=new WeakSet,i=function(){var e;this.auditTable=new k(null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelector('[data-id="audit-table"]'),{logger:this.logger}),this.auditTable.onSelectedItemsChange((e=>{this.actions.setSelectedAuditId(e.detail.value.map((({id:e})=>e)))}))},d})),V=e((e=>class extends(t(b,y,J,F)(e)){init(){const e=Object.create(null,{init:{get:()=>super.init}});return a(this,void 0,void 0,(function*(){var t;yield null===(t=e.init)||void 0===t?void 0:t.call(this)}))}})),G=t((e=>class extends(V(e)){}))(HTMLElement);customElements.define("descope-audit-management-widget",G);export{G as default};
6
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/lib/widget/state/asyncActions/helpers.ts","../../src/lib/widget/state/selectors.ts","../../src/lib/widget/state/asyncActions/searchAudit.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/createAuditSdk.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/initMixin/initComponentsMixins/initFilterAuditInputMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initAuditTableMixin.ts","../../src/lib/widget/mixins/initMixin/initMixin.ts","../../src/lib/widget/index.ts","../../src/lib/index.ts"],"sourcesContent":["/* 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","import { createSelector } from 'reselect';\nimport { State } from './types';\n\nexport const getRawAuditList = (state: State) => state.auditList.data;\nexport const getSelectedAuditId = (state: State) => state.selectedAuditId;\nexport const getSearchParams = (state: State) => state.searchParams;\n\nexport const getAuditList = createSelector(getRawAuditList, (audits) =>\n audits.map((audit) => ({\n ...audit,\n occurredFormatted: !audit?.occurred\n ? 'N/A'\n : new Date(Number(audit?.occurred) || 0).toLocaleString(),\n })),\n);\n\nexport const getSelectedAudit = createSelector(\n getSelectedAuditId,\n getAuditList,\n (selected, audits) => audits.find((audit) => selected === audit.id),\n);\n\nexport const getIsAuditSelected = createSelector(\n getSelectedAuditId,\n (selected) => !!selected,\n);\n","/* eslint-disable no-param-reassign */\nimport { createAsyncThunk } from '@reduxjs/toolkit';\nimport { Sdk } from '../../api/sdk';\nimport { FirstParameter, State, ThunkConfigExtraApi } from '../types';\nimport { buildAsyncReducer, withRequestStatus } from './helpers';\nimport { getSearchParams } from '../selectors';\n\nconst action = createAsyncThunk<\n any,\n FirstParameter<Sdk['audit']['search']> | void,\n ThunkConfigExtraApi\n>('audit/search', (arg, { extra: { api }, getState }) => {\n // we get the existing search params from state, and adding the new search params from the action\n const searchParams = getSearchParams(getState() as State);\n return api.audit.search({ ...searchParams, ...arg });\n});\n\nconst reducer = buildAsyncReducer(action)(\n {\n // eslint-disable-next-line @typescript-eslint/no-shadow\n onPending: (state, action) => {\n state.searchParams = { ...state.searchParams, ...action.meta.arg };\n },\n // eslint-disable-next-line @typescript-eslint/no-shadow\n onFulfilled: (state, action) => {\n state.auditList.data = action.payload;\n },\n },\n withRequestStatus((state: State) => state.auditList),\n);\n\nexport const searchAudit = { action, reducer };\n","import { State } from './types';\n\nexport const initialState: State = {\n auditList: {\n data: [],\n loading: false,\n error: null,\n },\n searchParams: { text: '', sort: [] },\n selectedAuditId: '',\n};\n","export const apiPaths = {\n audit: {\n search: '/v1/mgmt/audit/search',\n },\n};\n","import { Audit, SearchAuditConfig } from '../types';\n\nconst search: (\n config: SearchAuditConfig,\n tenantId: string,\n) => Promise<Audit[]> = async ({ text, sort }) =>\n new Promise((resolve) => {\n const audits: Audit[] = [];\n for (let i = 1; i < 9; i += 1) {\n audits.push({\n id: `Audit ${i}`,\n action: `Action ${i}`,\n actorId: `Actor ${i}`,\n type: `info`,\n method: `Method ${i}`,\n userId: `User ${i}`,\n device: `Device ${i}`,\n geo: `Geo ${i}`,\n remoteAddress: `127.0.0.${i}`,\n externalIds: [`Login ID ${i}`],\n occurred: new Date().getTime(),\n });\n }\n\n sort.forEach((s) => {\n audits.sort((a, b) =>\n !s.desc\n ? (a[s.field] as string)?.localeCompare(b[s.field] as string)\n : (b[s.field] as string)?.localeCompare(a[s.field] as string),\n );\n });\n resolve(\n audits.filter(\n (audit) =>\n audit.id.toLowerCase().includes(text.toLowerCase()) ||\n audit.action.toLowerCase().includes(text.toLowerCase()) ||\n audit.type.toLowerCase().includes(text.toLowerCase()) ||\n audit.device.toLowerCase().includes(text.toLowerCase()) ||\n audit.method.toLowerCase().includes(text.toLowerCase()) ||\n audit.geo.toLowerCase().includes(text.toLowerCase()) ||\n audit.remoteAddress.toLowerCase().includes(text.toLowerCase()) ||\n audit.externalIds.includes(text.toLowerCase()) ||\n audit.userId.toLowerCase().includes(text.toLowerCase()),\n ),\n );\n });\n\nconst audit = {\n search,\n};\nexport { audit };\n","import { HttpClient, SearchAuditConfig, Audit } from '../types';\nimport { apiPaths } from '../apiPaths';\nimport { withErrorHandler } from './helpers';\nimport { audit } from './mocks';\n\nexport const createAuditSdk = ({\n httpClient,\n tenant,\n mock,\n}: {\n httpClient: HttpClient;\n tenant: string;\n mock: boolean;\n}) => {\n const search: (config: SearchAuditConfig) => Promise<Audit[]> = async ({\n page,\n limit = 10000,\n text,\n sort,\n from,\n } = {}) => {\n if (mock) {\n return audit.search({ page, limit, text, sort }, tenant);\n }\n const res = await httpClient.post(\n apiPaths.audit.search,\n {\n limit,\n page,\n text,\n sort,\n from,\n },\n {\n queryParams: { tenant },\n },\n );\n\n await withErrorHandler(res);\n\n const json = await res.json();\n\n return json.audits;\n };\n\n return {\n search,\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 baseUrlMixin,\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 baseUrlMixin,\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 this.widgetId,\n );\n }\n\n get tenant() {\n return this.getAttribute('tenant');\n }\n\n get widgetId() {\n return this.getAttribute('widget-id');\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 { createAuditSdk } from './createAuditSdk';\n\ndeclare const BUILD_VERSION: string;\n\nexport const createSdk = (\n config: Parameters<typeof createWebSdk>[0],\n tenant: string,\n mock: boolean,\n widgetId?: string,\n) => {\n const webSdk = createWebSdk({\n ...config,\n persistTokens: true,\n baseHeaders: {\n 'x-descope-widget-type': 'audit-management-widget',\n 'x-descope-widget-id': widgetId,\n 'x-descope-widget-version': BUILD_VERSION,\n },\n });\n\n return {\n audit: createAuditSdk({ httpClient: webSdk.httpClient, tenant, mock }),\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 { searchAudit } 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 setSelectedAuditId: (state, { payload }) => {\n state.selectedAuditId = payload;\n },\n },\n extraReducers: (builder) => {\n searchAudit.reducer(builder);\n },\n asyncActions: {\n searchAudit: searchAudit.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: typeof initialState) => {\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 = 'audit-management-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(\n // (module) => module.default,\n // ),\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.#initWidgetRoot()]);\n\n this.onWidgetRootReady();\n }\n },\n);\n","import {\n TextFieldDriver,\n SingleSelectDriver,\n} from '@descope/sdk-component-drivers';\nimport { compose, createSingletonMixin, debounce } from '@descope/sdk-helpers';\nimport { loggerMixin } from '@descope/sdk-mixins';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\n\nexport const initFilterAuditInputMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class InitFilterAuditInputMixinClass extends compose(\n loggerMixin,\n initWidgetRootMixin,\n stateManagementMixin,\n )(superclass) {\n searchInput: TextFieldDriver;\n\n rangeInput: SingleSelectDriver;\n\n #onInput = debounce(() => {\n const timePeriod = this.rangeInput.value;\n const now = new Date();\n let from: number;\n switch (timePeriod) {\n case 'minuets15':\n from = now.setMinutes(now.getMinutes() - 15);\n break;\n case 'hour':\n from = now.setHours(now.getHours() - 1);\n break;\n case 'hour6':\n from = now.setHours(now.getHours() - 6);\n break;\n case 'day':\n from = now.setDate(now.getDate() - 1);\n break;\n case 'day3':\n from = now.setDate(now.getDate() - 3);\n break;\n case 'week':\n from = now.setDate(now.getDate() - 7);\n break;\n case 'week2':\n from = now.setDate(now.getDate() - 14);\n break;\n case 'month':\n from = now.setMonth(now.getMonth() - 1);\n break;\n default:\n // default to one day\n from = now.setDate(now.getDate() - 1);\n }\n\n this.actions.searchAudit({\n text: this.searchInput.value,\n from: Math.floor(new Date(from).getTime()),\n });\n });\n\n #initSearchInput() {\n // currently we are doing it on client side because we assume there will not be more than 10000 audit per tenant\n this.searchInput = new TextFieldDriver(\n this.shadowRoot?.querySelector('[data-id=\"search-input\"]'),\n { logger: this.logger },\n );\n this.searchInput.onInput(this.#onInput);\n }\n\n #initRangeInput() {\n this.rangeInput = new SingleSelectDriver(\n this.shadowRoot?.querySelector('[data-id=\"range-input\"]'),\n { logger: this.logger },\n );\n this.rangeInput.onInput(this.#onInput);\n }\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initSearchInput();\n this.#initRangeInput();\n }\n },\n);\n","import { GridDriver } from '@descope/sdk-component-drivers';\nimport {\n compose,\n createSingletonMixin,\n withMemCache,\n} from '@descope/sdk-helpers';\nimport { loggerMixin } from '@descope/sdk-mixins';\nimport { Audit } from '../../../api/types';\nimport { getAuditList } from '../../../state/selectors';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\n\nexport const initAuditTableMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class InitAuditTableMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n )(superclass) {\n auditTable: GridDriver<Audit>;\n\n #initAuditTable() {\n this.auditTable = new GridDriver(\n this.shadowRoot?.querySelector('[data-id=\"audit-table\"]'),\n { logger: this.logger },\n );\n this.auditTable.onSelectedItemsChange((e) => {\n this.actions.setSelectedAuditId(e.detail.value.map(({ id }) => id));\n });\n }\n\n #onAuditListUpdate = withMemCache(\n (auditList: ReturnType<typeof getAuditList>) => {\n this.auditTable.data = auditList;\n },\n );\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initAuditTable();\n\n // because we are not waiting for the rest calls,\n // we need to make sure the table is updated with the received audit\n this.#onAuditListUpdate(getAuditList(this.state));\n this.subscribe(this.#onAuditListUpdate.bind(this), getAuditList);\n }\n },\n);\n","import { compose, createSingletonMixin } from '@descope/sdk-helpers';\nimport { debuggerMixin, themeMixin } from '@descope/sdk-mixins';\nimport { initFilterAuditInputMixin } from './initComponentsMixins/initFilterAuditInputMixin';\nimport { initAuditTableMixin } from './initComponentsMixins/initAuditTableMixin';\n\nexport const initMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n // @ts-ignore\n class InitMixinClass extends compose(\n debuggerMixin,\n themeMixin,\n initAuditTableMixin,\n initFilterAuditInputMixin,\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 AuditManagementWidget = 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 { AuditManagementWidget } from './widget';\n\nexport default AuditManagementWidget;\n\ncustomElements.define('descope-audit-management-widget', AuditManagementWidget);\n"],"names":["getSelectedAuditId","state","selectedAuditId","getAuditList","createSelector","auditList","data","audits","map","audit","Object","assign","occurredFormatted","occurred","Date","Number","toLocaleString","selected","find","id","action","createAsyncThunk","arg","extra","api","getState","searchParams","search","reducer","args","builder","addCase","pending","forEach","onPending","fulfilled","onFulfilled","rejected","onRejected","buildAsyncReducer","meta","payload","getStateSection","loading","error","searchAudit","initialState","text","sort","apiPaths","_a","Promise","resolve","i","push","actorId","type","method","userId","device","geo","remoteAddress","externalIds","getTime","s","a","b","desc","_b","field","localeCompare","filter","toLowerCase","includes","createAuditSdk","httpClient","tenant","mock","args_1","__awaiter","page","limit","from","res","post","queryParams","json","JSON","parse","ok","descopeErrorMsg","errorDescription","errorMessage","Error","status","statusText","withErrorHandler","apiMixin","createSingletonMixin","superclass","BaseClass","compose","projectIdMixin","observeAttributesMixin","loggerMixin","baseUrlMixin","createValidateAttributesMixin","missingAttrValidator","constructor","_ApiMixinClass_api","set","this","getAttribute","widgetId","__classPrivateFieldGet","_ApiMixinClass_instances","_ApiMixinClass_createSdk","call","init","_super","observeAttributes","logger","debug","__classPrivateFieldSet","config","webSdk","createWebSdk","persistTokens","baseHeaders","createSdk","projectId","baseUrl","stateManagementMixin","createStateManagementMixin","name","reducers","setSelectedAuditId","extraReducers","asyncActions","initLifecycleMixin","super","subscribe","fetchWidgetPagesMixin","staticResourcesMixin","fetchWidgetPage","filename","fetchStaticResource","body","initWidgetRootMixin","_InitWidgetRootMixinClass_instances","_InitWidgetRootMixinClass_initWidgetRoot","descopeUiMixin","initElementMixin","onWidgetRootReady","all","template","createTemplate","loadDescopeUiComponents","contentRootElement","append","content","cloneNode","initFilterAuditInputMixin","_InitFilterAuditInputMixinClass_instances","_InitFilterAuditInputMixinClass_onInput","_InitFilterAuditInputMixinClass_initSearchInput","_InitFilterAuditInputMixinClass_initRangeInput","debounce","timePeriod","rangeInput","value","now","setMinutes","getMinutes","setHours","getHours","setDate","getDate","setMonth","getMonth","actions","searchInput","Math","floor","TextFieldDriver","shadowRoot","querySelector","onInput","SingleSelectDriver","initAuditTableMixin","_InitAuditTableMixinClass_instances","_InitAuditTableMixinClass_initAuditTable","_InitAuditTableMixinClass_onAuditListUpdate","withMemCache","auditTable","bind","GridDriver","onSelectedItemsChange","e","detail","initMixin","debuggerMixin","themeMixin","AuditManagementWidget","HTMLElement","customElements","define"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/lib/widget/state/asyncActions/helpers.ts","../../src/lib/widget/state/helpers.ts","../../src/lib/widget/state/selectors.ts","../../src/lib/widget/state/asyncActions/searchAudit.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/createAuditSdk.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/initMixin/initComponentsMixins/initFilterAuditInputMixin.ts","../../src/lib/widget/mixins/initMixin/initComponentsMixins/initAuditTableMixin.ts","../../src/lib/widget/mixins/initMixin/initMixin.ts","../../src/lib/widget/index.ts","../../src/lib/index.ts"],"sourcesContent":["/* 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","export const capitalize = (s: string) => s && s[0].toUpperCase() + s.slice(1);\n\nexport const conditionalObj = <T extends any>(key: string, val: T) =>\n val ? { [key]: val } : {};\n\nexport const conditionalJsonParse = (str: string) => {\n if (!str) return undefined;\n\n const res = JSON.parse(str);\n\n if (Array.isArray(res) && res.length === 0) return undefined;\n\n return res;\n};\n","import { createSelector } from 'reselect';\nimport { State } from './types';\nimport { capitalize, conditionalJsonParse, conditionalObj } from './helpers';\n\nexport const getRawAuditList = (state: State) => state.auditList.data;\nexport const getSelectedAuditId = (state: State) => state.selectedAuditId;\nexport const getSearchParams = (state: State) => state.searchParams;\n\nexport const getAuditList = createSelector(getRawAuditList, (audits) =>\n audits.map((audit) => {\n const {\n occurred,\n ID,\n type,\n data: {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n saml_request,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n saml_response,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n saml_generated_user,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n saml_generated_roles,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n oidc_response,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n oidc_generated_user,\n ...data\n } = {\n saml_request: '',\n saml_response: '',\n saml_generated_user: '',\n saml_generated_roles: '',\n oidc_response: '',\n oidc_generated_user: '',\n },\n ...auditRest\n } = audit || {};\n\n return {\n ...auditRest,\n data,\n ...conditionalObj('type', capitalize(type)),\n ...conditionalObj('saml_request', saml_request),\n ...conditionalObj('saml_response', saml_response),\n ...conditionalObj(\n 'saml_generated_user',\n conditionalJsonParse(saml_generated_user),\n ),\n ...conditionalObj(\n 'saml_generated_roles',\n conditionalJsonParse(saml_generated_roles),\n ),\n ...conditionalObj('oidc_response', conditionalJsonParse(oidc_response)),\n ...conditionalObj(\n 'oidc_generated_user',\n conditionalJsonParse(oidc_generated_user),\n ),\n occurredFormatted: !occurred\n ? 'N/A'\n : new Date(Number(occurred) || 0).toLocaleString(),\n };\n }),\n);\n\nexport const getSelectedAudit = createSelector(\n getSelectedAuditId,\n getAuditList,\n (selected, audits) => audits.find((audit) => selected === audit.id),\n);\n\nexport const getIsAuditSelected = createSelector(\n getSelectedAuditId,\n (selected) => !!selected,\n);\n","/* eslint-disable no-param-reassign */\nimport { createAsyncThunk } from '@reduxjs/toolkit';\nimport { Sdk } from '../../api/sdk';\nimport { FirstParameter, State, ThunkConfigExtraApi } from '../types';\nimport { buildAsyncReducer, withRequestStatus } from './helpers';\nimport { getSearchParams } from '../selectors';\n\nconst action = createAsyncThunk<\n any,\n FirstParameter<Sdk['audit']['search']> | void,\n ThunkConfigExtraApi\n>('audit/search', (arg, { extra: { api }, getState }) => {\n // we get the existing search params from state, and adding the new search params from the action\n const searchParams = getSearchParams(getState() as State);\n return api.audit.search({ ...searchParams, ...arg });\n});\n\nconst reducer = buildAsyncReducer(action)(\n {\n // eslint-disable-next-line @typescript-eslint/no-shadow\n onPending: (state, action) => {\n state.searchParams = { ...state.searchParams, ...action.meta.arg };\n },\n // eslint-disable-next-line @typescript-eslint/no-shadow\n onFulfilled: (state, action) => {\n state.auditList.data = action.payload;\n },\n },\n withRequestStatus((state: State) => state.auditList),\n);\n\nexport const searchAudit = { action, reducer };\n","import { State } from './types';\n\nexport const initialState: State = {\n auditList: {\n data: [],\n loading: false,\n error: null,\n },\n searchParams: { text: '', sort: [] },\n selectedAuditId: '',\n};\n","export const apiPaths = {\n audit: {\n search: '/v1/mgmt/audit/search',\n },\n};\n","import { Audit, SearchAuditConfig } from '../types';\n\nconst search: (\n config: SearchAuditConfig,\n tenantId: string,\n) => Promise<Audit[]> = async ({ text, sort }) =>\n new Promise((resolve) => {\n const audits: Audit[] = [];\n for (let i = 1; i < 9; i += 1) {\n audits.push({\n id: `Audit ${i}`,\n action: `Action ${i}`,\n actorId: `Actor ${i}`,\n type: `info`,\n method: `Method ${i}`,\n userId: `User ${i}`,\n device: `Device ${i}`,\n geo: `Geo ${i}`,\n remoteAddress: `127.0.0.${i}`,\n externalIds: [`Login ID ${i}`],\n occurred: new Date().getTime(),\n });\n }\n\n sort.forEach((s) => {\n audits.sort((a, b) =>\n !s.desc\n ? (a[s.field] as string)?.localeCompare(b[s.field] as string)\n : (b[s.field] as string)?.localeCompare(a[s.field] as string),\n );\n });\n resolve(\n audits.filter(\n (audit) =>\n audit.id.toLowerCase().includes(text.toLowerCase()) ||\n audit.action.toLowerCase().includes(text.toLowerCase()) ||\n audit.type.toLowerCase().includes(text.toLowerCase()) ||\n audit.device.toLowerCase().includes(text.toLowerCase()) ||\n audit.method.toLowerCase().includes(text.toLowerCase()) ||\n audit.geo.toLowerCase().includes(text.toLowerCase()) ||\n audit.remoteAddress.toLowerCase().includes(text.toLowerCase()) ||\n audit.externalIds.includes(text.toLowerCase()) ||\n audit.userId.toLowerCase().includes(text.toLowerCase()),\n ),\n );\n });\n\nconst audit = {\n search,\n};\nexport { audit };\n","import { HttpClient, SearchAuditConfig, Audit } from '../types';\nimport { apiPaths } from '../apiPaths';\nimport { withErrorHandler } from './helpers';\nimport { audit } from './mocks';\n\nexport const createAuditSdk = ({\n httpClient,\n tenant,\n mock,\n}: {\n httpClient: HttpClient;\n tenant: string;\n mock: boolean;\n}) => {\n const search: (config: SearchAuditConfig) => Promise<Audit[]> = async ({\n page,\n limit = 10000,\n text,\n sort,\n from,\n } = {}) => {\n if (mock) {\n return audit.search({ page, limit, text, sort }, tenant);\n }\n const res = await httpClient.post(\n apiPaths.audit.search,\n {\n limit,\n page,\n text,\n sort,\n from,\n },\n {\n queryParams: { tenant },\n },\n );\n\n await withErrorHandler(res);\n\n const json = await res.json();\n\n return json.audits;\n };\n\n return {\n search,\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 baseUrlMixin,\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 baseUrlMixin,\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 this.widgetId,\n );\n }\n\n get tenant() {\n return this.getAttribute('tenant');\n }\n\n get widgetId() {\n return this.getAttribute('widget-id');\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 { createAuditSdk } from './createAuditSdk';\n\ndeclare const BUILD_VERSION: string;\n\nexport const createSdk = (\n config: Parameters<typeof createWebSdk>[0],\n tenant: string,\n mock: boolean,\n widgetId?: string,\n) => {\n const webSdk = createWebSdk({\n ...config,\n persistTokens: true,\n baseHeaders: {\n 'x-descope-widget-type': 'audit-management-widget',\n 'x-descope-widget-id': widgetId,\n 'x-descope-widget-version': BUILD_VERSION,\n },\n });\n\n return {\n audit: createAuditSdk({ httpClient: webSdk.httpClient, tenant, mock }),\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 { searchAudit } 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 setSelectedAuditId: (state, { payload }) => {\n state.selectedAuditId = payload;\n },\n },\n extraReducers: (builder) => {\n searchAudit.reducer(builder);\n },\n asyncActions: {\n searchAudit: searchAudit.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: typeof initialState) => {\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 = 'audit-management-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(\n // (module) => module.default,\n // ),\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.#initWidgetRoot()]);\n\n this.onWidgetRootReady();\n }\n },\n);\n","import {\n TextFieldDriver,\n SingleSelectDriver,\n} from '@descope/sdk-component-drivers';\nimport { compose, createSingletonMixin, debounce } from '@descope/sdk-helpers';\nimport { loggerMixin } from '@descope/sdk-mixins';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\n\nexport const initFilterAuditInputMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class InitFilterAuditInputMixinClass extends compose(\n loggerMixin,\n initWidgetRootMixin,\n stateManagementMixin,\n )(superclass) {\n searchInput: TextFieldDriver;\n\n rangeInput: SingleSelectDriver;\n\n #onInput = debounce(() => {\n const timePeriod = this.rangeInput.value;\n const now = new Date();\n let from: number;\n switch (timePeriod) {\n case 'minuets15':\n from = now.setMinutes(now.getMinutes() - 15);\n break;\n case 'hour':\n from = now.setHours(now.getHours() - 1);\n break;\n case 'hour6':\n from = now.setHours(now.getHours() - 6);\n break;\n case 'day':\n from = now.setDate(now.getDate() - 1);\n break;\n case 'day3':\n from = now.setDate(now.getDate() - 3);\n break;\n case 'week':\n from = now.setDate(now.getDate() - 7);\n break;\n case 'week2':\n from = now.setDate(now.getDate() - 14);\n break;\n case 'month':\n from = now.setMonth(now.getMonth() - 1);\n break;\n default:\n // default to one day\n from = now.setDate(now.getDate() - 1);\n }\n\n this.actions.searchAudit({\n text: this.searchInput.value,\n from: Math.floor(new Date(from).getTime()),\n });\n });\n\n #initSearchInput() {\n // currently we are doing it on client side because we assume there will not be more than 10000 audit per tenant\n this.searchInput = new TextFieldDriver(\n this.shadowRoot?.querySelector('[data-id=\"search-input\"]'),\n { logger: this.logger },\n );\n this.searchInput.onInput(this.#onInput);\n }\n\n #initRangeInput() {\n this.rangeInput = new SingleSelectDriver(\n this.shadowRoot?.querySelector('[data-id=\"range-input\"]'),\n { logger: this.logger },\n );\n this.rangeInput.onInput(this.#onInput);\n }\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initSearchInput();\n this.#initRangeInput();\n }\n },\n);\n","import { GridDriver } from '@descope/sdk-component-drivers';\nimport {\n compose,\n createSingletonMixin,\n withMemCache,\n} from '@descope/sdk-helpers';\nimport { loggerMixin } from '@descope/sdk-mixins';\nimport { Audit } from '../../../api/types';\nimport { getAuditList } from '../../../state/selectors';\nimport { stateManagementMixin } from '../../stateManagementMixin';\nimport { initWidgetRootMixin } from './initWidgetRootMixin';\n\nexport const initAuditTableMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n class InitAuditTableMixinClass extends compose(\n stateManagementMixin,\n loggerMixin,\n initWidgetRootMixin,\n )(superclass) {\n auditTable: GridDriver<Partial<Audit>>;\n\n #initAuditTable() {\n this.auditTable = new GridDriver(\n this.shadowRoot?.querySelector('[data-id=\"audit-table\"]'),\n { logger: this.logger },\n );\n this.auditTable.onSelectedItemsChange((e) => {\n this.actions.setSelectedAuditId(e.detail.value.map(({ id }) => id));\n });\n }\n\n #onAuditListUpdate = withMemCache(\n (auditList: ReturnType<typeof getAuditList>) => {\n this.auditTable.data = auditList;\n },\n );\n\n async onWidgetRootReady() {\n await super.onWidgetRootReady?.();\n\n this.#initAuditTable();\n\n // because we are not waiting for the rest calls,\n // we need to make sure the table is updated with the received audit\n this.#onAuditListUpdate(getAuditList(this.state));\n this.subscribe(this.#onAuditListUpdate.bind(this), getAuditList);\n }\n },\n);\n","import { compose, createSingletonMixin } from '@descope/sdk-helpers';\nimport { debuggerMixin, themeMixin } from '@descope/sdk-mixins';\nimport { initFilterAuditInputMixin } from './initComponentsMixins/initFilterAuditInputMixin';\nimport { initAuditTableMixin } from './initComponentsMixins/initAuditTableMixin';\n\nexport const initMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) =>\n // @ts-ignore\n class InitMixinClass extends compose(\n debuggerMixin,\n themeMixin,\n initAuditTableMixin,\n initFilterAuditInputMixin,\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 AuditManagementWidget = 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 { AuditManagementWidget } from './widget';\n\nexport default AuditManagementWidget;\n\ncustomElements.define('descope-audit-management-widget', AuditManagementWidget);\n"],"names":["conditionalObj","key","val","conditionalJsonParse","str","res","JSON","parse","Array","isArray","length","getSelectedAuditId","state","selectedAuditId","getAuditList","createSelector","auditList","data","audits","map","audit","_a","occurred","ID","type","_b","_c","saml_request","saml_response","saml_generated_user","saml_generated_roles","oidc_response","oidc_generated_user","__rest","auditRest","Object","assign","s","toUpperCase","slice","occurredFormatted","Date","Number","toLocaleString","selected","find","id","action","createAsyncThunk","arg","extra","api","getState","searchParams","search","reducer","args","builder","addCase","pending","forEach","onPending","fulfilled","onFulfilled","rejected","onRejected","buildAsyncReducer","meta","payload","getStateSection","loading","error","searchAudit","initialState","text","sort","apiPaths","Promise","resolve","i","push","actorId","method","userId","device","geo","remoteAddress","externalIds","getTime","a","b","desc","field","localeCompare","filter","toLowerCase","includes","createAuditSdk","httpClient","tenant","mock","args_1","__awaiter","page","limit","from","post","queryParams","json","ok","descopeErrorMsg","errorDescription","errorMessage","Error","status","statusText","withErrorHandler","apiMixin","createSingletonMixin","superclass","BaseClass","compose","projectIdMixin","observeAttributesMixin","loggerMixin","baseUrlMixin","createValidateAttributesMixin","missingAttrValidator","constructor","_ApiMixinClass_api","set","this","getAttribute","widgetId","__classPrivateFieldGet","_ApiMixinClass_instances","_ApiMixinClass_createSdk","call","init","_super","observeAttributes","logger","debug","__classPrivateFieldSet","config","webSdk","createWebSdk","persistTokens","baseHeaders","createSdk","projectId","baseUrl","stateManagementMixin","createStateManagementMixin","name","reducers","setSelectedAuditId","extraReducers","asyncActions","initLifecycleMixin","super","subscribe","fetchWidgetPagesMixin","staticResourcesMixin","fetchWidgetPage","filename","fetchStaticResource","body","initWidgetRootMixin","_InitWidgetRootMixinClass_instances","_InitWidgetRootMixinClass_initWidgetRoot","descopeUiMixin","initElementMixin","onWidgetRootReady","all","template","createTemplate","loadDescopeUiComponents","contentRootElement","append","content","cloneNode","initFilterAuditInputMixin","_InitFilterAuditInputMixinClass_instances","_InitFilterAuditInputMixinClass_onInput","_InitFilterAuditInputMixinClass_initSearchInput","_InitFilterAuditInputMixinClass_initRangeInput","debounce","timePeriod","rangeInput","value","now","setMinutes","getMinutes","setHours","getHours","setDate","getDate","setMonth","getMonth","actions","searchInput","Math","floor","TextFieldDriver","shadowRoot","querySelector","onInput","SingleSelectDriver","initAuditTableMixin","_InitAuditTableMixinClass_instances","_InitAuditTableMixinClass_initAuditTable","_InitAuditTableMixinClass_onAuditListUpdate","withMemCache","auditTable","bind","GridDriver","onSelectedItemsChange","e","detail","initMixin","debuggerMixin","themeMixin","AuditManagementWidget","HTMLElement","customElements","define"],"mappings":";;;;ovBAgDO,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,CC9CMA,EAAiB,CAAgBC,CAAAA,CAAaC,IACzDA,CAAM,CAAA,CAAED,CAACA,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,EAEZC,CAAAA,CAAAA,CAAwBC,IACnC,CAAKA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,OAEV,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAMC,KAAKC,CAAMH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEvB,OAAII,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQJ,IAAuB,CAAfA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIK,YAA9B,CAEOL,CAAAA,CAAG,ECPCM,CAAsBC,CAAAA,CAAAA,CAAAA,CAAiBA,EAAMC,CAG7CC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAeC,GAJIH,CAAiBA,CAAAA,CAAAA,CAAAA,CAAMI,UAAUC,CAIJC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC3DA,EAAOC,CAAKC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACV,MAAMC,CA2BFD,CAAAA,CAAAA,CAAAA,CAAS,CAAA,CA3BPE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACJA,EAAQC,CACRA,CAAAA,CAAAA,CAAAA,CAAEC,KACFA,CAAIH,CAAAA,CAAAA,CAAAA,CACJI,CAAAJ,CAAAA,CAAAA,CAAAJ,CAAAS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAcI,IAAAD,CAAA,CAAA,CACFE,aAAc,CACdC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,GACfC,CAAqB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACrBC,qBAAsB,CACtBC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,GACfC,CAAqB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACtBP,GArBDE,CAEEA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAYC,cAEZA,CAAaC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEbA,EAAmBC,CAEnBA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAoBC,cAEpBA,CAAaC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEbA,GAAmBN,CAChBT,CAAAA,CAAAA,CAbCgB,EAAAP,CAAA,CAAA,CAAA,eAAA,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,uBAAA,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,CAsBHQ,EAASD,CAAAZ,CAAAA,CAAAA,CA1BR,CA2BL,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,CAED,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAc,OAAAC,CAAAD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAC,OAAAD,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAD,OAAAC,CAAAD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAC,OAAAD,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAD,OAAAC,CAAAD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAC,OAAAD,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAD,OAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EACKF,CAAS,CAAA,CAAA,CACZjB,SACGjB,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CD1CGqC,EC0CgBb,CD1CGa,CAAAA,CAAAA,CAAAA,CAAAA,CAAE,GAAGC,CAAgBD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAEE,MAAM,CC2ClEvC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,eAAgB2B,CAC/B3B,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,gBAAiB4B,CAChC5B,CAAAA,CAAAA,CAAAA,CAAAA,CACD,sBACAG,CAAqB0B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEpB7B,CACD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACAG,CAAqB2B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEpB9B,EAAe,CAAiBG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAqB4B,KACrD/B,CACD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACAG,EAAqB6B,CACtB,CAAA,CAAA,CAAA,CAAA,CACDQ,kBAAoBlB,CAEhB,CAAA,CAAA,CAAA,CAAA,CAAImB,KAAKC,CAAOpB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,GAAGqB,CADhC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CD3DgB,IAACN,CC6DrB,CAAA,CAAA,CAAA,CAAA,CAAA,CAI0BtB,EAC9BJ,CACAG,CAAAA,CAAAA,CAAAA,CACA,CAAC8B,CAAU1B,CAAAA,CAAAA,CAAAA,CAAAA,CAAWA,EAAO2B,CAAMzB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAUwB,IAAaxB,CAAM0B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAGhC/B,EAChCJ,CACCiC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAeA,IClElB,CAAMG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASC,EAIb,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACC,GAAOC,CAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOC,eAExC,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAA+BD,IDPgBC,CCQrD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOF,EAAI/B,CAAMkC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,gCAAYD,GAAiBJ,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAGhDM,EHgCJ,CAAsCR,CAAAA,CAAAA,CACtC,IAAIS,CACHC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACCA,EAAQC,CAAQX,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOY,SAAS,CAAC/C,CAAAA,CAAOmC,KACtCS,CAAKI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,EAAGC,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,EAAYjD,CAAOmC,CAAAA,CAAAA,CAAO,GAC1B,CAGJU,CAAAA,CAAAA,CAAAA,CAAAA,CAAQC,QAAQX,CAAOe,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAAClD,CAAOmC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACxCS,CAAKI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAAGG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACdA,SAAAA,CAAcnD,CAAAA,CAAAA,CAAOmC,EAAO,CAC5B,CAAA,CAAA,CAAA,CAAA,CAAA,CAGJU,EAAQC,CAAQX,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOiB,UAAU,CAACpD,CAAAA,CAAOmC,KACvCS,CAAKI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,EAAGK,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,EAAarD,CAAOmC,CAAAA,CAAAA,CAAO,GAC3B,CACF,CAAA,CAAA,CAAA,CGnDUmB,CAAkBnB,CAAlBmB,CAAAA,CACd,CAEEL,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACjD,EAAOmC,CACjBnC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAMyC,aAAoBlB,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAD,OAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAAxB,CAAMyC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiBN,EAAOoB,CAAKlB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAGpEc,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAACnD,CAAAA,CAAOmC,KACnBnC,CAAMI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAUC,KAAO8B,CAAOqB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,IH+CzCC,CG5CmBzD,CAAAA,CAAAA,CAAAA,CAAiBA,EAAMI,CH6Cb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC7B+C,YAAcnD,CACZyD,CAAAA,CAAAA,CAAAA,CAAAA,CAAgBzD,GAAO0D,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,EAExCT,CAAYjD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACVyD,EAAgBzD,CAAO0D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,EACjCD,CAAgBzD,CAAAA,CAAAA,CAAAA,CAAO2D,MAAQ,CAAI,CAAA,CAAA,CAAA,CAAA,CAErCN,WAAY,CAACrD,CAAAA,CAAOmC,KAClBsB,CAAgBzD,CAAAA,CAAAA,CAAAA,CAAO0D,SAAU,CACjCD,CAAAA,CAAAA,CAAgBzD,GAAO2D,CAAQxB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOwB,KAAK,CAZd,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC/BF,CGzCK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMG,CAAc,CAAA,CAAEzB,SAAQQ,CC7BxBkB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAsB,CACjCzD,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACTC,KAAM,CACNqD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,EACTC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAETlB,aAAc,CAAEqB,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,GAAIC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAChC9D,gBAAiB,CCTN+D,CAAAA,CAAAA,CAAAA,CAAAA,CACJ,CACLtB,CAAQ,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,CC6CNlC,EA1CyCC,yBAAhBqD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAEA,EAAIC,CAAEA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACrC,OAAA,CAAIE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASC,IACX,CAAM5D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAkB,GACxB,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI6D,EAAI,CAAGA,CAAAA,CAAAA,CAAI,EAAGA,CAAK,CAAA,CAAA,CAAA,CAC1B7D,EAAO8D,CAAK,CAAA,CAAA,CAAA,CAAA,CACVlC,GAAI,CAASiC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACbhC,OAAQ,CAAUgC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAClBE,QAAS,CAASF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAClBvD,KAAM,CACN0D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,UAAUH,CAClBI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,QAAQJ,CAChBK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,UAAUL,CAClBM,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,OAAON,CACZO,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,WAAWP,CAC1BQ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAAC,CAAYR,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC1BzD,UAAU,CAAImB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO+C,YAIzBb,CAAKf,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASvB,IACZnB,CAAOyD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAACc,CAAAA,CAAGC,YACd,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACrD,EAAEsD,CAEuB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAArBlE,EAAAiE,CAAErD,CAAAA,CAAAA,CAAEuD,cAAiB,CAAAnE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAAA,CAAEoE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAcJ,EAAEpD,CAAEuD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CADlB,QAAvBvE,CAAAoE,CAAAA,CAAAA,CAAEpD,EAAEuD,CAAmB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAvE,OAAA,CAAAA,CAAAA,CAAAA,CAAAwE,cAAcH,CAAErD,CAAAA,CAAAA,CAAEuD,OACiB,CAChE,CAAA,CAAA,CAAA,CAAA,CAAA,CAEHd,EACE5D,CAAO4E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACJ1E,GACCA,CAAM0B,CAAAA,CAAAA,CAAAA,CAAGiD,cAAcC,CAAStB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKqB,gBACrC3E,CAAM2B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOgD,CAAcC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAStB,CAAKqB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACzC3E,EAAMI,CAAKuE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAcC,SAAStB,CAAKqB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACvC3E,EAAMgE,CAAOW,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAcC,SAAStB,CAAKqB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACzC3E,EAAM8D,CAAOa,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAcC,SAAStB,CAAKqB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACzC3E,EAAMiE,CAAIU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAcC,SAAStB,CAAKqB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACtC3E,EAAMkE,CAAcS,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,CAAcC,SAAStB,CAAKqB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAChD3E,EAAMmE,CAAYS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAStB,EAAKqB,CAChC3E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM+D,OAAOY,CAAcC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAStB,EAAKqB,CAE9C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KCvCQE,CAAiB,CAAA,CAAA,CAC5BC,CACAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACAC,CAqCO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACL9C,OAhC8D,CAAA+C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOC,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAD,QAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAE,KACrEA,CAAIC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACJA,EAAQ,CAAK9B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACbA,EAAIC,CACJA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI8B,KACJA,CACE,CAAA,CAAA,IACF,CAAIL,CAAAA,CAAAA,CAAAA,CACF,OAAOhF,CAAa,CAAA,CAAEmF,OAAMC,CAAO9B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAMC,QAAQwB,CAEnD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM9F,QAAY6F,CAAWQ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC3B9B,EAAetB,CACf,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACEkD,QACAD,CACA7B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACAC,OACA8B,CAEF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACEE,YAAa,CAAER,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CClCS,CAAO9F,CAAiBiG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,YACtD,CAAM5B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAarE,EAAIqE,CACjBkC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOtG,KAAKC,CAAMmE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAExB,IAAKrE,CAAIwG,CAAAA,CAAAA,CAAAA,CAAI,CACX,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAkB,GAAGF,CAAKG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC9BH,EAAKI,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAKJ,EAAKI,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,GAAGzG,CAAI6G,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU7G,EAAI8G,CACrD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAED9G,EAAIuG,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM/B,QAAQC,CAAQ8B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACjCvG,CAAIqE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAMG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQC,QAAQJ,CACnC,CAAA,CAAA,CAAA,CAAA,CDyBU0C,CAAiB/G,CAIvB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAFmBA,EAAIuG,CAEX1F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACd,MEjCWmG,CAAWC,CAAAA,CAAAA,CAAAA,CACeC,gBACnC,MAAMC,CAAYC,CAAAA,CAAAA,CAChBC,EACAC,CACAC,CAAAA,CAAAA,CACAC,EACAC,CAA8B,CAAA,CAC5B3B,OAAQ2B,CAA8BC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CANxBN,CAQhBF,CAEF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOlG,EAAA,CAA4BmG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAA5B,WAAAQ,mCACLC,CAAUC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAyCX,CA7BC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIhC,GACF,CAAOgC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKC,aAAa,CAC1B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAED,YAAIC,CACF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOF,KAAKC,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,CAED,CAAIhC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACF,OAAO+B,CAAKC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,OAC1B,CAED,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIjF,GAKF,CAJKmF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACPK,EAAAH,CAAII,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAC,CAAJC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,MAGKG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIF,EAAA,CACZ,CAAA,CAAA,CAAA,CAEK,IAAAS,gHACY,QAAVjH,CAAAkH,CAAAA,CAAAA,CAAMD,YAAI,CAAAjH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAAA,CAAAgH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,MAEhBA,CAAKS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAkB,CAAC,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,WAAW,CACvDN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAASF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACXK,EAAAH,CAAII,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAC,CAAJC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,KACD,MAEJ,4CArCCA,KAAKU,CAAOC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,4BAClBC,CAAAZ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIF,ECtBa,CACvBe,CAAAA,CAAAA,CACA7C,EACAC,CACAiC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEA,MAAMY,CAASC,CAAAA,CAAAA,CACV/G,OAAAC,CAAAD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAC,OAAA,CAAA,CAAA,CAAA4G,GACH,CAAAG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,EACfC,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACX,wBAAyB,CACzB,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,CAAuBf,EACvB,CAA4B,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,CAIhC,MAAO,CACLjH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO6E,EAAe,CAAEC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY+C,EAAO/C,CAAYC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQC,CAChE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CDIiBiD,CACV,CAAEC,UAAWnB,CAAKmB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWC,QAASpB,CAAKoB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC3CpB,KAAKhC,CACS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAdgC,KAAK/B,CACL+B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKE,WAER,CAAA,CAAA,CAAA,CAAA,CA+BDhH,CAAA,CErDOmI,CAAAA,CAAAA,CAAAA,CAAAA,CAAuBlC,GACGC,CACnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,EAAYC,CAChBgC,CAAAA,CAAAA,CAA2B,CACzBC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACNjF,eACAkF,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACRC,mBAAoB,CAAChJ,CAAAA,CAAAA,CAASwD,cAC5BxD,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAkBuD,CAAO,CAGnCyF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgBpG,IACde,CAAYjB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQE,EAAQ,CAE9BqG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAc,CACZtF,CAAaA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAYzB,UAG7BgH,CACAnC,CAAAA,CAAAA,CACAP,EAlBgBI,CAmBhBF,CAAAA,CAAAA,CACF,OAAO,CAAwCC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAG7C,WAAAQ,CAAexE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACbwG,SAASxG,CAHX2E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKvH,MAAG6D,CAKN0D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK8B,WAAWrJ,CACduH,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,CAAiBlI,GACnCuH,CAAKvH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQA,CAAK,CAErB,CAAA,CAAA,CAAA,CACF,ICpCQsJ,CAAwB5C,CAAAA,CAAAA,CAAAA,CACEC,IACnC,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAYC,EAChB0C,CACArC,CAAAA,CAAAA,CAA8B,CAC5B,CAAaA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAA8BC,uBAH7BN,CAKhBF,CAAAA,CAAAA,CACF,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAyCC,CAC9C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIa,GACF,CAAOF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKC,aAAa,CAC1B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAEK,eAAAgC,CAAgBC,CAAAA,CAAAA,0CAKpB,aAJkBlC,CAAKmC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACrB,2BAA4BnC,CAAKE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAYgC,IAC7C,CAESE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IACZ,CACF,CAAA,CAAA,CAAA,CAAA,CCdQC,EAAsBlD,CACIC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACnC,IAAAkD,CAAAC,CAAAA,CAAAA,CAAArJ,EAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,cAAuCoG,CACrCG,CAAAA,CAAAA,CACAmC,EACAY,CACAC,CAAAA,CAAAA,CACAV,EACAV,CANqC/B,CAAAA,CAOrCF,IAPF,CAAAS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,4BA6BC,CAAA,CAAA,CAAA,CAAA,CATO,iBAAA6C,+CAAsB,CAEtB,CAAAnC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,uGACY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAVjH,EAAAkH,CAAMD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,IAAAjH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,CAAAgH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,CAEVtD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQiG,IAAI,CAACxC,CAAAA,CAAAH,KAAIsC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAC,GAAJjC,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEnBA,KAAK0C,sBACN,uEAnBC,MAAME,CAAWC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAIT7C,KAAKiC,CAAgB,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,CAEvBjC,KAAK8C,CAAwBF,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,CACnC5C,KAAK+C,CAAmBC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOJ,EAASK,CAAQC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,QAa7DhK,CAAA,CCpCQiK,CAAAA,CAAAA,CAAAA,CAAAA,CAA4BhE,CACFC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACnC,CAAAgE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAC,EAAAC,CAAAC,CAAAA,CAAAA,CAAArK,EAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,cAA6CoG,CAC3CG,CAAAA,CAAAA,CACA4C,EACAhB,CAH2C/B,CAAAA,CAI3CF,IAJF,CAAAS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,4BASEwD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWtD,IAAAC,CAAAwD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,KAClB,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAazD,KAAK0D,CAAWC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC7BC,EAAM,CAAItJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAChB,IAAIgE,CACJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQmF,GACN,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACHnF,EAAOsF,CAAIC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWD,EAAIE,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACzC,CACF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CACHxF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOsF,EAAIG,CAASH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAII,WAAa,CACrC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACF,IAAK,CACH1F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOsF,EAAIG,CAASH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAII,WAAa,CACrC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACF,IAAK,CAeL,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAEE1F,EAAOsF,CAAIK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQL,EAAIM,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAdrC,IAAK,CACH5F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOsF,EAAIK,CAAQL,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIM,UAAY,CACnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACF,IAAK,CACH5F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOsF,EAAIK,CAAQL,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIM,UAAY,CACnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACF,IAAK,CACH5F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOsF,EAAIK,CAAQL,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIM,UAAY,CACnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACF,IAAK,CACH5F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOsF,EAAIO,CAASP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAIQ,WAAa,CAOzCpE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKqE,QAAQhI,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACvBE,KAAMyD,CAAKsE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAYX,MACvBrF,CAAMiG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKC,MAAM,CAAIlK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKgE,GAAMjB,CAChC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CA0BL,CANO,CAAAqF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,wIACyB,CAAvBpJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAkH,EAAMkC,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,CAAApJ,OAAA,CAAAA,CAAAA,CAAAA,CAAAgH,KAAAN,CAE7BG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIoD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAE,GAAJhD,CAAAN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACAG,EAAAH,CAAIoD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IAAAG,CAAJjD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,MACD,CAAA,CAAA,CAAA,CAAA,gDApBCA,CAAKsE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAc,IAAIG,CACJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAjBnL,EAAA0G,CAAK0E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAApL,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAAA,CAAAA,CAAAA,CAAAqL,cAAc,CAC/B,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,CAAEjE,OAAQV,CAAKU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEjBV,KAAKsE,CAAYM,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQzE,EAAAH,CAAaqD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KACvC,qBAGCrD,KAAK0D,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAImB,EACH,CAAjBvL,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA0G,KAAK0E,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAApL,OAAA,CAAAA,CAAAA,CAAAA,CAAAqL,cAAc,CAC/B,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,CAAEjE,OAAQV,CAAKU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEjBV,KAAK0D,CAAWkB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQzE,EAAAH,CAAaqD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KACtC,CAQFnK,CAAAA,CAAA,CCvEQ4L,CAAAA,CAAAA,CAAAA,CAAAA,CAAsB3F,CACIC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACnC,IAAA2F,CAAAC,CAAAA,CAAAA,CAAAC,EAAA/L,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,EAAA,CAAuCoG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACrC+B,EACA5B,CACA4C,CAAAA,CAAAA,CAHqC/C,CAIrCF,CAJF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAS,mCAiBEoF,EAAAlF,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAqBkF,GAClBrM,CACCmH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKmF,WAAWrM,CAAOD,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,IAcrC,CAVO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA6J,0IACyB,QAAvBpJ,CAAAkH,CAAAA,CAAAA,CAAMkC,yBAAiB,CAAApJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAAA,CAAAgH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,MAE7BG,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI+E,EAAA,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAJ1E,KAAAN,CAIAG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAH,KAAIiF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAJ3E,KAAAN,CAAwBrH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAaqH,KAAKvH,CAC1CuH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK8B,UAAU3B,CAAAH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAuBiF,EAAA,CAACG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKpF,MAAOrH,KACpD,kDAxBCqH,CAAKmF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,IAAIE,CACH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAjB/L,EAAA0G,CAAK0E,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,IAAApL,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,EAAAqL,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,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC/B,CAAEjE,CAAQV,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKU,SAEjBV,CAAKmF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWG,uBAAuBC,CACrCvF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAKqE,QAAQ5C,CAAmB8D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAEC,OAAO7B,CAAM3K,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,EAAG2B,CAASA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,GAEtE,CAkBFzB,CAAAA,CAAA,IC1CQuM,CAAYtG,CAAAA,CAAAA,CAAAA,CACcC,GAEnC,CAA6BE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC3BoG,CACAC,CAAAA,CAAAA,CACAb,CACA3B,CAAAA,CAAAA,CAJ2B7D,CAK3BF,CACM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAmB,gHACY,QAAVrH,CAAAsH,CAAAA,CAAAA,CAAMD,YAAI,CAAArH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,EAAAA,CAAAoH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAN,MACjB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CCVM4F,EAAwBtG,CAHlBF,CAAAA,CAAAA,CAAAA,CAAAA,CACjB,cAA6BqG,CAAUrG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEJE,CAAmBuG,CCAxDC,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,CAAeC,CAAO,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,CAAmCH"}
package/dist/index.d.ts CHANGED
@@ -4,6 +4,7 @@ import * as _reduxjs_toolkit from '@reduxjs/toolkit';
4
4
  import * as _descope_sdk_component_drivers from '@descope/sdk-component-drivers';
5
5
 
6
6
  type Audit = {
7
+ ID?: string;
7
8
  id: string;
8
9
  userId: string;
9
10
  action: string;
@@ -1234,6 +1235,7 @@ declare const AuditManagementWidget: {
1234
1235
  setSelectedAuditId: (state: {
1235
1236
  auditList: {
1236
1237
  data: {
1238
+ ID?: string;
1237
1239
  id: string;
1238
1240
  userId: string;
1239
1241
  action: string;
@@ -1286,6 +1288,7 @@ declare const AuditManagementWidget: {
1286
1288
  setSelectedAuditId: (state: {
1287
1289
  auditList: {
1288
1290
  data: {
1291
+ ID?: string;
1289
1292
  id: string;
1290
1293
  userId: string;
1291
1294
  action: string;
@@ -1338,6 +1341,7 @@ declare const AuditManagementWidget: {
1338
1341
  setSelectedAuditId: (state: {
1339
1342
  auditList: {
1340
1343
  data: {
1344
+ ID?: string;
1341
1345
  id: string;
1342
1346
  userId: string;
1343
1347
  action: string;
@@ -1390,6 +1394,7 @@ declare const AuditManagementWidget: {
1390
1394
  setSelectedAuditId: (state: {
1391
1395
  auditList: {
1392
1396
  data: {
1397
+ ID?: string;
1393
1398
  id: string;
1394
1399
  userId: string;
1395
1400
  action: string;
@@ -1442,6 +1447,7 @@ declare const AuditManagementWidget: {
1442
1447
  subscribe: <SelectorR = State>(cb: (state: SelectorR) => void, selector?: (state: {
1443
1448
  auditList: {
1444
1449
  data: {
1450
+ ID?: string;
1445
1451
  id: string;
1446
1452
  userId: string;
1447
1453
  action: string;
@@ -1521,22 +1527,22 @@ declare const AuditManagementWidget: {
1521
1527
  geo: string;
1522
1528
  };
1523
1529
  }>);
1524
- auditTable: _descope_sdk_component_drivers.GridDriver<Audit>;
1530
+ auditTable: _descope_sdk_component_drivers.GridDriver<Partial<Audit>>;
1525
1531
  "__#8@#initAuditTable"(): void;
1526
1532
  "__#8@#onAuditListUpdate": (auditList: {
1527
1533
  occurredFormatted: string;
1528
- id: string;
1529
- userId: string;
1530
- action: string;
1531
- actorId: string;
1532
- type: string;
1533
- occurred: number;
1534
- device: string;
1535
- method: string;
1536
- geo: string;
1537
- remoteAddress: string;
1538
- externalIds: string[];
1539
- data?: Record<string, string>;
1534
+ data: {
1535
+ [x: string]: string;
1536
+ };
1537
+ id?: string;
1538
+ userId?: string;
1539
+ action?: string;
1540
+ actorId?: string;
1541
+ device?: string;
1542
+ method?: string;
1543
+ geo?: string;
1544
+ remoteAddress?: string;
1545
+ externalIds?: string[];
1540
1546
  }[]) => void;
1541
1547
  "__#12335@#globalStyleTag": HTMLStyleElement;
1542
1548
  readonly theme: _descope_sdk_mixins.ThemeOptions;