autowp/autowp-frontend

View on GitHub
src/app/gallery/gallery-page.component.ts

Summary

Maintainability
A
0 mins
Test Coverage
import {AsyncPipe} from '@angular/common';
import {ChangeDetectionStrategy, Component, inject, OnInit} from '@angular/core';
import {ActivatedRoute} from '@angular/router';
import {Picture} from '@grpc/spec.pb';
import {PageEnvService} from '@services/page-env.service';
import {distinctUntilChanged, map} from 'rxjs/operators';
 
import {GalleryComponent} from './gallery.component';
 
@Component({
changeDetection: ChangeDetectionStrategy.OnPush,
imports: [GalleryComponent, AsyncPipe],
selector: 'app-gallery-page',
templateUrl: './gallery-page.component.html',
})
export class GalleryPageComponent implements OnInit {
readonly #route = inject(ActivatedRoute);
readonly #pageEnv = inject(PageEnvService);
 
protected readonly identity$ = this.#route.paramMap.pipe(
map((route) => route.get('identity')),
distinctUntilChanged(),
);
 
ngOnInit(): void {
setTimeout(() => {
this.#pageEnv.set({
layout: {isGalleryPage: true},
pageId: 187,
title: '', // data.picture.name_text,
});
}, 0);
}
 
protected pictureSelected(item: null | Picture) {
if (item) {
this.#pageEnv.set({
layout: {isGalleryPage: true},
pageId: 187,
title: item.nameText,
});
}
}
}