From b826b280c7120c6ede13a1ddc77bf9444676cc44 Mon Sep 17 00:00:00 2001 From: Mateusz Puczynski Date: Fri, 7 Dec 2018 15:20:57 +0100 Subject: [PATCH] Handle case when you click input and immediately unclick --- src/components/fields/ObjectField.js | 5 ++++- src/components/fields/SchemaField.js | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/components/fields/ObjectField.js b/src/components/fields/ObjectField.js index 40ecc842f0..4b7edb41f3 100644 --- a/src/components/fields/ObjectField.js +++ b/src/components/fields/ObjectField.js @@ -96,7 +96,7 @@ class ObjectField extends Component { getAvailableKey = (preferredKey, formData) => { var index = 0; var newKey = preferredKey; - while (this.props.formData.hasOwnProperty(newKey)) { + while (formData.hasOwnProperty(newKey)) { newKey = `${preferredKey}-${++index}`; } return newKey; @@ -104,6 +104,9 @@ class ObjectField extends Component { onKeyChange = oldValue => { return (value, errorSchema) => { + if (oldValue === value) { + return; + } value = this.getAvailableKey(value, this.props.formData); const newFormData = { ...this.props.formData }; const newKeys = { [oldValue]: value }; diff --git a/src/components/fields/SchemaField.js b/src/components/fields/SchemaField.js index 097d5c74d4..fd7ff9a795 100644 --- a/src/components/fields/SchemaField.js +++ b/src/components/fields/SchemaField.js @@ -132,7 +132,7 @@ function DefaultTemplate(props) {
{additional && (
-