improve condition evaluate

This commit is contained in:
Yoan.liu
2025-05-20 22:54:41 +08:00
parent 97d692910b
commit faad7cb6d7
8 changed files with 440 additions and 45 deletions

View File

@@ -57,7 +57,7 @@ const ConditionNode = ({ node, disabled, branchId, branchIndex }: ConditionNodeP
break;
}
const right: Expr = { type: "const", value: value };
const right: Expr = { type: "const", value: value, valueType: t };
return {
type: "compare",

View File

@@ -318,6 +318,7 @@ const formToExpression = (values: ConditionNodeConfigFormFieldValues): Expr => {
const right: Expr = {
type: "const",
value: rightValue,
valueType: type,
};
return {

View File

@@ -238,7 +238,7 @@ export type ComparisonOperator = ">" | "<" | ">=" | "<=" | "==" | "!=" | "is";
export type LogicalOperator = "and" | "or" | "not";
export type ConstExpr = { type: "const"; value: Value };
export type ConstExpr = { type: "const"; value: Value; valueType: WorkflowNodeIoValueType };
export type VarExpr = { type: "var"; selector: WorkflowNodeIOValueSelector };
export type CompareExpr = { type: "compare"; op: ComparisonOperator; left: Expr; right: Expr };
export type LogicalExpr = { type: "logical"; op: LogicalOperator; left: Expr; right: Expr };