Add errors

This commit is contained in:
Krzysztof Bialoglowicz 2019-08-29 13:01:06 +02:00
parent 0184e92e53
commit 6e4c19154d

View file

@ -1,7 +1,8 @@
import React from "react";
import { WindowTitle } from "@saleor/components/WindowTitle"; import { WindowTitle } from "@saleor/components/WindowTitle";
import useNavigator from "@saleor/hooks/useNavigator"; import useNavigator from "@saleor/hooks/useNavigator";
import useNotifier from "@saleor/hooks/useNotifier";
import i18n from "@saleor/i18n";
import React from "react";
import { getMutationState, maybe } from "../../misc"; import { getMutationState, maybe } from "../../misc";
import PluginsDetailsPage from "../components/PluginsDetailsPage"; import PluginsDetailsPage from "../components/PluginsDetailsPage";
import { TypedPluginUpdate } from "../mutations"; import { TypedPluginUpdate } from "../mutations";
@ -17,6 +18,7 @@ export const PluginsDetails: React.StatelessComponent<PluginsDetailsProps> = ({
id id
}) => { }) => {
const navigate = useNavigator(); const navigate = useNavigator();
const notify = useNotifier();
return ( return (
<TypedPluginUpdate> <TypedPluginUpdate>
@ -29,6 +31,25 @@ export const PluginsDetails: React.StatelessComponent<PluginsDetailsProps> = ({
maybe(() => pluginUpdateOpts.data.pluginUpdate.errors) maybe(() => pluginUpdateOpts.data.pluginUpdate.errors)
); );
const formErrors = maybe(
() => pluginUpdateOpts.data.pluginUpdate.errors,
[]
);
if (formErrors.length) {
formErrors.map(error => {
notify({
text: error.message
});
});
} else {
if (pluginUpdateOpts.data) {
notify({
text: i18n.t("Succesfully updated plugin settings")
});
}
}
return ( return (
<> <>
<WindowTitle <WindowTitle
@ -36,10 +57,7 @@ export const PluginsDetails: React.StatelessComponent<PluginsDetailsProps> = ({
/> />
<PluginsDetailsPage <PluginsDetailsPage
disabled={PluginDetails.loading} disabled={PluginDetails.loading}
errors={maybe( errors={formErrors}
() => pluginUpdateOpts.data.pluginUpdate.errors,
[]
)}
saveButtonBarState={formTransitionState} saveButtonBarState={formTransitionState}
plugin={maybe(() => PluginDetails.data.plugin)} plugin={maybe(() => PluginDetails.data.plugin)}
onBack={() => navigate(pluginsListUrl())} onBack={() => navigate(pluginsListUrl())}