Bläddra i källkod

Fix: conditions

Fixes error "Cannot read properties of undefined (reading 'replace')"
niksheldon 3 år sedan
förälder
incheckning
315685e67f
1 ändrade filer med 13 tillägg och 3 borttagningar
  1. 13 3
      src/background/workflow-engine/blocks-handler/handler-conditions.js

+ 13 - 3
src/background/workflow-engine/blocks-handler/handler-conditions.js

@@ -2,7 +2,9 @@ import { getBlockConnection } from '../helper';
 import compareBlockValue from '@/utils/compare-block-value';
 import mustacheReplacer from '@/utils/reference-data/mustache-replacer';
 
-function conditions({ data, outputs }, { prevBlockData, refData }) {
+function conditions(block, { prevBlockData, refData }) {
+  const data = block.data;
+  const outputs = block.outputs
   return new Promise((resolve, reject) => {
     if (data.conditions.length === 0) {
       reject(new Error('conditions-empty'));
@@ -19,8 +21,16 @@ function conditions({ data, outputs }, { prevBlockData, refData }) {
     data.conditions.forEach(({ type, value, compareValue }, index) => {
       if (isConditionMatch) return;
 
-      const firstValue = mustacheReplacer(compareValue ?? prevData, refData);
-      const secondValue = mustacheReplacer(value, refData);
+      const firstValue = mustacheReplacer({
+        str: compareValue ?? prevData,
+        data: refData,
+        block
+      });
+      const secondValue = mustacheReplacer({
+        str: value,
+        data: refData,
+        block
+      });
 
       const isMatch = compareBlockValue(type, firstValue, secondValue);