From 5b97ea374630933687ef7fac303b9500341555bf Mon Sep 17 00:00:00 2001 From: Untone Date: Wed, 6 Mar 2024 12:04:33 +0300 Subject: [PATCH] delete-reaction-fix --- src/context/editor.tsx | 2 +- src/context/reactions.tsx | 9 ++++++++- src/graphql/client/core.ts | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/context/editor.tsx b/src/context/editor.tsx index 1fe675e1..da9fe026 100644 --- a/src/context/editor.tsx +++ b/src/context/editor.tsx @@ -129,7 +129,7 @@ export const EditorProvider = (props: { children: JSX.Element }) => { const updateShout = async (formToUpdate: ShoutForm, { publish }: { publish: boolean }) => { if (!formToUpdate.shoutId) { console.error(formToUpdate) - return {"error": "not enought data"} + return { error: 'not enought data' } } return await apiClient.updateArticle({ shout_id: formToUpdate.shoutId, diff --git a/src/context/reactions.tsx b/src/context/reactions.tsx index f23c5044..a9ba2a10 100644 --- a/src/context/reactions.tsx +++ b/src/context/reactions.tsx @@ -5,6 +5,8 @@ import { createStore, reconcile } from 'solid-js/store' import { apiClient } from '../graphql/client/core' import { Reaction, ReactionBy, ReactionInput, ReactionKind } from '../graphql/schema/core.gen' +import { useLocalize } from './localize' +import { useSnackbar } from './snackbar' type ReactionsContextType = { reactionEntities: Record @@ -30,6 +32,8 @@ export function useReactions() { export const ReactionsProvider = (props: { children: JSX.Element }) => { const [reactionEntities, setReactionEntities] = createStore>({}) + const { t } = useLocalize() + const { showSnackbar } = useSnackbar() const loadReactionsBy = async ({ by, @@ -81,7 +85,10 @@ export const ReactionsProvider = (props: { children: JSX.Element }) => { const deleteReaction = async (reaction_id: number): Promise => { if (reaction_id) { - await apiClient.destroyReaction(reaction_id) + const { error } = await apiClient.destroyReaction(reaction_id) + if (error) { + await showSnackbar({ type: 'error', body: t(error) }) + } setReactionEntities({ [reaction_id]: undefined, }) diff --git a/src/graphql/client/core.ts b/src/graphql/client/core.ts index f376390e..6f42efc3 100644 --- a/src/graphql/client/core.ts +++ b/src/graphql/client/core.ts @@ -28,9 +28,9 @@ import reactionDestroy from '../mutation/core/reaction-destroy' import reactionUpdate from '../mutation/core/reaction-update' import unfollowMutation from '../mutation/core/unfollow' import shoutLoad from '../query/core/article-load' +import getMyShout from '../query/core/article-my' import shoutsLoadBy from '../query/core/articles-load-by' import draftsLoad from '../query/core/articles-load-drafts' -import getMyShout from '../query/core/article-my' import myFeed from '../query/core/articles-load-feed' import loadShoutsTopRandom from '../query/core/articles-load-random-top' import articlesLoadRandomTopic from '../query/core/articles-load-random-topic'