import { CommonModule } from '@angular/common'; import { Component, HostListener } from '@angular/core'; import { ActivatedRoute, NavigationEnd, Router, RouterOutlet } from '@angular/router'; import { KeycloakService } from 'keycloak-angular'; import onChange from 'on-change'; import { filter } from 'rxjs/operators'; import { ListingCriteria } from '../../../bizmatch-server/src/models/main.model'; import build from '../build'; import { FooterComponent } from './components/footer/footer.component'; import { HeaderComponent } from './components/header/header.component'; import { MessageContainerComponent } from './components/message/message-container.component'; import { LoadingService } from './services/loading.service'; import { UserService } from './services/user.service'; import { createDefaultListingCriteria } from './utils/utils'; @Component({ selector: 'app-root', standalone: true, imports: [CommonModule, RouterOutlet, HeaderComponent, FooterComponent, MessageContainerComponent], providers: [], templateUrl: './app.component.html', styleUrl: './app.component.scss', }) export class AppComponent { build = build; title = 'bizmatch'; actualRoute = ''; listingCriteria: ListingCriteria = onChange(createDefaultListingCriteria(), (path, value, previousValue, applyData) => { sessionStorage.setItem('criteria', JSON.stringify(value)); }); public constructor(public loadingService: LoadingService, private router: Router, private activatedRoute: ActivatedRoute, private keycloakService: KeycloakService, private userService: UserService) { this.router.events.pipe(filter(event => event instanceof NavigationEnd)).subscribe(() => { let currentRoute = this.activatedRoute.root; while (currentRoute.children[0] !== undefined) { currentRoute = currentRoute.children[0]; } // Hier haben Sie Zugriff auf den aktuellen Route-Pfad this.actualRoute = currentRoute.snapshot.url[0].path; }); } ngOnInit() {} @HostListener('window:keydown', ['$event']) handleKeyboardEvent(event: KeyboardEvent) { // this.router.events.subscribe(event => { // if (event instanceof NavigationEnd) { // initFlowbite(); // } // }); if (event.shiftKey && event.ctrlKey && event.key === 'V') { this.showVersionDialog(); } } showVersionDialog() { // this.confirmationService.confirm({ // target: event.target as EventTarget, // message: `App Version: ${this.build.timestamp}`, // header: 'Version Info', // icon: 'pi pi-info-circle', // accept: () => {}, // reject: () => {}, // }); } }