diff --git a/vue3/src/components/dialogs/BatchDeleteDialog.vue b/vue3/src/components/dialogs/BatchDeleteDialog.vue new file mode 100644 index 000000000..6aba1d2a6 --- /dev/null +++ b/vue3/src/components/dialogs/BatchDeleteDialog.vue @@ -0,0 +1,98 @@ + + + + + + \ No newline at end of file diff --git a/vue3/src/components/dialogs/ModelMergeDialog.vue b/vue3/src/components/dialogs/ModelMergeDialog.vue index edaebafe4..cdc87c932 100644 --- a/vue3/src/components/dialogs/ModelMergeDialog.vue +++ b/vue3/src/components/dialogs/ModelMergeDialog.vue @@ -30,7 +30,7 @@ - {{ $t('Cancel') }} + {{ $t('Cancel') }} {{ $t('Merge') }} diff --git a/vue3/src/locales/ar.json b/vue3/src/locales/ar.json index 517edcfdb..91760493a 100644 --- a/vue3/src/locales/ar.json +++ b/vue3/src/locales/ar.json @@ -19,6 +19,8 @@ "Auto_Planner": "", "Automate": "", "Automation": "", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "", "Books": "", "CREATE_ERROR": "", diff --git a/vue3/src/locales/bg.json b/vue3/src/locales/bg.json index 4dc14e5e0..1a4f7def1 100644 --- a/vue3/src/locales/bg.json +++ b/vue3/src/locales/bg.json @@ -19,6 +19,8 @@ "Auto_Planner": "Автоматичен плановик", "Automate": "Автоматизация", "Automation": "Автоматизация", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "Книжен пазар", "Books": "Книги", "CREATE_ERROR": "", diff --git a/vue3/src/locales/ca.json b/vue3/src/locales/ca.json index 47873a831..032103dca 100644 --- a/vue3/src/locales/ca.json +++ b/vue3/src/locales/ca.json @@ -26,6 +26,8 @@ "Automate": "Automatitzar", "Automation": "Automatizació", "Back": "Enrere", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "Marcadors", "Books": "Llibres", "CREATE_ERROR": "", diff --git a/vue3/src/locales/cs.json b/vue3/src/locales/cs.json index b7483f48f..c2c5776b7 100644 --- a/vue3/src/locales/cs.json +++ b/vue3/src/locales/cs.json @@ -26,6 +26,8 @@ "Automate": "Automatizovat", "Automation": "Automatizace", "Back": "Zpět", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "Skript v záložce", "Books": "Kuchařky", "CREATE_ERROR": "", diff --git a/vue3/src/locales/da.json b/vue3/src/locales/da.json index 1e61dce20..b816e4aa0 100644 --- a/vue3/src/locales/da.json +++ b/vue3/src/locales/da.json @@ -26,6 +26,8 @@ "Automate": "Automatiser", "Automation": "Automatisering", "Back": "Tilbage", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "Bogmærke", "Books": "Bøger", "CREATE_ERROR": "", diff --git a/vue3/src/locales/de.json b/vue3/src/locales/de.json index eda0f1855..c0643bae3 100644 --- a/vue3/src/locales/de.json +++ b/vue3/src/locales/de.json @@ -46,6 +46,8 @@ "BaseUnit": "Basiseinheit", "BaseUnitHelp": "Optionale Standardeinheit zur automatischen Umrechnung", "Basics": "Grundlagen", + "BatchDeleteConfirm": "Möchtest du alle angezeigten Objekte löschen? Dies kann nicht rückgängig gemacht werden!", + "BatchDeleteHelp": "Wenn ein Objekt nicht gelöscht werden kann, wird es noch irgendwo verwendet. ", "Book": "Buch", "Bookmarklet": "Lesezeichen", "BookmarkletHelp1": "Schiebe den Knopf in deine Lesezeichenleiste", diff --git a/vue3/src/locales/el.json b/vue3/src/locales/el.json index 4c646371e..3f16b9fa0 100644 --- a/vue3/src/locales/el.json +++ b/vue3/src/locales/el.json @@ -26,6 +26,8 @@ "Automate": "Αυτοματοποίηση", "Automation": "Αυτοματισμός", "Back": "Πίσω", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "Bookmarklet", "Books": "Βιβλία", "CREATE_ERROR": "", diff --git a/vue3/src/locales/en.json b/vue3/src/locales/en.json index eb2f59e32..5327b3f1e 100644 --- a/vue3/src/locales/en.json +++ b/vue3/src/locales/en.json @@ -44,6 +44,8 @@ "BaseUnit": "Base Unit", "BaseUnitHelp": "Standard unit for automatic unit conversion", "Basics": "Basics", + "BatchDeleteConfirm": "Do you want to delete all shown items? This cannot be undone!", + "BatchDeleteHelp": "If an item cannot be deleted it is used somewhere. ", "Book": "Book", "Bookmarklet": "Bookmarklet", "BookmarkletHelp1": "Drag the following button to your bookmarks bar", diff --git a/vue3/src/locales/es.json b/vue3/src/locales/es.json index 268a84ddb..9d5ab7e46 100644 --- a/vue3/src/locales/es.json +++ b/vue3/src/locales/es.json @@ -43,6 +43,8 @@ "BaseUnit": "Unidad base", "BaseUnitHelp": "Unidad estándar para la conversión automática de unidades", "Basics": "Básicos", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Book": "Libro", "Bookmarklet": "Marcador ejecutable", "BookmarkletHelp1": "Arrastra el siguiente botón a tu barra de marcadores", diff --git a/vue3/src/locales/fi.json b/vue3/src/locales/fi.json index d728fca04..94e147cca 100644 --- a/vue3/src/locales/fi.json +++ b/vue3/src/locales/fi.json @@ -27,6 +27,8 @@ "Automate": "Automatisoi", "Automation": "Automaatio", "Back": "Takaisin", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "Kirjamerkki", "Books": "Kirjat", "CREATE_ERROR": "", diff --git a/vue3/src/locales/fr.json b/vue3/src/locales/fr.json index 29619c58c..1c2dceae5 100644 --- a/vue3/src/locales/fr.json +++ b/vue3/src/locales/fr.json @@ -45,6 +45,8 @@ "BaseUnit": "Unité de base", "BaseUnitHelp": "Unité standard pour la conversion automatique des unités", "Basics": "Les bases", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Book": "Livre", "Bookmarklet": "Signet", "BookmarkletHelp1": "Faites glisser le bouton suivant dans votre barre de signets", diff --git a/vue3/src/locales/he.json b/vue3/src/locales/he.json index e08a5f8e5..1aabff0b8 100644 --- a/vue3/src/locales/he.json +++ b/vue3/src/locales/he.json @@ -26,6 +26,8 @@ "Automate": "אוטומט", "Automation": "אוטומטציה", "Back": "חזור", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "סימניה", "Books": "ספרים", "CREATE_ERROR": "", diff --git a/vue3/src/locales/hr.json b/vue3/src/locales/hr.json index 0d5e06ed9..70b4d3022 100644 --- a/vue3/src/locales/hr.json +++ b/vue3/src/locales/hr.json @@ -26,6 +26,8 @@ "Automate": "Automatiziraj", "Automation": "Automatizacija", "Back": "Nazad", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "Knjižna oznaka", "Books": "Knjige", "CREATE_ERROR": "", diff --git a/vue3/src/locales/hu.json b/vue3/src/locales/hu.json index 167d18946..974816025 100644 --- a/vue3/src/locales/hu.json +++ b/vue3/src/locales/hu.json @@ -26,6 +26,8 @@ "Automate": "Automatizálás", "Automation": "Automatizálás", "Back": "Vissza", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "Könyvjelző", "Books": "Könyvek", "CREATE_ERROR": "", diff --git a/vue3/src/locales/hy.json b/vue3/src/locales/hy.json index 4fdfa4827..9f9e93d40 100644 --- a/vue3/src/locales/hy.json +++ b/vue3/src/locales/hy.json @@ -9,6 +9,8 @@ "Advanced Search Settings": "Ընդլայնված փնտրման կարգավորումներ", "Apply": "", "Automate": "Ավտոմատացնել", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Books": "", "CREATE_ERROR": "", "Calories": "", diff --git a/vue3/src/locales/id.json b/vue3/src/locales/id.json index 732e92fb1..fbe630916 100644 --- a/vue3/src/locales/id.json +++ b/vue3/src/locales/id.json @@ -21,6 +21,8 @@ "Auto_Planner": "", "Automate": "", "Automation": "Automatis", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "", "Books": "Buku", "CREATE_ERROR": "", diff --git a/vue3/src/locales/is.json b/vue3/src/locales/is.json index f25f7b737..2abdb1119 100644 --- a/vue3/src/locales/is.json +++ b/vue3/src/locales/is.json @@ -26,6 +26,8 @@ "Automate": "", "Automation": "", "Back": "", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "", "Books": "", "CREATE_ERROR": "", diff --git a/vue3/src/locales/it.json b/vue3/src/locales/it.json index 593f962f0..84cfe010e 100644 --- a/vue3/src/locales/it.json +++ b/vue3/src/locales/it.json @@ -45,6 +45,8 @@ "BaseUnit": "Unità di base", "BaseUnitHelp": "Unità standard per la conversione automatica di unità", "Basics": "Informazioni di base", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Book": "Libro", "Bookmarklet": "Segnalibro", "BookmarkletHelp1": "Trascina il pulsante seguente nella barra dei tuoi segnalibri", diff --git a/vue3/src/locales/lt.json b/vue3/src/locales/lt.json index c951b9bf6..c281eb325 100644 --- a/vue3/src/locales/lt.json +++ b/vue3/src/locales/lt.json @@ -26,6 +26,8 @@ "Automate": "", "Automation": "", "Back": "", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "", "Books": "", "CREATE_ERROR": "", diff --git a/vue3/src/locales/lv.json b/vue3/src/locales/lv.json index f4f7e013c..f33854fa5 100644 --- a/vue3/src/locales/lv.json +++ b/vue3/src/locales/lv.json @@ -26,6 +26,8 @@ "Automate": "", "Automation": "", "Back": "", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "", "Books": "", "CREATE_ERROR": "", diff --git a/vue3/src/locales/nb_NO.json b/vue3/src/locales/nb_NO.json index 97ae02d44..d0ce09b04 100644 --- a/vue3/src/locales/nb_NO.json +++ b/vue3/src/locales/nb_NO.json @@ -25,6 +25,8 @@ "Auto_Sort_Help": "Flytt alle ingredienser til det mest passende steget.", "Automate": "Automatiser", "Automation": "Automatiser", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "", "Books": "Bøker", "CREATE_ERROR": "", diff --git a/vue3/src/locales/nl.json b/vue3/src/locales/nl.json index 2478035e3..90ff0fec5 100644 --- a/vue3/src/locales/nl.json +++ b/vue3/src/locales/nl.json @@ -46,6 +46,8 @@ "BaseUnit": "Basiseenheid", "BaseUnitHelp": "Standaardeenheid om automatische eenheden om te rekenen", "Basics": "Basisprincipes", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Book": "Boek", "Bookmarklet": "Bladwijzer", "BookmarkletHelp1": "Sleep de onderstaande knop naar je bladwijzerbalk", diff --git a/vue3/src/locales/pl.json b/vue3/src/locales/pl.json index 4f2e0559b..da62c8b21 100644 --- a/vue3/src/locales/pl.json +++ b/vue3/src/locales/pl.json @@ -43,6 +43,8 @@ "BaseUnit": "Podstawowa jednostka", "BaseUnitHelp": "Standardowa jednostka dla automatyczne konwersji jednostek", "Basics": "Podstawy", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Book": "Książka", "Bookmarklet": "Skryptozakładka", "BookmarkletHelp1": "Przeciągnij następujący przycisk do twojego paska zakładek", diff --git a/vue3/src/locales/pt.json b/vue3/src/locales/pt.json index 4602a6835..067a25960 100644 --- a/vue3/src/locales/pt.json +++ b/vue3/src/locales/pt.json @@ -21,6 +21,8 @@ "Auto_Sort_Help": "Mover todos os ingredientes para o passo mais indicado.", "Automate": "Automatizar", "Automation": "Automação", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Books": "Livros", "CREATE_ERROR": "", "Calculator": "Calculadora", diff --git a/vue3/src/locales/pt_BR.json b/vue3/src/locales/pt_BR.json index 39643518c..e9a440e55 100644 --- a/vue3/src/locales/pt_BR.json +++ b/vue3/src/locales/pt_BR.json @@ -44,6 +44,8 @@ "BaseUnit": "Unidade Base", "BaseUnitHelp": "Unidade padrão para conversão de unidades", "Basics": "Básicos", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Book": "Livro", "Bookmarklet": "Marcador", "BookmarkletHelp1": "Arraste o seguinte botão para sua barra de favoritos", diff --git a/vue3/src/locales/ro.json b/vue3/src/locales/ro.json index a778d5457..029e88501 100644 --- a/vue3/src/locales/ro.json +++ b/vue3/src/locales/ro.json @@ -25,6 +25,8 @@ "Auto_Sort_Help": "Mutați toate ingredientele la cel mai potrivit pas.", "Automate": "Automatizat", "Automation": "Automatizare", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "Marcaj", "Books": "Cărți", "CREATE_ERROR": "", diff --git a/vue3/src/locales/ru.json b/vue3/src/locales/ru.json index 7ffd171a7..42a3dea64 100644 --- a/vue3/src/locales/ru.json +++ b/vue3/src/locales/ru.json @@ -45,6 +45,8 @@ "BaseUnit": "Базовая единица измерения", "BaseUnitHelp": "Стандартная единица для автоконвертации", "Basics": "Основные понятия", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Book": "Книга", "Bookmarklet": "Букмарклет", "BookmarkletHelp1": "Перетащите эту кнопку в панель закладок", diff --git a/vue3/src/locales/sl.json b/vue3/src/locales/sl.json index d26a37ce2..98080d7ad 100644 --- a/vue3/src/locales/sl.json +++ b/vue3/src/locales/sl.json @@ -45,6 +45,8 @@ "BaseUnit": "Osnovna enota", "BaseUnitHelp": "Standardna enota za samodejno pretvorbo enot", "Basics": "Osnove", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Book": "Knjiga", "Bookmarklet": "Zaznamek", "BookmarkletHelp1": "Povlecite naslednji gumb v vrstico z zaznamki", diff --git a/vue3/src/locales/sv.json b/vue3/src/locales/sv.json index bdb879e18..828219842 100644 --- a/vue3/src/locales/sv.json +++ b/vue3/src/locales/sv.json @@ -44,6 +44,8 @@ "BaseUnit": "Basenhet", "BaseUnitHelp": "Standardenhet för automatisk enhetsomvandling", "Basics": "Grunderna", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Book": "Bok", "Bookmarklet": "Bokmärke", "BookmarkletHelp1": "Dra följande knapp till ditt bokmärkesfält", diff --git a/vue3/src/locales/tr.json b/vue3/src/locales/tr.json index 7852ac7a4..895b3c067 100644 --- a/vue3/src/locales/tr.json +++ b/vue3/src/locales/tr.json @@ -26,6 +26,8 @@ "Automate": "Otomatikleştir", "Automation": "Otomasyon", "Back": "Geri", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "Yer İmi", "Books": "Kitaplar", "CREATE_ERROR": "", diff --git a/vue3/src/locales/uk.json b/vue3/src/locales/uk.json index fda1091ae..731f51cd5 100644 --- a/vue3/src/locales/uk.json +++ b/vue3/src/locales/uk.json @@ -23,6 +23,8 @@ "Auto_Sort_Help": "Перемістити всі інгредієнти до більш підходящого кроку.", "Automate": "Автоматично", "Automation": "Автоматизація", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "", "Books": "Книги", "CREATE_ERROR": "", diff --git a/vue3/src/locales/zh_Hans.json b/vue3/src/locales/zh_Hans.json index 2255215ae..9946d107a 100644 --- a/vue3/src/locales/zh_Hans.json +++ b/vue3/src/locales/zh_Hans.json @@ -26,6 +26,8 @@ "Automate": "自动化", "Automation": "自动化", "Back": "后退", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Bookmarklet": "书签", "Books": "烹饪手册", "CREATE_ERROR": "", diff --git a/vue3/src/locales/zh_Hant.json b/vue3/src/locales/zh_Hant.json index 170dc5022..9e1251e77 100644 --- a/vue3/src/locales/zh_Hant.json +++ b/vue3/src/locales/zh_Hant.json @@ -44,6 +44,8 @@ "BaseUnit": "基礎單位", "BaseUnitHelp": "自動單位轉換的標準單位", "Basics": "基礎", + "BatchDeleteConfirm": "", + "BatchDeleteHelp": "", "Book": "書籍", "Bookmarklet": "書籤小工具", "BookmarkletHelp1": "將以下按鈕拖到您的書籤欄中", diff --git a/vue3/src/pages/ModelListPage.vue b/vue3/src/pages/ModelListPage.vue index 09db0cd53..510be6a09 100644 --- a/vue3/src/pages/ModelListPage.vue +++ b/vue3/src/pages/ModelListPage.vue @@ -36,9 +36,10 @@ - + - - - + @@ -99,7 +112,7 @@ import {onBeforeMount, PropType, ref, watch} from "vue"; import {ErrorMessageType, useMessageStore} from "@/stores/MessageStore"; import {useI18n} from "vue-i18n"; -import {EditorSupportedModels, GenericModel, getGenericModelFromString, Model,} from "@/types/Models"; +import {EditorSupportedModels, EditorSupportedTypes, GenericModel, getGenericModelFromString, Model,} from "@/types/Models"; import ModelEditDialog from "@/components/dialogs/ModelEditDialog.vue"; import {useRoute, useRouter} from "vue-router"; import {useUserPreferenceStore} from "@/stores/UserPreferenceStore"; @@ -108,6 +121,9 @@ import {VDataTableUpdateOptions} from "@/vuetify"; import SyncDialog from "@/components/dialogs/SyncDialog.vue"; import {ApiApi, RecipeImport} from "@/openapi"; import {useTitle} from "@vueuse/core"; +import RecipeShareDialog from "@/components/dialogs/RecipeShareDialog.vue"; +import AddToShoppingDialog from "@/components/dialogs/AddToShoppingDialog.vue"; +import BatchDeleteDialog from "@/components/dialogs/BatchDeleteDialog.vue"; const {t} = useI18n() const router = useRouter() @@ -130,8 +146,9 @@ const itemsPerPageOptions = [ const tablePage = ref(1) -const tableShowSelect = ref(true) -const selectedItems = ref([] as GenericModel[]) +const selectedItems = ref([] as EditorSupportedTypes[]) + +const batchDeleteDialog = ref(false) // data const loading = ref(false); @@ -185,6 +202,7 @@ onBeforeMount(() => { function loadItems(options: VDataTableUpdateOptions) { loading.value = true + selectedItems.value = [] window.scrollTo({top: 0, behavior: 'smooth'}) if (tablePage.value != options.page) {