mirror of
https://github.com/invoke-ai/InvokeAI
synced 2024-08-30 20:32:17 +00:00
feat: Add String Param & types to other params
This commit is contained in:
parent
4e13d3408f
commit
7d49c727a0
@ -1,9 +1,12 @@
|
|||||||
# Copyright (c) 2023 Kyle Schouviller (https://github.com/kyle0654)
|
# Copyright (c) 2023 Kyle Schouviller (https://github.com/kyle0654)
|
||||||
|
|
||||||
from typing import Literal
|
from typing import Literal
|
||||||
|
|
||||||
from pydantic import Field
|
from pydantic import Field
|
||||||
from .baseinvocation import BaseInvocation, BaseInvocationOutput, InvocationContext
|
|
||||||
from .math import IntOutput, FloatOutput
|
from .baseinvocation import (BaseInvocation, BaseInvocationOutput,
|
||||||
|
InvocationConfig, InvocationContext)
|
||||||
|
from .math import FloatOutput, IntOutput
|
||||||
|
|
||||||
# Pass-through parameter nodes - used by subgraphs
|
# Pass-through parameter nodes - used by subgraphs
|
||||||
|
|
||||||
@ -14,6 +17,14 @@ class ParamIntInvocation(BaseInvocation):
|
|||||||
a: int = Field(default=0, description="The integer value")
|
a: int = Field(default=0, description="The integer value")
|
||||||
#fmt: on
|
#fmt: on
|
||||||
|
|
||||||
|
class Config(InvocationConfig):
|
||||||
|
schema_extra = {
|
||||||
|
"ui": {
|
||||||
|
"tags": ["param", "integer"],
|
||||||
|
"title": "Integer Parameter"
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
def invoke(self, context: InvocationContext) -> IntOutput:
|
def invoke(self, context: InvocationContext) -> IntOutput:
|
||||||
return IntOutput(a=self.a)
|
return IntOutput(a=self.a)
|
||||||
|
|
||||||
@ -24,5 +35,36 @@ class ParamFloatInvocation(BaseInvocation):
|
|||||||
param: float = Field(default=0.0, description="The float value")
|
param: float = Field(default=0.0, description="The float value")
|
||||||
#fmt: on
|
#fmt: on
|
||||||
|
|
||||||
|
class Config(InvocationConfig):
|
||||||
|
schema_extra = {
|
||||||
|
"ui": {
|
||||||
|
"tags": ["param", "float"],
|
||||||
|
"title": "Float Parameter"
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
def invoke(self, context: InvocationContext) -> FloatOutput:
|
def invoke(self, context: InvocationContext) -> FloatOutput:
|
||||||
return FloatOutput(param=self.param)
|
return FloatOutput(param=self.param)
|
||||||
|
|
||||||
|
class StringOutput(BaseInvocationOutput):
|
||||||
|
"""A string output"""
|
||||||
|
type: Literal["string_output"] = "string_output"
|
||||||
|
text: str = Field(default=None, description="The output string")
|
||||||
|
|
||||||
|
|
||||||
|
class ParamStringInvocation(BaseInvocation):
|
||||||
|
"""A string parameter"""
|
||||||
|
type: Literal['param_string'] = 'param_string'
|
||||||
|
text: str = Field(default='', description='The string value')
|
||||||
|
|
||||||
|
class Config(InvocationConfig):
|
||||||
|
schema_extra = {
|
||||||
|
"ui": {
|
||||||
|
"tags": ["param", "string"],
|
||||||
|
"title": "String Parameter"
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
def invoke(self) -> StringOutput:
|
||||||
|
return StringOutput(text=self.text)
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user