Consider using Vuex and `.vue` files in MR widget
Problems:
Currently we do not use Vuex or .vue
files in the MR widget.
Currently the entire store + service methods are often provided as props to tiny components which degrades performance - every key has a getter and a setter and most of the times they are not used.
Currently all components are in .js
files, causing the need to be compiled previously and degrading performance - https://gitlab.com/gitlab-org/gitlab-ce/issues/34371
Currently some states are not being tested.
Proposal:
- Use Vuex to manage the state
- Add i18n
- Replace
.js
files with.vue
files - Add missing tests
- Fix all the CSS bugs we have
- Put back some missing features, like external CI/CD: https://gitlab.com/gitlab-org/gitlab-ce/issues/34823 https://gitlab.com/gitlab-org/gitlab-ce/issues/26351
/cc @timzallmann
Edited by Filipa Lacerda