fixed import page share intent

This commit is contained in:
vabene1111
2025-02-09 09:32:16 +01:00
parent 9b5878faae
commit 1b09234e91

View File

@@ -39,7 +39,9 @@
<v-alert-title>{{ $t('Duplicate') }}</v-alert-title>
{{ $t('DuplicateFoundInfo') }}
<v-list>
<v-list-item :to="{name: 'view_recipe', params: {id: r.id}}" v-for="r in importResponse.duplicates" :key="r.id"> {{ r.name }} (#{{r.id}})</v-list-item>
<v-list-item :to="{name: 'view_recipe', params: {id: r.id}}" v-for="r in importResponse.duplicates" :key="r.id"> {{ r.name }}
(#{{ r.id }})
</v-list-item>
</v-list>
</v-alert>
</v-card-text>
@@ -192,7 +194,9 @@
<v-btn @click="stepper = (parseInt(stepper) - 1).toString()">Zurück</v-btn>
</template>
<template #next>
<v-btn @click="createRecipeFromImport()" color="success" :disabled="Object.keys(importResponse).length == 0" v-if="stepper == '1'">{{$t('Import')}}</v-btn>
<v-btn @click="createRecipeFromImport()" color="success" :disabled="Object.keys(importResponse).length == 0" v-if="stepper == '1'">
{{ $t('Import') }}
</v-btn>
<v-btn @click="stepper = (parseInt(stepper) + 1).toString()" :disabled="Object.keys(importResponse).length == 0" v-if="stepper != '5'">
{{ stepper == '1' ? $t('Edit') : $t('Next') }}
</v-btn>
@@ -211,7 +215,7 @@
<script lang="ts" setup>
import {nextTick, ref} from "vue";
import {nextTick, onMounted, ref} from "vue";
import {ApiApi, Keyword, RecipeFromSourceResponse, type SourceImportIngredient, SourceImportKeyword, SourceImportStep} from "@/openapi";
import {ErrorMessageType, MessageType, useMessageStore} from "@/stores/MessageStore";
import {useRouter} from "vue-router";
@@ -223,7 +227,9 @@ import {VNumberInput} from 'vuetify/labs/VNumberInput'
import {useFileApi} from "@/composables/useFileApi";
import ModelSelect from "@/components/inputs/ModelSelect.vue";
import {useDisplay} from "vuetify";
import {useUrlSearchParams} from "@vueuse/core";
const params = useUrlSearchParams('history', {})
const {mobile} = useDisplay()
const router = useRouter()
const {updateRecipeImage, convertImageToRecipe, fileApiLoading} = useFileApi()
@@ -234,13 +240,25 @@ const loading = ref(false)
const importUrl = ref("")
const image = ref<null | File>(null)
const importResponse = ref({} as RecipeFromSourceResponse)
const keywordSelect = ref<null | SourceImportKeyword>(null)
const editingIngredient = ref({} as SourceImportIngredient)
onMounted(() => {
// handle manifest share intend passing url to import page
if (params.url && typeof params.url === "string") {
importUrl.value = params.url
loadRecipeFromUrl()
}
if (params.text && typeof params.text === "string") {
importUrl.value = params.text
loadRecipeFromUrl()
}
})
/**
* call server to load recipe from a given URl
*/