@rxap/layout 14.0.0 → 14.0.1
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rxap-layout.mjs","sources":["../../../../libs/layout/src/lib/tokens.ts","../../../../libs/layout/src/lib/footer/footer.component.html","../../../../libs/layout/src/lib/footer/footer.component.ts","../../../../libs/layout/src/lib/footer/footer.component.module.ts","../../../../libs/layout/src/lib/header/sign-out/sign-out.component.ts","../../../../libs/layout/src/lib/header/sign-out/sign-out.component.html","../../../../libs/layout/src/lib/header/user-profile-icon/user-profile-icon.component.html","../../../../libs/layout/src/lib/header/user-profile-icon/user-profile-icon.component.ts","../../../../libs/layout/src/lib/header/navigation-progress-bar/navigation-progress-bar.component.html","../../../../libs/layout/src/lib/header/navigation-progress-bar/navigation-progress-bar.component.ts","../../../../libs/layout/src/lib/header/sidenav-toggle-button/sidenav-toggle-button.component.html","../../../../libs/layout/src/lib/header/sidenav-toggle-button/sidenav-toggle-button.component.ts","../../../../libs/layout/src/lib/header/apps-button/apps-button.component.html","../../../../libs/layout/src/lib/header/apps-button/apps-button.component.ts","../../../../libs/layout/src/lib/header/language-selector/language-selector.component.html","../../../../libs/layout/src/lib/header/language-selector/language-selector.component.ts","../../../../libs/layout/src/lib/header/header.component.html","../../../../libs/layout/src/lib/header/header.component.ts","../../../../libs/layout/src/lib/header/sign-out/sign-out.component.module.ts","../../../../libs/layout/src/lib/header/user-profile-icon/user-profile-icon.component.module.ts","../../../../libs/layout/src/lib/header/navigation-progress-bar/navigation-progress-bar.component.module.ts","../../../../libs/layout/src/lib/header/sidenav-toggle-button/sidenav-toggle-button.component.module.ts","../../../../libs/layout/src/lib/header/reset-button/reset-button.component.ts","../../../../libs/layout/src/lib/header/reset-button/reset-button.component.html","../../../../libs/layout/src/lib/header/reset-button/reset-button.component.module.ts","../../../../libs/layout/src/lib/header/apps-button/apps-button.component.module.ts","../../../../libs/layout/src/lib/header/language-selector/language-selector.component.module.ts","../../../../libs/layout/src/lib/header/header.component.module.ts","../../../../libs/layout/src/lib/layout/layout.component.service.ts","../../../../libs/layout/src/lib/sidenav/sidenav-footer.directive.ts","../../../../libs/layout/src/lib/sidenav/sidenav-header.directive.ts","../../../../libs/layout/src/lib/sidenav/sidenav.component.service.ts","../../../../libs/layout/src/lib/navigation/navigation-item.ts","../../../../libs/layout/src/lib/navigation/navigation.service.ts","../../../../libs/layout/src/lib/navigation/navigation-item/navigation-item.component.html","../../../../libs/layout/src/lib/navigation/navigation-item/navigation-item.component.ts","../../../../libs/layout/src/lib/navigation/navigation.component.html","../../../../libs/layout/src/lib/navigation/navigation.component.ts","../../../../libs/layout/src/lib/sidenav/sidenav.component.html","../../../../libs/layout/src/lib/sidenav/sidenav.component.ts","../../../../libs/layout/src/lib/sidenav-content/sidenav-content.component.service.ts","../../../../libs/layout/src/lib/sidenav-content/sidenav-content.component.ts","../../../../libs/layout/src/lib/sidenav-content/sidenav-content.component.html","../../../../libs/layout/src/lib/window-container-sidenav/window-container-sidenav.component.html","../../../../libs/layout/src/lib/window-container-sidenav/window-container-sidenav.component.ts","../../../../libs/layout/src/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.html","../../../../libs/layout/src/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.ts","../../../../libs/layout/src/lib/layout/layout.component.html","../../../../libs/layout/src/lib/layout/layout.component.ts","../../../../libs/layout/src/lib/navigation/replace-router-paths.service.ts","../../../../libs/layout/src/lib/navigation/replace-router-paths.pipe.ts","../../../../libs/layout/src/lib/navigation/navigation.component.module.ts","../../../../libs/layout/src/lib/sidenav/sidenav.component.module.ts","../../../../libs/layout/src/lib/sidenav-content/sidenav-content.component.module.ts","../../../../libs/layout/src/lib/window-container-sidenav/window-container-sidenav.component.module.ts","../../../../libs/layout/src/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.module.ts","../../../../libs/layout/src/lib/layout/layout.component.module.ts","../../../../libs/layout/src/lib/sidenav/version/version.component.html","../../../../libs/layout/src/lib/sidenav/version/version.component.ts","../../../../libs/layout/src/lib/sidenav/version/version.component.module.ts","../../../../libs/layout/src/lib/footer.directive.ts","../../../../libs/layout/src/rxap-layout.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { LogoConfig } from './types';\nimport { NavigationWithInserts } from './navigation/navigation-item';\n\nexport const RXAP_NAVIGATION_CONFIG = new InjectionToken<NavigationWithInserts | (() => NavigationWithInserts)>('rxap/layout/navigation-config');\nexport const RXAP_NAVIGATION_CONFIG_INSERTS = new InjectionToken<Record<string, NavigationWithInserts>>('rxap/layout/navigation-config-inserts');\n\nexport const RXAP_FOOTER_COMPONENT = new InjectionToken('rxap/layout/footer-component');\nexport const RXAP_HEADER_COMPONENT = new InjectionToken('rxap/layout/header-component');\nexport const RXAP_LOGO_CONFIG = new InjectionToken<LogoConfig>('rxap/layout/logo-config');\nexport const RXAP_LAYOUT_APPS_GRID = new InjectionToken('rxap/layout/apps-grid');\n","<ng-template [ngIf]=\"footerService.portals$ | async\" let-portals>\n <mat-toolbar *ngIf=\"portals.length\" class=\"footer mat-elevation-z1\">\n <mat-toolbar-row *ngFor=\"let portal of portals\">\n <ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n </mat-toolbar-row>\n </mat-toolbar>\n</ng-template>\n","import {\n Component,\n ChangeDetectionStrategy\n} from '@angular/core';\nimport { FooterService } from '@rxap/services';\n\n@Component({\n selector: 'rxap-footer',\n templateUrl: './footer.component.html',\n styleUrls: [ './footer.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class FooterComponent {\n\n constructor(\n public readonly footerService: FooterService\n ) {}\n\n}\n","import { NgModule } from '@angular/core';\nimport { FooterComponent } from './footer.component';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { CommonModule } from '@angular/common';\nimport { PortalModule } from '@angular/cdk/portal';\n\n\n@NgModule({\n declarations: [ FooterComponent ],\n imports: [\n MatToolbarModule,\n CommonModule,\n PortalModule\n ],\n exports: [ FooterComponent ]\n})\nexport class FooterModule {}\n","import {\n Component,\n ChangeDetectionStrategy,\n Inject\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'rxap-sign-out',\n templateUrl: './sign-out.component.html',\n styleUrls: [ './sign-out.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'rxap-sign-out' }\n})\nexport class SignOutComponent {\n\n constructor(\n @Inject(Router)\n private readonly router: Router\n ) {}\n\n public redirectToRoot() {\n this.router.navigate([ '/' ]);\n }\n\n}\n","<button\n rxapSignOut\n (successful)=\"redirectToRoot()\"\n mat-icon-button\n>\n <mat-icon>login</mat-icon>\n</button>\n","<button [matMenuTriggerFor]=\"menu\"\n [rxapAvatarBackgroundImage]=\"userProfileUrl$ | async\"\n [name]=\"(userName$ | async) ?? ''\"\n class=\"profile-icon\"\n fxLayout=\"row\"\n fxLayoutAlign=\"center center\">\n</button>\n\n<mat-menu #menu=\"matMenu\" [yPosition]=\"'below'\">\n <ng-template [ngIf]=\"userService.user$ | async\" let-user>\n <button *ngIf=\"user.firstname && user.lastname\" mat-menu-item>\n <mat-icon>person</mat-icon>\n <span>{{user.firstname}} {{user.lastname}}</span>\n </button>\n <button *ngIf=\"user.name\" mat-menu-item>\n <mat-icon>person</mat-icon>\n <span>{{user.name}}</span>\n </button>\n <button *ngIf=\"user.username\" mat-menu-item>\n <mat-icon>account_circle</mat-icon>\n <span>{{user.username}}</span>\n </button>\n <button *ngIf=\"user.email\" mat-menu-item>\n <mat-icon>email</mat-icon>\n <span>{{user.email}}</span>\n </button>\n </ng-template>\n</mat-menu>\n","import {\n Component,\n ChangeDetectionStrategy,\n Inject\n} from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { UserService } from '@rxap/authentication';\nimport { map } from 'rxjs/operators';\nimport { isDefined } from '@rxap/utilities/rxjs';\n\n@Component({\n selector: 'rxap-user-profile-icon',\n templateUrl: './user-profile-icon.component.html',\n styleUrls: ['./user-profile-icon.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'rxap-user-profile-icon' },\n})\nexport class UserProfileIconComponent {\n public userProfileUrl$: Observable<string | undefined>;\n public userName$: Observable<string>;\n\n constructor(\n @Inject(UserService)\n public userService: UserService\n ) {\n this.userProfileUrl$ = this.userService.user$.pipe(\n isDefined(),\n map((user) => user.photoURL ?? user.avatarUrl)\n );\n this.userName$ = this.userService.user$.pipe(\n isDefined(),\n map(\n (user) =>\n user.name ??\n (user.firstname || user.lastname\n ? [user.firstname, user.lastname].join(' ').trim()\n : null) ??\n user.username\n )\n );\n }\n}\n","<mat-progress-bar\n *ngIf=\"navigating$ | async\"\n mode=\"indeterminate\"\n color=\"accent\"\n></mat-progress-bar>\n","import {\n Component,\n ChangeDetectionStrategy,\n Inject\n} from '@angular/core';\nimport { Observable } from 'rxjs';\nimport {\n Router,\n NavigationStart,\n NavigationEnd,\n NavigationCancel\n} from '@angular/router';\nimport {\n filter,\n map\n} from 'rxjs/operators';\n\n@Component({\n selector: 'rxap-navigation-progress-bar',\n templateUrl: './navigation-progress-bar.component.html',\n styleUrls: [ './navigation-progress-bar.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'rxap-navigation-progress-bar' }\n})\nexport class NavigationProgressBarComponent {\n\n public navigating$: Observable<boolean>;\n\n public constructor(\n @Inject(Router) public readonly router: Router\n ) {\n this.navigating$ = this.router.events.pipe(\n filter(\n event =>\n event instanceof NavigationStart ||\n event instanceof NavigationEnd ||\n event instanceof NavigationCancel\n ),\n map(event => event instanceof NavigationStart)\n );\n }\n\n}\n","<button (click)=\"sidenav.toggle()\" mat-icon-button>\n <mat-icon *ngIf=\"!sidenav.opened\">menu</mat-icon>\n <mat-icon *ngIf=\"sidenav.opened\">menu_open</mat-icon>\n</button>\n","import {\n Component,\n ChangeDetectionStrategy,\n Input\n} from '@angular/core';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { Required } from '@rxap/utilities';\n\n@Component({\n selector: 'rxap-sidenav-toggle-button',\n templateUrl: './sidenav-toggle-button.component.html',\n styleUrls: [ './sidenav-toggle-button.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'rxap-sidenav-toggle-button' }\n})\nexport class SidenavToggleButtonComponent {\n\n @Input()\n @Required\n public sidenav!: MatSidenav;\n\n}\n","<ng-template [ngIf]=\"grid && grid.length\">\n <button #trigger=\"cdkOverlayOrigin\" (click)=\"isOpen = !isOpen\" cdkOverlayOrigin mat-icon-button>\n <mat-icon>apps</mat-icon>\n </button>\n\n <ng-template (overlayOutsideClick)=\"isOpen = false\"\n [cdkConnectedOverlayOpen]=\"isOpen\"\n [cdkConnectedOverlayOrigin]=\"trigger\"\n cdkConnectedOverlay>\n\n <div class=\"grid-container\">\n\n <ul [ngStyle]=\"{ columns: columns }\" class=\"grid\">\n <li *ngFor=\"let item of gridWithPadding\" [ngClass]=\"{ empty: item.empty }\">\n <a *ngIf=\"!item.empty\" [href]=\"item.href\">\n\n <span fxLayout=\"column\" fxLayoutAlign=\"start center\" fxLayoutGap=\"12px\">\n <img [src]=\"item.image\" width=\"53px\">\n <span>{{item.label}}</span>\n </span>\n\n </a>\n </li>\n </ul>\n\n </div>\n\n </ng-template>\n</ng-template>\n","import {\n Component,\n ChangeDetectionStrategy,\n Inject,\n Optional,\n} from '@angular/core';\nimport { RXAP_LAYOUT_APPS_GRID } from '../../tokens';\nimport { ConfigService } from '@rxap/config';\n\nexport interface AppsButtonGridItem {\n image: string;\n label: string;\n href: string;\n empty?: false;\n}\n\nexport interface EmptyAppsButtonGridItem {\n empty: true;\n href?: undefined;\n label?: undefined;\n image?: undefined;\n}\n\n@Component({\n selector: 'rxap-apps-button',\n templateUrl: './apps-button.component.html',\n styleUrls: ['./apps-button.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'rxap-apps-button' },\n})\nexport class AppsButtonComponent {\n public get gridWithPadding(): Array<\n AppsButtonGridItem | EmptyAppsButtonGridItem\n > {\n const gridWithPadding: Array<AppsButtonGridItem | EmptyAppsButtonGridItem> =\n this.grid.slice();\n while (gridWithPadding.length % this.columns !== 0) {\n gridWithPadding.push({ empty: true });\n }\n return gridWithPadding;\n }\n\n public get columns() {\n if (this.grid.length < 4) {\n return 1;\n }\n if (this.grid.length < 6) {\n return 2;\n }\n return 3;\n }\n\n public isOpen = false;\n public grid: Array<AppsButtonGridItem> = [];\n\n constructor(\n @Optional()\n @Inject(RXAP_LAYOUT_APPS_GRID)\n grid: any,\n @Inject(ConfigService)\n private readonly config: ConfigService\n ) {\n this.grid = grid ?? this.config.get('navigation.apps') ?? [];\n }\n}\n","<ng-template [ngIf]=\"(language.languages | keyvalue).length\">\n <div>\n <mat-form-field appearance=\"outline\" class=\"language-selector\">\n <mat-select (ngModelChange)=\"language.setLanguage($event)\" [ngModel]=\"language.selectedLanguage\">\n <mat-option *ngFor=\"let item of language.languages | keyvalue\" [value]=\"item.key\">{{item.value}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n</ng-template>\n","import {\n Component,\n ChangeDetectionStrategy,\n Injectable,\n Inject,\n} from '@angular/core';\nimport { ConfigService } from '@rxap/config';\n\nexport const RXAP_SELECTED_LANGUAGE_LOCAL_STORAGE_KEY =\n 'rxap__selected_language';\nexport const RXAP_SELECTED_LANGUAGE_CHANGE_LOCAL_STORAGE_KEY =\n 'rxap__selected_language_last_change';\n\n@Injectable({ providedIn: 'root' })\nexport class LanguageSelectorService {\n public readonly languages: any;\n public readonly defaultLanguage: string;\n public selectedLanguage: string;\n\n constructor(\n @Inject(ConfigService)\n private readonly config: ConfigService\n ) {\n this.languages = this.config.get<any>('i18n.languages') ?? {};\n this.defaultLanguage =\n this.config.get('i18n.defaultLanguage') ??\n Object.keys(this.languages)[0] ??\n 'en';\n this.selectedLanguage =\n localStorage.getItem(RXAP_SELECTED_LANGUAGE_LOCAL_STORAGE_KEY) ??\n this.defaultLanguage;\n }\n\n public setLanguage(language: string) {\n if (language !== this.selectedLanguage) {\n this.redirect(language);\n }\n }\n\n public autoRedirect() {\n if (localStorage.getItem(RXAP_SELECTED_LANGUAGE_LOCAL_STORAGE_KEY)) {\n this.redirect(\n localStorage.getItem(RXAP_SELECTED_LANGUAGE_LOCAL_STORAGE_KEY)!\n );\n }\n }\n\n private redirect(language: string) {\n const currentUrl = location.origin + location.pathname + location.search;\n const redirectUrl =\n location.origin +\n `/${language}` +\n location.pathname.replace(new RegExp(`^\\/${this.selectedLanguage}`), '') +\n location.search;\n this.selectedLanguage = language;\n localStorage.setItem(RXAP_SELECTED_LANGUAGE_LOCAL_STORAGE_KEY, language);\n if (currentUrl !== redirectUrl) {\n if (this.checkLastChange()) {\n location.replace(redirectUrl);\n }\n } else {\n console.log('Redirect not required');\n }\n }\n\n private checkLastChange(): boolean {\n const lastChangeString = localStorage.getItem(\n RXAP_SELECTED_LANGUAGE_CHANGE_LOCAL_STORAGE_KEY\n );\n if (lastChangeString) {\n if (Date.now() - parseInt(lastChangeString, 10) < 1000) {\n return false;\n }\n }\n localStorage.setItem(\n RXAP_SELECTED_LANGUAGE_CHANGE_LOCAL_STORAGE_KEY,\n Date.now().toFixed(0)\n );\n return true;\n }\n}\n\n@Component({\n selector: 'rxap-language-selector',\n templateUrl: './language-selector.component.html',\n styleUrls: ['./language-selector.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'rxap-language-selector' },\n})\nexport class LanguageSelectorComponent {\n constructor(public readonly language: LanguageSelectorService) {}\n}\n","<mat-toolbar [ngClass]=\"{ open: sidenav?.opened }\" [color]=\"color\" class=\"mat-elevation-z3\">\n <mat-toolbar-row *ngFor=\"let headerComponent of components\">\n <ng-container *ngComponentOutlet=\"headerComponent\"></ng-container>\n </mat-toolbar-row>\n <mat-toolbar-row>\n <div\n fxLayout=\"row\"\n fxLayoutAlign=\"space-between center\"\n fxLayoutGap=\"16px\"\n class=\"content\"\n >\n <rxap-sidenav-toggle-button *ngIf=\"sidenav\" fxFlex=\"nogrow\" [sidenav]=\"sidenav\"></rxap-sidenav-toggle-button>\n <div fxFlex=\"grow\">\n <ng-content></ng-content>\n </div>\n <rxap-language-selector fxFlex=\"nogrow\"></rxap-language-selector>\n <rxap-apps-button fxFlex=\"nogrow\"></rxap-apps-button>\n <rxap-user-profile-icon *ngIf=\"hasUser$ | async\" fxFlex=\"nogrow\"></rxap-user-profile-icon>\n <div fxFlex=\"nogrow\" *ngIf=\"settingsMenuPanel\">\n <button mat-icon-button [matMenuTriggerFor]=\"settingsMenuPanel\">\n <mat-icon>settings</mat-icon>\n </button>\n </div>\n <rxap-sign-out fxFlex=\"nogrow\"></rxap-sign-out>\n </div>\n </mat-toolbar-row>\n</mat-toolbar>\n<rxap-navigation-progress-bar></rxap-navigation-progress-bar>\n","import {\n Component,\n OnInit,\n ChangeDetectionStrategy,\n OnDestroy,\n Input,\n Optional,\n Inject,\n} from '@angular/core';\nimport { Constructor } from '@rxap/utilities';\nimport { Subscription, Observable } from 'rxjs';\nimport { tap, map } from 'rxjs/operators';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { UserService } from '@rxap/authentication';\nimport { RXAP_HEADER_COMPONENT } from '../tokens';\nimport { HeaderService } from '@rxap/services';\nimport { MatMenuPanel } from '@angular/material/menu';\nimport { ThemePalette } from '@angular/material/core';\n\n@Component({\n selector: 'rxap-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'rxap-layout-header',\n },\n})\nexport class HeaderComponent implements OnInit, OnDestroy {\n @Input()\n public sidenav?: MatSidenav;\n\n public components: Array<Constructor<any>> = [];\n\n public subscriptions = new Subscription();\n\n public hasUser$: Observable<boolean>;\n\n @Input()\n public color: ThemePalette = 'primary';\n\n @Input()\n public settingsMenuPanel?: MatMenuPanel;\n\n constructor(\n @Inject(HeaderService)\n public readonly headerComponentService: HeaderService,\n @Inject(UserService)\n private readonly userService: UserService<any>,\n @Optional() @Inject(RXAP_HEADER_COMPONENT) public headerComponent: any\n ) {\n this.hasUser$ = this.userService.user$.pipe(map(Boolean));\n }\n\n public ngOnInit() {\n this.updateComponents();\n this.subscriptions.add(\n this.headerComponentService.update$\n .pipe(tap(() => this.updateComponents()))\n .subscribe()\n );\n }\n\n public updateComponents(): void {\n this.components = this.headerComponentService.getComponents();\n }\n\n public ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { SignOutComponent } from './sign-out.component';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { SignOutDirectiveModule } from '@rxap/authentication';\n\n\n@NgModule({\n declarations: [SignOutComponent],\n imports: [\n MatButtonModule,\n MatIconModule,\n SignOutDirectiveModule,\n ],\n exports: [SignOutComponent]\n})\nexport class SignOutComponentModule { }\n","import { NgModule } from '@angular/core';\nimport { UserProfileIconComponent } from './user-profile-icon.component';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatIconModule } from '@angular/material/icon';\nimport { CommonModule } from '@angular/common';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { AvatarBackgroundImageDirectiveModule } from '@rxap/directives';\n\n\n@NgModule({\n declarations: [UserProfileIconComponent],\n imports: [\n MatMenuModule,\n MatIconModule,\n CommonModule,\n FlexLayoutModule,\n AvatarBackgroundImageDirectiveModule,\n ],\n exports: [UserProfileIconComponent]\n})\nexport class UserProfileIconComponentModule { }\n","import { NgModule } from '@angular/core';\nimport { NavigationProgressBarComponent } from './navigation-progress-bar.component';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { CommonModule } from '@angular/common';\n\n\n@NgModule({\n declarations: [NavigationProgressBarComponent],\n imports: [\n MatProgressBarModule,\n CommonModule\n ],\n exports: [NavigationProgressBarComponent]\n})\nexport class NavigationProgressBarComponentModule { }\n","import { NgModule } from '@angular/core';\nimport { SidenavToggleButtonComponent } from './sidenav-toggle-button.component';\nimport { MatIconModule } from '@angular/material/icon';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\n\n\n@NgModule({\n declarations: [SidenavToggleButtonComponent],\n imports: [\n MatIconModule,\n CommonModule,\n MatButtonModule\n ],\n exports: [SidenavToggleButtonComponent]\n})\nexport class SidenavToggleButtonComponentModule { }\n","import { Component, ChangeDetectionStrategy, Inject } from '@angular/core';\nimport { ResetService } from '@rxap/services';\n\n@Component({\n selector: 'rxap-reset-button',\n templateUrl: './reset-button.component.html',\n styleUrls: ['./reset-button.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'rxap-reset-button' },\n})\nexport class ResetButtonComponent {\n constructor(\n @Inject(ResetService)\n public readonly resetService: ResetService\n ) {}\n}\n","<button (click)=\"resetService.resetAll()\" mat-icon-button>\n <mat-icon>refresh</mat-icon>\n</button>\n","import { NgModule } from '@angular/core';\nimport { ResetButtonComponent } from './reset-button.component';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\n\n\n@NgModule({\n declarations: [ResetButtonComponent],\n imports: [\n MatIconModule,\n MatButtonModule\n ],\n exports: [ResetButtonComponent]\n})\nexport class ResetButtonComponentModule { }\n","import { NgModule } from '@angular/core';\nimport { AppsButtonComponent } from './apps-button.component';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatGridListModule } from '@angular/material/grid-list';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\n\n\n@NgModule({\n declarations: [ AppsButtonComponent ],\n imports: [\n MatButtonModule,\n MatIconModule,\n MatGridListModule,\n OverlayModule,\n FlexLayoutModule,\n CommonModule,\n RouterModule\n ],\n exports: [ AppsButtonComponent ]\n})\nexport class AppsButtonComponentModule {}\n","import { NgModule } from '@angular/core';\nimport { LanguageSelectorComponent } from './language-selector.component';\nimport { MatSelectModule } from '@angular/material/select';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\n\n@NgModule({\n declarations: [ LanguageSelectorComponent ],\n imports: [\n MatSelectModule,\n CommonModule,\n FormsModule\n ],\n exports: [ LanguageSelectorComponent ]\n})\nexport class LanguageSelectorComponentModule {}\n","import { NgModule } from '@angular/core';\nimport { HeaderComponent } from './header.component';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { SignOutComponentModule } from './sign-out/sign-out.component.module';\nimport { UserProfileIconComponentModule } from './user-profile-icon/user-profile-icon.component.module';\nimport { NavigationProgressBarComponentModule } from './navigation-progress-bar/navigation-progress-bar.component.module';\nimport { SidenavToggleButtonComponentModule } from './sidenav-toggle-button/sidenav-toggle-button.component.module';\nimport { ResetButtonComponentModule } from './reset-button/reset-button.component.module';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { AppsButtonComponentModule } from './apps-button/apps-button.component.module';\nimport { LanguageSelectorComponentModule } from './language-selector/language-selector.component.module';\n\n\n@NgModule({\n declarations: [ HeaderComponent ],\n imports: [\n MatToolbarModule,\n SignOutComponentModule,\n UserProfileIconComponentModule,\n NavigationProgressBarComponentModule,\n SidenavToggleButtonComponentModule,\n ResetButtonComponentModule,\n FlexLayoutModule,\n CommonModule,\n MatButtonModule,\n MatIconModule,\n MatMenuModule,\n AppsButtonComponentModule,\n LanguageSelectorComponentModule\n ],\n exports: [ HeaderComponent ]\n})\nexport class HeaderModule {}\n","import {\n Injectable,\n Optional,\n Inject\n} from '@angular/core';\nimport {\n BehaviorSubject,\n Observable\n} from 'rxjs';\nimport {\n tap,\n map\n} from 'rxjs/operators';\nimport {\n FooterService,\n HeaderService\n} from '@rxap/services';\nimport { RXAP_LOGO_CONFIG } from '../tokens';\nimport { LogoConfig } from '../types';\nimport { ConfigService } from '@rxap/config';\nimport { MatDrawerMode } from '@angular/material/sidenav';\n\n@Injectable({ providedIn: 'root' })\nexport class LayoutComponentService {\n\n public opened$ = new BehaviorSubject<boolean>(true);\n public mode$ = new BehaviorSubject<MatDrawerMode>('side');\n public fixedBottomGap$: Observable<number>;\n public fixedTopGap$ = new BehaviorSubject<number>(64);\n public logo: LogoConfig;\n\n public constructor(\n public readonly footerComponentService: FooterService,\n public readonly headerComponentService: HeaderService,\n @Optional() @Inject(RXAP_LOGO_CONFIG) logoConfig: LogoConfig | null = null,\n @Inject(ConfigService)\n private readonly config: ConfigService\n ) {\n this.mode$.next(this.config.get('navigation.mode', this.mode$.value));\n this.opened$.next(this.config.get('navigation.open', this.opened$.value));\n this.fixedBottomGap$ = this.footerComponentService.portalCount$.pipe(map(count => count * 64));\n this.fixedTopGap$.next(this.headerComponentService.countComponent * 64);\n this.headerComponentService.update$.pipe(\n tap(() => this.fixedTopGap$.next(this.headerComponentService.countComponent * 64))\n ).subscribe();\n this.logo = logoConfig ?? {\n src: '/assets/logo.png',\n width: '192'\n };\n }\n\n}\n","import { Directive, TemplateRef, Inject } from '@angular/core';\n\n@Directive({\n selector: '[rxapSidenavFooter]',\n})\nexport class SidenavFooterDirective {\n constructor(\n @Inject(TemplateRef)\n public readonly template: TemplateRef<void>\n ) {}\n}\n","import { Directive, Inject, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[rxapSidenavHeader]',\n})\nexport class SidenavHeaderDirective {\n constructor(\n @Inject(TemplateRef)\n public readonly template: TemplateRef<void>\n ) {}\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport { ConfigService } from '@rxap/config';\n\n@Injectable({ providedIn: 'root' })\nexport class SidenavComponentService {\n\n public readonly collapsed$ = new BehaviorSubject(true);\n\n constructor(private readonly config: ConfigService) {\n this.collapsed$.next(this.config.get('navigation.collapsed', this.collapsed$.value));\n }\n\n public toggleNavigationCollapse(): void {\n this.collapsed$.next(!this.collapsed$.value);\n }\n\n}\n","import { IconConfig } from '@rxap/utilities';\nimport {\n InjectionToken,\n Type,\n AbstractType\n} from '@angular/core';\nimport { Observable } from 'rxjs';\n\nexport type Navigation = Array<NavigationItem | NavigationDividerItem>;\n\nexport type NavigationWithInserts = Array<\n | NavigationItem<NavigationWithInserts>\n | NavigationDividerItem\n | NavigationInsertItem\n>;\n\nexport interface NavigationDividerItem {\n divider: boolean;\n title?: string;\n}\n\nexport function IsNavigationDividerItem(\n item: any\n): item is NavigationDividerItem {\n return item && item.hasOwnProperty('divider') && item.divider;\n}\n\nexport interface NavigationInsertItem {\n insert: string;\n}\n\nexport function IsNavigationInsertItem(\n item: any\n): item is NavigationInsertItem {\n return item && item.hasOwnProperty('insert');\n}\n\nexport interface NavigationStatus {\n isVisible(\n navigationItem: NavigationItem,\n ): Observable<boolean> | Promise<boolean> | boolean;\n}\n\nexport interface NavigationItem<Children = Navigation> extends Record<string, unknown> {\n routerLink: string[];\n label: string;\n children?: Children;\n icon?: IconConfig;\n status?: Array<\n | Type<NavigationStatus>\n | InjectionToken<NavigationStatus>\n | AbstractType<NavigationStatus>\n >;\n}\n\nexport function IsNavigationItem(item: any): item is NavigationItem {\n return (\n item && item.hasOwnProperty('routerLink') && item.hasOwnProperty('label')\n );\n}\n","import type { Injector } from '@angular/core';\nimport {\n Injectable,\n Inject,\n Optional,\n INJECTOR\n} from '@angular/core';\nimport {\n Observable,\n ReplaySubject,\n of,\n combineLatest,\n from\n} from 'rxjs';\nimport {\n Navigation,\n NavigationWithInserts,\n IsNavigationInsertItem,\n IsNavigationItem,\n IsNavigationDividerItem,\n NavigationItem,\n NavigationDividerItem\n} from './navigation-item';\nimport {\n RXAP_NAVIGATION_CONFIG,\n RXAP_NAVIGATION_CONFIG_INSERTS\n} from '../tokens';\nimport {\n switchMap,\n map,\n catchError\n} from 'rxjs/operators';\n\n@Injectable({ providedIn: 'root' })\nexport class NavigationService {\n public readonly config$: Observable<Navigation>;\n\n private inserts = new Map<string, NavigationWithInserts>();\n\n private readonly navigation: NavigationWithInserts;\n\n private readonly navigation$ = new ReplaySubject<Navigation>(1);\n\n constructor(\n @Inject(RXAP_NAVIGATION_CONFIG)\n navigation: any,\n @Inject(INJECTOR)\n private readonly injector: Injector,\n @Optional()\n @Inject(RXAP_NAVIGATION_CONFIG_INSERTS)\n inserts: any | null = null\n ) {\n if (typeof navigation === 'function') {\n this.navigation = navigation();\n } else {\n this.navigation = navigation;\n }\n if (inserts) {\n Object.entries(inserts).forEach(([id, insert]: [string, any]) =>\n this.insert(id, insert, false)\n );\n }\n this.updateNavigation();\n this.config$ = this.navigation$.pipe(\n switchMap((navigationWithoutStatusCheck) =>\n this.checkNavigationStatusProviders(navigationWithoutStatusCheck)\n )\n );\n }\n\n /**\n * @deprecated use add instead\n * @param id\n * @param value\n * @param update\n */\n public insert(\n id: string,\n value: NavigationWithInserts,\n update: boolean = true\n ): void {\n this.add(id, value, update);\n }\n\n public add(\n id: string,\n value: NavigationWithInserts,\n update: boolean = true\n ): void {\n this.inserts.set(id, value);\n if (update) {\n this.updateNavigation();\n }\n }\n\n public has(id: string): boolean {\n return this.inserts.has(id);\n }\n\n public get(id: string): NavigationWithInserts | undefined {\n return this.inserts.get(id);\n }\n\n public remove(id: string, update: boolean = true): void {\n this.inserts.delete(id);\n if (update) {\n this.updateNavigation();\n }\n }\n\n public updateNavigation(): void {\n this.navigation$.next(this.replaceInserts(this.navigation));\n }\n\n /**\n * @internal\n * @param navigationItem\n */\n public checkNavigationItemStatusProviders(\n navigationItem: NavigationItem | NavigationDividerItem\n ): Observable<NavigationItem | NavigationDividerItem | null> {\n if (IsNavigationDividerItem(navigationItem) || !navigationItem.status) {\n return of(navigationItem);\n }\n const isVisibleArray$: Array<Observable<boolean>> = navigationItem.status\n .map((statusToken) => this.injector.get(statusToken))\n .map((status) => {\n const isVisible = status.isVisible(navigationItem);\n if (typeof isVisible === 'boolean') {\n return of(isVisible);\n } else {\n return from(isVisible);\n }\n }).map(isVisible$ => isVisible$.pipe(catchError(e => {\n console.error('isVisible method failed: ' + e.message);\n return of(false);\n })));\n // TODO : dont wait for all status services to complete, but cancel waiting if one returns false\n return combineLatest(isVisibleArray$).pipe(\n map((isVisibleArray) =>\n isVisibleArray.reduce((acc, isVisible) => acc && isVisible, true)\n ),\n map((isVisible) => (isVisible ? navigationItem : null)),\n switchMap((navigationItemOrNull) => {\n if (navigationItemOrNull) {\n if (navigationItemOrNull.children?.length) {\n return this.checkNavigationStatusProviders(\n navigationItemOrNull.children\n ).pipe(\n map((children) => ({\n ...navigationItemOrNull,\n children,\n }))\n );\n }\n return of(navigationItemOrNull);\n }\n return of(null);\n })\n );\n }\n\n /**\n * @internal\n * @param navigationItem\n */\n public checkNavigationStatusProviders(\n navigation: Navigation\n ): Observable<Navigation> {\n return combineLatest(\n navigation.map((navigationItem) =>\n this.checkNavigationItemStatusProviders(navigationItem)\n )\n ).pipe(\n map((navigationWithNullItems) => {\n const cleanNavigation: Navigation = [];\n\n for (const navigationItem of navigationWithNullItems) {\n if (navigationItem !== null) {\n cleanNavigation.push(navigationItem);\n }\n }\n\n return cleanNavigation;\n })\n );\n }\n\n private replaceInserts(\n navigationWithInserts: NavigationWithInserts\n ): Navigation {\n const navigation: Navigation = [];\n\n for (const navigationItem of navigationWithInserts) {\n if (IsNavigationInsertItem(navigationItem)) {\n if (this.inserts.has(navigationItem.insert)) {\n navigation.push(\n ...this.replaceInserts(this.inserts.get(navigationItem.insert)!)\n );\n }\n } else if (IsNavigationItem(navigationItem)) {\n navigation.push({\n ...navigationItem,\n children: this.replaceInserts(navigationItem.children ?? []),\n });\n } else if (IsNavigationDividerItem(navigationItem)) {\n navigation.push(navigationItem);\n }\n }\n\n return navigation;\n }\n}\n","<a [routerLink]=\"item.routerLink\"\n routerLinkActive=\"link-active\"\n [matTooltipDisabled]=\"!(sidenav.collapsed$ | async)\"\n [matTooltip]=\"item.label\"\n class=\"navigation-link mat-body-2 mat-body-strong navigation-level-{{level}}\" matRipple>\n <mat-icon *ngIf=\"item.icon\" [rxapIcon]=\"item.icon\" class=\"icon\"></mat-icon>\n <ng-template [ngIf]=\"!(sidenav.collapsed$ | async)\">\n <span class=\"label\">{{ item.label }}</span>\n </ng-template>\n</a>\n\n<ul rxap-navigation\n *ngIf=\"routerLinkActive.isActive && !(sidenav.collapsed$ | async) && children\"\n [@sub-nav]\n [items]=\"children\"\n [level]=\"level + 1\"\n class=\"sub-items\"\n fxFlex=\"nogrow\"\n>\n</ul>\n\n<ng-template #navigationOverlay>\n <div class=\"navigation-overlay-container mat-elevation-z1\"\n (mouseenter)=\"lockeOverlay = true\" (mouseleave)=\"lockeOverlay = false; onMouseleave()\">\n <ul>\n <li *ngFor=\"let child of children\">\n <a *ngIf=\"isNavigationItem(child)\" [routerLink]=\"asNavigationItem(child).routerLink\"\n class=\"navigation-link mat-body-2 mat-body-strong\" matRipple>\n <mat-icon *ngIf=\"asNavigationItem(child).icon\" [rxapIcon]=\"asNavigationItem(child).icon\" class=\"icon\"></mat-icon>\n <span class=\"label\">{{ asNavigationItem(child).label }}</span>\n </a>\n </li>\n </ul>\n </div>\n</ng-template>\n","import {\n Component,\n Input,\n ChangeDetectionStrategy,\n OnChanges,\n SimpleChanges,\n ViewChild,\n OnDestroy,\n AfterViewInit,\n HostBinding,\n ViewEncapsulation,\n ElementRef,\n Renderer2,\n HostListener,\n OnInit,\n TemplateRef,\n ViewContainerRef,\n EmbeddedViewRef,\n Inject,\n} from '@angular/core';\nimport { Required, DebounceCall } from '@rxap/utilities';\nimport { trigger, style, transition, animate } from '@angular/animations';\nimport {\n NavigationItem,\n Navigation,\n NavigationDividerItem,\n} from '../navigation-item';\nimport { RouterLinkActive, Router, NavigationEnd } from '@angular/router';\nimport { Subscription } from 'rxjs';\nimport {\n filter,\n tap,\n delay,\n startWith,\n distinctUntilChanged,\n skip,\n} from 'rxjs/operators';\nimport { SidenavComponentService } from '../../sidenav/sidenav.component.service';\nimport { Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { TemplatePortal } from '@angular/cdk/portal';\n\n@Component({\n selector: 'li[rxap-navigation-item]',\n templateUrl: './navigation-item.component.html',\n styleUrls: ['./navigation-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'rxap-navigation-item',\n },\n animations: [\n trigger('sub-nav', [\n transition(':enter', [\n style({ display: 'block', height: '0', overflow: 'hidden' }),\n animate(150, style({ height: '*' })),\n ]),\n transition(':leave', [\n style({ overflow: 'hidden' }),\n animate(300, style({ height: '0' })),\n style({ display: 'none' }),\n ]),\n ]),\n ],\n})\nexport class NavigationItemComponent\n implements OnChanges, AfterViewInit, OnDestroy, OnInit\n{\n public children: Navigation | null = null;\n\n @ViewChild(RouterLinkActive, { static: true })\n public routerLinkActive!: RouterLinkActive;\n\n @Input()\n @Required\n public item!: NavigationItem;\n\n @Input()\n public level: number = 0;\n\n @HostBinding('class.active')\n public isActive: boolean = false;\n\n @ViewChild('navigationOverlay')\n private _navigationOverlay!: TemplateRef<any>;\n\n private readonly _subscription = new Subscription();\n\n private _overlayRef?: OverlayRef;\n private _embeddedViewRef?: EmbeddedViewRef<any>;\n\n /**\n * indicates the mouse is over the\n */\n public lockeOverlay: boolean = false;\n\n constructor(\n @Inject(Router)\n private readonly router: Router,\n @Inject(SidenavComponentService)\n public readonly sidenav: SidenavComponentService,\n @Inject(ElementRef)\n private readonly elementRef: ElementRef,\n @Inject(Renderer2)\n private readonly renderer: Renderer2,\n @Inject(Overlay)\n private readonly overlay: Overlay,\n @Inject(ViewContainerRef)\n private readonly viewContainerRef: ViewContainerRef\n ) {}\n\n public ngOnChanges(changes: SimpleChanges) {\n if (changes.item) {\n const item: NavigationItem = changes.item.currentValue;\n this.children =\n item.children && item.children.length ? item.children : null;\n }\n }\n\n public ngAfterViewInit() {\n this._subscription.add(\n this.router.events\n .pipe(\n filter((event) => event instanceof NavigationEnd),\n startWith(true),\n delay(100),\n tap(() => {\n if (this.routerLinkActive.isActive) {\n if (!this.sidenav.collapsed$.value) {\n // only close the overlay if sidenav collapsed\n this._overlayRef?.detach();\n }\n this.renderer.addClass(this.elementRef.nativeElement, 'active');\n } else {\n this.renderer.removeClass(\n this.elementRef.nativeElement,\n 'active'\n );\n }\n })\n )\n .subscribe()\n );\n }\n\n public ngOnInit() {\n // detach the navigation overlay if the sidenav collapsed\n // state is changed\n this._subscription.add(\n this.sidenav.collapsed$\n .pipe(\n skip(1),\n distinctUntilChanged(),\n tap(() => this._overlayRef?.detach())\n )\n .subscribe()\n );\n }\n\n public ngOnDestroy() {\n this._subscription?.unsubscribe();\n this._overlayRef?.dispose();\n }\n\n @HostListener('mouseenter')\n public onMouseenter() {\n if (this.children) {\n if (!this.routerLinkActive.isActive || this.sidenav.collapsed$.value) {\n if (!this._overlayRef) {\n this._overlayRef = this.overlay.create({\n positionStrategy: this.overlay\n .position()\n .flexibleConnectedTo(this.elementRef)\n .withPositions([\n {\n originY: 'top',\n originX: 'end',\n overlayY: 'top',\n overlayX: 'start',\n },\n ]),\n });\n }\n if (!this._overlayRef.hasAttached()) {\n this._embeddedViewRef = this._overlayRef.attach(\n new TemplatePortal(this._navigationOverlay, this.viewContainerRef)\n );\n }\n }\n }\n }\n\n @HostListener('mouseleave')\n @DebounceCall(100)\n public onMouseleave() {\n if (!this.lockeOverlay) {\n this._overlayRef?.detach();\n }\n }\n\n // region type save item property\n\n // required to check the type of the item property in the ngFor loop\n\n public isNavigationDividerItem(\n item: NavigationItem | NavigationDividerItem\n ): item is NavigationDividerItem {\n return (item as any)['divider'];\n }\n\n public isNavigationItem(\n item: NavigationItem | NavigationDividerItem\n ): item is NavigationItem {\n return !this.isNavigationDividerItem(item);\n }\n\n public asNavigationItem(\n item: NavigationItem | NavigationDividerItem\n ): NavigationItem {\n if (!this.isNavigationItem(item)) {\n throw new Error('The item is not a NavigationItem');\n }\n return item;\n }\n\n // endregion\n}\n","<ng-template [ngForOf]=\"items\" let-item ngFor>\n <ng-template [ngIf]=\"isNavigationDividerItem(item)\">\n <mat-divider fxFlex=\"nogrow\"></mat-divider>\n <div *ngIf=\"!(sidenav.collapsed$ | async)\" class=\"divider-title\" fxFlex=\"nogrow\" fxLayout=\"row\" fxLayoutAlign=\"start end\">\n <span fxFlex=\"nogrow\" *ngIf=\"item.title\">{{item.title}}</span>\n </div>\n </ng-template>\n <ng-template [ngIf]=\"isNavigationItem(item)\">\n <li class=\"item\" rxap-navigation-item [level]=\"level\" [item]=\"asNavigationItem(item)\"></li>\n </ng-template>\n</ng-template>\n","import {\n Component,\n OnInit,\n ChangeDetectionStrategy,\n Input,\n OnDestroy,\n ChangeDetectorRef,\n ViewEncapsulation,\n HostBinding,\n Inject\n} from '@angular/core';\nimport {\n Navigation,\n NavigationItem,\n NavigationDividerItem\n} from './navigation-item';\nimport {\n Required,\n coerceBoolean\n} from '@rxap/utilities';\nimport { NavigationService } from './navigation.service';\nimport { Subscription } from 'rxjs';\nimport { tap } from 'rxjs/operators';\nimport { SidenavComponentService } from '../sidenav/sidenav.component.service';\n\n@Component({\n selector: 'ul[rxap-navigation]',\n templateUrl: './navigation.component.html',\n styleUrls: ['./navigation.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'rxap-navigation' },\n})\nexport class NavigationComponent implements OnInit, OnDestroy {\n @HostBinding('class.rxap-root-navigation')\n public _root = false;\n\n @Input()\n public set root(value: boolean | '') {\n this._root = coerceBoolean(value);\n }\n\n @Input()\n @Required\n public items!: Navigation;\n\n public subscription?: Subscription;\n\n @Input()\n public level: number = 0;\n\n constructor(\n @Inject(NavigationService)\n private readonly navigationService: NavigationService,\n @Inject(ChangeDetectorRef)\n private readonly cdr: ChangeDetectorRef,\n @Inject(SidenavComponentService)\n public readonly sidenav: SidenavComponentService\n ) {}\n\n public ngOnInit(): void {\n if (this._root) {\n this.items = [];\n this.subscription = this.navigationService.config$\n .pipe(\n tap((navigation) => (this.items = navigation)),\n tap(() => this.cdr.detectChanges())\n )\n .subscribe();\n }\n }\n\n public ngOnDestroy() {\n this.subscription?.unsubscribe();\n }\n\n // region type save item property\n\n // required to check the type of the item property in the ngFor loop\n\n public isNavigationDividerItem(\n item: NavigationItem | NavigationDividerItem\n ): item is NavigationDividerItem {\n return (item as any)['divider'];\n }\n\n public isNavigationItem(\n item: NavigationItem | NavigationDividerItem\n ): item is NavigationItem {\n return !this.isNavigationDividerItem(item);\n }\n\n public asNavigationItem(\n item: NavigationItem | NavigationDividerItem\n ): NavigationItem {\n if (!this.isNavigationItem(item)) {\n throw new Error('The item is not a NavigationItem');\n }\n return item;\n }\n\n // endregion\n}\n","<div class=\"container\" [ngClass]=\"{ 'collapsed': sidenav.collapsed$ | async }\">\n <div class=\"inner\"\n fxLayout=\"column\"\n fxLayoutAlign=\"space-between stretch\">\n <ng-template [ngIf]=\"sidenavHeaderDirective?.template\">\n <div fxFlex=\"nogrow\" class=\"header\" [fxHide]=\"sidenav.collapsed$ | async\">\n <ng-container *ngTemplateOutlet=\"sidenavHeaderDirective?.template ?? null\"></ng-container>\n </div>\n <mat-divider fxFlex=\"nogrow\" [fxHide]=\"sidenav.collapsed$ | async\"></mat-divider>\n </ng-template>\n <div fxFlex=\"grow\" class=\"nav-container\">\n <ul fxLayout=\"column\" root rxap-navigation></ul>\n </div>\n <mat-divider fxFlex=\"nogrow\"></mat-divider>\n <button mat-button class=\"sidebar-toggle\" [ngClass]=\"{ 'collapsed': sidenav.collapsed$ | async }\" fxFlex=\"nogrow\"\n (click)=\"sidenav.toggleNavigationCollapse()\">\n <span class=\"sidebar-toggle-inner\" fxLayout=\"row\" fxLayoutAlign=\"start center\" fxLayoutGap=\"16px\">\n <mat-icon fxFlex=\"nogrow\" class=\"arrow\">double_arrow</mat-icon>\n <span [fxHide]=\"sidenav.collapsed$ | async\" class=\"label\" fxFlex=\"grow\" i18n=\"@@rxap.layout.navigation.collapse-sidebar\">Collapse sidebar</span>\n </span>\n </button>\n <ng-template [ngIf]=\"sidenavFooterDirective?.template ?? null\">\n <mat-divider fxFlex=\"nogrow\" [fxHide]=\"sidenav.collapsed$ | async\"></mat-divider>\n <div fxFlex=\"nogrow\" class=\"footer\" [fxHide]=\"sidenav.collapsed$ | async\">\n <ng-container *ngTemplateOutlet=\"sidenavFooterDirective?.template ?? null\"></ng-container>\n </div>\n </ng-template>\n </div>\n</div>\n","import {\n Component,\n ChangeDetectionStrategy,\n ContentChild\n} from '@angular/core';\nimport { SidenavFooterDirective } from './sidenav-footer.directive';\nimport { SidenavHeaderDirective } from './sidenav-header.directive';\nimport { SidenavComponentService } from './sidenav.component.service';\n\n@Component({\n selector: 'rxap-sidenav',\n templateUrl: './sidenav.component.html',\n styleUrls: [ './sidenav.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'rxap-layout-sidenav'\n }\n})\nexport class SidenavComponent {\n\n @ContentChild(SidenavFooterDirective)\n public sidenavFooterDirective?: SidenavFooterDirective;\n\n @ContentChild(SidenavHeaderDirective)\n public sidenavHeaderDirective?: SidenavHeaderDirective;\n\n constructor(public readonly sidenav: SidenavComponentService) {}\n\n}\n","import {\n Injectable,\n Inject\n} from '@angular/core';\nimport {\n HeaderService,\n FooterService\n} from '@rxap/services';\nimport {\n BehaviorSubject,\n Observable,\n combineLatest\n} from 'rxjs';\nimport {\n tap,\n map\n} from 'rxjs/operators';\n\n@Injectable({ providedIn: 'root' })\nexport class SidenavContentComponentService {\n\n public headerRows$ = new BehaviorSubject<number>(1);\n public footerRows$: Observable<number>;\n public innerHeight$: Observable<string>;\n public marginTop$: Observable<string>;\n public marginBottom$: Observable<string>;\n\n constructor(\n @Inject(FooterService) public readonly footerComponentService: FooterService,\n @Inject(HeaderService) public readonly headerComponentService: HeaderService\n ) {\n this.headerRows$.next(this.headerComponentService.countComponent);\n\n this.footerComponentService.portalCount$.pipe().subscribe();\n\n this.footerRows$ = this.footerComponentService.portalCount$;\n\n this.headerComponentService.update$.pipe(\n tap(() => this.headerRows$.next(this.headerComponentService.countComponent))\n ).subscribe();\n\n this.innerHeight$ = combineLatest([\n this.headerRows$,\n this.footerRows$\n ]).pipe(\n map(([ headerRows, footerRows ]) => `calc(100% - ${64 * (headerRows + footerRows)}px)`)\n );\n\n this.marginTop$ = this.headerRows$.pipe(\n map(headerRows => `${headerRows * 64}px`)\n );\n\n this.marginBottom$ = this.footerRows$.pipe(\n map(footerRows => `${footerRows * 64}px`)\n );\n\n }\n\n}\n","import {\n Component,\n OnInit,\n ChangeDetectionStrategy,\n Input\n} from '@angular/core';\nimport { Required } from '@rxap/utilities';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { SidenavContentComponentService } from './sidenav-content.component.service';\n\n@Component({\n selector: 'rxap-sidenav-content',\n templateUrl: './sidenav-content.component.html',\n styleUrls: [ './sidenav-content.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SidenavContentComponent implements OnInit {\n\n @Input() @Required public sidenav!: MatSidenav;\n\n constructor(public readonly sccs: SidenavContentComponentService) { }\n\n ngOnInit() {\n }\n\n}\n","<div [ngClass]=\"{ 'open': (sidenav.openedChange | async) }\" [ngStyle]=\"{\n height: sccs.innerHeight$ | async,\n marginTop: sccs.marginTop$ | async,\n marginBottom: sccs.marginBottom$ | async\n}\" class=\"container\">\n <!-- <dx-breadcrumb></dx-breadcrumb>-->\n <div class=\"inner\">\n <router-outlet></router-outlet>\n <ng-content></ng-content>\n </div>\n</div>\n","<div fxLayout=\"column\" fxLayoutGap=\"16px\" class=\"container\">\n\n <div fxFlex=\"nogrow\" *ngFor=\"let portalId of portals.keys(); trackBy: trackBy\">\n <ng-template [cdkPortalOutlet]=\"portals.get(portalId)\"></ng-template>\n </div>\n\n</div>\n","import {\n Component,\n OnInit,\n ChangeDetectionStrategy,\n Inject,\n OnDestroy\n} from '@angular/core';\nimport {\n WindowContainerSidenavService,\n ContainerComponent\n} from '@rxap/services';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { tap } from 'rxjs/operators';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'rxap-window-container-sidenav',\n templateUrl: './window-container-sidenav.component.html',\n styleUrls: [ './window-container-sidenav.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class WindowContainerSidenavComponent implements OnInit, OnDestroy {\n\n public portals = new Map<string, ComponentPortal<any>>();\n\n private subscription = new Subscription();\n\n constructor(\n @Inject(WindowContainerSidenavService)\n public readonly service: WindowContainerSidenavService\n ) { }\n\n public ngOnInit(): void {\n const components = this.service.getAll();\n for (const component of components) {\n this.add(component);\n }\n this.subscription.add(this.service.add$.pipe(\n tap(component => this.add(component))\n ).subscribe());\n this.subscription.add(this.service.remove$.pipe(\n tap(component => this.remove(component))\n ).subscribe());\n }\n\n public ngOnDestroy() {\n this.subscription.unsubscribe();\n }\n\n public trackBy(index: number, id: string) {\n return id;\n }\n\n private add(component: ContainerComponent) {\n if (this.portals.has(component.id)) {\n throw new Error(`Component portal with id ${component.id} already exists`);\n }\n const portal = new ComponentPortal(component.component, component.viewContainerRef, component.injector, component.componentFactoryResolver);\n this.portals.set(component.id, portal);\n }\n\n private remove(component: ContainerComponent) {\n if (this.portals.has(component.id)) {\n const portal = this.portals.get(component.id)!;\n this.portals.delete(component.id);\n portal.detach();\n }\n }\n\n}\n","<div class=\"toggle-button\">\n <button (click)=\"toggle()\" mat-icon-button>\n <ng-template [ngIfElse]=\"hide\" [ngIf]=\"!openWindowSidenav\">\n <mat-icon>keyboard_arrow_left</mat-icon>\n </ng-template>\n <ng-template #hide>\n <mat-icon>keyboard_arrow_right</mat-icon>\n </ng-template>\n </button>\n</div>\n","import {\n Component,\n OnInit,\n ChangeDetectionStrategy,\n Input,\n Output,\n EventEmitter\n} from '@angular/core';\n\n@Component({\n selector: 'rxap-toggle-window-sidenav-button',\n templateUrl: './toggle-window-sidenav-button.component.html',\n styleUrls: [ './toggle-window-sidenav-button.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'rxap-toggle-window-sidenav-button'\n }\n})\nexport class ToggleWindowSidenavButtonComponent implements OnInit {\n\n @Input()\n public openWindowSidenav = false;\n\n @Output()\n public openWindowSidenavChange = new EventEmitter<boolean>();\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n public toggle() {\n this.openWindowSidenav = !this.openWindowSidenav;\n this.openWindowSidenavChange.emit(this.openWindowSidenav);\n }\n\n}\n","<rxap-header [sidenav]=\"sidenav\" class=\"header\"></rxap-header>\n<mat-sidenav-container autosize class=\"container\">\n <mat-sidenav\n [fixedBottomGap]=\"layoutComponentService.fixedBottomGap$ | async\"\n [fixedInViewport]=\"true\"\n [fixedTopGap]=\"layoutComponentService.fixedTopGap$ | async\"\n [mode]=\"(layoutComponentService.mode$ | async) ?? 'side'\"\n [opened]=\"(layoutComponentService.opened$ | async) ?? true\"\n class=\"sidenav\"\n >\n <rxap-sidenav>\n <ng-template rxapSidenavHeader>\n <img\n [routerLink]=\"['/']\"\n alt=\"logo\"\n class=\"logo\"\n [width]=\"layoutComponentService.logo.width\"\n [src]=\"layoutComponentService.logo.src\"\n />\n </ng-template>\n </rxap-sidenav>\n </mat-sidenav>\n <mat-sidenav-content class=\"content\">\n <rxap-sidenav-content [sidenav]=\"sidenav\">\n <ng-content></ng-content>\n <rxap-toggle-window-sidenav-button [(openWindowSidenav)]=\"openWindowSidenav\"></rxap-toggle-window-sidenav-button>\n </rxap-sidenav-content>\n </mat-sidenav-content>\n <mat-sidenav\n [fixedBottomGap]=\"layoutComponentService.fixedBottomGap$ | async\"\n [fixedInViewport]=\"true\"\n [fixedTopGap]=\"layoutComponentService.fixedTopGap$ | async\"\n [opened]=\"openWindowSidenav\"\n mode=\"side\"\n class=\"window-container-sidenav\"\n position=\"end\"\n >\n <rxap-window-container-sidenav></rxap-window-container-sidenav>\n </mat-sidenav>\n</mat-sidenav-container>\n<rxap-footer class=\"footer\"></rxap-footer>\n","import {\n Component,\n ChangeDetectionStrategy,\n ViewChild\n} from '@angular/core';\nimport { LayoutComponentService } from './layout.component.service';\nimport { MatSidenav } from '@angular/material/sidenav';\n\n@Component({\n selector: 'rxap-layout',\n templateUrl: './layout.component.html',\n styleUrls: [ './layout.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LayoutComponent {\n\n public openWindowSidenav = false;\n\n @ViewChild(MatSidenav, { static: true }) public sidenav!: MatSidenav;\n\n constructor(\n public readonly layoutComponentService: LayoutComponentService,\n ) { }\n\n}\n","import { Injectable } from '@angular/core';\nimport {\n Observable,\n of\n} from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class ReplaceRouterPathsService {\n\n public transform(routerLink: string[]): Observable<string[]> {\n return of(routerLink);\n }\n\n}\n","import {\n NgModule,\n Pipe,\n PipeTransform\n} from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { ReplaceRouterPathsService } from './replace-router-paths.service';\n\n@Pipe({\n name: 'replaceRouterPaths'\n})\nexport class ReplaceRouterPathsPipe implements PipeTransform {\n constructor(\n public rrp: ReplaceRouterPathsService\n ) {}\n\n transform(routerLink: string[]): Observable<string[]> {\n return this.rrp.transform(routerLink);\n }\n}\n\n@NgModule({\n declarations: [ ReplaceRouterPathsPipe ],\n exports: [ ReplaceRouterPathsPipe ]\n})\nexport class ReplaceRouterPathsPipeModule {}\n","import { NgModule } from '@angular/core';\nimport { NavigationComponent } from './navigation.component';\nimport { NavigationItemComponent } from './navigation-item/navigation-item.component';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { RouterModule } from '@angular/router';\nimport { CommonModule } from '@angular/common';\nimport { ReplaceRouterPathsPipeModule } from './replace-router-paths.pipe';\nimport { IconDirectiveModule } from '@rxap/material-directives/icon';\nimport { ButtonComponentModule } from '@rxap/components';\nimport { MatRippleModule } from '@angular/material/core';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { StopPropagationDirectiveModule } from '@rxap/directives';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\n\n@NgModule({\n declarations: [ NavigationComponent, NavigationItemComponent ],\n imports: [\n MatIconModule,\n MatButtonModule,\n FlexLayoutModule,\n RouterModule,\n CommonModule,\n IconDirectiveModule,\n ButtonComponentModule,\n MatRippleModule,\n MatDividerModule,\n StopPropagationDirectiveModule,\n MatTooltipModule,\n ReplaceRouterPathsPipeModule\n ],\n exports: [ NavigationComponent ]\n})\nexport class NavigationComponentModule {}\n","import { NgModule } from '@angular/core';\nimport { SidenavComponent } from './sidenav.component';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { NavigationComponentModule } from '../navigation/navigation.component.module';\nimport { CommonModule } from '@angular/common';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { SidenavHeaderDirective } from './sidenav-header.directive';\nimport { SidenavFooterDirective } from './sidenav-footer.directive';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\n\n\n@NgModule({\n declarations: [ SidenavComponent, SidenavHeaderDirective, SidenavFooterDirective ],\n imports: [\n FlexLayoutModule,\n NavigationComponentModule,\n CommonModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule\n ],\n exports: [ SidenavComponent, SidenavHeaderDirective, SidenavFooterDirective ],\n})\nexport class SidenavModule {}\n","import { NgModule } from '@angular/core';\nimport { SidenavContentComponent } from './sidenav-content.component';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\n\n\n@NgModule({\n declarations: [ SidenavContentComponent ],\n imports: [\n CommonModule,\n RouterModule\n ],\n exports: [ SidenavContentComponent ]\n})\nexport class SidenavContentModule {}\n","import { NgModule } from '@angular/core';\nimport { WindowContainerSidenavComponent } from './window-container-sidenav.component';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { CommonModule } from '@angular/common';\nimport { PortalModule } from '@angular/cdk/portal';\n\n\n@NgModule({\n declarations: [ WindowContainerSidenavComponent ],\n imports: [\n FlexLayoutModule,\n CommonModule,\n PortalModule,\n ],\n exports: [ WindowContainerSidenavComponent ],\n})\nexport class WindowContainerSidenavModule {}\n","import { NgModule } from '@angular/core';\nimport { ToggleWindowSidenavButtonComponent } from './toggle-window-sidenav-button.component';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { CommonModule } from '@angular/common';\n\n\n@NgModule({\n declarations: [ ToggleWindowSidenavButtonComponent ],\n imports: [\n MatButtonModule,\n MatIconModule,\n CommonModule,\n ],\n exports: [ ToggleWindowSidenavButtonComponent ],\n})\nexport class ToggleWindowSidenavButtonModule {}\n","import {\n NgModule,\n ModuleWithProviders\n} from '@angular/core';\nimport { LayoutComponent } from './layout.component';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { FooterModule } from '../footer/footer.component.module';\nimport { HeaderModule } from '../header/header.component.module';\nimport { CommonModule } from '@angular/common';\nimport { SidenavModule } from '../sidenav/sidenav.component.module';\nimport { SidenavContentModule } from '../sidenav-content/sidenav-content.component.module';\nimport { NavigationWithInserts } from '../navigation/navigation-item';\nimport { RXAP_NAVIGATION_CONFIG } from '../tokens';\nimport { WindowContainerSidenavModule } from '../window-container-sidenav/window-container-sidenav.component.module';\nimport { ToggleWindowSidenavButtonModule } from '../toggle-window-sidenav-button/toggle-window-sidenav-button.component.module';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { RouterModule } from '@angular/router';\n\n@NgModule({\n declarations: [ LayoutComponent ],\n imports: [\n MatSidenavModule,\n FooterModule,\n HeaderModule,\n CommonModule,\n SidenavModule,\n SidenavContentModule,\n WindowContainerSidenavModule,\n ToggleWindowSidenavButtonModule,\n FlexLayoutModule,\n RouterModule\n ],\n exports: [ LayoutComponent ]\n})\nexport class LayoutModule {\n\n public static withNavigation(navigation: NavigationWithInserts | (() => NavigationWithInserts)): ModuleWithProviders<LayoutModule> {\n\n return {\n ngModule: LayoutModule,\n providers: [\n {\n provide: RXAP_NAVIGATION_CONFIG,\n useValue: navigation\n }\n ]\n };\n }\n\n}\n","<div class=\"version\" fxFlex=\"nogrow\" fxLayout=\"column\" fxLayoutAlign=\"start start\" fxLayoutGap=\"8px\">\n <div *ngFor=\"let module of modules | keyvalue\" fxFlex=\"nogrow\" fxLayout=\"column\">\n <span class=\"name\" fxFlex=\"nogrow\">{{module.value.name}}</span>\n <span class=\"semantic\" fxFlex=\"nogrow\">{{module.value.semantic}}</span>\n <span class=\"hash\" fxFlex=\"nogrow\">{{module.value.hash}}</span>\n </div>\n</div>\n","import {\n Component,\n OnInit,\n ChangeDetectionStrategy,\n OnDestroy,\n Inject\n} from '@angular/core';\nimport {\n VersionService,\n Version\n} from '@rxap/services';\nimport {\n KeyValue,\n Required\n} from '@rxap/utilities';\nimport { tap } from 'rxjs/operators';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'rxap-version',\n templateUrl: './version.component.html',\n styleUrls: [ './version.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class VersionComponent implements OnInit, OnDestroy {\n\n @Required\n public modules!: KeyValue<Version>;\n\n private subscription?: Subscription;\n\n constructor(\n @Inject(VersionService) private version: VersionService\n ) { }\n\n public ngOnInit(): void {\n this.modules = this.version.get();\n this.subscription = this.version.update$.pipe(\n tap(() => this.modules = this.version.get())\n ).subscribe();\n }\n\n public ngOnDestroy() {\n this.subscription?.unsubscribe();\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { VersionComponent } from './version.component';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [ VersionComponent ],\n imports: [\n FlexLayoutModule,\n CommonModule\n ],\n exports: [ VersionComponent ]\n})\nexport class VersionComponentModule {}\n","import {\n Directive,\n OnInit,\n OnDestroy,\n TemplateRef,\n ViewContainerRef,\n NgModule,\n Inject,\n} from '@angular/core';\nimport { FooterService } from '@rxap/services';\nimport { TemplatePortal } from '@angular/cdk/portal';\n\n@Directive({\n selector: '[rxapFooter]',\n})\nexport class FooterDirective implements OnInit, OnDestroy {\n private _portal?: TemplatePortal<void>;\n\n constructor(\n @Inject(FooterService)\n private readonly footerService: FooterService,\n @Inject(TemplateRef)\n private readonly template: TemplateRef<void>,\n @Inject(ViewContainerRef)\n private readonly viewContainerRef: ViewContainerRef\n ) {}\n\n public ngOnInit() {\n this._portal = new TemplatePortal<void>(\n this.template,\n this.viewContainerRef\n );\n this.footerService.pushPortal(this._portal);\n }\n\n public ngOnDestroy() {\n if (this._portal) {\n this.footerService.removePortal(this._portal);\n }\n }\n}\n\n@NgModule({\n declarations: [FooterDirective],\n exports: [FooterDirective],\n})\nexport class FooterDirectiveModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["_c0","_c1","i1","i1.SidenavComponentService","_c2","i1.SidenavContentComponentService","i1.LayoutComponentService","i1.ReplaceRouterPathsService","i4"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rxap-layout.mjs","sources":["../../../../libs/layout/src/lib/tokens.ts","../../../../libs/layout/src/lib/footer/footer.component.html","../../../../libs/layout/src/lib/footer/footer.component.ts","../../../../libs/layout/src/lib/footer/footer.component.module.ts","../../../../libs/layout/src/lib/header/sign-out/sign-out.component.ts","../../../../libs/layout/src/lib/header/sign-out/sign-out.component.html","../../../../libs/layout/src/lib/header/user-profile-icon/user-profile-icon.component.html","../../../../libs/layout/src/lib/header/user-profile-icon/user-profile-icon.component.ts","../../../../libs/layout/src/lib/header/navigation-progress-bar/navigation-progress-bar.component.html","../../../../libs/layout/src/lib/header/navigation-progress-bar/navigation-progress-bar.component.ts","../../../../libs/layout/src/lib/header/sidenav-toggle-button/sidenav-toggle-button.component.html","../../../../libs/layout/src/lib/header/sidenav-toggle-button/sidenav-toggle-button.component.ts","../../../../libs/layout/src/lib/header/apps-button/apps-button.component.html","../../../../libs/layout/src/lib/header/apps-button/apps-button.component.ts","../../../../libs/layout/src/lib/header/language-selector/language-selector.component.html","../../../../libs/layout/src/lib/header/language-selector/language-selector.component.ts","../../../../libs/layout/src/lib/header/header.component.html","../../../../libs/layout/src/lib/header/header.component.ts","../../../../libs/layout/src/lib/header/sign-out/sign-out.component.module.ts","../../../../libs/layout/src/lib/header/user-profile-icon/user-profile-icon.component.module.ts","../../../../libs/layout/src/lib/header/navigation-progress-bar/navigation-progress-bar.component.module.ts","../../../../libs/layout/src/lib/header/sidenav-toggle-button/sidenav-toggle-button.component.module.ts","../../../../libs/layout/src/lib/header/reset-button/reset-button.component.ts","../../../../libs/layout/src/lib/header/reset-button/reset-button.component.html","../../../../libs/layout/src/lib/header/reset-button/reset-button.component.module.ts","../../../../libs/layout/src/lib/header/apps-button/apps-button.component.module.ts","../../../../libs/layout/src/lib/header/language-selector/language-selector.component.module.ts","../../../../libs/layout/src/lib/header/header.component.module.ts","../../../../libs/layout/src/lib/layout/layout.component.service.ts","../../../../libs/layout/src/lib/sidenav/sidenav-footer.directive.ts","../../../../libs/layout/src/lib/sidenav/sidenav-header.directive.ts","../../../../libs/layout/src/lib/sidenav/sidenav.component.service.ts","../../../../libs/layout/src/lib/navigation/navigation-item.ts","../../../../libs/layout/src/lib/navigation/navigation.service.ts","../../../../libs/layout/src/lib/navigation/navigation-item/navigation-item.component.html","../../../../libs/layout/src/lib/navigation/navigation-item/navigation-item.component.ts","../../../../libs/layout/src/lib/navigation/navigation.component.html","../../../../libs/layout/src/lib/navigation/navigation.component.ts","../../../../libs/layout/src/lib/sidenav/sidenav.component.html","../../../../libs/layout/src/lib/sidenav/sidenav.component.ts","../../../../libs/layout/src/lib/sidenav-content/sidenav-content.component.service.ts","../../../../libs/layout/src/lib/sidenav-content/sidenav-content.component.ts","../../../../libs/layout/src/lib/sidenav-content/sidenav-content.component.html","../../../../libs/layout/src/lib/window-container-sidenav/window-container-sidenav.component.html","../../../../libs/layout/src/lib/window-container-sidenav/window-container-sidenav.component.ts","../../../../libs/layout/src/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.html","../../../../libs/layout/src/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.ts","../../../../libs/layout/src/lib/layout/layout.component.html","../../../../libs/layout/src/lib/layout/layout.component.ts","../../../../libs/layout/src/lib/navigation/replace-router-paths.service.ts","../../../../libs/layout/src/lib/navigation/replace-router-paths.pipe.ts","../../../../libs/layout/src/lib/navigation/navigation.component.module.ts","../../../../libs/layout/src/lib/sidenav/sidenav.component.module.ts","../../../../libs/layout/src/lib/sidenav-content/sidenav-content.component.module.ts","../../../../libs/layout/src/lib/window-container-sidenav/window-container-sidenav.component.module.ts","../../../../libs/layout/src/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.module.ts","../../../../libs/layout/src/lib/layout/layout.component.module.ts","../../../../libs/layout/src/lib/sidenav/version/version.component.html","../../../../libs/layout/src/lib/sidenav/version/version.component.ts","../../../../libs/layout/src/lib/sidenav/version/version.component.module.ts","../../../../libs/layout/src/lib/footer.directive.ts","../../../../libs/layout/src/rxap-layout.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { LogoConfig } from './types';\nimport { NavigationWithInserts } from './navigation/navigation-item';\n\nexport const RXAP_NAVIGATION_CONFIG = new InjectionToken<NavigationWithInserts | (() => NavigationWithInserts)>('rxap/layout/navigation-config');\nexport const RXAP_NAVIGATION_CONFIG_INSERTS = new InjectionToken<Record<string, NavigationWithInserts>>('rxap/layout/navigation-config-inserts');\n\nexport const RXAP_FOOTER_COMPONENT = new InjectionToken('rxap/layout/footer-component');\nexport const RXAP_HEADER_COMPONENT = new InjectionToken('rxap/layout/header-component');\nexport const RXAP_LOGO_CONFIG = new InjectionToken<LogoConfig>('rxap/layout/logo-config');\nexport const RXAP_LAYOUT_APPS_GRID = new InjectionToken('rxap/layout/apps-grid');\n","<ng-template [ngIf]=\"footerService.portals$ | async\" let-portals>\n <mat-toolbar *ngIf=\"portals.length\" class=\"footer mat-elevation-z1\">\n <mat-toolbar-row *ngFor=\"let portal of portals\">\n <ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n </mat-toolbar-row>\n </mat-toolbar>\n</ng-template>\n","import {\n Component,\n ChangeDetectionStrategy\n} from '@angular/core';\nimport { FooterService } from '@rxap/services';\n\n@Component({\n selector: 'rxap-footer',\n templateUrl: './footer.component.html',\n styleUrls: [ './footer.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class FooterComponent {\n\n constructor(\n public readonly footerService: FooterService\n ) {}\n\n}\n","import { NgModule } from '@angular/core';\nimport { FooterComponent } from './footer.component';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { CommonModule } from '@angular/common';\nimport { PortalModule } from '@angular/cdk/portal';\n\n\n@NgModule({\n declarations: [ FooterComponent ],\n imports: [\n MatToolbarModule,\n CommonModule,\n PortalModule\n ],\n exports: [ FooterComponent ]\n})\nexport class FooterModule {}\n","import {\n Component,\n ChangeDetectionStrategy,\n Inject\n} from '@angular/core';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'rxap-sign-out',\n templateUrl: './sign-out.component.html',\n styleUrls: [ './sign-out.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'rxap-sign-out' }\n})\nexport class SignOutComponent {\n\n constructor(\n @Inject(Router)\n private readonly router: Router\n ) {}\n\n public redirectToRoot() {\n this.router.navigate([ '/' ]);\n }\n\n}\n","<button\n rxapSignOut\n (successful)=\"redirectToRoot()\"\n mat-icon-button\n>\n <mat-icon>login</mat-icon>\n</button>\n","<button [matMenuTriggerFor]=\"menu\"\n [rxapAvatarBackgroundImage]=\"userProfileUrl$ | async\"\n [name]=\"(userName$ | async) ?? ''\"\n class=\"profile-icon\"\n fxLayout=\"row\"\n fxLayoutAlign=\"center center\">\n</button>\n\n<mat-menu #menu=\"matMenu\" [yPosition]=\"'below'\">\n <ng-template [ngIf]=\"userService.user$ | async\" let-user>\n <button *ngIf=\"user.firstname && user.lastname\" mat-menu-item>\n <mat-icon>person</mat-icon>\n <span>{{user.firstname}} {{user.lastname}}</span>\n </button>\n <button *ngIf=\"user.name\" mat-menu-item>\n <mat-icon>person</mat-icon>\n <span>{{user.name}}</span>\n </button>\n <button *ngIf=\"user.username\" mat-menu-item>\n <mat-icon>account_circle</mat-icon>\n <span>{{user.username}}</span>\n </button>\n <button *ngIf=\"user.email\" mat-menu-item>\n <mat-icon>email</mat-icon>\n <span>{{user.email}}</span>\n </button>\n </ng-template>\n</mat-menu>\n","import {\n Component,\n ChangeDetectionStrategy,\n Inject\n} from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { UserService } from '@rxap/authentication';\nimport { map } from 'rxjs/operators';\nimport { isDefined } from '@rxap/utilities/rxjs';\n\n@Component({\n selector: 'rxap-user-profile-icon',\n templateUrl: './user-profile-icon.component.html',\n styleUrls: ['./user-profile-icon.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'rxap-user-profile-icon' },\n})\nexport class UserProfileIconComponent {\n public userProfileUrl$: Observable<string | undefined>;\n public userName$: Observable<string>;\n\n constructor(\n @Inject(UserService)\n public userService: UserService\n ) {\n this.userProfileUrl$ = this.userService.user$.pipe(\n isDefined(),\n map((user) => user.photoURL ?? user.avatarUrl)\n );\n this.userName$ = this.userService.user$.pipe(\n isDefined(),\n map(\n (user) =>\n user.name ??\n (user.firstname || user.lastname\n ? [user.firstname, user.lastname].join(' ').trim()\n : null) ??\n user.username\n )\n );\n }\n}\n","<mat-progress-bar\n *ngIf=\"navigating$ | async\"\n mode=\"indeterminate\"\n color=\"accent\"\n></mat-progress-bar>\n","import {\n Component,\n ChangeDetectionStrategy,\n Inject\n} from '@angular/core';\nimport { Observable } from 'rxjs';\nimport {\n Router,\n NavigationStart,\n NavigationEnd,\n NavigationCancel\n} from '@angular/router';\nimport {\n filter,\n map\n} from 'rxjs/operators';\n\n@Component({\n selector: 'rxap-navigation-progress-bar',\n templateUrl: './navigation-progress-bar.component.html',\n styleUrls: [ './navigation-progress-bar.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'rxap-navigation-progress-bar' }\n})\nexport class NavigationProgressBarComponent {\n\n public navigating$: Observable<boolean>;\n\n public constructor(\n @Inject(Router) public readonly router: Router\n ) {\n this.navigating$ = this.router.events.pipe(\n filter(\n event =>\n event instanceof NavigationStart ||\n event instanceof NavigationEnd ||\n event instanceof NavigationCancel\n ),\n map(event => event instanceof NavigationStart)\n );\n }\n\n}\n","<button (click)=\"sidenav.toggle()\" mat-icon-button>\n <mat-icon *ngIf=\"!sidenav.opened\">menu</mat-icon>\n <mat-icon *ngIf=\"sidenav.opened\">menu_open</mat-icon>\n</button>\n","import {\n Component,\n ChangeDetectionStrategy,\n Input\n} from '@angular/core';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { Required } from '@rxap/utilities';\n\n@Component({\n selector: 'rxap-sidenav-toggle-button',\n templateUrl: './sidenav-toggle-button.component.html',\n styleUrls: [ './sidenav-toggle-button.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'rxap-sidenav-toggle-button' }\n})\nexport class SidenavToggleButtonComponent {\n\n @Input()\n @Required\n public sidenav!: MatSidenav;\n\n}\n","<ng-template [ngIf]=\"grid && grid.length\">\n <button #trigger=\"cdkOverlayOrigin\" (click)=\"isOpen = !isOpen\" cdkOverlayOrigin mat-icon-button>\n <mat-icon>apps</mat-icon>\n </button>\n\n <ng-template (overlayOutsideClick)=\"isOpen = false\"\n [cdkConnectedOverlayOpen]=\"isOpen\"\n [cdkConnectedOverlayOrigin]=\"trigger\"\n cdkConnectedOverlay>\n\n <div class=\"grid-container\">\n\n <ul [ngStyle]=\"{ columns: columns }\" class=\"grid\">\n <li *ngFor=\"let item of gridWithPadding\" [ngClass]=\"{ empty: item.empty }\">\n <a *ngIf=\"!item.empty\" [href]=\"item.href\">\n\n <span fxLayout=\"column\" fxLayoutAlign=\"start center\" fxLayoutGap=\"12px\">\n <img [src]=\"item.image\" width=\"53px\">\n <span>{{item.label}}</span>\n </span>\n\n </a>\n </li>\n </ul>\n\n </div>\n\n </ng-template>\n</ng-template>\n","import {\n Component,\n ChangeDetectionStrategy,\n Inject,\n Optional,\n} from '@angular/core';\nimport { RXAP_LAYOUT_APPS_GRID } from '../../tokens';\nimport { ConfigService } from '@rxap/config';\n\nexport interface AppsButtonGridItem {\n image: string;\n label: string;\n href: string;\n empty?: false;\n}\n\nexport interface EmptyAppsButtonGridItem {\n empty: true;\n href?: undefined;\n label?: undefined;\n image?: undefined;\n}\n\n@Component({\n selector: 'rxap-apps-button',\n templateUrl: './apps-button.component.html',\n styleUrls: ['./apps-button.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'rxap-apps-button' },\n})\nexport class AppsButtonComponent {\n public get gridWithPadding(): Array<\n AppsButtonGridItem | EmptyAppsButtonGridItem\n > {\n const gridWithPadding: Array<AppsButtonGridItem | EmptyAppsButtonGridItem> =\n this.grid.slice();\n while (gridWithPadding.length % this.columns !== 0) {\n gridWithPadding.push({ empty: true });\n }\n return gridWithPadding;\n }\n\n public get columns() {\n if (this.grid.length < 4) {\n return 1;\n }\n if (this.grid.length < 6) {\n return 2;\n }\n return 3;\n }\n\n public isOpen = false;\n public grid: Array<AppsButtonGridItem> = [];\n\n constructor(\n @Optional()\n @Inject(RXAP_LAYOUT_APPS_GRID)\n grid: any,\n @Inject(ConfigService)\n private readonly config: ConfigService\n ) {\n this.grid = grid ?? this.config.get('navigation.apps') ?? [];\n }\n}\n","<ng-template [ngIf]=\"(language.languages | keyvalue).length\">\n <div>\n <mat-form-field appearance=\"outline\" class=\"language-selector\">\n <mat-select (ngModelChange)=\"language.setLanguage($event)\" [ngModel]=\"language.selectedLanguage\">\n <mat-option *ngFor=\"let item of language.languages | keyvalue\" [value]=\"item.key\">{{item.value}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n</ng-template>\n","import {\n Component,\n ChangeDetectionStrategy,\n Injectable,\n Inject,\n} from '@angular/core';\nimport { ConfigService } from '@rxap/config';\n\nexport const RXAP_SELECTED_LANGUAGE_LOCAL_STORAGE_KEY =\n 'rxap__selected_language';\nexport const RXAP_SELECTED_LANGUAGE_CHANGE_LOCAL_STORAGE_KEY =\n 'rxap__selected_language_last_change';\n\n@Injectable({ providedIn: 'root' })\nexport class LanguageSelectorService {\n public readonly languages: any;\n public readonly defaultLanguage: string;\n public selectedLanguage: string;\n\n constructor(\n @Inject(ConfigService)\n private readonly config: ConfigService\n ) {\n this.languages = this.config.get<any>('i18n.languages') ?? {};\n this.defaultLanguage =\n this.config.get('i18n.defaultLanguage') ??\n Object.keys(this.languages)[0] ??\n 'en';\n this.selectedLanguage =\n localStorage.getItem(RXAP_SELECTED_LANGUAGE_LOCAL_STORAGE_KEY) ??\n this.defaultLanguage;\n }\n\n public setLanguage(language: string) {\n if (language !== this.selectedLanguage) {\n this.redirect(language);\n }\n }\n\n public autoRedirect() {\n if (localStorage.getItem(RXAP_SELECTED_LANGUAGE_LOCAL_STORAGE_KEY)) {\n this.redirect(\n localStorage.getItem(RXAP_SELECTED_LANGUAGE_LOCAL_STORAGE_KEY)!\n );\n }\n }\n\n private redirect(language: string) {\n const currentUrl = location.origin + location.pathname + location.search;\n const redirectUrl =\n location.origin +\n `/${language}` +\n location.pathname.replace(new RegExp(`^\\/${this.selectedLanguage}`), '') +\n location.search;\n this.selectedLanguage = language;\n localStorage.setItem(RXAP_SELECTED_LANGUAGE_LOCAL_STORAGE_KEY, language);\n if (currentUrl !== redirectUrl) {\n if (this.checkLastChange()) {\n location.replace(redirectUrl);\n }\n } else {\n console.log('Redirect not required');\n }\n }\n\n private checkLastChange(): boolean {\n const lastChangeString = localStorage.getItem(\n RXAP_SELECTED_LANGUAGE_CHANGE_LOCAL_STORAGE_KEY\n );\n if (lastChangeString) {\n if (Date.now() - parseInt(lastChangeString, 10) < 1000) {\n return false;\n }\n }\n localStorage.setItem(\n RXAP_SELECTED_LANGUAGE_CHANGE_LOCAL_STORAGE_KEY,\n Date.now().toFixed(0)\n );\n return true;\n }\n}\n\n@Component({\n selector: 'rxap-language-selector',\n templateUrl: './language-selector.component.html',\n styleUrls: ['./language-selector.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'rxap-language-selector' },\n})\nexport class LanguageSelectorComponent {\n constructor(public readonly language: LanguageSelectorService) {}\n}\n","<mat-toolbar [ngClass]=\"{ open: sidenav?.opened }\" [color]=\"color\" class=\"mat-elevation-z3\">\n <mat-toolbar-row *ngFor=\"let headerComponent of components\">\n <ng-container *ngComponentOutlet=\"headerComponent\"></ng-container>\n </mat-toolbar-row>\n <mat-toolbar-row>\n <div\n fxLayout=\"row\"\n fxLayoutAlign=\"space-between center\"\n fxLayoutGap=\"16px\"\n class=\"content\"\n >\n <rxap-sidenav-toggle-button *ngIf=\"sidenav\" fxFlex=\"nogrow\" [sidenav]=\"sidenav\"></rxap-sidenav-toggle-button>\n <div fxFlex=\"grow\">\n <ng-content></ng-content>\n </div>\n <rxap-language-selector fxFlex=\"nogrow\"></rxap-language-selector>\n <rxap-apps-button fxFlex=\"nogrow\"></rxap-apps-button>\n <rxap-user-profile-icon *ngIf=\"hasUser$ | async\" fxFlex=\"nogrow\"></rxap-user-profile-icon>\n <div fxFlex=\"nogrow\" *ngIf=\"settingsMenuPanel\">\n <button mat-icon-button [matMenuTriggerFor]=\"settingsMenuPanel\">\n <mat-icon>settings</mat-icon>\n </button>\n </div>\n <rxap-sign-out fxFlex=\"nogrow\"></rxap-sign-out>\n </div>\n </mat-toolbar-row>\n</mat-toolbar>\n<rxap-navigation-progress-bar></rxap-navigation-progress-bar>\n","import {\n Component,\n OnInit,\n ChangeDetectionStrategy,\n OnDestroy,\n Input,\n Optional,\n Inject,\n} from '@angular/core';\nimport { Constructor } from '@rxap/utilities';\nimport { Subscription, Observable } from 'rxjs';\nimport { tap, map } from 'rxjs/operators';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { UserService } from '@rxap/authentication';\nimport { RXAP_HEADER_COMPONENT } from '../tokens';\nimport { HeaderService } from '@rxap/services';\nimport { MatMenuPanel } from '@angular/material/menu';\nimport { ThemePalette } from '@angular/material/core';\n\n@Component({\n selector: 'rxap-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'rxap-layout-header',\n },\n})\nexport class HeaderComponent implements OnInit, OnDestroy {\n @Input()\n public sidenav?: MatSidenav;\n\n public components: Array<Constructor<any>> = [];\n\n public subscriptions = new Subscription();\n\n public hasUser$: Observable<boolean>;\n\n @Input()\n public color: ThemePalette = 'primary';\n\n @Input()\n public settingsMenuPanel?: MatMenuPanel;\n\n constructor(\n @Inject(HeaderService)\n public readonly headerComponentService: HeaderService,\n @Inject(UserService)\n private readonly userService: UserService<any>,\n @Optional() @Inject(RXAP_HEADER_COMPONENT) public headerComponent: any\n ) {\n this.hasUser$ = this.userService.user$.pipe(map(Boolean));\n }\n\n public ngOnInit() {\n this.updateComponents();\n this.subscriptions.add(\n this.headerComponentService.update$\n .pipe(tap(() => this.updateComponents()))\n .subscribe()\n );\n }\n\n public updateComponents(): void {\n this.components = this.headerComponentService.getComponents();\n }\n\n public ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { SignOutComponent } from './sign-out.component';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { SignOutDirectiveModule } from '@rxap/authentication';\n\n\n@NgModule({\n declarations: [SignOutComponent],\n imports: [\n MatButtonModule,\n MatIconModule,\n SignOutDirectiveModule,\n ],\n exports: [SignOutComponent]\n})\nexport class SignOutComponentModule { }\n","import { NgModule } from '@angular/core';\nimport { UserProfileIconComponent } from './user-profile-icon.component';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatIconModule } from '@angular/material/icon';\nimport { CommonModule } from '@angular/common';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { AvatarBackgroundImageDirectiveModule } from '@rxap/directives';\n\n\n@NgModule({\n declarations: [UserProfileIconComponent],\n imports: [\n MatMenuModule,\n MatIconModule,\n CommonModule,\n FlexLayoutModule,\n AvatarBackgroundImageDirectiveModule,\n ],\n exports: [UserProfileIconComponent]\n})\nexport class UserProfileIconComponentModule { }\n","import { NgModule } from '@angular/core';\nimport { NavigationProgressBarComponent } from './navigation-progress-bar.component';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { CommonModule } from '@angular/common';\n\n\n@NgModule({\n declarations: [NavigationProgressBarComponent],\n imports: [\n MatProgressBarModule,\n CommonModule\n ],\n exports: [NavigationProgressBarComponent]\n})\nexport class NavigationProgressBarComponentModule { }\n","import { NgModule } from '@angular/core';\nimport { SidenavToggleButtonComponent } from './sidenav-toggle-button.component';\nimport { MatIconModule } from '@angular/material/icon';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\n\n\n@NgModule({\n declarations: [SidenavToggleButtonComponent],\n imports: [\n MatIconModule,\n CommonModule,\n MatButtonModule\n ],\n exports: [SidenavToggleButtonComponent]\n})\nexport class SidenavToggleButtonComponentModule { }\n","import { Component, ChangeDetectionStrategy, Inject } from '@angular/core';\nimport { ResetService } from '@rxap/services';\n\n@Component({\n selector: 'rxap-reset-button',\n templateUrl: './reset-button.component.html',\n styleUrls: ['./reset-button.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'rxap-reset-button' },\n})\nexport class ResetButtonComponent {\n constructor(\n @Inject(ResetService)\n public readonly resetService: ResetService\n ) {}\n}\n","<button (click)=\"resetService.resetAll()\" mat-icon-button>\n <mat-icon>refresh</mat-icon>\n</button>\n","import { NgModule } from '@angular/core';\nimport { ResetButtonComponent } from './reset-button.component';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\n\n\n@NgModule({\n declarations: [ResetButtonComponent],\n imports: [\n MatIconModule,\n MatButtonModule\n ],\n exports: [ResetButtonComponent]\n})\nexport class ResetButtonComponentModule { }\n","import { NgModule } from '@angular/core';\nimport { AppsButtonComponent } from './apps-button.component';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatGridListModule } from '@angular/material/grid-list';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\n\n\n@NgModule({\n declarations: [ AppsButtonComponent ],\n imports: [\n MatButtonModule,\n MatIconModule,\n MatGridListModule,\n OverlayModule,\n FlexLayoutModule,\n CommonModule,\n RouterModule\n ],\n exports: [ AppsButtonComponent ]\n})\nexport class AppsButtonComponentModule {}\n","import { NgModule } from '@angular/core';\nimport { LanguageSelectorComponent } from './language-selector.component';\nimport { MatSelectModule } from '@angular/material/select';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\n\n@NgModule({\n declarations: [ LanguageSelectorComponent ],\n imports: [\n MatSelectModule,\n CommonModule,\n FormsModule\n ],\n exports: [ LanguageSelectorComponent ]\n})\nexport class LanguageSelectorComponentModule {}\n","import { NgModule } from '@angular/core';\nimport { HeaderComponent } from './header.component';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { SignOutComponentModule } from './sign-out/sign-out.component.module';\nimport { UserProfileIconComponentModule } from './user-profile-icon/user-profile-icon.component.module';\nimport { NavigationProgressBarComponentModule } from './navigation-progress-bar/navigation-progress-bar.component.module';\nimport { SidenavToggleButtonComponentModule } from './sidenav-toggle-button/sidenav-toggle-button.component.module';\nimport { ResetButtonComponentModule } from './reset-button/reset-button.component.module';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { CommonModule } from '@angular/common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { AppsButtonComponentModule } from './apps-button/apps-button.component.module';\nimport { LanguageSelectorComponentModule } from './language-selector/language-selector.component.module';\n\n\n@NgModule({\n declarations: [ HeaderComponent ],\n imports: [\n MatToolbarModule,\n SignOutComponentModule,\n UserProfileIconComponentModule,\n NavigationProgressBarComponentModule,\n SidenavToggleButtonComponentModule,\n ResetButtonComponentModule,\n FlexLayoutModule,\n CommonModule,\n MatButtonModule,\n MatIconModule,\n MatMenuModule,\n AppsButtonComponentModule,\n LanguageSelectorComponentModule\n ],\n exports: [ HeaderComponent ]\n})\nexport class HeaderModule {}\n","import {\n Injectable,\n Optional,\n Inject\n} from '@angular/core';\nimport {\n BehaviorSubject,\n Observable\n} from 'rxjs';\nimport {\n tap,\n map\n} from 'rxjs/operators';\nimport {\n FooterService,\n HeaderService\n} from '@rxap/services';\nimport { RXAP_LOGO_CONFIG } from '../tokens';\nimport { LogoConfig } from '../types';\nimport { ConfigService } from '@rxap/config';\nimport { MatDrawerMode } from '@angular/material/sidenav';\n\n@Injectable({ providedIn: 'root' })\nexport class LayoutComponentService {\n\n public opened$ = new BehaviorSubject<boolean>(true);\n public mode$ = new BehaviorSubject<MatDrawerMode>('side');\n public fixedBottomGap$: Observable<number>;\n public fixedTopGap$ = new BehaviorSubject<number>(64);\n public logo: LogoConfig;\n\n public constructor(\n public readonly footerComponentService: FooterService,\n public readonly headerComponentService: HeaderService,\n @Optional() @Inject(RXAP_LOGO_CONFIG) logoConfig: LogoConfig | null = null,\n @Inject(ConfigService)\n private readonly config: ConfigService\n ) {\n this.mode$.next(this.config.get('navigation.mode', this.mode$.value));\n this.opened$.next(this.config.get('navigation.open', this.opened$.value));\n this.fixedBottomGap$ = this.footerComponentService.portalCount$.pipe(map(count => count * 64));\n this.fixedTopGap$.next(this.headerComponentService.countComponent * 64);\n this.headerComponentService.update$.pipe(\n tap(() => this.fixedTopGap$.next(this.headerComponentService.countComponent * 64))\n ).subscribe();\n this.logo = logoConfig ?? {\n src: '/assets/logo.png',\n width: '192'\n };\n }\n\n}\n","import { Directive, TemplateRef, Inject } from '@angular/core';\n\n@Directive({\n selector: '[rxapSidenavFooter]',\n})\nexport class SidenavFooterDirective {\n constructor(\n @Inject(TemplateRef)\n public readonly template: TemplateRef<void>\n ) {}\n}\n","import { Directive, Inject, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[rxapSidenavHeader]',\n})\nexport class SidenavHeaderDirective {\n constructor(\n @Inject(TemplateRef)\n public readonly template: TemplateRef<void>\n ) {}\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport { ConfigService } from '@rxap/config';\n\n@Injectable({ providedIn: 'root' })\nexport class SidenavComponentService {\n\n public readonly collapsed$ = new BehaviorSubject(true);\n\n constructor(private readonly config: ConfigService) {\n this.collapsed$.next(this.config.get('navigation.collapsed', this.collapsed$.value));\n }\n\n public toggleNavigationCollapse(): void {\n this.collapsed$.next(!this.collapsed$.value);\n }\n\n}\n","import { IconConfig } from '@rxap/utilities';\nimport {\n InjectionToken,\n Type,\n AbstractType\n} from '@angular/core';\nimport { Observable } from 'rxjs';\n\nexport type Navigation = Array<NavigationItem | NavigationDividerItem>;\n\nexport type NavigationWithInserts = Array<\n | NavigationItem<NavigationWithInserts>\n | NavigationDividerItem\n | NavigationInsertItem\n>;\n\nexport interface NavigationDividerItem {\n divider: boolean;\n title?: string;\n}\n\nexport function IsNavigationDividerItem(\n item: any\n): item is NavigationDividerItem {\n return item && item.hasOwnProperty('divider') && item.divider;\n}\n\nexport interface NavigationInsertItem {\n insert: string;\n}\n\nexport function IsNavigationInsertItem(\n item: any\n): item is NavigationInsertItem {\n return item && item.hasOwnProperty('insert');\n}\n\nexport interface NavigationStatus {\n isVisible(\n navigationItem: NavigationItem,\n ): Observable<boolean> | Promise<boolean> | boolean;\n}\n\nexport interface NavigationItem<Children = Navigation> extends Record<string, unknown> {\n routerLink: string[];\n label: string;\n children?: Children;\n icon?: IconConfig;\n status?: Array<\n | Type<NavigationStatus>\n | InjectionToken<NavigationStatus>\n | AbstractType<NavigationStatus>\n >;\n}\n\nexport function IsNavigationItem(item: any): item is NavigationItem {\n return (\n item && item.hasOwnProperty('routerLink') && item.hasOwnProperty('label')\n );\n}\n","import type { Injector } from '@angular/core';\nimport {\n Injectable,\n Inject,\n Optional,\n INJECTOR\n} from '@angular/core';\nimport {\n Observable,\n ReplaySubject,\n of,\n combineLatest,\n from\n} from 'rxjs';\nimport {\n Navigation,\n NavigationWithInserts,\n IsNavigationInsertItem,\n IsNavigationItem,\n IsNavigationDividerItem,\n NavigationItem,\n NavigationDividerItem\n} from './navigation-item';\nimport {\n RXAP_NAVIGATION_CONFIG,\n RXAP_NAVIGATION_CONFIG_INSERTS\n} from '../tokens';\nimport {\n switchMap,\n map,\n catchError\n} from 'rxjs/operators';\n\n@Injectable({ providedIn: 'root' })\nexport class NavigationService {\n public readonly config$: Observable<Navigation>;\n\n private inserts = new Map<string, NavigationWithInserts>();\n\n private readonly navigation: NavigationWithInserts;\n\n private readonly navigation$ = new ReplaySubject<Navigation>(1);\n\n constructor(\n @Inject(RXAP_NAVIGATION_CONFIG)\n navigation: any,\n @Inject(INJECTOR)\n private readonly injector: Injector,\n @Optional()\n @Inject(RXAP_NAVIGATION_CONFIG_INSERTS)\n inserts: any | null = null\n ) {\n if (typeof navigation === 'function') {\n this.navigation = navigation();\n } else {\n this.navigation = navigation;\n }\n if (inserts) {\n Object.entries(inserts).forEach(([id, insert]: [string, any]) =>\n this.insert(id, insert, false)\n );\n }\n this.updateNavigation();\n this.config$ = this.navigation$.pipe(\n switchMap((navigationWithoutStatusCheck) =>\n this.checkNavigationStatusProviders(navigationWithoutStatusCheck)\n )\n );\n }\n\n /**\n * @deprecated use add instead\n * @param id\n * @param value\n * @param update\n */\n public insert(\n id: string,\n value: NavigationWithInserts,\n update: boolean = true\n ): void {\n this.add(id, value, update);\n }\n\n public add(\n id: string,\n value: NavigationWithInserts,\n update: boolean = true\n ): void {\n this.inserts.set(id, value);\n if (update) {\n this.updateNavigation();\n }\n }\n\n public has(id: string): boolean {\n return this.inserts.has(id);\n }\n\n public get(id: string): NavigationWithInserts | undefined {\n return this.inserts.get(id);\n }\n\n public remove(id: string, update: boolean = true): void {\n this.inserts.delete(id);\n if (update) {\n this.updateNavigation();\n }\n }\n\n public updateNavigation(): void {\n this.navigation$.next(this.replaceInserts(this.navigation));\n }\n\n /**\n * @internal\n * @param navigationItem\n */\n public checkNavigationItemStatusProviders(\n navigationItem: NavigationItem | NavigationDividerItem\n ): Observable<NavigationItem | NavigationDividerItem | null> {\n if (IsNavigationDividerItem(navigationItem) || !navigationItem.status) {\n return of(navigationItem);\n }\n const isVisibleArray$: Array<Observable<boolean>> = navigationItem.status\n .map((statusToken) => this.injector.get(statusToken))\n .map((status) => {\n const isVisible = status.isVisible(navigationItem);\n if (typeof isVisible === 'boolean') {\n return of(isVisible);\n } else {\n return from(isVisible);\n }\n }).map(isVisible$ => isVisible$.pipe(catchError(e => {\n console.error('isVisible method failed: ' + e.message);\n return of(false);\n })));\n // TODO : dont wait for all status services to complete, but cancel waiting if one returns false\n return combineLatest(isVisibleArray$).pipe(\n map((isVisibleArray) =>\n isVisibleArray.reduce((acc, isVisible) => acc && isVisible, true)\n ),\n map((isVisible) => (isVisible ? navigationItem : null)),\n switchMap((navigationItemOrNull) => {\n if (navigationItemOrNull) {\n if (navigationItemOrNull.children?.length) {\n return this.checkNavigationStatusProviders(\n navigationItemOrNull.children\n ).pipe(\n map((children) => ({\n ...navigationItemOrNull,\n children,\n }))\n );\n }\n return of(navigationItemOrNull);\n }\n return of(null);\n })\n );\n }\n\n /**\n * @internal\n * @param navigationItem\n */\n public checkNavigationStatusProviders(\n navigation: Navigation\n ): Observable<Navigation> {\n return combineLatest(\n navigation.map((navigationItem) =>\n this.checkNavigationItemStatusProviders(navigationItem)\n )\n ).pipe(\n map((navigationWithNullItems) => {\n const cleanNavigation: Navigation = [];\n\n for (const navigationItem of navigationWithNullItems) {\n if (navigationItem !== null) {\n cleanNavigation.push(navigationItem);\n }\n }\n\n return cleanNavigation;\n })\n );\n }\n\n private replaceInserts(\n navigationWithInserts: NavigationWithInserts\n ): Navigation {\n const navigation: Navigation = [];\n\n for (const navigationItem of navigationWithInserts) {\n if (IsNavigationInsertItem(navigationItem)) {\n if (this.inserts.has(navigationItem.insert)) {\n navigation.push(\n ...this.replaceInserts(this.inserts.get(navigationItem.insert)!)\n );\n }\n } else if (IsNavigationItem(navigationItem)) {\n navigation.push({\n ...navigationItem,\n children: this.replaceInserts(navigationItem.children ?? []),\n });\n } else if (IsNavigationDividerItem(navigationItem)) {\n navigation.push(navigationItem);\n }\n }\n\n return navigation;\n }\n}\n","<a [routerLink]=\"item.routerLink\"\n routerLinkActive=\"link-active\"\n [matTooltipDisabled]=\"!(sidenav.collapsed$ | async)\"\n [matTooltip]=\"item.label\"\n class=\"navigation-link mat-body-2 mat-body-strong navigation-level-{{level}}\" matRipple>\n <mat-icon *ngIf=\"item.icon\" [rxapIcon]=\"item.icon\" class=\"icon\"></mat-icon>\n <ng-template [ngIf]=\"!(sidenav.collapsed$ | async)\">\n <span class=\"label\">{{ item.label }}</span>\n </ng-template>\n</a>\n\n<ul rxap-navigation\n *ngIf=\"routerLinkActive.isActive && !(sidenav.collapsed$ | async) && children\"\n [@sub-nav]\n [items]=\"children\"\n [level]=\"level + 1\"\n class=\"sub-items\"\n fxFlex=\"nogrow\"\n>\n</ul>\n\n<ng-template #navigationOverlay>\n <div class=\"navigation-overlay-container mat-elevation-z1\"\n (mouseenter)=\"lockeOverlay = true\" (mouseleave)=\"lockeOverlay = false; onMouseleave()\">\n <ul>\n <li *ngFor=\"let child of children\">\n <a *ngIf=\"isNavigationItem(child)\" [routerLink]=\"asNavigationItem(child).routerLink\"\n class=\"navigation-link mat-body-2 mat-body-strong\" matRipple>\n <mat-icon *ngIf=\"asNavigationItem(child).icon\" [rxapIcon]=\"asNavigationItem(child).icon\" class=\"icon\"></mat-icon>\n <span class=\"label\">{{ asNavigationItem(child).label }}</span>\n </a>\n </li>\n </ul>\n </div>\n</ng-template>\n","import {\n Component,\n Input,\n ChangeDetectionStrategy,\n OnChanges,\n SimpleChanges,\n ViewChild,\n OnDestroy,\n AfterViewInit,\n HostBinding,\n ViewEncapsulation,\n ElementRef,\n Renderer2,\n HostListener,\n OnInit,\n TemplateRef,\n ViewContainerRef,\n EmbeddedViewRef,\n Inject,\n} from '@angular/core';\nimport { Required, DebounceCall } from '@rxap/utilities';\nimport { trigger, style, transition, animate } from '@angular/animations';\nimport {\n NavigationItem,\n Navigation,\n NavigationDividerItem,\n} from '../navigation-item';\nimport { RouterLinkActive, Router, NavigationEnd } from '@angular/router';\nimport { Subscription } from 'rxjs';\nimport {\n filter,\n tap,\n delay,\n startWith,\n distinctUntilChanged,\n skip,\n} from 'rxjs/operators';\nimport { SidenavComponentService } from '../../sidenav/sidenav.component.service';\nimport { Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { TemplatePortal } from '@angular/cdk/portal';\n\n@Component({\n selector: 'li[rxap-navigation-item]',\n templateUrl: './navigation-item.component.html',\n styleUrls: ['./navigation-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'rxap-navigation-item',\n },\n animations: [\n trigger('sub-nav', [\n transition(':enter', [\n style({ display: 'block', height: '0', overflow: 'hidden' }),\n animate(150, style({ height: '*' })),\n ]),\n transition(':leave', [\n style({ overflow: 'hidden' }),\n animate(300, style({ height: '0' })),\n style({ display: 'none' }),\n ]),\n ]),\n ],\n})\nexport class NavigationItemComponent\n implements OnChanges, AfterViewInit, OnDestroy, OnInit\n{\n public children: Navigation | null = null;\n\n @ViewChild(RouterLinkActive, { static: true })\n public routerLinkActive!: RouterLinkActive;\n\n @Input()\n @Required\n public item!: NavigationItem;\n\n @Input()\n public level: number = 0;\n\n @HostBinding('class.active')\n public isActive: boolean = false;\n\n @ViewChild('navigationOverlay')\n private _navigationOverlay!: TemplateRef<any>;\n\n private readonly _subscription = new Subscription();\n\n private _overlayRef?: OverlayRef;\n private _embeddedViewRef?: EmbeddedViewRef<any>;\n\n /**\n * indicates the mouse is over the\n */\n public lockeOverlay: boolean = false;\n\n constructor(\n @Inject(Router)\n private readonly router: Router,\n @Inject(SidenavComponentService)\n public readonly sidenav: SidenavComponentService,\n @Inject(ElementRef)\n private readonly elementRef: ElementRef,\n @Inject(Renderer2)\n private readonly renderer: Renderer2,\n @Inject(Overlay)\n private readonly overlay: Overlay,\n @Inject(ViewContainerRef)\n private readonly viewContainerRef: ViewContainerRef\n ) {}\n\n public ngOnChanges(changes: SimpleChanges) {\n if (changes.item) {\n const item: NavigationItem = changes.item.currentValue;\n this.children =\n item.children && item.children.length ? item.children : null;\n }\n }\n\n public ngAfterViewInit() {\n this._subscription.add(\n this.router.events\n .pipe(\n filter((event) => event instanceof NavigationEnd),\n startWith(true),\n delay(100),\n tap(() => {\n if (this.routerLinkActive.isActive) {\n if (!this.sidenav.collapsed$.value) {\n // only close the overlay if sidenav collapsed\n this._overlayRef?.detach();\n }\n this.renderer.addClass(this.elementRef.nativeElement, 'active');\n } else {\n this.renderer.removeClass(\n this.elementRef.nativeElement,\n 'active'\n );\n }\n })\n )\n .subscribe()\n );\n }\n\n public ngOnInit() {\n // detach the navigation overlay if the sidenav collapsed\n // state is changed\n this._subscription.add(\n this.sidenav.collapsed$\n .pipe(\n skip(1),\n distinctUntilChanged(),\n tap(() => this._overlayRef?.detach())\n )\n .subscribe()\n );\n }\n\n public ngOnDestroy() {\n this._subscription?.unsubscribe();\n this._overlayRef?.dispose();\n }\n\n @HostListener('mouseenter')\n public onMouseenter() {\n if (this.children) {\n if (!this.routerLinkActive.isActive || this.sidenav.collapsed$.value) {\n if (!this._overlayRef) {\n this._overlayRef = this.overlay.create({\n positionStrategy: this.overlay\n .position()\n .flexibleConnectedTo(this.elementRef)\n .withPositions([\n {\n originY: 'top',\n originX: 'end',\n overlayY: 'top',\n overlayX: 'start',\n },\n ]),\n });\n }\n if (!this._overlayRef.hasAttached()) {\n this._embeddedViewRef = this._overlayRef.attach(\n new TemplatePortal(this._navigationOverlay, this.viewContainerRef)\n );\n }\n }\n }\n }\n\n @HostListener('mouseleave')\n @DebounceCall(100)\n public onMouseleave() {\n if (!this.lockeOverlay) {\n this._overlayRef?.detach();\n }\n }\n\n // region type save item property\n\n // required to check the type of the item property in the ngFor loop\n\n public isNavigationDividerItem(\n item: NavigationItem | NavigationDividerItem\n ): item is NavigationDividerItem {\n return (item as any)['divider'];\n }\n\n public isNavigationItem(\n item: NavigationItem | NavigationDividerItem\n ): item is NavigationItem {\n return !this.isNavigationDividerItem(item);\n }\n\n public asNavigationItem(\n item: NavigationItem | NavigationDividerItem\n ): NavigationItem {\n if (!this.isNavigationItem(item)) {\n throw new Error('The item is not a NavigationItem');\n }\n return item;\n }\n\n // endregion\n}\n","<ng-template [ngForOf]=\"items\" let-item ngFor>\n <ng-template [ngIf]=\"isNavigationDividerItem(item)\">\n <mat-divider fxFlex=\"nogrow\"></mat-divider>\n <div *ngIf=\"!(sidenav.collapsed$ | async)\" class=\"divider-title\" fxFlex=\"nogrow\" fxLayout=\"row\" fxLayoutAlign=\"start end\">\n <span fxFlex=\"nogrow\" *ngIf=\"item.title\">{{item.title}}</span>\n </div>\n </ng-template>\n <ng-template [ngIf]=\"isNavigationItem(item)\">\n <li class=\"item\" rxap-navigation-item [level]=\"level\" [item]=\"asNavigationItem(item)\"></li>\n </ng-template>\n</ng-template>\n","import {\n Component,\n OnInit,\n ChangeDetectionStrategy,\n Input,\n OnDestroy,\n ChangeDetectorRef,\n ViewEncapsulation,\n HostBinding,\n Inject\n} from '@angular/core';\nimport {\n Navigation,\n NavigationItem,\n NavigationDividerItem\n} from './navigation-item';\nimport {\n Required,\n coerceBoolean\n} from '@rxap/utilities';\nimport { NavigationService } from './navigation.service';\nimport { Subscription } from 'rxjs';\nimport { tap } from 'rxjs/operators';\nimport { SidenavComponentService } from '../sidenav/sidenav.component.service';\n\n@Component({\n selector: 'ul[rxap-navigation]',\n templateUrl: './navigation.component.html',\n styleUrls: ['./navigation.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'rxap-navigation' },\n})\nexport class NavigationComponent implements OnInit, OnDestroy {\n @HostBinding('class.rxap-root-navigation')\n public _root = false;\n\n @Input()\n public set root(value: boolean | '') {\n this._root = coerceBoolean(value);\n }\n\n @Input()\n @Required\n public items!: Navigation;\n\n public subscription?: Subscription;\n\n @Input()\n public level: number = 0;\n\n constructor(\n @Inject(NavigationService)\n private readonly navigationService: NavigationService,\n @Inject(ChangeDetectorRef)\n private readonly cdr: ChangeDetectorRef,\n @Inject(SidenavComponentService)\n public readonly sidenav: SidenavComponentService\n ) {}\n\n public ngOnInit(): void {\n if (this._root) {\n this.items = [];\n this.subscription = this.navigationService.config$\n .pipe(\n tap((navigation) => (this.items = navigation)),\n tap(() => this.cdr.detectChanges())\n )\n .subscribe();\n }\n }\n\n public ngOnDestroy() {\n this.subscription?.unsubscribe();\n }\n\n // region type save item property\n\n // required to check the type of the item property in the ngFor loop\n\n public isNavigationDividerItem(\n item: NavigationItem | NavigationDividerItem\n ): item is NavigationDividerItem {\n return (item as any)['divider'];\n }\n\n public isNavigationItem(\n item: NavigationItem | NavigationDividerItem\n ): item is NavigationItem {\n return !this.isNavigationDividerItem(item);\n }\n\n public asNavigationItem(\n item: NavigationItem | NavigationDividerItem\n ): NavigationItem {\n if (!this.isNavigationItem(item)) {\n throw new Error('The item is not a NavigationItem');\n }\n return item;\n }\n\n // endregion\n}\n","<div class=\"container\" [ngClass]=\"{ 'collapsed': sidenav.collapsed$ | async }\">\n <div class=\"inner\"\n fxLayout=\"column\"\n fxLayoutAlign=\"space-between stretch\">\n <ng-template [ngIf]=\"sidenavHeaderDirective?.template\">\n <div fxFlex=\"nogrow\" class=\"header\" [fxHide]=\"sidenav.collapsed$ | async\">\n <ng-container *ngTemplateOutlet=\"sidenavHeaderDirective?.template ?? null\"></ng-container>\n </div>\n <mat-divider fxFlex=\"nogrow\" [fxHide]=\"sidenav.collapsed$ | async\"></mat-divider>\n </ng-template>\n <div fxFlex=\"grow\" class=\"nav-container\">\n <ul fxLayout=\"column\" root rxap-navigation></ul>\n </div>\n <mat-divider fxFlex=\"nogrow\"></mat-divider>\n <button mat-button class=\"sidebar-toggle\" [ngClass]=\"{ 'collapsed': sidenav.collapsed$ | async }\" fxFlex=\"nogrow\"\n (click)=\"sidenav.toggleNavigationCollapse()\">\n <span class=\"sidebar-toggle-inner\" fxLayout=\"row\" fxLayoutAlign=\"start center\" fxLayoutGap=\"16px\">\n <mat-icon fxFlex=\"nogrow\" class=\"arrow\">double_arrow</mat-icon>\n <span [fxHide]=\"sidenav.collapsed$ | async\" class=\"label\" fxFlex=\"grow\" i18n>Collapse sidebar</span>\n </span>\n </button>\n <ng-template [ngIf]=\"sidenavFooterDirective?.template ?? null\">\n <mat-divider fxFlex=\"nogrow\" [fxHide]=\"sidenav.collapsed$ | async\"></mat-divider>\n <div fxFlex=\"nogrow\" class=\"footer\" [fxHide]=\"sidenav.collapsed$ | async\">\n <ng-container *ngTemplateOutlet=\"sidenavFooterDirective?.template ?? null\"></ng-container>\n </div>\n </ng-template>\n </div>\n</div>\n","import {\n Component,\n ChangeDetectionStrategy,\n ContentChild\n} from '@angular/core';\nimport { SidenavFooterDirective } from './sidenav-footer.directive';\nimport { SidenavHeaderDirective } from './sidenav-header.directive';\nimport { SidenavComponentService } from './sidenav.component.service';\n\n@Component({\n selector: 'rxap-sidenav',\n templateUrl: './sidenav.component.html',\n styleUrls: [ './sidenav.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'rxap-layout-sidenav'\n }\n})\nexport class SidenavComponent {\n\n @ContentChild(SidenavFooterDirective)\n public sidenavFooterDirective?: SidenavFooterDirective;\n\n @ContentChild(SidenavHeaderDirective)\n public sidenavHeaderDirective?: SidenavHeaderDirective;\n\n constructor(public readonly sidenav: SidenavComponentService) {}\n\n}\n","import {\n Injectable,\n Inject\n} from '@angular/core';\nimport {\n HeaderService,\n FooterService\n} from '@rxap/services';\nimport {\n BehaviorSubject,\n Observable,\n combineLatest\n} from 'rxjs';\nimport {\n tap,\n map\n} from 'rxjs/operators';\n\n@Injectable({ providedIn: 'root' })\nexport class SidenavContentComponentService {\n\n public headerRows$ = new BehaviorSubject<number>(1);\n public footerRows$: Observable<number>;\n public innerHeight$: Observable<string>;\n public marginTop$: Observable<string>;\n public marginBottom$: Observable<string>;\n\n constructor(\n @Inject(FooterService) public readonly footerComponentService: FooterService,\n @Inject(HeaderService) public readonly headerComponentService: HeaderService\n ) {\n this.headerRows$.next(this.headerComponentService.countComponent);\n\n this.footerComponentService.portalCount$.pipe().subscribe();\n\n this.footerRows$ = this.footerComponentService.portalCount$;\n\n this.headerComponentService.update$.pipe(\n tap(() => this.headerRows$.next(this.headerComponentService.countComponent))\n ).subscribe();\n\n this.innerHeight$ = combineLatest([\n this.headerRows$,\n this.footerRows$\n ]).pipe(\n map(([ headerRows, footerRows ]) => `calc(100% - ${64 * (headerRows + footerRows)}px)`)\n );\n\n this.marginTop$ = this.headerRows$.pipe(\n map(headerRows => `${headerRows * 64}px`)\n );\n\n this.marginBottom$ = this.footerRows$.pipe(\n map(footerRows => `${footerRows * 64}px`)\n );\n\n }\n\n}\n","import {\n Component,\n OnInit,\n ChangeDetectionStrategy,\n Input\n} from '@angular/core';\nimport { Required } from '@rxap/utilities';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { SidenavContentComponentService } from './sidenav-content.component.service';\n\n@Component({\n selector: 'rxap-sidenav-content',\n templateUrl: './sidenav-content.component.html',\n styleUrls: [ './sidenav-content.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SidenavContentComponent implements OnInit {\n\n @Input() @Required public sidenav!: MatSidenav;\n\n constructor(public readonly sccs: SidenavContentComponentService) { }\n\n ngOnInit() {\n }\n\n}\n","<div [ngClass]=\"{ 'open': (sidenav.openedChange | async) }\" [ngStyle]=\"{\n height: sccs.innerHeight$ | async,\n marginTop: sccs.marginTop$ | async,\n marginBottom: sccs.marginBottom$ | async\n}\" class=\"container\">\n <!-- <dx-breadcrumb></dx-breadcrumb>-->\n <div class=\"inner\">\n <router-outlet></router-outlet>\n <ng-content></ng-content>\n </div>\n</div>\n","<div fxLayout=\"column\" fxLayoutGap=\"16px\" class=\"container\">\n\n <div fxFlex=\"nogrow\" *ngFor=\"let portalId of portals.keys(); trackBy: trackBy\">\n <ng-template [cdkPortalOutlet]=\"portals.get(portalId)\"></ng-template>\n </div>\n\n</div>\n","import {\n Component,\n OnInit,\n ChangeDetectionStrategy,\n Inject,\n OnDestroy\n} from '@angular/core';\nimport {\n WindowContainerSidenavService,\n ContainerComponent\n} from '@rxap/services';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { tap } from 'rxjs/operators';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'rxap-window-container-sidenav',\n templateUrl: './window-container-sidenav.component.html',\n styleUrls: [ './window-container-sidenav.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class WindowContainerSidenavComponent implements OnInit, OnDestroy {\n\n public portals = new Map<string, ComponentPortal<any>>();\n\n private subscription = new Subscription();\n\n constructor(\n @Inject(WindowContainerSidenavService)\n public readonly service: WindowContainerSidenavService\n ) { }\n\n public ngOnInit(): void {\n const components = this.service.getAll();\n for (const component of components) {\n this.add(component);\n }\n this.subscription.add(this.service.add$.pipe(\n tap(component => this.add(component))\n ).subscribe());\n this.subscription.add(this.service.remove$.pipe(\n tap(component => this.remove(component))\n ).subscribe());\n }\n\n public ngOnDestroy() {\n this.subscription.unsubscribe();\n }\n\n public trackBy(index: number, id: string) {\n return id;\n }\n\n private add(component: ContainerComponent) {\n if (this.portals.has(component.id)) {\n throw new Error(`Component portal with id ${component.id} already exists`);\n }\n const portal = new ComponentPortal(component.component, component.viewContainerRef, component.injector, component.componentFactoryResolver);\n this.portals.set(component.id, portal);\n }\n\n private remove(component: ContainerComponent) {\n if (this.portals.has(component.id)) {\n const portal = this.portals.get(component.id)!;\n this.portals.delete(component.id);\n portal.detach();\n }\n }\n\n}\n","<div class=\"toggle-button\">\n <button (click)=\"toggle()\" mat-icon-button>\n <ng-template [ngIfElse]=\"hide\" [ngIf]=\"!openWindowSidenav\">\n <mat-icon>keyboard_arrow_left</mat-icon>\n </ng-template>\n <ng-template #hide>\n <mat-icon>keyboard_arrow_right</mat-icon>\n </ng-template>\n </button>\n</div>\n","import {\n Component,\n OnInit,\n ChangeDetectionStrategy,\n Input,\n Output,\n EventEmitter\n} from '@angular/core';\n\n@Component({\n selector: 'rxap-toggle-window-sidenav-button',\n templateUrl: './toggle-window-sidenav-button.component.html',\n styleUrls: [ './toggle-window-sidenav-button.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'rxap-toggle-window-sidenav-button'\n }\n})\nexport class ToggleWindowSidenavButtonComponent implements OnInit {\n\n @Input()\n public openWindowSidenav = false;\n\n @Output()\n public openWindowSidenavChange = new EventEmitter<boolean>();\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n public toggle() {\n this.openWindowSidenav = !this.openWindowSidenav;\n this.openWindowSidenavChange.emit(this.openWindowSidenav);\n }\n\n}\n","<rxap-header [sidenav]=\"sidenav\" class=\"header\"></rxap-header>\n<mat-sidenav-container autosize class=\"container\">\n <mat-sidenav\n [fixedBottomGap]=\"layoutComponentService.fixedBottomGap$ | async\"\n [fixedInViewport]=\"true\"\n [fixedTopGap]=\"layoutComponentService.fixedTopGap$ | async\"\n [mode]=\"(layoutComponentService.mode$ | async) ?? 'side'\"\n [opened]=\"(layoutComponentService.opened$ | async) ?? true\"\n class=\"sidenav\"\n >\n <rxap-sidenav>\n <ng-template rxapSidenavHeader>\n <img\n [routerLink]=\"['/']\"\n alt=\"logo\"\n class=\"logo\"\n [width]=\"layoutComponentService.logo.width\"\n [src]=\"layoutComponentService.logo.src\"\n />\n </ng-template>\n </rxap-sidenav>\n </mat-sidenav>\n <mat-sidenav-content class=\"content\">\n <rxap-sidenav-content [sidenav]=\"sidenav\">\n <ng-content></ng-content>\n <rxap-toggle-window-sidenav-button [(openWindowSidenav)]=\"openWindowSidenav\"></rxap-toggle-window-sidenav-button>\n </rxap-sidenav-content>\n </mat-sidenav-content>\n <mat-sidenav\n [fixedBottomGap]=\"layoutComponentService.fixedBottomGap$ | async\"\n [fixedInViewport]=\"true\"\n [fixedTopGap]=\"layoutComponentService.fixedTopGap$ | async\"\n [opened]=\"openWindowSidenav\"\n mode=\"side\"\n class=\"window-container-sidenav\"\n position=\"end\"\n >\n <rxap-window-container-sidenav></rxap-window-container-sidenav>\n </mat-sidenav>\n</mat-sidenav-container>\n<rxap-footer class=\"footer\"></rxap-footer>\n","import {\n Component,\n ChangeDetectionStrategy,\n ViewChild\n} from '@angular/core';\nimport { LayoutComponentService } from './layout.component.service';\nimport { MatSidenav } from '@angular/material/sidenav';\n\n@Component({\n selector: 'rxap-layout',\n templateUrl: './layout.component.html',\n styleUrls: [ './layout.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LayoutComponent {\n\n public openWindowSidenav = false;\n\n @ViewChild(MatSidenav, { static: true }) public sidenav!: MatSidenav;\n\n constructor(\n public readonly layoutComponentService: LayoutComponentService,\n ) { }\n\n}\n","import { Injectable } from '@angular/core';\nimport {\n Observable,\n of\n} from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class ReplaceRouterPathsService {\n\n public transform(routerLink: string[]): Observable<string[]> {\n return of(routerLink);\n }\n\n}\n","import {\n NgModule,\n Pipe,\n PipeTransform\n} from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { ReplaceRouterPathsService } from './replace-router-paths.service';\n\n@Pipe({\n name: 'replaceRouterPaths'\n})\nexport class ReplaceRouterPathsPipe implements PipeTransform {\n constructor(\n public rrp: ReplaceRouterPathsService\n ) {}\n\n transform(routerLink: string[]): Observable<string[]> {\n return this.rrp.transform(routerLink);\n }\n}\n\n@NgModule({\n declarations: [ ReplaceRouterPathsPipe ],\n exports: [ ReplaceRouterPathsPipe ]\n})\nexport class ReplaceRouterPathsPipeModule {}\n","import { NgModule } from '@angular/core';\nimport { NavigationComponent } from './navigation.component';\nimport { NavigationItemComponent } from './navigation-item/navigation-item.component';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { RouterModule } from '@angular/router';\nimport { CommonModule } from '@angular/common';\nimport { ReplaceRouterPathsPipeModule } from './replace-router-paths.pipe';\nimport { IconDirectiveModule } from '@rxap/material-directives/icon';\nimport { ButtonComponentModule } from '@rxap/components';\nimport { MatRippleModule } from '@angular/material/core';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { StopPropagationDirectiveModule } from '@rxap/directives';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\n\n@NgModule({\n declarations: [ NavigationComponent, NavigationItemComponent ],\n imports: [\n MatIconModule,\n MatButtonModule,\n FlexLayoutModule,\n RouterModule,\n CommonModule,\n IconDirectiveModule,\n ButtonComponentModule,\n MatRippleModule,\n MatDividerModule,\n StopPropagationDirectiveModule,\n MatTooltipModule,\n ReplaceRouterPathsPipeModule\n ],\n exports: [ NavigationComponent ]\n})\nexport class NavigationComponentModule {}\n","import { NgModule } from '@angular/core';\nimport { SidenavComponent } from './sidenav.component';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { NavigationComponentModule } from '../navigation/navigation.component.module';\nimport { CommonModule } from '@angular/common';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { SidenavHeaderDirective } from './sidenav-header.directive';\nimport { SidenavFooterDirective } from './sidenav-footer.directive';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\n\n\n@NgModule({\n declarations: [ SidenavComponent, SidenavHeaderDirective, SidenavFooterDirective ],\n imports: [\n FlexLayoutModule,\n NavigationComponentModule,\n CommonModule,\n MatDividerModule,\n MatIconModule,\n MatButtonModule\n ],\n exports: [ SidenavComponent, SidenavHeaderDirective, SidenavFooterDirective ],\n})\nexport class SidenavModule {}\n","import { NgModule } from '@angular/core';\nimport { SidenavContentComponent } from './sidenav-content.component';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\n\n\n@NgModule({\n declarations: [ SidenavContentComponent ],\n imports: [\n CommonModule,\n RouterModule\n ],\n exports: [ SidenavContentComponent ]\n})\nexport class SidenavContentModule {}\n","import { NgModule } from '@angular/core';\nimport { WindowContainerSidenavComponent } from './window-container-sidenav.component';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { CommonModule } from '@angular/common';\nimport { PortalModule } from '@angular/cdk/portal';\n\n\n@NgModule({\n declarations: [ WindowContainerSidenavComponent ],\n imports: [\n FlexLayoutModule,\n CommonModule,\n PortalModule,\n ],\n exports: [ WindowContainerSidenavComponent ],\n})\nexport class WindowContainerSidenavModule {}\n","import { NgModule } from '@angular/core';\nimport { ToggleWindowSidenavButtonComponent } from './toggle-window-sidenav-button.component';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { CommonModule } from '@angular/common';\n\n\n@NgModule({\n declarations: [ ToggleWindowSidenavButtonComponent ],\n imports: [\n MatButtonModule,\n MatIconModule,\n CommonModule,\n ],\n exports: [ ToggleWindowSidenavButtonComponent ],\n})\nexport class ToggleWindowSidenavButtonModule {}\n","import {\n NgModule,\n ModuleWithProviders\n} from '@angular/core';\nimport { LayoutComponent } from './layout.component';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { FooterModule } from '../footer/footer.component.module';\nimport { HeaderModule } from '../header/header.component.module';\nimport { CommonModule } from '@angular/common';\nimport { SidenavModule } from '../sidenav/sidenav.component.module';\nimport { SidenavContentModule } from '../sidenav-content/sidenav-content.component.module';\nimport { NavigationWithInserts } from '../navigation/navigation-item';\nimport { RXAP_NAVIGATION_CONFIG } from '../tokens';\nimport { WindowContainerSidenavModule } from '../window-container-sidenav/window-container-sidenav.component.module';\nimport { ToggleWindowSidenavButtonModule } from '../toggle-window-sidenav-button/toggle-window-sidenav-button.component.module';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { RouterModule } from '@angular/router';\n\n@NgModule({\n declarations: [ LayoutComponent ],\n imports: [\n MatSidenavModule,\n FooterModule,\n HeaderModule,\n CommonModule,\n SidenavModule,\n SidenavContentModule,\n WindowContainerSidenavModule,\n ToggleWindowSidenavButtonModule,\n FlexLayoutModule,\n RouterModule\n ],\n exports: [ LayoutComponent ]\n})\nexport class LayoutModule {\n\n public static withNavigation(navigation: NavigationWithInserts | (() => NavigationWithInserts)): ModuleWithProviders<LayoutModule> {\n\n return {\n ngModule: LayoutModule,\n providers: [\n {\n provide: RXAP_NAVIGATION_CONFIG,\n useValue: navigation\n }\n ]\n };\n }\n\n}\n","<div class=\"version\" fxFlex=\"nogrow\" fxLayout=\"column\" fxLayoutAlign=\"start start\" fxLayoutGap=\"8px\">\n <div *ngFor=\"let module of modules | keyvalue\" fxFlex=\"nogrow\" fxLayout=\"column\">\n <span class=\"name\" fxFlex=\"nogrow\">{{module.value.name}}</span>\n <span class=\"semantic\" fxFlex=\"nogrow\">{{module.value.semantic}}</span>\n <span class=\"hash\" fxFlex=\"nogrow\">{{module.value.hash}}</span>\n </div>\n</div>\n","import {\n Component,\n OnInit,\n ChangeDetectionStrategy,\n OnDestroy,\n Inject\n} from '@angular/core';\nimport {\n VersionService,\n Version\n} from '@rxap/services';\nimport {\n KeyValue,\n Required\n} from '@rxap/utilities';\nimport { tap } from 'rxjs/operators';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'rxap-version',\n templateUrl: './version.component.html',\n styleUrls: [ './version.component.scss' ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class VersionComponent implements OnInit, OnDestroy {\n\n @Required\n public modules!: KeyValue<Version>;\n\n private subscription?: Subscription;\n\n constructor(\n @Inject(VersionService) private version: VersionService\n ) { }\n\n public ngOnInit(): void {\n this.modules = this.version.get();\n this.subscription = this.version.update$.pipe(\n tap(() => this.modules = this.version.get())\n ).subscribe();\n }\n\n public ngOnDestroy() {\n this.subscription?.unsubscribe();\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { VersionComponent } from './version.component';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [ VersionComponent ],\n imports: [\n FlexLayoutModule,\n CommonModule\n ],\n exports: [ VersionComponent ]\n})\nexport class VersionComponentModule {}\n","import {\n Directive,\n OnInit,\n OnDestroy,\n TemplateRef,\n ViewContainerRef,\n NgModule,\n Inject,\n} from '@angular/core';\nimport { FooterService } from '@rxap/services';\nimport { TemplatePortal } from '@angular/cdk/portal';\n\n@Directive({\n selector: '[rxapFooter]',\n})\nexport class FooterDirective implements OnInit, OnDestroy {\n private _portal?: TemplatePortal<void>;\n\n constructor(\n @Inject(FooterService)\n private readonly footerService: FooterService,\n @Inject(TemplateRef)\n private readonly template: TemplateRef<void>,\n @Inject(ViewContainerRef)\n private readonly viewContainerRef: ViewContainerRef\n ) {}\n\n public ngOnInit() {\n this._portal = new TemplatePortal<void>(\n this.template,\n this.viewContainerRef\n );\n this.footerService.pushPortal(this._portal);\n }\n\n public ngOnDestroy() {\n if (this._portal) {\n this.footerService.removePortal(this._portal);\n }\n }\n}\n\n@NgModule({\n declarations: [FooterDirective],\n exports: [FooterDirective],\n})\nexport class FooterDirectiveModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["_c0","_c1","i1","i1.SidenavComponentService","_c2","i1.SidenavContentComponentService","i1.LayoutComponentService","i1.ReplaceRouterPathsService","i4"],"mappings":"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"}
|