diff --git a/vue3/src/apps/tandoor/Tandoor.vue b/vue3/src/apps/tandoor/Tandoor.vue
index f402a2665..e31ff75a9 100644
--- a/vue3/src/apps/tandoor/Tandoor.vue
+++ b/vue3/src/apps/tandoor/Tandoor.vue
@@ -95,7 +95,7 @@
-
+
diff --git a/vue3/src/components/dialogs/ModelEditDialog.vue b/vue3/src/components/dialogs/ModelEditDialog.vue
index 3ad135a5d..72b07d21d 100644
--- a/vue3/src/components/dialogs/ModelEditDialog.vue
+++ b/vue3/src/components/dialogs/ModelEditDialog.vue
@@ -32,6 +32,14 @@ const editorComponent = shallowRef(defineAsyncComponent(() => import(`@/componen
const model = defineModel({default: undefined})
const dialogActivator = (model.value !== undefined) ? undefined : props.activator
+/**
+ * for some reason editorComponent is not updated automatically when prop is changed
+ * because of this watch prop changes and update manually if prop is changed
+ */
+watch(() => props.model, () => {
+ editorComponent.value = defineAsyncComponent(() => import(`@/components/model_editors/${getGenericModelFromString(props.model, t).model.name}Editor.vue`))
+})
+
/**
* Allow opening the model edit dialog trough v-model property of the dialog by watching for model changes
*/
diff --git a/vue3/src/components/display/NavigationDrawerContextMenu.vue b/vue3/src/components/display/NavigationDrawerContextMenu.vue
index f35ff9ead..e7b789f63 100644
--- a/vue3/src/components/display/NavigationDrawerContextMenu.vue
+++ b/vue3/src/components/display/NavigationDrawerContextMenu.vue
@@ -3,7 +3,7 @@
+ :to="{ name: 'ModelListPage', params: {model: m.name.toLowerCase()} }">
diff --git a/vue3/src/components/display/ShoppingListView.vue b/vue3/src/components/display/ShoppingListView.vue
index 926d4baed..d97d92aa1 100644
--- a/vue3/src/components/display/ShoppingListView.vue
+++ b/vue3/src/components/display/ShoppingListView.vue
@@ -211,7 +211,7 @@
import {computed, onMounted, ref} from "vue";
import {useShoppingStore} from "@/stores/ShoppingStore";
-import {ApiApi, Food, IngredientString, ShoppingListEntry, ShoppingListRecipe, Supermarket, Unit} from "@/openapi";
+import {ApiApi, Food, IngredientString, ResponseError, ShoppingListEntry, ShoppingListRecipe, Supermarket, Unit} from "@/openapi";
import {ErrorMessageType, PreparedMessage, useMessageStore} from "@/stores/MessageStore";
import ShoppingLineItem from "@/components/display/ShoppingLineItem.vue";
import {useUserPreferenceStore} from "@/stores/UserPreferenceStore";
@@ -256,6 +256,10 @@ onMounted(() => {
if (useUserPreferenceStore().deviceSettings.shopping_selected_supermarket != null) {
new ApiApi().apiSupermarketRetrieve({id: useUserPreferenceStore().deviceSettings.shopping_selected_supermarket!.id!}).then(r => {
useUserPreferenceStore().deviceSettings.shopping_selected_supermarket = r
+ }).catch(err => {
+ if (err instanceof ResponseError && err.response.status == 404) {
+ useUserPreferenceStore().deviceSettings.shopping_selected_supermarket = null
+ }
})
}
})