From da76acbb9f3f0878047624617b7b6603d081c839 Mon Sep 17 00:00:00 2001 From: Mads Rasmussen Date: Wed, 3 May 2023 15:59:47 +0200 Subject: [PATCH] add module for variant logic + update imports --- src/Umbraco.Web.UI.Client/libs/variant/index.ts | 1 + .../core/variants => libs/variant}/variant-id.class.ts | 0 .../input-multi-url-picker.element.ts | 6 ++---- .../property-type-based-property.element.ts | 6 ++---- .../variantable-property/variantable-property.element.ts | 6 ++---- .../workspace-property/workspace-property.context.ts | 2 +- .../workspace-property/workspace-property.element.ts | 2 +- .../workspace-context/workspace-split-view-manager.class.ts | 2 +- .../workspace-variable-entity-context.interface.ts | 2 +- .../workspace-variant/workspace-variant.context.ts | 2 +- .../uis/block-grid/property-editor-ui-block-grid.element.ts | 2 +- .../workspace/document-workspace-editor.element.ts | 2 +- .../documents/workspace/document-workspace.context.ts | 4 ++-- .../src/core/router/variant-router-slot.element.ts | 2 +- src/Umbraco.Web.UI.Client/tsconfig.json | 1 + src/Umbraco.Web.UI.Client/web-test-runner.config.mjs | 1 + 16 files changed, 19 insertions(+), 22 deletions(-) create mode 100644 src/Umbraco.Web.UI.Client/libs/variant/index.ts rename src/Umbraco.Web.UI.Client/{src/backoffice/core/variants => libs/variant}/variant-id.class.ts (100%) diff --git a/src/Umbraco.Web.UI.Client/libs/variant/index.ts b/src/Umbraco.Web.UI.Client/libs/variant/index.ts new file mode 100644 index 0000000000..c4b6ea1ef4 --- /dev/null +++ b/src/Umbraco.Web.UI.Client/libs/variant/index.ts @@ -0,0 +1 @@ +export * from './variant-id.class'; diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/core/variants/variant-id.class.ts b/src/Umbraco.Web.UI.Client/libs/variant/variant-id.class.ts similarity index 100% rename from src/Umbraco.Web.UI.Client/src/backoffice/core/variants/variant-id.class.ts rename to src/Umbraco.Web.UI.Client/libs/variant/variant-id.class.ts diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/input-multi-url-picker/input-multi-url-picker.element.ts b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/input-multi-url-picker/input-multi-url-picker.element.ts index 0767c2d6e5..e5a1a37e89 100644 --- a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/input-multi-url-picker/input-multi-url-picker.element.ts +++ b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/input-multi-url-picker/input-multi-url-picker.element.ts @@ -3,7 +3,7 @@ import { UUITextStyles } from '@umbraco-ui/uui-css/lib'; import { customElement, property, state } from 'lit/decorators.js'; import { FormControlMixin } from '@umbraco-ui/uui-base/lib/mixins'; import type { UUIModalSidebarSize } from '@umbraco-ui/uui'; -import type { UmbVariantId } from '../../variants/variant-id.class'; +import type { UmbVariantId } from '@umbraco-cms/backoffice/variant'; import { UmbLinkPickerLink, UMB_LINK_PICKER_MODAL, @@ -20,8 +20,6 @@ import { UmbLitElement } from '@umbraco-cms/internal/lit-element'; */ @customElement('umb-input-multi-url-picker') export class UmbInputMultiUrlPickerElement extends FormControlMixin(UmbLitElement) { - - protected getFormElement() { return undefined; } @@ -222,7 +220,7 @@ export class UmbInputMultiUrlPickerElement extends FormControlMixin(UmbLitElemen `; } - + static styles = [ UUITextStyles, css` diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/property-type-based-property/property-type-based-property.element.ts b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/property-type-based-property/property-type-based-property.element.ts index 5712375742..7490e70f95 100644 --- a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/property-type-based-property/property-type-based-property.element.ts +++ b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/property-type-based-property/property-type-based-property.element.ts @@ -2,8 +2,8 @@ import { UUITextStyles } from '@umbraco-ui/uui-css/lib'; import { css, html } from 'lit'; import { ifDefined } from 'lit/directives/if-defined.js'; import { customElement, property, state } from 'lit/decorators.js'; +import type { UmbVariantId } from '@umbraco-cms/backoffice/variant'; import { UmbDataTypeRepository } from '../../../settings/data-types/repository/data-type.repository'; -import { UmbVariantId } from '../../variants/variant-id.class'; import { UmbDocumentWorkspaceContext } from '../../../documents/documents/workspace/document-workspace.context'; import type { DataTypeResponseModel, @@ -17,8 +17,6 @@ import { UMB_ENTITY_WORKSPACE_CONTEXT } from '@umbraco-cms/backoffice/context-ap @customElement('umb-property-type-based-property') export class UmbPropertyTypeBasedPropertyElement extends UmbLitElement { - - @property({ type: Object, attribute: false }) public get property(): PropertyTypeResponseModelBaseModel | undefined { return this._property; @@ -114,7 +112,7 @@ export class UmbPropertyTypeBasedPropertyElement extends UmbLitElement { .propertyVariantId=${this.propertyVariantId} .config=${this._dataTypeData}>`; } - + static styles = [ UUITextStyles, css` diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/variantable-property/variantable-property.element.ts b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/variantable-property/variantable-property.element.ts index 0705a28a7a..b691988c8b 100644 --- a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/variantable-property/variantable-property.element.ts +++ b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/variantable-property/variantable-property.element.ts @@ -1,7 +1,7 @@ import { UUITextStyles } from '@umbraco-ui/uui-css/lib'; import { css, html } from 'lit'; import { customElement, property, state } from 'lit/decorators.js'; -import { UmbVariantId } from '../../variants/variant-id.class'; +import { UmbVariantId } from '@umbraco-cms/backoffice/variant'; import { UMB_WORKSPACE_VARIANT_CONTEXT_TOKEN } from '../workspace/workspace-variant/workspace-variant.context'; import type { PropertyTypeResponseModelBaseModel } from '@umbraco-cms/backoffice/backend-api'; import '../workspace-property/workspace-property.element'; @@ -9,8 +9,6 @@ import { UmbLitElement } from '@umbraco-cms/internal/lit-element'; @customElement('umb-variantable-property') export class UmbVariantablePropertyElement extends UmbLitElement { - - private _property?: PropertyTypeResponseModelBaseModel | undefined; @property({ type: Object, attribute: false }) public get property(): PropertyTypeResponseModelBaseModel | undefined { @@ -62,7 +60,7 @@ export class UmbVariantablePropertyElement extends UmbLitElement { .property=${this._property} .propertyVariantId=${this._propertyVariantId}>`; } - + static styles = [ UUITextStyles, css` diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace-property/workspace-property.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace-property/workspace-property.context.ts index 5cad4cae04..e1b32969bb 100644 --- a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace-property/workspace-property.context.ts +++ b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace-property/workspace-property.context.ts @@ -1,4 +1,4 @@ -import { UmbVariantId } from '../../variants/variant-id.class'; +import { UmbVariantId } from '@umbraco-cms/backoffice/variant'; import { UmbWorkspaceVariableEntityContextInterface } from '../workspace/workspace-context/workspace-variable-entity-context.interface'; import { UMB_WORKSPACE_VARIANT_CONTEXT_TOKEN } from '../workspace/workspace-variant/workspace-variant.context'; import type { DataTypeResponseModel } from '@umbraco-cms/backoffice/backend-api'; diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace-property/workspace-property.element.ts b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace-property/workspace-property.element.ts index e65ed465b0..ed37995ec8 100644 --- a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace-property/workspace-property.element.ts +++ b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace-property/workspace-property.element.ts @@ -2,7 +2,7 @@ import { UUITextStyles } from '@umbraco-ui/uui-css/lib'; import { css, html } from 'lit'; import { customElement, property, state } from 'lit/decorators.js'; import { ifDefined } from 'lit/directives/if-defined.js'; -import { UmbVariantId } from '../../variants/variant-id.class'; +import { UmbVariantId } from '@umbraco-cms/backoffice/variant'; import { UmbWorkspacePropertyContext } from './workspace-property.context'; import { createExtensionElement, umbExtensionsRegistry } from '@umbraco-cms/backoffice/extensions-api'; import type { ManifestPropertyEditorUI } from '@umbraco-cms/backoffice/extensions-registry'; diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace/workspace-context/workspace-split-view-manager.class.ts b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace/workspace-context/workspace-split-view-manager.class.ts index b300be5ebf..facca7d905 100644 --- a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace/workspace-context/workspace-split-view-manager.class.ts +++ b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace/workspace-context/workspace-split-view-manager.class.ts @@ -1,4 +1,4 @@ -import { UmbVariantId } from '../../../variants/variant-id.class'; +import { UmbVariantId } from '@umbraco-cms/backoffice/variant'; import { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller'; import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api'; diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace/workspace-context/workspace-variable-entity-context.interface.ts b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace/workspace-context/workspace-variable-entity-context.interface.ts index b46abfeed7..45f2be4d9b 100644 --- a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace/workspace-context/workspace-variable-entity-context.interface.ts +++ b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace/workspace-context/workspace-variable-entity-context.interface.ts @@ -1,5 +1,5 @@ import type { Observable } from 'rxjs'; -import { UmbVariantId } from '../../../variants/variant-id.class'; +import { UmbVariantId } from '@umbraco-cms/backoffice/variant'; import { UmbWorkspaceSplitViewManager } from './workspace-split-view-manager.class'; import type { UmbEntityWorkspaceContextInterface } from '@umbraco-cms/backoffice/workspace'; import type { ValueModelBaseModel, VariantResponseModelBaseModel } from '@umbraco-cms/backoffice/backend-api'; diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace/workspace-variant/workspace-variant.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace/workspace-variant/workspace-variant.context.ts index 4364c6d3b8..dfd81d33db 100644 --- a/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace/workspace-variant/workspace-variant.context.ts +++ b/src/Umbraco.Web.UI.Client/src/backoffice/core/components/workspace/workspace-variant/workspace-variant.context.ts @@ -1,5 +1,5 @@ +import { UmbVariantId } from '@umbraco-cms/backoffice/variant'; import { UmbDocumentWorkspaceContext } from '../../../../documents/documents/workspace/document-workspace.context'; -import { UmbVariantId } from '../../../variants/variant-id.class'; import { UmbWorkspaceVariableEntityContextInterface } from '../workspace-context/workspace-variable-entity-context.interface'; import { ActiveVariant } from '../workspace-context/workspace-split-view-manager.class'; import { diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/core/property-editors/uis/block-grid/property-editor-ui-block-grid.element.ts b/src/Umbraco.Web.UI.Client/src/backoffice/core/property-editors/uis/block-grid/property-editor-ui-block-grid.element.ts index 8668375a0b..72e9c34152 100644 --- a/src/Umbraco.Web.UI.Client/src/backoffice/core/property-editors/uis/block-grid/property-editor-ui-block-grid.element.ts +++ b/src/Umbraco.Web.UI.Client/src/backoffice/core/property-editors/uis/block-grid/property-editor-ui-block-grid.element.ts @@ -1,7 +1,7 @@ import { html } from 'lit'; import { customElement, property, state } from 'lit/decorators.js'; import { UUITextStyles } from '@umbraco-ui/uui-css/lib'; -import { UmbVariantId } from '../../../variants/variant-id.class'; +import { UmbVariantId } from '@umbraco-cms/backoffice/variant'; import { UMB_WORKSPACE_VARIANT_CONTEXT_TOKEN } from '../../../components/workspace/workspace-variant/workspace-variant.context'; import { UMB_WORKSPACE_PROPERTY_CONTEXT_TOKEN } from '../../../components/workspace-property/workspace-property.context'; import type { UmbRoute } from '@umbraco-cms/backoffice/router'; diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/workspace/document-workspace-editor.element.ts b/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/workspace/document-workspace-editor.element.ts index d16cf62db1..2ba1fa1828 100644 --- a/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/workspace/document-workspace-editor.element.ts +++ b/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/workspace/document-workspace-editor.element.ts @@ -1,7 +1,7 @@ import { UUITextStyles } from '@umbraco-ui/uui-css/lib'; import { css, html } from 'lit'; import { customElement, state } from 'lit/decorators.js'; -import { UmbVariantId } from '../../../core/variants/variant-id.class'; +import { UmbVariantId } from '@umbraco-cms/backoffice/variant'; import { ActiveVariant } from '../../../core/components/workspace/workspace-context/workspace-split-view-manager.class'; import { UmbDocumentWorkspaceContext } from './document-workspace.context'; import { UmbDocumentWorkspaceSplitViewElement } from './document-workspace-split-view.element'; diff --git a/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/workspace/document-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/workspace/document-workspace.context.ts index 5ed036afbf..86740e8a61 100644 --- a/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/workspace/document-workspace.context.ts +++ b/src/Umbraco.Web.UI.Client/src/backoffice/documents/documents/workspace/document-workspace.context.ts @@ -1,9 +1,9 @@ -import { UmbContentTypePropertyStructureManager } from '@umbraco-cms/backoffice/content-type'; +import { UmbVariantId } from '@umbraco-cms/backoffice/variant'; import { UmbDocumentRepository } from '../repository/document.repository'; import { UmbDocumentTypeRepository } from '../../document-types/repository/document-type.repository'; import { UmbWorkspaceVariableEntityContextInterface } from '../../../core/components/workspace/workspace-context/workspace-variable-entity-context.interface'; -import { UmbVariantId } from '../../../core/variants/variant-id.class'; import { UmbWorkspaceSplitViewManager } from '../../../core/components/workspace/workspace-context/workspace-split-view-manager.class'; +import { UmbContentTypePropertyStructureManager } from '@umbraco-cms/backoffice/content-type'; import { UmbWorkspaceContext } from '@umbraco-cms/backoffice/workspace'; import type { CreateDocumentRequestModel, DocumentResponseModel } from '@umbraco-cms/backoffice/backend-api'; import { diff --git a/src/Umbraco.Web.UI.Client/src/core/router/variant-router-slot.element.ts b/src/Umbraco.Web.UI.Client/src/core/router/variant-router-slot.element.ts index bfb18b3e48..61f133c674 100644 --- a/src/Umbraco.Web.UI.Client/src/core/router/variant-router-slot.element.ts +++ b/src/Umbraco.Web.UI.Client/src/core/router/variant-router-slot.element.ts @@ -1,5 +1,5 @@ import { customElement, property } from 'lit/decorators.js'; -import { UmbVariantId } from '../../backoffice/core/variants/variant-id.class'; +import { UmbVariantId } from '@umbraco-cms/backoffice/variant'; import { UmbRouterSlotElement } from './router-slot.element'; import { UmbRoute } from '@umbraco-cms/backoffice/router'; diff --git a/src/Umbraco.Web.UI.Client/tsconfig.json b/src/Umbraco.Web.UI.Client/tsconfig.json index de3fe97d3e..e4fd9a2518 100644 --- a/src/Umbraco.Web.UI.Client/tsconfig.json +++ b/src/Umbraco.Web.UI.Client/tsconfig.json @@ -46,6 +46,7 @@ "@umbraco-cms/backoffice/collection": ["libs/collection"], "@umbraco-cms/backoffice/tree": ["libs/tree"], "@umbraco-cms/backoffice/section": ["libs/section"], + "@umbraco-cms/backoffice/variant": ["libs/variant"], "@umbraco-cms/backoffice/core/components": ["src/backoffice/core/components"], "@umbraco-cms/backoffice/user-group": ["src/backoffice/users/user-groups"], diff --git a/src/Umbraco.Web.UI.Client/web-test-runner.config.mjs b/src/Umbraco.Web.UI.Client/web-test-runner.config.mjs index 608f3dd1df..9ce6f34ed6 100644 --- a/src/Umbraco.Web.UI.Client/web-test-runner.config.mjs +++ b/src/Umbraco.Web.UI.Client/web-test-runner.config.mjs @@ -62,6 +62,7 @@ export default { '@umbraco-cms/backoffice/collection': './libs/collection/index.ts', '@umbraco-cms/backoffice/tree': './libs/tree/index.ts', '@umbraco-cms/backoffice/section': './libs/section/index.ts', + '@umbraco-cms/backoffice/variant': './libs/variant/index.ts', '@umbraco-cms/backoffice/core/components': './src/backoffice/core/components/index.ts', '@umbraco-cms/backoffice/user-group': './src/backoffice/users/user-groups/index.ts',