This task is about how we "productionize" the initial prototype developed for T353172. In order to support the continued work of the Web Team on a dark mode feature (initially targeting Minerva), we need to generate a set of new artifacts from the Codex build process, and we need to integrate them into MediaWiki in a basic way.
Codex Artifacts
Design Tokens
- Produce a plain CSS file with a filtered set of tokens as CSS vars in a :root block
- Produce a LESS file that replaces the value of those same filtered tokens with var( --whatever )
Codex components
- Define an "experimental" build mode that replaces references to theme-wikimedia-ui.less with the above LESS file so that component styles include cals to var( --whatever )
- Any styles which rely on LESS functions (like Tabs) need to be fixed because we cannot rely on these features any more (T356541)
Out of scope
- Supporting legacy browsers that do not understand CSS variables