- Nx 22.7 monorepo (pnpm 11.1, TypeScript 5.9, Node 24) - apps/api: NestJS 11 (CJS conforme CODING-RULES.md PGD-DB-004) - apps/web: React 19 + Vite 8 (ESM) - libs/shared/api-interface: Zod contract base - Docker Compose dev: Postgres 18, Valkey 8, MinIO, Mailpit - WDS artifacts: - design-artifacts/A-Product-Brief/ (5 docs canônicos + 16 dialogs) - design-artifacts/B-Trigger-Map/ (hub + 4 personas + feature impact) - Stack canon: STACK.md v2.2 + CODING-RULES.md v2.0 + brand.md - AGENTS.md + README.md como entrada para devs/agentes Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
55 lines
1.1 KiB
Markdown
55 lines
1.1 KiB
Markdown
# Form Validation
|
|
|
|
**Include when:** Page has forms or input fields
|
|
|
|
---
|
|
|
|
## Validation Rules
|
|
|
|
| Field | Rule | Error Code | Error Message |
|
|
|-------|------|------------|---------------|
|
|
| `{field-name}` | {validation-rule} | `{ERR_CODE}` | {message} |
|
|
|
|
---
|
|
|
|
## Error Messages
|
|
|
|
| Error Code | Trigger | EN | SE | Recovery |
|
|
|------------|---------|-----|-----|----------|
|
|
| `ERR_001` | {When occurs} | "{English}" | "{Swedish}" | {How to fix} |
|
|
|
|
---
|
|
|
|
## Form States
|
|
|
|
### Valid State
|
|
- All fields pass validation
|
|
- Submit button enabled
|
|
- No error indicators
|
|
|
|
### Invalid State
|
|
- Error fields highlighted
|
|
- Error messages visible
|
|
- Submit button disabled until fixed
|
|
|
|
### Submitting State
|
|
- Submit button shows loading
|
|
- Fields disabled
|
|
- Cancel option available
|
|
|
|
---
|
|
|
|
## Field Specifications
|
|
|
|
### {Field Name}
|
|
|
|
| Property | Value |
|
|
|----------|-------|
|
|
| **OBJECT ID** | `{form-field-id}` |
|
|
| Type | {text / email / password / select / etc.} |
|
|
| Required | {yes / no} |
|
|
| Placeholder EN | "{Placeholder text}" |
|
|
| Placeholder SE | "{Swedish placeholder}" |
|
|
| Validation | {rules} |
|
|
| Error Message | {message} |
|