rename to merged containers
This commit is contained in:
@@ -37,7 +37,7 @@ export class UmbBlockWorkspaceViewEditContentNoRouterElement extends UmbLitEleme
|
||||
|
||||
this.#tabsStructureHelper.setIsRoot(true);
|
||||
this.#tabsStructureHelper.setContainerChildType('Tab');
|
||||
this.observe(this.#tabsStructureHelper.containers, (tabs) => {
|
||||
this.observe(this.#tabsStructureHelper.mergedContainers, (tabs) => {
|
||||
this._tabs = tabs;
|
||||
this._checkDefaultTabName();
|
||||
});
|
||||
|
||||
@@ -82,7 +82,7 @@ export class UmbBlockWorkspaceViewEditTabElement extends UmbLitElement {
|
||||
if (!this.#blockWorkspace || !this.#managerName) return;
|
||||
this.#groupStructureHelper.setStructureManager(this.#blockWorkspace[this.#managerName].structure);
|
||||
this.observe(
|
||||
this.#groupStructureHelper.containers,
|
||||
this.#groupStructureHelper.mergedContainers,
|
||||
(groups) => {
|
||||
this._groups = groups;
|
||||
},
|
||||
|
||||
@@ -74,7 +74,7 @@ export class UmbBlockWorkspaceViewEditElement extends UmbLitElement implements U
|
||||
'observeGroups',
|
||||
);
|
||||
this.observe(
|
||||
this.#tabsStructureHelper.containers,
|
||||
this.#tabsStructureHelper.mergedContainers,
|
||||
(tabs) => {
|
||||
this._tabs = tabs;
|
||||
this._createRoutes();
|
||||
|
||||
@@ -29,8 +29,8 @@ export class UmbContentTypeContainerStructureHelper<T extends UmbContentTypeMode
|
||||
private _parentMatchingContainers: UmbPropertyTypeContainerModel[] = [];
|
||||
|
||||
// State containing the merged containers (only one pr. name):
|
||||
#containers = new UmbArrayState<UmbPropertyTypeContainerModel>([], (x) => x.id);
|
||||
readonly containers = this.#containers.asObservable();
|
||||
#mergedContainers = new UmbArrayState<UmbPropertyTypeContainerModel>([], (x) => x.id);
|
||||
readonly mergedContainers = this.#mergedContainers.asObservable();
|
||||
|
||||
// Owner containers are containers owned by the owner Content Type (The specific one up for editing)
|
||||
private _ownerContainers: UmbPropertyTypeContainerModel[] = [];
|
||||
@@ -44,7 +44,7 @@ export class UmbContentTypeContainerStructureHelper<T extends UmbContentTypeMode
|
||||
this.#initResolver = resolve;
|
||||
});
|
||||
|
||||
this.#containers.sortBy((a, b) => (a.sortOrder || 0) - (b.sortOrder || 0));
|
||||
this.#mergedContainers.sortBy((a, b) => (a.sortOrder || 0) - (b.sortOrder || 0));
|
||||
}
|
||||
|
||||
public setStructureManager(structure: UmbContentTypePropertyStructureManager<T>) {
|
||||
@@ -115,18 +115,18 @@ export class UmbContentTypeContainerStructureHelper<T extends UmbContentTypeMode
|
||||
|
||||
if (this._isRoot) {
|
||||
this.removeControllerByAlias('_observeOwnerContainers');
|
||||
this.#containers.setValue([]);
|
||||
this.#mergedContainers.setValue([]);
|
||||
//this._observeChildProperties(); // We cannot have root properties currently, therefor we instead just set it to false:
|
||||
this.#hasProperties.setValue(false);
|
||||
this.#observeRootContainers();
|
||||
} else if (this._parentName && this._parentType) {
|
||||
this.#containers.setValue([]);
|
||||
this.#mergedContainers.setValue([]);
|
||||
this.observe(
|
||||
// This only works because we just have two levels, meaning this is the upper level and we want it to merge, so its okay this does not take parent-parent (And further structure) into account: [NL]
|
||||
this.#structure.containersByNameAndType(this._parentName, this._parentType),
|
||||
(parentContainers) => {
|
||||
this._ownerContainers = [];
|
||||
this.#containers.setValue([]);
|
||||
this.#mergedContainers.setValue([]);
|
||||
// Stop observing a the previous _parentMatchingContainers...
|
||||
this._parentMatchingContainers.forEach((container) => {
|
||||
this.removeControllerByAlias('_observeParentHasProperties_' + container.id);
|
||||
@@ -169,7 +169,7 @@ export class UmbContentTypeContainerStructureHelper<T extends UmbContentTypeMode
|
||||
this.#structure.ownerContainersOf(this._childType, this._parentId),
|
||||
(containers) => {
|
||||
this._ownerContainers = containers ?? [];
|
||||
this.#containers.setValue(this.#filterNonOwnerContainers(this.#containers.getValue()));
|
||||
this.#mergedContainers.setValue(this.#filterNonOwnerContainers(this.#mergedContainers.getValue()));
|
||||
},
|
||||
'_observeOwnerContainers',
|
||||
);
|
||||
@@ -179,7 +179,7 @@ export class UmbContentTypeContainerStructureHelper<T extends UmbContentTypeMode
|
||||
this.#structure!.containersOfParentId(parentCon.id, this._childType!),
|
||||
(containers) => {
|
||||
// First we will filter out non-owner containers:
|
||||
const old = this.#containers.getValue();
|
||||
const old = this.#mergedContainers.getValue();
|
||||
// Then filter out the containers that are in the new list, either based on id or a match on name & type.
|
||||
// Matching on name & type will result in the latest being the one we include, notice will only counts for non-owner containers.
|
||||
const oldFiltered = old.filter(
|
||||
@@ -189,7 +189,7 @@ export class UmbContentTypeContainerStructureHelper<T extends UmbContentTypeMode
|
||||
const newFiltered = oldFiltered.concat(containers);
|
||||
|
||||
// Filter out non owners again:
|
||||
this.#containers.setValue(this.#filterNonOwnerContainers(newFiltered));
|
||||
this.#mergedContainers.setValue(this.#filterNonOwnerContainers(newFiltered));
|
||||
},
|
||||
'_observeGroupsOf_' + parentCon.id,
|
||||
);
|
||||
@@ -230,7 +230,7 @@ export class UmbContentTypeContainerStructureHelper<T extends UmbContentTypeMode
|
||||
(x, i, cons) => i === cons.findIndex((y) => y.name === x.name && y.type === x.type),
|
||||
);
|
||||
|
||||
this.#containers.setValue(this.#filterNonOwnerContainers(rootContainers));
|
||||
this.#mergedContainers.setValue(this.#filterNonOwnerContainers(rootContainers));
|
||||
},
|
||||
'_observeRootContainers',
|
||||
);
|
||||
|
||||
@@ -145,7 +145,7 @@ export class UmbContentTypeDesignEditorTabElement extends UmbLitElement {
|
||||
'_observeIsSorting',
|
||||
);
|
||||
});
|
||||
this.observe(this.#groupStructureHelper.containers, (groups) => {
|
||||
this.observe(this.#groupStructureHelper.mergedContainers, (groups) => {
|
||||
this._groups = groups;
|
||||
this.#sorter.setModel(this._groups);
|
||||
});
|
||||
|
||||
@@ -122,7 +122,7 @@ export class UmbContentTypeDesignEditorElement extends UmbLitElement implements
|
||||
|
||||
this._tabsStructureHelper.setIsRoot(true);
|
||||
this._tabsStructureHelper.setContainerChildType('Tab');
|
||||
this.observe(this._tabsStructureHelper.containers, (tabs) => {
|
||||
this.observe(this._tabsStructureHelper.mergedContainers, (tabs) => {
|
||||
this._tabs = tabs;
|
||||
this._tabs.forEach((tab) => {
|
||||
this.#updateCachedTabElementId(tab.name ?? '', tab.id);
|
||||
|
||||
@@ -51,7 +51,7 @@ export class UmbDocumentWorkspaceViewEditTabElement extends UmbLitElement {
|
||||
this.consumeContext(UMB_DOCUMENT_WORKSPACE_CONTEXT, (workspaceContext) => {
|
||||
this.#groupStructureHelper.setStructureManager(workspaceContext.structure);
|
||||
});
|
||||
this.observe(this.#groupStructureHelper.containers, (groups) => {
|
||||
this.observe(this.#groupStructureHelper.mergedContainers, (groups) => {
|
||||
this._groups = groups;
|
||||
});
|
||||
this.observe(this.#groupStructureHelper.hasProperties, (hasProperties) => {
|
||||
|
||||
@@ -39,7 +39,7 @@ export class UmbDocumentWorkspaceViewEditElement extends UmbLitElement implement
|
||||
this._tabsStructureHelper.setIsRoot(true);
|
||||
this._tabsStructureHelper.setContainerChildType('Tab');
|
||||
this.observe(
|
||||
this._tabsStructureHelper.containers,
|
||||
this._tabsStructureHelper.mergedContainers,
|
||||
(tabs) => {
|
||||
this._tabs = tabs;
|
||||
this._createRoutes();
|
||||
|
||||
@@ -51,7 +51,7 @@ export class UmbMediaWorkspaceViewEditTabElement extends UmbLitElement {
|
||||
this.consumeContext(UMB_MEDIA_WORKSPACE_CONTEXT, (workspaceContext) => {
|
||||
this.#groupStructureHelper.setStructureManager(workspaceContext.structure);
|
||||
});
|
||||
this.observe(this.#groupStructureHelper.containers, (groups) => {
|
||||
this.observe(this.#groupStructureHelper.mergedContainers, (groups) => {
|
||||
this._groups = groups;
|
||||
});
|
||||
this.observe(this.#groupStructureHelper.hasProperties, (hasProperties) => {
|
||||
|
||||
@@ -38,7 +38,7 @@ export class UmbMediaWorkspaceViewEditElement extends UmbLitElement implements U
|
||||
|
||||
this._tabsStructureHelper.setIsRoot(true);
|
||||
this._tabsStructureHelper.setContainerChildType('Tab');
|
||||
this.observe(this._tabsStructureHelper.containers, (tabs) => {
|
||||
this.observe(this._tabsStructureHelper.mergedContainers, (tabs) => {
|
||||
this._tabs = tabs;
|
||||
this._createRoutes();
|
||||
});
|
||||
|
||||
@@ -51,7 +51,7 @@ export class UmbMemberWorkspaceViewContentTabElement extends UmbLitElement {
|
||||
this.consumeContext(UMB_MEMBER_WORKSPACE_CONTEXT, (workspaceContext) => {
|
||||
this.#groupStructureHelper.setStructureManager(workspaceContext.structure);
|
||||
});
|
||||
this.observe(this.#groupStructureHelper.containers, (groups) => {
|
||||
this.observe(this.#groupStructureHelper.mergedContainers, (groups) => {
|
||||
this._groups = groups;
|
||||
});
|
||||
this.observe(this.#groupStructureHelper.hasProperties, (hasProperties) => {
|
||||
|
||||
@@ -38,7 +38,7 @@ export class UmbMemberWorkspaceViewEditElement extends UmbLitElement implements
|
||||
|
||||
this._tabsStructureHelper.setIsRoot(true);
|
||||
this._tabsStructureHelper.setContainerChildType('Tab');
|
||||
this.observe(this._tabsStructureHelper.containers, (tabs) => {
|
||||
this.observe(this._tabsStructureHelper.mergedContainers, (tabs) => {
|
||||
this._tabs = tabs;
|
||||
this._createRoutes();
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user