refactor(form-schema): inline validators to remove @core transitive dep

Resolves TECH-07. Copies the four validators actually used
(requiredValidator, emailValidator, urlValidator, regexValidator) from
@core/utils/validators into packages/form-schema/src/utils/validators.ts
as pure boolean functions. Vuexy template copies in apps/*/src/@core/
remain for non-form UI use. Package is now genuinely standalone —
grep -rn "@core/" packages/form-schema/ returns zero matches.

Also corrects two documentation inconsistencies from commit 42dd626e:
dev-guide heading translated to Dutch for style consistency, and the
BACKLOG entry renumbered from TECH-DEBT-01 to TECH-07 to match the
flat numbering in the Technische schuld section.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-24 00:20:15 +02:00
parent 42dd626e37
commit 214a2debee
4 changed files with 60 additions and 18 deletions

View File

@@ -489,22 +489,6 @@ apps/portal om drift te voorkomen.
---
### TECH-DEBT-01 — @form-schema transitive dep op @core/utils/validators
**Aanleiding:** `packages/form-schema/src/utils/formValidation.ts`
importeert uit `@core/utils/validators`, dat per-app resolvt naar
`apps/*/src/@core/utils/validators.ts`. Beide app-kopieën zijn op dit
moment identiek (Vuexy template-code), maar drift tussen de twee
zou `@form-schema` per consumer verschillend laten werken.
**Wat:** Kopieer de specifieke validators die `formValidation.ts`
gebruikt naar `packages/form-schema/src/utils/` zodra het package
een tweede echte consumer krijgt (PR-c of later). Ontdekt tijdens
PR-a (commit dda60ed5).
**Prioriteit:** Laag — latent; triggert pas bij consumer-drift of
wanneer het package buiten de huidige Vuexy-twin apps wordt geladen.
---
### ~~TECH-02 — scopeForFestival helper op Event model~~ ✅ OPGELOST
---
@@ -517,6 +501,10 @@ wanneer het package buiten de huidige Vuexy-twin apps wordt geladen.
---
### ~~TECH-07 — @form-schema transitive dep op @core/utils/validators~~ ✅ OPGELOST — resolved in PR-a1
---
## Opgeloste items (april 2026)
De volgende items zijn geïmplementeerd en afgerond (673+ tests):