From 4e74902d99db64e32fc277841d138633d460dbc8 Mon Sep 17 00:00:00 2001 From: opbnq-q Date: Mon, 10 Mar 2025 07:55:49 -0700 Subject: [PATCH] fix: emits types --- frontend/src/table/DialogWindow.vue | 40 ++++++++++++-------------- frontend/src/types/table-emits.type.ts | 20 ++++++------- 2 files changed, 29 insertions(+), 31 deletions(-) diff --git a/frontend/src/table/DialogWindow.vue b/frontend/src/table/DialogWindow.vue index c5067e3..f4fb945 100644 --- a/frontend/src/table/DialogWindow.vue +++ b/frontend/src/table/DialogWindow.vue @@ -4,15 +4,13 @@ import type { IEntity } from '../types/entity.type'; import type { Scheme } from '../types/scheme.type'; import type { IService } from '../types/service.type'; import { manyStructsView } from '../utils/structs/structs-view.util'; -import { type UnwrapRef } from 'vue'; import { toDate, toTimestamp } from '../utils/date/converters.util'; import MultiSelect from '../components/selects/MultiSelect.vue'; -import { alertWindow } from '../utils/js/alert.utils'; import type { Validate } from '../types/validate.type'; import { useErrorStore } from '../stores/error.store'; const showCreate = defineModel('show') -const createItem = defineModel('item') +const editableItem = defineModel('item') const errorStore = useErrorStore() @@ -31,27 +29,27 @@ type Key = keyof T const keys = Object.keys(props.scheme) as Key[] const emits = defineEmits<{ - (e: 'onSave', data: T): void - (e: 'onSaveUpdate', data: T): void - (e: 'onSaveCreate', data: T): void + (e: 'onSave', data: T): Promise | void + (e: 'onSaveUpdate', data: T): Promise | void + (e: 'onSaveCreate', data: T): Promise | void }>() async function handleSave() { const mode = props.updateMode ? 'update' : 'create'; - const result = await props.validate(createItem.value as T, mode); + const result = await props.validate(editableItem.value as T, mode); if (result.status === 'error') { errorStore.summon(result.message); return; } try { if (props.updateMode) { - await props.service.update.call(props.service, createItem.value as T); - await emits('onSaveUpdate', createItem.value as T); - await emits('onSave', createItem.value as T); + await props.service.update.call(props.service, editableItem.value as T); + await emits('onSaveUpdate', editableItem.value as T); + await emits('onSave', editableItem.value as T); } else { - await props.service.create.call(props.service, createItem.value as T); - await emits('onSaveCreate', createItem.value as T); - await emits('onSave', createItem.value as T); + await props.service.create.call(props.service, editableItem.value as T); + await emits('onSaveCreate', editableItem.value as T); + await emits('onSave', editableItem.value as T); } } catch (e) { errorStore.summon(e.message) @@ -78,19 +76,19 @@ async function handleSave() {
- - - -