feat(5.9): US-007 - responsive pagini de continut (card Mapari, scroll contained Jurnal/Nomenclator/Admin, formulare stivate)
- base.html @media(max-width:767px): clasa .tabel-card (card per rand) scopata SEPARAT de .tabel-trimiteri 5.8; reguli formular full-width + butoane >=44px scopate pe #card-cont / #form-test-cheie / #filtre-jurnal (marker US-007) - _mapari.html: tabel-card + data-eticheta pe toate 4 tabelele; override select in card local (evita batalia de specificitate cu stilul inline) - _integrare.html: id=form-test-cheie (ancora de scope pe formularul de test) - R12 per-tabel: Mapari=card; Jurnal/Nomenclator/Admin=.tablewrap scroll contained; Cont/Integrare=fara tabele (doar formulare) - tests: +3 (tabele clasa responsive, formulare full-width, regresie carduri 5.8) - suita: 838 passed, 1 deselected - prd.json US-007 passes=true + notes; progress.txt Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -190,12 +190,12 @@
|
||||
],
|
||||
"requiresBrowserCheck": true,
|
||||
"requiresDesignReview": false,
|
||||
"passes": false,
|
||||
"passes": true,
|
||||
"failed": false,
|
||||
"blocked": false,
|
||||
"retries": 0,
|
||||
"failureReason": "",
|
||||
"notes": ""
|
||||
"notes": "Implementat. R12 per-tabel: Mapari=CARD (clasa .tabel-card scopata separat de .tabel-trimiteri 5.8, data-eticheta pe td-uri in toate 4 tabelele); Jurnal/Nomenclator/Admin=.tablewrap scroll contained (deja existau; dense/admin-only, risc minim). Cont/Integrare=fara tabele, doar formulare stivate. CSS card+formulare in blocul @media(max-width:767px) din base.html (marker US-007). Formulare: inputuri full-width (!important doar pe mobil ca sa invinga latimile inline desktop), butoane >=44px, filtre jurnal pe o coloana. id=form-test-cheie adaugat la integrare pt scope. Override select mapari in card local in _mapari.html (evita batalia de ordine/specificitate cu stilul inline). Teste: test_tabele_continut_au_clasa_responsive, test_formulare_full_width_mobil, test_carduri_trimiteri_5_8_supravietuiesc (regresie). Suita: 838 passed, 1 deselected. E2E ramas pt browser (375px fara scroll orizontal de pagina pe fiecare pagina)."
|
||||
},
|
||||
{
|
||||
"id": "US-008",
|
||||
@@ -259,4 +259,4 @@
|
||||
"notes": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -142,3 +142,55 @@ Note: PRD APROBAT 2026-06-24 cu revizii obligatorii R1-R12 (raport AUTOPLAN). R1
|
||||
fiecare camp o data (nr. rand propriu, VIN dedesubt), corectez data, „Salveaza si retrimite"
|
||||
-> queued; error arata „Re-pune in coada"; „Sterge" clar separat, rosu, full-width pe mobil.
|
||||
---
|
||||
|
||||
## US-007: Responsive — paginile de continut (Mapari, Cont, Nomenclator, Integrare, Jurnal, Admin)
|
||||
|
||||
### Decizia per-tabel (R12):
|
||||
- Mapari = CARD per rand sub 767px (tabele actionabile: selecturi nomenclator + butoane +
|
||||
kebab). Toate cele 4 tabele (De rezolvat, Mapari salvate, Formate coloane, Reguli text)
|
||||
primesc `data-eticheta` pe `<td>`-uri + clasa `tabel-card` pe `.tablewrap`.
|
||||
- Jurnal = .tablewrap (scroll orizontal contained). Dens read-only, multe coloane (Cand/Sursa/
|
||||
Tip/Nivel/Cont/Cod/Mesaj) — cardul ar fi lung si zgomotos; scroll contained pastreaza tabularitatea.
|
||||
- Nomenclator = .tablewrap (scroll contained). Dens read-only (Cod/Denumire/Actualizat).
|
||||
- Admin = .tablewrap (scroll contained). Actionabil DAR admin-only, dens (8 coloane), actiunile sunt
|
||||
deja in kebab compact + bulk-bar; cardul ar fi cost mare pe o pagina low-traffic pe mobil. Risc minim.
|
||||
- Cont / Integrare = fara tabele (doar formulare + blocuri de cod). Formularele stivate; blocurile
|
||||
`<pre>` de cod si tab-bar-urile aveau deja `overflow-x:auto` (contained).
|
||||
|
||||
### Ce s-a livrat:
|
||||
- app/web/templates/base.html: in blocul `@media (max-width:767px)` (marker US-007):
|
||||
- `.tabel-card` — card per rand SCOPAT separat de `.tabel-trimiteri` (5.8 intact). thead ascuns,
|
||||
tr=card, td=block cu `::before` din `data-eticheta`; celulele fara eticheta (doar actiuni) nu
|
||||
afiseaza antet gol; selecturi/inputuri full-width, butoane in card width:100% + min-height:44px.
|
||||
- Formulare de continut pe o coloana: inputuri full-width (`width:100% !important` DOAR pe mobil,
|
||||
ca sa invinga latimile inline de desktop — desktop neschimbat), butoane >=44px + full-width,
|
||||
filtrele de jurnal stivuite (`#filtre-jurnal > div { width:100% }`). Scopat strict pe
|
||||
`#card-cont`, `#form-test-cheie`, `#jurnal-section #filtre-jurnal` (nu atinge taburile ARIA,
|
||||
butoanele de copiere absolute, tabelul de trimiteri sau modalul).
|
||||
- app/web/templates/_mapari.html: `tabel-card` pe cele 4 `.tablewrap`; `data-eticheta` pe td-uri;
|
||||
override local in `<style>` (`@media 767px` -> select/input `max-width:none; min-width:0`) ca sa
|
||||
evite batalia de specificitate/ordine cu regula inline `#mapari-section td select`.
|
||||
- app/web/templates/_integrare.html: `id="form-test-cheie"` pe formularul de test (ancora de scope).
|
||||
- tests/test_web_responsive.py: +3 teste (test_tabele_continut_au_clasa_responsive,
|
||||
test_formulare_full_width_mobil, test_carduri_trimiteri_5_8_supravietuiesc — regresie 5.8).
|
||||
|
||||
### Gates rulate:
|
||||
- Typecheck/Lint: SKIP (comenzi goale in techStack).
|
||||
- Tests: PASS — tests/test_web_responsive.py 6; suita completa 838 passed, 1 deselected.
|
||||
- Browser (E2E requiresBrowserCheck): DEFERAT la VERIFY (loop fara browser).
|
||||
|
||||
### Learnings:
|
||||
- `.tablewrap` (overflow-x:auto, scroll contained) exista DEJA global din 5.5 si era aplicat pe toate
|
||||
tabelele de continut (Jurnal/Nomenclator/Mapari/Admin). US-007 a insemnat: (a) CONVERSIA Mapari la
|
||||
card (nou), (b) confirmarea scroll-contained pe restul, (c) tratamentul de formular pe mobil.
|
||||
- Stilurile inline (`style="width:..."`) din templates inv ing stylesheet-ul fara `!important`;
|
||||
pe mobil am folosit `!important` scopat strict, evitand regresia pe desktop.
|
||||
- Scoparea separata `.tabel-card` vs `.tabel-trimiteri` e CRITICA: ambele mecanisme de card coexista
|
||||
in acelasi bloc media; test de regresie confirma ca blocul 5.8 (.tabel-trimiteri thead/td::before)
|
||||
supravietuieste.
|
||||
|
||||
### Next:
|
||||
- US-008 (responsive Acasa + login/signup), US-005 (poll nu inchide modalul).
|
||||
- VERIFY: gstack browser la 375px pe /?tab=mapari, ?tab=jurnal, Cont/Nomenclator/Integrare, /admin —
|
||||
fiecare fara scroll orizontal de pagina, tabele lizibile, formulare pe o coloana.
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user