diff --git a/new-lamassu-admin/src/pages/Services/FormRenderer.js b/new-lamassu-admin/src/pages/Services/FormRenderer.js
index 776c78b7..ac0c0a5c 100644
--- a/new-lamassu-admin/src/pages/Services/FormRenderer.js
+++ b/new-lamassu-admin/src/pages/Services/FormRenderer.js
@@ -2,7 +2,7 @@ import { makeStyles, Grid } from '@material-ui/core'
import classnames from 'classnames'
import { Formik, Form, FastField } from 'formik'
import * as R from 'ramda'
-import React from 'react'
+import React, { useState } from 'react'
import ErrorMessage from 'src/components/ErrorMessage'
import { Button } from 'src/components/buttons'
@@ -48,6 +48,8 @@ const FormRenderer = ({
const values = R.merge(initialValues, value)
+ const [saveError, setSaveError] = useState([])
+
const saveNonEmptySecret = it => {
const emptySecretFields = R.compose(
R.map(R.prop('code')),
@@ -57,7 +59,9 @@ const FormRenderer = ({
R.isEmpty(it[R.prop('code', elem)])
)
)(elements)
- return save(R.omit(emptySecretFields, it))
+ return save(R.omit(emptySecretFields, it)).catch(s => {
+ setSaveError({ save: 'Failed to save changes' })
+ })
}
return (
@@ -87,8 +91,10 @@ const FormRenderer = ({
)}
- {!R.isEmpty(errors) && (
- {R.head(R.values(errors))}
+ {!R.isEmpty(R.mergeRight(errors, saveError)) && (
+
+ {R.head(R.values(R.mergeRight(errors, saveError)))}
+
)}