diff --git a/src/Umbraco.Web.UI.Client/src/packages/block/block-list/property-editors/block-list-editor/property-editor-ui-block-list.element.ts b/src/Umbraco.Web.UI.Client/src/packages/block/block-list/property-editors/block-list-editor/property-editor-ui-block-list.element.ts index 74ad4e1be7..9c52e958c4 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/block/block-list/property-editors/block-list-editor/property-editor-ui-block-list.element.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/block/block-list/property-editors/block-list-editor/property-editor-ui-block-list.element.ts @@ -265,7 +265,8 @@ export class UmbPropertyEditorUIBlockListElement } override render() { - return html` ${repeat( + return html` + ${repeat( this._layouts, (x) => x.contentKey, (layoutEntry, index) => html` @@ -278,7 +279,16 @@ export class UmbPropertyEditorUIBlockListElement `, )} - ${this.#renderCreateButton()} ${this.#renderPasteButton()} `; + ${this.#renderCreateButtonGroup()} + `; + } + + #renderCreateButtonGroup() { + if (this.readonly && this._layouts.length > 0) { + return nothing; + } else { + return html` ${this.#renderCreateButton()} ${this.#renderPasteButton()} `; + } } #renderInlineCreateButton(index: number) { @@ -289,8 +299,6 @@ export class UmbPropertyEditorUIBlockListElement } #renderCreateButton() { - if (this.readonly) return nothing; - let createPath: string | undefined; if (this._blocks?.length === 1) { const elementKey = this._blocks[0].contentElementTypeKey; @@ -301,17 +309,21 @@ export class UmbPropertyEditorUIBlockListElement } return html` - + `; } #renderPasteButton() { - if (this.readonly) return nothing; return html` + href=${this._catalogueRouteBuilder?.({ view: 'clipboard', index: -1 }) ?? ''} + ?disabled=${this.readonly}> `;