fix: list filter node some operator raise error (#9539)

This commit is contained in:
非法操作 2024-10-21 15:33:42 +08:00 committed by GitHub
parent 53b14bde4d
commit f83ed19dfe
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 8 additions and 8 deletions

View File

@ -8,18 +8,18 @@ from core.workflow.nodes.base import BaseNodeData
_Condition = Literal[
# string conditions
"contains",
"startswith",
"endswith",
"start with",
"end with",
"is",
"in",
"empty",
"not contains",
"not is",
"is not",
"not in",
"not empty",
# number conditions
"=",
"!=",
"",
"<",
">",
"",

View File

@ -132,9 +132,9 @@ def _get_string_filter_func(*, condition: str, value: str) -> Callable[[str], bo
match condition:
case "contains":
return _contains(value)
case "startswith":
case "start with":
return _startswith(value)
case "endswith":
case "end with":
return _endswith(value)
case "is":
return _is(value)
@ -144,7 +144,7 @@ def _get_string_filter_func(*, condition: str, value: str) -> Callable[[str], bo
return lambda x: x == ""
case "not contains":
return lambda x: not _contains(value)(x)
case "not is":
case "is not":
return lambda x: not _is(value)(x)
case "not in":
return lambda x: not _in(value)(x)
@ -168,7 +168,7 @@ def _get_number_filter_func(*, condition: str, value: int | float) -> Callable[[
match condition:
case "=":
return _eq(value)
case "!=":
case "":
return _ne(value)
case "<":
return _lt(value)