From 7397332293bc4b4cdc5b73d3981addd7aab5e4fd Mon Sep 17 00:00:00 2001 From: Florian THIERRY Date: Tue, 30 Dec 2025 17:23:54 +0100 Subject: [PATCH] Upgrade angular material from 19 to 20. --- frontend/package-lock.json | 70 ++++++------------- frontend/package.json | 4 +- .../publication-edition.component.ts | 3 +- .../publication-update.component.ts | 9 +-- 4 files changed, 28 insertions(+), 58 deletions(-) diff --git a/frontend/package-lock.json b/frontend/package-lock.json index abd65d3..fb4eb02 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -9,12 +9,12 @@ "version": "0.0.0", "dependencies": { "@angular/animations": "^20.3.15", - "@angular/cdk": "^19.2.19", + "@angular/cdk": "^20.2.14", "@angular/common": "^20.3.15", "@angular/compiler": "^20.3.15", "@angular/core": "^20.3.15", "@angular/forms": "^20.3.15", - "@angular/material": "^19.2.19", + "@angular/material": "^20.2.14", "@angular/platform-browser": "^20.3.15", "@angular/platform-browser-dynamic": "^20.3.15", "@angular/router": "^20.3.15", @@ -620,17 +620,17 @@ } }, "node_modules/@angular/cdk": { - "version": "19.2.19", - "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-19.2.19.tgz", - "integrity": "sha512-PCpJagurPBqciqcq4Z8+3OtKLb7rSl4w/qBJoIMua8CgnrjvA1i+SWawhdtfI1zlY8FSwhzLwXV0CmWWfFzQPg==", + "version": "20.2.14", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-20.2.14.tgz", + "integrity": "sha512-7bZxc01URbiPiIBWThQ69XwOxVduqEKN4PhpbF2AAyfMc/W8Hcr4VoIJOwL0O1Nkq5beS8pCAqoOeIgFyXd/kg==", "license": "MIT", "dependencies": { - "parse5": "^7.1.2", + "parse5": "^8.0.0", "tslib": "^2.3.0" }, "peerDependencies": { - "@angular/common": "^19.0.0 || ^20.0.0", - "@angular/core": "^19.0.0 || ^20.0.0", + "@angular/common": "^20.0.0 || ^21.0.0", + "@angular/core": "^20.0.0 || ^21.0.0", "rxjs": "^6.5.3 || ^7.4.0" } }, @@ -932,19 +932,19 @@ } }, "node_modules/@angular/material": { - "version": "19.2.19", - "resolved": "https://registry.npmjs.org/@angular/material/-/material-19.2.19.tgz", - "integrity": "sha512-auIE6JUzTIA3LyYklh9J/T7u64crmphxUBgAa0zcOMDog6SYfwbNe9YeLQqua5ek4OUAOdK/BHHfVl5W5iaUoQ==", + "version": "20.2.14", + "resolved": "https://registry.npmjs.org/@angular/material/-/material-20.2.14.tgz", + "integrity": "sha512-IbAgV6XLsvmHiJzxycVhcNC1PA4M30qi+ERCOir6cT333Bxm8vDV32gsOjfL52uzG5YRARroPC+8s1XqR2oxeA==", "license": "MIT", "dependencies": { "tslib": "^2.3.0" }, "peerDependencies": { - "@angular/cdk": "19.2.19", - "@angular/common": "^19.0.0 || ^20.0.0", - "@angular/core": "^19.0.0 || ^20.0.0", - "@angular/forms": "^19.0.0 || ^20.0.0", - "@angular/platform-browser": "^19.0.0 || ^20.0.0", + "@angular/cdk": "20.2.14", + "@angular/common": "^20.0.0 || ^21.0.0", + "@angular/core": "^20.0.0 || ^21.0.0", + "@angular/forms": "^20.0.0 || ^21.0.0", + "@angular/platform-browser": "^20.0.0 || ^21.0.0", "rxjs": "^6.5.3 || ^7.4.0" } }, @@ -5513,6 +5513,7 @@ "version": "4.5.0", "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, "license": "BSD-2-Clause", "engines": { "node": ">=0.12" @@ -8669,12 +8670,12 @@ } }, "node_modules/parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-8.0.0.tgz", + "integrity": "sha512-9m4m5GSgXjL4AjumKzq1Fgfp3Z8rsvjRNbnkVwfu2ImRqE5D0LnY2QfDen18FSY9C573YU5XxSapdHZTZ2WolA==", "license": "MIT", "dependencies": { - "entities": "^4.4.0" + "entities": "^6.0.0" }, "funding": { "url": "https://github.com/inikulin/parse5?sponsor=1" @@ -8708,19 +8709,6 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/parse5-html-rewriting-stream/node_modules/parse5": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-8.0.0.tgz", - "integrity": "sha512-9m4m5GSgXjL4AjumKzq1Fgfp3Z8rsvjRNbnkVwfu2ImRqE5D0LnY2QfDen18FSY9C573YU5XxSapdHZTZ2WolA==", - "dev": true, - "license": "MIT", - "dependencies": { - "entities": "^6.0.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, "node_modules/parse5-sax-parser": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-8.0.0.tgz", @@ -8734,11 +8722,10 @@ "url": "https://github.com/inikulin/parse5?sponsor=1" } }, - "node_modules/parse5-sax-parser/node_modules/entities": { + "node_modules/parse5/node_modules/entities": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", - "dev": true, "license": "BSD-2-Clause", "engines": { "node": ">=0.12" @@ -8747,19 +8734,6 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/parse5-sax-parser/node_modules/parse5": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-8.0.0.tgz", - "integrity": "sha512-9m4m5GSgXjL4AjumKzq1Fgfp3Z8rsvjRNbnkVwfu2ImRqE5D0LnY2QfDen18FSY9C573YU5XxSapdHZTZ2WolA==", - "dev": true, - "license": "MIT", - "dependencies": { - "entities": "^6.0.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", diff --git a/frontend/package.json b/frontend/package.json index a7a9496..78f2d35 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -18,12 +18,12 @@ "private": true, "dependencies": { "@angular/animations": "^20.3.15", - "@angular/cdk": "^19.2.19", + "@angular/cdk": "^20.2.14", "@angular/common": "^20.3.15", "@angular/compiler": "^20.3.15", "@angular/core": "^20.3.15", "@angular/forms": "^20.3.15", - "@angular/material": "^19.2.19", + "@angular/material": "^20.2.14", "@angular/platform-browser": "^20.3.15", "@angular/platform-browser-dynamic": "^20.3.15", "@angular/router": "^20.3.15", diff --git a/frontend/src/app/components/publication-edition/publication-edition.component.ts b/frontend/src/app/components/publication-edition/publication-edition.component.ts index 5885edd..4eacd02 100644 --- a/frontend/src/app/components/publication-edition/publication-edition.component.ts +++ b/frontend/src/app/components/publication-edition/publication-edition.component.ts @@ -31,7 +31,6 @@ import { MatRippleModule } from "@angular/material/core"; MatSelectModule, MatTabsModule, MatTooltipModule, - PictureSelectionDialog, ReactiveFormsModule, SubmitButtonComponent ], @@ -146,4 +145,4 @@ export class PublicationEditionComponent implements OnChanges, OnDestroy { this.publicationEditionService.loadPreview(); } } -} \ No newline at end of file +} diff --git a/frontend/src/app/pages/publication-update/publication-update.component.ts b/frontend/src/app/pages/publication-update/publication-update.component.ts index 6ed4d83..76255a2 100644 --- a/frontend/src/app/pages/publication-update/publication-update.component.ts +++ b/frontend/src/app/pages/publication-update/publication-update.component.ts @@ -11,10 +11,8 @@ import { MatTooltipModule } from '@angular/material/tooltip'; import { ActivatedRoute, Router } from '@angular/router'; import { BehaviorSubject, Observable, Subscription } from 'rxjs'; import { PublicationEditionComponent } from '../../components/publication-edition/publication-edition.component'; -import { SubmitButtonComponent } from '../../components/submit-button/submit-button.component'; import { Publication } from '../../core/rest-services/publications/model/publication'; import { PublicationRestService } from '../../core/rest-services/publications/publication.rest-service'; -import { PictureSelectionDialog } from '../../components/publication-edition/picture-selection-dialog/picture-selection-dialog.component'; @Component({ selector: 'app-publication-update', @@ -26,9 +24,7 @@ import { PictureSelectionDialog } from '../../components/publication-edition/pic MatProgressSpinnerModule, MatTabsModule, MatTooltipModule, - PictureSelectionDialog, ReactiveFormsModule, - SubmitButtonComponent, PublicationEditionComponent ], templateUrl: './publication-update.component.html', @@ -55,7 +51,7 @@ export class PublicationUpdateComponent implements OnInit, OnDestroy { ngOnInit(): void { this.isLoadingSubject.next(true); - this.activatedRoute.paramMap.subscribe(params => { + const activatedRouteSubscription = this.activatedRoute.paramMap.subscribe(params => { const publicationId = params.get('publicationId'); if (publicationId == undefined) { this.snackBar.open($localize`A technical error occurred while loading publication data.`, $localize`Close`, { duration: 5000 }); @@ -73,6 +69,7 @@ export class PublicationUpdateComponent implements OnInit, OnDestroy { .finally(() => this.isLoadingSubject.next(false)); } }); + this.subscriptions.push(activatedRouteSubscription); } ngOnDestroy(): void { @@ -93,4 +90,4 @@ export class PublicationUpdateComponent implements OnInit, OnDestroy { }) .finally(() => this.isSavingSubject.next(false)); } -} \ No newline at end of file +}