diff --git a/qa/ui/src/lib/components/QAItem.svelte b/qa/ui/src/lib/components/QAItem.svelte index d52b96da..83c9a121 100644 --- a/qa/ui/src/lib/components/QAItem.svelte +++ b/qa/ui/src/lib/components/QAItem.svelte @@ -17,6 +17,7 @@ import DateFormat from '$lib/components/DateFormat.svelte'; import { getQAComments, QAComment } from '$lib/qa'; import { auth } from '$lib/stores/auth'; + import { ToastsStore } from '$lib/stores/toasts'; import { viewIdx } from '$lib/stores/todo'; const dispatch = createEventDispatcher(); @@ -68,12 +69,21 @@ query_commentsP = getQAComments(query_selected.id); newComment = new QAComment(); submissionInProgress = false; + }).catch((err) => { + submissionInProgress = false; + ToastsStore.addErrorToast({ + msg: err, + }) }) } function updateQA() { query_selected.save().then(() => { dispatch("update-queries"); + }).catch((err) => { + ToastsStore.addErrorToast({ + msg: err, + }) }) } @@ -81,6 +91,10 @@ query_selected.solved = new Date(); query_selected.save().then(() => { dispatch("update-queries"); + }).catch((err) => { + ToastsStore.addErrorToast({ + msg: err, + }) }) } @@ -88,6 +102,10 @@ query_selected.solved = null; query_selected.save().then(() => { dispatch("update-queries"); + }).catch((err) => { + ToastsStore.addErrorToast({ + msg: err, + }) }) } @@ -95,6 +113,10 @@ query_selected.closed = new Date(); query_selected.save().then(() => { dispatch("update-queries"); + }).catch((err) => { + ToastsStore.addErrorToast({ + msg: err, + }) }) } @@ -102,6 +124,10 @@ query_selected.delete().then(() => { query_selected = null; dispatch("update-queries"); + }).catch((err) => { + ToastsStore.addErrorToast({ + msg: err, + }) }) } @@ -117,6 +143,10 @@ function deleteComment(comment) { comment.delete(query_selected.id).then(() => { dispatch("update-queries"); + }).catch((err) => { + ToastsStore.addErrorToast({ + msg: err, + }) }) } diff --git a/qa/ui/src/lib/components/QANewItem.svelte b/qa/ui/src/lib/components/QANewItem.svelte index e3268e1b..4a4d6300 100644 --- a/qa/ui/src/lib/components/QANewItem.svelte +++ b/qa/ui/src/lib/components/QANewItem.svelte @@ -6,7 +6,8 @@ Spinner, } from 'sveltestrap'; - import { QAQuery, QAStates } from '$lib/qa.js'; + import { QAQuery, QAStates } from '$lib/qa'; + import { ToastsStore } from '$lib/stores/toasts'; const dispatch = createEventDispatcher(); @@ -22,6 +23,11 @@ dispatch("new-query"); newQuery = new QAQuery(); creationInProgress = false; + }).catch((err) => { + creationInProgress = false; + ToastsStore.addErrorToast({ + msg: err, + }) }) } diff --git a/qa/ui/src/lib/components/Toaster.svelte b/qa/ui/src/lib/components/Toaster.svelte new file mode 100644 index 00000000..d93c4846 --- /dev/null +++ b/qa/ui/src/lib/components/Toaster.svelte @@ -0,0 +1,22 @@ + + +