diff --git a/src/Umbraco.Web.UI.Client/src/packages/block/block-custom-view/types.ts b/src/Umbraco.Web.UI.Client/src/packages/block/block-custom-view/types.ts
index ead519dbbf..fb67f8ae08 100644
--- a/src/Umbraco.Web.UI.Client/src/packages/block/block-custom-view/types.ts
+++ b/src/Umbraco.Web.UI.Client/src/packages/block/block-custom-view/types.ts
@@ -27,6 +27,7 @@ export interface UmbBlockEditorCustomViewProperties<
settings?: UmbBlockDataType;
contentInvalid?: boolean;
settingsInvalid?: boolean;
+ unpublished?: boolean;
}
export interface UmbBlockEditorCustomViewElement<
diff --git a/src/Umbraco.Web.UI.Client/src/packages/block/block-grid/components/block-grid-entry/block-grid-entry.element.ts b/src/Umbraco.Web.UI.Client/src/packages/block/block-grid/components/block-grid-entry/block-grid-entry.element.ts
index b8e3db2da6..96b21292da 100644
--- a/src/Umbraco.Web.UI.Client/src/packages/block/block-grid/components/block-grid-entry/block-grid-entry.element.ts
+++ b/src/Umbraco.Web.UI.Client/src/packages/block/block-grid/components/block-grid-entry/block-grid-entry.element.ts
@@ -84,6 +84,9 @@ export class UmbBlockGridEntryElement extends UmbLitElement implements UmbProper
@state()
_icon?: string;
+ @state()
+ _exposed?: boolean;
+
@state()
_workspaceEditContentPath?: string;
@@ -173,6 +176,14 @@ export class UmbBlockGridEntryElement extends UmbLitElement implements UmbProper
},
null,
);
+ this.observe(
+ this.#context.hasExpose,
+ (exposed) => {
+ this.#updateBlockViewProps({ unpublished: !exposed });
+ this._exposed = exposed;
+ },
+ null,
+ );
this.observe(
this.#context.inlineEditingMode,
(mode) => {
@@ -376,6 +387,7 @@ export class UmbBlockGridEntryElement extends UmbLitElement implements UmbProper
class="umb-block-grid__block--view"
.label=${this._label}
.icon=${this._icon}
+ .unpublished=${!this._exposed}
.content=${this._blockViewProps.content}
.settings=${this._blockViewProps.settings}>`;
}
@@ -385,6 +397,7 @@ export class UmbBlockGridEntryElement extends UmbLitElement implements UmbProper
class="umb-block-grid__block--view"
.label=${this._label}
.icon=${this._icon}
+ .unpublished=${!this._exposed}
.content=${this._blockViewProps.content}
.settings=${this._blockViewProps.settings}>`;
}
diff --git a/src/Umbraco.Web.UI.Client/src/packages/block/block-list/components/block-list-entry/block-list-entry.element.ts b/src/Umbraco.Web.UI.Client/src/packages/block/block-list/components/block-list-entry/block-list-entry.element.ts
index e57b1a056a..e354c0f8bb 100644
--- a/src/Umbraco.Web.UI.Client/src/packages/block/block-list/components/block-list-entry/block-list-entry.element.ts
+++ b/src/Umbraco.Web.UI.Client/src/packages/block/block-list/components/block-list-entry/block-list-entry.element.ts
@@ -73,6 +73,9 @@ export class UmbBlockListEntryElement extends UmbLitElement implements UmbProper
@state()
_icon?: string;
+ @state()
+ _exposed?: boolean;
+
@state()
_workspaceEditContentPath?: string;
@@ -144,10 +147,18 @@ export class UmbBlockListEntryElement extends UmbLitElement implements UmbProper
},
null,
);
+ this.observe(
+ this.#context.hasExpose,
+ (exposed) => {
+ this.#updateBlockViewProps({ unpublished: !exposed });
+ this._exposed = exposed;
+ },
+ null,
+ );
this.observe(
this.#context.inlineEditingMode,
- (inlineEditingMode) => {
- this._inlineEditingMode = inlineEditingMode;
+ (mode) => {
+ this._inlineEditingMode = mode;
},
null,
);
@@ -256,6 +267,7 @@ export class UmbBlockListEntryElement extends UmbLitElement implements UmbProper
return html`