feat(engine): 🚧 Help to debug evaluated expressions
This commit is contained in:
@ -26,17 +26,15 @@ export const parseVariables =
|
|||||||
}
|
}
|
||||||
|
|
||||||
export const evaluateExpression = (variables: Variable[]) => (str: string) => {
|
export const evaluateExpression = (variables: Variable[]) => (str: string) => {
|
||||||
try {
|
const evaluating = parseVariables(variables, { fieldToParse: 'id' })(
|
||||||
const func = Function(
|
|
||||||
...variables.map((v) => v.id),
|
|
||||||
parseVariables(variables, { fieldToParse: 'id' })(
|
|
||||||
str.includes('return ') ? str : `return ${str}`
|
str.includes('return ') ? str : `return ${str}`
|
||||||
)
|
)
|
||||||
)
|
try {
|
||||||
|
const func = Function(...variables.map((v) => v.id), evaluating)
|
||||||
const evaluatedResult = func(...variables.map((v) => v.value))
|
const evaluatedResult = func(...variables.map((v) => v.value))
|
||||||
return isNotDefined(evaluatedResult) ? '' : evaluatedResult
|
return isNotDefined(evaluatedResult) ? '' : evaluatedResult
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.log(err)
|
console.log(`Evaluating: ${evaluating}`, err)
|
||||||
return str
|
return str
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user