@descope/audit-management-widget 0.1.14 → 0.1.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -2
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/package.json +6 -6
package/README.md
CHANGED
|
@@ -17,8 +17,6 @@ DESCOPE_WIDGET_ID= # default: "audit-management-widget"
|
|
|
17
17
|
|
|
18
18
|
### Example
|
|
19
19
|
|
|
20
|
-
Use the `descope-audit-management-widget` in this package's `index.html`. Comment out the widget web-component from `index.html` and paste this:
|
|
21
|
-
|
|
22
20
|
```
|
|
23
21
|
<script src="https://cdn.jsdelivr.net/npm/@descope/audit-management-widget/dist/index.js"></script>
|
|
24
22
|
<descope-audit-management-widget
|
package/dist/esm/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
/**
|
|
3
|
-
* @descope/audit-management-widget v0.1.
|
|
3
|
+
* @descope/audit-management-widget v0.1.15
|
|
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,createValidateAttributesMixin as u,createStateManagementMixin as h,initLifecycleMixin as g,staticResourcesMixin as m,descopeUiMixin as v,initElementMixin as p,debuggerMixin as f,themeMixin as w}from"@descope/sdk-mixins";import{TextFieldDriver as b,SingleSelectDriver as y,GridDriver as k}from"@descope/sdk-component-drivers";import{createAsyncThunk as
|
|
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,createValidateAttributesMixin as u,createStateManagementMixin as h,initLifecycleMixin as g,staticResourcesMixin as m,descopeUiMixin as v,initElementMixin as p,debuggerMixin as f,themeMixin as w}from"@descope/sdk-mixins";import{TextFieldDriver as b,SingleSelectDriver as y,GridDriver as k}from"@descope/sdk-component-drivers";import{createAsyncThunk as x}from"@reduxjs/toolkit";import{createSelector as R}from"reselect";import C from"@descope/web-js-sdk";const I=e=>e.selectedAuditId,L=R((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"})))));R(I,L,((e,t)=>t.find((t=>e===t.id)))),R(I,(e=>!!e));const j=x("audit/search",((e,{extra:{api:t},getState:i})=>{const s=i().searchParams;return t.audit.search(Object.assign(Object.assign({},s),e))})),A=(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)}))}))})(j)({onPending:(e,t)=>{e.searchParams=Object.assign(Object.assign({},e.searchParams),t.meta.arg)},onFulfilled:(e,t)=>{e.auditList.data=t.payload}},(W=e=>e.auditList,{onFulfilled:e=>{W(e).loading=!1},onPending:e=>{W(e).loading=!0,W(e).error=null},onRejected:(e,t)=>{W(e).loading=!1,W(e).error=t.error}}));var W;const D={action:j,reducer:A},S={auditList:{data:[],loading:!1,error:null},searchParams:{text:"",sort:[]},selectedAuditId:""},$={search:"/v1/mgmt/audit/search"},O=({text:e,sort:t})=>r(void 0,void 0,void 0,(function*(){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()))))}))})),P=({httpClient:e,tenant:t,mock:i})=>({search:({page:s,limit:o=1e4,text:a,sort:n,from:d}={})=>r(void 0,void 0,void 0,(function*(){if(i)return O({page:s,limit:o,text:a,sort:n},t);const c=yield e.post($.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}))}),M=e((e=>{var i,s,o,h;const g=t(d,c,l,u({tenant:u.missingAttrValidator}))(e);return h=class extends g{constructor(){super(...arguments),i.add(this),s.set(this,void 0)}get baseUrl(){return this.getAttribute("base-url")}get tenant(){return this.getAttribute("tenant")}get 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}});var t;return r(this,void 0,void 0,(function*(){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=C(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.15"}}));return{audit:P({httpClient:o.httpClient,tenant:t,mock:i})}})({projectId:this.projectId,baseUrl:this.baseUrl},this.tenant,"true"===this.mock,this.widgetId),"f")},h})),E=e((e=>{const i=t(h({name:"widget",initialState:S,reducers:{setSelectedAuditId:(e,{payload:t})=>{e.selectedAuditId=t}},extraReducers:e=>{D.reducer(e)},asyncActions:{searchAudit:D.action}}),g,l,M)(e);return class extends i{constructor(...e){super(...e),this.state=S,this.subscribe((e=>{this.logger.debug("State update:",e),this.state=e}))}}})),T=e((e=>{const i=t(m,u({"widget-id":u.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}))}}})),H=e((e=>{var s,o,n;return n=class extends(t(l,g,v,p,T,E)(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}});var t;return r(this,void 0,void 0,(function*(){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})),U=e((e=>{var i,o,n,d,c;return c=class extends(t(l,H,E)(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}});var t;return r(this,void 0,void 0,(function*(){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 b(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 y(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})),q=e((e=>{var i,s,n,d;return d=class extends(t(E,l,H)(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}});var t;return r(this,void 0,void 0,(function*(){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,L(this.state)),this.subscribe(a(this,n,"f").bind(this),L)}))}},n=new WeakMap,i=new WeakSet,s=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})),F=e((e=>class extends(t(f,w,q,U)(e)){init(){const e=Object.create(null,{init:{get:()=>super.init}});var t;return r(this,void 0,void 0,(function*(){yield null===(t=e.init)||void 0===t?void 0:t.call(this)}))}})),N=t((e=>class extends(F(e)){}))(HTMLElement);customElements.define("descope-audit-management-widget",N);export{N as default};
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/lib/widget/state/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 createValidateAttributesMixin,\n loggerMixin,\n observeAttributesMixin,\n projectIdMixin,\n} from '@descope/sdk-mixins';\nimport { Sdk, createSdk } from '../api/sdk';\n\nexport const apiMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) => {\n const BaseClass = compose(\n projectIdMixin,\n observeAttributesMixin,\n loggerMixin,\n createValidateAttributesMixin({\n tenant: createValidateAttributesMixin.missingAttrValidator,\n }),\n )(superclass);\n\n return class ApiMixinClass extends BaseClass {\n #api: Sdk;\n\n #createSdk() {\n this.logger.debug('creating an sdk instance');\n this.#api = createSdk(\n { projectId: this.projectId, baseUrl: this.baseUrl },\n this.tenant,\n this.mock === 'true',\n );\n }\n\n get baseUrl() {\n return this.getAttribute('base-url');\n }\n\n get tenant() {\n return this.getAttribute('tenant');\n }\n\n get mock() {\n return this.getAttribute('mock');\n }\n\n get api() {\n if (!this.#api) {\n this.#createSdk();\n }\n\n return this.#api;\n }\n\n async init() {\n await super.init?.();\n\n this.observeAttributes(['project-id', 'base-url', 'tenant'], () => {\n if (this.#api) {\n this.#createSdk();\n }\n });\n }\n };\n },\n);\n","import createWebSdk from '@descope/web-js-sdk';\nimport { createAuditSdk } from './createAuditSdk';\n\nexport const createSdk = (\n config: Parameters<typeof createWebSdk>[0],\n tenant: string,\n mock: boolean,\n) => {\n const webSdk = createWebSdk({ ...config, persistTokens: true });\n\n return {\n 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","__awaiter","Promise","resolve","i","push","actorId","type","method","userId","device","geo","remoteAddress","externalIds","getTime","s","a","b","desc","_b","field","localeCompare","_a","filter","toLowerCase","includes","createAuditSdk","httpClient","tenant","mock","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","createValidateAttributesMixin","missingAttrValidator","constructor","_ApiMixinClass_api","set","this","baseUrl","getAttribute","__classPrivateFieldGet","_ApiMixinClass_instances","_ApiMixinClass_createSdk","call","init","_super","observeAttributes","logger","debug","__classPrivateFieldSet","config","webSdk","createWebSdk","persistTokens","createSdk","projectId","stateManagementMixin","createStateManagementMixin","name","reducers","setSelectedAuditId","extraReducers","asyncActions","initLifecycleMixin","super","subscribe","fetchWidgetPagesMixin","staticResourcesMixin","widgetId","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/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 createValidateAttributesMixin,\n loggerMixin,\n observeAttributesMixin,\n projectIdMixin,\n} from '@descope/sdk-mixins';\nimport { Sdk, createSdk } from '../api/sdk';\n\nexport const apiMixin = createSingletonMixin(\n <T extends CustomElementConstructor>(superclass: T) => {\n const BaseClass = compose(\n projectIdMixin,\n observeAttributesMixin,\n loggerMixin,\n createValidateAttributesMixin({\n tenant: createValidateAttributesMixin.missingAttrValidator,\n }),\n )(superclass);\n\n return class ApiMixinClass extends BaseClass {\n #api: Sdk;\n\n #createSdk() {\n this.logger.debug('creating an sdk instance');\n this.#api = createSdk(\n { projectId: this.projectId, baseUrl: this.baseUrl },\n this.tenant,\n this.mock === 'true',\n this.widgetId,\n );\n }\n\n get baseUrl() {\n return this.getAttribute('base-url');\n }\n\n get tenant() {\n return this.getAttribute('tenant');\n }\n\n get 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","__awaiter","Promise","resolve","i","push","actorId","type","method","userId","device","geo","remoteAddress","externalIds","getTime","s","a","b","desc","_b","field","localeCompare","_a","filter","toLowerCase","includes","createAuditSdk","httpClient","tenant","mock","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","createValidateAttributesMixin","missingAttrValidator","constructor","_ApiMixinClass_api","set","this","baseUrl","getAttribute","widgetId","__classPrivateFieldGet","_ApiMixinClass_instances","_ApiMixinClass_createSdk","call","init","_super","observeAttributes","logger","debug","__classPrivateFieldSet","config","webSdk","createWebSdk","persistTokens","baseHeaders","createSdk","projectId","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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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -61,6 +61,7 @@ declare const AuditManagementWidget: {
|
|
|
61
61
|
"__#5@#createSdk": (() => void) & (() => void) & (() => void) & (() => void);
|
|
62
62
|
readonly baseUrl: string;
|
|
63
63
|
readonly tenant: string;
|
|
64
|
+
readonly widgetId: string;
|
|
64
65
|
readonly mock: string;
|
|
65
66
|
readonly api: {
|
|
66
67
|
audit: {
|
|
@@ -1323,7 +1324,6 @@ declare const AuditManagementWidget: {
|
|
|
1323
1324
|
selectedAuditId: string;
|
|
1324
1325
|
}) => SelectorR) => redux.Unsubscribe;
|
|
1325
1326
|
"__#6@#initWidgetRoot": (() => Promise<void>) & (() => Promise<void>);
|
|
1326
|
-
readonly widgetId: string;
|
|
1327
1327
|
fetchWidgetPage: ((filename: string) => Promise<string>) & ((filename: string) => Promise<string>);
|
|
1328
1328
|
fetchStaticResource: (<F extends "text" | "json">(filename: string, format: F) => Promise<{
|
|
1329
1329
|
body: F extends "json" ? Record<string, any> : string;
|