Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(react-components): react components rule core improvements to fix several issues in the Rule Builder time series selection/searching/selecting/filtering #4805

Open
wants to merge 20 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
dac34e7
update hooks to support execute parallel, chunks and argument name
danpriori Oct 9, 2024
b2e61ab
add hook to get the resource from relationship
danpriori Oct 10, 2024
036c44d
move get resource relationship and add timeseries data type on relati…
danpriori Oct 11, 2024
88bf908
chore: remove unused function
danpriori Oct 11, 2024
d331ba5
chore: lint fix
danpriori Oct 11, 2024
727c8df
lint
danpriori Oct 11, 2024
bbe2ff5
using a hook instead of exposing the get resource relationship
danpriori Oct 14, 2024
918e8d3
chore: remove dist
danpriori Oct 14, 2024
be20f80
Merge branch 'master' into danpriori/BND3D-4356-rule-builder-assets-w…
danpriori Oct 14, 2024
cdbaaa7
change to useQuery
danpriori Oct 14, 2024
c99aea9
Merge remote-tracking branch 'origin/danpriori/BND3D-4356-rule-builde…
danpriori Oct 14, 2024
86ae42c
fix: change the logic to get the time series first and search for the…
danpriori Oct 17, 2024
32c112f
add querykey - cr
danpriori Oct 18, 2024
43bd5f4
add utests for relationship and time series and separate the hook for…
danpriori Oct 21, 2024
3401988
Merge branch 'master' into danpriori/BND3D-4356-rule-builder-assets-w…
danpriori Oct 21, 2024
240fd11
lint
danpriori Oct 21, 2024
15a2b0d
Merge remote-tracking branch 'origin/danpriori/BND3D-4356-rule-builde…
danpriori Oct 21, 2024
7a84c26
Merge branch 'master' into danpriori/BND3D-4356-rule-builder-assets-w…
danpriori Oct 22, 2024
1c460b7
Merge branch 'master' into danpriori/BND3D-4356-rule-builder-assets-w…
danpriori Oct 22, 2024
02b90dd
Merge branch 'master' into danpriori/BND3D-4356-rule-builder-assets-w…
danpriori Oct 22, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion react-components/src/hooks/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ export { useSceneDefaultCamera } from './useSceneDefaultCamera';
export { useSkyboxFromScene } from './useSkyboxFromScene';
export { use3dScenes } from './scenes/use3dScenes';
export { useSceneConfig } from './scenes/useSceneConfig';
export { useFetchTimeseriesResourceRelationship } from './useFetchTimeseriesResourceRelationship';

export type { CameraNavigationActions } from './useCameraNavigation';
export type { ClickedNodeData, FdmNodeDataResult } from './useClickedNode';
Expand Down
1 change: 1 addition & 0 deletions react-components/src/query/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ export {
} from './useSearchMappedEquipmentFDM';
export { useTimeseriesByIdsQuery } from './useTimeseriesByIdsQuery';
export { useTimeseriesLatestDatapointQuery } from './useTimeseriesLatestDatapointQuery';
export { useFetchTimeseriesResourceRelationship } from './useFetchTimeseriesResourceRelationship';

export type {
ModelMappings,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,29 +1,30 @@
/*!
* Copyright 2024 Cognite AS
*/
import { type Asset, type Timeseries } from '@cognite/sdk';
import { type RelationshipResourceType, type Asset, type Timeseries } from '@cognite/sdk';
import { isUndefined } from 'lodash';
import { useEffect } from 'react';
import { useSDK } from '../components/RevealCanvas/SDKProvider';
import { getResourceRelationship } from './network/getResourceRelationship';
import { getResourceRelationship } from '../hooks/network/getResourceRelationship';
import { useQuery, type UseQueryResult } from '@tanstack/react-query';

export const useFetchTimeseriesResourceRelationship = ({
asset,
filter,
callback
resourceTypes
}: {
asset: Asset;
callback: (data: Timeseries[]) => void;
filter?: { isStep?: boolean; isString?: boolean };
}): void => {
resourceTypes: RelationshipResourceType[];
filter?: { isStep?: boolean };
}): UseQueryResult<Timeseries[]> => {
const sdk = useSDK();

useEffect(() => {
const getRelationship = async (): Promise<void> => {
return useQuery({
queryKey: ['reveal', 'react-components', asset.externalId, filter?.isStep, ...resourceTypes],
queryFn: async () => {
const relationshipsFound = await getResourceRelationship(
danpriori marked this conversation as resolved.
Show resolved Hide resolved
sdk,
[asset.externalId ?? ''],
['timeSeries']
resourceTypes
);

if (relationshipsFound.length > 0) {
Expand All @@ -42,9 +43,8 @@ export const useFetchTimeseriesResourceRelationship = ({
return undefined;
})
.filter((ts) => !isUndefined(ts));
callback(timeseriesFromRelationshipFound);
return timeseriesFromRelationshipFound;
}
};
void getRelationship();
}, [asset.externalId, filter, filter?.isStep, filter?.isString, sdk]);
}
});
};