diff --git a/backend/src/managers/image/image.module.ts b/backend/src/managers/image/image.module.ts index e8d0df2..0afb5a6 100644 --- a/backend/src/managers/image/image.module.ts +++ b/backend/src/managers/image/image.module.ts @@ -64,7 +64,7 @@ export class ImageManagerModule implements OnModuleInit, OnModuleDestroy { this.logger.warn(result.print()); } - this.logger.log(`Cleaned up ${result} derivatives`); + if (result > 0) this.logger.log(`Cleaned up ${result} derivatives`); } private async cleanupExpired() { @@ -74,7 +74,8 @@ export class ImageManagerModule implements OnModuleInit, OnModuleDestroy { this.logger.warn(cleanedUp.print()); } - this.logger.log(`Cleaned up ${cleanedUp} expired images`); + if (cleanedUp > 0) + this.logger.log(`Cleaned up ${cleanedUp} expired images`); } onModuleDestroy() { diff --git a/frontend/src/app/app.component.html b/frontend/src/app/app.component.html index c2a1feb..bbf38e5 100644 --- a/frontend/src/app/app.component.html +++ b/frontend/src/app/app.component.html @@ -1,6 +1,7 @@ diff --git a/frontend/src/app/app.component.ts b/frontend/src/app/app.component.ts index 5cd9b22..f761b31 100644 --- a/frontend/src/app/app.component.ts +++ b/frontend/src/app/app.component.ts @@ -5,7 +5,8 @@ import { ActivatedRoute, NavigationEnd, NavigationError, - Router, + NavigationStart, + Router } from '@angular/router'; import { AutoUnsubscribe } from 'ngx-auto-unsubscribe-decorator'; import { RouteTransitionAnimations } from './app.animation'; @@ -24,6 +25,9 @@ export class AppComponent implements OnInit { @ViewChild(MatSidenav) sidebar: MatSidenav; + loading: boolean = false; + private loadingTimeout: number | null = null; + wrapContentWithContainer: boolean = true; sidebarPortal: Portal | undefined = undefined; @@ -54,6 +58,12 @@ export class AppComponent implements OnInit { @AutoUnsubscribe() private subscribeRouter() { return this.router.events.subscribe((event) => { + if (event instanceof NavigationStart) { + this.loadingStart(); + } + if (event instanceof NavigationEnd) { + this.loadingEnd(); + } if (event instanceof NavigationEnd) this.onNavigationEnd(event); if (event instanceof NavigationError) this.onNavigationError(event); }); @@ -87,6 +97,21 @@ export class AppComponent implements OnInit { this.updateSidebar(); } + private loadingStart() { + if (this.loadingTimeout !== null) clearTimeout(this.loadingTimeout); + + this.loadingTimeout = window.setTimeout(() => { + this.loading = true; + }, 500); + } + + private loadingEnd() { + if (this.loadingTimeout !== null) clearTimeout(this.loadingTimeout); + this.loadingTimeout = null; + + this.loading = false; + } + private updateSidebar() { if (!this.sidebar) return; diff --git a/frontend/src/app/components/header/header.component.html b/frontend/src/app/components/header/header.component.html index df89143..ef0e0a9 100644 --- a/frontend/src/app/components/header/header.component.html +++ b/frontend/src/app/components/header/header.component.html @@ -1,4 +1,11 @@ + +