Files
deepset-ai--haystack/haystack/testing/sample_components/joiner.py
T
wehub-resource-sync c56bef871b
Sync docs with Docusaurus / sync (push) Waiting to run
Tests / Check if changed (push) Waiting to run
Tests / format (push) Blocked by required conditions
Tests / check-imports (push) Blocked by required conditions
Tests / Unit / macos-latest (push) Blocked by required conditions
Tests / Unit / ubuntu-latest (push) Blocked by required conditions
Tests / Unit / windows-latest (push) Blocked by required conditions
Tests / mypy (push) Blocked by required conditions
Tests / Integration / ubuntu-latest (push) Blocked by required conditions
Tests / Integration / macos-latest (push) Blocked by required conditions
Tests / Integration / windows-latest (push) Blocked by required conditions
Tests / notify-slack-on-failure (push) Blocked by required conditions
Tests / Mark tests as completed (push) Blocked by required conditions
Docker image release / Build base image (push) Waiting to run
CodeQL / Analyze (python) (push) Has been cancelled
Update Platform Components Table / update (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:22:28 +08:00

36 lines
1.0 KiB
Python

# SPDX-FileCopyrightText: 2022-present deepset GmbH <info@deepset.ai>
#
# SPDX-License-Identifier: Apache-2.0
from haystack.core.component import component
from haystack.core.component.types import Variadic
@component
class StringJoiner:
@component.output_types(output=str)
def run(self, input_str: Variadic[str]):
"""
Take strings from multiple input nodes and join them into a single one returned in output.
Since `input_str` is Variadic, we know we'll receive a list[str].
"""
return {"output": " ".join(input_str)}
@component
class StringListJoiner:
@component.output_types(output=str)
def run(self, inputs: Variadic[list[str]]):
"""
Take list of strings from multiple input nodes and join them into a single one returned in output.
Since `input_str` is Variadic, we know we'll receive a list[list[str]].
"""
retval: list[str] = []
for list_of_strings in inputs:
retval += list_of_strings
return {"output": retval}