mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ACS-8959] Introduce new takeUntilDestroyed
operator where possible (#10388)
This commit is contained in:
committed by
GitHub
parent
3f6b60760f
commit
3078387325
@@ -17,14 +17,20 @@
|
||||
|
||||
import { AppConfigService, SidenavLayoutComponent, SidenavLayoutModule } from '@alfresco/adf-core';
|
||||
import { DynamicExtensionComponent } from '@alfresco/adf-extensions';
|
||||
import { Component, Inject, OnDestroy, OnInit, Optional, ViewChild, ViewEncapsulation } from '@angular/core';
|
||||
import { Component, DestroyRef, inject, Inject, OnInit, Optional, ViewChild, ViewEncapsulation } from '@angular/core';
|
||||
import { NavigationEnd, Router, RouterModule } from '@angular/router';
|
||||
import { Subject, Observable } from 'rxjs';
|
||||
import { filter, takeUntil, map, withLatestFrom } from 'rxjs/operators';
|
||||
import { Observable } from 'rxjs';
|
||||
import { filter, map, withLatestFrom } from 'rxjs/operators';
|
||||
import { BreakpointObserver } from '@angular/cdk/layout';
|
||||
import { Directionality } from '@angular/cdk/bidi';
|
||||
import { SHELL_APP_SERVICE, ShellAppService, SHELL_NAVBAR_MIN_WIDTH, SHELL_NAVBAR_MAX_WIDTH } from '../../services/shell-app.service';
|
||||
import {
|
||||
SHELL_APP_SERVICE,
|
||||
SHELL_NAVBAR_MAX_WIDTH,
|
||||
SHELL_NAVBAR_MIN_WIDTH,
|
||||
ShellAppService
|
||||
} from '../../services/shell-app.service';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
||||
|
||||
@Component({
|
||||
selector: 'app-shell',
|
||||
@@ -35,11 +41,10 @@ import { CommonModule } from '@angular/common';
|
||||
encapsulation: ViewEncapsulation.None,
|
||||
host: { class: 'app-shell' }
|
||||
})
|
||||
export class ShellLayoutComponent implements OnInit, OnDestroy {
|
||||
export class ShellLayoutComponent implements OnInit {
|
||||
@ViewChild('layout', { static: true })
|
||||
layout: SidenavLayoutComponent;
|
||||
|
||||
onDestroy$: Subject<boolean> = new Subject<boolean>();
|
||||
isSmallScreen$: Observable<boolean>;
|
||||
|
||||
expandedSidenav: boolean;
|
||||
@@ -49,6 +54,8 @@ export class ShellLayoutComponent implements OnInit, OnDestroy {
|
||||
sidenavMax: number;
|
||||
direction: Directionality;
|
||||
|
||||
private readonly destroyRef = inject(DestroyRef);
|
||||
|
||||
constructor(
|
||||
private router: Router,
|
||||
private appConfigService: AppConfigService,
|
||||
@@ -77,7 +84,7 @@ export class ShellLayoutComponent implements OnInit, OnDestroy {
|
||||
.pipe(
|
||||
withLatestFrom(this.isSmallScreen$),
|
||||
filter(([event, isSmallScreen]) => isSmallScreen && event instanceof NavigationEnd),
|
||||
takeUntil(this.onDestroy$)
|
||||
takeUntilDestroyed(this.destroyRef)
|
||||
)
|
||||
.subscribe(() => {
|
||||
this.layout.container.sidenav.close();
|
||||
@@ -86,7 +93,7 @@ export class ShellLayoutComponent implements OnInit, OnDestroy {
|
||||
this.router.events
|
||||
.pipe(
|
||||
filter((event) => event instanceof NavigationEnd),
|
||||
takeUntil(this.onDestroy$)
|
||||
takeUntilDestroyed(this.destroyRef)
|
||||
)
|
||||
.subscribe((event: NavigationEnd) => {
|
||||
this.minimizeSidenav = this.shellService.minimizeSidenavConditions.some((el) => event.urlAfterRedirects.includes(el));
|
||||
@@ -95,12 +102,6 @@ export class ShellLayoutComponent implements OnInit, OnDestroy {
|
||||
this.updateState();
|
||||
});
|
||||
}
|
||||
|
||||
ngOnDestroy() {
|
||||
this.onDestroy$.next(true);
|
||||
this.onDestroy$.complete();
|
||||
}
|
||||
|
||||
hideMenu(event: Event) {
|
||||
if (this.layout.container.isMobileScreenSize) {
|
||||
event.preventDefault();
|
||||
|
Reference in New Issue
Block a user