parent parent unique to structure context

This commit is contained in:
Mads Rasmussen
2024-05-08 15:56:52 +02:00
parent dcc227ee7c
commit fc65f52a05

View File

@@ -3,7 +3,7 @@ import type { UmbTreeRepository, UmbUniqueTreeItemModel, UmbUniqueTreeRootModel
import { createExtensionApiByAlias } from '@umbraco-cms/backoffice/extension-registry';
import { UmbContextBase } from '@umbraco-cms/backoffice/class-api';
import { UMB_WORKSPACE_CONTEXT } from '@umbraco-cms/backoffice/workspace';
import { UmbArrayState } from '@umbraco-cms/backoffice/observable-api';
import { UmbArrayState, UmbObjectState } from '@umbraco-cms/backoffice/observable-api';
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
interface UmbMenuTreeStructureWorkspaceContextBaseArgs {
@@ -17,6 +17,9 @@ export abstract class UmbMenuTreeStructureWorkspaceContextBase extends UmbContex
#structure = new UmbArrayState<UmbStructureItemModel>([], (x) => x.unique);
public readonly structure = this.#structure.asObservable();
#parent = new UmbObjectState<UmbStructureItemModel | undefined>(undefined);
public readonly parent = this.#parent.asObservable();
constructor(host: UmbControllerHost, args: UmbMenuTreeStructureWorkspaceContextBaseArgs) {
// TODO: set up context token
super(host, 'UmbMenuStructureWorkspaceContext');
@@ -70,9 +73,12 @@ export abstract class UmbMenuTreeStructureWorkspaceContextBase extends UmbContex
isFolder: treeItem.isFolder,
};
});
structureItems.push(...ancestorItems);
}
const parent = structureItems[structureItems.length - 2];
this.#parent.setValue(parent);
this.#structure.setValue(structureItems);
}
}