Spaces:
Paused
Paused
| from pydantic import Field | |
| from core.helper import encrypter | |
| from .segments import ( | |
| ArrayAnySegment, | |
| ArrayNumberSegment, | |
| ArrayObjectSegment, | |
| ArrayStringSegment, | |
| FileSegment, | |
| FloatSegment, | |
| IntegerSegment, | |
| NoneSegment, | |
| ObjectSegment, | |
| Segment, | |
| StringSegment, | |
| ) | |
| from .types import SegmentType | |
| class Variable(Segment): | |
| """ | |
| A variable is a segment that has a name. | |
| """ | |
| id: str = Field( | |
| default="", | |
| description="Unique identity for variable. It's only used by environment variables now.", | |
| ) | |
| name: str | |
| description: str = Field(default="", description="Description of the variable.") | |
| class StringVariable(StringSegment, Variable): | |
| pass | |
| class FloatVariable(FloatSegment, Variable): | |
| pass | |
| class IntegerVariable(IntegerSegment, Variable): | |
| pass | |
| class ObjectVariable(ObjectSegment, Variable): | |
| pass | |
| class ArrayAnyVariable(ArrayAnySegment, Variable): | |
| pass | |
| class ArrayStringVariable(ArrayStringSegment, Variable): | |
| pass | |
| class ArrayNumberVariable(ArrayNumberSegment, Variable): | |
| pass | |
| class ArrayObjectVariable(ArrayObjectSegment, Variable): | |
| pass | |
| class SecretVariable(StringVariable): | |
| value_type: SegmentType = SegmentType.SECRET | |
| def log(self) -> str: | |
| return encrypter.obfuscated_token(self.value) | |
| class NoneVariable(NoneSegment, Variable): | |
| value_type: SegmentType = SegmentType.NONE | |
| value: None = None | |
| class FileVariable(FileSegment, Variable): | |
| pass | |