Currently, we're using Vuex for state handling across components, which is not very type safe:
- mapState functions can't be typed
- dispatch action names are strings and payloads are not typed
When we no longer support IE11, we should migrate to Pinia, because it's the recommended successor to Vuex and officially endorsed state management library for Vue.