diff --git a/src/Wizard.js b/src/Wizard.js index b514d19121..49f54eec5a 100644 --- a/src/Wizard.js +++ b/src/Wizard.js @@ -897,25 +897,23 @@ export default class Wizard extends Webform { } setValue(submission, flags = {}, ignoreEstablishment) { - this._submission = submission; - if ( - (flags && flags.fromSubmission && (this.options.readOnly || this.editMode) && !this.isHtmlRenderMode()) || - (flags && flags.fromSubmission && (this.prefixComps.length || this.suffixComps.length) && submission._id) || - (this.options.server && (this.prefixComps.length || this.suffixComps.length)) - ) { - this._data = submission.data; - } - - if (!ignoreEstablishment) { - this.establishPages(submission.data); - } const changed = this.getPages({ all: true }).reduce((changed, page) => { return this.setNestedValue(page, submission.data, flags, changed) || changed; }, false); + this.mergeData(this.data, submission.data); + if (changed) { this.pageFieldLogic(this.page); } + + submission.data = this.data; + this._submission = submission; + + if (!ignoreEstablishment) { + this.establishPages(submission.data); + } + this.setEditMode(submission); return changed;