From a73809fff1e536938335ff5d7c72015980bedba9 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Wed, 30 Sep 2026 19:43:25 +0200 Subject: [PATCH] Task/add loading indicator to platform and tag management of admin panel (#7982) * Add loading indicator * Update changelog --- CHANGELOG.md | 2 ++ .../admin-platform/admin-platform.component.html | 11 +++++++++++ .../admin-platform/admin-platform.component.ts | 10 ++++++++++ .../app/components/admin-tag/admin-tag.component.html | 11 +++++++++++ .../app/components/admin-tag/admin-tag.component.ts | 9 +++++++++ 5 files changed, 43 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index b4d9031a0f..46f30da1b2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added +- Added a loading indicator to the platform management of the admin control panel +- Added a loading indicator to the tag management of the admin control panel - Added a _Refresh_ action to the user detail dialog menu in the admin control panel - Added the total column to the table of the tag management in the admin control panel diff --git a/apps/client/src/app/components/admin-platform/admin-platform.component.html b/apps/client/src/app/components/admin-platform/admin-platform.component.html index c349dd9b8a..b281011abb 100644 --- a/apps/client/src/app/components/admin-platform/admin-platform.component.html +++ b/apps/client/src/app/components/admin-platform/admin-platform.component.html @@ -103,6 +103,17 @@ +@if (isLoading) { + +} + (); + protected readonly displayedColumns = [ 'icon', 'name', @@ -68,12 +71,15 @@ export class GfAdminPlatformComponent implements OnInit { 'accounts', 'actions' ]; + + protected isLoading = false; protected readonly pageSize = DEFAULT_PAGE_SIZE; protected platforms: Platform[]; private readonly deviceType = computed( () => this.deviceDetectorService.deviceInfo().deviceType ); + private readonly paginator = viewChild.required(MatPaginator); private readonly sort = viewChild.required(MatSort); @@ -149,6 +155,8 @@ export class GfAdminPlatformComponent implements OnInit { } private fetchPlatforms() { + this.isLoading = true; + this.adminService .fetchPlatforms() .pipe(takeUntilDestroyed(this.destroyRef)) @@ -162,6 +170,8 @@ export class GfAdminPlatformComponent implements OnInit { this.dataService.updateInfo(); + this.isLoading = false; + this.changeDetectorRef.markForCheck(); }); } diff --git a/apps/client/src/app/components/admin-tag/admin-tag.component.html b/apps/client/src/app/components/admin-tag/admin-tag.component.html index 83f7b559d4..2e8750093a 100644 --- a/apps/client/src/app/components/admin-tag/admin-tag.component.html +++ b/apps/client/src/app/components/admin-tag/admin-tag.component.html @@ -141,6 +141,17 @@ +@if (isLoading) { + +} + this.deviceDetectorService.deviceInfo().deviceType ); + private readonly paginator = viewChild.required(MatPaginator); private readonly sort = viewChild.required(MatSort); @@ -163,6 +168,8 @@ export class GfAdminTagComponent implements OnInit { } private fetchTags() { + this.isLoading = true; + this.dataService .fetchTags() .pipe(takeUntilDestroyed(this.destroyRef)) @@ -185,6 +192,8 @@ export class GfAdminTagComponent implements OnInit { this.dataService.updateInfo(); + this.isLoading = false; + this.changeDetectorRef.markForCheck(); }); }