From 7d00297c1c012fc5dbeb5baa264edaae99bc72c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20Lyngs=C3=B8?= Date: Fri, 8 Dec 2023 12:17:59 +0100 Subject: [PATCH] rename document variant context --- .../document-property-dataset-context.token.ts | 13 +++++++++++++ .../document-property-dataset-context.ts} | 13 +++++-------- .../document-variant-context.token.ts | 13 ------------- .../workspace/document-workspace.context.ts | 4 ++-- 4 files changed, 20 insertions(+), 23 deletions(-) create mode 100644 src/Umbraco.Web.UI.Client/src/packages/documents/documents/property-dataset-context/document-property-dataset-context.token.ts rename src/Umbraco.Web.UI.Client/src/packages/documents/documents/{variant-context/document-variant-context.ts => property-dataset-context/document-property-dataset-context.ts} (92%) delete mode 100644 src/Umbraco.Web.UI.Client/src/packages/documents/documents/variant-context/document-variant-context.token.ts diff --git a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/property-dataset-context/document-property-dataset-context.token.ts b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/property-dataset-context/document-property-dataset-context.token.ts new file mode 100644 index 0000000000..4b0f5958ba --- /dev/null +++ b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/property-dataset-context/document-property-dataset-context.token.ts @@ -0,0 +1,13 @@ +import { UMB_DOCUMENT_ENTITY_TYPE } from '../entity.js'; +import type { UmbDocumentPropertyDataContext } from './document-property-dataset-context.js'; +import { UmbContextToken } from '@umbraco-cms/backoffice/context-api'; +import { UmbPropertyDatasetContext } from '@umbraco-cms/backoffice/workspace'; + +export const IsDocumentVariantContext = ( + context: UmbPropertyDatasetContext, +): context is UmbDocumentPropertyDataContext => context.getType() === UMB_DOCUMENT_ENTITY_TYPE; + +export const UMB_DOCUMENT_VARIANT_CONTEXT = new UmbContextToken< + UmbPropertyDatasetContext, + UmbDocumentPropertyDataContext +>('UmbVariantContext', undefined, IsDocumentVariantContext); diff --git a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/variant-context/document-variant-context.ts b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/property-dataset-context/document-property-dataset-context.ts similarity index 92% rename from src/Umbraco.Web.UI.Client/src/packages/documents/documents/variant-context/document-variant-context.ts rename to src/Umbraco.Web.UI.Client/src/packages/documents/documents/property-dataset-context/document-property-dataset-context.ts index 775d3a8116..5054684a42 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/variant-context/document-variant-context.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/property-dataset-context/document-property-dataset-context.ts @@ -1,7 +1,7 @@ import type { UmbDocumentWorkspaceContext } from '../workspace/index.js'; import { DocumentVariantResponseModel, PropertyTypeModelBaseModel } from '@umbraco-cms/backoffice/backend-api'; import { type UmbControllerHost } from '@umbraco-cms/backoffice/controller-api'; -import { UmbBaseController } from '@umbraco-cms/backoffice/class-api'; +import { UmbContextBase } from '@umbraco-cms/backoffice/class-api'; import { map } from '@umbraco-cms/backoffice/external/rxjs'; import { UmbObjectState } from '@umbraco-cms/backoffice/observable-api'; import { UmbVariantId } from '@umbraco-cms/backoffice/variant'; @@ -11,9 +11,9 @@ import { UmbPropertyDatasetContext, } from '@umbraco-cms/backoffice/workspace'; -// TODO: This code can be split into a UmbContentTypeVariantContext, leaving just the publishing state and methods to this class. -export class UmbDocumentVariantContext - extends UmbBaseController +// TODO: This code can be split into a UmbContentTypePropertyDatasetContext, leaving just the publishing state and methods to this class. +export class UmbDocumentPropertyDataContext + extends UmbContextBase implements UmbPropertyDatasetContext, UmbNameablePropertyDatasetContext { #workspace: UmbDocumentWorkspaceContext; @@ -52,7 +52,7 @@ export class UmbDocumentVariantContext constructor(host: UmbControllerHost, workspace: UmbDocumentWorkspaceContext, variantId?: UmbVariantId) { // The controller alias, is a very generic name cause we want only one of these for this controller host. - super(host, 'variantContext'); + super(host, UMB_PROPERTY_DATASET_CONTEXT); this.#workspace = workspace; this.#variantId = variantId ?? UmbVariantId.CreateInvariant(); @@ -64,9 +64,6 @@ export class UmbDocumentVariantContext }, '_observeActiveVariant', ); - - // TODO: Refactor: use the document dataset context token. - this.provideContext(UMB_PROPERTY_DATASET_CONTEXT, this); } #createPropertyVariantId(property: PropertyTypeModelBaseModel) { diff --git a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/variant-context/document-variant-context.token.ts b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/variant-context/document-variant-context.token.ts deleted file mode 100644 index 9bbe4befff..0000000000 --- a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/variant-context/document-variant-context.token.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { UMB_DOCUMENT_ENTITY_TYPE } from '../entity.js'; -import type { UmbDocumentVariantContext } from './document-variant-context.js'; -import { UmbContextToken } from '@umbraco-cms/backoffice/context-api'; -import { UmbPropertyDatasetContext } from '@umbraco-cms/backoffice/workspace'; - -export const IsDocumentVariantContext = (context: UmbPropertyDatasetContext): context is UmbDocumentVariantContext => - context.getType() === UMB_DOCUMENT_ENTITY_TYPE; - -export const UMB_DOCUMENT_VARIANT_CONTEXT = new UmbContextToken( - 'UmbVariantContext', - undefined, - IsDocumentVariantContext, -); 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 3e4fdc864e..bf05810cec 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 @@ -1,6 +1,6 @@ import { UmbDocumentRepository } from '../repository/document.repository.js'; import { UmbDocumentTypeDetailRepository } from '../../document-types/repository/detail/document-type-detail.repository.js'; -import { UmbDocumentVariantContext } from '../variant-context/document-variant-context.js'; +import { UmbDocumentPropertyDataContext } from '../property-dataset-context/document-property-dataset-context.js'; import { UMB_DOCUMENT_ENTITY_TYPE } from '../entity.js'; import { UmbVariantId } from '@umbraco-cms/backoffice/variant'; import { UmbContentTypePropertyStructureManager } from '@umbraco-cms/backoffice/content-type'; @@ -260,7 +260,7 @@ export class UmbDocumentWorkspaceContext */ public createVariantContext(host: UmbControllerHost, variantId: UmbVariantId) { - return new UmbDocumentVariantContext(host, this, variantId); + return new UmbDocumentPropertyDataContext(host, this, variantId); } public destroy(): void {