shared: source de vérité unique pour les énums d'API

- API_STATUSES inclut 'NO_YAML' (était manquant alors que le type et le
  code l'utilisent)
- ApiType/ApiStatus/ApiConvention dérivés des constantes (typeof X[number])
  -> plus de double maintenance type <-> tableau
- DTO back réutilisent API_CONVENTIONS/API_TYPES dans @IsIn (fin de la
  triple duplication des valeurs)
- front: déclare la dépendance @datacat/shared (workspace:*)
- shared: exports map + métadonnées + README (double build front/back)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
z3n
2026-06-26 11:54:27 +00:00
parent 1a8bd0b7b4
commit 558bf763e7
7 changed files with 57 additions and 9 deletions

View File

@@ -1,3 +1,7 @@
// Source de vérité unique pour les énumérations d'API.
// Les types (`ApiType`, `ApiStatus`, `ApiConvention`) sont dérivés de ces
// constantes dans `../types/api-entry.types.ts`, et la validation back
// (class-validator `@IsIn`) les réutilise — pas de duplication.
export const API_TYPES = ['ASYNCAPI', 'OPENAPI'] as const;
export const API_STATUSES = ['PENDING', 'GENERATED', 'ERROR'] as const;
export const API_STATUSES = ['PENDING', 'GENERATED', 'ERROR', 'NO_YAML'] as const;
export const API_CONVENTIONS = ['CONSULTER', 'ENREGISTRER', 'ETRE_NOTIFIE'] as const;