The images used inside the on-boarding steps do not have any preloading logic at the moment or performance optimization. Let's review the current implementation so it has the same experience, at least, that the prior OOUI ProcessDialog implementation.
Description
Details
Status | Subtype | Assigned | Task | ||
---|---|---|---|---|---|
Open | None | T367429 [Epic] FY 2024-25 Growth Maintenance Work | |||
Open | Sgs | T296646 [Epic] Migration of front-end modules to Vue.js components | |||
Resolved | KStoller-WMF | T329033 [Internship] Modernization of web interfaces using Vue.js | |||
In Progress | None | T329037 Refactor the "Add a link" on-boarding dialog to Vue | |||
Stalled | None | T335268 Improve image loading performance |
Event Timeline
Change 914761 had a related patch set uploaded (by Viviana Yanez; author: Viviana Yanez):
[mediawiki/extensions/GrowthExperiments@master] Frontend documentation: Add OnboardingImage component with preloading logic for images
We will get back to the initial solution using background images because of the RTL support in MW for this which also implies image preloading.
Change 914761 merged by jenkins-bot:
[mediawiki/extensions/GrowthExperiments@master] Frontend documentation: Dialog images use background-image CSS property
Change 924075 had a related patch set uploaded (by Viviana Yanez; author: Viviana Yanez):
[mediawiki/extensions/GrowthExperiments@master] Frontend documentation: remove img tag from AddImageDialog
Change 924075 merged by jenkins-bot:
[mediawiki/extensions/GrowthExperiments@master] Frontend documentation: remove img tag from AddImageDialog
In order to take advantage of Resource Loader image preloading optimisation and filenames ending conversion to adapt to images to RTL, we decided to rollback to implement the dialog images as background-images.
However this approach introduced a portability issue, because the static assets are inlined as base64 URLs in Vite (https://github.com/vitejs/vite/issues/4454) and images are not adapting to RTL.
We are considering using a plugin as https://github.com/vitejs/vite/issues/4454#issuecomment-1478992832 or https://github.com/ManBearTM/vite-plugin-no-bundle so we can keep using background-images.
Other possible solution would be to going back to use an image tag and add logic to apply the RTL image changes, but we would need then to solve the performance issue on image loading.
Removing inactive task assignee who's not with WMF anymore. (WMF Growth-Team: Please do so as part of team offboarding steps - thanks.)