Continuous Integration / config (pull_request) Successful in 12s
Continuous Integration / changes (pull_request) Successful in 22s
Continuous Integration / backend-build (pull_request) Successful in 5m53s
Continuous Integration / vulnerability-scan (pull_request) Successful in 5m46s
Continuous Integration / frontend-prepare (pull_request) Successful in 1m54s
Continuous Integration / backend-test (pull_request) Successful in 7m37s
Continuous Integration / frontend-build (pull_request) Successful in 2m14s
Continuous Integration / frontend-test (pull_request) Successful in 4m59s
Continuous Integration / frontend-lint (pull_request) Successful in 2m2s
Continuous Integration / publish-production (pull_request) Skipped
Continuous Integration / deploy-production (pull_request) Skipped
Continuous Integration / publish-test (pull_request) Successful in 7m34s
Continuous Integration / deploy-test (pull_request) Skipped
Implements Unit 2 "Offerings" (backend module, admin CRUD UI with drag-and-drop reordering, public GET /api/v1/offerings endpoint) and executes the feature's D-15 CI/CD cutover, switching the deploy pipeline's build/publish target from SlpModularCms.Api to SlpModularCms.Api.SlpSoftware. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FWyStNL2ZsjrS7FLd7xvvN
1.8 KiB
1.8 KiB
Functional Design Plan — Unit: Offerings
Context loaded from inception/application-design/unit-of-work.md (unit scope: FR-4..FR-8, all 12 user stories) and unit-of-work-story-map.md (story assignment confirmation).
Investigated before drafting questions (not assumed):
frontend/src/features/cms/(the existing Master-module admin UI —CmsPage.tsx,CmsInstanceList.tsx,AddCmsInstanceDialog.tsx,services/use*.ts,schemas/*.ts) is the closest existing precedent for an admin list+CRUD screen in this codebase — used as the structural template below.frontend/package.jsonhas no drag-and-drop library (no@dnd-kit/*, noreact-beautiful-dnd, nothing matching "dnd"/"sortable"/"drag"). US-08 (drag-and-drop reorder) would be a genuinely new frontend dependency, not something already available — see Vraag 1.
Uitvoeringschecklist
- Stap A —
business-logic-model.md: procesflow voor create/update (met featured-exclusiviteit) en de twee reorder-interacties, als Mermaid-diagrammen - Stap B —
business-rules.md: gedetailleerde regels als Mermaid-beslisdiagrammen (featured-exclusiviteit, soft-delete-gedrag, reorder-grenzen, validatieregels) - Stap C —
domain-entities.md:Offering-entiteit met velden, types, en relatie tot de DTO's (publiek vs. admin) als Mermaid-diagram - Stap D —
frontend-components.md: componenthiërarchie voor de admin-CRUD-schermen (Mermaidgraph TD), props/state per component, formuliervalidatie, welke backend-endpoints elk component aanroept - Stap E — Consistentiecontrole tegen requirements.md, stories.md en application-design/component-methods.md — geen gaten gevonden; FR-8 (referentiecontent) blijft buiten deze unit's codegeneratie (D-5, handmatige invoer door gebruiker)