feat(06-admin-base): Admin\ base infrastructure — Form Edit System + Support layer (Phase 6)
Phase 6 zamknięta po 2 planach. Pełny fundament dla Phase 7-13 (migracja 17 admin controllers do Admin\ namespace). 06-01 (Forms infrastructure): - Admin\ViewModels\Forms\* — 5 ViewModeli (687 L) - Admin\Validation\FormValidator (196 L) - composer.json: php >=7.4, PSR-4 paths cross-platform safe (Admin\ → autoload/admin/, Frontend\ → autoload/front/) 06-02 (Support layer): - Admin\Support\TableListRequestFactory (99 L) — parser list z $_GET - Admin\Support\Forms\FormRequestHandler (159 L) — POST + CSRF + walidacja + persist - Admin\Support\Forms\FormFieldRenderer (494 L) — renderer HTML pól Decyzje: - Brak BaseController — Phase 7+ kontrolery jako POJOs z DI (jak shopPRO) - PSR-4 filename fix: TableListRequestFactory.php (bez shopPRO 'class.' prefix) - PascalCase namespace (Admin\Support) na lowercase folder admin/ ze względu na Windows fs case-insensitivity vs legacy admin/controls/ Pliki: 8 nowych klas, 1635 L kodu PHP 7.4-kompatybilnego, zero regresji. Smoke test: walidacja e-maila zwraca PL komunikat, factory parsuje ?page=&per_page=&sort=&filter=, Domain/Shared nadal ładują się. PHPUnit: 37/37 OK. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -80,7 +80,30 @@ autoload/Domain/
|
||||
└── User/UserRepository.php ← \Domain\User\UserRepository ✓
|
||||
```
|
||||
|
||||
Następne: `Admin\` namespace (Fazy 6–13), `Frontend\` namespace (Fazy 14–16).
|
||||
### Faza 6 ✓ — Admin\ Base Infrastructure (`autoload/admin/{ViewModels,Validation,Support}/`)
|
||||
|
||||
Skopiowane z shopPRO i przeniesione pod `Admin\` (PSR-4 PascalCase namespace, lowercase folder ze względu na case-insensitive Windows fs):
|
||||
|
||||
```
|
||||
autoload/admin/ ← namespace Admin\* (nowe) + admin\* (legacy)
|
||||
├── ViewModels/Forms/ ← Admin\ViewModels\Forms
|
||||
│ ├── FormEditViewModel.php
|
||||
│ ├── FormField.php
|
||||
│ ├── FormFieldType.php
|
||||
│ ├── FormTab.php
|
||||
│ └── FormAction.php
|
||||
├── Validation/
|
||||
│ └── FormValidator.php ← Admin\Validation\FormValidator
|
||||
└── Support/
|
||||
├── TableListRequestFactory.php ← Admin\Support — parser list (page/per_page/sort/filter)
|
||||
└── Forms/
|
||||
├── FormRequestHandler.php ← Admin\Support\Forms — POST + CSRF + validate + persist
|
||||
└── FormFieldRenderer.php ← Admin\Support\Forms — HTML renderer (deleguje Shared\Html\Html)
|
||||
```
|
||||
|
||||
Decyzja: **brak BaseController** — Phase 7+ kontrolery będą POJOs z DI w konstruktorze (jak shopPRO `BannerController(BannerRepository, LanguagesRepository)`).
|
||||
|
||||
Następne: `Admin\` controllers (Fazy 7–13), `Frontend\` namespace (Fazy 14–16).
|
||||
---
|
||||
|
||||
## Katalogi
|
||||
|
||||
Reference in New Issue
Block a user