diff --git a/react-components/package.json b/react-components/package.json index 2fa643f9d91..cc2f12607de 100644 --- a/react-components/package.json +++ b/react-components/package.json @@ -1,6 +1,6 @@ { "name": "@cognite/reveal-react-components", - "version": "0.55.3", + "version": "0.55.4", "exports": { ".": { "import": "./dist/index.js", diff --git a/react-components/src/components/CacheProvider/RevisionFdmNodeCache.ts b/react-components/src/components/CacheProvider/RevisionFdmNodeCache.ts index f40de99e7ef..2c191905e5e 100644 --- a/react-components/src/components/CacheProvider/RevisionFdmNodeCache.ts +++ b/react-components/src/components/CacheProvider/RevisionFdmNodeCache.ts @@ -237,16 +237,18 @@ export class RevisionFdmNodeCache { mappingConnections: FdmCadConnection[], nodes: Node3D[] ): Array<{ connection: FdmCadConnection; treeIndex: TreeIndex }> { - return mappingConnections.map((connection) => { + return mappingConnections.reduce((acc, connection) => { const nodeInConnection = nodes.find((node) => node.id === connection.nodeId); - assert(nodeInConnection !== undefined); + if (nodeInConnection !== undefined) { + acc.push({ + connection, + treeIndex: nodeInConnection.treeIndex + }); + } - return { - connection, - treeIndex: nodeInConnection.treeIndex - }; - }); + return acc; + }, new Array<{ connection: FdmCadConnection; treeIndex: TreeIndex }>()); } private async getMappingConnectionsForAncestors( diff --git a/react-components/src/data-providers/FdmSDK.ts b/react-components/src/data-providers/FdmSDK.ts index fee52ce6d6d..d226992aae0 100644 --- a/react-components/src/data-providers/FdmSDK.ts +++ b/react-components/src/data-providers/FdmSDK.ts @@ -561,7 +561,7 @@ function hoistInstanceProperties( }); } -function makeSureNonEmptyFilterForRequest( +export function makeSureNonEmptyFilterForRequest( filter: InstanceFilter | undefined ): InstanceFilter | undefined { return filter !== undefined && Object.keys(filter).length === 0 ? undefined : filter; diff --git a/react-components/src/data-providers/legacy-fdm-provider/createMappedEquipmentQuery.ts b/react-components/src/data-providers/legacy-fdm-provider/createMappedEquipmentQuery.ts index 2d2929b3165..73dfe12fad1 100644 --- a/react-components/src/data-providers/legacy-fdm-provider/createMappedEquipmentQuery.ts +++ b/react-components/src/data-providers/legacy-fdm-provider/createMappedEquipmentQuery.ts @@ -2,7 +2,12 @@ * Copyright 2024 Cognite AS */ import { type AddModelOptions } from '@cognite/reveal'; -import { type InstanceFilter, type Query, type Source } from '../FdmSDK'; +import { + makeSureNonEmptyFilterForRequest, + type InstanceFilter, + type Query, + type Source +} from '../FdmSDK'; import { SYSTEM_3D_EDGE_SOURCE } from './dataModels'; export function createMappedEquipmentQuery( @@ -12,6 +17,8 @@ export function createMappedEquipmentQuery( limit: number = 10000, cursors?: Record ): Query { + instanceFilter = makeSureNonEmptyFilterForRequest(instanceFilter); + return { with: { mapped_edges: { diff --git a/react-components/src/query/useSearchMappedEquipmentAssetMappings.tsx b/react-components/src/query/useSearchMappedEquipmentAssetMappings.tsx index 5cfb1393aa4..658ec82b311 100644 --- a/react-components/src/query/useSearchMappedEquipmentAssetMappings.tsx +++ b/react-components/src/query/useSearchMappedEquipmentAssetMappings.tsx @@ -208,7 +208,7 @@ export const useMappingsForAssetIds = ( nextCursor.model.revisionId === model.revisionId )?.cursor; - if (nextCursor === undefined) { + if (nextCursor === undefined || assetIds.length === 0) { return { mappings: { items: [] }, model }; }