feat(front) : mapping des erreurs de validation 422 par champ (ERP-101) #58

Merged
tristan merged 5 commits from feat/ERP-101-form-field-validation-mapping into develop 2026-06-04 08:41:19 +00:00

5 Commits

Author SHA1 Message Date
tristan 97fe0b39de refactor(front) : suites review ERP-101 — i18n libelles toast + factorisation useClientFormErrors
Pull Request — Quality gate / Backend (PHP CS + PHPUnit) (pull_request) Successful in 1m49s
Pull Request — Quality gate / Frontend (lint + Vitest + build) (pull_request) Successful in 1m9s
- libelles de toast generiques passes en i18n (errors.title/generic/unknown,
  success.title) dans useFormErrors, useApi et useCategoryForm
- nouveau composable useClientFormErrors : factorise l'etat d'erreurs
  (3 useFormErrors scalaires + 3 tableaux par ligne + mapRowError) partage
  entre clients/new.vue et [id]/edit.vue
- mapRowError retourne un booleen et ne toaste plus : chaque page garde son
  fallback (toast generique en creation, showError en edition)
2026-06-04 10:36:17 +02:00
tristan ec0855d870 fix : package-lock.json
Pull Request — Quality gate / Backend (PHP CS + PHPUnit) (pull_request) Successful in 1m45s
Pull Request — Quality gate / Frontend (lint + Vitest + build) (pull_request) Successful in 1m21s
2026-06-04 09:46:18 +02:00
tristan 03a31a68b4 feat(front) : required sur les champs obligatoires adresse et comptabilite
Pull Request — Quality gate / Backend (PHP CS + PHPUnit) (pull_request) Successful in 1m47s
Pull Request — Quality gate / Frontend (lint + Vitest + build) (pull_request) Failing after 10s
- bloc adresse : pays, code postal, ville, adresse passes en required
- comptabilite : siren, n° compte, mode TVA, n° TVA, delai et type de
  reglement passes en required (banque deja required si virement, RIB si LCR)
2026-06-04 09:40:33 +02:00
tristan 80f189033b feat(front) : malio-ui 1.7.4, required/readonly et carrousel onglets sur les ecrans client
Pull Request — Quality gate / Backend (PHP CS + PHPUnit) (pull_request) Successful in 1m44s
Pull Request — Quality gate / Frontend (lint + Vitest + build) (pull_request) Failing after 11s
- bump @malio/layer-ui ^1.7.3 -> ^1.7.4
- required sur les champs obligatoires (categories, distributeur/courtier,
  banque si virement, RIB si LCR) desormais supportes par les Malio*
- consultation/edition : champs passes en readonly (au lieu de disabled)
  pour les etats sans droit de modification / lecture seule
- MalioTabList : carrousel (max 5 onglets visibles, max-width 1100px) en
  consultation et edition
2026-06-04 09:15:54 +02:00
tristan 502d1a216b feat(front) : mapping des erreurs de validation 422 par champ (ERP-101)
Pull Request — Quality gate / Backend (PHP CS + PHPUnit) (pull_request) Successful in 1m40s
Pull Request — Quality gate / Frontend (lint + Vitest + build) (pull_request) Successful in 1m10s
- composable useFormErrors + util mapViolationsToRecord (shared)
- formulaire Client (new + edit) : erreurs inline par champ (scalaires)
  et par ligne pour les collections (contacts / adresses / RIB)
- blocs ClientContactBlock / ClientAddressBlock : prop errors
- migration de useCategoryForm sur useFormErrors
- convention documentee dans .claude/rules/frontend.md
2026-06-04 08:24:39 +02:00