diff --git a/src/Umbraco.Web.UI.Client/src/packages/templating/partial-views/workspace/partial-view-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/packages/templating/partial-views/workspace/partial-view-workspace.context.ts index fce21b1d32..cee94b6ab2 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/templating/partial-views/workspace/partial-view-workspace.context.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/templating/partial-views/workspace/partial-view-workspace.context.ts @@ -121,10 +121,20 @@ export class UmbPartialViewWorkspaceContext async load(unique: string) { this.resetState(); - const { data } = await this.repository.requestByUnique(unique); + const { data, asObservable } = await this.repository.requestByUnique(unique); + if (data) { this.setIsNew(false); this.#data.setValue(data); + + this.observe(asObservable(), (data) => this.onDetailStoreChanges(data), 'umbDetailStoreObserver'); + } + } + + onDetailStoreChanges(data: UmbPartialViewDetailModel | undefined) { + // Data is removed from the store + if (data === undefined) { + console.log('data removed'); } } diff --git a/src/Umbraco.Web.UI.Client/src/packages/templating/scripts/workspace/script-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/packages/templating/scripts/workspace/script-workspace.context.ts index d906fc0ff1..6d19884817 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/templating/scripts/workspace/script-workspace.context.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/templating/scripts/workspace/script-workspace.context.ts @@ -110,16 +110,19 @@ export class UmbScriptWorkspaceContext this.resetState(); const { data, asObservable } = await this.repository.requestByUnique(unique); - this.observe(asObservable(), (data) => this.onDetailStoreChanges(data), 'umbDetailStoreObserver'); - if (data) { this.setIsNew(false); this.#data.setValue(data); + + this.observe(asObservable(), (data) => this.onDetailStoreChanges(data), 'umbDetailStoreObserver'); } } onDetailStoreChanges(data: UmbScriptDetailModel | undefined) { - console.log(data); + // Data is removed from the store + if (data === undefined) { + console.log('data removed'); + } } async create(parent: { entityType: string; unique: string | null }) { diff --git a/src/Umbraco.Web.UI.Client/src/packages/templating/stylesheets/workspace/stylesheet-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/packages/templating/stylesheets/workspace/stylesheet-workspace.context.ts index 7f41d948c7..71aa60e796 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/templating/stylesheets/workspace/stylesheet-workspace.context.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/templating/stylesheets/workspace/stylesheet-workspace.context.ts @@ -107,11 +107,20 @@ export class UmbStylesheetWorkspaceContext async load(unique: string) { this.resetState(); - const { data } = await this.repository.requestByUnique(unique); + const { data, asObservable } = await this.repository.requestByUnique(unique); if (data) { this.setIsNew(false); this.#data.setValue(data); + + this.observe(asObservable(), (data) => this.onDetailStoreChanges(data), 'umbDetailStoreObserver'); + } + } + + onDetailStoreChanges(data: UmbStylesheetDetailModel | undefined) { + // Data is removed from the store + if (data === undefined) { + console.log('data removed'); } }