vectorvein 0.1.86__py3-none-any.whl → 0.1.87__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -43,7 +43,7 @@ class Port:
43
43
  self.port_type = port_type
44
44
  self.required = required
45
45
  self.show = show
46
- self.value = value
46
+ self._value = value
47
47
  self.options = options
48
48
  self.field_type = field_type
49
49
  self.is_output = is_output
@@ -66,7 +66,7 @@ class Port:
66
66
  "field_type": self.port_type.value if isinstance(self.port_type, PortType) else self.port_type,
67
67
  "required": self.required,
68
68
  "show": self.show,
69
- "value": self.value,
69
+ "value": self._value,
70
70
  "options": self.options,
71
71
  "type": self.field_type,
72
72
  "is_output": self.is_output,
@@ -82,6 +82,17 @@ class Port:
82
82
  "list": self.list,
83
83
  }
84
84
 
85
+ @property
86
+ def value(self) -> Any:
87
+ return self._value
88
+
89
+ @value.setter
90
+ def value(self, value: Any) -> None:
91
+ if self.options:
92
+ if value not in map(lambda x: x["value"], self.options):
93
+ raise ValueError(f"Value `{value}` is not in Port `{self.name}` options {self.options}")
94
+ self._value = value
95
+
85
96
 
86
97
  class InputPort(Port):
87
98
  def __init__(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vectorvein
3
- Version: 0.1.86
3
+ Version: 0.1.87
4
4
  Summary: VectorVein python SDK
5
5
  Author-Email: Anderson <andersonby@163.com>
6
6
  License: MIT
@@ -1,6 +1,6 @@
1
- vectorvein-0.1.86.dist-info/METADATA,sha256=J2d4uxXaaLuLQl63QW1vwU5ZzHwD72WKNlzozR3MDxo,641
2
- vectorvein-0.1.86.dist-info/WHEEL,sha256=thaaA2w1JzcGC48WYufAs8nrYZjJm8LqNfnXFOFyCC4,90
3
- vectorvein-0.1.86.dist-info/entry_points.txt,sha256=6OYgBcLyFCUgeqLgnvMyOJxPCWzgy7se4rLPKtNonMs,34
1
+ vectorvein-0.1.87.dist-info/METADATA,sha256=qaCzwLhxB8o0buhZ-_94iqCMM8tITVVbZQMGt_xi_Lk,641
2
+ vectorvein-0.1.87.dist-info/WHEEL,sha256=thaaA2w1JzcGC48WYufAs8nrYZjJm8LqNfnXFOFyCC4,90
3
+ vectorvein-0.1.87.dist-info/entry_points.txt,sha256=6OYgBcLyFCUgeqLgnvMyOJxPCWzgy7se4rLPKtNonMs,34
4
4
  vectorvein/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  vectorvein/chat_clients/__init__.py,sha256=omQuG4PRRPNflSAgtdU--rwsWG6vMpwMEyIGZyFVHVQ,18596
6
6
  vectorvein/chat_clients/anthropic_client.py,sha256=PGIKldH4FnGrqozoY_FZ6LqhDHC-jY7NF5J1F1zT2Ok,38257
@@ -35,7 +35,7 @@ vectorvein/utilities/media_processing.py,sha256=CTRq-lGlFkFgP_FSRhNwF_qUgmOrXPf2
35
35
  vectorvein/utilities/retry.py,sha256=6KFS9R2HdhqM3_9jkjD4F36ZSpEx2YNFGOVlpOsUetM,2208
36
36
  vectorvein/workflow/graph/edge.py,sha256=xLZEJmBjAfVB53cd7CuRcKhgE6QqXv9nz32wJn8cmyk,1064
37
37
  vectorvein/workflow/graph/node.py,sha256=A3M_GghrSju1D3xc_HtPdGyr-7XSkplGPKJveOUiIF4,3256
38
- vectorvein/workflow/graph/port.py,sha256=kv0YbAPqe9Hh9QPSoiB2PUTTWQT1xIdNeVD50OkWTzA,5684
38
+ vectorvein/workflow/graph/port.py,sha256=Q6HmI2cUi6viJ98ec6-MmMPMRtKS1-OgaudP3LMwVLA,6054
39
39
  vectorvein/workflow/graph/workflow.py,sha256=uh8JzTbvaucKryvFUj3nAswtdOtaOw2Z4YfD9Q6r77s,3973
40
40
  vectorvein/workflow/nodes/__init__.py,sha256=jd4O27kIJdOtkij1FYZ6aJnJy2OQa7xtL1r-Yv8ylO0,3103
41
41
  vectorvein/workflow/nodes/audio_generation.py,sha256=ht2S0vnd0mIAt6FBaSWlADGbb7f_1DAySYrgYnvZT1Q,5726
@@ -54,4 +54,4 @@ vectorvein/workflow/nodes/vector_db.py,sha256=t6I17q6iR3yQreiDHpRrksMdWDPIvgqJs0
54
54
  vectorvein/workflow/nodes/video_generation.py,sha256=qmdg-t_idpxq1veukd-jv_ChICMOoInKxprV9Z4Vi2w,4118
55
55
  vectorvein/workflow/nodes/web_crawlers.py,sha256=LsqomfXfqrXfHJDO1cl0Ox48f4St7X_SL12DSbAMSOw,5415
56
56
  vectorvein/workflow/utils/json_to_code.py,sha256=F7dhDy8kGc8ndOeihGLRLGFGlquoxVlb02ENtxnQ0C8,5914
57
- vectorvein-0.1.86.dist-info/RECORD,,
57
+ vectorvein-0.1.87.dist-info/RECORD,,