studio icon indicating copy to clipboard operation
studio copied to clipboard

[KDS to Studio] Migrate 'Change password' form from Vuetify to Kolibri Design System

Open MisRob opened this issue 7 months ago • 0 comments

🙂 Looking for an issue? Welcome! This issue is open for contribution. If this is the first time you’re requesting an issue, please:

  • Read the Contributing guidelines carefully. Pay extra attention to the Using generative AI. Pull requests and comments that don’t follow the guidelines won’t be answered.
  • Confirm that you’ve read the guidelines in your comment.

Summary

Sub-issue of https://github.com/learningequality/studio/issues/5060.

Migrate Change password form in Settings > Account from Vuetify to Kolibri Design System.

ChangePasswordForm is built with the following Vuetify components:

  • VForm
  • PasswordField (built with VTextField)

To remove these dependencies:

  • Replace PasswordField with KTextbox
  • Remove VForm and re-implement form validation

How to get there

Guidance

  • Read the project this issue is part of
  • To implement form validation, search in our codebases for examples, e.g.:
    • shared/generateFormMixin
    • Kolibri's ChangeUserPasswordModal

Out of scope

  • Do not refactor any other areas of the codebase
  • Do not modify PasswordField

Expected UI/UX changes

  • Minor visual differences naturally stemming from the use of KDS

Acceptance criteria

General

  • [ ] The specification above is followed.
  • [ ] Except for "Expected UI/UX changes," there are no functional or visual differences in user experience.
  • [ ] All user interactions are manually tested with no regressions.
  • [ ] Pull request includes screenshots.

a11y and i18n

See the project's "Guidance" for useful references.

  • [ ] Implementation meets a11y standards
  • [ ] All components are LTR and RTL compliant
  • [ ] All user-facing strings are translated properly
  • [ ] The notranslate class been added to elements that shouldn't be translated by Google Chrome's automatic translation feature (e.g. user-generated text)
  • [ ] Mobile experience is reasonable

Unit tests

  • [ ] If there is a unit test suite already, it is meaningfully updated (even if tests don't fail)
  • [ ] If there is no unit test suite, a new one is created

MisRob avatar May 19 '25 10:05 MisRob