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
+8 -48
View File
@@ -125,7 +125,6 @@ export interface SourceDescription extends Partial<PartialNull<ModuleOptions>> {
export interface TransformModuleJSON {
ast?: ProgramNode | undefined;
code: string;
safeVariableNames: Record<string, string> | null;
// note if plugins use new this.cache to opt-out auto transform cache
customTransformCache: boolean;
originalCode: string;
@@ -135,7 +134,6 @@ export interface TransformModuleJSON {
}
export interface ModuleJSON extends TransformModuleJSON, ModuleOptions {
safeVariableNames: Record<string, string> | null;
ast: ProgramNode;
dependencies: string[];
id: string;
@@ -200,7 +198,6 @@ export interface ModuleInfo extends ModuleOptions {
dynamicallyImportedIds: readonly string[];
exportedBindings: Record<string, string[]> | null;
exports: string[] | null;
safeVariableNames: Record<string, string> | null;
hasDefaultExport: boolean | null;
id: string;
implicitlyLoadedAfterOneOf: readonly string[];
@@ -261,7 +258,6 @@ export interface PluginContext extends MinimalPluginContext {
source: string,
importer?: string,
options?: {
importerAttributes?: Record<string, string>;
attributes?: Record<string, string>;
custom?: CustomPluginOptions;
isEntry?: boolean;
@@ -313,19 +309,13 @@ export type ResolveIdHook = (
this: PluginContext,
source: string,
importer: string | undefined,
options: {
attributes: Record<string, string>;
custom?: CustomPluginOptions;
importerAttributes?: Record<string, string> | undefined;
isEntry: boolean;
}
options: { attributes: Record<string, string>; custom?: CustomPluginOptions; isEntry: boolean }
) => ResolveIdResult;
export type ShouldTransformCachedModuleHook = (
this: PluginContext,
options: {
ast: ProgramNode;
attributes: Record<string, string>;
code: string;
id: string;
meta: CustomPluginOptions;
@@ -345,19 +335,7 @@ export type HasModuleSideEffects = (id: string, external: boolean) => boolean;
export type LoadResult = SourceDescription | string | NullValue;
export type LoadHook = (
this: PluginContext,
id: string,
// temporarily marked as optional for better Vite type-compatibility
options?:
| {
// unused, temporarily added for better Vite type-compatibility
ssr?: boolean | undefined;
// temporarily marked as optional for better Vite type-compatibility
attributes?: Record<string, string>;
}
| undefined
) => LoadResult;
export type LoadHook = (this: PluginContext, id: string) => LoadResult;
export interface TransformPluginContext extends PluginContext {
debug: LoggingFunctionWithPosition;
@@ -372,16 +350,7 @@ export type TransformResult = string | NullValue | Partial<SourceDescription>;
export type TransformHook = (
this: TransformPluginContext,
code: string,
id: string,
// temporarily marked as optional for better Vite type-compatibility
options?:
| {
// unused, temporarily added for better Vite type-compatibility
ssr?: boolean | undefined;
// temporarily marked as optional for better Vite type-compatibility
attributes?: Record<string, string>;
}
| undefined
id: string
) => TransformResult;
export type ModuleParsedHook = (this: PluginContext, info: ModuleInfo) => void;
@@ -398,24 +367,18 @@ export type ResolveDynamicImportHook = (
this: PluginContext,
specifier: string | AstNode,
importer: string,
options: { attributes: Record<string, string>; importerAttributes: Record<string, string> }
options: { attributes: Record<string, string> }
) => ResolveIdResult;
export type ResolveImportMetaHook = (
this: PluginContext,
property: string | null,
options: {
attributes: Record<string, string>;
chunkId: string;
format: InternalModuleFormat;
moduleId: string;
}
options: { chunkId: string; format: InternalModuleFormat; moduleId: string }
) => string | NullValue;
export type ResolveFileUrlHook = (
this: PluginContext,
options: {
attributes: Record<string, string>;
chunkId: string;
fileName: string;
format: InternalModuleFormat;
@@ -497,7 +460,6 @@ export interface FunctionPluginHooks {
chunk: PreRenderedChunkWithFileName;
targetChunk: PreRenderedChunkWithFileName | null;
getTargetChunkImports: () => DynamicImportTargetChunk[] | null;
targetModuleAttributes: Record<string, string>;
}
) => { left: string; right: string } | NullValue;
renderError: (this: PluginContext, error?: Error) => void;
@@ -597,8 +559,7 @@ export type PluginHooks = {
};
export interface OutputPlugin
extends
Partial<{ [K in OutputPluginHooks]: PluginHooks[K] }>,
extends Partial<{ [K in OutputPluginHooks]: PluginHooks[K] }>,
Partial<Record<AddonHooks, ObjectHook<AddonHook>>> {
cacheKey?: string | undefined;
name: string;
@@ -654,9 +615,8 @@ export interface NormalizedTreeshakingOptions {
unknownGlobalSideEffects: boolean;
}
export interface TreeshakingOptions extends Partial<
Omit<NormalizedTreeshakingOptions, 'moduleSideEffects'>
> {
export interface TreeshakingOptions
extends Partial<Omit<NormalizedTreeshakingOptions, 'moduleSideEffects'>> {
moduleSideEffects?: ModuleSideEffectsOption | undefined;
preset?: TreeshakingPreset | undefined;
}