diff --git a/src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit-properties.element.ts b/src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit-properties.element.ts index 0b587587ed..95b518f637 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit-properties.element.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit-properties.element.ts @@ -2,16 +2,16 @@ import { UMB_BLOCK_WORKSPACE_CONTEXT } from '../../block-workspace.context-token import type { UmbBlockWorkspaceElementManagerNames } from '../../block-workspace.context.js'; import { css, html, customElement, property, state, repeat } from '@umbraco-cms/backoffice/external/lit'; import { UmbTextStyles } from '@umbraco-cms/backoffice/style'; -import type { - UmbPropertyContainerTypes, - UmbContentTypeModel, - UmbPropertyTypeModel, -} from '@umbraco-cms/backoffice/content-type'; +import type { UmbContentTypeModel, UmbPropertyTypeModel } from '@umbraco-cms/backoffice/content-type'; import { UmbContentTypePropertyStructureHelper } from '@umbraco-cms/backoffice/content-type'; import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element'; @customElement('umb-block-workspace-view-edit-properties') export class UmbBlockWorkspaceViewEditPropertiesElement extends UmbLitElement { + #managerName?: UmbBlockWorkspaceElementManagerNames; + #blockWorkspace?: typeof UMB_BLOCK_WORKSPACE_CONTEXT.TYPE; + #propertyStructureHelper = new UmbContentTypePropertyStructureHelper(this); + @property({ attribute: false }) public get managerName(): UmbBlockWorkspaceElementManagerNames | undefined { return this.#managerName; @@ -20,24 +20,13 @@ export class UmbBlockWorkspaceViewEditPropertiesElement extends UmbLitElement { this.#managerName = value; this.#setStructureManager(); } - #managerName?: UmbBlockWorkspaceElementManagerNames; - #blockWorkspace?: typeof UMB_BLOCK_WORKSPACE_CONTEXT.TYPE; - #propertyStructureHelper = new UmbContentTypePropertyStructureHelper(this); @property({ type: String, attribute: 'container-name', reflect: false }) - public get containerName(): string | undefined { - return this.#propertyStructureHelper.getContainerName(); + public get containerId(): string | null | undefined { + return this.#propertyStructureHelper.getContainerId(); } - public set containerName(value: string | undefined) { - this.#propertyStructureHelper.setContainerName(value); - } - - @property({ type: String, attribute: 'container-type', reflect: false }) - public get containerType(): UmbPropertyContainerTypes | undefined { - return this.#propertyStructureHelper.getContainerType(); - } - public set containerType(value: UmbPropertyContainerTypes | undefined) { - this.#propertyStructureHelper.setContainerType(value); + public set containerId(value: string | null | undefined) { + this.#propertyStructureHelper.setContainerId(value); } @state() diff --git a/src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit-tab.element.ts b/src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit-tab.element.ts index 2518c814d4..29b08a19e6 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit-tab.element.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/block/block/workspace/views/edit/block-workspace-view-edit-tab.element.ts @@ -47,11 +47,14 @@ export class UmbBlockWorkspaceViewEditTabElement extends UmbLitElement { @property({ type: String }) public get containerId(): string | null | undefined { - return this.#groupStructureHelper.getParentId(); + return this._containerId; } public set containerId(value: string | null | undefined) { + this._containerId = value; this.#groupStructureHelper.setParentId(value); } + @state() + private _containerId?: string | null; /** * If true, the group box will be hidden, if we are to only represents one group. @@ -95,30 +98,27 @@ export class UmbBlockWorkspaceViewEditTabElement extends UmbLitElement { } render() { - return html` - ${this._hasProperties ? this.#renderPart(this._tabName) : ''} - ${repeat( - this._groups, - (group) => group.name, - (group) => this.#renderPart(group.name, group.name), - )} - `; - } - - #renderPart(groupName: string | null | undefined, boxName?: string | null | undefined) { - return this.hideSingleGroup && this._groups.length === 1 - ? html` ` - : html` `; + return this._containerId + ? html` + ${this._hasProperties + ? html` ` + : ''} + ${repeat( + this._groups, + (group) => group.name, + (group) => + html` `, + )} + ` + : ''; } static styles = [ diff --git a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/views/edit/document-workspace-view-edit-properties.element.ts b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/views/edit/document-workspace-view-edit-properties.element.ts index 9f8744e49b..fc912915c5 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/views/edit/document-workspace-view-edit-properties.element.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/views/edit/document-workspace-view-edit-properties.element.ts @@ -1,27 +1,19 @@ import { UMB_DOCUMENT_WORKSPACE_CONTEXT } from '../../document-workspace.context-token.js'; import { css, html, customElement, property, state, repeat } from '@umbraco-cms/backoffice/external/lit'; import { UmbTextStyles } from '@umbraco-cms/backoffice/style'; -import type { UmbPropertyContainerTypes, UmbPropertyTypeModel } from '@umbraco-cms/backoffice/content-type'; +import type { UmbPropertyTypeModel } from '@umbraco-cms/backoffice/content-type'; import { UmbContentTypePropertyStructureHelper } from '@umbraco-cms/backoffice/content-type'; import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element'; import type { UmbDocumentTypeDetailModel } from '@umbraco-cms/backoffice/document-type'; @customElement('umb-document-workspace-view-edit-properties') export class UmbDocumentWorkspaceViewEditPropertiesElement extends UmbLitElement { - @property({ type: String, attribute: 'container-name', reflect: false }) - public get containerName(): string | undefined { - return this.#propertyStructureHelper.getContainerName(); + @property({ type: String, attribute: 'container-id', reflect: false }) + public get containerId(): string | null | undefined { + return this.#propertyStructureHelper.getContainerId(); } - public set containerName(value: string | undefined) { - this.#propertyStructureHelper.setContainerName(value); - } - - @property({ type: String, attribute: 'container-type', reflect: false }) - public get containerType(): UmbPropertyContainerTypes | undefined { - return this.#propertyStructureHelper.getContainerType(); - } - public set containerType(value: UmbPropertyContainerTypes | undefined) { - this.#propertyStructureHelper.setContainerType(value); + public set containerId(value: string | null | undefined) { + this.#propertyStructureHelper.setContainerId(value); } #propertyStructureHelper = new UmbContentTypePropertyStructureHelper(this); diff --git a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/views/edit/document-workspace-view-edit-tab.element.ts b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/views/edit/document-workspace-view-edit-tab.element.ts index 447442f0d0..dd7f8b91ff 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/views/edit/document-workspace-view-edit-tab.element.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/views/edit/document-workspace-view-edit-tab.element.ts @@ -28,11 +28,14 @@ export class UmbDocumentWorkspaceViewEditTabElement extends UmbLitElement { @property({ type: String }) public get containerId(): string | null | undefined { - return this.#groupStructureHelper.getParentId(); + return this._containerId; } public set containerId(value: string | null | undefined) { + this._containerId = value; this.#groupStructureHelper.setParentId(value); } + @state() + private _containerId?: string | null; #groupStructureHelper = new UmbContentTypeContainerStructureHelper(this); @@ -63,8 +66,7 @@ export class UmbDocumentWorkspaceViewEditTabElement extends UmbLitElement { + .containerId=${this._containerId}> ` : ''} @@ -75,8 +77,7 @@ export class UmbDocumentWorkspaceViewEditTabElement extends UmbLitElement { html` + .containerId=${group.id}> `, )} `; diff --git a/src/Umbraco.Web.UI.Client/src/packages/media/media/workspace/views/edit/media-workspace-view-edit-properties.element.ts b/src/Umbraco.Web.UI.Client/src/packages/media/media/workspace/views/edit/media-workspace-view-edit-properties.element.ts index fb48820313..3d2d99954d 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/media/media/workspace/views/edit/media-workspace-view-edit-properties.element.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/media/media/workspace/views/edit/media-workspace-view-edit-properties.element.ts @@ -1,26 +1,18 @@ import { UMB_MEDIA_WORKSPACE_CONTEXT } from '../../media-workspace.context-token.js'; import { css, html, customElement, property, state, repeat } from '@umbraco-cms/backoffice/external/lit'; import { UmbTextStyles } from '@umbraco-cms/backoffice/style'; -import type { UmbPropertyContainerTypes, UmbPropertyTypeModel } from '@umbraco-cms/backoffice/content-type'; +import type { UmbPropertyTypeModel } from '@umbraco-cms/backoffice/content-type'; import { UmbContentTypePropertyStructureHelper } from '@umbraco-cms/backoffice/content-type'; import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element'; @customElement('umb-media-workspace-view-edit-properties') export class UmbMediaWorkspaceViewEditPropertiesElement extends UmbLitElement { @property({ type: String, attribute: 'container-name', reflect: false }) - public get containerName(): string | undefined { - return this._propertyStructureHelper.getContainerName(); + public get containerId(): string | null | undefined { + return this._propertyStructureHelper.getContainerId(); } - public set containerName(value: string | undefined) { - this._propertyStructureHelper.setContainerName(value); - } - - @property({ type: String, attribute: 'container-type', reflect: false }) - public get containerType(): UmbPropertyContainerTypes | undefined { - return this._propertyStructureHelper.getContainerType(); - } - public set containerType(value: UmbPropertyContainerTypes | undefined) { - this._propertyStructureHelper.setContainerType(value); + public set containerId(value: string | null | undefined) { + this._propertyStructureHelper.setContainerId(value); } _propertyStructureHelper = new UmbContentTypePropertyStructureHelper(this); diff --git a/src/Umbraco.Web.UI.Client/src/packages/media/media/workspace/views/edit/media-workspace-view-edit-tab.element.ts b/src/Umbraco.Web.UI.Client/src/packages/media/media/workspace/views/edit/media-workspace-view-edit-tab.element.ts index f1c7e9a19f..e9fe3a2f09 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/media/media/workspace/views/edit/media-workspace-view-edit-tab.element.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/media/media/workspace/views/edit/media-workspace-view-edit-tab.element.ts @@ -28,11 +28,14 @@ export class UmbMediaWorkspaceViewEditTabElement extends UmbLitElement { @property({ type: String }) public get containerId(): string | null | undefined { - return this.#groupStructureHelper.getParentId(); + return this._containerId; } public set containerId(value: string | null | undefined) { + this._containerId = value; this.#groupStructureHelper.setParentId(value); } + @state() + private _containerId?: string | null; #groupStructureHelper = new UmbContentTypeContainerStructureHelper(this); @@ -63,8 +66,7 @@ export class UmbMediaWorkspaceViewEditTabElement extends UmbLitElement { + .containerId=${this._containerId}> ` : ''} @@ -75,8 +77,7 @@ export class UmbMediaWorkspaceViewEditTabElement extends UmbLitElement { html` + .containerId=${group.id}> `, )} `; diff --git a/src/Umbraco.Web.UI.Client/src/packages/members/member/workspace/views/content/member-workspace-view-content-properties.element.ts b/src/Umbraco.Web.UI.Client/src/packages/members/member/workspace/views/content/member-workspace-view-content-properties.element.ts index 0c6fbb52dc..9d363528ba 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/members/member/workspace/views/content/member-workspace-view-content-properties.element.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/members/member/workspace/views/content/member-workspace-view-content-properties.element.ts @@ -1,26 +1,18 @@ import { UMB_MEMBER_WORKSPACE_CONTEXT } from '../../member-workspace.context.js'; import { css, html, customElement, property, state, repeat } from '@umbraco-cms/backoffice/external/lit'; import { UmbTextStyles } from '@umbraco-cms/backoffice/style'; -import type { UmbPropertyContainerTypes, UmbPropertyTypeModel } from '@umbraco-cms/backoffice/content-type'; +import type { UmbPropertyTypeModel } from '@umbraco-cms/backoffice/content-type'; import { UmbContentTypePropertyStructureHelper } from '@umbraco-cms/backoffice/content-type'; import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element'; @customElement('umb-member-workspace-view-content-properties') export class UmbMemberWorkspaceViewContentPropertiesElement extends UmbLitElement { @property({ type: String, attribute: 'container-name', reflect: false }) - public get containerName(): string | undefined { - return this._propertyStructureHelper.getContainerName(); + public get containerId(): string | null | undefined { + return this._propertyStructureHelper.getContainerId(); } - public set containerName(value: string | undefined) { - this._propertyStructureHelper.setContainerName(value); - } - - @property({ type: String, attribute: 'container-type', reflect: false }) - public get containerType(): UmbPropertyContainerTypes | undefined { - return this._propertyStructureHelper.getContainerType(); - } - public set containerType(value: UmbPropertyContainerTypes | undefined) { - this._propertyStructureHelper.setContainerType(value); + public set containerName(value: string | null | undefined) { + this._propertyStructureHelper.setContainerId(value); } _propertyStructureHelper = new UmbContentTypePropertyStructureHelper(this); diff --git a/src/Umbraco.Web.UI.Client/src/packages/members/member/workspace/views/content/member-workspace-view-content-tab.element.ts b/src/Umbraco.Web.UI.Client/src/packages/members/member/workspace/views/content/member-workspace-view-content-tab.element.ts index 0256197809..b2ab54a30d 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/members/member/workspace/views/content/member-workspace-view-content-tab.element.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/members/member/workspace/views/content/member-workspace-view-content-tab.element.ts @@ -28,11 +28,14 @@ export class UmbMemberWorkspaceViewContentTabElement extends UmbLitElement { @property({ type: String }) public get containerId(): string | null | undefined { - return this.#groupStructureHelper.getParentId(); + return this._containerId; } public set containerId(value: string | null | undefined) { + this._containerId = value; this.#groupStructureHelper.setParentId(value); } + @state() + private _containerId?: string | null; #groupStructureHelper = new UmbContentTypeContainerStructureHelper(this); @@ -63,8 +66,7 @@ export class UmbMemberWorkspaceViewContentTabElement extends UmbLitElement { + .containerId=${this._containerId}> ` : ''} @@ -75,8 +77,7 @@ export class UmbMemberWorkspaceViewContentTabElement extends UmbLitElement { html` + .containerId=${group.id}> `, )} `;