From 44b6f46eb34bf23d87ebc5463ef7a6ecf942d809 Mon Sep 17 00:00:00 2001 From: pablo Date: Mon, 26 Sep 2022 15:02:17 +0200 Subject: [PATCH] Create/edit forms: fix cancel button * closes: #103 --- .../src/formik/AdminForm.js | 84 ++++++++++--------- 1 file changed, 43 insertions(+), 41 deletions(-) diff --git a/invenio_administration/assets/semantic-ui/js/invenio_administration/src/formik/AdminForm.js b/invenio_administration/assets/semantic-ui/js/invenio_administration/src/formik/AdminForm.js index edc20711..c76d71f7 100644 --- a/invenio_administration/assets/semantic-ui/js/invenio_administration/src/formik/AdminForm.js +++ b/invenio_administration/assets/semantic-ui/js/invenio_administration/src/formik/AdminForm.js @@ -9,15 +9,21 @@ import { ErrorMessage } from "../ui_messages/messages"; import isEmpty from "lodash/isEmpty"; import { GenerateForm } from "./GenerateForm"; import { deserializeFieldErrors } from "../components/utils"; +import { i18next } from "@translations/invenio_administration/i18next"; +import mapValues from "lodash/mapValues"; export class AdminForm extends Component { constructor(props) { super(props); - const { resource } = props; + const { resource, formFields } = props; this.state = { error: undefined, - formData: resource ? resource : {}, + formData: resource + ? resource + : mapValues(formFields, function (value) { + return ""; + }), }; } @@ -67,11 +73,6 @@ export class AdminForm extends Component { } }; - onCancel = () => { - const { resource } = this.props; - this.setState({ formData: resource }); - }; - resetErrorState = () => { this.setState({ error: undefined }); }; @@ -79,43 +80,44 @@ export class AdminForm extends Component { render() { const { resourceSchema, create, formFields } = this.props; const { formData, error } = this.state; - return ( - {(props) => ( - { - e.preventDefault(); - props.handleSubmit(); - }} - > - - {!isEmpty(error) && ( - - )} - - - - )} + + {!isEmpty(error) && ( + + )} + + + + ); + }} ); }