Description
As part of our mission to improve the multilingual experience in Wikifunctions pages (T343376), we worked on a re-design of the new About Widget.
To-do
- Resolve open questions (see below)
- Implement new design
- Tests
- Unit/integration tests: add new, fix existing, improve coverage
- Update e2e tests
- Update documentation that uses screenshots or examples of the old widget
Open questions
There are few decisions to be made for this implementation. The open questions are gathered in this document: https://docs.google.com/document/d/1KAFHbNXf76_Op7GATDDYaoxSBvVWJdk-ORAQI4AhVbM/edit#heading=h.irkux04552nh
- Which label(s) should be mandatory?
- Max length: Should we increase description length? What about other fields?
- Definition of availability: When are fallback language blocks being shown?
- Shall we use aliases as hints for the name field?
- When should language blocks be expanded or collapsed?
Resolved questions (2024-07-24)
Question 1: Which labels should be mandatory?
- For non-functions: All labels are optional
- For functions: Make name and input labels' fields in the Function Editor mandatory in the creation language (added T370942)
Question 2: What is the max length of fields?
- Name: 50
- Description: 200
- Input labels: 50
- Change this also in the Function Editor (T370995)
- Aliases: in the future set to 50, we can't enforce this from our side right now (added for Codex T370997)
Question 3: Fallback strategy
- Question 3.a: What language blocks we initialize the About box with?
- We try to cover for all the missing important fields (name+inputs) by adding the closest available fallback language for each field, even if that means adding one or two blocks (for more details, read Algorithm 4 in the doc)
- Question 3.b/c: How do we show fallback hints?
- Under any empty field, in any language block.
- The hint will be in the closest fallback language that's available for the given field.
Question 4: Do we use aliases as hints for the name field?
- No
Question 5: What is the expand/collapse logic for language blocks?
- User language: expanded on start
- Fallback languages: collapsed on start
- Newly added languages: collapsed
- When we click "edit" button, expand automatically: (we might not be able to do this, need to consult with codex team)
Devices and Design (URLs or screenshots)
Figma design: https://www.figma.com/design/B1p8nS1mjHXhl8icr4Rxcs/T360610-About-widget-2.0?node-id=155-17378&t=rMC4R7yBrLAUMQbO-1
Completion checklist
- Before closing this task, review one by one the checklist available here: https://www.mediawiki.org/wiki/Abstract_Wikipedia_team/Definition_of_Done#Front-end_Task/Bug_Completion_Checklist