Skip to content

refactor(css): styles inline → classes (E10-2, #163) - #173

Merged
decarvalhoe merged 1 commit into
developfrom
feature/e10-2-css-classes
Jul 2, 2026
Merged

refactor(css): styles inline → classes (E10-2, #163)#173
decarvalhoe merged 1 commit into
developfrom
feature/e10-2-css-classes

Conversation

@decarvalhoe

Copy link
Copy Markdown
Owner

Ferme #163. Le CSS était codé en dur dans le JS (style: 'display:flex;…') — difficile à thématiser/maintenir et bloquant pour une CSP stricte. Extraction vers styles/views.css.

Ce qui change

  • Zéro attribut style="" statique dans les 9 vues (bytes, callstack, controls, libft, memory, program, regionMap, valgrind, game.js).
  • États dynamiques (actif / ouvert / propre / cliquable) → classes modificatrices (.mf-frame--active, .mf-region-block--open, .mf-valgrind--clean, .mf-region-name--open…) plutôt que des chaînes de style interpolées.
  • Seul subsiste du CSSOM légitime et dynamique : géométrie de l'overlay de fils SVG et glow pointeur (calculés au runtime, non régis par style-src).

Garanties

  • Rendu pixel-identique : les 9 écrans du harnais à 0,00 % — sur les sources et sur l'artefact dist/.
  • 655 tests, lint vert, poids 254 KB (budget 280).

Débloque la CSP stricte (#166) : plus aucun style="…"style-src 'self' sans 'unsafe-inline' deviendra possible une fois le script de thème externalisé.

…E10-2, #163)

Le CSS était codé en dur dans le JS (style: 'display:flex;…' massifs) :
difficile à thématiser/maintenir et bloquant pour une CSP stricte
(style-src 'unsafe-inline' requis). Extraction vers styles/views.css.

- Zéro attribut style="" statique dans les vues (9 fichiers).
- États dynamiques (actif/ouvert/propre/cliquable) → classes modificatrices
  (.mf-frame--active, .mf-region-block--open, .mf-valgrind--clean…) plutôt
  que des chaînes de style interpolées.
- Seul reste du CSSOM légitime et dynamique (géométrie de l'overlay de fils
  SVG, glow pointeur) — non concerné par style-src, calculé au runtime.
- Rendu pixel-identique : 9 écrans du harnais à 0,00 % (sources ET dist/).

Débloque la CSP stricte (#166). 655 tests, lint vert, poids 254 KB.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@decarvalhoe
decarvalhoe merged commit 6bfaf48 into develop Jul 2, 2026
2 checks passed
@decarvalhoe
decarvalhoe deleted the feature/e10-2-css-classes branch July 2, 2026 14:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants