feat(planning): grille hebdomadaire complète avec API et filtres

- Connexion API via proxy Angular (résolution CORS, base path /api)
- Import CSS ng-zorro global pour les modales et composants
- Filtres Camion/Show câblés sur l'affichage de la grille
- Camions affichés via TrucksService (linkés au show du même créneau)
- Panneau de détails : spectacles + camions du jour sélectionné
- Modale de création de spectacle stylisée avec fond et centrage
- Positionnement précis des events à la minute dans leur créneau
- Auto-scroll vers l'heure courante au chargement
- Ligne "maintenant" sur la colonne du jour actuel
- Régénération des services OpenAPI (nouveaux noms de types)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-27 20:36:03 +02:00
parent 150b97cd2e
commit 654b297e2e
3131 changed files with 149304 additions and 104334 deletions
+2 -2
View File
@@ -1,5 +1,5 @@
import * as i0 from '@angular/core';
import { OnChanges, AfterViewInit, AfterContentInit, OnInit, ElementRef, SimpleChanges } from '@angular/core';
import { OnChanges, AfterViewInit, AfterContentInit, OnInit, ElementRef, Renderer2, SimpleChanges } from '@angular/core';
import { Direction } from '@angular/cdk/bidi';
import { NzConfigKey } from 'ng-zorro-antd/core/config';
import { NzSizeLDSType } from 'ng-zorro-antd/core/types';
@@ -41,12 +41,12 @@ declare class NzButtonComponent implements OnChanges, AfterViewInit, AfterConten
readonly iconDir: i0.Signal<NzIconDirective | undefined>;
readonly loadingIconDir: i0.Signal<NzIconDirective | undefined>;
readonly iconOnly: i0.Signal<boolean>;
insertSpan(nodes: NodeList, renderer: Renderer2): void;
constructor();
ngOnInit(): void;
ngOnChanges({ nzLoading, nzSize }: SimpleChanges): void;
ngAfterViewInit(): void;
ngAfterContentInit(): void;
insertSpan(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<NzButtonComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<NzButtonComponent, "button[nz-button], a[nz-button]", ["nzButton"], { "nzBlock": { "alias": "nzBlock"; "required": false; }; "nzGhost": { "alias": "nzGhost"; "required": false; }; "nzSearch": { "alias": "nzSearch"; "required": false; }; "nzLoading": { "alias": "nzLoading"; "required": false; }; "nzDanger": { "alias": "nzDanger"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "nzType": { "alias": "nzType"; "required": false; }; "nzShape": { "alias": "nzShape"; "required": false; }; "nzSize": { "alias": "nzSize"; "required": false; }; }, {}, ["iconDir", "nzIconDirectiveElement"], ["*"], true, [{ directive: typeof i1.NzSpaceCompactItemDirective; inputs: {}; outputs: {}; }]>;
static ngAcceptInputType_nzBlock: unknown;