Skip to content

Commit 0e8de9a

Browse files
authored
Bugfix: Content Picker, gets dynamic root value from menu context (#2212)
Content Picker: refactors gathering dynamic root current and parent uniques Uses `UmbMenuStructureWorkspaceContext.structure` to get the top-most entity workspace's unique and parent unique values.
1 parent 40fcc1e commit 0e8de9a

File tree

1 file changed

+4
-7
lines changed

1 file changed

+4
-7
lines changed

src/packages/property-editors/content-picker/property-editor-ui-content-picker.element.ts

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
66
import { UmbFormControlMixin } from '@umbraco-cms/backoffice/validation';
77
import { UmbPropertyValueChangeEvent } from '@umbraco-cms/backoffice/property-editor';
88
import { UMB_DOCUMENT_ENTITY_TYPE } from '@umbraco-cms/backoffice/document';
9-
import { UMB_ENTITY_WORKSPACE_CONTEXT } from '@umbraco-cms/backoffice/workspace';
109
import { UMB_MEDIA_ENTITY_TYPE } from '@umbraco-cms/backoffice/media';
1110
import { UMB_MEMBER_ENTITY_TYPE } from '@umbraco-cms/backoffice/member';
1211
import type { UmbPropertyEditorConfigCollection } from '@umbraco-cms/backoffice/property-editor';
@@ -123,13 +122,11 @@ export class UmbPropertyEditorUIContentPickerElement
123122
if (this._rootUnique) return;
124123
if (!this.#dynamicRoot) return;
125124

126-
const workspaceContext = await this.getContext(UMB_ENTITY_WORKSPACE_CONTEXT);
127-
const unique = workspaceContext.getUnique();
128-
if (!unique) return;
129-
130125
const menuStructureWorkspaceContext = (await this.getContext('UmbMenuStructureWorkspaceContext')) as any;
131-
const parent = (await this.observe(menuStructureWorkspaceContext.parent, () => {})?.asPromise()) as any;
132-
const parentUnique = parent?.unique;
126+
const structure = (await this.observe(menuStructureWorkspaceContext.structure, () => {})?.asPromise()) as any[];
127+
const [parentUnique, unique] = structure?.slice(-2).map((x) => x.unique) ?? [];
128+
129+
if (!unique) return;
133130

134131
const result = await this.#dynamicRootRepository.requestRoot(this.#dynamicRoot, unique, parentUnique);
135132
if (result && result.length > 0) {

0 commit comments

Comments
 (0)