import { Component, OnInit } from '@angular/core'; import { DynamicDialogConfig, DynamicDialogRef } from 'primeng'; import { Subscription } from 'rxjs'; import { User } from '../../../core/models/user.model'; import { UserService } from '../../../core/services/user.service'; @Component({ selector: 'app-settings', templateUrl: './settings.component.html', styleUrls: ['./settings.component.scss'], }) export class SettingsComponent implements OnInit { public user: User; private userSubscription: Subscription; constructor(public ref: DynamicDialogRef, public config: DynamicDialogConfig, private userService: UserService) {} ngOnInit(): void { this.userSubscription = this.userService.user.subscribe((user: User) => { this.user = user; }); } ngOnDestroy(): void { if (this.userSubscription) { this.userSubscription.unsubscribe(); } } public saveChanges(): void { if (this.user?.pseudo?.length > 0) { this.userService.updateUser(this.user); } this.closeDialog(); } public closeDialog(): void { this.ref.close(); } }