diff --git a/docs/scrum4me-pbi-dialog.md b/docs/scrum4me-pbi-dialog.md new file mode 100644 index 0000000..79fb5ae --- /dev/null +++ b/docs/scrum4me-pbi-dialog.md @@ -0,0 +1,120 @@ +# PbiDialog Profiel + +> Volgt **`docs/patterns/dialog.md`** (de generieke spec voor élke entity-dialog in Scrum4Me). +> Dit document beschrijft alleen de PBI-specifieke afwijkingen en keuzes — alle gedeelde regels (layout, motion, demo-policy, foutcodes, validatie, theming, dialog-gedrag) staan in de generieke spec en worden hier niet herhaald. + +> **Belangrijk:** als een regel in dit profiel botst met de generieke spec, wint de generieke spec. Documenteer hier de afwijking + reden, of pas de generieke spec aan. + +--- + +## Velden + +| Veld | Type | Mode | Validatie | +|---|---|---|---| +| `code` | `string \| null` | beide | optional, max 30 chars, mono-font, placeholder `auto` op create (server kent dan zelf een code toe) | +| `title` | `string` (required) | beide | trim, 1-200 chars | +| `priority` | `int` (1-4, P1 = hoogste) | beide | int 1-4, default 2 (kan via `defaultPriority`-prop bij create) | +| `status` | `PbiStatusApi` enum | beide | enum, default `'ready'` | +| `description` | `string \| null` | beide | optional, max 2000 chars, plain textarea (geen markdown rendering binnen de dialog) | + +`PbiStatusApi` enum (lowercase, mapped via `lib/task-status.ts`): zie `` voor de waarden. + +### Veld-specifiek gedrag + +- **Code + Titel** in één rij (`grid-cols-[6rem_1fr]`) +- **Prioriteit + Status** in één rij (`grid-cols-2`) +- **Prioriteit** via `` (gedeelde primitive, géén segmented buttons in deze dialog) +- **Status** via `` (PBI-specifieke wrapper rond gedeelde select) +- **Description** is `