diff --git a/src/Umbraco.Web.UI.Client/src/packages/block/block-type/workspace/views/block-type-list-workspace-view.element.ts b/src/Umbraco.Web.UI.Client/src/packages/block/block-type/workspace/views/block-type-list-workspace-view.element.ts
index 2428a7d258..f4840e235a 100644
--- a/src/Umbraco.Web.UI.Client/src/packages/block/block-type/workspace/views/block-type-list-workspace-view.element.ts
+++ b/src/Umbraco.Web.UI.Client/src/packages/block/block-type/workspace/views/block-type-list-workspace-view.element.ts
@@ -29,11 +29,23 @@ export class UmbBlockTypeListWorkspaceViewSettingsElement extends UmbLitElement
+ property-editor-ui-alias="Umb.PropertyEditorUi.DocumentTypePicker"
+ .config=${[
+ {
+ alias: 'onlyPickElementTypes',
+ value: true,
+ },
+ ]}>
+ property-editor-ui-alias="Umb.PropertyEditorUi.DocumentTypePicker"
+ .config=${[
+ {
+ alias: 'onlyPickElementTypes',
+ value: true,
+ },
+ ]}>
;
diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/picker-input/picker-input.context.ts b/src/Umbraco.Web.UI.Client/src/packages/core/picker-input/picker-input.context.ts
index 28a5bba847..0a8a3c91a9 100644
--- a/src/Umbraco.Web.UI.Client/src/packages/core/picker-input/picker-input.context.ts
+++ b/src/Umbraco.Web.UI.Client/src/packages/core/picker-input/picker-input.context.ts
@@ -19,8 +19,6 @@ export class UmbPickerInputContext extends Um
public modalManager?: UmbModalManagerContext;
- public pickableFilter?: (item: ItemType) => boolean = () => true;
-
#init: Promise;
#itemManager;
@@ -74,7 +72,6 @@ export class UmbPickerInputContext extends Um
const modalContext = this.modalManager.open(this.modalAlias, {
data: {
multiple: this.max === 1 ? false : true,
- pickableFilter: this.pickableFilter,
...pickerData,
},
value: {
diff --git a/src/Umbraco.Web.UI.Client/src/packages/documents/document-types/components/input-document-type/input-document-type.element.ts b/src/Umbraco.Web.UI.Client/src/packages/documents/document-types/components/input-document-type/input-document-type.element.ts
index 4659c4d75f..cacf3c9c87 100644
--- a/src/Umbraco.Web.UI.Client/src/packages/documents/document-types/components/input-document-type/input-document-type.element.ts
+++ b/src/Umbraco.Web.UI.Client/src/packages/documents/document-types/components/input-document-type/input-document-type.element.ts
@@ -75,14 +75,6 @@ export class UmbInputDocumentTypeElement extends FormControlMixin(UmbLitElement)
this.selectedIds = splitStringToArray(idsString);
}
- @property()
- get pickableFilter() {
- return this.#pickerContext.pickableFilter;
- }
- set pickableFilter(newVal) {
- this.#pickerContext.pickableFilter = newVal;
- }
-
@state()
private _items?: Array;
diff --git a/src/Umbraco.Web.UI.Client/src/packages/documents/document-types/property-editors/document-type-picker/manifests.ts b/src/Umbraco.Web.UI.Client/src/packages/documents/document-types/property-editors/document-type-picker/manifests.ts
index 04d26479d8..cc9852a340 100644
--- a/src/Umbraco.Web.UI.Client/src/packages/documents/document-types/property-editors/document-type-picker/manifests.ts
+++ b/src/Umbraco.Web.UI.Client/src/packages/documents/document-types/property-editors/document-type-picker/manifests.ts
@@ -17,6 +17,12 @@ export const manifest: ManifestPropertyEditorUi = {
description: 'Opens the node in a dialog',
propertyEditorUiAlias: 'Umb.PropertyEditorUi.Toggle',
},
+ {
+ alias: 'onlyPickElementTypes',
+ label: 'Only Element Types',
+ description: 'Limit to only pick Element Types',
+ propertyEditorUiAlias: 'Umb.PropertyEditorUi.Toggle',
+ },
],
},
},
diff --git a/src/Umbraco.Web.UI.Client/src/packages/documents/document-types/property-editors/document-type-picker/property-editor-ui-document-type-picker.element.ts b/src/Umbraco.Web.UI.Client/src/packages/documents/document-types/property-editors/document-type-picker/property-editor-ui-document-type-picker.element.ts
index cb3552b620..4ee89b94eb 100644
--- a/src/Umbraco.Web.UI.Client/src/packages/documents/document-types/property-editors/document-type-picker/property-editor-ui-document-type-picker.element.ts
+++ b/src/Umbraco.Web.UI.Client/src/packages/documents/document-types/property-editors/document-type-picker/property-editor-ui-document-type-picker.element.ts
@@ -18,16 +18,21 @@ export class UmbPropertyEditorUIDocumentTypePickerElement extends UmbLitElement
@property({ attribute: false })
public set config(config: UmbPropertyEditorConfigCollection | undefined) {
- const validationLimit = config?.find((x) => x.alias === 'validationLimit');
+ if (config) {
+ const validationLimit = config.getValueByAlias('validationLimit');
+ this._limitMin = validationLimit?.min;
+ this._limitMax = validationLimit?.max;
- this._limitMin = (validationLimit?.value as any)?.min;
- this._limitMax = (validationLimit?.value as any)?.max;
+ this._onlyElementTypes = config.getValueByAlias('onlyPickElementTypes');
+ }
}
@state()
private _limitMin?: number;
@state()
private _limitMax?: number;
+ @state()
+ private _onlyElementTypes?: boolean;
private _onChange(event: CustomEvent) {
this.value = (event.target as UmbInputDocumentTypeElement).selectedIds;
@@ -42,6 +47,7 @@ export class UmbPropertyEditorUIDocumentTypePickerElement extends UmbLitElement
.selectedIds=${this._value}
.min=${this._limitMin ?? 0}
.max=${this._limitMax ?? Infinity}
+ .element-types-only=${this._onlyElementTypes}
>Add
`;
diff --git a/src/Umbraco.Web.UI.Client/src/packages/media/media-types/components/media-type-input/media-type-input.element.ts b/src/Umbraco.Web.UI.Client/src/packages/media/media-types/components/media-type-input/media-type-input.element.ts
index 94e0008525..30f65c151a 100644
--- a/src/Umbraco.Web.UI.Client/src/packages/media/media-types/components/media-type-input/media-type-input.element.ts
+++ b/src/Umbraco.Web.UI.Client/src/packages/media/media-types/components/media-type-input/media-type-input.element.ts
@@ -66,14 +66,6 @@ export class UmbMediaTypeInputElement extends FormControlMixin(UmbLitElement) {
this.selectedIds = splitStringToArray(idsString);
}
- @property()
- get pickableFilter() {
- return this.#pickerContext.pickableFilter;
- }
- set pickableFilter(newVal) {
- this.#pickerContext.pickableFilter = newVal;
- }
-
@state()
private _items?: Array;