Migration Angular 20 -> 21 : fin de la migration securite (0 vulnerabilite npm)

- ng update @angular/core@21 @angular/cli@21 (corrige GHSA-jrmj-c5cx-3cw6, XSS SVG)
- Migration automatique des templates vers le control flow natif (@if/@for, 138 fichiers)
- Correction des 5 `track` invalides generes par la migration (trackBy a 1 argument
  -> track $index) + suppression des fonctions trackBy mortes
- TypeScript 5.9, zone.js 0.15 ; npm audit : 0 vulnerabilite

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-10 14:55:36 +02:00
parent 6acad41672
commit 23878f1c63
142 changed files with 7055 additions and 6292 deletions

View File

@@ -1,21 +1,27 @@
<div class="flags-manager">
<p class="flags-empty" *ngIf="!loading && rows.length === 0">
Aucun fait référencé. Ajoutez une condition « Quand un fait est vrai » sur
au moins une quête pour qu'il apparaisse ici.
</p>
@if (!loading && rows.length === 0) {
<p class="flags-empty">
Aucun fait référencé. Ajoutez une condition « Quand un fait est vrai » sur
au moins une quête pour qu'il apparaisse ici.
</p>
}
<ul class="flag-list" *ngIf="rows.length > 0">
<li class="flag-row" *ngFor="let r of rows" [class.flag-on]="r.value">
<label class="flag-toggle">
<input type="checkbox" [checked]="r.value" (change)="toggle(r)" />
<span class="flag-toggle-slider"></span>
</label>
<div class="flag-info">
<span class="flag-name">{{ r.name }}</span>
</div>
<span class="flag-value">{{ r.value ? 'vrai' : 'faux' }}</span>
</li>
</ul>
@if (rows.length > 0) {
<ul class="flag-list">
@for (r of rows; track r) {
<li class="flag-row" [class.flag-on]="r.value">
<label class="flag-toggle">
<input type="checkbox" [checked]="r.value" (change)="toggle(r)" />
<span class="flag-toggle-slider"></span>
</label>
<div class="flag-info">
<span class="flag-name">{{ r.name }}</span>
</div>
<span class="flag-value">{{ r.value ? 'vrai' : 'faux' }}</span>
</li>
}
</ul>
}
</div>