diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-action/common/save/save.action.ts b/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-action/common/save/save.action.ts index 3569aeb3a1..47ffc11f70 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-action/common/save/save.action.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-action/common/save/save.action.ts @@ -1,9 +1,9 @@ -import { UmbWorkspaceContextInterface } from '../../../workspace-context/workspace-context.interface.js'; +import { UmbSaveableWorkspaceContextInterface } from '../../../workspace-context/saveable-workspace-context.interface.js'; import { UmbWorkspaceActionBase } from '../../workspace-action-base.js'; import type { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller-api'; // TODO: add interface for repo/partial repo/save-repo -export class UmbSaveWorkspaceAction extends UmbWorkspaceActionBase { +export class UmbSaveWorkspaceAction extends UmbWorkspaceActionBase { constructor(host: UmbControllerHostElement) { super(host); diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/property-structure-workspace-context.interface.ts b/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/property-structure-workspace-context.interface.ts index 5826e02d2c..d3704b61e8 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/property-structure-workspace-context.interface.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/property-structure-workspace-context.interface.ts @@ -2,9 +2,6 @@ import type { UmbWorkspaceContextInterface } from './workspace-context.interface import { Observable } from '@umbraco-cms/backoffice/external/rxjs'; import type { ValueModelBaseModel } from '@umbraco-cms/backoffice/backend-api'; -export interface UmbPropertyStructureWorkspaceContextInterface - extends UmbWorkspaceContextInterface { - - propertyStructureById(id: string): Promise>; - +export interface UmbPropertyStructureWorkspaceContextInterface extends UmbWorkspaceContextInterface { + propertyStructureById(id: string): Promise>; } diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/saveable-workspace-context.interface.ts b/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/saveable-workspace-context.interface.ts index 289e233fa5..068830c588 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/saveable-workspace-context.interface.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/saveable-workspace-context.interface.ts @@ -1,7 +1,11 @@ import type { UmbWorkspaceContextInterface } from './workspace-context.interface.js'; +import { Observable } from '@umbraco-cms/backoffice/external/rxjs'; -export interface UmbSaveableWorkspaceContextInterface - extends UmbWorkspaceContextInterface { - //getData(): EntityType | undefined; +export interface UmbSaveableWorkspaceContextInterface extends UmbWorkspaceContextInterface { + isNew: Observable; + getIsNew(): boolean | undefined; + setIsNew(value: boolean): void; save(): Promise; + setValidationErrors?(errorMap: any): void; // TODO: temp solution to bubble validation errors to the UI + destroy(): void; } diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/variant-workspace-context.token.ts b/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/variant-workspace-context.token.ts index 7c0a70e7a1..16ebe6b2cd 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/variant-workspace-context.token.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/variant-workspace-context.token.ts @@ -3,7 +3,7 @@ import type { UmbVariantableWorkspaceContextInterface } from './workspace-varian import { UmbContextToken } from '@umbraco-cms/backoffice/context-api'; import type { UmbEntityBase } from '@umbraco-cms/backoffice/models'; -export const UMB_VARIANT_WORKSPACE_CONTEXT_TOKEN = new UmbContextToken, UmbVariantableWorkspaceContextInterface>( - 'UmbWorkspaceContext', - (context): context is UmbVariantableWorkspaceContextInterface => 'variants' in context, -); +export const UMB_VARIANT_WORKSPACE_CONTEXT_TOKEN = new UmbContextToken< + UmbWorkspaceContextInterface, + UmbVariantableWorkspaceContextInterface +>('UmbWorkspaceContext', (context): context is UmbVariantableWorkspaceContextInterface => 'variants' in context); diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/workspace-context.interface.ts b/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/workspace-context.interface.ts index 0846447441..cdb9fa4b4e 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/workspace-context.interface.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/workspace-context.interface.ts @@ -1,18 +1,6 @@ -import { Observable } from '@umbraco-cms/backoffice/external/rxjs'; - -export interface UmbWorkspaceContextInterface { - destroy(): void; - workspaceAlias: string; - - save(): Promise; - // TODO: temp solution to bubble validation errors to the UI - setValidationErrors?(errorMap: any): void; - - getEntityId(): string | undefined; // Consider if this should go away now that we have getUnique() +export interface UmbWorkspaceContextInterface { + readonly workspaceAlias: string; // TODO: should we consider another name than entity type. File system files are not entities but still have this type. getEntityType(): string; - - isNew: Observable; - getIsNew(): boolean | undefined; - setIsNew(value: boolean): void; + getEntityId(): string | undefined; // Consider if this should go away now that we have getUnique() } diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/workspace-context.token.ts b/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/workspace-context.token.ts index 7203221cea..e1a8855cee 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/workspace-context.token.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/workspace/workspace-context/workspace-context.token.ts @@ -1,7 +1,4 @@ import type { UmbWorkspaceContextInterface } from './workspace-context.interface.js'; import { UmbContextToken } from '@umbraco-cms/backoffice/context-api'; -import type { UmbEntityBase } from '@umbraco-cms/backoffice/models'; -export const UMB_WORKSPACE_CONTEXT = new UmbContextToken>( - 'UmbWorkspaceContext' -); +export const UMB_WORKSPACE_CONTEXT = new UmbContextToken('UmbWorkspaceContext'); diff --git a/src/Umbraco.Web.UI.Client/src/packages/log-viewer/workspace/logviewer.context.ts b/src/Umbraco.Web.UI.Client/src/packages/log-viewer/workspace/logviewer.context.ts index c30f8ff030..ce20d85c0a 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/log-viewer/workspace/logviewer.context.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/log-viewer/workspace/logviewer.context.ts @@ -6,7 +6,6 @@ import { UmbDeepState, UmbObjectState, UmbStringState, - UmbBooleanState, } from '@umbraco-cms/backoffice/observable-api'; import { DirectionModel, @@ -22,8 +21,6 @@ import { UmbBaseController, UmbControllerHostElement } from '@umbraco-cms/backof import { UmbContextToken } from '@umbraco-cms/backoffice/context-api'; import { query } from '@umbraco-cms/backoffice/router'; import { UMB_WORKSPACE_CONTEXT, UmbWorkspaceContextInterface } from '@umbraco-cms/backoffice/workspace'; -import { Observable } from '@umbraco-cms/backoffice/external/rxjs'; -import type { UmbEntityBase } from '@umbraco-cms/backoffice/models'; export type PoolingInterval = 0 | 2000 | 5000 | 10000 | 20000 | 30000; export interface PoolingCOnfig { @@ -36,34 +33,20 @@ export interface LogViewerDateRange { } // TODO: Revisit usage of workspace for this case... -export class UmbLogViewerWorkspaceContext - extends UmbBaseController - implements UmbWorkspaceContextInterface -{ +export class UmbLogViewerWorkspaceContext extends UmbBaseController implements UmbWorkspaceContextInterface { public readonly workspaceAlias: string = 'Umb.Workspace.LogViewer'; #repository: UmbLogViewerRepository; - #isNew = new UmbBooleanState(undefined); - isNew: Observable = this.#isNew.asObservable(); - getIsNew(): boolean | undefined { - return false; - } - setIsNew(value: boolean): void {} - getEntityId(): string | undefined { - return undefined; - } - getData(): UmbEntityBase { - return {} as any; - } - repository: any; - getEntityType(): string { + getEntityType() { return 'log-viewer'; } - getEntityName(): string { + + getEntityName() { return 'Log Viewer'; } - save() { - return Promise.resolve(); + + getEntityId() { + return undefined; } get today() { @@ -352,5 +335,5 @@ export class UmbLogViewerWorkspaceContext } export const UMB_APP_LOG_VIEWER_CONTEXT_TOKEN = new UmbContextToken( - UmbLogViewerWorkspaceContext.name + UmbLogViewerWorkspaceContext.name, );