These are changes which I made over the past 9 months that I've now streamlined and grouped together. None of these changes should affect the functionality - they are preparatory to making functionality changes.
The extraction of the storeConfig from createDirectStore seems to break some of the typing provided by direct-vuex. It is my intention to remove direct-vuex in a future commit.
Upgrade Webpack from 4.x to 5.x (this requires changing the vue.config.js to replace deprecated port with host and .env.development to remove port from hostname.
Upgrade ESLint related configuration and dependencies:
Add vuetify/recommended (eslint-plugin-vuetify) and @vue/typescript/recommended as linting rules
Replace deprecated babel-eslint with @babel/eslint-parser
Disable import/extensions rule as it conflicts with other rules
Add 'import/resolver' config so that TS related imports are correctly handled
Add Jest and Vue Test Utils so that unit tests can be performed on the front-end (@vue/cli-plugin-unit-jest, @vue/test-utils, @vue/vue2-jest, babel-jest, jest, jest-transform-stub, ts-jest)
Upgrades Vue CLI plugins to @vue/cli-plugin-babel, @vue/cli-plugin-typescript, @vue/cli-service
Upgrade TypeScript from 4.4.2 to 5.75.0
Framework/Library Changes
Upgrade core-js to non-deprecated version
Upgrade vuetify from 2.6.3 to 2.6.14
Upgrade vuex from 3.0.1 to 3.6.2 (required no code changes)
MIQA Vue/Vuex Changes
The most significant change is extracting the store config from an inline parameter of createDirectStore() to the storeConfig constant. This was necessary to allow Jest to implement limited/local Vuex instances instead of attaching to the main Vuex instance.
Minor code reformatting per ESLint rules
Add Jest unit test for setCurrentVtkIndexSlices
Small Changes
Add a .devcontainer/devcontainer.json file that allows rapid creation of devenv using VSC Dev Containers or GitHub Codespaces
Ensure that PNG images aren't processed by Git as text
Ensure that repo forces Linux style line-endings (lf)
These are changes which I made over the past 9 months that I've now streamlined and grouped together. None of these changes should affect the functionality - they are preparatory to making functionality changes.
There are two key notes to observe here:
storeConfig
fromcreateDirectStore
seems to break some of the typing provided bydirect-vuex
. It is my intention to removedirect-vuex
in a future commit.direct-vuex
should be removed please see https://github.com/knowledgevis/miqa-annotate/issues/8 .Tooling Changes
vue.config.js
to replace deprecatedport
withhost
and.env.development
to remove port from hostname.vuetify/recommended
(eslint-plugin-vuetify
) and@vue/typescript/recommended
as linting rulesbabel-eslint
with@babel/eslint-parser
import/extensions
rule as it conflicts with other rules'import/resolver'
config so that TS related imports are correctly handledeslint
,eslint-plugin-import
,eslint-plugin-vue
,@typescript-eslint/eslint-plugin
,@typescript-eslint/parser
,@vue/cli-plugin-eslint
,@vue/eslint-config-airbnb
,@vue/eslint-config-prettier
,@vue/eslint-config-typescript
@vue/cli-plugin-unit-jest
,@vue/test-utils
,@vue/vue2-jest
,babel-jest
,jest
,jest-transform-stub
,ts-jest
)@vue/cli-plugin-babel
,@vue/cli-plugin-typescript
,@vue/cli-service
4.4.2
to5.75.0
Framework/Library Changes
core-js
to non-deprecated versionvuetify
from 2.6.3 to 2.6.14vuex
from 3.0.1 to 3.6.2 (required no code changes)MIQA Vue/Vuex Changes
createDirectStore()
to thestoreConfig
constant. This was necessary to allow Jest to implement limited/local Vuex instances instead of attaching to the main Vuex instance.setCurrentVtkIndexSlices
Small Changes
.devcontainer/devcontainer.json
file that allows rapid creation of devenv using VSC Dev Containers or GitHub Codespaces