From ddee022ea03b8d5f0c667aba7f85b3b484805eeb Mon Sep 17 00:00:00 2001 From: alex <48489896+devnaumov@users.noreply.github.com> Date: Wed, 3 May 2023 17:51:45 +0200 Subject: [PATCH] CB-3326 outdate alias (#1639) --- .../src/NodesManager/DBObjectResource.ts | 9 +++++++++ .../ObjectPropertyTable/Table/Table.tsx | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/webapp/packages/core-navigation-tree/src/NodesManager/DBObjectResource.ts b/webapp/packages/core-navigation-tree/src/NodesManager/DBObjectResource.ts index 98a8ca16a4..f3d5a3e045 100644 --- a/webapp/packages/core-navigation-tree/src/NodesManager/DBObjectResource.ts +++ b/webapp/packages/core-navigation-tree/src/NodesManager/DBObjectResource.ts @@ -35,6 +35,15 @@ export class DBObjectResource extends CachedMapResource { // this.preloadResource(this.navNodeInfoResource); this.navNodeInfoResource.outdateResource(this); this.navNodeInfoResource.deleteInResource(this); + + this.navTreeResource.onDataUpdate.addHandler(key => { + ResourceKeyUtils.forEach(key, nodeId => { + if (!isResourceAlias(nodeId)) { + this.markOutdated(DBObjectParentKey(nodeId)); + } + }); + }); + this.beforeLoad.addHandler(async (originalKey, context) => { await this.navTreeResource.waitLoad(); if (this.isAlias(originalKey, DBObjectParentKey)) { diff --git a/webapp/packages/plugin-object-viewer/src/ObjectPropertiesPage/ObjectPropertyTable/Table/Table.tsx b/webapp/packages/plugin-object-viewer/src/ObjectPropertiesPage/ObjectPropertyTable/Table/Table.tsx index de95c0b0e6..a3dc0deeda 100644 --- a/webapp/packages/plugin-object-viewer/src/ObjectPropertiesPage/ObjectPropertyTable/Table/Table.tsx +++ b/webapp/packages/plugin-object-viewer/src/ObjectPropertiesPage/ObjectPropertyTable/Table/Table.tsx @@ -103,7 +103,7 @@ export const Table = observer(function Table({ .sort((a, b) => (b.object?.properties?.length || 0) - (a.object?.properties?.length || 0)); const nodeIds = objects.map(object => object.id); - const properties = baseObject[0].object?.properties ?? []; + const properties = baseObject[0]?.object?.properties ?? []; const measuredCells = getMeasuredCells(properties, objects); const dataColumns: IDataColumn[] = properties.map((property, index) => ({