|
All checks were successful
CI / secret-scan (pull_request) Successful in 7s
CI / php-lint (pull_request) Successful in 19s
CI / static-tests (pull_request) Successful in 39s
CI / js-tests (pull_request) Successful in 19s
CI / secret-scan (push) Successful in 8s
CI / php-lint (push) Successful in 18s
CI / static-tests (push) Successful in 39s
CI / js-tests (push) Successful in 16s
CI / auto-merge (pull_request) Successful in 4s
CI / auto-merge (push) Has been skipped
PR-C du lot P3. Icone "i" allergenes sur la borne ouvrant une modale GENERALE listant les 14 allergenes a declaration obligatoire (UE INCO 1169/2011). Info generale, PAS un calcul par produit (mapping ingredient_allergen reste differe). - data/allergens.json : les 14 INCO (liste fixe data borne). loadAllergens() ajoute a data.js avec point de swap P4 documente (-> /api/allergens). - allergens.js : module CSP-safe (DOM API, aucun handler inline). buildAllergenInfoButton (bouton "i", stopPropagation sur la carte), openAllergenModal (idempotent), fermeture par bouton / clic overlay / touche Echap. - Integration : carte produit (page-products.js) ET fiche produit simple (page-product.js) ; CSS modale + badge reutilisant le pattern overlay du composer. Harnais de tests front (premier du depot) : node:test + jsdom. tests/js/allergens.test.js couvre les 14 INCO, la construction du bouton, l'ouverture/listing/fermeture et l'idempotence (7 tests). Scoping ESM local (src/public/borne/assets/js + tests/js) pour garder la racine en CommonJS (hooks, _byan, bin inchanges). Job CI js-tests (Node 20 epingle) ajoute aux checks requis de l'auto-merge. |
||
|---|---|---|
| .. | ||
| Integration | ||
| js | ||
| Support | ||
| Unit | ||
| bootstrap.php | ||