fix(workflow_entry): Support receive File and FileList in single step run. (#10947)

Signed-off-by: -LAN- <laipz8200@outlook.com>
Co-authored-by: JzoNg <jzongcode@gmail.com>
This commit is contained in:
-LAN-
2024-11-25 12:46:50 +08:00
committed by GitHub
parent 79a35c2fe6
commit 3eb51d85da
12 changed files with 75 additions and 95 deletions

View File

@@ -86,12 +86,9 @@ def build_from_mapping(
def build_from_mappings(
*,
mappings: Sequence[Mapping[str, Any]],
config: FileUploadConfig | None,
config: FileUploadConfig | None = None,
tenant_id: str,
) -> Sequence[File]:
if not config:
return []
files = [
build_from_mapping(
mapping=mapping,
@@ -102,13 +99,14 @@ def build_from_mappings(
]
if (
config
# If image config is set.
config.image_config
and config.image_config
# And the number of image files exceeds the maximum limit
and sum(1 for _ in (filter(lambda x: x.type == FileType.IMAGE, files))) > config.image_config.number_limits
):
raise ValueError(f"Number of image files exceeds the maximum limit {config.image_config.number_limits}")
if config.number_limits and len(files) > config.number_limits:
if config and config.number_limits and len(files) > config.number_limits:
raise ValueError(f"Number of files exceeds the maximum limit {config.number_limits}")
return files