diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/content/workspace/content-detail-workspace-base.ts b/src/Umbraco.Web.UI.Client/src/packages/core/content/workspace/content-detail-workspace-base.ts index 3ae802cc25..d4504f8ee1 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/content/workspace/content-detail-workspace-base.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/content/workspace/content-detail-workspace-base.ts @@ -573,6 +573,8 @@ export abstract class UmbContentDetailWorkspaceContextBase< }); eventContext.dispatchEvent(event); this.setIsNew(false); + + this._closeModal(); } async #update(variantIds: Array, saveData: DetailModelType) { @@ -604,6 +606,7 @@ export abstract class UmbContentDetailWorkspaceContextBase< }); eventContext.dispatchEvent(event); + this._closeModal(); } abstract getContentTypeUnique(): string | undefined; diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/workspace/submittable/submittable-workspace-context-base.ts b/src/Umbraco.Web.UI.Client/src/packages/core/workspace/submittable/submittable-workspace-context-base.ts index aa0b8c46d0..1293abbc46 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/workspace/submittable/submittable-workspace-context-base.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/workspace/submittable/submittable-workspace-context-base.ts @@ -124,12 +124,6 @@ export abstract class UmbSubmittableWorkspaceContextBase this.#submitPromise = undefined; this.#submitResolve = undefined; this.#submitReject = undefined; - - // If we do not want to close a modal when saving something with errors, then move this part down to #completeSubmit method. [NL] - if (this.modalContext) { - this.modalContext?.setValue(this.getData()); - this.modalContext?.submit(); - } }; #completeSubmit = () => { @@ -138,8 +132,17 @@ export abstract class UmbSubmittableWorkspaceContextBase // Calling reset on the validation context here. [NL] // TODO: Capture the validation messages on open, and then reset to that. //this.validation.reset(); + + this._closeModal(); }; + protected _closeModal() { + if (this.modalContext) { + this.modalContext?.setValue(this.getData()); + this.modalContext?.submit(); + } + } + //abstract getIsDirty(): Promise; abstract getUnique(): string | null | undefined; abstract getEntityType(): string; diff --git a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/document-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/document-workspace.context.ts index b9ef2f99dc..44afaabd8e 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/document-workspace.context.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/document-workspace.context.ts @@ -334,6 +334,8 @@ export class UmbDocumentWorkspaceContext }); eventContext.dispatchEvent(event); + + this._closeModal(); } }