Fichiers joints aux specs et raffinages (interface) #5

Closed
opened 2026-10-25 08:24:21 +00:00 by Gilles · 0 comments
Owner

Interface des fichiers joints aux versions de specs et aux raffinages (voir thierryade/backend#8).

  • Fonctions API (src/api/specs.ts) : liste, envoi FormData, réutilisation d'un fichier existant, remplacement, suppression, restauration, usages, téléchargement.
  • Composant AttachmentList.vue intégré dans SpecDetailPanel.vue (version courante + chaque raffinage).
  • Badges de statut : hérité / remplacé / nouveau / hérité (renommé) ; supprimés affichés barrés avec « Restaurer » sur un brouillon.
  • « Aussi dans v1, v2 » (exists_in_versions) et lien « Utilisé dans… » (specs et raffinages).
  • Envoi : SHA-256 calculé dans le navigateur (Web Crypto) → si le fichier existe déjà dans le projet, proposer « Réutiliser » ; si le nom existe déjà dans la version, proposer « Remplacer ».
  • Actions masquées sur une version validée ou sans droit d'écriture.
  • Handlers/fixtures MSW + tests Vitest.
Interface des fichiers joints aux versions de specs et aux raffinages (voir thierryade/backend#8). - Fonctions API (`src/api/specs.ts`) : liste, envoi `FormData`, réutilisation d'un fichier existant, remplacement, suppression, restauration, usages, téléchargement. - Composant `AttachmentList.vue` intégré dans `SpecDetailPanel.vue` (version courante + chaque raffinage). - Badges de statut : hérité / remplacé / nouveau / hérité (renommé) ; supprimés affichés barrés avec « Restaurer » sur un brouillon. - « Aussi dans v1, v2 » (`exists_in_versions`) et lien « Utilisé dans… » (specs et raffinages). - Envoi : SHA-256 calculé dans le navigateur (Web Crypto) → si le fichier existe déjà dans le projet, proposer « Réutiliser » ; si le nom existe déjà dans la version, proposer « Remplacer ». - Actions masquées sur une version validée ou sans droit d'écriture. - Handlers/fixtures MSW + tests Vitest.
Sign in to join this conversation.
No description provided.