rename document variant context

This commit is contained in:
Niels Lyngsø
2023-12-08 12:17:59 +01:00
parent d604a6aaf0
commit 7d00297c1c
4 changed files with 20 additions and 23 deletions

View File

@@ -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);

View File

@@ -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<UmbPropertyDatasetContext>
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) {

View File

@@ -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<UmbPropertyDatasetContext, UmbDocumentVariantContext>(
'UmbVariantContext',
undefined,
IsDocumentVariantContext,
);

View File

@@ -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 {