Page MenuHomePhabricator

Replace wikimedia-ui imports with mediawiki.skin.variables
Open, Needs TriagePublic

Description

See T296379#7535194:

In the short-mid term these can probably be replaced with mediawiki.skin.variables (T112747, T265941) which has as the posterchild use case something that looks a lot like what GrowthExperiments needed. Be sure to reach out to Volker if you have any questions or are unsure of which variables to use or might need additional ones to be standardised within core in skin-agnostic way.

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript

Of course, we could also decide not to do this. Haven't looked into it yet myself. cc @Sgs, @mewoph, @Tgr.

Moving to needs discussion column (will add this to the agenda for next engineer sync)

mediawiki.skin.variables is meant for defining things that skins might want to override (such as link color). It's not meant to be a design language (it wouldn't really make sense; different skins aren't merely dialects of the same design language, they are fundamentally different, so their style vocabulary cannot be centrally designed). It has 26 variables; wikimedia-ui-base has 190. Porting all those to mediawiki.skin.variables would probably make the experience of developing a skin much more confusing, without adding any value (it's unlikely a skin developer would want to re-style GrowthExperiments features). IMO we should just stick with the status quo, or move wikimedia-ui-base to core as an available style library. (Or, maybe, make it possible to install style libraries via some package manager approach, and turn it into its own package, so other extensions can reuse it with less effort.)