queenbee.io.inputs.function module¶
Queenbee input types for functions.
For more information on plugins see plugin module.
- class queenbee.io.inputs.function.FunctionArrayInput(*, type: ~typing.Literal['FunctionArrayInput'] = 'FunctionArrayInput', annotations: ~typing.Dict[str, ~typing.Any] = <factory>, name: str, description: str | None = None, default: ~typing.List | None = None, alias: ~typing.List[~queenbee.io.inputs.alias.DAGStringInputAlias | ~queenbee.io.inputs.alias.DAGIntegerInputAlias | ~queenbee.io.inputs.alias.DAGNumberInputAlias | ~queenbee.io.inputs.alias.DAGBooleanInputAlias | ~queenbee.io.inputs.alias.DAGFolderInputAlias | ~queenbee.io.inputs.alias.DAGFileInputAlias | ~queenbee.io.inputs.alias.DAGPathInputAlias | ~queenbee.io.inputs.alias.DAGArrayInputAlias | ~queenbee.io.inputs.alias.DAGJSONObjectInputAlias | ~queenbee.io.inputs.alias.DAGLinkedInputAlias | ~queenbee.io.inputs.alias.DAGGenericInputAlias] = <factory>, required: bool = False, spec: ~typing.Dict | None = None, items_type: ~queenbee.io.common.ItemType = ItemType.String)[source]¶
Bases:
DAGArrayInputA JSON array input.
You can add additional validation by defining a JSONSchema specification.
See http://json-schema.org/understanding-json-schema/reference/array.html for more information.
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- type: Literal['FunctionArrayInput']¶
- class queenbee.io.inputs.function.FunctionBooleanInput(*, type: ~typing.Literal['FunctionBooleanInput'] = 'FunctionBooleanInput', annotations: ~typing.Dict[str, ~typing.Any] = <factory>, name: str, description: str | None = None, default: bool | None = None, alias: ~typing.List[~queenbee.io.inputs.alias.DAGStringInputAlias | ~queenbee.io.inputs.alias.DAGIntegerInputAlias | ~queenbee.io.inputs.alias.DAGNumberInputAlias | ~queenbee.io.inputs.alias.DAGBooleanInputAlias | ~queenbee.io.inputs.alias.DAGFolderInputAlias | ~queenbee.io.inputs.alias.DAGFileInputAlias | ~queenbee.io.inputs.alias.DAGPathInputAlias | ~queenbee.io.inputs.alias.DAGArrayInputAlias | ~queenbee.io.inputs.alias.DAGJSONObjectInputAlias | ~queenbee.io.inputs.alias.DAGLinkedInputAlias | ~queenbee.io.inputs.alias.DAGGenericInputAlias] = <factory>, required: bool = False, spec: ~typing.Dict | None = None)[source]¶
Bases:
DAGBooleanInputThe boolean type matches only two special values: True and False.
Note that values that evaluate to true or false, such as 1 and 0, are not accepted.
You can add additional validation by defining a JSONSchema specification.
See http://json-schema.org/understanding-json-schema/reference/boolean.html for more information.
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- type: Literal['FunctionBooleanInput']¶
- class queenbee.io.inputs.function.FunctionFileInput(*, type: ~typing.Literal['FunctionFileInput'] = 'FunctionFileInput', annotations: ~typing.Dict[str, ~typing.Any] = <factory>, name: str, description: str | None = None, default: ~queenbee.io.artifact_source.HTTP | ~queenbee.io.artifact_source.S3 | ~queenbee.io.artifact_source.ProjectFolder | None = None, alias: ~typing.List[~queenbee.io.inputs.alias.DAGStringInputAlias | ~queenbee.io.inputs.alias.DAGIntegerInputAlias | ~queenbee.io.inputs.alias.DAGNumberInputAlias | ~queenbee.io.inputs.alias.DAGBooleanInputAlias | ~queenbee.io.inputs.alias.DAGFolderInputAlias | ~queenbee.io.inputs.alias.DAGFileInputAlias | ~queenbee.io.inputs.alias.DAGPathInputAlias | ~queenbee.io.inputs.alias.DAGArrayInputAlias | ~queenbee.io.inputs.alias.DAGJSONObjectInputAlias | ~queenbee.io.inputs.alias.DAGLinkedInputAlias | ~queenbee.io.inputs.alias.DAGGenericInputAlias] = <factory>, required: bool = False, spec: ~typing.Dict | None = None, path: str, extensions: ~typing.List[str] | None = None)[source]¶
Bases:
FunctionFolderInputA file input.
File is a special string input. Unlike other string inputs, a file will be copied from its location to execution folder when a workflow is executed.
You can add additional validation by defining a JSONSchema specification.
See http://json-schema.org/understanding-json-schema/reference/string.html#string for more information.
# a file with maximum 50 characters with an ``epw`` extension. "schema": { "type": "string", "maxLength": 50, "pattern": "(?i)(^.*\.epw$)" }
- extensions: List[str] | None¶
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- type: Literal['FunctionFileInput']¶
- class queenbee.io.inputs.function.FunctionFolderInput(*, type: ~typing.Literal['FunctionFolderInput'] = 'FunctionFolderInput', annotations: ~typing.Dict[str, ~typing.Any] = <factory>, name: str, description: str | None = None, default: ~queenbee.io.artifact_source.HTTP | ~queenbee.io.artifact_source.S3 | ~queenbee.io.artifact_source.ProjectFolder | None = None, alias: ~typing.List[~queenbee.io.inputs.alias.DAGStringInputAlias | ~queenbee.io.inputs.alias.DAGIntegerInputAlias | ~queenbee.io.inputs.alias.DAGNumberInputAlias | ~queenbee.io.inputs.alias.DAGBooleanInputAlias | ~queenbee.io.inputs.alias.DAGFolderInputAlias | ~queenbee.io.inputs.alias.DAGFileInputAlias | ~queenbee.io.inputs.alias.DAGPathInputAlias | ~queenbee.io.inputs.alias.DAGArrayInputAlias | ~queenbee.io.inputs.alias.DAGJSONObjectInputAlias | ~queenbee.io.inputs.alias.DAGLinkedInputAlias | ~queenbee.io.inputs.alias.DAGGenericInputAlias] = <factory>, required: bool = False, spec: ~typing.Dict | None = None, path: str)[source]¶
Bases:
DAGFolderInputA folder input.
Folder is a special string input. Unlike other string inputs, a folder will be copied from its location to execution folder when a workflow is executed.
You can add additional validation by defining a JSONSchema specification.
See http://json-schema.org/understanding-json-schema/reference/string.html#string for more information.
"schema": { "type": "string", "maxLength": 50, }
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- path: str¶
- property referenced_values: Dict[str, List[str]]¶
Get referenced variables if any
- Returns:
- Dict[str, List[str]] – A dictionary where keys are attributes and lists ‘
’contain referenced value string
- type: Literal['FunctionFolderInput']¶
- class queenbee.io.inputs.function.FunctionIntegerInput(*, type: ~typing.Literal['FunctionIntegerInput'] = 'FunctionIntegerInput', annotations: ~typing.Dict[str, ~typing.Any] = <factory>, name: str, description: str | None = None, default: int | None = None, alias: ~typing.List[~queenbee.io.inputs.alias.DAGStringInputAlias | ~queenbee.io.inputs.alias.DAGIntegerInputAlias | ~queenbee.io.inputs.alias.DAGNumberInputAlias | ~queenbee.io.inputs.alias.DAGBooleanInputAlias | ~queenbee.io.inputs.alias.DAGFolderInputAlias | ~queenbee.io.inputs.alias.DAGFileInputAlias | ~queenbee.io.inputs.alias.DAGPathInputAlias | ~queenbee.io.inputs.alias.DAGArrayInputAlias | ~queenbee.io.inputs.alias.DAGJSONObjectInputAlias | ~queenbee.io.inputs.alias.DAGLinkedInputAlias | ~queenbee.io.inputs.alias.DAGGenericInputAlias] = <factory>, required: bool = False, spec: ~typing.Dict | None = None)[source]¶
Bases:
DAGIntegerInputAn integer input.
You can add additional validation by defining a JSONSchema specification.
See http://json-schema.org/understanding-json-schema/reference/numeric.html#numeric for more information.
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- type: Literal['FunctionIntegerInput']¶
- class queenbee.io.inputs.function.FunctionJSONObjectInput(*, type: ~typing.Literal['FunctionJSONObjectInput'] = 'FunctionJSONObjectInput', annotations: ~typing.Dict[str, ~typing.Any] = <factory>, name: str, description: str | None = None, default: ~typing.Dict | None = None, alias: ~typing.List[~queenbee.io.inputs.alias.DAGStringInputAlias | ~queenbee.io.inputs.alias.DAGIntegerInputAlias | ~queenbee.io.inputs.alias.DAGNumberInputAlias | ~queenbee.io.inputs.alias.DAGBooleanInputAlias | ~queenbee.io.inputs.alias.DAGFolderInputAlias | ~queenbee.io.inputs.alias.DAGFileInputAlias | ~queenbee.io.inputs.alias.DAGPathInputAlias | ~queenbee.io.inputs.alias.DAGArrayInputAlias | ~queenbee.io.inputs.alias.DAGJSONObjectInputAlias | ~queenbee.io.inputs.alias.DAGLinkedInputAlias | ~queenbee.io.inputs.alias.DAGGenericInputAlias] = <factory>, required: bool = False, spec: ~typing.Dict | None = None)[source]¶
Bases:
DAGJSONObjectInputA JSON object input.
JSON objects are similar to Python dictionaries.
You can add additional validation by defining a JSONSchema specification.
See http://json-schema.org/understanding-json-schema/reference/object.html for more information.
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- type: Literal['FunctionJSONObjectInput']¶
- class queenbee.io.inputs.function.FunctionNumberInput(*, type: ~typing.Literal['FunctionNumberInput'] = 'FunctionNumberInput', annotations: ~typing.Dict[str, ~typing.Any] = <factory>, name: str, description: str | None = None, default: float | None = None, alias: ~typing.List[~queenbee.io.inputs.alias.DAGStringInputAlias | ~queenbee.io.inputs.alias.DAGIntegerInputAlias | ~queenbee.io.inputs.alias.DAGNumberInputAlias | ~queenbee.io.inputs.alias.DAGBooleanInputAlias | ~queenbee.io.inputs.alias.DAGFolderInputAlias | ~queenbee.io.inputs.alias.DAGFileInputAlias | ~queenbee.io.inputs.alias.DAGPathInputAlias | ~queenbee.io.inputs.alias.DAGArrayInputAlias | ~queenbee.io.inputs.alias.DAGJSONObjectInputAlias | ~queenbee.io.inputs.alias.DAGLinkedInputAlias | ~queenbee.io.inputs.alias.DAGGenericInputAlias] = <factory>, required: bool = False, spec: ~typing.Dict | None = None)[source]¶
Bases:
DAGNumberInputA number input.
You can add additional validation by defining a JSONSchema specification.
See http://json-schema.org/understanding-json-schema/reference/numeric.html#numeric for more information.
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- type: Literal['FunctionNumberInput']¶
- class queenbee.io.inputs.function.FunctionPathInput(*, type: ~typing.Literal['FunctionPathInput'] = 'FunctionPathInput', annotations: ~typing.Dict[str, ~typing.Any] = <factory>, name: str, description: str | None = None, default: ~queenbee.io.artifact_source.HTTP | ~queenbee.io.artifact_source.S3 | ~queenbee.io.artifact_source.ProjectFolder | None = None, alias: ~typing.List[~queenbee.io.inputs.alias.DAGStringInputAlias | ~queenbee.io.inputs.alias.DAGIntegerInputAlias | ~queenbee.io.inputs.alias.DAGNumberInputAlias | ~queenbee.io.inputs.alias.DAGBooleanInputAlias | ~queenbee.io.inputs.alias.DAGFolderInputAlias | ~queenbee.io.inputs.alias.DAGFileInputAlias | ~queenbee.io.inputs.alias.DAGPathInputAlias | ~queenbee.io.inputs.alias.DAGArrayInputAlias | ~queenbee.io.inputs.alias.DAGJSONObjectInputAlias | ~queenbee.io.inputs.alias.DAGLinkedInputAlias | ~queenbee.io.inputs.alias.DAGGenericInputAlias] = <factory>, required: bool = False, spec: ~typing.Dict | None = None, path: str, extensions: ~typing.List[str] | None = None)[source]¶
Bases:
FunctionFileInputA file or a folder input.
Use this input only in cases that the input can be either a file or folder. For file or folder-only inputs see File and Folder.
Path is a special string input. Unlike other string inputs, a path will be copied from its location to execution folder when a workflow is executed.
You can add additional validation by defining a JSONSchema specification.
See http://json-schema.org/understanding-json-schema/reference/string.html#string for more information.
# a file with maximum 50 characters with an ``epw`` extension. "schema": { "type": "string", "maxLength": 50, "pattern": "(?i)(^.*\.epw$)" }
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- type: Literal['FunctionPathInput']¶
- class queenbee.io.inputs.function.FunctionStringInput(*, type: ~typing.Literal['FunctionStringInput'] = 'FunctionStringInput', annotations: ~typing.Dict[str, ~typing.Any] = <factory>, name: str, description: str | None = None, default: str | None = None, alias: ~typing.List[~queenbee.io.inputs.alias.DAGStringInputAlias | ~queenbee.io.inputs.alias.DAGIntegerInputAlias | ~queenbee.io.inputs.alias.DAGNumberInputAlias | ~queenbee.io.inputs.alias.DAGBooleanInputAlias | ~queenbee.io.inputs.alias.DAGFolderInputAlias | ~queenbee.io.inputs.alias.DAGFileInputAlias | ~queenbee.io.inputs.alias.DAGPathInputAlias | ~queenbee.io.inputs.alias.DAGArrayInputAlias | ~queenbee.io.inputs.alias.DAGJSONObjectInputAlias | ~queenbee.io.inputs.alias.DAGLinkedInputAlias | ~queenbee.io.inputs.alias.DAGGenericInputAlias] = <factory>, required: bool = False, spec: ~typing.Dict | None = None)[source]¶
Bases:
DAGStringInputA String input.
You can add additional validation by defining a JSONSchema specification.
See http://json-schema.org/understanding-json-schema/reference/string.html#string for more information.
"schema": { "type": "string", "maxLength": 50, "pattern": "(?i)(^.*\.epw$)" }
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- type: Literal['FunctionStringInput']¶