|
All checks were successful
CI / secret-scan (push) Successful in 20s
CI / php-lint (push) Successful in 49s
CI / static-tests (push) Successful in 1m48s
CI / js-tests (push) Successful in 59s
CI / secret-scan (pull_request) Successful in 20s
CI / php-lint (pull_request) Successful in 45s
CI / static-tests (pull_request) Successful in 1m39s
CI / js-tests (pull_request) Successful in 1m8s
Remplace le formulaire-liste (champs quantite) par un ecran de caisse facon tablette : onglets categories + grille de tuiles produits/menus (tap = ajout) + panneau commande persistant a droite (lignes avec +/-, total, bouton "Encaisser X,XX EUR"). Le contrat serveur ne change pas (items_json -> store -> createStaffOrder) ; les acquis du lot precedent sont conserves (verrou drive, service_tag dine_in, format Normal/Maxi, prix indicatifs cote client). Accessibilite : pattern tablist clavier complet (roving tabindex + fleches + Home/End + aria-controls/tabpanel), focus conserve au changement d'onglet, region live concise (total + nb articles), tuiles ouvrant une modale annoncees (aria-haspopup + libelle "a composer"). Quantite menu desormais ajustable (facturee par quantite). Catalogue passe en scripts JSON inertes (JSON_HEX_*), rendu via textContent. CSP-safe (aucun handler inline). Tests : JS 135, PHP unit 406, PHPStan L6. Apercu valide par le commanditaire. |
||
|---|---|---|
| .. | ||
| a11y.test.js | ||
| allergens.test.js | ||
| category-strip.test.js | ||
| checkout.test.js | ||
| composer-slots.test.js | ||
| confirm-modal.test.js | ||
| counter-order.test.js | ||
| data.test.js | ||
| nav.test.js | ||
| order-panel.test.js | ||
| package.json | ||
| pin-modal.test.js | ||
| product-options.test.js | ||