diff --git a/web/package-lock.json b/web/package-lock.json index 958ba6b2e..680d55dfc 100644 --- a/web/package-lock.json +++ b/web/package-lock.json @@ -61,12 +61,13 @@ "typescript": "^4.3.5", "webcomponent-qr-code": "^1.0.5", "yaml": "^1.10.2" - } + }, + "devDependencies": {} }, "api": { "name": "authentik-api", - "version": "0.0.1", - "dependencies": { + "version": "1.0.0", + "devDependencies": { "typescript": "^3.6" } }, @@ -74,6 +75,7 @@ "version": "3.9.9", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.9.tgz", "integrity": "sha512-kdMjTiekY+z/ubJCATUPlRDl39vXYiMV9iyeMuEuXZh2we6zz80uovNN2WlAxmmdE/Z/YQe+EbOEXB5RHEED3w==", + "dev": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -10204,7 +10206,8 @@ "typescript": { "version": "3.9.9", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.9.tgz", - "integrity": "sha512-kdMjTiekY+z/ubJCATUPlRDl39vXYiMV9iyeMuEuXZh2we6zz80uovNN2WlAxmmdE/Z/YQe+EbOEXB5RHEED3w==" + "integrity": "sha512-kdMjTiekY+z/ubJCATUPlRDl39vXYiMV9iyeMuEuXZh2we6zz80uovNN2WlAxmmdE/Z/YQe+EbOEXB5RHEED3w==", + "dev": true } } }, diff --git a/web/src/elements/table/Table.ts b/web/src/elements/table/Table.ts index 993e3b924..d65b5e6a9 100644 --- a/web/src/elements/table/Table.ts +++ b/web/src/elements/table/Table.ts @@ -225,7 +225,14 @@ export abstract class Table extends LitElement { renderToolbar(): TemplateResult { return html``; @@ -241,7 +248,12 @@ export abstract class Table extends LitElement { } return html` { this.search = value; - this.fetch(); + this.dispatchEvent( + new CustomEvent(EVENT_REFRESH, { + bubbles: true, + composed: true, + }) + ); }}>  `; } @@ -274,7 +286,15 @@ export abstract class Table extends LitElement { { this.page = page; this.fetch(); }}> + .pageChangeHandler=${(page: number) => { + this.page = page; + this.dispatchEvent( + new CustomEvent(EVENT_REFRESH, { + bubbles: true, + composed: true, + }) + ); + }}> @@ -300,7 +320,15 @@ export abstract class Table extends LitElement { { this.page = page; this.fetch(); }}> + .pageChangeHandler=${(page: number) => { + this.page = page; + this.dispatchEvent( + new CustomEvent(EVENT_REFRESH, { + bubbles: true, + composed: true, + }) + ); + }}> `; } diff --git a/web/src/pages/outposts/OutpostHealth.ts b/web/src/pages/outposts/OutpostHealth.ts index fed6f4b51..8c3395a6f 100644 --- a/web/src/pages/outposts/OutpostHealth.ts +++ b/web/src/pages/outposts/OutpostHealth.ts @@ -15,7 +15,7 @@ export class OutpostHealthElement extends LitElement { outpostId?: string; @property({attribute: false}) - outpostHealth: OutpostHealth[] = []; + outpostHealth?: OutpostHealth[]; static get styles(): CSSResult[] { return [PFBase, AKGlobal]; @@ -23,7 +23,8 @@ export class OutpostHealthElement extends LitElement { constructor() { super(); - this.addEventListener(EVENT_REFRESH, () => { + window.addEventListener(EVENT_REFRESH, () => { + this.outpostHealth = undefined; this.firstUpdated(); }); } @@ -38,7 +39,7 @@ export class OutpostHealthElement extends LitElement { } render(): TemplateResult { - if (!this.outpostId) { + if (!this.outpostId || !this.outpostHealth) { return html``; } if (this.outpostHealth.length === 0) {