import {inject, Injectable} from "@angular/core"; import {PictureRestService} from "../../../core/rest-services/picture/picture.rest-service"; import {MatSnackBar} from "@angular/material/snack-bar"; import {MatDialogRef} from "@angular/material/dialog"; import {PictureSelectionDialog} from "./picture-selection-dialog.component"; @Injectable() export class PictureSelectionDialogService { private pictureRestService = inject(PictureRestService); private snackBar = inject(MatSnackBar); private readonly dialogRef = inject(MatDialogRef); uploadPicture(pictureFile: File): void { this.pictureRestService.uploadPicture(pictureFile) .then(pictureId => { this.dialogRef.close(pictureId); }) .catch(error => { const errorMessage = $localize`An error occured while uploading a picture...`; console.error(errorMessage, error); this.snackBar.open(errorMessage, $localize`Close`, {duration: 5000}); }); } }