|
1 | | -import React, {useState, useEffect, useContext} from "react"; |
| 1 | +import React, {useState, useEffect, useContext, useRef} from "react"; |
2 | 2 | import {Row, Col, Card, Menu, Dropdown, Collapse, Icon, Switch} from "antd"; |
3 | 3 | import {FontAwesomeIcon} from "@fortawesome/react-fontawesome"; |
4 | 4 | import {faPlusSquare} from "@fortawesome/free-solid-svg-icons"; |
@@ -105,6 +105,7 @@ const MatchingStepDetail: React.FC = () => { |
105 | 105 | const [thresholdItems, setThresholdItems] = useState<any []>([]); |
106 | 106 | const [displayRulesetTimeline, toggleDisplayRulesetTimeline] = useState(false); |
107 | 107 | const [displayThresholdTimeline, toggleDisplayThresholdTimeline] = useState(false); |
| 108 | + const refMatchingRuleset = useRef<any[]>(); |
108 | 109 |
|
109 | 110 | const menu = ( |
110 | 111 | <Menu> |
@@ -159,6 +160,10 @@ const MatchingStepDetail: React.FC = () => { |
159 | 160 | }*/ |
160 | 161 | }, [JSON.stringify(curationOptions.activeStep.stepArtifact)]); |
161 | 162 |
|
| 163 | + useEffect(() => { |
| 164 | + refMatchingRuleset.current! = matchingStep.matchRulesets; |
| 165 | + }, [matchingStep]); |
| 166 | + |
162 | 167 | const handleMatchingActivity = async (matchStepName) => { |
163 | 168 | let matchActivity = await calculateMatchingActivity(matchStepName); |
164 | 169 | setMatchingActivity(matchActivity); |
@@ -668,9 +673,9 @@ const MatchingStepDetail: React.FC = () => { |
668 | 673 | }; |
669 | 674 |
|
670 | 675 | const onRuleSetTimelineItemClicked = (event) => { |
671 | | - let updateStepArtifactRulesets = curationOptions.activeStep.stepArtifact.matchRulesets; |
672 | 676 | let index = event.item; |
673 | | - let editMatchRuleset = updateStepArtifactRulesets[index]; |
| 677 | + let currentRuleset = refMatchingRuleset.current!; |
| 678 | + let editMatchRuleset = currentRuleset[index]; |
674 | 679 | setEditRuleset({...editMatchRuleset, index}); |
675 | 680 | if (editMatchRuleset) { |
676 | 681 | if (editMatchRuleset.hasOwnProperty("rulesetType") && editMatchRuleset["rulesetType"] === "multiple") { |
|
0 commit comments