diff --git a/vue/package.json b/vue/package.json index 0c3f30651..e812e5c66 100644 --- a/vue/package.json +++ b/vue/package.json @@ -13,6 +13,7 @@ "@popperjs/core": "^2.11.6", "@riophae/vue-treeselect": "^0.4.0", "@vue/cli": "^5.0.8", + "@vue/composition-api": "1.7.1", "axios": "^1.2.0", "babel": "^6.23.0", "babel-core": "^6.26.3", @@ -25,6 +26,7 @@ "lodash": "^4.17.21", "mavon-editor": "^2.10.4", "moment": "^2.29.4", + "pinia": "^2.0.30", "prismjs": "^1.29.0", "string-similarity": "^4.0.4", "vue": "^2.6.14", @@ -42,7 +44,6 @@ "vue-template-compiler": "2.6.14", "vue2-touch-events": "^3.2.2", "vuedraggable": "^2.24.3", - "vuex": "^3.6.0", "workbox-webpack-plugin": "^6.5.4", "workbox-window": "^6.5.4" }, diff --git a/vue/src/apps/CookbookView/main.js b/vue/src/apps/CookbookView/main.js index 0fbe7b3b6..2de451d41 100644 --- a/vue/src/apps/CookbookView/main.js +++ b/vue/src/apps/CookbookView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './CookbookView.vue' import i18n from '@/i18n' +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,8 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/ExportResponseView/main.js b/vue/src/apps/ExportResponseView/main.js index 220ac3be4..760b00deb 100644 --- a/vue/src/apps/ExportResponseView/main.js +++ b/vue/src/apps/ExportResponseView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './ExportResponseView.vue' import i18n from '@/i18n' +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,8 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/ExportView/main.js b/vue/src/apps/ExportView/main.js index 8c8af8e52..4b8a118d3 100644 --- a/vue/src/apps/ExportView/main.js +++ b/vue/src/apps/ExportView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './ExportView.vue' import i18n from '@/i18n' +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,8 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/ImportResponseView/main.js b/vue/src/apps/ImportResponseView/main.js index 7efb6f0d5..c8a3cfee1 100644 --- a/vue/src/apps/ImportResponseView/main.js +++ b/vue/src/apps/ImportResponseView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './ImportResponseView.vue' import i18n from '@/i18n' +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,8 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/ImportView/main.js b/vue/src/apps/ImportView/main.js index f55808a72..c0bd66afb 100644 --- a/vue/src/apps/ImportView/main.js +++ b/vue/src/apps/ImportView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './ImportView.vue' import i18n from '@/i18n' +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,8 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/IngredientEditorView/main.js b/vue/src/apps/IngredientEditorView/main.js index c92257cd2..7304afd91 100644 --- a/vue/src/apps/IngredientEditorView/main.js +++ b/vue/src/apps/IngredientEditorView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './IngredientEditorView.vue' import i18n from '@/i18n' +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,8 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/MealPlanView/main.js b/vue/src/apps/MealPlanView/main.js index 76041049a..36e13f7ce 100644 --- a/vue/src/apps/MealPlanView/main.js +++ b/vue/src/apps/MealPlanView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './MealPlanView.vue' import i18n from '@/i18n' +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,7 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() + new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/ModelListView/main.js b/vue/src/apps/ModelListView/main.js index d70743943..d051fbacd 100644 --- a/vue/src/apps/ModelListView/main.js +++ b/vue/src/apps/ModelListView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './ModelListView' import i18n from '@/i18n' +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,8 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/OfflineView/main.js b/vue/src/apps/OfflineView/main.js index 0ca32a38c..bf7a4188e 100644 --- a/vue/src/apps/OfflineView/main.js +++ b/vue/src/apps/OfflineView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './OfflineView.vue' import i18n from "@/i18n"; +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,8 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/ProfileView/main.js b/vue/src/apps/ProfileView/main.js index a3be1a1c7..7879021ef 100644 --- a/vue/src/apps/ProfileView/main.js +++ b/vue/src/apps/ProfileView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './ProfileView.vue' import i18n from '@/i18n' +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,8 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/RecipeEditView/main.js b/vue/src/apps/RecipeEditView/main.js index 0c7b8a514..43efe9f68 100644 --- a/vue/src/apps/RecipeEditView/main.js +++ b/vue/src/apps/RecipeEditView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './RecipeEditView' import i18n from '@/i18n' +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,8 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/RecipeSearchView/main.js b/vue/src/apps/RecipeSearchView/main.js index 93fc04d0b..921abb2fd 100644 --- a/vue/src/apps/RecipeSearchView/main.js +++ b/vue/src/apps/RecipeSearchView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './RecipeSearchView' import i18n from '@/i18n' +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,8 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/RecipeView/main.js b/vue/src/apps/RecipeView/main.js index b5acd6a29..bbd3ad400 100644 --- a/vue/src/apps/RecipeView/main.js +++ b/vue/src/apps/RecipeView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './RecipeView.vue' import i18n from "@/i18n"; +import {createPinia, PiniaVuePlugin} from 'pinia' Vue.config.productionTip = false @@ -11,8 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/SettingsView/main.js b/vue/src/apps/SettingsView/main.js index 4f2d1dff3..5d3ca9917 100644 --- a/vue/src/apps/SettingsView/main.js +++ b/vue/src/apps/SettingsView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './SettingsView.vue' import i18n from '@/i18n' +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,7 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() + new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/ShoppingListView/main.js b/vue/src/apps/ShoppingListView/main.js index 614e3007d..c6b1ac05f 100644 --- a/vue/src/apps/ShoppingListView/main.js +++ b/vue/src/apps/ShoppingListView/main.js @@ -1,6 +1,7 @@ import i18n from "@/i18n" import Vue from "vue" import App from "./ShoppingListView" +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,7 +12,11 @@ if (process.env.NODE_ENV === "development") { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() + new Vue({ + pinia, i18n, render: (h) => h(App), }).$mount("#app") diff --git a/vue/src/apps/SpaceManageView/main.js b/vue/src/apps/SpaceManageView/main.js index 91e5c85ff..afb345d37 100644 --- a/vue/src/apps/SpaceManageView/main.js +++ b/vue/src/apps/SpaceManageView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './SpaceManageView.vue' import i18n from '@/i18n' +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,8 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/SupermarketView/main.js b/vue/src/apps/SupermarketView/main.js index cff8762e5..7a31cecdc 100644 --- a/vue/src/apps/SupermarketView/main.js +++ b/vue/src/apps/SupermarketView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './SupermarketView.vue' import i18n from '@/i18n' +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,8 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/TestView/main.js b/vue/src/apps/TestView/main.js index e49716ace..eccb1b8d9 100644 --- a/vue/src/apps/TestView/main.js +++ b/vue/src/apps/TestView/main.js @@ -1,6 +1,7 @@ import Vue from 'vue' import App from './TestView.vue' import i18n from '@/i18n' +import {createPinia, PiniaVuePlugin} from "pinia"; Vue.config.productionTip = false @@ -11,8 +12,11 @@ if (process.env.NODE_ENV === 'development') { } export default __webpack_public_path__ = publicPath // eslint-disable-line +Vue.use(PiniaVuePlugin) +const pinia = createPinia() new Vue({ + pinia, i18n, render: h => h(App), }).$mount('#app') diff --git a/vue/src/apps/base_app.js b/vue/src/apps/base_app.js new file mode 100644 index 000000000..e69de29bb diff --git a/vue/src/components/MealPlanEditModal.vue b/vue/src/components/MealPlanEditModal.vue index ba0b5e2a3..3419801a9 100644 --- a/vue/src/components/MealPlanEditModal.vue +++ b/vue/src/components/MealPlanEditModal.vue @@ -16,7 +16,7 @@ {{ $t("Title") }}