WIP - Loop node advanced parameters + complete_if_empty (#1675)
This commit is contained in:
@@ -765,6 +765,7 @@ class ForLoopBlock(Block):
|
||||
loop_blocks: list[BlockTypeVar]
|
||||
loop_over: PARAMETER_TYPE | None = None
|
||||
loop_variable_reference: str | None = None
|
||||
complete_if_empty: bool = False
|
||||
|
||||
def get_all_parameters(
|
||||
self,
|
||||
@@ -849,7 +850,10 @@ class ForLoopBlock(Block):
|
||||
raise NotImplementedError()
|
||||
|
||||
else:
|
||||
raise NoIterableValueFound()
|
||||
if self.complete_if_empty:
|
||||
return []
|
||||
else:
|
||||
raise NoIterableValueFound()
|
||||
|
||||
if isinstance(parameter_value, list):
|
||||
return parameter_value
|
||||
|
||||
@@ -146,6 +146,7 @@ class ForLoopBlockYAML(BlockYAML):
|
||||
loop_blocks: list["BLOCK_YAML_SUBCLASSES"]
|
||||
loop_over_parameter_key: str = ""
|
||||
loop_variable_reference: str | None = None
|
||||
complete_if_empty: bool = False
|
||||
|
||||
|
||||
class CodeBlockYAML(BlockYAML):
|
||||
|
||||
@@ -1512,6 +1512,7 @@ class WorkflowService:
|
||||
loop_blocks=loop_blocks,
|
||||
output_parameter=output_parameter,
|
||||
continue_on_failure=block_yaml.continue_on_failure,
|
||||
complete_if_empty=block_yaml.complete_if_empty,
|
||||
)
|
||||
elif block_yaml.block_type == BlockType.CODE:
|
||||
return CodeBlock(
|
||||
|
||||
Reference in New Issue
Block a user