fix(widget-date): fix default value for nested date widget (#1859)

This commit is contained in:
Bartholomew 2018-11-06 19:13:42 +01:00 committed by Shawn Erquhart
parent f69a04efe8
commit d8f888706e
2 changed files with 9 additions and 10 deletions

View File

@ -379,24 +379,21 @@ function createEmptyDraftData(fields) {
return fields.reduce((acc, item) => {
const subfields = item.get('field') || item.get('fields');
const list = item.get('widget') == 'list';
const defaultValue = item.get('default');
const name = item.get('name');
const defaultValue = item.get('default', null);
if (List.isList(subfields)) {
acc[item.get('name')] = list
? [createEmptyDraftData(subfields)]
: createEmptyDraftData(subfields);
acc[name] = list ? [createEmptyDraftData(subfields)] : createEmptyDraftData(subfields);
return acc;
}
if (Map.isMap(subfields)) {
acc[item.get('name')] = list
? [createEmptyDraftData([subfields])]
: createEmptyDraftData([subfields]);
acc[name] = list ? [createEmptyDraftData([subfields])] : createEmptyDraftData([subfields]);
return acc;
}
if (defaultValue) {
acc[item.get('name')] = defaultValue;
if (defaultValue !== null) {
acc[name] = defaultValue;
}
return acc;

View File

@ -30,7 +30,9 @@ export default class DateControl extends React.Component {
* empty string means the value is intentionally blank.
*/
if (!value && value !== '') {
this.handleChange(new Date());
setTimeout(() => {
this.handleChange(new Date());
}, 0);
}
}