Skip to content

Commit

Permalink
fix(react-components): fix duplicated timeseries in expressions (#4528)
Browse files Browse the repository at this point in the history
* fix timeseries duplication when traversing mutliple expressions including with no timeseries

* cleanup

* refactoring based on cr

* naming
  • Loading branch information
danpriori authored May 24, 2024
1 parent 1040f18 commit 6f888b9
Showing 1 changed file with 8 additions and 7 deletions.
15 changes: 8 additions & 7 deletions react-components/src/components/RuleBasedOutputs/utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,15 @@ const checkStringExpressionStatement = (
const currentTriggerData = triggerTypeData.find(
(triggerType) => triggerType.type === trigger?.type
);
const assetTrigger =

const isMetadataAndAssetTrigger =
trigger?.type === 'metadata' &&
currentTriggerData?.type === 'metadata' &&
currentTriggerData?.asset !== undefined
? currentTriggerData?.asset[trigger.type]?.[trigger.key]
: undefined;
currentTriggerData?.asset !== undefined;

const assetTrigger = isMetadataAndAssetTrigger
? currentTriggerData?.asset[trigger.type]?.[trigger.key]
: undefined;

if (assetTrigger === undefined) return;

Expand Down Expand Up @@ -439,10 +442,9 @@ const generateTimeseriesAndDatapointsFromTheAsset = ({
export const traverseExpressionToGetTimeseries = (
expressions: Expression[] | undefined
): string[] | undefined => {
let timeseriesExternalIdFound: string[] | undefined = [];

const timeseriesExternalIdResults = expressions
?.map((expression) => {
let timeseriesExternalIdFound: string[] | undefined = [];
switch (expression.type) {
case 'or':
case 'and': {
Expand All @@ -461,7 +463,6 @@ export const traverseExpressionToGetTimeseries = (
return timeseriesExternalIdFound?.filter(isDefined) ?? [];
})
.flat();

return timeseriesExternalIdResults;
};

Expand Down

0 comments on commit 6f888b9

Please sign in to comment.