pass entity type when requesting ancestors

This commit is contained in:
Mads Rasmussen
2024-05-14 08:43:53 +02:00
parent 3b8a53ebfc
commit d93e0c4e4f
2 changed files with 10 additions and 2 deletions

View File

@@ -59,11 +59,15 @@ export abstract class UmbMenuTreeStructureWorkspaceContextBase extends UmbContex
const isNew = this.#workspaceContext?.getIsNew();
const uniqueObservable = isNew ? this.#workspaceContext?.parentUnique : this.#workspaceContext?.unique;
const entityTypeObservable = isNew ? this.#workspaceContext?.parentEntityType : this.#workspaceContext?.entityType;
const unique = (await this.observe(uniqueObservable, () => {})?.asPromise()) as string;
if (!unique) throw new Error('Unique is not available');
const { data } = await treeRepository.requestTreeItemAncestors({ descendantUnique: unique });
const entityType = (await this.observe(entityTypeObservable, () => {})?.asPromise()) as string;
if (!entityType) throw new Error('Entity type is not available');
const { data } = await treeRepository.requestTreeItemAncestors({ treeItem: { unique, entityType } });
if (data) {
const ancestorItems = data.map((treeItem) => {

View File

@@ -40,12 +40,16 @@ export abstract class UmbMenuVariantTreeStructureWorkspaceContextBase extends Um
async #requestStructure() {
const isNew = this.#workspaceContext?.getIsNew();
const uniqueObservable = isNew ? this.#workspaceContext?.parentUnique : this.#workspaceContext?.unique;
const entityTypeObservable = isNew ? this.#workspaceContext?.parentEntityType : this.#workspaceContext?.entityType;
let structureItems: Array<UmbVariantStructureItemModel> = [];
const unique = (await this.observe(uniqueObservable, () => {})?.asPromise()) as string;
if (!unique) throw new Error('Unique is not available');
const entityType = (await this.observe(entityTypeObservable, () => {})?.asPromise()) as string;
if (!entityType) throw new Error('Entity type is not available');
// TODO: add correct tree variant item model
const treeRepository = await createExtensionApiByAlias<UmbTreeRepository<any, UmbTreeRootModel>>(
this,
@@ -64,7 +68,7 @@ export abstract class UmbMenuVariantTreeStructureWorkspaceContextBase extends Um
];
}
const { data } = await treeRepository.requestTreeItemAncestors({ descendantUnique: unique });
const { data } = await treeRepository.requestTreeItemAncestors({ treeItem: { unique, entityType } });
if (data) {
const ancestorItems = data.map((treeItem) => {