Increase diff components reusability
Right now Diffs app is tightly coupled with the Notes app which handles Issues. That creates a problem when we want to [re-use the Diffs components anywhere else](https://gitlab.com/gitlab-org/gitlab/-/issues/385901). That is caused by using: 1. Notes app components that rely on a Vuex state 2. Mixins that also rely on a Vuex state 3. Heavily relying on a Vuex state in our own Diffs components In order to tackle this and increase reusability and maintainability we need to do a major refactoring of the code: 1. Replace mixins with composables (should be possible after Vue 3 migration) 2. Replace Vuex with composables where possible 3. Replace Vuex with props\events if necessary Refactoring details to be defined.
issue