
🙂 Looking for an issue? Welcome! This issue is open for contribution. If this is the first time you’re requesting an issue, please:
- Read Contributing guidelines carefully. Pay extra attention to 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.

Sub-issue of #5060.
Complexity: Medium
Blocked by
learningequality/kolibri-design-system#1030
Summary
Migrate copy token input in Settings > Account from Vuetify to Kolibri Design System.
shared/views/CopyToken that is built with VTextField is used for the token. To remove this dependency from Account/index, create a new StudioCopyToken component with:
KTextbox as basis
KIconButton copy button and logic
KCircularLoader for loading state
Then use StudioCopyToken in Account/index instead of CopyToken.
How to get there
- Login as
user@a.com with password a
- Go to Settings > Account
Guidance
Out of Scope
- Do not refactor any other areas of the codebase
- Do not modify
CopyToken
Expected UI/UX changes
- Minor visual differences naturally stemming from the use of KDS
- When loading, instead of the blue linear loader on the bottom of the input, there will be a circular loader displayed in the place of the input
Acceptance criteria
General
a11y and i18n
See the project's "Guidance" for useful references.
Unit tests
🙂 Looking for an issue? Welcome! This issue is open for contribution. If this is the first time you’re requesting an issue, please:
Sub-issue of #5060.
Complexity: Medium
Blocked by
learningequality/kolibri-design-system#1030
Summary
Migrate copy token input in Settings > Account from Vuetify to Kolibri Design System.
shared/views/CopyTokenthat is built withVTextFieldis used for the token. To remove this dependency fromAccount/index, create a newStudioCopyTokencomponent with:KTextboxas basisKIconButtoncopy button and logicKCircularLoaderfor loading stateThen use
StudioCopyTokeninAccount/indexinstead ofCopyToken.How to get there
user@a.comwith passwordaGuidance
Out of Scope
CopyTokenExpected UI/UX changes
Acceptance criteria
General
a11y and i18n
See the project's "Guidance" for useful references.
pnpm run devserversince:hotdoesn't render RTL properly)notranslateclass been added to elements that shouldn't be translated by Google Chrome's automatic translation feature (e.g. user-generated text)Unit tests
@vue/test-utilsapproach. Instead, use Vue Testing Library.