diff --git a/web-app/src/pages/transaction-editor/EditTransactionPage.vue b/web-app/src/pages/transaction-editor/EditTransactionPage.vue index eef9665..0d1f395 100644 --- a/web-app/src/pages/transaction-editor/EditTransactionPage.vue +++ b/web-app/src/pages/transaction-editor/EditTransactionPage.vue @@ -29,11 +29,13 @@ import { loadEditorContextFromRoute, NewTransactionEditorContext, TransactionEditorContext, + type TransactionEditorAction, type TransactionEditorContextBase, type TransactionEditorFormFields, } from './util' import ButtonBar from '@/components/common/ButtonBar.vue' import AppButton from '@/components/common/AppButton.vue' +import { showAlert } from '@/util/alert' const route = useRoute() const router = useRouter() @@ -87,6 +89,18 @@ onMounted(async () => { } formData.value = editorContext.value.initializeFormFields(route.query) }) + +function onActionClicked(action: TransactionEditorAction) { + loading.value = true + action + .callback(formData.value, route, router) + .catch((err) => { + showAlert(err) + }) + .finally(() => { + loading.value = false + }) +}