Page MenuHomePhabricator

[WtC-M2] Replace WiKit Inline progress bar with Codex's Indeterminate Progress bar
Closed, ResolvedPublic5 Estimated Story Points

Description

Problem

The Mismatch Finder's user interface was composed using a combination of WiKit components and mixins, such as wikit-Progress (see source). The WiKit design system is now on its deprecation path, as it has been superseded by Codex, the official Wikimedia design system. The utilization of WiKit elements is not recommended, and they should be replaced in order to reduce maintenance costs and ensure consistency.

Solution

We have to replace the instance of wikit-Progress used to indicate the loading of the Mismatch Finder's results page with the Codex equivalent: cdx-progress-bar (See demo). This will take us a step closer to switching to the new design system and deprecating the old.

CurrentNew
Screenshot 2023-11-22 at 18.59.25.png (1×2 px, 501 KB)
Screenshot 2023-11-22 at 19.01.42.png (1×2 px, 333 KB)
Considerations
  • The progress bar needs to be displayed on top of an overlay that has the same styling as the backdrop included in the Codex Dialog component (.cdx-dialog-backdrop). Codex doesn't offer this overlay as part of the Progress component yet (see T350805). So we'll have to recreate it using the specified tokens and styles.
  • We are not using the Inline variant of the Codex progress bar here because the guidelines indicate it should be utilized within components and not at page/area level (see recommendations).
Acceptance criteria
  • The WiKit Inline progress bar is replaced by the Codex Indeterminate Progress bar component

Event Timeline

Sarai-WMDE renamed this task from [SW][WtC-M2] Replace WiKit Inline progress bar with Codex's Indeterminate Progress bar to [WtC-M2] Replace WiKit Inline progress bar with Codex's Indeterminate Progress bar.Nov 23 2023, 11:33 AM
Sarai-WMDE moved this task from UX Backlog to Unified QT Backlog on the Wikidata Dev Team board.

Task breakdown notes:

@Sarai-WMDE The current version of the progress bar used in MMF contains a role="progressbar" attribute. Reading the warning in the codex demo page I understand this is no longer needed and is best replaced by an aria-label. Can you confirm this?

@Sarai-WMDE The current version of the progress bar used in MMF contains a role="progressbar" attribute. Reading the warning in the codex demo page I understand this is no longer needed and is best replaced by an aria-label. Can you confirm this?

The Codex progress bar also contains a role="progressbar" attribute, so I believe that the addition of aria-label is meant as an a11y enhancement for context and clarity (e.g. "Saving reviews" or "Loading results" in our cases).

Just validated that Guergana followed the recommendation when working on T347190: [WtC-M2] Replace WiKit TextArea component by Codex's, see #771.

@Sarai-WMDE Are there any guidelines to how the progress bar should look like
on smaller screens? feel free to ping me if you'd like to look at it together.

This was merged so it should be on staging for testing.

✅ Verification done. No issues related to the progress bar replacement were detected.

Tested in Chrome 119, Safari 17 and Firefox 120 on MacOS Sonoma.