mirror of
https://github.com/TandoorRecipes/recipes.git
synced 2025-12-24 02:39:20 -05:00
more models and model select with new system
This commit is contained in:
@@ -1,18 +1,19 @@
|
||||
<template>
|
||||
<v-dialog max-width="600" activator="parent" v-model="dialog">
|
||||
<unit-conversion-editor :item="item" @create="createEvent" @save="saveEvent" @delete="deleteEvent" dialog @close="dialog = false" v-if="model == SupportedModels.UnitConversion" :disabled-fields="disabledFields"></unit-conversion-editor>
|
||||
<access-token-editor :item="item" @create="createEvent" @save="saveEvent" @delete="deleteEvent" dialog @close="dialog = false" v-if="model == SupportedModels.AccessToken"></access-token-editor>
|
||||
<invite-link-editor :item="item" @create="createEvent" @save="saveEvent" @delete="deleteEvent" dialog @close="dialog = false" v-if="model == SupportedModels.InviteLink"></invite-link-editor>
|
||||
<user-space-editor :item="item" @create="createEvent" @save="saveEvent" @delete="deleteEvent" dialog @close="dialog = false" v-if="model == SupportedModels.UserSpace"></user-space-editor>
|
||||
<meal-type-editor :item="item" @create="createEvent" @save="saveEvent" @delete="deleteEvent" dialog @close="dialog = false" v-if="model == SupportedModels.MealType"></meal-type-editor>
|
||||
<property-editor :item="item" @create="createEvent" @save="saveEvent" @delete="deleteEvent" dialog @close="dialog = false" v-if="model == SupportedModels.Property"></property-editor>
|
||||
<unit-conversion-editor :item="item" @create="createEvent" @save="saveEvent" @delete="deleteEvent" dialog @close="dialog = false" v-if="model == 'UnitConversion'" :disabled-fields="disabledFields"></unit-conversion-editor>
|
||||
<access-token-editor :item="item" @create="createEvent" @save="saveEvent" @delete="deleteEvent" dialog @close="dialog = false" v-if="model == 'AccessToken'"></access-token-editor>
|
||||
<invite-link-editor :item="item" @create="createEvent" @save="saveEvent" @delete="deleteEvent" dialog @close="dialog = false" v-if="model == 'InviteLink'"></invite-link-editor>
|
||||
<user-space-editor :item="item" @create="createEvent" @save="saveEvent" @delete="deleteEvent" dialog @close="dialog = false" v-if="model == 'UserSpace'"></user-space-editor>
|
||||
<meal-type-editor :item="item" @create="createEvent" @save="saveEvent" @delete="deleteEvent" dialog @close="dialog = false" v-if="model == 'MealType'"></meal-type-editor>
|
||||
<property-editor :item="item" @create="createEvent" @save="saveEvent" @delete="deleteEvent" dialog @close="dialog = false" v-if="model == 'Property'"></property-editor>
|
||||
<food-editor :item="item" @create="createEvent" @save="saveEvent" @delete="deleteEvent" dialog @close="dialog = false" v-if="model == 'Food'"></food-editor>
|
||||
</v-dialog>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
|
||||
|
||||
import {ref} from "vue";
|
||||
import {PropType, ref} from "vue";
|
||||
import AccessTokenEditor from "@/components/model_editors/AccessTokenEditor.vue";
|
||||
import {AccessToken, Food} from "@/openapi";
|
||||
import InviteLinkEditor from "@/components/model_editors/InviteLinkEditor.vue";
|
||||
@@ -20,21 +21,13 @@ import UserSpaceEditor from "@/components/model_editors/UserSpaceEditor.vue";
|
||||
import MealTypeEditor from "@/components/model_editors/MealTypeEditor.vue";
|
||||
import PropertyEditor from "@/components/model_editors/PropertyEditor.vue";
|
||||
import UnitConversionEditor from "@/components/model_editors/UnitConversionEditor.vue";
|
||||
|
||||
enum SupportedModels {
|
||||
UnitConversion = 'UnitConversion',
|
||||
AccessToken = 'AccessToken',
|
||||
InviteLink = 'InviteLink',
|
||||
UserSpace = 'UserSpace',
|
||||
MealType = 'MealType',
|
||||
Property = 'Property',
|
||||
}
|
||||
import FoodEditor from "@/components/model_editors/FoodEditor.vue";
|
||||
|
||||
const emit = defineEmits(['create', 'save', 'delete'])
|
||||
|
||||
const props = defineProps({
|
||||
model: {
|
||||
type: String,
|
||||
type: String as PropType<'UnitConversion' | 'AccessToken'| 'InviteLink' | 'UserSpace' | 'MealType' | 'Property' | 'Food'>,
|
||||
required: true,
|
||||
},
|
||||
item: {default: null},
|
||||
@@ -46,17 +39,17 @@ const props = defineProps({
|
||||
|
||||
const dialog = ref(false)
|
||||
|
||||
function createEvent(arg) {
|
||||
function createEvent(arg: any) {
|
||||
emit('create', arg)
|
||||
dialog.value = dialog.value && !props.closeAfterCreate
|
||||
}
|
||||
|
||||
function saveEvent(arg) {
|
||||
function saveEvent(arg: any) {
|
||||
emit('save', arg)
|
||||
dialog.value = dialog.value && !props.closeAfterSave
|
||||
}
|
||||
|
||||
function deleteEvent(arg) {
|
||||
function deleteEvent(arg: any) {
|
||||
emit('delete', arg)
|
||||
dialog.value = dialog.value && !props.closeAfterDelete
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
|
||||
<script lang="ts" setup>
|
||||
import {onMounted, PropType, ref} from "vue"
|
||||
import {GenericModel, getModelFromStr} from "@/types/Models"
|
||||
import {GenericModel, getGenericModelFromString} from "@/types/Models"
|
||||
import Multiselect from '@vueform/multiselect'
|
||||
import {ErrorMessageType, MessageType, useMessageStore} from "@/stores/MessageStore";
|
||||
|
||||
@@ -81,13 +81,13 @@ const props = defineProps({
|
||||
})
|
||||
|
||||
const model = defineModel()
|
||||
const model_class = ref({} as GenericModel<any>)
|
||||
const modelClass = ref({} as GenericModel<any>)
|
||||
|
||||
/**
|
||||
* create instance of model class when mounted
|
||||
*/
|
||||
onMounted(() => {
|
||||
model_class.value = getModelFromStr(props.model)
|
||||
modelClass.value = getGenericModelFromString(props.model)
|
||||
})
|
||||
|
||||
/**
|
||||
@@ -95,8 +95,12 @@ onMounted(() => {
|
||||
* @param query input to search for on the API
|
||||
*/
|
||||
function search(query: string) {
|
||||
return model_class.value.list(query).then((r) => {
|
||||
return r
|
||||
return modelClass.value.list({query: query}).then((r) => {
|
||||
if (modelClass.value.model.isPaginated) {
|
||||
return r.results
|
||||
} else {
|
||||
return r
|
||||
}
|
||||
}).catch((err) => {
|
||||
useMessageStore().addError(ErrorMessageType.FETCH_ERROR, err)
|
||||
}).finally(() => {
|
||||
@@ -111,21 +115,13 @@ function search(query: string) {
|
||||
* @param select$ reference to multiselect instance
|
||||
*/
|
||||
async function createObject(object: any, select$: Multiselect) {
|
||||
if (model_class.value.canCreate()) {
|
||||
console.log("CREATING NEW with -> ", object)
|
||||
|
||||
return await modelClass.value.create({name: object[props.itemLabel]}).then((createdObj) => {
|
||||
useMessageStore().addMessage(MessageType.SUCCESS, 'Created', 5000, createdObj)
|
||||
emit('create', object)
|
||||
|
||||
return await model_class.value.create(object[props.itemLabel]).then((createdObj) => {
|
||||
useMessageStore().addMessage(MessageType.SUCCESS, 'Created', 5000, createdObj)
|
||||
return createdObj
|
||||
}).catch((err) => {
|
||||
useMessageStore().addError(ErrorMessageType.CREATE_ERROR, err)
|
||||
})
|
||||
} else {
|
||||
console.error('Cannot create using model, should probably set can_create prop to false or fix model ', model_class)
|
||||
}
|
||||
|
||||
return createdObj
|
||||
}).catch((err) => {
|
||||
useMessageStore().addError(ErrorMessageType.CREATE_ERROR, err)
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
"Coming_Soon": "",
|
||||
"Completed": "",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "",
|
||||
"Copy Link": "",
|
||||
"Copy Token": "",
|
||||
@@ -101,6 +102,7 @@
|
||||
"Hide_Keywords": "",
|
||||
"Hide_Recipes": "",
|
||||
"Hide_as_header": "",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Icon": "",
|
||||
"IgnoreThis": "",
|
||||
@@ -282,6 +284,7 @@
|
||||
"Type": "",
|
||||
"Undefined": "",
|
||||
"Unit": "",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "",
|
||||
"Units": "",
|
||||
"Unrated": "",
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
"Coming_Soon": "Очаквайте скоро",
|
||||
"Completed": "Завършено",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Копиране",
|
||||
"Copy_template_reference": "Копирайте препратка към шаблона",
|
||||
"CountMore": "...+{count} още",
|
||||
@@ -98,6 +99,7 @@
|
||||
"Hide_Keywords": "Скриване на ключова дума",
|
||||
"Hide_Recipes": "Скриване на рецепти",
|
||||
"Hide_as_header": "Скриване като заглавка",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Icon": "Икона",
|
||||
"IgnoreThis": "Никога не добавяйте автоматично {food} към пазаруване",
|
||||
@@ -275,6 +277,7 @@
|
||||
"Type": "Тип",
|
||||
"Undefined": "Недефиниран",
|
||||
"Unit": "Единица",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Псевдоним на единица",
|
||||
"Units": "Единици",
|
||||
"Unrated": "Без оценка",
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
"Completed": "",
|
||||
"Conversion": "",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "",
|
||||
"Copy Link": "",
|
||||
"Copy Token": "",
|
||||
@@ -141,6 +142,7 @@
|
||||
"Hide_Keywords": "Amagueu paraula clau",
|
||||
"Hide_Recipes": "Amagueu receptes",
|
||||
"Hide_as_header": "Amagueu com a títol",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "",
|
||||
"Hours": "",
|
||||
@@ -369,6 +371,7 @@
|
||||
"Undefined": "",
|
||||
"Undo": "",
|
||||
"Unit": "",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "",
|
||||
"Unit_Replace": "",
|
||||
"Units": "",
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
"Completed": "Dokončeno",
|
||||
"Conversion": "Převod",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Kopírovat",
|
||||
"Copy Link": "Kopírovat odkaz",
|
||||
"Copy Token": "Kopírovat token",
|
||||
@@ -141,6 +142,7 @@
|
||||
"Hide_Keywords": "Skrýt štítek",
|
||||
"Hide_Recipes": "Skrýt recept",
|
||||
"Hide_as_header": "Skryj jako nadpis",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "Hodina",
|
||||
"Hours": "Hodiny",
|
||||
@@ -363,6 +365,7 @@
|
||||
"Type": "Typ",
|
||||
"Undefined": "Neurčeno",
|
||||
"Unit": "Jednotka",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Přezdívka jednotky",
|
||||
"Unit_Replace": "Nahrazení v jednotce",
|
||||
"Units": "Jednotky",
|
||||
|
||||
@@ -50,6 +50,7 @@
|
||||
"Completed": "Afsluttet",
|
||||
"Conversion": "Konversion",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Kopier",
|
||||
"Copy Link": "Kopier link",
|
||||
"Copy Token": "Kopier token",
|
||||
@@ -129,6 +130,7 @@
|
||||
"Hide_Keywords": "Skjul nøgleord",
|
||||
"Hide_Recipes": "Skjul opskrifter",
|
||||
"Hide_as_header": "Skjul som rubrik",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "Time",
|
||||
"Hours": "Timer",
|
||||
@@ -341,6 +343,7 @@
|
||||
"Type": "Type",
|
||||
"Undefined": "Ikke defineret",
|
||||
"Unit": "Enhed",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Alternativt navn til enhed",
|
||||
"Unit_Replace": "Erstat enhed",
|
||||
"Units": "Enheder",
|
||||
|
||||
@@ -52,6 +52,7 @@
|
||||
"Completed": "Fertig",
|
||||
"Conversion": "Umrechnung",
|
||||
"ConversionsHelp": "Mit Umrechnungen kann die Menge einens Lebensmittels in verschiedenen Einheiten ausgerechnet werden. Aktuell wird dies nur zur berechnung von Eigenschaften verwendet, später jedoch sollen auch andere Funktionen von Tandoor davon profitieren.",
|
||||
"CookLog": "Kochprotokoll",
|
||||
"Copy": "Kopieren",
|
||||
"Copy Link": "Link Kopieren",
|
||||
"Copy Token": "Kopiere Token",
|
||||
@@ -143,6 +144,7 @@
|
||||
"Hide_Keywords": "Schlagwort verstecken",
|
||||
"Hide_Recipes": "Rezepte verstecken",
|
||||
"Hide_as_header": "Keine Überschrift",
|
||||
"History": "Verlauf",
|
||||
"HostedFreeVersion": "Sie verwenden die kostenlose Testversion von Tandoor",
|
||||
"Hour": "Stunde",
|
||||
"Hours": "Stunden",
|
||||
@@ -371,6 +373,7 @@
|
||||
"Undefined": "undefiniert",
|
||||
"Undo": "Rückgängig",
|
||||
"Unit": "Einheit",
|
||||
"UnitConversion": "Umrechnung",
|
||||
"Unit_Alias": "Einheit Alias",
|
||||
"Unit_Replace": "Einheit Ersetzen",
|
||||
"Units": "Einheiten",
|
||||
|
||||
@@ -49,6 +49,7 @@
|
||||
"Completed": "Ολοκληρωμένο",
|
||||
"Conversion": "Μετατροπή",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Αντιγραφή",
|
||||
"Copy Link": "Αντιγραφή συνδέσμου",
|
||||
"Copy Token": "Αντιγραφή token",
|
||||
@@ -124,6 +125,7 @@
|
||||
"Hide_Keywords": "Απόκρυψη λέξης-κλειδί",
|
||||
"Hide_Recipes": "Απόκρυψη συνταγών",
|
||||
"Hide_as_header": "Απόκρυψη ως κεφαλίδα",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "Ώρα",
|
||||
"Hours": "Ώρες",
|
||||
@@ -331,6 +333,7 @@
|
||||
"Type": "Είδος",
|
||||
"Undefined": "Απροσδιόριστο",
|
||||
"Unit": "Μονάδα μέτρησης",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Ψευδώνυμο μονάδας μέτρησης",
|
||||
"Units": "Μονάδες μέτρησης",
|
||||
"Unpin": "Αφαίρεση καρφιτσώματος",
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
"Completed": "Completed",
|
||||
"Conversion": "Conversion",
|
||||
"ConversionsHelp": "With conversions you can calculate the amount of a food in different units. Currently this is only used for property calculation, later it might also be used in other parts of tandoor. ",
|
||||
"CookLog": "Cook Log",
|
||||
"Copy": "Copy",
|
||||
"Copy Link": "Copy Link",
|
||||
"Copy Token": "Copy Token",
|
||||
@@ -142,6 +143,7 @@
|
||||
"Hide_Keywords": "Hide Keyword",
|
||||
"Hide_Recipes": "Hide Recipes",
|
||||
"Hide_as_header": "Hide as header",
|
||||
"History": "History",
|
||||
"HostedFreeVersion": "You are using the free version of Tandoor",
|
||||
"Hour": "Hour",
|
||||
"Hours": "Hours",
|
||||
@@ -373,6 +375,7 @@
|
||||
"Undefined": "Undefined",
|
||||
"Undo": "Undo",
|
||||
"Unit": "Unit",
|
||||
"UnitConversion": "Unit Conversion",
|
||||
"Unit_Alias": "Unit Alias",
|
||||
"Unit_Replace": "Unit Replace",
|
||||
"Units": "Units",
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
"Completed": "Completado",
|
||||
"Conversion": "Conversión",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Copiar",
|
||||
"Copy Link": "Copiar Enlace",
|
||||
"Copy Token": "Copiar Token",
|
||||
@@ -142,6 +143,7 @@
|
||||
"Hide_Keywords": "Esconder palabra clave",
|
||||
"Hide_Recipes": "Esconder recetas",
|
||||
"Hide_as_header": "Esconder como titulo",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "Hora",
|
||||
"Hours": "Horas",
|
||||
@@ -368,6 +370,7 @@
|
||||
"Undefined": "Indefinido",
|
||||
"Undo": "Deshacer",
|
||||
"Unit": "Unidad",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Unidad alias",
|
||||
"Unit_Replace": "Sustituir Unidad",
|
||||
"Units": "Unidades",
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
"Color": "Väri",
|
||||
"Coming_Soon": "Tulossa pian",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Kopioi",
|
||||
"Copy_template_reference": "Kopioi malliviittaus",
|
||||
"Create": "Luo",
|
||||
@@ -70,6 +71,7 @@
|
||||
"Hide_Keywords": "Piilota Avainsana",
|
||||
"Hide_Recipes": "Piilota Reseptit",
|
||||
"Hide_as_header": "Piilota otsikko",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Icon": "Kuvake",
|
||||
"Ignore_Shopping": "Ohita Ostokset",
|
||||
@@ -196,6 +198,7 @@
|
||||
"Tuesday": "",
|
||||
"Type": "Tyyppi",
|
||||
"Unit": "Yksikkö",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Yksikköalias",
|
||||
"Unrated": "Luokittelematon",
|
||||
"UpgradeNow": "",
|
||||
|
||||
@@ -50,6 +50,7 @@
|
||||
"Completed": "Achevé",
|
||||
"Conversion": "Conversion",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Copier",
|
||||
"Copy Link": "Copier le lien",
|
||||
"Copy Token": "Copier le jeton",
|
||||
@@ -141,6 +142,7 @@
|
||||
"Hide_Keywords": "Cacher le mot-clé",
|
||||
"Hide_Recipes": "Cacher les recettes",
|
||||
"Hide_as_header": "Cacher comme en-tête",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "Heure",
|
||||
"Hours": "Heures",
|
||||
@@ -368,6 +370,7 @@
|
||||
"Undefined": "Indéfini",
|
||||
"Undo": "annuler",
|
||||
"Unit": "Unité",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Alias pour les unités",
|
||||
"Unit_Replace": "Remplacer l'Unité",
|
||||
"Units": "Unités",
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
"Completed": "הושלם",
|
||||
"Conversion": "עברית",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "העתקה",
|
||||
"Copy Link": "העתק קישור",
|
||||
"Copy Token": "העתק טוקן",
|
||||
@@ -142,6 +143,7 @@
|
||||
"Hide_Keywords": "הסתרת מילת מפתח",
|
||||
"Hide_Recipes": "הסתרת מתכונים",
|
||||
"Hide_as_header": "הסתר בתור כותרת",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "שעה",
|
||||
"Hours": "שעות",
|
||||
@@ -370,6 +372,7 @@
|
||||
"Undefined": "בלתי מוגדר",
|
||||
"Undo": "שחזר",
|
||||
"Unit": "ערך",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "שם כינוי ליחידה",
|
||||
"Unit_Replace": "החלף יחידה",
|
||||
"Units": "יחידות",
|
||||
|
||||
@@ -50,6 +50,7 @@
|
||||
"Completed": "Kész",
|
||||
"Conversion": "Konverzió",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Másolás",
|
||||
"Copy Link": "Link másolása",
|
||||
"Copy Token": "Token másolása",
|
||||
@@ -125,6 +126,7 @@
|
||||
"Hide_Keywords": "Kulcsszó elrejtése",
|
||||
"Hide_Recipes": "Receptek elrejtése",
|
||||
"Hide_as_header": "Fejlécként elrejtve",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "Óra",
|
||||
"Hours": "Óra",
|
||||
@@ -332,6 +334,7 @@
|
||||
"Type": "Típus",
|
||||
"Undefined": "Meghatározatlan",
|
||||
"Unit": "Mennyiségi egység",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "",
|
||||
"Unit_Replace": "Mértékegység helyettesítés",
|
||||
"Units": "Mennyiségi egységek",
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
"Category": "",
|
||||
"Close": "",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "",
|
||||
"Create": "Ստեղծել",
|
||||
"Create_New_Food": "Ավելացնել նոր սննդամթերք",
|
||||
@@ -48,6 +49,7 @@
|
||||
"Hide_Keywords": "Թաքցնել բանալի բառը",
|
||||
"Hide_Recipes": "Թաքցնել բաղադրատոմսերը",
|
||||
"Hide_as_header": "Թաքցնել որպես խորագիր",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Import": "Ներմուծել",
|
||||
"Import_finished": "Ներմուծումն ավարտված է",
|
||||
@@ -128,6 +130,7 @@
|
||||
"ThanksTextSelfhosted": "",
|
||||
"Thursday": "",
|
||||
"Tuesday": "",
|
||||
"UnitConversion": "",
|
||||
"UpgradeNow": "",
|
||||
"Url_Import": "URL ներմուծում",
|
||||
"Use_Plural_Food_Always": "",
|
||||
|
||||
@@ -42,6 +42,7 @@
|
||||
"Comments_setting": "",
|
||||
"Completed": "",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Salin",
|
||||
"Copy Link": "Salin Tautan",
|
||||
"Copy Token": "Salin Token",
|
||||
@@ -113,6 +114,7 @@
|
||||
"Hide_Keywords": "Sembunyikan Kata Kunci",
|
||||
"Hide_Recipes": "Sembunyikan Resep",
|
||||
"Hide_as_header": "Sembunyikan sebagai tajuk",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "",
|
||||
"Hours": "",
|
||||
@@ -308,6 +310,7 @@
|
||||
"Type": "",
|
||||
"Undefined": "",
|
||||
"Unit": "",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "",
|
||||
"Units": "",
|
||||
"Unrated": "",
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
"Completed": "",
|
||||
"Conversion": "",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "",
|
||||
"Copy Link": "",
|
||||
"Copy Token": "",
|
||||
@@ -141,6 +142,7 @@
|
||||
"Hide_Keywords": "",
|
||||
"Hide_Recipes": "",
|
||||
"Hide_as_header": "",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "",
|
||||
"Hours": "",
|
||||
@@ -368,6 +370,7 @@
|
||||
"Undefined": "",
|
||||
"Undo": "",
|
||||
"Unit": "",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "",
|
||||
"Unit_Replace": "",
|
||||
"Units": "",
|
||||
|
||||
@@ -46,6 +46,7 @@
|
||||
"Comments_setting": "Mostra commenti",
|
||||
"Completed": "Completato",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Copia",
|
||||
"Copy Link": "Copia link",
|
||||
"Copy Token": "Copia token",
|
||||
@@ -118,6 +119,7 @@
|
||||
"Hide_Keywords": "Nascondi parola chiave",
|
||||
"Hide_Recipes": "Nascondi Ricette",
|
||||
"Hide_as_header": "Nascondi come intestazione",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "Ora",
|
||||
"Hours": "Ore",
|
||||
@@ -317,6 +319,7 @@
|
||||
"Type": "Tipo",
|
||||
"Undefined": "Non definito",
|
||||
"Unit": "Unità di misura",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Alias Unità",
|
||||
"Units": "Unità di misura",
|
||||
"Unpin": "Non fissare",
|
||||
|
||||
@@ -50,6 +50,7 @@
|
||||
"Completed": "",
|
||||
"Conversion": "",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "",
|
||||
"Copy Link": "",
|
||||
"Copy Token": "",
|
||||
@@ -127,6 +128,7 @@
|
||||
"Hide_Keywords": "Paslėpti raktažodį",
|
||||
"Hide_Recipes": "Paslėpti receptus",
|
||||
"Hide_as_header": "Slėpti kaip antraštę",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "",
|
||||
"Hours": "",
|
||||
@@ -339,6 +341,7 @@
|
||||
"Type": "",
|
||||
"Undefined": "",
|
||||
"Unit": "",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "",
|
||||
"Unit_Replace": "",
|
||||
"Units": "",
|
||||
|
||||
@@ -48,6 +48,7 @@
|
||||
"Completed": "Fullført",
|
||||
"Conversion": "Omregn enhet",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Kopier",
|
||||
"Copy Link": "Kopier lenke",
|
||||
"Copy Token": "Kopier Token",
|
||||
@@ -122,6 +123,7 @@
|
||||
"Hide_Keywords": "Skjul nøkkelord",
|
||||
"Hide_Recipes": "Skjul oppskrifter",
|
||||
"Hide_as_header": "Skjul overskrift",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "Time",
|
||||
"Hours": "Timer",
|
||||
@@ -329,6 +331,7 @@
|
||||
"Type": "Type",
|
||||
"Undefined": "Udefinert",
|
||||
"Unit": "Enhet",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Enhet Alias",
|
||||
"Units": "Enhet",
|
||||
"Unpin": "Løsne",
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
"Completed": "Voltooid",
|
||||
"Conversion": "Omrekening",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Kopie",
|
||||
"Copy Link": "Kopieer Link",
|
||||
"Copy Token": "Kopieer Token",
|
||||
@@ -126,6 +127,7 @@
|
||||
"Hide_Keywords": "Verberg Etiket",
|
||||
"Hide_Recipes": "Verberg Recepten",
|
||||
"Hide_as_header": "Verberg als koptekst",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "Uur",
|
||||
"Hours": "Uren",
|
||||
@@ -333,6 +335,7 @@
|
||||
"Type": "Type",
|
||||
"Undefined": "Ongedefinieerd",
|
||||
"Unit": "Eenheid",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Eenheid Alias",
|
||||
"Units": "Eenheden",
|
||||
"Unpin": "Pin losmaken",
|
||||
|
||||
@@ -52,6 +52,7 @@
|
||||
"Completed": "Zakończone",
|
||||
"Conversion": "Konwersja",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Kopiuj",
|
||||
"Copy Link": "Skopiuj link",
|
||||
"Copy Token": "Kopiuj Token",
|
||||
@@ -143,6 +144,7 @@
|
||||
"Hide_Keywords": "Ukryj słowo kluczowe",
|
||||
"Hide_Recipes": "Ukryj przepisy",
|
||||
"Hide_as_header": "Ukryj jako nagłówek",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "Godzina",
|
||||
"Hours": "Godziny",
|
||||
@@ -371,6 +373,7 @@
|
||||
"Undefined": "Nieokreślony",
|
||||
"Undo": "Cofnij",
|
||||
"Unit": "Jednostka",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Alias jednostek",
|
||||
"Unit_Replace": "Zastąp jednostkę",
|
||||
"Units": "Jednostki",
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
"Coming_Soon": "",
|
||||
"Completed": "Completo",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Copiar",
|
||||
"Copy Link": "Copiar Ligação",
|
||||
"Copy Token": "Copiar Chave",
|
||||
@@ -100,6 +101,7 @@
|
||||
"Hide_Keywords": "Esconder palavra-chave",
|
||||
"Hide_Recipes": "Esconder Receitas",
|
||||
"Hide_as_header": "Esconder como cabeçalho",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Icon": "Ícone",
|
||||
"IgnoreThis": "Nunca adicionar automaticamente {food} á lista de compras",
|
||||
@@ -269,6 +271,7 @@
|
||||
"Type": "Tipo",
|
||||
"Undefined": "Não definido",
|
||||
"Unit": "Unidade",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Alcunha da unidade",
|
||||
"Units": "Unidades",
|
||||
"Unrated": "Sem classificação",
|
||||
|
||||
@@ -50,6 +50,7 @@
|
||||
"Completed": "Finalizado",
|
||||
"Conversion": "Conversão",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Copiar",
|
||||
"Copy Link": "Copiar Link",
|
||||
"Copy Token": "Copiar Token",
|
||||
@@ -137,6 +138,7 @@
|
||||
"Hide_Keywords": "Esconder palavra-chave",
|
||||
"Hide_Recipes": "Esconder Receitas",
|
||||
"Hide_as_header": "Esconder cabeçalho",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "Hora",
|
||||
"Hours": "Horas",
|
||||
@@ -349,6 +351,7 @@
|
||||
"Undefined": "Indefinido",
|
||||
"Undo": "Desfazer",
|
||||
"Unit": "Unidade",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Apelido da Unidade",
|
||||
"Unit_Replace": "Substituir Unidade",
|
||||
"Units": "Unidades",
|
||||
|
||||
@@ -47,6 +47,7 @@
|
||||
"Comments_setting": "Afișează comentarii",
|
||||
"Completed": "Completat",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Copie",
|
||||
"Copy Link": "Copiere link",
|
||||
"Copy Token": "Copiere token",
|
||||
@@ -120,6 +121,7 @@
|
||||
"Hide_Keywords": "Ascunde cuvânt cheie",
|
||||
"Hide_Recipes": "Ascunde rețetele",
|
||||
"Hide_as_header": "Ascunderea ca antet",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "Oră",
|
||||
"Hours": "Ore",
|
||||
@@ -321,6 +323,7 @@
|
||||
"Type": "Tip",
|
||||
"Undefined": "Nedefinit",
|
||||
"Unit": "Unitate",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Pseudonim unitate",
|
||||
"Units": "Unități",
|
||||
"Unpin": "Anularea fixării",
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
"Coming_Soon": "Скоро",
|
||||
"Completed": "Завершено",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Копировать",
|
||||
"Copy_template_reference": "Скопировать ссылку на шаблон",
|
||||
"CountMore": "...+{count} больше",
|
||||
@@ -89,6 +90,7 @@
|
||||
"Hide_Keywords": "Скрыть ключевое слово",
|
||||
"Hide_Recipes": "Скрыть рецепт",
|
||||
"Hide_as_header": "Скрыть заголовок",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Icon": "Иконка",
|
||||
"IgnoreThis": "Никогда не добавлять {food} в список покупок автоматически",
|
||||
@@ -250,6 +252,7 @@
|
||||
"Type": "Тип",
|
||||
"Undefined": "Неизвестно",
|
||||
"Unit": "Единица измерения",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Единицы измерения",
|
||||
"Units": "Единицы",
|
||||
"Unrated": "Без рейтинга",
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
"Coming_Soon": "Kmalu",
|
||||
"Completed": "Končano",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Kopiraj",
|
||||
"Copy_template_reference": "Kopiraj referenco vzorca",
|
||||
"CountMore": "...+{count} več",
|
||||
@@ -89,6 +90,7 @@
|
||||
"Hide_Keywords": "Skrij ključno besedo",
|
||||
"Hide_Recipes": "Skrij recept",
|
||||
"Hide_as_header": "Skrij kot glavo",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Icon": "Ikona",
|
||||
"IgnoreThis": "Nikoli avtomatsko ne dodaj {food} v nakup",
|
||||
@@ -241,6 +243,7 @@
|
||||
"Type": "Tip",
|
||||
"Undefined": "Nedefiniran",
|
||||
"Unit": "Enota",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Vzdevek enote",
|
||||
"Unrated": "Neocenjeno",
|
||||
"Update_Existing_Data": "Posodobitev Obstoječih Podatkov",
|
||||
|
||||
@@ -52,6 +52,7 @@
|
||||
"Completed": "Avslutad",
|
||||
"Conversion": "Omvandling",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Kopiera",
|
||||
"Copy Link": "Kopiera Länk",
|
||||
"Copy Token": "Kopiera token",
|
||||
@@ -143,6 +144,7 @@
|
||||
"Hide_Keywords": "Dölj nyckelord",
|
||||
"Hide_Recipes": "Dölj recept",
|
||||
"Hide_as_header": "Göm som rubrik",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "Timme",
|
||||
"Hours": "Timmar",
|
||||
@@ -371,6 +373,7 @@
|
||||
"Undefined": "Odefinierad",
|
||||
"Undo": "Ångra",
|
||||
"Unit": "Enhet",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Enhetsalias",
|
||||
"Unit_Replace": "Ersätt enhet",
|
||||
"Units": "Enheter",
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
"Completed": "Tamamlandı",
|
||||
"Conversion": "Dönüşüm",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Kopyala",
|
||||
"Copy Link": "Bağlantıyı Kopyala",
|
||||
"Copy Token": "Anahtarı Kopyala",
|
||||
@@ -142,6 +143,7 @@
|
||||
"Hide_Keywords": "Anahtar Kelimeyi Gizle",
|
||||
"Hide_Recipes": "Tarifleri Gizle",
|
||||
"Hide_as_header": "Başlık olarak gizle",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "Saat",
|
||||
"Hours": "Saatler",
|
||||
@@ -370,6 +372,7 @@
|
||||
"Undefined": "Tanımlanmamış",
|
||||
"Undo": "Geri Al",
|
||||
"Unit": "Birim",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "Birim Takma Adı",
|
||||
"Unit_Replace": "Birim Değiştir",
|
||||
"Units": "Birimler",
|
||||
|
||||
@@ -41,6 +41,7 @@
|
||||
"Coming_Soon": "",
|
||||
"Completed": "Виконано",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "Копіювати",
|
||||
"Copy Link": "Скопіювати Посилання",
|
||||
"Copy Token": "Скопіювати Токен",
|
||||
@@ -107,6 +108,7 @@
|
||||
"Hide_Keywords": "Сховати Ключове слово",
|
||||
"Hide_Recipes": "Сховати Рецепти",
|
||||
"Hide_as_header": "",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Icon": "Іконка",
|
||||
"IgnoreThis": "Ніколи {food} автоматично не додавати до покупок",
|
||||
@@ -291,6 +293,7 @@
|
||||
"Type": "Тип",
|
||||
"Undefined": "Невідомо",
|
||||
"Unit": "Одиниця",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "",
|
||||
"Units": "",
|
||||
"Unrated": "Без рейтингу",
|
||||
|
||||
@@ -50,6 +50,7 @@
|
||||
"Completed": "完成",
|
||||
"Conversion": "转换",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "复制",
|
||||
"Copy Link": "复制链接",
|
||||
"Copy Token": "复制令牌",
|
||||
@@ -138,6 +139,7 @@
|
||||
"Hide_Keywords": "隐藏关键词",
|
||||
"Hide_Recipes": "隐藏食谱",
|
||||
"Hide_as_header": "隐藏标题",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Hour": "小数",
|
||||
"Hours": "小时",
|
||||
@@ -362,6 +364,7 @@
|
||||
"Undefined": "未定义的",
|
||||
"Undo": "撤销",
|
||||
"Unit": "单位",
|
||||
"UnitConversion": "",
|
||||
"Unit_Alias": "单位别名",
|
||||
"Unit_Replace": "单位替换",
|
||||
"Units": "单位",
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
"Category": "",
|
||||
"Close": "",
|
||||
"ConversionsHelp": "",
|
||||
"CookLog": "",
|
||||
"Copy": "",
|
||||
"Copy_template_reference": "複製參考模板",
|
||||
"Create": "",
|
||||
@@ -33,6 +34,7 @@
|
||||
"Files": "",
|
||||
"Friday": "",
|
||||
"Hide_as_header": "隱藏為標題",
|
||||
"History": "",
|
||||
"HostedFreeVersion": "",
|
||||
"Import": "",
|
||||
"Import_finished": "匯入完成",
|
||||
@@ -98,6 +100,7 @@
|
||||
"ThanksTextSelfhosted": "",
|
||||
"Thursday": "",
|
||||
"Tuesday": "",
|
||||
"UnitConversion": "",
|
||||
"UpgradeNow": "",
|
||||
"Url_Import": "",
|
||||
"Use_Plural_Food_Always": "",
|
||||
|
||||
@@ -8,8 +8,9 @@
|
||||
<v-menu activator="parent">
|
||||
<v-list>
|
||||
|
||||
<v-list-item v-for="model in [TFood, TUnit, TKeyword, TSupermarketCategory, TPropertyType]"
|
||||
:to="{name: 'ModelListPage', params: {model: model.name}}"
|
||||
<v-list-item
|
||||
v-for="model in [TFood, TUnit, TKeyword,TSupermarket, TSupermarketCategory, TPropertyType, TUnitConversion, TAutomation, TUserFile, TCookLog, TViewLog]"
|
||||
:to="{name: 'ModelListPage', params: {model: model.name}}"
|
||||
>
|
||||
<template #prepend><v-icon :icon="model.icon"></v-icon> </template>
|
||||
{{ $t(model.localizationKey) }}
|
||||
@@ -23,8 +24,6 @@
|
||||
</v-row>
|
||||
<v-row>
|
||||
<v-col>
|
||||
|
||||
|
||||
<v-text-field prepend-inner-icon="$search" :label="$t('Search')" v-model="searchQuery"></v-text-field>
|
||||
<v-data-table-server
|
||||
@update:options="loadItems"
|
||||
@@ -57,9 +56,23 @@
|
||||
import {onBeforeMount, onMounted, ref, watch} from "vue";
|
||||
import {ErrorMessageType, useMessageStore} from "@/stores/MessageStore";
|
||||
import {useI18n} from "vue-i18n";
|
||||
import {TFood, TUnit, GenericModel, getModelFromStr, TKeyword, TSupermarketCategory, TPropertyType} from "@/types/Models";
|
||||
import {
|
||||
TFood,
|
||||
TUnit,
|
||||
GenericModel,
|
||||
getGenericModelFromString,
|
||||
TKeyword,
|
||||
TSupermarketCategory,
|
||||
TPropertyType,
|
||||
TSupermarket,
|
||||
TUnitConversion,
|
||||
TAutomation,
|
||||
TUserFile, TCookLog, TViewLog
|
||||
} from "@/types/Models";
|
||||
import {ca} from "vuetify/locale";
|
||||
import {ApiApi} from "@/openapi";
|
||||
import ModelSelect from "@/components/inputs/ModelSelect.vue";
|
||||
import ModelEditorDialog from "@/components/dialogs/ModelEditorDialog.vue";
|
||||
|
||||
const {t} = useI18n()
|
||||
|
||||
@@ -94,7 +107,7 @@ const genericModel = ref({} as GenericModel)
|
||||
// watch for changes to the prop in case its changed
|
||||
watch(() => props.model, () => {
|
||||
console.log('loading model ', props.model)
|
||||
genericModel.value = getModelFromStr(props.model)
|
||||
genericModel.value = getGenericModelFromString(props.model)
|
||||
loadItems({page: 1, itemsPerPage: 10})
|
||||
})
|
||||
|
||||
@@ -104,10 +117,10 @@ watch(() => props.model, () => {
|
||||
onBeforeMount(() => {
|
||||
|
||||
try {
|
||||
genericModel.value = getModelFromStr(props.model)
|
||||
genericModel.value = getGenericModelFromString(props.model)
|
||||
} catch (Error) {
|
||||
console.error('Invalid model passed to ModelListPage, loading Food instead')
|
||||
genericModel.value = getModelFromStr('Food')
|
||||
genericModel.value = getGenericModelFromString('Food')
|
||||
}
|
||||
})
|
||||
|
||||
@@ -117,7 +130,7 @@ function loadItems({page, itemsPerPage, search, sortBy, groupBy}) {
|
||||
genericModel.value.list({page: page, pageSize: itemsPerPage, query: search}).then(r => {
|
||||
items.value = r.results
|
||||
itemCount.value = r.count
|
||||
}).catch(err => {
|
||||
}).catch((err: any) => {
|
||||
useMessageStore().addError(ErrorMessageType.FETCH_ERROR, err)
|
||||
}).finally(() => {
|
||||
loading.value = false
|
||||
|
||||
@@ -19,7 +19,7 @@ import {
|
||||
* @param modelName name of the model
|
||||
* @return instance of GenericModel
|
||||
*/
|
||||
export function getModelFromStr(modelName: String) {
|
||||
export function getGenericModelFromString(modelName: String) {
|
||||
if (SUPPORTED_MODELS.has(modelName)) {
|
||||
return new GenericModel(SUPPORTED_MODELS.get(modelName))
|
||||
} else {
|
||||
@@ -49,6 +49,8 @@ type Model = {
|
||||
disableCreate: boolean | undefined,
|
||||
disableDelete: boolean | undefined,
|
||||
|
||||
isPaginated: boolean | undefined,
|
||||
|
||||
// table headers
|
||||
// canCreate
|
||||
// canDelete
|
||||
@@ -58,7 +60,9 @@ export let SUPPORTED_MODELS = new Map<string, Model>()
|
||||
export const TFood = {
|
||||
name: 'Food',
|
||||
localizationKey: 'Food',
|
||||
icon: 'fa-solid fa-carrot'
|
||||
icon: 'fa-solid fa-carrot',
|
||||
|
||||
isPaginated: true,
|
||||
} as Model
|
||||
SUPPORTED_MODELS.set(TFood.name, TFood)
|
||||
|
||||
@@ -66,6 +70,8 @@ export const TUnit = {
|
||||
name: 'Unit',
|
||||
localizationKey: 'Unit',
|
||||
icon: 'fa-solid fa-scale-balanced',
|
||||
|
||||
isPaginated: true,
|
||||
} as Model
|
||||
SUPPORTED_MODELS.set(TUnit.name, TUnit)
|
||||
|
||||
@@ -73,6 +79,8 @@ export const TKeyword = {
|
||||
name: 'Keyword',
|
||||
localizationKey: 'Keyword',
|
||||
icon: 'fa-solid fa-tags',
|
||||
|
||||
isPaginated: true,
|
||||
} as Model
|
||||
SUPPORTED_MODELS.set(TKeyword.name, TKeyword)
|
||||
|
||||
@@ -80,6 +88,8 @@ export const TRecipe = {
|
||||
name: 'Recipe',
|
||||
localizationKey: 'Recipe',
|
||||
icon: 'fa-solid fa-book',
|
||||
|
||||
isPaginated: true,
|
||||
} as Model
|
||||
SUPPORTED_MODELS.set(TRecipe.name, TRecipe)
|
||||
|
||||
@@ -87,6 +97,8 @@ export const TMealType = {
|
||||
name: 'MealType',
|
||||
localizationKey: 'Meal_Type',
|
||||
icon: 'fa-solid fa-utensils',
|
||||
|
||||
isPaginated: true,
|
||||
} as Model
|
||||
SUPPORTED_MODELS.set(TMealType.name, TMealType)
|
||||
|
||||
@@ -97,13 +109,26 @@ export const TUser = {
|
||||
|
||||
disableCreate: true,
|
||||
disableDelete: true,
|
||||
|
||||
isPaginated: false,
|
||||
} as Model
|
||||
SUPPORTED_MODELS.set(TUser.name, TUser)
|
||||
|
||||
export const TSupermarket = {
|
||||
name: 'Supermarket',
|
||||
localizationKey: 'Supermarket',
|
||||
icon: 'fa-solid fa-store',
|
||||
|
||||
isPaginated: true,
|
||||
} as Model
|
||||
SUPPORTED_MODELS.set(TSupermarket.name, TSupermarket)
|
||||
|
||||
export const TSupermarketCategory = {
|
||||
name: 'SupermarketCategory',
|
||||
localizationKey: 'Category',
|
||||
icon: 'fa-solid fa-boxes-stacked',
|
||||
|
||||
isPaginated: true,
|
||||
} as Model
|
||||
SUPPORTED_MODELS.set(TSupermarketCategory.name, TSupermarketCategory)
|
||||
|
||||
@@ -111,9 +136,56 @@ export const TPropertyType = {
|
||||
name: 'PropertyType',
|
||||
localizationKey: 'Property',
|
||||
icon: 'fa-solid fa-database',
|
||||
|
||||
isPaginated: true,
|
||||
} as Model
|
||||
SUPPORTED_MODELS.set(TPropertyType.name, TPropertyType)
|
||||
|
||||
export const TUnitConversion = {
|
||||
name: 'UnitConversion',
|
||||
localizationKey: 'UnitConversion',
|
||||
icon: 'fa-solid fa-exchange-alt',
|
||||
|
||||
isPaginated: true,
|
||||
} as Model
|
||||
SUPPORTED_MODELS.set(TUnitConversion.name, TUnitConversion)
|
||||
|
||||
export const TUserFile = {
|
||||
name: 'UserFile',
|
||||
localizationKey: 'File',
|
||||
icon: 'fa-solid fa-file',
|
||||
|
||||
isPaginated: true,
|
||||
} as Model
|
||||
SUPPORTED_MODELS.set(TUserFile.name, TUserFile)
|
||||
|
||||
export const TAutomation = {
|
||||
name: 'Automation',
|
||||
localizationKey: 'Automation',
|
||||
icon: 'fa-solid fa-robot',
|
||||
|
||||
isPaginated: true,
|
||||
} as Model
|
||||
SUPPORTED_MODELS.set(TAutomation.name, TAutomation)
|
||||
|
||||
export const TCookLog = {
|
||||
name: 'CookLog',
|
||||
localizationKey: 'CookLog',
|
||||
icon: 'fa-solid fa-table-list',
|
||||
|
||||
isPaginated: true,
|
||||
} as Model
|
||||
SUPPORTED_MODELS.set(TCookLog.name, TCookLog)
|
||||
|
||||
export const TViewLog = {
|
||||
name: 'ViewLog',
|
||||
localizationKey: 'History',
|
||||
icon: 'fa-solid fa-clock-rotate-left',
|
||||
|
||||
isPaginated: true,
|
||||
} as Model
|
||||
SUPPORTED_MODELS.set(TViewLog.name, TViewLog)
|
||||
|
||||
export const TFoodInheritField = {
|
||||
name: 'FoodInheritField',
|
||||
localizationKey: 'FoodInherit',
|
||||
@@ -122,6 +194,8 @@ export const TFoodInheritField = {
|
||||
disableCreate: true,
|
||||
disableDelete: true,
|
||||
disableRetrieve: true,
|
||||
|
||||
isPaginated: false,
|
||||
} as Model
|
||||
SUPPORTED_MODELS.set(TFoodInheritField.name, TFoodInheritField)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user